@appforgeapps/uiforge 0.5.2 → 0.5.4

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.
package/dist/uiforge.js CHANGED
@@ -1,31 +1,26 @@
1
- import { jsx as n, jsxs as y, Fragment as ye } from "react/jsx-runtime";
2
- import { useState as te, useMemo as oe, useCallback as B, useRef as ne, useEffect as ae, createElement as Ne, PureComponent as Qe, createContext as Xe, useContext as et } from "react";
3
- const qr = ({
1
+ import { jsx as n, jsxs as b, Fragment as ye } from "react/jsx-runtime";
2
+ import { useState as X, useMemo as se, useCallback as B, useRef as Q, useEffect as ie, createElement as Se, PureComponent as Qe, createContext as Xe, useContext as et, useId as tt } from "react";
3
+ const Zr = ({
4
4
  variant: t = "primary",
5
5
  size: e = "medium",
6
6
  theme: r = "light",
7
7
  density: i = "default",
8
8
  children: a,
9
- className: m = "",
9
+ className: c = "",
10
10
  ...s
11
11
  }) => {
12
- const l = "uiforge-button", $ = `${l}--${t}`, L = `${l}--${e}`, k = `${l}--${r}`, E = i === "condensed" ? `${l}--condensed` : "", P = [l, $, L, k, E, m].filter(Boolean).join(" ");
13
- return /* @__PURE__ */ n("button", { className: P, "data-theme": r, ...s, children: a });
14
- }, Kr = ({
12
+ const l = "uiforge-button", I = `${l}--${t}`, _ = `${l}--${e}`, L = `${l}--${r}`, A = i === "condensed" ? `${l}--condensed` : "", S = [l, I, _, L, A, c].filter(Boolean).join(" ");
13
+ return /* @__PURE__ */ n("button", { className: S, "data-theme": r, ...s, children: a });
14
+ }, Gr = ({
15
15
  isOpen: t,
16
16
  controlsId: e,
17
17
  ariaLabel: r = "Toggle menu",
18
18
  className: i = "",
19
19
  size: a = "medium",
20
- ...m
20
+ ...c
21
21
  }) => {
22
- const s = "uiforge-hamburger-button", l = [
23
- s,
24
- `${s}--${a}`,
25
- t && `${s}--open`,
26
- i
27
- ].filter(Boolean).join(" ");
28
- return /* @__PURE__ */ y(
22
+ const s = "uiforge-hamburger-button", l = [s, `${s}--${a}`, t && `${s}--open`, i].filter(Boolean).join(" ");
23
+ return /* @__PURE__ */ b(
29
24
  "button",
30
25
  {
31
26
  type: "button",
@@ -33,7 +28,7 @@ const qr = ({
33
28
  "aria-expanded": t,
34
29
  "aria-controls": e,
35
30
  "aria-label": r,
36
- ...m,
31
+ ...c,
37
32
  children: [
38
33
  /* @__PURE__ */ n("span", { className: `${s}__bar`, "aria-hidden": "true" }),
39
34
  /* @__PURE__ */ n("span", { className: `${s}__bar`, "aria-hidden": "true" }),
@@ -41,183 +36,197 @@ const qr = ({
41
36
  ]
42
37
  }
43
38
  );
44
- }, Zr = ({
39
+ }, Yr = ({
40
+ icon: t,
41
+ size: e = "medium",
42
+ ariaLabel: r,
43
+ badge: i,
44
+ className: a = "",
45
+ disabled: c,
46
+ ...s
47
+ }) => {
48
+ const l = "uiforge-icon-button", I = [l, `${l}--${e}`, a].filter(Boolean).join(" ");
49
+ return /* @__PURE__ */ b("button", { type: "button", className: I, "aria-label": r, disabled: c, ...s, children: [
50
+ /* @__PURE__ */ n("span", { className: `${l}__icon`, "aria-hidden": "true", children: t }),
51
+ i !== void 0 && /* @__PURE__ */ n("span", { className: `${l}__badge`, "aria-hidden": "true", children: i })
52
+ ] });
53
+ }, Jr = ({
45
54
  columns: t,
46
55
  data: e,
47
56
  theme: r = "light",
48
57
  selectable: i = !1,
49
58
  selectedRows: a,
50
- getRowKey: m = (O, C) => C,
59
+ getRowKey: c = (O, k) => k,
51
60
  onSelectionChange: s,
52
61
  onCellEdit: l,
53
- actionButtons: $ = [],
54
- searchable: L = !1,
55
- searchPlaceholder: k = "Search...",
56
- onSearch: E,
57
- customFilter: P,
58
- pagination: c,
59
- onPageChange: _,
62
+ actionButtons: I = [],
63
+ searchable: _ = !1,
64
+ searchPlaceholder: L = "Search...",
65
+ onSearch: A,
66
+ customFilter: S,
67
+ pagination: d,
68
+ onPageChange: C,
60
69
  onPageSizeChange: o,
61
- pageSizeOptions: d = [10, 25, 50, 100],
62
- className: u = "",
63
- loading: g = !1,
64
- emptyMessage: S = "No data available"
70
+ pageSizeOptions: u = [10, 25, 50, 100],
71
+ className: m = "",
72
+ loading: y = !1,
73
+ emptyMessage: N = "No data available"
65
74
  }) => {
66
- const [O, C] = te(/* @__PURE__ */ new Set()), [b, M] = te(""), [A, U] = te(null), [R, F] = te(""), f = a ?? O, N = oe(() => !L || !b ? e : e.filter((p) => P ? P(p, b) : Object.values(p).some((T) => T == null ? !1 : String(T).toLowerCase().includes(b.toLowerCase()))), [e, b, L, P]), x = oe(() => {
67
- if (!c || c.serverSide)
68
- return N;
69
- const p = c.currentPage * c.pageSize, T = p + c.pageSize;
70
- return N.slice(p, T);
71
- }, [N, c]), w = oe(() => c ? c.serverSide && c.totalItems !== void 0 ? Math.ceil(c.totalItems / c.pageSize) : Math.ceil(N.length / c.pageSize) : 1, [c, N.length]), se = B(() => e.filter((p, T) => {
72
- const W = m(p, T);
73
- return f.has(W);
74
- }), [e, f, m]), J = B(
75
- (p) => {
75
+ const [O, k] = X(/* @__PURE__ */ new Set()), [$, D] = X(""), [P, M] = X(null), [R, j] = X(""), p = a ?? O, h = se(() => !_ || !$ ? e : e.filter((v) => S ? S(v, $) : Object.values(v).some((T) => T == null ? !1 : String(T).toLowerCase().includes($.toLowerCase()))), [e, $, _, S]), w = se(() => {
76
+ if (!d || d.serverSide)
77
+ return h;
78
+ const v = d.currentPage * d.pageSize, T = v + d.pageSize;
79
+ return h.slice(v, T);
80
+ }, [h, d]), x = se(() => d ? d.serverSide && d.totalItems !== void 0 ? Math.ceil(d.totalItems / d.pageSize) : Math.ceil(h.length / d.pageSize) : 1, [d, h.length]), ae = B(() => e.filter((v, T) => {
81
+ const F = c(v, T);
82
+ return p.has(F);
83
+ }), [e, p, c]), J = B(
84
+ (v) => {
76
85
  const T = /* @__PURE__ */ new Set();
77
- p && x.forEach((W) => {
78
- const Z = e.indexOf(W), de = m(W, Z);
86
+ v && w.forEach((F) => {
87
+ const Z = e.indexOf(F), de = c(F, Z);
79
88
  T.add(de);
80
- }), a === void 0 && C(T), s?.(T, p ? x : []);
89
+ }), a === void 0 && k(T), s?.(T, v ? w : []);
81
90
  },
82
- [x, e, m, s, a]
83
- ), ie = B(
84
- (p, T, W) => {
85
- const Z = new Set(f);
86
- W ? Z.add(p) : Z.delete(p), a === void 0 && C(Z);
87
- const de = e.filter((K, fe) => {
88
- const ge = m(K, fe);
91
+ [w, e, c, s, a]
92
+ ), oe = B(
93
+ (v, T, F) => {
94
+ const Z = new Set(p);
95
+ F ? Z.add(v) : Z.delete(v), a === void 0 && k(Z);
96
+ const de = e.filter((K, pe) => {
97
+ const ge = c(K, pe);
89
98
  return Z.has(ge);
90
99
  });
91
100
  s?.(Z, de);
92
101
  },
93
- [f, e, m, s, a]
94
- ), ee = B(
95
- (p) => {
96
- M(p), E?.(p);
102
+ [p, e, c, s, a]
103
+ ), re = B(
104
+ (v) => {
105
+ D(v), A?.(v);
97
106
  },
98
- [E]
107
+ [A]
99
108
  ), ce = B(
100
- (p, T, W) => {
101
- U({ rowKey: p, columnKey: T }), F(W);
109
+ (v, T, F) => {
110
+ M({ rowKey: v, columnKey: T }), j(F);
102
111
  },
103
112
  []
104
113
  ), le = B(
105
- (p, T, W) => {
106
- l?.(p, T, R, W), U(null), F("");
114
+ (v, T, F) => {
115
+ l?.(v, T, R, F), M(null), j("");
107
116
  },
108
117
  [R, l]
109
- ), j = B(() => {
110
- U(null), F("");
118
+ ), H = B(() => {
119
+ M(null), j("");
111
120
  }, []), he = B(
112
- (p) => {
113
- c && _?.(p, c.pageSize);
121
+ (v) => {
122
+ d && C?.(v, d.pageSize);
114
123
  },
115
- [c, _]
124
+ [d, C]
116
125
  ), G = B(
117
- (p) => {
118
- o?.(p), c && _?.(0, p);
126
+ (v) => {
127
+ o?.(v), d && C?.(0, v);
119
128
  },
120
- [o, _, c]
121
- ), re = oe(() => x.length === 0 ? !1 : x.every((p) => {
122
- const T = e.indexOf(p), W = m(p, T);
123
- return f.has(W);
124
- }), [x, f, e, m]), me = oe(() => x.length === 0 ? !1 : x.some((T) => {
125
- const W = e.indexOf(T), Z = m(T, W);
126
- return f.has(Z);
127
- }) && !re, [x, f, re, e, m]), I = "uiforge-grid", q = `${I}--${r}`;
128
- return /* @__PURE__ */ y("div", { className: `${I} ${q} ${u}`.trim(), "data-theme": r, children: [
129
- (L || $.length > 0) && /* @__PURE__ */ y("div", { className: `${I}__toolbar`, children: [
130
- L && /* @__PURE__ */ n("div", { className: `${I}__search`, children: /* @__PURE__ */ n(
129
+ [o, C, d]
130
+ ), ne = se(() => w.length === 0 ? !1 : w.every((v) => {
131
+ const T = e.indexOf(v), F = c(v, T);
132
+ return p.has(F);
133
+ }), [w, p, e, c]), me = se(() => w.length === 0 ? !1 : w.some((T) => {
134
+ const F = e.indexOf(T), Z = c(T, F);
135
+ return p.has(Z);
136
+ }) && !ne, [w, p, ne, e, c]), E = "uiforge-grid", q = `${E}--${r}`;
137
+ return /* @__PURE__ */ b("div", { className: `${E} ${q} ${m}`.trim(), "data-theme": r, children: [
138
+ (_ || I.length > 0) && /* @__PURE__ */ b("div", { className: `${E}__toolbar`, children: [
139
+ _ && /* @__PURE__ */ n("div", { className: `${E}__search`, children: /* @__PURE__ */ n(
131
140
  "input",
132
141
  {
133
142
  type: "text",
134
- className: `${I}__search-input`,
135
- placeholder: k,
136
- value: b,
137
- onChange: (p) => ee(p.target.value),
143
+ className: `${E}__search-input`,
144
+ placeholder: L,
145
+ value: $,
146
+ onChange: (v) => re(v.target.value),
138
147
  "aria-label": "Search"
139
148
  }
140
149
  ) }),
141
- $.length > 0 && /* @__PURE__ */ n("div", { className: `${I}__actions`, children: $.map((p, T) => {
142
- const W = p.disabled || p.requiresSelection && f.size === 0;
150
+ I.length > 0 && /* @__PURE__ */ n("div", { className: `${E}__actions`, children: I.map((v, T) => {
151
+ const F = v.disabled || v.requiresSelection && p.size === 0;
143
152
  return /* @__PURE__ */ n(
144
153
  "button",
145
154
  {
146
- className: `${I}__action-button ${I}__action-button--${p.variant || "primary"}`,
147
- onClick: () => p.onClick(se()),
148
- disabled: W,
149
- children: p.label
155
+ className: `${E}__action-button ${E}__action-button--${v.variant || "primary"}`,
156
+ onClick: () => v.onClick(ae()),
157
+ disabled: F,
158
+ children: v.label
150
159
  },
151
160
  T
152
161
  );
153
162
  }) })
154
163
  ] }),
155
- /* @__PURE__ */ n("div", { className: `${I}__table-container`, children: /* @__PURE__ */ y("table", { className: `${I}__table`, role: "table", children: [
156
- /* @__PURE__ */ n("thead", { children: /* @__PURE__ */ y("tr", { children: [
157
- i && /* @__PURE__ */ n("th", { className: `${I}__header-cell ${I}__header-cell--checkbox`, children: /* @__PURE__ */ n(
164
+ /* @__PURE__ */ n("div", { className: `${E}__table-container`, children: /* @__PURE__ */ b("table", { className: `${E}__table`, role: "table", children: [
165
+ /* @__PURE__ */ n("thead", { children: /* @__PURE__ */ b("tr", { children: [
166
+ i && /* @__PURE__ */ n("th", { className: `${E}__header-cell ${E}__header-cell--checkbox`, children: /* @__PURE__ */ n(
158
167
  "input",
159
168
  {
160
169
  type: "checkbox",
161
- checked: re,
162
- ref: (p) => {
163
- p && (p.indeterminate = me);
170
+ checked: ne,
171
+ ref: (v) => {
172
+ v && (v.indeterminate = me);
164
173
  },
165
- onChange: (p) => J(p.target.checked),
174
+ onChange: (v) => J(v.target.checked),
166
175
  "aria-label": "Select all rows"
167
176
  }
168
177
  ) }),
169
- t.map((p) => /* @__PURE__ */ n(
178
+ t.map((v) => /* @__PURE__ */ n(
170
179
  "th",
171
180
  {
172
- className: `${I}__header-cell`,
173
- style: { width: p.width },
174
- children: p.header
181
+ className: `${E}__header-cell`,
182
+ style: { width: v.width },
183
+ children: v.header
175
184
  },
176
- p.key
185
+ v.key
177
186
  ))
178
187
  ] }) }),
179
- /* @__PURE__ */ n("tbody", { children: g ? /* @__PURE__ */ n("tr", { children: /* @__PURE__ */ n(
188
+ /* @__PURE__ */ n("tbody", { children: y ? /* @__PURE__ */ n("tr", { children: /* @__PURE__ */ n(
180
189
  "td",
181
190
  {
182
191
  colSpan: t.length + (i ? 1 : 0),
183
- className: `${I}__loading-cell`,
192
+ className: `${E}__loading-cell`,
184
193
  children: "Loading..."
185
194
  }
186
- ) }) : x.length === 0 ? /* @__PURE__ */ n("tr", { children: /* @__PURE__ */ n(
195
+ ) }) : w.length === 0 ? /* @__PURE__ */ n("tr", { children: /* @__PURE__ */ n(
187
196
  "td",
188
197
  {
189
198
  colSpan: t.length + (i ? 1 : 0),
190
- className: `${I}__empty-cell`,
191
- children: S
199
+ className: `${E}__empty-cell`,
200
+ children: N
192
201
  }
193
- ) }) : x.map((p, T) => {
194
- const W = e.indexOf(p), Z = m(p, W), de = f.has(Z);
195
- return /* @__PURE__ */ y(
202
+ ) }) : w.map((v, T) => {
203
+ const F = e.indexOf(v), Z = c(v, F), de = p.has(Z);
204
+ return /* @__PURE__ */ b(
196
205
  "tr",
197
206
  {
198
- className: `${I}__row ${de ? `${I}__row--selected` : ""}`,
207
+ className: `${E}__row ${de ? `${E}__row--selected` : ""}`,
199
208
  children: [
200
- i && /* @__PURE__ */ n("td", { className: `${I}__cell ${I}__cell--checkbox`, children: /* @__PURE__ */ n(
209
+ i && /* @__PURE__ */ n("td", { className: `${E}__cell ${E}__cell--checkbox`, children: /* @__PURE__ */ n(
201
210
  "input",
202
211
  {
203
212
  type: "checkbox",
204
213
  checked: de,
205
- onChange: (K) => ie(Z, p, K.target.checked),
214
+ onChange: (K) => oe(Z, v, K.target.checked),
206
215
  "aria-label": `Select row ${T + 1}`
207
216
  }
208
217
  ) }),
209
218
  t.map((K) => {
210
- const fe = K.field ? p[K.field] : void 0, ge = A?.rowKey === Z && A?.columnKey === K.key;
211
- return /* @__PURE__ */ n("td", { className: `${I}__cell`, children: ge ? /* @__PURE__ */ y("div", { className: `${I}__edit-cell`, children: [
219
+ const pe = K.field ? v[K.field] : void 0, ge = P?.rowKey === Z && P?.columnKey === K.key;
220
+ return /* @__PURE__ */ n("td", { className: `${E}__cell`, children: ge ? /* @__PURE__ */ b("div", { className: `${E}__edit-cell`, children: [
212
221
  /* @__PURE__ */ n(
213
222
  "input",
214
223
  {
215
224
  type: "text",
216
- className: `${I}__edit-input`,
225
+ className: `${E}__edit-input`,
217
226
  value: String(R ?? ""),
218
- onChange: (ue) => F(ue.target.value),
227
+ onChange: (ue) => j(ue.target.value),
219
228
  onKeyDown: (ue) => {
220
- ue.key === "Enter" ? le(Z, K.key, p) : ue.key === "Escape" && j();
229
+ ue.key === "Enter" ? le(Z, K.key, v) : ue.key === "Escape" && H();
221
230
  },
222
231
  autoFocus: !0,
223
232
  "aria-label": `Edit ${K.header}`
@@ -226,8 +235,8 @@ const qr = ({
226
235
  /* @__PURE__ */ n(
227
236
  "button",
228
237
  {
229
- className: `${I}__edit-button ${I}__edit-button--save`,
230
- onClick: () => le(Z, K.key, p),
238
+ className: `${E}__edit-button ${E}__edit-button--save`,
239
+ onClick: () => le(Z, K.key, v),
231
240
  "aria-label": "Save",
232
241
  children: "✓"
233
242
  }
@@ -235,8 +244,8 @@ const qr = ({
235
244
  /* @__PURE__ */ n(
236
245
  "button",
237
246
  {
238
- className: `${I}__edit-button ${I}__edit-button--cancel`,
239
- onClick: j,
247
+ className: `${E}__edit-button ${E}__edit-button--cancel`,
248
+ onClick: H,
240
249
  "aria-label": "Cancel",
241
250
  children: "✕"
242
251
  }
@@ -244,17 +253,17 @@ const qr = ({
244
253
  ] }) : /* @__PURE__ */ n(
245
254
  "div",
246
255
  {
247
- className: `${I}__cell-content ${K.editable ? `${I}__cell-content--editable` : ""}`,
256
+ className: `${E}__cell-content ${K.editable ? `${E}__cell-content--editable` : ""}`,
248
257
  onClick: () => {
249
- K.editable && ce(Z, K.key, fe);
258
+ K.editable && ce(Z, K.key, pe);
250
259
  },
251
260
  onKeyDown: (ue) => {
252
- K.editable && (ue.key === "Enter" || ue.key === " ") && ce(Z, K.key, fe);
261
+ K.editable && (ue.key === "Enter" || ue.key === " ") && ce(Z, K.key, pe);
253
262
  },
254
263
  tabIndex: K.editable ? 0 : void 0,
255
264
  role: K.editable ? "button" : void 0,
256
265
  "aria-label": K.editable ? `Edit ${K.header}` : void 0,
257
- children: K.render ? K.render(fe, p, W) : String(fe ?? "")
266
+ children: K.render ? K.render(pe, v, F) : String(pe ?? "")
258
267
  }
259
268
  ) }, K.key);
260
269
  })
@@ -264,216 +273,225 @@ const qr = ({
264
273
  );
265
274
  }) })
266
275
  ] }) }),
267
- c && w > 1 && /* @__PURE__ */ y("div", { className: `${I}__pagination`, children: [
268
- /* @__PURE__ */ n("div", { className: `${I}__pagination-info`, children: c.serverSide && c.totalItems !== void 0 ? /* @__PURE__ */ y(ye, { children: [
276
+ d && x > 1 && /* @__PURE__ */ b("div", { className: `${E}__pagination`, children: [
277
+ /* @__PURE__ */ n("div", { className: `${E}__pagination-info`, children: d.serverSide && d.totalItems !== void 0 ? /* @__PURE__ */ b(ye, { children: [
269
278
  "Showing ",
270
- c.currentPage * c.pageSize + 1,
279
+ d.currentPage * d.pageSize + 1,
271
280
  " to",
272
281
  " ",
273
282
  Math.min(
274
- (c.currentPage + 1) * c.pageSize,
275
- c.totalItems
283
+ (d.currentPage + 1) * d.pageSize,
284
+ d.totalItems
276
285
  ),
277
286
  " ",
278
287
  "of ",
279
- c.totalItems,
288
+ d.totalItems,
280
289
  " items"
281
- ] }) : /* @__PURE__ */ y(ye, { children: [
290
+ ] }) : /* @__PURE__ */ b(ye, { children: [
282
291
  "Showing ",
283
- c.currentPage * c.pageSize + 1,
292
+ d.currentPage * d.pageSize + 1,
284
293
  " to",
285
294
  " ",
286
- Math.min((c.currentPage + 1) * c.pageSize, N.length),
295
+ Math.min((d.currentPage + 1) * d.pageSize, h.length),
287
296
  " ",
288
297
  "of ",
289
- N.length,
298
+ h.length,
290
299
  " items"
291
300
  ] }) }),
292
- /* @__PURE__ */ y("div", { className: `${I}__pagination-controls`, children: [
301
+ /* @__PURE__ */ b("div", { className: `${E}__pagination-controls`, children: [
293
302
  /* @__PURE__ */ n(
294
303
  "button",
295
304
  {
296
- className: `${I}__pagination-button`,
297
- onClick: () => he(c.currentPage - 1),
298
- disabled: c.currentPage === 0,
305
+ className: `${E}__pagination-button`,
306
+ onClick: () => he(d.currentPage - 1),
307
+ disabled: d.currentPage === 0,
299
308
  "aria-label": "Previous page",
300
309
  children: "‹"
301
310
  }
302
311
  ),
303
- Array.from({ length: w }, (p, T) => T).map((p) => p === 0 || p === w - 1 || Math.abs(p - c.currentPage) <= 1 ? /* @__PURE__ */ n(
312
+ Array.from({ length: x }, (v, T) => T).map((v) => v === 0 || v === x - 1 || Math.abs(v - d.currentPage) <= 1 ? /* @__PURE__ */ n(
304
313
  "button",
305
314
  {
306
- className: `${I}__pagination-button ${p === c.currentPage ? `${I}__pagination-button--active` : ""}`,
307
- onClick: () => he(p),
308
- "aria-label": `Page ${p + 1}`,
309
- "aria-current": p === c.currentPage ? "page" : void 0,
310
- children: p + 1
315
+ className: `${E}__pagination-button ${v === d.currentPage ? `${E}__pagination-button--active` : ""}`,
316
+ onClick: () => he(v),
317
+ "aria-label": `Page ${v + 1}`,
318
+ "aria-current": v === d.currentPage ? "page" : void 0,
319
+ children: v + 1
311
320
  },
312
- p
313
- ) : p === c.currentPage - 2 || p === c.currentPage + 2 ? /* @__PURE__ */ n("span", { className: `${I}__pagination-ellipsis`, children: "..." }, p) : null),
321
+ v
322
+ ) : v === d.currentPage - 2 || v === d.currentPage + 2 ? /* @__PURE__ */ n("span", { className: `${E}__pagination-ellipsis`, children: "..." }, v) : null),
314
323
  /* @__PURE__ */ n(
315
324
  "button",
316
325
  {
317
- className: `${I}__pagination-button`,
318
- onClick: () => he(c.currentPage + 1),
319
- disabled: c.currentPage >= w - 1,
326
+ className: `${E}__pagination-button`,
327
+ onClick: () => he(d.currentPage + 1),
328
+ disabled: d.currentPage >= x - 1,
320
329
  "aria-label": "Next page",
321
330
  children: "›"
322
331
  }
323
332
  )
324
333
  ] }),
325
- /* @__PURE__ */ y("div", { className: `${I}__page-size`, children: [
334
+ /* @__PURE__ */ b("div", { className: `${E}__page-size`, children: [
326
335
  /* @__PURE__ */ n("label", { htmlFor: "page-size-select", children: "Items per page:" }),
327
336
  /* @__PURE__ */ n(
328
337
  "select",
329
338
  {
330
339
  id: "page-size-select",
331
- className: `${I}__page-size-select`,
332
- value: c.pageSize,
333
- onChange: (p) => G(Number(p.target.value)),
334
- children: d.map((p) => /* @__PURE__ */ n("option", { value: p, children: p }, p))
340
+ className: `${E}__page-size-select`,
341
+ value: d.pageSize,
342
+ onChange: (v) => G(Number(v.target.value)),
343
+ children: u.map((v) => /* @__PURE__ */ n("option", { value: v, children: v }, v))
335
344
  }
336
345
  )
337
346
  ] })
338
347
  ] })
339
348
  ] });
340
- }, tt = () => `block-${Date.now()}-${Math.random().toString(36).substring(2, 11)}`, Le = (t = "paragraph") => ({
341
- id: tt(),
349
+ }, rt = () => `block-${Date.now()}-${Math.random().toString(36).substring(2, 11)}`, Me = (t = "paragraph") => ({
350
+ id: rt(),
342
351
  type: t,
343
352
  content: "",
344
353
  format: {}
345
- }), Gr = ({
354
+ }), Qr = ({
346
355
  initialBlocks: t = [],
347
356
  onChange: e,
348
357
  placeholder: r = "Start typing...",
349
358
  readOnly: i = !1,
350
359
  theme: a = "light",
351
- className: m = "",
360
+ className: c = "",
352
361
  maxHeight: s
353
362
  }) => {
354
- const [l, $] = te(
355
- t.length > 0 ? t : [Le()]
356
- ), [L, k] = te(null), [E, P] = te(null), [c, _] = te(!1), o = ne(null);
357
- ae(() => {
363
+ const [l, I] = X(
364
+ t.length > 0 ? t : [Me()]
365
+ ), [_, L] = X(null), [A, S] = X(null), [d, C] = X(!1), o = Q(null);
366
+ ie(() => {
358
367
  e && e(l);
359
368
  }, [l, e]);
360
- const d = B((f, N) => {
361
- $((x) => x.map((w) => w.id === f ? { ...w, ...N } : w));
362
- }, []), u = B((f = "paragraph", N) => {
363
- const x = Le(f);
364
- $((w) => {
365
- if (!N)
366
- return [...w, x];
367
- const se = w.findIndex((ie) => ie.id === N), J = [...w];
368
- return J.splice(se + 1, 0, x), J;
369
- }), k(x.id);
370
- }, []), g = B((f) => {
371
- $((N) => {
372
- const x = N.filter((w) => w.id !== f);
373
- return x.length > 0 ? x : [Le()];
369
+ const u = B((p, h) => {
370
+ I((w) => w.map((x) => x.id === p ? { ...x, ...h } : x));
371
+ }, []), m = B((p = "paragraph", h) => {
372
+ const w = Me(p);
373
+ I((x) => {
374
+ if (!h)
375
+ return [...x, w];
376
+ const ae = x.findIndex((oe) => oe.id === h), J = [...x];
377
+ return J.splice(ae + 1, 0, w), J;
378
+ }), L(w.id);
379
+ }, []), y = B((p) => {
380
+ I((h) => {
381
+ const w = h.filter((x) => x.id !== p);
382
+ return w.length > 0 ? w : [Me()];
374
383
  });
375
- }, []), S = B((f, N) => {
376
- $((x) => {
377
- const w = x.findIndex((ee) => ee.id === f), se = x.findIndex((ee) => ee.id === N);
378
- if (w === -1 || se === -1) return x;
379
- const J = [...x], [ie] = J.splice(w, 1);
380
- return J.splice(se, 0, ie), J;
384
+ }, []), N = B((p, h) => {
385
+ I((w) => {
386
+ const x = w.findIndex((re) => re.id === p), ae = w.findIndex((re) => re.id === h);
387
+ if (x === -1 || ae === -1) return w;
388
+ const J = [...w], [oe] = J.splice(x, 1);
389
+ return J.splice(ae, 0, oe), J;
381
390
  });
382
391
  }, []), O = B(
383
- (f, N) => {
384
- i || (P(N), f.dataTransfer.effectAllowed = "move");
392
+ (p, h) => {
393
+ i || (S(h), p.dataTransfer.effectAllowed = "move");
385
394
  },
386
395
  [i]
387
- ), C = B((f) => {
388
- f.preventDefault(), f.dataTransfer.dropEffect = "move";
389
- }, []), b = B(
390
- (f, N) => {
391
- f.preventDefault(), E && E !== N && S(E, N), P(null);
396
+ ), k = B((p) => {
397
+ p.preventDefault(), p.dataTransfer.dropEffect = "move";
398
+ }, []), $ = B(
399
+ (p, h) => {
400
+ p.preventDefault(), A && A !== h && N(A, h), S(null);
392
401
  },
393
- [E, S]
394
- ), M = B(() => {
395
- P(null);
396
- }, []), A = B(
397
- (f) => {
398
- L && $(
399
- (N) => N.map((x) => {
400
- if (x.id === L) {
401
- const w = x.format || {};
402
+ [A, N]
403
+ ), D = B(() => {
404
+ S(null);
405
+ }, []), P = B(
406
+ (p) => {
407
+ _ && I(
408
+ (h) => h.map((w) => {
409
+ if (w.id === _) {
410
+ const x = w.format || {};
402
411
  return {
403
- ...x,
412
+ ...w,
404
413
  format: {
405
- ...w,
406
- [f]: !w[f]
414
+ ...x,
415
+ [p]: !x[p]
407
416
  }
408
417
  };
409
418
  }
410
- return x;
419
+ return w;
411
420
  })
412
421
  );
413
422
  },
414
- [L]
415
- ), U = B(
416
- (f, N) => {
417
- d(f, { type: N });
423
+ [_]
424
+ ), M = B(
425
+ (p, h) => {
426
+ u(p, { type: h });
418
427
  },
419
- [d]
428
+ [u]
420
429
  ), R = B(
421
- (f, N) => {
430
+ (p, h) => {
422
431
  if (!i) {
423
- if ((f.metaKey || f.ctrlKey) && f.key === "b")
424
- f.preventDefault(), A("bold");
425
- else if ((f.metaKey || f.ctrlKey) && f.key === "i")
426
- f.preventDefault(), A("italic");
427
- else if ((f.metaKey || f.ctrlKey) && f.key === "u")
428
- f.preventDefault(), A("underline");
429
- else if (f.key === "Enter" && !f.shiftKey) {
430
- const x = l.find((w) => w.id === N);
431
- x && x.type !== "code" && (f.preventDefault(), u("paragraph", N));
432
- } else if (f.key === "Backspace") {
433
- const x = l.find((w) => w.id === N);
434
- x && !x.content && l.length > 1 && (f.preventDefault(), g(N));
432
+ if ((p.metaKey || p.ctrlKey) && p.key === "b")
433
+ p.preventDefault(), P("bold");
434
+ else if ((p.metaKey || p.ctrlKey) && p.key === "i")
435
+ p.preventDefault(), P("italic");
436
+ else if ((p.metaKey || p.ctrlKey) && p.key === "u")
437
+ p.preventDefault(), P("underline");
438
+ else if (p.key === "Enter" && !p.shiftKey) {
439
+ const w = l.find((x) => x.id === h);
440
+ w && w.type !== "code" && (p.preventDefault(), m("paragraph", h));
441
+ } else if (p.key === "Backspace") {
442
+ const w = l.find((x) => x.id === h);
443
+ w && !w.content && l.length > 1 && (p.preventDefault(), y(h));
435
444
  }
436
445
  }
437
446
  },
438
- [i, l, A, u, g]
439
- ), F = `uiforge-blocks-editor--${a}`;
440
- return /* @__PURE__ */ y("div", { className: `uiforge-blocks-editor ${F} ${m}`, ref: o, style: { maxHeight: s }, "data-theme": a, children: [
441
- !i && c && L && /* @__PURE__ */ n(
442
- rt,
443
- {
444
- selectedBlock: l.find((f) => f.id === L),
445
- onFormatToggle: A,
446
- onBlockTypeChange: (f) => U(L, f)
447
- }
448
- ),
449
- /* @__PURE__ */ n("div", { className: "uiforge-blocks-editor__content", children: l.map((f, N) => /* @__PURE__ */ n(
450
- nt,
451
- {
452
- block: f,
453
- isSelected: L === f.id,
454
- isDragging: E === f.id,
455
- readOnly: i,
456
- placeholder: N === 0 && l.length === 1 ? r : void 0,
457
- onSelect: () => {
458
- k(f.id), _(!0);
459
- },
460
- onChange: (x) => d(f.id, x),
461
- onDelete: () => g(f.id),
462
- onDragStart: (x) => O(x, f.id),
463
- onDragOver: C,
464
- onDrop: (x) => b(x, f.id),
465
- onDragEnd: M,
466
- onKeyDown: (x) => R(x, f.id)
467
- },
468
- f.id
469
- )) }),
470
- !i && /* @__PURE__ */ n(it, { onAddBlock: u })
471
- ] });
472
- }, rt = ({ selectedBlock: t, onFormatToggle: e, onBlockTypeChange: r }) => {
447
+ [i, l, P, m, y]
448
+ ), j = `uiforge-blocks-editor--${a}`;
449
+ return /* @__PURE__ */ b(
450
+ "div",
451
+ {
452
+ className: `uiforge-blocks-editor ${j} ${c}`,
453
+ ref: o,
454
+ style: { maxHeight: s },
455
+ "data-theme": a,
456
+ children: [
457
+ !i && d && _ && /* @__PURE__ */ n(
458
+ nt,
459
+ {
460
+ selectedBlock: l.find((p) => p.id === _),
461
+ onFormatToggle: P,
462
+ onBlockTypeChange: (p) => M(_, p)
463
+ }
464
+ ),
465
+ /* @__PURE__ */ n("div", { className: "uiforge-blocks-editor__content", children: l.map((p, h) => /* @__PURE__ */ n(
466
+ it,
467
+ {
468
+ block: p,
469
+ isSelected: _ === p.id,
470
+ isDragging: A === p.id,
471
+ readOnly: i,
472
+ placeholder: h === 0 && l.length === 1 ? r : void 0,
473
+ onSelect: () => {
474
+ L(p.id), C(!0);
475
+ },
476
+ onChange: (w) => u(p.id, w),
477
+ onDelete: () => y(p.id),
478
+ onDragStart: (w) => O(w, p.id),
479
+ onDragOver: k,
480
+ onDrop: (w) => $(w, p.id),
481
+ onDragEnd: D,
482
+ onKeyDown: (w) => R(w, p.id)
483
+ },
484
+ p.id
485
+ )) }),
486
+ !i && /* @__PURE__ */ n(at, { onAddBlock: m })
487
+ ]
488
+ }
489
+ );
490
+ }, nt = ({ selectedBlock: t, onFormatToggle: e, onBlockTypeChange: r }) => {
473
491
  if (!t) return null;
474
492
  const i = t.format || {};
475
- return /* @__PURE__ */ y("div", { className: "uiforge-blocks-editor__toolbar", role: "toolbar", "aria-label": "Text formatting", children: [
476
- /* @__PURE__ */ n("div", { className: "uiforge-blocks-editor__toolbar-group", children: /* @__PURE__ */ y(
493
+ return /* @__PURE__ */ b("div", { className: "uiforge-blocks-editor__toolbar", role: "toolbar", "aria-label": "Text formatting", children: [
494
+ /* @__PURE__ */ n("div", { className: "uiforge-blocks-editor__toolbar-group", children: /* @__PURE__ */ b(
477
495
  "select",
478
496
  {
479
497
  value: t.type,
@@ -493,7 +511,7 @@ const qr = ({
493
511
  }
494
512
  ) }),
495
513
  /* @__PURE__ */ n("div", { className: "uiforge-blocks-editor__toolbar-divider" }),
496
- /* @__PURE__ */ y("div", { className: "uiforge-blocks-editor__toolbar-group", children: [
514
+ /* @__PURE__ */ b("div", { className: "uiforge-blocks-editor__toolbar-group", children: [
497
515
  /* @__PURE__ */ n(
498
516
  "button",
499
517
  {
@@ -544,52 +562,52 @@ const qr = ({
544
562
  )
545
563
  ] })
546
564
  ] });
547
- }, nt = ({
565
+ }, it = ({
548
566
  block: t,
549
567
  isSelected: e,
550
568
  isDragging: r,
551
569
  readOnly: i,
552
570
  placeholder: a,
553
- onSelect: m,
571
+ onSelect: c,
554
572
  onChange: s,
555
573
  onDelete: l,
556
- onDragStart: $,
557
- onDragOver: L,
558
- onDrop: k,
559
- onDragEnd: E,
560
- onKeyDown: P
574
+ onDragStart: I,
575
+ onDragOver: _,
576
+ onDrop: L,
577
+ onDragEnd: A,
578
+ onKeyDown: S
561
579
  }) => {
562
- const c = [
580
+ const d = [
563
581
  "uiforge-blocks-editor__block",
564
582
  `uiforge-blocks-editor__block--${t.type}`,
565
583
  e ? "uiforge-blocks-editor__block--selected" : "",
566
584
  r ? "uiforge-blocks-editor__block--dragging" : ""
567
- ].filter(Boolean).join(" "), _ = [
585
+ ].filter(Boolean).join(" "), C = [
568
586
  "uiforge-blocks-editor__block-text",
569
587
  t.format?.bold ? "uiforge-blocks-editor__block-text--bold" : "",
570
588
  t.format?.italic ? "uiforge-blocks-editor__block-text--italic" : "",
571
589
  t.format?.underline ? "uiforge-blocks-editor__block-text--underline" : "",
572
590
  t.format?.code ? "uiforge-blocks-editor__block-text--code" : ""
573
- ].filter(Boolean).join(" "), o = (u) => {
574
- s({ content: u.target.value });
575
- }, d = () => {
576
- const u = {
591
+ ].filter(Boolean).join(" "), o = (m) => {
592
+ s({ content: m.target.value });
593
+ }, u = () => {
594
+ const m = {
577
595
  value: t.content,
578
596
  onChange: o,
579
- onFocus: m,
580
- onKeyDown: P,
597
+ onFocus: c,
598
+ onKeyDown: S,
581
599
  placeholder: a,
582
600
  readOnly: i,
583
- className: _
601
+ className: C
584
602
  };
585
603
  switch (t.type) {
586
604
  case "heading1":
587
605
  return /* @__PURE__ */ n(
588
606
  "input",
589
607
  {
590
- ...u,
608
+ ...m,
591
609
  type: "text",
592
- className: `${_} uiforge-blocks-editor__heading1`,
610
+ className: `${C} uiforge-blocks-editor__heading1`,
593
611
  placeholder: a || "Heading 1"
594
612
  }
595
613
  );
@@ -597,9 +615,9 @@ const qr = ({
597
615
  return /* @__PURE__ */ n(
598
616
  "input",
599
617
  {
600
- ...u,
618
+ ...m,
601
619
  type: "text",
602
- className: `${_} uiforge-blocks-editor__heading2`,
620
+ className: `${C} uiforge-blocks-editor__heading2`,
603
621
  placeholder: a || "Heading 2"
604
622
  }
605
623
  );
@@ -607,9 +625,9 @@ const qr = ({
607
625
  return /* @__PURE__ */ n(
608
626
  "input",
609
627
  {
610
- ...u,
628
+ ...m,
611
629
  type: "text",
612
- className: `${_} uiforge-blocks-editor__heading3`,
630
+ className: `${C} uiforge-blocks-editor__heading3`,
613
631
  placeholder: a || "Heading 3"
614
632
  }
615
633
  );
@@ -617,8 +635,8 @@ const qr = ({
617
635
  return /* @__PURE__ */ n(
618
636
  "textarea",
619
637
  {
620
- ...u,
621
- className: `${_} uiforge-blocks-editor__code`,
638
+ ...m,
639
+ className: `${C} uiforge-blocks-editor__code`,
622
640
  placeholder: a || "Code block",
623
641
  rows: 4
624
642
  }
@@ -627,20 +645,20 @@ const qr = ({
627
645
  return /* @__PURE__ */ n(
628
646
  "textarea",
629
647
  {
630
- ...u,
631
- className: `${_} uiforge-blocks-editor__quote`,
648
+ ...m,
649
+ className: `${C} uiforge-blocks-editor__quote`,
632
650
  placeholder: a || "Quote",
633
651
  rows: 2
634
652
  }
635
653
  );
636
654
  case "image":
637
- return /* @__PURE__ */ y("div", { className: "uiforge-blocks-editor__image-block", children: [
655
+ return /* @__PURE__ */ b("div", { className: "uiforge-blocks-editor__image-block", children: [
638
656
  /* @__PURE__ */ n(
639
657
  "input",
640
658
  {
641
659
  type: "text",
642
660
  value: t.imageUrl || "",
643
- onChange: (g) => s({ imageUrl: g.target.value }),
661
+ onChange: (y) => s({ imageUrl: y.target.value }),
644
662
  placeholder: "Image URL",
645
663
  className: "uiforge-blocks-editor__image-url",
646
664
  readOnly: i
@@ -651,7 +669,7 @@ const qr = ({
651
669
  {
652
670
  type: "text",
653
671
  value: t.imageAlt || "",
654
- onChange: (g) => s({ imageAlt: g.target.value }),
672
+ onChange: (y) => s({ imageAlt: y.target.value }),
655
673
  placeholder: "Alt text",
656
674
  className: "uiforge-blocks-editor__image-alt",
657
675
  readOnly: i
@@ -670,8 +688,8 @@ const qr = ({
670
688
  return /* @__PURE__ */ n(
671
689
  "textarea",
672
690
  {
673
- ...u,
674
- className: `${_} uiforge-blocks-editor__paragraph`,
691
+ ...m,
692
+ className: `${C} uiforge-blocks-editor__paragraph`,
675
693
  placeholder: a || "Start typing...",
676
694
  rows: 1,
677
695
  style: { minHeight: "1.5em" }
@@ -679,18 +697,18 @@ const qr = ({
679
697
  );
680
698
  }
681
699
  };
682
- return /* @__PURE__ */ y(
700
+ return /* @__PURE__ */ b(
683
701
  "div",
684
702
  {
685
- className: c,
703
+ className: d,
686
704
  draggable: !i,
687
- onDragStart: $,
688
- onDragOver: L,
689
- onDrop: k,
690
- onDragEnd: E,
705
+ onDragStart: I,
706
+ onDragOver: _,
707
+ onDrop: L,
708
+ onDragEnd: A,
691
709
  "data-block-id": t.id,
692
710
  children: [
693
- !i && /* @__PURE__ */ y("div", { className: "uiforge-blocks-editor__block-controls", children: [
711
+ !i && /* @__PURE__ */ b("div", { className: "uiforge-blocks-editor__block-controls", children: [
694
712
  /* @__PURE__ */ n(
695
713
  "button",
696
714
  {
@@ -713,13 +731,13 @@ const qr = ({
713
731
  }
714
732
  )
715
733
  ] }),
716
- /* @__PURE__ */ n("div", { className: "uiforge-blocks-editor__block-content", children: d() })
734
+ /* @__PURE__ */ n("div", { className: "uiforge-blocks-editor__block-content", children: u() })
717
735
  ]
718
736
  }
719
737
  );
720
- }, it = ({ onAddBlock: t }) => {
721
- const [e, r] = te(!1);
722
- return /* @__PURE__ */ y("div", { className: "uiforge-blocks-editor__block-menu", children: [
738
+ }, at = ({ onAddBlock: t }) => {
739
+ const [e, r] = X(!1);
740
+ return /* @__PURE__ */ b("div", { className: "uiforge-blocks-editor__block-menu", children: [
723
741
  /* @__PURE__ */ n(
724
742
  "button",
725
743
  {
@@ -740,7 +758,7 @@ const qr = ({
740
758
  { type: "quote", label: "Quote", icon: '"' },
741
759
  { type: "code", label: "Code", icon: "</>" },
742
760
  { type: "image", label: "Image", icon: "🖼" }
743
- ].map(({ type: a, label: m, icon: s }) => /* @__PURE__ */ y(
761
+ ].map(({ type: a, label: c, icon: s }) => /* @__PURE__ */ b(
744
762
  "button",
745
763
  {
746
764
  type: "button",
@@ -750,26 +768,26 @@ const qr = ({
750
768
  },
751
769
  children: [
752
770
  /* @__PURE__ */ n("span", { className: "uiforge-blocks-editor__block-menu-icon", children: s }),
753
- /* @__PURE__ */ n("span", { children: m })
771
+ /* @__PURE__ */ n("span", { children: c })
754
772
  ]
755
773
  },
756
774
  a
757
775
  )) })
758
776
  ] });
759
777
  };
760
- function Me(t) {
778
+ function Le(t) {
761
779
  return t.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#039;");
762
780
  }
763
- function at(t) {
781
+ function ot(t) {
764
782
  const e = t.trim(), r = ["javascript:", "data:", "vbscript:", "file:"], i = e.toLowerCase();
765
783
  for (const a of r)
766
784
  if (i.startsWith(a))
767
785
  return "";
768
786
  return e;
769
787
  }
770
- function Yr(t) {
788
+ function Xr(t) {
771
789
  return t.map((e) => {
772
- let r = Me(e.content);
790
+ let r = Le(e.content);
773
791
  switch (e.format?.bold && (r = `<strong>${r}</strong>`), e.format?.italic && (r = `<em>${r}</em>`), e.format?.underline && (r = `<u>${r}</u>`), e.format?.code && (r = `<code>${r}</code>`), e.type) {
774
792
  case "heading1":
775
793
  return `<h1>${r}</h1>`;
@@ -780,9 +798,9 @@ function Yr(t) {
780
798
  case "quote":
781
799
  return `<blockquote>${r}</blockquote>`;
782
800
  case "code":
783
- return `<pre><code>${Me(e.content)}</code></pre>`;
801
+ return `<pre><code>${Le(e.content)}</code></pre>`;
784
802
  case "image": {
785
- const i = at(e.imageUrl || ""), a = Me(e.imageAlt || "");
803
+ const i = ot(e.imageUrl || ""), a = Le(e.imageAlt || "");
786
804
  return i ? `<img src="${i}" alt="${a}" />` : "";
787
805
  }
788
806
  case "list":
@@ -793,7 +811,7 @@ function Yr(t) {
793
811
  }).join(`
794
812
  `);
795
813
  }
796
- function Jr(t) {
814
+ function en(t) {
797
815
  return t.map((e) => {
798
816
  let r = e.content;
799
817
  switch (e.format?.bold && (r = `**${r}**`), e.format?.italic && (r = `*${r}*`), e.format?.code && (r = `\`${r}\``), e.type) {
@@ -820,247 +838,247 @@ ${e.content}
820
838
 
821
839
  `);
822
840
  }
823
- function Qr(t) {
841
+ function tn(t) {
824
842
  return JSON.stringify(t, null, 2);
825
843
  }
826
- const Xr = ({
844
+ const rn = ({
827
845
  options: t = [],
828
846
  value: e,
829
847
  onChange: r,
830
848
  onSearch: i,
831
849
  theme: a = "light",
832
- placeholder: m = "Select an option...",
850
+ placeholder: c = "Select an option...",
833
851
  disabled: s = !1,
834
852
  clearable: l = !1,
835
- className: $ = "",
836
- renderOption: L,
837
- renderValue: k,
838
- loading: E = !1,
839
- maxHeight: P = "300px",
840
- debounceMs: c = 300,
841
- searchable: _ = !0,
853
+ className: I = "",
854
+ renderOption: _,
855
+ renderValue: L,
856
+ loading: A = !1,
857
+ maxHeight: S = "300px",
858
+ debounceMs: d = 300,
859
+ searchable: C = !0,
842
860
  noOptionsMessage: o = "No options found",
843
- ariaLabel: d,
844
- enableCache: u = !1,
845
- cacheTTL: g,
846
- refreshOnOpen: S = !1,
861
+ ariaLabel: u,
862
+ enableCache: m = !1,
863
+ cacheTTL: y,
864
+ refreshOnOpen: N = !1,
847
865
  onClearCache: O,
848
- onForceRefresh: C
866
+ onForceRefresh: k
849
867
  }) => {
850
- const [b, M] = te(!1), [A, U] = te(""), [R, F] = te([]), [f, N] = te(0), [x, w] = te(!1), se = ne(null), J = ne(null), ie = ne(null), ee = ne(null), ce = ne(null), le = ne(i), j = ne(null), he = ne(!1), G = ne(/* @__PURE__ */ new Map()), re = ne(u), me = ne(g), I = B((h, z = 0) => h.reduce((X, Y) => {
851
- const H = { ...Y, level: z };
852
- return X.push(H), Y.children && Y.children.length > 0 && X.push(...I(Y.children, z + 1)), X;
853
- }, []), []), q = (h) => typeof h == "string" && (h.startsWith("http://") || h.startsWith("https://") || h.startsWith("data:") || h.startsWith("/")), p = oe(() => I(R.length > 0 ? R : t).find((z) => z.value === e) || null, [e, t, R, I]), T = B((h, z) => {
854
- if (!z.trim()) return h;
855
- const X = z.toLowerCase(), Y = (H) => H.reduce((pe, ve) => {
856
- const xe = ve.label.toLowerCase().includes(X), we = ve.children ? Y(ve.children) : [];
857
- return (xe || we.length > 0) && pe.push({
868
+ const [$, D] = X(!1), [P, M] = X(""), [R, j] = X([]), [p, h] = X(0), [w, x] = X(!1), ae = Q(null), J = Q(null), oe = Q(null), re = Q(null), ce = Q(null), le = Q(i), H = Q(null), he = Q(!1), G = Q(/* @__PURE__ */ new Map()), ne = Q(m), me = Q(y), E = B((f, U = 0) => f.reduce((te, Y) => {
869
+ const W = { ...Y, level: U };
870
+ return te.push(W), Y.children && Y.children.length > 0 && te.push(...E(Y.children, U + 1)), te;
871
+ }, []), []), q = (f) => typeof f == "string" && (f.startsWith("http://") || f.startsWith("https://") || f.startsWith("data:") || f.startsWith("/")), v = se(() => E(R.length > 0 ? R : t).find((U) => U.value === e) || null, [e, t, R, E]), T = B((f, U) => {
872
+ if (!U.trim()) return f;
873
+ const te = U.toLowerCase(), Y = (W) => W.reduce((fe, ve) => {
874
+ const $e = ve.label.toLowerCase().includes(te), we = ve.children ? Y(ve.children) : [];
875
+ return ($e || we.length > 0) && fe.push({
858
876
  ...ve,
859
877
  children: we.length > 0 ? we : ve.children
860
- }), pe;
878
+ }), fe;
861
879
  }, []);
862
- return Y(h);
880
+ return Y(f);
863
881
  }, []);
864
- ae(() => {
882
+ ie(() => {
865
883
  le.current = i, ce.current = null;
866
- }, [i]), ae(() => {
867
- re.current = u;
868
- }, [u]), ae(() => {
869
- me.current = g;
870
- }, [g]), ae(() => {
884
+ }, [i]), ie(() => {
885
+ ne.current = m;
886
+ }, [m]), ie(() => {
887
+ me.current = y;
888
+ }, [y]), ie(() => {
871
889
  O && O(() => {
872
890
  G.current.clear();
873
- }), C && C(() => {
891
+ }), k && k(() => {
874
892
  if (!le.current) return;
875
- j.current && j.current.abort(), j.current = new AbortController();
876
- const h = j.current.signal;
877
- w(!0), (async () => {
893
+ H.current && H.current.abort(), H.current = new AbortController();
894
+ const f = H.current.signal;
895
+ x(!0), (async () => {
878
896
  try {
879
- const z = Date.now(), X = A, Y = G.current.get(X), H = Y && (!me.current || z - Y.timestamp < me.current);
880
- let pe;
881
- re.current && H ? pe = Y.data : (pe = await (le.current ? le.current(A, h) : i?.(A, h) ?? []), !h.aborted && re.current && G.current.set(X, { data: pe, timestamp: z })), h.aborted || (F(pe), ce.current = A);
882
- } catch (z) {
883
- console.error(z), F([]);
897
+ const U = Date.now(), te = P, Y = G.current.get(te), W = Y && (!me.current || U - Y.timestamp < me.current);
898
+ let fe;
899
+ ne.current && W ? fe = Y.data : (fe = await (le.current ? le.current(P, f) : i?.(P, f) ?? []), !f.aborted && ne.current && G.current.set(te, { data: fe, timestamp: U })), f.aborted || (j(fe), ce.current = P);
900
+ } catch (U) {
901
+ console.error(U), j([]);
884
902
  } finally {
885
- w(!1);
903
+ x(!1);
886
904
  }
887
905
  })();
888
906
  });
889
- }, [O, C, A, i]), ae(() => {
890
- if (i && b) {
891
- const h = ce.current === A, z = !he.current && b;
892
- return h && !(S && z) ? void 0 : (ee.current && clearTimeout(ee.current), ee.current = setTimeout(async () => {
893
- j.current && j.current.abort(), j.current = new AbortController();
894
- const Y = j.current.signal;
895
- w(!0);
907
+ }, [O, k, P, i]), ie(() => {
908
+ if (i && $) {
909
+ const f = ce.current === P, U = !he.current && $;
910
+ return f && !(N && U) ? void 0 : (re.current && clearTimeout(re.current), re.current = setTimeout(async () => {
911
+ H.current && H.current.abort(), H.current = new AbortController();
912
+ const Y = H.current.signal;
913
+ x(!0);
896
914
  try {
897
- let H;
898
- const pe = A, ve = G.current.get(pe), xe = Date.now(), we = ve && (!me.current || xe - ve.timestamp < me.current);
899
- if (re.current && we ? H = ve.data : (H = await (le.current ? le.current(A, Y) : i(A, Y)), !Y.aborted && re.current && G.current.set(pe, { data: H, timestamp: xe })), Y.aborted) return;
900
- F(H), ce.current = A;
901
- } catch (H) {
902
- console.error("Error fetching options:", H), F([]);
915
+ let W;
916
+ const fe = P, ve = G.current.get(fe), $e = Date.now(), we = ve && (!me.current || $e - ve.timestamp < me.current);
917
+ if (ne.current && we ? W = ve.data : (W = await (le.current ? le.current(P, Y) : i(P, Y)), !Y.aborted && ne.current && G.current.set(fe, { data: W, timestamp: $e })), Y.aborted) return;
918
+ j(W), ce.current = P;
919
+ } catch (W) {
920
+ console.error("Error fetching options:", W), j([]);
903
921
  } finally {
904
- w(!1);
922
+ x(!1);
905
923
  }
906
- }, c), () => {
907
- ee.current && clearTimeout(ee.current), j.current && (j.current.abort(), j.current = null);
924
+ }, d), () => {
925
+ re.current && clearTimeout(re.current), H.current && (H.current.abort(), H.current = null);
908
926
  });
909
- } else i || F(T(t, A));
910
- he.current = b;
911
- }, [A, b, t, c, T, S, i]), ae(() => {
912
- i || F(t);
913
- }, [t, i]), ae(() => {
914
- const h = (z) => {
915
- se.current && !se.current.contains(z.target) && (M(!1), U(""));
927
+ } else i || j(T(t, P));
928
+ he.current = $;
929
+ }, [P, $, t, d, T, N, i]), ie(() => {
930
+ i || j(t);
931
+ }, [t, i]), ie(() => {
932
+ const f = (U) => {
933
+ ae.current && !ae.current.contains(U.target) && (D(!1), M(""));
916
934
  };
917
- return document.addEventListener("mousedown", h), () => document.removeEventListener("mousedown", h);
935
+ return document.addEventListener("mousedown", f), () => document.removeEventListener("mousedown", f);
918
936
  }, []);
919
- const W = oe(() => I(R.length > 0 ? R : t).filter((z) => !z.disabled), [R, t, I]), Z = oe(() => I(R.length > 0 ? R : t), [R, t, I]), de = oe(() => {
920
- const h = /* @__PURE__ */ new Map();
921
- return Z.forEach((z) => {
922
- const X = JSON.stringify({ value: z.value, label: z.label }), Y = W.findIndex(
923
- (H) => H.value === z.value && H.label === z.label
937
+ const F = se(() => E(R.length > 0 ? R : t).filter((U) => !U.disabled), [R, t, E]), Z = se(() => E(R.length > 0 ? R : t), [R, t, E]), de = se(() => {
938
+ const f = /* @__PURE__ */ new Map();
939
+ return Z.forEach((U) => {
940
+ const te = JSON.stringify({ value: U.value, label: U.label }), Y = F.findIndex(
941
+ (W) => W.value === U.value && W.label === U.label
924
942
  );
925
- h.set(X, Y);
926
- }), h;
927
- }, [Z, W]), K = (h) => {
943
+ f.set(te, Y);
944
+ }), f;
945
+ }, [Z, F]), K = (f) => {
928
946
  if (!s)
929
- switch (h.key) {
947
+ switch (f.key) {
930
948
  case "ArrowDown":
931
- h.preventDefault(), b ? N((z) => z < W.length - 1 ? z + 1 : 0) : M(!0);
949
+ f.preventDefault(), $ ? h((U) => U < F.length - 1 ? U + 1 : 0) : D(!0);
932
950
  break;
933
951
  case "ArrowUp":
934
- h.preventDefault(), b && N((z) => z > 0 ? z - 1 : W.length - 1);
952
+ f.preventDefault(), $ && h((U) => U > 0 ? U - 1 : F.length - 1);
935
953
  break;
936
954
  case "Enter":
937
- h.preventDefault(), b && W[f] ? fe(W[f]) : M(!b);
955
+ f.preventDefault(), $ && F[p] ? pe(F[p]) : D(!$);
938
956
  break;
939
957
  case "Escape":
940
- h.preventDefault(), M(!1), U("");
958
+ f.preventDefault(), D(!1), M("");
941
959
  break;
942
960
  case "Tab":
943
- b && (M(!1), U(""));
961
+ $ && (D(!1), M(""));
944
962
  break;
945
963
  }
946
964
  };
947
- ae(() => {
948
- if (b && ie.current) {
949
- const h = ie.current.querySelector(
950
- `[data-index="${f}"]`
965
+ ie(() => {
966
+ if ($ && oe.current) {
967
+ const f = oe.current.querySelector(
968
+ `[data-index="${p}"]`
951
969
  );
952
- h && typeof h.scrollIntoView == "function" && h.scrollIntoView({ block: "nearest" });
970
+ f && typeof f.scrollIntoView == "function" && f.scrollIntoView({ block: "nearest" });
953
971
  }
954
- }, [f, b]);
955
- const fe = (h) => {
956
- h.disabled || (r?.(h.value, h), M(!1), U(""), N(0));
957
- }, ge = (h) => {
958
- h.stopPropagation(), r?.(null, null), U("");
972
+ }, [p, $]);
973
+ const pe = (f) => {
974
+ f.disabled || (r?.(f.value, f), D(!1), M(""), h(0));
975
+ }, ge = (f) => {
976
+ f.stopPropagation(), r?.(null, null), M("");
959
977
  }, ue = () => {
960
- s || M((h) => {
961
- const z = !h;
962
- return z && setTimeout(() => J.current?.focus(), 0), z;
978
+ s || D((f) => {
979
+ const U = !f;
980
+ return U && setTimeout(() => J.current?.focus(), 0), U;
963
981
  });
964
982
  };
965
- ae(() => {
966
- b || (ce.current = null);
967
- }, [b]);
968
- const Se = (h) => {
969
- U(h.target.value), b || M(!0), N(0);
970
- }, _e = (h) => {
971
- const z = (h.level || 0) * 20;
972
- return /* @__PURE__ */ y("div", { className: "uiforge-combobox-option-content", style: { paddingLeft: `${z}px` }, children: [
973
- h.icon && /* @__PURE__ */ n("span", { className: "uiforge-combobox-option-icon", children: q(h.icon) ? /* @__PURE__ */ n(
983
+ ie(() => {
984
+ $ || (ce.current = null);
985
+ }, [$]);
986
+ const Ne = (f) => {
987
+ M(f.target.value), $ || D(!0), h(0);
988
+ }, _e = (f) => {
989
+ const U = (f.level || 0) * 20;
990
+ return /* @__PURE__ */ b("div", { className: "uiforge-combobox-option-content", style: { paddingLeft: `${U}px` }, children: [
991
+ f.icon && /* @__PURE__ */ n("span", { className: "uiforge-combobox-option-icon", children: q(f.icon) ? /* @__PURE__ */ n(
974
992
  "img",
975
993
  {
976
- src: h.icon,
994
+ src: f.icon,
977
995
  alt: "",
978
996
  className: "uiforge-combobox-option-icon-img"
979
997
  }
980
- ) : h.icon }),
981
- /* @__PURE__ */ n("span", { className: "uiforge-combobox-option-label", children: h.label })
998
+ ) : f.icon }),
999
+ /* @__PURE__ */ n("span", { className: "uiforge-combobox-option-label", children: f.label })
982
1000
  ] });
983
- }, v = (h) => h ? /* @__PURE__ */ y("div", { className: "uiforge-combobox-value-content", children: [
984
- h.icon && /* @__PURE__ */ n("span", { className: "uiforge-combobox-value-icon", children: q(h.icon) ? /* @__PURE__ */ n("img", { src: h.icon, alt: "", className: "uiforge-combobox-value-icon-img" }) : h.icon }),
985
- /* @__PURE__ */ n("span", { className: "uiforge-combobox-value-label", children: h.label })
986
- ] }) : m, D = "uiforge-combobox", V = `${D}--${a}`, Q = [
987
- D,
1001
+ }, g = (f) => f ? /* @__PURE__ */ b("div", { className: "uiforge-combobox-value-content", children: [
1002
+ f.icon && /* @__PURE__ */ n("span", { className: "uiforge-combobox-value-icon", children: q(f.icon) ? /* @__PURE__ */ n("img", { src: f.icon, alt: "", className: "uiforge-combobox-value-icon-img" }) : f.icon }),
1003
+ /* @__PURE__ */ n("span", { className: "uiforge-combobox-value-label", children: f.label })
1004
+ ] }) : c, z = "uiforge-combobox", V = `${z}--${a}`, ee = [
1005
+ z,
988
1006
  V,
989
- b && `${D}--open`,
990
- s && `${D}--disabled`,
991
- $
1007
+ $ && `${z}--open`,
1008
+ s && `${z}--disabled`,
1009
+ I
992
1010
  ].filter(Boolean).join(" ");
993
- return /* @__PURE__ */ y(
1011
+ return /* @__PURE__ */ b(
994
1012
  "div",
995
1013
  {
996
- ref: se,
997
- className: Q,
1014
+ ref: ae,
1015
+ className: ee,
998
1016
  onKeyDown: K,
999
1017
  role: "combobox",
1000
- "aria-expanded": b,
1018
+ "aria-expanded": $,
1001
1019
  "aria-haspopup": "listbox",
1002
- "aria-label": d,
1020
+ "aria-label": u,
1003
1021
  "aria-disabled": s,
1004
1022
  tabIndex: s ? -1 : 0,
1005
1023
  "data-theme": a,
1006
1024
  children: [
1007
- /* @__PURE__ */ y("div", { className: `${D}-control`, onClick: ue, children: [
1008
- _ && b ? /* @__PURE__ */ n(
1025
+ /* @__PURE__ */ b("div", { className: `${z}-control`, onClick: ue, children: [
1026
+ C && $ ? /* @__PURE__ */ n(
1009
1027
  "input",
1010
1028
  {
1011
1029
  ref: J,
1012
1030
  type: "text",
1013
- className: `${D}-input`,
1014
- value: A,
1015
- onChange: Se,
1016
- placeholder: m,
1031
+ className: `${z}-input`,
1032
+ value: P,
1033
+ onChange: Ne,
1034
+ placeholder: c,
1017
1035
  disabled: s,
1018
1036
  "aria-autocomplete": "list",
1019
- "aria-controls": `${D}-listbox`
1037
+ "aria-controls": `${z}-listbox`
1020
1038
  }
1021
- ) : /* @__PURE__ */ n("div", { className: `${D}-value`, children: k ? k(p) : v(p) }),
1022
- /* @__PURE__ */ y("div", { className: `${D}-indicators`, children: [
1039
+ ) : /* @__PURE__ */ n("div", { className: `${z}-value`, children: L ? L(v) : g(v) }),
1040
+ /* @__PURE__ */ b("div", { className: `${z}-indicators`, children: [
1023
1041
  l && e !== null && e !== void 0 && !s && /* @__PURE__ */ n(
1024
1042
  "button",
1025
1043
  {
1026
1044
  type: "button",
1027
- className: `${D}-clear`,
1045
+ className: `${z}-clear`,
1028
1046
  onClick: ge,
1029
1047
  "aria-label": "Clear selection",
1030
1048
  tabIndex: -1,
1031
1049
  children: "×"
1032
1050
  }
1033
1051
  ),
1034
- /* @__PURE__ */ n("span", { className: `${D}-arrow`, children: "▼" })
1052
+ /* @__PURE__ */ n("span", { className: `${z}-arrow`, children: "▼" })
1035
1053
  ] })
1036
1054
  ] }),
1037
- b && /* @__PURE__ */ n(
1055
+ $ && /* @__PURE__ */ n(
1038
1056
  "div",
1039
1057
  {
1040
- ref: ie,
1041
- className: `${D}-dropdown`,
1042
- style: { maxHeight: P },
1058
+ ref: oe,
1059
+ className: `${z}-dropdown`,
1060
+ style: { maxHeight: S },
1043
1061
  role: "listbox",
1044
- id: `${D}-listbox`,
1045
- children: E || x ? /* @__PURE__ */ n("div", { className: `${D}-loading`, children: "Loading..." }) : W.length === 0 ? /* @__PURE__ */ n("div", { className: `${D}-no-options`, children: o }) : Z.map((h) => {
1046
- const z = JSON.stringify({ value: h.value, label: h.label }), X = de.get(z) ?? -1, Y = h.value === e, H = X === f, pe = [
1047
- `${D}-option`,
1048
- Y && `${D}-option--selected`,
1049
- H && `${D}-option--highlighted`,
1050
- h.disabled && `${D}-option--disabled`
1062
+ id: `${z}-listbox`,
1063
+ children: A || w ? /* @__PURE__ */ n("div", { className: `${z}-loading`, children: "Loading..." }) : F.length === 0 ? /* @__PURE__ */ n("div", { className: `${z}-no-options`, children: o }) : Z.map((f) => {
1064
+ const U = JSON.stringify({ value: f.value, label: f.label }), te = de.get(U) ?? -1, Y = f.value === e, W = te === p, fe = [
1065
+ `${z}-option`,
1066
+ Y && `${z}-option--selected`,
1067
+ W && `${z}-option--highlighted`,
1068
+ f.disabled && `${z}-option--disabled`
1051
1069
  ].filter(Boolean).join(" ");
1052
1070
  return /* @__PURE__ */ n(
1053
1071
  "div",
1054
1072
  {
1055
- className: pe,
1056
- onClick: () => fe(h),
1073
+ className: fe,
1074
+ onClick: () => pe(f),
1057
1075
  role: "option",
1058
1076
  "aria-selected": Y,
1059
- "aria-disabled": h.disabled,
1060
- "data-index": X,
1061
- children: L ? L(h) : _e(h)
1077
+ "aria-disabled": f.disabled,
1078
+ "data-index": te,
1079
+ children: _ ? _(f) : _e(f)
1062
1080
  },
1063
- z
1081
+ U
1064
1082
  );
1065
1083
  })
1066
1084
  }
@@ -1087,34 +1105,34 @@ function Ve(t, e) {
1087
1105
  return r.__proto__ = i, r;
1088
1106
  }, Ve(t, e);
1089
1107
  }
1090
- function ot(t, e) {
1108
+ function st(t, e) {
1091
1109
  t.prototype = Object.create(e.prototype), t.prototype.constructor = t, Ve(t, e);
1092
1110
  }
1093
- var Te = Number.isNaN || function(e) {
1111
+ var Be = Number.isNaN || function(e) {
1094
1112
  return typeof e == "number" && e !== e;
1095
1113
  };
1096
- function st(t, e) {
1097
- return !!(t === e || Te(t) && Te(e));
1098
- }
1099
1114
  function lt(t, e) {
1115
+ return !!(t === e || Be(t) && Be(e));
1116
+ }
1117
+ function ct(t, e) {
1100
1118
  if (t.length !== e.length)
1101
1119
  return !1;
1102
1120
  for (var r = 0; r < t.length; r++)
1103
- if (!st(t[r], e[r]))
1121
+ if (!lt(t[r], e[r]))
1104
1122
  return !1;
1105
1123
  return !0;
1106
1124
  }
1107
1125
  function Ae(t, e) {
1108
- e === void 0 && (e = lt);
1109
- var r, i = [], a, m = !1;
1126
+ e === void 0 && (e = ct);
1127
+ var r, i = [], a, c = !1;
1110
1128
  function s() {
1111
- for (var l = [], $ = 0; $ < arguments.length; $++)
1112
- l[$] = arguments[$];
1113
- return m && r === this && e(l, i) || (a = t.apply(this, l), m = !0, r = this, i = l), a;
1129
+ for (var l = [], I = 0; I < arguments.length; I++)
1130
+ l[I] = arguments[I];
1131
+ return c && r === this && e(l, i) || (a = t.apply(this, l), c = !0, r = this, i = l), a;
1114
1132
  }
1115
1133
  return s;
1116
1134
  }
1117
- var ct = typeof performance == "object" && typeof performance.now == "function", Be = ct ? function() {
1135
+ var dt = typeof performance == "object" && typeof performance.now == "function", Te = dt ? function() {
1118
1136
  return performance.now();
1119
1137
  } : function() {
1120
1138
  return Date.now();
@@ -1122,23 +1140,23 @@ var ct = typeof performance == "object" && typeof performance.now == "function",
1122
1140
  function je(t) {
1123
1141
  cancelAnimationFrame(t.id);
1124
1142
  }
1125
- function dt(t, e) {
1126
- var r = Be();
1143
+ function ut(t, e) {
1144
+ var r = Te();
1127
1145
  function i() {
1128
- Be() - r >= e ? t.call(null) : a.id = requestAnimationFrame(i);
1146
+ Te() - r >= e ? t.call(null) : a.id = requestAnimationFrame(i);
1129
1147
  }
1130
1148
  var a = {
1131
1149
  id: requestAnimationFrame(i)
1132
1150
  };
1133
1151
  return a;
1134
1152
  }
1135
- var Pe = -1;
1153
+ var Ee = -1;
1136
1154
  function He(t) {
1137
- if (t === void 0 && (t = !1), Pe === -1 || t) {
1155
+ if (t === void 0 && (t = !1), Ee === -1 || t) {
1138
1156
  var e = document.createElement("div"), r = e.style;
1139
- r.width = "50px", r.height = "50px", r.overflow = "scroll", document.body.appendChild(e), Pe = e.offsetWidth - e.clientWidth, document.body.removeChild(e);
1157
+ r.width = "50px", r.height = "50px", r.overflow = "scroll", document.body.appendChild(e), Ee = e.offsetWidth - e.clientWidth, document.body.removeChild(e);
1140
1158
  }
1141
- return Pe;
1159
+ return Ee;
1142
1160
  }
1143
1161
  var be = null;
1144
1162
  function We(t) {
@@ -1151,93 +1169,93 @@ function We(t) {
1151
1169
  return be;
1152
1170
  }
1153
1171
  process.env.NODE_ENV;
1154
- var ut = 150, ht = function(e, r) {
1172
+ var ht = 150, mt = function(e, r) {
1155
1173
  return e;
1156
- }, $e = null, Ie = null;
1157
- process.env.NODE_ENV !== "production" && typeof window < "u" && typeof window.WeakSet < "u" && ($e = /* @__PURE__ */ new WeakSet(), Ie = /* @__PURE__ */ new WeakSet());
1158
- function mt(t) {
1159
- var e, r = t.getItemOffset, i = t.getEstimatedTotalSize, a = t.getItemSize, m = t.getOffsetForIndexAndAlignment, s = t.getStartIndexForOffset, l = t.getStopIndexForStartIndex, $ = t.initInstanceProps, L = t.shouldResetStyleCacheOnItemSizeChange, k = t.validateProps;
1160
- return e = /* @__PURE__ */ (function(E) {
1161
- ot(P, E);
1162
- function P(_) {
1174
+ }, Ie = null, xe = null;
1175
+ process.env.NODE_ENV !== "production" && typeof window < "u" && typeof window.WeakSet < "u" && (Ie = /* @__PURE__ */ new WeakSet(), xe = /* @__PURE__ */ new WeakSet());
1176
+ function ft(t) {
1177
+ var e, r = t.getItemOffset, i = t.getEstimatedTotalSize, a = t.getItemSize, c = t.getOffsetForIndexAndAlignment, s = t.getStartIndexForOffset, l = t.getStopIndexForStartIndex, I = t.initInstanceProps, _ = t.shouldResetStyleCacheOnItemSizeChange, L = t.validateProps;
1178
+ return e = /* @__PURE__ */ (function(A) {
1179
+ st(S, A);
1180
+ function S(C) {
1163
1181
  var o;
1164
- return o = E.call(this, _) || this, o._instanceProps = $(o.props, Re(o)), o._outerRef = void 0, o._resetIsScrollingTimeoutId = null, o.state = {
1182
+ return o = A.call(this, C) || this, o._instanceProps = I(o.props, Re(o)), o._outerRef = void 0, o._resetIsScrollingTimeoutId = null, o.state = {
1165
1183
  instance: Re(o),
1166
1184
  isScrolling: !1,
1167
1185
  scrollDirection: "forward",
1168
1186
  scrollOffset: typeof o.props.initialScrollOffset == "number" ? o.props.initialScrollOffset : 0,
1169
1187
  scrollUpdateWasRequested: !1
1170
- }, o._callOnItemsRendered = void 0, o._callOnItemsRendered = Ae(function(d, u, g, S) {
1188
+ }, o._callOnItemsRendered = void 0, o._callOnItemsRendered = Ae(function(u, m, y, N) {
1171
1189
  return o.props.onItemsRendered({
1172
- overscanStartIndex: d,
1173
- overscanStopIndex: u,
1174
- visibleStartIndex: g,
1175
- visibleStopIndex: S
1190
+ overscanStartIndex: u,
1191
+ overscanStopIndex: m,
1192
+ visibleStartIndex: y,
1193
+ visibleStopIndex: N
1176
1194
  });
1177
- }), o._callOnScroll = void 0, o._callOnScroll = Ae(function(d, u, g) {
1195
+ }), o._callOnScroll = void 0, o._callOnScroll = Ae(function(u, m, y) {
1178
1196
  return o.props.onScroll({
1179
- scrollDirection: d,
1180
- scrollOffset: u,
1181
- scrollUpdateWasRequested: g
1197
+ scrollDirection: u,
1198
+ scrollOffset: m,
1199
+ scrollUpdateWasRequested: y
1182
1200
  });
1183
- }), o._getItemStyle = void 0, o._getItemStyle = function(d) {
1184
- var u = o.props, g = u.direction, S = u.itemSize, O = u.layout, C = o._getItemStyleCache(L && S, L && O, L && g), b;
1185
- if (C.hasOwnProperty(d))
1186
- b = C[d];
1201
+ }), o._getItemStyle = void 0, o._getItemStyle = function(u) {
1202
+ var m = o.props, y = m.direction, N = m.itemSize, O = m.layout, k = o._getItemStyleCache(_ && N, _ && O, _ && y), $;
1203
+ if (k.hasOwnProperty(u))
1204
+ $ = k[u];
1187
1205
  else {
1188
- var M = r(o.props, d, o._instanceProps), A = a(o.props, d, o._instanceProps), U = g === "horizontal" || O === "horizontal", R = g === "rtl", F = U ? M : 0;
1189
- C[d] = b = {
1206
+ var D = r(o.props, u, o._instanceProps), P = a(o.props, u, o._instanceProps), M = y === "horizontal" || O === "horizontal", R = y === "rtl", j = M ? D : 0;
1207
+ k[u] = $ = {
1190
1208
  position: "absolute",
1191
- left: R ? void 0 : F,
1192
- right: R ? F : void 0,
1193
- top: U ? 0 : M,
1194
- height: U ? "100%" : A,
1195
- width: U ? A : "100%"
1209
+ left: R ? void 0 : j,
1210
+ right: R ? j : void 0,
1211
+ top: M ? 0 : D,
1212
+ height: M ? "100%" : P,
1213
+ width: M ? P : "100%"
1196
1214
  };
1197
1215
  }
1198
- return b;
1199
- }, o._getItemStyleCache = void 0, o._getItemStyleCache = Ae(function(d, u, g) {
1216
+ return $;
1217
+ }, o._getItemStyleCache = void 0, o._getItemStyleCache = Ae(function(u, m, y) {
1200
1218
  return {};
1201
- }), o._onScrollHorizontal = function(d) {
1202
- var u = d.currentTarget, g = u.clientWidth, S = u.scrollLeft, O = u.scrollWidth;
1203
- o.setState(function(C) {
1204
- if (C.scrollOffset === S)
1219
+ }), o._onScrollHorizontal = function(u) {
1220
+ var m = u.currentTarget, y = m.clientWidth, N = m.scrollLeft, O = m.scrollWidth;
1221
+ o.setState(function(k) {
1222
+ if (k.scrollOffset === N)
1205
1223
  return null;
1206
- var b = o.props.direction, M = S;
1207
- if (b === "rtl")
1224
+ var $ = o.props.direction, D = N;
1225
+ if ($ === "rtl")
1208
1226
  switch (We()) {
1209
1227
  case "negative":
1210
- M = -S;
1228
+ D = -N;
1211
1229
  break;
1212
1230
  case "positive-descending":
1213
- M = O - g - S;
1231
+ D = O - y - N;
1214
1232
  break;
1215
1233
  }
1216
- return M = Math.max(0, Math.min(M, O - g)), {
1234
+ return D = Math.max(0, Math.min(D, O - y)), {
1217
1235
  isScrolling: !0,
1218
- scrollDirection: C.scrollOffset < M ? "forward" : "backward",
1219
- scrollOffset: M,
1236
+ scrollDirection: k.scrollOffset < D ? "forward" : "backward",
1237
+ scrollOffset: D,
1220
1238
  scrollUpdateWasRequested: !1
1221
1239
  };
1222
1240
  }, o._resetIsScrollingDebounced);
1223
- }, o._onScrollVertical = function(d) {
1224
- var u = d.currentTarget, g = u.clientHeight, S = u.scrollHeight, O = u.scrollTop;
1225
- o.setState(function(C) {
1226
- if (C.scrollOffset === O)
1241
+ }, o._onScrollVertical = function(u) {
1242
+ var m = u.currentTarget, y = m.clientHeight, N = m.scrollHeight, O = m.scrollTop;
1243
+ o.setState(function(k) {
1244
+ if (k.scrollOffset === O)
1227
1245
  return null;
1228
- var b = Math.max(0, Math.min(O, S - g));
1246
+ var $ = Math.max(0, Math.min(O, N - y));
1229
1247
  return {
1230
1248
  isScrolling: !0,
1231
- scrollDirection: C.scrollOffset < b ? "forward" : "backward",
1232
- scrollOffset: b,
1249
+ scrollDirection: k.scrollOffset < $ ? "forward" : "backward",
1250
+ scrollOffset: $,
1233
1251
  scrollUpdateWasRequested: !1
1234
1252
  };
1235
1253
  }, o._resetIsScrollingDebounced);
1236
- }, o._outerRefSetter = function(d) {
1237
- var u = o.props.outerRef;
1238
- o._outerRef = d, typeof u == "function" ? u(d) : u != null && typeof u == "object" && u.hasOwnProperty("current") && (u.current = d);
1254
+ }, o._outerRefSetter = function(u) {
1255
+ var m = o.props.outerRef;
1256
+ o._outerRef = u, typeof m == "function" ? m(u) : m != null && typeof m == "object" && m.hasOwnProperty("current") && (m.current = u);
1239
1257
  }, o._resetIsScrollingDebounced = function() {
1240
- o._resetIsScrollingTimeoutId !== null && je(o._resetIsScrollingTimeoutId), o._resetIsScrollingTimeoutId = dt(o._resetIsScrolling, ut);
1258
+ o._resetIsScrollingTimeoutId !== null && je(o._resetIsScrollingTimeoutId), o._resetIsScrollingTimeoutId = ut(o._resetIsScrolling, ht);
1241
1259
  }, o._resetIsScrolling = function() {
1242
1260
  o._resetIsScrollingTimeoutId = null, o.setState({
1243
1261
  isScrolling: !1
@@ -1246,114 +1264,114 @@ function mt(t) {
1246
1264
  });
1247
1265
  }, o;
1248
1266
  }
1249
- P.getDerivedStateFromProps = function(o, d) {
1250
- return pt(o, d), k(o), null;
1267
+ S.getDerivedStateFromProps = function(o, u) {
1268
+ return pt(o, u), L(o), null;
1251
1269
  };
1252
- var c = P.prototype;
1253
- return c.scrollTo = function(o) {
1254
- o = Math.max(0, o), this.setState(function(d) {
1255
- return d.scrollOffset === o ? null : {
1256
- scrollDirection: d.scrollOffset < o ? "forward" : "backward",
1270
+ var d = S.prototype;
1271
+ return d.scrollTo = function(o) {
1272
+ o = Math.max(0, o), this.setState(function(u) {
1273
+ return u.scrollOffset === o ? null : {
1274
+ scrollDirection: u.scrollOffset < o ? "forward" : "backward",
1257
1275
  scrollOffset: o,
1258
1276
  scrollUpdateWasRequested: !0
1259
1277
  };
1260
1278
  }, this._resetIsScrollingDebounced);
1261
- }, c.scrollToItem = function(o, d) {
1262
- d === void 0 && (d = "auto");
1263
- var u = this.props, g = u.itemCount, S = u.layout, O = this.state.scrollOffset;
1264
- o = Math.max(0, Math.min(o, g - 1));
1265
- var C = 0;
1279
+ }, d.scrollToItem = function(o, u) {
1280
+ u === void 0 && (u = "auto");
1281
+ var m = this.props, y = m.itemCount, N = m.layout, O = this.state.scrollOffset;
1282
+ o = Math.max(0, Math.min(o, y - 1));
1283
+ var k = 0;
1266
1284
  if (this._outerRef) {
1267
- var b = this._outerRef;
1268
- S === "vertical" ? C = b.scrollWidth > b.clientWidth ? He() : 0 : C = b.scrollHeight > b.clientHeight ? He() : 0;
1285
+ var $ = this._outerRef;
1286
+ N === "vertical" ? k = $.scrollWidth > $.clientWidth ? He() : 0 : k = $.scrollHeight > $.clientHeight ? He() : 0;
1269
1287
  }
1270
- this.scrollTo(m(this.props, o, d, O, this._instanceProps, C));
1271
- }, c.componentDidMount = function() {
1272
- var o = this.props, d = o.direction, u = o.initialScrollOffset, g = o.layout;
1273
- if (typeof u == "number" && this._outerRef != null) {
1274
- var S = this._outerRef;
1275
- d === "horizontal" || g === "horizontal" ? S.scrollLeft = u : S.scrollTop = u;
1288
+ this.scrollTo(c(this.props, o, u, O, this._instanceProps, k));
1289
+ }, d.componentDidMount = function() {
1290
+ var o = this.props, u = o.direction, m = o.initialScrollOffset, y = o.layout;
1291
+ if (typeof m == "number" && this._outerRef != null) {
1292
+ var N = this._outerRef;
1293
+ u === "horizontal" || y === "horizontal" ? N.scrollLeft = m : N.scrollTop = m;
1276
1294
  }
1277
1295
  this._callPropsCallbacks();
1278
- }, c.componentDidUpdate = function() {
1279
- var o = this.props, d = o.direction, u = o.layout, g = this.state, S = g.scrollOffset, O = g.scrollUpdateWasRequested;
1296
+ }, d.componentDidUpdate = function() {
1297
+ var o = this.props, u = o.direction, m = o.layout, y = this.state, N = y.scrollOffset, O = y.scrollUpdateWasRequested;
1280
1298
  if (O && this._outerRef != null) {
1281
- var C = this._outerRef;
1282
- if (d === "horizontal" || u === "horizontal")
1283
- if (d === "rtl")
1299
+ var k = this._outerRef;
1300
+ if (u === "horizontal" || m === "horizontal")
1301
+ if (u === "rtl")
1284
1302
  switch (We()) {
1285
1303
  case "negative":
1286
- C.scrollLeft = -S;
1304
+ k.scrollLeft = -N;
1287
1305
  break;
1288
1306
  case "positive-ascending":
1289
- C.scrollLeft = S;
1307
+ k.scrollLeft = N;
1290
1308
  break;
1291
1309
  default:
1292
- var b = C.clientWidth, M = C.scrollWidth;
1293
- C.scrollLeft = M - b - S;
1310
+ var $ = k.clientWidth, D = k.scrollWidth;
1311
+ k.scrollLeft = D - $ - N;
1294
1312
  break;
1295
1313
  }
1296
1314
  else
1297
- C.scrollLeft = S;
1315
+ k.scrollLeft = N;
1298
1316
  else
1299
- C.scrollTop = S;
1317
+ k.scrollTop = N;
1300
1318
  }
1301
1319
  this._callPropsCallbacks();
1302
- }, c.componentWillUnmount = function() {
1320
+ }, d.componentWillUnmount = function() {
1303
1321
  this._resetIsScrollingTimeoutId !== null && je(this._resetIsScrollingTimeoutId);
1304
- }, c.render = function() {
1305
- var o = this.props, d = o.children, u = o.className, g = o.direction, S = o.height, O = o.innerRef, C = o.innerElementType, b = o.innerTagName, M = o.itemCount, A = o.itemData, U = o.itemKey, R = U === void 0 ? ht : U, F = o.layout, f = o.outerElementType, N = o.outerTagName, x = o.style, w = o.useIsScrolling, se = o.width, J = this.state.isScrolling, ie = g === "horizontal" || F === "horizontal", ee = ie ? this._onScrollHorizontal : this._onScrollVertical, ce = this._getRangeToRender(), le = ce[0], j = ce[1], he = [];
1306
- if (M > 0)
1307
- for (var G = le; G <= j; G++)
1308
- he.push(Ne(d, {
1309
- data: A,
1310
- key: R(G, A),
1322
+ }, d.render = function() {
1323
+ var o = this.props, u = o.children, m = o.className, y = o.direction, N = o.height, O = o.innerRef, k = o.innerElementType, $ = o.innerTagName, D = o.itemCount, P = o.itemData, M = o.itemKey, R = M === void 0 ? mt : M, j = o.layout, p = o.outerElementType, h = o.outerTagName, w = o.style, x = o.useIsScrolling, ae = o.width, J = this.state.isScrolling, oe = y === "horizontal" || j === "horizontal", re = oe ? this._onScrollHorizontal : this._onScrollVertical, ce = this._getRangeToRender(), le = ce[0], H = ce[1], he = [];
1324
+ if (D > 0)
1325
+ for (var G = le; G <= H; G++)
1326
+ he.push(Se(u, {
1327
+ data: P,
1328
+ key: R(G, P),
1311
1329
  index: G,
1312
- isScrolling: w ? J : void 0,
1330
+ isScrolling: x ? J : void 0,
1313
1331
  style: this._getItemStyle(G)
1314
1332
  }));
1315
- var re = i(this.props, this._instanceProps);
1316
- return Ne(f || N || "div", {
1317
- className: u,
1318
- onScroll: ee,
1333
+ var ne = i(this.props, this._instanceProps);
1334
+ return Se(p || h || "div", {
1335
+ className: m,
1336
+ onScroll: re,
1319
1337
  ref: this._outerRefSetter,
1320
1338
  style: Ue({
1321
1339
  position: "relative",
1322
- height: S,
1323
- width: se,
1340
+ height: N,
1341
+ width: ae,
1324
1342
  overflow: "auto",
1325
1343
  WebkitOverflowScrolling: "touch",
1326
1344
  willChange: "transform",
1327
- direction: g
1328
- }, x)
1329
- }, Ne(C || b || "div", {
1345
+ direction: y
1346
+ }, w)
1347
+ }, Se(k || $ || "div", {
1330
1348
  children: he,
1331
1349
  ref: O,
1332
1350
  style: {
1333
- height: ie ? "100%" : re,
1351
+ height: oe ? "100%" : ne,
1334
1352
  pointerEvents: J ? "none" : void 0,
1335
- width: ie ? re : "100%"
1353
+ width: oe ? ne : "100%"
1336
1354
  }
1337
1355
  }));
1338
- }, c._callPropsCallbacks = function() {
1356
+ }, d._callPropsCallbacks = function() {
1339
1357
  if (typeof this.props.onItemsRendered == "function") {
1340
1358
  var o = this.props.itemCount;
1341
1359
  if (o > 0) {
1342
- var d = this._getRangeToRender(), u = d[0], g = d[1], S = d[2], O = d[3];
1343
- this._callOnItemsRendered(u, g, S, O);
1360
+ var u = this._getRangeToRender(), m = u[0], y = u[1], N = u[2], O = u[3];
1361
+ this._callOnItemsRendered(m, y, N, O);
1344
1362
  }
1345
1363
  }
1346
1364
  if (typeof this.props.onScroll == "function") {
1347
- var C = this.state, b = C.scrollDirection, M = C.scrollOffset, A = C.scrollUpdateWasRequested;
1348
- this._callOnScroll(b, M, A);
1365
+ var k = this.state, $ = k.scrollDirection, D = k.scrollOffset, P = k.scrollUpdateWasRequested;
1366
+ this._callOnScroll($, D, P);
1349
1367
  }
1350
- }, c._getRangeToRender = function() {
1351
- var o = this.props, d = o.itemCount, u = o.overscanCount, g = this.state, S = g.isScrolling, O = g.scrollDirection, C = g.scrollOffset;
1352
- if (d === 0)
1368
+ }, d._getRangeToRender = function() {
1369
+ var o = this.props, u = o.itemCount, m = o.overscanCount, y = this.state, N = y.isScrolling, O = y.scrollDirection, k = y.scrollOffset;
1370
+ if (u === 0)
1353
1371
  return [0, 0, 0, 0];
1354
- var b = s(this.props, C, this._instanceProps), M = l(this.props, b, C, this._instanceProps), A = !S || O === "backward" ? Math.max(1, u) : 1, U = !S || O === "forward" ? Math.max(1, u) : 1;
1355
- return [Math.max(0, b - A), Math.max(0, Math.min(d - 1, M + U)), b, M];
1356
- }, P;
1372
+ var $ = s(this.props, k, this._instanceProps), D = l(this.props, $, k, this._instanceProps), P = !N || O === "backward" ? Math.max(1, m) : 1, M = !N || O === "forward" ? Math.max(1, m) : 1;
1373
+ return [Math.max(0, $ - P), Math.max(0, Math.min(u - 1, D + M)), $, D];
1374
+ }, S;
1357
1375
  })(Qe), e.defaultProps = {
1358
1376
  direction: "ltr",
1359
1377
  itemData: void 0,
@@ -1363,14 +1381,14 @@ function mt(t) {
1363
1381
  }, e;
1364
1382
  }
1365
1383
  var pt = function(e, r) {
1366
- var i = e.children, a = e.direction, m = e.height, s = e.layout, l = e.innerTagName, $ = e.outerTagName, L = e.width, k = r.instance;
1384
+ var i = e.children, a = e.direction, c = e.height, s = e.layout, l = e.innerTagName, I = e.outerTagName, _ = e.width, L = r.instance;
1367
1385
  if (process.env.NODE_ENV !== "production") {
1368
- (l != null || $ != null) && Ie && !Ie.has(k) && (Ie.add(k), console.warn("The innerTagName and outerTagName props have been deprecated. Please use the innerElementType and outerElementType props instead."));
1369
- var E = a === "horizontal" || s === "horizontal";
1386
+ (l != null || I != null) && xe && !xe.has(L) && (xe.add(L), console.warn("The innerTagName and outerTagName props have been deprecated. Please use the innerElementType and outerElementType props instead."));
1387
+ var A = a === "horizontal" || s === "horizontal";
1370
1388
  switch (a) {
1371
1389
  case "horizontal":
1372
1390
  case "vertical":
1373
- $e && !$e.has(k) && ($e.add(k), console.warn('The direction prop should be either "ltr" (default) or "rtl". Please use the layout prop to specify "vertical" (default) or "horizontal" orientation.'));
1391
+ Ie && !Ie.has(L) && (Ie.add(L), console.warn('The direction prop should be either "ltr" (default) or "rtl". Please use the layout prop to specify "vertical" (default) or "horizontal" orientation.'));
1374
1392
  break;
1375
1393
  case "ltr":
1376
1394
  case "rtl":
@@ -1387,12 +1405,12 @@ var pt = function(e, r) {
1387
1405
  }
1388
1406
  if (i == null)
1389
1407
  throw Error('An invalid "children" prop has been specified. Value should be a React component. ' + ('"' + (i === null ? "null" : typeof i) + '" was specified.'));
1390
- if (E && typeof L != "number")
1391
- throw Error('An invalid "width" prop has been specified. Horizontal lists must specify a number for width. ' + ('"' + (L === null ? "null" : typeof L) + '" was specified.'));
1392
- if (!E && typeof m != "number")
1393
- throw Error('An invalid "height" prop has been specified. Vertical lists must specify a number for height. ' + ('"' + (m === null ? "null" : typeof m) + '" was specified.'));
1408
+ if (A && typeof _ != "number")
1409
+ throw Error('An invalid "width" prop has been specified. Horizontal lists must specify a number for width. ' + ('"' + (_ === null ? "null" : typeof _) + '" was specified.'));
1410
+ if (!A && typeof c != "number")
1411
+ throw Error('An invalid "height" prop has been specified. Vertical lists must specify a number for height. ' + ('"' + (c === null ? "null" : typeof c) + '" was specified.'));
1394
1412
  }
1395
- }, ft = /* @__PURE__ */ mt({
1413
+ }, vt = /* @__PURE__ */ ft({
1396
1414
  getItemOffset: function(e, r) {
1397
1415
  var i = e.itemSize;
1398
1416
  return r * i;
@@ -1405,20 +1423,20 @@ var pt = function(e, r) {
1405
1423
  var r = e.itemCount, i = e.itemSize;
1406
1424
  return i * r;
1407
1425
  },
1408
- getOffsetForIndexAndAlignment: function(e, r, i, a, m, s) {
1409
- var l = e.direction, $ = e.height, L = e.itemCount, k = e.itemSize, E = e.layout, P = e.width, c = l === "horizontal" || E === "horizontal", _ = c ? P : $, o = Math.max(0, L * k - _), d = Math.min(o, r * k), u = Math.max(0, r * k - _ + k + s);
1410
- switch (i === "smart" && (a >= u - _ && a <= d + _ ? i = "auto" : i = "center"), i) {
1426
+ getOffsetForIndexAndAlignment: function(e, r, i, a, c, s) {
1427
+ var l = e.direction, I = e.height, _ = e.itemCount, L = e.itemSize, A = e.layout, S = e.width, d = l === "horizontal" || A === "horizontal", C = d ? S : I, o = Math.max(0, _ * L - C), u = Math.min(o, r * L), m = Math.max(0, r * L - C + L + s);
1428
+ switch (i === "smart" && (a >= m - C && a <= u + C ? i = "auto" : i = "center"), i) {
1411
1429
  case "start":
1412
- return d;
1413
- case "end":
1414
1430
  return u;
1431
+ case "end":
1432
+ return m;
1415
1433
  case "center": {
1416
- var g = Math.round(u + (d - u) / 2);
1417
- return g < Math.ceil(_ / 2) ? 0 : g > o + Math.floor(_ / 2) ? o : g;
1434
+ var y = Math.round(m + (u - m) / 2);
1435
+ return y < Math.ceil(C / 2) ? 0 : y > o + Math.floor(C / 2) ? o : y;
1418
1436
  }
1419
1437
  case "auto":
1420
1438
  default:
1421
- return a >= u && a <= d ? a : a < u ? u : d;
1439
+ return a >= m && a <= u ? a : a < m ? m : u;
1422
1440
  }
1423
1441
  },
1424
1442
  getStartIndexForOffset: function(e, r) {
@@ -1426,10 +1444,10 @@ var pt = function(e, r) {
1426
1444
  return Math.max(0, Math.min(i - 1, Math.floor(r / a)));
1427
1445
  },
1428
1446
  getStopIndexForStartIndex: function(e, r, i) {
1429
- var a = e.direction, m = e.height, s = e.itemCount, l = e.itemSize, $ = e.layout, L = e.width, k = a === "horizontal" || $ === "horizontal", E = r * l, P = k ? L : m, c = Math.ceil((P + i - E) / l);
1447
+ var a = e.direction, c = e.height, s = e.itemCount, l = e.itemSize, I = e.layout, _ = e.width, L = a === "horizontal" || I === "horizontal", A = r * l, S = L ? _ : c, d = Math.ceil((S + i - A) / l);
1430
1448
  return Math.max(0, Math.min(
1431
1449
  s - 1,
1432
- r + c - 1
1450
+ r + d - 1
1433
1451
  // -1 is because stop index is inclusive
1434
1452
  ));
1435
1453
  },
@@ -1442,50 +1460,50 @@ var pt = function(e, r) {
1442
1460
  throw Error('An invalid "itemSize" prop has been specified. Value should be a number. ' + ('"' + (r === null ? "null" : typeof r) + '" was specified.'));
1443
1461
  }
1444
1462
  });
1445
- const vt = ({
1463
+ const gt = ({
1446
1464
  size: t = 16,
1447
1465
  className: e = "",
1448
1466
  color: r = "currentColor"
1449
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M11.93 8.5a4.002 4.002 0 01-7.86 0H.75a.75.75 0 010-1.5h3.32a4.002 4.002 0 017.86 0h3.32a.75.75 0 010 1.5h-3.32zM8 5a3 3 0 100 6 3 3 0 000-6z" }) }), gt = ({
1467
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M11.93 8.5a4.002 4.002 0 01-7.86 0H.75a.75.75 0 010-1.5h3.32a4.002 4.002 0 017.86 0h3.32a.75.75 0 010 1.5h-3.32zM8 5a3 3 0 100 6 3 3 0 000-6z" }) }), yt = ({
1450
1468
  size: t = 16,
1451
1469
  className: e = "",
1452
1470
  color: r = "currentColor"
1453
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M7.177 3.073L9.573.677A.25.25 0 0110 .854v4.792a.25.25 0 01-.427.177L7.177 3.427a.25.25 0 010-.354zM3.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122v5.256a2.251 2.251 0 11-1.5 0V5.372A2.25 2.25 0 011.5 3.25zM11 2.5h-1V4h1a1 1 0 011 1v5.628a2.251 2.251 0 101.5 0V5A2.5 2.5 0 0011 2.5zm1 10.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0zM3.75 12a.75.75 0 100 1.5.75.75 0 000-1.5z" }) }), yt = ({
1471
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M7.177 3.073L9.573.677A.25.25 0 0110 .854v4.792a.25.25 0 01-.427.177L7.177 3.427a.25.25 0 010-.354zM3.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122v5.256a2.251 2.251 0 11-1.5 0V5.372A2.25 2.25 0 011.5 3.25zM11 2.5h-1V4h1a1 1 0 011 1v5.628a2.251 2.251 0 101.5 0V5A2.5 2.5 0 0011 2.5zm1 10.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0zM3.75 12a.75.75 0 100 1.5.75.75 0 000-1.5z" }) }), bt = ({
1454
1472
  size: t = 16,
1455
1473
  className: e = "",
1456
1474
  color: r = "currentColor"
1457
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1475
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1458
1476
  /* @__PURE__ */ n("path", { d: "M8 9.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z" }),
1459
1477
  /* @__PURE__ */ n("path", { d: "M8 0a8 8 0 100 16A8 8 0 008 0zM1.5 8a6.5 6.5 0 1113 0 6.5 6.5 0 01-13 0z" })
1460
- ] }), bt = ({
1478
+ ] }), wt = ({
1461
1479
  size: t = 16,
1462
1480
  className: e = "",
1463
1481
  color: r = "currentColor"
1464
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M0 2.75C0 1.784.784 1 1.75 1h12.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0114.25 13H8.06l-2.573 2.573A1.458 1.458 0 013 14.543V13H1.75A1.75 1.75 0 010 11.25v-8.5zM1.75 2.5a.25.25 0 00-.25.25v8.5c0 .138.112.25.25.25h2a.75.75 0 01.75.75v2.19l2.72-2.72a.75.75 0 01.53-.22h6.5a.25.25 0 00.25-.25v-8.5a.25.25 0 00-.25-.25H1.75z" }) }), wt = ({
1482
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M0 2.75C0 1.784.784 1 1.75 1h12.5c.966 0 1.75.784 1.75 1.75v8.5A1.75 1.75 0 0114.25 13H8.06l-2.573 2.573A1.458 1.458 0 013 14.543V13H1.75A1.75 1.75 0 010 11.25v-8.5zM1.75 2.5a.25.25 0 00-.25.25v8.5c0 .138.112.25.25.25h2a.75.75 0 01.75.75v2.19l2.72-2.72a.75.75 0 01.53-.22h6.5a.25.25 0 00.25-.25v-8.5a.25.25 0 00-.25-.25H1.75z" }) }), _t = ({
1465
1483
  size: t = 16,
1466
1484
  className: e = "",
1467
1485
  color: r = "currentColor"
1468
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M8 .25a.75.75 0 01.673.418l1.882 3.815 4.21.612a.75.75 0 01.416 1.279l-3.046 2.97.719 4.192a.75.75 0 01-1.088.791L8 12.347l-3.766 1.98a.75.75 0 01-1.088-.79l.72-4.194L.818 6.374a.75.75 0 01.416-1.28l4.21-.611L7.327.668A.75.75 0 018 .25z" }) }), _t = ({
1486
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M8 .25a.75.75 0 01.673.418l1.882 3.815 4.21.612a.75.75 0 01.416 1.279l-3.046 2.97.719 4.192a.75.75 0 01-1.088.791L8 12.347l-3.766 1.98a.75.75 0 01-1.088-.79l.72-4.194L.818 6.374a.75.75 0 01.416-1.28l4.21-.611L7.327.668A.75.75 0 018 .25z" }) }), $t = ({
1469
1487
  size: t = 16,
1470
1488
  className: e = "",
1471
1489
  color: r = "currentColor"
1472
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M5 3.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm0 2.122a2.25 2.25 0 10-1.5 0v.878A2.25 2.25 0 005.75 8.5h1.5v2.128a2.251 2.251 0 101.5 0V8.5h1.5a2.25 2.25 0 002.25-2.25v-.878a2.25 2.25 0 10-1.5 0v.878a.75.75 0 01-.75.75h-4.5A.75.75 0 015 6.25v-.878zm3.75 7.378a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm3-8.75a.75.75 0 100-1.5.75.75 0 000 1.5z" }) }), xt = ({
1490
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M5 3.25a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm0 2.122a2.25 2.25 0 10-1.5 0v.878A2.25 2.25 0 005.75 8.5h1.5v2.128a2.251 2.251 0 101.5 0V8.5h1.5a2.25 2.25 0 002.25-2.25v-.878a2.25 2.25 0 10-1.5 0v.878a.75.75 0 01-.75.75h-4.5A.75.75 0 015 6.25v-.878zm3.75 7.378a.75.75 0 11-1.5 0 .75.75 0 011.5 0zm3-8.75a.75.75 0 100-1.5.75.75 0 000 1.5z" }) }), It = ({
1473
1491
  size: t = 16,
1474
1492
  className: e = "",
1475
1493
  color: r = "currentColor"
1476
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M5 3.254V3.25v.005a.75.75 0 110-.005v.004zm.45 1.9a2.25 2.25 0 10-1.95.218v5.256a2.25 2.25 0 101.5 0V7.123A5.735 5.735 0 009.25 9h1.378a2.251 2.251 0 100-1.5H9.25a4.25 4.25 0 01-3.8-2.346zM12.75 9a.75.75 0 100-1.5.75.75 0 000 1.5zm-8.5 4.5a.75.75 0 100-1.5.75.75 0 000 1.5z" }) }), $t = ({
1494
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M5 3.254V3.25v.005a.75.75 0 110-.005v.004zm.45 1.9a2.25 2.25 0 10-1.95.218v5.256a2.25 2.25 0 101.5 0V7.123A5.735 5.735 0 009.25 9h1.378a2.251 2.251 0 100-1.5H9.25a4.25 4.25 0 01-3.8-2.346zM12.75 9a.75.75 0 100-1.5.75.75 0 000 1.5zm-8.5 4.5a.75.75 0 100-1.5.75.75 0 000 1.5z" }) }), xt = ({
1477
1495
  size: t = 16,
1478
1496
  className: e = "",
1479
1497
  color: r = "currentColor"
1480
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M7.47 10.78a.75.75 0 001.06 0l3.75-3.75a.75.75 0 00-1.06-1.06L8.75 8.44V1.75a.75.75 0 00-1.5 0v6.69L4.78 5.97a.75.75 0 00-1.06 1.06l3.75 3.75zM3.75 13a.75.75 0 000 1.5h8.5a.75.75 0 000-1.5h-8.5z" }) }), It = ({
1498
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M7.47 10.78a.75.75 0 001.06 0l3.75-3.75a.75.75 0 00-1.06-1.06L8.75 8.44V1.75a.75.75 0 00-1.5 0v6.69L4.78 5.97a.75.75 0 00-1.06 1.06l3.75 3.75zM3.75 13a.75.75 0 000 1.5h8.5a.75.75 0 000-1.5h-8.5z" }) }), Ct = ({
1481
1499
  size: t = 16,
1482
1500
  className: e = "",
1483
1501
  color: r = "currentColor"
1484
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M4.53 4.75A.75.75 0 015 6.25h6a.75.75 0 00.53-1.28l-3-3a.75.75 0 00-1.06 0l-3 3zm.47 6.47a.75.75 0 01.53-.22h6a.75.75 0 01.53 1.28l-3 3a.75.75 0 01-1.06 0l-3-3a.75.75 0 01-.01-1.06h.01z" }) }), Ct = ({
1502
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M4.53 4.75A.75.75 0 015 6.25h6a.75.75 0 00.53-1.28l-3-3a.75.75 0 00-1.06 0l-3 3zm.47 6.47a.75.75 0 01.53-.22h6a.75.75 0 01.53 1.28l-3 3a.75.75 0 01-1.06 0l-3-3a.75.75 0 01-.01-1.06h.01z" }) }), kt = ({
1485
1503
  size: t = 20,
1486
1504
  className: e = "",
1487
1505
  color: r = "currentColor"
1488
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 20 20", fill: "none", className: e, children: [
1506
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 20 20", fill: "none", className: e, children: [
1489
1507
  /* @__PURE__ */ n(
1490
1508
  "path",
1491
1509
  {
@@ -1516,11 +1534,11 @@ const vt = ({
1516
1534
  strokeLinejoin: "round"
1517
1535
  }
1518
1536
  )
1519
- ] }), kt = ({
1537
+ ] }), Nt = ({
1520
1538
  size: t = 20,
1521
1539
  className: e = "",
1522
1540
  color: r = "currentColor"
1523
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 20 20", fill: "none", className: e, children: [
1541
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 20 20", fill: "none", className: e, children: [
1524
1542
  /* @__PURE__ */ n(
1525
1543
  "path",
1526
1544
  {
@@ -1555,7 +1573,7 @@ const vt = ({
1555
1573
  size: t = 16,
1556
1574
  className: e = "",
1557
1575
  color: r = "currentColor"
1558
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z" }) }), Nt = ({
1576
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z" }) }), Mt = ({
1559
1577
  size: t = 16,
1560
1578
  className: e = "",
1561
1579
  color: r = "currentColor"
@@ -1563,48 +1581,48 @@ const vt = ({
1563
1581
  size: t = 16,
1564
1582
  className: e = "",
1565
1583
  color: r = "currentColor"
1566
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: "none", className: e, children: [
1584
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: "none", className: e, children: [
1567
1585
  /* @__PURE__ */ n("circle", { cx: "8", cy: "8", r: "7", stroke: r, strokeWidth: "1.5" }),
1568
1586
  /* @__PURE__ */ n("path", { d: "M8 1C11.866 1 15 4.134 15 8C15 11.866 11.866 15 8 15", fill: r }),
1569
1587
  /* @__PURE__ */ n("circle", { cx: "8", cy: "5", r: "2", fill: r === "currentColor" ? "white" : "#fff" }),
1570
1588
  /* @__PURE__ */ n("circle", { cx: "8", cy: "11", r: "2", fill: r }),
1571
1589
  /* @__PURE__ */ n("circle", { cx: "8", cy: "5", r: "0.5", fill: r }),
1572
1590
  /* @__PURE__ */ n("circle", { cx: "8", cy: "11", r: "0.5", fill: r === "currentColor" ? "white" : "#fff" })
1573
- ] }), Mt = ({
1591
+ ] }), At = ({
1574
1592
  size: t = 16,
1575
1593
  className: e = "",
1576
1594
  color: r = "currentColor"
1577
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1595
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1578
1596
  /* @__PURE__ */ n("circle", { cx: "8", cy: "3", r: "1.5" }),
1579
1597
  /* @__PURE__ */ n("path", { d: "M8 5C6.5 5 5 6 5 7.5V9C5 9 5.5 10 6 10.5L5 14H7L8 11L9 14H11L10 10.5C10.5 10 11 9 11 9V7.5C11 6 9.5 5 8 5Z" }),
1580
1598
  /* @__PURE__ */ n("path", { d: "M4 9L2 10M12 9L14 10", strokeWidth: "1", stroke: r, fill: "none" })
1581
- ] }), At = ({
1599
+ ] }), Et = ({
1582
1600
  size: t = 16,
1583
1601
  className: e = "",
1584
1602
  color: r = "currentColor"
1585
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1603
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1586
1604
  /* @__PURE__ */ n("circle", { cx: "8", cy: "2.5", r: "1.5" }),
1587
1605
  /* @__PURE__ */ n("path", { d: "M8 4.5L6 8L4 14H6L7 10H9L10 14H12L10 8L8 4.5Z" }),
1588
1606
  /* @__PURE__ */ n("path", { d: "M6 8L3 6M10 8L13 6", strokeWidth: "1.5", stroke: r, fill: "none" })
1589
- ] }), Pt = ({
1607
+ ] }), Dt = ({
1590
1608
  size: t = 16,
1591
1609
  className: e = "",
1592
1610
  color: r = "currentColor"
1593
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1611
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1594
1612
  /* @__PURE__ */ n("rect", { x: "1", y: "6", width: "2", height: "4", rx: "0.5" }),
1595
1613
  /* @__PURE__ */ n("rect", { x: "13", y: "6", width: "2", height: "4", rx: "0.5" }),
1596
1614
  /* @__PURE__ */ n("rect", { x: "3", y: "5.5", width: "1", height: "5" }),
1597
1615
  /* @__PURE__ */ n("rect", { x: "12", y: "5.5", width: "1", height: "5" }),
1598
1616
  /* @__PURE__ */ n("rect", { x: "4", y: "7", width: "8", height: "2", rx: "0.5" })
1599
- ] }), Et = ({
1617
+ ] }), Pt = ({
1600
1618
  size: t = 16,
1601
1619
  className: e = "",
1602
1620
  color: r = "currentColor"
1603
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1621
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1604
1622
  /* @__PURE__ */ n("circle", { cx: "10", cy: "2.5", r: "1.5" }),
1605
1623
  /* @__PURE__ */ n("path", { d: "M9 4.5L8 6L6 7L4 8L6 9L8 8L10 7L11 9L10 12L9 14H11L12 11L13 9L12 6L10 4.5H9Z" }),
1606
1624
  /* @__PURE__ */ n("path", { d: "M6 14H4L5 11" })
1607
- ] }), Dt = ({
1625
+ ] }), Ot = ({
1608
1626
  size: t = 16,
1609
1627
  className: e = "",
1610
1628
  color: r = "currentColor"
@@ -1621,37 +1639,37 @@ const vt = ({
1621
1639
  size: t = 16,
1622
1640
  className: e = "",
1623
1641
  color: r = "currentColor"
1624
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1642
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1625
1643
  /* @__PURE__ */ n("path", { d: "M4 8C4 6 5 4 7 4C8 4 8.5 4.5 8.5 5.5C8.5 6 8.8 6.5 9.5 6.5C10.5 6.5 11 7 11 8C11 9.5 10 11 8 12C6 13 4 12 4 10V8Z" }),
1626
1644
  /* @__PURE__ */ n("circle", { cx: "7", cy: "3", r: "1.5" })
1627
- ] }), Ot = ({
1645
+ ] }), Ut = ({
1628
1646
  size: t = 16,
1629
1647
  className: e = "",
1630
1648
  color: r = "currentColor"
1631
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1649
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1632
1650
  /* @__PURE__ */ n("rect", { x: "2", y: "2", width: "12", height: "3", rx: "0.5" }),
1633
1651
  /* @__PURE__ */ n("rect", { x: "2", y: "6.5", width: "12", height: "3", rx: "0.5" }),
1634
1652
  /* @__PURE__ */ n("rect", { x: "2", y: "11", width: "12", height: "3", rx: "0.5" }),
1635
1653
  /* @__PURE__ */ n("circle", { cx: "4", cy: "3.5", r: "0.5" }),
1636
1654
  /* @__PURE__ */ n("circle", { cx: "4", cy: "8", r: "0.5" }),
1637
1655
  /* @__PURE__ */ n("circle", { cx: "4", cy: "12.5", r: "0.5" })
1638
- ] }), Ut = ({
1656
+ ] }), Vt = ({
1639
1657
  size: t = 16,
1640
1658
  className: e = "",
1641
1659
  color: r = "currentColor"
1642
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1660
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1643
1661
  /* @__PURE__ */ n("ellipse", { cx: "8", cy: "3", rx: "5", ry: "2" }),
1644
1662
  /* @__PURE__ */ n("path", { d: "M3 3V13C3 14.1 5.2 15 8 15C10.8 15 13 14.1 13 13V3" }),
1645
1663
  /* @__PURE__ */ n("path", { d: "M3 8C3 9.1 5.2 10 8 10C10.8 10 13 9.1 13 8" })
1646
- ] }), Vt = ({
1664
+ ] }), Rt = ({
1647
1665
  size: t = 16,
1648
1666
  className: e = "",
1649
1667
  color: r = "currentColor"
1650
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M4.5 10C2.5 10 1 8.5 1 6.5C1 4.5 2.5 3 4.5 3C4.6 3 4.7 3 4.8 3.05C5.3 1.8 6.5 1 8 1C10 1 11.5 2.5 11.5 4.5C11.5 4.6 11.5 4.7 11.5 4.8C12.9 5.1 14 6.3 14 7.75C14 9.5 12.5 11 10.75 11H4.5Z" }) }), Rt = ({
1668
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M4.5 10C2.5 10 1 8.5 1 6.5C1 4.5 2.5 3 4.5 3C4.6 3 4.7 3 4.8 3.05C5.3 1.8 6.5 1 8 1C10 1 11.5 2.5 11.5 4.5C11.5 4.6 11.5 4.7 11.5 4.8C12.9 5.1 14 6.3 14 7.75C14 9.5 12.5 11 10.75 11H4.5Z" }) }), Bt = ({
1651
1669
  size: t = 16,
1652
1670
  className: e = "",
1653
1671
  color: r = "currentColor"
1654
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1672
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1655
1673
  /* @__PURE__ */ n("path", { d: "M0 2.75C0 1.784.784 1 1.75 1h12.5c.966 0 1.75.784 1.75 1.75v10.5A1.75 1.75 0 0114.25 15H1.75A1.75 1.75 0 010 13.25V2.75z" }),
1656
1674
  /* @__PURE__ */ n(
1657
1675
  "path",
@@ -1680,7 +1698,7 @@ const vt = ({
1680
1698
  size: t = 16,
1681
1699
  className: e = "",
1682
1700
  color: r = "currentColor"
1683
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1701
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1684
1702
  /* @__PURE__ */ n("path", { d: "M4.75 7.5a3.25 3.25 0 116.5 0v3.75a3.25 3.25 0 01-6.5 0V7.5z" }),
1685
1703
  /* @__PURE__ */ n(
1686
1704
  "path",
@@ -1692,22 +1710,22 @@ const vt = ({
1692
1710
  }
1693
1711
  ),
1694
1712
  /* @__PURE__ */ n("ellipse", { cx: "8", cy: "4", rx: "2.5", ry: "1.5" })
1695
- ] }), Bt = ({
1713
+ ] }), jt = ({
1696
1714
  size: t = 16,
1697
1715
  className: e = "",
1698
1716
  color: r = "currentColor"
1699
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M5.28 3.72a.75.75 0 00-1.06 1.06L7.44 8l-3.22 3.22a.75.75 0 101.06 1.06l3.75-3.75a.75.75 0 000-1.06L5.28 3.72zM8.5 11.5a.75.75 0 000 1.5h5a.75.75 0 000-1.5h-5z" }) }), jt = ({
1717
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M5.28 3.72a.75.75 0 00-1.06 1.06L7.44 8l-3.22 3.22a.75.75 0 101.06 1.06l3.75-3.75a.75.75 0 000-1.06L5.28 3.72zM8.5 11.5a.75.75 0 000 1.5h5a.75.75 0 000-1.5h-5z" }) }), Ht = ({
1700
1718
  size: t = 16,
1701
1719
  className: e = "",
1702
1720
  color: r = "currentColor"
1703
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1721
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1704
1722
  /* @__PURE__ */ n("path", { d: "M8 0C6 0 4.5 2 3.5 5L1 7L4 8L5 11L7 8.5C9 7.5 11 6 13 3C14 2 15 0 16 0C16 0 14 2 13 3C11 5 9.5 6.5 8 7.5M10 4C10.552 4 11 3.552 11 3C11 2.448 10.552 2 10 2C9.448 2 9 2.448 9 3C9 3.552 9.448 4 10 4Z" }),
1705
1723
  /* @__PURE__ */ n("path", { d: "M2 12C2 12 0 14 0 16C2 16 4 14 4 14" })
1706
- ] }), Ht = ({
1724
+ ] }), Wt = ({
1707
1725
  size: t = 16,
1708
1726
  className: e = "",
1709
1727
  color: r = "currentColor"
1710
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1728
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1711
1729
  /* @__PURE__ */ n("rect", { x: "6", y: "6", width: "4", height: "4", rx: "0.5" }),
1712
1730
  /* @__PURE__ */ n(
1713
1731
  "path",
@@ -1723,21 +1741,21 @@ const vt = ({
1723
1741
  /* @__PURE__ */ n("rect", { x: "1", y: "13.5", width: "1.5", height: "1.5" }),
1724
1742
  /* @__PURE__ */ n("rect", { x: "13.5", y: "13.5", width: "1.5", height: "1.5" }),
1725
1743
  /* @__PURE__ */ n("circle", { cx: "8", cy: "8", r: "1" })
1726
- ] }), Wt = ({
1744
+ ] }), Ft = ({
1727
1745
  size: t = 16,
1728
1746
  className: e = "",
1729
1747
  color: r = "currentColor"
1730
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1748
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1731
1749
  /* @__PURE__ */ n("path", { d: "M8 1C4 1 2 3 2 6C2 8 2 10 3 11C3.5 11.5 4 12 5 12C5.5 12 6 11.5 6.5 10.5C7 9.5 7.5 9 8 9C8.5 9 9 9.5 9.5 10.5C10 11.5 10.5 12 11 12C12 12 12.5 11.5 13 11C14 10 14 8 14 6C14 3 12 1 8 1Z" }),
1732
1750
  /* @__PURE__ */ n("ellipse", { cx: "6", cy: "5.5", rx: "1.5", ry: "2", fill: "white" }),
1733
1751
  /* @__PURE__ */ n("ellipse", { cx: "10", cy: "5.5", rx: "1.5", ry: "2", fill: "white" }),
1734
1752
  /* @__PURE__ */ n("circle", { cx: "6", cy: "5.5", r: "0.75", fill: r }),
1735
1753
  /* @__PURE__ */ n("circle", { cx: "10", cy: "5.5", r: "0.75", fill: r })
1736
- ] }), Ft = ({
1754
+ ] }), qt = ({
1737
1755
  size: t = 16,
1738
1756
  className: e = "",
1739
1757
  color: r = "currentColor"
1740
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1758
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1741
1759
  /* @__PURE__ */ n("circle", { cx: "8", cy: "8", r: "5" }),
1742
1760
  /* @__PURE__ */ n(
1743
1761
  "ellipse",
@@ -1753,57 +1771,57 @@ const vt = ({
1753
1771
  }
1754
1772
  ),
1755
1773
  /* @__PURE__ */ n("circle", { cx: "6", cy: "6", r: "1", opacity: "0.4", fill: r === "currentColor" ? "white" : "#fff" })
1756
- ] }), qt = ({
1774
+ ] }), Kt = ({
1757
1775
  size: t = 16,
1758
1776
  className: e = "",
1759
1777
  color: r = "currentColor"
1760
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1778
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1761
1779
  /* @__PURE__ */ n("path", { d: "M1 8L6 6L14 2L12 10L10 8L8 14H6L8 8L1 8Z" }),
1762
1780
  /* @__PURE__ */ n("path", { d: "M10 8L12 10", strokeWidth: "1.5", stroke: r })
1763
- ] }), Kt = ({
1781
+ ] }), Zt = ({
1764
1782
  size: t = 16,
1765
1783
  className: e = "",
1766
1784
  color: r = "currentColor"
1767
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M1.5 13.5V2.5a.5.5 0 01.5-.5h.5a.5.5 0 01.5.5v11a.5.5 0 01-.5.5H2a.5.5 0 01-.5-.5zM5 13.5V5.5a.5.5 0 01.5-.5H6a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-.5a.5.5 0 01-.5-.5zM8.5 13.5V7.5a.5.5 0 01.5-.5h.5a.5.5 0 01.5.5v6a.5.5 0 01-.5.5H9a.5.5 0 01-.5-.5zM12 13.5V3.5a.5.5 0 01.5-.5h.5a.5.5 0 01.5.5v10a.5.5 0 01-.5.5h-.5a.5.5 0 01-.5-.5z" }) }), Zt = ({
1785
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M1.5 13.5V2.5a.5.5 0 01.5-.5h.5a.5.5 0 01.5.5v11a.5.5 0 01-.5.5H2a.5.5 0 01-.5-.5zM5 13.5V5.5a.5.5 0 01.5-.5H6a.5.5 0 01.5.5v8a.5.5 0 01-.5.5h-.5a.5.5 0 01-.5-.5zM8.5 13.5V7.5a.5.5 0 01.5-.5h.5a.5.5 0 01.5.5v6a.5.5 0 01-.5.5H9a.5.5 0 01-.5-.5zM12 13.5V3.5a.5.5 0 01.5-.5h.5a.5.5 0 01.5.5v10a.5.5 0 01-.5.5h-.5a.5.5 0 01-.5-.5z" }) }), Gt = ({
1768
1786
  size: t = 16,
1769
1787
  className: e = "",
1770
1788
  color: r = "currentColor"
1771
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1789
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1772
1790
  /* @__PURE__ */ n("circle", { cx: "5", cy: "4", r: "2" }),
1773
1791
  /* @__PURE__ */ n("circle", { cx: "11", cy: "4", r: "2" }),
1774
1792
  /* @__PURE__ */ n("path", { d: "M1 14V12C1 10.5 2.5 9 5 9C7.5 9 9 10.5 9 12V14H1Z" }),
1775
1793
  /* @__PURE__ */ n("path", { d: "M7 14V12C7 10.5 8.5 9 11 9C13.5 9 15 10.5 15 12V14H7Z" })
1776
- ] }), Gt = ({
1794
+ ] }), Yt = ({
1777
1795
  size: t = 16,
1778
1796
  className: e = "",
1779
1797
  color: r = "currentColor"
1780
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1798
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1781
1799
  /* @__PURE__ */ n("path", { d: "M3 1.75C3 .784 3.784 0 4.75 0h5.586c.464 0 .909.184 1.237.513l2.914 2.914c.329.328.513.773.513 1.237v9.586A1.75 1.75 0 0113.25 16h-8.5A1.75 1.75 0 013 14.25V1.75z" }),
1782
1800
  /* @__PURE__ */ n("path", { d: "M10 0v3.5c0 .275.225.5.5.5H14", fill: r === "currentColor" ? "white" : "#fff" })
1783
- ] }), Yt = ({
1801
+ ] }), Jt = ({
1784
1802
  size: t = 16,
1785
1803
  className: e = "",
1786
1804
  color: r = "currentColor"
1787
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M4.75 0a.75.75 0 01.75.75V2h5V.75a.75.75 0 011.5 0V2h1.25c.966 0 1.75.784 1.75 1.75v10.5A1.75 1.75 0 0113.25 16H2.75A1.75 1.75 0 011 14.25V3.75C1 2.784 1.784 2 2.75 2H4V.75A.75.75 0 014.75 0zM2.5 7.5v6.75c0 .138.112.25.25.25h10.5a.25.25 0 00.25-.25V7.5h-11z" }) }), Jt = ({
1805
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M4.75 0a.75.75 0 01.75.75V2h5V.75a.75.75 0 011.5 0V2h1.25c.966 0 1.75.784 1.75 1.75v10.5A1.75 1.75 0 0113.25 16H2.75A1.75 1.75 0 011 14.25V3.75C1 2.784 1.784 2 2.75 2H4V.75A.75.75 0 014.75 0zM2.5 7.5v6.75c0 .138.112.25.25.25h10.5a.25.25 0 00.25-.25V7.5h-11z" }) }), Qt = ({
1788
1806
  size: t = 16,
1789
1807
  className: e = "",
1790
1808
  color: r = "currentColor"
1791
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M6.75 0A1.75 1.75 0 005 1.75V3H1.75C.784 3 0 3.784 0 4.75v8.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0016 13.25v-8.5A1.75 1.75 0 0014.25 3H11V1.75A1.75 1.75 0 009.25 0h-2.5zM9.5 3V1.75a.25.25 0 00-.25-.25h-2.5a.25.25 0 00-.25.25V3h3z" }) }), Qt = ({
1809
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M6.75 0A1.75 1.75 0 005 1.75V3H1.75C.784 3 0 3.784 0 4.75v8.5C0 14.216.784 15 1.75 15h12.5A1.75 1.75 0 0016 13.25v-8.5A1.75 1.75 0 0014.25 3H11V1.75A1.75 1.75 0 009.25 0h-2.5zM9.5 3V1.75a.25.25 0 00-.25-.25h-2.5a.25.25 0 00-.25.25V3h3z" }) }), Xt = ({
1792
1810
  size: t = 16,
1793
1811
  className: e = "",
1794
1812
  color: r = "currentColor"
1795
- }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M11.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122V6A2.5 2.5 0 0110 8.5H6a1 1 0 00-1 1v1.128a2.251 2.251 0 11-1.5 0V5.372a2.25 2.25 0 111.5 0v1.836A2.492 2.492 0 016 7h4a1 1 0 001-1v-.628A2.25 2.25 0 019.5 3.25zM4.25 12a.75.75 0 100 1.5.75.75 0 000-1.5zM3.5 3.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0z" }) }), Xt = ({
1813
+ }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M11.75 2.5a.75.75 0 100 1.5.75.75 0 000-1.5zm-2.25.75a2.25 2.25 0 113 2.122V6A2.5 2.5 0 0110 8.5H6a1 1 0 00-1 1v1.128a2.251 2.251 0 11-1.5 0V5.372a2.25 2.25 0 111.5 0v1.836A2.492 2.492 0 016 7h4a1 1 0 001-1v-.628A2.25 2.25 0 019.5 3.25zM4.25 12a.75.75 0 100 1.5.75.75 0 000-1.5zM3.5 3.25a.75.75 0 111.5 0 .75.75 0 01-1.5 0z" }) }), er = ({
1796
1814
  size: t = 16,
1797
1815
  className: e = "",
1798
1816
  color: r = "currentColor"
1799
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1817
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1800
1818
  /* @__PURE__ */ n("path", { d: "M3.25 1A2.25 2.25 0 011 3.25v9.5A2.25 2.25 0 013.25 15h9.5A2.25 2.25 0 0115 12.75v-9.5A2.25 2.25 0 0012.75 1h-9.5zM2.5 3.25a.75.75 0 01.75-.75h9.5a.75.75 0 01.75.75v9.5a.75.75 0 01-.75.75h-9.5a.75.75 0 01-.75-.75v-9.5z" }),
1801
1819
  /* @__PURE__ */ n("path", { d: "M8 4a.75.75 0 01.75.75v2.5h2.5a.75.75 0 010 1.5h-2.5v2.5a.75.75 0 01-1.5 0v-2.5h-2.5a.75.75 0 010-1.5h2.5v-2.5A.75.75 0 018 4z" })
1802
- ] }), er = ({
1820
+ ] }), tr = ({
1803
1821
  size: t = 16,
1804
1822
  className: e = "",
1805
1823
  color: r = "currentColor"
1806
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1824
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1807
1825
  /* @__PURE__ */ n("path", { d: "M6 1h4v1H6V1zM5.5 3h5L13 13c0 1.1-.9 2-2 2H5c-1.1 0-2-.9-2-2L5.5 3z" }),
1808
1826
  /* @__PURE__ */ n("circle", { cx: "7", cy: "8", r: "1", fill: r === "currentColor" ? "white" : "#fff", opacity: "0.5" }),
1809
1827
  /* @__PURE__ */ n(
@@ -1816,11 +1834,11 @@ const vt = ({
1816
1834
  opacity: "0.5"
1817
1835
  }
1818
1836
  )
1819
- ] }), tr = ({
1837
+ ] }), rr = ({
1820
1838
  size: t = 16,
1821
1839
  className: e = "",
1822
1840
  color: r = "currentColor"
1823
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1841
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1824
1842
  /* @__PURE__ */ n("path", { d: "M8 0L0 3v5c0 5 3 7.5 8 8 5-.5 8-3 8-8V3L8 0z" }),
1825
1843
  /* @__PURE__ */ n(
1826
1844
  "path",
@@ -1829,11 +1847,11 @@ const vt = ({
1829
1847
  fill: r === "currentColor" ? "white" : "#fff"
1830
1848
  }
1831
1849
  )
1832
- ] }), rr = ({
1850
+ ] }), nr = ({
1833
1851
  size: t = 16,
1834
1852
  className: e = "",
1835
1853
  color: r = "currentColor"
1836
- }) => /* @__PURE__ */ y("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1854
+ }) => /* @__PURE__ */ b("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: [
1837
1855
  /* @__PURE__ */ n("rect", { x: "1", y: "1", width: "9", height: "11", rx: "1" }),
1838
1856
  /* @__PURE__ */ n(
1839
1857
  "line",
@@ -1870,74 +1888,74 @@ const vt = ({
1870
1888
  strokeLinecap: "round"
1871
1889
  }
1872
1890
  )
1873
- ] }), nr = ({
1891
+ ] }), ir = ({
1874
1892
  size: t = 16,
1875
1893
  className: e = "",
1876
1894
  color: r = "currentColor"
1877
1895
  }) => /* @__PURE__ */ n("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: e, children: /* @__PURE__ */ n("path", { d: "M4.48 7.27c.26.26 1.28 1.33 1.28 1.33l.56-.58-.88-.91 1.69-1.8s-.76-.74-.43-.45c.32-1.19.03-2.51-.87-3.44C4.93.5 3.66.2 2.52.51l1.93 2-.51 1.96-1.89.52-1.93-2C-.19 4.17.1 5.48 1 6.4c.94.98 2.29 1.26 3.48.87zm6.44 1.94l-2.33 2.3 3.84 3.98c.31.33.73.49 1.14.49.41 0 .82-.16 1.14-.49.63-.65.63-1.7 0-2.35l-3.79-3.93zM16 2.53L13.55 0 6.33 7.46l.88.91-4.31 4.46-.99.53-1.39 2.27.35.37 2.2-1.44.51-1.02L7.9 9.08l.88.91L16 2.53z" }) }), Ce = {
1878
- commit: vt,
1879
- pr: gt,
1880
- issue: yt,
1881
- comment: bt,
1882
- star: wt,
1883
- fork: _t,
1884
- merge: xt,
1885
- release: $t,
1886
- deploy: It
1896
+ commit: gt,
1897
+ pr: yt,
1898
+ issue: bt,
1899
+ comment: wt,
1900
+ star: _t,
1901
+ fork: $t,
1902
+ merge: It,
1903
+ release: xt,
1904
+ deploy: Ct
1887
1905
  }, ke = {
1888
- unfold: Ct,
1889
- fold: kt,
1906
+ unfold: kt,
1907
+ fold: Nt,
1890
1908
  close: St,
1891
- check: Nt
1892
- }, en = {
1893
- taichi: Lt,
1894
- meditation: Mt,
1895
- yoga: At
1896
- }, tn = {
1897
- dumbbell: Pt,
1898
- running: Et,
1899
- heartrate: Dt,
1900
- strength: zt
1901
- }, rn = {
1902
- server: Ot,
1903
- database: Ut,
1904
- cloud: Vt,
1905
- terminal: Rt,
1906
- bug: Tt,
1907
- code: Bt
1909
+ check: Mt
1908
1910
  }, nn = {
1909
- rocket: jt,
1910
- satellite: Ht,
1911
- alien: Wt,
1912
- planet: Ft,
1913
- telescope: qt
1911
+ taichi: Lt,
1912
+ meditation: At,
1913
+ yoga: Et
1914
1914
  }, an = {
1915
- chart: Kt,
1916
- meeting: Zt,
1917
- document: Gt,
1918
- calendar: Yt,
1919
- briefcase: Jt
1915
+ dumbbell: Dt,
1916
+ running: Pt,
1917
+ heartrate: Ot,
1918
+ strength: zt
1920
1919
  }, on = {
1921
- gitbranch: Qt,
1922
- prdraft: Xt,
1923
- testing: er,
1924
- deployment: tr,
1925
- review: rr,
1926
- build: nr
1920
+ server: Ut,
1921
+ database: Vt,
1922
+ cloud: Rt,
1923
+ terminal: Bt,
1924
+ bug: Tt,
1925
+ code: jt
1926
+ }, sn = {
1927
+ rocket: Ht,
1928
+ satellite: Wt,
1929
+ alien: Ft,
1930
+ planet: qt,
1931
+ telescope: Kt
1932
+ }, ln = {
1933
+ chart: Zt,
1934
+ meeting: Gt,
1935
+ document: Yt,
1936
+ calendar: Jt,
1937
+ briefcase: Qt
1938
+ }, cn = {
1939
+ gitbranch: Xt,
1940
+ prdraft: er,
1941
+ testing: tr,
1942
+ deployment: rr,
1943
+ review: nr,
1944
+ build: ir
1927
1945
  };
1928
- function ir(t, e = 640) {
1929
- const [r, i] = te(!1);
1930
- return ae(() => {
1946
+ function ar(t, e = 640) {
1947
+ const [r, i] = X(!1);
1948
+ return ie(() => {
1931
1949
  const a = t?.current;
1932
1950
  if (!a)
1933
1951
  return;
1934
- const m = () => {
1952
+ const c = () => {
1935
1953
  const l = a.clientWidth;
1936
1954
  l > 0 && i(l < e);
1937
1955
  };
1938
- m();
1956
+ c();
1939
1957
  const s = new ResizeObserver(() => {
1940
- m();
1958
+ c();
1941
1959
  });
1942
1960
  return s.observe(a), () => {
1943
1961
  s.disconnect();
@@ -1947,83 +1965,83 @@ function ir(t, e = 640) {
1947
1965
  const Ze = Xe({
1948
1966
  density: "comfortable",
1949
1967
  showMeta: !0
1950
- }), ar = ({ children: t, value: e }) => /* @__PURE__ */ n(Ze.Provider, { value: e, children: t });
1951
- function or() {
1968
+ }), or = ({ children: t, value: e }) => /* @__PURE__ */ n(Ze.Provider, { value: e, children: t });
1969
+ function sr() {
1952
1970
  return et(Ze);
1953
1971
  }
1954
- const sr = (t) => {
1972
+ const lr = (t) => {
1955
1973
  const e = Ce[t] || Ce.commit;
1956
1974
  return /* @__PURE__ */ n(e, { size: 16 });
1957
- }, lr = (t) => {
1958
- const e = typeof t == "string" ? new Date(t) : t, i = (/* @__PURE__ */ new Date()).getTime() - e.getTime(), a = Math.floor(i / 1e3), m = Math.floor(a / 60), s = Math.floor(m / 60), l = Math.floor(s / 24);
1959
- return a < 60 ? "just now" : m < 60 ? `${m}m ago` : s < 24 ? `${s}h ago` : l < 30 ? `${l}d ago` : e.toLocaleDateString();
1960
- }, sn = ({
1975
+ }, cr = (t) => {
1976
+ const e = typeof t == "string" ? new Date(t) : t, i = (/* @__PURE__ */ new Date()).getTime() - e.getTime(), a = Math.floor(i / 1e3), c = Math.floor(a / 60), s = Math.floor(c / 60), l = Math.floor(s / 24);
1977
+ return a < 60 ? "just now" : c < 60 ? `${c}m ago` : s < 24 ? `${s}h ago` : l < 30 ? `${l}d ago` : e.toLocaleDateString();
1978
+ }, dn = ({
1961
1979
  event: t,
1962
1980
  expanded: e = !1,
1963
1981
  onToggle: r,
1964
1982
  expandable: i,
1965
1983
  isChild: a = !1,
1966
- showTimeline: m = !1,
1984
+ showTimeline: c = !1,
1967
1985
  density: s,
1968
1986
  showMeta: l,
1969
- renderIcon: $,
1970
- className: L = ""
1987
+ renderIcon: I,
1988
+ className: _ = ""
1971
1989
  }) => {
1972
- const k = or(), E = s ?? k.density, P = l ?? k.showMeta, c = i ?? !!t.description, _ = () => {
1973
- c && r && r(t.id, !e);
1974
- }, o = (g) => {
1975
- c && r && (g.key === "Enter" || g.key === " ") && (g.preventDefault(), r(t.id, !e));
1976
- }, d = [
1990
+ const L = sr(), A = s ?? L.density, S = l ?? L.showMeta, d = i ?? !!t.description, C = () => {
1991
+ d && r && r(t.id, !e);
1992
+ }, o = (y) => {
1993
+ d && r && (y.key === "Enter" || y.key === " ") && (y.preventDefault(), r(t.id, !e));
1994
+ }, u = [
1977
1995
  "uiforge-activity-item",
1978
- `uiforge-activity-item--${E}`,
1996
+ `uiforge-activity-item--${A}`,
1979
1997
  a ? "uiforge-activity-item--child" : "",
1980
- P ? "" : "uiforge-activity-item--hide-meta",
1981
- L
1982
- ].filter(Boolean).join(" "), u = [
1998
+ S ? "" : "uiforge-activity-item--hide-meta",
1999
+ _
2000
+ ].filter(Boolean).join(" "), m = [
1983
2001
  "uiforge-activity-item__header",
1984
- c ? "uiforge-activity-item__header--clickable" : ""
2002
+ d ? "uiforge-activity-item__header--clickable" : ""
1985
2003
  ].filter(Boolean).join(" ");
1986
- return /* @__PURE__ */ y(
2004
+ return /* @__PURE__ */ b(
1987
2005
  "div",
1988
2006
  {
1989
- className: d,
2007
+ className: u,
1990
2008
  "data-event-id": t.id,
1991
- "data-density": E,
1992
- "data-show-meta": P,
2009
+ "data-density": A,
2010
+ "data-show-meta": S,
1993
2011
  children: [
1994
- m && !a && /* @__PURE__ */ n("div", { className: "uiforge-activity-item__timeline-marker" }),
1995
- /* @__PURE__ */ n("div", { className: "uiforge-activity-item__icon", children: $ ? $(t) : t.icon || sr(t.type) }),
1996
- /* @__PURE__ */ y("div", { className: "uiforge-activity-item__content", children: [
1997
- /* @__PURE__ */ y(
2012
+ c && !a && /* @__PURE__ */ n("div", { className: "uiforge-activity-item__timeline-marker" }),
2013
+ /* @__PURE__ */ n("div", { className: "uiforge-activity-item__icon", children: I ? I(t) : t.icon || lr(t.type) }),
2014
+ /* @__PURE__ */ b("div", { className: "uiforge-activity-item__content", children: [
2015
+ /* @__PURE__ */ b(
1998
2016
  "div",
1999
2017
  {
2000
- className: u,
2001
- onClick: _,
2018
+ className: m,
2019
+ onClick: C,
2002
2020
  onKeyDown: o,
2003
- role: c ? "button" : void 0,
2004
- tabIndex: c ? 0 : void 0,
2005
- "aria-expanded": c ? e : void 0,
2021
+ role: d ? "button" : void 0,
2022
+ tabIndex: d ? 0 : void 0,
2023
+ "aria-expanded": d ? e : void 0,
2006
2024
  children: [
2007
2025
  /* @__PURE__ */ n("div", { className: "uiforge-activity-item__title", children: t.title }),
2008
- P && /* @__PURE__ */ n("div", { className: "uiforge-activity-item__timestamp", children: lr(t.timestamp) }),
2009
- c && /* @__PURE__ */ n("div", { className: "uiforge-activity-item__toggle", children: e ? /* @__PURE__ */ n(ke.fold, { size: 16 }) : /* @__PURE__ */ n(ke.unfold, { size: 16 }) })
2026
+ S && /* @__PURE__ */ n("div", { className: "uiforge-activity-item__timestamp", children: cr(t.timestamp) }),
2027
+ d && /* @__PURE__ */ n("div", { className: "uiforge-activity-item__toggle", children: e ? /* @__PURE__ */ n(ke.fold, { size: 16 }) : /* @__PURE__ */ n(ke.unfold, { size: 16 }) })
2010
2028
  ]
2011
2029
  }
2012
2030
  ),
2013
- e && t.description && P && /* @__PURE__ */ n("div", { className: "uiforge-activity-item__description", children: t.description })
2031
+ e && t.description && S && /* @__PURE__ */ n("div", { className: "uiforge-activity-item__description", children: t.description })
2014
2032
  ] })
2015
2033
  ]
2016
2034
  }
2017
2035
  );
2018
- }, Fe = 400, cr = (t) => {
2036
+ }, Fe = 400, dr = (t) => {
2019
2037
  const e = Ce[t] || Ce.commit;
2020
2038
  return /* @__PURE__ */ n(e, { size: 16 });
2021
- }, Ee = (t, e = 2) => {
2039
+ }, De = (t, e = 2) => {
2022
2040
  if (t.length === 0) return [];
2023
2041
  const r = [];
2024
2042
  let i = [], a = null;
2025
- return t.forEach((m, s) => {
2026
- a === m.type ? i.push(m) : (i.length >= e && a ? r.push(qe(i, a)) : i.forEach((l) => {
2043
+ return t.forEach((c, s) => {
2044
+ a === c.type ? i.push(c) : (i.length >= e && a ? r.push(qe(i, a)) : i.forEach((l) => {
2027
2045
  r.push({
2028
2046
  id: l.id.toString(),
2029
2047
  type: l.type,
@@ -2033,7 +2051,7 @@ const sr = (t) => {
2033
2051
  icon: l.icon,
2034
2052
  events: [l]
2035
2053
  });
2036
- }), i = [m], a = m.type), s === t.length - 1 && (i.length >= e && a ? r.push(qe(i, a)) : i.forEach((l) => {
2054
+ }), i = [c], a = c.type), s === t.length - 1 && (i.length >= e && a ? r.push(qe(i, a)) : i.forEach((l) => {
2037
2055
  r.push({
2038
2056
  id: l.id.toString(),
2039
2057
  type: l.type,
@@ -2048,23 +2066,23 @@ const sr = (t) => {
2048
2066
  }, qe = (t, e) => {
2049
2067
  const r = t.reduce(
2050
2068
  (s, l) => {
2051
- const $ = l.metadata?.repository || "unknown";
2052
- return s[$] || (s[$] = []), s[$].push(l), s;
2069
+ const I = l.metadata?.repository || "unknown";
2070
+ return s[I] || (s[I] = []), s[I].push(l), s;
2053
2071
  },
2054
2072
  {}
2055
2073
  ), i = Object.entries(r), a = i.length > 1;
2056
- let m = "";
2074
+ let c = "";
2057
2075
  if (a)
2058
- m = `Created ${t.length} ${De(e)} in ${i.length} repositories`;
2076
+ c = `Created ${t.length} ${Pe(e)} in ${i.length} repositories`;
2059
2077
  else {
2060
2078
  const s = i[0][0];
2061
- m = `Created ${t.length} ${De(e)}${s !== "unknown" ? ` in ${s}` : ""}`;
2079
+ c = `Created ${t.length} ${Pe(e)}${s !== "unknown" ? ` in ${s}` : ""}`;
2062
2080
  }
2063
2081
  return {
2064
2082
  id: `group-${e}-${t[0].id}`,
2065
2083
  type: e,
2066
2084
  count: t.length,
2067
- title: m,
2085
+ title: c,
2068
2086
  timestamp: new Date(t[0].timestamp),
2069
2087
  icon: t[0].icon,
2070
2088
  events: t,
@@ -2072,13 +2090,13 @@ const sr = (t) => {
2072
2090
  id: `group-${e}-${s}`,
2073
2091
  type: e,
2074
2092
  count: l.length,
2075
- title: `Created ${l.length} ${De(e)} in ${s}`,
2093
+ title: `Created ${l.length} ${Pe(e)} in ${s}`,
2076
2094
  timestamp: new Date(l[0].timestamp),
2077
2095
  icon: l[0].icon,
2078
2096
  events: l
2079
2097
  })) : void 0
2080
2098
  };
2081
- }, De = (t) => ({
2099
+ }, Pe = (t) => ({
2082
2100
  pr: "pull requests",
2083
2101
  issue: "issues",
2084
2102
  commit: "commits",
@@ -2088,7 +2106,7 @@ const sr = (t) => {
2088
2106
  merge: "merges",
2089
2107
  release: "releases",
2090
2108
  deploy: "deployments"
2091
- })[t] || `${t}s`, ze = (t) => {
2109
+ })[t] || `${t}s`, Oe = (t) => {
2092
2110
  if (t.length === 0) return [];
2093
2111
  const e = [];
2094
2112
  let r = null;
@@ -2099,51 +2117,51 @@ const sr = (t) => {
2099
2117
  }
2100
2118
  const s = i.timestamp, l = `${s.getFullYear()}-${s.getMonth()}`;
2101
2119
  if (l !== r) {
2102
- const $ = {
2120
+ const I = {
2103
2121
  id: `sep-${a}`,
2104
2122
  type: "date-separator",
2105
2123
  date: s,
2106
- label: dr(s)
2124
+ label: ur(s)
2107
2125
  };
2108
- e.push($), r = l;
2126
+ e.push(I), r = l;
2109
2127
  }
2110
2128
  e.push(i);
2111
2129
  }), e;
2112
- }, dr = (t) => t.toLocaleDateString("en-US", { month: "long", year: "numeric" }), ur = (t) => {
2113
- const e = typeof t == "string" ? new Date(t) : t, i = (/* @__PURE__ */ new Date()).getTime() - e.getTime(), a = Math.floor(i / 1e3), m = Math.floor(a / 60), s = Math.floor(m / 60), l = Math.floor(s / 24);
2114
- return a < 60 ? "just now" : m < 60 ? `${m}m ago` : s < 24 ? `${s}h ago` : l < 30 ? `${l}d ago` : e.toLocaleDateString();
2115
- }, ln = ({
2130
+ }, ur = (t) => t.toLocaleDateString("en-US", { month: "long", year: "numeric" }), hr = (t) => {
2131
+ const e = typeof t == "string" ? new Date(t) : t, i = (/* @__PURE__ */ new Date()).getTime() - e.getTime(), a = Math.floor(i / 1e3), c = Math.floor(a / 60), s = Math.floor(c / 60), l = Math.floor(s / 24);
2132
+ return a < 60 ? "just now" : c < 60 ? `${c}m ago` : s < 24 ? `${s}h ago` : l < 30 ? `${l}d ago` : e.toLocaleDateString();
2133
+ }, un = ({
2116
2134
  events: t,
2117
2135
  theme: e = "light",
2118
2136
  className: r = "",
2119
2137
  style: i,
2120
2138
  showLoadMore: a = !0,
2121
- loading: m = !1,
2139
+ loading: c = !1,
2122
2140
  onLoadMore: s,
2123
2141
  pagination: l,
2124
- maxHeight: $,
2125
- showMoreThreshold: L = 100,
2126
- initiallyExpandedAll: k = !1,
2127
- emptyMessage: E = "No activity to display",
2128
- onToggleExpand: P,
2129
- enableGrouping: c = !0,
2130
- groupingThreshold: _ = 2,
2142
+ maxHeight: I,
2143
+ showMoreThreshold: _ = 100,
2144
+ initiallyExpandedAll: L = !1,
2145
+ emptyMessage: A = "No activity to display",
2146
+ onToggleExpand: S,
2147
+ enableGrouping: d = !0,
2148
+ groupingThreshold: C = 2,
2131
2149
  showDateSeparators: o = !0,
2132
- showTimeline: d = !0,
2133
- scale: u,
2134
- density: g = "comfortable",
2135
- responsive: S = !0,
2150
+ showTimeline: u = !0,
2151
+ scale: m,
2152
+ density: y = "comfortable",
2153
+ responsive: N = !0,
2136
2154
  compactBreakpointPx: O = 640,
2137
- containerRef: C,
2138
- showMeta: b,
2139
- renderIcon: M,
2140
- renderEvent: A,
2141
- virtualization: U = !1,
2155
+ containerRef: k,
2156
+ showMeta: $,
2157
+ renderIcon: D,
2158
+ renderEvent: P,
2159
+ virtualization: M = !1,
2142
2160
  virtualItemHeight: R = 48
2143
2161
  }) => {
2144
- const [F, f] = te(() => {
2145
- const v = /* @__PURE__ */ new Set();
2146
- return (c ? o ? ze(Ee(t, _)) : Ee(t, _) : t.map((V) => ({
2162
+ const [j, p] = X(() => {
2163
+ const g = /* @__PURE__ */ new Set();
2164
+ return (d ? o ? Oe(De(t, C)) : De(t, C) : t.map((V) => ({
2147
2165
  id: V.id.toString(),
2148
2166
  type: V.type,
2149
2167
  count: 1,
@@ -2153,15 +2171,15 @@ const sr = (t) => {
2153
2171
  events: [V]
2154
2172
  }))).forEach((V) => {
2155
2173
  if ("events" in V && V.type !== "date-separator") {
2156
- const Q = V;
2157
- (k || Q.events.some((h) => h.initiallyExpanded)) && v.add(Q.id), Q.children && Q.children.forEach((h) => {
2158
- (k || h.events.some((z) => z.initiallyExpanded)) && v.add(h.id);
2174
+ const ee = V;
2175
+ (L || ee.events.some((f) => f.initiallyExpanded)) && g.add(ee.id), ee.children && ee.children.forEach((f) => {
2176
+ (L || f.events.some((U) => U.initiallyExpanded)) && g.add(f.id);
2159
2177
  });
2160
2178
  }
2161
- }), v;
2162
- }), [N, x] = te(!1), [w, se] = te(Fe), J = ne(null), ie = C || J, ee = ne(null), ce = ne(null), le = ir(S ? ie : null, O), j = oe(() => S && le && g === "comfortable" ? "compact" : g, [S, le, g]), he = oe(() => b !== void 0 ? b : !0, [b]), G = oe(() => {
2163
- if (!c) {
2164
- const D = t.map((V) => ({
2179
+ }), g;
2180
+ }), [h, w] = X(!1), [x, ae] = X(Fe), J = Q(null), oe = k || J, re = Q(null), ce = Q(null), le = ar(N ? oe : null, O), H = se(() => N && le && y === "comfortable" ? "compact" : y, [N, le, y]), he = se(() => $ !== void 0 ? $ : !0, [$]), G = se(() => {
2181
+ if (!d) {
2182
+ const z = t.map((V) => ({
2165
2183
  id: V.id.toString(),
2166
2184
  type: V.type,
2167
2185
  count: 1,
@@ -2170,179 +2188,186 @@ const sr = (t) => {
2170
2188
  icon: V.icon,
2171
2189
  events: [V]
2172
2190
  }));
2173
- return o ? ze(D) : D;
2174
- }
2175
- const v = Ee(t, _);
2176
- return o ? ze(v) : v;
2177
- }, [t, c, _, o]), re = B(() => {
2178
- if (!ee.current || !a || !s) return;
2179
- const { scrollTop: v, scrollHeight: D, clientHeight: V } = ee.current, Q = D - v - V;
2180
- x(Q <= L);
2181
- }, [a, s, L]), me = B(
2182
- ({ scrollOffset: v }) => {
2191
+ return o ? Oe(z) : z;
2192
+ }
2193
+ const g = De(t, C);
2194
+ return o ? Oe(g) : g;
2195
+ }, [t, d, C, o]), ne = B(() => {
2196
+ if (!re.current || !a || !s) return;
2197
+ const { scrollTop: g, scrollHeight: z, clientHeight: V } = re.current, ee = z - g - V;
2198
+ w(ee <= _);
2199
+ }, [a, s, _]), me = B(
2200
+ ({ scrollOffset: g }) => {
2183
2201
  if (!a || !s) return;
2184
- const D = G.length * R, V = w, Q = D - v - V;
2185
- x(Q <= L);
2202
+ const z = G.length * R, V = x, ee = z - g - V;
2203
+ w(ee <= _);
2186
2204
  },
2187
- [a, s, L, G.length, R, w]
2205
+ [
2206
+ a,
2207
+ s,
2208
+ _,
2209
+ G.length,
2210
+ R,
2211
+ x
2212
+ ]
2188
2213
  );
2189
- ae(() => {
2190
- if (!U || !J.current) return;
2191
- const v = () => {
2214
+ ie(() => {
2215
+ if (!M || !J.current) return;
2216
+ const g = () => {
2192
2217
  const V = J.current;
2193
2218
  if (V) {
2194
- let Q = V.clientHeight || Fe;
2195
- if ($) {
2196
- const h = parseFloat($);
2197
- !isNaN(h) && h > 0 && (Q = h);
2219
+ let ee = V.clientHeight || Fe;
2220
+ if (I) {
2221
+ const f = parseFloat(I);
2222
+ !isNaN(f) && f > 0 && (ee = f);
2198
2223
  }
2199
- se(Q);
2224
+ ae(ee);
2200
2225
  }
2201
2226
  };
2202
- v();
2203
- const D = new ResizeObserver(v);
2204
- return D.observe(J.current), () => {
2205
- D.disconnect();
2227
+ g();
2228
+ const z = new ResizeObserver(g);
2229
+ return z.observe(J.current), () => {
2230
+ z.disconnect();
2206
2231
  };
2207
- }, [U, $]), ae(() => {
2208
- const v = ee.current;
2209
- if (v)
2210
- return v.addEventListener("scroll", re), re(), () => {
2211
- v.removeEventListener("scroll", re);
2232
+ }, [M, I]), ie(() => {
2233
+ const g = re.current;
2234
+ if (g)
2235
+ return g.addEventListener("scroll", ne), ne(), () => {
2236
+ g.removeEventListener("scroll", ne);
2212
2237
  };
2213
- }, [re]);
2214
- const I = B(
2215
- (v, D) => {
2216
- f((V) => {
2217
- const Q = new Set(V), h = Q.has(v);
2218
- return h ? Q.delete(v) : Q.add(v), P?.(D, !h), Q;
2238
+ }, [ne]);
2239
+ const E = B(
2240
+ (g, z) => {
2241
+ p((V) => {
2242
+ const ee = new Set(V), f = ee.has(g);
2243
+ return f ? ee.delete(g) : ee.add(g), S?.(z, !f), ee;
2219
2244
  });
2220
2245
  },
2221
- [P]
2222
- ), q = (v, D = !1) => {
2223
- const V = F.has(v.id), Q = v.children && v.children.length > 0, h = v.count > 1, z = v.count === 1 && v.events[0]?.description, X = h || Q || z, Y = v.count === 1 && v.events.length === 1 ? v.events[0].id : v.id;
2224
- return A && v.count === 1 && v.events.length === 1 ? /* @__PURE__ */ y(
2246
+ [S]
2247
+ ), q = (g, z = !1) => {
2248
+ const V = j.has(g.id), ee = g.children && g.children.length > 0, f = g.count > 1, U = g.count === 1 && g.events[0]?.description, te = f || ee || U, Y = g.count === 1 && g.events.length === 1 ? g.events[0].id : g.id;
2249
+ return P && g.count === 1 && g.events.length === 1 ? /* @__PURE__ */ b(
2225
2250
  "div",
2226
2251
  {
2227
- className: `activity-stream__item ${D ? "activity-stream__item--child" : ""}`,
2228
- "data-event-id": v.id,
2252
+ className: `activity-stream__item ${z ? "activity-stream__item--child" : ""}`,
2253
+ "data-event-id": g.id,
2229
2254
  children: [
2230
- d && !D && /* @__PURE__ */ n("div", { className: "activity-stream__timeline-marker" }),
2231
- A(v.events[0])
2255
+ u && !z && /* @__PURE__ */ n("div", { className: "activity-stream__timeline-marker" }),
2256
+ P(g.events[0])
2232
2257
  ]
2233
2258
  },
2234
- v.id
2235
- ) : /* @__PURE__ */ y(
2259
+ g.id
2260
+ ) : /* @__PURE__ */ b(
2236
2261
  "div",
2237
2262
  {
2238
- className: `activity-stream__item ${D ? "activity-stream__item--child" : ""}`,
2239
- "data-event-id": v.id,
2263
+ className: `activity-stream__item ${z ? "activity-stream__item--child" : ""}`,
2264
+ "data-event-id": g.id,
2240
2265
  children: [
2241
- d && !D && /* @__PURE__ */ n("div", { className: "activity-stream__timeline-marker" }),
2242
- /* @__PURE__ */ n("div", { className: "activity-stream__icon", children: M && v.events.length === 1 ? M(v.events[0]) : v.icon || cr(v.type) }),
2243
- /* @__PURE__ */ y("div", { className: "activity-stream__content", children: [
2244
- /* @__PURE__ */ y(
2266
+ u && !z && /* @__PURE__ */ n("div", { className: "activity-stream__timeline-marker" }),
2267
+ /* @__PURE__ */ n("div", { className: "activity-stream__icon", children: D && g.events.length === 1 ? D(g.events[0]) : g.icon || dr(g.type) }),
2268
+ /* @__PURE__ */ b("div", { className: "activity-stream__content", children: [
2269
+ /* @__PURE__ */ b(
2245
2270
  "div",
2246
2271
  {
2247
- className: `activity-stream__header ${X ? "activity-stream__header--clickable" : ""}`,
2248
- onClick: () => X && I(v.id, Y),
2249
- onKeyDown: (H) => {
2250
- X && (H.key === "Enter" || H.key === " ") && (H.preventDefault(), I(v.id, Y));
2272
+ className: `activity-stream__header ${te ? "activity-stream__header--clickable" : ""}`,
2273
+ onClick: () => te && E(g.id, Y),
2274
+ onKeyDown: (W) => {
2275
+ te && (W.key === "Enter" || W.key === " ") && (W.preventDefault(), E(g.id, Y));
2251
2276
  },
2252
- role: X ? "button" : void 0,
2253
- tabIndex: X ? 0 : void 0,
2254
- "aria-expanded": X ? V : void 0,
2277
+ role: te ? "button" : void 0,
2278
+ tabIndex: te ? 0 : void 0,
2279
+ "aria-expanded": te ? V : void 0,
2255
2280
  children: [
2256
- /* @__PURE__ */ n("div", { className: "activity-stream__title", children: v.title }),
2257
- /* @__PURE__ */ n("div", { className: "activity-stream__timestamp", children: ur(v.timestamp) }),
2258
- X && /* @__PURE__ */ n("div", { className: "activity-stream__toggle", children: V ? /* @__PURE__ */ n(ke.fold, { size: 16 }) : /* @__PURE__ */ n(ke.unfold, { size: 16 }) })
2281
+ /* @__PURE__ */ n("div", { className: "activity-stream__title", children: g.title }),
2282
+ /* @__PURE__ */ n("div", { className: "activity-stream__timestamp", children: hr(g.timestamp) }),
2283
+ te && /* @__PURE__ */ n("div", { className: "activity-stream__toggle", children: V ? /* @__PURE__ */ n(ke.fold, { size: 16 }) : /* @__PURE__ */ n(ke.unfold, { size: 16 }) })
2259
2284
  ]
2260
2285
  }
2261
2286
  ),
2262
- V && Q && v.children && /* @__PURE__ */ n("div", { className: "activity-stream__children", children: v.children.map((H) => q(H, !0)) }),
2263
- V && !Q && v.events.length > 1 && /* @__PURE__ */ n("div", { className: "activity-stream__events-list", children: v.events.map(
2264
- (H) => A ? /* @__PURE__ */ n("div", { className: "activity-stream__event-item", children: A(H) }, H.id) : /* @__PURE__ */ y("div", { className: "activity-stream__event-item", children: [
2265
- /* @__PURE__ */ n("div", { className: "activity-stream__event-title", children: H.title }),
2266
- H.description && /* @__PURE__ */ n("div", { className: "activity-stream__event-description", children: H.description })
2267
- ] }, H.id)
2287
+ V && ee && g.children && /* @__PURE__ */ n("div", { className: "activity-stream__children", children: g.children.map((W) => q(W, !0)) }),
2288
+ V && !ee && g.events.length > 1 && /* @__PURE__ */ n("div", { className: "activity-stream__events-list", children: g.events.map(
2289
+ (W) => P ? /* @__PURE__ */ n("div", { className: "activity-stream__event-item", children: P(W) }, W.id) : /* @__PURE__ */ b("div", { className: "activity-stream__event-item", children: [
2290
+ /* @__PURE__ */ n("div", { className: "activity-stream__event-title", children: W.title }),
2291
+ W.description && /* @__PURE__ */ n("div", { className: "activity-stream__event-description", children: W.description })
2292
+ ] }, W.id)
2268
2293
  ) }),
2269
- V && v.count === 1 && v.events[0].description && /* @__PURE__ */ n("div", { className: "activity-stream__description", children: v.events[0].description })
2294
+ V && g.count === 1 && g.events[0].description && /* @__PURE__ */ n("div", { className: "activity-stream__description", children: g.events[0].description })
2270
2295
  ] })
2271
2296
  ]
2272
2297
  },
2273
- v.id
2298
+ g.id
2274
2299
  );
2275
- }, p = B(
2276
- (v) => {
2277
- if ("type" in v && v.type === "date-separator") {
2278
- const D = v;
2279
- return /* @__PURE__ */ y("div", { className: "activity-stream__date-separator", children: [
2280
- /* @__PURE__ */ n("div", { className: "activity-stream__date-label", children: D.label }),
2300
+ }, v = B(
2301
+ (g) => {
2302
+ if ("type" in g && g.type === "date-separator") {
2303
+ const z = g;
2304
+ return /* @__PURE__ */ b("div", { className: "activity-stream__date-separator", children: [
2305
+ /* @__PURE__ */ n("div", { className: "activity-stream__date-label", children: z.label }),
2281
2306
  /* @__PURE__ */ n("div", { className: "activity-stream__date-line" })
2282
- ] }, D.id);
2307
+ ] }, z.id);
2283
2308
  }
2284
- return q(v);
2309
+ return q(g);
2285
2310
  },
2286
2311
  // Intentionally omitting renderGroupedEvent from dependencies:
2287
2312
  // renderGroupedEvent is an inline function that changes on every render, but its behavior
2288
2313
  // only depends on these stable values. Including it would cause unnecessary re-renders.
2289
2314
  // eslint-disable-next-line react-hooks/exhaustive-deps
2290
- [F, d, M, A, I]
2291
- ), T = (v) => /* @__PURE__ */ y("div", { className: "activity-stream__date-separator", children: [
2292
- /* @__PURE__ */ n("div", { className: "activity-stream__date-label", children: v.label }),
2315
+ [j, u, D, P, E]
2316
+ ), T = (g) => /* @__PURE__ */ b("div", { className: "activity-stream__date-separator", children: [
2317
+ /* @__PURE__ */ n("div", { className: "activity-stream__date-label", children: g.label }),
2293
2318
  /* @__PURE__ */ n("div", { className: "activity-stream__date-line" })
2294
- ] }, v.id), W = B(
2295
- ({ index: v, style: D }) => {
2296
- const V = G[v];
2297
- return V ? /* @__PURE__ */ n("div", { style: D, className: "activity-stream__virtual-row", children: p(V) }) : null;
2319
+ ] }, g.id), F = B(
2320
+ ({ index: g, style: z }) => {
2321
+ const V = G[g];
2322
+ return V ? /* @__PURE__ */ n("div", { style: z, className: "activity-stream__virtual-row", children: v(V) }) : null;
2298
2323
  },
2299
- [G, p]
2300
- ), Z = l?.hasMore !== void 0 ? l.hasMore : l?.totalItems !== void 0 ? t.length < l.totalItems : !0, de = "activity-stream", K = `${de}--${e}`, fe = d ? `${de}--with-timeline` : "", ge = `${de}--${j}`;
2301
- let ue = `${de} ${K} ${fe} ${ge} ${r}`.trim();
2302
- u !== void 0 && u < 1 && (ue = `${ue} ${de}--scale-compact`), u !== void 0 && u > 1 && (ue = `${ue} ${de}--scale-spacious`);
2303
- const Se = $ ? { maxHeight: $ } : void 0, _e = u !== void 0 ? { "--activity-stream-scale": u } : {};
2304
- return /* @__PURE__ */ n(ar, { value: { density: j, showMeta: he }, children: /* @__PURE__ */ n(
2324
+ [G, v]
2325
+ ), Z = l?.hasMore !== void 0 ? l.hasMore : l?.totalItems !== void 0 ? t.length < l.totalItems : !0, de = "activity-stream", K = `${de}--${e}`, pe = u ? `${de}--with-timeline` : "", ge = `${de}--${H}`;
2326
+ let ue = `${de} ${K} ${pe} ${ge} ${r}`.trim();
2327
+ m !== void 0 && m < 1 && (ue = `${ue} ${de}--scale-compact`), m !== void 0 && m > 1 && (ue = `${ue} ${de}--scale-spacious`);
2328
+ const Ne = I ? { maxHeight: I } : void 0, _e = m !== void 0 ? { "--activity-stream-scale": m } : {};
2329
+ return /* @__PURE__ */ n(or, { value: { density: H, showMeta: he }, children: /* @__PURE__ */ n(
2305
2330
  "div",
2306
2331
  {
2307
2332
  ref: J,
2308
- className: `${ue}${U ? " activity-stream--virtualized" : ""}`,
2333
+ className: `${ue}${M ? " activity-stream--virtualized" : ""}`,
2309
2334
  "data-theme": e,
2310
- "data-density": j,
2335
+ "data-density": H,
2311
2336
  "data-show-meta": he,
2312
- "data-virtualized": U,
2337
+ "data-virtualized": M,
2313
2338
  style: i,
2314
- children: U ? (
2339
+ children: M ? (
2315
2340
  // Virtualized rendering with react-window
2316
- /* @__PURE__ */ y(
2341
+ /* @__PURE__ */ b(
2317
2342
  "div",
2318
2343
  {
2319
2344
  className: "activity-stream__container activity-stream__container--virtualized",
2320
2345
  style: _e,
2321
2346
  children: [
2322
- G.length === 0 ? /* @__PURE__ */ n("div", { className: "activity-stream__empty", children: E }) : /* @__PURE__ */ n(
2323
- ft,
2347
+ G.length === 0 ? /* @__PURE__ */ n("div", { className: "activity-stream__empty", children: A }) : /* @__PURE__ */ n(
2348
+ vt,
2324
2349
  {
2325
2350
  ref: ce,
2326
2351
  className: "activity-stream__items activity-stream__items--virtualized",
2327
- height: w,
2352
+ height: x,
2328
2353
  itemCount: G.length,
2329
2354
  itemSize: R,
2330
2355
  width: "100%",
2331
2356
  onScroll: me,
2332
- children: W
2357
+ children: F
2333
2358
  }
2334
2359
  ),
2335
- m && /* @__PURE__ */ y("div", { className: "activity-stream__loading", children: [
2360
+ c && /* @__PURE__ */ b("div", { className: "activity-stream__loading", children: [
2336
2361
  /* @__PURE__ */ n("div", { className: "activity-stream__spinner" }),
2337
2362
  /* @__PURE__ */ n("span", { children: "Loading..." })
2338
2363
  ] }),
2339
- a && !m && Z && s && /* @__PURE__ */ n(
2364
+ a && !c && Z && s && /* @__PURE__ */ n(
2340
2365
  "div",
2341
2366
  {
2342
- className: `activity-stream__load-more ${N ? "activity-stream__load-more--visible" : ""}`,
2367
+ className: `activity-stream__load-more ${h ? "activity-stream__load-more--visible" : ""}`,
2343
2368
  onClick: s,
2344
- onKeyDown: (v) => {
2345
- (v.key === "Enter" || v.key === " ") && (v.preventDefault(), s());
2369
+ onKeyDown: (g) => {
2370
+ (g.key === "Enter" || g.key === " ") && (g.preventDefault(), s());
2346
2371
  },
2347
2372
  role: "button",
2348
2373
  tabIndex: 0,
@@ -2355,30 +2380,30 @@ const sr = (t) => {
2355
2380
  )
2356
2381
  ) : (
2357
2382
  // Standard rendering without virtualization
2358
- /* @__PURE__ */ y(
2383
+ /* @__PURE__ */ b(
2359
2384
  "div",
2360
2385
  {
2361
- ref: ee,
2386
+ ref: re,
2362
2387
  className: "activity-stream__container",
2363
2388
  style: {
2364
- ...Se,
2389
+ ...Ne,
2365
2390
  ..._e
2366
2391
  },
2367
2392
  children: [
2368
- G.length === 0 ? /* @__PURE__ */ n("div", { className: "activity-stream__empty", children: E }) : /* @__PURE__ */ n("div", { className: "activity-stream__items", children: G.map(
2369
- (v) => "type" in v && v.type === "date-separator" ? T(v) : q(v)
2393
+ G.length === 0 ? /* @__PURE__ */ n("div", { className: "activity-stream__empty", children: A }) : /* @__PURE__ */ n("div", { className: "activity-stream__items", children: G.map(
2394
+ (g) => "type" in g && g.type === "date-separator" ? T(g) : q(g)
2370
2395
  ) }),
2371
- m && /* @__PURE__ */ y("div", { className: "activity-stream__loading", children: [
2396
+ c && /* @__PURE__ */ b("div", { className: "activity-stream__loading", children: [
2372
2397
  /* @__PURE__ */ n("div", { className: "activity-stream__spinner" }),
2373
2398
  /* @__PURE__ */ n("span", { children: "Loading..." })
2374
2399
  ] }),
2375
- a && !m && Z && s && /* @__PURE__ */ n(
2400
+ a && !c && Z && s && /* @__PURE__ */ n(
2376
2401
  "div",
2377
2402
  {
2378
- className: `activity-stream__load-more ${N ? "activity-stream__load-more--visible" : ""}`,
2403
+ className: `activity-stream__load-more ${h ? "activity-stream__load-more--visible" : ""}`,
2379
2404
  onClick: s,
2380
- onKeyDown: (v) => {
2381
- (v.key === "Enter" || v.key === " ") && (v.preventDefault(), s());
2405
+ onKeyDown: (g) => {
2406
+ (g.key === "Enter" || g.key === " ") && (g.preventDefault(), s());
2382
2407
  },
2383
2408
  role: "button",
2384
2409
  tabIndex: 0,
@@ -2392,7 +2417,7 @@ const sr = (t) => {
2392
2417
  )
2393
2418
  }
2394
2419
  ) });
2395
- }, hr = {
2420
+ }, mr = {
2396
2421
  name: "youtube",
2397
2422
  displayName: "YouTube",
2398
2423
  domains: ["youtube.com", "youtu.be", "youtube-nocookie.com"],
@@ -2413,7 +2438,7 @@ const sr = (t) => {
2413
2438
  const i = "https://www.youtube.com", a = r.toString();
2414
2439
  return `${i}/embed/${t}${a ? `?${a}` : ""}`;
2415
2440
  }
2416
- }, mr = {
2441
+ }, fr = {
2417
2442
  name: "vimeo",
2418
2443
  displayName: "Vimeo",
2419
2444
  domains: ["vimeo.com"],
@@ -2473,7 +2498,7 @@ const sr = (t) => {
2473
2498
  const i = r.toString();
2474
2499
  return `https://www.dailymotion.com/embed/video/${t}${i ? `?${i}` : ""}`;
2475
2500
  }
2476
- }, fr = {
2501
+ }, vr = {
2477
2502
  name: "twitch",
2478
2503
  displayName: "Twitch",
2479
2504
  domains: ["twitch.tv", "clips.twitch.tv"],
@@ -2499,7 +2524,7 @@ const sr = (t) => {
2499
2524
  const a = r.toString();
2500
2525
  return t.startsWith("video:") ? `https://player.twitch.tv/?video=${t.slice(6)}&${a}` : t.startsWith("clip:") ? `https://clips.twitch.tv/embed?clip=${t.slice(5)}&${a}` : "";
2501
2526
  }
2502
- }, vr = {
2527
+ }, gr = {
2503
2528
  name: "kick",
2504
2529
  displayName: "Kick",
2505
2530
  domains: ["kick.com"],
@@ -2518,7 +2543,7 @@ const sr = (t) => {
2518
2543
  }
2519
2544
  },
2520
2545
  getEmbedUrl: (t) => `https://player.kick.com/video/${t}`
2521
- }, gr = {
2546
+ }, yr = {
2522
2547
  name: "rumble",
2523
2548
  displayName: "Rumble",
2524
2549
  domains: ["rumble.com"],
@@ -2544,7 +2569,7 @@ const sr = (t) => {
2544
2569
  const i = r.toString();
2545
2570
  return `https://rumble.com/embed/${t}${i ? `?${i}` : ""}`;
2546
2571
  }
2547
- }, yr = {
2572
+ }, br = {
2548
2573
  name: "odysee",
2549
2574
  displayName: "Odysee",
2550
2575
  domains: ["odysee.com"],
@@ -2566,7 +2591,7 @@ const sr = (t) => {
2566
2591
  }
2567
2592
  },
2568
2593
  getEmbedUrl: (t) => `https://odysee.com/$/embed/${t}`
2569
- }, br = {
2594
+ }, wr = {
2570
2595
  name: "bitchute",
2571
2596
  displayName: "BitChute",
2572
2597
  domains: ["bitchute.com"],
@@ -2585,7 +2610,7 @@ const sr = (t) => {
2585
2610
  }
2586
2611
  },
2587
2612
  getEmbedUrl: (t) => `https://www.bitchute.com/embed/${t}/`
2588
- }, wr = {
2613
+ }, _r = {
2589
2614
  name: "vk",
2590
2615
  displayName: "VK Video",
2591
2616
  domains: ["vk.com"],
@@ -2615,7 +2640,7 @@ const sr = (t) => {
2615
2640
  const a = r.toString();
2616
2641
  return `https://vk.com/video_ext.php?oid=${i[0]}&id=${i[1]}${a ? `&${a}` : ""}`;
2617
2642
  }
2618
- }, _r = {
2643
+ }, $r = {
2619
2644
  name: "bilibili",
2620
2645
  displayName: "Bilibili",
2621
2646
  domains: ["bilibili.com"],
@@ -2639,7 +2664,7 @@ const sr = (t) => {
2639
2664
  const i = r.toString();
2640
2665
  return `https://player.bilibili.com/player.html?bvid=${t}${i ? `&${i}` : ""}`;
2641
2666
  }
2642
- }, xr = {
2667
+ }, Ir = {
2643
2668
  name: "niconico",
2644
2669
  displayName: "Niconico",
2645
2670
  domains: ["nicovideo.jp"],
@@ -2658,7 +2683,7 @@ const sr = (t) => {
2658
2683
  }
2659
2684
  },
2660
2685
  getEmbedUrl: (t) => `https://embed.nicovideo.jp/watch/${t}`
2661
- }, $r = {
2686
+ }, xr = {
2662
2687
  name: "wistia",
2663
2688
  displayName: "Wistia",
2664
2689
  domains: ["wistia.com", "wi.st", "wistia.net"],
@@ -2689,7 +2714,7 @@ const sr = (t) => {
2689
2714
  const i = r.toString();
2690
2715
  return `https://fast.wistia.net/embed/iframe/${t}${i ? `?${i}` : ""}`;
2691
2716
  }
2692
- }, Ir = {
2717
+ }, Cr = {
2693
2718
  name: "brightcove",
2694
2719
  displayName: "Brightcove",
2695
2720
  domains: ["brightcove.com", "bcove.video"],
@@ -2716,7 +2741,7 @@ const sr = (t) => {
2716
2741
  const [r, ...i] = e, a = i.join(":");
2717
2742
  return `https://players.brightcove.net/${r}/default_default/index.html?videoId=${a}`;
2718
2743
  }
2719
- }, Cr = {
2744
+ }, kr = {
2720
2745
  name: "kaltura",
2721
2746
  displayName: "Kaltura",
2722
2747
  domains: ["kaltura.com"],
@@ -2743,7 +2768,7 @@ const sr = (t) => {
2743
2768
  const [r, i, a] = e;
2744
2769
  return `https://cdnapisec.kaltura.com/p/${r}/sp/${r}00/embedIframeJs/uiconf_id/${i}/partner_id/${r}?iframeembed=true&entry_id=${a}`;
2745
2770
  }
2746
- }, kr = {
2771
+ }, Nr = {
2747
2772
  name: "panopto",
2748
2773
  displayName: "Panopto",
2749
2774
  domains: ["panopto.com"],
@@ -2786,7 +2811,7 @@ const sr = (t) => {
2786
2811
  }
2787
2812
  },
2788
2813
  getEmbedUrl: (t) => `https://content.jwplatform.com/players/${t}.html`
2789
- }, Nr = {
2814
+ }, Mr = {
2790
2815
  name: "cloudflare",
2791
2816
  displayName: "Cloudflare Stream",
2792
2817
  domains: ["cloudflarestream.com", "videodelivery.net"],
@@ -2797,9 +2822,9 @@ const sr = (t) => {
2797
2822
  try {
2798
2823
  const e = new URL(t), r = e.hostname, i = r === "videodelivery.net" || r.endsWith(".videodelivery.net"), a = r === "cloudflarestream.com" || r.endsWith(".cloudflarestream.com");
2799
2824
  if (i || a) {
2800
- const m = e.pathname.match(/\/([a-zA-Z0-9]+)(?:\/|$)/);
2801
- if (m)
2802
- return m[1];
2825
+ const c = e.pathname.match(/\/([a-zA-Z0-9]+)(?:\/|$)/);
2826
+ if (c)
2827
+ return c[1];
2803
2828
  }
2804
2829
  return null;
2805
2830
  } catch {
@@ -2838,7 +2863,7 @@ const sr = (t) => {
2838
2863
  const i = r.toString();
2839
2864
  return `https://stream.mux.com/${t}.m3u8${i ? `?${i}` : ""}`;
2840
2865
  }
2841
- }, Mr = {
2866
+ }, Ar = {
2842
2867
  name: "aws-ivs",
2843
2868
  displayName: "AWS IVS",
2844
2869
  domains: ["ivs.aws", "amazonaws.com"],
@@ -2854,7 +2879,7 @@ const sr = (t) => {
2854
2879
  }
2855
2880
  },
2856
2881
  getEmbedUrl: (t) => `https://${t}.channel.ivs.aws/stream.m3u8`
2857
- }, Ar = {
2882
+ }, Er = {
2858
2883
  name: "azure-media",
2859
2884
  displayName: "Azure Media Services",
2860
2885
  domains: ["azure.net", "azureedge.net"],
@@ -2881,7 +2906,7 @@ const sr = (t) => {
2881
2906
  const [r, ...i] = e, a = i.join(":");
2882
2907
  return `https://${r}/${a}/manifest`;
2883
2908
  }
2884
- }, Pr = {
2909
+ }, Dr = {
2885
2910
  name: "google-drive",
2886
2911
  displayName: "Google Drive",
2887
2912
  domains: ["drive.google.com"],
@@ -2903,7 +2928,7 @@ const sr = (t) => {
2903
2928
  }
2904
2929
  },
2905
2930
  getEmbedUrl: (t) => `https://drive.google.com/file/d/${t}/preview`
2906
- }, Er = {
2931
+ }, Pr = {
2907
2932
  name: "dropbox",
2908
2933
  displayName: "Dropbox",
2909
2934
  domains: ["dropbox.com"],
@@ -2925,7 +2950,7 @@ const sr = (t) => {
2925
2950
  return t;
2926
2951
  }
2927
2952
  }
2928
- }, Dr = {
2953
+ }, Or = {
2929
2954
  name: "facebook",
2930
2955
  displayName: "Facebook Video",
2931
2956
  domains: ["facebook.com", "fb.watch"],
@@ -2970,7 +2995,7 @@ const sr = (t) => {
2970
2995
  }
2971
2996
  },
2972
2997
  getEmbedUrl: (t) => `https://www.instagram.com/p/${t}/embed/`
2973
- }, Or = {
2998
+ }, Ur = {
2974
2999
  name: "twitter",
2975
3000
  displayName: "X (Twitter)",
2976
3001
  domains: ["twitter.com", "x.com"],
@@ -2989,7 +3014,7 @@ const sr = (t) => {
2989
3014
  }
2990
3015
  },
2991
3016
  getEmbedUrl: (t) => `https://platform.twitter.com/embed/Tweet.html?id=${t}`
2992
- }, Ur = {
3017
+ }, Vr = {
2993
3018
  name: "pornhub",
2994
3019
  displayName: "Pornhub",
2995
3020
  domains: ["pornhub.com"],
@@ -3011,7 +3036,7 @@ const sr = (t) => {
3011
3036
  }
3012
3037
  },
3013
3038
  getEmbedUrl: (t) => `https://www.pornhub.com/embed/${t}`
3014
- }, Vr = {
3039
+ }, Rr = {
3015
3040
  name: "youporn",
3016
3041
  displayName: "YouPorn",
3017
3042
  domains: ["youporn.com"],
@@ -3030,7 +3055,7 @@ const sr = (t) => {
3030
3055
  }
3031
3056
  },
3032
3057
  getEmbedUrl: (t) => `https://www.youporn.com/embed/${t}`
3033
- }, Rr = {
3058
+ }, Br = {
3034
3059
  name: "redtube",
3035
3060
  displayName: "Redtube",
3036
3061
  domains: ["redtube.com"],
@@ -3071,7 +3096,7 @@ const sr = (t) => {
3071
3096
  }
3072
3097
  },
3073
3098
  getEmbedUrl: (t) => `https://xhamster.com/xembed.php?video=${t}`
3074
- }, Br = {
3099
+ }, jr = {
3075
3100
  name: "spankbang",
3076
3101
  displayName: "SpankBang",
3077
3102
  domains: ["spankbang.com"],
@@ -3092,41 +3117,41 @@ const sr = (t) => {
3092
3117
  getEmbedUrl: (t) => `https://spankbang.com/${t}/embed/`
3093
3118
  }, Ge = [
3094
3119
  // Tier 1: Major platforms
3095
- hr,
3096
3120
  mr,
3097
- pr,
3098
3121
  fr,
3122
+ pr,
3099
3123
  vr,
3100
3124
  gr,
3101
3125
  yr,
3102
3126
  br,
3103
3127
  wr,
3104
3128
  _r,
3105
- xr,
3106
- // Tier 2: Professional/Enterprise platforms
3107
3129
  $r,
3108
3130
  Ir,
3131
+ // Tier 2: Professional/Enterprise platforms
3132
+ xr,
3109
3133
  Cr,
3110
3134
  kr,
3111
- Sr,
3112
3135
  Nr,
3113
- Lr,
3136
+ Sr,
3114
3137
  Mr,
3138
+ Lr,
3115
3139
  Ar,
3140
+ Er,
3116
3141
  // Tier 3: Cloud storage
3142
+ Dr,
3117
3143
  Pr,
3118
- Er,
3119
3144
  // Tier 4: Social media
3120
- Dr,
3121
- zr,
3122
3145
  Or,
3123
- // Tier 5: Adult content
3146
+ zr,
3124
3147
  Ur,
3148
+ // Tier 5: Adult content
3125
3149
  Vr,
3126
3150
  Rr,
3151
+ Br,
3127
3152
  Tr,
3128
- Br
3129
- ], Oe = Ge.reduce(
3153
+ jr
3154
+ ], ze = Ge.reduce(
3130
3155
  (t, e) => (t[e.name] = e, t),
3131
3156
  {}
3132
3157
  );
@@ -3154,14 +3179,14 @@ function Je(t) {
3154
3179
  videoId: r
3155
3180
  } : null;
3156
3181
  }
3157
- function cn(t, e) {
3182
+ function hn(t, e) {
3158
3183
  const r = Je(t);
3159
3184
  return r ? r.provider.getEmbedUrl(r.videoId, e) : null;
3160
3185
  }
3161
- function dn(t) {
3186
+ function mn(t) {
3162
3187
  return Ye(t)?.tier === "adult";
3163
3188
  }
3164
- const jr = () => /* @__PURE__ */ y(
3189
+ const Hr = () => /* @__PURE__ */ b(
3165
3190
  "svg",
3166
3191
  {
3167
3192
  width: "64",
@@ -3175,7 +3200,7 @@ const jr = () => /* @__PURE__ */ y(
3175
3200
  /* @__PURE__ */ n("path", { d: "M26 20L46 32L26 44V20Z", fill: "currentColor", style: { color: "#3b82f6" } })
3176
3201
  ]
3177
3202
  }
3178
- ), Hr = () => /* @__PURE__ */ y(
3203
+ ), Wr = () => /* @__PURE__ */ b(
3179
3204
  "svg",
3180
3205
  {
3181
3206
  width: "20",
@@ -3189,37 +3214,37 @@ const jr = () => /* @__PURE__ */ y(
3189
3214
  /* @__PURE__ */ n("path", { d: "M8 7l5 3-5 3V7z" })
3190
3215
  ]
3191
3216
  }
3192
- ), un = ({
3217
+ ), fn = ({
3193
3218
  title: t,
3194
3219
  description: e,
3195
3220
  url: r,
3196
3221
  youtubeId: i,
3197
3222
  vimeoId: a,
3198
- provider: m,
3223
+ provider: c,
3199
3224
  videoId: s,
3200
3225
  autoplay: l = !1,
3201
- muted: $ = !1,
3202
- loop: L = !1,
3203
- startTime: k,
3204
- controls: E = !0,
3205
- thumbnailUrl: P,
3206
- onPlay: c,
3207
- onError: _,
3226
+ muted: I = !1,
3227
+ loop: _ = !1,
3228
+ startTime: L,
3229
+ controls: A = !0,
3230
+ thumbnailUrl: S,
3231
+ onPlay: d,
3232
+ onError: C,
3208
3233
  onReady: o,
3209
- className: d = "",
3210
- overlayIcon: u,
3211
- aspectRatio: g = "16:9",
3212
- width: S,
3234
+ className: u = "",
3235
+ overlayIcon: m,
3236
+ aspectRatio: y = "16:9",
3237
+ width: N,
3213
3238
  height: O,
3214
- maxHeight: C,
3215
- responsive: b = !1,
3216
- hideHeader: M = !1,
3217
- allowAdultContent: A = !1,
3218
- fallback: U
3239
+ maxHeight: k,
3240
+ responsive: $ = !1,
3241
+ hideHeader: D = !1,
3242
+ allowAdultContent: P = !1,
3243
+ fallback: M
3219
3244
  }) => {
3220
- const [R, F] = te(!1), [f, N] = te(null), x = ne(null), w = oe(() => {
3221
- if (m && s) {
3222
- const q = Oe[m];
3245
+ const [R, j] = X(!1), [p, h] = X(null), w = Q(null), x = se(() => {
3246
+ if (c && s) {
3247
+ const q = ze[c];
3223
3248
  if (q)
3224
3249
  return { provider: q, videoId: s, method: "explicit" };
3225
3250
  }
@@ -3229,106 +3254,106 @@ const jr = () => /* @__PURE__ */ y(
3229
3254
  return { ...q, method: "url" };
3230
3255
  }
3231
3256
  if (i) {
3232
- const q = Oe.youtube;
3257
+ const q = ze.youtube;
3233
3258
  if (q)
3234
3259
  return { provider: q, videoId: i, method: "legacy" };
3235
3260
  }
3236
3261
  if (a) {
3237
- const q = Oe.vimeo;
3262
+ const q = ze.vimeo;
3238
3263
  if (q)
3239
3264
  return { provider: q, videoId: a, method: "legacy" };
3240
3265
  }
3241
3266
  return null;
3242
- }, [r, m, s, i, a]), se = oe(() => w ? w.provider.tier === "adult" : !1, [w]), J = oe(
3267
+ }, [r, c, s, i, a]), ae = se(() => x ? x.provider.tier === "adult" : !1, [x]), J = se(
3243
3268
  () => ({
3244
3269
  // When user clicks to play, enable autoplay automatically
3245
3270
  autoplay: R ? !0 : l,
3246
- muted: $,
3247
- loop: L,
3248
- startTime: k,
3249
- controls: E
3271
+ muted: I,
3272
+ loop: _,
3273
+ startTime: L,
3274
+ controls: A
3250
3275
  }),
3251
- [l, $, L, k, E, R]
3252
- ), ie = oe(() => {
3253
- if (!w) return "";
3276
+ [l, I, _, L, A, R]
3277
+ ), oe = se(() => {
3278
+ if (!x) return "";
3254
3279
  try {
3255
- return w.provider.getEmbedUrl(w.videoId, J);
3280
+ return x.provider.getEmbedUrl(x.videoId, J);
3256
3281
  } catch (q) {
3257
3282
  return console.error("Error generating embed URL:", q), "";
3258
3283
  }
3259
- }, [w, J]), ee = oe(() => {
3260
- if (P) return P;
3261
- if (w?.provider.name === "youtube")
3262
- return `https://img.youtube.com/vi/${w.videoId}/maxresdefault.jpg`;
3263
- }, [P, w]), ce = B(() => {
3264
- w && (F(!0), c && c(w.videoId, w.provider.name), o && o(w.videoId, w.provider.name));
3265
- }, [w, c, o]), le = B(
3284
+ }, [x, J]), re = se(() => {
3285
+ if (S) return S;
3286
+ if (x?.provider.name === "youtube")
3287
+ return `https://img.youtube.com/vi/${x.videoId}/maxresdefault.jpg`;
3288
+ }, [S, x]), ce = B(() => {
3289
+ x && (j(!0), d && d(x.videoId, x.provider.name), o && o(x.videoId, x.provider.name));
3290
+ }, [x, d, o]), le = B(
3266
3291
  (q) => {
3267
- N(q), _ && w && _(new Error(q), w.provider.name);
3292
+ h(q), C && x && C(new Error(q), x.provider.name);
3268
3293
  },
3269
- [_, w]
3294
+ [C, x]
3270
3295
  );
3271
- if (!w)
3272
- return U ? /* @__PURE__ */ n(ye, { children: U }) : (console.warn("UIForgeVideo: No valid video source provided"), null);
3273
- if (se && !A) {
3296
+ if (!x)
3297
+ return M ? /* @__PURE__ */ n(ye, { children: M }) : (console.warn("UIForgeVideo: No valid video source provided"), null);
3298
+ if (ae && !P) {
3274
3299
  const q = "Adult content must be explicitly enabled with allowAdultContent prop";
3275
- return U ? /* @__PURE__ */ n(ye, { children: U }) : (console.warn(`UIForgeVideo: ${q}`), /* @__PURE__ */ n("div", { className: "uiforge-video", children: /* @__PURE__ */ n("div", { className: "uiforge-video__error", children: /* @__PURE__ */ n("p", { children: q }) }) }));
3300
+ return M ? /* @__PURE__ */ n(ye, { children: M }) : (console.warn(`UIForgeVideo: ${q}`), /* @__PURE__ */ n("div", { className: "uiforge-video", children: /* @__PURE__ */ n("div", { className: "uiforge-video__error", children: /* @__PURE__ */ n("p", { children: q }) }) }));
3276
3301
  }
3277
- if (f)
3278
- return U ? /* @__PURE__ */ n(ye, { children: U }) : /* @__PURE__ */ n("div", { className: "uiforge-video", children: /* @__PURE__ */ n("div", { className: "uiforge-video__error", children: /* @__PURE__ */ n("p", { children: f }) }) });
3279
- const j = "uiforge-video", he = b ? `${j}--responsive` : "", G = `${j} ${he} ${d}`.trim(), re = {
3280
- aspectRatio: g !== "auto" ? g.replace(":", "/") : void 0,
3281
- width: S ? typeof S == "number" ? `${S}px` : S : void 0,
3302
+ if (p)
3303
+ return M ? /* @__PURE__ */ n(ye, { children: M }) : /* @__PURE__ */ n("div", { className: "uiforge-video", children: /* @__PURE__ */ n("div", { className: "uiforge-video__error", children: /* @__PURE__ */ n("p", { children: p }) }) });
3304
+ const H = "uiforge-video", he = $ ? `${H}--responsive` : "", G = `${H} ${he} ${u}`.trim(), ne = {
3305
+ aspectRatio: y !== "auto" ? y.replace(":", "/") : void 0,
3306
+ width: N ? typeof N == "number" ? `${N}px` : N : void 0,
3282
3307
  height: O ? typeof O == "number" ? `${O}px` : O : void 0,
3283
- maxHeight: C ? typeof C == "number" ? `${C}px` : C : void 0
3284
- }, me = t || `${w.provider.displayName} Video`;
3285
- return /* @__PURE__ */ y("div", { className: G, children: [
3286
- !M && (t || e) && /* @__PURE__ */ y("div", { className: `${j}__header`, children: [
3287
- t && /* @__PURE__ */ n("h3", { className: `${j}__title`, children: t }),
3288
- e && /* @__PURE__ */ n("p", { className: `${j}__description`, children: e })
3308
+ maxHeight: k ? typeof k == "number" ? `${k}px` : k : void 0
3309
+ }, me = t || `${x.provider.displayName} Video`;
3310
+ return /* @__PURE__ */ b("div", { className: G, children: [
3311
+ !D && (t || e) && /* @__PURE__ */ b("div", { className: `${H}__header`, children: [
3312
+ t && /* @__PURE__ */ n("h3", { className: `${H}__title`, children: t }),
3313
+ e && /* @__PURE__ */ n("p", { className: `${H}__description`, children: e })
3289
3314
  ] }),
3290
- /* @__PURE__ */ n("div", { className: `${j}__player-container`, style: re, children: R ? /* @__PURE__ */ n(
3315
+ /* @__PURE__ */ n("div", { className: `${H}__player-container`, style: ne, children: R ? /* @__PURE__ */ n(
3291
3316
  "iframe",
3292
3317
  {
3293
- ref: x,
3294
- src: ie,
3318
+ ref: w,
3319
+ src: oe,
3295
3320
  title: me,
3296
- className: `${j}__iframe`,
3321
+ className: `${H}__iframe`,
3297
3322
  allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",
3298
3323
  allowFullScreen: !0,
3299
3324
  onError: () => le("Failed to load video")
3300
3325
  }
3301
- ) : /* @__PURE__ */ y(ye, { children: [
3302
- ee && /* @__PURE__ */ n("img", { src: ee, alt: me, className: `${j}__thumbnail` }),
3326
+ ) : /* @__PURE__ */ b(ye, { children: [
3327
+ re && /* @__PURE__ */ n("img", { src: re, alt: me, className: `${H}__thumbnail` }),
3303
3328
  /* @__PURE__ */ n(
3304
3329
  "button",
3305
3330
  {
3306
- className: `${j}__overlay`,
3331
+ className: `${H}__overlay`,
3307
3332
  onClick: ce,
3308
3333
  "aria-label": `Play video: ${me}`,
3309
3334
  type: "button",
3310
- children: u || /* @__PURE__ */ n(jr, {})
3335
+ children: m || /* @__PURE__ */ n(Hr, {})
3311
3336
  }
3312
3337
  )
3313
3338
  ] }) })
3314
3339
  ] });
3315
- }, hn = ({
3340
+ }, pn = ({
3316
3341
  title: t,
3317
3342
  icon: e,
3318
3343
  className: r = "",
3319
3344
  onClick: i
3320
3345
  }) => {
3321
- const a = "uiforge-video-preview", m = `${a} ${r}`.trim();
3322
- return /* @__PURE__ */ y(i ? "button" : "div", { className: m, ...i ? {
3346
+ const a = "uiforge-video-preview", c = `${a} ${r}`.trim();
3347
+ return /* @__PURE__ */ b(i ? "button" : "div", { className: c, ...i ? {
3323
3348
  type: "button",
3324
3349
  onClick: () => {
3325
3350
  i && i();
3326
3351
  },
3327
- onKeyDown: (k) => {
3328
- i && (k.key === "Enter" || k.key === " ") && (k.preventDefault(), i());
3352
+ onKeyDown: (L) => {
3353
+ i && (L.key === "Enter" || L.key === " ") && (L.preventDefault(), i());
3329
3354
  }
3330
3355
  } : {}, children: [
3331
- /* @__PURE__ */ n("div", { className: `${a}__icon-container`, children: e || /* @__PURE__ */ n(Hr, {}) }),
3356
+ /* @__PURE__ */ n("div", { className: `${a}__icon-container`, children: e || /* @__PURE__ */ n(Wr, {}) }),
3332
3357
  /* @__PURE__ */ n("span", { className: `${a}__title`, children: t })
3333
3358
  ] });
3334
3359
  }, Ke = (t) => {
@@ -3341,66 +3366,66 @@ const jr = () => /* @__PURE__ */ y(
3341
3366
  '[tabindex]:not([tabindex="-1"])'
3342
3367
  ].join(", ");
3343
3368
  return Array.from(t.querySelectorAll(e));
3344
- }, mn = ({
3369
+ }, vn = ({
3345
3370
  id: t,
3346
3371
  variant: e = "static",
3347
3372
  open: r = !0,
3348
3373
  onOpenChange: i,
3349
3374
  children: a,
3350
- className: m = "",
3375
+ className: c = "",
3351
3376
  ariaLabel: s = "Sidebar navigation",
3352
3377
  width: l = "280px",
3353
- height: $ = "200px",
3354
- position: L = "left",
3355
- showBackdrop: k = !0,
3356
- closeOnBackdropClick: E = !0,
3357
- closeOnEscape: P = !0,
3358
- trapFocus: c = !0
3378
+ height: I = "200px",
3379
+ position: _ = "left",
3380
+ showBackdrop: L = !0,
3381
+ closeOnBackdropClick: A = !0,
3382
+ closeOnEscape: S = !0,
3383
+ trapFocus: d = !0
3359
3384
  }) => {
3360
- const _ = ne(null), o = ne(null), d = e === "drawer" || e === "bottom", u = B(() => {
3361
- E && i && i(!1);
3362
- }, [E, i]);
3363
- ae(() => {
3364
- if (!d || !r || !P) return;
3365
- const M = (A) => {
3366
- A.key === "Escape" && (A.preventDefault(), i?.(!1));
3385
+ const C = Q(null), o = Q(null), u = e === "drawer" || e === "bottom", m = B(() => {
3386
+ A && i && i(!1);
3387
+ }, [A, i]);
3388
+ ie(() => {
3389
+ if (!u || !r || !S) return;
3390
+ const D = (P) => {
3391
+ P.key === "Escape" && (P.preventDefault(), i?.(!1));
3367
3392
  };
3368
- return document.addEventListener("keydown", M), () => document.removeEventListener("keydown", M);
3369
- }, [d, r, P, i]), ae(() => {
3370
- if (!d || !r || !c) return;
3371
- const M = _.current;
3372
- if (!M) return;
3393
+ return document.addEventListener("keydown", D), () => document.removeEventListener("keydown", D);
3394
+ }, [u, r, S, i]), ie(() => {
3395
+ if (!u || !r || !d) return;
3396
+ const D = C.current;
3397
+ if (!D) return;
3373
3398
  o.current = document.activeElement;
3374
- const A = Ke(M);
3375
- A.length > 0 ? A[0].focus() : M.focus();
3376
- const U = (R) => {
3399
+ const P = Ke(D);
3400
+ P.length > 0 ? P[0].focus() : D.focus();
3401
+ const M = (R) => {
3377
3402
  if (R.key !== "Tab") return;
3378
- const F = Ke(M);
3379
- if (F.length === 0) return;
3380
- const f = F[0], N = F[F.length - 1];
3381
- R.shiftKey ? document.activeElement === f && (R.preventDefault(), N.focus()) : document.activeElement === N && (R.preventDefault(), f.focus());
3403
+ const j = Ke(D);
3404
+ if (j.length === 0) return;
3405
+ const p = j[0], h = j[j.length - 1];
3406
+ R.shiftKey ? document.activeElement === p && (R.preventDefault(), h.focus()) : document.activeElement === h && (R.preventDefault(), p.focus());
3382
3407
  };
3383
- return document.addEventListener("keydown", U), () => {
3384
- document.removeEventListener("keydown", U), o.current && typeof o.current.focus == "function" && o.current.focus();
3408
+ return document.addEventListener("keydown", M), () => {
3409
+ document.removeEventListener("keydown", M), o.current && typeof o.current.focus == "function" && o.current.focus();
3385
3410
  };
3386
- }, [d, r, c]), ae(() => {
3387
- if (!d || !r) return;
3388
- const M = document.body.style.overflow;
3411
+ }, [u, r, d]), ie(() => {
3412
+ if (!u || !r) return;
3413
+ const D = document.body.style.overflow;
3389
3414
  return document.body.style.overflow = "hidden", () => {
3390
- document.body.style.overflow = M;
3415
+ document.body.style.overflow = D;
3391
3416
  };
3392
- }, [d, r]);
3393
- const g = "uiforge-sidebar", S = [
3394
- g,
3395
- `${g}--${e}`,
3396
- `${g}--${L}`,
3397
- d && r && `${g}--open`,
3398
- d && !r && `${g}--closed`,
3399
- m
3417
+ }, [u, r]);
3418
+ const y = "uiforge-sidebar", N = [
3419
+ y,
3420
+ `${y}--${e}`,
3421
+ `${y}--${_}`,
3422
+ u && r && `${y}--open`,
3423
+ u && !r && `${y}--closed`,
3424
+ c
3400
3425
  ].filter(Boolean).join(" "), O = {
3401
3426
  "--sidebar-width": l,
3402
- "--sidebar-height": $
3403
- }, b = e === "static" ? {
3427
+ "--sidebar-height": I
3428
+ }, $ = e === "static" ? {
3404
3429
  role: "navigation",
3405
3430
  "aria-label": s
3406
3431
  } : {
@@ -3414,18 +3439,18 @@ const jr = () => /* @__PURE__ */ y(
3414
3439
  "aside",
3415
3440
  {
3416
3441
  id: t,
3417
- ref: _,
3418
- className: S,
3442
+ ref: C,
3443
+ className: N,
3419
3444
  style: O,
3420
- ...b,
3421
- children: /* @__PURE__ */ n("div", { className: `${g}__content`, children: a })
3445
+ ...$,
3446
+ children: /* @__PURE__ */ n("div", { className: `${y}__content`, children: a })
3422
3447
  }
3423
- ) : /* @__PURE__ */ y(ye, { children: [
3424
- k && /* @__PURE__ */ n(
3448
+ ) : /* @__PURE__ */ b(ye, { children: [
3449
+ L && /* @__PURE__ */ n(
3425
3450
  "div",
3426
3451
  {
3427
- className: `${g}__backdrop ${r ? `${g}__backdrop--visible` : ""}`,
3428
- onClick: u,
3452
+ className: `${y}__backdrop ${r ? `${y}__backdrop--visible` : ""}`,
3453
+ onClick: m,
3429
3454
  "aria-hidden": "true"
3430
3455
  }
3431
3456
  ),
@@ -3433,132 +3458,307 @@ const jr = () => /* @__PURE__ */ y(
3433
3458
  "aside",
3434
3459
  {
3435
3460
  id: t,
3436
- ref: _,
3437
- className: S,
3461
+ ref: C,
3462
+ className: N,
3438
3463
  style: O,
3439
3464
  tabIndex: -1,
3440
- ...b,
3441
- children: /* @__PURE__ */ n("div", { className: `${g}__content`, children: a })
3465
+ ...$,
3466
+ children: /* @__PURE__ */ n("div", { className: `${y}__content`, children: a })
3442
3467
  }
3443
3468
  )
3444
3469
  ] });
3470
+ }, Fr = ({
3471
+ children: t,
3472
+ disableTop: e = !1,
3473
+ disableBottom: r = !1,
3474
+ disableLeft: i = !1,
3475
+ disableRight: a = !1,
3476
+ className: c = "",
3477
+ ...s
3478
+ }) => {
3479
+ const l = "uiforge-safe-area-container", I = [
3480
+ l,
3481
+ e && `${l}--disable-top`,
3482
+ a && `${l}--disable-right`,
3483
+ r && `${l}--disable-bottom`,
3484
+ i && `${l}--disable-left`,
3485
+ c
3486
+ ].filter(Boolean).join(" ");
3487
+ return /* @__PURE__ */ n("div", { className: I, ...s, children: t });
3488
+ }, gn = ({
3489
+ left: t,
3490
+ title: e,
3491
+ right: r,
3492
+ hideOnDesktop: i = !1,
3493
+ className: a = "",
3494
+ ...c
3495
+ }) => {
3496
+ const s = "uiforge-mobile-header-layout", l = [s, i && `${s}--hide-on-desktop`, a].filter(Boolean).join(" "), I = typeof e == "string";
3497
+ return /* @__PURE__ */ n(Fr, { disableBottom: !0, disableLeft: !0, disableRight: !0, children: /* @__PURE__ */ b("header", { className: l, ...c, children: [
3498
+ /* @__PURE__ */ n("div", { className: `${s}__left`, children: t }),
3499
+ /* @__PURE__ */ n("div", { className: `${s}__center`, children: I ? /* @__PURE__ */ n("span", { className: `${s}__title`, children: e }) : e }),
3500
+ /* @__PURE__ */ n("div", { className: `${s}__right`, children: r })
3501
+ ] }) });
3502
+ }, yn = ({
3503
+ items: t,
3504
+ onSelect: e,
3505
+ ariaLabel: r = "More actions",
3506
+ trigger: i,
3507
+ align: a = "right",
3508
+ disabled: c = !1,
3509
+ size: s = "medium",
3510
+ className: l = "",
3511
+ "data-testid": I
3512
+ }) => {
3513
+ const [_, L] = X(!1), [A, S] = X(-1), d = Q(null), C = Q(null), o = Q(null), u = Q(null), y = `overflow-menu-${tt()}`, N = t.filter((h) => !h.disabled), O = B(() => {
3514
+ c || (L(!0), S(0));
3515
+ }, [c]), k = B(() => {
3516
+ L(!1), S(-1), i ? o.current?.focus() : C.current?.focus();
3517
+ }, [i]), $ = B(
3518
+ (h) => {
3519
+ h.disabled || (h.onClick ? h.onClick() : e && e(h), k());
3520
+ },
3521
+ [e, k]
3522
+ );
3523
+ ie(() => {
3524
+ if (!_) return;
3525
+ const h = (w) => {
3526
+ d.current && !d.current.contains(w.target) && k();
3527
+ };
3528
+ return document.addEventListener("mousedown", h), () => document.removeEventListener("mousedown", h);
3529
+ }, [_, k]);
3530
+ const D = B(
3531
+ (h) => {
3532
+ if (!c)
3533
+ switch (h.key) {
3534
+ case "Enter":
3535
+ case " ":
3536
+ if (h.preventDefault(), !_)
3537
+ O();
3538
+ else if (A >= 0) {
3539
+ const w = N[A];
3540
+ w && $(w);
3541
+ }
3542
+ break;
3543
+ case "ArrowDown":
3544
+ h.preventDefault(), _ ? S((w) => w < N.length - 1 ? w + 1 : 0) : O();
3545
+ break;
3546
+ case "ArrowUp":
3547
+ h.preventDefault(), _ && S((w) => w > 0 ? w - 1 : N.length - 1);
3548
+ break;
3549
+ case "Escape":
3550
+ h.preventDefault(), _ && k();
3551
+ break;
3552
+ case "Tab":
3553
+ _ && k();
3554
+ break;
3555
+ case "Home":
3556
+ _ && (h.preventDefault(), S(0));
3557
+ break;
3558
+ case "End":
3559
+ _ && (h.preventDefault(), S(N.length - 1));
3560
+ break;
3561
+ }
3562
+ },
3563
+ [c, _, A, N, O, k, $]
3564
+ );
3565
+ ie(() => {
3566
+ if (_ && u.current && A >= 0) {
3567
+ const h = u.current.querySelector(`[data-index="${A}"]`);
3568
+ h && typeof h.scrollIntoView == "function" && h.scrollIntoView({ block: "nearest" });
3569
+ }
3570
+ }, [A, _]);
3571
+ const P = () => {
3572
+ c || (_ ? k() : O());
3573
+ }, M = "uiforge-overflow-menu", R = [M, c && `${M}--disabled`, l].filter(Boolean).join(" "), j = [`${M}__menu`, `${M}__menu--${a}`].filter(Boolean).join(" "), p = (h) => N.findIndex((w) => w.id === h.id);
3574
+ return /* @__PURE__ */ b(
3575
+ "div",
3576
+ {
3577
+ ref: d,
3578
+ className: R,
3579
+ onKeyDown: D,
3580
+ "data-testid": I,
3581
+ children: [
3582
+ i ? /* @__PURE__ */ n(
3583
+ "div",
3584
+ {
3585
+ onClick: P,
3586
+ role: "button",
3587
+ tabIndex: c ? -1 : 0,
3588
+ "aria-haspopup": "menu",
3589
+ "aria-expanded": _,
3590
+ "aria-controls": _ ? y : void 0,
3591
+ "aria-label": r,
3592
+ "aria-disabled": c,
3593
+ ref: o,
3594
+ className: `${M}__custom-trigger`,
3595
+ children: i
3596
+ }
3597
+ ) : /* @__PURE__ */ n(
3598
+ "button",
3599
+ {
3600
+ ref: C,
3601
+ type: "button",
3602
+ className: `${M}__trigger ${M}__trigger--${s}`,
3603
+ onClick: P,
3604
+ "aria-haspopup": "menu",
3605
+ "aria-expanded": _,
3606
+ "aria-controls": _ ? y : void 0,
3607
+ "aria-label": r,
3608
+ disabled: c,
3609
+ children: /* @__PURE__ */ n("span", { className: `${M}__trigger-icon`, "aria-hidden": "true", children: "•••" })
3610
+ }
3611
+ ),
3612
+ _ && /* @__PURE__ */ n("div", { ref: u, id: y, className: j, role: "menu", "aria-label": r, children: t.map((h) => {
3613
+ const w = p(h), x = !h.disabled && w === A, ae = [
3614
+ `${M}__item`,
3615
+ h.disabled && `${M}__item--disabled`,
3616
+ x && `${M}__item--highlighted`
3617
+ ].filter(Boolean).join(" ");
3618
+ return /* @__PURE__ */ b(
3619
+ "div",
3620
+ {
3621
+ className: ae,
3622
+ role: "menuitem",
3623
+ tabIndex: -1,
3624
+ "aria-disabled": h.disabled,
3625
+ "data-index": h.disabled ? void 0 : w,
3626
+ onClick: () => $(h),
3627
+ onMouseEnter: () => {
3628
+ h.disabled || S(w);
3629
+ },
3630
+ children: [
3631
+ h.icon && /* @__PURE__ */ n("span", { className: `${M}__item-icon`, "aria-hidden": "true", children: h.icon }),
3632
+ /* @__PURE__ */ n("span", { className: `${M}__item-label`, children: h.label })
3633
+ ]
3634
+ },
3635
+ h.id
3636
+ );
3637
+ }) })
3638
+ ]
3639
+ }
3640
+ );
3445
3641
  };
3446
- function pn(t, e) {
3447
- const { sampleCount: r = 3, min: i = 3, max: a = 15, approxItemHeight: m = 120 } = e ?? {}, [s, l] = te(i), $ = ne(i), L = B(() => {
3448
- const k = t?.current;
3449
- if (!k)
3642
+ function bn(t, e) {
3643
+ const { sampleCount: r = 3, min: i = 3, max: a = 15, approxItemHeight: c = 120 } = e ?? {}, [s, l] = X(i), I = Q(i), _ = B(() => {
3644
+ const L = t?.current;
3645
+ if (!L)
3450
3646
  return i;
3451
- const E = k.clientHeight;
3452
- if (E === 0)
3647
+ const A = L.clientHeight;
3648
+ if (A === 0)
3453
3649
  return i;
3454
- const P = Array.from(k.children).filter((d) => d instanceof HTMLElement && d.offsetHeight > 0);
3455
- let c = m;
3456
- if (P.length > 0) {
3457
- const d = Math.min(r, P.length);
3458
- let u = 0;
3459
- for (let g = 0; g < d; g++)
3460
- u += P[g].offsetHeight;
3461
- c = u / d;
3462
- }
3463
- const _ = Math.floor(E / c);
3464
- return Math.max(i, Math.min(a, _));
3465
- }, [t, r, i, a, m]);
3466
- return ae(() => {
3467
- const k = t?.current;
3468
- if (!k)
3650
+ const S = Array.from(L.children).filter((u) => u instanceof HTMLElement && u.offsetHeight > 0);
3651
+ let d = c;
3652
+ if (S.length > 0) {
3653
+ const u = Math.min(r, S.length);
3654
+ let m = 0;
3655
+ for (let y = 0; y < u; y++)
3656
+ m += S[y].offsetHeight;
3657
+ d = m / u;
3658
+ }
3659
+ const C = Math.floor(A / d);
3660
+ return Math.max(i, Math.min(a, C));
3661
+ }, [t, r, i, a, c]);
3662
+ return ie(() => {
3663
+ const L = t?.current;
3664
+ if (!L)
3469
3665
  return;
3470
- const E = () => {
3471
- const _ = L();
3472
- _ !== $.current && ($.current = _, l(_));
3666
+ const A = () => {
3667
+ const C = _();
3668
+ C !== I.current && (I.current = C, l(C));
3473
3669
  };
3474
- E();
3475
- let P;
3476
- typeof ResizeObserver < "u" && (P = new ResizeObserver(() => {
3477
- E();
3478
- }), P.observe(k));
3479
- let c;
3480
- return typeof MutationObserver < "u" && (c = new MutationObserver(() => {
3481
- E();
3482
- }), c.observe(k, {
3670
+ A();
3671
+ let S;
3672
+ typeof ResizeObserver < "u" && (S = new ResizeObserver(() => {
3673
+ A();
3674
+ }), S.observe(L));
3675
+ let d;
3676
+ return typeof MutationObserver < "u" && (d = new MutationObserver(() => {
3677
+ A();
3678
+ }), d.observe(L, {
3483
3679
  childList: !0,
3484
3680
  subtree: !1
3485
3681
  })), () => {
3486
- P?.disconnect(), c?.disconnect();
3682
+ S?.disconnect(), d?.disconnect();
3487
3683
  };
3488
- }, [t, L]), s;
3684
+ }, [t, _]), s;
3489
3685
  }
3490
3686
  export {
3491
3687
  Ce as ActivityIcons,
3492
- ar as ActivityItemProvider,
3493
- Wt as AlienIcon,
3494
- Jt as BriefcaseIcon,
3688
+ or as ActivityItemProvider,
3689
+ Ft as AlienIcon,
3690
+ Qt as BriefcaseIcon,
3495
3691
  Tt as BugIcon,
3496
- nr as BuildIcon,
3497
- an as BusinessIcons,
3498
- qr as Button,
3499
- Yt as CalendarIcon,
3500
- Kt as ChartIcon,
3501
- Nt as CheckIcon,
3692
+ ir as BuildIcon,
3693
+ ln as BusinessIcons,
3694
+ Zr as Button,
3695
+ Jt as CalendarIcon,
3696
+ Zt as ChartIcon,
3697
+ Mt as CheckIcon,
3502
3698
  St as CloseIcon,
3503
- Vt as CloudIcon,
3504
- Bt as CodeIcon,
3505
- bt as CommentIcon,
3506
- vt as CommitIcon,
3507
- Ut as DatabaseIcon,
3508
- It as DeployIcon,
3509
- tr as DeploymentIcon,
3510
- on as DevProcessIcons,
3511
- Gt as DocumentIcon,
3512
- Pt as DumbbellIcon,
3513
- tn as FitnessIcons,
3514
- kt as FoldIcon,
3515
- _t as ForkIcon,
3516
- Qt as GitBranchIcon,
3517
- Kr as HamburgerButton,
3518
- Dt as HeartRateIcon,
3519
- yt as IssueIcon,
3520
- Mt as MeditationIcon,
3521
- Zt as MeetingIcon,
3522
- xt as MergeIcon,
3523
- Ft as PlanetIcon,
3524
- Xt as PullRequestDraftIcon,
3525
- gt as PullRequestIcon,
3526
- $t as ReleaseIcon,
3527
- rr as ReviewIcon,
3528
- jt as RocketIcon,
3529
- Et as RunningIcon,
3530
- Ht as SatelliteIcon,
3531
- Ot as ServerIcon,
3532
- nn as SpaceIcons,
3533
- wt as StarIcon,
3699
+ Rt as CloudIcon,
3700
+ jt as CodeIcon,
3701
+ wt as CommentIcon,
3702
+ gt as CommitIcon,
3703
+ Vt as DatabaseIcon,
3704
+ Ct as DeployIcon,
3705
+ rr as DeploymentIcon,
3706
+ cn as DevProcessIcons,
3707
+ Yt as DocumentIcon,
3708
+ Dt as DumbbellIcon,
3709
+ an as FitnessIcons,
3710
+ Nt as FoldIcon,
3711
+ $t as ForkIcon,
3712
+ Xt as GitBranchIcon,
3713
+ Gr as HamburgerButton,
3714
+ Ot as HeartRateIcon,
3715
+ Yr as IconButton,
3716
+ bt as IssueIcon,
3717
+ At as MeditationIcon,
3718
+ Gt as MeetingIcon,
3719
+ It as MergeIcon,
3720
+ gn as MobileHeaderLayout,
3721
+ yn as OverflowMenu,
3722
+ qt as PlanetIcon,
3723
+ er as PullRequestDraftIcon,
3724
+ yt as PullRequestIcon,
3725
+ xt as ReleaseIcon,
3726
+ nr as ReviewIcon,
3727
+ Ht as RocketIcon,
3728
+ Pt as RunningIcon,
3729
+ Fr as SafeAreaContainer,
3730
+ Wt as SatelliteIcon,
3731
+ Ut as ServerIcon,
3732
+ sn as SpaceIcons,
3733
+ _t as StarIcon,
3534
3734
  zt as StrengthIcon,
3535
3735
  Lt as TaiChiIcon,
3536
- rn as TechIcons,
3537
- qt as TelescopeIcon,
3538
- Rt as TerminalIcon,
3539
- er as TestingIcon,
3540
- sn as UIForgeActivityItem,
3541
- ln as UIForgeActivityStream,
3542
- Gr as UIForgeBlocksEditor,
3543
- Xr as UIForgeComboBox,
3544
- Zr as UIForgeGrid,
3545
- mn as UIForgeSidebar,
3546
- un as UIForgeVideo,
3547
- hn as UIForgeVideoPreview,
3736
+ on as TechIcons,
3737
+ Kt as TelescopeIcon,
3738
+ Bt as TerminalIcon,
3739
+ tr as TestingIcon,
3740
+ dn as UIForgeActivityItem,
3741
+ un as UIForgeActivityStream,
3742
+ Qr as UIForgeBlocksEditor,
3743
+ rn as UIForgeComboBox,
3744
+ Jr as UIForgeGrid,
3745
+ vn as UIForgeSidebar,
3746
+ fn as UIForgeVideo,
3747
+ pn as UIForgeVideoPreview,
3548
3748
  ke as UIIcons,
3549
- Ct as UnfoldIcon,
3550
- en as WellnessIcons,
3551
- At as YogaIcon,
3552
- Yr as blocksToHTML,
3553
- Qr as blocksToJSON,
3554
- Jr as blocksToMarkdown,
3749
+ kt as UnfoldIcon,
3750
+ nn as WellnessIcons,
3751
+ Et as YogaIcon,
3752
+ Xr as blocksToHTML,
3753
+ tn as blocksToJSON,
3754
+ en as blocksToMarkdown,
3555
3755
  Ye as detectProvider,
3556
3756
  Je as extractVideoId,
3557
- cn as getEmbedUrlFromVideoUrl,
3558
- dn as isAdultContent,
3559
- Oe as providersByName,
3560
- or as useActivityItemContext,
3561
- pn as useDynamicPageCount,
3562
- ir as useResponsive,
3757
+ hn as getEmbedUrlFromVideoUrl,
3758
+ mn as isAdultContent,
3759
+ ze as providersByName,
3760
+ sr as useActivityItemContext,
3761
+ bn as useDynamicPageCount,
3762
+ ar as useResponsive,
3563
3763
  Ge as videoProviders
3564
3764
  };