@pisell/private-materials 3.3.26 → 3.3.27

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 (205) hide show
  1. package/build/lowcode/assets-daily.json +11 -11
  2. package/build/lowcode/assets-dev.json +2 -2
  3. package/build/lowcode/assets-prod.json +11 -11
  4. package/build/lowcode/index.js +1 -1
  5. package/build/lowcode/meta.js +1 -1
  6. package/build/lowcode/preview.js +8 -8
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +7 -7
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +5 -5
  11. package/es/components/Sales/Customer/index.js +3 -1
  12. package/es/components/Sales/Event/Detail.js +5 -1
  13. package/es/components/Sales/Event/serve.d.ts +3 -0
  14. package/es/components/Sales/Init/index.d.ts +1 -0
  15. package/es/components/Sales/Init/index.js +3 -2
  16. package/es/components/Sales/Step/index.d.ts +2 -0
  17. package/es/components/Sales/Step/index.js +13 -4
  18. package/es/components/appointmentBooking/components/Cart/Item/index.d.ts +1 -0
  19. package/es/components/appointmentBooking/components/ConfirmInformation/index.js +5 -5
  20. package/es/components/appointmentBooking/components/Content/index.d.ts +1 -0
  21. package/es/components/appointmentBooking/components/Services/index.js +2 -0
  22. package/es/components/appointmentBooking/deposit/index.js +2 -2
  23. package/es/components/appointmentBooking/index.d.ts +1 -0
  24. package/es/components/booking/components/footer/utils.js +16 -15
  25. package/es/components/booking/hooks/useQuotation.d.ts +4 -0
  26. package/es/components/booking/hooks/useQuotation.js +256 -0
  27. package/es/components/booking/info/index.d.ts +0 -1
  28. package/es/components/booking/info/service/addService/index.d.ts +1 -0
  29. package/es/components/booking/info/service/addService/index.js +4 -4
  30. package/es/components/booking/info/service/editService/index.js +6 -3
  31. package/es/components/booking/info/service/index.js +4 -1
  32. package/es/components/booking/info/service2/Group/utils.js +1 -1
  33. package/es/components/booking/info/service2/hooks/useSelectPet.js +6 -4
  34. package/es/components/booking/info/service2/index.js +4 -1
  35. package/es/components/booking/info2/service/addService/index.d.ts +1 -0
  36. package/es/components/booking/info2/service/addService/index.js +29 -9
  37. package/es/components/booking/info2/service/editService/index.js +2 -0
  38. package/es/components/booking/info2/service/index.js +4 -1
  39. package/es/components/booking/locales.d.ts +6 -0
  40. package/es/components/booking/locales.js +9 -3
  41. package/es/components/eftposPay/component/fail/failCustom.d.ts +1 -0
  42. package/es/components/eftposPay/component/fail/index.d.ts +1 -0
  43. package/es/components/eftposPay/component/fail/unknow.d.ts +1 -0
  44. package/es/components/eftposPay/hooks.d.ts +1 -1
  45. package/es/components/eftposPay/index.d.ts +1 -0
  46. package/es/components/eftposPay/pay.d.ts +1 -0
  47. package/es/components/eftposPay/store/index.d.ts +1 -1
  48. package/es/components/eventBooking/components/Provider/Cart/ContinueButton/index.js +122 -31
  49. package/es/components/eventBooking/components/Provider/Event/index.js +20 -4
  50. package/es/components/eventBooking/components/Provider/Resource/index.js +26 -5
  51. package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/SelectDate/index.d.ts +2 -2
  52. package/es/components/eventBooking/components/bookingAvailabilityCalendar/components/SelectDate/index.js +1 -1
  53. package/es/components/eventBooking/components/bookingDetailModal/components/Schedule.d.ts +1 -0
  54. package/es/components/eventBooking/components/bookingDetailModal/components/Schedule.js +5 -2
  55. package/es/components/eventBooking/components/scheduleCalendar/calendarItem.d.ts +1 -0
  56. package/es/components/eventBooking/components/scheduleCalendar/calendarItem.js +7 -2
  57. package/es/components/eventBooking/components/scheduleCalendar/components/ScheduleTimeItem/index.d.ts +3 -0
  58. package/es/components/eventBooking/components/scheduleCalendar/components/ScheduleTimeItem/index.js +60 -0
  59. package/es/components/eventBooking/components/scheduleCalendar/components/ScheduleTimeItem/index.less +63 -0
  60. package/es/components/eventBooking/components/scheduleCalendar/components/ScheduleTimes/index.d.ts +9 -0
  61. package/es/components/eventBooking/components/scheduleCalendar/components/ScheduleTimes/index.js +59 -0
  62. package/es/components/eventBooking/components/scheduleCalendar/components/ScheduleTimes/index.less +7 -0
  63. package/es/components/eventBooking/components/scheduleCalendar/index.d.ts +1 -0
  64. package/es/components/eventBooking/components/scheduleCalendar/index.js +30 -21
  65. package/es/components/eventBooking/components/scheduleCalendar/index.less +2 -0
  66. package/es/components/eventBooking/index.d.ts +1 -0
  67. package/es/components/eventBooking/index.js +2 -2
  68. package/es/components/eventBooking/locales.d.ts +6 -0
  69. package/es/components/eventBooking/locales.js +166 -160
  70. package/es/components/pay/toC/PaymentMethods/WalletPass/List/index.d.ts +3 -0
  71. package/es/components/pay/toC/PaymentMethods/WalletPass/List/index.js +3 -2
  72. package/es/components/pay/toC/PaymentMethods/WalletPass/index.d.ts +5 -0
  73. package/es/components/pay/toC/PaymentMethods/WalletPass/index.js +73 -20
  74. package/es/components/pay/toC/PaymentMethods/WalletPass/index.less +30 -0
  75. package/es/components/pay/toC/PaymentMethods/WalletPass/serve.d.ts +2 -0
  76. package/es/components/pay/toC/PaymentMethods/WalletPass/utils.js +2 -1
  77. package/es/components/pay/toC/WalletPassBlock/components/WalletAvailable/index.d.ts +16 -0
  78. package/es/components/pay/toC/WalletPassBlock/components/WalletAvailable/index.js +60 -0
  79. package/es/components/pay/toC/WalletPassBlock/components/WalletAvailable/index.less +38 -0
  80. package/es/components/pay/toC/WalletPassBlock/components/WalletBestValueFound/index.d.ts +17 -0
  81. package/es/components/pay/toC/WalletPassBlock/components/WalletBestValueFound/index.js +98 -0
  82. package/es/components/pay/toC/WalletPassBlock/components/WalletBestValueFound/index.less +133 -0
  83. package/es/components/pay/toC/WalletPassBlock/components/WalletUseList/index.d.ts +7 -0
  84. package/es/components/pay/toC/WalletPassBlock/components/WalletUseList/index.js +34 -0
  85. package/es/components/pay/toC/WalletPassBlock/components/WalletUseList/index.less +23 -0
  86. package/es/components/pay/toC/WalletPassBlock/index.d.ts +9 -2
  87. package/es/components/pay/toC/WalletPassBlock/index.js +119 -21
  88. package/es/components/pay/toC/WalletPassBlock/index.less +82 -13
  89. package/es/components/pay/toC/index.js +138 -89
  90. package/es/components/pay/toC/locales.d.ts +69 -3
  91. package/es/components/pay/toC/locales.js +132 -6
  92. package/es/components/pay/toC/model.d.ts +4 -0
  93. package/es/components/pay/toC/model.js +9 -0
  94. package/es/components/pay/toC/serve.d.ts +23 -0
  95. package/es/components/pay/toC/serve.js +34 -2
  96. package/es/components/pay/toC/utils.d.ts +3 -1
  97. package/es/components/pay/toC/utils.js +8 -3
  98. package/es/components/productSelect/components/productGroup/index.less +4 -12
  99. package/es/components/productSelect/index.less +1 -1
  100. package/es/components/ruleSetting/index.d.ts +1 -0
  101. package/es/components/ticketBooking/components/addServiceVariant/addService.js +15 -20
  102. package/es/components/ticketBooking/components/menuBar/index.less +0 -1
  103. package/es/components/ticketBooking/components/ticketBooking/index.less +2 -4
  104. package/es/hooks/useLocale.d.ts +2 -0
  105. package/es/hooks/useLocale.js +7 -0
  106. package/es/hooks/useLoginUser.d.ts +2 -0
  107. package/es/hooks/useLoginUser.js +19 -0
  108. package/lib/components/Sales/Customer/index.js +3 -1
  109. package/lib/components/Sales/Event/Detail.js +5 -1
  110. package/lib/components/Sales/Event/serve.d.ts +3 -0
  111. package/lib/components/Sales/Init/index.d.ts +1 -0
  112. package/lib/components/Sales/Init/index.js +3 -2
  113. package/lib/components/Sales/Step/index.d.ts +2 -0
  114. package/lib/components/Sales/Step/index.js +13 -4
  115. package/lib/components/appointmentBooking/components/Cart/Item/index.d.ts +1 -0
  116. package/lib/components/appointmentBooking/components/ConfirmInformation/index.js +2 -2
  117. package/lib/components/appointmentBooking/components/Content/index.d.ts +1 -0
  118. package/lib/components/appointmentBooking/components/Services/index.js +2 -0
  119. package/lib/components/appointmentBooking/deposit/index.js +2 -2
  120. package/lib/components/appointmentBooking/index.d.ts +1 -0
  121. package/lib/components/booking/components/footer/utils.js +5 -4
  122. package/lib/components/booking/hooks/useQuotation.d.ts +4 -0
  123. package/lib/components/booking/hooks/useQuotation.js +210 -0
  124. package/lib/components/booking/info/index.d.ts +0 -1
  125. package/lib/components/booking/info/service/addService/index.d.ts +1 -0
  126. package/lib/components/booking/info/service/addService/index.js +2 -3
  127. package/lib/components/booking/info/service/editService/index.js +5 -2
  128. package/lib/components/booking/info/service/index.js +3 -1
  129. package/lib/components/booking/info/service2/Group/utils.js +2 -2
  130. package/lib/components/booking/info/service2/hooks/useSelectPet.js +5 -3
  131. package/lib/components/booking/info/service2/index.js +3 -1
  132. package/lib/components/booking/info2/service/addService/index.d.ts +1 -0
  133. package/lib/components/booking/info2/service/addService/index.js +25 -17
  134. package/lib/components/booking/info2/service/editService/index.js +2 -1
  135. package/lib/components/booking/info2/service/index.js +3 -1
  136. package/lib/components/booking/locales.d.ts +6 -0
  137. package/lib/components/booking/locales.js +9 -3
  138. package/lib/components/eftposPay/component/fail/failCustom.d.ts +1 -0
  139. package/lib/components/eftposPay/component/fail/index.d.ts +1 -0
  140. package/lib/components/eftposPay/component/fail/unknow.d.ts +1 -0
  141. package/lib/components/eftposPay/hooks.d.ts +1 -1
  142. package/lib/components/eftposPay/index.d.ts +1 -0
  143. package/lib/components/eftposPay/pay.d.ts +1 -0
  144. package/lib/components/eftposPay/store/index.d.ts +1 -1
  145. package/lib/components/eventBooking/components/Provider/Cart/ContinueButton/index.js +52 -4
  146. package/lib/components/eventBooking/components/Provider/Event/index.js +15 -3
  147. package/lib/components/eventBooking/components/Provider/Resource/index.js +16 -3
  148. package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/SelectDate/index.d.ts +2 -2
  149. package/lib/components/eventBooking/components/bookingAvailabilityCalendar/components/SelectDate/index.js +7 -7
  150. package/lib/components/eventBooking/components/bookingDetailModal/components/Schedule.d.ts +1 -0
  151. package/lib/components/eventBooking/components/bookingDetailModal/components/Schedule.js +3 -1
  152. package/lib/components/eventBooking/components/scheduleCalendar/calendarItem.d.ts +1 -0
  153. package/lib/components/eventBooking/components/scheduleCalendar/calendarItem.js +6 -5
  154. package/lib/components/eventBooking/components/scheduleCalendar/components/ScheduleTimeItem/index.d.ts +3 -0
  155. package/lib/components/eventBooking/components/scheduleCalendar/components/ScheduleTimeItem/index.js +75 -0
  156. package/lib/components/eventBooking/components/scheduleCalendar/components/ScheduleTimeItem/index.less +63 -0
  157. package/lib/components/eventBooking/components/scheduleCalendar/components/ScheduleTimes/index.d.ts +9 -0
  158. package/lib/components/eventBooking/components/scheduleCalendar/components/ScheduleTimes/index.js +64 -0
  159. package/lib/components/eventBooking/components/scheduleCalendar/components/ScheduleTimes/index.less +7 -0
  160. package/lib/components/eventBooking/components/scheduleCalendar/index.d.ts +1 -0
  161. package/lib/components/eventBooking/components/scheduleCalendar/index.js +17 -11
  162. package/lib/components/eventBooking/components/scheduleCalendar/index.less +2 -0
  163. package/lib/components/eventBooking/index.d.ts +1 -0
  164. package/lib/components/eventBooking/index.js +2 -2
  165. package/lib/components/eventBooking/locales.d.ts +6 -0
  166. package/lib/components/eventBooking/locales.js +10 -4
  167. package/lib/components/pay/toC/PaymentMethods/WalletPass/List/index.d.ts +3 -0
  168. package/lib/components/pay/toC/PaymentMethods/WalletPass/List/index.js +2 -2
  169. package/lib/components/pay/toC/PaymentMethods/WalletPass/index.d.ts +5 -0
  170. package/lib/components/pay/toC/PaymentMethods/WalletPass/index.js +52 -11
  171. package/lib/components/pay/toC/PaymentMethods/WalletPass/index.less +30 -0
  172. package/lib/components/pay/toC/PaymentMethods/WalletPass/serve.d.ts +2 -0
  173. package/lib/components/pay/toC/PaymentMethods/WalletPass/utils.js +2 -1
  174. package/lib/components/pay/toC/WalletPassBlock/components/WalletAvailable/index.d.ts +16 -0
  175. package/lib/components/pay/toC/WalletPassBlock/components/WalletAvailable/index.js +87 -0
  176. package/lib/components/pay/toC/WalletPassBlock/components/WalletAvailable/index.less +38 -0
  177. package/lib/components/pay/toC/WalletPassBlock/components/WalletBestValueFound/index.d.ts +17 -0
  178. package/lib/components/pay/toC/WalletPassBlock/components/WalletBestValueFound/index.js +103 -0
  179. package/lib/components/pay/toC/WalletPassBlock/components/WalletBestValueFound/index.less +133 -0
  180. package/lib/components/pay/toC/WalletPassBlock/components/WalletUseList/index.d.ts +7 -0
  181. package/lib/components/pay/toC/WalletPassBlock/components/WalletUseList/index.js +52 -0
  182. package/lib/components/pay/toC/WalletPassBlock/components/WalletUseList/index.less +23 -0
  183. package/lib/components/pay/toC/WalletPassBlock/index.d.ts +9 -2
  184. package/lib/components/pay/toC/WalletPassBlock/index.js +115 -20
  185. package/lib/components/pay/toC/WalletPassBlock/index.less +82 -13
  186. package/lib/components/pay/toC/index.js +35 -9
  187. package/lib/components/pay/toC/locales.d.ts +69 -3
  188. package/lib/components/pay/toC/locales.js +72 -6
  189. package/lib/components/pay/toC/model.d.ts +4 -0
  190. package/lib/components/pay/toC/model.js +10 -0
  191. package/lib/components/pay/toC/serve.d.ts +23 -0
  192. package/lib/components/pay/toC/serve.js +12 -6
  193. package/lib/components/pay/toC/utils.d.ts +3 -1
  194. package/lib/components/pay/toC/utils.js +8 -3
  195. package/lib/components/productSelect/components/productGroup/index.less +4 -12
  196. package/lib/components/productSelect/index.less +1 -1
  197. package/lib/components/ruleSetting/index.d.ts +1 -0
  198. package/lib/components/ticketBooking/components/addServiceVariant/addService.js +13 -16
  199. package/lib/components/ticketBooking/components/menuBar/index.less +0 -1
  200. package/lib/components/ticketBooking/components/ticketBooking/index.less +2 -4
  201. package/lib/hooks/useLocale.d.ts +2 -0
  202. package/lib/hooks/useLocale.js +41 -0
  203. package/lib/hooks/useLoginUser.d.ts +2 -0
  204. package/lib/hooks/useLoginUser.js +50 -0
  205. package/package.json +3 -3
@@ -37,38 +37,113 @@ var import_materials = require("@pisell/materials");
37
37
  var import_classnames = __toESM(require("classnames"));
38
38
  var import_utils = require("@pisell/utils");
39
39
  var import_WalletPass = __toESM(require("../PaymentMethods/WalletPass"));
40
+ var import_WalletAvailable = __toESM(require("./components/WalletAvailable"));
41
+ var import_WalletBestValueFound = __toESM(require("./components/WalletBestValueFound"));
42
+ var import_WalletUseList = __toESM(require("./components/WalletUseList"));
40
43
  var import_index = require("./index.less");
41
- var WalletPassBlock = (props) => {
42
- var _a;
43
- const { className, payGroup, onWalletPassChange, customer_id, ...others } = props;
44
+ var import_icons = require("@ant-design/icons");
45
+ var WalletPassBlock = (props, ref) => {
46
+ var _a, _b, _c, _d, _e;
47
+ const {
48
+ className,
49
+ payGroup,
50
+ onWalletPassChange,
51
+ customer_id,
52
+ walletSetting,
53
+ ...others
54
+ } = props;
44
55
  const walletPassRef = (0, import_react.useRef)(null);
56
+ const walletAvailableRef = (0, import_react.useRef)(null);
57
+ const walletBestValueFoundRef = (0, import_react.useRef)(null);
58
+ const [isViewDetail, setIsViewDetail] = (0, import_react.useState)(false);
59
+ const contentRef = (0, import_react.useRef)(null);
60
+ const [contentHeight, setContentHeight] = (0, import_react.useState)(0);
61
+ (0, import_react.useEffect)(() => {
62
+ if (contentRef.current) {
63
+ const scrollHeight = contentRef.current.scrollHeight;
64
+ setContentHeight(isViewDetail ? scrollHeight : 0);
65
+ }
66
+ }, [isViewDetail, (_a = payGroup == null ? void 0 : payGroup.walletPass) == null ? void 0 : _a.cards]);
45
67
  const handleClick = () => {
46
68
  var _a2;
69
+ setIsViewDetail(false);
47
70
  (_a2 = walletPassRef.current) == null ? void 0 : _a2.init({ ...payGroup, customer_id });
48
71
  };
49
- const centerContentDesc = (0, import_react.useMemo)(() => {
50
- var _a2, _b, _c;
51
- if (!((_a2 = payGroup == null ? void 0 : payGroup.walletPass) == null ? void 0 : _a2.amount) || ((_b = payGroup == null ? void 0 : payGroup.walletPass) == null ? void 0 : _b.amount) == 0) {
52
- return import_utils.locales.getText("tocPay.text.walletCanPay");
53
- } else {
54
- return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, import_utils.locales.getText("tocPay.text.congrats"), " ", /* @__PURE__ */ import_react.default.createElement(
55
- import_materials.PisellText.Amount,
56
- {
57
- value: (_c = payGroup == null ? void 0 : payGroup.walletPass) == null ? void 0 : _c.amount,
58
- className: "price"
59
- }
60
- ), " ", import_utils.locales.getText("tocPay.text.creditHaveBeen"));
72
+ const hasNoWalletPassAmount = (0, import_react.useMemo)(() => {
73
+ var _a2, _b2;
74
+ return !((_a2 = payGroup == null ? void 0 : payGroup.walletPass) == null ? void 0 : _a2.amount) || ((_b2 = payGroup == null ? void 0 : payGroup.walletPass) == null ? void 0 : _b2.amount) == 0;
75
+ }, [(_b = payGroup == null ? void 0 : payGroup.walletPass) == null ? void 0 : _b.amount]);
76
+ (0, import_react.useImperativeHandle)(ref, () => ({
77
+ open: () => {
78
+ var _a2, _b2;
79
+ if (hasNoWalletPassAmount) {
80
+ (_a2 = walletAvailableRef.current) == null ? void 0 : _a2.open();
81
+ } else {
82
+ (_b2 = walletBestValueFoundRef.current) == null ? void 0 : _b2.open();
83
+ }
61
84
  }
62
- }, [(_a = payGroup == null ? void 0 : payGroup.walletPass) == null ? void 0 : _a.amount]);
85
+ }));
86
+ const handleViewDetail = (e) => {
87
+ e.stopPropagation();
88
+ setIsViewDetail(!isViewDetail);
89
+ };
90
+ const handleUnused = () => {
91
+ onWalletPassChange == null ? void 0 : onWalletPassChange({
92
+ cards: [],
93
+ amount: 0
94
+ });
95
+ };
63
96
  return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement("div", { ...others, className: (0, import_classnames.default)("wallet-pass-wrap", className) }, /* @__PURE__ */ import_react.default.createElement("div", { className: "wallet-pass-title" }, import_utils.locales.getText("tocPay.text.howToPay")), /* @__PURE__ */ import_react.default.createElement(
64
97
  import_materials.PisellRow,
65
98
  {
66
99
  className: "wallet-pass-card",
67
- centerContent: /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement("div", { className: "wallet-pass-card-title" }, import_utils.locales.getText("tocPay.text.walletPass")), /* @__PURE__ */ import_react.default.createElement("div", { className: "wallet-pass-card-desc" }, centerContentDesc), /* @__PURE__ */ import_react.default.createElement(
100
+ centerContent: /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement("div", { className: "wallet-pass-card-title" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "wallet-pass-card-title-left" }, /* @__PURE__ */ import_react.default.createElement(
101
+ import_materials.Icon,
102
+ {
103
+ type: "pisell2-a-wallet-021",
104
+ className: "wallet-pass-card-title-left-icon"
105
+ }
106
+ ), walletSetting.name), walletSetting.popup_status === 1 && /* @__PURE__ */ import_react.default.createElement("div", { className: "wallet-pass-card-title-right" }, /* @__PURE__ */ import_react.default.createElement("span", { className: "wallet-pass-card-title-right-amount" }, "-", /* @__PURE__ */ import_react.default.createElement(import_materials.PisellText.Amount, { value: (_c = payGroup == null ? void 0 : payGroup.walletPass) == null ? void 0 : _c.amount })), /* @__PURE__ */ import_react.default.createElement(import_icons.CaretRightOutlined, { className: "wallet-pass-card-title-right-icon" }))), walletSetting.popup_status === 0 && /* @__PURE__ */ import_react.default.createElement("div", { className: "wallet-pass-card-desc-wrap" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "wallet-pass-card-desc" }, hasNoWalletPassAmount ? import_utils.locales.getText(
107
+ "tocPay.text.hasNoWalletPassAmount"
108
+ ) : import_utils.locales.getText("tocPay.text.bestValueFound")), !hasNoWalletPassAmount && /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement("div", { className: "wallet-pass-card-total-savings" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "wallet-pass-card-total-savings-title" }, /* @__PURE__ */ import_react.default.createElement("span", { className: "wallet-pass-card-total-savings-title-left" }, import_utils.locales.getText("tocPay.text.totalSavings"), ":", /* @__PURE__ */ import_react.default.createElement(
109
+ import_materials.PisellText.Amount,
110
+ {
111
+ value: (_d = payGroup == null ? void 0 : payGroup.walletPass) == null ? void 0 : _d.amount
112
+ }
113
+ )), /* @__PURE__ */ import_react.default.createElement(
114
+ "span",
115
+ {
116
+ className: "wallet-pass-card-total-savings-title-right",
117
+ onClick: handleViewDetail
118
+ },
119
+ import_utils.locales.getText("tocPay.text.viewDetail"),
120
+ /* @__PURE__ */ import_react.default.createElement(
121
+ import_materials.Icon,
122
+ {
123
+ type: "pisell2-chevron-down",
124
+ className: (0, import_classnames.default)(
125
+ "wallet-pass-card-total-savings-title-right-icon",
126
+ {
127
+ "is-rotate": isViewDetail
128
+ }
129
+ )
130
+ }
131
+ )
132
+ )), /* @__PURE__ */ import_react.default.createElement(
133
+ "div",
134
+ {
135
+ ref: contentRef,
136
+ className: "wallet-pass-card-total-savings-desc",
137
+ style: { height: contentHeight }
138
+ },
139
+ /* @__PURE__ */ import_react.default.createElement(import_WalletUseList.default, { walletPass: ((_e = payGroup == null ? void 0 : payGroup.walletPass) == null ? void 0 : _e.cards) || [] })
140
+ ))), /* @__PURE__ */ import_react.default.createElement(
68
141
  import_materials.Button,
69
142
  {
70
143
  size: "large",
71
144
  className: "wallet-pass-card-to-use",
145
+ type: "primary",
146
+ block: true,
72
147
  rightIcon: /* @__PURE__ */ import_react.default.createElement(
73
148
  import_materials.Iconfont,
74
149
  {
@@ -77,8 +152,10 @@ var WalletPassBlock = (props) => {
77
152
  }
78
153
  )
79
154
  },
80
- import_utils.locales.getText("tocPay.text.toUse")
81
- )),
155
+ import_utils.locales.getText(
156
+ hasNoWalletPassAmount ? "tocPay.text.useWalletPass" : "tocPay.text.editWalletPass"
157
+ )(walletSetting.name)
158
+ ))),
82
159
  padding: 16,
83
160
  gap: 4,
84
161
  onClick: handleClick
@@ -87,9 +164,27 @@ var WalletPassBlock = (props) => {
87
164
  import_WalletPass.default,
88
165
  {
89
166
  ref: walletPassRef,
167
+ walletSetting,
90
168
  onWalletPassChange,
91
169
  walletPass: payGroup == null ? void 0 : payGroup.walletPass
92
170
  }
171
+ ), /* @__PURE__ */ import_react.default.createElement(
172
+ import_WalletAvailable.default,
173
+ {
174
+ ref: walletAvailableRef,
175
+ walletSetting,
176
+ payGroup,
177
+ onOk: handleClick
178
+ }
179
+ ), /* @__PURE__ */ import_react.default.createElement(
180
+ import_WalletBestValueFound.default,
181
+ {
182
+ ref: walletBestValueFoundRef,
183
+ walletSetting,
184
+ payGroup,
185
+ onEdit: handleClick,
186
+ onUnused: handleUnused
187
+ }
93
188
  ));
94
189
  };
95
- var WalletPassBlock_default = WalletPassBlock;
190
+ var WalletPassBlock_default = (0, import_react.forwardRef)(WalletPassBlock);
@@ -4,11 +4,12 @@
4
4
  margin-top: 8px;
5
5
  .wallet-pass-card-icon {
6
6
  font-size: 20px;
7
- color: #344054;
7
+ color: #fff;
8
8
  }
9
9
  & > span {
10
10
  display: flex;
11
11
  align-items: center;
12
+ justify-content: center;
12
13
  }
13
14
  }
14
15
 
@@ -23,27 +24,45 @@
23
24
  .wallet-pass-card {
24
25
  margin-top: 20px;
25
26
  border-radius: 12px;
26
- border: 1px solid var(--Gray-400, #98A2B3);
27
- background: var(--Base-White, #FFF);
27
+ border: 1px solid var(--Gray-400, #98a2b3);
28
+ background: var(--Base-White, #fff);
29
+ .pisell-row-center {
30
+ width: 100%;
31
+ }
28
32
 
29
33
  .wallet-pass-card-title {
34
+ display: flex;
35
+ justify-content: space-between;
30
36
  color: var(--Gray-900, #101828);
31
37
  font-size: 16px;
32
- font-style: normal;
33
38
  font-weight: 600;
34
39
  line-height: 20px;
40
+ gap: 6px;
41
+ .wallet-pass-card-title-left {
42
+ display: flex;
43
+ align-items: center;
44
+ gap: 6px;
45
+ .wallet-pass-card-title-left-icon {
46
+ font-size: 22px;
47
+ }
48
+ }
49
+ .wallet-pass-card-title-right {
50
+ display: flex;
51
+ align-items: center;
52
+ gap: 6px;
53
+ flex-shrink: 0;
54
+ .wallet-pass-card-title-right-icon {
55
+ font-size: 14px;
56
+ }
57
+ }
35
58
  }
36
59
 
37
60
  .wallet-pass-card-desc {
38
- color: var(--Gray-600, #101828);
61
+ color: #757575;
39
62
  font-size: 14px;
40
- font-style: normal;
41
- font-weight: 400;
42
- line-height: 20px;
43
-
44
- .price {
45
- color: var(--theme-color, #7F56D9);
46
- }
63
+ font-weight: 500;
64
+ line-height: 20px; /* 142.857% */
65
+ margin: 4px 0 0;
47
66
  }
48
67
 
49
68
  //.wallet-pass-card-icon {
@@ -73,4 +92,54 @@
73
92
  line-height: 24px;
74
93
  /* 150% */
75
94
  }
76
- }
95
+
96
+ .wallet-pass-card-desc-wrap {
97
+ .wallet-pass-card-total-savings {
98
+ .wallet-pass-card-total-savings-title {
99
+ display: flex;
100
+ align-items: center;
101
+ justify-content: space-between;
102
+ .wallet-pass-card-total-savings-title-left {
103
+ color: #009951;
104
+ font-size: 16px;
105
+ font-weight: 600;
106
+ line-height: 28px; /* 175% */
107
+ }
108
+ .wallet-pass-card-total-savings-title-right {
109
+ display: flex;
110
+ align-items: center;
111
+ gap: 4px;
112
+ color: #757575;
113
+ font-size: 12px;
114
+ font-weight: 400;
115
+ line-height: 20px; /* 166.667% */
116
+ padding: 7px 0 7px 0px;
117
+ .wallet-pass-card-total-savings-title-right-icon {
118
+ font-size: 18px;
119
+ color: #344054;
120
+ transition: transform 0.3s ease;
121
+
122
+ &.is-rotate {
123
+ transform: rotate(180deg);
124
+ }
125
+ }
126
+ }
127
+ }
128
+
129
+ .wallet-pass-card-total-savings-desc {
130
+ overflow: hidden;
131
+ opacity: 0;
132
+ transition: all 0.3s ease-in-out;
133
+ will-change: height, opacity;
134
+
135
+ &[style*="height: 0"] {
136
+ opacity: 0;
137
+ }
138
+
139
+ &:not([style*="height: 0"]) {
140
+ opacity: 1;
141
+ }
142
+ }
143
+ }
144
+ }
145
+ }
@@ -51,7 +51,7 @@ var import_locales = __toESM(require("./locales"));
51
51
  var import_utils3 = require("./utils");
52
52
  var import_index = require("./index.less");
53
53
  var ToCPay = (props, ref) => {
54
- var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q;
54
+ var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q, _r, _s, _t;
55
55
  const { state, dispatch } = (0, import_react.useContext)(import_model.Context);
56
56
  const paymentListRef = (0, import_react.useRef)();
57
57
  const paymentMethodsRef = (0, import_react.useRef)();
@@ -59,13 +59,15 @@ var ToCPay = (props, ref) => {
59
59
  const [submitLoading, setSubmitLoading] = (0, import_react.useState)(false);
60
60
  const [open, setOpen] = (0, import_react.useState)(false);
61
61
  const [renderType, setRenderType] = (0, import_react.useState)("modal");
62
+ const walletPassBlockRef = (0, import_react.useRef)(null);
62
63
  const context = (0, import_useEngineContext.default)();
63
64
  const [showInformation, setShowInformation] = (0, import_react.useState)(false);
64
65
  const [showDetectIncognitoConfirm, setShowDetectIncognitoConfirm] = (0, import_react.useState)(false);
65
66
  const utils = context.appHelper.utils || {};
66
67
  const dvaStore = (_c = (_b = (_a = context.appHelper.utils) == null ? void 0 : _a.getStore) == null ? void 0 : _b.call(_a)) == null ? void 0 : _c.getState();
67
68
  const customer_id = (_i = (_h = (_g = (_f = (_e = (_d = context.appHelper.utils) == null ? void 0 : _d.getStore()) == null ? void 0 : _e.getState) == null ? void 0 : _f.call(_e)) == null ? void 0 : _g.global) == null ? void 0 : _h.userInfo) == null ? void 0 : _i.id;
68
- import_utils.locales.init(import_locales.default, ((_j = dvaStore.core) == null ? void 0 : _j.translateLocale) || "en");
69
+ const shopName = (_l = (_k = (_j = dvaStore.core) == null ? void 0 : _j.core) == null ? void 0 : _k.shop) == null ? void 0 : _l.name;
70
+ import_utils.locales.init(import_locales.default, ((_m = dvaStore.core) == null ? void 0 : _m.translateLocale) || "en");
69
71
  import_utils2.request.setRequest(utils == null ? void 0 : utils.request);
70
72
  const _initStore = (initProps) => {
71
73
  var _a2, _b2, _c2, _d2;
@@ -88,6 +90,27 @@ var ToCPay = (props, ref) => {
88
90
  }
89
91
  });
90
92
  };
93
+ const getWalletSetting = async (initProps) => {
94
+ var _a2, _b2;
95
+ const sale_channel = ((_a2 = initProps == null ? void 0 : initProps.order) == null ? void 0 : _a2.sale_channel) || "online-store";
96
+ const { wallet, wallet_setting } = await (0, import_serve.getWalletNameAndPopupStatus)({
97
+ setting_type: `${sale_channel}-wallet-setting`
98
+ });
99
+ const setting = {
100
+ name: ((_b2 = utils == null ? void 0 : utils.translation) == null ? void 0 : _b2.call(utils, wallet == null ? void 0 : wallet.name)) || import_utils.locales.getText("tocPay.text.walletName")(shopName),
101
+ popup_status: (wallet_setting == null ? void 0 : wallet_setting.popup_status) ?? 1
102
+ };
103
+ if (setting.popup_status === 1) {
104
+ setTimeout(() => {
105
+ var _a3;
106
+ (_a3 = walletPassBlockRef.current) == null ? void 0 : _a3.open();
107
+ });
108
+ }
109
+ dispatch({
110
+ type: "setWalletSetting",
111
+ payload: setting
112
+ });
113
+ };
91
114
  const init = async (initProps) => {
92
115
  const { renderType: renderType2 } = initProps;
93
116
  setRenderType(renderType2 ?? "modal");
@@ -97,6 +120,7 @@ var ToCPay = (props, ref) => {
97
120
  _initStore(initProps);
98
121
  (0, import_payGroup.removePayGroupFromStorage)(initProps.order.order_id);
99
122
  await _getPaymentsAndWalletPass(initProps.order);
123
+ await getWalletSetting(initProps);
100
124
  };
101
125
  const _getPaymentsAndWalletPass = async (order) => {
102
126
  var _a2, _b2;
@@ -193,7 +217,7 @@ var ToCPay = (props, ref) => {
193
217
  const waitAmount = (0, import_react.useMemo)(() => {
194
218
  var _a2;
195
219
  return ((_a2 = state.payGroup) == null ? void 0 : _a2.wait_amount) || 0;
196
- }, [(_k = state.payGroup) == null ? void 0 : _k.wait_amount]);
220
+ }, [(_n = state.payGroup) == null ? void 0 : _n.wait_amount]);
197
221
  const isWalletPassPay = (0, import_react.useMemo)(() => {
198
222
  var _a2, _b2, _c2;
199
223
  const isWalletPass = (_c2 = (_b2 = (_a2 = state.payGroup) == null ? void 0 : _a2.walletPass) == null ? void 0 : _b2.cards) == null ? void 0 : _c2.length;
@@ -267,7 +291,7 @@ var ToCPay = (props, ref) => {
267
291
  (_b2 = paymentListRef.current) == null ? void 0 : _b2.calculateSurcharge(
268
292
  ((_a2 = state.payGroup) == null ? void 0 : _a2.wait_amount) || 0
269
293
  );
270
- }, [(_l = state.payGroup) == null ? void 0 : _l.wait_amount]);
294
+ }, [(_o = state.payGroup) == null ? void 0 : _o.wait_amount]);
271
295
  (0, import_react.useImperativeHandle)(ref, () => {
272
296
  return {
273
297
  init,
@@ -381,14 +405,16 @@ var ToCPay = (props, ref) => {
381
405
  loading,
382
406
  mask: true
383
407
  },
384
- ((_m = state.order) == null ? void 0 : _m.countdown) && /* @__PURE__ */ import_react.default.createElement(import_PayCountdown.default, { time: (_n = state.order) == null ? void 0 : _n.countdown }),
385
- /* @__PURE__ */ import_react.default.createElement(import_PayAmount.default, { amount: ((_o = state.payGroup) == null ? void 0 : _o.total_amount) || 0 }),
386
- ((_p = state.payGroup) == null ? void 0 : _p.walletPass) && /* @__PURE__ */ import_react.default.createElement(
408
+ ((_p = state.order) == null ? void 0 : _p.countdown) && /* @__PURE__ */ import_react.default.createElement(import_PayCountdown.default, { time: (_q = state.order) == null ? void 0 : _q.countdown }),
409
+ /* @__PURE__ */ import_react.default.createElement(import_PayAmount.default, { amount: ((_r = state.payGroup) == null ? void 0 : _r.total_amount) || 0 }),
410
+ ((_s = state.payGroup) == null ? void 0 : _s.walletPass) && /* @__PURE__ */ import_react.default.createElement(
387
411
  import_WalletPassBlock.default,
388
412
  {
389
413
  customer_id,
390
414
  payGroup: state.payGroup,
391
- onWalletPassChange
415
+ onWalletPassChange,
416
+ ref: walletPassBlockRef,
417
+ walletSetting: state.walletSetting
392
418
  }
393
419
  ),
394
420
  /* @__PURE__ */ import_react.default.createElement(
@@ -399,7 +425,7 @@ var ToCPay = (props, ref) => {
399
425
  handlePaymentByType(detail == null ? void 0 : detail.service);
400
426
  },
401
427
  paymentTypeChange,
402
- hide: ((_q = state.payGroup) == null ? void 0 : _q.wait_amount) == 0,
428
+ hide: ((_t = state.payGroup) == null ? void 0 : _t.wait_amount) == 0,
403
429
  renderTitle: renderPaymentListTitle
404
430
  }
405
431
  )
@@ -60,7 +60,7 @@ declare const _default: {
60
60
  'tocPay.text.scanBarQrCode': string;
61
61
  'tocPay.text.enterCodes': string;
62
62
  'tocPay.text.searchDescribe': string;
63
- 'tocPay.text.walletPassEmpty': string;
63
+ 'tocPay.text.walletPassEmpty': (walletName: string) => string;
64
64
  'tocPay.text.walletPassDisabled': string;
65
65
  'tocPay.text.walletPassPermanent': string;
66
66
  'tocPay.text.walletPassCompleteTitle': string;
@@ -71,6 +71,28 @@ declare const _default: {
71
71
  'tocPay.text.detectIncognitoConfirm': string;
72
72
  'tocPay.text.copyLink': string;
73
73
  'tocPay.text.copySuccess': string;
74
+ 'tocPay.text.walletName': (shopName: string) => string;
75
+ 'tocPay.text.bestValueFound': string;
76
+ 'tocPay.text.welcomeToUseWalletPass': (walletName: string) => string;
77
+ 'tocPay.text.totalSavings': string;
78
+ 'tocPay.text.bestCombination': (walletName: string) => string;
79
+ 'tocPay.text.recommended': string;
80
+ 'tocPay.text.edit': string;
81
+ 'tocPay.text.confirm': string;
82
+ 'tocPay.text.unusedAndContinueToPayment': string;
83
+ 'tocPay.text.walletPassAvailable': (walletName: string) => string;
84
+ 'tocPay.text.useWalletPass': (walletName: string) => string;
85
+ 'tocPay.text.useWalletPassAdd': (walletName: string) => string;
86
+ 'tocPay.text.editWalletPass': (walletName: string) => string;
87
+ 'tocPay.text.skipAndContinueToPayment': string;
88
+ 'tocPay.text.youMightHaveAnEligibleWalletPass': (walletName: string) => string;
89
+ 'tocPay.text.checkIfYouHaveAnyPointsCardRechargableCardOrVouchersToUse': string;
90
+ 'tocPay.text.addPointsCard': string;
91
+ 'tocPay.text.hasNoWalletPassAmount': string;
92
+ 'tocPay.text.multipleSelectionAvailable': string;
93
+ 'tocPay.text.youCanSelectMultipleWalletPassesToCombineForPayment': (walletName: string) => string;
94
+ 'tocPay.text.bestValueCombination': string;
95
+ 'tocPay.text.viewDetail': string;
74
96
  };
75
97
  'zh-CN': {
76
98
  'tocPay.text.checkout': string;
@@ -133,7 +155,7 @@ declare const _default: {
133
155
  'tocPay.text.scanBarQrCode': string;
134
156
  'tocPay.text.enterCodes': string;
135
157
  'tocPay.text.searchDescribe': string;
136
- 'tocPay.text.walletPassEmpty': string;
158
+ 'tocPay.text.walletPassEmpty': (walletName: string) => string;
137
159
  'tocPay.text.walletPassDisabled': string;
138
160
  'tocPay.text.walletPassPermanent': string;
139
161
  'tocPay.text.walletPassCompleteTitle': string;
@@ -143,6 +165,28 @@ declare const _default: {
143
165
  'tocPay.text.detectIncognitoConfirm': string;
144
166
  'tocPay.text.copyLink': string;
145
167
  'tocPay.text.copySuccess': string;
168
+ 'tocPay.text.walletName': (shopName: string) => string;
169
+ 'tocPay.text.bestValueFound': string;
170
+ 'tocPay.text.welcomeToUseWalletPass': (walletName: string) => string;
171
+ 'tocPay.text.totalSavings': string;
172
+ 'tocPay.text.bestCombination': (walletName: string) => string;
173
+ 'tocPay.text.recommended': string;
174
+ 'tocPay.text.edit': string;
175
+ 'tocPay.text.confirm': string;
176
+ 'tocPay.text.unusedAndContinueToPayment': string;
177
+ 'tocPay.text.walletPassAvailable': (walletName: string) => string;
178
+ 'tocPay.text.useWalletPass': (walletName: string) => string;
179
+ 'tocPay.text.useWalletPassAdd': (walletName: string) => string;
180
+ 'tocPay.text.editWalletPass': (walletName: string) => string;
181
+ 'tocPay.text.skipAndContinueToPayment': string;
182
+ 'tocPay.text.youMightHaveAnEligibleWalletPass': (walletName: string) => string;
183
+ 'tocPay.text.checkIfYouHaveAnyPointsCardRechargableCardOrVouchersToUse': string;
184
+ 'tocPay.text.addPointsCard': string;
185
+ 'tocPay.text.hasNoWalletPassAmount': string;
186
+ 'tocPay.text.multipleSelectionAvailable': string;
187
+ 'tocPay.text.youCanSelectMultipleWalletPassesToCombineForPayment': (walletName: string) => string;
188
+ 'tocPay.text.bestValueCombination': string;
189
+ 'tocPay.text.viewDetail': string;
146
190
  };
147
191
  'zh-HK': {
148
192
  'tocPay.text.checkout': string;
@@ -205,7 +249,7 @@ declare const _default: {
205
249
  'tocPay.text.scanBarQrCode': string;
206
250
  'tocPay.text.enterCodes': string;
207
251
  'tocPay.text.searchDescribe': string;
208
- 'tocPay.text.walletPassEmpty': string;
252
+ 'tocPay.text.walletPassEmpty': (walletName: string) => string;
209
253
  'tocPay.text.walletPassDisabled': string;
210
254
  'tocPay.text.walletPassPermanent': string;
211
255
  'tocPay.text.walletPassCompleteTitle': string;
@@ -215,6 +259,28 @@ declare const _default: {
215
259
  'tocPay.text.detectIncognitoConfirm': string;
216
260
  'tocPay.text.copyLink': string;
217
261
  'tocPay.text.copySuccess': string;
262
+ 'tocPay.text.walletName': (shopName: string) => string;
263
+ 'tocPay.text.bestValueFound': string;
264
+ 'tocPay.text.welcomeToUseWalletPass': (walletName: string) => string;
265
+ 'tocPay.text.totalSavings': string;
266
+ 'tocPay.text.bestCombination': (walletName: string) => string;
267
+ 'tocPay.text.recommended': string;
268
+ 'tocPay.text.edit': string;
269
+ 'tocPay.text.confirm': string;
270
+ 'tocPay.text.unusedAndContinueToPayment': string;
271
+ 'tocPay.text.walletPassAvailable': (walletName: string) => string;
272
+ 'tocPay.text.useWalletPass': (walletName: string) => string;
273
+ 'tocPay.text.useWalletPassAdd': (walletName: string) => string;
274
+ 'tocPay.text.editWalletPass': (walletName: string) => string;
275
+ 'tocPay.text.skipAndContinueToPayment': string;
276
+ 'tocPay.text.youMightHaveAnEligibleWalletPass': (walletName: string) => string;
277
+ 'tocPay.text.checkIfYouHaveAnyPointsCardRechargableCardOrVouchersToUse': string;
278
+ 'tocPay.text.addPointsCard': string;
279
+ 'tocPay.text.hasNoWalletPassAmount': string;
280
+ 'tocPay.text.multipleSelectionAvailable': string;
281
+ 'tocPay.text.youCanSelectMultipleWalletPassesToCombineForPayment': (walletName: string) => string;
282
+ 'tocPay.text.bestValueCombination': string;
283
+ 'tocPay.text.viewDetail': string;
218
284
  };
219
285
  };
220
286
  export default _default;
@@ -84,7 +84,7 @@ var locales_default = {
84
84
  "tocPay.text.scanBarQrCode": "Scan Bar/QR code",
85
85
  "tocPay.text.enterCodes": "Enter codes",
86
86
  "tocPay.text.searchDescribe": "Please enter code or encode",
87
- "tocPay.text.walletPassEmpty": "No cards available. Please scan or search for cards.",
87
+ "tocPay.text.walletPassEmpty": (walletName) => `No ${walletName}`,
88
88
  "tocPay.text.walletPassDisabled": "Disabled",
89
89
  "tocPay.text.walletPassPermanent": "Permanent",
90
90
  "tocPay.text.walletPassCompleteTitle": "Please click ‘Submit’ button at the bottom to complete",
@@ -94,7 +94,29 @@ var locales_default = {
94
94
  "tocPay.text.walletSearchEmpty": "No results found.",
95
95
  "tocPay.text.detectIncognitoConfirm": "You are currently in private mode, wallet payment may not succeed. Please copy the link and continue payment in a non-private browsing tab.",
96
96
  "tocPay.text.copyLink": "Copy link",
97
- "tocPay.text.copySuccess": "Copy Success"
97
+ "tocPay.text.copySuccess": "Copy Success",
98
+ "tocPay.text.walletName": (shopName) => `${shopName}'s wallet`,
99
+ "tocPay.text.bestValueFound": "Best wallet combination for you!",
100
+ "tocPay.text.welcomeToUseWalletPass": (walletName) => `Welcome to use ${walletName}`,
101
+ "tocPay.text.totalSavings": "Total savings",
102
+ "tocPay.text.bestCombination": (walletName) => `Best combination of your available ${walletName} options`,
103
+ "tocPay.text.recommended": "Recommended",
104
+ "tocPay.text.edit": "Edit",
105
+ "tocPay.text.confirm": "Confirm",
106
+ "tocPay.text.unusedAndContinueToPayment": "Unused and continue to payment",
107
+ "tocPay.text.walletPassAvailable": (walletName) => `You have no valid ${walletName}`,
108
+ "tocPay.text.useWalletPass": (walletName) => `Go to ${walletName}`,
109
+ "tocPay.text.useWalletPassAdd": (walletName) => `Go to ${walletName}`,
110
+ "tocPay.text.editWalletPass": (walletName) => `Change Combination`,
111
+ "tocPay.text.skipAndContinueToPayment": "Skip and continue to payment",
112
+ "tocPay.text.youMightHaveAnEligibleWalletPass": (walletName) => `You might have an eligible ${walletName}`,
113
+ "tocPay.text.checkIfYouHaveAnyPointsCardRechargableCardOrVouchersToUse": "Check if you have any Points Card, Rechargable Card , or Vouchers to use",
114
+ "tocPay.text.addPointsCard": "Add points card, rechargable card, or vouchers if have any in hand.",
115
+ "tocPay.text.hasNoWalletPassAmount": "View points card, rechargable card, or vouchers options",
116
+ "tocPay.text.multipleSelectionAvailable": "Multiple selection available",
117
+ "tocPay.text.youCanSelectMultipleWalletPassesToCombineForPayment": (walletName) => `You can select multiple ${walletName} to combine for payment`,
118
+ "tocPay.text.bestValueCombination": "Best value combination",
119
+ "tocPay.text.viewDetail": "View detail"
98
120
  },
99
121
  "zh-CN": {
100
122
  "tocPay.text.checkout": "结账",
@@ -157,7 +179,7 @@ var locales_default = {
157
179
  "tocPay.text.scanBarQrCode": "扫描条形码/二维码",
158
180
  "tocPay.text.enterCodes": "输入编码",
159
181
  "tocPay.text.searchDescribe": "请输入卡片编码或发行编码",
160
- "tocPay.text.walletPassEmpty": "没有可使用的卡片,请扫描或搜索卡片",
182
+ "tocPay.text.walletPassEmpty": (walletName) => `没有可使用的${walletName}`,
161
183
  "tocPay.text.walletPassDisabled": "不可用",
162
184
  "tocPay.text.walletPassPermanent": "永久有效",
163
185
  "tocPay.text.walletPassCompleteTitle": "请点击底部的“提交”按钮完成支付",
@@ -166,7 +188,29 @@ var locales_default = {
166
188
  "tocPay.text.walletSearchEmpty": "没有查询到任何结果。",
167
189
  "tocPay.text.detectIncognitoConfirm": "当前处于无痕模式,钱包支付可能失败,请复制链接在非无痕模式下继续支付。",
168
190
  "tocPay.text.copyLink": "复制链接",
169
- "tocPay.text.copySuccess": "复制成功"
191
+ "tocPay.text.copySuccess": "复制成功",
192
+ "tocPay.text.walletName": (shopName) => `${shopName}钱包`,
193
+ "tocPay.text.bestValueFound": "找到最佳组合选择!",
194
+ "tocPay.text.welcomeToUseWalletPass": (walletName) => `欢迎使用${walletName}`,
195
+ "tocPay.text.totalSavings": "总节省",
196
+ "tocPay.text.bestCombination": (walletName) => `可用${walletName}选项的最佳组合`,
197
+ "tocPay.text.recommended": "推荐",
198
+ "tocPay.text.edit": "编辑",
199
+ "tocPay.text.confirm": "确认",
200
+ "tocPay.text.unusedAndContinueToPayment": "不使用并继续付款",
201
+ "tocPay.text.walletPassAvailable": (walletName) => `暂无${walletName}可用`,
202
+ "tocPay.text.useWalletPass": (walletName) => `前往${walletName}`,
203
+ "tocPay.text.useWalletPassAdd": (walletName) => `前往${walletName}添加`,
204
+ "tocPay.text.editWalletPass": (walletName) => `修改优惠组合`,
205
+ "tocPay.text.skipAndContinueToPayment": "跳过并继续付款",
206
+ "tocPay.text.youMightHaveAnEligibleWalletPass": (walletName) => `您可能拥有符合条件的${walletName}`,
207
+ "tocPay.text.checkIfYouHaveAnyPointsCardRechargableCardOrVouchersToUse": "检查您是否有积分卡、充值卡或代金券可供使用",
208
+ "tocPay.text.addPointsCard": "如您有任何优惠券、储值卡、积分卡",
209
+ "tocPay.text.hasNoWalletPassAmount": "点击查看可激活的储值、积分、代金券选项",
210
+ "tocPay.text.multipleSelectionAvailable": "可多选",
211
+ "tocPay.text.youCanSelectMultipleWalletPassesToCombineForPayment": (walletName) => `您可以选择多个${walletName}进行组合付款`,
212
+ "tocPay.text.bestValueCombination": "最佳组合",
213
+ "tocPay.text.viewDetail": "查看详情"
170
214
  },
171
215
  "zh-HK": {
172
216
  "tocPay.text.checkout": "結帳",
@@ -229,7 +273,7 @@ var locales_default = {
229
273
  "tocPay.text.scanBarQrCode": "掃描條形碼/二維碼",
230
274
  "tocPay.text.enterCodes": "輸入編碼",
231
275
  "tocPay.text.searchDescribe": "請輸入卡片編碼或發行編碼",
232
- "tocPay.text.walletPassEmpty": "沒有可使用的卡片,請掃描或搜尋卡片",
276
+ "tocPay.text.walletPassEmpty": (walletName) => `沒有可使用的${walletName}`,
233
277
  "tocPay.text.walletPassDisabled": "不可用",
234
278
  "tocPay.text.walletPassPermanent": "永久有效",
235
279
  "tocPay.text.walletPassCompleteTitle": "請點擊底部的“提交”按鈕完成支付",
@@ -238,6 +282,28 @@ var locales_default = {
238
282
  "tocPay.text.walletSearchEmpty": "沒有查詢到任何結果。",
239
283
  "tocPay.text.detectIncognitoConfirm": "目前處於無痕模式,錢包支付可能失敗,請複製連結在非無痕模式下繼續支付。",
240
284
  "tocPay.text.copyLink": "復製链接",
241
- "tocPay.text.copySuccess": "復製成功"
285
+ "tocPay.text.copySuccess": "復製成功",
286
+ "tocPay.text.walletName": (shopName) => `${shopName}錢包`,
287
+ "tocPay.text.bestValueFound": "找到最佳組合選擇!",
288
+ "tocPay.text.welcomeToUseWalletPass": (walletName) => `歡迎使用${walletName}`,
289
+ "tocPay.text.totalSavings": "總節省",
290
+ "tocPay.text.bestCombination": (walletName) => `可用${walletName}選項的最佳組合`,
291
+ "tocPay.text.recommended": "推薦",
292
+ "tocPay.text.edit": "編輯",
293
+ "tocPay.text.confirm": "確認",
294
+ "tocPay.text.unusedAndContinueToPayment": "不使用並繼續付款",
295
+ "tocPay.text.walletPassAvailable": (walletName) => `暂无${walletName} 可用`,
296
+ "tocPay.text.useWalletPass": (walletName) => `前往${walletName}`,
297
+ "tocPay.text.useWalletPassAdd": (walletName) => `前往${walletName}添加`,
298
+ "tocPay.text.editWalletPass": (walletName) => `修改優惠組合`,
299
+ "tocPay.text.skipAndContinueToPayment": "跳過並繼續付款",
300
+ "tocPay.text.youMightHaveAnEligibleWalletPass": (walletName) => `您可能擁有符合條件的${walletName}`,
301
+ "tocPay.text.checkIfYouHaveAnyPointsCardRechargableCardOrVouchersToUse": "檢查您是否有積分卡、充值卡或代金券可供使用",
302
+ "tocPay.text.addPointsCard": "如您有任何优惠券、储值卡、积分卡",
303
+ "tocPay.text.hasNoWalletPassAmount": "點擊查看可激活的儲值、積分、代金券選項",
304
+ "tocPay.text.multipleSelectionAvailable": "可多選",
305
+ "tocPay.text.youCanSelectMultipleWalletPassesToCombineForPayment": (walletName) => `您可以選擇多個${walletName}進行組合付款`,
306
+ "tocPay.text.bestValueCombination": "最佳組合",
307
+ "tocPay.text.viewDetail": "查看詳情"
242
308
  }
243
309
  };
@@ -5,6 +5,10 @@ export interface FormState {
5
5
  payCallback: (res?: any) => void;
6
6
  history?: any;
7
7
  payGroup?: PayGroup;
8
+ walletSetting: {
9
+ name: string;
10
+ popup_status: 0 | 1 | null;
11
+ };
8
12
  }
9
13
  export interface PayGroup {
10
14
  order_id?: string;