@viglet/viglet-design-system 2026.3.2 → 2026.3.4
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 +334 -8
- 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 +1502 -0
- package/dist/breadcrumb.context-CGqjI0-U.js +914 -0
- package/dist/breadcrumb.context-DYeZEC65.cjs +1 -0
- package/dist/components/app-switcher.d.ts +2 -0
- package/dist/components/app-switcher.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.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/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 +39 -3
- package/dist/components/router/internal.sidebar.d.ts.map +1 -1
- package/dist/components/router/loading-provider.d.ts +6 -1
- package/dist/components/router/loading-provider.d.ts.map +1 -1
- package/dist/components/router/nav-main.d.ts +10 -0
- package/dist/components/router/nav-main.d.ts.map +1 -1
- package/dist/components/router/nav-user.d.ts +13 -0
- 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 +31 -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.map +1 -1
- package/dist/components/theme-provider.d.ts +37 -2
- package/dist/components/theme-provider.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.d.ts +2 -2
- package/dist/components/ui/form.d.ts.map +1 -1
- package/dist/components/ui/gradient-button.d.ts.map +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/section-card.d.ts +3 -3
- package/dist/components/ui/section-card.d.ts.map +1 -1
- package/dist/components/ui/sidebar.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/viglet-app-switcher.d.ts +3 -0
- package/dist/components/viglet-app-switcher.d.ts.map +1 -1
- package/dist/contexts/user.context.d.ts +24 -0
- 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 +84 -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 +1 -0
- package/dist/i18n.es.js +2 -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 +493 -750
- 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/{rolldown-runtime-CMqjfN_6.cjs → rolldown-runtime-BocRIvOZ.cjs} +1 -1
- package/dist/router.cjs +1 -0
- package/dist/router.es.js +334 -504
- 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 +21 -7
- 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 +66 -22
- package/scripts/check-duplicates.mjs +198 -0
- package/dist/breadcrumb.context-C7VCfh49.js +0 -1501
- package/dist/breadcrumb.context-Td6Tjc_z.cjs +0 -7
- package/dist/floating-formulas-bg.cjs.js +0 -1
- package/dist/i18n-DN_2YzjB.cjs +0 -1
- package/dist/i18n.cjs.js +0 -1
- package/dist/index.cjs.js +0 -1
- package/dist/router.cjs.js +0 -1
package/dist/router.es.js
CHANGED
|
@@ -1,197 +1,28 @@
|
|
|
1
|
-
|
|
1
|
+
"use client";
|
|
2
|
+
import { E as e, _ as t, f as n, g as r, h as i, l as a, m as o, u as s, x as c } from "./badge-locale-BxI9TwkE.js";
|
|
3
|
+
import { $ as l, A as u, D as d, H as f, K as p, M as m, Q as h, S as g, U as _, W as v, Z as y, _ as b, b as x, c as S, ct as C, d as w, dt as T, ft as E, h as D, ht as O, i as ee, j as k, l as te, lt as ne, m as A, mt as re, n as ie, ot as ae, p as j, pt as M, ut as oe, v as N, x as P } from "./breadcrumb.context-CGqjI0-U.js";
|
|
4
|
+
import { i as F, n as se, r as ce, t as le } from "./loading-provider-CMnOuvdR.js";
|
|
2
5
|
import I, { useState as L } from "react";
|
|
3
6
|
import { Fragment as R, jsx as z, jsxs as B } from "react/jsx-runtime";
|
|
4
|
-
import {
|
|
5
|
-
import { useTranslation as
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import {
|
|
9
|
-
//#region src/
|
|
10
|
-
function
|
|
11
|
-
return
|
|
12
|
-
to: r,
|
|
13
|
-
"data-slot": "gradient-button",
|
|
14
|
-
className: te(ue({
|
|
15
|
-
variant: t,
|
|
16
|
-
size: n,
|
|
17
|
-
className: e
|
|
18
|
-
})),
|
|
19
|
-
onClick: (e) => {
|
|
20
|
-
let t = typeof r == "string" ? r : r.pathname;
|
|
21
|
-
t && globalThis.location.pathname === t && globalThis.location.reload(), i && i(e);
|
|
22
|
-
},
|
|
23
|
-
children: a
|
|
24
|
-
});
|
|
7
|
+
import { IconChevronLeft as ue, IconChevronRight as de, IconDotsVertical as V, IconDownload as fe, IconLogout as pe, IconPlus as H, IconSearch as U, IconUserCircle as me } from "@tabler/icons-react";
|
|
8
|
+
import { useTranslation as W } from "react-i18next";
|
|
9
|
+
import { Icon as he } from "@iconify/react";
|
|
10
|
+
import { NavLink as G, Outlet as K, useLocation as q, useNavigate as J } from "react-router-dom";
|
|
11
|
+
import { columnFilteringFeature as ge, createCoreRowModel as _e, createFilteredRowModel as ve, createPaginatedRowModel as ye, createSortedRowModel as be, globalFilteringFeature as xe, rowPaginationFeature as Se, rowSortingFeature as Ce, useTable as we } from "@tanstack/react-table";
|
|
12
|
+
//#region src/lib/react-markers.ts
|
|
13
|
+
function Y(e) {
|
|
14
|
+
return typeof e.type == "string" ? void 0 : e.type.displayName;
|
|
25
15
|
}
|
|
26
16
|
//#endregion
|
|
27
|
-
//#region src/components/router/
|
|
28
|
-
var
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
className: "relative",
|
|
37
|
-
children: [/* @__PURE__ */ z("div", { className: "absolute inset-0 rounded-2xl bg-gradient-to-br from-blue-500/20 to-indigo-500/20 blur-xl animate-pulse" }), /* @__PURE__ */ z("div", {
|
|
38
|
-
className: "relative inline-flex h-16 w-16 items-center justify-center rounded-2xl bg-gradient-to-br from-blue-600 to-indigo-600 shadow-lg shadow-blue-500/25 ring-4 ring-blue-500/10",
|
|
39
|
-
children: /* @__PURE__ */ z(e, {
|
|
40
|
-
className: "text-white",
|
|
41
|
-
size: 30
|
|
42
|
-
})
|
|
43
|
-
})]
|
|
44
|
-
}),
|
|
45
|
-
/* @__PURE__ */ B("div", {
|
|
46
|
-
className: "space-y-2",
|
|
47
|
-
children: [/* @__PURE__ */ z("h2", {
|
|
48
|
-
className: "text-xl font-semibold tracking-tight",
|
|
49
|
-
children: t
|
|
50
|
-
}), /* @__PURE__ */ z("p", {
|
|
51
|
-
className: "text-sm text-muted-foreground leading-relaxed max-w-xs mx-auto",
|
|
52
|
-
children: n
|
|
53
|
-
})]
|
|
54
|
-
}),
|
|
55
|
-
r && /* @__PURE__ */ z(X, {
|
|
56
|
-
size: "lg",
|
|
57
|
-
to: r,
|
|
58
|
-
children: i
|
|
59
|
-
})
|
|
60
|
-
]
|
|
61
|
-
})
|
|
62
|
-
})
|
|
63
|
-
}), Q = ({ feature: e, name: t, onDelete: r, open: a, setOpen: o, trigger: s, blockedBy: c, title: l, description: u, confirmLabel: d }) => {
|
|
64
|
-
let m = c && c.length > 0, g = Y(), { t: _ } = G(), [v, b] = L(""), x = v === t;
|
|
65
|
-
function S(e) {
|
|
66
|
-
o(e), e || b("");
|
|
67
|
-
}
|
|
68
|
-
return /* @__PURE__ */ B(y, {
|
|
69
|
-
open: a,
|
|
70
|
-
onOpenChange: S,
|
|
71
|
-
children: [s !== null && /* @__PURE__ */ z(h, {
|
|
72
|
-
asChild: !0,
|
|
73
|
-
children: s ?? /* @__PURE__ */ z(T, {
|
|
74
|
-
variant: "ghost",
|
|
75
|
-
size: "icon-sm",
|
|
76
|
-
children: /* @__PURE__ */ z(W, { className: "size-5!" })
|
|
77
|
-
})
|
|
78
|
-
}), /* @__PURE__ */ z(i, {
|
|
79
|
-
className: "sm:max-w-md",
|
|
80
|
-
children: m ? /* @__PURE__ */ B(R, { children: [
|
|
81
|
-
/* @__PURE__ */ B(n, { children: [
|
|
82
|
-
/* @__PURE__ */ z("div", {
|
|
83
|
-
className: "mx-auto flex h-12 w-12 items-center justify-center rounded-full bg-amber-500/10 ring-1 ring-amber-500/20 mb-2",
|
|
84
|
-
children: /* @__PURE__ */ z(ve, { className: "size-6 text-amber-500" })
|
|
85
|
-
}),
|
|
86
|
-
/* @__PURE__ */ z(f, {
|
|
87
|
-
className: "text-center",
|
|
88
|
-
children: _("dialog.cannotDelete", { feature: e })
|
|
89
|
-
}),
|
|
90
|
-
/* @__PURE__ */ z(p, {
|
|
91
|
-
className: "text-center",
|
|
92
|
-
children: _("dialog.inUse", { name: t })
|
|
93
|
-
})
|
|
94
|
-
] }),
|
|
95
|
-
/* @__PURE__ */ B("div", {
|
|
96
|
-
className: "space-y-3",
|
|
97
|
-
children: [
|
|
98
|
-
/* @__PURE__ */ z("p", {
|
|
99
|
-
className: "text-sm text-muted-foreground",
|
|
100
|
-
children: _("dialog.dependingSites", { feature: e })
|
|
101
|
-
}),
|
|
102
|
-
/* @__PURE__ */ z("div", {
|
|
103
|
-
className: "flex flex-wrap gap-2",
|
|
104
|
-
children: c.map((e) => {
|
|
105
|
-
let t = e.language ? le(e.language) : void 0;
|
|
106
|
-
return /* @__PURE__ */ z(he, {
|
|
107
|
-
text: e.name,
|
|
108
|
-
href: e.href,
|
|
109
|
-
onClick: (e) => {
|
|
110
|
-
o(!1), e && g(e);
|
|
111
|
-
},
|
|
112
|
-
prefix: t ? /* @__PURE__ */ z("img", {
|
|
113
|
-
src: `https://flagcdn.com/w40/${t}.png`,
|
|
114
|
-
alt: e.language,
|
|
115
|
-
className: "w-4 h-3 object-cover rounded-sm"
|
|
116
|
-
}) : void 0
|
|
117
|
-
}, e.id);
|
|
118
|
-
})
|
|
119
|
-
}),
|
|
120
|
-
/* @__PURE__ */ z("p", {
|
|
121
|
-
className: "text-xs text-muted-foreground",
|
|
122
|
-
children: _("dialog.removeDependencies", { feature: e })
|
|
123
|
-
})
|
|
124
|
-
]
|
|
125
|
-
}),
|
|
126
|
-
/* @__PURE__ */ z(O, { children: /* @__PURE__ */ z(T, {
|
|
127
|
-
onClick: () => o(!1),
|
|
128
|
-
variant: "outline",
|
|
129
|
-
className: "w-full",
|
|
130
|
-
children: _("dialog.understood")
|
|
131
|
-
}) })
|
|
132
|
-
] }) : /* @__PURE__ */ B(R, { children: [
|
|
133
|
-
/* @__PURE__ */ B(n, { children: [
|
|
134
|
-
/* @__PURE__ */ z("div", {
|
|
135
|
-
className: "mx-auto flex h-12 w-12 items-center justify-center rounded-full bg-red-500/10 ring-1 ring-red-500/20 mb-2",
|
|
136
|
-
children: /* @__PURE__ */ z(W, { className: "size-6 text-red-500" })
|
|
137
|
-
}),
|
|
138
|
-
/* @__PURE__ */ z(f, {
|
|
139
|
-
className: "text-center",
|
|
140
|
-
children: l ?? _("dialog.deleteFeature", { feature: e })
|
|
141
|
-
}),
|
|
142
|
-
/* @__PURE__ */ z(p, {
|
|
143
|
-
className: "text-center",
|
|
144
|
-
children: u ?? _("dialog.permanentDelete", { name: t })
|
|
145
|
-
})
|
|
146
|
-
] }),
|
|
147
|
-
/* @__PURE__ */ B("div", {
|
|
148
|
-
className: "space-y-2",
|
|
149
|
-
children: [/* @__PURE__ */ B("label", {
|
|
150
|
-
className: "text-sm text-muted-foreground",
|
|
151
|
-
children: [
|
|
152
|
-
_("dialog.typeToConfirm"),
|
|
153
|
-
" ",
|
|
154
|
-
/* @__PURE__ */ z("span", {
|
|
155
|
-
className: "font-mono font-semibold text-foreground bg-muted px-1.5 py-0.5 rounded",
|
|
156
|
-
children: t
|
|
157
|
-
}),
|
|
158
|
-
" ",
|
|
159
|
-
_("dialog.toConfirm")
|
|
160
|
-
]
|
|
161
|
-
}), /* @__PURE__ */ z(j, {
|
|
162
|
-
value: v,
|
|
163
|
-
onChange: (e) => b(e.target.value),
|
|
164
|
-
placeholder: t,
|
|
165
|
-
className: "font-mono text-sm",
|
|
166
|
-
autoFocus: !0
|
|
167
|
-
})]
|
|
168
|
-
}),
|
|
169
|
-
/* @__PURE__ */ B(O, {
|
|
170
|
-
className: "flex-col gap-2 sm:flex-col",
|
|
171
|
-
children: [/* @__PURE__ */ B(T, {
|
|
172
|
-
onClick: r,
|
|
173
|
-
variant: "destructive",
|
|
174
|
-
disabled: !x,
|
|
175
|
-
className: "w-full",
|
|
176
|
-
children: [/* @__PURE__ */ z(W, { className: "size-4" }), d ?? _("dialog.deleteFeature", { feature: e })]
|
|
177
|
-
}), /* @__PURE__ */ z(T, {
|
|
178
|
-
onClick: () => S(!1),
|
|
179
|
-
variant: "ghost",
|
|
180
|
-
className: "w-full",
|
|
181
|
-
children: _("common.cancel")
|
|
182
|
-
})]
|
|
183
|
-
})
|
|
184
|
-
] })
|
|
185
|
-
})]
|
|
186
|
-
});
|
|
187
|
-
}, je = () => null;
|
|
188
|
-
je.displayName = "GridListNewButton";
|
|
189
|
-
var Me = () => null;
|
|
190
|
-
Me.displayName = "GridListAction";
|
|
191
|
-
var Ne = () => null;
|
|
192
|
-
Ne.displayName = "GridListItemAction";
|
|
193
|
-
var Pe = [
|
|
194
|
-
"from-blue-500 to-indigo-500",
|
|
17
|
+
//#region src/components/router/grid.list.tsx
|
|
18
|
+
var X = () => null;
|
|
19
|
+
X.displayName = "GridListNewButton";
|
|
20
|
+
var Z = () => null;
|
|
21
|
+
Z.displayName = "GridListAction";
|
|
22
|
+
var Te = () => null;
|
|
23
|
+
Te.displayName = "GridListItemAction";
|
|
24
|
+
var Ee = [
|
|
25
|
+
"vg-accent-solid",
|
|
195
26
|
"from-emerald-500 to-teal-500",
|
|
196
27
|
"from-violet-500 to-purple-500",
|
|
197
28
|
"from-amber-500 to-orange-500",
|
|
@@ -200,15 +31,24 @@ var Pe = [
|
|
|
200
31
|
"from-fuchsia-500 to-pink-500",
|
|
201
32
|
"from-lime-500 to-emerald-500"
|
|
202
33
|
];
|
|
203
|
-
function
|
|
34
|
+
function De(e) {
|
|
204
35
|
let t = 0;
|
|
205
36
|
for (let n = 0; n < e.length; n++) t = (e.codePointAt(n) ?? 0) + ((t << 5) - t);
|
|
206
|
-
return
|
|
37
|
+
return Ee[Math.abs(t) % Ee.length];
|
|
207
38
|
}
|
|
208
|
-
function
|
|
39
|
+
function Oe(e) {
|
|
209
40
|
return e.split(/[\s\-_]+/).filter(Boolean).slice(0, 2).map((e) => e[0].toUpperCase()).join("");
|
|
210
41
|
}
|
|
211
|
-
var
|
|
42
|
+
var ke = {
|
|
43
|
+
columnFilteringFeature: ge,
|
|
44
|
+
globalFilteringFeature: xe,
|
|
45
|
+
rowPaginationFeature: Se,
|
|
46
|
+
rowSortingFeature: Ce,
|
|
47
|
+
coreRowModel: _e(),
|
|
48
|
+
filteredRowModel: ve(),
|
|
49
|
+
paginatedRowModel: ye(),
|
|
50
|
+
sortedRowModel: be()
|
|
51
|
+
}, Ae = [
|
|
212
52
|
{
|
|
213
53
|
accessorKey: "name",
|
|
214
54
|
header: "Name"
|
|
@@ -221,16 +61,16 @@ var Le = [
|
|
|
221
61
|
accessorKey: "url",
|
|
222
62
|
header: "URL"
|
|
223
63
|
}
|
|
224
|
-
],
|
|
225
|
-
let { t:
|
|
226
|
-
I.Children.forEach(
|
|
64
|
+
], je = Object.assign(({ gridItemList: t, children: i }) => {
|
|
65
|
+
let { t: c } = W(), u = J(), d = [], f = [];
|
|
66
|
+
I.Children.forEach(i, (e) => {
|
|
227
67
|
if (I.isValidElement(e)) {
|
|
228
|
-
if (e
|
|
68
|
+
if (Y(e) === "GridListNewButton") {
|
|
229
69
|
let { to: t, label: n } = e.props;
|
|
230
|
-
|
|
70
|
+
d.push({
|
|
231
71
|
key: `new-${n}`,
|
|
232
|
-
render: () => /* @__PURE__ */ B(
|
|
233
|
-
onClick: () =>
|
|
72
|
+
render: () => /* @__PURE__ */ B(r, {
|
|
73
|
+
onClick: () => u(t),
|
|
234
74
|
children: [
|
|
235
75
|
/* @__PURE__ */ z(H, { className: "size-4 mr-2" }),
|
|
236
76
|
"New ",
|
|
@@ -238,16 +78,16 @@ var Le = [
|
|
|
238
78
|
]
|
|
239
79
|
})
|
|
240
80
|
});
|
|
241
|
-
} else if (e
|
|
81
|
+
} else if (Y(e) === "GridListAction") {
|
|
242
82
|
let { children: t } = e.props;
|
|
243
|
-
|
|
244
|
-
key: `action-${
|
|
83
|
+
d.push({
|
|
84
|
+
key: `action-${d.length}`,
|
|
245
85
|
render: () => /* @__PURE__ */ z(R, { children: t })
|
|
246
86
|
});
|
|
247
|
-
} else if (e
|
|
87
|
+
} else if (Y(e) === "GridListItemAction") {
|
|
248
88
|
let t = e.props;
|
|
249
|
-
|
|
250
|
-
key: `item-action-${
|
|
89
|
+
f.push({
|
|
90
|
+
key: `item-action-${f.length}`,
|
|
251
91
|
icon: t.icon,
|
|
252
92
|
label: t.label,
|
|
253
93
|
onClick: t.onClick,
|
|
@@ -256,26 +96,23 @@ var Le = [
|
|
|
256
96
|
}
|
|
257
97
|
}
|
|
258
98
|
});
|
|
259
|
-
let
|
|
99
|
+
let m = f.length > 0, g = f.filter((e) => e.position === "left"), b = f.filter((e) => e.position === "right"), [x, S] = L({
|
|
260
100
|
pageIndex: 0,
|
|
261
101
|
pageSize: 12
|
|
262
|
-
}), [
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
getPaginationRowModel: De(),
|
|
268
|
-
getSortedRowModel: Oe(),
|
|
269
|
-
getFilteredRowModel: Ee(),
|
|
102
|
+
}), [C, w] = I.useState([]), [T, E] = L(""), D = we({
|
|
103
|
+
features: ke,
|
|
104
|
+
data: t,
|
|
105
|
+
columns: Ae,
|
|
106
|
+
onSortingChange: w,
|
|
270
107
|
state: {
|
|
271
|
-
globalFilter:
|
|
272
|
-
pagination:
|
|
273
|
-
sorting:
|
|
108
|
+
globalFilter: T,
|
|
109
|
+
pagination: x,
|
|
110
|
+
sorting: C
|
|
274
111
|
},
|
|
275
|
-
onGlobalFilterChange:
|
|
112
|
+
onGlobalFilterChange: E,
|
|
276
113
|
getColumnCanGlobalFilter: (e) => e.id === "name" || e.id === "description",
|
|
277
|
-
onPaginationChange:
|
|
278
|
-
}),
|
|
114
|
+
onPaginationChange: S
|
|
115
|
+
}), O = D.getRowModel().rows;
|
|
279
116
|
return /* @__PURE__ */ B("div", {
|
|
280
117
|
className: "px-6",
|
|
281
118
|
children: [
|
|
@@ -284,133 +121,133 @@ var Le = [
|
|
|
284
121
|
children: [
|
|
285
122
|
/* @__PURE__ */ B("div", {
|
|
286
123
|
className: "relative flex-1 max-w-sm",
|
|
287
|
-
children: [/* @__PURE__ */ z(U, { className: "absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground" }), /* @__PURE__ */ z(
|
|
288
|
-
placeholder:
|
|
289
|
-
value:
|
|
290
|
-
onChange: (e) =>
|
|
124
|
+
children: [/* @__PURE__ */ z(U, { className: "absolute left-3 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground" }), /* @__PURE__ */ z(a, {
|
|
125
|
+
placeholder: c("forms.common.search"),
|
|
126
|
+
value: T ?? "",
|
|
127
|
+
onChange: (e) => E(e.target.value),
|
|
291
128
|
className: "pl-9"
|
|
292
129
|
})]
|
|
293
130
|
}),
|
|
294
131
|
/* @__PURE__ */ B("span", {
|
|
295
132
|
className: "text-sm text-muted-foreground whitespace-nowrap",
|
|
296
133
|
children: [
|
|
297
|
-
|
|
134
|
+
D.getFilteredRowModel().rows.length,
|
|
298
135
|
" ",
|
|
299
|
-
|
|
136
|
+
D.getFilteredRowModel().rows.length === 1 ? c("forms.common.item") : c("forms.common.items")
|
|
300
137
|
]
|
|
301
138
|
}),
|
|
302
|
-
|
|
139
|
+
d.length > 0 && /* @__PURE__ */ z("div", {
|
|
303
140
|
className: "ml-auto",
|
|
304
|
-
children: /* @__PURE__ */ B(
|
|
141
|
+
children: /* @__PURE__ */ B(n, { children: [/* @__PURE__ */ z(e, {
|
|
305
142
|
asChild: !0,
|
|
306
|
-
children: /* @__PURE__ */ B(
|
|
143
|
+
children: /* @__PURE__ */ B(s, {
|
|
307
144
|
variant: "outline",
|
|
308
145
|
size: "sm",
|
|
309
146
|
className: "gap-1.5",
|
|
310
147
|
children: [/* @__PURE__ */ z(V, { className: "size-4" }), /* @__PURE__ */ z("span", {
|
|
311
148
|
className: "hidden sm:inline",
|
|
312
|
-
children:
|
|
149
|
+
children: c("forms.common.actions")
|
|
313
150
|
})]
|
|
314
151
|
})
|
|
315
|
-
}), /* @__PURE__ */ z(
|
|
152
|
+
}), /* @__PURE__ */ z(o, {
|
|
316
153
|
align: "end",
|
|
317
|
-
children:
|
|
154
|
+
children: d.map((e) => /* @__PURE__ */ z(I.Fragment, { children: e.render() }, e.key))
|
|
318
155
|
})] })
|
|
319
156
|
})
|
|
320
157
|
]
|
|
321
158
|
}),
|
|
322
|
-
|
|
159
|
+
O.length > 0 ? /* @__PURE__ */ z("div", {
|
|
323
160
|
className: "grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-4",
|
|
324
|
-
children:
|
|
325
|
-
let t = e.getValue("name"),
|
|
326
|
-
className: "relative overflow-hidden p-0 h-full transition-all duration-200 hover:shadow-lg hover:shadow-
|
|
327
|
-
children: [/* @__PURE__ */ z("div", { className: `h-1.5 bg-linear-to-r ${
|
|
161
|
+
children: O.map((e) => {
|
|
162
|
+
let t = e.getValue("name"), n = e.getValue("description"), r = e.getValue("url"), i = e.original.icon ?? void 0, a = De(t), o = Oe(t), s = /* @__PURE__ */ B(l, {
|
|
163
|
+
className: "relative overflow-hidden p-0 h-full transition-all duration-200 hover:shadow-lg hover:shadow-[var(--vg-accent-surface)] hover:-translate-y-0.5 border-border/60 hover:border-[var(--vg-accent-line)]",
|
|
164
|
+
children: [/* @__PURE__ */ z("div", { className: `h-1.5 bg-linear-to-r ${a} opacity-70 group-hover:opacity-100 transition-opacity` }), /* @__PURE__ */ B("div", {
|
|
328
165
|
className: "p-4 flex items-start gap-3",
|
|
329
166
|
children: [
|
|
330
|
-
|
|
167
|
+
m && g.length > 0 && /* @__PURE__ */ z("div", {
|
|
331
168
|
className: "flex items-center gap-1 shrink-0 mt-0.5",
|
|
332
|
-
children:
|
|
169
|
+
children: g.map((t) => /* @__PURE__ */ z("button", {
|
|
333
170
|
type: "button",
|
|
334
171
|
title: t.label,
|
|
335
172
|
onClick: () => t.onClick(e.original),
|
|
336
|
-
className: "inline-flex items-center justify-center rounded-md p-1.5 text-muted-foreground hover:text-
|
|
173
|
+
className: "inline-flex items-center justify-center rounded-md p-1.5 text-muted-foreground hover:text-[var(--vg-accent-fg)] hover:bg-[var(--vg-accent-surface)] transition-colors cursor-pointer",
|
|
337
174
|
children: t.icon
|
|
338
175
|
}, t.key))
|
|
339
176
|
}),
|
|
340
177
|
/* @__PURE__ */ z("div", {
|
|
341
|
-
className: `shrink-0 w-10 h-10 rounded-lg bg-linear-to-br ${
|
|
342
|
-
children:
|
|
343
|
-
icon:
|
|
178
|
+
className: `shrink-0 w-10 h-10 rounded-lg bg-linear-to-br ${a} flex items-center justify-center text-white text-sm font-semibold shadow-sm`,
|
|
179
|
+
children: i ? /* @__PURE__ */ z(he, {
|
|
180
|
+
icon: i,
|
|
344
181
|
className: "size-5"
|
|
345
|
-
}) :
|
|
182
|
+
}) : o
|
|
346
183
|
}),
|
|
347
184
|
/* @__PURE__ */ B("div", {
|
|
348
185
|
className: "flex-1 min-w-0",
|
|
349
186
|
children: [/* @__PURE__ */ z("h3", {
|
|
350
|
-
className: "font-medium text-sm truncate group-hover:text-
|
|
187
|
+
className: "font-medium text-sm truncate group-hover:text-[var(--vg-accent-fg)] transition-colors",
|
|
351
188
|
children: t
|
|
352
|
-
}),
|
|
189
|
+
}), n ? /* @__PURE__ */ z("p", {
|
|
353
190
|
className: "text-xs text-muted-foreground mt-1 line-clamp-2 leading-relaxed",
|
|
354
|
-
children:
|
|
191
|
+
children: n
|
|
355
192
|
}) : /* @__PURE__ */ z("p", {
|
|
356
193
|
className: "text-xs text-muted-foreground/50 mt-1 italic",
|
|
357
|
-
children:
|
|
194
|
+
children: c("forms.common.noDescription")
|
|
358
195
|
})]
|
|
359
196
|
}),
|
|
360
|
-
|
|
197
|
+
m ? b.length > 0 && /* @__PURE__ */ z("div", {
|
|
361
198
|
className: "flex items-center gap-1 shrink-0 mt-0.5",
|
|
362
|
-
children:
|
|
199
|
+
children: b.map((t) => /* @__PURE__ */ z("button", {
|
|
363
200
|
type: "button",
|
|
364
201
|
title: t.label,
|
|
365
202
|
onClick: () => t.onClick(e.original),
|
|
366
|
-
className: "inline-flex items-center justify-center rounded-md p-1.5 text-muted-foreground hover:text-
|
|
203
|
+
className: "inline-flex items-center justify-center rounded-md p-1.5 text-muted-foreground hover:text-[var(--vg-accent-fg)] hover:bg-[var(--vg-accent-surface)] transition-colors cursor-pointer",
|
|
367
204
|
children: t.icon
|
|
368
205
|
}, t.key))
|
|
369
|
-
}) : /* @__PURE__ */ z(
|
|
206
|
+
}) : /* @__PURE__ */ z(de, { className: "h-4 w-4 text-muted-foreground/40 group-hover:text-[var(--vg-accent-fg)] transition-all group-hover:translate-x-0.5 mt-0.5 shrink-0" })
|
|
370
207
|
]
|
|
371
208
|
})]
|
|
372
209
|
});
|
|
373
|
-
return
|
|
210
|
+
return m ? /* @__PURE__ */ z("div", {
|
|
374
211
|
className: "group",
|
|
375
|
-
children:
|
|
376
|
-
}, e.id) : /* @__PURE__ */ z(
|
|
377
|
-
to:
|
|
212
|
+
children: s
|
|
213
|
+
}, e.id) : /* @__PURE__ */ z(G, {
|
|
214
|
+
to: r,
|
|
378
215
|
className: "group",
|
|
379
|
-
children:
|
|
216
|
+
children: s
|
|
380
217
|
}, e.id);
|
|
381
218
|
})
|
|
382
|
-
}) : /* @__PURE__ */ z(
|
|
219
|
+
}) : /* @__PURE__ */ z(l, {
|
|
383
220
|
className: "p-8",
|
|
384
221
|
children: /* @__PURE__ */ B("div", {
|
|
385
222
|
className: "text-center text-muted-foreground",
|
|
386
223
|
children: [/* @__PURE__ */ z(U, { className: "h-8 w-8 mx-auto mb-2 opacity-40" }), /* @__PURE__ */ z("p", {
|
|
387
224
|
className: "text-sm",
|
|
388
|
-
children:
|
|
225
|
+
children: c("forms.common.noResults")
|
|
389
226
|
})]
|
|
390
227
|
})
|
|
391
228
|
}),
|
|
392
|
-
|
|
229
|
+
D.getPageCount() > 1 && /* @__PURE__ */ B("div", {
|
|
393
230
|
className: "flex items-center justify-end space-x-2 mt-4",
|
|
394
231
|
children: [
|
|
395
232
|
/* @__PURE__ */ B("div", {
|
|
396
233
|
className: "flex items-center space-x-2",
|
|
397
234
|
children: [/* @__PURE__ */ z("p", {
|
|
398
235
|
className: "text-sm text-muted-foreground",
|
|
399
|
-
children:
|
|
400
|
-
}), /* @__PURE__ */ B(
|
|
401
|
-
value: `${
|
|
402
|
-
onValueChange: (e) =>
|
|
403
|
-
children: [/* @__PURE__ */ z(
|
|
236
|
+
children: c("forms.common.perPage")
|
|
237
|
+
}), /* @__PURE__ */ B(_, {
|
|
238
|
+
value: `${D.state.pagination.pageSize}`,
|
|
239
|
+
onValueChange: (e) => D.setPageSize(Number(e)),
|
|
240
|
+
children: [/* @__PURE__ */ z(y, {
|
|
404
241
|
className: "h-8 w-17.5",
|
|
405
|
-
children: /* @__PURE__ */ z(
|
|
406
|
-
}), /* @__PURE__ */ z(
|
|
242
|
+
children: /* @__PURE__ */ z(h, { placeholder: D.state.pagination.pageSize })
|
|
243
|
+
}), /* @__PURE__ */ z(v, {
|
|
407
244
|
side: "top",
|
|
408
245
|
children: [
|
|
409
246
|
12,
|
|
410
247
|
24,
|
|
411
248
|
36,
|
|
412
249
|
48
|
|
413
|
-
].map((e) => /* @__PURE__ */ z(
|
|
250
|
+
].map((e) => /* @__PURE__ */ z(p, {
|
|
414
251
|
value: `${e}`,
|
|
415
252
|
children: e
|
|
416
253
|
}, e))
|
|
@@ -419,25 +256,25 @@ var Le = [
|
|
|
419
256
|
}),
|
|
420
257
|
/* @__PURE__ */ z("div", {
|
|
421
258
|
className: "flex w-25 items-center justify-center text-sm font-medium",
|
|
422
|
-
children:
|
|
423
|
-
index:
|
|
424
|
-
count:
|
|
259
|
+
children: c("forms.common.pageOf", {
|
|
260
|
+
index: D.state.pagination.pageIndex + 1,
|
|
261
|
+
count: D.getPageCount()
|
|
425
262
|
})
|
|
426
263
|
}),
|
|
427
264
|
/* @__PURE__ */ B("div", {
|
|
428
265
|
className: "flex items-center space-x-2",
|
|
429
|
-
children: [/* @__PURE__ */ z(
|
|
266
|
+
children: [/* @__PURE__ */ z(s, {
|
|
430
267
|
variant: "outline",
|
|
431
268
|
size: "sm",
|
|
432
|
-
onClick: () =>
|
|
433
|
-
disabled: !
|
|
269
|
+
onClick: () => D.previousPage(),
|
|
270
|
+
disabled: !D.getCanPreviousPage(),
|
|
434
271
|
className: "h-8 w-8 p-0",
|
|
435
272
|
children: /* @__PURE__ */ z("span", { children: "<" })
|
|
436
|
-
}), /* @__PURE__ */ z(
|
|
273
|
+
}), /* @__PURE__ */ z(s, {
|
|
437
274
|
variant: "outline",
|
|
438
275
|
size: "sm",
|
|
439
|
-
onClick: () =>
|
|
440
|
-
disabled: !
|
|
276
|
+
onClick: () => D.nextPage(),
|
|
277
|
+
disabled: !D.getCanNextPage(),
|
|
441
278
|
className: "h-8 w-8 p-0",
|
|
442
279
|
children: /* @__PURE__ */ z("span", { children: ">" })
|
|
443
280
|
})]
|
|
@@ -447,118 +284,97 @@ var Le = [
|
|
|
447
284
|
]
|
|
448
285
|
});
|
|
449
286
|
}, {
|
|
450
|
-
NewButton:
|
|
451
|
-
Action:
|
|
452
|
-
ItemAction:
|
|
453
|
-
}),
|
|
287
|
+
NewButton: X,
|
|
288
|
+
Action: Z,
|
|
289
|
+
ItemAction: Te
|
|
290
|
+
}), Me = (e) => !e.url && (e.children?.length ?? 0) > 0, Ne = (e, t, n) => {
|
|
291
|
+
if (e.url) {
|
|
292
|
+
let r = (t ?? "") + e.url;
|
|
293
|
+
if (n === r || n.startsWith(r + "/")) return !0;
|
|
294
|
+
}
|
|
295
|
+
return e.children?.some((e) => Ne(e, t, n)) ?? !1;
|
|
296
|
+
}, Pe = (e) => (e ?? 0).toLocaleString(), Q = (e, t, n, r, i) => e.map((e) => /* @__PURE__ */ B(g, { children: [/* @__PURE__ */ z(P, {
|
|
454
297
|
tooltip: e.title,
|
|
455
|
-
isActive:
|
|
298
|
+
isActive: Ne(e, t, n),
|
|
456
299
|
asChild: !0,
|
|
457
|
-
children: /* @__PURE__ */ B(
|
|
458
|
-
to: (t ?? "") + e.url,
|
|
300
|
+
children: /* @__PURE__ */ B(G, {
|
|
301
|
+
to: (t ?? "") + (e.url ?? ""),
|
|
459
302
|
onClick: i,
|
|
460
303
|
children: [e.icon && /* @__PURE__ */ z(e.icon, { className: "size-5!" }), /* @__PURE__ */ z("span", { children: e.title })]
|
|
461
304
|
})
|
|
462
|
-
}), !r && e.children && e.children.length > 0 && /* @__PURE__ */ z(
|
|
305
|
+
}), !r && e.children && e.children.length > 0 && /* @__PURE__ */ z(N, {
|
|
463
306
|
className: "ml-4",
|
|
464
|
-
children:
|
|
465
|
-
})] }, e.title)),
|
|
466
|
-
let { t: d } =
|
|
467
|
-
return /* @__PURE__ */ B(
|
|
307
|
+
children: Q(e.children, t, n, r, i)
|
|
308
|
+
})] }, e.title)), $ = ({ icon: e, feature: t, name: n, urlBase: r, isNew: i, data: a, onDelete: o, onExport: c, open: l, setOpen: u }) => {
|
|
309
|
+
let { t: d } = W(), f = q().pathname, { state: p, isMobile: m, setOpenMobile: h } = k(), _ = p === "collapsed", v = m ? () => h(!1) : void 0;
|
|
310
|
+
return /* @__PURE__ */ B(S, {
|
|
468
311
|
collapsible: "icon",
|
|
469
312
|
variant: "inset",
|
|
470
313
|
position: "absolute",
|
|
471
|
-
children: [/* @__PURE__ */ z(
|
|
314
|
+
children: [/* @__PURE__ */ z(D, {
|
|
472
315
|
className: "pb-3",
|
|
473
|
-
children: /* @__PURE__ */ z(
|
|
316
|
+
children: /* @__PURE__ */ z(N, { children: /* @__PURE__ */ B(g, {
|
|
474
317
|
className: "flex items-center",
|
|
475
|
-
children: [/* @__PURE__ */ z(
|
|
318
|
+
children: [/* @__PURE__ */ z(P, {
|
|
476
319
|
asChild: !0,
|
|
477
320
|
className: "data-[slot=sidebar-menu-button]:p-1.5!",
|
|
478
|
-
children: /* @__PURE__ */ B(
|
|
479
|
-
to:
|
|
321
|
+
children: /* @__PURE__ */ B(G, {
|
|
322
|
+
to: r ?? "#",
|
|
480
323
|
className: "flex items-center gap-2.5",
|
|
481
324
|
children: [/* @__PURE__ */ z("div", {
|
|
482
|
-
className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-lg
|
|
483
|
-
children: /* @__PURE__ */ z(e, { className: "size-5!
|
|
325
|
+
className: "flex h-8 w-8 shrink-0 items-center justify-center rounded-lg vg-accent-chip ring-1",
|
|
326
|
+
children: /* @__PURE__ */ z(e, { className: "size-5! vg-accent-text" })
|
|
484
327
|
}), !_ && /* @__PURE__ */ z("span", {
|
|
485
328
|
className: "text-sm font-semibold whitespace-nowrap truncate",
|
|
486
|
-
children:
|
|
329
|
+
children: i ? d("sidebar.new", { feature: t }) : n
|
|
487
330
|
})]
|
|
488
331
|
})
|
|
489
332
|
}), !_ && /* @__PURE__ */ B("div", {
|
|
490
333
|
className: "flex items-center gap-1 mr-auto",
|
|
491
|
-
children: [!
|
|
334
|
+
children: [!i && c && /* @__PURE__ */ z(s, {
|
|
492
335
|
variant: "ghost",
|
|
493
336
|
size: "icon-sm",
|
|
494
337
|
onClick: c,
|
|
495
|
-
children: /* @__PURE__ */ z(
|
|
496
|
-
}), !
|
|
338
|
+
children: /* @__PURE__ */ z(fe, { className: "size-5!" })
|
|
339
|
+
}), !i && o && u && /* @__PURE__ */ z(F, {
|
|
497
340
|
feature: t,
|
|
498
341
|
name: n,
|
|
499
|
-
onDelete:
|
|
342
|
+
onDelete: o,
|
|
500
343
|
open: l ?? !1,
|
|
501
344
|
setOpen: u
|
|
502
345
|
})]
|
|
503
346
|
})]
|
|
504
347
|
}) })
|
|
505
|
-
}), /* @__PURE__ */ B(
|
|
348
|
+
}), /* @__PURE__ */ B(te, { children: [a?.counts && a.counts.length > 0 && /* @__PURE__ */ B(w, { children: [/* @__PURE__ */ z(A, { children: d("sidebar.indexing") }), /* @__PURE__ */ z(j, {
|
|
506
349
|
className: "flex flex-col gap-2 pt-4",
|
|
507
|
-
children: /* @__PURE__ */ z(
|
|
508
|
-
tooltip: e.title + ": " +
|
|
350
|
+
children: /* @__PURE__ */ z(N, { children: a.counts.map((e) => /* @__PURE__ */ B(g, { children: [/* @__PURE__ */ B(P, {
|
|
351
|
+
tooltip: e.title + ": " + Pe(e.count),
|
|
509
352
|
variant: "outline",
|
|
510
353
|
children: [e.icon && /* @__PURE__ */ z(e.icon, { className: "size-5!" }), /* @__PURE__ */ z("span", { children: e.title })]
|
|
511
|
-
}), !_ && /* @__PURE__ */ z(
|
|
512
|
-
})] }),
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
354
|
+
}), !_ && /* @__PURE__ */ z(x, { children: Pe(e.count) })] }, e.title)) })
|
|
355
|
+
})] }), (() => {
|
|
356
|
+
let e = a?.navMain ?? [], n = i ? e.filter((e) => e.showOnNew ?? e.url === "/detail") : e, o = n.filter((e) => !Me(e)), s = n.filter(Me);
|
|
357
|
+
return /* @__PURE__ */ B(R, { children: [/* @__PURE__ */ B(w, { children: [/* @__PURE__ */ z(A, { children: t }), /* @__PURE__ */ z(j, {
|
|
358
|
+
className: "flex flex-col gap-2",
|
|
359
|
+
children: /* @__PURE__ */ z(N, { children: Q(o, r, f, _, v) })
|
|
360
|
+
})] }), s.map((e) => /* @__PURE__ */ B(w, { children: [/* @__PURE__ */ z(A, { children: e.title }), /* @__PURE__ */ z(j, {
|
|
361
|
+
className: "flex flex-col gap-2",
|
|
362
|
+
children: /* @__PURE__ */ z(N, { children: Q(e.children ?? [], r, f, _, v) })
|
|
363
|
+
})] }, e.title))] });
|
|
364
|
+
})()] })]
|
|
516
365
|
});
|
|
517
|
-
}, He = ({ checkIsNotUndefined: e, error: t, tryAgainUrl: n, children: r }) => {
|
|
518
|
-
let { t: i } = G();
|
|
519
|
-
return t ? /* @__PURE__ */ z(Z, {
|
|
520
|
-
icon: ye,
|
|
521
|
-
title: i("common.errorLoading"),
|
|
522
|
-
description: t,
|
|
523
|
-
buttonText: i("common.tryAgain"),
|
|
524
|
-
urlNew: n
|
|
525
|
-
}) : e === void 0 && !t ? /* @__PURE__ */ B("div", {
|
|
526
|
-
className: "space-y-6 py-8 px-6 animate-pulse",
|
|
527
|
-
children: [
|
|
528
|
-
/* @__PURE__ */ z(b, { className: "h-8 w-1/3 rounded-md" }),
|
|
529
|
-
/* @__PURE__ */ z("div", {
|
|
530
|
-
className: "grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-6",
|
|
531
|
-
children: [
|
|
532
|
-
"skeleton-1",
|
|
533
|
-
"skeleton-2",
|
|
534
|
-
"skeleton-3"
|
|
535
|
-
].map((e) => /* @__PURE__ */ B("div", {
|
|
536
|
-
className: "space-y-3 p-4 border rounded-xl bg-slate-50/50 dark:bg-slate-900/20",
|
|
537
|
-
children: [
|
|
538
|
-
/* @__PURE__ */ z(b, { className: "h-5 w-2/3" }),
|
|
539
|
-
/* @__PURE__ */ z(b, { className: "h-12 w-full" }),
|
|
540
|
-
/* @__PURE__ */ z(b, { className: "h-4 w-5/6" })
|
|
541
|
-
]
|
|
542
|
-
}, e))
|
|
543
|
-
}),
|
|
544
|
-
/* @__PURE__ */ z("div", {
|
|
545
|
-
className: "pt-4",
|
|
546
|
-
children: /* @__PURE__ */ z(b, { className: "h-10 w-32 rounded-lg" })
|
|
547
|
-
})
|
|
548
|
-
]
|
|
549
|
-
}) : /* @__PURE__ */ z(R, { children: r });
|
|
550
366
|
};
|
|
551
367
|
//#endregion
|
|
552
368
|
//#region src/components/router/nav-main.tsx
|
|
553
|
-
function
|
|
554
|
-
let t =
|
|
555
|
-
return /* @__PURE__ */ z(R, { children: e.map((e) => /* @__PURE__ */ B(
|
|
369
|
+
function Fe({ groups: e }) {
|
|
370
|
+
let t = q().pathname, { isMobile: n, setOpenMobile: r } = k();
|
|
371
|
+
return /* @__PURE__ */ z(R, { children: e.map((e) => /* @__PURE__ */ B(w, { children: [e.label && /* @__PURE__ */ z(A, { children: e.label }), /* @__PURE__ */ z(j, {
|
|
556
372
|
className: "flex flex-col gap-2",
|
|
557
|
-
children: /* @__PURE__ */ z(
|
|
373
|
+
children: /* @__PURE__ */ z(N, { children: e.items.map((e) => /* @__PURE__ */ z(g, { children: /* @__PURE__ */ z(P, {
|
|
558
374
|
tooltip: e.title,
|
|
559
375
|
isActive: t.startsWith(e.url),
|
|
560
376
|
asChild: !0,
|
|
561
|
-
children: /* @__PURE__ */ B(
|
|
377
|
+
children: /* @__PURE__ */ B(G, {
|
|
562
378
|
to: e.url,
|
|
563
379
|
onClick: () => n && r(!1),
|
|
564
380
|
children: [e.icon && /* @__PURE__ */ z(e.icon, { className: "size-6!" }), /* @__PURE__ */ z("span", { children: e.title })]
|
|
@@ -568,29 +384,29 @@ function Ue({ groups: e }) {
|
|
|
568
384
|
}
|
|
569
385
|
//#endregion
|
|
570
386
|
//#region src/components/router/nav-user.tsx
|
|
571
|
-
function
|
|
572
|
-
let { t:
|
|
573
|
-
|
|
574
|
-
},
|
|
575
|
-
let e =
|
|
576
|
-
if (!e && !
|
|
577
|
-
let
|
|
578
|
-
return
|
|
579
|
-
}, [
|
|
580
|
-
return /* @__PURE__ */ z(
|
|
387
|
+
function Ie({ user: a, accountUrl: s, logoutUrl: l, onLogout: u }) {
|
|
388
|
+
let { t: d } = W(), { isMobile: f } = k(), p = () => {
|
|
389
|
+
u ? u() : l && (globalThis.location.href = l);
|
|
390
|
+
}, m = I.useMemo(() => {
|
|
391
|
+
let e = a.firstName || "", t = a.lastName || "";
|
|
392
|
+
if (!e && !t) return " ";
|
|
393
|
+
let n = `${e} ${t}`.trim().split(" ").filter(Boolean);
|
|
394
|
+
return n.length === 1 ? n[0].charAt(0).toUpperCase() : n[0].charAt(0).toUpperCase() + (n.at(-1)?.charAt(0).toUpperCase() ?? "");
|
|
395
|
+
}, [a]), h = a?.avatarUrl || "";
|
|
396
|
+
return /* @__PURE__ */ z(N, { children: /* @__PURE__ */ z(g, { children: /* @__PURE__ */ B(n, { children: [/* @__PURE__ */ z(e, {
|
|
581
397
|
asChild: !0,
|
|
582
|
-
children: /* @__PURE__ */ B(
|
|
398
|
+
children: /* @__PURE__ */ B(P, {
|
|
583
399
|
size: "lg",
|
|
584
400
|
className: "data-[state=open]:bg-sidebar-accent data-[state=open]:text-sidebar-accent-foreground",
|
|
585
401
|
children: [
|
|
586
|
-
/* @__PURE__ */ B(
|
|
402
|
+
/* @__PURE__ */ B(M, {
|
|
587
403
|
className: "h-8 w-8 rounded-lg",
|
|
588
|
-
children: [
|
|
589
|
-
src:
|
|
590
|
-
alt:
|
|
591
|
-
}), /* @__PURE__ */ z(
|
|
404
|
+
children: [h && /* @__PURE__ */ z(O, {
|
|
405
|
+
src: h,
|
|
406
|
+
alt: a.username
|
|
407
|
+
}), /* @__PURE__ */ z(re, {
|
|
592
408
|
className: "rounded-lg",
|
|
593
|
-
children:
|
|
409
|
+
children: m
|
|
594
410
|
})]
|
|
595
411
|
}),
|
|
596
412
|
/* @__PURE__ */ B("div", {
|
|
@@ -598,102 +414,102 @@ function We({ user: t, accountUrl: n, logoutUrl: r, onLogout: i }) {
|
|
|
598
414
|
children: [/* @__PURE__ */ B("span", {
|
|
599
415
|
className: "truncate font-medium",
|
|
600
416
|
children: [
|
|
601
|
-
|
|
417
|
+
a.firstName,
|
|
602
418
|
" ",
|
|
603
|
-
|
|
419
|
+
a.lastName
|
|
604
420
|
]
|
|
605
421
|
}), /* @__PURE__ */ z("span", {
|
|
606
422
|
className: "text-muted-foreground truncate text-xs",
|
|
607
|
-
children:
|
|
423
|
+
children: a.email
|
|
608
424
|
})]
|
|
609
425
|
}),
|
|
610
426
|
/* @__PURE__ */ z(V, { className: "ml-auto size-4" })
|
|
611
427
|
]
|
|
612
428
|
})
|
|
613
|
-
}), /* @__PURE__ */ B(
|
|
429
|
+
}), /* @__PURE__ */ B(o, {
|
|
614
430
|
className: "w-(--radix-dropdown-menu-trigger-width) min-w-56 rounded-lg",
|
|
615
|
-
side:
|
|
431
|
+
side: f ? "bottom" : "right",
|
|
616
432
|
align: "end",
|
|
617
433
|
sideOffset: 4,
|
|
618
434
|
children: [
|
|
619
|
-
/* @__PURE__ */ z(
|
|
435
|
+
/* @__PURE__ */ z(t, {
|
|
620
436
|
className: "p-0 font-normal",
|
|
621
437
|
children: /* @__PURE__ */ B("div", {
|
|
622
438
|
className: "flex items-center gap-2 px-1 py-1.5 text-left text-sm",
|
|
623
|
-
children: [/* @__PURE__ */ B(
|
|
439
|
+
children: [/* @__PURE__ */ B(M, {
|
|
624
440
|
className: "h-8 w-8 rounded-lg",
|
|
625
|
-
children: [
|
|
626
|
-
src:
|
|
627
|
-
alt:
|
|
628
|
-
}), /* @__PURE__ */ z(
|
|
441
|
+
children: [h && /* @__PURE__ */ z(O, {
|
|
442
|
+
src: h,
|
|
443
|
+
alt: a.username
|
|
444
|
+
}), /* @__PURE__ */ z(re, {
|
|
629
445
|
className: "rounded-lg",
|
|
630
|
-
children:
|
|
446
|
+
children: m
|
|
631
447
|
})]
|
|
632
448
|
}), /* @__PURE__ */ B("div", {
|
|
633
449
|
className: "grid flex-1 text-left text-sm leading-tight",
|
|
634
450
|
children: [/* @__PURE__ */ B("span", {
|
|
635
451
|
className: "truncate font-medium",
|
|
636
452
|
children: [
|
|
637
|
-
|
|
453
|
+
a.firstName,
|
|
638
454
|
" ",
|
|
639
|
-
|
|
455
|
+
a.lastName
|
|
640
456
|
]
|
|
641
457
|
}), /* @__PURE__ */ z("span", {
|
|
642
458
|
className: "text-muted-foreground truncate text-xs",
|
|
643
|
-
children:
|
|
459
|
+
children: a.email
|
|
644
460
|
})]
|
|
645
461
|
})]
|
|
646
462
|
})
|
|
647
463
|
}),
|
|
648
|
-
/* @__PURE__ */ z(
|
|
649
|
-
|
|
650
|
-
to:
|
|
464
|
+
/* @__PURE__ */ z(c, {}),
|
|
465
|
+
s && /* @__PURE__ */ B(R, { children: [/* @__PURE__ */ z(i, { children: /* @__PURE__ */ z(G, {
|
|
466
|
+
to: s,
|
|
651
467
|
className: "w-full",
|
|
652
|
-
children: /* @__PURE__ */ B(
|
|
653
|
-
}) }), /* @__PURE__ */ z(
|
|
654
|
-
/* @__PURE__ */ B(
|
|
655
|
-
onClick:
|
|
468
|
+
children: /* @__PURE__ */ B(r, { children: [/* @__PURE__ */ z(me, {}), d("nav.account")] })
|
|
469
|
+
}) }), /* @__PURE__ */ z(c, {})] }),
|
|
470
|
+
/* @__PURE__ */ B(r, {
|
|
471
|
+
onClick: p,
|
|
656
472
|
className: "cursor-pointer",
|
|
657
|
-
children: [/* @__PURE__ */ z(
|
|
473
|
+
children: [/* @__PURE__ */ z(pe, {}), /* @__PURE__ */ z("span", { children: d("nav.logOut") })]
|
|
658
474
|
})
|
|
659
475
|
]
|
|
660
476
|
})] }) }) });
|
|
661
477
|
}
|
|
662
478
|
//#endregion
|
|
663
479
|
//#region src/components/router/page-content.tsx
|
|
664
|
-
var
|
|
480
|
+
var Le = () => /* @__PURE__ */ z("div", {
|
|
665
481
|
className: "flex flex-1 flex-col",
|
|
666
482
|
children: /* @__PURE__ */ z("div", {
|
|
667
483
|
className: "@container/main flex flex-1 flex-col gap-2",
|
|
668
484
|
children: /* @__PURE__ */ z("div", {
|
|
669
485
|
className: "flex flex-col gap-2 px-1 py-1 md:gap-3 md:px-2 md:py-2",
|
|
670
|
-
children: /* @__PURE__ */ z(
|
|
486
|
+
children: /* @__PURE__ */ z(K, {})
|
|
671
487
|
})
|
|
672
488
|
})
|
|
673
|
-
}),
|
|
674
|
-
let { items: i } =
|
|
489
|
+
}), Re = ({ icon: e, title: t, urlBase: n, children: r }) => {
|
|
490
|
+
let { items: i } = ie(), a = J(), { t: o } = W(), s = i.length > 0 ? i[i.length - 1] : null, c = i.length > 1 ? i[i.length - 2] : null;
|
|
675
491
|
return /* @__PURE__ */ z("header", {
|
|
676
492
|
className: "flex h-(--header-height) shrink-0 items-center gap-2 border-b transition-[width,height] ease-linear group-has-data-[collapsible=icon]/sidebar-wrapper:h-(--header-height)",
|
|
677
493
|
children: /* @__PURE__ */ B("div", {
|
|
678
494
|
className: "flex w-full items-center gap-1 px-4 lg:gap-2 lg:px-6",
|
|
679
495
|
children: [
|
|
680
|
-
/* @__PURE__ */ z(
|
|
681
|
-
/* @__PURE__ */ z(
|
|
496
|
+
/* @__PURE__ */ z(u, { className: "-ml-1 hidden md:flex" }),
|
|
497
|
+
/* @__PURE__ */ z(f, {
|
|
682
498
|
orientation: "vertical",
|
|
683
499
|
className: "mx-2 data-[orientation=vertical]:h-4 hidden md:block"
|
|
684
500
|
}),
|
|
685
501
|
/* @__PURE__ */ B("div", {
|
|
686
502
|
className: "hidden md:flex items-center gap-1",
|
|
687
503
|
children: [e && /* @__PURE__ */ z("div", {
|
|
688
|
-
className: "flex h-8 w-8 items-center justify-center rounded-lg
|
|
689
|
-
children: /* @__PURE__ */ z(e, { className: "size-4.5!
|
|
690
|
-
}), n ? /* @__PURE__ */ z(
|
|
504
|
+
className: "flex h-8 w-8 items-center justify-center rounded-lg vg-accent-chip ring-1 mr-1",
|
|
505
|
+
children: /* @__PURE__ */ z(e, { className: "size-4.5! vg-accent-text" })
|
|
506
|
+
}), n ? /* @__PURE__ */ z(ae, { children: /* @__PURE__ */ z(oe, { children: i.map((e, t) => /* @__PURE__ */ B(I.Fragment, { children: [t > 0 && /* @__PURE__ */ z(E, {}), /* @__PURE__ */ z(C, { children: e.href ? /* @__PURE__ */ z(ne, {
|
|
691
507
|
asChild: !0,
|
|
692
|
-
children: /* @__PURE__ */ z(
|
|
508
|
+
children: /* @__PURE__ */ z(G, {
|
|
693
509
|
to: e.href,
|
|
694
510
|
children: e.label
|
|
695
511
|
})
|
|
696
|
-
}) : /* @__PURE__ */ z(
|
|
512
|
+
}) : /* @__PURE__ */ z(T, { children: e.label }) })] }, e.label)) }) }) : /* @__PURE__ */ z("h1", {
|
|
697
513
|
className: "text-base font-semibold",
|
|
698
514
|
children: t
|
|
699
515
|
})]
|
|
@@ -701,20 +517,20 @@ var $ = () => /* @__PURE__ */ z("div", {
|
|
|
701
517
|
/* @__PURE__ */ B("div", {
|
|
702
518
|
className: "flex md:hidden items-center gap-2 min-w-0 flex-1",
|
|
703
519
|
children: [
|
|
704
|
-
|
|
520
|
+
c?.href && /* @__PURE__ */ z("button", {
|
|
705
521
|
type: "button",
|
|
706
522
|
title: o("common.goBack"),
|
|
707
|
-
onClick: () => a(
|
|
523
|
+
onClick: () => a(c.href),
|
|
708
524
|
className: "shrink-0 flex items-center justify-center size-8 rounded-lg hover:bg-muted transition-colors",
|
|
709
|
-
children: /* @__PURE__ */ z(
|
|
525
|
+
children: /* @__PURE__ */ z(ue, { className: "size-4" })
|
|
710
526
|
}),
|
|
711
527
|
e && /* @__PURE__ */ z("div", {
|
|
712
|
-
className: "flex shrink-0 h-7 w-7 items-center justify-center rounded-lg
|
|
713
|
-
children: /* @__PURE__ */ z(e, { className: "size-3.5!
|
|
528
|
+
className: "flex shrink-0 h-7 w-7 items-center justify-center rounded-lg vg-accent-chip ring-1",
|
|
529
|
+
children: /* @__PURE__ */ z(e, { className: "size-3.5! vg-accent-text" })
|
|
714
530
|
}),
|
|
715
531
|
/* @__PURE__ */ z("span", {
|
|
716
532
|
className: "text-sm font-semibold truncate",
|
|
717
|
-
children:
|
|
533
|
+
children: s?.label ?? t
|
|
718
534
|
})
|
|
719
535
|
]
|
|
720
536
|
}),
|
|
@@ -727,31 +543,31 @@ var $ = () => /* @__PURE__ */ z("div", {
|
|
|
727
543
|
}),
|
|
728
544
|
/* @__PURE__ */ z("div", {
|
|
729
545
|
className: "hidden md:block",
|
|
730
|
-
children: /* @__PURE__ */ z(
|
|
546
|
+
children: /* @__PURE__ */ z(ee, {})
|
|
731
547
|
}),
|
|
732
|
-
/* @__PURE__ */ z(
|
|
548
|
+
/* @__PURE__ */ z(u, { className: "md:hidden" })
|
|
733
549
|
]
|
|
734
550
|
})
|
|
735
551
|
]
|
|
736
552
|
})
|
|
737
553
|
});
|
|
738
|
-
},
|
|
554
|
+
}, ze = ({ icon: e, title: t, urlBase: n }) => /* @__PURE__ */ B(R, { children: [/* @__PURE__ */ z(Re, {
|
|
739
555
|
icon: e,
|
|
740
556
|
title: t,
|
|
741
557
|
urlBase: n
|
|
742
|
-
}), /* @__PURE__ */ z(
|
|
743
|
-
let i =
|
|
558
|
+
}), /* @__PURE__ */ z(Le, {})] }), Be = ({ icon: e, feature: t, description: n, urlBase: r }) => {
|
|
559
|
+
let i = m(), a = i?.isMobile ?? !1, o = i?.toggleSidebar ?? (() => {}), s = /* @__PURE__ */ B("div", {
|
|
744
560
|
className: "flex items-center gap-3",
|
|
745
561
|
children: [/* @__PURE__ */ z("div", {
|
|
746
|
-
className: `flex h-9 w-9 items-center justify-center rounded-lg
|
|
747
|
-
onClick:
|
|
748
|
-
onKeyDown:
|
|
749
|
-
(e.key === "Enter" || e.key === " ") &&
|
|
562
|
+
className: `flex h-9 w-9 items-center justify-center rounded-lg vg-accent-chip ring-1 ${a ? "cursor-pointer active:scale-95 transition-transform" : ""}`,
|
|
563
|
+
onClick: a ? o : void 0,
|
|
564
|
+
onKeyDown: a ? (e) => {
|
|
565
|
+
(e.key === "Enter" || e.key === " ") && o();
|
|
750
566
|
} : void 0,
|
|
751
|
-
tabIndex:
|
|
752
|
-
role:
|
|
753
|
-
title:
|
|
754
|
-
children: /* @__PURE__ */ z(e, { className: "size-5!
|
|
567
|
+
tabIndex: a ? 0 : void 0,
|
|
568
|
+
role: a ? "button" : void 0,
|
|
569
|
+
title: a ? "Open navigation" : void 0,
|
|
570
|
+
children: /* @__PURE__ */ z(e, { className: "size-5! vg-accent-text" })
|
|
755
571
|
}), /* @__PURE__ */ B("div", {
|
|
756
572
|
className: "min-w-0",
|
|
757
573
|
children: [/* @__PURE__ */ z("h1", {
|
|
@@ -763,54 +579,54 @@ var $ = () => /* @__PURE__ */ z("div", {
|
|
|
763
579
|
})]
|
|
764
580
|
})]
|
|
765
581
|
});
|
|
766
|
-
return r && !
|
|
582
|
+
return r && !a ? /* @__PURE__ */ z("div", {
|
|
767
583
|
className: "min-w-0 flex-1",
|
|
768
|
-
children: /* @__PURE__ */ z(
|
|
584
|
+
children: /* @__PURE__ */ z(G, {
|
|
769
585
|
to: r,
|
|
770
586
|
className: "group inline-flex max-w-full",
|
|
771
|
-
children:
|
|
587
|
+
children: s
|
|
772
588
|
})
|
|
773
589
|
}) : /* @__PURE__ */ z("div", {
|
|
774
590
|
className: "min-w-0 flex-1",
|
|
775
|
-
children:
|
|
591
|
+
children: s
|
|
776
592
|
});
|
|
777
593
|
};
|
|
778
|
-
|
|
779
|
-
var
|
|
780
|
-
|
|
781
|
-
var
|
|
782
|
-
let
|
|
783
|
-
I.Children.forEach(
|
|
784
|
-
I.isValidElement(e) && e.type?.displayName === "StickyPageHeaderAction" ?
|
|
594
|
+
Be.displayName = "StickyPageHeaderTitle";
|
|
595
|
+
var Ve = () => null;
|
|
596
|
+
Ve.displayName = "StickyPageHeaderAction";
|
|
597
|
+
var He = ({ children: t, menuLabel: i }) => {
|
|
598
|
+
let a = J(), { t: c } = W(), l = [], u = [];
|
|
599
|
+
I.Children.forEach(t, (e) => {
|
|
600
|
+
I.isValidElement(e) && e.type?.displayName === "StickyPageHeaderAction" ? l.push(e.props) : u.push(e);
|
|
785
601
|
});
|
|
786
|
-
let
|
|
602
|
+
let d = i ?? c("common.actions");
|
|
787
603
|
return /* @__PURE__ */ B("div", {
|
|
788
604
|
className: "flex items-center gap-2 shrink-0",
|
|
789
|
-
children: [
|
|
605
|
+
children: [u, l.length > 0 && /* @__PURE__ */ B(n, { children: [/* @__PURE__ */ z(e, {
|
|
790
606
|
asChild: !0,
|
|
791
|
-
children:
|
|
607
|
+
children: i ? /* @__PURE__ */ B(s, {
|
|
792
608
|
variant: "outline",
|
|
793
609
|
size: "sm",
|
|
794
610
|
className: "gap-1.5",
|
|
795
611
|
children: [/* @__PURE__ */ z(V, { className: "size-4" }), /* @__PURE__ */ z("span", {
|
|
796
612
|
className: "hidden sm:inline",
|
|
797
|
-
children:
|
|
613
|
+
children: i
|
|
798
614
|
})]
|
|
799
|
-
}) : /* @__PURE__ */ z(
|
|
615
|
+
}) : /* @__PURE__ */ z(s, {
|
|
800
616
|
variant: "ghost",
|
|
801
617
|
size: "icon-sm",
|
|
802
|
-
"aria-label":
|
|
803
|
-
title:
|
|
618
|
+
"aria-label": d,
|
|
619
|
+
title: d,
|
|
804
620
|
children: /* @__PURE__ */ z(V, { className: "size-5!" })
|
|
805
621
|
})
|
|
806
|
-
}), /* @__PURE__ */ z(
|
|
622
|
+
}), /* @__PURE__ */ z(o, {
|
|
807
623
|
align: "end",
|
|
808
|
-
children:
|
|
624
|
+
children: l.map((e) => {
|
|
809
625
|
let t = e.icon ?? H;
|
|
810
|
-
return /* @__PURE__ */ B(
|
|
626
|
+
return /* @__PURE__ */ B(r, {
|
|
811
627
|
disabled: e.disabled,
|
|
812
628
|
onClick: () => {
|
|
813
|
-
e.href &&
|
|
629
|
+
e.href && a(e.href), e.onClick && e.onClick();
|
|
814
630
|
},
|
|
815
631
|
children: [/* @__PURE__ */ z(t, { className: "size-4 mr-2" }), e.label]
|
|
816
632
|
}, e.label);
|
|
@@ -818,70 +634,84 @@ var Ye = ({ children: e, menuLabel: t }) => {
|
|
|
818
634
|
})] })]
|
|
819
635
|
});
|
|
820
636
|
};
|
|
821
|
-
|
|
822
|
-
var
|
|
637
|
+
He.displayName = "StickyPageHeaderActions";
|
|
638
|
+
var Ue = Object.assign(({ children: e }) => /* @__PURE__ */ z("header", {
|
|
823
639
|
className: "sticky top-0 z-10 -mx-4 lg:-mx-6 mb-5 border-b bg-background/95 backdrop-blur supports-[backdrop-filter]:bg-background/80",
|
|
824
640
|
children: /* @__PURE__ */ B("div", {
|
|
825
641
|
className: "flex w-full items-center gap-3 px-4 lg:px-6 py-3",
|
|
826
642
|
children: [/* @__PURE__ */ B("div", {
|
|
827
643
|
className: "hidden md:flex items-center gap-1",
|
|
828
|
-
children: [/* @__PURE__ */ z(
|
|
644
|
+
children: [/* @__PURE__ */ z(u, { className: "-ml-1" }), /* @__PURE__ */ z(f, {
|
|
829
645
|
orientation: "vertical",
|
|
830
646
|
className: "mx-2 data-[orientation=vertical]:h-4"
|
|
831
647
|
})]
|
|
832
648
|
}), e]
|
|
833
649
|
})
|
|
834
650
|
}), {
|
|
835
|
-
Title:
|
|
836
|
-
Actions:
|
|
837
|
-
Action:
|
|
838
|
-
}),
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
|
|
850
|
-
|
|
851
|
-
|
|
852
|
-
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
651
|
+
Title: Be,
|
|
652
|
+
Actions: He,
|
|
653
|
+
Action: Ve
|
|
654
|
+
}), We = {
|
|
655
|
+
comfortable: {
|
|
656
|
+
outer: "px-1 md:px-6 lg:px-8 py-1 md:py-4",
|
|
657
|
+
inset: "md:mr-1.5 md:my-1.5",
|
|
658
|
+
main: "pt-2 md:pt-4"
|
|
659
|
+
},
|
|
660
|
+
compact: {
|
|
661
|
+
outer: "px-0 py-0",
|
|
662
|
+
inset: "min-w-0 md:mx-1.5",
|
|
663
|
+
main: "pt-1 md:pt-2"
|
|
664
|
+
}
|
|
665
|
+
}, Ge = ({ outletContext: e, density: t = "comfortable", ...n }) => {
|
|
666
|
+
let r = We[t];
|
|
667
|
+
return /* @__PURE__ */ z("div", {
|
|
668
|
+
className: `w-full ${r.outer} min-h-[calc(100svh-10.5rem)]`,
|
|
669
|
+
children: /* @__PURE__ */ z("div", {
|
|
670
|
+
className: "flex min-h-full w-full md:rounded-xl md:border md:bg-sidebar md:shadow-sm",
|
|
671
|
+
children: /* @__PURE__ */ B(d, {
|
|
672
|
+
defaultOpen: !0,
|
|
673
|
+
className: "min-h-0!",
|
|
674
|
+
style: {
|
|
675
|
+
"--sidebar-width": "calc(var(--spacing) * 72)",
|
|
676
|
+
"--header-height": "calc(var(--spacing) * 12)",
|
|
677
|
+
minHeight: 0
|
|
678
|
+
},
|
|
679
|
+
children: [/* @__PURE__ */ z($, { ...n }), /* @__PURE__ */ z(b, {
|
|
680
|
+
className: `${r.inset} md:rounded-xl md:border bg-background md:shadow-sm`,
|
|
681
|
+
children: /* @__PURE__ */ z("main", {
|
|
682
|
+
className: `flex flex-1 flex-col ${r.main} max-md:[&_.px-6]:px-2`,
|
|
683
|
+
children: /* @__PURE__ */ z(K, { context: e })
|
|
684
|
+
})
|
|
685
|
+
})]
|
|
686
|
+
})
|
|
857
687
|
})
|
|
858
|
-
})
|
|
859
|
-
}), Qe = () => null;
|
|
860
|
-
Qe.displayName = "SubPageHeaderAction";
|
|
861
|
-
var $e = Object.assign(({ icon: e, feature: t, name: n, description: r, urlBase: i, onDelete: o, open: s, setOpen: c, children: l }) => {
|
|
862
|
-
let u = a(), f = u?.isMobile ?? !1, p = u?.toggleSidebar ?? (() => {}), m = Y(), h = [];
|
|
863
|
-
I.Children.forEach(l, (e) => {
|
|
864
|
-
I.isValidElement(e) && e.type?.displayName === "SubPageHeaderAction" && h.push(e.props);
|
|
865
688
|
});
|
|
866
|
-
|
|
689
|
+
}, Ke = () => null;
|
|
690
|
+
Ke.displayName = "SubPageHeaderAction";
|
|
691
|
+
var qe = Object.assign(({ icon: t, feature: i, name: a, description: c, urlBase: l, onDelete: d, open: p, setOpen: h, children: g }) => {
|
|
692
|
+
let _ = m(), v = _?.isMobile ?? !1, y = _?.toggleSidebar ?? (() => {}), b = J(), x = [];
|
|
693
|
+
I.Children.forEach(g, (e) => {
|
|
694
|
+
I.isValidElement(e) && Y(e) === "SubPageHeaderAction" && x.push(e.props);
|
|
695
|
+
});
|
|
696
|
+
let S = /* @__PURE__ */ B("div", {
|
|
867
697
|
className: "flex items-center gap-3",
|
|
868
|
-
children: [
|
|
869
|
-
className: `flex h-9 w-9 items-center justify-center rounded-lg
|
|
870
|
-
onClick:
|
|
871
|
-
onKeyDown:
|
|
872
|
-
(e.key === "Enter" || e.key === " ") &&
|
|
698
|
+
children: [t && /* @__PURE__ */ z("div", {
|
|
699
|
+
className: `flex h-9 w-9 items-center justify-center rounded-lg vg-accent-chip ring-1 ${v ? "cursor-pointer active:scale-95 transition-transform" : ""}`,
|
|
700
|
+
onClick: v ? y : void 0,
|
|
701
|
+
onKeyDown: v ? (e) => {
|
|
702
|
+
(e.key === "Enter" || e.key === " ") && y();
|
|
873
703
|
} : void 0,
|
|
874
|
-
tabIndex:
|
|
875
|
-
title:
|
|
876
|
-
children: /* @__PURE__ */ z(
|
|
704
|
+
tabIndex: v ? 0 : void 0,
|
|
705
|
+
title: v ? "Open navigation" : void 0,
|
|
706
|
+
children: /* @__PURE__ */ z(t, { className: "size-5! vg-accent-text" })
|
|
877
707
|
}), /* @__PURE__ */ B("div", {
|
|
878
708
|
className: "min-w-0",
|
|
879
709
|
children: [/* @__PURE__ */ z("h1", {
|
|
880
710
|
className: "text-base font-semibold leading-tight text-foreground",
|
|
881
|
-
children:
|
|
711
|
+
children: i
|
|
882
712
|
}), /* @__PURE__ */ z("p", {
|
|
883
713
|
className: "hidden md:block text-xs text-muted-foreground leading-relaxed mt-0.5",
|
|
884
|
-
children:
|
|
714
|
+
children: c
|
|
885
715
|
})]
|
|
886
716
|
})]
|
|
887
717
|
});
|
|
@@ -892,24 +722,24 @@ var $e = Object.assign(({ icon: e, feature: t, name: n, description: r, urlBase:
|
|
|
892
722
|
children: [
|
|
893
723
|
/* @__PURE__ */ B("div", {
|
|
894
724
|
className: "hidden md:flex items-center gap-1",
|
|
895
|
-
children: [/* @__PURE__ */ z(
|
|
725
|
+
children: [/* @__PURE__ */ z(u, { className: "-ml-1" }), /* @__PURE__ */ z(f, {
|
|
896
726
|
orientation: "vertical",
|
|
897
727
|
className: "mx-2 data-[orientation=vertical]:h-4"
|
|
898
728
|
})]
|
|
899
729
|
}),
|
|
900
730
|
/* @__PURE__ */ z("div", {
|
|
901
731
|
className: "min-w-0 flex-1",
|
|
902
|
-
children:
|
|
903
|
-
to:
|
|
732
|
+
children: l && !v ? /* @__PURE__ */ z(G, {
|
|
733
|
+
to: l,
|
|
904
734
|
className: "group inline-flex",
|
|
905
|
-
children:
|
|
906
|
-
}) :
|
|
735
|
+
children: S
|
|
736
|
+
}) : S
|
|
907
737
|
}),
|
|
908
738
|
/* @__PURE__ */ B("div", {
|
|
909
739
|
className: "flex items-center gap-2",
|
|
910
|
-
children: [
|
|
740
|
+
children: [x.length > 0 && /* @__PURE__ */ B(n, { children: [/* @__PURE__ */ z(e, {
|
|
911
741
|
asChild: !0,
|
|
912
|
-
children: /* @__PURE__ */ B(
|
|
742
|
+
children: /* @__PURE__ */ B(s, {
|
|
913
743
|
variant: "outline",
|
|
914
744
|
size: "sm",
|
|
915
745
|
className: "gap-1.5",
|
|
@@ -918,29 +748,29 @@ var $e = Object.assign(({ icon: e, feature: t, name: n, description: r, urlBase:
|
|
|
918
748
|
children: "Actions"
|
|
919
749
|
})]
|
|
920
750
|
})
|
|
921
|
-
}), /* @__PURE__ */ z(
|
|
751
|
+
}), /* @__PURE__ */ z(o, {
|
|
922
752
|
align: "end",
|
|
923
|
-
children:
|
|
753
|
+
children: x.map((e) => {
|
|
924
754
|
let t = e.icon ?? H;
|
|
925
|
-
return /* @__PURE__ */ B(
|
|
755
|
+
return /* @__PURE__ */ B(r, {
|
|
926
756
|
disabled: e.disabled,
|
|
927
757
|
onClick: () => {
|
|
928
|
-
e.href &&
|
|
758
|
+
e.href && b(e.href), e.onClick && e.onClick();
|
|
929
759
|
},
|
|
930
760
|
children: [/* @__PURE__ */ z(t, { className: "size-4 mr-2" }), e.label]
|
|
931
761
|
}, e.label);
|
|
932
762
|
})
|
|
933
|
-
})] }),
|
|
934
|
-
feature:
|
|
935
|
-
name:
|
|
936
|
-
onDelete:
|
|
937
|
-
open:
|
|
938
|
-
setOpen:
|
|
763
|
+
})] }), p !== void 0 && d !== void 0 && h !== void 0 && /* @__PURE__ */ z(F, {
|
|
764
|
+
feature: i,
|
|
765
|
+
name: a,
|
|
766
|
+
onDelete: d,
|
|
767
|
+
open: p,
|
|
768
|
+
setOpen: h
|
|
939
769
|
})]
|
|
940
770
|
})
|
|
941
771
|
]
|
|
942
|
-
}), /* @__PURE__ */ z(
|
|
772
|
+
}), /* @__PURE__ */ z(f, { className: "mt-3" })]
|
|
943
773
|
});
|
|
944
|
-
}, { Action:
|
|
774
|
+
}, { Action: Ke });
|
|
945
775
|
//#endregion
|
|
946
|
-
export {
|
|
776
|
+
export { se as BlankSlate, F as DialogDelete, ce as GradientButtonLink, je as GridList, $ as InternalSidebar, le as LoadProvider, Fe as NavMain, Ie as NavUser, ze as Page, Le as PageContent, Re as PageHeader, Ue as StickyPageHeader, Ge as SubPage, qe as SubPageHeader };
|