@anker-in/campaign-ui 0.3.4 → 0.4.0-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 (363) hide show
  1. package/dist/cjs/components/LiveChatWidget/LiveChatWidget.js +1 -1
  2. package/dist/cjs/components/LiveChatWidget/LiveChatWidget.js.map +3 -3
  3. package/dist/cjs/components/LiveChatWidget/components/MessageContent/PromotionList.js.map +2 -2
  4. package/dist/cjs/components/LiveChatWidget/components/MessageList.js +3 -3
  5. package/dist/cjs/components/LiveChatWidget/components/MessageList.js.map +3 -3
  6. package/dist/cjs/components/LiveChatWidget/hooks/useChatState.d.ts +2 -1
  7. package/dist/cjs/components/LiveChatWidget/hooks/useChatState.js +1 -1
  8. package/dist/cjs/components/LiveChatWidget/hooks/useChatState.js.map +2 -2
  9. package/dist/cjs/components/LiveChatWidget/types.d.ts +2 -1
  10. package/dist/cjs/components/LiveChatWidget/types.js.map +1 -1
  11. package/dist/cjs/components/credits/context/const.d.ts +10 -2
  12. package/dist/cjs/components/credits/context/const.js +1 -1
  13. package/dist/cjs/components/credits/context/const.js.map +2 -2
  14. package/dist/cjs/components/credits/context/hooks/useFunctionMemberPrice.d.ts +7 -0
  15. package/dist/cjs/components/credits/context/hooks/useFunctionMemberPrice.js +2 -0
  16. package/dist/cjs/components/credits/context/hooks/useFunctionMemberPrice.js.map +7 -0
  17. package/dist/cjs/components/credits/context/hooks/useMyRewards.js +1 -1
  18. package/dist/cjs/components/credits/context/hooks/useMyRewards.js.map +3 -3
  19. package/dist/cjs/components/credits/context/hooks/useRedeemGoGift.d.ts +17 -0
  20. package/dist/cjs/components/credits/context/hooks/useRedeemGoGift.js +2 -0
  21. package/dist/cjs/components/credits/context/hooks/useRedeemGoGift.js.map +7 -0
  22. package/dist/cjs/components/credits/context/hooks/useRedeemableList.d.ts +7 -2
  23. package/dist/cjs/components/credits/context/hooks/useRedeemableList.js +1 -1
  24. package/dist/cjs/components/credits/context/hooks/useRedeemableList.js.map +3 -3
  25. package/dist/cjs/components/credits/context/provider.d.ts +5 -1
  26. package/dist/cjs/components/credits/context/provider.js +1 -1
  27. package/dist/cjs/components/credits/context/provider.js.map +3 -3
  28. package/dist/cjs/components/credits/context/response.d.ts +1 -0
  29. package/dist/cjs/components/credits/context/response.js.map +1 -1
  30. package/dist/cjs/components/credits/context/utils/atobID.d.ts +1 -0
  31. package/dist/cjs/components/credits/context/utils/atobID.js +2 -0
  32. package/dist/cjs/components/credits/context/utils/atobID.js.map +7 -0
  33. package/dist/cjs/components/credits/context/utils/functionDiscountCalculate.d.ts +5 -0
  34. package/dist/cjs/components/credits/context/utils/functionDiscountCalculate.js +2 -0
  35. package/dist/cjs/components/credits/context/utils/functionDiscountCalculate.js.map +7 -0
  36. package/dist/cjs/components/credits/context/utils/getFunctionMemberPrice.d.ts +8 -0
  37. package/dist/cjs/components/credits/context/utils/getFunctionMemberPrice.js +2 -0
  38. package/dist/cjs/components/credits/context/utils/getFunctionMemberPrice.js.map +7 -0
  39. package/dist/cjs/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.d.ts +9 -0
  40. package/dist/cjs/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.js +2 -0
  41. package/dist/cjs/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.js.map +7 -0
  42. package/dist/cjs/components/credits/context/utils/variantGetCoupon.d.ts +6 -0
  43. package/dist/cjs/components/credits/context/utils/variantGetCoupon.js +2 -0
  44. package/dist/cjs/components/credits/context/utils/variantGetCoupon.js.map +7 -0
  45. package/dist/cjs/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js +1 -1
  46. package/dist/cjs/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js.map +2 -2
  47. package/dist/cjs/components/credits/creditsBanner/index.js +2 -2
  48. package/dist/cjs/components/credits/creditsBanner/index.js.map +2 -2
  49. package/dist/cjs/components/credits/creditsCash/CreditsCash.js +1 -1
  50. package/dist/cjs/components/credits/creditsCash/CreditsCash.js.map +2 -2
  51. package/dist/cjs/components/credits/creditsGoGift/CreditsGoGift.d.ts +5 -0
  52. package/dist/cjs/components/credits/creditsGoGift/CreditsGoGift.js +2 -0
  53. package/dist/cjs/components/credits/creditsGoGift/CreditsGoGift.js.map +7 -0
  54. package/dist/cjs/components/credits/creditsGoGift/index.d.ts +2 -0
  55. package/dist/cjs/components/credits/creditsGoGift/index.js +2 -0
  56. package/dist/cjs/components/credits/creditsGoGift/index.js.map +7 -0
  57. package/dist/cjs/components/credits/creditsGoGift/type.d.ts +22 -0
  58. package/dist/cjs/components/credits/creditsGoGift/type.js +2 -0
  59. package/dist/cjs/components/credits/creditsGoGift/type.js.map +7 -0
  60. package/dist/cjs/components/credits/creditsGofit/CreditsGofit.d.ts +5 -0
  61. package/dist/cjs/components/credits/creditsGofit/CreditsGofit.js +2 -0
  62. package/dist/cjs/components/credits/creditsGofit/CreditsGofit.js.map +7 -0
  63. package/dist/cjs/components/credits/creditsGofit/index.d.ts +2 -0
  64. package/dist/cjs/components/credits/creditsGofit/index.js +2 -0
  65. package/dist/cjs/components/credits/creditsGofit/index.js.map +7 -0
  66. package/dist/cjs/components/credits/creditsGofit/type.d.ts +22 -0
  67. package/dist/cjs/components/credits/creditsGofit/type.js +2 -0
  68. package/dist/cjs/components/credits/creditsGofit/type.js.map +7 -0
  69. package/dist/cjs/components/credits/creditsInfoCard/index.js +1 -1
  70. package/dist/cjs/components/credits/creditsInfoCard/index.js.map +3 -3
  71. package/dist/cjs/components/credits/creditsMemberPrice/CreditsMemberPrice.js +1 -1
  72. package/dist/cjs/components/credits/creditsMemberPrice/CreditsMemberPrice.js.map +2 -2
  73. package/dist/cjs/components/credits/creditsRedeemList/CreditsRedeemList.js +1 -1
  74. package/dist/cjs/components/credits/creditsRedeemList/CreditsRedeemList.js.map +3 -3
  75. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.d.ts +10 -0
  76. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.js +2 -0
  77. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.js.map +7 -0
  78. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.d.ts +10 -0
  79. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.js +2 -0
  80. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.js.map +7 -0
  81. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal.d.ts +4 -5
  82. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal.js +1 -1
  83. package/dist/cjs/components/credits/creditsRedeemList/RedeemCouponModal.js.map +3 -3
  84. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Address.d.ts +2 -3
  85. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Address.js +1 -1
  86. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Address.js.map +2 -2
  87. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Init.d.ts +2 -3
  88. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Init.js +1 -1
  89. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Init.js.map +2 -2
  90. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.d.ts +1 -3
  91. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.js +1 -1
  92. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.js.map +3 -3
  93. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.d.ts +3 -4
  94. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js +1 -1
  95. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js.map +2 -2
  96. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Success.d.ts +2 -3
  97. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Success.js +1 -1
  98. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/Success.js.map +2 -2
  99. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/index.d.ts +4 -5
  100. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/index.js +1 -1
  101. package/dist/cjs/components/credits/creditsRedeemList/RedeemProductModal/index.js.map +3 -3
  102. package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.d.ts +10 -0
  103. package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.js +2 -0
  104. package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.js.map +7 -0
  105. package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.d.ts +9 -0
  106. package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.js +2 -0
  107. package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.js.map +7 -0
  108. package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal.d.ts +8 -0
  109. package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal.js +2 -0
  110. package/dist/cjs/components/credits/creditsRedeemList/RedeemVirtualProductModal.js.map +7 -0
  111. package/dist/cjs/components/credits/creditsRedeemList/RedeemableItem.js +1 -1
  112. package/dist/cjs/components/credits/creditsRedeemList/RedeemableItem.js.map +2 -2
  113. package/dist/cjs/components/credits/creditsRedeemList/type.d.ts +11 -0
  114. package/dist/cjs/components/credits/creditsRedeemList/type.js +1 -1
  115. package/dist/cjs/components/credits/creditsRedeemList/type.js.map +1 -1
  116. package/dist/cjs/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js +1 -1
  117. package/dist/cjs/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js.map +2 -2
  118. package/dist/cjs/components/credits/creditsWaysToGetCredits/type.d.ts +2 -2
  119. package/dist/cjs/components/credits/creditsWaysToGetCredits/type.js.map +1 -1
  120. package/dist/cjs/components/credits/index.d.ts +2 -1
  121. package/dist/cjs/components/credits/index.js +1 -1
  122. package/dist/cjs/components/credits/index.js.map +3 -3
  123. package/dist/cjs/components/credits/modal/MyRewardsModal.d.ts +16 -0
  124. package/dist/cjs/components/credits/modal/MyRewardsModal.js +1 -1
  125. package/dist/cjs/components/credits/modal/MyRewardsModal.js.map +3 -3
  126. package/dist/cjs/components/credits/modal/RewardsModal.d.ts +64 -0
  127. package/dist/cjs/components/credits/modal/RewardsModal.js +2 -0
  128. package/dist/cjs/components/credits/modal/RewardsModal.js.map +7 -0
  129. package/dist/cjs/components/credits/modal/activitiesModal.d.ts +1 -1
  130. package/dist/cjs/components/credits/modal/activitiesModal.js +2 -2
  131. package/dist/cjs/components/credits/modal/activitiesModal.js.map +3 -3
  132. package/dist/cjs/components/credits/modal/creditsUploadReceiptModal.js +2 -2
  133. package/dist/cjs/components/credits/modal/creditsUploadReceiptModal.js.map +3 -3
  134. package/dist/cjs/components/credits/modal/loadingDots.js +1 -1
  135. package/dist/cjs/components/credits/modal/loadingDots.js.map +2 -2
  136. package/dist/cjs/components/credits/modal/modalContainer.js +2 -2
  137. package/dist/cjs/components/credits/modal/modalContainer.js.map +4 -4
  138. package/dist/cjs/components/credits/modal/rulesModal.d.ts +1 -1
  139. package/dist/cjs/components/credits/modal/rulesModal.js +2 -2
  140. package/dist/cjs/components/credits/modal/rulesModal.js.map +3 -3
  141. package/dist/cjs/components/credits/modal/subscribeModal.d.ts +1 -1
  142. package/dist/cjs/components/credits/modal/subscribeModal.js +2 -2
  143. package/dist/cjs/components/credits/modal/subscribeModal.js.map +3 -3
  144. package/dist/cjs/components/credits/modal/tip.js +1 -1
  145. package/dist/cjs/components/credits/modal/tip.js.map +2 -2
  146. package/dist/cjs/components/credits/type.d.ts +67 -5
  147. package/dist/cjs/components/credits/type.js +1 -1
  148. package/dist/cjs/components/credits/type.js.map +1 -1
  149. package/dist/cjs/stories/LiveChatWidget.stories.js +2 -9
  150. package/dist/cjs/stories/LiveChatWidget.stories.js.map +2 -2
  151. package/dist/cjs/templates/Credits.d.ts +1 -87
  152. package/dist/cjs/templates/Credits.js +1 -1
  153. package/dist/cjs/templates/Credits.js.map +3 -3
  154. package/dist/cjs/templates/Credits.types.d.ts +96 -0
  155. package/dist/cjs/templates/Credits.types.js +2 -0
  156. package/dist/cjs/templates/Credits.types.js.map +7 -0
  157. package/dist/esm/components/LiveChatWidget/LiveChatWidget.js +1 -1
  158. package/dist/esm/components/LiveChatWidget/LiveChatWidget.js.map +3 -3
  159. package/dist/esm/components/LiveChatWidget/components/MessageContent/PromotionList.js.map +2 -2
  160. package/dist/esm/components/LiveChatWidget/components/MessageList.js +3 -3
  161. package/dist/esm/components/LiveChatWidget/components/MessageList.js.map +3 -3
  162. package/dist/esm/components/LiveChatWidget/hooks/useChatState.d.ts +2 -1
  163. package/dist/esm/components/LiveChatWidget/hooks/useChatState.js +1 -1
  164. package/dist/esm/components/LiveChatWidget/hooks/useChatState.js.map +2 -2
  165. package/dist/esm/components/LiveChatWidget/types.d.ts +2 -1
  166. package/dist/esm/components/credits/context/const.d.ts +10 -2
  167. package/dist/esm/components/credits/context/const.js +1 -1
  168. package/dist/esm/components/credits/context/const.js.map +2 -2
  169. package/dist/esm/components/credits/context/hooks/useFunctionMemberPrice.d.ts +7 -0
  170. package/dist/esm/components/credits/context/hooks/useFunctionMemberPrice.js +2 -0
  171. package/dist/esm/components/credits/context/hooks/useFunctionMemberPrice.js.map +7 -0
  172. package/dist/esm/components/credits/context/hooks/useMyRewards.js +1 -1
  173. package/dist/esm/components/credits/context/hooks/useMyRewards.js.map +3 -3
  174. package/dist/esm/components/credits/context/hooks/useRedeemGoGift.d.ts +17 -0
  175. package/dist/esm/components/credits/context/hooks/useRedeemGoGift.js +2 -0
  176. package/dist/esm/components/credits/context/hooks/useRedeemGoGift.js.map +7 -0
  177. package/dist/esm/components/credits/context/hooks/useRedeemableList.d.ts +7 -2
  178. package/dist/esm/components/credits/context/hooks/useRedeemableList.js +1 -1
  179. package/dist/esm/components/credits/context/hooks/useRedeemableList.js.map +3 -3
  180. package/dist/esm/components/credits/context/provider.d.ts +5 -1
  181. package/dist/esm/components/credits/context/provider.js +1 -1
  182. package/dist/esm/components/credits/context/provider.js.map +3 -3
  183. package/dist/esm/components/credits/context/response.d.ts +1 -0
  184. package/dist/esm/components/credits/context/utils/atobID.d.ts +1 -0
  185. package/dist/esm/components/credits/context/utils/atobID.js +2 -0
  186. package/dist/esm/components/credits/context/utils/atobID.js.map +7 -0
  187. package/dist/esm/components/credits/context/utils/functionDiscountCalculate.d.ts +5 -0
  188. package/dist/esm/components/credits/context/utils/functionDiscountCalculate.js +2 -0
  189. package/dist/esm/components/credits/context/utils/functionDiscountCalculate.js.map +7 -0
  190. package/dist/esm/components/credits/context/utils/getFunctionMemberPrice.d.ts +8 -0
  191. package/dist/esm/components/credits/context/utils/getFunctionMemberPrice.js +2 -0
  192. package/dist/esm/components/credits/context/utils/getFunctionMemberPrice.js.map +7 -0
  193. package/dist/esm/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.d.ts +9 -0
  194. package/dist/esm/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.js +2 -0
  195. package/dist/esm/components/credits/context/utils/getFunctionMemberPriceDiscountConfig.js.map +7 -0
  196. package/dist/esm/components/credits/context/utils/variantGetCoupon.d.ts +6 -0
  197. package/dist/esm/components/credits/context/utils/variantGetCoupon.js +2 -0
  198. package/dist/esm/components/credits/context/utils/variantGetCoupon.js.map +7 -0
  199. package/dist/esm/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js +1 -1
  200. package/dist/esm/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.js.map +1 -1
  201. package/dist/esm/components/credits/creditsBanner/index.js +2 -2
  202. package/dist/esm/components/credits/creditsBanner/index.js.map +2 -2
  203. package/dist/esm/components/credits/creditsCash/CreditsCash.js +1 -1
  204. package/dist/esm/components/credits/creditsCash/CreditsCash.js.map +1 -1
  205. package/dist/esm/components/credits/creditsGoGift/CreditsGoGift.d.ts +5 -0
  206. package/dist/esm/components/credits/creditsGoGift/CreditsGoGift.js +2 -0
  207. package/dist/esm/components/credits/creditsGoGift/CreditsGoGift.js.map +7 -0
  208. package/dist/esm/components/credits/creditsGoGift/index.d.ts +2 -0
  209. package/dist/esm/components/credits/creditsGoGift/index.js +2 -0
  210. package/dist/esm/components/credits/creditsGoGift/index.js.map +7 -0
  211. package/dist/esm/components/credits/creditsGoGift/type.d.ts +22 -0
  212. package/dist/esm/components/credits/creditsGoGift/type.js +1 -0
  213. package/dist/esm/components/credits/creditsGoGift/type.js.map +7 -0
  214. package/dist/esm/components/credits/creditsGofit/CreditsGofit.d.ts +5 -0
  215. package/dist/esm/components/credits/creditsGofit/CreditsGofit.js +2 -0
  216. package/dist/esm/components/credits/creditsGofit/CreditsGofit.js.map +7 -0
  217. package/dist/esm/components/credits/creditsGofit/index.d.ts +2 -0
  218. package/dist/esm/components/credits/creditsGofit/index.js +2 -0
  219. package/dist/esm/components/credits/creditsGofit/index.js.map +7 -0
  220. package/dist/esm/components/credits/creditsGofit/type.d.ts +22 -0
  221. package/dist/esm/components/credits/creditsGofit/type.js +1 -0
  222. package/dist/esm/components/credits/creditsGofit/type.js.map +7 -0
  223. package/dist/esm/components/credits/creditsInfoCard/index.js +1 -1
  224. package/dist/esm/components/credits/creditsInfoCard/index.js.map +3 -3
  225. package/dist/esm/components/credits/creditsMemberPrice/CreditsMemberPrice.js +1 -1
  226. package/dist/esm/components/credits/creditsMemberPrice/CreditsMemberPrice.js.map +1 -1
  227. package/dist/esm/components/credits/creditsRedeemList/CreditsRedeemList.js +1 -1
  228. package/dist/esm/components/credits/creditsRedeemList/CreditsRedeemList.js.map +3 -3
  229. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.d.ts +10 -0
  230. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.js +2 -0
  231. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.js.map +7 -0
  232. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.d.ts +10 -0
  233. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.js +2 -0
  234. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.js.map +7 -0
  235. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal.d.ts +4 -5
  236. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal.js +1 -1
  237. package/dist/esm/components/credits/creditsRedeemList/RedeemCouponModal.js.map +3 -3
  238. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Address.d.ts +2 -3
  239. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Address.js +1 -1
  240. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Address.js.map +2 -2
  241. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Init.d.ts +2 -3
  242. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Init.js +1 -1
  243. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Init.js.map +2 -2
  244. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.d.ts +1 -3
  245. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.js +1 -1
  246. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.js.map +3 -3
  247. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.d.ts +3 -4
  248. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js +1 -1
  249. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.js.map +2 -2
  250. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Success.d.ts +2 -3
  251. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Success.js +1 -1
  252. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/Success.js.map +2 -2
  253. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/index.d.ts +4 -5
  254. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/index.js +1 -1
  255. package/dist/esm/components/credits/creditsRedeemList/RedeemProductModal/index.js.map +3 -3
  256. package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.d.ts +10 -0
  257. package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.js +2 -0
  258. package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.js.map +7 -0
  259. package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.d.ts +9 -0
  260. package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.js +2 -0
  261. package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.js.map +7 -0
  262. package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal.d.ts +8 -0
  263. package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal.js +2 -0
  264. package/dist/esm/components/credits/creditsRedeemList/RedeemVirtualProductModal.js.map +7 -0
  265. package/dist/esm/components/credits/creditsRedeemList/RedeemableItem.js +1 -1
  266. package/dist/esm/components/credits/creditsRedeemList/RedeemableItem.js.map +2 -2
  267. package/dist/esm/components/credits/creditsRedeemList/type.d.ts +11 -0
  268. package/dist/esm/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js +1 -1
  269. package/dist/esm/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.js.map +1 -1
  270. package/dist/esm/components/credits/creditsWaysToGetCredits/type.d.ts +2 -2
  271. package/dist/esm/components/credits/creditsWaysToGetCredits/type.js.map +1 -1
  272. package/dist/esm/components/credits/index.d.ts +2 -1
  273. package/dist/esm/components/credits/index.js +1 -1
  274. package/dist/esm/components/credits/index.js.map +3 -3
  275. package/dist/esm/components/credits/modal/MyRewardsModal.d.ts +16 -0
  276. package/dist/esm/components/credits/modal/MyRewardsModal.js +1 -1
  277. package/dist/esm/components/credits/modal/MyRewardsModal.js.map +3 -3
  278. package/dist/esm/components/credits/modal/RewardsModal.d.ts +64 -0
  279. package/dist/esm/components/credits/modal/RewardsModal.js +2 -0
  280. package/dist/esm/components/credits/modal/RewardsModal.js.map +7 -0
  281. package/dist/esm/components/credits/modal/activitiesModal.d.ts +1 -1
  282. package/dist/esm/components/credits/modal/activitiesModal.js +2 -2
  283. package/dist/esm/components/credits/modal/activitiesModal.js.map +3 -3
  284. package/dist/esm/components/credits/modal/creditsUploadReceiptModal.js +2 -2
  285. package/dist/esm/components/credits/modal/creditsUploadReceiptModal.js.map +2 -2
  286. package/dist/esm/components/credits/modal/loadingDots.js +1 -1
  287. package/dist/esm/components/credits/modal/loadingDots.js.map +2 -2
  288. package/dist/esm/components/credits/modal/modalContainer.js +2 -2
  289. package/dist/esm/components/credits/modal/modalContainer.js.map +3 -3
  290. package/dist/esm/components/credits/modal/rulesModal.d.ts +1 -1
  291. package/dist/esm/components/credits/modal/rulesModal.js +2 -2
  292. package/dist/esm/components/credits/modal/rulesModal.js.map +3 -3
  293. package/dist/esm/components/credits/modal/subscribeModal.d.ts +1 -1
  294. package/dist/esm/components/credits/modal/subscribeModal.js +2 -2
  295. package/dist/esm/components/credits/modal/subscribeModal.js.map +2 -2
  296. package/dist/esm/components/credits/modal/tip.js +1 -1
  297. package/dist/esm/components/credits/modal/tip.js.map +2 -2
  298. package/dist/esm/components/credits/type.d.ts +67 -5
  299. package/dist/esm/stories/LiveChatWidget.stories.js +1 -8
  300. package/dist/esm/stories/LiveChatWidget.stories.js.map +2 -2
  301. package/dist/esm/templates/Credits.d.ts +1 -87
  302. package/dist/esm/templates/Credits.js +1 -1
  303. package/dist/esm/templates/Credits.js.map +3 -3
  304. package/dist/esm/templates/Credits.types.d.ts +96 -0
  305. package/dist/esm/templates/Credits.types.js +2 -0
  306. package/dist/esm/templates/Credits.types.js.map +7 -0
  307. package/package.json +2 -2
  308. package/src/components/LiveChatWidget/LiveChatWidget.tsx +20 -0
  309. package/src/components/LiveChatWidget/components/MessageContent/PromotionList.tsx +1 -1
  310. package/src/components/LiveChatWidget/components/MessageList.tsx +39 -44
  311. package/src/components/LiveChatWidget/hooks/useChatState.ts +4 -3
  312. package/src/components/LiveChatWidget/types.ts +2 -1
  313. package/src/components/credits/context/const.ts +8 -0
  314. package/src/components/credits/context/hooks/useMyRewards.ts +7 -31
  315. package/src/components/credits/context/hooks/useRedeemGoGift.ts +36 -0
  316. package/src/components/credits/context/hooks/useRedeemableList.ts +13 -19
  317. package/src/components/credits/context/provider.tsx +17 -2
  318. package/src/components/credits/context/response.ts +1 -0
  319. package/src/components/credits/creditsAnkersolixTask/CreditsAnkersolixTask.tsx +2 -2
  320. package/src/components/credits/creditsBanner/index.tsx +5 -5
  321. package/src/components/credits/creditsCash/CreditsCash.tsx +1 -1
  322. package/src/components/credits/creditsGoGift/CreditsGoGift.tsx +210 -0
  323. package/src/components/credits/creditsGoGift/index.ts +2 -0
  324. package/src/components/credits/creditsGoGift/type.ts +23 -0
  325. package/src/components/credits/creditsInfoCard/index.tsx +5 -28
  326. package/src/components/credits/creditsMemberPrice/CreditsMemberPrice.tsx +1 -1
  327. package/src/components/credits/creditsRedeemList/CreditsRedeemList.tsx +39 -17
  328. package/src/components/credits/creditsRedeemList/RedeemCouponModal/CouponInit.tsx +77 -0
  329. package/src/components/credits/creditsRedeemList/RedeemCouponModal/CouponSuccess.tsx +86 -0
  330. package/src/components/credits/creditsRedeemList/RedeemCouponModal.tsx +29 -138
  331. package/src/components/credits/creditsRedeemList/RedeemProductModal/Address.tsx +5 -6
  332. package/src/components/credits/creditsRedeemList/RedeemProductModal/Init.tsx +11 -12
  333. package/src/components/credits/creditsRedeemList/RedeemProductModal/NonProductValue.tsx +23 -14
  334. package/src/components/credits/creditsRedeemList/RedeemProductModal/ProductInfo.tsx +11 -9
  335. package/src/components/credits/creditsRedeemList/RedeemProductModal/Success.tsx +4 -5
  336. package/src/components/credits/creditsRedeemList/RedeemProductModal/index.tsx +29 -28
  337. package/src/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductInit.tsx +101 -0
  338. package/src/components/credits/creditsRedeemList/RedeemVirtualProductModal/VirtualProductSuccess.tsx +65 -0
  339. package/src/components/credits/creditsRedeemList/RedeemVirtualProductModal.tsx +156 -0
  340. package/src/components/credits/creditsRedeemList/RedeemableItem.tsx +1 -1
  341. package/src/components/credits/creditsRedeemList/type.ts +11 -0
  342. package/src/components/credits/creditsWaysToGetCredits/CreditsWaysToGetCredits.tsx +2 -2
  343. package/src/components/credits/creditsWaysToGetCredits/type.ts +2 -2
  344. package/src/components/credits/index.ts +2 -1
  345. package/src/components/credits/modal/{activitiesModal.tsx → ActivitiesModal.tsx} +2 -2
  346. package/src/components/credits/modal/{creditsUploadReceiptModal.tsx → CreditsUploadReceiptModal.tsx} +1 -1
  347. package/src/components/credits/modal/{modalContainer.tsx → ModalContainer.tsx} +1 -1
  348. package/src/components/credits/modal/{MyRewardsModal.tsx → RewardsModal.tsx} +145 -103
  349. package/src/components/credits/modal/{rulesModal.tsx → RulesModal.tsx} +1 -1
  350. package/src/components/credits/modal/{subscribeModal.tsx → SubscribeModal.tsx} +1 -1
  351. package/src/components/credits/type.ts +68 -5
  352. package/src/stories/LiveChatWidget.stories.tsx +7 -12
  353. package/src/styles/livechat.css +29 -0
  354. package/src/templates/Credits.tsx +110 -142
  355. package/src/templates/Credits.types.ts +110 -0
  356. package/dist/index.d.mts +0 -1305
  357. package/dist/index.d.ts +0 -1305
  358. package/dist/index.js +0 -26656
  359. package/dist/index.js.map +0 -1
  360. package/dist/index.mjs +0 -26641
  361. package/dist/index.mjs.map +0 -1
  362. /package/src/components/credits/modal/{loadingDots.tsx → LoadingDots.tsx} +0 -0
  363. /package/src/components/credits/modal/{tip.tsx → Tip.tsx} +0 -0
@@ -2,17 +2,17 @@ import { Tabs, TabsList, TabsTrigger, Picture } from '@anker-in/headless-ui'
2
2
  import classNames from 'classnames'
3
3
  import clipboard from 'copy-to-clipboard'
4
4
  import dayjs from 'dayjs'
5
- import { useCallback, useMemo, useState } from 'react'
5
+ import { useCallback, useEffect, useMemo, useState } from 'react'
6
6
 
7
7
  import { ApprovalStatus, AlpcConsumeType, RewardType } from '../context/const'
8
- import { CreditsModalContainer, type ModalContainerProps } from './modalContainer'
9
- import Tip from './tip'
10
- import LoadingDots from './loadingDots'
8
+ import { CreditsModalContainer, type ModalContainerProps } from './ModalContainer'
9
+ import Tip from './Tip'
10
+ import LoadingDots from './LoadingDots'
11
11
  import useMyRewards from '../context/hooks/useMyRewards'
12
12
  import { useHeadlessContext } from '@anker-in/lib'
13
13
  import { ROUNDED_BRANDS } from '../../../constants'
14
14
 
15
- export interface MyRewardsMetafields {
15
+ export interface RewardsCopy {
16
16
  title: string
17
17
  orderNumberLabel: string
18
18
  valueLabel: string
@@ -21,6 +21,7 @@ export interface MyRewardsMetafields {
21
21
  approveSuccessLabel: string
22
22
  couponTab: string
23
23
  productTab: string
24
+ externalProductTab?: string
24
25
  pendingLabel: string
25
26
  unfulfilledLabel: string
26
27
  fulfilledLabel: string
@@ -33,129 +34,144 @@ export interface MyRewardsMetafields {
33
34
  code: string
34
35
  copied: string
35
36
  copy: string
37
+ redeemLinkLabel?: string
38
+ goGiftStatus?: {
39
+ pending?: {
40
+ label: string
41
+ tip: string
42
+ }
43
+ approved?: {
44
+ label: string
45
+ tip: string
46
+ }
47
+ secondConfirm?: {
48
+ label: string
49
+ tip: string
50
+ }
51
+ rejected?: {
52
+ label: string
53
+ tip: string
54
+ }
55
+ callbackPending?: {
56
+ label: string
57
+ tip: string
58
+ }
59
+ callbackSuccess?: {
60
+ label: string
61
+ tip: string
62
+ }
63
+ callbackTimeout?: {
64
+ label: string
65
+ tip: string
66
+ }
67
+ }
36
68
  emptyListImage: {
37
69
  url: string
38
70
  alt?: string
39
71
  }
40
72
  }
41
- interface MyRewardsModalProps extends ModalContainerProps {
42
- data: MyRewardsMetafields
73
+ interface RewardsModalProps extends ModalContainerProps {
74
+ data: RewardsCopy
43
75
  }
44
76
 
45
- function MyRewardsModal({ data, ...props }: MyRewardsModalProps) {
77
+ function RewardsModal({ data, ...props }: RewardsModalProps) {
46
78
  const [activeTab, setActiveTab] = useState(AlpcConsumeType.Coupon)
47
79
  const { brand } = useHeadlessContext()
48
80
  const rounded = ROUNDED_BRANDS.includes(brand)
49
81
 
50
- const [couponPage, setCouponPage] = useState(1)
51
- const [productPage, setProductPage] = useState(1)
82
+ const [page, setPage] = useState(1)
52
83
  const [copied, setCopied] = useState(-1)
53
84
 
54
85
  const tabs = useMemo(() => {
55
- const availableTabs: { title: string; type: number }[] = []
86
+ return [
87
+ { title: data.couponTab, type: AlpcConsumeType.Coupon },
88
+ { title: data.productTab, type: AlpcConsumeType.Product },
89
+ { title: data.externalProductTab, type: AlpcConsumeType.ExternalProduct },
90
+ ].filter((tab): tab is { title: string; type: number } => !!tab.title)
91
+ }, [data.couponTab, data.productTab, data.externalProductTab])
56
92
 
57
- if (data.couponTab) {
58
- availableTabs.push({
59
- title: data.couponTab,
60
- type: AlpcConsumeType.Coupon,
61
- })
62
- }
93
+ // Reset page when switching tabs
94
+ useEffect(() => {
95
+ setPage(1)
96
+ }, [activeTab])
63
97
 
64
- if (data.productTab) {
65
- availableTabs.push({
66
- title: data.productTab,
67
- type: AlpcConsumeType.Product,
68
- })
69
- }
98
+ const { myRewards = [], canNext, isLoading } = useMyRewards({
99
+ page,
100
+ pageSize: 1000,
101
+ consumeType: activeTab,
102
+ })
70
103
 
71
- return availableTabs
72
- }, [data.couponTab, data.productTab])
104
+ const getProductType = useCallback((item: any) => {
105
+ if (item.fulfillment_status && item.fulfillment_status !== 'null') {
106
+ return item.fulfillment_status === 'fulfilled' ? RewardType.Fulfilled : RewardType.Unfulfilled
107
+ }
73
108
 
74
- const myProductRewardsOptions = useMemo(() => {
75
- return {
76
- page: props.isOpen ? productPage : 0,
77
- pageSize: 1000,
78
- consumeType: AlpcConsumeType.Product,
109
+ if (item.approval_status === ApprovalStatus.Success || item.approval_status === ApprovalStatus.DoubleConfirm) {
110
+ return RewardType.ApproveSuccess
79
111
  }
80
- }, [props.isOpen, productPage])
81
- const myCouponRewardsOptions = useMemo(() => {
82
- return {
83
- page: props.isOpen ? couponPage : 0,
84
- pageSize: 1000,
85
- consumeType: AlpcConsumeType.Coupon,
112
+
113
+ if (item.approval_status === ApprovalStatus.Failed) {
114
+ return RewardType.Failed
86
115
  }
87
- }, [props.isOpen, couponPage])
88
116
 
89
- const {
90
- myRewards: myCouponRewards = [],
91
- canNext: couponCanNext,
92
- isLoading: couponIsLoading,
93
- } = useMyRewards(myCouponRewardsOptions)
94
- const {
95
- myRewards: myProductRewards = [],
96
- canNext: productCanNext,
97
- isLoading: productIsLoading,
98
- } = useMyRewards(myProductRewardsOptions)
117
+ return RewardType.Pending
118
+ }, [])
119
+
120
+ const getGoGiftType = useCallback((status?: number) => {
121
+ const statusMap: Record<number, RewardType> = {
122
+ 0: RewardType.GogiftPending,
123
+ 1: RewardType.GogiftApproved,
124
+ 2: RewardType.GogiftSecondConfirm,
125
+ 3: RewardType.GogiftRejected,
126
+ 4: RewardType.GogiftCallbackPending,
127
+ 5: RewardType.GogiftCallbackSuccess,
128
+ 6: RewardType.GogiftCallbackTimeout,
129
+ }
130
+ return status !== undefined ? (statusMap[status] ?? RewardType.GogiftPending) : RewardType.GogiftPending
131
+ }, [])
99
132
 
100
133
  const list = useMemo(() => {
101
- if (activeTab === AlpcConsumeType.Coupon) {
102
- return myCouponRewards.map(item => ({
134
+ return myRewards.map(item => {
135
+ const base = {
103
136
  title: item.goods_title,
104
137
  value: item.consume_credits,
105
- type: RewardType.Received,
106
138
  date: new Date(item.create_time * 1000),
107
- couponCode: item.coupon_code,
108
- orderNumber: '',
109
- }))
110
- }
111
-
112
- if (activeTab === AlpcConsumeType.Product) {
113
- return myProductRewards.map(item => {
114
- let type = RewardType.Pending
139
+ }
115
140
 
116
- if (item.fulfillment_status && item.fulfillment_status !== 'null') {
117
- // 物流状态
118
- if (item.fulfillment_status === 'fulfilled') {
119
- type = RewardType.Fulfilled
120
- } else {
121
- type = RewardType.Unfulfilled
122
- }
123
- } else {
124
- if (
125
- item.approval_status === ApprovalStatus.Success ||
126
- item.approval_status === ApprovalStatus.DoubleConfirm
127
- ) {
128
- type = RewardType.ApproveSuccess
129
- } else if (item.approval_status === ApprovalStatus.Failed) {
130
- type = RewardType.Failed
131
- }
141
+ if (activeTab === AlpcConsumeType.Coupon) {
142
+ return {
143
+ ...base,
144
+ type: RewardType.Received,
145
+ couponCode: item.coupon_code,
146
+ orderNumber: '',
147
+ link: '',
132
148
  }
149
+ }
133
150
 
151
+ if (activeTab === AlpcConsumeType.Product) {
134
152
  return {
135
- title: item.goods_title,
136
- value: item.consume_credits,
137
- type,
138
- date: new Date(item.create_time * 1000),
153
+ ...base,
154
+ type: getProductType(item),
139
155
  orderNumber: item.order_number,
140
156
  couponCode: '',
157
+ link: '',
141
158
  }
142
- })
143
- }
159
+ }
144
160
 
145
- return []
146
- }, [activeTab, myProductRewards, myCouponRewards])
147
-
148
- const canNext = useMemo(() => {
149
- if (activeTab === AlpcConsumeType.Coupon) {
150
- return couponCanNext
151
- }
161
+ if (activeTab === AlpcConsumeType.ExternalProduct) {
162
+ return {
163
+ ...base,
164
+ type: getGoGiftType(item.approval_status),
165
+ orderNumber: '',
166
+ couponCode: '',
167
+ link: item.link || '',
168
+ }
169
+ }
152
170
 
153
- if (activeTab === AlpcConsumeType.Product) {
154
- return productCanNext
155
- }
171
+ return { ...base, type: RewardType.Received, couponCode: '', orderNumber: '', link: '' }
172
+ })
173
+ }, [activeTab, myRewards, getProductType, getGoGiftType])
156
174
 
157
- return false
158
- }, [activeTab, couponCanNext, productCanNext])
159
175
 
160
176
  const TypeMap = useMemo(() => {
161
177
  return {
@@ -166,6 +182,13 @@ function MyRewardsModal({ data, ...props }: MyRewardsModalProps) {
166
182
  [RewardType.Unfulfilled]: data.unfulfilledLabel,
167
183
  [RewardType.Fulfilled]: data.fulfilledLabel,
168
184
  [RewardType.Failed]: data.failedLabel,
185
+ [RewardType.GogiftPending]: data.goGiftStatus?.pending?.label || data.pendingLabel,
186
+ [RewardType.GogiftApproved]: data.goGiftStatus?.approved?.label || data.approveSuccessLabel,
187
+ [RewardType.GogiftSecondConfirm]: data.goGiftStatus?.secondConfirm?.label || data.approveSuccessLabel,
188
+ [RewardType.GogiftRejected]: data.goGiftStatus?.rejected?.label || data.failedLabel,
189
+ [RewardType.GogiftCallbackPending]: data.goGiftStatus?.callbackPending?.label || data.pendingLabel,
190
+ [RewardType.GogiftCallbackSuccess]: data.goGiftStatus?.callbackSuccess?.label || data.receivedLabel,
191
+ [RewardType.GogiftCallbackTimeout]: data.goGiftStatus?.callbackTimeout?.label || data.failedLabel,
169
192
  }
170
193
  }, [data])
171
194
 
@@ -178,6 +201,13 @@ function MyRewardsModal({ data, ...props }: MyRewardsModalProps) {
178
201
  [RewardType.Unfulfilled]: data.processingTip,
179
202
  [RewardType.Fulfilled]: data.ShippedTip,
180
203
  [RewardType.Failed]: '',
204
+ [RewardType.GogiftPending]: data.goGiftStatus?.pending?.tip || '',
205
+ [RewardType.GogiftApproved]: data.goGiftStatus?.approved?.tip || '',
206
+ [RewardType.GogiftSecondConfirm]: data.goGiftStatus?.secondConfirm?.tip || '',
207
+ [RewardType.GogiftRejected]: data.goGiftStatus?.rejected?.tip || '',
208
+ [RewardType.GogiftCallbackPending]: data.goGiftStatus?.callbackPending?.tip || '',
209
+ [RewardType.GogiftCallbackSuccess]: data.goGiftStatus?.callbackSuccess?.tip || '',
210
+ [RewardType.GogiftCallbackTimeout]: data.goGiftStatus?.callbackTimeout?.tip || '',
181
211
  }
182
212
  }, [data])
183
213
 
@@ -190,20 +220,21 @@ function MyRewardsModal({ data, ...props }: MyRewardsModalProps) {
190
220
  [RewardType.Unfulfilled]: '#999',
191
221
  [RewardType.Fulfilled]: '#999',
192
222
  [RewardType.Failed]: '#F84D4F',
223
+ [RewardType.GogiftPending]: '#999',
224
+ [RewardType.GogiftApproved]: '#999',
225
+ [RewardType.GogiftSecondConfirm]: '#999',
226
+ [RewardType.GogiftRejected]: '#F84D4F',
227
+ [RewardType.GogiftCallbackPending]: '#999',
228
+ [RewardType.GogiftCallbackSuccess]: '#52C41A',
229
+ [RewardType.GogiftCallbackTimeout]: '#F84D4F',
193
230
  }
194
231
  }, [])
195
232
 
196
233
  const handleScrollEnd = useCallback(() => {
197
- if (!canNext) {
198
- return
234
+ if (canNext) {
235
+ setPage(prev => prev + 1)
199
236
  }
200
-
201
- if (activeTab === AlpcConsumeType.Coupon) {
202
- setCouponPage(couponPage + 1)
203
- } else if (activeTab === AlpcConsumeType.Product) {
204
- setProductPage(productPage + 1)
205
- }
206
- }, [activeTab, productPage, couponPage, canNext])
237
+ }, [canNext])
207
238
 
208
239
  const handleCopy = useCallback((code: string, idx: number) => {
209
240
  setCopied(idx)
@@ -213,7 +244,6 @@ function MyRewardsModal({ data, ...props }: MyRewardsModalProps) {
213
244
  }, 2000)
214
245
  }, [])
215
246
 
216
- const isLoading = activeTab === AlpcConsumeType.Coupon ? couponIsLoading : productIsLoading
217
247
 
218
248
  return (
219
249
  <CreditsModalContainer
@@ -292,6 +322,18 @@ function MyRewardsModal({ data, ...props }: MyRewardsModalProps) {
292
322
  </span>
293
323
  )}
294
324
  </div>
325
+ {item?.link && (
326
+ <div className="text-[14px] font-semibold text-[#999]">
327
+ <a
328
+ href={item.link}
329
+ target="_blank"
330
+ rel="noopener noreferrer"
331
+ className="text-brand underline"
332
+ >
333
+ {data?.redeemLinkLabel || 'Redeem Link'}
334
+ </a>
335
+ </div>
336
+ )}
295
337
  </div>
296
338
  <div className="grid gap-[4px] text-right">
297
339
  <div
@@ -327,4 +369,4 @@ function MyRewardsModal({ data, ...props }: MyRewardsModalProps) {
327
369
  )
328
370
  }
329
371
 
330
- export default MyRewardsModal
372
+ export default RewardsModal
@@ -1,7 +1,7 @@
1
1
  import { Text } from '@anker-in/headless-ui'
2
2
  import { useMemo } from 'react'
3
3
 
4
- import { CreditsModalContainer, type ModalContainerProps } from './modalContainer'
4
+ import { CreditsModalContainer, type ModalContainerProps } from './ModalContainer'
5
5
  import { classNames as cn } from '@anker-in/lib'
6
6
 
7
7
  function RulesModal({
@@ -8,7 +8,7 @@ import sha256 from 'crypto-js/sha256'
8
8
  import { useCreditsContext } from '../context/provider'
9
9
  import { ROUNDED_BRANDS } from '../../../constants'
10
10
  import { emailValidate } from '../context/utils'
11
- import { CreditsModalContainer, type ModalContainerProps } from './modalContainer'
11
+ import { CreditsModalContainer, type ModalContainerProps } from './ModalContainer'
12
12
 
13
13
  export type CreditsSubscribeModalCopy = {
14
14
  title: string
@@ -1,7 +1,7 @@
1
1
  import type { Product, ProductVariant } from '@anker-in/lib'
2
2
  import type { AlpcConsumeType, ConsumeType } from './context/const'
3
- import { MyActivitiesMetafields } from './modal/activitiesModal'
4
- import { MyRewardsMetafields } from './modal/MyRewardsModal'
3
+ import { MyActivitiesMetafields } from './modal/ActivitiesModal'
4
+ import { RewardsCopy } from './modal/RewardsModal'
5
5
 
6
6
  export interface Subscription {
7
7
  preference: {
@@ -30,8 +30,8 @@ export type RedeemableItem = {
30
30
  showCredit: boolean
31
31
  title: string
32
32
  }
33
- product: Product
34
- variant: ProductVariant
33
+ product?: Product
34
+ variant?: ProductVariant
35
35
  }
36
36
 
37
37
  export interface ShippingCountry {
@@ -50,6 +50,67 @@ export interface ShippingZone {
50
50
  countries: ShippingCountry[]
51
51
  }
52
52
 
53
+ export type RedeemModalCommon = {
54
+ confirmTitle: string
55
+ confirmButton: string
56
+ commonError: string
57
+ redeemLimitError: string
58
+ inventoryNotEnough: string
59
+ creditsNotEnough: string
60
+ crossSiteError: string
61
+ errorImageUrl: string
62
+ coupon: {
63
+ successDesc: string
64
+ successTitle: string
65
+ successButton: string
66
+ successButtonUrl: string
67
+ }
68
+ virtualProduct: {
69
+ successDesc: string
70
+ successTitle: string
71
+ successButton: string
72
+ successButtonUrl: string
73
+ stepTitle?: string
74
+ steps?: {
75
+ imageUrl: string
76
+ title: string
77
+ }[]
78
+ }
79
+ product: {
80
+ required: string
81
+ invalidEmail: string
82
+ shippingAddress: string
83
+ shippingProduct: string
84
+ addressForm: {
85
+ key: string
86
+ type: string
87
+ label: string
88
+ isSelect: boolean
89
+ required: boolean
90
+ placeholder: string
91
+ }[][]
92
+ form: {
93
+ key: string
94
+ type: string
95
+ isSelect: boolean
96
+ required: boolean
97
+ placeholder: string
98
+ }[][]
99
+ successDesc: string[]
100
+ rules: string[]
101
+ steps: {
102
+ imageUrl: string
103
+ title: string
104
+ }[]
105
+ quantityLabel: string
106
+ totalPriceLabel: string
107
+ variantLabel: string
108
+ shippingFeeLabel: string
109
+ paymentButton: string
110
+ stepTitle: string
111
+ }
112
+ }
113
+
53
114
  export type CreditsPageCommon = {
54
115
  pointUnit?: string
55
116
  infoIcon?: string
@@ -59,13 +120,15 @@ export type CreditsPageCommon = {
59
120
  off?: string
60
121
  copy?: string
61
122
  giftCardLabel?: string
123
+ goGiftLabel?: string
62
124
  imageMapping?: {
63
125
  [key in ConsumeType]: {
64
126
  url: string
65
127
  }
66
128
  }
67
129
  activitiesModal?: MyActivitiesMetafields
68
- rewardsModal?: MyRewardsMetafields
130
+ rewardsModal?: RewardsCopy
131
+ redeemModal?: RedeemModalCommon
69
132
  insufficientCredits?: string
70
133
  validatorInfo?: {
71
134
  addressInfo: {
@@ -147,7 +147,7 @@ type Story = StoryObj<typeof LiveChatWidget>
147
147
  export const Default: Story = {
148
148
  args: {
149
149
  // 基础配置
150
- loginUserId: 'test_test',
150
+ loginUserId: 'test_test1',
151
151
  apiBaseUrl: 'http://172.16.38.183:3003',
152
152
  site: 'beta.eufy.com',
153
153
  channelCode: 'dtc',
@@ -159,14 +159,7 @@ export const Default: Story = {
159
159
  position: { bottom: '24px', right: '30px' },
160
160
 
161
161
  // 欢迎消息
162
- welcomeMessage: `Welcome to eufy AI Assistant!
163
-
164
- I can help you with:
165
- - Product recommendations
166
- - Order tracking
167
- - FAQs and support
168
-
169
- How can I assist you today?`,
162
+ welcomeMessage: '',
170
163
 
171
164
  // 快捷回复
172
165
  quickReplies: [
@@ -179,9 +172,11 @@ How can I assist you today?`,
179
172
  // 法规协议弹窗
180
173
  complianceConfig: {
181
174
  title: "Hi! I'm your eufy AI assistant.",
182
- content: "AI-generated responses can be inaccurate. Please verify important info. Do not input sensitive personal data.",
183
- checkboxText: 'By starting to use "Live Chat", you agree to Anker\'s <a href="https://www.anker.com/pages/privacy-policy" target="_blank" rel="noopener noreferrer" style="text-decoration: underline;">LIVE CHAT PRIVACY NOTICE</a>.',
184
- agreeButtonText: "Agree"
175
+ content:
176
+ 'AI-generated responses can be inaccurate. Please verify important info. Do not input sensitive personal data.',
177
+ checkboxText:
178
+ 'By starting to use "Live Chat", you agree to Anker\'s <a href="https://www.anker.com/pages/privacy-policy" target="_blank" rel="noopener noreferrer" style="text-decoration: underline;">LIVE CHAT PRIVACY NOTICE</a>.',
179
+ agreeButtonText: 'Agree',
185
180
  },
186
181
 
187
182
  // reCAPTCHA 配置(取消注释以启用)
@@ -144,6 +144,35 @@
144
144
  background: var(--livechat-text-secondary);
145
145
  }
146
146
 
147
+ /* 回到底部按钮样式 */
148
+ .livechat-scroll-to-bottom {
149
+ position: absolute;
150
+ bottom: 24px;
151
+ left: 50%;
152
+ transform: translateX(-50%);
153
+ z-index: 10;
154
+ width: 40px;
155
+ height: 40px;
156
+ border-radius: 50%;
157
+ background-color: rgba(255, 255, 255, 0.95);
158
+ box-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
159
+ transition: opacity 300ms ease-in-out;
160
+ cursor: pointer;
161
+ border: none;
162
+ display: flex;
163
+ align-items: center;
164
+ justify-content: center;
165
+ }
166
+
167
+ .livechat-scroll-to-bottom.hidden {
168
+ opacity: 0 !important;
169
+ pointer-events: none;
170
+ }
171
+
172
+ .livechat-scroll-to-bottom.visible {
173
+ opacity: 1 !important;
174
+ }
175
+
147
176
  /* 思考状态动画 */
148
177
  .livechat-thinking-dots {
149
178
  display: inline-flex;