@sudobility/ratelimit-components 1.0.4 → 1.0.6

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.
@@ -1 +1 @@
1
- {"version":3,"file":"UsageHistoryChart.d.ts","sourceRoot":"","sources":["../../src/components/UsageHistoryChart.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAYvC,OAAO,KAAK,EAAE,sBAAsB,EAAc,MAAM,UAAU,CAAC;AA8FnE,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CA0I9D,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"UsageHistoryChart.d.ts","sourceRoot":"","sources":["../../src/components/UsageHistoryChart.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AAYvC,OAAO,KAAK,EAAE,sBAAsB,EAAc,MAAM,UAAU,CAAC;AA8FnE,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CA6I9D,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
package/dist/index.esm.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { jsxs as k, jsx as g } from "react/jsx-runtime";
2
2
  import { useMemo as ne } from "react";
3
- import { ResponsiveContainer as Be, BarChart as De, CartesianGrid as _e, XAxis as $e, YAxis as We, Tooltip as He, Bar as qe, ReferenceLine as Ye } from "recharts";
3
+ import { ResponsiveContainer as De, LineChart as Fe, CartesianGrid as _e, XAxis as $e, YAxis as Be, Tooltip as He, Line as qe, ReferenceLine as Ye } from "recharts";
4
4
  function ze(e) {
5
5
  var r, t, o = "";
6
6
  if (typeof e == "string" || typeof e == "number") o += e;
@@ -20,13 +20,13 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
20
20
  const { variants: n, defaultVariants: c } = r, a = Object.keys(n).map((d) => {
21
21
  const x = t?.[d], f = c?.[d];
22
22
  if (x === null) return null;
23
- const p = xe(x) || xe(f);
24
- return n[d][p];
23
+ const b = xe(x) || xe(f);
24
+ return n[d][b];
25
25
  }), u = t && Object.entries(t).reduce((d, x) => {
26
- let [f, p] = x;
27
- return p === void 0 || (d[f] = p), d;
26
+ let [f, b] = x;
27
+ return b === void 0 || (d[f] = b), d;
28
28
  }, {}), s = r == null || (o = r.compoundVariants) === null || o === void 0 ? void 0 : o.reduce((d, x) => {
29
- let { class: f, className: p, ...y } = x;
29
+ let { class: f, className: b, ...y } = x;
30
30
  return Object.entries(y).every((z) => {
31
31
  let [C, N] = z;
32
32
  return Array.isArray(N) ? N.includes({
@@ -39,7 +39,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
39
39
  }) ? [
40
40
  ...d,
41
41
  f,
42
- p
42
+ b
43
43
  ] : d;
44
44
  }, []);
45
45
  return ye(e, a, s, t?.class, t?.className);
@@ -204,16 +204,16 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
204
204
  N === "[" ? a++ : N === "]" ? a-- : N === "(" ? u++ : N === ")" && u--;
205
205
  }
206
206
  const f = c.length === 0 ? n : n.slice(s);
207
- let p = f, y = !1;
208
- f.endsWith(ie) ? (p = f.slice(0, -1), y = !0) : (
207
+ let b = f, y = !1;
208
+ f.endsWith(ie) ? (b = f.slice(0, -1), y = !0) : (
209
209
  /**
210
210
  * In Tailwind CSS v3 the important modifier was at the start of the base class name. This is still supported for legacy reasons.
211
211
  * @see https://github.com/dcastil/tailwind-merge/issues/513#issuecomment-2614029864
212
212
  */
213
- f.startsWith(ie) && (p = f.slice(1), y = !0)
213
+ f.startsWith(ie) && (b = f.slice(1), y = !0)
214
214
  );
215
215
  const z = d && d > s ? d - s : void 0;
216
- return ve(c, y, p, z);
216
+ return ve(c, y, b, z);
217
217
  };
218
218
  if (r) {
219
219
  const n = r + we, c = o;
@@ -245,7 +245,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
245
245
  parseClassName: dt(e),
246
246
  sortModifiers: mt(e),
247
247
  ...Ze(e)
248
- }), gt = /\s+/, bt = (e, r) => {
248
+ }), gt = /\s+/, pt = (e, r) => {
249
249
  const {
250
250
  parseClassName: t,
251
251
  getClassGroupId: o,
@@ -256,7 +256,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
256
256
  for (let d = u.length - 1; d >= 0; d -= 1) {
257
257
  const x = u[d], {
258
258
  isExternal: f,
259
- modifiers: p,
259
+ modifiers: b,
260
260
  hasImportantModifier: y,
261
261
  baseClassName: z,
262
262
  maybePostfixModifierPosition: C
@@ -277,7 +277,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
277
277
  }
278
278
  N = !1;
279
279
  }
280
- const q = p.length === 0 ? "" : p.length === 1 ? p[0] : c(p).join(":"), _ = y ? q + ie : q, O = _ + I;
280
+ const q = b.length === 0 ? "" : b.length === 1 ? b[0] : c(b).join(":"), _ = y ? q + ie : q, O = _ + I;
281
281
  if (a.indexOf(O) > -1)
282
282
  continue;
283
283
  a.push(O);
@@ -289,7 +289,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
289
289
  s = x + (s.length > 0 ? " " + s : s);
290
290
  }
291
291
  return s;
292
- }, pt = (...e) => {
292
+ }, bt = (...e) => {
293
293
  let r = 0, t, o, n = "";
294
294
  for (; r < e.length; )
295
295
  (t = e[r++]) && (o = Pe(t)) && (n && (n += " "), n += o);
@@ -310,26 +310,26 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
310
310
  const d = o(s);
311
311
  if (d)
312
312
  return d;
313
- const x = bt(s, t);
313
+ const x = pt(s, t);
314
314
  return n(s, x), x;
315
315
  };
316
- return c = a, (...s) => c(pt(...s));
316
+ return c = a, (...s) => c(bt(...s));
317
317
  }, ht = [], w = (e) => {
318
318
  const r = (t) => t[e] || ht;
319
319
  return r.isThemeGetter = !0, r;
320
- }, Te = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, Ie = /^\((?:(\w[\w-]*):)?(.+)\)$/i, xt = /^\d+\/\d+$/, yt = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, kt = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, wt = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, vt = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, Nt = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, F = (e) => xt.test(e), h = (e) => !!e && !Number.isNaN(Number(e)), P = (e) => !!e && Number.isInteger(Number(e)), se = (e) => e.endsWith("%") && h(e.slice(0, -1)), M = (e) => yt.test(e), Ct = () => !0, Lt = (e) => (
320
+ }, Te = /^\[(?:(\w[\w-]*):)?(.+)\]$/i, Ie = /^\((?:(\w[\w-]*):)?(.+)\)$/i, xt = /^\d+\/\d+$/, yt = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/, kt = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/, wt = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/, vt = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/, Nt = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/, W = (e) => xt.test(e), h = (e) => !!e && !Number.isNaN(Number(e)), P = (e) => !!e && Number.isInteger(Number(e)), se = (e) => e.endsWith("%") && h(e.slice(0, -1)), M = (e) => yt.test(e), Ct = () => !0, Lt = (e) => (
321
321
  // `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
322
322
  // For example, `hsl(0 0% 0%)` would be classified as a length without this check.
323
323
  // I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
324
324
  kt.test(e) && !wt.test(e)
325
- ), je = () => !1, zt = (e) => vt.test(e), St = (e) => Nt.test(e), At = (e) => !l(e) && !i(e), Rt = (e) => B(e, Oe, je), l = (e) => Te.test(e), V = (e) => B(e, Ue, Lt), le = (e) => B(e, jt, h), Ne = (e) => B(e, Ge, je), Mt = (e) => B(e, Ve, St), Z = (e) => B(e, Ee, zt), i = (e) => Ie.test(e), W = (e) => D(e, Ue), Pt = (e) => D(e, Gt), Ce = (e) => D(e, Ge), Tt = (e) => D(e, Oe), It = (e) => D(e, Ve), ee = (e) => D(e, Ee, !0), B = (e, r, t) => {
325
+ ), je = () => !1, zt = (e) => vt.test(e), St = (e) => Nt.test(e), At = (e) => !l(e) && !i(e), Rt = (e) => D(e, Oe, je), l = (e) => Te.test(e), V = (e) => D(e, Ue, Lt), le = (e) => D(e, jt, h), Ne = (e) => D(e, Ge, je), Mt = (e) => D(e, Ve, St), Z = (e) => D(e, Ee, zt), i = (e) => Ie.test(e), B = (e) => F(e, Ue), Pt = (e) => F(e, Gt), Ce = (e) => F(e, Ge), Tt = (e) => F(e, Oe), It = (e) => F(e, Ve), ee = (e) => F(e, Ee, !0), D = (e, r, t) => {
326
326
  const o = Te.exec(e);
327
327
  return o ? o[1] ? r(o[1]) : t(o[2]) : !1;
328
- }, D = (e, r, t = !1) => {
328
+ }, F = (e, r, t = !1) => {
329
329
  const o = Ie.exec(e);
330
330
  return o ? o[1] ? r(o[1]) : t : !1;
331
331
  }, Ge = (e) => e === "position" || e === "percentage", Ve = (e) => e === "image" || e === "url", Oe = (e) => e === "length" || e === "size" || e === "bg-size", Ue = (e) => e === "length", jt = (e) => e === "number", Gt = (e) => e === "family-name", Ee = (e) => e === "shadow", Vt = () => {
332
- const e = w("color"), r = w("font"), t = w("text"), o = w("font-weight"), n = w("tracking"), c = w("leading"), a = w("breakpoint"), u = w("container"), s = w("spacing"), d = w("radius"), x = w("shadow"), f = w("inset-shadow"), p = w("text-shadow"), y = w("drop-shadow"), z = w("blur"), C = w("perspective"), N = w("aspect"), I = w("ease"), q = w("animate"), _ = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], O = () => [
332
+ const e = w("color"), r = w("font"), t = w("text"), o = w("font-weight"), n = w("tracking"), c = w("leading"), a = w("breakpoint"), u = w("container"), s = w("spacing"), d = w("radius"), x = w("shadow"), f = w("inset-shadow"), b = w("text-shadow"), y = w("drop-shadow"), z = w("blur"), C = w("perspective"), N = w("aspect"), I = w("ease"), q = w("animate"), _ = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"], O = () => [
333
333
  "center",
334
334
  "top",
335
335
  "bottom",
@@ -347,15 +347,15 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
347
347
  "bottom-left",
348
348
  // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
349
349
  "left-bottom"
350
- ], U = () => [...O(), i, l], j = () => ["auto", "hidden", "clip", "visible", "scroll"], $ = () => ["auto", "contain", "none"], b = () => [i, l, s], A = () => [F, "full", "auto", ...b()], de = () => [P, "none", "subgrid", i, l], me = () => ["auto", {
350
+ ], U = () => [...O(), i, l], j = () => ["auto", "hidden", "clip", "visible", "scroll"], $ = () => ["auto", "contain", "none"], p = () => [i, l, s], A = () => [W, "full", "auto", ...p()], de = () => [P, "none", "subgrid", i, l], me = () => ["auto", {
351
351
  span: ["full", P, i, l]
352
- }, P, i, l], Y = () => [P, "auto", i, l], ue = () => ["auto", "min", "max", "fr", i, l], re = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], E = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"], R = () => ["auto", ...b()], G = () => [F, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...b()], m = () => [e, i, l], ge = () => [...O(), Ce, Ne, {
352
+ }, P, i, l], Y = () => [P, "auto", i, l], ue = () => ["auto", "min", "max", "fr", i, l], re = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"], E = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"], R = () => ["auto", ...p()], G = () => [W, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...p()], m = () => [e, i, l], ge = () => [...O(), Ce, Ne, {
353
353
  position: [i, l]
354
- }], be = () => ["no-repeat", {
354
+ }], pe = () => ["no-repeat", {
355
355
  repeat: ["", "x", "y", "space", "round"]
356
- }], pe = () => ["auto", "cover", "contain", Tt, Rt, {
356
+ }], be = () => ["auto", "cover", "contain", Tt, Rt, {
357
357
  size: [i, l]
358
- }], oe = () => [se, W, V], L = () => [
358
+ }], oe = () => [se, B, V], L = () => [
359
359
  // Deprecated since Tailwind CSS v4.0.0
360
360
  "",
361
361
  "none",
@@ -363,14 +363,14 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
363
363
  d,
364
364
  i,
365
365
  l
366
- ], S = () => ["", h, W, V], K = () => ["solid", "dashed", "dotted", "double"], fe = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], v = () => [h, se, Ce, Ne], he = () => [
366
+ ], S = () => ["", h, B, V], K = () => ["solid", "dashed", "dotted", "double"], fe = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"], v = () => [h, se, Ce, Ne], he = () => [
367
367
  // Deprecated since Tailwind CSS v4.0.0
368
368
  "",
369
369
  "none",
370
370
  z,
371
371
  i,
372
372
  l
373
- ], X = () => ["none", h, i, l], J = () => ["none", h, i, l], ae = () => [h, i, l], Q = () => [F, "full", ...b()];
373
+ ], X = () => ["none", h, i, l], J = () => ["none", h, i, l], ae = () => [h, i, l], Q = () => [W, "full", ...p()];
374
374
  return {
375
375
  cacheSize: 500,
376
376
  theme: {
@@ -403,7 +403,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
403
403
  * @see https://tailwindcss.com/docs/aspect-ratio
404
404
  */
405
405
  aspect: [{
406
- aspect: ["auto", "square", F, l, i, N]
406
+ aspect: ["auto", "square", W, l, i, N]
407
407
  }],
408
408
  /**
409
409
  * Container
@@ -626,7 +626,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
626
626
  * @see https://tailwindcss.com/docs/flex-basis
627
627
  */
628
628
  basis: [{
629
- basis: [F, "full", "auto", u, ...b()]
629
+ basis: [W, "full", "auto", u, ...p()]
630
630
  }],
631
631
  /**
632
632
  * Flex Direction
@@ -647,7 +647,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
647
647
  * @see https://tailwindcss.com/docs/flex
648
648
  */
649
649
  flex: [{
650
- flex: [h, F, "auto", "initial", "none", l]
650
+ flex: [h, W, "auto", "initial", "none", l]
651
651
  }],
652
652
  /**
653
653
  * Flex Grow
@@ -752,21 +752,21 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
752
752
  * @see https://tailwindcss.com/docs/gap
753
753
  */
754
754
  gap: [{
755
- gap: b()
755
+ gap: p()
756
756
  }],
757
757
  /**
758
758
  * Gap X
759
759
  * @see https://tailwindcss.com/docs/gap
760
760
  */
761
761
  "gap-x": [{
762
- "gap-x": b()
762
+ "gap-x": p()
763
763
  }],
764
764
  /**
765
765
  * Gap Y
766
766
  * @see https://tailwindcss.com/docs/gap
767
767
  */
768
768
  "gap-y": [{
769
- "gap-y": b()
769
+ "gap-y": p()
770
770
  }],
771
771
  /**
772
772
  * Justify Content
@@ -841,63 +841,63 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
841
841
  * @see https://tailwindcss.com/docs/padding
842
842
  */
843
843
  p: [{
844
- p: b()
844
+ p: p()
845
845
  }],
846
846
  /**
847
847
  * Padding X
848
848
  * @see https://tailwindcss.com/docs/padding
849
849
  */
850
850
  px: [{
851
- px: b()
851
+ px: p()
852
852
  }],
853
853
  /**
854
854
  * Padding Y
855
855
  * @see https://tailwindcss.com/docs/padding
856
856
  */
857
857
  py: [{
858
- py: b()
858
+ py: p()
859
859
  }],
860
860
  /**
861
861
  * Padding Start
862
862
  * @see https://tailwindcss.com/docs/padding
863
863
  */
864
864
  ps: [{
865
- ps: b()
865
+ ps: p()
866
866
  }],
867
867
  /**
868
868
  * Padding End
869
869
  * @see https://tailwindcss.com/docs/padding
870
870
  */
871
871
  pe: [{
872
- pe: b()
872
+ pe: p()
873
873
  }],
874
874
  /**
875
875
  * Padding Top
876
876
  * @see https://tailwindcss.com/docs/padding
877
877
  */
878
878
  pt: [{
879
- pt: b()
879
+ pt: p()
880
880
  }],
881
881
  /**
882
882
  * Padding Right
883
883
  * @see https://tailwindcss.com/docs/padding
884
884
  */
885
885
  pr: [{
886
- pr: b()
886
+ pr: p()
887
887
  }],
888
888
  /**
889
889
  * Padding Bottom
890
890
  * @see https://tailwindcss.com/docs/padding
891
891
  */
892
892
  pb: [{
893
- pb: b()
893
+ pb: p()
894
894
  }],
895
895
  /**
896
896
  * Padding Left
897
897
  * @see https://tailwindcss.com/docs/padding
898
898
  */
899
899
  pl: [{
900
- pl: b()
900
+ pl: p()
901
901
  }],
902
902
  /**
903
903
  * Margin
@@ -967,7 +967,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
967
967
  * @see https://tailwindcss.com/docs/margin#adding-space-between-children
968
968
  */
969
969
  "space-x": [{
970
- "space-x": b()
970
+ "space-x": p()
971
971
  }],
972
972
  /**
973
973
  * Space Between X Reverse
@@ -979,7 +979,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
979
979
  * @see https://tailwindcss.com/docs/margin#adding-space-between-children
980
980
  */
981
981
  "space-y": [{
982
- "space-y": b()
982
+ "space-y": p()
983
983
  }],
984
984
  /**
985
985
  * Space Between Y Reverse
@@ -1063,7 +1063,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
1063
1063
  * @see https://tailwindcss.com/docs/font-size
1064
1064
  */
1065
1065
  "font-size": [{
1066
- text: ["base", t, W, V]
1066
+ text: ["base", t, B, V]
1067
1067
  }],
1068
1068
  /**
1069
1069
  * Font Smoothing
@@ -1148,7 +1148,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
1148
1148
  leading: [
1149
1149
  /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1150
1150
  c,
1151
- ...b()
1151
+ ...p()
1152
1152
  ]
1153
1153
  }],
1154
1154
  /**
@@ -1249,7 +1249,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
1249
1249
  * @see https://tailwindcss.com/docs/text-indent
1250
1250
  */
1251
1251
  indent: [{
1252
- indent: b()
1252
+ indent: p()
1253
1253
  }],
1254
1254
  /**
1255
1255
  * Vertical Alignment
@@ -1329,14 +1329,14 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
1329
1329
  * @see https://tailwindcss.com/docs/background-repeat
1330
1330
  */
1331
1331
  "bg-repeat": [{
1332
- bg: be()
1332
+ bg: pe()
1333
1333
  }],
1334
1334
  /**
1335
1335
  * Background Size
1336
1336
  * @see https://tailwindcss.com/docs/background-size
1337
1337
  */
1338
1338
  "bg-size": [{
1339
- bg: pe()
1339
+ bg: be()
1340
1340
  }],
1341
1341
  /**
1342
1342
  * Background Image
@@ -1698,7 +1698,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
1698
1698
  * @see https://tailwindcss.com/docs/outline-width
1699
1699
  */
1700
1700
  "outline-w": [{
1701
- outline: ["", h, W, V]
1701
+ outline: ["", h, B, V]
1702
1702
  }],
1703
1703
  /**
1704
1704
  * Outline Color
@@ -1803,7 +1803,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
1803
1803
  * @see https://tailwindcss.com/docs/text-shadow
1804
1804
  */
1805
1805
  "text-shadow": [{
1806
- "text-shadow": ["none", p, ee, Z]
1806
+ "text-shadow": ["none", b, ee, Z]
1807
1807
  }],
1808
1808
  /**
1809
1809
  * Text Shadow Color
@@ -2006,14 +2006,14 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
2006
2006
  * @see https://tailwindcss.com/docs/mask-repeat
2007
2007
  */
2008
2008
  "mask-repeat": [{
2009
- mask: be()
2009
+ mask: pe()
2010
2010
  }],
2011
2011
  /**
2012
2012
  * Mask Size
2013
2013
  * @see https://tailwindcss.com/docs/mask-size
2014
2014
  */
2015
2015
  "mask-size": [{
2016
- mask: pe()
2016
+ mask: be()
2017
2017
  }],
2018
2018
  /**
2019
2019
  * Mask Type
@@ -2213,21 +2213,21 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
2213
2213
  * @see https://tailwindcss.com/docs/border-spacing
2214
2214
  */
2215
2215
  "border-spacing": [{
2216
- "border-spacing": b()
2216
+ "border-spacing": p()
2217
2217
  }],
2218
2218
  /**
2219
2219
  * Border Spacing X
2220
2220
  * @see https://tailwindcss.com/docs/border-spacing
2221
2221
  */
2222
2222
  "border-spacing-x": [{
2223
- "border-spacing-x": b()
2223
+ "border-spacing-x": p()
2224
2224
  }],
2225
2225
  /**
2226
2226
  * Border Spacing Y
2227
2227
  * @see https://tailwindcss.com/docs/border-spacing
2228
2228
  */
2229
2229
  "border-spacing-y": [{
2230
- "border-spacing-y": b()
2230
+ "border-spacing-y": p()
2231
2231
  }],
2232
2232
  /**
2233
2233
  * Table Layout
@@ -2519,126 +2519,126 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
2519
2519
  * @see https://tailwindcss.com/docs/scroll-margin
2520
2520
  */
2521
2521
  "scroll-m": [{
2522
- "scroll-m": b()
2522
+ "scroll-m": p()
2523
2523
  }],
2524
2524
  /**
2525
2525
  * Scroll Margin X
2526
2526
  * @see https://tailwindcss.com/docs/scroll-margin
2527
2527
  */
2528
2528
  "scroll-mx": [{
2529
- "scroll-mx": b()
2529
+ "scroll-mx": p()
2530
2530
  }],
2531
2531
  /**
2532
2532
  * Scroll Margin Y
2533
2533
  * @see https://tailwindcss.com/docs/scroll-margin
2534
2534
  */
2535
2535
  "scroll-my": [{
2536
- "scroll-my": b()
2536
+ "scroll-my": p()
2537
2537
  }],
2538
2538
  /**
2539
2539
  * Scroll Margin Start
2540
2540
  * @see https://tailwindcss.com/docs/scroll-margin
2541
2541
  */
2542
2542
  "scroll-ms": [{
2543
- "scroll-ms": b()
2543
+ "scroll-ms": p()
2544
2544
  }],
2545
2545
  /**
2546
2546
  * Scroll Margin End
2547
2547
  * @see https://tailwindcss.com/docs/scroll-margin
2548
2548
  */
2549
2549
  "scroll-me": [{
2550
- "scroll-me": b()
2550
+ "scroll-me": p()
2551
2551
  }],
2552
2552
  /**
2553
2553
  * Scroll Margin Top
2554
2554
  * @see https://tailwindcss.com/docs/scroll-margin
2555
2555
  */
2556
2556
  "scroll-mt": [{
2557
- "scroll-mt": b()
2557
+ "scroll-mt": p()
2558
2558
  }],
2559
2559
  /**
2560
2560
  * Scroll Margin Right
2561
2561
  * @see https://tailwindcss.com/docs/scroll-margin
2562
2562
  */
2563
2563
  "scroll-mr": [{
2564
- "scroll-mr": b()
2564
+ "scroll-mr": p()
2565
2565
  }],
2566
2566
  /**
2567
2567
  * Scroll Margin Bottom
2568
2568
  * @see https://tailwindcss.com/docs/scroll-margin
2569
2569
  */
2570
2570
  "scroll-mb": [{
2571
- "scroll-mb": b()
2571
+ "scroll-mb": p()
2572
2572
  }],
2573
2573
  /**
2574
2574
  * Scroll Margin Left
2575
2575
  * @see https://tailwindcss.com/docs/scroll-margin
2576
2576
  */
2577
2577
  "scroll-ml": [{
2578
- "scroll-ml": b()
2578
+ "scroll-ml": p()
2579
2579
  }],
2580
2580
  /**
2581
2581
  * Scroll Padding
2582
2582
  * @see https://tailwindcss.com/docs/scroll-padding
2583
2583
  */
2584
2584
  "scroll-p": [{
2585
- "scroll-p": b()
2585
+ "scroll-p": p()
2586
2586
  }],
2587
2587
  /**
2588
2588
  * Scroll Padding X
2589
2589
  * @see https://tailwindcss.com/docs/scroll-padding
2590
2590
  */
2591
2591
  "scroll-px": [{
2592
- "scroll-px": b()
2592
+ "scroll-px": p()
2593
2593
  }],
2594
2594
  /**
2595
2595
  * Scroll Padding Y
2596
2596
  * @see https://tailwindcss.com/docs/scroll-padding
2597
2597
  */
2598
2598
  "scroll-py": [{
2599
- "scroll-py": b()
2599
+ "scroll-py": p()
2600
2600
  }],
2601
2601
  /**
2602
2602
  * Scroll Padding Start
2603
2603
  * @see https://tailwindcss.com/docs/scroll-padding
2604
2604
  */
2605
2605
  "scroll-ps": [{
2606
- "scroll-ps": b()
2606
+ "scroll-ps": p()
2607
2607
  }],
2608
2608
  /**
2609
2609
  * Scroll Padding End
2610
2610
  * @see https://tailwindcss.com/docs/scroll-padding
2611
2611
  */
2612
2612
  "scroll-pe": [{
2613
- "scroll-pe": b()
2613
+ "scroll-pe": p()
2614
2614
  }],
2615
2615
  /**
2616
2616
  * Scroll Padding Top
2617
2617
  * @see https://tailwindcss.com/docs/scroll-padding
2618
2618
  */
2619
2619
  "scroll-pt": [{
2620
- "scroll-pt": b()
2620
+ "scroll-pt": p()
2621
2621
  }],
2622
2622
  /**
2623
2623
  * Scroll Padding Right
2624
2624
  * @see https://tailwindcss.com/docs/scroll-padding
2625
2625
  */
2626
2626
  "scroll-pr": [{
2627
- "scroll-pr": b()
2627
+ "scroll-pr": p()
2628
2628
  }],
2629
2629
  /**
2630
2630
  * Scroll Padding Bottom
2631
2631
  * @see https://tailwindcss.com/docs/scroll-padding
2632
2632
  */
2633
2633
  "scroll-pb": [{
2634
- "scroll-pb": b()
2634
+ "scroll-pb": p()
2635
2635
  }],
2636
2636
  /**
2637
2637
  * Scroll Padding Left
2638
2638
  * @see https://tailwindcss.com/docs/scroll-padding
2639
2639
  */
2640
2640
  "scroll-pl": [{
2641
- "scroll-pl": b()
2641
+ "scroll-pl": p()
2642
2642
  }],
2643
2643
  /**
2644
2644
  * Scroll Snap Align
@@ -2723,7 +2723,7 @@ const xe = (e) => typeof e == "boolean" ? `${e}` : e === 0 ? "0" : e, ye = Se, K
2723
2723
  * @see https://tailwindcss.com/docs/stroke-width
2724
2724
  */
2725
2725
  "stroke-w": [{
2726
- stroke: [h, W, V, le]
2726
+ stroke: [h, B, V, le]
2727
2727
  }],
2728
2728
  /**
2729
2729
  * Stroke
@@ -2819,21 +2819,21 @@ const Ut = Ke(
2819
2819
  }
2820
2820
  }
2821
2821
  );
2822
- function Fe(e, r) {
2822
+ function We(e, r) {
2823
2823
  return r === null || r === 0 ? 0 : Math.min(100, e / r * 100);
2824
2824
  }
2825
2825
  function Et(e, r) {
2826
2826
  if (r === null) return "green";
2827
- const t = Fe(e, r);
2827
+ const t = We(e, r);
2828
2828
  return t >= 90 ? "red" : t >= 70 ? "yellow" : "blue";
2829
2829
  }
2830
- const Ft = ({
2830
+ const Wt = ({
2831
2831
  config: e,
2832
2832
  showPercentage: r = !0,
2833
2833
  showRemaining: t = !0,
2834
2834
  labels: o
2835
2835
  }) => {
2836
- const { label: n, used: c, limit: a, color: u } = e, s = Fe(c, a), d = u ?? Et(c, a), x = a !== null ? Math.max(0, a - c) : null, f = a === null;
2836
+ const { label: n, used: c, limit: a, color: u } = e, s = We(c, a), d = u ?? Et(c, a), x = a !== null ? Math.max(0, a - c) : null, f = a === null;
2837
2837
  return /* @__PURE__ */ k("div", { className: "space-y-2", children: [
2838
2838
  /* @__PURE__ */ k("div", { className: "flex items-center justify-between", children: [
2839
2839
  /* @__PURE__ */ g("span", { className: "text-sm font-medium text-gray-700 dark:text-gray-300", children: n }),
@@ -2884,7 +2884,7 @@ const Ft = ({
2884
2884
  trackingLabel: d,
2885
2885
  componentName: x = "UsageDashboard"
2886
2886
  }) => {
2887
- const f = { ...H, ...t }, p = () => {
2887
+ const f = { ...H, ...t }, b = () => {
2888
2888
  s?.({ action: "upgrade_click", trackingLabel: d, componentName: x }), o?.();
2889
2889
  };
2890
2890
  return /* @__PURE__ */ k(
@@ -2903,14 +2903,14 @@ const Ft = ({
2903
2903
  o && /* @__PURE__ */ g(
2904
2904
  "button",
2905
2905
  {
2906
- onClick: p,
2906
+ onClick: b,
2907
2907
  className: "rounded-md bg-blue-600 px-4 py-2 text-sm font-medium text-white transition-colors hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-800",
2908
2908
  children: n
2909
2909
  }
2910
2910
  )
2911
2911
  ] }),
2912
2912
  /* @__PURE__ */ g("div", { className: "space-y-6", children: e.map((y, z) => /* @__PURE__ */ g(
2913
- Ft,
2913
+ Wt,
2914
2914
  {
2915
2915
  config: y,
2916
2916
  showPercentage: a,
@@ -2936,7 +2936,7 @@ const Ft = ({
2936
2936
  unlimitedLabel: "Unlimited",
2937
2937
  currentTierBadge: "Current"
2938
2938
  };
2939
- function Bt(e) {
2939
+ function Dt(e) {
2940
2940
  return e.toLocaleString();
2941
2941
  }
2942
2942
  const Kt = ({
@@ -2944,21 +2944,21 @@ const Kt = ({
2944
2944
  labels: r,
2945
2945
  onTierSelect: t,
2946
2946
  className: o,
2947
- formatNumber: n = Bt,
2947
+ formatNumber: n = Dt,
2948
2948
  onTrack: c,
2949
2949
  trackingLabel: a,
2950
2950
  componentName: u = "TierComparisonTable"
2951
2951
  }) => {
2952
- const s = { ...Le, ...r }, d = (p) => {
2953
- c?.({ action: "tier_select", trackingLabel: a, componentName: u }), t?.(p);
2954
- }, x = (p) => p === null ? s.unlimitedLabel ?? Le.unlimitedLabel : n(p), f = (p) => /* @__PURE__ */ g(
2952
+ const s = { ...Le, ...r }, d = (b) => {
2953
+ c?.({ action: "tier_select", trackingLabel: a, componentName: u }), t?.(b);
2954
+ }, x = (b) => b === null ? s.unlimitedLabel ?? Le.unlimitedLabel : n(b), f = (b) => /* @__PURE__ */ g(
2955
2955
  "span",
2956
2956
  {
2957
2957
  className: T(
2958
2958
  "text-sm",
2959
- p === null ? "font-medium text-green-600 dark:text-green-400" : "text-gray-700 dark:text-gray-300"
2959
+ b === null ? "font-medium text-green-600 dark:text-green-400" : "text-gray-700 dark:text-gray-300"
2960
2960
  ),
2961
- children: x(p)
2961
+ children: x(b)
2962
2962
  }
2963
2963
  );
2964
2964
  return /* @__PURE__ */ k(
@@ -2977,14 +2977,14 @@ const Kt = ({
2977
2977
  /* @__PURE__ */ g("th", { className: "px-6 py-3 text-right text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-400", children: s.dailyHeader }),
2978
2978
  /* @__PURE__ */ g("th", { className: "px-6 py-3 text-right text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-400", children: s.monthlyHeader })
2979
2979
  ] }) }),
2980
- /* @__PURE__ */ g("tbody", { className: "divide-y divide-gray-200 dark:divide-gray-700", children: e.map((p) => /* @__PURE__ */ k(
2980
+ /* @__PURE__ */ g("tbody", { className: "divide-y divide-gray-200 dark:divide-gray-700", children: e.map((b) => /* @__PURE__ */ k(
2981
2981
  "tr",
2982
2982
  {
2983
- onClick: () => d(p.id),
2983
+ onClick: () => d(b.id),
2984
2984
  className: T(
2985
2985
  "transition-colors",
2986
- p.isHighlighted && "bg-blue-50 dark:bg-blue-900/20",
2987
- p.isCurrent && "bg-green-50 dark:bg-green-900/20",
2986
+ b.isHighlighted && "bg-blue-50 dark:bg-blue-900/20",
2987
+ b.isCurrent && "bg-green-50 dark:bg-green-900/20",
2988
2988
  t && "cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-700/50"
2989
2989
  ),
2990
2990
  children: [
@@ -2994,25 +2994,25 @@ const Kt = ({
2994
2994
  {
2995
2995
  className: T(
2996
2996
  "text-sm font-medium",
2997
- p.isCurrent ? "text-green-700 dark:text-green-400" : p.isHighlighted ? "text-blue-700 dark:text-blue-400" : "text-gray-900 dark:text-white"
2997
+ b.isCurrent ? "text-green-700 dark:text-green-400" : b.isHighlighted ? "text-blue-700 dark:text-blue-400" : "text-gray-900 dark:text-white"
2998
2998
  ),
2999
- children: p.name
2999
+ children: b.name
3000
3000
  }
3001
3001
  ),
3002
- p.isCurrent && /* @__PURE__ */ g("span", { className: "inline-flex items-center rounded-full bg-green-100 px-2 py-0.5 text-xs font-medium text-green-700 dark:bg-green-900/50 dark:text-green-400", children: s.currentTierBadge })
3002
+ b.isCurrent && /* @__PURE__ */ g("span", { className: "inline-flex items-center rounded-full bg-green-100 px-2 py-0.5 text-xs font-medium text-green-700 dark:bg-green-900/50 dark:text-green-400", children: s.currentTierBadge })
3003
3003
  ] }) }),
3004
- /* @__PURE__ */ g("td", { className: "whitespace-nowrap px-6 py-4 text-right", children: f(p.hourlyLimit) }),
3005
- /* @__PURE__ */ g("td", { className: "whitespace-nowrap px-6 py-4 text-right", children: f(p.dailyLimit) }),
3006
- /* @__PURE__ */ g("td", { className: "whitespace-nowrap px-6 py-4 text-right", children: f(p.monthlyLimit) })
3004
+ /* @__PURE__ */ g("td", { className: "whitespace-nowrap px-6 py-4 text-right", children: f(b.hourlyLimit) }),
3005
+ /* @__PURE__ */ g("td", { className: "whitespace-nowrap px-6 py-4 text-right", children: f(b.dailyLimit) }),
3006
+ /* @__PURE__ */ g("td", { className: "whitespace-nowrap px-6 py-4 text-right", children: f(b.monthlyLimit) })
3007
3007
  ]
3008
3008
  },
3009
- p.id
3009
+ b.id
3010
3010
  )) })
3011
3011
  ] }) })
3012
3012
  ]
3013
3013
  }
3014
3014
  );
3015
- }, Dt = {
3015
+ }, Ft = {
3016
3016
  title: "Usage History",
3017
3017
  requestsLabel: "Requests",
3018
3018
  limitLabel: "Limit",
@@ -3076,11 +3076,11 @@ const $t = ({
3076
3076
  limitLineColor: u = "#ef4444",
3077
3077
  showLimitLine: s = !0
3078
3078
  }) => {
3079
- const d = { ...Dt, ...t }, x = ne(() => e.map((y) => ({
3079
+ const d = { ...Ft, ...t }, x = ne(() => e.map((y) => ({
3080
3080
  name: c(y.periodStart, r),
3081
3081
  requests: y.requestCount,
3082
3082
  limit: y.limit
3083
- })), [e, c, r]), f = ne(() => e.find((z) => z.limit !== null)?.limit ?? null, [e]), p = ne(() => {
3083
+ })), [e, c, r]), f = ne(() => e.find((z) => z.limit !== null)?.limit ?? null, [e]), b = ne(() => {
3084
3084
  const y = Math.max(...e.map((C) => C.requestCount), 0);
3085
3085
  return Math.max(y, f ?? 0) * 1.1;
3086
3086
  }, [e, f]);
@@ -3103,8 +3103,8 @@ const $t = ({
3103
3103
  ),
3104
3104
  children: [
3105
3105
  d.title && /* @__PURE__ */ g("h3", { className: "mb-4 text-lg font-semibold text-gray-900 dark:text-white", children: d.title }),
3106
- /* @__PURE__ */ g(Be, { width: "100%", height: o, children: /* @__PURE__ */ k(
3107
- De,
3106
+ /* @__PURE__ */ g(De, { width: "100%", height: o, children: /* @__PURE__ */ k(
3107
+ Fe,
3108
3108
  {
3109
3109
  data: x,
3110
3110
  margin: { top: 20, right: 30, left: 20, bottom: 5 },
@@ -3125,9 +3125,9 @@ const $t = ({
3125
3125
  }
3126
3126
  ),
3127
3127
  /* @__PURE__ */ g(
3128
- We,
3128
+ Be,
3129
3129
  {
3130
- domain: [0, p],
3130
+ domain: [0, b],
3131
3131
  tick: { fontSize: 12 },
3132
3132
  className: "text-gray-600 dark:text-gray-400",
3133
3133
  tickFormatter: (y) => y.toLocaleString()
@@ -3142,9 +3142,12 @@ const $t = ({
3142
3142
  /* @__PURE__ */ g(
3143
3143
  qe,
3144
3144
  {
3145
+ type: "monotone",
3145
3146
  dataKey: "requests",
3146
- fill: a,
3147
- radius: [4, 4, 0, 0],
3147
+ stroke: a,
3148
+ strokeWidth: 2,
3149
+ dot: { fill: a, strokeWidth: 2, r: 4 },
3150
+ activeDot: { r: 6, strokeWidth: 2 },
3148
3151
  name: d.requestsLabel
3149
3152
  }
3150
3153
  ),
@@ -3171,7 +3174,7 @@ const $t = ({
3171
3174
  /* @__PURE__ */ g(
3172
3175
  "div",
3173
3176
  {
3174
- className: "h-3 w-3 rounded",
3177
+ className: "h-0.5 w-4 rounded",
3175
3178
  style: { backgroundColor: a }
3176
3179
  }
3177
3180
  ),
package/dist/index.umd.js CHANGED
@@ -1 +1 @@
1
- (function(S,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("react/jsx-runtime"),require("react"),require("recharts")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","recharts"],s):(S=typeof globalThis<"u"?globalThis:S||self,s(S.RatelimitComponents={},S.ReactJSXRuntime,S.React,S.Recharts))})(this,(function(S,s,oe,I){"use strict";function me(e){var t,r,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var n=e.length;for(t=0;t<n;t++)e[t]&&(r=me(e[t]))&&(o&&(o+=" "),o+=r)}else for(r in e)e[r]&&(o&&(o+=" "),o+=r);return o}function ue(){for(var e,t,r=0,o="",n=arguments.length;r<n;r++)(e=arguments[r])&&(t=me(e))&&(o&&(o+=" "),o+=t);return o}const ge=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,be=ue,_e=(e,t)=>r=>{var o;if(t?.variants==null)return be(e,r?.class,r?.className);const{variants:n,defaultVariants:d}=t,a=Object.keys(n).map(m=>{const x=r?.[m],h=d?.[m];if(x===null)return null;const p=ge(x)||ge(h);return n[m][p]}),g=r&&Object.entries(r).reduce((m,x)=>{let[h,p]=x;return p===void 0||(m[h]=p),m},{}),c=t==null||(o=t.compoundVariants)===null||o===void 0?void 0:o.reduce((m,x)=>{let{class:h,className:p,...y}=x;return Object.entries(y).every(L=>{let[C,v]=L;return Array.isArray(v)?v.includes({...d,...g}[C]):{...d,...g}[C]===v})?[...m,h,p]:m},[]);return be(e,a,c,r?.class,r?.className)},$e=(e,t)=>{const r=new Array(e.length+t.length);for(let o=0;o<e.length;o++)r[o]=e[o];for(let o=0;o<t.length;o++)r[e.length+o]=t[o];return r},qe=(e,t)=>({classGroupId:e,validator:t}),pe=(e=new Map,t=null,r)=>({nextPart:e,validators:t,classGroupId:r}),X="-",fe=[],We="arbitrary..",He=e=>{const t=Xe(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:a=>{if(a.startsWith("[")&&a.endsWith("]"))return Ye(a);const g=a.split(X),c=g[0]===""&&g.length>1?1:0;return he(g,c,t)},getConflictingClassGroupIds:(a,g)=>{if(g){const c=o[a],m=r[a];return c?m?$e(m,c):c:m||fe}return r[a]||fe}}},he=(e,t,r)=>{if(e.length-t===0)return r.classGroupId;const n=e[t],d=r.nextPart.get(n);if(d){const m=he(e,t+1,d);if(m)return m}const a=r.validators;if(a===null)return;const g=t===0?e.join(X):e.slice(t).join(X),c=a.length;for(let m=0;m<c;m++){const x=a[m];if(x.validator(g))return x.classGroupId}},Ye=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),r=t.indexOf(":"),o=t.slice(0,r);return o?We+o:void 0})(),Xe=e=>{const{theme:t,classGroups:r}=e;return Ke(r,t)},Ke=(e,t)=>{const r=pe();for(const o in e){const n=e[o];se(n,r,o,t)}return r},se=(e,t,r,o)=>{const n=e.length;for(let d=0;d<n;d++){const a=e[d];Je(a,t,r,o)}},Je=(e,t,r,o)=>{if(typeof e=="string"){Qe(e,t,r);return}if(typeof e=="function"){Ze(e,t,r,o);return}Re(e,t,r,o)},Qe=(e,t,r)=>{const o=e===""?t:xe(t,e);o.classGroupId=r},Ze=(e,t,r,o)=>{if(er(e)){se(e(o),t,r,o);return}t.validators===null&&(t.validators=[]),t.validators.push(qe(r,e))},Re=(e,t,r,o)=>{const n=Object.entries(e),d=n.length;for(let a=0;a<d;a++){const[g,c]=n[a];se(c,xe(t,g),r,o)}},xe=(e,t)=>{let r=e;const o=t.split(X),n=o.length;for(let d=0;d<n;d++){const a=o[d];let g=r.nextPart.get(a);g||(g=pe(),r.nextPart.set(a,g)),r=g}return r},er=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,rr=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,r=Object.create(null),o=Object.create(null);const n=(d,a)=>{r[d]=a,t++,t>e&&(t=0,o=r,r=Object.create(null))};return{get(d){let a=r[d];if(a!==void 0)return a;if((a=o[d])!==void 0)return n(d,a),a},set(d,a){d in r?r[d]=a:n(d,a)}}},ae="!",ye=":",tr=[],ke=(e,t,r,o,n)=>({modifiers:e,hasImportantModifier:t,baseClassName:r,maybePostfixModifierPosition:o,isExternal:n}),or=e=>{const{prefix:t,experimentalParseClassName:r}=e;let o=n=>{const d=[];let a=0,g=0,c=0,m;const x=n.length;for(let C=0;C<x;C++){const v=n[C];if(a===0&&g===0){if(v===ye){d.push(n.slice(c,C)),c=C+1;continue}if(v==="/"){m=C;continue}}v==="["?a++:v==="]"?a--:v==="("?g++:v===")"&&g--}const h=d.length===0?n:n.slice(c);let p=h,y=!1;h.endsWith(ae)?(p=h.slice(0,-1),y=!0):h.startsWith(ae)&&(p=h.slice(1),y=!0);const L=m&&m>c?m-c:void 0;return ke(d,y,p,L)};if(t){const n=t+ye,d=o;o=a=>a.startsWith(n)?d(a.slice(n.length)):ke(tr,!1,a,void 0,!0)}if(r){const n=o;o=d=>r({className:d,parseClassName:n})}return o},sr=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((r,o)=>{t.set(r,1e6+o)}),r=>{const o=[];let n=[];for(let d=0;d<r.length;d++){const a=r[d],g=a[0]==="[",c=t.has(a);g||c?(n.length>0&&(n.sort(),o.push(...n),n=[]),o.push(a)):n.push(a)}return n.length>0&&(n.sort(),o.push(...n)),o}},ar=e=>({cache:rr(e.cacheSize),parseClassName:or(e),sortModifiers:sr(e),...He(e)}),nr=/\s+/,lr=(e,t)=>{const{parseClassName:r,getClassGroupId:o,getConflictingClassGroupIds:n,sortModifiers:d}=t,a=[],g=e.trim().split(nr);let c="";for(let m=g.length-1;m>=0;m-=1){const x=g[m],{isExternal:h,modifiers:p,hasImportantModifier:y,baseClassName:L,maybePostfixModifierPosition:C}=r(x);if(h){c=x+(c.length>0?" "+c:c);continue}let v=!!C,V=o(v?L.substring(0,C):L);if(!V){if(!v){c=x+(c.length>0?" "+c:c);continue}if(V=o(L),!V){c=x+(c.length>0?" "+c:c);continue}v=!1}const Q=p.length===0?"":p.length===1?p[0]:d(p).join(":"),H=y?Q+ae:Q,B=H+V;if(a.indexOf(B)>-1)continue;a.push(B);const _=n(V,v);for(let O=0;O<_.length;++O){const Y=_[O];a.push(H+Y)}c=x+(c.length>0?" "+c:c)}return c},ir=(...e)=>{let t=0,r,o,n="";for(;t<e.length;)(r=e[t++])&&(o=we(r))&&(n&&(n+=" "),n+=o);return n},we=e=>{if(typeof e=="string")return e;let t,r="";for(let o=0;o<e.length;o++)e[o]&&(t=we(e[o]))&&(r&&(r+=" "),r+=t);return r},cr=(e,...t)=>{let r,o,n,d;const a=c=>{const m=t.reduce((x,h)=>h(x),e());return r=ar(m),o=r.cache.get,n=r.cache.set,d=g,g(c)},g=c=>{const m=o(c);if(m)return m;const x=lr(c,r);return n(c,x),x};return d=a,(...c)=>d(ir(...c))},dr=[],k=e=>{const t=r=>r[e]||dr;return t.isThemeGetter=!0,t},ve=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Ce=/^\((?:(\w[\w-]*):)?(.+)\)$/i,mr=/^\d+\/\d+$/,ur=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,gr=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,br=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,pr=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,fr=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,D=e=>mr.test(e),f=e=>!!e&&!Number.isNaN(Number(e)),j=e=>!!e&&Number.isInteger(Number(e)),ne=e=>e.endsWith("%")&&f(e.slice(0,-1)),A=e=>ur.test(e),hr=()=>!0,xr=e=>gr.test(e)&&!br.test(e),Ne=()=>!1,yr=e=>pr.test(e),kr=e=>fr.test(e),wr=e=>!l(e)&&!i(e),vr=e=>E(e,Me,Ne),l=e=>ve.test(e),G=e=>E(e,Te,xr),le=e=>E(e,Sr,f),Le=e=>E(e,Se,Ne),Cr=e=>E(e,Ae,kr),K=e=>E(e,Pe,yr),i=e=>Ce.test(e),q=e=>F(e,Te),Nr=e=>F(e,Ar),ze=e=>F(e,Se),Lr=e=>F(e,Me),zr=e=>F(e,Ae),J=e=>F(e,Pe,!0),E=(e,t,r)=>{const o=ve.exec(e);return o?o[1]?t(o[1]):r(o[2]):!1},F=(e,t,r=!1)=>{const o=Ce.exec(e);return o?o[1]?t(o[1]):r:!1},Se=e=>e==="position"||e==="percentage",Ae=e=>e==="image"||e==="url",Me=e=>e==="length"||e==="size"||e==="bg-size",Te=e=>e==="length",Sr=e=>e==="number",Ar=e=>e==="family-name",Pe=e=>e==="shadow",Mr=cr(()=>{const e=k("color"),t=k("font"),r=k("text"),o=k("font-weight"),n=k("tracking"),d=k("leading"),a=k("breakpoint"),g=k("container"),c=k("spacing"),m=k("radius"),x=k("shadow"),h=k("inset-shadow"),p=k("text-shadow"),y=k("drop-shadow"),L=k("blur"),C=k("perspective"),v=k("aspect"),V=k("ease"),Q=k("animate"),H=()=>["auto","avoid","all","avoid-page","page","left","right","column"],B=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],_=()=>[...B(),i,l],O=()=>["auto","hidden","clip","visible","scroll"],Y=()=>["auto","contain","none"],b=()=>[i,l,c],T=()=>[D,"full","auto",...b()],Ge=()=>[j,"none","subgrid",i,l],Ve=()=>["auto",{span:["full",j,i,l]},j,i,l],Z=()=>[j,"auto",i,l],Oe=()=>["auto","min","max","fr",i,l],ie=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],$=()=>["start","end","center","stretch","center-safe","end-safe"],P=()=>["auto",...b()],U=()=>[D,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...b()],u=()=>[e,i,l],Ue=()=>[...B(),ze,Le,{position:[i,l]}],De=()=>["no-repeat",{repeat:["","x","y","space","round"]}],Ee=()=>["auto","cover","contain",Lr,vr,{size:[i,l]}],ce=()=>[ne,q,G],N=()=>["","none","full",m,i,l],z=()=>["",f,q,G],R=()=>["solid","dashed","dotted","double"],Fe=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],w=()=>[f,ne,ze,Le],Be=()=>["","none",L,i,l],ee=()=>["none",f,i,l],re=()=>["none",f,i,l],de=()=>[f,i,l],te=()=>[D,"full",...b()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[A],breakpoint:[A],color:[hr],container:[A],"drop-shadow":[A],ease:["in","out","in-out"],font:[wr],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[A],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[A],shadow:[A],spacing:["px",f],text:[A],"text-shadow":[A],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",D,l,i,v]}],container:["container"],columns:[{columns:[f,l,i,g]}],"break-after":[{"break-after":H()}],"break-before":[{"break-before":H()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:_()}],overflow:[{overflow:O()}],"overflow-x":[{"overflow-x":O()}],"overflow-y":[{"overflow-y":O()}],overscroll:[{overscroll:Y()}],"overscroll-x":[{"overscroll-x":Y()}],"overscroll-y":[{"overscroll-y":Y()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{start:T()}],end:[{end:T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:["visible","invisible","collapse"],z:[{z:[j,"auto",i,l]}],basis:[{basis:[D,"full","auto",g,...b()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[f,D,"auto","initial","none",l]}],grow:[{grow:["",f,i,l]}],shrink:[{shrink:["",f,i,l]}],order:[{order:[j,"first","last","none",i,l]}],"grid-cols":[{"grid-cols":Ge()}],"col-start-end":[{col:Ve()}],"col-start":[{"col-start":Z()}],"col-end":[{"col-end":Z()}],"grid-rows":[{"grid-rows":Ge()}],"row-start-end":[{row:Ve()}],"row-start":[{"row-start":Z()}],"row-end":[{"row-end":Z()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":Oe()}],"auto-rows":[{"auto-rows":Oe()}],gap:[{gap:b()}],"gap-x":[{"gap-x":b()}],"gap-y":[{"gap-y":b()}],"justify-content":[{justify:[...ie(),"normal"]}],"justify-items":[{"justify-items":[...$(),"normal"]}],"justify-self":[{"justify-self":["auto",...$()]}],"align-content":[{content:["normal",...ie()]}],"align-items":[{items:[...$(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...$(),{baseline:["","last"]}]}],"place-content":[{"place-content":ie()}],"place-items":[{"place-items":[...$(),"baseline"]}],"place-self":[{"place-self":["auto",...$()]}],p:[{p:b()}],px:[{px:b()}],py:[{py:b()}],ps:[{ps:b()}],pe:[{pe:b()}],pt:[{pt:b()}],pr:[{pr:b()}],pb:[{pb:b()}],pl:[{pl:b()}],m:[{m:P()}],mx:[{mx:P()}],my:[{my:P()}],ms:[{ms:P()}],me:[{me:P()}],mt:[{mt:P()}],mr:[{mr:P()}],mb:[{mb:P()}],ml:[{ml:P()}],"space-x":[{"space-x":b()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":b()}],"space-y-reverse":["space-y-reverse"],size:[{size:U()}],w:[{w:[g,"screen",...U()]}],"min-w":[{"min-w":[g,"screen","none",...U()]}],"max-w":[{"max-w":[g,"screen","none","prose",{screen:[a]},...U()]}],h:[{h:["screen","lh",...U()]}],"min-h":[{"min-h":["screen","lh","none",...U()]}],"max-h":[{"max-h":["screen","lh",...U()]}],"font-size":[{text:["base",r,q,G]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[o,i,le]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",ne,l]}],"font-family":[{font:[Nr,l,t]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[n,i,l]}],"line-clamp":[{"line-clamp":[f,"none",i,le]}],leading:[{leading:[d,...b()]}],"list-image":[{"list-image":["none",i,l]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",i,l]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:u()}],"text-color":[{text:u()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...R(),"wavy"]}],"text-decoration-thickness":[{decoration:[f,"from-font","auto",i,G]}],"text-decoration-color":[{decoration:u()}],"underline-offset":[{"underline-offset":[f,"auto",i,l]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:b()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",i,l]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",i,l]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:Ue()}],"bg-repeat":[{bg:De()}],"bg-size":[{bg:Ee()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},j,i,l],radial:["",i,l],conic:[j,i,l]},zr,Cr]}],"bg-color":[{bg:u()}],"gradient-from-pos":[{from:ce()}],"gradient-via-pos":[{via:ce()}],"gradient-to-pos":[{to:ce()}],"gradient-from":[{from:u()}],"gradient-via":[{via:u()}],"gradient-to":[{to:u()}],rounded:[{rounded:N()}],"rounded-s":[{"rounded-s":N()}],"rounded-e":[{"rounded-e":N()}],"rounded-t":[{"rounded-t":N()}],"rounded-r":[{"rounded-r":N()}],"rounded-b":[{"rounded-b":N()}],"rounded-l":[{"rounded-l":N()}],"rounded-ss":[{"rounded-ss":N()}],"rounded-se":[{"rounded-se":N()}],"rounded-ee":[{"rounded-ee":N()}],"rounded-es":[{"rounded-es":N()}],"rounded-tl":[{"rounded-tl":N()}],"rounded-tr":[{"rounded-tr":N()}],"rounded-br":[{"rounded-br":N()}],"rounded-bl":[{"rounded-bl":N()}],"border-w":[{border:z()}],"border-w-x":[{"border-x":z()}],"border-w-y":[{"border-y":z()}],"border-w-s":[{"border-s":z()}],"border-w-e":[{"border-e":z()}],"border-w-t":[{"border-t":z()}],"border-w-r":[{"border-r":z()}],"border-w-b":[{"border-b":z()}],"border-w-l":[{"border-l":z()}],"divide-x":[{"divide-x":z()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":z()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...R(),"hidden","none"]}],"divide-style":[{divide:[...R(),"hidden","none"]}],"border-color":[{border:u()}],"border-color-x":[{"border-x":u()}],"border-color-y":[{"border-y":u()}],"border-color-s":[{"border-s":u()}],"border-color-e":[{"border-e":u()}],"border-color-t":[{"border-t":u()}],"border-color-r":[{"border-r":u()}],"border-color-b":[{"border-b":u()}],"border-color-l":[{"border-l":u()}],"divide-color":[{divide:u()}],"outline-style":[{outline:[...R(),"none","hidden"]}],"outline-offset":[{"outline-offset":[f,i,l]}],"outline-w":[{outline:["",f,q,G]}],"outline-color":[{outline:u()}],shadow:[{shadow:["","none",x,J,K]}],"shadow-color":[{shadow:u()}],"inset-shadow":[{"inset-shadow":["none",h,J,K]}],"inset-shadow-color":[{"inset-shadow":u()}],"ring-w":[{ring:z()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:u()}],"ring-offset-w":[{"ring-offset":[f,G]}],"ring-offset-color":[{"ring-offset":u()}],"inset-ring-w":[{"inset-ring":z()}],"inset-ring-color":[{"inset-ring":u()}],"text-shadow":[{"text-shadow":["none",p,J,K]}],"text-shadow-color":[{"text-shadow":u()}],opacity:[{opacity:[f,i,l]}],"mix-blend":[{"mix-blend":[...Fe(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":Fe()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[f]}],"mask-image-linear-from-pos":[{"mask-linear-from":w()}],"mask-image-linear-to-pos":[{"mask-linear-to":w()}],"mask-image-linear-from-color":[{"mask-linear-from":u()}],"mask-image-linear-to-color":[{"mask-linear-to":u()}],"mask-image-t-from-pos":[{"mask-t-from":w()}],"mask-image-t-to-pos":[{"mask-t-to":w()}],"mask-image-t-from-color":[{"mask-t-from":u()}],"mask-image-t-to-color":[{"mask-t-to":u()}],"mask-image-r-from-pos":[{"mask-r-from":w()}],"mask-image-r-to-pos":[{"mask-r-to":w()}],"mask-image-r-from-color":[{"mask-r-from":u()}],"mask-image-r-to-color":[{"mask-r-to":u()}],"mask-image-b-from-pos":[{"mask-b-from":w()}],"mask-image-b-to-pos":[{"mask-b-to":w()}],"mask-image-b-from-color":[{"mask-b-from":u()}],"mask-image-b-to-color":[{"mask-b-to":u()}],"mask-image-l-from-pos":[{"mask-l-from":w()}],"mask-image-l-to-pos":[{"mask-l-to":w()}],"mask-image-l-from-color":[{"mask-l-from":u()}],"mask-image-l-to-color":[{"mask-l-to":u()}],"mask-image-x-from-pos":[{"mask-x-from":w()}],"mask-image-x-to-pos":[{"mask-x-to":w()}],"mask-image-x-from-color":[{"mask-x-from":u()}],"mask-image-x-to-color":[{"mask-x-to":u()}],"mask-image-y-from-pos":[{"mask-y-from":w()}],"mask-image-y-to-pos":[{"mask-y-to":w()}],"mask-image-y-from-color":[{"mask-y-from":u()}],"mask-image-y-to-color":[{"mask-y-to":u()}],"mask-image-radial":[{"mask-radial":[i,l]}],"mask-image-radial-from-pos":[{"mask-radial-from":w()}],"mask-image-radial-to-pos":[{"mask-radial-to":w()}],"mask-image-radial-from-color":[{"mask-radial-from":u()}],"mask-image-radial-to-color":[{"mask-radial-to":u()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":B()}],"mask-image-conic-pos":[{"mask-conic":[f]}],"mask-image-conic-from-pos":[{"mask-conic-from":w()}],"mask-image-conic-to-pos":[{"mask-conic-to":w()}],"mask-image-conic-from-color":[{"mask-conic-from":u()}],"mask-image-conic-to-color":[{"mask-conic-to":u()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:Ue()}],"mask-repeat":[{mask:De()}],"mask-size":[{mask:Ee()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",i,l]}],filter:[{filter:["","none",i,l]}],blur:[{blur:Be()}],brightness:[{brightness:[f,i,l]}],contrast:[{contrast:[f,i,l]}],"drop-shadow":[{"drop-shadow":["","none",y,J,K]}],"drop-shadow-color":[{"drop-shadow":u()}],grayscale:[{grayscale:["",f,i,l]}],"hue-rotate":[{"hue-rotate":[f,i,l]}],invert:[{invert:["",f,i,l]}],saturate:[{saturate:[f,i,l]}],sepia:[{sepia:["",f,i,l]}],"backdrop-filter":[{"backdrop-filter":["","none",i,l]}],"backdrop-blur":[{"backdrop-blur":Be()}],"backdrop-brightness":[{"backdrop-brightness":[f,i,l]}],"backdrop-contrast":[{"backdrop-contrast":[f,i,l]}],"backdrop-grayscale":[{"backdrop-grayscale":["",f,i,l]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[f,i,l]}],"backdrop-invert":[{"backdrop-invert":["",f,i,l]}],"backdrop-opacity":[{"backdrop-opacity":[f,i,l]}],"backdrop-saturate":[{"backdrop-saturate":[f,i,l]}],"backdrop-sepia":[{"backdrop-sepia":["",f,i,l]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":b()}],"border-spacing-x":[{"border-spacing-x":b()}],"border-spacing-y":[{"border-spacing-y":b()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",i,l]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[f,"initial",i,l]}],ease:[{ease:["linear","initial",V,i,l]}],delay:[{delay:[f,i,l]}],animate:[{animate:["none",Q,i,l]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[C,i,l]}],"perspective-origin":[{"perspective-origin":_()}],rotate:[{rotate:ee()}],"rotate-x":[{"rotate-x":ee()}],"rotate-y":[{"rotate-y":ee()}],"rotate-z":[{"rotate-z":ee()}],scale:[{scale:re()}],"scale-x":[{"scale-x":re()}],"scale-y":[{"scale-y":re()}],"scale-z":[{"scale-z":re()}],"scale-3d":["scale-3d"],skew:[{skew:de()}],"skew-x":[{"skew-x":de()}],"skew-y":[{"skew-y":de()}],transform:[{transform:[i,l,"","none","gpu","cpu"]}],"transform-origin":[{origin:_()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:te()}],"translate-x":[{"translate-x":te()}],"translate-y":[{"translate-y":te()}],"translate-z":[{"translate-z":te()}],"translate-none":["translate-none"],accent:[{accent:u()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:u()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",i,l]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":b()}],"scroll-mx":[{"scroll-mx":b()}],"scroll-my":[{"scroll-my":b()}],"scroll-ms":[{"scroll-ms":b()}],"scroll-me":[{"scroll-me":b()}],"scroll-mt":[{"scroll-mt":b()}],"scroll-mr":[{"scroll-mr":b()}],"scroll-mb":[{"scroll-mb":b()}],"scroll-ml":[{"scroll-ml":b()}],"scroll-p":[{"scroll-p":b()}],"scroll-px":[{"scroll-px":b()}],"scroll-py":[{"scroll-py":b()}],"scroll-ps":[{"scroll-ps":b()}],"scroll-pe":[{"scroll-pe":b()}],"scroll-pt":[{"scroll-pt":b()}],"scroll-pr":[{"scroll-pr":b()}],"scroll-pb":[{"scroll-pb":b()}],"scroll-pl":[{"scroll-pl":b()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",i,l]}],fill:[{fill:["none",...u()]}],"stroke-w":[{stroke:[f,q,G,le]}],stroke:[{stroke:["none",...u()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}});function M(...e){return Mr(ue(e))}const Tr=_e("h-full rounded-full transition-all duration-300",{variants:{color:{blue:"bg-blue-500",green:"bg-green-500",yellow:"bg-yellow-500",red:"bg-red-500",purple:"bg-purple-500"}},defaultVariants:{color:"blue"}});function Ie(e,t){return t===null||t===0?0:Math.min(100,e/t*100)}function Pr(e,t){if(t===null)return"green";const r=Ie(e,t);return r>=90?"red":r>=70?"yellow":"blue"}const Ir=({config:e,showPercentage:t=!0,showRemaining:r=!0,labels:o})=>{const{label:n,used:d,limit:a,color:g}=e,c=Ie(d,a),m=g??Pr(d,a),x=a!==null?Math.max(0,a-d):null,h=a===null;return s.jsxs("div",{className:"space-y-2",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx("span",{className:"text-sm font-medium text-gray-700 dark:text-gray-300",children:n}),s.jsxs("span",{className:"text-sm text-gray-500 dark:text-gray-400",children:[d.toLocaleString()," ",o.usedLabel,!h&&` / ${a.toLocaleString()} ${o.limitLabel}`,h&&` (${o.unlimitedLabel})`]})]}),!h&&s.jsxs("div",{className:"relative",children:[s.jsx("div",{className:"h-3 w-full rounded-full bg-gray-200 dark:bg-gray-700",children:s.jsx("div",{className:M(Tr({color:m})),style:{width:`${c}%`}})}),t&&s.jsxs("span",{className:"absolute right-0 top-4 text-xs text-gray-500 dark:text-gray-400",children:[c.toFixed(0),"%"]})]}),h&&s.jsx("div",{className:"h-3 w-full rounded-full bg-green-100 dark:bg-green-900/30",children:s.jsx("div",{className:"h-full w-full rounded-full bg-green-500/20"})}),r&&x!==null&&s.jsxs("p",{className:"text-xs text-gray-500 dark:text-gray-400",children:[x.toLocaleString()," ",o.remainingLabel]})]})},W={title:"Usage",usedLabel:"used",limitLabel:"limit",unlimitedLabel:"Unlimited",remainingLabel:"remaining"},jr=({usageBars:e,currentTierName:t,labels:r,onUpgradeClick:o,upgradeButtonLabel:n="Upgrade",className:d,showPercentage:a=!0,showRemaining:g=!0,onTrack:c,trackingLabel:m,componentName:x="UsageDashboard"})=>{const h={...W,...r},p=()=>{c?.({action:"upgrade_click",trackingLabel:m,componentName:x}),o?.()};return s.jsxs("div",{className:M("rounded-lg border border-gray-200 bg-white p-6 dark:border-gray-700 dark:bg-gray-800",d),children:[s.jsxs("div",{className:"mb-6 flex items-center justify-between",children:[s.jsxs("div",{children:[s.jsx("h3",{className:"text-lg font-semibold text-gray-900 dark:text-white",children:h.title}),t&&s.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400",children:t})]}),o&&s.jsx("button",{onClick:p,className:"rounded-md bg-blue-600 px-4 py-2 text-sm font-medium text-white transition-colors hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-800",children:n})]}),s.jsx("div",{className:"space-y-6",children:e.map((y,L)=>s.jsx(Ir,{config:y,showPercentage:a,showRemaining:g,labels:{usedLabel:h.usedLabel??W.usedLabel,limitLabel:h.limitLabel??W.limitLabel,unlimitedLabel:h.unlimitedLabel??W.unlimitedLabel,remainingLabel:h.remainingLabel??W.remainingLabel}},`${y.label}-${L}`))})]})},je={title:"Plan Comparison",tierHeader:"Plan",hourlyHeader:"Hourly",dailyHeader:"Daily",monthlyHeader:"Monthly",unlimitedLabel:"Unlimited",currentTierBadge:"Current"};function Gr(e){return e.toLocaleString()}const Vr=({tiers:e,labels:t,onTierSelect:r,className:o,formatNumber:n=Gr,onTrack:d,trackingLabel:a,componentName:g="TierComparisonTable"})=>{const c={...je,...t},m=p=>{d?.({action:"tier_select",trackingLabel:a,componentName:g}),r?.(p)},x=p=>p===null?c.unlimitedLabel??je.unlimitedLabel:n(p),h=p=>{const y=p===null;return s.jsx("span",{className:M("text-sm",y?"font-medium text-green-600 dark:text-green-400":"text-gray-700 dark:text-gray-300"),children:x(p)})};return s.jsxs("div",{className:M("rounded-lg border border-gray-200 bg-white dark:border-gray-700 dark:bg-gray-800",o),children:[c.title&&s.jsx("div",{className:"border-b border-gray-200 px-6 py-4 dark:border-gray-700",children:s.jsx("h3",{className:"text-lg font-semibold text-gray-900 dark:text-white",children:c.title})}),s.jsx("div",{className:"overflow-x-auto",children:s.jsxs("table",{className:"w-full",children:[s.jsx("thead",{children:s.jsxs("tr",{className:"border-b border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-900/50",children:[s.jsx("th",{className:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-400",children:c.tierHeader}),s.jsx("th",{className:"px-6 py-3 text-right text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-400",children:c.hourlyHeader}),s.jsx("th",{className:"px-6 py-3 text-right text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-400",children:c.dailyHeader}),s.jsx("th",{className:"px-6 py-3 text-right text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-400",children:c.monthlyHeader})]})}),s.jsx("tbody",{className:"divide-y divide-gray-200 dark:divide-gray-700",children:e.map(p=>s.jsxs("tr",{onClick:()=>m(p.id),className:M("transition-colors",p.isHighlighted&&"bg-blue-50 dark:bg-blue-900/20",p.isCurrent&&"bg-green-50 dark:bg-green-900/20",r&&"cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-700/50"),children:[s.jsx("td",{className:"whitespace-nowrap px-6 py-4",children:s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("span",{className:M("text-sm font-medium",p.isCurrent?"text-green-700 dark:text-green-400":p.isHighlighted?"text-blue-700 dark:text-blue-400":"text-gray-900 dark:text-white"),children:p.name}),p.isCurrent&&s.jsx("span",{className:"inline-flex items-center rounded-full bg-green-100 px-2 py-0.5 text-xs font-medium text-green-700 dark:bg-green-900/50 dark:text-green-400",children:c.currentTierBadge})]})}),s.jsx("td",{className:"whitespace-nowrap px-6 py-4 text-right",children:h(p.hourlyLimit)}),s.jsx("td",{className:"whitespace-nowrap px-6 py-4 text-right",children:h(p.dailyLimit)}),s.jsx("td",{className:"whitespace-nowrap px-6 py-4 text-right",children:h(p.monthlyLimit)})]},p.id))})]})})]})},Or={title:"Usage History",requestsLabel:"Requests",limitLabel:"Limit",periodLabel:"Period",noDataLabel:"No usage data available"};function Ur(e,t){const r=new Date(e);switch(t){case"hour":return r.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit"});case"day":return r.toLocaleDateString(void 0,{month:"short",day:"numeric"});case"month":return r.toLocaleDateString(void 0,{month:"short",year:"numeric"});default:return e}}const Dr=({active:e,payload:t,label:r,labels:o,limit:n})=>{if(!e||!t||t.length===0)return null;const d=t[0].value;return s.jsxs("div",{className:"rounded-lg border border-gray-200 bg-white p-3 shadow-lg dark:border-gray-700 dark:bg-gray-800",children:[s.jsx("p",{className:"mb-1 text-sm font-medium text-gray-900 dark:text-white",children:r}),s.jsxs("p",{className:"text-sm text-gray-600 dark:text-gray-400",children:[o.requestsLabel,":"," ",s.jsx("span",{className:"font-medium",children:d.toLocaleString()})]}),n!==null&&s.jsxs("p",{className:"text-sm text-gray-600 dark:text-gray-400",children:[o.limitLabel,":"," ",s.jsx("span",{className:"font-medium",children:n.toLocaleString()})]})]})},Er=({entries:e,periodType:t,labels:r,height:o=300,className:n,formatDate:d=Ur,barColor:a="#3b82f6",limitLineColor:g="#ef4444",showLimitLine:c=!0})=>{const m={...Or,...r},x=oe.useMemo(()=>e.map(y=>({name:d(y.periodStart,t),requests:y.requestCount,limit:y.limit})),[e,d,t]),h=oe.useMemo(()=>e.find(L=>L.limit!==null)?.limit??null,[e]),p=oe.useMemo(()=>{const y=Math.max(...e.map(C=>C.requestCount),0);return Math.max(y,h??0)*1.1},[e,h]);return e.length===0?s.jsx("div",{className:M("flex items-center justify-center rounded-lg border border-gray-200 bg-white p-6 dark:border-gray-700 dark:bg-gray-800",n),style:{height:o},children:s.jsx("p",{className:"text-gray-500 dark:text-gray-400",children:m.noDataLabel})}):s.jsxs("div",{className:M("rounded-lg border border-gray-200 bg-white p-6 dark:border-gray-700 dark:bg-gray-800",n),children:[m.title&&s.jsx("h3",{className:"mb-4 text-lg font-semibold text-gray-900 dark:text-white",children:m.title}),s.jsx(I.ResponsiveContainer,{width:"100%",height:o,children:s.jsxs(I.BarChart,{data:x,margin:{top:20,right:30,left:20,bottom:5},children:[s.jsx(I.CartesianGrid,{strokeDasharray:"3 3",className:"stroke-gray-200 dark:stroke-gray-700"}),s.jsx(I.XAxis,{dataKey:"name",tick:{fontSize:12},className:"text-gray-600 dark:text-gray-400"}),s.jsx(I.YAxis,{domain:[0,p],tick:{fontSize:12},className:"text-gray-600 dark:text-gray-400",tickFormatter:y=>y.toLocaleString()}),s.jsx(I.Tooltip,{content:s.jsx(Dr,{labels:m,limit:h})}),s.jsx(I.Bar,{dataKey:"requests",fill:a,radius:[4,4,0,0],name:m.requestsLabel}),c&&h!==null&&s.jsx(I.ReferenceLine,{y:h,stroke:g,strokeDasharray:"5 5",strokeWidth:2,label:{value:m.limitLabel,position:"right",fill:g,fontSize:12}})]})}),s.jsxs("div",{className:"mt-4 flex items-center justify-center gap-6",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"h-3 w-3 rounded",style:{backgroundColor:a}}),s.jsx("span",{className:"text-sm text-gray-600 dark:text-gray-400",children:m.requestsLabel})]}),c&&h!==null&&s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"h-0.5 w-4",style:{backgroundColor:g,borderStyle:"dashed"}}),s.jsx("span",{className:"text-sm text-gray-600 dark:text-gray-400",children:m.limitLabel})]})]})]})};S.TierComparisonTable=Vr,S.UsageDashboard=jr,S.UsageHistoryChart=Er,S.cn=M,Object.defineProperty(S,Symbol.toStringTag,{value:"Module"})}));
1
+ (function(S,s){typeof exports=="object"&&typeof module<"u"?s(exports,require("react/jsx-runtime"),require("react"),require("recharts")):typeof define=="function"&&define.amd?define(["exports","react/jsx-runtime","react","recharts"],s):(S=typeof globalThis<"u"?globalThis:S||self,s(S.RatelimitComponents={},S.ReactJSXRuntime,S.React,S.Recharts))})(this,(function(S,s,oe,I){"use strict";function me(e){var t,r,o="";if(typeof e=="string"||typeof e=="number")o+=e;else if(typeof e=="object")if(Array.isArray(e)){var n=e.length;for(t=0;t<n;t++)e[t]&&(r=me(e[t]))&&(o&&(o+=" "),o+=r)}else for(r in e)e[r]&&(o&&(o+=" "),o+=r);return o}function ue(){for(var e,t,r=0,o="",n=arguments.length;r<n;r++)(e=arguments[r])&&(t=me(e))&&(o&&(o+=" "),o+=t);return o}const ge=e=>typeof e=="boolean"?`${e}`:e===0?"0":e,pe=ue,_e=(e,t)=>r=>{var o;if(t?.variants==null)return pe(e,r?.class,r?.className);const{variants:n,defaultVariants:d}=t,a=Object.keys(n).map(m=>{const x=r?.[m],h=d?.[m];if(x===null)return null;const b=ge(x)||ge(h);return n[m][b]}),g=r&&Object.entries(r).reduce((m,x)=>{let[h,b]=x;return b===void 0||(m[h]=b),m},{}),c=t==null||(o=t.compoundVariants)===null||o===void 0?void 0:o.reduce((m,x)=>{let{class:h,className:b,...y}=x;return Object.entries(y).every(L=>{let[N,v]=L;return Array.isArray(v)?v.includes({...d,...g}[N]):{...d,...g}[N]===v})?[...m,h,b]:m},[]);return pe(e,a,c,r?.class,r?.className)},$e=(e,t)=>{const r=new Array(e.length+t.length);for(let o=0;o<e.length;o++)r[o]=e[o];for(let o=0;o<t.length;o++)r[e.length+o]=t[o];return r},qe=(e,t)=>({classGroupId:e,validator:t}),be=(e=new Map,t=null,r)=>({nextPart:e,validators:t,classGroupId:r}),X="-",fe=[],Be="arbitrary..",He=e=>{const t=Xe(e),{conflictingClassGroups:r,conflictingClassGroupModifiers:o}=e;return{getClassGroupId:a=>{if(a.startsWith("[")&&a.endsWith("]"))return Ye(a);const g=a.split(X),c=g[0]===""&&g.length>1?1:0;return he(g,c,t)},getConflictingClassGroupIds:(a,g)=>{if(g){const c=o[a],m=r[a];return c?m?$e(m,c):c:m||fe}return r[a]||fe}}},he=(e,t,r)=>{if(e.length-t===0)return r.classGroupId;const n=e[t],d=r.nextPart.get(n);if(d){const m=he(e,t+1,d);if(m)return m}const a=r.validators;if(a===null)return;const g=t===0?e.join(X):e.slice(t).join(X),c=a.length;for(let m=0;m<c;m++){const x=a[m];if(x.validator(g))return x.classGroupId}},Ye=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),r=t.indexOf(":"),o=t.slice(0,r);return o?Be+o:void 0})(),Xe=e=>{const{theme:t,classGroups:r}=e;return Ke(r,t)},Ke=(e,t)=>{const r=be();for(const o in e){const n=e[o];se(n,r,o,t)}return r},se=(e,t,r,o)=>{const n=e.length;for(let d=0;d<n;d++){const a=e[d];Je(a,t,r,o)}},Je=(e,t,r,o)=>{if(typeof e=="string"){Qe(e,t,r);return}if(typeof e=="function"){Ze(e,t,r,o);return}Re(e,t,r,o)},Qe=(e,t,r)=>{const o=e===""?t:xe(t,e);o.classGroupId=r},Ze=(e,t,r,o)=>{if(er(e)){se(e(o),t,r,o);return}t.validators===null&&(t.validators=[]),t.validators.push(qe(r,e))},Re=(e,t,r,o)=>{const n=Object.entries(e),d=n.length;for(let a=0;a<d;a++){const[g,c]=n[a];se(c,xe(t,g),r,o)}},xe=(e,t)=>{let r=e;const o=t.split(X),n=o.length;for(let d=0;d<n;d++){const a=o[d];let g=r.nextPart.get(a);g||(g=be(),r.nextPart.set(a,g)),r=g}return r},er=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,rr=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,r=Object.create(null),o=Object.create(null);const n=(d,a)=>{r[d]=a,t++,t>e&&(t=0,o=r,r=Object.create(null))};return{get(d){let a=r[d];if(a!==void 0)return a;if((a=o[d])!==void 0)return n(d,a),a},set(d,a){d in r?r[d]=a:n(d,a)}}},ae="!",ye=":",tr=[],ke=(e,t,r,o,n)=>({modifiers:e,hasImportantModifier:t,baseClassName:r,maybePostfixModifierPosition:o,isExternal:n}),or=e=>{const{prefix:t,experimentalParseClassName:r}=e;let o=n=>{const d=[];let a=0,g=0,c=0,m;const x=n.length;for(let N=0;N<x;N++){const v=n[N];if(a===0&&g===0){if(v===ye){d.push(n.slice(c,N)),c=N+1;continue}if(v==="/"){m=N;continue}}v==="["?a++:v==="]"?a--:v==="("?g++:v===")"&&g--}const h=d.length===0?n:n.slice(c);let b=h,y=!1;h.endsWith(ae)?(b=h.slice(0,-1),y=!0):h.startsWith(ae)&&(b=h.slice(1),y=!0);const L=m&&m>c?m-c:void 0;return ke(d,y,b,L)};if(t){const n=t+ye,d=o;o=a=>a.startsWith(n)?d(a.slice(n.length)):ke(tr,!1,a,void 0,!0)}if(r){const n=o;o=d=>r({className:d,parseClassName:n})}return o},sr=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((r,o)=>{t.set(r,1e6+o)}),r=>{const o=[];let n=[];for(let d=0;d<r.length;d++){const a=r[d],g=a[0]==="[",c=t.has(a);g||c?(n.length>0&&(n.sort(),o.push(...n),n=[]),o.push(a)):n.push(a)}return n.length>0&&(n.sort(),o.push(...n)),o}},ar=e=>({cache:rr(e.cacheSize),parseClassName:or(e),sortModifiers:sr(e),...He(e)}),nr=/\s+/,lr=(e,t)=>{const{parseClassName:r,getClassGroupId:o,getConflictingClassGroupIds:n,sortModifiers:d}=t,a=[],g=e.trim().split(nr);let c="";for(let m=g.length-1;m>=0;m-=1){const x=g[m],{isExternal:h,modifiers:b,hasImportantModifier:y,baseClassName:L,maybePostfixModifierPosition:N}=r(x);if(h){c=x+(c.length>0?" "+c:c);continue}let v=!!N,V=o(v?L.substring(0,N):L);if(!V){if(!v){c=x+(c.length>0?" "+c:c);continue}if(V=o(L),!V){c=x+(c.length>0?" "+c:c);continue}v=!1}const Q=b.length===0?"":b.length===1?b[0]:d(b).join(":"),H=y?Q+ae:Q,F=H+V;if(a.indexOf(F)>-1)continue;a.push(F);const _=n(V,v);for(let O=0;O<_.length;++O){const Y=_[O];a.push(H+Y)}c=x+(c.length>0?" "+c:c)}return c},ir=(...e)=>{let t=0,r,o,n="";for(;t<e.length;)(r=e[t++])&&(o=we(r))&&(n&&(n+=" "),n+=o);return n},we=e=>{if(typeof e=="string")return e;let t,r="";for(let o=0;o<e.length;o++)e[o]&&(t=we(e[o]))&&(r&&(r+=" "),r+=t);return r},cr=(e,...t)=>{let r,o,n,d;const a=c=>{const m=t.reduce((x,h)=>h(x),e());return r=ar(m),o=r.cache.get,n=r.cache.set,d=g,g(c)},g=c=>{const m=o(c);if(m)return m;const x=lr(c,r);return n(c,x),x};return d=a,(...c)=>d(ir(...c))},dr=[],k=e=>{const t=r=>r[e]||dr;return t.isThemeGetter=!0,t},ve=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Ne=/^\((?:(\w[\w-]*):)?(.+)\)$/i,mr=/^\d+\/\d+$/,ur=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,gr=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,pr=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,br=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,fr=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,D=e=>mr.test(e),f=e=>!!e&&!Number.isNaN(Number(e)),j=e=>!!e&&Number.isInteger(Number(e)),ne=e=>e.endsWith("%")&&f(e.slice(0,-1)),A=e=>ur.test(e),hr=()=>!0,xr=e=>gr.test(e)&&!pr.test(e),Ce=()=>!1,yr=e=>br.test(e),kr=e=>fr.test(e),wr=e=>!l(e)&&!i(e),vr=e=>E(e,Me,Ce),l=e=>ve.test(e),G=e=>E(e,Te,xr),le=e=>E(e,Sr,f),Le=e=>E(e,Se,Ce),Nr=e=>E(e,Ae,kr),K=e=>E(e,Pe,yr),i=e=>Ne.test(e),q=e=>W(e,Te),Cr=e=>W(e,Ar),ze=e=>W(e,Se),Lr=e=>W(e,Me),zr=e=>W(e,Ae),J=e=>W(e,Pe,!0),E=(e,t,r)=>{const o=ve.exec(e);return o?o[1]?t(o[1]):r(o[2]):!1},W=(e,t,r=!1)=>{const o=Ne.exec(e);return o?o[1]?t(o[1]):r:!1},Se=e=>e==="position"||e==="percentage",Ae=e=>e==="image"||e==="url",Me=e=>e==="length"||e==="size"||e==="bg-size",Te=e=>e==="length",Sr=e=>e==="number",Ar=e=>e==="family-name",Pe=e=>e==="shadow",Mr=cr(()=>{const e=k("color"),t=k("font"),r=k("text"),o=k("font-weight"),n=k("tracking"),d=k("leading"),a=k("breakpoint"),g=k("container"),c=k("spacing"),m=k("radius"),x=k("shadow"),h=k("inset-shadow"),b=k("text-shadow"),y=k("drop-shadow"),L=k("blur"),N=k("perspective"),v=k("aspect"),V=k("ease"),Q=k("animate"),H=()=>["auto","avoid","all","avoid-page","page","left","right","column"],F=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],_=()=>[...F(),i,l],O=()=>["auto","hidden","clip","visible","scroll"],Y=()=>["auto","contain","none"],p=()=>[i,l,c],T=()=>[D,"full","auto",...p()],Ge=()=>[j,"none","subgrid",i,l],Ve=()=>["auto",{span:["full",j,i,l]},j,i,l],Z=()=>[j,"auto",i,l],Oe=()=>["auto","min","max","fr",i,l],ie=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],$=()=>["start","end","center","stretch","center-safe","end-safe"],P=()=>["auto",...p()],U=()=>[D,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...p()],u=()=>[e,i,l],Ue=()=>[...F(),ze,Le,{position:[i,l]}],De=()=>["no-repeat",{repeat:["","x","y","space","round"]}],Ee=()=>["auto","cover","contain",Lr,vr,{size:[i,l]}],ce=()=>[ne,q,G],C=()=>["","none","full",m,i,l],z=()=>["",f,q,G],R=()=>["solid","dashed","dotted","double"],We=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],w=()=>[f,ne,ze,Le],Fe=()=>["","none",L,i,l],ee=()=>["none",f,i,l],re=()=>["none",f,i,l],de=()=>[f,i,l],te=()=>[D,"full",...p()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[A],breakpoint:[A],color:[hr],container:[A],"drop-shadow":[A],ease:["in","out","in-out"],font:[wr],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[A],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[A],shadow:[A],spacing:["px",f],text:[A],"text-shadow":[A],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",D,l,i,v]}],container:["container"],columns:[{columns:[f,l,i,g]}],"break-after":[{"break-after":H()}],"break-before":[{"break-before":H()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:_()}],overflow:[{overflow:O()}],"overflow-x":[{"overflow-x":O()}],"overflow-y":[{"overflow-y":O()}],overscroll:[{overscroll:Y()}],"overscroll-x":[{"overscroll-x":Y()}],"overscroll-y":[{"overscroll-y":Y()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:T()}],"inset-x":[{"inset-x":T()}],"inset-y":[{"inset-y":T()}],start:[{start:T()}],end:[{end:T()}],top:[{top:T()}],right:[{right:T()}],bottom:[{bottom:T()}],left:[{left:T()}],visibility:["visible","invisible","collapse"],z:[{z:[j,"auto",i,l]}],basis:[{basis:[D,"full","auto",g,...p()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[f,D,"auto","initial","none",l]}],grow:[{grow:["",f,i,l]}],shrink:[{shrink:["",f,i,l]}],order:[{order:[j,"first","last","none",i,l]}],"grid-cols":[{"grid-cols":Ge()}],"col-start-end":[{col:Ve()}],"col-start":[{"col-start":Z()}],"col-end":[{"col-end":Z()}],"grid-rows":[{"grid-rows":Ge()}],"row-start-end":[{row:Ve()}],"row-start":[{"row-start":Z()}],"row-end":[{"row-end":Z()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":Oe()}],"auto-rows":[{"auto-rows":Oe()}],gap:[{gap:p()}],"gap-x":[{"gap-x":p()}],"gap-y":[{"gap-y":p()}],"justify-content":[{justify:[...ie(),"normal"]}],"justify-items":[{"justify-items":[...$(),"normal"]}],"justify-self":[{"justify-self":["auto",...$()]}],"align-content":[{content:["normal",...ie()]}],"align-items":[{items:[...$(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...$(),{baseline:["","last"]}]}],"place-content":[{"place-content":ie()}],"place-items":[{"place-items":[...$(),"baseline"]}],"place-self":[{"place-self":["auto",...$()]}],p:[{p:p()}],px:[{px:p()}],py:[{py:p()}],ps:[{ps:p()}],pe:[{pe:p()}],pt:[{pt:p()}],pr:[{pr:p()}],pb:[{pb:p()}],pl:[{pl:p()}],m:[{m:P()}],mx:[{mx:P()}],my:[{my:P()}],ms:[{ms:P()}],me:[{me:P()}],mt:[{mt:P()}],mr:[{mr:P()}],mb:[{mb:P()}],ml:[{ml:P()}],"space-x":[{"space-x":p()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":p()}],"space-y-reverse":["space-y-reverse"],size:[{size:U()}],w:[{w:[g,"screen",...U()]}],"min-w":[{"min-w":[g,"screen","none",...U()]}],"max-w":[{"max-w":[g,"screen","none","prose",{screen:[a]},...U()]}],h:[{h:["screen","lh",...U()]}],"min-h":[{"min-h":["screen","lh","none",...U()]}],"max-h":[{"max-h":["screen","lh",...U()]}],"font-size":[{text:["base",r,q,G]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[o,i,le]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",ne,l]}],"font-family":[{font:[Cr,l,t]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[n,i,l]}],"line-clamp":[{"line-clamp":[f,"none",i,le]}],leading:[{leading:[d,...p()]}],"list-image":[{"list-image":["none",i,l]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",i,l]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:u()}],"text-color":[{text:u()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...R(),"wavy"]}],"text-decoration-thickness":[{decoration:[f,"from-font","auto",i,G]}],"text-decoration-color":[{decoration:u()}],"underline-offset":[{"underline-offset":[f,"auto",i,l]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:p()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",i,l]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",i,l]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:Ue()}],"bg-repeat":[{bg:De()}],"bg-size":[{bg:Ee()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},j,i,l],radial:["",i,l],conic:[j,i,l]},zr,Nr]}],"bg-color":[{bg:u()}],"gradient-from-pos":[{from:ce()}],"gradient-via-pos":[{via:ce()}],"gradient-to-pos":[{to:ce()}],"gradient-from":[{from:u()}],"gradient-via":[{via:u()}],"gradient-to":[{to:u()}],rounded:[{rounded:C()}],"rounded-s":[{"rounded-s":C()}],"rounded-e":[{"rounded-e":C()}],"rounded-t":[{"rounded-t":C()}],"rounded-r":[{"rounded-r":C()}],"rounded-b":[{"rounded-b":C()}],"rounded-l":[{"rounded-l":C()}],"rounded-ss":[{"rounded-ss":C()}],"rounded-se":[{"rounded-se":C()}],"rounded-ee":[{"rounded-ee":C()}],"rounded-es":[{"rounded-es":C()}],"rounded-tl":[{"rounded-tl":C()}],"rounded-tr":[{"rounded-tr":C()}],"rounded-br":[{"rounded-br":C()}],"rounded-bl":[{"rounded-bl":C()}],"border-w":[{border:z()}],"border-w-x":[{"border-x":z()}],"border-w-y":[{"border-y":z()}],"border-w-s":[{"border-s":z()}],"border-w-e":[{"border-e":z()}],"border-w-t":[{"border-t":z()}],"border-w-r":[{"border-r":z()}],"border-w-b":[{"border-b":z()}],"border-w-l":[{"border-l":z()}],"divide-x":[{"divide-x":z()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":z()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...R(),"hidden","none"]}],"divide-style":[{divide:[...R(),"hidden","none"]}],"border-color":[{border:u()}],"border-color-x":[{"border-x":u()}],"border-color-y":[{"border-y":u()}],"border-color-s":[{"border-s":u()}],"border-color-e":[{"border-e":u()}],"border-color-t":[{"border-t":u()}],"border-color-r":[{"border-r":u()}],"border-color-b":[{"border-b":u()}],"border-color-l":[{"border-l":u()}],"divide-color":[{divide:u()}],"outline-style":[{outline:[...R(),"none","hidden"]}],"outline-offset":[{"outline-offset":[f,i,l]}],"outline-w":[{outline:["",f,q,G]}],"outline-color":[{outline:u()}],shadow:[{shadow:["","none",x,J,K]}],"shadow-color":[{shadow:u()}],"inset-shadow":[{"inset-shadow":["none",h,J,K]}],"inset-shadow-color":[{"inset-shadow":u()}],"ring-w":[{ring:z()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:u()}],"ring-offset-w":[{"ring-offset":[f,G]}],"ring-offset-color":[{"ring-offset":u()}],"inset-ring-w":[{"inset-ring":z()}],"inset-ring-color":[{"inset-ring":u()}],"text-shadow":[{"text-shadow":["none",b,J,K]}],"text-shadow-color":[{"text-shadow":u()}],opacity:[{opacity:[f,i,l]}],"mix-blend":[{"mix-blend":[...We(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":We()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[f]}],"mask-image-linear-from-pos":[{"mask-linear-from":w()}],"mask-image-linear-to-pos":[{"mask-linear-to":w()}],"mask-image-linear-from-color":[{"mask-linear-from":u()}],"mask-image-linear-to-color":[{"mask-linear-to":u()}],"mask-image-t-from-pos":[{"mask-t-from":w()}],"mask-image-t-to-pos":[{"mask-t-to":w()}],"mask-image-t-from-color":[{"mask-t-from":u()}],"mask-image-t-to-color":[{"mask-t-to":u()}],"mask-image-r-from-pos":[{"mask-r-from":w()}],"mask-image-r-to-pos":[{"mask-r-to":w()}],"mask-image-r-from-color":[{"mask-r-from":u()}],"mask-image-r-to-color":[{"mask-r-to":u()}],"mask-image-b-from-pos":[{"mask-b-from":w()}],"mask-image-b-to-pos":[{"mask-b-to":w()}],"mask-image-b-from-color":[{"mask-b-from":u()}],"mask-image-b-to-color":[{"mask-b-to":u()}],"mask-image-l-from-pos":[{"mask-l-from":w()}],"mask-image-l-to-pos":[{"mask-l-to":w()}],"mask-image-l-from-color":[{"mask-l-from":u()}],"mask-image-l-to-color":[{"mask-l-to":u()}],"mask-image-x-from-pos":[{"mask-x-from":w()}],"mask-image-x-to-pos":[{"mask-x-to":w()}],"mask-image-x-from-color":[{"mask-x-from":u()}],"mask-image-x-to-color":[{"mask-x-to":u()}],"mask-image-y-from-pos":[{"mask-y-from":w()}],"mask-image-y-to-pos":[{"mask-y-to":w()}],"mask-image-y-from-color":[{"mask-y-from":u()}],"mask-image-y-to-color":[{"mask-y-to":u()}],"mask-image-radial":[{"mask-radial":[i,l]}],"mask-image-radial-from-pos":[{"mask-radial-from":w()}],"mask-image-radial-to-pos":[{"mask-radial-to":w()}],"mask-image-radial-from-color":[{"mask-radial-from":u()}],"mask-image-radial-to-color":[{"mask-radial-to":u()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":F()}],"mask-image-conic-pos":[{"mask-conic":[f]}],"mask-image-conic-from-pos":[{"mask-conic-from":w()}],"mask-image-conic-to-pos":[{"mask-conic-to":w()}],"mask-image-conic-from-color":[{"mask-conic-from":u()}],"mask-image-conic-to-color":[{"mask-conic-to":u()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:Ue()}],"mask-repeat":[{mask:De()}],"mask-size":[{mask:Ee()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",i,l]}],filter:[{filter:["","none",i,l]}],blur:[{blur:Fe()}],brightness:[{brightness:[f,i,l]}],contrast:[{contrast:[f,i,l]}],"drop-shadow":[{"drop-shadow":["","none",y,J,K]}],"drop-shadow-color":[{"drop-shadow":u()}],grayscale:[{grayscale:["",f,i,l]}],"hue-rotate":[{"hue-rotate":[f,i,l]}],invert:[{invert:["",f,i,l]}],saturate:[{saturate:[f,i,l]}],sepia:[{sepia:["",f,i,l]}],"backdrop-filter":[{"backdrop-filter":["","none",i,l]}],"backdrop-blur":[{"backdrop-blur":Fe()}],"backdrop-brightness":[{"backdrop-brightness":[f,i,l]}],"backdrop-contrast":[{"backdrop-contrast":[f,i,l]}],"backdrop-grayscale":[{"backdrop-grayscale":["",f,i,l]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[f,i,l]}],"backdrop-invert":[{"backdrop-invert":["",f,i,l]}],"backdrop-opacity":[{"backdrop-opacity":[f,i,l]}],"backdrop-saturate":[{"backdrop-saturate":[f,i,l]}],"backdrop-sepia":[{"backdrop-sepia":["",f,i,l]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":p()}],"border-spacing-x":[{"border-spacing-x":p()}],"border-spacing-y":[{"border-spacing-y":p()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",i,l]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[f,"initial",i,l]}],ease:[{ease:["linear","initial",V,i,l]}],delay:[{delay:[f,i,l]}],animate:[{animate:["none",Q,i,l]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[N,i,l]}],"perspective-origin":[{"perspective-origin":_()}],rotate:[{rotate:ee()}],"rotate-x":[{"rotate-x":ee()}],"rotate-y":[{"rotate-y":ee()}],"rotate-z":[{"rotate-z":ee()}],scale:[{scale:re()}],"scale-x":[{"scale-x":re()}],"scale-y":[{"scale-y":re()}],"scale-z":[{"scale-z":re()}],"scale-3d":["scale-3d"],skew:[{skew:de()}],"skew-x":[{"skew-x":de()}],"skew-y":[{"skew-y":de()}],transform:[{transform:[i,l,"","none","gpu","cpu"]}],"transform-origin":[{origin:_()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:te()}],"translate-x":[{"translate-x":te()}],"translate-y":[{"translate-y":te()}],"translate-z":[{"translate-z":te()}],"translate-none":["translate-none"],accent:[{accent:u()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:u()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",i,l]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":p()}],"scroll-mx":[{"scroll-mx":p()}],"scroll-my":[{"scroll-my":p()}],"scroll-ms":[{"scroll-ms":p()}],"scroll-me":[{"scroll-me":p()}],"scroll-mt":[{"scroll-mt":p()}],"scroll-mr":[{"scroll-mr":p()}],"scroll-mb":[{"scroll-mb":p()}],"scroll-ml":[{"scroll-ml":p()}],"scroll-p":[{"scroll-p":p()}],"scroll-px":[{"scroll-px":p()}],"scroll-py":[{"scroll-py":p()}],"scroll-ps":[{"scroll-ps":p()}],"scroll-pe":[{"scroll-pe":p()}],"scroll-pt":[{"scroll-pt":p()}],"scroll-pr":[{"scroll-pr":p()}],"scroll-pb":[{"scroll-pb":p()}],"scroll-pl":[{"scroll-pl":p()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",i,l]}],fill:[{fill:["none",...u()]}],"stroke-w":[{stroke:[f,q,G,le]}],stroke:[{stroke:["none",...u()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}});function M(...e){return Mr(ue(e))}const Tr=_e("h-full rounded-full transition-all duration-300",{variants:{color:{blue:"bg-blue-500",green:"bg-green-500",yellow:"bg-yellow-500",red:"bg-red-500",purple:"bg-purple-500"}},defaultVariants:{color:"blue"}});function Ie(e,t){return t===null||t===0?0:Math.min(100,e/t*100)}function Pr(e,t){if(t===null)return"green";const r=Ie(e,t);return r>=90?"red":r>=70?"yellow":"blue"}const Ir=({config:e,showPercentage:t=!0,showRemaining:r=!0,labels:o})=>{const{label:n,used:d,limit:a,color:g}=e,c=Ie(d,a),m=g??Pr(d,a),x=a!==null?Math.max(0,a-d):null,h=a===null;return s.jsxs("div",{className:"space-y-2",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx("span",{className:"text-sm font-medium text-gray-700 dark:text-gray-300",children:n}),s.jsxs("span",{className:"text-sm text-gray-500 dark:text-gray-400",children:[d.toLocaleString()," ",o.usedLabel,!h&&` / ${a.toLocaleString()} ${o.limitLabel}`,h&&` (${o.unlimitedLabel})`]})]}),!h&&s.jsxs("div",{className:"relative",children:[s.jsx("div",{className:"h-3 w-full rounded-full bg-gray-200 dark:bg-gray-700",children:s.jsx("div",{className:M(Tr({color:m})),style:{width:`${c}%`}})}),t&&s.jsxs("span",{className:"absolute right-0 top-4 text-xs text-gray-500 dark:text-gray-400",children:[c.toFixed(0),"%"]})]}),h&&s.jsx("div",{className:"h-3 w-full rounded-full bg-green-100 dark:bg-green-900/30",children:s.jsx("div",{className:"h-full w-full rounded-full bg-green-500/20"})}),r&&x!==null&&s.jsxs("p",{className:"text-xs text-gray-500 dark:text-gray-400",children:[x.toLocaleString()," ",o.remainingLabel]})]})},B={title:"Usage",usedLabel:"used",limitLabel:"limit",unlimitedLabel:"Unlimited",remainingLabel:"remaining"},jr=({usageBars:e,currentTierName:t,labels:r,onUpgradeClick:o,upgradeButtonLabel:n="Upgrade",className:d,showPercentage:a=!0,showRemaining:g=!0,onTrack:c,trackingLabel:m,componentName:x="UsageDashboard"})=>{const h={...B,...r},b=()=>{c?.({action:"upgrade_click",trackingLabel:m,componentName:x}),o?.()};return s.jsxs("div",{className:M("rounded-lg border border-gray-200 bg-white p-6 dark:border-gray-700 dark:bg-gray-800",d),children:[s.jsxs("div",{className:"mb-6 flex items-center justify-between",children:[s.jsxs("div",{children:[s.jsx("h3",{className:"text-lg font-semibold text-gray-900 dark:text-white",children:h.title}),t&&s.jsx("p",{className:"text-sm text-gray-500 dark:text-gray-400",children:t})]}),o&&s.jsx("button",{onClick:b,className:"rounded-md bg-blue-600 px-4 py-2 text-sm font-medium text-white transition-colors hover:bg-blue-700 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 dark:focus:ring-offset-gray-800",children:n})]}),s.jsx("div",{className:"space-y-6",children:e.map((y,L)=>s.jsx(Ir,{config:y,showPercentage:a,showRemaining:g,labels:{usedLabel:h.usedLabel??B.usedLabel,limitLabel:h.limitLabel??B.limitLabel,unlimitedLabel:h.unlimitedLabel??B.unlimitedLabel,remainingLabel:h.remainingLabel??B.remainingLabel}},`${y.label}-${L}`))})]})},je={title:"Plan Comparison",tierHeader:"Plan",hourlyHeader:"Hourly",dailyHeader:"Daily",monthlyHeader:"Monthly",unlimitedLabel:"Unlimited",currentTierBadge:"Current"};function Gr(e){return e.toLocaleString()}const Vr=({tiers:e,labels:t,onTierSelect:r,className:o,formatNumber:n=Gr,onTrack:d,trackingLabel:a,componentName:g="TierComparisonTable"})=>{const c={...je,...t},m=b=>{d?.({action:"tier_select",trackingLabel:a,componentName:g}),r?.(b)},x=b=>b===null?c.unlimitedLabel??je.unlimitedLabel:n(b),h=b=>{const y=b===null;return s.jsx("span",{className:M("text-sm",y?"font-medium text-green-600 dark:text-green-400":"text-gray-700 dark:text-gray-300"),children:x(b)})};return s.jsxs("div",{className:M("rounded-lg border border-gray-200 bg-white dark:border-gray-700 dark:bg-gray-800",o),children:[c.title&&s.jsx("div",{className:"border-b border-gray-200 px-6 py-4 dark:border-gray-700",children:s.jsx("h3",{className:"text-lg font-semibold text-gray-900 dark:text-white",children:c.title})}),s.jsx("div",{className:"overflow-x-auto",children:s.jsxs("table",{className:"w-full",children:[s.jsx("thead",{children:s.jsxs("tr",{className:"border-b border-gray-200 bg-gray-50 dark:border-gray-700 dark:bg-gray-900/50",children:[s.jsx("th",{className:"px-6 py-3 text-left text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-400",children:c.tierHeader}),s.jsx("th",{className:"px-6 py-3 text-right text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-400",children:c.hourlyHeader}),s.jsx("th",{className:"px-6 py-3 text-right text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-400",children:c.dailyHeader}),s.jsx("th",{className:"px-6 py-3 text-right text-xs font-medium uppercase tracking-wider text-gray-500 dark:text-gray-400",children:c.monthlyHeader})]})}),s.jsx("tbody",{className:"divide-y divide-gray-200 dark:divide-gray-700",children:e.map(b=>s.jsxs("tr",{onClick:()=>m(b.id),className:M("transition-colors",b.isHighlighted&&"bg-blue-50 dark:bg-blue-900/20",b.isCurrent&&"bg-green-50 dark:bg-green-900/20",r&&"cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-700/50"),children:[s.jsx("td",{className:"whitespace-nowrap px-6 py-4",children:s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("span",{className:M("text-sm font-medium",b.isCurrent?"text-green-700 dark:text-green-400":b.isHighlighted?"text-blue-700 dark:text-blue-400":"text-gray-900 dark:text-white"),children:b.name}),b.isCurrent&&s.jsx("span",{className:"inline-flex items-center rounded-full bg-green-100 px-2 py-0.5 text-xs font-medium text-green-700 dark:bg-green-900/50 dark:text-green-400",children:c.currentTierBadge})]})}),s.jsx("td",{className:"whitespace-nowrap px-6 py-4 text-right",children:h(b.hourlyLimit)}),s.jsx("td",{className:"whitespace-nowrap px-6 py-4 text-right",children:h(b.dailyLimit)}),s.jsx("td",{className:"whitespace-nowrap px-6 py-4 text-right",children:h(b.monthlyLimit)})]},b.id))})]})})]})},Or={title:"Usage History",requestsLabel:"Requests",limitLabel:"Limit",periodLabel:"Period",noDataLabel:"No usage data available"};function Ur(e,t){const r=new Date(e);switch(t){case"hour":return r.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit"});case"day":return r.toLocaleDateString(void 0,{month:"short",day:"numeric"});case"month":return r.toLocaleDateString(void 0,{month:"short",year:"numeric"});default:return e}}const Dr=({active:e,payload:t,label:r,labels:o,limit:n})=>{if(!e||!t||t.length===0)return null;const d=t[0].value;return s.jsxs("div",{className:"rounded-lg border border-gray-200 bg-white p-3 shadow-lg dark:border-gray-700 dark:bg-gray-800",children:[s.jsx("p",{className:"mb-1 text-sm font-medium text-gray-900 dark:text-white",children:r}),s.jsxs("p",{className:"text-sm text-gray-600 dark:text-gray-400",children:[o.requestsLabel,":"," ",s.jsx("span",{className:"font-medium",children:d.toLocaleString()})]}),n!==null&&s.jsxs("p",{className:"text-sm text-gray-600 dark:text-gray-400",children:[o.limitLabel,":"," ",s.jsx("span",{className:"font-medium",children:n.toLocaleString()})]})]})},Er=({entries:e,periodType:t,labels:r,height:o=300,className:n,formatDate:d=Ur,barColor:a="#3b82f6",limitLineColor:g="#ef4444",showLimitLine:c=!0})=>{const m={...Or,...r},x=oe.useMemo(()=>e.map(y=>({name:d(y.periodStart,t),requests:y.requestCount,limit:y.limit})),[e,d,t]),h=oe.useMemo(()=>e.find(L=>L.limit!==null)?.limit??null,[e]),b=oe.useMemo(()=>{const y=Math.max(...e.map(N=>N.requestCount),0);return Math.max(y,h??0)*1.1},[e,h]);return e.length===0?s.jsx("div",{className:M("flex items-center justify-center rounded-lg border border-gray-200 bg-white p-6 dark:border-gray-700 dark:bg-gray-800",n),style:{height:o},children:s.jsx("p",{className:"text-gray-500 dark:text-gray-400",children:m.noDataLabel})}):s.jsxs("div",{className:M("rounded-lg border border-gray-200 bg-white p-6 dark:border-gray-700 dark:bg-gray-800",n),children:[m.title&&s.jsx("h3",{className:"mb-4 text-lg font-semibold text-gray-900 dark:text-white",children:m.title}),s.jsx(I.ResponsiveContainer,{width:"100%",height:o,children:s.jsxs(I.LineChart,{data:x,margin:{top:20,right:30,left:20,bottom:5},children:[s.jsx(I.CartesianGrid,{strokeDasharray:"3 3",className:"stroke-gray-200 dark:stroke-gray-700"}),s.jsx(I.XAxis,{dataKey:"name",tick:{fontSize:12},className:"text-gray-600 dark:text-gray-400"}),s.jsx(I.YAxis,{domain:[0,b],tick:{fontSize:12},className:"text-gray-600 dark:text-gray-400",tickFormatter:y=>y.toLocaleString()}),s.jsx(I.Tooltip,{content:s.jsx(Dr,{labels:m,limit:h})}),s.jsx(I.Line,{type:"monotone",dataKey:"requests",stroke:a,strokeWidth:2,dot:{fill:a,strokeWidth:2,r:4},activeDot:{r:6,strokeWidth:2},name:m.requestsLabel}),c&&h!==null&&s.jsx(I.ReferenceLine,{y:h,stroke:g,strokeDasharray:"5 5",strokeWidth:2,label:{value:m.limitLabel,position:"right",fill:g,fontSize:12}})]})}),s.jsxs("div",{className:"mt-4 flex items-center justify-center gap-6",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"h-0.5 w-4 rounded",style:{backgroundColor:a}}),s.jsx("span",{className:"text-sm text-gray-600 dark:text-gray-400",children:m.requestsLabel})]}),c&&h!==null&&s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:"h-0.5 w-4",style:{backgroundColor:g,borderStyle:"dashed"}}),s.jsx("span",{className:"text-sm text-gray-600 dark:text-gray-400",children:m.limitLabel})]})]})]})};S.TierComparisonTable=Vr,S.UsageDashboard=jr,S.UsageHistoryChart=Er,S.cn=M,Object.defineProperty(S,Symbol.toStringTag,{value:"Module"})}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudobility/ratelimit-components",
3
- "version": "1.0.4",
3
+ "version": "1.0.6",
4
4
  "description": "Rate limit UI components for React",
5
5
  "type": "module",
6
6
  "main": "dist/index.umd.js",
@@ -37,16 +37,16 @@
37
37
  "author": "John Q Huang",
38
38
  "license": "MIT",
39
39
  "peerDependencies": {
40
- "@sudobility/components": "*",
41
- "@sudobility/design": "^1.1.14",
40
+ "@sudobility/components": "^4.0.156",
41
+ "@sudobility/design": "^1.1.18",
42
42
  "react": "^18.0.0 || ^19.0.0",
43
43
  "react-dom": "^18.0.0 || ^19.0.0",
44
- "recharts": "^2.0.0"
44
+ "recharts": "^2.0.0 || ^3.0.0"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@eslint/js": "^9.38.0",
48
- "@sudobility/components": "*",
49
- "@sudobility/design": "^1.1.14",
48
+ "@sudobility/components": "^4.0.156",
49
+ "@sudobility/design": "^1.1.18",
50
50
  "ajv": "^8.17.1",
51
51
  "@testing-library/dom": "^10.4.0",
52
52
  "@testing-library/jest-dom": "^6.4.2",