@pisell/private-materials 6.11.645 → 6.11.646
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.
- package/build/lowcode/assets-daily.json +11 -11
- package/build/lowcode/assets-dev.json +2 -2
- package/build/lowcode/assets-prod.json +11 -11
- package/build/lowcode/meta.js +1 -1
- package/build/lowcode/preview.js +1 -1
- package/build/lowcode/render/default/view.js +18 -18
- package/build/lowcode/view.js +18 -18
- package/es/components/bigSale/index.js +1 -0
- package/es/components/bigSale/templates/Kiosk/index.js +104 -47
- package/es/components/kioskSale/index.js +1 -1
- package/es/plus/salesSdk/bookingEditService/BookingEditHolderField.js +6 -6
- package/es/plus/salesSdk/components/SalesSdkConfirmHolderModal.js +2 -4
- package/es/plus/salesSdk/context/SalesSdkCartContext.js +28 -21
- package/es/plus/salesSdk/context/SalesSdkHolderContext.js +104 -22
- package/es/plus/salesSdk/context/SalesSdkProvider.js +3 -12
- package/es/plus/salesSdk/hosts/ConfirmHolderHostRenderer.js +14 -5
- package/es/plus/salesSdk/normalProductDetail/NormalProductDetailHostRenderer.js +5 -2
- package/es/plus/salesSdk/types.d.ts +16 -1
- package/es/plus/salesSdk/utils/customerAuthGate.js +1 -4
- package/es/plus/salesSdk/utils/enrichCacheItemBeforeAdd.js +1 -1
- package/es/plus/salesSdk/utils/ensureCustomerAuthBeforeAdd.js +6 -6
- package/es/plus/salesSdk/utils/holderSubmitValidation.js +3 -4
- package/es/plus/salesSdk/utils/productHolderConfig.js +3 -17
- package/es/plus/salesSdk/utils/runAddProductFlow.js +14 -5
- package/es/pro/skuDetailModal/flow/modules/holder/index.js +4 -1
- package/lib/components/bigSale/index.js +1 -0
- package/lib/components/bigSale/templates/Kiosk/index.js +104 -47
- package/lib/components/kioskSale/index.js +1 -1
- package/lib/plus/salesSdk/bookingEditService/BookingEditHolderField.js +5 -5
- package/lib/plus/salesSdk/components/SalesSdkConfirmHolderModal.js +2 -4
- package/lib/plus/salesSdk/context/SalesSdkCartContext.js +28 -21
- package/lib/plus/salesSdk/context/SalesSdkHolderContext.js +104 -22
- package/lib/plus/salesSdk/context/SalesSdkProvider.js +3 -12
- package/lib/plus/salesSdk/hosts/ConfirmHolderHostRenderer.js +14 -5
- package/lib/plus/salesSdk/normalProductDetail/NormalProductDetailHostRenderer.js +5 -2
- package/lib/plus/salesSdk/types.d.ts +16 -1
- package/lib/plus/salesSdk/utils/customerAuthGate.js +1 -4
- package/lib/plus/salesSdk/utils/enrichCacheItemBeforeAdd.js +1 -1
- package/lib/plus/salesSdk/utils/ensureCustomerAuthBeforeAdd.js +6 -6
- package/lib/plus/salesSdk/utils/holderSubmitValidation.js +3 -4
- package/lib/plus/salesSdk/utils/productHolderConfig.js +3 -17
- package/lib/plus/salesSdk/utils/runAddProductFlow.js +14 -5
- package/lib/pro/skuDetailModal/flow/modules/holder/index.js +4 -1
- package/package.json +4 -4
|
@@ -6,6 +6,7 @@ const require_SalesSdkHostBridgesContext = require("../../../../plus/salesSdk/co
|
|
|
6
6
|
const require_useSalesUserLogin = require("../../../../hooks/useSalesUserLogin.js");
|
|
7
7
|
const require_resolve = require("../../../checkout/components/PaymentResultToastV2/resolve.js");
|
|
8
8
|
const require_index = require("../../../checkout/components/PaymentResultToastV2/index.js");
|
|
9
|
+
const require_serve = require("../../../Sales/Checkout/serve.js");
|
|
9
10
|
const require_useSalesSdk = require("../../../../plus/salesSdk/hooks/useSalesSdk.js");
|
|
10
11
|
const require_usePickSaleDetailContext = require("../../hooks/usePickSaleDetailContext.js");
|
|
11
12
|
const require_productListPreferences = require("../../utils/productListPreferences.js");
|
|
@@ -38,11 +39,52 @@ function publishKioskCollaborationPreviewStatus(app, status) {
|
|
|
38
39
|
}
|
|
39
40
|
}
|
|
40
41
|
const KIOSK_VIEW_SESSION_KEY = "bigSale.kiosk.view";
|
|
42
|
+
function toFiniteAmount(value) {
|
|
43
|
+
if (value === void 0 || value === null || value === "") return null;
|
|
44
|
+
const amount = Number(value);
|
|
45
|
+
return Number.isFinite(amount) ? amount : null;
|
|
46
|
+
}
|
|
47
|
+
function resolveKioskAmountDue(summary) {
|
|
48
|
+
var _toFiniteAmount;
|
|
49
|
+
if (!summary) return null;
|
|
50
|
+
const orderPaidAmount = toFiniteAmount(summary.order_paid_amount);
|
|
51
|
+
if (orderPaidAmount !== null && orderPaidAmount > 0) return toFiniteAmount(summary.amount_gap);
|
|
52
|
+
return (_toFiniteAmount = toFiniteAmount(summary.expect_amount)) !== null && _toFiniteAmount !== void 0 ? _toFiniteAmount : toFiniteAmount(summary.total_amount);
|
|
53
|
+
}
|
|
54
|
+
function isH5ZeroAmountCheckout(platform, summary) {
|
|
55
|
+
return isH5ZeroAmountValue(platform, resolveKioskAmountDue(summary));
|
|
56
|
+
}
|
|
57
|
+
function isH5ZeroAmountValue(platform, amount) {
|
|
58
|
+
return String(platform || "").trim().toLowerCase() === "h5" && toFiniteAmount(amount) === 0;
|
|
59
|
+
}
|
|
60
|
+
function shouldSubmitKioskOrderBeforeCheckout(options) {
|
|
61
|
+
return options.shouldUseConsumerPayment || isH5ZeroAmountCheckout(options.platform, options.summary);
|
|
62
|
+
}
|
|
63
|
+
function resolveKioskSubmittedPayableAmount(result, tempOrderSummary, contextSummary) {
|
|
64
|
+
var _result$data, _result$data2, _result$data3;
|
|
65
|
+
return [
|
|
66
|
+
result === null || result === void 0 || (_result$data = result.data) === null || _result$data === void 0 ? void 0 : _result$data.order_wait_pay_amount,
|
|
67
|
+
result === null || result === void 0 || (_result$data2 = result.data) === null || _result$data2 === void 0 ? void 0 : _result$data2.expect_amount,
|
|
68
|
+
result === null || result === void 0 || (_result$data3 = result.data) === null || _result$data3 === void 0 ? void 0 : _result$data3.total_amount,
|
|
69
|
+
tempOrderSummary === null || tempOrderSummary === void 0 ? void 0 : tempOrderSummary.expect_amount,
|
|
70
|
+
tempOrderSummary === null || tempOrderSummary === void 0 ? void 0 : tempOrderSummary.total_amount,
|
|
71
|
+
contextSummary === null || contextSummary === void 0 ? void 0 : contextSummary.expect_amount,
|
|
72
|
+
contextSummary === null || contextSummary === void 0 ? void 0 : contextSummary.total_amount
|
|
73
|
+
].find((value) => toFiniteAmount(value) !== null);
|
|
74
|
+
}
|
|
41
75
|
function launchKioskConsumerPaymentAfterReset(_x) {
|
|
42
76
|
return _launchKioskConsumerPaymentAfterReset.apply(this, arguments);
|
|
43
77
|
}
|
|
44
78
|
function _launchKioskConsumerPaymentAfterReset() {
|
|
45
|
-
_launchKioskConsumerPaymentAfterReset = require_asyncToGenerator._asyncToGenerator(function* ({ action, clearCartAndReset, clearSessionStorageOrderSnapshot, onResetError, orderId, persistCatalogView, recalcSummary, replace, totalAmount }) {
|
|
79
|
+
_launchKioskConsumerPaymentAfterReset = require_asyncToGenerator._asyncToGenerator(function* ({ action, clearCartAndReset, clearSessionStorageOrderSnapshot, freePay, onFreePayFailure, onResetError, orderId, persistCatalogView, recalcSummary, redirectZeroAmount, replace, totalAmount }) {
|
|
80
|
+
const shouldRedirectZeroAmount = redirectZeroAmount && Number(totalAmount) === 0;
|
|
81
|
+
if (shouldRedirectZeroAmount) {
|
|
82
|
+
const freePayResult = yield freePay(String(orderId));
|
|
83
|
+
if (!(freePayResult === null || freePayResult === void 0 ? void 0 : freePayResult.status)) {
|
|
84
|
+
onFreePayFailure(freePayResult);
|
|
85
|
+
return;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
46
88
|
try {
|
|
47
89
|
yield clearCartAndReset();
|
|
48
90
|
yield recalcSummary();
|
|
@@ -51,7 +93,7 @@ function _launchKioskConsumerPaymentAfterReset() {
|
|
|
51
93
|
onResetError(error);
|
|
52
94
|
}
|
|
53
95
|
persistCatalogView();
|
|
54
|
-
if (
|
|
96
|
+
if (shouldRedirectZeroAmount) {
|
|
55
97
|
replace(`/payment-finish/success?amount=${totalAmount}&order_id=${orderId}`);
|
|
56
98
|
return;
|
|
57
99
|
}
|
|
@@ -155,7 +197,8 @@ function KioskBigSaleTemplate({ isActive = true, osKey, context, mode, variant,
|
|
|
155
197
|
var _engineContext$appHel, _utils$getApp, _engineContext$appHel2;
|
|
156
198
|
_pisell_utils.locales.init(require_index$1.default, locale || "en");
|
|
157
199
|
const engineContext = require_useEngineContext.default();
|
|
158
|
-
const
|
|
200
|
+
const platform = String(require_useEngineContext.usePlatform() || "").trim().toLowerCase();
|
|
201
|
+
const isH5Platform = platform === "h5";
|
|
159
202
|
const utils = (engineContext === null || engineContext === void 0 || (_engineContext$appHel = engineContext.appHelper) === null || _engineContext$appHel === void 0 ? void 0 : _engineContext$appHel.utils) || {};
|
|
160
203
|
const app = (_utils$getApp = utils.getApp) === null || _utils$getApp === void 0 ? void 0 : _utils$getApp.call(utils);
|
|
161
204
|
const hostChannel = String((engineContext === null || engineContext === void 0 || (_engineContext$appHel2 = engineContext.appHelper) === null || _engineContext$appHel2 === void 0 || (_engineContext$appHel2 = _engineContext$appHel2.constants) === null || _engineContext$appHel2 === void 0 || (_engineContext$appHel2 = _engineContext$appHel2.config) === null || _engineContext$appHel2 === void 0 ? void 0 : _engineContext$appHel2.channel) || "").trim().toLowerCase();
|
|
@@ -462,14 +505,20 @@ function KioskBigSaleTemplate({ isActive = true, osKey, context, mode, variant,
|
|
|
462
505
|
checkoutOpeningRef.current = true;
|
|
463
506
|
setIsCheckoutLoading(true);
|
|
464
507
|
try {
|
|
465
|
-
var _result$payload$payme, _result$payload, _result$data5;
|
|
466
|
-
if (shouldUseConsumerPayment)
|
|
467
|
-
|
|
468
|
-
|
|
508
|
+
var _ref7, _context$sales$bookin5, _context$sales$bookin6, _context$sales$bookin7, _ref8, _ref9, _result$payload$payme, _result$payload, _result$data5;
|
|
509
|
+
if (shouldUseConsumerPayment && typeof utils.action !== "function") throw new Error("[KioskBigSale] appHelper.utils.action is not available.");
|
|
510
|
+
yield context.cart.waitForCartConsistency();
|
|
511
|
+
const currentTempOrder = (_ref7 = (_context$sales$bookin5 = (_context$sales$bookin6 = context.sales.bookingTicket) === null || _context$sales$bookin6 === void 0 || (_context$sales$bookin7 = _context$sales$bookin6.getTempOrder) === null || _context$sales$bookin7 === void 0 ? void 0 : _context$sales$bookin7.call(_context$sales$bookin6)) !== null && _context$sales$bookin5 !== void 0 ? _context$sales$bookin5 : context.sales.tempOrder) !== null && _ref7 !== void 0 ? _ref7 : null;
|
|
512
|
+
if (shouldSubmitKioskOrderBeforeCheckout({
|
|
513
|
+
platform,
|
|
514
|
+
summary: (_ref8 = (_ref9 = context.summary.summary) !== null && _ref9 !== void 0 ? _ref9 : currentTempOrder === null || currentTempOrder === void 0 ? void 0 : currentTempOrder.summary) !== null && _ref8 !== void 0 ? _ref8 : null,
|
|
515
|
+
shouldUseConsumerPayment
|
|
516
|
+
})) {
|
|
517
|
+
var _ref12, _context$sales$bookin8, _context$sales$bookin9, _context$sales$bookin10;
|
|
469
518
|
const result = yield context.cart.submit();
|
|
470
519
|
if (!require_utils.isSalesOrderSubmitSuccess(result)) {
|
|
471
|
-
var
|
|
472
|
-
showCheckoutFailure(String((
|
|
520
|
+
var _ref10, _ref11, _result$message, _result$data4;
|
|
521
|
+
showCheckoutFailure(String((_ref10 = (_ref11 = (_result$message = result === null || result === void 0 ? void 0 : result.message) !== null && _result$message !== void 0 ? _result$message : result === null || result === void 0 ? void 0 : result.msg) !== null && _ref11 !== void 0 ? _ref11 : result === null || result === void 0 || (_result$data4 = result.data) === null || _result$data4 === void 0 ? void 0 : _result$data4.message) !== null && _ref10 !== void 0 ? _ref10 : _pisell_utils.locales.getText("pisell2.big-sale.kiosk.payment-failure-description")));
|
|
473
522
|
return;
|
|
474
523
|
}
|
|
475
524
|
const orderId = require_utils.resolveSaleDetailOrderIdFromSalesResult(context.sales, result);
|
|
@@ -477,45 +526,53 @@ function KioskBigSaleTemplate({ isActive = true, osKey, context, mode, variant,
|
|
|
477
526
|
showCheckoutFailure(String(_pisell_utils.locales.getText("pisell2.big-sale.kiosk.payment-failure-description")));
|
|
478
527
|
return;
|
|
479
528
|
}
|
|
480
|
-
const tempOrder = (
|
|
481
|
-
const totalAmount = (
|
|
482
|
-
if (totalAmount ===
|
|
529
|
+
const tempOrder = (_ref12 = (_context$sales$bookin8 = (_context$sales$bookin9 = context.sales.bookingTicket) === null || _context$sales$bookin9 === void 0 || (_context$sales$bookin10 = _context$sales$bookin9.getTempOrder) === null || _context$sales$bookin10 === void 0 ? void 0 : _context$sales$bookin10.call(_context$sales$bookin9)) !== null && _context$sales$bookin8 !== void 0 ? _context$sales$bookin8 : context.sales.tempOrder) !== null && _ref12 !== void 0 ? _ref12 : null;
|
|
530
|
+
const totalAmount = resolveKioskSubmittedPayableAmount(result, tempOrder === null || tempOrder === void 0 ? void 0 : tempOrder.summary, context.summary.summary);
|
|
531
|
+
if (toFiniteAmount(totalAmount) === null) {
|
|
483
532
|
showCheckoutFailure(String(_pisell_utils.locales.getText("pisell2.big-sale.kiosk.payment-failure-description")));
|
|
484
533
|
return;
|
|
485
534
|
}
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
}
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
535
|
+
const shouldRedirectH5ZeroAmount = isH5ZeroAmountValue(platform, totalAmount);
|
|
536
|
+
if (shouldUseConsumerPayment || shouldRedirectH5ZeroAmount) {
|
|
537
|
+
publishKioskCollaborationPreviewStatus(app, "checkout");
|
|
538
|
+
yield launchKioskConsumerPaymentAfterReset({
|
|
539
|
+
action: utils.action,
|
|
540
|
+
clearCartAndReset: context.sales.clearCartAndReset,
|
|
541
|
+
clearSessionStorageOrderSnapshot: () => {
|
|
542
|
+
var _context$sales$bookin11, _context$sales$bookin12;
|
|
543
|
+
(_context$sales$bookin11 = context.sales.bookingTicket) === null || _context$sales$bookin11 === void 0 || (_context$sales$bookin12 = _context$sales$bookin11.clearSessionStorageOrderSnapshot) === null || _context$sales$bookin12 === void 0 || _context$sales$bookin12.call(_context$sales$bookin11);
|
|
544
|
+
},
|
|
545
|
+
freePay: (freePayOrderId) => require_serve.freePayApi(freePayOrderId),
|
|
546
|
+
onFreePayFailure: (freePayResult) => {
|
|
547
|
+
var _freePayResult$messag;
|
|
548
|
+
showCheckoutFailure(String((_freePayResult$messag = freePayResult === null || freePayResult === void 0 ? void 0 : freePayResult.message) !== null && _freePayResult$messag !== void 0 ? _freePayResult$messag : _pisell_utils.locales.getText("pisell2.big-sale.kiosk.payment-failure-description")));
|
|
549
|
+
},
|
|
550
|
+
onResetError: (error) => {
|
|
551
|
+
console.error("[KioskBigSale] 结账跳转前重置本地订单失败,继续当前流程", error);
|
|
552
|
+
},
|
|
553
|
+
orderId,
|
|
554
|
+
persistCatalogView: () => {
|
|
555
|
+
persistKioskSessionView(context.sales.bookingTicket, "catalog");
|
|
556
|
+
},
|
|
557
|
+
recalcSummary: context.cart.recalcSummary,
|
|
558
|
+
redirectZeroAmount: shouldRedirectH5ZeroAmount,
|
|
559
|
+
replace: (path) => {
|
|
560
|
+
var _utils$history, _app$history2;
|
|
561
|
+
if (typeof (utils === null || utils === void 0 || (_utils$history = utils.history) === null || _utils$history === void 0 ? void 0 : _utils$history.replace) === "function") {
|
|
562
|
+
utils.history.replace(path);
|
|
563
|
+
return;
|
|
564
|
+
}
|
|
565
|
+
if (typeof (app === null || app === void 0 || (_app$history2 = app.history) === null || _app$history2 === void 0 ? void 0 : _app$history2.replace) === "function") {
|
|
566
|
+
app.history.replace(path);
|
|
567
|
+
return;
|
|
568
|
+
}
|
|
569
|
+
window.location.replace(path);
|
|
570
|
+
},
|
|
571
|
+
totalAmount
|
|
572
|
+
});
|
|
573
|
+
return;
|
|
574
|
+
}
|
|
517
575
|
}
|
|
518
|
-
yield context.cart.waitForCartConsistency();
|
|
519
576
|
publishKioskCollaborationPreviewStatus(app, "checkout");
|
|
520
577
|
const result = yield context.sales.openCheckout({
|
|
521
578
|
paymentResultDisplayMode: "page",
|
|
@@ -563,10 +620,10 @@ function KioskBigSaleTemplate({ isActive = true, osKey, context, mode, variant,
|
|
|
563
620
|
return (runtimeDiscountList.length > 0 ? runtimeDiscountList : context.cart.discountList || []).some((discount) => require_adapters.isCustomerVoucher(discount) && Boolean(discount === null || discount === void 0 ? void 0 : discount.isSelected));
|
|
564
621
|
};
|
|
565
622
|
const hasAppliedWalletAsset = () => {
|
|
566
|
-
var _context$sales$
|
|
567
|
-
const walletAssetsState = (_context$sales$
|
|
623
|
+
var _context$sales$bookin13, _context$sales$bookin14, _walletAssetsState$se, _walletAssetsState$se2, _walletAssetsState$se3, _walletAssetsState$se4, _walletAssetsState$co, _walletAssetsState$co2, _ref15, _context$sales$bookin15, _context$sales$bookin16, _context$sales$bookin17;
|
|
624
|
+
const walletAssetsState = (_context$sales$bookin13 = context.sales.bookingTicket) === null || _context$sales$bookin13 === void 0 || (_context$sales$bookin14 = _context$sales$bookin13.getWalletAssetsState) === null || _context$sales$bookin14 === void 0 ? void 0 : _context$sales$bookin14.call(_context$sales$bookin13);
|
|
568
625
|
if (((_walletAssetsState$se = walletAssetsState === null || walletAssetsState === void 0 || (_walletAssetsState$se2 = walletAssetsState.selectedIds) === null || _walletAssetsState$se2 === void 0 ? void 0 : _walletAssetsState$se2.length) !== null && _walletAssetsState$se !== void 0 ? _walletAssetsState$se : 0) > 0 || ((_walletAssetsState$se3 = walletAssetsState === null || walletAssetsState === void 0 || (_walletAssetsState$se4 = walletAssetsState.selectedItems) === null || _walletAssetsState$se4 === void 0 ? void 0 : _walletAssetsState$se4.length) !== null && _walletAssetsState$se3 !== void 0 ? _walletAssetsState$se3 : 0) > 0 || ((_walletAssetsState$co = walletAssetsState === null || walletAssetsState === void 0 || (_walletAssetsState$co2 = walletAssetsState.committedIds) === null || _walletAssetsState$co2 === void 0 ? void 0 : _walletAssetsState$co2.length) !== null && _walletAssetsState$co !== void 0 ? _walletAssetsState$co : 0) > 0) return true;
|
|
569
|
-
const tempOrder = (_ref15 = (_context$sales$
|
|
626
|
+
const tempOrder = (_ref15 = (_context$sales$bookin15 = (_context$sales$bookin16 = context.sales.bookingTicket) === null || _context$sales$bookin16 === void 0 || (_context$sales$bookin17 = _context$sales$bookin16.getTempOrder) === null || _context$sales$bookin17 === void 0 ? void 0 : _context$sales$bookin17.call(_context$sales$bookin16)) !== null && _context$sales$bookin15 !== void 0 ? _context$sales$bookin15 : context.sales.tempOrder) !== null && _ref15 !== void 0 ? _ref15 : null;
|
|
570
627
|
return ((tempOrder === null || tempOrder === void 0 ? void 0 : tempOrder.payments) || []).some((payment) => {
|
|
571
628
|
const voucherId = payment === null || payment === void 0 ? void 0 : payment.voucher_id;
|
|
572
629
|
return voucherId !== void 0 && voucherId !== null && String(voucherId).trim() !== "" && Number(voucherId) !== 0;
|
|
@@ -108,7 +108,7 @@ function KioskSale(props) {
|
|
|
108
108
|
selectionFlowScene: "product-selection",
|
|
109
109
|
enableGlobalScanListener: true,
|
|
110
110
|
normalProductDetailConfig: resolvedNormalProductDetailConfig,
|
|
111
|
-
mergeBookingLinesForDisplay:
|
|
111
|
+
mergeBookingLinesForDisplay: isH5,
|
|
112
112
|
productLoadParams: resolvedProductLoadParams,
|
|
113
113
|
autoCreate: false,
|
|
114
114
|
bootstrapSlot,
|
|
@@ -32,7 +32,7 @@ function hasHolderFormFields(formDataConfig) {
|
|
|
32
32
|
return Array.isArray(formDataConfig === null || formDataConfig === void 0 ? void 0 : formDataConfig.field) || Array.isArray(formDataConfig === null || formDataConfig === void 0 ? void 0 : formDataConfig.form_field);
|
|
33
33
|
}
|
|
34
34
|
const BookingEditHolderField = ({ state, cacheItem, required, value, onChange, getCurrentCacheItem, presentation = "modal" }) => {
|
|
35
|
-
var _context$appHelper, _state$bookingConfig, _holderConfig$form,
|
|
35
|
+
var _context$appHelper, _state$bookingConfig, _holderConfig$form, _currentCacheItem$_ex, _cacheItem$_extend, _state$pet5, _state$pet6, _state$pet7, _state$bookingConfig3, _inlineState$bookingC2, _inlineState$pet2, _state$client2, _inlineState$client5;
|
|
36
36
|
const bridges = require_SalesSdkHostBridgesContext.useSalesSdkHostBridges();
|
|
37
37
|
const platform = require_useEngineContext.usePlatform();
|
|
38
38
|
const context = require_useEngineContext.default();
|
|
@@ -41,8 +41,8 @@ const BookingEditHolderField = ({ state, cacheItem, required, value, onChange, g
|
|
|
41
41
|
const isInline = presentation === "inline";
|
|
42
42
|
const holderConfig = (state === null || state === void 0 || (_state$bookingConfig = state.bookingConfig) === null || _state$bookingConfig === void 0 ? void 0 : _state$bookingConfig.holder) || {};
|
|
43
43
|
const title = (holderConfig === null || holderConfig === void 0 || (_holderConfig$form = holderConfig.form) === null || _holderConfig$form === void 0 ? void 0 : _holderConfig$form.title) || (holderConfig === null || holderConfig === void 0 ? void 0 : holderConfig.title) || _pisell_utils.locales.getText("pisell2.text.holder");
|
|
44
|
-
const isRequired = required !== null && required !== void 0 ? required : (state === null || state === void 0 || (_state$bookingConfig2 = state.bookingConfig) === null || _state$bookingConfig2 === void 0 || (_state$bookingConfig2 = _state$bookingConfig2.config) === null || _state$bookingConfig2 === void 0 || (_state$bookingConfig2 = _state$bookingConfig2.basic) === null || _state$bookingConfig2 === void 0 ? void 0 : _state$bookingConfig2.subject_require) === "require";
|
|
45
44
|
const currentCacheItem = (getCurrentCacheItem === null || getCurrentCacheItem === void 0 ? void 0 : getCurrentCacheItem()) || cacheItem;
|
|
45
|
+
const isRequired = required !== null && required !== void 0 ? required : require_productHolderConfig.isProductHolderRequired(currentCacheItem);
|
|
46
46
|
const maxSelectedCount = (holderConfig === null || holderConfig === void 0 ? void 0 : holderConfig.maxSelectedCount) || (currentCacheItem === null || currentCacheItem === void 0 || (_currentCacheItem$_ex = currentCacheItem._extend) === null || _currentCacheItem$_ex === void 0 ? void 0 : _currentCacheItem$_ex.quantity) || (cacheItem === null || cacheItem === void 0 || (_cacheItem$_extend = cacheItem._extend) === null || _cacheItem$_extend === void 0 ? void 0 : _cacheItem$_extend.quantity) || 1;
|
|
47
47
|
const selectType = maxSelectedCount > 1 ? "multiple" : "single";
|
|
48
48
|
const liveHolderOptions = getHolderOptionsForSource(currentCacheItem);
|
|
@@ -53,16 +53,16 @@ const BookingEditHolderField = ({ state, cacheItem, required, value, onChange, g
|
|
|
53
53
|
setSelectedValues(normalizeHolderFieldValue(value));
|
|
54
54
|
}, [value]);
|
|
55
55
|
const stateHolderRawList = (0, react.useMemo)(() => {
|
|
56
|
-
var _state$pet, _ref, _ref2, _state$pet$formData$, _state$pet2, _state$pet3, _state$
|
|
56
|
+
var _state$pet, _ref, _ref2, _state$pet$formData$, _state$pet2, _state$pet3, _state$bookingConfig2, _state$pet4;
|
|
57
57
|
const holdersFromState = Array.isArray(state === null || state === void 0 || (_state$pet = state.pet) === null || _state$pet === void 0 ? void 0 : _state$pet.holders) ? state.pet.holders : [];
|
|
58
|
-
const formId = (_ref = (_ref2 = (_state$pet$formData$ = state === null || state === void 0 || (_state$pet2 = state.pet) === null || _state$pet2 === void 0 || (_state$pet2 = _state$pet2.formData) === null || _state$pet2 === void 0 || (_state$pet2 = _state$pet2[0]) === null || _state$pet2 === void 0 ? void 0 : _state$pet2.form_id) !== null && _state$pet$formData$ !== void 0 ? _state$pet$formData$ : state === null || state === void 0 || (_state$pet3 = state.pet) === null || _state$pet3 === void 0 || (_state$pet3 = _state$pet3.formData) === null || _state$pet3 === void 0 || (_state$pet3 = _state$pet3[0]) === null || _state$pet3 === void 0 ? void 0 : _state$pet3.id) !== null && _ref2 !== void 0 ? _ref2 : state === null || state === void 0 || (_state$
|
|
58
|
+
const formId = (_ref = (_ref2 = (_state$pet$formData$ = state === null || state === void 0 || (_state$pet2 = state.pet) === null || _state$pet2 === void 0 || (_state$pet2 = _state$pet2.formData) === null || _state$pet2 === void 0 || (_state$pet2 = _state$pet2[0]) === null || _state$pet2 === void 0 ? void 0 : _state$pet2.form_id) !== null && _state$pet$formData$ !== void 0 ? _state$pet$formData$ : state === null || state === void 0 || (_state$pet3 = state.pet) === null || _state$pet3 === void 0 || (_state$pet3 = _state$pet3.formData) === null || _state$pet3 === void 0 || (_state$pet3 = _state$pet3[0]) === null || _state$pet3 === void 0 ? void 0 : _state$pet3.id) !== null && _ref2 !== void 0 ? _ref2 : state === null || state === void 0 || (_state$bookingConfig2 = state.bookingConfig) === null || _state$bookingConfig2 === void 0 || (_state$bookingConfig2 = _state$bookingConfig2.config) === null || _state$bookingConfig2 === void 0 || (_state$bookingConfig2 = _state$bookingConfig2.basic) === null || _state$bookingConfig2 === void 0 || (_state$bookingConfig2 = _state$bookingConfig2.appointment_subject) === null || _state$bookingConfig2 === void 0 ? void 0 : _state$bookingConfig2.form_id) !== null && _ref !== void 0 ? _ref : 0;
|
|
59
59
|
const holdersFromValue = Array.isArray(state === null || state === void 0 || (_state$pet4 = state.pet) === null || _state$pet4 === void 0 || (_state$pet4 = _state$pet4.value) === null || _state$pet4 === void 0 ? void 0 : _state$pet4[formId]) ? state.pet.value[formId] : [];
|
|
60
60
|
return holdersFromState.length > 0 ? holdersFromState : holdersFromValue;
|
|
61
61
|
}, [
|
|
62
62
|
state === null || state === void 0 || (_state$pet5 = state.pet) === null || _state$pet5 === void 0 ? void 0 : _state$pet5.formData,
|
|
63
63
|
state === null || state === void 0 || (_state$pet6 = state.pet) === null || _state$pet6 === void 0 ? void 0 : _state$pet6.holders,
|
|
64
64
|
state === null || state === void 0 || (_state$pet7 = state.pet) === null || _state$pet7 === void 0 ? void 0 : _state$pet7.value,
|
|
65
|
-
state === null || state === void 0 || (_state$
|
|
65
|
+
state === null || state === void 0 || (_state$bookingConfig3 = state.bookingConfig) === null || _state$bookingConfig3 === void 0 ? void 0 : _state$bookingConfig3.config
|
|
66
66
|
]);
|
|
67
67
|
const inlineHolders = (0, react.useMemo)(() => {
|
|
68
68
|
if (Array.isArray(inlinePet.holders)) return inlinePet.holders;
|
|
@@ -52,11 +52,9 @@ const STATUS_OPTIONS = [
|
|
|
52
52
|
/**
|
|
53
53
|
* SalesSdk 版「预约主体未分配」弹窗,UI 与交互对齐 booking ConfirmHolderModal。
|
|
54
54
|
*/
|
|
55
|
-
function SalesSdkConfirmHolderModalContent({ open, lines, liveUnassignedCount,
|
|
56
|
-
var _bookingConfig$config;
|
|
55
|
+
function SalesSdkConfirmHolderModalContent({ open, lines, liveUnassignedCount, canSkip, onAssign, onConfirm, onSkip, onDismissConfirmed, variant }) {
|
|
57
56
|
const isPhoneVariant = variant === "phone";
|
|
58
57
|
const [modal, contextHolder] = antd.Modal.useModal();
|
|
59
|
-
const isSubjectOptional = (bookingConfig === null || bookingConfig === void 0 || (_bookingConfig$config = bookingConfig.config) === null || _bookingConfig$config === void 0 || (_bookingConfig$config = _bookingConfig$config.basic) === null || _bookingConfig$config === void 0 ? void 0 : _bookingConfig$config.subject_require) !== "require";
|
|
60
58
|
const statusOptions = (0, react.useMemo)(() => STATUS_OPTIONS.map((option) => ({
|
|
61
59
|
key: option.key,
|
|
62
60
|
label: _pisell_utils.locales.getText(option.labelKey),
|
|
@@ -131,7 +129,7 @@ function SalesSdkConfirmHolderModalContent({ open, lines, liveUnassignedCount, b
|
|
|
131
129
|
onPromotion: () => {},
|
|
132
130
|
onGift: () => {}
|
|
133
131
|
});
|
|
134
|
-
})), /* @__PURE__ */ react.default.createElement("div", { className: "confirm-holder-modal-footer" },
|
|
132
|
+
})), /* @__PURE__ */ react.default.createElement("div", { className: "confirm-holder-modal-footer" }, canSkip && onSkip ? /* @__PURE__ */ react.default.createElement(antd.Button, {
|
|
135
133
|
onClick: onSkip,
|
|
136
134
|
className: "skip-button",
|
|
137
135
|
size: "large"
|
|
@@ -307,7 +307,7 @@ function readSnapshot(bookingTicket, getHolderOptionsForSource = () => [], shoul
|
|
|
307
307
|
return EMPTY_SNAPSHOT;
|
|
308
308
|
}
|
|
309
309
|
}
|
|
310
|
-
const SalesSdkCartProvider = ({ children, shouldMergeProductLines, mergeBookingLinesForDisplay = true }) => {
|
|
310
|
+
const SalesSdkCartProvider = ({ children, deferHolderAuthOnClose = false, shouldMergeProductLines, mergeBookingLinesForDisplay = true }) => {
|
|
311
311
|
var _sales$bookingTicket;
|
|
312
312
|
const sales = (0, react.useContext)(require_SalesSdkContext.SalesSdkContext);
|
|
313
313
|
const productsCtx = (0, react.useContext)(require_SalesSdkProductContext.SalesSdkProductContext);
|
|
@@ -318,7 +318,7 @@ const SalesSdkCartProvider = ({ children, shouldMergeProductLines, mergeBookingL
|
|
|
318
318
|
const refreshSummary = (0, react.useContext)(require_SalesSdkSummaryContext.SalesSdkSummaryRefreshContext);
|
|
319
319
|
const prepareSummary = (0, react.useContext)(require_SalesSdkSummaryContext.SalesSdkSummaryPrepareContext);
|
|
320
320
|
const refreshRoot = (0, react.useContext)(require_SalesSdkProvider.SalesSdkRootRefreshContext);
|
|
321
|
-
const { holderOptions, getHolderOptionsForSource, ensureHolderOptionsForSource, reload: reloadHolderOptions } = require_SalesSdkHolderContext.useSalesSdkHolderOptional();
|
|
321
|
+
const { holderOptions, getHolderOptionsForSource, ensureHolderOptionsForSource, prepareHolderOptionsForSource, reload: reloadHolderOptions } = require_SalesSdkHolderContext.useSalesSdkHolderOptional();
|
|
322
322
|
const Toast = (0, _pisell_materials.useToast)();
|
|
323
323
|
const toastRef = (0, react.useRef)(Toast);
|
|
324
324
|
toastRef.current = Toast;
|
|
@@ -938,7 +938,7 @@ const SalesSdkCartProvider = ({ children, shouldMergeProductLines, mergeBookingL
|
|
|
938
938
|
const runDirectAddFromCacheItem = function() {
|
|
939
939
|
var _ref11 = require_asyncToGenerator._asyncToGenerator(function* (rawCacheItem) {
|
|
940
940
|
const cacheItemForEnrich = require_mergeCatalogDurationIntoCacheItem.mergeCatalogDurationIntoCacheItem(require_applyExplicitAddQuantityToCacheItem.applyExplicitAddQuantityToCacheItem(rawCacheItem, addQty), product);
|
|
941
|
-
const shouldPrepareHolderOptions = require_shouldPromptHolderOnAddCart.shouldPromptHolderOnAddCart({
|
|
941
|
+
const shouldPrepareHolderOptions = !(options === null || options === void 0 ? void 0 : options.deferHolderUntilSubmit) && require_shouldPromptHolderOnAddCart.shouldPromptHolderOnAddCart({
|
|
942
942
|
cacheItem: cacheItemForEnrich,
|
|
943
943
|
bookingConfig: flowCtx.bookingConfig,
|
|
944
944
|
productSource: product,
|
|
@@ -952,6 +952,7 @@ const SalesSdkCartProvider = ({ children, shouldMergeProductLines, mergeBookingL
|
|
|
952
952
|
}, flowCtx), {}, {
|
|
953
953
|
initialHolderIds: options === null || options === void 0 ? void 0 : options.initialHolderIds,
|
|
954
954
|
holderOptions: holderOptionsForProduct,
|
|
955
|
+
deferHolderUntilSubmit: options === null || options === void 0 ? void 0 : options.deferHolderUntilSubmit,
|
|
955
956
|
mode: "direct"
|
|
956
957
|
})) : {
|
|
957
958
|
status: "ok",
|
|
@@ -1030,7 +1031,7 @@ const SalesSdkCartProvider = ({ children, shouldMergeProductLines, mergeBookingL
|
|
|
1030
1031
|
*/
|
|
1031
1032
|
const confirmDetail = (0, ahooks.useMemoizedFn)(function() {
|
|
1032
1033
|
var _ref15 = require_asyncToGenerator._asyncToGenerator(function* (input) {
|
|
1033
|
-
var _flowCtx$date7, _flowCtx$bookingConfi4, _input$options, _input$
|
|
1034
|
+
var _flowCtx$date7, _flowCtx$bookingConfi4, _input$options, _input$options5, _input$options6, _input$options7;
|
|
1034
1035
|
if (!bookingTicket) throw new Error("[SalesSdk] Cart: bookingTicket 未初始化");
|
|
1035
1036
|
if (typeof bookingTicket.transformDetailToProductAndBooking !== "function") throw new Error("[SalesSdk] Cart: bookingTicket.transformDetailToProductAndBooking 不可用");
|
|
1036
1037
|
const confirmQuantity = require_resolveConfirmDetailQuantity.resolveConfirmDetailQuantity(input);
|
|
@@ -1051,7 +1052,7 @@ const SalesSdkCartProvider = ({ children, shouldMergeProductLines, mergeBookingL
|
|
|
1051
1052
|
if ((_input$options = input.options) === null || _input$options === void 0 ? void 0 : _input$options.multiDayRange) cacheItem = require_patchCacheItemDateRange.patchCacheItemDateRange(cacheItem, input.options.multiDayRange);
|
|
1052
1053
|
else cacheItem = require_patchCacheItemDateRange.applyDefaultMultiDayRangeIfNeeded(cacheItem, catalogItem, flowCtx.date);
|
|
1053
1054
|
if (typeof bookingTicket.decideAfterDetail === "function") {
|
|
1054
|
-
var _flowCtx$date8, _flowCtx$bookingConfi5, _input$options2;
|
|
1055
|
+
var _flowCtx$date8, _flowCtx$bookingConfi5, _input$options2, _input$options3, _input$options4;
|
|
1055
1056
|
const decision = bookingTicket.decideAfterDetail(cacheItem, {
|
|
1056
1057
|
quantity: confirmQuantity,
|
|
1057
1058
|
customerId: flowCtx.customerId,
|
|
@@ -1073,14 +1074,15 @@ const SalesSdkCartProvider = ({ children, shouldMergeProductLines, mergeBookingL
|
|
|
1073
1074
|
})
|
|
1074
1075
|
};
|
|
1075
1076
|
}
|
|
1076
|
-
const holderOptionsForProduct = yield ensureHolderOptionsForSource(input.item);
|
|
1077
|
+
const holderOptionsForProduct = ((_input$options2 = input.options) === null || _input$options2 === void 0 ? void 0 : _input$options2.deferHolderUntilSubmit) ? getHolderOptionsForSource(input.item) : yield ensureHolderOptionsForSource(input.item);
|
|
1077
1078
|
const enriched = yield require_enrichCacheItemBeforeAdd.enrichCacheItemBeforeAdd(require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({
|
|
1078
1079
|
cacheItem: decision.cacheItem,
|
|
1079
1080
|
catalogItem: input.item,
|
|
1080
1081
|
uiHosts
|
|
1081
1082
|
}, flowCtx), {}, {
|
|
1082
|
-
initialHolderIds: (_input$
|
|
1083
|
+
initialHolderIds: (_input$options3 = input.options) === null || _input$options3 === void 0 ? void 0 : _input$options3.initialHolderIds,
|
|
1083
1084
|
holderOptions: holderOptionsForProduct,
|
|
1085
|
+
deferHolderUntilSubmit: (_input$options4 = input.options) === null || _input$options4 === void 0 ? void 0 : _input$options4.deferHolderUntilSubmit,
|
|
1084
1086
|
mode: "direct"
|
|
1085
1087
|
}));
|
|
1086
1088
|
if (enriched.status !== "ok") throw new Error("[SalesSdk] confirmDetail: 加车前校验未通过(Holder / 跨日 Host 未配置或用户取消)");
|
|
@@ -1089,14 +1091,15 @@ const SalesSdkCartProvider = ({ children, shouldMergeProductLines, mergeBookingL
|
|
|
1089
1091
|
products: yield addProductToOrderFromCache(input.item, enriched.cacheItem, { quantity: require_resolveConfirmDetailQuantity.resolveAddQuantityFromCacheItem(enriched.cacheItem, confirmQuantity) })
|
|
1090
1092
|
};
|
|
1091
1093
|
}
|
|
1092
|
-
const holderOptionsForProduct = yield ensureHolderOptionsForSource(input.item);
|
|
1094
|
+
const holderOptionsForProduct = ((_input$options5 = input.options) === null || _input$options5 === void 0 ? void 0 : _input$options5.deferHolderUntilSubmit) ? getHolderOptionsForSource(input.item) : yield ensureHolderOptionsForSource(input.item);
|
|
1093
1095
|
const enriched = yield require_enrichCacheItemBeforeAdd.enrichCacheItemBeforeAdd(require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({
|
|
1094
1096
|
cacheItem,
|
|
1095
1097
|
catalogItem: input.item,
|
|
1096
1098
|
uiHosts
|
|
1097
1099
|
}, flowCtx), {}, {
|
|
1098
|
-
initialHolderIds: (_input$
|
|
1100
|
+
initialHolderIds: (_input$options6 = input.options) === null || _input$options6 === void 0 ? void 0 : _input$options6.initialHolderIds,
|
|
1099
1101
|
holderOptions: holderOptionsForProduct,
|
|
1102
|
+
deferHolderUntilSubmit: (_input$options7 = input.options) === null || _input$options7 === void 0 ? void 0 : _input$options7.deferHolderUntilSubmit,
|
|
1100
1103
|
mode: "direct"
|
|
1101
1104
|
}));
|
|
1102
1105
|
if (enriched.status !== "ok") throw new Error("[SalesSdk] confirmDetail: 加车前校验未通过(Holder / 跨日 Host 未配置或用户取消)");
|
|
@@ -1112,9 +1115,9 @@ const SalesSdkCartProvider = ({ children, shouldMergeProductLines, mergeBookingL
|
|
|
1112
1115
|
/** 资源 / 时间抽屉确认后加车。 */
|
|
1113
1116
|
const confirmBookingEdit = (0, ahooks.useMemoizedFn)(function() {
|
|
1114
1117
|
var _ref16 = require_asyncToGenerator._asyncToGenerator(function* (input) {
|
|
1115
|
-
var _input$
|
|
1118
|
+
var _input$options8;
|
|
1116
1119
|
if (!bookingTicket) throw new Error("[SalesSdk] Cart: bookingTicket 未初始化");
|
|
1117
|
-
const products = yield addProductToOrderFromCache(input.cacheItem, input.cacheItem, { quantity: require_resolveConfirmDetailQuantity.resolveAddQuantityFromCacheItem(input.cacheItem, (_input$
|
|
1120
|
+
const products = yield addProductToOrderFromCache(input.cacheItem, input.cacheItem, { quantity: require_resolveConfirmDetailQuantity.resolveAddQuantityFromCacheItem(input.cacheItem, (_input$options8 = input.options) === null || _input$options8 === void 0 ? void 0 : _input$options8.quantity) });
|
|
1118
1121
|
reloadHolderOptions();
|
|
1119
1122
|
return { products };
|
|
1120
1123
|
});
|
|
@@ -1128,13 +1131,20 @@ const SalesSdkCartProvider = ({ children, shouldMergeProductLines, mergeBookingL
|
|
|
1128
1131
|
/** 无防抖的加车编排(规格 / 资源弹窗链)。 */
|
|
1129
1132
|
const runAddProductFlowBase = (0, ahooks.useMemoizedFn)(function() {
|
|
1130
1133
|
var _ref17 = require_asyncToGenerator._asyncToGenerator(function* (product, options) {
|
|
1131
|
-
|
|
1134
|
+
let deferHolderUntilSubmit = (options === null || options === void 0 ? void 0 : options.deferHolderUntilSubmit) === true;
|
|
1135
|
+
let holderOptionsForProduct = deferHolderUntilSubmit ? getHolderOptionsForSource(product) : [];
|
|
1136
|
+
if (!deferHolderUntilSubmit) {
|
|
1137
|
+
const preparedHolderOptions = yield prepareHolderOptionsForSource(product, { allowBoundCustomerAccess: deferHolderAuthOnClose });
|
|
1138
|
+
holderOptionsForProduct = preparedHolderOptions.options;
|
|
1139
|
+
if (deferHolderAuthOnClose && preparedHolderOptions.loginClosed) deferHolderUntilSubmit = true;
|
|
1140
|
+
}
|
|
1132
1141
|
return require_runAddProductFlow.runAddProductFlow({
|
|
1133
1142
|
addProduct,
|
|
1134
1143
|
confirmDetail,
|
|
1135
1144
|
confirmBookingEdit
|
|
1136
1145
|
}, uiHosts, product, require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, options), getAddFlowContext()), {}, {
|
|
1137
1146
|
holderOptions: holderOptionsForProduct,
|
|
1147
|
+
deferHolderUntilSubmit,
|
|
1138
1148
|
onBookingSelectionCommitted: syncCommittedBookingSelection
|
|
1139
1149
|
}));
|
|
1140
1150
|
});
|
|
@@ -1245,24 +1255,21 @@ const SalesSdkCartProvider = ({ children, shouldMergeProductLines, mergeBookingL
|
|
|
1245
1255
|
*/
|
|
1246
1256
|
const addProductWithFlow = (0, ahooks.useMemoizedFn)(function() {
|
|
1247
1257
|
var _ref20 = require_asyncToGenerator._asyncToGenerator(function* (product, options) {
|
|
1248
|
-
var _ticket$
|
|
1258
|
+
var _ticket$getTempOrder, _ticket$getTempOrder2, _ticket$getOrderCusto, _ticket$getOrderCusto2, _liveTempOrder$custom, _liveTempOrder$_exten, _liveTempOrder$_exten2, _flowCtx$tempOrder, _flowCtx$tempOrder2, _flowCtx$tempOrder3, _flowCtx$tempOrder4, _uiHostsRef$current2, _ticket$setOrderCusto;
|
|
1249
1259
|
if (!bookingTicketRef.current) throw new Error("[SalesSdk] Cart: bookingTicket 未初始化");
|
|
1250
1260
|
const ticket = bookingTicketRef.current;
|
|
1251
1261
|
const flowCtx = getAddFlowContextRef.current();
|
|
1252
|
-
const otherParams = yield Promise.resolve(((_ticket$getOtherParam = ticket.getOtherParams) === null || _ticket$getOtherParam === void 0 ? void 0 : _ticket$getOtherParam.call(ticket)) || {});
|
|
1253
1262
|
const liveTempOrder = (_ticket$getTempOrder = (_ticket$getTempOrder2 = ticket.getTempOrder) === null || _ticket$getTempOrder2 === void 0 ? void 0 : _ticket$getTempOrder2.call(ticket)) !== null && _ticket$getTempOrder !== void 0 ? _ticket$getTempOrder : null;
|
|
1254
1263
|
const orderCustomerSnapshot = (_ticket$getOrderCusto = (_ticket$getOrderCusto2 = ticket.getOrderCustomerSnapshot) === null || _ticket$getOrderCusto2 === void 0 ? void 0 : _ticket$getOrderCusto2.call(ticket)) !== null && _ticket$getOrderCusto !== void 0 ? _ticket$getOrderCusto : null;
|
|
1255
|
-
const
|
|
1256
|
-
if (!(yield require_ensureCustomerAuthBeforeAdd.ensureCustomerAuthBeforeAdd({
|
|
1264
|
+
const flowOptions = (yield require_ensureCustomerAuthBeforeAdd.ensureCustomerAuthBeforeAdd({
|
|
1257
1265
|
product,
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
currentCustomerId,
|
|
1266
|
+
enabled: deferHolderAuthOnClose,
|
|
1267
|
+
currentCustomerId: require_customerAuthGate.resolveCustomerAuthCurrentCustomerId(liveTempOrder === null || liveTempOrder === void 0 ? void 0 : liveTempOrder.customer_id, liveTempOrder === null || liveTempOrder === void 0 || (_liveTempOrder$custom = liveTempOrder.customer) === null || _liveTempOrder$custom === void 0 ? void 0 : _liveTempOrder$custom.id, liveTempOrder === null || liveTempOrder === void 0 || (_liveTempOrder$_exten = liveTempOrder._extend) === null || _liveTempOrder$_exten === void 0 || (_liveTempOrder$_exten = _liveTempOrder$_exten.customerSnapshot) === null || _liveTempOrder$_exten === void 0 ? void 0 : _liveTempOrder$_exten.customer_id, liveTempOrder === null || liveTempOrder === void 0 || (_liveTempOrder$_exten2 = liveTempOrder._extend) === null || _liveTempOrder$_exten2 === void 0 || (_liveTempOrder$_exten2 = _liveTempOrder$_exten2.customerSnapshot) === null || _liveTempOrder$_exten2 === void 0 ? void 0 : _liveTempOrder$_exten2.id, orderCustomerSnapshot === null || orderCustomerSnapshot === void 0 ? void 0 : orderCustomerSnapshot.customer_id, orderCustomerSnapshot === null || orderCustomerSnapshot === void 0 ? void 0 : orderCustomerSnapshot.id, flowCtx.customerId, (_flowCtx$tempOrder = flowCtx.tempOrder) === null || _flowCtx$tempOrder === void 0 ? void 0 : _flowCtx$tempOrder.customer_id, (_flowCtx$tempOrder2 = flowCtx.tempOrder) === null || _flowCtx$tempOrder2 === void 0 || (_flowCtx$tempOrder2 = _flowCtx$tempOrder2.customer) === null || _flowCtx$tempOrder2 === void 0 ? void 0 : _flowCtx$tempOrder2.id, (_flowCtx$tempOrder3 = flowCtx.tempOrder) === null || _flowCtx$tempOrder3 === void 0 || (_flowCtx$tempOrder3 = _flowCtx$tempOrder3._extend) === null || _flowCtx$tempOrder3 === void 0 || (_flowCtx$tempOrder3 = _flowCtx$tempOrder3.customerSnapshot) === null || _flowCtx$tempOrder3 === void 0 ? void 0 : _flowCtx$tempOrder3.customer_id, (_flowCtx$tempOrder4 = flowCtx.tempOrder) === null || _flowCtx$tempOrder4 === void 0 || (_flowCtx$tempOrder4 = _flowCtx$tempOrder4._extend) === null || _flowCtx$tempOrder4 === void 0 || (_flowCtx$tempOrder4 = _flowCtx$tempOrder4.customerSnapshot) === null || _flowCtx$tempOrder4 === void 0 ? void 0 : _flowCtx$tempOrder4.id),
|
|
1261
1268
|
openCustomerAuth: (_uiHostsRef$current2 = uiHostsRef.current) === null || _uiHostsRef$current2 === void 0 ? void 0 : _uiHostsRef$current2.openCustomerAuth,
|
|
1262
1269
|
setOrderCustomer: (_ticket$setOrderCusto = ticket.setOrderCustomer) === null || _ticket$setOrderCusto === void 0 ? void 0 : _ticket$setOrderCusto.bind(ticket)
|
|
1263
|
-
})))
|
|
1270
|
+
})).status === "deferred" ? require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, options), {}, { deferHolderUntilSubmit: true }) : options;
|
|
1264
1271
|
const productLineMergeEnabled = resolveProductLineMergeEnabled(shouldMergeProductLines);
|
|
1265
|
-
return debouncedAddRef.current.addProductWithFlow(product, productLineMergeEnabled ?
|
|
1272
|
+
return debouncedAddRef.current.addProductWithFlow(product, productLineMergeEnabled ? flowOptions : require_objectSpread2._objectSpread2(require_objectSpread2._objectSpread2({}, flowOptions), {}, { debounceMs: 0 }));
|
|
1266
1273
|
});
|
|
1267
1274
|
return function(_x20, _x21) {
|
|
1268
1275
|
return _ref20.apply(this, arguments);
|