@pisell/private-materials 6.12.298 → 6.12.299

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/meta.js +1 -1
  5. package/build/lowcode/preview.js +1 -1
  6. package/build/lowcode/render/default/view.css +1 -1
  7. package/build/lowcode/render/default/view.js +2 -2
  8. package/build/lowcode/view.css +1 -1
  9. package/build/lowcode/view.js +2 -2
  10. package/es/components/HDLKiosk/index.less +1 -0
  11. package/es/components/HDLKiosk/slices/customization/NextBowlModal/NextBowlModal.js +6 -6
  12. package/es/components/HDLKiosk/slices/customization/NextBowlModal/next-bowl.css +0 -52
  13. package/es/components/HDLKiosk/slices/customization/PrimaryProductSelection/index.js +11 -21
  14. package/es/components/HDLKiosk/slices/customization/PrimaryProductSelection/index.less +11 -27
  15. package/es/components/HDLKiosk/slices/customization/Screen/index.js +16 -11
  16. package/es/components/HDLKiosk/slices/customization/Screen/index.less +49 -0
  17. package/es/components/HDLKiosk/slices/customization/TooLightDialog/index.js +2 -1
  18. package/es/components/HDLKiosk/slices/customization/TooLightDialog/index.less +0 -22
  19. package/es/components/HDLKiosk/slices/customization/dialogButtons.less +73 -0
  20. package/es/components/HDLKiosk/ui/entry/Screen/index.js +21 -1
  21. package/es/components/HDLKiosk/ui/entry/Screen/index.less +47 -1
  22. package/es/components/HDLKiosk/ui/entry/Screen/useEntryScreenLayout.js +3 -1
  23. package/es/components/bigSale/components/BookingFloatingPanel/useBookingPanelController.js +0 -1
  24. package/es/components/bigSale/components/ProductList/index.js +0 -1
  25. package/es/components/bigSale/components/TimeBar/index.js +0 -1
  26. package/es/components/bigSale/dialog.js +0 -1
  27. package/es/components/bigSale/hooks/useBigSaleContext.js +0 -1
  28. package/es/components/bigSale/hooks/useSelectFloorMapResourceForBigSale.js +0 -1
  29. package/es/components/bigSale/index.js +0 -1
  30. package/es/components/bigSale/templates/HDLKiosk/index.js +9 -16
  31. package/es/components/bigSale/templates/Kiosk/index.js +0 -1
  32. package/es/components/sharedSecondaryBigSale/SharedSecondaryBigSaleReceiver.js +0 -1
  33. package/es/index.js +0 -2
  34. package/es/plus/multiCurrencySettlement/index.js +1 -1
  35. package/es/plus/pisellReservation/data/bookingToReservationTables.js +1 -1
  36. package/es/plus/pisellReservation/floorMap/floorPlanApi.js +1 -1
  37. package/es/plus/pisellReservation/floorMap/reservationMock.js +1 -1
  38. package/es/plus/saasDevice/devicePasscodes/model.js +4 -4
  39. package/es/plus/saleDetail/Base.js +0 -1
  40. package/es/plus/saleDetail/components/Client/hooks/useClientSelectorProps.js +0 -1
  41. package/es/plus/saleDetail/components/DetailActions/PrintAction.js +0 -1
  42. package/es/plus/saleDetail/components/DetailActions/index.js +0 -1
  43. package/es/plus/saleDetail/components/SummaryFinancialSections/index.js +0 -1
  44. package/es/plus/saleDetail/index.js +0 -1
  45. package/es/plus/saleDetail/tmpl/B/components/Dish/index.js +0 -1
  46. package/es/plus/saleDetail/tmpl/B/index.js +0 -1
  47. package/es/plus/salesSdk/utils/addProductWithFlowDebounced.js +1 -1
  48. package/es/plus/salesSdk/utils/bookingDate.js +1 -1
  49. package/es/plus/salesSdk/utils/enrichCartLineHolderDisplay.js +1 -1
  50. package/es/plus/walletPassGallery/components/timelineSection/index.js +4 -4
  51. package/es/private-materials/lowcode/authmodal/meta.d.ts +1 -0
  52. package/es/pro/Login2.0/AuthModal.d.ts +1 -1
  53. package/es/pro/Login2.0/index.d.ts +2 -2
  54. package/es/pro/Login2.0/shared/types.d.ts +1 -1
  55. package/lib/components/HDLKiosk/index.less +1 -0
  56. package/lib/components/HDLKiosk/slices/customization/NextBowlModal/NextBowlModal.js +6 -6
  57. package/lib/components/HDLKiosk/slices/customization/NextBowlModal/next-bowl.css +0 -52
  58. package/lib/components/HDLKiosk/slices/customization/PrimaryProductSelection/index.js +11 -21
  59. package/lib/components/HDLKiosk/slices/customization/PrimaryProductSelection/index.less +11 -27
  60. package/lib/components/HDLKiosk/slices/customization/Screen/index.js +16 -11
  61. package/lib/components/HDLKiosk/slices/customization/Screen/index.less +49 -0
  62. package/lib/components/HDLKiosk/slices/customization/TooLightDialog/index.js +2 -1
  63. package/lib/components/HDLKiosk/slices/customization/TooLightDialog/index.less +0 -22
  64. package/lib/components/HDLKiosk/slices/customization/dialogButtons.less +73 -0
  65. package/lib/components/HDLKiosk/ui/entry/Screen/index.js +21 -1
  66. package/lib/components/HDLKiosk/ui/entry/Screen/index.less +47 -1
  67. package/lib/components/HDLKiosk/ui/entry/Screen/useEntryScreenLayout.js +3 -1
  68. package/lib/components/bigSale/templates/HDLKiosk/index.js +9 -16
  69. package/package.json +4 -4
  70. package/es/components/bigSale/templates/HDLKiosk/hooks/useHDLKioskEntryPreparationToast.js +0 -20
  71. package/es/plus/pisellReservation/index.js +0 -17
  72. package/es/plus/salesSdk/index.js +0 -54
  73. package/lib/components/bigSale/templates/HDLKiosk/hooks/useHDLKioskEntryPreparationToast.js +0 -21
@@ -254,6 +254,7 @@ function CustomizationScreen({ product, loading, errorReference, errorMessage, b
254
254
  ]);
255
255
  const skipCustomization = (0, react.useCallback)(() => {
256
256
  if (busy || syncing || uncertain) return;
257
+ if (bowls && bowls.session.getSnapshot().draft.id !== (bowlState === null || bowlState === void 0 ? void 0 : bowlState.draft.id)) return;
257
258
  if (editing) {
258
259
  bowls === null || bowls === void 0 || bowls.returnFromEdit();
259
260
  return;
@@ -269,6 +270,7 @@ function CustomizationScreen({ product, loading, errorReference, errorMessage, b
269
270
  send,
270
271
  syncing,
271
272
  bowls,
273
+ bowlState === null || bowlState === void 0 ? void 0 : bowlState.draft.id,
272
274
  editing,
273
275
  uncertain
274
276
  ]);
@@ -293,9 +295,7 @@ function CustomizationScreen({ product, loading, errorReference, errorMessage, b
293
295
  closeTooLight,
294
296
  skipCustomization
295
297
  ]);
296
- const hasBowlContent = standardProduct || measurement.gross.greaterThan(0);
297
- const advance = hasBowlContent || uncertain || (bowlState === null || bowlState === void 0 ? void 0 : bowlState.phase) === "saved" ? submit : skipCustomization;
298
- const advanceLabel = uncertain ? _pisell_utils.locales.getText("pisell2.hdl-kiosk.bowl-retry") : _pisell_utils.locales.getText(hasBowlContent || (bowlState === null || bowlState === void 0 ? void 0 : bowlState.phase) === "saved" ? "pisell2.hdl-kiosk.customization-next" : "pisell2.hdl-kiosk.skip");
298
+ const advanceLabel = uncertain ? _pisell_utils.locales.getText("pisell2.hdl-kiosk.bowl-retry") : _pisell_utils.locales.getText("pisell2.hdl-kiosk.customization-next");
299
299
  const { openCart } = require_index.useHDLKioskBottomBarController();
300
300
  require_index.useHDLKioskBottomBar((0, react.useMemo)(() => {
301
301
  var _orderBar$cartItemCou;
@@ -326,15 +326,20 @@ function CustomizationScreen({ product, loading, errorReference, errorMessage, b
326
326
  disabled: busy || syncing || uncertain || orderBar.cartLineCount === 0,
327
327
  onOpenCart: openCart
328
328
  }),
329
- trailing: /* @__PURE__ */ react.default.createElement("button", {
329
+ trailing: /* @__PURE__ */ react.default.createElement(react.default.Fragment, null, /* @__PURE__ */ react.default.createElement("button", {
330
+ type: "button",
331
+ className: "hdl-customization-skip",
332
+ disabled: busy || syncing || uncertain,
333
+ onClick: skipCustomization
334
+ }, _pisell_utils.locales.getText("pisell2.hdl-kiosk.customization-skip")), /* @__PURE__ */ react.default.createElement("button", {
330
335
  type: "button",
331
336
  className: "hdl-floating-bar__button hdl-customization-next",
332
- disabled: busy || syncing || hasBowlContent && (loading || !productFacts),
333
- onClick: advance
337
+ disabled: busy || syncing || loading || !productFacts,
338
+ onClick: submit
334
339
  }, /* @__PURE__ */ react.default.createElement("span", null, busy || syncing ? _pisell_utils.locales.getText("pisell2.hdl-kiosk.working") : advanceLabel), busy || syncing ? /* @__PURE__ */ react.default.createElement("span", {
335
340
  className: "hdl-loading-spinner",
336
341
  "aria-hidden": "true"
337
- }) : /* @__PURE__ */ react.default.createElement(require_artwork.NextIcon, null)),
342
+ }) : /* @__PURE__ */ react.default.createElement(require_artwork.NextIcon, null))),
338
343
  cartOpenBar: (controller) => ({
339
344
  ariaLabel: _pisell_utils.locales.getText("pisell2.hdl-kiosk.customization-actions-label"),
340
345
  leading: /* @__PURE__ */ react.default.createElement("button", {
@@ -346,10 +351,10 @@ function CustomizationScreen({ product, loading, errorReference, errorMessage, b
346
351
  trailing: /* @__PURE__ */ react.default.createElement("button", {
347
352
  type: "button",
348
353
  className: "hdl-floating-bar__button hdl-customization-next",
349
- disabled: busy || syncing || hasBowlContent && (loading || !productFacts),
354
+ disabled: busy || syncing || loading || !productFacts,
350
355
  onClick: () => {
351
356
  controller.onClose();
352
- advance();
357
+ submit();
353
358
  }
354
359
  }, /* @__PURE__ */ react.default.createElement("span", null, busy || syncing ? _pisell_utils.locales.getText("pisell2.hdl-kiosk.working") : advanceLabel), busy || syncing ? /* @__PURE__ */ react.default.createElement("span", {
355
360
  className: "hdl-loading-spinner",
@@ -368,9 +373,9 @@ function CustomizationScreen({ product, loading, errorReference, errorMessage, b
368
373
  canGoBack,
369
374
  syncing,
370
375
  amountText,
371
- advance,
376
+ submit,
377
+ skipCustomization,
372
378
  advanceLabel,
373
- hasBowlContent,
374
379
  productFacts,
375
380
  loading,
376
381
  openCart,
@@ -293,6 +293,55 @@
293
293
  margin-top: 26px;
294
294
  }
295
295
 
296
+ .hdl-customization-skip {
297
+ position: absolute;
298
+ right: 26px;
299
+ bottom: calc(100% + 16px);
300
+ max-width: calc(100% - 52px);
301
+ min-height: 58px;
302
+ border: 1px solid rgba(255, 255, 255, 0.22);
303
+ border-radius: 999px;
304
+ padding: 10px 24px;
305
+ background: rgba(17, 24, 39, 0.86);
306
+ color: #fff;
307
+ font-size: 21px;
308
+ font-weight: 900;
309
+ line-height: 1.4;
310
+ overflow-wrap: anywhere;
311
+ cursor: pointer;
312
+ transition: background 160ms, transform 160ms;
313
+
314
+ &:focus-visible {
315
+ outline: 3px solid #2563eb;
316
+ outline-offset: 4px;
317
+ }
318
+
319
+ &:not(:disabled):hover {
320
+ background: rgba(178, 13, 18, 0.92);
321
+ transform: translateY(-2px);
322
+ }
323
+
324
+ &:not(:disabled):active {
325
+ transform: scale(0.98);
326
+ }
327
+
328
+ &:disabled {
329
+ border-color: transparent;
330
+ background: #ebe6e1;
331
+ color: #847b75;
332
+ cursor: not-allowed;
333
+ }
334
+
335
+ @media (prefers-reduced-motion: reduce) {
336
+ transition: none;
337
+
338
+ &:not(:disabled):hover,
339
+ &:not(:disabled):active {
340
+ transform: none;
341
+ }
342
+ }
343
+ }
344
+
296
345
  .hdl-customization-next {
297
346
  border: 0;
298
347
  background: linear-gradient(180deg, #20b8aa, #119184);
@@ -20,11 +20,12 @@ function TooLightDialog({ busy, editing, hasSavedBowls, onSkip, onRetry }) {
20
20
  height: 887
21
21
  }), /* @__PURE__ */ react.default.createElement("h1", { className: "hdl-too-light-dialog__title" }, title), /* @__PURE__ */ react.default.createElement("p", { className: "hdl-too-light-dialog__description" }, description), /* @__PURE__ */ react.default.createElement("div", { className: "hdl-too-light-dialog__actions" }, /* @__PURE__ */ react.default.createElement("button", {
22
22
  type: "button",
23
+ className: "hdl-bowl-dialog-button",
23
24
  disabled: busy,
24
25
  onClick: onSkip
25
26
  }, skipLabel), /* @__PURE__ */ react.default.createElement("button", {
26
27
  type: "button",
27
- className: "is-primary",
28
+ className: "hdl-bowl-dialog-button hdl-bowl-dialog-button--primary",
28
29
  disabled: busy,
29
30
  onClick: onRetry,
30
31
  autoFocus: true
@@ -35,26 +35,4 @@
35
35
  gap: 16px;
36
36
  margin-top: 30px;
37
37
  }
38
-
39
- .hdl-too-light-dialog__actions button {
40
- min-height: 94px;
41
- border: 3px solid #e85c0c;
42
- border-radius: 20px;
43
- padding: 18px 28px;
44
- background: transparent;
45
- color: inherit;
46
- font-size: 32px;
47
- font-weight: 800;
48
- line-height: 1.25;
49
- cursor: pointer;
50
- }
51
-
52
- .hdl-too-light-dialog__actions button.is-primary {
53
- background: linear-gradient(135deg, #ef6b0c, #dc5108);
54
- color: #fff;
55
- }
56
-
57
- .hdl-too-light-dialog__actions button:disabled {
58
- opacity: 0.55;
59
- }
60
38
  }
@@ -0,0 +1,73 @@
1
+ // Shared by product selection, weight warning and every next-bowl stage.
2
+ .pisell-lowcode-modal-root .pisell-pc-modal.hdl-kiosk-modal .hdl-kiosk-dialog {
3
+ .hdl-bowl-dialog-button {
4
+ box-sizing: border-box;
5
+ display: inline-flex;
6
+ min-width: 0;
7
+ max-width: 100%;
8
+ min-height: 64px;
9
+ align-items: center;
10
+ justify-content: center;
11
+ gap: 10px;
12
+ border: 1.5px solid #d6a2a5;
13
+ border-radius: 16px;
14
+ padding: 14px 20px;
15
+ background: #fff6f6;
16
+ color: #b20d12;
17
+ font-family: inherit;
18
+ font-size: 22px;
19
+ font-weight: 750;
20
+ line-height: 1.4;
21
+ text-align: center;
22
+ white-space: normal;
23
+ cursor: pointer;
24
+ touch-action: manipulation;
25
+ -webkit-tap-highlight-color: transparent;
26
+ transition: background 160ms, transform 160ms;
27
+
28
+ &:not(:disabled):hover {
29
+ background: #fce8e9;
30
+ }
31
+
32
+ &:not(:disabled):active {
33
+ transform: translateY(2px);
34
+ }
35
+
36
+ &--primary {
37
+ border-color: transparent;
38
+ background: #b20d12;
39
+ color: #fff;
40
+
41
+ &:not(:disabled):hover {
42
+ background: #970b10;
43
+ }
44
+ }
45
+
46
+ &:disabled {
47
+ border-color: transparent;
48
+ background: #ebe6e1;
49
+ color: #847b75;
50
+ opacity: 1;
51
+ cursor: not-allowed;
52
+ transform: none;
53
+ }
54
+
55
+ &:focus-visible {
56
+ outline: 3px solid #2563eb;
57
+ outline-offset: 4px;
58
+ }
59
+ }
60
+
61
+ @media (max-width: 600px) {
62
+ .hdl-bowl-dialog-button {
63
+ padding: 12px 16px;
64
+ font-size: 18px;
65
+ }
66
+ }
67
+
68
+ @media (prefers-reduced-motion: reduce) {
69
+ .hdl-bowl-dialog-button {
70
+ transition: none;
71
+ }
72
+ }
73
+ }
@@ -65,12 +65,14 @@ function HandTapIcon() {
65
65
  }), /* @__PURE__ */ react.default.createElement("g", { className: "hdl-entry-tap-hand" }, /* @__PURE__ */ react.default.createElement("path", { d: "M196,120a27.9,27.9,0,0,0-13.36,3.39A28,28,0,0,0,144,106.7V76a28,28,0,0,0-56,0v80l-3.82-6.13a28,28,0,0,0-48.41,28.17l29.32,50A8,8,0,1,0,78.89,220L49.6,170a12,12,0,1,1,20.78-12l.14.23,18.68,30A8,8,0,0,0,104,184V76a12,12,0,0,1,24,0v68a8,8,0,1,0,16,0V132a12,12,0,0,1,24,0v20a8,8,0,0,0,16,0v-4a12,12,0,0,1,24,0v36c0,21.61-7.1,36.3-7.16,36.42a8,8,0,0,0,3.58,10.73A7.9,7.9,0,0,0,208,232a8,8,0,0,0,7.16-4.42c.37-.73,8.85-18,8.85-43.58V148A28,28,0,0,0,196,120Z" })));
66
66
  }
67
67
  function EntryScreen({ locale, model, theme, onThemeChange, isActive = true, onLocaleChange, onTechnicalSupportClick, onSelect, busy = false, canRetryPreparation = false }) {
68
+ var _capabilityErrorCodes;
68
69
  const layout = require_useEntryScreenLayout.useEntryScreenLayout();
69
70
  const buttonRef = (0, react.useRef)(null);
70
71
  const indicatorRef = (0, react.useRef)(null);
71
72
  const feedbackFrame = (0, react.useRef)();
72
73
  const lastActivation = (0, react.useRef)(-Infinity);
73
74
  const [documentHidden, setDocumentHidden] = (0, react.useState)(() => typeof document !== "undefined" && document.hidden);
75
+ const [capabilityErrorsVisible, setCapabilityErrorsVisible] = (0, react.useState)(false);
74
76
  const entryLocale = locale || "en";
75
77
  const quickOption = model.options.find((option) => option.entry === "quick" && option.interactive);
76
78
  const canStart = Boolean(quickOption && (quickOption.available || canRetryPreparation)) && !busy && isActive;
@@ -119,6 +121,12 @@ function EntryScreen({ locale, model, theme, onThemeChange, isActive = true, onL
119
121
  });
120
122
  onSelect(quickOption.entry);
121
123
  };
124
+ const capabilityErrorCodes = model.capabilityErrorCodes;
125
+ const capabilityErrorSignature = (_capabilityErrorCodes = capabilityErrorCodes === null || capabilityErrorCodes === void 0 ? void 0 : capabilityErrorCodes.join("|")) !== null && _capabilityErrorCodes !== void 0 ? _capabilityErrorCodes : "";
126
+ const pendingOptions = model.options.filter((option) => option.statusTone === "pending");
127
+ (0, react.useEffect)(() => {
128
+ setCapabilityErrorsVisible(false);
129
+ }, [capabilityErrorSignature]);
122
130
  return /* @__PURE__ */ react.default.createElement("section", {
123
131
  ref: layout.ref,
124
132
  className: "hdl-entry-screen",
@@ -177,7 +185,19 @@ function EntryScreen({ locale, model, theme, onThemeChange, isActive = true, onL
177
185
  }, /* @__PURE__ */ react.default.createElement("span", {
178
186
  className: "hdl-entry-tap-indicator",
179
187
  ref: indicatorRef
180
- }, /* @__PURE__ */ react.default.createElement(HandTapIcon, null)), /* @__PURE__ */ react.default.createElement("span", { className: "hdl-entry-tap-copy" }, _pisell_utils.locales.getText("pisell2.hdl-kiosk.tap-to-start"))) : null));
188
+ }, /* @__PURE__ */ react.default.createElement(HandTapIcon, null)), /* @__PURE__ */ react.default.createElement("span", { className: "hdl-entry-tap-copy" }, _pisell_utils.locales.getText("pisell2.hdl-kiosk.tap-to-start"))) : null), pendingOptions.length || model.assistanceMessage ? /* @__PURE__ */ react.default.createElement("div", { className: "hdl-entry-screen__notices" }, pendingOptions.map((option) => /* @__PURE__ */ react.default.createElement("p", {
189
+ key: option.entry,
190
+ className: "hdl-entry-screen__device-status",
191
+ role: "status"
192
+ }, option.statusText)), model.assistanceMessage ? (capabilityErrorCodes === null || capabilityErrorCodes === void 0 ? void 0 : capabilityErrorCodes.length) ? /* @__PURE__ */ react.default.createElement("button", {
193
+ type: "button",
194
+ className: "hdl-entry-screen__assistance is-toggle",
195
+ "aria-expanded": capabilityErrorsVisible,
196
+ onClick: () => setCapabilityErrorsVisible((visible) => !visible)
197
+ }, /* @__PURE__ */ react.default.createElement("span", null, model.assistanceMessage), capabilityErrorsVisible ? /* @__PURE__ */ react.default.createElement("code", null, capabilityErrorCodes.join(" / ")) : null) : /* @__PURE__ */ react.default.createElement("p", {
198
+ className: "hdl-entry-screen__assistance",
199
+ role: "alert"
200
+ }, model.assistanceMessage) : null) : null);
181
201
  }
182
202
  //#endregion
183
203
  exports.EntryScreen = EntryScreen;
@@ -389,7 +389,8 @@
389
389
 
390
390
  .hdl-entry-language:focus-within,
391
391
  .hdl-entry-theme-toggle:focus-visible,
392
- .hdl-entry-technical-support:focus-visible {
392
+ .hdl-entry-technical-support:focus-visible,
393
+ .hdl-entry-screen__notices button:focus-visible {
393
394
  outline: 3px solid var(--hdl-entry-focus);
394
395
  outline-offset: 5px;
395
396
  }
@@ -415,6 +416,51 @@
415
416
  }
416
417
  }
417
418
 
419
+ .hdl-entry-screen__notices {
420
+ position: absolute;
421
+ top: var(--hdl-entry-notices-top);
422
+ left: 50%;
423
+ z-index: 4;
424
+ width: var(--hdl-entry-notices-width);
425
+ max-height: calc(100% - var(--hdl-entry-notices-top) - 24px);
426
+ overflow: auto;
427
+ padding: 16px 20px;
428
+ pointer-events: none;
429
+ color: var(--hdl-entry-copy);
430
+ transform: translateX(-50%);
431
+ }
432
+
433
+ .hdl-entry-screen__assistance,
434
+ .hdl-entry-screen__device-status {
435
+ display: block;
436
+ width: 100%;
437
+ margin: 0;
438
+ border: 0;
439
+ padding: 0;
440
+ background: transparent;
441
+ color: inherit;
442
+ font-size: 20px;
443
+ font-weight: 500;
444
+ line-height: 1.5;
445
+ text-align: center;
446
+ }
447
+
448
+ .hdl-entry-screen__device-status + .hdl-entry-screen__assistance {
449
+ margin-top: 12px;
450
+ }
451
+
452
+ .hdl-entry-screen__assistance.is-toggle {
453
+ cursor: pointer;
454
+ pointer-events: auto;
455
+ }
456
+
457
+ .hdl-entry-screen__assistance code {
458
+ display: block;
459
+ margin-top: 6px;
460
+ color: inherit;
461
+ font-size: 15px;
462
+ }
463
+
418
464
  & > .hdl-operation-overlay {
419
465
  background: var(--hdl-entry-loading-background);
420
466
  color: var(--hdl-entry-copy);
@@ -51,7 +51,9 @@ function useEntryScreenLayout() {
51
51
  "--hdl-entry-icon-size": `${Math.max(44, width * .112)}px`,
52
52
  "--hdl-entry-copy-size": `${copySize}px`,
53
53
  "--hdl-entry-invitation-gap": `${invitationGap}px`,
54
- "--hdl-entry-touch-size": `${Math.min(200, Math.max(96, surface.width * .24))}px`
54
+ "--hdl-entry-touch-size": `${Math.min(200, Math.max(96, surface.width * .24))}px`,
55
+ "--hdl-entry-notices-width": `${Math.min(734, width * .9)}px`,
56
+ "--hdl-entry-notices-top": `${(surface.height - height) / 2 + height * .398 + indicatorSize + invitationGap + copySize * 1.25 + 32}px`
55
57
  }
56
58
  };
57
59
  }
@@ -6,7 +6,6 @@ const require_config = require("../../../HDLKiosk/app/contracts/config.js");
6
6
  const require_index = require("../../../HDLKiosk/index.js");
7
7
  const require_transactionState = require("./utils/transactionState.js");
8
8
  const require_useBigSaleHDLKioskAdapter = require("./hooks/useBigSaleHDLKioskAdapter.js");
9
- const require_useHDLKioskEntryPreparationToast = require("./hooks/useHDLKioskEntryPreparationToast.js");
10
9
  const require_HDLKioskPaymentRuntime = require("./payment/HDLKioskPaymentRuntime.js");
11
10
  const require_HDLKioskIdentityAuthPanel = require("./HDLKioskIdentityAuthPanel.js");
12
11
  const require_useHDLKioskH5AuthModule = require("./hooks/useHDLKioskH5AuthModule.js");
@@ -30,7 +29,7 @@ let _pisell_utils = require("@pisell/utils");
30
29
  * 仅负责装配 Host 和配置,不承载流程或页面语义。
31
30
  */
32
31
  function HDLKioskBigSaleTemplate({ isActive = true, context, businessCode, locale, productLoadParams, productCatalogSessionKey, productCatalogReady = true, saleDetailModuleConfig, onOrderComplete, variant }) {
33
- var _engineContext$appHel, _engineContext$appHel2, _engineContext$appHel3, _engineContext$appHel4, _engineContext$appHel5, _engineContext$appHel6, _engineContext$appHel7, _engineContext$appHel9, _engineContext$appHel14, _engineContext$appHel15, _engineContext$appHel16, _engineContext$appHel17, _context$sales$bookin, _context$sales$bookin2, _context$sales$bookin3, _productLoadParams$me, _context$sales$defaul, _context$sales$tempOr, _context$sales$tempOr2, _context$sales$tempOr3, _context$sales$tempOr4, _ref, _context$cart$display;
32
+ var _engineContext$appHel, _engineContext$appHel2, _engineContext$appHel3, _engineContext$appHel4, _engineContext$appHel5, _engineContext$appHel6, _engineContext$appHel8, _engineContext$appHel13, _engineContext$appHel14, _engineContext$appHel15, _engineContext$appHel16, _context$sales$bookin, _context$sales$bookin2, _context$sales$bookin3, _productLoadParams$me, _context$sales$defaul, _context$sales$tempOr, _context$sales$tempOr2, _context$sales$tempOr3, _context$sales$tempOr4, _ref, _context$cart$display;
34
33
  const entryDataPreparing = !productCatalogReady || context.products.loading || context.sales.catalogState === "pending";
35
34
  const { completedOrder, completedOrderLoading, paymentResult, updatePaymentResult: handlePaymentResultChange } = require_useHDLKioskPaymentState.useHDLKioskPaymentState({
36
35
  active: isActive,
@@ -61,38 +60,32 @@ function HDLKioskBigSaleTemplate({ isActive = true, context, businessCode, local
61
60
  }, [isActive, screenProtector]);
62
61
  const logger = engineContext === null || engineContext === void 0 || (_engineContext$appHel4 = engineContext.appHelper) === null || _engineContext$appHel4 === void 0 || (_engineContext$appHel4 = _engineContext$appHel4.utils) === null || _engineContext$appHel4 === void 0 || (_engineContext$appHel5 = _engineContext$appHel4.getApp) === null || _engineContext$appHel5 === void 0 || (_engineContext$appHel5 = _engineContext$appHel5.call(_engineContext$appHel4)) === null || _engineContext$appHel5 === void 0 ? void 0 : _engineContext$appHel5.logger;
63
62
  _pisell_utils.locales.init(require_locales.default, locale || "en");
64
- require_useHDLKioskEntryPreparationToast.useHDLKioskEntryPreparationToast({
65
- active: isActive,
66
- message: _pisell_utils.locales.getText("pisell2.hdl-kiosk.entry-data-preparing"),
67
- preparing: entryDataPreparing,
68
- toast: engineContext === null || engineContext === void 0 || (_engineContext$appHel6 = engineContext.appHelper) === null || _engineContext$appHel6 === void 0 || (_engineContext$appHel6 = _engineContext$appHel6.utils) === null || _engineContext$appHel6 === void 0 ? void 0 : _engineContext$appHel6.Toast
69
- });
70
- const updateLocaleRuntime = engineContext === null || engineContext === void 0 || (_engineContext$appHel7 = engineContext.appHelper) === null || _engineContext$appHel7 === void 0 || (_engineContext$appHel7 = _engineContext$appHel7.utils) === null || _engineContext$appHel7 === void 0 || (_engineContext$appHel7 = _engineContext$appHel7.businessUtils) === null || _engineContext$appHel7 === void 0 ? void 0 : _engineContext$appHel7.updateLocaleRuntime;
63
+ const updateLocaleRuntime = engineContext === null || engineContext === void 0 || (_engineContext$appHel6 = engineContext.appHelper) === null || _engineContext$appHel6 === void 0 || (_engineContext$appHel6 = _engineContext$appHel6.utils) === null || _engineContext$appHel6 === void 0 || (_engineContext$appHel6 = _engineContext$appHel6.businessUtils) === null || _engineContext$appHel6 === void 0 ? void 0 : _engineContext$appHel6.updateLocaleRuntime;
71
64
  const handleLocaleChange = (0, react.useCallback)((nextLocale) => {
72
65
  updateLocaleRuntime === null || updateLocaleRuntime === void 0 || updateLocaleRuntime(nextLocale);
73
66
  }, [updateLocaleRuntime]);
74
67
  const handleTechnicalSupportClick = (0, react.useCallback)(() => {
75
- var _engineContext$appHel8, _app$history;
76
- const app = engineContext === null || engineContext === void 0 || (_engineContext$appHel8 = engineContext.appHelper) === null || _engineContext$appHel8 === void 0 || (_engineContext$appHel8 = _engineContext$appHel8.utils) === null || _engineContext$appHel8 === void 0 ? void 0 : _engineContext$appHel8.getApp();
68
+ var _engineContext$appHel7, _app$history;
69
+ const app = engineContext === null || engineContext === void 0 || (_engineContext$appHel7 = engineContext.appHelper) === null || _engineContext$appHel7 === void 0 || (_engineContext$appHel7 = _engineContext$appHel7.utils) === null || _engineContext$appHel7 === void 0 ? void 0 : _engineContext$appHel7.getApp();
77
70
  app === null || app === void 0 || (_app$history = app.history) === null || _app$history === void 0 || _app$history.push("/admin-entry");
78
- }, [engineContext === null || engineContext === void 0 || (_engineContext$appHel9 = engineContext.appHelper) === null || _engineContext$appHel9 === void 0 ? void 0 : _engineContext$appHel9.utils]);
71
+ }, [engineContext === null || engineContext === void 0 || (_engineContext$appHel8 = engineContext.appHelper) === null || _engineContext$appHel8 === void 0 ? void 0 : _engineContext$appHel8.utils]);
79
72
  const publishCollaborationStatus = (0, react.useCallback)((status) => {
80
73
  var _screenProtector$setH2;
81
74
  if (!isActive) return;
82
75
  screenProtector === null || screenProtector === void 0 || (_screenProtector$setH2 = screenProtector.setHomePageActive) === null || _screenProtector$setH2 === void 0 || _screenProtector$setH2.call(screenProtector, screenProtectorOwner.current, status === "home");
83
76
  try {
84
- var _engineContext$appHel10, _engineContext$appHel11, _engineContext$appHel12, _engineContext$appHel13;
85
- engineContext === null || engineContext === void 0 || (_engineContext$appHel10 = engineContext.appHelper) === null || _engineContext$appHel10 === void 0 || (_engineContext$appHel10 = _engineContext$appHel10.utils) === null || _engineContext$appHel10 === void 0 || (_engineContext$appHel11 = _engineContext$appHel10.getApp) === null || _engineContext$appHel11 === void 0 || (_engineContext$appHel11 = _engineContext$appHel11.call(_engineContext$appHel10)) === null || _engineContext$appHel11 === void 0 || (_engineContext$appHel11 = _engineContext$appHel11.applicationManager) === null || _engineContext$appHel11 === void 0 || (_engineContext$appHel12 = _engineContext$appHel11.get) === null || _engineContext$appHel12 === void 0 || (_engineContext$appHel12 = _engineContext$appHel12.call(_engineContext$appHel11, "kioskCollaborationPreview")) === null || _engineContext$appHel12 === void 0 || (_engineContext$appHel13 = _engineContext$appHel12.runFunction) === null || _engineContext$appHel13 === void 0 || _engineContext$appHel13.call(_engineContext$appHel12, "publishStatus", { status });
77
+ var _engineContext$appHel9, _engineContext$appHel10, _engineContext$appHel11, _engineContext$appHel12;
78
+ engineContext === null || engineContext === void 0 || (_engineContext$appHel9 = engineContext.appHelper) === null || _engineContext$appHel9 === void 0 || (_engineContext$appHel9 = _engineContext$appHel9.utils) === null || _engineContext$appHel9 === void 0 || (_engineContext$appHel10 = _engineContext$appHel9.getApp) === null || _engineContext$appHel10 === void 0 || (_engineContext$appHel10 = _engineContext$appHel10.call(_engineContext$appHel9)) === null || _engineContext$appHel10 === void 0 || (_engineContext$appHel10 = _engineContext$appHel10.applicationManager) === null || _engineContext$appHel10 === void 0 || (_engineContext$appHel11 = _engineContext$appHel10.get) === null || _engineContext$appHel11 === void 0 || (_engineContext$appHel11 = _engineContext$appHel11.call(_engineContext$appHel10, "kioskCollaborationPreview")) === null || _engineContext$appHel11 === void 0 || (_engineContext$appHel12 = _engineContext$appHel11.runFunction) === null || _engineContext$appHel12 === void 0 || _engineContext$appHel12.call(_engineContext$appHel11, "publishStatus", { status });
86
79
  } catch (error) {
87
80
  console.warn("[HDLKiosk] 协同预览状态上报失败,不影响销售流程", error);
88
81
  }
89
82
  }, [
90
- engineContext === null || engineContext === void 0 || (_engineContext$appHel14 = engineContext.appHelper) === null || _engineContext$appHel14 === void 0 ? void 0 : _engineContext$appHel14.utils,
83
+ engineContext === null || engineContext === void 0 || (_engineContext$appHel13 = engineContext.appHelper) === null || _engineContext$appHel13 === void 0 ? void 0 : _engineContext$appHel13.utils,
91
84
  isActive,
92
85
  screenProtector
93
86
  ]);
94
87
  const h5AuthModuleName = require_useHDLKioskH5AuthModule.useHDLKioskH5AuthModule(engineContext, context.sales);
95
- const nativeScaleTools = engineContext === null || engineContext === void 0 || (_engineContext$appHel15 = engineContext.appHelper) === null || _engineContext$appHel15 === void 0 || (_engineContext$appHel15 = _engineContext$appHel15.utils) === null || _engineContext$appHel15 === void 0 || (_engineContext$appHel16 = _engineContext$appHel15.getApp) === null || _engineContext$appHel16 === void 0 || (_engineContext$appHel16 = _engineContext$appHel16.call(_engineContext$appHel15)) === null || _engineContext$appHel16 === void 0 || (_engineContext$appHel16 = _engineContext$appHel16.plugins) === null || _engineContext$appHel16 === void 0 || (_engineContext$appHel17 = _engineContext$appHel16.get) === null || _engineContext$appHel17 === void 0 ? void 0 : _engineContext$appHel17.call(_engineContext$appHel16, "nativeScaleTools");
88
+ const nativeScaleTools = engineContext === null || engineContext === void 0 || (_engineContext$appHel14 = engineContext.appHelper) === null || _engineContext$appHel14 === void 0 || (_engineContext$appHel14 = _engineContext$appHel14.utils) === null || _engineContext$appHel14 === void 0 || (_engineContext$appHel15 = _engineContext$appHel14.getApp) === null || _engineContext$appHel15 === void 0 || (_engineContext$appHel15 = _engineContext$appHel15.call(_engineContext$appHel14)) === null || _engineContext$appHel15 === void 0 || (_engineContext$appHel15 = _engineContext$appHel15.plugins) === null || _engineContext$appHel15 === void 0 || (_engineContext$appHel16 = _engineContext$appHel15.get) === null || _engineContext$appHel16 === void 0 ? void 0 : _engineContext$appHel16.call(_engineContext$appHel15, "nativeScaleTools");
96
89
  const { host, paymentControllerRef, rememberAuthenticatedCustomer, scaleBridge } = require_useBigSaleHDLKioskAdapter.useBigSaleHDLKioskAdapter({
97
90
  context,
98
91
  businessCode,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pisell/private-materials",
3
- "version": "6.12.298",
3
+ "version": "6.12.299",
4
4
  "main": "./lib/index.js",
5
5
  "module": "./es/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -72,10 +72,10 @@
72
72
  "styled-components": "^6.0.0-rc.3",
73
73
  "use-sync-external-store": "^1.6.0",
74
74
  "@pisell/pi-payment-sdk": "0.0.3",
75
- "@pisell/utils": "3.0.7",
76
- "@pisell/icon": "0.0.11",
75
+ "@pisell/materials": "6.12.77",
77
76
  "@pisell/date-picker": "3.0.12",
78
- "@pisell/materials": "6.12.76"
77
+ "@pisell/icon": "0.0.11",
78
+ "@pisell/utils": "3.0.7"
79
79
  },
80
80
  "peerDependencies": {
81
81
  "react": "^18.0.0",
@@ -1,20 +0,0 @@
1
- import { useEffect } from "react";
2
- //#region src/components/bigSale/templates/HDLKiosk/hooks/useHDLKioskEntryPreparationToast.ts
3
- /** React 层入口准备提示;不属于 BigSale Host/Port 适配。 */
4
- function useHDLKioskEntryPreparationToast({ active, message, preparing, toast }) {
5
- useEffect(() => {
6
- if (!active || !preparing || !(toast === null || toast === void 0 ? void 0 : toast.loading)) return;
7
- toast.loading(message, 0);
8
- return () => {
9
- var _toast$hide;
10
- (_toast$hide = toast.hide) === null || _toast$hide === void 0 || _toast$hide.call(toast);
11
- };
12
- }, [
13
- active,
14
- message,
15
- preparing,
16
- toast
17
- ]);
18
- }
19
- //#endregion
20
- export { useHDLKioskEntryPreparationToast };
@@ -1,17 +0,0 @@
1
- import "./serve/formResourcePage.js";
2
- import "./floorRoomCard/mapRowToFloorRoomCardData.js";
3
- import "./floorRoomCard/ReservationFloorRoomCard.js";
4
- import "./floorMap/reservationMock.js";
5
- import "./floorMap/floorPlanApi.js";
6
- import "./reservationConstants.js";
7
- import "./data/bookingToReservationTables.js";
8
- import "./data/formResourceToReservationTables.js";
9
- import "./data/salesEmbeddedResourceToTableRows.js";
10
- import "./floorMap/reservationCards.js";
11
- import "./PisellReservation.js";
12
- import "./PisellReservationBookingPage.js";
13
- import "./PisellVenueControlPage.js";
14
- import "./PisellVenueWallPage.js";
15
- import "./PisellReservationTablePage.js";
16
- import "./components/SelectFloorMapResourceDialog.js";
17
- export {};
@@ -1,54 +0,0 @@
1
- import "./hosts/createInstanceHostBridge.js";
2
- import "./holderConfirm/createHolderConfirmBridge.js";
3
- import "./giftSelect/createGiftSelectBridge.js";
4
- import "./context/SalesSdkHostBridgesContext.js";
5
- import "./utils/formatHolderOptions.js";
6
- import "./utils/enrichCartLineHolderDisplay.js";
7
- import "./context/SalesSdkHolderContext.js";
8
- import "../multiCurrencySettlement/index.js";
9
- import "./context/SalesSdkBusinessAvailabilityContext.js";
10
- import "./utils/appendPromotionTags.js";
11
- import "./utils/productSkuOptions.js";
12
- import "./context/SalesSdkUIHostsContext.js";
13
- import "./utils/runAddProductFlow.js";
14
- import "./components/showAddToCartToast.js";
15
- import "./utils/resolveAddProductDebounceKey.js";
16
- import "./utils/identity.js";
17
- import "./utils/resolveInCartQuantityForAddToast.js";
18
- import "./utils/addProductWithFlowDebounced.js";
19
- import "./utils/customerAuthGate.js";
20
- import "./utils/bookingDate.js";
21
- import "./utils/holderSubmitValidation.js";
22
- import "./utils/removeOrderProducts.js";
23
- import "./selectors.js";
24
- import "./utils/enrich.js";
25
- import "./giftSelect/createOpenGiftSelectHost.js";
26
- import "./utils/ensureHoldersBeforeSubmit.js";
27
- import "./hooks/useSalesSdk.js";
28
- import "./bookingEditService/BookingEditServiceDrawer.js";
29
- import "./hosts/BookingEditHostRenderer.js";
30
- import "./hosts/CustomerAuthHostRenderer.js";
31
- import "./hooks/useSalesSdkCart.js";
32
- import "./hooks/useSalesSdkCustomer.js";
33
- import "./normalProductDetail/NormalProductDetailHostRenderer.js";
34
- import "./hosts/createOpenBookingEditHost.js";
35
- import "./hosts/createOpenMultiDaySelectHost.js";
36
- import "./hosts/createOpenHolderSelectHost.js";
37
- import "./hosts/createOpenCustomerAuthHost.js";
38
- import "./demo/hosts/legacyOpenProductDetail.js";
39
- import "./hosts/createCompositeOpenProductDetailHost.js";
40
- import "./normalProductDetail/createOpenNormalProductDetailHost.js";
41
- import "./normalProductDetail/createOpenBookingSelectionFlowHost.js";
42
- import "./giftSelect/GiftSelectModal.js";
43
- import "./giftSelect/GiftSelectHostRenderer.js";
44
- import "./allergy/AllergySelectionModal.js";
45
- import "./context/SalesSdkProvider.js";
46
- import "./context/SalesSdkDishContext.js";
47
- import "./context/SalesSdkBookingContext.js";
48
- import "./hooks/useSalesSdkSummary.js";
49
- import "./hooks/useSalesSdkProducts.js";
50
- import "./demo/index.js";
51
- import "./hooks/useSalesSdkDish.js";
52
- import "./hooks/useCurrentSalesSdkDish.js";
53
- import "./hooks/useSyncOsModule.js";
54
- export {};
@@ -1,21 +0,0 @@
1
- require("../../../../../_virtual/_rolldown/runtime.js");
2
- let react = require("react");
3
- //#region src/components/bigSale/templates/HDLKiosk/hooks/useHDLKioskEntryPreparationToast.ts
4
- /** React 层入口准备提示;不属于 BigSale Host/Port 适配。 */
5
- function useHDLKioskEntryPreparationToast({ active, message, preparing, toast }) {
6
- (0, react.useEffect)(() => {
7
- if (!active || !preparing || !(toast === null || toast === void 0 ? void 0 : toast.loading)) return;
8
- toast.loading(message, 0);
9
- return () => {
10
- var _toast$hide;
11
- (_toast$hide = toast.hide) === null || _toast$hide === void 0 || _toast$hide.call(toast);
12
- };
13
- }, [
14
- active,
15
- message,
16
- preparing,
17
- toast
18
- ]);
19
- }
20
- //#endregion
21
- exports.useHDLKioskEntryPreparationToast = useHDLKioskEntryPreparationToast;