@gnome-ui/react 1.8.0 → 1.9.1

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