@loczer/storefront-sdk 0.182.0 → 0.184.0

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 (85) hide show
  1. package/dist/StorefrontProvider.d.ts +18 -15
  2. package/dist/StorefrontProvider.d.ts.map +1 -1
  3. package/dist/StorefrontProvider.js +24 -34
  4. package/dist/chunks/booking-engine/dist/models/{Product.shared-CJ6vPb6n.js → Product.shared-CTuk4fiR.js} +2 -2
  5. package/dist/chunks/booking-engine/dist/schemas/{base-asset-PqhtKnZA.js → base-asset-B_Dm8_Vk.js} +1 -1
  6. package/dist/chunks/booking-engine/dist/schemas/{base-booking-BM3jZzqu.js → base-booking-DW8AEPKo.js} +1 -1
  7. package/dist/chunks/booking-engine/dist/schemas/{base-product-BJd4ttMP.js → base-product-1H8l2aUv.js} +1 -1
  8. package/dist/chunks/booking-engine/dist/schemas/{cart-inputs-9vM8GCrc.js → cart-inputs-j1yWfJxO.js} +8 -5
  9. package/dist/chunks/booking-engine/dist/schemas-DftrSnTE.js +13 -0
  10. package/dist/chunks/ui/dist/Map/{MapContent--PwVTg2W.js → MapContent-QPkuTBvK.js} +2 -2
  11. package/dist/chunks/ui/dist/Map/{constants-DqrK8UkE.js → constants-BNmiJXfg.js} +1 -1
  12. package/dist/chunks/ui/dist/{Map-B45AxZ-D.js → Map-BXmRf5Ep.js} +3 -3
  13. package/dist/chunks/ui/dist/static/strings-1T2w7LqX.js +4 -0
  14. package/dist/components/AboutSection/index.d.ts +1 -6
  15. package/dist/components/AboutSection/index.d.ts.map +1 -1
  16. package/dist/components/AboutSection/index.js +43 -39
  17. package/dist/components/BookingPeriodSelector/useBookingPeriodController.d.ts.map +1 -1
  18. package/dist/components/BookingPeriodSelector/useBookingPeriodController.js +152 -148
  19. package/dist/components/ContactSection/index.d.ts +1 -3
  20. package/dist/components/ContactSection/index.d.ts.map +1 -1
  21. package/dist/components/ContactSection/index.js +222 -164
  22. package/dist/components/Footer/index.d.ts +3 -4
  23. package/dist/components/Footer/index.d.ts.map +1 -1
  24. package/dist/components/Footer/index.js +98 -69
  25. package/dist/components/FulfillmentSection/index.d.ts.map +1 -1
  26. package/dist/components/FulfillmentSection/index.js +17 -16
  27. package/dist/components/Header/index.d.ts +1 -3
  28. package/dist/components/Header/index.d.ts.map +1 -1
  29. package/dist/components/Header/index.js +77 -72
  30. package/dist/components/Layout/index.d.ts +3 -1
  31. package/dist/components/Layout/index.d.ts.map +1 -1
  32. package/dist/components/Layout/index.js +45 -47
  33. package/dist/components/Map/index.js +1 -1
  34. package/dist/components/ProductPriceBadge/index.d.ts.map +1 -1
  35. package/dist/components/ProductPriceBadge/index.js +68 -60
  36. package/dist/i18n/I18nProvider.js +1 -1
  37. package/dist/i18n/fr.js +1 -1
  38. package/dist/index.d.ts +159 -150
  39. package/dist/index.js +64 -64
  40. package/dist/lib/booking.d.ts +3 -0
  41. package/dist/lib/booking.d.ts.map +1 -1
  42. package/dist/lib/booking.js +76 -74
  43. package/dist/lib/cart.d.ts +4 -1
  44. package/dist/lib/cart.d.ts.map +1 -1
  45. package/dist/lib/cart.js +64 -40
  46. package/dist/lib/cartSummary.d.ts.map +1 -1
  47. package/dist/lib/cartSummary.js +4 -3
  48. package/dist/lib/checkoutSubmit.d.ts.map +1 -1
  49. package/dist/lib/checkoutSubmit.js +36 -36
  50. package/dist/lib/productVariants.d.ts.map +1 -1
  51. package/dist/lib/productVariants.js +20 -9
  52. package/dist/lib/storefrontAddress.d.ts +5 -0
  53. package/dist/lib/storefrontAddress.d.ts.map +1 -0
  54. package/dist/lib/storefrontAddress.js +24 -0
  55. package/dist/lib/storefrontAvailability.d.ts +6 -6
  56. package/dist/lib/storefrontContact.d.ts +10 -0
  57. package/dist/lib/storefrontContact.d.ts.map +1 -0
  58. package/dist/lib/storefrontContact.js +24 -0
  59. package/dist/lib/storefrontMissingValues.d.ts +5 -0
  60. package/dist/lib/storefrontMissingValues.d.ts.map +1 -0
  61. package/dist/lib/storefrontMissingValues.js +4 -0
  62. package/dist/lib/storefrontProducts.d.ts +23 -21
  63. package/dist/lib/storefrontProducts.d.ts.map +1 -1
  64. package/dist/lib/storefrontProducts.js +7 -5
  65. package/dist/lib/whatsapp.d.ts +8 -6
  66. package/dist/lib/whatsapp.d.ts.map +1 -1
  67. package/dist/lib/whatsapp.js +16 -43
  68. package/dist/pages/BookingPage.js +36 -36
  69. package/dist/pages/HomePage.d.ts.map +1 -1
  70. package/dist/pages/HomePage.js +126 -128
  71. package/dist/pages/ProductPage.js +160 -160
  72. package/dist/storefront.css +1 -1
  73. package/dist/storefrontSchemas.d.ts +14 -12
  74. package/dist/storefrontSchemas.d.ts.map +1 -1
  75. package/dist/storefrontSchemas.js +3 -2
  76. package/dist/ui/radio-group.d.ts +1 -1
  77. package/package.json +7 -6
  78. package/dist/chunks/booking-engine/dist/schemas-BNlwu75Z.js +0 -13
  79. package/dist/chunks/ui/dist/static/strings-CPnO-KbA.js +0 -4
  80. package/dist/data/config.d.ts +0 -15
  81. package/dist/data/config.d.ts.map +0 -1
  82. package/dist/data/config.js +0 -24
  83. package/dist/static/strings.d.ts +0 -2
  84. package/dist/static/strings.d.ts.map +0 -1
  85. package/dist/static/strings.js +0 -4
package/dist/index.js CHANGED
@@ -2,79 +2,79 @@
2
2
  import { createLocalizedStringEntry as e, getLocalizedStringValue as t, localizedStringArraySchema as n, localizedStringEntrySchema as r, localizedStringSchema as i } from "./chunks/booking-engine/dist/models/LocalizedString-D_TRgAdr.js";
3
3
  import { currencyCodeSchema as a, currencyMinorUnitDigits as o, majorToMinor as s, minorToMajor as c, moneyMinorSchema as l, signedMoneyMinorSchema as u } from "./chunks/booking-engine/dist/schemas/money-CVoCY4of.js";
4
4
  import { priceSchema as d, priceUnitSchema as f } from "./chunks/booking-engine/dist/models/Price-DCAgqkKh.js";
5
- import { PRODUCT_VARIANT_CODE_IDENTIFIER_KIND as p, PRODUCT_VARIANT_CODE_MAX_LENGTH as m, accessoryProductSchema as h, bikeProductSchema as g, eBikeProductSchema as _, isProductVariantCodeIdentifierKind as v, productKindSchema as y, productSchema as b, productStorefrontDisplayModeSchema as x, productVariantAttributeSchema as S, productVariantCodeSchema as C, productVariantIdentifierSchema as w, productVariantSchema as T } from "./chunks/booking-engine/dist/models/Product.shared-CJ6vPb6n.js";
5
+ import { PRODUCT_VARIANT_CODE_IDENTIFIER_KIND as p, PRODUCT_VARIANT_CODE_MAX_LENGTH as m, accessoryProductSchema as h, bikeProductSchema as g, eBikeProductSchema as _, isProductVariantCodeIdentifierKind as v, productKindSchema as y, productSchema as b, productStorefrontDisplayModeSchema as x, productVariantAttributeSchema as S, productVariantCodeSchema as C, productVariantIdentifierSchema as w, productVariantSchema as T } from "./chunks/booking-engine/dist/models/Product.shared-CTuk4fiR.js";
6
6
  import { richTextJsonDocSchema as E, richTextSchema as D, richTextVersionSchema as O } from "./chunks/booking-engine/dist/schemas/rich-text-DTRh7U3z.js";
7
7
  import { isoDateSchema as k, shopConfigurationSchema as A, shopExtraTimeSlotRuleSchema as j, shopOpeningDayIndexSchema as M, shopOpeningDaySchema as N, shopOpeningHoursOverrideSchema as P, shopOpeningHoursPeriodSchema as F, shopOpeningSlotSchema as I, timeOfDaySchema as L } from "./chunks/booking-engine/dist/schemas/shop-opening-hours-BlLD1gfz.js";
8
8
  import { DEFAULT_CANCELLATION_POLICY as R, DEFAULT_PAYMENT_POLICIES as z, cancellationPolicySchema as B, cancellationPolicyTierSchema as V, paymentPoliciesSchema as H } from "./chunks/booking-engine/dist/schemas/booking-engine-configuration-D02MRF9U.js";
9
9
  import { fulfillmentModeSchema as U, publicBookingEngineConfigurationSchema as W, publicCheckoutConfigurationSchema as G, publicCheckoutDynamicOptionsSchema as K } from "./chunks/booking-engine/dist/schemas/public-booking-engine-configuration-BnJ_H-p1.js";
10
- import { bookingCustomerInputSchema as q, bookingDeliveryOptionSchema as J, bookingScheduleInputSchema as Y, cartItemInputSchema as X, createBookingInputBaseSchema as Z, createBookingInputSchema as Q, validateBookingDeliveryAddress as $ } from "./chunks/booking-engine/dist/schemas/cart-inputs-9vM8GCrc.js";
11
- import { baseAssetSchema as ee, baseAssetStatusSchema as te } from "./chunks/booking-engine/dist/schemas/base-asset-PqhtKnZA.js";
12
- import { baseBookingItemSchema as ne, baseBookingSchema as re, baseBookingStateSchema as ie } from "./chunks/booking-engine/dist/schemas/base-booking-BM3jZzqu.js";
13
- import "./chunks/booking-engine/dist/schemas-BNlwu75Z.js";
14
- import { storefrontCheckoutModeSchema as ae, storefrontConfigurationSchema as oe, storefrontContentSchema as se, storefrontFaqItemSchema as ce, storefrontFaqSchema as le, storefrontFulfillmentModeSchema as ue, storefrontLocalizedRichTextSchema as de, storefrontModalMessageSchema as fe, storefrontModulesSchema as pe, storefrontReviewsModuleSchema as me, storefrontRichTextSchema as he, storefrontSettingsSchema as ge, storefrontShopSchema as _e, storefrontStatusSchema as ve, storefrontWorkspaceSchema as ye } from "./storefrontSchemas.js";
15
- import { DEFAULT_STOREFRONT_PRESET as be, STOREFRONT_PRESETS as xe, getStorefrontPreset as Se } from "./data/config.js";
16
- import { BOOKING_SEARCH_KEYS as Ce, TIME_OPTIONS as we, applyBookingParamsToSearch as Te, createBookingPeriodConfigFromBookingEngineConfiguration as Ee, createBookingPeriodConfigFromStorefrontConfiguration as De, getBookingDurationLabel as Oe, getBookingDurationMinutes as ke, getBookingParamsFromSearch as Ae, getBookingSessionStorageKey as je, getDefaultBookingParams as Me, getDefaultBookingParamsForStorefrontConfiguration as Ne, pickBookingSearchParams as Pe, readBookingSearchParamsFromSessionStorage as Fe, readBookingSearchParamsFromStorage as Ie, resolveBookingSearchParams as Le, resolveBookingSearchParamsFromSessionStorage as Re, writeBookingSearchParamsToSessionStorage as ze, writeBookingSearchParamsToStorage as Be } from "./lib/booking.js";
17
- import { StorefrontCartProvider as Ve, useStorefrontCart as He } from "./lib/cart.js";
18
- import { CATALOG_PRODUCT_BASE_RATE_UNSET as Ue, buildStorefrontProductSlug as We, buildVariantStorefrontProductId as Ge, compareCatalogProducts as Ke, compareStorefrontAccessoryProducts as qe, compareStorefrontBikeProducts as Je, findStorefrontProduct as Ye, findStorefrontProductBySlug as Xe, getCatalogProductBaseRateMinor as Ze, getCatalogProductPaginationSort as Qe, getCatalogProductSortFieldForPriceUnit as $e, getStorefrontBaseDailyRateMinor as et, getStorefrontCheckoutProductId as tt, getStorefrontRepresentedVariantId as nt, toStorefrontAccessoryProducts as rt, toStorefrontBikeProducts as it, toStorefrontBookingProducts as at, toStorefrontBookingProductsCollections as ot } from "./lib/products.js";
19
- import { cn as st, formatPriceMinor as ct, getAvailabilityVariant as lt, getMinDayPriceMinor as ut } from "./lib/utils.js";
20
- import { buildDailyPriceRows as dt, buildPriceTierLabels as ft, calculateDailyPriceForQuantity as pt, formatStorefrontPriceMinor as mt } from "./lib/pricing.js";
21
- import { getLocalizedEntry as ht, getLocalizedValue as gt } from "./localization.js";
22
- import { buildStorefrontCartSummary as _t } from "./lib/cartSummary.js";
23
- import { ROUTE as vt, requestSchema as yt, responseSchema as bt } from "./lib/contactForm.js";
24
- import { buildWhatsAppHref as xt, resolveStorefrontWhatsAppContact as St, resolveStorefrontWhatsAppHref as Ct } from "./lib/whatsapp.js";
25
- import { ROUTE as wt, requestBaseSchema as Tt, requestCheckoutItemSchema as Et, requestDeliveryRefinement as Dt, requestSchema as Ot, responseSchema as kt } from "./lib/checkoutSubmit.js";
26
- import { ROUTE as At, requestSchema as jt, responseSchema as Mt, storefrontPublicAccessoryProductSchema as Nt, storefrontPublicBikeAvailabilityStatusSchema as Pt, storefrontPublicBikeProductSchema as Ft, storefrontPublicProductDisplayModeSchema as It, storefrontPublicProductPriceSchema as Lt, storefrontPublicProductVariantAttributeSchema as Rt, storefrontPublicProductVariantIdentifierSchema as zt, storefrontPublicProductVariantSchema as Bt } from "./lib/storefrontProducts.js";
27
- import { ROUTE as Vt, buildStorefrontAvailabilityKey as Ht, doesStorefrontAvailabilityDisplaySoldOut as Ut, getStorefrontAvailabilityIssue as Wt, getStorefrontAvailabilityStatus as Gt, isStorefrontAvailabilityInsufficient as Kt, publicAvailabilityDisplayModeSchema as qt, requestSchema as Jt, responseSchema as Yt, shouldBlockStorefrontUnavailableItem as Xt, storefrontAvailabilityProductSchema as Zt, storefrontAvailabilityScheduleSchema as Qt, storefrontPublicAvailabilityRecordSchema as $t } from "./lib/storefrontAvailability.js";
28
- import { ROUTE as en, buildStorefrontImageUrl as tn, requestSchema as nn } from "./lib/storefrontImage.js";
29
- import { ROUTE as rn, requestSchema as an, responseSchema as on, storefrontTimeSlotSchema as sn, timeSlotJourneySchema as cn } from "./lib/storefrontTimeSlots.js";
30
- import { Footer as ln } from "./components/Footer/index.js";
31
- import { Badge as un, badgeVariants as dn } from "./ui/badge.js";
32
- import { Button as fn, buttonVariants as pn } from "./ui/button.js";
33
- import { Header as mn } from "./components/Header/index.js";
34
- import { storefront as hn } from "./i18n/en.js";
35
- import { storefront as gn } from "./i18n/fr.js";
36
- import { PoweredByLoczerBadge as _n } from "./components/PoweredByLoczerBadge/index.js";
37
- import { PlatformFooter as vn } from "./components/PlatformFooter/index.js";
38
- import { useWhatsAppFloatingButton as yn } from "./components/WhatsAppFloatingButton/useWhatsAppFloatingButton.js";
39
- import { WhatsAppFloatingButton as bn } from "./components/WhatsAppFloatingButton/WhatsAppFloatingButton.js";
10
+ import { DEFAULT_BOOKING_DELIVERY_OPTION as q, bookingCustomerInputSchema as J, bookingDeliveryOptionSchema as Y, bookingScheduleInputSchema as X, cartItemInputSchema as Z, createBookingInputBaseSchema as Q, createBookingInputSchema as $, resolveBookingDeliveryOption as ee, validateBookingDeliveryAddress as te } from "./chunks/booking-engine/dist/schemas/cart-inputs-j1yWfJxO.js";
11
+ import { baseAssetSchema as ne, baseAssetStatusSchema as re } from "./chunks/booking-engine/dist/schemas/base-asset-B_Dm8_Vk.js";
12
+ import { baseBookingItemSchema as ie, baseBookingSchema as ae, baseBookingStateSchema as oe } from "./chunks/booking-engine/dist/schemas/base-booking-DW8AEPKo.js";
13
+ import "./chunks/booking-engine/dist/schemas-DftrSnTE.js";
14
+ import { storefrontCheckoutModeSchema as se, storefrontConfigurationSchema as ce, storefrontContentSchema as le, storefrontFaqItemSchema as ue, storefrontFaqSchema as de, storefrontFulfillmentModeSchema as fe, storefrontLocalizedRichTextSchema as pe, storefrontModalMessageSchema as me, storefrontModulesSchema as he, storefrontReviewsModuleSchema as ge, storefrontRichTextSchema as _e, storefrontSettingsSchema as ve, storefrontShopSchema as ye, storefrontStatusSchema as be, storefrontWorkspaceSchema as xe } from "./storefrontSchemas.js";
15
+ import { BOOKING_SEARCH_KEYS as Se, TIME_OPTIONS as Ce, applyBookingParamsToSearch as we, createBookingPeriodConfigFromBookingEngineConfiguration as Te, createBookingPeriodConfigFromShopConfiguration as Ee, createBookingPeriodConfigFromStorefrontConfiguration as De, getBookingDurationLabel as Oe, getBookingDurationMinutes as ke, getBookingParamsFromSearch as Ae, getBookingSessionStorageKey as je, getDefaultBookingParams as Me, getDefaultBookingParamsForStorefrontConfiguration as Ne, pickBookingSearchParams as Pe, readBookingSearchParamsFromSessionStorage as Fe, readBookingSearchParamsFromStorage as Ie, resolveBookingSearchParams as Le, resolveBookingSearchParamsFromSessionStorage as Re, writeBookingSearchParamsToSessionStorage as ze, writeBookingSearchParamsToStorage as Be } from "./lib/booking.js";
16
+ import { CATALOG_PRODUCT_BASE_RATE_UNSET as Ve, buildStorefrontProductSlug as He, buildVariantStorefrontProductId as Ue, compareCatalogProducts as We, compareStorefrontAccessoryProducts as Ge, compareStorefrontBikeProducts as Ke, findStorefrontProduct as qe, findStorefrontProductBySlug as Je, getCatalogProductBaseRateMinor as Ye, getCatalogProductPaginationSort as Xe, getCatalogProductSortFieldForPriceUnit as Ze, getStorefrontBaseDailyRateMinor as Qe, getStorefrontCheckoutProductId as $e, getStorefrontRepresentedVariantId as et, toStorefrontAccessoryProducts as tt, toStorefrontBikeProducts as nt, toStorefrontBookingProducts as rt, toStorefrontBookingProductsCollections as it } from "./lib/products.js";
17
+ import { StorefrontCartProvider as at, resolveStorefrontCartItemProduct as ot, useStorefrontCart as st } from "./lib/cart.js";
18
+ import { cn as ct, formatPriceMinor as lt, getAvailabilityVariant as ut, getMinDayPriceMinor as dt } from "./lib/utils.js";
19
+ import { buildDailyPriceRows as ft, buildPriceTierLabels as pt, calculateDailyPriceForQuantity as mt, formatStorefrontPriceMinor as ht } from "./lib/pricing.js";
20
+ import { getLocalizedEntry as gt, getLocalizedValue as _t } from "./localization.js";
21
+ import { buildStorefrontCartSummary as vt } from "./lib/cartSummary.js";
22
+ import { ROUTE as yt, requestSchema as bt, responseSchema as xt } from "./lib/contactForm.js";
23
+ import { formatStorefrontPhoneDisplay as St, resolveStorefrontMapsHref as Ct, resolveStorefrontPhoneContact as wt } from "./lib/storefrontContact.js";
24
+ import { buildWhatsAppHref as Tt, resolveStorefrontWhatsAppContact as Et, resolveStorefrontWhatsAppHref as Dt } from "./lib/whatsapp.js";
25
+ import { ROUTE as Ot, requestBaseSchema as kt, requestCheckoutItemSchema as At, requestDeliveryRefinement as jt, requestSchema as Mt, responseSchema as Nt } from "./lib/checkoutSubmit.js";
26
+ import { ROUTE as Pt, requestSchema as Ft, responseSchema as It, storefrontPublicAccessoryProductSchema as Lt, storefrontPublicBikeAvailabilityStatusSchema as Rt, storefrontPublicBikeProductSchema as zt, storefrontPublicProductDisplayModeSchema as Bt, storefrontPublicProductPriceSchema as Vt, storefrontPublicProductVariantAttributeSchema as Ht, storefrontPublicProductVariantIdentifierSchema as Ut, storefrontPublicProductVariantSchema as Wt } from "./lib/storefrontProducts.js";
27
+ import { ROUTE as Gt, buildStorefrontAvailabilityKey as Kt, doesStorefrontAvailabilityDisplaySoldOut as qt, getStorefrontAvailabilityIssue as Jt, getStorefrontAvailabilityStatus as Yt, isStorefrontAvailabilityInsufficient as Xt, publicAvailabilityDisplayModeSchema as Zt, requestSchema as Qt, responseSchema as $t, shouldBlockStorefrontUnavailableItem as en, storefrontAvailabilityProductSchema as tn, storefrontAvailabilityScheduleSchema as nn, storefrontPublicAvailabilityRecordSchema as rn } from "./lib/storefrontAvailability.js";
28
+ import { ROUTE as an, buildStorefrontImageUrl as on, requestSchema as sn } from "./lib/storefrontImage.js";
29
+ import { ROUTE as cn, requestSchema as ln, responseSchema as un, storefrontTimeSlotSchema as dn, timeSlotJourneySchema as fn } from "./lib/storefrontTimeSlots.js";
30
+ import { Footer as pn } from "./components/Footer/index.js";
31
+ import { Badge as mn, badgeVariants as hn } from "./ui/badge.js";
32
+ import { Button as gn, buttonVariants as _n } from "./ui/button.js";
33
+ import { Header as vn } from "./components/Header/index.js";
34
+ import { storefront as yn } from "./i18n/en.js";
35
+ import { storefront as bn } from "./i18n/fr.js";
36
+ import { PoweredByLoczerBadge as xn } from "./components/PoweredByLoczerBadge/index.js";
37
+ import { PlatformFooter as Sn } from "./components/PlatformFooter/index.js";
38
+ import { useWhatsAppFloatingButton as Cn } from "./components/WhatsAppFloatingButton/useWhatsAppFloatingButton.js";
39
+ import { WhatsAppFloatingButton as wn } from "./components/WhatsAppFloatingButton/WhatsAppFloatingButton.js";
40
40
  import "./components/WhatsAppFloatingButton/index.js";
41
- import { Layout as xn } from "./components/Layout/index.js";
42
- import { DelayedPlaceholder as Sn, DelayedReveal as Cn } from "./components/DelayedReveal/index.js";
43
- import { BookingPeriodProvider as wn, useBookingPeriod as Tn } from "./components/BookingPeriodSelector/BookingPeriodContext.js";
44
- import { Label as En } from "./ui/label.js";
45
- import { BookingStartDateField as Dn } from "./components/BookingPeriodSelector/components/BookingStartDateField.js";
46
- import { BookingStartTimeField as On } from "./components/BookingPeriodSelector/components/BookingStartTimeField.js";
47
- import { BookingEndDateField as kn } from "./components/BookingPeriodSelector/components/BookingEndDateField.js";
48
- import { BookingEndTimeField as An } from "./components/BookingPeriodSelector/components/BookingEndTimeField.js";
49
- import { BookingMobileDateDrawer as jn } from "./components/BookingPeriodSelector/components/BookingMobileDateDrawer.js";
50
- import { BookingPeriodSelector as Mn } from "./components/BookingPeriodSelector/index.js";
51
- import { BookingFlowSteps as Nn } from "./components/BookingFlowSteps/index.js";
52
- import { Input as Pn } from "./ui/input.js";
53
- import { DeliveryAddressSelector as Fn } from "./components/DeliveryAddressSelector/index.js";
54
- import { loader as In, useOptionalStorefront as Ln, useStorefront as Rn, useStorefrontBookingProducts as zn, useStorefrontConfig as Bn, useStorefrontProducts as Vn, useStorefrontWorkspaceLanguage as Hn } from "./StorefrontProvider.js";
55
- import { Form as Un, FormControl as Wn, FormDescription as Gn, FormField as Kn, FormItem as qn, FormLabel as Jn, FormMessage as Yn, useFormField as Xn } from "./ui/form.js";
56
- import { Textarea as Zn } from "./ui/textarea.js";
57
- import { ContactSection as Qn } from "./components/ContactSection/index.js";
58
- import { TestimonialsSection as $n } from "./components/TestimonialsSection/index.js";
59
- import { AboutSection as er } from "./components/AboutSection/index.js";
60
- import { StepSectionTitle as tr } from "./components/StepSectionTitle/index.js";
61
- import { Card as nr, CardAction as rr, CardContent as ir, CardDescription as ar, CardFooter as or, CardHeader as sr, CardTitle as cr } from "./ui/card.js";
62
- import { ProductWarningNotice as lr } from "./components/ProductWarningNotice/index.js";
63
- import { StorefrontCartPanel as ur } from "./components/StorefrontCartPanel/index.js";
64
- import { ProductPriceBadge as dr } from "./components/ProductPriceBadge/index.js";
65
- import { ContractSaleDocument as fr } from "./components/ContractSaleDocument/Invoice.js";
41
+ import { Layout as Tn } from "./components/Layout/index.js";
42
+ import { DelayedPlaceholder as En, DelayedReveal as Dn } from "./components/DelayedReveal/index.js";
43
+ import { BookingPeriodProvider as On, useBookingPeriod as kn } from "./components/BookingPeriodSelector/BookingPeriodContext.js";
44
+ import { Label as An } from "./ui/label.js";
45
+ import { BookingStartDateField as jn } from "./components/BookingPeriodSelector/components/BookingStartDateField.js";
46
+ import { BookingStartTimeField as Mn } from "./components/BookingPeriodSelector/components/BookingStartTimeField.js";
47
+ import { BookingEndDateField as Nn } from "./components/BookingPeriodSelector/components/BookingEndDateField.js";
48
+ import { BookingEndTimeField as Pn } from "./components/BookingPeriodSelector/components/BookingEndTimeField.js";
49
+ import { BookingMobileDateDrawer as Fn } from "./components/BookingPeriodSelector/components/BookingMobileDateDrawer.js";
50
+ import { BookingPeriodSelector as In } from "./components/BookingPeriodSelector/index.js";
51
+ import { BookingFlowSteps as Ln } from "./components/BookingFlowSteps/index.js";
52
+ import { Input as Rn } from "./ui/input.js";
53
+ import { DeliveryAddressSelector as zn } from "./components/DeliveryAddressSelector/index.js";
54
+ import { loader as Bn, useOptionalStorefront as Vn, useStorefront as Hn, useStorefrontBookingProducts as Un, useStorefrontConfig as Wn, useStorefrontProducts as Gn, useStorefrontWorkspaceLanguage as Kn } from "./StorefrontProvider.js";
55
+ import { Form as qn, FormControl as Jn, FormDescription as Yn, FormField as Xn, FormItem as Zn, FormLabel as Qn, FormMessage as $n, useFormField as er } from "./ui/form.js";
56
+ import { Textarea as tr } from "./ui/textarea.js";
57
+ import { ContactSection as nr } from "./components/ContactSection/index.js";
58
+ import { TestimonialsSection as rr } from "./components/TestimonialsSection/index.js";
59
+ import { AboutSection as ir } from "./components/AboutSection/index.js";
60
+ import { StepSectionTitle as ar } from "./components/StepSectionTitle/index.js";
61
+ import { Card as or, CardAction as sr, CardContent as cr, CardDescription as lr, CardFooter as ur, CardHeader as dr, CardTitle as fr } from "./ui/card.js";
62
+ import { ProductWarningNotice as pr } from "./components/ProductWarningNotice/index.js";
63
+ import { StorefrontCartPanel as mr } from "./components/StorefrontCartPanel/index.js";
64
+ import { ProductPriceBadge as hr } from "./components/ProductPriceBadge/index.js";
65
+ import { ContractSaleDocument as gr } from "./components/ContractSaleDocument/Invoice.js";
66
66
  import "./components/ContractSaleDocument/index.js";
67
- import { RadioGroup as pr, RadioGroupItem as mr } from "./ui/radio-group.js";
67
+ import { RadioGroup as _r, RadioGroupItem as vr } from "./ui/radio-group.js";
68
68
  import "./pages/HomePage.js";
69
69
  import "./pages/BookingPage.js";
70
70
  import "./pages/ProductPage.js";
71
71
  import "./pages/CheckoutPage.js";
72
72
  import "./pages/CheckoutSuccessPage.js";
73
73
  import "./pages/NotFoundPage.js";
74
- import { accessories as hr } from "./data/accessories.js";
75
- import gr from "./data/bikes.js";
76
- import { contractSaleDocumentAcceptanceLevelSchema as _r, contractSaleDocumentAcceptanceRecordSchema as vr, contractSaleDocumentAcceptanceSchema as yr, contractSaleDocumentAddressSchema as br, contractSaleDocumentContactSchema as xr, contractSaleDocumentKindSchema as Sr, contractSaleDocumentLanguageCodeSchema as Cr, contractSaleDocumentLanguageSchema as wr, contractSaleDocumentLineItemSchema as Tr, contractSaleDocumentSchema as Er, contractSaleDocumentSignatureSchema as Dr } from "./lib/contractSaleDocument.js";
77
- import { ACCEPT_CONTRACT_SALE_DOCUMENT_ROUTE as Or, DOWNLOAD_CONTRACT_SALE_DOCUMENT_PDF_ROUTE as kr, GET_CONTRACT_SALE_DOCUMENT_ROUTE as Ar, acceptContractSaleDocumentRequestSchema as jr, acceptContractSaleDocumentResponseSchema as Mr, contractSaleDocumentAcceptanceInputSchema as Nr, contractSaleDocumentAcceptanceRecordInputSchema as Pr, contractSaleDocumentApiAcceptanceRecordSchema as Fr, contractSaleDocumentApiAcceptanceSchema as Ir, contractSaleDocumentApiSchema as Lr, contractSaleDocumentApiSignatureSchema as Rr, contractSaleDocumentReferenceSchema as zr, contractSaleDocumentReferenceTypeSchema as Br, contractSaleDocumentSignatureInputSchema as Vr, downloadContractSaleDocumentPdfRequestSchema as Hr, getContractSaleDocumentRequestSchema as Ur, getContractSaleDocumentResponseSchema as Wr } from "./lib/contractSaleDocumentApi.js";
78
- import Gr from "./routes.js";
79
- import { Select as Kr, SelectContent as qr, SelectGroup as Jr, SelectIcon as Yr, SelectItem as Xr, SelectItemIndicator as Zr, SelectItemText as Qr, SelectLabel as $r, SelectScrollDownButton as ei, SelectScrollUpButton as ti, SelectSeparator as ni, SelectTrigger as ri, SelectValue as ii } from "./ui/select.js";
80
- export { Or as ACCEPT_CONTRACT_SALE_DOCUMENT_ROUTE, er as AboutSection, Ce as BOOKING_SEARCH_KEYS, un as Badge, kn as BookingEndDateField, An as BookingEndTimeField, Nn as BookingFlowSteps, jn as BookingMobileDateDrawer, wn as BookingPeriodProvider, Mn as BookingPeriodSelector, Dn as BookingStartDateField, On as BookingStartTimeField, fn as Button, Ue as CATALOG_PRODUCT_BASE_RATE_UNSET, nr as Card, rr as CardAction, ir as CardContent, ar as CardDescription, or as CardFooter, sr as CardHeader, cr as CardTitle, Qn as ContactSection, fr as ContractSaleDocument, R as DEFAULT_CANCELLATION_POLICY, z as DEFAULT_PAYMENT_POLICIES, be as DEFAULT_STOREFRONT_PRESET, kr as DOWNLOAD_CONTRACT_SALE_DOCUMENT_PDF_ROUTE, Sn as DelayedPlaceholder, Cn as DelayedReveal, Fn as DeliveryAddressSelector, ln as Footer, Un as Form, Wn as FormControl, Gn as FormDescription, Kn as FormField, qn as FormItem, Jn as FormLabel, Yn as FormMessage, Ar as GET_CONTRACT_SALE_DOCUMENT_ROUTE, mn as Header, Pn as Input, En as Label, xn as Layout, p as PRODUCT_VARIANT_CODE_IDENTIFIER_KIND, m as PRODUCT_VARIANT_CODE_MAX_LENGTH, vn as PlatformFooter, _n as PoweredByLoczerBadge, dr as ProductPriceBadge, lr as ProductWarningNotice, vt as ROUTE, pr as RadioGroup, mr as RadioGroupItem, Vt as STOREFRONT_AVAILABILITY_ROUTE, wt as STOREFRONT_CHECKOUT_SUBMIT_ROUTE, en as STOREFRONT_IMAGE_ROUTE, xe as STOREFRONT_PRESETS, At as STOREFRONT_PRODUCTS_ROUTE, rn as STOREFRONT_TIME_SLOTS_ROUTE, Kr as Select, qr as SelectContent, Jr as SelectGroup, Yr as SelectIcon, Xr as SelectItem, Zr as SelectItemIndicator, Qr as SelectItemText, $r as SelectLabel, ei as SelectScrollDownButton, ti as SelectScrollUpButton, ni as SelectSeparator, ri as SelectTrigger, ii as SelectValue, tr as StepSectionTitle, ur as StorefrontCartPanel, Ve as StorefrontCartProvider, we as TIME_OPTIONS, $n as TestimonialsSection, Zn as Textarea, bn as WhatsAppFloatingButton, jr as acceptContractSaleDocumentRequestSchema, Mr as acceptContractSaleDocumentResponseSchema, hr as accessories, h as accessoryProductSchema, Te as applyBookingParamsToSearch, dn as badgeVariants, ee as baseAssetSchema, te as baseAssetStatusSchema, ne as baseBookingItemSchema, re as baseBookingSchema, ie as baseBookingStateSchema, g as bikeProductSchema, gr as bikes, q as bookingCustomerInputSchema, J as bookingDeliveryOptionSchema, Y as bookingScheduleInputSchema, dt as buildDailyPriceRows, ft as buildPriceTierLabels, Ht as buildStorefrontAvailabilityKey, _t as buildStorefrontCartSummary, tn as buildStorefrontImageUrl, We as buildStorefrontProductSlug, Ge as buildVariantStorefrontProductId, xt as buildWhatsAppHref, pn as buttonVariants, pt as calculateDailyPriceForQuantity, B as cancellationPolicySchema, V as cancellationPolicyTierSchema, X as cartItemInputSchema, st as cn, Ke as compareCatalogProducts, qe as compareStorefrontAccessoryProducts, Je as compareStorefrontBikeProducts, Nr as contractSaleDocumentAcceptanceInputSchema, _r as contractSaleDocumentAcceptanceLevelSchema, Pr as contractSaleDocumentAcceptanceRecordInputSchema, vr as contractSaleDocumentAcceptanceRecordSchema, yr as contractSaleDocumentAcceptanceSchema, br as contractSaleDocumentAddressSchema, Fr as contractSaleDocumentApiAcceptanceRecordSchema, Ir as contractSaleDocumentApiAcceptanceSchema, Lr as contractSaleDocumentApiSchema, Rr as contractSaleDocumentApiSignatureSchema, xr as contractSaleDocumentContactSchema, Sr as contractSaleDocumentKindSchema, Cr as contractSaleDocumentLanguageCodeSchema, wr as contractSaleDocumentLanguageSchema, Tr as contractSaleDocumentLineItemSchema, zr as contractSaleDocumentReferenceSchema, Br as contractSaleDocumentReferenceTypeSchema, Er as contractSaleDocumentSchema, Vr as contractSaleDocumentSignatureInputSchema, Dr as contractSaleDocumentSignatureSchema, Z as createBookingInputBaseSchema, Q as createBookingInputSchema, Ee as createBookingPeriodConfigFromBookingEngineConfiguration, De as createBookingPeriodConfigFromStorefrontConfiguration, e as createLocalizedStringEntry, a as currencyCodeSchema, o as currencyMinorUnitDigits, Ut as doesStorefrontAvailabilityDisplaySoldOut, Hr as downloadContractSaleDocumentPdfRequestSchema, _ as eBikeProductSchema, Ye as findStorefrontProduct, Xe as findStorefrontProductBySlug, ct as formatPriceMinor, mt as formatStorefrontPriceMinor, U as fulfillmentModeSchema, lt as getAvailabilityVariant, Oe as getBookingDurationLabel, ke as getBookingDurationMinutes, Ae as getBookingParamsFromSearch, je as getBookingSessionStorageKey, Ze as getCatalogProductBaseRateMinor, Qe as getCatalogProductPaginationSort, $e as getCatalogProductSortFieldForPriceUnit, Ur as getContractSaleDocumentRequestSchema, Wr as getContractSaleDocumentResponseSchema, Me as getDefaultBookingParams, Ne as getDefaultBookingParamsForStorefrontConfiguration, ht as getLocalizedEntry, t as getLocalizedStringValue, gt as getLocalizedValue, ut as getMinDayPriceMinor, Wt as getStorefrontAvailabilityIssue, Gt as getStorefrontAvailabilityStatus, et as getStorefrontBaseDailyRateMinor, tt as getStorefrontCheckoutProductId, Se as getStorefrontPreset, nt as getStorefrontRepresentedVariantId, v as isProductVariantCodeIdentifierKind, Kt as isStorefrontAvailabilityInsufficient, k as isoDateSchema, In as loader, n as localizedStringArraySchema, r as localizedStringEntrySchema, i as localizedStringSchema, s as majorToMinor, c as minorToMajor, l as moneyMinorSchema, H as paymentPoliciesSchema, Pe as pickBookingSearchParams, d as priceSchema, f as priceUnitSchema, y as productKindSchema, b as productSchema, x as productStorefrontDisplayModeSchema, S as productVariantAttributeSchema, C as productVariantCodeSchema, w as productVariantIdentifierSchema, T as productVariantSchema, qt as publicAvailabilityDisplayModeSchema, W as publicBookingEngineConfigurationSchema, G as publicCheckoutConfigurationSchema, K as publicCheckoutDynamicOptionsSchema, Fe as readBookingSearchParamsFromSessionStorage, Ie as readBookingSearchParamsFromStorage, yt as requestSchema, Le as resolveBookingSearchParams, Re as resolveBookingSearchParamsFromSessionStorage, St as resolveStorefrontWhatsAppContact, Ct as resolveStorefrontWhatsAppHref, bt as responseSchema, E as richTextJsonDocSchema, D as richTextSchema, O as richTextVersionSchema, A as shopConfigurationSchema, j as shopExtraTimeSlotRuleSchema, M as shopOpeningDayIndexSchema, N as shopOpeningDaySchema, P as shopOpeningHoursOverrideSchema, F as shopOpeningHoursPeriodSchema, I as shopOpeningSlotSchema, Xt as shouldBlockStorefrontUnavailableItem, u as signedMoneyMinorSchema, Zt as storefrontAvailabilityProductSchema, Jt as storefrontAvailabilityRequestSchema, Yt as storefrontAvailabilityResponseSchema, Qt as storefrontAvailabilityScheduleSchema, ae as storefrontCheckoutModeSchema, Dt as storefrontCheckoutSubmitDeliveryRefinement, Et as storefrontCheckoutSubmitItemSchema, Tt as storefrontCheckoutSubmitRequestBaseSchema, Ot as storefrontCheckoutSubmitRequestSchema, kt as storefrontCheckoutSubmitResponseSchema, oe as storefrontConfigurationSchema, se as storefrontContentSchema, hn as storefrontEn, ce as storefrontFaqItemSchema, le as storefrontFaqSchema, gn as storefrontFr, ue as storefrontFulfillmentModeSchema, nn as storefrontImageRequestSchema, de as storefrontLocalizedRichTextSchema, fe as storefrontModalMessageSchema, pe as storefrontModulesSchema, jt as storefrontProductsRequestSchema, Mt as storefrontProductsResponseSchema, Nt as storefrontPublicAccessoryProductSchema, $t as storefrontPublicAvailabilityRecordSchema, Pt as storefrontPublicBikeAvailabilityStatusSchema, Ft as storefrontPublicBikeProductSchema, It as storefrontPublicProductDisplayModeSchema, Lt as storefrontPublicProductPriceSchema, Rt as storefrontPublicProductVariantAttributeSchema, zt as storefrontPublicProductVariantIdentifierSchema, Bt as storefrontPublicProductVariantSchema, me as storefrontReviewsModuleSchema, he as storefrontRichTextSchema, Gr as storefrontRoutes, ge as storefrontSettingsSchema, _e as storefrontShopSchema, ve as storefrontStatusSchema, cn as storefrontTimeSlotJourneySchema, sn as storefrontTimeSlotSchema, an as storefrontTimeSlotsRequestSchema, on as storefrontTimeSlotsResponseSchema, ye as storefrontWorkspaceSchema, L as timeOfDaySchema, rt as toStorefrontAccessoryProducts, it as toStorefrontBikeProducts, at as toStorefrontBookingProducts, ot as toStorefrontBookingProductsCollections, Tn as useBookingPeriod, Xn as useFormField, Ln as useOptionalStorefront, Rn as useStorefront, zn as useStorefrontBookingProducts, He as useStorefrontCart, Bn as useStorefrontConfig, Vn as useStorefrontProducts, Hn as useStorefrontWorkspaceLanguage, yn as useWhatsAppFloatingButton, $ as validateBookingDeliveryAddress, ze as writeBookingSearchParamsToSessionStorage, Be as writeBookingSearchParamsToStorage };
74
+ import { accessories as yr } from "./data/accessories.js";
75
+ import br from "./data/bikes.js";
76
+ import { contractSaleDocumentAcceptanceLevelSchema as xr, contractSaleDocumentAcceptanceRecordSchema as Sr, contractSaleDocumentAcceptanceSchema as Cr, contractSaleDocumentAddressSchema as wr, contractSaleDocumentContactSchema as Tr, contractSaleDocumentKindSchema as Er, contractSaleDocumentLanguageCodeSchema as Dr, contractSaleDocumentLanguageSchema as Or, contractSaleDocumentLineItemSchema as kr, contractSaleDocumentSchema as Ar, contractSaleDocumentSignatureSchema as jr } from "./lib/contractSaleDocument.js";
77
+ import { ACCEPT_CONTRACT_SALE_DOCUMENT_ROUTE as Mr, DOWNLOAD_CONTRACT_SALE_DOCUMENT_PDF_ROUTE as Nr, GET_CONTRACT_SALE_DOCUMENT_ROUTE as Pr, acceptContractSaleDocumentRequestSchema as Fr, acceptContractSaleDocumentResponseSchema as Ir, contractSaleDocumentAcceptanceInputSchema as Lr, contractSaleDocumentAcceptanceRecordInputSchema as Rr, contractSaleDocumentApiAcceptanceRecordSchema as zr, contractSaleDocumentApiAcceptanceSchema as Br, contractSaleDocumentApiSchema as Vr, contractSaleDocumentApiSignatureSchema as Hr, contractSaleDocumentReferenceSchema as Ur, contractSaleDocumentReferenceTypeSchema as Wr, contractSaleDocumentSignatureInputSchema as Gr, downloadContractSaleDocumentPdfRequestSchema as Kr, getContractSaleDocumentRequestSchema as qr, getContractSaleDocumentResponseSchema as Jr } from "./lib/contractSaleDocumentApi.js";
78
+ import Yr from "./routes.js";
79
+ import { Select as Xr, SelectContent as Zr, SelectGroup as Qr, SelectIcon as $r, SelectItem as ei, SelectItemIndicator as ti, SelectItemText as ni, SelectLabel as ri, SelectScrollDownButton as ii, SelectScrollUpButton as ai, SelectSeparator as oi, SelectTrigger as si, SelectValue as ci } from "./ui/select.js";
80
+ export { Mr as ACCEPT_CONTRACT_SALE_DOCUMENT_ROUTE, ir as AboutSection, Se as BOOKING_SEARCH_KEYS, mn as Badge, Nn as BookingEndDateField, Pn as BookingEndTimeField, Ln as BookingFlowSteps, Fn as BookingMobileDateDrawer, On as BookingPeriodProvider, In as BookingPeriodSelector, jn as BookingStartDateField, Mn as BookingStartTimeField, gn as Button, Ve as CATALOG_PRODUCT_BASE_RATE_UNSET, or as Card, sr as CardAction, cr as CardContent, lr as CardDescription, ur as CardFooter, dr as CardHeader, fr as CardTitle, nr as ContactSection, gr as ContractSaleDocument, q as DEFAULT_BOOKING_DELIVERY_OPTION, R as DEFAULT_CANCELLATION_POLICY, z as DEFAULT_PAYMENT_POLICIES, Nr as DOWNLOAD_CONTRACT_SALE_DOCUMENT_PDF_ROUTE, En as DelayedPlaceholder, Dn as DelayedReveal, zn as DeliveryAddressSelector, pn as Footer, qn as Form, Jn as FormControl, Yn as FormDescription, Xn as FormField, Zn as FormItem, Qn as FormLabel, $n as FormMessage, Pr as GET_CONTRACT_SALE_DOCUMENT_ROUTE, vn as Header, Rn as Input, An as Label, Tn as Layout, p as PRODUCT_VARIANT_CODE_IDENTIFIER_KIND, m as PRODUCT_VARIANT_CODE_MAX_LENGTH, Sn as PlatformFooter, xn as PoweredByLoczerBadge, hr as ProductPriceBadge, pr as ProductWarningNotice, yt as ROUTE, _r as RadioGroup, vr as RadioGroupItem, Gt as STOREFRONT_AVAILABILITY_ROUTE, Ot as STOREFRONT_CHECKOUT_SUBMIT_ROUTE, an as STOREFRONT_IMAGE_ROUTE, Pt as STOREFRONT_PRODUCTS_ROUTE, cn as STOREFRONT_TIME_SLOTS_ROUTE, Xr as Select, Zr as SelectContent, Qr as SelectGroup, $r as SelectIcon, ei as SelectItem, ti as SelectItemIndicator, ni as SelectItemText, ri as SelectLabel, ii as SelectScrollDownButton, ai as SelectScrollUpButton, oi as SelectSeparator, si as SelectTrigger, ci as SelectValue, ar as StepSectionTitle, mr as StorefrontCartPanel, at as StorefrontCartProvider, Ce as TIME_OPTIONS, rr as TestimonialsSection, tr as Textarea, wn as WhatsAppFloatingButton, Fr as acceptContractSaleDocumentRequestSchema, Ir as acceptContractSaleDocumentResponseSchema, yr as accessories, h as accessoryProductSchema, we as applyBookingParamsToSearch, hn as badgeVariants, ne as baseAssetSchema, re as baseAssetStatusSchema, ie as baseBookingItemSchema, ae as baseBookingSchema, oe as baseBookingStateSchema, g as bikeProductSchema, br as bikes, J as bookingCustomerInputSchema, Y as bookingDeliveryOptionSchema, X as bookingScheduleInputSchema, ft as buildDailyPriceRows, pt as buildPriceTierLabels, Kt as buildStorefrontAvailabilityKey, vt as buildStorefrontCartSummary, on as buildStorefrontImageUrl, He as buildStorefrontProductSlug, Ue as buildVariantStorefrontProductId, Tt as buildWhatsAppHref, _n as buttonVariants, mt as calculateDailyPriceForQuantity, B as cancellationPolicySchema, V as cancellationPolicyTierSchema, Z as cartItemInputSchema, ct as cn, We as compareCatalogProducts, Ge as compareStorefrontAccessoryProducts, Ke as compareStorefrontBikeProducts, Lr as contractSaleDocumentAcceptanceInputSchema, xr as contractSaleDocumentAcceptanceLevelSchema, Rr as contractSaleDocumentAcceptanceRecordInputSchema, Sr as contractSaleDocumentAcceptanceRecordSchema, Cr as contractSaleDocumentAcceptanceSchema, wr as contractSaleDocumentAddressSchema, zr as contractSaleDocumentApiAcceptanceRecordSchema, Br as contractSaleDocumentApiAcceptanceSchema, Vr as contractSaleDocumentApiSchema, Hr as contractSaleDocumentApiSignatureSchema, Tr as contractSaleDocumentContactSchema, Er as contractSaleDocumentKindSchema, Dr as contractSaleDocumentLanguageCodeSchema, Or as contractSaleDocumentLanguageSchema, kr as contractSaleDocumentLineItemSchema, Ur as contractSaleDocumentReferenceSchema, Wr as contractSaleDocumentReferenceTypeSchema, Ar as contractSaleDocumentSchema, Gr as contractSaleDocumentSignatureInputSchema, jr as contractSaleDocumentSignatureSchema, Q as createBookingInputBaseSchema, $ as createBookingInputSchema, Te as createBookingPeriodConfigFromBookingEngineConfiguration, Ee as createBookingPeriodConfigFromShopConfiguration, De as createBookingPeriodConfigFromStorefrontConfiguration, e as createLocalizedStringEntry, a as currencyCodeSchema, o as currencyMinorUnitDigits, qt as doesStorefrontAvailabilityDisplaySoldOut, Kr as downloadContractSaleDocumentPdfRequestSchema, _ as eBikeProductSchema, qe as findStorefrontProduct, Je as findStorefrontProductBySlug, lt as formatPriceMinor, St as formatStorefrontPhoneDisplay, ht as formatStorefrontPriceMinor, U as fulfillmentModeSchema, ut as getAvailabilityVariant, Oe as getBookingDurationLabel, ke as getBookingDurationMinutes, Ae as getBookingParamsFromSearch, je as getBookingSessionStorageKey, Ye as getCatalogProductBaseRateMinor, Xe as getCatalogProductPaginationSort, Ze as getCatalogProductSortFieldForPriceUnit, qr as getContractSaleDocumentRequestSchema, Jr as getContractSaleDocumentResponseSchema, Me as getDefaultBookingParams, Ne as getDefaultBookingParamsForStorefrontConfiguration, gt as getLocalizedEntry, t as getLocalizedStringValue, _t as getLocalizedValue, dt as getMinDayPriceMinor, Jt as getStorefrontAvailabilityIssue, Yt as getStorefrontAvailabilityStatus, Qe as getStorefrontBaseDailyRateMinor, $e as getStorefrontCheckoutProductId, et as getStorefrontRepresentedVariantId, v as isProductVariantCodeIdentifierKind, Xt as isStorefrontAvailabilityInsufficient, k as isoDateSchema, Bn as loader, n as localizedStringArraySchema, r as localizedStringEntrySchema, i as localizedStringSchema, s as majorToMinor, c as minorToMajor, l as moneyMinorSchema, H as paymentPoliciesSchema, Pe as pickBookingSearchParams, d as priceSchema, f as priceUnitSchema, y as productKindSchema, b as productSchema, x as productStorefrontDisplayModeSchema, S as productVariantAttributeSchema, C as productVariantCodeSchema, w as productVariantIdentifierSchema, T as productVariantSchema, Zt as publicAvailabilityDisplayModeSchema, W as publicBookingEngineConfigurationSchema, G as publicCheckoutConfigurationSchema, K as publicCheckoutDynamicOptionsSchema, Fe as readBookingSearchParamsFromSessionStorage, Ie as readBookingSearchParamsFromStorage, bt as requestSchema, ee as resolveBookingDeliveryOption, Le as resolveBookingSearchParams, Re as resolveBookingSearchParamsFromSessionStorage, ot as resolveStorefrontCartItemProduct, Ct as resolveStorefrontMapsHref, wt as resolveStorefrontPhoneContact, Et as resolveStorefrontWhatsAppContact, Dt as resolveStorefrontWhatsAppHref, xt as responseSchema, E as richTextJsonDocSchema, D as richTextSchema, O as richTextVersionSchema, A as shopConfigurationSchema, j as shopExtraTimeSlotRuleSchema, M as shopOpeningDayIndexSchema, N as shopOpeningDaySchema, P as shopOpeningHoursOverrideSchema, F as shopOpeningHoursPeriodSchema, I as shopOpeningSlotSchema, en as shouldBlockStorefrontUnavailableItem, u as signedMoneyMinorSchema, tn as storefrontAvailabilityProductSchema, Qt as storefrontAvailabilityRequestSchema, $t as storefrontAvailabilityResponseSchema, nn as storefrontAvailabilityScheduleSchema, se as storefrontCheckoutModeSchema, jt as storefrontCheckoutSubmitDeliveryRefinement, At as storefrontCheckoutSubmitItemSchema, kt as storefrontCheckoutSubmitRequestBaseSchema, Mt as storefrontCheckoutSubmitRequestSchema, Nt as storefrontCheckoutSubmitResponseSchema, ce as storefrontConfigurationSchema, le as storefrontContentSchema, yn as storefrontEn, ue as storefrontFaqItemSchema, de as storefrontFaqSchema, bn as storefrontFr, fe as storefrontFulfillmentModeSchema, sn as storefrontImageRequestSchema, pe as storefrontLocalizedRichTextSchema, me as storefrontModalMessageSchema, he as storefrontModulesSchema, Ft as storefrontProductsRequestSchema, It as storefrontProductsResponseSchema, Lt as storefrontPublicAccessoryProductSchema, rn as storefrontPublicAvailabilityRecordSchema, Rt as storefrontPublicBikeAvailabilityStatusSchema, zt as storefrontPublicBikeProductSchema, Bt as storefrontPublicProductDisplayModeSchema, Vt as storefrontPublicProductPriceSchema, Ht as storefrontPublicProductVariantAttributeSchema, Ut as storefrontPublicProductVariantIdentifierSchema, Wt as storefrontPublicProductVariantSchema, ge as storefrontReviewsModuleSchema, _e as storefrontRichTextSchema, Yr as storefrontRoutes, ve as storefrontSettingsSchema, ye as storefrontShopSchema, be as storefrontStatusSchema, fn as storefrontTimeSlotJourneySchema, dn as storefrontTimeSlotSchema, ln as storefrontTimeSlotsRequestSchema, un as storefrontTimeSlotsResponseSchema, xe as storefrontWorkspaceSchema, L as timeOfDaySchema, tt as toStorefrontAccessoryProducts, nt as toStorefrontBikeProducts, rt as toStorefrontBookingProducts, it as toStorefrontBookingProductsCollections, kn as useBookingPeriod, er as useFormField, Vn as useOptionalStorefront, Hn as useStorefront, Un as useStorefrontBookingProducts, st as useStorefrontCart, Wn as useStorefrontConfig, Gn as useStorefrontProducts, Kn as useStorefrontWorkspaceLanguage, Cn as useWhatsAppFloatingButton, te as validateBookingDeliveryAddress, ze as writeBookingSearchParamsToSessionStorage, Be as writeBookingSearchParamsToStorage };
@@ -14,6 +14,9 @@ export type StorefrontBookingParams = {
14
14
  type BookingSearchStorage = Pick<Storage, "getItem" | "removeItem" | "setItem"> | null | undefined;
15
15
  export declare const TIME_OPTIONS: string[];
16
16
  export declare const getDefaultBookingParams: (now?: Date) => StorefrontBookingParams;
17
+ export declare const createBookingPeriodConfigFromShopConfiguration: (shop: StorefrontConfiguration["bookingEngine"]["shop"], options?: {
18
+ sameDayCutoff?: string;
19
+ }) => BookingPeriodConfig;
17
20
  export declare const createBookingPeriodConfigFromBookingEngineConfiguration: (bookingEngine: StorefrontConfiguration["bookingEngine"], options?: {
18
21
  sameDayCutoff?: string;
19
22
  }) => BookingPeriodConfig;
@@ -1 +1 @@
1
- {"version":3,"file":"booking.d.ts","sourceRoot":"","sources":["../../src/lib/booking.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AACnE,OAAO,EAGL,KAAK,mBAAmB,EAGzB,MAAM,kBAAkB,CAAA;AAGzB,eAAO,MAAM,mBAAmB,8GAQtB,CAAA;AAEV,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,UAAU,CAAA;AAEtD,MAAM,MAAM,uBAAuB,GAAG;IACpC,WAAW,EAAE,kBAAkB,CAAA;IAC/B,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAID,KAAK,oBAAoB,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,GAAG,YAAY,GAAG,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,CAAA;AAelG,eAAO,MAAM,YAAY,UAAqB,CAAA;AAE9C,eAAO,MAAM,uBAAuB,GAAI,MAAK,IAAiB,KAAG,uBAWhE,CAAA;AA6BD,eAAO,MAAM,uDAAuD,GAClE,eAAe,uBAAuB,CAAC,eAAe,CAAC,EACvD,UAAS;IAAE,aAAa,CAAC,EAAE,MAAM,CAAA;CAAO,KACvC,mBAoBF,CAAA;AAED,eAAO,MAAM,oDAAoD,GAC/D,yBAAyB,uBAAuB,KAC/C,mBAIF,CAAA;AAED,eAAO,MAAM,iDAAiD,GAC5D,yBAAyB,uBAAuB,EAChD,MAAK,IAAiB,KACrB,uBAgBF,CAAA;AAQD,eAAO,MAAM,0BAA0B,GACrC,cAAc,eAAe,EAC7B,WAAW,OAAO,CAAC,uBAAuB,CAAC,KAC1C,uBA0BF,CAAA;AAED,eAAO,MAAM,0BAA0B,GACrC,cAAc,eAAe,EAC7B,SAAS,OAAO,CAAC,uBAAuB,CAAC,KACxC,eAoBF,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,cAAc,eAAe,KAAG,eAcvE,CAAA;AAuBD,eAAO,MAAM,2BAA2B,GAAI,YAAY,MAAM,KAAG,MAOhE,CAAA;AAED,eAAO,MAAM,kCAAkC,GAC7C,SAAS,oBAAoB,EAC7B,YAAY,MAAM,KACjB,eAiBF,CAAA;AAED,eAAO,MAAM,iCAAiC,GAC5C,SAAS,oBAAoB,EAC7B,WAAW,MAAM,GAAG,SAAS,EAC7B,SAAS,OAAO,CAAC,uBAAuB,CAAC,GAAG,eAAe,KAC1D,IAkBF,CAAA;AAED,eAAO,MAAM,yCAAyC,GAAI,YAAY,MAAM,KAAG,eAE9E,CAAA;AAED,eAAO,MAAM,wCAAwC,GACnD,WAAW,MAAM,GAAG,SAAS,EAC7B,SAAS,OAAO,CAAC,uBAAuB,CAAC,GAAG,eAAe,KAC1D,IAEF,CAAA;AAED,eAAO,MAAM,0BAA0B,GACrC,cAAc,eAAe,EAC7B,UAAU;IACR,OAAO,CAAC,EAAE,oBAAoB,CAAA;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,KACA,eAOF,CAAA;AAED,eAAO,MAAM,4CAA4C,GACvD,cAAc,eAAe,EAC7B,YAAY,MAAM,KACjB,eAKF,CAAA;AAED,eAAO,MAAM,yBAAyB,GAAI,SAAS,uBAAuB,KAAG,MAK5E,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,SAAS,uBAAuB,KAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAQzH,CAAA"}
1
+ {"version":3,"file":"booking.d.ts","sourceRoot":"","sources":["../../src/lib/booking.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAA;AACnE,OAAO,EAGL,KAAK,mBAAmB,EAGzB,MAAM,kBAAkB,CAAA;AAGzB,eAAO,MAAM,mBAAmB,8GAQtB,CAAA;AAEV,MAAM,MAAM,kBAAkB,GAAG,QAAQ,GAAG,UAAU,CAAA;AAEtD,MAAM,MAAM,uBAAuB,GAAG;IACpC,WAAW,EAAE,kBAAkB,CAAA;IAC/B,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;CACpB,CAAA;AAID,KAAK,oBAAoB,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,GAAG,YAAY,GAAG,SAAS,CAAC,GAAG,IAAI,GAAG,SAAS,CAAA;AAelG,eAAO,MAAM,YAAY,UAAqB,CAAA;AAE9C,eAAO,MAAM,uBAAuB,GAAI,MAAK,IAAiB,KAAG,uBAWhE,CAAA;AA6BD,eAAO,MAAM,8CAA8C,GACzD,MAAM,uBAAuB,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC,EACtD,UAAS;IAAE,aAAa,CAAC,EAAE,MAAM,CAAA;CAAO,KACvC,mBAmBF,CAAA;AAED,eAAO,MAAM,uDAAuD,GAClE,eAAe,uBAAuB,CAAC,eAAe,CAAC,EACvD,UAAS;IAAE,aAAa,CAAC,EAAE,MAAM,CAAA;CAAO,KACvC,mBAKF,CAAA;AAED,eAAO,MAAM,oDAAoD,GAC/D,yBAAyB,uBAAuB,KAC/C,mBAIF,CAAA;AAED,eAAO,MAAM,iDAAiD,GAC5D,yBAAyB,uBAAuB,EAChD,MAAK,IAAiB,KACrB,uBAgBF,CAAA;AAQD,eAAO,MAAM,0BAA0B,GACrC,cAAc,eAAe,EAC7B,WAAW,OAAO,CAAC,uBAAuB,CAAC,KAC1C,uBA0BF,CAAA;AAED,eAAO,MAAM,0BAA0B,GACrC,cAAc,eAAe,EAC7B,SAAS,OAAO,CAAC,uBAAuB,CAAC,KACxC,eAoBF,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,cAAc,eAAe,KAAG,eAcvE,CAAA;AAuBD,eAAO,MAAM,2BAA2B,GAAI,YAAY,MAAM,KAAG,MAOhE,CAAA;AAED,eAAO,MAAM,kCAAkC,GAC7C,SAAS,oBAAoB,EAC7B,YAAY,MAAM,KACjB,eAiBF,CAAA;AAED,eAAO,MAAM,iCAAiC,GAC5C,SAAS,oBAAoB,EAC7B,WAAW,MAAM,GAAG,SAAS,EAC7B,SAAS,OAAO,CAAC,uBAAuB,CAAC,GAAG,eAAe,KAC1D,IAkBF,CAAA;AAED,eAAO,MAAM,yCAAyC,GAAI,YAAY,MAAM,KAAG,eAE9E,CAAA;AAED,eAAO,MAAM,wCAAwC,GACnD,WAAW,MAAM,GAAG,SAAS,EAC7B,SAAS,OAAO,CAAC,uBAAuB,CAAC,GAAG,eAAe,KAC1D,IAEF,CAAA;AAED,eAAO,MAAM,0BAA0B,GACrC,cAAc,eAAe,EAC7B,UAAU;IACR,OAAO,CAAC,EAAE,oBAAoB,CAAA;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,KACA,eAOF,CAAA;AAED,eAAO,MAAM,4CAA4C,GACvD,cAAc,eAAe,EAC7B,YAAY,MAAM,KACjB,eAKF,CAAA;AAED,eAAO,MAAM,yBAAyB,GAAI,SAAS,uBAAuB,KAAG,MAK5E,CAAA;AAED,eAAO,MAAM,uBAAuB,GAAI,SAAS,uBAAuB,KAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAQzH,CAAA"}
@@ -1,7 +1,9 @@
1
- import { getDefaultBookingPeriod as e, parseTimeToMinutes as t } from "./booking-period.js";
2
- import { differenceInMinutes as n, format as r } from "date-fns";
1
+ import { DEFAULT_BOOKING_DELIVERY_OPTION as e } from "../chunks/booking-engine/dist/schemas/cart-inputs-j1yWfJxO.js";
2
+ import "../chunks/booking-engine/dist/schemas-DftrSnTE.js";
3
+ import { getDefaultBookingPeriod as t, parseTimeToMinutes as n } from "./booking-period.js";
4
+ import { differenceInMinutes as r, format as i } from "date-fns";
3
5
  //#region src/lib/booking.ts
4
- var i = [
6
+ var a = [
5
7
  "fulfillment",
6
8
  "start_date",
7
9
  "start_time",
@@ -9,78 +11,78 @@ var i = [
9
11
  "end_time",
10
12
  "start_address",
11
13
  "end_address"
12
- ], a = "loczer_storefront_booking:", o = (e) => r(e, "yyyy-MM-dd"), s = (() => {
14
+ ], o = "loczer_storefront_booking:", s = (e) => i(e, "yyyy-MM-dd"), c = (() => {
13
15
  let e = [];
14
16
  for (let t = 8; t <= 18; t += 1) for (let n of [0, 30]) t === 18 && n > 0 || e.push(`${String(t).padStart(2, "0")}:${String(n).padStart(2, "0")}`);
15
17
  return e;
16
- })(), c = (e = /* @__PURE__ */ new Date()) => {
17
- let t = o(e);
18
+ })(), l = (t = /* @__PURE__ */ new Date()) => {
19
+ let n = s(t);
18
20
  return {
19
- fulfillment: "pickup",
20
- start_date: t,
21
- start_time: s[3] ?? "09:30",
22
- end_date: t,
23
- end_time: s.at(-1) ?? "18:00",
21
+ fulfillment: e,
22
+ start_date: n,
23
+ start_time: c[3] ?? "09:30",
24
+ end_date: n,
25
+ end_time: c.at(-1) ?? "18:00",
24
26
  start_address: "",
25
27
  end_address: ""
26
28
  };
27
- }, l = 30, u = 15, d = 10, f = 960, p = (e) => t(e) ?? f, m = (e) => (Math.trunc(e) % 7 + 7) % 7, h = (e) => {
29
+ }, u = 30, d = 15, f = 10, p = 960, m = (e) => n(e) ?? p, h = (e) => (Math.trunc(e) % 7 + 7) % 7, g = (e) => {
28
30
  if (e?.length) return e.map((e) => ({
29
31
  minutesAfterClose: e.minutesAfterClose,
30
32
  extraAmount: e.extraAmount
31
33
  }));
32
- }, g = (e, t = {}) => {
33
- let n = e.checkout.dynamicOptions?.sameDayCutoff;
34
- return {
35
- timing: {
36
- slotIntervalMinutes: l,
37
- autoFillCutoffMinutes: p(t.sameDayCutoff ?? n),
38
- pastToleranceMinutes: u,
39
- minBufferMinutes: d
40
- },
41
- openingHours: e.shop.openingHours.map((e) => ({
34
+ }, _ = (e, t = {}) => ({
35
+ timing: {
36
+ slotIntervalMinutes: u,
37
+ autoFillCutoffMinutes: m(t.sameDayCutoff),
38
+ pastToleranceMinutes: d,
39
+ minBufferMinutes: f
40
+ },
41
+ openingHours: e.openingHours.map((e) => ({
42
+ ...e,
43
+ openingHours: e.openingHours.map((e) => ({
42
44
  ...e,
43
- openingHours: e.openingHours.map((e) => ({
44
- ...e,
45
- day: m(e.day)
46
- }))
47
- })),
48
- openingHoursOverrides: e.shop.openingHoursOverrides ?? [],
49
- timeZone: e.shop.timeZone,
50
- extraTimeSlots: h(e.shop.extraTimeSlots)
51
- };
52
- }, _ = (e) => g(e.bookingEngine, { sameDayCutoff: e.settings.sameDayCutoff }), v = (t, n = /* @__PURE__ */ new Date()) => {
53
- let r = e({
54
- config: _(t),
55
- referenceDate: n
45
+ day: h(e.day)
46
+ }))
47
+ })),
48
+ openingHoursOverrides: e.openingHoursOverrides ?? [],
49
+ timeZone: e.timeZone,
50
+ extraTimeSlots: g(e.extraTimeSlots)
51
+ }), v = (e, t = {}) => {
52
+ let n = e.checkout.dynamicOptions?.sameDayCutoff;
53
+ return _(e.shop, { sameDayCutoff: t.sameDayCutoff ?? n });
54
+ }, y = (e) => v(e.bookingEngine, { sameDayCutoff: e.settings.sameDayCutoff }), b = (n, r = /* @__PURE__ */ new Date()) => {
55
+ let i = t({
56
+ config: y(n),
57
+ referenceDate: r
56
58
  });
57
59
  return {
58
- fulfillment: "pickup",
59
- start_date: o(r.startDate),
60
- start_time: r.startTime,
61
- end_date: o(r.endDate),
62
- end_time: r.endTime,
60
+ fulfillment: e,
61
+ start_date: s(i.startDate),
62
+ start_time: i.startTime,
63
+ end_date: s(i.endDate),
64
+ end_time: i.endTime,
63
65
  start_address: "",
64
66
  end_address: ""
65
67
  };
66
- }, y = (e, t, n) => {
68
+ }, x = (e, t, n) => {
67
69
  let r = e.get(t);
68
70
  return r == null || r.trim() === "" ? n : r;
69
- }, b = (e, t) => {
71
+ }, S = (e, t) => {
70
72
  let n = {
71
- ...c(),
73
+ ...l(),
72
74
  ...t
73
75
  };
74
76
  return {
75
77
  fulfillment: e.get("fulfillment") === "delivery" ? "delivery" : e.get("fulfillment") === "pickup" ? "pickup" : n.fulfillment,
76
- start_date: y(e, "start_date", n.start_date),
77
- start_time: y(e, "start_time", n.start_time),
78
- end_date: y(e, "end_date", n.end_date),
79
- end_time: y(e, "end_time", n.end_time),
80
- start_address: y(e, "start_address", n.start_address),
81
- end_address: y(e, "end_address", n.end_address)
78
+ start_date: x(e, "start_date", n.start_date),
79
+ start_time: x(e, "start_time", n.start_time),
80
+ end_date: x(e, "end_date", n.end_date),
81
+ end_time: x(e, "end_time", n.end_time),
82
+ start_address: x(e, "start_address", n.start_address),
83
+ end_address: x(e, "end_address", n.end_address)
82
84
  };
83
- }, x = (e, t) => {
85
+ }, C = (e, t) => {
84
86
  let n = new URLSearchParams(e), r = (e, t) => {
85
87
  if (t != null) {
86
88
  if (t.trim() === "") {
@@ -91,38 +93,38 @@ var i = [
91
93
  }
92
94
  };
93
95
  return r("fulfillment", t.fulfillment), r("start_date", t.start_date), r("start_time", t.start_time), r("end_date", t.end_date), r("end_time", t.end_time), r("start_address", t.start_address), r("end_address", t.end_address), n;
94
- }, S = (e) => {
96
+ }, w = (e) => {
95
97
  let t = new URLSearchParams();
96
- for (let n of i) {
98
+ for (let n of a) {
97
99
  let r = e.get(n);
98
100
  if (r == null) continue;
99
101
  let i = r.trim();
100
102
  i.length !== 0 && t.set(n, i);
101
103
  }
102
104
  return t;
103
- }, C = () => {
105
+ }, T = () => {
104
106
  if (typeof window > "u") return null;
105
107
  try {
106
108
  return window.sessionStorage;
107
109
  } catch {
108
110
  return null;
109
111
  }
110
- }, w = (e) => e instanceof URLSearchParams ? S(e) : x(new URLSearchParams(), e), T = (e) => {
112
+ }, E = (e) => e instanceof URLSearchParams ? w(e) : C(new URLSearchParams(), e), D = (e) => {
111
113
  let t = e?.trim() ?? "";
112
- return t ? `${a}${t}` : "";
113
- }, E = (e, t) => {
114
- let n = T(t);
114
+ return t ? `${o}${t}` : "";
115
+ }, O = (e, t) => {
116
+ let n = D(t);
115
117
  if (!n || !e) return new URLSearchParams();
116
118
  try {
117
119
  let t = e.getItem(n);
118
- return t ? S(new URLSearchParams(t)) : new URLSearchParams();
120
+ return t ? w(new URLSearchParams(t)) : new URLSearchParams();
119
121
  } catch {
120
122
  return new URLSearchParams();
121
123
  }
122
- }, D = (e, t, n) => {
123
- let r = T(t);
124
+ }, k = (e, t, n) => {
125
+ let r = D(t);
124
126
  if (!r || !e) return;
125
- let i = w(n).toString();
127
+ let i = E(n).toString();
126
128
  try {
127
129
  if (!i) {
128
130
  e.removeItem(r);
@@ -130,19 +132,19 @@ var i = [
130
132
  }
131
133
  e.setItem(r, i);
132
134
  } catch {}
133
- }, O = (e) => E(C(), e), k = (e, t) => {
134
- D(C(), e, t);
135
- }, A = (e, t) => {
136
- let n = S(e);
137
- return n.toString() ? n : E(t?.storage, t?.storeSlug);
138
- }, j = (e, t) => A(e, {
139
- storage: C(),
135
+ }, A = (e) => O(T(), e), j = (e, t) => {
136
+ k(T(), e, t);
137
+ }, M = (e, t) => {
138
+ let n = w(e);
139
+ return n.toString() ? n : O(t?.storage, t?.storeSlug);
140
+ }, N = (e, t) => M(e, {
141
+ storage: T(),
140
142
  storeSlug: t
141
- }), M = (e) => {
142
- let t = /* @__PURE__ */ new Date(`${e.start_date}T${e.start_time}:00`), r = /* @__PURE__ */ new Date(`${e.end_date}T${e.end_time}:00`);
143
- return Number.isNaN(t.getTime()) || Number.isNaN(r.getTime()) ? 0 : Math.max(0, n(r, t));
144
- }, N = (e) => {
145
- let t = M(e), n = Math.floor(t / 60), r = t % 60;
143
+ }), P = (e) => {
144
+ let t = /* @__PURE__ */ new Date(`${e.start_date}T${e.start_time}:00`), n = /* @__PURE__ */ new Date(`${e.end_date}T${e.end_time}:00`);
145
+ return Number.isNaN(t.getTime()) || Number.isNaN(n.getTime()) ? 0 : Math.max(0, r(n, t));
146
+ }, F = (e) => {
147
+ let t = P(e), n = Math.floor(t / 60), r = t % 60;
146
148
  return r === 0 ? {
147
149
  hours: n,
148
150
  minutes: r,
@@ -154,4 +156,4 @@ var i = [
154
156
  };
155
157
  };
156
158
  //#endregion
157
- export { i as BOOKING_SEARCH_KEYS, s as TIME_OPTIONS, x as applyBookingParamsToSearch, g as createBookingPeriodConfigFromBookingEngineConfiguration, _ as createBookingPeriodConfigFromStorefrontConfiguration, N as getBookingDurationLabel, M as getBookingDurationMinutes, b as getBookingParamsFromSearch, T as getBookingSessionStorageKey, c as getDefaultBookingParams, v as getDefaultBookingParamsForStorefrontConfiguration, S as pickBookingSearchParams, O as readBookingSearchParamsFromSessionStorage, E as readBookingSearchParamsFromStorage, A as resolveBookingSearchParams, j as resolveBookingSearchParamsFromSessionStorage, k as writeBookingSearchParamsToSessionStorage, D as writeBookingSearchParamsToStorage };
159
+ export { a as BOOKING_SEARCH_KEYS, c as TIME_OPTIONS, C as applyBookingParamsToSearch, v as createBookingPeriodConfigFromBookingEngineConfiguration, _ as createBookingPeriodConfigFromShopConfiguration, y as createBookingPeriodConfigFromStorefrontConfiguration, F as getBookingDurationLabel, P as getBookingDurationMinutes, S as getBookingParamsFromSearch, D as getBookingSessionStorageKey, l as getDefaultBookingParams, b as getDefaultBookingParamsForStorefrontConfiguration, w as pickBookingSearchParams, A as readBookingSearchParamsFromSessionStorage, O as readBookingSearchParamsFromStorage, M as resolveBookingSearchParams, N as resolveBookingSearchParamsFromSessionStorage, j as writeBookingSearchParamsToSessionStorage, k as writeBookingSearchParamsToStorage };
@@ -1,4 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
+ import { StorefrontProduct, StorefrontProductsCollections } from './products';
2
3
  export type StorefrontCartItem = {
3
4
  key: string;
4
5
  kind: "bike" | "e-bike" | "accessory";
@@ -16,8 +17,10 @@ type StorefrontCartContextValue = {
16
17
  removeItem: (key: string) => void;
17
18
  clear: () => void;
18
19
  };
19
- export declare function StorefrontCartProvider({ storeSlug, children }: {
20
+ export declare const resolveStorefrontCartItemProduct: (item: StorefrontCartItem, products: StorefrontProductsCollections) => StorefrontProduct | null;
21
+ export declare function StorefrontCartProvider({ storeSlug, products, children, }: {
20
22
  storeSlug: string;
23
+ products: StorefrontProductsCollections;
21
24
  children: ReactNode;
22
25
  }): import("react/jsx-runtime").JSX.Element;
23
26
  export declare const useStorefrontCart: () => StorefrontCartContextValue;
@@ -1 +1 @@
1
- {"version":3,"file":"cart.d.ts","sourceRoot":"","sources":["../../src/lib/cart.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAG5G,MAAM,MAAM,kBAAkB,GAAG;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,CAAA;IACrC,SAAS,EAAE,MAAM,CAAA;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAMD,KAAK,0BAA0B,GAAG;IAChC,KAAK,EAAE,kBAAkB,EAAE,CAAA;IAC3B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,GAAG;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IAC3E,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACpD,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,KAAK,EAAE,MAAM,IAAI,CAAA;CAClB,CAAA;AAgDD,wBAAgB,sBAAsB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,2CAwFzG;AAED,eAAO,MAAM,iBAAiB,kCAM7B,CAAA"}
1
+ {"version":3,"file":"cart.d.ts","sourceRoot":"","sources":["../../src/lib/cart.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAwE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAA;AAE5G,OAAO,EAEL,KAAK,iBAAiB,EACtB,KAAK,6BAA6B,EACnC,MAAM,YAAY,CAAA;AAGnB,MAAM,MAAM,kBAAkB,GAAG;IAC/B,GAAG,EAAE,MAAM,CAAA;IACX,IAAI,EAAE,MAAM,GAAG,QAAQ,GAAG,WAAW,CAAA;IACrC,SAAS,EAAE,MAAM,CAAA;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,QAAQ,EAAE,MAAM,CAAA;CACjB,CAAA;AAMD,KAAK,0BAA0B,GAAG;IAChC,KAAK,EAAE,kBAAkB,EAAE,CAAA;IAC3B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,kBAAkB,EAAE,KAAK,CAAC,GAAG;QAAE,GAAG,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAA;IAC3E,WAAW,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAA;IACpD,UAAU,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,KAAK,EAAE,MAAM,IAAI,CAAA;CAClB,CAAA;AAWD,eAAO,MAAM,gCAAgC,GAC3C,MAAM,kBAAkB,EACxB,UAAU,6BAA6B,KACtC,iBAAiB,GAAG,IAQtB,CAAA;AA+CD,wBAAgB,sBAAsB,CAAC,EACrC,SAAS,EACT,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,6BAA6B,CAAA;IACvC,QAAQ,EAAE,SAAS,CAAA;CACpB,2CAuGA;AAED,eAAO,MAAM,iBAAiB,kCAM7B,CAAA"}