@pisell/private-materials 6.8.83 → 6.8.84

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 (134) 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 +10 -10
  9. package/build/lowcode/view.css +1 -1
  10. package/build/lowcode/view.js +9 -9
  11. package/es/components/booking/components/footer/index.d.ts +1 -0
  12. package/es/components/booking/info/index.d.ts +1 -0
  13. package/es/components/checkout/PaymentModal.js +4 -2
  14. package/es/components/checkout/components/PaymentOptionsModule/index.js +1 -1
  15. package/es/components/eftposPay/aggregatePayment/hooks/useMicropay.d.ts +7 -0
  16. package/es/components/eftposPay/aggregatePayment/hooks/useMicropay.js +120 -0
  17. package/es/components/eftposPay/aggregatePayment/index.d.ts +3 -0
  18. package/es/components/eftposPay/aggregatePayment/index.js +3 -0
  19. package/es/components/eftposPay/aggregatePayment/service.d.ts +24 -0
  20. package/es/components/eftposPay/aggregatePayment/service.js +69 -0
  21. package/es/components/eftposPay/aggregatePayment/types.d.ts +106 -0
  22. package/es/components/eftposPay/aggregatePayment/types.js +65 -0
  23. package/es/components/eftposPay/aggregatePayment/utils/logs.d.ts +110 -0
  24. package/es/components/eftposPay/aggregatePayment/utils/logs.js +371 -0
  25. package/es/components/eftposPay/aggregatePayment/utils/payment.d.ts +139 -0
  26. package/es/components/eftposPay/aggregatePayment/utils/payment.js +1138 -0
  27. package/es/components/eftposPay/amount.d.ts +1 -1
  28. package/es/components/eftposPay/app.d.ts +1 -1
  29. package/es/components/eftposPay/app.js +5 -0
  30. package/es/components/eftposPay/component/fail/failCustom.js +16 -12
  31. package/es/components/eftposPay/component/fail/index.js +12 -5
  32. package/es/components/eftposPay/const.d.ts +6 -1
  33. package/es/components/eftposPay/const.js +3 -0
  34. package/es/components/eftposPay/device.d.ts +1 -1
  35. package/es/components/eftposPay/hooks.d.ts +3 -2
  36. package/es/components/eftposPay/hooks.js +12 -0
  37. package/es/components/eftposPay/huifu/Action.d.ts +8 -0
  38. package/es/components/eftposPay/huifu/Action.js +146 -0
  39. package/es/components/eftposPay/huifu/const.d.ts +5 -0
  40. package/es/components/eftposPay/huifu/const.js +70 -0
  41. package/es/components/eftposPay/huifu/hooks.d.ts +25 -0
  42. package/es/components/eftposPay/huifu/hooks.js +184 -0
  43. package/es/components/eftposPay/huifu/index.d.ts +5 -0
  44. package/es/components/eftposPay/huifu/index.js +196 -0
  45. package/es/components/eftposPay/huifu/index.less +180 -0
  46. package/es/components/eftposPay/huifu/types.d.ts +14 -0
  47. package/es/components/eftposPay/huifu/types.js +1 -0
  48. package/es/components/eftposPay/index.js +5 -1
  49. package/es/components/eftposPay/locales.d.ts +36 -0
  50. package/es/components/eftposPay/locales.js +42 -3
  51. package/es/components/eftposPay/manufacturer.d.ts +1 -0
  52. package/es/components/eftposPay/manufacturer.js +5 -0
  53. package/es/components/eftposPay/pay.js +6 -2
  54. package/es/components/eftposPay/store/index.d.ts +11 -4
  55. package/es/components/kioskSkuDetail/index.d.ts +3 -0
  56. package/es/components/kioskSkuDetail/index.js +266 -173
  57. package/es/components/kioskSkuDetail/index.less +49 -7
  58. package/es/components/kioskSkuDetail/locales.d.ts +6 -0
  59. package/es/components/kioskSkuDetail/locales.js +9 -3
  60. package/es/components/pay/toB/components/Cache/index.d.ts +1 -0
  61. package/es/components/pay/toB/components/EFTPOS/index.js +8 -1
  62. package/es/components/pay/toB/types/index.d.ts +1 -0
  63. package/es/components/pay/toC/PaymentList/serve.js +14 -0
  64. package/es/components/pay/toC/PaymentMethods/MWCreditCard/tds2.js +7 -6
  65. package/es/components/ticketBooking/components/ticketBooking/index.d.ts +1 -0
  66. package/es/components/ticketBooking/index.d.ts +16 -0
  67. package/es/plus/skuOptionsSelection/components/VariantCard/index.js +1 -1
  68. package/es/plus/skuOptionsSelection/locales.d.ts +3 -0
  69. package/es/plus/skuOptionsSelection/locales.js +3 -0
  70. package/es/pro/Login2.0/components/LoginCodeInput.js +36 -3
  71. package/es/pro/Login2.0/steps/CodeInput.js +37 -7
  72. package/lib/components/booking/components/footer/index.d.ts +1 -0
  73. package/lib/components/booking/info/index.d.ts +1 -0
  74. package/lib/components/checkout/PaymentModal.js +5 -2
  75. package/lib/components/checkout/components/PaymentOptionsModule/index.js +2 -1
  76. package/lib/components/eftposPay/aggregatePayment/hooks/useMicropay.d.ts +7 -0
  77. package/lib/components/eftposPay/aggregatePayment/hooks/useMicropay.js +133 -0
  78. package/lib/components/eftposPay/aggregatePayment/index.d.ts +3 -0
  79. package/lib/components/eftposPay/aggregatePayment/index.js +42 -0
  80. package/lib/components/eftposPay/aggregatePayment/service.d.ts +24 -0
  81. package/lib/components/eftposPay/aggregatePayment/service.js +81 -0
  82. package/lib/components/eftposPay/aggregatePayment/types.d.ts +106 -0
  83. package/lib/components/eftposPay/aggregatePayment/types.js +74 -0
  84. package/lib/components/eftposPay/aggregatePayment/utils/logs.d.ts +110 -0
  85. package/lib/components/eftposPay/aggregatePayment/utils/logs.js +294 -0
  86. package/lib/components/eftposPay/aggregatePayment/utils/payment.d.ts +139 -0
  87. package/lib/components/eftposPay/aggregatePayment/utils/payment.js +752 -0
  88. package/lib/components/eftposPay/amount.d.ts +1 -1
  89. package/lib/components/eftposPay/app.d.ts +1 -1
  90. package/lib/components/eftposPay/app.js +5 -0
  91. package/lib/components/eftposPay/component/fail/failCustom.js +15 -9
  92. package/lib/components/eftposPay/component/fail/index.js +4 -1
  93. package/lib/components/eftposPay/const.d.ts +6 -1
  94. package/lib/components/eftposPay/const.js +3 -0
  95. package/lib/components/eftposPay/device.d.ts +1 -1
  96. package/lib/components/eftposPay/hooks.d.ts +3 -2
  97. package/lib/components/eftposPay/hooks.js +16 -0
  98. package/lib/components/eftposPay/huifu/Action.d.ts +8 -0
  99. package/lib/components/eftposPay/huifu/Action.js +174 -0
  100. package/lib/components/eftposPay/huifu/const.d.ts +5 -0
  101. package/lib/components/eftposPay/huifu/const.js +86 -0
  102. package/lib/components/eftposPay/huifu/hooks.d.ts +25 -0
  103. package/lib/components/eftposPay/huifu/hooks.js +186 -0
  104. package/lib/components/eftposPay/huifu/index.d.ts +5 -0
  105. package/lib/components/eftposPay/huifu/index.js +200 -0
  106. package/lib/components/eftposPay/huifu/index.less +180 -0
  107. package/lib/components/eftposPay/huifu/types.d.ts +14 -0
  108. package/lib/components/eftposPay/huifu/types.js +17 -0
  109. package/lib/components/eftposPay/index.js +5 -1
  110. package/lib/components/eftposPay/locales.d.ts +36 -0
  111. package/lib/components/eftposPay/locales.js +42 -3
  112. package/lib/components/eftposPay/manufacturer.d.ts +1 -0
  113. package/lib/components/eftposPay/manufacturer.js +7 -0
  114. package/lib/components/eftposPay/pay.js +3 -2
  115. package/lib/components/eftposPay/store/index.d.ts +11 -4
  116. package/lib/components/kioskSkuDetail/index.d.ts +3 -0
  117. package/lib/components/kioskSkuDetail/index.js +180 -113
  118. package/lib/components/kioskSkuDetail/index.less +49 -7
  119. package/lib/components/kioskSkuDetail/locales.d.ts +6 -0
  120. package/lib/components/kioskSkuDetail/locales.js +9 -3
  121. package/lib/components/pay/toB/components/Cache/index.d.ts +1 -0
  122. package/lib/components/pay/toB/components/EFTPOS/index.js +8 -1
  123. package/lib/components/pay/toB/types/index.d.ts +1 -0
  124. package/lib/components/pay/toC/PaymentList/serve.js +15 -0
  125. package/lib/components/pay/toC/PaymentMethods/MWCreditCard/tds2.js +7 -6
  126. package/lib/components/ticketBooking/components/ticketBooking/index.d.ts +1 -0
  127. package/lib/components/ticketBooking/index.d.ts +16 -0
  128. package/lib/plus/skuOptionsSelection/components/VariantCard/index.js +2 -0
  129. package/lib/plus/skuOptionsSelection/locales.d.ts +3 -0
  130. package/lib/plus/skuOptionsSelection/locales.js +3 -0
  131. package/lib/pro/Login2.0/components/LoginCodeInput.js +26 -4
  132. package/lib/pro/Login2.0/steps/CodeInput.js +27 -5
  133. package/lowcode/kiosk-sku-detail/meta.ts +229 -94
  134. package/package.json +1 -1
@@ -8,7 +8,7 @@ import { PosProps } from './const';
8
8
  */
9
9
  declare const _default: ({ className, onChange, onClose, formatAmount, isMobile, net, client }: {
10
10
  className?: string | undefined;
11
- onChange?: ((status: "success" | "page" | "fail" | "print" | "mark_tx_processed", params?: string | {
11
+ onChange?: ((status: "fail" | "success" | "page" | "print" | "mark_tx_processed", params?: string | {
12
12
  [keys: string]: unknown;
13
13
  } | undefined, other?: any) => void) | undefined;
14
14
  onClose: () => void;
@@ -1,5 +1,5 @@
1
1
  import { PosProps, RouteType } from './const';
2
- declare const App: ({ action, api, device_number, terminal, tyroUrl, tyroVersion, onChangeParams, isMobile, channel, formatAmount, ...props }: Omit<PosProps, "type" | "mode" | "getApi"> & {
2
+ declare const App: ({ action, api, device_number, terminal, tyroUrl, tyroVersion, onChangeParams, isMobile, channel, formatAmount, ...props }: Omit<PosProps, "getApi" | "type" | "mode"> & {
3
3
  action: RouteType;
4
4
  device_number: string | number;
5
5
  api: ReturnType<PosProps['getApi']>;
@@ -39,6 +39,8 @@ var import_const = require("./const");
39
39
  var import_device = __toESM(require("./device"));
40
40
  var import_pay = __toESM(require("./pay"));
41
41
  var import_store = require("./store");
42
+ var import_useEngineContext = __toESM(require("../../hooks/useEngineContext"));
43
+ var import_utils = require("../../utils");
42
44
  var App = ({
43
45
  action,
44
46
  api,
@@ -56,6 +58,9 @@ var App = ({
56
58
  const data = (0, import_store.useContextData)();
57
59
  const dispatch = (0, import_store.useDispatch)();
58
60
  const [current, setCurrent] = (0, import_react.useState)(action);
61
+ const engineContext = (0, import_useEngineContext.default)();
62
+ const utils = engineContext.appHelper.utils || {};
63
+ import_utils.request.setRequest(utils == null ? void 0 : utils.request);
59
64
  const statusRef = (0, import_react.useRef)(data.status);
60
65
  const network = (0, import_react.useMemo)(
61
66
  () => typeof terminal.network === "boolean" ? terminal.network : true,
@@ -52,25 +52,31 @@ var failCustom_default = ({ className = "", isMobile, onChange }) => {
52
52
  order_id,
53
53
  number,
54
54
  device,
55
- client
55
+ client,
56
+ originalParams
56
57
  } = (0, import_store.useContextData)();
57
58
  const failCustom = custom == null ? void 0 : custom.failCustom;
58
59
  const dispatch = (0, import_store.useDispatch)();
59
60
  const onRetry = () => {
60
61
  onChange("page", "pay");
61
- dispatch(
62
- (0, import_store.updateState)(
63
- (0, import_manufacturer.getInitState)(
64
- eftpos,
65
- mode === import_const.ModeEnum.Query ? { mode, name, symbol, amount, order_id } : { mode, name, symbol, amount, order_id, number: "" }
66
- )
67
- )
68
- );
62
+ const params = {
63
+ ...originalParams || {},
64
+ mode,
65
+ name,
66
+ symbol,
67
+ amount,
68
+ order_id
69
+ };
70
+ if (mode === import_const.ModeEnum.Query) {
71
+ params.number = "";
72
+ }
73
+ dispatch((0, import_store.updateState)((0, import_manufacturer.getInitState)(eftpos, params)));
69
74
  };
70
75
  const onModify = () => {
71
76
  dispatch(
72
77
  (0, import_store.updateState)(
73
78
  (0, import_manufacturer.getInitState)(eftpos, {
79
+ ...originalParams || {},
74
80
  mode,
75
81
  name,
76
82
  symbol,
@@ -54,7 +54,8 @@ var fail_default = ({ onChange, className = "", isMobile }) => {
54
54
  order_id,
55
55
  number,
56
56
  device,
57
- client
57
+ client,
58
+ originalParams
58
59
  } = (0, import_store.useContextData)();
59
60
  const isPosNetworkError = ((_b = (_a = steps[step]) == null ? void 0 : _a.custom) == null ? void 0 : _b.isPosNetworkError) || false;
60
61
  const dispatch = (0, import_store.useDispatch)();
@@ -63,6 +64,7 @@ var fail_default = ({ onChange, className = "", isMobile }) => {
63
64
  dispatch(
64
65
  (0, import_store.updateState)(
65
66
  (0, import_manufacturer.getInitState)(eftpos, {
67
+ ...originalParams || {},
66
68
  mode,
67
69
  name,
68
70
  symbol,
@@ -77,6 +79,7 @@ var fail_default = ({ onChange, className = "", isMobile }) => {
77
79
  dispatch(
78
80
  (0, import_store.updateState)(
79
81
  (0, import_manufacturer.getInitState)(eftpos, {
82
+ ...originalParams || {},
80
83
  mode,
81
84
  name,
82
85
  symbol,
@@ -7,9 +7,12 @@ export declare enum EftposEnum {
7
7
  /** 后端支付 - 支付 + 退款 */
8
8
  Windcave = "windcave",
9
9
  Stripe = "stripe",
10
- Linkly = "linkly"
10
+ Linkly = "linkly",
11
+ /** 汇付天下 */
12
+ Huifu = "huifu"
11
13
  }
12
14
  export declare enum StatusEnum {
15
+ Init = "init",
13
16
  Loading = "loading",
14
17
  Warn = "warn",
15
18
  Fail = "fail",
@@ -160,6 +163,8 @@ export declare enum PayStatus {
160
163
  'Unknown' = "701000",
161
164
  /** 交易请求超时 */
162
165
  'Timeout' = "701001",
166
+ /** 支付失败(汇付天下) */
167
+ 'PaymentFailed' = "701002",
163
168
  /** 繁忙 EFTPOS终端暂时不可用,因为EFTPOS正在处理另一个请求。 */
164
169
  'PayOtherEftposFailed' = "701003",
165
170
  /** 购物者没有出示卡片/卡片金额不足/在线拒绝/卡已过期/卡被锁定 */
@@ -36,9 +36,11 @@ var EftposEnum = /* @__PURE__ */ ((EftposEnum2) => {
36
36
  EftposEnum2["Windcave"] = "windcave";
37
37
  EftposEnum2["Stripe"] = "stripe";
38
38
  EftposEnum2["Linkly"] = "linkly";
39
+ EftposEnum2["Huifu"] = "huifu";
39
40
  return EftposEnum2;
40
41
  })(EftposEnum || {});
41
42
  var StatusEnum = /* @__PURE__ */ ((StatusEnum2) => {
43
+ StatusEnum2["Init"] = "init";
42
44
  StatusEnum2["Loading"] = "loading";
43
45
  StatusEnum2["Warn"] = "warn";
44
46
  StatusEnum2["Fail"] = "fail";
@@ -92,6 +94,7 @@ var PayStatus = /* @__PURE__ */ ((PayStatus2) => {
92
94
  PayStatus2["PairingFailure"] = "606020";
93
95
  PayStatus2["Unknown"] = "701000";
94
96
  PayStatus2["Timeout"] = "701001";
97
+ PayStatus2["PaymentFailed"] = "701002";
95
98
  PayStatus2["PayOtherEftposFailed"] = "701003";
96
99
  PayStatus2["PayCardErrorFailed"] = "701004";
97
100
  PayStatus2["NoNetWork"] = "701005";
@@ -11,7 +11,7 @@ import './device.less';
11
11
  declare const _default: ({ api, onChange, onClose, className, device_number, isMobile, net, client, formatAmount, containerStyle, }: {
12
12
  api: PayProps['api'];
13
13
  className?: string | undefined;
14
- onChange?: ((status: "success" | "page" | "fail" | "print" | "mark_tx_processed", params?: string | {
14
+ onChange?: ((status: "fail" | "success" | "page" | "print" | "mark_tx_processed", params?: string | {
15
15
  [keys: string]: unknown;
16
16
  } | undefined, other?: any) => void) | undefined;
17
17
  onClose: () => void;
@@ -15,11 +15,11 @@ export declare const useStoreRef: <T extends {
15
15
  readonly numRef: React.MutableRefObject<string | number | undefined>;
16
16
  readonly orderIdRef: React.MutableRefObject<string | number>;
17
17
  readonly modeRef: React.MutableRefObject<ModeEnum>;
18
- readonly statusRef: React.MutableRefObject<"success" | "warn" | "loading" | "fail" | "pedding" | "resove" | "reject" | "question">;
18
+ readonly statusRef: React.MutableRefObject<"init" | "loading" | "warn" | "fail" | "success" | "pedding" | "resove" | "reject" | "question">;
19
19
  readonly netRef: React.MutableRefObject<boolean | undefined>;
20
20
  readonly symbolRef: React.MutableRefObject<string>;
21
21
  readonly amountRef: React.MutableRefObject<string | number>;
22
- readonly eftposRef: React.MutableRefObject<"payo" | "tyro" | "windcave" | "stripe" | "linkly">;
22
+ readonly eftposRef: React.MutableRefObject<"payo" | "tyro" | "windcave" | "stripe" | "linkly" | "huifu">;
23
23
  readonly clientRef: React.MutableRefObject<ClientEnum>;
24
24
  readonly dataRef: React.MutableRefObject<import("./store").State>;
25
25
  };
@@ -32,4 +32,5 @@ export declare const useStoreRef: <T extends {
32
32
  */
33
33
  export declare const useFail: (index: number) => (res: {
34
34
  code?: `${PayStatus}`;
35
+ message?: string;
35
36
  }, isMark?: boolean) => void;
@@ -384,6 +384,22 @@ ${import_utils.locales.getText(
384
384
  );
385
385
  return;
386
386
  }
387
+ if (code === import_const.PayStatus.PaymentFailed) {
388
+ steps[index].title = import_utils.locales.getText(
389
+ "page.eftpos-pay.text.transaction.fail"
390
+ );
391
+ steps[index].fail = (res == null ? void 0 : res.message) || import_utils.locales.getText("page.eftpos-pay.text.failed")(modeRef.current);
392
+ steps[index].status = "fail";
393
+ dispatch((0, import_store.updateSteps)(steps));
394
+ dispatch((0, import_store.updateComponent)("Fail"));
395
+ dispatch(
396
+ (0, import_store.updateCustom)({
397
+ errorStatus: "know"
398
+ // unknow know
399
+ })
400
+ );
401
+ return;
402
+ }
387
403
  steps[index].title = import_utils.locales.getText("page.eftpos-pay.text.failed")(
388
404
  modeRef.current
389
405
  );
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import './index.less';
3
+ import { HuifuActionProps } from './types';
4
+ export declare const NativeDeviceStatus: ({ type, status, }: {
5
+ type: 'scanner' | 'camera';
6
+ status: boolean;
7
+ }) => JSX.Element;
8
+ export declare const ScanAction: React.FC<HuifuActionProps>;
@@ -0,0 +1,174 @@
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/eftposPay/huifu/Action.tsx
30
+ var Action_exports = {};
31
+ __export(Action_exports, {
32
+ NativeDeviceStatus: () => NativeDeviceStatus,
33
+ ScanAction: () => ScanAction
34
+ });
35
+ module.exports = __toCommonJS(Action_exports);
36
+ var import_react = __toESM(require("react"));
37
+ var import_utils = require("@pisell/utils");
38
+ var import_materials = require("@pisell/materials");
39
+ var import_index = require("./index.less");
40
+ var import_hooks = require("./hooks");
41
+ var NativeDeviceStatus = ({
42
+ type,
43
+ status
44
+ }) => {
45
+ const iconType = type === "scanner" ? "pisell2-Scanner" : "pisell2-camera";
46
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-eftpos-pay-huifu-scan-status" }, /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: iconType, style: { fontSize: "40px" } }), /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-eftpos-pay-huifu-scan-status-wrapper" }, /* @__PURE__ */ import_react.default.createElement(
47
+ import_materials.Iconfont,
48
+ {
49
+ style: {
50
+ borderRadius: "50%",
51
+ background: status ? "#17B26A" : "#F04438",
52
+ color: "#fff"
53
+ },
54
+ type: status ? "pisell2-check" : "pisell2-x-close"
55
+ }
56
+ )));
57
+ };
58
+ var DEFAULT_SCANNER_CLASS = "pisell-eftpos-pay-huifu-scan-content-scanner";
59
+ var ScanAction = ({
60
+ isNativeApp,
61
+ onClose,
62
+ onPayClick,
63
+ onScanCallback
64
+ }) => {
65
+ const { scannerStatus } = (0, import_hooks.useScannerDevice)();
66
+ const { cameraStatus, activeCamera } = (0, import_hooks.useCameraDevice)();
67
+ const { scanResult } = (0, import_hooks.useScanListener)();
68
+ const [inputValue, setInputValue] = (0, import_react.useState)("");
69
+ (0, import_react.useEffect)(() => {
70
+ if (!!(scanResult == null ? void 0 : scanResult.value)) {
71
+ onScanCallback(scanResult.value);
72
+ }
73
+ }, [scanResult]);
74
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-eftpos-pay-huifu-scan" }, !isNativeApp ? /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-eftpos-pay-huifu-scan-header" }, /* @__PURE__ */ import_react.default.createElement("span", { className: "pisell-eftpos-pay-huifu-scan-header-title" }, import_utils.locales.getText("page.eftpos-pay.text.huifu.scan.title")), /* @__PURE__ */ import_react.default.createElement(
75
+ "div",
76
+ {
77
+ className: "pisell-eftpos-pay-huifu-scan-header-close",
78
+ onClick: onClose
79
+ },
80
+ /* @__PURE__ */ import_react.default.createElement(import_materials.Iconfont, { type: "pisell2-x-close", style: { fontSize: "24px" } })
81
+ ), /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-eftpos-pay-huifu-scan-header-divider" })) : null, /* @__PURE__ */ import_react.default.createElement(
82
+ "div",
83
+ {
84
+ className: "pisell-eftpos-pay-huifu-scan-content",
85
+ style: { paddingTop: isNativeApp ? "0" : "24px" }
86
+ },
87
+ !!isNativeApp && /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-eftpos-pay-huifu-scan-content-title" }, import_utils.locales.getText("page.eftpos-pay.text.huifu.scan.title")),
88
+ /* @__PURE__ */ import_react.default.createElement(
89
+ "div",
90
+ {
91
+ className: `${DEFAULT_SCANNER_CLASS} ${DEFAULT_SCANNER_CLASS}-${scannerStatus ? "active" : "unactive"}`
92
+ },
93
+ /* @__PURE__ */ import_react.default.createElement(NativeDeviceStatus, { type: "scanner", status: scannerStatus }),
94
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-eftpos-pay-huifu-scan-content-scanner-right" }, /* @__PURE__ */ import_react.default.createElement(
95
+ "span",
96
+ {
97
+ className: `${DEFAULT_SCANNER_CLASS}-${scannerStatus ? "active" : "unactive"}-title`
98
+ },
99
+ scannerStatus ? import_utils.locales.getText(
100
+ "page.eftpos-pay.text.huifu.scan.gun.connected"
101
+ ) : import_utils.locales.getText(
102
+ "page.eftpos-pay.text.huifu.scan.gun.not-connected"
103
+ )
104
+ ), /* @__PURE__ */ import_react.default.createElement(
105
+ "span",
106
+ {
107
+ className: `${DEFAULT_SCANNER_CLASS}-${scannerStatus ? "active" : "unactive"}-desc`
108
+ },
109
+ scannerStatus ? import_utils.locales.getText(
110
+ "page.eftpos-pay.text.huifu.scan.gun.connected-desc"
111
+ ) : import_utils.locales.getText(
112
+ "page.eftpos-pay.text.huifu.scan.gun.not-connected-desc"
113
+ )
114
+ ))
115
+ ),
116
+ cameraStatus && /* @__PURE__ */ import_react.default.createElement(
117
+ "div",
118
+ {
119
+ className: "pisell-eftpos-pay-huifu-scan-content-camera",
120
+ onClick: activeCamera
121
+ },
122
+ /* @__PURE__ */ import_react.default.createElement(NativeDeviceStatus, { type: "camera", status: cameraStatus }),
123
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-eftpos-pay-huifu-scan-content-camera-right" }, /* @__PURE__ */ import_react.default.createElement("span", { className: "pisell-eftpos-pay-huifu-scan-content-camera-title" }, import_utils.locales.getText(
124
+ "page.eftpos-pay.text.huifu.scan.camera-title"
125
+ )), /* @__PURE__ */ import_react.default.createElement("span", { className: "pisell-eftpos-pay-huifu-scan-content-camera-desc" }, import_utils.locales.getText("page.eftpos-pay.text.huifu.scan.camera-desc")))
126
+ ),
127
+ /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-eftpos-pay-huifu-scan-content-input-wrapper" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-eftpos-pay-huifu-scan-content-input-wrapper-title" }, import_utils.locales.getText("page.eftpos-pay.text.huifu.scan.input-title")), /* @__PURE__ */ import_react.default.createElement(
128
+ import_materials.Input,
129
+ {
130
+ placeholder: import_utils.locales.getText(
131
+ "page.eftpos-pay.text.huifu.scan.input-placeholder"
132
+ ),
133
+ maxLength: 18,
134
+ style: { width: "100%", fontSize: "16px" },
135
+ size: "large",
136
+ value: inputValue,
137
+ onChange: (e) => {
138
+ var _a;
139
+ const value = ((_a = e == null ? void 0 : e.target) == null ? void 0 : _a.value) || "";
140
+ const regex = /^[0-9]*$/;
141
+ if (regex.test(value) && (value == null ? void 0 : value.length) <= 18) {
142
+ setInputValue(value);
143
+ }
144
+ }
145
+ }
146
+ ), /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-eftpos-pay-huifu-scan-content-input-wrapper-tip" }, "💡", import_utils.locales.getText("page.eftpos-pay.text.huifu.scan.input-tip")))
147
+ ), /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-eftpos-pay-huifu-scan-footer" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "pisell-eftpos-pay-huifu-scan-footer-divider" }), /* @__PURE__ */ import_react.default.createElement(
148
+ import_materials.Button,
149
+ {
150
+ type: "default",
151
+ block: true,
152
+ size: "large",
153
+ className: "pisell-eftpos-pay-huifu-scan-footer-button",
154
+ onClick: onClose
155
+ },
156
+ import_utils.locales.getText("page.eftpos-pay.text.huifu.scan.cancel")
157
+ ), /* @__PURE__ */ import_react.default.createElement(
158
+ import_materials.Button,
159
+ {
160
+ type: "primary",
161
+ block: true,
162
+ size: "large",
163
+ disabled: !inputValue || (inputValue == null ? void 0 : inputValue.length) < 18,
164
+ onClick: () => onPayClick(inputValue),
165
+ className: "pisell-eftpos-pay-huifu-scan-footer-button"
166
+ },
167
+ import_utils.locales.getText("page.eftpos-pay.text.huifu.scan.confirm")
168
+ )));
169
+ };
170
+ // Annotate the CommonJS export names for ESM import in node:
171
+ 0 && (module.exports = {
172
+ NativeDeviceStatus,
173
+ ScanAction
174
+ });
@@ -0,0 +1,5 @@
1
+ import { State } from '../store';
2
+ import { ModeEnum } from '../const';
3
+ export declare const getStep: (mode?: ModeEnum) => State['steps'];
4
+ declare const _default: (params: any) => State;
5
+ export default _default;
@@ -0,0 +1,86 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all)
7
+ __defProp(target, name, { get: all[name], enumerable: true });
8
+ };
9
+ var __copyProps = (to, from, except, desc) => {
10
+ if (from && typeof from === "object" || typeof from === "function") {
11
+ for (let key of __getOwnPropNames(from))
12
+ if (!__hasOwnProp.call(to, key) && key !== except)
13
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
14
+ }
15
+ return to;
16
+ };
17
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
18
+
19
+ // src/components/eftposPay/huifu/const.ts
20
+ var const_exports = {};
21
+ __export(const_exports, {
22
+ default: () => const_default,
23
+ getStep: () => getStep
24
+ });
25
+ module.exports = __toCommonJS(const_exports);
26
+ var import_utils = require("@pisell/utils");
27
+ var import_const = require("../const");
28
+ var getStep = (mode = import_const.ModeEnum.Pay) => [
29
+ {
30
+ key: Date.now(),
31
+ title: import_utils.locales.getText("page.eftpos-pay.text.loading")(mode),
32
+ // 'Payment in process...',
33
+ text: import_utils.locales.getText("page.eftpos-pay.text.waiting.processing"),
34
+ // 'Waiting for the processing...',
35
+ warn: "",
36
+ tip: import_utils.locales.getText("page.eftpos-pay.text.processing"),
37
+ // 'processing...',
38
+ status: import_const.StatusEnum.Loading
39
+ }
40
+ ];
41
+ var const_default = (params) => {
42
+ const {
43
+ order_id,
44
+ name,
45
+ symbol,
46
+ amount,
47
+ mode,
48
+ number,
49
+ pay,
50
+ device,
51
+ net,
52
+ client,
53
+ ...other
54
+ } = params || {
55
+ mode: import_const.ModeEnum.Pay
56
+ };
57
+ console.log("params =>>>>>> ", params);
58
+ const isPay = mode === import_const.ModeEnum.Pay || mode === import_const.ModeEnum.FullPay;
59
+ return {
60
+ order_id,
61
+ name,
62
+ symbol,
63
+ amount,
64
+ mode,
65
+ eftpos: import_const.EftposEnum.Huifu,
66
+ key: Date.now(),
67
+ step: 0,
68
+ type: import_const.PayRouteEnum.Step,
69
+ title: isPay ? "" : import_utils.locales.getText("page.eftpos-pay.text.loading")(mode),
70
+ component: "",
71
+ status: isPay ? import_const.StatusEnum.Init : import_const.StatusEnum.Loading,
72
+ steps: getStep(mode),
73
+ render: true,
74
+ client: client !== "undefined" ? client : import_const.ClientEnum.Merchant,
75
+ warn: "",
76
+ custom: other || {},
77
+ ...typeof net !== "undefined" ? { net } : {},
78
+ ...typeof number !== "undefined" ? { number } : {},
79
+ ...typeof pay !== "undefined" ? { pay } : {},
80
+ ...typeof device !== "undefined" ? { device } : {}
81
+ };
82
+ };
83
+ // Annotate the CommonJS export names for ESM import in node:
84
+ 0 && (module.exports = {
85
+ getStep
86
+ });
@@ -0,0 +1,25 @@
1
+ export declare const useTerminal: () => {
2
+ isTerminal: any;
3
+ };
4
+ /**
5
+ * 获取扫码设备连接状态
6
+ */
7
+ export declare const useScannerDevice: () => {
8
+ scannerStatus: boolean;
9
+ };
10
+ /**
11
+ * 摄像头激活和状态获取
12
+ */
13
+ export declare const useCameraDevice: () => {
14
+ activeCamera: () => void;
15
+ cameraStatus: any;
16
+ };
17
+ /**
18
+ * 获取外部设备扫描结果
19
+ */
20
+ export declare const useScanListener: () => {
21
+ scanResult: {
22
+ type: 'scanner' | 'nfc' | 'camera';
23
+ value: string;
24
+ };
25
+ };