@alfadocs/ui-kit 0.30.0 → 0.30.2

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 (52) hide show
  1. package/dist/_chunks/{booking-BYuc_8HV.js → booking-CBaSujVP.js} +803 -729
  2. package/dist/_chunks/{patient-search-BhlxYAI3.js → patient-search-ZpHN-pgJ.js} +566 -510
  3. package/dist/_chunks/{public-footer.agent-CA29gxHJ.js → public-footer.agent-DivkKdG4.js} +188 -167
  4. package/dist/_chunks/{reviews-panel-CFttsfuC.js → reviews-panel-D-zjPKFL.js} +198 -178
  5. package/dist/agent-catalog.json +1 -1
  6. package/dist/components/booking/booking-types.d.ts +38 -0
  7. package/dist/components/booking/details-form.d.ts +7 -0
  8. package/dist/components/booking/index.js +1 -1
  9. package/dist/components/patient-search/index.js +1 -1
  10. package/dist/components/patient-search/patient-search.d.ts +9 -0
  11. package/dist/components/public-footer/index.js +1 -1
  12. package/dist/components/public-footer/public-footer.d.ts +7 -0
  13. package/dist/components/reviews-panel/index.js +1 -1
  14. package/dist/components/reviews-panel/reviews-panel.d.ts +8 -0
  15. package/dist/i18n/config.js +146 -20
  16. package/dist/i18n/locales/ar.d.ts +7 -0
  17. package/dist/i18n/locales/de.d.ts +7 -0
  18. package/dist/i18n/locales/el.d.ts +7 -0
  19. package/dist/i18n/locales/es.d.ts +7 -0
  20. package/dist/i18n/locales/fr.d.ts +7 -0
  21. package/dist/i18n/locales/hi.d.ts +7 -0
  22. package/dist/i18n/locales/ja.d.ts +7 -0
  23. package/dist/i18n/locales/nl.d.ts +7 -0
  24. package/dist/i18n/locales/pl.d.ts +7 -0
  25. package/dist/i18n/locales/pt.d.ts +7 -0
  26. package/dist/i18n/locales/ro.d.ts +7 -0
  27. package/dist/i18n/locales/ru.d.ts +7 -0
  28. package/dist/i18n/locales/sq.d.ts +7 -0
  29. package/dist/i18n/locales/sv.d.ts +7 -0
  30. package/dist/i18n/locales/tr.d.ts +7 -0
  31. package/dist/i18n/locales/zh.d.ts +7 -0
  32. package/dist/i18n/resources.d.ts +14 -0
  33. package/dist/index.js +4 -4
  34. package/dist/locales/ar.json +8 -1
  35. package/dist/locales/de.json +8 -1
  36. package/dist/locales/el.json +8 -1
  37. package/dist/locales/en.json +8 -1
  38. package/dist/locales/es.json +8 -1
  39. package/dist/locales/fr.json +8 -1
  40. package/dist/locales/hi.json +8 -1
  41. package/dist/locales/it.json +8 -1
  42. package/dist/locales/ja.json +8 -1
  43. package/dist/locales/nl.json +8 -1
  44. package/dist/locales/pl.json +8 -1
  45. package/dist/locales/pt.json +8 -1
  46. package/dist/locales/ro.json +8 -1
  47. package/dist/locales/ru.json +8 -1
  48. package/dist/locales/sq.json +8 -1
  49. package/dist/locales/sv.json +8 -1
  50. package/dist/locales/tr.json +8 -1
  51. package/dist/locales/zh.json +8 -1
  52. package/package.json +5 -1
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
- "packageVersion": "0.30.0",
3
+ "packageVersion": "0.30.2",
4
4
  "components": [
5
5
  {
6
6
  "kind": "component",
@@ -137,6 +137,44 @@ export interface BookingProps extends Omit<ComponentPropsWithoutRef<'div'>, 'ari
137
137
  onSubmit: (payload: BookingSubmitPayload) => void | Promise<void>;
138
138
  loadingSlots?: boolean;
139
139
  submitting?: boolean;
140
+ /**
141
+ * @default 'flat'
142
+ * `'elevated'` wraps the kit-rendered surface in the equivalent of
143
+ * `Card variant="elevated"` (same tokens, same padding). Use to drop
144
+ * the consumer-side Card wrap.
145
+ */
146
+ surface?: 'flat' | 'elevated';
147
+ /**
148
+ * Fires whenever the displayed step changes — steps 1..7 from the
149
+ * cascade engine + step `8` when the success view mounts. Useful for
150
+ * analytics events that aren't already kit-internal, custom focus
151
+ * management, or page-title updates. The kit also auto-scrolls the
152
+ * success container into view on the 1..7 → 8 transition; consumers
153
+ * don't need to do that themselves.
154
+ */
155
+ onStepChange?: (step: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8) => void;
156
+ /**
157
+ * Surface a submit-failure message inside the form (Alert variant=destructive
158
+ * above the submit button). The consumer owns the state — set it after an
159
+ * `onSubmit` rejection, clear it when retrying or on a field edit. When set,
160
+ * the kit's normal "form stays mounted on rejected promise" behaviour is
161
+ * unchanged; this just gives the failure a sanctioned slot to render.
162
+ */
163
+ submitError?: ReactNode;
164
+ /**
165
+ * @default 'live'
166
+ * In `'demo'` mode the kit's step-8 success view swaps its description to
167
+ * a localised "This was a demo — no confirmation was sent." so the copy
168
+ * stays honest when no real API call was made.
169
+ */
170
+ mode?: 'live' | 'demo';
171
+ /**
172
+ * @default true
173
+ * Render a "Modify booking" button on the step-8 success view that returns
174
+ * to step 7 without clearing `value`/`details`. Practices that want a
175
+ * one-shot booking flow can hide this.
176
+ */
177
+ showModifyOnSuccess?: boolean;
140
178
  emptyServicesSlot?: ReactNode;
141
179
  onboardingIncompleteSlot?: ReactNode;
142
180
  'aria-label'?: string;
@@ -27,6 +27,13 @@ export interface BookingDetailsFormProps {
27
27
  confirmationChannels?: ConfirmationChannel[];
28
28
  /** Pre-checked channels override; falls back to a smart default. */
29
29
  defaultConfirmationChannels?: ConfirmationChannel[];
30
+ /**
31
+ * Render an error Alert above the submit button. Set after an
32
+ * `onSubmit` rejection, clear before retrying. The kit doesn't
33
+ * disable the submit button while this is set — the patient can
34
+ * re-submit immediately.
35
+ */
36
+ submitError?: ReactNode;
30
37
  }
31
38
  export declare const BookingDetailsForm: import("react").ForwardRefExoticComponent<BookingDetailsFormProps & import("react").RefAttributes<HTMLFormElement>>;
32
39
  //# sourceMappingURL=details-form.d.ts.map
@@ -1,4 +1,4 @@
1
- import { B as A, C as R, O as a, b as s } from "../../_chunks/booking-BYuc_8HV.js";
1
+ import { B as A, C as R, O as a, b as s } from "../../_chunks/booking-CBaSujVP.js";
2
2
  export {
3
3
  A as Booking,
4
4
  R as CONFIRMATION_CHANNEL_ORDER,
@@ -1,4 +1,4 @@
1
- import { P as t, p as r } from "../../_chunks/patient-search-BhlxYAI3.js";
1
+ import { P as t, p as r } from "../../_chunks/patient-search-ZpHN-pgJ.js";
2
2
  export {
3
3
  t as PatientSearch,
4
4
  r as patientSearchAgent
@@ -94,6 +94,15 @@ export interface PatientSearchProps extends Omit<ComponentPropsWithoutRef<'div'>
94
94
  submitting?: boolean;
95
95
  /** Custom CTA label override; defaults to `ui.patientSearch.submit.cta`. */
96
96
  submitLabel?: string;
97
+ /**
98
+ * @default false
99
+ * By default the kit disables the submit button until at least one
100
+ * search dimension is set (object, place, geo, non-anytime when, or
101
+ * a facet). Set to `true` to allow an empty submit — useful for
102
+ * "browse all" patterns where the consumer wants to show all results
103
+ * with no initial filter.
104
+ */
105
+ allowEmptySubmit?: boolean;
97
106
  'aria-label'?: string;
98
107
  /** Agent-readiness instance id. */
99
108
  id?: string;
@@ -1,4 +1,4 @@
1
- import { D as s, a as A, P as L, S as e, c as S, p as _ } from "../../_chunks/public-footer.agent-CA29gxHJ.js";
1
+ import { D as s, a as A, P as L, S as e, c as S, p as _ } from "../../_chunks/public-footer.agent-DivkKdG4.js";
2
2
  export {
3
3
  s as DEFAULT_MARKETING_BASE_URL,
4
4
  A as DEFAULT_SOCIAL_URLS,
@@ -38,6 +38,13 @@ export interface PublicFooterProps {
38
38
  extraNavSlot?: ReactNode;
39
39
  /** Trust badges (HIPAA, ISO). Rendered at the start of `minimal`'s row, or in the bottom strip of `full`. */
40
40
  trustBadgesSlot?: ReactNode;
41
+ /**
42
+ * @default true
43
+ * Render the brand tagline ("German technology, Italian design") in the
44
+ * bottom microcopy row of `compact` and `full` variants. Lean surfaces
45
+ * (e.g. embedded booking widget) can opt out.
46
+ */
47
+ showTagline?: boolean;
41
48
  'aria-label'?: string;
42
49
  id?: string;
43
50
  }
@@ -1,4 +1,4 @@
1
- import { R as r, r as s } from "../../_chunks/reviews-panel-CFttsfuC.js";
1
+ import { R as r, r as s } from "../../_chunks/reviews-panel-D-zjPKFL.js";
2
2
  export {
3
3
  r as ReviewsPanel,
4
4
  s as reviewsPanelAgent
@@ -69,6 +69,14 @@ export interface ReviewsPanelProps extends Omit<ComponentPropsWithoutRef<'sectio
69
69
  * width or inside a narrow column. Defaults to false.
70
70
  */
71
71
  hideFilter?: boolean;
72
+ /**
73
+ * @default 'flat'
74
+ * `'elevated'` wraps the panel in the equivalent of `Card variant="elevated"`
75
+ * — same tokens (`--card`, `--card-border`, `--shadow-card`,
76
+ * `--radius-lg`), same padding. Use to drop the consumer-side
77
+ * `<Card><Card.Body>` wrap.
78
+ */
79
+ surface?: 'flat' | 'elevated';
72
80
  /** Render skeletons for the header and the list. */
73
81
  loading?: boolean;
74
82
  }
@@ -1,5 +1,5 @@
1
1
  import a from "i18next";
2
- import { default as T } from "i18next";
2
+ import { default as j } from "i18next";
3
3
  import { initReactI18next as _ } from "react-i18next";
4
4
  const t = {
5
5
  common: {
@@ -996,10 +996,17 @@ const t = {
996
996
  heading: "Booking submitted",
997
997
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
998
998
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
999
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
999
1000
  summaryDate: "Date",
1000
1001
  summaryTime: "Time",
1001
1002
  summaryProvider: "Provider",
1002
- bookAnother: "Book another appointment"
1003
+ summaryService: "Service",
1004
+ summarySpecialty: "Specialty",
1005
+ bookAnother: "Book another appointment",
1006
+ modifyBooking: "Modify booking"
1007
+ },
1008
+ submitError: {
1009
+ generic: "We couldn't submit your booking. Please try again."
1003
1010
  },
1004
1011
  details: {
1005
1012
  heading: "بياناتك",
@@ -2484,10 +2491,17 @@ const t = {
2484
2491
  heading: "Booking submitted",
2485
2492
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
2486
2493
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
2494
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
2487
2495
  summaryDate: "Date",
2488
2496
  summaryTime: "Time",
2489
2497
  summaryProvider: "Provider",
2490
- bookAnother: "Book another appointment"
2498
+ summaryService: "Service",
2499
+ summarySpecialty: "Specialty",
2500
+ bookAnother: "Book another appointment",
2501
+ modifyBooking: "Modify booking"
2502
+ },
2503
+ submitError: {
2504
+ generic: "We couldn't submit your booking. Please try again."
2491
2505
  },
2492
2506
  details: {
2493
2507
  heading: "Ihre Daten",
@@ -3972,10 +3986,17 @@ const t = {
3972
3986
  heading: "Booking submitted",
3973
3987
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
3974
3988
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
3989
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
3975
3990
  summaryDate: "Date",
3976
3991
  summaryTime: "Time",
3977
3992
  summaryProvider: "Provider",
3978
- bookAnother: "Book another appointment"
3993
+ summaryService: "Service",
3994
+ summarySpecialty: "Specialty",
3995
+ bookAnother: "Book another appointment",
3996
+ modifyBooking: "Modify booking"
3997
+ },
3998
+ submitError: {
3999
+ generic: "We couldn't submit your booking. Please try again."
3979
4000
  },
3980
4001
  details: {
3981
4002
  heading: "Τα στοιχεία σας",
@@ -5460,10 +5481,17 @@ const t = {
5460
5481
  heading: "Booking submitted",
5461
5482
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
5462
5483
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
5484
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
5463
5485
  summaryDate: "Date",
5464
5486
  summaryTime: "Time",
5465
5487
  summaryProvider: "Provider",
5466
- bookAnother: "Book another appointment"
5488
+ summaryService: "Service",
5489
+ summarySpecialty: "Specialty",
5490
+ bookAnother: "Book another appointment",
5491
+ modifyBooking: "Modify booking"
5492
+ },
5493
+ submitError: {
5494
+ generic: "We couldn't submit your booking. Please try again."
5467
5495
  },
5468
5496
  details: {
5469
5497
  heading: "Tus datos",
@@ -6946,10 +6974,17 @@ const t = {
6946
6974
  heading: "Booking submitted",
6947
6975
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
6948
6976
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
6977
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
6949
6978
  summaryDate: "Date",
6950
6979
  summaryTime: "Time",
6951
6980
  summaryProvider: "Provider",
6952
- bookAnother: "Book another appointment"
6981
+ summaryService: "Service",
6982
+ summarySpecialty: "Specialty",
6983
+ bookAnother: "Book another appointment",
6984
+ modifyBooking: "Modify booking"
6985
+ },
6986
+ submitError: {
6987
+ generic: "We couldn't submit your booking. Please try again."
6953
6988
  },
6954
6989
  details: {
6955
6990
  heading: "Vos coordonnées",
@@ -8432,10 +8467,17 @@ const t = {
8432
8467
  heading: "Booking submitted",
8433
8468
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
8434
8469
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
8470
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
8435
8471
  summaryDate: "Date",
8436
8472
  summaryTime: "Time",
8437
8473
  summaryProvider: "Provider",
8438
- bookAnother: "Book another appointment"
8474
+ summaryService: "Service",
8475
+ summarySpecialty: "Specialty",
8476
+ bookAnother: "Book another appointment",
8477
+ modifyBooking: "Modify booking"
8478
+ },
8479
+ submitError: {
8480
+ generic: "We couldn't submit your booking. Please try again."
8439
8481
  },
8440
8482
  details: {
8441
8483
  heading: "आपकी जानकारी",
@@ -9918,10 +9960,17 @@ const t = {
9918
9960
  heading: "Booking submitted",
9919
9961
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
9920
9962
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
9963
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
9921
9964
  summaryDate: "Date",
9922
9965
  summaryTime: "Time",
9923
9966
  summaryProvider: "Provider",
9924
- bookAnother: "Book another appointment"
9967
+ summaryService: "Service",
9968
+ summarySpecialty: "Specialty",
9969
+ bookAnother: "Book another appointment",
9970
+ modifyBooking: "Modify booking"
9971
+ },
9972
+ submitError: {
9973
+ generic: "We couldn't submit your booking. Please try again."
9925
9974
  },
9926
9975
  details: {
9927
9976
  heading: "お客様情報",
@@ -11406,10 +11455,17 @@ const t = {
11406
11455
  heading: "Booking submitted",
11407
11456
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
11408
11457
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
11458
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
11409
11459
  summaryDate: "Date",
11410
11460
  summaryTime: "Time",
11411
11461
  summaryProvider: "Provider",
11412
- bookAnother: "Book another appointment"
11462
+ summaryService: "Service",
11463
+ summarySpecialty: "Specialty",
11464
+ bookAnother: "Book another appointment",
11465
+ modifyBooking: "Modify booking"
11466
+ },
11467
+ submitError: {
11468
+ generic: "We couldn't submit your booking. Please try again."
11413
11469
  },
11414
11470
  details: {
11415
11471
  heading: "Uw gegevens",
@@ -12892,10 +12948,17 @@ const t = {
12892
12948
  heading: "Booking submitted",
12893
12949
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
12894
12950
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
12951
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
12895
12952
  summaryDate: "Date",
12896
12953
  summaryTime: "Time",
12897
12954
  summaryProvider: "Provider",
12898
- bookAnother: "Book another appointment"
12955
+ summaryService: "Service",
12956
+ summarySpecialty: "Specialty",
12957
+ bookAnother: "Book another appointment",
12958
+ modifyBooking: "Modify booking"
12959
+ },
12960
+ submitError: {
12961
+ generic: "We couldn't submit your booking. Please try again."
12899
12962
  },
12900
12963
  details: {
12901
12964
  heading: "Twoje dane",
@@ -14378,10 +14441,17 @@ const t = {
14378
14441
  heading: "Booking submitted",
14379
14442
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
14380
14443
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
14444
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
14381
14445
  summaryDate: "Date",
14382
14446
  summaryTime: "Time",
14383
14447
  summaryProvider: "Provider",
14384
- bookAnother: "Book another appointment"
14448
+ summaryService: "Service",
14449
+ summarySpecialty: "Specialty",
14450
+ bookAnother: "Book another appointment",
14451
+ modifyBooking: "Modify booking"
14452
+ },
14453
+ submitError: {
14454
+ generic: "We couldn't submit your booking. Please try again."
14385
14455
  },
14386
14456
  details: {
14387
14457
  heading: "Os seus dados",
@@ -15864,10 +15934,17 @@ const t = {
15864
15934
  heading: "Booking submitted",
15865
15935
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
15866
15936
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
15937
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
15867
15938
  summaryDate: "Date",
15868
15939
  summaryTime: "Time",
15869
15940
  summaryProvider: "Provider",
15870
- bookAnother: "Book another appointment"
15941
+ summaryService: "Service",
15942
+ summarySpecialty: "Specialty",
15943
+ bookAnother: "Book another appointment",
15944
+ modifyBooking: "Modify booking"
15945
+ },
15946
+ submitError: {
15947
+ generic: "We couldn't submit your booking. Please try again."
15871
15948
  },
15872
15949
  details: {
15873
15950
  heading: "Datele tale",
@@ -17350,10 +17427,17 @@ const t = {
17350
17427
  heading: "Booking submitted",
17351
17428
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
17352
17429
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
17430
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
17353
17431
  summaryDate: "Date",
17354
17432
  summaryTime: "Time",
17355
17433
  summaryProvider: "Provider",
17356
- bookAnother: "Book another appointment"
17434
+ summaryService: "Service",
17435
+ summarySpecialty: "Specialty",
17436
+ bookAnother: "Book another appointment",
17437
+ modifyBooking: "Modify booking"
17438
+ },
17439
+ submitError: {
17440
+ generic: "We couldn't submit your booking. Please try again."
17357
17441
  },
17358
17442
  details: {
17359
17443
  heading: "Ваши данные",
@@ -18838,10 +18922,17 @@ const t = {
18838
18922
  heading: "Booking submitted",
18839
18923
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
18840
18924
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
18925
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
18841
18926
  summaryDate: "Date",
18842
18927
  summaryTime: "Time",
18843
18928
  summaryProvider: "Provider",
18844
- bookAnother: "Book another appointment"
18929
+ summaryService: "Service",
18930
+ summarySpecialty: "Specialty",
18931
+ bookAnother: "Book another appointment",
18932
+ modifyBooking: "Modify booking"
18933
+ },
18934
+ submitError: {
18935
+ generic: "We couldn't submit your booking. Please try again."
18845
18936
  },
18846
18937
  details: {
18847
18938
  heading: "Të dhënat e tua",
@@ -20324,10 +20415,17 @@ const t = {
20324
20415
  heading: "Booking submitted",
20325
20416
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
20326
20417
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
20418
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
20327
20419
  summaryDate: "Date",
20328
20420
  summaryTime: "Time",
20329
20421
  summaryProvider: "Provider",
20330
- bookAnother: "Book another appointment"
20422
+ summaryService: "Service",
20423
+ summarySpecialty: "Specialty",
20424
+ bookAnother: "Book another appointment",
20425
+ modifyBooking: "Modify booking"
20426
+ },
20427
+ submitError: {
20428
+ generic: "We couldn't submit your booking. Please try again."
20331
20429
  },
20332
20430
  details: {
20333
20431
  heading: "Dina uppgifter",
@@ -21810,10 +21908,17 @@ const t = {
21810
21908
  heading: "Booking submitted",
21811
21909
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
21812
21910
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
21911
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
21813
21912
  summaryDate: "Date",
21814
21913
  summaryTime: "Time",
21815
21914
  summaryProvider: "Provider",
21816
- bookAnother: "Book another appointment"
21915
+ summaryService: "Service",
21916
+ summarySpecialty: "Specialty",
21917
+ bookAnother: "Book another appointment",
21918
+ modifyBooking: "Modify booking"
21919
+ },
21920
+ submitError: {
21921
+ generic: "We couldn't submit your booking. Please try again."
21817
21922
  },
21818
21923
  details: {
21819
21924
  heading: "Bilgileriniz",
@@ -23296,10 +23401,17 @@ const t = {
23296
23401
  heading: "Booking submitted",
23297
23402
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
23298
23403
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
23404
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
23299
23405
  summaryDate: "Date",
23300
23406
  summaryTime: "Time",
23301
23407
  summaryProvider: "Provider",
23302
- bookAnother: "Book another appointment"
23408
+ summaryService: "Service",
23409
+ summarySpecialty: "Specialty",
23410
+ bookAnother: "Book another appointment",
23411
+ modifyBooking: "Modify booking"
23412
+ },
23413
+ submitError: {
23414
+ generic: "We couldn't submit your booking. Please try again."
23303
23415
  },
23304
23416
  details: {
23305
23417
  heading: "您的信息",
@@ -24765,10 +24877,17 @@ const t = {
24765
24877
  heading: "Booking submitted",
24766
24878
  descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.",
24767
24879
  descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.",
24880
+ descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.",
24768
24881
  summaryDate: "Date",
24769
24882
  summaryTime: "Time",
24770
24883
  summaryProvider: "Provider",
24771
- bookAnother: "Book another appointment"
24884
+ summaryService: "Service",
24885
+ summarySpecialty: "Specialty",
24886
+ bookAnother: "Book another appointment",
24887
+ modifyBooking: "Modify booking"
24888
+ },
24889
+ submitError: {
24890
+ generic: "We couldn't submit your booking. Please try again."
24772
24891
  },
24773
24892
  details: {
24774
24893
  heading: "Your details",
@@ -26236,10 +26355,17 @@ const t = {
26236
26355
  heading: "Prenotazione inviata",
26237
26356
  descriptionSingle: "Ti abbiamo inviato un link di conferma via {{channel}}. Clicca il link per confermare la prenotazione.",
26238
26357
  descriptionMultiple: "Ti abbiamo inviato un link di conferma via {{channels}}. Clicca il link in uno qualsiasi di questi per confermare la prenotazione.",
26358
+ descriptionDemo: "Questa è una demo — non è stata inviata nessuna conferma. In produzione ti invieremmo un link via email per confermare.",
26239
26359
  summaryDate: "Data",
26240
26360
  summaryTime: "Orario",
26241
26361
  summaryProvider: "Professionista",
26242
- bookAnother: "Prenota un altro appuntamento"
26362
+ summaryService: "Prestazione",
26363
+ summarySpecialty: "Specialità",
26364
+ bookAnother: "Prenota un altro appuntamento",
26365
+ modifyBooking: "Modifica prenotazione"
26366
+ },
26367
+ submitError: {
26368
+ generic: "Non è stato possibile inviare la prenotazione. Riprova."
26243
26369
  },
26244
26370
  details: {
26245
26371
  heading: "I tuoi dati",
@@ -26826,7 +26952,7 @@ export {
26826
26952
  A as LOCALES_WITH_BUNDLES,
26827
26953
  t as arUi,
26828
26954
  n as deUi,
26829
- T as default,
26955
+ j as default,
26830
26956
  i as elUi,
26831
26957
  f as enUi,
26832
26958
  o as esUi,
@@ -1000,10 +1000,17 @@ export declare const arUi: {
1000
1000
  readonly heading: "Booking submitted";
1001
1001
  readonly descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.";
1002
1002
  readonly descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.";
1003
+ readonly descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.";
1003
1004
  readonly summaryDate: "Date";
1004
1005
  readonly summaryTime: "Time";
1005
1006
  readonly summaryProvider: "Provider";
1007
+ readonly summaryService: "Service";
1008
+ readonly summarySpecialty: "Specialty";
1006
1009
  readonly bookAnother: "Book another appointment";
1010
+ readonly modifyBooking: "Modify booking";
1011
+ };
1012
+ readonly submitError: {
1013
+ readonly generic: "We couldn't submit your booking. Please try again.";
1007
1014
  };
1008
1015
  readonly details: {
1009
1016
  readonly heading: "بياناتك";
@@ -1000,10 +1000,17 @@ export declare const deUi: {
1000
1000
  readonly heading: "Booking submitted";
1001
1001
  readonly descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.";
1002
1002
  readonly descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.";
1003
+ readonly descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.";
1003
1004
  readonly summaryDate: "Date";
1004
1005
  readonly summaryTime: "Time";
1005
1006
  readonly summaryProvider: "Provider";
1007
+ readonly summaryService: "Service";
1008
+ readonly summarySpecialty: "Specialty";
1006
1009
  readonly bookAnother: "Book another appointment";
1010
+ readonly modifyBooking: "Modify booking";
1011
+ };
1012
+ readonly submitError: {
1013
+ readonly generic: "We couldn't submit your booking. Please try again.";
1007
1014
  };
1008
1015
  readonly details: {
1009
1016
  readonly heading: "Ihre Daten";
@@ -997,10 +997,17 @@ export declare const elUi: {
997
997
  readonly heading: "Booking submitted";
998
998
  readonly descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.";
999
999
  readonly descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.";
1000
+ readonly descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.";
1000
1001
  readonly summaryDate: "Date";
1001
1002
  readonly summaryTime: "Time";
1002
1003
  readonly summaryProvider: "Provider";
1004
+ readonly summaryService: "Service";
1005
+ readonly summarySpecialty: "Specialty";
1003
1006
  readonly bookAnother: "Book another appointment";
1007
+ readonly modifyBooking: "Modify booking";
1008
+ };
1009
+ readonly submitError: {
1010
+ readonly generic: "We couldn't submit your booking. Please try again.";
1004
1011
  };
1005
1012
  readonly details: {
1006
1013
  readonly heading: "Τα στοιχεία σας";
@@ -997,10 +997,17 @@ export declare const esUi: {
997
997
  readonly heading: "Booking submitted";
998
998
  readonly descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.";
999
999
  readonly descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.";
1000
+ readonly descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.";
1000
1001
  readonly summaryDate: "Date";
1001
1002
  readonly summaryTime: "Time";
1002
1003
  readonly summaryProvider: "Provider";
1004
+ readonly summaryService: "Service";
1005
+ readonly summarySpecialty: "Specialty";
1003
1006
  readonly bookAnother: "Book another appointment";
1007
+ readonly modifyBooking: "Modify booking";
1008
+ };
1009
+ readonly submitError: {
1010
+ readonly generic: "We couldn't submit your booking. Please try again.";
1004
1011
  };
1005
1012
  readonly details: {
1006
1013
  readonly heading: "Tus datos";
@@ -997,10 +997,17 @@ export declare const frUi: {
997
997
  readonly heading: "Booking submitted";
998
998
  readonly descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.";
999
999
  readonly descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.";
1000
+ readonly descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.";
1000
1001
  readonly summaryDate: "Date";
1001
1002
  readonly summaryTime: "Time";
1002
1003
  readonly summaryProvider: "Provider";
1004
+ readonly summaryService: "Service";
1005
+ readonly summarySpecialty: "Specialty";
1003
1006
  readonly bookAnother: "Book another appointment";
1007
+ readonly modifyBooking: "Modify booking";
1008
+ };
1009
+ readonly submitError: {
1010
+ readonly generic: "We couldn't submit your booking. Please try again.";
1004
1011
  };
1005
1012
  readonly details: {
1006
1013
  readonly heading: "Vos coordonnées";
@@ -997,10 +997,17 @@ export declare const hiUi: {
997
997
  readonly heading: "Booking submitted";
998
998
  readonly descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.";
999
999
  readonly descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.";
1000
+ readonly descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.";
1000
1001
  readonly summaryDate: "Date";
1001
1002
  readonly summaryTime: "Time";
1002
1003
  readonly summaryProvider: "Provider";
1004
+ readonly summaryService: "Service";
1005
+ readonly summarySpecialty: "Specialty";
1003
1006
  readonly bookAnother: "Book another appointment";
1007
+ readonly modifyBooking: "Modify booking";
1008
+ };
1009
+ readonly submitError: {
1010
+ readonly generic: "We couldn't submit your booking. Please try again.";
1004
1011
  };
1005
1012
  readonly details: {
1006
1013
  readonly heading: "आपकी जानकारी";
@@ -997,10 +997,17 @@ export declare const jaUi: {
997
997
  readonly heading: "Booking submitted";
998
998
  readonly descriptionSingle: "We've sent a confirmation link via {{channel}}. Click the link to confirm your booking.";
999
999
  readonly descriptionMultiple: "We've sent a confirmation link via {{channels}}. Click the link in any of these to confirm your booking.";
1000
+ readonly descriptionDemo: "This was a demo — no confirmation was sent. In production we'd email you a link to confirm.";
1000
1001
  readonly summaryDate: "Date";
1001
1002
  readonly summaryTime: "Time";
1002
1003
  readonly summaryProvider: "Provider";
1004
+ readonly summaryService: "Service";
1005
+ readonly summarySpecialty: "Specialty";
1003
1006
  readonly bookAnother: "Book another appointment";
1007
+ readonly modifyBooking: "Modify booking";
1008
+ };
1009
+ readonly submitError: {
1010
+ readonly generic: "We couldn't submit your booking. Please try again.";
1004
1011
  };
1005
1012
  readonly details: {
1006
1013
  readonly heading: "お客様情報";