@weasel-js/ui 0.5.1 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/dist/chunks/ActionBar-CiKvEvXi.js +63 -0
  2. package/dist/chunks/ActionBar-CiKvEvXi.js.map +1 -0
  3. package/dist/chunks/ActionsBar-CzU6Of3B.js +94 -0
  4. package/dist/chunks/ActionsBar-CzU6Of3B.js.map +1 -0
  5. package/dist/chunks/Badge-DU8ihE7Z.js +2942 -0
  6. package/dist/chunks/Badge-DU8ihE7Z.js.map +1 -0
  7. package/dist/chunks/Button-9QNIYugK.js +87 -0
  8. package/dist/chunks/Button-9QNIYugK.js.map +1 -0
  9. package/dist/chunks/Callout-CvTKW1sd.js +114 -0
  10. package/dist/chunks/Callout-CvTKW1sd.js.map +1 -0
  11. package/dist/chunks/Checkbox-BeWFZr1M.js +47 -0
  12. package/dist/chunks/Checkbox-BeWFZr1M.js.map +1 -0
  13. package/dist/chunks/ColorField-B7vHaU5G.js +60 -0
  14. package/dist/chunks/ColorField-B7vHaU5G.js.map +1 -0
  15. package/dist/chunks/ComboBox-yfrxG0_I.js +88 -0
  16. package/dist/chunks/ComboBox-yfrxG0_I.js.map +1 -0
  17. package/dist/chunks/CurveEditor-BEQtef4P.js +786 -0
  18. package/dist/chunks/CurveEditor-BEQtef4P.js.map +1 -0
  19. package/dist/chunks/DataGrid-mUq38k0Q.js +186 -0
  20. package/dist/chunks/DataGrid-mUq38k0Q.js.map +1 -0
  21. package/dist/chunks/Dialog-tAi14bY3.js +58 -0
  22. package/dist/chunks/Dialog-tAi14bY3.js.map +1 -0
  23. package/dist/chunks/Field-4cagmYlT.js +31 -0
  24. package/dist/chunks/Field-4cagmYlT.js.map +1 -0
  25. package/dist/chunks/Input-DRei6KJr.js +55 -0
  26. package/dist/chunks/Input-DRei6KJr.js.map +1 -0
  27. package/dist/chunks/Keycaps-B9dJMYx_.js +397 -0
  28. package/dist/chunks/Keycaps-B9dJMYx_.js.map +1 -0
  29. package/dist/chunks/NumberField-BAmJwxw0.js +59 -0
  30. package/dist/chunks/NumberField-BAmJwxw0.js.map +1 -0
  31. package/dist/chunks/OptionsBar-CHOP_CiW.js +98 -0
  32. package/dist/chunks/OptionsBar-CHOP_CiW.js.map +1 -0
  33. package/dist/chunks/Plot2D-CEnhzodm.js +168 -0
  34. package/dist/chunks/Plot2D-CEnhzodm.js.map +1 -0
  35. package/dist/chunks/PointPlotter-Dvh5cyOC.js +16 -0
  36. package/dist/chunks/PointPlotter-Dvh5cyOC.js.map +1 -0
  37. package/dist/chunks/Powerline-W_yqAVMc.js +36 -0
  38. package/dist/chunks/Powerline-W_yqAVMc.js.map +1 -0
  39. package/dist/chunks/Prefs-NOoGuUHy.js +238 -0
  40. package/dist/chunks/Prefs-NOoGuUHy.js.map +1 -0
  41. package/dist/chunks/RadioGroup-DUlTy95a.js +49 -0
  42. package/dist/chunks/RadioGroup-DUlTy95a.js.map +1 -0
  43. package/dist/chunks/RangeSlider-Bks9GQuO.js +52 -0
  44. package/dist/chunks/RangeSlider-Bks9GQuO.js.map +1 -0
  45. package/dist/chunks/Select-BV70VU5O.js +97 -0
  46. package/dist/chunks/Select-BV70VU5O.js.map +1 -0
  47. package/dist/chunks/SelectionPanel-D_U7GKup.js +283 -0
  48. package/dist/chunks/SelectionPanel-D_U7GKup.js.map +1 -0
  49. package/dist/chunks/Sidebar-Bk9_TPhX.js +26 -0
  50. package/dist/chunks/Sidebar-Bk9_TPhX.js.map +1 -0
  51. package/dist/chunks/SidebarPanel-Nd9Od5WD.js +59 -0
  52. package/dist/chunks/SidebarPanel-Nd9Od5WD.js.map +1 -0
  53. package/dist/chunks/Slider-sUJGgmKR.js +221 -0
  54. package/dist/chunks/Slider-sUJGgmKR.js.map +1 -0
  55. package/dist/chunks/Switch-iUmlnP_b.js +27 -0
  56. package/dist/chunks/Switch-iUmlnP_b.js.map +1 -0
  57. package/dist/chunks/Tabs-DCs-Ww2f.js +41 -0
  58. package/dist/chunks/Tabs-DCs-Ww2f.js.map +1 -0
  59. package/dist/chunks/Toast-NdSJo2vj.js +128 -0
  60. package/dist/chunks/Toast-NdSJo2vj.js.map +1 -0
  61. package/dist/chunks/ToggleBar-BfcvLaOr.js +120 -0
  62. package/dist/chunks/ToggleBar-BfcvLaOr.js.map +1 -0
  63. package/dist/chunks/ToolButton-GAzBOvcR.js +53 -0
  64. package/dist/chunks/ToolButton-GAzBOvcR.js.map +1 -0
  65. package/dist/chunks/ToolGroup-Btg47vJF.js +25 -0
  66. package/dist/chunks/ToolGroup-Btg47vJF.js.map +1 -0
  67. package/dist/chunks/ToolPalette-C8V-I-uX.js +117 -0
  68. package/dist/chunks/ToolPalette-C8V-I-uX.js.map +1 -0
  69. package/dist/chunks/Tooltip-Clgn4trm.js +39 -0
  70. package/dist/chunks/Tooltip-Clgn4trm.js.map +1 -0
  71. package/dist/chunks/keyGlyph-BDH5fqkO.js +22 -0
  72. package/dist/chunks/keyGlyph-BDH5fqkO.js.map +1 -0
  73. package/dist/components/ActionBar/index.js +2 -0
  74. package/dist/components/ActionsBar/index.js +2 -0
  75. package/dist/components/Badge/index.js +2 -0
  76. package/dist/components/Button/index.js +2 -0
  77. package/dist/components/Callout/index.js +2 -0
  78. package/dist/components/Checkbox/index.js +2 -0
  79. package/dist/components/ColorField/index.js +2 -0
  80. package/dist/components/ComboBox/index.js +2 -0
  81. package/dist/components/CurveEditor/index.js +2 -0
  82. package/dist/components/DataGrid/index.js +2 -0
  83. package/dist/components/Dialog/index.js +2 -0
  84. package/dist/components/Field/index.js +2 -0
  85. package/dist/components/Input/index.js +2 -0
  86. package/dist/components/Keycaps/index.js +3 -0
  87. package/dist/components/NumberField/index.js +2 -0
  88. package/dist/components/OptionsBar/index.js +2 -0
  89. package/dist/components/Plot2D/index.js +2 -0
  90. package/dist/components/PointPlotter/index.js +2 -0
  91. package/dist/components/Powerline/index.js +3 -0
  92. package/dist/components/Prefs/index.js +2 -0
  93. package/dist/components/RadioGroup/index.js +2 -0
  94. package/dist/components/RangeSlider/index.js +2 -0
  95. package/dist/components/Select/index.js +2 -0
  96. package/dist/components/SelectionPanel/index.js +2 -0
  97. package/dist/components/Sidebar/index.js +2 -0
  98. package/dist/components/SidebarPanel/index.js +2 -0
  99. package/dist/components/Slider/index.js +2 -0
  100. package/dist/components/Switch/index.js +2 -0
  101. package/dist/components/Tabs/index.js +2 -0
  102. package/dist/components/Toast/index.js +2 -0
  103. package/dist/components/ToggleBar/index.js +2 -0
  104. package/dist/components/ToolButton/index.js +2 -0
  105. package/dist/components/ToolGroup/index.js +2 -0
  106. package/dist/components/ToolPalette/index.js +2 -0
  107. package/dist/components/Tooltip/index.js +2 -0
  108. package/dist/index.js +49 -6749
  109. package/dist/index.js.map +1 -1
  110. package/dist/style.css +1 -1
  111. package/package.json +8 -4
@@ -0,0 +1,2942 @@
1
+ import { useEffect as e, useId as t, useLayoutEffect as n, useRef as r, useState as i } from "react";
2
+ import { Fragment as a, jsx as o, jsxs as s } from "react/jsx-runtime";
3
+ var c = {
4
+ badge: "_badge_18w8w_1",
5
+ deco: "_deco_18w8w_33",
6
+ content: "_content_18w8w_49",
7
+ remove: "_remove_18w8w_161"
8
+ }, l = {
9
+ Component: () => null,
10
+ insets: {
11
+ top: 0,
12
+ right: 0,
13
+ bottom: 0,
14
+ left: 0
15
+ },
16
+ stretches: !0,
17
+ renderMode: "css"
18
+ }, u = {
19
+ Component: () => null,
20
+ insets: {
21
+ top: 0,
22
+ right: 0,
23
+ bottom: 0,
24
+ left: 0
25
+ },
26
+ stretches: !0,
27
+ renderMode: "css"
28
+ }, d = { erosion: .16 }, f = {
29
+ compose: (e) => ({
30
+ base: "rounded-rect",
31
+ baseParams: { erosion: {
32
+ ...d,
33
+ ...e
34
+ }.erosion }
35
+ }),
36
+ insets: {
37
+ top: 0,
38
+ right: 0,
39
+ bottom: 0,
40
+ left: 0
41
+ },
42
+ stretches: !0,
43
+ defaults: d
44
+ }, p = {
45
+ erosion: .28,
46
+ eccentricity: 1
47
+ };
48
+ function m(e, t) {
49
+ let n = e * t, r = e / t;
50
+ return [
51
+ `M ${n} 0`,
52
+ `L ${100 - n} 0`,
53
+ `A ${n} ${r} 0 0 0 100 ${r}`,
54
+ `L 100 ${100 - r}`,
55
+ `A ${n} ${r} 0 0 0 ${100 - n} 100`,
56
+ `L ${n} 100`,
57
+ `A ${n} ${r} 0 0 0 0 ${100 - r}`,
58
+ `L 0 ${r}`,
59
+ `A ${n} ${r} 0 0 0 ${n} 0`,
60
+ "Z"
61
+ ].join(" ");
62
+ }
63
+ var h = {
64
+ Component: ({ variant: e, focused: t, params: n }) => {
65
+ let r = {
66
+ ...p,
67
+ ...n
68
+ }, i = m(Math.max(0, Math.min(r.erosion, 1)) * 49, Math.max(.2, Math.min(r.eccentricity, 5)));
69
+ return /* @__PURE__ */ s(a, { children: [
70
+ (e === "solid" || e === "subtle") && /* @__PURE__ */ o("path", {
71
+ className: "badge-fill",
72
+ d: i
73
+ }),
74
+ (e === "outline" || e === "solid") && /* @__PURE__ */ o("path", {
75
+ className: "badge-stroke",
76
+ d: i
77
+ }),
78
+ t && /* @__PURE__ */ o("path", {
79
+ className: "badge-focus",
80
+ d: i,
81
+ transform: "translate(50 50) scale(1.06) translate(-50 -50)"
82
+ })
83
+ ] });
84
+ },
85
+ insets: {
86
+ top: 0,
87
+ right: 4,
88
+ bottom: 0,
89
+ left: 4
90
+ },
91
+ stretches: !0,
92
+ defaults: p
93
+ }, g = {
94
+ holeRadius: 3.5,
95
+ holePitch: 11
96
+ };
97
+ function _({ variant: e, focused: a, params: c }) {
98
+ let l = {
99
+ ...g,
100
+ ...c
101
+ }, u = t(), d = r(null), [f, p] = i({
102
+ w: 100,
103
+ h: 100
104
+ });
105
+ n(() => {
106
+ let e = d.current?.ownerSVGElement;
107
+ if (!e) return;
108
+ let t = () => {
109
+ let t = e.getBoundingClientRect();
110
+ t.width > 0 && t.height > 0 && p({
111
+ w: t.width,
112
+ h: t.height
113
+ });
114
+ };
115
+ if (t(), typeof ResizeObserver > "u") return;
116
+ let n = new ResizeObserver(t);
117
+ return n.observe(e), () => n.disconnect();
118
+ }, []);
119
+ let m = l.holeRadius / f.w * 100, h = l.holeRadius / f.h * 100, _ = Math.max(2, Math.round(f.w / l.holePitch)), v = Math.max(2, Math.round(f.h / l.holePitch)), y = [];
120
+ for (let e = 0; e < _; e++) {
121
+ let t = (e + .5) / _;
122
+ y.push({
123
+ cx: t * 100,
124
+ cy: 0
125
+ }), y.push({
126
+ cx: t * 100,
127
+ cy: 100
128
+ });
129
+ }
130
+ for (let e = 0; e < v; e++) {
131
+ let t = (e + .5) / v;
132
+ y.push({
133
+ cx: 0,
134
+ cy: t * 100
135
+ }), y.push({
136
+ cx: 100,
137
+ cy: t * 100
138
+ });
139
+ }
140
+ return /* @__PURE__ */ s("g", {
141
+ ref: d,
142
+ children: [
143
+ /* @__PURE__ */ o("defs", { children: /* @__PURE__ */ s("mask", {
144
+ id: u,
145
+ maskUnits: "userSpaceOnUse",
146
+ x: "-5",
147
+ y: "-5",
148
+ width: "110",
149
+ height: "110",
150
+ children: [/* @__PURE__ */ o("rect", {
151
+ x: "0",
152
+ y: "0",
153
+ width: "100",
154
+ height: "100",
155
+ fill: "white"
156
+ }), y.map((e, t) => /* @__PURE__ */ o("ellipse", {
157
+ cx: e.cx,
158
+ cy: e.cy,
159
+ rx: m,
160
+ ry: h,
161
+ fill: "black"
162
+ }, t))]
163
+ }) }),
164
+ (e === "solid" || e === "subtle") && /* @__PURE__ */ o("rect", {
165
+ className: "badge-fill",
166
+ x: "0",
167
+ y: "0",
168
+ width: "100",
169
+ height: "100",
170
+ mask: `url(#${u})`
171
+ }),
172
+ (e === "outline" || e === "solid") && /* @__PURE__ */ o("rect", {
173
+ className: "badge-stroke",
174
+ x: "0",
175
+ y: "0",
176
+ width: "100",
177
+ height: "100",
178
+ mask: `url(#${u})`
179
+ }),
180
+ a && /* @__PURE__ */ o("rect", {
181
+ className: "badge-focus",
182
+ x: "-4",
183
+ y: "-4",
184
+ width: "108",
185
+ height: "108",
186
+ mask: `url(#${u})`
187
+ })
188
+ ]
189
+ });
190
+ }
191
+ var v = {
192
+ Component: _,
193
+ insets: {
194
+ top: 2,
195
+ right: 4,
196
+ bottom: 2,
197
+ left: 4
198
+ },
199
+ stretches: !0,
200
+ defaults: g
201
+ }, y = {
202
+ tipHeight: 25,
203
+ tipTruncation: 0
204
+ };
205
+ function b(e, t) {
206
+ let n = Math.max(0, Math.min(e, 49)), r = Math.max(0, Math.min(t, n));
207
+ if (r <= 0) return [
208
+ [50, 0],
209
+ [100, n],
210
+ [100, 100 - n],
211
+ [50, 100],
212
+ [0, 100 - n],
213
+ [0, n]
214
+ ];
215
+ let i = r / n, a = 50 - 50 * i, o = 50 + 50 * i;
216
+ return [
217
+ [a, r],
218
+ [o, r],
219
+ [100, n],
220
+ [100, 100 - n],
221
+ [o, 100 - r],
222
+ [a, 100 - r],
223
+ [0, 100 - n],
224
+ [0, n]
225
+ ];
226
+ }
227
+ var x = {
228
+ compose: (e) => {
229
+ let t = {
230
+ ...y,
231
+ ...e
232
+ };
233
+ return {
234
+ base: "polygon",
235
+ baseParams: { vertices: b(t.tipHeight, t.tipTruncation) }
236
+ };
237
+ },
238
+ insets: {
239
+ top: 4,
240
+ right: 6,
241
+ bottom: 4,
242
+ left: 6
243
+ },
244
+ stretches: !0,
245
+ defaults: y
246
+ }, S = {
247
+ points: 12,
248
+ outerR: 48,
249
+ innerR: 36,
250
+ rotation: -7,
251
+ erosion: 0
252
+ };
253
+ function C(e, t, n, r, i) {
254
+ let a = e * 2, o = Math.PI * 2 / a, s = r * Math.PI / 180, c = Math.max(0, Math.min(i, 1)), l = [];
255
+ for (let e = 0; e < a; e++) {
256
+ let r = e % 2 == 0 ? t : n, i = s + e * o;
257
+ l.push([50 + Math.cos(i) * r, 50 + Math.sin(i) * r]);
258
+ }
259
+ if (c <= 0) {
260
+ let e = "";
261
+ for (let t = 0; t < l.length; t++) e += (t === 0 ? "M " : " L ") + l[t][0].toFixed(2) + " " + l[t][1].toFixed(2);
262
+ return e + " Z";
263
+ }
264
+ let u = "";
265
+ for (let e = 0; e < l.length; e++) {
266
+ let t = l[(e + l.length - 1) % l.length], n = l[e], r = l[(e + 1) % l.length], i = c * .45, a = n[0] + (t[0] - n[0]) * i, o = n[1] + (t[1] - n[1]) * i, s = n[0] + (r[0] - n[0]) * i, d = n[1] + (r[1] - n[1]) * i;
267
+ e === 0 ? u += `M ${a.toFixed(2)} ${o.toFixed(2)}` : u += ` L ${a.toFixed(2)} ${o.toFixed(2)}`, u += ` Q ${n[0].toFixed(2)} ${n[1].toFixed(2)} ${s.toFixed(2)} ${d.toFixed(2)}`;
268
+ }
269
+ return u + " Z";
270
+ }
271
+ var w = {
272
+ Component: ({ variant: e, focused: t, params: n }) => {
273
+ let r = {
274
+ ...S,
275
+ ...n
276
+ }, i = C(r.points, r.outerR, r.innerR, r.rotation, r.erosion), c = C(r.points, r.outerR + 4, r.innerR + 3, r.rotation, r.erosion);
277
+ return /* @__PURE__ */ s(a, { children: [
278
+ (e === "solid" || e === "subtle") && /* @__PURE__ */ o("path", {
279
+ className: "badge-fill",
280
+ d: i
281
+ }),
282
+ (e === "outline" || e === "solid") && /* @__PURE__ */ o("path", {
283
+ className: "badge-stroke",
284
+ d: i
285
+ }),
286
+ t && /* @__PURE__ */ o("path", {
287
+ className: "badge-focus",
288
+ d: c
289
+ })
290
+ ] });
291
+ },
292
+ insets: {
293
+ top: 8,
294
+ right: 8,
295
+ bottom: 8,
296
+ left: 8
297
+ },
298
+ stretches: !0,
299
+ defaults: S
300
+ }, T = {
301
+ scallopRadius: 5,
302
+ scallopSpacing: 12,
303
+ irregularity: 0
304
+ }, E = {
305
+ compose: (e) => {
306
+ let t = {
307
+ ...T,
308
+ ...e
309
+ };
310
+ return {
311
+ base: "rounded-rect",
312
+ baseParams: { erosion: 0 },
313
+ effects: [{
314
+ type: "scallops",
315
+ params: {
316
+ scallopRadius: t.scallopRadius,
317
+ scallopSpacing: t.scallopSpacing,
318
+ irregularity: t.irregularity
319
+ }
320
+ }]
321
+ };
322
+ },
323
+ insets: {
324
+ top: 4,
325
+ right: 6,
326
+ bottom: 4,
327
+ left: 6
328
+ },
329
+ stretches: !0,
330
+ defaults: T
331
+ }, D = {
332
+ pointDepth: 100,
333
+ shoulderY: 55,
334
+ curveTightness: .7,
335
+ erosion: .33
336
+ };
337
+ function O({ variant: e, focused: t, params: a }) {
338
+ let c = {
339
+ ...D,
340
+ ...a
341
+ }, l = r(null), [u, d] = i({
342
+ w: 100,
343
+ h: 100
344
+ });
345
+ n(() => {
346
+ let e = l.current?.ownerSVGElement;
347
+ if (!e) return;
348
+ let t = () => {
349
+ let t = e.getBoundingClientRect();
350
+ t.width > 0 && t.height > 0 && d({
351
+ w: t.width,
352
+ h: t.height
353
+ });
354
+ };
355
+ if (t(), typeof ResizeObserver > "u") return;
356
+ let n = new ResizeObserver(t);
357
+ return n.observe(e), () => n.disconnect();
358
+ }, []);
359
+ let f = Math.max(60, Math.min(c.pointDepth, 110)), p = Math.max(20, Math.min(c.shoulderY, f - 5)), m = p + (f - p) * Math.max(.1, Math.min(c.curveTightness, 1)), h = Math.max(0, Math.min(c.erosion, 1)) * 12, g = h / u.w * 100, _ = h / u.h * 100, v = [
360
+ `M ${g.toFixed(3)} 0`,
361
+ `L ${(100 - g).toFixed(3)} 0`,
362
+ `A ${g.toFixed(3)} ${_.toFixed(3)} 0 0 1 100 ${_.toFixed(3)}`,
363
+ `L 100 ${p}`,
364
+ `Q 100 ${m} 50 ${f}`,
365
+ `Q 0 ${m} 0 ${p}`,
366
+ `L 0 ${_.toFixed(3)}`,
367
+ `A ${g.toFixed(3)} ${_.toFixed(3)} 0 0 1 ${g.toFixed(3)} 0`,
368
+ "Z"
369
+ ].join(" ");
370
+ return /* @__PURE__ */ s("g", {
371
+ ref: l,
372
+ children: [
373
+ (e === "solid" || e === "subtle") && /* @__PURE__ */ o("path", {
374
+ className: "badge-fill",
375
+ d: v
376
+ }),
377
+ (e === "outline" || e === "solid") && /* @__PURE__ */ o("path", {
378
+ className: "badge-stroke",
379
+ d: v
380
+ }),
381
+ t && /* @__PURE__ */ o("path", {
382
+ className: "badge-focus",
383
+ d: v,
384
+ transform: "translate(50 50) scale(1.06) translate(-50 -50)"
385
+ })
386
+ ]
387
+ });
388
+ }
389
+ var k = {
390
+ Component: O,
391
+ insets: {
392
+ top: 2,
393
+ right: 8,
394
+ bottom: 14,
395
+ left: 8
396
+ },
397
+ stretches: !0,
398
+ defaults: D
399
+ }, A = {
400
+ left: "inward",
401
+ right: "outward",
402
+ taperWidth: 8
403
+ }, j = {
404
+ compose: (e) => ({
405
+ base: "ribbon",
406
+ baseParams: {
407
+ ...A,
408
+ ...e
409
+ }
410
+ }),
411
+ insets: {
412
+ top: 0,
413
+ right: 0,
414
+ bottom: 0,
415
+ left: 0
416
+ },
417
+ stretches: !0,
418
+ defaults: A
419
+ }, M = {
420
+ points: 44,
421
+ cornerRadius: 6,
422
+ spikeLen: 12,
423
+ spikeBaseWidth: 3,
424
+ irregularity: 0
425
+ }, N = {
426
+ compose: (e) => {
427
+ let t = {
428
+ ...M,
429
+ ...e
430
+ };
431
+ return {
432
+ base: "rounded-rect",
433
+ baseParams: { erosion: Math.max(0, Math.min(1, t.cornerRadius / 11)) },
434
+ effects: [{
435
+ type: "spikes",
436
+ params: {
437
+ count: t.points,
438
+ length: t.spikeLen,
439
+ baseWidth: t.spikeBaseWidth,
440
+ vertScale: 1,
441
+ horzScale: 1,
442
+ diagonalScale: 1,
443
+ irregularity: t.irregularity
444
+ }
445
+ }]
446
+ };
447
+ },
448
+ insets: {
449
+ top: 6,
450
+ right: 8,
451
+ bottom: 6,
452
+ left: 8
453
+ },
454
+ stretches: !0,
455
+ defaults: M
456
+ }, P = {
457
+ points: 16,
458
+ outerR: 58,
459
+ innerR: 50,
460
+ rotation: -5
461
+ };
462
+ function F(e, t, n, r) {
463
+ let i = e * 2, a = Math.PI * 2 / i, o = r * Math.PI / 180, s = "";
464
+ for (let e = 0; e < i; e++) {
465
+ let r = e % 2 == 0 ? t : n, i = o + e * a, c = 50 + Math.cos(i) * r, l = 50 + Math.sin(i) * r;
466
+ s += (e === 0 ? "M " : " L ") + c.toFixed(2) + " " + l.toFixed(2);
467
+ }
468
+ return s + " Z";
469
+ }
470
+ var ee = {
471
+ Component: ({ variant: e, focused: t, params: n }) => {
472
+ let { points: r, outerR: i, innerR: c, rotation: l } = {
473
+ ...P,
474
+ ...n
475
+ }, u = F(r, i, c, l), d = F(r, i + 4, c + 3, l);
476
+ return /* @__PURE__ */ s(a, { children: [
477
+ (e === "solid" || e === "subtle") && /* @__PURE__ */ o("path", {
478
+ className: "badge-fill",
479
+ d: u
480
+ }),
481
+ (e === "outline" || e === "solid") && /* @__PURE__ */ o("path", {
482
+ className: "badge-stroke",
483
+ d: u
484
+ }),
485
+ t && /* @__PURE__ */ o("path", {
486
+ className: "badge-focus",
487
+ d
488
+ })
489
+ ] });
490
+ },
491
+ insets: {
492
+ top: 4,
493
+ right: 4,
494
+ bottom: 4,
495
+ left: 4
496
+ },
497
+ stretches: !0,
498
+ defaults: P
499
+ }, I = {
500
+ biteRadius: 3,
501
+ biteSpacing: 8,
502
+ irregularity: 0
503
+ }, te = {
504
+ compose: (e) => {
505
+ let t = {
506
+ ...I,
507
+ ...e
508
+ };
509
+ return {
510
+ base: "rounded-rect",
511
+ baseParams: { erosion: 0 },
512
+ effects: [{
513
+ type: "bites",
514
+ params: {
515
+ biteRadius: t.biteRadius,
516
+ biteSpacing: t.biteSpacing,
517
+ irregularity: t.irregularity
518
+ }
519
+ }]
520
+ };
521
+ },
522
+ insets: {
523
+ top: 4,
524
+ right: 6,
525
+ bottom: 4,
526
+ left: 6
527
+ },
528
+ stretches: !0,
529
+ defaults: I
530
+ }, ne = {
531
+ bumpWidth: 24,
532
+ puffiness: 14,
533
+ erosion: .2,
534
+ irregularity: 0
535
+ }, re = {
536
+ compose: (e) => {
537
+ let t = {
538
+ ...ne,
539
+ ...e
540
+ };
541
+ return {
542
+ base: "rounded-rect",
543
+ baseParams: { erosion: t.erosion },
544
+ effects: [{
545
+ type: "puffs",
546
+ params: {
547
+ bumpWidth: t.bumpWidth,
548
+ puffiness: t.puffiness,
549
+ irregularity: t.irregularity
550
+ }
551
+ }]
552
+ };
553
+ },
554
+ insets: {
555
+ top: 6,
556
+ right: 8,
557
+ bottom: 6,
558
+ left: 8
559
+ },
560
+ stretches: !0,
561
+ defaults: ne
562
+ }, ie = {
563
+ eaveY: 32,
564
+ peakHeight: 32,
565
+ roofOverhang: 0
566
+ }, L = {
567
+ compose: (e) => {
568
+ let t = {
569
+ ...ie,
570
+ ...e
571
+ }, n = Math.max(2, Math.min(t.eaveY, 95)), r = n - Math.max(0, t.peakHeight), i = Math.max(0, Math.min(t.roofOverhang, 12));
572
+ return {
573
+ base: "polygon",
574
+ baseParams: { vertices: [
575
+ [50, r],
576
+ [100 + i, n],
577
+ [100, n],
578
+ [100, 100],
579
+ [0, 100],
580
+ [0, n],
581
+ [-i, n]
582
+ ] }
583
+ };
584
+ },
585
+ insets: {
586
+ top: 10,
587
+ right: 4,
588
+ bottom: 0,
589
+ left: 4
590
+ },
591
+ stretches: !0,
592
+ defaults: ie
593
+ }, ae = {
594
+ bevelWidth: 6,
595
+ lightFrom: "tl",
596
+ rivetRadius: 2.4,
597
+ rivetInset: 7,
598
+ sheenIntensity: .22
599
+ }, oe = {
600
+ compose: (e) => {
601
+ let t = {
602
+ ...ae,
603
+ ...e
604
+ };
605
+ return {
606
+ base: "rounded-rect",
607
+ baseParams: { erosion: 0 },
608
+ effects: [
609
+ {
610
+ type: "bevel",
611
+ params: {
612
+ bevelWidth: t.bevelWidth,
613
+ lightFrom: t.lightFrom
614
+ }
615
+ },
616
+ {
617
+ type: "sheen",
618
+ params: {
619
+ lightFrom: t.lightFrom,
620
+ intensity: t.sheenIntensity
621
+ }
622
+ },
623
+ {
624
+ type: "rivets",
625
+ params: {
626
+ radius: t.rivetRadius,
627
+ inset: t.rivetInset,
628
+ lightFrom: t.lightFrom
629
+ }
630
+ }
631
+ ]
632
+ };
633
+ },
634
+ insets: {
635
+ top: 6,
636
+ right: 8,
637
+ bottom: 6,
638
+ left: 8
639
+ },
640
+ stretches: !0,
641
+ defaults: ae
642
+ }, R = {
643
+ topInset: 12,
644
+ pointDepth: 100
645
+ };
646
+ function se(e, t) {
647
+ let n = Math.max(0, Math.min(e, 35)), r = Math.max(60, Math.min(t, 110));
648
+ return [
649
+ `M ${n} 6`,
650
+ `Q ${n / 2} 0 ${n + 4} 0`,
651
+ `L ${100 - n - 4} 0`,
652
+ `Q ${100 - n / 2} 0 ${100 - n} 6`,
653
+ `L ${100 - n * .4} ${r * .35}`,
654
+ `Q ${100 - n} ${r * .7} 50 ${r}`,
655
+ `Q ${n} ${r * .7} ${n * .4} ${r * .35}`,
656
+ "Z"
657
+ ].join(" ");
658
+ }
659
+ var z = {
660
+ Component: ({ variant: e, focused: t, params: n }) => {
661
+ let r = {
662
+ ...R,
663
+ ...n
664
+ }, i = se(r.topInset, r.pointDepth);
665
+ return /* @__PURE__ */ s(a, { children: [
666
+ (e === "solid" || e === "subtle") && /* @__PURE__ */ o("path", {
667
+ className: "badge-fill",
668
+ d: i
669
+ }),
670
+ (e === "outline" || e === "solid") && /* @__PURE__ */ o("path", {
671
+ className: "badge-stroke",
672
+ d: i
673
+ }),
674
+ t && /* @__PURE__ */ o("path", {
675
+ className: "badge-focus",
676
+ d: i,
677
+ transform: "translate(50 50) scale(1.06) translate(-50 -50)"
678
+ })
679
+ ] });
680
+ },
681
+ insets: {
682
+ top: 4,
683
+ right: 10,
684
+ bottom: 14,
685
+ left: 10
686
+ },
687
+ stretches: !0,
688
+ defaults: R
689
+ }, ce = "M 35 0 L 30 12 Q 15 30 15 55 Q 15 75 30 90 L 30 100 L 70 100 L 70 90 Q 85 75 85 55 Q 85 30 70 12 L 65 0 Z", B = {
690
+ Component: ({ variant: e, focused: t }) => /* @__PURE__ */ s(a, { children: [
691
+ (e === "solid" || e === "subtle") && /* @__PURE__ */ o("path", {
692
+ className: "badge-fill",
693
+ d: ce
694
+ }),
695
+ (e === "outline" || e === "solid") && /* @__PURE__ */ o("path", {
696
+ className: "badge-stroke",
697
+ d: ce
698
+ }),
699
+ t && /* @__PURE__ */ o("path", {
700
+ className: "badge-focus",
701
+ d: ce,
702
+ transform: "translate(50 50) scale(1.05) translate(-50 -50)"
703
+ })
704
+ ] }),
705
+ insets: {
706
+ top: 4,
707
+ right: 12,
708
+ bottom: 4,
709
+ left: 12
710
+ },
711
+ stretches: !0
712
+ }, V = {
713
+ headX: 6,
714
+ headHalfHeight: 23,
715
+ shoulderX: 33,
716
+ shoulderHalfHeight: 36,
717
+ footX: 100,
718
+ footHalfHeight: 29
719
+ }, le = {
720
+ compose: (e) => {
721
+ let t = {
722
+ ...V,
723
+ ...e
724
+ }, n = Math.max(0, Math.min(t.headX, 40)), r = Math.max(n + 1, Math.min(t.shoulderX, 70)), i = Math.max(r + 1, Math.min(t.footX, 100)), a = Math.max(2, Math.min(t.headHalfHeight, 50)), o = Math.max(0, Math.min(t.shoulderHalfHeight, 50)), s = Math.min(50, a + o), c = Math.max(2, Math.min(t.footHalfHeight, 50));
725
+ return {
726
+ base: "polygon",
727
+ baseParams: { vertices: [
728
+ [n, 50 - a],
729
+ [r, 50 - s],
730
+ [i, 50 - c],
731
+ [i, 50 + c],
732
+ [r, 50 + s],
733
+ [n, 50 + a]
734
+ ] }
735
+ };
736
+ },
737
+ insets: {
738
+ top: 4,
739
+ right: 6,
740
+ bottom: 4,
741
+ left: 11
742
+ },
743
+ stretches: !0,
744
+ defaults: V
745
+ }, H = {
746
+ teeth: 11,
747
+ tearDepth: 4,
748
+ sideToTopRatio: 3
749
+ };
750
+ function U(e, t) {
751
+ let n = Math.max(3, Math.floor(e)), r = Math.max(1, t), i = (e) => r * (.55 + .55 * Math.abs(Math.sin(e * 1.73 + .5))), a = "M 0 0 L 100 0";
752
+ for (let e = 0; e < n; e++) {
753
+ let t = (e + .5) / n * 100, r = (e + 1) / n * 100;
754
+ a += ` L ${(100 - i(e)).toFixed(3)} ${t.toFixed(3)} L 100 ${r.toFixed(3)}`;
755
+ }
756
+ a += " L 0 100";
757
+ for (let e = n - 1; e >= 0; e--) {
758
+ let t = (e + .5) / n * 100, r = e / n * 100;
759
+ a += ` L ${i(e + n).toFixed(3)} ${t.toFixed(3)} L 0 ${r.toFixed(3)}`;
760
+ }
761
+ return a + " Z";
762
+ }
763
+ var ue = 2, de = {
764
+ Component: ({ variant: e, focused: t, params: n }) => {
765
+ let r = {
766
+ ...H,
767
+ ...n
768
+ }, i = U(r.teeth, r.tearDepth);
769
+ return /* @__PURE__ */ s(a, { children: [
770
+ (e === "solid" || e === "subtle") && /* @__PURE__ */ o("path", {
771
+ className: "badge-fill",
772
+ d: i
773
+ }),
774
+ (e === "outline" || e === "solid") && /* @__PURE__ */ o("path", {
775
+ className: "badge-stroke",
776
+ d: i
777
+ }),
778
+ t && /* @__PURE__ */ o("path", {
779
+ className: "badge-focus",
780
+ d: i,
781
+ transform: "translate(50 50) scale(1.04) translate(-50 -50)"
782
+ })
783
+ ] });
784
+ },
785
+ insets: (e) => {
786
+ let t = Math.max(.2, Math.min(e.sideToTopRatio ?? H.sideToTopRatio, 10)), n = ue, r = Math.round(n * t);
787
+ return {
788
+ top: n,
789
+ right: r,
790
+ bottom: n,
791
+ left: r
792
+ };
793
+ },
794
+ stretches: !0,
795
+ defaults: H
796
+ }, W = "M 8 30 Q 0 50 8 70 L 92 70 Q 100 50 92 30 Z", fe = {
797
+ Component: ({ variant: e, focused: t }) => /* @__PURE__ */ s(a, { children: [
798
+ (e === "solid" || e === "subtle") && /* @__PURE__ */ o("path", {
799
+ className: "badge-fill",
800
+ d: W
801
+ }),
802
+ (e === "outline" || e === "solid") && /* @__PURE__ */ o("path", {
803
+ className: "badge-stroke",
804
+ d: W
805
+ }),
806
+ (e === "outline" || e === "solid") && /* @__PURE__ */ s(a, { children: [
807
+ /* @__PURE__ */ o("path", {
808
+ className: "badge-stroke",
809
+ d: "M 12 38 Q 30 35 50 39 T 88 38",
810
+ opacity: .5,
811
+ fill: "none"
812
+ }),
813
+ /* @__PURE__ */ o("path", {
814
+ className: "badge-stroke",
815
+ d: "M 10 46 Q 36 49 54 45 T 90 47",
816
+ opacity: .4,
817
+ fill: "none"
818
+ }),
819
+ /* @__PURE__ */ o("path", {
820
+ className: "badge-stroke",
821
+ d: "M 12 54 Q 28 51 52 56 T 88 54",
822
+ opacity: .55,
823
+ fill: "none"
824
+ }),
825
+ /* @__PURE__ */ o("path", {
826
+ className: "badge-stroke",
827
+ d: "M 10 62 Q 40 65 58 61 T 90 62",
828
+ opacity: .4,
829
+ fill: "none"
830
+ }),
831
+ /* @__PURE__ */ o("ellipse", {
832
+ className: "badge-stroke",
833
+ cx: "32",
834
+ cy: "50",
835
+ rx: "3.4",
836
+ ry: "2.8",
837
+ opacity: .7,
838
+ fill: "none"
839
+ }),
840
+ /* @__PURE__ */ o("ellipse", {
841
+ className: "badge-stroke",
842
+ cx: "32",
843
+ cy: "50",
844
+ rx: "1.4",
845
+ ry: "1.1",
846
+ opacity: .85,
847
+ fill: "none"
848
+ }),
849
+ /* @__PURE__ */ o("ellipse", {
850
+ className: "badge-stroke",
851
+ cx: "70",
852
+ cy: "42",
853
+ rx: "2.4",
854
+ ry: "2",
855
+ opacity: .6,
856
+ fill: "none"
857
+ })
858
+ ] }),
859
+ t && /* @__PURE__ */ o("path", {
860
+ className: "badge-focus",
861
+ d: W,
862
+ transform: "translate(50 50) scale(1.05) translate(-50 -50)"
863
+ })
864
+ ] }),
865
+ insets: {
866
+ top: 10,
867
+ right: 4,
868
+ bottom: 10,
869
+ left: 4
870
+ },
871
+ stretches: !0
872
+ }, G = {
873
+ spikeR: 50,
874
+ lobeR: 42,
875
+ valleyR: 25,
876
+ valleyAt: .5,
877
+ spikeCurvature: 1,
878
+ spikeBend: 0,
879
+ spikeTipErosion: 0,
880
+ lobeCurvature: 1,
881
+ lobeBend: 0,
882
+ lobeTipErosion: 0,
883
+ valleySmooth: 3,
884
+ rotation: 0,
885
+ samples: 192
886
+ }, pe = {
887
+ pill: l,
888
+ plain: u,
889
+ square: f,
890
+ notched: h,
891
+ perforated: v,
892
+ hexagon: x,
893
+ starburst: w,
894
+ scalloped: E,
895
+ shield: k,
896
+ ribbon: j,
897
+ beavis: N,
898
+ sparkler: ee,
899
+ postage: te,
900
+ cloud: re,
901
+ house: L,
902
+ plaque: oe,
903
+ crest: z,
904
+ urn: B,
905
+ coffin: le,
906
+ receipt: de,
907
+ wood: fe,
908
+ quatrefoil: {
909
+ compose: (e) => ({
910
+ base: "quatrefoil",
911
+ baseParams: {
912
+ ...G,
913
+ ...e
914
+ }
915
+ }),
916
+ insets: {
917
+ top: 10,
918
+ right: 14,
919
+ bottom: 10,
920
+ left: 14
921
+ },
922
+ stretches: !0,
923
+ defaults: G
924
+ }
925
+ }, K = { chamfer: 6 }, me = {
926
+ build: (e, t, n) => {
927
+ let r = {
928
+ ...K,
929
+ ...e
930
+ }, i = 100 / t, a = 100 / n, o = r.chamfer * i, s = r.chamfer * a, c = [
931
+ [o, 0],
932
+ [100 - o, 0],
933
+ [100, s],
934
+ [100, 100 - s],
935
+ [100 - o, 100],
936
+ [o, 100],
937
+ [0, 100 - s],
938
+ [0, s]
939
+ ], l = [], u = [0];
940
+ for (let e = 0; e < c.length; e++) {
941
+ let t = c[e], n = c[(e + 1) % c.length], r = (n[0] - t[0]) / i, o = (n[1] - t[1]) / a, s = Math.hypot(r, o);
942
+ l.push(s), u.push(u[u.length - 1] + s);
943
+ }
944
+ let d = u[u.length - 1];
945
+ return {
946
+ bodyPath: `M ${c[0][0]} ${c[0][1]} ` + c.slice(1).map(([e, t]) => `L ${e} ${t}`).join(" ") + " Z",
947
+ perimeterAt: (e) => {
948
+ let t = (e % d + d) % d;
949
+ for (let e = 0; e < l.length; e++) {
950
+ let n = u[e];
951
+ if (t <= u[e + 1] + 1e-9) {
952
+ let r = l[e] > 0 ? (t - n) / l[e] : 0, o = c[e], s = c[(e + 1) % c.length], u = o[0] + (s[0] - o[0]) * r, d = o[1] + (s[1] - o[1]) * r, f = (s[0] - o[0]) / i, p = (s[1] - o[1]) / a, m = Math.hypot(f, p) || 1;
953
+ return {
954
+ x: u,
955
+ y: d,
956
+ nx: p / m,
957
+ ny: -f / m
958
+ };
959
+ }
960
+ }
961
+ return {
962
+ x: c[0][0],
963
+ y: c[0][1],
964
+ nx: 0,
965
+ ny: -1
966
+ };
967
+ },
968
+ totalCss: d
969
+ };
970
+ },
971
+ defaults: K,
972
+ insets: {
973
+ top: 0,
974
+ right: 4,
975
+ bottom: 0,
976
+ left: 4
977
+ }
978
+ }, he = {
979
+ erosion: .16,
980
+ eccentricity: 1,
981
+ pinch: 0
982
+ }, ge = {
983
+ build: (e, t, n) => {
984
+ let r = {
985
+ ...he,
986
+ ...e
987
+ }, i = 100 / t, a = 100 / n, o = Math.max(0, Math.min(r.erosion, 1)), s = Math.max(.1, Math.min(r.eccentricity, 10)), c = Math.min(t, n) / 2 * o, l = c * i * s, u = c * a / s, d = Math.max(0, Math.min(l, 50)), f = Math.max(0, Math.min(u, 50)), p = (100 - 2 * d) / i, m = (100 - 2 * f) / a, h = c + c || 1, g = Math.PI * h * 1 / 4, _ = [
988
+ {
989
+ kind: "h-edge",
990
+ cssLen: p
991
+ },
992
+ {
993
+ kind: "tr-arc",
994
+ cssLen: g
995
+ },
996
+ {
997
+ kind: "v-edge",
998
+ cssLen: m
999
+ },
1000
+ {
1001
+ kind: "br-arc",
1002
+ cssLen: g
1003
+ },
1004
+ {
1005
+ kind: "h-edge-b",
1006
+ cssLen: p
1007
+ },
1008
+ {
1009
+ kind: "bl-arc",
1010
+ cssLen: g
1011
+ },
1012
+ {
1013
+ kind: "v-edge-l",
1014
+ cssLen: m
1015
+ },
1016
+ {
1017
+ kind: "tl-arc",
1018
+ cssLen: g
1019
+ }
1020
+ ], v = [0];
1021
+ for (let e of _) v.push(v[v.length - 1] + e.cssLen);
1022
+ let y = v[v.length - 1], b = (e) => {
1023
+ let t = (e % y + y) % y, n = 0;
1024
+ for (; n < _.length - 1 && t > v[n + 1];) n++;
1025
+ let r = t - v[n], i = _[n], a = i.cssLen > 0 ? r / i.cssLen : 0;
1026
+ switch (i.kind) {
1027
+ case "h-edge": return {
1028
+ x: d + (100 - 2 * d) * a,
1029
+ y: 0,
1030
+ nx: 0,
1031
+ ny: -1
1032
+ };
1033
+ case "tr-arc": {
1034
+ let e = -Math.PI / 2 + Math.PI / 2 * a;
1035
+ return {
1036
+ x: 100 - d + d * Math.cos(e),
1037
+ y: f + f * Math.sin(e),
1038
+ nx: Math.cos(e),
1039
+ ny: Math.sin(e)
1040
+ };
1041
+ }
1042
+ case "v-edge": return {
1043
+ x: 100,
1044
+ y: f + (100 - 2 * f) * a,
1045
+ nx: 1,
1046
+ ny: 0
1047
+ };
1048
+ case "br-arc": {
1049
+ let e = Math.PI / 2 * a;
1050
+ return {
1051
+ x: 100 - d + d * Math.cos(e),
1052
+ y: 100 - f + f * Math.sin(e),
1053
+ nx: Math.cos(e),
1054
+ ny: Math.sin(e)
1055
+ };
1056
+ }
1057
+ case "h-edge-b": return {
1058
+ x: 100 - d - (100 - 2 * d) * a,
1059
+ y: 100,
1060
+ nx: 0,
1061
+ ny: 1
1062
+ };
1063
+ case "bl-arc": {
1064
+ let e = Math.PI / 2 + Math.PI / 2 * a;
1065
+ return {
1066
+ x: d + d * Math.cos(e),
1067
+ y: 100 - f + f * Math.sin(e),
1068
+ nx: Math.cos(e),
1069
+ ny: Math.sin(e)
1070
+ };
1071
+ }
1072
+ case "v-edge-l": return {
1073
+ x: 0,
1074
+ y: 100 - f - (100 - 2 * f) * a,
1075
+ nx: -1,
1076
+ ny: 0
1077
+ };
1078
+ case "tl-arc": {
1079
+ let e = Math.PI + Math.PI / 2 * a;
1080
+ return {
1081
+ x: d + d * Math.cos(e),
1082
+ y: f + f * Math.sin(e),
1083
+ nx: Math.cos(e),
1084
+ ny: Math.sin(e)
1085
+ };
1086
+ }
1087
+ }
1088
+ return {
1089
+ x: 0,
1090
+ y: 0,
1091
+ nx: 0,
1092
+ ny: -1
1093
+ };
1094
+ }, x = Math.max(0, Math.min(r.pinch, 1)) * (1 - o), S = (e, t) => {
1095
+ if (x === 0) return t;
1096
+ let n = Math.abs(e - 50) / 50;
1097
+ return 50 + (t - 50) * (1 - n * x);
1098
+ }, C, w = b;
1099
+ if (x === 0) C = [
1100
+ `M ${d} 0`,
1101
+ `L ${100 - d} 0`,
1102
+ `A ${d} ${f} 0 0 1 100 ${f}`,
1103
+ `L 100 ${100 - f}`,
1104
+ `A ${d} ${f} 0 0 1 ${100 - d} 100`,
1105
+ `L ${d} 100`,
1106
+ `A ${d} ${f} 0 0 1 0 ${100 - f}`,
1107
+ `L 0 ${f}`,
1108
+ `A ${d} ${f} 0 0 1 ${d} 0`,
1109
+ "Z"
1110
+ ].join(" ");
1111
+ else {
1112
+ let e = [];
1113
+ for (let t = 0; t < 240; t++) {
1114
+ let n = b(t / 240 * y);
1115
+ e.push({
1116
+ x: n.x,
1117
+ y: S(n.x, n.y)
1118
+ });
1119
+ }
1120
+ C = e.reduce((e, t, n) => e + (n === 0 ? `M ${t.x.toFixed(3)} ${t.y.toFixed(3)}` : ` L ${t.x.toFixed(3)} ${t.y.toFixed(3)}`), "") + " Z", w = (e) => {
1121
+ let t = (e % y + y) % y, n = b(t), r = n.x, o = S(n.x, n.y), s = y / 480, c = b(t - s), l = b(t + s), u = c.x, d = S(c.x, c.y), f = l.x, p = S(l.x, l.y), m = (f - u) / i, h = (p - d) / a, g = Math.hypot(m, h) || 1;
1122
+ return {
1123
+ x: r,
1124
+ y: o,
1125
+ nx: h / g,
1126
+ ny: -m / g
1127
+ };
1128
+ };
1129
+ }
1130
+ return {
1131
+ bodyPath: C,
1132
+ perimeterAt: w,
1133
+ totalCss: y
1134
+ };
1135
+ },
1136
+ defaults: he,
1137
+ insets: {
1138
+ top: 0,
1139
+ right: 4,
1140
+ bottom: 0,
1141
+ left: 4
1142
+ }
1143
+ };
1144
+ //#endregion
1145
+ //#region src/components/Badge/bases/polygonSampler.ts
1146
+ function q(e, t, n) {
1147
+ let r = 100 / t, i = 100 / n, a = [], o = [0];
1148
+ for (let t = 0; t < e.length; t++) {
1149
+ let n = e[t], s = e[(t + 1) % e.length], c = (s[0] - n[0]) / r, l = (s[1] - n[1]) / i, u = Math.hypot(c, l);
1150
+ a.push(u), o.push(o[o.length - 1] + u);
1151
+ }
1152
+ let s = o[o.length - 1];
1153
+ return {
1154
+ bodyPath: `M ${e[0][0]} ${e[0][1]} ` + e.slice(1).map(([e, t]) => `L ${e} ${t}`).join(" ") + " Z",
1155
+ perimeterAt: (t) => {
1156
+ let n = (t % s + s) % s;
1157
+ for (let t = 0; t < a.length; t++) {
1158
+ let s = o[t];
1159
+ if (n <= o[t + 1] + 1e-9) {
1160
+ let o = a[t] > 0 ? (n - s) / a[t] : 0, c = e[t], l = e[(t + 1) % e.length], u = c[0] + (l[0] - c[0]) * o, d = c[1] + (l[1] - c[1]) * o, f = (l[0] - c[0]) / r, p = (l[1] - c[1]) / i, m = Math.hypot(f, p) || 1;
1161
+ return {
1162
+ x: u,
1163
+ y: d,
1164
+ nx: p / m,
1165
+ ny: -f / m
1166
+ };
1167
+ }
1168
+ }
1169
+ return {
1170
+ x: e[0][0],
1171
+ y: e[0][1],
1172
+ nx: 0,
1173
+ ny: -1
1174
+ };
1175
+ },
1176
+ totalCss: s
1177
+ };
1178
+ }
1179
+ //#endregion
1180
+ //#region src/components/Badge/bases/Polygon.tsx
1181
+ var _e = [
1182
+ [0, 0],
1183
+ [100, 0],
1184
+ [100, 100],
1185
+ [0, 100]
1186
+ ], ve = {
1187
+ build: (e, t, n) => q(e?.vertices && e.vertices.length >= 3 ? e.vertices : _e, t, n),
1188
+ defaults: { vertices: _e },
1189
+ insets: {
1190
+ top: 0,
1191
+ right: 4,
1192
+ bottom: 0,
1193
+ left: 4
1194
+ }
1195
+ }, ye = {
1196
+ top: "out",
1197
+ right: "in",
1198
+ bottom: "out",
1199
+ left: "in",
1200
+ tabSize: 12,
1201
+ arcSamples: 18
1202
+ }, J = .62;
1203
+ function be(e, t, n, r, i, a, o) {
1204
+ if (i === "flat") return [t];
1205
+ let s = i === "out" ? 1 : -1, c = t[0] - e[0], l = t[1] - e[1], u = Math.hypot(c, l) || 1, d = c / u, f = l / u, p = (e[0] + t[0]) / 2, m = (e[1] + t[1]) / 2, h = p + n * s * a * J, g = m + r * s * a * J, _ = a * Math.sqrt(Math.max(0, 1 - J * J)), v = [p - d * _, m - f * _], y = [p + d * _, m + f * _], b = [p + n * s * (a + a * (1 - J)), m + r * s * (a + a * (1 - J))], x = Math.hypot(v[0] - h, v[1] - g), S = Math.atan2(v[1] - g, v[0] - h), C = Math.atan2(y[1] - g, y[0] - h), w = Math.atan2(b[1] - g, b[0] - h), T = Math.PI * 2, E = ((w - S) % T + T) % T, D = ((C - S) % T + T) % T, O = E < D ? D : D - T, k = [];
1206
+ k.push(v);
1207
+ for (let e = 1; e <= o; e++) {
1208
+ let t = S + e / o * O;
1209
+ k.push([h + x * Math.cos(t), g + x * Math.sin(t)]);
1210
+ }
1211
+ return k.push(t), k;
1212
+ }
1213
+ var xe = {
1214
+ build: (e, t, n) => {
1215
+ let r = {
1216
+ ...ye,
1217
+ ...e
1218
+ }, i = Math.max(2, Math.min(r.tabSize, 40)), a = Math.max(6, Math.floor(r.arcSamples)), o = [0, 0], s = [100, 0], c = [100, 100], l = [0, 100], u = [o];
1219
+ return u.push(...be(o, s, 0, -1, r.top, i, a)), u.push(...be(s, c, 1, 0, r.right, i, a)), u.push(...be(c, l, 0, 1, r.bottom, i, a)), u.push(...be(l, o, -1, 0, r.left, i, a)), u.length > 1 && u[u.length - 1][0] === o[0] && u[u.length - 1][1] === o[1] && u.pop(), q(u, t, n);
1220
+ },
1221
+ defaults: ye,
1222
+ insets: {
1223
+ top: 12,
1224
+ right: 16,
1225
+ bottom: 12,
1226
+ left: 16
1227
+ }
1228
+ }, Se = {
1229
+ spikeR: 50,
1230
+ lobeR: 42,
1231
+ valleyR: 25,
1232
+ valleyAt: .5,
1233
+ spikeCurvature: 1,
1234
+ spikeBend: 0,
1235
+ spikeTipErosion: 0,
1236
+ lobeCurvature: 1,
1237
+ lobeBend: 0,
1238
+ lobeTipErosion: 0,
1239
+ valleySmooth: 3,
1240
+ rotation: 0,
1241
+ samples: 192
1242
+ };
1243
+ function Ce(e, t, n) {
1244
+ let r = e - t;
1245
+ return (e + t + Math.sqrt(r * r + n * n)) / 2;
1246
+ }
1247
+ function we(e, t, n, r) {
1248
+ if (e <= 0) return 0;
1249
+ if (e >= 1) return 1 - r;
1250
+ let i = Math.max(.1, t * (1 + n)), a = Math.max(.1, t * (1 - n)), o = (1 - (1 - e) ** i) ** (1 / a);
1251
+ return Math.min(o, 1 - r);
1252
+ }
1253
+ function Te(e = {}) {
1254
+ let t = {
1255
+ ...Se,
1256
+ ...e
1257
+ }, n = Math.max(5, Math.min(t.spikeR, 50)), r = Math.max(5, Math.min(t.lobeR, 50 * Math.SQRT2)), i = Math.max(0, Math.min(t.valleyR, Math.min(n, r))), a = Math.max(.05, Math.min(t.valleyAt, .95)), o = Math.max(.2, t.spikeCurvature), s = Math.max(-.95, Math.min(t.spikeBend, .95)), c = Math.max(0, Math.min(t.spikeTipErosion, 1)), l = Math.max(.2, t.lobeCurvature), u = Math.max(-.95, Math.min(t.lobeBend, .95)), d = Math.max(0, Math.min(t.lobeTipErosion, 1)), f = Math.max(0, t.valleySmooth), p = t.rotation * Math.PI / 180, m = Math.max(24, Math.floor(t.samples)), h = [];
1258
+ for (let e = 0; e < m; e++) {
1259
+ let t = e / m * 2 * Math.PI, g = Math.abs(Math.sin(2 * (t - p))), _ = (a - g) / a, v = (g - a) / (1 - a), y = Ce(i + (n - i) * we(Math.max(0, _), o, s, c), i + (r - i) * we(Math.max(0, v), l, u, d), f);
1260
+ h.push([50 + y * Math.cos(t), 50 + y * Math.sin(t)]);
1261
+ }
1262
+ return h;
1263
+ }
1264
+ var Ee = {
1265
+ build: (e, t, n) => q(Te(e), t, n),
1266
+ defaults: Se,
1267
+ insets: {
1268
+ top: 10,
1269
+ right: 14,
1270
+ bottom: 10,
1271
+ left: 14
1272
+ }
1273
+ }, De = {
1274
+ mode: "octant",
1275
+ count: 5,
1276
+ s0: 0,
1277
+ s1: .25,
1278
+ s2: .5,
1279
+ s3: .75,
1280
+ s4: 1,
1281
+ s5: 1,
1282
+ s6: 1,
1283
+ s7: 1,
1284
+ s8: 1,
1285
+ s9: 1,
1286
+ s10: 1,
1287
+ s11: 1,
1288
+ r0: 48,
1289
+ r1: 30,
1290
+ r2: 32,
1291
+ r3: 38,
1292
+ r4: 46,
1293
+ r5: 42,
1294
+ r6: 36,
1295
+ r7: 32,
1296
+ r8: 30,
1297
+ r9: 30,
1298
+ r10: 30,
1299
+ r11: 30,
1300
+ w0: 1,
1301
+ w1: 1,
1302
+ w2: 1,
1303
+ w3: 1,
1304
+ w4: 1,
1305
+ w5: 1,
1306
+ w6: 1,
1307
+ w7: 1,
1308
+ w8: 1,
1309
+ w9: 1,
1310
+ w10: 1,
1311
+ w11: 1,
1312
+ rotation: 0,
1313
+ samples: 192
1314
+ };
1315
+ function Oe(e = {}) {
1316
+ let t = {
1317
+ ...De,
1318
+ ...e
1319
+ }, n = Math.max(3, Math.min(Math.floor(t.count), 12)), r = [
1320
+ "s0",
1321
+ "s1",
1322
+ "s2",
1323
+ "s3",
1324
+ "s4",
1325
+ "s5",
1326
+ "s6",
1327
+ "s7",
1328
+ "s8",
1329
+ "s9",
1330
+ "s10",
1331
+ "s11"
1332
+ ], i = [
1333
+ "r0",
1334
+ "r1",
1335
+ "r2",
1336
+ "r3",
1337
+ "r4",
1338
+ "r5",
1339
+ "r6",
1340
+ "r7",
1341
+ "r8",
1342
+ "r9",
1343
+ "r10",
1344
+ "r11"
1345
+ ], a = [
1346
+ "w0",
1347
+ "w1",
1348
+ "w2",
1349
+ "w3",
1350
+ "w4",
1351
+ "w5",
1352
+ "w6",
1353
+ "w7",
1354
+ "w8",
1355
+ "w9",
1356
+ "w10",
1357
+ "w11"
1358
+ ], o = [];
1359
+ for (let e = 0; e < n; e++) o.push({
1360
+ s: Math.max(0, Math.min(1, Number(t[r[e]]))),
1361
+ r: Math.max(0, Number(t[i[e]])),
1362
+ w: Math.max(0, Number(t[a[e]] ?? 1))
1363
+ });
1364
+ return o.sort((e, t) => e.s - t.s), o[0].s = 0, o[n - 1].s = 1, t.mode === "quadrant" && (o[n - 1].r = o[0].r, o[n - 1].w = o[0].w), o;
1365
+ }
1366
+ function ke(e) {
1367
+ let t = e.length - 1, n = Array(t);
1368
+ for (let r = 0; r < t; r++) n[r] = Math.max(1e-9, e[r + 1].s - e[r].s);
1369
+ let r = Array(t + 1), i = Array(t + 1), a = Array(t + 1), o = Array(t + 1);
1370
+ r[0] = 0, i[0] = n[0] / 3, a[0] = n[0] / 6, o[0] = (e[1].r - e[0].r) / n[0];
1371
+ for (let s = 1; s < t; s++) r[s] = n[s - 1] / 6, i[s] = (n[s - 1] + n[s]) / 3, a[s] = n[s] / 6, o[s] = (e[s + 1].r - e[s].r) / n[s] - (e[s].r - e[s - 1].r) / n[s - 1];
1372
+ r[t] = n[t - 1] / 6, i[t] = n[t - 1] / 3, a[t] = 0, o[t] = -(e[t].r - e[t - 1].r) / n[t - 1];
1373
+ for (let e = 1; e <= t; e++) {
1374
+ let t = r[e] / i[e - 1];
1375
+ i[e] -= t * a[e - 1], o[e] -= t * o[e - 1];
1376
+ }
1377
+ let s = Array(t + 1);
1378
+ s[t] = o[t] / i[t];
1379
+ for (let e = t - 1; e >= 0; e--) s[e] = (o[e] - a[e] * s[e + 1]) / i[e];
1380
+ return s;
1381
+ }
1382
+ function Ae(e) {
1383
+ return {
1384
+ anchors: e,
1385
+ M: ke(e)
1386
+ };
1387
+ }
1388
+ function je(e, t) {
1389
+ let { anchors: n, M: r } = t, i = n.length;
1390
+ if (i === 0) return 0;
1391
+ if (i === 1 || e <= n[0].s) return n[0].r;
1392
+ if (e >= n[i - 1].s) return n[i - 1].r;
1393
+ let a = 0;
1394
+ for (; a < i - 1 && n[a + 1].s <= e;) a++;
1395
+ let o = n[a], s = n[a + 1], c = s.s - o.s;
1396
+ if (c <= 0) return o.r;
1397
+ let l = (s.s - e) / c, u = (e - o.s) / c, d = (l * l * l - l) * c * c / 6, f = (u * u * u - u) * c * c / 6;
1398
+ return l * o.r + u * s.r + (d * r[a] * o.w + f * r[a + 1] * s.w);
1399
+ }
1400
+ var Me = {
1401
+ build: (e, t, n) => {
1402
+ let r = {
1403
+ ...De,
1404
+ ...e
1405
+ }, i = Ae(Oe(r)), a = r.rotation * Math.PI / 180, o = Math.max(48, Math.floor(r.samples)), s = [], c = Math.PI / 2;
1406
+ for (let e = 0; e < o; e++) {
1407
+ let t = e / o * 2 * Math.PI, n = t - a, l;
1408
+ l = r.mode === "quadrant" ? (n % c + c) % c / c : Math.abs(Math.sin(2 * n));
1409
+ let u = je(l, i);
1410
+ s.push([50 + u * Math.cos(t), 50 + u * Math.sin(t)]);
1411
+ }
1412
+ return q(s, t, n);
1413
+ },
1414
+ defaults: De,
1415
+ insets: {
1416
+ top: 10,
1417
+ right: 14,
1418
+ bottom: 10,
1419
+ left: 14
1420
+ }
1421
+ }, Ne = {
1422
+ mode: "octant",
1423
+ count: 5,
1424
+ s0: 0,
1425
+ s1: .25,
1426
+ s2: .5,
1427
+ s3: .75,
1428
+ s4: 1,
1429
+ s5: 1,
1430
+ s6: 1,
1431
+ s7: 1,
1432
+ s8: 1,
1433
+ s9: 1,
1434
+ s10: 1,
1435
+ s11: 1,
1436
+ r0: 48,
1437
+ r1: 30,
1438
+ r2: 32,
1439
+ r3: 38,
1440
+ r4: 46,
1441
+ r5: 42,
1442
+ r6: 36,
1443
+ r7: 32,
1444
+ r8: 30,
1445
+ r9: 30,
1446
+ r10: 30,
1447
+ r11: 30,
1448
+ w0: 1,
1449
+ w1: 1,
1450
+ w2: 1,
1451
+ w3: 1,
1452
+ w4: 1,
1453
+ w5: 1,
1454
+ w6: 1,
1455
+ w7: 1,
1456
+ w8: 1,
1457
+ w9: 1,
1458
+ w10: 1,
1459
+ w11: 1,
1460
+ rotation: 0,
1461
+ samples: 192
1462
+ };
1463
+ function Pe(e = {}) {
1464
+ let t = {
1465
+ ...Ne,
1466
+ ...e
1467
+ }, n = Math.max(3, Math.min(Math.floor(t.count), 12)), r = [
1468
+ "s0",
1469
+ "s1",
1470
+ "s2",
1471
+ "s3",
1472
+ "s4",
1473
+ "s5",
1474
+ "s6",
1475
+ "s7",
1476
+ "s8",
1477
+ "s9",
1478
+ "s10",
1479
+ "s11"
1480
+ ], i = [
1481
+ "r0",
1482
+ "r1",
1483
+ "r2",
1484
+ "r3",
1485
+ "r4",
1486
+ "r5",
1487
+ "r6",
1488
+ "r7",
1489
+ "r8",
1490
+ "r9",
1491
+ "r10",
1492
+ "r11"
1493
+ ], a = [
1494
+ "w0",
1495
+ "w1",
1496
+ "w2",
1497
+ "w3",
1498
+ "w4",
1499
+ "w5",
1500
+ "w6",
1501
+ "w7",
1502
+ "w8",
1503
+ "w9",
1504
+ "w10",
1505
+ "w11"
1506
+ ], o = [];
1507
+ for (let e = 0; e < n; e++) o.push({
1508
+ s: Math.max(0, Math.min(1, Number(t[r[e]]))),
1509
+ r: Math.max(0, Number(t[i[e]])),
1510
+ w: Math.max(.01, Number(t[a[e]] ?? 1))
1511
+ });
1512
+ return o.sort((e, t) => e.s - t.s), o[0].s = 0, o[n - 1].s = 1, t.mode === "quadrant" && (o[n - 1].r = o[0].r, o[n - 1].w = o[0].w), o;
1513
+ }
1514
+ function Fe(e) {
1515
+ let t = e.length, n = {
1516
+ s: -e[1].s,
1517
+ r: e[1].r,
1518
+ w: e[1].w
1519
+ }, r = {
1520
+ s: -e[Math.min(2, t - 1)].s,
1521
+ r: e[Math.min(2, t - 1)].r,
1522
+ w: e[Math.min(2, t - 1)].w
1523
+ }, i = {
1524
+ s: 2 - e[t - 2].s,
1525
+ r: e[t - 2].r,
1526
+ w: e[t - 2].w
1527
+ }, a = {
1528
+ s: 2 - e[Math.max(t - 3, 0)].s,
1529
+ r: e[Math.max(t - 3, 0)].r,
1530
+ w: e[Math.max(t - 3, 0)].w
1531
+ };
1532
+ return [
1533
+ r,
1534
+ n,
1535
+ ...e,
1536
+ i,
1537
+ a
1538
+ ];
1539
+ }
1540
+ function Ie(e, t) {
1541
+ let n = e + t + 1, r = Array(n);
1542
+ for (let e = 0; e <= t; e++) r[e] = 0;
1543
+ let i = e - t - 1;
1544
+ for (let e = 1; e <= i; e++) r[t + e] = e / (i + 1);
1545
+ for (let e = n - t - 1; e < n; e++) r[e] = 1;
1546
+ return r;
1547
+ }
1548
+ function Le(e, t, n, r) {
1549
+ if (e >= t[r]) return r - 1;
1550
+ if (e <= t[n]) return n;
1551
+ let i = n, a = r, o = i + a >>> 1;
1552
+ for (; e < t[o] || e >= t[o + 1];) e < t[o] ? a = o : i = o, o = i + a >>> 1;
1553
+ return o;
1554
+ }
1555
+ function Re(e, t, n, r) {
1556
+ let i = Array(r + 1).fill(0), a = Array(r + 1), o = Array(r + 1);
1557
+ i[0] = 1;
1558
+ for (let s = 1; s <= r; s++) {
1559
+ a[s] = t - n[e + 1 - s], o[s] = n[e + s] - t;
1560
+ let r = 0;
1561
+ for (let e = 0; e < s; e++) {
1562
+ let t = o[e + 1] + a[s - e], n = t === 0 ? 0 : i[e] / t;
1563
+ i[e] = r + o[e + 1] * n, r = a[s - e] * n;
1564
+ }
1565
+ i[s] = r;
1566
+ }
1567
+ return i;
1568
+ }
1569
+ function ze(e) {
1570
+ let t = Fe(e);
1571
+ return {
1572
+ extended: t,
1573
+ knots: Ie(t.length, 3),
1574
+ degree: 3
1575
+ };
1576
+ }
1577
+ function Be(e, t) {
1578
+ let { extended: n, knots: r, degree: i } = t, a = n.length, o = Math.max(0, Math.min(1, e)), s = Le(o, r, i, a), c = Re(s, o, r, i), l = 0, u = 0, d = 0;
1579
+ for (let e = 0; e <= i; e++) {
1580
+ let t = n[s - i + e], r = t.w * c[e];
1581
+ l += r * t.s, u += r * t.r, d += r;
1582
+ }
1583
+ return d > 0 ? {
1584
+ s: l / d,
1585
+ r: u / d
1586
+ } : {
1587
+ s: 0,
1588
+ r: 0
1589
+ };
1590
+ }
1591
+ function Ve(e, t) {
1592
+ if (e <= 0) return Be(0, t).r;
1593
+ if (e >= 1) return Be(1, t).r;
1594
+ let n = 0, r = 1;
1595
+ for (let i = 0; i < 30; i++) {
1596
+ let i = (n + r) * .5, { s: a } = Be(i, t);
1597
+ if (a < e ? n = i : r = i, r - n < 1e-5) break;
1598
+ }
1599
+ return Be((n + r) * .5, t).r;
1600
+ }
1601
+ var He = {
1602
+ build: (e, t, n) => {
1603
+ let r = {
1604
+ ...Ne,
1605
+ ...e
1606
+ }, i = ze(Pe(r)), a = r.rotation * Math.PI / 180, o = Math.max(48, Math.floor(r.samples)), s = [], c = Math.PI / 2;
1607
+ for (let e = 0; e < o; e++) {
1608
+ let t = e / o * 2 * Math.PI, n = t - a, l;
1609
+ l = r.mode === "quadrant" ? (n % c + c) % c / c : Math.abs(Math.sin(2 * n));
1610
+ let u = Ve(l, i);
1611
+ s.push([50 + u * Math.cos(t), 50 + u * Math.sin(t)]);
1612
+ }
1613
+ return q(s, t, n);
1614
+ },
1615
+ defaults: Ne,
1616
+ insets: {
1617
+ top: 10,
1618
+ right: 14,
1619
+ bottom: 10,
1620
+ left: 14
1621
+ }
1622
+ }, Ue = {
1623
+ left: "inward",
1624
+ right: "outward",
1625
+ taperWidth: 8
1626
+ };
1627
+ function We(e, t, n, r) {
1628
+ switch (e) {
1629
+ case "flat": return {
1630
+ top: [t, 0],
1631
+ mid: null,
1632
+ bottom: [t, 100]
1633
+ };
1634
+ case "outward": return {
1635
+ top: [t + n * r, 0],
1636
+ mid: [t, 50],
1637
+ bottom: [t + n * r, 100]
1638
+ };
1639
+ case "inward": return {
1640
+ top: [t, 0],
1641
+ mid: [t + n * r, 50],
1642
+ bottom: [t, 100]
1643
+ };
1644
+ }
1645
+ }
1646
+ function Ge(e, t) {
1647
+ let n = Math.max(0, t);
1648
+ switch (e) {
1649
+ case "flat": return 4;
1650
+ case "outward": return Math.round(n * .7);
1651
+ case "inward": return Math.round(n * .8);
1652
+ }
1653
+ }
1654
+ var Ke = {
1655
+ build: (e, t, n) => {
1656
+ let r = {
1657
+ ...Ue,
1658
+ ...e
1659
+ }, i = Math.max(0, r.taperWidth), a = t > 0 ? i / t * 100 : 0, o = We(r.left, 0, 1, a), s = We(r.right, 100, -1, a), c = [o.top];
1660
+ return c.push(s.top), s.mid && c.push(s.mid), c.push(s.bottom), c.push(o.bottom), o.mid && c.push(o.mid), q(c, t, n);
1661
+ },
1662
+ insets: (e) => {
1663
+ let t = {
1664
+ ...Ue,
1665
+ ...e
1666
+ };
1667
+ return {
1668
+ top: 0,
1669
+ right: Ge(t.right, t.taperWidth),
1670
+ bottom: 0,
1671
+ left: Ge(t.left, t.taperWidth)
1672
+ };
1673
+ },
1674
+ defaults: Ue
1675
+ }, qe = {
1676
+ flat: (e, t) => 0,
1677
+ chevron: (e, t) => (1 - Math.abs(e - .5) * 2) * t,
1678
+ slant: (e, t) => e * t,
1679
+ "slant-up": (e, t) => (1 - e) * t,
1680
+ round: (e, t) => Math.sin(e * Math.PI) * t,
1681
+ scallop: (e, t) => Math.sin(e * Math.PI * 3) * .4 * t,
1682
+ "concave-chevron": (e, t) => -(1 - Math.abs(e - .5) * 2) * t
1683
+ };
1684
+ function Je(e) {
1685
+ return typeof e == "function" ? e : qe[e] ?? qe.flat;
1686
+ }
1687
+ //#endregion
1688
+ //#region src/components/Badge/bases/Powerline.tsx
1689
+ var Y = {
1690
+ leftEdge: "flat",
1691
+ rightEdge: "flat",
1692
+ depth: 6
1693
+ }, X = 64, Ye = {
1694
+ "chamfered-rect": me,
1695
+ "rounded-rect": ge,
1696
+ polygon: ve,
1697
+ puzzle: xe,
1698
+ quatrefoil: Ee,
1699
+ "octant-spline": Me,
1700
+ "octant-bspline": He,
1701
+ ribbon: Ke,
1702
+ powerline: {
1703
+ build: (e, t, n) => {
1704
+ let r = {
1705
+ ...Y,
1706
+ ...e
1707
+ }, i = Je(r.leftEdge), a = Je(r.rightEdge), o = r.depth, s = 100 / t, c = 100 / n, l = [];
1708
+ l.push({
1709
+ x: i(0, o) * s,
1710
+ y: 0,
1711
+ nx: 0,
1712
+ ny: -1
1713
+ }), l.push({
1714
+ x: (t + a(0, o)) * s,
1715
+ y: 0,
1716
+ nx: 0,
1717
+ ny: -1
1718
+ });
1719
+ for (let e = 1; e < X; e++) {
1720
+ let n = e / X, r = t + a(n, o);
1721
+ l.push({
1722
+ x: r * s,
1723
+ y: n * 100,
1724
+ nx: 1,
1725
+ ny: 0
1726
+ });
1727
+ }
1728
+ l.push({
1729
+ x: (t + a(1, o)) * s,
1730
+ y: 100,
1731
+ nx: 0,
1732
+ ny: 1
1733
+ }), l.push({
1734
+ x: (0 + i(1, o)) * s,
1735
+ y: 100,
1736
+ nx: 0,
1737
+ ny: 1
1738
+ });
1739
+ for (let e = X - 1; e >= 1; e--) {
1740
+ let t = e / X, n = 0 + i(t, o);
1741
+ l.push({
1742
+ x: n * s,
1743
+ y: t * 100,
1744
+ nx: -1,
1745
+ ny: 0
1746
+ });
1747
+ }
1748
+ let u = [0];
1749
+ for (let e = 1; e < l.length; e++) {
1750
+ let t = l[e - 1], n = l[e], r = (n.x - t.x) / s, i = (n.y - t.y) / c;
1751
+ u.push(u[e - 1] + Math.hypot(r, i));
1752
+ }
1753
+ let d = l[l.length - 1], f = l[0], p = Math.hypot((f.x - d.x) / s, (f.y - d.y) / c), m = u[u.length - 1] + p;
1754
+ return {
1755
+ bodyPath: l.reduce((e, t, n) => e + (n === 0 ? `M ${t.x.toFixed(3)} ${t.y.toFixed(3)}` : ` L ${t.x.toFixed(3)} ${t.y.toFixed(3)}`), "") + " Z",
1756
+ perimeterAt: (e) => {
1757
+ let t = (e % m + m) % m;
1758
+ for (let e = 1; e < l.length; e++) if (t <= u[e]) {
1759
+ let n = u[e] - u[e - 1], r = n > 0 ? (t - u[e - 1]) / n : 0, i = l[e - 1], a = l[e];
1760
+ return {
1761
+ x: i.x + (a.x - i.x) * r,
1762
+ y: i.y + (a.y - i.y) * r,
1763
+ nx: a.nx,
1764
+ ny: a.ny
1765
+ };
1766
+ }
1767
+ let n = l.length - 1, r = p, i = r > 0 ? (t - u[n]) / r : 0;
1768
+ return {
1769
+ x: l[n].x + (f.x - l[n].x) * i,
1770
+ y: l[n].y + (f.y - l[n].y) * i,
1771
+ nx: 0,
1772
+ ny: 1
1773
+ };
1774
+ },
1775
+ totalCss: m
1776
+ };
1777
+ },
1778
+ defaults: Y,
1779
+ insets: (e) => {
1780
+ let t = e?.depth ?? Y.depth, n = e?.leftEdge ?? Y.leftEdge, r = e?.rightEdge ?? Y.rightEdge, i = Je(n), a = Je(r), o = 0, s = 0, c = 0, l = 0;
1781
+ for (let e = 0; e <= 32; e++) {
1782
+ let n = e / 32, r = i(n, t), u = a(n, t), d = e === 0 || e === 32 ? .5 : 1;
1783
+ o += d * r / 32, s += d * u / 32, r > c && (c = r), -u > l && (l = -u);
1784
+ }
1785
+ let u = (o + s) / 2, d = Math.max(c, t + u);
1786
+ return {
1787
+ top: 0,
1788
+ right: Math.max(l, t - u),
1789
+ bottom: 0,
1790
+ left: d
1791
+ };
1792
+ }
1793
+ }
1794
+ };
1795
+ //#endregion
1796
+ //#region src/components/Badge/effects/rangeMask.ts
1797
+ function Z(e, t, n) {
1798
+ if (!n) return 1;
1799
+ let [r, i] = n;
1800
+ if (r === i) return 0;
1801
+ let a = (e % t + t) % t / t;
1802
+ return r < i ? +(a >= r && a <= i) : +(a >= r || a <= i);
1803
+ }
1804
+ //#endregion
1805
+ //#region src/components/Badge/effects/Spikes.tsx
1806
+ var Xe = {
1807
+ count: 44,
1808
+ length: 8,
1809
+ baseWidth: 3,
1810
+ vertScale: 1.4,
1811
+ horzScale: 1,
1812
+ diagonalScale: .5,
1813
+ irregularity: 0,
1814
+ cornerCompensation: 1
1815
+ }, Ze = {
1816
+ offsetAt: (e, { params: t, phase: n, totalCss: r, perimeterAt: i }) => {
1817
+ let a = {
1818
+ ...Xe,
1819
+ ...t
1820
+ }, o = Z(e, r, a.range);
1821
+ if (o === 0) return {
1822
+ dx: 0,
1823
+ dy: 0
1824
+ };
1825
+ let s = r / Math.max(3, Math.floor(a.count)), c = Math.max(.1, Math.min(s / 2 - .05, a.baseWidth / 2)), l = n * s, u = (e % r + r) % r, d = Math.round((u - l) / s), f = ((d * s + l) % r + r) % r, p = u - f;
1826
+ if (p > r / 2 && (p -= r), p < -r / 2 && (p += r), Math.abs(p) > c) return {
1827
+ dx: 0,
1828
+ dy: 0
1829
+ };
1830
+ let m = 1 - Math.abs(p) / c, h = i(f), g = h.nx, _ = h.ny, v = Math.abs(h.nx), y = Math.abs(h.ny), b = Math.min(1, 2 * v * y), x = (y > v ? a.vertScale : a.horzScale) * (1 - b) + a.diagonalScale * b, S = 1 + a.irregularity * .5 * Math.sin(d * 1.73 + .7), C = Math.max(s * .5, c), w = 0;
1831
+ for (let e = 0; e < 5; e++) {
1832
+ let t = (e + .5) / 5, n = f - C + t * 2 * C - C / 5, r = f - C + t * 2 * C + C / 5, a = i(n), o = i(r);
1833
+ w += Math.hypot(o.nx - a.nx, o.ny - a.ny) / (r - n);
1834
+ }
1835
+ w /= 5;
1836
+ let T = a.length * x * S * m, E = Math.max(0, Math.min(a.cornerCompensation, 1)), D = Math.max(0, T / (1 + E * w * T)) * o;
1837
+ return {
1838
+ dx: g * D,
1839
+ dy: _ * D
1840
+ };
1841
+ },
1842
+ defaults: Xe
1843
+ }, Qe = {
1844
+ bumpWidth: 18,
1845
+ puffiness: 10,
1846
+ irregularity: 0
1847
+ }, $e = {
1848
+ offsetAt: (e, { params: t, phase: n, totalCss: r, perimeterAt: i }) => {
1849
+ let a = {
1850
+ ...Qe,
1851
+ ...t
1852
+ }, o = Z(e, r, a.range);
1853
+ if (o === 0) return {
1854
+ dx: 0,
1855
+ dy: 0
1856
+ };
1857
+ let s = r / Math.max(2, Math.round(r / Math.max(6, a.bumpWidth))), c = n * s, l = (e % r + r) % r, u = Math.floor((l - c) / s), d = (l - (u * s + c)) / s;
1858
+ d < 0 && (d += 1), d > 1 && --d;
1859
+ let f = Math.max(0, Math.min(a.irregularity, 1)), p = Math.max(.5, a.puffiness) * (1 + f * .55 * Math.sin(u * 1.73 + .7)) * Math.sin(Math.PI * d) * o, m = i(e);
1860
+ return {
1861
+ dx: m.nx * p,
1862
+ dy: m.ny * p
1863
+ };
1864
+ },
1865
+ defaults: Qe
1866
+ }, et = {
1867
+ biteRadius: 3,
1868
+ biteSpacing: 8,
1869
+ irregularity: 0
1870
+ }, tt = {
1871
+ offsetAt: (e, { params: t, phase: n, totalCss: r, perimeterAt: i }) => {
1872
+ let a = {
1873
+ ...et,
1874
+ ...t
1875
+ }, o = Z(e, r, a.range);
1876
+ if (o === 0) return {
1877
+ dx: 0,
1878
+ dy: 0
1879
+ };
1880
+ let s = Math.max(.5, a.biteRadius), c = Math.max(2 * s + .5, a.biteSpacing), l = r / Math.max(2, Math.floor(r / c)), u = n * l, d = (e % r + r) % r, f = Math.round((d - u) / l), p = d - ((f * l + u) % r + r) % r;
1881
+ p > r / 2 && (p -= r), p < -r / 2 && (p += r);
1882
+ let m = s * (1 + Math.max(0, Math.min(a.irregularity, 1)) * .55 * Math.sin(f * 1.73 + .7));
1883
+ if (Math.abs(p) > m) return {
1884
+ dx: 0,
1885
+ dy: 0
1886
+ };
1887
+ let h = 1 - Math.abs(p) / m, g = -m * h, _ = i(e);
1888
+ return {
1889
+ dx: _.nx * g * o,
1890
+ dy: _.ny * g * o
1891
+ };
1892
+ },
1893
+ defaults: et
1894
+ }, nt = {
1895
+ scallopRadius: 4,
1896
+ scallopSpacing: 10,
1897
+ irregularity: 0
1898
+ }, rt = {
1899
+ offsetAt: (e, { params: t, phase: n, totalCss: r, perimeterAt: i }) => {
1900
+ let a = {
1901
+ ...nt,
1902
+ ...t
1903
+ }, o = Z(e, r, a.range);
1904
+ if (o === 0) return {
1905
+ dx: 0,
1906
+ dy: 0
1907
+ };
1908
+ let s = Math.max(.5, a.scallopRadius), c = Math.max(2 * s + .5, a.scallopSpacing), l = r / Math.max(2, Math.floor(r / c)), u = n * l, d = (e % r + r) % r, f = Math.round((d - u) / l), p = d - ((f * l + u) % r + r) % r;
1909
+ p > r / 2 && (p -= r), p < -r / 2 && (p += r);
1910
+ let m = s * (1 + Math.max(0, Math.min(a.irregularity, 1)) * .55 * Math.sin(f * 1.73 + .7));
1911
+ if (Math.abs(p) > m) return {
1912
+ dx: 0,
1913
+ dy: 0
1914
+ };
1915
+ let h = (p + m) / (2 * m), g = m * Math.sin(Math.PI * h) * o, _ = i(e);
1916
+ return {
1917
+ dx: _.nx * g,
1918
+ dy: _.ny * g
1919
+ };
1920
+ },
1921
+ defaults: nt
1922
+ }, it = {
1923
+ bevelWidth: 6,
1924
+ lightFrom: "tl"
1925
+ };
1926
+ function at(e, t) {
1927
+ return Math.abs(t) > Math.abs(e) ? t < 0 ? "top" : "bottom" : e < 0 ? "left" : "right";
1928
+ }
1929
+ function ot(e) {
1930
+ let t = e[0] === "t", n = e[1] === "l";
1931
+ return {
1932
+ top: t ? "badge-bevel-light" : "badge-bevel-dark",
1933
+ bottom: t ? "badge-bevel-dark" : "badge-bevel-light",
1934
+ left: n ? "badge-bevel-medium-light" : "badge-bevel-medium-dark",
1935
+ right: n ? "badge-bevel-medium-dark" : "badge-bevel-medium-light"
1936
+ };
1937
+ }
1938
+ var st = 240, ct = {
1939
+ Component: ({ sampler: e, boxW: n, boxH: r, variant: i, params: c }) => {
1940
+ if (i !== "solid" && i !== "subtle") return null;
1941
+ let l = {
1942
+ ...it,
1943
+ ...c
1944
+ }, u = t(), d = 100 / n, f = 100 / r, p = ot(l.lightFrom), m = e.totalCss, h = [], g = [];
1945
+ for (let t = 0; t < st; t++) {
1946
+ let n = e.perimeterAt(t / st * m);
1947
+ h.push({
1948
+ x: n.x,
1949
+ y: n.y,
1950
+ side: at(n.nx, n.ny)
1951
+ }), g.push({
1952
+ x: n.x - n.nx * l.bevelWidth * d,
1953
+ y: n.y - n.ny * l.bevelWidth * f
1954
+ });
1955
+ }
1956
+ let _ = [], v = null;
1957
+ for (let e = 0; e < st; e++) {
1958
+ let t = h[e].side;
1959
+ !v || v.side !== t ? (v = {
1960
+ side: t,
1961
+ idxs: [e]
1962
+ }, _.push(v)) : v.idxs.push(e);
1963
+ }
1964
+ _.length > 1 && _[0].side === _[_.length - 1].side && (_[_.length - 1].idxs = _[_.length - 1].idxs.concat(_[0].idxs), _.shift());
1965
+ let y = (e) => {
1966
+ let t = e.idxs.map((e) => h[e]), n = e.idxs.map((e) => g[e]).reverse(), r = [...t, ...n];
1967
+ if (r.length === 0) return "";
1968
+ let i = `M ${r[0].x.toFixed(3)} ${r[0].y.toFixed(3)}`;
1969
+ for (let e = 1; e < r.length; e++) i += ` L ${r[e].x.toFixed(3)} ${r[e].y.toFixed(3)}`;
1970
+ return i + " Z";
1971
+ };
1972
+ return /* @__PURE__ */ s(a, { children: [/* @__PURE__ */ o("defs", { children: /* @__PURE__ */ o("clipPath", {
1973
+ id: u,
1974
+ children: /* @__PURE__ */ o("path", { d: e.bodyPath })
1975
+ }) }), /* @__PURE__ */ o("g", {
1976
+ clipPath: `url(#${u})`,
1977
+ children: _.map((e, t) => /* @__PURE__ */ o("path", {
1978
+ className: p[e.side],
1979
+ d: y(e)
1980
+ }, t))
1981
+ })] });
1982
+ },
1983
+ zone: "foreground",
1984
+ defaults: it
1985
+ }, lt = {
1986
+ lightFrom: "tl",
1987
+ intensity: .22
1988
+ }, ut = {
1989
+ tl: {
1990
+ x1: "100%",
1991
+ y1: "100%",
1992
+ x2: "0%",
1993
+ y2: "0%"
1994
+ },
1995
+ tr: {
1996
+ x1: "0%",
1997
+ y1: "100%",
1998
+ x2: "100%",
1999
+ y2: "0%"
2000
+ },
2001
+ bl: {
2002
+ x1: "100%",
2003
+ y1: "0%",
2004
+ x2: "0%",
2005
+ y2: "100%"
2006
+ },
2007
+ br: {
2008
+ x1: "0%",
2009
+ y1: "0%",
2010
+ x2: "100%",
2011
+ y2: "100%"
2012
+ }
2013
+ }, dt = {
2014
+ Component: ({ sampler: e, variant: n, params: r }) => {
2015
+ if (n !== "solid" && n !== "subtle") return null;
2016
+ let i = {
2017
+ ...lt,
2018
+ ...r
2019
+ }, c = t(), l = t(), u = Math.max(0, Math.min(i.intensity, 1));
2020
+ return /* @__PURE__ */ s(a, { children: [/* @__PURE__ */ s("defs", { children: [/* @__PURE__ */ o("clipPath", {
2021
+ id: l,
2022
+ children: /* @__PURE__ */ o("path", { d: e.bodyPath })
2023
+ }), /* @__PURE__ */ s("linearGradient", {
2024
+ id: c,
2025
+ ...ut[i.lightFrom],
2026
+ children: [
2027
+ /* @__PURE__ */ o("stop", {
2028
+ offset: "0%",
2029
+ stopColor: "black",
2030
+ stopOpacity: u
2031
+ }),
2032
+ /* @__PURE__ */ o("stop", {
2033
+ offset: "45%",
2034
+ stopColor: "black",
2035
+ stopOpacity: "0.04"
2036
+ }),
2037
+ /* @__PURE__ */ o("stop", {
2038
+ offset: "58%",
2039
+ stopColor: "white",
2040
+ stopOpacity: "0.04"
2041
+ }),
2042
+ /* @__PURE__ */ o("stop", {
2043
+ offset: "100%",
2044
+ stopColor: "white",
2045
+ stopOpacity: u
2046
+ })
2047
+ ]
2048
+ })] }), /* @__PURE__ */ o("rect", {
2049
+ clipPath: `url(#${l})`,
2050
+ x: "0",
2051
+ y: "0",
2052
+ width: "100",
2053
+ height: "100",
2054
+ fill: `url(#${c})`,
2055
+ style: { pointerEvents: "none" }
2056
+ })] });
2057
+ },
2058
+ zone: "foreground",
2059
+ defaults: lt
2060
+ }, ft = {
2061
+ radius: 2.4,
2062
+ inset: 7,
2063
+ lightFrom: "tl"
2064
+ }, pt = {
2065
+ Component: ({ boxW: e, boxH: t, variant: n, params: r }) => {
2066
+ if (n !== "solid" && n !== "subtle") return null;
2067
+ let i = {
2068
+ ...ft,
2069
+ ...r
2070
+ }, c = 100 / e, l = 100 / t, u = i.radius * c, d = i.radius * l, f = i.inset * c, p = i.inset * l, m = i.lightFrom[1] === "l" ? -i.radius * .32 : i.radius * .32, h = i.lightFrom[0] === "t" ? -i.radius * .32 : i.radius * .32;
2071
+ return /* @__PURE__ */ o(a, { children: [
2072
+ [f, p],
2073
+ [100 - f, p],
2074
+ [f, 100 - p],
2075
+ [100 - f, 100 - p]
2076
+ ].map(([e, t], n) => /* @__PURE__ */ s("g", { children: [
2077
+ /* @__PURE__ */ o("ellipse", {
2078
+ className: "badge-bevel-dark",
2079
+ cx: e,
2080
+ cy: t,
2081
+ rx: u,
2082
+ ry: d
2083
+ }),
2084
+ /* @__PURE__ */ o("ellipse", {
2085
+ className: "badge-bevel-medium-dark",
2086
+ cx: e - m * .6 * c,
2087
+ cy: t - h * .6 * l,
2088
+ rx: u * .75,
2089
+ ry: d * .75
2090
+ }),
2091
+ /* @__PURE__ */ o("ellipse", {
2092
+ className: "badge-bevel-light",
2093
+ cx: e + m * c,
2094
+ cy: t + h * l,
2095
+ rx: u * .45,
2096
+ ry: d * .45
2097
+ })
2098
+ ] }, n)) });
2099
+ },
2100
+ zone: "foreground",
2101
+ defaults: ft
2102
+ }, mt = {
2103
+ dx: 1,
2104
+ dy: 2,
2105
+ opacity: .28
2106
+ }, ht = {
2107
+ Component: ({ sampler: e, boxW: t, boxH: n, params: r }) => {
2108
+ let i = {
2109
+ ...mt,
2110
+ ...r
2111
+ }, a = 100 / t, s = 100 / n, c = i.dx * a, l = i.dy * s;
2112
+ return /* @__PURE__ */ o("path", {
2113
+ d: e.bodyPath,
2114
+ transform: `translate(${c.toFixed(3)} ${l.toFixed(3)})`,
2115
+ fill: `rgba(0, 0, 0, ${Math.max(0, Math.min(i.opacity, 1))})`,
2116
+ stroke: "none",
2117
+ style: { pointerEvents: "none" }
2118
+ });
2119
+ },
2120
+ zone: "background",
2121
+ defaults: mt
2122
+ }, gt = {
2123
+ lines: 4,
2124
+ knots: 2,
2125
+ intensity: .55
2126
+ };
2127
+ function _t(e) {
2128
+ return Math.sin(e * 1.73 + .5);
2129
+ }
2130
+ var vt = {
2131
+ Component: ({ sampler: e, variant: n, params: r }) => {
2132
+ if (n !== "solid" && n !== "subtle") return null;
2133
+ let i = {
2134
+ ...gt,
2135
+ ...r
2136
+ }, c = t(), l = [];
2137
+ for (let e = 0; e < i.lines; e++) {
2138
+ let t = (e + 1) / (i.lines + 1) * 100, n = _t(e * 2 + 1) * 4, r = _t(e * 2 + 2) * 4;
2139
+ l.push(`M -5 ${t.toFixed(2)} Q 35 ${(t + n).toFixed(2)} 60 ${t.toFixed(2)} T 105 ${(t + r).toFixed(2)}`);
2140
+ }
2141
+ let u = [];
2142
+ for (let e = 0; e < i.knots; e++) {
2143
+ let t = 30 + _t(e * 3 + .7) * 30 + 20, n = 50 + _t(e * 3 + 1.3) * 30;
2144
+ u.push([t, n]);
2145
+ }
2146
+ return /* @__PURE__ */ s(a, { children: [/* @__PURE__ */ o("defs", { children: /* @__PURE__ */ o("clipPath", {
2147
+ id: c,
2148
+ children: /* @__PURE__ */ o("path", { d: e.bodyPath })
2149
+ }) }), /* @__PURE__ */ s("g", {
2150
+ clipPath: `url(#${c})`,
2151
+ opacity: Math.max(0, Math.min(i.intensity, 1)),
2152
+ style: { pointerEvents: "none" },
2153
+ children: [l.map((e, t) => /* @__PURE__ */ o("path", {
2154
+ className: "badge-stroke",
2155
+ d: e,
2156
+ fill: "none"
2157
+ }, `l${t}`)), u.map(([e, t], n) => /* @__PURE__ */ s("g", { children: [/* @__PURE__ */ o("ellipse", {
2158
+ className: "badge-stroke",
2159
+ cx: e,
2160
+ cy: t,
2161
+ rx: 3,
2162
+ ry: 2.4,
2163
+ fill: "none"
2164
+ }), /* @__PURE__ */ o("ellipse", {
2165
+ className: "badge-stroke",
2166
+ cx: e,
2167
+ cy: t,
2168
+ rx: 1.2,
2169
+ ry: 1,
2170
+ fill: "none"
2171
+ })] }, `k${n}`))]
2172
+ })] });
2173
+ },
2174
+ zone: "foreground",
2175
+ defaults: gt
2176
+ }, yt = {
2177
+ holeRadius: 3,
2178
+ holeSpacing: 11
2179
+ }, bt = {
2180
+ Component: ({ sampler: e, boxW: t, boxH: n, params: r }) => {
2181
+ let i = {
2182
+ ...yt,
2183
+ ...r
2184
+ }, s = 100 / t, c = 100 / n, l = e.totalCss, u = Math.max(2, Math.round(l / Math.max(2 * i.holeRadius, i.holeSpacing))), d = l / u, f = [];
2185
+ for (let t = 0; t < u; t++) {
2186
+ let n = (t + .5) * d;
2187
+ if (Z(n, l, r?.range) === 0) continue;
2188
+ let i = e.perimeterAt(n);
2189
+ f.push({
2190
+ cx: i.x,
2191
+ cy: i.y
2192
+ });
2193
+ }
2194
+ let p = i.holeRadius * s, m = i.holeRadius * c;
2195
+ return /* @__PURE__ */ o(a, { children: f.map((e, t) => /* @__PURE__ */ o("ellipse", {
2196
+ cx: e.cx,
2197
+ cy: e.cy,
2198
+ rx: p,
2199
+ ry: m,
2200
+ fill: "black"
2201
+ }, t)) });
2202
+ },
2203
+ zone: "mask",
2204
+ defaults: yt
2205
+ }, xt = {
2206
+ bevelWidth: 6,
2207
+ lightFrom: 315
2208
+ }, Q = 240, St = [
2209
+ "badge-bevel-light",
2210
+ "badge-bevel-medium-light",
2211
+ "badge-bevel-medium-light",
2212
+ "badge-bevel-medium-dark",
2213
+ "badge-bevel-medium-dark",
2214
+ "badge-bevel-dark"
2215
+ ];
2216
+ function Ct(e) {
2217
+ let t = e * Math.PI / 180;
2218
+ return {
2219
+ lx: Math.sin(t),
2220
+ ly: -Math.cos(t)
2221
+ };
2222
+ }
2223
+ var wt = {
2224
+ Component: ({ sampler: e, boxW: n, boxH: r, variant: i, params: c }) => {
2225
+ if (i !== "solid" && i !== "subtle") return null;
2226
+ let l = {
2227
+ ...xt,
2228
+ ...c
2229
+ }, u = t(), d = 100 / n, f = 100 / r, p = e.totalCss, { lx: m, ly: h } = Ct(l.lightFrom), g = [], _ = [];
2230
+ for (let t = 0; t < Q; t++) {
2231
+ let n = e.perimeterAt(t / Q * p), r = -(n.nx * m + n.ny * h), i = Math.max(0, Math.min((r + 1) / 2, .9999)), a = Math.floor(i * St.length);
2232
+ g.push({
2233
+ x: n.x,
2234
+ y: n.y,
2235
+ bucket: a
2236
+ }), _.push({
2237
+ x: n.x - n.nx * l.bevelWidth * d,
2238
+ y: n.y - n.ny * l.bevelWidth * f
2239
+ });
2240
+ }
2241
+ let v = [], y = null;
2242
+ for (let e = 0; e < Q; e++) {
2243
+ let t = g[e].bucket;
2244
+ !y || y.bucket !== t ? (y = {
2245
+ bucket: t,
2246
+ idxs: [e]
2247
+ }, v.push(y)) : y.idxs.push(e);
2248
+ }
2249
+ v.length > 1 && v[0].bucket === v[v.length - 1].bucket && (v[v.length - 1].idxs = v[v.length - 1].idxs.concat(v[0].idxs), v.shift());
2250
+ let b = (e) => {
2251
+ let t = e.idxs[0], n = e.idxs[e.idxs.length - 1], r = (t - 1 + Q) % Q, i = (n + 1) % Q, a = [
2252
+ r,
2253
+ ...e.idxs,
2254
+ i
2255
+ ], o = a.map((e) => g[e]), s = a.map((e) => _[e]).reverse(), c = [...o, ...s], l = `M ${c[0].x.toFixed(3)} ${c[0].y.toFixed(3)}`;
2256
+ for (let e = 1; e < c.length; e++) l += ` L ${c[e].x.toFixed(3)} ${c[e].y.toFixed(3)}`;
2257
+ return l + " Z";
2258
+ };
2259
+ return /* @__PURE__ */ s(a, { children: [/* @__PURE__ */ o("defs", { children: /* @__PURE__ */ o("clipPath", {
2260
+ id: u,
2261
+ children: /* @__PURE__ */ o("path", { d: e.bodyPath })
2262
+ }) }), /* @__PURE__ */ o("g", {
2263
+ clipPath: `url(#${u})`,
2264
+ children: v.map((e, t) => /* @__PURE__ */ o("path", {
2265
+ className: St[e.bucket],
2266
+ d: b(e)
2267
+ }, t))
2268
+ })] });
2269
+ },
2270
+ zone: "foreground",
2271
+ defaults: xt
2272
+ }, Tt = {
2273
+ width: 1,
2274
+ color: "var(--badge-edge)",
2275
+ dash: "",
2276
+ blendMode: "normal",
2277
+ opacity: 1
2278
+ }, Et = {
2279
+ Component: ({ sampler: e, boxW: t, boxH: n, params: r }) => {
2280
+ let i = {
2281
+ ...Tt,
2282
+ ...r
2283
+ }, a = 100 / t, s = 100 / n, c = i.width * Math.max(a, s);
2284
+ return /* @__PURE__ */ o("path", {
2285
+ d: e.bodyPath,
2286
+ fill: "none",
2287
+ stroke: i.color,
2288
+ strokeWidth: c,
2289
+ strokeDasharray: i.dash || void 0,
2290
+ strokeOpacity: i.opacity,
2291
+ vectorEffect: "non-scaling-stroke",
2292
+ style: { mixBlendMode: i.blendMode }
2293
+ });
2294
+ },
2295
+ zone: "foreground",
2296
+ defaults: Tt
2297
+ }, Dt = {
2298
+ count: 3,
2299
+ width: 18,
2300
+ gap: 8,
2301
+ angle: 28,
2302
+ opacity: .18,
2303
+ color: "#ffffff",
2304
+ offset: 0,
2305
+ irregularity: 0,
2306
+ gradientAngle: 90,
2307
+ gradientStart: 0,
2308
+ gradientEnd: 1
2309
+ }, Ot = {
2310
+ Component: ({ sampler: e, boxW: n, boxH: r, params: i }) => {
2311
+ let c = {
2312
+ ...Dt,
2313
+ ...i
2314
+ }, l = t(), u = t(), d = t(), f = 100 / n, p = 100 / r, m = Math.max(0, Math.min(c.irregularity, 1)), h = (e) => 1 + m * .45 * Math.sin(e * 1.73 + .7), g = (e) => 1 + m * .5 * Math.sin(e * 2.31 + 1.3), _ = (e) => m * 8 * Math.sin(e * 3.07 + .4), v = c.width * f, y = c.gap * f, b = c.offset * f, x = 50 - (c.count * v + (c.count - 1) * y) / 2 + b, S = [];
2315
+ for (let e = 0; e < c.count; e++) {
2316
+ let t = v * h(e), n = x, r = x + t, i = Math.tan((c.angle + _(e)) * Math.PI / 180) * (f / p) * 200 / 2, a = [
2317
+ [n + i, -50],
2318
+ [r + i, -50],
2319
+ [r - i, 150],
2320
+ [n - i, 150]
2321
+ ];
2322
+ S.push({
2323
+ points: a.map(([e, t]) => `${e.toFixed(3)},${t.toFixed(3)}`).join(" "),
2324
+ opacity: Math.max(0, Math.min(c.opacity * g(e), 1))
2325
+ }), x += v + y;
2326
+ }
2327
+ let C = c.gradientAngle * Math.PI / 180, w = Math.cos(C), T = Math.sin(C), E = 50 - w * 100 / 2, D = 50 - T * 100 / 2, O = 50 + w * 100 / 2, k = 50 + T * 100 / 2, A = Math.max(0, Math.min(c.gradientStart, 1)), j = Math.max(0, Math.min(c.gradientEnd, 1)), M = A <= j ? [
2328
+ {
2329
+ offset: 0,
2330
+ color: "#fff"
2331
+ },
2332
+ {
2333
+ offset: A,
2334
+ color: "#fff"
2335
+ },
2336
+ {
2337
+ offset: j,
2338
+ color: "#000"
2339
+ },
2340
+ {
2341
+ offset: 1,
2342
+ color: "#000"
2343
+ }
2344
+ ] : [
2345
+ {
2346
+ offset: 0,
2347
+ color: "#000"
2348
+ },
2349
+ {
2350
+ offset: j,
2351
+ color: "#000"
2352
+ },
2353
+ {
2354
+ offset: A,
2355
+ color: "#fff"
2356
+ },
2357
+ {
2358
+ offset: 1,
2359
+ color: "#fff"
2360
+ }
2361
+ ];
2362
+ return /* @__PURE__ */ s(a, { children: [/* @__PURE__ */ s("defs", { children: [
2363
+ /* @__PURE__ */ o("clipPath", {
2364
+ id: l,
2365
+ children: /* @__PURE__ */ o("path", { d: e.bodyPath })
2366
+ }),
2367
+ /* @__PURE__ */ o("linearGradient", {
2368
+ id: d,
2369
+ x1: E,
2370
+ y1: D,
2371
+ x2: O,
2372
+ y2: k,
2373
+ gradientUnits: "userSpaceOnUse",
2374
+ children: M.map((e, t) => /* @__PURE__ */ o("stop", {
2375
+ offset: e.offset,
2376
+ stopColor: e.color
2377
+ }, t))
2378
+ }),
2379
+ /* @__PURE__ */ o("mask", {
2380
+ id: u,
2381
+ maskUnits: "userSpaceOnUse",
2382
+ x: "0",
2383
+ y: "0",
2384
+ width: "100",
2385
+ height: "100",
2386
+ children: /* @__PURE__ */ o("rect", {
2387
+ x: "0",
2388
+ y: "0",
2389
+ width: "100",
2390
+ height: "100",
2391
+ fill: `url(#${d})`
2392
+ })
2393
+ })
2394
+ ] }), /* @__PURE__ */ o("g", {
2395
+ clipPath: `url(#${l})`,
2396
+ mask: `url(#${u})`,
2397
+ children: S.map((e, t) => /* @__PURE__ */ o("polygon", {
2398
+ points: e.points,
2399
+ fill: c.color,
2400
+ opacity: e.opacity
2401
+ }, t))
2402
+ })] });
2403
+ },
2404
+ zone: "foreground",
2405
+ defaults: Dt
2406
+ }, kt = {
2407
+ accent: "var(--badge-edge)",
2408
+ topAlpha: .45,
2409
+ upperAlpha: .7,
2410
+ equator: 52,
2411
+ equatorSpread: 12,
2412
+ equatorTint: 95,
2413
+ baseTint: 70,
2414
+ glossTopAlpha: .7,
2415
+ glossMidAlpha: .18,
2416
+ glossExtent: 50,
2417
+ bezelAlpha: .7,
2418
+ bezelWidth: 1,
2419
+ rimAlpha: .22,
2420
+ rimWidth: 1
2421
+ }, At = 240, jt = {
2422
+ Component: ({ sampler: e, boxW: n, boxH: r, variant: i, params: c }) => {
2423
+ if (i !== "solid" && i !== "subtle" && i !== "outline") return null;
2424
+ let l = {
2425
+ ...kt,
2426
+ ...c
2427
+ }, u = t(), d = t(), f = t(), p = e.totalCss, m = [], h = null;
2428
+ for (let t = 0; t < At; t++) {
2429
+ let n = t / At * p, r = e.perimeterAt(n);
2430
+ r.ny < 0 ? (h || (h = [], m.push(h)), h.push({
2431
+ x: r.x,
2432
+ y: r.y
2433
+ })) : h = null;
2434
+ }
2435
+ if (m.length > 1) {
2436
+ let t = e.perimeterAt(0), n = e.perimeterAt((At - 1) / At * p);
2437
+ if (t.ny < 0 && n.ny < 0) {
2438
+ let e = m.shift();
2439
+ m[m.length - 1].push(...e);
2440
+ }
2441
+ }
2442
+ let g = [];
2443
+ for (let e of m) {
2444
+ if (e.length < 2) continue;
2445
+ let t = `M ${e[0].x.toFixed(3)} ${e[0].y.toFixed(3)}`;
2446
+ for (let n = 1; n < e.length; n++) t += ` L ${e[n].x.toFixed(3)} ${e[n].y.toFixed(3)}`;
2447
+ g.push(t);
2448
+ }
2449
+ let _ = 100 / n, v = 100 / r, y = Math.max(_, v), b = l.bezelWidth * y, x = l.rimWidth * y, S = Math.max(0, l.equator - l.equatorSpread), C = Math.min(100, l.equator + l.equatorSpread * 1.6), w = `color-mix(in srgb, ${l.accent} ${l.equatorTint}%, white)`, T = `color-mix(in srgb, ${l.accent} ${l.baseTint}%, black)`;
2450
+ return /* @__PURE__ */ s(a, { children: [
2451
+ /* @__PURE__ */ s("defs", { children: [
2452
+ /* @__PURE__ */ s("linearGradient", {
2453
+ id: u,
2454
+ x1: "0%",
2455
+ y1: "0%",
2456
+ x2: "0%",
2457
+ y2: "100%",
2458
+ children: [
2459
+ /* @__PURE__ */ o("stop", {
2460
+ offset: "0%",
2461
+ style: {
2462
+ stopColor: l.accent,
2463
+ stopOpacity: l.topAlpha
2464
+ }
2465
+ }),
2466
+ /* @__PURE__ */ o("stop", {
2467
+ offset: `${S}%`,
2468
+ style: {
2469
+ stopColor: l.accent,
2470
+ stopOpacity: l.upperAlpha
2471
+ }
2472
+ }),
2473
+ /* @__PURE__ */ o("stop", {
2474
+ offset: `${l.equator}%`,
2475
+ style: {
2476
+ stopColor: w,
2477
+ stopOpacity: 1
2478
+ }
2479
+ }),
2480
+ /* @__PURE__ */ o("stop", {
2481
+ offset: `${C}%`,
2482
+ style: {
2483
+ stopColor: l.accent,
2484
+ stopOpacity: 1
2485
+ }
2486
+ }),
2487
+ /* @__PURE__ */ o("stop", {
2488
+ offset: "100%",
2489
+ style: {
2490
+ stopColor: T,
2491
+ stopOpacity: 1
2492
+ }
2493
+ })
2494
+ ]
2495
+ }),
2496
+ /* @__PURE__ */ s("linearGradient", {
2497
+ id: d,
2498
+ x1: "0%",
2499
+ y1: "0%",
2500
+ x2: "0%",
2501
+ y2: `${l.glossExtent}%`,
2502
+ children: [
2503
+ /* @__PURE__ */ o("stop", {
2504
+ offset: "0%",
2505
+ style: {
2506
+ stopColor: "white",
2507
+ stopOpacity: l.glossTopAlpha
2508
+ }
2509
+ }),
2510
+ /* @__PURE__ */ o("stop", {
2511
+ offset: "60%",
2512
+ style: {
2513
+ stopColor: "white",
2514
+ stopOpacity: l.glossMidAlpha
2515
+ }
2516
+ }),
2517
+ /* @__PURE__ */ o("stop", {
2518
+ offset: "100%",
2519
+ style: {
2520
+ stopColor: "white",
2521
+ stopOpacity: 0
2522
+ }
2523
+ })
2524
+ ]
2525
+ }),
2526
+ /* @__PURE__ */ o("clipPath", {
2527
+ id: f,
2528
+ children: /* @__PURE__ */ o("path", { d: e.bodyPath })
2529
+ })
2530
+ ] }),
2531
+ /* @__PURE__ */ o("path", {
2532
+ d: e.bodyPath,
2533
+ fill: `url(#${u})`,
2534
+ style: { pointerEvents: "none" }
2535
+ }),
2536
+ /* @__PURE__ */ o("rect", {
2537
+ x: "0",
2538
+ y: "0",
2539
+ width: "100",
2540
+ height: l.glossExtent,
2541
+ fill: `url(#${d})`,
2542
+ clipPath: `url(#${f})`,
2543
+ style: { pointerEvents: "none" }
2544
+ }),
2545
+ g.map((e, t) => /* @__PURE__ */ o("path", {
2546
+ d: e,
2547
+ fill: "none",
2548
+ stroke: "white",
2549
+ strokeOpacity: l.bezelAlpha,
2550
+ strokeWidth: b,
2551
+ strokeLinecap: "round",
2552
+ vectorEffect: "non-scaling-stroke",
2553
+ style: { pointerEvents: "none" }
2554
+ }, `bz-${t}`)),
2555
+ /* @__PURE__ */ o("path", {
2556
+ d: e.bodyPath,
2557
+ fill: "none",
2558
+ stroke: "black",
2559
+ strokeOpacity: l.rimAlpha,
2560
+ strokeWidth: x,
2561
+ vectorEffect: "non-scaling-stroke",
2562
+ style: { pointerEvents: "none" }
2563
+ })
2564
+ ] });
2565
+ },
2566
+ zone: "foreground",
2567
+ defaults: kt
2568
+ }, Mt = {
2569
+ accent: "#aab3bd",
2570
+ specularity: .6,
2571
+ equator: 50,
2572
+ equatorSpread: 8,
2573
+ topDarkness: 55,
2574
+ baseDarkness: 35,
2575
+ glossExtent: 50,
2576
+ glossAlphaTop: .55,
2577
+ bezelAlpha: .85,
2578
+ bezelWidth: 1,
2579
+ rimAlpha: .35,
2580
+ rimWidth: 1
2581
+ }, Nt = 240, $ = {
2582
+ spikes: Ze,
2583
+ puffs: $e,
2584
+ bites: tt,
2585
+ scallops: rt,
2586
+ bevel: ct,
2587
+ bevel2: wt,
2588
+ sheen: dt,
2589
+ rivets: pt,
2590
+ shadow: ht,
2591
+ woodgrain: vt,
2592
+ perforations: bt,
2593
+ outline: Et,
2594
+ sunbeams: Ot,
2595
+ aqua: jt,
2596
+ metal: {
2597
+ Component: ({ sampler: e, boxW: n, boxH: r, variant: i, params: c }) => {
2598
+ if (i !== "solid" && i !== "subtle" && i !== "outline") return null;
2599
+ let l = {
2600
+ ...Mt,
2601
+ ...c
2602
+ }, u = Math.max(0, Math.min(l.specularity, 1)), d = t(), f = t(), p = t(), m = e.totalCss, h = [], g = null;
2603
+ for (let t = 0; t < Nt; t++) {
2604
+ let n = t / Nt * m, r = e.perimeterAt(n);
2605
+ r.ny < 0 ? (g || (g = [], h.push(g)), g.push({
2606
+ x: r.x,
2607
+ y: r.y
2608
+ })) : g = null;
2609
+ }
2610
+ if (h.length > 1) {
2611
+ let t = e.perimeterAt(0), n = e.perimeterAt((Nt - 1) / Nt * m);
2612
+ if (t.ny < 0 && n.ny < 0) {
2613
+ let e = h.shift();
2614
+ h[h.length - 1].push(...e);
2615
+ }
2616
+ }
2617
+ let _ = [];
2618
+ for (let e of h) {
2619
+ if (e.length < 2) continue;
2620
+ let t = `M ${e[0].x.toFixed(3)} ${e[0].y.toFixed(3)}`;
2621
+ for (let n = 1; n < e.length; n++) t += ` L ${e[n].x.toFixed(3)} ${e[n].y.toFixed(3)}`;
2622
+ _.push(t);
2623
+ }
2624
+ let v = 100 / n, y = 100 / r, b = Math.max(v, y), x = l.bezelWidth * b, S = l.rimWidth * b, C = Math.max(0, l.equator - l.equatorSpread), w = Math.min(100, l.equator + l.equatorSpread), T = 100 - Math.round(u * 85), E = `color-mix(in srgb, ${l.accent} ${T}%, white)`, D = `color-mix(in srgb, ${l.accent} ${l.topDarkness}%, black)`, O = `color-mix(in srgb, ${l.accent} ${l.baseDarkness}%, black)`, k = 100 - Math.round(u * 50), A = 100 - Math.round(u * 30), j = `color-mix(in srgb, ${l.accent} ${k}%, white)`, M = `color-mix(in srgb, ${l.accent} ${A}%, white)`, N = l.glossAlphaTop * u, P = l.bezelAlpha * (.4 + .6 * u), F = l.rimAlpha * (.6 + .4 * u);
2625
+ return /* @__PURE__ */ s(a, { children: [
2626
+ /* @__PURE__ */ s("defs", { children: [
2627
+ /* @__PURE__ */ s("linearGradient", {
2628
+ id: d,
2629
+ x1: "0%",
2630
+ y1: "0%",
2631
+ x2: "0%",
2632
+ y2: "100%",
2633
+ children: [
2634
+ /* @__PURE__ */ o("stop", {
2635
+ offset: "0%",
2636
+ style: { stopColor: D }
2637
+ }),
2638
+ /* @__PURE__ */ o("stop", {
2639
+ offset: `${C}%`,
2640
+ style: { stopColor: j }
2641
+ }),
2642
+ /* @__PURE__ */ o("stop", {
2643
+ offset: `${l.equator}%`,
2644
+ style: { stopColor: E }
2645
+ }),
2646
+ /* @__PURE__ */ o("stop", {
2647
+ offset: `${w}%`,
2648
+ style: { stopColor: M }
2649
+ }),
2650
+ /* @__PURE__ */ o("stop", {
2651
+ offset: "100%",
2652
+ style: { stopColor: O }
2653
+ })
2654
+ ]
2655
+ }),
2656
+ /* @__PURE__ */ s("linearGradient", {
2657
+ id: f,
2658
+ x1: "0%",
2659
+ y1: "0%",
2660
+ x2: "0%",
2661
+ y2: `${l.glossExtent}%`,
2662
+ children: [/* @__PURE__ */ o("stop", {
2663
+ offset: "0%",
2664
+ style: {
2665
+ stopColor: "white",
2666
+ stopOpacity: N
2667
+ }
2668
+ }), /* @__PURE__ */ o("stop", {
2669
+ offset: "100%",
2670
+ style: {
2671
+ stopColor: "white",
2672
+ stopOpacity: 0
2673
+ }
2674
+ })]
2675
+ }),
2676
+ /* @__PURE__ */ o("clipPath", {
2677
+ id: p,
2678
+ children: /* @__PURE__ */ o("path", { d: e.bodyPath })
2679
+ })
2680
+ ] }),
2681
+ /* @__PURE__ */ o("path", {
2682
+ d: e.bodyPath,
2683
+ fill: `url(#${d})`,
2684
+ style: { pointerEvents: "none" }
2685
+ }),
2686
+ N > 0 && /* @__PURE__ */ o("rect", {
2687
+ x: "0",
2688
+ y: "0",
2689
+ width: "100",
2690
+ height: l.glossExtent,
2691
+ fill: `url(#${f})`,
2692
+ clipPath: `url(#${p})`,
2693
+ style: { pointerEvents: "none" }
2694
+ }),
2695
+ _.map((e, t) => /* @__PURE__ */ o("path", {
2696
+ d: e,
2697
+ fill: "none",
2698
+ stroke: "white",
2699
+ strokeOpacity: P,
2700
+ strokeWidth: x,
2701
+ strokeLinecap: "round",
2702
+ vectorEffect: "non-scaling-stroke",
2703
+ style: { pointerEvents: "none" }
2704
+ }, `bz-${t}`)),
2705
+ /* @__PURE__ */ o("path", {
2706
+ d: e.bodyPath,
2707
+ fill: "none",
2708
+ stroke: "black",
2709
+ strokeOpacity: F,
2710
+ strokeWidth: S,
2711
+ vectorEffect: "non-scaling-stroke",
2712
+ style: { pointerEvents: "none" }
2713
+ })
2714
+ ] });
2715
+ },
2716
+ zone: "foreground",
2717
+ defaults: Mt
2718
+ }
2719
+ };
2720
+ //#endregion
2721
+ //#region src/components/Badge/Badge.tsx
2722
+ function Pt(e) {
2723
+ return e.as ? e.as : e.href ? "a" : e.onClick ? "button" : "span";
2724
+ }
2725
+ function Ft(l) {
2726
+ let { shape: u = "pill", tone: d = "neutral", variant: f = "outline", size: p = "sm", onClick: m, onRemove: h, removeLabel: g, href: _, children: v, className: y, shapeParams: b, bloat: x, padding: S, style: C, breakStyle: w, crawl: T, base: E, baseParams: D, effects: O } = l, k = l["aria-label"], A = Pt(l), [j, M] = i(!1), [N, P] = i(0), F = pe[u] ?? pe.pill, ee = pe[u] ? u : "pill", I = F.Component, te = {
2727
+ ...F.defaults ?? {},
2728
+ ...b ?? {}
2729
+ };
2730
+ e(() => {
2731
+ if (!T) {
2732
+ P(0);
2733
+ return;
2734
+ }
2735
+ let e = typeof T == "number" ? T : .2, t = 0, n = performance.now(), r = (i) => {
2736
+ let a = (i - n) / 1e3;
2737
+ n = i, P((t) => (t + e * a) % 1), t = requestAnimationFrame(r);
2738
+ };
2739
+ return t = requestAnimationFrame(r), () => cancelAnimationFrame(t);
2740
+ }, [T]);
2741
+ let ne = [c.badge, y].filter(Boolean).join(" "), re = !E && F.compose ? F.compose(te) : null, ie = E ?? re?.base, L = ie ? Ye[ie] : null, ae = E ? D : re?.baseParams, oe = E ? O : re?.effects ?? O, R = L ? {
2742
+ ...L.defaults ?? {},
2743
+ ...ae ?? {}
2744
+ } : null, se = r(null), [z, ce] = i({
2745
+ w: 100,
2746
+ h: 100
2747
+ });
2748
+ n(() => {
2749
+ if (!L) return;
2750
+ let e = se.current;
2751
+ if (!e) return;
2752
+ let t = () => {
2753
+ let t = e.getBoundingClientRect();
2754
+ t.width > 0 && t.height > 0 && ce({
2755
+ w: t.width,
2756
+ h: t.height
2757
+ });
2758
+ };
2759
+ if (t(), typeof ResizeObserver > "u") return;
2760
+ let n = new ResizeObserver(t);
2761
+ return n.observe(e), () => n.disconnect();
2762
+ }, [L]);
2763
+ let B = L ? L.build(R, z.w, z.h) : null, V = L ? (typeof L.insets == "function" ? L.insets(R) : L.insets) ?? {
2764
+ top: 0,
2765
+ right: 0,
2766
+ bottom: 0,
2767
+ left: 0
2768
+ } : typeof F.insets == "function" ? F.insets(te) : F.insets, le = {
2769
+ className: ne,
2770
+ style: {
2771
+ "--badge-inset-top": `${V.top}px`,
2772
+ "--badge-inset-right": `${V.right}px`,
2773
+ "--badge-inset-bottom": `${V.bottom}px`,
2774
+ "--badge-inset-left": `${V.left}px`,
2775
+ ...S !== void 0 && { padding: typeof S == "number" ? `${S}px` : S },
2776
+ ...w !== void 0 && {
2777
+ boxDecorationBreak: w,
2778
+ WebkitBoxDecorationBreak: w
2779
+ },
2780
+ ...C
2781
+ },
2782
+ "data-shape": L ? "compose" : ee,
2783
+ "data-tone": d,
2784
+ "data-variant": f,
2785
+ "data-size": p,
2786
+ "data-focused": j ? "true" : void 0,
2787
+ onFocus: () => M(!0),
2788
+ onBlur: () => M(!1),
2789
+ "aria-label": k
2790
+ }, H = (() => {
2791
+ if (!L || !B) return null;
2792
+ let e = (oe ?? []).map((e) => {
2793
+ let t = $[e.type];
2794
+ if (!t?.offsetAt) return null;
2795
+ let n = {
2796
+ ...t.defaults ?? {},
2797
+ ...e.params ?? {}
2798
+ };
2799
+ return {
2800
+ offsetAt: t.offsetAt,
2801
+ params: n
2802
+ };
2803
+ }).filter(Boolean), t = x ?? 0;
2804
+ if (e.length === 0 && t === 0) return B;
2805
+ let n = 100 / z.w, r = 100 / z.h, i = B.totalCss, a = (a) => {
2806
+ let o = (a % i + i) % i, s = B.perimeterAt(o), c = s.nx * t, l = s.ny * t;
2807
+ for (let t of e) {
2808
+ let e = t.offsetAt(o, {
2809
+ params: t.params,
2810
+ phase: N,
2811
+ totalCss: i,
2812
+ perimeterAt: B.perimeterAt
2813
+ });
2814
+ c += e.dx, l += e.dy;
2815
+ }
2816
+ return {
2817
+ x: s.x + c * n,
2818
+ y: s.y + l * r
2819
+ };
2820
+ }, o = "";
2821
+ for (let e = 0; e < 600; e++) {
2822
+ let t = a(e / 600 * i);
2823
+ o += e === 0 ? `M ${t.x.toFixed(3)} ${t.y.toFixed(3)}` : ` L ${t.x.toFixed(3)} ${t.y.toFixed(3)}`;
2824
+ }
2825
+ return o += " Z", {
2826
+ bodyPath: o,
2827
+ perimeterAt: (e) => {
2828
+ let t = (e % i + i) % i, o = a(t), s = i / (600 * 2), c = a(t - s), l = a(t + s), u = (l.x - c.x) / n, d = (l.y - c.y) / r, f = Math.hypot(u, d) || 1, p = d / f, m = -u / f;
2829
+ return {
2830
+ x: o.x,
2831
+ y: o.y,
2832
+ nx: p,
2833
+ ny: m
2834
+ };
2835
+ },
2836
+ totalCss: i
2837
+ };
2838
+ })(), U = (oe ?? []).filter((e) => $[e.type]?.Component), ue = U.filter((e) => ($[e.type].zone ?? "foreground") === "background"), de = U.filter((e) => ($[e.type].zone ?? "foreground") === "foreground"), W = U.filter((e) => $[e.type].zone === "mask"), fe = `badge-mask-${t().replace(/:/g, "")}`, G = (e, t) => {
2839
+ let n = $[e.type], r = n?.Component;
2840
+ if (!r || !H) return null;
2841
+ let i = {
2842
+ ...n.defaults ?? {},
2843
+ ...e.params ?? {}
2844
+ };
2845
+ return /* @__PURE__ */ o(r, {
2846
+ sampler: H,
2847
+ boxW: z.w,
2848
+ boxH: z.h,
2849
+ variant: f,
2850
+ params: i,
2851
+ phase: N
2852
+ }, `${e.type}-${t}`);
2853
+ }, K = /* @__PURE__ */ s(a, { children: [L && H ? /* @__PURE__ */ s("svg", {
2854
+ ref: se,
2855
+ className: c.deco,
2856
+ viewBox: "0 0 100 100",
2857
+ preserveAspectRatio: "none",
2858
+ "aria-hidden": "true",
2859
+ children: [
2860
+ W.length > 0 && /* @__PURE__ */ o("defs", { children: /* @__PURE__ */ s("mask", {
2861
+ id: fe,
2862
+ maskUnits: "userSpaceOnUse",
2863
+ x: "-10",
2864
+ y: "-10",
2865
+ width: "120",
2866
+ height: "120",
2867
+ children: [/* @__PURE__ */ o("rect", {
2868
+ x: "-10",
2869
+ y: "-10",
2870
+ width: "120",
2871
+ height: "120",
2872
+ fill: "white"
2873
+ }), W.map(G)]
2874
+ }) }),
2875
+ ue.map(G),
2876
+ /* @__PURE__ */ s("g", {
2877
+ ...W.length > 0 ? { mask: `url(#${fe})` } : {},
2878
+ children: [(f === "solid" || f === "subtle") && /* @__PURE__ */ o("path", {
2879
+ className: "badge-fill",
2880
+ d: H.bodyPath
2881
+ }), (f === "outline" || f === "solid") && /* @__PURE__ */ o("path", {
2882
+ className: "badge-stroke",
2883
+ d: H.bodyPath
2884
+ })]
2885
+ }),
2886
+ de.map(G)
2887
+ ]
2888
+ }) : F.renderMode !== "css" && I ? /* @__PURE__ */ o("svg", {
2889
+ className: c.deco,
2890
+ viewBox: "0 0 100 100",
2891
+ preserveAspectRatio: F.stretches === !1 ? "xMidYMid meet" : "none",
2892
+ "aria-hidden": "true",
2893
+ children: /* @__PURE__ */ o(I, {
2894
+ variant: f,
2895
+ focused: j,
2896
+ params: te,
2897
+ phase: N
2898
+ })
2899
+ }) : null, /* @__PURE__ */ s("span", {
2900
+ className: c.content,
2901
+ children: [/* @__PURE__ */ o("span", { children: v }), h && /* @__PURE__ */ o("button", {
2902
+ type: "button",
2903
+ className: c.remove,
2904
+ "aria-label": g ?? "Remove",
2905
+ onClick: (e) => {
2906
+ e.stopPropagation(), h();
2907
+ },
2908
+ children: /* @__PURE__ */ o("svg", {
2909
+ viewBox: "0 0 10 10",
2910
+ width: "10",
2911
+ height: "10",
2912
+ "aria-hidden": "true",
2913
+ focusable: "false",
2914
+ children: /* @__PURE__ */ o("path", {
2915
+ d: "M 2 2 L 8 8 M 8 2 L 2 8",
2916
+ stroke: "currentColor",
2917
+ strokeWidth: "1.6",
2918
+ strokeLinecap: "round",
2919
+ fill: "none"
2920
+ })
2921
+ })
2922
+ })]
2923
+ })] });
2924
+ return A === "button" ? /* @__PURE__ */ o("button", {
2925
+ type: "button",
2926
+ ...le,
2927
+ onClick: m,
2928
+ children: K
2929
+ }) : A === "a" ? /* @__PURE__ */ o("a", {
2930
+ href: _,
2931
+ ...le,
2932
+ onClick: m,
2933
+ children: K
2934
+ }) : /* @__PURE__ */ o("span", {
2935
+ ...le,
2936
+ children: K
2937
+ });
2938
+ }
2939
+ //#endregion
2940
+ export { qe as n, Ft as t };
2941
+
2942
+ //# sourceMappingURL=Badge-DU8ihE7Z.js.map