@gnome-ui/react 1.9.0 → 1.10.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 (149) hide show
  1. package/dist/components/ActionRow/ActionRow.d.ts +37 -0
  2. package/dist/components/ActionRow/index.d.ts +2 -0
  3. package/dist/components/Avatar/Avatar.d.ts +34 -0
  4. package/dist/components/Avatar/index.d.ts +2 -0
  5. package/dist/components/Badge/Badge.d.ts +31 -0
  6. package/dist/components/Badge/index.d.ts +2 -0
  7. package/dist/components/Banner/Banner.d.ts +38 -0
  8. package/dist/components/Banner/index.d.ts +2 -0
  9. package/dist/components/Bin/Bin.d.ts +18 -0
  10. package/dist/components/Bin/index.d.ts +2 -0
  11. package/dist/components/BottomSheet/BottomSheet.d.ts +27 -0
  12. package/dist/components/BottomSheet/index.d.ts +2 -0
  13. package/dist/components/BoxedList/BoxedList.d.ts +25 -0
  14. package/dist/components/BoxedList/index.d.ts +2 -0
  15. package/dist/components/BreakpointBin/BreakpointBin.d.ts +66 -0
  16. package/dist/components/BreakpointBin/index.d.ts +2 -0
  17. package/dist/components/Button/Button.d.ts +34 -0
  18. package/dist/components/Button/index.d.ts +2 -0
  19. package/dist/components/ButtonContent/ButtonContent.d.ts +30 -0
  20. package/dist/components/ButtonContent/index.d.ts +2 -0
  21. package/dist/components/ButtonRow/ButtonRow.d.ts +22 -0
  22. package/dist/components/ButtonRow/index.d.ts +2 -0
  23. package/dist/components/Card/Card.d.ts +24 -0
  24. package/dist/components/Card/index.d.ts +2 -0
  25. package/dist/components/Carousel/Carousel.d.ts +64 -0
  26. package/dist/components/Carousel/index.d.ts +2 -0
  27. package/dist/components/CheckRow/CheckRow.d.ts +28 -0
  28. package/dist/components/CheckRow/index.d.ts +2 -0
  29. package/dist/components/Checkbox/Checkbox.d.ts +22 -0
  30. package/dist/components/Checkbox/index.d.ts +2 -0
  31. package/dist/components/Chip/Chip.d.ts +38 -0
  32. package/dist/components/Chip/index.d.ts +2 -0
  33. package/dist/components/Clamp/Clamp.d.ts +32 -0
  34. package/dist/components/Clamp/index.d.ts +2 -0
  35. package/dist/components/ComboRow/ComboRow.d.ts +34 -0
  36. package/dist/components/ComboRow/index.d.ts +2 -0
  37. package/dist/components/Dialog/Dialog.d.ts +119 -0
  38. package/dist/components/Dialog/index.d.ts +2 -0
  39. package/dist/components/Dropdown/Dropdown.d.ts +36 -0
  40. package/dist/components/Dropdown/index.d.ts +2 -0
  41. package/dist/components/EntryRow/EntryRow.d.ts +24 -0
  42. package/dist/components/EntryRow/index.d.ts +2 -0
  43. package/dist/components/ExpanderRow/ExpanderRow.d.ts +35 -0
  44. package/dist/components/ExpanderRow/index.d.ts +2 -0
  45. package/dist/components/Footer/Footer.d.ts +23 -0
  46. package/dist/components/Footer/index.d.ts +2 -0
  47. package/dist/components/Frame/Frame.d.ts +14 -0
  48. package/dist/components/Frame/index.d.ts +2 -0
  49. package/dist/components/HeaderBar/HeaderBar.d.ts +25 -0
  50. package/dist/components/HeaderBar/index.d.ts +2 -0
  51. package/dist/components/Icon/Icon.d.ts +30 -0
  52. package/dist/components/Icon/index.d.ts +2 -0
  53. package/dist/components/InlineViewSwitcher/InlineViewSwitcher.d.ts +36 -0
  54. package/dist/components/InlineViewSwitcher/InlineViewSwitcherItem.d.ts +17 -0
  55. package/dist/components/InlineViewSwitcher/index.d.ts +4 -0
  56. package/dist/components/Link/Link.d.ts +18 -0
  57. package/dist/components/Link/index.d.ts +2 -0
  58. package/dist/components/LinkedGroup/LinkedGroup.d.ts +31 -0
  59. package/dist/components/LinkedGroup/index.d.ts +2 -0
  60. package/dist/components/NavigationSplitView/NavigationSplitView.d.ts +55 -0
  61. package/dist/components/NavigationSplitView/index.d.ts +2 -0
  62. package/dist/components/NavigationView/NavigationView.d.ts +55 -0
  63. package/dist/components/NavigationView/index.d.ts +2 -0
  64. package/dist/components/OverlaySplitView/OverlaySplitView.d.ts +59 -0
  65. package/dist/components/OverlaySplitView/index.d.ts +2 -0
  66. package/dist/components/PasswordEntryRow/PasswordEntryRow.d.ts +16 -0
  67. package/dist/components/PasswordEntryRow/index.d.ts +2 -0
  68. package/dist/components/Popover/Popover.d.ts +50 -0
  69. package/dist/components/Popover/index.d.ts +2 -0
  70. package/dist/components/PreferencesDialog/PreferencesDialog.d.ts +43 -0
  71. package/dist/components/PreferencesDialog/index.d.ts +2 -0
  72. package/dist/components/PreferencesGroup/PreferencesGroup.d.ts +23 -0
  73. package/dist/components/PreferencesGroup/index.d.ts +2 -0
  74. package/dist/components/PreferencesPage/PreferencesPage.d.ts +26 -0
  75. package/dist/components/PreferencesPage/index.d.ts +2 -0
  76. package/dist/components/ProgressBar/ProgressBar.d.ts +24 -0
  77. package/dist/components/ProgressBar/index.d.ts +2 -0
  78. package/dist/components/RadioButton/RadioButton.d.ts +15 -0
  79. package/dist/components/RadioButton/index.d.ts +2 -0
  80. package/dist/components/SearchBar/SearchBar.d.ts +34 -0
  81. package/dist/components/SearchBar/index.d.ts +2 -0
  82. package/dist/components/Separator/Separator.d.ts +15 -0
  83. package/dist/components/Separator/index.d.ts +2 -0
  84. package/dist/components/ShortcutLabel/ShortcutLabel.d.ts +38 -0
  85. package/dist/components/ShortcutLabel/index.d.ts +2 -0
  86. package/dist/components/ShortcutsDialog/ShortcutsDialog.d.ts +37 -0
  87. package/dist/components/ShortcutsDialog/index.d.ts +2 -0
  88. package/dist/components/Sidebar/Sidebar.d.ts +50 -0
  89. package/dist/components/Sidebar/SidebarItem.d.ts +58 -0
  90. package/dist/components/Sidebar/SidebarSection.d.ts +32 -0
  91. package/dist/components/Sidebar/index.d.ts +6 -0
  92. package/dist/components/Slider/Slider.d.ts +45 -0
  93. package/dist/components/Slider/index.d.ts +2 -0
  94. package/dist/components/SpinButton/SpinButton.d.ts +30 -0
  95. package/dist/components/SpinButton/index.d.ts +2 -0
  96. package/dist/components/SpinRow/SpinRow.d.ts +37 -0
  97. package/dist/components/SpinRow/index.d.ts +2 -0
  98. package/dist/components/Spinner/Spinner.d.ts +20 -0
  99. package/dist/components/Spinner/index.d.ts +2 -0
  100. package/dist/components/SplitButton/SplitButton.d.ts +25 -0
  101. package/dist/components/SplitButton/index.d.ts +2 -0
  102. package/dist/components/StatusPage/StatusPage.d.ts +40 -0
  103. package/dist/components/StatusPage/index.d.ts +2 -0
  104. package/dist/components/Switch/Switch.d.ts +14 -0
  105. package/dist/components/Switch/index.d.ts +2 -0
  106. package/dist/components/SwitchRow/SwitchRow.d.ts +29 -0
  107. package/dist/components/SwitchRow/index.d.ts +2 -0
  108. package/dist/components/Tabs/TabBar.d.ts +20 -0
  109. package/dist/components/Tabs/TabItem.d.ts +27 -0
  110. package/dist/components/Tabs/TabPanel.d.ts +13 -0
  111. package/dist/components/Tabs/index.d.ts +6 -0
  112. package/dist/components/Text/Text.d.ts +23 -0
  113. package/dist/components/Text/index.d.ts +2 -0
  114. package/dist/components/TextField/TextField.d.ts +22 -0
  115. package/dist/components/TextField/index.d.ts +2 -0
  116. package/dist/components/Toast/Toast.d.ts +29 -0
  117. package/dist/components/Toast/Toaster.d.ts +30 -0
  118. package/dist/components/Toast/index.d.ts +4 -0
  119. package/dist/components/ToggleGroup/ToggleGroup.d.ts +29 -0
  120. package/dist/components/ToggleGroup/ToggleGroupItem.d.ts +17 -0
  121. package/dist/components/ToggleGroup/index.d.ts +4 -0
  122. package/dist/components/Toolbar/Spacer.d.ts +19 -0
  123. package/dist/components/Toolbar/Toolbar.d.ts +18 -0
  124. package/dist/components/Toolbar/index.d.ts +4 -0
  125. package/dist/components/ToolbarView/ToolbarView.d.ts +27 -0
  126. package/dist/components/ToolbarView/index.d.ts +2 -0
  127. package/dist/components/Tooltip/Tooltip.d.ts +44 -0
  128. package/dist/components/Tooltip/index.d.ts +2 -0
  129. package/dist/components/ViewSwitcher/ViewSwitcher.d.ts +19 -0
  130. package/dist/components/ViewSwitcher/ViewSwitcherItem.d.ts +16 -0
  131. package/dist/components/ViewSwitcher/index.d.ts +4 -0
  132. package/dist/components/ViewSwitcherBar/ViewSwitcherBar.d.ts +38 -0
  133. package/dist/components/ViewSwitcherBar/index.d.ts +2 -0
  134. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebar.d.ts +37 -0
  135. package/dist/components/ViewSwitcherSidebar/ViewSwitcherSidebarItem.d.ts +27 -0
  136. package/dist/components/ViewSwitcherSidebar/index.d.ts +4 -0
  137. package/dist/components/WindowTitle/WindowTitle.d.ts +23 -0
  138. package/dist/components/WindowTitle/index.d.ts +2 -0
  139. package/dist/components/WrapBox/WrapBox.d.ts +29 -0
  140. package/dist/components/WrapBox/index.d.ts +2 -0
  141. package/dist/hooks/index.d.ts +2 -0
  142. package/dist/hooks/useBreakpoint.d.ts +42 -0
  143. package/dist/index.cjs +2 -0
  144. package/dist/index.cjs.map +1 -0
  145. package/dist/index.d.ts +132 -0
  146. package/dist/index.js +4109 -0
  147. package/dist/index.js.map +1 -0
  148. package/dist/style.css +2 -0
  149. package/package.json +1 -1
package/dist/index.js ADDED
@@ -0,0 +1,4109 @@
1
+ import { Fragment as e, jsx as t, jsxs as n } from "react/jsx-runtime";
2
+ import { Children as r, cloneElement as i, createContext as a, isValidElement as o, useCallback as s, useContext as c, useEffect as l, useId as u, useRef as d, useState as f } from "react";
3
+ import { createPortal as p } from "react-dom";
4
+ var m = {
5
+ button: "_button_1qgdy_1",
6
+ pill: "_pill_1qgdy_52",
7
+ circular: "_circular_1qgdy_59",
8
+ default: "_default_1qgdy_71",
9
+ suggested: "_suggested_1qgdy_105",
10
+ destructive: "_destructive_1qgdy_120",
11
+ flat: "_flat_1qgdy_135",
12
+ raised: "_raised_1qgdy_150",
13
+ osd: "_osd_1qgdy_184",
14
+ sm: "_sm_1qgdy_228",
15
+ lg: "_lg_1qgdy_235"
16
+ };
17
+ //#endregion
18
+ //#region src/components/Button/Button.tsx
19
+ function h({ variant: e = "default", size: t = "md", shape: r = "default", osd: i = !1, leadingIcon: a, trailingIcon: o, children: s, className: c, ...l }) {
20
+ return /* @__PURE__ */ n("button", {
21
+ className: [
22
+ m.button,
23
+ m[e],
24
+ t === "md" ? null : m[t],
25
+ r === "default" ? null : m[r],
26
+ i ? m.osd : null,
27
+ c
28
+ ].filter(Boolean).join(" "),
29
+ ...l,
30
+ children: [
31
+ a,
32
+ s,
33
+ o
34
+ ]
35
+ });
36
+ }
37
+ //#endregion
38
+ //#region src/components/Text/Text.module.css
39
+ var g = "_text_102e3_1", _ = "_heading_102e3_41", v = "_body_102e3_48", y = "_document_102e3_55", b = "_caption_102e3_62", x = "_monospace_102e3_78", S = "_numeric_102e3_85", C = {
40
+ text: g,
41
+ "large-title": "_large-title_102e3_9",
42
+ "title-1": "_title-1_102e3_16",
43
+ "title-2": "_title-2_102e3_22",
44
+ "title-3": "_title-3_102e3_28",
45
+ "title-4": "_title-4_102e3_34",
46
+ heading: _,
47
+ body: v,
48
+ document: y,
49
+ caption: b,
50
+ "caption-heading": "_caption-heading_102e3_69",
51
+ monospace: x,
52
+ numeric: S,
53
+ "color-default": "_color-default_102e3_95",
54
+ "color-dim": "_color-dim_102e3_99",
55
+ "color-accent": "_color-accent_102e3_103",
56
+ "color-destructive": "_color-destructive_102e3_107",
57
+ "color-success": "_color-success_102e3_111",
58
+ "color-warning": "_color-warning_102e3_115",
59
+ "color-error": "_color-error_102e3_119"
60
+ }, w = {
61
+ "large-title": "h1",
62
+ "title-1": "h1",
63
+ "title-2": "h2",
64
+ "title-3": "h3",
65
+ "title-4": "h4",
66
+ heading: "h3",
67
+ body: "p",
68
+ document: "p",
69
+ caption: "span",
70
+ "caption-heading": "span",
71
+ monospace: "code",
72
+ numeric: "span"
73
+ };
74
+ function T({ variant: e = "body", color: n = "default", as: r, className: i, children: a, ...o }) {
75
+ return /* @__PURE__ */ t(r ?? w[e], {
76
+ className: [
77
+ C.text,
78
+ C[e],
79
+ C[`color-${n}`],
80
+ i
81
+ ].filter(Boolean).join(" "),
82
+ ...o,
83
+ children: a
84
+ });
85
+ }
86
+ //#endregion
87
+ //#region src/components/Card/Card.module.css
88
+ var E = "_card_7f351_1", D = "_interactive_7f351_19", O = {
89
+ card: E,
90
+ "padding-none": "_padding-none_7f351_12",
91
+ "padding-sm": "_padding-sm_7f351_13",
92
+ "padding-md": "_padding-md_7f351_14",
93
+ "padding-lg": "_padding-lg_7f351_15",
94
+ interactive: D
95
+ };
96
+ //#endregion
97
+ //#region src/components/Card/Card.tsx
98
+ function k({ interactive: e = !1, padding: n = "md", as: r, className: i, children: a, ...o }) {
99
+ return /* @__PURE__ */ t(r ?? (e ? "button" : "div"), {
100
+ className: [
101
+ O.card,
102
+ O[`padding-${n}`],
103
+ e ? O.interactive : null,
104
+ i
105
+ ].filter(Boolean).join(" "),
106
+ ...o,
107
+ children: a
108
+ });
109
+ }
110
+ var A = {
111
+ spinner: "_spinner_101bb_3",
112
+ spin: "_spin_101bb_3",
113
+ sm: "_sm_101bb_15",
114
+ md: "_md_101bb_21",
115
+ lg: "_lg_101bb_27"
116
+ };
117
+ //#endregion
118
+ //#region src/components/Spinner/Spinner.tsx
119
+ function j({ size: e = "md", label: n = "Loading…", className: r, ...i }) {
120
+ let a = [
121
+ A.spinner,
122
+ A[e],
123
+ r
124
+ ].filter(Boolean).join(" ");
125
+ return /* @__PURE__ */ t("span", {
126
+ role: "status",
127
+ "aria-label": n || void 0,
128
+ "aria-hidden": n === "" ? !0 : void 0,
129
+ className: a,
130
+ ...i
131
+ });
132
+ }
133
+ var M = {
134
+ avatar: "_avatar_1f2cd_3",
135
+ sm: "_sm_1f2cd_17",
136
+ md: "_md_1f2cd_22",
137
+ lg: "_lg_1f2cd_27",
138
+ xl: "_xl_1f2cd_32",
139
+ image: "_image_1f2cd_39",
140
+ initials: "_initials_1f2cd_48",
141
+ "color-blue": "_color-blue_1f2cd_64",
142
+ "color-green": "_color-green_1f2cd_65",
143
+ "color-yellow": "_color-yellow_1f2cd_66",
144
+ "color-orange": "_color-orange_1f2cd_72",
145
+ "color-red": "_color-red_1f2cd_73",
146
+ "color-purple": "_color-purple_1f2cd_74",
147
+ "color-brown": "_color-brown_1f2cd_75",
148
+ "color-teal": "_color-teal_1f2cd_76",
149
+ "color-slate": "_color-slate_1f2cd_77"
150
+ }, N = [
151
+ "blue",
152
+ "green",
153
+ "yellow",
154
+ "orange",
155
+ "red",
156
+ "purple",
157
+ "brown",
158
+ "teal",
159
+ "slate"
160
+ ];
161
+ function P(e) {
162
+ let t = 0;
163
+ for (let n = 0; n < e.length; n++) t = t * 31 + e.charCodeAt(n) >>> 0;
164
+ return N[t % N.length];
165
+ }
166
+ function ee(e) {
167
+ let t = e.trim().split(/\s+/).filter(Boolean);
168
+ return t.length === 0 ? "" : t.length === 1 ? t[0].charAt(0).toUpperCase() : t[0].charAt(0).toUpperCase() + t[t.length - 1].charAt(0).toUpperCase();
169
+ }
170
+ function te({ name: e = "", src: n, alt: r, size: i = "md", color: a, className: o, ...s }) {
171
+ let c = a ?? (e ? P(e) : "blue"), l = ee(e), u = [
172
+ M.avatar,
173
+ M[i],
174
+ n ? null : M[`color-${c}`],
175
+ o
176
+ ].filter(Boolean).join(" ");
177
+ return /* @__PURE__ */ t("span", {
178
+ role: "img",
179
+ "aria-label": r ?? e ?? "Avatar",
180
+ className: u,
181
+ ...s,
182
+ children: n ? /* @__PURE__ */ t("img", {
183
+ src: n,
184
+ alt: r ?? e,
185
+ className: M.image
186
+ }) : /* @__PURE__ */ t("span", {
187
+ "aria-hidden": "true",
188
+ className: M.initials,
189
+ children: l
190
+ })
191
+ });
192
+ }
193
+ var ne = {
194
+ separator: "_separator_w9b4s_3",
195
+ horizontal: "_horizontal_w9b4s_12",
196
+ vertical: "_vertical_w9b4s_20"
197
+ };
198
+ //#endregion
199
+ //#region src/components/Separator/Separator.tsx
200
+ function re({ orientation: e = "horizontal", className: n, ...r }) {
201
+ let i = [
202
+ ne.separator,
203
+ e === "vertical" ? ne.vertical : ne.horizontal,
204
+ n
205
+ ].filter(Boolean).join(" ");
206
+ return e === "vertical" ? /* @__PURE__ */ t("div", {
207
+ role: "separator",
208
+ "aria-orientation": "vertical",
209
+ className: i,
210
+ ...r
211
+ }) : /* @__PURE__ */ t("hr", {
212
+ className: i,
213
+ ...r
214
+ });
215
+ }
216
+ //#endregion
217
+ //#region src/components/Switch/Switch.module.css
218
+ var ie = { switch: "_switch_1h6fk_3" };
219
+ //#endregion
220
+ //#region src/components/Switch/Switch.tsx
221
+ function ae({ className: e, ...n }) {
222
+ return /* @__PURE__ */ t("input", {
223
+ type: "checkbox",
224
+ role: "switch",
225
+ className: [ie.switch, e].filter(Boolean).join(" "),
226
+ ...n
227
+ });
228
+ }
229
+ var oe = { checkbox: "_checkbox_jnffk_3" };
230
+ //#endregion
231
+ //#region src/components/Checkbox/Checkbox.tsx
232
+ function se({ indeterminate: e = !1, className: n, ...r }) {
233
+ let i = d(null);
234
+ return l(() => {
235
+ i.current && (i.current.indeterminate = e);
236
+ }, [e]), /* @__PURE__ */ t("input", {
237
+ ref: i,
238
+ type: "checkbox",
239
+ className: [oe.checkbox, n].filter(Boolean).join(" "),
240
+ ...r
241
+ });
242
+ }
243
+ var ce = {
244
+ wrapper: "_wrapper_q91d8_3",
245
+ disabled: "_disabled_q91d8_9",
246
+ label: "_label_q91d8_15",
247
+ input: "_input_q91d8_25",
248
+ errorInput: "_errorInput_q91d8_74",
249
+ hint: "_hint_q91d8_89",
250
+ errorHint: "_errorHint_q91d8_97"
251
+ };
252
+ //#endregion
253
+ //#region src/components/TextField/TextField.tsx
254
+ function le({ label: e, helperText: r, error: i, id: a, className: o, disabled: s, ...c }) {
255
+ let l = u(), d = a ?? l, f = `${d}-help`;
256
+ return /* @__PURE__ */ n("div", {
257
+ className: [ce.wrapper, s ? ce.disabled : null].filter(Boolean).join(" "),
258
+ children: [
259
+ e && /* @__PURE__ */ t("label", {
260
+ htmlFor: d,
261
+ className: ce.label,
262
+ children: e
263
+ }),
264
+ /* @__PURE__ */ t("input", {
265
+ id: d,
266
+ disabled: s,
267
+ "aria-describedby": i || r ? f : void 0,
268
+ "aria-invalid": i ? !0 : void 0,
269
+ className: [
270
+ ce.input,
271
+ i ? ce.errorInput : null,
272
+ o
273
+ ].filter(Boolean).join(" "),
274
+ ...c
275
+ }),
276
+ (i || r) && /* @__PURE__ */ t("span", {
277
+ id: f,
278
+ className: [ce.hint, i ? ce.errorHint : null].filter(Boolean).join(" "),
279
+ children: i ?? r
280
+ })
281
+ ]
282
+ });
283
+ }
284
+ var ue = { radio: "_radio_1vybt_3" };
285
+ //#endregion
286
+ //#region src/components/RadioButton/RadioButton.tsx
287
+ function de({ className: e, ...n }) {
288
+ return /* @__PURE__ */ t("input", {
289
+ type: "radio",
290
+ className: [ue.radio, e].filter(Boolean).join(" "),
291
+ ...n
292
+ });
293
+ }
294
+ var fe = {
295
+ track: "_track_n3qbv_3",
296
+ fill: "_fill_n3qbv_14",
297
+ indeterminate: "_indeterminate_n3qbv_24",
298
+ pulse: "_pulse_n3qbv_1"
299
+ };
300
+ //#endregion
301
+ //#region src/components/ProgressBar/ProgressBar.tsx
302
+ function pe({ value: e, className: n, "aria-label": r, "aria-labelledby": i, ...a }) {
303
+ let o = e == null, s = o ? void 0 : Math.min(1, Math.max(0, e)), c = s === void 0 ? void 0 : s * 100;
304
+ return /* @__PURE__ */ t("div", {
305
+ role: "progressbar",
306
+ "aria-label": r,
307
+ "aria-labelledby": i,
308
+ "aria-valuenow": s === void 0 ? void 0 : Math.round(c),
309
+ "aria-valuemin": o ? void 0 : 0,
310
+ "aria-valuemax": o ? void 0 : 100,
311
+ className: [fe.track, n].filter(Boolean).join(" "),
312
+ ...a,
313
+ children: /* @__PURE__ */ t("div", {
314
+ className: [fe.fill, o ? fe.indeterminate : null].filter(Boolean).join(" "),
315
+ style: o ? void 0 : { width: `${c}%` }
316
+ })
317
+ });
318
+ }
319
+ //#endregion
320
+ //#region src/components/Banner/Banner.module.css
321
+ var me = "_banner_1x3b0_3", he = "_message_1x3b0_17", ge = "_actions_1x3b0_24", _e = "_actionBtn_1x3b0_33", ve = "_dismissBtn_1x3b0_55", ye = "_info_1x3b0_85", be = "_warning_1x3b0_99", xe = "_error_1x3b0_113", Se = "_success_1x3b0_127", Ce = {
322
+ banner: me,
323
+ message: he,
324
+ actions: ge,
325
+ actionBtn: _e,
326
+ dismissBtn: ve,
327
+ info: ye,
328
+ "actionBtn-info": "_actionBtn-info_1x3b0_90",
329
+ warning: be,
330
+ "actionBtn-warning": "_actionBtn-warning_1x3b0_104",
331
+ error: xe,
332
+ "actionBtn-error": "_actionBtn-error_1x3b0_118",
333
+ success: Se,
334
+ "actionBtn-success": "_actionBtn-success_1x3b0_132"
335
+ };
336
+ //#endregion
337
+ //#region src/components/Banner/Banner.tsx
338
+ function we({ variant: e = "info", children: r, actionLabel: i, onAction: a, dismissible: o = !1, onDismiss: s, className: c, ...l }) {
339
+ return /* @__PURE__ */ n("div", {
340
+ role: "status",
341
+ "aria-live": "polite",
342
+ className: [
343
+ Ce.banner,
344
+ Ce[e],
345
+ c
346
+ ].filter(Boolean).join(" "),
347
+ ...l,
348
+ children: [/* @__PURE__ */ t("span", {
349
+ className: Ce.message,
350
+ children: r
351
+ }), (i || o) && /* @__PURE__ */ n("span", {
352
+ className: Ce.actions,
353
+ children: [i && /* @__PURE__ */ t("button", {
354
+ type: "button",
355
+ className: [Ce.actionBtn, Ce[`actionBtn-${e}`]].filter(Boolean).join(" "),
356
+ onClick: a,
357
+ children: i
358
+ }), o && /* @__PURE__ */ t("button", {
359
+ type: "button",
360
+ className: Ce.dismissBtn,
361
+ onClick: s,
362
+ "aria-label": "Dismiss",
363
+ children: /* @__PURE__ */ t("svg", {
364
+ width: "16",
365
+ height: "16",
366
+ viewBox: "0 0 16 16",
367
+ "aria-hidden": "true",
368
+ fill: "currentColor",
369
+ children: /* @__PURE__ */ t("path", { d: "M3.293 3.293a1 1 0 011.414 0L8 6.586l3.293-3.293a1 1 0 111.414 1.414L9.414 8l3.293 3.293a1 1 0 01-1.414 1.414L8 9.414l-3.293 3.293a1 1 0 01-1.414-1.414L6.586 8 3.293 4.707a1 1 0 010-1.414z" })
370
+ })
371
+ })]
372
+ })]
373
+ });
374
+ }
375
+ var Te = {
376
+ headerBar: "_headerBar_1rr5r_3",
377
+ flat: "_flat_1rr5r_22",
378
+ slot: "_slot_1rr5r_29",
379
+ slotEnd: "_slotEnd_1rr5r_36",
380
+ titleSlot: "_titleSlot_1rr5r_42",
381
+ title: "_title_1rr5r_42"
382
+ };
383
+ //#endregion
384
+ //#region src/components/HeaderBar/HeaderBar.tsx
385
+ function Ee({ title: e, start: r, end: i, flat: a = !1, className: o, ...s }) {
386
+ return /* @__PURE__ */ n("header", {
387
+ className: [
388
+ Te.headerBar,
389
+ a ? Te.flat : null,
390
+ o
391
+ ].filter(Boolean).join(" "),
392
+ ...s,
393
+ children: [
394
+ /* @__PURE__ */ t("div", {
395
+ className: Te.slot,
396
+ children: r
397
+ }),
398
+ /* @__PURE__ */ t("div", {
399
+ className: Te.titleSlot,
400
+ "aria-live": "polite",
401
+ children: typeof e == "string" ? /* @__PURE__ */ t("span", {
402
+ className: Te.title,
403
+ children: e
404
+ }) : e
405
+ }),
406
+ /* @__PURE__ */ t("div", {
407
+ className: [Te.slot, Te.slotEnd].filter(Boolean).join(" "),
408
+ children: i
409
+ })
410
+ ]
411
+ });
412
+ }
413
+ var De = {
414
+ footer: "_footer_10xz9_3",
415
+ flat: "_flat_10xz9_23",
416
+ slot: "_slot_10xz9_29",
417
+ slotEnd: "_slotEnd_10xz9_36",
418
+ center: "_center_10xz9_42"
419
+ };
420
+ //#endregion
421
+ //#region src/components/Footer/Footer.tsx
422
+ function Oe({ start: e, end: r, children: i, flat: a = !1, className: o, ...s }) {
423
+ return /* @__PURE__ */ n("footer", {
424
+ className: [
425
+ De.footer,
426
+ a ? De.flat : null,
427
+ o
428
+ ].filter(Boolean).join(" "),
429
+ ...s,
430
+ children: [
431
+ /* @__PURE__ */ t("div", {
432
+ className: De.slot,
433
+ children: e
434
+ }),
435
+ i != null && /* @__PURE__ */ t("div", {
436
+ className: De.center,
437
+ children: i
438
+ }),
439
+ /* @__PURE__ */ t("div", {
440
+ className: [De.slot, De.slotEnd].filter(Boolean).join(" "),
441
+ children: r
442
+ })
443
+ ]
444
+ });
445
+ }
446
+ var ke = {
447
+ wrapper: "_wrapper_1apop_3",
448
+ badge: "_badge_1apop_11",
449
+ anchored: "_anchored_1apop_32",
450
+ dot: "_dot_1apop_41",
451
+ accent: "_accent_1apop_56",
452
+ success: "_success_1apop_61",
453
+ warning: "_warning_1apop_66",
454
+ error: "_error_1apop_71",
455
+ neutral: "_neutral_1apop_76"
456
+ };
457
+ //#endregion
458
+ //#region src/components/Badge/Badge.tsx
459
+ function Ae({ variant: e = "accent", dot: r = !1, children: i, anchor: a, className: o, ...s }) {
460
+ let c = /* @__PURE__ */ t("span", {
461
+ className: [
462
+ ke.badge,
463
+ ke[e],
464
+ r ? ke.dot : null,
465
+ a ? ke.anchored : null,
466
+ o
467
+ ].filter(Boolean).join(" "),
468
+ ...s,
469
+ children: !r && i
470
+ });
471
+ return a ? /* @__PURE__ */ n("span", {
472
+ className: ke.wrapper,
473
+ children: [a, c]
474
+ }) : c;
475
+ }
476
+ //#endregion
477
+ //#region src/components/Icon/Icon.tsx
478
+ var je = {
479
+ sm: 12,
480
+ md: 16,
481
+ lg: 20
482
+ };
483
+ function F({ icon: e, size: n = "md", label: r, width: i, height: a, ...o }) {
484
+ let s = je[n];
485
+ return /* @__PURE__ */ t("svg", {
486
+ xmlns: "http://www.w3.org/2000/svg",
487
+ viewBox: e.viewBox,
488
+ width: i ?? s,
489
+ height: a ?? s,
490
+ fill: "currentColor",
491
+ "aria-label": r,
492
+ "aria-hidden": r ? void 0 : !0,
493
+ role: r ? "img" : void 0,
494
+ focusable: "false",
495
+ ...o,
496
+ children: e.paths.map((e, n) => /* @__PURE__ */ t("path", {
497
+ d: e.d,
498
+ fillRule: e.fillRule,
499
+ clipRule: e.clipRule
500
+ }, n))
501
+ });
502
+ }
503
+ //#endregion
504
+ //#region ../icons/dist/index.js
505
+ var Me = {
506
+ viewBox: "0 0 16 16",
507
+ paths: [{
508
+ d: "m2.5 5 5.5 6 5.5-6z",
509
+ fillRule: "evenodd"
510
+ }]
511
+ }, Ne = {
512
+ viewBox: "0 0 16 16",
513
+ paths: [{
514
+ d: "M3.293 3.293a1 1 0 0 1 1.414 0L8 6.586l3.293-3.293a1 1 0 1 1 1.414 1.414L9.414 8l3.293 3.293a1 1 0 0 1-1.414 1.414L8 9.414l-3.293 3.293a1 1 0 0 1-1.414-1.414L6.586 8 3.293 4.707a1 1 0 0 1 0-1.414z",
515
+ fillRule: "evenodd"
516
+ }]
517
+ }, Pe = {
518
+ viewBox: "0 0 16 16",
519
+ paths: [{
520
+ d: "M6.5 1a5.5 5.5 0 0 1 4.33 8.92l3.13 3.13-1.41 1.41-3.13-3.13A5.5 5.5 0 1 1 6.5 1zm0 2a3.5 3.5 0 1 0 0 7 3.5 3.5 0 0 0 0-7z",
521
+ fillRule: "evenodd"
522
+ }]
523
+ }, Fe = {
524
+ viewBox: "0 0 16 16",
525
+ paths: [{
526
+ d: "M8 3C4.5 3 1.5 5.667 0 8c1.5 2.333 4.5 5 8 5s6.5-2.667 8-5c-1.5-2.333-4.5-5-8-5zm0 8a3 3 0 1 1 0-6 3 3 0 0 1 0 6zm0-4.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3z",
527
+ fillRule: "evenodd"
528
+ }]
529
+ }, Ie = {
530
+ viewBox: "0 0 16 16",
531
+ paths: [{
532
+ d: "M1.293 1.293a1 1 0 0 1 1.414 0l12 12a1 1 0 0 1-1.414 1.414l-1.88-1.88A8.8 8.8 0 0 1 8 13C4.5 13 1.5 10.333 0 8c.637-1.023 1.52-2.049 2.6-2.893L1.293 2.707a1 1 0 0 1 0-1.414zM5.03 6.444 7.09 8.505A1.5 1.5 0 0 0 9.494 6.91L7.432 4.848A3 3 0 0 0 5.03 6.444zM8 3c.645 0 1.27.083 1.867.237l-1.59 1.59A3 3 0 0 0 5.173 7.92L3.584 6.333C4.51 4.95 6.152 3 8 3zm5.4 2.107C14.48 5.951 15.363 6.977 16 8c-1.5 2.333-4.5 5-8 5a8.8 8.8 0 0 1-2.072-.249l1.538-1.538a3 3 0 0 0 3.703-3.703L12.81 5.87c.202.076.4.156.59.237z",
533
+ fillRule: "evenodd"
534
+ }]
535
+ }, Le = {
536
+ viewBox: "0 0 16 16",
537
+ paths: [{
538
+ d: "M13.5 3 6 11.5 2.5 8 1 9.5l5 5 9-10z",
539
+ fillRule: "evenodd"
540
+ }]
541
+ }, I = {
542
+ wrapper: "_wrapper_1rkb1_3",
543
+ open: "_open_1rkb1_13",
544
+ bar: "_bar_1rkb1_20",
545
+ disabled: "_disabled_1rkb1_31",
546
+ searchIcon: "_searchIcon_1rkb1_37",
547
+ input: "_input_1rkb1_47",
548
+ clearButton: "_clearButton_1rkb1_82",
549
+ filterRow: "_filterRow_1rkb1_124",
550
+ inline: "_inline_1rkb1_136"
551
+ };
552
+ //#endregion
553
+ //#region src/components/SearchBar/SearchBar.tsx
554
+ function Re({ open: e, onClose: r, onClear: i, children: a, value: o, onChange: c, placeholder: u = "Search…", disabled: f, inline: p = !1, className: m, ...h }) {
555
+ let g = d(null);
556
+ l(() => {
557
+ if (e) {
558
+ let e = requestAnimationFrame(() => g.current?.focus());
559
+ return () => cancelAnimationFrame(e);
560
+ }
561
+ }, [e]);
562
+ let _ = s((e) => {
563
+ e.key === "Escape" && (e.preventDefault(), r?.()), h.onKeyDown?.(e);
564
+ }, [r, h]), v = o !== void 0 && o !== "";
565
+ return /* @__PURE__ */ n("div", {
566
+ className: [
567
+ I.wrapper,
568
+ e ? I.open : null,
569
+ m
570
+ ].filter(Boolean).join(" "),
571
+ "aria-hidden": !e,
572
+ children: [/* @__PURE__ */ n("div", {
573
+ className: [
574
+ I.bar,
575
+ p ? I.inline : null,
576
+ f ? I.disabled : null
577
+ ].filter(Boolean).join(" "),
578
+ children: [
579
+ /* @__PURE__ */ t("span", {
580
+ className: I.searchIcon,
581
+ "aria-hidden": !0,
582
+ children: /* @__PURE__ */ t(F, {
583
+ icon: Pe,
584
+ size: "md"
585
+ })
586
+ }),
587
+ /* @__PURE__ */ t("input", {
588
+ ref: g,
589
+ type: "search",
590
+ role: "searchbox",
591
+ value: o,
592
+ onChange: c,
593
+ placeholder: u,
594
+ disabled: f,
595
+ tabIndex: e ? void 0 : -1,
596
+ className: I.input,
597
+ onKeyDown: _,
598
+ ...h
599
+ }),
600
+ v && /* @__PURE__ */ t("button", {
601
+ type: "button",
602
+ className: I.clearButton,
603
+ "aria-label": "Clear search",
604
+ tabIndex: e ? void 0 : -1,
605
+ disabled: f,
606
+ onClick: () => {
607
+ i?.(), g.current?.focus();
608
+ },
609
+ children: /* @__PURE__ */ t(F, {
610
+ icon: Ne,
611
+ size: "md"
612
+ })
613
+ })
614
+ ]
615
+ }), a && /* @__PURE__ */ t("div", {
616
+ className: I.filterRow,
617
+ children: a
618
+ })]
619
+ });
620
+ }
621
+ var ze = {
622
+ page: "_page_cb4hq_3",
623
+ iconWrap: "_iconWrap_cb4hq_20",
624
+ title: "_title_cb4hq_33",
625
+ description: "_description_cb4hq_44",
626
+ actions: "_actions_cb4hq_58",
627
+ compact: "_compact_cb4hq_68"
628
+ };
629
+ //#endregion
630
+ //#region src/components/StatusPage/StatusPage.tsx
631
+ function Be({ icon: e, iconNode: r, title: i, description: a, children: o, compact: s = !1, className: c, ...l }) {
632
+ let u = s ? 64 : 128, d = e ? /* @__PURE__ */ t(F, {
633
+ icon: e,
634
+ width: u,
635
+ height: u,
636
+ "aria-hidden": !0
637
+ }) : r ?? null;
638
+ return /* @__PURE__ */ n("div", {
639
+ className: [
640
+ ze.page,
641
+ s ? ze.compact : null,
642
+ c
643
+ ].filter(Boolean).join(" "),
644
+ ...l,
645
+ children: [
646
+ d && /* @__PURE__ */ t("div", {
647
+ className: ze.iconWrap,
648
+ "aria-hidden": "true",
649
+ children: d
650
+ }),
651
+ /* @__PURE__ */ t("p", {
652
+ className: ze.title,
653
+ children: i
654
+ }),
655
+ a && /* @__PURE__ */ t("p", {
656
+ className: ze.description,
657
+ children: a
658
+ }),
659
+ o && /* @__PURE__ */ t("div", {
660
+ className: ze.actions,
661
+ children: o
662
+ })
663
+ ]
664
+ });
665
+ }
666
+ //#endregion
667
+ //#region src/hooks/useBreakpoint.ts
668
+ var Ve = {
669
+ narrow: 400,
670
+ medium: 550,
671
+ wide: 860
672
+ };
673
+ function He() {
674
+ let e = () => {
675
+ let e = typeof window < "u" ? window.innerWidth : 1280;
676
+ return {
677
+ isNarrow: e <= Ve.narrow,
678
+ isMedium: e <= Ve.medium,
679
+ isWide: e <= Ve.wide,
680
+ width: e
681
+ };
682
+ }, [t, n] = f(e);
683
+ return l(() => {
684
+ let t = () => n(e());
685
+ return window.addEventListener("resize", t, { passive: !0 }), () => window.removeEventListener("resize", t);
686
+ }, []), t;
687
+ }
688
+ //#endregion
689
+ //#region src/components/Sidebar/Sidebar.module.css
690
+ var Ue = "_sidebar_b80pp_3", We = "_section_b80pp_21", Ge = "_sectionTitle_b80pp_33", Ke = "_list_b80pp_47", qe = "_item_b80pp_58", Je = "_itemBtn_b80pp_64", Ye = "_active_b80pp_111", Xe = "_itemIcon_b80pp_127", Ze = "_itemLabel_b80pp_140", Qe = "_itemSuffix_b80pp_150", $e = "_contextMenu_b80pp_159", et = "_contextMenuItem_b80pp_183", tt = "_contextMenuDestructive_b80pp_219", nt = "_searchWrap_b80pp_225", rt = "_pageMode_b80pp_236", it = "_dragOver_b80pp_243", at = "_collapsed_b80pp_251", ot = "_itemCollapsed_b80pp_262", L = {
691
+ sidebar: Ue,
692
+ section: We,
693
+ sectionTitle: Ge,
694
+ list: Ke,
695
+ item: qe,
696
+ itemBtn: Je,
697
+ active: Ye,
698
+ itemIcon: Xe,
699
+ itemLabel: Ze,
700
+ itemSuffix: Qe,
701
+ contextMenu: $e,
702
+ "menu-in": "_menu-in_b80pp_1",
703
+ contextMenuItem: et,
704
+ contextMenuDestructive: tt,
705
+ searchWrap: nt,
706
+ pageMode: rt,
707
+ dragOver: it,
708
+ collapsed: at,
709
+ itemCollapsed: ot
710
+ }, st = a(!1);
711
+ function ct() {
712
+ return c(st);
713
+ }
714
+ var lt = a("");
715
+ function ut(e, t) {
716
+ let n = 0;
717
+ return r.forEach(e, (e) => {
718
+ if (!o(e)) return;
719
+ let r = e.props;
720
+ typeof r.label == "string" ? r.label.toLowerCase().includes(t.toLowerCase()) && n++ : r.children && (n += ut(r.children, t));
721
+ }), n;
722
+ }
723
+ function dt({ children: e, collapsed: r = !1, searchable: i, filter: a, onFilterChange: o, mode: s, className: c, ...l }) {
724
+ let [u, d] = f(""), { isNarrow: p } = He(), m = a !== void 0, h = m ? a : u, g = (e) => {
725
+ m || d(e), o?.(e);
726
+ }, _ = h.length > 0, v = s ?? (p ? "page" : "sidebar"), y = !_ || ut(e, h) > 0;
727
+ return /* @__PURE__ */ t(st.Provider, {
728
+ value: r,
729
+ children: /* @__PURE__ */ t(lt.Provider, {
730
+ value: h,
731
+ children: /* @__PURE__ */ n("nav", {
732
+ className: [
733
+ L.sidebar,
734
+ r ? L.collapsed : null,
735
+ v === "page" ? L.pageMode : null,
736
+ c
737
+ ].filter(Boolean).join(" "),
738
+ ...l,
739
+ children: [i && /* @__PURE__ */ t("div", {
740
+ className: L.searchWrap,
741
+ children: /* @__PURE__ */ t(Re, {
742
+ open: !0,
743
+ value: h,
744
+ onChange: (e) => g(e.target.value),
745
+ onClose: () => g(""),
746
+ onClear: () => g(""),
747
+ inline: !0
748
+ })
749
+ }), _ && !y ? /* @__PURE__ */ t(Be, {
750
+ title: "No Results",
751
+ description: "No items match your search.",
752
+ compact: !0
753
+ }) : e]
754
+ })
755
+ })
756
+ });
757
+ }
758
+ //#endregion
759
+ //#region src/components/Sidebar/SidebarSection.tsx
760
+ function ft({ title: e, children: r, className: i, ...a }) {
761
+ return /* @__PURE__ */ n("section", {
762
+ className: [L.section, i].filter(Boolean).join(" "),
763
+ ...a,
764
+ children: [e && /* @__PURE__ */ t("h3", {
765
+ className: L.sectionTitle,
766
+ children: e
767
+ }), /* @__PURE__ */ t("ul", {
768
+ role: "list",
769
+ className: L.list,
770
+ children: r
771
+ })]
772
+ });
773
+ }
774
+ var pt = {
775
+ tooltip: "_tooltip_y4het_3",
776
+ visible: "_visible_y4het_29",
777
+ top: "_top_y4het_55",
778
+ bottom: "_bottom_y4het_62",
779
+ left: "_left_y4het_69",
780
+ right: "_right_y4het_76"
781
+ }, mt = 6;
782
+ function ht(e, t, n) {
783
+ let r = window.innerWidth, i = window.innerHeight, a = [
784
+ n,
785
+ n === "top" || n === "bottom" ? n === "top" ? "bottom" : "top" : n === "left" ? "right" : "left",
786
+ "top",
787
+ "bottom",
788
+ "left",
789
+ "right"
790
+ ];
791
+ for (let n of a) {
792
+ let a = 0, o = 0;
793
+ n === "top" ? (a = e.top - t.height - mt, o = e.left + e.width / 2 - t.width / 2) : n === "bottom" ? (a = e.bottom + mt, o = e.left + e.width / 2 - t.width / 2) : n === "left" ? (a = e.top + e.height / 2 - t.height / 2, o = e.left - t.width - mt) : (a = e.top + e.height / 2 - t.height / 2, o = e.right + mt);
794
+ let s = o >= 8 && o + t.width <= r - 8, c = a >= 8 && a + t.height <= i - 8;
795
+ if (s && c) return {
796
+ top: Math.max(8, Math.min(a, i - t.height - 8)),
797
+ left: Math.max(8, Math.min(o, r - t.width - 8)),
798
+ placement: n
799
+ };
800
+ }
801
+ let o = 0, s = 0;
802
+ return n === "top" && (o = e.top - t.height - mt, s = e.left + e.width / 2 - t.width / 2), n === "bottom" && (o = e.bottom + mt, s = e.left + e.width / 2 - t.width / 2), n === "left" && (o = e.top + e.height / 2 - t.height / 2, s = e.left - t.width - mt), n === "right" && (o = e.top + e.height / 2 - t.height / 2, s = e.right + mt), {
803
+ top: Math.max(8, Math.min(o, i - t.height - 8)),
804
+ left: Math.max(8, Math.min(s, window.innerWidth - t.width - 8)),
805
+ placement: n
806
+ };
807
+ }
808
+ function gt({ label: r, placement: a = "top", delay: o = 500, children: c }) {
809
+ let m = u(), [h, g] = f(!1), [_, v] = f(null), y = d(null), b = d(null), x = d(null), S = () => {
810
+ x.current &&= (clearTimeout(x.current), null);
811
+ }, C = s(() => {
812
+ !y.current || !b.current || v(ht(y.current.getBoundingClientRect(), b.current.getBoundingClientRect(), a));
813
+ }, [a]);
814
+ l(() => {
815
+ if (h) return C(), window.addEventListener("scroll", C, {
816
+ passive: !0,
817
+ capture: !0
818
+ }), window.addEventListener("resize", C, { passive: !0 }), () => {
819
+ window.removeEventListener("scroll", C, { capture: !0 }), window.removeEventListener("resize", C);
820
+ };
821
+ }, [h, C]);
822
+ let w = s(() => {
823
+ S(), x.current = setTimeout(() => g(!0), o);
824
+ }, [o]), T = s(() => {
825
+ S(), g(!1), v(null);
826
+ }, []);
827
+ l(() => {
828
+ h && C();
829
+ }, [h, C]), l(() => {
830
+ if (!h) return;
831
+ let e = (e) => {
832
+ e.key === "Escape" && T();
833
+ };
834
+ return document.addEventListener("keydown", e), () => document.removeEventListener("keydown", e);
835
+ }, [h, T]);
836
+ let E = i(c, {
837
+ ref: y,
838
+ "aria-describedby": m,
839
+ onMouseEnter: (e) => {
840
+ w(), c.props.onMouseEnter?.(e);
841
+ },
842
+ onMouseLeave: (e) => {
843
+ T(), c.props.onMouseLeave?.(e);
844
+ },
845
+ onFocus: (e) => {
846
+ w(), c.props.onFocus?.(e);
847
+ },
848
+ onBlur: (e) => {
849
+ T(), c.props.onBlur?.(e);
850
+ }
851
+ }), D = /* @__PURE__ */ t("div", {
852
+ ref: b,
853
+ id: m,
854
+ role: "tooltip",
855
+ className: [
856
+ pt.tooltip,
857
+ _ ? pt[_.placement] : null,
858
+ h && _ ? pt.visible : null
859
+ ].filter(Boolean).join(" "),
860
+ style: _ ? {
861
+ top: _.top,
862
+ left: _.left
863
+ } : {
864
+ visibility: "hidden",
865
+ top: -9999,
866
+ left: -9999
867
+ },
868
+ children: r
869
+ });
870
+ return /* @__PURE__ */ n(e, { children: [E, typeof document < "u" ? p(D, document.body) : D] });
871
+ }
872
+ //#endregion
873
+ //#region src/components/Sidebar/SidebarItem.tsx
874
+ function _t({ label: e, icon: r, active: i = !1, suffix: a, badge: o, tooltip: u, menuItems: m, onDrop: h, acceptTypes: g, className: _, ...v }) {
875
+ let y = ct(), b = c(lt), x = a ?? o, S = y ? u ?? e : u, C = b.length > 0 && !e.toLowerCase().includes(b.toLowerCase()), [w, T] = f(!1), E = (e) => {
876
+ h && (g?.length && !g.some((t) => e.dataTransfer.types.includes(t)) || (e.preventDefault(), T(!0)));
877
+ }, D = () => T(!1), O = (e) => {
878
+ h && (e.preventDefault(), T(!1), h(e));
879
+ }, [k, A] = f(null), j = d(null), M = s((e, t) => A({
880
+ x: e,
881
+ y: t
882
+ }), []), N = s(() => A(null), []);
883
+ l(() => {
884
+ if (!k) return;
885
+ let e = (e) => {
886
+ j.current && !j.current.contains(e.target) && N();
887
+ }, t = (e) => {
888
+ e.key === "Escape" && N();
889
+ };
890
+ return document.addEventListener("mousedown", e), document.addEventListener("keydown", t), () => {
891
+ document.removeEventListener("mousedown", e), document.removeEventListener("keydown", t);
892
+ };
893
+ }, [k, N]);
894
+ let P = (e) => {
895
+ m?.length && (e.preventDefault(), M(e.clientX, e.clientY));
896
+ }, ee = (e) => {
897
+ if (e.key === "ContextMenu" || e.key === "F10" && e.shiftKey) {
898
+ if (!m?.length) return;
899
+ e.preventDefault();
900
+ let t = e.currentTarget.getBoundingClientRect();
901
+ M(t.right, t.top);
902
+ }
903
+ }, te = /* @__PURE__ */ n("button", {
904
+ type: "button",
905
+ "aria-current": i ? "page" : void 0,
906
+ "aria-label": y ? e : void 0,
907
+ className: [
908
+ L.itemBtn,
909
+ i ? L.active : null,
910
+ y ? L.itemCollapsed : null,
911
+ w ? L.dragOver : null,
912
+ _
913
+ ].filter(Boolean).join(" "),
914
+ onContextMenu: P,
915
+ onKeyDown: ee,
916
+ onDragOver: E,
917
+ onDragLeave: D,
918
+ onDrop: O,
919
+ ...v,
920
+ children: [
921
+ r && /* @__PURE__ */ t("span", {
922
+ className: L.itemIcon,
923
+ children: /* @__PURE__ */ t(F, {
924
+ icon: r,
925
+ size: "md",
926
+ "aria-hidden": !0
927
+ })
928
+ }),
929
+ !y && /* @__PURE__ */ t("span", {
930
+ className: L.itemLabel,
931
+ children: e
932
+ }),
933
+ !y && x && /* @__PURE__ */ t("span", {
934
+ className: L.itemSuffix,
935
+ children: x
936
+ })
937
+ ]
938
+ });
939
+ return /* @__PURE__ */ n("li", {
940
+ className: L.item,
941
+ hidden: C || void 0,
942
+ children: [S ? /* @__PURE__ */ t(gt, {
943
+ label: S,
944
+ placement: "right",
945
+ children: te
946
+ }) : te, k && m?.length && typeof document < "u" && p(/* @__PURE__ */ t("div", {
947
+ ref: j,
948
+ className: L.contextMenu,
949
+ style: {
950
+ top: k.y,
951
+ left: k.x
952
+ },
953
+ role: "menu",
954
+ children: m.map((e) => /* @__PURE__ */ t("button", {
955
+ type: "button",
956
+ role: "menuitem",
957
+ disabled: e.disabled,
958
+ className: [L.contextMenuItem, e.destructive ? L.contextMenuDestructive : null].filter(Boolean).join(" "),
959
+ onClick: () => {
960
+ e.onClick(), N();
961
+ },
962
+ children: e.label
963
+ }, e.label))
964
+ }), document.body)]
965
+ });
966
+ }
967
+ var vt = {
968
+ spin: "_spin_7d4yi_3",
969
+ disabled: "_disabled_7d4yi_36",
970
+ btn: "_btn_7d4yi_43",
971
+ value: "_value_7d4yi_96"
972
+ };
973
+ //#endregion
974
+ //#region src/components/SpinButton/SpinButton.tsx
975
+ function yt(e) {
976
+ let t = e.toString(), n = t.indexOf(".");
977
+ return n === -1 ? 0 : t.length - n - 1;
978
+ }
979
+ function bt(e, t, n) {
980
+ return Math.min(n, Math.max(t, e));
981
+ }
982
+ function xt({ value: e, onChange: r, min: i = 0, max: a = 100, step: o = 1, decimals: c, disabled: l = !1, className: u, "aria-label": d, "aria-labelledby": f, ...p }) {
983
+ let m = c ?? yt(o), h = s((e) => r(parseFloat(bt(e, i, a).toFixed(m))), [
984
+ r,
985
+ i,
986
+ a,
987
+ m
988
+ ]), g = s((t) => {
989
+ switch (t.key) {
990
+ case "ArrowUp":
991
+ t.preventDefault(), h(e + o);
992
+ break;
993
+ case "ArrowDown":
994
+ t.preventDefault(), h(e - o);
995
+ break;
996
+ case "PageUp":
997
+ t.preventDefault(), h(e + o * 10);
998
+ break;
999
+ case "PageDown":
1000
+ t.preventDefault(), h(e - o * 10);
1001
+ break;
1002
+ case "Home":
1003
+ t.preventDefault(), h(i);
1004
+ break;
1005
+ case "End":
1006
+ t.preventDefault(), h(a);
1007
+ break;
1008
+ }
1009
+ }, [
1010
+ e,
1011
+ o,
1012
+ i,
1013
+ a,
1014
+ h
1015
+ ]);
1016
+ return /* @__PURE__ */ n("div", {
1017
+ role: "spinbutton",
1018
+ "aria-valuenow": e,
1019
+ "aria-valuemin": i,
1020
+ "aria-valuemax": a,
1021
+ "aria-label": d,
1022
+ "aria-labelledby": f,
1023
+ "aria-disabled": l || void 0,
1024
+ tabIndex: l ? -1 : 0,
1025
+ onKeyDown: l ? void 0 : g,
1026
+ className: [
1027
+ vt.spin,
1028
+ l ? vt.disabled : null,
1029
+ u
1030
+ ].filter(Boolean).join(" "),
1031
+ ...p,
1032
+ children: [
1033
+ /* @__PURE__ */ t("button", {
1034
+ type: "button",
1035
+ tabIndex: -1,
1036
+ "aria-hidden": "true",
1037
+ disabled: l || e <= i,
1038
+ className: vt.btn,
1039
+ onClick: () => h(e - o),
1040
+ children: "−"
1041
+ }),
1042
+ /* @__PURE__ */ t("span", {
1043
+ className: vt.value,
1044
+ "aria-hidden": "true",
1045
+ children: e.toFixed(m)
1046
+ }),
1047
+ /* @__PURE__ */ t("button", {
1048
+ type: "button",
1049
+ tabIndex: -1,
1050
+ "aria-hidden": "true",
1051
+ disabled: l || e >= a,
1052
+ className: vt.btn,
1053
+ onClick: () => h(e + o),
1054
+ children: "+"
1055
+ })
1056
+ ]
1057
+ });
1058
+ }
1059
+ var R = {
1060
+ bar: "_bar_12ars_3",
1061
+ list: "_list_12ars_10",
1062
+ tab: "_tab_12ars_26",
1063
+ active: "_active_12ars_81",
1064
+ tabIcon: "_tabIcon_12ars_102",
1065
+ tabLabel: "_tabLabel_12ars_110",
1066
+ closeBtn: "_closeBtn_12ars_119",
1067
+ panel: "_panel_12ars_148",
1068
+ inline: "_inline_12ars_158"
1069
+ };
1070
+ //#endregion
1071
+ //#region src/components/Tabs/TabBar.tsx
1072
+ function St({ children: e, className: n, inline: r = !1, "aria-label": i = "Tabs", ...a }) {
1073
+ let o = d(null);
1074
+ function s(e) {
1075
+ let t = Array.from(o.current?.querySelectorAll("[role=tab]:not(:disabled)") ?? []), n = t.findIndex((e) => e === document.activeElement);
1076
+ if (n === -1) return;
1077
+ let r = n;
1078
+ if (e.key === "ArrowRight") r = (n + 1) % t.length;
1079
+ else if (e.key === "ArrowLeft") r = (n - 1 + t.length) % t.length;
1080
+ else if (e.key === "Home") r = 0;
1081
+ else if (e.key === "End") r = t.length - 1;
1082
+ else return;
1083
+ e.preventDefault(), t[r].focus();
1084
+ }
1085
+ return /* @__PURE__ */ t("div", {
1086
+ className: [
1087
+ R.bar,
1088
+ r ? R.inline : null,
1089
+ n
1090
+ ].filter(Boolean).join(" "),
1091
+ ...a,
1092
+ children: /* @__PURE__ */ t("div", {
1093
+ ref: o,
1094
+ role: "tablist",
1095
+ "aria-label": i,
1096
+ className: R.list,
1097
+ onKeyDown: s,
1098
+ children: e
1099
+ })
1100
+ });
1101
+ }
1102
+ //#endregion
1103
+ //#region src/components/Tabs/TabItem.tsx
1104
+ function Ct({ label: e, icon: r, active: i = !1, panelId: a, onClose: o, closeLabel: s = "Close tab", className: c, disabled: l, ...u }) {
1105
+ return /* @__PURE__ */ n("button", {
1106
+ role: "tab",
1107
+ type: "button",
1108
+ "aria-selected": i,
1109
+ "aria-controls": a,
1110
+ tabIndex: i ? 0 : -1,
1111
+ disabled: l,
1112
+ className: [
1113
+ R.tab,
1114
+ i ? R.active : null,
1115
+ o ? R.closeable : null,
1116
+ c
1117
+ ].filter(Boolean).join(" "),
1118
+ ...u,
1119
+ children: [
1120
+ r && /* @__PURE__ */ t("span", {
1121
+ className: R.tabIcon,
1122
+ children: /* @__PURE__ */ t(F, {
1123
+ icon: r,
1124
+ size: "sm",
1125
+ "aria-hidden": !0
1126
+ })
1127
+ }),
1128
+ /* @__PURE__ */ t("span", {
1129
+ className: R.tabLabel,
1130
+ children: e
1131
+ }),
1132
+ o && /* @__PURE__ */ t("span", {
1133
+ role: "button",
1134
+ tabIndex: 0,
1135
+ "aria-label": s,
1136
+ className: R.closeBtn,
1137
+ onClick: (e) => {
1138
+ e.stopPropagation(), o();
1139
+ },
1140
+ onKeyDown: (e) => {
1141
+ (e.key === "Enter" || e.key === " ") && (e.preventDefault(), e.stopPropagation(), o());
1142
+ },
1143
+ children: "×"
1144
+ })
1145
+ ]
1146
+ });
1147
+ }
1148
+ //#endregion
1149
+ //#region src/components/Tabs/TabPanel.tsx
1150
+ function wt({ id: e, active: n = !1, className: r, children: i, ...a }) {
1151
+ return /* @__PURE__ */ t("div", {
1152
+ id: e,
1153
+ role: "tabpanel",
1154
+ hidden: !n,
1155
+ tabIndex: 0,
1156
+ className: [R.panel, r].filter(Boolean).join(" "),
1157
+ ...a,
1158
+ children: i
1159
+ });
1160
+ }
1161
+ var z = {
1162
+ row: "_row_17clq_3",
1163
+ leading: "_leading_17clq_16",
1164
+ content: "_content_17clq_25",
1165
+ title: "_title_17clq_33",
1166
+ subtitle: "_subtitle_17clq_44",
1167
+ trailing: "_trailing_17clq_58",
1168
+ propertyLabel: "_propertyLabel_17clq_68",
1169
+ propertyValue: "_propertyValue_17clq_81",
1170
+ interactive: "_interactive_17clq_94"
1171
+ };
1172
+ //#endregion
1173
+ //#region src/components/ActionRow/ActionRow.tsx
1174
+ function Tt({ title: e, subtitle: r, leading: i, trailing: a, interactive: o = !1, variant: s = "default", className: c, ...l }) {
1175
+ let u = o ? "button" : "div", d = s === "property";
1176
+ return /* @__PURE__ */ n(u, {
1177
+ className: [
1178
+ z.row,
1179
+ o ? z.interactive : null,
1180
+ d ? z.property : null,
1181
+ c
1182
+ ].filter(Boolean).join(" "),
1183
+ ...l,
1184
+ children: [
1185
+ i && /* @__PURE__ */ t("span", {
1186
+ className: z.leading,
1187
+ children: i
1188
+ }),
1189
+ /* @__PURE__ */ n("span", {
1190
+ className: z.content,
1191
+ children: [/* @__PURE__ */ t("span", {
1192
+ className: d ? z.propertyLabel : z.title,
1193
+ children: e
1194
+ }), r && /* @__PURE__ */ t("span", {
1195
+ className: d ? z.propertyValue : z.subtitle,
1196
+ children: r
1197
+ })]
1198
+ }),
1199
+ a && /* @__PURE__ */ t("span", {
1200
+ className: z.trailing,
1201
+ children: a
1202
+ })
1203
+ ]
1204
+ });
1205
+ }
1206
+ var Et = {
1207
+ list: "_list_1mn4t_3",
1208
+ item: "_item_1mn4t_17",
1209
+ divider: "_divider_1mn4t_25",
1210
+ separate: "_separate_1mn4t_34",
1211
+ separateItem: "_separateItem_1mn4t_44"
1212
+ };
1213
+ //#endregion
1214
+ //#region src/components/BoxedList/BoxedList.tsx
1215
+ function Dt({ children: e, variant: i = "default", className: a, ...o }) {
1216
+ let s = r.toArray(e).filter(Boolean), c = i === "separate";
1217
+ return /* @__PURE__ */ t("ul", {
1218
+ role: "list",
1219
+ className: [
1220
+ Et.list,
1221
+ c ? Et.separate : null,
1222
+ a
1223
+ ].filter(Boolean).join(" "),
1224
+ ...o,
1225
+ children: s.map((e, r) => /* @__PURE__ */ n("li", {
1226
+ className: c ? Et.separateItem : Et.item,
1227
+ children: [!c && r > 0 && /* @__PURE__ */ t("div", {
1228
+ className: Et.divider,
1229
+ "aria-hidden": "true"
1230
+ }), e]
1231
+ }, r))
1232
+ });
1233
+ }
1234
+ var Ot = {
1235
+ switcher: "_switcher_1uh9r_3",
1236
+ item: "_item_1uh9r_18",
1237
+ active: "_active_1uh9r_45",
1238
+ itemIcon: "_itemIcon_1uh9r_76",
1239
+ itemLabel: "_itemLabel_1uh9r_84"
1240
+ };
1241
+ //#endregion
1242
+ //#region src/components/ViewSwitcher/ViewSwitcher.tsx
1243
+ function kt({ children: e, className: n, "aria-label": r = "View switcher", ...i }) {
1244
+ let a = d(null);
1245
+ function o(e) {
1246
+ let t = Array.from(a.current?.querySelectorAll("[role=radio]:not(:disabled)") ?? []), n = t.findIndex((e) => e === document.activeElement);
1247
+ if (n === -1) return;
1248
+ let r = n;
1249
+ if (e.key === "ArrowRight" || e.key === "ArrowDown") r = (n + 1) % t.length;
1250
+ else if (e.key === "ArrowLeft" || e.key === "ArrowUp") r = (n - 1 + t.length) % t.length;
1251
+ else if (e.key === "Home") r = 0;
1252
+ else if (e.key === "End") r = t.length - 1;
1253
+ else return;
1254
+ e.preventDefault(), t[r].focus(), t[r].click();
1255
+ }
1256
+ return /* @__PURE__ */ t("div", {
1257
+ ref: a,
1258
+ role: "radiogroup",
1259
+ "aria-label": r,
1260
+ onKeyDown: o,
1261
+ className: [Ot.switcher, n].filter(Boolean).join(" "),
1262
+ ...i,
1263
+ children: e
1264
+ });
1265
+ }
1266
+ //#endregion
1267
+ //#region src/components/ViewSwitcher/ViewSwitcherItem.tsx
1268
+ function At({ label: e, icon: r, active: i = !1, className: a, disabled: o, ...s }) {
1269
+ return /* @__PURE__ */ n("button", {
1270
+ type: "button",
1271
+ role: "radio",
1272
+ "aria-checked": i,
1273
+ tabIndex: i ? 0 : -1,
1274
+ disabled: o,
1275
+ className: [
1276
+ Ot.item,
1277
+ i ? Ot.active : null,
1278
+ a
1279
+ ].filter(Boolean).join(" "),
1280
+ ...s,
1281
+ children: [r && /* @__PURE__ */ t("span", {
1282
+ className: Ot.itemIcon,
1283
+ children: /* @__PURE__ */ t(F, {
1284
+ icon: r,
1285
+ size: "md",
1286
+ "aria-hidden": !0
1287
+ })
1288
+ }), /* @__PURE__ */ t("span", {
1289
+ className: Ot.itemLabel,
1290
+ children: e
1291
+ })]
1292
+ });
1293
+ }
1294
+ //#endregion
1295
+ //#region src/components/Toast/Toast.module.css
1296
+ var jt = "_toaster_1tgvb_3", Mt = "_toasterBottom_1tgvb_18", Nt = "_toasterTop_1tgvb_22", Pt = "_toast_1tgvb_3", Ft = "_title_1tgvb_69", It = "_actions_1tgvb_76", Lt = "_actionBtn_1tgvb_85", Rt = "_dismissBtn_1tgvb_118", zt = {
1297
+ toaster: jt,
1298
+ toasterBottom: Mt,
1299
+ toasterTop: Nt,
1300
+ toast: Pt,
1301
+ "toast-in": "_toast-in_1tgvb_1",
1302
+ title: Ft,
1303
+ actions: It,
1304
+ actionBtn: Lt,
1305
+ dismissBtn: Rt
1306
+ };
1307
+ //#endregion
1308
+ //#region src/components/Toast/Toast.tsx
1309
+ function Bt({ title: e, duration: r = 3e3, onDismiss: i, actionLabel: a, onAction: o, dismissible: s = !1, className: c, ...u }) {
1310
+ let f = d(null), p = d(r), m = d(0), h = () => {
1311
+ f.current &&= (clearTimeout(f.current), null);
1312
+ }, g = (e) => {
1313
+ e <= 0 || !i || (h(), m.current = Date.now(), f.current = setTimeout(() => i(), e));
1314
+ };
1315
+ l(() => (r > 0 && (p.current = r, g(r)), h), [r]);
1316
+ let _ = () => {
1317
+ if (f.current) {
1318
+ let e = Date.now() - m.current;
1319
+ p.current = Math.max(0, p.current - e), h();
1320
+ }
1321
+ }, v = () => {
1322
+ g(p.current);
1323
+ }, y = () => {
1324
+ h(), o?.(), i?.();
1325
+ };
1326
+ return /* @__PURE__ */ n("div", {
1327
+ role: "status",
1328
+ "aria-live": "polite",
1329
+ "aria-atomic": "true",
1330
+ className: [zt.toast, c].filter(Boolean).join(" "),
1331
+ onMouseEnter: _,
1332
+ onMouseLeave: v,
1333
+ onFocus: _,
1334
+ onBlur: v,
1335
+ ...u,
1336
+ children: [/* @__PURE__ */ t("span", {
1337
+ className: zt.title,
1338
+ children: e
1339
+ }), (a || s) && /* @__PURE__ */ n("span", {
1340
+ className: zt.actions,
1341
+ children: [a && /* @__PURE__ */ t("button", {
1342
+ type: "button",
1343
+ className: zt.actionBtn,
1344
+ onClick: y,
1345
+ children: a
1346
+ }), s && /* @__PURE__ */ t("button", {
1347
+ type: "button",
1348
+ className: zt.dismissBtn,
1349
+ "aria-label": "Dismiss",
1350
+ onClick: () => {
1351
+ h(), i?.();
1352
+ },
1353
+ children: /* @__PURE__ */ t(F, {
1354
+ icon: Ne,
1355
+ size: "md",
1356
+ "aria-hidden": !0
1357
+ })
1358
+ })]
1359
+ })]
1360
+ });
1361
+ }
1362
+ //#endregion
1363
+ //#region src/components/Toast/Toaster.tsx
1364
+ function Vt({ position: e = "bottom", children: n, container: r, className: i, ...a }) {
1365
+ let o = /* @__PURE__ */ t("div", {
1366
+ "aria-label": "Notifications",
1367
+ className: [
1368
+ zt.toaster,
1369
+ e === "top" ? zt.toasterTop : zt.toasterBottom,
1370
+ i
1371
+ ].filter(Boolean).join(" "),
1372
+ ...a,
1373
+ children: n
1374
+ });
1375
+ return typeof document > "u" ? o : p(o, r ?? document.body);
1376
+ }
1377
+ //#endregion
1378
+ //#region src/components/Dialog/Dialog.module.css
1379
+ var Ht = "_backdrop_zx0yn_3", Ut = "_dialog_zx0yn_26", Wt = "_title_zx0yn_56", Gt = "_body_zx0yn_70", Kt = "_footer_zx0yn_85", qt = "_btn_zx0yn_92", Jt = "_dialogAbout_zx0yn_155", Yt = "_aboutHeader_zx0yn_162", Xt = "_aboutIcon_zx0yn_171", Zt = "_aboutAppName_zx0yn_180", Qt = "_aboutVersion_zx0yn_187", $t = "_aboutTabBar_zx0yn_194", en = "_aboutTabBtn_zx0yn_201", tn = "_aboutTabBtnActive_zx0yn_220", nn = "_aboutTabContent_zx0yn_233", rn = "_aboutSection_zx0yn_238", an = "_aboutComments_zx0yn_243", on = "_aboutInfoList_zx0yn_252", sn = "_aboutInfoLabel_zx0yn_259", cn = "_aboutInfoValue_zx0yn_267", ln = "_aboutLink_zx0yn_275", un = "_aboutCreditGroup_zx0yn_283", dn = "_aboutCreditTitle_zx0yn_287", fn = "_aboutCreditList_zx0yn_297", pn = "_aboutCreditItem_zx0yn_306", mn = "_aboutCopyright_zx0yn_312", hn = "_aboutLicenseType_zx0yn_319", gn = "_aboutLicenseText_zx0yn_326", B = {
1380
+ backdrop: Ht,
1381
+ "backdrop-in": "_backdrop-in_zx0yn_1",
1382
+ dialog: Ut,
1383
+ "dialog-in": "_dialog-in_zx0yn_1",
1384
+ title: Wt,
1385
+ body: Gt,
1386
+ footer: Kt,
1387
+ btn: qt,
1388
+ "btn-default": "_btn-default_zx0yn_140",
1389
+ "btn-suggested": "_btn-suggested_zx0yn_144",
1390
+ "btn-destructive": "_btn-destructive_zx0yn_149",
1391
+ dialogAbout: Jt,
1392
+ aboutHeader: Yt,
1393
+ aboutIcon: Xt,
1394
+ aboutAppName: Zt,
1395
+ aboutVersion: Qt,
1396
+ aboutTabBar: $t,
1397
+ aboutTabBtn: en,
1398
+ aboutTabBtnActive: tn,
1399
+ aboutTabContent: nn,
1400
+ aboutSection: rn,
1401
+ aboutComments: an,
1402
+ aboutInfoList: on,
1403
+ aboutInfoLabel: sn,
1404
+ aboutInfoValue: cn,
1405
+ aboutLink: ln,
1406
+ aboutCreditGroup: un,
1407
+ aboutCreditTitle: dn,
1408
+ aboutCreditList: fn,
1409
+ aboutCreditItem: pn,
1410
+ aboutCopyright: mn,
1411
+ aboutLicenseType: hn,
1412
+ aboutLicenseText: gn
1413
+ }, _n = "button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"])";
1414
+ function vn(e, t) {
1415
+ if (e.key !== "Tab") return;
1416
+ let n = Array.from(t.current?.querySelectorAll(_n) ?? []);
1417
+ if (!n.length) return;
1418
+ let r = n[0], i = n[n.length - 1];
1419
+ e.shiftKey ? document.activeElement === r && (e.preventDefault(), i.focus()) : document.activeElement === i && (e.preventDefault(), r.focus());
1420
+ }
1421
+ var yn = {
1422
+ details: "Details",
1423
+ credits: "Credits",
1424
+ legal: "Legal"
1425
+ };
1426
+ function bn({ open: r, title: i, children: a, buttons: o = [], onClose: c, closeOnBackdrop: m = !0, role: h = "dialog", responses: g, onResponse: _, variant: v, applicationName: y, applicationIcon: b, version: x, comments: S, developerName: C, website: w, websiteLabel: T, developers: E, designers: D, artists: O, copyright: k, licenseType: A, licenseText: j, links: M, className: N, ...P }) {
1427
+ let ee = d(null), te = u(), ne = d(null), [re, ie] = f("details"), ae = !!g, oe = v === "about";
1428
+ l(() => {
1429
+ r ? (ne.current = document.activeElement, (ee.current?.querySelector(_n))?.focus()) : (ne.current?.focus(), oe && ie("details"));
1430
+ }, [r, oe]);
1431
+ let se = s(() => {
1432
+ let e = g?.find((e) => e.variant !== "destructive" && !e.disabled);
1433
+ e && _?.(e.id);
1434
+ }, [g, _]), ce = ae ? se : m ? c : void 0, le = s((e) => {
1435
+ if (e.key === "Escape") {
1436
+ e.preventDefault(), ae ? se() : c?.();
1437
+ return;
1438
+ }
1439
+ vn(e, ee);
1440
+ }, [
1441
+ ae,
1442
+ se,
1443
+ c
1444
+ ]);
1445
+ if (!r) return null;
1446
+ let ue = [
1447
+ "details",
1448
+ !!(E?.length || D?.length || O?.length) && "credits",
1449
+ !!(k || A || j) && "legal"
1450
+ ].filter(Boolean), de = () => oe ? /* @__PURE__ */ t("div", {
1451
+ className: B.footer,
1452
+ children: /* @__PURE__ */ t("button", {
1453
+ type: "button",
1454
+ className: [B.btn, B["btn-default"]].join(" "),
1455
+ onClick: c,
1456
+ children: "Close"
1457
+ })
1458
+ }) : ae && g ? /* @__PURE__ */ t("div", {
1459
+ className: B.footer,
1460
+ children: g.map((e) => /* @__PURE__ */ t("button", {
1461
+ type: "button",
1462
+ disabled: e.disabled,
1463
+ className: [B.btn, B[`btn-${e.variant ?? "default"}`]].filter(Boolean).join(" "),
1464
+ onClick: () => _?.(e.id),
1465
+ children: e.label
1466
+ }, e.id))
1467
+ }) : o.length > 0 ? /* @__PURE__ */ t("div", {
1468
+ className: B.footer,
1469
+ children: o.map((e) => /* @__PURE__ */ t("button", {
1470
+ type: "button",
1471
+ disabled: e.disabled,
1472
+ className: [B.btn, B[`btn-${e.variant ?? "default"}`]].filter(Boolean).join(" "),
1473
+ onClick: e.onClick,
1474
+ children: e.label
1475
+ }, e.label))
1476
+ }) : null, fe = () => /* @__PURE__ */ n(e, { children: [
1477
+ /* @__PURE__ */ n("div", {
1478
+ className: B.aboutHeader,
1479
+ children: [
1480
+ b && /* @__PURE__ */ t("div", {
1481
+ className: B.aboutIcon,
1482
+ children: b
1483
+ }),
1484
+ /* @__PURE__ */ t("div", {
1485
+ id: te,
1486
+ className: B.aboutAppName,
1487
+ children: y
1488
+ }),
1489
+ x && /* @__PURE__ */ t("div", {
1490
+ className: B.aboutVersion,
1491
+ children: x
1492
+ })
1493
+ ]
1494
+ }),
1495
+ ue.length > 1 && /* @__PURE__ */ t("div", {
1496
+ className: B.aboutTabBar,
1497
+ role: "tablist",
1498
+ children: ue.map((e) => /* @__PURE__ */ t("button", {
1499
+ type: "button",
1500
+ role: "tab",
1501
+ "aria-selected": re === e,
1502
+ className: [B.aboutTabBtn, re === e ? B.aboutTabBtnActive : null].filter(Boolean).join(" "),
1503
+ onClick: () => ie(e),
1504
+ children: yn[e]
1505
+ }, e))
1506
+ }),
1507
+ /* @__PURE__ */ n("div", {
1508
+ className: B.aboutTabContent,
1509
+ children: [
1510
+ re === "details" && /* @__PURE__ */ n("div", {
1511
+ className: B.aboutSection,
1512
+ children: [S && /* @__PURE__ */ t("p", {
1513
+ className: B.aboutComments,
1514
+ children: S
1515
+ }), (C || w || M?.length) && /* @__PURE__ */ n("dl", {
1516
+ className: B.aboutInfoList,
1517
+ children: [
1518
+ C && /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ t("dt", {
1519
+ className: B.aboutInfoLabel,
1520
+ children: "Developer"
1521
+ }), /* @__PURE__ */ t("dd", {
1522
+ className: B.aboutInfoValue,
1523
+ children: C
1524
+ })] }),
1525
+ w && /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ t("dt", {
1526
+ className: B.aboutInfoLabel,
1527
+ children: "Website"
1528
+ }), /* @__PURE__ */ t("dd", {
1529
+ className: B.aboutInfoValue,
1530
+ children: /* @__PURE__ */ t("a", {
1531
+ href: w,
1532
+ target: "_blank",
1533
+ rel: "noopener noreferrer",
1534
+ className: B.aboutLink,
1535
+ children: T ?? w
1536
+ })
1537
+ })] }),
1538
+ M?.map((r) => /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ t("dt", {
1539
+ className: B.aboutInfoLabel,
1540
+ children: r.label
1541
+ }, `${r.label}-dt`), /* @__PURE__ */ t("dd", {
1542
+ className: B.aboutInfoValue,
1543
+ children: /* @__PURE__ */ t("a", {
1544
+ href: r.url,
1545
+ target: "_blank",
1546
+ rel: "noopener noreferrer",
1547
+ className: B.aboutLink,
1548
+ children: r.url
1549
+ })
1550
+ }, `${r.label}-dd`)] }))
1551
+ ]
1552
+ })]
1553
+ }),
1554
+ re === "credits" && /* @__PURE__ */ t("div", {
1555
+ className: B.aboutSection,
1556
+ children: [
1557
+ {
1558
+ heading: "Developers",
1559
+ list: E
1560
+ },
1561
+ {
1562
+ heading: "Designers",
1563
+ list: D
1564
+ },
1565
+ {
1566
+ heading: "Artists",
1567
+ list: O
1568
+ }
1569
+ ].filter((e) => e.list?.length).map(({ heading: e, list: r }) => /* @__PURE__ */ n("div", {
1570
+ className: B.aboutCreditGroup,
1571
+ children: [/* @__PURE__ */ t("h4", {
1572
+ className: B.aboutCreditTitle,
1573
+ children: e
1574
+ }), /* @__PURE__ */ t("ul", {
1575
+ className: B.aboutCreditList,
1576
+ children: r.map((e) => /* @__PURE__ */ t("li", {
1577
+ className: B.aboutCreditItem,
1578
+ children: e
1579
+ }, e))
1580
+ })]
1581
+ }, e))
1582
+ }),
1583
+ re === "legal" && /* @__PURE__ */ n("div", {
1584
+ className: B.aboutSection,
1585
+ children: [
1586
+ k && /* @__PURE__ */ t("p", {
1587
+ className: B.aboutCopyright,
1588
+ children: k
1589
+ }),
1590
+ A && /* @__PURE__ */ t("p", {
1591
+ className: B.aboutLicenseType,
1592
+ children: A
1593
+ }),
1594
+ j && /* @__PURE__ */ t("pre", {
1595
+ className: B.aboutLicenseText,
1596
+ children: j
1597
+ })
1598
+ ]
1599
+ })
1600
+ ]
1601
+ })
1602
+ ] }), pe = /* @__PURE__ */ t("div", {
1603
+ className: B.backdrop,
1604
+ onClick: ce,
1605
+ "aria-hidden": "true",
1606
+ children: /* @__PURE__ */ n("div", {
1607
+ ref: ee,
1608
+ role: h,
1609
+ "aria-modal": "true",
1610
+ "aria-labelledby": te,
1611
+ className: [
1612
+ B.dialog,
1613
+ oe ? B.dialogAbout : null,
1614
+ N
1615
+ ].filter(Boolean).join(" "),
1616
+ onKeyDown: le,
1617
+ onClick: (e) => e.stopPropagation(),
1618
+ ...P,
1619
+ children: [oe ? fe() : /* @__PURE__ */ n(e, { children: [i && /* @__PURE__ */ t("div", {
1620
+ id: te,
1621
+ className: B.title,
1622
+ children: i
1623
+ }), a && /* @__PURE__ */ t("div", {
1624
+ className: B.body,
1625
+ children: a
1626
+ })] }), de()]
1627
+ })
1628
+ });
1629
+ return typeof document > "u" ? pe : p(pe, document.body);
1630
+ }
1631
+ //#endregion
1632
+ //#region src/components/Dropdown/Dropdown.module.css
1633
+ var xn = "_wrapper_1hi05_3", Sn = "_trigger_1hi05_11", Cn = "_triggerOpen_1hi05_63", wn = "_triggerLabel_1hi05_73", Tn = "_placeholder_1hi05_81", En = "_chevron_1hi05_87", Dn = "_chevronOpen_1hi05_94", On = "_list_1hi05_100", kn = "_listDown_1hi05_129", An = "_listUp_1hi05_133", jn = "_option_1hi05_145", Mn = "_optionActive_1hi05_162", Nn = "_optionSelected_1hi05_166", Pn = "_optionDisabled_1hi05_170", Fn = "_optionText_1hi05_178", In = "_optionLabel_1hi05_186", Ln = "_optionDesc_1hi05_192", Rn = "_checkIcon_1hi05_202", V = {
1634
+ wrapper: xn,
1635
+ trigger: Sn,
1636
+ triggerOpen: Cn,
1637
+ triggerLabel: wn,
1638
+ placeholder: Tn,
1639
+ chevron: En,
1640
+ chevronOpen: Dn,
1641
+ list: On,
1642
+ "list-in": "_list-in_1hi05_1",
1643
+ listDown: kn,
1644
+ listUp: An,
1645
+ "list-in-up": "_list-in-up_1hi05_1",
1646
+ option: jn,
1647
+ optionActive: Mn,
1648
+ optionSelected: Nn,
1649
+ optionDisabled: Pn,
1650
+ optionText: Fn,
1651
+ optionLabel: In,
1652
+ optionDesc: Ln,
1653
+ checkIcon: Rn
1654
+ };
1655
+ //#endregion
1656
+ //#region src/components/Dropdown/Dropdown.tsx
1657
+ function zn({ options: e, value: r, onChange: i, placeholder: a = "Select an option", disabled: o, className: c, ...p }) {
1658
+ let [m, h] = f(!1), [g, _] = f(-1), [v, y] = f(!1), b = u(), x = u(), S = d(null), C = d(null), w = e.find((e) => e.value === r), T = s(() => {
1659
+ if (!S.current) return;
1660
+ let t = S.current.getBoundingClientRect(), n = window.innerHeight - t.bottom, r = Math.min(e.length * 48 + 8, 280);
1661
+ y(n < r && t.top > r);
1662
+ }, [e.length]), E = s(() => {
1663
+ if (o) return;
1664
+ T(), h(!0);
1665
+ let t = e.findIndex((e) => e.value === r && !e.disabled);
1666
+ _(t >= 0 ? t : e.findIndex((e) => !e.disabled));
1667
+ }, [
1668
+ o,
1669
+ T,
1670
+ e,
1671
+ r
1672
+ ]), D = s(() => {
1673
+ h(!1), _(-1), S.current?.focus();
1674
+ }, []), O = s((e) => {
1675
+ e.disabled || (i?.(e.value), D());
1676
+ }, [i, D]);
1677
+ l(() => {
1678
+ !m || g < 0 || !C.current || C.current.children[g]?.scrollIntoView({ block: "nearest" });
1679
+ }, [g, m]), l(() => {
1680
+ if (!m) return;
1681
+ let e = (e) => {
1682
+ !S.current?.contains(e.target) && !C.current?.contains(e.target) && D();
1683
+ };
1684
+ return document.addEventListener("mousedown", e), () => document.removeEventListener("mousedown", e);
1685
+ }, [m, D]);
1686
+ let k = s((t) => {
1687
+ switch (t.key) {
1688
+ case "Enter":
1689
+ case " ":
1690
+ case "ArrowDown":
1691
+ t.preventDefault(), E();
1692
+ break;
1693
+ case "ArrowUp":
1694
+ t.preventDefault(), T(), h(!0), _(e.reduce((e, t, n) => t.disabled ? e : n, -1));
1695
+ break;
1696
+ }
1697
+ }, [
1698
+ E,
1699
+ T,
1700
+ e
1701
+ ]), A = s((t) => {
1702
+ let n = e.map((e, t) => ({
1703
+ o: e,
1704
+ i: t
1705
+ })).filter(({ o: e }) => !e.disabled).map(({ i: e }) => e), r = n.indexOf(g);
1706
+ switch (t.key) {
1707
+ case "ArrowDown": {
1708
+ t.preventDefault();
1709
+ let e = n[Math.min(r + 1, n.length - 1)];
1710
+ _(e ?? g);
1711
+ break;
1712
+ }
1713
+ case "ArrowUp": {
1714
+ t.preventDefault();
1715
+ let e = n[Math.max(r - 1, 0)];
1716
+ _(e ?? g);
1717
+ break;
1718
+ }
1719
+ case "Home":
1720
+ t.preventDefault(), _(n[0] ?? -1);
1721
+ break;
1722
+ case "End":
1723
+ t.preventDefault(), _(n[n.length - 1] ?? -1);
1724
+ break;
1725
+ case "Enter":
1726
+ case " ":
1727
+ t.preventDefault(), g >= 0 && O(e[g]);
1728
+ break;
1729
+ case "Escape":
1730
+ case "Tab":
1731
+ D();
1732
+ break;
1733
+ }
1734
+ }, [
1735
+ e,
1736
+ g,
1737
+ O,
1738
+ D
1739
+ ]);
1740
+ return /* @__PURE__ */ n("div", {
1741
+ className: [V.wrapper, c].filter(Boolean).join(" "),
1742
+ ...p,
1743
+ children: [/* @__PURE__ */ n("button", {
1744
+ ref: S,
1745
+ id: b,
1746
+ type: "button",
1747
+ role: "combobox",
1748
+ "aria-haspopup": "listbox",
1749
+ "aria-expanded": m,
1750
+ "aria-controls": x,
1751
+ "aria-activedescendant": m && g >= 0 ? `${x}-opt-${g}` : void 0,
1752
+ disabled: o,
1753
+ className: [V.trigger, m ? V.triggerOpen : null].filter(Boolean).join(" "),
1754
+ onClick: () => m ? D() : E(),
1755
+ onKeyDown: k,
1756
+ children: [/* @__PURE__ */ t("span", {
1757
+ className: [V.triggerLabel, w ? null : V.placeholder].filter(Boolean).join(" "),
1758
+ children: w?.label ?? a
1759
+ }), /* @__PURE__ */ t(F, {
1760
+ icon: Me,
1761
+ size: "md",
1762
+ "aria-hidden": !0,
1763
+ className: [V.chevron, m ? V.chevronOpen : null].filter(Boolean).join(" ")
1764
+ })]
1765
+ }), m && /* @__PURE__ */ t("ul", {
1766
+ ref: C,
1767
+ id: x,
1768
+ role: "listbox",
1769
+ "aria-labelledby": b,
1770
+ tabIndex: -1,
1771
+ className: [V.list, v ? V.listUp : V.listDown].filter(Boolean).join(" "),
1772
+ onKeyDown: A,
1773
+ children: e.map((e, i) => /* @__PURE__ */ n("li", {
1774
+ id: `${x}-opt-${i}`,
1775
+ role: "option",
1776
+ "aria-selected": e.value === r,
1777
+ "aria-disabled": e.disabled,
1778
+ className: [
1779
+ V.option,
1780
+ e.value === r ? V.optionSelected : null,
1781
+ i === g ? V.optionActive : null,
1782
+ e.disabled ? V.optionDisabled : null
1783
+ ].filter(Boolean).join(" "),
1784
+ onMouseEnter: () => !e.disabled && _(i),
1785
+ onClick: () => O(e),
1786
+ children: [/* @__PURE__ */ n("span", {
1787
+ className: V.optionText,
1788
+ children: [/* @__PURE__ */ t("span", {
1789
+ className: V.optionLabel,
1790
+ children: e.label
1791
+ }), e.description && /* @__PURE__ */ t("span", {
1792
+ className: V.optionDesc,
1793
+ children: e.description
1794
+ })]
1795
+ }), e.value === r && /* @__PURE__ */ t(F, {
1796
+ icon: Le,
1797
+ size: "md",
1798
+ "aria-hidden": !0,
1799
+ className: V.checkIcon
1800
+ })]
1801
+ }, e.value))
1802
+ })]
1803
+ });
1804
+ }
1805
+ var H = {
1806
+ wrapper: "_wrapper_11zhs_3",
1807
+ hasLabels: "_hasLabels_11zhs_11",
1808
+ track: "_track_11zhs_17",
1809
+ disabled: "_disabled_11zhs_42",
1810
+ fill: "_fill_11zhs_50",
1811
+ thumb: "_thumb_11zhs_64",
1812
+ tick: "_tick_11zhs_97",
1813
+ labels: "_labels_11zhs_112",
1814
+ markLabel: "_markLabel_11zhs_119"
1815
+ };
1816
+ //#endregion
1817
+ //#region src/components/Slider/Slider.tsx
1818
+ function Bn(e, t, n) {
1819
+ return Math.min(n, Math.max(t, e));
1820
+ }
1821
+ function Vn(e, t, n, r) {
1822
+ return parseFloat((Math.round((e - t) / n) * n + t).toFixed(r));
1823
+ }
1824
+ function Hn(e) {
1825
+ let t = e.toString(), n = t.indexOf(".");
1826
+ return n === -1 ? 0 : t.length - n - 1;
1827
+ }
1828
+ function Un({ value: e, onChange: r, min: i = 0, max: a = 100, step: o = 1, disabled: c = !1, marks: l, className: u, "aria-label": f, "aria-labelledby": p, "aria-describedby": m, ...h }) {
1829
+ let g = d(null), _ = Hn(o), v = (Bn(e, i, a) - i) / (a - i) * 100, y = s((e) => {
1830
+ if (!g.current) return;
1831
+ let { left: t, width: n } = g.current.getBoundingClientRect();
1832
+ r(Bn(Vn((e - t) / n * (a - i) + i, i, o, _), i, a));
1833
+ }, [
1834
+ i,
1835
+ a,
1836
+ o,
1837
+ _,
1838
+ r
1839
+ ]), b = s((e) => {
1840
+ c || (e.currentTarget.setPointerCapture(e.pointerId), y(e.clientX));
1841
+ }, [c, y]), x = s((e) => {
1842
+ e.currentTarget.hasPointerCapture(e.pointerId) && y(e.clientX);
1843
+ }, [y]), S = s((t) => {
1844
+ let n = (e) => {
1845
+ t.preventDefault(), r(Bn(Vn(e, i, o, _), i, a));
1846
+ };
1847
+ switch (t.key) {
1848
+ case "ArrowRight":
1849
+ case "ArrowUp":
1850
+ n(e + o);
1851
+ break;
1852
+ case "ArrowLeft":
1853
+ case "ArrowDown":
1854
+ n(e - o);
1855
+ break;
1856
+ case "PageUp":
1857
+ n(e + o * 10);
1858
+ break;
1859
+ case "PageDown":
1860
+ n(e - o * 10);
1861
+ break;
1862
+ case "Home":
1863
+ n(i);
1864
+ break;
1865
+ case "End":
1866
+ n(a);
1867
+ break;
1868
+ }
1869
+ }, [
1870
+ e,
1871
+ o,
1872
+ i,
1873
+ a,
1874
+ _,
1875
+ r
1876
+ ]), C = l && l.length > 0, w = C && l.some((e) => e.label);
1877
+ return /* @__PURE__ */ n("div", {
1878
+ className: [
1879
+ H.wrapper,
1880
+ w ? H.hasLabels : null,
1881
+ u
1882
+ ].filter(Boolean).join(" "),
1883
+ ...h,
1884
+ children: [/* @__PURE__ */ n("div", {
1885
+ ref: g,
1886
+ role: "slider",
1887
+ tabIndex: c ? -1 : 0,
1888
+ "aria-valuemin": i,
1889
+ "aria-valuemax": a,
1890
+ "aria-valuenow": e,
1891
+ "aria-label": f,
1892
+ "aria-labelledby": p,
1893
+ "aria-describedby": m,
1894
+ "aria-disabled": c || void 0,
1895
+ className: [H.track, c ? H.disabled : null].filter(Boolean).join(" "),
1896
+ onPointerDown: b,
1897
+ onPointerMove: x,
1898
+ onKeyDown: c ? void 0 : S,
1899
+ children: [
1900
+ /* @__PURE__ */ t("div", {
1901
+ className: H.fill,
1902
+ style: { width: `${v}%` }
1903
+ }),
1904
+ /* @__PURE__ */ t("div", {
1905
+ className: H.thumb,
1906
+ style: { left: `${v}%` },
1907
+ "aria-hidden": "true"
1908
+ }),
1909
+ C && l.map((e) => {
1910
+ let n = (Bn(e.value, i, a) - i) / (a - i) * 100;
1911
+ return /* @__PURE__ */ t("div", {
1912
+ className: H.tick,
1913
+ style: { left: `${n}%` },
1914
+ "aria-hidden": "true"
1915
+ }, e.value);
1916
+ })
1917
+ ]
1918
+ }), w && /* @__PURE__ */ t("div", {
1919
+ className: H.labels,
1920
+ "aria-hidden": "true",
1921
+ children: l.map((e) => {
1922
+ let n = (Bn(e.value, i, a) - i) / (a - i) * 100;
1923
+ return /* @__PURE__ */ t("span", {
1924
+ className: H.markLabel,
1925
+ style: { left: `${n}%` },
1926
+ children: e.label
1927
+ }, e.value);
1928
+ })
1929
+ })]
1930
+ });
1931
+ }
1932
+ var Wn = {
1933
+ panel: "_panel_1tk9v_3",
1934
+ visible: "_visible_1tk9v_36",
1935
+ arrow: "_arrow_1tk9v_44",
1936
+ bottom: "_bottom_1tk9v_59",
1937
+ top: "_top_1tk9v_67",
1938
+ left: "_left_1tk9v_75",
1939
+ right: "_right_1tk9v_83"
1940
+ }, Gn = 8, Kn = 8;
1941
+ function qn(e, t, n) {
1942
+ let r = window.innerWidth, i = window.innerHeight, a = [...new Set([
1943
+ n,
1944
+ n === "top" ? "bottom" : n === "bottom" ? "top" : n === "left" ? "right" : "left",
1945
+ "bottom",
1946
+ "top",
1947
+ "left",
1948
+ "right"
1949
+ ])];
1950
+ for (let n of a) {
1951
+ let a = 0, o = 0;
1952
+ n === "bottom" ? (a = e.bottom + Gn, o = e.left + e.width / 2 - t.width / 2) : n === "top" ? (a = e.top - t.height - Gn, o = e.left + e.width / 2 - t.width / 2) : n === "left" ? (a = e.top + e.height / 2 - t.height / 2, o = e.left - t.width - Gn) : (a = e.top + e.height / 2 - t.height / 2, o = e.right + Gn);
1953
+ let s = o >= Kn && o + t.width <= r - Kn, c = a >= Kn && a + t.height <= i - Kn;
1954
+ if (s && c) return {
1955
+ top: a,
1956
+ left: o,
1957
+ placement: n
1958
+ };
1959
+ }
1960
+ let o = e.bottom + Gn, s = e.left + e.width / 2 - t.width / 2;
1961
+ return {
1962
+ top: Math.max(Kn, Math.min(o, i - t.height - Kn)),
1963
+ left: Math.max(Kn, Math.min(s, r - t.width - Kn)),
1964
+ placement: "bottom"
1965
+ };
1966
+ }
1967
+ function Jn({ content: r, placement: a = "bottom", open: o, onClose: c, onOpenChange: m, children: h }) {
1968
+ let g = o !== void 0, [_, v] = f(!1), y = g ? o : _, [b, x] = f(null), S = u(), C = u(), w = d(null), T = d(null), E = d(null), D = s(() => {
1969
+ g ? c?.() : v(!1), m?.(!1);
1970
+ }, [
1971
+ g,
1972
+ c,
1973
+ m
1974
+ ]), O = s(() => {
1975
+ y ? D() : (g || v(!0), m?.(!0));
1976
+ }, [
1977
+ y,
1978
+ D,
1979
+ g,
1980
+ m
1981
+ ]), k = s(() => {
1982
+ !w.current || !T.current || x(qn(w.current.getBoundingClientRect(), T.current.getBoundingClientRect(), a));
1983
+ }, [a]);
1984
+ l(() => {
1985
+ if (!y) return;
1986
+ let e = requestAnimationFrame(() => {
1987
+ k(), window.addEventListener("scroll", k, {
1988
+ passive: !0,
1989
+ capture: !0
1990
+ }), window.addEventListener("resize", k, { passive: !0 });
1991
+ });
1992
+ return () => {
1993
+ cancelAnimationFrame(e), window.removeEventListener("scroll", k, { capture: !0 }), window.removeEventListener("resize", k);
1994
+ };
1995
+ }, [y, k]), l(() => {
1996
+ y ? (E.current = document.activeElement, requestAnimationFrame(() => {
1997
+ (T.current?.querySelector("button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])") ?? T.current)?.focus();
1998
+ })) : (E.current?.focus(), x(null));
1999
+ }, [y]), l(() => {
2000
+ if (!y) return;
2001
+ let e = (e) => {
2002
+ !w.current?.contains(e.target) && !T.current?.contains(e.target) && D();
2003
+ };
2004
+ return document.addEventListener("mousedown", e), () => document.removeEventListener("mousedown", e);
2005
+ }, [y, D]);
2006
+ let A = s((e) => {
2007
+ e.key === "Escape" && (e.stopPropagation(), D());
2008
+ }, [D]), j = i(h, {
2009
+ ref: w,
2010
+ id: S,
2011
+ "aria-haspopup": "dialog",
2012
+ "aria-expanded": y,
2013
+ "aria-controls": y ? C : void 0,
2014
+ onClick: (e) => {
2015
+ O(), h.props.onClick?.(e);
2016
+ }
2017
+ }), M = /* @__PURE__ */ n("div", {
2018
+ ref: T,
2019
+ id: C,
2020
+ role: "dialog",
2021
+ "aria-labelledby": S,
2022
+ tabIndex: -1,
2023
+ className: [
2024
+ Wn.panel,
2025
+ b ? Wn[b.placement] : null,
2026
+ y && b ? Wn.visible : null
2027
+ ].filter(Boolean).join(" "),
2028
+ style: b ? {
2029
+ top: b.top,
2030
+ left: b.left
2031
+ } : {
2032
+ visibility: "hidden",
2033
+ pointerEvents: "none",
2034
+ top: -9999,
2035
+ left: -9999
2036
+ },
2037
+ onKeyDown: A,
2038
+ children: [/* @__PURE__ */ t("div", {
2039
+ className: Wn.arrow,
2040
+ "aria-hidden": "true"
2041
+ }), r]
2042
+ });
2043
+ return /* @__PURE__ */ n(e, { children: [j, y && (typeof document < "u" ? p(M, document.body) : M)] });
2044
+ }
2045
+ var Yn = { clamp: "_clamp_1j51b_6" };
2046
+ //#endregion
2047
+ //#region src/components/Clamp/Clamp.tsx
2048
+ function Xn({ maximumSize: e = 600, children: n, className: r, style: i, ...a }) {
2049
+ return /* @__PURE__ */ t("div", {
2050
+ className: [Yn.clamp, r].filter(Boolean).join(" "),
2051
+ style: {
2052
+ maxWidth: e,
2053
+ ...i
2054
+ },
2055
+ ...a,
2056
+ children: n
2057
+ });
2058
+ }
2059
+ var U = {
2060
+ root: "_root_yaj3r_3",
2061
+ expanded: "_expanded_yaj3r_12",
2062
+ sidebar: "_sidebar_yaj3r_16",
2063
+ contentPane: "_contentPane_yaj3r_22",
2064
+ collapsed: "_collapsed_yaj3r_30",
2065
+ paneVisible: "_paneVisible_yaj3r_46",
2066
+ paneHidden: "_paneHidden_yaj3r_50",
2067
+ divider: "_divider_yaj3r_67"
2068
+ };
2069
+ //#endregion
2070
+ //#region src/components/NavigationSplitView/NavigationSplitView.tsx
2071
+ function Zn({ sidebar: e, content: r, showContent: i = !1, minSidebarWidth: a = 180, maxSidebarWidth: o = 280, sidebarWidthFraction: s = .25, className: c, style: l, ...u }) {
2072
+ let { isNarrow: d } = He(), f = `clamp(${a}px, ${s * 100}%, ${o}px)`;
2073
+ return /* @__PURE__ */ n("div", {
2074
+ className: [
2075
+ U.root,
2076
+ d ? U.collapsed : U.expanded,
2077
+ c
2078
+ ].filter(Boolean).join(" "),
2079
+ style: {
2080
+ "--sidebar-width": f,
2081
+ ...l
2082
+ },
2083
+ ...u,
2084
+ children: [
2085
+ /* @__PURE__ */ t("div", {
2086
+ className: [U.sidebar, d && i ? U.paneHidden : U.paneVisible].filter(Boolean).join(" "),
2087
+ "aria-hidden": d && i,
2088
+ children: e
2089
+ }),
2090
+ !d && /* @__PURE__ */ t("div", {
2091
+ className: U.divider,
2092
+ "aria-hidden": "true"
2093
+ }),
2094
+ /* @__PURE__ */ t("div", {
2095
+ className: [U.contentPane, d && !i ? U.paneHidden : U.paneVisible].filter(Boolean).join(" "),
2096
+ "aria-hidden": d && !i,
2097
+ children: r
2098
+ })
2099
+ ]
2100
+ });
2101
+ }
2102
+ var W = {
2103
+ root: "_root_1xl2w_3",
2104
+ wide: "_wide_1xl2w_13",
2105
+ end: "_end_1xl2w_17",
2106
+ sidebar: "_sidebar_1xl2w_21",
2107
+ content: "_content_1xl2w_27",
2108
+ narrow: "_narrow_1xl2w_35",
2109
+ start: "_start_1xl2w_55",
2110
+ sidebarOpen: "_sidebarOpen_1xl2w_59",
2111
+ sidebarClosed: "_sidebarClosed_1xl2w_60",
2112
+ backdrop: "_backdrop_1xl2w_72",
2113
+ backdropVisible: "_backdropVisible_1xl2w_83"
2114
+ };
2115
+ //#endregion
2116
+ //#region src/components/OverlaySplitView/OverlaySplitView.tsx
2117
+ function Qn({ sidebar: e, content: r, showSidebar: i = !1, onClose: a, sidebarPosition: o = "start", minSidebarWidth: s = 180, maxSidebarWidth: c = 280, sidebarWidthFraction: u = .25, className: f, style: p, ...m }) {
2118
+ let { isNarrow: h } = He(), g = d(null), _ = `clamp(${s}px, ${u * 100}%, ${c}px)`;
2119
+ l(() => {
2120
+ if (!h || !i) return;
2121
+ let e = (e) => {
2122
+ e.key === "Escape" && a?.();
2123
+ };
2124
+ return document.addEventListener("keydown", e), () => document.removeEventListener("keydown", e);
2125
+ }, [
2126
+ h,
2127
+ i,
2128
+ a
2129
+ ]), l(() => {
2130
+ !h || !i || (g.current?.querySelector("button, [href], input, select, textarea, [tabindex]:not([tabindex=\"-1\"])"))?.focus();
2131
+ }, [h, i]);
2132
+ let v = o === "end";
2133
+ return /* @__PURE__ */ n("div", {
2134
+ className: [
2135
+ W.root,
2136
+ h ? W.narrow : W.wide,
2137
+ v ? W.end : W.start,
2138
+ f
2139
+ ].filter(Boolean).join(" "),
2140
+ style: {
2141
+ "--sidebar-width": _,
2142
+ ...p
2143
+ },
2144
+ ...m,
2145
+ children: [
2146
+ h && /* @__PURE__ */ t("div", {
2147
+ className: [W.backdrop, i ? W.backdropVisible : null].filter(Boolean).join(" "),
2148
+ "aria-hidden": "true",
2149
+ onClick: a
2150
+ }),
2151
+ /* @__PURE__ */ t("div", {
2152
+ ref: g,
2153
+ className: [W.sidebar, h ? i ? W.sidebarOpen : W.sidebarClosed : null].filter(Boolean).join(" "),
2154
+ "aria-hidden": h && !i,
2155
+ children: e
2156
+ }),
2157
+ /* @__PURE__ */ t("div", {
2158
+ className: W.content,
2159
+ children: r
2160
+ })
2161
+ ]
2162
+ });
2163
+ }
2164
+ var $n = { bar: "_bar_njcvu_3" };
2165
+ //#endregion
2166
+ //#region src/components/ViewSwitcherBar/ViewSwitcherBar.tsx
2167
+ function er({ children: e, reveal: n = !0, className: r, ...i }) {
2168
+ return n ? /* @__PURE__ */ t("div", {
2169
+ role: "navigation",
2170
+ "aria-label": "Bottom navigation",
2171
+ className: [$n.bar, r].filter(Boolean).join(" "),
2172
+ ...i,
2173
+ children: e
2174
+ }) : null;
2175
+ }
2176
+ var tr = {
2177
+ link: "_link_x1qyh_1",
2178
+ externalIcon: "_externalIcon_x1qyh_36"
2179
+ };
2180
+ //#endregion
2181
+ //#region src/components/Link/Link.tsx
2182
+ function nr({ external: e = !1, children: r, className: i, target: a, rel: o, ...s }) {
2183
+ let c = e || a === "_blank";
2184
+ return /* @__PURE__ */ n("a", {
2185
+ className: [tr.link, i].filter(Boolean).join(" "),
2186
+ target: c ? "_blank" : a,
2187
+ rel: c ? "noopener noreferrer" : o,
2188
+ ...s,
2189
+ children: [r, c && /* @__PURE__ */ t("span", {
2190
+ className: tr.externalIcon,
2191
+ "aria-label": "(opens in new tab)",
2192
+ children: "↗"
2193
+ })]
2194
+ });
2195
+ }
2196
+ var rr = {
2197
+ group: "_group_1fa3l_3",
2198
+ item: "_item_1fa3l_18",
2199
+ iconOnly: "_iconOnly_1fa3l_48",
2200
+ active: "_active_1fa3l_53",
2201
+ itemIcon: "_itemIcon_1fa3l_86",
2202
+ itemLabel: "_itemLabel_1fa3l_92"
2203
+ }, ir = a(null);
2204
+ function ar() {
2205
+ let e = c(ir);
2206
+ if (!e) throw Error("ToggleGroupItem must be used inside ToggleGroup");
2207
+ return e;
2208
+ }
2209
+ function or({ value: e, onValueChange: n, "aria-label": r = "Options", children: i, className: a, ...o }) {
2210
+ let s = d(null);
2211
+ function c(e) {
2212
+ let t = Array.from(s.current?.querySelectorAll("[role=radio]:not(:disabled)") ?? []), n = t.findIndex((e) => e === document.activeElement);
2213
+ if (n === -1) return;
2214
+ let r = n;
2215
+ if (e.key === "ArrowRight" || e.key === "ArrowDown") r = (n + 1) % t.length;
2216
+ else if (e.key === "ArrowLeft" || e.key === "ArrowUp") r = (n - 1 + t.length) % t.length;
2217
+ else if (e.key === "Home") r = 0;
2218
+ else if (e.key === "End") r = t.length - 1;
2219
+ else return;
2220
+ e.preventDefault(), t[r].focus(), t[r].click();
2221
+ }
2222
+ return /* @__PURE__ */ t(ir.Provider, {
2223
+ value: {
2224
+ value: e,
2225
+ onValueChange: n
2226
+ },
2227
+ children: /* @__PURE__ */ t("div", {
2228
+ ref: s,
2229
+ role: "radiogroup",
2230
+ "aria-label": r,
2231
+ onKeyDown: c,
2232
+ className: [rr.group, a].filter(Boolean).join(" "),
2233
+ ...o,
2234
+ children: i
2235
+ })
2236
+ });
2237
+ }
2238
+ //#endregion
2239
+ //#region src/components/ToggleGroup/ToggleGroupItem.tsx
2240
+ function sr({ name: e, label: r, icon: i, disabled: a, className: o, ...s }) {
2241
+ let { value: c, onValueChange: l } = ar(), u = c === e, d = i && !r;
2242
+ return /* @__PURE__ */ n("button", {
2243
+ type: "button",
2244
+ role: "radio",
2245
+ "aria-checked": u,
2246
+ tabIndex: u ? 0 : -1,
2247
+ disabled: a,
2248
+ onClick: () => l(e),
2249
+ className: [
2250
+ rr.item,
2251
+ u ? rr.active : null,
2252
+ d ? rr.iconOnly : null,
2253
+ o
2254
+ ].filter(Boolean).join(" "),
2255
+ ...s,
2256
+ children: [i && /* @__PURE__ */ t("span", {
2257
+ className: rr.itemIcon,
2258
+ children: /* @__PURE__ */ t(F, {
2259
+ icon: i,
2260
+ size: "md",
2261
+ "aria-hidden": !0
2262
+ })
2263
+ }), r && /* @__PURE__ */ t("span", {
2264
+ className: rr.itemLabel,
2265
+ children: r
2266
+ })]
2267
+ });
2268
+ }
2269
+ var cr = {
2270
+ wrapBox: "_wrapBox_1ik0x_1",
2271
+ reverse: "_reverse_1ik0x_10"
2272
+ };
2273
+ //#endregion
2274
+ //#region src/components/WrapBox/WrapBox.tsx
2275
+ function lr({ childSpacing: e = 6, lineSpacing: n, justify: r = "start", align: i = "center", wrapReverse: a = !1, children: o, className: s, style: c, ...l }) {
2276
+ let u = typeof e == "number" ? `${e}px` : e, d = n == null ? u : typeof n == "number" ? `${n}px` : n, f = {
2277
+ "--wrapbox-gap": u,
2278
+ "--wrapbox-row-gap": d,
2279
+ "--wrapbox-justify": r,
2280
+ "--wrapbox-align": i,
2281
+ ...c
2282
+ };
2283
+ return /* @__PURE__ */ t("div", {
2284
+ className: [
2285
+ cr.wrapBox,
2286
+ a ? cr.reverse : null,
2287
+ s
2288
+ ].filter(Boolean).join(" "),
2289
+ style: f,
2290
+ ...l,
2291
+ children: o
2292
+ });
2293
+ }
2294
+ var ur = {
2295
+ chip: "_chip_e26qc_3",
2296
+ selectable: "_selectable_e26qc_31",
2297
+ selected: "_selected_e26qc_55",
2298
+ disabled: "_disabled_e26qc_68",
2299
+ icon: "_icon_e26qc_76",
2300
+ label: "_label_e26qc_85",
2301
+ remove: "_remove_e26qc_91"
2302
+ };
2303
+ //#endregion
2304
+ //#region src/components/Chip/Chip.tsx
2305
+ function dr({ label: r, icon: i, onRemove: a, selectable: o = !1, selected: s = !1, onToggle: c, disabled: l = !1, className: u, ...d }) {
2306
+ let f = o && !a, p = [
2307
+ ur.chip,
2308
+ s ? ur.selected : null,
2309
+ l ? ur.disabled : null,
2310
+ f ? ur.selectable : null,
2311
+ u
2312
+ ].filter(Boolean).join(" "), m = /* @__PURE__ */ n(e, { children: [
2313
+ i && /* @__PURE__ */ t("span", {
2314
+ className: ur.icon,
2315
+ children: /* @__PURE__ */ t(F, {
2316
+ icon: i,
2317
+ size: "sm",
2318
+ "aria-hidden": !0
2319
+ })
2320
+ }),
2321
+ /* @__PURE__ */ t("span", {
2322
+ className: ur.label,
2323
+ children: r
2324
+ }),
2325
+ a && /* @__PURE__ */ t("button", {
2326
+ type: "button",
2327
+ className: ur.remove,
2328
+ "aria-label": `Remove ${r}`,
2329
+ disabled: l,
2330
+ onClick: (e) => {
2331
+ e.stopPropagation(), a();
2332
+ },
2333
+ tabIndex: l ? -1 : 0,
2334
+ children: /* @__PURE__ */ t(F, {
2335
+ icon: Ne,
2336
+ size: "sm",
2337
+ "aria-hidden": !0
2338
+ })
2339
+ })
2340
+ ] });
2341
+ return f ? /* @__PURE__ */ t("button", {
2342
+ type: "button",
2343
+ role: "checkbox",
2344
+ "aria-checked": s,
2345
+ "aria-label": r,
2346
+ disabled: l,
2347
+ onClick: c,
2348
+ className: p,
2349
+ ...d,
2350
+ children: m
2351
+ }) : /* @__PURE__ */ t("span", {
2352
+ className: p,
2353
+ ...d,
2354
+ children: m
2355
+ });
2356
+ }
2357
+ //#endregion
2358
+ //#region src/components/ShortcutsDialog/ShortcutsDialog.module.css
2359
+ var fr = "_backdrop_zvuhh_3", pr = "_dialog_zvuhh_26", mr = "_header_zvuhh_59", hr = "_title_zvuhh_67", gr = "_closeBtn_zvuhh_74", _r = "_searchRow_zvuhh_112", vr = "_searchIcon_zvuhh_124", yr = "_searchInput_zvuhh_132", br = "_searchClear_zvuhh_151", xr = "_body_zvuhh_174", Sr = "_empty_zvuhh_182", Cr = "_section_zvuhh_193", wr = "_sectionTitle_zvuhh_199", Tr = "_list_zvuhh_209", Er = "_row_zvuhh_225", Dr = "_keys_zvuhh_240", Or = "_keyCap_zvuhh_247", kr = "_plus_zvuhh_277", Ar = "_description_zvuhh_284", G = {
2360
+ backdrop: fr,
2361
+ "backdrop-in": "_backdrop-in_zvuhh_1",
2362
+ dialog: pr,
2363
+ "dialog-in": "_dialog-in_zvuhh_1",
2364
+ header: mr,
2365
+ title: hr,
2366
+ closeBtn: gr,
2367
+ searchRow: _r,
2368
+ searchIcon: vr,
2369
+ searchInput: yr,
2370
+ searchClear: br,
2371
+ body: xr,
2372
+ empty: Sr,
2373
+ section: Cr,
2374
+ sectionTitle: wr,
2375
+ list: Tr,
2376
+ row: Er,
2377
+ keys: Dr,
2378
+ keyCap: Or,
2379
+ plus: kr,
2380
+ description: Ar
2381
+ }, jr = "button:not([disabled]), [href], input:not([disabled]), [tabindex]:not([tabindex=\"-1\"])";
2382
+ function Mr({ open: e, onClose: r, title: i = "Keyboard Shortcuts", sections: a }) {
2383
+ let [o, c] = f(""), u = d(null), m = d(null), h = d(null), g = d(`shortcuts-title-${Math.random().toString(36).slice(2, 9)}`);
2384
+ l(() => {
2385
+ e ? (h.current = document.activeElement, requestAnimationFrame(() => m.current?.focus())) : (c(""), h.current?.focus());
2386
+ }, [e]);
2387
+ let _ = s((e) => {
2388
+ if (e.key === "Escape") {
2389
+ e.preventDefault(), r();
2390
+ return;
2391
+ }
2392
+ if (e.key !== "Tab") return;
2393
+ let t = Array.from(u.current?.querySelectorAll(jr) ?? []);
2394
+ if (t.length === 0) return;
2395
+ let n = t[0], i = t[t.length - 1];
2396
+ e.shiftKey ? document.activeElement === n && (e.preventDefault(), i.focus()) : document.activeElement === i && (e.preventDefault(), n.focus());
2397
+ }, [r]);
2398
+ if (!e) return null;
2399
+ let v = o.trim().toLowerCase(), y = a.map((e) => ({
2400
+ ...e,
2401
+ shortcuts: e.shortcuts.filter(({ description: e, keys: t }) => !v || e.toLowerCase().includes(v) || t.some((e) => e.toLowerCase().includes(v)))
2402
+ })).filter((e) => e.shortcuts.length > 0), b = /* @__PURE__ */ t("div", {
2403
+ className: G.backdrop,
2404
+ onClick: r,
2405
+ "aria-hidden": "true",
2406
+ children: /* @__PURE__ */ n("div", {
2407
+ ref: u,
2408
+ role: "dialog",
2409
+ "aria-modal": "true",
2410
+ "aria-labelledby": g.current,
2411
+ className: G.dialog,
2412
+ onKeyDown: _,
2413
+ onClick: (e) => e.stopPropagation(),
2414
+ children: [
2415
+ /* @__PURE__ */ n("div", {
2416
+ className: G.header,
2417
+ children: [/* @__PURE__ */ t("span", {
2418
+ id: g.current,
2419
+ className: G.title,
2420
+ children: i
2421
+ }), /* @__PURE__ */ t("button", {
2422
+ type: "button",
2423
+ className: G.closeBtn,
2424
+ "aria-label": "Close",
2425
+ onClick: r,
2426
+ children: "×"
2427
+ })]
2428
+ }),
2429
+ /* @__PURE__ */ n("div", {
2430
+ className: G.searchRow,
2431
+ children: [
2432
+ /* @__PURE__ */ t("span", {
2433
+ className: G.searchIcon,
2434
+ "aria-hidden": "true",
2435
+ children: "⌕"
2436
+ }),
2437
+ /* @__PURE__ */ t("input", {
2438
+ ref: m,
2439
+ type: "search",
2440
+ className: G.searchInput,
2441
+ placeholder: "Search shortcuts…",
2442
+ value: o,
2443
+ onChange: (e) => c(e.target.value),
2444
+ "aria-label": "Search shortcuts"
2445
+ }),
2446
+ o && /* @__PURE__ */ t("button", {
2447
+ type: "button",
2448
+ className: G.searchClear,
2449
+ "aria-label": "Clear search",
2450
+ onClick: () => {
2451
+ c(""), m.current?.focus();
2452
+ },
2453
+ children: "×"
2454
+ })
2455
+ ]
2456
+ }),
2457
+ /* @__PURE__ */ t("div", {
2458
+ className: G.body,
2459
+ role: "list",
2460
+ children: y.length === 0 ? /* @__PURE__ */ n("p", {
2461
+ className: G.empty,
2462
+ children: [
2463
+ "No shortcuts match \"",
2464
+ o,
2465
+ "\""
2466
+ ]
2467
+ }) : y.map((e) => /* @__PURE__ */ n("section", {
2468
+ className: G.section,
2469
+ children: [/* @__PURE__ */ t("h3", {
2470
+ className: G.sectionTitle,
2471
+ children: e.title
2472
+ }), /* @__PURE__ */ t("ul", {
2473
+ className: G.list,
2474
+ children: e.shortcuts.map((e) => /* @__PURE__ */ n("li", {
2475
+ className: G.row,
2476
+ role: "listitem",
2477
+ children: [/* @__PURE__ */ t("span", {
2478
+ className: G.keys,
2479
+ "aria-label": e.keys.join(" + "),
2480
+ children: e.keys.map((r, i) => /* @__PURE__ */ n("span", {
2481
+ className: G.keyCap,
2482
+ children: [/* @__PURE__ */ t("kbd", { children: r }), i < e.keys.length - 1 && /* @__PURE__ */ t("span", {
2483
+ className: G.plus,
2484
+ "aria-hidden": "true",
2485
+ children: "+"
2486
+ })]
2487
+ }, i))
2488
+ }), /* @__PURE__ */ t("span", {
2489
+ className: G.description,
2490
+ children: e.description
2491
+ })]
2492
+ }, e.description))
2493
+ })]
2494
+ }, e.title))
2495
+ })
2496
+ ]
2497
+ })
2498
+ });
2499
+ return typeof document > "u" ? b : p(b, document.body);
2500
+ }
2501
+ var K = {
2502
+ sidebar: "_sidebar_kmj4b_3",
2503
+ list: "_list_kmj4b_17",
2504
+ item: "_item_kmj4b_28",
2505
+ itemBtn: "_itemBtn_kmj4b_34",
2506
+ active: "_active_kmj4b_60",
2507
+ itemIcon: "_itemIcon_kmj4b_106",
2508
+ itemLabel: "_itemLabel_kmj4b_119",
2509
+ itemSuffix: "_itemSuffix_kmj4b_129",
2510
+ count: "_count_kmj4b_136"
2511
+ }, Nr = a(null);
2512
+ function Pr() {
2513
+ let e = c(Nr);
2514
+ if (!e) throw Error("ViewSwitcherSidebarItem must be used inside ViewSwitcherSidebar");
2515
+ return e;
2516
+ }
2517
+ function Fr({ value: e, onValueChange: n, "aria-label": r = "Views", children: i, className: a, ...o }) {
2518
+ let s = d(null);
2519
+ function c(e) {
2520
+ let t = Array.from(s.current?.querySelectorAll("[role=radio]:not(:disabled)") ?? []), n = t.findIndex((e) => e === document.activeElement);
2521
+ if (n === -1) return;
2522
+ let r = n;
2523
+ if (e.key === "ArrowDown" || e.key === "ArrowRight") r = (n + 1) % t.length;
2524
+ else if (e.key === "ArrowUp" || e.key === "ArrowLeft") r = (n - 1 + t.length) % t.length;
2525
+ else if (e.key === "Home") r = 0;
2526
+ else if (e.key === "End") r = t.length - 1;
2527
+ else return;
2528
+ e.preventDefault(), t[r].focus(), t[r].click();
2529
+ }
2530
+ return /* @__PURE__ */ t(Nr.Provider, {
2531
+ value: {
2532
+ value: e,
2533
+ onValueChange: n
2534
+ },
2535
+ children: /* @__PURE__ */ t("nav", {
2536
+ className: [K.sidebar, a].filter(Boolean).join(" "),
2537
+ onKeyDown: c,
2538
+ ...o,
2539
+ children: /* @__PURE__ */ t("ul", {
2540
+ ref: s,
2541
+ role: "radiogroup",
2542
+ "aria-label": r,
2543
+ className: K.list,
2544
+ children: i
2545
+ })
2546
+ })
2547
+ });
2548
+ }
2549
+ //#endregion
2550
+ //#region src/components/ViewSwitcherSidebar/ViewSwitcherSidebarItem.tsx
2551
+ function Ir({ name: e, label: r, icon: i, count: a, suffix: o, disabled: s, className: c, ...l }) {
2552
+ let { value: u, onValueChange: d } = Pr(), f = u === e, p = o ?? a ?? null;
2553
+ return /* @__PURE__ */ t("li", {
2554
+ className: K.item,
2555
+ children: /* @__PURE__ */ n("button", {
2556
+ type: "button",
2557
+ role: "radio",
2558
+ "aria-checked": f,
2559
+ tabIndex: f ? 0 : -1,
2560
+ disabled: s,
2561
+ onClick: () => d(e),
2562
+ className: [
2563
+ K.itemBtn,
2564
+ f ? K.active : null,
2565
+ c
2566
+ ].filter(Boolean).join(" "),
2567
+ ...l,
2568
+ children: [
2569
+ i && /* @__PURE__ */ t("span", {
2570
+ className: K.itemIcon,
2571
+ children: /* @__PURE__ */ t(F, {
2572
+ icon: i,
2573
+ size: "md",
2574
+ "aria-hidden": !0
2575
+ })
2576
+ }),
2577
+ /* @__PURE__ */ t("span", {
2578
+ className: K.itemLabel,
2579
+ children: r
2580
+ }),
2581
+ p != null && /* @__PURE__ */ t("span", {
2582
+ className: K.itemSuffix,
2583
+ children: typeof p == "number" ? /* @__PURE__ */ t("span", {
2584
+ className: K.count,
2585
+ children: p > 99 ? "99+" : p
2586
+ }) : p
2587
+ })
2588
+ ]
2589
+ })
2590
+ });
2591
+ }
2592
+ //#endregion
2593
+ //#region src/components/BreakpointBin/BreakpointBin.tsx
2594
+ function Lr({ breakpoints: e, children: n, className: r, style: i, ...a }) {
2595
+ let o = d(null), [s, c] = f({
2596
+ activeBreakpoint: null,
2597
+ width: 0
2598
+ });
2599
+ return l(() => {
2600
+ let t = o.current;
2601
+ if (!t) return;
2602
+ let n = [...e].sort((e, t) => e.maxWidth - t.maxWidth), r = (e) => ({
2603
+ activeBreakpoint: (n.find((t) => e <= t.maxWidth) ?? null)?.name ?? null,
2604
+ width: e
2605
+ });
2606
+ c(r(t.offsetWidth));
2607
+ let i = new ResizeObserver((e) => {
2608
+ let t = e[0];
2609
+ t && c(r(t.contentBoxSize?.[0]?.inlineSize ?? t.contentRect.width));
2610
+ });
2611
+ return i.observe(t), () => i.disconnect();
2612
+ }, [JSON.stringify(e)]), /* @__PURE__ */ t("div", {
2613
+ ref: o,
2614
+ className: r,
2615
+ style: {
2616
+ minWidth: 0,
2617
+ ...i
2618
+ },
2619
+ "data-breakpoint": s.activeBreakpoint ?? void 0,
2620
+ ...a,
2621
+ children: n(s)
2622
+ });
2623
+ }
2624
+ var Rr = {
2625
+ row: "_row_1ba2f_3",
2626
+ title: "_title_1ba2f_48",
2627
+ leading: "_leading_1ba2f_59",
2628
+ trailing: "_trailing_1ba2f_60",
2629
+ default: "_default_1ba2f_68",
2630
+ suggested: "_suggested_1ba2f_77",
2631
+ destructive: "_destructive_1ba2f_86"
2632
+ };
2633
+ //#endregion
2634
+ //#region src/components/ButtonRow/ButtonRow.tsx
2635
+ function zr({ title: e, variant: r = "default", leading: i, trailing: a, className: o, ...s }) {
2636
+ return /* @__PURE__ */ n("button", {
2637
+ className: [
2638
+ Rr.row,
2639
+ Rr[r],
2640
+ o
2641
+ ].filter(Boolean).join(" "),
2642
+ ...s,
2643
+ children: [
2644
+ i && /* @__PURE__ */ t("span", {
2645
+ className: Rr.leading,
2646
+ children: i
2647
+ }),
2648
+ /* @__PURE__ */ t("span", {
2649
+ className: Rr.title,
2650
+ children: e
2651
+ }),
2652
+ a && /* @__PURE__ */ t("span", {
2653
+ className: Rr.trailing,
2654
+ children: a
2655
+ })
2656
+ ]
2657
+ });
2658
+ }
2659
+ var Br = {
2660
+ container: "_container_4kjnf_3",
2661
+ primary: "_primary_4kjnf_14",
2662
+ toggle: "_toggle_4kjnf_15",
2663
+ separator: "_separator_4kjnf_66",
2664
+ chevron: "_chevron_4kjnf_81",
2665
+ default: "_default_4kjnf_88",
2666
+ suggested: "_suggested_4kjnf_123",
2667
+ destructive: "_destructive_4kjnf_145",
2668
+ dropdown: "_dropdown_4kjnf_167",
2669
+ dropdownVisible: "_dropdownVisible_4kjnf_185"
2670
+ };
2671
+ //#endregion
2672
+ //#region src/components/SplitButton/SplitButton.tsx
2673
+ function Vr({ label: r, variant: i = "default", dropdownContent: a, dropdownLabel: o = "More options", disabled: c = !1, onClick: u, className: m, ...h }) {
2674
+ let [g, _] = f(!1), [v, y] = f({}), b = d(null), x = d(null), S = d(null), C = s(() => _(!1), []), w = s(() => {
2675
+ if (!x.current || !S.current) return;
2676
+ let e = x.current.getBoundingClientRect(), t = S.current.getBoundingClientRect(), n = window.innerWidth, r = e.right - t.width;
2677
+ r < 8 && (r = 8), r + t.width > n - 8 && (r = n - t.width - 8), y({
2678
+ top: e.bottom + 6,
2679
+ left: r
2680
+ });
2681
+ }, []);
2682
+ l(() => {
2683
+ if (!g) return;
2684
+ let e = requestAnimationFrame(() => {
2685
+ w(), window.addEventListener("scroll", w, {
2686
+ passive: !0,
2687
+ capture: !0
2688
+ }), window.addEventListener("resize", w, { passive: !0 });
2689
+ });
2690
+ return () => {
2691
+ cancelAnimationFrame(e), window.removeEventListener("scroll", w, { capture: !0 }), window.removeEventListener("resize", w);
2692
+ };
2693
+ }, [g, w]), l(() => {
2694
+ if (!g) return;
2695
+ let e = (e) => {
2696
+ !b.current?.contains(e.target) && !S.current?.contains(e.target) && C();
2697
+ };
2698
+ return document.addEventListener("mousedown", e), () => document.removeEventListener("mousedown", e);
2699
+ }, [g, C]);
2700
+ let T = (e) => {
2701
+ e.key === "Escape" && (e.stopPropagation(), C(), x.current?.focus());
2702
+ }, E = [
2703
+ Br.container,
2704
+ Br[i],
2705
+ m
2706
+ ].filter(Boolean).join(" "), D = /* @__PURE__ */ t("div", {
2707
+ ref: S,
2708
+ role: "dialog",
2709
+ "aria-label": o,
2710
+ tabIndex: -1,
2711
+ className: [Br.dropdown, g ? Br.dropdownVisible : null].filter(Boolean).join(" "),
2712
+ style: Object.keys(v).length ? {
2713
+ ...v,
2714
+ position: "fixed"
2715
+ } : {
2716
+ visibility: "hidden",
2717
+ pointerEvents: "none",
2718
+ top: -9999,
2719
+ left: -9999,
2720
+ position: "fixed"
2721
+ },
2722
+ onKeyDown: T,
2723
+ children: a
2724
+ });
2725
+ return /* @__PURE__ */ n(e, { children: [/* @__PURE__ */ n("div", {
2726
+ ref: b,
2727
+ className: E,
2728
+ children: [
2729
+ /* @__PURE__ */ t("button", {
2730
+ className: Br.primary,
2731
+ disabled: c,
2732
+ onClick: u,
2733
+ ...h,
2734
+ children: r
2735
+ }),
2736
+ /* @__PURE__ */ t("span", {
2737
+ className: Br.separator,
2738
+ "aria-hidden": "true"
2739
+ }),
2740
+ /* @__PURE__ */ t("button", {
2741
+ ref: x,
2742
+ className: Br.toggle,
2743
+ disabled: c,
2744
+ "aria-label": o,
2745
+ "aria-haspopup": "dialog",
2746
+ "aria-expanded": g,
2747
+ onClick: () => _((e) => !e),
2748
+ children: /* @__PURE__ */ t("svg", {
2749
+ className: Br.chevron,
2750
+ width: "16",
2751
+ height: "16",
2752
+ viewBox: "0 0 16 16",
2753
+ "aria-hidden": "true",
2754
+ focusable: "false",
2755
+ children: /* @__PURE__ */ t("path", {
2756
+ d: "M4 6l4 4 4-4",
2757
+ fill: "none",
2758
+ stroke: "currentColor",
2759
+ strokeWidth: "1.5",
2760
+ strokeLinecap: "round",
2761
+ strokeLinejoin: "round"
2762
+ })
2763
+ })
2764
+ })
2765
+ ]
2766
+ }), g && (typeof document < "u" ? p(D, document.body) : D)] });
2767
+ }
2768
+ var Hr = {
2769
+ toolbar: "_toolbar_1avgl_2",
2770
+ spacer: "_spacer_1avgl_20"
2771
+ };
2772
+ //#endregion
2773
+ //#region src/components/Toolbar/Toolbar.tsx
2774
+ function Ur({ children: e, className: n, ...r }) {
2775
+ return /* @__PURE__ */ t("div", {
2776
+ className: [Hr.toolbar, n].filter(Boolean).join(" "),
2777
+ ...r,
2778
+ children: e
2779
+ });
2780
+ }
2781
+ //#endregion
2782
+ //#region src/components/Toolbar/Spacer.tsx
2783
+ function Wr({ className: e, ...n }) {
2784
+ return /* @__PURE__ */ t("div", {
2785
+ "aria-hidden": "true",
2786
+ className: [Hr.spacer, e].filter(Boolean).join(" "),
2787
+ ...n
2788
+ });
2789
+ }
2790
+ var Gr = {
2791
+ linked: "_linked_1tser_3",
2792
+ vertical: "_vertical_1tser_9"
2793
+ };
2794
+ //#endregion
2795
+ //#region src/components/LinkedGroup/LinkedGroup.tsx
2796
+ function Kr({ children: e, vertical: n = !1, className: r, ...i }) {
2797
+ return /* @__PURE__ */ t("div", {
2798
+ className: [
2799
+ Gr.linked,
2800
+ n ? Gr.vertical : null,
2801
+ r
2802
+ ].filter(Boolean).join(" "),
2803
+ ...i,
2804
+ children: e
2805
+ });
2806
+ }
2807
+ var qr = { frame: "_frame_1bq7b_2" };
2808
+ //#endregion
2809
+ //#region src/components/Frame/Frame.tsx
2810
+ function Jr({ children: e, className: n, ...r }) {
2811
+ return /* @__PURE__ */ t("div", {
2812
+ className: [qr.frame, n].filter(Boolean).join(" "),
2813
+ ...r,
2814
+ children: e
2815
+ });
2816
+ }
2817
+ var q = {
2818
+ expanderRow: "_expanderRow_16el8_3",
2819
+ header: "_header_16el8_11",
2820
+ leading: "_leading_16el8_55",
2821
+ content: "_content_16el8_64",
2822
+ title: "_title_16el8_72",
2823
+ subtitle: "_subtitle_16el8_83",
2824
+ trailing: "_trailing_16el8_97",
2825
+ chevronWrap: "_chevronWrap_16el8_106",
2826
+ chevronOpen: "_chevronOpen_16el8_115",
2827
+ chevron: "_chevron_16el8_106",
2828
+ panel: "_panel_16el8_125",
2829
+ expanded: "_expanded_16el8_131",
2830
+ panelInner: "_panelInner_16el8_135",
2831
+ childItem: "_childItem_16el8_142",
2832
+ divider: "_divider_16el8_147"
2833
+ };
2834
+ //#endregion
2835
+ //#region src/components/ExpanderRow/ExpanderRow.tsx
2836
+ function Yr({ title: e, subtitle: i, leading: a, trailing: o, children: s, expanded: c, defaultExpanded: l = !1, onExpandedChange: d, className: p, ...m }) {
2837
+ let h = c !== void 0, [g, _] = f(l), v = h ? c : g, y = u(), b = u(), x = () => {
2838
+ let e = !v;
2839
+ h || _(e), d?.(e);
2840
+ }, S = r.toArray(s).filter(Boolean);
2841
+ return /* @__PURE__ */ n("div", {
2842
+ className: [
2843
+ q.expanderRow,
2844
+ v ? q.expanded : null,
2845
+ p
2846
+ ].filter(Boolean).join(" "),
2847
+ ...m,
2848
+ children: [/* @__PURE__ */ n("button", {
2849
+ id: b,
2850
+ className: q.header,
2851
+ "aria-expanded": v,
2852
+ "aria-controls": y,
2853
+ onClick: x,
2854
+ children: [
2855
+ a && /* @__PURE__ */ t("span", {
2856
+ className: q.leading,
2857
+ children: a
2858
+ }),
2859
+ /* @__PURE__ */ n("span", {
2860
+ className: q.content,
2861
+ children: [/* @__PURE__ */ t("span", {
2862
+ className: q.title,
2863
+ children: e
2864
+ }), i && /* @__PURE__ */ t("span", {
2865
+ className: q.subtitle,
2866
+ children: i
2867
+ })]
2868
+ }),
2869
+ o && /* @__PURE__ */ t("span", {
2870
+ className: q.trailing,
2871
+ children: o
2872
+ }),
2873
+ /* @__PURE__ */ t("span", {
2874
+ className: [q.chevronWrap, v ? q.chevronOpen : null].filter(Boolean).join(" "),
2875
+ "aria-hidden": "true",
2876
+ children: /* @__PURE__ */ t("svg", {
2877
+ className: q.chevron,
2878
+ width: "16",
2879
+ height: "16",
2880
+ viewBox: "0 0 16 16",
2881
+ focusable: "false",
2882
+ children: /* @__PURE__ */ t("path", {
2883
+ d: "M4 6l4 4 4-4",
2884
+ fill: "none",
2885
+ stroke: "currentColor",
2886
+ strokeWidth: "1.5",
2887
+ strokeLinecap: "round",
2888
+ strokeLinejoin: "round"
2889
+ })
2890
+ })
2891
+ })
2892
+ ]
2893
+ }), /* @__PURE__ */ t("div", {
2894
+ id: y,
2895
+ role: "region",
2896
+ "aria-labelledby": b,
2897
+ className: q.panel,
2898
+ children: /* @__PURE__ */ t("div", {
2899
+ className: q.panelInner,
2900
+ children: S.map((e, r) => /* @__PURE__ */ n("div", {
2901
+ className: q.childItem,
2902
+ children: [/* @__PURE__ */ t("div", {
2903
+ className: q.divider,
2904
+ "aria-hidden": "true"
2905
+ }), e]
2906
+ }, r))
2907
+ })
2908
+ })]
2909
+ });
2910
+ }
2911
+ var Xr = {
2912
+ switcher: "_switcher_2tknm_3",
2913
+ item: "_item_2tknm_10",
2914
+ iconOnly: "_iconOnly_2tknm_38",
2915
+ itemIcon: "_itemIcon_2tknm_43",
2916
+ itemLabel: "_itemLabel_2tknm_49",
2917
+ default: "_default_2tknm_55",
2918
+ active: "_active_2tknm_68",
2919
+ flat: "_flat_2tknm_121",
2920
+ round: "_round_2tknm_169"
2921
+ }, Zr = a(null);
2922
+ function Qr() {
2923
+ let e = c(Zr);
2924
+ if (!e) throw Error("InlineViewSwitcherItem must be used inside InlineViewSwitcher");
2925
+ return e;
2926
+ }
2927
+ function $r({ value: e, onValueChange: n, variant: r = "default", "aria-label": i = "View switcher", children: a, className: o, ...s }) {
2928
+ let c = d(null);
2929
+ function l(e) {
2930
+ let t = Array.from(c.current?.querySelectorAll("[role=radio]:not(:disabled)") ?? []), n = t.findIndex((e) => e === document.activeElement);
2931
+ if (n === -1) return;
2932
+ let r = n;
2933
+ if (e.key === "ArrowRight" || e.key === "ArrowDown") r = (n + 1) % t.length;
2934
+ else if (e.key === "ArrowLeft" || e.key === "ArrowUp") r = (n - 1 + t.length) % t.length;
2935
+ else if (e.key === "Home") r = 0;
2936
+ else if (e.key === "End") r = t.length - 1;
2937
+ else return;
2938
+ e.preventDefault(), t[r].focus(), t[r].click();
2939
+ }
2940
+ return /* @__PURE__ */ t(Zr.Provider, {
2941
+ value: {
2942
+ value: e,
2943
+ onValueChange: n
2944
+ },
2945
+ children: /* @__PURE__ */ t("div", {
2946
+ ref: c,
2947
+ role: "radiogroup",
2948
+ "aria-label": i,
2949
+ onKeyDown: l,
2950
+ className: [
2951
+ Xr.switcher,
2952
+ Xr[r],
2953
+ o
2954
+ ].filter(Boolean).join(" "),
2955
+ ...s,
2956
+ children: a
2957
+ })
2958
+ });
2959
+ }
2960
+ //#endregion
2961
+ //#region src/components/InlineViewSwitcher/InlineViewSwitcherItem.tsx
2962
+ function ei({ name: e, label: r, icon: i, disabled: a, className: o, ...s }) {
2963
+ let { value: c, onValueChange: l } = Qr(), u = c === e, d = i && !r;
2964
+ return /* @__PURE__ */ n("button", {
2965
+ type: "button",
2966
+ role: "radio",
2967
+ "aria-checked": u,
2968
+ tabIndex: u ? 0 : -1,
2969
+ disabled: a,
2970
+ onClick: () => l(e),
2971
+ className: [
2972
+ Xr.item,
2973
+ u ? Xr.active : null,
2974
+ d ? Xr.iconOnly : null,
2975
+ o
2976
+ ].filter(Boolean).join(" "),
2977
+ ...s,
2978
+ children: [i && /* @__PURE__ */ t("span", {
2979
+ className: Xr.itemIcon,
2980
+ children: /* @__PURE__ */ t(F, {
2981
+ icon: i,
2982
+ size: "md",
2983
+ "aria-hidden": !0
2984
+ })
2985
+ }), r && /* @__PURE__ */ t("span", {
2986
+ className: Xr.itemLabel,
2987
+ children: r
2988
+ })]
2989
+ });
2990
+ }
2991
+ var ti = {
2992
+ row: "_row_jl3bc_3",
2993
+ disabled: "_disabled_jl3bc_41",
2994
+ leading: "_leading_jl3bc_49",
2995
+ content: "_content_jl3bc_58",
2996
+ title: "_title_jl3bc_66",
2997
+ subtitle: "_subtitle_jl3bc_77",
2998
+ switchTrack: "_switchTrack_jl3bc_91",
2999
+ switchThumb: "_switchThumb_jl3bc_114",
3000
+ switchThumbOn: "_switchThumbOn_jl3bc_126"
3001
+ };
3002
+ //#endregion
3003
+ //#region src/components/SwitchRow/SwitchRow.tsx
3004
+ function ni({ title: e, subtitle: r, leading: i, checked: a, defaultChecked: o = !1, onCheckedChange: s, disabled: c = !1, className: l, onClick: d, ...p }) {
3005
+ let m = a !== void 0, [h, g] = f(o), _ = m ? a : h, v = u(), y = (e) => {
3006
+ let t = !_;
3007
+ m || g(t), s?.(t), d?.(e);
3008
+ };
3009
+ return /* @__PURE__ */ n("button", {
3010
+ role: "switch",
3011
+ "aria-checked": _,
3012
+ "aria-labelledby": v,
3013
+ disabled: c,
3014
+ className: [
3015
+ ti.row,
3016
+ c ? ti.disabled : null,
3017
+ l
3018
+ ].filter(Boolean).join(" "),
3019
+ onClick: y,
3020
+ ...p,
3021
+ children: [
3022
+ i && /* @__PURE__ */ t("span", {
3023
+ className: ti.leading,
3024
+ children: i
3025
+ }),
3026
+ /* @__PURE__ */ n("span", {
3027
+ className: ti.content,
3028
+ id: v,
3029
+ children: [/* @__PURE__ */ t("span", {
3030
+ className: ti.title,
3031
+ children: e
3032
+ }), r && /* @__PURE__ */ t("span", {
3033
+ className: ti.subtitle,
3034
+ children: r
3035
+ })]
3036
+ }),
3037
+ /* @__PURE__ */ t("span", {
3038
+ className: ti.switchTrack,
3039
+ "aria-hidden": "true",
3040
+ children: /* @__PURE__ */ t("span", { className: [ti.switchThumb, _ ? ti.switchThumbOn : null].filter(Boolean).join(" ") })
3041
+ })
3042
+ ]
3043
+ });
3044
+ }
3045
+ var J = {
3046
+ row: "_row_1dije_3",
3047
+ disabled: "_disabled_1dije_41",
3048
+ checkboxWrap: "_checkboxWrap_1dije_49",
3049
+ checkbox: "_checkbox_1dije_49",
3050
+ checkboxChecked: "_checkboxChecked_1dije_71",
3051
+ checkmark: "_checkmark_1dije_77",
3052
+ leading: "_leading_1dije_84",
3053
+ content: "_content_1dije_93",
3054
+ title: "_title_1dije_101",
3055
+ subtitle: "_subtitle_1dije_112"
3056
+ };
3057
+ //#endregion
3058
+ //#region src/components/CheckRow/CheckRow.tsx
3059
+ function ri({ title: e, subtitle: r, leading: i, checked: a, defaultChecked: o = !1, onCheckedChange: s, disabled: c = !1, className: l, onClick: d, ...p }) {
3060
+ let m = a !== void 0, [h, g] = f(o), _ = m ? a : h, v = u(), y = (e) => {
3061
+ let t = !_;
3062
+ m || g(t), s?.(t), d?.(e);
3063
+ };
3064
+ return /* @__PURE__ */ n("button", {
3065
+ role: "checkbox",
3066
+ "aria-checked": _,
3067
+ "aria-labelledby": v,
3068
+ disabled: c,
3069
+ className: [
3070
+ J.row,
3071
+ c ? J.disabled : null,
3072
+ l
3073
+ ].filter(Boolean).join(" "),
3074
+ onClick: y,
3075
+ ...p,
3076
+ children: [
3077
+ /* @__PURE__ */ t("span", {
3078
+ className: J.checkboxWrap,
3079
+ "aria-hidden": "true",
3080
+ children: /* @__PURE__ */ t("span", {
3081
+ className: [J.checkbox, _ ? J.checkboxChecked : null].filter(Boolean).join(" "),
3082
+ children: _ && /* @__PURE__ */ t("svg", {
3083
+ className: J.checkmark,
3084
+ width: "12",
3085
+ height: "12",
3086
+ viewBox: "0 0 12 12",
3087
+ focusable: "false",
3088
+ children: /* @__PURE__ */ t("path", {
3089
+ d: "M2 6l3 3 5-5",
3090
+ fill: "none",
3091
+ stroke: "currentColor",
3092
+ strokeWidth: "1.75",
3093
+ strokeLinecap: "round",
3094
+ strokeLinejoin: "round"
3095
+ })
3096
+ })
3097
+ })
3098
+ }),
3099
+ i && /* @__PURE__ */ t("span", {
3100
+ className: J.leading,
3101
+ children: i
3102
+ }),
3103
+ /* @__PURE__ */ n("span", {
3104
+ className: J.content,
3105
+ id: v,
3106
+ children: [/* @__PURE__ */ t("span", {
3107
+ className: J.title,
3108
+ children: e
3109
+ }), r && /* @__PURE__ */ t("span", {
3110
+ className: J.subtitle,
3111
+ children: r
3112
+ })]
3113
+ })
3114
+ ]
3115
+ });
3116
+ }
3117
+ //#endregion
3118
+ //#region src/components/ComboRow/ComboRow.module.css
3119
+ var ii = "_row_46mn8_3", ai = "_disabled_46mn8_16", oi = "_leading_46mn8_23", si = "_content_46mn8_32", ci = "_title_46mn8_40", li = "_subtitle_46mn8_51", ui = "_comboWrap_46mn8_65", di = "_trigger_46mn8_73", fi = "_triggerOpen_46mn8_126", pi = "_triggerLabel_46mn8_136", mi = "_placeholder_46mn8_144", hi = "_chevron_46mn8_150", gi = "_chevronOpen_46mn8_157", _i = "_list_46mn8_163", vi = "_listDown_46mn8_192", yi = "_listUp_46mn8_196", bi = "_option_46mn8_208", xi = "_optionActive_46mn8_225", Si = "_optionSelected_46mn8_229", Ci = "_optionDisabled_46mn8_233", wi = "_optionLabel_46mn8_239", Ti = "_checkIcon_46mn8_247", Y = {
3120
+ row: ii,
3121
+ disabled: ai,
3122
+ leading: oi,
3123
+ content: si,
3124
+ title: ci,
3125
+ subtitle: li,
3126
+ comboWrap: ui,
3127
+ trigger: di,
3128
+ triggerOpen: fi,
3129
+ triggerLabel: pi,
3130
+ placeholder: mi,
3131
+ chevron: hi,
3132
+ chevronOpen: gi,
3133
+ list: _i,
3134
+ "list-in": "_list-in_46mn8_1",
3135
+ listDown: vi,
3136
+ listUp: yi,
3137
+ "list-in-up": "_list-in-up_46mn8_1",
3138
+ option: bi,
3139
+ optionActive: xi,
3140
+ optionSelected: Si,
3141
+ optionDisabled: Ci,
3142
+ optionLabel: wi,
3143
+ checkIcon: Ti
3144
+ };
3145
+ //#endregion
3146
+ //#region src/components/ComboRow/ComboRow.tsx
3147
+ function Ei({ title: e, subtitle: r, leading: i, options: a, value: o, defaultValue: c, onValueChange: p, disabled: m = !1, className: h, ...g }) {
3148
+ let _ = o !== void 0, [v, y] = f(c), b = _ ? o : v, [x, S] = f(!1), [C, w] = f(-1), [T, E] = f(!1), D = u(), O = u(), k = d(null), A = d(null), j = a.find((e) => e.value === b), M = s(() => {
3149
+ if (!k.current) return;
3150
+ let e = k.current.getBoundingClientRect(), t = window.innerHeight - e.bottom, n = Math.min(a.length * 44 + 8, 260);
3151
+ E(t < n && e.top > n);
3152
+ }, [a.length]), N = s(() => {
3153
+ if (m) return;
3154
+ M(), S(!0);
3155
+ let e = a.findIndex((e) => e.value === b && !e.disabled);
3156
+ w(e >= 0 ? e : a.findIndex((e) => !e.disabled));
3157
+ }, [
3158
+ m,
3159
+ M,
3160
+ a,
3161
+ b
3162
+ ]), P = s(() => {
3163
+ S(!1), w(-1), k.current?.focus();
3164
+ }, []), ee = s((e) => {
3165
+ e.disabled || (_ || y(e.value), p?.(e.value), P());
3166
+ }, [
3167
+ _,
3168
+ p,
3169
+ P
3170
+ ]);
3171
+ l(() => {
3172
+ !x || C < 0 || !A.current || A.current.children[C]?.scrollIntoView({ block: "nearest" });
3173
+ }, [C, x]), l(() => {
3174
+ if (!x) return;
3175
+ let e = (e) => {
3176
+ !k.current?.contains(e.target) && !A.current?.contains(e.target) && P();
3177
+ };
3178
+ return document.addEventListener("mousedown", e), () => document.removeEventListener("mousedown", e);
3179
+ }, [x, P]);
3180
+ let te = s((e) => {
3181
+ switch (e.key) {
3182
+ case "Enter":
3183
+ case " ":
3184
+ case "ArrowDown":
3185
+ e.preventDefault(), N();
3186
+ break;
3187
+ case "ArrowUp":
3188
+ e.preventDefault(), M(), S(!0), w(a.reduce((e, t, n) => t.disabled ? e : n, -1));
3189
+ break;
3190
+ }
3191
+ }, [
3192
+ N,
3193
+ M,
3194
+ a
3195
+ ]), ne = s((e) => {
3196
+ let t = a.map((e, t) => ({
3197
+ o: e,
3198
+ i: t
3199
+ })).filter(({ o: e }) => !e.disabled).map(({ i: e }) => e), n = t.indexOf(C);
3200
+ switch (e.key) {
3201
+ case "ArrowDown": {
3202
+ e.preventDefault();
3203
+ let r = t[Math.min(n + 1, t.length - 1)];
3204
+ w(r ?? C);
3205
+ break;
3206
+ }
3207
+ case "ArrowUp": {
3208
+ e.preventDefault();
3209
+ let r = t[Math.max(n - 1, 0)];
3210
+ w(r ?? C);
3211
+ break;
3212
+ }
3213
+ case "Home":
3214
+ e.preventDefault(), w(t[0] ?? -1);
3215
+ break;
3216
+ case "End":
3217
+ e.preventDefault(), w(t[t.length - 1] ?? -1);
3218
+ break;
3219
+ case "Enter":
3220
+ case " ":
3221
+ e.preventDefault(), C >= 0 && ee(a[C]);
3222
+ break;
3223
+ case "Escape":
3224
+ case "Tab":
3225
+ P();
3226
+ break;
3227
+ }
3228
+ }, [
3229
+ a,
3230
+ C,
3231
+ ee,
3232
+ P
3233
+ ]);
3234
+ return /* @__PURE__ */ n("div", {
3235
+ className: [
3236
+ Y.row,
3237
+ m ? Y.disabled : null,
3238
+ h
3239
+ ].filter(Boolean).join(" "),
3240
+ ...g,
3241
+ children: [
3242
+ i && /* @__PURE__ */ t("span", {
3243
+ className: Y.leading,
3244
+ children: i
3245
+ }),
3246
+ /* @__PURE__ */ n("span", {
3247
+ className: Y.content,
3248
+ children: [/* @__PURE__ */ t("span", {
3249
+ className: Y.title,
3250
+ children: e
3251
+ }), r && /* @__PURE__ */ t("span", {
3252
+ className: Y.subtitle,
3253
+ children: r
3254
+ })]
3255
+ }),
3256
+ /* @__PURE__ */ n("div", {
3257
+ className: Y.comboWrap,
3258
+ children: [/* @__PURE__ */ n("button", {
3259
+ ref: k,
3260
+ id: D,
3261
+ type: "button",
3262
+ role: "combobox",
3263
+ "aria-haspopup": "listbox",
3264
+ "aria-expanded": x,
3265
+ "aria-controls": O,
3266
+ "aria-activedescendant": x && C >= 0 ? `${O}-opt-${C}` : void 0,
3267
+ disabled: m,
3268
+ className: [Y.trigger, x ? Y.triggerOpen : null].filter(Boolean).join(" "),
3269
+ onClick: () => x ? P() : N(),
3270
+ onKeyDown: te,
3271
+ children: [/* @__PURE__ */ t("span", {
3272
+ className: [Y.triggerLabel, j ? null : Y.placeholder].filter(Boolean).join(" "),
3273
+ children: j?.label ?? "—"
3274
+ }), /* @__PURE__ */ t("svg", {
3275
+ className: [Y.chevron, x ? Y.chevronOpen : null].filter(Boolean).join(" "),
3276
+ width: "16",
3277
+ height: "16",
3278
+ viewBox: "0 0 16 16",
3279
+ "aria-hidden": "true",
3280
+ focusable: "false",
3281
+ children: /* @__PURE__ */ t("path", {
3282
+ d: "M4 6l4 4 4-4",
3283
+ fill: "none",
3284
+ stroke: "currentColor",
3285
+ strokeWidth: "1.5",
3286
+ strokeLinecap: "round",
3287
+ strokeLinejoin: "round"
3288
+ })
3289
+ })]
3290
+ }), x && /* @__PURE__ */ t("ul", {
3291
+ ref: A,
3292
+ id: O,
3293
+ role: "listbox",
3294
+ "aria-labelledby": D,
3295
+ tabIndex: -1,
3296
+ className: [Y.list, T ? Y.listUp : Y.listDown].filter(Boolean).join(" "),
3297
+ onKeyDown: ne,
3298
+ children: a.map((e, r) => /* @__PURE__ */ n("li", {
3299
+ id: `${O}-opt-${r}`,
3300
+ role: "option",
3301
+ "aria-selected": e.value === b,
3302
+ "aria-disabled": e.disabled,
3303
+ className: [
3304
+ Y.option,
3305
+ e.value === b ? Y.optionSelected : null,
3306
+ r === C ? Y.optionActive : null,
3307
+ e.disabled ? Y.optionDisabled : null
3308
+ ].filter(Boolean).join(" "),
3309
+ onMouseEnter: () => !e.disabled && w(r),
3310
+ onClick: () => ee(e),
3311
+ children: [/* @__PURE__ */ t("span", {
3312
+ className: Y.optionLabel,
3313
+ children: e.label
3314
+ }), e.value === b && /* @__PURE__ */ t("svg", {
3315
+ width: "16",
3316
+ height: "16",
3317
+ viewBox: "0 0 16 16",
3318
+ "aria-hidden": "true",
3319
+ focusable: "false",
3320
+ className: Y.checkIcon,
3321
+ children: /* @__PURE__ */ t("path", {
3322
+ d: "M3 8l4 4 6-6",
3323
+ fill: "none",
3324
+ stroke: "currentColor",
3325
+ strokeWidth: "1.75",
3326
+ strokeLinecap: "round",
3327
+ strokeLinejoin: "round"
3328
+ })
3329
+ })]
3330
+ }, e.value))
3331
+ })]
3332
+ })
3333
+ ]
3334
+ });
3335
+ }
3336
+ var X = {
3337
+ row: "_row_1kogj_3",
3338
+ focused: "_focused_1kogj_16",
3339
+ disabled: "_disabled_1kogj_25",
3340
+ leading: "_leading_1kogj_33",
3341
+ trailing: "_trailing_1kogj_40",
3342
+ fieldWrap: "_fieldWrap_1kogj_49",
3343
+ label: "_label_1kogj_61",
3344
+ labelFloated: "_labelFloated_1kogj_82",
3345
+ input: "_input_1kogj_91",
3346
+ inputFloated: "_inputFloated_1kogj_114"
3347
+ };
3348
+ //#endregion
3349
+ //#region src/components/EntryRow/EntryRow.tsx
3350
+ function Di({ title: e, value: r, defaultValue: i = "", onValueChange: a, leading: o, trailing: s, disabled: c, className: l, id: p, onChange: m, ...h }) {
3351
+ let g = u(), _ = p ?? g, v = r !== void 0, [y, b] = f(String(i)), x = v ? String(r) : y, [S, C] = f(!1), w = d(null), T = S || x.length > 0;
3352
+ return /* @__PURE__ */ n("div", {
3353
+ className: [
3354
+ X.row,
3355
+ S ? X.focused : null,
3356
+ c ? X.disabled : null,
3357
+ l
3358
+ ].filter(Boolean).join(" "),
3359
+ onClick: () => w.current?.focus(),
3360
+ children: [
3361
+ o && /* @__PURE__ */ t("span", {
3362
+ className: X.leading,
3363
+ children: o
3364
+ }),
3365
+ /* @__PURE__ */ n("span", {
3366
+ className: X.fieldWrap,
3367
+ children: [/* @__PURE__ */ t("label", {
3368
+ htmlFor: _,
3369
+ className: [X.label, T ? X.labelFloated : null].filter(Boolean).join(" "),
3370
+ children: e
3371
+ }), /* @__PURE__ */ t("input", {
3372
+ ref: w,
3373
+ id: _,
3374
+ className: [X.input, T ? X.inputFloated : null].filter(Boolean).join(" "),
3375
+ value: x,
3376
+ disabled: c,
3377
+ onFocus: () => C(!0),
3378
+ onBlur: () => C(!1),
3379
+ onChange: (e) => {
3380
+ v || b(e.target.value), a?.(e.target.value), m?.(e);
3381
+ },
3382
+ ...h
3383
+ })]
3384
+ }),
3385
+ s && /* @__PURE__ */ t("span", {
3386
+ className: X.trailing,
3387
+ children: s
3388
+ })
3389
+ ]
3390
+ });
3391
+ }
3392
+ var Oi = { revealButton: "_revealButton_1j8z0_3" };
3393
+ //#endregion
3394
+ //#region src/components/PasswordEntryRow/PasswordEntryRow.tsx
3395
+ function ki({ trailing: r, disabled: i, ...a }) {
3396
+ let [o, s] = f(!1), c = /* @__PURE__ */ t("button", {
3397
+ type: "button",
3398
+ className: Oi.revealButton,
3399
+ onClick: (e) => {
3400
+ e.stopPropagation(), s((e) => !e);
3401
+ },
3402
+ "aria-label": o ? "Conceal password" : "Reveal password",
3403
+ "aria-pressed": o,
3404
+ disabled: i,
3405
+ children: /* @__PURE__ */ t(F, {
3406
+ icon: o ? Ie : Fe,
3407
+ size: "md",
3408
+ "aria-hidden": !0
3409
+ })
3410
+ });
3411
+ return /* @__PURE__ */ t(Di, {
3412
+ ...a,
3413
+ type: o ? "text" : "password",
3414
+ disabled: i,
3415
+ trailing: /* @__PURE__ */ n(e, { children: [r, c] })
3416
+ });
3417
+ }
3418
+ var Z = {
3419
+ row: "_row_ycg6f_3",
3420
+ disabled: "_disabled_ycg6f_16",
3421
+ leading: "_leading_ycg6f_23",
3422
+ content: "_content_ycg6f_32",
3423
+ title: "_title_ycg6f_40",
3424
+ subtitle: "_subtitle_ycg6f_51",
3425
+ spin: "_spin_ycg6f_65",
3426
+ spinBtn: "_spinBtn_ycg6f_100",
3427
+ spinValue: "_spinValue_ycg6f_144"
3428
+ };
3429
+ //#endregion
3430
+ //#region src/components/SpinRow/SpinRow.tsx
3431
+ function Ai(e) {
3432
+ let t = e.toString(), n = t.indexOf(".");
3433
+ return n === -1 ? 0 : t.length - n - 1;
3434
+ }
3435
+ function ji(e, t, n) {
3436
+ return Math.min(n, Math.max(t, e));
3437
+ }
3438
+ function Mi({ title: e, subtitle: r, leading: i, value: a, defaultValue: o = 0, onValueChange: c, min: l = 0, max: d = 100, step: p = 1, decimals: m, disabled: h = !1, className: g, ..._ }) {
3439
+ let v = a !== void 0, [y, b] = f(o), x = v ? a : y, S = m ?? Ai(p), C = u(), w = s((e) => {
3440
+ let t = parseFloat(ji(e, l, d).toFixed(S));
3441
+ v || b(t), c?.(t);
3442
+ }, [
3443
+ v,
3444
+ l,
3445
+ d,
3446
+ S,
3447
+ c
3448
+ ]), T = s((e) => {
3449
+ switch (e.key) {
3450
+ case "ArrowUp":
3451
+ e.preventDefault(), w(x + p);
3452
+ break;
3453
+ case "ArrowDown":
3454
+ e.preventDefault(), w(x - p);
3455
+ break;
3456
+ case "PageUp":
3457
+ e.preventDefault(), w(x + p * 10);
3458
+ break;
3459
+ case "PageDown":
3460
+ e.preventDefault(), w(x - p * 10);
3461
+ break;
3462
+ case "Home":
3463
+ e.preventDefault(), w(l);
3464
+ break;
3465
+ case "End":
3466
+ e.preventDefault(), w(d);
3467
+ break;
3468
+ }
3469
+ }, [
3470
+ x,
3471
+ p,
3472
+ l,
3473
+ d,
3474
+ w
3475
+ ]);
3476
+ return /* @__PURE__ */ n("div", {
3477
+ className: [
3478
+ Z.row,
3479
+ h ? Z.disabled : null,
3480
+ g
3481
+ ].filter(Boolean).join(" "),
3482
+ ..._,
3483
+ children: [
3484
+ i && /* @__PURE__ */ t("span", {
3485
+ className: Z.leading,
3486
+ children: i
3487
+ }),
3488
+ /* @__PURE__ */ n("span", {
3489
+ className: Z.content,
3490
+ children: [/* @__PURE__ */ t("span", {
3491
+ className: Z.title,
3492
+ children: e
3493
+ }), r && /* @__PURE__ */ t("span", {
3494
+ className: Z.subtitle,
3495
+ children: r
3496
+ })]
3497
+ }),
3498
+ /* @__PURE__ */ n("div", {
3499
+ role: "spinbutton",
3500
+ "aria-valuenow": x,
3501
+ "aria-valuemin": l,
3502
+ "aria-valuemax": d,
3503
+ "aria-labelledby": C,
3504
+ "aria-disabled": h || void 0,
3505
+ tabIndex: h ? -1 : 0,
3506
+ onKeyDown: h ? void 0 : T,
3507
+ className: Z.spin,
3508
+ children: [
3509
+ /* @__PURE__ */ t("button", {
3510
+ type: "button",
3511
+ tabIndex: -1,
3512
+ "aria-hidden": "true",
3513
+ disabled: h || x <= l,
3514
+ className: Z.spinBtn,
3515
+ onClick: (e) => {
3516
+ e.stopPropagation(), w(x - p);
3517
+ },
3518
+ children: "−"
3519
+ }),
3520
+ /* @__PURE__ */ t("span", {
3521
+ id: C,
3522
+ className: Z.spinValue,
3523
+ "aria-hidden": "true",
3524
+ children: x.toFixed(S)
3525
+ }),
3526
+ /* @__PURE__ */ t("button", {
3527
+ type: "button",
3528
+ tabIndex: -1,
3529
+ "aria-hidden": "true",
3530
+ disabled: h || x >= d,
3531
+ className: Z.spinBtn,
3532
+ onClick: (e) => {
3533
+ e.stopPropagation(), w(x + p);
3534
+ },
3535
+ children: "+"
3536
+ })
3537
+ ]
3538
+ })
3539
+ ]
3540
+ });
3541
+ }
3542
+ //#endregion
3543
+ //#region src/components/NavigationView/NavigationView.module.css
3544
+ var Ni = "_view_1r1om_3", Pi = "_page_1r1om_12", Fi = "_pageHeader_1r1om_23", Ii = "_pageTitle_1r1om_34", Li = "_pageContent_1r1om_43", Ri = "_enterForward_1r1om_52", zi = "_enterBack_1r1om_56", Bi = {
3545
+ view: Ni,
3546
+ page: Pi,
3547
+ pageHeader: Fi,
3548
+ pageTitle: Ii,
3549
+ pageContent: Li,
3550
+ enterForward: Ri,
3551
+ "slide-in-right": "_slide-in-right_1r1om_1",
3552
+ enterBack: zi,
3553
+ "slide-in-left": "_slide-in-left_1r1om_1"
3554
+ }, Vi = a({
3555
+ navigate: () => {},
3556
+ pop: () => {},
3557
+ canGoBack: !1,
3558
+ currentTag: "",
3559
+ direction: "forward"
3560
+ });
3561
+ function Hi() {
3562
+ return c(Vi);
3563
+ }
3564
+ function Ui({ tag: e, title: r, children: i, className: a, ...o }) {
3565
+ let { currentTag: s, direction: l } = c(Vi);
3566
+ return s === e ? /* @__PURE__ */ n("div", {
3567
+ className: [
3568
+ Bi.page,
3569
+ l === "forward" ? Bi.enterForward : Bi.enterBack,
3570
+ a
3571
+ ].filter(Boolean).join(" "),
3572
+ ...o,
3573
+ children: [/* @__PURE__ */ t("div", {
3574
+ className: Bi.pageHeader,
3575
+ children: /* @__PURE__ */ t("span", {
3576
+ className: Bi.pageTitle,
3577
+ children: r
3578
+ })
3579
+ }), /* @__PURE__ */ t("div", {
3580
+ className: Bi.pageContent,
3581
+ children: i
3582
+ })]
3583
+ }) : null;
3584
+ }
3585
+ function Wi({ initialPage: e, children: n, className: r, ...i }) {
3586
+ let [a, o] = f([e]), s = a[a.length - 1], c = a.length > 1, [l, u] = f("forward");
3587
+ return /* @__PURE__ */ t(Vi.Provider, {
3588
+ value: {
3589
+ navigate: (e) => {
3590
+ u("forward"), o((t) => [...t, e]);
3591
+ },
3592
+ pop: () => {
3593
+ a.length <= 1 || (u("back"), o((e) => e.slice(0, -1)));
3594
+ },
3595
+ canGoBack: c,
3596
+ currentTag: s,
3597
+ direction: l
3598
+ },
3599
+ children: /* @__PURE__ */ t("div", {
3600
+ className: [Bi.view, r].filter(Boolean).join(" "),
3601
+ ...i,
3602
+ children: n
3603
+ })
3604
+ });
3605
+ }
3606
+ //#endregion
3607
+ //#region src/components/BottomSheet/BottomSheet.module.css
3608
+ var Gi = "_backdrop_zzv98_3", Ki = "_sheet_zzv98_26", qi = "_handle_zzv98_49", Ji = "_handleBar_zzv98_56", Yi = "_title_zzv98_66", Xi = "_content_zzv98_79", Zi = {
3609
+ backdrop: Gi,
3610
+ "backdrop-in": "_backdrop-in_zzv98_1",
3611
+ sheet: Ki,
3612
+ "sheet-in": "_sheet-in_zzv98_1",
3613
+ handle: qi,
3614
+ handleBar: Ji,
3615
+ title: Yi,
3616
+ content: Xi
3617
+ }, Qi = "button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"])";
3618
+ function $i({ open: e, title: r, children: i, onClose: a, closeOnBackdrop: o = !0, className: c, ...f }) {
3619
+ let m = d(null), h = u(), g = d(null);
3620
+ l(() => {
3621
+ e ? (g.current = document.activeElement, (m.current?.querySelector(Qi))?.focus()) : g.current?.focus();
3622
+ }, [e]);
3623
+ let _ = s((e) => {
3624
+ if (e.key === "Escape") {
3625
+ e.preventDefault(), a?.();
3626
+ return;
3627
+ }
3628
+ if (e.key !== "Tab") return;
3629
+ let t = Array.from(m.current?.querySelectorAll(Qi) ?? []);
3630
+ if (t.length === 0) return;
3631
+ let n = t[0], r = t[t.length - 1];
3632
+ e.shiftKey ? document.activeElement === n && (e.preventDefault(), r.focus()) : document.activeElement === r && (e.preventDefault(), n.focus());
3633
+ }, [a]);
3634
+ if (!e) return null;
3635
+ let v = /* @__PURE__ */ t("div", {
3636
+ className: Zi.backdrop,
3637
+ onClick: o ? a : void 0,
3638
+ "aria-hidden": "true",
3639
+ children: /* @__PURE__ */ n("div", {
3640
+ ref: m,
3641
+ role: "dialog",
3642
+ "aria-modal": "true",
3643
+ "aria-labelledby": r ? h : void 0,
3644
+ className: [Zi.sheet, c].filter(Boolean).join(" "),
3645
+ onKeyDown: _,
3646
+ onClick: (e) => e.stopPropagation(),
3647
+ ...f,
3648
+ children: [
3649
+ /* @__PURE__ */ t("div", {
3650
+ className: Zi.handle,
3651
+ "aria-hidden": "true",
3652
+ children: /* @__PURE__ */ t("div", { className: Zi.handleBar })
3653
+ }),
3654
+ r && /* @__PURE__ */ t("div", {
3655
+ id: h,
3656
+ className: Zi.title,
3657
+ children: r
3658
+ }),
3659
+ i && /* @__PURE__ */ t("div", {
3660
+ className: Zi.content,
3661
+ children: i
3662
+ })
3663
+ ]
3664
+ })
3665
+ });
3666
+ return typeof document > "u" ? v : p(v, document.body);
3667
+ }
3668
+ var Q = {
3669
+ carousel: "_carousel_117hp_3",
3670
+ horizontal: "_horizontal_117hp_20",
3671
+ vertical: "_vertical_117hp_27",
3672
+ slide: "_slide_117hp_36",
3673
+ indicatorDots: "_indicatorDots_117hp_46",
3674
+ dot: "_dot_117hp_54",
3675
+ dotActive: "_dotActive_117hp_73",
3676
+ indicatorLines: "_indicatorLines_117hp_85",
3677
+ line: "_line_117hp_93",
3678
+ lineActive: "_lineActive_117hp_110"
3679
+ };
3680
+ //#endregion
3681
+ //#region src/components/Carousel/Carousel.tsx
3682
+ function ea({ pages: e, currentPage: n, onPageSelected: r, className: i, ...a }) {
3683
+ return /* @__PURE__ */ t("div", {
3684
+ className: [Q.indicatorDots, i].filter(Boolean).join(" "),
3685
+ role: "tablist",
3686
+ "aria-label": "Carousel pages",
3687
+ ...a,
3688
+ children: Array.from({ length: e }, (e, i) => /* @__PURE__ */ t("button", {
3689
+ type: "button",
3690
+ role: "tab",
3691
+ "aria-selected": i === n,
3692
+ "aria-label": `Page ${i + 1}`,
3693
+ className: [Q.dot, i === n ? Q.dotActive : null].filter(Boolean).join(" "),
3694
+ onClick: () => r?.(i)
3695
+ }, i))
3696
+ });
3697
+ }
3698
+ function ta({ pages: e, currentPage: n, onPageSelected: r, className: i, ...a }) {
3699
+ return /* @__PURE__ */ t("div", {
3700
+ className: [Q.indicatorLines, i].filter(Boolean).join(" "),
3701
+ role: "tablist",
3702
+ "aria-label": "Carousel pages",
3703
+ ...a,
3704
+ children: Array.from({ length: e }, (e, i) => /* @__PURE__ */ t("button", {
3705
+ type: "button",
3706
+ role: "tab",
3707
+ "aria-selected": i === n,
3708
+ "aria-label": `Page ${i + 1}`,
3709
+ className: [Q.line, i === n ? Q.lineActive : null].filter(Boolean).join(" "),
3710
+ onClick: () => r?.(i)
3711
+ }, i))
3712
+ });
3713
+ }
3714
+ function na({ children: e, orientation: n = "horizontal", spacing: i = 0, loop: a = !1, onPageChanged: o, page: c, className: u, ...p }) {
3715
+ let m = d(null), h = r.count(e), [g, _] = f(0), v = c !== void 0, y = v ? c : g;
3716
+ l(() => {
3717
+ v && b(c, "smooth");
3718
+ }, [c]);
3719
+ let b = s((e, t = "smooth") => {
3720
+ let r = m.current;
3721
+ r && (n === "horizontal" ? r.scrollTo({
3722
+ left: r.clientWidth * e,
3723
+ behavior: t
3724
+ }) : r.scrollTo({
3725
+ top: r.clientHeight * e,
3726
+ behavior: t
3727
+ }));
3728
+ }, [n]);
3729
+ l(() => {
3730
+ let e = m.current;
3731
+ if (!e) return;
3732
+ let t = () => {
3733
+ Array.from(e.children);
3734
+ let t = n === "horizontal" ? e.clientWidth : e.clientHeight, r = n === "horizontal" ? e.scrollLeft : e.scrollTop, i = Math.round(r / (t || 1)), a = Math.max(0, Math.min(i, h - 1));
3735
+ v || _(a), o?.(a);
3736
+ };
3737
+ return e.addEventListener("scroll", t, { passive: !0 }), () => e.removeEventListener("scroll", t);
3738
+ }, [
3739
+ n,
3740
+ h,
3741
+ v,
3742
+ o
3743
+ ]);
3744
+ let x = s((e) => {
3745
+ let t = n === "horizontal" ? e.key === "ArrowRight" : e.key === "ArrowDown", r = n === "horizontal" ? e.key === "ArrowLeft" : e.key === "ArrowUp";
3746
+ if (t) {
3747
+ e.preventDefault();
3748
+ let t = a ? (y + 1) % h : Math.min(y + 1, h - 1);
3749
+ b(t), v || _(t), o?.(t);
3750
+ } else if (r) {
3751
+ e.preventDefault();
3752
+ let t = a ? (y - 1 + h) % h : Math.max(y - 1, 0);
3753
+ b(t), v || _(t), o?.(t);
3754
+ }
3755
+ }, [
3756
+ y,
3757
+ h,
3758
+ a,
3759
+ n,
3760
+ b,
3761
+ v,
3762
+ o
3763
+ ]), S = n === "horizontal";
3764
+ return /* @__PURE__ */ t("div", {
3765
+ ref: m,
3766
+ role: "region",
3767
+ "aria-roledescription": "carousel",
3768
+ tabIndex: 0,
3769
+ className: [
3770
+ Q.carousel,
3771
+ S ? Q.horizontal : Q.vertical,
3772
+ u
3773
+ ].filter(Boolean).join(" "),
3774
+ style: S ? { columnGap: i || void 0 } : { rowGap: i || void 0 },
3775
+ onKeyDown: x,
3776
+ ...p,
3777
+ children: r.map(e, (e, n) => /* @__PURE__ */ t("div", {
3778
+ className: Q.slide,
3779
+ role: "group",
3780
+ "aria-roledescription": "slide",
3781
+ "aria-label": `${n + 1} of ${h}`,
3782
+ children: e
3783
+ }, n))
3784
+ });
3785
+ }
3786
+ //#endregion
3787
+ //#region src/components/Bin/Bin.tsx
3788
+ function ra({ children: e, ...n }) {
3789
+ return /* @__PURE__ */ t("div", {
3790
+ ...n,
3791
+ children: e
3792
+ });
3793
+ }
3794
+ var ia = {
3795
+ content: "_content_1xkwk_3",
3796
+ icon: "_icon_1xkwk_9",
3797
+ label: "_label_1xkwk_15"
3798
+ };
3799
+ //#endregion
3800
+ //#region src/components/ButtonContent/ButtonContent.tsx
3801
+ function aa({ icon: e, label: r, iconPosition: i = "start", className: a, ...o }) {
3802
+ return /* @__PURE__ */ n("span", {
3803
+ className: [
3804
+ ia.content,
3805
+ i === "end" ? ia.iconEnd : null,
3806
+ a
3807
+ ].filter(Boolean).join(" "),
3808
+ ...o,
3809
+ children: [
3810
+ e && i === "start" && /* @__PURE__ */ t("span", {
3811
+ className: ia.icon,
3812
+ "aria-hidden": "true",
3813
+ children: e
3814
+ }),
3815
+ /* @__PURE__ */ t("span", {
3816
+ className: ia.label,
3817
+ children: r
3818
+ }),
3819
+ e && i === "end" && /* @__PURE__ */ t("span", {
3820
+ className: ia.icon,
3821
+ "aria-hidden": "true",
3822
+ children: e
3823
+ })
3824
+ ]
3825
+ });
3826
+ }
3827
+ var oa = {
3828
+ label: "_label_h3znl_3",
3829
+ key: "_key_h3znl_9"
3830
+ }, sa = {
3831
+ ctrl: "⌃",
3832
+ control: "⌃",
3833
+ shift: "⇧",
3834
+ alt: "⌥",
3835
+ option: "⌥",
3836
+ super: "⊞",
3837
+ win: "⊞",
3838
+ cmd: "⌘",
3839
+ command: "⌘",
3840
+ meta: "⌘",
3841
+ up: "↑",
3842
+ down: "↓",
3843
+ left: "←",
3844
+ right: "→",
3845
+ enter: "↵",
3846
+ return: "↵",
3847
+ backspace: "⌫",
3848
+ delete: "⌦",
3849
+ escape: "⎋",
3850
+ esc: "⎋",
3851
+ tab: "⇥",
3852
+ space: "␣",
3853
+ pageup: "⇞",
3854
+ pagedown: "⇟",
3855
+ home: "⇱",
3856
+ end: "⇲"
3857
+ };
3858
+ function ca({ shortcut: e, symbols: n = !0, className: r, ...i }) {
3859
+ let a = e.split("+").map((e) => e.trim()).filter(Boolean);
3860
+ return /* @__PURE__ */ t("span", {
3861
+ className: [oa.label, r].filter(Boolean).join(" "),
3862
+ "aria-label": e,
3863
+ ...i,
3864
+ children: a.map((e, r) => {
3865
+ let i = n ? sa[e.toLowerCase()] ?? e : e;
3866
+ return /* @__PURE__ */ t("kbd", {
3867
+ className: oa.key,
3868
+ children: i
3869
+ }, r);
3870
+ })
3871
+ });
3872
+ }
3873
+ var la = {
3874
+ toolbarView: "_toolbarView_134hf_3",
3875
+ top: "_top_134hf_11",
3876
+ content: "_content_134hf_16",
3877
+ bottom: "_bottom_134hf_23"
3878
+ };
3879
+ //#endregion
3880
+ //#region src/components/ToolbarView/ToolbarView.tsx
3881
+ function ua({ topBar: e, bottomBar: r, children: i, className: a, ...o }) {
3882
+ return /* @__PURE__ */ n("div", {
3883
+ className: [la.toolbarView, a].filter(Boolean).join(" "),
3884
+ ...o,
3885
+ children: [
3886
+ e && /* @__PURE__ */ t("div", {
3887
+ className: la.top,
3888
+ children: e
3889
+ }),
3890
+ /* @__PURE__ */ t("div", {
3891
+ className: la.content,
3892
+ children: i
3893
+ }),
3894
+ r && /* @__PURE__ */ t("div", {
3895
+ className: la.bottom,
3896
+ children: r
3897
+ })
3898
+ ]
3899
+ });
3900
+ }
3901
+ var da = {
3902
+ windowTitle: "_windowTitle_zm877_3",
3903
+ title: "_title_zm877_11",
3904
+ subtitle: "_subtitle_zm877_24"
3905
+ };
3906
+ //#endregion
3907
+ //#region src/components/WindowTitle/WindowTitle.tsx
3908
+ function fa({ title: e, subtitle: r, className: i, ...a }) {
3909
+ return /* @__PURE__ */ n("div", {
3910
+ className: [da.windowTitle, i].filter(Boolean).join(" "),
3911
+ ...a,
3912
+ children: [/* @__PURE__ */ t("span", {
3913
+ className: da.title,
3914
+ children: e
3915
+ }), r && /* @__PURE__ */ t("span", {
3916
+ className: da.subtitle,
3917
+ children: r
3918
+ })]
3919
+ });
3920
+ }
3921
+ var pa = {
3922
+ group: "_group_17s4f_3",
3923
+ header: "_header_17s4f_11",
3924
+ headerText: "_headerText_17s4f_17",
3925
+ title: "_title_17s4f_25",
3926
+ description: "_description_17s4f_33",
3927
+ suffix: "_suffix_17s4f_42",
3928
+ content: "_content_17s4f_48"
3929
+ };
3930
+ //#endregion
3931
+ //#region src/components/PreferencesGroup/PreferencesGroup.tsx
3932
+ function ma({ title: e, description: r, headerSuffix: i, children: a, className: o, ...s }) {
3933
+ let c = e || r || i;
3934
+ return /* @__PURE__ */ n("div", {
3935
+ className: [pa.group, o].filter(Boolean).join(" "),
3936
+ ...s,
3937
+ children: [c && /* @__PURE__ */ n("div", {
3938
+ className: pa.header,
3939
+ children: [/* @__PURE__ */ n("div", {
3940
+ className: pa.headerText,
3941
+ children: [e && /* @__PURE__ */ t("span", {
3942
+ className: pa.title,
3943
+ children: e
3944
+ }), r && /* @__PURE__ */ t("span", {
3945
+ className: pa.description,
3946
+ children: r
3947
+ })]
3948
+ }), i && /* @__PURE__ */ t("div", {
3949
+ className: pa.suffix,
3950
+ children: i
3951
+ })]
3952
+ }), /* @__PURE__ */ t("div", {
3953
+ className: pa.content,
3954
+ children: a
3955
+ })]
3956
+ });
3957
+ }
3958
+ var ha = {
3959
+ page: "_page_gt42j_3",
3960
+ inner: "_inner_gt42j_10"
3961
+ };
3962
+ //#endregion
3963
+ //#region src/components/PreferencesPage/PreferencesPage.tsx
3964
+ function ga({ title: e, iconName: n, children: r, className: i, ...a }) {
3965
+ return /* @__PURE__ */ t("div", {
3966
+ className: [ha.page, i].filter(Boolean).join(" "),
3967
+ role: "tabpanel",
3968
+ ...a,
3969
+ children: /* @__PURE__ */ t("div", {
3970
+ className: ha.inner,
3971
+ children: r
3972
+ })
3973
+ });
3974
+ }
3975
+ //#endregion
3976
+ //#region src/components/PreferencesDialog/PreferencesDialog.module.css
3977
+ var _a = "_backdrop_1u1bd_3", va = "_dialog_1u1bd_26", ya = "_dialogMulti_1u1bd_46", ba = "_header_1u1bd_63", xa = "_closeBtn_1u1bd_73", Sa = "_title_1u1bd_102", Ca = "_searchWrap_1u1bd_112", wa = "_searchInput_1u1bd_116", Ta = "_body_1u1bd_143", Ea = "_sidebar_1u1bd_152", Da = "_navList_1u1bd_160", Oa = "_navItem_1u1bd_169", ka = "_navItemActive_1u1bd_190", Aa = "_navIcon_1u1bd_205", ja = "_navLabel_1u1bd_211", Ma = "_pageWrap_1u1bd_221", $ = {
3978
+ backdrop: _a,
3979
+ "backdrop-in": "_backdrop-in_1u1bd_1",
3980
+ dialog: va,
3981
+ "dialog-in": "_dialog-in_1u1bd_1",
3982
+ dialogMulti: ya,
3983
+ header: ba,
3984
+ closeBtn: xa,
3985
+ title: Sa,
3986
+ searchWrap: Ca,
3987
+ searchInput: wa,
3988
+ body: Ta,
3989
+ sidebar: Ea,
3990
+ navList: Da,
3991
+ navItem: Oa,
3992
+ navItemActive: ka,
3993
+ navIcon: Aa,
3994
+ navLabel: ja,
3995
+ pageWrap: Ma
3996
+ }, Na = "button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex=\"-1\"])";
3997
+ function Pa(e, t) {
3998
+ if (e.key !== "Tab") return;
3999
+ let n = Array.from(t.current?.querySelectorAll(Na) ?? []);
4000
+ if (!n.length) return;
4001
+ let r = n[0], i = n[n.length - 1];
4002
+ e.shiftKey ? document.activeElement === r && (e.preventDefault(), i.focus()) : document.activeElement === i && (e.preventDefault(), r.focus());
4003
+ }
4004
+ function Fa({ open: e, onClose: a, children: c, searchable: m = !0, className: h, ...g }) {
4005
+ let _ = d(null), v = d(null), y = u(), b = r.toArray(c).filter((e) => o(e)), [x, S] = f(0), [C, w] = f("");
4006
+ l(() => {
4007
+ if (e) {
4008
+ S(0), w("");
4009
+ let e = requestAnimationFrame(() => {
4010
+ m && v.current ? v.current.focus() : (_.current?.querySelector(Na))?.focus();
4011
+ });
4012
+ return () => cancelAnimationFrame(e);
4013
+ }
4014
+ }, [e, m]);
4015
+ let T = s((e) => {
4016
+ if (e.key === "Escape") {
4017
+ e.stopPropagation(), a();
4018
+ return;
4019
+ }
4020
+ Pa(e, _);
4021
+ }, [a]), E = b.length > 1, D = b[x] ?? b[0], O = C.trim().toLowerCase();
4022
+ return e ? p(/* @__PURE__ */ t("div", {
4023
+ className: $.backdrop,
4024
+ onClick: (e) => {
4025
+ e.target === e.currentTarget && a();
4026
+ },
4027
+ role: "presentation",
4028
+ children: /* @__PURE__ */ n("div", {
4029
+ ref: _,
4030
+ role: "dialog",
4031
+ "aria-modal": "true",
4032
+ "aria-labelledby": y,
4033
+ className: [
4034
+ $.dialog,
4035
+ E ? $.dialogMulti : null,
4036
+ h
4037
+ ].filter(Boolean).join(" "),
4038
+ onKeyDown: T,
4039
+ ...g,
4040
+ children: [/* @__PURE__ */ n("div", {
4041
+ className: $.header,
4042
+ children: [
4043
+ /* @__PURE__ */ t("button", {
4044
+ type: "button",
4045
+ className: $.closeBtn,
4046
+ onClick: a,
4047
+ "aria-label": "Close preferences",
4048
+ children: "✕"
4049
+ }),
4050
+ /* @__PURE__ */ t("span", {
4051
+ id: y,
4052
+ className: $.title,
4053
+ children: "Preferences"
4054
+ }),
4055
+ m && /* @__PURE__ */ t("div", {
4056
+ className: $.searchWrap,
4057
+ children: /* @__PURE__ */ t("input", {
4058
+ ref: v,
4059
+ type: "search",
4060
+ placeholder: "Search…",
4061
+ value: C,
4062
+ onChange: (e) => w(e.target.value),
4063
+ className: $.searchInput,
4064
+ "aria-label": "Search preferences"
4065
+ })
4066
+ })
4067
+ ]
4068
+ }), /* @__PURE__ */ n("div", {
4069
+ className: $.body,
4070
+ children: [E && /* @__PURE__ */ t("nav", {
4071
+ className: $.sidebar,
4072
+ "aria-label": "Preferences pages",
4073
+ children: /* @__PURE__ */ t("ul", {
4074
+ role: "tablist",
4075
+ className: $.navList,
4076
+ children: b.map((e, r) => /* @__PURE__ */ t("li", {
4077
+ role: "presentation",
4078
+ children: /* @__PURE__ */ n("button", {
4079
+ role: "tab",
4080
+ type: "button",
4081
+ "aria-selected": r === x,
4082
+ className: [$.navItem, r === x ? $.navItemActive : null].filter(Boolean).join(" "),
4083
+ onClick: () => S(r),
4084
+ children: [e.props.iconName && /* @__PURE__ */ t("span", {
4085
+ className: [
4086
+ $.navIcon,
4087
+ "icon",
4088
+ e.props.iconName
4089
+ ].join(" "),
4090
+ "aria-hidden": "true"
4091
+ }), /* @__PURE__ */ t("span", {
4092
+ className: $.navLabel,
4093
+ children: e.props.title
4094
+ })]
4095
+ })
4096
+ }, r))
4097
+ })
4098
+ }), /* @__PURE__ */ t("div", {
4099
+ className: $.pageWrap,
4100
+ children: D && i(D, { "data-search-query": O || void 0 })
4101
+ })]
4102
+ })]
4103
+ })
4104
+ }), document.body) : null;
4105
+ }
4106
+ //#endregion
4107
+ export { Tt as ActionRow, te as Avatar, Ae as Badge, we as Banner, ra as Bin, $i as BottomSheet, Dt as BoxedList, Lr as BreakpointBin, h as Button, aa as ButtonContent, zr as ButtonRow, k as Card, na as Carousel, ea as CarouselIndicatorDots, ta as CarouselIndicatorLines, ri as CheckRow, se as Checkbox, dr as Chip, Xn as Clamp, Ei as ComboRow, bn as Dialog, zn as Dropdown, Di as EntryRow, Yr as ExpanderRow, Oe as Footer, Jr as Frame, Ve as GNOME_BREAKPOINTS, Ee as HeaderBar, F as Icon, $r as InlineViewSwitcher, ei as InlineViewSwitcherItem, nr as Link, Kr as LinkedGroup, Ui as NavigationPage, Zn as NavigationSplitView, Wi as NavigationView, Qn as OverlaySplitView, ki as PasswordEntryRow, Jn as Popover, Fa as PreferencesDialog, ma as PreferencesGroup, ga as PreferencesPage, pe as ProgressBar, de as RadioButton, Re as SearchBar, re as Separator, ca as ShortcutLabel, Mr as ShortcutsDialog, dt as Sidebar, st as SidebarCollapsedContext, _t as SidebarItem, ft as SidebarSection, Un as Slider, Wr as Spacer, xt as SpinButton, Mi as SpinRow, j as Spinner, Vr as SplitButton, Be as StatusPage, ae as Switch, ni as SwitchRow, St as TabBar, Ct as TabItem, wt as TabPanel, T as Text, le as TextField, Bt as Toast, Vt as Toaster, or as ToggleGroup, sr as ToggleGroupItem, Ur as Toolbar, ua as ToolbarView, gt as Tooltip, kt as ViewSwitcher, er as ViewSwitcherBar, At as ViewSwitcherItem, Fr as ViewSwitcherSidebar, Ir as ViewSwitcherSidebarItem, fa as WindowTitle, lr as WrapBox, He as useBreakpoint, Hi as useNavigation, ct as useSidebarCollapsed };
4108
+
4109
+ //# sourceMappingURL=index.js.map