@viglet/viglet-design-system 2026.2.57 → 2026.3.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +277 -7
- package/dist/assets.cjs +1 -0
- package/dist/assets.es.js +2 -0
- package/dist/badge-locale-BxI9TwkE.js +579 -0
- package/dist/badge-locale-sIsBdP_e.cjs +7 -0
- package/dist/bento/bento-actions-menu.d.ts +42 -0
- package/dist/bento/bento-actions-menu.d.ts.map +1 -0
- package/dist/bento/bento-back-to-top.d.ts +11 -0
- package/dist/bento/bento-back-to-top.d.ts.map +1 -0
- package/dist/bento/bento-command-palette.d.ts +28 -0
- package/dist/bento/bento-command-palette.d.ts.map +1 -0
- package/dist/bento/bento-count-tile.d.ts +18 -0
- package/dist/bento/bento-count-tile.d.ts.map +1 -0
- package/dist/bento/bento-empty-state.d.ts +35 -0
- package/dist/bento/bento-empty-state.d.ts.map +1 -0
- package/dist/bento/bento-entity-shell.d.ts +123 -0
- package/dist/bento/bento-entity-shell.d.ts.map +1 -0
- package/dist/bento/bento-entity-tile.d.ts +40 -0
- package/dist/bento/bento-entity-tile.d.ts.map +1 -0
- package/dist/bento/bento-form-hero.d.ts +91 -0
- package/dist/bento/bento-form-hero.d.ts.map +1 -0
- package/dist/bento/bento-form-section.d.ts +31 -0
- package/dist/bento/bento-form-section.d.ts.map +1 -0
- package/dist/bento/bento-hero-icon-picker.d.ts +35 -0
- package/dist/bento/bento-hero-icon-picker.d.ts.map +1 -0
- package/dist/bento/bento-hero.d.ts +62 -0
- package/dist/bento/bento-hero.d.ts.map +1 -0
- package/dist/bento/bento-inline-edit.d.ts +52 -0
- package/dist/bento/bento-inline-edit.d.ts.map +1 -0
- package/dist/bento/bento-layout.d.ts +52 -0
- package/dist/bento/bento-layout.d.ts.map +1 -0
- package/dist/bento/bento-list-page.d.ts +124 -0
- package/dist/bento/bento-list-page.d.ts.map +1 -0
- package/dist/bento/bento-nav-rail.d.ts +32 -0
- package/dist/bento/bento-nav-rail.d.ts.map +1 -0
- package/dist/bento/bento-nav.d.ts +69 -0
- package/dist/bento/bento-nav.d.ts.map +1 -0
- package/dist/bento/bento-save-bar.d.ts +36 -0
- package/dist/bento/bento-save-bar.d.ts.map +1 -0
- package/dist/bento/bento-scroll-fade.d.ts +20 -0
- package/dist/bento/bento-scroll-fade.d.ts.map +1 -0
- package/dist/bento/bento-scroll-save-bar.d.ts +22 -0
- package/dist/bento/bento-scroll-save-bar.d.ts.map +1 -0
- package/dist/bento/bento-section-chrome.d.ts +60 -0
- package/dist/bento/bento-section-chrome.d.ts.map +1 -0
- package/dist/bento/bento-section.d.ts +27 -0
- package/dist/bento/bento-section.d.ts.map +1 -0
- package/dist/bento/bento-shortcuts-dialog.d.ts +15 -0
- package/dist/bento/bento-shortcuts-dialog.d.ts.map +1 -0
- package/dist/bento/bento-status-marker.d.ts +26 -0
- package/dist/bento/bento-status-marker.d.ts.map +1 -0
- package/dist/bento/bento-tile.d.ts +42 -0
- package/dist/bento/bento-tile.d.ts.map +1 -0
- package/dist/bento/bento-tones.d.ts +33 -0
- package/dist/bento/bento-tones.d.ts.map +1 -0
- package/dist/bento/bento-user-menu.d.ts +31 -0
- package/dist/bento/bento-user-menu.d.ts.map +1 -0
- package/dist/bento/index.d.ts +59 -0
- package/dist/bento/index.d.ts.map +1 -0
- package/dist/bento.cjs +1 -0
- package/dist/bento.css +442 -0
- package/dist/bento.es.js +1501 -0
- package/dist/breadcrumb.context-CTnZ4rD0.cjs +1 -0
- package/dist/breadcrumb.context-h2A2IEJ_.js +928 -0
- package/dist/components/app-footer.d.ts +1 -1
- package/dist/components/app-footer.d.ts.map +1 -1
- package/dist/components/app-switcher.d.ts +1 -1
- package/dist/components/app-switcher.d.ts.map +1 -1
- package/dist/components/backend-status.d.ts +2 -2
- package/dist/components/backend-status.d.ts.map +1 -1
- package/dist/components/badge-locale.d.ts.map +1 -1
- package/dist/components/error-boundary.d.ts.map +1 -1
- package/dist/components/language-select.d.ts +1 -1
- package/dist/components/language-select.d.ts.map +1 -1
- package/dist/components/language-switcher.d.ts +1 -1
- package/dist/components/language-switcher.d.ts.map +1 -1
- package/dist/components/login/login.d.ts +11 -11
- package/dist/components/login/login.d.ts.map +1 -1
- package/dist/components/mode-toggle.d.ts +2 -2
- package/dist/components/mode-toggle.d.ts.map +1 -1
- package/dist/components/nav-secondary.d.ts +1 -1
- package/dist/components/nav-secondary.d.ts.map +1 -1
- package/dist/components/router/blank-slate.d.ts +10 -0
- package/dist/components/router/blank-slate.d.ts.map +1 -1
- package/dist/components/router/gradient-button-link.d.ts +1 -1
- package/dist/components/router/gradient-button-link.d.ts.map +1 -1
- package/dist/components/router/grid.list.d.ts +13 -0
- package/dist/components/router/grid.list.d.ts.map +1 -1
- package/dist/components/router/internal.sidebar.d.ts +27 -2
- package/dist/components/router/internal.sidebar.d.ts.map +1 -1
- package/dist/components/router/loading-provider.d.ts +7 -2
- package/dist/components/router/loading-provider.d.ts.map +1 -1
- package/dist/components/router/nav-main.d.ts +11 -1
- package/dist/components/router/nav-main.d.ts.map +1 -1
- package/dist/components/router/nav-user.d.ts +15 -1
- package/dist/components/router/nav-user.d.ts.map +1 -1
- package/dist/components/router/page-content.d.ts +10 -0
- package/dist/components/router/page-content.d.ts.map +1 -1
- package/dist/components/router/page-header.d.ts +13 -0
- package/dist/components/router/page-header.d.ts.map +1 -1
- package/dist/components/router/page.d.ts +13 -0
- package/dist/components/router/page.d.ts.map +1 -1
- package/dist/components/router/sticky.page.header.d.ts +14 -0
- package/dist/components/router/sticky.page.header.d.ts.map +1 -1
- package/dist/components/router/sub.page.d.ts +15 -11
- package/dist/components/router/sub.page.d.ts.map +1 -1
- package/dist/components/router/sub.page.header.d.ts +13 -0
- package/dist/components/router/sub.page.header.d.ts.map +1 -1
- package/dist/components/startup-first/startup-first.d.ts +11 -11
- package/dist/components/startup-first/startup-first.d.ts.map +1 -1
- package/dist/components/theme-provider.d.ts +1 -1
- package/dist/components/theme-provider.d.ts.map +1 -1
- package/dist/components/ui/avatar.d.ts +3 -3
- package/dist/components/ui/avatar.d.ts.map +1 -1
- package/dist/components/ui/badge.d.ts +1 -1
- package/dist/components/ui/badge.d.ts.map +1 -1
- package/dist/components/ui/breadcrumb.d.ts +7 -7
- package/dist/components/ui/breadcrumb.d.ts.map +1 -1
- package/dist/components/ui/button.d.ts +1 -1
- package/dist/components/ui/button.d.ts.map +1 -1
- package/dist/components/ui/card.d.ts +7 -7
- package/dist/components/ui/card.d.ts.map +1 -1
- package/dist/components/ui/checkbox.d.ts +1 -1
- package/dist/components/ui/checkbox.d.ts.map +1 -1
- package/dist/components/ui/dialog.d.ts +10 -10
- package/dist/components/ui/dialog.d.ts.map +1 -1
- package/dist/components/ui/drawer.d.ts +10 -10
- package/dist/components/ui/drawer.d.ts.map +1 -1
- package/dist/components/ui/dropdown-menu.d.ts +15 -15
- package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
- package/dist/components/ui/floating-formulas-bg.d.ts +8 -1
- package/dist/components/ui/floating-formulas-bg.d.ts.map +1 -1
- package/dist/components/ui/form-actions.d.ts +4 -4
- package/dist/components/ui/form-actions.d.ts.map +1 -1
- package/dist/components/ui/form.d.ts +8 -8
- package/dist/components/ui/form.d.ts.map +1 -1
- package/dist/components/ui/glass-card.d.ts +1 -1
- package/dist/components/ui/glass-card.d.ts.map +1 -1
- package/dist/components/ui/gradient-button.d.ts +1 -1
- package/dist/components/ui/gradient-button.d.ts.map +1 -1
- package/dist/components/ui/gradient-switch.d.ts +1 -1
- package/dist/components/ui/gradient-switch.d.ts.map +1 -1
- package/dist/components/ui/icon-picker-dialog.d.ts +35 -0
- package/dist/components/ui/icon-picker-dialog.d.ts.map +1 -0
- package/dist/components/ui/index.d.ts +1 -0
- package/dist/components/ui/index.d.ts.map +1 -1
- package/dist/components/ui/input.d.ts +1 -1
- package/dist/components/ui/input.d.ts.map +1 -1
- package/dist/components/ui/label.d.ts +1 -1
- package/dist/components/ui/label.d.ts.map +1 -1
- package/dist/components/ui/navigation-menu.d.ts +8 -8
- package/dist/components/ui/navigation-menu.d.ts.map +1 -1
- package/dist/components/ui/pagination.d.ts +5 -5
- package/dist/components/ui/pagination.d.ts.map +1 -1
- package/dist/components/ui/popover.d.ts +7 -7
- package/dist/components/ui/popover.d.ts.map +1 -1
- package/dist/components/ui/progress.d.ts +1 -1
- package/dist/components/ui/progress.d.ts.map +1 -1
- package/dist/components/ui/pulse-ring.d.ts +1 -1
- package/dist/components/ui/pulse-ring.d.ts.map +1 -1
- package/dist/components/ui/resizable.d.ts +3 -3
- package/dist/components/ui/resizable.d.ts.map +1 -1
- package/dist/components/ui/section-card.d.ts +7 -7
- package/dist/components/ui/section-card.d.ts.map +1 -1
- package/dist/components/ui/select.d.ts +10 -10
- package/dist/components/ui/select.d.ts.map +1 -1
- package/dist/components/ui/separator.d.ts +1 -1
- package/dist/components/ui/separator.d.ts.map +1 -1
- package/dist/components/ui/sheet.d.ts +8 -8
- package/dist/components/ui/sheet.d.ts.map +1 -1
- package/dist/components/ui/sidebar.d.ts +23 -23
- package/dist/components/ui/sidebar.d.ts.map +1 -1
- package/dist/components/ui/skeleton.d.ts +1 -1
- package/dist/components/ui/skeleton.d.ts.map +1 -1
- package/dist/components/ui/slider.d.ts +1 -1
- package/dist/components/ui/slider.d.ts.map +1 -1
- package/dist/components/ui/sonner.d.ts +1 -1
- package/dist/components/ui/sonner.d.ts.map +1 -1
- package/dist/components/ui/stepper.d.ts +3 -3
- package/dist/components/ui/stepper.d.ts.map +1 -1
- package/dist/components/ui/sticky-save-bar.d.ts +2 -2
- package/dist/components/ui/sticky-save-bar.d.ts.map +1 -1
- package/dist/components/ui/switch.d.ts +1 -1
- package/dist/components/ui/switch.d.ts.map +1 -1
- package/dist/components/ui/table.d.ts +8 -8
- package/dist/components/ui/table.d.ts.map +1 -1
- package/dist/components/ui/tabs.d.ts +4 -4
- package/dist/components/ui/tabs.d.ts.map +1 -1
- package/dist/components/ui/textarea.d.ts +1 -1
- package/dist/components/ui/textarea.d.ts.map +1 -1
- package/dist/components/ui/toggle-group.d.ts +2 -2
- package/dist/components/ui/toggle-group.d.ts.map +1 -1
- package/dist/components/ui/toggle.d.ts +1 -1
- package/dist/components/ui/toggle.d.ts.map +1 -1
- package/dist/components/ui/tooltip.d.ts +4 -4
- package/dist/components/ui/tooltip.d.ts.map +1 -1
- package/dist/components/ui/user-avatar.d.ts +1 -1
- package/dist/components/ui/user-avatar.d.ts.map +1 -1
- package/dist/components/ui/user-menu.d.ts +1 -1
- package/dist/components/ui/user-menu.d.ts.map +1 -1
- package/dist/components/viglet-app-switcher.d.ts +1 -1
- package/dist/components/viglet-app-switcher.d.ts.map +1 -1
- package/dist/contexts/breadcrumb.context.d.ts +1 -1
- package/dist/contexts/breadcrumb.context.d.ts.map +1 -1
- package/dist/contexts/user.context.d.ts +25 -1
- package/dist/contexts/user.context.d.ts.map +1 -1
- package/dist/exports.json +404 -0
- package/dist/floating-formulas-bg.cjs +1 -0
- package/dist/floating-formulas-bg.css +21 -0
- package/dist/floating-formulas-bg.es.js +83 -56
- package/dist/fonts/inter-cyrillic-ext-wght-normal.woff2 +0 -0
- package/dist/fonts/inter-cyrillic-wght-normal.woff2 +0 -0
- package/dist/fonts/inter-greek-ext-wght-normal.woff2 +0 -0
- package/dist/fonts/inter-greek-wght-normal.woff2 +0 -0
- package/dist/fonts/inter-latin-ext-wght-normal.woff2 +0 -0
- package/dist/fonts/inter-latin-wght-normal.woff2 +0 -0
- package/dist/fonts/inter-vietnamese-wght-normal.woff2 +0 -0
- package/dist/fonts/plus-jakarta-sans-cyrillic-ext-wght-normal.woff2 +0 -0
- package/dist/fonts/plus-jakarta-sans-latin-ext-wght-normal.woff2 +0 -0
- package/dist/fonts/plus-jakarta-sans-latin-wght-normal.woff2 +0 -0
- package/dist/fonts/plus-jakarta-sans-vietnamese-wght-normal.woff2 +0 -0
- package/dist/fonts.css +126 -0
- package/dist/hooks/use-grid-adapter.d.ts.map +1 -1
- package/dist/hooks/use-mobile.d.ts +10 -0
- package/dist/hooks/use-mobile.d.ts.map +1 -1
- package/dist/hooks/use-sub-page-breadcrumb.d.ts.map +1 -1
- package/dist/i18n/index.d.ts +136 -0
- package/dist/i18n/index.d.ts.map +1 -1
- package/dist/i18n/locales/en/bento.json.d.ts +51 -0
- package/dist/i18n/locales/en/common.json.d.ts +7 -1
- package/dist/i18n/locales/en/forms.json.d.ts +15 -1
- package/dist/i18n/locales/en/nav.json.d.ts +3 -1
- package/dist/i18n/locales/pt/bento.json.d.ts +51 -0
- package/dist/i18n/locales/pt/common.json.d.ts +7 -1
- package/dist/i18n/locales/pt/forms.json.d.ts +15 -1
- package/dist/i18n/locales/pt/nav.json.d.ts +3 -1
- package/dist/i18n-DoNdMLEd.cjs +1 -0
- package/dist/{i18n-C94rDRaM.js → i18n-DuNITbWa.js} +155 -27
- package/dist/{i18n.cjs.js → i18n.cjs} +1 -1
- package/dist/i18n.es.js +1 -1
- package/dist/index.cjs +1 -0
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +512 -770
- package/dist/lib/axios.d.ts.map +1 -1
- package/dist/lib/export-xlsx.d.ts +7 -1
- package/dist/lib/export-xlsx.d.ts.map +1 -1
- package/dist/lib/react-markers.d.ts +17 -0
- package/dist/lib/react-markers.d.ts.map +1 -0
- package/dist/lib/utils.d.ts +22 -0
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/loading-provider-1mgM91iY.cjs +1 -0
- package/dist/loading-provider-CMnOuvdR.js +224 -0
- package/dist/preset.css +103 -3
- package/dist/products-DL_YYXkV.cjs +1 -0
- package/dist/products-Du9KB6Xl.js +9 -0
- package/dist/{chunk-CMqjfN_6.cjs → rolldown-runtime-BocRIvOZ.cjs} +1 -1
- package/dist/router.cjs +1 -0
- package/dist/router.es.js +361 -558
- package/dist/user.context-kPAqKN4o.js +512 -0
- package/dist/user.context-r50nSWER.cjs +1 -0
- package/dist/viglet-design-system.css +1 -1
- package/dist/vite/boot-loader.d.ts +14 -4
- package/dist/vite/boot-loader.d.ts.map +1 -1
- package/dist/{vite.cjs.js → vite.cjs} +8 -8
- package/dist/vite.es.js +29 -16
- package/package.json +67 -23
- package/scripts/check-duplicates.mjs +198 -0
- package/dist/breadcrumb.context-BF0x4--Z.cjs +0 -7
- package/dist/breadcrumb.context-CCiYXxir.js +0 -1501
- package/dist/floating-formulas-bg.cjs.js +0 -1
- package/dist/i18n-CmYeG6uh.cjs +0 -1
- package/dist/index.cjs.js +0 -1
- package/dist/router.cjs.js +0 -1
|
@@ -0,0 +1,579 @@
|
|
|
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);
|
|
48
|
+
return t.charAt(0).toUpperCase() + t.slice(1);
|
|
49
|
+
}, x = {
|
|
50
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
51
|
+
width: 24,
|
|
52
|
+
height: 24,
|
|
53
|
+
viewBox: "0 0 24 24",
|
|
54
|
+
fill: "none",
|
|
55
|
+
stroke: "currentColor",
|
|
56
|
+
strokeWidth: 2,
|
|
57
|
+
strokeLinecap: "round",
|
|
58
|
+
strokeLinejoin: "round"
|
|
59
|
+
}, S = (e) => {
|
|
60
|
+
for (let t in e) if (t.startsWith("aria-") || t === "role" || t === "title") return !0;
|
|
61
|
+
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", {
|
|
65
|
+
ref: l,
|
|
66
|
+
...x,
|
|
67
|
+
width: t ?? u ?? x.width,
|
|
68
|
+
height: t ?? u ?? x.height,
|
|
69
|
+
stroke: e ?? p,
|
|
70
|
+
strokeWidth: h,
|
|
71
|
+
className: y("lucide", m, a),
|
|
72
|
+
...!o && !S(c) && { "aria-hidden": "true" },
|
|
73
|
+
...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, {
|
|
77
|
+
ref: a,
|
|
78
|
+
iconNode: t,
|
|
79
|
+
className: y(`lucide-${te(b(e))}`, `lucide-${e}`, n),
|
|
80
|
+
...i
|
|
81
|
+
}));
|
|
82
|
+
return n.displayName = b(e), n;
|
|
83
|
+
}, D = E("check", [["path", {
|
|
84
|
+
d: "M20 6 9 17l-5-5",
|
|
85
|
+
key: "1gmf2c"
|
|
86
|
+
}]]), O = E("chevron-right", [["path", {
|
|
87
|
+
d: "m9 18 6-6-6-6",
|
|
88
|
+
key: "mthhwq"
|
|
89
|
+
}]]), re = E("circle", [["circle", {
|
|
90
|
+
cx: "12",
|
|
91
|
+
cy: "12",
|
|
92
|
+
r: "10",
|
|
93
|
+
key: "1mglay"
|
|
94
|
+
}]]), ie = E("globe", [
|
|
95
|
+
["circle", {
|
|
96
|
+
cx: "12",
|
|
97
|
+
cy: "12",
|
|
98
|
+
r: "10",
|
|
99
|
+
key: "1mglay"
|
|
100
|
+
}],
|
|
101
|
+
["path", {
|
|
102
|
+
d: "M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",
|
|
103
|
+
key: "13o1zl"
|
|
104
|
+
}],
|
|
105
|
+
["path", {
|
|
106
|
+
d: "M2 12h20",
|
|
107
|
+
key: "9i4pu4"
|
|
108
|
+
}]
|
|
109
|
+
]), k = E("x", [["path", {
|
|
110
|
+
d: "M18 6 6 18",
|
|
111
|
+
key: "1bl5f8"
|
|
112
|
+
}], ["path", {
|
|
113
|
+
d: "m6 6 12 12",
|
|
114
|
+
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", {
|
|
116
|
+
variants: { variant: {
|
|
117
|
+
default: "border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90",
|
|
118
|
+
secondary: "border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90",
|
|
119
|
+
destructive: "border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60",
|
|
120
|
+
outline: "text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground"
|
|
121
|
+
} },
|
|
122
|
+
defaultVariants: { variant: "default" }
|
|
123
|
+
});
|
|
124
|
+
function j({ className: e, variant: t, asChild: n = !1, ...r }) {
|
|
125
|
+
return /* @__PURE__ */ c(n ? u : "span", {
|
|
126
|
+
"data-slot": "badge",
|
|
127
|
+
className: h(A({ variant: t }), e),
|
|
128
|
+
...r
|
|
129
|
+
});
|
|
130
|
+
}
|
|
131
|
+
//#endregion
|
|
132
|
+
//#region src/components/ui/dialog.tsx
|
|
133
|
+
function M({ ...e }) {
|
|
134
|
+
return /* @__PURE__ */ c(f.Root, {
|
|
135
|
+
"data-slot": "dialog",
|
|
136
|
+
...e
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
function N({ ...e }) {
|
|
140
|
+
return /* @__PURE__ */ c(f.Trigger, {
|
|
141
|
+
"data-slot": "dialog-trigger",
|
|
142
|
+
...e
|
|
143
|
+
});
|
|
144
|
+
}
|
|
145
|
+
function P({ ...e }) {
|
|
146
|
+
return /* @__PURE__ */ c(f.Portal, {
|
|
147
|
+
"data-slot": "dialog-portal",
|
|
148
|
+
...e
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
function F({ ...e }) {
|
|
152
|
+
return /* @__PURE__ */ c(f.Close, {
|
|
153
|
+
"data-slot": "dialog-close",
|
|
154
|
+
...e
|
|
155
|
+
});
|
|
156
|
+
}
|
|
157
|
+
function I({ className: e, ...t }) {
|
|
158
|
+
return /* @__PURE__ */ c(f.Overlay, {
|
|
159
|
+
"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),
|
|
161
|
+
...t
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
function L({ className: e, children: t, showCloseButton: n = !0, ...r }) {
|
|
165
|
+
return /* @__PURE__ */ l(P, {
|
|
166
|
+
"data-slot": "dialog-portal",
|
|
167
|
+
children: [/* @__PURE__ */ c(I, {}), /* @__PURE__ */ l(f.Content, {
|
|
168
|
+
"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, {
|
|
172
|
+
"data-slot": "dialog-close",
|
|
173
|
+
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", {
|
|
175
|
+
className: "sr-only",
|
|
176
|
+
children: "Close"
|
|
177
|
+
})]
|
|
178
|
+
})]
|
|
179
|
+
})]
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
function R({ className: e, ...t }) {
|
|
183
|
+
return /* @__PURE__ */ c("div", {
|
|
184
|
+
"data-slot": "dialog-header",
|
|
185
|
+
className: h("flex flex-col gap-2 text-center sm:text-left", e),
|
|
186
|
+
...t
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
function z({ className: e, ...t }) {
|
|
190
|
+
return /* @__PURE__ */ c("div", {
|
|
191
|
+
"data-slot": "dialog-footer",
|
|
192
|
+
className: h("flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", e),
|
|
193
|
+
...t
|
|
194
|
+
});
|
|
195
|
+
}
|
|
196
|
+
function B({ className: e, ...t }) {
|
|
197
|
+
return /* @__PURE__ */ c(f.Title, {
|
|
198
|
+
"data-slot": "dialog-title",
|
|
199
|
+
className: h("text-lg leading-none font-semibold", e),
|
|
200
|
+
...t
|
|
201
|
+
});
|
|
202
|
+
}
|
|
203
|
+
function V({ className: e, ...t }) {
|
|
204
|
+
return /* @__PURE__ */ c(f.Description, {
|
|
205
|
+
"data-slot": "dialog-description",
|
|
206
|
+
className: h("text-muted-foreground text-sm", e),
|
|
207
|
+
...t
|
|
208
|
+
});
|
|
209
|
+
}
|
|
210
|
+
//#endregion
|
|
211
|
+
//#region src/components/ui/dropdown-menu.tsx
|
|
212
|
+
function H({ ...e }) {
|
|
213
|
+
return /* @__PURE__ */ c(p.Root, {
|
|
214
|
+
"data-slot": "dropdown-menu",
|
|
215
|
+
...e
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
function U({ ...e }) {
|
|
219
|
+
return /* @__PURE__ */ c(p.Portal, {
|
|
220
|
+
"data-slot": "dropdown-menu-portal",
|
|
221
|
+
...e
|
|
222
|
+
});
|
|
223
|
+
}
|
|
224
|
+
function W({ ...e }) {
|
|
225
|
+
return /* @__PURE__ */ c(p.Trigger, {
|
|
226
|
+
"data-slot": "dropdown-menu-trigger",
|
|
227
|
+
...e
|
|
228
|
+
});
|
|
229
|
+
}
|
|
230
|
+
function G({ className: e, sideOffset: t = 4, ...n }) {
|
|
231
|
+
return /* @__PURE__ */ c(p.Portal, { children: /* @__PURE__ */ c(p.Content, {
|
|
232
|
+
"data-slot": "dropdown-menu-content",
|
|
233
|
+
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
|
|
236
|
+
}) });
|
|
237
|
+
}
|
|
238
|
+
function K({ ...e }) {
|
|
239
|
+
return /* @__PURE__ */ c(p.Group, {
|
|
240
|
+
"data-slot": "dropdown-menu-group",
|
|
241
|
+
...e
|
|
242
|
+
});
|
|
243
|
+
}
|
|
244
|
+
function q({ className: e, inset: t, variant: n = "default", ...r }) {
|
|
245
|
+
return /* @__PURE__ */ c(p.Item, {
|
|
246
|
+
"data-slot": "dropdown-menu-item",
|
|
247
|
+
"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
|
|
251
|
+
});
|
|
252
|
+
}
|
|
253
|
+
function J({ className: e, children: t, checked: n, ...r }) {
|
|
254
|
+
return /* @__PURE__ */ l(p.CheckboxItem, {
|
|
255
|
+
"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", {
|
|
260
|
+
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" }) })
|
|
262
|
+
}), t]
|
|
263
|
+
});
|
|
264
|
+
}
|
|
265
|
+
function ae({ ...e }) {
|
|
266
|
+
return /* @__PURE__ */ c(p.RadioGroup, {
|
|
267
|
+
"data-slot": "dropdown-menu-radio-group",
|
|
268
|
+
...e
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
function oe({ className: e, children: t, ...n }) {
|
|
272
|
+
return /* @__PURE__ */ l(p.RadioItem, {
|
|
273
|
+
"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", {
|
|
277
|
+
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" }) })
|
|
279
|
+
}), t]
|
|
280
|
+
});
|
|
281
|
+
}
|
|
282
|
+
function se({ className: e, inset: t, ...n }) {
|
|
283
|
+
return /* @__PURE__ */ c(p.Label, {
|
|
284
|
+
"data-slot": "dropdown-menu-label",
|
|
285
|
+
"data-inset": t,
|
|
286
|
+
className: h("px-2 py-1.5 text-sm font-medium data-[inset]:pl-8", e),
|
|
287
|
+
...n
|
|
288
|
+
});
|
|
289
|
+
}
|
|
290
|
+
function ce({ className: e, ...t }) {
|
|
291
|
+
return /* @__PURE__ */ c(p.Separator, {
|
|
292
|
+
"data-slot": "dropdown-menu-separator",
|
|
293
|
+
className: h("bg-border -mx-1 my-1 h-px", e),
|
|
294
|
+
...t
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
function le({ className: e, ...t }) {
|
|
298
|
+
return /* @__PURE__ */ c("span", {
|
|
299
|
+
"data-slot": "dropdown-menu-shortcut",
|
|
300
|
+
className: h("text-muted-foreground ml-auto text-xs tracking-widest", e),
|
|
301
|
+
...t
|
|
302
|
+
});
|
|
303
|
+
}
|
|
304
|
+
function ue({ ...e }) {
|
|
305
|
+
return /* @__PURE__ */ c(p.Sub, {
|
|
306
|
+
"data-slot": "dropdown-menu-sub",
|
|
307
|
+
...e
|
|
308
|
+
});
|
|
309
|
+
}
|
|
310
|
+
function de({ className: e, inset: t, children: n, ...r }) {
|
|
311
|
+
return /* @__PURE__ */ l(p.SubTrigger, {
|
|
312
|
+
"data-slot": "dropdown-menu-sub-trigger",
|
|
313
|
+
"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" })]
|
|
317
|
+
});
|
|
318
|
+
}
|
|
319
|
+
function fe({ className: e, ...t }) {
|
|
320
|
+
return /* @__PURE__ */ c(p.SubContent, {
|
|
321
|
+
"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),
|
|
323
|
+
...t
|
|
324
|
+
});
|
|
325
|
+
}
|
|
326
|
+
//#endregion
|
|
327
|
+
//#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]", {
|
|
329
|
+
variants: {
|
|
330
|
+
variant: {
|
|
331
|
+
default: [
|
|
332
|
+
"bg-gradient-to-r from-[var(--vg-accent-fill-from)] to-[var(--vg-accent-fill-to)] text-white",
|
|
333
|
+
"shadow-md shadow-[var(--vg-accent-shadow)]",
|
|
334
|
+
"hover:from-[var(--vg-accent-fill-from-hover)] hover:to-[var(--vg-accent-fill-to-hover)]",
|
|
335
|
+
"hover:shadow-lg hover:shadow-[var(--vg-accent-shadow-hover)]",
|
|
336
|
+
"focus-visible:ring-[var(--vg-accent-ring)]"
|
|
337
|
+
].join(" "),
|
|
338
|
+
secondary: [
|
|
339
|
+
"bg-gradient-to-r from-slate-600 to-slate-700 text-white",
|
|
340
|
+
"shadow-md shadow-slate-500/25",
|
|
341
|
+
"hover:from-slate-700 hover:to-slate-800",
|
|
342
|
+
"hover:shadow-lg hover:shadow-slate-500/30",
|
|
343
|
+
"focus-visible:ring-slate-500/50",
|
|
344
|
+
"dark:from-slate-500 dark:to-slate-600",
|
|
345
|
+
"dark:shadow-slate-500/20",
|
|
346
|
+
"dark:hover:from-slate-600 dark:hover:to-slate-700",
|
|
347
|
+
"dark:hover:shadow-slate-500/25",
|
|
348
|
+
"dark:focus-visible:ring-slate-400/50"
|
|
349
|
+
].join(" "),
|
|
350
|
+
destructive: [
|
|
351
|
+
"bg-gradient-to-r from-red-600 to-rose-600 text-white",
|
|
352
|
+
"shadow-md shadow-red-500/25",
|
|
353
|
+
"hover:from-red-700 hover:to-rose-700",
|
|
354
|
+
"hover:shadow-lg hover:shadow-red-500/30",
|
|
355
|
+
"focus-visible:ring-red-500/50",
|
|
356
|
+
"dark:from-red-500 dark:to-rose-500",
|
|
357
|
+
"dark:shadow-red-500/20",
|
|
358
|
+
"dark:hover:from-red-600 dark:hover:to-rose-600",
|
|
359
|
+
"dark:hover:shadow-red-500/25",
|
|
360
|
+
"dark:focus-visible:ring-red-400/50"
|
|
361
|
+
].join(" "),
|
|
362
|
+
success: [
|
|
363
|
+
"bg-gradient-to-r from-emerald-600 to-teal-600 text-white",
|
|
364
|
+
"shadow-md shadow-emerald-500/25",
|
|
365
|
+
"hover:from-emerald-700 hover:to-teal-700",
|
|
366
|
+
"hover:shadow-lg hover:shadow-emerald-500/30",
|
|
367
|
+
"focus-visible:ring-emerald-500/50",
|
|
368
|
+
"dark:from-emerald-500 dark:to-teal-500",
|
|
369
|
+
"dark:shadow-emerald-500/20",
|
|
370
|
+
"dark:hover:from-emerald-600 dark:hover:to-teal-600",
|
|
371
|
+
"dark:hover:shadow-emerald-500/25",
|
|
372
|
+
"dark:focus-visible:ring-emerald-400/50"
|
|
373
|
+
].join(" "),
|
|
374
|
+
outline: [
|
|
375
|
+
"border-2 border-[var(--vg-accent-fg)] text-[var(--vg-accent-fg)] bg-transparent",
|
|
376
|
+
"hover:bg-[var(--vg-accent-fill-from)] hover:text-white",
|
|
377
|
+
"shadow-sm hover:shadow-md hover:shadow-[var(--vg-accent-shadow)]",
|
|
378
|
+
"focus-visible:ring-[var(--vg-accent-ring)]"
|
|
379
|
+
].join(" "),
|
|
380
|
+
ghost: [
|
|
381
|
+
"bg-transparent text-[var(--vg-accent-fg)]",
|
|
382
|
+
"hover:bg-[var(--vg-accent-surface)]",
|
|
383
|
+
"focus-visible:ring-[var(--vg-accent-ring)]"
|
|
384
|
+
].join(" ")
|
|
385
|
+
},
|
|
386
|
+
size: {
|
|
387
|
+
default: "h-11 px-5 py-2 has-[>svg]:px-4",
|
|
388
|
+
sm: "h-9 rounded-md gap-1.5 px-4 has-[>svg]:px-3 text-xs",
|
|
389
|
+
lg: "h-12 rounded-md px-8 has-[>svg]:px-6 text-base",
|
|
390
|
+
icon: "size-11",
|
|
391
|
+
"icon-sm": "size-9",
|
|
392
|
+
"icon-lg": "size-12"
|
|
393
|
+
}
|
|
394
|
+
},
|
|
395
|
+
defaultVariants: {
|
|
396
|
+
variant: "default",
|
|
397
|
+
size: "default"
|
|
398
|
+
}
|
|
399
|
+
});
|
|
400
|
+
function pe({ className: e, variant: t, size: n, asChild: r = !1, loading: i = !1, ...a }) {
|
|
401
|
+
let o = h(Y({
|
|
402
|
+
variant: t,
|
|
403
|
+
size: n,
|
|
404
|
+
className: e
|
|
405
|
+
}));
|
|
406
|
+
return /* @__PURE__ */ c(r ? u : "button", {
|
|
407
|
+
"data-slot": "gradient-button",
|
|
408
|
+
className: o,
|
|
409
|
+
disabled: i || a.disabled,
|
|
410
|
+
...a,
|
|
411
|
+
children: i ? /* @__PURE__ */ l(s, { children: [/* @__PURE__ */ l("svg", {
|
|
412
|
+
className: "size-4 animate-spin",
|
|
413
|
+
xmlns: "http://www.w3.org/2000/svg",
|
|
414
|
+
fill: "none",
|
|
415
|
+
viewBox: "0 0 24 24",
|
|
416
|
+
children: [/* @__PURE__ */ c("circle", {
|
|
417
|
+
className: "opacity-25",
|
|
418
|
+
cx: "12",
|
|
419
|
+
cy: "12",
|
|
420
|
+
r: "10",
|
|
421
|
+
stroke: "currentColor",
|
|
422
|
+
strokeWidth: "4"
|
|
423
|
+
}), /* @__PURE__ */ c("path", {
|
|
424
|
+
className: "opacity-75",
|
|
425
|
+
fill: "currentColor",
|
|
426
|
+
d: "M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"
|
|
427
|
+
})]
|
|
428
|
+
}), a.children] }) : a.children
|
|
429
|
+
});
|
|
430
|
+
}
|
|
431
|
+
//#endregion
|
|
432
|
+
//#region src/components/ui/input.tsx
|
|
433
|
+
function me({ className: e, type: t, ...n }) {
|
|
434
|
+
return /* @__PURE__ */ c("input", {
|
|
435
|
+
type: t,
|
|
436
|
+
"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
|
|
439
|
+
});
|
|
440
|
+
}
|
|
441
|
+
//#endregion
|
|
442
|
+
//#region src/components/ui/skeleton.tsx
|
|
443
|
+
function he({ className: e, ...t }) {
|
|
444
|
+
return /* @__PURE__ */ c("div", {
|
|
445
|
+
"data-slot": "skeleton",
|
|
446
|
+
className: h("bg-accent animate-pulse rounded-md", e),
|
|
447
|
+
...t
|
|
448
|
+
});
|
|
449
|
+
}
|
|
450
|
+
//#endregion
|
|
451
|
+
//#region src/components/ui/tooltip.tsx
|
|
452
|
+
function X({ delayDuration: e = 0, ...t }) {
|
|
453
|
+
return /* @__PURE__ */ c(m.Provider, {
|
|
454
|
+
"data-slot": "tooltip-provider",
|
|
455
|
+
delayDuration: e,
|
|
456
|
+
...t
|
|
457
|
+
});
|
|
458
|
+
}
|
|
459
|
+
function Z({ ...e }) {
|
|
460
|
+
return /* @__PURE__ */ c(X, { children: /* @__PURE__ */ c(m.Root, {
|
|
461
|
+
"data-slot": "tooltip",
|
|
462
|
+
...e
|
|
463
|
+
}) });
|
|
464
|
+
}
|
|
465
|
+
function ge({ ...e }) {
|
|
466
|
+
return /* @__PURE__ */ c(m.Trigger, {
|
|
467
|
+
"data-slot": "tooltip-trigger",
|
|
468
|
+
...e
|
|
469
|
+
});
|
|
470
|
+
}
|
|
471
|
+
function _e({ className: e, sideOffset: t = 0, children: n, ...r }) {
|
|
472
|
+
return /* @__PURE__ */ c(m.Portal, { children: /* @__PURE__ */ l(m.Content, {
|
|
473
|
+
"data-slot": "tooltip-content",
|
|
474
|
+
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]" })]
|
|
478
|
+
}) });
|
|
479
|
+
}
|
|
480
|
+
//#endregion
|
|
481
|
+
//#region src/components/badge-colorful.tsx
|
|
482
|
+
var ve = ({ text: e, href: t, onClick: n, className: r, prefix: i }) => {
|
|
483
|
+
if (!e) return null;
|
|
484
|
+
let a = v(e);
|
|
485
|
+
return /* @__PURE__ */ l(s, { children: [/* @__PURE__ */ l(j, {
|
|
486
|
+
variant: "outline",
|
|
487
|
+
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 ?? ""}`,
|
|
490
|
+
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)"
|
|
500
|
+
},
|
|
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 = {
|
|
513
|
+
AR: "SA",
|
|
514
|
+
BN: "BD",
|
|
515
|
+
CA: "ES",
|
|
516
|
+
CS: "CZ",
|
|
517
|
+
DA: "DK",
|
|
518
|
+
DE: "DE",
|
|
519
|
+
EL: "GR",
|
|
520
|
+
EN: "US",
|
|
521
|
+
EU: "ES",
|
|
522
|
+
FA: "IR",
|
|
523
|
+
FI: "FI",
|
|
524
|
+
FIL: "PH",
|
|
525
|
+
FR: "FR",
|
|
526
|
+
GA: "IE",
|
|
527
|
+
GL: "ES",
|
|
528
|
+
GU: "IN",
|
|
529
|
+
HE: "IL",
|
|
530
|
+
HI: "IN",
|
|
531
|
+
HU: "HU",
|
|
532
|
+
ID: "ID",
|
|
533
|
+
IT: "IT",
|
|
534
|
+
JA: "JP",
|
|
535
|
+
KN: "IN",
|
|
536
|
+
KO: "KR",
|
|
537
|
+
MR: "IN",
|
|
538
|
+
MSA: "MY",
|
|
539
|
+
NL: "NL",
|
|
540
|
+
NO: "NO",
|
|
541
|
+
PL: "PL",
|
|
542
|
+
PT: "BR",
|
|
543
|
+
RO: "RO",
|
|
544
|
+
RU: "RU",
|
|
545
|
+
ES: "ES",
|
|
546
|
+
SV: "SE",
|
|
547
|
+
TA: "IN",
|
|
548
|
+
TH: "TH",
|
|
549
|
+
TR: "TR",
|
|
550
|
+
UK: "UA",
|
|
551
|
+
UR: "PK",
|
|
552
|
+
VI: "VN",
|
|
553
|
+
ZH: "CN"
|
|
554
|
+
}, 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, {
|
|
565
|
+
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),
|
|
571
|
+
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", {
|
|
573
|
+
className: "text-xs font-bold uppercase tracking-tight leading-none",
|
|
574
|
+
children: e
|
|
575
|
+
})]
|
|
576
|
+
});
|
|
577
|
+
};
|
|
578
|
+
//#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 };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
const e=require("./rolldown-runtime-BocRIvOZ.cjs");let t=require("clsx"),n=require("tailwind-merge"),r=require("react");r=e.t(r,1);let i=require("react/jsx-runtime"),a=require("@radix-ui/react-slot"),o=require("class-variance-authority"),s=require("@radix-ui/react-dialog");s=e.t(s,1);let c=require("@radix-ui/react-dropdown-menu");c=e.t(c,1);let l=require("@radix-ui/react-tooltip");l=e.t(l,1);function u(...e){return(0,n.twMerge)((0,t.clsx)(e))}function d(e){let[t=``,n]=e.trim().replaceAll(`-`,`_`).toUpperCase().split(`_`);return{language:t,region:n?.length===2?n:null}}var f=(e,t=10)=>{if(!e||e.length<=t)return e??``;if(t<3)return`...`.slice(0,Math.max(t,0));let n=t-3,r=Math.ceil(n/2),i=Math.floor(n/2);return e.substring(0,r)+`...`+e.substring(e.length-i)},p=e=>{let{region:t}=d(e);return t?t.split(``).map(e=>String.fromCodePoint((e.codePointAt(0)??0)+127397)).join(``):`🌐`},m=e=>{let t=0;for(let n=0;n<e.length;n++)t=(e.codePointAt(n)??0)+((t<<5)-t);let n=Math.abs(t)%360;return{h:n,light:{bg:`hsl(${n}, 70%, 95%)`,text:`hsl(${n}, 70%, 20%)`,border:`hsl(${n}, 70%, 90%)`},dark:{bg:`hsl(${n}, 50%, 15%)`,text:`hsl(${n}, 80%, 80%)`,border:`hsl(${n}, 50%, 25%)`}}},h=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),g=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()),_=e=>{let t=ee(e);return t.charAt(0).toUpperCase()+t.slice(1)},v={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},y=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},b=(0,r.createContext)({}),te=()=>(0,r.useContext)(b),ne=(0,r.forwardRef)(({color:e,size:t,strokeWidth:n,absoluteStrokeWidth:i,className:a=``,children:o,iconNode:s,...c},l)=>{let{size:u=24,strokeWidth:d=2,absoluteStrokeWidth:f=!1,color:p=`currentColor`,className:m=``}=te()??{},g=i??f?Number(n??d)*24/Number(t??u):n??d;return(0,r.createElement)(`svg`,{ref:l,...v,width:t??u??v.width,height:t??u??v.height,stroke:e??p,strokeWidth:g,className:h(`lucide`,m,a),...!o&&!y(c)&&{"aria-hidden":`true`},...c},[...s.map(([e,t])=>(0,r.createElement)(e,t)),...Array.isArray(o)?o:[o]])}),x=(e,t)=>{let n=(0,r.forwardRef)(({className:n,...i},a)=>(0,r.createElement)(ne,{ref:a,iconNode:t,className:h(`lucide-${g(_(e))}`,`lucide-${e}`,n),...i}));return n.displayName=_(e),n},S=x(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),C=x(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),re=x(`circle`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}]]),ie=x(`globe`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]),w=x(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),T=(0,o.cva)(`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`,{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90`,secondary:`border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90`,destructive:`border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60`,outline:`text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground`}},defaultVariants:{variant:`default`}});function E({className:e,variant:t,asChild:n=!1,...r}){return(0,i.jsx)(n?a.Slot:`span`,{"data-slot":`badge`,className:u(T({variant:t}),e),...r})}function D({...e}){return(0,i.jsx)(s.Root,{"data-slot":`dialog`,...e})}function O({...e}){return(0,i.jsx)(s.Trigger,{"data-slot":`dialog-trigger`,...e})}function k({...e}){return(0,i.jsx)(s.Portal,{"data-slot":`dialog-portal`,...e})}function A({...e}){return(0,i.jsx)(s.Close,{"data-slot":`dialog-close`,...e})}function j({className:e,...t}){return(0,i.jsx)(s.Overlay,{"data-slot":`dialog-overlay`,className:u(`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),...t})}function M({className:e,children:t,showCloseButton:n=!0,...r}){return(0,i.jsxs)(k,{"data-slot":`dialog-portal`,children:[(0,i.jsx)(j,{}),(0,i.jsxs)(s.Content,{"data-slot":`dialog-content`,className:u(`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),...r,children:[t,n&&(0,i.jsxs)(s.Close,{"data-slot":`dialog-close`,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`,children:[(0,i.jsx)(w,{}),(0,i.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]})}function N({className:e,...t}){return(0,i.jsx)(`div`,{"data-slot":`dialog-header`,className:u(`flex flex-col gap-2 text-center sm:text-left`,e),...t})}function P({className:e,...t}){return(0,i.jsx)(`div`,{"data-slot":`dialog-footer`,className:u(`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`,e),...t})}function F({className:e,...t}){return(0,i.jsx)(s.Title,{"data-slot":`dialog-title`,className:u(`text-lg leading-none font-semibold`,e),...t})}function I({className:e,...t}){return(0,i.jsx)(s.Description,{"data-slot":`dialog-description`,className:u(`text-muted-foreground text-sm`,e),...t})}function L({...e}){return(0,i.jsx)(c.Root,{"data-slot":`dropdown-menu`,...e})}function R({...e}){return(0,i.jsx)(c.Portal,{"data-slot":`dropdown-menu-portal`,...e})}function z({...e}){return(0,i.jsx)(c.Trigger,{"data-slot":`dropdown-menu-trigger`,...e})}function B({className:e,sideOffset:t=4,...n}){return(0,i.jsx)(c.Portal,{children:(0,i.jsx)(c.Content,{"data-slot":`dropdown-menu-content`,sideOffset:t,className:u(`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),...n})})}function V({...e}){return(0,i.jsx)(c.Group,{"data-slot":`dropdown-menu-group`,...e})}function H({className:e,inset:t,variant:n=`default`,...r}){return(0,i.jsx)(c.Item,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:u(`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),...r})}function ae({className:e,children:t,checked:n,...r}){return(0,i.jsxs)(c.CheckboxItem,{"data-slot":`dropdown-menu-checkbox-item`,className:u(`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),checked:n,...r,children:[(0,i.jsx)(`span`,{className:`pointer-events-none absolute left-2 flex size-3.5 items-center justify-center`,children:(0,i.jsx)(c.ItemIndicator,{children:(0,i.jsx)(S,{className:`size-4`})})}),t]})}function U({...e}){return(0,i.jsx)(c.RadioGroup,{"data-slot":`dropdown-menu-radio-group`,...e})}function W({className:e,children:t,...n}){return(0,i.jsxs)(c.RadioItem,{"data-slot":`dropdown-menu-radio-item`,className:u(`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),...n,children:[(0,i.jsx)(`span`,{className:`pointer-events-none absolute left-2 flex size-3.5 items-center justify-center`,children:(0,i.jsx)(c.ItemIndicator,{children:(0,i.jsx)(re,{className:`size-2 fill-current`})})}),t]})}function G({className:e,inset:t,...n}){return(0,i.jsx)(c.Label,{"data-slot":`dropdown-menu-label`,"data-inset":t,className:u(`px-2 py-1.5 text-sm font-medium data-[inset]:pl-8`,e),...n})}function K({className:e,...t}){return(0,i.jsx)(c.Separator,{"data-slot":`dropdown-menu-separator`,className:u(`bg-border -mx-1 my-1 h-px`,e),...t})}function q({className:e,...t}){return(0,i.jsx)(`span`,{"data-slot":`dropdown-menu-shortcut`,className:u(`text-muted-foreground ml-auto text-xs tracking-widest`,e),...t})}function J({...e}){return(0,i.jsx)(c.Sub,{"data-slot":`dropdown-menu-sub`,...e})}function oe({className:e,inset:t,children:n,...r}){return(0,i.jsxs)(c.SubTrigger,{"data-slot":`dropdown-menu-sub-trigger`,"data-inset":t,className:u(`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),...r,children:[n,(0,i.jsx)(C,{className:`ml-auto size-4`})]})}function se({className:e,...t}){return(0,i.jsx)(c.SubContent,{"data-slot":`dropdown-menu-sub-content`,className:u(`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),...t})}var Y=(0,o.cva)(`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]`,{variants:{variant:{default:[`bg-gradient-to-r from-[var(--vg-accent-fill-from)] to-[var(--vg-accent-fill-to)] text-white`,`shadow-md shadow-[var(--vg-accent-shadow)]`,`hover:from-[var(--vg-accent-fill-from-hover)] hover:to-[var(--vg-accent-fill-to-hover)]`,`hover:shadow-lg hover:shadow-[var(--vg-accent-shadow-hover)]`,`focus-visible:ring-[var(--vg-accent-ring)]`].join(` `),secondary:[`bg-gradient-to-r from-slate-600 to-slate-700 text-white`,`shadow-md shadow-slate-500/25`,`hover:from-slate-700 hover:to-slate-800`,`hover:shadow-lg hover:shadow-slate-500/30`,`focus-visible:ring-slate-500/50`,`dark:from-slate-500 dark:to-slate-600`,`dark:shadow-slate-500/20`,`dark:hover:from-slate-600 dark:hover:to-slate-700`,`dark:hover:shadow-slate-500/25`,`dark:focus-visible:ring-slate-400/50`].join(` `),destructive:[`bg-gradient-to-r from-red-600 to-rose-600 text-white`,`shadow-md shadow-red-500/25`,`hover:from-red-700 hover:to-rose-700`,`hover:shadow-lg hover:shadow-red-500/30`,`focus-visible:ring-red-500/50`,`dark:from-red-500 dark:to-rose-500`,`dark:shadow-red-500/20`,`dark:hover:from-red-600 dark:hover:to-rose-600`,`dark:hover:shadow-red-500/25`,`dark:focus-visible:ring-red-400/50`].join(` `),success:[`bg-gradient-to-r from-emerald-600 to-teal-600 text-white`,`shadow-md shadow-emerald-500/25`,`hover:from-emerald-700 hover:to-teal-700`,`hover:shadow-lg hover:shadow-emerald-500/30`,`focus-visible:ring-emerald-500/50`,`dark:from-emerald-500 dark:to-teal-500`,`dark:shadow-emerald-500/20`,`dark:hover:from-emerald-600 dark:hover:to-teal-600`,`dark:hover:shadow-emerald-500/25`,`dark:focus-visible:ring-emerald-400/50`].join(` `),outline:[`border-2 border-[var(--vg-accent-fg)] text-[var(--vg-accent-fg)] bg-transparent`,`hover:bg-[var(--vg-accent-fill-from)] hover:text-white`,`shadow-sm hover:shadow-md hover:shadow-[var(--vg-accent-shadow)]`,`focus-visible:ring-[var(--vg-accent-ring)]`].join(` `),ghost:[`bg-transparent text-[var(--vg-accent-fg)]`,`hover:bg-[var(--vg-accent-surface)]`,`focus-visible:ring-[var(--vg-accent-ring)]`].join(` `)},size:{default:`h-11 px-5 py-2 has-[>svg]:px-4`,sm:`h-9 rounded-md gap-1.5 px-4 has-[>svg]:px-3 text-xs`,lg:`h-12 rounded-md px-8 has-[>svg]:px-6 text-base`,icon:`size-11`,"icon-sm":`size-9`,"icon-lg":`size-12`}},defaultVariants:{variant:`default`,size:`default`}});function ce({className:e,variant:t,size:n,asChild:r=!1,loading:o=!1,...s}){let c=u(Y({variant:t,size:n,className:e}));return(0,i.jsx)(r?a.Slot:`button`,{"data-slot":`gradient-button`,className:c,disabled:o||s.disabled,...s,children:o?(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)(`svg`,{className:`size-4 animate-spin`,xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,children:[(0,i.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,i.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z`})]}),s.children]}):s.children})}function le({className:e,type:t,...n}){return(0,i.jsx)(`input`,{type:t,"data-slot":`input`,className:u(`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),...n})}function X({className:e,...t}){return(0,i.jsx)(`div`,{"data-slot":`skeleton`,className:u(`bg-accent animate-pulse rounded-md`,e),...t})}function Z({delayDuration:e=0,...t}){return(0,i.jsx)(l.Provider,{"data-slot":`tooltip-provider`,delayDuration:e,...t})}function ue({...e}){return(0,i.jsx)(Z,{children:(0,i.jsx)(l.Root,{"data-slot":`tooltip`,...e})})}function de({...e}){return(0,i.jsx)(l.Trigger,{"data-slot":`tooltip-trigger`,...e})}function fe({className:e,sideOffset:t=0,children:n,...r}){return(0,i.jsx)(l.Portal,{children:(0,i.jsxs)(l.Content,{"data-slot":`tooltip-content`,sideOffset:t,className:u(`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),...r,children:[n,(0,i.jsx)(l.Arrow,{className:`bg-foreground fill-foreground z-50 size-2.5 translate-y-[calc(-50%_-_2px)] rotate-45 rounded-[2px]`})]})})}var pe=({text:e,href:t,onClick:n,className:r,prefix:a})=>{if(!e)return null;let o=m(e);return(0,i.jsxs)(i.Fragment,{children:[(0,i.jsxs)(E,{variant:`outline`,title:e,onClick:()=>t&&n?.(t),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??``}`,style:{"--badge-bg":o.light.bg,"--badge-text":o.light.text,"--badge-border":o.light.border,"--badge-dark-bg":o.dark.bg,"--badge-dark-text":o.dark.text,"--badge-dark-border":o.dark.border,backgroundColor:`var(--badge-bg)`,color:`var(--badge-text)`,borderColor:`var(--badge-border)`},children:[a,(0,i.jsx)(`span`,{dangerouslySetInnerHTML:{__html:e}})]}),(0,i.jsx)(`style`,{suppressHydrationWarning:!0,children:`
|
|
2
|
+
.dark [title="${e}"] {
|
|
3
|
+
background-color: var(--badge-dark-bg) !important;
|
|
4
|
+
color: var(--badge-dark-text) !important;
|
|
5
|
+
border-color: var(--badge-dark-border) !important;
|
|
6
|
+
}
|
|
7
|
+
`})]})},me={AR:`SA`,BN:`BD`,CA:`ES`,CS:`CZ`,DA:`DK`,DE:`DE`,EL:`GR`,EN:`US`,EU:`ES`,FA:`IR`,FI:`FI`,FIL:`PH`,FR:`FR`,GA:`IE`,GL:`ES`,GU:`IN`,HE:`IL`,HI:`IN`,HU:`HU`,ID:`ID`,IT:`IT`,JA:`JP`,KN:`IN`,KO:`KR`,MR:`IN`,MSA:`MY`,NL:`NL`,NO:`NO`,PL:`PL`,PT:`BR`,RO:`RO`,RU:`RU`,ES:`ES`,SV:`SE`,TA:`IN`,TH:`TH`,TR:`TR`,UK:`UA`,UR:`PK`,VI:`VN`,ZH:`CN`},Q={UK:`GB`};function $(e){if(!e)return``;let{language:t,region:n}=d(e);if(n)return(Q[n]||n).toLowerCase();let r=me[t];return r?r.toLowerCase():(Q[t]||t).toLowerCase()}var he=({locale:e,className:t})=>{let n=$(e),[a,o]=(0,r.useState)(null),s=a===n;return(0,i.jsxs)(E,{variant:`secondary`,className:`font-mono gap-2 py-1 pl-1 pr-2 w-fit ${t}`,children:[!s&&n?(0,i.jsx)(`img`,{src:`https://flagcdn.com/w40/${n}.png`,alt:n,onError:()=>o(n),className:`w-5 h-3.5 object-cover rounded-sm shadow-sm`}):(0,i.jsx)(ie,{className:`w-3.5 h-3.5 text-muted-foreground`}),(0,i.jsx)(`span`,{className:`text-xs font-bold uppercase tracking-tight leading-none`,children:e})]})};Object.defineProperty(exports,"A",{enumerable:!0,get:function(){return I}}),Object.defineProperty(exports,"B",{enumerable:!0,get:function(){return C}}),Object.defineProperty(exports,"C",{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,"D",{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,"E",{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,"F",{enumerable:!0,get:function(){return F}}),Object.defineProperty(exports,"G",{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,"H",{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,"I",{enumerable:!0,get:function(){return O}}),Object.defineProperty(exports,"K",{enumerable:!0,get:function(){return f}}),Object.defineProperty(exports,"L",{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,"M",{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,"N",{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,"O",{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,"P",{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,"R",{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,"S",{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,"T",{enumerable:!0,get:function(){return oe}}),Object.defineProperty(exports,"U",{enumerable:!0,get:function(){return u}}),Object.defineProperty(exports,"V",{enumerable:!0,get:function(){return S}}),Object.defineProperty(exports,"W",{enumerable:!0,get:function(){return p}}),Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return G}}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return fe}}),Object.defineProperty(exports,"b",{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return X}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return Y}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return L}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return H}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return ue}}),Object.defineProperty(exports,"j",{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,"k",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return le}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return $}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return Z}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return ae}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return pe}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return de}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return he}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return ce}}),Object.defineProperty(exports,"v",{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,"w",{enumerable:!0,get:function(){return se}}),Object.defineProperty(exports,"x",{enumerable:!0,get:function(){return K}}),Object.defineProperty(exports,"y",{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,"z",{enumerable:!0,get:function(){return w}});
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { ComponentType } from 'react';
|
|
2
|
+
export type BentoActionTone = "default" | "destructive";
|
|
3
|
+
export interface BentoActionsMenuItem {
|
|
4
|
+
/** Visible label inside the menu. */
|
|
5
|
+
label: string;
|
|
6
|
+
/** Icon shown to the left of the label. */
|
|
7
|
+
icon: ComponentType<{
|
|
8
|
+
size?: number;
|
|
9
|
+
}>;
|
|
10
|
+
/**
|
|
11
|
+
* "destructive" tints the item rose (delete / remove / clear).
|
|
12
|
+
* "default" inherits muted-foreground tone.
|
|
13
|
+
*/
|
|
14
|
+
tone?: BentoActionTone;
|
|
15
|
+
/** Disable the item without removing it from the list. */
|
|
16
|
+
disabled?: boolean;
|
|
17
|
+
/** Triggered when the menu item is selected. */
|
|
18
|
+
onSelect: () => void;
|
|
19
|
+
}
|
|
20
|
+
export interface BentoActionsMenuProps {
|
|
21
|
+
/**
|
|
22
|
+
* Actions to render. Order is preserved; render-time filtering
|
|
23
|
+
* (e.g. "only show Delete for non-new entities") should happen
|
|
24
|
+
* upstream.
|
|
25
|
+
*/
|
|
26
|
+
actions: BentoActionsMenuItem[];
|
|
27
|
+
/** Override the trigger's accessible label. Defaults to "More actions". */
|
|
28
|
+
triggerLabel?: string;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* "More actions" menu for Bento detail pages — the canonical place
|
|
32
|
+
* for destructive or secondary actions (Delete, Duplicate, Export).
|
|
33
|
+
*
|
|
34
|
+
* Renders a frosted `⋮` button as the trigger and the bento-styled
|
|
35
|
+
* dropdown surface for the menu, so it visually matches
|
|
36
|
+
* BentoUserMenu and other dropdowns in the bento language.
|
|
37
|
+
*
|
|
38
|
+
* Hidden by default behind a single icon — keeps the hero's primary
|
|
39
|
+
* content uncluttered while keeping every action one click away.
|
|
40
|
+
*/
|
|
41
|
+
export declare function BentoActionsMenu({ actions, triggerLabel }: Readonly<BentoActionsMenuProps>): import("react").JSX.Element | null;
|
|
42
|
+
//# sourceMappingURL=bento-actions-menu.d.ts.map
|