@appforgeapps/uiforge 0.1.0 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/uiforge.js CHANGED
@@ -1,663 +1,663 @@
1
- import { jsx as e, jsxs as d, Fragment as _e } from "react/jsx-runtime";
2
- import { useState as j, useMemo as te, useCallback as L, useRef as G, useEffect as ne } from "react";
3
- const It = ({
4
- variant: t = "primary",
5
- size: n = "medium",
1
+ import { jsx as n, jsxs as u, Fragment as me } from "react/jsx-runtime";
2
+ import { useState as F, useMemo as te, useCallback as N, useRef as ee, useEffect as se } from "react";
3
+ const cr = ({
4
+ variant: e = "primary",
5
+ size: t = "medium",
6
6
  children: r,
7
- className: i = "",
8
- ...h
7
+ className: a = "",
8
+ ...o
9
9
  }) => {
10
- const p = "uiforge-button", u = `${p}--${t}`, f = `${p}--${n}`, k = `${p} ${u} ${f} ${i}`.trim();
11
- return /* @__PURE__ */ e("button", { className: k, ...h, children: r });
12
- }, Bt = ({
13
- columns: t,
14
- data: n,
10
+ const p = "uiforge-button", f = `${p}--${e}`, v = `${p}--${t}`, $ = `${p} ${f} ${v} ${a}`.trim();
11
+ return /* @__PURE__ */ n("button", { className: $, ...o, children: r });
12
+ }, dr = ({
13
+ columns: e,
14
+ data: t,
15
15
  selectable: r = !1,
16
- selectedRows: i,
17
- getRowKey: h = (ie, X) => X,
16
+ selectedRows: a,
17
+ getRowKey: o = (Q, K) => K,
18
18
  onSelectionChange: p,
19
- onCellEdit: u,
20
- actionButtons: f = [],
21
- searchable: k = !1,
22
- searchPlaceholder: Z = "Search...",
23
- onSearch: H,
24
- customFilter: F,
25
- pagination: s,
26
- onPageChange: S,
27
- onPageSizeChange: D,
28
- pageSizeOptions: q = [10, 25, 50, 100],
29
- className: A = "",
30
- loading: C = !1,
31
- emptyMessage: z = "No data available"
19
+ onCellEdit: f,
20
+ actionButtons: v = [],
21
+ searchable: $ = !1,
22
+ searchPlaceholder: G = "Search...",
23
+ onSearch: P,
24
+ customFilter: q,
25
+ pagination: h,
26
+ onPageChange: j,
27
+ onPageSizeChange: A,
28
+ pageSizeOptions: Z = [10, 25, 50, 100],
29
+ className: O = "",
30
+ loading: S = !1,
31
+ emptyMessage: R = "No data available"
32
32
  }) => {
33
- const [ie, X] = j(/* @__PURE__ */ new Set()), [$, J] = j(""), [I, O] = j(null), [P, a] = j(""), v = i ?? ie, g = te(() => !k || !$ ? n : n.filter((l) => F ? F(l, $) : Object.values(l).some((x) => x == null ? !1 : String(x).toLowerCase().includes($.toLowerCase()))), [n, $, k, F]), y = te(() => {
34
- if (!s || s.serverSide)
35
- return g;
36
- const l = s.currentPage * s.pageSize, x = l + s.pageSize;
37
- return g.slice(l, x);
38
- }, [g, s]), K = te(() => s ? s.serverSide && s.totalItems !== void 0 ? Math.ceil(s.totalItems / s.pageSize) : Math.ceil(g.length / s.pageSize) : 1, [s, g.length]), T = L(() => n.filter((l, x) => {
39
- const w = h(l, x);
40
- return v.has(w);
41
- }), [n, v, h]), le = L(
42
- (l) => {
33
+ const [Q, K] = F(/* @__PURE__ */ new Set()), [k, V] = F(""), [C, H] = F(null), [D, l] = F(""), y = a ?? Q, c = te(() => !$ || !k ? t : t.filter((i) => q ? q(i, k) : Object.values(i).some((x) => x == null ? !1 : String(x).toLowerCase().includes(k.toLowerCase()))), [t, k, $, q]), b = te(() => {
34
+ if (!h || h.serverSide)
35
+ return c;
36
+ const i = h.currentPage * h.pageSize, x = i + h.pageSize;
37
+ return c.slice(i, x);
38
+ }, [c, h]), z = te(() => h ? h.serverSide && h.totalItems !== void 0 ? Math.ceil(h.totalItems / h.pageSize) : Math.ceil(c.length / h.pageSize) : 1, [h, c.length]), E = N(() => t.filter((i, x) => {
39
+ const _ = o(i, x);
40
+ return y.has(_);
41
+ }), [t, y, o]), ne = N(
42
+ (i) => {
43
43
  const x = /* @__PURE__ */ new Set();
44
- l && y.forEach((w) => {
45
- const N = n.indexOf(w), ae = h(w, N);
46
- x.add(ae);
47
- }), i === void 0 && X(x), p?.(x, l ? y : []);
44
+ i && b.forEach((_) => {
45
+ const I = t.indexOf(_), le = o(_, I);
46
+ x.add(le);
47
+ }), a === void 0 && K(x), p?.(x, i ? b : []);
48
48
  },
49
- [y, n, h, p, i]
50
- ), re = L(
51
- (l, x, w) => {
52
- const N = new Set(v);
53
- w ? N.add(l) : N.delete(l), i === void 0 && X(N);
54
- const ae = n.filter((B, he) => {
55
- const ue = h(B, he);
56
- return N.has(ue);
49
+ [b, t, o, p, a]
50
+ ), ae = N(
51
+ (i, x, _) => {
52
+ const I = new Set(y);
53
+ _ ? I.add(i) : I.delete(i), a === void 0 && K(I);
54
+ const le = t.filter((M, ue) => {
55
+ const he = o(M, ue);
56
+ return I.has(he);
57
57
  });
58
- p?.(N, ae);
58
+ p?.(I, le);
59
59
  },
60
- [v, n, h, p, i]
61
- ), Q = L(
62
- (l) => {
63
- J(l), H?.(l);
60
+ [y, t, o, p, a]
61
+ ), X = N(
62
+ (i) => {
63
+ V(i), P?.(i);
64
64
  },
65
- [H]
66
- ), oe = L(
67
- (l, x, w) => {
68
- O({ rowKey: l, columnKey: x }), a(w);
65
+ [P]
66
+ ), W = N(
67
+ (i, x, _) => {
68
+ H({ rowKey: i, columnKey: x }), l(_);
69
69
  },
70
70
  []
71
- ), ce = L(
72
- (l, x, w) => {
73
- u?.(l, x, P, w), O(null), a("");
71
+ ), oe = N(
72
+ (i, x, _) => {
73
+ f?.(i, x, D, _), H(null), l("");
74
74
  },
75
- [P, u]
76
- ), c = L(() => {
77
- O(null), a("");
78
- }, []), E = L(
79
- (l) => {
80
- s && S?.(l, s.pageSize);
75
+ [D, f]
76
+ ), s = N(() => {
77
+ H(null), l("");
78
+ }, []), U = N(
79
+ (i) => {
80
+ h && j?.(i, h.pageSize);
81
81
  },
82
- [s, S]
83
- ), _ = L(
84
- (l) => {
85
- D?.(l), s && S?.(0, l);
82
+ [h, j]
83
+ ), m = N(
84
+ (i) => {
85
+ A?.(i), h && j?.(0, i);
86
86
  },
87
- [D, S, s]
88
- ), M = te(() => y.length === 0 ? !1 : y.every((l) => {
89
- const x = n.indexOf(l), w = h(l, x);
90
- return v.has(w);
91
- }), [y, v, n, h]), U = te(() => y.length === 0 ? !1 : y.some((x) => {
92
- const w = n.indexOf(x), N = h(x, w);
93
- return v.has(N);
94
- }) && !M, [y, v, M, n, h]), m = "uiforge-grid";
95
- return /* @__PURE__ */ d("div", { className: `${m} ${A}`.trim(), children: [
96
- (k || f.length > 0) && /* @__PURE__ */ d("div", { className: `${m}__toolbar`, children: [
97
- k && /* @__PURE__ */ e("div", { className: `${m}__search`, children: /* @__PURE__ */ e(
87
+ [A, j, h]
88
+ ), L = te(() => b.length === 0 ? !1 : b.every((i) => {
89
+ const x = t.indexOf(i), _ = o(i, x);
90
+ return y.has(_);
91
+ }), [b, y, t, o]), Y = te(() => b.length === 0 ? !1 : b.some((x) => {
92
+ const _ = t.indexOf(x), I = o(x, _);
93
+ return y.has(I);
94
+ }) && !L, [b, y, L, t, o]), g = "uiforge-grid";
95
+ return /* @__PURE__ */ u("div", { className: `${g} ${O}`.trim(), children: [
96
+ ($ || v.length > 0) && /* @__PURE__ */ u("div", { className: `${g}__toolbar`, children: [
97
+ $ && /* @__PURE__ */ n("div", { className: `${g}__search`, children: /* @__PURE__ */ n(
98
98
  "input",
99
99
  {
100
100
  type: "text",
101
- className: `${m}__search-input`,
102
- placeholder: Z,
103
- value: $,
104
- onChange: (l) => Q(l.target.value),
101
+ className: `${g}__search-input`,
102
+ placeholder: G,
103
+ value: k,
104
+ onChange: (i) => X(i.target.value),
105
105
  "aria-label": "Search"
106
106
  }
107
107
  ) }),
108
- f.length > 0 && /* @__PURE__ */ e("div", { className: `${m}__actions`, children: f.map((l, x) => {
109
- const w = l.disabled || l.requiresSelection && v.size === 0;
110
- return /* @__PURE__ */ e(
108
+ v.length > 0 && /* @__PURE__ */ n("div", { className: `${g}__actions`, children: v.map((i, x) => {
109
+ const _ = i.disabled || i.requiresSelection && y.size === 0;
110
+ return /* @__PURE__ */ n(
111
111
  "button",
112
112
  {
113
- className: `${m}__action-button ${m}__action-button--${l.variant || "primary"}`,
114
- onClick: () => l.onClick(T()),
115
- disabled: w,
116
- children: l.label
113
+ className: `${g}__action-button ${g}__action-button--${i.variant || "primary"}`,
114
+ onClick: () => i.onClick(E()),
115
+ disabled: _,
116
+ children: i.label
117
117
  },
118
118
  x
119
119
  );
120
120
  }) })
121
121
  ] }),
122
- /* @__PURE__ */ e("div", { className: `${m}__table-container`, children: /* @__PURE__ */ d("table", { className: `${m}__table`, role: "table", children: [
123
- /* @__PURE__ */ e("thead", { children: /* @__PURE__ */ d("tr", { children: [
124
- r && /* @__PURE__ */ e("th", { className: `${m}__header-cell ${m}__header-cell--checkbox`, children: /* @__PURE__ */ e(
122
+ /* @__PURE__ */ n("div", { className: `${g}__table-container`, children: /* @__PURE__ */ u("table", { className: `${g}__table`, role: "table", children: [
123
+ /* @__PURE__ */ n("thead", { children: /* @__PURE__ */ u("tr", { children: [
124
+ r && /* @__PURE__ */ n("th", { className: `${g}__header-cell ${g}__header-cell--checkbox`, children: /* @__PURE__ */ n(
125
125
  "input",
126
126
  {
127
127
  type: "checkbox",
128
- checked: M,
129
- ref: (l) => {
130
- l && (l.indeterminate = U);
128
+ checked: L,
129
+ ref: (i) => {
130
+ i && (i.indeterminate = Y);
131
131
  },
132
- onChange: (l) => le(l.target.checked),
132
+ onChange: (i) => ne(i.target.checked),
133
133
  "aria-label": "Select all rows"
134
134
  }
135
135
  ) }),
136
- t.map((l) => /* @__PURE__ */ e(
136
+ e.map((i) => /* @__PURE__ */ n(
137
137
  "th",
138
138
  {
139
- className: `${m}__header-cell`,
140
- style: { width: l.width },
141
- children: l.header
139
+ className: `${g}__header-cell`,
140
+ style: { width: i.width },
141
+ children: i.header
142
142
  },
143
- l.key
143
+ i.key
144
144
  ))
145
145
  ] }) }),
146
- /* @__PURE__ */ e("tbody", { children: C ? /* @__PURE__ */ e("tr", { children: /* @__PURE__ */ e(
146
+ /* @__PURE__ */ n("tbody", { children: S ? /* @__PURE__ */ n("tr", { children: /* @__PURE__ */ n(
147
147
  "td",
148
148
  {
149
- colSpan: t.length + (r ? 1 : 0),
150
- className: `${m}__loading-cell`,
149
+ colSpan: e.length + (r ? 1 : 0),
150
+ className: `${g}__loading-cell`,
151
151
  children: "Loading..."
152
152
  }
153
- ) }) : y.length === 0 ? /* @__PURE__ */ e("tr", { children: /* @__PURE__ */ e(
153
+ ) }) : b.length === 0 ? /* @__PURE__ */ n("tr", { children: /* @__PURE__ */ n(
154
154
  "td",
155
155
  {
156
- colSpan: t.length + (r ? 1 : 0),
157
- className: `${m}__empty-cell`,
158
- children: z
156
+ colSpan: e.length + (r ? 1 : 0),
157
+ className: `${g}__empty-cell`,
158
+ children: R
159
159
  }
160
- ) }) : y.map((l, x) => {
161
- const w = n.indexOf(l), N = h(l, w), ae = v.has(N);
162
- return /* @__PURE__ */ d(
160
+ ) }) : b.map((i, x) => {
161
+ const _ = t.indexOf(i), I = o(i, _), le = y.has(I);
162
+ return /* @__PURE__ */ u(
163
163
  "tr",
164
164
  {
165
- className: `${m}__row ${ae ? `${m}__row--selected` : ""}`,
165
+ className: `${g}__row ${le ? `${g}__row--selected` : ""}`,
166
166
  children: [
167
- r && /* @__PURE__ */ e("td", { className: `${m}__cell ${m}__cell--checkbox`, children: /* @__PURE__ */ e(
167
+ r && /* @__PURE__ */ n("td", { className: `${g}__cell ${g}__cell--checkbox`, children: /* @__PURE__ */ n(
168
168
  "input",
169
169
  {
170
170
  type: "checkbox",
171
- checked: ae,
172
- onChange: (B) => re(N, l, B.target.checked),
171
+ checked: le,
172
+ onChange: (M) => ae(I, i, M.target.checked),
173
173
  "aria-label": `Select row ${x + 1}`
174
174
  }
175
175
  ) }),
176
- t.map((B) => {
177
- const he = B.field ? l[B.field] : void 0, ue = I?.rowKey === N && I?.columnKey === B.key;
178
- return /* @__PURE__ */ e("td", { className: `${m}__cell`, children: ue ? /* @__PURE__ */ d("div", { className: `${m}__edit-cell`, children: [
179
- /* @__PURE__ */ e(
176
+ e.map((M) => {
177
+ const ue = M.field ? i[M.field] : void 0, he = C?.rowKey === I && C?.columnKey === M.key;
178
+ return /* @__PURE__ */ n("td", { className: `${g}__cell`, children: he ? /* @__PURE__ */ u("div", { className: `${g}__edit-cell`, children: [
179
+ /* @__PURE__ */ n(
180
180
  "input",
181
181
  {
182
182
  type: "text",
183
- className: `${m}__edit-input`,
184
- value: String(P ?? ""),
185
- onChange: (se) => a(se.target.value),
186
- onKeyDown: (se) => {
187
- se.key === "Enter" ? ce(N, B.key, l) : se.key === "Escape" && c();
183
+ className: `${g}__edit-input`,
184
+ value: String(D ?? ""),
185
+ onChange: (ce) => l(ce.target.value),
186
+ onKeyDown: (ce) => {
187
+ ce.key === "Enter" ? oe(I, M.key, i) : ce.key === "Escape" && s();
188
188
  },
189
189
  autoFocus: !0,
190
- "aria-label": `Edit ${B.header}`
190
+ "aria-label": `Edit ${M.header}`
191
191
  }
192
192
  ),
193
- /* @__PURE__ */ e(
193
+ /* @__PURE__ */ n(
194
194
  "button",
195
195
  {
196
- className: `${m}__edit-button ${m}__edit-button--save`,
197
- onClick: () => ce(N, B.key, l),
196
+ className: `${g}__edit-button ${g}__edit-button--save`,
197
+ onClick: () => oe(I, M.key, i),
198
198
  "aria-label": "Save",
199
199
  children: "✓"
200
200
  }
201
201
  ),
202
- /* @__PURE__ */ e(
202
+ /* @__PURE__ */ n(
203
203
  "button",
204
204
  {
205
- className: `${m}__edit-button ${m}__edit-button--cancel`,
206
- onClick: c,
205
+ className: `${g}__edit-button ${g}__edit-button--cancel`,
206
+ onClick: s,
207
207
  "aria-label": "Cancel",
208
208
  children: "✕"
209
209
  }
210
210
  )
211
- ] }) : /* @__PURE__ */ e(
211
+ ] }) : /* @__PURE__ */ n(
212
212
  "div",
213
213
  {
214
- className: `${m}__cell-content ${B.editable ? `${m}__cell-content--editable` : ""}`,
214
+ className: `${g}__cell-content ${M.editable ? `${g}__cell-content--editable` : ""}`,
215
215
  onClick: () => {
216
- B.editable && oe(N, B.key, he);
216
+ M.editable && W(I, M.key, ue);
217
217
  },
218
- onKeyDown: (se) => {
219
- B.editable && (se.key === "Enter" || se.key === " ") && oe(N, B.key, he);
218
+ onKeyDown: (ce) => {
219
+ M.editable && (ce.key === "Enter" || ce.key === " ") && W(I, M.key, ue);
220
220
  },
221
- tabIndex: B.editable ? 0 : void 0,
222
- role: B.editable ? "button" : void 0,
223
- "aria-label": B.editable ? `Edit ${B.header}` : void 0,
224
- children: B.render ? B.render(he, l, w) : String(he ?? "")
221
+ tabIndex: M.editable ? 0 : void 0,
222
+ role: M.editable ? "button" : void 0,
223
+ "aria-label": M.editable ? `Edit ${M.header}` : void 0,
224
+ children: M.render ? M.render(ue, i, _) : String(ue ?? "")
225
225
  }
226
- ) }, B.key);
226
+ ) }, M.key);
227
227
  })
228
228
  ]
229
229
  },
230
- N
230
+ I
231
231
  );
232
232
  }) })
233
233
  ] }) }),
234
- s && K > 1 && /* @__PURE__ */ d("div", { className: `${m}__pagination`, children: [
235
- /* @__PURE__ */ e("div", { className: `${m}__pagination-info`, children: s.serverSide && s.totalItems !== void 0 ? /* @__PURE__ */ d(_e, { children: [
234
+ h && z > 1 && /* @__PURE__ */ u("div", { className: `${g}__pagination`, children: [
235
+ /* @__PURE__ */ n("div", { className: `${g}__pagination-info`, children: h.serverSide && h.totalItems !== void 0 ? /* @__PURE__ */ u(me, { children: [
236
236
  "Showing ",
237
- s.currentPage * s.pageSize + 1,
237
+ h.currentPage * h.pageSize + 1,
238
238
  " to",
239
239
  " ",
240
240
  Math.min(
241
- (s.currentPage + 1) * s.pageSize,
242
- s.totalItems
241
+ (h.currentPage + 1) * h.pageSize,
242
+ h.totalItems
243
243
  ),
244
244
  " ",
245
245
  "of ",
246
- s.totalItems,
246
+ h.totalItems,
247
247
  " items"
248
- ] }) : /* @__PURE__ */ d(_e, { children: [
248
+ ] }) : /* @__PURE__ */ u(me, { children: [
249
249
  "Showing ",
250
- s.currentPage * s.pageSize + 1,
250
+ h.currentPage * h.pageSize + 1,
251
251
  " to",
252
252
  " ",
253
- Math.min((s.currentPage + 1) * s.pageSize, g.length),
253
+ Math.min((h.currentPage + 1) * h.pageSize, c.length),
254
254
  " ",
255
255
  "of ",
256
- g.length,
256
+ c.length,
257
257
  " items"
258
258
  ] }) }),
259
- /* @__PURE__ */ d("div", { className: `${m}__pagination-controls`, children: [
260
- /* @__PURE__ */ e(
259
+ /* @__PURE__ */ u("div", { className: `${g}__pagination-controls`, children: [
260
+ /* @__PURE__ */ n(
261
261
  "button",
262
262
  {
263
- className: `${m}__pagination-button`,
264
- onClick: () => E(s.currentPage - 1),
265
- disabled: s.currentPage === 0,
263
+ className: `${g}__pagination-button`,
264
+ onClick: () => U(h.currentPage - 1),
265
+ disabled: h.currentPage === 0,
266
266
  "aria-label": "Previous page",
267
267
  children: "‹"
268
268
  }
269
269
  ),
270
- Array.from({ length: K }, (l, x) => x).map((l) => l === 0 || l === K - 1 || Math.abs(l - s.currentPage) <= 1 ? /* @__PURE__ */ e(
270
+ Array.from({ length: z }, (i, x) => x).map((i) => i === 0 || i === z - 1 || Math.abs(i - h.currentPage) <= 1 ? /* @__PURE__ */ n(
271
271
  "button",
272
272
  {
273
- className: `${m}__pagination-button ${l === s.currentPage ? `${m}__pagination-button--active` : ""}`,
274
- onClick: () => E(l),
275
- "aria-label": `Page ${l + 1}`,
276
- "aria-current": l === s.currentPage ? "page" : void 0,
277
- children: l + 1
273
+ className: `${g}__pagination-button ${i === h.currentPage ? `${g}__pagination-button--active` : ""}`,
274
+ onClick: () => U(i),
275
+ "aria-label": `Page ${i + 1}`,
276
+ "aria-current": i === h.currentPage ? "page" : void 0,
277
+ children: i + 1
278
278
  },
279
- l
280
- ) : l === s.currentPage - 2 || l === s.currentPage + 2 ? /* @__PURE__ */ e("span", { className: `${m}__pagination-ellipsis`, children: "..." }, l) : null),
281
- /* @__PURE__ */ e(
279
+ i
280
+ ) : i === h.currentPage - 2 || i === h.currentPage + 2 ? /* @__PURE__ */ n("span", { className: `${g}__pagination-ellipsis`, children: "..." }, i) : null),
281
+ /* @__PURE__ */ n(
282
282
  "button",
283
283
  {
284
- className: `${m}__pagination-button`,
285
- onClick: () => E(s.currentPage + 1),
286
- disabled: s.currentPage >= K - 1,
284
+ className: `${g}__pagination-button`,
285
+ onClick: () => U(h.currentPage + 1),
286
+ disabled: h.currentPage >= z - 1,
287
287
  "aria-label": "Next page",
288
288
  children: "›"
289
289
  }
290
290
  )
291
291
  ] }),
292
- /* @__PURE__ */ d("div", { className: `${m}__page-size`, children: [
293
- /* @__PURE__ */ e("label", { htmlFor: "page-size-select", children: "Items per page:" }),
294
- /* @__PURE__ */ e(
292
+ /* @__PURE__ */ u("div", { className: `${g}__page-size`, children: [
293
+ /* @__PURE__ */ n("label", { htmlFor: "page-size-select", children: "Items per page:" }),
294
+ /* @__PURE__ */ n(
295
295
  "select",
296
296
  {
297
297
  id: "page-size-select",
298
- className: `${m}__page-size-select`,
299
- value: s.pageSize,
300
- onChange: (l) => _(Number(l.target.value)),
301
- children: q.map((l) => /* @__PURE__ */ e("option", { value: l, children: l }, l))
298
+ className: `${g}__page-size-select`,
299
+ value: h.pageSize,
300
+ onChange: (i) => m(Number(i.target.value)),
301
+ children: Z.map((i) => /* @__PURE__ */ n("option", { value: i, children: i }, i))
302
302
  }
303
303
  )
304
304
  ] })
305
305
  ] })
306
306
  ] });
307
- }, Ie = () => `block-${Date.now()}-${Math.random().toString(36).substring(2, 11)}`, me = (t = "paragraph") => ({
308
- id: Ie(),
309
- type: t,
307
+ }, Pe = () => `block-${Date.now()}-${Math.random().toString(36).substring(2, 11)}`, ve = (e = "paragraph") => ({
308
+ id: Pe(),
309
+ type: e,
310
310
  content: "",
311
311
  format: {}
312
- }), St = ({
313
- initialBlocks: t = [],
314
- onChange: n,
312
+ }), ur = ({
313
+ initialBlocks: e = [],
314
+ onChange: t,
315
315
  placeholder: r = "Start typing...",
316
- readOnly: i = !1,
317
- className: h = "",
316
+ readOnly: a = !1,
317
+ className: o = "",
318
318
  maxHeight: p
319
319
  }) => {
320
- const [u, f] = j(
321
- t.length > 0 ? t : [me()]
322
- ), [k, Z] = j(null), [H, F] = j(null), [s, S] = j(!1), D = G(null);
323
- ne(() => {
324
- n && n(u);
325
- }, [u, n]);
326
- const q = L((a, v) => {
327
- f((g) => g.map((y) => y.id === a ? { ...y, ...v } : y));
328
- }, []), A = L((a = "paragraph", v) => {
329
- const g = me(a);
330
- f((y) => {
331
- if (!v)
332
- return [...y, g];
333
- const K = y.findIndex((le) => le.id === v), T = [...y];
334
- return T.splice(K + 1, 0, g), T;
335
- }), Z(g.id);
336
- }, []), C = L((a) => {
337
- f((v) => {
338
- const g = v.filter((y) => y.id !== a);
339
- return g.length > 0 ? g : [me()];
320
+ const [f, v] = F(
321
+ e.length > 0 ? e : [ve()]
322
+ ), [$, G] = F(null), [P, q] = F(null), [h, j] = F(!1), A = ee(null);
323
+ se(() => {
324
+ t && t(f);
325
+ }, [f, t]);
326
+ const Z = N((l, y) => {
327
+ v((c) => c.map((b) => b.id === l ? { ...b, ...y } : b));
328
+ }, []), O = N((l = "paragraph", y) => {
329
+ const c = ve(l);
330
+ v((b) => {
331
+ if (!y)
332
+ return [...b, c];
333
+ const z = b.findIndex((ne) => ne.id === y), E = [...b];
334
+ return E.splice(z + 1, 0, c), E;
335
+ }), G(c.id);
336
+ }, []), S = N((l) => {
337
+ v((y) => {
338
+ const c = y.filter((b) => b.id !== l);
339
+ return c.length > 0 ? c : [ve()];
340
340
  });
341
- }, []), z = L((a, v) => {
342
- f((g) => {
343
- const y = g.findIndex((re) => re.id === a), K = g.findIndex((re) => re.id === v);
344
- if (y === -1 || K === -1) return g;
345
- const T = [...g], [le] = T.splice(y, 1);
346
- return T.splice(K, 0, le), T;
341
+ }, []), R = N((l, y) => {
342
+ v((c) => {
343
+ const b = c.findIndex((ae) => ae.id === l), z = c.findIndex((ae) => ae.id === y);
344
+ if (b === -1 || z === -1) return c;
345
+ const E = [...c], [ne] = E.splice(b, 1);
346
+ return E.splice(z, 0, ne), E;
347
347
  });
348
- }, []), ie = L(
349
- (a, v) => {
350
- i || (F(v), a.dataTransfer.effectAllowed = "move");
348
+ }, []), Q = N(
349
+ (l, y) => {
350
+ a || (q(y), l.dataTransfer.effectAllowed = "move");
351
351
  },
352
- [i]
353
- ), X = L((a) => {
354
- a.preventDefault(), a.dataTransfer.dropEffect = "move";
355
- }, []), $ = L(
356
- (a, v) => {
357
- a.preventDefault(), H && H !== v && z(H, v), F(null);
352
+ [a]
353
+ ), K = N((l) => {
354
+ l.preventDefault(), l.dataTransfer.dropEffect = "move";
355
+ }, []), k = N(
356
+ (l, y) => {
357
+ l.preventDefault(), P && P !== y && R(P, y), q(null);
358
358
  },
359
- [H, z]
360
- ), J = L(() => {
361
- F(null);
362
- }, []), I = L(
363
- (a) => {
364
- k && f(
365
- (v) => v.map((g) => {
366
- if (g.id === k) {
367
- const y = g.format || {};
359
+ [P, R]
360
+ ), V = N(() => {
361
+ q(null);
362
+ }, []), C = N(
363
+ (l) => {
364
+ $ && v(
365
+ (y) => y.map((c) => {
366
+ if (c.id === $) {
367
+ const b = c.format || {};
368
368
  return {
369
- ...g,
369
+ ...c,
370
370
  format: {
371
- ...y,
372
- [a]: !y[a]
371
+ ...b,
372
+ [l]: !b[l]
373
373
  }
374
374
  };
375
375
  }
376
- return g;
376
+ return c;
377
377
  })
378
378
  );
379
379
  },
380
- [k]
381
- ), O = L(
382
- (a, v) => {
383
- q(a, { type: v });
380
+ [$]
381
+ ), H = N(
382
+ (l, y) => {
383
+ Z(l, { type: y });
384
384
  },
385
- [q]
386
- ), P = L(
387
- (a, v) => {
388
- if (!i) {
389
- if ((a.metaKey || a.ctrlKey) && a.key === "b")
390
- a.preventDefault(), I("bold");
391
- else if ((a.metaKey || a.ctrlKey) && a.key === "i")
392
- a.preventDefault(), I("italic");
393
- else if ((a.metaKey || a.ctrlKey) && a.key === "u")
394
- a.preventDefault(), I("underline");
395
- else if (a.key === "Enter" && !a.shiftKey) {
396
- const g = u.find((y) => y.id === v);
397
- g && g.type !== "code" && (a.preventDefault(), A("paragraph", v));
398
- } else if (a.key === "Backspace") {
399
- const g = u.find((y) => y.id === v);
400
- g && !g.content && u.length > 1 && (a.preventDefault(), C(v));
385
+ [Z]
386
+ ), D = N(
387
+ (l, y) => {
388
+ if (!a) {
389
+ if ((l.metaKey || l.ctrlKey) && l.key === "b")
390
+ l.preventDefault(), C("bold");
391
+ else if ((l.metaKey || l.ctrlKey) && l.key === "i")
392
+ l.preventDefault(), C("italic");
393
+ else if ((l.metaKey || l.ctrlKey) && l.key === "u")
394
+ l.preventDefault(), C("underline");
395
+ else if (l.key === "Enter" && !l.shiftKey) {
396
+ const c = f.find((b) => b.id === y);
397
+ c && c.type !== "code" && (l.preventDefault(), O("paragraph", y));
398
+ } else if (l.key === "Backspace") {
399
+ const c = f.find((b) => b.id === y);
400
+ c && !c.content && f.length > 1 && (l.preventDefault(), S(y));
401
401
  }
402
402
  }
403
403
  },
404
- [i, u, I, A, C]
404
+ [a, f, C, O, S]
405
405
  );
406
- return /* @__PURE__ */ d("div", { className: `uiforge-blocks-editor ${h}`, ref: D, style: { maxHeight: p }, children: [
407
- !i && s && k && /* @__PURE__ */ e(
408
- Be,
406
+ return /* @__PURE__ */ u("div", { className: `uiforge-blocks-editor ${o}`, ref: A, style: { maxHeight: p }, children: [
407
+ !a && h && $ && /* @__PURE__ */ n(
408
+ Ve,
409
409
  {
410
- selectedBlock: u.find((a) => a.id === k),
411
- onFormatToggle: I,
412
- onBlockTypeChange: (a) => O(k, a)
410
+ selectedBlock: f.find((l) => l.id === $),
411
+ onFormatToggle: C,
412
+ onBlockTypeChange: (l) => H($, l)
413
413
  }
414
414
  ),
415
- /* @__PURE__ */ e("div", { className: "uiforge-blocks-editor__content", children: u.map((a, v) => /* @__PURE__ */ e(
416
- Se,
415
+ /* @__PURE__ */ n("div", { className: "uiforge-blocks-editor__content", children: f.map((l, y) => /* @__PURE__ */ n(
416
+ De,
417
417
  {
418
- block: a,
419
- isSelected: k === a.id,
420
- isDragging: H === a.id,
421
- readOnly: i,
422
- placeholder: v === 0 && u.length === 1 ? r : void 0,
418
+ block: l,
419
+ isSelected: $ === l.id,
420
+ isDragging: P === l.id,
421
+ readOnly: a,
422
+ placeholder: y === 0 && f.length === 1 ? r : void 0,
423
423
  onSelect: () => {
424
- Z(a.id), S(!0);
424
+ G(l.id), j(!0);
425
425
  },
426
- onChange: (g) => q(a.id, g),
427
- onDelete: () => C(a.id),
428
- onDragStart: (g) => ie(g, a.id),
429
- onDragOver: X,
430
- onDrop: (g) => $(g, a.id),
431
- onDragEnd: J,
432
- onKeyDown: (g) => P(g, a.id)
426
+ onChange: (c) => Z(l.id, c),
427
+ onDelete: () => S(l.id),
428
+ onDragStart: (c) => Q(c, l.id),
429
+ onDragOver: K,
430
+ onDrop: (c) => k(c, l.id),
431
+ onDragEnd: V,
432
+ onKeyDown: (c) => D(c, l.id)
433
433
  },
434
- a.id
434
+ l.id
435
435
  )) }),
436
- !i && /* @__PURE__ */ e(De, { onAddBlock: A })
436
+ !a && /* @__PURE__ */ n(Be, { onAddBlock: O })
437
437
  ] });
438
- }, Be = ({ selectedBlock: t, onFormatToggle: n, onBlockTypeChange: r }) => {
439
- if (!t) return null;
440
- const i = t.format || {};
441
- return /* @__PURE__ */ d("div", { className: "uiforge-blocks-editor__toolbar", role: "toolbar", "aria-label": "Text formatting", children: [
442
- /* @__PURE__ */ e("div", { className: "uiforge-blocks-editor__toolbar-group", children: /* @__PURE__ */ d(
438
+ }, Ve = ({ selectedBlock: e, onFormatToggle: t, onBlockTypeChange: r }) => {
439
+ if (!e) return null;
440
+ const a = e.format || {};
441
+ return /* @__PURE__ */ u("div", { className: "uiforge-blocks-editor__toolbar", role: "toolbar", "aria-label": "Text formatting", children: [
442
+ /* @__PURE__ */ n("div", { className: "uiforge-blocks-editor__toolbar-group", children: /* @__PURE__ */ u(
443
443
  "select",
444
444
  {
445
- value: t.type,
446
- onChange: (h) => r(h.target.value),
445
+ value: e.type,
446
+ onChange: (o) => r(o.target.value),
447
447
  className: "uiforge-blocks-editor__toolbar-select",
448
448
  "aria-label": "Block type",
449
449
  children: [
450
- /* @__PURE__ */ e("option", { value: "paragraph", children: "Paragraph" }),
451
- /* @__PURE__ */ e("option", { value: "heading1", children: "Heading 1" }),
452
- /* @__PURE__ */ e("option", { value: "heading2", children: "Heading 2" }),
453
- /* @__PURE__ */ e("option", { value: "heading3", children: "Heading 3" }),
454
- /* @__PURE__ */ e("option", { value: "list", children: "List" }),
455
- /* @__PURE__ */ e("option", { value: "quote", children: "Quote" }),
456
- /* @__PURE__ */ e("option", { value: "code", children: "Code" }),
457
- /* @__PURE__ */ e("option", { value: "image", children: "Image" })
450
+ /* @__PURE__ */ n("option", { value: "paragraph", children: "Paragraph" }),
451
+ /* @__PURE__ */ n("option", { value: "heading1", children: "Heading 1" }),
452
+ /* @__PURE__ */ n("option", { value: "heading2", children: "Heading 2" }),
453
+ /* @__PURE__ */ n("option", { value: "heading3", children: "Heading 3" }),
454
+ /* @__PURE__ */ n("option", { value: "list", children: "List" }),
455
+ /* @__PURE__ */ n("option", { value: "quote", children: "Quote" }),
456
+ /* @__PURE__ */ n("option", { value: "code", children: "Code" }),
457
+ /* @__PURE__ */ n("option", { value: "image", children: "Image" })
458
458
  ]
459
459
  }
460
460
  ) }),
461
- /* @__PURE__ */ e("div", { className: "uiforge-blocks-editor__toolbar-divider" }),
462
- /* @__PURE__ */ d("div", { className: "uiforge-blocks-editor__toolbar-group", children: [
463
- /* @__PURE__ */ e(
461
+ /* @__PURE__ */ n("div", { className: "uiforge-blocks-editor__toolbar-divider" }),
462
+ /* @__PURE__ */ u("div", { className: "uiforge-blocks-editor__toolbar-group", children: [
463
+ /* @__PURE__ */ n(
464
464
  "button",
465
465
  {
466
466
  type: "button",
467
- className: `uiforge-blocks-editor__toolbar-button ${i.bold ? "active" : ""}`,
468
- onClick: () => n("bold"),
467
+ className: `uiforge-blocks-editor__toolbar-button ${a.bold ? "active" : ""}`,
468
+ onClick: () => t("bold"),
469
469
  title: "Bold (Ctrl+B)",
470
470
  "aria-label": "Bold",
471
- "aria-pressed": i.bold,
472
- children: /* @__PURE__ */ e("strong", { children: "B" })
471
+ "aria-pressed": a.bold,
472
+ children: /* @__PURE__ */ n("strong", { children: "B" })
473
473
  }
474
474
  ),
475
- /* @__PURE__ */ e(
475
+ /* @__PURE__ */ n(
476
476
  "button",
477
477
  {
478
478
  type: "button",
479
- className: `uiforge-blocks-editor__toolbar-button ${i.italic ? "active" : ""}`,
480
- onClick: () => n("italic"),
479
+ className: `uiforge-blocks-editor__toolbar-button ${a.italic ? "active" : ""}`,
480
+ onClick: () => t("italic"),
481
481
  title: "Italic (Ctrl+I)",
482
482
  "aria-label": "Italic",
483
- "aria-pressed": i.italic,
484
- children: /* @__PURE__ */ e("em", { children: "I" })
483
+ "aria-pressed": a.italic,
484
+ children: /* @__PURE__ */ n("em", { children: "I" })
485
485
  }
486
486
  ),
487
- /* @__PURE__ */ e(
487
+ /* @__PURE__ */ n(
488
488
  "button",
489
489
  {
490
490
  type: "button",
491
- className: `uiforge-blocks-editor__toolbar-button ${i.underline ? "active" : ""}`,
492
- onClick: () => n("underline"),
491
+ className: `uiforge-blocks-editor__toolbar-button ${a.underline ? "active" : ""}`,
492
+ onClick: () => t("underline"),
493
493
  title: "Underline (Ctrl+U)",
494
494
  "aria-label": "Underline",
495
- "aria-pressed": i.underline,
496
- children: /* @__PURE__ */ e("u", { children: "U" })
495
+ "aria-pressed": a.underline,
496
+ children: /* @__PURE__ */ n("u", { children: "U" })
497
497
  }
498
498
  ),
499
- /* @__PURE__ */ e(
499
+ /* @__PURE__ */ n(
500
500
  "button",
501
501
  {
502
502
  type: "button",
503
- className: `uiforge-blocks-editor__toolbar-button ${i.code ? "active" : ""}`,
504
- onClick: () => n("code"),
503
+ className: `uiforge-blocks-editor__toolbar-button ${a.code ? "active" : ""}`,
504
+ onClick: () => t("code"),
505
505
  title: "Inline Code",
506
506
  "aria-label": "Code",
507
- "aria-pressed": i.code,
507
+ "aria-pressed": a.code,
508
508
  children: "</>"
509
509
  }
510
510
  )
511
511
  ] })
512
512
  ] });
513
- }, Se = ({
514
- block: t,
515
- isSelected: n,
513
+ }, De = ({
514
+ block: e,
515
+ isSelected: t,
516
516
  isDragging: r,
517
- readOnly: i,
518
- placeholder: h,
517
+ readOnly: a,
518
+ placeholder: o,
519
519
  onSelect: p,
520
- onChange: u,
521
- onDelete: f,
522
- onDragStart: k,
523
- onDragOver: Z,
524
- onDrop: H,
525
- onDragEnd: F,
526
- onKeyDown: s
520
+ onChange: f,
521
+ onDelete: v,
522
+ onDragStart: $,
523
+ onDragOver: G,
524
+ onDrop: P,
525
+ onDragEnd: q,
526
+ onKeyDown: h
527
527
  }) => {
528
- const S = [
528
+ const j = [
529
529
  "uiforge-blocks-editor__block",
530
- `uiforge-blocks-editor__block--${t.type}`,
531
- n ? "uiforge-blocks-editor__block--selected" : "",
530
+ `uiforge-blocks-editor__block--${e.type}`,
531
+ t ? "uiforge-blocks-editor__block--selected" : "",
532
532
  r ? "uiforge-blocks-editor__block--dragging" : ""
533
- ].filter(Boolean).join(" "), D = [
533
+ ].filter(Boolean).join(" "), A = [
534
534
  "uiforge-blocks-editor__block-text",
535
- t.format?.bold ? "uiforge-blocks-editor__block-text--bold" : "",
536
- t.format?.italic ? "uiforge-blocks-editor__block-text--italic" : "",
537
- t.format?.underline ? "uiforge-blocks-editor__block-text--underline" : "",
538
- t.format?.code ? "uiforge-blocks-editor__block-text--code" : ""
539
- ].filter(Boolean).join(" "), q = (C) => {
540
- u({ content: C.target.value });
541
- }, A = () => {
542
- const C = {
543
- value: t.content,
544
- onChange: q,
535
+ e.format?.bold ? "uiforge-blocks-editor__block-text--bold" : "",
536
+ e.format?.italic ? "uiforge-blocks-editor__block-text--italic" : "",
537
+ e.format?.underline ? "uiforge-blocks-editor__block-text--underline" : "",
538
+ e.format?.code ? "uiforge-blocks-editor__block-text--code" : ""
539
+ ].filter(Boolean).join(" "), Z = (S) => {
540
+ f({ content: S.target.value });
541
+ }, O = () => {
542
+ const S = {
543
+ value: e.content,
544
+ onChange: Z,
545
545
  onFocus: p,
546
- onKeyDown: s,
547
- placeholder: h,
548
- readOnly: i,
549
- className: D
546
+ onKeyDown: h,
547
+ placeholder: o,
548
+ readOnly: a,
549
+ className: A
550
550
  };
551
- switch (t.type) {
551
+ switch (e.type) {
552
552
  case "heading1":
553
- return /* @__PURE__ */ e(
553
+ return /* @__PURE__ */ n(
554
554
  "input",
555
555
  {
556
- ...C,
556
+ ...S,
557
557
  type: "text",
558
- className: `${D} uiforge-blocks-editor__heading1`,
559
- placeholder: h || "Heading 1"
558
+ className: `${A} uiforge-blocks-editor__heading1`,
559
+ placeholder: o || "Heading 1"
560
560
  }
561
561
  );
562
562
  case "heading2":
563
- return /* @__PURE__ */ e(
563
+ return /* @__PURE__ */ n(
564
564
  "input",
565
565
  {
566
- ...C,
566
+ ...S,
567
567
  type: "text",
568
- className: `${D} uiforge-blocks-editor__heading2`,
569
- placeholder: h || "Heading 2"
568
+ className: `${A} uiforge-blocks-editor__heading2`,
569
+ placeholder: o || "Heading 2"
570
570
  }
571
571
  );
572
572
  case "heading3":
573
- return /* @__PURE__ */ e(
573
+ return /* @__PURE__ */ n(
574
574
  "input",
575
575
  {
576
- ...C,
576
+ ...S,
577
577
  type: "text",
578
- className: `${D} uiforge-blocks-editor__heading3`,
579
- placeholder: h || "Heading 3"
578
+ className: `${A} uiforge-blocks-editor__heading3`,
579
+ placeholder: o || "Heading 3"
580
580
  }
581
581
  );
582
582
  case "code":
583
- return /* @__PURE__ */ e(
583
+ return /* @__PURE__ */ n(
584
584
  "textarea",
585
585
  {
586
- ...C,
587
- className: `${D} uiforge-blocks-editor__code`,
588
- placeholder: h || "Code block",
586
+ ...S,
587
+ className: `${A} uiforge-blocks-editor__code`,
588
+ placeholder: o || "Code block",
589
589
  rows: 4
590
590
  }
591
591
  );
592
592
  case "quote":
593
- return /* @__PURE__ */ e(
593
+ return /* @__PURE__ */ n(
594
594
  "textarea",
595
595
  {
596
- ...C,
597
- className: `${D} uiforge-blocks-editor__quote`,
598
- placeholder: h || "Quote",
596
+ ...S,
597
+ className: `${A} uiforge-blocks-editor__quote`,
598
+ placeholder: o || "Quote",
599
599
  rows: 2
600
600
  }
601
601
  );
602
602
  case "image":
603
- return /* @__PURE__ */ d("div", { className: "uiforge-blocks-editor__image-block", children: [
604
- /* @__PURE__ */ e(
603
+ return /* @__PURE__ */ u("div", { className: "uiforge-blocks-editor__image-block", children: [
604
+ /* @__PURE__ */ n(
605
605
  "input",
606
606
  {
607
607
  type: "text",
608
- value: t.imageUrl || "",
609
- onChange: (z) => u({ imageUrl: z.target.value }),
608
+ value: e.imageUrl || "",
609
+ onChange: (R) => f({ imageUrl: R.target.value }),
610
610
  placeholder: "Image URL",
611
611
  className: "uiforge-blocks-editor__image-url",
612
- readOnly: i
612
+ readOnly: a
613
613
  }
614
614
  ),
615
- /* @__PURE__ */ e(
615
+ /* @__PURE__ */ n(
616
616
  "input",
617
617
  {
618
618
  type: "text",
619
- value: t.imageAlt || "",
620
- onChange: (z) => u({ imageAlt: z.target.value }),
619
+ value: e.imageAlt || "",
620
+ onChange: (R) => f({ imageAlt: R.target.value }),
621
621
  placeholder: "Alt text",
622
622
  className: "uiforge-blocks-editor__image-alt",
623
- readOnly: i
623
+ readOnly: a
624
624
  }
625
625
  ),
626
- t.imageUrl && /* @__PURE__ */ e(
626
+ e.imageUrl && /* @__PURE__ */ n(
627
627
  "img",
628
628
  {
629
- src: t.imageUrl,
630
- alt: t.imageAlt || "Block image",
629
+ src: e.imageUrl,
630
+ alt: e.imageAlt || "Block image",
631
631
  className: "uiforge-blocks-editor__image-preview"
632
632
  }
633
633
  )
634
634
  ] });
635
635
  default:
636
- return /* @__PURE__ */ e(
636
+ return /* @__PURE__ */ n(
637
637
  "textarea",
638
638
  {
639
- ...C,
640
- className: `${D} uiforge-blocks-editor__paragraph`,
641
- placeholder: h || "Start typing...",
639
+ ...S,
640
+ className: `${A} uiforge-blocks-editor__paragraph`,
641
+ placeholder: o || "Start typing...",
642
642
  rows: 1,
643
643
  style: { minHeight: "1.5em" }
644
644
  }
645
645
  );
646
646
  }
647
647
  };
648
- return /* @__PURE__ */ d(
648
+ return /* @__PURE__ */ u(
649
649
  "div",
650
650
  {
651
- className: S,
652
- draggable: !i,
653
- onDragStart: k,
654
- onDragOver: Z,
655
- onDrop: H,
656
- onDragEnd: F,
657
- "data-block-id": t.id,
651
+ className: j,
652
+ draggable: !a,
653
+ onDragStart: $,
654
+ onDragOver: G,
655
+ onDrop: P,
656
+ onDragEnd: q,
657
+ "data-block-id": e.id,
658
658
  children: [
659
- !i && /* @__PURE__ */ d("div", { className: "uiforge-blocks-editor__block-controls", children: [
660
- /* @__PURE__ */ e(
659
+ !a && /* @__PURE__ */ u("div", { className: "uiforge-blocks-editor__block-controls", children: [
660
+ /* @__PURE__ */ n(
661
661
  "button",
662
662
  {
663
663
  type: "button",
@@ -667,37 +667,37 @@ const It = ({
667
667
  children: "⋮⋮"
668
668
  }
669
669
  ),
670
- /* @__PURE__ */ e(
670
+ /* @__PURE__ */ n(
671
671
  "button",
672
672
  {
673
673
  type: "button",
674
674
  className: "uiforge-blocks-editor__delete-button",
675
- onClick: f,
675
+ onClick: v,
676
676
  title: "Delete block",
677
677
  "aria-label": "Delete block",
678
678
  children: "×"
679
679
  }
680
680
  )
681
681
  ] }),
682
- /* @__PURE__ */ e("div", { className: "uiforge-blocks-editor__block-content", children: A() })
682
+ /* @__PURE__ */ n("div", { className: "uiforge-blocks-editor__block-content", children: O() })
683
683
  ]
684
684
  }
685
685
  );
686
- }, De = ({ onAddBlock: t }) => {
687
- const [n, r] = j(!1);
688
- return /* @__PURE__ */ d("div", { className: "uiforge-blocks-editor__block-menu", children: [
689
- /* @__PURE__ */ e(
686
+ }, Be = ({ onAddBlock: e }) => {
687
+ const [t, r] = F(!1);
688
+ return /* @__PURE__ */ u("div", { className: "uiforge-blocks-editor__block-menu", children: [
689
+ /* @__PURE__ */ n(
690
690
  "button",
691
691
  {
692
692
  type: "button",
693
693
  className: "uiforge-blocks-editor__add-button",
694
- onClick: () => r(!n),
694
+ onClick: () => r(!t),
695
695
  "aria-label": "Add block",
696
- "aria-expanded": n,
696
+ "aria-expanded": t,
697
697
  children: "+ Add Block"
698
698
  }
699
699
  ),
700
- n && /* @__PURE__ */ e("div", { className: "uiforge-blocks-editor__block-menu-dropdown", children: [
700
+ t && /* @__PURE__ */ n("div", { className: "uiforge-blocks-editor__block-menu-dropdown", children: [
701
701
  { type: "paragraph", label: "Paragraph", icon: "¶" },
702
702
  { type: "heading1", label: "Heading 1", icon: "H1" },
703
703
  { type: "heading2", label: "Heading 2", icon: "H2" },
@@ -706,37 +706,37 @@ const It = ({
706
706
  { type: "quote", label: "Quote", icon: '"' },
707
707
  { type: "code", label: "Code", icon: "</>" },
708
708
  { type: "image", label: "Image", icon: "🖼" }
709
- ].map(({ type: h, label: p, icon: u }) => /* @__PURE__ */ d(
709
+ ].map(({ type: o, label: p, icon: f }) => /* @__PURE__ */ u(
710
710
  "button",
711
711
  {
712
712
  type: "button",
713
713
  className: "uiforge-blocks-editor__block-menu-item",
714
714
  onClick: () => {
715
- t(h), r(!1);
715
+ e(o), r(!1);
716
716
  },
717
717
  children: [
718
- /* @__PURE__ */ e("span", { className: "uiforge-blocks-editor__block-menu-icon", children: u }),
719
- /* @__PURE__ */ e("span", { children: p })
718
+ /* @__PURE__ */ n("span", { className: "uiforge-blocks-editor__block-menu-icon", children: f }),
719
+ /* @__PURE__ */ n("span", { children: p })
720
720
  ]
721
721
  },
722
- h
722
+ o
723
723
  )) })
724
724
  ] });
725
725
  };
726
- function pe(t) {
727
- return t.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#039;");
726
+ function ge(e) {
727
+ return e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;").replace(/'/g, "&#039;");
728
728
  }
729
- function Ve(t) {
730
- const n = t.trim(), r = ["javascript:", "data:", "vbscript:", "file:"], i = n.toLowerCase();
731
- for (const h of r)
732
- if (i.startsWith(h))
729
+ function Ee(e) {
730
+ const t = e.trim(), r = ["javascript:", "data:", "vbscript:", "file:"], a = t.toLowerCase();
731
+ for (const o of r)
732
+ if (a.startsWith(o))
733
733
  return "";
734
- return n;
734
+ return t;
735
735
  }
736
- function Dt(t) {
737
- return t.map((n) => {
738
- let r = pe(n.content);
739
- switch (n.format?.bold && (r = `<strong>${r}</strong>`), n.format?.italic && (r = `<em>${r}</em>`), n.format?.underline && (r = `<u>${r}</u>`), n.format?.code && (r = `<code>${r}</code>`), n.type) {
736
+ function hr(e) {
737
+ return e.map((t) => {
738
+ let r = ge(t.content);
739
+ switch (t.format?.bold && (r = `<strong>${r}</strong>`), t.format?.italic && (r = `<em>${r}</em>`), t.format?.underline && (r = `<u>${r}</u>`), t.format?.code && (r = `<code>${r}</code>`), t.type) {
740
740
  case "heading1":
741
741
  return `<h1>${r}</h1>`;
742
742
  case "heading2":
@@ -746,10 +746,10 @@ function Dt(t) {
746
746
  case "quote":
747
747
  return `<blockquote>${r}</blockquote>`;
748
748
  case "code":
749
- return `<pre><code>${pe(n.content)}</code></pre>`;
749
+ return `<pre><code>${ge(t.content)}</code></pre>`;
750
750
  case "image": {
751
- const i = Ve(n.imageUrl || ""), h = pe(n.imageAlt || "");
752
- return i ? `<img src="${i}" alt="${h}" />` : "";
751
+ const a = Ee(t.imageUrl || ""), o = ge(t.imageAlt || "");
752
+ return a ? `<img src="${a}" alt="${o}" />` : "";
753
753
  }
754
754
  case "list":
755
755
  return `<ul><li>${r}</li></ul>`;
@@ -759,10 +759,10 @@ function Dt(t) {
759
759
  }).join(`
760
760
  `);
761
761
  }
762
- function Vt(t) {
763
- return t.map((n) => {
764
- let r = n.content;
765
- switch (n.format?.bold && (r = `**${r}**`), n.format?.italic && (r = `*${r}*`), n.format?.code && (r = `\`${r}\``), n.type) {
762
+ function mr(e) {
763
+ return e.map((t) => {
764
+ let r = t.content;
765
+ switch (t.format?.bold && (r = `**${r}**`), t.format?.italic && (r = `*${r}*`), t.format?.code && (r = `\`${r}\``), t.type) {
766
766
  case "heading1":
767
767
  return `# ${r}`;
768
768
  case "heading2":
@@ -773,10 +773,10 @@ function Vt(t) {
773
773
  return `> ${r}`;
774
774
  case "code":
775
775
  return `\`\`\`
776
- ${n.content}
776
+ ${t.content}
777
777
  \`\`\``;
778
778
  case "image":
779
- return `![${n.imageAlt || ""}](${n.imageUrl || ""})`;
779
+ return `![${t.imageAlt || ""}](${t.imageUrl || ""})`;
780
780
  case "list":
781
781
  return `- ${r}`;
782
782
  default:
@@ -786,244 +786,244 @@ ${n.content}
786
786
 
787
787
  `);
788
788
  }
789
- function Ht(t) {
790
- return JSON.stringify(t, null, 2);
789
+ function pr(e) {
790
+ return JSON.stringify(e, null, 2);
791
791
  }
792
- const At = ({
793
- options: t = [],
794
- value: n,
792
+ const fr = ({
793
+ options: e = [],
794
+ value: t,
795
795
  onChange: r,
796
- onSearch: i,
797
- placeholder: h = "Select an option...",
796
+ onSearch: a,
797
+ placeholder: o = "Select an option...",
798
798
  disabled: p = !1,
799
- clearable: u = !1,
800
- className: f = "",
801
- renderOption: k,
802
- renderValue: Z,
803
- loading: H = !1,
804
- maxHeight: F = "300px",
805
- debounceMs: s = 300,
806
- searchable: S = !0,
807
- noOptionsMessage: D = "No options found",
808
- ariaLabel: q,
809
- enableCache: A = !1,
810
- cacheTTL: C,
811
- refreshOnOpen: z = !1,
812
- onClearCache: ie,
813
- onForceRefresh: X
799
+ clearable: f = !1,
800
+ className: v = "",
801
+ renderOption: $,
802
+ renderValue: G,
803
+ loading: P = !1,
804
+ maxHeight: q = "300px",
805
+ debounceMs: h = 300,
806
+ searchable: j = !0,
807
+ noOptionsMessage: A = "No options found",
808
+ ariaLabel: Z,
809
+ enableCache: O = !1,
810
+ cacheTTL: S,
811
+ refreshOnOpen: R = !1,
812
+ onClearCache: Q,
813
+ onForceRefresh: K
814
814
  }) => {
815
- const [$, J] = j(!1), [I, O] = j(""), [P, a] = j([]), [v, g] = j(0), [y, K] = j(!1), T = G(null), le = G(null), re = G(null), Q = G(null), oe = G(null), ce = G(i), c = G(null), E = G(!1), _ = G(/* @__PURE__ */ new Map()), M = G(A), U = G(C), m = L((o, b = 0) => o.reduce((Y, V) => {
816
- const R = { ...V, level: b };
817
- return Y.push(R), V.children && V.children.length > 0 && Y.push(...m(V.children, b + 1)), Y;
818
- }, []), []), l = (o) => typeof o == "string" && (o.startsWith("http://") || o.startsWith("https://") || o.startsWith("data:") || o.startsWith("/")), x = te(() => m(P.length > 0 ? P : t).find((b) => b.value === n) || null, [n, t, P, m]), w = L((o, b) => {
819
- if (!b.trim()) return o;
820
- const Y = b.toLowerCase(), V = (R) => R.reduce((ee, de) => {
821
- const ge = de.label.toLowerCase().includes(Y), fe = de.children ? V(de.children) : [];
822
- return (ge || fe.length > 0) && ee.push({
815
+ const [k, V] = F(!1), [C, H] = F(""), [D, l] = F([]), [y, c] = F(0), [b, z] = F(!1), E = ee(null), ne = ee(null), ae = ee(null), X = ee(null), W = ee(null), oe = ee(a), s = ee(null), U = ee(!1), m = ee(/* @__PURE__ */ new Map()), L = ee(O), Y = ee(S), g = N((d, w = 0) => d.reduce((re, B) => {
816
+ const J = { ...B, level: w };
817
+ return re.push(J), B.children && B.children.length > 0 && re.push(...g(B.children, w + 1)), re;
818
+ }, []), []), i = (d) => typeof d == "string" && (d.startsWith("http://") || d.startsWith("https://") || d.startsWith("data:") || d.startsWith("/")), x = te(() => g(D.length > 0 ? D : e).find((w) => w.value === t) || null, [t, e, D, g]), _ = N((d, w) => {
819
+ if (!w.trim()) return d;
820
+ const re = w.toLowerCase(), B = (J) => J.reduce((ie, de) => {
821
+ const fe = de.label.toLowerCase().includes(re), pe = de.children ? B(de.children) : [];
822
+ return (fe || pe.length > 0) && ie.push({
823
823
  ...de,
824
- children: fe.length > 0 ? fe : de.children
825
- }), ee;
824
+ children: pe.length > 0 ? pe : de.children
825
+ }), ie;
826
826
  }, []);
827
- return V(o);
827
+ return B(d);
828
828
  }, []);
829
- ne(() => {
830
- ce.current = i, oe.current = null;
831
- }, [i]), ne(() => {
832
- M.current = A;
833
- }, [A]), ne(() => {
834
- U.current = C;
835
- }, [C]), ne(() => {
836
- ie && ie(() => {
837
- _.current.clear();
838
- }), X && X(() => {
839
- if (!ce.current) return;
840
- c.current && c.current.abort(), c.current = new AbortController();
841
- const o = c.current.signal;
842
- K(!0), (async () => {
829
+ se(() => {
830
+ oe.current = a, W.current = null;
831
+ }, [a]), se(() => {
832
+ L.current = O;
833
+ }, [O]), se(() => {
834
+ Y.current = S;
835
+ }, [S]), se(() => {
836
+ Q && Q(() => {
837
+ m.current.clear();
838
+ }), K && K(() => {
839
+ if (!oe.current) return;
840
+ s.current && s.current.abort(), s.current = new AbortController();
841
+ const d = s.current.signal;
842
+ z(!0), (async () => {
843
843
  try {
844
- const b = Date.now(), Y = I, V = _.current.get(Y), R = V && (!U.current || b - V.timestamp < U.current);
845
- let ee;
846
- M.current && R ? ee = V.data : (ee = await (ce.current ? ce.current(I, o) : i?.(I, o) ?? []), !o.aborted && M.current && _.current.set(Y, { data: ee, timestamp: b })), o.aborted || (a(ee), oe.current = I);
847
- } catch (b) {
848
- console.error(b), a([]);
844
+ const w = Date.now(), re = C, B = m.current.get(re), J = B && (!Y.current || w - B.timestamp < Y.current);
845
+ let ie;
846
+ L.current && J ? ie = B.data : (ie = await (oe.current ? oe.current(C, d) : a?.(C, d) ?? []), !d.aborted && L.current && m.current.set(re, { data: ie, timestamp: w })), d.aborted || (l(ie), W.current = C);
847
+ } catch (w) {
848
+ console.error(w), l([]);
849
849
  } finally {
850
- K(!1);
850
+ z(!1);
851
851
  }
852
852
  })();
853
853
  });
854
- }, [ie, X, I]), ne(() => {
855
- if (i && $) {
856
- const o = oe.current === I, b = !E.current && $;
857
- return o && !(z && b) ? void 0 : (Q.current && clearTimeout(Q.current), Q.current = setTimeout(async () => {
858
- c.current && c.current.abort(), c.current = new AbortController();
859
- const V = c.current.signal;
860
- K(!0);
854
+ }, [Q, K, C, a]), se(() => {
855
+ if (a && k) {
856
+ const d = W.current === C, w = !U.current && k;
857
+ return d && !(R && w) ? void 0 : (X.current && clearTimeout(X.current), X.current = setTimeout(async () => {
858
+ s.current && s.current.abort(), s.current = new AbortController();
859
+ const B = s.current.signal;
860
+ z(!0);
861
861
  try {
862
- let R;
863
- const ee = I, de = _.current.get(ee), ge = Date.now(), fe = de && (!U.current || ge - de.timestamp < U.current);
864
- if (M.current && fe ? R = de.data : (R = await (ce.current ? ce.current(I, V) : i(I, V)), !V.aborted && M.current && _.current.set(ee, { data: R, timestamp: ge })), V.aborted) return;
865
- a(R), oe.current = I;
866
- } catch (R) {
867
- console.error("Error fetching options:", R), a([]);
862
+ let J;
863
+ const ie = C, de = m.current.get(ie), fe = Date.now(), pe = de && (!Y.current || fe - de.timestamp < Y.current);
864
+ if (L.current && pe ? J = de.data : (J = await (oe.current ? oe.current(C, B) : a(C, B)), !B.aborted && L.current && m.current.set(ie, { data: J, timestamp: fe })), B.aborted) return;
865
+ l(J), W.current = C;
866
+ } catch (J) {
867
+ console.error("Error fetching options:", J), l([]);
868
868
  } finally {
869
- K(!1);
869
+ z(!1);
870
870
  }
871
- }, s), () => {
872
- Q.current && clearTimeout(Q.current), c.current && (c.current.abort(), c.current = null);
871
+ }, h), () => {
872
+ X.current && clearTimeout(X.current), s.current && (s.current.abort(), s.current = null);
873
873
  });
874
- } else i || a(w(t, I));
875
- E.current = $;
876
- }, [I, $, t, s, w, z]), ne(() => {
877
- i || a(t);
878
- }, [t, i]), ne(() => {
879
- const o = (b) => {
880
- T.current && !T.current.contains(b.target) && (J(!1), O(""));
874
+ } else a || l(_(e, C));
875
+ U.current = k;
876
+ }, [C, k, e, h, _, R, a]), se(() => {
877
+ a || l(e);
878
+ }, [e, a]), se(() => {
879
+ const d = (w) => {
880
+ E.current && !E.current.contains(w.target) && (V(!1), H(""));
881
881
  };
882
- return document.addEventListener("mousedown", o), () => document.removeEventListener("mousedown", o);
882
+ return document.addEventListener("mousedown", d), () => document.removeEventListener("mousedown", d);
883
883
  }, []);
884
- const N = te(() => m(P.length > 0 ? P : t).filter((b) => !b.disabled), [P, t, m]), ae = te(() => m(P.length > 0 ? P : t), [P, t, m]), B = te(() => {
885
- const o = /* @__PURE__ */ new Map();
886
- return ae.forEach((b) => {
887
- const Y = JSON.stringify({ value: b.value, label: b.label }), V = N.findIndex(
888
- (R) => R.value === b.value && R.label === b.label
884
+ const I = te(() => g(D.length > 0 ? D : e).filter((w) => !w.disabled), [D, e, g]), le = te(() => g(D.length > 0 ? D : e), [D, e, g]), M = te(() => {
885
+ const d = /* @__PURE__ */ new Map();
886
+ return le.forEach((w) => {
887
+ const re = JSON.stringify({ value: w.value, label: w.label }), B = I.findIndex(
888
+ (J) => J.value === w.value && J.label === w.label
889
889
  );
890
- o.set(Y, V);
891
- }), o;
892
- }, [ae, N]), he = (o) => {
890
+ d.set(re, B);
891
+ }), d;
892
+ }, [le, I]), ue = (d) => {
893
893
  if (!p)
894
- switch (o.key) {
894
+ switch (d.key) {
895
895
  case "ArrowDown":
896
- o.preventDefault(), $ ? g((b) => b < N.length - 1 ? b + 1 : 0) : J(!0);
896
+ d.preventDefault(), k ? c((w) => w < I.length - 1 ? w + 1 : 0) : V(!0);
897
897
  break;
898
898
  case "ArrowUp":
899
- o.preventDefault(), $ && g((b) => b > 0 ? b - 1 : N.length - 1);
899
+ d.preventDefault(), k && c((w) => w > 0 ? w - 1 : I.length - 1);
900
900
  break;
901
901
  case "Enter":
902
- o.preventDefault(), $ && N[v] ? ue(N[v]) : J(!$);
902
+ d.preventDefault(), k && I[y] ? he(I[y]) : V(!k);
903
903
  break;
904
904
  case "Escape":
905
- o.preventDefault(), J(!1), O("");
905
+ d.preventDefault(), V(!1), H("");
906
906
  break;
907
907
  case "Tab":
908
- $ && (J(!1), O(""));
908
+ k && (V(!1), H(""));
909
909
  break;
910
910
  }
911
911
  };
912
- ne(() => {
913
- if ($ && re.current) {
914
- const o = re.current.querySelector(
915
- `[data-index="${v}"]`
912
+ se(() => {
913
+ if (k && ae.current) {
914
+ const d = ae.current.querySelector(
915
+ `[data-index="${y}"]`
916
916
  );
917
- o && typeof o.scrollIntoView == "function" && o.scrollIntoView({ block: "nearest" });
917
+ d && typeof d.scrollIntoView == "function" && d.scrollIntoView({ block: "nearest" });
918
918
  }
919
- }, [v, $]);
920
- const ue = (o) => {
921
- o.disabled || (r?.(o.value, o), J(!1), O(""), g(0));
922
- }, se = (o) => {
923
- o.stopPropagation(), r?.(null, null), O("");
924
- }, Ce = () => {
925
- p || J((o) => {
926
- const b = !o;
927
- return b && setTimeout(() => le.current?.focus(), 0), b;
919
+ }, [y, k]);
920
+ const he = (d) => {
921
+ d.disabled || (r?.(d.value, d), V(!1), H(""), c(0));
922
+ }, ce = (d) => {
923
+ d.stopPropagation(), r?.(null, null), H("");
924
+ }, Le = () => {
925
+ p || V((d) => {
926
+ const w = !d;
927
+ return w && setTimeout(() => ne.current?.focus(), 0), w;
928
928
  });
929
929
  };
930
- ne(() => {
931
- $ || (oe.current = null);
932
- }, [$]);
933
- const $e = (o) => {
934
- O(o.target.value), $ || J(!0), g(0);
935
- }, Ne = (o) => {
936
- const b = (o.level || 0) * 20;
937
- return /* @__PURE__ */ d("div", { className: "uiforge-combobox-option-content", style: { paddingLeft: `${b}px` }, children: [
938
- o.icon && /* @__PURE__ */ e("span", { className: "uiforge-combobox-option-icon", children: l(o.icon) ? /* @__PURE__ */ e(
930
+ se(() => {
931
+ k || (W.current = null);
932
+ }, [k]);
933
+ const Me = (d) => {
934
+ H(d.target.value), k || V(!0), c(0);
935
+ }, Ae = (d) => {
936
+ const w = (d.level || 0) * 20;
937
+ return /* @__PURE__ */ u("div", { className: "uiforge-combobox-option-content", style: { paddingLeft: `${w}px` }, children: [
938
+ d.icon && /* @__PURE__ */ n("span", { className: "uiforge-combobox-option-icon", children: i(d.icon) ? /* @__PURE__ */ n(
939
939
  "img",
940
940
  {
941
- src: o.icon,
941
+ src: d.icon,
942
942
  alt: "",
943
943
  className: "uiforge-combobox-option-icon-img"
944
944
  }
945
- ) : o.icon }),
946
- /* @__PURE__ */ e("span", { className: "uiforge-combobox-option-label", children: o.label })
945
+ ) : d.icon }),
946
+ /* @__PURE__ */ n("span", { className: "uiforge-combobox-option-label", children: d.label })
947
947
  ] });
948
- }, Me = (o) => o ? /* @__PURE__ */ d("div", { className: "uiforge-combobox-value-content", children: [
949
- o.icon && /* @__PURE__ */ e("span", { className: "uiforge-combobox-value-icon", children: l(o.icon) ? /* @__PURE__ */ e("img", { src: o.icon, alt: "", className: "uiforge-combobox-value-icon-img" }) : o.icon }),
950
- /* @__PURE__ */ e("span", { className: "uiforge-combobox-value-label", children: o.label })
951
- ] }) : h, W = "uiforge-combobox", Le = [
952
- W,
953
- $ && `${W}--open`,
954
- p && `${W}--disabled`,
955
- f
948
+ }, Se = (d) => d ? /* @__PURE__ */ u("div", { className: "uiforge-combobox-value-content", children: [
949
+ d.icon && /* @__PURE__ */ n("span", { className: "uiforge-combobox-value-icon", children: i(d.icon) ? /* @__PURE__ */ n("img", { src: d.icon, alt: "", className: "uiforge-combobox-value-icon-img" }) : d.icon }),
950
+ /* @__PURE__ */ n("span", { className: "uiforge-combobox-value-label", children: d.label })
951
+ ] }) : o, T = "uiforge-combobox", Ue = [
952
+ T,
953
+ k && `${T}--open`,
954
+ p && `${T}--disabled`,
955
+ v
956
956
  ].filter(Boolean).join(" ");
957
- return /* @__PURE__ */ d(
957
+ return /* @__PURE__ */ u(
958
958
  "div",
959
959
  {
960
- ref: T,
961
- className: Le,
962
- onKeyDown: he,
960
+ ref: E,
961
+ className: Ue,
962
+ onKeyDown: ue,
963
963
  role: "combobox",
964
- "aria-expanded": $,
964
+ "aria-expanded": k,
965
965
  "aria-haspopup": "listbox",
966
- "aria-label": q,
966
+ "aria-label": Z,
967
967
  "aria-disabled": p,
968
968
  tabIndex: p ? -1 : 0,
969
969
  children: [
970
- /* @__PURE__ */ d("div", { className: `${W}-control`, onClick: Ce, children: [
971
- S && $ ? /* @__PURE__ */ e(
970
+ /* @__PURE__ */ u("div", { className: `${T}-control`, onClick: Le, children: [
971
+ j && k ? /* @__PURE__ */ n(
972
972
  "input",
973
973
  {
974
- ref: le,
974
+ ref: ne,
975
975
  type: "text",
976
- className: `${W}-input`,
977
- value: I,
978
- onChange: $e,
979
- placeholder: h,
976
+ className: `${T}-input`,
977
+ value: C,
978
+ onChange: Me,
979
+ placeholder: o,
980
980
  disabled: p,
981
981
  "aria-autocomplete": "list",
982
- "aria-controls": `${W}-listbox`
982
+ "aria-controls": `${T}-listbox`
983
983
  }
984
- ) : /* @__PURE__ */ e("div", { className: `${W}-value`, children: Z ? Z(x) : Me(x) }),
985
- /* @__PURE__ */ d("div", { className: `${W}-indicators`, children: [
986
- u && n !== null && n !== void 0 && !p && /* @__PURE__ */ e(
984
+ ) : /* @__PURE__ */ n("div", { className: `${T}-value`, children: G ? G(x) : Se(x) }),
985
+ /* @__PURE__ */ u("div", { className: `${T}-indicators`, children: [
986
+ f && t !== null && t !== void 0 && !p && /* @__PURE__ */ n(
987
987
  "button",
988
988
  {
989
989
  type: "button",
990
- className: `${W}-clear`,
991
- onClick: se,
990
+ className: `${T}-clear`,
991
+ onClick: ce,
992
992
  "aria-label": "Clear selection",
993
993
  tabIndex: -1,
994
994
  children: "×"
995
995
  }
996
996
  ),
997
- /* @__PURE__ */ e("span", { className: `${W}-arrow`, children: "▼" })
997
+ /* @__PURE__ */ n("span", { className: `${T}-arrow`, children: "▼" })
998
998
  ] })
999
999
  ] }),
1000
- $ && /* @__PURE__ */ e(
1000
+ k && /* @__PURE__ */ n(
1001
1001
  "div",
1002
1002
  {
1003
- ref: re,
1004
- className: `${W}-dropdown`,
1005
- style: { maxHeight: F },
1003
+ ref: ae,
1004
+ className: `${T}-dropdown`,
1005
+ style: { maxHeight: q },
1006
1006
  role: "listbox",
1007
- id: `${W}-listbox`,
1008
- children: H || y ? /* @__PURE__ */ e("div", { className: `${W}-loading`, children: "Loading..." }) : N.length === 0 ? /* @__PURE__ */ e("div", { className: `${W}-no-options`, children: D }) : ae.map((o) => {
1009
- const b = JSON.stringify({ value: o.value, label: o.label }), Y = B.get(b) ?? -1, V = o.value === n, R = Y === v, ee = [
1010
- `${W}-option`,
1011
- V && `${W}-option--selected`,
1012
- R && `${W}-option--highlighted`,
1013
- o.disabled && `${W}-option--disabled`
1007
+ id: `${T}-listbox`,
1008
+ children: P || b ? /* @__PURE__ */ n("div", { className: `${T}-loading`, children: "Loading..." }) : I.length === 0 ? /* @__PURE__ */ n("div", { className: `${T}-no-options`, children: A }) : le.map((d) => {
1009
+ const w = JSON.stringify({ value: d.value, label: d.label }), re = M.get(w) ?? -1, B = d.value === t, J = re === y, ie = [
1010
+ `${T}-option`,
1011
+ B && `${T}-option--selected`,
1012
+ J && `${T}-option--highlighted`,
1013
+ d.disabled && `${T}-option--disabled`
1014
1014
  ].filter(Boolean).join(" ");
1015
- return /* @__PURE__ */ e(
1015
+ return /* @__PURE__ */ n(
1016
1016
  "div",
1017
1017
  {
1018
- className: ee,
1019
- onClick: () => ue(o),
1018
+ className: ie,
1019
+ onClick: () => he(d),
1020
1020
  role: "option",
1021
- "aria-selected": V,
1022
- "aria-disabled": o.disabled,
1023
- "data-index": Y,
1024
- children: k ? k(o) : Ne(o)
1021
+ "aria-selected": B,
1022
+ "aria-disabled": d.disabled,
1023
+ "data-index": re,
1024
+ children: $ ? $(d) : Ae(d)
1025
1025
  },
1026
- b
1026
+ w
1027
1027
  );
1028
1028
  })
1029
1029
  }
@@ -1031,51 +1031,51 @@ const At = ({
1031
1031
  ]
1032
1032
  }
1033
1033
  );
1034
- }, He = ({
1035
- size: t = 16,
1036
- className: n = "",
1034
+ }, je = ({
1035
+ size: e = 16,
1036
+ className: t = "",
1037
1037
  color: r = "currentColor"
1038
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), Ae = ({
1039
- size: t = 16,
1040
- className: n = "",
1038
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), Oe = ({
1039
+ size: e = 16,
1040
+ className: t = "",
1041
1041
  color: r = "currentColor"
1042
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), Ee = ({
1043
- size: t = 16,
1044
- className: n = "",
1042
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), Re = ({
1043
+ size: e = 16,
1044
+ className: t = "",
1045
1045
  color: r = "currentColor"
1046
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1047
- /* @__PURE__ */ e("path", { d: "M8 9.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z" }),
1048
- /* @__PURE__ */ e("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" })
1049
- ] }), ze = ({
1050
- size: t = 16,
1051
- className: n = "",
1046
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1047
+ /* @__PURE__ */ n("path", { d: "M8 9.5a1.5 1.5 0 100-3 1.5 1.5 0 000 3z" }),
1048
+ /* @__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" })
1049
+ ] }), He = ({
1050
+ size: e = 16,
1051
+ className: t = "",
1052
1052
  color: r = "currentColor"
1053
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), Pe = ({
1054
- size: t = 16,
1055
- className: n = "",
1053
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), ze = ({
1054
+ size: e = 16,
1055
+ className: t = "",
1056
1056
  color: r = "currentColor"
1057
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), Te = ({
1058
- size: t = 16,
1059
- className: n = "",
1057
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), We = ({
1058
+ size: e = 16,
1059
+ className: t = "",
1060
1060
  color: r = "currentColor"
1061
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), We = ({
1062
- size: t = 16,
1063
- className: n = "",
1061
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), Te = ({
1062
+ size: e = 16,
1063
+ className: t = "",
1064
1064
  color: r = "currentColor"
1065
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), Oe = ({
1066
- size: t = 16,
1067
- className: n = "",
1065
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), Fe = ({
1066
+ size: e = 16,
1067
+ className: t = "",
1068
1068
  color: r = "currentColor"
1069
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), Ue = ({
1070
- size: t = 16,
1071
- className: n = "",
1069
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), qe = ({
1070
+ size: e = 16,
1071
+ className: t = "",
1072
1072
  color: r = "currentColor"
1073
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), Re = ({
1074
- size: t = 20,
1075
- className: n = "",
1073
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), Ze = ({
1074
+ size: e = 20,
1075
+ className: t = "",
1076
1076
  color: r = "currentColor"
1077
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 20 20", fill: "none", className: n, children: [
1078
- /* @__PURE__ */ e(
1077
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 20 20", fill: "none", className: t, children: [
1078
+ /* @__PURE__ */ n(
1079
1079
  "path",
1080
1080
  {
1081
1081
  d: "M10 2L6 6M10 2L14 6M10 2V7.5",
@@ -1085,7 +1085,7 @@ const At = ({
1085
1085
  strokeLinejoin: "round"
1086
1086
  }
1087
1087
  ),
1088
- /* @__PURE__ */ e(
1088
+ /* @__PURE__ */ n(
1089
1089
  "path",
1090
1090
  {
1091
1091
  d: "M3 10H17",
@@ -1095,7 +1095,7 @@ const At = ({
1095
1095
  strokeDasharray: "1 2"
1096
1096
  }
1097
1097
  ),
1098
- /* @__PURE__ */ e(
1098
+ /* @__PURE__ */ n(
1099
1099
  "path",
1100
1100
  {
1101
1101
  d: "M10 18L6 14M10 18L14 14M10 18V12.5",
@@ -1105,12 +1105,12 @@ const At = ({
1105
1105
  strokeLinejoin: "round"
1106
1106
  }
1107
1107
  )
1108
- ] }), je = ({
1109
- size: t = 20,
1110
- className: n = "",
1108
+ ] }), Ke = ({
1109
+ size: e = 20,
1110
+ className: t = "",
1111
1111
  color: r = "currentColor"
1112
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 20 20", fill: "none", className: n, children: [
1113
- /* @__PURE__ */ e(
1112
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 20 20", fill: "none", className: t, children: [
1113
+ /* @__PURE__ */ n(
1114
1114
  "path",
1115
1115
  {
1116
1116
  d: "M10 7.5L6 4M10 7.5L14 4M10 7.5V2",
@@ -1120,7 +1120,7 @@ const At = ({
1120
1120
  strokeLinejoin: "round"
1121
1121
  }
1122
1122
  ),
1123
- /* @__PURE__ */ e(
1123
+ /* @__PURE__ */ n(
1124
1124
  "path",
1125
1125
  {
1126
1126
  d: "M3 10H17",
@@ -1130,7 +1130,7 @@ const At = ({
1130
1130
  strokeDasharray: "1 2"
1131
1131
  }
1132
1132
  ),
1133
- /* @__PURE__ */ e(
1133
+ /* @__PURE__ */ n(
1134
1134
  "path",
1135
1135
  {
1136
1136
  d: "M10 12.5L6 16M10 12.5L14 16M10 12.5V18",
@@ -1140,70 +1140,64 @@ const At = ({
1140
1140
  strokeLinejoin: "round"
1141
1141
  }
1142
1142
  )
1143
- ] }), Fe = ({
1144
- size: t = 16,
1145
- className: n = "",
1143
+ ] }), Ye = ({
1144
+ size: e = 16,
1145
+ className: t = "",
1146
1146
  color: r = "currentColor"
1147
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), qe = ({
1148
- size: t = 16,
1149
- className: n = "",
1147
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), Je = ({
1148
+ size: e = 16,
1149
+ className: t = "",
1150
1150
  color: r = "currentColor"
1151
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("path", { d: "M13.78 4.22a.75.75 0 010 1.06l-7.25 7.25a.75.75 0 01-1.06 0L2.22 9.28a.75.75 0 011.06-1.06L6 10.94l6.72-6.72a.75.75 0 011.06 0z" }) }), Ke = ({
1152
- size: t = 16,
1153
- className: n = "",
1151
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: /* @__PURE__ */ n("path", { d: "M13.78 4.22a.75.75 0 010 1.06l-7.25 7.25a.75.75 0 01-1.06 0L2.22 9.28a.75.75 0 011.06-1.06L6 10.94l6.72-6.72a.75.75 0 011.06 0z" }) }), Ge = ({
1152
+ size: e = 16,
1153
+ className: t = "",
1154
1154
  color: r = "currentColor"
1155
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: "none", className: n, children: [
1156
- /* @__PURE__ */ e("circle", { cx: "8", cy: "8", r: "7", stroke: r, strokeWidth: "1.5" }),
1157
- /* @__PURE__ */ e(
1158
- "path",
1159
- {
1160
- d: "M8 1C11.866 1 15 4.134 15 8C15 11.866 11.866 15 8 15",
1161
- fill: r
1162
- }
1163
- ),
1164
- /* @__PURE__ */ e("circle", { cx: "8", cy: "5", r: "2", fill: r === "currentColor" ? "white" : "#fff" }),
1165
- /* @__PURE__ */ e("circle", { cx: "8", cy: "11", r: "2", fill: r }),
1166
- /* @__PURE__ */ e("circle", { cx: "8", cy: "5", r: "0.5", fill: r }),
1167
- /* @__PURE__ */ e("circle", { cx: "8", cy: "11", r: "0.5", fill: r === "currentColor" ? "white" : "#fff" })
1168
- ] }), Ze = ({
1169
- size: t = 16,
1170
- className: n = "",
1155
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: "none", className: t, children: [
1156
+ /* @__PURE__ */ n("circle", { cx: "8", cy: "8", r: "7", stroke: r, strokeWidth: "1.5" }),
1157
+ /* @__PURE__ */ n("path", { d: "M8 1C11.866 1 15 4.134 15 8C15 11.866 11.866 15 8 15", fill: r }),
1158
+ /* @__PURE__ */ n("circle", { cx: "8", cy: "5", r: "2", fill: r === "currentColor" ? "white" : "#fff" }),
1159
+ /* @__PURE__ */ n("circle", { cx: "8", cy: "11", r: "2", fill: r }),
1160
+ /* @__PURE__ */ n("circle", { cx: "8", cy: "5", r: "0.5", fill: r }),
1161
+ /* @__PURE__ */ n("circle", { cx: "8", cy: "11", r: "0.5", fill: r === "currentColor" ? "white" : "#fff" })
1162
+ ] }), Qe = ({
1163
+ size: e = 16,
1164
+ className: t = "",
1171
1165
  color: r = "currentColor"
1172
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1173
- /* @__PURE__ */ e("circle", { cx: "8", cy: "3", r: "1.5" }),
1174
- /* @__PURE__ */ e("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" }),
1175
- /* @__PURE__ */ e("path", { d: "M4 9L2 10M12 9L14 10", strokeWidth: "1", stroke: r, fill: "none" })
1176
- ] }), Ge = ({
1177
- size: t = 16,
1178
- className: n = "",
1166
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1167
+ /* @__PURE__ */ n("circle", { cx: "8", cy: "3", r: "1.5" }),
1168
+ /* @__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" }),
1169
+ /* @__PURE__ */ n("path", { d: "M4 9L2 10M12 9L14 10", strokeWidth: "1", stroke: r, fill: "none" })
1170
+ ] }), Xe = ({
1171
+ size: e = 16,
1172
+ className: t = "",
1179
1173
  color: r = "currentColor"
1180
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1181
- /* @__PURE__ */ e("circle", { cx: "8", cy: "2.5", r: "1.5" }),
1182
- /* @__PURE__ */ e("path", { d: "M8 4.5L6 8L4 14H6L7 10H9L10 14H12L10 8L8 4.5Z" }),
1183
- /* @__PURE__ */ e("path", { d: "M6 8L3 6M10 8L13 6", strokeWidth: "1.5", stroke: r, fill: "none" })
1184
- ] }), Je = ({
1185
- size: t = 16,
1186
- className: n = "",
1174
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1175
+ /* @__PURE__ */ n("circle", { cx: "8", cy: "2.5", r: "1.5" }),
1176
+ /* @__PURE__ */ n("path", { d: "M8 4.5L6 8L4 14H6L7 10H9L10 14H12L10 8L8 4.5Z" }),
1177
+ /* @__PURE__ */ n("path", { d: "M6 8L3 6M10 8L13 6", strokeWidth: "1.5", stroke: r, fill: "none" })
1178
+ ] }), et = ({
1179
+ size: e = 16,
1180
+ className: t = "",
1187
1181
  color: r = "currentColor"
1188
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1189
- /* @__PURE__ */ e("rect", { x: "1", y: "6", width: "2", height: "4", rx: "0.5" }),
1190
- /* @__PURE__ */ e("rect", { x: "13", y: "6", width: "2", height: "4", rx: "0.5" }),
1191
- /* @__PURE__ */ e("rect", { x: "3", y: "5.5", width: "1", height: "5" }),
1192
- /* @__PURE__ */ e("rect", { x: "12", y: "5.5", width: "1", height: "5" }),
1193
- /* @__PURE__ */ e("rect", { x: "4", y: "7", width: "8", height: "2", rx: "0.5" })
1194
- ] }), Ye = ({
1195
- size: t = 16,
1196
- className: n = "",
1182
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1183
+ /* @__PURE__ */ n("rect", { x: "1", y: "6", width: "2", height: "4", rx: "0.5" }),
1184
+ /* @__PURE__ */ n("rect", { x: "13", y: "6", width: "2", height: "4", rx: "0.5" }),
1185
+ /* @__PURE__ */ n("rect", { x: "3", y: "5.5", width: "1", height: "5" }),
1186
+ /* @__PURE__ */ n("rect", { x: "12", y: "5.5", width: "1", height: "5" }),
1187
+ /* @__PURE__ */ n("rect", { x: "4", y: "7", width: "8", height: "2", rx: "0.5" })
1188
+ ] }), tt = ({
1189
+ size: e = 16,
1190
+ className: t = "",
1197
1191
  color: r = "currentColor"
1198
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1199
- /* @__PURE__ */ e("circle", { cx: "10", cy: "2.5", r: "1.5" }),
1200
- /* @__PURE__ */ e("path", { d: "M9 4.5L8 6L6 7L4 8L6 9L8 8L10 7L11 9L10 12L9 14H11L12 11L13 9L12 6L10 4.5H9Z" }),
1201
- /* @__PURE__ */ e("path", { d: "M6 14H4L5 11" })
1202
- ] }), Qe = ({
1203
- size: t = 16,
1204
- className: n = "",
1192
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1193
+ /* @__PURE__ */ n("circle", { cx: "10", cy: "2.5", r: "1.5" }),
1194
+ /* @__PURE__ */ n("path", { d: "M9 4.5L8 6L6 7L4 8L6 9L8 8L10 7L11 9L10 12L9 14H11L12 11L13 9L12 6L10 4.5H9Z" }),
1195
+ /* @__PURE__ */ n("path", { d: "M6 14H4L5 11" })
1196
+ ] }), rt = ({
1197
+ size: e = 16,
1198
+ className: t = "",
1205
1199
  color: r = "currentColor"
1206
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: "none", className: n, children: /* @__PURE__ */ e(
1200
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: "none", className: t, children: /* @__PURE__ */ n(
1207
1201
  "path",
1208
1202
  {
1209
1203
  d: "M2 8H5L6.5 5L8 11L9.5 8H14",
@@ -1212,43 +1206,43 @@ const At = ({
1212
1206
  strokeLinecap: "round",
1213
1207
  strokeLinejoin: "round"
1214
1208
  }
1215
- ) }), Xe = ({
1216
- size: t = 16,
1217
- className: n = "",
1209
+ ) }), nt = ({
1210
+ size: e = 16,
1211
+ className: t = "",
1218
1212
  color: r = "currentColor"
1219
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1220
- /* @__PURE__ */ e("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" }),
1221
- /* @__PURE__ */ e("circle", { cx: "7", cy: "3", r: "1.5" })
1222
- ] }), et = ({
1223
- size: t = 16,
1224
- className: n = "",
1213
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1214
+ /* @__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" }),
1215
+ /* @__PURE__ */ n("circle", { cx: "7", cy: "3", r: "1.5" })
1216
+ ] }), at = ({
1217
+ size: e = 16,
1218
+ className: t = "",
1225
1219
  color: r = "currentColor"
1226
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1227
- /* @__PURE__ */ e("rect", { x: "2", y: "2", width: "12", height: "3", rx: "0.5" }),
1228
- /* @__PURE__ */ e("rect", { x: "2", y: "6.5", width: "12", height: "3", rx: "0.5" }),
1229
- /* @__PURE__ */ e("rect", { x: "2", y: "11", width: "12", height: "3", rx: "0.5" }),
1230
- /* @__PURE__ */ e("circle", { cx: "4", cy: "3.5", r: "0.5" }),
1231
- /* @__PURE__ */ e("circle", { cx: "4", cy: "8", r: "0.5" }),
1232
- /* @__PURE__ */ e("circle", { cx: "4", cy: "12.5", r: "0.5" })
1233
- ] }), tt = ({
1234
- size: t = 16,
1235
- className: n = "",
1220
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1221
+ /* @__PURE__ */ n("rect", { x: "2", y: "2", width: "12", height: "3", rx: "0.5" }),
1222
+ /* @__PURE__ */ n("rect", { x: "2", y: "6.5", width: "12", height: "3", rx: "0.5" }),
1223
+ /* @__PURE__ */ n("rect", { x: "2", y: "11", width: "12", height: "3", rx: "0.5" }),
1224
+ /* @__PURE__ */ n("circle", { cx: "4", cy: "3.5", r: "0.5" }),
1225
+ /* @__PURE__ */ n("circle", { cx: "4", cy: "8", r: "0.5" }),
1226
+ /* @__PURE__ */ n("circle", { cx: "4", cy: "12.5", r: "0.5" })
1227
+ ] }), ot = ({
1228
+ size: e = 16,
1229
+ className: t = "",
1236
1230
  color: r = "currentColor"
1237
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1238
- /* @__PURE__ */ e("ellipse", { cx: "8", cy: "3", rx: "5", ry: "2" }),
1239
- /* @__PURE__ */ e("path", { d: "M3 3V13C3 14.1 5.2 15 8 15C10.8 15 13 14.1 13 13V3" }),
1240
- /* @__PURE__ */ e("path", { d: "M3 8C3 9.1 5.2 10 8 10C10.8 10 13 9.1 13 8" })
1241
- ] }), rt = ({
1242
- size: t = 16,
1243
- className: n = "",
1231
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1232
+ /* @__PURE__ */ n("ellipse", { cx: "8", cy: "3", rx: "5", ry: "2" }),
1233
+ /* @__PURE__ */ n("path", { d: "M3 3V13C3 14.1 5.2 15 8 15C10.8 15 13 14.1 13 13V3" }),
1234
+ /* @__PURE__ */ n("path", { d: "M3 8C3 9.1 5.2 10 8 10C10.8 10 13 9.1 13 8" })
1235
+ ] }), it = ({
1236
+ size: e = 16,
1237
+ className: t = "",
1244
1238
  color: r = "currentColor"
1245
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), nt = ({
1246
- size: t = 16,
1247
- className: n = "",
1239
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), st = ({
1240
+ size: e = 16,
1241
+ className: t = "",
1248
1242
  color: r = "currentColor"
1249
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1250
- /* @__PURE__ */ e("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" }),
1251
- /* @__PURE__ */ e(
1243
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1244
+ /* @__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" }),
1245
+ /* @__PURE__ */ n(
1252
1246
  "path",
1253
1247
  {
1254
1248
  d: "M3 5.5L6 8L3 10.5",
@@ -1259,245 +1253,330 @@ const At = ({
1259
1253
  fill: "none"
1260
1254
  }
1261
1255
  ),
1262
- /* @__PURE__ */ e("line", { x1: "8", y1: "10.5", x2: "12", y2: "10.5", stroke: "white", strokeWidth: "1.5", strokeLinecap: "round" })
1263
- ] }), it = ({
1264
- size: t = 16,
1265
- className: n = "",
1266
- color: r = "currentColor"
1267
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1268
- /* @__PURE__ */ e("path", { d: "M4.75 7.5a3.25 3.25 0 116.5 0v3.75a3.25 3.25 0 01-6.5 0V7.5z" }),
1269
- /* @__PURE__ */ e("path", { d: "M5.75 7.5c0-.69.56-1.25 1.25-1.25h2c.69 0 1.25.56 1.25 1.25M4 5.5L2 4M12 5.5L14 4M4 9H1M15 9H12M4 12L2 13.5M12 12L14 13.5", stroke: r, strokeWidth: "1.5", fill: "none" }),
1270
- /* @__PURE__ */ e("ellipse", { cx: "8", cy: "4", rx: "2.5", ry: "1.5" })
1256
+ /* @__PURE__ */ n(
1257
+ "line",
1258
+ {
1259
+ x1: "8",
1260
+ y1: "10.5",
1261
+ x2: "12",
1262
+ y2: "10.5",
1263
+ stroke: "white",
1264
+ strokeWidth: "1.5",
1265
+ strokeLinecap: "round"
1266
+ }
1267
+ )
1271
1268
  ] }), lt = ({
1272
- size: t = 16,
1273
- className: n = "",
1274
- color: r = "currentColor"
1275
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), ct = ({
1276
- size: t = 16,
1277
- className: n = "",
1269
+ size: e = 16,
1270
+ className: t = "",
1278
1271
  color: r = "currentColor"
1279
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1280
- /* @__PURE__ */ e("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" }),
1281
- /* @__PURE__ */ e("path", { d: "M2 12C2 12 0 14 0 16C2 16 4 14 4 14" })
1282
- ] }), at = ({
1283
- size: t = 16,
1284
- className: n = "",
1285
- color: r = "currentColor"
1286
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1287
- /* @__PURE__ */ e("rect", { x: "6", y: "6", width: "4", height: "4", rx: "0.5" }),
1288
- /* @__PURE__ */ e("path", { d: "M4 4L2 2M4 12L2 14M12 4L14 2M12 12L14 14", strokeWidth: "1.5", stroke: r, strokeLinecap: "round" }),
1289
- /* @__PURE__ */ e("rect", { x: "1", y: "1", width: "1.5", height: "1.5" }),
1290
- /* @__PURE__ */ e("rect", { x: "13.5", y: "1", width: "1.5", height: "1.5" }),
1291
- /* @__PURE__ */ e("rect", { x: "1", y: "13.5", width: "1.5", height: "1.5" }),
1292
- /* @__PURE__ */ e("rect", { x: "13.5", y: "13.5", width: "1.5", height: "1.5" }),
1293
- /* @__PURE__ */ e("circle", { cx: "8", cy: "8", r: "1" })
1294
- ] }), ot = ({
1295
- size: t = 16,
1296
- className: n = "",
1272
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1273
+ /* @__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" }),
1274
+ /* @__PURE__ */ n(
1275
+ "path",
1276
+ {
1277
+ d: "M5.75 7.5c0-.69.56-1.25 1.25-1.25h2c.69 0 1.25.56 1.25 1.25M4 5.5L2 4M12 5.5L14 4M4 9H1M15 9H12M4 12L2 13.5M12 12L14 13.5",
1278
+ stroke: r,
1279
+ strokeWidth: "1.5",
1280
+ fill: "none"
1281
+ }
1282
+ ),
1283
+ /* @__PURE__ */ n("ellipse", { cx: "8", cy: "4", rx: "2.5", ry: "1.5" })
1284
+ ] }), ct = ({
1285
+ size: e = 16,
1286
+ className: t = "",
1297
1287
  color: r = "currentColor"
1298
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1299
- /* @__PURE__ */ e("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" }),
1300
- /* @__PURE__ */ e("ellipse", { cx: "6", cy: "5.5", rx: "1.5", ry: "2", fill: "white" }),
1301
- /* @__PURE__ */ e("ellipse", { cx: "10", cy: "5.5", rx: "1.5", ry: "2", fill: "white" }),
1302
- /* @__PURE__ */ e("circle", { cx: "6", cy: "5.5", r: "0.75", fill: r }),
1303
- /* @__PURE__ */ e("circle", { cx: "10", cy: "5.5", r: "0.75", fill: r })
1304
- ] }), st = ({
1305
- size: t = 16,
1306
- className: n = "",
1288
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), dt = ({
1289
+ size: e = 16,
1290
+ className: t = "",
1307
1291
  color: r = "currentColor"
1308
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1309
- /* @__PURE__ */ e("circle", { cx: "8", cy: "8", r: "5" }),
1310
- /* @__PURE__ */ e("ellipse", { cx: "8", cy: "8", rx: "8", ry: "2.5", fill: "none", stroke: r, strokeWidth: "1", opacity: "0.6" }),
1311
- /* @__PURE__ */ e("circle", { cx: "6", cy: "6", r: "1", opacity: "0.4", fill: r === "currentColor" ? "white" : "#fff" })
1312
- ] }), dt = ({
1313
- size: t = 16,
1314
- className: n = "",
1292
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1293
+ /* @__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" }),
1294
+ /* @__PURE__ */ n("path", { d: "M2 12C2 12 0 14 0 16C2 16 4 14 4 14" })
1295
+ ] }), ut = ({
1296
+ size: e = 16,
1297
+ className: t = "",
1315
1298
  color: r = "currentColor"
1316
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1317
- /* @__PURE__ */ e("path", { d: "M1 8L6 6L14 2L12 10L10 8L8 14H6L8 8L1 8Z" }),
1318
- /* @__PURE__ */ e("path", { d: "M10 8L12 10", strokeWidth: "1.5", stroke: r })
1299
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1300
+ /* @__PURE__ */ n("rect", { x: "6", y: "6", width: "4", height: "4", rx: "0.5" }),
1301
+ /* @__PURE__ */ n(
1302
+ "path",
1303
+ {
1304
+ d: "M4 4L2 2M4 12L2 14M12 4L14 2M12 12L14 14",
1305
+ strokeWidth: "1.5",
1306
+ stroke: r,
1307
+ strokeLinecap: "round"
1308
+ }
1309
+ ),
1310
+ /* @__PURE__ */ n("rect", { x: "1", y: "1", width: "1.5", height: "1.5" }),
1311
+ /* @__PURE__ */ n("rect", { x: "13.5", y: "1", width: "1.5", height: "1.5" }),
1312
+ /* @__PURE__ */ n("rect", { x: "1", y: "13.5", width: "1.5", height: "1.5" }),
1313
+ /* @__PURE__ */ n("rect", { x: "13.5", y: "13.5", width: "1.5", height: "1.5" }),
1314
+ /* @__PURE__ */ n("circle", { cx: "8", cy: "8", r: "1" })
1319
1315
  ] }), ht = ({
1320
- size: t = 16,
1321
- className: n = "",
1316
+ size: e = 16,
1317
+ className: t = "",
1322
1318
  color: r = "currentColor"
1323
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), ut = ({
1324
- size: t = 16,
1325
- className: n = "",
1319
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1320
+ /* @__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" }),
1321
+ /* @__PURE__ */ n("ellipse", { cx: "6", cy: "5.5", rx: "1.5", ry: "2", fill: "white" }),
1322
+ /* @__PURE__ */ n("ellipse", { cx: "10", cy: "5.5", rx: "1.5", ry: "2", fill: "white" }),
1323
+ /* @__PURE__ */ n("circle", { cx: "6", cy: "5.5", r: "0.75", fill: r }),
1324
+ /* @__PURE__ */ n("circle", { cx: "10", cy: "5.5", r: "0.75", fill: r })
1325
+ ] }), mt = ({
1326
+ size: e = 16,
1327
+ className: t = "",
1326
1328
  color: r = "currentColor"
1327
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1328
- /* @__PURE__ */ e("circle", { cx: "5", cy: "4", r: "2" }),
1329
- /* @__PURE__ */ e("circle", { cx: "11", cy: "4", r: "2" }),
1330
- /* @__PURE__ */ e("path", { d: "M1 14V12C1 10.5 2.5 9 5 9C7.5 9 9 10.5 9 12V14H1Z" }),
1331
- /* @__PURE__ */ e("path", { d: "M7 14V12C7 10.5 8.5 9 11 9C13.5 9 15 10.5 15 12V14H7Z" })
1329
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1330
+ /* @__PURE__ */ n("circle", { cx: "8", cy: "8", r: "5" }),
1331
+ /* @__PURE__ */ n(
1332
+ "ellipse",
1333
+ {
1334
+ cx: "8",
1335
+ cy: "8",
1336
+ rx: "8",
1337
+ ry: "2.5",
1338
+ fill: "none",
1339
+ stroke: r,
1340
+ strokeWidth: "1",
1341
+ opacity: "0.6"
1342
+ }
1343
+ ),
1344
+ /* @__PURE__ */ n("circle", { cx: "6", cy: "6", r: "1", opacity: "0.4", fill: r === "currentColor" ? "white" : "#fff" })
1345
+ ] }), pt = ({
1346
+ size: e = 16,
1347
+ className: t = "",
1348
+ color: r = "currentColor"
1349
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1350
+ /* @__PURE__ */ n("path", { d: "M1 8L6 6L14 2L12 10L10 8L8 14H6L8 8L1 8Z" }),
1351
+ /* @__PURE__ */ n("path", { d: "M10 8L12 10", strokeWidth: "1.5", stroke: r })
1332
1352
  ] }), ft = ({
1333
- size: t = 16,
1334
- className: n = "",
1353
+ size: e = 16,
1354
+ className: t = "",
1355
+ color: r = "currentColor"
1356
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), vt = ({
1357
+ size: e = 16,
1358
+ className: t = "",
1335
1359
  color: r = "currentColor"
1336
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1337
- /* @__PURE__ */ e("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" }),
1338
- /* @__PURE__ */ e("path", { d: "M10 0v3.5c0 .275.225.5.5.5H14", fill: r === "currentColor" ? "white" : "#fff" })
1360
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1361
+ /* @__PURE__ */ n("circle", { cx: "5", cy: "4", r: "2" }),
1362
+ /* @__PURE__ */ n("circle", { cx: "11", cy: "4", r: "2" }),
1363
+ /* @__PURE__ */ n("path", { d: "M1 14V12C1 10.5 2.5 9 5 9C7.5 9 9 10.5 9 12V14H1Z" }),
1364
+ /* @__PURE__ */ n("path", { d: "M7 14V12C7 10.5 8.5 9 11 9C13.5 9 15 10.5 15 12V14H7Z" })
1339
1365
  ] }), gt = ({
1340
- size: t = 16,
1341
- className: n = "",
1366
+ size: e = 16,
1367
+ className: t = "",
1342
1368
  color: r = "currentColor"
1343
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), mt = ({
1344
- size: t = 16,
1345
- className: n = "",
1369
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1370
+ /* @__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" }),
1371
+ /* @__PURE__ */ n("path", { d: "M10 0v3.5c0 .275.225.5.5.5H14", fill: r === "currentColor" ? "white" : "#fff" })
1372
+ ] }), yt = ({
1373
+ size: e = 16,
1374
+ className: t = "",
1346
1375
  color: r = "currentColor"
1347
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), pt = ({
1348
- size: t = 16,
1349
- className: n = "",
1376
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), bt = ({
1377
+ size: e = 16,
1378
+ className: t = "",
1350
1379
  color: r = "currentColor"
1351
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), vt = ({
1352
- size: t = 16,
1353
- className: n = "",
1380
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), wt = ({
1381
+ size: e = 16,
1382
+ className: t = "",
1354
1383
  color: r = "currentColor"
1355
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1356
- /* @__PURE__ */ e("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" }),
1357
- /* @__PURE__ */ e("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" })
1358
- ] }), bt = ({
1359
- size: t = 16,
1360
- className: n = "",
1384
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), _t = ({
1385
+ size: e = 16,
1386
+ className: t = "",
1361
1387
  color: r = "currentColor"
1362
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1363
- /* @__PURE__ */ e("path", { d: "M6 1h4v1H6V1zM5.5 3h5L13 13c0 1.1-.9 2-2 2H5c-1.1 0-2-.9-2-2L5.5 3z" }),
1364
- /* @__PURE__ */ e("circle", { cx: "7", cy: "8", r: "1", fill: r === "currentColor" ? "white" : "#fff", opacity: "0.5" }),
1365
- /* @__PURE__ */ e("circle", { cx: "9", cy: "10", r: "0.75", fill: r === "currentColor" ? "white" : "#fff", opacity: "0.5" })
1366
- ] }), yt = ({
1367
- size: t = 16,
1368
- className: n = "",
1388
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1389
+ /* @__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" }),
1390
+ /* @__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" })
1391
+ ] }), xt = ({
1392
+ size: e = 16,
1393
+ className: t = "",
1369
1394
  color: r = "currentColor"
1370
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1371
- /* @__PURE__ */ e("path", { d: "M8 0L0 3v5c0 5 3 7.5 8 8 5-.5 8-3 8-8V3L8 0z" }),
1372
- /* @__PURE__ */ e("path", { d: "M7 10L4.5 7.5l1-1L7 8l3.5-3.5 1 1L7 10z", fill: r === "currentColor" ? "white" : "#fff" })
1373
- ] }), _t = ({
1374
- size: t = 16,
1375
- className: n = "",
1395
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1396
+ /* @__PURE__ */ n("path", { d: "M6 1h4v1H6V1zM5.5 3h5L13 13c0 1.1-.9 2-2 2H5c-1.1 0-2-.9-2-2L5.5 3z" }),
1397
+ /* @__PURE__ */ n("circle", { cx: "7", cy: "8", r: "1", fill: r === "currentColor" ? "white" : "#fff", opacity: "0.5" }),
1398
+ /* @__PURE__ */ n(
1399
+ "circle",
1400
+ {
1401
+ cx: "9",
1402
+ cy: "10",
1403
+ r: "0.75",
1404
+ fill: r === "currentColor" ? "white" : "#fff",
1405
+ opacity: "0.5"
1406
+ }
1407
+ )
1408
+ ] }), $t = ({
1409
+ size: e = 16,
1410
+ className: t = "",
1376
1411
  color: r = "currentColor"
1377
- }) => /* @__PURE__ */ d("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: [
1378
- /* @__PURE__ */ e("rect", { x: "1", y: "1", width: "9", height: "11", rx: "1" }),
1379
- /* @__PURE__ */ e("line", { x1: "3", y1: "4", x2: "7", y2: "4", stroke: r === "currentColor" ? "white" : "#fff", strokeWidth: "1" }),
1380
- /* @__PURE__ */ e("line", { x1: "3", y1: "6.5", x2: "7", y2: "6.5", stroke: r === "currentColor" ? "white" : "#fff", strokeWidth: "1" }),
1381
- /* @__PURE__ */ e("circle", { cx: "11", cy: "11", r: "3", fill: "none", stroke: r, strokeWidth: "1.5" }),
1382
- /* @__PURE__ */ e("line", { x1: "13", y1: "13", x2: "15.5", y2: "15.5", stroke: r, strokeWidth: "1.5", strokeLinecap: "round" })
1383
- ] }), wt = ({
1384
- size: t = 16,
1385
- className: n = "",
1412
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1413
+ /* @__PURE__ */ n("path", { d: "M8 0L0 3v5c0 5 3 7.5 8 8 5-.5 8-3 8-8V3L8 0z" }),
1414
+ /* @__PURE__ */ n(
1415
+ "path",
1416
+ {
1417
+ d: "M7 10L4.5 7.5l1-1L7 8l3.5-3.5 1 1L7 10z",
1418
+ fill: r === "currentColor" ? "white" : "#fff"
1419
+ }
1420
+ )
1421
+ ] }), kt = ({
1422
+ size: e = 16,
1423
+ className: t = "",
1386
1424
  color: r = "currentColor"
1387
- }) => /* @__PURE__ */ e("svg", { width: t, height: t, viewBox: "0 0 16 16", fill: r, className: n, children: /* @__PURE__ */ e("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" }) }), we = {
1388
- commit: He,
1389
- pr: Ae,
1390
- issue: Ee,
1391
- comment: ze,
1392
- star: Pe,
1393
- fork: Te,
1394
- merge: We,
1395
- release: Oe,
1396
- deploy: Ue
1397
- }, xe = {
1398
- unfold: Re,
1399
- fold: je,
1400
- close: Fe,
1401
- check: qe
1402
- }, Et = {
1403
- taichi: Ke,
1404
- meditation: Ze,
1405
- yoga: Ge
1406
- }, zt = {
1407
- dumbbell: Je,
1408
- running: Ye,
1409
- heartrate: Qe,
1410
- strength: Xe
1411
- }, Pt = {
1412
- server: et,
1413
- database: tt,
1414
- cloud: rt,
1415
- terminal: nt,
1416
- bug: it,
1417
- code: lt
1418
- }, Tt = {
1419
- rocket: ct,
1420
- satellite: at,
1421
- alien: ot,
1422
- planet: st,
1423
- telescope: dt
1424
- }, Wt = {
1425
- chart: ht,
1426
- meeting: ut,
1427
- document: ft,
1428
- calendar: gt,
1429
- briefcase: mt
1430
- }, Ot = {
1431
- gitbranch: pt,
1432
- prdraft: vt,
1433
- testing: bt,
1434
- deployment: yt,
1435
- review: _t,
1436
- build: wt
1437
- }, xt = (t) => {
1438
- const n = we[t] || we.commit;
1439
- return /* @__PURE__ */ e(n, { size: 16 });
1440
- }, ve = (t, n = 2) => {
1441
- if (t.length === 0) return [];
1425
+ }) => /* @__PURE__ */ u("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, children: [
1426
+ /* @__PURE__ */ n("rect", { x: "1", y: "1", width: "9", height: "11", rx: "1" }),
1427
+ /* @__PURE__ */ n(
1428
+ "line",
1429
+ {
1430
+ x1: "3",
1431
+ y1: "4",
1432
+ x2: "7",
1433
+ y2: "4",
1434
+ stroke: r === "currentColor" ? "white" : "#fff",
1435
+ strokeWidth: "1"
1436
+ }
1437
+ ),
1438
+ /* @__PURE__ */ n(
1439
+ "line",
1440
+ {
1441
+ x1: "3",
1442
+ y1: "6.5",
1443
+ x2: "7",
1444
+ y2: "6.5",
1445
+ stroke: r === "currentColor" ? "white" : "#fff",
1446
+ strokeWidth: "1"
1447
+ }
1448
+ ),
1449
+ /* @__PURE__ */ n("circle", { cx: "11", cy: "11", r: "3", fill: "none", stroke: r, strokeWidth: "1.5" }),
1450
+ /* @__PURE__ */ n(
1451
+ "line",
1452
+ {
1453
+ x1: "13",
1454
+ y1: "13",
1455
+ x2: "15.5",
1456
+ y2: "15.5",
1457
+ stroke: r,
1458
+ strokeWidth: "1.5",
1459
+ strokeLinecap: "round"
1460
+ }
1461
+ )
1462
+ ] }), Ct = ({
1463
+ size: e = 16,
1464
+ className: t = "",
1465
+ color: r = "currentColor"
1466
+ }) => /* @__PURE__ */ n("svg", { width: e, height: e, viewBox: "0 0 16 16", fill: r, className: t, 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" }) }), xe = {
1467
+ commit: je,
1468
+ pr: Oe,
1469
+ issue: Re,
1470
+ comment: He,
1471
+ star: ze,
1472
+ fork: We,
1473
+ merge: Te,
1474
+ release: Fe,
1475
+ deploy: qe
1476
+ }, $e = {
1477
+ unfold: Ze,
1478
+ fold: Ke,
1479
+ close: Ye,
1480
+ check: Je
1481
+ }, vr = {
1482
+ taichi: Ge,
1483
+ meditation: Qe,
1484
+ yoga: Xe
1485
+ }, gr = {
1486
+ dumbbell: et,
1487
+ running: tt,
1488
+ heartrate: rt,
1489
+ strength: nt
1490
+ }, yr = {
1491
+ server: at,
1492
+ database: ot,
1493
+ cloud: it,
1494
+ terminal: st,
1495
+ bug: lt,
1496
+ code: ct
1497
+ }, br = {
1498
+ rocket: dt,
1499
+ satellite: ut,
1500
+ alien: ht,
1501
+ planet: mt,
1502
+ telescope: pt
1503
+ }, wr = {
1504
+ chart: ft,
1505
+ meeting: vt,
1506
+ document: gt,
1507
+ calendar: yt,
1508
+ briefcase: bt
1509
+ }, _r = {
1510
+ gitbranch: wt,
1511
+ prdraft: _t,
1512
+ testing: xt,
1513
+ deployment: $t,
1514
+ review: kt,
1515
+ build: Ct
1516
+ }, It = (e) => {
1517
+ const t = xe[e] || xe.commit;
1518
+ return /* @__PURE__ */ n(t, { size: 16 });
1519
+ }, ye = (e, t = 2) => {
1520
+ if (e.length === 0) return [];
1442
1521
  const r = [];
1443
- let i = [], h = null;
1444
- return t.forEach((p, u) => {
1445
- h === p.type ? i.push(p) : (i.length >= n && h ? r.push(ke(i, h)) : i.forEach((f) => {
1522
+ let a = [], o = null;
1523
+ return e.forEach((p, f) => {
1524
+ o === p.type ? a.push(p) : (a.length >= t && o ? r.push(ke(a, o)) : a.forEach((v) => {
1446
1525
  r.push({
1447
- id: f.id.toString(),
1448
- type: f.type,
1526
+ id: v.id.toString(),
1527
+ type: v.type,
1449
1528
  count: 1,
1450
- title: f.title,
1451
- timestamp: new Date(f.timestamp),
1452
- icon: f.icon,
1453
- events: [f]
1529
+ title: v.title,
1530
+ timestamp: new Date(v.timestamp),
1531
+ icon: v.icon,
1532
+ events: [v]
1454
1533
  });
1455
- }), i = [p], h = p.type), u === t.length - 1 && (i.length >= n && h ? r.push(ke(i, h)) : i.forEach((f) => {
1534
+ }), a = [p], o = p.type), f === e.length - 1 && (a.length >= t && o ? r.push(ke(a, o)) : a.forEach((v) => {
1456
1535
  r.push({
1457
- id: f.id.toString(),
1458
- type: f.type,
1536
+ id: v.id.toString(),
1537
+ type: v.type,
1459
1538
  count: 1,
1460
- title: f.title,
1461
- timestamp: new Date(f.timestamp),
1462
- icon: f.icon,
1463
- events: [f]
1539
+ title: v.title,
1540
+ timestamp: new Date(v.timestamp),
1541
+ icon: v.icon,
1542
+ events: [v]
1464
1543
  });
1465
1544
  }));
1466
1545
  }), r;
1467
- }, ke = (t, n) => {
1468
- const r = t.reduce(
1469
- (u, f) => {
1470
- const k = f.metadata?.repository || "unknown";
1471
- return u[k] || (u[k] = []), u[k].push(f), u;
1546
+ }, ke = (e, t) => {
1547
+ const r = e.reduce(
1548
+ (f, v) => {
1549
+ const $ = v.metadata?.repository || "unknown";
1550
+ return f[$] || (f[$] = []), f[$].push(v), f;
1472
1551
  },
1473
1552
  {}
1474
- ), i = Object.entries(r), h = i.length > 1;
1553
+ ), a = Object.entries(r), o = a.length > 1;
1475
1554
  let p = "";
1476
- if (h)
1477
- p = `Created ${t.length} ${be(n)} in ${i.length} repositories`;
1555
+ if (o)
1556
+ p = `Created ${e.length} ${be(t)} in ${a.length} repositories`;
1478
1557
  else {
1479
- const u = i[0][0];
1480
- p = `Created ${t.length} ${be(n)}${u !== "unknown" ? ` in ${u}` : ""}`;
1558
+ const f = a[0][0];
1559
+ p = `Created ${e.length} ${be(t)}${f !== "unknown" ? ` in ${f}` : ""}`;
1481
1560
  }
1482
1561
  return {
1483
- id: `group-${n}-${t[0].id}`,
1484
- type: n,
1485
- count: t.length,
1562
+ id: `group-${t}-${e[0].id}`,
1563
+ type: t,
1564
+ count: e.length,
1486
1565
  title: p,
1487
- timestamp: new Date(t[0].timestamp),
1488
- icon: t[0].icon,
1489
- events: t,
1490
- children: h ? i.map(([u, f]) => ({
1491
- id: `group-${n}-${u}`,
1492
- type: n,
1493
- count: f.length,
1494
- title: `Created ${f.length} ${be(n)} in ${u}`,
1495
- timestamp: new Date(f[0].timestamp),
1496
- icon: f[0].icon,
1497
- events: f
1566
+ timestamp: new Date(e[0].timestamp),
1567
+ icon: e[0].icon,
1568
+ events: e,
1569
+ children: o ? a.map(([f, v]) => ({
1570
+ id: `group-${t}-${f}`,
1571
+ type: t,
1572
+ count: v.length,
1573
+ title: `Created ${v.length} ${be(t)} in ${f}`,
1574
+ timestamp: new Date(v[0].timestamp),
1575
+ icon: v[0].icon,
1576
+ events: v
1498
1577
  })) : void 0
1499
1578
  };
1500
- }, be = (t) => ({
1579
+ }, be = (e) => ({
1501
1580
  pr: "pull requests",
1502
1581
  issue: "issues",
1503
1582
  commit: "commits",
@@ -1507,186 +1586,186 @@ const At = ({
1507
1586
  merge: "merges",
1508
1587
  release: "releases",
1509
1588
  deploy: "deployments"
1510
- })[t] || `${t}s`, ye = (t) => {
1511
- if (t.length === 0) return [];
1512
- const n = [];
1589
+ })[e] || `${e}s`, we = (e) => {
1590
+ if (e.length === 0) return [];
1591
+ const t = [];
1513
1592
  let r = null;
1514
- return t.forEach((i, h) => {
1515
- if ("type" in i && i.type === "date-separator") {
1516
- n.push(i);
1593
+ return e.forEach((a, o) => {
1594
+ if ("type" in a && a.type === "date-separator") {
1595
+ t.push(a);
1517
1596
  return;
1518
1597
  }
1519
- const u = i.timestamp, f = `${u.getFullYear()}-${u.getMonth()}`;
1520
- if (f !== r) {
1521
- const k = {
1522
- id: `sep-${h}`,
1598
+ const f = a.timestamp, v = `${f.getFullYear()}-${f.getMonth()}`;
1599
+ if (v !== r) {
1600
+ const $ = {
1601
+ id: `sep-${o}`,
1523
1602
  type: "date-separator",
1524
- date: u,
1525
- label: kt(u)
1603
+ date: f,
1604
+ label: Nt(f)
1526
1605
  };
1527
- n.push(k), r = f;
1606
+ t.push($), r = v;
1528
1607
  }
1529
- n.push(i);
1530
- }), n;
1531
- }, kt = (t) => t.toLocaleDateString("en-US", { month: "long", year: "numeric" }), Ct = (t) => {
1532
- const n = typeof t == "string" ? new Date(t) : t, i = (/* @__PURE__ */ new Date()).getTime() - n.getTime(), h = Math.floor(i / 1e3), p = Math.floor(h / 60), u = Math.floor(p / 60), f = Math.floor(u / 24);
1533
- return h < 60 ? "just now" : p < 60 ? `${p}m ago` : u < 24 ? `${u}h ago` : f < 30 ? `${f}d ago` : n.toLocaleDateString();
1534
- }, Ut = ({
1535
- events: t,
1536
- theme: n = "light",
1608
+ t.push(a);
1609
+ }), t;
1610
+ }, Nt = (e) => e.toLocaleDateString("en-US", { month: "long", year: "numeric" }), Lt = (e) => {
1611
+ const t = typeof e == "string" ? new Date(e) : e, a = (/* @__PURE__ */ new Date()).getTime() - t.getTime(), o = Math.floor(a / 1e3), p = Math.floor(o / 60), f = Math.floor(p / 60), v = Math.floor(f / 24);
1612
+ return o < 60 ? "just now" : p < 60 ? `${p}m ago` : f < 24 ? `${f}h ago` : v < 30 ? `${v}d ago` : t.toLocaleDateString();
1613
+ }, xr = ({
1614
+ events: e,
1615
+ theme: t = "light",
1537
1616
  className: r = "",
1538
- showLoadMore: i = !0,
1539
- loading: h = !1,
1617
+ showLoadMore: a = !0,
1618
+ loading: o = !1,
1540
1619
  onLoadMore: p,
1541
- pagination: u,
1542
- maxHeight: f,
1543
- showMoreThreshold: k = 100,
1544
- initiallyExpandedAll: Z = !1,
1545
- emptyMessage: H = "No activity to display",
1546
- onToggleExpand: F,
1547
- enableGrouping: s = !0,
1548
- groupingThreshold: S = 2,
1549
- showDateSeparators: D = !0,
1550
- showTimeline: q = !0,
1551
- scale: A = 1,
1552
- renderIcon: C,
1553
- renderEvent: z
1620
+ pagination: f,
1621
+ maxHeight: v,
1622
+ showMoreThreshold: $ = 100,
1623
+ initiallyExpandedAll: G = !1,
1624
+ emptyMessage: P = "No activity to display",
1625
+ onToggleExpand: q,
1626
+ enableGrouping: h = !0,
1627
+ groupingThreshold: j = 2,
1628
+ showDateSeparators: A = !0,
1629
+ showTimeline: Z = !0,
1630
+ scale: O = 1,
1631
+ renderIcon: S,
1632
+ renderEvent: R
1554
1633
  }) => {
1555
- const [ie, X] = j(() => {
1556
- const c = /* @__PURE__ */ new Set();
1557
- return (s ? D ? ye(ve(t, S)) : ve(t, S) : t.map((_) => ({
1558
- id: _.id.toString(),
1559
- type: _.type,
1634
+ const [Q, K] = F(() => {
1635
+ const s = /* @__PURE__ */ new Set();
1636
+ return (h ? A ? we(ye(e, j)) : ye(e, j) : e.map((m) => ({
1637
+ id: m.id.toString(),
1638
+ type: m.type,
1560
1639
  count: 1,
1561
- title: _.title,
1562
- timestamp: new Date(_.timestamp),
1563
- icon: _.icon,
1564
- events: [_]
1565
- }))).forEach((_) => {
1566
- if ("events" in _ && _.type !== "date-separator") {
1567
- const M = _;
1568
- (Z || M.events.some((U) => U.initiallyExpanded)) && c.add(M.id), M.children && M.children.forEach((U) => {
1569
- (Z || U.events.some((m) => m.initiallyExpanded)) && c.add(U.id);
1640
+ title: m.title,
1641
+ timestamp: new Date(m.timestamp),
1642
+ icon: m.icon,
1643
+ events: [m]
1644
+ }))).forEach((m) => {
1645
+ if ("events" in m && m.type !== "date-separator") {
1646
+ const L = m;
1647
+ (G || L.events.some((Y) => Y.initiallyExpanded)) && s.add(L.id), L.children && L.children.forEach((Y) => {
1648
+ (G || Y.events.some((g) => g.initiallyExpanded)) && s.add(Y.id);
1570
1649
  });
1571
1650
  }
1572
- }), c;
1573
- }), [$, J] = j(!1), I = G(null), O = G(null), P = te(() => {
1574
- if (!s) {
1575
- const E = t.map((_) => ({
1576
- id: _.id.toString(),
1577
- type: _.type,
1651
+ }), s;
1652
+ }), [k, V] = F(!1), C = ee(null), H = ee(null), D = te(() => {
1653
+ if (!h) {
1654
+ const U = e.map((m) => ({
1655
+ id: m.id.toString(),
1656
+ type: m.type,
1578
1657
  count: 1,
1579
- title: _.title,
1580
- timestamp: new Date(_.timestamp),
1581
- icon: _.icon,
1582
- events: [_]
1658
+ title: m.title,
1659
+ timestamp: new Date(m.timestamp),
1660
+ icon: m.icon,
1661
+ events: [m]
1583
1662
  }));
1584
- return D ? ye(E) : E;
1663
+ return A ? we(U) : U;
1585
1664
  }
1586
- const c = ve(t, S);
1587
- return D ? ye(c) : c;
1588
- }, [t, s, S, D]), a = L(() => {
1589
- if (!O.current || !i || !p) return;
1590
- const { scrollTop: c, scrollHeight: E, clientHeight: _ } = O.current, M = E - c - _;
1591
- J(M <= k);
1592
- }, [i, p, k]);
1593
- ne(() => {
1594
- const c = O.current;
1595
- if (c)
1596
- return c.addEventListener("scroll", a), a(), () => {
1597
- c.removeEventListener("scroll", a);
1665
+ const s = ye(e, j);
1666
+ return A ? we(s) : s;
1667
+ }, [e, h, j, A]), l = N(() => {
1668
+ if (!H.current || !a || !p) return;
1669
+ const { scrollTop: s, scrollHeight: U, clientHeight: m } = H.current, L = U - s - m;
1670
+ V(L <= $);
1671
+ }, [a, p, $]);
1672
+ se(() => {
1673
+ const s = H.current;
1674
+ if (s)
1675
+ return s.addEventListener("scroll", l), l(), () => {
1676
+ s.removeEventListener("scroll", l);
1598
1677
  };
1599
- }, [a]);
1600
- const v = L(
1601
- (c, E) => {
1602
- X((_) => {
1603
- const M = new Set(_), U = M.has(c);
1604
- return U ? M.delete(c) : M.add(c), F?.(E, !U), M;
1678
+ }, [l]);
1679
+ const y = N(
1680
+ (s, U) => {
1681
+ K((m) => {
1682
+ const L = new Set(m), Y = L.has(s);
1683
+ return Y ? L.delete(s) : L.add(s), q?.(U, !Y), L;
1605
1684
  });
1606
1685
  },
1607
- [F]
1608
- ), g = (c, E = !1) => {
1609
- const _ = ie.has(c.id), M = c.children && c.children.length > 0, U = c.count > 1, m = c.count === 1 && c.events[0]?.description, l = U || M || m, x = c.count === 1 && c.events.length === 1 ? c.events[0].id : c.id;
1610
- return z && c.count === 1 && c.events.length === 1 ? /* @__PURE__ */ d(
1686
+ [q]
1687
+ ), c = (s, U = !1) => {
1688
+ const m = Q.has(s.id), L = s.children && s.children.length > 0, Y = s.count > 1, g = s.count === 1 && s.events[0]?.description, i = Y || L || g, x = s.count === 1 && s.events.length === 1 ? s.events[0].id : s.id;
1689
+ return R && s.count === 1 && s.events.length === 1 ? /* @__PURE__ */ u(
1611
1690
  "div",
1612
1691
  {
1613
- className: `activity-stream__item ${E ? "activity-stream__item--child" : ""}`,
1614
- "data-event-id": c.id,
1692
+ className: `activity-stream__item ${U ? "activity-stream__item--child" : ""}`,
1693
+ "data-event-id": s.id,
1615
1694
  children: [
1616
- q && !E && /* @__PURE__ */ e("div", { className: "activity-stream__timeline-marker" }),
1617
- z(c.events[0])
1695
+ Z && !U && /* @__PURE__ */ n("div", { className: "activity-stream__timeline-marker" }),
1696
+ R(s.events[0])
1618
1697
  ]
1619
1698
  },
1620
- c.id
1621
- ) : /* @__PURE__ */ d(
1699
+ s.id
1700
+ ) : /* @__PURE__ */ u(
1622
1701
  "div",
1623
1702
  {
1624
- className: `activity-stream__item ${E ? "activity-stream__item--child" : ""}`,
1625
- "data-event-id": c.id,
1703
+ className: `activity-stream__item ${U ? "activity-stream__item--child" : ""}`,
1704
+ "data-event-id": s.id,
1626
1705
  children: [
1627
- q && !E && /* @__PURE__ */ e("div", { className: "activity-stream__timeline-marker" }),
1628
- /* @__PURE__ */ e("div", { className: "activity-stream__icon", children: C && c.events.length === 1 ? C(c.events[0]) : c.icon || xt(c.type) }),
1629
- /* @__PURE__ */ d("div", { className: "activity-stream__content", children: [
1630
- /* @__PURE__ */ d(
1706
+ Z && !U && /* @__PURE__ */ n("div", { className: "activity-stream__timeline-marker" }),
1707
+ /* @__PURE__ */ n("div", { className: "activity-stream__icon", children: S && s.events.length === 1 ? S(s.events[0]) : s.icon || It(s.type) }),
1708
+ /* @__PURE__ */ u("div", { className: "activity-stream__content", children: [
1709
+ /* @__PURE__ */ u(
1631
1710
  "div",
1632
1711
  {
1633
- className: `activity-stream__header ${l ? "activity-stream__header--clickable" : ""}`,
1634
- onClick: () => l && v(c.id, x),
1635
- onKeyDown: (w) => {
1636
- l && (w.key === "Enter" || w.key === " ") && (w.preventDefault(), v(c.id, x));
1712
+ className: `activity-stream__header ${i ? "activity-stream__header--clickable" : ""}`,
1713
+ onClick: () => i && y(s.id, x),
1714
+ onKeyDown: (_) => {
1715
+ i && (_.key === "Enter" || _.key === " ") && (_.preventDefault(), y(s.id, x));
1637
1716
  },
1638
- role: l ? "button" : void 0,
1639
- tabIndex: l ? 0 : void 0,
1640
- "aria-expanded": l ? _ : void 0,
1717
+ role: i ? "button" : void 0,
1718
+ tabIndex: i ? 0 : void 0,
1719
+ "aria-expanded": i ? m : void 0,
1641
1720
  children: [
1642
- /* @__PURE__ */ e("div", { className: "activity-stream__title", children: c.title }),
1643
- /* @__PURE__ */ e("div", { className: "activity-stream__timestamp", children: Ct(c.timestamp) }),
1644
- l && /* @__PURE__ */ e("div", { className: "activity-stream__toggle", children: _ ? /* @__PURE__ */ e(xe.fold, { size: 16 }) : /* @__PURE__ */ e(xe.unfold, { size: 16 }) })
1721
+ /* @__PURE__ */ n("div", { className: "activity-stream__title", children: s.title }),
1722
+ /* @__PURE__ */ n("div", { className: "activity-stream__timestamp", children: Lt(s.timestamp) }),
1723
+ i && /* @__PURE__ */ n("div", { className: "activity-stream__toggle", children: m ? /* @__PURE__ */ n($e.fold, { size: 16 }) : /* @__PURE__ */ n($e.unfold, { size: 16 }) })
1645
1724
  ]
1646
1725
  }
1647
1726
  ),
1648
- _ && M && c.children && /* @__PURE__ */ e("div", { className: "activity-stream__children", children: c.children.map((w) => g(w, !0)) }),
1649
- _ && !M && c.events.length > 1 && /* @__PURE__ */ e("div", { className: "activity-stream__events-list", children: c.events.map(
1650
- (w) => z ? /* @__PURE__ */ e("div", { className: "activity-stream__event-item", children: z(w) }, w.id) : /* @__PURE__ */ d("div", { className: "activity-stream__event-item", children: [
1651
- /* @__PURE__ */ e("div", { className: "activity-stream__event-title", children: w.title }),
1652
- w.description && /* @__PURE__ */ e("div", { className: "activity-stream__event-description", children: w.description })
1653
- ] }, w.id)
1727
+ m && L && s.children && /* @__PURE__ */ n("div", { className: "activity-stream__children", children: s.children.map((_) => c(_, !0)) }),
1728
+ m && !L && s.events.length > 1 && /* @__PURE__ */ n("div", { className: "activity-stream__events-list", children: s.events.map(
1729
+ (_) => R ? /* @__PURE__ */ n("div", { className: "activity-stream__event-item", children: R(_) }, _.id) : /* @__PURE__ */ u("div", { className: "activity-stream__event-item", children: [
1730
+ /* @__PURE__ */ n("div", { className: "activity-stream__event-title", children: _.title }),
1731
+ _.description && /* @__PURE__ */ n("div", { className: "activity-stream__event-description", children: _.description })
1732
+ ] }, _.id)
1654
1733
  ) }),
1655
- _ && c.count === 1 && c.events[0].description && /* @__PURE__ */ e("div", { className: "activity-stream__description", children: c.events[0].description })
1734
+ m && s.count === 1 && s.events[0].description && /* @__PURE__ */ n("div", { className: "activity-stream__description", children: s.events[0].description })
1656
1735
  ] })
1657
1736
  ]
1658
1737
  },
1659
- c.id
1738
+ s.id
1660
1739
  );
1661
- }, y = (c) => /* @__PURE__ */ d("div", { className: "activity-stream__date-separator", children: [
1662
- /* @__PURE__ */ e("div", { className: "activity-stream__date-label", children: c.label }),
1663
- /* @__PURE__ */ e("div", { className: "activity-stream__date-line" })
1664
- ] }, c.id), K = u?.hasMore !== void 0 ? u.hasMore : u?.totalItems !== void 0 ? t.length < u.totalItems : !0, T = "activity-stream", le = `${T}--${n}`, re = q ? `${T}--with-timeline` : "";
1665
- let Q = `${T} ${le} ${re} ${r}`.trim();
1666
- return A && A < 1 && (Q = `${Q} ${T}--compact`), A && A > 1 && (Q = `${Q} ${T}--spacious`), /* @__PURE__ */ e("div", { ref: I, className: Q, "data-theme": n, children: /* @__PURE__ */ d(
1740
+ }, b = (s) => /* @__PURE__ */ u("div", { className: "activity-stream__date-separator", children: [
1741
+ /* @__PURE__ */ n("div", { className: "activity-stream__date-label", children: s.label }),
1742
+ /* @__PURE__ */ n("div", { className: "activity-stream__date-line" })
1743
+ ] }, s.id), z = f?.hasMore !== void 0 ? f.hasMore : f?.totalItems !== void 0 ? e.length < f.totalItems : !0, E = "activity-stream", ne = `${E}--${t}`, ae = Z ? `${E}--with-timeline` : "";
1744
+ let X = `${E} ${ne} ${ae} ${r}`.trim();
1745
+ return O && O < 1 && (X = `${X} ${E}--compact`), O && O > 1 && (X = `${X} ${E}--spacious`), /* @__PURE__ */ n("div", { ref: C, className: X, "data-theme": t, children: /* @__PURE__ */ u(
1667
1746
  "div",
1668
1747
  {
1669
- ref: O,
1748
+ ref: H,
1670
1749
  className: "activity-stream__container",
1671
1750
  style: {
1672
- ...f ? { maxHeight: f } : void 0,
1673
- ...{ "--activity-stream-scale": A }
1751
+ ...v ? { maxHeight: v } : void 0,
1752
+ ...{ "--activity-stream-scale": O }
1674
1753
  },
1675
1754
  children: [
1676
- P.length === 0 ? /* @__PURE__ */ e("div", { className: "activity-stream__empty", children: H }) : /* @__PURE__ */ e("div", { className: "activity-stream__items", children: P.map(
1677
- (c) => "type" in c && c.type === "date-separator" ? y(c) : g(c)
1755
+ D.length === 0 ? /* @__PURE__ */ n("div", { className: "activity-stream__empty", children: P }) : /* @__PURE__ */ n("div", { className: "activity-stream__items", children: D.map(
1756
+ (s) => "type" in s && s.type === "date-separator" ? b(s) : c(s)
1678
1757
  ) }),
1679
- h && /* @__PURE__ */ d("div", { className: "activity-stream__loading", children: [
1680
- /* @__PURE__ */ e("div", { className: "activity-stream__spinner" }),
1681
- /* @__PURE__ */ e("span", { children: "Loading..." })
1758
+ o && /* @__PURE__ */ u("div", { className: "activity-stream__loading", children: [
1759
+ /* @__PURE__ */ n("div", { className: "activity-stream__spinner" }),
1760
+ /* @__PURE__ */ n("span", { children: "Loading..." })
1682
1761
  ] }),
1683
- i && !h && K && p && /* @__PURE__ */ e(
1762
+ a && !o && z && p && /* @__PURE__ */ n(
1684
1763
  "div",
1685
1764
  {
1686
- className: `activity-stream__load-more ${$ ? "activity-stream__load-more--visible" : ""}`,
1765
+ className: `activity-stream__load-more ${k ? "activity-stream__load-more--visible" : ""}`,
1687
1766
  onClick: p,
1688
- onKeyDown: (c) => {
1689
- (c.key === "Enter" || c.key === " ") && (c.preventDefault(), p());
1767
+ onKeyDown: (s) => {
1768
+ (s.key === "Enter" || s.key === " ") && (s.preventDefault(), p());
1690
1769
  },
1691
1770
  role: "button",
1692
1771
  tabIndex: 0,
@@ -1697,7 +1776,776 @@ const At = ({
1697
1776
  ]
1698
1777
  }
1699
1778
  ) });
1700
- }, $t = () => /* @__PURE__ */ d(
1779
+ }, Mt = {
1780
+ name: "youtube",
1781
+ displayName: "YouTube",
1782
+ domains: ["youtube.com", "youtu.be", "youtube-nocookie.com"],
1783
+ tier: "major",
1784
+ supportsAutoplay: !0,
1785
+ supportsApi: !0,
1786
+ extractVideoId: (e) => {
1787
+ try {
1788
+ const t = new URL(e);
1789
+ return t.hostname.replace("www.", "") === "youtu.be" ? t.pathname.slice(1).split("?")[0] : t.searchParams.has("v") ? t.searchParams.get("v") : t.pathname.startsWith("/embed/") || t.pathname.startsWith("/v/") ? t.pathname.split("/")[2] : null;
1790
+ } catch {
1791
+ return null;
1792
+ }
1793
+ },
1794
+ getEmbedUrl: (e, t = {}) => {
1795
+ const r = new URLSearchParams();
1796
+ t.autoplay && r.set("autoplay", "1"), t.muted && r.set("mute", "1"), t.loop && (r.set("loop", "1"), r.set("playlist", e)), t.startTime && r.set("start", String(t.startTime)), t.controls === !1 && r.set("controls", "0");
1797
+ const a = "https://www.youtube.com", o = r.toString();
1798
+ return `${a}/embed/${e}${o ? `?${o}` : ""}`;
1799
+ }
1800
+ }, At = {
1801
+ name: "vimeo",
1802
+ displayName: "Vimeo",
1803
+ domains: ["vimeo.com"],
1804
+ tier: "major",
1805
+ supportsAutoplay: !0,
1806
+ supportsApi: !0,
1807
+ extractVideoId: (e) => {
1808
+ try {
1809
+ const t = new URL(e), r = t.hostname.replace("www.", "");
1810
+ if (r !== "vimeo.com" && r !== "player.vimeo.com")
1811
+ return null;
1812
+ if (t.pathname.startsWith("/video/"))
1813
+ return t.pathname.split("/")[2];
1814
+ const a = t.pathname.split("/").filter(Boolean);
1815
+ if (a.length > 0) {
1816
+ const o = a[0];
1817
+ if (/^\d+$/.test(o))
1818
+ return o;
1819
+ }
1820
+ return null;
1821
+ } catch {
1822
+ return null;
1823
+ }
1824
+ },
1825
+ getEmbedUrl: (e, t = {}) => {
1826
+ const r = new URLSearchParams();
1827
+ t.autoplay && r.set("autoplay", "1"), t.muted && r.set("muted", "1"), t.loop && r.set("loop", "1"), t.startTime && r.set("t", `${t.startTime}s`), t.controls === !1 && r.set("controls", "0");
1828
+ const a = r.toString();
1829
+ return `https://player.vimeo.com/video/${e}${a ? `?${a}` : ""}`;
1830
+ }
1831
+ }, St = {
1832
+ name: "dailymotion",
1833
+ displayName: "Dailymotion",
1834
+ domains: ["dailymotion.com", "dai.ly"],
1835
+ tier: "major",
1836
+ supportsAutoplay: !0,
1837
+ supportsApi: !0,
1838
+ extractVideoId: (e) => {
1839
+ try {
1840
+ const t = new URL(e), r = t.hostname.replace("www.", "");
1841
+ if (r === "dai.ly")
1842
+ return t.pathname.slice(1).split("?")[0];
1843
+ if (r === "dailymotion.com") {
1844
+ if (t.pathname.startsWith("/video/"))
1845
+ return t.pathname.split("/")[2].split("_")[0];
1846
+ if (t.pathname.startsWith("/embed/video/"))
1847
+ return t.pathname.split("/")[3].split("?")[0];
1848
+ }
1849
+ return null;
1850
+ } catch {
1851
+ return null;
1852
+ }
1853
+ },
1854
+ getEmbedUrl: (e, t = {}) => {
1855
+ const r = new URLSearchParams();
1856
+ t.autoplay && r.set("autoplay", "1"), t.muted && r.set("mute", "1"), t.loop && r.set("loop", "1"), t.startTime && r.set("start", String(t.startTime)), t.controls === !1 && r.set("controls", "0");
1857
+ const a = r.toString();
1858
+ return `https://www.dailymotion.com/embed/video/${e}${a ? `?${a}` : ""}`;
1859
+ }
1860
+ }, Ut = {
1861
+ name: "twitch",
1862
+ displayName: "Twitch",
1863
+ domains: ["twitch.tv", "clips.twitch.tv"],
1864
+ tier: "major",
1865
+ supportsAutoplay: !0,
1866
+ supportsApi: !0,
1867
+ extractVideoId: (e) => {
1868
+ try {
1869
+ const t = new URL(e);
1870
+ if (t.hostname.replace("www.", "") === "clips.twitch.tv")
1871
+ return `clip:${t.pathname.slice(1)}`;
1872
+ if (t.pathname.startsWith("/videos/"))
1873
+ return `video:${t.pathname.split("/")[2]}`;
1874
+ const a = t.pathname.match(/\/([^/]+)\/clip\/([^/?]+)/);
1875
+ return a ? `clip:${a[2]}` : null;
1876
+ } catch {
1877
+ return null;
1878
+ }
1879
+ },
1880
+ getEmbedUrl: (e, t = {}) => {
1881
+ const r = new URLSearchParams(), a = typeof window < "u" ? window.location.hostname : "localhost";
1882
+ r.set("parent", a), t.autoplay && r.set("autoplay", "true"), t.muted && r.set("muted", "true");
1883
+ const o = r.toString();
1884
+ return e.startsWith("video:") ? `https://player.twitch.tv/?video=${e.slice(6)}&${o}` : e.startsWith("clip:") ? `https://clips.twitch.tv/embed?clip=${e.slice(5)}&${o}` : "";
1885
+ }
1886
+ }, Pt = {
1887
+ name: "kick",
1888
+ displayName: "Kick",
1889
+ domains: ["kick.com"],
1890
+ tier: "major",
1891
+ supportsAutoplay: !1,
1892
+ supportsApi: !1,
1893
+ extractVideoId: (e) => {
1894
+ try {
1895
+ const t = new URL(e);
1896
+ if (t.hostname.replace("www.", "") !== "kick.com")
1897
+ return null;
1898
+ const a = t.pathname.match(/\/video\/([a-zA-Z0-9-]+)/);
1899
+ return a ? a[1] : null;
1900
+ } catch {
1901
+ return null;
1902
+ }
1903
+ },
1904
+ getEmbedUrl: (e) => `https://player.kick.com/video/${e}`
1905
+ }, Vt = {
1906
+ name: "rumble",
1907
+ displayName: "Rumble",
1908
+ domains: ["rumble.com"],
1909
+ tier: "major",
1910
+ supportsAutoplay: !0,
1911
+ supportsApi: !1,
1912
+ extractVideoId: (e) => {
1913
+ try {
1914
+ const t = new URL(e);
1915
+ if (t.hostname.replace("www.", "") !== "rumble.com")
1916
+ return null;
1917
+ if (t.pathname.startsWith("/embed/"))
1918
+ return t.pathname.split("/")[2].split("?")[0];
1919
+ const a = t.pathname.match(/\/([a-z0-9]+)-/);
1920
+ return a ? a[1] : null;
1921
+ } catch {
1922
+ return null;
1923
+ }
1924
+ },
1925
+ getEmbedUrl: (e, t = {}) => {
1926
+ const r = new URLSearchParams();
1927
+ t.autoplay && r.set("autoplay", "2");
1928
+ const a = r.toString();
1929
+ return `https://rumble.com/embed/${e}${a ? `?${a}` : ""}`;
1930
+ }
1931
+ }, Dt = {
1932
+ name: "odysee",
1933
+ displayName: "Odysee",
1934
+ domains: ["odysee.com"],
1935
+ tier: "major",
1936
+ supportsAutoplay: !0,
1937
+ supportsApi: !1,
1938
+ extractVideoId: (e) => {
1939
+ try {
1940
+ const t = new URL(e);
1941
+ if (t.hostname.replace("www.", "") !== "odysee.com")
1942
+ return null;
1943
+ const a = t.pathname.match(/\$\/embed\/(.+)/);
1944
+ if (a)
1945
+ return a[1];
1946
+ const o = t.pathname.slice(1);
1947
+ return o.startsWith("@") ? o : null;
1948
+ } catch {
1949
+ return null;
1950
+ }
1951
+ },
1952
+ getEmbedUrl: (e) => `https://odysee.com/$/embed/${e}`
1953
+ }, Bt = {
1954
+ name: "bitchute",
1955
+ displayName: "BitChute",
1956
+ domains: ["bitchute.com"],
1957
+ tier: "major",
1958
+ supportsAutoplay: !1,
1959
+ supportsApi: !1,
1960
+ extractVideoId: (e) => {
1961
+ try {
1962
+ const t = new URL(e);
1963
+ if (t.hostname.replace("www.", "") !== "bitchute.com")
1964
+ return null;
1965
+ const a = t.pathname.match(/\/(video|embed)\/([a-zA-Z0-9]+)/);
1966
+ return a ? a[2] : null;
1967
+ } catch {
1968
+ return null;
1969
+ }
1970
+ },
1971
+ getEmbedUrl: (e) => `https://www.bitchute.com/embed/${e}/`
1972
+ }, Et = {
1973
+ name: "vk",
1974
+ displayName: "VK Video",
1975
+ domains: ["vk.com"],
1976
+ tier: "major",
1977
+ supportsAutoplay: !0,
1978
+ supportsApi: !1,
1979
+ extractVideoId: (e) => {
1980
+ try {
1981
+ const t = new URL(e);
1982
+ if (t.hostname.replace("www.", "") !== "vk.com")
1983
+ return null;
1984
+ const a = t.searchParams.get("z");
1985
+ if (a && a.startsWith("video"))
1986
+ return a.replace("video", "");
1987
+ const o = t.pathname.match(/\/video(-?\d+_\d+)/);
1988
+ return o ? o[1] : null;
1989
+ } catch {
1990
+ return null;
1991
+ }
1992
+ },
1993
+ getEmbedUrl: (e, t = {}) => {
1994
+ const r = new URLSearchParams();
1995
+ t.autoplay && r.set("autoplay", "1");
1996
+ const a = e.split("_");
1997
+ if (a.length < 2)
1998
+ return console.error("VK video ID must be in format OWNER_ID_VIDEO_ID"), "";
1999
+ const o = r.toString();
2000
+ return `https://vk.com/video_ext.php?oid=${a[0]}&id=${a[1]}${o ? `&${o}` : ""}`;
2001
+ }
2002
+ }, jt = {
2003
+ name: "bilibili",
2004
+ displayName: "Bilibili",
2005
+ domains: ["bilibili.com"],
2006
+ tier: "major",
2007
+ supportsAutoplay: !1,
2008
+ supportsApi: !1,
2009
+ extractVideoId: (e) => {
2010
+ try {
2011
+ const t = new URL(e), r = t.hostname.replace("www.", "");
2012
+ if (r !== "bilibili.com" && r !== "www.bilibili.com")
2013
+ return null;
2014
+ const a = t.pathname.match(/\/video\/((?:BV|av)[a-zA-Z0-9]+)/);
2015
+ return a ? a[1] : null;
2016
+ } catch {
2017
+ return null;
2018
+ }
2019
+ },
2020
+ getEmbedUrl: (e, t = {}) => {
2021
+ const r = new URLSearchParams();
2022
+ t.autoplay && r.set("autoplay", "1");
2023
+ const a = r.toString();
2024
+ return `https://player.bilibili.com/player.html?bvid=${e}${a ? `&${a}` : ""}`;
2025
+ }
2026
+ }, Ot = {
2027
+ name: "niconico",
2028
+ displayName: "Niconico",
2029
+ domains: ["nicovideo.jp"],
2030
+ tier: "major",
2031
+ supportsAutoplay: !1,
2032
+ supportsApi: !1,
2033
+ extractVideoId: (e) => {
2034
+ try {
2035
+ const t = new URL(e);
2036
+ if (t.hostname.replace("www.", "") !== "nicovideo.jp")
2037
+ return null;
2038
+ const a = t.pathname.match(/\/watch\/((?:sm|so|nm)\d+)/);
2039
+ return a ? a[1] : null;
2040
+ } catch {
2041
+ return null;
2042
+ }
2043
+ },
2044
+ getEmbedUrl: (e) => `https://embed.nicovideo.jp/watch/${e}`
2045
+ }, Rt = {
2046
+ name: "wistia",
2047
+ displayName: "Wistia",
2048
+ domains: ["wistia.com", "wi.st", "wistia.net"],
2049
+ tier: "professional",
2050
+ supportsAutoplay: !0,
2051
+ supportsApi: !0,
2052
+ extractVideoId: (e) => {
2053
+ try {
2054
+ const t = new URL(e), r = t.hostname.replace("www.", "");
2055
+ if (t.pathname.includes("/medias/")) {
2056
+ const a = t.pathname.match(/\/medias\/([a-zA-Z0-9]+)/);
2057
+ if (a)
2058
+ return a[1];
2059
+ }
2060
+ if (r.includes("wistia") && t.pathname.includes("/iframe/")) {
2061
+ const a = t.pathname.match(/\/iframe\/([a-zA-Z0-9]+)/);
2062
+ if (a)
2063
+ return a[1];
2064
+ }
2065
+ return null;
2066
+ } catch {
2067
+ return null;
2068
+ }
2069
+ },
2070
+ getEmbedUrl: (e, t = {}) => {
2071
+ const r = new URLSearchParams();
2072
+ t.autoplay && r.set("autoPlay", "true"), t.muted && r.set("muted", "true");
2073
+ const a = r.toString();
2074
+ return `https://fast.wistia.net/embed/iframe/${e}${a ? `?${a}` : ""}`;
2075
+ }
2076
+ }, Ht = {
2077
+ name: "brightcove",
2078
+ displayName: "Brightcove",
2079
+ domains: ["brightcove.com", "bcove.video"],
2080
+ tier: "professional",
2081
+ supportsAutoplay: !0,
2082
+ supportsApi: !0,
2083
+ extractVideoId: (e) => {
2084
+ try {
2085
+ const t = new URL(e), r = t.searchParams.get("videoId");
2086
+ if (r) {
2087
+ const a = t.pathname.match(/\/(\d+)\//);
2088
+ if (a)
2089
+ return `${a[1]}:${r}`;
2090
+ }
2091
+ return null;
2092
+ } catch {
2093
+ return null;
2094
+ }
2095
+ },
2096
+ getEmbedUrl: (e) => {
2097
+ const t = e.split(":");
2098
+ if (t.length < 2)
2099
+ return console.error("Brightcove video ID must be in format ACCOUNT_ID:VIDEO_ID"), "";
2100
+ const [r, ...a] = t, o = a.join(":");
2101
+ return `https://players.brightcove.net/${r}/default_default/index.html?videoId=${o}`;
2102
+ }
2103
+ }, zt = {
2104
+ name: "kaltura",
2105
+ displayName: "Kaltura",
2106
+ domains: ["kaltura.com"],
2107
+ tier: "professional",
2108
+ supportsAutoplay: !0,
2109
+ supportsApi: !0,
2110
+ extractVideoId: (e) => {
2111
+ try {
2112
+ const t = new URL(e), r = t.searchParams.get("entry_id") || t.searchParams.get("entryId");
2113
+ if (r) {
2114
+ const a = t.pathname.match(/\/p\/(\d+)\//), o = t.pathname.match(/\/uiconf_id\/(\d+)/);
2115
+ if (a && o)
2116
+ return `${a[1]}:${o[1]}:${r}`;
2117
+ }
2118
+ return null;
2119
+ } catch {
2120
+ return null;
2121
+ }
2122
+ },
2123
+ getEmbedUrl: (e) => {
2124
+ const t = e.split(":");
2125
+ if (t.length < 3)
2126
+ return console.error("Kaltura video ID must be in format PARTNER_ID:UI_CONF_ID:ENTRY_ID"), "";
2127
+ const [r, a, o] = t;
2128
+ return `https://cdnapisec.kaltura.com/p/${r}/sp/${r}00/embedIframeJs/uiconf_id/${a}/partner_id/${r}?iframeembed=true&entry_id=${o}`;
2129
+ }
2130
+ }, Wt = {
2131
+ name: "panopto",
2132
+ displayName: "Panopto",
2133
+ domains: ["panopto.com"],
2134
+ tier: "professional",
2135
+ supportsAutoplay: !1,
2136
+ supportsApi: !0,
2137
+ extractVideoId: (e) => {
2138
+ try {
2139
+ const t = new URL(e), r = t.hostname;
2140
+ if (r === "panopto.com" || r.endsWith(".panopto.com")) {
2141
+ const o = t.searchParams.get("id");
2142
+ if (o)
2143
+ return `${r.split(".")[0]}:${o}`;
2144
+ }
2145
+ return null;
2146
+ } catch {
2147
+ return null;
2148
+ }
2149
+ },
2150
+ getEmbedUrl: (e) => {
2151
+ const t = e.split(":");
2152
+ if (t.length < 2)
2153
+ return console.error("Panopto video ID must be in format SUBDOMAIN:SESSION_ID"), "";
2154
+ const [r, ...a] = t, o = a.join(":");
2155
+ return `https://${r}.panopto.com/Panopto/Pages/Embed.aspx?id=${o}&autoplay=false&offerviewer=true&showtitle=true&showbrand=false&captions=false&interactivity=all`;
2156
+ }
2157
+ }, Tt = {
2158
+ name: "jwplayer",
2159
+ displayName: "JW Player",
2160
+ domains: ["jwplayer.com", "jwplatform.com", "content.jwplatform.com"],
2161
+ tier: "professional",
2162
+ supportsAutoplay: !0,
2163
+ supportsApi: !0,
2164
+ extractVideoId: (e) => {
2165
+ try {
2166
+ const r = new URL(e).pathname.match(/\/players\/([a-zA-Z0-9]+-[a-zA-Z0-9]+)\.html/);
2167
+ return r ? r[1] : null;
2168
+ } catch {
2169
+ return null;
2170
+ }
2171
+ },
2172
+ getEmbedUrl: (e) => `https://content.jwplatform.com/players/${e}.html`
2173
+ }, Ft = {
2174
+ name: "cloudflare",
2175
+ displayName: "Cloudflare Stream",
2176
+ domains: ["cloudflarestream.com", "videodelivery.net"],
2177
+ tier: "professional",
2178
+ supportsAutoplay: !0,
2179
+ supportsApi: !0,
2180
+ extractVideoId: (e) => {
2181
+ try {
2182
+ const t = new URL(e), r = t.hostname, a = r === "videodelivery.net" || r.endsWith(".videodelivery.net"), o = r === "cloudflarestream.com" || r.endsWith(".cloudflarestream.com");
2183
+ if (a || o) {
2184
+ const p = t.pathname.match(/\/([a-zA-Z0-9]+)(?:\/|$)/);
2185
+ if (p)
2186
+ return p[1];
2187
+ }
2188
+ return null;
2189
+ } catch {
2190
+ return null;
2191
+ }
2192
+ },
2193
+ getEmbedUrl: (e, t = {}) => {
2194
+ const r = new URLSearchParams();
2195
+ t.autoplay && r.set("autoplay", "true"), t.muted && r.set("muted", "true"), t.loop && r.set("loop", "true");
2196
+ const a = r.toString();
2197
+ return `https://iframe.videodelivery.net/${e}${a ? `?${a}` : ""}`;
2198
+ }
2199
+ }, qt = {
2200
+ name: "mux",
2201
+ displayName: "Mux",
2202
+ domains: ["mux.com", "stream.mux.com"],
2203
+ tier: "professional",
2204
+ supportsAutoplay: !0,
2205
+ supportsApi: !0,
2206
+ extractVideoId: (e) => {
2207
+ try {
2208
+ const t = new URL(e);
2209
+ if (t.hostname === "stream.mux.com") {
2210
+ const a = t.pathname.slice(1).split(".")[0];
2211
+ if (a)
2212
+ return a;
2213
+ }
2214
+ return null;
2215
+ } catch {
2216
+ return null;
2217
+ }
2218
+ },
2219
+ getEmbedUrl: (e, t = {}) => {
2220
+ const r = new URLSearchParams();
2221
+ t.autoplay && r.set("autoplay", "true"), t.muted && r.set("muted", "true");
2222
+ const a = r.toString();
2223
+ return `https://stream.mux.com/${e}.m3u8${a ? `?${a}` : ""}`;
2224
+ }
2225
+ }, Zt = {
2226
+ name: "aws-ivs",
2227
+ displayName: "AWS IVS",
2228
+ domains: ["ivs.aws", "amazonaws.com"],
2229
+ tier: "professional",
2230
+ supportsAutoplay: !0,
2231
+ supportsApi: !0,
2232
+ extractVideoId: (e) => {
2233
+ try {
2234
+ const t = new URL(e);
2235
+ return t.hostname.includes(".channel.ivs.aws") ? t.hostname.split(".")[0] : null;
2236
+ } catch {
2237
+ return null;
2238
+ }
2239
+ },
2240
+ getEmbedUrl: (e) => `https://${e}.channel.ivs.aws/stream.m3u8`
2241
+ }, Kt = {
2242
+ name: "azure-media",
2243
+ displayName: "Azure Media Services",
2244
+ domains: ["azure.net", "azureedge.net"],
2245
+ tier: "professional",
2246
+ supportsAutoplay: !0,
2247
+ supportsApi: !0,
2248
+ extractVideoId: (e) => {
2249
+ try {
2250
+ const t = new URL(e);
2251
+ if (t.hostname.endsWith(".streaming.media.azure.net")) {
2252
+ const r = t.pathname.split("/");
2253
+ if (r.length >= 2)
2254
+ return `${t.hostname}:${r[1]}`;
2255
+ }
2256
+ return null;
2257
+ } catch {
2258
+ return null;
2259
+ }
2260
+ },
2261
+ getEmbedUrl: (e) => {
2262
+ const t = e.split(":");
2263
+ if (t.length < 2)
2264
+ return console.error("Azure Media video ID must be in format HOSTNAME:ASSET_ID"), "";
2265
+ const [r, ...a] = t, o = a.join(":");
2266
+ return `https://${r}/${o}/manifest`;
2267
+ }
2268
+ }, Yt = {
2269
+ name: "google-drive",
2270
+ displayName: "Google Drive",
2271
+ domains: ["drive.google.com"],
2272
+ tier: "cloud",
2273
+ supportsAutoplay: !1,
2274
+ supportsApi: !1,
2275
+ extractVideoId: (e) => {
2276
+ try {
2277
+ const t = new URL(e);
2278
+ if (t.hostname.replace("www.", "") !== "drive.google.com")
2279
+ return null;
2280
+ const a = t.pathname.match(/\/file\/d\/([a-zA-Z0-9_-]+)/);
2281
+ if (a)
2282
+ return a[1];
2283
+ const o = t.searchParams.get("id");
2284
+ return o || null;
2285
+ } catch {
2286
+ return null;
2287
+ }
2288
+ },
2289
+ getEmbedUrl: (e) => `https://drive.google.com/file/d/${e}/preview`
2290
+ }, Jt = {
2291
+ name: "dropbox",
2292
+ displayName: "Dropbox",
2293
+ domains: ["dropbox.com"],
2294
+ tier: "cloud",
2295
+ supportsAutoplay: !1,
2296
+ supportsApi: !1,
2297
+ extractVideoId: (e) => {
2298
+ try {
2299
+ return new URL(e).hostname.replace("www.", "") !== "dropbox.com" ? null : e;
2300
+ } catch {
2301
+ return null;
2302
+ }
2303
+ },
2304
+ getEmbedUrl: (e) => {
2305
+ try {
2306
+ const t = new URL(e);
2307
+ return t.searchParams.delete("dl"), t.searchParams.set("raw", "1"), t.toString();
2308
+ } catch {
2309
+ return e;
2310
+ }
2311
+ }
2312
+ }, Gt = {
2313
+ name: "facebook",
2314
+ displayName: "Facebook Video",
2315
+ domains: ["facebook.com", "fb.watch"],
2316
+ tier: "social",
2317
+ supportsAutoplay: !1,
2318
+ supportsApi: !1,
2319
+ extractVideoId: (e) => {
2320
+ try {
2321
+ const t = new URL(e), r = t.hostname.replace("www.", "");
2322
+ if (r === "fb.watch")
2323
+ return t.pathname.slice(1);
2324
+ if (r === "facebook.com") {
2325
+ const a = t.searchParams.get("v");
2326
+ if (a)
2327
+ return a;
2328
+ const o = t.pathname.match(/\/videos\/(\d+)/);
2329
+ if (o)
2330
+ return o[1];
2331
+ }
2332
+ return null;
2333
+ } catch {
2334
+ return null;
2335
+ }
2336
+ },
2337
+ getEmbedUrl: (e) => `https://www.facebook.com/plugins/video.php?href=https%3A%2F%2Fwww.facebook.com%2Fwatch%2F%3Fv%3D${e}`
2338
+ }, Qt = {
2339
+ name: "instagram",
2340
+ displayName: "Instagram",
2341
+ domains: ["instagram.com"],
2342
+ tier: "social",
2343
+ supportsAutoplay: !1,
2344
+ supportsApi: !1,
2345
+ extractVideoId: (e) => {
2346
+ try {
2347
+ const t = new URL(e);
2348
+ if (t.hostname.replace("www.", "") !== "instagram.com")
2349
+ return null;
2350
+ const a = t.pathname.match(/\/(p|reel|tv)\/([a-zA-Z0-9_-]+)/);
2351
+ return a ? a[2] : null;
2352
+ } catch {
2353
+ return null;
2354
+ }
2355
+ },
2356
+ getEmbedUrl: (e) => `https://www.instagram.com/p/${e}/embed/`
2357
+ }, Xt = {
2358
+ name: "twitter",
2359
+ displayName: "X (Twitter)",
2360
+ domains: ["twitter.com", "x.com"],
2361
+ tier: "social",
2362
+ supportsAutoplay: !1,
2363
+ supportsApi: !1,
2364
+ extractVideoId: (e) => {
2365
+ try {
2366
+ const t = new URL(e), r = t.hostname.replace("www.", "");
2367
+ if (r !== "twitter.com" && r !== "x.com")
2368
+ return null;
2369
+ const a = t.pathname.match(/\/status\/(\d+)/);
2370
+ return a ? a[1] : null;
2371
+ } catch {
2372
+ return null;
2373
+ }
2374
+ },
2375
+ getEmbedUrl: (e) => `https://platform.twitter.com/embed/Tweet.html?id=${e}`
2376
+ }, er = {
2377
+ name: "pornhub",
2378
+ displayName: "Pornhub",
2379
+ domains: ["pornhub.com"],
2380
+ tier: "adult",
2381
+ supportsAutoplay: !0,
2382
+ supportsApi: !1,
2383
+ extractVideoId: (e) => {
2384
+ try {
2385
+ const t = new URL(e);
2386
+ if (t.hostname.replace("www.", "") !== "pornhub.com")
2387
+ return null;
2388
+ const a = t.searchParams.get("viewkey");
2389
+ if (a)
2390
+ return a;
2391
+ const o = t.pathname.match(/\/embed\/([a-zA-Z0-9]+)/);
2392
+ return o ? o[1] : null;
2393
+ } catch {
2394
+ return null;
2395
+ }
2396
+ },
2397
+ getEmbedUrl: (e) => `https://www.pornhub.com/embed/${e}`
2398
+ }, tr = {
2399
+ name: "youporn",
2400
+ displayName: "YouPorn",
2401
+ domains: ["youporn.com"],
2402
+ tier: "adult",
2403
+ supportsAutoplay: !1,
2404
+ supportsApi: !1,
2405
+ extractVideoId: (e) => {
2406
+ try {
2407
+ const t = new URL(e);
2408
+ if (t.hostname.replace("www.", "") !== "youporn.com")
2409
+ return null;
2410
+ const a = t.pathname.match(/\/watch\/(\d+)/);
2411
+ return a ? a[1] : null;
2412
+ } catch {
2413
+ return null;
2414
+ }
2415
+ },
2416
+ getEmbedUrl: (e) => `https://www.youporn.com/embed/${e}`
2417
+ }, rr = {
2418
+ name: "redtube",
2419
+ displayName: "Redtube",
2420
+ domains: ["redtube.com"],
2421
+ tier: "adult",
2422
+ supportsAutoplay: !1,
2423
+ supportsApi: !1,
2424
+ extractVideoId: (e) => {
2425
+ try {
2426
+ const t = new URL(e);
2427
+ if (t.hostname.replace("www.", "") !== "redtube.com")
2428
+ return null;
2429
+ const a = t.searchParams.get("id");
2430
+ if (a)
2431
+ return a;
2432
+ const o = t.pathname.match(/\/(\d+)/);
2433
+ return o ? o[1] : null;
2434
+ } catch {
2435
+ return null;
2436
+ }
2437
+ },
2438
+ getEmbedUrl: (e) => `https://embed.redtube.com/?id=${e}`
2439
+ }, nr = {
2440
+ name: "xhamster",
2441
+ displayName: "XHamster",
2442
+ domains: ["xhamster.com"],
2443
+ tier: "adult",
2444
+ supportsAutoplay: !1,
2445
+ supportsApi: !1,
2446
+ extractVideoId: (e) => {
2447
+ try {
2448
+ const t = new URL(e);
2449
+ if (t.hostname.replace("www.", "") !== "xhamster.com")
2450
+ return null;
2451
+ const a = t.pathname.match(/\/videos\/[^/]+-(\d+)/);
2452
+ return a ? a[1] : null;
2453
+ } catch {
2454
+ return null;
2455
+ }
2456
+ },
2457
+ getEmbedUrl: (e) => `https://xhamster.com/xembed.php?video=${e}`
2458
+ }, ar = {
2459
+ name: "spankbang",
2460
+ displayName: "SpankBang",
2461
+ domains: ["spankbang.com"],
2462
+ tier: "adult",
2463
+ supportsAutoplay: !1,
2464
+ supportsApi: !1,
2465
+ extractVideoId: (e) => {
2466
+ try {
2467
+ const t = new URL(e);
2468
+ if (t.hostname.replace("www.", "") !== "spankbang.com")
2469
+ return null;
2470
+ const a = t.pathname.match(/\/([a-zA-Z0-9]+)\/video\//);
2471
+ return a ? a[1] : null;
2472
+ } catch {
2473
+ return null;
2474
+ }
2475
+ },
2476
+ getEmbedUrl: (e) => `https://spankbang.com/${e}/embed/`
2477
+ }, Ce = [
2478
+ // Tier 1: Major platforms
2479
+ Mt,
2480
+ At,
2481
+ St,
2482
+ Ut,
2483
+ Pt,
2484
+ Vt,
2485
+ Dt,
2486
+ Bt,
2487
+ Et,
2488
+ jt,
2489
+ Ot,
2490
+ // Tier 2: Professional/Enterprise platforms
2491
+ Rt,
2492
+ Ht,
2493
+ zt,
2494
+ Wt,
2495
+ Tt,
2496
+ Ft,
2497
+ qt,
2498
+ Zt,
2499
+ Kt,
2500
+ // Tier 3: Cloud storage
2501
+ Yt,
2502
+ Jt,
2503
+ // Tier 4: Social media
2504
+ Gt,
2505
+ Qt,
2506
+ Xt,
2507
+ // Tier 5: Adult content
2508
+ er,
2509
+ tr,
2510
+ rr,
2511
+ nr,
2512
+ ar
2513
+ ], _e = Ce.reduce(
2514
+ (e, t) => (e[t.name] = t, e),
2515
+ {}
2516
+ );
2517
+ function Ie(e) {
2518
+ if (!e)
2519
+ return null;
2520
+ try {
2521
+ const r = new URL(e).hostname.toLowerCase().replace("www.", "");
2522
+ for (const a of Ce)
2523
+ for (const o of a.domains)
2524
+ if (r === o || r.endsWith(`.${o}`))
2525
+ return a;
2526
+ return null;
2527
+ } catch {
2528
+ return null;
2529
+ }
2530
+ }
2531
+ function Ne(e) {
2532
+ const t = Ie(e);
2533
+ if (!t)
2534
+ return null;
2535
+ const r = t.extractVideoId(e);
2536
+ return r ? {
2537
+ provider: t,
2538
+ videoId: r
2539
+ } : null;
2540
+ }
2541
+ function $r(e, t) {
2542
+ const r = Ne(e);
2543
+ return r ? r.provider.getEmbedUrl(r.videoId, t) : null;
2544
+ }
2545
+ function kr(e) {
2546
+ return Ie(e)?.tier === "adult";
2547
+ }
2548
+ const or = () => /* @__PURE__ */ u(
1701
2549
  "svg",
1702
2550
  {
1703
2551
  width: "64",
@@ -1707,18 +2555,11 @@ const At = ({
1707
2555
  xmlns: "http://www.w3.org/2000/svg",
1708
2556
  className: "uiforge-video__play-icon",
1709
2557
  children: [
1710
- /* @__PURE__ */ e("circle", { cx: "32", cy: "32", r: "32", fill: "white", fillOpacity: "0.9" }),
1711
- /* @__PURE__ */ e(
1712
- "path",
1713
- {
1714
- d: "M26 20L46 32L26 44V20Z",
1715
- fill: "currentColor",
1716
- style: { color: "#3b82f6" }
1717
- }
1718
- )
2558
+ /* @__PURE__ */ n("circle", { cx: "32", cy: "32", r: "32", fill: "white", fillOpacity: "0.9" }),
2559
+ /* @__PURE__ */ n("path", { d: "M26 20L46 32L26 44V20Z", fill: "currentColor", style: { color: "#3b82f6" } })
1719
2560
  ]
1720
2561
  }
1721
- ), Nt = () => /* @__PURE__ */ d(
2562
+ ), ir = () => /* @__PURE__ */ u(
1722
2563
  "svg",
1723
2564
  {
1724
2565
  width: "20",
@@ -1728,155 +2569,214 @@ const At = ({
1728
2569
  xmlns: "http://www.w3.org/2000/svg",
1729
2570
  className: "uiforge-video-preview__icon",
1730
2571
  children: [
1731
- /* @__PURE__ */ e("path", { d: "M2 5a2 2 0 012-2h12a2 2 0 012 2v10a2 2 0 01-2 2H4a2 2 0 01-2-2V5zm2-1a1 1 0 00-1 1v10a1 1 0 001 1h12a1 1 0 001-1V5a1 1 0 00-1-1H4z" }),
1732
- /* @__PURE__ */ e("path", { d: "M8 7l5 3-5 3V7z" })
2572
+ /* @__PURE__ */ n("path", { d: "M2 5a2 2 0 012-2h12a2 2 0 012 2v10a2 2 0 01-2 2H4a2 2 0 01-2-2V5zm2-1a1 1 0 00-1 1v10a1 1 0 001 1h12a1 1 0 001-1V5a1 1 0 00-1-1H4z" }),
2573
+ /* @__PURE__ */ n("path", { d: "M8 7l5 3-5 3V7z" })
1733
2574
  ]
1734
2575
  }
1735
- ), Rt = ({
1736
- title: t,
1737
- description: n,
1738
- youtubeId: r,
1739
- vimeoId: i,
2576
+ ), Cr = ({
2577
+ title: e,
2578
+ description: t,
2579
+ url: r,
2580
+ youtubeId: a,
2581
+ vimeoId: o,
2582
+ provider: p,
2583
+ videoId: f,
2584
+ autoplay: v = !1,
2585
+ muted: $ = !1,
2586
+ loop: G = !1,
2587
+ startTime: P,
2588
+ controls: q = !0,
1740
2589
  thumbnailUrl: h,
1741
- onPlay: p,
1742
- className: u = "",
1743
- overlayIcon: f,
1744
- aspectRatio: k = "16/9"
2590
+ onPlay: j,
2591
+ onError: A,
2592
+ onReady: Z,
2593
+ className: O = "",
2594
+ overlayIcon: S,
2595
+ aspectRatio: R = "16:9",
2596
+ width: Q,
2597
+ height: K,
2598
+ allowAdultContent: k = !1,
2599
+ fallback: V
1745
2600
  }) => {
1746
- const [Z, H] = j(!1), F = G(null), s = r ? "youtube" : i ? "vimeo" : null, S = r || i || "", D = te(() => !s || !S ? "" : s === "youtube" ? `https://www.youtube.com/embed/${S}?autoplay=1&rel=0` : s === "vimeo" ? `https://player.vimeo.com/video/${S}?autoplay=1` : "", [s, S]), q = te(() => {
2601
+ const [C, H] = F(!1), [D, l] = F(null), y = ee(null), c = te(() => {
2602
+ if (p && f) {
2603
+ const m = _e[p];
2604
+ if (m)
2605
+ return { provider: m, videoId: f, method: "explicit" };
2606
+ }
2607
+ if (r) {
2608
+ const m = Ne(r);
2609
+ if (m)
2610
+ return { ...m, method: "url" };
2611
+ }
2612
+ if (a) {
2613
+ const m = _e.youtube;
2614
+ if (m)
2615
+ return { provider: m, videoId: a, method: "legacy" };
2616
+ }
2617
+ if (o) {
2618
+ const m = _e.vimeo;
2619
+ if (m)
2620
+ return { provider: m, videoId: o, method: "legacy" };
2621
+ }
2622
+ return null;
2623
+ }, [r, p, f, a, o]), b = te(() => c ? c.provider.tier === "adult" : !1, [c]), z = te(
2624
+ () => ({
2625
+ // When user clicks to play, enable autoplay automatically
2626
+ autoplay: C ? !0 : v,
2627
+ muted: $,
2628
+ loop: G,
2629
+ startTime: P,
2630
+ controls: q
2631
+ }),
2632
+ [v, $, G, P, q, C]
2633
+ ), E = te(() => {
2634
+ if (!c) return "";
2635
+ try {
2636
+ return c.provider.getEmbedUrl(c.videoId, z);
2637
+ } catch (m) {
2638
+ return console.error("Error generating embed URL:", m), "";
2639
+ }
2640
+ }, [c, z]), ne = te(() => {
1747
2641
  if (h) return h;
1748
- if (s === "youtube" && r)
1749
- return `https://img.youtube.com/vi/${r}/maxresdefault.jpg`;
1750
- if (s === "vimeo" && i)
1751
- return;
1752
- }, [h, s, r, i]), A = L(() => {
1753
- !s || !S || (H(!0), p && p(S, s));
1754
- }, [s, S, p]);
1755
- if (!r && !i)
1756
- return console.warn("UIForgeVideo: Either youtubeId or vimeoId must be provided"), null;
1757
- const C = "uiforge-video", z = `${C} ${u}`.trim();
1758
- return /* @__PURE__ */ d("div", { className: z, children: [
1759
- /* @__PURE__ */ d("div", { className: `${C}__header`, children: [
1760
- /* @__PURE__ */ e("h3", { className: `${C}__title`, children: t }),
1761
- n && /* @__PURE__ */ e("p", { className: `${C}__description`, children: n })
2642
+ if (c?.provider.name === "youtube")
2643
+ return `https://img.youtube.com/vi/${c.videoId}/maxresdefault.jpg`;
2644
+ }, [h, c]), ae = N(() => {
2645
+ c && (H(!0), j && j(c.videoId, c.provider.name), Z && Z(c.videoId, c.provider.name));
2646
+ }, [c, j, Z]), X = N(
2647
+ (m) => {
2648
+ l(m), A && c && A(new Error(m), c.provider.name);
2649
+ },
2650
+ [A, c]
2651
+ );
2652
+ if (!c)
2653
+ return V ? /* @__PURE__ */ n(me, { children: V }) : (console.warn("UIForgeVideo: No valid video source provided"), null);
2654
+ if (b && !k) {
2655
+ const m = "Adult content must be explicitly enabled with allowAdultContent prop";
2656
+ return V ? /* @__PURE__ */ n(me, { children: V }) : (console.warn(`UIForgeVideo: ${m}`), /* @__PURE__ */ n("div", { className: "uiforge-video", children: /* @__PURE__ */ n("div", { className: "uiforge-video__error", children: /* @__PURE__ */ n("p", { children: m }) }) }));
2657
+ }
2658
+ if (D)
2659
+ return V ? /* @__PURE__ */ n(me, { children: V }) : /* @__PURE__ */ n("div", { className: "uiforge-video", children: /* @__PURE__ */ n("div", { className: "uiforge-video__error", children: /* @__PURE__ */ n("p", { children: D }) }) });
2660
+ const W = "uiforge-video", oe = `${W} ${O}`.trim(), s = {
2661
+ aspectRatio: R !== "auto" ? R.replace(":", "/") : void 0,
2662
+ width: Q ? typeof Q == "number" ? `${Q}px` : Q : void 0,
2663
+ height: K ? typeof K == "number" ? `${K}px` : K : void 0
2664
+ }, U = e || `${c.provider.displayName} Video`;
2665
+ return /* @__PURE__ */ u("div", { className: oe, children: [
2666
+ (e || t) && /* @__PURE__ */ u("div", { className: `${W}__header`, children: [
2667
+ e && /* @__PURE__ */ n("h3", { className: `${W}__title`, children: e }),
2668
+ t && /* @__PURE__ */ n("p", { className: `${W}__description`, children: t })
1762
2669
  ] }),
1763
- /* @__PURE__ */ e(
1764
- "div",
2670
+ /* @__PURE__ */ n("div", { className: `${W}__player-container`, style: s, children: C ? /* @__PURE__ */ n(
2671
+ "iframe",
1765
2672
  {
1766
- className: `${C}__player-container`,
1767
- style: { aspectRatio: k },
1768
- children: Z ? /* @__PURE__ */ e(
1769
- "iframe",
1770
- {
1771
- ref: F,
1772
- src: D,
1773
- title: t,
1774
- className: `${C}__iframe`,
1775
- allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",
1776
- allowFullScreen: !0
1777
- }
1778
- ) : /* @__PURE__ */ d(_e, { children: [
1779
- q && /* @__PURE__ */ e(
1780
- "img",
1781
- {
1782
- src: q,
1783
- alt: t,
1784
- className: `${C}__thumbnail`
1785
- }
1786
- ),
1787
- /* @__PURE__ */ e(
1788
- "button",
1789
- {
1790
- className: `${C}__overlay`,
1791
- onClick: A,
1792
- "aria-label": `Play video: ${t}`,
1793
- type: "button",
1794
- children: f || /* @__PURE__ */ e($t, {})
1795
- }
1796
- )
1797
- ] })
2673
+ ref: y,
2674
+ src: E,
2675
+ title: U,
2676
+ className: `${W}__iframe`,
2677
+ allow: "accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",
2678
+ allowFullScreen: !0,
2679
+ onError: () => X("Failed to load video")
1798
2680
  }
1799
- )
2681
+ ) : /* @__PURE__ */ u(me, { children: [
2682
+ ne && /* @__PURE__ */ n("img", { src: ne, alt: U, className: `${W}__thumbnail` }),
2683
+ /* @__PURE__ */ n(
2684
+ "button",
2685
+ {
2686
+ className: `${W}__overlay`,
2687
+ onClick: ae,
2688
+ "aria-label": `Play video: ${U}`,
2689
+ type: "button",
2690
+ children: S || /* @__PURE__ */ n(or, {})
2691
+ }
2692
+ )
2693
+ ] }) })
1800
2694
  ] });
1801
- }, jt = ({
1802
- title: t,
1803
- icon: n,
2695
+ }, Ir = ({
2696
+ title: e,
2697
+ icon: t,
1804
2698
  className: r = "",
1805
- onClick: i
2699
+ onClick: a
1806
2700
  }) => {
1807
- const h = "uiforge-video-preview", p = `${h} ${r}`.trim();
1808
- return /* @__PURE__ */ d(i ? "button" : "div", { className: p, ...i ? {
2701
+ const o = "uiforge-video-preview", p = `${o} ${r}`.trim();
2702
+ return /* @__PURE__ */ u(a ? "button" : "div", { className: p, ...a ? {
1809
2703
  type: "button",
1810
2704
  onClick: () => {
1811
- i && i();
2705
+ a && a();
1812
2706
  },
1813
- onKeyDown: (H) => {
1814
- i && (H.key === "Enter" || H.key === " ") && (H.preventDefault(), i());
2707
+ onKeyDown: (P) => {
2708
+ a && (P.key === "Enter" || P.key === " ") && (P.preventDefault(), a());
1815
2709
  }
1816
2710
  } : {}, children: [
1817
- /* @__PURE__ */ e("div", { className: `${h}__icon-container`, children: n || /* @__PURE__ */ e(Nt, {}) }),
1818
- /* @__PURE__ */ e("span", { className: `${h}__title`, children: t })
2711
+ /* @__PURE__ */ n("div", { className: `${o}__icon-container`, children: t || /* @__PURE__ */ n(ir, {}) }),
2712
+ /* @__PURE__ */ n("span", { className: `${o}__title`, children: e })
1819
2713
  ] });
1820
2714
  };
1821
2715
  export {
1822
- we as ActivityIcons,
1823
- ot as AlienIcon,
1824
- mt as BriefcaseIcon,
1825
- it as BugIcon,
1826
- wt as BuildIcon,
1827
- Wt as BusinessIcons,
1828
- It as Button,
1829
- gt as CalendarIcon,
1830
- ht as ChartIcon,
1831
- qe as CheckIcon,
1832
- Fe as CloseIcon,
1833
- rt as CloudIcon,
1834
- lt as CodeIcon,
1835
- ze as CommentIcon,
1836
- He as CommitIcon,
1837
- tt as DatabaseIcon,
1838
- Ue as DeployIcon,
1839
- yt as DeploymentIcon,
1840
- Ot as DevProcessIcons,
1841
- ft as DocumentIcon,
1842
- Je as DumbbellIcon,
1843
- zt as FitnessIcons,
1844
- je as FoldIcon,
1845
- Te as ForkIcon,
1846
- pt as GitBranchIcon,
1847
- Qe as HeartRateIcon,
1848
- Ee as IssueIcon,
1849
- Ze as MeditationIcon,
1850
- ut as MeetingIcon,
1851
- We as MergeIcon,
1852
- st as PlanetIcon,
1853
- vt as PullRequestDraftIcon,
1854
- Ae as PullRequestIcon,
1855
- Oe as ReleaseIcon,
1856
- _t as ReviewIcon,
1857
- ct as RocketIcon,
1858
- Ye as RunningIcon,
1859
- at as SatelliteIcon,
1860
- et as ServerIcon,
1861
- Tt as SpaceIcons,
1862
- Pe as StarIcon,
1863
- Xe as StrengthIcon,
1864
- Ke as TaiChiIcon,
1865
- Pt as TechIcons,
1866
- dt as TelescopeIcon,
1867
- nt as TerminalIcon,
1868
- bt as TestingIcon,
1869
- Ut as UIForgeActivityStream,
1870
- St as UIForgeBlocksEditor,
1871
- At as UIForgeComboBox,
1872
- Bt as UIForgeGrid,
1873
- Rt as UIForgeVideo,
1874
- jt as UIForgeVideoPreview,
1875
- xe as UIIcons,
1876
- Re as UnfoldIcon,
1877
- Et as WellnessIcons,
1878
- Ge as YogaIcon,
1879
- Dt as blocksToHTML,
1880
- Ht as blocksToJSON,
1881
- Vt as blocksToMarkdown
2716
+ xe as ActivityIcons,
2717
+ ht as AlienIcon,
2718
+ bt as BriefcaseIcon,
2719
+ lt as BugIcon,
2720
+ Ct as BuildIcon,
2721
+ wr as BusinessIcons,
2722
+ cr as Button,
2723
+ yt as CalendarIcon,
2724
+ ft as ChartIcon,
2725
+ Je as CheckIcon,
2726
+ Ye as CloseIcon,
2727
+ it as CloudIcon,
2728
+ ct as CodeIcon,
2729
+ He as CommentIcon,
2730
+ je as CommitIcon,
2731
+ ot as DatabaseIcon,
2732
+ qe as DeployIcon,
2733
+ $t as DeploymentIcon,
2734
+ _r as DevProcessIcons,
2735
+ gt as DocumentIcon,
2736
+ et as DumbbellIcon,
2737
+ gr as FitnessIcons,
2738
+ Ke as FoldIcon,
2739
+ We as ForkIcon,
2740
+ wt as GitBranchIcon,
2741
+ rt as HeartRateIcon,
2742
+ Re as IssueIcon,
2743
+ Qe as MeditationIcon,
2744
+ vt as MeetingIcon,
2745
+ Te as MergeIcon,
2746
+ mt as PlanetIcon,
2747
+ _t as PullRequestDraftIcon,
2748
+ Oe as PullRequestIcon,
2749
+ Fe as ReleaseIcon,
2750
+ kt as ReviewIcon,
2751
+ dt as RocketIcon,
2752
+ tt as RunningIcon,
2753
+ ut as SatelliteIcon,
2754
+ at as ServerIcon,
2755
+ br as SpaceIcons,
2756
+ ze as StarIcon,
2757
+ nt as StrengthIcon,
2758
+ Ge as TaiChiIcon,
2759
+ yr as TechIcons,
2760
+ pt as TelescopeIcon,
2761
+ st as TerminalIcon,
2762
+ xt as TestingIcon,
2763
+ xr as UIForgeActivityStream,
2764
+ ur as UIForgeBlocksEditor,
2765
+ fr as UIForgeComboBox,
2766
+ dr as UIForgeGrid,
2767
+ Cr as UIForgeVideo,
2768
+ Ir as UIForgeVideoPreview,
2769
+ $e as UIIcons,
2770
+ Ze as UnfoldIcon,
2771
+ vr as WellnessIcons,
2772
+ Xe as YogaIcon,
2773
+ hr as blocksToHTML,
2774
+ pr as blocksToJSON,
2775
+ mr as blocksToMarkdown,
2776
+ Ie as detectProvider,
2777
+ Ne as extractVideoId,
2778
+ $r as getEmbedUrlFromVideoUrl,
2779
+ kr as isAdultContent,
2780
+ _e as providersByName,
2781
+ Ce as videoProviders
1882
2782
  };