@loczer/storefront-sdk 0.220.0 → 0.222.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 (47) hide show
  1. package/dist/StorefrontContext.d.ts +2 -2
  2. package/dist/StorefrontProvider.d.ts +2 -2
  3. package/dist/components/Header/index.d.ts.map +1 -1
  4. package/dist/components/Header/index.js +118 -126
  5. package/dist/components/LanguageSelector/index.d.ts +7 -0
  6. package/dist/components/LanguageSelector/index.d.ts.map +1 -0
  7. package/dist/components/LanguageSelector/index.js +69 -0
  8. package/dist/components/StorefrontCartPanel/index.d.ts +3 -8
  9. package/dist/components/StorefrontCartPanel/index.d.ts.map +1 -1
  10. package/dist/components/StorefrontCartPanel/index.js +65 -108
  11. package/dist/i18n/I18nProvider.d.ts +3 -2
  12. package/dist/i18n/I18nProvider.d.ts.map +1 -1
  13. package/dist/i18n/I18nProvider.js +61 -64
  14. package/dist/i18n/en.d.ts +3 -2
  15. package/dist/i18n/en.d.ts.map +1 -1
  16. package/dist/i18n/en.js +6 -5
  17. package/dist/i18n/fr.d.ts +3 -2
  18. package/dist/i18n/fr.d.ts.map +1 -1
  19. package/dist/i18n/fr.js +6 -5
  20. package/dist/i18n/languages.d.ts +15 -0
  21. package/dist/i18n/languages.d.ts.map +1 -0
  22. package/dist/i18n/languages.js +26 -0
  23. package/dist/index.d.ts +36 -24
  24. package/dist/index.js +50 -49
  25. package/dist/lib/cartSummary.d.ts +2 -5
  26. package/dist/lib/cartSummary.d.ts.map +1 -1
  27. package/dist/lib/cartSummary.js +5 -11
  28. package/dist/pages/BookingPage.d.ts.map +1 -1
  29. package/dist/pages/BookingPage.js +150 -148
  30. package/dist/pages/CheckoutPage.d.ts.map +1 -1
  31. package/dist/pages/CheckoutPage.js +236 -272
  32. package/dist/pages/ContractSaleDocumentPage.d.ts +2 -3
  33. package/dist/pages/ContractSaleDocumentPage.d.ts.map +1 -1
  34. package/dist/pages/ContractSaleDocumentPage.js +18 -17
  35. package/dist/pages/checkout/components/CheckoutDetailsCard.d.ts.map +1 -1
  36. package/dist/pages/checkout/components/CheckoutDetailsCard.js +38 -25
  37. package/dist/pages/checkout/components/CheckoutSummaryColumn.d.ts +6 -2
  38. package/dist/pages/checkout/components/CheckoutSummaryColumn.d.ts.map +1 -1
  39. package/dist/pages/checkout/components/CheckoutSummaryColumn.js +48 -19
  40. package/dist/storefront.css +1 -1
  41. package/dist/storefrontSchemas.d.ts +2 -2
  42. package/dist/storefrontSchemas.d.ts.map +1 -1
  43. package/dist/storefrontSchemas.js +95 -94
  44. package/package.json +1 -1
  45. package/dist/pages/checkout/components/CheckoutPaymentSummaryCard.d.ts +0 -24
  46. package/dist/pages/checkout/components/CheckoutPaymentSummaryCard.d.ts.map +0 -1
  47. package/dist/pages/checkout/components/CheckoutPaymentSummaryCard.js +0 -158
@@ -397,7 +397,7 @@ export declare const storefrontConfigurationSchema: z.ZodObject<{
397
397
  startDate: string;
398
398
  endDate: string;
399
399
  openingHours: {
400
- day: 0 | 1 | 2 | 3 | 4 | 5 | 6;
400
+ day: 0 | 2 | 1 | 3 | 4 | 5 | 6;
401
401
  openingSlots: {
402
402
  start: string;
403
403
  end: string;
@@ -471,7 +471,7 @@ export declare const storefrontConfigurationSchema: z.ZodObject<{
471
471
  startDate: string;
472
472
  endDate: string;
473
473
  openingHours: {
474
- day: 0 | 1 | 2 | 3 | 4 | 5 | 6;
474
+ day: 0 | 2 | 1 | 3 | 4 | 5 | 6;
475
475
  openingSlots: {
476
476
  start: string;
477
477
  end: string;
@@ -1 +1 @@
1
- {"version":3,"file":"storefrontSchemas.d.ts","sourceRoot":"","sources":["../src/storefrontSchemas.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"storefrontSchemas.d.ts","sourceRoot":"","sources":["../src/storefrontSchemas.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,22 @@
1
1
  import { timeOfDaySchema as e } from "./chunks/pkg/booking-engine/dist/schemas/shop-opening-hours-BlLD1gfz.js";
2
2
  import { publicBookingEngineConfigurationSchema as t } from "./chunks/pkg/booking-engine/dist/schemas/public-booking-engine-configuration-CEM9mexX.js";
3
3
  import "./chunks/pkg/booking-engine/dist/schemas-DGn2a1my.js";
4
- import { z as n } from "zod";
4
+ import { STOREFRONT_I18N_LANGUAGE_CODES as n } from "./i18n/languages.js";
5
+ import { z as r } from "zod";
5
6
  //#region src/storefrontSchemas.ts
6
- var r = n.string().trim().regex(/^\+[1-9]\d{1,14}$/, { message: "Invalid phone number format (expected E.164, e.g. +14155552671)." }), i = n.object({
7
- value: n.string().trim().min(1),
8
- updatedAt: n.coerce.date(),
9
- autoTranslated: n.boolean().optional()
10
- }).passthrough(), a = n.record(n.string().min(2), i), o = a.refine((e) => Object.keys(e).length > 0, { message: "Add at least one translation." }), s = n.object({
11
- version: n.literal(1),
12
- json: n.string(),
13
- html: n.string(),
14
- text: n.string()
15
- }).strict(), c = n.record(n.string().min(2), s).refine((e) => Object.keys(e).length > 0, { message: "Add at least one translation." }), l = n.object({
16
- rentalTerms: s.optional(),
17
- rentalTermsUpdatedAt: n.string().datetime({ offset: !0 }).nullable().optional()
18
- }), u = (e) => e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;"), d = (e) => {
7
+ var i = r.string().trim().regex(/^\+[1-9]\d{1,14}$/, { message: "Invalid phone number format (expected E.164, e.g. +14155552671)." }), a = r.object({
8
+ value: r.string().trim().min(1),
9
+ updatedAt: r.coerce.date(),
10
+ autoTranslated: r.boolean().optional()
11
+ }).passthrough(), o = r.record(r.string().min(2), a), s = o.refine((e) => Object.keys(e).length > 0, { message: "Add at least one translation." }), c = r.object({
12
+ version: r.literal(1),
13
+ json: r.string(),
14
+ html: r.string(),
15
+ text: r.string()
16
+ }).strict(), l = r.record(r.string().min(2), c).refine((e) => Object.keys(e).length > 0, { message: "Add at least one translation." }), u = r.object({
17
+ rentalTerms: c.optional(),
18
+ rentalTermsUpdatedAt: r.string().datetime({ offset: !0 }).nullable().optional()
19
+ }), d = (e) => e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#39;"), f = (e) => {
19
20
  let t = e.trim(), n = t.split(/\n+/).map((e) => e.trim()).filter(Boolean), r = n.length > 0 ? n.map((e) => ({
20
21
  type: "paragraph",
21
22
  content: [{
@@ -29,95 +30,95 @@ var r = n.string().trim().regex(/^\+[1-9]\d{1,14}$/, { message: "Invalid phone n
29
30
  type: "doc",
30
31
  content: r
31
32
  }),
32
- html: n.map((e) => `<p>${u(e)}</p>`).join(""),
33
+ html: n.map((e) => `<p>${d(e)}</p>`).join(""),
33
34
  text: t
34
35
  };
35
- }, f = n.preprocess((e) => {
36
- let t = a.safeParse(e);
37
- return t.success ? Object.fromEntries(Object.entries(t.data).map(([e, t]) => [e, d(t.value)])) : e;
38
- }, c), p = n.string().regex(/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/), m = t, h = n.enum(["unpublished", "published"]), g = n.enum(["auto_approve_when_possible", "manual_approval_required"]), _ = n.enum(["pickup", "delivery"]), v = [
36
+ }, p = r.preprocess((e) => {
37
+ let t = o.safeParse(e);
38
+ return t.success ? Object.fromEntries(Object.entries(t.data).map(([e, t]) => [e, f(t.value)])) : e;
39
+ }, l), m = r.string().regex(/^[0-9]{4}-[0-9]{2}-[0-9]{2}$/), h = t, g = r.enum(["unpublished", "published"]), _ = r.enum(["auto_approve_when_possible", "manual_approval_required"]), v = r.enum(["pickup", "delivery"]), y = [
39
40
  "current_booking_hero",
40
41
  "booking_bar_overlay_hero",
41
42
  "vertical_marquee_hero"
42
- ], y = n.enum(v), b = t.shape.availabilityDisplay, x = n.object({
43
- status: h,
44
- checkoutMode: g,
45
- availabilityDisplay: b,
46
- enabled: n.boolean(),
47
- fulfillmentModes: n.array(_).min(1),
48
- deliveryDisabledReason: n.string().trim().default(""),
43
+ ], b = r.enum(y), x = t.shape.availabilityDisplay, S = r.object({
44
+ status: g,
45
+ checkoutMode: _,
46
+ availabilityDisplay: x,
47
+ enabled: r.boolean(),
48
+ fulfillmentModes: r.array(v).min(1),
49
+ deliveryDisabledReason: r.string().trim().default(""),
49
50
  sameDayCutoff: e
50
- }), S = n.object({
51
- id: n.string().min(1),
52
- slug: n.string().min(1).optional(),
53
- name: n.string().min(1),
54
- logoImageId: n.string().min(1).optional(),
55
- timeZone: n.string().min(1).optional(),
56
- url: n.string().min(1).optional(),
57
- googleMapsLink: n.string().min(1).optional(),
58
- googleRequestReviewsLink: n.string().min(1).optional(),
59
- emailAddress: n.string().min(1).optional(),
60
- contactPhone1: r.optional(),
61
- contactPhone2: r.optional(),
62
- address: n.string().min(1).optional(),
63
- city: n.string().min(1).optional(),
64
- country: n.string().min(1).optional(),
65
- gpsCoordinates: n.tuple([n.number(), n.number()]).optional()
66
- }), C = n.object({
67
- name: n.string().min(1).optional(),
68
- workspaceLanguage: n.enum(["fr", "en"]).optional(),
69
- languages: n.array(n.string().min(1)).optional()
70
- }), w = n.object({
71
- id: n.string().min(1),
72
- question: o,
73
- answer: o
74
- }), T = n.object({
75
- id: n.string().min(1),
76
- enabled: n.boolean().default(!0),
77
- showOnEachVisit: n.boolean().default(!1),
78
- startDate: p.nullable().default(null),
79
- endDate: p.nullable().default(null),
80
- title: a.optional(),
81
- subtitle: a.optional(),
82
- message: f.optional(),
83
- imageIds: n.array(n.string().min(1)).default([])
84
- }), E = n.object({
85
- general: n.array(w).default([]),
86
- deliveries: n.array(w).default([]),
87
- booking: n.array(w).default([])
88
- }), D = n.object({
89
- heroMode: y.default("current_booking_hero"),
90
- tagline: a.optional(),
91
- logoSquareImageId: n.string().min(1).optional(),
92
- logoWideImageId: n.string().min(1).optional(),
93
- galleryImageIds: n.array(n.string().min(1)).default([]),
94
- topBannerMessage: a.optional(),
95
- about: c.optional(),
96
- whatsappPhone1Enabled: n.boolean().default(!1),
97
- whatsappPhone2Enabled: n.boolean().default(!1),
98
- whatsappMessage: a.optional(),
99
- showWhatsappFloatingButton: n.boolean().default(!0),
100
- modalMessages: n.array(T).default([]),
101
- faq: E.default({
51
+ }), C = r.object({
52
+ id: r.string().min(1),
53
+ slug: r.string().min(1).optional(),
54
+ name: r.string().min(1),
55
+ logoImageId: r.string().min(1).optional(),
56
+ timeZone: r.string().min(1).optional(),
57
+ url: r.string().min(1).optional(),
58
+ googleMapsLink: r.string().min(1).optional(),
59
+ googleRequestReviewsLink: r.string().min(1).optional(),
60
+ emailAddress: r.string().min(1).optional(),
61
+ contactPhone1: i.optional(),
62
+ contactPhone2: i.optional(),
63
+ address: r.string().min(1).optional(),
64
+ city: r.string().min(1).optional(),
65
+ country: r.string().min(1).optional(),
66
+ gpsCoordinates: r.tuple([r.number(), r.number()]).optional()
67
+ }), w = r.object({
68
+ name: r.string().min(1).optional(),
69
+ workspaceLanguage: r.enum(n).optional(),
70
+ languages: r.array(r.string().min(1)).optional()
71
+ }), T = r.object({
72
+ id: r.string().min(1),
73
+ question: s,
74
+ answer: s
75
+ }), E = r.object({
76
+ id: r.string().min(1),
77
+ enabled: r.boolean().default(!0),
78
+ showOnEachVisit: r.boolean().default(!1),
79
+ startDate: m.nullable().default(null),
80
+ endDate: m.nullable().default(null),
81
+ title: o.optional(),
82
+ subtitle: o.optional(),
83
+ message: p.optional(),
84
+ imageIds: r.array(r.string().min(1)).default([])
85
+ }), D = r.object({
86
+ general: r.array(T).default([]),
87
+ deliveries: r.array(T).default([]),
88
+ booking: r.array(T).default([])
89
+ }), O = r.object({
90
+ heroMode: b.default("current_booking_hero"),
91
+ tagline: o.optional(),
92
+ logoSquareImageId: r.string().min(1).optional(),
93
+ logoWideImageId: r.string().min(1).optional(),
94
+ galleryImageIds: r.array(r.string().min(1)).default([]),
95
+ topBannerMessage: o.optional(),
96
+ about: l.optional(),
97
+ whatsappPhone1Enabled: r.boolean().default(!1),
98
+ whatsappPhone2Enabled: r.boolean().default(!1),
99
+ whatsappMessage: o.optional(),
100
+ showWhatsappFloatingButton: r.boolean().default(!0),
101
+ modalMessages: r.array(E).default([]),
102
+ faq: D.default({
102
103
  general: [],
103
104
  deliveries: [],
104
105
  booking: []
105
106
  })
106
- }), O = n.object({
107
- enabled: n.boolean(),
108
- showRecentReviewsOnStorefront: n.boolean()
109
- }), k = n.object({
110
- reviews: O.optional(),
111
- insurance: n.object({ enabled: n.boolean() }).optional()
112
- }), A = n.object({
113
- storeSlug: n.string().min(1),
114
- workspace: C.optional(),
115
- shop: S,
116
- settings: x,
117
- bookingEngine: m,
118
- content: D.optional(),
119
- information: l.optional(),
120
- modules: k.optional()
107
+ }), k = r.object({
108
+ enabled: r.boolean(),
109
+ showRecentReviewsOnStorefront: r.boolean()
110
+ }), A = r.object({
111
+ reviews: k.optional(),
112
+ insurance: r.object({ enabled: r.boolean() }).optional()
113
+ }), j = r.object({
114
+ storeSlug: r.string().min(1),
115
+ workspace: w.optional(),
116
+ shop: C,
117
+ settings: S,
118
+ bookingEngine: h,
119
+ content: O.optional(),
120
+ information: u.optional(),
121
+ modules: A.optional()
121
122
  });
122
123
  //#endregion
123
- export { v as STOREFRONT_HERO_MODES, g as storefrontCheckoutModeSchema, A as storefrontConfigurationSchema, D as storefrontContentSchema, w as storefrontFaqItemSchema, E as storefrontFaqSchema, _ as storefrontFulfillmentModeSchema, y as storefrontHeroModeSchema, l as storefrontInformationSchema, c as storefrontLocalizedRichTextSchema, T as storefrontModalMessageSchema, k as storefrontModulesSchema, O as storefrontReviewsModuleSchema, s as storefrontRichTextSchema, x as storefrontSettingsSchema, S as storefrontShopSchema, h as storefrontStatusSchema, C as storefrontWorkspaceSchema };
124
+ export { y as STOREFRONT_HERO_MODES, _ as storefrontCheckoutModeSchema, j as storefrontConfigurationSchema, O as storefrontContentSchema, T as storefrontFaqItemSchema, D as storefrontFaqSchema, v as storefrontFulfillmentModeSchema, b as storefrontHeroModeSchema, u as storefrontInformationSchema, l as storefrontLocalizedRichTextSchema, E as storefrontModalMessageSchema, A as storefrontModulesSchema, k as storefrontReviewsModuleSchema, c as storefrontRichTextSchema, S as storefrontSettingsSchema, C as storefrontShopSchema, g as storefrontStatusSchema, w as storefrontWorkspaceSchema };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@loczer/storefront-sdk",
3
- "version": "0.220.0",
3
+ "version": "0.222.0",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org/"
@@ -1,24 +0,0 @@
1
- import { CheckoutSelectedPaymentMethod } from '../types';
2
- type CheckoutPaymentSummaryCardProps = {
3
- estimatedTotalLabel: string;
4
- couponCode?: string;
5
- discountAmountLabel?: string | null;
6
- totalExcludingTaxLabel: string;
7
- vatAmountLabel: string;
8
- vatRateLabel: string;
9
- insuranceAmountLabel?: string;
10
- depositAmountLabel: string | null;
11
- amountToCollectMinor: number;
12
- amountToCollectLabel: string;
13
- paymentSummaryHelper: string | null;
14
- paymentDecisionLoading: boolean;
15
- paymentDecisionError: string | null;
16
- canChoosePaymentMethod: boolean;
17
- showAmountDueNowRow: boolean;
18
- selectedPaymentMethod: CheckoutSelectedPaymentMethod;
19
- submitting: boolean;
20
- onSelectPaymentMethod: (method: CheckoutSelectedPaymentMethod) => void;
21
- };
22
- export declare function CheckoutPaymentSummaryCard({ estimatedTotalLabel, couponCode, discountAmountLabel, totalExcludingTaxLabel, vatAmountLabel, vatRateLabel, insuranceAmountLabel, depositAmountLabel, amountToCollectMinor, amountToCollectLabel, paymentSummaryHelper, paymentDecisionLoading, paymentDecisionError, canChoosePaymentMethod, showAmountDueNowRow, selectedPaymentMethod, submitting, onSelectPaymentMethod, }: CheckoutPaymentSummaryCardProps): import("react/jsx-runtime").JSX.Element;
23
- export {};
24
- //# sourceMappingURL=CheckoutPaymentSummaryCard.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"CheckoutPaymentSummaryCard.d.ts","sourceRoot":"","sources":["../../../../src/pages/checkout/components/CheckoutPaymentSummaryCard.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,UAAU,CAAA;AAK7D,KAAK,+BAA+B,GAAG;IACrC,mBAAmB,EAAE,MAAM,CAAA;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,sBAAsB,EAAE,MAAM,CAAA;IAC9B,cAAc,EAAE,MAAM,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAA;IACjC,oBAAoB,EAAE,MAAM,CAAA;IAC5B,oBAAoB,EAAE,MAAM,CAAA;IAC5B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,sBAAsB,EAAE,OAAO,CAAA;IAC/B,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAA;IACnC,sBAAsB,EAAE,OAAO,CAAA;IAC/B,mBAAmB,EAAE,OAAO,CAAA;IAC5B,qBAAqB,EAAE,6BAA6B,CAAA;IACpD,UAAU,EAAE,OAAO,CAAA;IACnB,qBAAqB,EAAE,CAAC,MAAM,EAAE,6BAA6B,KAAK,IAAI,CAAA;CACvE,CAAA;AAED,wBAAgB,0BAA0B,CAAC,EACzC,mBAAmB,EACnB,UAAU,EACV,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,EACd,YAAY,EACZ,oBAAoB,EACpB,kBAAkB,EAClB,oBAAoB,EACpB,oBAAoB,EACpB,oBAAoB,EACpB,sBAAsB,EACtB,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,qBAAqB,EACrB,UAAU,EACV,qBAAqB,GACtB,EAAE,+BAA+B,2CA8IjC"}
@@ -1,158 +0,0 @@
1
- import { Button as e } from "../../../ui/button.js";
2
- import { Card as t } from "../../../ui/card.js";
3
- import { Spinner as n } from "../../../chunks/pkg/ui/dist/Spinner/index-Cgi70z_E.js";
4
- import { jsx as r, jsxs as i } from "react/jsx-runtime";
5
- import { useTranslation as a } from "react-i18next";
6
- import { AlertTriangle as o } from "lucide-react";
7
- //#region src/pages/checkout/components/CheckoutPaymentSummaryCard.tsx
8
- function s({ estimatedTotalLabel: s, couponCode: c, discountAmountLabel: l, totalExcludingTaxLabel: u, vatAmountLabel: d, vatRateLabel: f, insuranceAmountLabel: p, depositAmountLabel: m, amountToCollectMinor: h, amountToCollectLabel: g, paymentSummaryHelper: _, paymentDecisionLoading: v, paymentDecisionError: y, canChoosePaymentMethod: b, showAmountDueNowRow: x, selectedPaymentMethod: S, submitting: C, onSelectPaymentMethod: w }) {
9
- let { t: T } = a(), E = [
10
- {
11
- id: "card",
12
- label: T("checkout_payment_method_card")
13
- },
14
- {
15
- id: "apple_pay",
16
- label: T("checkout_payment_method_apple_pay")
17
- },
18
- {
19
- id: "other",
20
- label: T("checkout_payment_method_other")
21
- }
22
- ];
23
- return /* @__PURE__ */ i(t, {
24
- className: "border-slate-200 bg-white shadow-sm",
25
- children: [/* @__PURE__ */ i("div", {
26
- className: "border-b border-slate-200 px-4 py-4",
27
- children: [/* @__PURE__ */ r("p", {
28
- className: "text-sm font-semibold text-slate-950",
29
- children: /* @__PURE__ */ r("span", { children: T("checkout_payment_totals_title") })
30
- }), b ? /* @__PURE__ */ r("p", {
31
- className: "mt-1 text-xs text-slate-600",
32
- children: /* @__PURE__ */ r("span", { children: T("checkout_payment_totals_description") })
33
- }) : null]
34
- }), /* @__PURE__ */ i("div", {
35
- className: "grid gap-4 px-4 py-4",
36
- children: [
37
- /* @__PURE__ */ i("dl", {
38
- className: "grid text-sm",
39
- children: [
40
- /* @__PURE__ */ i("div", {
41
- className: "grid grid-cols-[minmax(0,1fr)_auto] items-center gap-x-4 py-2",
42
- children: [/* @__PURE__ */ r("dt", {
43
- className: "text-slate-700",
44
- children: /* @__PURE__ */ r("span", { children: T("checkout_estimated_total") })
45
- }), /* @__PURE__ */ r("dd", {
46
- className: "font-semibold tabular-nums text-slate-900",
47
- children: /* @__PURE__ */ r("span", { children: s })
48
- })]
49
- }),
50
- l ? /* @__PURE__ */ i("div", {
51
- className: "grid grid-cols-[minmax(0,1fr)_auto] items-center gap-x-4 border-t border-slate-100 py-2.5",
52
- children: [/* @__PURE__ */ r("dt", {
53
- className: "text-success",
54
- children: /* @__PURE__ */ r("span", { children: T("checkout_coupon_discount", { code: c ?? "" }) })
55
- }), /* @__PURE__ */ r("dd", {
56
- className: "font-medium tabular-nums text-success",
57
- children: /* @__PURE__ */ r("span", { children: l })
58
- })]
59
- }) : null,
60
- p ? /* @__PURE__ */ i("div", {
61
- className: "grid grid-cols-[minmax(0,1fr)_auto] items-center gap-x-4 border-t border-slate-100 py-2.5",
62
- children: [
63
- /* @__PURE__ */ r("dt", {
64
- className: "text-slate-600",
65
- children: /* @__PURE__ */ r("span", { children: T("checkout_insurance_exempt_line") })
66
- }),
67
- /* @__PURE__ */ r("dd", {
68
- className: "font-medium tabular-nums text-slate-700",
69
- children: /* @__PURE__ */ r("span", { children: p })
70
- }),
71
- /* @__PURE__ */ r("dd", {
72
- className: "col-span-2 mt-1 text-[11px] text-slate-500",
73
- children: /* @__PURE__ */ r("span", { children: T("checkout_insurance_tax_notice") })
74
- })
75
- ]
76
- }) : null,
77
- /* @__PURE__ */ i("div", {
78
- className: "grid grid-cols-[minmax(0,1fr)_auto] items-center gap-x-4 border-t border-slate-100 py-2.5",
79
- children: [/* @__PURE__ */ r("dt", {
80
- className: "text-slate-600",
81
- children: /* @__PURE__ */ r("span", { children: T("checkout_payment_total_excluding_tax") })
82
- }), /* @__PURE__ */ r("dd", {
83
- className: "font-medium tabular-nums text-slate-700",
84
- children: /* @__PURE__ */ r("span", { children: u })
85
- })]
86
- }),
87
- /* @__PURE__ */ i("div", {
88
- className: "grid grid-cols-[minmax(0,1fr)_auto] items-center gap-x-4 border-t border-slate-100 py-2.5",
89
- children: [/* @__PURE__ */ r("dt", {
90
- className: "text-slate-600",
91
- children: /* @__PURE__ */ r("span", { children: T("checkout_payment_vat", { rate: f }) })
92
- }), /* @__PURE__ */ r("dd", {
93
- className: "font-medium tabular-nums text-slate-700",
94
- children: /* @__PURE__ */ r("span", { children: d })
95
- })]
96
- }),
97
- m ? /* @__PURE__ */ i("div", {
98
- className: "grid grid-cols-[minmax(0,1fr)_auto] items-center gap-x-4 border-t border-slate-100 py-2.5",
99
- children: [/* @__PURE__ */ r("dt", {
100
- className: "text-slate-700",
101
- children: /* @__PURE__ */ r("span", { children: T("checkout_payment_deposit_amount") })
102
- }), /* @__PURE__ */ r("dd", {
103
- className: "font-medium tabular-nums text-slate-900",
104
- children: /* @__PURE__ */ r("span", { children: m })
105
- })]
106
- }) : null,
107
- x ? /* @__PURE__ */ i("div", {
108
- className: "mt-1 grid grid-cols-[minmax(0,1fr)_auto] items-center gap-x-4 border-t border-slate-200 pt-3",
109
- children: [/* @__PURE__ */ r("dt", {
110
- className: "text-sm font-semibold text-slate-900",
111
- children: /* @__PURE__ */ r("span", { children: T("checkout_payment_amount_due_now") })
112
- }), /* @__PURE__ */ r("dd", {
113
- className: `text-base font-bold tabular-nums tracking-tight ${h > 0 ? "text-slate-950" : "text-slate-800"}`,
114
- children: /* @__PURE__ */ r("span", { children: g })
115
- })]
116
- }) : null
117
- ]
118
- }),
119
- _ ? /* @__PURE__ */ r("p", {
120
- className: "text-xs text-slate-600",
121
- children: /* @__PURE__ */ r("span", { children: _ })
122
- }) : null,
123
- v ? /* @__PURE__ */ i("div", {
124
- className: "flex items-center gap-2 text-sm text-slate-600",
125
- children: [/* @__PURE__ */ r(n, {
126
- className: "size-4",
127
- "aria-hidden": "true"
128
- }), /* @__PURE__ */ r("span", { children: T("checkout_payment_loading") })]
129
- }) : null,
130
- y ? /* @__PURE__ */ r("div", {
131
- className: "grid gap-3 rounded-md bg-destructive p-3 text-destructive-foreground shadow-sm",
132
- children: /* @__PURE__ */ i("div", {
133
- className: "flex items-start gap-2 text-sm",
134
- children: [/* @__PURE__ */ r(o, {
135
- className: "mt-0.5 h-4 w-4",
136
- "aria-hidden": "true"
137
- }), /* @__PURE__ */ r("span", { children: y })]
138
- })
139
- }) : null,
140
- !v && !y && b ? /* @__PURE__ */ r("div", {
141
- className: "grid gap-2 sm:grid-cols-3",
142
- children: E.map((t) => /* @__PURE__ */ r(e, {
143
- type: "button",
144
- variant: S === t.id ? "default" : "outline",
145
- disabled: C,
146
- className: "h-9 px-4 text-xs",
147
- onClick: () => {
148
- w(t.id);
149
- },
150
- children: /* @__PURE__ */ r("span", { children: t.label })
151
- }, t.id))
152
- }) : null
153
- ]
154
- })]
155
- });
156
- }
157
- //#endregion
158
- export { s as CheckoutPaymentSummaryCard };