@anker-in/campaign-ui 0.2.10-beta.9 → 0.2.11-beta.3

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.
Files changed (918) hide show
  1. package/dist/cjs/components/chat/{chat-context.js → chatContext.js} +1 -1
  2. package/dist/cjs/components/chat/{chat-context.js.map → chatContext.js.map} +2 -2
  3. package/dist/cjs/components/chat/index.js +1 -1
  4. package/dist/cjs/components/chat/index.js.map +3 -3
  5. package/dist/cjs/components/credits/context/const.d.ts +2 -1
  6. package/dist/cjs/components/credits/context/const.js +1 -1
  7. package/dist/cjs/components/credits/context/const.js.map +2 -2
  8. package/dist/cjs/components/credits/context/hooks/useActivities.js +1 -1
  9. package/dist/cjs/components/credits/context/hooks/useActivities.js.map +3 -3
  10. package/dist/cjs/components/credits/context/hooks/useAddressValidate.js +1 -1
  11. package/dist/cjs/components/credits/context/hooks/useAddressValidate.js.map +3 -3
  12. package/dist/cjs/components/credits/context/hooks/useAlpcFetch.js +1 -1
  13. package/dist/cjs/components/credits/context/hooks/useAlpcFetch.js.map +3 -3
  14. package/dist/cjs/components/credits/context/hooks/useCountries.js +1 -1
  15. package/dist/cjs/components/credits/context/hooks/useCountries.js.map +3 -3
  16. package/dist/cjs/components/credits/context/hooks/useFunctionMemberPrice.d.ts +7 -0
  17. package/dist/cjs/components/credits/context/hooks/useFunctionMemberPrice.js +2 -0
  18. package/dist/cjs/components/credits/context/hooks/useFunctionMemberPrice.js.map +7 -0
  19. package/dist/cjs/components/credits/context/hooks/useMyRewards.js +1 -1
  20. package/dist/cjs/components/credits/context/hooks/useMyRewards.js.map +3 -3
  21. package/dist/cjs/components/credits/context/hooks/useRedeemAndBuy.d.ts +5 -10
  22. package/dist/cjs/components/credits/context/hooks/useRedeemAndBuy.js +1 -1
  23. package/dist/cjs/components/credits/context/hooks/useRedeemAndBuy.js.map +3 -3
  24. package/dist/cjs/components/credits/context/hooks/useRedeemCoupon.d.ts +2 -1
  25. package/dist/cjs/components/credits/context/hooks/useRedeemCoupon.js +1 -1
  26. package/dist/cjs/components/credits/context/hooks/useRedeemCoupon.js.map +3 -3
  27. package/dist/cjs/components/credits/context/hooks/useRedeemProduct.js +1 -1
  28. package/dist/cjs/components/credits/context/hooks/useRedeemProduct.js.map +3 -3
  29. package/dist/cjs/components/credits/context/hooks/useRedeemableList.js +1 -1
  30. package/dist/cjs/components/credits/context/hooks/useRedeemableList.js.map +3 -3
  31. package/dist/cjs/components/credits/context/hooks/useSendEmailValidation.js +1 -1
  32. package/dist/cjs/components/credits/context/hooks/useSendEmailValidation.js.map +3 -3
  33. package/dist/cjs/components/credits/context/hooks/useSubscribed.js +1 -1
  34. package/dist/cjs/components/credits/context/hooks/useSubscribed.js.map +3 -3
  35. package/dist/cjs/components/credits/context/hooks/useSubscriptions.d.ts +7 -3
  36. package/dist/cjs/components/credits/context/hooks/useSubscriptions.js +1 -1
  37. package/dist/cjs/components/credits/context/hooks/useSubscriptions.js.map +3 -3
  38. package/dist/cjs/components/credits/context/hooks/useUploadReceipt.js +1 -1
  39. package/dist/cjs/components/credits/context/hooks/useUploadReceipt.js.map +2 -2
  40. package/dist/cjs/components/credits/context/memberPriceConst.d.ts +10 -0
  41. package/dist/cjs/components/credits/context/memberPriceConst.js +2 -0
  42. package/dist/cjs/components/credits/context/memberPriceConst.js.map +7 -0
  43. package/dist/cjs/components/credits/context/memberPriceTypes.d.ts +46 -0
  44. package/dist/cjs/components/credits/context/memberPriceTypes.js +2 -0
  45. package/dist/cjs/components/credits/context/memberPriceTypes.js.map +7 -0
  46. package/dist/cjs/components/credits/context/provider.d.ts +11 -33
  47. package/dist/cjs/components/credits/context/provider.js +1 -1
  48. package/dist/cjs/components/credits/context/provider.js.map +3 -3
  49. package/dist/cjs/components/credits/context/utils/atobID.d.ts +1 -0
  50. package/dist/cjs/components/credits/context/utils/atobID.js +2 -0
  51. package/dist/cjs/components/credits/context/utils/atobID.js.map +7 -0
  52. package/dist/cjs/components/credits/context/utils/functionDiscountCalculate.d.ts +5 -0
  53. package/dist/cjs/components/credits/context/utils/functionDiscountCalculate.js +2 -0
  54. package/dist/cjs/components/credits/context/utils/functionDiscountCalculate.js.map +7 -0
  55. package/dist/cjs/components/credits/context/utils/getFunctionMemberPrice.d.ts +8 -0
  56. package/dist/cjs/components/credits/context/utils/getFunctionMemberPrice.js +2 -0
  57. package/dist/cjs/components/credits/context/utils/getFunctionMemberPrice.js.map +7 -0
  58. package/dist/cjs/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.d.ts +9 -0
  59. package/dist/cjs/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.js +2 -0
  60. package/dist/cjs/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.js.map +7 -0
  61. package/dist/cjs/components/credits/context/utils/variantGetCoupon.d.ts +6 -0
  62. package/dist/cjs/components/credits/context/utils/variantGetCoupon.js +2 -0
  63. package/dist/cjs/components/credits/context/utils/variantGetCoupon.js.map +7 -0
  64. package/dist/cjs/components/credits/context/utils.d.ts +4 -0
  65. package/dist/cjs/components/credits/context/utils.js +1 -1
  66. package/dist/cjs/components/credits/context/utils.js.map +3 -3
  67. package/dist/cjs/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.d.ts +4 -0
  68. package/dist/cjs/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js +2 -0
  69. package/dist/cjs/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js.map +7 -0
  70. package/dist/cjs/components/credits/creditsAnkersolixTask/index.d.ts +2 -0
  71. package/dist/cjs/components/credits/creditsAnkersolixTask/index.js +2 -0
  72. package/dist/cjs/components/credits/creditsAnkersolixTask/index.js.map +7 -0
  73. package/dist/cjs/components/credits/creditsAnkersolixTask/type.d.ts +1 -0
  74. package/dist/cjs/components/credits/creditsAnkersolixTask/type.js +2 -0
  75. package/dist/cjs/components/credits/creditsAnkersolixTask/type.js.map +7 -0
  76. package/dist/cjs/components/credits/creditsBanner/index.d.ts +17 -16
  77. package/dist/cjs/components/credits/creditsBanner/index.js +2 -0
  78. package/dist/cjs/components/credits/creditsBanner/index.js.map +7 -0
  79. package/dist/cjs/components/credits/creditsBenefits/benefitItem.d.ts +4 -1
  80. package/dist/cjs/components/credits/creditsBenefits/benefitItem.js +2 -0
  81. package/dist/cjs/components/credits/creditsBenefits/benefitItem.js.map +7 -0
  82. package/dist/cjs/components/credits/{credits-benefits → creditsBenefits}/iconInfo.js +1 -1
  83. package/dist/cjs/components/credits/{credits-benefits → creditsBenefits}/iconInfo.js.map +2 -2
  84. package/dist/cjs/components/credits/creditsBenefits/index.d.ts +12 -9
  85. package/dist/cjs/components/credits/creditsBenefits/index.js +4 -0
  86. package/dist/cjs/components/credits/creditsBenefits/index.js.map +7 -0
  87. package/dist/cjs/components/credits/creditsCash/CreditsCash.d.ts +5 -0
  88. package/dist/cjs/components/credits/creditsCash/CreditsCash.js +2 -0
  89. package/dist/cjs/components/credits/creditsCash/CreditsCash.js.map +7 -0
  90. package/dist/cjs/components/credits/creditsCash/RedeemableItem.d.ts +1 -7
  91. package/dist/cjs/components/credits/creditsCash/RedeemableItem.js +2 -0
  92. package/dist/cjs/components/credits/creditsCash/RedeemableItem.js.map +7 -0
  93. package/dist/cjs/components/credits/creditsCash/index.d.ts +2 -13
  94. package/dist/cjs/components/credits/creditsCash/index.js +2 -0
  95. package/dist/cjs/components/credits/creditsCash/index.js.map +7 -0
  96. package/dist/cjs/components/credits/creditsCash/type.d.ts +2 -4
  97. package/dist/cjs/components/credits/creditsCash/type.js +2 -0
  98. package/dist/cjs/components/credits/creditsCash/type.js.map +7 -0
  99. package/dist/cjs/components/credits/creditsFaq/faqItem/FaqItem.js +2 -0
  100. package/dist/cjs/components/credits/creditsFaq/faqItem/FaqItem.js.map +7 -0
  101. package/dist/cjs/components/credits/creditsFaq/index.d.ts +4 -3
  102. package/dist/cjs/components/credits/creditsFaq/index.js +2 -0
  103. package/dist/cjs/components/credits/creditsFaq/index.js.map +7 -0
  104. package/dist/cjs/components/credits/creditsInfoCard/index.d.ts +10 -15
  105. package/dist/cjs/components/credits/creditsInfoCard/index.js +2 -0
  106. package/dist/cjs/components/credits/creditsInfoCard/index.js.map +7 -0
  107. package/dist/cjs/components/credits/creditsMemberPrice/CreditsMemberPrice.d.ts +5 -0
  108. package/dist/cjs/components/credits/creditsMemberPrice/CreditsMemberPrice.js +2 -0
  109. package/dist/cjs/components/credits/creditsMemberPrice/CreditsMemberPrice.js.map +7 -0
  110. package/dist/cjs/components/credits/creditsMemberPrice/MemberPriceItem.d.ts +7 -0
  111. package/dist/cjs/components/credits/creditsMemberPrice/MemberPriceItem.js +2 -0
  112. package/dist/cjs/components/credits/creditsMemberPrice/MemberPriceItem.js.map +7 -0
  113. package/dist/cjs/components/credits/creditsMemberPrice/Pagination.d.ts +7 -0
  114. package/dist/cjs/components/credits/creditsMemberPrice/Pagination.js +2 -0
  115. package/dist/cjs/components/credits/creditsMemberPrice/Pagination.js.map +7 -0
  116. package/dist/cjs/components/credits/creditsMemberPrice/index.d.ts +2 -0
  117. package/dist/cjs/components/credits/creditsMemberPrice/index.js +2 -0
  118. package/dist/cjs/components/credits/creditsMemberPrice/index.js.map +7 -0
  119. package/dist/cjs/components/credits/creditsMemberPrice/type.d.ts +64 -0
  120. package/dist/cjs/components/credits/creditsMemberPrice/type.js +2 -0
  121. package/dist/cjs/components/credits/creditsMemberPrice/type.js.map +7 -0
  122. package/dist/cjs/components/credits/creditsNavigation/CreditsNavigation.d.ts +4 -0
  123. package/dist/cjs/components/credits/creditsNavigation/CreditsNavigation.js +2 -0
  124. package/dist/cjs/components/credits/creditsNavigation/CreditsNavigation.js.map +7 -0
  125. package/dist/cjs/components/credits/creditsNavigation/index.d.ts +2 -0
  126. package/dist/cjs/components/credits/creditsNavigation/index.js +2 -0
  127. package/dist/cjs/components/credits/creditsNavigation/index.js.map +7 -0
  128. package/dist/cjs/components/credits/creditsNavigation/type.d.ts +7 -0
  129. package/dist/cjs/components/credits/creditsNavigation/type.js +2 -0
  130. package/dist/cjs/components/credits/creditsNavigation/type.js.map +7 -0
  131. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/CountrySelect.js +2 -0
  132. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/CountrySelect.js.map +7 -0
  133. package/dist/cjs/components/credits/{credits-redeem-list/address-form/form-item.js → creditsRedeemList/AddressForm/FormItem.js} +1 -1
  134. package/dist/cjs/components/credits/{credits-redeem-list/address-form/form-item.js.map → creditsRedeemList/AddressForm/FormItem.js.map} +2 -2
  135. package/dist/cjs/components/credits/{credits-redeem-list/address-form → creditsRedeemList/AddressForm}/Input.js.map +1 -1
  136. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/StateSelect.js +2 -0
  137. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/StateSelect.js.map +7 -0
  138. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/index.js +2 -0
  139. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/index.js.map +7 -0
  140. package/dist/cjs/components/credits/{credits-redeem-list/address-form → creditsRedeemList/AddressForm}/type.js.map +1 -1
  141. package/dist/cjs/components/credits/creditsRedeemList/CreditsRedeemList.d.ts +5 -0
  142. package/dist/cjs/components/credits/creditsRedeemList/CreditsRedeemList.js +2 -0
  143. package/dist/cjs/components/credits/creditsRedeemList/CreditsRedeemList.js.map +7 -0
  144. package/dist/cjs/components/credits/creditsRedeemList/NonProductValue.d.ts +4 -0
  145. package/dist/cjs/components/credits/creditsRedeemList/NonProductValue.js +2 -0
  146. package/dist/cjs/components/credits/creditsRedeemList/NonProductValue.js.map +7 -0
  147. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal.js +2 -0
  148. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal.js.map +7 -0
  149. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Address.js +2 -0
  150. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Address.js.map +7 -0
  151. package/dist/cjs/components/credits/{credits-redeem-list/redeem-product-modal → creditsRedeemList/RedeemProductModal}/Error.js +1 -1
  152. package/dist/cjs/components/credits/{credits-redeem-list/redeem-product-modal → creditsRedeemList/RedeemProductModal}/Error.js.map +3 -3
  153. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Init.js +2 -0
  154. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Init.js.map +7 -0
  155. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.d.ts +6 -0
  156. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.js +2 -0
  157. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.js.map +7 -0
  158. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js +2 -0
  159. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js.map +7 -0
  160. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Success.js +2 -0
  161. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Success.js.map +7 -0
  162. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/index.js +2 -0
  163. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/index.js.map +7 -0
  164. package/dist/cjs/components/credits/creditsRedeemList/RedeemableItem.js +2 -0
  165. package/dist/cjs/components/credits/creditsRedeemList/RedeemableItem.js.map +7 -0
  166. package/dist/cjs/components/credits/creditsRedeemList/index.d.ts +2 -13
  167. package/dist/cjs/components/credits/creditsRedeemList/index.js +2 -0
  168. package/dist/cjs/components/credits/creditsRedeemList/index.js.map +7 -0
  169. package/dist/cjs/components/credits/creditsRedeemList/type.d.ts +2 -15
  170. package/dist/cjs/components/credits/creditsRedeemList/type.js.map +7 -0
  171. package/dist/cjs/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.d.ts +4 -0
  172. package/dist/cjs/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js +2 -0
  173. package/dist/cjs/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js.map +7 -0
  174. package/dist/cjs/components/credits/creditsWaysToGetCredits/index.d.ts +2 -2
  175. package/dist/cjs/components/credits/creditsWaysToGetCredits/index.js +2 -0
  176. package/dist/cjs/components/credits/creditsWaysToGetCredits/index.js.map +7 -0
  177. package/dist/cjs/components/credits/creditsWaysToGetCredits/type.d.ts +5 -16
  178. package/dist/cjs/components/credits/creditsWaysToGetCredits/type.js +2 -0
  179. package/dist/cjs/components/credits/creditsWaysToGetCredits/type.js.map +7 -0
  180. package/dist/cjs/components/credits/creditsWaysToGetCredits/useActions.d.ts +11 -2
  181. package/dist/cjs/components/credits/creditsWaysToGetCredits/useActions.js +2 -0
  182. package/dist/cjs/components/credits/creditsWaysToGetCredits/useActions.js.map +7 -0
  183. package/dist/cjs/components/credits/modal/MyRewardsModal.d.ts +4 -1
  184. package/dist/cjs/components/credits/modal/MyRewardsModal.js +1 -1
  185. package/dist/cjs/components/credits/modal/MyRewardsModal.js.map +3 -3
  186. package/dist/cjs/components/credits/modal/activitiesModal.d.ts +4 -1
  187. package/dist/cjs/components/credits/modal/activitiesModal.js +1 -1
  188. package/dist/cjs/components/credits/modal/activitiesModal.js.map +3 -3
  189. package/dist/cjs/components/credits/modal/creditsUploadReceiptModal.js +1 -1
  190. package/dist/cjs/components/credits/modal/creditsUploadReceiptModal.js.map +3 -3
  191. package/dist/cjs/components/credits/modal/loadingDots.d.ts +2 -1
  192. package/dist/cjs/components/credits/modal/loadingDots.js +1 -1
  193. package/dist/cjs/components/credits/modal/loadingDots.js.map +3 -3
  194. package/dist/cjs/components/credits/modal/modalContainer.js +1 -1
  195. package/dist/cjs/components/credits/modal/modalContainer.js.map +3 -3
  196. package/dist/cjs/components/credits/modal/rulesModal.js +1 -1
  197. package/dist/cjs/components/credits/modal/rulesModal.js.map +3 -3
  198. package/dist/cjs/components/credits/modal/subscribeModal.d.ts +15 -0
  199. package/dist/cjs/components/credits/modal/subscribeModal.js +2 -0
  200. package/dist/cjs/components/credits/modal/subscribeModal.js.map +7 -0
  201. package/dist/cjs/components/credits/modal/tip.js +1 -1
  202. package/dist/cjs/components/credits/modal/tip.js.map +3 -3
  203. package/dist/cjs/components/credits/type.d.ts +24 -5
  204. package/dist/cjs/components/credits/type.js +1 -1
  205. package/dist/cjs/components/credits/type.js.map +1 -1
  206. package/dist/cjs/components/index.d.ts +2 -1
  207. package/dist/cjs/components/index.js +1 -1
  208. package/dist/cjs/components/index.js.map +2 -2
  209. package/dist/cjs/components/registration/authCodeActivate/Message.d.ts +4 -0
  210. package/dist/cjs/components/registration/authCodeActivate/Message.js +2 -0
  211. package/dist/cjs/components/registration/authCodeActivate/Message.js.map +7 -0
  212. package/dist/cjs/components/registration/authCodeActivate/index.d.ts +3 -0
  213. package/dist/cjs/components/registration/authCodeActivate/index.js +2 -0
  214. package/dist/cjs/components/registration/authCodeActivate/index.js.map +7 -0
  215. package/dist/cjs/components/registration/authCodeActivate/type.d.ts +22 -0
  216. package/dist/cjs/components/registration/authCodeActivate/type.js +2 -0
  217. package/dist/cjs/components/registration/authCodeActivate/type.js.map +7 -0
  218. package/dist/cjs/components/registration/context/index.d.ts +1 -0
  219. package/dist/cjs/components/registration/context/index.js +2 -0
  220. package/dist/cjs/components/registration/context/index.js.map +7 -0
  221. package/dist/cjs/components/registration/context/provider.d.ts +27 -0
  222. package/dist/cjs/components/registration/context/provider.js +2 -0
  223. package/dist/cjs/components/registration/context/provider.js.map +7 -0
  224. package/dist/cjs/components/registration/index.d.ts +2 -0
  225. package/dist/cjs/components/registration/index.js +2 -0
  226. package/dist/cjs/components/registration/index.js.map +7 -0
  227. package/dist/cjs/components/registration/modalContainer.d.ts +14 -0
  228. package/dist/cjs/components/registration/modalContainer.js +2 -0
  229. package/dist/cjs/components/registration/modalContainer.js.map +7 -0
  230. package/dist/cjs/constants.d.ts +1 -0
  231. package/dist/cjs/constants.js +2 -0
  232. package/dist/cjs/constants.js.map +7 -0
  233. package/dist/cjs/debug-env.js +2 -0
  234. package/dist/cjs/debug-env.js.map +7 -0
  235. package/dist/cjs/helpers/fetcher.d.ts +1 -1
  236. package/dist/cjs/helpers/fetcher.js +1 -1
  237. package/dist/cjs/helpers/fetcher.js.map +3 -3
  238. package/dist/cjs/helpers/index.d.ts +2 -2
  239. package/dist/cjs/helpers/index.js +1 -1
  240. package/dist/cjs/helpers/index.js.map +2 -2
  241. package/dist/cjs/helpers/track.d.ts +6 -2
  242. package/dist/cjs/helpers/track.js +1 -1
  243. package/dist/cjs/helpers/track.js.map +3 -3
  244. package/dist/cjs/index.d.ts +3 -2
  245. package/dist/cjs/index.js +1 -726
  246. package/dist/cjs/index.js.map +4 -4
  247. package/dist/cjs/stories/chat.stories.js +2 -0
  248. package/dist/cjs/stories/chat.stories.js.map +7 -0
  249. package/dist/cjs/templates/credits.d.ts +73 -0
  250. package/dist/cjs/templates/credits.js +2 -0
  251. package/dist/cjs/templates/credits.js.map +7 -0
  252. package/dist/cjs/templates/index.d.ts +1 -0
  253. package/dist/cjs/templates/index.js +2 -0
  254. package/dist/cjs/templates/index.js.map +7 -0
  255. package/dist/esm/components/chat/index.js +1 -1
  256. package/dist/esm/components/chat/index.js.map +2 -2
  257. package/dist/esm/components/credits/context/const.d.ts +2 -1
  258. package/dist/esm/components/credits/context/const.js +1 -1
  259. package/dist/esm/components/credits/context/const.js.map +2 -2
  260. package/dist/esm/components/credits/context/hooks/useActivities.js +1 -1
  261. package/dist/esm/components/credits/context/hooks/useActivities.js.map +3 -3
  262. package/dist/esm/components/credits/context/hooks/useAddressValidate.js +1 -1
  263. package/dist/esm/components/credits/context/hooks/useAddressValidate.js.map +3 -3
  264. package/dist/esm/components/credits/context/hooks/useAlpcFetch.js +1 -1
  265. package/dist/esm/components/credits/context/hooks/useAlpcFetch.js.map +3 -3
  266. package/dist/esm/components/credits/context/hooks/useCountries.js +1 -1
  267. package/dist/esm/components/credits/context/hooks/useCountries.js.map +3 -3
  268. package/dist/esm/components/credits/context/hooks/useFunctionMemberPrice.d.ts +7 -0
  269. package/dist/esm/components/credits/context/hooks/useFunctionMemberPrice.js +2 -0
  270. package/dist/esm/components/credits/context/hooks/useFunctionMemberPrice.js.map +7 -0
  271. package/dist/esm/components/credits/context/hooks/useMyRewards.js +1 -1
  272. package/dist/esm/components/credits/context/hooks/useMyRewards.js.map +3 -3
  273. package/dist/esm/components/credits/context/hooks/useRedeemAndBuy.d.ts +5 -10
  274. package/dist/esm/components/credits/context/hooks/useRedeemAndBuy.js +1 -1
  275. package/dist/esm/components/credits/context/hooks/useRedeemAndBuy.js.map +3 -3
  276. package/dist/esm/components/credits/context/hooks/useRedeemCoupon.d.ts +2 -1
  277. package/dist/esm/components/credits/context/hooks/useRedeemCoupon.js +1 -1
  278. package/dist/esm/components/credits/context/hooks/useRedeemCoupon.js.map +3 -3
  279. package/dist/esm/components/credits/context/hooks/useRedeemProduct.js +1 -1
  280. package/dist/esm/components/credits/context/hooks/useRedeemProduct.js.map +3 -3
  281. package/dist/esm/components/credits/context/hooks/useRedeemableList.js +1 -1
  282. package/dist/esm/components/credits/context/hooks/useRedeemableList.js.map +3 -3
  283. package/dist/esm/components/credits/context/hooks/useSendEmailValidation.js +1 -1
  284. package/dist/esm/components/credits/context/hooks/useSendEmailValidation.js.map +3 -3
  285. package/dist/esm/components/credits/context/hooks/useSubscribed.js +1 -1
  286. package/dist/esm/components/credits/context/hooks/useSubscribed.js.map +3 -3
  287. package/dist/esm/components/credits/context/hooks/useSubscriptions.d.ts +7 -3
  288. package/dist/esm/components/credits/context/hooks/useSubscriptions.js +1 -1
  289. package/dist/esm/components/credits/context/hooks/useSubscriptions.js.map +3 -3
  290. package/dist/esm/components/credits/context/hooks/useUploadReceipt.js +1 -1
  291. package/dist/esm/components/credits/context/hooks/useUploadReceipt.js.map +2 -2
  292. package/dist/esm/components/credits/context/memberPriceConst.d.ts +10 -0
  293. package/dist/esm/components/credits/context/memberPriceConst.js +2 -0
  294. package/dist/esm/components/credits/context/memberPriceConst.js.map +7 -0
  295. package/dist/esm/components/credits/context/memberPriceTypes.d.ts +46 -0
  296. package/dist/esm/components/credits/context/memberPriceTypes.js +1 -0
  297. package/dist/esm/components/credits/context/provider.d.ts +11 -33
  298. package/dist/esm/components/credits/context/provider.js +1 -1
  299. package/dist/esm/components/credits/context/provider.js.map +3 -3
  300. package/dist/esm/components/credits/context/utils/atobID.d.ts +1 -0
  301. package/dist/esm/components/credits/context/utils/atobID.js +2 -0
  302. package/dist/esm/components/credits/context/utils/atobID.js.map +7 -0
  303. package/dist/esm/components/credits/context/utils/functionDiscountCalculate.d.ts +5 -0
  304. package/dist/esm/components/credits/context/utils/functionDiscountCalculate.js +2 -0
  305. package/dist/esm/components/credits/context/utils/functionDiscountCalculate.js.map +7 -0
  306. package/dist/esm/components/credits/context/utils/getFunctionMemberPrice.d.ts +8 -0
  307. package/dist/esm/components/credits/context/utils/getFunctionMemberPrice.js +2 -0
  308. package/dist/esm/components/credits/context/utils/getFunctionMemberPrice.js.map +7 -0
  309. package/dist/esm/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.d.ts +9 -0
  310. package/dist/esm/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.js +2 -0
  311. package/dist/esm/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.js.map +7 -0
  312. package/dist/esm/components/credits/context/utils/variantGetCoupon.d.ts +6 -0
  313. package/dist/esm/components/credits/context/utils/variantGetCoupon.js +2 -0
  314. package/dist/esm/components/credits/context/utils/variantGetCoupon.js.map +7 -0
  315. package/dist/esm/components/credits/context/utils.d.ts +4 -0
  316. package/dist/esm/components/credits/context/utils.js +1 -1
  317. package/dist/esm/components/credits/context/utils.js.map +3 -3
  318. package/dist/esm/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.d.ts +4 -0
  319. package/dist/esm/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js +2 -0
  320. package/dist/esm/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js.map +7 -0
  321. package/dist/esm/components/credits/creditsAnkersolixTask/index.d.ts +2 -0
  322. package/dist/esm/components/credits/creditsAnkersolixTask/index.js +2 -0
  323. package/dist/esm/components/credits/creditsAnkersolixTask/index.js.map +7 -0
  324. package/dist/esm/components/credits/creditsAnkersolixTask/type.d.ts +1 -0
  325. package/dist/esm/components/credits/creditsAnkersolixTask/type.js +2 -0
  326. package/dist/esm/components/credits/creditsAnkersolixTask/type.js.map +7 -0
  327. package/dist/esm/components/credits/creditsBanner/index.d.ts +17 -16
  328. package/dist/esm/components/credits/creditsBanner/index.js +1 -1
  329. package/dist/esm/components/credits/creditsBanner/index.js.map +3 -3
  330. package/dist/esm/components/credits/creditsBenefits/benefitItem.d.ts +4 -1
  331. package/dist/esm/components/credits/creditsBenefits/benefitItem.js +2 -2
  332. package/dist/esm/components/credits/creditsBenefits/benefitItem.js.map +4 -4
  333. package/dist/esm/components/credits/creditsBenefits/iconInfo.js +1 -1
  334. package/dist/esm/components/credits/creditsBenefits/iconInfo.js.map +2 -2
  335. package/dist/esm/components/credits/creditsBenefits/index.d.ts +12 -9
  336. package/dist/esm/components/credits/creditsBenefits/index.js +3 -3
  337. package/dist/esm/components/credits/creditsBenefits/index.js.map +3 -3
  338. package/dist/esm/components/credits/creditsCash/CreditsCash.d.ts +5 -0
  339. package/dist/esm/components/credits/creditsCash/CreditsCash.js +2 -0
  340. package/dist/esm/components/credits/creditsCash/CreditsCash.js.map +7 -0
  341. package/dist/esm/components/credits/creditsCash/RedeemableItem.d.ts +1 -7
  342. package/dist/esm/components/credits/creditsCash/RedeemableItem.js +1 -1
  343. package/dist/esm/components/credits/creditsCash/RedeemableItem.js.map +3 -3
  344. package/dist/esm/components/credits/creditsCash/index.d.ts +2 -13
  345. package/dist/esm/components/credits/creditsCash/index.js +1 -1
  346. package/dist/esm/components/credits/creditsCash/index.js.map +4 -4
  347. package/dist/esm/components/credits/creditsCash/type.d.ts +2 -4
  348. package/dist/esm/components/credits/creditsFaq/faqItem/FaqItem.js +1 -1
  349. package/dist/esm/components/credits/creditsFaq/faqItem/FaqItem.js.map +2 -2
  350. package/dist/esm/components/credits/creditsFaq/index.d.ts +4 -3
  351. package/dist/esm/components/credits/creditsFaq/index.js +1 -1
  352. package/dist/esm/components/credits/creditsFaq/index.js.map +3 -3
  353. package/dist/esm/components/credits/creditsInfoCard/index.d.ts +10 -15
  354. package/dist/esm/components/credits/creditsInfoCard/index.js +1 -1
  355. package/dist/esm/components/credits/creditsInfoCard/index.js.map +3 -3
  356. package/dist/esm/components/credits/creditsMemberPrice/CreditsMemberPrice.d.ts +5 -0
  357. package/dist/esm/components/credits/creditsMemberPrice/CreditsMemberPrice.js +2 -0
  358. package/dist/esm/components/credits/creditsMemberPrice/CreditsMemberPrice.js.map +7 -0
  359. package/dist/esm/components/credits/creditsMemberPrice/MemberPriceItem.d.ts +7 -0
  360. package/dist/esm/components/credits/creditsMemberPrice/MemberPriceItem.js +2 -0
  361. package/dist/esm/components/credits/creditsMemberPrice/MemberPriceItem.js.map +7 -0
  362. package/dist/esm/components/credits/creditsMemberPrice/Pagination.d.ts +7 -0
  363. package/dist/esm/components/credits/creditsMemberPrice/Pagination.js +2 -0
  364. package/dist/esm/components/credits/creditsMemberPrice/Pagination.js.map +7 -0
  365. package/dist/esm/components/credits/creditsMemberPrice/index.d.ts +2 -0
  366. package/dist/esm/components/credits/creditsMemberPrice/index.js +2 -0
  367. package/dist/esm/components/credits/creditsMemberPrice/index.js.map +7 -0
  368. package/dist/esm/components/credits/creditsMemberPrice/type.d.ts +64 -0
  369. package/dist/esm/components/credits/creditsNavigation/CreditsNavigation.d.ts +4 -0
  370. package/dist/esm/components/credits/creditsNavigation/CreditsNavigation.js +2 -0
  371. package/dist/esm/components/credits/creditsNavigation/CreditsNavigation.js.map +7 -0
  372. package/dist/esm/components/credits/creditsNavigation/index.d.ts +2 -0
  373. package/dist/esm/components/credits/creditsNavigation/index.js +2 -0
  374. package/dist/esm/components/credits/creditsNavigation/index.js.map +7 -0
  375. package/dist/esm/components/credits/creditsNavigation/type.d.ts +7 -0
  376. package/dist/esm/components/credits/creditsRedeemList/AddressForm/CountrySelect.js +1 -1
  377. package/dist/esm/components/credits/creditsRedeemList/AddressForm/CountrySelect.js.map +3 -3
  378. package/dist/esm/components/credits/creditsRedeemList/AddressForm/StateSelect.js +1 -1
  379. package/dist/esm/components/credits/creditsRedeemList/AddressForm/StateSelect.js.map +3 -3
  380. package/dist/esm/components/credits/creditsRedeemList/AddressForm/index.js +1 -1
  381. package/dist/esm/components/credits/creditsRedeemList/AddressForm/index.js.map +3 -3
  382. package/dist/esm/components/credits/creditsRedeemList/CreditsRedeemList.d.ts +5 -0
  383. package/dist/esm/components/credits/creditsRedeemList/CreditsRedeemList.js +2 -0
  384. package/dist/esm/components/credits/creditsRedeemList/CreditsRedeemList.js.map +7 -0
  385. package/dist/esm/components/credits/creditsRedeemList/NonProductValue.d.ts +4 -0
  386. package/dist/esm/components/credits/creditsRedeemList/NonProductValue.js +2 -0
  387. package/dist/esm/components/credits/creditsRedeemList/NonProductValue.js.map +7 -0
  388. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal.js +1 -1
  389. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal.js.map +3 -3
  390. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Address.js +1 -1
  391. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Address.js.map +3 -3
  392. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Error.js +1 -1
  393. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Error.js.map +2 -2
  394. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Init.js +1 -1
  395. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Init.js.map +3 -3
  396. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.d.ts +6 -0
  397. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.js +2 -0
  398. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.js.map +7 -0
  399. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js +1 -1
  400. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js.map +3 -3
  401. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Success.js +1 -1
  402. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Success.js.map +3 -3
  403. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/index.js +1 -1
  404. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/index.js.map +3 -3
  405. package/dist/esm/components/credits/creditsRedeemList/RedeemableItem.js +1 -1
  406. package/dist/esm/components/credits/creditsRedeemList/RedeemableItem.js.map +3 -3
  407. package/dist/esm/components/credits/creditsRedeemList/index.d.ts +2 -13
  408. package/dist/esm/components/credits/creditsRedeemList/index.js +1 -1
  409. package/dist/esm/components/credits/creditsRedeemList/index.js.map +4 -4
  410. package/dist/esm/components/credits/creditsRedeemList/type.d.ts +2 -15
  411. package/dist/esm/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.d.ts +4 -0
  412. package/dist/esm/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js +2 -0
  413. package/dist/esm/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js.map +7 -0
  414. package/dist/esm/components/credits/creditsWaysToGetCredits/index.d.ts +2 -2
  415. package/dist/esm/components/credits/creditsWaysToGetCredits/index.js +1 -1
  416. package/dist/esm/components/credits/creditsWaysToGetCredits/index.js.map +4 -4
  417. package/dist/esm/components/credits/creditsWaysToGetCredits/type.d.ts +5 -16
  418. package/dist/esm/components/credits/creditsWaysToGetCredits/type.js +1 -1
  419. package/dist/esm/components/credits/creditsWaysToGetCredits/type.js.map +2 -2
  420. package/dist/esm/components/credits/creditsWaysToGetCredits/useActions.d.ts +11 -2
  421. package/dist/esm/components/credits/creditsWaysToGetCredits/useActions.js +1 -1
  422. package/dist/esm/components/credits/creditsWaysToGetCredits/useActions.js.map +3 -3
  423. package/dist/esm/components/credits/modal/MyRewardsModal.d.ts +4 -1
  424. package/dist/esm/components/credits/modal/MyRewardsModal.js +1 -1
  425. package/dist/esm/components/credits/modal/MyRewardsModal.js.map +3 -3
  426. package/dist/esm/components/credits/modal/activitiesModal.d.ts +4 -1
  427. package/dist/esm/components/credits/modal/activitiesModal.js +1 -1
  428. package/dist/esm/components/credits/modal/activitiesModal.js.map +3 -3
  429. package/dist/esm/components/credits/modal/creditsUploadReceiptModal.js +1 -1
  430. package/dist/esm/components/credits/modal/creditsUploadReceiptModal.js.map +3 -3
  431. package/dist/esm/components/credits/modal/loadingDots.d.ts +2 -1
  432. package/dist/esm/components/credits/modal/loadingDots.js +1 -1
  433. package/dist/esm/components/credits/modal/loadingDots.js.map +3 -3
  434. package/dist/esm/components/credits/modal/modalContainer.js +1 -1
  435. package/dist/esm/components/credits/modal/modalContainer.js.map +3 -3
  436. package/dist/esm/components/credits/modal/rulesModal.js +1 -1
  437. package/dist/esm/components/credits/modal/rulesModal.js.map +2 -2
  438. package/dist/esm/components/credits/modal/subscribeModal.d.ts +15 -0
  439. package/dist/esm/components/credits/modal/subscribeModal.js +2 -0
  440. package/dist/esm/components/credits/modal/subscribeModal.js.map +7 -0
  441. package/dist/esm/components/credits/modal/tip.js +1 -1
  442. package/dist/esm/components/credits/modal/tip.js.map +3 -3
  443. package/dist/esm/components/credits/type.d.ts +24 -5
  444. package/dist/esm/components/index.d.ts +2 -1
  445. package/dist/esm/components/index.js +1 -1
  446. package/dist/esm/components/index.js.map +2 -2
  447. package/dist/esm/components/registration/authCodeActivate/Message.d.ts +4 -0
  448. package/dist/esm/components/registration/authCodeActivate/Message.js +2 -0
  449. package/dist/esm/components/registration/authCodeActivate/Message.js.map +7 -0
  450. package/dist/esm/components/registration/authCodeActivate/index.d.ts +3 -0
  451. package/dist/esm/components/registration/authCodeActivate/index.js +2 -0
  452. package/dist/esm/components/registration/authCodeActivate/index.js.map +7 -0
  453. package/dist/esm/components/registration/authCodeActivate/type.d.ts +22 -0
  454. package/dist/esm/components/registration/authCodeActivate/type.js.map +7 -0
  455. package/dist/esm/components/registration/context/index.d.ts +1 -0
  456. package/dist/esm/components/registration/context/index.js +2 -0
  457. package/dist/esm/components/registration/context/index.js.map +7 -0
  458. package/dist/esm/components/registration/context/provider.d.ts +27 -0
  459. package/dist/esm/components/registration/context/provider.js +2 -0
  460. package/dist/esm/components/registration/context/provider.js.map +7 -0
  461. package/dist/esm/components/registration/index.d.ts +2 -0
  462. package/dist/esm/components/registration/index.js +2 -0
  463. package/dist/esm/components/registration/index.js.map +7 -0
  464. package/dist/esm/components/registration/modalContainer.d.ts +14 -0
  465. package/dist/esm/components/registration/modalContainer.js +2 -0
  466. package/dist/esm/components/registration/modalContainer.js.map +7 -0
  467. package/dist/esm/constants.d.ts +1 -0
  468. package/dist/esm/constants.js +2 -0
  469. package/dist/esm/constants.js.map +7 -0
  470. package/dist/esm/helpers/fetcher.d.ts +1 -1
  471. package/dist/esm/helpers/fetcher.js +1 -1
  472. package/dist/esm/helpers/fetcher.js.map +3 -3
  473. package/dist/esm/helpers/index.d.ts +2 -2
  474. package/dist/esm/helpers/index.js +1 -1
  475. package/dist/esm/helpers/index.js.map +2 -2
  476. package/dist/esm/helpers/track.d.ts +6 -2
  477. package/dist/esm/helpers/track.js +1 -1
  478. package/dist/esm/helpers/track.js.map +3 -3
  479. package/dist/esm/index.d.ts +3 -2
  480. package/dist/esm/index.js +1 -1
  481. package/dist/esm/index.js.map +2 -2
  482. package/dist/esm/templates/credits.d.ts +73 -0
  483. package/dist/esm/templates/credits.js +2 -0
  484. package/dist/esm/templates/credits.js.map +7 -0
  485. package/dist/esm/templates/index.d.ts +1 -0
  486. package/dist/esm/templates/index.js +2 -0
  487. package/dist/esm/templates/index.js.map +7 -0
  488. package/package.json +25 -22
  489. package/src/components/chat/index.tsx +1 -1
  490. package/src/components/credits/context/const.ts +1 -0
  491. package/src/components/credits/context/hooks/useActivities.ts +4 -3
  492. package/src/components/credits/context/hooks/useAddressValidate.ts +2 -2
  493. package/src/components/credits/context/hooks/useAlpcFetch.ts +14 -10
  494. package/src/components/credits/context/hooks/useCountries.ts +2 -2
  495. package/src/components/credits/context/hooks/useFunctionMemberPrice.ts +33 -0
  496. package/src/components/credits/context/hooks/useMyRewards.ts +4 -3
  497. package/src/components/credits/context/hooks/useRedeemAndBuy.ts +21 -24
  498. package/src/components/credits/context/hooks/useRedeemCoupon.ts +7 -3
  499. package/src/components/credits/context/hooks/useRedeemProduct.ts +5 -2
  500. package/src/components/credits/context/hooks/useRedeemableList.ts +4 -18
  501. package/src/components/credits/context/hooks/useSubscribed.ts +6 -7
  502. package/src/components/credits/context/hooks/useUploadReceipt.tsx +0 -1
  503. package/src/components/credits/context/memberPriceConst.ts +13 -0
  504. package/src/components/credits/context/memberPriceTypes.ts +54 -0
  505. package/src/components/credits/context/provider.tsx +25 -20
  506. package/src/components/credits/context/utils/atobID.ts +8 -0
  507. package/src/components/credits/context/utils/functionDiscountCalculate.ts +57 -0
  508. package/src/components/credits/context/utils/getFunctionMemberPrice.ts +135 -0
  509. package/src/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.ts +51 -0
  510. package/src/components/credits/context/utils/variantGetCoupon.ts +34 -0
  511. package/src/components/credits/context/utils.ts +9 -0
  512. package/src/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.tsx +273 -0
  513. package/src/components/credits/creditsAnkersolixTask/index.ts +2 -0
  514. package/src/components/credits/creditsAnkersolixTask/type.ts +7 -0
  515. package/src/components/credits/creditsBanner/index.tsx +16 -18
  516. package/src/components/credits/creditsBenefits/BenefitItem.tsx +108 -0
  517. package/src/components/credits/creditsBenefits/index.tsx +20 -15
  518. package/src/components/credits/creditsCash/CreditsCash.tsx +84 -0
  519. package/src/components/credits/creditsCash/RedeemableItem.tsx +66 -44
  520. package/src/components/credits/creditsCash/index.ts +2 -0
  521. package/src/components/credits/creditsCash/type.ts +2 -4
  522. package/src/components/credits/creditsFaq/faqItem/FaqItem.tsx +12 -12
  523. package/src/components/credits/creditsFaq/index.tsx +9 -6
  524. package/src/components/credits/creditsInfoCard/index.tsx +43 -36
  525. package/src/components/credits/creditsMemberPrice/CreditsMemberPrice.tsx +314 -0
  526. package/src/components/credits/creditsMemberPrice/MemberPriceItem.tsx +181 -0
  527. package/src/components/credits/creditsMemberPrice/Pagination.tsx +113 -0
  528. package/src/components/credits/creditsMemberPrice/index.ts +2 -0
  529. package/src/components/credits/creditsMemberPrice/type.ts +75 -0
  530. package/src/components/credits/creditsNavigation/CreditsNavigation.tsx +123 -0
  531. package/src/components/credits/creditsNavigation/index.ts +2 -0
  532. package/src/components/credits/creditsNavigation/type.ts +10 -0
  533. package/src/components/credits/creditsRedeemList/AddressForm/CountrySelect.tsx +8 -3
  534. package/src/components/credits/creditsRedeemList/AddressForm/StateSelect.tsx +6 -1
  535. package/src/components/credits/creditsRedeemList/AddressForm/index.tsx +6 -5
  536. package/src/components/credits/creditsRedeemList/{index.tsx → CreditsRedeemList.tsx} +31 -35
  537. package/src/components/credits/creditsRedeemList/NonProductValue.tsx +39 -0
  538. package/src/components/credits/creditsRedeemList/RedeemCouponModal.tsx +11 -13
  539. package/src/components/credits/creditsRedeemList/RedeemProductModal/Address.tsx +15 -11
  540. package/src/components/credits/creditsRedeemList/RedeemProductModal/Error.tsx +1 -1
  541. package/src/components/credits/creditsRedeemList/RedeemProductModal/Init.tsx +6 -12
  542. package/src/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.tsx +25 -0
  543. package/src/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.tsx +11 -7
  544. package/src/components/credits/creditsRedeemList/RedeemProductModal/Success.tsx +5 -1
  545. package/src/components/credits/creditsRedeemList/RedeemProductModal/index.tsx +4 -5
  546. package/src/components/credits/creditsRedeemList/RedeemableItem.tsx +24 -32
  547. package/src/components/credits/creditsRedeemList/index.ts +2 -0
  548. package/src/components/credits/creditsRedeemList/type.ts +2 -16
  549. package/src/components/credits/creditsWaysToGetCredits/{index.tsx → CreditsWaysToGetCredits.tsx} +79 -20
  550. package/src/components/credits/creditsWaysToGetCredits/index.ts +2 -0
  551. package/src/components/credits/creditsWaysToGetCredits/type.ts +5 -16
  552. package/src/components/credits/creditsWaysToGetCredits/useActions.ts +24 -10
  553. package/src/components/credits/modal/MyRewardsModal.tsx +84 -63
  554. package/src/components/credits/modal/activitiesModal.tsx +62 -46
  555. package/src/components/credits/modal/creditsUploadReceiptModal.tsx +10 -1
  556. package/src/components/credits/modal/loadingDots.tsx +9 -7
  557. package/src/components/credits/modal/modalContainer.tsx +6 -1
  558. package/src/components/credits/modal/rulesModal.tsx +1 -1
  559. package/src/components/credits/modal/subscribeModal.tsx +202 -0
  560. package/src/components/credits/modal/tip.tsx +11 -1
  561. package/src/components/credits/type.ts +24 -5
  562. package/src/components/index.ts +3 -3
  563. package/src/components/registration/authCodeActivate/Message.tsx +43 -0
  564. package/src/components/registration/authCodeActivate/index.tsx +338 -0
  565. package/src/components/registration/authCodeActivate/type.ts +23 -0
  566. package/src/components/registration/context/index.tsx +1 -0
  567. package/src/components/registration/context/provider.tsx +86 -0
  568. package/src/components/registration/index.ts +2 -0
  569. package/src/components/registration/modalContainer.tsx +115 -0
  570. package/src/constants.ts +1 -0
  571. package/src/index.ts +3 -4
  572. package/src/styles/global.css +15 -0
  573. package/src/templates/Credits.tsx +165 -0
  574. package/src/templates/index.ts +1 -0
  575. package/style.css +1 -0
  576. package/tailwind.config.ts +10 -0
  577. package/dist/cjs/components/chat/chat-context.d.ts +0 -101
  578. package/dist/cjs/components/credits/credits-banner/index.d.ts +0 -23
  579. package/dist/cjs/components/credits/credits-banner/index.js +0 -2
  580. package/dist/cjs/components/credits/credits-banner/index.js.map +0 -7
  581. package/dist/cjs/components/credits/credits-benefits/benefitItem.d.ts +0 -19
  582. package/dist/cjs/components/credits/credits-benefits/benefitItem.js +0 -2
  583. package/dist/cjs/components/credits/credits-benefits/benefitItem.js.map +0 -7
  584. package/dist/cjs/components/credits/credits-benefits/iconInfo.d.ts +0 -2
  585. package/dist/cjs/components/credits/credits-benefits/index.d.ts +0 -12
  586. package/dist/cjs/components/credits/credits-benefits/index.js +0 -4
  587. package/dist/cjs/components/credits/credits-benefits/index.js.map +0 -7
  588. package/dist/cjs/components/credits/credits-cash/RedeemableItem.d.ts +0 -15
  589. package/dist/cjs/components/credits/credits-cash/RedeemableItem.js +0 -2
  590. package/dist/cjs/components/credits/credits-cash/RedeemableItem.js.map +0 -7
  591. package/dist/cjs/components/credits/credits-cash/index.d.ts +0 -13
  592. package/dist/cjs/components/credits/credits-cash/index.js +0 -2
  593. package/dist/cjs/components/credits/credits-cash/index.js.map +0 -7
  594. package/dist/cjs/components/credits/credits-cash/type.d.ts +0 -47
  595. package/dist/cjs/components/credits/credits-cash/type.js +0 -2
  596. package/dist/cjs/components/credits/credits-cash/type.js.map +0 -7
  597. package/dist/cjs/components/credits/credits-faq/faq-item/FaqItem.d.ts +0 -13
  598. package/dist/cjs/components/credits/credits-faq/faq-item/faq-item.d.ts +0 -13
  599. package/dist/cjs/components/credits/credits-faq/faq-item/faq-item.js +0 -2
  600. package/dist/cjs/components/credits/credits-faq/faq-item/faq-item.js.map +0 -7
  601. package/dist/cjs/components/credits/credits-faq/faqItem/FaqItem.d.ts +0 -13
  602. package/dist/cjs/components/credits/credits-faq/index.d.ts +0 -16
  603. package/dist/cjs/components/credits/credits-faq/index.js +0 -2
  604. package/dist/cjs/components/credits/credits-faq/index.js.map +0 -7
  605. package/dist/cjs/components/credits/credits-info-card/index.d.ts +0 -20
  606. package/dist/cjs/components/credits/credits-info-card/index.js +0 -2
  607. package/dist/cjs/components/credits/credits-info-card/index.js.map +0 -7
  608. package/dist/cjs/components/credits/credits-redeem-list/AddressForm/Input.d.ts +0 -13
  609. package/dist/cjs/components/credits/credits-redeem-list/AddressForm/country-select.d.ts +0 -14
  610. package/dist/cjs/components/credits/credits-redeem-list/AddressForm/form-item.d.ts +0 -6
  611. package/dist/cjs/components/credits/credits-redeem-list/AddressForm/index.d.ts +0 -2
  612. package/dist/cjs/components/credits/credits-redeem-list/AddressForm/state-select.d.ts +0 -15
  613. package/dist/cjs/components/credits/credits-redeem-list/AddressForm/type.d.ts +0 -26
  614. package/dist/cjs/components/credits/credits-redeem-list/RedeemCouponModal.d.ts +0 -9
  615. package/dist/cjs/components/credits/credits-redeem-list/RedeemProductModal/Address.d.ts +0 -20
  616. package/dist/cjs/components/credits/credits-redeem-list/RedeemProductModal/Error.d.ts +0 -8
  617. package/dist/cjs/components/credits/credits-redeem-list/RedeemProductModal/Init.d.ts +0 -11
  618. package/dist/cjs/components/credits/credits-redeem-list/RedeemProductModal/ProductInfo.d.ts +0 -8
  619. package/dist/cjs/components/credits/credits-redeem-list/RedeemProductModal/Success.d.ts +0 -13
  620. package/dist/cjs/components/credits/credits-redeem-list/RedeemProductModal/index.d.ts +0 -11
  621. package/dist/cjs/components/credits/credits-redeem-list/RedeemableItem.d.ts +0 -9
  622. package/dist/cjs/components/credits/credits-redeem-list/RedeemableItem.js +0 -2
  623. package/dist/cjs/components/credits/credits-redeem-list/RedeemableItem.js.map +0 -7
  624. package/dist/cjs/components/credits/credits-redeem-list/address-form/Input.d.ts +0 -13
  625. package/dist/cjs/components/credits/credits-redeem-list/address-form/country-select.d.ts +0 -14
  626. package/dist/cjs/components/credits/credits-redeem-list/address-form/country-select.js +0 -2
  627. package/dist/cjs/components/credits/credits-redeem-list/address-form/country-select.js.map +0 -7
  628. package/dist/cjs/components/credits/credits-redeem-list/address-form/form-item.d.ts +0 -6
  629. package/dist/cjs/components/credits/credits-redeem-list/address-form/index.d.ts +0 -2
  630. package/dist/cjs/components/credits/credits-redeem-list/address-form/index.js +0 -2
  631. package/dist/cjs/components/credits/credits-redeem-list/address-form/index.js.map +0 -7
  632. package/dist/cjs/components/credits/credits-redeem-list/address-form/state-select.d.ts +0 -15
  633. package/dist/cjs/components/credits/credits-redeem-list/address-form/state-select.js +0 -2
  634. package/dist/cjs/components/credits/credits-redeem-list/address-form/state-select.js.map +0 -7
  635. package/dist/cjs/components/credits/credits-redeem-list/address-form/type.d.ts +0 -26
  636. package/dist/cjs/components/credits/credits-redeem-list/index.d.ts +0 -13
  637. package/dist/cjs/components/credits/credits-redeem-list/index.js +0 -2
  638. package/dist/cjs/components/credits/credits-redeem-list/index.js.map +0 -7
  639. package/dist/cjs/components/credits/credits-redeem-list/redeem-coupon-modal.d.ts +0 -9
  640. package/dist/cjs/components/credits/credits-redeem-list/redeem-coupon-modal.js +0 -2
  641. package/dist/cjs/components/credits/credits-redeem-list/redeem-coupon-modal.js.map +0 -7
  642. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/Address.d.ts +0 -20
  643. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/Address.js +0 -2
  644. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/Address.js.map +0 -7
  645. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/Error.d.ts +0 -8
  646. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/Init.d.ts +0 -11
  647. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/Init.js +0 -2
  648. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/Init.js.map +0 -7
  649. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/ProductInfo.d.ts +0 -8
  650. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/ProductInfo.js +0 -2
  651. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/ProductInfo.js.map +0 -7
  652. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/Success.d.ts +0 -13
  653. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/Success.js +0 -2
  654. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/Success.js.map +0 -7
  655. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/index.d.ts +0 -11
  656. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/index.js +0 -2
  657. package/dist/cjs/components/credits/credits-redeem-list/redeem-product-modal/index.js.map +0 -7
  658. package/dist/cjs/components/credits/credits-redeem-list/type.d.ts +0 -77
  659. package/dist/cjs/components/credits/credits-redeem-list/type.js.map +0 -7
  660. package/dist/cjs/components/credits/credits-ways-to-get-credits/index.d.ts +0 -2
  661. package/dist/cjs/components/credits/credits-ways-to-get-credits/index.js +0 -2
  662. package/dist/cjs/components/credits/credits-ways-to-get-credits/index.js.map +0 -7
  663. package/dist/cjs/components/credits/credits-ways-to-get-credits/type.d.ts +0 -60
  664. package/dist/cjs/components/credits/credits-ways-to-get-credits/type.js +0 -2
  665. package/dist/cjs/components/credits/credits-ways-to-get-credits/type.js.map +0 -7
  666. package/dist/cjs/components/credits/credits-ways-to-get-credits/useActions.d.ts +0 -96
  667. package/dist/cjs/components/credits/credits-ways-to-get-credits/useActions.js +0 -2
  668. package/dist/cjs/components/credits/credits-ways-to-get-credits/useActions.js.map +0 -7
  669. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/country-select.d.ts +0 -14
  670. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/form-item.d.ts +0 -6
  671. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/state-select.d.ts +0 -15
  672. package/dist/cjs/index.css +0 -2
  673. package/dist/cjs/index.css.map +0 -7
  674. package/dist/cjs/shopify/context/ShopifyProvider.d.ts +0 -10
  675. package/dist/cjs/shopify/context/index.d.ts +0 -1
  676. package/dist/cjs/shopify/context/shopify-provider.d.ts +0 -10
  677. package/dist/cjs/shopify/fetchers/create-cart.d.ts +0 -12
  678. package/dist/cjs/shopify/fetchers/get-products-by-handles.d.ts +0 -7
  679. package/dist/cjs/shopify/fetchers/index.d.ts +0 -2
  680. package/dist/cjs/shopify/fragments/article.d.ts +0 -2
  681. package/dist/cjs/shopify/fragments/blog.d.ts +0 -1
  682. package/dist/cjs/shopify/fragments/cart.d.ts +0 -1
  683. package/dist/cjs/shopify/fragments/collection.d.ts +0 -1
  684. package/dist/cjs/shopify/fragments/image.d.ts +0 -1
  685. package/dist/cjs/shopify/fragments/index.d.ts +0 -11
  686. package/dist/cjs/shopify/fragments/metafields.d.ts +0 -2
  687. package/dist/cjs/shopify/fragments/page-info.d.ts +0 -1
  688. package/dist/cjs/shopify/fragments/page.d.ts +0 -1
  689. package/dist/cjs/shopify/fragments/product.d.ts +0 -1
  690. package/dist/cjs/shopify/fragments/seo.d.ts +0 -1
  691. package/dist/cjs/shopify/fragments/variant.d.ts +0 -1
  692. package/dist/cjs/shopify/gql/fragment-masking.d.ts +0 -15
  693. package/dist/cjs/shopify/gql/gql.d.ts +0 -87
  694. package/dist/cjs/shopify/gql/graphql.d.ts +0 -7669
  695. package/dist/cjs/shopify/gql/index.d.ts +0 -3
  696. package/dist/cjs/shopify/hooks/index.d.ts +0 -2
  697. package/dist/cjs/shopify/hooks/use-create-cart.d.ts +0 -2
  698. package/dist/cjs/shopify/hooks/use-products-by-handles.d.ts +0 -4
  699. package/dist/cjs/shopify/hooks/useCreateCart.d.ts +0 -2
  700. package/dist/cjs/shopify/hooks/useProductsByHandles.d.ts +0 -4
  701. package/dist/cjs/shopify/mutations/create-cart.d.ts +0 -1
  702. package/dist/cjs/shopify/queries/get-product-by-handles.d.ts +0 -1
  703. package/dist/cjs/shopify/queries/index.d.ts +0 -1
  704. package/dist/cjs/shopify/src/index.d.ts +0 -5
  705. package/dist/cjs/shopify/tsup.config.d.ts +0 -2
  706. package/dist/cjs/shopify/types/article.d.ts +0 -48
  707. package/dist/cjs/shopify/types/cart.d.ts +0 -173
  708. package/dist/cjs/shopify/types/checkout.d.ts +0 -42
  709. package/dist/cjs/shopify/types/collection.d.ts +0 -122
  710. package/dist/cjs/shopify/types/common.d.ts +0 -42
  711. package/dist/cjs/shopify/types/config.d.ts +0 -12
  712. package/dist/cjs/shopify/types/customer.d.ts +0 -30
  713. package/dist/cjs/shopify/types/fetcher.d.ts +0 -38
  714. package/dist/cjs/shopify/types/index.d.ts +0 -12
  715. package/dist/cjs/shopify/types/page.d.ts +0 -33
  716. package/dist/cjs/shopify/types/product.d.ts +0 -174
  717. package/dist/cjs/shopify/types/search.d.ts +0 -54
  718. package/dist/cjs/shopify/types/site.d.ts +0 -33
  719. package/dist/cjs/shopify/types/type-helper.d.ts +0 -5
  720. package/dist/cjs/shopify/utils/colors.d.ts +0 -3
  721. package/dist/cjs/shopify/utils/const.d.ts +0 -76
  722. package/dist/cjs/shopify/utils/cookie.d.ts +0 -15
  723. package/dist/cjs/shopify/utils/errors.d.ts +0 -38
  724. package/dist/cjs/shopify/utils/fetch-graphql-api.d.ts +0 -19
  725. package/dist/cjs/shopify/utils/handle-fetch-response.d.ts +0 -5
  726. package/dist/cjs/shopify/utils/helper.d.ts +0 -28
  727. package/dist/cjs/shopify/utils/normalize/cart.d.ts +0 -7
  728. package/dist/cjs/shopify/utils/normalize/customer.d.ts +0 -3
  729. package/dist/cjs/shopify/utils/normalize/index.d.ts +0 -2
  730. package/dist/cjs/shopify/utils/normalize/metafield.d.ts +0 -5
  731. package/dist/cjs/shopify/utils/normalize/product.d.ts +0 -16
  732. package/dist/cjs/shopify/utils/store.d.ts +0 -2
  733. package/dist/cjs/shopify/utils/type-helper.d.ts +0 -5
  734. package/dist/cjs/tsconfig.tsbuildinfo +0 -1
  735. package/dist/esm/components/chat/chat-context.d.ts +0 -101
  736. package/dist/esm/components/chat/chat-context.js +0 -2
  737. package/dist/esm/components/chat/chat-context.js.map +0 -7
  738. package/dist/esm/components/credits/credits-banner/index.d.ts +0 -23
  739. package/dist/esm/components/credits/credits-banner/index.js +0 -2
  740. package/dist/esm/components/credits/credits-banner/index.js.map +0 -7
  741. package/dist/esm/components/credits/credits-benefits/benefitItem.d.ts +0 -19
  742. package/dist/esm/components/credits/credits-benefits/benefitItem.js +0 -2
  743. package/dist/esm/components/credits/credits-benefits/benefitItem.js.map +0 -7
  744. package/dist/esm/components/credits/credits-benefits/iconInfo.d.ts +0 -2
  745. package/dist/esm/components/credits/credits-benefits/iconInfo.js +0 -2
  746. package/dist/esm/components/credits/credits-benefits/iconInfo.js.map +0 -7
  747. package/dist/esm/components/credits/credits-benefits/index.d.ts +0 -12
  748. package/dist/esm/components/credits/credits-benefits/index.js +0 -4
  749. package/dist/esm/components/credits/credits-benefits/index.js.map +0 -7
  750. package/dist/esm/components/credits/credits-cash/RedeemableItem.d.ts +0 -15
  751. package/dist/esm/components/credits/credits-cash/RedeemableItem.js +0 -2
  752. package/dist/esm/components/credits/credits-cash/RedeemableItem.js.map +0 -7
  753. package/dist/esm/components/credits/credits-cash/index.d.ts +0 -13
  754. package/dist/esm/components/credits/credits-cash/index.js +0 -2
  755. package/dist/esm/components/credits/credits-cash/index.js.map +0 -7
  756. package/dist/esm/components/credits/credits-cash/type.d.ts +0 -47
  757. package/dist/esm/components/credits/credits-faq/faq-item/FaqItem.d.ts +0 -13
  758. package/dist/esm/components/credits/credits-faq/faq-item/faq-item.d.ts +0 -13
  759. package/dist/esm/components/credits/credits-faq/faq-item/faq-item.js +0 -2
  760. package/dist/esm/components/credits/credits-faq/faq-item/faq-item.js.map +0 -7
  761. package/dist/esm/components/credits/credits-faq/faqItem/FaqItem.d.ts +0 -13
  762. package/dist/esm/components/credits/credits-faq/index.d.ts +0 -16
  763. package/dist/esm/components/credits/credits-faq/index.js +0 -2
  764. package/dist/esm/components/credits/credits-faq/index.js.map +0 -7
  765. package/dist/esm/components/credits/credits-info-card/index.d.ts +0 -20
  766. package/dist/esm/components/credits/credits-info-card/index.js +0 -2
  767. package/dist/esm/components/credits/credits-info-card/index.js.map +0 -7
  768. package/dist/esm/components/credits/credits-redeem-list/AddressForm/Input.d.ts +0 -13
  769. package/dist/esm/components/credits/credits-redeem-list/AddressForm/country-select.d.ts +0 -14
  770. package/dist/esm/components/credits/credits-redeem-list/AddressForm/form-item.d.ts +0 -6
  771. package/dist/esm/components/credits/credits-redeem-list/AddressForm/index.d.ts +0 -2
  772. package/dist/esm/components/credits/credits-redeem-list/AddressForm/state-select.d.ts +0 -15
  773. package/dist/esm/components/credits/credits-redeem-list/AddressForm/type.d.ts +0 -26
  774. package/dist/esm/components/credits/credits-redeem-list/RedeemCouponModal.d.ts +0 -9
  775. package/dist/esm/components/credits/credits-redeem-list/RedeemProductModal/Address.d.ts +0 -20
  776. package/dist/esm/components/credits/credits-redeem-list/RedeemProductModal/Error.d.ts +0 -8
  777. package/dist/esm/components/credits/credits-redeem-list/RedeemProductModal/Init.d.ts +0 -11
  778. package/dist/esm/components/credits/credits-redeem-list/RedeemProductModal/ProductInfo.d.ts +0 -8
  779. package/dist/esm/components/credits/credits-redeem-list/RedeemProductModal/Success.d.ts +0 -13
  780. package/dist/esm/components/credits/credits-redeem-list/RedeemProductModal/index.d.ts +0 -11
  781. package/dist/esm/components/credits/credits-redeem-list/RedeemableItem.d.ts +0 -9
  782. package/dist/esm/components/credits/credits-redeem-list/RedeemableItem.js +0 -2
  783. package/dist/esm/components/credits/credits-redeem-list/RedeemableItem.js.map +0 -7
  784. package/dist/esm/components/credits/credits-redeem-list/address-form/Input.d.ts +0 -13
  785. package/dist/esm/components/credits/credits-redeem-list/address-form/Input.js +0 -2
  786. package/dist/esm/components/credits/credits-redeem-list/address-form/Input.js.map +0 -7
  787. package/dist/esm/components/credits/credits-redeem-list/address-form/country-select.d.ts +0 -14
  788. package/dist/esm/components/credits/credits-redeem-list/address-form/country-select.js +0 -2
  789. package/dist/esm/components/credits/credits-redeem-list/address-form/country-select.js.map +0 -7
  790. package/dist/esm/components/credits/credits-redeem-list/address-form/form-item.d.ts +0 -6
  791. package/dist/esm/components/credits/credits-redeem-list/address-form/form-item.js +0 -2
  792. package/dist/esm/components/credits/credits-redeem-list/address-form/form-item.js.map +0 -7
  793. package/dist/esm/components/credits/credits-redeem-list/address-form/index.d.ts +0 -2
  794. package/dist/esm/components/credits/credits-redeem-list/address-form/index.js +0 -2
  795. package/dist/esm/components/credits/credits-redeem-list/address-form/index.js.map +0 -7
  796. package/dist/esm/components/credits/credits-redeem-list/address-form/state-select.d.ts +0 -15
  797. package/dist/esm/components/credits/credits-redeem-list/address-form/state-select.js +0 -2
  798. package/dist/esm/components/credits/credits-redeem-list/address-form/state-select.js.map +0 -7
  799. package/dist/esm/components/credits/credits-redeem-list/address-form/type.d.ts +0 -26
  800. package/dist/esm/components/credits/credits-redeem-list/index.d.ts +0 -13
  801. package/dist/esm/components/credits/credits-redeem-list/index.js +0 -2
  802. package/dist/esm/components/credits/credits-redeem-list/index.js.map +0 -7
  803. package/dist/esm/components/credits/credits-redeem-list/redeem-coupon-modal.d.ts +0 -9
  804. package/dist/esm/components/credits/credits-redeem-list/redeem-coupon-modal.js +0 -2
  805. package/dist/esm/components/credits/credits-redeem-list/redeem-coupon-modal.js.map +0 -7
  806. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/Address.d.ts +0 -20
  807. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/Address.js +0 -2
  808. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/Address.js.map +0 -7
  809. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/Error.d.ts +0 -8
  810. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/Error.js +0 -2
  811. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/Error.js.map +0 -7
  812. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/Init.d.ts +0 -11
  813. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/Init.js +0 -2
  814. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/Init.js.map +0 -7
  815. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/ProductInfo.d.ts +0 -8
  816. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/ProductInfo.js +0 -2
  817. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/ProductInfo.js.map +0 -7
  818. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/Success.d.ts +0 -13
  819. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/Success.js +0 -2
  820. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/Success.js.map +0 -7
  821. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/index.d.ts +0 -11
  822. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/index.js +0 -2
  823. package/dist/esm/components/credits/credits-redeem-list/redeem-product-modal/index.js.map +0 -7
  824. package/dist/esm/components/credits/credits-redeem-list/type.d.ts +0 -77
  825. package/dist/esm/components/credits/credits-ways-to-get-credits/index.d.ts +0 -2
  826. package/dist/esm/components/credits/credits-ways-to-get-credits/index.js +0 -2
  827. package/dist/esm/components/credits/credits-ways-to-get-credits/index.js.map +0 -7
  828. package/dist/esm/components/credits/credits-ways-to-get-credits/type.d.ts +0 -60
  829. package/dist/esm/components/credits/credits-ways-to-get-credits/type.js +0 -2
  830. package/dist/esm/components/credits/credits-ways-to-get-credits/type.js.map +0 -7
  831. package/dist/esm/components/credits/credits-ways-to-get-credits/useActions.d.ts +0 -96
  832. package/dist/esm/components/credits/credits-ways-to-get-credits/useActions.js +0 -2
  833. package/dist/esm/components/credits/credits-ways-to-get-credits/useActions.js.map +0 -7
  834. package/dist/esm/components/credits/creditsRedeemList/AddressForm/country-select.d.ts +0 -14
  835. package/dist/esm/components/credits/creditsRedeemList/AddressForm/form-item.d.ts +0 -6
  836. package/dist/esm/components/credits/creditsRedeemList/AddressForm/state-select.d.ts +0 -15
  837. package/dist/esm/index.css +0 -2
  838. package/dist/esm/index.css.map +0 -7
  839. package/dist/esm/shopify/context/ShopifyProvider.d.ts +0 -10
  840. package/dist/esm/shopify/context/index.d.ts +0 -1
  841. package/dist/esm/shopify/context/shopify-provider.d.ts +0 -10
  842. package/dist/esm/shopify/fetchers/create-cart.d.ts +0 -12
  843. package/dist/esm/shopify/fetchers/get-products-by-handles.d.ts +0 -7
  844. package/dist/esm/shopify/fetchers/index.d.ts +0 -2
  845. package/dist/esm/shopify/fragments/article.d.ts +0 -2
  846. package/dist/esm/shopify/fragments/blog.d.ts +0 -1
  847. package/dist/esm/shopify/fragments/cart.d.ts +0 -1
  848. package/dist/esm/shopify/fragments/collection.d.ts +0 -1
  849. package/dist/esm/shopify/fragments/image.d.ts +0 -1
  850. package/dist/esm/shopify/fragments/index.d.ts +0 -11
  851. package/dist/esm/shopify/fragments/metafields.d.ts +0 -2
  852. package/dist/esm/shopify/fragments/page-info.d.ts +0 -1
  853. package/dist/esm/shopify/fragments/page.d.ts +0 -1
  854. package/dist/esm/shopify/fragments/product.d.ts +0 -1
  855. package/dist/esm/shopify/fragments/seo.d.ts +0 -1
  856. package/dist/esm/shopify/fragments/variant.d.ts +0 -1
  857. package/dist/esm/shopify/gql/fragment-masking.d.ts +0 -15
  858. package/dist/esm/shopify/gql/gql.d.ts +0 -87
  859. package/dist/esm/shopify/gql/graphql.d.ts +0 -7669
  860. package/dist/esm/shopify/gql/index.d.ts +0 -3
  861. package/dist/esm/shopify/hooks/index.d.ts +0 -2
  862. package/dist/esm/shopify/hooks/use-create-cart.d.ts +0 -2
  863. package/dist/esm/shopify/hooks/use-products-by-handles.d.ts +0 -4
  864. package/dist/esm/shopify/hooks/useCreateCart.d.ts +0 -2
  865. package/dist/esm/shopify/hooks/useProductsByHandles.d.ts +0 -4
  866. package/dist/esm/shopify/mutations/create-cart.d.ts +0 -1
  867. package/dist/esm/shopify/queries/get-product-by-handles.d.ts +0 -1
  868. package/dist/esm/shopify/queries/index.d.ts +0 -1
  869. package/dist/esm/shopify/src/index.d.ts +0 -5
  870. package/dist/esm/shopify/tsup.config.d.ts +0 -2
  871. package/dist/esm/shopify/types/article.d.ts +0 -48
  872. package/dist/esm/shopify/types/cart.d.ts +0 -173
  873. package/dist/esm/shopify/types/checkout.d.ts +0 -42
  874. package/dist/esm/shopify/types/collection.d.ts +0 -122
  875. package/dist/esm/shopify/types/common.d.ts +0 -42
  876. package/dist/esm/shopify/types/config.d.ts +0 -12
  877. package/dist/esm/shopify/types/customer.d.ts +0 -30
  878. package/dist/esm/shopify/types/fetcher.d.ts +0 -38
  879. package/dist/esm/shopify/types/index.d.ts +0 -12
  880. package/dist/esm/shopify/types/page.d.ts +0 -33
  881. package/dist/esm/shopify/types/product.d.ts +0 -174
  882. package/dist/esm/shopify/types/search.d.ts +0 -54
  883. package/dist/esm/shopify/types/site.d.ts +0 -33
  884. package/dist/esm/shopify/types/type-helper.d.ts +0 -5
  885. package/dist/esm/shopify/utils/colors.d.ts +0 -3
  886. package/dist/esm/shopify/utils/const.d.ts +0 -76
  887. package/dist/esm/shopify/utils/cookie.d.ts +0 -15
  888. package/dist/esm/shopify/utils/errors.d.ts +0 -38
  889. package/dist/esm/shopify/utils/fetch-graphql-api.d.ts +0 -19
  890. package/dist/esm/shopify/utils/handle-fetch-response.d.ts +0 -5
  891. package/dist/esm/shopify/utils/helper.d.ts +0 -28
  892. package/dist/esm/shopify/utils/normalize/cart.d.ts +0 -7
  893. package/dist/esm/shopify/utils/normalize/customer.d.ts +0 -3
  894. package/dist/esm/shopify/utils/normalize/index.d.ts +0 -2
  895. package/dist/esm/shopify/utils/normalize/metafield.d.ts +0 -5
  896. package/dist/esm/shopify/utils/normalize/product.d.ts +0 -16
  897. package/dist/esm/shopify/utils/store.d.ts +0 -2
  898. package/dist/esm/shopify/utils/type-helper.d.ts +0 -5
  899. package/dist/esm/tsconfig.tsbuildinfo +0 -1
  900. package/src/components/credits/context/hooks/useSendEmailValidation.ts +0 -20
  901. package/src/components/credits/context/hooks/useSubscriptions.ts +0 -54
  902. package/src/components/credits/creditsBenefits/benefitItem.tsx +0 -73
  903. package/src/components/credits/creditsCash/index.tsx +0 -102
  904. package/src/helpers/fetchResponse.ts +0 -35
  905. package/src/helpers/fetcher.ts +0 -44
  906. package/src/helpers/index.ts +0 -2
  907. package/src/helpers/track.ts +0 -55
  908. package/src/helpers/utils.ts +0 -8
  909. /package/dist/cjs/components/credits/{credits-redeem-list/address-form → creditsRedeemList/AddressForm}/Input.js +0 -0
  910. /package/dist/cjs/components/credits/{credits-redeem-list/address-form → creditsRedeemList/AddressForm}/type.js +0 -0
  911. /package/dist/cjs/components/credits/{credits-redeem-list → creditsRedeemList}/type.js +0 -0
  912. /package/dist/esm/components/credits/{credits-cash/type.js.map → context/memberPriceTypes.js.map} +0 -0
  913. /package/dist/esm/components/credits/{credits-cash → creditsMemberPrice}/type.js +0 -0
  914. /package/dist/esm/components/credits/{credits-redeem-list/address-form → creditsMemberPrice}/type.js.map +0 -0
  915. /package/dist/esm/components/credits/{credits-redeem-list/address-form → creditsNavigation}/type.js +0 -0
  916. /package/dist/esm/components/credits/{credits-redeem-list → creditsNavigation}/type.js.map +0 -0
  917. /package/dist/esm/components/{credits/credits-redeem-list → registration/authCodeActivate}/type.js +0 -0
  918. /package/src/components/credits/creditsBenefits/{iconInfo.tsx → IconInfo.tsx} +0 -0
@@ -0,0 +1,5 @@
1
+ import { CreditsCashCopy } from './type';
2
+ export declare const CreditsCash: ({ copy, id }: {
3
+ copy: CreditsCashCopy;
4
+ id?: string;
5
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import{jsx as a,jsxs as k}from"react/jsx-runtime";import{Container as C,Heading as g}from"@anker-in/headless-ui";import{useMemo as x,useState as b}from"react";import h from"./RedeemableItem";import y from"../context/hooks/useRedeemableList";import v from"../modal/rulesModal";import{useProductsByHandles as N}from"@anker-in/lib";import{classNames as I}from"@anker-in/lib";import{useCreditsContext as R}from"../context/provider";const q=({copy:s,id:c})=>{const[n,o]=b(),{redeemableList:d}=y(),{pageCommon:p}=R(),u=[],{data:m}=N({handles:s?.list?.map(e=>e.products?.[0]?.handle)||[],metafieldIdentifiers:{variant:u}}),f=x(()=>m?.map(e=>{const r=s.list.find(i=>i.products?.[0]?.handle===e.handle),t=d.find(i=>i.id?.toString()===r?.redeemId?.toString()),l=e.variants?.find(i=>i.sku===r?.products?.[0]?.sku)||e.variants?.[0];return!t||!l?null:{product:e,productVariant:l,alpcData:{id:t?.id,consumeCredits:t?.consume_credits,remainingInventory:t?.remaining_inventory,isLimited:t?.is_limited,consumeType:t?.consume_type,title:t?.name,desc:t?.note},config:r}}).filter(Boolean),[m,s.list,d]);return k(C,{id:c,className:I("bg-[#F5F5F5]"),children:[a(g,{as:"h2",size:"4",html:s.title}),a("div",{className:"relative mt-[24px] grid grid-cols-4 gap-[16px] l:gap-[12px] md:grid-cols-2 md-xl:grid-cols-3",children:f?.map((e,r)=>a(h,{copy:s,itemData:e,setRules:o,currencyCode:m?.[0]?.price.currencyCode||"USD"},r))}),n&&a(v,{overlayClassName:"md:px-[16px] md:items-center",className:"md:h-fit md:rounded-b-[16px]",isOpen:n.length>0,onClose:()=>o([]),titleClassName:"border-b-transparent h-[56px]",rules:n,scrollClassName:"md:mt-[8px] md:mb-[24px] md:pt-0",title:p?.ruleLabel,ruleClassName:"text-[#1d1d1f] font-bold"})]})};export{q as CreditsCash};
2
+ //# sourceMappingURL=CreditsCash.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/credits/creditsCash/CreditsCash.tsx"],
4
+ "sourcesContent": ["import { Container, Heading, Text } from '@anker-in/headless-ui'\nimport { useMemo, useState } from 'react'\n\nimport RedeemableItem from './RedeemableItem'\nimport useRedeemableList from '../context/hooks/useRedeemableList'\nimport RulesModal from '../modal/rulesModal'\nimport { useProductsByHandles } from '@anker-in/lib'\nimport { CreditsCashCopy, RedeemItem } from './type'\nimport { Product, classNames as cn } from '@anker-in/lib'\nimport { useCreditsContext } from '../context/provider'\nimport { numberFormat } from '../context/utils'\n\nexport const CreditsCash = ({ copy, id }: { copy: CreditsCashCopy; id?: string }) => {\n const [rules, setRules] = useState<string | string[]>()\n const { redeemableList } = useRedeemableList()\n const { pageCommon } = useCreditsContext()\n\n const variantMetafieldIdentifiers: any[] = []\n\n const { data: productByHandles } = useProductsByHandles({\n handles: copy?.list?.map(item => item.products?.[0]?.handle) || [],\n metafieldIdentifiers: {\n variant: variantMetafieldIdentifiers,\n },\n })\n\n const list = useMemo(() => {\n return productByHandles\n ?.map((product: Product) => {\n const config = copy.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 if (!alpcData || !productVariant) return null\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 }, [productByHandles, copy.list, redeemableList])\n\n return (\n <Container id={id} className={cn('bg-[#F5F5F5]')}>\n <Heading as=\"h2\" size=\"4\" html={copy.title} />\n\n <div className=\"relative mt-[24px] grid grid-cols-4 gap-[16px] l:gap-[12px] md:grid-cols-2 md-xl:grid-cols-3\">\n {list?.map((item, index: number) => (\n <RedeemableItem\n key={index}\n copy={copy}\n itemData={item}\n setRules={setRules}\n currencyCode={productByHandles?.[0]?.price.currencyCode || 'USD'}\n />\n ))}\n </div>\n\n {rules && (\n <RulesModal\n overlayClassName=\"md:px-[16px] md:items-center\"\n className=\"md:h-fit md:rounded-b-[16px]\"\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": "AAqDI,OACE,OAAAA,EADF,QAAAC,MAAA,oBArDJ,OAAS,aAAAC,EAAW,WAAAC,MAAqB,wBACzC,OAAS,WAAAC,EAAS,YAAAC,MAAgB,QAElC,OAAOC,MAAoB,mBAC3B,OAAOC,MAAuB,qCAC9B,OAAOC,MAAgB,sBACvB,OAAS,wBAAAC,MAA4B,gBAErC,OAAkB,cAAcC,MAAU,gBAC1C,OAAS,qBAAAC,MAAyB,sBAG3B,MAAMC,EAAc,CAAC,CAAE,KAAAC,EAAM,GAAAC,CAAG,IAA8C,CACnF,KAAM,CAACC,EAAOC,CAAQ,EAAIX,EAA4B,EAChD,CAAE,eAAAY,CAAe,EAAIV,EAAkB,EACvC,CAAE,WAAAW,CAAW,EAAIP,EAAkB,EAEnCQ,EAAqC,CAAC,EAEtC,CAAE,KAAMC,CAAiB,EAAIX,EAAqB,CACtD,QAASI,GAAM,MAAM,IAAIQ,GAAQA,EAAK,WAAW,CAAC,GAAG,MAAM,GAAK,CAAC,EACjE,qBAAsB,CACpB,QAASF,CACX,CACF,CAAC,EAEKG,EAAOlB,EAAQ,IACZgB,GACH,IAAKG,GAAqB,CAC1B,MAAMC,EAASX,EAAK,KAAK,KAAKQ,GAAQA,EAAK,WAAW,CAAC,GAAG,SAAWE,EAAQ,MAAM,EAC7EE,EAAWR,EAAe,KAAKI,GAAQA,EAAK,IAAI,SAAS,IAAMG,GAAQ,UAAU,SAAS,CAAC,EAC3FE,EACJH,EAAQ,UAAU,KAAMI,GAAiBA,EAAQ,MAAQH,GAAQ,WAAW,CAAC,GAAG,GAAG,GAAKD,EAAQ,WAAW,CAAC,EAC9G,MAAI,CAACE,GAAY,CAACC,EAAuB,KAClC,CACL,QAAAH,EACA,eAAAG,EACA,SAAU,CACR,GAAID,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,CAACJ,EAAkBP,EAAK,KAAMI,CAAc,CAAC,EAEhD,OACEhB,EAACC,EAAA,CAAU,GAAIY,EAAI,UAAWJ,EAAG,cAAc,EAC7C,UAAAV,EAACG,EAAA,CAAQ,GAAG,KAAK,KAAK,IAAI,KAAMU,EAAK,MAAO,EAE5Cb,EAAC,OAAI,UAAU,+FACZ,SAAAsB,GAAM,IAAI,CAACD,EAAMO,IAChB5B,EAACM,EAAA,CAEC,KAAMO,EACN,SAAUQ,EACV,SAAUL,EACV,aAAcI,IAAmB,CAAC,GAAG,MAAM,cAAgB,OAJtDQ,CAKP,CACD,EACH,EAECb,GACCf,EAACQ,EAAA,CACC,iBAAiB,+BACjB,UAAU,+BACV,OAAQO,EAAM,OAAS,EACvB,QAAS,IAAMC,EAAS,CAAC,CAAC,EAC1B,eAAe,gCACf,MAAOD,EACP,gBAAgB,mCAChB,MAAOG,GAAY,UACnB,cAAc,2BAChB,GAEJ,CAEJ",
6
+ "names": ["jsx", "jsxs", "Container", "Heading", "useMemo", "useState", "RedeemableItem", "useRedeemableList", "RulesModal", "useProductsByHandles", "cn", "useCreditsContext", "CreditsCash", "copy", "id", "rules", "setRules", "redeemableList", "pageCommon", "variantMetafieldIdentifiers", "productByHandles", "item", "list", "product", "config", "alpcData", "productVariant", "variant", "index"]
7
+ }
@@ -1,15 +1,9 @@
1
1
  import { CreditsCashCopy, RedeemItem } from './type';
2
- declare function RedeemableItem({ copy, itemData, setRules, className, authCodeActivate, }: {
2
+ declare function RedeemableItem({ copy, itemData, setRules, className, }: {
3
3
  copy: CreditsCashCopy;
4
4
  itemData: RedeemItem;
5
5
  className?: string;
6
6
  setRules: (rules: string[]) => void;
7
7
  currencyCode: string;
8
- authCodeActivate: {
9
- openAuthCodePopup: Function;
10
- isSuccess: boolean;
11
- setOnSuccess: (arg: Function) => void;
12
- isSendingActivateEmail: boolean;
13
- };
14
8
  }): import("react/jsx-runtime").JSX.Element;
15
9
  export default RedeemableItem;
@@ -1,2 +1,2 @@
1
- import{jsx as i,jsxs as a}from"react/jsx-runtime";import{Button as y,Text as u,Picture as v}from"@anker-in/headless-ui";import{useMemo as p}from"react";import{cn as d}from"../../../helpers";import{useCreditsContext as k}from"../context/provider";import{useRedeemAndBuy as R}from"../context/hooks/useRedeemAndBuy";import{numberFormat as V}from"../context/utils";import{gaTrack as g}from"../../../helpers/track";function F({copy:t,itemData:e,setRules:b,className:h,authCodeActivate:o}){const{creditInfo:m,profile:r,openSignUpPopup:_,gtm:{pageGroup:x}}=k(),{trigger:f,isMutating:C}=R(),n=p(()=>!!r,[r?.activated]),s=p(()=>n&&r?.activated&&e.alpcData?.consumeCredits>Number(m?.available_credit||0),[n,r?.activated,e.alpcData?.consumeCredits,m?.available_credit]),N=p(()=>!!(e.alpcData?.remainingInventory<=0&&e.alpcData?.isLimited||!e.productVariant?.availableForSale||s),[e.alpcData?.remainingInventory,e.alpcData?.isLimited,e.productVariant?.availableForSale,s]),w=()=>{if(!n)_();else if(!r?.activated&&!(o.isSendingActivateEmail||o.isSuccess))o.openAuthCodePopup(),o.setOnSuccess(async()=>{const{success:l,url:S,error:I}=await f({productVariant:e?.productVariant,redeemId:e?.config?.redeemId});l?window.open(S,"_blank"):console.error(I)});else{try{f({productVariant:e?.productVariant,redeemId:e?.config?.redeemId})}catch{}g({event:"ga4Event",event_name:"lp_button",member_active_status:r?.activated?"active":"not active",event_parameters:{page_group:x,position:t.title,button_name:c,info:e?.alpcData?.id?.toString()}})}},c=p(()=>e.productVariant?.availableForSale?n?t.btnRedeem:t.unlockRewards:t?.soldOut||"Sold Out",[n,e.productVariant?.availableForSale,t.btnRedeem,t.unlockRewards,t?.soldOut]);return a("div",{className:d("flex flex-col items-center rounded-[16px] bg-[#EAEAEC] p-[24px] md:rounded-[12px] md:px-[8px] xl:py-[16px] md-xl:px-[16px]",h),children:[i("div",{className:d("relative mx-auto h-[224px] w-fit l:h-[120px] l-xxl:h-[138px]"),children:i(v,{className:"mx-auto h-full w-auto",imgClassName:"h-full object-contain",source:e?.config?.image?.url||e?.productVariant?.metafields?.global?.transparentImg||e?.productVariant?.image?.url})}),a("div",{className:d("mt-[22px] w-full l:mt-[8px]"),children:[i(u,{html:e?.product?.title,title:e.config?.title||e.alpcData?.title||e.product?.title,size:2,className:"line-clamp-2 h-[58px] text-[24px] leading-[1.2] l:line-clamp-3 l:h-[56px] l:text-[16px] l-xxl:h-[48px] l-xxl:text-[20px]"}),e?.config?.rules?.split("<br>")?.length>0&&i("button",{type:"button",onClick:()=>{b(e?.config?.rules?.split("<br>")),g({event:"ga4Event",event_name:"lp_button",member_active_status:r?.activated?"active":"not active",event_parameters:{page_group:x,position:t.title,button_name:t?.ruleLabel,info:e?.alpcData?.id?.toString()}})},className:"mt-[8px] text-[16px] font-bold underline xxl:text-[14px]",tabIndex:0,onKeyDown:l=>{(l.key==="Enter"||l.key===" ")&&l.preventDefault()},children:t?.ruleLabel}),a("div",{className:"mt-[24px] flex items-center l:mt-[12px] laptop:text-[16px] lg-desktop:text-[18px]",children:[i(v,{className:"size-[20px]",source:"https://cdn.shopify.com/s/files/1/0511/6346/3874/files/icon_hire_purchase.png?v=1757496783"}),i(u,{html:`${V(e?.alpcData?.consumeCredits)} + ${e?.config?.price}`,size:2,as:"p",className:"ml-[4px] text-[28px] font-bold leading-[1.2] md:text-[18px] l-xxl:text-[24px] md-l:text-[20px] "})]}),a("div",{className:"group relative w-full",children:[i(y,{disabled:N,variant:"primary",size:"lg",className:"mt-[8px] md:px-[10px] l:w-full",loading:C,onClick:()=>{w()},title:s?"Insufficient credit":c,children:c}),i("div",{className:d("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]",s?"block":"hidden"),children:a("div",{className:"relative rounded-[10px] bg-[#6D6D6F] p-[16px] text-[14px] font-medium text-white shadow md:px-[10px] md:py-[8px]",children:[i(u,{as:"p",size:"2",html:t?.insufficientCredits,className:"text-[14px]"}),i("div",{className:"absolute -top-[10px] left-[48px] mb-2 size-[16px] origin-top-left rotate-45 transform rounded-[2px] bg-[#6D6D6F]"})]})})]})]})]})}var G=F;export{G as default};
1
+ import{jsx as t,jsxs as i}from"react/jsx-runtime";import{Button as F,Text as d,Picture as C}from"@anker-in/headless-ui";import{useMemo as c,useState as A}from"react";import{useCreditsContext as B}from"../context/provider";import{useRedeemAndBuy as L}from"../context/hooks/useRedeemAndBuy";import{formatPrice as N,numberFormat as $,extractVariantId as _}from"../context/utils";import{gaTrack as y,classNames as a,useHeadlessContext as O}from"@anker-in/lib";import{useRegistration as P}from"../../../components/registration";import{ROUNDED_BRANDS as U}from"../../../constants";function T({copy:r,itemData:e,setRules:S,className:V}){const{creditInfo:x,profile:n,openSignUpPopup:w,pageCommon:s,gtm:{pageGroup:m}}=B(),{authCodeActivate:f}=P(),{brand:R,locale:v}=O(),g=U.includes(R),[b,h]=A(null),{trigger:I,isMutating:k}=L({},{onError:o=>{h(o.message)}}),l=c(()=>!!n,[n?.activated]),p=c(()=>l&&n?.activated&&e.alpcData?.consumeCredits>Number(x?.available_credit||0),[l,n?.activated,e.alpcData?.consumeCredits,x?.available_credit]),z=c(()=>!!(e.alpcData?.remainingInventory<=0&&e.alpcData?.isLimited||!e.productVariant?.availableForSale||p),[e.alpcData?.remainingInventory,e.alpcData?.isLimited,e.productVariant?.availableForSale,p]),E=()=>{h(null),l?!n?.activated&&!f.isActivateSuccess?f.open():(I({productVariant:e?.productVariant,redeemId:e?.config?.redeemId}),y({event:"ga4Event",event_name:"lp_button",member_active_status:n?.activated?"active":"not active",event_parameters:{page_group:m,position:r.title,button_name:u,info:e?.alpcData?.id?.toString()}})):w()},u=c(()=>e.productVariant?.availableForSale?l?r.btnRedeem:r.unlockRewards:r?.soldOut||"Sold Out",[l,e.productVariant?.availableForSale,r.btnRedeem,r.unlockRewards,r?.soldOut]);return i("div",{className:a("flex flex-col items-center rounded-[16px] bg-[#EAEAEC] md:rounded-[12px] p-[24px] l:p-[8px] md-xl:p-[16px]",!g&&"rounded-none md:rounded-none",V),children:[t("a",{href:_(e.productVariant?.id)?`/products/${e.product.handle}?variant=${_(e.productVariant?.id)}`:`/products/${e.product.handle}`,className:a("relative mx-auto h-[224px] w-fit l:h-[120px] l-xxl:h-[138px]"),children:t(C,{className:"mx-auto h-full w-auto",imgClassName:"h-full object-contain",source:e?.config?.image?.url||e?.productVariant?.metafields?.global?.transparentImg||e?.productVariant?.image?.url})}),i("div",{className:a("mt-[22px] w-full l:mt-[8px]"),children:[t(d,{html:e?.product?.title,title:e.config?.title||e.alpcData?.title||e.product?.title,size:2,className:"line-clamp-2 h-[58px] text-[24px] l-xxl:text-[20px] l:text-[16px] leading-[1.2] l:h-[40px] l-xxl:h-[48px]"}),e?.config?.rules?.split("<br>")?.length>0&&t("button",{type:"button",onClick:()=>{S(e?.config?.rules?.split("<br>")),y({event:"ga4Event",event_name:"lp_button",member_active_status:n?.activated?"active":"not active",event_parameters:{page_group:m,position:r.title,button_name:s?.ruleLabel,info:e?.alpcData?.id?.toString()}})},className:"mt-[8px] text-[16px] font-bold underline xxl:text-[14px]",tabIndex:0,onKeyDown:o=>{(o.key==="Enter"||o.key===" ")&&o.preventDefault()},children:s?.ruleLabel}),i("div",{className:"flex flex-wrap items-center l:mt-[12px] laptop:text-[16px] lg-desktop:text-[18px]",children:[t(C,{className:"size-[24px] l-xxl:size-[22px] md-l:size-[18px] md:size-[16px]",source:"https://cdn.shopify.com/s/files/1/0511/6346/3874/files/icon_hire_purchase.png?v=1757496783"}),t(d,{html:`${$(e?.alpcData?.consumeCredits)} + ${N({amount:Number(e?.config?.price),currencyCode:e?.productVariant?.price.currencyCode||"USD",locale:v})}`,size:2,as:"p",className:"ml-[4px] mt-[4px] font-bold leading-none text-[24px] l-xxl:text-[20px] l:text-[16px]"}),t(d,{html:N({amount:e?.productVariant?.price.amount,currencyCode:e?.productVariant?.price.currencyCode||"USD",locale:v}),className:"l-xxl:text-[20px] mt-[4px] l:text-[16px] ml-[4px] font-bold leading-[1.2] tracking-[-0.8px] text-[#4A4C56] line-through",as:"p"})]}),i("div",{className:"group relative w-full",children:[t(F,{disabled:z,variant:"primary",size:"lg",className:"mt-[8px] md:px-[10px] l:w-full",loading:k,onClick:()=>{E()},title:p?s.insufficientCredits:u,children:u}),t("div",{className:a("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]",p?"block":"hidden"),children:i("div",{className:a("relative rounded-[10px] bg-[#6D6D6F] p-[16px] text-[14px] font-medium text-white shadow md:px-[10px] md:py-[8px]",!g&&"rounded-none"),children:[t(d,{as:"p",size:"2",html:s?.insufficientCredits,className:"text-[14px]"}),t("div",{className:"absolute -top-[10px] left-[48px] mb-2 size-[16px] origin-top-left rotate-45 transform rounded-[2px] bg-[#6D6D6F]"})]})})]})]}),b&&t("div",{className:"mt-[8px] text-[14px] text-[#FF0000]",children:b})]})}var Z=T;export{Z as default};
2
2
  //# sourceMappingURL=RedeemableItem.js.map
@@ -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 } from '@anker-in/headless-ui'\nimport { useMemo } from 'react'\nimport { cn } from '../../../helpers'\n\nimport { CreditsCashCopy, RedeemItem } from './type'\nimport { useCreditsContext } from '../context/provider'\nimport { useRedeemAndBuy } from '../context/hooks/useRedeemAndBuy'\nimport { numberFormat } from '../context/utils'\nimport { gaTrack } from '../../../helpers/track'\n\nfunction RedeemableItem({\n copy,\n itemData,\n setRules,\n className,\n authCodeActivate,\n}: {\n copy: CreditsCashCopy\n itemData: RedeemItem\n className?: string\n setRules: (rules: string[]) => void\n currencyCode: string\n authCodeActivate: {\n openAuthCodePopup: Function\n isSuccess: boolean\n setOnSuccess: (arg: Function) => void\n isSendingActivateEmail: boolean\n }\n}) {\n const {\n creditInfo,\n profile,\n openSignUpPopup,\n gtm: { pageGroup },\n } = useCreditsContext()\n const { trigger, isMutating } = useRedeemAndBuy()\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 if (!isLogin) {\n openSignUpPopup()\n } else if (!profile?.activated && !(authCodeActivate.isSendingActivateEmail || authCodeActivate.isSuccess)) {\n authCodeActivate.openAuthCodePopup()\n authCodeActivate.setOnSuccess(async () => {\n const { success, url, error } = await trigger({\n productVariant: itemData?.productVariant,\n redeemId: itemData?.config?.redeemId,\n })\n if (success) {\n window.open(url, '_blank')\n } else {\n console.error(error)\n }\n })\n } else {\n try {\n trigger({\n productVariant: itemData?.productVariant,\n redeemId: itemData?.config?.redeemId,\n })\n } catch (error) {}\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 return (\n <div\n className={cn(\n 'flex flex-col items-center rounded-[16px] bg-[#EAEAEC] p-[24px] md:rounded-[12px] md:px-[8px] xl:py-[16px] md-xl:px-[16px]',\n className\n )}\n >\n <div className={cn('relative mx-auto h-[224px] w-fit l:h-[120px] l-xxl:h-[138px]')}>\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 </div>\n <div className={cn('mt-[22px] w-full l: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] leading-[1.2] l:line-clamp-3 l:h-[56px] l:text-[16px] l-xxl:h-[48px] l-xxl:text-[20px]\"\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: copy?.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 {copy?.ruleLabel}\n </button>\n )}\n <div className=\"mt-[24px] flex items-center l:mt-[12px] laptop:text-[16px] lg-desktop:text-[18px]\">\n <Picture\n className=\"size-[20px]\"\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)} + ${itemData?.config?.price}`}\n size={2}\n as=\"p\"\n className=\"ml-[4px] text-[28px] font-bold leading-[1.2] md:text-[18px] l-xxl:text-[24px] md-l:text-[20px] \"\n />\n </div>\n\n <div className=\"group relative w-full\">\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 ? 'Insufficient credit' : 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 className=\"relative rounded-[10px] bg-[#6D6D6F] p-[16px] text-[14px] font-medium text-white shadow md:px-[10px] md:py-[8px]\">\n <Text as=\"p\" size=\"2\" html={copy?.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 </div>\n )\n}\n\nexport default RedeemableItem\n"],
5
- "mappings": "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",
6
- "names": ["jsx", "jsxs", "Button", "Text", "Picture", "useMemo", "cn", "useCreditsContext", "useRedeemAndBuy", "numberFormat", "gaTrack", "RedeemableItem", "copy", "itemData", "setRules", "className", "authCodeActivate", "creditInfo", "profile", "openSignUpPopup", "pageGroup", "trigger", "isMutating", "isLogin", "inSufficientCredit", "isDisabled", "handleRedeem", "success", "url", "error", "redeemButtonText", "e", "RedeemableItem_default"]
4
+ "sourcesContent": ["import { Button, Text, Picture } 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 '@anker-in/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 },\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.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 return (\n <div\n className={cn(\n 'flex flex-col items-center rounded-[16px] bg-[#EAEAEC] md:rounded-[12px] p-[24px] l:p-[8px] md-xl:p-[16px]',\n !rounded && 'rounded-none md:rounded-none',\n className\n )}\n >\n <a\n href={\n extractVariantId(itemData.productVariant?.id)\n ? `/products/${itemData.product.handle}?variant=${extractVariantId(itemData.productVariant?.id)}`\n : `/products/${itemData.product.handle}`\n }\n className={cn('relative mx-auto h-[224px] w-fit l:h-[120px] l-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-[22px] w-full l: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-[40px] 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] 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)} + ${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\">\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": "AAgIQ,cAAAA,EA8CA,QAAAC,MA9CA,oBAhIR,OAAS,UAAAC,EAAQ,QAAAC,EAAM,WAAAC,MAAe,wBACtC,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,gBAC9D,OAAS,mBAAAC,MAAuB,mCAChC,OAAS,kBAAAC,MAAsB,qBAE/B,SAASC,EAAe,CACtB,KAAAC,EACA,SAAAC,EACA,SAAAC,EACA,UAAAC,CACF,EAMG,CACD,KAAM,CACJ,WAAAC,EACA,QAAAC,EACA,gBAAAC,EACA,WAAAC,EACA,IAAK,CAAE,UAAAC,CAAU,CACnB,EAAInB,EAAkB,EAChB,CAAE,iBAAAoB,CAAiB,EAAIZ,EAAgB,EACvC,CAAE,MAAAa,EAAO,OAAAC,CAAO,EAAIf,EAAmB,EACvCgB,EAAUd,EAAe,SAASY,CAAK,EACvC,CAACG,EAAOC,CAAQ,EAAI1B,EAAwB,IAAI,EAChD,CAAE,QAAA2B,EAAS,WAAAC,CAAW,EAAI1B,EAC9B,CAAC,EACD,CACE,QAASuB,GAAS,CAChBC,EAASD,EAAM,OAAO,CACxB,CACF,CACF,EAEMI,EAAU9B,EAAQ,IACf,CAAC,CAACkB,EACR,CAACA,GAAS,SAAS,CAAC,EAEjBa,EAAqB/B,EAAQ,IAE/B8B,GAAWZ,GAAS,WAAaJ,EAAS,UAAU,eAAiB,OAAOG,GAAY,kBAAoB,CAAC,EAE9G,CAACa,EAASZ,GAAS,UAAWJ,EAAS,UAAU,eAAgBG,GAAY,gBAAgB,CAAC,EAE3Fe,EAAahC,EAAQ,IAErB,GAAAc,EAAS,UAAU,oBAAsB,GAAKA,EAAS,UAAU,WAKjE,CAACA,EAAS,gBAAgB,kBAK1BiB,GAIH,CACDjB,EAAS,UAAU,mBACnBA,EAAS,UAAU,UACnBA,EAAS,gBAAgB,iBACzBiB,CACF,CAAC,EAEKE,EAAe,IAAM,CACzBN,EAAS,IAAI,EACRG,EAEM,CAACZ,GAAS,WAAa,CAACI,EAAiB,kBAClDA,EAAiB,KAAK,GAEtBM,EAAQ,CACN,eAAgBd,GAAU,eAC1B,SAAUA,GAAU,QAAQ,QAC9B,CAAC,EACDP,EAAQ,CACN,MAAO,WACP,WAAY,YACZ,qBAAsBW,GAAS,UAAY,SAAW,aACtD,iBAAkB,CAChB,WAAYG,EACZ,SAAUR,EAAK,MACf,YAAaqB,EACb,KAAMpB,GAAU,UAAU,IAAI,SAAS,CACzC,CACF,CAAC,GAlBDK,EAAgB,CAoBpB,EAEMe,EAAmBlC,EAAQ,IAE1Bc,EAAS,gBAAgB,iBAElBgB,EAGHjB,EAAK,UAFLA,EAAK,cAFLA,GAAM,SAAW,WAMzB,CAACiB,EAAShB,EAAS,gBAAgB,iBAAkBD,EAAK,UAAWA,EAAK,cAAeA,GAAM,OAAO,CAAC,EAE1G,OACEjB,EAAC,OACC,UAAWY,EACT,6GACA,CAACiB,GAAW,+BACZT,CACF,EAEA,UAAArB,EAAC,KACC,KACEW,EAAiBQ,EAAS,gBAAgB,EAAE,EACxC,aAAaA,EAAS,QAAQ,MAAM,YAAYR,EAAiBQ,EAAS,gBAAgB,EAAE,CAAC,GAC7F,aAAaA,EAAS,QAAQ,MAAM,GAE1C,UAAWN,EAAG,8DAA8D,EAE5E,SAAAb,EAACI,EAAA,CACC,UAAU,wBACV,aAAa,wBACb,OACEe,GAAU,QAAQ,OAAO,KACzBA,GAAU,gBAAgB,YAAY,QAAQ,gBAC9CA,GAAU,gBAAgB,OAAO,IAEpC,EACH,EACAlB,EAAC,OAAI,UAAWY,EAAG,6BAA6B,EAC9C,UAAAb,EAACG,EAAA,CACC,KAAMgB,GAAU,SAAS,MACzB,MAAOA,EAAS,QAAQ,OAASA,EAAS,UAAU,OAASA,EAAS,SAAS,MAC/E,KAAM,EACN,UAAU,4GACZ,EACCA,GAAU,QAAQ,OAAO,MAAM,MAAM,GAAG,OAAS,GAChDnB,EAAC,UACC,KAAK,SACL,QAAS,IAAM,CACboB,EAASD,GAAU,QAAQ,OAAO,MAAM,MAAM,CAAC,EAC/CP,EAAQ,CACN,MAAO,WACP,WAAY,YACZ,qBAAsBW,GAAS,UAAY,SAAW,aACtD,iBAAkB,CAChB,WAAYG,EACZ,SAAUR,EAAK,MACf,YAAaO,GAAY,UACzB,KAAMN,GAAU,UAAU,IAAI,SAAS,CACzC,CACF,CAAC,CACH,EACA,UAAU,2DACV,SAAU,EACV,UAAWqB,GAAK,EACVA,EAAE,MAAQ,SAAWA,EAAE,MAAQ,MACjCA,EAAE,eAAe,CAErB,EAEC,SAAAf,GAAY,UACf,EAGFxB,EAAC,OAAI,UAAU,oFACb,UAAAD,EAACI,EAAA,CACC,UAAU,gEACV,OAAO,6FACT,EACAJ,EAACG,EAAA,CACC,KAAM,GAAGO,EAAaS,GAAU,UAAU,cAAc,CAAC,MAAMV,EAAY,CACzE,OAAQ,OAAOU,GAAU,QAAQ,KAAK,EACtC,aAAcA,GAAU,gBAAgB,MAAM,cAAgB,MAC9D,OAAQU,CACV,CAAC,CAAC,GACF,KAAM,EACN,GAAG,IACH,UAAU,uFACZ,EACA7B,EAACG,EAAA,CACC,KAAMM,EAAY,CAChB,OAAQU,GAAU,gBAAgB,MAAM,OACxC,aAAcA,GAAU,gBAAgB,MAAM,cAAgB,MAC9D,OAAQU,CACV,CAAC,EACD,UAAU,0HACV,GAAG,IACL,GACF,EAEA5B,EAAC,OAAI,UAAU,wBACb,UAAAD,EAACE,EAAA,CACC,SAAUmC,EACV,QAAQ,UACR,KAAK,KACL,UAAU,iCACV,QAASH,EACT,QAAS,IAAM,CACbI,EAAa,CACf,EACA,MAAOF,EAAqBX,EAAW,oBAAsBc,EAE5D,SAAAA,EACH,EACAvC,EAAC,OACC,UAAWa,EACT,qJACAuB,EAAqB,QAAU,QACjC,EAEA,SAAAnC,EAAC,OACC,UAAWY,EACT,mHACA,CAACiB,GAAW,cACd,EAEA,UAAA9B,EAACG,EAAA,CAAK,GAAG,IAAI,KAAK,IAAI,KAAMsB,GAAY,oBAAqB,UAAU,cAAc,EACrFzB,EAAC,OAAI,UAAU,mHAAmH,GACpI,EACF,GACF,GACF,EACC+B,GAAS/B,EAAC,OAAI,UAAU,sCAAuC,SAAA+B,EAAM,GACxE,CAEJ,CAEA,IAAOU,EAAQxB",
6
+ "names": ["jsx", "jsxs", "Button", "Text", "Picture", "useMemo", "useState", "useCreditsContext", "useRedeemAndBuy", "formatPrice", "numberFormat", "extractVariantId", "gaTrack", "cn", "useHeadlessContext", "useRegistration", "ROUNDED_BRANDS", "RedeemableItem", "copy", "itemData", "setRules", "className", "creditInfo", "profile", "openSignUpPopup", "pageCommon", "pageGroup", "authCodeActivate", "brand", "locale", "rounded", "error", "setError", "trigger", "isMutating", "isLogin", "inSufficientCredit", "isDisabled", "handleRedeem", "redeemButtonText", "e", "RedeemableItem_default"]
7
7
  }
@@ -1,13 +1,2 @@
1
- import { CreditsCashCopy } from './type';
2
- export declare const CreditsCash: ({ copy, className, hideTitle, cardClassName, authCodeActivate, }: {
3
- copy: CreditsCashCopy;
4
- className?: string;
5
- hideTitle?: boolean;
6
- cardClassName?: string;
7
- authCodeActivate: {
8
- openAuthCodePopup: Function;
9
- isSuccess: boolean;
10
- setOnSuccess: (arg: Function) => void;
11
- isSendingActivateEmail: boolean;
12
- };
13
- }) => import("react/jsx-runtime").JSX.Element;
1
+ export * from './type';
2
+ export * from './CreditsCash';
@@ -1,2 +1,2 @@
1
- import{jsx as n,jsxs as F}from"react/jsx-runtime";import{Container as h,Heading as b}from"@anker-in/headless-ui";import{useMemo as v,useState as y}from"react";import x from"./RedeemableItem";import N from"../context/hooks/useRedeemableList";import{cn as I}from"../../../helpers";import R from"../modal/rulesModal";import{useProductsByHandles as S}from"@anker-in/shopify";const z=({copy:s,className:c="",hideTitle:u=!1,cardClassName:p,authCodeActivate:C})=>{const[r,d]=y(),{redeemableList:m}=N(),f="us",g=[],{data:o}=S({locale:f,handles:s?.list?.map(e=>e.products?.[0]?.handle)||[],metafieldIdentifiers:{variant:g}}),l=v(()=>o?.map(e=>{const a=s.list.find(i=>i.products?.[0]?.handle===e.handle),t=m.find(i=>i.id?.toString()===a?.redeemId?.toString());return{product:e,productVariant:e.variants?.find(i=>i.sku===a?.products?.[0]?.sku)||e.variants?.[0],alpcData:{id:t?.id,consumeCredits:t?.consume_credits,remainingInventory:t?.remaining_inventory,isLimited:t?.is_limited,consumeType:t?.consume_type,title:t?.name,desc:t?.note},config:a}}),[o,s.list,m]);return console.log("list",l),F(h,{className:I("bg-[#F5F5F5]",c),children:[!u&&n(b,{as:"h2",size:"4",html:s.title}),n("div",{className:"relative mt-[24px] grid grid-cols-4 gap-[16px] md:grid-cols-2 md-xl:grid-cols-3",children:l?.map((e,a)=>n(x,{copy:s,itemData:e,setRules:d,className:p,currencyCode:o?.[0]?.price.currencyCode||"USD",authCodeActivate:C},a))}),r&&n(R,{overlayClassName:"md:px-[16px] md:items-center",className:"md:h-fit md:rounded-b-[16px]",isOpen:r.length>0,onClose:()=>d([]),titleClassName:"border-b-transparent h-[56px]",rules:r,scrollClassName:"md:mt-[8px] md:mb-[24px] md:pt-0",title:s?.ruleLabel,ruleClassName:"text-[#1d1d1f] font-bold"})]})};export{z as CreditsCash};
1
+ export*from"./type";export*from"./CreditsCash";
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../../../../src/components/credits/creditsCash/index.tsx"],
4
- "sourcesContent": ["import { Container, Heading } from '@anker-in/headless-ui'\nimport { useMemo, useState } from 'react'\n\nimport RedeemableItem from './RedeemableItem'\nimport useRedeemableList from '../context/hooks/useRedeemableList'\nimport { cn } from '../../../helpers'\nimport RulesModal from '../modal/rulesModal'\nimport { useProductsByHandles } from '@anker-in/shopify'\nimport { CreditsCashCopy, RedeemItem } from './type'\nimport { Product } from '@anker-in/shopify'\n\nexport const CreditsCash = ({\n copy,\n className = '',\n hideTitle = false,\n cardClassName,\n authCodeActivate,\n}: {\n copy: CreditsCashCopy\n className?: string\n hideTitle?: boolean\n cardClassName?: string\n authCodeActivate: {\n openAuthCodePopup: Function\n isSuccess: boolean\n setOnSuccess: (arg: Function) => void\n isSendingActivateEmail: boolean\n }\n}) => {\n const [rules, setRules] = useState<string | string[]>()\n const { redeemableList } = useRedeemableList()\n\n // Temporary variables until proper configuration\n const locale = 'us'\n const variantMetafieldIdentifiers: any[] = []\n\n const { data: productByHandles } = useProductsByHandles({\n locale,\n handles: copy?.list?.map(item => item.products?.[0]?.handle) || [],\n metafieldIdentifiers: {\n variant: variantMetafieldIdentifiers,\n },\n })\n\n const list = useMemo(() => {\n return productByHandles?.map((product: Product) => {\n const config = copy.list.find(item => item.products?.[0]?.handle === product.handle)\n const alpcData = redeemableList.find(item => item.id?.toString() === config?.redeemId?.toString())\n\n return {\n product,\n productVariant:\n product.variants?.find((variant: any) => variant.sku === config?.products?.[0]?.sku) || product.variants?.[0],\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 }) as unknown as RedeemItem[]\n }, [productByHandles, copy.list, redeemableList])\n\n console.log('list', list)\n\n return (\n <Container className={cn('bg-[#F5F5F5]', className)}>\n {!hideTitle && <Heading as=\"h2\" size=\"4\" html={copy.title} />}\n <div className=\"relative mt-[24px] grid grid-cols-4 gap-[16px] md:grid-cols-2 md-xl:grid-cols-3\">\n {list?.map((item, index: number) => (\n <RedeemableItem\n key={index}\n copy={copy}\n itemData={item}\n setRules={setRules}\n className={cardClassName}\n currencyCode={productByHandles?.[0]?.price.currencyCode || 'USD'}\n authCodeActivate={authCodeActivate}\n />\n ))}\n </div>\n\n {rules && (\n <RulesModal\n overlayClassName=\"md:px-[16px] md:items-center\"\n className=\"md:h-fit md:rounded-b-[16px]\"\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={copy?.ruleLabel}\n ruleClassName=\"text-[#1d1d1f] font-bold\"\n />\n )}\n </Container>\n )\n}\n"],
5
- "mappings": "AAsEI,OACiB,OAAAA,EADjB,QAAAC,MAAA,oBAtEJ,OAAS,aAAAC,EAAW,WAAAC,MAAe,wBACnC,OAAS,WAAAC,EAAS,YAAAC,MAAgB,QAElC,OAAOC,MAAoB,mBAC3B,OAAOC,MAAuB,qCAC9B,OAAS,MAAAC,MAAU,mBACnB,OAAOC,MAAgB,sBACvB,OAAS,wBAAAC,MAA4B,oBAI9B,MAAMC,EAAc,CAAC,CAC1B,KAAAC,EACA,UAAAC,EAAY,GACZ,UAAAC,EAAY,GACZ,cAAAC,EACA,iBAAAC,CACF,IAWM,CACJ,KAAM,CAACC,EAAOC,CAAQ,EAAIb,EAA4B,EAChD,CAAE,eAAAc,CAAe,EAAIZ,EAAkB,EAGvCa,EAAS,KACTC,EAAqC,CAAC,EAEtC,CAAE,KAAMC,CAAiB,EAAIZ,EAAqB,CACtD,OAAAU,EACA,QAASR,GAAM,MAAM,IAAIW,GAAQA,EAAK,WAAW,CAAC,GAAG,MAAM,GAAK,CAAC,EACjE,qBAAsB,CACpB,QAASF,CACX,CACF,CAAC,EAEKG,EAAOpB,EAAQ,IACZkB,GAAkB,IAAKG,GAAqB,CACjD,MAAMC,EAASd,EAAK,KAAK,KAAKW,GAAQA,EAAK,WAAW,CAAC,GAAG,SAAWE,EAAQ,MAAM,EAC7EE,EAAWR,EAAe,KAAKI,GAAQA,EAAK,IAAI,SAAS,IAAMG,GAAQ,UAAU,SAAS,CAAC,EAEjG,MAAO,CACL,QAAAD,EACA,eACEA,EAAQ,UAAU,KAAMG,GAAiBA,EAAQ,MAAQF,GAAQ,WAAW,CAAC,GAAG,GAAG,GAAKD,EAAQ,WAAW,CAAC,EAC9G,SAAU,CACR,GAAIE,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,CAACJ,EAAkBV,EAAK,KAAMO,CAAc,CAAC,EAEhD,eAAQ,IAAI,OAAQK,CAAI,EAGtBvB,EAACC,EAAA,CAAU,UAAWM,EAAG,eAAgBK,CAAS,EAC/C,WAACC,GAAad,EAACG,EAAA,CAAQ,GAAG,KAAK,KAAK,IAAI,KAAMS,EAAK,MAAO,EAC3DZ,EAAC,OAAI,UAAU,kFACZ,SAAAwB,GAAM,IAAI,CAACD,EAAMM,IAChB7B,EAACM,EAAA,CAEC,KAAMM,EACN,SAAUW,EACV,SAAUL,EACV,UAAWH,EACX,aAAcO,IAAmB,CAAC,GAAG,MAAM,cAAgB,MAC3D,iBAAkBN,GANba,CAOP,CACD,EACH,EAECZ,GACCjB,EAACS,EAAA,CACC,iBAAiB,+BACjB,UAAU,+BACV,OAAQQ,EAAM,OAAS,EACvB,QAAS,IAAMC,EAAS,CAAC,CAAC,EAC1B,eAAe,gCACf,MAAOD,EACP,gBAAgB,mCAChB,MAAOL,GAAM,UACb,cAAc,2BAChB,GAEJ,CAEJ",
6
- "names": ["jsx", "jsxs", "Container", "Heading", "useMemo", "useState", "RedeemableItem", "useRedeemableList", "cn", "RulesModal", "useProductsByHandles", "CreditsCash", "copy", "className", "hideTitle", "cardClassName", "authCodeActivate", "rules", "setRules", "redeemableList", "locale", "variantMetafieldIdentifiers", "productByHandles", "item", "list", "product", "config", "alpcData", "variant", "index"]
3
+ "sources": ["../../../../../src/components/credits/creditsCash/index.ts"],
4
+ "sourcesContent": ["export * from './type'\nexport * from './CreditsCash'\n"],
5
+ "mappings": "AAAA,WAAc,SACd,WAAc",
6
+ "names": []
7
7
  }
@@ -1,9 +1,9 @@
1
- import { ProductVariant, Product } from '@anker-in/shopify';
1
+ import { ProductVariant, Product } from '@anker-in/lib';
2
2
  import { AlpcConsumeType } from '../context/const';
3
3
  type RedeemableItemConfig = {
4
4
  title: string;
5
5
  desc: string;
6
- price: string;
6
+ price: number;
7
7
  credit: string;
8
8
  rules: string;
9
9
  image: {
@@ -23,11 +23,9 @@ export type CreditsCashCopy = {
23
23
  }[];
24
24
  })[];
25
25
  soldOut: string;
26
- ruleLabel: string;
27
26
  unlockRewards: string;
28
27
  btnRedeem: string;
29
28
  off: string;
30
- insufficientCredits: string;
31
29
  };
32
30
  export type RedeemItem = {
33
31
  product: Product;
@@ -1,2 +1,2 @@
1
- import{jsx as t,jsxs as x}from"react/jsx-runtime";import{Heading as f,Text as l}from"@anker-in/headless-ui";import{ChevronDownIcon as b}from"@heroicons/react/24/outline";import{cn as e}from"../../../../helpers/index";import{motion as c}from"framer-motion";import{useEffect as u,useState as v}from"react";const k=({index:a,question:n,answer:o,showDots:s,itemRightIconRender:p,defaultExpended:m=!1})=>{const[r,d]=v(m);return u(()=>{a==0&&d(!0),n||d(!0)},[a,n]),x("div",{className:e("relative mx-0 border-b-[1px] border-[#e4e5e6] py-[24px] l:py-[16px]"),children:[x("div",{className:"relative flex items-center",onClick:()=>{d(!r)},role:"button",tabIndex:0,onKeyDown:i=>{(i.key==="Enter"||i.key===" ")&&i.preventDefault()},children:[t(f,{html:n,as:"h3",className:e(s?'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]")}),p?p({expanded:r}):t(b,{className:e("size-[16px] shrink-0 cursor-pointer stroke-[2.5px] transition-all",r?"rotate-180":"")})]}),t(c.div,{initial:!1,animate:{height:r?"auto":0},className:"overflow-hidden [&_td]:border [&_td]:border-[#333] [&_td]:px-[8px] [&_td]:py-[4px]",children:o?.toString()?.includes("https://www.youtube.com")?t(l,{as:"div",className:e("mt-[8px]"),"data-ratio":"16:9","data-content":o,html:o?.toString()}):t(l,{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{k as FaqItem};
1
+ import{jsx as t,jsxs as s}from"react/jsx-runtime";import{Heading as f,Text as l}from"@anker-in/headless-ui";import{ChevronDownIcon as b}from"@heroicons/react/24/outline";import{classNames as e}from"@anker-in/lib";import{motion as c}from"framer-motion";import{useEffect as u,useState as v}from"react";const k=({index:a,question:n,answer:o,showDots:x,itemRightIconRender:p,defaultExpended:m=!1})=>{const[r,d]=v(m);return u(()=>{a==0&&d(!0),n||d(!0)},[a,n]),s("div",{className:e("relative mx-0 border-b-[1px] border-[#e4e5e6] py-[24px] l:py-[16px]"),children:[s("div",{className:"relative flex items-center",onClick:()=>{d(!r)},role:"button",tabIndex:0,onKeyDown:i=>{(i.key==="Enter"||i.key===" ")&&i.preventDefault()},children:[t(f,{html:n,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]")}),p?p({expanded:r}):t(b,{className:e("size-[16px] shrink-0 cursor-pointer stroke-[2.5px] transition-all",r?"rotate-180":"")})]}),t(c.div,{initial:!1,animate:{height:r?"auto":0},className:"overflow-hidden [&_td]:border [&_td]:border-[#333] [&_td]:px-[8px] [&_td]:py-[4px]",children:o?.toString()?.includes("https://www.youtube.com")?t(l,{as:"div",className:e("mt-[8px]"),"data-ratio":"16:9","data-content":o,html:o?.toString()}):t(l,{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{k 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 { cn } from '../../../../helpers/index'\nimport { motion } from 'framer-motion'\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 <motion.div\n initial={false}\n animate={{ height: !expanded ? 0 : 'auto' }}\n className='overflow-hidden [&_td]:border [&_td]:border-[#333] [&_td]:px-[8px] [&_td]:py-[4px]'\n >\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 </motion.div>\n </div>\n )\n}\n"],
5
- "mappings": "AAmCM,OAaE,OAAAA,EAbF,QAAAC,MAAA,oBAnCN,OAAS,WAAAC,EAAS,QAAAC,MAAY,wBAC9B,OAAS,mBAAAC,MAAuB,8BAChC,OAAS,MAAAC,MAAU,4BACnB,OAAS,UAAAC,MAAc,gBACvB,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,EAGlBV,EAAC,OAAgB,UAAWI,EAAG,sEAAsE,EACnG,UAAAJ,EAAC,OACC,UAAU,6BACV,QAAS,IAAM,CACbgB,EAAY,CAACD,CAAQ,CACvB,EACA,KAAK,SACL,SAAU,EACV,UAAYE,GAAM,EACZA,EAAE,MAAQ,SAAWA,EAAE,MAAQ,MACjCA,EAAE,eAAe,CAErB,EAEA,UAAAlB,EAACE,EAAA,CACC,KAAMS,EACN,GAAG,KACH,UAAWN,EACTQ,EACI,+IACA,GACJ,mGACF,EACD,EACAC,EACCA,EAAoB,CAAE,SAAAE,CAAS,CAAC,EAEhChB,EAACI,EAAA,CACC,UAAWC,EACT,oEACAW,EAAW,aAAe,EAC5B,EACF,GAEJ,EACAhB,EAACM,EAAO,IAAP,CACC,QAAS,GACT,QAAS,CAAE,OAASU,EAAe,OAAJ,CAAW,EAC1C,UAAU,qFAET,SAAAJ,GAAQ,SAAS,GAAG,SAAS,yBAAyB,EACrDZ,EAACG,EAAA,CACC,GAAG,MACH,UAAWE,EAAG,UAAU,EACxB,aAAW,OACX,eAAcO,EACd,KAAMA,GAAQ,SAAS,EACxB,EAEDZ,EAACG,EAAA,CACC,GAAG,MACH,KAAMS,GAAQ,SAAS,EACvB,UAAWP,EACT,4GACF,EACD,EAEL,IAzDQK,CA0DV,CAEJ",
4
+ "sourcesContent": ["import { Heading, Text } from '@anker-in/headless-ui'\nimport { ChevronDownIcon } from '@heroicons/react/24/outline'\nimport { classNames as cn } from '@anker-in/lib'\nimport { motion } from 'framer-motion'\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 <motion.div\n initial={false}\n animate={{ height: !expanded ? 0 : 'auto' }}\n className=\"overflow-hidden [&_td]:border [&_td]:border-[#333] [&_td]:px-[8px] [&_td]:py-[4px]\"\n >\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 </motion.div>\n </div>\n )\n}\n"],
5
+ "mappings": "AAmCM,OAaE,OAAAA,EAbF,QAAAC,MAAA,oBAnCN,OAAS,WAAAC,EAAS,QAAAC,MAAY,wBAC9B,OAAS,mBAAAC,MAAuB,8BAChC,OAAS,cAAcC,MAAU,gBACjC,OAAS,UAAAC,MAAc,gBACvB,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,EAGlBV,EAAC,OAAgB,UAAWI,EAAG,sEAAsE,EACnG,UAAAJ,EAAC,OACC,UAAU,6BACV,QAAS,IAAM,CACbgB,EAAY,CAACD,CAAQ,CACvB,EACA,KAAK,SACL,SAAU,EACV,UAAWE,GAAK,EACVA,EAAE,MAAQ,SAAWA,EAAE,MAAQ,MACjCA,EAAE,eAAe,CAErB,EAEA,UAAAlB,EAACE,EAAA,CACC,KAAMS,EACN,GAAG,KACH,UAAWN,EACTQ,EACI,+IACA,GACJ,mGACF,EACD,EACAC,EACCA,EAAoB,CAAE,SAAAE,CAAS,CAAC,EAEhChB,EAACI,EAAA,CACC,UAAWC,EACT,oEACAW,EAAW,aAAe,EAC5B,EACF,GAEJ,EACAhB,EAACM,EAAO,IAAP,CACC,QAAS,GACT,QAAS,CAAE,OAASU,EAAe,OAAJ,CAAW,EAC1C,UAAU,qFAET,SAAAJ,GAAQ,SAAS,GAAG,SAAS,yBAAyB,EACrDZ,EAACG,EAAA,CACC,GAAG,MACH,UAAWE,EAAG,UAAU,EACxB,aAAW,OACX,eAAcO,EACd,KAAMA,GAAQ,SAAS,EACxB,EAEDZ,EAACG,EAAA,CACC,GAAG,MACH,KAAMS,GAAQ,SAAS,EACvB,UAAWP,EACT,4GACF,EACD,EAEL,IAzDQK,CA0DV,CAEJ",
6
6
  "names": ["jsx", "jsxs", "Heading", "Text", "ChevronDownIcon", "cn", "motion", "useEffect", "useState", "FaqItem", "index", "question", "answer", "showDots", "itemRightIconRender", "defaultExpended", "expanded", "setExpanded", "e"]
7
7
  }
@@ -1,4 +1,4 @@
1
- export type FaqCopy = {
1
+ export type CreditsFaqCopy = {
2
2
  title: string;
3
3
  subTitle: string;
4
4
  learnMore: {
@@ -11,6 +11,7 @@ export type FaqCopy = {
11
11
  answer: string;
12
12
  }[];
13
13
  };
14
- export declare const CreditsFaq: ({ copy }: {
15
- copy: FaqCopy;
14
+ export declare const CreditsFaq: ({ copy, id }: {
15
+ copy: CreditsFaqCopy;
16
+ id?: string;
16
17
  }) => import("react/jsx-runtime").JSX.Element;
@@ -1,2 +1,2 @@
1
- import{jsx as t,jsxs as v}from"react/jsx-runtime";import{Container as u,Heading as b,Tabs as p,TabsList as x,TabsTrigger as c,Text as d}from"@anker-in/headless-ui";import{cn as T}from"../../../helpers/index";import{useMemo as o,useState as h}from"react";import{FaqItem as q}from"./faqItem/FaqItem";const C=({copy:a})=>{const{title:m,items:r,subTitle:i=""}=a||{},n=o(()=>Array.from(new Set(r?.map?.(e=>e.category_name).filter(e=>!!e))),[r]),[l,g]=h(n[0]?.toString()||""),f=o(()=>r?n.length?r.filter(e=>e?.category_name===l):r:[],[r,n.length,l]);return v(u,{className:"bg-[#F5F5F7]",id:"faq",children:[m&&t(b,{as:"h2",size:"4",html:a?.title}),i&&t("div",{className:"mt-[8px] flex flex-row",children:t(d,{size:"4",as:"p",html:i,className:"flex-1"})}),t(p,{align:"left",shape:"rounded",className:"mt-[24px]",value:l.toString(),onValueChange:e=>{g(e)},children:t(x,{children:n.map((e,s)=>t(c,{value:e?.toString()||"",children:e},s))})}),t("div",{className:T("mt-[24px] flex flex-col overflow-auto pt-0"),children:f?.map((e,s)=>t(q,{index:s,defaultExpended:r.length===1,question:e.question,answer:e.answer,showDots:!1},s))}),a.learnMore?.link&&a.learnMore?.label&&t("a",{href:a.learnMore?.link,target:"_blank",className:"mt-[64px] block w-full text-center text-[18px] font-bold text-brand hover:underline l:text-[16px]",children:a.learnMore?.label})]})};export{C as CreditsFaq};
1
+ import{jsx as t,jsxs as k}from"react/jsx-runtime";import{Container as b,Heading as p,Tabs as x,TabsList as T,TabsTrigger as h,Text as q}from"@anker-in/headless-ui";import{classNames as v,useHeadlessContext as C}from"@anker-in/lib";import{useMemo as o,useState as N}from"react";import{FaqItem as w}from"./faqItem/FaqItem";import{ROUNDED_BRANDS as F}from"../../../constants";const D=({copy:a,id:m})=>{const{title:g,items:r,subTitle:l=""}=a||{},{brand:u}=C(),d=F.includes(u),s=o(()=>Array.from(new Set(r?.map?.(e=>e.category_name).filter(e=>!!e))),[r]),[i,f]=N(s[0]?.toString()||""),c=o(()=>r?s.length?r.filter(e=>e?.category_name===i):r:[],[r,s.length,i]);return k(b,{id:m,className:"bg-[#F5F5F7]",children:[g&&t(p,{as:"h2",size:"4",html:a?.title}),l&&t("div",{className:"mt-[8px] flex flex-row",children:t(q,{size:"4",as:"p",html:l,className:"flex-1"})}),t(x,{align:"left",shape:d?"rounded":"square",className:"mt-[24px]",value:i.toString(),onValueChange:e=>{f(e)},children:t(T,{children:s.map((e,n)=>t(h,{value:e?.toString()||"",children:e},n))})}),t("div",{className:v("mt-[24px] flex flex-col overflow-auto pt-0"),children:c?.map((e,n)=>t(w,{index:n,defaultExpended:r.length===1,question:e.question,answer:e.answer,showDots:!1},n))}),a.learnMore?.link&&a.learnMore?.label&&t("a",{href:a.learnMore?.link,target:"_blank",className:"mt-[24px] block w-full text-center text-[18px] font-bold text-brand hover:underline l:text-[16px]",children:a.learnMore?.label})]})};export{D 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, TabsList, TabsTrigger, Text } from '@anker-in/headless-ui'\nimport { cn } from '../../../helpers/index'\nimport { useMemo, useState } from 'react'\n\nimport { FaqItem } from './faqItem/FaqItem'\n\nexport type FaqCopy = {\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 }: { copy: FaqCopy }) => {\n const { title, items: faqList, subTitle = '' } = copy || {}\n const categoryList = useMemo(() => {\n return Array.from(new Set(faqList?.map?.(faq => faq.category_name).filter(item => !!item)))\n }, [faqList])\n const [activeTab, setActiveTab] = useState<string>(categoryList[0]?.toString() || '')\n\n const currentList = useMemo(() => {\n if (!faqList) return []\n if (categoryList.length) {\n return faqList.filter(item => item?.category_name === activeTab)\n }\n return faqList\n }, [faqList, categoryList.length, activeTab])\n\n return (\n <Container className=\"bg-[#F5F5F7]\" id=\"faq\">\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 {/* faq-nav */}\n <Tabs\n align=\"left\"\n shape=\"rounded\"\n className=\"mt-[24px]\"\n value={activeTab.toString()}\n onValueChange={value => {\n setActiveTab(value)\n }}\n >\n <TabsList>\n {categoryList.map((item, index) => (\n <TabsTrigger key={index} value={item?.toString() || ''}>\n {item}\n </TabsTrigger>\n ))}\n </TabsList>\n </Tabs>\n <div className={cn('mt-[24px] flex flex-col overflow-auto pt-0')}>\n {currentList?.map((item, index) => {\n return (\n <FaqItem\n key={index}\n index={index}\n defaultExpended={faqList.length === 1}\n question={item.question}\n answer={item.answer}\n showDots={false}\n ></FaqItem>\n )\n })}\n </div>\n {copy.learnMore?.link && copy.learnMore?.label && (\n <a\n href={copy.learnMore?.link}\n target=\"_blank\"\n className=\"mt-[64px] 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": "AAmCI,OACY,OAAAA,EADZ,QAAAC,MAAA,oBAnCJ,OAAS,aAAAC,EAAW,WAAAC,EAAS,QAAAC,EAAM,YAAAC,EAAU,eAAAC,EAAa,QAAAC,MAAY,wBACtE,OAAS,MAAAC,MAAU,yBACnB,OAAS,WAAAC,EAAS,YAAAC,MAAgB,QAElC,OAAS,WAAAC,MAAe,oBAejB,MAAMC,EAAa,CAAC,CAAE,KAAAC,CAAK,IAAyB,CACzD,KAAM,CAAE,MAAAC,EAAO,MAAOC,EAAS,SAAAC,EAAW,EAAG,EAAIH,GAAQ,CAAC,EACpDI,EAAeR,EAAQ,IACpB,MAAM,KAAK,IAAI,IAAIM,GAAS,MAAMG,GAAOA,EAAI,aAAa,EAAE,OAAOC,GAAQ,CAAC,CAACA,CAAI,CAAC,CAAC,EACzF,CAACJ,CAAO,CAAC,EACN,CAACK,EAAWC,CAAY,EAAIX,EAAiBO,EAAa,CAAC,GAAG,SAAS,GAAK,EAAE,EAE9EK,EAAcb,EAAQ,IACrBM,EACDE,EAAa,OACRF,EAAQ,OAAOI,GAAQA,GAAM,gBAAkBC,CAAS,EAE1DL,EAJc,CAAC,EAKrB,CAACA,EAASE,EAAa,OAAQG,CAAS,CAAC,EAE5C,OACEnB,EAACC,EAAA,CAAU,UAAU,eAAe,GAAG,MACpC,UAAAY,GAASd,EAACG,EAAA,CAAQ,GAAG,KAAK,KAAK,IAAI,KAAMU,GAAM,MAAO,EACtDG,GACChB,EAAC,OAAI,UAAU,yBACb,SAAAA,EAACO,EAAA,CAAK,KAAK,IAAI,GAAG,IAAI,KAAMS,EAAU,UAAU,SAAS,EAC3D,EAGFhB,EAACI,EAAA,CACC,MAAM,OACN,MAAM,UACN,UAAU,YACV,MAAOgB,EAAU,SAAS,EAC1B,cAAeG,GAAS,CACtBF,EAAaE,CAAK,CACpB,EAEA,SAAAvB,EAACK,EAAA,CACE,SAAAY,EAAa,IAAI,CAACE,EAAMK,IACvBxB,EAACM,EAAA,CAAwB,MAAOa,GAAM,SAAS,GAAK,GACjD,SAAAA,GADeK,CAElB,CACD,EACH,EACF,EACAxB,EAAC,OAAI,UAAWQ,EAAG,4CAA4C,EAC5D,SAAAc,GAAa,IAAI,CAACH,EAAMK,IAErBxB,EAACW,EAAA,CAEC,MAAOa,EACP,gBAAiBT,EAAQ,SAAW,EACpC,SAAUI,EAAK,SACf,OAAQA,EAAK,OACb,SAAU,IALLK,CAMN,CAEJ,EACH,EACCX,EAAK,WAAW,MAAQA,EAAK,WAAW,OACvCb,EAAC,KACC,KAAMa,EAAK,WAAW,KACtB,OAAO,SACP,UAAU,oGAET,SAAAA,EAAK,WAAW,MACnB,GAEJ,CAEJ",
6
- "names": ["jsx", "jsxs", "Container", "Heading", "Tabs", "TabsList", "TabsTrigger", "Text", "cn", "useMemo", "useState", "FaqItem", "CreditsFaq", "copy", "title", "faqList", "subTitle", "categoryList", "faq", "item", "activeTab", "setActiveTab", "currentList", "value", "index"]
4
+ "sourcesContent": ["import { Container, Heading, Tabs, TabsList, TabsTrigger, Text } from '@anker-in/headless-ui'\nimport { classNames as cn, useHeadlessContext } from '@anker-in/lib'\nimport { useMemo, useState } 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 const categoryList = useMemo(() => {\n return Array.from(new Set(faqList?.map?.(faq => faq.category_name).filter(item => !!item)))\n }, [faqList])\n const [activeTab, setActiveTab] = useState<string>(categoryList[0]?.toString() || '')\n\n const currentList = useMemo(() => {\n if (!faqList) return []\n if (categoryList.length) {\n return faqList.filter(item => item?.category_name === activeTab)\n }\n return faqList\n }, [faqList, categoryList.length, activeTab])\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 {/* faq-nav */}\n <Tabs\n align=\"left\"\n shape={rounded ? 'rounded' : 'square'}\n className=\"mt-[24px]\"\n value={activeTab.toString()}\n onValueChange={value => {\n setActiveTab(value)\n }}\n >\n <TabsList>\n {categoryList.map((item, index) => (\n <TabsTrigger key={index} value={item?.toString() || ''}>\n {item}\n </TabsTrigger>\n ))}\n </TabsList>\n </Tabs>\n <div className={cn('mt-[24px] flex flex-col overflow-auto pt-0')}>\n {currentList?.map((item, index) => {\n return (\n <FaqItem\n key={index}\n index={index}\n defaultExpended={faqList.length === 1}\n question={item.question}\n answer={item.answer}\n showDots={false}\n ></FaqItem>\n )\n })}\n </div>\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": "AAsCI,OACY,OAAAA,EADZ,QAAAC,MAAA,oBAtCJ,OAAS,aAAAC,EAAW,WAAAC,EAAS,QAAAC,EAAM,YAAAC,EAAU,eAAAC,EAAa,QAAAC,MAAY,wBACtE,OAAS,cAAcC,EAAI,sBAAAC,MAA0B,gBACrD,OAAS,WAAAC,EAAS,YAAAC,MAAgB,QAElC,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,EAAIX,EAAmB,EAC/BY,EAAUR,EAAe,SAASO,CAAK,EACvCE,EAAeZ,EAAQ,IACpB,MAAM,KAAK,IAAI,IAAIQ,GAAS,MAAMK,GAAOA,EAAI,aAAa,EAAE,OAAOC,GAAQ,CAAC,CAACA,CAAI,CAAC,CAAC,EACzF,CAACN,CAAO,CAAC,EACN,CAACO,EAAWC,CAAY,EAAIf,EAAiBW,EAAa,CAAC,GAAG,SAAS,GAAK,EAAE,EAE9EK,EAAcjB,EAAQ,IACrBQ,EACDI,EAAa,OACRJ,EAAQ,OAAOM,GAAQA,GAAM,gBAAkBC,CAAS,EAE1DP,EAJc,CAAC,EAKrB,CAACA,EAASI,EAAa,OAAQG,CAAS,CAAC,EAE5C,OACExB,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,EAACO,EAAA,CAAK,KAAK,IAAI,GAAG,IAAI,KAAMY,EAAU,UAAU,SAAS,EAC3D,EAGFnB,EAACI,EAAA,CACC,MAAM,OACN,MAAOiB,EAAU,UAAY,SAC7B,UAAU,YACV,MAAOI,EAAU,SAAS,EAC1B,cAAeG,GAAS,CACtBF,EAAaE,CAAK,CACpB,EAEA,SAAA5B,EAACK,EAAA,CACE,SAAAiB,EAAa,IAAI,CAACE,EAAMK,IACvB7B,EAACM,EAAA,CAAwB,MAAOkB,GAAM,SAAS,GAAK,GACjD,SAAAA,GADeK,CAElB,CACD,EACH,EACF,EACA7B,EAAC,OAAI,UAAWQ,EAAG,4CAA4C,EAC5D,SAAAmB,GAAa,IAAI,CAACH,EAAMK,IAErB7B,EAACY,EAAA,CAEC,MAAOiB,EACP,gBAAiBX,EAAQ,SAAW,EACpC,SAAUM,EAAK,SACf,OAAQA,EAAK,OACb,SAAU,IALLK,CAMN,CAEJ,EACH,EACCd,EAAK,WAAW,MAAQA,EAAK,WAAW,OACvCf,EAAC,KACC,KAAMe,EAAK,WAAW,KACtB,OAAO,SACP,UAAU,oGAET,SAAAA,EAAK,WAAW,MACnB,GAEJ,CAEJ",
6
+ "names": ["jsx", "jsxs", "Container", "Heading", "Tabs", "TabsList", "TabsTrigger", "Text", "cn", "useHeadlessContext", "useMemo", "useState", "FaqItem", "ROUNDED_BRANDS", "CreditsFaq", "copy", "id", "title", "faqList", "subTitle", "brand", "rounded", "categoryList", "faq", "item", "activeTab", "setActiveTab", "currentList", "value", "index"]
7
7
  }
@@ -1,20 +1,15 @@
1
- import { type MyRewardsMetafields } from '../modal/MyRewardsModal';
2
- import { type MyActivitiesMetafields } from '../modal/activitiesModal';
3
1
  type ButtonConfig = {
4
2
  text: string;
5
3
  type: 'activities' | 'rewards';
6
4
  };
7
- export interface InfoCardProps {
8
- data: {
9
- balanceLabel: string;
10
- comingSoonLabel: string;
11
- comingSoonTips: string;
12
- buttons: ButtonConfig[];
13
- pointUnit: string;
14
- infoIcon: string;
15
- myActivities: MyActivitiesMetafields;
16
- myRewards: MyRewardsMetafields;
17
- };
18
- }
19
- export declare function CreditsInfoCard({ data }: InfoCardProps): import("react/jsx-runtime").JSX.Element;
5
+ export type CreditsInfoCardCopy = {
6
+ balanceLabel: string;
7
+ comingSoonLabel: string;
8
+ comingSoonTips: string;
9
+ buttons: ButtonConfig[];
10
+ };
11
+ export declare function CreditsInfoCard({ copy, id }: {
12
+ copy: CreditsInfoCardCopy;
13
+ id?: string;
14
+ }): import("react/jsx-runtime").JSX.Element;
20
15
  export {};
@@ -1,2 +1,2 @@
1
- import{jsx as e,jsxs as i}from"react/jsx-runtime";import{Button as g,Container as u,Text as r}from"@anker-in/headless-ui";import{useCallback as y,useState as p}from"react";import{useCreditsContext as w}from"../context/provider";import{cn as s}from"../../../helpers";import{numberFormat as c}from"../context/utils";import N from"../modal/activitiesModal";import C from"../modal/MyRewardsModal";function S({data:t}){const[f,m]=p(!1),[v,x]=p(!1),[n,o]=p(!1),b=y(l=>{if(l.type)switch(l.type){case"activities":m(!0);break;case"rewards":x(!0);break}},[]),{creditInfo:a}=w();return i(u,{asChild:!0,id:"infoCard",className:"-mb-[86px] -translate-y-[86px] x:-mb-[30px] x:-translate-y-[30px]",children:[i("div",{className:s("mx-auto flex justify-between items-center rounded-[12px] border border-white px-[24px] py-[40px]","l:flex-col","min-l:px-[48px]","min-xl:px-[100px]"),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:s("grid grid-cols-2 gap-[24px] font-bold 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:s("mb-[24px] text-[14px] font-bold l:mb-[6px] xl:text-[16px] min-md:text-[18px] l-xl:mb-[16px]"),children:t.balanceLabel}),i("div",{className:"flex items-baseline",children:[e("div",{className:s("mr-[8px] text-[36px] font-extrabold","min-md:text-[44px]","min-xl:text-[56px]"),children:a?c(a.available_credit):0}),e("div",{className:"text-[16px]",children:t?.pointUnit})]})]}),i("div",{className:"w-fit md:flex-1",children:[i("div",{className:s("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:t.comingSoonLabel}),t.comingSoonTips&&i("div",{className:"group relative ml-[4px] flex cursor-pointer items-start",children:[e(r,{as:"div",html:t?.infoIcon,className:"size-[18px] cursor-pointer [&_svg]:size-full",onClick:()=>{n?o(!1):(o(!0),setTimeout(()=>{o(!1)},5e3))}}),e("div",{className:s("absolute -bottom-[12px] -left-[32px] z-10 w-[356px] translate-y-full md:w-[276px]",n?"block":"hidden"),children:i("div",{className:"relative rounded-[10px] bg-[#6D6D6F] p-[16px] text-[14px] font-medium text-white shadow",children:[e(r,{size:"2",html:t.comingSoonTips,className:"desktop:text-[18px]"}),e("div",{className:"absolute -top-[10px] left-[40px] mb-2 size-[16px] origin-top-left rotate-45 transform rounded-[2px] bg-[#6D6D6F]"})]})})]})]}),i("div",{className:"flex items-baseline ",children:[e("div",{className:s("mr-[8px] text-[36px] font-extrabold","min-l:text-[44px]","min-xl:text-[56px]"),children:a?c(a.pending_credit):0}),e("div",{className:"text-[16px]",children:t?.pointUnit})]})]})]}),e("div",{className:s("grid w-fit md:w-full l:mt-[32px] l:gap-[12px] min-l:gap-[16px] min-l:pl-[48px] md-l:grid-cols-2"),children:t.buttons?.map((l,d)=>e(g,{variant:d===0?"secondary":"primary",size:"lg",className:"min-w-[156px] laptop:min-w-[189px]",onClick:()=>{b(l)},children:l.text},d))}),t?.myActivities&&e(N,{isOpen:f,data:t?.myActivities,onClose:()=>{m(!1)}}),t?.myRewards&&e(C,{isOpen:v,data:t?.myRewards,onClose:()=>{x(!1)}})]}),n&&e("div",{role:"button",tabIndex:0,className:"fixed inset-0 z-10",onClick:()=>o(!1),onKeyDown:l=>l.key==="Escape"&&o(!1)})]})}export{S as CreditsInfoCard};
1
+ import{jsx as e,jsxs as i}from"react/jsx-runtime";import{Button as w,Container as y,Text as x}from"@anker-in/headless-ui";import{useCallback as k,useState as m}from"react";import{useCreditsContext as h}from"../context/provider";import{numberFormat as v}from"../context/utils";import M from"../modal/activitiesModal";import D from"../modal/MyRewardsModal";import{gaNormalClick as z,classNames as t,useHeadlessContext as B}from"@anker-in/lib";import{ROUNDED_BRANDS as S}from"../../../constants";function U({copy:l,id:b}){const[u,p]=m(!1),[g,c]=m(!1),[d,o]=m(!1),{creditInfo:n,pageCommon:s}=h(),{brand:N}=B(),r=S.includes(N),C=k(a=>{if(z({position:"info_card",label:a.text}),a.type)switch(a.type){case"activities":p(!0);break;case"rewards":c(!0);break}},[]);return i(y,{asChild:!0,id:b,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]",!r&&"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","min-md:text-[44px]","min-xl:text-[56px]"),children:n?v(n.available_credit):0}),e("div",{className:"text-[16px]",children:s?.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(x,{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(x,{as:"div",html:s?.infoIcon,className:"size-[18px] cursor-pointer [&_svg]:size-full",onClick:()=>{d?o(!1):(o(!0),setTimeout(()=>{o(!1)},5e3))}}),e("div",{className:t("absolute -bottom-[12px] -left-[32px] z-10 w-[356px] translate-y-full md:w-[276px]",d?"block":"hidden"),children:i("div",{className:t("relative rounded-[10px] bg-[#6D6D6F] p-[16px] text-[14px] font-medium text-white shadow",!r&&"rounded-none"),children:[e(x,{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]",!r&&"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:n?v(n.pending_credit):0}),e("div",{className:"text-[16px]",children:s?.pointUnit})]})]})]}),e("div",{className:t("grid w-fit md:w-full l:mt-[32px] l:gap-[12px] min-l:gap-[16px] min-l:pl-[48px] md-l:grid-cols-2"),children:l.buttons?.map((a,f)=>e(w,{variant:f===0?"secondary":"primary",size:"lg",className:"min-w-[156px] laptop:min-w-[189px]",onClick:()=>{C(a)},children:a.text},f))}),s?.activitiesModal&&e(M,{isOpen:u,data:s?.activitiesModal,onClose:()=>{p(!1)}}),s?.rewardsModal&&e(D,{isOpen:g,data:s?.rewardsModal,onClose:()=>{c(!1)}})]}),d&&e("div",{role:"button",tabIndex:0,className:"fixed inset-0 z-10",onClick:()=>o(!1),onKeyDown:a=>a.key==="Escape"&&o(!1)})]})}export{U 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 { cn } from '../../../helpers'\nimport { numberFormat } from '../context/utils'\nimport ActivitiesModal from '../modal/activitiesModal'\nimport MyRewardsModal, { type MyRewardsMetafields } from '../modal/MyRewardsModal'\nimport { type MyActivitiesMetafields } from '../modal/activitiesModal'\n\ntype ButtonConfig = {\n text: string\n type: 'activities' | 'rewards'\n}\nexport interface InfoCardProps {\n data: {\n balanceLabel: string\n comingSoonLabel: string\n comingSoonTips: string\n buttons: ButtonConfig[]\n pointUnit: string\n infoIcon: string\n myActivities: MyActivitiesMetafields\n myRewards: MyRewardsMetafields\n }\n}\nexport function CreditsInfoCard({ data }: InfoCardProps) {\n const [openActivities, setOpenActivities] = useState(false)\n const [openRewards, setOpenRewards] = useState(false)\n const [hover, setHover] = useState<boolean>(false)\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 setOpenActivities(true)\n break\n case 'rewards':\n setOpenRewards(true)\n break\n }\n }\n }, [])\n\n const { creditInfo } = useCreditsContext()\n\n return (\n <Container asChild id=\"infoCard\" 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',\n 'min-l:px-[48px]',\n 'min-xl:px-[100px]'\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 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 {data.balanceLabel}\n </div>\n <div className=\"flex items-baseline\">\n <div className={cn('mr-[8px] text-[36px] font-extrabold', 'min-md:text-[44px]', 'min-xl:text-[56px]')}>\n {creditInfo ? numberFormat(creditInfo.available_credit) : 0}\n </div>\n <div className=\"text-[16px]\">{data?.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={data.comingSoonLabel} />\n {data.comingSoonTips && (\n <div className=\"group relative ml-[4px] flex cursor-pointer items-start\">\n <Text\n as=\"div\"\n html={data?.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 className=\"relative rounded-[10px] bg-[#6D6D6F] p-[16px] text-[14px] font-medium text-white shadow\">\n <Text size=\"2\" html={data.comingSoonTips} className=\"desktop:text-[18px]\" />\n <div className=\"absolute -top-[10px] left-[40px] mb-2 size-[16px] origin-top-left rotate-45 transform rounded-[2px] bg-[#6D6D6F]\" />\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) : 0}\n </div>\n <div className=\"text-[16px]\">{data?.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] min-l:gap-[16px] min-l:pl-[48px] md-l:grid-cols-2'\n )}\n >\n {data.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\n {data?.myActivities && (\n <ActivitiesModal\n isOpen={openActivities}\n data={data?.myActivities}\n onClose={() => {\n setOpenActivities(false)\n }}\n />\n )}\n {data?.myRewards && (\n <MyRewardsModal\n isOpen={openRewards}\n data={data?.myRewards}\n onClose={() => {\n setOpenRewards(false)\n }}\n ></MyRewardsModal>\n )}\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": "AAqEY,cAAAA,EAOA,QAAAC,MAPA,oBArEZ,OAAS,UAAAC,EAAQ,aAAAC,EAAW,QAAAC,MAAY,wBAExC,OAAS,eAAAC,EAAa,YAAAC,MAAgB,QACtC,OAAS,qBAAAC,MAAyB,sBAClC,OAAS,MAAAC,MAAU,mBACnB,OAAS,gBAAAC,MAAoB,mBAC7B,OAAOC,MAAqB,2BAC5B,OAAOC,MAAkD,0BAmBlD,SAASC,EAAgB,CAAE,KAAAC,CAAK,EAAkB,CACvD,KAAM,CAACC,EAAgBC,CAAiB,EAAIT,EAAS,EAAK,EACpD,CAACU,EAAaC,CAAc,EAAIX,EAAS,EAAK,EAC9C,CAACY,EAAOC,CAAQ,EAAIb,EAAkB,EAAK,EAE3Cc,EAAoBf,EAAagB,GAA+B,CAGpE,GAAIA,EAAa,KACf,OAAQA,EAAa,KAAM,CACzB,IAAK,aACHN,EAAkB,EAAI,EACtB,MACF,IAAK,UACHE,EAAe,EAAI,EACnB,KACJ,CAEJ,EAAG,CAAC,CAAC,EAEC,CAAE,WAAAK,CAAW,EAAIf,EAAkB,EAEzC,OACEN,EAACE,EAAA,CAAU,QAAO,GAAC,GAAG,WAAW,UAAU,oEACzC,UAAAF,EAAC,OACC,UAAWO,EACT,mGACA,aACA,kBACA,mBACF,EACA,MAAO,CACL,WACE,gIACF,eAAgB,WAClB,EAEA,UAAAP,EAAC,OACC,UAAWO,EACT,oGACF,EAEA,UAAAP,EAAC,OAAI,UAAU,gDACb,UAAAD,EAAC,OACC,UAAWQ,EACT,6FACF,EAEC,SAAAK,EAAK,aACR,EACAZ,EAAC,OAAI,UAAU,sBACb,UAAAD,EAAC,OAAI,UAAWQ,EAAG,sCAAuC,qBAAsB,oBAAoB,EACjG,SAAAc,EAAab,EAAaa,EAAW,gBAAgB,EAAI,EAC5D,EACAtB,EAAC,OAAI,UAAU,cAAe,SAAAa,GAAM,UAAU,GAChD,GACF,EACAZ,EAAC,OAAI,UAAU,kBACb,UAAAA,EAAC,OAAI,UAAWO,EAAG,oEAAoE,EACrF,UAAAR,EAACI,EAAA,CAAK,UAAU,0DAA0D,KAAMS,EAAK,gBAAiB,EACrGA,EAAK,gBACJZ,EAAC,OAAI,UAAU,0DACb,UAAAD,EAACI,EAAA,CACC,GAAG,MACH,KAAMS,GAAM,SACZ,UAAU,+CACV,QAAS,IAAM,CACTK,EACFC,EAAS,EAAK,GAEdA,EAAS,EAAI,EACb,WAAW,IAAM,CACfA,EAAS,EAAK,CAChB,EAAG,GAAI,EAEX,EACF,EACAnB,EAAC,OACC,UAAWQ,EACT,oFACAU,EAAQ,QAAU,QACpB,EAEA,SAAAjB,EAAC,OAAI,UAAU,0FACb,UAAAD,EAACI,EAAA,CAAK,KAAK,IAAI,KAAMS,EAAK,eAAgB,UAAU,sBAAsB,EAC1Eb,EAAC,OAAI,UAAU,mHAAmH,GACpI,EACF,GACF,GAEJ,EACAC,EAAC,OAAI,UAAU,uBACb,UAAAD,EAAC,OAAI,UAAWQ,EAAG,sCAAuC,oBAAqB,oBAAoB,EAChG,SAAAc,EAAab,EAAaa,EAAW,cAAc,EAAI,EAC1D,EACAtB,EAAC,OAAI,UAAU,cAAe,SAAAa,GAAM,UAAU,GAChD,GACF,GACF,EACAb,EAAC,OACC,UAAWQ,EACT,iGACF,EAEC,SAAAK,EAAK,SAAS,IAAI,CAACU,EAAMC,IACxBxB,EAACE,EAAA,CAEC,QAASsB,IAAU,EAAI,YAAc,UACrC,KAAK,KACL,UAAU,qCACV,QAAS,IAAM,CACbJ,EAAkBG,CAAI,CACxB,EAEC,SAAAA,EAAK,MARDC,CASP,CACD,EACH,EAECX,GAAM,cACLb,EAACU,EAAA,CACC,OAAQI,EACR,KAAMD,GAAM,aACZ,QAAS,IAAM,CACbE,EAAkB,EAAK,CACzB,EACF,EAEDF,GAAM,WACLb,EAACW,EAAA,CACC,OAAQK,EACR,KAAMH,GAAM,UACZ,QAAS,IAAM,CACbI,EAAe,EAAK,CACtB,EACD,GAEL,EACCC,GACClB,EAAC,OACC,KAAK,SACL,SAAU,EACV,UAAU,qBACV,QAAS,IAAMmB,EAAS,EAAK,EAC7B,UAAWM,GAAKA,EAAE,MAAQ,UAAYN,EAAS,EAAK,EACtD,GAEJ,CAEJ",
6
- "names": ["jsx", "jsxs", "Button", "Container", "Text", "useCallback", "useState", "useCreditsContext", "cn", "numberFormat", "ActivitiesModal", "MyRewardsModal", "CreditsInfoCard", "data", "openActivities", "setOpenActivities", "openRewards", "setOpenRewards", "hover", "setHover", "handleButtonClick", "buttonConfig", "creditInfo", "item", "index", "e"]
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 ActivitiesModal from '../modal/activitiesModal'\nimport MyRewardsModal from '../modal/MyRewardsModal'\nimport { gaNormalClick, classNames as cn, useHeadlessContext } from '@anker-in/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 [openActivities, setOpenActivities] = useState(false)\n const [openRewards, setOpenRewards] = useState(false)\n const [hover, setHover] = useState<boolean>(false)\n const { creditInfo, pageCommon } = useCreditsContext()\n const { brand } = 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 setOpenActivities(true)\n break\n case 'rewards':\n setOpenRewards(true)\n break\n }\n }\n }, [])\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 className={cn('mr-[8px] text-[36px] font-extrabold', 'min-md:text-[44px]', 'min-xl:text-[56px]')}>\n {creditInfo ? numberFormat(creditInfo.available_credit) : 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) : 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] min-l:gap-[16px] min-l: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\n {pageCommon?.activitiesModal && (\n <ActivitiesModal\n isOpen={openActivities}\n data={pageCommon?.activitiesModal}\n onClose={() => {\n setOpenActivities(false)\n }}\n />\n )}\n {pageCommon?.rewardsModal && (\n <MyRewardsModal\n isOpen={openRewards}\n data={pageCommon?.rewardsModal}\n onClose={() => {\n setOpenRewards(false)\n }}\n ></MyRewardsModal>\n )}\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": "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",
6
+ "names": ["jsx", "jsxs", "Button", "Container", "Text", "useCallback", "useState", "useCreditsContext", "numberFormat", "ActivitiesModal", "MyRewardsModal", "gaNormalClick", "cn", "useHeadlessContext", "ROUNDED_BRANDS", "CreditsInfoCard", "copy", "id", "openActivities", "setOpenActivities", "openRewards", "setOpenRewards", "hover", "setHover", "creditInfo", "pageCommon", "brand", "rounded", "handleButtonClick", "buttonConfig", "item", "index", "e"]
7
7
  }
@@ -0,0 +1,5 @@
1
+ import { CreditsMemberPriceCopy } from './type';
2
+ export declare const CreditsMemberPrice: ({ copy, id }: {
3
+ copy: CreditsMemberPriceCopy;
4
+ id?: string;
5
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ import{Fragment as H,jsx as s,jsxs as b}from"react/jsx-runtime";import{Container as O,Heading as U,Tabs as W,TabsList as q,TabsTrigger as G}from"@anker-in/headless-ui";import{useMemo as c,useState as g,useEffect as L,useCallback as D,useRef as J}from"react";import F from"decimal.js";import K from"./MemberPriceItem";import Q from"../creditsCash/RedeemableItem";import X from"../context/hooks/useRedeemableList";import Y from"../modal/rulesModal";import{Pagination as S}from"./Pagination";import{useProductsByHandles as E}from"@anker-in/lib";import{classNames as Z}from"@anker-in/lib";import{useCreditsContext as $}from"../context/provider";import{FunctionDiscountType as T}from"../context/memberPriceConst";const fe=({copy:n,id:z})=>{const[d,B]=g(n.tabs[0]?.type||"memberPrice"),[P,_]=g(),[l,p]=g(1),[o,u]=g(9),{redeemableList:w}=X(),{pageCommon:V,memberPriceDiscount:f}=$(),v=J(null);console.log("copy in CreditsMemberPrice",n);const M=[{namespace:"global",key:"transparentImg"}];L(()=>{const e=()=>{const t=window.innerWidth;t>=1440?u(12):t>=1024?u(9):t>=768?u(12):u(8)};return e(),window.addEventListener("resize",e),()=>window.removeEventListener("resize",e)},[]),L(()=>{p(1)},[d,o]);const m=c(()=>!f||!n.memberPriceTab.memberPriceRuleId?null:f.find(e=>String(e.rule_id)===String(n.memberPriceTab.memberPriceRuleId))?.result_detail?.member_discounts?.find(e=>e.user_identity===1),[f,n.memberPriceTab.memberPriceRuleId]);console.log("targetRule in CreditsMemberPrice",m);const A=c(()=>m?m.main_products?.variants?.map(e=>e.handle)||[]:[],[m?.main_products.variants]),{data:h}=E({handles:A,metafieldIdentifiers:{variant:M}}),{data:C}=E({handles:n?.redeemTab?.list?.map(e=>e.products?.[0]?.handle)||[],metafieldIdentifiers:{variant:M}}),R=D(e=>{if(!m)return null;const t=m?.discount_conf;if(!t)return null;let r=new F(e);switch(t.discount_type){case T.Percentage:r=r.mul(100-t.discount_value).div(100);break;case T.FixedAmount:r=r.sub(t.discount_value);break;case T.FixedPrice:r=new F(t.discount_value);break}return{memberPrice:r.toNumber(),originalPrice:e}},[m]),x=c(()=>!m||!h?[]:m.main_products.variants.map(e=>{const t=h.find(i=>i.handle===e.handle);if(!t)return null;const r=t.variants?.find(i=>i.sku===e.sku)||t.variants?.[0];if(!r||!r.availableForSale)return null;const a=R(r.price.amount);return a?{product:t,productVariant:r,memberPrice:a.memberPrice,originalPrice:a.originalPrice}:null})?.filter(Boolean)||[],[m,h,R]),I=c(()=>C?.map(e=>{const t=n.redeemTab.list.find(i=>i.products?.[0]?.handle===e.handle),r=w.find(i=>i.id?.toString()===t?.redeemId?.toString()),a=e.variants?.find(i=>i.sku===t?.products?.[0]?.sku)||e.variants?.[0];return!r||!a||!a.availableForSale||r.is_limited&&r.remaining_inventory<=0?null:{product:e,productVariant:a,alpcData:{id:r?.id,consumeCredits:r?.consume_credits,remainingInventory:r?.remaining_inventory,isLimited:r?.is_limited,consumeType:r?.consume_type,title:r?.name,desc:r?.note},config:t}}).filter(Boolean),[C,n.redeemTab.list,w]),k=c(()=>{const e=x?.length||0,t=Math.ceil(e/o),r=(l-1)*o,a=r+o,i=x?.slice(r,a)||[];return{totalPages:t,currentItems:i,showPagination:t>1}},[x,l,o]),y=c(()=>{const e=I?.length||0,t=Math.ceil(e/o),r=(l-1)*o,a=r+o,i=I?.slice(r,a)||[];return{totalPages:t,currentItems:i,showPagination:t>1}},[I,l,o]),N=D(e=>{if(p(e),v.current){const t=v.current.offsetTop;window.scrollTo({top:t-80,behavior:"smooth"})}},[p]);return b(O,{id:z,className:Z("bg-[#F5F5F5]"),ref:v,children:[s(U,{as:"h2",size:"4",html:n.title,className:"mx:px-[16px]"}),s(W,{align:"left",className:"mt-[24px]",value:d,onValueChange:e=>B(e),children:s(q,{children:n.tabs.map((e,t)=>s(G,{value:e.type,children:e.label},t))})}),b("div",{className:"relative mt-[24px]",children:[d==="memberPrice"&&b(H,{children:[s("div",{className:"grid md:grid-cols-2 gap-[12px] grid-cols-4 md-xl:grid-cols-3 lg:gap-[16px]",children:k.currentItems?.map((e,t)=>s(K,{itemData:e,copy:n.memberPriceTab},t))}),s(S,{currentPage:l,totalPages:k.totalPages,onPageChange:N})]}),d==="redeem"&&b(H,{children:[s("div",{className:"grid md:grid-cols-2 gap-[12px] grid-cols-4 md-xl:grid-cols-3 lg:gap-[16px]",children:y.currentItems?.map((e,t)=>s(Q,{copy:{title:n.title,...n.redeemTab},itemData:e,setRules:_,currencyCode:C?.[0]?.price.currencyCode||"USD"},t))}),s(S,{currentPage:l,totalPages:y.totalPages,onPageChange:N})]})]}),P&&s(Y,{overlayClassName:"md:px-[16px] md:items-center",className:"md:h-fit md:rounded-b-[16px]",isOpen:P.length>0,onClose:()=>_([]),titleClassName:"border-b-transparent h-[56px]",rules:P,scrollClassName:"md:mt-[8px] md:mb-[24px] md:pt-0",title:V?.ruleLabel,ruleClassName:"text-[#1d1d1f] font-bold"})]})};export{fe as CreditsMemberPrice};
2
+ //# sourceMappingURL=CreditsMemberPrice.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../src/components/credits/creditsMemberPrice/CreditsMemberPrice.tsx"],
4
+ "sourcesContent": ["import { Container, Heading, Tabs, 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 } 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'\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 } = useCreditsContext()\n const containerRef = useRef<HTMLDivElement>(null)\n\n console.log('copy in CreditsMemberPrice', copy)\n\n // \u5B9A\u4E49\u9700\u8981\u83B7\u53D6\u7684 metafield\uFF0C\u5305\u62EC\u900F\u660E\u56FE\n const variantMetafieldIdentifiers: any[] = [\n {\n namespace: 'global',\n key: 'transparentImg',\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\n .find(rule => String(rule.rule_id) === String(copy.memberPriceTab.memberPriceRuleId))\n ?.result_detail?.member_discounts?.find(discount => discount.user_identity === 1)\n }, [memberPriceDiscount, copy.memberPriceTab.memberPriceRuleId])\n\n console.log('targetRule in CreditsMemberPrice', targetRule)\n\n const memberPriceHandles = useMemo(() => {\n if (!targetRule) return []\n\n return targetRule.main_products?.variants?.map(variant => variant.handle) || []\n }, [targetRule?.main_products.variants])\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 // \u8BA1\u7B97\u4F1A\u5458\u4EF7\u7684\u8F85\u52A9\u51FD\u6570\uFF08\u4EC5\u4F7F\u7528\u666E\u901A\u4F1A\u5458 user_identity = 1 \u7684\u6298\u6263\uFF09\n const calculateMemberPrice = useCallback(\n (price: number) => {\n if (!targetRule) return null\n\n const discountConfig = targetRule?.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 return {\n memberPrice: salePrice.toNumber(),\n originalPrice: price,\n }\n },\n [targetRule]\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 return (\n (targetRule.main_products.variants\n .map(variant => {\n const product = memberPriceProducts.find(p => p.handle === variant.handle)\n if (!product) return null\n\n const productVariant = product.variants?.find(v => v.sku === variant.sku) || product.variants?.[0]\n if (!productVariant || !productVariant.availableForSale) return null\n\n const priceResult = calculateMemberPrice(productVariant.price.amount)\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 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={value => setActiveTab(value as 'memberPrice' | 'redeem')}\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 </Tabs>\n\n {/* Tab \u5185\u5BB9 */}\n <div className=\"relative mt-[24px]\">\n {/* \u4F1A\u5458\u4EF7 Tab */}\n {activeTab === 'memberPrice' && (\n <>\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 </>\n )}\n\n {/* \u79EF\u5206\u5151\u6362 Tab */}\n {activeTab === 'redeem' && (\n <>\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 </>\n )}\n </div>\n\n {/* Rules Modal */}\n {rules && (\n <RulesModal\n overlayClassName=\"md:px-[16px] md:items-center\"\n className=\"md:h-fit md:rounded-b-[16px]\"\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": "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",
6
+ "names": ["Fragment", "jsx", "jsxs", "Container", "Heading", "Tabs", "TabsList", "TabsTrigger", "useMemo", "useState", "useEffect", "useCallback", "useRef", "Decimal", "MemberPriceItem", "RedeemableItem", "useRedeemableList", "RulesModal", "Pagination", "useProductsByHandles", "cn", "useCreditsContext", "FunctionDiscountType", "CreditsMemberPrice", "copy", "id", "activeTab", "setActiveTab", "rules", "setRules", "currentPage", "setCurrentPage", "itemsPerPage", "setItemsPerPage", "redeemableList", "pageCommon", "memberPriceDiscount", "containerRef", "variantMetafieldIdentifiers", "updateItemsPerPage", "width", "targetRule", "rule", "discount", "memberPriceHandles", "variant", "memberPriceProducts", "redeemProducts", "item", "calculateMemberPrice", "price", "discountConfig", "salePrice", "memberPriceList", "product", "p", "productVariant", "v", "priceResult", "redeemList", "config", "alpcData", "memberPricePagination", "totalItems", "totalPages", "startIndex", "endIndex", "currentItems", "redeemPagination", "handlePageChange", "page", "top", "value", "tab", "index"]
7
+ }
@@ -0,0 +1,7 @@
1
+ import { CreditsMemberPriceCopy, MemberPriceProduct } from './type';
2
+ declare function MemberPriceItem({ itemData, copy, className, }: {
3
+ itemData: MemberPriceProduct;
4
+ copy: CreditsMemberPriceCopy['memberPriceTab'];
5
+ className?: string;
6
+ }): import("react/jsx-runtime").JSX.Element;
7
+ export default MemberPriceItem;
@@ -0,0 +1,2 @@
1
+ import{jsx as r,jsxs as l}from"react/jsx-runtime";import{Button as u,Text as o,Picture as m}from"@anker-in/headless-ui";import{useMemo as g}from"react";import{formatPrice as f,extractVariantId as i}from"../context/utils";import{classNames as a,useHeadlessContext as V,useBuyNow as M}from"@anker-in/lib";import{useCreditsContext as k}from"../context/provider";import{ROUNDED_BRANDS as A}from"../../../constants";function I({itemData:e,copy:t,className:b}){const{brand:c,locale:s}=V(),{profile:n,openSignUpPopup:v}=k(),N=A.includes(c),{trigger:h,isMutating:d}=M({},{throwOnError:!0}),p=g(()=>e.productVariant?.availableForSale,[e.productVariant?.availableForSale]),P=g(()=>!!n,[n]),C=()=>{const x=i(e.productVariant?.id),y=x?`/products/${e.product.handle}?variant=${x}`:`/products/${e.product.handle}`;window.location.href=y},w=()=>{if(!P){v();return}h({customAttributes:[{key:"_member_type",value:String(n?.memberType||0)}],lineItems:[{variant:e.productVariant,quantity:1}]})};return l("div",{className:a("relative flex flex-col items-center bg-[#EAEAEC] p-[24px] l:p-[8px] rounded-[16px] md-xl:p-[16px] md:rounded-[12px]",!N&&"rounded-none md:rounded-none",b),children:[t.memberPriceImg&&r(m,{className:"absolute left-[24px] top-[16px] h-[24px] w-auto",imgClassName:"!h-full object-contain",source:t.memberPriceImg.url,alt:t.memberPriceImg.alt||"Member Price"}),r("a",{href:i(e.productVariant?.id)?`/products/${e.product.handle}?variant=${i(e.productVariant?.id)}`:`/products/${e.product.handle}`,className:a("relative mx-auto size-[138px]"),children:r(m,{className:"mx-auto size-full",imgClassName:"object-contain",source:e?.productVariant?.metafields?.global?.transparentImg||e?.config?.image?.url||e?.productVariant?.image?.url})}),l("div",{className:a("mt-[10px] xl:mt-[8px] w-full"),children:[r(o,{html:e?.product?.title,title:e?.product?.title,className:"line-clamp-2 text-[24px] l-xxl:text-[20px] l:text-[16px] font-bold leading-[1.2] tracking-[-0.8px] text-[#080A0F]"}),l("div",{className:"mt-[16px] flex flex-col gap-[8px]",children:[r(o,{html:t.memberPriceLabel,className:a("text-brand-color-0 text-[16px] l-xl:text-[14px] l:text-[12px] w-fit font-bold leading-[1.4] tracking-[-0.28px]",c==="ankersolix"&&"leading-none bg-gradient-to-r from-[#2c7ed0] via-[#00a9e1] via-[43%] to-[#00db84] bg-clip-text text-transparent"),as:"p"}),l("div",{className:"flex items-center gap-[4px]",children:[r(o,{html:f({amount:e.memberPrice,currencyCode:e?.productVariant?.price.currencyCode||"USD",locale:s}),className:"text-[24px] l-xxl:text-[20px] l:text-[16px] font-bold leading-[1.2] tracking-[-0.8px] text-[#080A0F]",as:"span"}),r(o,{html:f({amount:e.originalPrice,currencyCode:e?.productVariant?.price.currencyCode||"USD",locale:s}),className:"text-[24px] l-xxl:text-[20px] l:text-[16px] font-bold leading-[1.2] tracking-[-0.8px] text-[#4A4C56] line-through",as:"span"})]}),l("div",{className:"flex w-full gap-[8px] l:flex-col",children:[r(u,{variant:"secondary",className:"flex-1 md:w-full",size:"lg",onClick:C,disabled:!p,children:t.learnMoreText}),r(u,{variant:"primary",className:"flex-1 md:w-full",size:"lg",onClick:w,disabled:!p||d,loading:d,children:t.shopNowText})]})]})]})]})}var _=I;export{_ as default};
2
+ //# sourceMappingURL=MemberPriceItem.js.map