@pisell/private-materials 3.4.93 → 3.4.94

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 (73) 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 +9 -9
  7. package/build/lowcode/render/default/view.js +10 -10
  8. package/build/lowcode/view.js +10 -10
  9. package/es/components/booking/addons/model.d.ts +1 -10
  10. package/es/components/booking/forms/model.d.ts +1 -10
  11. package/es/components/booking/info/model.d.ts +1 -10
  12. package/es/components/booking/model.d.ts +1 -9
  13. package/es/components/booking/notes/model.d.ts +1 -10
  14. package/es/components/booking/payments/model.d.ts +1 -10
  15. package/es/components/eftposPay/hooks.d.ts +1 -1
  16. package/es/components/eftposPay/store/index.d.ts +1 -1
  17. package/es/components/pay/toC/PaymentMethods/GlobePayAliPayH5/index.js +52 -44
  18. package/es/components/pay/toC/PaymentMethods/GlobePayPaypalH5/index.js +51 -43
  19. package/es/components/pay/toC/PaymentMethods/GlobePayWxH5/index.js +51 -43
  20. package/es/components/pay/toC/PaymentMethods/MWCreditCard/TDSPay/index.js +24 -15
  21. package/es/components/pay/toC/PaymentMethods/MWCreditCard/index.js +19 -19
  22. package/es/components/pay/toC/PaymentMethods/MWCreditCard/tds2.d.ts +3 -1
  23. package/es/components/pay/toC/PaymentMethods/MWCreditCard/tds2.js +32 -27
  24. package/es/components/pay/toC/PaymentMethods/SuperPayAliPayH5/index.js +17 -16
  25. package/es/components/pay/toC/PaymentMethods/SuperPayWxPayH5/index.js +47 -42
  26. package/es/components/pay/toC/PaymentMethods/WalletPass/index.js +2 -2
  27. package/es/components/pay/toC/PaymentMethods/WalletPass/utils.d.ts +7 -0
  28. package/es/components/pay/toC/PaymentMethods/WalletPass/utils.js +18 -1
  29. package/es/components/pay/toC/PaymentMethods/index.js +116 -90
  30. package/es/components/pay/toC/index.js +4 -1
  31. package/es/components/pay/toC/locales.d.ts +5 -0
  32. package/es/components/pay/toC/locales.js +5 -0
  33. package/es/components/pay/toC/model.d.ts +1 -9
  34. package/es/components/pay/toC/payGroup.d.ts +14 -3
  35. package/es/components/pay/toC/payGroup.js +174 -15
  36. package/es/components/pay/toC/serve.d.ts +13 -0
  37. package/es/components/pay/toC/serve.js +30 -0
  38. package/es/components/pay/toC/utils.d.ts +3 -0
  39. package/es/components/pay/toC/utils.js +5 -1
  40. package/es/components/schedules/model.d.ts +1 -9
  41. package/lib/components/booking/addons/model.d.ts +1 -10
  42. package/lib/components/booking/forms/model.d.ts +1 -10
  43. package/lib/components/booking/info/model.d.ts +1 -10
  44. package/lib/components/booking/model.d.ts +1 -9
  45. package/lib/components/booking/notes/model.d.ts +1 -10
  46. package/lib/components/booking/payments/model.d.ts +1 -10
  47. package/lib/components/eftposPay/hooks.d.ts +1 -1
  48. package/lib/components/eftposPay/store/index.d.ts +1 -1
  49. package/lib/components/pay/toC/PaymentMethods/GlobePayAliPayH5/index.js +7 -3
  50. package/lib/components/pay/toC/PaymentMethods/GlobePayPaypalH5/index.js +7 -3
  51. package/lib/components/pay/toC/PaymentMethods/GlobePayWxH5/index.js +7 -3
  52. package/lib/components/pay/toC/PaymentMethods/MWCreditCard/TDSPay/index.js +19 -7
  53. package/lib/components/pay/toC/PaymentMethods/MWCreditCard/index.js +15 -9
  54. package/lib/components/pay/toC/PaymentMethods/MWCreditCard/tds2.d.ts +3 -1
  55. package/lib/components/pay/toC/PaymentMethods/MWCreditCard/tds2.js +10 -6
  56. package/lib/components/pay/toC/PaymentMethods/SuperPayAliPayH5/index.js +3 -3
  57. package/lib/components/pay/toC/PaymentMethods/SuperPayWxPayH5/index.js +3 -3
  58. package/lib/components/pay/toC/PaymentMethods/WalletPass/index.js +1 -1
  59. package/lib/components/pay/toC/PaymentMethods/WalletPass/utils.d.ts +7 -0
  60. package/lib/components/pay/toC/PaymentMethods/WalletPass/utils.js +16 -0
  61. package/lib/components/pay/toC/PaymentMethods/index.js +12 -7
  62. package/lib/components/pay/toC/index.js +5 -1
  63. package/lib/components/pay/toC/locales.d.ts +5 -0
  64. package/lib/components/pay/toC/locales.js +5 -0
  65. package/lib/components/pay/toC/model.d.ts +1 -9
  66. package/lib/components/pay/toC/payGroup.d.ts +14 -3
  67. package/lib/components/pay/toC/payGroup.js +60 -4
  68. package/lib/components/pay/toC/serve.d.ts +13 -0
  69. package/lib/components/pay/toC/serve.js +12 -2
  70. package/lib/components/pay/toC/utils.d.ts +3 -0
  71. package/lib/components/pay/toC/utils.js +5 -1
  72. package/lib/components/schedules/model.d.ts +1 -9
  73. package/package.json +3 -3
@@ -1,14 +1,29 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
2
3
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
4
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
5
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
6
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
7
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
9
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
10
+ import { postCoreStash } from "./serve";
7
11
  var STORAGE_KEY = 'payGroup';
8
12
 
13
+ /** stash 失败时两次重试之间的间隔(毫秒) */
14
+ var STASH_RETRY_DELAY_MS = 400;
15
+
16
+ /** 含首次请求在内最多尝试次数(失败重试 2 次 => 共 3 次) */
17
+ var STASH_MAX_ATTEMPTS = 3;
18
+ var delay = function delay(ms) {
19
+ return new Promise(function (resolve) {
20
+ return setTimeout(resolve, ms);
21
+ });
22
+ };
23
+
9
24
  /**
10
25
  * @title: 创建交易组key
11
- * @description:
26
+ * @description:
12
27
  * @param {string} orderId
13
28
  * @return {*}
14
29
  * @Author: zhiwei.Wang
@@ -18,9 +33,91 @@ var createPayGroupKey = function createPayGroupKey(orderId) {
18
33
  return "".concat(STORAGE_KEY, "_").concat(orderId);
19
34
  };
20
35
 
36
+ /**
37
+ * 生成 `/h5/core/stash` 的 token:前缀 + 订单号
38
+ */
39
+ export var buildPayGroupStashToken = function buildPayGroupStashToken(orderId) {
40
+ return "payGroup_stash_".concat(orderId);
41
+ };
42
+ var formatWalletCards = function formatWalletCards(cards) {
43
+ return cards.map(function (card) {
44
+ var _card$actualDeduction;
45
+ return {
46
+ id: card.id,
47
+ available_max_amount: (_card$actualDeduction = card.actualDeduction) !== null && _card$actualDeduction !== void 0 ? _card$actualDeduction : card.available_max_amount,
48
+ available_max_par_value: card.available_max_par_value,
49
+ tag: card.tag,
50
+ wallet_pass_usage_unit: card.wallet_pass_usage_unit,
51
+ metadata: card.metadata
52
+ };
53
+ });
54
+ };
55
+
56
+ /**
57
+ * 将带 pay_number 的完整 PayGroup 写入服务端暂存;含首次共最多 3 次,仍失败则返回 false(不阻塞本地写入)。
58
+ */
59
+ var stashPayGroupWithRetry = /*#__PURE__*/function () {
60
+ var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(payGroup, orderId, tokenStr) {
61
+ var token, attempt, _payGroup$walletPass;
62
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
63
+ while (1) switch (_context.prev = _context.next) {
64
+ case 0:
65
+ token = buildPayGroupStashToken(orderId);
66
+ attempt = 0;
67
+ case 2:
68
+ if (!(attempt < STASH_MAX_ATTEMPTS)) {
69
+ _context.next = 18;
70
+ break;
71
+ }
72
+ _context.prev = 3;
73
+ _context.next = 6;
74
+ return postCoreStash({
75
+ token: token,
76
+ data: _objectSpread(_objectSpread({}, payGroup), {}, {
77
+ token: tokenStr,
78
+ orderDetail: undefined,
79
+ otherPayment: undefined,
80
+ walletPass: _objectSpread(_objectSpread({}, (payGroup === null || payGroup === void 0 ? void 0 : payGroup.walletPass) || {}), {}, {
81
+ noApplicableVoucher: [],
82
+ transformList: [],
83
+ cards: formatWalletCards((payGroup === null || payGroup === void 0 || (_payGroup$walletPass = payGroup.walletPass) === null || _payGroup$walletPass === void 0 ? void 0 : _payGroup$walletPass.cards) || [])
84
+ })
85
+ }),
86
+ ttl: 3600
87
+ });
88
+ case 6:
89
+ return _context.abrupt("return", true);
90
+ case 9:
91
+ _context.prev = 9;
92
+ _context.t0 = _context["catch"](3);
93
+ if (!(attempt === STASH_MAX_ATTEMPTS - 1)) {
94
+ _context.next = 13;
95
+ break;
96
+ }
97
+ return _context.abrupt("return", false);
98
+ case 13:
99
+ _context.next = 15;
100
+ return delay(STASH_RETRY_DELAY_MS);
101
+ case 15:
102
+ attempt++;
103
+ _context.next = 2;
104
+ break;
105
+ case 18:
106
+ return _context.abrupt("return", false);
107
+ case 19:
108
+ case "end":
109
+ return _context.stop();
110
+ }
111
+ }, _callee, null, [[3, 9]]);
112
+ }));
113
+ return function stashPayGroupWithRetry(_x, _x2, _x3) {
114
+ return _ref.apply(this, arguments);
115
+ };
116
+ }();
117
+
21
118
  /**
22
119
  * @title: 同步交易组到storage
23
- * @description:
120
+ * @description:
24
121
  * @param {PayGroup} payGroup
25
122
  * @return {*}
26
123
  * @Author: zhiwei.Wang
@@ -32,7 +129,7 @@ export var syncPayGroupToStorage = function syncPayGroupToStorage(payGroup) {
32
129
 
33
130
  /**
34
131
  * @title: 通过订单id获取交易组
35
- * @description:
132
+ * @description:
36
133
  * @param {string} orderId
37
134
  * @return {*}
38
135
  * @Author: zhiwei.Wang
@@ -49,7 +146,7 @@ export var getPayGroupFromStorage = function getPayGroupFromStorage(orderId) {
49
146
 
50
147
  /**
51
148
  * @title: 删除交易组
52
- * @description:
149
+ * @description:
53
150
  * @param {string} orderId
54
151
  * @return {*}
55
152
  * @Author: zhiwei.Wang
@@ -62,7 +159,7 @@ export var removePayGroupFromStorage = function removePayGroupFromStorage(orderI
62
159
 
63
160
  /**
64
161
  * @title: 获取交易组参数
65
- * @description:
162
+ * @description:
66
163
  * @param {string} orderId
67
164
  * @param {any} rest
68
165
  * @return {*}
@@ -88,18 +185,80 @@ export var getPayGroupParamsFromStorage = function getPayGroupParamsFromStorage(
88
185
 
89
186
  /**
90
187
  * @title: 通过订单id设置交易号
91
- * @description:
188
+ * @description: 合并 pay_number 后调用 `/h5/core/stash` 最多 3 次;无论 stash 成败均写入 localStorage
92
189
  * @param {string} orderId
93
190
  * @param {string} payNumber
94
- * @return {*}
191
+ * @param {string} [token] 引擎 utils.token.get(),写入 stash 的 data.token
95
192
  * @Author: zhiwei.Wang
96
193
  * @Date: 2024-08-16 10:41
97
194
  */
98
- export var setPayNumber = function setPayNumber(orderId, payNumber) {
99
- // 查找交易组
100
- var payGroup = getPayGroupFromStorage(orderId);
101
- if (payGroup) {
102
- payGroup.pay_number = payNumber;
103
- syncPayGroupToStorage(payGroup);
104
- }
105
- };
195
+ export var setPayNumber = /*#__PURE__*/function () {
196
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(orderId, payNumber, token) {
197
+ var payGroup, merged;
198
+ return _regeneratorRuntime().wrap(function _callee2$(_context2) {
199
+ while (1) switch (_context2.prev = _context2.next) {
200
+ case 0:
201
+ payGroup = getPayGroupFromStorage(orderId);
202
+ if (!(!payGroup || !orderId)) {
203
+ _context2.next = 3;
204
+ break;
205
+ }
206
+ return _context2.abrupt("return");
207
+ case 3:
208
+ merged = _objectSpread(_objectSpread({}, payGroup), {}, {
209
+ pay_number: payNumber
210
+ });
211
+ _context2.next = 6;
212
+ return stashPayGroupWithRetry(merged, orderId, token);
213
+ case 6:
214
+ syncPayGroupToStorage(merged);
215
+ case 7:
216
+ case "end":
217
+ return _context2.stop();
218
+ }
219
+ }, _callee2);
220
+ }));
221
+ return function setPayNumber(_x4, _x5, _x6) {
222
+ return _ref2.apply(this, arguments);
223
+ };
224
+ }();
225
+
226
+ /**
227
+ * @title: 清除服务端暂存
228
+ * @description:
229
+ * @param {string} orderId
230
+ * @return {*}
231
+ */
232
+ export var clearStashPayGroup = /*#__PURE__*/function () {
233
+ var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(orderId) {
234
+ var token;
235
+ return _regeneratorRuntime().wrap(function _callee3$(_context3) {
236
+ while (1) switch (_context3.prev = _context3.next) {
237
+ case 0:
238
+ token = buildPayGroupStashToken(orderId);
239
+ _context3.prev = 1;
240
+ _context3.next = 4;
241
+ return postCoreStash({
242
+ token: token,
243
+ data: {
244
+ status: "done"
245
+ },
246
+ ttl: 3600
247
+ });
248
+ case 4:
249
+ _context3.next = 9;
250
+ break;
251
+ case 6:
252
+ _context3.prev = 6;
253
+ _context3.t0 = _context3["catch"](1);
254
+ console.error('清除服务端暂存失败', _context3.t0);
255
+ case 9:
256
+ case "end":
257
+ return _context3.stop();
258
+ }
259
+ }, _callee3, null, [[1, 6]]);
260
+ }));
261
+ return function clearStashPayGroup(_x7) {
262
+ return _ref3.apply(this, arguments);
263
+ };
264
+ }();
@@ -72,3 +72,16 @@ export declare const checkPendingPayment: (values: {
72
72
  }) => Promise<{
73
73
  has_pending: boolean;
74
74
  }>;
75
+ /** `/h5/core/stash` 请求体 */
76
+ export interface CoreStashParams {
77
+ /** 缓存 key,由前端生成 */
78
+ token: string;
79
+ /** 暂存数据,如完整 PayGroup */
80
+ data: unknown;
81
+ /** 生命周期(秒),默认 86400(1 天) */
82
+ ttl?: number;
83
+ }
84
+ /**
85
+ * 调用服务端暂存接口,写入 payGroup 等数据。
86
+ */
87
+ export declare const postCoreStash: (params: CoreStashParams) => Promise<void>;
@@ -224,4 +224,34 @@ export var checkPendingPayment = /*#__PURE__*/function () {
224
224
  return function checkPendingPayment(_x5) {
225
225
  return _ref5.apply(this, arguments);
226
226
  };
227
+ }();
228
+
229
+ /** `/h5/core/stash` 请求体 */
230
+
231
+ /**
232
+ * 调用服务端暂存接口,写入 payGroup 等数据。
233
+ */
234
+ export var postCoreStash = /*#__PURE__*/function () {
235
+ var _ref6 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee6(params) {
236
+ var _params$ttl;
237
+ var body;
238
+ return _regeneratorRuntime().wrap(function _callee6$(_context6) {
239
+ while (1) switch (_context6.prev = _context6.next) {
240
+ case 0:
241
+ body = {
242
+ token: params.token,
243
+ data: params.data,
244
+ ttl: (_params$ttl = params.ttl) !== null && _params$ttl !== void 0 ? _params$ttl : 86400
245
+ };
246
+ _context6.next = 3;
247
+ return request.getRequest().post('/h5/core/stash', body, {});
248
+ case 3:
249
+ case "end":
250
+ return _context6.stop();
251
+ }
252
+ }, _callee6);
253
+ }));
254
+ return function postCoreStash(_x6) {
255
+ return _ref6.apply(this, arguments);
256
+ };
227
257
  }();
@@ -27,6 +27,9 @@ export declare const formatWalletPassParams: (payGroup: PayGroup) => {
27
27
  voucher_id: any;
28
28
  tag: any;
29
29
  wallet_pass_usage_unit: any;
30
+ metadata: {
31
+ unique_payment_number: any;
32
+ };
30
33
  }[];
31
34
  };
32
35
  /**
@@ -41,12 +41,16 @@ export var formatWalletPassParams = function formatWalletPassParams(payGroup) {
41
41
  payment_group_id = payGroup.payment_group_id,
42
42
  walletPass = payGroup.walletPass;
43
43
  var payments = (walletPass === null || walletPass === void 0 ? void 0 : walletPass.cards.map(function (item) {
44
+ var _item$metadata;
44
45
  return {
45
46
  amount: getAvailableMaxAmount(item),
46
47
  wallet_pass_use_value: item.recommended_usage_par_value,
47
48
  voucher_id: item.id,
48
49
  tag: item.tag,
49
- wallet_pass_usage_unit: item.wallet_pass_usage_unit
50
+ wallet_pass_usage_unit: item.wallet_pass_usage_unit,
51
+ metadata: {
52
+ unique_payment_number: (_item$metadata = item.metadata) === null || _item$metadata === void 0 ? void 0 : _item$metadata.unique_payment_number
53
+ }
50
54
  };
51
55
  })) || [];
52
56
  return {
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import { CalendarDataItem, ScheduleItem } from "./type";
3
2
  import dayjs from "dayjs";
4
3
  export interface FormState {
@@ -69,11 +68,4 @@ export interface FormState {
69
68
  };
70
69
  setGlobalState: Function | null;
71
70
  }
72
- export declare const Provider: (ComponentUi: any) => any, Context: import("react").Context<{
73
- state: FormState;
74
- } & {
75
- dispatch: (params: {
76
- type: string;
77
- payload: any;
78
- }) => void;
79
- }>;
71
+ export declare const Provider: any, Context: any;
@@ -1,10 +1 @@
1
- /// <reference types="react" />
2
- import { FormState } from "../model";
3
- export declare const Provider: (ComponentUi: any) => any, Context: import("react").Context<{
4
- state: FormState;
5
- } & {
6
- dispatch: (params: {
7
- type: string;
8
- payload: any;
9
- }) => void;
10
- }>;
1
+ export declare const Provider: any, Context: any;
@@ -1,10 +1 @@
1
- /// <reference types="react" />
2
- import { FormState } from "../model";
3
- export declare const Provider: (ComponentUi: any) => any, Context: import("react").Context<{
4
- state: FormState;
5
- } & {
6
- dispatch: (params: {
7
- type: string;
8
- payload: any;
9
- }) => void;
10
- }>;
1
+ export declare const Provider: any, Context: any;
@@ -1,14 +1,5 @@
1
- /// <reference types="react" />
2
- import { FormState } from '../model';
3
1
  export declare const walkInData: {
4
2
  id: number;
5
3
  nickname: string;
6
4
  };
7
- export declare const Provider: (ComponentUi: any) => any, Context: import("react").Context<{
8
- state: FormState;
9
- } & {
10
- dispatch: (params: {
11
- type: string;
12
- payload: any;
13
- }) => void;
14
- }>;
5
+ export declare const Provider: any, Context: any;
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  export interface FormState {
3
2
  amountSymbol: string;
4
3
  apis: {
@@ -109,11 +108,4 @@ export declare const walkInData: {
109
108
  id: number;
110
109
  nickname: string;
111
110
  };
112
- export declare const Provider: (ComponentUi: any) => any, Context: import("react").Context<{
113
- state: FormState;
114
- } & {
115
- dispatch: (params: {
116
- type: string;
117
- payload: any;
118
- }) => void;
119
- }>;
111
+ export declare const Provider: any, Context: any;
@@ -1,10 +1 @@
1
- /// <reference types="react" />
2
- import { FormState } from "../model";
3
- export declare const Provider: (ComponentUi: any) => any, Context: import("react").Context<{
4
- state: FormState;
5
- } & {
6
- dispatch: (params: {
7
- type: string;
8
- payload: any;
9
- }) => void;
10
- }>;
1
+ export declare const Provider: any, Context: any;
@@ -1,10 +1 @@
1
- /// <reference types="react" />
2
- import { FormState } from "../model";
3
- export declare const Provider: (ComponentUi: any) => any, Context: import("react").Context<{
4
- state: FormState;
5
- } & {
6
- dispatch: (params: {
7
- type: string;
8
- payload: any;
9
- }) => void;
10
- }>;
1
+ export declare const Provider: any, Context: any;
@@ -19,7 +19,7 @@ export declare const useStoreRef: <T extends {
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<"stripe" | "payo" | "tyro" | "windcave" | "linkly">;
23
23
  readonly clientRef: React.MutableRefObject<ClientEnum>;
24
24
  readonly dataRef: React.MutableRefObject<import("./store").State>;
25
25
  };
@@ -299,7 +299,7 @@ export declare const backUpFree: (payload: Partial<State>) => {
299
299
  amount?: string | number | undefined;
300
300
  mode?: "refund" | "pay" | "fullPay" | "query" | undefined;
301
301
  order_id?: string | number | undefined;
302
- eftpos?: "payo" | "tyro" | "windcave" | "stripe" | "linkly" | undefined;
302
+ eftpos?: "stripe" | "payo" | "tyro" | "windcave" | "linkly" | undefined;
303
303
  action?: "amount" | "pay" | "deviceList" | undefined;
304
304
  key?: number | undefined;
305
305
  step?: number | undefined;
@@ -40,18 +40,22 @@ var import_serve = require("./serve");
40
40
  var import_model = require("../../model");
41
41
  var import_payGroup = require("../../payGroup");
42
42
  var import_usePaymentLogger = __toESM(require("../../../../../hooks/usePaymentLogger"));
43
+ var import_useEngineContext = __toESM(require("../../../../../hooks/useEngineContext"));
43
44
  var import_index = require("./index.less");
44
45
  var GlobePayAliPayH5 = (props, ref) => {
45
- var _a;
46
+ var _a, _b;
46
47
  const { state } = (0, import_react.useContext)(import_model.Context);
47
48
  const { onChange } = props;
48
49
  const [open, setOpen] = (0, import_react.useState)(false);
49
50
  const [showSuccessBackButton, setShowSuccessBackButton] = (0, import_react.useState)(false);
51
+ const context = (0, import_useEngineContext.default)();
52
+ const { token } = ((_a = context.appHelper) == null ? void 0 : _a.utils) || {};
50
53
  const paymentLogger = (0, import_usePaymentLogger.default)({
51
- orderId: ((_a = state.payGroup) == null ? void 0 : _a.order_id) || "unknown",
54
+ orderId: ((_b = state.payGroup) == null ? void 0 : _b.order_id) || "unknown",
52
55
  step: "2"
53
56
  });
54
57
  const init = async ({ payGroup }) => {
58
+ var _a2;
55
59
  paymentLogger.addLog({
56
60
  key: "GlobePayAliPayH5初始化开始",
57
61
  value: ""
@@ -88,7 +92,7 @@ var GlobePayAliPayH5 = (props, ref) => {
88
92
  key: "GlobePayAliPayH5获取支付链接成功",
89
93
  value: ""
90
94
  });
91
- (0, import_payGroup.setPayNumber)(payGroup == null ? void 0 : payGroup.order_id, data == null ? void 0 : data.pay_number);
95
+ await (0, import_payGroup.setPayNumber)(payGroup == null ? void 0 : payGroup.order_id, data == null ? void 0 : data.pay_number, (_a2 = token == null ? void 0 : token.get) == null ? void 0 : _a2.call(token));
92
96
  paymentLogger.addLog({
93
97
  key: "GlobePayAliPayH5准备跳转支付宝",
94
98
  value: ""
@@ -40,17 +40,21 @@ var import_serve = require("./serve");
40
40
  var import_model = require("../../model");
41
41
  var import_payGroup = require("../../payGroup");
42
42
  var import_usePaymentLogger = __toESM(require("../../../../../hooks/usePaymentLogger"));
43
+ var import_useEngineContext = __toESM(require("../../../../../hooks/useEngineContext"));
43
44
  var import_index = require("./index.less");
44
45
  var GlobePayPaypalH5 = (props, ref) => {
45
- var _a;
46
+ var _a, _b;
46
47
  const { state } = (0, import_react.useContext)(import_model.Context);
47
48
  const { onChange } = props;
48
49
  const [open, setOpen] = (0, import_react.useState)(false);
50
+ const context = (0, import_useEngineContext.default)();
51
+ const { token } = ((_a = context.appHelper) == null ? void 0 : _a.utils) || {};
49
52
  const paymentLogger = (0, import_usePaymentLogger.default)({
50
- orderId: ((_a = state.payGroup) == null ? void 0 : _a.order_id) || "unknown",
53
+ orderId: ((_b = state.payGroup) == null ? void 0 : _b.order_id) || "unknown",
51
54
  step: "2"
52
55
  });
53
56
  const init = async ({ payGroup }) => {
57
+ var _a2;
54
58
  paymentLogger.addLog({
55
59
  key: "GlobePayPaypalH5初始化开始",
56
60
  value: ""
@@ -87,7 +91,7 @@ var GlobePayPaypalH5 = (props, ref) => {
87
91
  key: "GlobePayPaypalH5获取支付链接成功",
88
92
  value: ""
89
93
  });
90
- (0, import_payGroup.setPayNumber)(payGroup == null ? void 0 : payGroup.order_id, data == null ? void 0 : data.pay_number);
94
+ await (0, import_payGroup.setPayNumber)(payGroup == null ? void 0 : payGroup.order_id, data == null ? void 0 : data.pay_number, (_a2 = token == null ? void 0 : token.get) == null ? void 0 : _a2.call(token));
91
95
  paymentLogger.addLog({
92
96
  key: "GlobePayPaypalH5准备跳转Paypal",
93
97
  value: ""
@@ -40,17 +40,21 @@ var import_serve = require("./serve");
40
40
  var import_model = require("../../model");
41
41
  var import_payGroup = require("../../payGroup");
42
42
  var import_usePaymentLogger = __toESM(require("../../../../../hooks/usePaymentLogger"));
43
+ var import_useEngineContext = __toESM(require("../../../../../hooks/useEngineContext"));
43
44
  var import_index = require("./index.less");
44
45
  var GlobePayWxH5 = (props, ref) => {
45
- var _a;
46
+ var _a, _b;
46
47
  const { state } = (0, import_react.useContext)(import_model.Context);
47
48
  const { onChange } = props;
48
49
  const [open, setOpen] = (0, import_react.useState)(false);
50
+ const context = (0, import_useEngineContext.default)();
51
+ const { token } = ((_a = context.appHelper) == null ? void 0 : _a.utils) || {};
49
52
  const paymentLogger = (0, import_usePaymentLogger.default)({
50
- orderId: ((_a = state.payGroup) == null ? void 0 : _a.order_id) || "unknown",
53
+ orderId: ((_b = state.payGroup) == null ? void 0 : _b.order_id) || "unknown",
51
54
  step: "2"
52
55
  });
53
56
  const init = async ({ payGroup }) => {
57
+ var _a2;
54
58
  paymentLogger.addLog({
55
59
  key: "GlobePayWxH5初始化开始",
56
60
  value: ""
@@ -87,7 +91,7 @@ var GlobePayWxH5 = (props, ref) => {
87
91
  key: "GlobePayWxH5获取支付链接成功",
88
92
  value: ""
89
93
  });
90
- (0, import_payGroup.setPayNumber)(payGroup == null ? void 0 : payGroup.order_id, data == null ? void 0 : data.pay_number);
94
+ await (0, import_payGroup.setPayNumber)(payGroup == null ? void 0 : payGroup.order_id, data == null ? void 0 : data.pay_number, (_a2 = token == null ? void 0 : token.get) == null ? void 0 : _a2.call(token));
91
95
  paymentLogger.addLog({
92
96
  key: "GlobePayWxH5准备跳转微信",
93
97
  value: ""
@@ -42,13 +42,17 @@ var import_model = require("../../../model");
42
42
  var import_payGroup = require("../../../payGroup");
43
43
  var import_index = require("./index.less");
44
44
  var import_utils = require("@pisell/utils");
45
+ var import_useEngineContext = __toESM(require("../../../../../../hooks/useEngineContext"));
45
46
  var TDSPay = (props, ref) => {
47
+ var _a;
46
48
  const { onChange, closeAll } = props;
47
49
  const [open, setOpen] = (0, import_react.useState)(false);
48
50
  const [showCloseConfirm, setShowCloseConfirm] = (0, import_react.useState)(false);
49
51
  const sessionIdRef = (0, import_react.useRef)(0);
50
52
  const payingRef = (0, import_react.useRef)(false);
51
53
  const { state } = (0, import_react.useContext)(import_model.Context);
54
+ const engineContext = (0, import_useEngineContext.default)();
55
+ const { token } = ((_a = engineContext.appHelper) == null ? void 0 : _a.utils) || {};
52
56
  (0, import_react.useEffect)(() => {
53
57
  return () => {
54
58
  sessionIdRef.current += 1;
@@ -64,6 +68,7 @@ var TDSPay = (props, ref) => {
64
68
  onChange == null ? void 0 : onChange(res);
65
69
  };
66
70
  const init = async (res, order, preCheckData) => {
71
+ var _a2;
67
72
  if (payingRef.current) return;
68
73
  payingRef.current = true;
69
74
  sessionIdRef.current += 1;
@@ -73,7 +78,10 @@ var TDSPay = (props, ref) => {
73
78
  const isCancelled = () => sessionIdRef.current !== session;
74
79
  const callback = createSessionCallback(session);
75
80
  if (preCheckData) {
76
- (0, import_tds2.startPayment)({ payData: preCheckData }, { callback, isCancelled });
81
+ (0, import_tds2.startPayment)(
82
+ { payData: preCheckData },
83
+ { callback, isCancelled, stashAuthToken: (_a2 = token == null ? void 0 : token.get) == null ? void 0 : _a2.call(token) }
84
+ );
77
85
  return;
78
86
  }
79
87
  if (res.id) {
@@ -98,10 +106,10 @@ var TDSPay = (props, ref) => {
98
106
  onChange == null ? void 0 : onChange({ key: "cancel" });
99
107
  };
100
108
  const _fastPayNew = async (res, callback, isCancelled) => {
101
- var _a, _b, _c;
109
+ var _a2, _b, _c, _d;
102
110
  try {
103
111
  const params = (0, import_payGroup.getPayGroupParamsFromStorage)(
104
- (_a = state.payGroup) == null ? void 0 : _a.order_id,
112
+ (_a2 = state.payGroup) == null ? void 0 : _a2.order_id,
105
113
  { card_id: res.id }
106
114
  );
107
115
  if (!params) {
@@ -120,7 +128,11 @@ var TDSPay = (props, ref) => {
120
128
  params
121
129
  });
122
130
  if (isCancelled()) return;
123
- (0, import_payGroup.setPayNumber)((_c = state.payGroup) == null ? void 0 : _c.order_id, data == null ? void 0 : data.pay_number);
131
+ await (0, import_payGroup.setPayNumber)(
132
+ (_c = state.payGroup) == null ? void 0 : _c.order_id,
133
+ data == null ? void 0 : data.pay_number,
134
+ (_d = token == null ? void 0 : token.get) == null ? void 0 : _d.call(token)
135
+ );
124
136
  if ((data == null ? void 0 : data.type) === "token") {
125
137
  callback({ key: "success", data });
126
138
  }
@@ -139,7 +151,7 @@ var TDSPay = (props, ref) => {
139
151
  }
140
152
  };
141
153
  const newCardPay = (res, callback, isCancelled) => {
142
- var _a, _b;
154
+ var _a2, _b, _c;
143
155
  let _cardInfo = {
144
156
  card_name: res.card_name,
145
157
  card_number: res.card_number,
@@ -149,7 +161,7 @@ var TDSPay = (props, ref) => {
149
161
  is_save: res.is_save ? 1 : 0
150
162
  };
151
163
  _cardInfo = (0, import_payGroup.getPayGroupParamsFromStorage)(
152
- (_a = state.payGroup) == null ? void 0 : _a.order_id,
164
+ (_a2 = state.payGroup) == null ? void 0 : _a2.order_id,
153
165
  _cardInfo
154
166
  );
155
167
  if (!_cardInfo) {
@@ -165,7 +177,7 @@ var TDSPay = (props, ref) => {
165
177
  }
166
178
  (0, import_tds2.startPayment)(
167
179
  { orderId: (_b = state.payGroup) == null ? void 0 : _b.order_id, cardInfo: _cardInfo },
168
- { callback, isCancelled }
180
+ { callback, isCancelled, stashAuthToken: (_c = token == null ? void 0 : token.get) == null ? void 0 : _c.call(token) }
169
181
  );
170
182
  };
171
183
  (0, import_react.useImperativeHandle)(