@anker-in/campaign-ui 0.5.16 → 0.5.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +100 -8
- package/dist/cjs/components/chat/action.d.ts +1 -1
- package/dist/cjs/components/chat/button.d.ts +1 -1
- package/dist/cjs/components/chat/index.d.ts +1 -1
- package/dist/cjs/components/chat/index.js +1 -1
- package/dist/cjs/components/chat/index.js.map +2 -2
- package/dist/cjs/components/chat/markdown.d.ts +1 -1
- package/dist/cjs/components/chat/messages.d.ts +2 -1
- package/dist/cjs/components/chat/response.d.ts +1 -1
- package/dist/cjs/components/chat/suggestions.d.ts +1 -1
- package/dist/cjs/components/credits/context/hooks/useActivities.js +1 -1
- package/dist/cjs/components/credits/context/hooks/useActivities.js.map +2 -2
- package/dist/cjs/components/credits/context/hooks/useAddressValidate.js +1 -1
- package/dist/cjs/components/credits/context/hooks/useAddressValidate.js.map +2 -2
- package/dist/cjs/components/credits/context/hooks/useAlpcFetch.js +1 -1
- package/dist/cjs/components/credits/context/hooks/useAlpcFetch.js.map +2 -2
- package/dist/cjs/components/credits/context/hooks/useCountries.js +1 -1
- package/dist/cjs/components/credits/context/hooks/useCountries.js.map +2 -2
- package/dist/cjs/components/credits/context/hooks/useMyRewards.js +1 -1
- package/dist/cjs/components/credits/context/hooks/useMyRewards.js.map +2 -2
- package/dist/cjs/components/credits/context/hooks/useRedeemAndBuy.d.ts +2 -2
- package/dist/cjs/components/credits/context/hooks/useRedeemAndBuy.js +1 -1
- package/dist/cjs/components/credits/context/hooks/useRedeemAndBuy.js.map +2 -2
- package/dist/cjs/components/credits/context/hooks/useRedeemCoupon.js +1 -1
- package/dist/cjs/components/credits/context/hooks/useRedeemCoupon.js.map +2 -2
- package/dist/cjs/components/credits/context/hooks/useRedeemGoGift.js +1 -1
- package/dist/cjs/components/credits/context/hooks/useRedeemGoGift.js.map +2 -2
- package/dist/cjs/components/credits/context/hooks/useRedeemProduct.js +1 -1
- package/dist/cjs/components/credits/context/hooks/useRedeemProduct.js.map +2 -2
- package/dist/cjs/components/credits/context/hooks/useRedeemableList.js +1 -1
- package/dist/cjs/components/credits/context/hooks/useRedeemableList.js.map +2 -2
- package/dist/cjs/components/credits/context/hooks/useShippingCountries.js +1 -1
- package/dist/cjs/components/credits/context/hooks/useShippingCountries.js.map +2 -2
- package/dist/cjs/components/credits/context/hooks/useSubscribed.js +1 -1
- package/dist/cjs/components/credits/context/hooks/useSubscribed.js.map +2 -2
- package/dist/cjs/components/credits/context/hooks/useUploadReceipt.d.ts +2 -2
- package/dist/cjs/components/credits/context/hooks/useUploadReceipt.js +1 -1
- package/dist/cjs/components/credits/context/hooks/useUploadReceipt.js.map +3 -3
- package/dist/cjs/components/credits/context/provider.d.ts +1 -1
- package/dist/cjs/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.d.ts +1 -1
- package/dist/cjs/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js +1 -1
- package/dist/cjs/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js.map +2 -2
- package/dist/cjs/components/credits/creditsBanner/index.d.ts +1 -1
- package/dist/cjs/components/credits/creditsBenefits/BenefitItem.d.ts +1 -1
- package/dist/cjs/components/credits/creditsBenefits/BenefitItem.js +1 -1
- package/dist/cjs/components/credits/creditsBenefits/BenefitItem.js.map +2 -2
- package/dist/cjs/components/credits/creditsBenefits/IconInfo.d.ts +1 -1
- package/dist/cjs/components/credits/creditsBenefits/index.d.ts +1 -1
- package/dist/cjs/components/credits/creditsBenefits/index.js +1 -1
- package/dist/cjs/components/credits/creditsBenefits/index.js.map +2 -2
- package/dist/cjs/components/credits/creditsCash/CreditsCash.d.ts +1 -1
- package/dist/cjs/components/credits/creditsCash/CreditsCash.js +1 -1
- package/dist/cjs/components/credits/creditsCash/CreditsCash.js.map +2 -2
- package/dist/cjs/components/credits/creditsCash/RedeemableItem.d.ts +1 -1
- package/dist/cjs/components/credits/creditsCash/RedeemableItem.js +1 -1
- package/dist/cjs/components/credits/creditsCash/RedeemableItem.js.map +2 -2
- package/dist/cjs/components/credits/creditsCash/type.d.ts +1 -1
- package/dist/cjs/components/credits/creditsCash/type.js.map +1 -1
- package/dist/cjs/components/credits/creditsFaq/faqItem/FaqItem.d.ts +1 -1
- package/dist/cjs/components/credits/creditsFaq/faqItem/FaqItem.js +1 -1
- package/dist/cjs/components/credits/creditsFaq/faqItem/FaqItem.js.map +2 -2
- package/dist/cjs/components/credits/creditsFaq/index.d.ts +1 -1
- package/dist/cjs/components/credits/creditsFaq/index.js +1 -1
- package/dist/cjs/components/credits/creditsFaq/index.js.map +2 -2
- package/dist/cjs/components/credits/creditsGoGift/CreditsGoGift.d.ts +1 -1
- package/dist/cjs/components/credits/creditsGoGift/CreditsGoGift.js +1 -1
- package/dist/cjs/components/credits/creditsGoGift/CreditsGoGift.js.map +2 -2
- package/dist/cjs/components/credits/creditsInfoCard/index.d.ts +1 -1
- package/dist/cjs/components/credits/creditsInfoCard/index.js +1 -1
- package/dist/cjs/components/credits/creditsInfoCard/index.js.map +2 -2
- package/dist/cjs/components/credits/creditsMemberPrice/CreditsMemberPrice.d.ts +1 -1
- package/dist/cjs/components/credits/creditsMemberPrice/CreditsMemberPrice.js +1 -1
- package/dist/cjs/components/credits/creditsMemberPrice/CreditsMemberPrice.js.map +2 -2
- package/dist/cjs/components/credits/creditsMemberPrice/MemberPriceItem.d.ts +1 -1
- package/dist/cjs/components/credits/creditsMemberPrice/MemberPriceItem.js +1 -1
- package/dist/cjs/components/credits/creditsMemberPrice/MemberPriceItem.js.map +2 -2
- package/dist/cjs/components/credits/creditsMemberPrice/Pagination.d.ts +1 -1
- package/dist/cjs/components/credits/creditsMemberPrice/Pagination.js +1 -1
- package/dist/cjs/components/credits/creditsMemberPrice/Pagination.js.map +2 -2
- package/dist/cjs/components/credits/creditsMemberPrice/type.d.ts +1 -1
- package/dist/cjs/components/credits/creditsMemberPrice/type.js.map +1 -1
- package/dist/cjs/components/credits/creditsNavigation/CreditsNavigation.d.ts +1 -1
- package/dist/cjs/components/credits/creditsNavigation/CreditsNavigation.js +1 -1
- package/dist/cjs/components/credits/creditsNavigation/CreditsNavigation.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/AddressForm/CountrySelect.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/AddressForm/CountrySelect.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/AddressForm/CountrySelect.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/AddressForm/FormItem.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/AddressForm/Input.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/AddressForm/StateSelect.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/AddressForm/StateSelect.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/AddressForm/StateSelect.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/AddressForm/index.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/AddressForm/index.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/AddressForm/index.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/CreditsRedeemList.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/CreditsRedeemList.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/CreditsRedeemList.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/NonProductValue.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Address.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Address.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Address.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Error.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Init.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Init.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Init.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Success.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Success.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Success.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/index.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/index.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/index.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal.js.map +2 -2
- package/dist/cjs/components/credits/creditsRedeemList/RedeemableItem.d.ts +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemableItem.js +1 -1
- package/dist/cjs/components/credits/creditsRedeemList/RedeemableItem.js.map +2 -2
- package/dist/cjs/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.d.ts +1 -1
- package/dist/cjs/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js +1 -1
- package/dist/cjs/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js.map +2 -2
- package/dist/cjs/components/credits/creditsWaysToGetCredits/useActions.js +1 -1
- package/dist/cjs/components/credits/creditsWaysToGetCredits/useActions.js.map +2 -2
- package/dist/cjs/components/credits/modal/ActivitiesModal.d.ts +1 -1
- package/dist/cjs/components/credits/modal/ActivitiesModal.js +1 -1
- package/dist/cjs/components/credits/modal/ActivitiesModal.js.map +2 -2
- package/dist/cjs/components/credits/modal/CreditsUploadReceiptModal.d.ts +1 -1
- package/dist/cjs/components/credits/modal/CreditsUploadReceiptModal.js +1 -1
- package/dist/cjs/components/credits/modal/CreditsUploadReceiptModal.js.map +2 -2
- package/dist/cjs/components/credits/modal/ModalContainer.js +1 -1
- package/dist/cjs/components/credits/modal/ModalContainer.js.map +2 -2
- package/dist/cjs/components/credits/modal/RewardsModal.d.ts +1 -1
- package/dist/cjs/components/credits/modal/RewardsModal.js +1 -1
- package/dist/cjs/components/credits/modal/RewardsModal.js.map +2 -2
- package/dist/cjs/components/credits/modal/RulesModal.d.ts +1 -1
- package/dist/cjs/components/credits/modal/RulesModal.js +1 -1
- package/dist/cjs/components/credits/modal/RulesModal.js.map +2 -2
- package/dist/cjs/components/credits/modal/SubscribeModal.d.ts +1 -1
- package/dist/cjs/components/credits/modal/SubscribeModal.js +1 -1
- package/dist/cjs/components/credits/modal/SubscribeModal.js.map +2 -2
- package/dist/cjs/components/credits/modal/Tip.d.ts +1 -1
- package/dist/cjs/components/credits/modal/Tip.js +1 -1
- package/dist/cjs/components/credits/modal/Tip.js.map +2 -2
- package/dist/cjs/components/credits/type.d.ts +1 -1
- package/dist/cjs/components/credits/type.js.map +1 -1
- package/dist/cjs/components/memberPopup/MemberPopup.d.ts +2 -2
- package/dist/cjs/components/memberPopup/MemberPopup.js +1 -1
- package/dist/cjs/components/memberPopup/MemberPopup.js.map +2 -2
- package/dist/cjs/components/memberPopup/context/provider.d.ts +2 -2
- package/dist/cjs/components/memberPopup/context/provider.js +1 -1
- package/dist/cjs/components/memberPopup/context/provider.js.map +2 -2
- package/dist/cjs/components/memberPopup/icons.d.ts +9 -9
- package/dist/cjs/components/memberPopup/panels/ActivitiesSubscribePanel.d.ts +1 -1
- package/dist/cjs/components/memberPopup/panels/ActivitiesSubscribePanel.js +1 -1
- package/dist/cjs/components/memberPopup/panels/ActivitiesSubscribePanel.js.map +2 -2
- package/dist/cjs/components/memberPopup/panels/ConsumeCredits/RedeemCouponPanel.d.ts +1 -1
- package/dist/cjs/components/memberPopup/panels/ConsumeCredits/RedeemCouponPanel.js +1 -1
- package/dist/cjs/components/memberPopup/panels/ConsumeCredits/RedeemCouponPanel.js.map +2 -2
- package/dist/cjs/components/memberPopup/panels/ConsumeCredits/hooks/useRedeemAndBuy.d.ts +1 -1
- package/dist/cjs/components/memberPopup/panels/ConsumeCredits/hooks/useRedeemAndBuy.js +1 -1
- package/dist/cjs/components/memberPopup/panels/ConsumeCredits/hooks/useRedeemAndBuy.js.map +2 -2
- package/dist/cjs/components/memberPopup/panels/ConsumeCredits/hooks/useRedeemCoupon.d.ts +1 -1
- package/dist/cjs/components/memberPopup/panels/ConsumeCredits/index.d.ts +1 -1
- package/dist/cjs/components/memberPopup/panels/ConsumeCredits/index.js +1 -1
- package/dist/cjs/components/memberPopup/panels/ConsumeCredits/index.js.map +2 -2
- package/dist/cjs/components/memberPopup/panels/EarnCredits/ActivatePanel.d.ts +1 -1
- package/dist/cjs/components/memberPopup/panels/EarnCredits/ActivatePanel.js +1 -1
- package/dist/cjs/components/memberPopup/panels/EarnCredits/ActivatePanel.js.map +2 -2
- package/dist/cjs/components/memberPopup/panels/EarnCredits/CompleteProfilePanel.d.ts +1 -1
- package/dist/cjs/components/memberPopup/panels/EarnCredits/CompleteProfilePanel.js +1 -1
- package/dist/cjs/components/memberPopup/panels/EarnCredits/CompleteProfilePanel.js.map +2 -2
- package/dist/cjs/components/memberPopup/panels/EarnCredits/SubscribeEmailPanel.d.ts +1 -1
- package/dist/cjs/components/memberPopup/panels/EarnCredits/SubscribeEmailPanel.js +1 -1
- package/dist/cjs/components/memberPopup/panels/EarnCredits/SubscribeEmailPanel.js.map +2 -2
- package/dist/cjs/components/memberPopup/panels/EarnCredits/hooks/useSubscribed.js +1 -1
- package/dist/cjs/components/memberPopup/panels/EarnCredits/hooks/useSubscribed.js.map +2 -2
- package/dist/cjs/components/memberPopup/panels/EarnCredits/index.d.ts +1 -1
- package/dist/cjs/components/memberPopup/panels/EarnCredits/index.js +1 -1
- package/dist/cjs/components/memberPopup/panels/EarnCredits/index.js.map +2 -2
- package/dist/cjs/components/memberPopup/panels/Referral/index.d.ts +1 -1
- package/dist/cjs/components/memberPopup/panels/Referral/index.js +1 -1
- package/dist/cjs/components/memberPopup/panels/Referral/index.js.map +2 -2
- package/dist/cjs/components/registration/authCodeActivate/Message.d.ts +1 -1
- package/dist/cjs/components/registration/authCodeActivate/index.js +1 -1
- package/dist/cjs/components/registration/authCodeActivate/index.js.map +2 -2
- package/dist/cjs/components/registration/context/provider.d.ts +1 -1
- package/dist/cjs/components/registration/modalContainer.js +1 -1
- package/dist/cjs/components/registration/modalContainer.js.map +2 -2
- package/dist/cjs/lib/cart/const.d.ts +5 -0
- package/dist/cjs/lib/cart/const.js +2 -0
- package/dist/cjs/lib/cart/const.js.map +7 -0
- package/dist/cjs/lib/cart/context/index.d.ts +46 -0
- package/dist/cjs/lib/cart/context/index.js +2 -0
- package/dist/cjs/lib/cart/context/index.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/basic/useAddToCart.d.ts +29 -0
- package/dist/cjs/lib/cart/hooks/basic/useAddToCart.js +2 -0
- package/dist/cjs/lib/cart/hooks/basic/useAddToCart.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/basic/useApplyCartCodes.d.ts +10 -0
- package/dist/cjs/lib/cart/hooks/basic/useApplyCartCodes.js +2 -0
- package/dist/cjs/lib/cart/hooks/basic/useApplyCartCodes.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/basic/useBuyNow.d.ts +20 -0
- package/dist/cjs/lib/cart/hooks/basic/useBuyNow.js +2 -0
- package/dist/cjs/lib/cart/hooks/basic/useBuyNow.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/basic/useCreateCart.d.ts +6 -0
- package/dist/cjs/lib/cart/hooks/basic/useCreateCart.js +2 -0
- package/dist/cjs/lib/cart/hooks/basic/useCreateCart.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/basic/useRemoveCartCodes.d.ts +10 -0
- package/dist/cjs/lib/cart/hooks/basic/useRemoveCartCodes.js +2 -0
- package/dist/cjs/lib/cart/hooks/basic/useRemoveCartCodes.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/basic/useRemoveCartLines.d.ts +10 -0
- package/dist/cjs/lib/cart/hooks/basic/useRemoveCartLines.js +2 -0
- package/dist/cjs/lib/cart/hooks/basic/useRemoveCartLines.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/basic/useUpdateCartAttributes.d.ts +7 -0
- package/dist/cjs/lib/cart/hooks/basic/useUpdateCartAttributes.js +2 -0
- package/dist/cjs/lib/cart/hooks/basic/useUpdateCartAttributes.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/basic/useUpdateCartBuyerIdentity.d.ts +7 -0
- package/dist/cjs/lib/cart/hooks/basic/useUpdateCartBuyerIdentity.js +2 -0
- package/dist/cjs/lib/cart/hooks/basic/useUpdateCartBuyerIdentity.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/basic/useUpdateCartLines.d.ts +7 -0
- package/dist/cjs/lib/cart/hooks/basic/useUpdateCartLines.js +2 -0
- package/dist/cjs/lib/cart/hooks/basic/useUpdateCartLines.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/feature/useCalcAutoFreeGift.d.ts +9 -0
- package/dist/cjs/lib/cart/hooks/feature/useCalcAutoFreeGift.js +2 -0
- package/dist/cjs/lib/cart/hooks/feature/useCalcAutoFreeGift.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/feature/useCalcOrderDiscount.d.ts +20 -0
- package/dist/cjs/lib/cart/hooks/feature/useCalcOrderDiscount.js +2 -0
- package/dist/cjs/lib/cart/hooks/feature/useCalcOrderDiscount.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/feature/useCartAttributes.d.ts +9 -0
- package/dist/cjs/lib/cart/hooks/feature/useCartAttributes.js +2 -0
- package/dist/cjs/lib/cart/hooks/feature/useCartAttributes.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/feature/useCartItemQuantityLimit.d.ts +18 -0
- package/dist/cjs/lib/cart/hooks/feature/useCartItemQuantityLimit.js +2 -0
- package/dist/cjs/lib/cart/hooks/feature/useCartItemQuantityLimit.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/feature/useScriptAutoFreeGift.d.ts +36 -0
- package/dist/cjs/lib/cart/hooks/feature/useScriptAutoFreeGift.js +2 -0
- package/dist/cjs/lib/cart/hooks/feature/useScriptAutoFreeGift.js.map +7 -0
- package/dist/cjs/lib/cart/hooks/feature/useUpdateLineCodeAmountAttributes.d.ts +8 -0
- package/dist/cjs/lib/cart/hooks/feature/useUpdateLineCodeAmountAttributes.js +2 -0
- package/dist/cjs/lib/cart/hooks/feature/useUpdateLineCodeAmountAttributes.js.map +7 -0
- package/dist/cjs/lib/cart/index.d.ts +5 -0
- package/dist/cjs/lib/cart/index.js +2 -0
- package/dist/cjs/lib/cart/index.js.map +7 -0
- package/dist/cjs/lib/cart/track/fbq.d.ts +13 -0
- package/dist/cjs/lib/cart/track/fbq.js +2 -0
- package/dist/cjs/lib/cart/track/fbq.js.map +7 -0
- package/dist/cjs/lib/cart/track/gtm.d.ts +25 -0
- package/dist/cjs/lib/cart/track/gtm.js +2 -0
- package/dist/cjs/lib/cart/track/gtm.js.map +7 -0
- package/dist/cjs/lib/cart/types/autoFreeGift.d.ts +134 -0
- package/dist/cjs/lib/cart/types/autoFreeGift.js +2 -0
- package/dist/cjs/lib/cart/types/autoFreeGift.js.map +7 -0
- package/dist/cjs/lib/cart/types/index.d.ts +23 -0
- package/dist/cjs/lib/cart/types/index.js +2 -0
- package/dist/cjs/lib/cart/types/index.js.map +7 -0
- package/dist/cjs/lib/cart/types/orderDiscount.d.ts +34 -0
- package/dist/cjs/lib/cart/types/orderDiscount.js +2 -0
- package/dist/cjs/lib/cart/types/orderDiscount.js.map +7 -0
- package/dist/cjs/lib/cart/types/priceDiscount.d.ts +19 -0
- package/dist/cjs/lib/cart/types/priceDiscount.js +2 -0
- package/dist/cjs/lib/cart/types/priceDiscount.js.map +7 -0
- package/dist/cjs/lib/cart/utils/autoFreeGift.d.ts +20 -0
- package/dist/cjs/lib/cart/utils/autoFreeGift.js +2 -0
- package/dist/cjs/lib/cart/utils/autoFreeGift.js.map +7 -0
- package/dist/cjs/lib/cart/utils/index.d.ts +3 -0
- package/dist/cjs/lib/cart/utils/index.js +2 -0
- package/dist/cjs/lib/cart/utils/index.js.map +7 -0
- package/dist/cjs/lib/constants.d.ts +1 -0
- package/dist/cjs/lib/constants.js +2 -0
- package/dist/cjs/lib/constants.js.map +7 -0
- package/dist/cjs/lib/context/HeadlessProvider.d.ts +9 -0
- package/dist/cjs/lib/context/HeadlessProvider.js +2 -0
- package/dist/cjs/lib/context/HeadlessProvider.js.map +7 -0
- package/dist/cjs/lib/context/config.d.ts +12 -0
- package/dist/cjs/lib/context/config.js +2 -0
- package/dist/cjs/lib/context/config.js.map +7 -0
- package/dist/cjs/lib/context/index.d.ts +2 -0
- package/dist/cjs/lib/context/index.js +2 -0
- package/dist/cjs/lib/context/index.js.map +7 -0
- package/dist/cjs/lib/index.d.ts +6 -0
- package/dist/cjs/lib/index.js +2 -0
- package/dist/cjs/lib/index.js.map +7 -0
- package/dist/cjs/lib/registration/hooks/index.d.ts +3 -0
- package/dist/cjs/lib/registration/hooks/index.js +2 -0
- package/dist/cjs/lib/registration/hooks/index.js.map +7 -0
- package/dist/cjs/lib/registration/hooks/useEmailValidation.d.ts +16 -0
- package/dist/cjs/lib/registration/hooks/useEmailValidation.js +2 -0
- package/dist/cjs/lib/registration/hooks/useEmailValidation.js.map +7 -0
- package/dist/cjs/lib/registration/hooks/useSendEmailValidation.d.ts +8 -0
- package/dist/cjs/lib/registration/hooks/useSendEmailValidation.js +2 -0
- package/dist/cjs/lib/registration/hooks/useSendEmailValidation.js.map +7 -0
- package/dist/cjs/lib/registration/hooks/useSubscriptions.d.ts +4 -0
- package/dist/cjs/lib/registration/hooks/useSubscriptions.js +2 -0
- package/dist/cjs/lib/registration/hooks/useSubscriptions.js.map +7 -0
- package/dist/cjs/lib/registration/index.d.ts +1 -0
- package/dist/cjs/lib/registration/index.js +2 -0
- package/dist/cjs/lib/registration/index.js.map +7 -0
- package/dist/cjs/lib/shopify/fetchers/add-cart-lines.d.ts +11 -0
- package/dist/cjs/lib/shopify/fetchers/add-cart-lines.js +2 -0
- package/dist/cjs/lib/shopify/fetchers/add-cart-lines.js.map +7 -0
- package/dist/cjs/lib/shopify/fetchers/create-cart.d.ts +12 -0
- package/dist/cjs/lib/shopify/fetchers/create-cart.js +2 -0
- package/dist/cjs/lib/shopify/fetchers/create-cart.js.map +7 -0
- package/dist/cjs/lib/shopify/fetchers/get-cart.d.ts +15 -0
- package/dist/cjs/lib/shopify/fetchers/get-cart.js +2 -0
- package/dist/cjs/lib/shopify/fetchers/get-cart.js.map +7 -0
- package/dist/cjs/lib/shopify/fetchers/get-products-by-handles.d.ts +14 -0
- package/dist/cjs/lib/shopify/fetchers/get-products-by-handles.js +2 -0
- package/dist/cjs/lib/shopify/fetchers/get-products-by-handles.js.map +7 -0
- package/dist/cjs/lib/shopify/fetchers/index.d.ts +11 -0
- package/dist/cjs/lib/shopify/fetchers/index.js +2 -0
- package/dist/cjs/lib/shopify/fetchers/index.js.map +7 -0
- package/dist/cjs/lib/shopify/fetchers/remove-cart-lines.d.ts +11 -0
- package/dist/cjs/lib/shopify/fetchers/remove-cart-lines.js +2 -0
- package/dist/cjs/lib/shopify/fetchers/remove-cart-lines.js.map +7 -0
- package/dist/cjs/lib/shopify/fetchers/update-cart-attributes.d.ts +11 -0
- package/dist/cjs/lib/shopify/fetchers/update-cart-attributes.js +2 -0
- package/dist/cjs/lib/shopify/fetchers/update-cart-attributes.js.map +7 -0
- package/dist/cjs/lib/shopify/fetchers/update-cart-buyer-identity.d.ts +11 -0
- package/dist/cjs/lib/shopify/fetchers/update-cart-buyer-identity.js +2 -0
- package/dist/cjs/lib/shopify/fetchers/update-cart-buyer-identity.js.map +7 -0
- package/dist/cjs/lib/shopify/fetchers/update-cart-codes.d.ts +11 -0
- package/dist/cjs/lib/shopify/fetchers/update-cart-codes.js +2 -0
- package/dist/cjs/lib/shopify/fetchers/update-cart-codes.js.map +7 -0
- package/dist/cjs/lib/shopify/fetchers/update-cart-lines.d.ts +11 -0
- package/dist/cjs/lib/shopify/fetchers/update-cart-lines.js +2 -0
- package/dist/cjs/lib/shopify/fetchers/update-cart-lines.js.map +7 -0
- package/dist/cjs/lib/shopify/fragments/article.d.ts +2 -0
- package/dist/cjs/lib/shopify/fragments/article.js +50 -0
- package/dist/cjs/lib/shopify/fragments/article.js.map +7 -0
- package/dist/cjs/lib/shopify/fragments/blog.d.ts +1 -0
- package/dist/cjs/lib/shopify/fragments/blog.js +11 -0
- package/dist/cjs/lib/shopify/fragments/blog.js.map +7 -0
- package/dist/cjs/lib/shopify/fragments/cart.d.ts +1 -0
- package/dist/cjs/lib/shopify/fragments/cart.js +189 -0
- package/dist/cjs/lib/shopify/fragments/cart.js.map +7 -0
- package/dist/cjs/lib/shopify/fragments/collection.d.ts +1 -0
- package/dist/cjs/lib/shopify/fragments/collection.js +16 -0
- package/dist/cjs/lib/shopify/fragments/collection.js.map +7 -0
- package/dist/cjs/lib/shopify/fragments/image.d.ts +1 -0
- package/dist/cjs/lib/shopify/fragments/image.js +9 -0
- package/dist/cjs/lib/shopify/fragments/image.js.map +7 -0
- package/dist/cjs/lib/shopify/fragments/index.d.ts +11 -0
- package/dist/cjs/lib/shopify/fragments/index.js +2 -0
- package/dist/cjs/lib/shopify/fragments/index.js.map +7 -0
- package/dist/cjs/lib/shopify/fragments/metafields.d.ts +2 -0
- package/dist/cjs/lib/shopify/fragments/metafields.js +16 -0
- package/dist/cjs/lib/shopify/fragments/metafields.js.map +7 -0
- package/dist/cjs/lib/shopify/fragments/page-info.d.ts +1 -0
- package/dist/cjs/lib/shopify/fragments/page-info.js +9 -0
- package/dist/cjs/lib/shopify/fragments/page-info.js.map +7 -0
- package/dist/cjs/lib/shopify/fragments/page.d.ts +1 -0
- package/dist/cjs/lib/shopify/fragments/page.js +13 -0
- package/dist/cjs/lib/shopify/fragments/page.js.map +7 -0
- package/dist/cjs/lib/shopify/fragments/product.d.ts +1 -0
- package/dist/cjs/lib/shopify/fragments/product.js +72 -0
- package/dist/cjs/lib/shopify/fragments/product.js.map +7 -0
- package/dist/cjs/lib/shopify/fragments/seo.d.ts +1 -0
- package/dist/cjs/lib/shopify/fragments/seo.js +7 -0
- package/dist/cjs/lib/shopify/fragments/seo.js.map +7 -0
- package/dist/cjs/lib/shopify/fragments/variant.d.ts +1 -0
- package/dist/cjs/lib/shopify/fragments/variant.js +30 -0
- package/dist/cjs/lib/shopify/fragments/variant.js.map +7 -0
- package/dist/cjs/lib/shopify/gql/fragment-masking.d.ts +15 -0
- package/dist/cjs/lib/shopify/gql/fragment-masking.js +2 -0
- package/dist/cjs/lib/shopify/gql/fragment-masking.js.map +7 -0
- package/dist/cjs/lib/shopify/gql/gql.d.ts +87 -0
- package/dist/cjs/lib/shopify/gql/gql.js +2 -0
- package/dist/cjs/lib/shopify/gql/gql.js.map +7 -0
- package/dist/cjs/lib/shopify/gql/graphql.d.ts +7669 -0
- package/dist/cjs/lib/shopify/gql/graphql.js +2 -0
- package/dist/cjs/lib/shopify/gql/graphql.js.map +7 -0
- package/dist/cjs/lib/shopify/gql/index.d.ts +3 -0
- package/dist/cjs/lib/shopify/gql/index.js +2 -0
- package/dist/cjs/lib/shopify/gql/index.js.map +7 -0
- package/dist/cjs/lib/shopify/hooks/index.d.ts +1 -0
- package/dist/cjs/lib/shopify/hooks/index.js +2 -0
- package/dist/cjs/lib/shopify/hooks/index.js.map +7 -0
- package/dist/cjs/lib/shopify/hooks/useProductsByHandles.d.ts +4 -0
- package/dist/cjs/lib/shopify/hooks/useProductsByHandles.js +2 -0
- package/dist/cjs/lib/shopify/hooks/useProductsByHandles.js.map +7 -0
- package/dist/cjs/lib/shopify/index.d.ts +5 -0
- package/dist/cjs/lib/shopify/index.js +2 -0
- package/dist/cjs/lib/shopify/index.js.map +7 -0
- package/dist/cjs/lib/shopify/mutations/add-cart-lines.d.ts +1 -0
- package/dist/cjs/lib/shopify/mutations/add-cart-lines.js +15 -0
- package/dist/cjs/lib/shopify/mutations/add-cart-lines.js.map +7 -0
- package/dist/cjs/lib/shopify/mutations/create-cart.d.ts +1 -0
- package/dist/cjs/lib/shopify/mutations/create-cart.js +21 -0
- package/dist/cjs/lib/shopify/mutations/create-cart.js.map +7 -0
- package/dist/cjs/lib/shopify/mutations/remove-cart-items.d.ts +1 -0
- package/dist/cjs/lib/shopify/mutations/remove-cart-items.js +15 -0
- package/dist/cjs/lib/shopify/mutations/remove-cart-items.js.map +7 -0
- package/dist/cjs/lib/shopify/mutations/update-cart-attributes.d.ts +1 -0
- package/dist/cjs/lib/shopify/mutations/update-cart-attributes.js +15 -0
- package/dist/cjs/lib/shopify/mutations/update-cart-attributes.js.map +7 -0
- package/dist/cjs/lib/shopify/mutations/update-cart-buyer-identity.d.ts +1 -0
- package/dist/cjs/lib/shopify/mutations/update-cart-buyer-identity.js +15 -0
- package/dist/cjs/lib/shopify/mutations/update-cart-buyer-identity.js.map +7 -0
- package/dist/cjs/lib/shopify/mutations/update-cart-discount-code.d.ts +1 -0
- package/dist/cjs/lib/shopify/mutations/update-cart-discount-code.js +15 -0
- package/dist/cjs/lib/shopify/mutations/update-cart-discount-code.js.map +7 -0
- package/dist/cjs/lib/shopify/mutations/update-cart-items.d.ts +1 -0
- package/dist/cjs/lib/shopify/mutations/update-cart-items.js +15 -0
- package/dist/cjs/lib/shopify/mutations/update-cart-items.js.map +7 -0
- package/dist/cjs/lib/shopify/queries/get-cart.d.ts +1 -0
- package/dist/cjs/lib/shopify/queries/get-cart.js +13 -0
- package/dist/cjs/lib/shopify/queries/get-cart.js.map +7 -0
- package/dist/cjs/lib/shopify/queries/get-product-by-handles.d.ts +1 -0
- package/dist/cjs/lib/shopify/queries/get-product-by-handles.js +29 -0
- package/dist/cjs/lib/shopify/queries/get-product-by-handles.js.map +7 -0
- package/dist/cjs/lib/shopify/queries/index.d.ts +1 -0
- package/dist/cjs/lib/shopify/queries/index.js +2 -0
- package/dist/cjs/lib/shopify/queries/index.js.map +7 -0
- package/dist/cjs/lib/shopify/types/article.d.ts +48 -0
- package/dist/cjs/lib/shopify/types/article.js +2 -0
- package/dist/cjs/lib/shopify/types/article.js.map +7 -0
- package/dist/cjs/lib/shopify/types/cart.d.ts +174 -0
- package/dist/cjs/lib/shopify/types/cart.js +2 -0
- package/dist/cjs/lib/shopify/types/cart.js.map +7 -0
- package/dist/cjs/lib/shopify/types/checkout.d.ts +42 -0
- package/dist/cjs/lib/shopify/types/checkout.js +2 -0
- package/dist/cjs/lib/shopify/types/checkout.js.map +7 -0
- package/dist/cjs/lib/shopify/types/collection.d.ts +122 -0
- package/dist/cjs/lib/shopify/types/collection.js +2 -0
- package/dist/cjs/lib/shopify/types/collection.js.map +7 -0
- package/dist/cjs/lib/shopify/types/common.d.ts +42 -0
- package/dist/cjs/lib/shopify/types/common.js +2 -0
- package/dist/cjs/lib/shopify/types/common.js.map +7 -0
- package/dist/cjs/lib/shopify/types/config.d.ts +12 -0
- package/dist/cjs/lib/shopify/types/config.js +2 -0
- package/dist/cjs/lib/shopify/types/config.js.map +7 -0
- package/dist/cjs/lib/shopify/types/customer.d.ts +30 -0
- package/dist/cjs/lib/shopify/types/customer.js +2 -0
- package/dist/cjs/lib/shopify/types/customer.js.map +7 -0
- package/dist/cjs/lib/shopify/types/fetcher.d.ts +43 -0
- package/dist/cjs/lib/shopify/types/fetcher.js +2 -0
- package/dist/cjs/lib/shopify/types/fetcher.js.map +7 -0
- package/dist/cjs/lib/shopify/types/index.d.ts +11 -0
- package/dist/cjs/lib/shopify/types/index.js +2 -0
- package/dist/cjs/lib/shopify/types/index.js.map +7 -0
- package/dist/cjs/lib/shopify/types/page.d.ts +33 -0
- package/dist/cjs/lib/shopify/types/page.js +2 -0
- package/dist/cjs/lib/shopify/types/page.js.map +7 -0
- package/dist/cjs/lib/shopify/types/product.d.ts +174 -0
- package/dist/cjs/lib/shopify/types/product.js +2 -0
- package/dist/cjs/lib/shopify/types/product.js.map +7 -0
- package/dist/cjs/lib/shopify/types/search.d.ts +54 -0
- package/dist/cjs/lib/shopify/types/search.js +2 -0
- package/dist/cjs/lib/shopify/types/search.js.map +7 -0
- package/dist/cjs/lib/shopify/types/site.d.ts +33 -0
- package/dist/cjs/lib/shopify/types/site.js +2 -0
- package/dist/cjs/lib/shopify/types/site.js.map +7 -0
- package/dist/cjs/lib/shopify/types/type-helper.d.ts +5 -0
- package/dist/cjs/lib/shopify/types/type-helper.js +2 -0
- package/dist/cjs/lib/shopify/types/type-helper.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/colors.d.ts +3 -0
- package/dist/cjs/lib/shopify/utils/colors.js +2 -0
- package/dist/cjs/lib/shopify/utils/colors.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/const.d.ts +76 -0
- package/dist/cjs/lib/shopify/utils/const.js +2 -0
- package/dist/cjs/lib/shopify/utils/const.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/cookie.d.ts +15 -0
- package/dist/cjs/lib/shopify/utils/cookie.js +2 -0
- package/dist/cjs/lib/shopify/utils/cookie.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/errors.d.ts +38 -0
- package/dist/cjs/lib/shopify/utils/errors.js +3 -0
- package/dist/cjs/lib/shopify/utils/errors.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/fetch-graphql-api.d.ts +19 -0
- package/dist/cjs/lib/shopify/utils/fetch-graphql-api.js +3 -0
- package/dist/cjs/lib/shopify/utils/fetch-graphql-api.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/handle-fetch-response.d.ts +5 -0
- package/dist/cjs/lib/shopify/utils/handle-fetch-response.js +2 -0
- package/dist/cjs/lib/shopify/utils/handle-fetch-response.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/helper.d.ts +28 -0
- package/dist/cjs/lib/shopify/utils/helper.js +2 -0
- package/dist/cjs/lib/shopify/utils/helper.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/normalize/cart.d.ts +7 -0
- package/dist/cjs/lib/shopify/utils/normalize/cart.js +2 -0
- package/dist/cjs/lib/shopify/utils/normalize/cart.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/normalize/customer.d.ts +3 -0
- package/dist/cjs/lib/shopify/utils/normalize/customer.js +2 -0
- package/dist/cjs/lib/shopify/utils/normalize/customer.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/normalize/index.d.ts +2 -0
- package/dist/cjs/lib/shopify/utils/normalize/index.js +2 -0
- package/dist/cjs/lib/shopify/utils/normalize/index.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/normalize/metafield.d.ts +5 -0
- package/dist/cjs/lib/shopify/utils/normalize/metafield.js +2 -0
- package/dist/cjs/lib/shopify/utils/normalize/metafield.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/normalize/product.d.ts +16 -0
- package/dist/cjs/lib/shopify/utils/normalize/product.js +2 -0
- package/dist/cjs/lib/shopify/utils/normalize/product.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/store.d.ts +2 -0
- package/dist/cjs/lib/shopify/utils/store.js +2 -0
- package/dist/cjs/lib/shopify/utils/store.js.map +7 -0
- package/dist/cjs/lib/shopify/utils/type-helper.d.ts +5 -0
- package/dist/cjs/lib/shopify/utils/type-helper.js +2 -0
- package/dist/cjs/lib/shopify/utils/type-helper.js.map +7 -0
- package/dist/cjs/lib/utils/classnames.d.ts +2 -0
- package/dist/cjs/lib/utils/classnames.js +2 -0
- package/dist/cjs/lib/utils/classnames.js.map +7 -0
- package/dist/cjs/lib/utils/fetcher/fetchResponse.d.ts +13 -0
- package/dist/cjs/lib/utils/fetcher/fetchResponse.js +2 -0
- package/dist/cjs/lib/utils/fetcher/fetchResponse.js.map +7 -0
- package/dist/cjs/lib/utils/fetcher/fetcher.d.ts +1 -0
- package/dist/cjs/lib/utils/fetcher/fetcher.js +2 -0
- package/dist/cjs/lib/utils/fetcher/fetcher.js.map +7 -0
- package/dist/cjs/lib/utils/fetcher/index.d.ts +2 -0
- package/dist/cjs/lib/utils/fetcher/index.js +2 -0
- package/dist/cjs/lib/utils/fetcher/index.js.map +7 -0
- package/dist/cjs/lib/utils/index.d.ts +4 -0
- package/dist/cjs/lib/utils/index.js +2 -0
- package/dist/cjs/lib/utils/index.js.map +7 -0
- package/dist/cjs/lib/utils/track.d.ts +15 -0
- package/dist/cjs/lib/utils/track.js +2 -0
- package/dist/cjs/lib/utils/track.js.map +7 -0
- package/dist/cjs/lib/utils/useCountDown.d.ts +5 -0
- package/dist/cjs/lib/utils/useCountDown.js +2 -0
- package/dist/cjs/lib/utils/useCountDown.js.map +7 -0
- package/dist/cjs/templates/Credits.d.ts +1 -1
- package/dist/cjs/templates/Credits.js +1 -1
- package/dist/cjs/templates/Credits.js.map +2 -2
- package/dist/cjs/templates/Credits.types.d.ts +1 -1
- package/dist/cjs/templates/Credits.types.js.map +1 -1
- package/dist/esm/components/chat/action.d.ts +1 -1
- package/dist/esm/components/chat/button.d.ts +1 -1
- package/dist/esm/components/chat/index.d.ts +1 -1
- package/dist/esm/components/chat/index.js +1 -1
- package/dist/esm/components/chat/index.js.map +2 -2
- package/dist/esm/components/chat/markdown.d.ts +1 -1
- package/dist/esm/components/chat/messages.d.ts +2 -1
- package/dist/esm/components/chat/response.d.ts +1 -1
- package/dist/esm/components/chat/suggestions.d.ts +1 -1
- package/dist/esm/components/credits/context/hooks/useActivities.js +1 -1
- package/dist/esm/components/credits/context/hooks/useActivities.js.map +2 -2
- package/dist/esm/components/credits/context/hooks/useAddressValidate.js +1 -1
- package/dist/esm/components/credits/context/hooks/useAddressValidate.js.map +2 -2
- package/dist/esm/components/credits/context/hooks/useAlpcFetch.js +1 -1
- package/dist/esm/components/credits/context/hooks/useAlpcFetch.js.map +2 -2
- package/dist/esm/components/credits/context/hooks/useCountries.js +1 -1
- package/dist/esm/components/credits/context/hooks/useCountries.js.map +2 -2
- package/dist/esm/components/credits/context/hooks/useMyRewards.js +1 -1
- package/dist/esm/components/credits/context/hooks/useMyRewards.js.map +2 -2
- package/dist/esm/components/credits/context/hooks/useRedeemAndBuy.d.ts +2 -2
- package/dist/esm/components/credits/context/hooks/useRedeemAndBuy.js +1 -1
- package/dist/esm/components/credits/context/hooks/useRedeemAndBuy.js.map +2 -2
- package/dist/esm/components/credits/context/hooks/useRedeemCoupon.js +1 -1
- package/dist/esm/components/credits/context/hooks/useRedeemCoupon.js.map +2 -2
- package/dist/esm/components/credits/context/hooks/useRedeemGoGift.js +1 -1
- package/dist/esm/components/credits/context/hooks/useRedeemGoGift.js.map +2 -2
- package/dist/esm/components/credits/context/hooks/useRedeemProduct.js +1 -1
- package/dist/esm/components/credits/context/hooks/useRedeemProduct.js.map +2 -2
- package/dist/esm/components/credits/context/hooks/useRedeemableList.js +1 -1
- package/dist/esm/components/credits/context/hooks/useRedeemableList.js.map +2 -2
- package/dist/esm/components/credits/context/hooks/useShippingCountries.js +1 -1
- package/dist/esm/components/credits/context/hooks/useShippingCountries.js.map +2 -2
- package/dist/esm/components/credits/context/hooks/useSubscribed.js +1 -1
- package/dist/esm/components/credits/context/hooks/useSubscribed.js.map +2 -2
- package/dist/esm/components/credits/context/hooks/useUploadReceipt.d.ts +2 -2
- package/dist/esm/components/credits/context/hooks/useUploadReceipt.js +1 -1
- package/dist/esm/components/credits/context/hooks/useUploadReceipt.js.map +3 -3
- package/dist/esm/components/credits/context/provider.d.ts +1 -1
- package/dist/esm/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.d.ts +1 -1
- package/dist/esm/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js +1 -1
- package/dist/esm/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js.map +2 -2
- package/dist/esm/components/credits/creditsBanner/index.d.ts +1 -1
- package/dist/esm/components/credits/creditsBenefits/BenefitItem.d.ts +1 -1
- package/dist/esm/components/credits/creditsBenefits/BenefitItem.js +1 -1
- package/dist/esm/components/credits/creditsBenefits/BenefitItem.js.map +2 -2
- package/dist/esm/components/credits/creditsBenefits/IconInfo.d.ts +1 -1
- package/dist/esm/components/credits/creditsBenefits/index.d.ts +1 -1
- package/dist/esm/components/credits/creditsBenefits/index.js +1 -1
- package/dist/esm/components/credits/creditsBenefits/index.js.map +2 -2
- package/dist/esm/components/credits/creditsCash/CreditsCash.d.ts +1 -1
- package/dist/esm/components/credits/creditsCash/CreditsCash.js +1 -1
- package/dist/esm/components/credits/creditsCash/CreditsCash.js.map +2 -2
- package/dist/esm/components/credits/creditsCash/RedeemableItem.d.ts +1 -1
- package/dist/esm/components/credits/creditsCash/RedeemableItem.js +1 -1
- package/dist/esm/components/credits/creditsCash/RedeemableItem.js.map +2 -2
- package/dist/esm/components/credits/creditsCash/type.d.ts +1 -1
- package/dist/esm/components/credits/creditsFaq/faqItem/FaqItem.d.ts +1 -1
- package/dist/esm/components/credits/creditsFaq/faqItem/FaqItem.js +1 -1
- package/dist/esm/components/credits/creditsFaq/faqItem/FaqItem.js.map +2 -2
- package/dist/esm/components/credits/creditsFaq/index.d.ts +1 -1
- package/dist/esm/components/credits/creditsFaq/index.js +1 -1
- package/dist/esm/components/credits/creditsFaq/index.js.map +2 -2
- package/dist/esm/components/credits/creditsGoGift/CreditsGoGift.d.ts +1 -1
- package/dist/esm/components/credits/creditsGoGift/CreditsGoGift.js +1 -1
- package/dist/esm/components/credits/creditsGoGift/CreditsGoGift.js.map +2 -2
- package/dist/esm/components/credits/creditsInfoCard/index.d.ts +1 -1
- package/dist/esm/components/credits/creditsInfoCard/index.js +1 -1
- package/dist/esm/components/credits/creditsInfoCard/index.js.map +2 -2
- package/dist/esm/components/credits/creditsMemberPrice/CreditsMemberPrice.d.ts +1 -1
- package/dist/esm/components/credits/creditsMemberPrice/CreditsMemberPrice.js +1 -1
- package/dist/esm/components/credits/creditsMemberPrice/CreditsMemberPrice.js.map +2 -2
- package/dist/esm/components/credits/creditsMemberPrice/MemberPriceItem.d.ts +1 -1
- package/dist/esm/components/credits/creditsMemberPrice/MemberPriceItem.js +1 -1
- package/dist/esm/components/credits/creditsMemberPrice/MemberPriceItem.js.map +2 -2
- package/dist/esm/components/credits/creditsMemberPrice/Pagination.d.ts +1 -1
- package/dist/esm/components/credits/creditsMemberPrice/Pagination.js +1 -1
- package/dist/esm/components/credits/creditsMemberPrice/Pagination.js.map +2 -2
- package/dist/esm/components/credits/creditsMemberPrice/type.d.ts +1 -1
- package/dist/esm/components/credits/creditsNavigation/CreditsNavigation.d.ts +1 -1
- package/dist/esm/components/credits/creditsNavigation/CreditsNavigation.js +1 -1
- package/dist/esm/components/credits/creditsNavigation/CreditsNavigation.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/AddressForm/CountrySelect.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/AddressForm/CountrySelect.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/AddressForm/CountrySelect.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/AddressForm/FormItem.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/AddressForm/Input.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/AddressForm/StateSelect.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/AddressForm/StateSelect.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/AddressForm/StateSelect.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/AddressForm/index.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/AddressForm/index.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/AddressForm/index.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/CreditsRedeemList.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/CreditsRedeemList.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/CreditsRedeemList.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/NonProductValue.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Address.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Address.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Address.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Error.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Init.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Init.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Init.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Success.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Success.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Success.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/index.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/index.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/index.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal.js.map +2 -2
- package/dist/esm/components/credits/creditsRedeemList/RedeemableItem.d.ts +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemableItem.js +1 -1
- package/dist/esm/components/credits/creditsRedeemList/RedeemableItem.js.map +2 -2
- package/dist/esm/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.d.ts +1 -1
- package/dist/esm/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js +1 -1
- package/dist/esm/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js.map +2 -2
- package/dist/esm/components/credits/creditsWaysToGetCredits/useActions.js +1 -1
- package/dist/esm/components/credits/creditsWaysToGetCredits/useActions.js.map +2 -2
- package/dist/esm/components/credits/modal/ActivitiesModal.d.ts +1 -1
- package/dist/esm/components/credits/modal/ActivitiesModal.js +1 -1
- package/dist/esm/components/credits/modal/ActivitiesModal.js.map +2 -2
- package/dist/esm/components/credits/modal/CreditsUploadReceiptModal.d.ts +1 -1
- package/dist/esm/components/credits/modal/CreditsUploadReceiptModal.js +1 -1
- package/dist/esm/components/credits/modal/CreditsUploadReceiptModal.js.map +2 -2
- package/dist/esm/components/credits/modal/ModalContainer.js +1 -1
- package/dist/esm/components/credits/modal/ModalContainer.js.map +2 -2
- package/dist/esm/components/credits/modal/RewardsModal.d.ts +1 -1
- package/dist/esm/components/credits/modal/RewardsModal.js +1 -1
- package/dist/esm/components/credits/modal/RewardsModal.js.map +2 -2
- package/dist/esm/components/credits/modal/RulesModal.d.ts +1 -1
- package/dist/esm/components/credits/modal/RulesModal.js +1 -1
- package/dist/esm/components/credits/modal/RulesModal.js.map +2 -2
- package/dist/esm/components/credits/modal/SubscribeModal.d.ts +1 -1
- package/dist/esm/components/credits/modal/SubscribeModal.js +1 -1
- package/dist/esm/components/credits/modal/SubscribeModal.js.map +2 -2
- package/dist/esm/components/credits/modal/Tip.d.ts +1 -1
- package/dist/esm/components/credits/modal/Tip.js +1 -1
- package/dist/esm/components/credits/modal/Tip.js.map +2 -2
- package/dist/esm/components/credits/type.d.ts +1 -1
- package/dist/esm/components/memberPopup/MemberPopup.d.ts +2 -2
- package/dist/esm/components/memberPopup/MemberPopup.js +1 -1
- package/dist/esm/components/memberPopup/MemberPopup.js.map +2 -2
- package/dist/esm/components/memberPopup/context/provider.d.ts +2 -2
- package/dist/esm/components/memberPopup/context/provider.js +1 -1
- package/dist/esm/components/memberPopup/context/provider.js.map +2 -2
- package/dist/esm/components/memberPopup/icons.d.ts +9 -9
- package/dist/esm/components/memberPopup/panels/ActivitiesSubscribePanel.d.ts +1 -1
- package/dist/esm/components/memberPopup/panels/ActivitiesSubscribePanel.js +1 -1
- package/dist/esm/components/memberPopup/panels/ActivitiesSubscribePanel.js.map +2 -2
- package/dist/esm/components/memberPopup/panels/ConsumeCredits/RedeemCouponPanel.d.ts +1 -1
- package/dist/esm/components/memberPopup/panels/ConsumeCredits/RedeemCouponPanel.js +1 -1
- package/dist/esm/components/memberPopup/panels/ConsumeCredits/RedeemCouponPanel.js.map +2 -2
- package/dist/esm/components/memberPopup/panels/ConsumeCredits/hooks/useRedeemAndBuy.d.ts +1 -1
- package/dist/esm/components/memberPopup/panels/ConsumeCredits/hooks/useRedeemAndBuy.js +1 -1
- package/dist/esm/components/memberPopup/panels/ConsumeCredits/hooks/useRedeemAndBuy.js.map +2 -2
- package/dist/esm/components/memberPopup/panels/ConsumeCredits/hooks/useRedeemCoupon.d.ts +1 -1
- package/dist/esm/components/memberPopup/panels/ConsumeCredits/index.d.ts +1 -1
- package/dist/esm/components/memberPopup/panels/ConsumeCredits/index.js +1 -1
- package/dist/esm/components/memberPopup/panels/ConsumeCredits/index.js.map +2 -2
- package/dist/esm/components/memberPopup/panels/EarnCredits/ActivatePanel.d.ts +1 -1
- package/dist/esm/components/memberPopup/panels/EarnCredits/ActivatePanel.js +1 -1
- package/dist/esm/components/memberPopup/panels/EarnCredits/ActivatePanel.js.map +2 -2
- package/dist/esm/components/memberPopup/panels/EarnCredits/CompleteProfilePanel.d.ts +1 -1
- package/dist/esm/components/memberPopup/panels/EarnCredits/CompleteProfilePanel.js +1 -1
- package/dist/esm/components/memberPopup/panels/EarnCredits/CompleteProfilePanel.js.map +2 -2
- package/dist/esm/components/memberPopup/panels/EarnCredits/SubscribeEmailPanel.d.ts +1 -1
- package/dist/esm/components/memberPopup/panels/EarnCredits/SubscribeEmailPanel.js +1 -1
- package/dist/esm/components/memberPopup/panels/EarnCredits/SubscribeEmailPanel.js.map +2 -2
- package/dist/esm/components/memberPopup/panels/EarnCredits/hooks/useSubscribed.js +1 -1
- package/dist/esm/components/memberPopup/panels/EarnCredits/hooks/useSubscribed.js.map +2 -2
- package/dist/esm/components/memberPopup/panels/EarnCredits/index.d.ts +1 -1
- package/dist/esm/components/memberPopup/panels/EarnCredits/index.js +1 -1
- package/dist/esm/components/memberPopup/panels/EarnCredits/index.js.map +2 -2
- package/dist/esm/components/memberPopup/panels/Referral/index.d.ts +1 -1
- package/dist/esm/components/memberPopup/panels/Referral/index.js +1 -1
- package/dist/esm/components/memberPopup/panels/Referral/index.js.map +2 -2
- package/dist/esm/components/registration/authCodeActivate/Message.d.ts +1 -1
- package/dist/esm/components/registration/authCodeActivate/index.js +1 -1
- package/dist/esm/components/registration/authCodeActivate/index.js.map +2 -2
- package/dist/esm/components/registration/context/provider.d.ts +1 -1
- package/dist/esm/components/registration/modalContainer.js +1 -1
- package/dist/esm/components/registration/modalContainer.js.map +2 -2
- package/dist/esm/lib/cart/const.d.ts +5 -0
- package/dist/esm/lib/cart/const.js +2 -0
- package/dist/esm/lib/cart/const.js.map +7 -0
- package/dist/esm/lib/cart/context/index.d.ts +46 -0
- package/dist/esm/lib/cart/context/index.js +2 -0
- package/dist/esm/lib/cart/context/index.js.map +7 -0
- package/dist/esm/lib/cart/hooks/basic/useAddToCart.d.ts +29 -0
- package/dist/esm/lib/cart/hooks/basic/useAddToCart.js +2 -0
- package/dist/esm/lib/cart/hooks/basic/useAddToCart.js.map +7 -0
- package/dist/esm/lib/cart/hooks/basic/useApplyCartCodes.d.ts +10 -0
- package/dist/esm/lib/cart/hooks/basic/useApplyCartCodes.js +2 -0
- package/dist/esm/lib/cart/hooks/basic/useApplyCartCodes.js.map +7 -0
- package/dist/esm/lib/cart/hooks/basic/useBuyNow.d.ts +20 -0
- package/dist/esm/lib/cart/hooks/basic/useBuyNow.js +2 -0
- package/dist/esm/lib/cart/hooks/basic/useBuyNow.js.map +7 -0
- package/dist/esm/lib/cart/hooks/basic/useCreateCart.d.ts +6 -0
- package/dist/esm/lib/cart/hooks/basic/useCreateCart.js +2 -0
- package/dist/esm/lib/cart/hooks/basic/useCreateCart.js.map +7 -0
- package/dist/esm/lib/cart/hooks/basic/useRemoveCartCodes.d.ts +10 -0
- package/dist/esm/lib/cart/hooks/basic/useRemoveCartCodes.js +2 -0
- package/dist/esm/lib/cart/hooks/basic/useRemoveCartCodes.js.map +7 -0
- package/dist/esm/lib/cart/hooks/basic/useRemoveCartLines.d.ts +10 -0
- package/dist/esm/lib/cart/hooks/basic/useRemoveCartLines.js +2 -0
- package/dist/esm/lib/cart/hooks/basic/useRemoveCartLines.js.map +7 -0
- package/dist/esm/lib/cart/hooks/basic/useUpdateCartAttributes.d.ts +7 -0
- package/dist/esm/lib/cart/hooks/basic/useUpdateCartAttributes.js +2 -0
- package/dist/esm/lib/cart/hooks/basic/useUpdateCartAttributes.js.map +7 -0
- package/dist/esm/lib/cart/hooks/basic/useUpdateCartBuyerIdentity.d.ts +7 -0
- package/dist/esm/lib/cart/hooks/basic/useUpdateCartBuyerIdentity.js +2 -0
- package/dist/esm/lib/cart/hooks/basic/useUpdateCartBuyerIdentity.js.map +7 -0
- package/dist/esm/lib/cart/hooks/basic/useUpdateCartLines.d.ts +7 -0
- package/dist/esm/lib/cart/hooks/basic/useUpdateCartLines.js +2 -0
- package/dist/esm/lib/cart/hooks/basic/useUpdateCartLines.js.map +7 -0
- package/dist/esm/lib/cart/hooks/feature/useCalcAutoFreeGift.d.ts +9 -0
- package/dist/esm/lib/cart/hooks/feature/useCalcAutoFreeGift.js +2 -0
- package/dist/esm/lib/cart/hooks/feature/useCalcAutoFreeGift.js.map +7 -0
- package/dist/esm/lib/cart/hooks/feature/useCalcOrderDiscount.d.ts +20 -0
- package/dist/esm/lib/cart/hooks/feature/useCalcOrderDiscount.js +2 -0
- package/dist/esm/lib/cart/hooks/feature/useCalcOrderDiscount.js.map +7 -0
- package/dist/esm/lib/cart/hooks/feature/useCartAttributes.d.ts +9 -0
- package/dist/esm/lib/cart/hooks/feature/useCartAttributes.js +2 -0
- package/dist/esm/lib/cart/hooks/feature/useCartAttributes.js.map +7 -0
- package/dist/esm/lib/cart/hooks/feature/useCartItemQuantityLimit.d.ts +18 -0
- package/dist/esm/lib/cart/hooks/feature/useCartItemQuantityLimit.js +2 -0
- package/dist/esm/lib/cart/hooks/feature/useCartItemQuantityLimit.js.map +7 -0
- package/dist/esm/lib/cart/hooks/feature/useScriptAutoFreeGift.d.ts +36 -0
- package/dist/esm/lib/cart/hooks/feature/useScriptAutoFreeGift.js +2 -0
- package/dist/esm/lib/cart/hooks/feature/useScriptAutoFreeGift.js.map +7 -0
- package/dist/esm/lib/cart/hooks/feature/useUpdateLineCodeAmountAttributes.d.ts +8 -0
- package/dist/esm/lib/cart/hooks/feature/useUpdateLineCodeAmountAttributes.js +2 -0
- package/dist/esm/lib/cart/hooks/feature/useUpdateLineCodeAmountAttributes.js.map +7 -0
- package/dist/esm/lib/cart/index.d.ts +5 -0
- package/dist/esm/lib/cart/index.js +2 -0
- package/dist/esm/lib/cart/index.js.map +7 -0
- package/dist/esm/lib/cart/track/fbq.d.ts +13 -0
- package/dist/esm/lib/cart/track/fbq.js +2 -0
- package/dist/esm/lib/cart/track/fbq.js.map +7 -0
- package/dist/esm/lib/cart/track/gtm.d.ts +25 -0
- package/dist/esm/lib/cart/track/gtm.js +2 -0
- package/dist/esm/lib/cart/track/gtm.js.map +7 -0
- package/dist/esm/lib/cart/types/autoFreeGift.d.ts +134 -0
- package/dist/esm/lib/cart/types/autoFreeGift.js +2 -0
- package/dist/esm/lib/cart/types/autoFreeGift.js.map +7 -0
- package/dist/esm/lib/cart/types/index.d.ts +23 -0
- package/dist/esm/lib/cart/types/index.js +1 -0
- package/dist/esm/lib/cart/types/index.js.map +7 -0
- package/dist/esm/lib/cart/types/orderDiscount.d.ts +34 -0
- package/dist/esm/lib/cart/types/orderDiscount.js +2 -0
- package/dist/esm/lib/cart/types/orderDiscount.js.map +7 -0
- package/dist/esm/lib/cart/types/priceDiscount.d.ts +19 -0
- package/dist/esm/lib/cart/types/priceDiscount.js +2 -0
- package/dist/esm/lib/cart/types/priceDiscount.js.map +7 -0
- package/dist/esm/lib/cart/utils/autoFreeGift.d.ts +20 -0
- package/dist/esm/lib/cart/utils/autoFreeGift.js +2 -0
- package/dist/esm/lib/cart/utils/autoFreeGift.js.map +7 -0
- package/dist/esm/lib/cart/utils/index.d.ts +3 -0
- package/dist/esm/lib/cart/utils/index.js +2 -0
- package/dist/esm/lib/cart/utils/index.js.map +7 -0
- package/dist/esm/lib/constants.d.ts +1 -0
- package/dist/esm/lib/constants.js +2 -0
- package/dist/esm/lib/constants.js.map +7 -0
- package/dist/esm/lib/context/HeadlessProvider.d.ts +9 -0
- package/dist/esm/lib/context/HeadlessProvider.js +2 -0
- package/dist/esm/lib/context/HeadlessProvider.js.map +7 -0
- package/dist/esm/lib/context/config.d.ts +12 -0
- package/dist/esm/lib/context/config.js +1 -0
- package/dist/esm/lib/context/config.js.map +7 -0
- package/dist/esm/lib/context/index.d.ts +2 -0
- package/dist/esm/lib/context/index.js +2 -0
- package/dist/esm/lib/context/index.js.map +7 -0
- package/dist/esm/lib/index.d.ts +6 -0
- package/dist/esm/lib/index.js +2 -0
- package/dist/esm/lib/index.js.map +7 -0
- package/dist/esm/lib/registration/hooks/index.d.ts +3 -0
- package/dist/esm/lib/registration/hooks/index.js +2 -0
- package/dist/esm/lib/registration/hooks/index.js.map +7 -0
- package/dist/esm/lib/registration/hooks/useEmailValidation.d.ts +16 -0
- package/dist/esm/lib/registration/hooks/useEmailValidation.js +2 -0
- package/dist/esm/lib/registration/hooks/useEmailValidation.js.map +7 -0
- package/dist/esm/lib/registration/hooks/useSendEmailValidation.d.ts +8 -0
- package/dist/esm/lib/registration/hooks/useSendEmailValidation.js +2 -0
- package/dist/esm/lib/registration/hooks/useSendEmailValidation.js.map +7 -0
- package/dist/esm/lib/registration/hooks/useSubscriptions.d.ts +4 -0
- package/dist/esm/lib/registration/hooks/useSubscriptions.js +2 -0
- package/dist/esm/lib/registration/hooks/useSubscriptions.js.map +7 -0
- package/dist/esm/lib/registration/index.d.ts +1 -0
- package/dist/esm/lib/registration/index.js +2 -0
- package/dist/esm/lib/registration/index.js.map +7 -0
- package/dist/esm/lib/shopify/fetchers/add-cart-lines.d.ts +11 -0
- package/dist/esm/lib/shopify/fetchers/add-cart-lines.js +2 -0
- package/dist/esm/lib/shopify/fetchers/add-cart-lines.js.map +7 -0
- package/dist/esm/lib/shopify/fetchers/create-cart.d.ts +12 -0
- package/dist/esm/lib/shopify/fetchers/create-cart.js +2 -0
- package/dist/esm/lib/shopify/fetchers/create-cart.js.map +7 -0
- package/dist/esm/lib/shopify/fetchers/get-cart.d.ts +15 -0
- package/dist/esm/lib/shopify/fetchers/get-cart.js +2 -0
- package/dist/esm/lib/shopify/fetchers/get-cart.js.map +7 -0
- package/dist/esm/lib/shopify/fetchers/get-products-by-handles.d.ts +14 -0
- package/dist/esm/lib/shopify/fetchers/get-products-by-handles.js +2 -0
- package/dist/esm/lib/shopify/fetchers/get-products-by-handles.js.map +7 -0
- package/dist/esm/lib/shopify/fetchers/index.d.ts +11 -0
- package/dist/esm/lib/shopify/fetchers/index.js +2 -0
- package/dist/esm/lib/shopify/fetchers/index.js.map +7 -0
- package/dist/esm/lib/shopify/fetchers/remove-cart-lines.d.ts +11 -0
- package/dist/esm/lib/shopify/fetchers/remove-cart-lines.js +2 -0
- package/dist/esm/lib/shopify/fetchers/remove-cart-lines.js.map +7 -0
- package/dist/esm/lib/shopify/fetchers/update-cart-attributes.d.ts +11 -0
- package/dist/esm/lib/shopify/fetchers/update-cart-attributes.js +2 -0
- package/dist/esm/lib/shopify/fetchers/update-cart-attributes.js.map +7 -0
- package/dist/esm/lib/shopify/fetchers/update-cart-buyer-identity.d.ts +11 -0
- package/dist/esm/lib/shopify/fetchers/update-cart-buyer-identity.js +2 -0
- package/dist/esm/lib/shopify/fetchers/update-cart-buyer-identity.js.map +7 -0
- package/dist/esm/lib/shopify/fetchers/update-cart-codes.d.ts +11 -0
- package/dist/esm/lib/shopify/fetchers/update-cart-codes.js +2 -0
- package/dist/esm/lib/shopify/fetchers/update-cart-codes.js.map +7 -0
- package/dist/esm/lib/shopify/fetchers/update-cart-lines.d.ts +11 -0
- package/dist/esm/lib/shopify/fetchers/update-cart-lines.js +2 -0
- package/dist/esm/lib/shopify/fetchers/update-cart-lines.js.map +7 -0
- package/dist/esm/lib/shopify/fragments/article.d.ts +2 -0
- package/dist/esm/lib/shopify/fragments/article.js +50 -0
- package/dist/esm/lib/shopify/fragments/article.js.map +7 -0
- package/dist/esm/lib/shopify/fragments/blog.d.ts +1 -0
- package/dist/esm/lib/shopify/fragments/blog.js +11 -0
- package/dist/esm/lib/shopify/fragments/blog.js.map +7 -0
- package/dist/esm/lib/shopify/fragments/cart.d.ts +1 -0
- package/dist/esm/lib/shopify/fragments/cart.js +189 -0
- package/dist/esm/lib/shopify/fragments/cart.js.map +7 -0
- package/dist/esm/lib/shopify/fragments/collection.d.ts +1 -0
- package/dist/esm/lib/shopify/fragments/collection.js +16 -0
- package/dist/esm/lib/shopify/fragments/collection.js.map +7 -0
- package/dist/esm/lib/shopify/fragments/image.d.ts +1 -0
- package/dist/esm/lib/shopify/fragments/image.js +9 -0
- package/dist/esm/lib/shopify/fragments/image.js.map +7 -0
- package/dist/esm/lib/shopify/fragments/index.d.ts +11 -0
- package/dist/esm/lib/shopify/fragments/index.js +2 -0
- package/dist/esm/lib/shopify/fragments/index.js.map +7 -0
- package/dist/esm/lib/shopify/fragments/metafields.d.ts +2 -0
- package/dist/esm/lib/shopify/fragments/metafields.js +16 -0
- package/dist/esm/lib/shopify/fragments/metafields.js.map +7 -0
- package/dist/esm/lib/shopify/fragments/page-info.d.ts +1 -0
- package/dist/esm/lib/shopify/fragments/page-info.js +9 -0
- package/dist/esm/lib/shopify/fragments/page-info.js.map +7 -0
- package/dist/esm/lib/shopify/fragments/page.d.ts +1 -0
- package/dist/esm/lib/shopify/fragments/page.js +13 -0
- package/dist/esm/lib/shopify/fragments/page.js.map +7 -0
- package/dist/esm/lib/shopify/fragments/product.d.ts +1 -0
- package/dist/esm/lib/shopify/fragments/product.js +72 -0
- package/dist/esm/lib/shopify/fragments/product.js.map +7 -0
- package/dist/esm/lib/shopify/fragments/seo.d.ts +1 -0
- package/dist/esm/lib/shopify/fragments/seo.js +7 -0
- package/dist/esm/lib/shopify/fragments/seo.js.map +7 -0
- package/dist/esm/lib/shopify/fragments/variant.d.ts +1 -0
- package/dist/esm/lib/shopify/fragments/variant.js +30 -0
- package/dist/esm/lib/shopify/fragments/variant.js.map +7 -0
- package/dist/esm/lib/shopify/gql/fragment-masking.d.ts +15 -0
- package/dist/esm/lib/shopify/gql/fragment-masking.js +2 -0
- package/dist/esm/lib/shopify/gql/fragment-masking.js.map +7 -0
- package/dist/esm/lib/shopify/gql/gql.d.ts +87 -0
- package/dist/esm/lib/shopify/gql/gql.js +2 -0
- package/dist/esm/lib/shopify/gql/gql.js.map +7 -0
- package/dist/esm/lib/shopify/gql/graphql.d.ts +7669 -0
- package/dist/esm/lib/shopify/gql/graphql.js +2 -0
- package/dist/esm/lib/shopify/gql/graphql.js.map +7 -0
- package/dist/esm/lib/shopify/gql/index.d.ts +3 -0
- package/dist/esm/lib/shopify/gql/index.js +2 -0
- package/dist/esm/lib/shopify/gql/index.js.map +7 -0
- package/dist/esm/lib/shopify/hooks/index.d.ts +1 -0
- package/dist/esm/lib/shopify/hooks/index.js +2 -0
- package/dist/esm/lib/shopify/hooks/index.js.map +7 -0
- package/dist/esm/lib/shopify/hooks/useProductsByHandles.d.ts +4 -0
- package/dist/esm/lib/shopify/hooks/useProductsByHandles.js +2 -0
- package/dist/esm/lib/shopify/hooks/useProductsByHandles.js.map +7 -0
- package/dist/esm/lib/shopify/index.d.ts +5 -0
- package/dist/esm/lib/shopify/index.js +2 -0
- package/dist/esm/lib/shopify/index.js.map +7 -0
- package/dist/esm/lib/shopify/mutations/add-cart-lines.d.ts +1 -0
- package/dist/esm/lib/shopify/mutations/add-cart-lines.js +15 -0
- package/dist/esm/lib/shopify/mutations/add-cart-lines.js.map +7 -0
- package/dist/esm/lib/shopify/mutations/create-cart.d.ts +1 -0
- package/dist/esm/lib/shopify/mutations/create-cart.js +21 -0
- package/dist/esm/lib/shopify/mutations/create-cart.js.map +7 -0
- package/dist/esm/lib/shopify/mutations/remove-cart-items.d.ts +1 -0
- package/dist/esm/lib/shopify/mutations/remove-cart-items.js +15 -0
- package/dist/esm/lib/shopify/mutations/remove-cart-items.js.map +7 -0
- package/dist/esm/lib/shopify/mutations/update-cart-attributes.d.ts +1 -0
- package/dist/esm/lib/shopify/mutations/update-cart-attributes.js +15 -0
- package/dist/esm/lib/shopify/mutations/update-cart-attributes.js.map +7 -0
- package/dist/esm/lib/shopify/mutations/update-cart-buyer-identity.d.ts +1 -0
- package/dist/esm/lib/shopify/mutations/update-cart-buyer-identity.js +15 -0
- package/dist/esm/lib/shopify/mutations/update-cart-buyer-identity.js.map +7 -0
- package/dist/esm/lib/shopify/mutations/update-cart-discount-code.d.ts +1 -0
- package/dist/esm/lib/shopify/mutations/update-cart-discount-code.js +15 -0
- package/dist/esm/lib/shopify/mutations/update-cart-discount-code.js.map +7 -0
- package/dist/esm/lib/shopify/mutations/update-cart-items.d.ts +1 -0
- package/dist/esm/lib/shopify/mutations/update-cart-items.js +15 -0
- package/dist/esm/lib/shopify/mutations/update-cart-items.js.map +7 -0
- package/dist/esm/lib/shopify/queries/get-cart.d.ts +1 -0
- package/dist/esm/lib/shopify/queries/get-cart.js +13 -0
- package/dist/esm/lib/shopify/queries/get-cart.js.map +7 -0
- package/dist/esm/lib/shopify/queries/get-product-by-handles.d.ts +1 -0
- package/dist/esm/lib/shopify/queries/get-product-by-handles.js +29 -0
- package/dist/esm/lib/shopify/queries/get-product-by-handles.js.map +7 -0
- package/dist/esm/lib/shopify/queries/index.d.ts +1 -0
- package/dist/esm/lib/shopify/queries/index.js +2 -0
- package/dist/esm/lib/shopify/queries/index.js.map +7 -0
- package/dist/esm/lib/shopify/types/article.d.ts +48 -0
- package/dist/esm/lib/shopify/types/article.js +1 -0
- package/dist/esm/lib/shopify/types/article.js.map +7 -0
- package/dist/esm/lib/shopify/types/cart.d.ts +174 -0
- package/dist/esm/lib/shopify/types/cart.js +1 -0
- package/dist/esm/lib/shopify/types/cart.js.map +7 -0
- package/dist/esm/lib/shopify/types/checkout.d.ts +42 -0
- package/dist/esm/lib/shopify/types/checkout.js +1 -0
- package/dist/esm/lib/shopify/types/checkout.js.map +7 -0
- package/dist/esm/lib/shopify/types/collection.d.ts +122 -0
- package/dist/esm/lib/shopify/types/collection.js +1 -0
- package/dist/esm/lib/shopify/types/collection.js.map +7 -0
- package/dist/esm/lib/shopify/types/common.d.ts +42 -0
- package/dist/esm/lib/shopify/types/common.js +1 -0
- package/dist/esm/lib/shopify/types/common.js.map +7 -0
- package/dist/esm/lib/shopify/types/config.d.ts +12 -0
- package/dist/esm/lib/shopify/types/config.js +1 -0
- package/dist/esm/lib/shopify/types/config.js.map +7 -0
- package/dist/esm/lib/shopify/types/customer.d.ts +30 -0
- package/dist/esm/lib/shopify/types/customer.js +1 -0
- package/dist/esm/lib/shopify/types/customer.js.map +7 -0
- package/dist/esm/lib/shopify/types/fetcher.d.ts +43 -0
- package/dist/esm/lib/shopify/types/fetcher.js +2 -0
- package/dist/esm/lib/shopify/types/fetcher.js.map +7 -0
- package/dist/esm/lib/shopify/types/index.d.ts +11 -0
- package/dist/esm/lib/shopify/types/index.js +2 -0
- package/dist/esm/lib/shopify/types/index.js.map +7 -0
- package/dist/esm/lib/shopify/types/page.d.ts +33 -0
- package/dist/esm/lib/shopify/types/page.js +1 -0
- package/dist/esm/lib/shopify/types/page.js.map +7 -0
- package/dist/esm/lib/shopify/types/product.d.ts +174 -0
- package/dist/esm/lib/shopify/types/product.js +1 -0
- package/dist/esm/lib/shopify/types/product.js.map +7 -0
- package/dist/esm/lib/shopify/types/search.d.ts +54 -0
- package/dist/esm/lib/shopify/types/search.js +1 -0
- package/dist/esm/lib/shopify/types/search.js.map +7 -0
- package/dist/esm/lib/shopify/types/site.d.ts +33 -0
- package/dist/esm/lib/shopify/types/site.js +1 -0
- package/dist/esm/lib/shopify/types/site.js.map +7 -0
- package/dist/esm/lib/shopify/types/type-helper.d.ts +5 -0
- package/dist/esm/lib/shopify/types/type-helper.js +1 -0
- package/dist/esm/lib/shopify/types/type-helper.js.map +7 -0
- package/dist/esm/lib/shopify/utils/colors.d.ts +3 -0
- package/dist/esm/lib/shopify/utils/colors.js +2 -0
- package/dist/esm/lib/shopify/utils/colors.js.map +7 -0
- package/dist/esm/lib/shopify/utils/const.d.ts +76 -0
- package/dist/esm/lib/shopify/utils/const.js +2 -0
- package/dist/esm/lib/shopify/utils/const.js.map +7 -0
- package/dist/esm/lib/shopify/utils/cookie.d.ts +15 -0
- package/dist/esm/lib/shopify/utils/cookie.js +2 -0
- package/dist/esm/lib/shopify/utils/cookie.js.map +7 -0
- package/dist/esm/lib/shopify/utils/errors.d.ts +38 -0
- package/dist/esm/lib/shopify/utils/errors.js +3 -0
- package/dist/esm/lib/shopify/utils/errors.js.map +7 -0
- package/dist/esm/lib/shopify/utils/fetch-graphql-api.d.ts +19 -0
- package/dist/esm/lib/shopify/utils/fetch-graphql-api.js +3 -0
- package/dist/esm/lib/shopify/utils/fetch-graphql-api.js.map +7 -0
- package/dist/esm/lib/shopify/utils/handle-fetch-response.d.ts +5 -0
- package/dist/esm/lib/shopify/utils/handle-fetch-response.js +2 -0
- package/dist/esm/lib/shopify/utils/handle-fetch-response.js.map +7 -0
- package/dist/esm/lib/shopify/utils/helper.d.ts +28 -0
- package/dist/esm/lib/shopify/utils/helper.js +2 -0
- package/dist/esm/lib/shopify/utils/helper.js.map +7 -0
- package/dist/esm/lib/shopify/utils/normalize/cart.d.ts +7 -0
- package/dist/esm/lib/shopify/utils/normalize/cart.js +2 -0
- package/dist/esm/lib/shopify/utils/normalize/cart.js.map +7 -0
- package/dist/esm/lib/shopify/utils/normalize/customer.d.ts +3 -0
- package/dist/esm/lib/shopify/utils/normalize/customer.js +2 -0
- package/dist/esm/lib/shopify/utils/normalize/customer.js.map +7 -0
- package/dist/esm/lib/shopify/utils/normalize/index.d.ts +2 -0
- package/dist/esm/lib/shopify/utils/normalize/index.js +2 -0
- package/dist/esm/lib/shopify/utils/normalize/index.js.map +7 -0
- package/dist/esm/lib/shopify/utils/normalize/metafield.d.ts +5 -0
- package/dist/esm/lib/shopify/utils/normalize/metafield.js +2 -0
- package/dist/esm/lib/shopify/utils/normalize/metafield.js.map +7 -0
- package/dist/esm/lib/shopify/utils/normalize/product.d.ts +16 -0
- package/dist/esm/lib/shopify/utils/normalize/product.js +2 -0
- package/dist/esm/lib/shopify/utils/normalize/product.js.map +7 -0
- package/dist/esm/lib/shopify/utils/store.d.ts +2 -0
- package/dist/esm/lib/shopify/utils/store.js +2 -0
- package/dist/esm/lib/shopify/utils/store.js.map +7 -0
- package/dist/esm/lib/shopify/utils/type-helper.d.ts +5 -0
- package/dist/esm/lib/shopify/utils/type-helper.js +1 -0
- package/dist/esm/lib/shopify/utils/type-helper.js.map +7 -0
- package/dist/esm/lib/utils/classnames.d.ts +2 -0
- package/dist/esm/lib/utils/classnames.js +2 -0
- package/dist/esm/lib/utils/classnames.js.map +7 -0
- package/dist/esm/lib/utils/fetcher/fetchResponse.d.ts +13 -0
- package/dist/esm/lib/utils/fetcher/fetchResponse.js +2 -0
- package/dist/esm/lib/utils/fetcher/fetchResponse.js.map +7 -0
- package/dist/esm/lib/utils/fetcher/fetcher.d.ts +1 -0
- package/dist/esm/lib/utils/fetcher/fetcher.js +2 -0
- package/dist/esm/lib/utils/fetcher/fetcher.js.map +7 -0
- package/dist/esm/lib/utils/fetcher/index.d.ts +2 -0
- package/dist/esm/lib/utils/fetcher/index.js +2 -0
- package/dist/esm/lib/utils/fetcher/index.js.map +7 -0
- package/dist/esm/lib/utils/index.d.ts +4 -0
- package/dist/esm/lib/utils/index.js +2 -0
- package/dist/esm/lib/utils/index.js.map +7 -0
- package/dist/esm/lib/utils/track.d.ts +15 -0
- package/dist/esm/lib/utils/track.js +2 -0
- package/dist/esm/lib/utils/track.js.map +7 -0
- package/dist/esm/lib/utils/useCountDown.d.ts +5 -0
- package/dist/esm/lib/utils/useCountDown.js +2 -0
- package/dist/esm/lib/utils/useCountDown.js.map +7 -0
- package/dist/esm/templates/Credits.d.ts +1 -1
- package/dist/esm/templates/Credits.js +1 -1
- package/dist/esm/templates/Credits.js.map +2 -2
- package/dist/esm/templates/Credits.types.d.ts +1 -1
- package/dist/esm/templates/Credits.types.js.map +1 -1
- package/package.json +33 -4
- package/src/components/chat/index.tsx +1 -1
- package/src/components/credits/context/hooks/useActivities.ts +1 -1
- package/src/components/credits/context/hooks/useAddressValidate.ts +1 -1
- package/src/components/credits/context/hooks/useAlpcFetch.ts +1 -1
- package/src/components/credits/context/hooks/useCountries.ts +1 -1
- package/src/components/credits/context/hooks/useMyRewards.ts +1 -1
- package/src/components/credits/context/hooks/useRedeemAndBuy.ts +2 -2
- package/src/components/credits/context/hooks/useRedeemCoupon.ts +1 -1
- package/src/components/credits/context/hooks/useRedeemGoGift.ts +1 -1
- package/src/components/credits/context/hooks/useRedeemProduct.ts +1 -1
- package/src/components/credits/context/hooks/useRedeemableList.ts +1 -1
- package/src/components/credits/context/hooks/useShippingCountries.ts +1 -1
- package/src/components/credits/context/hooks/useSubscribed.ts +1 -1
- package/src/components/credits/context/hooks/useUploadReceipt.tsx +18 -10
- package/src/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.tsx +1 -1
- package/src/components/credits/creditsBenefits/BenefitItem.tsx +1 -1
- package/src/components/credits/creditsBenefits/index.tsx +1 -1
- package/src/components/credits/creditsCash/CreditsCash.tsx +2 -2
- package/src/components/credits/creditsCash/RedeemableItem.tsx +1 -1
- package/src/components/credits/creditsCash/type.ts +1 -1
- package/src/components/credits/creditsFaq/faqItem/FaqItem.tsx +1 -1
- package/src/components/credits/creditsFaq/index.tsx +1 -1
- package/src/components/credits/creditsGoGift/CreditsGoGift.tsx +2 -2
- package/src/components/credits/creditsInfoCard/index.tsx +1 -1
- package/src/components/credits/creditsMemberPrice/CreditsMemberPrice.tsx +2 -2
- package/src/components/credits/creditsMemberPrice/MemberPriceItem.tsx +1 -1
- package/src/components/credits/creditsMemberPrice/Pagination.tsx +1 -1
- package/src/components/credits/creditsMemberPrice/type.ts +1 -1
- package/src/components/credits/creditsNavigation/CreditsNavigation.tsx +1 -1
- package/src/components/credits/creditsRedeemList/AddressForm/CountrySelect.tsx +1 -1
- package/src/components/credits/creditsRedeemList/AddressForm/StateSelect.tsx +1 -1
- package/src/components/credits/creditsRedeemList/AddressForm/index.tsx +1 -1
- package/src/components/credits/creditsRedeemList/CreditsRedeemList.tsx +1 -1
- package/src/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.tsx +1 -1
- package/src/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.tsx +1 -1
- package/src/components/credits/creditsRedeemList/RedeemProductModal/Address.tsx +1 -1
- package/src/components/credits/creditsRedeemList/RedeemProductModal/Init.tsx +1 -1
- package/src/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.tsx +1 -1
- package/src/components/credits/creditsRedeemList/RedeemProductModal/Success.tsx +1 -1
- package/src/components/credits/creditsRedeemList/RedeemProductModal/index.tsx +1 -1
- package/src/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.tsx +1 -1
- package/src/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.tsx +1 -1
- package/src/components/credits/creditsRedeemList/RedeemVirtualProductModal.tsx +1 -1
- package/src/components/credits/creditsRedeemList/RedeemableItem.tsx +1 -1
- package/src/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.tsx +1 -1
- package/src/components/credits/creditsWaysToGetCredits/useActions.ts +1 -1
- package/src/components/credits/modal/ActivitiesModal.tsx +1 -1
- package/src/components/credits/modal/CreditsUploadReceiptModal.tsx +1 -1
- package/src/components/credits/modal/ModalContainer.tsx +1 -1
- package/src/components/credits/modal/RewardsModal.tsx +1 -1
- package/src/components/credits/modal/RulesModal.tsx +1 -1
- package/src/components/credits/modal/SubscribeModal.tsx +1 -1
- package/src/components/credits/modal/Tip.tsx +1 -1
- package/src/components/credits/type.ts +1 -1
- package/src/components/memberPopup/MemberPopup.tsx +1 -1
- package/src/components/memberPopup/context/provider.tsx +1 -1
- package/src/components/memberPopup/panels/ActivitiesSubscribePanel.tsx +1 -1
- package/src/components/memberPopup/panels/ConsumeCredits/RedeemCouponPanel.tsx +1 -1
- package/src/components/memberPopup/panels/ConsumeCredits/hooks/useRedeemAndBuy.ts +2 -2
- package/src/components/memberPopup/panels/ConsumeCredits/index.tsx +1 -1
- package/src/components/memberPopup/panels/EarnCredits/ActivatePanel.tsx +1 -1
- package/src/components/memberPopup/panels/EarnCredits/CompleteProfilePanel.tsx +1 -1
- package/src/components/memberPopup/panels/EarnCredits/SubscribeEmailPanel.tsx +1 -1
- package/src/components/memberPopup/panels/EarnCredits/hooks/useSubscribed.ts +1 -1
- package/src/components/memberPopup/panels/EarnCredits/index.tsx +1 -1
- package/src/components/memberPopup/panels/Referral/index.tsx +1 -1
- package/src/components/registration/authCodeActivate/index.tsx +1 -1
- package/src/components/registration/modalContainer.tsx +1 -1
- package/src/lib/cart/const.ts +23 -0
- package/src/lib/cart/context/index.tsx +310 -0
- package/src/lib/cart/hooks/basic/useAddToCart.ts +161 -0
- package/src/lib/cart/hooks/basic/useApplyCartCodes.ts +72 -0
- package/src/lib/cart/hooks/basic/useBuyNow.ts +108 -0
- package/src/lib/cart/hooks/basic/useCreateCart.ts +32 -0
- package/src/lib/cart/hooks/basic/useRemoveCartCodes.ts +55 -0
- package/src/lib/cart/hooks/basic/useRemoveCartLines.ts +51 -0
- package/src/lib/cart/hooks/basic/useUpdateCartAttributes.ts +42 -0
- package/src/lib/cart/hooks/basic/useUpdateCartBuyerIdentity.ts +34 -0
- package/src/lib/cart/hooks/basic/useUpdateCartLines.ts +34 -0
- package/src/lib/cart/hooks/feature/useCalcAutoFreeGift.tsx +178 -0
- package/src/lib/cart/hooks/feature/useCalcOrderDiscount.tsx +127 -0
- package/src/lib/cart/hooks/feature/useCartAttributes.tsx +133 -0
- package/src/lib/cart/hooks/feature/useCartItemQuantityLimit.tsx +59 -0
- package/src/lib/cart/hooks/feature/useScriptAutoFreeGift.tsx +256 -0
- package/src/lib/cart/hooks/feature/useUpdateLineCodeAmountAttributes.tsx +184 -0
- package/src/lib/cart/index.ts +19 -0
- package/src/lib/cart/track/fbq.ts +38 -0
- package/src/lib/cart/track/gtm.ts +159 -0
- package/src/lib/cart/types/autoFreeGift.ts +169 -0
- package/src/lib/cart/types/index.ts +26 -0
- package/src/lib/cart/types/orderDiscount.ts +38 -0
- package/src/lib/cart/types/priceDiscount.ts +21 -0
- package/src/lib/cart/utils/autoFreeGift.ts +297 -0
- package/src/lib/cart/utils/index.ts +35 -0
- package/src/lib/constants.ts +1 -0
- package/src/lib/context/HeadlessProvider.tsx +30 -0
- package/src/lib/context/config.ts +12 -0
- package/src/lib/context/index.ts +2 -0
- package/src/lib/index.ts +11 -0
- package/src/lib/registration/hooks/index.ts +3 -0
- package/src/lib/registration/hooks/useEmailValidation.ts +28 -0
- package/src/lib/registration/hooks/useSendEmailValidation.ts +21 -0
- package/src/lib/registration/hooks/useSubscriptions.ts +22 -0
- package/src/lib/registration/index.ts +2 -0
- package/src/lib/shopify/fetchers/add-cart-lines.ts +53 -0
- package/src/lib/shopify/fetchers/create-cart.ts +43 -0
- package/src/lib/shopify/fetchers/get-cart.ts +48 -0
- package/src/lib/shopify/fetchers/get-products-by-handles.ts +52 -0
- package/src/lib/shopify/fetchers/index.ts +12 -0
- package/src/lib/shopify/fetchers/remove-cart-lines.ts +31 -0
- package/src/lib/shopify/fetchers/update-cart-attributes.ts +29 -0
- package/src/lib/shopify/fetchers/update-cart-buyer-identity.ts +32 -0
- package/src/lib/shopify/fetchers/update-cart-codes.ts +32 -0
- package/src/lib/shopify/fetchers/update-cart-lines.ts +42 -0
- package/src/lib/shopify/fragments/article.ts +51 -0
- package/src/lib/shopify/fragments/blog.ts +10 -0
- package/src/lib/shopify/fragments/cart.ts +193 -0
- package/src/lib/shopify/fragments/collection.ts +15 -0
- package/src/lib/shopify/fragments/image.ts +8 -0
- package/src/lib/shopify/fragments/index.ts +11 -0
- package/src/lib/shopify/fragments/metafields.ts +17 -0
- package/src/lib/shopify/fragments/page-info.ts +8 -0
- package/src/lib/shopify/fragments/page.ts +12 -0
- package/src/lib/shopify/fragments/product.ts +71 -0
- package/src/lib/shopify/fragments/seo.ts +6 -0
- package/src/lib/shopify/fragments/variant.ts +29 -0
- package/src/lib/shopify/gql/fragment-masking.ts +85 -0
- package/src/lib/shopify/gql/gql.ts +110 -0
- package/src/lib/shopify/gql/graphql.ts +11780 -0
- package/src/lib/shopify/gql/index.ts +4 -0
- package/src/lib/shopify/hooks/index.ts +1 -0
- package/src/lib/shopify/hooks/useProductsByHandles.ts +24 -0
- package/src/lib/shopify/index.ts +5 -0
- package/src/lib/shopify/mutations/add-cart-lines.ts +16 -0
- package/src/lib/shopify/mutations/create-cart.ts +22 -0
- package/src/lib/shopify/mutations/remove-cart-items.ts +16 -0
- package/src/lib/shopify/mutations/update-cart-attributes.ts +16 -0
- package/src/lib/shopify/mutations/update-cart-buyer-identity.ts +16 -0
- package/src/lib/shopify/mutations/update-cart-discount-code.ts +16 -0
- package/src/lib/shopify/mutations/update-cart-items.ts +16 -0
- package/src/lib/shopify/queries/get-cart.ts +14 -0
- package/src/lib/shopify/queries/get-product-by-handles.ts +32 -0
- package/src/lib/shopify/queries/index.ts +2 -0
- package/src/lib/shopify/types/article.ts +46 -0
- package/src/lib/shopify/types/cart.ts +204 -0
- package/src/lib/shopify/types/checkout.ts +44 -0
- package/src/lib/shopify/types/collection.ts +104 -0
- package/src/lib/shopify/types/common.ts +53 -0
- package/src/lib/shopify/types/config.ts +14 -0
- package/src/lib/shopify/types/customer.ts +31 -0
- package/src/lib/shopify/types/fetcher.ts +67 -0
- package/src/lib/shopify/types/index.ts +11 -0
- package/src/lib/shopify/types/page.ts +45 -0
- package/src/lib/shopify/types/product.ts +176 -0
- package/src/lib/shopify/types/search.ts +62 -0
- package/src/lib/shopify/types/site.ts +38 -0
- package/src/lib/shopify/types/type-helper.ts +5 -0
- package/src/lib/shopify/utils/colors.ts +206 -0
- package/src/lib/shopify/utils/const.ts +115 -0
- package/src/lib/shopify/utils/cookie.ts +28 -0
- package/src/lib/shopify/utils/errors.ts +65 -0
- package/src/lib/shopify/utils/fetch-graphql-api.ts +67 -0
- package/src/lib/shopify/utils/handle-fetch-response.ts +60 -0
- package/src/lib/shopify/utils/helper.ts +89 -0
- package/src/lib/shopify/utils/normalize/cart.ts +106 -0
- package/src/lib/shopify/utils/normalize/customer.ts +18 -0
- package/src/lib/shopify/utils/normalize/index.ts +2 -0
- package/src/lib/shopify/utils/normalize/metafield.ts +69 -0
- package/src/lib/shopify/utils/normalize/product.ts +193 -0
- package/src/lib/shopify/utils/store.ts +5 -0
- package/src/lib/shopify/utils/type-helper.ts +7 -0
- package/src/lib/utils/classnames.ts +6 -0
- package/src/lib/utils/fetcher/fetchResponse.ts +34 -0
- package/src/lib/utils/fetcher/fetcher.ts +39 -0
- package/src/lib/utils/fetcher/index.ts +2 -0
- package/src/lib/utils/index.ts +4 -0
- package/src/lib/utils/track.ts +57 -0
- package/src/lib/utils/useCountDown.tsx +41 -0
- package/src/templates/Credits.tsx +1 -1
- package/src/templates/Credits.types.ts +1 -1
- package/tailwind.config.ts +1 -5
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/components/credits/creditsCash/RedeemableItem.tsx"],
|
|
4
|
-
"sourcesContent": ["import { Button, Text, Picture, Badge } from '@anker-in/headless-ui'\nimport { useMemo, useState } from 'react'\n\nimport { CreditsCashCopy, RedeemItem } from './type'\nimport { useCreditsContext } from '../context/provider'\nimport { useRedeemAndBuy } from '../context/hooks/useRedeemAndBuy'\nimport { formatPrice, numberFormat, extractVariantId } from '../context/utils'\nimport { gaTrack, classNames as cn, useHeadlessContext } from '
|
|
5
|
-
"mappings": "AAmIQ,cAAAA,EA4DA,QAAAC,MA5DA,oBAnIR,OAAS,UAAAC,EAAQ,QAAAC,EAAM,WAAAC,EAAS,SAAAC,MAAa,wBAC7C,OAAS,WAAAC,EAAS,YAAAC,MAAgB,QAGlC,OAAS,qBAAAC,MAAyB,sBAClC,OAAS,mBAAAC,MAAuB,mCAChC,OAAS,eAAAC,EAAa,gBAAAC,EAAc,oBAAAC,MAAwB,mBAC5D,OAAS,WAAAC,EAAS,cAAcC,EAAI,sBAAAC,MAA0B,
|
|
4
|
+
"sourcesContent": ["import { Button, Text, Picture, Badge } from '@anker-in/headless-ui'\nimport { useMemo, useState } from 'react'\n\nimport { CreditsCashCopy, RedeemItem } from './type'\nimport { useCreditsContext } from '../context/provider'\nimport { useRedeemAndBuy } from '../context/hooks/useRedeemAndBuy'\nimport { formatPrice, numberFormat, extractVariantId } from '../context/utils'\nimport { gaTrack, classNames as cn, useHeadlessContext } from '../../../lib'\nimport { useRegistration } from '../../../components/registration'\nimport { ROUNDED_BRANDS } from '../../../constants'\n\nfunction RedeemableItem({\n copy,\n itemData,\n setRules,\n className,\n}: {\n copy: CreditsCashCopy\n itemData: RedeemItem\n className?: string\n setRules: (rules: string[]) => void\n currencyCode: string\n}) {\n const {\n creditInfo,\n profile,\n openSignUpPopup,\n pageCommon,\n gtm: { pageGroup, pageHandle },\n } = useCreditsContext()\n const { authCodeActivate } = useRegistration()\n const { brand, locale } = useHeadlessContext()\n const rounded = ROUNDED_BRANDS.includes(brand)\n const [error, setError] = useState<string | null>(null)\n const { trigger, isMutating } = useRedeemAndBuy(\n {},\n {\n onError: error => {\n setError(error.message)\n },\n }\n )\n\n const isLogin = useMemo(() => {\n return !!profile\n }, [profile?.activated])\n\n const inSufficientCredit = useMemo(() => {\n return (\n isLogin && profile?.activated && itemData.alpcData?.consumeCredits > Number(creditInfo?.available_credit || 0)\n )\n }, [isLogin, profile?.activated, itemData.alpcData?.consumeCredits, creditInfo?.available_credit])\n\n const isDisabled = useMemo(() => {\n // \u5151\u6362\u9650\u5236\n if (itemData.alpcData?.remainingInventory <= 0 && itemData.alpcData?.isLimited) {\n return true\n }\n\n // \u5546\u54C1\u5E93\u5B58\u9650\u5236\n if (!itemData.productVariant?.availableForSale) {\n return true\n }\n\n // \u79EF\u5206\u4E0D\u8DB3\n if (inSufficientCredit) {\n return true\n }\n return false\n }, [\n itemData.alpcData?.remainingInventory,\n itemData.alpcData?.isLimited,\n itemData.productVariant?.availableForSale,\n inSufficientCredit,\n ])\n\n const handleRedeem = () => {\n setError(null)\n if (!isLogin) {\n openSignUpPopup()\n } else if (!profile?.activated && !authCodeActivate.isActivateSuccess) {\n authCodeActivate.setAutoSendEmail(true)\n authCodeActivate.open()\n } else {\n trigger({\n productVariant: itemData?.productVariant,\n redeemId: itemData?.config?.redeemId,\n })\n gaTrack({\n event: 'ga4Event',\n event_name: 'lp_button',\n member_active_status: profile?.activated ? 'active' : 'not active',\n event_parameters: {\n page_group: pageGroup,\n position: copy.title,\n button_name: redeemButtonText,\n info: itemData?.alpcData?.id?.toString(),\n },\n })\n }\n }\n\n const redeemButtonText = useMemo(() => {\n // \u7F3A\u8D27\u6587\u6848\n if (!itemData.productVariant?.availableForSale) {\n return copy?.soldOut || 'Sold Out'\n } else if (!isLogin) {\n return copy.unlockRewards\n } else {\n return copy.btnRedeem\n }\n }, [isLogin, itemData.productVariant?.availableForSale, copy.btnRedeem, copy.unlockRewards, copy?.soldOut])\n\n const productUrl = useMemo(() => {\n const localePrefix = locale === 'us' ? '' : `/${locale}`\n return extractVariantId(itemData.productVariant?.id)\n ? `${localePrefix}/products/${itemData.product.handle}?variant=${extractVariantId(itemData.productVariant?.id)}${pageHandle ? `&ref=${pageHandle}` : ''}`\n : `${localePrefix}/products/${itemData.product.handle}${pageHandle ? `?ref=${pageHandle}` : ''}`\n }, [itemData.productVariant?.id, itemData.product.handle, pageHandle, locale])\n\n return (\n <div\n className={cn(\n 'relative flex flex-col items-center rounded-[16px] bg-[#EAEAEC] md:rounded-[12px] px-[24px] pb-[24px] l:px-[8px] l:pb-[8px] md-xl:px-[16px] md-xl:pb-[16px]',\n !rounded && 'rounded-none md:rounded-none',\n copy.badgeLabel ? 'pt-[48px] l:pt-[44px]' : 'pt-[24px] md-xl:pt-[16px] l:pt-[8px]',\n className\n )}\n >\n {/* Redeem \u6807\u7B7E Badge */}\n {copy.badgeLabel && (\n <Badge\n className=\"absolute left-[24px] l:left-[16px] !bg-gradient-brand top-[16px] z-10\"\n size=\"lg\"\n variant=\"promotional\"\n promotionalType=\"regular-member\"\n >\n {copy.badgeLabel}\n </Badge>\n )}\n\n <a\n href={productUrl}\n className={cn('relative mx-auto h-[196px] w-fit md:h-[120px] md-xxl:h-[138px]')}\n >\n <Picture\n className=\"mx-auto h-full w-auto\"\n imgClassName=\"h-full object-contain\"\n source={\n itemData?.config?.image?.url ||\n itemData?.productVariant?.metafields?.global?.transparentImg ||\n itemData?.productVariant?.image?.url\n }\n ></Picture>\n </a>\n <div className={cn('mt-[10px] w-full xl:mt-[8px]')}>\n <Text\n html={itemData?.product?.title}\n title={itemData.config?.title || itemData.alpcData?.title || itemData.product?.title}\n size={2}\n className=\"line-clamp-2 h-[58px] text-[24px] l-xxl:text-[20px] l:text-[16px] leading-[1.2] l:h-[38px] l-xxl:h-[48px]\"\n />\n {itemData?.config?.rules?.split('<br>')?.length > 0 && (\n <button\n type=\"button\"\n onClick={() => {\n setRules(itemData?.config?.rules?.split('<br>'))\n gaTrack({\n event: 'ga4Event',\n event_name: 'lp_button',\n member_active_status: profile?.activated ? 'active' : 'not active',\n event_parameters: {\n page_group: pageGroup,\n position: copy.title,\n button_name: pageCommon?.ruleLabel,\n info: itemData?.alpcData?.id?.toString(),\n },\n })\n }}\n className=\"mt-[8px] text-[16px] font-bold underline xxl:text-[14px]\"\n tabIndex={0}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n }\n }}\n >\n {pageCommon?.ruleLabel}\n </button>\n )}\n\n <div className=\"flex flex-wrap items-center l:mt-[12px] md:min-h-[46px] laptop:text-[16px] lg-desktop:text-[18px]\">\n <Picture\n className=\"size-[24px] l-xxl:size-[22px] md-l:size-[18px] md:size-[16px]\"\n source=\"https://cdn.shopify.com/s/files/1/0511/6346/3874/files/icon_hire_purchase.png?v=1757496783\"\n />\n <Text\n html={`${numberFormat(itemData?.alpcData?.consumeCredits, locale)} + ${formatPrice({\n amount: Number(itemData?.config?.price),\n currencyCode: itemData?.productVariant?.price.currencyCode || 'USD',\n locale: locale,\n })}`}\n size={2}\n as=\"p\"\n className=\"ml-[4px] mt-[4px] font-bold leading-none text-[24px] l-xxl:text-[20px] l:text-[16px]\"\n />\n <Text\n html={formatPrice({\n amount: itemData?.productVariant?.price.amount,\n currencyCode: itemData?.productVariant?.price.currencyCode || 'USD',\n locale: locale,\n })}\n className=\"l-xxl:text-[20px] mt-[4px] l:text-[16px] ml-[4px] font-bold leading-[1.2] tracking-[-0.8px] text-[#4A4C56] line-through\"\n as=\"p\"\n />\n </div>\n\n <div className=\"group relative w-full mt-[8px]\">\n <Button\n disabled={isDisabled}\n variant=\"primary\"\n size=\"lg\"\n className=\"mt-[8px] md:px-[10px] l:w-full\"\n loading={isMutating}\n onClick={() => {\n handleRedeem()\n }}\n title={inSufficientCredit ? pageCommon.insufficientCredits : redeemButtonText}\n >\n {redeemButtonText}\n </Button>\n <div\n className={cn(\n 'absolute -bottom-[20px] left-0 z-10 w-[300px] translate-y-full opacity-0 transition-opacity group-hover:opacity-100 md:-bottom-[14px] md:w-[160px]',\n inSufficientCredit ? 'block' : 'hidden'\n )}\n >\n <div\n className={cn(\n 'relative rounded-[10px] bg-[#6D6D6F] p-[16px] text-[14px] font-medium text-white shadow md:px-[10px] md:py-[8px]',\n !rounded && 'rounded-none'\n )}\n >\n <Text as=\"p\" size=\"2\" html={pageCommon?.insufficientCredits} className=\"text-[14px]\" />\n <div className=\"absolute -top-[10px] left-[48px] mb-2 size-[16px] origin-top-left rotate-45 transform rounded-[2px] bg-[#6D6D6F]\" />\n </div>\n </div>\n </div>\n </div>\n {error && <div className=\"mt-[8px] text-[14px] text-[#FF0000]\">{error}</div>}\n </div>\n )\n}\n\nexport default RedeemableItem\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["jsx", "jsxs", "Button", "Text", "Picture", "Badge", "useMemo", "useState", "useCreditsContext", "useRedeemAndBuy", "formatPrice", "numberFormat", "extractVariantId", "gaTrack", "cn", "useHeadlessContext", "useRegistration", "ROUNDED_BRANDS", "RedeemableItem", "copy", "itemData", "setRules", "className", "creditInfo", "profile", "openSignUpPopup", "pageCommon", "pageGroup", "pageHandle", "authCodeActivate", "brand", "locale", "rounded", "error", "setError", "trigger", "isMutating", "isLogin", "inSufficientCredit", "isDisabled", "handleRedeem", "redeemButtonText", "productUrl", "localePrefix", "e", "RedeemableItem_default"]
|
|
7
7
|
}
|
|
@@ -9,5 +9,5 @@ type FaqItemProps = {
|
|
|
9
9
|
}) => ReactNode;
|
|
10
10
|
defaultExpended?: boolean;
|
|
11
11
|
};
|
|
12
|
-
export declare const FaqItem: ({ index, question, answer, showDots, itemRightIconRender, defaultExpended, }: FaqItemProps) => import("react
|
|
12
|
+
export declare const FaqItem: ({ index, question, answer, showDots, itemRightIconRender, defaultExpended, }: FaqItemProps) => import("react").JSX.Element;
|
|
13
13
|
export {};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as t,jsxs as l}from"react/jsx-runtime";import{Heading as f,Text as p}from"@anker-in/headless-ui";import{ChevronDownIcon as b}from"@heroicons/react/24/outline";import{classNames as e}from"
|
|
1
|
+
import{jsx as t,jsxs as l}from"react/jsx-runtime";import{Heading as f,Text as p}from"@anker-in/headless-ui";import{ChevronDownIcon as b}from"@heroicons/react/24/outline";import{classNames as e}from"../../../../lib";import{useEffect as c,useState as u}from"react";const y=({index:a,question:d,answer:o,showDots:x,itemRightIconRender:i,defaultExpended:m=!1})=>{const[r,n]=u(m);return c(()=>{a==0&&n(!0),d||n(!0)},[a,d]),l("div",{className:e("relative mx-0 border-b-[1px] border-[#e4e5e6] py-[24px] l:py-[16px]"),children:[l("div",{className:"relative flex items-center",onClick:()=>{n(!r)},role:"button",tabIndex:0,onKeyDown:s=>{(s.key==="Enter"||s.key===" ")&&s.preventDefault()},children:[t(f,{html:d,as:"h3",className:e(x?'before:absolute before:left-[-15px] before:top-[8px] before:h-[6px] before:w-[6px] before:rounded-[50%] before:bg-[#000] before:content-[""]':"","relative block flex-1 cursor-pointer pr-[10px] text-[18px] font-bold text-[#1D1D1F] l:text-[16px]")}),i?i({expanded:r}):t(b,{className:e("size-[16px] shrink-0 cursor-pointer stroke-[2.5px] transition-all",r?"rotate-180":"")})]}),t("div",{className:e("grid transition-all duration-300 ease-in-out [&_td]:border [&_td]:border-[#333] [&_td]:px-[8px] [&_td]:py-[4px]",r?"grid-rows-[1fr]":"grid-rows-[0fr]"),children:t("div",{className:"overflow-hidden",children:o?.toString()?.includes("https://www.youtube.com")?t(p,{as:"div",className:e("mt-[8px]"),"data-ratio":"16:9","data-content":o,html:o?.toString()}):t(p,{as:"div",html:o?.toString(),className:e("mt-[8px] text-[16px] font-bold leading-[1.5] text-[#3D3D3F] l:text-[14px] [&_a]:text-brand [&_a]:underline")})})})]},a)};export{y as FaqItem};
|
|
2
2
|
//# sourceMappingURL=FaqItem.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../../src/components/credits/creditsFaq/faqItem/FaqItem.tsx"],
|
|
4
|
-
"sourcesContent": ["import { Heading, Text } from '@anker-in/headless-ui'\nimport { ChevronDownIcon } from '@heroicons/react/24/outline'\nimport { classNames as cn } from '
|
|
5
|
-
"mappings": "AAkCM,OAaE,OAAAA,EAbF,QAAAC,MAAA,oBAlCN,OAAS,WAAAC,EAAS,QAAAC,MAAY,wBAC9B,OAAS,mBAAAC,MAAuB,8BAChC,OAAS,cAAcC,MAAU,
|
|
4
|
+
"sourcesContent": ["import { Heading, Text } from '@anker-in/headless-ui'\nimport { ChevronDownIcon } from '@heroicons/react/24/outline'\nimport { classNames as cn } from '../../../../lib'\nimport { type ReactNode, useEffect, useState } from 'react'\n\ntype FaqItemProps = {\n index: number\n question?: string\n answer?: string | number\n showDots: boolean\n itemRightIconRender?: ({ expanded }: { expanded: boolean }) => ReactNode\n defaultExpended?: boolean\n}\n\nexport const FaqItem = ({\n index,\n question,\n answer,\n showDots,\n itemRightIconRender,\n defaultExpended = false,\n}: FaqItemProps) => {\n const [expanded, setExpanded] = useState(defaultExpended)\n useEffect(() => {\n if (index == 0) {\n setExpanded(true)\n }\n if (!question) {\n setExpanded(true)\n }\n }, [index, question])\n\n return (\n <div key={index} className={cn('relative mx-0 border-b-[1px] border-[#e4e5e6] py-[24px] l:py-[16px]')}>\n <div\n className=\"relative flex items-center\"\n onClick={() => {\n setExpanded(!expanded)\n }}\n role=\"button\"\n tabIndex={0}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n }\n }}\n >\n <Heading\n html={question}\n as=\"h3\"\n className={cn(\n showDots\n ? 'before:absolute before:left-[-15px] before:top-[8px] before:h-[6px] before:w-[6px] before:rounded-[50%] before:bg-[#000] before:content-[\"\"]'\n : '',\n 'relative block flex-1 cursor-pointer pr-[10px] text-[18px] font-bold text-[#1D1D1F] l:text-[16px]'\n )}\n ></Heading>\n {itemRightIconRender ? (\n itemRightIconRender({ expanded })\n ) : (\n <ChevronDownIcon\n className={cn(\n 'size-[16px] shrink-0 cursor-pointer stroke-[2.5px] transition-all',\n expanded ? 'rotate-180' : ''\n )}\n />\n )}\n </div>\n <div\n className={cn(\n 'grid transition-all duration-300 ease-in-out [&_td]:border [&_td]:border-[#333] [&_td]:px-[8px] [&_td]:py-[4px]',\n expanded ? 'grid-rows-[1fr]' : 'grid-rows-[0fr]'\n )}\n >\n <div className=\"overflow-hidden\">\n {answer?.toString()?.includes('https://www.youtube.com') ? (\n <Text\n as=\"div\"\n className={cn('mt-[8px]')}\n data-ratio=\"16:9\"\n data-content={answer}\n html={answer?.toString()}\n ></Text>\n ) : (\n <Text\n as=\"div\"\n html={answer?.toString()}\n className={cn(\n 'mt-[8px] text-[16px] font-bold leading-[1.5] text-[#3D3D3F] l:text-[14px] [&_a]:text-brand [&_a]:underline'\n )}\n ></Text>\n )}\n </div>\n </div>\n </div>\n )\n}\n"],
|
|
5
|
+
"mappings": "AAkCM,OAaE,OAAAA,EAbF,QAAAC,MAAA,oBAlCN,OAAS,WAAAC,EAAS,QAAAC,MAAY,wBAC9B,OAAS,mBAAAC,MAAuB,8BAChC,OAAS,cAAcC,MAAU,kBACjC,OAAyB,aAAAC,EAAW,YAAAC,MAAgB,QAW7C,MAAMC,EAAU,CAAC,CACtB,MAAAC,EACA,SAAAC,EACA,OAAAC,EACA,SAAAC,EACA,oBAAAC,EACA,gBAAAC,EAAkB,EACpB,IAAoB,CAClB,KAAM,CAACC,EAAUC,CAAW,EAAIT,EAASO,CAAe,EACxD,OAAAR,EAAU,IAAM,CACVG,GAAS,GACXO,EAAY,EAAI,EAEbN,GACHM,EAAY,EAAI,CAEpB,EAAG,CAACP,EAAOC,CAAQ,CAAC,EAGlBT,EAAC,OAAgB,UAAWI,EAAG,sEAAsE,EACnG,UAAAJ,EAAC,OACC,UAAU,6BACV,QAAS,IAAM,CACbe,EAAY,CAACD,CAAQ,CACvB,EACA,KAAK,SACL,SAAU,EACV,UAAWE,GAAK,EACVA,EAAE,MAAQ,SAAWA,EAAE,MAAQ,MACjCA,EAAE,eAAe,CAErB,EAEA,UAAAjB,EAACE,EAAA,CACC,KAAMQ,EACN,GAAG,KACH,UAAWL,EACTO,EACI,+IACA,GACJ,mGACF,EACD,EACAC,EACCA,EAAoB,CAAE,SAAAE,CAAS,CAAC,EAEhCf,EAACI,EAAA,CACC,UAAWC,EACT,oEACAU,EAAW,aAAe,EAC5B,EACF,GAEJ,EACAf,EAAC,OACC,UAAWK,EACT,kHACAU,EAAW,kBAAoB,iBACjC,EAEA,SAAAf,EAAC,OAAI,UAAU,kBACZ,SAAAW,GAAQ,SAAS,GAAG,SAAS,yBAAyB,EACrDX,EAACG,EAAA,CACC,GAAG,MACH,UAAWE,EAAG,UAAU,EACxB,aAAW,OACX,eAAcM,EACd,KAAMA,GAAQ,SAAS,EACxB,EAEDX,EAACG,EAAA,CACC,GAAG,MACH,KAAMQ,GAAQ,SAAS,EACvB,UAAWN,EACT,4GACF,EACD,EAEL,EACF,IA5DQI,CA6DV,CAEJ",
|
|
6
6
|
"names": ["jsx", "jsxs", "Heading", "Text", "ChevronDownIcon", "cn", "useEffect", "useState", "FaqItem", "index", "question", "answer", "showDots", "itemRightIconRender", "defaultExpended", "expanded", "setExpanded", "e"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as s,jsxs as g}from"react/jsx-runtime";import{Container as x,Heading as C,Tabs as T,TabsContent as q,TabsList as h,TabsTrigger as y,Text as F}from"@anker-in/headless-ui";import{classNames as k,useHeadlessContext as N}from"
|
|
1
|
+
import{jsx as s,jsxs as g}from"react/jsx-runtime";import{Container as x,Heading as C,Tabs as T,TabsContent as q,TabsList as h,TabsTrigger as y,Text as F}from"@anker-in/headless-ui";import{classNames as k,useHeadlessContext as N}from"../../../lib";import{useMemo as d}from"react";import{FaqItem as v}from"./faqItem/FaqItem";import{ROUNDED_BRANDS as w}from"../../../constants";const I=({copy:r,id:p})=>{const{title:f,items:o,subTitle:i=""}=r||{},{brand:u}=N(),c=w.includes(u),l=d(()=>{const e=new Map;return o?.forEach(t=>{const a=t?.category_name;a&&(e.has(a)||e.set(a,[]),e.get(a).push(t))}),e},[o]),n=d(()=>Array.from(l.keys()),[l]),b=n[0]?.toString()||"",m=e=>s("div",{className:k("mt-[24px] flex flex-col overflow-auto pt-0"),children:e?.map((t,a)=>s(v,{index:a,defaultExpended:e.length===1,question:t.question,answer:t.answer,showDots:!1},a))});return g(x,{id:p,className:"bg-[#F5F5F7]",children:[f&&s(C,{as:"h2",size:"4",html:r?.title}),i&&s("div",{className:"mt-[8px] flex flex-row",children:s(F,{size:"4",as:"p",html:i,className:"flex-1"})}),n.length?g(T,{align:"left",shape:c?"rounded":"square",className:"mt-[24px]",defaultValue:b,children:[s(h,{children:n.map((e,t)=>s(y,{value:e,children:e},t))}),n.map((e,t)=>s(q,{value:e,children:m(l.get(e)||[])},t))]}):m(o||[]),r.learnMore?.link&&r.learnMore?.label&&s("a",{href:r.learnMore?.link,target:"_blank",className:"mt-[24px] block w-full text-center text-[18px] font-bold text-brand hover:underline l:text-[16px]",children:r.learnMore?.label})]})};export{I as CreditsFaq};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/components/credits/creditsFaq/index.tsx"],
|
|
4
|
-
"sourcesContent": ["import { Container, Heading, Tabs, TabsContent, TabsList, TabsTrigger, Text } from '@anker-in/headless-ui'\nimport { classNames as cn, useHeadlessContext } from '
|
|
5
|
-
"mappings": "AA2CQ,cAAAA,EAqBA,QAAAC,MArBA,oBA3CR,OAAS,aAAAC,EAAW,WAAAC,EAAS,QAAAC,EAAM,eAAAC,EAAa,YAAAC,EAAU,eAAAC,EAAa,QAAAC,MAAY,wBACnF,OAAS,cAAcC,EAAI,sBAAAC,MAA0B,
|
|
4
|
+
"sourcesContent": ["import { Container, Heading, Tabs, TabsContent, TabsList, TabsTrigger, Text } from '@anker-in/headless-ui'\nimport { classNames as cn, useHeadlessContext } from '../../../lib'\nimport { useMemo } from 'react'\n\nimport { FaqItem } from './faqItem/FaqItem'\nimport { ROUNDED_BRANDS } from '../../../constants'\n\nexport type CreditsFaqCopy = {\n title: string\n subTitle: string\n learnMore: {\n link: string\n label: string\n }\n items: {\n category_name: string\n question: string\n answer: string\n }[]\n}\nexport const CreditsFaq = ({ copy, id }: { copy: CreditsFaqCopy; id?: string }) => {\n const { title, items: faqList, subTitle = '' } = copy || {}\n const { brand } = useHeadlessContext()\n const rounded = ROUNDED_BRANDS.includes(brand)\n\n // \u6309 category_name \u5206\u7EC4\uFF0C\u907F\u514D\u624B\u52A8 activeTab \u5B57\u7B26\u4E32\u6BD4\u8F83\uFF08\u9690\u85CF\u5B57\u7B26/\u7C7B\u578B\u4E0D\u4E00\u81F4\u4F1A\u5BFC\u81F4\u8FC7\u6EE4\u5931\u8D25\uFF09\n const groupedByCategory = useMemo(() => {\n const map = new Map<string, CreditsFaqCopy['items']>()\n faqList?.forEach(item => {\n const key = item?.category_name\n if (!key) return\n if (!map.has(key)) map.set(key, [])\n map.get(key)!.push(item)\n })\n return map\n }, [faqList])\n\n const categoryList = useMemo(() => Array.from(groupedByCategory.keys()), [groupedByCategory])\n const defaultTab = categoryList[0]?.toString() || ''\n\n const renderFaqItems = (list: CreditsFaqCopy['items']) => (\n <div className={cn('mt-[24px] flex flex-col overflow-auto pt-0')}>\n {list?.map((item, index) => (\n <FaqItem\n key={index}\n index={index}\n defaultExpended={list.length === 1}\n question={item.question}\n answer={item.answer}\n showDots={false}\n ></FaqItem>\n ))}\n </div>\n )\n\n return (\n <Container id={id} className=\"bg-[#F5F5F7]\">\n {title && <Heading as=\"h2\" size=\"4\" html={copy?.title} />}\n {subTitle && (\n <div className=\"mt-[8px] flex flex-row\">\n <Text size=\"4\" as=\"p\" html={subTitle} className=\"flex-1\" />\n </div>\n )}\n {categoryList.length ? (\n <Tabs align=\"left\" shape={rounded ? 'rounded' : 'square'} className=\"mt-[24px]\" defaultValue={defaultTab}>\n {/* faq-nav */}\n <TabsList>\n {categoryList.map((item, index) => (\n <TabsTrigger key={index} value={item}>\n {item}\n </TabsTrigger>\n ))}\n </TabsList>\n {categoryList.map((item, index) => (\n <TabsContent key={index} value={item}>\n {renderFaqItems(groupedByCategory.get(item) || [])}\n </TabsContent>\n ))}\n </Tabs>\n ) : (\n renderFaqItems(faqList || [])\n )}\n {copy.learnMore?.link && copy.learnMore?.label && (\n <a\n href={copy.learnMore?.link}\n target=\"_blank\"\n className=\"mt-[24px] block w-full text-center text-[18px] font-bold text-brand hover:underline l:text-[16px]\"\n >\n {copy.learnMore?.label}\n </a>\n )}\n </Container>\n )\n}\n"],
|
|
5
|
+
"mappings": "AA2CQ,cAAAA,EAqBA,QAAAC,MArBA,oBA3CR,OAAS,aAAAC,EAAW,WAAAC,EAAS,QAAAC,EAAM,eAAAC,EAAa,YAAAC,EAAU,eAAAC,EAAa,QAAAC,MAAY,wBACnF,OAAS,cAAcC,EAAI,sBAAAC,MAA0B,eACrD,OAAS,WAAAC,MAAe,QAExB,OAAS,WAAAC,MAAe,oBACxB,OAAS,kBAAAC,MAAsB,qBAexB,MAAMC,EAAa,CAAC,CAAE,KAAAC,EAAM,GAAAC,CAAG,IAA6C,CACjF,KAAM,CAAE,MAAAC,EAAO,MAAOC,EAAS,SAAAC,EAAW,EAAG,EAAIJ,GAAQ,CAAC,EACpD,CAAE,MAAAK,CAAM,EAAIV,EAAmB,EAC/BW,EAAUR,EAAe,SAASO,CAAK,EAGvCE,EAAoBX,EAAQ,IAAM,CACtC,MAAMY,EAAM,IAAI,IAChB,OAAAL,GAAS,QAAQM,GAAQ,CACvB,MAAMC,EAAMD,GAAM,cACbC,IACAF,EAAI,IAAIE,CAAG,GAAGF,EAAI,IAAIE,EAAK,CAAC,CAAC,EAClCF,EAAI,IAAIE,CAAG,EAAG,KAAKD,CAAI,EACzB,CAAC,EACMD,CACT,EAAG,CAACL,CAAO,CAAC,EAENQ,EAAef,EAAQ,IAAM,MAAM,KAAKW,EAAkB,KAAK,CAAC,EAAG,CAACA,CAAiB,CAAC,EACtFK,EAAaD,EAAa,CAAC,GAAG,SAAS,GAAK,GAE5CE,EAAkBC,GACtB7B,EAAC,OAAI,UAAWS,EAAG,4CAA4C,EAC5D,SAAAoB,GAAM,IAAI,CAACL,EAAMM,IAChB9B,EAACY,EAAA,CAEC,MAAOkB,EACP,gBAAiBD,EAAK,SAAW,EACjC,SAAUL,EAAK,SACf,OAAQA,EAAK,OACb,SAAU,IALLM,CAMN,CACF,EACH,EAGF,OACE7B,EAACC,EAAA,CAAU,GAAIc,EAAI,UAAU,eAC1B,UAAAC,GAASjB,EAACG,EAAA,CAAQ,GAAG,KAAK,KAAK,IAAI,KAAMY,GAAM,MAAO,EACtDI,GACCnB,EAAC,OAAI,UAAU,yBACb,SAAAA,EAACQ,EAAA,CAAK,KAAK,IAAI,GAAG,IAAI,KAAMW,EAAU,UAAU,SAAS,EAC3D,EAEDO,EAAa,OACZzB,EAACG,EAAA,CAAK,MAAM,OAAO,MAAOiB,EAAU,UAAY,SAAU,UAAU,YAAY,aAAcM,EAE5F,UAAA3B,EAACM,EAAA,CACE,SAAAoB,EAAa,IAAI,CAACF,EAAMM,IACvB9B,EAACO,EAAA,CAAwB,MAAOiB,EAC7B,SAAAA,GADeM,CAElB,CACD,EACH,EACCJ,EAAa,IAAI,CAACF,EAAMM,IACvB9B,EAACK,EAAA,CAAwB,MAAOmB,EAC7B,SAAAI,EAAeN,EAAkB,IAAIE,CAAI,GAAK,CAAC,CAAC,GADjCM,CAElB,CACD,GACH,EAEAF,EAAeV,GAAW,CAAC,CAAC,EAE7BH,EAAK,WAAW,MAAQA,EAAK,WAAW,OACvCf,EAAC,KACC,KAAMe,EAAK,WAAW,KACtB,OAAO,SACP,UAAU,oGAET,SAAAA,EAAK,WAAW,MACnB,GAEJ,CAEJ",
|
|
6
6
|
"names": ["jsx", "jsxs", "Container", "Heading", "Tabs", "TabsContent", "TabsList", "TabsTrigger", "Text", "cn", "useHeadlessContext", "useMemo", "FaqItem", "ROUNDED_BRANDS", "CreditsFaq", "copy", "id", "title", "faqList", "subTitle", "brand", "rounded", "groupedByCategory", "map", "item", "key", "categoryList", "defaultTab", "renderFaqItems", "list", "index"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as r,jsxs as n}from"react/jsx-runtime";import{Container as B,Heading as P,Picture as F,Button as j,Text as u}from"@anker-in/headless-ui";import{useMemo as c,useState as h}from"react";import{classNames as x,gaTrack as N}from"
|
|
1
|
+
import{jsx as r,jsxs as n}from"react/jsx-runtime";import{Container as B,Heading as P,Picture as F,Button as j,Text as u}from"@anker-in/headless-ui";import{useMemo as c,useState as h}from"react";import{classNames as x,gaTrack as N}from"../../../lib";import z from"../creditsRedeemList/RedeemVirtualProductModal";import U from"../context/hooks/useRedeemableList";import{useCreditsContext as $}from"../context/provider";import{ROUNDED_BRANDS as V}from"../../../constants";import{useHeadlessContext as q}from"../../../lib";import{AlpcConsumeType as I,AlpcErrorCode as f}from"../context/const";import J from"../modal/RulesModal";import{useRegistration as K}from"../../../components/registration";import Q from"../context/hooks/useMyRewards";const me=({copy:e,id:T})=>{const[k,_]=h(!1),[w,o]=h(),[v,E]=h(),{redeemableList:R}=U({consumeType:I.ExternalProduct}),{pageCommon:l,profile:s,creditInfo:S,setOpenMyRewardsModal:A,openSignUpPopup:L,gtm:g}=$(),{authCodeActivate:d}=K(),{brand:G}=q(),p=V.includes(G),m=Object.keys(s||{}).length>0,{myRewards:M}=Q({page:1,pageSize:100,consumeType:I.ExternalProduct}),H=l?.redeemModal||{},i=c(()=>{const t=R.find(a=>a.id?.toString()===e?.redeemId?.toString());return t?{alpc:{id:t.id.toString(),consumeCredits:t.consume_credits,remainingInventory:t.remaining_inventory,isLimited:!!t.is_limited,consumeType:t.consume_type,showCredit:!0,title:t.name},config:{title:e.cardTitle,desc:e.cardDesc,type:e.type,value:e.value||"",rules:e.rules,image:e.cardImg}}:null},[R,e]),O=t=>{const a=l?.redeemModal;t===f.CodeLpcShopifyCouponRuleRedeemLimit?o(a?.redeemLimitError):t===f.CodeLpcRuleInventoryNotEnough?o(a?.inventoryNotEnough):t===f.CodeLpcNotEnoughCredits?o(a?.creditsNotEnough):t===f.CodeCrossSiteError?o(a?.crossSiteError):o(a?.commonError)},D=c(()=>s?.activated&&Number(i?.alpc?.consumeCredits)>Number(S?.available_credit||0),[s?.activated,i?.alpc?.consumeCredits,S?.available_credit]),y=c(()=>!m||!i?.alpc?.id?!1:M.some(t=>t.rule_id===Number(i.alpc.id)),[m,i?.alpc?.id,M]),C=Number(i?.alpc.remainingInventory)<=0,b=c(()=>C?l?.soldOut||"Sold Out":m?e.redeemBtn:e.unlockRewards,[m,C,e,l]);return i?n(B,{id:T,children:[r(P,{as:"h2",size:"4",html:e.title}),n("div",{className:x("mt-[24px] flex h-fit w-full items-center gap-[64px] bg-[#eaeaec] p-[24px]","l-xl:gap-[24px]","l:flex-col l:gap-[12px] l:p-[12px] l:items-start","min-l:flex-row",!p&&"rounded-none",p&&"rounded-[12px]"),children:[r("div",{className:"relative flex h-[200px] w-[304px] shrink-0 items-center justify-center overflow-hidden md-l:w-[333px] md-l:h-[120px] l:items-start md:h-auto md:aspect-h-[120] md:aspect-w-[333] md:w-full",children:e.cardImg?.url&&r(F,{className:x("size-full",p&&"rounded-[12px]"),source:e.mCardImg?.url?`${e.cardImg.url},${e.mCardImg.url} 1024`:e.cardImg.url})}),n("div",{className:"flex w-full items-end justify-between xl:flex-col xl:items-start xl:gap-[24px]",children:[n("div",{className:"flex flex-col gap-[20px] l:w-full l:gap-[12px]",children:[n("div",{className:"flex flex-col gap-[4px]",children:[r(u,{html:e.cardTitle,className:"text-[32px] font-bold leading-[1.2] text-[#1D1D1F] l:text-[18px]"}),r(u,{html:e.cardDesc,className:"text-[18px] font-bold leading-[1.4] text-[#3D3D3F] l:text-[12px]"})]}),r(u,{html:e.cardTip,className:"text-[18px] font-bold leading-[1.4] text-[#000] l:text-[12px]"})]}),n("div",{className:"flex shrink-0 flex-col items-end xl:w-full md-xl:items-center md-xl:justify-between md-xl:flex-row md:items-start",children:[r(j,{variant:"primary",disabled:D||C||y,onClick:()=>{m?!s?.activated&&!d.isActivateSuccess?(d.setAutoSendEmail(!0),d.open()):(N({event:"ga4Event",event_name:"lp_button",member_active_status:s?.activated?"active":"not active",event_parameters:{page_group:g.pageGroup,position:e.title,button_name:b,info:i?.alpc?.id}}),_(!0)):L()},title:D?l.insufficientCredits:b,children:b}),w&&r("div",{className:"mt-[8px] text-[14px] font-bold leading-[1.2] text-[#FFC24D] l:text-[12px]",children:w}),(e.viewRedeemHistory||e.rulesLink)&&n("div",{className:"mt-[18px] flex gap-[16px] text-[18px] font-bold leading-[1.4] l:mt-[12px] l:gap-0 l:text-[14px]",children:[e.viewRedeemHistory&&r(u,{html:e.viewRedeemHistory,className:"cursor-pointer text-[#4794EC] font-bold underline",onClick:()=>{m?!s?.activated&&!d.isActivateSuccess?(d.setAutoSendEmail(!0),d.open()):(N({event:"ga4Event",event_name:"lp_button",member_active_status:s?.activated?"active":"not active",event_parameters:{page_group:g.pageGroup,position:e.title,button_name:e.viewRedeemHistory}}),A(!0)):L()}}),l.ruleLabel&&r(u,{html:l.ruleLabel,className:x("cursor-pointer text-[#4794EC] font-bold underline",e.viewRedeemHistory&&"l:ml-[16px]"),onClick:()=>E(e.rules)})]})]})]})]}),k&&i&&r(z,{copy:H,onClose:()=>{N({event:"ga4Event",event_name:"lp_button",member_active_status:s?.activated?"active":"not active",event_parameters:{page_group:g.pageGroup,position:e.title,button_name:"close_modal"}}),_(!1),o(void 0)},item:i,onError:O}),v&&r(J,{overlayClassName:"md:px-[16px] md:items-center",className:x("md:h-fit md:rounded-b-[16px]",!p&&"md:rounded-none"),isOpen:v.length>0,onClose:()=>E(void 0),titleClassName:"border-b-transparent h-[56px]",rules:v,scrollClassName:"md:mt-[8px] mt-[8px] md:mb-[24px] md:pt-0",title:l?.ruleLabel,ruleClassName:"text-[#1d1d1f] font-bold"})]}):null};export{me as CreditsGoGift};
|
|
2
2
|
//# sourceMappingURL=CreditsGoGift.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/components/credits/creditsGoGift/CreditsGoGift.tsx"],
|
|
4
|
-
"sourcesContent": ["import { Container, Heading, Picture, Button, Text } from '@anker-in/headless-ui'\nimport { useMemo, useState } from 'react'\nimport { classNames as cn, gaTrack } from '@anker-in/lib'\n\nimport RedeemVirtualProductModal from '../creditsRedeemList/RedeemVirtualProductModal'\nimport useRedeemableList from '../context/hooks/useRedeemableList'\nimport { useCreditsContext } from '../context/provider'\nimport { ROUNDED_BRANDS } from '../../../constants'\nimport { useHeadlessContext } from '@anker-in/lib'\nimport { CreditsGoGiftCopy } from './type'\nimport { AlpcConsumeType, AlpcErrorCode } from '../context/const'\nimport RulesModal from '../modal/RulesModal'\nimport { useRegistration } from '../../../components/registration'\nimport useMyRewards from '../context/hooks/useMyRewards'\n\nexport const CreditsGoGift = ({ copy, id }: { copy: CreditsGoGiftCopy; id?: string }) => {\n const [showModal, setShowModal] = useState(false)\n const [redeemError, setRedeemError] = useState<string>()\n const [rules, setRules] = useState<string | string[]>()\n const { redeemableList } = useRedeemableList({ consumeType: AlpcConsumeType.ExternalProduct })\n const { pageCommon, profile, creditInfo, setOpenMyRewardsModal, openSignUpPopup, gtm } = useCreditsContext()\n const { authCodeActivate } = useRegistration()\n const { brand } = useHeadlessContext()\n const rounded = ROUNDED_BRANDS.includes(brand)\n\n const isLogin = Object.keys(profile || {}).length > 0\n\n // \u83B7\u53D6\u7528\u6237\u7684 ExternalProduct \u5151\u6362\u8BB0\u5F55\n const { myRewards } = useMyRewards({\n page: 1,\n pageSize: 100,\n consumeType: AlpcConsumeType.ExternalProduct,\n })\n\n const redeemModalCopy = pageCommon?.redeemModal || ({} as any)\n\n const item = useMemo(() => {\n // \u6839\u636E redeemId \u67E5\u8BE2 ExternalProduct \u7684 ALPC \u6570\u636E\n const alpcData = redeemableList.find(item => item.id?.toString() === copy?.redeemId?.toString())\n if (!alpcData) return null\n\n return {\n alpc: {\n id: alpcData.id.toString(),\n consumeCredits: alpcData.consume_credits,\n remainingInventory: alpcData.remaining_inventory,\n isLimited: !!alpcData.is_limited,\n consumeType: alpcData.consume_type,\n showCredit: true,\n title: alpcData.name,\n },\n config: {\n title: copy.cardTitle,\n desc: copy.cardDesc,\n type: copy.type,\n value: copy.value || '',\n rules: copy.rules,\n image: copy.cardImg,\n },\n }\n }, [redeemableList, copy])\n\n const handleRedeemError = (code: AlpcErrorCode) => {\n const redeemModalCopy = pageCommon?.redeemModal\n if (code === AlpcErrorCode.CodeLpcShopifyCouponRuleRedeemLimit) {\n setRedeemError(redeemModalCopy?.redeemLimitError)\n } else if (code === AlpcErrorCode.CodeLpcRuleInventoryNotEnough) {\n setRedeemError(redeemModalCopy?.inventoryNotEnough)\n } else if (code === AlpcErrorCode.CodeLpcNotEnoughCredits) {\n setRedeemError(redeemModalCopy?.creditsNotEnough)\n } else if (code === AlpcErrorCode.CodeCrossSiteError) {\n setRedeemError(redeemModalCopy?.crossSiteError)\n } else {\n setRedeemError(redeemModalCopy?.commonError)\n }\n }\n\n const inSufficientCredit = useMemo(() => {\n return (\n profile?.activated && Number(item?.alpc?.consumeCredits) > Number(creditInfo?.available_credit || 0)\n )\n }, [profile?.activated, item?.alpc?.consumeCredits, creditInfo?.available_credit])\n\n // \u68C0\u67E5\u7528\u6237\u662F\u5426\u5DF2\u7ECF\u5151\u6362\u8FC7\u8BE5 GoGift\n const hasRedeemed = useMemo(() => {\n if (!isLogin || !item?.alpc?.id) return false\n return myRewards.some(reward => reward.rule_id === Number(item.alpc.id))\n }, [isLogin, item?.alpc?.id, myRewards])\n\n const soldOut = Number(item?.alpc.remainingInventory) <= 0\n\n const redeemButtonText = useMemo(() => {\n // \u7F3A\u8D27\u6587\u6848\n if (soldOut) {\n return pageCommon?.soldOut || 'Sold Out'\n } else if (!isLogin) {\n return copy.unlockRewards\n } else {\n return copy.redeemBtn\n }\n }, [isLogin, soldOut, copy, pageCommon])\n\n if (!item) return null\n\n return (\n <Container id={id}>\n <Heading as=\"h2\" size=\"4\" html={copy.title} />\n <div\n className={cn(\n 'mt-[24px] flex h-fit w-full items-center gap-[64px] bg-[#eaeaec] p-[24px]',\n 'l-xl:gap-[24px]',\n 'l:flex-col l:gap-[12px] l:p-[12px] l:items-start',\n 'min-l:flex-row',\n !rounded && 'rounded-none',\n rounded && 'rounded-[12px]'\n )}\n >\n {/* Card Image */}\n <div className=\"relative flex h-[200px] w-[304px] shrink-0 items-center justify-center overflow-hidden md-l:w-[333px] md-l:h-[120px] l:items-start md:h-auto md:aspect-h-[120] md:aspect-w-[333] md:w-full\">\n {copy.cardImg?.url && (\n <Picture\n className={cn('size-full', rounded && 'rounded-[12px]')}\n source={copy.mCardImg?.url ? `${copy.cardImg.url},${copy.mCardImg.url} 1024` : copy.cardImg.url}\n />\n )}\n </div>\n\n {/* Content Section */}\n <div className=\"flex w-full items-end justify-between xl:flex-col xl:items-start xl:gap-[24px]\">\n {/* Text Content */}\n <div className=\"flex flex-col gap-[20px] l:w-full l:gap-[12px]\">\n <div className=\"flex flex-col gap-[4px]\">\n <Text\n html={copy.cardTitle}\n className=\"text-[32px] font-bold leading-[1.2] text-[#1D1D1F] l:text-[18px]\"\n />\n <Text\n html={copy.cardDesc}\n className=\"text-[18px] font-bold leading-[1.4] text-[#3D3D3F] l:text-[12px]\"\n />\n </div>\n <Text\n html={copy.cardTip}\n className=\"text-[18px] font-bold leading-[1.4] text-[#000] l:text-[12px]\"\n />\n </div>\n\n {/* Button and Links */}\n <div className=\"flex shrink-0 flex-col items-end xl:w-full md-xl:items-center md-xl:justify-between md-xl:flex-row md:items-start\">\n <Button\n variant=\"primary\"\n disabled={inSufficientCredit || soldOut || hasRedeemed}\n onClick={() => {\n if (!isLogin) {\n openSignUpPopup()\n } else if (!profile?.activated && !authCodeActivate.isActivateSuccess) {\n authCodeActivate.setAutoSendEmail(true)\n authCodeActivate.open()\n } else {\n gaTrack({\n event: 'ga4Event',\n event_name: 'lp_button',\n member_active_status: profile?.activated ? 'active' : 'not active',\n event_parameters: {\n page_group: gtm.pageGroup,\n position: copy.title,\n button_name: redeemButtonText,\n info: item?.alpc?.id,\n },\n })\n setShowModal(true)\n }\n }}\n title={inSufficientCredit ? pageCommon.insufficientCredits : redeemButtonText}\n >\n {redeemButtonText}\n </Button>\n {redeemError && (\n <div className=\"mt-[8px] text-[14px] font-bold leading-[1.2] text-[#FFC24D] l:text-[12px]\">\n {redeemError}\n </div>\n )}\n {(copy.viewRedeemHistory || copy.rulesLink) && (\n <div className=\"mt-[18px] flex gap-[16px] text-[18px] font-bold leading-[1.4] l:mt-[12px] l:gap-0 l:text-[14px]\">\n {copy.viewRedeemHistory && (\n <Text\n html={copy.viewRedeemHistory}\n className=\"cursor-pointer text-[#4794EC] font-bold underline\"\n onClick={() => {\n if (!isLogin) {\n openSignUpPopup()\n } else if (!profile?.activated && !authCodeActivate.isActivateSuccess) {\n authCodeActivate.setAutoSendEmail(true)\n authCodeActivate.open()\n } else {\n gaTrack({\n event: 'ga4Event',\n event_name: 'lp_button',\n member_active_status: profile?.activated ? 'active' : 'not active',\n event_parameters: {\n page_group: gtm.pageGroup,\n position: copy.title,\n button_name: copy.viewRedeemHistory,\n },\n })\n setOpenMyRewardsModal(true)\n }\n }}\n />\n )}\n {pageCommon.ruleLabel && (\n <Text\n html={pageCommon.ruleLabel}\n className={cn(\n 'cursor-pointer text-[#4794EC] font-bold underline',\n copy.viewRedeemHistory && 'l:ml-[16px]'\n )}\n onClick={() => setRules(copy.rules)}\n />\n )}\n </div>\n )}\n </div>\n </div>\n </div>\n\n {showModal && item && (\n <RedeemVirtualProductModal\n copy={redeemModalCopy}\n onClose={() => {\n gaTrack({\n event: 'ga4Event',\n event_name: 'lp_button',\n member_active_status: profile?.activated ? 'active' : 'not active',\n event_parameters: {\n page_group: gtm.pageGroup,\n position: copy.title,\n button_name: 'close_modal',\n },\n })\n setShowModal(false)\n setRedeemError(undefined)\n }}\n item={item}\n onError={handleRedeemError}\n />\n )}\n\n {rules && (\n <RulesModal\n overlayClassName=\"md:px-[16px] md:items-center\"\n className={cn('md:h-fit md:rounded-b-[16px]', !rounded && 'md:rounded-none')}\n isOpen={rules.length > 0}\n onClose={() => setRules(undefined)}\n titleClassName=\"border-b-transparent h-[56px]\"\n rules={rules}\n scrollClassName=\"md:mt-[8px] mt-[8px] md:mb-[24px] md:pt-0\"\n title={pageCommon?.ruleLabel}\n ruleClassName=\"text-[#1d1d1f] font-bold\"\n />\n )}\n </Container>\n )\n}\n"],
|
|
5
|
-
"mappings": "AA0GM,cAAAA,EAyBM,QAAAC,MAzBN,oBA1GN,OAAS,aAAAC,EAAW,WAAAC,EAAS,WAAAC,EAAS,UAAAC,EAAQ,QAAAC,MAAY,wBAC1D,OAAS,WAAAC,EAAS,YAAAC,MAAgB,QAClC,OAAS,cAAcC,EAAI,WAAAC,MAAe,
|
|
4
|
+
"sourcesContent": ["import { Container, Heading, Picture, Button, Text } from '@anker-in/headless-ui'\nimport { useMemo, useState } from 'react'\nimport { classNames as cn, gaTrack } from '../../../lib'\n\nimport RedeemVirtualProductModal from '../creditsRedeemList/RedeemVirtualProductModal'\nimport useRedeemableList from '../context/hooks/useRedeemableList'\nimport { useCreditsContext } from '../context/provider'\nimport { ROUNDED_BRANDS } from '../../../constants'\nimport { useHeadlessContext } from '../../../lib'\nimport { CreditsGoGiftCopy } from './type'\nimport { AlpcConsumeType, AlpcErrorCode } from '../context/const'\nimport RulesModal from '../modal/RulesModal'\nimport { useRegistration } from '../../../components/registration'\nimport useMyRewards from '../context/hooks/useMyRewards'\n\nexport const CreditsGoGift = ({ copy, id }: { copy: CreditsGoGiftCopy; id?: string }) => {\n const [showModal, setShowModal] = useState(false)\n const [redeemError, setRedeemError] = useState<string>()\n const [rules, setRules] = useState<string | string[]>()\n const { redeemableList } = useRedeemableList({ consumeType: AlpcConsumeType.ExternalProduct })\n const { pageCommon, profile, creditInfo, setOpenMyRewardsModal, openSignUpPopup, gtm } = useCreditsContext()\n const { authCodeActivate } = useRegistration()\n const { brand } = useHeadlessContext()\n const rounded = ROUNDED_BRANDS.includes(brand)\n\n const isLogin = Object.keys(profile || {}).length > 0\n\n // \u83B7\u53D6\u7528\u6237\u7684 ExternalProduct \u5151\u6362\u8BB0\u5F55\n const { myRewards } = useMyRewards({\n page: 1,\n pageSize: 100,\n consumeType: AlpcConsumeType.ExternalProduct,\n })\n\n const redeemModalCopy = pageCommon?.redeemModal || ({} as any)\n\n const item = useMemo(() => {\n // \u6839\u636E redeemId \u67E5\u8BE2 ExternalProduct \u7684 ALPC \u6570\u636E\n const alpcData = redeemableList.find(item => item.id?.toString() === copy?.redeemId?.toString())\n if (!alpcData) return null\n\n return {\n alpc: {\n id: alpcData.id.toString(),\n consumeCredits: alpcData.consume_credits,\n remainingInventory: alpcData.remaining_inventory,\n isLimited: !!alpcData.is_limited,\n consumeType: alpcData.consume_type,\n showCredit: true,\n title: alpcData.name,\n },\n config: {\n title: copy.cardTitle,\n desc: copy.cardDesc,\n type: copy.type,\n value: copy.value || '',\n rules: copy.rules,\n image: copy.cardImg,\n },\n }\n }, [redeemableList, copy])\n\n const handleRedeemError = (code: AlpcErrorCode) => {\n const redeemModalCopy = pageCommon?.redeemModal\n if (code === AlpcErrorCode.CodeLpcShopifyCouponRuleRedeemLimit) {\n setRedeemError(redeemModalCopy?.redeemLimitError)\n } else if (code === AlpcErrorCode.CodeLpcRuleInventoryNotEnough) {\n setRedeemError(redeemModalCopy?.inventoryNotEnough)\n } else if (code === AlpcErrorCode.CodeLpcNotEnoughCredits) {\n setRedeemError(redeemModalCopy?.creditsNotEnough)\n } else if (code === AlpcErrorCode.CodeCrossSiteError) {\n setRedeemError(redeemModalCopy?.crossSiteError)\n } else {\n setRedeemError(redeemModalCopy?.commonError)\n }\n }\n\n const inSufficientCredit = useMemo(() => {\n return (\n profile?.activated && Number(item?.alpc?.consumeCredits) > Number(creditInfo?.available_credit || 0)\n )\n }, [profile?.activated, item?.alpc?.consumeCredits, creditInfo?.available_credit])\n\n // \u68C0\u67E5\u7528\u6237\u662F\u5426\u5DF2\u7ECF\u5151\u6362\u8FC7\u8BE5 GoGift\n const hasRedeemed = useMemo(() => {\n if (!isLogin || !item?.alpc?.id) return false\n return myRewards.some(reward => reward.rule_id === Number(item.alpc.id))\n }, [isLogin, item?.alpc?.id, myRewards])\n\n const soldOut = Number(item?.alpc.remainingInventory) <= 0\n\n const redeemButtonText = useMemo(() => {\n // \u7F3A\u8D27\u6587\u6848\n if (soldOut) {\n return pageCommon?.soldOut || 'Sold Out'\n } else if (!isLogin) {\n return copy.unlockRewards\n } else {\n return copy.redeemBtn\n }\n }, [isLogin, soldOut, copy, pageCommon])\n\n if (!item) return null\n\n return (\n <Container id={id}>\n <Heading as=\"h2\" size=\"4\" html={copy.title} />\n <div\n className={cn(\n 'mt-[24px] flex h-fit w-full items-center gap-[64px] bg-[#eaeaec] p-[24px]',\n 'l-xl:gap-[24px]',\n 'l:flex-col l:gap-[12px] l:p-[12px] l:items-start',\n 'min-l:flex-row',\n !rounded && 'rounded-none',\n rounded && 'rounded-[12px]'\n )}\n >\n {/* Card Image */}\n <div className=\"relative flex h-[200px] w-[304px] shrink-0 items-center justify-center overflow-hidden md-l:w-[333px] md-l:h-[120px] l:items-start md:h-auto md:aspect-h-[120] md:aspect-w-[333] md:w-full\">\n {copy.cardImg?.url && (\n <Picture\n className={cn('size-full', rounded && 'rounded-[12px]')}\n source={copy.mCardImg?.url ? `${copy.cardImg.url},${copy.mCardImg.url} 1024` : copy.cardImg.url}\n />\n )}\n </div>\n\n {/* Content Section */}\n <div className=\"flex w-full items-end justify-between xl:flex-col xl:items-start xl:gap-[24px]\">\n {/* Text Content */}\n <div className=\"flex flex-col gap-[20px] l:w-full l:gap-[12px]\">\n <div className=\"flex flex-col gap-[4px]\">\n <Text\n html={copy.cardTitle}\n className=\"text-[32px] font-bold leading-[1.2] text-[#1D1D1F] l:text-[18px]\"\n />\n <Text\n html={copy.cardDesc}\n className=\"text-[18px] font-bold leading-[1.4] text-[#3D3D3F] l:text-[12px]\"\n />\n </div>\n <Text\n html={copy.cardTip}\n className=\"text-[18px] font-bold leading-[1.4] text-[#000] l:text-[12px]\"\n />\n </div>\n\n {/* Button and Links */}\n <div className=\"flex shrink-0 flex-col items-end xl:w-full md-xl:items-center md-xl:justify-between md-xl:flex-row md:items-start\">\n <Button\n variant=\"primary\"\n disabled={inSufficientCredit || soldOut || hasRedeemed}\n onClick={() => {\n if (!isLogin) {\n openSignUpPopup()\n } else if (!profile?.activated && !authCodeActivate.isActivateSuccess) {\n authCodeActivate.setAutoSendEmail(true)\n authCodeActivate.open()\n } else {\n gaTrack({\n event: 'ga4Event',\n event_name: 'lp_button',\n member_active_status: profile?.activated ? 'active' : 'not active',\n event_parameters: {\n page_group: gtm.pageGroup,\n position: copy.title,\n button_name: redeemButtonText,\n info: item?.alpc?.id,\n },\n })\n setShowModal(true)\n }\n }}\n title={inSufficientCredit ? pageCommon.insufficientCredits : redeemButtonText}\n >\n {redeemButtonText}\n </Button>\n {redeemError && (\n <div className=\"mt-[8px] text-[14px] font-bold leading-[1.2] text-[#FFC24D] l:text-[12px]\">\n {redeemError}\n </div>\n )}\n {(copy.viewRedeemHistory || copy.rulesLink) && (\n <div className=\"mt-[18px] flex gap-[16px] text-[18px] font-bold leading-[1.4] l:mt-[12px] l:gap-0 l:text-[14px]\">\n {copy.viewRedeemHistory && (\n <Text\n html={copy.viewRedeemHistory}\n className=\"cursor-pointer text-[#4794EC] font-bold underline\"\n onClick={() => {\n if (!isLogin) {\n openSignUpPopup()\n } else if (!profile?.activated && !authCodeActivate.isActivateSuccess) {\n authCodeActivate.setAutoSendEmail(true)\n authCodeActivate.open()\n } else {\n gaTrack({\n event: 'ga4Event',\n event_name: 'lp_button',\n member_active_status: profile?.activated ? 'active' : 'not active',\n event_parameters: {\n page_group: gtm.pageGroup,\n position: copy.title,\n button_name: copy.viewRedeemHistory,\n },\n })\n setOpenMyRewardsModal(true)\n }\n }}\n />\n )}\n {pageCommon.ruleLabel && (\n <Text\n html={pageCommon.ruleLabel}\n className={cn(\n 'cursor-pointer text-[#4794EC] font-bold underline',\n copy.viewRedeemHistory && 'l:ml-[16px]'\n )}\n onClick={() => setRules(copy.rules)}\n />\n )}\n </div>\n )}\n </div>\n </div>\n </div>\n\n {showModal && item && (\n <RedeemVirtualProductModal\n copy={redeemModalCopy}\n onClose={() => {\n gaTrack({\n event: 'ga4Event',\n event_name: 'lp_button',\n member_active_status: profile?.activated ? 'active' : 'not active',\n event_parameters: {\n page_group: gtm.pageGroup,\n position: copy.title,\n button_name: 'close_modal',\n },\n })\n setShowModal(false)\n setRedeemError(undefined)\n }}\n item={item}\n onError={handleRedeemError}\n />\n )}\n\n {rules && (\n <RulesModal\n overlayClassName=\"md:px-[16px] md:items-center\"\n className={cn('md:h-fit md:rounded-b-[16px]', !rounded && 'md:rounded-none')}\n isOpen={rules.length > 0}\n onClose={() => setRules(undefined)}\n titleClassName=\"border-b-transparent h-[56px]\"\n rules={rules}\n scrollClassName=\"md:mt-[8px] mt-[8px] md:mb-[24px] md:pt-0\"\n title={pageCommon?.ruleLabel}\n ruleClassName=\"text-[#1d1d1f] font-bold\"\n />\n )}\n </Container>\n )\n}\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["jsx", "jsxs", "Container", "Heading", "Picture", "Button", "Text", "useMemo", "useState", "cn", "gaTrack", "RedeemVirtualProductModal", "useRedeemableList", "useCreditsContext", "ROUNDED_BRANDS", "useHeadlessContext", "AlpcConsumeType", "AlpcErrorCode", "RulesModal", "useRegistration", "useMyRewards", "CreditsGoGift", "copy", "id", "showModal", "setShowModal", "redeemError", "setRedeemError", "rules", "setRules", "redeemableList", "pageCommon", "profile", "creditInfo", "setOpenMyRewardsModal", "openSignUpPopup", "gtm", "authCodeActivate", "brand", "rounded", "isLogin", "myRewards", "redeemModalCopy", "item", "alpcData", "handleRedeemError", "code", "inSufficientCredit", "hasRedeemed", "reward", "soldOut", "redeemButtonText"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as e,jsxs as i}from"react/jsx-runtime";import{Button as N,Container as C,Text as r}from"@anker-in/headless-ui";import{useCallback as w,useState as y}from"react";import{useCreditsContext as k}from"../context/provider";import{numberFormat as f}from"../context/utils";import{gaNormalClick as h,classNames as t,useHeadlessContext as D}from"
|
|
1
|
+
import{jsx as e,jsxs as i}from"react/jsx-runtime";import{Button as N,Container as C,Text as r}from"@anker-in/headless-ui";import{useCallback as w,useState as y}from"react";import{useCreditsContext as k}from"../context/provider";import{numberFormat as f}from"../context/utils";import{gaNormalClick as h,classNames as t,useHeadlessContext as D}from"../../../lib";import{ROUNDED_BRANDS as z}from"../../../constants";function L({copy:l,id:v}){const[n,s]=y(!1),{creditInfo:o,pageCommon:d,setOpenMyRewardsModal:p,setOpenActivitiesModal:m}=k(),{brand:u,locale:c}=D(),x=z.includes(u),g=w(a=>{if(h({position:"info_card",label:a.text}),a.type)switch(a.type){case"activities":m(!0);break;case"rewards":p(!0);break}},[m,p]);return i(C,{asChild:!0,id:v,className:"-mb-[86px] -translate-y-[86px] x:-mb-[30px] x:-translate-y-[30px]",children:[i("div",{className:t("mx-auto flex justify-between items-center rounded-[12px] border border-white px-[24px] py-[40px]","l:flex-col l:items-start","min-l:px-[48px]","min-xl:px-[100px]",!x&&"rounded-none"),style:{background:"linear-gradient(119.61deg, rgba(250, 250, 250, 0.6) 38.58%, rgba(255, 255, 255, 0.6) 63.73%, rgba(249, 252, 255, 0.6) 89.37%)",backdropFilter:"blur(8px)"},children:[i("div",{className:t("grid grid-cols-2 gap-[24px] font-bold l:w-full md:grid-cols-1 md:flex-col md:gap-[16px] min-md:items-center"),children:[i("div",{className:"mr-[80px] md:mr-[0] md:flex-1 md-xl:mr-[64px]",children:[e("div",{className:t("mb-[24px] text-[14px] font-bold l:mb-[6px] xl:text-[16px] min-md:text-[18px] l-xl:mb-[16px]"),children:l.balanceLabel}),i("div",{className:"flex items-baseline",children:[e("div",{className:t("mr-[8px] text-[36px] font-extrabold text-brand-color-1","min-md:text-[44px]","min-xl:text-[56px]"),children:o?f(o.available_credit,c):0}),e("div",{className:"text-[16px]",children:d?.pointUnit})]})]}),i("div",{className:"w-fit md:flex-1",children:[i("div",{className:t("mb-[24px] flex text-[18px] l:mb-[6px] l:text-[14px] l-xl:mb-[16px]"),children:[e(r,{className:"text-[14px] font-bold xl:text-[16px] min-md:text-[18px]",html:l.comingSoonLabel}),l.comingSoonTips&&i("div",{className:"group relative ml-[4px] flex cursor-pointer items-start",children:[e(r,{as:"div",html:d?.infoIcon,className:"size-[18px] cursor-pointer [&_svg]:size-full",onClick:()=>{n?s(!1):(s(!0),setTimeout(()=>{s(!1)},5e3))}}),e("div",{className:t("absolute -bottom-[12px] -left-[32px] z-10 w-[356px] translate-y-full md:w-[276px]",n?"block":"hidden"),children:i("div",{className:t("relative rounded-[10px] bg-[#6D6D6F] p-[16px] text-[14px] font-medium text-white shadow",!x&&"rounded-none"),children:[e(r,{size:"2",html:l.comingSoonTips,className:"desktop:text-[18px]"}),e("div",{className:t("absolute -top-[10px] left-[40px] mb-2 size-[16px] origin-top-left rotate-45 transform rounded-[2px] bg-[#6D6D6F]",!x&&"rounded-none")})]})})]})]}),i("div",{className:"flex items-baseline ",children:[e("div",{className:t("mr-[8px] text-[36px] font-extrabold","min-l:text-[44px]","min-xl:text-[56px]"),children:o?f(o.pending_credit,c):0}),e("div",{className:"text-[16px]",children:d?.pointUnit})]})]})]}),e("div",{className:t("grid w-fit md:w-full l:mt-[32px] l:gap-[12px] gap-[16px] l:pl-0 pl-[48px] md-l:grid-cols-2"),children:l.buttons?.map((a,b)=>e(N,{variant:b===0?"secondary":"primary",size:"lg",className:"min-w-[156px] laptop:min-w-[189px]",onClick:()=>{g(a)},children:a.text},b))})]}),n&&e("div",{role:"button",tabIndex:0,className:"fixed inset-0 z-10",onClick:()=>s(!1),onKeyDown:a=>a.key==="Escape"&&s(!1)})]})}export{L as CreditsInfoCard};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/components/credits/creditsInfoCard/index.tsx"],
|
|
4
|
-
"sourcesContent": ["import { Button, Container, Text } from '@anker-in/headless-ui'\n\nimport { useCallback, useState } from 'react'\nimport { useCreditsContext } from '../context/provider'\nimport { numberFormat } from '../context/utils'\nimport { gaNormalClick, classNames as cn, useHeadlessContext } from '
|
|
5
|
-
"mappings": "AA8DY,cAAAA,EAOA,QAAAC,MAPA,oBA9DZ,OAAS,UAAAC,EAAQ,aAAAC,EAAW,QAAAC,MAAY,wBAExC,OAAS,eAAAC,EAAa,YAAAC,MAAgB,QACtC,OAAS,qBAAAC,MAAyB,sBAClC,OAAS,gBAAAC,MAAoB,mBAC7B,OAAS,iBAAAC,EAAe,cAAcC,EAAI,sBAAAC,MAA0B,
|
|
4
|
+
"sourcesContent": ["import { Button, Container, Text } from '@anker-in/headless-ui'\n\nimport { useCallback, useState } from 'react'\nimport { useCreditsContext } from '../context/provider'\nimport { numberFormat } from '../context/utils'\nimport { gaNormalClick, classNames as cn, useHeadlessContext } from '../../../lib'\nimport { ROUNDED_BRANDS } from '../../../constants'\n\ntype ButtonConfig = {\n text: string\n type: 'activities' | 'rewards'\n}\nexport type CreditsInfoCardCopy = {\n balanceLabel: string\n comingSoonLabel: string\n comingSoonTips: string\n buttons: ButtonConfig[]\n}\n\nexport function CreditsInfoCard({ copy, id }: { copy: CreditsInfoCardCopy; id?: string }) {\n const [hover, setHover] = useState<boolean>(false)\n const { creditInfo, pageCommon, setOpenMyRewardsModal, setOpenActivitiesModal } = useCreditsContext()\n const { brand, locale } = useHeadlessContext()\n const rounded = ROUNDED_BRANDS.includes(brand)\n\n const handleButtonClick = useCallback((buttonConfig: ButtonConfig) => {\n gaNormalClick({ position: 'info_card', label: buttonConfig.text })\n\n if (buttonConfig.type) {\n switch (buttonConfig.type) {\n case 'activities':\n setOpenActivitiesModal(true)\n break\n case 'rewards':\n setOpenMyRewardsModal(true)\n break\n }\n }\n }, [setOpenActivitiesModal, setOpenMyRewardsModal])\n\n return (\n <Container asChild id={id} className=\"-mb-[86px] -translate-y-[86px] x:-mb-[30px] x:-translate-y-[30px]\">\n <div\n className={cn(\n 'mx-auto flex justify-between items-center rounded-[12px] border border-white px-[24px] py-[40px]',\n 'l:flex-col l:items-start',\n 'min-l:px-[48px]',\n 'min-xl:px-[100px]',\n !rounded && 'rounded-none'\n )}\n style={{\n background:\n 'linear-gradient(119.61deg, rgba(250, 250, 250, 0.6) 38.58%, rgba(255, 255, 255, 0.6) 63.73%, rgba(249, 252, 255, 0.6) 89.37%)',\n backdropFilter: 'blur(8px)',\n }}\n >\n <div\n className={cn(\n 'grid grid-cols-2 gap-[24px] font-bold l:w-full md:grid-cols-1 md:flex-col md:gap-[16px] min-md:items-center'\n )}\n >\n <div className=\"mr-[80px] md:mr-[0] md:flex-1 md-xl:mr-[64px]\">\n <div\n className={cn(\n 'mb-[24px] text-[14px] font-bold l:mb-[6px] xl:text-[16px] min-md:text-[18px] l-xl:mb-[16px]'\n )}\n >\n {copy.balanceLabel}\n </div>\n <div className=\"flex items-baseline\">\n <div\n className={cn(\n 'mr-[8px] text-[36px] font-extrabold text-brand-color-1',\n 'min-md:text-[44px]',\n 'min-xl:text-[56px]'\n )}\n >\n {creditInfo ? numberFormat(creditInfo.available_credit, locale) : 0}\n </div>\n <div className=\"text-[16px]\">{pageCommon?.pointUnit}</div>\n </div>\n </div>\n <div className=\"w-fit md:flex-1\">\n <div className={cn('mb-[24px] flex text-[18px] l:mb-[6px] l:text-[14px] l-xl:mb-[16px]')}>\n <Text className=\"text-[14px] font-bold xl:text-[16px] min-md:text-[18px]\" html={copy.comingSoonLabel} />\n {copy.comingSoonTips && (\n <div className=\"group relative ml-[4px] flex cursor-pointer items-start\">\n <Text\n as=\"div\"\n html={pageCommon?.infoIcon}\n className=\"size-[18px] cursor-pointer [&_svg]:size-full\"\n onClick={() => {\n if (hover) {\n setHover(false)\n } else {\n setHover(true)\n setTimeout(() => {\n setHover(false)\n }, 5000)\n }\n }}\n />\n <div\n className={cn(\n 'absolute -bottom-[12px] -left-[32px] z-10 w-[356px] translate-y-full md:w-[276px]',\n hover ? 'block' : 'hidden'\n )}\n >\n <div\n className={cn(\n 'relative rounded-[10px] bg-[#6D6D6F] p-[16px] text-[14px] font-medium text-white shadow',\n !rounded && 'rounded-none'\n )}\n >\n <Text size=\"2\" html={copy.comingSoonTips} className=\"desktop:text-[18px]\" />\n <div\n className={cn(\n 'absolute -top-[10px] left-[40px] mb-2 size-[16px] origin-top-left rotate-45 transform rounded-[2px] bg-[#6D6D6F]',\n !rounded && 'rounded-none'\n )}\n />\n </div>\n </div>\n </div>\n )}\n </div>\n <div className=\"flex items-baseline \">\n <div className={cn('mr-[8px] text-[36px] font-extrabold', 'min-l:text-[44px]', 'min-xl:text-[56px]')}>\n {creditInfo ? numberFormat(creditInfo.pending_credit, locale) : 0}\n </div>\n <div className=\"text-[16px]\">{pageCommon?.pointUnit}</div>\n </div>\n </div>\n </div>\n <div\n className={cn(\n 'grid w-fit md:w-full l:mt-[32px] l:gap-[12px] gap-[16px] l:pl-0 pl-[48px] md-l:grid-cols-2'\n )}\n >\n {copy.buttons?.map((item, index) => (\n <Button\n key={index}\n variant={index === 0 ? 'secondary' : 'primary'}\n size=\"lg\"\n className=\"min-w-[156px] laptop:min-w-[189px]\"\n onClick={() => {\n handleButtonClick(item)\n }}\n >\n {item.text}\n </Button>\n ))}\n </div>\n </div>\n {hover && (\n <div\n role=\"button\"\n tabIndex={0}\n className=\"fixed inset-0 z-10\"\n onClick={() => setHover(false)}\n onKeyDown={e => e.key === 'Escape' && setHover(false)}\n />\n )}\n </Container>\n )\n}\n"],
|
|
5
|
+
"mappings": "AA8DY,cAAAA,EAOA,QAAAC,MAPA,oBA9DZ,OAAS,UAAAC,EAAQ,aAAAC,EAAW,QAAAC,MAAY,wBAExC,OAAS,eAAAC,EAAa,YAAAC,MAAgB,QACtC,OAAS,qBAAAC,MAAyB,sBAClC,OAAS,gBAAAC,MAAoB,mBAC7B,OAAS,iBAAAC,EAAe,cAAcC,EAAI,sBAAAC,MAA0B,eACpE,OAAS,kBAAAC,MAAsB,qBAaxB,SAASC,EAAgB,CAAE,KAAAC,EAAM,GAAAC,CAAG,EAA+C,CACxF,KAAM,CAACC,EAAOC,CAAQ,EAAIX,EAAkB,EAAK,EAC3C,CAAE,WAAAY,EAAY,WAAAC,EAAY,sBAAAC,EAAuB,uBAAAC,CAAuB,EAAId,EAAkB,EAC9F,CAAE,MAAAe,EAAO,OAAAC,CAAO,EAAIZ,EAAmB,EACvCa,EAAUZ,EAAe,SAASU,CAAK,EAEvCG,EAAoBpB,EAAaqB,GAA+B,CAGpE,GAFAjB,EAAc,CAAE,SAAU,YAAa,MAAOiB,EAAa,IAAK,CAAC,EAE7DA,EAAa,KACf,OAAQA,EAAa,KAAM,CACzB,IAAK,aACHL,EAAuB,EAAI,EAC3B,MACF,IAAK,UACHD,EAAsB,EAAI,EAC1B,KACJ,CAEJ,EAAG,CAACC,EAAwBD,CAAqB,CAAC,EAElD,OACEnB,EAACE,EAAA,CAAU,QAAO,GAAC,GAAIY,EAAI,UAAU,oEACnC,UAAAd,EAAC,OACC,UAAWS,EACT,mGACA,2BACA,kBACA,oBACA,CAACc,GAAW,cACd,EACA,MAAO,CACL,WACE,gIACF,eAAgB,WAClB,EAEA,UAAAvB,EAAC,OACC,UAAWS,EACT,6GACF,EAEA,UAAAT,EAAC,OAAI,UAAU,gDACb,UAAAD,EAAC,OACC,UAAWU,EACT,6FACF,EAEC,SAAAI,EAAK,aACR,EACAb,EAAC,OAAI,UAAU,sBACb,UAAAD,EAAC,OACC,UAAWU,EACT,yDACA,qBACA,oBACF,EAEC,SAAAQ,EAAaV,EAAaU,EAAW,iBAAkBK,CAAM,EAAI,EACpE,EACAvB,EAAC,OAAI,UAAU,cAAe,SAAAmB,GAAY,UAAU,GACtD,GACF,EACAlB,EAAC,OAAI,UAAU,kBACb,UAAAA,EAAC,OAAI,UAAWS,EAAG,oEAAoE,EACrF,UAAAV,EAACI,EAAA,CAAK,UAAU,0DAA0D,KAAMU,EAAK,gBAAiB,EACrGA,EAAK,gBACJb,EAAC,OAAI,UAAU,0DACb,UAAAD,EAACI,EAAA,CACC,GAAG,MACH,KAAMe,GAAY,SAClB,UAAU,+CACV,QAAS,IAAM,CACTH,EACFC,EAAS,EAAK,GAEdA,EAAS,EAAI,EACb,WAAW,IAAM,CACfA,EAAS,EAAK,CAChB,EAAG,GAAI,EAEX,EACF,EACAjB,EAAC,OACC,UAAWU,EACT,oFACAM,EAAQ,QAAU,QACpB,EAEA,SAAAf,EAAC,OACC,UAAWS,EACT,0FACA,CAACc,GAAW,cACd,EAEA,UAAAxB,EAACI,EAAA,CAAK,KAAK,IAAI,KAAMU,EAAK,eAAgB,UAAU,sBAAsB,EAC1Ed,EAAC,OACC,UAAWU,EACT,mHACA,CAACc,GAAW,cACd,EACF,GACF,EACF,GACF,GAEJ,EACAvB,EAAC,OAAI,UAAU,uBACb,UAAAD,EAAC,OAAI,UAAWU,EAAG,sCAAuC,oBAAqB,oBAAoB,EAChG,SAAAQ,EAAaV,EAAaU,EAAW,eAAgBK,CAAM,EAAI,EAClE,EACAvB,EAAC,OAAI,UAAU,cAAe,SAAAmB,GAAY,UAAU,GACtD,GACF,GACF,EACAnB,EAAC,OACC,UAAWU,EACT,4FACF,EAEC,SAAAI,EAAK,SAAS,IAAI,CAACa,EAAMC,IACxB5B,EAACE,EAAA,CAEC,QAAS0B,IAAU,EAAI,YAAc,UACrC,KAAK,KACL,UAAU,qCACV,QAAS,IAAM,CACbH,EAAkBE,CAAI,CACxB,EAEC,SAAAA,EAAK,MARDC,CASP,CACD,EACH,GACF,EACCZ,GACChB,EAAC,OACC,KAAK,SACL,SAAU,EACV,UAAU,qBACV,QAAS,IAAMiB,EAAS,EAAK,EAC7B,UAAWY,GAAKA,EAAE,MAAQ,UAAYZ,EAAS,EAAK,EACtD,GAEJ,CAEJ",
|
|
6
6
|
"names": ["jsx", "jsxs", "Button", "Container", "Text", "useCallback", "useState", "useCreditsContext", "numberFormat", "gaNormalClick", "cn", "useHeadlessContext", "ROUNDED_BRANDS", "CreditsInfoCard", "copy", "id", "hover", "setHover", "creditInfo", "pageCommon", "setOpenMyRewardsModal", "setOpenActivitiesModal", "brand", "locale", "rounded", "handleButtonClick", "buttonConfig", "item", "index", "e"]
|
|
7
7
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{jsx as o,jsxs as f}from"react/jsx-runtime";import{Container as Z,Heading as $,Tabs as j,TabsContent as B,TabsList as ee,TabsTrigger as te}from"@anker-in/headless-ui";import{useMemo as u,useState as g,useEffect as z,useCallback as p,useRef as ne}from"react";import I from"decimal.js";import re from"./MemberPriceItem";import ae from"../creditsCash/RedeemableItem";import se from"../context/hooks/useRedeemableList";import ie from"../modal/RulesModal";import{Pagination as G}from"./Pagination";import{useProductsByHandles as O,useHeadlessContext as oe,gaTrack as le}from"
|
|
1
|
+
import{jsx as o,jsxs as f}from"react/jsx-runtime";import{Container as Z,Heading as $,Tabs as j,TabsContent as B,TabsList as ee,TabsTrigger as te}from"@anker-in/headless-ui";import{useMemo as u,useState as g,useEffect as z,useCallback as p,useRef as ne}from"react";import I from"decimal.js";import re from"./MemberPriceItem";import ae from"../creditsCash/RedeemableItem";import se from"../context/hooks/useRedeemableList";import ie from"../modal/RulesModal";import{Pagination as G}from"./Pagination";import{useProductsByHandles as O,useHeadlessContext as oe,gaTrack as le}from"../../../lib";import{classNames as U}from"../../../lib";import{useCreditsContext as me}from"../context/provider";import{FunctionDiscountType as D}from"../context/memberPriceConst";import{ROUNDED_BRANDS as ce}from"../../../constants";const Re=({copy:s,id:W})=>{const[w,q]=g(s.tabs[0]?.type||"memberPrice"),[P,k]=g(),[m,v]=g(1),[l,b]=g(9),{redeemableList:N}=se(),{pageCommon:J,memberPriceDiscount:_,profile:R,gtm:M}=me(),{brand:K}=oe(),Q=ce.includes(K),h=ne(null),L=[{namespace:"global",key:"transparentImg"},{namespace:"__discountCodeApp",key:"data"}];z(()=>{const t=()=>{const n=window.innerWidth;n>=1440?b(12):n>=1024?b(9):n>=768?b(12):b(8)};return t(),window.addEventListener("resize",t),()=>window.removeEventListener("resize",t)},[]),z(()=>{v(1)},[w,l]);const c=u(()=>!_||!s.memberPriceTab.memberPriceRuleId?null:_.find(t=>String(t.rule_id)===String(s.memberPriceTab.memberPriceRuleId)),[_,s.memberPriceTab.memberPriceRuleId]),X=u(()=>c?(c.result_detail?.member_discounts?.filter(e=>e.user_identity===1)||[]).flatMap(e=>e.main_products?.variants?.map(a=>a.handle)||[]):[],[c]),{data:C}=O({handles:X,metafieldIdentifiers:{variant:L}}),{data:T}=O({handles:s?.redeemTab?.list?.map(t=>t.products?.[0]?.handle)||[],metafieldIdentifiers:{variant:L}}),F=p(t=>{try{const n=t?.metafields?.__discountCodeApp?.data;if(!n)return 0;const e=n;if(!Array.isArray(e)||e.length===0)return 0;const a=new Date,r=e.find(i=>{const d=i.starts_at?new Date(i.starts_at):null,V=i.ends_at?new Date(i.ends_at):null;return!(d&&d>a||V&&V<a)});return r?.fixed_value?parseFloat(r.fixed_value):0}catch(n){return console.error("Failed to get coupon discount:",n),0}},[]),A=p((t,n,e)=>{const a=n?.discount_conf;if(!a)return null;let r=new I(t);switch(a.discount_type){case D.Percentage:r=r.mul(100-a.discount_value).div(100);break;case D.FixedAmount:r=r.sub(a.discount_value);break;case D.FixedPrice:r=new I(a.discount_value);break}if(e){const i=F(e);i>0&&(r=r.sub(i))}return r.lessThan(0)&&(r=new I(0)),{memberPrice:r.toNumber(),originalPrice:t}},[F]),x=u(()=>!c||!C?[]:(c.result_detail?.member_discounts?.filter(e=>e.user_identity===1)||[]).flatMap(e=>(e.main_products?.variants||[]).map(a=>({...a,discount:e}))).map(e=>{const a=C.find(d=>d.handle===e.handle);if(!a)return null;const r=a.variants?.find(d=>d.sku===e.sku)||a.variants?.[0];if(!r||!r.availableForSale)return null;const i=A(r.price.amount,e.discount,r);return i?{product:a,productVariant:r,memberPrice:i.memberPrice,originalPrice:i.originalPrice}:null})?.filter(Boolean)||[],[c,C,A]),y=u(()=>T?.map(t=>{const n=s.redeemTab.list.find(r=>r.products?.[0]?.handle===t.handle),e=N.find(r=>r.id?.toString()===n?.redeemId?.toString()),a=t.variants?.find(r=>r.sku===n?.products?.[0]?.sku)||t.variants?.[0];return!e||!a||!a.availableForSale||e.is_limited&&e.remaining_inventory<=0?null:{product:t,productVariant:a,alpcData:{id:e?.id,consumeCredits:e?.consume_credits,remainingInventory:e?.remaining_inventory,isLimited:e?.is_limited,consumeType:e?.consume_type,title:e?.name,desc:e?.note},config:n}}).filter(Boolean),[T,s.redeemTab.list,N]),S=u(()=>{const t=x?.length||0,n=Math.ceil(t/l),e=(m-1)*l,a=e+l,r=x?.slice(e,a)||[];return{totalPages:n,currentItems:r,showPagination:n>1}},[x,m,l]),E=u(()=>{const t=y?.length||0,n=Math.ceil(t/l),e=(m-1)*l,a=e+l,r=y?.slice(e,a)||[];return{totalPages:n,currentItems:r,showPagination:n>1}},[y,m,l]),H=p(t=>{if(v(t),h.current){const n=h.current.offsetTop;window.scrollTo({top:n-80,behavior:"smooth"})}},[v]),Y=p(t=>{const n=t;q(n);const a=s.tabs.find(r=>r.type===n)?.label||"";le({event:"ga4Event",event_name:"lp_button",member_active_status:R?.activated?"active":"not active",event_parameters:{page_group:M.pageGroup,position:s.title,button_name:a}})},[s.tabs,s.title,R?.activated,M.pageGroup]);return f(Z,{id:W,className:U("bg-[#F5F5F5]"),ref:h,children:[o($,{as:"h2",size:"4",html:s.title,className:"mx:px-[16px]"}),f(j,{align:"left",className:"mt-[24px]",value:w,onValueChange:Y,children:[o(ee,{children:s.tabs.map((t,n)=>o(te,{value:t.type,children:t.label},n))}),f(B,{value:"memberPrice",className:"relative mt-[24px]",children:[o("div",{className:"grid md:grid-cols-2 gap-[12px] grid-cols-4 md-xl:grid-cols-3 lg:gap-[16px]",children:S.currentItems?.map((t,n)=>o(re,{itemData:t,copy:s.memberPriceTab},n))}),o(G,{currentPage:m,totalPages:S.totalPages,onPageChange:H})]}),f(B,{value:"redeem",className:"relative mt-[24px]",children:[o("div",{className:"grid md:grid-cols-2 gap-[12px] grid-cols-4 md-xl:grid-cols-3 lg:gap-[16px]",children:E.currentItems?.map((t,n)=>o(ae,{copy:{title:s.title,...s.redeemTab},itemData:t,setRules:k,currencyCode:T?.[0]?.price.currencyCode||"USD"},n))}),o(G,{currentPage:m,totalPages:E.totalPages,onPageChange:H})]})]}),P&&o(ie,{overlayClassName:"md:px-[16px] md:items-center",className:U("md:h-fit md:rounded-b-[16px]",!Q&&"md:rounded-none"),isOpen:P.length>0,onClose:()=>k([]),titleClassName:"border-b-transparent h-[56px]",rules:P,scrollClassName:"md:mt-[8px] md:mb-[24px] md:pt-0",title:J?.ruleLabel,ruleClassName:"text-[#1d1d1f] font-bold"})]})};export{Re as CreditsMemberPrice};
|
|
2
2
|
//# sourceMappingURL=CreditsMemberPrice.js.map
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../../src/components/credits/creditsMemberPrice/CreditsMemberPrice.tsx"],
|
|
4
|
-
"sourcesContent": ["import { Container, Heading, Tabs, TabsContent, TabsList, TabsTrigger } from '@anker-in/headless-ui'\nimport { useMemo, useState, useEffect, useCallback, useRef } from 'react'\nimport Decimal from 'decimal.js'\n\nimport MemberPriceItem from './MemberPriceItem'\nimport RedeemableItem from '../creditsCash/RedeemableItem'\nimport useRedeemableList from '../context/hooks/useRedeemableList'\nimport RulesModal from '../modal/RulesModal'\nimport { Pagination } from './Pagination'\nimport { useProductsByHandles, useHeadlessContext, gaTrack } from '@anker-in/lib'\nimport { CreditsMemberPriceCopy, MemberPriceProduct } from './type'\nimport { Product, classNames as cn } from '@anker-in/lib'\nimport { useCreditsContext } from '../context/provider'\nimport { RedeemItem } from '../creditsCash/type'\nimport { FunctionDiscountType } from '../context/memberPriceConst'\nimport { ROUNDED_BRANDS } from '../../../constants'\n\nexport const CreditsMemberPrice = ({ copy, id }: { copy: CreditsMemberPriceCopy; id?: string }) => {\n const [activeTab, setActiveTab] = useState<'memberPrice' | 'redeem'>(copy.tabs[0]?.type || 'memberPrice')\n const [rules, setRules] = useState<string | string[]>()\n const [currentPage, setCurrentPage] = useState(1)\n const [itemsPerPage, setItemsPerPage] = useState(9) // \u9ED8\u8BA4 1024px \u4EE5\u4E0A\uFF1A3\u5217 \u00D7 3\u884C = 9\n const { redeemableList } = useRedeemableList()\n const { pageCommon, memberPriceDiscount, profile, gtm } = useCreditsContext()\n const { brand } = useHeadlessContext()\n const rounded = ROUNDED_BRANDS.includes(brand)\n const containerRef = useRef<HTMLDivElement>(null)\n\n // \u5B9A\u4E49\u9700\u8981\u83B7\u53D6\u7684 metafield\uFF0C\u5305\u62EC\u900F\u660E\u56FE\u548C\u4F18\u60E0\u5238\u4FE1\u606F\n const variantMetafieldIdentifiers: any[] = [\n {\n namespace: 'global',\n key: 'transparentImg',\n },\n {\n namespace: '__discountCodeApp',\n key: 'data',\n },\n ]\n\n // \u6839\u636E\u5C4F\u5E55\u5C3A\u5BF8\u52A8\u6001\u8C03\u6574\u6BCF\u9875\u663E\u793A\u7684\u5546\u54C1\u6570\u91CF\n useEffect(() => {\n const updateItemsPerPage = () => {\n const width = window.innerWidth\n if (width >= 1440) {\n // 1920px \u4EE5\u4E0A\uFF1A4\u5217 \u00D7 3\u884C = 12\u4E2A\n setItemsPerPage(12)\n } else if (width >= 1024) {\n // 1024px - 1919px\uFF1A3\u5217 \u00D7 3\u884C = 9\u4E2A\n setItemsPerPage(9)\n } else if (width >= 768) {\n // 1024px \u4EE5\u4E0B\uFF1A3\u5217 \u00D7 4\u884C = 12\u4E2A\n setItemsPerPage(12)\n } else {\n // 768px \u4EE5\u4E0B\uFF1A2\u5217 \u00D7 4\u884C = 8\u4E2A\n setItemsPerPage(8)\n }\n }\n\n updateItemsPerPage()\n window.addEventListener('resize', updateItemsPerPage)\n return () => window.removeEventListener('resize', updateItemsPerPage)\n }, [])\n\n // \u5F53\u5207\u6362 tab \u6216\u6BCF\u9875\u6570\u91CF\u53D8\u5316\u65F6\u91CD\u7F6E\u9875\u7801\n useEffect(() => {\n setCurrentPage(1)\n }, [activeTab, itemsPerPage])\n\n // \u6839\u636E\u914D\u7F6E\u7684 ruleId \u67E5\u627E\u5BF9\u5E94\u7684\u4F1A\u5458\u4EF7\u89C4\u5219\n const targetRule = useMemo(() => {\n if (!memberPriceDiscount || !copy.memberPriceTab.memberPriceRuleId) return null\n return memberPriceDiscount.find(rule => String(rule.rule_id) === String(copy.memberPriceTab.memberPriceRuleId))\n }, [memberPriceDiscount, copy.memberPriceTab.memberPriceRuleId])\n\n const memberPriceHandles = useMemo(() => {\n if (!targetRule) return []\n\n // \u83B7\u53D6\u6240\u6709 user_identity === 1 \u7684 discounts\n const allDiscounts = targetRule.result_detail?.member_discounts?.filter(\n (discount: any) => discount.user_identity === 1\n ) || []\n\n // \u5408\u5E76\u6240\u6709 discounts \u7684 variants \u7684 handles\n const handles = allDiscounts.flatMap((discount: any) =>\n discount.main_products?.variants?.map((variant: any) => variant.handle) || []\n )\n\n return handles\n }, [targetRule])\n\n // \u83B7\u53D6\u4F1A\u5458\u4EF7\u4EA7\u54C1\u6570\u636E\uFF08\u901A\u8FC7\u4ECE memberPriceDiscount \u63D0\u53D6\u7684 handles \u83B7\u53D6\u4EA7\u54C1\uFF09\n const { data: memberPriceProducts } = useProductsByHandles({\n handles: memberPriceHandles,\n metafieldIdentifiers: {\n variant: variantMetafieldIdentifiers,\n },\n })\n\n // \u83B7\u53D6\u79EF\u5206\u5151\u6362\u4EA7\u54C1\u6570\u636E\n const { data: redeemProducts } = useProductsByHandles({\n handles: copy?.redeemTab?.list?.map(item => item.products?.[0]?.handle) || [],\n metafieldIdentifiers: {\n variant: variantMetafieldIdentifiers,\n },\n })\n\n // \u4ECE variant metafields \u4E2D\u83B7\u53D6\u6709\u6548\u7684 coupon \u6298\u6263\u91D1\u989D\n const getCouponDiscount = useCallback((variant: any) => {\n try {\n const discountData = variant?.metafields?.__discountCodeApp?.data\n if (!discountData) return 0\n\n // discountData \u5DF2\u7ECF\u662F\u5BF9\u8C61\uFF0C\u4E0D\u9700\u8981 JSON.parse\n const discounts = discountData\n if (!Array.isArray(discounts) || discounts.length === 0) return 0\n\n // \u83B7\u53D6\u7B2C\u4E00\u4E2A\u6709\u6548\u7684 coupon\uFF08\u68C0\u67E5\u65F6\u95F4\u8303\u56F4\uFF09\n const now = new Date()\n const validDiscount = discounts.find((discount: any) => {\n const startsAt = discount.starts_at ? new Date(discount.starts_at) : null\n const endsAt = discount.ends_at ? new Date(discount.ends_at) : null\n\n // \u68C0\u67E5 coupon \u662F\u5426\u5728\u6709\u6548\u671F\u5185\n if (startsAt && startsAt > now) return false\n if (endsAt && endsAt < now) return false\n\n return true\n })\n\n // \u8FD4\u56DE\u6298\u6263\u91D1\u989D\uFF08fixed_amount \u7C7B\u578B\uFF09\n if (validDiscount?.fixed_value) {\n return parseFloat(validDiscount.fixed_value)\n }\n\n return 0\n } catch (error) {\n console.error('Failed to get coupon discount:', error)\n return 0\n }\n }, [])\n\n // \u8BA1\u7B97\u4F1A\u5458\u4EF7\u7684\u8F85\u52A9\u51FD\u6570\uFF08\u4EC5\u4F7F\u7528\u666E\u901A\u4F1A\u5458 user_identity = 1 \u7684\u6298\u6263\uFF0C\u5E76\u53E0\u52A0 coupon \u6298\u6263\uFF09\n const calculateMemberPrice = useCallback(\n (price: number, discount: any, variant?: any) => {\n const discountConfig = discount?.discount_conf\n if (!discountConfig) return null\n\n // \u6839\u636E\u6298\u6263\u7C7B\u578B\u8BA1\u7B97\u4F1A\u5458\u4EF7\n let salePrice = new Decimal(price)\n switch (discountConfig.discount_type) {\n case FunctionDiscountType.Percentage:\n salePrice = salePrice.mul(100 - discountConfig.discount_value).div(100)\n break\n case FunctionDiscountType.FixedAmount:\n salePrice = salePrice.sub(discountConfig.discount_value)\n break\n case FunctionDiscountType.FixedPrice:\n salePrice = new Decimal(discountConfig.discount_value)\n break\n }\n\n // \u53E0\u52A0 coupon \u6298\u6263\n if (variant) {\n const couponDiscount = getCouponDiscount(variant)\n if (couponDiscount > 0) {\n salePrice = salePrice.sub(couponDiscount)\n }\n }\n\n // \u786E\u4FDD\u4EF7\u683C\u4E0D\u4E3A\u8D1F\u6570\n if (salePrice.lessThan(0)) {\n salePrice = new Decimal(0)\n }\n\n return {\n memberPrice: salePrice.toNumber(),\n originalPrice: price,\n }\n },\n [getCouponDiscount]\n )\n\n // \u5904\u7406\u4F1A\u5458\u4EF7\u4EA7\u54C1\u5217\u8868\uFF08\u4EC5\u666E\u901A\u4F1A\u5458 user_identity = 1 \u7684\u6298\u6263\uFF09\n const memberPriceList = useMemo(() => {\n if (!targetRule || !memberPriceProducts) return []\n\n // \u83B7\u53D6\u6240\u6709 user_identity === 1 \u7684 discounts\n const allDiscounts = targetRule.result_detail?.member_discounts?.filter(\n (discount: any) => discount.user_identity === 1\n ) || []\n\n // \u5408\u5E76\u6240\u6709 discounts \u7684 variants\uFF0C\u5E76\u4FDD\u5B58\u5BF9\u5E94\u7684 discount \u4FE1\u606F\n const allVariantsWithDiscount = allDiscounts.flatMap((discount: any) =>\n (discount.main_products?.variants || []).map((variant: any) => ({\n ...variant,\n discount, // \u5C06 discount \u4FE1\u606F\u4FDD\u5B58\u5230 variant \u4E2D\n }))\n )\n\n return (\n (allVariantsWithDiscount\n .map((variantWithDiscount: any) => {\n const product = memberPriceProducts.find(p => p.handle === variantWithDiscount.handle)\n if (!product) return null\n\n const productVariant = product.variants?.find(v => v.sku === variantWithDiscount.sku) || product.variants?.[0]\n if (!productVariant || !productVariant.availableForSale) return null\n\n const priceResult = calculateMemberPrice(\n productVariant.price.amount,\n variantWithDiscount.discount,\n productVariant\n )\n if (!priceResult) return null\n\n return {\n product,\n productVariant,\n memberPrice: priceResult.memberPrice,\n originalPrice: priceResult.originalPrice,\n }\n })\n ?.filter(Boolean) as unknown as MemberPriceProduct[]) || []\n )\n }, [targetRule, memberPriceProducts, calculateMemberPrice])\n\n // \u5904\u7406\u79EF\u5206\u5151\u6362\u4EA7\u54C1\u5217\u8868\uFF08\u590D\u7528 creditsCash \u7684\u903B\u8F91\uFF0C\u8FC7\u6EE4\u7F3A\u8D27\u5546\u54C1\uFF09\n const redeemList = useMemo(() => {\n return redeemProducts\n ?.map((product: Product) => {\n const config = copy.redeemTab.list.find(item => item.products?.[0]?.handle === product.handle)\n const alpcData = redeemableList.find(item => item.id?.toString() === config?.redeemId?.toString())\n const productVariant =\n product.variants?.find((variant: any) => variant.sku === config?.products?.[0]?.sku) || product.variants?.[0]\n\n // \u8FC7\u6EE4\u6761\u4EF6\uFF1A\n // 1. \u5FC5\u987B\u6709 alpcData \u548C productVariant\n // 2. \u5546\u54C1\u4E0D\u80FD\u7F3A\u8D27\n // 3. \u5982\u679C\u6709\u5E93\u5B58\u9650\u5236\uFF0C\u5219\u5E93\u5B58\u5FC5\u987B\u5927\u4E8E 0\n if (!alpcData || !productVariant) return null\n if (!productVariant.availableForSale) return null\n if (alpcData.is_limited && alpcData.remaining_inventory <= 0) return null\n\n return {\n product,\n productVariant,\n alpcData: {\n id: alpcData?.id,\n consumeCredits: alpcData?.consume_credits,\n remainingInventory: alpcData?.remaining_inventory,\n isLimited: alpcData?.is_limited,\n consumeType: alpcData?.consume_type,\n title: alpcData?.name,\n desc: alpcData?.note,\n },\n config,\n }\n })\n .filter(Boolean) as unknown as RedeemItem[]\n }, [redeemProducts, copy.redeemTab.list, redeemableList])\n\n // \u8BA1\u7B97\u4F1A\u5458\u4EF7\u5206\u9875\n const memberPricePagination = useMemo(() => {\n const totalItems = memberPriceList?.length || 0\n const totalPages = Math.ceil(totalItems / itemsPerPage)\n const startIndex = (currentPage - 1) * itemsPerPage\n const endIndex = startIndex + itemsPerPage\n const currentItems = memberPriceList?.slice(startIndex, endIndex) || []\n\n return {\n totalPages,\n currentItems,\n showPagination: totalPages > 1,\n }\n }, [memberPriceList, currentPage, itemsPerPage])\n\n // \u8BA1\u7B97\u79EF\u5206\u5151\u6362\u5206\u9875\n const redeemPagination = useMemo(() => {\n const totalItems = redeemList?.length || 0\n const totalPages = Math.ceil(totalItems / itemsPerPage)\n const startIndex = (currentPage - 1) * itemsPerPage\n const endIndex = startIndex + itemsPerPage\n const currentItems = redeemList?.slice(startIndex, endIndex) || []\n\n return {\n totalPages,\n currentItems,\n showPagination: totalPages > 1,\n }\n }, [redeemList, currentPage, itemsPerPage])\n\n // \u5904\u7406\u9875\u9762\u5207\u6362\uFF0C\u6EDA\u52A8\u5230\u6A21\u5757\u9876\u90E8\n const handlePageChange = useCallback(\n (page: number) => {\n setCurrentPage(page)\n // \u6EDA\u52A8\u5230\u6A21\u5757\u9876\u90E8\n if (containerRef.current) {\n const top = containerRef.current.offsetTop\n window.scrollTo({\n top: top - 80, // \u51CF\u53BB 80px \u7684\u504F\u79FB\u91CF\uFF0C\u907F\u514D\u88AB\u56FA\u5B9A\u5934\u90E8\u906E\u6321\n behavior: 'smooth',\n })\n }\n },\n [setCurrentPage]\n )\n\n // \u5904\u7406 tab \u5207\u6362\u5E76\u53D1\u9001\u57CB\u70B9\n const handleTabChange = useCallback(\n (value: string) => {\n const tabType = value as 'memberPrice' | 'redeem'\n setActiveTab(tabType)\n\n // \u67E5\u627E\u5F53\u524D tab \u7684 label\n const currentTab = copy.tabs.find(tab => tab.type === tabType)\n const tabLabel = currentTab?.label || ''\n\n // \u53D1\u9001 tab \u70B9\u51FB\u57CB\u70B9\n gaTrack({\n event: 'ga4Event',\n event_name: 'lp_button',\n member_active_status: profile?.activated ? 'active' : 'not active',\n event_parameters: {\n page_group: gtm.pageGroup,\n position: copy.title,\n button_name: tabLabel,\n },\n })\n },\n [copy.tabs, copy.title, profile?.activated, gtm.pageGroup]\n )\n\n return (\n <Container id={id} className={cn('bg-[#F5F5F5]')} ref={containerRef}>\n <Heading as=\"h2\" size=\"4\" html={copy.title} className=\"mx:px-[16px]\" />\n\n <Tabs\n align=\"left\"\n className=\"mt-[24px]\"\n value={activeTab}\n onValueChange={handleTabChange}\n >\n <TabsList>\n {copy.tabs.map((tab, index) => (\n <TabsTrigger key={index} value={tab.type}>\n {tab.label}\n </TabsTrigger>\n ))}\n </TabsList>\n\n {/* \u4F1A\u5458\u4EF7 Tab */}\n <TabsContent value=\"memberPrice\" className=\"relative mt-[24px]\">\n <div className=\"grid md:grid-cols-2 gap-[12px] grid-cols-4 md-xl:grid-cols-3 lg:gap-[16px]\">\n {memberPricePagination.currentItems?.map((item, index: number) => (\n <MemberPriceItem key={index} itemData={item} copy={copy.memberPriceTab} />\n ))}\n </div>\n <Pagination\n currentPage={currentPage}\n totalPages={memberPricePagination.totalPages}\n onPageChange={handlePageChange}\n />\n </TabsContent>\n\n {/* \u79EF\u5206\u5151\u6362 Tab */}\n <TabsContent value=\"redeem\" className=\"relative mt-[24px]\">\n <div className=\"grid md:grid-cols-2 gap-[12px] grid-cols-4 md-xl:grid-cols-3 lg:gap-[16px]\">\n {redeemPagination.currentItems?.map((item, index: number) => (\n <RedeemableItem\n key={index}\n copy={{\n title: copy.title,\n ...copy.redeemTab,\n }}\n itemData={item}\n setRules={setRules}\n currencyCode={redeemProducts?.[0]?.price.currencyCode || 'USD'}\n />\n ))}\n </div>\n <Pagination\n currentPage={currentPage}\n totalPages={redeemPagination.totalPages}\n onPageChange={handlePageChange}\n />\n </TabsContent>\n </Tabs>\n\n {/* Rules Modal */}\n {rules && (\n <RulesModal\n overlayClassName=\"md:px-[16px] md:items-center\"\n className={cn('md:h-fit md:rounded-b-[16px]', !rounded && 'md:rounded-none')}\n isOpen={rules.length > 0}\n onClose={() => setRules([])}\n titleClassName=\"border-b-transparent h-[56px]\"\n rules={rules}\n scrollClassName=\"md:mt-[8px] md:mb-[24px] md:pt-0\"\n title={pageCommon?.ruleLabel}\n ruleClassName=\"text-[#1d1d1f] font-bold\"\n />\n )}\n </Container>\n )\n}\n"],
|
|
5
|
-
"mappings": "AA+UM,cAAAA,EAiBE,QAAAC,MAjBF,oBA/UN,OAAS,aAAAC,EAAW,WAAAC,EAAS,QAAAC,EAAM,eAAAC,EAAa,YAAAC,GAAU,eAAAC,OAAmB,wBAC7E,OAAS,WAAAC,EAAS,YAAAC,EAAU,aAAAC,EAAW,eAAAC,EAAa,UAAAC,OAAc,QAClE,OAAOC,MAAa,aAEpB,OAAOC,OAAqB,oBAC5B,OAAOC,OAAoB,gCAC3B,OAAOC,OAAuB,qCAC9B,OAAOC,OAAgB,sBACvB,OAAS,cAAAC,MAAkB,eAC3B,OAAS,wBAAAC,EAAsB,sBAAAC,GAAoB,WAAAC,OAAe,
|
|
4
|
+
"sourcesContent": ["import { Container, Heading, Tabs, TabsContent, TabsList, TabsTrigger } from '@anker-in/headless-ui'\nimport { useMemo, useState, useEffect, useCallback, useRef } from 'react'\nimport Decimal from 'decimal.js'\n\nimport MemberPriceItem from './MemberPriceItem'\nimport RedeemableItem from '../creditsCash/RedeemableItem'\nimport useRedeemableList from '../context/hooks/useRedeemableList'\nimport RulesModal from '../modal/RulesModal'\nimport { Pagination } from './Pagination'\nimport { useProductsByHandles, useHeadlessContext, gaTrack } from '../../../lib'\nimport { CreditsMemberPriceCopy, MemberPriceProduct } from './type'\nimport { Product, classNames as cn } from '../../../lib'\nimport { useCreditsContext } from '../context/provider'\nimport { RedeemItem } from '../creditsCash/type'\nimport { FunctionDiscountType } from '../context/memberPriceConst'\nimport { ROUNDED_BRANDS } from '../../../constants'\n\nexport const CreditsMemberPrice = ({ copy, id }: { copy: CreditsMemberPriceCopy; id?: string }) => {\n const [activeTab, setActiveTab] = useState<'memberPrice' | 'redeem'>(copy.tabs[0]?.type || 'memberPrice')\n const [rules, setRules] = useState<string | string[]>()\n const [currentPage, setCurrentPage] = useState(1)\n const [itemsPerPage, setItemsPerPage] = useState(9) // \u9ED8\u8BA4 1024px \u4EE5\u4E0A\uFF1A3\u5217 \u00D7 3\u884C = 9\n const { redeemableList } = useRedeemableList()\n const { pageCommon, memberPriceDiscount, profile, gtm } = useCreditsContext()\n const { brand } = useHeadlessContext()\n const rounded = ROUNDED_BRANDS.includes(brand)\n const containerRef = useRef<HTMLDivElement>(null)\n\n // \u5B9A\u4E49\u9700\u8981\u83B7\u53D6\u7684 metafield\uFF0C\u5305\u62EC\u900F\u660E\u56FE\u548C\u4F18\u60E0\u5238\u4FE1\u606F\n const variantMetafieldIdentifiers: any[] = [\n {\n namespace: 'global',\n key: 'transparentImg',\n },\n {\n namespace: '__discountCodeApp',\n key: 'data',\n },\n ]\n\n // \u6839\u636E\u5C4F\u5E55\u5C3A\u5BF8\u52A8\u6001\u8C03\u6574\u6BCF\u9875\u663E\u793A\u7684\u5546\u54C1\u6570\u91CF\n useEffect(() => {\n const updateItemsPerPage = () => {\n const width = window.innerWidth\n if (width >= 1440) {\n // 1920px \u4EE5\u4E0A\uFF1A4\u5217 \u00D7 3\u884C = 12\u4E2A\n setItemsPerPage(12)\n } else if (width >= 1024) {\n // 1024px - 1919px\uFF1A3\u5217 \u00D7 3\u884C = 9\u4E2A\n setItemsPerPage(9)\n } else if (width >= 768) {\n // 1024px \u4EE5\u4E0B\uFF1A3\u5217 \u00D7 4\u884C = 12\u4E2A\n setItemsPerPage(12)\n } else {\n // 768px \u4EE5\u4E0B\uFF1A2\u5217 \u00D7 4\u884C = 8\u4E2A\n setItemsPerPage(8)\n }\n }\n\n updateItemsPerPage()\n window.addEventListener('resize', updateItemsPerPage)\n return () => window.removeEventListener('resize', updateItemsPerPage)\n }, [])\n\n // \u5F53\u5207\u6362 tab \u6216\u6BCF\u9875\u6570\u91CF\u53D8\u5316\u65F6\u91CD\u7F6E\u9875\u7801\n useEffect(() => {\n setCurrentPage(1)\n }, [activeTab, itemsPerPage])\n\n // \u6839\u636E\u914D\u7F6E\u7684 ruleId \u67E5\u627E\u5BF9\u5E94\u7684\u4F1A\u5458\u4EF7\u89C4\u5219\n const targetRule = useMemo(() => {\n if (!memberPriceDiscount || !copy.memberPriceTab.memberPriceRuleId) return null\n return memberPriceDiscount.find(rule => String(rule.rule_id) === String(copy.memberPriceTab.memberPriceRuleId))\n }, [memberPriceDiscount, copy.memberPriceTab.memberPriceRuleId])\n\n const memberPriceHandles = useMemo(() => {\n if (!targetRule) return []\n\n // \u83B7\u53D6\u6240\u6709 user_identity === 1 \u7684 discounts\n const allDiscounts = targetRule.result_detail?.member_discounts?.filter(\n (discount: any) => discount.user_identity === 1\n ) || []\n\n // \u5408\u5E76\u6240\u6709 discounts \u7684 variants \u7684 handles\n const handles = allDiscounts.flatMap((discount: any) =>\n discount.main_products?.variants?.map((variant: any) => variant.handle) || []\n )\n\n return handles\n }, [targetRule])\n\n // \u83B7\u53D6\u4F1A\u5458\u4EF7\u4EA7\u54C1\u6570\u636E\uFF08\u901A\u8FC7\u4ECE memberPriceDiscount \u63D0\u53D6\u7684 handles \u83B7\u53D6\u4EA7\u54C1\uFF09\n const { data: memberPriceProducts } = useProductsByHandles({\n handles: memberPriceHandles,\n metafieldIdentifiers: {\n variant: variantMetafieldIdentifiers,\n },\n })\n\n // \u83B7\u53D6\u79EF\u5206\u5151\u6362\u4EA7\u54C1\u6570\u636E\n const { data: redeemProducts } = useProductsByHandles({\n handles: copy?.redeemTab?.list?.map(item => item.products?.[0]?.handle) || [],\n metafieldIdentifiers: {\n variant: variantMetafieldIdentifiers,\n },\n })\n\n // \u4ECE variant metafields \u4E2D\u83B7\u53D6\u6709\u6548\u7684 coupon \u6298\u6263\u91D1\u989D\n const getCouponDiscount = useCallback((variant: any) => {\n try {\n const discountData = variant?.metafields?.__discountCodeApp?.data\n if (!discountData) return 0\n\n // discountData \u5DF2\u7ECF\u662F\u5BF9\u8C61\uFF0C\u4E0D\u9700\u8981 JSON.parse\n const discounts = discountData\n if (!Array.isArray(discounts) || discounts.length === 0) return 0\n\n // \u83B7\u53D6\u7B2C\u4E00\u4E2A\u6709\u6548\u7684 coupon\uFF08\u68C0\u67E5\u65F6\u95F4\u8303\u56F4\uFF09\n const now = new Date()\n const validDiscount = discounts.find((discount: any) => {\n const startsAt = discount.starts_at ? new Date(discount.starts_at) : null\n const endsAt = discount.ends_at ? new Date(discount.ends_at) : null\n\n // \u68C0\u67E5 coupon \u662F\u5426\u5728\u6709\u6548\u671F\u5185\n if (startsAt && startsAt > now) return false\n if (endsAt && endsAt < now) return false\n\n return true\n })\n\n // \u8FD4\u56DE\u6298\u6263\u91D1\u989D\uFF08fixed_amount \u7C7B\u578B\uFF09\n if (validDiscount?.fixed_value) {\n return parseFloat(validDiscount.fixed_value)\n }\n\n return 0\n } catch (error) {\n console.error('Failed to get coupon discount:', error)\n return 0\n }\n }, [])\n\n // \u8BA1\u7B97\u4F1A\u5458\u4EF7\u7684\u8F85\u52A9\u51FD\u6570\uFF08\u4EC5\u4F7F\u7528\u666E\u901A\u4F1A\u5458 user_identity = 1 \u7684\u6298\u6263\uFF0C\u5E76\u53E0\u52A0 coupon \u6298\u6263\uFF09\n const calculateMemberPrice = useCallback(\n (price: number, discount: any, variant?: any) => {\n const discountConfig = discount?.discount_conf\n if (!discountConfig) return null\n\n // \u6839\u636E\u6298\u6263\u7C7B\u578B\u8BA1\u7B97\u4F1A\u5458\u4EF7\n let salePrice = new Decimal(price)\n switch (discountConfig.discount_type) {\n case FunctionDiscountType.Percentage:\n salePrice = salePrice.mul(100 - discountConfig.discount_value).div(100)\n break\n case FunctionDiscountType.FixedAmount:\n salePrice = salePrice.sub(discountConfig.discount_value)\n break\n case FunctionDiscountType.FixedPrice:\n salePrice = new Decimal(discountConfig.discount_value)\n break\n }\n\n // \u53E0\u52A0 coupon \u6298\u6263\n if (variant) {\n const couponDiscount = getCouponDiscount(variant)\n if (couponDiscount > 0) {\n salePrice = salePrice.sub(couponDiscount)\n }\n }\n\n // \u786E\u4FDD\u4EF7\u683C\u4E0D\u4E3A\u8D1F\u6570\n if (salePrice.lessThan(0)) {\n salePrice = new Decimal(0)\n }\n\n return {\n memberPrice: salePrice.toNumber(),\n originalPrice: price,\n }\n },\n [getCouponDiscount]\n )\n\n // \u5904\u7406\u4F1A\u5458\u4EF7\u4EA7\u54C1\u5217\u8868\uFF08\u4EC5\u666E\u901A\u4F1A\u5458 user_identity = 1 \u7684\u6298\u6263\uFF09\n const memberPriceList = useMemo(() => {\n if (!targetRule || !memberPriceProducts) return []\n\n // \u83B7\u53D6\u6240\u6709 user_identity === 1 \u7684 discounts\n const allDiscounts = targetRule.result_detail?.member_discounts?.filter(\n (discount: any) => discount.user_identity === 1\n ) || []\n\n // \u5408\u5E76\u6240\u6709 discounts \u7684 variants\uFF0C\u5E76\u4FDD\u5B58\u5BF9\u5E94\u7684 discount \u4FE1\u606F\n const allVariantsWithDiscount = allDiscounts.flatMap((discount: any) =>\n (discount.main_products?.variants || []).map((variant: any) => ({\n ...variant,\n discount, // \u5C06 discount \u4FE1\u606F\u4FDD\u5B58\u5230 variant \u4E2D\n }))\n )\n\n return (\n (allVariantsWithDiscount\n .map((variantWithDiscount: any) => {\n const product = memberPriceProducts.find(p => p.handle === variantWithDiscount.handle)\n if (!product) return null\n\n const productVariant = product.variants?.find(v => v.sku === variantWithDiscount.sku) || product.variants?.[0]\n if (!productVariant || !productVariant.availableForSale) return null\n\n const priceResult = calculateMemberPrice(\n productVariant.price.amount,\n variantWithDiscount.discount,\n productVariant\n )\n if (!priceResult) return null\n\n return {\n product,\n productVariant,\n memberPrice: priceResult.memberPrice,\n originalPrice: priceResult.originalPrice,\n }\n })\n ?.filter(Boolean) as unknown as MemberPriceProduct[]) || []\n )\n }, [targetRule, memberPriceProducts, calculateMemberPrice])\n\n // \u5904\u7406\u79EF\u5206\u5151\u6362\u4EA7\u54C1\u5217\u8868\uFF08\u590D\u7528 creditsCash \u7684\u903B\u8F91\uFF0C\u8FC7\u6EE4\u7F3A\u8D27\u5546\u54C1\uFF09\n const redeemList = useMemo(() => {\n return redeemProducts\n ?.map((product: Product) => {\n const config = copy.redeemTab.list.find(item => item.products?.[0]?.handle === product.handle)\n const alpcData = redeemableList.find(item => item.id?.toString() === config?.redeemId?.toString())\n const productVariant =\n product.variants?.find((variant: any) => variant.sku === config?.products?.[0]?.sku) || product.variants?.[0]\n\n // \u8FC7\u6EE4\u6761\u4EF6\uFF1A\n // 1. \u5FC5\u987B\u6709 alpcData \u548C productVariant\n // 2. \u5546\u54C1\u4E0D\u80FD\u7F3A\u8D27\n // 3. \u5982\u679C\u6709\u5E93\u5B58\u9650\u5236\uFF0C\u5219\u5E93\u5B58\u5FC5\u987B\u5927\u4E8E 0\n if (!alpcData || !productVariant) return null\n if (!productVariant.availableForSale) return null\n if (alpcData.is_limited && alpcData.remaining_inventory <= 0) return null\n\n return {\n product,\n productVariant,\n alpcData: {\n id: alpcData?.id,\n consumeCredits: alpcData?.consume_credits,\n remainingInventory: alpcData?.remaining_inventory,\n isLimited: alpcData?.is_limited,\n consumeType: alpcData?.consume_type,\n title: alpcData?.name,\n desc: alpcData?.note,\n },\n config,\n }\n })\n .filter(Boolean) as unknown as RedeemItem[]\n }, [redeemProducts, copy.redeemTab.list, redeemableList])\n\n // \u8BA1\u7B97\u4F1A\u5458\u4EF7\u5206\u9875\n const memberPricePagination = useMemo(() => {\n const totalItems = memberPriceList?.length || 0\n const totalPages = Math.ceil(totalItems / itemsPerPage)\n const startIndex = (currentPage - 1) * itemsPerPage\n const endIndex = startIndex + itemsPerPage\n const currentItems = memberPriceList?.slice(startIndex, endIndex) || []\n\n return {\n totalPages,\n currentItems,\n showPagination: totalPages > 1,\n }\n }, [memberPriceList, currentPage, itemsPerPage])\n\n // \u8BA1\u7B97\u79EF\u5206\u5151\u6362\u5206\u9875\n const redeemPagination = useMemo(() => {\n const totalItems = redeemList?.length || 0\n const totalPages = Math.ceil(totalItems / itemsPerPage)\n const startIndex = (currentPage - 1) * itemsPerPage\n const endIndex = startIndex + itemsPerPage\n const currentItems = redeemList?.slice(startIndex, endIndex) || []\n\n return {\n totalPages,\n currentItems,\n showPagination: totalPages > 1,\n }\n }, [redeemList, currentPage, itemsPerPage])\n\n // \u5904\u7406\u9875\u9762\u5207\u6362\uFF0C\u6EDA\u52A8\u5230\u6A21\u5757\u9876\u90E8\n const handlePageChange = useCallback(\n (page: number) => {\n setCurrentPage(page)\n // \u6EDA\u52A8\u5230\u6A21\u5757\u9876\u90E8\n if (containerRef.current) {\n const top = containerRef.current.offsetTop\n window.scrollTo({\n top: top - 80, // \u51CF\u53BB 80px \u7684\u504F\u79FB\u91CF\uFF0C\u907F\u514D\u88AB\u56FA\u5B9A\u5934\u90E8\u906E\u6321\n behavior: 'smooth',\n })\n }\n },\n [setCurrentPage]\n )\n\n // \u5904\u7406 tab \u5207\u6362\u5E76\u53D1\u9001\u57CB\u70B9\n const handleTabChange = useCallback(\n (value: string) => {\n const tabType = value as 'memberPrice' | 'redeem'\n setActiveTab(tabType)\n\n // \u67E5\u627E\u5F53\u524D tab \u7684 label\n const currentTab = copy.tabs.find(tab => tab.type === tabType)\n const tabLabel = currentTab?.label || ''\n\n // \u53D1\u9001 tab \u70B9\u51FB\u57CB\u70B9\n gaTrack({\n event: 'ga4Event',\n event_name: 'lp_button',\n member_active_status: profile?.activated ? 'active' : 'not active',\n event_parameters: {\n page_group: gtm.pageGroup,\n position: copy.title,\n button_name: tabLabel,\n },\n })\n },\n [copy.tabs, copy.title, profile?.activated, gtm.pageGroup]\n )\n\n return (\n <Container id={id} className={cn('bg-[#F5F5F5]')} ref={containerRef}>\n <Heading as=\"h2\" size=\"4\" html={copy.title} className=\"mx:px-[16px]\" />\n\n <Tabs\n align=\"left\"\n className=\"mt-[24px]\"\n value={activeTab}\n onValueChange={handleTabChange}\n >\n <TabsList>\n {copy.tabs.map((tab, index) => (\n <TabsTrigger key={index} value={tab.type}>\n {tab.label}\n </TabsTrigger>\n ))}\n </TabsList>\n\n {/* \u4F1A\u5458\u4EF7 Tab */}\n <TabsContent value=\"memberPrice\" className=\"relative mt-[24px]\">\n <div className=\"grid md:grid-cols-2 gap-[12px] grid-cols-4 md-xl:grid-cols-3 lg:gap-[16px]\">\n {memberPricePagination.currentItems?.map((item, index: number) => (\n <MemberPriceItem key={index} itemData={item} copy={copy.memberPriceTab} />\n ))}\n </div>\n <Pagination\n currentPage={currentPage}\n totalPages={memberPricePagination.totalPages}\n onPageChange={handlePageChange}\n />\n </TabsContent>\n\n {/* \u79EF\u5206\u5151\u6362 Tab */}\n <TabsContent value=\"redeem\" className=\"relative mt-[24px]\">\n <div className=\"grid md:grid-cols-2 gap-[12px] grid-cols-4 md-xl:grid-cols-3 lg:gap-[16px]\">\n {redeemPagination.currentItems?.map((item, index: number) => (\n <RedeemableItem\n key={index}\n copy={{\n title: copy.title,\n ...copy.redeemTab,\n }}\n itemData={item}\n setRules={setRules}\n currencyCode={redeemProducts?.[0]?.price.currencyCode || 'USD'}\n />\n ))}\n </div>\n <Pagination\n currentPage={currentPage}\n totalPages={redeemPagination.totalPages}\n onPageChange={handlePageChange}\n />\n </TabsContent>\n </Tabs>\n\n {/* Rules Modal */}\n {rules && (\n <RulesModal\n overlayClassName=\"md:px-[16px] md:items-center\"\n className={cn('md:h-fit md:rounded-b-[16px]', !rounded && 'md:rounded-none')}\n isOpen={rules.length > 0}\n onClose={() => setRules([])}\n titleClassName=\"border-b-transparent h-[56px]\"\n rules={rules}\n scrollClassName=\"md:mt-[8px] md:mb-[24px] md:pt-0\"\n title={pageCommon?.ruleLabel}\n ruleClassName=\"text-[#1d1d1f] font-bold\"\n />\n )}\n </Container>\n )\n}\n"],
|
|
5
|
+
"mappings": "AA+UM,cAAAA,EAiBE,QAAAC,MAjBF,oBA/UN,OAAS,aAAAC,EAAW,WAAAC,EAAS,QAAAC,EAAM,eAAAC,EAAa,YAAAC,GAAU,eAAAC,OAAmB,wBAC7E,OAAS,WAAAC,EAAS,YAAAC,EAAU,aAAAC,EAAW,eAAAC,EAAa,UAAAC,OAAc,QAClE,OAAOC,MAAa,aAEpB,OAAOC,OAAqB,oBAC5B,OAAOC,OAAoB,gCAC3B,OAAOC,OAAuB,qCAC9B,OAAOC,OAAgB,sBACvB,OAAS,cAAAC,MAAkB,eAC3B,OAAS,wBAAAC,EAAsB,sBAAAC,GAAoB,WAAAC,OAAe,eAElE,OAAkB,cAAcC,MAAU,eAC1C,OAAS,qBAAAC,OAAyB,sBAElC,OAAS,wBAAAC,MAA4B,8BACrC,OAAS,kBAAAC,OAAsB,qBAExB,MAAMC,GAAqB,CAAC,CAAE,KAAAC,EAAM,GAAAC,CAAG,IAAqD,CACjG,KAAM,CAACC,EAAWC,CAAY,EAAIrB,EAAmCkB,EAAK,KAAK,CAAC,GAAG,MAAQ,aAAa,EAClG,CAACI,EAAOC,CAAQ,EAAIvB,EAA4B,EAChD,CAACwB,EAAaC,CAAc,EAAIzB,EAAS,CAAC,EAC1C,CAAC0B,EAAcC,CAAe,EAAI3B,EAAS,CAAC,EAC5C,CAAE,eAAA4B,CAAe,EAAIrB,GAAkB,EACvC,CAAE,WAAAsB,EAAY,oBAAAC,EAAqB,QAAAC,EAAS,IAAAC,CAAI,EAAIlB,GAAkB,EACtE,CAAE,MAAAmB,CAAM,EAAItB,GAAmB,EAC/BuB,EAAUlB,GAAe,SAASiB,CAAK,EACvCE,EAAehC,GAAuB,IAAI,EAG1CiC,EAAqC,CACzC,CACE,UAAW,SACX,IAAK,gBACP,EACA,CACE,UAAW,oBACX,IAAK,MACP,CACF,EAGAnC,EAAU,IAAM,CACd,MAAMoC,EAAqB,IAAM,CAC/B,MAAMC,EAAQ,OAAO,WACjBA,GAAS,KAEXX,EAAgB,EAAE,EACTW,GAAS,KAElBX,EAAgB,CAAC,EACRW,GAAS,IAElBX,EAAgB,EAAE,EAGlBA,EAAgB,CAAC,CAErB,EAEA,OAAAU,EAAmB,EACnB,OAAO,iBAAiB,SAAUA,CAAkB,EAC7C,IAAM,OAAO,oBAAoB,SAAUA,CAAkB,CACtE,EAAG,CAAC,CAAC,EAGLpC,EAAU,IAAM,CACdwB,EAAe,CAAC,CAClB,EAAG,CAACL,EAAWM,CAAY,CAAC,EAG5B,MAAMa,EAAaxC,EAAQ,IACrB,CAAC+B,GAAuB,CAACZ,EAAK,eAAe,kBAA0B,KACpEY,EAAoB,KAAKU,GAAQ,OAAOA,EAAK,OAAO,IAAM,OAAOtB,EAAK,eAAe,iBAAiB,CAAC,EAC7G,CAACY,EAAqBZ,EAAK,eAAe,iBAAiB,CAAC,EAEzDuB,EAAqB1C,EAAQ,IAC5BwC,GAGgBA,EAAW,eAAe,kBAAkB,OAC9DG,GAAkBA,EAAS,gBAAkB,CAChD,GAAK,CAAC,GAGuB,QAASA,GACpCA,EAAS,eAAe,UAAU,IAAKC,GAAiBA,EAAQ,MAAM,GAAK,CAAC,CAC9E,EAVwB,CAAC,EAaxB,CAACJ,CAAU,CAAC,EAGT,CAAE,KAAMK,CAAoB,EAAIlC,EAAqB,CACzD,QAAS+B,EACT,qBAAsB,CACpB,QAASL,CACX,CACF,CAAC,EAGK,CAAE,KAAMS,CAAe,EAAInC,EAAqB,CACpD,QAASQ,GAAM,WAAW,MAAM,IAAI4B,GAAQA,EAAK,WAAW,CAAC,GAAG,MAAM,GAAK,CAAC,EAC5E,qBAAsB,CACpB,QAASV,CACX,CACF,CAAC,EAGKW,EAAoB7C,EAAayC,GAAiB,CACtD,GAAI,CACF,MAAMK,EAAeL,GAAS,YAAY,mBAAmB,KAC7D,GAAI,CAACK,EAAc,MAAO,GAG1B,MAAMC,EAAYD,EAClB,GAAI,CAAC,MAAM,QAAQC,CAAS,GAAKA,EAAU,SAAW,EAAG,MAAO,GAGhE,MAAMC,EAAM,IAAI,KACVC,EAAgBF,EAAU,KAAMP,GAAkB,CACtD,MAAMU,EAAWV,EAAS,UAAY,IAAI,KAAKA,EAAS,SAAS,EAAI,KAC/DW,EAASX,EAAS,QAAU,IAAI,KAAKA,EAAS,OAAO,EAAI,KAI/D,MADI,EAAAU,GAAYA,EAAWF,GACvBG,GAAUA,EAASH,EAGzB,CAAC,EAGD,OAAIC,GAAe,YACV,WAAWA,EAAc,WAAW,EAGtC,CACT,OAASG,EAAO,CACd,eAAQ,MAAM,iCAAkCA,CAAK,EAC9C,CACT,CACF,EAAG,CAAC,CAAC,EAGCC,EAAuBrD,EAC3B,CAACsD,EAAed,EAAeC,IAAkB,CAC/C,MAAMc,EAAiBf,GAAU,cACjC,GAAI,CAACe,EAAgB,OAAO,KAG5B,IAAIC,EAAY,IAAItD,EAAQoD,CAAK,EACjC,OAAQC,EAAe,cAAe,CACpC,KAAK1C,EAAqB,WACxB2C,EAAYA,EAAU,IAAI,IAAMD,EAAe,cAAc,EAAE,IAAI,GAAG,EACtE,MACF,KAAK1C,EAAqB,YACxB2C,EAAYA,EAAU,IAAID,EAAe,cAAc,EACvD,MACF,KAAK1C,EAAqB,WACxB2C,EAAY,IAAItD,EAAQqD,EAAe,cAAc,EACrD,KACJ,CAGA,GAAId,EAAS,CACX,MAAMgB,EAAiBZ,EAAkBJ,CAAO,EAC5CgB,EAAiB,IACnBD,EAAYA,EAAU,IAAIC,CAAc,EAE5C,CAGA,OAAID,EAAU,SAAS,CAAC,IACtBA,EAAY,IAAItD,EAAQ,CAAC,GAGpB,CACL,YAAasD,EAAU,SAAS,EAChC,cAAeF,CACjB,CACF,EACA,CAACT,CAAiB,CACpB,EAGMa,EAAkB7D,EAAQ,IAC1B,CAACwC,GAAc,CAACK,EAA4B,CAAC,GAG5BL,EAAW,eAAe,kBAAkB,OAC9DG,GAAkBA,EAAS,gBAAkB,CAChD,GAAK,CAAC,GAGuC,QAASA,IACnDA,EAAS,eAAe,UAAY,CAAC,GAAG,IAAKC,IAAkB,CAC9D,GAAGA,EACH,SAAAD,CACF,EAAE,CACJ,EAIK,IAAKmB,GAA6B,CACjC,MAAMC,EAAUlB,EAAoB,KAAKmB,GAAKA,EAAE,SAAWF,EAAoB,MAAM,EACrF,GAAI,CAACC,EAAS,OAAO,KAErB,MAAME,EAAiBF,EAAQ,UAAU,KAAKG,GAAKA,EAAE,MAAQJ,EAAoB,GAAG,GAAKC,EAAQ,WAAW,CAAC,EAC7G,GAAI,CAACE,GAAkB,CAACA,EAAe,iBAAkB,OAAO,KAEhE,MAAME,EAAcX,EAClBS,EAAe,MAAM,OACrBH,EAAoB,SACpBG,CACF,EACA,OAAKE,EAEE,CACL,QAAAJ,EACA,eAAAE,EACA,YAAaE,EAAY,YACzB,cAAeA,EAAY,aAC7B,EAPyB,IAQ3B,CAAC,GACC,OAAO,OAAO,GAAyC,CAAC,EAE7D,CAAC3B,EAAYK,EAAqBW,CAAoB,CAAC,EAGpDY,EAAapE,EAAQ,IAClB8C,GACH,IAAKiB,GAAqB,CAC1B,MAAMM,EAASlD,EAAK,UAAU,KAAK,KAAK4B,GAAQA,EAAK,WAAW,CAAC,GAAG,SAAWgB,EAAQ,MAAM,EACvFO,EAAWzC,EAAe,KAAKkB,GAAQA,EAAK,IAAI,SAAS,IAAMsB,GAAQ,UAAU,SAAS,CAAC,EAC3FJ,EACJF,EAAQ,UAAU,KAAMnB,GAAiBA,EAAQ,MAAQyB,GAAQ,WAAW,CAAC,GAAG,GAAG,GAAKN,EAAQ,WAAW,CAAC,EAQ9G,MAFI,CAACO,GAAY,CAACL,GACd,CAACA,EAAe,kBAChBK,EAAS,YAAcA,EAAS,qBAAuB,EAAU,KAE9D,CACL,QAAAP,EACA,eAAAE,EACA,SAAU,CACR,GAAIK,GAAU,GACd,eAAgBA,GAAU,gBAC1B,mBAAoBA,GAAU,oBAC9B,UAAWA,GAAU,WACrB,YAAaA,GAAU,aACvB,MAAOA,GAAU,KACjB,KAAMA,GAAU,IAClB,EACA,OAAAD,CACF,CACF,CAAC,EACA,OAAO,OAAO,EAChB,CAACvB,EAAgB3B,EAAK,UAAU,KAAMU,CAAc,CAAC,EAGlD0C,EAAwBvE,EAAQ,IAAM,CAC1C,MAAMwE,EAAaX,GAAiB,QAAU,EACxCY,EAAa,KAAK,KAAKD,EAAa7C,CAAY,EAChD+C,GAAcjD,EAAc,GAAKE,EACjCgD,EAAWD,EAAa/C,EACxBiD,EAAef,GAAiB,MAAMa,EAAYC,CAAQ,GAAK,CAAC,EAEtE,MAAO,CACL,WAAAF,EACA,aAAAG,EACA,eAAgBH,EAAa,CAC/B,CACF,EAAG,CAACZ,EAAiBpC,EAAaE,CAAY,CAAC,EAGzCkD,EAAmB7E,EAAQ,IAAM,CACrC,MAAMwE,EAAaJ,GAAY,QAAU,EACnCK,EAAa,KAAK,KAAKD,EAAa7C,CAAY,EAChD+C,GAAcjD,EAAc,GAAKE,EACjCgD,EAAWD,EAAa/C,EACxBiD,EAAeR,GAAY,MAAMM,EAAYC,CAAQ,GAAK,CAAC,EAEjE,MAAO,CACL,WAAAF,EACA,aAAAG,EACA,eAAgBH,EAAa,CAC/B,CACF,EAAG,CAACL,EAAY3C,EAAaE,CAAY,CAAC,EAGpCmD,EAAmB3E,EACtB4E,GAAiB,CAGhB,GAFArD,EAAeqD,CAAI,EAEf3C,EAAa,QAAS,CACxB,MAAM4C,EAAM5C,EAAa,QAAQ,UACjC,OAAO,SAAS,CACd,IAAK4C,EAAM,GACX,SAAU,QACZ,CAAC,CACH,CACF,EACA,CAACtD,CAAc,CACjB,EAGMuD,EAAkB9E,EACrB+E,GAAkB,CACjB,MAAMC,EAAUD,EAChB5D,EAAa6D,CAAO,EAIpB,MAAMC,EADajE,EAAK,KAAK,KAAKkE,GAAOA,EAAI,OAASF,CAAO,GAChC,OAAS,GAGtCtE,GAAQ,CACN,MAAO,WACP,WAAY,YACZ,qBAAsBmB,GAAS,UAAY,SAAW,aACtD,iBAAkB,CAChB,WAAYC,EAAI,UAChB,SAAUd,EAAK,MACf,YAAaiE,CACf,CACF,CAAC,CACH,EACA,CAACjE,EAAK,KAAMA,EAAK,MAAOa,GAAS,UAAWC,EAAI,SAAS,CAC3D,EAEA,OACExC,EAACC,EAAA,CAAU,GAAI0B,EAAI,UAAWN,EAAG,cAAc,EAAG,IAAKsB,EACrD,UAAA5C,EAACG,EAAA,CAAQ,GAAG,KAAK,KAAK,IAAI,KAAMwB,EAAK,MAAO,UAAU,eAAe,EAErE1B,EAACG,EAAA,CACC,MAAM,OACN,UAAU,YACV,MAAOyB,EACP,cAAe4D,EAEf,UAAAzF,EAACM,GAAA,CACE,SAAAqB,EAAK,KAAK,IAAI,CAACkE,EAAKC,IACnB9F,EAACO,GAAA,CAAwB,MAAOsF,EAAI,KACjC,SAAAA,EAAI,OADWC,CAElB,CACD,EACH,EAGA7F,EAACI,EAAA,CAAY,MAAM,cAAc,UAAU,qBACzC,UAAAL,EAAC,OAAI,UAAU,6EACZ,SAAA+E,EAAsB,cAAc,IAAI,CAACxB,EAAMuC,IAC9C9F,EAACc,GAAA,CAA4B,SAAUyC,EAAM,KAAM5B,EAAK,gBAAlCmE,CAAkD,CACzE,EACH,EACA9F,EAACkB,EAAA,CACC,YAAae,EACb,WAAY8C,EAAsB,WAClC,aAAcO,EAChB,GACF,EAGArF,EAACI,EAAA,CAAY,MAAM,SAAS,UAAU,qBACpC,UAAAL,EAAC,OAAI,UAAU,6EACZ,SAAAqF,EAAiB,cAAc,IAAI,CAAC9B,EAAMuC,IACzC9F,EAACe,GAAA,CAEC,KAAM,CACJ,MAAOY,EAAK,MACZ,GAAGA,EAAK,SACV,EACA,SAAU4B,EACV,SAAUvB,EACV,aAAcsB,IAAiB,CAAC,GAAG,MAAM,cAAgB,OAPpDwC,CAQP,CACD,EACH,EACA9F,EAACkB,EAAA,CACC,YAAae,EACb,WAAYoD,EAAiB,WAC7B,aAAcC,EAChB,GACF,GACF,EAGCvD,GACC/B,EAACiB,GAAA,CACC,iBAAiB,+BACjB,UAAWK,EAAG,+BAAgC,CAACqB,GAAW,iBAAiB,EAC3E,OAAQZ,EAAM,OAAS,EACvB,QAAS,IAAMC,EAAS,CAAC,CAAC,EAC1B,eAAe,gCACf,MAAOD,EACP,gBAAgB,mCAChB,MAAOO,GAAY,UACnB,cAAc,2BAChB,GAEJ,CAEJ",
|
|
6
6
|
"names": ["jsx", "jsxs", "Container", "Heading", "Tabs", "TabsContent", "TabsList", "TabsTrigger", "useMemo", "useState", "useEffect", "useCallback", "useRef", "Decimal", "MemberPriceItem", "RedeemableItem", "useRedeemableList", "RulesModal", "Pagination", "useProductsByHandles", "useHeadlessContext", "gaTrack", "cn", "useCreditsContext", "FunctionDiscountType", "ROUNDED_BRANDS", "CreditsMemberPrice", "copy", "id", "activeTab", "setActiveTab", "rules", "setRules", "currentPage", "setCurrentPage", "itemsPerPage", "setItemsPerPage", "redeemableList", "pageCommon", "memberPriceDiscount", "profile", "gtm", "brand", "rounded", "containerRef", "variantMetafieldIdentifiers", "updateItemsPerPage", "width", "targetRule", "rule", "memberPriceHandles", "discount", "variant", "memberPriceProducts", "redeemProducts", "item", "getCouponDiscount", "discountData", "discounts", "now", "validDiscount", "startsAt", "endsAt", "error", "calculateMemberPrice", "price", "discountConfig", "salePrice", "couponDiscount", "memberPriceList", "variantWithDiscount", "product", "p", "productVariant", "v", "priceResult", "redeemList", "config", "alpcData", "memberPricePagination", "totalItems", "totalPages", "startIndex", "endIndex", "currentItems", "redeemPagination", "handlePageChange", "page", "top", "handleTabChange", "value", "tabType", "tabLabel", "tab", "index"]
|
|
7
7
|
}
|
|
@@ -3,5 +3,5 @@ declare function MemberPriceItem({ itemData, copy, className, }: {
|
|
|
3
3
|
itemData: MemberPriceProduct;
|
|
4
4
|
copy: CreditsMemberPriceCopy['memberPriceTab'];
|
|
5
5
|
className?: string;
|
|
6
|
-
}): import("react
|
|
6
|
+
}): import("react").JSX.Element;
|
|
7
7
|
export default MemberPriceItem;
|