@viglet/viglet-design-system 2026.3.8 → 2026.3.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (105) hide show
  1. package/README.md +213 -16
  2. package/dist/badge-locale-Bij94NwL.cjs +1 -0
  3. package/dist/{badge-locale-BxI9TwkE.js → badge-locale-Du41PpLA.js} +183 -229
  4. package/dist/bento/bento-back-to-top.d.ts.map +1 -1
  5. package/dist/bento/bento-command-palette.d.ts +47 -12
  6. package/dist/bento/bento-command-palette.d.ts.map +1 -1
  7. package/dist/bento/bento-form-section.d.ts +7 -1
  8. package/dist/bento/bento-form-section.d.ts.map +1 -1
  9. package/dist/bento/bento-inline-edit.d.ts.map +1 -1
  10. package/dist/bento/bento-nav-rail.d.ts.map +1 -1
  11. package/dist/bento/bento-nav.d.ts +10 -2
  12. package/dist/bento/bento-nav.d.ts.map +1 -1
  13. package/dist/bento/bento-section-chrome.d.ts +5 -0
  14. package/dist/bento/bento-section-chrome.d.ts.map +1 -1
  15. package/dist/bento/bento-status-marker.d.ts.map +1 -1
  16. package/dist/bento/bento-tile.d.ts.map +1 -1
  17. package/dist/bento/index.d.ts +1 -1
  18. package/dist/bento/index.d.ts.map +1 -1
  19. package/dist/bento.cjs +1 -1
  20. package/dist/bento.es.js +473 -413
  21. package/dist/{breadcrumb.context-CGqjI0-U.js → breadcrumb.context-BssgEydx.js} +251 -239
  22. package/dist/breadcrumb.context-DLsiMS59.cjs +1 -0
  23. package/dist/components/app-switcher.d.ts.map +1 -1
  24. package/dist/components/badge-colorful.d.ts +9 -0
  25. package/dist/components/badge-colorful.d.ts.map +1 -1
  26. package/dist/components/login/login.d.ts.map +1 -1
  27. package/dist/components/router/grid.list.d.ts.map +1 -1
  28. package/dist/components/router/index.d.ts +1 -1
  29. package/dist/components/router/index.d.ts.map +1 -1
  30. package/dist/components/router/sticky.page.header.d.ts.map +1 -1
  31. package/dist/components/router/sub.page.d.ts.map +1 -1
  32. package/dist/components/router/sub.page.header.d.ts.map +1 -1
  33. package/dist/components/startup-first/startup-first.d.ts.map +1 -1
  34. package/dist/components/ui/breadcrumb.d.ts.map +1 -1
  35. package/dist/components/ui/dialog.d.ts.map +1 -1
  36. package/dist/components/ui/floating-formulas-bg.d.ts.map +1 -1
  37. package/dist/components/ui/glass-card.d.ts +10 -5
  38. package/dist/components/ui/glass-card.d.ts.map +1 -1
  39. package/dist/components/ui/icon-picker-dialog.d.ts.map +1 -1
  40. package/dist/components/ui/index.d.ts +6 -4
  41. package/dist/components/ui/index.d.ts.map +1 -1
  42. package/dist/components/ui/navigation-menu.d.ts +14 -0
  43. package/dist/components/ui/navigation-menu.d.ts.map +1 -1
  44. package/dist/components/ui/pagination.d.ts.map +1 -1
  45. package/dist/components/ui/pulse-ring.d.ts.map +1 -1
  46. package/dist/components/ui/resizable.d.ts.map +1 -1
  47. package/dist/components/ui/sheet.d.ts.map +1 -1
  48. package/dist/components/ui/sidebar.d.ts.map +1 -1
  49. package/dist/components/ui/sonner.d.ts +12 -0
  50. package/dist/components/ui/sonner.d.ts.map +1 -1
  51. package/dist/components/ui/stepper.d.ts.map +1 -1
  52. package/dist/components/ui/viglet-assistant.d.ts +60 -0
  53. package/dist/components/ui/viglet-assistant.d.ts.map +1 -0
  54. package/dist/components/ui/viglet-avatar.d.ts +42 -0
  55. package/dist/components/ui/viglet-avatar.d.ts.map +1 -0
  56. package/dist/exports.json +24 -5
  57. package/dist/floating-formulas-bg.cjs +1 -1
  58. package/dist/floating-formulas-bg.es.js +56 -55
  59. package/dist/hooks/index.d.ts +1 -0
  60. package/dist/hooks/index.d.ts.map +1 -1
  61. package/dist/hooks/use-assistant-notifications.d.ts +15 -0
  62. package/dist/hooks/use-assistant-notifications.d.ts.map +1 -0
  63. package/dist/i18n/index.d.ts +102 -0
  64. package/dist/i18n/index.d.ts.map +1 -1
  65. package/dist/i18n/locales/en/assistant.json.d.ts +22 -0
  66. package/dist/i18n/locales/en/bento.json.d.ts +5 -2
  67. package/dist/i18n/locales/en/common.json.d.ts +15 -1
  68. package/dist/i18n/locales/en/dialog.json.d.ts +2 -1
  69. package/dist/i18n/locales/en/language.json.d.ts +8 -0
  70. package/dist/i18n/locales/en/sidebar.json.d.ts +4 -1
  71. package/dist/i18n/locales/pt/assistant.json.d.ts +22 -0
  72. package/dist/i18n/locales/pt/bento.json.d.ts +5 -2
  73. package/dist/i18n/locales/pt/common.json.d.ts +15 -1
  74. package/dist/i18n/locales/pt/dialog.json.d.ts +2 -1
  75. package/dist/i18n/locales/pt/language.json.d.ts +8 -0
  76. package/dist/i18n/locales/pt/sidebar.json.d.ts +4 -1
  77. package/dist/i18n.cjs +1 -1
  78. package/dist/i18n.es.js +478 -2
  79. package/dist/index.cjs +1 -1
  80. package/dist/index.d.ts +0 -1
  81. package/dist/index.d.ts.map +1 -1
  82. package/dist/index.es.js +1318 -696
  83. package/dist/loading-provider-B6-R2ONB.cjs +1 -0
  84. package/dist/{loading-provider-CMnOuvdR.js → loading-provider-E3fbcekM.js} +33 -32
  85. package/dist/preset.css +3 -1
  86. package/dist/router.cjs +1 -1
  87. package/dist/router.es.js +135 -134
  88. package/dist/{user.context-kPAqKN4o.js → user.context-CPmUBBLa.js} +109 -99
  89. package/dist/user.context-xsJgPpcO.cjs +1 -0
  90. package/dist/utils-Fk5jmzzb.js +41 -0
  91. package/dist/utils-Oagwe_oa.cjs +1 -0
  92. package/dist/viglet-design-system.css +1 -1
  93. package/dist/vite/boot-loader.d.ts +33 -2
  94. package/dist/vite/boot-loader.d.ts.map +1 -1
  95. package/dist/vite.cjs +16 -5
  96. package/dist/vite.es.js +27 -14
  97. package/docs/BENTO-AUTHORING.md +20 -2
  98. package/docs/reference/grounds.dc.html +9 -9
  99. package/package.json +4 -3
  100. package/dist/badge-locale-sIsBdP_e.cjs +0 -7
  101. package/dist/breadcrumb.context-DYeZEC65.cjs +0 -1
  102. package/dist/i18n-DoNdMLEd.cjs +0 -1
  103. package/dist/i18n-DuNITbWa.js +0 -398
  104. package/dist/loading-provider-1mgM91iY.cjs +0 -1
  105. package/dist/user.context-r50nSWER.cjs +0 -1
@@ -1,52 +1,17 @@
1
- import { clsx as e } from "clsx";
2
- import { twMerge as t } from "tailwind-merge";
3
- import { createContext as n, createElement as r, forwardRef as i, useContext as a, useState as o } from "react";
4
- import { Fragment as s, jsx as c, jsxs as l } from "react/jsx-runtime";
5
- import { Slot as u } from "@radix-ui/react-slot";
6
- import { cva as d } from "class-variance-authority";
7
- import * as f from "@radix-ui/react-dialog";
8
- import * as p from "@radix-ui/react-dropdown-menu";
9
- import * as m from "@radix-ui/react-tooltip";
10
- //#region src/lib/utils.ts
11
- function h(...n) {
12
- return t(e(n));
13
- }
14
- function g(e) {
15
- let [t = "", n] = e.trim().replaceAll("-", "_").toUpperCase().split("_");
16
- return {
17
- language: t,
18
- region: n?.length === 2 ? n : null
19
- };
20
- }
21
- var ee = (e, t = 10) => {
22
- if (!e || e.length <= t) return e ?? "";
23
- if (t < 3) return "...".slice(0, Math.max(t, 0));
24
- let n = t - 3, r = Math.ceil(n / 2), i = Math.floor(n / 2);
25
- return e.substring(0, r) + "..." + e.substring(e.length - i);
26
- }, _ = (e) => {
27
- let { region: t } = g(e);
28
- return t ? t.split("").map((e) => String.fromCodePoint((e.codePointAt(0) ?? 0) + 127397)).join("") : "🌐";
29
- }, v = (e) => {
30
- let t = 0;
31
- for (let n = 0; n < e.length; n++) t = (e.codePointAt(n) ?? 0) + ((t << 5) - t);
32
- let n = Math.abs(t) % 360;
33
- return {
34
- h: n,
35
- light: {
36
- bg: `hsl(${n}, 70%, 95%)`,
37
- text: `hsl(${n}, 70%, 20%)`,
38
- border: `hsl(${n}, 70%, 90%)`
39
- },
40
- dark: {
41
- bg: `hsl(${n}, 50%, 15%)`,
42
- text: `hsl(${n}, 80%, 80%)`,
43
- border: `hsl(${n}, 50%, 25%)`
44
- }
45
- };
46
- }, y = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), te = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), ne = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), b = (e) => {
47
- let t = ne(e);
1
+ import { i as e, r as t, t as n } from "./utils-Fk5jmzzb.js";
2
+ import { createContext as r, createElement as i, forwardRef as a, useContext as o, useState as s } from "react";
3
+ import { Fragment as c, jsx as l, jsxs as u } from "react/jsx-runtime";
4
+ import { Slot as d } from "@radix-ui/react-slot";
5
+ import { cva as f } from "class-variance-authority";
6
+ import { useTranslation as p } from "react-i18next";
7
+ import * as m from "@radix-ui/react-dialog";
8
+ import * as h from "@radix-ui/react-dropdown-menu";
9
+ import * as g from "@radix-ui/react-tooltip";
10
+ //#region node_modules/lucide-react/dist/esm/shared/src/utils/mergeClasses.mjs
11
+ var _ = (...e) => e.filter((e, t, n) => !!e && e.trim() !== "" && n.indexOf(e) === t).join(" ").trim(), v = (e) => e.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase(), ee = (e) => e.replace(/^([A-Z])|[\s-_]+(\w)/g, (e, t, n) => n ? n.toUpperCase() : t.toLowerCase()), y = (e) => {
12
+ let t = ee(e);
48
13
  return t.charAt(0).toUpperCase() + t.slice(1);
49
- }, x = {
14
+ }, b = {
50
15
  xmlns: "http://www.w3.org/2000/svg",
51
16
  width: 24,
52
17
  height: 24,
@@ -56,42 +21,42 @@ var ee = (e, t = 10) => {
56
21
  strokeWidth: 2,
57
22
  strokeLinecap: "round",
58
23
  strokeLinejoin: "round"
59
- }, S = (e) => {
24
+ }, te = (e) => {
60
25
  for (let t in e) if (t.startsWith("aria-") || t === "role" || t === "title") return !0;
61
26
  return !1;
62
- }, C = n({}), w = () => a(C), T = i(({ color: e, size: t, strokeWidth: n, absoluteStrokeWidth: i, className: a = "", children: o, iconNode: s, ...c }, l) => {
63
- let { size: u = 24, strokeWidth: d = 2, absoluteStrokeWidth: f = !1, color: p = "currentColor", className: m = "" } = w() ?? {}, h = i ?? f ? Number(n ?? d) * 24 / Number(t ?? u) : n ?? d;
64
- return r("svg", {
27
+ }, x = r({}), S = () => o(x), ne = a(({ color: e, size: t, strokeWidth: n, absoluteStrokeWidth: r, className: a = "", children: o, iconNode: s, ...c }, l) => {
28
+ let { size: u = 24, strokeWidth: d = 2, absoluteStrokeWidth: f = !1, color: p = "currentColor", className: m = "" } = S() ?? {}, h = r ?? f ? Number(n ?? d) * 24 / Number(t ?? u) : n ?? d;
29
+ return i("svg", {
65
30
  ref: l,
66
- ...x,
67
- width: t ?? u ?? x.width,
68
- height: t ?? u ?? x.height,
31
+ ...b,
32
+ width: t ?? u ?? b.width,
33
+ height: t ?? u ?? b.height,
69
34
  stroke: e ?? p,
70
35
  strokeWidth: h,
71
- className: y("lucide", m, a),
72
- ...!o && !S(c) && { "aria-hidden": "true" },
36
+ className: _("lucide", m, a),
37
+ ...!o && !te(c) && { "aria-hidden": "true" },
73
38
  ...c
74
- }, [...s.map(([e, t]) => r(e, t)), ...Array.isArray(o) ? o : [o]]);
75
- }), E = (e, t) => {
76
- let n = i(({ className: n, ...i }, a) => r(T, {
39
+ }, [...s.map(([e, t]) => i(e, t)), ...Array.isArray(o) ? o : [o]]);
40
+ }), C = (e, t) => {
41
+ let n = a(({ className: n, ...r }, a) => i(ne, {
77
42
  ref: a,
78
43
  iconNode: t,
79
- className: y(`lucide-${te(b(e))}`, `lucide-${e}`, n),
80
- ...i
44
+ className: _(`lucide-${v(y(e))}`, `lucide-${e}`, n),
45
+ ...r
81
46
  }));
82
- return n.displayName = b(e), n;
83
- }, D = E("check", [["path", {
47
+ return n.displayName = y(e), n;
48
+ }, w = C("check", [["path", {
84
49
  d: "M20 6 9 17l-5-5",
85
50
  key: "1gmf2c"
86
- }]]), O = E("chevron-right", [["path", {
51
+ }]]), T = C("chevron-right", [["path", {
87
52
  d: "m9 18 6-6-6-6",
88
53
  key: "mthhwq"
89
- }]]), re = E("circle", [["circle", {
54
+ }]]), re = C("circle", [["circle", {
90
55
  cx: "12",
91
56
  cy: "12",
92
57
  r: "10",
93
58
  key: "1mglay"
94
- }]]), ie = E("globe", [
59
+ }]]), ie = C("globe", [
95
60
  ["circle", {
96
61
  cx: "12",
97
62
  cy: "12",
@@ -106,13 +71,13 @@ var ee = (e, t = 10) => {
106
71
  d: "M2 12h20",
107
72
  key: "9i4pu4"
108
73
  }]
109
- ]), k = E("x", [["path", {
74
+ ]), E = C("x", [["path", {
110
75
  d: "M18 6 6 18",
111
76
  key: "1bl5f8"
112
77
  }], ["path", {
113
78
  d: "m6 6 12 12",
114
79
  key: "d8bk6v"
115
- }]]), A = d("inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden", {
80
+ }]]), D = f("inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden", {
116
81
  variants: { variant: {
117
82
  default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
118
83
  secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
@@ -121,211 +86,212 @@ var ee = (e, t = 10) => {
121
86
  } },
122
87
  defaultVariants: { variant: "default" }
123
88
  });
124
- function j({ className: e, variant: t, asChild: n = !1, ...r }) {
125
- return /* @__PURE__ */ c(n ? u : "span", {
89
+ function O({ className: e, variant: t, asChild: r = !1, ...i }) {
90
+ return /* @__PURE__ */ l(r ? d : "span", {
126
91
  "data-slot": "badge",
127
- className: h(A({ variant: t }), e),
128
- ...r
92
+ className: n(D({ variant: t }), e),
93
+ ...i
129
94
  });
130
95
  }
131
96
  //#endregion
132
97
  //#region src/components/ui/dialog.tsx
133
- function M({ ...e }) {
134
- return /* @__PURE__ */ c(f.Root, {
98
+ function k({ ...e }) {
99
+ return /* @__PURE__ */ l(m.Root, {
135
100
  "data-slot": "dialog",
136
101
  ...e
137
102
  });
138
103
  }
139
- function N({ ...e }) {
140
- return /* @__PURE__ */ c(f.Trigger, {
104
+ function A({ ...e }) {
105
+ return /* @__PURE__ */ l(m.Trigger, {
141
106
  "data-slot": "dialog-trigger",
142
107
  ...e
143
108
  });
144
109
  }
145
- function P({ ...e }) {
146
- return /* @__PURE__ */ c(f.Portal, {
110
+ function j({ ...e }) {
111
+ return /* @__PURE__ */ l(m.Portal, {
147
112
  "data-slot": "dialog-portal",
148
113
  ...e
149
114
  });
150
115
  }
151
- function F({ ...e }) {
152
- return /* @__PURE__ */ c(f.Close, {
116
+ function M({ ...e }) {
117
+ return /* @__PURE__ */ l(m.Close, {
153
118
  "data-slot": "dialog-close",
154
119
  ...e
155
120
  });
156
121
  }
157
- function I({ className: e, ...t }) {
158
- return /* @__PURE__ */ c(f.Overlay, {
122
+ function N({ className: e, ...t }) {
123
+ return /* @__PURE__ */ l(m.Overlay, {
159
124
  "data-slot": "dialog-overlay",
160
- className: h("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50", e),
125
+ className: n("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50", e),
161
126
  ...t
162
127
  });
163
128
  }
164
- function L({ className: e, children: t, showCloseButton: n = !0, ...r }) {
165
- return /* @__PURE__ */ l(P, {
129
+ function P({ className: e, children: t, showCloseButton: r = !0, ...i }) {
130
+ let { t: a } = p();
131
+ return /* @__PURE__ */ u(j, {
166
132
  "data-slot": "dialog-portal",
167
- children: [/* @__PURE__ */ c(I, {}), /* @__PURE__ */ l(f.Content, {
133
+ children: [/* @__PURE__ */ l(N, {}), /* @__PURE__ */ u(m.Content, {
168
134
  "data-slot": "dialog-content",
169
- className: h("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg", e),
170
- ...r,
171
- children: [t, n && /* @__PURE__ */ l(f.Close, {
135
+ className: n("bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg", e),
136
+ ...i,
137
+ children: [t, r && /* @__PURE__ */ u(m.Close, {
172
138
  "data-slot": "dialog-close",
173
139
  className: "ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",
174
- children: [/* @__PURE__ */ c(k, {}), /* @__PURE__ */ c("span", {
140
+ children: [/* @__PURE__ */ l(E, {}), /* @__PURE__ */ l("span", {
175
141
  className: "sr-only",
176
- children: "Close"
142
+ children: a("dialog.close", { defaultValue: "Close" })
177
143
  })]
178
144
  })]
179
145
  })]
180
146
  });
181
147
  }
182
- function R({ className: e, ...t }) {
183
- return /* @__PURE__ */ c("div", {
148
+ function F({ className: e, ...t }) {
149
+ return /* @__PURE__ */ l("div", {
184
150
  "data-slot": "dialog-header",
185
- className: h("flex flex-col gap-2 text-center sm:text-left", e),
151
+ className: n("flex flex-col gap-2 text-center sm:text-left", e),
186
152
  ...t
187
153
  });
188
154
  }
189
- function z({ className: e, ...t }) {
190
- return /* @__PURE__ */ c("div", {
155
+ function I({ className: e, ...t }) {
156
+ return /* @__PURE__ */ l("div", {
191
157
  "data-slot": "dialog-footer",
192
- className: h("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", e),
158
+ className: n("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", e),
193
159
  ...t
194
160
  });
195
161
  }
196
- function B({ className: e, ...t }) {
197
- return /* @__PURE__ */ c(f.Title, {
162
+ function L({ className: e, ...t }) {
163
+ return /* @__PURE__ */ l(m.Title, {
198
164
  "data-slot": "dialog-title",
199
- className: h("text-lg leading-none font-semibold", e),
165
+ className: n("text-lg leading-none font-semibold", e),
200
166
  ...t
201
167
  });
202
168
  }
203
- function V({ className: e, ...t }) {
204
- return /* @__PURE__ */ c(f.Description, {
169
+ function R({ className: e, ...t }) {
170
+ return /* @__PURE__ */ l(m.Description, {
205
171
  "data-slot": "dialog-description",
206
- className: h("text-muted-foreground text-sm", e),
172
+ className: n("text-muted-foreground text-sm", e),
207
173
  ...t
208
174
  });
209
175
  }
210
176
  //#endregion
211
177
  //#region src/components/ui/dropdown-menu.tsx
212
- function H({ ...e }) {
213
- return /* @__PURE__ */ c(p.Root, {
178
+ function z({ ...e }) {
179
+ return /* @__PURE__ */ l(h.Root, {
214
180
  "data-slot": "dropdown-menu",
215
181
  ...e
216
182
  });
217
183
  }
218
- function U({ ...e }) {
219
- return /* @__PURE__ */ c(p.Portal, {
184
+ function B({ ...e }) {
185
+ return /* @__PURE__ */ l(h.Portal, {
220
186
  "data-slot": "dropdown-menu-portal",
221
187
  ...e
222
188
  });
223
189
  }
224
- function W({ ...e }) {
225
- return /* @__PURE__ */ c(p.Trigger, {
190
+ function V({ ...e }) {
191
+ return /* @__PURE__ */ l(h.Trigger, {
226
192
  "data-slot": "dropdown-menu-trigger",
227
193
  ...e
228
194
  });
229
195
  }
230
- function G({ className: e, sideOffset: t = 4, ...n }) {
231
- return /* @__PURE__ */ c(p.Portal, { children: /* @__PURE__ */ c(p.Content, {
196
+ function H({ className: e, sideOffset: t = 4, ...r }) {
197
+ return /* @__PURE__ */ l(h.Portal, { children: /* @__PURE__ */ l(h.Content, {
232
198
  "data-slot": "dropdown-menu-content",
233
199
  sideOffset: t,
234
- className: h("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md", e),
235
- ...n
200
+ className: n("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-dropdown-menu-content-available-height) min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md", e),
201
+ ...r
236
202
  }) });
237
203
  }
238
- function K({ ...e }) {
239
- return /* @__PURE__ */ c(p.Group, {
204
+ function U({ ...e }) {
205
+ return /* @__PURE__ */ l(h.Group, {
240
206
  "data-slot": "dropdown-menu-group",
241
207
  ...e
242
208
  });
243
209
  }
244
- function q({ className: e, inset: t, variant: n = "default", ...r }) {
245
- return /* @__PURE__ */ c(p.Item, {
210
+ function ae({ className: e, inset: t, variant: r = "default", ...i }) {
211
+ return /* @__PURE__ */ l(h.Item, {
246
212
  "data-slot": "dropdown-menu-item",
247
213
  "data-inset": t,
248
- "data-variant": n,
249
- className: h("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", e),
250
- ...r
214
+ "data-variant": r,
215
+ className: n("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", e),
216
+ ...i
251
217
  });
252
218
  }
253
- function J({ className: e, children: t, checked: n, ...r }) {
254
- return /* @__PURE__ */ l(p.CheckboxItem, {
219
+ function W({ className: e, children: t, checked: r, ...i }) {
220
+ return /* @__PURE__ */ u(h.CheckboxItem, {
255
221
  "data-slot": "dropdown-menu-checkbox-item",
256
- className: h("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", e),
257
- checked: n,
258
- ...r,
259
- children: [/* @__PURE__ */ c("span", {
222
+ className: n("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", e),
223
+ checked: r,
224
+ ...i,
225
+ children: [/* @__PURE__ */ l("span", {
260
226
  className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",
261
- children: /* @__PURE__ */ c(p.ItemIndicator, { children: /* @__PURE__ */ c(D, { className: "size-4" }) })
227
+ children: /* @__PURE__ */ l(h.ItemIndicator, { children: /* @__PURE__ */ l(w, { className: "size-4" }) })
262
228
  }), t]
263
229
  });
264
230
  }
265
- function ae({ ...e }) {
266
- return /* @__PURE__ */ c(p.RadioGroup, {
231
+ function G({ ...e }) {
232
+ return /* @__PURE__ */ l(h.RadioGroup, {
267
233
  "data-slot": "dropdown-menu-radio-group",
268
234
  ...e
269
235
  });
270
236
  }
271
- function oe({ className: e, children: t, ...n }) {
272
- return /* @__PURE__ */ l(p.RadioItem, {
237
+ function K({ className: e, children: t, ...r }) {
238
+ return /* @__PURE__ */ u(h.RadioItem, {
273
239
  "data-slot": "dropdown-menu-radio-item",
274
- className: h("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", e),
275
- ...n,
276
- children: [/* @__PURE__ */ c("span", {
240
+ className: n("focus:bg-accent focus:text-accent-foreground relative flex cursor-default items-center gap-2 rounded-sm py-1.5 pr-2 pl-8 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", e),
241
+ ...r,
242
+ children: [/* @__PURE__ */ l("span", {
277
243
  className: "pointer-events-none absolute left-2 flex size-3.5 items-center justify-center",
278
- children: /* @__PURE__ */ c(p.ItemIndicator, { children: /* @__PURE__ */ c(re, { className: "size-2 fill-current" }) })
244
+ children: /* @__PURE__ */ l(h.ItemIndicator, { children: /* @__PURE__ */ l(re, { className: "size-2 fill-current" }) })
279
245
  }), t]
280
246
  });
281
247
  }
282
- function se({ className: e, inset: t, ...n }) {
283
- return /* @__PURE__ */ c(p.Label, {
248
+ function q({ className: e, inset: t, ...r }) {
249
+ return /* @__PURE__ */ l(h.Label, {
284
250
  "data-slot": "dropdown-menu-label",
285
251
  "data-inset": t,
286
- className: h("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8", e),
287
- ...n
252
+ className: n("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8", e),
253
+ ...r
288
254
  });
289
255
  }
290
- function ce({ className: e, ...t }) {
291
- return /* @__PURE__ */ c(p.Separator, {
256
+ function J({ className: e, ...t }) {
257
+ return /* @__PURE__ */ l(h.Separator, {
292
258
  "data-slot": "dropdown-menu-separator",
293
- className: h("bg-border -mx-1 my-1 h-px", e),
259
+ className: n("bg-border -mx-1 my-1 h-px", e),
294
260
  ...t
295
261
  });
296
262
  }
297
- function le({ className: e, ...t }) {
298
- return /* @__PURE__ */ c("span", {
263
+ function oe({ className: e, ...t }) {
264
+ return /* @__PURE__ */ l("span", {
299
265
  "data-slot": "dropdown-menu-shortcut",
300
- className: h("text-muted-foreground ml-auto text-xs tracking-widest", e),
266
+ className: n("text-muted-foreground ml-auto text-xs tracking-widest", e),
301
267
  ...t
302
268
  });
303
269
  }
304
- function ue({ ...e }) {
305
- return /* @__PURE__ */ c(p.Sub, {
270
+ function se({ ...e }) {
271
+ return /* @__PURE__ */ l(h.Sub, {
306
272
  "data-slot": "dropdown-menu-sub",
307
273
  ...e
308
274
  });
309
275
  }
310
- function de({ className: e, inset: t, children: n, ...r }) {
311
- return /* @__PURE__ */ l(p.SubTrigger, {
276
+ function ce({ className: e, inset: t, children: r, ...i }) {
277
+ return /* @__PURE__ */ u(h.SubTrigger, {
312
278
  "data-slot": "dropdown-menu-sub-trigger",
313
279
  "data-inset": t,
314
- className: h("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", e),
315
- ...r,
316
- children: [n, /* @__PURE__ */ c(O, { className: "ml-auto size-4" })]
280
+ className: n("focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4", e),
281
+ ...i,
282
+ children: [r, /* @__PURE__ */ l(T, { className: "ml-auto size-4" })]
317
283
  });
318
284
  }
319
- function fe({ className: e, ...t }) {
320
- return /* @__PURE__ */ c(p.SubContent, {
285
+ function le({ className: e, ...t }) {
286
+ return /* @__PURE__ */ l(h.SubContent, {
321
287
  "data-slot": "dropdown-menu-sub-content",
322
- className: h("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg", e),
288
+ className: n("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 min-w-[8rem] origin-(--radix-dropdown-menu-content-transform-origin) overflow-hidden rounded-md border p-1 shadow-lg", e),
323
289
  ...t
324
290
  });
325
291
  }
326
292
  //#endregion
327
293
  //#region src/components/ui/gradient-button.tsx
328
- var Y = d("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all duration-200 cursor-pointer disabled:cursor-not-allowed disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:ring-[3px]", {
294
+ var Y = f("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all duration-200 cursor-pointer disabled:cursor-not-allowed disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:ring-[3px]", {
329
295
  variants: {
330
296
  variant: {
331
297
  default: [
@@ -397,119 +363,107 @@ var Y = d("inline-flex items-center justify-center gap-2 whitespace-nowrap round
397
363
  size: "default"
398
364
  }
399
365
  });
400
- function pe({ className: e, variant: t, size: n, asChild: r = !1, loading: i = !1, ...a }) {
401
- let o = h(Y({
366
+ function ue({ className: e, variant: t, size: r, asChild: i = !1, loading: a = !1, ...o }) {
367
+ let s = n(Y({
402
368
  variant: t,
403
- size: n,
369
+ size: r,
404
370
  className: e
405
371
  }));
406
- return /* @__PURE__ */ c(r ? u : "button", {
372
+ return /* @__PURE__ */ l(i ? d : "button", {
407
373
  "data-slot": "gradient-button",
408
- className: o,
409
- disabled: i || a.disabled,
410
- ...a,
411
- children: i ? /* @__PURE__ */ l(s, { children: [/* @__PURE__ */ l("svg", {
374
+ className: s,
375
+ disabled: a || o.disabled,
376
+ ...o,
377
+ children: a ? /* @__PURE__ */ u(c, { children: [/* @__PURE__ */ u("svg", {
412
378
  className: "size-4 animate-spin",
413
379
  xmlns: "http://www.w3.org/2000/svg",
414
380
  fill: "none",
415
381
  viewBox: "0 0 24 24",
416
- children: [/* @__PURE__ */ c("circle", {
382
+ children: [/* @__PURE__ */ l("circle", {
417
383
  className: "opacity-25",
418
384
  cx: "12",
419
385
  cy: "12",
420
386
  r: "10",
421
387
  stroke: "currentColor",
422
388
  strokeWidth: "4"
423
- }), /* @__PURE__ */ c("path", {
389
+ }), /* @__PURE__ */ l("path", {
424
390
  className: "opacity-75",
425
391
  fill: "currentColor",
426
392
  d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"
427
393
  })]
428
- }), a.children] }) : a.children
394
+ }), o.children] }) : o.children
429
395
  });
430
396
  }
431
397
  //#endregion
432
398
  //#region src/components/ui/input.tsx
433
- function me({ className: e, type: t, ...n }) {
434
- return /* @__PURE__ */ c("input", {
399
+ function de({ className: e, type: t, ...r }) {
400
+ return /* @__PURE__ */ l("input", {
435
401
  type: t,
436
402
  "data-slot": "input",
437
- className: h("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent pl-3 pr-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]", "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", e),
438
- ...n
403
+ className: n("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent pl-3 pr-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]", "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", e),
404
+ ...r
439
405
  });
440
406
  }
441
407
  //#endregion
442
408
  //#region src/components/ui/skeleton.tsx
443
- function he({ className: e, ...t }) {
444
- return /* @__PURE__ */ c("div", {
409
+ function X({ className: e, ...t }) {
410
+ return /* @__PURE__ */ l("div", {
445
411
  "data-slot": "skeleton",
446
- className: h("bg-accent animate-pulse rounded-md", e),
412
+ className: n("bg-accent animate-pulse rounded-md", e),
447
413
  ...t
448
414
  });
449
415
  }
450
416
  //#endregion
451
417
  //#region src/components/ui/tooltip.tsx
452
- function X({ delayDuration: e = 0, ...t }) {
453
- return /* @__PURE__ */ c(m.Provider, {
418
+ function Z({ delayDuration: e = 0, ...t }) {
419
+ return /* @__PURE__ */ l(g.Provider, {
454
420
  "data-slot": "tooltip-provider",
455
421
  delayDuration: e,
456
422
  ...t
457
423
  });
458
424
  }
459
- function Z({ ...e }) {
460
- return /* @__PURE__ */ c(X, { children: /* @__PURE__ */ c(m.Root, {
425
+ function fe({ ...e }) {
426
+ return /* @__PURE__ */ l(Z, { children: /* @__PURE__ */ l(g.Root, {
461
427
  "data-slot": "tooltip",
462
428
  ...e
463
429
  }) });
464
430
  }
465
- function ge({ ...e }) {
466
- return /* @__PURE__ */ c(m.Trigger, {
431
+ function pe({ ...e }) {
432
+ return /* @__PURE__ */ l(g.Trigger, {
467
433
  "data-slot": "tooltip-trigger",
468
434
  ...e
469
435
  });
470
436
  }
471
- function _e({ className: e, sideOffset: t = 0, children: n, ...r }) {
472
- return /* @__PURE__ */ c(m.Portal, { children: /* @__PURE__ */ l(m.Content, {
437
+ function me({ className: e, sideOffset: t = 0, children: r, ...i }) {
438
+ return /* @__PURE__ */ l(g.Portal, { children: /* @__PURE__ */ u(g.Content, {
473
439
  "data-slot": "tooltip-content",
474
440
  sideOffset: t,
475
- className: h("bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance", e),
476
- ...r,
477
- children: [n, /* @__PURE__ */ c(m.Arrow, { className: "bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })]
441
+ className: n("bg-foreground text-background animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 w-fit origin-(--radix-tooltip-content-transform-origin) rounded-md px-3 py-1.5 text-xs text-balance", e),
442
+ ...i,
443
+ children: [r, /* @__PURE__ */ l(g.Arrow, { className: "bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]" })]
478
444
  }) });
479
445
  }
480
446
  //#endregion
481
447
  //#region src/components/badge-colorful.tsx
482
- var ve = ({ text: e, href: t, onClick: n, className: r, prefix: i }) => {
448
+ var he = ({ text: e, href: r, onClick: i, className: a, prefix: o }) => {
483
449
  if (!e) return null;
484
- let a = v(e);
485
- return /* @__PURE__ */ l(s, { children: [/* @__PURE__ */ l(j, {
450
+ let s = t(e);
451
+ return /* @__PURE__ */ u(O, {
486
452
  variant: "outline",
487
453
  title: e,
488
- onClick: () => t && n?.(t),
489
- className: `text-xs font-medium px-2 py-0.5 gap-1.5 cursor-pointer transition-all hover:opacity-80 dynamic-badge-${e.length} ${r ?? ""}`,
454
+ onClick: () => r && i?.(r),
455
+ className: n("vg-badge-colorful text-xs font-medium px-2 py-0.5 gap-1.5 cursor-pointer transition-all hover:opacity-80", `dynamic-badge-${e.length}`, a),
490
456
  style: {
491
- "--badge-bg": a.light.bg,
492
- "--badge-text": a.light.text,
493
- "--badge-border": a.light.border,
494
- "--badge-dark-bg": a.dark.bg,
495
- "--badge-dark-text": a.dark.text,
496
- "--badge-dark-border": a.dark.border,
497
- backgroundColor: "var(--badge-bg)",
498
- color: "var(--badge-text)",
499
- borderColor: "var(--badge-border)"
457
+ "--badge-bg": s.light.bg,
458
+ "--badge-text": s.light.text,
459
+ "--badge-border": s.light.border,
460
+ "--badge-dark-bg": s.dark.bg,
461
+ "--badge-dark-text": s.dark.text,
462
+ "--badge-dark-border": s.dark.border
500
463
  },
501
- children: [i, /* @__PURE__ */ c("span", { dangerouslySetInnerHTML: { __html: e } })]
502
- }), /* @__PURE__ */ c("style", {
503
- suppressHydrationWarning: !0,
504
- children: `
505
- .dark [title="${e}"] {
506
- background-color: var(--badge-dark-bg) !important;
507
- color: var(--badge-dark-text) !important;
508
- border-color: var(--badge-dark-border) !important;
509
- }
510
- `
511
- })] });
512
- }, ye = {
464
+ children: [o, /* @__PURE__ */ l("span", { children: e })]
465
+ });
466
+ }, ge = {
513
467
  AR: "SA",
514
468
  BN: "BD",
515
469
  CA: "ES",
@@ -552,28 +506,28 @@ var ve = ({ text: e, href: t, onClick: n, className: r, prefix: i }) => {
552
506
  VI: "VN",
553
507
  ZH: "CN"
554
508
  }, Q = { UK: "GB" };
555
- function $(e) {
556
- if (!e) return "";
557
- let { language: t, region: n } = g(e);
558
- if (n) return (Q[n] || n).toLowerCase();
559
- let r = ye[t];
560
- return r ? r.toLowerCase() : (Q[t] || t).toLowerCase();
561
- }
562
- var be = ({ locale: e, className: t }) => {
563
- let n = $(e), [r, i] = o(null), a = r === n;
564
- return /* @__PURE__ */ l(j, {
509
+ function $(t) {
510
+ if (!t) return "";
511
+ let { language: n, region: r } = e(t);
512
+ if (r) return (Q[r] || r).toLowerCase();
513
+ let i = ge[n];
514
+ return i ? i.toLowerCase() : (Q[n] || n).toLowerCase();
515
+ }
516
+ var _e = ({ locale: e, className: t }) => {
517
+ let r = $(e), [i, a] = s(null), o = i === r;
518
+ return /* @__PURE__ */ u(O, {
565
519
  variant: "secondary",
566
- className: `font-mono gap-2 py-1 pl-1 pr-2 w-fit ${t}`,
567
- children: [!a && n ? /* @__PURE__ */ c("img", {
568
- src: `https://flagcdn.com/w40/${n}.png`,
569
- alt: n,
570
- onError: () => i(n),
520
+ className: n("font-mono gap-2 py-1 pl-1 pr-2 w-fit", t),
521
+ children: [!o && r ? /* @__PURE__ */ l("img", {
522
+ src: `https://flagcdn.com/w40/${r}.png`,
523
+ alt: r,
524
+ onError: () => a(r),
571
525
  className: "w-5 h-3.5 object-cover rounded-sm shadow-sm"
572
- }) : /* @__PURE__ */ c(ie, { className: "w-3.5 h-3.5 text-muted-foreground" }), /* @__PURE__ */ c("span", {
526
+ }) : /* @__PURE__ */ l(ie, { className: "w-3.5 h-3.5 text-muted-foreground" }), /* @__PURE__ */ l("span", {
573
527
  className: "text-xs font-bold uppercase tracking-tight leading-none",
574
528
  children: e
575
529
  })]
576
530
  });
577
531
  };
578
532
  //#endregion
579
- export { V as A, O as B, ue as C, M as D, W as E, B as F, v as G, E as H, N as I, ee as K, j as L, R as M, I as N, F as O, P, A as R, le as S, de as T, h as U, D as V, _ as W, se as _, _e as a, oe as b, he as c, Y as d, H as f, q as g, K as h, Z as i, z as j, L as k, me as l, G as m, $ as n, X as o, J as p, ve as r, ge as s, be as t, pe as u, U as v, fe as w, ce as x, ae as y, k as z };
533
+ export { R as A, T as B, se as C, k as D, V as E, L as F, C as H, A as I, O as L, F as M, N, M as O, j as P, D as R, oe as S, ce as T, w as V, q as _, me as a, K as b, X as c, Y as d, z as f, ae as g, U as h, fe as i, I as j, P as k, de as l, H as m, $ as n, Z as o, W as p, he as r, pe as s, _e as t, ue as u, B as v, le as w, J as x, G as y, E as z };