@anker-in/campaign-ui 0.2.0 → 0.2.2-beta.1

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 (529) hide show
  1. package/dist/cjs/components/chat/index.js +1 -1
  2. package/dist/cjs/components/chat/index.js.map +3 -3
  3. package/dist/cjs/components/credits/context/hooks/useActivities.js +1 -1
  4. package/dist/cjs/components/credits/context/hooks/useActivities.js.map +3 -3
  5. package/dist/cjs/components/credits/context/hooks/useAlpcFetch.js +1 -1
  6. package/dist/cjs/components/credits/context/hooks/useAlpcFetch.js.map +3 -3
  7. package/dist/cjs/components/credits/context/hooks/useFunctionMemberPrice.d.ts +7 -0
  8. package/dist/cjs/components/credits/context/hooks/useFunctionMemberPrice.js +2 -0
  9. package/dist/cjs/components/credits/context/hooks/useFunctionMemberPrice.js.map +7 -0
  10. package/dist/cjs/components/credits/context/hooks/useMyRewards.js +1 -1
  11. package/dist/cjs/components/credits/context/hooks/useMyRewards.js.map +3 -3
  12. package/dist/cjs/components/credits/context/hooks/useRedeemAndBuy.js +1 -1
  13. package/dist/cjs/components/credits/context/hooks/useRedeemAndBuy.js.map +2 -2
  14. package/dist/cjs/components/credits/context/hooks/useRedeemCoupon.js +1 -1
  15. package/dist/cjs/components/credits/context/hooks/useRedeemCoupon.js.map +3 -3
  16. package/dist/cjs/components/credits/context/hooks/useRedeemProduct.js +1 -1
  17. package/dist/cjs/components/credits/context/hooks/useRedeemProduct.js.map +3 -3
  18. package/dist/cjs/components/credits/context/hooks/useRedeemableList.js +1 -1
  19. package/dist/cjs/components/credits/context/hooks/useRedeemableList.js.map +3 -3
  20. package/dist/cjs/components/credits/context/hooks/useSubscribed.js +1 -1
  21. package/dist/cjs/components/credits/context/hooks/useSubscribed.js.map +3 -3
  22. package/dist/cjs/components/credits/context/memberPriceConst.d.ts +10 -0
  23. package/dist/cjs/components/credits/context/memberPriceConst.js +2 -0
  24. package/dist/cjs/components/credits/context/memberPriceConst.js.map +7 -0
  25. package/dist/cjs/components/credits/context/memberPriceTypes.d.ts +46 -0
  26. package/dist/cjs/components/credits/context/memberPriceTypes.js +2 -0
  27. package/dist/cjs/components/credits/context/memberPriceTypes.js.map +7 -0
  28. package/dist/cjs/components/credits/context/provider.d.ts +11 -33
  29. package/dist/cjs/components/credits/context/provider.js +1 -1
  30. package/dist/cjs/components/credits/context/provider.js.map +3 -3
  31. package/dist/cjs/components/credits/context/utils/atobID.d.ts +1 -0
  32. package/dist/cjs/components/credits/context/utils/atobID.js +2 -0
  33. package/dist/cjs/components/credits/context/utils/atobID.js.map +7 -0
  34. package/dist/cjs/components/credits/context/utils/functionDiscountCalculate.d.ts +5 -0
  35. package/dist/cjs/components/credits/context/utils/functionDiscountCalculate.js +2 -0
  36. package/dist/cjs/components/credits/context/utils/functionDiscountCalculate.js.map +7 -0
  37. package/dist/cjs/components/credits/context/utils/getFunctionMemberPrice.d.ts +8 -0
  38. package/dist/cjs/components/credits/context/utils/getFunctionMemberPrice.js +2 -0
  39. package/dist/cjs/components/credits/context/utils/getFunctionMemberPrice.js.map +7 -0
  40. package/dist/cjs/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.d.ts +9 -0
  41. package/dist/cjs/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.js +2 -0
  42. package/dist/cjs/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.js.map +7 -0
  43. package/dist/cjs/components/credits/context/utils/variantGetCoupon.d.ts +6 -0
  44. package/dist/cjs/components/credits/context/utils/variantGetCoupon.js +2 -0
  45. package/dist/cjs/components/credits/context/utils/variantGetCoupon.js.map +7 -0
  46. package/dist/cjs/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.d.ts +4 -0
  47. package/dist/cjs/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js +2 -0
  48. package/dist/cjs/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js.map +7 -0
  49. package/dist/cjs/components/credits/creditsAnkersolixTask/index.d.ts +2 -0
  50. package/dist/cjs/components/credits/creditsAnkersolixTask/index.js +2 -0
  51. package/dist/cjs/components/credits/creditsAnkersolixTask/index.js.map +7 -0
  52. package/dist/cjs/components/credits/creditsAnkersolixTask/type.d.ts +1 -0
  53. package/dist/cjs/components/credits/creditsAnkersolixTask/type.js +2 -0
  54. package/dist/cjs/components/credits/creditsAnkersolixTask/type.js.map +7 -0
  55. package/dist/cjs/components/credits/creditsBanner/index.d.ts +17 -16
  56. package/dist/cjs/components/credits/creditsBanner/index.js +1 -1
  57. package/dist/cjs/components/credits/creditsBanner/index.js.map +3 -3
  58. package/dist/cjs/components/credits/creditsBenefits/benefitItem.d.ts +4 -1
  59. package/dist/cjs/components/credits/creditsBenefits/benefitItem.js +2 -2
  60. package/dist/cjs/components/credits/creditsBenefits/benefitItem.js.map +4 -4
  61. package/dist/cjs/components/credits/creditsBenefits/iconInfo.js +1 -1
  62. package/dist/cjs/components/credits/creditsBenefits/iconInfo.js.map +2 -2
  63. package/dist/cjs/components/credits/creditsBenefits/index.d.ts +12 -9
  64. package/dist/cjs/components/credits/creditsBenefits/index.js +3 -3
  65. package/dist/cjs/components/credits/creditsBenefits/index.js.map +3 -3
  66. package/dist/cjs/components/credits/creditsCash/CreditsCash.d.ts +5 -0
  67. package/dist/cjs/components/credits/creditsCash/CreditsCash.js +2 -0
  68. package/dist/cjs/components/credits/creditsCash/CreditsCash.js.map +7 -0
  69. package/dist/cjs/components/credits/creditsCash/RedeemableItem.d.ts +1 -5
  70. package/dist/cjs/components/credits/creditsCash/RedeemableItem.js +1 -1
  71. package/dist/cjs/components/credits/creditsCash/RedeemableItem.js.map +3 -3
  72. package/dist/cjs/components/credits/creditsCash/index.d.ts +2 -11
  73. package/dist/cjs/components/credits/creditsCash/index.js +1 -1
  74. package/dist/cjs/components/credits/creditsCash/index.js.map +4 -4
  75. package/dist/cjs/components/credits/creditsCash/type.d.ts +1 -3
  76. package/dist/cjs/components/credits/creditsCash/type.js +1 -1
  77. package/dist/cjs/components/credits/creditsCash/type.js.map +1 -1
  78. package/dist/cjs/components/credits/creditsFaq/faqItem/FaqItem.js +1 -1
  79. package/dist/cjs/components/credits/creditsFaq/faqItem/FaqItem.js.map +3 -3
  80. package/dist/cjs/components/credits/creditsFaq/index.d.ts +4 -3
  81. package/dist/cjs/components/credits/creditsFaq/index.js +1 -1
  82. package/dist/cjs/components/credits/creditsFaq/index.js.map +3 -3
  83. package/dist/cjs/components/credits/creditsInfoCard/index.d.ts +10 -15
  84. package/dist/cjs/components/credits/creditsInfoCard/index.js +1 -1
  85. package/dist/cjs/components/credits/creditsInfoCard/index.js.map +3 -3
  86. package/dist/cjs/components/credits/creditsMemberPrice/CreditsMemberPrice.d.ts +5 -0
  87. package/dist/cjs/components/credits/creditsMemberPrice/CreditsMemberPrice.js +2 -0
  88. package/dist/cjs/components/credits/creditsMemberPrice/CreditsMemberPrice.js.map +7 -0
  89. package/dist/cjs/components/credits/creditsMemberPrice/MemberPriceItem.d.ts +7 -0
  90. package/dist/cjs/components/credits/creditsMemberPrice/MemberPriceItem.js +2 -0
  91. package/dist/cjs/components/credits/creditsMemberPrice/MemberPriceItem.js.map +7 -0
  92. package/dist/cjs/components/credits/creditsMemberPrice/index.d.ts +2 -0
  93. package/dist/cjs/components/credits/creditsMemberPrice/index.js +2 -0
  94. package/dist/cjs/components/credits/creditsMemberPrice/index.js.map +7 -0
  95. package/dist/cjs/components/credits/creditsMemberPrice/type.d.ts +64 -0
  96. package/dist/cjs/components/credits/creditsMemberPrice/type.js +2 -0
  97. package/dist/cjs/components/credits/creditsMemberPrice/type.js.map +7 -0
  98. package/dist/cjs/components/credits/creditsNavigation/CreditsNavigation.d.ts +4 -0
  99. package/dist/cjs/components/credits/creditsNavigation/CreditsNavigation.js +2 -0
  100. package/dist/cjs/components/credits/creditsNavigation/CreditsNavigation.js.map +7 -0
  101. package/dist/cjs/components/credits/creditsNavigation/index.d.ts +2 -0
  102. package/dist/cjs/components/credits/creditsNavigation/index.js +2 -0
  103. package/dist/cjs/components/credits/creditsNavigation/index.js.map +7 -0
  104. package/dist/cjs/components/credits/creditsNavigation/type.d.ts +7 -0
  105. package/dist/cjs/components/credits/creditsNavigation/type.js +2 -0
  106. package/dist/cjs/components/credits/creditsNavigation/type.js.map +7 -0
  107. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/CountrySelect.js +1 -1
  108. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/CountrySelect.js.map +3 -3
  109. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/StateSelect.js +1 -1
  110. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/StateSelect.js.map +3 -3
  111. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/index.js +1 -1
  112. package/dist/cjs/components/credits/creditsRedeemList/AddressForm/index.js.map +3 -3
  113. package/dist/cjs/components/credits/creditsRedeemList/CreditsRedeemList.d.ts +5 -0
  114. package/dist/cjs/components/credits/creditsRedeemList/CreditsRedeemList.js +2 -0
  115. package/dist/cjs/components/credits/creditsRedeemList/CreditsRedeemList.js.map +7 -0
  116. package/dist/cjs/components/credits/creditsRedeemList/NonProductValue.d.ts +1 -3
  117. package/dist/cjs/components/credits/creditsRedeemList/NonProductValue.js +1 -1
  118. package/dist/cjs/components/credits/creditsRedeemList/NonProductValue.js.map +3 -3
  119. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal.js +1 -1
  120. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal.js.map +3 -3
  121. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Address.js +1 -1
  122. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Address.js.map +3 -3
  123. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Error.js +1 -1
  124. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Error.js.map +2 -2
  125. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Init.js +1 -1
  126. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Init.js.map +3 -3
  127. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.js +1 -1
  128. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.js.map +3 -3
  129. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js +1 -1
  130. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js.map +3 -3
  131. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Success.js +1 -1
  132. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Success.js.map +3 -3
  133. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/index.js +1 -1
  134. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/index.js.map +3 -3
  135. package/dist/cjs/components/credits/creditsRedeemList/RedeemableItem.js +1 -1
  136. package/dist/cjs/components/credits/creditsRedeemList/RedeemableItem.js.map +3 -3
  137. package/dist/cjs/components/credits/creditsRedeemList/index.d.ts +2 -12
  138. package/dist/cjs/components/credits/creditsRedeemList/index.js +1 -1
  139. package/dist/cjs/components/credits/creditsRedeemList/index.js.map +4 -4
  140. package/dist/cjs/components/credits/creditsRedeemList/type.d.ts +2 -15
  141. package/dist/cjs/components/credits/creditsRedeemList/type.js.map +1 -1
  142. package/dist/cjs/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.d.ts +4 -0
  143. package/dist/cjs/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js +2 -0
  144. package/dist/cjs/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js.map +7 -0
  145. package/dist/cjs/components/credits/creditsWaysToGetCredits/index.d.ts +2 -2
  146. package/dist/cjs/components/credits/creditsWaysToGetCredits/index.js +1 -1
  147. package/dist/cjs/components/credits/creditsWaysToGetCredits/index.js.map +4 -4
  148. package/dist/cjs/components/credits/creditsWaysToGetCredits/type.d.ts +5 -15
  149. package/dist/cjs/components/credits/creditsWaysToGetCredits/type.js +1 -1
  150. package/dist/cjs/components/credits/creditsWaysToGetCredits/type.js.map +2 -2
  151. package/dist/cjs/components/credits/creditsWaysToGetCredits/useActions.d.ts +11 -2
  152. package/dist/cjs/components/credits/creditsWaysToGetCredits/useActions.js +1 -1
  153. package/dist/cjs/components/credits/creditsWaysToGetCredits/useActions.js.map +3 -3
  154. package/dist/cjs/components/credits/modal/MyRewardsModal.js +1 -1
  155. package/dist/cjs/components/credits/modal/MyRewardsModal.js.map +3 -3
  156. package/dist/cjs/components/credits/modal/activitiesModal.js +1 -1
  157. package/dist/cjs/components/credits/modal/activitiesModal.js.map +3 -3
  158. package/dist/cjs/components/credits/modal/creditsUploadReceiptModal.js +1 -1
  159. package/dist/cjs/components/credits/modal/creditsUploadReceiptModal.js.map +3 -3
  160. package/dist/cjs/components/credits/modal/modalContainer.js +1 -1
  161. package/dist/cjs/components/credits/modal/modalContainer.js.map +3 -3
  162. package/dist/cjs/components/credits/modal/rulesModal.js +1 -1
  163. package/dist/cjs/components/credits/modal/rulesModal.js.map +3 -3
  164. package/dist/cjs/components/credits/modal/subscribeModal.d.ts +15 -0
  165. package/dist/cjs/components/credits/modal/subscribeModal.js +2 -0
  166. package/dist/cjs/components/credits/modal/subscribeModal.js.map +7 -0
  167. package/dist/cjs/components/credits/modal/tip.js +1 -1
  168. package/dist/cjs/components/credits/modal/tip.js.map +3 -3
  169. package/dist/cjs/components/credits/type.d.ts +23 -4
  170. package/dist/cjs/components/credits/type.js +1 -1
  171. package/dist/cjs/components/credits/type.js.map +1 -1
  172. package/dist/cjs/components/index.d.ts +1 -0
  173. package/dist/cjs/components/index.js +1 -1
  174. package/dist/cjs/components/index.js.map +2 -2
  175. package/dist/cjs/components/registration/authCodeActivate/Message.js +1 -1
  176. package/dist/cjs/components/registration/authCodeActivate/Message.js.map +2 -2
  177. package/dist/cjs/components/registration/authCodeActivate/index.js +1 -1
  178. package/dist/cjs/components/registration/authCodeActivate/index.js.map +3 -3
  179. package/dist/cjs/components/registration/authCodeActivate/type.d.ts +1 -2
  180. package/dist/cjs/components/registration/authCodeActivate/type.js +1 -1
  181. package/dist/cjs/components/registration/authCodeActivate/type.js.map +1 -1
  182. package/dist/cjs/components/registration/context/index.d.ts +1 -0
  183. package/dist/cjs/components/registration/context/index.js +2 -0
  184. package/dist/cjs/components/registration/context/index.js.map +7 -0
  185. package/dist/cjs/components/registration/context/provider.d.ts +27 -0
  186. package/dist/cjs/components/registration/context/provider.js +2 -0
  187. package/dist/cjs/components/registration/context/provider.js.map +7 -0
  188. package/dist/cjs/components/registration/index.d.ts +1 -0
  189. package/dist/cjs/components/registration/index.js +1 -1
  190. package/dist/cjs/components/registration/index.js.map +2 -2
  191. package/dist/cjs/components/registration/modalContainer.d.ts +1 -2
  192. package/dist/cjs/components/registration/modalContainer.js +1 -1
  193. package/dist/cjs/components/registration/modalContainer.js.map +3 -3
  194. package/dist/cjs/index.d.ts +2 -1
  195. package/dist/cjs/index.js +1 -1
  196. package/dist/cjs/index.js.map +2 -2
  197. package/dist/cjs/templates/credits.d.ts +73 -0
  198. package/dist/cjs/templates/credits.js +2 -0
  199. package/dist/cjs/templates/credits.js.map +7 -0
  200. package/dist/cjs/templates/index.d.ts +1 -0
  201. package/dist/cjs/templates/index.js +2 -0
  202. package/dist/cjs/templates/index.js.map +7 -0
  203. package/dist/esm/components/chat/index.js +1 -1
  204. package/dist/esm/components/chat/index.js.map +2 -2
  205. package/dist/esm/components/credits/context/hooks/useActivities.js +1 -1
  206. package/dist/esm/components/credits/context/hooks/useActivities.js.map +3 -3
  207. package/dist/esm/components/credits/context/hooks/useAlpcFetch.js +1 -1
  208. package/dist/esm/components/credits/context/hooks/useAlpcFetch.js.map +3 -3
  209. package/dist/esm/components/credits/context/hooks/useFunctionMemberPrice.d.ts +7 -0
  210. package/dist/esm/components/credits/context/hooks/useFunctionMemberPrice.js +2 -0
  211. package/dist/esm/components/credits/context/hooks/useFunctionMemberPrice.js.map +7 -0
  212. package/dist/esm/components/credits/context/hooks/useMyRewards.js +1 -1
  213. package/dist/esm/components/credits/context/hooks/useMyRewards.js.map +3 -3
  214. package/dist/esm/components/credits/context/hooks/useRedeemAndBuy.js +1 -1
  215. package/dist/esm/components/credits/context/hooks/useRedeemAndBuy.js.map +2 -2
  216. package/dist/esm/components/credits/context/hooks/useRedeemCoupon.js +1 -1
  217. package/dist/esm/components/credits/context/hooks/useRedeemCoupon.js.map +3 -3
  218. package/dist/esm/components/credits/context/hooks/useRedeemProduct.js +1 -1
  219. package/dist/esm/components/credits/context/hooks/useRedeemProduct.js.map +3 -3
  220. package/dist/esm/components/credits/context/hooks/useRedeemableList.js +1 -1
  221. package/dist/esm/components/credits/context/hooks/useRedeemableList.js.map +3 -3
  222. package/dist/esm/components/credits/context/hooks/useSubscribed.js +1 -1
  223. package/dist/esm/components/credits/context/hooks/useSubscribed.js.map +3 -3
  224. package/dist/esm/components/credits/context/memberPriceConst.d.ts +10 -0
  225. package/dist/esm/components/credits/context/memberPriceConst.js +2 -0
  226. package/dist/esm/components/credits/context/memberPriceConst.js.map +7 -0
  227. package/dist/esm/components/credits/context/memberPriceTypes.d.ts +46 -0
  228. package/dist/esm/components/credits/context/memberPriceTypes.js +1 -0
  229. package/dist/esm/components/credits/context/memberPriceTypes.js.map +7 -0
  230. package/dist/esm/components/credits/context/provider.d.ts +11 -33
  231. package/dist/esm/components/credits/context/provider.js +1 -1
  232. package/dist/esm/components/credits/context/provider.js.map +3 -3
  233. package/dist/esm/components/credits/context/utils/atobID.d.ts +1 -0
  234. package/dist/esm/components/credits/context/utils/atobID.js +2 -0
  235. package/dist/esm/components/credits/context/utils/atobID.js.map +7 -0
  236. package/dist/esm/components/credits/context/utils/functionDiscountCalculate.d.ts +5 -0
  237. package/dist/esm/components/credits/context/utils/functionDiscountCalculate.js +2 -0
  238. package/dist/esm/components/credits/context/utils/functionDiscountCalculate.js.map +7 -0
  239. package/dist/esm/components/credits/context/utils/getFunctionMemberPrice.d.ts +8 -0
  240. package/dist/esm/components/credits/context/utils/getFunctionMemberPrice.js +2 -0
  241. package/dist/esm/components/credits/context/utils/getFunctionMemberPrice.js.map +7 -0
  242. package/dist/esm/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.d.ts +9 -0
  243. package/dist/esm/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.js +2 -0
  244. package/dist/esm/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.js.map +7 -0
  245. package/dist/esm/components/credits/context/utils/variantGetCoupon.d.ts +6 -0
  246. package/dist/esm/components/credits/context/utils/variantGetCoupon.js +2 -0
  247. package/dist/esm/components/credits/context/utils/variantGetCoupon.js.map +7 -0
  248. package/dist/esm/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.d.ts +4 -0
  249. package/dist/esm/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js +2 -0
  250. package/dist/esm/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js.map +7 -0
  251. package/dist/esm/components/credits/creditsAnkersolixTask/index.d.ts +2 -0
  252. package/dist/esm/components/credits/creditsAnkersolixTask/index.js +2 -0
  253. package/dist/esm/components/credits/creditsAnkersolixTask/index.js.map +7 -0
  254. package/dist/esm/components/credits/creditsAnkersolixTask/type.d.ts +1 -0
  255. package/dist/esm/components/credits/creditsAnkersolixTask/type.js +2 -0
  256. package/dist/esm/components/credits/creditsAnkersolixTask/type.js.map +7 -0
  257. package/dist/esm/components/credits/creditsBanner/index.d.ts +17 -16
  258. package/dist/esm/components/credits/creditsBanner/index.js +1 -1
  259. package/dist/esm/components/credits/creditsBanner/index.js.map +3 -3
  260. package/dist/esm/components/credits/creditsBenefits/benefitItem.d.ts +4 -1
  261. package/dist/esm/components/credits/creditsBenefits/benefitItem.js +2 -2
  262. package/dist/esm/components/credits/creditsBenefits/benefitItem.js.map +4 -4
  263. package/dist/esm/components/credits/creditsBenefits/iconInfo.js +1 -1
  264. package/dist/esm/components/credits/creditsBenefits/iconInfo.js.map +2 -2
  265. package/dist/esm/components/credits/creditsBenefits/index.d.ts +12 -9
  266. package/dist/esm/components/credits/creditsBenefits/index.js +3 -3
  267. package/dist/esm/components/credits/creditsBenefits/index.js.map +3 -3
  268. package/dist/esm/components/credits/creditsCash/CreditsCash.d.ts +5 -0
  269. package/dist/esm/components/credits/creditsCash/CreditsCash.js +2 -0
  270. package/dist/esm/components/credits/creditsCash/CreditsCash.js.map +7 -0
  271. package/dist/esm/components/credits/creditsCash/RedeemableItem.d.ts +1 -5
  272. package/dist/esm/components/credits/creditsCash/RedeemableItem.js +1 -1
  273. package/dist/esm/components/credits/creditsCash/RedeemableItem.js.map +3 -3
  274. package/dist/esm/components/credits/creditsCash/index.d.ts +2 -11
  275. package/dist/esm/components/credits/creditsCash/index.js +1 -1
  276. package/dist/esm/components/credits/creditsCash/index.js.map +4 -4
  277. package/dist/esm/components/credits/creditsCash/type.d.ts +1 -3
  278. package/dist/esm/components/credits/creditsFaq/faqItem/FaqItem.js +1 -1
  279. package/dist/esm/components/credits/creditsFaq/faqItem/FaqItem.js.map +2 -2
  280. package/dist/esm/components/credits/creditsFaq/index.d.ts +4 -3
  281. package/dist/esm/components/credits/creditsFaq/index.js +1 -1
  282. package/dist/esm/components/credits/creditsFaq/index.js.map +3 -3
  283. package/dist/esm/components/credits/creditsInfoCard/index.d.ts +10 -15
  284. package/dist/esm/components/credits/creditsInfoCard/index.js +1 -1
  285. package/dist/esm/components/credits/creditsInfoCard/index.js.map +3 -3
  286. package/dist/esm/components/credits/creditsMemberPrice/CreditsMemberPrice.d.ts +5 -0
  287. package/dist/esm/components/credits/creditsMemberPrice/CreditsMemberPrice.js +2 -0
  288. package/dist/esm/components/credits/creditsMemberPrice/CreditsMemberPrice.js.map +7 -0
  289. package/dist/esm/components/credits/creditsMemberPrice/MemberPriceItem.d.ts +7 -0
  290. package/dist/esm/components/credits/creditsMemberPrice/MemberPriceItem.js +2 -0
  291. package/dist/esm/components/credits/creditsMemberPrice/MemberPriceItem.js.map +7 -0
  292. package/dist/esm/components/credits/creditsMemberPrice/index.d.ts +2 -0
  293. package/dist/esm/components/credits/creditsMemberPrice/index.js +2 -0
  294. package/dist/esm/components/credits/creditsMemberPrice/index.js.map +7 -0
  295. package/dist/esm/components/credits/creditsMemberPrice/type.d.ts +64 -0
  296. package/dist/esm/components/credits/creditsMemberPrice/type.js +1 -0
  297. package/dist/esm/components/credits/creditsMemberPrice/type.js.map +7 -0
  298. package/dist/esm/components/credits/creditsNavigation/CreditsNavigation.d.ts +4 -0
  299. package/dist/esm/components/credits/creditsNavigation/CreditsNavigation.js +2 -0
  300. package/dist/esm/components/credits/creditsNavigation/CreditsNavigation.js.map +7 -0
  301. package/dist/esm/components/credits/creditsNavigation/index.d.ts +2 -0
  302. package/dist/esm/components/credits/creditsNavigation/index.js +2 -0
  303. package/dist/esm/components/credits/creditsNavigation/index.js.map +7 -0
  304. package/dist/esm/components/credits/creditsNavigation/type.d.ts +7 -0
  305. package/dist/esm/components/credits/creditsNavigation/type.js +1 -0
  306. package/dist/esm/components/credits/creditsNavigation/type.js.map +7 -0
  307. package/dist/esm/components/credits/creditsRedeemList/AddressForm/CountrySelect.js +1 -1
  308. package/dist/esm/components/credits/creditsRedeemList/AddressForm/CountrySelect.js.map +3 -3
  309. package/dist/esm/components/credits/creditsRedeemList/AddressForm/StateSelect.js +1 -1
  310. package/dist/esm/components/credits/creditsRedeemList/AddressForm/StateSelect.js.map +3 -3
  311. package/dist/esm/components/credits/creditsRedeemList/AddressForm/index.js +1 -1
  312. package/dist/esm/components/credits/creditsRedeemList/AddressForm/index.js.map +3 -3
  313. package/dist/esm/components/credits/creditsRedeemList/CreditsRedeemList.d.ts +5 -0
  314. package/dist/esm/components/credits/creditsRedeemList/CreditsRedeemList.js +2 -0
  315. package/dist/esm/components/credits/creditsRedeemList/CreditsRedeemList.js.map +7 -0
  316. package/dist/esm/components/credits/creditsRedeemList/NonProductValue.d.ts +1 -3
  317. package/dist/esm/components/credits/creditsRedeemList/NonProductValue.js +1 -1
  318. package/dist/esm/components/credits/creditsRedeemList/NonProductValue.js.map +3 -3
  319. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal.js +1 -1
  320. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal.js.map +3 -3
  321. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Address.js +1 -1
  322. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Address.js.map +3 -3
  323. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Error.js +1 -1
  324. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Error.js.map +2 -2
  325. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Init.js +1 -1
  326. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Init.js.map +3 -3
  327. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.js +1 -1
  328. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.js.map +3 -3
  329. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js +1 -1
  330. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js.map +3 -3
  331. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Success.js +1 -1
  332. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Success.js.map +3 -3
  333. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/index.js +1 -1
  334. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/index.js.map +3 -3
  335. package/dist/esm/components/credits/creditsRedeemList/RedeemableItem.js +1 -1
  336. package/dist/esm/components/credits/creditsRedeemList/RedeemableItem.js.map +3 -3
  337. package/dist/esm/components/credits/creditsRedeemList/index.d.ts +2 -12
  338. package/dist/esm/components/credits/creditsRedeemList/index.js +1 -1
  339. package/dist/esm/components/credits/creditsRedeemList/index.js.map +4 -4
  340. package/dist/esm/components/credits/creditsRedeemList/type.d.ts +2 -15
  341. package/dist/esm/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.d.ts +4 -0
  342. package/dist/esm/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js +2 -0
  343. package/dist/esm/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js.map +7 -0
  344. package/dist/esm/components/credits/creditsWaysToGetCredits/index.d.ts +2 -2
  345. package/dist/esm/components/credits/creditsWaysToGetCredits/index.js +1 -1
  346. package/dist/esm/components/credits/creditsWaysToGetCredits/index.js.map +4 -4
  347. package/dist/esm/components/credits/creditsWaysToGetCredits/type.d.ts +5 -15
  348. package/dist/esm/components/credits/creditsWaysToGetCredits/type.js.map +2 -2
  349. package/dist/esm/components/credits/creditsWaysToGetCredits/useActions.d.ts +11 -2
  350. package/dist/esm/components/credits/creditsWaysToGetCredits/useActions.js +1 -1
  351. package/dist/esm/components/credits/creditsWaysToGetCredits/useActions.js.map +3 -3
  352. package/dist/esm/components/credits/modal/MyRewardsModal.js +1 -1
  353. package/dist/esm/components/credits/modal/MyRewardsModal.js.map +3 -3
  354. package/dist/esm/components/credits/modal/activitiesModal.js +1 -1
  355. package/dist/esm/components/credits/modal/activitiesModal.js.map +3 -3
  356. package/dist/esm/components/credits/modal/creditsUploadReceiptModal.js +1 -1
  357. package/dist/esm/components/credits/modal/creditsUploadReceiptModal.js.map +3 -3
  358. package/dist/esm/components/credits/modal/modalContainer.js +1 -1
  359. package/dist/esm/components/credits/modal/modalContainer.js.map +3 -3
  360. package/dist/esm/components/credits/modal/rulesModal.js +1 -1
  361. package/dist/esm/components/credits/modal/rulesModal.js.map +2 -2
  362. package/dist/esm/components/credits/modal/subscribeModal.d.ts +15 -0
  363. package/dist/esm/components/credits/modal/subscribeModal.js +2 -0
  364. package/dist/esm/components/credits/modal/subscribeModal.js.map +7 -0
  365. package/dist/esm/components/credits/modal/tip.js +1 -1
  366. package/dist/esm/components/credits/modal/tip.js.map +3 -3
  367. package/dist/esm/components/credits/type.d.ts +23 -4
  368. package/dist/esm/components/index.d.ts +1 -0
  369. package/dist/esm/components/index.js +1 -1
  370. package/dist/esm/components/index.js.map +2 -2
  371. package/dist/esm/components/registration/authCodeActivate/Message.js +1 -1
  372. package/dist/esm/components/registration/authCodeActivate/Message.js.map +2 -2
  373. package/dist/esm/components/registration/authCodeActivate/index.js +1 -1
  374. package/dist/esm/components/registration/authCodeActivate/index.js.map +3 -3
  375. package/dist/esm/components/registration/authCodeActivate/type.d.ts +1 -2
  376. package/dist/esm/components/registration/context/index.d.ts +1 -0
  377. package/dist/esm/components/registration/context/index.js +2 -0
  378. package/dist/esm/components/registration/context/index.js.map +7 -0
  379. package/dist/esm/components/registration/context/provider.d.ts +27 -0
  380. package/dist/esm/components/registration/context/provider.js +2 -0
  381. package/dist/esm/components/registration/context/provider.js.map +7 -0
  382. package/dist/esm/components/registration/index.d.ts +1 -0
  383. package/dist/esm/components/registration/index.js +1 -1
  384. package/dist/esm/components/registration/index.js.map +2 -2
  385. package/dist/esm/components/registration/modalContainer.d.ts +1 -2
  386. package/dist/esm/components/registration/modalContainer.js +1 -1
  387. package/dist/esm/components/registration/modalContainer.js.map +3 -3
  388. package/dist/esm/index.d.ts +2 -1
  389. package/dist/esm/index.js +1 -1
  390. package/dist/esm/index.js.map +2 -2
  391. package/dist/esm/templates/credits.d.ts +73 -0
  392. package/dist/esm/templates/credits.js +2 -0
  393. package/dist/esm/templates/credits.js.map +7 -0
  394. package/dist/esm/templates/index.d.ts +1 -0
  395. package/dist/esm/templates/index.js +2 -0
  396. package/dist/esm/templates/index.js.map +7 -0
  397. package/dist/index.js +40660 -0
  398. package/dist/index.js.map +1 -0
  399. package/dist/index.mjs +40648 -0
  400. package/dist/index.mjs.map +1 -0
  401. package/package.json +24 -22
  402. package/src/components/chat/index.tsx +1 -1
  403. package/src/components/credits/context/hooks/useActivities.ts +3 -2
  404. package/src/components/credits/context/hooks/useAlpcFetch.ts +8 -4
  405. package/src/components/credits/context/hooks/useFunctionMemberPrice.ts +33 -0
  406. package/src/components/credits/context/hooks/useMyRewards.ts +3 -2
  407. package/src/components/credits/context/hooks/useRedeemAndBuy.ts +0 -2
  408. package/src/components/credits/context/hooks/useRedeemCoupon.ts +4 -1
  409. package/src/components/credits/context/hooks/useRedeemProduct.ts +4 -1
  410. package/src/components/credits/context/hooks/useRedeemableList.ts +3 -3
  411. package/src/components/credits/context/hooks/useSubscribed.ts +1 -2
  412. package/src/components/credits/context/memberPriceConst.ts +13 -0
  413. package/src/components/credits/context/memberPriceTypes.ts +54 -0
  414. package/src/components/credits/context/provider.tsx +25 -20
  415. package/src/components/credits/context/utils/atobID.ts +8 -0
  416. package/src/components/credits/context/utils/functionDiscountCalculate.ts +57 -0
  417. package/src/components/credits/context/utils/getFunctionMemberPrice.ts +135 -0
  418. package/src/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.ts +51 -0
  419. package/src/components/credits/context/utils/variantGetCoupon.ts +34 -0
  420. package/src/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.tsx +270 -0
  421. package/src/components/credits/creditsAnkersolixTask/index.ts +2 -0
  422. package/src/components/credits/creditsAnkersolixTask/type.ts +7 -0
  423. package/src/components/credits/creditsBanner/index.tsx +15 -17
  424. package/src/components/credits/creditsBenefits/BenefitItem.tsx +107 -0
  425. package/src/components/credits/creditsBenefits/index.tsx +17 -12
  426. package/src/components/credits/creditsCash/{index.tsx → CreditsCash.tsx} +11 -27
  427. package/src/components/credits/creditsCash/RedeemableItem.tsx +43 -21
  428. package/src/components/credits/creditsCash/index.ts +2 -0
  429. package/src/components/credits/creditsCash/type.ts +1 -3
  430. package/src/components/credits/creditsFaq/faqItem/FaqItem.tsx +12 -12
  431. package/src/components/credits/creditsFaq/index.tsx +7 -5
  432. package/src/components/credits/creditsInfoCard/index.tsx +39 -34
  433. package/src/components/credits/creditsMemberPrice/CreditsMemberPrice.tsx +389 -0
  434. package/src/components/credits/creditsMemberPrice/MemberPriceItem.tsx +158 -0
  435. package/src/components/credits/creditsMemberPrice/index.ts +2 -0
  436. package/src/components/credits/creditsMemberPrice/type.ts +75 -0
  437. package/src/components/credits/creditsNavigation/CreditsNavigation.tsx +123 -0
  438. package/src/components/credits/creditsNavigation/index.ts +2 -0
  439. package/src/components/credits/creditsNavigation/type.ts +10 -0
  440. package/src/components/credits/creditsRedeemList/AddressForm/CountrySelect.tsx +7 -3
  441. package/src/components/credits/creditsRedeemList/AddressForm/StateSelect.tsx +5 -1
  442. package/src/components/credits/creditsRedeemList/AddressForm/index.tsx +5 -4
  443. package/src/components/credits/creditsRedeemList/{index.tsx → CreditsRedeemList.tsx} +30 -29
  444. package/src/components/credits/creditsRedeemList/NonProductValue.tsx +4 -3
  445. package/src/components/credits/creditsRedeemList/RedeemCouponModal.tsx +6 -6
  446. package/src/components/credits/creditsRedeemList/RedeemProductModal/Address.tsx +14 -11
  447. package/src/components/credits/creditsRedeemList/RedeemProductModal/Error.tsx +1 -1
  448. package/src/components/credits/creditsRedeemList/RedeemProductModal/Init.tsx +4 -2
  449. package/src/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.tsx +3 -1
  450. package/src/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.tsx +9 -5
  451. package/src/components/credits/creditsRedeemList/RedeemProductModal/Success.tsx +4 -1
  452. package/src/components/credits/creditsRedeemList/RedeemProductModal/index.tsx +2 -2
  453. package/src/components/credits/creditsRedeemList/RedeemableItem.tsx +11 -7
  454. package/src/components/credits/creditsRedeemList/index.ts +2 -0
  455. package/src/components/credits/creditsRedeemList/type.ts +2 -16
  456. package/src/components/credits/creditsWaysToGetCredits/{index.tsx → CreditsWaysToGetCredits.tsx} +65 -16
  457. package/src/components/credits/creditsWaysToGetCredits/index.ts +2 -0
  458. package/src/components/credits/creditsWaysToGetCredits/type.ts +5 -15
  459. package/src/components/credits/creditsWaysToGetCredits/useActions.ts +22 -8
  460. package/src/components/credits/modal/MyRewardsModal.tsx +10 -2
  461. package/src/components/credits/modal/activitiesModal.tsx +8 -3
  462. package/src/components/credits/modal/creditsUploadReceiptModal.tsx +9 -1
  463. package/src/components/credits/modal/modalContainer.tsx +5 -1
  464. package/src/components/credits/modal/rulesModal.tsx +1 -1
  465. package/src/components/credits/modal/subscribeModal.tsx +201 -0
  466. package/src/components/credits/modal/tip.tsx +10 -1
  467. package/src/components/credits/type.ts +23 -4
  468. package/src/components/index.ts +2 -2
  469. package/src/components/registration/authCodeActivate/Message.tsx +43 -0
  470. package/src/components/registration/authCodeActivate/index.tsx +338 -0
  471. package/src/components/registration/authCodeActivate/type.ts +23 -0
  472. package/src/components/registration/context/index.tsx +1 -0
  473. package/src/components/registration/context/provider.tsx +86 -0
  474. package/src/components/registration/index.ts +2 -0
  475. package/src/components/registration/modalContainer.tsx +114 -0
  476. package/src/index.ts +2 -1
  477. package/src/templates/Credits.tsx +165 -0
  478. package/src/templates/index.ts +1 -0
  479. package/dist/cjs/components/credits/context/hooks/useSendEmailValidation.d.ts +0 -1
  480. package/dist/cjs/components/credits/context/hooks/useSendEmailValidation.js +0 -2
  481. package/dist/cjs/components/credits/context/hooks/useSendEmailValidation.js.map +0 -7
  482. package/dist/cjs/components/credits/context/hooks/useSubscriptions.d.ts +0 -9
  483. package/dist/cjs/components/credits/context/hooks/useSubscriptions.js +0 -2
  484. package/dist/cjs/components/credits/context/hooks/useSubscriptions.js.map +0 -7
  485. package/dist/cjs/helpers/fetchResponse.d.ts +0 -14
  486. package/dist/cjs/helpers/fetchResponse.js +0 -2
  487. package/dist/cjs/helpers/fetchResponse.js.map +0 -7
  488. package/dist/cjs/helpers/fetcher.d.ts +0 -2
  489. package/dist/cjs/helpers/fetcher.js +0 -2
  490. package/dist/cjs/helpers/fetcher.js.map +0 -7
  491. package/dist/cjs/helpers/index.d.ts +0 -2
  492. package/dist/cjs/helpers/index.js +0 -2
  493. package/dist/cjs/helpers/index.js.map +0 -7
  494. package/dist/cjs/helpers/track.d.ts +0 -19
  495. package/dist/cjs/helpers/track.js +0 -2
  496. package/dist/cjs/helpers/track.js.map +0 -7
  497. package/dist/cjs/helpers/utils.d.ts +0 -3
  498. package/dist/cjs/helpers/utils.js +0 -2
  499. package/dist/cjs/helpers/utils.js.map +0 -7
  500. package/dist/esm/components/credits/context/hooks/useSendEmailValidation.d.ts +0 -1
  501. package/dist/esm/components/credits/context/hooks/useSendEmailValidation.js +0 -2
  502. package/dist/esm/components/credits/context/hooks/useSendEmailValidation.js.map +0 -7
  503. package/dist/esm/components/credits/context/hooks/useSubscriptions.d.ts +0 -9
  504. package/dist/esm/components/credits/context/hooks/useSubscriptions.js +0 -2
  505. package/dist/esm/components/credits/context/hooks/useSubscriptions.js.map +0 -7
  506. package/dist/esm/helpers/fetchResponse.d.ts +0 -14
  507. package/dist/esm/helpers/fetchResponse.js +0 -2
  508. package/dist/esm/helpers/fetchResponse.js.map +0 -7
  509. package/dist/esm/helpers/fetcher.d.ts +0 -2
  510. package/dist/esm/helpers/fetcher.js +0 -2
  511. package/dist/esm/helpers/fetcher.js.map +0 -7
  512. package/dist/esm/helpers/index.d.ts +0 -2
  513. package/dist/esm/helpers/index.js +0 -2
  514. package/dist/esm/helpers/index.js.map +0 -7
  515. package/dist/esm/helpers/track.d.ts +0 -19
  516. package/dist/esm/helpers/track.js +0 -2
  517. package/dist/esm/helpers/track.js.map +0 -7
  518. package/dist/esm/helpers/utils.d.ts +0 -3
  519. package/dist/esm/helpers/utils.js +0 -2
  520. package/dist/esm/helpers/utils.js.map +0 -7
  521. package/src/components/credits/context/hooks/useSendEmailValidation.ts +0 -20
  522. package/src/components/credits/context/hooks/useSubscriptions.ts +0 -29
  523. package/src/components/credits/creditsBenefits/benefitItem.tsx +0 -73
  524. package/src/helpers/fetchResponse.ts +0 -35
  525. package/src/helpers/fetcher.ts +0 -44
  526. package/src/helpers/index.ts +0 -2
  527. package/src/helpers/track.ts +0 -73
  528. package/src/helpers/utils.ts +0 -8
  529. /package/src/components/credits/creditsBenefits/{iconInfo.tsx → IconInfo.tsx} +0 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/registration/modalContainer.tsx"],
4
- "sourcesContent": ["import { classNames as cn } from '@anker-in/lib'\nimport { useEffect, useState, type UIEvent } from 'react'\nimport ReactModal from 'react-modal'\n\nexport type ModalContainerProps = {\n overlayClassName?: string\n className?: string\n scrollClassName?: string\n title?: string\n titleClassName?: string\n useAnimation?: boolean // \u4F7F\u7528\u52A8\u753B\u5C55\u793A\n animationClassName?: string // \u52A8\u753B\u5C55\u793A\u63A7\u5236\u7684classname\n isOpen: boolean\n children?: any\n onClose: () => void\n onScrollEnd?: (event: UIEvent<HTMLDivElement>) => void\n}\n\nexport const CreditsModalContainer = ({\n isOpen,\n title,\n className = '',\n overlayClassName = '',\n scrollClassName = '',\n onClose,\n onScrollEnd,\n children,\n useAnimation,\n animationClassName,\n titleClassName = '',\n ...props\n}: ModalContainerProps): React.ReactElement => {\n const [animationShow, setAnimationShow] = useState(false)\n\n useEffect(() => {\n if (!useAnimation) {\n return\n }\n requestAnimationFrame(() => {\n setAnimationShow(isOpen ?? false)\n })\n }, [isOpen, useAnimation])\n\n return (\n <ReactModal\n isOpen={isOpen ?? false}\n overlayClassName={cn(\n 'fixed inset-0 z-[999] flex items-center justify-center bg-black/70 leading-[1.2] md:items-end',\n overlayClassName\n )}\n className={cn(\n 'min-md:max-h-[calc(100vh-96px)] relative flex min-h-[200px] flex-col overflow-hidden rounded-[16px] bg-white outline-none transition-all duration-300 md:h-[88.27vh] md:w-full md:rounded-b-none',\n animationShow ? '' : animationClassName,\n className\n )}\n onRequestClose={onClose}\n {...props}\n >\n <div\n className={cn(\n 'flex w-full shrink-0 items-center justify-between',\n title ? 'min-l:px-[32px] h-[70px] border-b border-[#e2e2e2] px-[24px]' : 'h-[48px] px-[16px]',\n titleClassName\n )}\n >\n <div className=\"text-[18px] font-bold\">{title}</div>\n <div\n className=\"size-[22px] cursor-pointer\"\n onClick={onClose}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n onClose?.()\n }\n }}\n role=\"button\"\n tabIndex={0}\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M16.8525 5.31015C16.4558 4.91337 15.8125 4.91338 15.4157 5.31015L11.1268 9.5991L6.83815 5.31049C6.44138 4.91372 5.79808 4.91372 5.40131 5.31049C5.00454 5.70726 5.00455 6.35055 5.40131 6.74732L9.68993 11.0359L5.40105 15.3248C5.00428 15.7216 5.00428 16.3649 5.40105 16.7616C5.79782 17.1584 6.44111 17.1584 6.83788 16.7616L11.1268 12.4728L15.416 16.762C15.8128 17.1588 16.456 17.1588 16.8528 16.762C17.2496 16.3652 17.2496 15.7219 16.8528 15.3252L12.5636 11.0359L16.8525 6.74698C17.2493 6.35021 17.2493 5.70692 16.8525 5.31015ZM16.921 6.02856C16.921 6.22992 16.8441 6.43127 16.6905 6.5849L14.465 8.8104L12.2395 11.0359L12.2395 11.0359L16.6905 6.58493C16.8441 6.43129 16.921 6.22993 16.921 6.02856ZM5.34966 6.19087C5.37992 6.3354 5.45115 6.47307 5.56336 6.58528L10.014 11.0359L10.014 11.0359L5.56336 6.58524C5.45116 6.47304 5.37992 6.33539 5.34966 6.19087ZM5.35087 16.2121C5.38193 16.3541 5.45267 16.4891 5.56309 16.5996C5.87037 16.9068 6.36856 16.9068 6.67583 16.5996L11.1268 12.1486L15.578 16.5999C15.8853 16.9072 16.3835 16.9072 16.6908 16.5999C16.8498 16.4409 16.9265 16.2307 16.9209 16.0223C16.9265 16.2307 16.8498 16.4409 16.6908 16.5999C16.3835 16.9072 15.8853 16.9072 15.578 16.5999L11.1268 12.1487L6.67583 16.5996C6.36856 16.9069 5.87037 16.9069 5.56309 16.5996C5.45267 16.4892 5.38192 16.3541 5.35087 16.2121Z\"\n fill=\"#333333\"\n />\n </svg>\n </div>\n </div>\n <div\n className={cn(\n 'my-[32px] flex-1 overflow-auto overscroll-contain px-[24px] md:mb-[48px]',\n !title && 'mt-0',\n 'min-l:px-[32px]',\n scrollClassName\n )}\n onScroll={event => {\n const targetElement = event.target as HTMLDivElement\n\n if (targetElement.scrollHeight <= targetElement.clientHeight) {\n return\n }\n\n if (targetElement.scrollTop + targetElement.clientHeight >= targetElement.scrollHeight - 50) {\n onScrollEnd && onScrollEnd(event)\n }\n }}\n >\n {children}\n </div>\n </ReactModal>\n )\n}\n"],
5
- "mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,2BAAAE,IAAA,eAAAC,EAAAH,GA0DM,IAAAI,EAAA,6BA1DNC,EAAiC,yBACjCC,EAAkD,iBAClDC,EAAuB,0BAgBhB,MAAML,EAAwB,CAAC,CACpC,OAAAM,EACA,MAAAC,EACA,UAAAC,EAAY,GACZ,iBAAAC,EAAmB,GACnB,gBAAAC,EAAkB,GAClB,QAAAC,EACA,YAAAC,EACA,SAAAC,EACA,aAAAC,EACA,mBAAAC,EACA,eAAAC,EAAiB,GACjB,GAAGC,CACL,IAA+C,CAC7C,KAAM,CAACC,EAAeC,CAAgB,KAAI,YAAS,EAAK,EAExD,sBAAU,IAAM,CACTL,GAGL,sBAAsB,IAAM,CAC1BK,EAAiBb,GAAU,EAAK,CAClC,CAAC,CACH,EAAG,CAACA,EAAQQ,CAAY,CAAC,KAGvB,QAAC,EAAAM,QAAA,CACC,OAAQd,GAAU,GAClB,oBAAkB,EAAAe,YAChB,gGACAZ,CACF,EACA,aAAW,EAAAY,YACT,mMACAH,EAAgB,GAAKH,EACrBP,CACF,EACA,eAAgBG,EACf,GAAGM,EAEJ,qBAAC,OACC,aAAW,EAAAI,YACT,oDACAd,EAAQ,+DAAiE,qBACzES,CACF,EAEA,oBAAC,OAAI,UAAU,wBAAyB,SAAAT,EAAM,KAC9C,OAAC,OACC,UAAU,6BACV,QAASI,EACT,UAAWW,GAAK,EACVA,EAAE,MAAQ,SAAWA,EAAE,MAAQ,OACjCA,EAAE,eAAe,EACjBX,IAAU,EAEd,EACA,KAAK,SACL,SAAU,EAEV,mBAAC,OAAI,MAAM,6BAA6B,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OACtF,mBAAC,QACC,SAAS,UACT,SAAS,UACT,EAAE,syCACF,KAAK,UACP,EACF,EACF,GACF,KACA,OAAC,OACC,aAAW,EAAAU,YACT,2EACA,CAACd,GAAS,OACV,kBACAG,CACF,EACA,SAAUa,GAAS,CACjB,MAAMC,EAAgBD,EAAM,OAExBC,EAAc,cAAgBA,EAAc,cAI5CA,EAAc,UAAYA,EAAc,cAAgBA,EAAc,aAAe,IACvFZ,GAAeA,EAAYW,CAAK,CAEpC,EAEC,SAAAV,EACH,GACF,CAEJ",
6
- "names": ["modalContainer_exports", "__export", "CreditsModalContainer", "__toCommonJS", "import_jsx_runtime", "import_lib", "import_react", "import_react_modal", "isOpen", "title", "className", "overlayClassName", "scrollClassName", "onClose", "onScrollEnd", "children", "useAnimation", "animationClassName", "titleClassName", "props", "animationShow", "setAnimationShow", "ReactModal", "cn", "e", "event", "targetElement"]
4
+ "sourcesContent": ["import { classNames as cn, useHeadlessContext, ROUNDED_BRANDS } from '@anker-in/lib'\nimport { useEffect, useState, type UIEvent } from 'react'\nimport ReactModal from 'react-modal'\n\nexport type ModalContainerProps = {\n overlayClassName?: string\n className?: string\n scrollClassName?: string\n title?: string\n titleClassName?: string\n useAnimation?: boolean // \u4F7F\u7528\u52A8\u753B\u5C55\u793A\n isOpen: boolean\n children?: any\n onClose: () => void\n onScrollEnd?: (event: UIEvent<HTMLDivElement>) => void\n}\n\nexport const RegistrationModalContainer = ({\n isOpen,\n title,\n className = '',\n overlayClassName = '',\n scrollClassName = '',\n onClose,\n onScrollEnd,\n children,\n useAnimation = true,\n titleClassName = '',\n ...props\n}: ModalContainerProps): React.ReactElement => {\n const { brand } = useHeadlessContext()\n const rounded = ROUNDED_BRANDS.includes(brand)\n const [animationShow, setAnimationShow] = useState(false)\n\n useEffect(() => {\n if (!useAnimation) {\n return\n }\n requestAnimationFrame(() => {\n setAnimationShow(isOpen ?? false)\n })\n }, [isOpen, useAnimation])\n\n return (\n <ReactModal\n isOpen={isOpen ?? false}\n overlayClassName={cn(\n 'fixed inset-0 z-[999] flex items-center justify-center bg-black/70 leading-[1.2] md:items-end',\n overlayClassName\n )}\n className={cn(\n 'min-md:max-h-[calc(100vh-96px)] w-[540px] relative flex min-h-[200px] flex-col overflow-hidden bg-white outline-none transition-all duration-300 md:h-auto md:w-full',\n rounded && 'rounded-[16px] md:rounded-b-none',\n useAnimation && 'md:translate-y-[100vh]',\n animationShow && 'md:translate-y-0',\n className\n )}\n onRequestClose={onClose}\n {...props}\n >\n <div\n className={cn(\n 'flex w-full shrink-0 items-center justify-between',\n title ? 'min-l:px-[32px] h-[70px] border-b border-[#e2e2e2] px-[24px]' : 'h-[48px] px-[16px]',\n titleClassName\n )}\n >\n <div className=\"text-[18px] font-bold\">{title}</div>\n <div\n className=\"size-[22px] cursor-pointer\"\n onClick={onClose}\n onKeyDown={e => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n onClose?.()\n }\n }}\n role=\"button\"\n tabIndex={0}\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"22\" height=\"22\" viewBox=\"0 0 22 22\" fill=\"none\">\n <path\n fillRule=\"evenodd\"\n clipRule=\"evenodd\"\n d=\"M16.8525 5.31015C16.4558 4.91337 15.8125 4.91338 15.4157 5.31015L11.1268 9.5991L6.83815 5.31049C6.44138 4.91372 5.79808 4.91372 5.40131 5.31049C5.00454 5.70726 5.00455 6.35055 5.40131 6.74732L9.68993 11.0359L5.40105 15.3248C5.00428 15.7216 5.00428 16.3649 5.40105 16.7616C5.79782 17.1584 6.44111 17.1584 6.83788 16.7616L11.1268 12.4728L15.416 16.762C15.8128 17.1588 16.456 17.1588 16.8528 16.762C17.2496 16.3652 17.2496 15.7219 16.8528 15.3252L12.5636 11.0359L16.8525 6.74698C17.2493 6.35021 17.2493 5.70692 16.8525 5.31015ZM16.921 6.02856C16.921 6.22992 16.8441 6.43127 16.6905 6.5849L14.465 8.8104L12.2395 11.0359L12.2395 11.0359L16.6905 6.58493C16.8441 6.43129 16.921 6.22993 16.921 6.02856ZM5.34966 6.19087C5.37992 6.3354 5.45115 6.47307 5.56336 6.58528L10.014 11.0359L10.014 11.0359L5.56336 6.58524C5.45116 6.47304 5.37992 6.33539 5.34966 6.19087ZM5.35087 16.2121C5.38193 16.3541 5.45267 16.4891 5.56309 16.5996C5.87037 16.9068 6.36856 16.9068 6.67583 16.5996L11.1268 12.1486L15.578 16.5999C15.8853 16.9072 16.3835 16.9072 16.6908 16.5999C16.8498 16.4409 16.9265 16.2307 16.9209 16.0223C16.9265 16.2307 16.8498 16.4409 16.6908 16.5999C16.3835 16.9072 15.8853 16.9072 15.578 16.5999L11.1268 12.1487L6.67583 16.5996C6.36856 16.9069 5.87037 16.9069 5.56309 16.5996C5.45267 16.4892 5.38192 16.3541 5.35087 16.2121Z\"\n fill=\"#333333\"\n />\n </svg>\n </div>\n </div>\n <div\n className={cn(\n 'my-[32px] flex-1 overflow-auto overscroll-contain px-[24px] md:mb-[48px]',\n !title && 'mt-0',\n 'min-l:px-[32px]',\n scrollClassName\n )}\n onScroll={event => {\n const targetElement = event.target as HTMLDivElement\n\n if (targetElement.scrollHeight <= targetElement.clientHeight) {\n return\n }\n\n if (targetElement.scrollTop + targetElement.clientHeight >= targetElement.scrollHeight - 50) {\n onScrollEnd && onScrollEnd(event)\n }\n }}\n >\n {children}\n </div>\n </ReactModal>\n )\n}\n"],
5
+ "mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,gCAAAE,IAAA,eAAAC,EAAAH,GA4DM,IAAAI,EAAA,6BA5DNC,EAAqE,yBACrEC,EAAkD,iBAClDC,EAAuB,0BAehB,MAAML,EAA6B,CAAC,CACzC,OAAAM,EACA,MAAAC,EACA,UAAAC,EAAY,GACZ,iBAAAC,EAAmB,GACnB,gBAAAC,EAAkB,GAClB,QAAAC,EACA,YAAAC,EACA,SAAAC,EACA,aAAAC,EAAe,GACf,eAAAC,EAAiB,GACjB,GAAGC,CACL,IAA+C,CAC7C,KAAM,CAAE,MAAAC,CAAM,KAAI,sBAAmB,EAC/BC,EAAU,iBAAe,SAASD,CAAK,EACvC,CAACE,EAAeC,CAAgB,KAAI,YAAS,EAAK,EAExD,sBAAU,IAAM,CACTN,GAGL,sBAAsB,IAAM,CAC1BM,EAAiBd,GAAU,EAAK,CAClC,CAAC,CACH,EAAG,CAACA,EAAQQ,CAAY,CAAC,KAGvB,QAAC,EAAAO,QAAA,CACC,OAAQf,GAAU,GAClB,oBAAkB,EAAAgB,YAChB,gGACAb,CACF,EACA,aAAW,EAAAa,YACT,uKACAJ,GAAW,mCACXJ,GAAgB,yBAChBK,GAAiB,mBACjBX,CACF,EACA,eAAgBG,EACf,GAAGK,EAEJ,qBAAC,OACC,aAAW,EAAAM,YACT,oDACAf,EAAQ,+DAAiE,qBACzEQ,CACF,EAEA,oBAAC,OAAI,UAAU,wBAAyB,SAAAR,EAAM,KAC9C,OAAC,OACC,UAAU,6BACV,QAASI,EACT,UAAWY,GAAK,EACVA,EAAE,MAAQ,SAAWA,EAAE,MAAQ,OACjCA,EAAE,eAAe,EACjBZ,IAAU,EAEd,EACA,KAAK,SACL,SAAU,EAEV,mBAAC,OAAI,MAAM,6BAA6B,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OACtF,mBAAC,QACC,SAAS,UACT,SAAS,UACT,EAAE,syCACF,KAAK,UACP,EACF,EACF,GACF,KACA,OAAC,OACC,aAAW,EAAAW,YACT,2EACA,CAACf,GAAS,OACV,kBACAG,CACF,EACA,SAAUc,GAAS,CACjB,MAAMC,EAAgBD,EAAM,OAExBC,EAAc,cAAgBA,EAAc,cAI5CA,EAAc,UAAYA,EAAc,cAAgBA,EAAc,aAAe,IACvFb,GAAeA,EAAYY,CAAK,CAEpC,EAEC,SAAAX,EACH,GACF,CAEJ",
6
+ "names": ["modalContainer_exports", "__export", "RegistrationModalContainer", "__toCommonJS", "import_jsx_runtime", "import_lib", "import_react", "import_react_modal", "isOpen", "title", "className", "overlayClassName", "scrollClassName", "onClose", "onScrollEnd", "children", "useAnimation", "titleClassName", "props", "brand", "rounded", "animationShow", "setAnimationShow", "ReactModal", "cn", "e", "event", "targetElement"]
7
7
  }
@@ -1 +1,2 @@
1
- export * from './components/index';
1
+ export * from './components';
2
+ export * from './templates';
package/dist/cjs/index.js CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";var a=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var p=(r,o,f,x)=>{if(o&&typeof o=="object"||typeof o=="function")for(let e of c(o))!d.call(r,e)&&e!==f&&a(r,e,{get:()=>o[e],enumerable:!(x=b(o,e))||x.enumerable});return r},t=(r,o,f)=>(p(r,o,"default"),f&&p(f,o,"default"));var g=r=>p(a({},"__esModule",{value:!0}),r);var m={};module.exports=g(m);t(m,require("./components/index"),module.exports);
1
+ "use strict";var a=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var t=(r,o,p,x)=>{if(o&&typeof o=="object"||typeof o=="function")for(let m of c(o))!d.call(r,m)&&m!==p&&a(r,m,{get:()=>o[m],enumerable:!(x=b(o,m))||x.enumerable});return r},f=(r,o,p)=>(t(r,o,"default"),p&&t(p,o,"default"));var g=r=>t(a({},"__esModule",{value:!0}),r);var e={};module.exports=g(e);f(e,require("./components"),module.exports);f(e,require("./templates"),module.exports);
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../src/index.ts"],
4
- "sourcesContent": ["export * from './components/index'\n"],
5
- "mappings": "iaAAA,IAAAA,EAAA,kBAAAC,EAAAD,GAAAE,EAAAF,EAAc,8BAAd",
4
+ "sourcesContent": ["export * from './components'\nexport * from './templates'\n"],
5
+ "mappings": "iaAAA,IAAAA,EAAA,kBAAAC,EAAAD,GAAAE,EAAAF,EAAc,wBAAd,gBACAE,EAAAF,EAAc,uBADd",
6
6
  "names": ["src_exports", "__toCommonJS", "__reExport"]
7
7
  }
@@ -0,0 +1,73 @@
1
+ import { HeadlessConfig } from '@anker-in/lib';
2
+ import { DTC_TASK_TYPE } from '../components/credits/context/const';
3
+ import { CreditsPageCommon } from '../components/credits/type';
4
+ import { FunctionMemberPriceConfig } from '../components/credits/context/memberPriceTypes';
5
+ import { CreditsBannerCopy } from '../components/credits/creditsBanner';
6
+ import { CreditsInfoCardCopy } from '../components/credits/creditsInfoCard';
7
+ import { CreditsBenefitsCopy } from '../components/credits/creditsBenefits';
8
+ import { CreditsWaysToGetCreditsCopy } from '../components/credits/creditsWaysToGetCredits';
9
+ import { CreditsAnkersolixTaskCopy } from '../components/credits/creditsAnkersolixTask';
10
+ import { CreditsRedeemListCopy } from '../components/credits/creditsRedeemList';
11
+ import { CreditsCashCopy } from '../components/credits/creditsCash';
12
+ import { CreditsMemberPriceCopy } from '../components/credits/creditsMemberPrice';
13
+ import { CreditsFaqCopy } from '../components/credits/creditsFaq';
14
+ import { CreditsNavigationCopy } from '../components/credits/creditsNavigation';
15
+ import { AuthCodeActivateCopy } from 'src/components/registration/authCodeActivate/type';
16
+ export declare enum ComponentKey {
17
+ Navigation = "creditsNavigation",
18
+ Banner = "creditsBanner",
19
+ InfoCard = "creditsInfoCard",
20
+ Benefits = "creditsBenefits",
21
+ WaysToGetCredits = "creditsWaysToGetCredits",
22
+ AnkersolixTask = "creditsAnkersolixTask",
23
+ RedeemList = "creditsRedeemList",
24
+ SpendCreditsLikeCash = "creditsCash",
25
+ MemberPrice = "creditsMemberPrice",
26
+ Faqs = "creditsFaq"
27
+ }
28
+ export type CreditsTemplateProps = {
29
+ headlessConfig: HeadlessConfig;
30
+ siteConfig: {
31
+ registrationsSettings: {
32
+ authCodeActivate: AuthCodeActivateCopy;
33
+ };
34
+ taskIdToTypeMapping: Record<string, DTC_TASK_TYPE>;
35
+ memberPriceDiscount?: FunctionMemberPriceConfig[];
36
+ };
37
+ creditsConfig?: {
38
+ alpcBrand?: string;
39
+ };
40
+ pageConfig: {
41
+ order: ComponentKey[];
42
+ common: CreditsPageCommon;
43
+ components: {
44
+ [ComponentKey.Navigation]?: CreditsNavigationCopy;
45
+ [ComponentKey.Banner]?: CreditsBannerCopy;
46
+ [ComponentKey.InfoCard]?: CreditsInfoCardCopy;
47
+ [ComponentKey.Benefits]?: CreditsBenefitsCopy;
48
+ [ComponentKey.WaysToGetCredits]?: CreditsWaysToGetCreditsCopy;
49
+ [ComponentKey.AnkersolixTask]?: CreditsAnkersolixTaskCopy;
50
+ [ComponentKey.RedeemList]?: CreditsRedeemListCopy;
51
+ [ComponentKey.SpendCreditsLikeCash]?: CreditsCashCopy;
52
+ [ComponentKey.MemberPrice]?: CreditsMemberPriceCopy;
53
+ [ComponentKey.Faqs]?: CreditsFaqCopy;
54
+ };
55
+ };
56
+ userContext: {
57
+ profile: any;
58
+ removeProfile: () => void;
59
+ isLoadingProfile: boolean;
60
+ creditInfo: any;
61
+ customer: any;
62
+ customerLoading: boolean;
63
+ fetchCreditInfo: () => void;
64
+ };
65
+ registrationContext: {
66
+ openSignUpPopup: () => void;
67
+ openSignInPopup: () => void;
68
+ };
69
+ gtm: {
70
+ pageGroup: string;
71
+ };
72
+ };
73
+ export declare const CreditsTemplate: ({ headlessConfig, siteConfig, creditsConfig, userContext, pageConfig, registrationContext, gtm, }: CreditsTemplateProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ "use strict";var C=Object.defineProperty;var L=Object.getOwnPropertyDescriptor;var K=Object.getOwnPropertyNames;var F=Object.prototype.hasOwnProperty;var M=(s,i)=>{for(var p in i)C(s,p,{get:i[p],enumerable:!0})},N=(s,i,p,r)=>{if(i&&typeof i=="object"||typeof i=="function")for(let t of K(i))!F.call(s,t)&&t!==p&&C(s,t,{get:()=>i[t],enumerable:!(r=L(i,t))||r.enumerable});return s};var S=s=>N(C({},"__esModule",{value:!0}),s);var D={};M(D,{ComponentKey:()=>I,CreditsTemplate:()=>x});module.exports=S(D);var o=require("react/jsx-runtime"),a=require("@anker-in/lib"),c=require("../components/registration/context/provider"),f=require("../components/credits/context/provider"),l=require("../components/credits/creditsBanner"),y=require("../components/credits/creditsInfoCard"),g=require("../components/credits/creditsBenefits"),P=require("../components/credits/creditsWaysToGetCredits"),T=require("../components/credits/creditsAnkersolixTask"),v=require("../components/credits/creditsRedeemList"),u=require("../components/credits/creditsCash"),b=require("../components/credits/creditsMemberPrice"),h=require("../components/credits/creditsFaq"),B=require("../components/credits/creditsNavigation"),I=(d=>(d.Navigation="creditsNavigation",d.Banner="creditsBanner",d.InfoCard="creditsInfoCard",d.Benefits="creditsBenefits",d.WaysToGetCredits="creditsWaysToGetCredits",d.AnkersolixTask="creditsAnkersolixTask",d.RedeemList="creditsRedeemList",d.SpendCreditsLikeCash="creditsCash",d.MemberPrice="creditsMemberPrice",d.Faqs="creditsFaq",d))(I||{});const x=({headlessConfig:s,siteConfig:i,creditsConfig:p,userContext:r,pageConfig:t,registrationContext:m,gtm:A})=>(console.log("siteConfig",i),(0,o.jsx)(a.HeadlessProvider,{headlessConfig:s,children:(0,o.jsx)(c.RegistrationProvider,{copy:i.registrationsSettings,email:r?.profile?.email,children:(0,o.jsxs)(f.CreditsProvider,{profile:r?.profile,removeProfile:r?.removeProfile,isLoadingProfile:r?.isLoadingProfile,openSignInPopup:m.openSignInPopup,openSignUpPopup:m.openSignUpPopup,creditInfo:r?.creditInfo,taskIdToTypeMapping:i.taskIdToTypeMapping,customer:r?.customer,fetchCreditInfo:r?.fetchCreditInfo,customerLoading:r?.customerLoading,gtm:A,pageCommon:t.common,memberPriceDiscount:i.memberPriceDiscount,alpcBrand:p?.alpcBrand,children:[t.components.creditsNavigation&&(0,o.jsx)(B.CreditsNavigation,{copy:t.components.creditsNavigation}),(0,o.jsx)("div",{className:(0,a.classNames)("bg-[#f5f5f7] leading-[1.2]"),children:t.order.map(e=>{if(e==="creditsNavigation")return null;const n=t.components?.[e];return n?(0,o.jsxs)(o.Fragment,{children:[e==="creditsBanner"&&(0,o.jsx)(l.CreditsBanner,{copy:n,id:e}),e==="creditsInfoCard"&&r?.profile&&(0,o.jsx)(y.CreditsInfoCard,{copy:n,id:e}),e==="creditsBenefits"&&(0,o.jsx)(g.CreditsBenefits,{copy:n,id:e}),e==="creditsWaysToGetCredits"&&(0,o.jsx)(P.CreditsWaysToGetCredits,{copy:n,id:e,classNames:s.brand==="anker"?{subtitle:"text-white",equalCreditsText:"bg-gradient-to-r from-[#3AD1FF] to-[#008CD6] bg-clip-text text-transparent"}:{subtitle:"text-[#D1D1D1]",equalCreditsText:"text-[#F6EAD0]"}}),e==="creditsAnkersolixTask"&&(0,o.jsx)(T.CreditsAnkersolixTask,{copy:n,id:e}),e==="creditsRedeemList"&&(0,o.jsx)(v.CreditsRedeemList,{copy:n,id:e}),e==="creditsCash"&&(0,o.jsx)(u.CreditsCash,{copy:n,id:e}),e==="creditsMemberPrice"&&(0,o.jsx)(b.CreditsMemberPrice,{copy:n,id:e}),e==="creditsFaq"&&(0,o.jsx)(h.CreditsFaq,{copy:n,id:e}),e!=="creditsBanner"&&(0,o.jsx)("div",{className:"laptop:h-16 desktop:h-[96px] lg-desktop:h-[128px] tablet:h-16 h-16"})]}):null})})]})})}));
2
+ //# sourceMappingURL=Credits.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/templates/Credits.tsx"],
4
+ "sourcesContent": ["import { classNames, HeadlessConfig, HeadlessProvider } from '@anker-in/lib'\nimport { RegistrationProvider } from '../components/registration/context/provider'\n\nimport { DTC_TASK_TYPE } from '../components/credits/context/const'\nimport { CreditsProvider } from '../components/credits/context/provider'\nimport { CreditsPageCommon } from '../components/credits/type'\nimport { FunctionMemberPriceConfig } from '../components/credits/context/memberPriceTypes'\n\nimport { CreditsBanner, CreditsBannerCopy } from '../components/credits/creditsBanner'\nimport { CreditsInfoCard, CreditsInfoCardCopy } from '../components/credits/creditsInfoCard'\nimport { CreditsBenefits, CreditsBenefitsCopy } from '../components/credits/creditsBenefits'\nimport { CreditsWaysToGetCredits, CreditsWaysToGetCreditsCopy } from '../components/credits/creditsWaysToGetCredits'\nimport { CreditsAnkersolixTask, CreditsAnkersolixTaskCopy } from '../components/credits/creditsAnkersolixTask'\nimport { CreditsRedeemList, CreditsRedeemListCopy } from '../components/credits/creditsRedeemList'\nimport { CreditsCash, CreditsCashCopy } from '../components/credits/creditsCash'\nimport { CreditsMemberPrice, CreditsMemberPriceCopy } from '../components/credits/creditsMemberPrice'\nimport { CreditsFaq, CreditsFaqCopy } from '../components/credits/creditsFaq'\nimport { CreditsNavigation, CreditsNavigationCopy } from '../components/credits/creditsNavigation'\nimport { AuthCodeActivateCopy } from 'src/components/registration/authCodeActivate/type'\n\nexport enum ComponentKey {\n Navigation = 'creditsNavigation',\n Banner = 'creditsBanner',\n InfoCard = 'creditsInfoCard',\n Benefits = 'creditsBenefits',\n WaysToGetCredits = 'creditsWaysToGetCredits',\n AnkersolixTask = 'creditsAnkersolixTask',\n RedeemList = 'creditsRedeemList',\n SpendCreditsLikeCash = 'creditsCash',\n MemberPrice = 'creditsMemberPrice',\n Faqs = 'creditsFaq',\n}\nexport type CreditsTemplateProps = {\n headlessConfig: HeadlessConfig\n siteConfig: {\n registrationsSettings: {\n authCodeActivate: AuthCodeActivateCopy\n }\n taskIdToTypeMapping: Record<string, DTC_TASK_TYPE>\n memberPriceDiscount?: FunctionMemberPriceConfig[]\n }\n creditsConfig?: {\n alpcBrand?: string\n }\n pageConfig: {\n order: ComponentKey[]\n common: CreditsPageCommon\n components: {\n [ComponentKey.Navigation]?: CreditsNavigationCopy\n [ComponentKey.Banner]?: CreditsBannerCopy\n [ComponentKey.InfoCard]?: CreditsInfoCardCopy\n [ComponentKey.Benefits]?: CreditsBenefitsCopy\n [ComponentKey.WaysToGetCredits]?: CreditsWaysToGetCreditsCopy\n [ComponentKey.AnkersolixTask]?: CreditsAnkersolixTaskCopy\n [ComponentKey.RedeemList]?: CreditsRedeemListCopy\n [ComponentKey.SpendCreditsLikeCash]?: CreditsCashCopy\n [ComponentKey.MemberPrice]?: CreditsMemberPriceCopy\n [ComponentKey.Faqs]?: CreditsFaqCopy\n }\n }\n userContext: {\n profile: any\n removeProfile: () => void\n isLoadingProfile: boolean\n creditInfo: any\n customer: any\n customerLoading: boolean\n fetchCreditInfo: () => void\n }\n registrationContext: {\n openSignUpPopup: () => void\n openSignInPopup: () => void\n }\n gtm: {\n pageGroup: string\n }\n}\n\nexport const CreditsTemplate = ({\n headlessConfig,\n siteConfig,\n creditsConfig,\n userContext,\n pageConfig,\n registrationContext,\n gtm,\n}: CreditsTemplateProps) => {\n\n console.log('siteConfig', siteConfig)\n return (\n <HeadlessProvider headlessConfig={headlessConfig}>\n <RegistrationProvider copy={siteConfig.registrationsSettings} email={userContext?.profile?.email}>\n <CreditsProvider\n profile={userContext?.profile}\n removeProfile={userContext?.removeProfile}\n isLoadingProfile={userContext?.isLoadingProfile}\n openSignInPopup={registrationContext.openSignInPopup}\n openSignUpPopup={registrationContext.openSignUpPopup}\n creditInfo={userContext?.creditInfo}\n taskIdToTypeMapping={siteConfig.taskIdToTypeMapping}\n customer={userContext?.customer}\n fetchCreditInfo={userContext?.fetchCreditInfo}\n customerLoading={userContext?.customerLoading}\n gtm={gtm}\n pageCommon={pageConfig.common}\n memberPriceDiscount={siteConfig.memberPriceDiscount}\n alpcBrand={creditsConfig?.alpcBrand}\n >\n {/* \u5BFC\u822A\u7EC4\u4EF6 - \u56FA\u5B9A\u4F4D\u7F6E\uFF0C\u4E0D\u53C2\u4E0E order \u6392\u5E8F */}\n {pageConfig.components[ComponentKey.Navigation] && (\n <CreditsNavigation copy={pageConfig.components[ComponentKey.Navigation]} />\n )}\n <div className={classNames('bg-[#f5f5f7] leading-[1.2]')}>\n {pageConfig.order.map(key => {\n // \u8DF3\u8FC7\u5BFC\u822A\u7EC4\u4EF6\uFF0C\u56E0\u4E3A\u5B83\u5DF2\u7ECF\u56FA\u5B9A\u6E32\u67D3\u5728\u4E0A\u65B9\n if (key === ComponentKey.Navigation) return null\n const componentCopy = pageConfig.components?.[key]\n if (!componentCopy) return null\n return (\n <>\n {key === ComponentKey.Banner && <CreditsBanner copy={componentCopy as CreditsBannerCopy} id={key} />}\n {key === ComponentKey.InfoCard && userContext?.profile && (\n <CreditsInfoCard copy={componentCopy as CreditsInfoCardCopy} id={key} />\n )}\n {key === ComponentKey.Benefits && <CreditsBenefits copy={componentCopy as CreditsBenefitsCopy} id={key} />}\n {key === ComponentKey.WaysToGetCredits && (\n <CreditsWaysToGetCredits\n copy={componentCopy as CreditsWaysToGetCreditsCopy}\n id={key}\n classNames={\n headlessConfig.brand === 'anker'\n ? {\n subtitle: 'text-white',\n equalCreditsText:\n 'bg-gradient-to-r from-[#3AD1FF] to-[#008CD6] bg-clip-text text-transparent',\n }\n : {\n subtitle: 'text-[#D1D1D1]',\n equalCreditsText: 'text-[#F6EAD0]',\n }\n }\n />\n )}\n {key === ComponentKey.AnkersolixTask && (\n <CreditsAnkersolixTask\n copy={componentCopy as CreditsAnkersolixTaskCopy}\n id={key}\n />\n )}\n {key === ComponentKey.RedeemList && <CreditsRedeemList copy={componentCopy as CreditsRedeemListCopy} id={key} />}\n {key === ComponentKey.SpendCreditsLikeCash && <CreditsCash copy={componentCopy as CreditsCashCopy} id={key} />}\n {key === ComponentKey.MemberPrice && <CreditsMemberPrice copy={componentCopy as CreditsMemberPriceCopy} id={key} />}\n {key === ComponentKey.Faqs && <CreditsFaq copy={componentCopy as CreditsFaqCopy} id={key} />}\n {key !== ComponentKey.Banner && (\n <div className=\"laptop:h-16 desktop:h-[96px] lg-desktop:h-[128px] tablet:h-16 h-16\" />\n )}\n </>\n )\n })}\n </div>\n </CreditsProvider>\n </RegistrationProvider>\n </HeadlessProvider>\n )\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,kBAAAE,EAAA,oBAAAC,IAAA,eAAAC,EAAAJ,GA8GY,IAAAK,EAAA,6BA9GZC,EAA6D,yBAC7DC,EAAqC,uDAGrCA,EAAgC,kDAIhCC,EAAiD,+CACjDC,EAAqD,iDACrDC,EAAqD,iDACrDC,EAAqE,yDACrEC,EAAiE,uDACjEC,EAAyD,mDACzDC,EAA6C,6CAC7CC,EAA2D,oDAC3DC,EAA2C,4CAC3CC,EAAyD,mDAG7Cf,OACVA,EAAA,WAAa,oBACbA,EAAA,OAAS,gBACTA,EAAA,SAAW,kBACXA,EAAA,SAAW,kBACXA,EAAA,iBAAmB,0BACnBA,EAAA,eAAiB,wBACjBA,EAAA,WAAa,oBACbA,EAAA,qBAAuB,cACvBA,EAAA,YAAc,qBACdA,EAAA,KAAO,aAVGA,OAAA,IA0DL,MAAMC,EAAkB,CAAC,CAC9B,eAAAe,EACA,WAAAC,EACA,cAAAC,EACA,YAAAC,EACA,WAAAC,EACA,oBAAAC,EACA,IAAAC,CACF,KAEE,QAAQ,IAAI,aAAcL,CAAU,KAElC,OAAC,oBAAiB,eAAgBD,EAChC,mBAAC,wBAAqB,KAAMC,EAAW,sBAAuB,MAAOE,GAAa,SAAS,MACzF,oBAAC,mBACC,QAASA,GAAa,QACtB,cAAeA,GAAa,cAC5B,iBAAkBA,GAAa,iBAC/B,gBAAiBE,EAAoB,gBACrC,gBAAiBA,EAAoB,gBACrC,WAAYF,GAAa,WACzB,oBAAqBF,EAAW,oBAChC,SAAUE,GAAa,SACvB,gBAAiBA,GAAa,gBAC9B,gBAAiBA,GAAa,gBAC9B,IAAKG,EACL,WAAYF,EAAW,OACvB,oBAAqBH,EAAW,oBAChC,UAAWC,GAAe,UAGzB,UAAAE,EAAW,WAAW,sBACrB,OAAC,qBAAkB,KAAMA,EAAW,WAAW,kBAA0B,KAE3E,OAAC,OAAI,aAAW,cAAW,4BAA4B,EACpD,SAAAA,EAAW,MAAM,IAAIG,GAAO,CAE3B,GAAIA,IAAQ,oBAAyB,OAAO,KAC5C,MAAMC,EAAgBJ,EAAW,aAAaG,CAAG,EACjD,OAAKC,KAEH,oBACG,UAAAD,IAAQ,oBAAuB,OAAC,iBAAc,KAAMC,EAAoC,GAAID,EAAK,EACjGA,IAAQ,mBAAyBJ,GAAa,YAC7C,OAAC,mBAAgB,KAAMK,EAAsC,GAAID,EAAK,EAEvEA,IAAQ,sBAAyB,OAAC,mBAAgB,KAAMC,EAAsC,GAAID,EAAK,EACvGA,IAAQ,8BACP,OAAC,2BACC,KAAMC,EACN,GAAID,EACJ,WACEP,EAAe,QAAU,QACrB,CACE,SAAU,aACV,iBACE,4EACJ,EACA,CACE,SAAU,iBACV,iBAAkB,gBACpB,EAER,EAEDO,IAAQ,4BACP,OAAC,yBACC,KAAMC,EACN,GAAID,EACN,EAEDA,IAAQ,wBAA2B,OAAC,qBAAkB,KAAMC,EAAwC,GAAID,EAAK,EAC7GA,IAAQ,kBAAqC,OAAC,eAAY,KAAMC,EAAkC,GAAID,EAAK,EAC3GA,IAAQ,yBAA4B,OAAC,sBAAmB,KAAMC,EAAyC,GAAID,EAAK,EAChHA,IAAQ,iBAAqB,OAAC,cAAW,KAAMC,EAAiC,GAAID,EAAK,EACzFA,IAAQ,oBACP,OAAC,OAAI,UAAU,qEAAqE,GAExF,EAvCyB,IAyC7B,CAAC,EACH,GACF,EACF,EACF",
6
+ "names": ["Credits_exports", "__export", "ComponentKey", "CreditsTemplate", "__toCommonJS", "import_jsx_runtime", "import_lib", "import_provider", "import_creditsBanner", "import_creditsInfoCard", "import_creditsBenefits", "import_creditsWaysToGetCredits", "import_creditsAnkersolixTask", "import_creditsRedeemList", "import_creditsCash", "import_creditsMemberPrice", "import_creditsFaq", "import_creditsNavigation", "headlessConfig", "siteConfig", "creditsConfig", "userContext", "pageConfig", "registrationContext", "gtm", "key", "componentCopy"]
7
+ }
@@ -0,0 +1 @@
1
+ export * from './Credits';
@@ -0,0 +1,2 @@
1
+ "use strict";var a=Object.defineProperty;var b=Object.getOwnPropertyDescriptor;var c=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var p=(r,o,f,x)=>{if(o&&typeof o=="object"||typeof o=="function")for(let e of c(o))!d.call(r,e)&&e!==f&&a(r,e,{get:()=>o[e],enumerable:!(x=b(o,e))||x.enumerable});return r},t=(r,o,f)=>(p(r,o,"default"),f&&p(f,o,"default"));var g=r=>p(a({},"__esModule",{value:!0}),r);var m={};module.exports=g(m);t(m,require("./Credits"),module.exports);
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/templates/index.ts"],
4
+ "sourcesContent": ["export * from './Credits'\n"],
5
+ "mappings": "iaAAA,IAAAA,EAAA,kBAAAC,EAAAD,GAAAE,EAAAF,EAAc,qBAAd",
6
+ "names": ["templates_exports", "__toCommonJS", "__reExport"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{Fragment as ne,jsx as t,jsxs as re}from"react/jsx-runtime";import{useMemo as W}from"react";import{useCallback as h,useState as a,useEffect as _}from"react";import{CopilotKit as X}from"@copilotkit/react-core";import{CopilotPopup as Y}from"@copilotkit/react-ui";import Z from"./button";import j from"./messages";import ee from"./response";import te from"./suggestions";import{CopilotAction as oe}from"./action";import b from"../../helpers/fetcher";const se=P=>{const{title:k,runtimeUrl:i,popup:f,shopifyDomain:p,userId:s="",account:c="",prologue:x="",locale:l="",query:n="",messagesCallback:B,showResponseButton:y,gotocheckoutRender:O,commonRender:v,shulexRender:w,pointsExchangeCouponRender:S,gotocartRender:M,addtocartRender:$,productRender:q,signupRender:D,addtocartHandler:K,style:N,className:I="",lang:u}=P,[H,U]=u?.popupTipTimeout||[3e3,6e3],[C,g]=a(!1),[d,G]=a(!1),[r,A]=a(x),[F,m]=a([]),[T,L]=a([]),R=W(()=>({"x-user-id":s||"","x-shopify-domain":p,"x-member-ship":c,"x-user-locale":l}),[s,p,c,l]),z=h(async()=>{const e=await b({url:`${i}/copilotkit/start${n}`,method:"GET",headers:R});m(e?.suggested_questions?.map(o=>({message:o,title:o}))||[]),A(e?.opening_statement||""),L(e?.history||[])},[s,p,c,l,n]),J=h(async()=>{const e=await b({url:`${i}/copilotkit/suggested_questions${n}`,method:"GET",headers:R});m(e?.suggested_questions?.data?.map(o=>({message:o,title:o}))||[])},[s,p,c,l,n]),Q=()=>{C||g(!0),setTimeout(()=>{g(!1)},U)};return _(()=>{const e=setTimeout(()=>{Q()},H);return()=>{clearTimeout(e)}},[]),t("div",{className:I,style:N||{},children:s&&i&&t(X,{runtimeUrl:`${i}/copilotkit/chat${n}`,showDevConsole:!1,headers:R,children:t(Y,{...f,showResponseButton:y!=="follow",labels:{title:k||"DTC Live Chat",initial:r||""},instructions:r||"",onInProgress:e=>{d&&e&&m([]),d&&!e&&J()},Messages:({messages:e,inProgress:o})=>t(j,{messages:e,inProgress:o,messagesCallback:B,ResponseButton:y==="follow"?t(ee,{messagesId:e?.[e.length-1]?.id}):void 0,children:t(te,{currentSuggestions:F})}),Button:({open:e,setOpen:o})=>{const V=f?.Button||Z;_(()=>{G(e)},[e]);const E=h(()=>{o(!e),g(!1),(!r||!T?.length)&&z()},[r]);return re(ne,{children:[u?.popupTip&&C&&!d&&t("div",{className:"copilotKitPopup copilotKitPopupTip",children:t("button",{onClick:E,"aria-label":"Open Chat",className:"copilotKitPopupTipContent",children:u?.popupTip})}),t(V,{open:e,setOpen:E})]})},children:t(oe,{start:r,history:T,commonRender:v,shulexRender:w,pointsExchangeCouponRender:S,gotocartRender:M,gotocheckoutRender:O,addtocartRender:$,signupRender:D,productRender:q,addtocartHandler:K,productRenderTipMessage:u?.productRenderTipMessage})})})})};var fe=se;export{fe as default};
1
+ import{Fragment as ne,jsx as t,jsxs as re}from"react/jsx-runtime";import{useMemo as W}from"react";import{useCallback as h,useState as a,useEffect as _}from"react";import{CopilotKit as X}from"@copilotkit/react-core";import{CopilotPopup as Y}from"@copilotkit/react-ui";import Z from"./button";import j from"./messages";import ee from"./response";import te from"./suggestions";import{CopilotAction as oe}from"./action";import{fetcher as b}from"@anker-in/lib";const se=P=>{const{title:k,runtimeUrl:i,popup:f,shopifyDomain:p,userId:s="",account:c="",prologue:x="",locale:l="",query:n="",messagesCallback:B,showResponseButton:y,gotocheckoutRender:O,commonRender:v,shulexRender:w,pointsExchangeCouponRender:S,gotocartRender:M,addtocartRender:$,productRender:q,signupRender:D,addtocartHandler:K,style:N,className:I="",lang:u}=P,[H,U]=u?.popupTipTimeout||[3e3,6e3],[C,g]=a(!1),[d,G]=a(!1),[r,A]=a(x),[F,m]=a([]),[T,L]=a([]),R=W(()=>({"x-user-id":s||"","x-shopify-domain":p,"x-member-ship":c,"x-user-locale":l}),[s,p,c,l]),z=h(async()=>{const e=await b({url:`${i}/copilotkit/start${n}`,method:"GET",headers:R});m(e?.suggested_questions?.map(o=>({message:o,title:o}))||[]),A(e?.opening_statement||""),L(e?.history||[])},[s,p,c,l,n]),J=h(async()=>{const e=await b({url:`${i}/copilotkit/suggested_questions${n}`,method:"GET",headers:R});m(e?.suggested_questions?.data?.map(o=>({message:o,title:o}))||[])},[s,p,c,l,n]),Q=()=>{C||g(!0),setTimeout(()=>{g(!1)},U)};return _(()=>{const e=setTimeout(()=>{Q()},H);return()=>{clearTimeout(e)}},[]),t("div",{className:I,style:N||{},children:s&&i&&t(X,{runtimeUrl:`${i}/copilotkit/chat${n}`,showDevConsole:!1,headers:R,children:t(Y,{...f,showResponseButton:y!=="follow",labels:{title:k||"DTC Live Chat",initial:r||""},instructions:r||"",onInProgress:e=>{d&&e&&m([]),d&&!e&&J()},Messages:({messages:e,inProgress:o})=>t(j,{messages:e,inProgress:o,messagesCallback:B,ResponseButton:y==="follow"?t(ee,{messagesId:e?.[e.length-1]?.id}):void 0,children:t(te,{currentSuggestions:F})}),Button:({open:e,setOpen:o})=>{const V=f?.Button||Z;_(()=>{G(e)},[e]);const E=h(()=>{o(!e),g(!1),(!r||!T?.length)&&z()},[r]);return re(ne,{children:[u?.popupTip&&C&&!d&&t("div",{className:"copilotKitPopup copilotKitPopupTip",children:t("button",{onClick:E,"aria-label":"Open Chat",className:"copilotKitPopupTipContent",children:u?.popupTip})}),t(V,{open:e,setOpen:E})]})},children:t(oe,{start:r,history:T,commonRender:v,shulexRender:w,pointsExchangeCouponRender:S,gotocartRender:M,gotocheckoutRender:O,addtocartRender:$,signupRender:D,productRender:q,addtocartHandler:K,productRenderTipMessage:u?.productRenderTipMessage})})})})};var fe=se;export{fe as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/components/chat/index.tsx"],
4
- "sourcesContent": ["/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useMemo } from 'react'\nimport { useCallback, useState, useEffect } from 'react'\nimport { CopilotKit } from '@copilotkit/react-core'\nimport { CopilotPopup } from '@copilotkit/react-ui'\nimport DefaultButton from './button'\nimport Messages from './messages'\nimport ResponseButton from './response'\nimport Suggestions from './suggestions'\nimport { CopilotAction } from './action'\nimport fetcher from '../../helpers/fetcher'\n\nexport interface ChatProps {\n title: string\n runtimeUrl: string\n shopifyDomain: string\n /** GA \u7684 client id\n */\n userId: string\n /** \u662F\u5426\u767B\u9646\u7528\u6237 0 or 1\n */\n account?: string\n /** \u7528\u6237\u6D4F\u89C8\u5668\u8BED\u8A00\n */\n locale?: string\n /** \u5F00\u573A\u767D\n */\n prologue?: string\n /** ?a=1&b=2\n */\n query?: string\n /** 'follow' or 'unfollow' | true or false\n * follow: ResponseButton \u4F1A\u8DDF\u968F\u5728 messages \u7684\u540E\u8FB9\n * unfollow: ResponseButton \u5728\u804A\u5929\u6846\u5E95\u90E8\n */\n showResponseButton?: string | boolean\n /** messages \u7684\u56DE\u8C03\u4E8B\u4EF6\n * \u6BCF\u6B21\u751F\u6210/\u63A5\u53D7\u65B0\u7684messages\uFF0C\u4F1A\u5C06 \u6574\u4E2A messages list \u4F20\u9012\u7ED9\u5916\u90E8\n */\n messagesCallback?: (_messages: any) => void\n /** \u901A\u7528 action \u7684\u89E6\u53D1\u4E8B\u4EF6\n */\n commonRender?: string | ((_props: any) => React.ReactElement)\n /** shulex\u7684 action \u7684\u89E6\u53D1\u4E8B\u4EF6\n */\n shulexRender?: string | ((_props: any) => React.ReactElement)\n /** \u901A\u7528 \u79EF\u5206 \u6362 Coupon \u7684\u89E6\u53D1\u4E8B\u4EF6\n */\n pointsExchangeCouponRender?: string | ((_props: any) => React.ReactElement)\n /** \u8DF3\u8F6C checkout action \u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n gotocheckoutRender?: string | ((_props: any) => React.ReactElement)\n /** \u6253\u5F00\u8D2D\u7269\u8F66 action \u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n gotocartRender?: string | ((_props: any) => React.ReactElement)\n /** \u6253\u5F00\u8D2D\u7269\u8F66 action \u7684\u89E6\u53D1\u4E8B\u4EF6\n */\n addtocartHandler?: (_args: any) => Promise<any>\n /** \u52A0\u8D2D\u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n addtocartRender?: string | ((_props: any) => React.ReactElement)\n /** \u8BA2\u9605\u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n signupRender?: string | ((_props: any) => React.ReactElement)\n /** \u4EA7\u54C1\u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n productRender?: string | ((_props: any) => React.ReactElement)\n /** CopilotPopup \u81EA\u5B9A\u4E49\u53C2\u6570\uFF0C\u53C2\u8003\uFF1Ahttps://docs.copilotkit.ai/reference/components/CopilotPopup */\n popup?: any\n /** \u6587\u6848\uFF0C{\"productRenderTipMessage\": \"\",\"popupTip\": \"Hi ! Welcome to soundcore Innovations live chat\uFF01\", \"popupTipTimeout\": [3000, 6000]} */\n lang?: any\n /** \u53C2\u8003\u6B64\u6587\u6863\uFF1Ahttps://docs.copilotkit.ai/concepts/customize-look-and-feel */\n style?: any\n className?: string\n}\n\nconst Chat = (props: ChatProps) => {\n const {\n title,\n runtimeUrl,\n popup,\n shopifyDomain,\n userId = '',\n account = '',\n prologue = '',\n locale = '',\n query = '',\n messagesCallback,\n showResponseButton,\n gotocheckoutRender,\n commonRender,\n shulexRender,\n pointsExchangeCouponRender,\n gotocartRender,\n addtocartRender,\n productRender,\n signupRender,\n addtocartHandler,\n style,\n className = '',\n lang,\n } = props\n const [autoTipOpen, autoTipClose] = lang?.popupTipTimeout || [3000, 6000]\n\n const [openTip, setOpenTip] = useState(false)\n const [openPopup, setOpenPopup] = useState(false)\n const [start, setstart] = useState(prologue)\n const [currentSuggestions, setCurrentSuggestions] = useState([])\n const [history, sethistory] = useState<[{ content: string; role: string }] | []>([])\n\n const headers = useMemo(\n () => ({\n 'x-user-id': userId || '',\n 'x-shopify-domain': shopifyDomain,\n 'x-member-ship': account,\n 'x-user-locale': locale,\n }),\n [userId, shopifyDomain, account, locale]\n )\n\n const getStart = useCallback(async () => {\n const result = await fetcher({\n url: `${runtimeUrl}/copilotkit/start${query}`,\n method: 'GET',\n headers,\n })\n\n setCurrentSuggestions(result?.suggested_questions?.map((item: string) => ({ message: item, title: item })) || [])\n setstart(result?.opening_statement || '')\n sethistory(result?.history || [])\n }, [userId, shopifyDomain, account, locale, query])\n\n const getSuggestions = useCallback(async () => {\n const result = await fetcher({\n url: `${runtimeUrl}/copilotkit/suggested_questions${query}`,\n method: 'GET',\n headers,\n })\n\n setCurrentSuggestions(\n result?.suggested_questions?.data?.map((item: string) => ({ message: item, title: item })) || []\n )\n }, [userId, shopifyDomain, account, locale, query])\n\n const setOpenTipFn = () => {\n if (!openTip) setOpenTip(true)\n setTimeout(() => {\n setOpenTip(false)\n }, autoTipClose)\n }\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setOpenTipFn()\n }, autoTipOpen)\n\n return () => {\n clearTimeout(timer)\n }\n }, [])\n\n return (\n <div className={className} style={style || {}}>\n {userId && runtimeUrl && (\n <CopilotKit runtimeUrl={`${runtimeUrl}/copilotkit/chat${query}`} showDevConsole={false} headers={headers}>\n <CopilotPopup\n {...popup}\n showResponseButton={showResponseButton !== 'follow'}\n labels={{\n title: title || 'DTC Live Chat',\n initial: start || '',\n }}\n instructions={start || ''}\n onInProgress={load => {\n if (openPopup && load) setCurrentSuggestions([])\n if (openPopup && !load) getSuggestions()\n }}\n Messages={({ messages, inProgress }) => (\n <Messages\n messages={messages}\n inProgress={inProgress}\n messagesCallback={messagesCallback}\n ResponseButton={\n showResponseButton === 'follow' ? (\n <ResponseButton messagesId={messages?.[messages.length - 1]?.id} />\n ) : undefined\n }\n >\n <Suggestions currentSuggestions={currentSuggestions} />\n </Messages>\n )}\n Button={({ open, setOpen: setOpenDefault }: { open: boolean; setOpen: (open: boolean) => void }) => {\n const Button = popup?.Button || DefaultButton\n // eslint-disable-next-line react-hooks/rules-of-hooks\n useEffect(() => {\n setOpenPopup(open)\n }, [open])\n\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const setOpen = useCallback(() => {\n setOpenDefault(!open)\n setOpenTip(false)\n if (!start || !history?.length) getStart()\n }, [start])\n\n return (\n <>\n {lang?.popupTip && openTip && !openPopup && (\n <div className=\"copilotKitPopup copilotKitPopupTip\">\n <button onClick={setOpen} aria-label=\"Open Chat\" className=\"copilotKitPopupTipContent\">\n {lang?.popupTip}\n </button>\n </div>\n )}\n <Button open={open} setOpen={setOpen} />\n </>\n )\n }}\n >\n <CopilotAction\n start={start}\n history={history}\n commonRender={commonRender}\n shulexRender={shulexRender}\n pointsExchangeCouponRender={pointsExchangeCouponRender}\n gotocartRender={gotocartRender}\n gotocheckoutRender={gotocheckoutRender}\n addtocartRender={addtocartRender}\n signupRender={signupRender}\n productRender={productRender}\n addtocartHandler={addtocartHandler}\n productRenderTipMessage={lang?.productRenderTipMessage}\n />\n </CopilotPopup>\n </CopilotKit>\n )}\n </div>\n )\n}\n\nexport default Chat\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["/* eslint-disable react-hooks/exhaustive-deps */\nimport React, { useMemo } from 'react'\nimport { useCallback, useState, useEffect } from 'react'\nimport { CopilotKit } from '@copilotkit/react-core'\nimport { CopilotPopup } from '@copilotkit/react-ui'\nimport DefaultButton from './button'\nimport Messages from './messages'\nimport ResponseButton from './response'\nimport Suggestions from './suggestions'\nimport { CopilotAction } from './action'\nimport { fetcher } from '@anker-in/lib'\n\nexport interface ChatProps {\n title: string\n runtimeUrl: string\n shopifyDomain: string\n /** GA \u7684 client id\n */\n userId: string\n /** \u662F\u5426\u767B\u9646\u7528\u6237 0 or 1\n */\n account?: string\n /** \u7528\u6237\u6D4F\u89C8\u5668\u8BED\u8A00\n */\n locale?: string\n /** \u5F00\u573A\u767D\n */\n prologue?: string\n /** ?a=1&b=2\n */\n query?: string\n /** 'follow' or 'unfollow' | true or false\n * follow: ResponseButton \u4F1A\u8DDF\u968F\u5728 messages \u7684\u540E\u8FB9\n * unfollow: ResponseButton \u5728\u804A\u5929\u6846\u5E95\u90E8\n */\n showResponseButton?: string | boolean\n /** messages \u7684\u56DE\u8C03\u4E8B\u4EF6\n * \u6BCF\u6B21\u751F\u6210/\u63A5\u53D7\u65B0\u7684messages\uFF0C\u4F1A\u5C06 \u6574\u4E2A messages list \u4F20\u9012\u7ED9\u5916\u90E8\n */\n messagesCallback?: (_messages: any) => void\n /** \u901A\u7528 action \u7684\u89E6\u53D1\u4E8B\u4EF6\n */\n commonRender?: string | ((_props: any) => React.ReactElement)\n /** shulex\u7684 action \u7684\u89E6\u53D1\u4E8B\u4EF6\n */\n shulexRender?: string | ((_props: any) => React.ReactElement)\n /** \u901A\u7528 \u79EF\u5206 \u6362 Coupon \u7684\u89E6\u53D1\u4E8B\u4EF6\n */\n pointsExchangeCouponRender?: string | ((_props: any) => React.ReactElement)\n /** \u8DF3\u8F6C checkout action \u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n gotocheckoutRender?: string | ((_props: any) => React.ReactElement)\n /** \u6253\u5F00\u8D2D\u7269\u8F66 action \u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n gotocartRender?: string | ((_props: any) => React.ReactElement)\n /** \u6253\u5F00\u8D2D\u7269\u8F66 action \u7684\u89E6\u53D1\u4E8B\u4EF6\n */\n addtocartHandler?: (_args: any) => Promise<any>\n /** \u52A0\u8D2D\u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n addtocartRender?: string | ((_props: any) => React.ReactElement)\n /** \u8BA2\u9605\u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n signupRender?: string | ((_props: any) => React.ReactElement)\n /** \u4EA7\u54C1\u5361\u7247\uFF0C\u63A5\u53D7\u53C2\u6570\uFF1A {\"status\":\"complete\",\"args\":[{\"sku\":[\"A3936031\"],\"handle\":\"space-a40-a3936031\"}],\"result\":\"\"}\n * \u540E\u7AEF\u63A5\u53E3\u6587\u6863\uFF1Ahttps://anker-in.feishu.cn/wiki/DOYJwE9oxipWmYk072ncnJNznBb\n */\n productRender?: string | ((_props: any) => React.ReactElement)\n /** CopilotPopup \u81EA\u5B9A\u4E49\u53C2\u6570\uFF0C\u53C2\u8003\uFF1Ahttps://docs.copilotkit.ai/reference/components/CopilotPopup */\n popup?: any\n /** \u6587\u6848\uFF0C{\"productRenderTipMessage\": \"\",\"popupTip\": \"Hi ! Welcome to soundcore Innovations live chat\uFF01\", \"popupTipTimeout\": [3000, 6000]} */\n lang?: any\n /** \u53C2\u8003\u6B64\u6587\u6863\uFF1Ahttps://docs.copilotkit.ai/concepts/customize-look-and-feel */\n style?: any\n className?: string\n}\n\nconst Chat = (props: ChatProps) => {\n const {\n title,\n runtimeUrl,\n popup,\n shopifyDomain,\n userId = '',\n account = '',\n prologue = '',\n locale = '',\n query = '',\n messagesCallback,\n showResponseButton,\n gotocheckoutRender,\n commonRender,\n shulexRender,\n pointsExchangeCouponRender,\n gotocartRender,\n addtocartRender,\n productRender,\n signupRender,\n addtocartHandler,\n style,\n className = '',\n lang,\n } = props\n const [autoTipOpen, autoTipClose] = lang?.popupTipTimeout || [3000, 6000]\n\n const [openTip, setOpenTip] = useState(false)\n const [openPopup, setOpenPopup] = useState(false)\n const [start, setstart] = useState(prologue)\n const [currentSuggestions, setCurrentSuggestions] = useState([])\n const [history, sethistory] = useState<[{ content: string; role: string }] | []>([])\n\n const headers = useMemo(\n () => ({\n 'x-user-id': userId || '',\n 'x-shopify-domain': shopifyDomain,\n 'x-member-ship': account,\n 'x-user-locale': locale,\n }),\n [userId, shopifyDomain, account, locale]\n )\n\n const getStart = useCallback(async () => {\n const result = await fetcher({\n url: `${runtimeUrl}/copilotkit/start${query}`,\n method: 'GET',\n headers,\n })\n\n setCurrentSuggestions(result?.suggested_questions?.map((item: string) => ({ message: item, title: item })) || [])\n setstart(result?.opening_statement || '')\n sethistory(result?.history || [])\n }, [userId, shopifyDomain, account, locale, query])\n\n const getSuggestions = useCallback(async () => {\n const result = await fetcher({\n url: `${runtimeUrl}/copilotkit/suggested_questions${query}`,\n method: 'GET',\n headers,\n })\n\n setCurrentSuggestions(\n result?.suggested_questions?.data?.map((item: string) => ({ message: item, title: item })) || []\n )\n }, [userId, shopifyDomain, account, locale, query])\n\n const setOpenTipFn = () => {\n if (!openTip) setOpenTip(true)\n setTimeout(() => {\n setOpenTip(false)\n }, autoTipClose)\n }\n\n useEffect(() => {\n const timer = setTimeout(() => {\n setOpenTipFn()\n }, autoTipOpen)\n\n return () => {\n clearTimeout(timer)\n }\n }, [])\n\n return (\n <div className={className} style={style || {}}>\n {userId && runtimeUrl && (\n <CopilotKit runtimeUrl={`${runtimeUrl}/copilotkit/chat${query}`} showDevConsole={false} headers={headers}>\n <CopilotPopup\n {...popup}\n showResponseButton={showResponseButton !== 'follow'}\n labels={{\n title: title || 'DTC Live Chat',\n initial: start || '',\n }}\n instructions={start || ''}\n onInProgress={load => {\n if (openPopup && load) setCurrentSuggestions([])\n if (openPopup && !load) getSuggestions()\n }}\n Messages={({ messages, inProgress }) => (\n <Messages\n messages={messages}\n inProgress={inProgress}\n messagesCallback={messagesCallback}\n ResponseButton={\n showResponseButton === 'follow' ? (\n <ResponseButton messagesId={messages?.[messages.length - 1]?.id} />\n ) : undefined\n }\n >\n <Suggestions currentSuggestions={currentSuggestions} />\n </Messages>\n )}\n Button={({ open, setOpen: setOpenDefault }: { open: boolean; setOpen: (open: boolean) => void }) => {\n const Button = popup?.Button || DefaultButton\n // eslint-disable-next-line react-hooks/rules-of-hooks\n useEffect(() => {\n setOpenPopup(open)\n }, [open])\n\n // eslint-disable-next-line react-hooks/rules-of-hooks\n const setOpen = useCallback(() => {\n setOpenDefault(!open)\n setOpenTip(false)\n if (!start || !history?.length) getStart()\n }, [start])\n\n return (\n <>\n {lang?.popupTip && openTip && !openPopup && (\n <div className=\"copilotKitPopup copilotKitPopupTip\">\n <button onClick={setOpen} aria-label=\"Open Chat\" className=\"copilotKitPopupTipContent\">\n {lang?.popupTip}\n </button>\n </div>\n )}\n <Button open={open} setOpen={setOpen} />\n </>\n )\n }}\n >\n <CopilotAction\n start={start}\n history={history}\n commonRender={commonRender}\n shulexRender={shulexRender}\n pointsExchangeCouponRender={pointsExchangeCouponRender}\n gotocartRender={gotocartRender}\n gotocheckoutRender={gotocheckoutRender}\n addtocartRender={addtocartRender}\n signupRender={signupRender}\n productRender={productRender}\n addtocartHandler={addtocartHandler}\n productRenderTipMessage={lang?.productRenderTipMessage}\n />\n </CopilotPopup>\n </CopilotKit>\n )}\n </div>\n )\n}\n\nexport default Chat\n"],
5
+ "mappings": "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",
6
6
  "names": ["Fragment", "jsx", "jsxs", "useMemo", "useCallback", "useState", "useEffect", "CopilotKit", "CopilotPopup", "DefaultButton", "Messages", "ResponseButton", "Suggestions", "CopilotAction", "fetcher", "Chat", "props", "title", "runtimeUrl", "popup", "shopifyDomain", "userId", "account", "prologue", "locale", "query", "messagesCallback", "showResponseButton", "gotocheckoutRender", "commonRender", "shulexRender", "pointsExchangeCouponRender", "gotocartRender", "addtocartRender", "productRender", "signupRender", "addtocartHandler", "style", "className", "lang", "autoTipOpen", "autoTipClose", "openTip", "setOpenTip", "openPopup", "setOpenPopup", "start", "setstart", "currentSuggestions", "setCurrentSuggestions", "history", "sethistory", "headers", "getStart", "result", "item", "getSuggestions", "setOpenTipFn", "timer", "load", "messages", "inProgress", "open", "setOpenDefault", "Button", "setOpen", "chat_default"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{useCallback as L,useEffect as v,useState as o}from"react";import{useAlpcMutation as _}from"./useAlpcFetch";import{useCreditsContext as x}from"../provider";import{useHeadlessContext as A}from"@anker-in/lib";function y({page:t,pageSize:r,options:n={}}){const{profile:e,isLoadingProfile:a}=x(),{brand:l}=A(),[s,f]=o([]),[c,p]=o(0),[u,C]=o(0),{isMutating:i,trigger:d}=_({url:"/v1/credit/log",initData:{brand:l}}),g=L(async()=>{const b={page:t,page_size:r,user_id:e?.user_id,...n};d(b,{onSuccess(m){C(t),p(m?.data?.total),f(s.concat(m?.data?.creditLogs||[]))}})},[s,e,t,r,n,d]);return v(()=>{a||!e||i||t!==u&&t&&g()},[g,a,i,e,t,u]),{activities:s,isLoading:i,total:c,canNext:c>s.length&&!i}}var S=y;export{S as default};
1
+ import{useCallback as _,useEffect as x,useState as r}from"react";import{useAlpcMutation as A}from"./useAlpcFetch";import{useCreditsContext as y}from"../provider";import{useHeadlessContext as P}from"@anker-in/lib";function R({page:t,pageSize:o,options:n={}}){const{profile:e,isLoadingProfile:a,alpcBrand:m}=y(),{brand:p}=P(),f=m||p,[s,b]=r([]),[c,C]=r(0),[u,L]=r(0),{isMutating:i,trigger:d}=A({url:"/v1/credit/log",initData:{brand:f}}),g=_(async()=>{const v={page:t,page_size:o,user_id:e?.user_id,...n};d(v,{onSuccess(l){L(t),C(l?.data?.total),b(s.concat(l?.data?.creditLogs||[]))}})},[s,e,t,o,n,d]);return x(()=>{a||!e||i||t!==u&&t&&g()},[g,a,i,e,t,u]),{activities:s,isLoading:i,total:c,canNext:c>s.length&&!i}}var S=R;export{S as default};
2
2
  //# sourceMappingURL=useActivities.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/components/credits/context/hooks/useActivities.ts"],
4
- "sourcesContent": ["import { useCallback, useEffect, useState } from 'react'\n\nimport { useAlpcMutation } from './useAlpcFetch'\nimport type { CreditLogResponse } from '../response'\nimport { useCreditsContext } from '../provider'\nimport { useHeadlessContext } from '@anker-in/lib'\n\nfunction useActivities({ page, pageSize, options = {} }: { page: number; pageSize: number; options?: any }) {\n const { profile, isLoadingProfile } = useCreditsContext()\n const { brand } = useHeadlessContext()\n const [activities, setActivities] = useState<CreditLogResponse[]>([])\n const [total, setTotal] = useState(0)\n\n const [currentPage, setCurrentPage] = useState(0)\n\n const { isMutating: isLoading, trigger } = useAlpcMutation<\n {\n data: {\n total: number\n creditLogs: CreditLogResponse[]\n }\n },\n {\n page: number\n page_size: number\n user_id: string\n }\n >({\n url: `/v1/credit/log`,\n initData: {\n brand,\n },\n })\n\n const getActivities = useCallback(async () => {\n const params = {\n page: page,\n page_size: pageSize,\n user_id: profile?.user_id,\n ...options,\n }\n\n trigger(params, {\n onSuccess(responseData) {\n setCurrentPage(page)\n setTotal(responseData?.data?.total)\n setActivities(activities.concat(responseData?.data?.creditLogs || []))\n },\n })\n }, [activities, profile, page, pageSize, options, trigger])\n\n useEffect(() => {\n if (isLoadingProfile || !profile || isLoading) {\n return\n }\n\n if (page !== currentPage && page) {\n getActivities()\n }\n }, [getActivities, isLoadingProfile, isLoading, profile, page, currentPage])\n\n return {\n activities,\n isLoading,\n total,\n canNext: total > activities.length && !isLoading,\n }\n}\n\nexport default useActivities\n"],
5
- "mappings": "AAAA,OAAS,eAAAA,EAAa,aAAAC,EAAW,YAAAC,MAAgB,QAEjD,OAAS,mBAAAC,MAAuB,iBAEhC,OAAS,qBAAAC,MAAyB,cAClC,OAAS,sBAAAC,MAA0B,gBAEnC,SAASC,EAAc,CAAE,KAAAC,EAAM,SAAAC,EAAU,QAAAC,EAAU,CAAC,CAAE,EAAsD,CAC1G,KAAM,CAAE,QAAAC,EAAS,iBAAAC,CAAiB,EAAIP,EAAkB,EAClD,CAAE,MAAAQ,CAAM,EAAIP,EAAmB,EAC/B,CAACQ,EAAYC,CAAa,EAAIZ,EAA8B,CAAC,CAAC,EAC9D,CAACa,EAAOC,CAAQ,EAAId,EAAS,CAAC,EAE9B,CAACe,EAAaC,CAAc,EAAIhB,EAAS,CAAC,EAE1C,CAAE,WAAYiB,EAAW,QAAAC,CAAQ,EAAIjB,EAYzC,CACA,IAAK,iBACL,SAAU,CACR,MAAAS,CACF,CACF,CAAC,EAEKS,EAAgBrB,EAAY,SAAY,CAC5C,MAAMsB,EAAS,CACb,KAAMf,EACN,UAAWC,EACX,QAASE,GAAS,QAClB,GAAGD,CACL,EAEAW,EAAQE,EAAQ,CACd,UAAUC,EAAc,CACtBL,EAAeX,CAAI,EACnBS,EAASO,GAAc,MAAM,KAAK,EAClCT,EAAcD,EAAW,OAAOU,GAAc,MAAM,YAAc,CAAC,CAAC,CAAC,CACvE,CACF,CAAC,CACH,EAAG,CAACV,EAAYH,EAASH,EAAMC,EAAUC,EAASW,CAAO,CAAC,EAE1D,OAAAnB,EAAU,IAAM,CACVU,GAAoB,CAACD,GAAWS,GAIhCZ,IAASU,GAAeV,GAC1Bc,EAAc,CAElB,EAAG,CAACA,EAAeV,EAAkBQ,EAAWT,EAASH,EAAMU,CAAW,CAAC,EAEpE,CACL,WAAAJ,EACA,UAAAM,EACA,MAAAJ,EACA,QAASA,EAAQF,EAAW,QAAU,CAACM,CACzC,CACF,CAEA,IAAOK,EAAQlB",
6
- "names": ["useCallback", "useEffect", "useState", "useAlpcMutation", "useCreditsContext", "useHeadlessContext", "useActivities", "page", "pageSize", "options", "profile", "isLoadingProfile", "brand", "activities", "setActivities", "total", "setTotal", "currentPage", "setCurrentPage", "isLoading", "trigger", "getActivities", "params", "responseData", "useActivities_default"]
4
+ "sourcesContent": ["import { useCallback, useEffect, useState } from 'react'\n\nimport { useAlpcMutation } from './useAlpcFetch'\nimport type { CreditLogResponse } from '../response'\nimport { useCreditsContext } from '../provider'\nimport { useHeadlessContext } from '@anker-in/lib'\n\nfunction useActivities({ page, pageSize, options = {} }: { page: number; pageSize: number; options?: any }) {\n const { profile, isLoadingProfile, alpcBrand } = useCreditsContext()\n const { brand: headlessBrand } = useHeadlessContext()\n const brand = alpcBrand || headlessBrand\n const [activities, setActivities] = useState<CreditLogResponse[]>([])\n const [total, setTotal] = useState(0)\n\n const [currentPage, setCurrentPage] = useState(0)\n\n const { isMutating: isLoading, trigger } = useAlpcMutation<\n {\n data: {\n total: number\n creditLogs: CreditLogResponse[]\n }\n },\n {\n page: number\n page_size: number\n user_id: string\n }\n >({\n url: `/v1/credit/log`,\n initData: {\n brand,\n },\n })\n\n const getActivities = useCallback(async () => {\n const params = {\n page: page,\n page_size: pageSize,\n user_id: profile?.user_id,\n ...options,\n }\n\n trigger(params, {\n onSuccess(responseData) {\n setCurrentPage(page)\n setTotal(responseData?.data?.total)\n setActivities(activities.concat(responseData?.data?.creditLogs || []))\n },\n })\n }, [activities, profile, page, pageSize, options, trigger])\n\n useEffect(() => {\n if (isLoadingProfile || !profile || isLoading) {\n return\n }\n\n if (page !== currentPage && page) {\n getActivities()\n }\n }, [getActivities, isLoadingProfile, isLoading, profile, page, currentPage])\n\n return {\n activities,\n isLoading,\n total,\n canNext: total > activities.length && !isLoading,\n }\n}\n\nexport default useActivities\n"],
5
+ "mappings": "AAAA,OAAS,eAAAA,EAAa,aAAAC,EAAW,YAAAC,MAAgB,QAEjD,OAAS,mBAAAC,MAAuB,iBAEhC,OAAS,qBAAAC,MAAyB,cAClC,OAAS,sBAAAC,MAA0B,gBAEnC,SAASC,EAAc,CAAE,KAAAC,EAAM,SAAAC,EAAU,QAAAC,EAAU,CAAC,CAAE,EAAsD,CAC1G,KAAM,CAAE,QAAAC,EAAS,iBAAAC,EAAkB,UAAAC,CAAU,EAAIR,EAAkB,EAC7D,CAAE,MAAOS,CAAc,EAAIR,EAAmB,EAC9CS,EAAQF,GAAaC,EACrB,CAACE,EAAYC,CAAa,EAAId,EAA8B,CAAC,CAAC,EAC9D,CAACe,EAAOC,CAAQ,EAAIhB,EAAS,CAAC,EAE9B,CAACiB,EAAaC,CAAc,EAAIlB,EAAS,CAAC,EAE1C,CAAE,WAAYmB,EAAW,QAAAC,CAAQ,EAAInB,EAYzC,CACA,IAAK,iBACL,SAAU,CACR,MAAAW,CACF,CACF,CAAC,EAEKS,EAAgBvB,EAAY,SAAY,CAC5C,MAAMwB,EAAS,CACb,KAAMjB,EACN,UAAWC,EACX,QAASE,GAAS,QAClB,GAAGD,CACL,EAEAa,EAAQE,EAAQ,CACd,UAAUC,EAAc,CACtBL,EAAeb,CAAI,EACnBW,EAASO,GAAc,MAAM,KAAK,EAClCT,EAAcD,EAAW,OAAOU,GAAc,MAAM,YAAc,CAAC,CAAC,CAAC,CACvE,CACF,CAAC,CACH,EAAG,CAACV,EAAYL,EAASH,EAAMC,EAAUC,EAASa,CAAO,CAAC,EAE1D,OAAArB,EAAU,IAAM,CACVU,GAAoB,CAACD,GAAWW,GAIhCd,IAASY,GAAeZ,GAC1BgB,EAAc,CAElB,EAAG,CAACA,EAAeZ,EAAkBU,EAAWX,EAASH,EAAMY,CAAW,CAAC,EAEpE,CACL,WAAAJ,EACA,UAAAM,EACA,MAAAJ,EACA,QAASA,EAAQF,EAAW,QAAU,CAACM,CACzC,CACF,CAEA,IAAOK,EAAQpB",
6
+ "names": ["useCallback", "useEffect", "useState", "useAlpcMutation", "useCreditsContext", "useHeadlessContext", "useActivities", "page", "pageSize", "options", "profile", "isLoadingProfile", "alpcBrand", "headlessBrand", "brand", "activities", "setActivities", "total", "setTotal", "currentPage", "setCurrentPage", "isLoading", "trigger", "getActivities", "params", "responseData", "useActivities_default"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import A from"js-cookie";import{useCallback as C,useRef as T,useState as m}from"react";import E from"swr";import{useHeadlessContext as U}from"@anker-in/lib";import{getAlpcPath as D}from"../utils";import{useCreditsContext as S}from"../provider";let O;const b=t=>fetch(D(t.locale)+t.url,t.fetchOptions).then(async n=>{if(n.status<300)return(await n.json()).data;if(n.status===401&&t.onReAuth){O||(O=t.onReAuth());const r=await O;if(O=void 0,r)return fetch(D(t.locale)+t.url,t.fetchOptions).then(async e=>{if(e.status<300)return(await e.json()).data;if(e.status===401){t.onUnAuth&&t.onUnAuth();return}});t.onUnAuth&&t.onUnAuth();return}}),x=async(t,n,r)=>{let e=await fetch(`${D(t)}/cloud/login`,{method:"POST"}),a=await e.json();if(e.status<300&&!n&&a?.data?.code===27004){const o=A.get("alpcEU");if(Number(o)===1?A.set("alpcEU","0",{expires:30,domain:`.${r}.com`}):A.set("alpcEU","1",{expires:30,domain:`.${r}.com`}),e=await fetch(`${D(t)}/cloud/login`,{method:"POST"}),a=await e.json(),e.status>300)return!1}return!a?.data?.code},M=(t,n,r={})=>{const e=T(!1),[a,o]=m(),[i,s]=m(!1),u=T(t),f=T(n),l=T(r),g=C(async(h,d={})=>{if(e.current)return;e.current=!0,s(!0);const y={...l.current,...d},{onSuccess:p,onError:R}=y||{};try{const c=await f.current(u.current,{arg:h});return o(c),s(!1),e.current=!1,p&&p(c),c}catch(c){s(!1),e.current=!1,R&&R(c)}},[]);return{isMutating:i,trigger:g,data:a}},$=(t,n)=>{const[r,e]=m(!1),{removeProfile:a}=S(),{enable:o,...i}=n||{},{locale:s="",brand:u}=U(),{queryKey:f=[],body:l={},headers:g,...h}=t,d=o??!0,[y,p]=f;return E([y,p],d?([c,w])=>b({url:c,locale:s,fetchOptions:{method:"POST",headers:{"current-language":s,...g},body:JSON.stringify({...l,...w}),...h},onReAuth:async()=>await x(s,r,u)?(e(!0),!0):!1,onUnAuth(){a()}}):null,{revalidateOnFocus:!1,...i})},k=(t,n)=>{const[r,e]=m(!1),{removeProfile:a}=S(),{locale:o="",brand:i}=U(),{url:s,initData:u,headers:f,...l}=t;return M(s,(h,d)=>b({url:h,locale:o,fetchOptions:{method:"POST",headers:{"current-language":o,...f},...l,body:JSON.stringify({...u,...d.arg})},onReAuth:async()=>await x(o,r,i)?(e(!0),!0):!1,onUnAuth(){a()}}),n)};export{$ as useAlpcFetch,k as useAlpcMutation};
1
+ import A from"js-cookie";import{useCallback as C,useRef as m,useState as D}from"react";import E from"swr";import{useHeadlessContext as U}from"@anker-in/lib";import{getAlpcPath as O}from"../utils";import{useCreditsContext as b}from"../provider";let R;const S=t=>fetch(O(t.locale)+t.url,t.fetchOptions).then(async n=>{if(n.status<300)return(await n.json()).data;if(n.status===401&&t.onReAuth){R||(R=t.onReAuth());const r=await R;if(R=void 0,r)return fetch(O(t.locale)+t.url,t.fetchOptions).then(async e=>{if(e.status<300)return(await e.json()).data;if(e.status===401){t.onUnAuth&&t.onUnAuth();return}});t.onUnAuth&&t.onUnAuth();return}}),x=async(t,n,r)=>{let e=await fetch(`${O(t)}/cloud/login`,{method:"POST"}),a=await e.json();if(e.status<300&&!n&&a?.data?.code===27004){const o=A.get("alpcEU");if(Number(o)===1?A.set("alpcEU","0",{expires:30,domain:`.${r}.com`}):A.set("alpcEU","1",{expires:30,domain:`.${r}.com`}),e=await fetch(`${O(t)}/cloud/login`,{method:"POST"}),a=await e.json(),e.status>300)return!1}return!a?.data?.code},M=(t,n,r={})=>{const e=m(!1),[a,o]=D(),[s,c]=D(!1),i=m(t),f=m(n),d=m(r),h=C(async(g,T={})=>{if(e.current)return;e.current=!0,c(!0);const y={...d.current,...T},{onSuccess:l,onError:p}=y||{};try{const u=await f.current(i.current,{arg:g});return o(u),c(!1),e.current=!1,l&&l(u),u}catch(u){c(!1),e.current=!1,p&&p(u)}},[]);return{isMutating:s,trigger:h,data:a}},N=(t,n)=>{const[r,e]=D(!1),{removeProfile:a,alpcBrand:o}=b(),{enable:s,...c}=n||{},{locale:i="",brand:f}=U(),d=o||f,{queryKey:h=[],body:g={},headers:T,...y}=t,l=s??!0,[p,u]=h;return E([p,u],l?([B,w])=>S({url:B,locale:i,fetchOptions:{method:"POST",headers:{"current-language":i,...T},body:JSON.stringify({...g,...w}),...y},onReAuth:async()=>await x(i,r,d)?(e(!0),!0):!1,onUnAuth(){a()}}):null,{revalidateOnFocus:!1,...c})},W=(t,n)=>{const[r,e]=D(!1),{removeProfile:a,alpcBrand:o}=b(),{locale:s="",brand:c}=U(),i=o||c,{url:f,initData:d,headers:h,...g}=t;return M(f,(y,l)=>S({url:y,locale:s,fetchOptions:{method:"POST",headers:{"current-language":s,...h},...g,body:JSON.stringify({...d,...l.arg})},onReAuth:async()=>await x(s,r,i)?(e(!0),!0):!1,onUnAuth(){a()}}),n)};export{N as useAlpcFetch,W as useAlpcMutation};
2
2
  //# sourceMappingURL=useAlpcFetch.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/components/credits/context/hooks/useAlpcFetch.ts"],
4
- "sourcesContent": ["import Cookies from 'js-cookie'\nimport { useCallback, useRef, useState } from 'react'\nimport useSWR, { type SWRConfiguration } from 'swr'\nimport { useHeadlessContext } from '@anker-in/lib'\n\nimport { getAlpcPath } from '../utils'\nimport { useCreditsContext } from '../provider'\n\ninterface UseAlpcFetchOptionsSwrOptions<TData, Error> extends SWRConfiguration<TData, Error> {\n enable?: boolean\n}\n\ninterface FetchOptions extends RequestInit {\n queryKey: [string, Record<string, any>]\n data?: Record<string, any>\n}\n\ninterface MutationOptions extends RequestInit {\n url: string\n initData: Record<string, any>\n}\n\ninterface FetcherOptions {\n url: string\n locale: string\n fetchOptions: RequestInit\n onReAuth: () => Promise<boolean>\n onUnAuth: () => void\n}\n\nlet reAuthPromise: Promise<boolean> | undefined\n\ntype Fetcher<TData, TBody> = (url: string, data: { arg: TBody }) => Promise<TData>\n\nconst fetcher = (options: FetcherOptions) => {\n return fetch(getAlpcPath(options.locale) + options.url, options.fetchOptions).then(async response => {\n if (response.status < 300) {\n const responseData = await response.json()\n return responseData.data\n }\n\n // \u9519\u8BEF\u5904\u7406\n if (response.status === 401) {\n // \u91CD\u65B0\u767B\u5F55\u5C1D\u8BD5\n if (options.onReAuth) {\n if (!reAuthPromise) {\n reAuthPromise = options.onReAuth()\n }\n\n const result = await reAuthPromise\n\n reAuthPromise = undefined\n\n if (result) {\n // \u8DE8\u533A\u91CD\u65B0\u767B\u5F55\u540E\u9700\u8981\u66FF\u6362\u533A\u57DF\u6807\u5FD7\uFF0C\u6240\u4EE5\u4E0D\u80FD\u7528\u6700\u5F00\u59CB\u8BF7\u6C42\u7684\u90A3\u4E2A\u94FE\u63A5\n return fetch(getAlpcPath(options.locale) + options.url, options.fetchOptions).then(async response => {\n if (response.status < 300) {\n const responseData = await response.json()\n return responseData.data\n }\n\n if (response.status === 401) {\n if (options.onUnAuth) {\n options.onUnAuth()\n }\n return\n }\n })\n } else {\n if (options.onUnAuth) {\n options.onUnAuth()\n }\n return\n }\n }\n }\n })\n}\n\nconst reAuth = async (locale: string, retry: boolean, brand: string) => {\n let reloginResponse = await fetch(`${getAlpcPath(locale)}/cloud/login`, {\n method: 'POST',\n })\n let reloginResponseData = await reloginResponse.json()\n\n if (reloginResponse!.status < 300 && !retry) {\n if (reloginResponseData?.data?.code === 27004) {\n // \u8DE8\u533A\u767B\u5F55\u9519\u8BEF\n const alpcEUCookie = Cookies.get('alpcEU')\n\n if (Number(alpcEUCookie) === 1) {\n Cookies.set('alpcEU', '0', {\n expires: 30,\n domain: `.${brand}.com`,\n })\n } else {\n Cookies.set('alpcEU', '1', {\n expires: 30,\n domain: `.${brand}.com`,\n })\n }\n\n // \u91CD\u65B0\u5C1D\u8BD5\u6362\u533A\u767B\u5F55\n reloginResponse = await fetch(`${getAlpcPath(locale)}/cloud/login`, {\n method: 'POST',\n })\n reloginResponseData = await reloginResponse.json()\n\n if (reloginResponse.status > 300) {\n return false\n }\n }\n }\n if (!reloginResponseData?.data?.code) {\n // \u91CD\u65B0\u767B\u5F55\u6210\u529F\n return true\n }\n\n return false\n}\n\nexport interface UseMutationConfig<TData> {\n onSuccess?: (response: TData) => any\n onError?: (error: Error) => any\n}\n\nconst useMutation = <TData, TBody>(\n url: string,\n fetcher: Fetcher<TData, TBody>,\n mutationConfig: UseMutationConfig<TData> = {}\n) => {\n const innerMutating = useRef<boolean>(false)\n\n const [data, setData] = useState<TData>()\n const [isMutating, setIsMutating] = useState(false)\n\n const urlRef = useRef(url)\n const fetcherRef = useRef(fetcher)\n const configRef = useRef(mutationConfig)\n\n const trigger = useCallback(\n async (fetchData: TBody, opts: UseMutationConfig<TData> = {}) => {\n if (innerMutating.current) {\n return\n }\n\n innerMutating.current = true\n setIsMutating(true)\n\n const config = {\n ...configRef.current,\n ...opts,\n }\n\n const { onSuccess, onError } = config || {}\n\n try {\n const fetchResult = await fetcherRef.current(urlRef.current, {\n arg: fetchData,\n })\n setData(fetchResult)\n\n setIsMutating(false)\n innerMutating.current = false\n\n if (onSuccess) {\n onSuccess(fetchResult)\n }\n return fetchResult\n } catch (err: any) {\n setIsMutating(false)\n innerMutating.current = false\n\n if (onError) {\n onError(err)\n }\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n []\n )\n\n return {\n isMutating,\n trigger,\n data,\n }\n}\n\nexport const useAlpcFetch = <TData>(\n options: FetchOptions,\n swrOptions?: UseAlpcFetchOptionsSwrOptions<TData, Error>\n) => {\n const [retry, setRetry] = useState(false)\n const { removeProfile } = useCreditsContext()\n\n const { enable, ...otherSwrOptions } = swrOptions || {}\n\n const { locale = '', brand } = useHeadlessContext()\n\n const { queryKey = [], body: fetchBody = {}, headers, ...fetchOptions } = options\n const fetchEnable = enable ?? true\n\n const [url, requestBody] = queryKey\n\n const context = useSWR<TData>(\n [url, requestBody],\n !fetchEnable\n ? null\n : ([requestUrl, data]: [string, Record<string, any>]) =>\n fetcher({\n url: requestUrl,\n locale,\n fetchOptions: {\n method: 'POST',\n headers: {\n 'current-language': locale,\n ...headers,\n },\n body: JSON.stringify({\n ...fetchBody,\n ...data,\n }),\n ...fetchOptions,\n },\n onReAuth: async () => {\n const result = await reAuth(locale, retry, brand)\n\n if (result) {\n setRetry(true)\n return true\n }\n\n return false\n },\n onUnAuth() {\n // \u5931\u8D25\u540E\u9000\u51FA\u767B\u5F55\n removeProfile()\n },\n }),\n {\n revalidateOnFocus: false,\n ...otherSwrOptions,\n }\n )\n\n return context\n}\n\nexport const useAlpcMutation = <TData, TBody>(options: MutationOptions, mutationOptions?: UseMutationConfig<TData>) => {\n const [retry, setRetry] = useState(false)\n const { removeProfile } = useCreditsContext()\n\n const { locale = '', brand } = useHeadlessContext()\n\n const { url, initData, headers, ...fetchOptions } = options\n\n const context = useMutation<TData, TBody>(\n url,\n (requestUrl, data: { arg: TBody }) =>\n fetcher({\n url: requestUrl,\n locale,\n fetchOptions: {\n method: 'POST',\n headers: {\n 'current-language': locale,\n ...headers,\n },\n ...fetchOptions,\n body: JSON.stringify({\n ...initData,\n ...data.arg,\n }),\n },\n onReAuth: async () => {\n const result = await reAuth(locale, retry, brand)\n\n if (result) {\n setRetry(true)\n return true\n }\n\n return false\n },\n onUnAuth() {\n // \u5931\u8D25\u540E\u9000\u51FA\u767B\u5F55\n removeProfile()\n },\n }),\n mutationOptions\n )\n\n return context\n}\n"],
5
- "mappings": "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",
6
- "names": ["Cookies", "useCallback", "useRef", "useState", "useSWR", "useHeadlessContext", "getAlpcPath", "useCreditsContext", "reAuthPromise", "fetcher", "options", "response", "result", "reAuth", "locale", "retry", "brand", "reloginResponse", "reloginResponseData", "alpcEUCookie", "useMutation", "url", "mutationConfig", "innerMutating", "data", "setData", "isMutating", "setIsMutating", "urlRef", "fetcherRef", "configRef", "trigger", "fetchData", "opts", "config", "onSuccess", "onError", "fetchResult", "err", "useAlpcFetch", "swrOptions", "setRetry", "removeProfile", "enable", "otherSwrOptions", "queryKey", "fetchBody", "headers", "fetchOptions", "fetchEnable", "requestBody", "requestUrl", "useAlpcMutation", "mutationOptions", "initData"]
4
+ "sourcesContent": ["import Cookies from 'js-cookie'\nimport { useCallback, useRef, useState } from 'react'\nimport useSWR, { type SWRConfiguration } from 'swr'\nimport { useHeadlessContext } from '@anker-in/lib'\n\nimport { getAlpcPath } from '../utils'\nimport { useCreditsContext } from '../provider'\n\ninterface UseAlpcFetchOptionsSwrOptions<TData, Error> extends SWRConfiguration<TData, Error> {\n enable?: boolean\n}\n\ninterface FetchOptions extends RequestInit {\n queryKey: [string, Record<string, any>]\n data?: Record<string, any>\n}\n\ninterface MutationOptions extends RequestInit {\n url: string\n initData: Record<string, any>\n}\n\ninterface FetcherOptions {\n url: string\n locale: string\n fetchOptions: RequestInit\n onReAuth: () => Promise<boolean>\n onUnAuth: () => void\n}\n\nlet reAuthPromise: Promise<boolean> | undefined\n\ntype Fetcher<TData, TBody> = (url: string, data: { arg: TBody }) => Promise<TData>\n\nconst fetcher = (options: FetcherOptions) => {\n return fetch(getAlpcPath(options.locale) + options.url, options.fetchOptions).then(async response => {\n if (response.status < 300) {\n const responseData = await response.json()\n return responseData.data\n }\n\n // \u9519\u8BEF\u5904\u7406\n if (response.status === 401) {\n // \u91CD\u65B0\u767B\u5F55\u5C1D\u8BD5\n if (options.onReAuth) {\n if (!reAuthPromise) {\n reAuthPromise = options.onReAuth()\n }\n\n const result = await reAuthPromise\n\n reAuthPromise = undefined\n\n if (result) {\n // \u8DE8\u533A\u91CD\u65B0\u767B\u5F55\u540E\u9700\u8981\u66FF\u6362\u533A\u57DF\u6807\u5FD7\uFF0C\u6240\u4EE5\u4E0D\u80FD\u7528\u6700\u5F00\u59CB\u8BF7\u6C42\u7684\u90A3\u4E2A\u94FE\u63A5\n return fetch(getAlpcPath(options.locale) + options.url, options.fetchOptions).then(async response => {\n if (response.status < 300) {\n const responseData = await response.json()\n return responseData.data\n }\n\n if (response.status === 401) {\n if (options.onUnAuth) {\n options.onUnAuth()\n }\n return\n }\n })\n } else {\n if (options.onUnAuth) {\n options.onUnAuth()\n }\n return\n }\n }\n }\n })\n}\n\nconst reAuth = async (locale: string, retry: boolean, brand: string) => {\n let reloginResponse = await fetch(`${getAlpcPath(locale)}/cloud/login`, {\n method: 'POST',\n })\n let reloginResponseData = await reloginResponse.json()\n\n if (reloginResponse!.status < 300 && !retry) {\n if (reloginResponseData?.data?.code === 27004) {\n // \u8DE8\u533A\u767B\u5F55\u9519\u8BEF\n const alpcEUCookie = Cookies.get('alpcEU')\n\n if (Number(alpcEUCookie) === 1) {\n Cookies.set('alpcEU', '0', {\n expires: 30,\n domain: `.${brand}.com`,\n })\n } else {\n Cookies.set('alpcEU', '1', {\n expires: 30,\n domain: `.${brand}.com`,\n })\n }\n\n // \u91CD\u65B0\u5C1D\u8BD5\u6362\u533A\u767B\u5F55\n reloginResponse = await fetch(`${getAlpcPath(locale)}/cloud/login`, {\n method: 'POST',\n })\n reloginResponseData = await reloginResponse.json()\n\n if (reloginResponse.status > 300) {\n return false\n }\n }\n }\n if (!reloginResponseData?.data?.code) {\n // \u91CD\u65B0\u767B\u5F55\u6210\u529F\n return true\n }\n\n return false\n}\n\nexport interface UseMutationConfig<TData> {\n onSuccess?: (response: TData) => any\n onError?: (error: Error) => any\n}\n\nconst useMutation = <TData, TBody>(\n url: string,\n fetcher: Fetcher<TData, TBody>,\n mutationConfig: UseMutationConfig<TData> = {}\n) => {\n const innerMutating = useRef<boolean>(false)\n\n const [data, setData] = useState<TData>()\n const [isMutating, setIsMutating] = useState(false)\n\n const urlRef = useRef(url)\n const fetcherRef = useRef(fetcher)\n const configRef = useRef(mutationConfig)\n\n const trigger = useCallback(\n async (fetchData: TBody, opts: UseMutationConfig<TData> = {}) => {\n if (innerMutating.current) {\n return\n }\n\n innerMutating.current = true\n setIsMutating(true)\n\n const config = {\n ...configRef.current,\n ...opts,\n }\n\n const { onSuccess, onError } = config || {}\n\n try {\n const fetchResult = await fetcherRef.current(urlRef.current, {\n arg: fetchData,\n })\n setData(fetchResult)\n\n setIsMutating(false)\n innerMutating.current = false\n\n if (onSuccess) {\n onSuccess(fetchResult)\n }\n return fetchResult\n } catch (err: any) {\n setIsMutating(false)\n innerMutating.current = false\n\n if (onError) {\n onError(err)\n }\n }\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n []\n )\n\n return {\n isMutating,\n trigger,\n data,\n }\n}\n\nexport const useAlpcFetch = <TData>(\n options: FetchOptions,\n swrOptions?: UseAlpcFetchOptionsSwrOptions<TData, Error>\n) => {\n const [retry, setRetry] = useState(false)\n const { removeProfile, alpcBrand } = useCreditsContext()\n\n const { enable, ...otherSwrOptions } = swrOptions || {}\n\n const { locale = '', brand: headlessBrand } = useHeadlessContext()\n // \u4F18\u5148\u4F7F\u7528 creditsContext \u4E2D\u7684 alpcBrand\uFF0C\u5982\u679C\u6CA1\u6709\u5219\u4F7F\u7528 headlessConfig \u4E2D\u7684 brand\n const brand = alpcBrand || headlessBrand\n\n const { queryKey = [], body: fetchBody = {}, headers, ...fetchOptions } = options\n const fetchEnable = enable ?? true\n\n const [url, requestBody] = queryKey\n\n const context = useSWR<TData>(\n [url, requestBody],\n !fetchEnable\n ? null\n : ([requestUrl, data]: [string, Record<string, any>]) =>\n fetcher({\n url: requestUrl,\n locale,\n fetchOptions: {\n method: 'POST',\n headers: {\n 'current-language': locale,\n ...headers,\n },\n body: JSON.stringify({\n ...fetchBody,\n ...data,\n }),\n ...fetchOptions,\n },\n onReAuth: async () => {\n const result = await reAuth(locale, retry, brand)\n\n if (result) {\n setRetry(true)\n return true\n }\n\n return false\n },\n onUnAuth() {\n // \u5931\u8D25\u540E\u9000\u51FA\u767B\u5F55\n removeProfile()\n },\n }),\n {\n revalidateOnFocus: false,\n ...otherSwrOptions,\n }\n )\n\n return context\n}\n\nexport const useAlpcMutation = <TData, TBody>(options: MutationOptions, mutationOptions?: UseMutationConfig<TData>) => {\n const [retry, setRetry] = useState(false)\n const { removeProfile, alpcBrand } = useCreditsContext()\n\n const { locale = '', brand: headlessBrand } = useHeadlessContext()\n // \u4F18\u5148\u4F7F\u7528 creditsContext \u4E2D\u7684 alpcBrand\uFF0C\u5982\u679C\u6CA1\u6709\u5219\u4F7F\u7528 headlessConfig \u4E2D\u7684 brand\n const brand = alpcBrand || headlessBrand\n\n const { url, initData, headers, ...fetchOptions } = options\n\n const context = useMutation<TData, TBody>(\n url,\n (requestUrl, data: { arg: TBody }) =>\n fetcher({\n url: requestUrl,\n locale,\n fetchOptions: {\n method: 'POST',\n headers: {\n 'current-language': locale,\n ...headers,\n },\n ...fetchOptions,\n body: JSON.stringify({\n ...initData,\n ...data.arg,\n }),\n },\n onReAuth: async () => {\n const result = await reAuth(locale, retry, brand)\n\n if (result) {\n setRetry(true)\n return true\n }\n\n return false\n },\n onUnAuth() {\n // \u5931\u8D25\u540E\u9000\u51FA\u767B\u5F55\n removeProfile()\n },\n }),\n mutationOptions\n )\n\n return context\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["Cookies", "useCallback", "useRef", "useState", "useSWR", "useHeadlessContext", "getAlpcPath", "useCreditsContext", "reAuthPromise", "fetcher", "options", "response", "result", "reAuth", "locale", "retry", "brand", "reloginResponse", "reloginResponseData", "alpcEUCookie", "useMutation", "url", "mutationConfig", "innerMutating", "data", "setData", "isMutating", "setIsMutating", "urlRef", "fetcherRef", "configRef", "trigger", "fetchData", "opts", "config", "onSuccess", "onError", "fetchResult", "err", "useAlpcFetch", "swrOptions", "setRetry", "removeProfile", "alpcBrand", "enable", "otherSwrOptions", "headlessBrand", "queryKey", "fetchBody", "headers", "fetchOptions", "fetchEnable", "requestBody", "requestUrl", "useAlpcMutation", "mutationOptions", "initData"]
7
7
  }
@@ -0,0 +1,7 @@
1
+ import { ProductVariant } from '@anker-in/lib';
2
+ import { FunctionMemberPriceResult } from '../memberPriceTypes';
3
+ export declare const useFunctionMemberPrice: ({ variant }: {
4
+ variant?: ProductVariant;
5
+ }) => FunctionMemberPriceResult | (Partial<FunctionMemberPriceResult> & {
6
+ hasMemberPrice: false;
7
+ });
@@ -0,0 +1,2 @@
1
+ import{getFunctionMemberPrice as c}from"../utils/getFunctionMemberPrice";import{useMemo as i}from"react";import{useCreditsContext as m}from"../provider";import{useHeadlessContext as n}from"@anker-in/lib";const d=({variant:e})=>{const{memberPriceDiscount:r}=m(),{locale:t=""}=n();return i(()=>{const o=c({memberPriceDiscount:r,currencyCode:e?.price.currencyCode,variant:e,locale:t});return o||{hasMemberPrice:!1}},[t,r,e])};export{d as useFunctionMemberPrice};
2
+ //# sourceMappingURL=useFunctionMemberPrice.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../../../src/components/credits/context/hooks/useFunctionMemberPrice.ts"],
4
+ "sourcesContent": ["import { ProductVariant } from '@anker-in/lib'\nimport { FunctionMemberPriceResult } from '../memberPriceTypes'\nimport { getFunctionMemberPrice } from '../utils/getFunctionMemberPrice'\nimport { useMemo } from 'react'\nimport { useCreditsContext } from '../provider'\nimport { useHeadlessContext } from '@anker-in/lib'\n\n// \u8BA1\u7B97\u5355\u4EF6\u5546\u54C1\u7684\u4F1A\u5458\u4EF7\nexport const useFunctionMemberPrice = ({ variant }: { variant?: ProductVariant }) => {\n const { memberPriceDiscount } = useCreditsContext()\n const { locale = '' } = useHeadlessContext()\n\n const memberPrice:\n | FunctionMemberPriceResult\n | (Partial<FunctionMemberPriceResult> & {\n hasMemberPrice: false\n }) = useMemo(() => {\n const result = getFunctionMemberPrice({\n memberPriceDiscount: memberPriceDiscount,\n currencyCode: variant?.price.currencyCode,\n variant,\n locale,\n })\n\n if (result) {\n return result as FunctionMemberPriceResult\n }\n\n return { hasMemberPrice: false }\n }, [locale, memberPriceDiscount, variant])\n\n return memberPrice\n}\n"],
5
+ "mappings": "AAEA,OAAS,0BAAAA,MAA8B,kCACvC,OAAS,WAAAC,MAAe,QACxB,OAAS,qBAAAC,MAAyB,cAClC,OAAS,sBAAAC,MAA0B,gBAG5B,MAAMC,EAAyB,CAAC,CAAE,QAAAC,CAAQ,IAAoC,CACnF,KAAM,CAAE,oBAAAC,CAAoB,EAAIJ,EAAkB,EAC5C,CAAE,OAAAK,EAAS,EAAG,EAAIJ,EAAmB,EAqB3C,OAfSF,EAAQ,IAAM,CACrB,MAAMO,EAASR,EAAuB,CACpC,oBAAqBM,EACrB,aAAcD,GAAS,MAAM,aAC7B,QAAAA,EACA,OAAAE,CACF,CAAC,EAED,OAAIC,GAIG,CAAE,eAAgB,EAAM,CACjC,EAAG,CAACD,EAAQD,EAAqBD,CAAO,CAAC,CAG3C",
6
+ "names": ["getFunctionMemberPrice", "useMemo", "useCreditsContext", "useHeadlessContext", "useFunctionMemberPrice", "variant", "memberPriceDiscount", "locale", "result"]
7
+ }
@@ -1,2 +1,2 @@
1
- import{useCallback as L,useEffect as A,useState as m}from"react";import{ALPC_COUNTRY_MAP as M,AlpcConsumeType as _}from"../const";import{useAlpcMutation as w}from"./useAlpcFetch";import{useCreditsContext as P}from"../provider";import{useHeadlessContext as x}from"@anker-in/lib";function N({page:e,pageSize:s,consumeType:r}){const{isLoadingProfile:n,profile:t}=P(),{brand:g,locale:c,appName:f}=x(),C=!!t,[u,d]=m([]),[p,y]=m(0),[l,R]=m(0),{isMutating:o,trigger:a}=w({url:"/v1/credit/log/coupon",initData:{brand:g,country:M.get(c)||c,app_name:f}});A(()=>{n||!t||o||e!==l&&e&&a({consume_type:r||_.Coupon,page:e,page_size:s,user_id:t?.user_id},{onSuccess(i){R(e),y(i?.data?.total),d(u.concat(i?.data?.redeem_logs||[]))}})},[a,u,r,e,s,l,t,n,o]);const b=L(async()=>{n||!C||!t||o||await a({consume_type:r||_.Coupon,page:e,page_size:s,user_id:t?.user_id},{onSuccess(i){d(i?.data?.redeem_logs||[])}})},[r,o,n,e,s,t,a]);return{myRewards:u,isLoading:o,total:p,getMyRewards:b,canNext:p>u.length&&!o}}var E=N;export{E as default};
1
+ import{useCallback as M,useEffect as w,useState as c}from"react";import{ALPC_COUNTRY_MAP as P,AlpcConsumeType as _}from"../const";import{useAlpcMutation as x}from"./useAlpcFetch";import{useCreditsContext as N}from"../provider";import{useHeadlessContext as T}from"@anker-in/lib";function h({page:e,pageSize:s,consumeType:r}){const{isLoadingProfile:n,profile:t,alpcBrand:g}=N(),{brand:f,locale:d,appName:C}=T(),y=g||f,R=!!t,[a,m]=c([]),[p,b]=c(0),[l,L]=c(0),{isMutating:o,trigger:u}=x({url:"/v1/credit/log/coupon",initData:{brand:y,country:P.get(d)||d,app_name:C}});w(()=>{n||!t||o||e!==l&&e&&u({consume_type:r||_.Coupon,page:e,page_size:s,user_id:t?.user_id},{onSuccess(i){L(e),b(i?.data?.total),m(a.concat(i?.data?.redeem_logs||[]))}})},[u,a,r,e,s,l,t,n,o]);const A=M(async()=>{n||!R||!t||o||await u({consume_type:r||_.Coupon,page:e,page_size:s,user_id:t?.user_id},{onSuccess(i){m(i?.data?.redeem_logs||[])}})},[r,o,n,e,s,t,u]);return{myRewards:a,isLoading:o,total:p,getMyRewards:A,canNext:p>a.length&&!o}}var H=h;export{H as default};
2
2
  //# sourceMappingURL=useMyRewards.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/components/credits/context/hooks/useMyRewards.ts"],
4
- "sourcesContent": ["import { useCallback, useEffect, useState } from 'react'\n\nimport { ALPC_COUNTRY_MAP, AlpcConsumeType } from '../const'\nimport { useAlpcMutation } from './useAlpcFetch'\nimport type { RedeemLogResponse } from '../response'\nimport { useCreditsContext } from '../provider'\nimport { useHeadlessContext } from '@anker-in/lib'\n\nfunction useMyRewards({\n page,\n pageSize,\n consumeType,\n}: {\n page: number\n pageSize: number\n consumeType?: AlpcConsumeType\n}) {\n const { isLoadingProfile, profile } = useCreditsContext()\n const { brand, locale, appName } = useHeadlessContext()\n const isLogin = !!profile\n\n const [myRewards, setMyRewards] = useState<RedeemLogResponse[]>([])\n const [total, setTotal] = useState(0)\n\n const [currentPage, setCurrentPage] = useState(0)\n\n const { isMutating: isLoading, trigger } = useAlpcMutation<\n { data: { redeem_logs: RedeemLogResponse[]; total: number } },\n {\n page: number\n page_size: number\n consume_type: AlpcConsumeType\n user_id: string\n }\n >({\n url: `/v1/credit/log/coupon`,\n initData: {\n brand: brand,\n country: ALPC_COUNTRY_MAP.get(locale) || locale,\n app_name: appName,\n },\n })\n\n useEffect(() => {\n if (isLoadingProfile || !profile || isLoading) {\n return\n }\n\n if (page !== currentPage && page) {\n trigger(\n {\n consume_type: consumeType || AlpcConsumeType.Coupon,\n page,\n page_size: pageSize,\n user_id: profile?.user_id,\n },\n {\n onSuccess(responseData) {\n setCurrentPage(page)\n setTotal(responseData?.data?.total)\n setMyRewards(myRewards.concat(responseData?.data?.redeem_logs || []))\n },\n }\n )\n }\n }, [trigger, myRewards, consumeType, page, pageSize, currentPage, profile, isLoadingProfile, isLoading])\n\n const getMyRewards = useCallback(async () => {\n if (isLoadingProfile || !isLogin || !profile || isLoading) {\n return\n }\n await trigger(\n {\n consume_type: consumeType || AlpcConsumeType.Coupon,\n page,\n page_size: pageSize,\n user_id: profile?.user_id,\n },\n {\n // \u4EC5\u652F\u63011\u9875\u7684\n onSuccess(responseData) {\n setMyRewards(responseData?.data?.redeem_logs || [])\n },\n }\n )\n }, [consumeType, isLoading, isLoadingProfile, page, pageSize, profile, trigger])\n\n return {\n myRewards,\n isLoading,\n total,\n getMyRewards,\n canNext: total > myRewards.length && !isLoading,\n }\n}\n\nexport default useMyRewards\n"],
5
- "mappings": "AAAA,OAAS,eAAAA,EAAa,aAAAC,EAAW,YAAAC,MAAgB,QAEjD,OAAS,oBAAAC,EAAkB,mBAAAC,MAAuB,WAClD,OAAS,mBAAAC,MAAuB,iBAEhC,OAAS,qBAAAC,MAAyB,cAClC,OAAS,sBAAAC,MAA0B,gBAEnC,SAASC,EAAa,CACpB,KAAAC,EACA,SAAAC,EACA,YAAAC,CACF,EAIG,CACD,KAAM,CAAE,iBAAAC,EAAkB,QAAAC,CAAQ,EAAIP,EAAkB,EAClD,CAAE,MAAAQ,EAAO,OAAAC,EAAQ,QAAAC,CAAQ,EAAIT,EAAmB,EAChDU,EAAU,CAAC,CAACJ,EAEZ,CAACK,EAAWC,CAAY,EAAIjB,EAA8B,CAAC,CAAC,EAC5D,CAACkB,EAAOC,CAAQ,EAAInB,EAAS,CAAC,EAE9B,CAACoB,EAAaC,CAAc,EAAIrB,EAAS,CAAC,EAE1C,CAAE,WAAYsB,EAAW,QAAAC,CAAQ,EAAIpB,EAQzC,CACA,IAAK,wBACL,SAAU,CACR,MAAOS,EACP,QAASX,EAAiB,IAAIY,CAAM,GAAKA,EACzC,SAAUC,CACZ,CACF,CAAC,EAEDf,EAAU,IAAM,CACVW,GAAoB,CAACC,GAAWW,GAIhCf,IAASa,GAAeb,GAC1BgB,EACE,CACE,aAAcd,GAAeP,EAAgB,OAC7C,KAAAK,EACA,UAAWC,EACX,QAASG,GAAS,OACpB,EACA,CACE,UAAUa,EAAc,CACtBH,EAAed,CAAI,EACnBY,EAASK,GAAc,MAAM,KAAK,EAClCP,EAAaD,EAAU,OAAOQ,GAAc,MAAM,aAAe,CAAC,CAAC,CAAC,CACtE,CACF,CACF,CAEJ,EAAG,CAACD,EAASP,EAAWP,EAAaF,EAAMC,EAAUY,EAAaT,EAASD,EAAkBY,CAAS,CAAC,EAEvG,MAAMG,EAAe3B,EAAY,SAAY,CACvCY,GAAoB,CAACK,GAAW,CAACJ,GAAWW,GAGhD,MAAMC,EACJ,CACE,aAAcd,GAAeP,EAAgB,OAC7C,KAAAK,EACA,UAAWC,EACX,QAASG,GAAS,OACpB,EACA,CAEE,UAAUa,EAAc,CACtBP,EAAaO,GAAc,MAAM,aAAe,CAAC,CAAC,CACpD,CACF,CACF,CACF,EAAG,CAACf,EAAaa,EAAWZ,EAAkBH,EAAMC,EAAUG,EAASY,CAAO,CAAC,EAE/E,MAAO,CACL,UAAAP,EACA,UAAAM,EACA,MAAAJ,EACA,aAAAO,EACA,QAASP,EAAQF,EAAU,QAAU,CAACM,CACxC,CACF,CAEA,IAAOI,EAAQpB",
6
- "names": ["useCallback", "useEffect", "useState", "ALPC_COUNTRY_MAP", "AlpcConsumeType", "useAlpcMutation", "useCreditsContext", "useHeadlessContext", "useMyRewards", "page", "pageSize", "consumeType", "isLoadingProfile", "profile", "brand", "locale", "appName", "isLogin", "myRewards", "setMyRewards", "total", "setTotal", "currentPage", "setCurrentPage", "isLoading", "trigger", "responseData", "getMyRewards", "useMyRewards_default"]
4
+ "sourcesContent": ["import { useCallback, useEffect, useState } from 'react'\n\nimport { ALPC_COUNTRY_MAP, AlpcConsumeType } from '../const'\nimport { useAlpcMutation } from './useAlpcFetch'\nimport type { RedeemLogResponse } from '../response'\nimport { useCreditsContext } from '../provider'\nimport { useHeadlessContext } from '@anker-in/lib'\n\nfunction useMyRewards({\n page,\n pageSize,\n consumeType,\n}: {\n page: number\n pageSize: number\n consumeType?: AlpcConsumeType\n}) {\n const { isLoadingProfile, profile, alpcBrand } = useCreditsContext()\n const { brand: headlessBrand, locale, appName } = useHeadlessContext()\n const brand = alpcBrand || headlessBrand\n const isLogin = !!profile\n\n const [myRewards, setMyRewards] = useState<RedeemLogResponse[]>([])\n const [total, setTotal] = useState(0)\n\n const [currentPage, setCurrentPage] = useState(0)\n\n const { isMutating: isLoading, trigger } = useAlpcMutation<\n { data: { redeem_logs: RedeemLogResponse[]; total: number } },\n {\n page: number\n page_size: number\n consume_type: AlpcConsumeType\n user_id: string\n }\n >({\n url: `/v1/credit/log/coupon`,\n initData: {\n brand: brand,\n country: ALPC_COUNTRY_MAP.get(locale) || locale,\n app_name: appName,\n },\n })\n\n useEffect(() => {\n if (isLoadingProfile || !profile || isLoading) {\n return\n }\n\n if (page !== currentPage && page) {\n trigger(\n {\n consume_type: consumeType || AlpcConsumeType.Coupon,\n page,\n page_size: pageSize,\n user_id: profile?.user_id,\n },\n {\n onSuccess(responseData) {\n setCurrentPage(page)\n setTotal(responseData?.data?.total)\n setMyRewards(myRewards.concat(responseData?.data?.redeem_logs || []))\n },\n }\n )\n }\n }, [trigger, myRewards, consumeType, page, pageSize, currentPage, profile, isLoadingProfile, isLoading])\n\n const getMyRewards = useCallback(async () => {\n if (isLoadingProfile || !isLogin || !profile || isLoading) {\n return\n }\n await trigger(\n {\n consume_type: consumeType || AlpcConsumeType.Coupon,\n page,\n page_size: pageSize,\n user_id: profile?.user_id,\n },\n {\n // \u4EC5\u652F\u63011\u9875\u7684\n onSuccess(responseData) {\n setMyRewards(responseData?.data?.redeem_logs || [])\n },\n }\n )\n }, [consumeType, isLoading, isLoadingProfile, page, pageSize, profile, trigger])\n\n return {\n myRewards,\n isLoading,\n total,\n getMyRewards,\n canNext: total > myRewards.length && !isLoading,\n }\n}\n\nexport default useMyRewards\n"],
5
+ "mappings": "AAAA,OAAS,eAAAA,EAAa,aAAAC,EAAW,YAAAC,MAAgB,QAEjD,OAAS,oBAAAC,EAAkB,mBAAAC,MAAuB,WAClD,OAAS,mBAAAC,MAAuB,iBAEhC,OAAS,qBAAAC,MAAyB,cAClC,OAAS,sBAAAC,MAA0B,gBAEnC,SAASC,EAAa,CACpB,KAAAC,EACA,SAAAC,EACA,YAAAC,CACF,EAIG,CACD,KAAM,CAAE,iBAAAC,EAAkB,QAAAC,EAAS,UAAAC,CAAU,EAAIR,EAAkB,EAC7D,CAAE,MAAOS,EAAe,OAAAC,EAAQ,QAAAC,CAAQ,EAAIV,EAAmB,EAC/DW,EAAQJ,GAAaC,EACrBI,EAAU,CAAC,CAACN,EAEZ,CAACO,EAAWC,CAAY,EAAInB,EAA8B,CAAC,CAAC,EAC5D,CAACoB,EAAOC,CAAQ,EAAIrB,EAAS,CAAC,EAE9B,CAACsB,EAAaC,CAAc,EAAIvB,EAAS,CAAC,EAE1C,CAAE,WAAYwB,EAAW,QAAAC,CAAQ,EAAItB,EAQzC,CACA,IAAK,wBACL,SAAU,CACR,MAAOa,EACP,QAASf,EAAiB,IAAIa,CAAM,GAAKA,EACzC,SAAUC,CACZ,CACF,CAAC,EAEDhB,EAAU,IAAM,CACVW,GAAoB,CAACC,GAAWa,GAIhCjB,IAASe,GAAef,GAC1BkB,EACE,CACE,aAAchB,GAAeP,EAAgB,OAC7C,KAAAK,EACA,UAAWC,EACX,QAASG,GAAS,OACpB,EACA,CACE,UAAUe,EAAc,CACtBH,EAAehB,CAAI,EACnBc,EAASK,GAAc,MAAM,KAAK,EAClCP,EAAaD,EAAU,OAAOQ,GAAc,MAAM,aAAe,CAAC,CAAC,CAAC,CACtE,CACF,CACF,CAEJ,EAAG,CAACD,EAASP,EAAWT,EAAaF,EAAMC,EAAUc,EAAaX,EAASD,EAAkBc,CAAS,CAAC,EAEvG,MAAMG,EAAe7B,EAAY,SAAY,CACvCY,GAAoB,CAACO,GAAW,CAACN,GAAWa,GAGhD,MAAMC,EACJ,CACE,aAAchB,GAAeP,EAAgB,OAC7C,KAAAK,EACA,UAAWC,EACX,QAASG,GAAS,OACpB,EACA,CAEE,UAAUe,EAAc,CACtBP,EAAaO,GAAc,MAAM,aAAe,CAAC,CAAC,CACpD,CACF,CACF,CACF,EAAG,CAACjB,EAAae,EAAWd,EAAkBH,EAAMC,EAAUG,EAASc,CAAO,CAAC,EAE/E,MAAO,CACL,UAAAP,EACA,UAAAM,EACA,MAAAJ,EACA,aAAAO,EACA,QAASP,EAAQF,EAAU,QAAU,CAACM,CACxC,CACF,CAEA,IAAOI,EAAQtB",
6
+ "names": ["useCallback", "useEffect", "useState", "ALPC_COUNTRY_MAP", "AlpcConsumeType", "useAlpcMutation", "useCreditsContext", "useHeadlessContext", "useMyRewards", "page", "pageSize", "consumeType", "isLoadingProfile", "profile", "alpcBrand", "headlessBrand", "locale", "appName", "brand", "isLogin", "myRewards", "setMyRewards", "total", "setTotal", "currentPage", "setCurrentPage", "isLoading", "trigger", "responseData", "getMyRewards", "useMyRewards_default"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import u from"swr/mutation";import{useRedeemCoupon as a}from"./useRedeemCoupon";import{useCreditsContext as d}from"../provider";import{useBuyNow as s}from"@anker-in/lib";const _=(m,e)=>{const{trigger:t}=a(),{profile:n}=d(),{trigger:i}=s({},{throwOnError:!0});return u("redeemAndBuy",async(c,{arg:o})=>{const r=await t({user_id:n?.user_id,rule_id:o.redeemId});if(console.log("res",r),r&&r?.data?.coupon_code)i({discountCodes:[r.data.coupon_code],lineItems:[{variant:o.productVariant,quantity:o.quantity||1}]});else throw new Error(`Redeem failed: ${r?.msg}`)},e)};export{_ as useRedeemAndBuy};
1
+ import u from"swr/mutation";import{useRedeemCoupon as a}from"./useRedeemCoupon";import{useCreditsContext as d}from"../provider";import{useBuyNow as s}from"@anker-in/lib";const w=(m,t)=>{const{trigger:o}=a(),{profile:n}=d(),{trigger:i}=s({},{throwOnError:!0});return u("redeemAndBuy",async(c,{arg:e})=>{const r=await o({user_id:n?.user_id,rule_id:e.redeemId});if(r&&r?.data?.coupon_code)i({discountCodes:[r.data.coupon_code],lineItems:[{variant:e.productVariant,quantity:e.quantity||1}]});else throw new Error(`Redeem failed: ${r?.msg}`)},t)};export{w as useRedeemAndBuy};
2
2
  //# sourceMappingURL=useRedeemAndBuy.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/components/credits/context/hooks/useRedeemAndBuy.ts"],
4
- "sourcesContent": ["import useSWRMutation, { SWRMutationConfiguration } from 'swr/mutation'\nimport { useRedeemCoupon } from './useRedeemCoupon'\nimport type { ProductVariant } from '@anker-in/lib'\nimport { useCreditsContext } from '../provider'\nimport { useBuyNow } from '@anker-in/lib'\nimport { AlpcErrorCode } from '../const'\n\nexport const useRedeemAndBuy = (\n _: any,\n swrOptions?: SWRMutationConfiguration<undefined, Error, string, any> & {\n throwOnError?: boolean\n }\n) => {\n const { trigger } = useRedeemCoupon()\n const { profile } = useCreditsContext()\n\n const { trigger: buyNow } = useBuyNow(\n {},\n {\n throwOnError: true,\n }\n )\n\n return useSWRMutation(\n 'redeemAndBuy',\n async (\n _,\n {\n arg,\n }: {\n arg: {\n productVariant: ProductVariant\n quantity?: number\n redeemId: number\n }\n }\n ) => {\n const res = await trigger({\n user_id: profile?.user_id,\n rule_id: arg.redeemId,\n })\n console.log('res', res)\n if (res && res?.data?.coupon_code) {\n buyNow({\n discountCodes: [res.data.coupon_code],\n lineItems: [\n {\n variant: arg.productVariant,\n quantity: arg.quantity || 1,\n },\n ],\n })\n } else {\n throw new Error(`Redeem failed: ${res?.msg}`)\n }\n },\n swrOptions\n )\n}\n"],
5
- "mappings": "AAAA,OAAOA,MAAkD,eACzD,OAAS,mBAAAC,MAAuB,oBAEhC,OAAS,qBAAAC,MAAyB,cAClC,OAAS,aAAAC,MAAiB,gBAGnB,MAAMC,EAAkB,CAC7BC,EACAC,IAGG,CACH,KAAM,CAAE,QAAAC,CAAQ,EAAIN,EAAgB,EAC9B,CAAE,QAAAO,CAAQ,EAAIN,EAAkB,EAEhC,CAAE,QAASO,CAAO,EAAIN,EAC1B,CAAC,EACD,CACE,aAAc,EAChB,CACF,EAEA,OAAOH,EACL,eACA,MACEK,EACA,CACE,IAAAK,CACF,IAOG,CACH,MAAMC,EAAM,MAAMJ,EAAQ,CACxB,QAASC,GAAS,QAClB,QAASE,EAAI,QACf,CAAC,EAED,GADA,QAAQ,IAAI,MAAOC,CAAG,EAClBA,GAAOA,GAAK,MAAM,YACpBF,EAAO,CACL,cAAe,CAACE,EAAI,KAAK,WAAW,EACpC,UAAW,CACT,CACE,QAASD,EAAI,eACb,SAAUA,EAAI,UAAY,CAC5B,CACF,CACF,CAAC,MAED,OAAM,IAAI,MAAM,kBAAkBC,GAAK,GAAG,EAAE,CAEhD,EACAL,CACF,CACF",
4
+ "sourcesContent": ["import useSWRMutation, { SWRMutationConfiguration } from 'swr/mutation'\nimport { useRedeemCoupon } from './useRedeemCoupon'\nimport type { ProductVariant } from '@anker-in/lib'\nimport { useCreditsContext } from '../provider'\nimport { useBuyNow } from '@anker-in/lib'\n\nexport const useRedeemAndBuy = (\n _: any,\n swrOptions?: SWRMutationConfiguration<undefined, Error, string, any> & {\n throwOnError?: boolean\n }\n) => {\n const { trigger } = useRedeemCoupon()\n const { profile } = useCreditsContext()\n\n const { trigger: buyNow } = useBuyNow(\n {},\n {\n throwOnError: true,\n }\n )\n\n return useSWRMutation(\n 'redeemAndBuy',\n async (\n _,\n {\n arg,\n }: {\n arg: {\n productVariant: ProductVariant\n quantity?: number\n redeemId: number\n }\n }\n ) => {\n const res = await trigger({\n user_id: profile?.user_id,\n rule_id: arg.redeemId,\n })\n if (res && res?.data?.coupon_code) {\n buyNow({\n discountCodes: [res.data.coupon_code],\n lineItems: [\n {\n variant: arg.productVariant,\n quantity: arg.quantity || 1,\n },\n ],\n })\n } else {\n throw new Error(`Redeem failed: ${res?.msg}`)\n }\n },\n swrOptions\n )\n}\n"],
5
+ "mappings": "AAAA,OAAOA,MAAkD,eACzD,OAAS,mBAAAC,MAAuB,oBAEhC,OAAS,qBAAAC,MAAyB,cAClC,OAAS,aAAAC,MAAiB,gBAEnB,MAAMC,EAAkB,CAC7BC,EACAC,IAGG,CACH,KAAM,CAAE,QAAAC,CAAQ,EAAIN,EAAgB,EAC9B,CAAE,QAAAO,CAAQ,EAAIN,EAAkB,EAEhC,CAAE,QAASO,CAAO,EAAIN,EAC1B,CAAC,EACD,CACE,aAAc,EAChB,CACF,EAEA,OAAOH,EACL,eACA,MACEK,EACA,CACE,IAAAK,CACF,IAOG,CACH,MAAMC,EAAM,MAAMJ,EAAQ,CACxB,QAASC,GAAS,QAClB,QAASE,EAAI,QACf,CAAC,EACD,GAAIC,GAAOA,GAAK,MAAM,YACpBF,EAAO,CACL,cAAe,CAACE,EAAI,KAAK,WAAW,EACpC,UAAW,CACT,CACE,QAASD,EAAI,eACb,SAAUA,EAAI,UAAY,CAC5B,CACF,CACF,CAAC,MAED,OAAM,IAAI,MAAM,kBAAkBC,GAAK,GAAG,EAAE,CAEhD,EACAL,CACF,CACF",
6
6
  "names": ["useSWRMutation", "useRedeemCoupon", "useCreditsContext", "useBuyNow", "useRedeemAndBuy", "_", "swrOptions", "trigger", "profile", "buyNow", "arg", "res"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{ALPC_COUNTRY_MAP as s}from"../const";import{useAlpcMutation as r}from"./useAlpcFetch";import{useHeadlessContext as p}from"@anker-in/lib";const a=(o={})=>{const{locale:e,appName:n,brand:t}=p();return r({url:"/v1/credit/redeem/coupon",initData:{brand:t,country:s.get(e)||e,app_name:n}},o)};export{a as useRedeemCoupon};
1
+ import{ALPC_COUNTRY_MAP as r}from"../const";import{useAlpcMutation as p}from"./useAlpcFetch";import{useHeadlessContext as a}from"@anker-in/lib";import{useCreditsContext as u}from"../provider";const l=(o={})=>{const{alpcBrand:n}=u(),{locale:e,appName:t,brand:s}=a();return p({url:"/v1/credit/redeem/coupon",initData:{brand:n||s,country:r.get(e)||e,app_name:t}},o)};export{l as useRedeemCoupon};
2
2
  //# sourceMappingURL=useRedeemCoupon.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/components/credits/context/hooks/useRedeemCoupon.ts"],
4
- "sourcesContent": ["import { ALPC_COUNTRY_MAP } from '../const'\nimport { useAlpcMutation, type UseMutationConfig } from './useAlpcFetch'\nimport { useHeadlessContext } from '@anker-in/lib'\n\ntype RedeemCouponResponse = {\n data: {\n success: boolean\n coupon_code: string\n }\n msg: string // \u62A5\u9519\u4FE1\u606F\n code: number // \u62A5\u9519\u7801\n}\n\nexport const useRedeemCoupon = (mutationOptions: UseMutationConfig<RedeemCouponResponse> = {}) => {\n const { locale, appName, brand } = useHeadlessContext()\n\n return useAlpcMutation<\n RedeemCouponResponse,\n {\n user_id?: string\n rule_id: number\n }\n >(\n {\n url: `/v1/credit/redeem/coupon`,\n initData: {\n brand,\n country: ALPC_COUNTRY_MAP.get(locale) || locale,\n app_name: appName,\n },\n },\n mutationOptions\n )\n}\n"],
5
- "mappings": "AAAA,OAAS,oBAAAA,MAAwB,WACjC,OAAS,mBAAAC,MAA+C,iBACxD,OAAS,sBAAAC,MAA0B,gBAW5B,MAAMC,EAAkB,CAACC,EAA2D,CAAC,IAAM,CAChG,KAAM,CAAE,OAAAC,EAAQ,QAAAC,EAAS,MAAAC,CAAM,EAAIL,EAAmB,EAEtD,OAAOD,EAOL,CACE,IAAK,2BACL,SAAU,CACR,MAAAM,EACA,QAASP,EAAiB,IAAIK,CAAM,GAAKA,EACzC,SAAUC,CACZ,CACF,EACAF,CACF,CACF",
6
- "names": ["ALPC_COUNTRY_MAP", "useAlpcMutation", "useHeadlessContext", "useRedeemCoupon", "mutationOptions", "locale", "appName", "brand"]
4
+ "sourcesContent": ["import { ALPC_COUNTRY_MAP } from '../const'\nimport { useAlpcMutation, type UseMutationConfig } from './useAlpcFetch'\nimport { useHeadlessContext } from '@anker-in/lib'\nimport { useCreditsContext } from '../provider'\n\ntype RedeemCouponResponse = {\n data: {\n success: boolean\n coupon_code: string\n }\n msg: string // \u62A5\u9519\u4FE1\u606F\n code: number // \u62A5\u9519\u7801\n}\n\nexport const useRedeemCoupon = (mutationOptions: UseMutationConfig<RedeemCouponResponse> = {}) => {\n const { alpcBrand } = useCreditsContext()\n const { locale, appName, brand: headlessBrand } = useHeadlessContext()\n const brand = alpcBrand || headlessBrand\n\n return useAlpcMutation<\n RedeemCouponResponse,\n {\n user_id?: string\n rule_id: number\n }\n >(\n {\n url: `/v1/credit/redeem/coupon`,\n initData: {\n brand,\n country: ALPC_COUNTRY_MAP.get(locale) || locale,\n app_name: appName,\n },\n },\n mutationOptions\n )\n}\n"],
5
+ "mappings": "AAAA,OAAS,oBAAAA,MAAwB,WACjC,OAAS,mBAAAC,MAA+C,iBACxD,OAAS,sBAAAC,MAA0B,gBACnC,OAAS,qBAAAC,MAAyB,cAW3B,MAAMC,EAAkB,CAACC,EAA2D,CAAC,IAAM,CAChG,KAAM,CAAE,UAAAC,CAAU,EAAIH,EAAkB,EAClC,CAAE,OAAAI,EAAQ,QAAAC,EAAS,MAAOC,CAAc,EAAIP,EAAmB,EAGrE,OAAOD,EAOL,CACE,IAAK,2BACL,SAAU,CACR,MAZQK,GAAaG,EAarB,QAAST,EAAiB,IAAIO,CAAM,GAAKA,EACzC,SAAUC,CACZ,CACF,EACAH,CACF,CACF",
6
+ "names": ["ALPC_COUNTRY_MAP", "useAlpcMutation", "useHeadlessContext", "useCreditsContext", "useRedeemCoupon", "mutationOptions", "alpcBrand", "locale", "appName", "headlessBrand"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{ALPC_COUNTRY_MAP as s}from"../const";import{useAlpcMutation as a}from"./useAlpcFetch";import{useHeadlessContext as d}from"@anker-in/lib";const p=(o={})=>{const{storeDomain:t,locale:e,appName:n,brand:r}=d();return a({url:"/v1/credit/exchange/goods",initData:{quantity:1,brand:r,country:(s.get(e||"")||e)?.toUpperCase(),domain:t,app_name:n}},o)};export{p as useRedeemProduct};
1
+ import{ALPC_COUNTRY_MAP as a}from"../const";import{useAlpcMutation as d}from"./useAlpcFetch";import{useHeadlessContext as u}from"@anker-in/lib";import{useCreditsContext as i}from"../provider";const R=(o={})=>{const{alpcBrand:t}=i(),{storeDomain:n,locale:e,appName:r,brand:s}=u();return d({url:"/v1/credit/exchange/goods",initData:{quantity:1,brand:t||s,country:(a.get(e||"")||e)?.toUpperCase(),domain:n,app_name:r}},o)};export{R as useRedeemProduct};
2
2
  //# sourceMappingURL=useRedeemProduct.js.map