@pisell/private-materials 6.5.4 → 6.5.6

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 (249) 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 +160 -146
  7. package/build/lowcode/render/default/view.css +1 -1
  8. package/build/lowcode/render/default/view.js +9 -9
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +9 -9
  11. package/es/components/booking/addons/model.d.ts +1 -10
  12. package/es/components/booking/components/actionButtons/index.js +37 -42
  13. package/es/components/booking/components/actionButtons/index.less +0 -28
  14. package/es/components/booking/components/footer/amount.d.ts +3 -3
  15. package/es/components/booking/components/footer/amount.js +51 -31
  16. package/es/components/booking/components/footer/index.js +177 -68
  17. package/es/components/booking/components/footer/utils.js +62 -33
  18. package/es/components/booking/forms/model.d.ts +1 -10
  19. package/es/components/booking/info/model.d.ts +1 -10
  20. package/es/components/booking/info/model.js +5 -0
  21. package/es/components/booking/info/service/addService/index.js +2 -1
  22. package/es/components/booking/info/service/addService/utils.d.ts +1 -1
  23. package/es/components/booking/info/service2/utils.d.ts +1 -1
  24. package/es/components/booking/info2/index.js +42 -2
  25. package/es/components/booking/info2/service/addService/index.js +2 -1
  26. package/es/components/booking/info2/service/addService/utils.d.ts +1 -1
  27. package/es/components/booking/info2/service/editService/index.js +12 -4
  28. package/es/components/booking/model.d.ts +1 -9
  29. package/es/components/booking/notes/model.d.ts +1 -10
  30. package/es/components/booking/payments/model.d.ts +1 -10
  31. package/es/components/booking/utils.js +10 -5
  32. package/es/components/checkout/PaymentModal.d.ts +2 -0
  33. package/es/components/checkout/PaymentModal.js +462 -263
  34. package/es/components/checkout/components/AdditionalModule/index.less +1 -1
  35. package/es/components/checkout/components/AmountSummary/index.js +176 -65
  36. package/es/components/checkout/components/AmountSummary/index.less +13 -0
  37. package/es/components/checkout/components/CashPaymentModule/index.d.ts +5 -3
  38. package/es/components/checkout/components/CashPaymentModule/index.js +110 -132
  39. package/es/components/checkout/components/CashPaymentModule/index.less +200 -176
  40. package/es/components/checkout/components/PaymentDetailModal/index.js +2 -2
  41. package/es/components/checkout/components/PaymentOptionsModule/PaymentMethodItem.d.ts +29 -0
  42. package/es/components/checkout/components/PaymentOptionsModule/PaymentMethodItem.js +214 -0
  43. package/es/components/checkout/components/PaymentOptionsModule/index.d.ts +2 -4
  44. package/es/components/checkout/components/PaymentOptionsModule/index.js +12 -114
  45. package/es/components/checkout/components/PaymentOptionsModule/index.less +23 -0
  46. package/es/components/checkout/components/PaymentResultToast/index.js +38 -8
  47. package/es/components/checkout/components/PaymentResultToast/types.d.ts +2 -0
  48. package/es/components/checkout/components/SavePayLaterHandler/index.js +1 -1
  49. package/es/components/checkout/components/SearchAndClientModule/index.js +40 -39
  50. package/es/components/checkout/components/WalletPassModule/index.js +4 -3
  51. package/es/components/checkout/components/WalletPassModule/utils.js +10 -4
  52. package/es/components/checkout/hooks/useWalletPass.js +11 -4
  53. package/es/components/checkout/index.less +1 -1
  54. package/es/components/checkout/locales.d.ts +36 -0
  55. package/es/components/checkout/locales.js +43 -4
  56. package/es/components/checkout/types.d.ts +1 -0
  57. package/es/components/eftposPay/amount.d.ts +1 -1
  58. package/es/components/eftposPay/device.d.ts +1 -1
  59. package/es/components/eftposPay/hooks.d.ts +1 -1
  60. package/es/components/eftposPay/store/index.d.ts +3 -3
  61. package/es/components/pay/toC/model.d.ts +1 -9
  62. package/es/components/schedules/model.d.ts +1 -9
  63. package/es/components/shoppingCart/components/Cart/Product.js +143 -71
  64. package/es/components/shoppingCart/components/Cart/index.js +1 -1
  65. package/es/components/shoppingCart/components/Cart/index.less +31 -0
  66. package/es/components/shoppingCart/locales.d.ts +3 -0
  67. package/es/components/shoppingCart/locales.js +12 -3
  68. package/es/components/ticketBooking/components/addServiceVariant/addService.d.ts +0 -1
  69. package/es/components/ticketBooking/components/addServiceVariant/addService.js +9 -12
  70. package/es/components/ticketBooking/components/addServiceVariant/index.d.ts +0 -1
  71. package/es/components/ticketBooking/components/menuBar/index.js +3 -1
  72. package/es/components/ticketBooking/components/menuBar/index.less +7 -0
  73. package/es/components/ticketBooking/components/ticketBooking/index.d.ts +0 -1
  74. package/es/components/ticketBooking/hooks/pisellos/useCustomer.js +7 -7
  75. package/es/components/ticketBooking/index.d.ts +0 -1
  76. package/es/components/ticketBooking/utils/index.d.ts +1 -1
  77. package/es/components/ticketBooking/utils/index.js +2 -1
  78. package/es/components/wallet/Detail/model.d.ts +1 -13
  79. package/es/components/wallet/DiscountCard/model.d.ts +1 -14
  80. package/es/components/wallet/PointCard/model.d.ts +1 -13
  81. package/es/components/wallet/RechargeableCard/model.d.ts +1 -29
  82. package/es/components/wallet/Voucher/model.d.ts +1 -13
  83. package/es/components/wallet/model.d.ts +1 -9
  84. package/es/pro/pisellPriceKeyboardPopover/PisellPriceKeyboardPopover.js +1 -1
  85. package/es/pro/pisellSimplePriceKeyboardPopover/PisellPriceKeyboardPopover.d.ts +5 -0
  86. package/es/pro/pisellSimplePriceKeyboardPopover/PisellPriceKeyboardPopover.js +148 -0
  87. package/es/pro/pisellSimplePriceKeyboardPopover/PisellPriceKeyboardPopover.less +23 -0
  88. package/es/pro/pisellSimplePriceKeyboardPopover/index.d.ts +2 -0
  89. package/es/pro/pisellSimplePriceKeyboardPopover/index.js +1 -0
  90. package/es/pro/pisellSimplePriceKeyboardPopover/types.d.ts +33 -0
  91. package/es/pro/pisellSimplePriceKeyboardPopover/types.js +1 -0
  92. package/es/pro/priceKeyboard/components/cashKeyboard/CashKeyboardIntact.d.ts +5 -0
  93. package/es/pro/priceKeyboard/components/cashKeyboard/CashKeyboardIntact.js +331 -0
  94. package/es/pro/priceKeyboard/components/cashKeyboard/CashKeyboardSimple.d.ts +13 -0
  95. package/es/pro/priceKeyboard/components/cashKeyboard/CashKeyboardSimple.js +349 -0
  96. package/es/pro/priceKeyboard/components/cashKeyboard/index.d.ts +12 -0
  97. package/es/pro/priceKeyboard/components/cashKeyboard/index.js +49 -0
  98. package/es/pro/priceKeyboard/components/cashKeyboard/index.less +103 -0
  99. package/es/pro/priceKeyboard/components/cashKeyboard/locales.d.ts +39 -0
  100. package/es/pro/priceKeyboard/components/cashKeyboard/locales.js +41 -0
  101. package/es/pro/priceKeyboard/components/cashKeyboard/types.d.ts +97 -0
  102. package/es/pro/priceKeyboard/components/cashKeyboard/types.js +1 -0
  103. package/es/pro/priceKeyboard/components/discountKeyboard/index.d.ts +22 -0
  104. package/es/pro/priceKeyboard/components/discountKeyboard/index.js +465 -0
  105. package/es/pro/priceKeyboard/components/discountKeyboard/index.less +47 -0
  106. package/es/pro/priceKeyboard/components/discountKeyboard/locales.d.ts +42 -0
  107. package/es/pro/priceKeyboard/components/discountKeyboard/locales.js +44 -0
  108. package/es/pro/priceKeyboard/components/discountKeyboard/types.d.ts +17 -0
  109. package/es/pro/priceKeyboard/components/discountKeyboard/types.js +1 -0
  110. package/es/pro/priceKeyboard/components/paymentKeyboard/index.d.ts +12 -0
  111. package/es/pro/priceKeyboard/components/paymentKeyboard/index.js +444 -0
  112. package/es/pro/priceKeyboard/components/paymentKeyboard/index.less +64 -0
  113. package/es/pro/priceKeyboard/components/paymentKeyboard/locales.d.ts +45 -0
  114. package/es/pro/priceKeyboard/components/paymentKeyboard/locales.js +47 -0
  115. package/es/pro/priceKeyboard/components/paymentKeyboard/types.d.ts +39 -0
  116. package/es/pro/priceKeyboard/components/paymentKeyboard/types.js +1 -0
  117. package/es/pro/priceKeyboard/components/shortcuts/index.d.ts +17 -0
  118. package/es/pro/priceKeyboard/components/shortcuts/index.js +47 -0
  119. package/es/pro/priceKeyboard/components/shortcuts/index.less +39 -0
  120. package/es/pro/priceKeyboard/hooks/keyActions.d.ts +28 -0
  121. package/es/pro/priceKeyboard/hooks/keyActions.js +252 -0
  122. package/es/pro/priceKeyboard/hooks/rightItems.d.ts +28 -0
  123. package/es/pro/priceKeyboard/hooks/rightItems.js +50 -0
  124. package/es/pro/priceKeyboard/index.d.ts +3 -0
  125. package/es/pro/priceKeyboard/index.js +3 -0
  126. package/es/pro/priceKeyboard/index.less +215 -0
  127. package/es/pro/priceKeyboard/utils.d.ts +31 -0
  128. package/es/pro/priceKeyboard/utils.js +51 -0
  129. package/es/pro/skuDetailModal/index.js +19 -16
  130. package/lib/components/booking/addons/model.d.ts +1 -10
  131. package/lib/components/booking/components/actionButtons/index.js +31 -28
  132. package/lib/components/booking/components/actionButtons/index.less +0 -28
  133. package/lib/components/booking/components/footer/amount.d.ts +3 -3
  134. package/lib/components/booking/components/footer/amount.js +49 -34
  135. package/lib/components/booking/components/footer/index.js +114 -40
  136. package/lib/components/booking/components/footer/utils.js +35 -7
  137. package/lib/components/booking/forms/model.d.ts +1 -10
  138. package/lib/components/booking/info/model.d.ts +1 -10
  139. package/lib/components/booking/info/model.js +3 -0
  140. package/lib/components/booking/info/service/addService/index.js +2 -1
  141. package/lib/components/booking/info/service/addService/utils.d.ts +1 -1
  142. package/lib/components/booking/info/service2/utils.d.ts +1 -1
  143. package/lib/components/booking/info2/index.js +18 -1
  144. package/lib/components/booking/info2/service/addService/index.js +2 -1
  145. package/lib/components/booking/info2/service/addService/utils.d.ts +1 -1
  146. package/lib/components/booking/info2/service/editService/index.js +12 -4
  147. package/lib/components/booking/model.d.ts +1 -9
  148. package/lib/components/booking/notes/model.d.ts +1 -10
  149. package/lib/components/booking/payments/model.d.ts +1 -10
  150. package/lib/components/booking/utils.js +10 -5
  151. package/lib/components/checkout/PaymentModal.d.ts +2 -0
  152. package/lib/components/checkout/PaymentModal.js +208 -91
  153. package/lib/components/checkout/components/AdditionalModule/index.less +1 -1
  154. package/lib/components/checkout/components/AmountSummary/index.js +120 -50
  155. package/lib/components/checkout/components/AmountSummary/index.less +13 -0
  156. package/lib/components/checkout/components/CashPaymentModule/index.d.ts +5 -3
  157. package/lib/components/checkout/components/CashPaymentModule/index.js +101 -134
  158. package/lib/components/checkout/components/CashPaymentModule/index.less +200 -176
  159. package/lib/components/checkout/components/PaymentDetailModal/index.js +2 -2
  160. package/lib/components/checkout/components/PaymentOptionsModule/PaymentMethodItem.d.ts +29 -0
  161. package/lib/components/checkout/components/PaymentOptionsModule/PaymentMethodItem.js +163 -0
  162. package/lib/components/checkout/components/PaymentOptionsModule/index.d.ts +2 -4
  163. package/lib/components/checkout/components/PaymentOptionsModule/index.js +11 -123
  164. package/lib/components/checkout/components/PaymentOptionsModule/index.less +23 -0
  165. package/lib/components/checkout/components/PaymentResultToast/index.js +26 -1
  166. package/lib/components/checkout/components/PaymentResultToast/types.d.ts +2 -0
  167. package/lib/components/checkout/components/SavePayLaterHandler/index.js +1 -1
  168. package/lib/components/checkout/components/SearchAndClientModule/index.js +3 -29
  169. package/lib/components/checkout/components/WalletPassModule/index.js +4 -3
  170. package/lib/components/checkout/components/WalletPassModule/utils.js +8 -4
  171. package/lib/components/checkout/hooks/useWalletPass.js +11 -6
  172. package/lib/components/checkout/index.less +1 -1
  173. package/lib/components/checkout/locales.d.ts +36 -0
  174. package/lib/components/checkout/locales.js +43 -4
  175. package/lib/components/checkout/types.d.ts +1 -0
  176. package/lib/components/eftposPay/amount.d.ts +1 -1
  177. package/lib/components/eftposPay/device.d.ts +1 -1
  178. package/lib/components/eftposPay/hooks.d.ts +1 -1
  179. package/lib/components/eftposPay/store/index.d.ts +3 -3
  180. package/lib/components/pay/toC/model.d.ts +1 -9
  181. package/lib/components/schedules/model.d.ts +1 -9
  182. package/lib/components/shoppingCart/components/Cart/Product.js +111 -51
  183. package/lib/components/shoppingCart/components/Cart/index.js +1 -1
  184. package/lib/components/shoppingCart/components/Cart/index.less +31 -0
  185. package/lib/components/shoppingCart/locales.d.ts +3 -0
  186. package/lib/components/shoppingCart/locales.js +6 -3
  187. package/lib/components/ticketBooking/components/addServiceVariant/addService.d.ts +0 -1
  188. package/lib/components/ticketBooking/components/addServiceVariant/addService.js +1 -4
  189. package/lib/components/ticketBooking/components/addServiceVariant/index.d.ts +0 -1
  190. package/lib/components/ticketBooking/components/menuBar/index.js +1 -1
  191. package/lib/components/ticketBooking/components/menuBar/index.less +7 -0
  192. package/lib/components/ticketBooking/components/ticketBooking/index.d.ts +0 -1
  193. package/lib/components/ticketBooking/hooks/pisellos/useCustomer.js +7 -7
  194. package/lib/components/ticketBooking/index.d.ts +0 -1
  195. package/lib/components/ticketBooking/utils/index.d.ts +1 -1
  196. package/lib/components/ticketBooking/utils/index.js +2 -1
  197. package/lib/components/wallet/Detail/model.d.ts +1 -13
  198. package/lib/components/wallet/DiscountCard/model.d.ts +1 -14
  199. package/lib/components/wallet/PointCard/model.d.ts +1 -13
  200. package/lib/components/wallet/RechargeableCard/model.d.ts +1 -29
  201. package/lib/components/wallet/Voucher/model.d.ts +1 -13
  202. package/lib/components/wallet/model.d.ts +1 -9
  203. package/lib/pro/pisellPriceKeyboardPopover/PisellPriceKeyboardPopover.js +2 -2
  204. package/lib/pro/pisellSimplePriceKeyboardPopover/PisellPriceKeyboardPopover.d.ts +5 -0
  205. package/lib/pro/pisellSimplePriceKeyboardPopover/PisellPriceKeyboardPopover.js +144 -0
  206. package/lib/pro/pisellSimplePriceKeyboardPopover/PisellPriceKeyboardPopover.less +23 -0
  207. package/lib/pro/pisellSimplePriceKeyboardPopover/index.d.ts +2 -0
  208. package/lib/pro/pisellSimplePriceKeyboardPopover/index.js +35 -0
  209. package/lib/pro/pisellSimplePriceKeyboardPopover/types.d.ts +33 -0
  210. package/lib/pro/pisellSimplePriceKeyboardPopover/types.js +17 -0
  211. package/lib/pro/priceKeyboard/components/cashKeyboard/CashKeyboardIntact.d.ts +5 -0
  212. package/lib/pro/priceKeyboard/components/cashKeyboard/CashKeyboardIntact.js +360 -0
  213. package/lib/pro/priceKeyboard/components/cashKeyboard/CashKeyboardSimple.d.ts +13 -0
  214. package/lib/pro/priceKeyboard/components/cashKeyboard/CashKeyboardSimple.js +399 -0
  215. package/lib/pro/priceKeyboard/components/cashKeyboard/index.d.ts +12 -0
  216. package/lib/pro/priceKeyboard/components/cashKeyboard/index.js +76 -0
  217. package/lib/pro/priceKeyboard/components/cashKeyboard/index.less +103 -0
  218. package/lib/pro/priceKeyboard/components/cashKeyboard/locales.d.ts +39 -0
  219. package/lib/pro/priceKeyboard/components/cashKeyboard/locales.js +65 -0
  220. package/lib/pro/priceKeyboard/components/cashKeyboard/types.d.ts +97 -0
  221. package/lib/pro/priceKeyboard/components/cashKeyboard/types.js +17 -0
  222. package/lib/pro/priceKeyboard/components/discountKeyboard/index.d.ts +22 -0
  223. package/lib/pro/priceKeyboard/components/discountKeyboard/index.js +504 -0
  224. package/lib/pro/priceKeyboard/components/discountKeyboard/index.less +47 -0
  225. package/lib/pro/priceKeyboard/components/discountKeyboard/locales.d.ts +42 -0
  226. package/lib/pro/priceKeyboard/components/discountKeyboard/locales.js +68 -0
  227. package/lib/pro/priceKeyboard/components/discountKeyboard/types.d.ts +17 -0
  228. package/lib/pro/priceKeyboard/components/discountKeyboard/types.js +17 -0
  229. package/lib/pro/priceKeyboard/components/paymentKeyboard/index.d.ts +12 -0
  230. package/lib/pro/priceKeyboard/components/paymentKeyboard/index.js +488 -0
  231. package/lib/pro/priceKeyboard/components/paymentKeyboard/index.less +64 -0
  232. package/lib/pro/priceKeyboard/components/paymentKeyboard/locales.d.ts +45 -0
  233. package/lib/pro/priceKeyboard/components/paymentKeyboard/locales.js +71 -0
  234. package/lib/pro/priceKeyboard/components/paymentKeyboard/types.d.ts +39 -0
  235. package/lib/pro/priceKeyboard/components/paymentKeyboard/types.js +17 -0
  236. package/lib/pro/priceKeyboard/components/shortcuts/index.d.ts +17 -0
  237. package/lib/pro/priceKeyboard/components/shortcuts/index.js +79 -0
  238. package/lib/pro/priceKeyboard/components/shortcuts/index.less +39 -0
  239. package/lib/pro/priceKeyboard/hooks/keyActions.d.ts +28 -0
  240. package/lib/pro/priceKeyboard/hooks/keyActions.js +176 -0
  241. package/lib/pro/priceKeyboard/hooks/rightItems.d.ts +28 -0
  242. package/lib/pro/priceKeyboard/hooks/rightItems.js +81 -0
  243. package/lib/pro/priceKeyboard/index.d.ts +3 -0
  244. package/lib/pro/priceKeyboard/index.js +45 -0
  245. package/lib/pro/priceKeyboard/index.less +215 -0
  246. package/lib/pro/priceKeyboard/utils.d.ts +31 -0
  247. package/lib/pro/priceKeyboard/utils.js +75 -0
  248. package/lib/pro/skuDetailModal/index.js +18 -22
  249. package/package.json +12 -12
@@ -0,0 +1,163 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/components/checkout/components/PaymentOptionsModule/PaymentMethodItem.tsx
30
+ var PaymentMethodItem_exports = {};
31
+ __export(PaymentMethodItem_exports, {
32
+ default: () => PaymentMethodItem_default
33
+ });
34
+ module.exports = __toCommonJS(PaymentMethodItem_exports);
35
+ var import_react = __toESM(require("react"));
36
+ var import_classnames = __toESM(require("classnames"));
37
+ var import_utils = require("@pisell/utils");
38
+ var import_materials = require("@pisell/materials");
39
+ var import_antd = require("antd");
40
+ var import_priceKeyboard = require("../../../../pro/priceKeyboard");
41
+ var import_index = require("./index.less");
42
+ var PaymentMethodItem = ({
43
+ method,
44
+ amountSymbol,
45
+ customAmount,
46
+ disabled = false,
47
+ onClick,
48
+ getText
49
+ }) => {
50
+ const [isKeyboardVisible, setIsKeyboardVisible] = (0, import_react.useState)(false);
51
+ const calculateSurcharge = (method2) => {
52
+ if (!(method2 == null ? void 0 : method2.is_surcharge)) return 0;
53
+ const baseAmount = Number(customAmount) || 0;
54
+ if (Number(method2.percentage)) {
55
+ return baseAmount * Number(method2.percentage) + Number(method2.fixed || 0);
56
+ }
57
+ return Number(method2.fixed || 0);
58
+ };
59
+ const calculateTotalAmount = (method2) => {
60
+ const baseAmount = Number(customAmount) || 0;
61
+ const surcharge = calculateSurcharge(method2);
62
+ return baseAmount + surcharge;
63
+ };
64
+ const handleRightButtonClick = (e) => {
65
+ if (!isEftpos) return;
66
+ e.preventDefault();
67
+ if (disabled || !onClick) {
68
+ return;
69
+ }
70
+ onClick({
71
+ ...method,
72
+ surcharge: String((0, import_utils.formatAmount)(calculateSurcharge(method), 2, amountSymbol))
73
+ });
74
+ };
75
+ const renderPaymentIcon = (method2) => {
76
+ if (method2.code === "EFTPOS") {
77
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-icon-container"), style: { background: "#FE8279" } }, /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-credit", style: { fontSize: "26px", color: "#ffffff" } }));
78
+ }
79
+ switch (String(method2.type)) {
80
+ case "credit-card":
81
+ case "eftpos":
82
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-icon-container"), style: { background: "#FE8279" } }, /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-credit", style: { fontSize: "26px", color: "#ffffff" } }));
83
+ default:
84
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-icon-container"), style: { background: "#D277E4" } }, /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-custom", style: { fontSize: "26px", color: "#ffffff" } }));
85
+ }
86
+ };
87
+ const isEftpos = method.code === "EFTPOS" || method.type === "eftpos";
88
+ const showKeyboard = () => {
89
+ if (isEftpos) return;
90
+ setIsKeyboardVisible(true);
91
+ };
92
+ const renderLeftContent = () => /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-payment-method-left") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-icon-container") }, renderPaymentIcon(method)), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-payment-info") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-payment-info-inner") }, /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-payment-name") }, method.name), /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-payment-info-inner-surcharge") }, !!(method == null ? void 0 : method.is_surcharge) && calculateSurcharge(method) !== 0 && /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-surcharge-text") }, (getText == null ? void 0 : getText("pisell2.payment-options.surcharge-label", "Surcharge")) || "Surcharge", ":", (0, import_utils.formatAmount)(calculateSurcharge(method), 2, amountSymbol)), false))));
93
+ return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(
94
+ "button",
95
+ {
96
+ className: (0, import_classnames.default)(
97
+ "payment-options-module-payment-method-item",
98
+ {
99
+ "payment-options-module-pointer": !disabled,
100
+ "payment-options-module-disabled": disabled
101
+ }
102
+ ),
103
+ onClick: showKeyboard,
104
+ type: "button",
105
+ disabled
106
+ },
107
+ renderLeftContent(),
108
+ /* @__PURE__ */ import_react.default.createElement(
109
+ "div",
110
+ { className: (0, import_classnames.default)("payment-options-module-payment-method-right"), onClick: handleRightButtonClick },
111
+ // 右侧按钮,如果是eftpos,则显示Pay按钮
112
+ isEftpos ? /* @__PURE__ */ import_react.default.createElement(import_antd.Button, { type: "primary", className: (0, import_classnames.default)("payment-options-module-pay-button"), disabled }, getText == null ? void 0 : getText("pay", "Pay")) : /* @__PURE__ */ import_react.default.createElement(
113
+ "div",
114
+ {
115
+ className: (0, import_classnames.default)(
116
+ "payment-options-module-selection-button"
117
+ )
118
+ },
119
+ /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-a-arrow-circle-right2", style: { fontSize: "30px", color: disabled ? "#D0D5DD" : "#7F56DA" } })
120
+ )
121
+ )
122
+ ), /* @__PURE__ */ import_react.default.createElement(
123
+ import_priceKeyboard.PaymentKeyboard,
124
+ {
125
+ containerProps: {
126
+ renderType: "modal",
127
+ open: isKeyboardVisible,
128
+ onCancel: () => setIsKeyboardVisible(false)
129
+ },
130
+ paymentOriginalValue: String(customAmount || 0),
131
+ paymentDefaultValue: String(customAmount || 0),
132
+ enableExceedMaxAmount: !isEftpos,
133
+ payment: {
134
+ enable: true
135
+ },
136
+ surcharge: {
137
+ enable: !!(method == null ? void 0 : method.is_surcharge) && calculateSurcharge(method) !== 0
138
+ },
139
+ surchargeDefaultValue: {
140
+ percent: method.percentage ? String(Number(method.percentage) * 100) : "",
141
+ fixed: method.fixed ? String(method.fixed) : ""
142
+ },
143
+ selectType: "dark",
144
+ onChange: (value) => {
145
+ console.log(value);
146
+ },
147
+ onPay: (args) => {
148
+ var _a, _b;
149
+ console.log(args);
150
+ setIsKeyboardVisible(false);
151
+ if (onClick) {
152
+ onClick({
153
+ ...method,
154
+ fixed: Number(((_a = args.surcharge) == null ? void 0 : _a.fixed) || 0),
155
+ percentage: ((_b = args.surcharge) == null ? void 0 : _b.percent) ? Number(args.surcharge.percent) / 100 : 0,
156
+ totalAmount: String((0, import_utils.formatAmount)(args.amount, 2))
157
+ });
158
+ }
159
+ }
160
+ }
161
+ ));
162
+ };
163
+ var PaymentMethodItem_default = PaymentMethodItem;
@@ -1,9 +1,7 @@
1
1
  /// <reference types="react" />
2
- import { PaymentOptionsModuleProps, PaymentMethod } from '../../types';
2
+ import { ExtendedPaymentMethod } from './PaymentMethodItem';
3
+ import { PaymentOptionsModuleProps } from '../../types';
3
4
  import './index.less';
4
- interface ExtendedPaymentMethod extends PaymentMethod {
5
- is_surcharge?: boolean;
6
- }
7
5
  interface ExtendedPaymentOptionsModuleProps extends PaymentOptionsModuleProps {
8
6
  amountSymbol?: string;
9
7
  paymentMethods?: ExtendedPaymentMethod[];
@@ -33,11 +33,11 @@ __export(PaymentOptionsModule_exports, {
33
33
  });
34
34
  module.exports = __toCommonJS(PaymentOptionsModule_exports);
35
35
  var import_ScrollableList = __toESM(require("../ScrollableList/index"));
36
+ var import_PaymentMethodItem = __toESM(require("./PaymentMethodItem"));
36
37
  var import_react = __toESM(require("react"));
37
38
  var import_classnames = __toESM(require("classnames"));
38
39
  var import_index = require("./index.less");
39
40
  var import_utils = require("@pisell/utils");
40
- var import_materials = require("@pisell/materials");
41
41
  var import_ahooks = require("ahooks");
42
42
  var import_useEngineContext = __toESM(require("../../../../hooks/useEngineContext"));
43
43
  var import_locales = __toESM(require("../../locales"));
@@ -77,29 +77,13 @@ function PaymentOptionsModule({
77
77
  const filteredPaymentMethods = paymentMethods.filter(
78
78
  (item) => !(item.type === "app" && item.code === "EFTPOS_LINKLY") && (["custom"].includes(item.type) || SHOW_METHODS_CODE.includes(item.code))
79
79
  );
80
- const calculateSurcharge = (method) => {
81
- if (!(method == null ? void 0 : method.is_surcharge)) return 0;
82
- const baseAmount = Number(customAmount) || 0;
83
- if (Number(method.percentage)) {
84
- return baseAmount * Number(method.percentage) + Number(method.fixed || 0);
85
- }
86
- return Number(method.fixed || 0);
87
- };
88
- const calculateTotalAmount = (method) => {
89
- const baseAmount = Number(customAmount) || 0;
90
- const surcharge = calculateSurcharge(method);
91
- return baseAmount + surcharge;
92
- };
93
80
  const { run: handlePaymentClick } = (0, import_ahooks.useDebounceFn)(
94
81
  (method) => {
95
82
  if (disabled) {
96
83
  return;
97
84
  }
98
85
  if (typeof onClick === "function") {
99
- onClick({
100
- ...method,
101
- surcharge: String((0, import_utils.formatAmount)(calculateSurcharge(method), 2, amountSymbol))
102
- });
86
+ onClick(method);
103
87
  }
104
88
  },
105
89
  {
@@ -107,18 +91,6 @@ function PaymentOptionsModule({
107
91
  // 500ms 防抖延迟
108
92
  }
109
93
  );
110
- const renderPaymentIcon = (method) => {
111
- if (method.code === "EFTPOS") {
112
- return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-icon-container"), style: { background: "#FE8279" } }, /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-credit", style: { fontSize: "26px", color: "#ffffff" } }));
113
- }
114
- switch (String(method.type)) {
115
- case "credit-card":
116
- case "eftpos":
117
- return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-icon-container"), style: { background: "#FE8279" } }, /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-credit", style: { fontSize: "26px", color: "#ffffff" } }));
118
- default:
119
- return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-icon-container"), style: { background: "#D277E4" } }, /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-custom", style: { fontSize: "26px", color: "#ffffff" } }));
120
- }
121
- };
122
94
  return /* @__PURE__ */ import_react.default.createElement(
123
95
  "div",
124
96
  {
@@ -131,7 +103,7 @@ function PaymentOptionsModule({
131
103
  import_ScrollableList.default,
132
104
  {
133
105
  height: "100%",
134
- maxHeight: 330,
106
+ maxHeight: 314,
135
107
  gradientColor: "rgba(139, 92, 246, 0.1)",
136
108
  gradientHeight: 50,
137
109
  columnCount: showCashPayment ? 1 : 2,
@@ -149,100 +121,16 @@ function PaymentOptionsModule({
149
121
  }
150
122
  },
151
123
  filteredPaymentMethods.map((method) => /* @__PURE__ */ import_react.default.createElement(
152
- "button",
124
+ import_PaymentMethodItem.default,
153
125
  {
154
126
  key: method.id,
155
- onClick: (e) => {
156
- e.preventDefault();
157
- handlePaymentClick(method);
158
- },
159
- className: (0, import_classnames.default)(
160
- "payment-options-module-payment-method-item",
161
- {
162
- "payment-options-module-pointer": !disabled,
163
- "payment-options-module-disabled": disabled
164
- }
165
- ),
166
- type: "button",
167
- disabled
168
- },
169
- /* @__PURE__ */ import_react.default.createElement(
170
- "div",
171
- {
172
- className: (0, import_classnames.default)(
173
- "payment-options-module-payment-method-left"
174
- )
175
- },
176
- /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_classnames.default)("payment-options-module-icon-container") }, renderPaymentIcon(method)),
177
- /* @__PURE__ */ import_react.default.createElement(
178
- "div",
179
- {
180
- className: (0, import_classnames.default)("payment-options-module-payment-info")
181
- },
182
- /* @__PURE__ */ import_react.default.createElement(
183
- "div",
184
- {
185
- className: (0, import_classnames.default)(
186
- "payment-options-module-payment-info-inner"
187
- )
188
- },
189
- /* @__PURE__ */ import_react.default.createElement(
190
- "div",
191
- {
192
- className: (0, import_classnames.default)(
193
- "payment-options-module-payment-name"
194
- )
195
- },
196
- method.name
197
- ),
198
- !!(method == null ? void 0 : method.is_surcharge) && calculateSurcharge(method) !== 0 && /* @__PURE__ */ import_react.default.createElement(
199
- "div",
200
- {
201
- className: (0, import_classnames.default)(
202
- "payment-options-module-surcharge-text"
203
- )
204
- },
205
- getText("pisell2.payment-options.surcharge-label", "Surcharge"),
206
- ":",
207
- (0, import_utils.formatAmount)(
208
- calculateSurcharge(method),
209
- 2,
210
- amountSymbol
211
- )
212
- )
213
- )
214
- )
215
- ),
216
- /* @__PURE__ */ import_react.default.createElement(
217
- "div",
218
- {
219
- className: (0, import_classnames.default)(
220
- "payment-options-module-payment-method-right"
221
- )
222
- },
223
- method.code !== "EFTPOS" && method.type !== "eftpos" && /* @__PURE__ */ import_react.default.createElement(
224
- "div",
225
- {
226
- className: (0, import_classnames.default)(
227
- "payment-options-module-amount",
228
- "payment-options-module-theme-color"
229
- )
230
- },
231
- (0, import_utils.formatAmount)(calculateTotalAmount(method), 2, amountSymbol)
232
- ),
233
- /* @__PURE__ */ import_react.default.createElement(
234
- "div",
235
- {
236
- className: (0, import_classnames.default)(
237
- "payment-options-module-selection-button",
238
- {
239
- "payment-options-module-selection-button-disabled": disabled
240
- }
241
- )
242
- },
243
- /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-a-arrow-circle-right2", style: { fontSize: "30px", color: "#7F56DA" } })
244
- )
245
- )
127
+ method,
128
+ amountSymbol,
129
+ customAmount,
130
+ disabled,
131
+ onClick: handlePaymentClick,
132
+ getText
133
+ }
246
134
  ))
247
135
  ))
248
136
  );
@@ -44,6 +44,7 @@
44
44
  align-items: center;
45
45
  display: flex;
46
46
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
47
+ gap: 12px;
47
48
  }
48
49
 
49
50
 
@@ -94,6 +95,14 @@
94
95
  align-items: center;
95
96
  gap: 8px;
96
97
  display: flex;
98
+ flex: 1;
99
+ background: none;
100
+ border: none;
101
+ cursor: pointer;
102
+ padding: 0;
103
+ margin: 0;
104
+ outline: none;
105
+ box-shadow: none;
97
106
  }
98
107
 
99
108
 
@@ -224,6 +233,20 @@
224
233
  cursor: pointer;
225
234
  }
226
235
 
236
+ .payment-options-module-pay-button{
237
+ background: var(--theme-color, #7F56DA);
238
+ &:disabled {
239
+ background: #D0D5DD;
240
+ color: #fff;
241
+ }
242
+ }
243
+
244
+ .payment-options-module-payment-info-inner-surcharge{
245
+ display: flex;
246
+ align-items: center;
247
+ gap: 8px;
248
+ }
249
+
227
250
  /* Disabled state styles */
228
251
  .payment-options-module-disabled {
229
252
  cursor: unset !important;
@@ -92,10 +92,13 @@ var PaymentResultToast = (0, import_react.memo)((props) => {
92
92
  mask = false,
93
93
  maskClosable = false,
94
94
  closable = true,
95
- zIndex
95
+ zIndex,
96
+ clickOutsideToClose = true
96
97
  } = props;
97
98
  const [isAnimating, setIsAnimating] = (0, import_react.useState)(false);
98
99
  const countdownTimeoutRef = (0, import_react.useRef)(null);
100
+ const modalContentRef = (0, import_react.useRef)(null);
101
+ const modalRef = (0, import_react.useRef)(null);
99
102
  const onCloseRef = (0, import_react.useRef)(onClose);
100
103
  const onCountdownCompleteRef = (0, import_react.useRef)(onCountdownComplete);
101
104
  onCloseRef.current = onClose;
@@ -133,6 +136,27 @@ var PaymentResultToast = (0, import_react.memo)((props) => {
133
136
  (0, import_react.useEffect)(() => {
134
137
  return clearCountdown;
135
138
  }, [clearCountdown]);
139
+ (0, import_react.useEffect)(() => {
140
+ if (!clickOutsideToClose || !visible) {
141
+ return;
142
+ }
143
+ const handleClickOutside = (event) => {
144
+ var _a;
145
+ const target = event.target;
146
+ const modalContent = modalContentRef.current;
147
+ if (!modalContent) {
148
+ return;
149
+ }
150
+ if (!modalContent.contains(target)) {
151
+ clearCountdown();
152
+ (_a = onCloseRef.current) == null ? void 0 : _a.call(onCloseRef);
153
+ }
154
+ };
155
+ document.addEventListener("mousedown", handleClickOutside);
156
+ return () => {
157
+ document.removeEventListener("mousedown", handleClickOutside);
158
+ };
159
+ }, [clickOutsideToClose, visible, clearCountdown]);
136
160
  const handleClose = (0, import_react.useCallback)(() => {
137
161
  var _a;
138
162
  clearCountdown();
@@ -228,6 +252,7 @@ var PaymentResultToast = (0, import_react.memo)((props) => {
228
252
  /* @__PURE__ */ import_react.default.createElement(
229
253
  "div",
230
254
  {
255
+ ref: modalContentRef,
231
256
  className: getClassName("content", statusClassName),
232
257
  style: {
233
258
  position: "relative",
@@ -54,4 +54,6 @@ export interface PaymentResultToastConfig {
54
54
  closable?: boolean;
55
55
  /** 弹窗层级 */
56
56
  zIndex?: number;
57
+ /** 是否启用点击外部区域关闭弹窗(使用纯JS实现) */
58
+ clickOutsideToClose?: boolean;
57
59
  }
@@ -93,7 +93,7 @@ var SavePayLaterHandler = (0, import_react.forwardRef)(({
93
93
  mask: true,
94
94
  maskClosable: false,
95
95
  centered: true,
96
- width: 500,
96
+ width: 530,
97
97
  title: getText("pisell2.checkout.wallet-balance-confirm.title"),
98
98
  footer: null,
99
99
  className: "wallet-balance-confirm-modal",
@@ -48,7 +48,7 @@ var SearchAndClientModule = (props) => {
48
48
  const bookingTicket = (0, import_pisellos.useBookingTicket)();
49
49
  const handleSearch = (0, import_ahooks.useDebounceFn)(
50
50
  async (keyword) => {
51
- var _a, _b, _c, _d, _e;
51
+ var _a, _b, _c, _d;
52
52
  if (!!keyword) {
53
53
  setLoading(true);
54
54
  try {
@@ -61,18 +61,9 @@ var SearchAndClientModule = (props) => {
61
61
  return;
62
62
  }
63
63
  if ("type" in res && res.type == "walletCode") {
64
- if (disabledSwitch) {
65
- (_b = Toast == null ? void 0 : Toast.info) == null ? void 0 : _b.call(
66
- Toast,
67
- import_utils.locales.getText(
68
- "pisell2.checkout.client-card.tip.partially-paid"
69
- )
70
- );
71
- return;
72
- }
73
64
  const { customer, ...rest } = res.data;
74
65
  if (!customer) {
75
- (_c = Toast == null ? void 0 : Toast.info) == null ? void 0 : _c.call(
66
+ (_b = Toast == null ? void 0 : Toast.info) == null ? void 0 : _b.call(
76
67
  Toast,
77
68
  import_utils.locales.getText("pisell2.checkout.wallet-pass-module.no-result")
78
69
  );
@@ -82,7 +73,7 @@ var SearchAndClientModule = (props) => {
82
73
  ...customer,
83
74
  latest_wallet_detail: rest
84
75
  };
85
- (_e = (_d = clientCardRef.current) == null ? void 0 : _d.handleSetClient) == null ? void 0 : _e.call(_d, _customer, {
76
+ (_d = (_c = clientCardRef.current) == null ? void 0 : _c.handleSetClient) == null ? void 0 : _d.call(_c, _customer, {
86
77
  sameClientTip: import_utils.locales.getText(
87
78
  "pisell2.checkout.client-card.tip.same-client"
88
79
  )
@@ -139,23 +130,6 @@ var SearchAndClientModule = (props) => {
139
130
  size: "default"
140
131
  }
141
132
  };
142
- if (disabledSwitch === true) {
143
- _props = {
144
- open: false,
145
- buttonProps: {
146
- icon,
147
- size: "default",
148
- onClick: () => {
149
- var _a;
150
- (_a = Toast == null ? void 0 : Toast.info) == null ? void 0 : _a.call(
151
- Toast,
152
- import_utils.locales.getText("pisell2.checkout.client-card.tip.partially-paid")
153
- );
154
- },
155
- style: { cursor: "not-allowed" }
156
- }
157
- };
158
- }
159
133
  return _props;
160
134
  }, [Toast, disabledSwitch]);
161
135
  return /* @__PURE__ */ import_react.default.createElement(
@@ -122,11 +122,12 @@ var WalletPassModule = (0, import_react.forwardRef)(
122
122
  return selectedWalletIds.length + selectedDiscountList.length;
123
123
  }, [selectedWalletIds.length, selectedDiscountList.length]);
124
124
  const discountDisabled = (0, import_react.useMemo)(() => {
125
+ if (Number(orderInfo == null ? void 0 : orderInfo.totalAmount) === 0) return true;
125
126
  return !!(paymentItems == null ? void 0 : paymentItems.some((item) => {
126
- return !import_constants.WALLET_PASS_CODE_ARRAY.includes(item.code);
127
+ return !import_constants.WALLET_PASS_CODE_ARRAY.includes(item.code) && !item.isSynced;
127
128
  }));
128
- }, [paymentItems]);
129
- if (cardData.length === 0 && availableDiscountList.length === 0) {
129
+ }, [paymentItems, orderInfo]);
130
+ if (cardData.length === 0 && availableDiscountList.length === 0 && disabledWalletData.length === 0) {
130
131
  return null;
131
132
  }
132
133
  return /* @__PURE__ */ import_react.default.createElement("div", { className: "wallet-pass-module-container" }, /* @__PURE__ */ import_react.default.createElement(
@@ -89,14 +89,14 @@ var formatDiscountWalletData = (data, selectId = []) => {
89
89
  var _a, _b, _c;
90
90
  let name = "";
91
91
  let storeName = "";
92
- if (item.tag === "product_discount_card") {
92
+ if (item.tag === "product_discount_card" || item.tag === "discount_card") {
93
93
  if (((_a = item == null ? void 0 : item.metadata) == null ? void 0 : _a.discount_card_type) === "fixed_amount") {
94
94
  const amountValue = (item == null ? void 0 : item.savedAmount) ? item == null ? void 0 : item.savedAmount : item.par_value;
95
95
  name = /* @__PURE__ */ import_react.default.createElement("span", null, import_utils.locales.getText("pisell2.checkout.discount.fixed_amount"), " ", /* @__PURE__ */ import_react.default.createElement(Amount, { value: amountValue, showCurrencySymbol: true }));
96
96
  } else {
97
- name = import_utils.locales.getText("pisell2.checkout.discount.percentage.off")(item.par_value);
97
+ name = import_utils.locales.getText("pisell2.checkout.discount.percentage.off")(item.par_value || item.discount.percent);
98
98
  }
99
- storeName = item.product_name;
99
+ storeName = item.product_name || item.format_title.auto;
100
100
  } else if (item.tag === "good_pass") {
101
101
  name = item.product_name;
102
102
  const left = Number(item.balance) || 0;
@@ -105,6 +105,10 @@ var formatDiscountWalletData = (data, selectId = []) => {
105
105
  } else {
106
106
  name = item.product_name;
107
107
  }
108
+ if (!name && item.isEditMode) {
109
+ name = item.amount;
110
+ storeName = item.format_title.auto;
111
+ }
108
112
  return {
109
113
  ...item,
110
114
  id: item.id,
@@ -124,7 +128,7 @@ var formatDiscountWalletData = (data, selectId = []) => {
124
128
  code: item.code,
125
129
  disabled: item.isDisabled,
126
130
  showStatus: true,
127
- cardStatus: item.isDisabled ? "conflict" : void 0,
131
+ cardStatus: item.isEditMode ? "lastPayment" : item.isDisabled ? "conflict" : void 0,
128
132
  cover: (_c = item.product) == null ? void 0 : _c.cover,
129
133
  qrCode: item.code,
130
134
  validDate: voucherTime(item, "expire_time"),
@@ -326,6 +326,7 @@ var useWalletPass = (props) => {
326
326
  handleWalletRecommendListUpdated
327
327
  );
328
328
  core.effects.on("checkout:onPaymentStarted", handlePaymentStarted);
329
+ core.effects.on("checkout:onPaymentItemAdded", handlePaymentStarted);
329
330
  core.effects.on(
330
331
  "wallet:onUserIdentificationCodesUpdated",
331
332
  handleUserIdentificationCodesUpdated
@@ -354,6 +355,7 @@ var useWalletPass = (props) => {
354
355
  handleWalletRecommendListUpdated
355
356
  );
356
357
  core.effects.off("checkout:onPaymentStarted", handlePaymentStarted);
358
+ core.effects.off("checkout:onPaymentItemAdded", handlePaymentStarted);
357
359
  core.effects.off(
358
360
  "wallet:onUserIdentificationCodesUpdated",
359
361
  handleUserIdentificationCodesUpdated
@@ -537,14 +539,17 @@ var useWalletPass = (props) => {
537
539
  import_utils.locales.getText("wallet-pass-module-already-best-combination")
538
540
  );
539
541
  } else {
540
- setWalletSelect(searchIdentificationCodeList);
542
+ const select = searchIdentificationCodeList.filter((item) => item.unified_available_status);
543
+ setWalletSelect(select);
541
544
  handleFetchUserIdentificationCodes(
542
- searchIdentificationCodeList.map((item) => item.id),
543
- searchIdentificationCodeList
544
- );
545
- Toast == null ? void 0 : Toast.success(
546
- import_utils.locales.getText("wallet-pass-module-best-combination-selected")
545
+ select.map((item) => item.id),
546
+ select
547
547
  );
548
+ if (select.length) {
549
+ Toast == null ? void 0 : Toast.success(
550
+ import_utils.locales.getText("wallet-pass-module-best-combination-selected")
551
+ );
552
+ }
548
553
  }
549
554
  }
550
555
  return;
@@ -69,7 +69,7 @@
69
69
  display: grid;
70
70
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); // 强制等宽分配
71
71
  grid-template-rows: auto auto;
72
- gap: 16px;
72
+ gap: 8px 16px;
73
73
  background-color: #f6f2ff;
74
74
  padding: 16px 16px 0 16px;
75
75
  border-radius: 0 0 12px 12px;