@pisell/private-materials 6.12.265 → 6.12.267

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 (43) 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/render/default/view.js +1 -1
  6. package/build/lowcode/view.js +1 -1
  7. package/es/components/bigSale/components/BookingFloatingPanel/useBookingPanelController.js +0 -1
  8. package/es/components/bigSale/components/ProductList/index.js +0 -1
  9. package/es/components/bigSale/components/TimeBar/index.js +0 -1
  10. package/es/components/bigSale/dialog.js +0 -1
  11. package/es/components/bigSale/hooks/useBigSaleContext.js +0 -1
  12. package/es/components/bigSale/hooks/useBigSaleProductListConfig.js +0 -1
  13. package/es/components/bigSale/hooks/useSelectFloorMapResourceForBigSale.js +0 -1
  14. package/es/components/bigSale/index.js +0 -1
  15. package/es/components/bigSale/templates/Kiosk/index.js +0 -1
  16. package/es/components/sharedSecondaryBigSale/SharedSecondaryBigSaleReceiver.js +0 -1
  17. package/es/components/ticketBooking/components/addServiceVariant/addService.js +0 -1
  18. package/es/components/venueBooking/components/VenueSelection/components/TimeGrid.js +20 -5
  19. package/es/index.js +0 -2
  20. package/es/plus/multiCurrencySettlement/index.js +1 -1
  21. package/es/plus/pisellReservation/data/bookingToReservationTables.js +1 -1
  22. package/es/plus/pisellReservation/floorMap/floorPlanApi.js +1 -1
  23. package/es/plus/pisellReservation/floorMap/reservationMock.js +1 -1
  24. package/es/plus/saleDetail/Base.js +0 -1
  25. package/es/plus/saleDetail/components/Client/hooks/useClientSelectorProps.js +0 -1
  26. package/es/plus/saleDetail/components/DetailActions/PrintAction.js +0 -1
  27. package/es/plus/saleDetail/components/DetailActions/index.js +0 -1
  28. package/es/plus/saleDetail/components/SummaryFinancialSections/index.js +0 -1
  29. package/es/plus/saleDetail/index.js +0 -1
  30. package/es/plus/saleDetail/tmpl/B/components/Dish/index.js +0 -1
  31. package/es/plus/saleDetail/tmpl/B/index.js +0 -1
  32. package/es/plus/salesSdk/utils/addProductWithFlowDebounced.js +1 -1
  33. package/es/plus/salesSdk/utils/bookingDate.js +1 -1
  34. package/es/plus/salesSdk/utils/enrichCartLineHolderDisplay.js +1 -1
  35. package/es/private-materials/lowcode/authmodal/meta.d.ts +1 -0
  36. package/es/pro/Login2.0/AuthModal.d.ts +1 -1
  37. package/es/pro/Login2.0/index.d.ts +2 -2
  38. package/es/pro/Login2.0/shared/types.d.ts +1 -1
  39. package/lib/components/venueBooking/components/VenueSelection/components/TimeGrid.js +20 -5
  40. package/package.json +3 -3
  41. package/es/components/ticketBooking/components/ProductDisplayAdapter/index.js +0 -3
  42. package/es/plus/pisellReservation/index.js +0 -17
  43. package/es/plus/salesSdk/index.js +0 -54
@@ -1,6 +1,5 @@
1
1
  import useEngineContext from "../../../../hooks/useEngineContext.js";
2
2
  import { subscribeBookingDateChange } from "../../../../plus/salesSdk/utils/bookingDate.js";
3
- import "../../../../plus/salesSdk/index.js";
4
3
  import dayjs from "dayjs";
5
4
  import { useCallback, useEffect, useState } from "react";
6
5
  //#region src/components/bigSale/components/BookingFloatingPanel/useBookingPanelController.ts
@@ -14,7 +14,6 @@ import { generateProductTabs } from "../../../ticketBooking/components/ProductDi
14
14
  import { useSalesSdkBusinessAvailability } from "../../../../plus/salesSdk/context/SalesSdkBusinessAvailabilityContext.js";
15
15
  import { showAddToCartToast } from "../../../../plus/salesSdk/components/showAddToCartToast.js";
16
16
  import { mergeBookingsForDisplay } from "../../../../plus/salesSdk/utils/mergeBookingsForDisplay.js";
17
- import "../../../../plus/salesSdk/index.js";
18
17
  import { buildBigSaleProductListPreferencesKey, readBigSaleProductListPreferences, readStoredBigSaleProductListPreferences, removeBigSaleProductListPreferences, resolveBigSaleAutoProductListPreferences, writeBigSaleProductListPreferences } from "../../utils/productListPreferences.js";
19
18
  import { resolveBigSaleProductDisplayConfig, useBigSaleProductListConfig } from "../../hooks/useBigSaleProductListConfig.js";
20
19
  import locales_default from "../../locales/index.js";
@@ -4,7 +4,6 @@ import withResponsive from "../../../../responsive/withResponsive.js";
4
4
  import useInitLocalesOnce from "../../../../hooks/useInitLocalesOnce.js";
5
5
  import { subscribeBookingDateChange } from "../../../../plus/salesSdk/utils/bookingDate.js";
6
6
  import { useSalesSdkBookingContext } from "../../../../plus/salesSdk/context/SalesSdkBookingContext.js";
7
- import "../../../../plus/salesSdk/index.js";
8
7
  import locales_default from "../../locales/index.js";
9
8
  import { getPosWeekStartsOn, resolvePosCountryCode } from "../../../../utils/posDateLocale.js";
10
9
  import dayjs from "dayjs";
@@ -6,7 +6,6 @@ import { buildInitBookingContextParams, collectBookingIdsFromTempOrder } from ".
6
6
  import { useSalesSdk } from "../../plus/salesSdk/hooks/useSalesSdk.js";
7
7
  import { useSalesSdkCart } from "../../plus/salesSdk/hooks/useSalesSdkCart.js";
8
8
  import { SalesSdkPrepareOrderSwitchContext, SalesSdkRootRefreshContext } from "../../plus/salesSdk/context/SalesSdkProvider.js";
9
- import "../../plus/salesSdk/index.js";
10
9
  import { isPersistedBigSaleOrderId } from "./utils/orderIdentity.js";
11
10
  import { seedDineInReservationToCart } from "../../plus/pisellReservation/utils/seedDineInReservationToCart.js";
12
11
  import BigSale from "./index.js";
@@ -4,7 +4,6 @@ import { useSalesSdkCustomer } from "../../../plus/salesSdk/hooks/useSalesSdkCus
4
4
  import { useSalesSdkBookingContext } from "../../../plus/salesSdk/context/SalesSdkBookingContext.js";
5
5
  import { useSalesSdkSummary } from "../../../plus/salesSdk/hooks/useSalesSdkSummary.js";
6
6
  import { useSalesSdkProducts } from "../../../plus/salesSdk/hooks/useSalesSdkProducts.js";
7
- import "../../../plus/salesSdk/index.js";
8
7
  import { useMemo } from "react";
9
8
  //#region src/components/bigSale/hooks/useBigSaleContext.ts
10
9
  /**
@@ -2,7 +2,6 @@ import { _objectSpread2 } from "../../../_virtual/_@oxc-project_runtime@0.122.0/
2
2
  import { _objectWithoutProperties } from "../../../_virtual/_@oxc-project_runtime@0.122.0/helpers/objectWithoutProperties.js";
3
3
  import { generateProductTabs, sortProductsByTabOrder } from "../../ticketBooking/components/ProductDisplayAdapter/utils.js";
4
4
  import { ProductDisplayPresets } from "../../ticketBooking/components/ProductDisplayAdapter/types.js";
5
- import "../../ticketBooking/components/ProductDisplayAdapter/index.js";
6
5
  import { mergeBigSaleProductListPreferences } from "../utils/productListPreferences.js";
7
6
  import { useMemo, useRef } from "react";
8
7
  import isEqual from "lodash/isEqual";
@@ -3,7 +3,6 @@ import { _asyncToGenerator } from "../../../_virtual/_@oxc-project_runtime@0.122
3
3
  import { buildInitBookingContextParams, collectBookingIdsFromTempOrder } from "../../../plus/salesSdk/utils/buildDefaultLoadProductsParams.js";
4
4
  import { useSalesSdkUIHosts } from "../../../plus/salesSdk/context/SalesSdkUIHostsContext.js";
5
5
  import { SalesSdkRootRefreshContext } from "../../../plus/salesSdk/context/SalesSdkProvider.js";
6
- import "../../../plus/salesSdk/index.js";
7
6
  import { isPersistedBigSaleOrderId } from "../utils/orderIdentity.js";
8
7
  import { resolveOrderIdForHostActions } from "../../../plus/pisellReservation/components/bookingDetailModal/bookingDetailHostActions.js";
9
8
  import { usePicoCodingOpenData } from "../../../plus/pisellReservation/hooks/usePicoCodingOpenData.js";
@@ -8,7 +8,6 @@ import { useSalesSdk } from "../../plus/salesSdk/hooks/useSalesSdk.js";
8
8
  import { useSalesSdkCustomer } from "../../plus/salesSdk/hooks/useSalesSdkCustomer.js";
9
9
  import { SalesSdkProvider } from "../../plus/salesSdk/context/SalesSdkProvider.js";
10
10
  import { SalesSdkBookingContextProvider } from "../../plus/salesSdk/context/SalesSdkBookingContext.js";
11
- import "../../plus/salesSdk/index.js";
12
11
  import { ResponsiveBigSaleBase } from "./Base.js";
13
12
  import { isBigSaleProductSelectionFlowScene, resolveBigSaleSelectionFlowConfig } from "./selectionFlowConfig.js";
14
13
  import { isKioskPresentation } from "./templateCapabilities.js";
@@ -12,7 +12,6 @@ import { useSalesSdkBusinessAvailability } from "../../../../plus/salesSdk/conte
12
12
  import { collectUnassignedHolderLines } from "../../../../plus/salesSdk/utils/holderSubmitValidation.js";
13
13
  import { isFulfillmentTimingBooking } from "../../../../plus/salesSdk/utils/fulfillmentTimingBooking.js";
14
14
  import { useSalesSdk } from "../../../../plus/salesSdk/hooks/useSalesSdk.js";
15
- import "../../../../plus/salesSdk/index.js";
16
15
  import { usePickSaleDetailContext } from "../../hooks/usePickSaleDetailContext.js";
17
16
  import { resolveBigSaleAutoProductListPreferences } from "../../utils/productListPreferences.js";
18
17
  import { resolveBigSaleProductDisplayConfig } from "../../hooks/useBigSaleProductListConfig.js";
@@ -2,7 +2,6 @@ import useEngineContext from "../../hooks/useEngineContext.js";
2
2
  import { _asyncToGenerator } from "../../_virtual/_@oxc-project_runtime@0.122.0/helpers/asyncToGenerator.js";
3
3
  import { useSalesSdk } from "../../plus/salesSdk/hooks/useSalesSdk.js";
4
4
  import { getTempOrderSyncPayload, shouldApplySharedTempOrderPayload } from "../../plus/salesSdk/tempOrderSync.js";
5
- import "../../plus/salesSdk/index.js";
6
5
  import { useEffect, useRef } from "react";
7
6
  import { useMemoizedFn } from "ahooks";
8
7
  //#region src/components/sharedSecondaryBigSale/SharedSecondaryBigSaleReceiver.tsx
@@ -19,7 +19,6 @@ import { useProducts } from "../../hooks/pisellos/useProducts.js";
19
19
  import { useService } from "../../../booking/info/service/serviceManager/index.js";
20
20
  import ProductDisplayAdapter_default from "../ProductDisplayAdapter/ProductDisplayAdapter.js";
21
21
  import { resolveProductDisplayConfig } from "../ProductDisplayAdapter/types.js";
22
- import "../ProductDisplayAdapter/index.js";
23
22
  import notAvailable_default from "../notAvailable/index.js";
24
23
  import MultiDayTimeSelectModal from "./MultiDayTimeSelectModal.js";
25
24
  import dayjs from "dayjs";
@@ -24,6 +24,7 @@ function TimeGrid() {
24
24
  const grid = viewModel.timeSlotGrid;
25
25
  const timeLabels = (grid === null || grid === void 0 ? void 0 : grid.timeLabels) || [];
26
26
  const resources = (grid === null || grid === void 0 ? void 0 : grid.resources) || [];
27
+ const isGridReady = !isGridLoading && !!grid && timeLabels.length > 0;
27
28
  const hourGroups = useMemo(() => buildHourGroups(timeLabels), [timeLabels]);
28
29
  const tableGridStyle = useMemo(() => getTableGridStyle(timeLabels.length), [timeLabels.length]);
29
30
  /**
@@ -99,10 +100,17 @@ function TimeGrid() {
99
100
  applyHeaderTransform
100
101
  ]);
101
102
  useEffect(() => {
103
+ if (!isGridReady) return void 0;
102
104
  const scroller = scrollTableRef.current;
103
105
  if (!scroller) return void 0;
104
106
  function onPointerDown(e) {
105
- if (e.pointerType === "mouse" && e.button !== 0) return;
107
+ if (e.pointerType !== "mouse") {
108
+ dragStateRef.current.isDragging = false;
109
+ dragStateRef.current.pointerId = null;
110
+ dragStateRef.current.moved = false;
111
+ return;
112
+ }
113
+ if (e.button !== 0) return;
106
114
  if (e.target instanceof Element && e.target.closest("[data-cart-button=\"true\"], input, textarea")) return;
107
115
  dragStateRef.current = {
108
116
  isDragging: true,
@@ -114,6 +122,7 @@ function TimeGrid() {
114
122
  };
115
123
  }
116
124
  function onPointerMove(e) {
125
+ if (e.pointerType !== "mouse") return;
117
126
  const state = dragStateRef.current;
118
127
  if (!state.isDragging || state.pointerId !== e.pointerId) return;
119
128
  const dx = e.clientX - state.startX;
@@ -148,8 +157,11 @@ function TimeGrid() {
148
157
  scroller.removeEventListener("pointermove", onPointerMove);
149
158
  scroller.removeEventListener("pointerup", endDrag);
150
159
  scroller.removeEventListener("pointercancel", endDrag);
160
+ dragStateRef.current.isDragging = false;
161
+ dragStateRef.current.pointerId = null;
162
+ dragStateRef.current.moved = false;
151
163
  };
152
- }, [applyHeaderTransform]);
164
+ }, [applyHeaderTransform, isGridReady]);
153
165
  useEffect(() => {
154
166
  const scroller = scrollTableRef.current;
155
167
  if (!scroller) return void 0;
@@ -178,7 +190,7 @@ function TimeGrid() {
178
190
  if (slot.status !== "available") return;
179
191
  toggleSlot(resourceId, productId, slot);
180
192
  }
181
- if (isGridLoading || !grid || !timeLabels.length) return /* @__PURE__ */ React.createElement(TimeGridSkeleton, null);
193
+ if (!isGridReady) return /* @__PURE__ */ React.createElement(TimeGridSkeleton, null);
182
194
  return /* @__PURE__ */ React.createElement("div", { className: "relative" }, /* @__PURE__ */ React.createElement("div", {
183
195
  className: "sticky z-30 overflow-hidden rounded-t-[28px] bg-[#fff7f7]",
184
196
  style: { top: "var(--vb-grid-sticky-top, 0px)" }
@@ -225,8 +237,11 @@ function TimeGrid() {
225
237
  }))), /* @__PURE__ */ React.createElement("div", {
226
238
  ref: scrollTableRef,
227
239
  onScroll: syncHeader,
228
- className: "max-w-full overflow-x-auto rounded-b-[28px] cursor-grab select-none touch-pan-y active:cursor-grabbing",
229
- style: _objectSpread2({ WebkitOverflowScrolling: "touch" }, scrollerOverscrollStyle)
240
+ className: "max-w-full overflow-x-auto rounded-b-[28px] cursor-grab select-none active:cursor-grabbing",
241
+ style: _objectSpread2({
242
+ touchAction: "auto",
243
+ WebkitOverflowScrolling: "touch"
244
+ }, scrollerOverscrollStyle)
230
245
  }, /* @__PURE__ */ React.createElement("div", {
231
246
  className: "w-full",
232
247
  key: grid.date
package/es/index.js CHANGED
@@ -87,7 +87,6 @@ import { useSalesSdkProducts } from "./plus/salesSdk/hooks/useSalesSdkProducts.j
87
87
  import SalesSdkDemo from "./plus/salesSdk/demo/index.js";
88
88
  import { useSalesSdkDish } from "./plus/salesSdk/hooks/useSalesSdkDish.js";
89
89
  import { useSyncOsModule } from "./plus/salesSdk/hooks/useSyncOsModule.js";
90
- import "./plus/salesSdk/index.js";
91
90
  import BigSaleRightActionPanel from "./components/BigSaleRightActionPanel/index.js";
92
91
  import ResponsiveWrapper from "./components/list/ResponsiveWrapper.js";
93
92
  import { resolveBigSaleSelectionFlowConfig } from "./components/bigSale/selectionFlowConfig.js";
@@ -142,7 +141,6 @@ import PisellVenueControlPage from "./plus/pisellReservation/PisellVenueControlP
142
141
  import PisellVenueWallPage from "./plus/pisellReservation/PisellVenueWallPage.js";
143
142
  import PisellReservationTablePage from "./plus/pisellReservation/PisellReservationTablePage.js";
144
143
  import SelectFloorMapResourceDialog from "./plus/pisellReservation/components/SelectFloorMapResourceDialog.js";
145
- import "./plus/pisellReservation/index.js";
146
144
  import { PisellTopology, PisellTopologyCore } from "./plus/pisellTopology/PisellTopology.js";
147
145
  import cupProject_default from "./components/ecocup/cupProject/index.js";
148
146
  import CupList from "./components/ecocup/cupList/index.js";
@@ -280,4 +280,4 @@ function attachSelectedSettlement(item, selectedSettlement) {
280
280
  });
281
281
  }
282
282
  //#endregion
283
- export { attachSelectedSettlement, buildSettlementPriceRows, createVirtualOnlySkuDisplayProduct, findFirstVirtualCurrencyAsset, formatSettlementAmount, formatSettlementSelectionTotal, formatTempOrderSettlementAmount, getReservedVirtualSettlementAmount, getSettlementKey, getSettlementOptions, hasSettlementOptions, hasSufficientVirtualCurrencyBalance, isVirtualOnlySettlementProduct, isVirtualSettlementTempOrder, resolveConfiguredUnavailableReason, resolveLegalSettlementAddOnUnitPrice, resolveSettlementOptionEntries, resolveVirtualSettlementErrorMessage, showVirtualSettlementErrorToast };
283
+ export { attachSelectedSettlement, buildSettlementPriceRows, createVirtualOnlySkuDisplayProduct, formatSettlementAmount, formatSettlementSelectionTotal, formatTempOrderSettlementAmount, getSettlementKey, getSettlementOptions, hasSettlementOptions, hasSufficientVirtualCurrencyBalance, isVirtualOnlySettlementProduct, isVirtualSettlementTempOrder, resolveConfiguredUnavailableReason, resolveLegalSettlementAddOnUnitPrice, resolveSettlementOptionEntries, resolveVirtualSettlementErrorMessage, showVirtualSettlementErrorToast };
@@ -259,4 +259,4 @@ function bookingListToReservationTableRows(bookings) {
259
259
  return rows;
260
260
  }
261
261
  //#endregion
262
- export { applyHostResourceShellToBaseRow, bookingListToReservationTableRows, customerBrief, extractResourceRecordIds, filterBookingsByResourceIds, hostBookingStatusToCardStatus, hostBookingUiPatchFromRecord, mergeBookingsForResourceRecord };
262
+ export { applyHostResourceShellToBaseRow, bookingListToReservationTableRows, customerBrief, extractResourceRecordIds, filterBookingsByResourceIds, hostBookingUiPatchFromRecord, mergeBookingsForResourceRecord };
@@ -78,4 +78,4 @@ function toastFloorPlanLoadError(err) {
78
78
  PisellToast({ content: err instanceof Error ? err.message : String(err) });
79
79
  }
80
80
  //#endregion
81
- export { PISELL_RESERVATION_FLOOR_PLAN_CODE, buildDefaultReservationFloorPlanPostBody, ensureShopFloorPlanByCode, putShopFloorPlan, saveViewConfigToShopFloorPlan, shopLayoutToSceneElements$1 as shopLayoutToSceneElements, toastFloorPlanLoadError, toastFloorPlanSaveError, unsubscribeShopFloorPlanCodeQuery };
81
+ export { PISELL_RESERVATION_FLOOR_PLAN_CODE, ensureShopFloorPlanByCode, saveViewConfigToShopFloorPlan, shopLayoutToSceneElements$1 as shopLayoutToSceneElements, toastFloorPlanLoadError, toastFloorPlanSaveError, unsubscribeShopFloorPlanCodeQuery };
@@ -927,4 +927,4 @@ function getReservationDataSourceFormColumns() {
927
927
  ];
928
928
  }
929
929
  //#endregion
930
- export { RESERVATION_BOUND_ROUND_TABLE_ELEMENT_KIND, RESERVATION_BOUND_TABLE_ELEMENT_KIND, applyReservationFloorMapLiveLabels, defaultReservationSceneElements, defaultReservationTableRows, getDefaultReservationFloorMapConfig, getReservationDataSourceFormColumns, getReservationFloorMapShellConfig, mergeFloorMapElementKindCategoriesWithDefaults, mergeFloorMapElementKindsWithDefaults };
930
+ export { RESERVATION_BOUND_ROUND_TABLE_ELEMENT_KIND, RESERVATION_BOUND_TABLE_ELEMENT_KIND, applyReservationFloorMapLiveLabels, defaultReservationTableRows, getDefaultReservationFloorMapConfig, getReservationDataSourceFormColumns, getReservationFloorMapShellConfig, mergeFloorMapElementKindCategoriesWithDefaults, mergeFloorMapElementKindsWithDefaults };
@@ -13,7 +13,6 @@ import { useSalesSdkCustomer } from "../salesSdk/hooks/useSalesSdkCustomer.js";
13
13
  import locales_default from "./locales.js";
14
14
  import { useSalesSdkBookingContext } from "../salesSdk/context/SalesSdkBookingContext.js";
15
15
  import { useSalesSdkSummary } from "../salesSdk/hooks/useSalesSdkSummary.js";
16
- import "../salesSdk/index.js";
17
16
  import locales_default$1 from "./components/LineItem/locales.js";
18
17
  import { SaleOrderActionBoundary } from "./actions/index.js";
19
18
  import { SaleDetailTemplateRenderer } from "./tmpl/index.js";
@@ -1,7 +1,6 @@
1
1
  import useEngineContext from "../../../../../hooks/useEngineContext.js";
2
2
  import { _objectSpread2 } from "../../../../../_virtual/_@oxc-project_runtime@0.122.0/helpers/objectSpread2.js";
3
3
  import { useSalesSdkBookingContext } from "../../../../salesSdk/context/SalesSdkBookingContext.js";
4
- import "../../../../salesSdk/index.js";
5
4
  import { useMemo } from "react";
6
5
  import { useMemoizedFn } from "ahooks";
7
6
  //#region src/plus/saleDetail/components/Client/hooks/useClientSelectorProps.ts
@@ -4,7 +4,6 @@ import { _asyncToGenerator } from "../../../../_virtual/_@oxc-project_runtime@0.
4
4
  import { _objectWithoutProperties } from "../../../../_virtual/_@oxc-project_runtime@0.122.0/helpers/objectWithoutProperties.js";
5
5
  import useLogger from "../../../../hooks/useLogger.js";
6
6
  import { useSalesSdk } from "../../../salesSdk/hooks/useSalesSdk.js";
7
- import "../../../salesSdk/index.js";
8
7
  import { invokeLocalReceiptPrint, resolveLocalReceiptPrintModule, resolveSaleDetailOrderIdFromSales } from "./utils.js";
9
8
  import { getRemotePrintActions, getWristbandList } from "../../serve.js";
10
9
  import { EBizPrintType } from "./types.js";
@@ -10,7 +10,6 @@ import { useSalesSdk } from "../../../salesSdk/hooks/useSalesSdk.js";
10
10
  import { useSalesSdkCart } from "../../../salesSdk/hooks/useSalesSdkCart.js";
11
11
  import { useSalesSdkGlobalScanActivity } from "../../../salesSdk/context/SalesSdkGlobalScanActivityContext.js";
12
12
  import { useSalesSdkSummary } from "../../../salesSdk/hooks/useSalesSdkSummary.js";
13
- import "../../../salesSdk/index.js";
14
13
  import { resolveSaleDetailTempOrder } from "../../utils.js";
15
14
  import { getNumericAmount, getSalesHostModule, resolveSaleDetailOrderIdFromSales, resolveSaleDetailOrderIdFromSalesResult, shouldCloseDialogAfterCheckout, updateLocalOrder } from "./utils.js";
16
15
  import { deriveSaleOrderSubmitState } from "../../actions/state.js";
@@ -5,7 +5,6 @@ import { isAppliedPaymentRecord } from "../../../salesSdk/utils/paymentStatus.js
5
5
  import { useSalesSdk } from "../../../salesSdk/hooks/useSalesSdk.js";
6
6
  import { useSalesSdkCart } from "../../../salesSdk/hooks/useSalesSdkCart.js";
7
7
  import { useSalesSdkSummary } from "../../../salesSdk/hooks/useSalesSdkSummary.js";
8
- import "../../../salesSdk/index.js";
9
8
  import { resolveSaleDetailTempOrder } from "../../utils.js";
10
9
  import React, { memo, useMemo } from "react";
11
10
  import { formatAmount, locales } from "@pisell/utils";
@@ -5,7 +5,6 @@ import { useSalesSdk } from "../salesSdk/hooks/useSalesSdk.js";
5
5
  import { SalesSdkProvider } from "../salesSdk/context/SalesSdkProvider.js";
6
6
  import { SalesSdkDishProvider } from "../salesSdk/context/SalesSdkDishContext.js";
7
7
  import { SalesSdkBookingContextProvider } from "../salesSdk/context/SalesSdkBookingContext.js";
8
- import "../salesSdk/index.js";
9
8
  import Base_default from "./Base.js";
10
9
  import { resolveSaleDetailOsProps } from "./osProps.js";
11
10
  import React, { forwardRef, useImperativeHandle } from "react";
@@ -1,7 +1,6 @@
1
1
  import useStableInstanceId from "../../../../../../hooks/useStableInstanceId.js";
2
2
  import { useSalesSdkDish } from "../../../../../salesSdk/hooks/useSalesSdkDish.js";
3
3
  import { useCurrentSalesSdkDish } from "../../../../../salesSdk/hooks/useCurrentSalesSdkDish.js";
4
- import "../../../../../salesSdk/index.js";
5
4
  import { SaleDetailStatusOverview } from "../shared/StatusOverview.js";
6
5
  import { DishGroupView } from "./DishGroupView.js";
7
6
  import dayjs from "dayjs";
@@ -1,7 +1,6 @@
1
1
  import useEngineContext from "../../../../hooks/useEngineContext.js";
2
2
  import { _objectSpread2 } from "../../../../_virtual/_@oxc-project_runtime@0.122.0/helpers/objectSpread2.js";
3
3
  import { useCurrentSalesSdkDish } from "../../../salesSdk/hooks/useCurrentSalesSdkDish.js";
4
- import "../../../salesSdk/index.js";
5
4
  import { getInternalNotesByScheduleEvent } from "../../serve.js";
6
5
  import { TEMPLATE_B_PAY_ACTIONS, TEMPLATE_B_SUMMARY_ACTIONS } from "../../components/DetailActions/configs/index.js";
7
6
  import { DetailActions } from "../../components/DetailActions/index.js";
@@ -366,4 +366,4 @@ function createAddProductWithFlowDebounced(deps) {
366
366
  };
367
367
  }
368
368
  //#endregion
369
- export { createAddProductWithFlowDebounced, shouldBypassAddProductDebounce };
369
+ export { createAddProductWithFlowDebounced };
@@ -31,4 +31,4 @@ function subscribeBookingDateChange(bookingTicket, callback) {
31
31
  return typeof off === "function" ? off : () => {};
32
32
  }
33
33
  //#endregion
34
- export { BOOKING_CONTEXT_DATE_EVENT, formatBookingDateTime, subscribeBookingDateChange };
34
+ export { formatBookingDateTime, subscribeBookingDateChange };
@@ -71,4 +71,4 @@ function buildHolderListRequestKey(params) {
71
71
  });
72
72
  }
73
73
  //#endregion
74
- export { buildHolderListRequestKey, buildHolderListRequestParams, enrichCartBookingHolderDisplay, pickHolderIdFromBooking, resolveHolderDisplayConfig };
74
+ export { buildHolderListRequestKey, buildHolderListRequestParams, enrichCartBookingHolderDisplay, resolveHolderDisplayConfig };
@@ -0,0 +1 @@
1
+ export { };
@@ -14,4 +14,4 @@ interface AuthModalProps {
14
14
  */
15
15
  declare const AuthModal: React.FC<AuthModalProps>;
16
16
  //#endregion
17
- export { AuthModal };
17
+ export { AuthModal, AuthModalProps };
@@ -1,4 +1,4 @@
1
- import { AuthMethodType, EmailAuthConfig, EmailRegistrationVerification, LoginFormData, OAuthConfig, PhoneAuthConfig, RegisterFormData, UIConfig, VerificationMethod } from "./shared/types.js";
1
+ import { AuthMethodType, VerificationMethod } from "./shared/types.js";
2
2
  import { Login2, Login2Config, Login2Events, Login2Props } from "./Login2.js";
3
3
  import { Register2, Register2Config, Register2Events, Register2Props } from "./Register2.js";
4
- import { AuthModal } from "./AuthModal.js";
4
+ import { AuthModal, AuthModalProps } from "./AuthModal.js";
@@ -226,4 +226,4 @@ interface RegisterFormData {
226
226
  verification_token?: string;
227
227
  }
228
228
  //#endregion
229
- export { AuthMethodType, EmailAuthConfig, EmailRegistrationVerification, LegalTermsConfig, LoginFormData, LoginMethodItem, OAuthConfig, PhoneAuthConfig, RegisterFormData, RegistrationMethodItem, UIConfig, VerificationMethod };
229
+ export { AuthMethodType, EmailAuthConfig, LegalTermsConfig, LoginFormData, LoginMethodItem, OAuthConfig, PhoneAuthConfig, RegisterFormData, RegistrationMethodItem, UIConfig, VerificationMethod };
@@ -26,6 +26,7 @@ function TimeGrid() {
26
26
  const grid = viewModel.timeSlotGrid;
27
27
  const timeLabels = (grid === null || grid === void 0 ? void 0 : grid.timeLabels) || [];
28
28
  const resources = (grid === null || grid === void 0 ? void 0 : grid.resources) || [];
29
+ const isGridReady = !isGridLoading && !!grid && timeLabels.length > 0;
29
30
  const hourGroups = (0, react.useMemo)(() => require_utils.buildHourGroups(timeLabels), [timeLabels]);
30
31
  const tableGridStyle = (0, react.useMemo)(() => require_utils.getTableGridStyle(timeLabels.length), [timeLabels.length]);
31
32
  /**
@@ -101,10 +102,17 @@ function TimeGrid() {
101
102
  applyHeaderTransform
102
103
  ]);
103
104
  (0, react.useEffect)(() => {
105
+ if (!isGridReady) return void 0;
104
106
  const scroller = scrollTableRef.current;
105
107
  if (!scroller) return void 0;
106
108
  function onPointerDown(e) {
107
- if (e.pointerType === "mouse" && e.button !== 0) return;
109
+ if (e.pointerType !== "mouse") {
110
+ dragStateRef.current.isDragging = false;
111
+ dragStateRef.current.pointerId = null;
112
+ dragStateRef.current.moved = false;
113
+ return;
114
+ }
115
+ if (e.button !== 0) return;
108
116
  if (e.target instanceof Element && e.target.closest("[data-cart-button=\"true\"], input, textarea")) return;
109
117
  dragStateRef.current = {
110
118
  isDragging: true,
@@ -116,6 +124,7 @@ function TimeGrid() {
116
124
  };
117
125
  }
118
126
  function onPointerMove(e) {
127
+ if (e.pointerType !== "mouse") return;
119
128
  const state = dragStateRef.current;
120
129
  if (!state.isDragging || state.pointerId !== e.pointerId) return;
121
130
  const dx = e.clientX - state.startX;
@@ -150,8 +159,11 @@ function TimeGrid() {
150
159
  scroller.removeEventListener("pointermove", onPointerMove);
151
160
  scroller.removeEventListener("pointerup", endDrag);
152
161
  scroller.removeEventListener("pointercancel", endDrag);
162
+ dragStateRef.current.isDragging = false;
163
+ dragStateRef.current.pointerId = null;
164
+ dragStateRef.current.moved = false;
153
165
  };
154
- }, [applyHeaderTransform]);
166
+ }, [applyHeaderTransform, isGridReady]);
155
167
  (0, react.useEffect)(() => {
156
168
  const scroller = scrollTableRef.current;
157
169
  if (!scroller) return void 0;
@@ -180,7 +192,7 @@ function TimeGrid() {
180
192
  if (slot.status !== "available") return;
181
193
  toggleSlot(resourceId, productId, slot);
182
194
  }
183
- if (isGridLoading || !grid || !timeLabels.length) return /* @__PURE__ */ react.default.createElement(TimeGridSkeleton, null);
195
+ if (!isGridReady) return /* @__PURE__ */ react.default.createElement(TimeGridSkeleton, null);
184
196
  return /* @__PURE__ */ react.default.createElement("div", { className: "relative" }, /* @__PURE__ */ react.default.createElement("div", {
185
197
  className: "sticky z-30 overflow-hidden rounded-t-[28px] bg-[#fff7f7]",
186
198
  style: { top: "var(--vb-grid-sticky-top, 0px)" }
@@ -227,8 +239,11 @@ function TimeGrid() {
227
239
  }))), /* @__PURE__ */ react.default.createElement("div", {
228
240
  ref: scrollTableRef,
229
241
  onScroll: syncHeader,
230
- className: "max-w-full overflow-x-auto rounded-b-[28px] cursor-grab select-none touch-pan-y active:cursor-grabbing",
231
- style: require_objectSpread2._objectSpread2({ WebkitOverflowScrolling: "touch" }, scrollerOverscrollStyle)
242
+ className: "max-w-full overflow-x-auto rounded-b-[28px] cursor-grab select-none active:cursor-grabbing",
243
+ style: require_objectSpread2._objectSpread2({
244
+ touchAction: "auto",
245
+ WebkitOverflowScrolling: "touch"
246
+ }, scrollerOverscrollStyle)
232
247
  }, /* @__PURE__ */ react.default.createElement("div", {
233
248
  className: "w-full",
234
249
  key: grid.date
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pisell/private-materials",
3
- "version": "6.12.265",
3
+ "version": "6.12.267",
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
75
  "@pisell/materials": "6.12.74",
77
76
  "@pisell/date-picker": "3.0.12",
78
- "@pisell/icon": "0.0.11"
77
+ "@pisell/icon": "0.0.11",
78
+ "@pisell/utils": "3.0.7"
79
79
  },
80
80
  "peerDependencies": {
81
81
  "react": "^18.0.0",
@@ -1,3 +0,0 @@
1
- import "./ProductDisplayAdapter.js";
2
- import "./types.js";
3
- export {};
@@ -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 "./context/SalesSdkUIHostsContext.js";
12
- import "./utils/runAddProductFlow.js";
13
- import "./components/showAddToCartToast.js";
14
- import "./utils/resolveAddProductDebounceKey.js";
15
- import "./utils/productSkuOptions.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 {};