Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WISHLIST-43] fix localStore update #112

Merged
merged 1 commit into from
Mar 31, 2022

Conversation

auroraaaashen
Copy link
Contributor

What does this PR do?

Fix the bug about updating removed wishlist items in localStore

How to test it?
https://aurora--compracerta.myvtex.com/

  1. login into the workspace page
  2. add an item to your wishlist and open two tabs of this product
  3. unfavorited this item on one page, and go to another page and refresh
  4. you should see the item is also unfavorited on the second page

@vtex-io-ci-cd
Copy link

vtex-io-ci-cd bot commented Mar 30, 2022

Hi! I'm VTEX IO CI/CD Bot and I'll be helping you to publish your app! 🤖

Please select which version do you want to release:

  • Patch (backwards-compatible bug fixes)

  • Minor (backwards-compatible functionality)

  • Major (incompatible API changes)

And then you just need to merge your PR when you are ready! There is no need to create a release commit/tag.

  • No thanks, I would rather do it manually 😞

@vtex-io-docs-bot
Copy link

vtex-io-docs-bot bot commented Mar 30, 2022

Beep boop 🤖

I noticed you didn't make any changes at the docs/ folder

  • There's nothing new to document 🤔
  • I'll do it later 😞

In order to keep track, I'll create an issue if you decide now is not a good time

  • I just updated 🎉🎉

@auroraaaashen auroraaaashen force-pushed the bugfix/WISHLIST-43_fix-localStore-update branch from 56d336f to dac21a2 Compare March 30, 2022 04:54
@auroraaaashen auroraaaashen force-pushed the bugfix/WISHLIST-43_fix-localStore-update branch from dac21a2 to 57daca2 Compare March 30, 2022 04:58
@sonarqubecloud
Copy link

[vtex-apps_wish-list-ts] Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

0.0% 0.0% Coverage
0.0% 0.0% Duplication

@sonarqubecloud
Copy link

[vtex-apps_wish-list-dotnet] Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 0 Code Smells

No Coverage information No Coverage information
No Duplication information No Duplication information

Comment on lines +354 to +370
if (
data?.checkList?.inList !== true &&
productCheck[productId] === undefined &&
wishListed.find(
(item: any) => item.productId === productId && item.sku === sku
) !== undefined
) {
wishListed = wishListed.filter(
(item: any) => item.productId !== productId && item.sku !== sku
)
saveToLocalStorageItem(wishListed)
setState({
...state,
isWishlistPage: false,
})
}

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
if (
data?.checkList?.inList !== true &&
productCheck[productId] === undefined &&
wishListed.find(
(item: any) => item.productId === productId && item.sku === sku
) !== undefined
) {
wishListed = wishListed.filter(
(item: any) => item.productId !== productId && item.sku !== sku
)
saveToLocalStorageItem(wishListed)
setState({
...state,
isWishlistPage: false,
})
}
wishListed = wishListed.filter(
(item: any) => item.productId !== productId && item.sku !== sku
)
if (
data?.checkList?.inList !== true &&
productCheck[productId] === undefined &&
wishListed.length > 0
) {
saveToLocalStorageItem(wishListed)
setState({
...state,
isWishlistPage: false,
})
}

Take a look at this suggestion, first, you filter the array, and then you check if the length is greater than 0.

Probably my suggestion doesn't have a valid eslint check.

Copy link
Contributor Author

@auroraaaashen auroraaaashen Mar 31, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the suggestion. But the wishListed could originally have more than one item in the list.
And we want to use the filter to remove the item only under the condition that we find the item in the wishListed and the inList in false(which read from the network).

Copy link
Contributor

@arturmagalhaesjr arturmagalhaesjr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@auroraaaashen auroraaaashen merged commit 8180b69 into master Mar 31, 2022
@vtex-io-ci-cd
Copy link

vtex-io-ci-cd bot commented Mar 31, 2022

Your PR has been merged! App is being published. 🚀
Version 1.12.1 → 1.12.2

After the publishing process has been completed (check #vtex-io-releases) and doing A/B tests with the new version, you can deploy your release by running:

vtex deploy vtex.wish-list@1.12.2

After that your app will be updated on all accounts.

For more information on the deployment process check the docs. 📖

@auroraaaashen auroraaaashen deleted the bugfix/WISHLIST-43_fix-localStore-update branch August 2, 2022 21:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants