@motech-development/breeze-ui 4.1.1 → 4.3.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 (54) hide show
  1. package/lib/index.d.ts +31 -0
  2. package/lib/index.d.ts.map +1 -1
  3. package/lib/index.js +947 -85
  4. package/lib/index.js.map +1 -1
  5. package/lib/overlays/OverlayProvider.d.ts +9 -0
  6. package/lib/overlays/OverlayProvider.d.ts.map +1 -0
  7. package/lib/overlays/OverlayStack.d.ts +35 -0
  8. package/lib/overlays/OverlayStack.d.ts.map +1 -0
  9. package/lib/overlays/OverlaySurface.d.ts +10 -0
  10. package/lib/overlays/OverlaySurface.d.ts.map +1 -0
  11. package/lib/overlays/overlay.types.d.ts +25 -0
  12. package/lib/overlays/overlay.types.d.ts.map +1 -0
  13. package/lib/primitives/Badge/Badge.d.ts +39 -0
  14. package/lib/primitives/Badge/Badge.d.ts.map +1 -0
  15. package/lib/primitives/Button/Button.d.ts +24 -3
  16. package/lib/primitives/Button/Button.d.ts.map +1 -1
  17. package/lib/primitives/Card/Card.d.ts +54 -0
  18. package/lib/primitives/Card/Card.d.ts.map +1 -0
  19. package/lib/primitives/Container/Container.d.ts +42 -0
  20. package/lib/primitives/Container/Container.d.ts.map +1 -0
  21. package/lib/primitives/Dialog/Dialog.d.ts +8 -0
  22. package/lib/primitives/Dialog/Dialog.d.ts.map +1 -0
  23. package/lib/primitives/Drawer/Drawer.d.ts +8 -0
  24. package/lib/primitives/Drawer/Drawer.d.ts.map +1 -0
  25. package/lib/primitives/Grid/Grid.d.ts +29 -0
  26. package/lib/primitives/Grid/Grid.d.ts.map +1 -0
  27. package/lib/primitives/Icon/Icon.d.ts +61 -0
  28. package/lib/primitives/Icon/Icon.d.ts.map +1 -0
  29. package/lib/primitives/IconTile/IconTile.d.ts +48 -0
  30. package/lib/primitives/IconTile/IconTile.d.ts.map +1 -0
  31. package/lib/primitives/Inline/Inline.d.ts +65 -0
  32. package/lib/primitives/Inline/Inline.d.ts.map +1 -0
  33. package/lib/primitives/Popover/Popover.d.ts +11 -0
  34. package/lib/primitives/Popover/Popover.d.ts.map +1 -0
  35. package/lib/primitives/Separator/Separator.d.ts +25 -0
  36. package/lib/primitives/Separator/Separator.d.ts.map +1 -0
  37. package/lib/primitives/Skeleton/Skeleton.d.ts +32 -0
  38. package/lib/primitives/Skeleton/Skeleton.d.ts.map +1 -0
  39. package/lib/primitives/Stack/Stack.d.ts +25 -0
  40. package/lib/primitives/Stack/Stack.d.ts.map +1 -0
  41. package/lib/primitives/Typography/Typography.d.ts +149 -0
  42. package/lib/primitives/Typography/Typography.d.ts.map +1 -0
  43. package/lib/primitives/VisuallyHidden/VisuallyHidden.d.ts +12 -0
  44. package/lib/primitives/VisuallyHidden/VisuallyHidden.d.ts.map +1 -0
  45. package/lib/primitives/layout.accessibility.d.ts +7 -0
  46. package/lib/primitives/layout.accessibility.d.ts.map +1 -0
  47. package/lib/primitives/layout.types.d.ts +4 -0
  48. package/lib/primitives/layout.types.d.ts.map +1 -0
  49. package/lib/provider/BreezeProvider.d.ts +10 -2
  50. package/lib/provider/BreezeProvider.d.ts.map +1 -1
  51. package/lib/provider/en-GB.d.ts +1 -0
  52. package/lib/provider/en-GB.d.ts.map +1 -1
  53. package/lib/styles.css +1 -1
  54. package/package.json +3 -1
package/lib/index.js CHANGED
@@ -1,21 +1,27 @@
1
1
  import { ToggleButton as e } from "react-aria-components/ToggleButton";
2
2
  import { ToggleButtonGroup as t } from "react-aria-components/ToggleButtonGroup";
3
- import { createContext as n, createElement as r, useCallback as i, useContext as a, useEffect as o, useLayoutEffect as s, useMemo as c, useState as l } from "react";
4
- import { Fragment as u, jsx as d, jsxs as f } from "react/jsx-runtime";
5
- import { Button as p } from "react-aria-components/Button";
6
- import { ProgressBarContext as m } from "react-aria-components/ProgressBar";
7
- import { useSlottedContext as h } from "react-aria-components/slots";
8
- import { I18nProvider as g, useLocale as _ } from "react-aria-components/I18nProvider";
3
+ import { createContext as n, createElement as r, useCallback as i, useContext as a, useEffect as o, useId as s, useLayoutEffect as c, useMemo as l, useRef as u, useState as d, useSyncExternalStore as f } from "react";
4
+ import { Fragment as p, jsx as m, jsxs as h } from "react/jsx-runtime";
5
+ import { Button as g } from "react-aria-components/Button";
6
+ import { ProgressBarContext as _ } from "react-aria-components/ProgressBar";
7
+ import { useSlottedContext as v } from "react-aria-components/slots";
8
+ import { Dialog as y } from "react-aria-components/Dialog";
9
+ import { Modal as b, ModalOverlay as x } from "react-aria-components/Modal";
10
+ import { Popover as S } from "react-aria-components/Popover";
11
+ import { UNSAFE_PortalProvider as C } from "react-aria/PortalProvider";
12
+ import { I18nProvider as ee, useLocale as w } from "react-aria-components/I18nProvider";
13
+ import { ArrowDownLeft as T, ArrowUpRight as E, Bell as te, Building2 as ne, CalendarDays as re, Camera as ie, Check as D, ChevronDown as O, ChevronLeft as k, ChevronRight as A, Clock3 as ae, Download as j, Ellipsis as oe, FileText as se, House as M, List as N, LockKeyhole as P, LogOut as F, Plus as I, Settings as ce, Trash2 as le, TriangleAlert as L, Upload as R, Users as ue, X as z } from "lucide-react";
14
+ import { parseDate as B } from "@internationalized/date";
9
15
  //#region src/provider/BreezeContext.ts
10
- var v = n(null);
11
- function y() {
12
- let e = a(v);
16
+ var V = n(null);
17
+ function H() {
18
+ let e = a(V);
13
19
  if (e === null) throw Error("Breeze components must be rendered within BreezeProvider.");
14
20
  return e;
15
21
  }
16
22
  //#endregion
17
23
  //#region src/patterns/AppearanceControl/AppearanceControl.tsx
18
- var b = {
24
+ var U = {
19
25
  base: {
20
26
  control: "breeze:flex breeze:items-center breeze:gap-breeze-2 breeze:font-breeze-sans",
21
27
  group: "breeze:flex breeze:items-center breeze:gap-breeze-2",
@@ -26,7 +32,7 @@ var b = {
26
32
  size: {},
27
33
  state: { selected: "breeze:data-[selected]:border-breeze-brand breeze:data-[selected]:bg-breeze-brand-soft breeze:data-[selected]:text-breeze-brand-text breeze:forced-colors:data-[selected]:outline-2 breeze:forced-colors:data-[selected]:outline-offset-2" },
28
34
  variant: {}
29
- }, x = [
35
+ }, W = [
30
36
  {
31
37
  message: "appearanceLight",
32
38
  value: "light"
@@ -40,30 +46,30 @@ var b = {
40
46
  value: "dark"
41
47
  }
42
48
  ];
43
- function S(e) {
44
- return x.some((t) => t.value === e);
45
- }
46
- function C() {
47
- let { appearance: n, getMessageLocale: r, messages: i, setAppearance: a } = y();
48
- return /* @__PURE__ */ f("div", {
49
- className: b.base.control,
50
- children: [/* @__PURE__ */ d("span", {
51
- className: b.base.label,
49
+ function de(e) {
50
+ return W.some((t) => t.value === e);
51
+ }
52
+ function fe() {
53
+ let { appearance: n, getMessageLocale: r, messages: i, setAppearance: a } = H();
54
+ return /* @__PURE__ */ h("div", {
55
+ className: U.base.control,
56
+ children: [/* @__PURE__ */ m("span", {
57
+ className: U.base.label,
52
58
  lang: r("appearance"),
53
59
  children: i.appearance
54
- }), /* @__PURE__ */ d(t, {
60
+ }), /* @__PURE__ */ m(t, {
55
61
  "aria-label": i.appearance,
56
- className: b.base.group,
62
+ className: U.base.group,
57
63
  disallowEmptySelection: !0,
58
64
  lang: r("appearance"),
59
65
  onSelectionChange: (e) => {
60
66
  let [t] = e;
61
- S(t) && a(t);
67
+ de(t) && a(t);
62
68
  },
63
69
  selectedKeys: [n],
64
70
  selectionMode: "single",
65
- children: x.map((t) => /* @__PURE__ */ d(e, {
66
- className: [b.base.option, b.state.selected].join(" "),
71
+ children: W.map((t) => /* @__PURE__ */ m(e, {
72
+ className: [U.base.option, U.state.selected].join(" "),
67
73
  id: t.value,
68
74
  lang: r(t.message),
69
75
  children: i[t.message]
@@ -72,8 +78,88 @@ function C() {
72
78
  });
73
79
  }
74
80
  //#endregion
81
+ //#region src/primitives/Skeleton/Skeleton.tsx
82
+ var pe = {
83
+ base: { skeleton: "breeze:block breeze:animate-pulse breeze:appearance-none breeze:bg-breeze-ink-3 breeze:pointer-events-none breeze:forced-colors:outline breeze:forced-colors:outline-1 breeze:forced-colors:outline-[CanvasText]" },
84
+ compound: {},
85
+ size: {},
86
+ state: {},
87
+ variant: {
88
+ circle: "breeze:aspect-square breeze:rounded-breeze-full",
89
+ rectangle: "breeze:rounded-breeze-sm",
90
+ text: "breeze:block-size-breeze-3 breeze:inline-size-full breeze:rounded-breeze-xs"
91
+ }
92
+ };
93
+ function G({ blockSize: e, inlineSize: t, label: n, shape: r = "text" }) {
94
+ let { getMessageLocale: i, messages: a } = H(), o = n?.trim() || void 0, s = e ?? t ?? "0.75rem", c = {
95
+ blockSize: r === "circle" ? s : e,
96
+ inlineSize: r === "circle" ? s : t
97
+ };
98
+ return /* @__PURE__ */ m("progress", {
99
+ "aria-hidden": o === void 0 || void 0,
100
+ "aria-label": o,
101
+ className: [pe.base.skeleton, pe.variant[r]].join(" "),
102
+ lang: o === a.loading.trim() ? i("loading") : void 0,
103
+ style: c
104
+ });
105
+ }
106
+ //#endregion
107
+ //#region src/primitives/VisuallyHidden/VisuallyHidden.tsx
108
+ var me = {
109
+ base: { hidden: "breeze:sr-only" },
110
+ compound: {},
111
+ size: {},
112
+ state: {},
113
+ variant: {}
114
+ };
115
+ function he({ children: e }) {
116
+ return /* @__PURE__ */ m("span", {
117
+ className: me.base.hidden,
118
+ children: e
119
+ });
120
+ }
121
+ //#endregion
122
+ //#region src/primitives/Badge/Badge.tsx
123
+ var K = {
124
+ base: {
125
+ badge: "breeze:inline-grid breeze:shrink-0 breeze:items-center breeze:whitespace-nowrap breeze:rounded-breeze-chip breeze:ps-breeze-2 breeze:pe-breeze-2 breeze:py-breeze-px breeze:text-breeze-2xs breeze:font-bold breeze:leading-breeze-snug breeze:tracking-breeze-wide",
126
+ content: "breeze:[grid-area:1/1]",
127
+ skeleton: "breeze:[grid-area:1/1] breeze:grid breeze:inline-size-full breeze:items-center"
128
+ },
129
+ compound: {},
130
+ size: {},
131
+ state: { contentLoading: "breeze:opacity-0" },
132
+ variant: {
133
+ brand: "breeze:bg-breeze-brand-soft breeze:text-breeze-brand-text",
134
+ danger: "breeze:bg-breeze-danger/10 breeze:text-breeze-danger",
135
+ neutral: "breeze:bg-breeze-sunken breeze:text-breeze-ink-2",
136
+ positive: "breeze:bg-breeze-pos-soft breeze:text-breeze-pos",
137
+ warning: "breeze:bg-breeze-warn-soft breeze:text-breeze-warn"
138
+ }
139
+ };
140
+ function ge({ "aria-label": e, children: t, loading: n = !1, variant: r = "neutral" }) {
141
+ let { messages: i } = H(), a = e?.trim() || void 0, o;
142
+ return n ? o = /* @__PURE__ */ m("span", {
143
+ className: K.base.skeleton,
144
+ children: /* @__PURE__ */ m(G, {
145
+ blockSize: 8,
146
+ inlineSize: "100%",
147
+ label: i.loading,
148
+ shape: "rectangle"
149
+ })
150
+ }) : a !== void 0 && (o = /* @__PURE__ */ m(he, { children: a })), /* @__PURE__ */ h("span", {
151
+ "aria-busy": n || void 0,
152
+ className: [K.base.badge, K.variant[r]].join(" "),
153
+ children: [/* @__PURE__ */ m("span", {
154
+ "aria-hidden": n || a !== void 0 ? !0 : void 0,
155
+ className: [K.base.content, n && K.state.contentLoading].filter(Boolean).join(" "),
156
+ children: t
157
+ }), o]
158
+ });
159
+ }
160
+ //#endregion
75
161
  //#region src/primitives/Button/Button.tsx
76
- var w = {
162
+ var q = {
77
163
  base: {
78
164
  button: "breeze:relative breeze:inline-grid breeze:items-center breeze:justify-center breeze:gap-breeze-2 breeze:border breeze:border-solid breeze:rounded-breeze-ctl breeze:font-breeze-sans breeze:text-breeze-sm breeze:leading-breeze-snug breeze:cursor-pointer breeze:select-none breeze:[text-align:center] breeze:outline-offset-2 breeze:data-[focus-visible]:outline-2 breeze:data-[focus-visible]:outline-solid breeze:data-[focus-visible]:outline-breeze-brand breeze:any-pointer-coarse:min-block-breeze-tap breeze:any-pointer-coarse:min-inline-breeze-tap",
79
165
  label: "breeze:[grid-area:1/1]",
@@ -103,127 +189,903 @@ var w = {
103
189
  secondary: "breeze:border-breeze-line-strong breeze:bg-breeze-surface breeze:text-breeze-ink breeze:data-[hovered]:bg-breeze-sunken breeze:data-[pressed]:bg-breeze-sunken"
104
190
  }
105
191
  };
106
- function T() {
107
- let e = h(m), { getMessageLocale: t, messages: n } = y();
108
- return /* @__PURE__ */ d("progress", {
192
+ function _e() {
193
+ let e = v(_), { getMessageLocale: t, messages: n } = H();
194
+ return /* @__PURE__ */ m("progress", {
109
195
  "aria-label": n.loading,
110
- className: w.state.loadingStatus,
196
+ className: q.state.loadingStatus,
111
197
  id: e?.id,
112
198
  lang: t("loading")
113
199
  });
114
200
  }
115
- function E({ "aria-controls": e, "aria-describedby": t, "aria-expanded": n, "aria-haspopup": i, "aria-label": a, "aria-labelledby": o, children: s, disabled: c = !1, form: l, id: m, loading: h = !1, name: g, onAction: _, ref: v, size: b = "md", type: x = "button", value: S, variant: C = "primary" }) {
116
- y();
117
- let E = [
118
- w.base.button,
119
- w.variant[C],
120
- w.size[b],
121
- c && w.state.disabled,
122
- h && w.state.loading
201
+ function ve({ "aria-controls": e, "aria-describedby": t, "aria-expanded": n, "aria-haspopup": i, "aria-label": a, "aria-labelledby": o, children: s, disabled: c = !1, form: l, id: u, loading: d = !1, name: f, onAction: _, ref: v, size: y = "md", type: b = "button", value: x, variant: S = "primary" }) {
202
+ H();
203
+ let C = [
204
+ q.base.button,
205
+ q.variant[S],
206
+ q.size[y],
207
+ c && q.state.disabled,
208
+ d && q.state.loading
123
209
  ].filter(Boolean).join(" ");
124
- return /* @__PURE__ */ f(p, {
210
+ return /* @__PURE__ */ h(g, {
125
211
  "aria-controls": e,
126
212
  "aria-describedby": t,
127
213
  "aria-expanded": n,
128
214
  "aria-haspopup": i,
129
215
  "aria-label": a ?? s,
130
216
  "aria-labelledby": o,
131
- className: E,
217
+ className: C,
132
218
  form: l,
133
- id: m,
219
+ id: u,
134
220
  isDisabled: c,
135
- isPending: h,
136
- name: g,
221
+ isPending: d,
222
+ name: f,
137
223
  onPress: () => _?.(),
138
224
  ref: v,
139
225
  render: (e) => r("button", {
140
226
  ...e,
141
- "aria-busy": h || void 0,
142
- onClick: h ? (e) => e.preventDefault() : e.onClick,
143
- type: x === "submit" ? "submit" : "button"
227
+ "aria-busy": d || void 0,
228
+ onClick: d ? (e) => e.preventDefault() : e.onClick,
229
+ type: b === "submit" ? "submit" : "button"
144
230
  }),
145
- type: x,
146
- value: S,
147
- children: [/* @__PURE__ */ d("span", {
148
- className: [w.base.label, h && w.state.loadingLabel].filter(Boolean).join(" "),
231
+ type: b,
232
+ value: x,
233
+ children: [/* @__PURE__ */ m("span", {
234
+ className: [q.base.label, d && q.state.loadingLabel].filter(Boolean).join(" "),
149
235
  children: s
150
- }), h && /* @__PURE__ */ f(u, { children: [/* @__PURE__ */ d(T, {}), /* @__PURE__ */ d("span", {
236
+ }), d && /* @__PURE__ */ h(p, { children: [/* @__PURE__ */ m(_e, {}), /* @__PURE__ */ m("span", {
151
237
  "aria-hidden": "true",
152
- className: [w.base.skeleton, w.compound.loading[C]].join(" "),
238
+ className: [q.base.skeleton, q.compound.loading[S]].join(" "),
153
239
  "data-breeze-skeleton": ""
154
240
  })] })]
155
241
  });
156
242
  }
157
243
  //#endregion
244
+ //#region src/primitives/layout.accessibility.ts
245
+ function J(e, t) {
246
+ let n = e?.trim() || void 0;
247
+ return {
248
+ accessibleLabel: n,
249
+ role: n !== void 0 && t === "div" ? "group" : void 0
250
+ };
251
+ }
252
+ //#endregion
253
+ //#region src/primitives/Card/Card.tsx
254
+ var ye = {
255
+ base: { card: "breeze:min-inline-size-0 breeze:rounded-breeze-panel breeze:border breeze:border-solid breeze:border-breeze-line breeze:shadow-breeze-panel" },
256
+ compound: {},
257
+ size: {
258
+ 0: "breeze:p-0",
259
+ 1: "breeze:p-breeze-1",
260
+ 2: "breeze:p-breeze-2",
261
+ 3: "breeze:p-breeze-3",
262
+ 4: "breeze:p-breeze-4",
263
+ 5: "breeze:p-breeze-5",
264
+ 6: "breeze:p-breeze-6",
265
+ 7: "breeze:p-breeze-7",
266
+ 8: "breeze:p-breeze-8"
267
+ },
268
+ state: { clipped: "breeze:overflow-hidden" },
269
+ variant: {
270
+ raised: "breeze:bg-breeze-raised",
271
+ surface: "breeze:bg-breeze-surface"
272
+ }
273
+ };
274
+ function be({ "aria-label": e, children: t, clipped: n = !0, element: i = "div", padding: a = 4, variant: o = "surface" }) {
275
+ let { accessibleLabel: s, role: c } = J(e, i);
276
+ return r(i, {
277
+ "aria-label": s,
278
+ className: [
279
+ ye.base.card,
280
+ ye.variant[o],
281
+ ye.size[a],
282
+ n && ye.state.clipped
283
+ ].filter(Boolean).join(" "),
284
+ role: c
285
+ }, t);
286
+ }
287
+ //#endregion
288
+ //#region src/primitives/Container/Container.tsx
289
+ var xe = {
290
+ base: { container: "breeze:mx-auto breeze:inline-size-full breeze:min-inline-size-0" },
291
+ compound: {},
292
+ size: {
293
+ page: "breeze:max-inline-breeze-page",
294
+ prose: "breeze:max-inline-breeze-prose",
295
+ read: "breeze:max-inline-breeze-read"
296
+ },
297
+ state: { padded: "breeze:ps-breeze-4 breeze:pe-breeze-4 breeze:breeze-md:ps-breeze-7 breeze:breeze-md:pe-breeze-7" },
298
+ variant: {}
299
+ };
300
+ function Se({ "aria-label": e, children: t, element: n = "div", padded: i = !0, width: a = "page" }) {
301
+ let { accessibleLabel: o, role: s } = J(e, n);
302
+ return r(n, {
303
+ "aria-label": o,
304
+ className: [
305
+ xe.base.container,
306
+ xe.size[a],
307
+ i && xe.state.padded
308
+ ].filter(Boolean).join(" "),
309
+ role: s
310
+ }, t);
311
+ }
312
+ //#endregion
313
+ //#region src/overlays/OverlayStack.ts
314
+ function Ce() {
315
+ let e = [], t = /* @__PURE__ */ new Set(), n = () => t.forEach((e) => e());
316
+ return {
317
+ getSnapshot: () => e,
318
+ remove: (t) => {
319
+ e = e.filter((e) => e.id !== t), n();
320
+ },
321
+ set: (t) => {
322
+ let r = e.find((e) => e.id === t.id);
323
+ r?.active === t.active && r.kind === t.kind && r.parent === t.parent && r.visual === t.visual || (e = r && (!t.active || r.active) ? e.map((e) => e.id === t.id ? t : e) : [...e.filter((e) => e.id !== t.id), t], n());
324
+ },
325
+ subscribe: (e) => (t.add(e), () => {
326
+ t.delete(e);
327
+ })
328
+ };
329
+ }
330
+ var we = n(null), Te = n(null);
331
+ function Ee(e, t, n) {
332
+ let r = a(we), i = a(Te), o = s();
333
+ if (!r) throw Error("Breeze components must be rendered within BreezeProvider.");
334
+ let l = f(r.subscribe, r.getSnapshot, r.getSnapshot), u = i?.id;
335
+ c(() => () => r.remove(o), [o, r]), c(() => {
336
+ r.set({
337
+ active: t,
338
+ id: o,
339
+ kind: e,
340
+ parent: u,
341
+ visual: n
342
+ });
343
+ }, [
344
+ o,
345
+ e,
346
+ t,
347
+ u,
348
+ r,
349
+ n
350
+ ]);
351
+ let d = [], p = (e) => {
352
+ if (d.includes(e)) return;
353
+ let t = l.find((t) => t.id === e.parent);
354
+ t && p(t), d.push(e);
355
+ };
356
+ l.forEach(p);
357
+ let m = (e) => {
358
+ let t = l.find((t) => t.id === e.parent);
359
+ return e.active && (!t || m(t));
360
+ }, h = d.filter(m), g = h.findIndex((e) => e.id === o), _ = t && g !== -1 && !h.slice(g + 1).some((e) => e.kind !== "popover"), v = t && h.at(-1)?.id === o, y = h.findLast((e) => e.kind === "drawer" || e.kind === "dialog"), b = d.findLast((e) => e.visual && (e.kind === "drawer" || e.kind === "dialog"));
361
+ return {
362
+ id: o,
363
+ interactive: _,
364
+ scrim: (y ?? b)?.id === o,
365
+ topmost: v,
366
+ zIndex: 100 + Math.max(0, d.findIndex((e) => e.id === o)) * 2
367
+ };
368
+ }
369
+ //#endregion
370
+ //#region src/overlays/OverlayProvider.tsx
371
+ var De = n(null), Oe = "BreezeProvider portalContainer must belong to the current document and light DOM.";
372
+ function ke({ children: e, portalContainer: t, locale: n }) {
373
+ let { direction: r } = w(), [i] = d(Ce), [a, o] = d(null);
374
+ return c(() => {
375
+ let e = t ?? document.body;
376
+ if (e.ownerDocument !== document || e.getRootNode() !== document) throw Error(Oe);
377
+ let n = e.ownerDocument.createElement("div");
378
+ return n.dataset.breezeRoot = "", n.dataset.breezePortal = "", e.append(n), o(n), () => n.remove();
379
+ }, [t]), c(() => {
380
+ a && (a.lang = n, a.dir = r);
381
+ }, [
382
+ r,
383
+ a,
384
+ n
385
+ ]), /* @__PURE__ */ m(C, {
386
+ getContainer: () => a,
387
+ children: /* @__PURE__ */ m(we, {
388
+ value: i,
389
+ children: /* @__PURE__ */ m(De, {
390
+ value: a,
391
+ children: e
392
+ })
393
+ })
394
+ });
395
+ }
396
+ function Ae() {
397
+ return a(De);
398
+ }
399
+ //#endregion
400
+ //#region src/overlays/OverlaySurface.tsx
401
+ var Y = {
402
+ base: {
403
+ content: "breeze-overlay-content",
404
+ header: "breeze-overlay-header",
405
+ title: "breeze-overlay-title"
406
+ },
407
+ compound: {},
408
+ size: {},
409
+ state: {},
410
+ variant: {
411
+ dialog: "breeze-dialog",
412
+ drawer: "breeze-drawer",
413
+ fullscreen: "breeze-fullscreen",
414
+ popover: "breeze-popover"
415
+ }
416
+ }, je = "Breeze overlay triggers and portal containers must belong to the current document and light DOM.";
417
+ function X(e) {
418
+ return typeof e == "object" && !!e && "nodeType" in e && typeof e.contains == "function";
419
+ }
420
+ function Me(e) {
421
+ return e.dataset?.breezeOverlay !== void 0;
422
+ }
423
+ function Ne({ children: e, defaultOpen: t = !1, dismissible: n = !0, kind: r, onOpenChange: s, open: f, placement: g = "bottom", title: _, trigger: v }) {
424
+ let { getMessageLocale: C, messages: ee } = H(), w = r === "popover" || r === "fullscreen", T = Ae(), E = a(Te), [te, ne] = d(E === null);
425
+ o(() => ne(!0), []);
426
+ let [re, ie] = d(t), D = f ?? re, O = E?.open ?? !0, k = D && O, A = u(null), ae = u(null), j = u(null), [oe, se] = d(!1), M = u(!1), N = u(null), P = u(null), F = u(null), I = u(null), ce = u(!1);
427
+ c(() => {
428
+ if (T && A.current && (A.current.ownerDocument !== document || A.current.getRootNode() !== document || T.ownerDocument !== document || T.getRootNode() !== document)) throw Error(je);
429
+ }, [T]);
430
+ let le = l(() => r === "fullscreen" ? { current: T } : A, [T, r]), L = Ee(r, k && te && T !== null, k || oe), R = i((e) => {
431
+ if (!e && !O) {
432
+ if (ce.current) return;
433
+ D && (ce.current = !0);
434
+ }
435
+ f === void 0 && ie(e), s?.(e);
436
+ }, [
437
+ f,
438
+ s,
439
+ O,
440
+ D
441
+ ]);
442
+ o(() => {
443
+ O ? ce.current = !1 : D && R(!1);
444
+ }, [
445
+ R,
446
+ O,
447
+ D
448
+ ]), o(() => {
449
+ if (r !== "popover" || !k || !n || !L.topmost || !T) return;
450
+ let e = () => {
451
+ P.current !== null && (clearTimeout(P.current), P.current = null);
452
+ }, t = (e, t) => !!e && !!t && (e === t || e.contains(t) || t.contains(e)), i = (e) => e.button === 0, a = (e) => X(e) && !ae.current?.contains(e) && !A.current?.contains(e), o = (t) => {
453
+ i(t) && (e(), I.current = null, F.current = X(t.target) ? t.target : null);
454
+ }, s = (n) => {
455
+ if (!i(n)) return;
456
+ let r = F.current, o = X(n.target) ? n.target : null;
457
+ !a(r) || !a(o) || (e(), P.current = setTimeout(() => {
458
+ P.current = null;
459
+ let e = I.current, n = F.current;
460
+ I.current = null, F.current = null, !(t(e, o) && t(e, n)) && R(!1);
461
+ }, 0));
462
+ }, c = () => {
463
+ e(), I.current = null, F.current = null;
464
+ }, l = (n) => {
465
+ let r = X(n.target) ? n.target : null;
466
+ if (e(), a(r)) {
467
+ let e = I.current, n = F.current;
468
+ if (I.current = null, F.current = null, t(e, r) && t(e, n)) return;
469
+ R(!1);
470
+ }
471
+ };
472
+ return T.ownerDocument.addEventListener("pointerdown", o, !0), T.ownerDocument.addEventListener("pointerup", s, !0), T.ownerDocument.addEventListener("pointercancel", c, !0), T.ownerDocument.addEventListener("click", l, !0), () => {
473
+ e(), T.ownerDocument.removeEventListener("pointerdown", o, !0), T.ownerDocument.removeEventListener("pointerup", s, !0), T.ownerDocument.removeEventListener("pointercancel", c, !0), T.ownerDocument.removeEventListener("click", l, !0), I.current = null, F.current = null;
474
+ };
475
+ }, [
476
+ R,
477
+ n,
478
+ T,
479
+ r,
480
+ L.topmost,
481
+ k
482
+ ]);
483
+ let ue = E?.restoreFocus, z = E?.id, B = i(() => {
484
+ let e = A.current, t = T?.ownerDocument, n = t?.activeElement;
485
+ if (!t || !T) return;
486
+ let r = z ? t.getElementById(z) : null;
487
+ if (!(n === t.body || n === r || n?.closest("[data-exiting]"))) return;
488
+ if (!e?.isConnected) {
489
+ ue?.();
490
+ return;
491
+ }
492
+ let i = T.querySelector("[data-breeze-topmost=\"true\"]");
493
+ (!i || i.contains(e)) && !e.closest("[inert], [aria-hidden=\"true\"]") && e.focus({ preventScroll: !0 });
494
+ }, [
495
+ T,
496
+ z,
497
+ ue
498
+ ]), V = i(() => {
499
+ N.current !== null && (clearTimeout(N.current), N.current = null);
500
+ }, []), U = i((e) => {
501
+ queueMicrotask(() => {
502
+ !e.isConnected || e.closest("[inert], [data-exiting]") || (V(), e.focus({ preventScroll: !0 }), N.current = setTimeout(() => {
503
+ let { ownerDocument: t } = e, { activeElement: n } = t;
504
+ e.isConnected && !e.closest("[inert], [data-exiting]") && (n === e || n === t.body) && (M.current = !0, e.blur(), e.focus({ preventScroll: !0 }), M.current = !1), N.current = null;
505
+ }, 500));
506
+ });
507
+ }, [V]), W = u(k);
508
+ o(() => {
509
+ let e = W.current;
510
+ W.current = k, !(!w || !k || e || !j.current) && U(j.current);
511
+ }, [
512
+ U,
513
+ w,
514
+ k
515
+ ]);
516
+ let de = i((e) => {
517
+ j.current = e;
518
+ let t = () => {
519
+ V(), j.current = null, se(!1), requestAnimationFrame(B);
520
+ };
521
+ if (!e) {
522
+ t();
523
+ return;
524
+ }
525
+ return se(!0), w && U(e), t;
526
+ }, [
527
+ V,
528
+ U,
529
+ w,
530
+ B
531
+ ]), fe = l(() => ({
532
+ id: L.id,
533
+ open: k,
534
+ restoreFocus: B
535
+ }), [
536
+ L.id,
537
+ k,
538
+ B
539
+ ]), pe = /* @__PURE__ */ h(p, { children: [/* @__PURE__ */ h("div", {
540
+ className: Y.base.header,
541
+ children: [/* @__PURE__ */ m("h2", {
542
+ className: Y.base.title,
543
+ children: _
544
+ }), /* @__PURE__ */ m("span", {
545
+ lang: C("close"),
546
+ children: /* @__PURE__ */ m(ve, {
547
+ onAction: () => R(!1),
548
+ variant: "quiet",
549
+ children: ee.close
550
+ })
551
+ })]
552
+ }), e] }), G = /* @__PURE__ */ m(Te, {
553
+ value: fe,
554
+ children: w ? /* @__PURE__ */ m("section", {
555
+ "aria-label": _,
556
+ className: Y.base.content,
557
+ id: L.id,
558
+ onBlur: (e) => {
559
+ if (M.current) {
560
+ e.stopPropagation();
561
+ return;
562
+ }
563
+ let { relatedTarget: t } = e;
564
+ r === "popover" && n && L.topmost && X(t) && !e.currentTarget.contains(t) && !A.current?.contains(t) && (I.current = t);
565
+ },
566
+ ref: de,
567
+ role: "dialog",
568
+ tabIndex: -1,
569
+ children: pe
570
+ }) : /* @__PURE__ */ m(y, {
571
+ "aria-label": _,
572
+ className: Y.base.content,
573
+ id: L.id,
574
+ ref: de,
575
+ children: pe
576
+ })
577
+ });
578
+ return /* @__PURE__ */ h(p, { children: [/* @__PURE__ */ m(ve, {
579
+ "aria-controls": k ? L.id : void 0,
580
+ "aria-expanded": k,
581
+ "aria-haspopup": "dialog",
582
+ onAction: () => R(!w || !k),
583
+ ref: A,
584
+ children: v
585
+ }), T && te && (w ? /* @__PURE__ */ m(S, {
586
+ className: Y.variant[r],
587
+ "data-breeze-overlay": r,
588
+ "data-breeze-topmost": L.topmost,
589
+ "data-breeze-interactive": L.interactive,
590
+ inert: !L.interactive,
591
+ isNonModal: !0,
592
+ isOpen: k,
593
+ isKeyboardDismissDisabled: !n || !L.topmost,
594
+ onOpenChange: R,
595
+ placement: g,
596
+ ref: ae,
597
+ shouldCloseOnInteractOutside: (e) => r === "popover" && n && L.topmost && !A.current?.contains(e),
598
+ style: { zIndex: L.zIndex },
599
+ triggerRef: le,
600
+ children: G
601
+ }) : /* @__PURE__ */ m(x, {
602
+ className: "breeze-overlay-backdrop",
603
+ "data-breeze-overlay": r,
604
+ "data-breeze-scrim": L.scrim,
605
+ "data-breeze-topmost": L.topmost,
606
+ "data-breeze-interactive": L.interactive,
607
+ inert: !L.interactive,
608
+ isDismissable: n && L.topmost,
609
+ isKeyboardDismissDisabled: !n || !L.topmost,
610
+ isOpen: k,
611
+ onOpenChange: R,
612
+ shouldCloseOnInteractOutside: (e) => L.topmost && Me(e),
613
+ style: { zIndex: L.zIndex },
614
+ children: /* @__PURE__ */ m(b, {
615
+ className: Y.variant[r],
616
+ children: G
617
+ })
618
+ }))] });
619
+ }
620
+ //#endregion
621
+ //#region src/primitives/Dialog/Dialog.tsx
622
+ function Pe({ children: e, defaultOpen: t, dismissible: n, onOpenChange: r, open: i, title: a, trigger: o }) {
623
+ return /* @__PURE__ */ m(Ne, {
624
+ defaultOpen: t,
625
+ dismissible: n,
626
+ onOpenChange: r,
627
+ open: i,
628
+ title: a,
629
+ trigger: o,
630
+ kind: "dialog",
631
+ children: e
632
+ });
633
+ }
634
+ //#endregion
635
+ //#region src/primitives/Drawer/Drawer.tsx
636
+ function Fe({ children: e, defaultOpen: t, dismissible: n, onOpenChange: r, open: i, title: a, trigger: o }) {
637
+ return /* @__PURE__ */ m(Ne, {
638
+ defaultOpen: t,
639
+ dismissible: n,
640
+ onOpenChange: r,
641
+ open: i,
642
+ title: a,
643
+ trigger: o,
644
+ kind: "drawer",
645
+ children: e
646
+ });
647
+ }
648
+ //#endregion
649
+ //#region src/primitives/Grid/Grid.tsx
650
+ var Ie = {
651
+ base: { grid: "breeze:grid breeze:min-inline-size-0" },
652
+ compound: { columns: {
653
+ 1: {
654
+ lg: "breeze:grid-cols-1",
655
+ md: "breeze:grid-cols-1",
656
+ none: "breeze:grid-cols-1",
657
+ sm: "breeze:grid-cols-1"
658
+ },
659
+ 2: {
660
+ lg: "breeze:grid-cols-2 breeze:max-breeze-lg:grid-cols-1",
661
+ md: "breeze:grid-cols-2 breeze:max-breeze-md:grid-cols-1",
662
+ none: "breeze:grid-cols-2",
663
+ sm: "breeze:grid-cols-2 breeze:max-breeze-sm:grid-cols-1"
664
+ },
665
+ 3: {
666
+ lg: "breeze:grid-cols-3 breeze:max-breeze-lg:grid-cols-1",
667
+ md: "breeze:grid-cols-3 breeze:max-breeze-md:grid-cols-1",
668
+ none: "breeze:grid-cols-3",
669
+ sm: "breeze:grid-cols-3 breeze:max-breeze-sm:grid-cols-1"
670
+ }
671
+ } },
672
+ size: {
673
+ 0: "breeze:gap-0",
674
+ 1: "breeze:gap-breeze-1",
675
+ 2: "breeze:gap-breeze-2",
676
+ 3: "breeze:gap-breeze-3",
677
+ 4: "breeze:gap-breeze-4",
678
+ 5: "breeze:gap-breeze-5",
679
+ 6: "breeze:gap-breeze-6",
680
+ 7: "breeze:gap-breeze-7",
681
+ 8: "breeze:gap-breeze-8"
682
+ },
683
+ state: {},
684
+ variant: {}
685
+ };
686
+ function Le({ "aria-label": e, children: t, collapseBelow: n = "md", columns: i = 2, element: a = "div", gap: o = 4 }) {
687
+ let { accessibleLabel: s, role: c } = J(e, a);
688
+ return r(a, {
689
+ "aria-label": s,
690
+ className: [
691
+ Ie.base.grid,
692
+ Ie.compound.columns[i][n],
693
+ Ie.size[o]
694
+ ].join(" "),
695
+ role: c
696
+ }, t);
697
+ }
698
+ //#endregion
699
+ //#region src/primitives/Icon/Icon.tsx
700
+ var Re = {
701
+ add: I,
702
+ back: k,
703
+ building: ne,
704
+ calendar: re,
705
+ camera: ie,
706
+ check: D,
707
+ clock: ae,
708
+ close: z,
709
+ delete: le,
710
+ document: se,
711
+ download: j,
712
+ expand: O,
713
+ forward: A,
714
+ lock: P,
715
+ money: N,
716
+ moneyIn: T,
717
+ moneyOut: E,
718
+ more: oe,
719
+ next: A,
720
+ notifications: te,
721
+ overview: M,
722
+ people: ue,
723
+ settings: ce,
724
+ signOut: F,
725
+ upload: R,
726
+ warning: L
727
+ }, ze = {
728
+ base: { icon: "breeze:block breeze:shrink-0" },
729
+ compound: {},
730
+ size: {
731
+ lg: "breeze:block-size-breeze-6 breeze:inline-size-breeze-6",
732
+ md: "breeze:block-size-breeze-5 breeze:inline-size-breeze-5",
733
+ sm: "breeze:block-size-breeze-4 breeze:inline-size-breeze-4"
734
+ },
735
+ state: { logicalDirection: "breeze:rtl:rotate-180" },
736
+ variant: {}
737
+ }, Be = /* @__PURE__ */ new Set([
738
+ "back",
739
+ "forward",
740
+ "next"
741
+ ]);
742
+ function Ve({ label: e, name: t, size: n = "md" }) {
743
+ let r = Re[t], i = e?.trim() || void 0;
744
+ return /* @__PURE__ */ m(r, {
745
+ "aria-hidden": i === void 0 || void 0,
746
+ "aria-label": i,
747
+ className: [
748
+ ze.base.icon,
749
+ ze.size[n],
750
+ Be.has(t) && ze.state.logicalDirection
751
+ ].filter(Boolean).join(" "),
752
+ focusable: "false",
753
+ role: i === void 0 ? void 0 : "img",
754
+ strokeWidth: 1.75
755
+ });
756
+ }
757
+ //#endregion
758
+ //#region src/primitives/IconTile/IconTile.tsx
759
+ var He = {
760
+ base: { tile: "breeze:inline-flex breeze:shrink-0 breeze:items-center breeze:justify-center" },
761
+ compound: {},
762
+ size: {
763
+ lg: "breeze:block-size-breeze-tap breeze:inline-size-breeze-tap",
764
+ sm: "breeze:block-size-breeze-7 breeze:inline-size-breeze-7"
765
+ },
766
+ state: {},
767
+ variant: {
768
+ shape: {
769
+ circle: "breeze:rounded-breeze-full",
770
+ square: "breeze:rounded-breeze-sm"
771
+ },
772
+ tone: {
773
+ brand: "breeze:bg-breeze-brand-soft breeze:text-breeze-brand-text",
774
+ danger: "breeze:bg-breeze-danger/10 breeze:text-breeze-danger",
775
+ neutral: "breeze:bg-breeze-sunken breeze:text-breeze-ink-2",
776
+ positive: "breeze:bg-breeze-pos-soft breeze:text-breeze-pos",
777
+ warning: "breeze:bg-breeze-warn-soft breeze:text-breeze-warn"
778
+ }
779
+ }
780
+ };
781
+ function Ue({ label: e, name: t, shape: n = "square", size: r = "lg", tone: i = "brand" }) {
782
+ return /* @__PURE__ */ m("span", {
783
+ className: [
784
+ He.base.tile,
785
+ He.variant.tone[i],
786
+ He.variant.shape[n],
787
+ He.size[r]
788
+ ].join(" "),
789
+ children: /* @__PURE__ */ m(Ve, {
790
+ label: e,
791
+ name: t,
792
+ size: r === "lg" ? "md" : "sm"
793
+ })
794
+ });
795
+ }
796
+ //#endregion
797
+ //#region src/primitives/Inline/Inline.tsx
798
+ var Z = {
799
+ base: { inline: "breeze:flex breeze:min-inline-size-0" },
800
+ compound: {},
801
+ size: {
802
+ 0: "breeze:gap-0",
803
+ 1: "breeze:gap-breeze-1",
804
+ 2: "breeze:gap-breeze-2",
805
+ 3: "breeze:gap-breeze-3",
806
+ 4: "breeze:gap-breeze-4",
807
+ 5: "breeze:gap-breeze-5",
808
+ 6: "breeze:gap-breeze-6",
809
+ 7: "breeze:gap-breeze-7",
810
+ 8: "breeze:gap-breeze-8"
811
+ },
812
+ state: { wrap: "breeze:flex-wrap" },
813
+ variant: {
814
+ align: {
815
+ center: "breeze:items-center",
816
+ end: "breeze:items-end",
817
+ start: "breeze:items-start",
818
+ stretch: "breeze:items-stretch"
819
+ },
820
+ justify: {
821
+ between: "breeze:justify-between",
822
+ center: "breeze:justify-center",
823
+ end: "breeze:justify-end",
824
+ start: "breeze:justify-start"
825
+ }
826
+ }
827
+ };
828
+ function We({ "aria-label": e, children: t, element: n = "div", gap: i = 3, justify: a = "start", verticalAlign: o = "center", wrap: s = !1 }) {
829
+ let { accessibleLabel: c, role: l } = J(e, n);
830
+ return r(n, {
831
+ "aria-label": c,
832
+ className: [
833
+ Z.base.inline,
834
+ Z.variant.align[o],
835
+ Z.variant.justify[a],
836
+ Z.size[i],
837
+ s && Z.state.wrap
838
+ ].filter(Boolean).join(" "),
839
+ role: l
840
+ }, t);
841
+ }
842
+ //#endregion
843
+ //#region src/primitives/Popover/Popover.tsx
844
+ function Ge({ children: e, defaultOpen: t, dismissible: n, onOpenChange: r, open: i, title: a, trigger: o, placement: s }) {
845
+ return /* @__PURE__ */ m(Ne, {
846
+ defaultOpen: t,
847
+ dismissible: n,
848
+ onOpenChange: r,
849
+ open: i,
850
+ title: a,
851
+ trigger: o,
852
+ placement: s,
853
+ kind: "popover",
854
+ children: e
855
+ });
856
+ }
857
+ //#endregion
858
+ //#region src/primitives/Separator/Separator.tsx
859
+ var Ke = {
860
+ base: { separator: "breeze:m-0 breeze:shrink-0 breeze:border-0 breeze:bg-breeze-line breeze:forced-colors:bg-[CanvasText]" },
861
+ compound: {},
862
+ size: {},
863
+ state: {},
864
+ variant: {
865
+ horizontal: "breeze:block-size-breeze-px breeze:inline-size-full",
866
+ vertical: "breeze:block-size-full breeze:inline-size-breeze-px"
867
+ }
868
+ };
869
+ function qe({ orientation: e = "horizontal" }) {
870
+ return /* @__PURE__ */ m("hr", {
871
+ "aria-orientation": e,
872
+ className: [Ke.base.separator, Ke.variant[e]].join(" ")
873
+ });
874
+ }
875
+ //#endregion
876
+ //#region src/primitives/Stack/Stack.tsx
877
+ var Je = {
878
+ base: { stack: "breeze:flex breeze:min-inline-size-0 breeze:flex-col" },
879
+ compound: {},
880
+ size: {
881
+ 0: "breeze:gap-0",
882
+ 1: "breeze:gap-breeze-1",
883
+ 2: "breeze:gap-breeze-2",
884
+ 3: "breeze:gap-breeze-3",
885
+ 4: "breeze:gap-breeze-4",
886
+ 5: "breeze:gap-breeze-5",
887
+ 6: "breeze:gap-breeze-6",
888
+ 7: "breeze:gap-breeze-7",
889
+ 8: "breeze:gap-breeze-8"
890
+ },
891
+ state: {},
892
+ variant: {
893
+ center: "breeze:items-center",
894
+ end: "breeze:items-end",
895
+ start: "breeze:items-start",
896
+ stretch: "breeze:items-stretch"
897
+ }
898
+ };
899
+ function Ye({ "aria-label": e, children: t, element: n = "div", gap: i = 3, horizontalAlign: a = "stretch" }) {
900
+ let { accessibleLabel: o, role: s } = J(e, n);
901
+ return r(n, {
902
+ "aria-label": o,
903
+ className: [
904
+ Je.base.stack,
905
+ Je.variant[a],
906
+ Je.size[i]
907
+ ].join(" "),
908
+ role: s
909
+ }, t);
910
+ }
911
+ //#endregion
912
+ //#region src/primitives/Typography/Typography.tsx
913
+ var Q = {
914
+ base: { text: "breeze:m-0 breeze:font-breeze-sans" },
915
+ compound: {},
916
+ size: {},
917
+ state: {
918
+ aligned: "breeze:block breeze:inline-size-full",
919
+ inlineLoading: "breeze:inline-block",
920
+ numeric: "breeze:tabular-nums breeze:tracking-breeze-tighter",
921
+ truncate: "breeze:block breeze:min-inline-size-0 breeze:inline-size-full breeze:overflow-hidden breeze:text-ellipsis breeze:whitespace-nowrap"
922
+ },
923
+ variant: {
924
+ align: {
925
+ center: "breeze:text-center",
926
+ end: "breeze:text-end",
927
+ start: "breeze:text-start"
928
+ },
929
+ role: {
930
+ body: "breeze:text-breeze-sm breeze:font-normal breeze:leading-breeze-snug",
931
+ caption: "breeze:text-breeze-xs breeze:font-medium breeze:leading-breeze-snug",
932
+ heading: "breeze:text-breeze-2xl breeze:font-semibold breeze:leading-breeze-tight",
933
+ label: "breeze:text-breeze-xs breeze:font-medium breeze:leading-breeze-snug",
934
+ micro: "breeze:text-breeze-2xs breeze:font-bold breeze:uppercase breeze:leading-breeze-snug breeze:tracking-breeze-caps",
935
+ money: "breeze:text-breeze-4xl breeze:font-semibold breeze:leading-breeze-tight breeze:tracking-breeze-tightest breeze:tabular-nums",
936
+ title: "breeze:text-breeze-md breeze:font-semibold breeze:leading-breeze-snug"
937
+ },
938
+ tone: {
939
+ brand: "breeze:text-breeze-brand-text",
940
+ danger: "breeze:text-breeze-danger",
941
+ default: "breeze:text-breeze-ink",
942
+ muted: "breeze:text-breeze-ink-3",
943
+ positive: "breeze:text-breeze-pos",
944
+ secondary: "breeze:text-breeze-ink-2",
945
+ warning: "breeze:text-breeze-warn"
946
+ }
947
+ }
948
+ };
949
+ function Xe(e) {
950
+ return e === "heading" ? "h2" : e === "title" ? "h3" : e === "body" ? "p" : "span";
951
+ }
952
+ function Ze(e, t, n, r) {
953
+ let i;
954
+ try {
955
+ i = new Intl.NumberFormat(n, {
956
+ currency: t,
957
+ signDisplay: r ?? "auto",
958
+ style: "currency"
959
+ }).formatToParts(e);
960
+ } catch (t) {
961
+ if (!(t instanceof RangeError)) throw t;
962
+ i = new Intl.NumberFormat(n, { signDisplay: r ?? "auto" }).formatToParts(e);
963
+ }
964
+ return i.map((e) => e.type === "minusSign" ? "−" : e.value).join("");
965
+ }
966
+ function Qe(e, t, n) {
967
+ let r;
968
+ try {
969
+ r = B(e).toDate("UTC");
970
+ } catch {
971
+ return e;
972
+ }
973
+ return new Intl.DateTimeFormat(t, {
974
+ dateStyle: n ?? "long",
975
+ timeZone: "UTC"
976
+ }).format(r);
977
+ }
978
+ function $e(e, t, n) {
979
+ return e.loading ? /* @__PURE__ */ m(G, {
980
+ blockSize: "1lh",
981
+ inlineSize: "8em",
982
+ label: n
983
+ }) : e.format === "currency" ? Ze(e.value, e.currency, t, e.sign ?? "auto") : e.format === "date" ? Qe(e.value, t, e.dateStyle) : e.children;
984
+ }
985
+ function et(e) {
986
+ let { locale: t, messages: n } = H(), { "aria-label": i, align: a, children: o, element: s, format: c, id: l, loading: u = !1, numeric: d = !1, tone: f = "default", truncate: g = !1, variant: _ = "body" } = e, v = s ?? Xe(_), y = i?.trim() || void 0, b = a ?? (_ === "money" || d ? "end" : "start"), x = a !== void 0 || _ === "money" || d, S = $e(e, t, n.loading), C = c !== void 0 || typeof o == "string" || typeof o == "number", ee = !u && y !== void 0 && !C && [
987
+ "h1",
988
+ "h2",
989
+ "h3",
990
+ "h4"
991
+ ].includes(v), w = !u && y !== void 0 && !C && !ee;
992
+ return !u && y !== void 0 && C && (S = /* @__PURE__ */ h(p, { children: [/* @__PURE__ */ m("span", {
993
+ "aria-hidden": "true",
994
+ children: S
995
+ }), /* @__PURE__ */ m(he, { children: y })] })), r(v, {
996
+ "aria-busy": u || void 0,
997
+ "aria-label": w || ee ? y : void 0,
998
+ className: [
999
+ Q.base.text,
1000
+ Q.variant.role[_],
1001
+ Q.variant.tone[f],
1002
+ Q.variant.align[b],
1003
+ x && Q.state.aligned,
1004
+ u && v === "span" && !x && Q.state.inlineLoading,
1005
+ d && _ !== "money" && Q.state.numeric,
1006
+ g && Q.state.truncate
1007
+ ].filter(Boolean).join(" "),
1008
+ id: l,
1009
+ lang: t,
1010
+ role: w ? "group" : void 0
1011
+ }, S);
1012
+ }
1013
+ //#endregion
158
1014
  //#region src/provider/en-GB.ts
159
- var D = {
1015
+ var $ = {
160
1016
  appearance: "Appearance",
161
1017
  appearanceAutomatic: "Auto",
162
1018
  appearanceDark: "Dark",
163
1019
  appearanceLight: "Light",
1020
+ close: "Close",
164
1021
  loading: "Loading"
165
1022
  };
166
1023
  //#endregion
167
1024
  //#region src/provider/BreezeProvider.tsx
168
- function O(e, t) {
1025
+ function tt(e, t) {
169
1026
  return e === "automatic" ? t ? "dark" : "light" : e;
170
1027
  }
171
- function k({ children: e }) {
172
- let { direction: t, locale: n } = _();
173
- return /* @__PURE__ */ d("div", {
1028
+ function nt({ children: e }) {
1029
+ let { direction: t, locale: n } = w();
1030
+ return /* @__PURE__ */ m("div", {
174
1031
  "data-breeze-root": "",
175
1032
  dir: t,
176
1033
  lang: n,
177
1034
  children: e
178
1035
  });
179
1036
  }
180
- function A({ appearance: e, children: t, defaultAppearance: n = "automatic", locale: r, messages: a, onAppearanceChange: u }) {
181
- let [f] = l(() => typeof window > "u" || !window.matchMedia ? null : window.matchMedia("(prefers-color-scheme: dark)")), [p, m] = l(() => f?.matches ?? !1), [h, _] = l(n), y = e ?? h, b = O(y, p);
1037
+ function rt({ appearance: e, children: t, defaultAppearance: n = "automatic", locale: r, messages: a, onAppearanceChange: s, portalContainer: u }) {
1038
+ let [f] = d(() => typeof window > "u" || !window.matchMedia ? null : window.matchMedia("(prefers-color-scheme: dark)")), [p, h] = d(() => f?.matches ?? !1), [g, _] = d(n), v = e ?? g, y = tt(v, p);
182
1039
  o(() => {
183
1040
  if (!f) return;
184
- m(f.matches);
1041
+ h(f.matches);
185
1042
  let e = (e) => {
186
- m(e.matches);
1043
+ h(e.matches);
187
1044
  };
188
1045
  return f.addEventListener("change", e), () => f.removeEventListener("change", e);
189
- }, [f]), s(() => {
1046
+ }, [f]), c(() => {
190
1047
  let { documentElement: e } = document, t = e.dataset.theme, n = e.style.colorScheme;
191
- return e.dataset.theme = b, e.style.colorScheme = b, () => {
1048
+ return e.dataset.theme = y, e.style.colorScheme = y, () => {
192
1049
  t === void 0 ? delete e.dataset.theme : e.dataset.theme = t, e.style.colorScheme = n;
193
1050
  };
194
- }, [b]);
195
- let x = i((t) => {
196
- e === void 0 && _(t), u?.(t);
197
- }, [e, u]), S = i((e) => a?.[e] === void 0 ? "en-GB" : r, [r, a]);
198
- return /* @__PURE__ */ d(g, {
1051
+ }, [y]);
1052
+ let b = i((t) => {
1053
+ e === void 0 && _(t), s?.(t);
1054
+ }, [e, s]), x = i((e) => a?.[e] === void 0 ? "en-GB" : r, [r, a]);
1055
+ return /* @__PURE__ */ m(ee, {
199
1056
  locale: r,
200
- children: /* @__PURE__ */ d(v, {
201
- value: c(() => ({
202
- appearance: y,
203
- getMessageLocale: S,
1057
+ children: /* @__PURE__ */ m(V, {
1058
+ value: l(() => ({
1059
+ appearance: v,
1060
+ getMessageLocale: x,
204
1061
  locale: r,
205
1062
  messages: {
206
- appearance: a?.appearance ?? D.appearance,
207
- appearanceAutomatic: a?.appearanceAutomatic ?? D.appearanceAutomatic,
208
- appearanceDark: a?.appearanceDark ?? D.appearanceDark,
209
- appearanceLight: a?.appearanceLight ?? D.appearanceLight,
210
- loading: a?.loading ?? D.loading
1063
+ appearance: a?.appearance ?? $.appearance,
1064
+ appearanceAutomatic: a?.appearanceAutomatic ?? $.appearanceAutomatic,
1065
+ appearanceDark: a?.appearanceDark ?? $.appearanceDark,
1066
+ appearanceLight: a?.appearanceLight ?? $.appearanceLight,
1067
+ close: a?.close ?? $.close,
1068
+ loading: a?.loading ?? $.loading
211
1069
  },
212
- resolvedAppearance: b,
213
- setAppearance: x
1070
+ resolvedAppearance: y,
1071
+ setAppearance: b
214
1072
  }), [
215
- y,
216
- S,
1073
+ v,
1074
+ x,
217
1075
  r,
218
1076
  a,
219
- b,
220
- x
1077
+ y,
1078
+ b
221
1079
  ]),
222
- children: /* @__PURE__ */ d(k, { children: t })
1080
+ children: /* @__PURE__ */ m(ke, {
1081
+ locale: r,
1082
+ portalContainer: u,
1083
+ children: /* @__PURE__ */ m(nt, { children: t })
1084
+ })
223
1085
  })
224
1086
  });
225
1087
  }
226
1088
  //#endregion
227
- export { C as AppearanceControl, A as BreezeProvider, E as Button };
1089
+ export { fe as AppearanceControl, ge as Badge, rt as BreezeProvider, ve as Button, be as Card, Se as Container, Pe as Dialog, Fe as Drawer, Le as Grid, Ve as Icon, Ue as IconTile, We as Inline, Ge as Popover, qe as Separator, G as Skeleton, Ye as Stack, et as Typography, he as VisuallyHidden };
228
1090
 
229
1091
  //# sourceMappingURL=index.js.map