@viglet/viglet-design-system 2026.3.9 → 2026.3.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +213 -16
- package/dist/badge-locale-Bij94NwL.cjs +1 -0
- package/dist/{badge-locale-CoEEv7s5.js → badge-locale-Du41PpLA.js} +183 -231
- package/dist/bento/bento-command-palette.d.ts +47 -12
- package/dist/bento/bento-command-palette.d.ts.map +1 -1
- package/dist/bento/bento-form-section.d.ts +7 -1
- package/dist/bento/bento-form-section.d.ts.map +1 -1
- package/dist/bento/bento-inline-edit.d.ts.map +1 -1
- package/dist/bento/bento-nav-rail.d.ts.map +1 -1
- package/dist/bento/bento-nav.d.ts +10 -2
- package/dist/bento/bento-nav.d.ts.map +1 -1
- package/dist/bento/bento-section-chrome.d.ts +5 -0
- package/dist/bento/bento-section-chrome.d.ts.map +1 -1
- package/dist/bento/bento-status-marker.d.ts.map +1 -1
- package/dist/bento/bento-tile.d.ts.map +1 -1
- package/dist/bento/index.d.ts +1 -1
- package/dist/bento/index.d.ts.map +1 -1
- package/dist/bento.cjs +1 -1
- package/dist/bento.es.js +464 -404
- package/dist/{breadcrumb.context-KQut7j8U.js → breadcrumb.context-BssgEydx.js} +229 -220
- package/dist/breadcrumb.context-DLsiMS59.cjs +1 -0
- package/dist/components/app-switcher.d.ts.map +1 -1
- package/dist/components/badge-colorful.d.ts +9 -0
- package/dist/components/badge-colorful.d.ts.map +1 -1
- package/dist/components/login/login.d.ts.map +1 -1
- package/dist/components/router/index.d.ts +1 -1
- package/dist/components/router/index.d.ts.map +1 -1
- package/dist/components/router/sub.page.d.ts.map +1 -1
- package/dist/components/startup-first/startup-first.d.ts.map +1 -1
- package/dist/components/ui/floating-formulas-bg.d.ts.map +1 -1
- package/dist/components/ui/glass-card.d.ts +10 -5
- package/dist/components/ui/glass-card.d.ts.map +1 -1
- package/dist/components/ui/icon-picker-dialog.d.ts.map +1 -1
- package/dist/components/ui/index.d.ts +6 -4
- package/dist/components/ui/index.d.ts.map +1 -1
- package/dist/components/ui/navigation-menu.d.ts +14 -0
- package/dist/components/ui/navigation-menu.d.ts.map +1 -1
- package/dist/components/ui/pulse-ring.d.ts.map +1 -1
- package/dist/components/ui/resizable.d.ts.map +1 -1
- package/dist/components/ui/sidebar.d.ts.map +1 -1
- package/dist/components/ui/sonner.d.ts +12 -0
- package/dist/components/ui/sonner.d.ts.map +1 -1
- package/dist/components/ui/stepper.d.ts.map +1 -1
- package/dist/components/ui/viglet-assistant.d.ts +60 -0
- package/dist/components/ui/viglet-assistant.d.ts.map +1 -0
- package/dist/components/ui/viglet-avatar.d.ts +42 -0
- package/dist/components/ui/viglet-avatar.d.ts.map +1 -0
- package/dist/exports.json +24 -5
- package/dist/floating-formulas-bg.cjs +1 -1
- package/dist/floating-formulas-bg.es.js +56 -55
- package/dist/hooks/index.d.ts +1 -0
- package/dist/hooks/index.d.ts.map +1 -1
- package/dist/hooks/use-assistant-notifications.d.ts +15 -0
- package/dist/hooks/use-assistant-notifications.d.ts.map +1 -0
- package/dist/i18n/index.d.ts +74 -0
- package/dist/i18n/index.d.ts.map +1 -1
- package/dist/i18n/locales/en/assistant.json.d.ts +22 -0
- package/dist/i18n/locales/en/bento.json.d.ts +3 -1
- package/dist/i18n/locales/en/common.json.d.ts +6 -1
- package/dist/i18n/locales/en/language.json.d.ts +8 -0
- package/dist/i18n/locales/pt/assistant.json.d.ts +22 -0
- package/dist/i18n/locales/pt/bento.json.d.ts +3 -1
- package/dist/i18n/locales/pt/common.json.d.ts +6 -1
- package/dist/i18n/locales/pt/language.json.d.ts +8 -0
- package/dist/i18n.cjs +1 -1
- package/dist/i18n.es.js +478 -2
- package/dist/index.cjs +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.es.js +1311 -698
- package/dist/loading-provider-B6-R2ONB.cjs +1 -0
- package/dist/{loading-provider-BWWhhfEn.js → loading-provider-E3fbcekM.js} +24 -23
- package/dist/router.cjs +1 -1
- package/dist/router.es.js +4 -4
- package/dist/{user.context-D1PxP4D4.js → user.context-CPmUBBLa.js} +97 -87
- package/dist/user.context-xsJgPpcO.cjs +1 -0
- package/dist/utils-Fk5jmzzb.js +41 -0
- package/dist/utils-Oagwe_oa.cjs +1 -0
- package/dist/viglet-design-system.css +1 -1
- package/dist/vite/boot-loader.d.ts +33 -2
- package/dist/vite/boot-loader.d.ts.map +1 -1
- package/dist/vite.cjs +16 -5
- package/dist/vite.es.js +27 -14
- package/docs/BENTO-AUTHORING.md +20 -2
- package/docs/reference/grounds.dc.html +9 -9
- package/package.json +4 -3
- package/dist/badge-locale-hQyWhAKe.cjs +0 -7
- package/dist/breadcrumb.context-Vwc3lAlf.cjs +0 -1
- package/dist/i18n-DD3rQOWi.js +0 -426
- package/dist/i18n-DrBq-qJJ.cjs +0 -1
- package/dist/loading-provider-CmeMqLGk.cjs +0 -1
- package/dist/user.context-B9vIBzY5.cjs +0 -1
package/dist/bento.es.js
CHANGED
|
@@ -1,37 +1,38 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import { t as e } from "./utils-Fk5jmzzb.js";
|
|
3
|
+
import { A as t, D as n, E as r, F as i, M as a, _ as o, a as s, f as c, g as l, h as u, i as d, k as f, l as p, m, o as h, s as g, u as _, x as v } from "./badge-locale-Du41PpLA.js";
|
|
4
|
+
import { l as y, n as b, o as x, r as S, s as C, u as w } from "./user.context-CPmUBBLa.js";
|
|
5
|
+
import { i as T, t as E } from "./loading-provider-E3fbcekM.js";
|
|
5
6
|
import { Children as D, createContext as O, isValidElement as k, useContext as A, useEffect as j, useMemo as M, useRef as N, useState as P, useSyncExternalStore as ee } from "react";
|
|
6
7
|
import { Fragment as F, jsx as I, jsxs as L } from "react/jsx-runtime";
|
|
7
8
|
import { useTranslation as R } from "react-i18next";
|
|
8
|
-
import { IconAdjustmentsHorizontal as z, IconAlertTriangle as te, IconArrowBackUp as B, IconArrowLeft as ne, IconArrowRight as re, IconArrowUp as
|
|
9
|
-
import { Icon as
|
|
10
|
-
import { Link as
|
|
11
|
-
import { DndContext as
|
|
12
|
-
import { SortableContext as
|
|
13
|
-
import { CSS as
|
|
9
|
+
import { IconAdjustmentsHorizontal as z, IconAlertTriangle as te, IconArrowBackUp as B, IconArrowLeft as ne, IconArrowRight as re, IconArrowUp as ie, IconBuildingCommunity as ae, IconBuildingSkyscraper as oe, IconChevronRight as V, IconDeviceFloppy as H, IconDotsVertical as se, IconExternalLink as ce, IconGripVertical as le, IconHome as ue, IconKeyboard as de, IconLayoutGrid as fe, IconLogout as pe, IconPalette as me, IconPlus as he, IconSearch as ge, IconSparkles as U, IconTrash as _e, IconUserCircle as ve, IconUsers as ye, IconX as W } from "@tabler/icons-react";
|
|
10
|
+
import { Icon as G } from "@iconify/react";
|
|
11
|
+
import { Link as K, useLocation as be, useNavigate as q } from "react-router-dom";
|
|
12
|
+
import { DndContext as xe, KeyboardSensor as Se, PointerSensor as Ce, closestCenter as we, useSensor as Te, useSensors as Ee } from "@dnd-kit/core";
|
|
13
|
+
import { SortableContext as De, arrayMove as Oe, rectSortingStrategy as ke, useSortable as Ae } from "@dnd-kit/sortable";
|
|
14
|
+
import { CSS as je } from "@dnd-kit/utilities";
|
|
14
15
|
//#region src/bento/bento-actions-menu.tsx
|
|
15
|
-
var
|
|
16
|
+
var Me = {
|
|
16
17
|
default: "",
|
|
17
18
|
destructive: "bento-item-danger"
|
|
18
19
|
};
|
|
19
|
-
function
|
|
20
|
-
let { t:
|
|
21
|
-
return e.length === 0 ? null : /* @__PURE__ */ L(c, { children: [/* @__PURE__ */ I(
|
|
20
|
+
function Ne({ actions: e, triggerLabel: t }) {
|
|
21
|
+
let { t: n } = R();
|
|
22
|
+
return e.length === 0 ? null : /* @__PURE__ */ L(c, { children: [/* @__PURE__ */ I(r, {
|
|
22
23
|
asChild: !0,
|
|
23
24
|
children: /* @__PURE__ */ I("button", {
|
|
24
25
|
type: "button",
|
|
25
|
-
"aria-label": t ??
|
|
26
|
+
"aria-label": t ?? n("forms.formActions.moreActions", { defaultValue: "More actions" }),
|
|
26
27
|
className: "bento-tile-clickable inline-flex h-9 w-9 items-center justify-center rounded-full border border-border/60 bg-card/60 text-muted-foreground backdrop-blur transition-colors duration-200 hover:text-foreground",
|
|
27
|
-
children: /* @__PURE__ */ I(
|
|
28
|
+
children: /* @__PURE__ */ I(se, { size: 18 })
|
|
28
29
|
})
|
|
29
30
|
}), /* @__PURE__ */ I(m, {
|
|
30
31
|
align: "end",
|
|
31
32
|
sideOffset: 8,
|
|
32
33
|
className: "bento-dropdown min-w-44 p-1.5",
|
|
33
34
|
children: e.map((e) => {
|
|
34
|
-
let t = e.icon, n =
|
|
35
|
+
let t = e.icon, n = Me[e.tone ?? "default"];
|
|
35
36
|
return /* @__PURE__ */ L(l, {
|
|
36
37
|
onSelect: e.onSelect,
|
|
37
38
|
disabled: e.disabled,
|
|
@@ -43,7 +44,7 @@ function je({ actions: e, triggerLabel: t }) {
|
|
|
43
44
|
}
|
|
44
45
|
//#endregion
|
|
45
46
|
//#region src/bento/bento-tones.ts
|
|
46
|
-
var
|
|
47
|
+
var J = {
|
|
47
48
|
blue: "bento-tone-blue",
|
|
48
49
|
indigo: "bento-tone-indigo",
|
|
49
50
|
violet: "bento-tone-violet",
|
|
@@ -51,15 +52,15 @@ var Y = {
|
|
|
51
52
|
amber: "bento-tone-amber",
|
|
52
53
|
rose: "bento-tone-rose",
|
|
53
54
|
slate: "bento-tone-slate"
|
|
54
|
-
},
|
|
55
|
-
function
|
|
56
|
-
return `bento-chip ${
|
|
55
|
+
}, Pe = Object.keys(J);
|
|
56
|
+
function Y(e) {
|
|
57
|
+
return `bento-chip ${J[e] ?? J.slate}`;
|
|
57
58
|
}
|
|
58
59
|
//#endregion
|
|
59
60
|
//#region src/bento/bento-count-tile.tsx
|
|
60
|
-
function
|
|
61
|
+
function Fe({ to: e, icon: t, tone: n, label: r, count: i, span: a }) {
|
|
61
62
|
let o = /* @__PURE__ */ L(F, { children: [/* @__PURE__ */ I("span", {
|
|
62
|
-
className: `grid h-9 w-9 place-items-center rounded-2xl text-white shadow-md ${
|
|
63
|
+
className: `grid h-9 w-9 place-items-center rounded-2xl text-white shadow-md ${Y(n)}`,
|
|
63
64
|
children: /* @__PURE__ */ I(t, { size: 18 })
|
|
64
65
|
}), /* @__PURE__ */ L("div", { children: [/* @__PURE__ */ I("div", {
|
|
65
66
|
className: "text-3xl font-semibold tabular-nums tracking-tight",
|
|
@@ -68,7 +69,7 @@ function Ne({ to: e, icon: t, tone: n, label: r, count: i, span: a }) {
|
|
|
68
69
|
className: "text-[11px] uppercase tracking-wider text-muted-foreground",
|
|
69
70
|
children: r
|
|
70
71
|
})] })] }), s = `bento-tile bento-glass group relative flex flex-col justify-between overflow-hidden p-4 ${a}${e ? " bento-tile-clickable" : ""}`;
|
|
71
|
-
return e ? /* @__PURE__ */ I(
|
|
72
|
+
return e ? /* @__PURE__ */ I(K, {
|
|
72
73
|
to: e,
|
|
73
74
|
className: s,
|
|
74
75
|
children: o
|
|
@@ -79,34 +80,34 @@ function Ne({ to: e, icon: t, tone: n, label: r, count: i, span: a }) {
|
|
|
79
80
|
}
|
|
80
81
|
//#endregion
|
|
81
82
|
//#region src/bento/bento-empty-state.tsx
|
|
82
|
-
function
|
|
83
|
-
let c =
|
|
83
|
+
function Ie({ icon: t = U, tone: n = "indigo", title: r, description: i, action: a, align: o = "center", className: s }) {
|
|
84
|
+
let c = Y(n), l = o === "center";
|
|
84
85
|
return /* @__PURE__ */ L("div", {
|
|
85
|
-
className:
|
|
86
|
+
className: e("bento-tile bento-glass flex flex-col gap-3 rounded-3xl p-8", l ? "items-center text-center" : "items-start text-left", s),
|
|
86
87
|
children: [
|
|
87
88
|
/* @__PURE__ */ I("span", {
|
|
88
89
|
className: `grid h-12 w-12 place-items-center rounded-2xl ${c} text-white shadow-md`,
|
|
89
|
-
children: /* @__PURE__ */ I(
|
|
90
|
+
children: /* @__PURE__ */ I(t, { size: 24 })
|
|
90
91
|
}),
|
|
91
92
|
/* @__PURE__ */ I("div", {
|
|
92
93
|
className: "text-lg font-semibold tracking-tight",
|
|
93
|
-
children: n
|
|
94
|
-
}),
|
|
95
|
-
r && /* @__PURE__ */ I("p", {
|
|
96
|
-
className: a("max-w-md text-sm text-muted-foreground", l && "mx-auto"),
|
|
97
94
|
children: r
|
|
98
95
|
}),
|
|
99
|
-
i && /* @__PURE__ */ I("
|
|
100
|
-
className:
|
|
96
|
+
i && /* @__PURE__ */ I("p", {
|
|
97
|
+
className: e("max-w-md text-sm text-muted-foreground", l && "mx-auto"),
|
|
101
98
|
children: i
|
|
99
|
+
}),
|
|
100
|
+
a && /* @__PURE__ */ I("div", {
|
|
101
|
+
className: e("mt-1", l && "mx-auto"),
|
|
102
|
+
children: a
|
|
102
103
|
})
|
|
103
104
|
]
|
|
104
105
|
});
|
|
105
106
|
}
|
|
106
107
|
//#endregion
|
|
107
108
|
//#region src/bento/bento-hero.tsx
|
|
108
|
-
function
|
|
109
|
-
return /* @__PURE__ */ L(
|
|
109
|
+
function X({ to: e, children: t }) {
|
|
110
|
+
return /* @__PURE__ */ L(K, {
|
|
110
111
|
to: e,
|
|
111
112
|
className: "inline-flex items-center gap-1 hover:text-foreground",
|
|
112
113
|
children: [/* @__PURE__ */ I(ne, {
|
|
@@ -115,8 +116,8 @@ function Z({ to: e, children: t }) {
|
|
|
115
116
|
}), t]
|
|
116
117
|
});
|
|
117
118
|
}
|
|
118
|
-
function
|
|
119
|
-
let s = e ?? (t == null ? null : /* @__PURE__ */ I(
|
|
119
|
+
function Z({ eyebrow: e, backTo: t, backLabel: n, title: r, subtitle: i, leading: a, trailing: o }) {
|
|
120
|
+
let s = e ?? (t == null ? null : /* @__PURE__ */ I(X, {
|
|
120
121
|
to: t,
|
|
121
122
|
children: n
|
|
122
123
|
}));
|
|
@@ -156,11 +157,11 @@ function Q({ eyebrow: e, backTo: t, backLabel: n, title: r, subtitle: i, leading
|
|
|
156
157
|
}
|
|
157
158
|
//#endregion
|
|
158
159
|
//#region src/bento/bento-hero-icon-picker.tsx
|
|
159
|
-
function
|
|
160
|
+
function Le({ value: e, onChange: t, onClear: n, defaultIcon: r, tone: i, title: a, description: o, readOnly: s = !1 }) {
|
|
160
161
|
let { t: c } = R(), [l, u] = P(!1);
|
|
161
162
|
return s ? /* @__PURE__ */ I("span", {
|
|
162
|
-
className: `grid h-12 w-12 place-items-center rounded-2xl ${
|
|
163
|
-
children: e ? /* @__PURE__ */ I(
|
|
163
|
+
className: `grid h-12 w-12 place-items-center rounded-2xl ${Y(i)} text-white shadow-md`,
|
|
164
|
+
children: e ? /* @__PURE__ */ I(G, {
|
|
164
165
|
icon: e,
|
|
165
166
|
className: "size-6 text-white"
|
|
166
167
|
}) : /* @__PURE__ */ I(r, { size: 24 })
|
|
@@ -171,13 +172,13 @@ function Fe({ value: e, onChange: t, onClear: n, defaultIcon: r, tone: i, title:
|
|
|
171
172
|
type: "button",
|
|
172
173
|
onClick: () => u(!0),
|
|
173
174
|
"aria-label": c("forms.iconPicker.chooseAnIcon"),
|
|
174
|
-
className: `group/icon relative grid h-12 w-12 cursor-pointer place-items-center overflow-hidden rounded-2xl ${
|
|
175
|
-
children: [e ? /* @__PURE__ */ I(
|
|
175
|
+
className: `group/icon relative grid h-12 w-12 cursor-pointer place-items-center overflow-hidden rounded-2xl ${Y(i)} text-white shadow-md outline-none transition-all duration-300 ease-[cubic-bezier(0.32,0.72,0,1)] hover:scale-105 focus-visible:ring-2 focus-visible:ring-ring active:scale-95`,
|
|
176
|
+
children: [e ? /* @__PURE__ */ I(G, {
|
|
176
177
|
icon: e,
|
|
177
178
|
className: "size-6 text-white"
|
|
178
179
|
}) : /* @__PURE__ */ I(r, { size: 24 }), /* @__PURE__ */ I("span", {
|
|
179
180
|
className: "pointer-events-none absolute inset-0 grid place-items-center bg-black/40 opacity-0 transition-opacity duration-200 group-hover/icon:opacity-100",
|
|
180
|
-
children: /* @__PURE__ */ I(
|
|
181
|
+
children: /* @__PURE__ */ I(me, { className: "size-5 text-white" })
|
|
181
182
|
})]
|
|
182
183
|
}),
|
|
183
184
|
e && n && /* @__PURE__ */ I("button", {
|
|
@@ -188,7 +189,7 @@ function Fe({ value: e, onChange: t, onClear: n, defaultIcon: r, tone: i, title:
|
|
|
188
189
|
"aria-label": c("forms.common.remove"),
|
|
189
190
|
title: c("forms.common.remove"),
|
|
190
191
|
className: "absolute -right-1.5 -top-1.5 grid h-5 w-5 cursor-pointer place-items-center rounded-full border border-border/60 bg-card/90 text-foreground opacity-0 shadow-md backdrop-blur transition-opacity duration-200 bento-clear focus-visible:opacity-100 group-hover:opacity-100",
|
|
191
|
-
children: /* @__PURE__ */ I(
|
|
192
|
+
children: /* @__PURE__ */ I(W, { size: 12 })
|
|
192
193
|
}),
|
|
193
194
|
/* @__PURE__ */ I(y, {
|
|
194
195
|
open: l,
|
|
@@ -204,102 +205,102 @@ function Fe({ value: e, onChange: t, onClear: n, defaultIcon: r, tone: i, title:
|
|
|
204
205
|
}
|
|
205
206
|
//#endregion
|
|
206
207
|
//#region src/bento/bento-inline-edit.tsx
|
|
207
|
-
function
|
|
208
|
-
let { t:
|
|
209
|
-
!
|
|
210
|
-
|
|
211
|
-
}, [
|
|
212
|
-
async function
|
|
213
|
-
let
|
|
214
|
-
if (
|
|
215
|
-
|
|
208
|
+
function Re({ value: t, onSave: n, multiline: r = !1, placeholder: i, className: a, ariaLabel: o, autoFocus: s = !1, readOnly: c = !1, commitOnChange: l = !1 }) {
|
|
209
|
+
let { t: u } = R(), [d, f] = P(s), [m, h] = P(t), [g, _] = P(!1), v = N(null), [y, b] = P(t);
|
|
210
|
+
!d && t !== y && (b(t), h(t)), j(() => {
|
|
211
|
+
d && v.current && (v.current.focus(), v.current.select());
|
|
212
|
+
}, [d]);
|
|
213
|
+
async function x() {
|
|
214
|
+
let e = m.trim();
|
|
215
|
+
if (e === t) {
|
|
216
|
+
f(!1);
|
|
216
217
|
return;
|
|
217
218
|
}
|
|
218
|
-
if (!
|
|
219
|
-
|
|
219
|
+
if (!e && !i) {
|
|
220
|
+
h(t), f(!1);
|
|
220
221
|
return;
|
|
221
222
|
}
|
|
222
|
-
|
|
223
|
+
_(!0);
|
|
223
224
|
try {
|
|
224
|
-
await
|
|
225
|
+
await n(e);
|
|
225
226
|
} catch {
|
|
226
|
-
|
|
227
|
+
h(t);
|
|
227
228
|
} finally {
|
|
228
|
-
|
|
229
|
+
_(!1), f(!1);
|
|
229
230
|
}
|
|
230
231
|
}
|
|
231
|
-
function
|
|
232
|
-
|
|
232
|
+
function S() {
|
|
233
|
+
h(t), f(!1);
|
|
233
234
|
}
|
|
234
|
-
function
|
|
235
|
-
|
|
235
|
+
function C(e) {
|
|
236
|
+
h(e), l && n(e);
|
|
236
237
|
}
|
|
237
|
-
let
|
|
238
|
-
if (
|
|
239
|
-
className:
|
|
240
|
-
"aria-label":
|
|
241
|
-
children:
|
|
238
|
+
let w = !t;
|
|
239
|
+
if (c) return /* @__PURE__ */ I("span", {
|
|
240
|
+
className: e("block w-full", a),
|
|
241
|
+
"aria-label": o,
|
|
242
|
+
children: t || /* @__PURE__ */ I("span", {
|
|
242
243
|
className: "text-muted-foreground/80",
|
|
243
|
-
children:
|
|
244
|
+
children: i ?? "—"
|
|
244
245
|
})
|
|
245
246
|
});
|
|
246
|
-
let
|
|
247
|
-
if (!
|
|
247
|
+
let T = "w-full bg-transparent outline-none border-b transition-colors duration-200", E = e(T, "cursor-text rounded-sm", w ? "border-dashed border-border/70 hover:border-foreground/40" : "border-transparent hover:border-border/60 focus-visible:border-border/80", g && "opacity-60"), D = e(T, "bento-editing");
|
|
248
|
+
if (!d) return /* @__PURE__ */ I("button", {
|
|
248
249
|
type: "button",
|
|
249
|
-
onClick: () =>
|
|
250
|
-
className:
|
|
251
|
-
"aria-label":
|
|
252
|
-
disabled:
|
|
253
|
-
children:
|
|
250
|
+
onClick: () => f(!0),
|
|
251
|
+
className: e(E, "text-left", a),
|
|
252
|
+
"aria-label": o ?? u("forms.formActions.edit"),
|
|
253
|
+
disabled: g,
|
|
254
|
+
children: t || /* @__PURE__ */ I("span", {
|
|
254
255
|
className: "text-muted-foreground/80",
|
|
255
|
-
children:
|
|
256
|
+
children: i ?? "—"
|
|
256
257
|
})
|
|
257
258
|
});
|
|
258
|
-
function
|
|
259
|
+
function O(e) {
|
|
259
260
|
if (e.key === "Escape") {
|
|
260
|
-
e.preventDefault(),
|
|
261
|
+
e.preventDefault(), S();
|
|
261
262
|
return;
|
|
262
263
|
}
|
|
263
|
-
e.key === "Enter" && (!
|
|
264
|
+
e.key === "Enter" && (!r || e.metaKey || e.ctrlKey) && (e.preventDefault(), x());
|
|
264
265
|
}
|
|
265
|
-
return
|
|
266
|
-
ref:
|
|
267
|
-
value:
|
|
268
|
-
onChange: (e) =>
|
|
269
|
-
onBlur:
|
|
270
|
-
onKeyDown:
|
|
271
|
-
placeholder:
|
|
272
|
-
"aria-label":
|
|
266
|
+
return r ? /* @__PURE__ */ I("textarea", {
|
|
267
|
+
ref: v,
|
|
268
|
+
value: m,
|
|
269
|
+
onChange: (e) => C(e.target.value),
|
|
270
|
+
onBlur: x,
|
|
271
|
+
onKeyDown: O,
|
|
272
|
+
placeholder: i,
|
|
273
|
+
"aria-label": o,
|
|
273
274
|
rows: 3,
|
|
274
|
-
className:
|
|
275
|
+
className: e(D, "resize-none py-0.5 leading-snug", a)
|
|
275
276
|
}) : /* @__PURE__ */ I(p, {
|
|
276
|
-
ref:
|
|
277
|
-
value:
|
|
278
|
-
onChange: (e) =>
|
|
279
|
-
onBlur:
|
|
280
|
-
onKeyDown:
|
|
281
|
-
placeholder:
|
|
282
|
-
"aria-label":
|
|
283
|
-
className:
|
|
277
|
+
ref: v,
|
|
278
|
+
value: m,
|
|
279
|
+
onChange: (e) => C(e.target.value),
|
|
280
|
+
onBlur: x,
|
|
281
|
+
onKeyDown: O,
|
|
282
|
+
placeholder: i,
|
|
283
|
+
"aria-label": o,
|
|
284
|
+
className: e(D, "h-auto px-0 py-0 shadow-none focus-visible:ring-0", a)
|
|
284
285
|
});
|
|
285
286
|
}
|
|
286
287
|
//#endregion
|
|
287
288
|
//#region src/bento/bento-status-marker.tsx
|
|
288
|
-
function
|
|
289
|
-
let { t:
|
|
290
|
-
if (!
|
|
291
|
-
let
|
|
292
|
-
return
|
|
293
|
-
className:
|
|
294
|
-
children: [/* @__PURE__ */ I(te, { className: "size-3" }),
|
|
289
|
+
function ze({ titleMissing: t, dirty: n, className: r }) {
|
|
290
|
+
let { t: i } = R();
|
|
291
|
+
if (!t && !n) return null;
|
|
292
|
+
let a = "inline-flex items-center gap-1 rounded-full border px-2 py-0.5 text-[10px] font-medium normal-case leading-none tracking-normal";
|
|
293
|
+
return t ? /* @__PURE__ */ L("span", {
|
|
294
|
+
className: e(a, "bento-status bento-status-error", r),
|
|
295
|
+
children: [/* @__PURE__ */ I(te, { className: "size-3" }), i("bento.saveBar.titleRequired", { defaultValue: "Title required" })]
|
|
295
296
|
}) : /* @__PURE__ */ L("span", {
|
|
296
|
-
className:
|
|
297
|
-
children: [/* @__PURE__ */ I("span", { className: "h-1.5 w-1.5 rounded-full bento-status-dot bento-pulse" }),
|
|
297
|
+
className: e(a, "bento-status bento-status-warn", r),
|
|
298
|
+
children: [/* @__PURE__ */ I("span", { className: "h-1.5 w-1.5 rounded-full bento-status-dot bento-pulse" }), i("bento.saveBar.unsaved", { defaultValue: "Unsaved changes" })]
|
|
298
299
|
});
|
|
299
300
|
}
|
|
300
301
|
//#endregion
|
|
301
302
|
//#region src/bento/bento-scroll-fade.ts
|
|
302
|
-
function
|
|
303
|
+
function Be(e) {
|
|
303
304
|
j(() => {
|
|
304
305
|
let t = e.current;
|
|
305
306
|
if (!t) return;
|
|
@@ -317,17 +318,17 @@ function Re(e) {
|
|
|
317
318
|
}
|
|
318
319
|
//#endregion
|
|
319
320
|
//#region src/bento/bento-entity-shell.tsx
|
|
320
|
-
function
|
|
321
|
+
function Ve(e, t) {
|
|
321
322
|
let n = {};
|
|
322
323
|
for (let r of Object.keys(e)) Object.assign(n, { [r]: t[r] });
|
|
323
324
|
return n;
|
|
324
325
|
}
|
|
325
|
-
function
|
|
326
|
-
let { t: b } = R(),
|
|
326
|
+
function He({ entity: e, isNew: t, headlineFallback: n, eyebrow: r, listRoute: i, icon: a, tone: o, formId: s, feature: c, hasStatus: l = !1, hideIcon: u = !1, readOnly: d = !1, autosaveOnly: f = !1, badge: p, notice: m, onUpdate: h, onDelete: g, extraActions: v, children: y }) {
|
|
327
|
+
let { t: b } = R(), S = q(), [C, w] = P(!1), [E, D] = P({
|
|
327
328
|
isDirty: !1,
|
|
328
329
|
isSubmitting: !1
|
|
329
330
|
}), O = N(null);
|
|
330
|
-
|
|
331
|
+
Be(O);
|
|
331
332
|
let k = {
|
|
332
333
|
title: e.title ?? "",
|
|
333
334
|
description: e.description ?? "",
|
|
@@ -345,15 +346,15 @@ function Be({ entity: e, isNew: t, headlineFallback: n, eyebrow: r, listRoute: i
|
|
|
345
346
|
await h({
|
|
346
347
|
...e,
|
|
347
348
|
...n
|
|
348
|
-
}),
|
|
349
|
+
}), x.success(b("forms.common.updated", {
|
|
349
350
|
name: r,
|
|
350
351
|
feature: c
|
|
351
352
|
}));
|
|
352
353
|
} catch (e) {
|
|
353
354
|
console.error("Failed to update entity field", e), j((e) => ({
|
|
354
355
|
...e,
|
|
355
|
-
...
|
|
356
|
-
})),
|
|
356
|
+
...Ve(n, k)
|
|
357
|
+
})), x.error(b("forms.common.notUpdated", {
|
|
357
358
|
name: k.title || r,
|
|
358
359
|
feature: c
|
|
359
360
|
}));
|
|
@@ -362,15 +363,15 @@ function Be({ entity: e, isNew: t, headlineFallback: n, eyebrow: r, listRoute: i
|
|
|
362
363
|
async function te() {
|
|
363
364
|
if (g) {
|
|
364
365
|
try {
|
|
365
|
-
await g() ? (
|
|
366
|
+
await g() ? (x.success(b("forms.common.deleted", {
|
|
366
367
|
name: A.title,
|
|
367
368
|
feature: c
|
|
368
|
-
})),
|
|
369
|
+
})), S(i)) : x.error(b("forms.common.notDeleted", {
|
|
369
370
|
name: A.title,
|
|
370
371
|
feature: c
|
|
371
372
|
}));
|
|
372
373
|
} catch (e) {
|
|
373
|
-
console.error("Failed to delete entity", e),
|
|
374
|
+
console.error("Failed to delete entity", e), x.error(b("forms.common.notDeleted", {
|
|
374
375
|
name: A.title,
|
|
375
376
|
feature: c
|
|
376
377
|
}));
|
|
@@ -378,25 +379,25 @@ function Be({ entity: e, isNew: t, headlineFallback: n, eyebrow: r, listRoute: i
|
|
|
378
379
|
w(!1);
|
|
379
380
|
}
|
|
380
381
|
}
|
|
381
|
-
let B = A.enabled === 1, ne = !d, re = !(f && !t),
|
|
382
|
+
let B = A.enabled === 1, ne = !d, re = !(f && !t), ie = !A.title.trim(), ae = !t && !E.isDirty, oe = ie || ae, V = [...v ?? [], ...g && !d ? [{
|
|
382
383
|
label: b("forms.formActions.delete"),
|
|
383
|
-
icon:
|
|
384
|
+
icon: _e,
|
|
384
385
|
tone: "destructive",
|
|
385
386
|
onSelect: () => w(!0)
|
|
386
387
|
}] : []];
|
|
387
388
|
return /* @__PURE__ */ L(F, { children: [
|
|
388
|
-
/* @__PURE__ */ I(
|
|
389
|
+
/* @__PURE__ */ I(Z, {
|
|
389
390
|
eyebrow: /* @__PURE__ */ L("span", {
|
|
390
391
|
className: "inline-flex items-center gap-2",
|
|
391
|
-
children: [/* @__PURE__ */ I(
|
|
392
|
+
children: [/* @__PURE__ */ I(X, {
|
|
392
393
|
to: i,
|
|
393
394
|
children: r
|
|
394
|
-
}), !d && /* @__PURE__ */ I(
|
|
395
|
-
titleMissing:
|
|
395
|
+
}), !d && /* @__PURE__ */ I(ze, {
|
|
396
|
+
titleMissing: ie,
|
|
396
397
|
dirty: t || E.isDirty
|
|
397
398
|
})]
|
|
398
399
|
}),
|
|
399
|
-
leading: /* @__PURE__ */ I(
|
|
400
|
+
leading: /* @__PURE__ */ I(Le, {
|
|
400
401
|
value: A.icon,
|
|
401
402
|
onChange: (e) => z({ icon: e }),
|
|
402
403
|
onClear: () => z({ icon: null }),
|
|
@@ -406,7 +407,7 @@ function Be({ entity: e, isNew: t, headlineFallback: n, eyebrow: r, listRoute: i
|
|
|
406
407
|
description: A.description,
|
|
407
408
|
readOnly: d || u
|
|
408
409
|
}),
|
|
409
|
-
title: /* @__PURE__ */ I(
|
|
410
|
+
title: /* @__PURE__ */ I(Re, {
|
|
410
411
|
value: A.title,
|
|
411
412
|
onSave: (e) => z({ title: e }),
|
|
412
413
|
placeholder: n,
|
|
@@ -416,7 +417,7 @@ function Be({ entity: e, isNew: t, headlineFallback: n, eyebrow: r, listRoute: i
|
|
|
416
417
|
commitOnChange: t,
|
|
417
418
|
readOnly: d
|
|
418
419
|
}),
|
|
419
|
-
subtitle: /* @__PURE__ */ I(
|
|
420
|
+
subtitle: /* @__PURE__ */ I(Re, {
|
|
420
421
|
value: A.description,
|
|
421
422
|
onSave: (e) => z({ description: e }),
|
|
422
423
|
multiline: !0,
|
|
@@ -434,14 +435,14 @@ function Be({ entity: e, isNew: t, headlineFallback: n, eyebrow: r, listRoute: i
|
|
|
434
435
|
form: s,
|
|
435
436
|
size: "sm",
|
|
436
437
|
loading: E.isSubmitting,
|
|
437
|
-
disabled:
|
|
438
|
-
children: [/* @__PURE__ */ I(
|
|
438
|
+
disabled: oe,
|
|
439
|
+
children: [/* @__PURE__ */ I(H, { className: "size-4" }), b("forms.formActions.saveChanges")]
|
|
439
440
|
}), /* @__PURE__ */ L(_, {
|
|
440
441
|
type: "button",
|
|
441
442
|
size: "sm",
|
|
442
443
|
variant: "outline",
|
|
443
|
-
onClick: () =>
|
|
444
|
-
children: [/* @__PURE__ */ I(
|
|
444
|
+
onClick: () => S(i),
|
|
445
|
+
children: [/* @__PURE__ */ I(W, { className: "size-4" }), b("forms.formActions.cancel")]
|
|
445
446
|
})]
|
|
446
447
|
}),
|
|
447
448
|
p,
|
|
@@ -456,7 +457,7 @@ function Be({ entity: e, isNew: t, headlineFallback: n, eyebrow: r, listRoute: i
|
|
|
456
457
|
className: `bento-tile-clickable flex items-center gap-1.5 rounded-full border px-2.5 py-1 text-[10px] uppercase tracking-wider transition-colors duration-200 ${B ? "bento-status bento-status-on" : "border-border bg-muted text-muted-foreground hover:bg-muted/80"}`,
|
|
457
458
|
children: [/* @__PURE__ */ I("span", { className: `h-1.5 w-1.5 rounded-full ${B ? "bento-status-dot bento-pulse" : "bg-muted-foreground/60"}` }), B ? b("common.active", { defaultValue: "Active" }) : b("common.idle", { defaultValue: "Idle" })]
|
|
458
459
|
})),
|
|
459
|
-
!t &&
|
|
460
|
+
!t && V.length > 0 && /* @__PURE__ */ I(Ne, { actions: V })
|
|
460
461
|
] })
|
|
461
462
|
}),
|
|
462
463
|
/* @__PURE__ */ I("div", {
|
|
@@ -484,16 +485,16 @@ function Be({ entity: e, isNew: t, headlineFallback: n, eyebrow: r, listRoute: i
|
|
|
484
485
|
}
|
|
485
486
|
//#endregion
|
|
486
487
|
//#region src/bento/bento-layout.ts
|
|
487
|
-
var
|
|
488
|
+
var Ue = {
|
|
488
489
|
LARGE: "col-span-2 row-span-2 md:col-span-2 md:row-span-2 lg:col-span-2 lg:row-span-2",
|
|
489
490
|
MEDIUM: "col-span-2 row-span-1 md:col-span-2 md:row-span-1 lg:col-span-2 lg:row-span-1",
|
|
490
491
|
SMALL: "col-span-1 row-span-1"
|
|
491
|
-
},
|
|
492
|
+
}, We = {
|
|
492
493
|
SMALL: "MEDIUM",
|
|
493
494
|
MEDIUM: "LARGE",
|
|
494
495
|
LARGE: "SMALL"
|
|
495
496
|
};
|
|
496
|
-
function
|
|
497
|
+
function Ge(e, t, n) {
|
|
497
498
|
if (!n || n.length === 0) return e.map((e, n) => ({
|
|
498
499
|
item: e,
|
|
499
500
|
key: t(e),
|
|
@@ -514,7 +515,7 @@ function Ue(e, t, n) {
|
|
|
514
515
|
emphasis: i.get(t) ?? "MEDIUM"
|
|
515
516
|
}));
|
|
516
517
|
}
|
|
517
|
-
function
|
|
518
|
+
function Ke(e) {
|
|
518
519
|
return e.map((e, t) => ({
|
|
519
520
|
itemId: e.key,
|
|
520
521
|
emphasis: e.emphasis,
|
|
@@ -523,9 +524,9 @@ function We(e) {
|
|
|
523
524
|
}
|
|
524
525
|
//#endregion
|
|
525
526
|
//#region src/bento/bento-entity-tile.tsx
|
|
526
|
-
function
|
|
527
|
-
let { t: f } = R(), p =
|
|
528
|
-
return /* @__PURE__ */ L(
|
|
527
|
+
function qe({ to: e, emphasis: t, featured: n, defaultIcon: r, icon: i, tone: a = "indigo", title: o, description: s, meta: c, enabled: l, hasStatus: u = !1, viewTransitionName: d }) {
|
|
528
|
+
let { t: f } = R(), p = Y(a), m = t ?? (n ? "LARGE" : "MEDIUM"), h = m === "LARGE", g = m === "SMALL", _ = Ue[m], v = l === 1, y = h ? "p-6 md:p-7" : g ? "p-4" : "p-5", b = h ? "h-14 w-14" : g ? "h-8 w-8" : "h-9 w-9", x = h ? 28 : g ? 16 : 18, S = h ? "text-xl md:text-2xl" : g ? "text-sm" : "text-base md:text-lg";
|
|
529
|
+
return /* @__PURE__ */ L(K, {
|
|
529
530
|
to: e,
|
|
530
531
|
className: `bento-tile bento-tile-clickable bento-glass group relative flex flex-col ${h ? "gap-5" : "gap-4"} overflow-hidden ${y} ${_}`,
|
|
531
532
|
style: d ? { viewTransitionName: d } : void 0,
|
|
@@ -541,7 +542,7 @@ function Ge({ to: e, emphasis: t, featured: n, defaultIcon: r, icon: i, tone: a
|
|
|
541
542
|
className: "relative z-1 flex items-center justify-between",
|
|
542
543
|
children: [/* @__PURE__ */ I("span", {
|
|
543
544
|
className: `grid place-items-center rounded-2xl ${p} text-white shadow-md ${b}`,
|
|
544
|
-
children: i ? /* @__PURE__ */ I(
|
|
545
|
+
children: i ? /* @__PURE__ */ I(G, {
|
|
545
546
|
icon: i,
|
|
546
547
|
className: h ? "size-7 text-white" : "size-4.5 text-white"
|
|
547
548
|
}) : /* @__PURE__ */ I(r, { size: x })
|
|
@@ -572,55 +573,55 @@ function Ge({ to: e, emphasis: t, featured: n, defaultIcon: r, icon: i, tone: a
|
|
|
572
573
|
}
|
|
573
574
|
//#endregion
|
|
574
575
|
//#region src/bento/bento-list-page.tsx
|
|
575
|
-
var
|
|
576
|
-
function
|
|
577
|
-
let { t:
|
|
576
|
+
var Je = "bento-grid grid auto-rows-[minmax(140px,auto)] grid-cols-2 gap-4 md:grid-cols-4 md:gap-5 lg:grid-cols-6";
|
|
577
|
+
function Ye({ items: e, error: t, tryAgainUrl: n, listId: r, eyebrow: i, backTo: a, backLabel: o, heroIcon: s, title: c, subtitle: l, tone: u = "indigo", headerAction: d, newRoute: f, newLabel: p, newSubtitle: m, hideNew: h = !1, itemKey: g, renderTile: _, emptyTitle: v, emptyDescription: y, layout: b }) {
|
|
578
|
+
let { t: x } = R(), S = Y(u), [C, T] = P(!1), D = M(() => Ge(e ?? [], g, b?.data?.entries), [
|
|
578
579
|
e,
|
|
579
580
|
g,
|
|
580
|
-
|
|
581
|
-
]), O = !!r && !!
|
|
581
|
+
b?.data?.entries
|
|
582
|
+
]), O = !!r && !!b && (e?.length ?? 0) > 0;
|
|
582
583
|
return /* @__PURE__ */ L(E, {
|
|
583
584
|
checkIsNotUndefined: e,
|
|
584
585
|
error: t ?? null,
|
|
585
586
|
tryAgainUrl: n,
|
|
586
587
|
children: [
|
|
587
|
-
/* @__PURE__ */ I(
|
|
588
|
+
/* @__PURE__ */ I(Z, {
|
|
588
589
|
eyebrow: i,
|
|
589
590
|
backTo: a,
|
|
590
591
|
backLabel: o,
|
|
591
592
|
leading: /* @__PURE__ */ I("span", {
|
|
592
|
-
className: `grid h-12 w-12 place-items-center rounded-2xl ${
|
|
593
|
+
className: `grid h-12 w-12 place-items-center rounded-2xl ${S} text-white shadow-md`,
|
|
593
594
|
children: /* @__PURE__ */ I(s, { size: 24 })
|
|
594
595
|
}),
|
|
595
596
|
title: c,
|
|
596
597
|
subtitle: l
|
|
597
598
|
}),
|
|
598
|
-
(d || O && !
|
|
599
|
+
(d || O && !C) && /* @__PURE__ */ L("div", {
|
|
599
600
|
className: "mb-4 flex flex-wrap items-center gap-2",
|
|
600
|
-
children: [d, O && !
|
|
601
|
+
children: [d, O && !C && /* @__PURE__ */ L(w, {
|
|
601
602
|
variant: "outline",
|
|
602
603
|
size: "sm",
|
|
603
604
|
onClick: () => T(!0),
|
|
604
605
|
className: "ml-auto gap-2",
|
|
605
|
-
children: [/* @__PURE__ */ I(z, { size: 16 }),
|
|
606
|
+
children: [/* @__PURE__ */ I(z, { size: 16 }), x("bento.layout.customize", { defaultValue: "Customize layout" })]
|
|
606
607
|
})]
|
|
607
608
|
}),
|
|
608
|
-
|
|
609
|
-
layout:
|
|
609
|
+
C && r && b ? /* @__PURE__ */ I(Qe, {
|
|
610
|
+
layout: b,
|
|
610
611
|
resolved: D,
|
|
611
|
-
canEditGlobal:
|
|
612
|
-
isCustomized:
|
|
612
|
+
canEditGlobal: b?.data?.canEditGlobal ?? !1,
|
|
613
|
+
isCustomized: b?.data?.source === "USER",
|
|
613
614
|
renderTile: _,
|
|
614
|
-
chip:
|
|
615
|
+
chip: S,
|
|
615
616
|
hideNew: h,
|
|
616
617
|
newRoute: f,
|
|
617
618
|
newLabel: p,
|
|
618
619
|
newSubtitle: m,
|
|
619
620
|
onClose: () => T(!1)
|
|
620
|
-
}) : /* @__PURE__ */ I(
|
|
621
|
+
}) : /* @__PURE__ */ I(Ze, {
|
|
621
622
|
resolved: D,
|
|
622
623
|
renderTile: _,
|
|
623
|
-
chip:
|
|
624
|
+
chip: S,
|
|
624
625
|
hideNew: h,
|
|
625
626
|
newRoute: f,
|
|
626
627
|
newLabel: p,
|
|
@@ -632,16 +633,16 @@ function qe({ items: e, error: t, tryAgainUrl: n, listId: r, eyebrow: i, backTo:
|
|
|
632
633
|
]
|
|
633
634
|
});
|
|
634
635
|
}
|
|
635
|
-
function
|
|
636
|
-
let f =
|
|
636
|
+
function Xe({ items: e, error: t, tryAgainUrl: n, tone: r = "indigo", newRoute: i, newLabel: a, newSubtitle: o, hideNew: s = !1, itemKey: c, renderTile: l, emptyTitle: u, emptyDescription: d }) {
|
|
637
|
+
let f = Y(r);
|
|
637
638
|
return /* @__PURE__ */ I(E, {
|
|
638
639
|
checkIsNotUndefined: e,
|
|
639
640
|
error: t ?? null,
|
|
640
641
|
tryAgainUrl: n,
|
|
641
642
|
children: /* @__PURE__ */ L("div", {
|
|
642
|
-
className:
|
|
643
|
+
className: Je,
|
|
643
644
|
children: [
|
|
644
|
-
!s && i && a ? /* @__PURE__ */ I(
|
|
645
|
+
!s && i && a ? /* @__PURE__ */ I(nt, {
|
|
645
646
|
route: i,
|
|
646
647
|
label: a,
|
|
647
648
|
subtitle: o,
|
|
@@ -651,7 +652,7 @@ function Je({ items: e, error: t, tryAgainUrl: n, tone: r = "indigo", newRoute:
|
|
|
651
652
|
className: "contents",
|
|
652
653
|
children: l(e)
|
|
653
654
|
}, c(e))),
|
|
654
|
-
e?.length === 0 && /* @__PURE__ */ I(
|
|
655
|
+
e?.length === 0 && /* @__PURE__ */ I(rt, {
|
|
655
656
|
title: u,
|
|
656
657
|
description: d
|
|
657
658
|
})
|
|
@@ -659,30 +660,30 @@ function Je({ items: e, error: t, tryAgainUrl: n, tone: r = "indigo", newRoute:
|
|
|
659
660
|
})
|
|
660
661
|
});
|
|
661
662
|
}
|
|
662
|
-
function
|
|
663
|
-
let d =
|
|
663
|
+
function Ze({ resolved: t, renderTile: n, chip: r, hideNew: i, newRoute: a, newLabel: o, newSubtitle: s, isEmpty: c, emptyTitle: l, emptyDescription: u }) {
|
|
664
|
+
let d = t.some((e) => e.emphasis === "SMALL");
|
|
664
665
|
return /* @__PURE__ */ L("div", {
|
|
665
|
-
className:
|
|
666
|
+
className: e(Je, d && "grid-flow-dense"),
|
|
666
667
|
children: [
|
|
667
|
-
!
|
|
668
|
-
route:
|
|
668
|
+
!i && /* @__PURE__ */ I(nt, {
|
|
669
|
+
route: a,
|
|
669
670
|
label: o,
|
|
670
671
|
subtitle: s,
|
|
671
|
-
chip:
|
|
672
|
+
chip: r
|
|
672
673
|
}),
|
|
673
|
-
|
|
674
|
+
t.map(({ item: e, key: t, emphasis: r }) => /* @__PURE__ */ I("span", {
|
|
674
675
|
className: "contents",
|
|
675
|
-
children:
|
|
676
|
-
},
|
|
677
|
-
c && /* @__PURE__ */ I(
|
|
676
|
+
children: n(e, r)
|
|
677
|
+
}, t)),
|
|
678
|
+
c && /* @__PURE__ */ I(rt, {
|
|
678
679
|
title: l,
|
|
679
680
|
description: u
|
|
680
681
|
})
|
|
681
682
|
]
|
|
682
683
|
});
|
|
683
684
|
}
|
|
684
|
-
function
|
|
685
|
-
let { t: f } = R(), [p, m] = P(
|
|
685
|
+
function Qe({ layout: t, resolved: n, canEditGlobal: r, isCustomized: i, renderTile: a, chip: o, hideNew: s, newRoute: c, newLabel: l, newSubtitle: u, onClose: d }) {
|
|
686
|
+
let { t: f } = R(), [p, m] = P(n), h = t.saving ?? !1, [g, _] = P(!1), v = (e) => async () => {
|
|
686
687
|
if (e) {
|
|
687
688
|
_(!1);
|
|
688
689
|
try {
|
|
@@ -691,21 +692,21 @@ function Xe({ layout: e, resolved: t, canEditGlobal: n, isCustomized: r, renderT
|
|
|
691
692
|
console.error("Failed to save the bento layout", e), _(!0);
|
|
692
693
|
}
|
|
693
694
|
}
|
|
694
|
-
}, y =
|
|
695
|
-
function
|
|
695
|
+
}, y = Ee(Te(Ce, { activationConstraint: { distance: 8 } }), Te(Se));
|
|
696
|
+
function b(e) {
|
|
696
697
|
let { active: t, over: n } = e;
|
|
697
698
|
!n || t.id === n.id || m((e) => {
|
|
698
699
|
let r = e.findIndex((e) => e.key === t.id), i = e.findIndex((e) => e.key === n.id);
|
|
699
|
-
return r < 0 || i < 0 ? e :
|
|
700
|
+
return r < 0 || i < 0 ? e : Oe(e, r, i);
|
|
700
701
|
});
|
|
701
702
|
}
|
|
702
|
-
function
|
|
703
|
+
function x(e, t) {
|
|
703
704
|
m((n) => n.map((n) => n.key === e ? {
|
|
704
705
|
...n,
|
|
705
706
|
emphasis: t
|
|
706
707
|
} : n));
|
|
707
708
|
}
|
|
708
|
-
let
|
|
709
|
+
let S = M(() => Ke(p), [p]), C = p.some((e) => e.emphasis === "SMALL");
|
|
709
710
|
return /* @__PURE__ */ L("div", { children: [/* @__PURE__ */ L("div", {
|
|
710
711
|
className: "mb-4 flex flex-wrap items-center gap-2 rounded-2xl border border-border/60 bg-card/40 p-3 backdrop-blur-md",
|
|
711
712
|
children: [
|
|
@@ -713,36 +714,36 @@ function Xe({ layout: e, resolved: t, canEditGlobal: n, isCustomized: r, renderT
|
|
|
713
714
|
className: "mr-auto text-sm text-muted-foreground",
|
|
714
715
|
children: f("bento.layout.editHint", { defaultValue: "Drag tiles to reorder · tap the size button to resize" })
|
|
715
716
|
}),
|
|
716
|
-
|
|
717
|
+
i && t.onReset && /* @__PURE__ */ L(w, {
|
|
717
718
|
variant: "ghost",
|
|
718
719
|
size: "sm",
|
|
719
720
|
className: "gap-2",
|
|
720
721
|
disabled: h,
|
|
721
|
-
onClick: v(
|
|
722
|
+
onClick: v(t.onReset),
|
|
722
723
|
children: [/* @__PURE__ */ I(B, { size: 16 }), f("bento.layout.reset", { defaultValue: "Reset to default" })]
|
|
723
724
|
}),
|
|
724
|
-
|
|
725
|
+
r && t.onSaveGlobal && /* @__PURE__ */ L(w, {
|
|
725
726
|
variant: "outline",
|
|
726
727
|
size: "sm",
|
|
727
728
|
className: "gap-2",
|
|
728
729
|
disabled: h,
|
|
729
|
-
onClick: v(() =>
|
|
730
|
-
children: [/* @__PURE__ */ I(
|
|
730
|
+
onClick: v(() => t.onSaveGlobal?.(S)),
|
|
731
|
+
children: [/* @__PURE__ */ I(ye, { size: 16 }), f("bento.layout.saveGlobal", { defaultValue: "Set as default for everyone" })]
|
|
731
732
|
}),
|
|
732
|
-
/* @__PURE__ */ L(
|
|
733
|
+
/* @__PURE__ */ L(w, {
|
|
733
734
|
variant: "ghost",
|
|
734
735
|
size: "sm",
|
|
735
736
|
className: "gap-2",
|
|
736
737
|
disabled: h,
|
|
737
738
|
onClick: d,
|
|
738
|
-
children: [/* @__PURE__ */ I(
|
|
739
|
+
children: [/* @__PURE__ */ I(W, { size: 16 }), f("common.cancel", { defaultValue: "Cancel" })]
|
|
739
740
|
}),
|
|
740
|
-
/* @__PURE__ */ L(
|
|
741
|
+
/* @__PURE__ */ L(w, {
|
|
741
742
|
size: "sm",
|
|
742
743
|
className: "gap-2",
|
|
743
744
|
disabled: h,
|
|
744
|
-
onClick: v(() =>
|
|
745
|
-
children: [/* @__PURE__ */ I(
|
|
745
|
+
onClick: v(() => t.onSave(S)),
|
|
746
|
+
children: [/* @__PURE__ */ I(H, { size: 16 }), f("bento.layout.save", { defaultValue: "Save layout" })]
|
|
746
747
|
}),
|
|
747
748
|
g && /* @__PURE__ */ I("p", {
|
|
748
749
|
role: "alert",
|
|
@@ -750,35 +751,35 @@ function Xe({ layout: e, resolved: t, canEditGlobal: n, isCustomized: r, renderT
|
|
|
750
751
|
children: f("bento.layout.saveFailed", { defaultValue: "The layout could not be saved. Nothing has changed — try again." })
|
|
751
752
|
})
|
|
752
753
|
]
|
|
753
|
-
}), /* @__PURE__ */ I(
|
|
754
|
+
}), /* @__PURE__ */ I(xe, {
|
|
754
755
|
sensors: y,
|
|
755
|
-
collisionDetection:
|
|
756
|
-
onDragEnd:
|
|
757
|
-
children: /* @__PURE__ */ I(
|
|
756
|
+
collisionDetection: we,
|
|
757
|
+
onDragEnd: b,
|
|
758
|
+
children: /* @__PURE__ */ I(De, {
|
|
758
759
|
items: p.map((e) => e.key),
|
|
759
|
-
strategy:
|
|
760
|
+
strategy: ke,
|
|
760
761
|
children: /* @__PURE__ */ L("div", {
|
|
761
|
-
className:
|
|
762
|
-
children: [!s && /* @__PURE__ */ I(
|
|
762
|
+
className: e(Je, C && "grid-flow-dense"),
|
|
763
|
+
children: [!s && /* @__PURE__ */ I(nt, {
|
|
763
764
|
route: c,
|
|
764
765
|
label: l,
|
|
765
766
|
subtitle: u,
|
|
766
767
|
chip: o
|
|
767
|
-
}), p.map(({ item: e, key: t, emphasis: n }) => /* @__PURE__ */ I(
|
|
768
|
+
}), p.map(({ item: e, key: t, emphasis: n }) => /* @__PURE__ */ I(tt, {
|
|
768
769
|
id: t,
|
|
769
770
|
emphasis: n,
|
|
770
|
-
onSetEmphasis: (e) =>
|
|
771
|
-
children:
|
|
771
|
+
onSetEmphasis: (e) => x(t, e),
|
|
772
|
+
children: a(e, n)
|
|
772
773
|
}, t))]
|
|
773
774
|
})
|
|
774
775
|
})
|
|
775
776
|
})] });
|
|
776
777
|
}
|
|
777
|
-
var
|
|
778
|
+
var $e = [
|
|
778
779
|
"SMALL",
|
|
779
780
|
"MEDIUM",
|
|
780
781
|
"LARGE"
|
|
781
|
-
],
|
|
782
|
+
], et = {
|
|
782
783
|
SMALL: {
|
|
783
784
|
key: "bento.layout.size.small",
|
|
784
785
|
def: "Small"
|
|
@@ -792,9 +793,9 @@ var Ze = [
|
|
|
792
793
|
def: "Large"
|
|
793
794
|
}
|
|
794
795
|
};
|
|
795
|
-
function
|
|
796
|
-
let { t:
|
|
797
|
-
transform:
|
|
796
|
+
function tt({ id: t, emphasis: n, onSetEmphasis: r, children: i }) {
|
|
797
|
+
let { t: a } = R(), { attributes: o, listeners: s, setNodeRef: c, transform: l, transition: u, isDragging: d } = Ae({ id: t }), f = {
|
|
798
|
+
transform: je.Translate.toString(l),
|
|
798
799
|
transition: u,
|
|
799
800
|
opacity: d ? .6 : 1,
|
|
800
801
|
zIndex: d ? 50 : void 0
|
|
@@ -802,35 +803,35 @@ function $e({ id: e, emphasis: t, onSetEmphasis: n, children: r }) {
|
|
|
802
803
|
return /* @__PURE__ */ L("div", {
|
|
803
804
|
ref: c,
|
|
804
805
|
style: f,
|
|
805
|
-
className:
|
|
806
|
+
className: e("relative h-full", Ue[n]),
|
|
806
807
|
children: [/* @__PURE__ */ I("div", {
|
|
807
808
|
className: "pointer-events-none h-full select-none [&>*]:h-full [&>*]:w-full",
|
|
808
|
-
children:
|
|
809
|
+
children: i
|
|
809
810
|
}), /* @__PURE__ */ L("div", {
|
|
810
811
|
className: "absolute right-2 top-2 z-10 flex items-center gap-1",
|
|
811
812
|
children: [/* @__PURE__ */ I("div", {
|
|
812
813
|
role: "group",
|
|
813
|
-
"aria-label":
|
|
814
|
+
"aria-label": a("bento.layout.sizeGroup", { defaultValue: "Tile size" }),
|
|
814
815
|
className: "flex items-center gap-0.5 rounded-full border border-border/60 bg-background/80 p-0.5 shadow-sm backdrop-blur",
|
|
815
|
-
children:
|
|
816
|
-
let
|
|
816
|
+
children: $e.map((t) => {
|
|
817
|
+
let i = t === n, o = a(et[t].key, { defaultValue: et[t].def });
|
|
817
818
|
return /* @__PURE__ */ I("button", {
|
|
818
819
|
type: "button",
|
|
819
|
-
onClick: () =>
|
|
820
|
-
"aria-pressed":
|
|
820
|
+
onClick: () => r(t),
|
|
821
|
+
"aria-pressed": i,
|
|
821
822
|
"aria-label": o,
|
|
822
823
|
title: o,
|
|
823
|
-
className:
|
|
824
|
+
className: e("grid h-6 w-6 place-items-center rounded-full text-[11px] font-semibold uppercase transition-colors", i ? "bg-primary text-primary-foreground shadow" : "text-muted-foreground hover:bg-muted"),
|
|
824
825
|
children: o.charAt(0)
|
|
825
|
-
},
|
|
826
|
+
}, t);
|
|
826
827
|
})
|
|
827
828
|
}), /* @__PURE__ */ I("button", {
|
|
828
829
|
type: "button",
|
|
829
830
|
...o,
|
|
830
831
|
...s,
|
|
831
|
-
"aria-label":
|
|
832
|
+
"aria-label": a("bento.layout.dragToReorder", { defaultValue: "Drag to reorder" }),
|
|
832
833
|
className: "grid h-7 w-7 cursor-grab place-items-center rounded-full border border-border/60 bg-background/80 shadow-sm backdrop-blur hover:bg-background active:cursor-grabbing",
|
|
833
|
-
children: /* @__PURE__ */ I(
|
|
834
|
+
children: /* @__PURE__ */ I(le, {
|
|
834
835
|
size: 14,
|
|
835
836
|
className: "text-muted-foreground"
|
|
836
837
|
})
|
|
@@ -838,16 +839,16 @@ function $e({ id: e, emphasis: t, onSetEmphasis: n, children: r }) {
|
|
|
838
839
|
})]
|
|
839
840
|
});
|
|
840
841
|
}
|
|
841
|
-
function
|
|
842
|
+
function nt({ route: e, label: t, subtitle: n, chip: r }) {
|
|
842
843
|
let { t: i } = R();
|
|
843
|
-
return /* @__PURE__ */ L(
|
|
844
|
+
return /* @__PURE__ */ L(K, {
|
|
844
845
|
to: e,
|
|
845
846
|
className: "bento-tile bento-tile-clickable col-span-2 row-span-1 flex flex-col gap-3 rounded-3xl border-2 border-dashed border-border/60 bg-card/30 p-5 backdrop-blur-md bento-new-tile hover:bg-card/50 md:col-span-2 md:row-span-1 lg:col-span-2 lg:row-span-1",
|
|
846
847
|
children: [/* @__PURE__ */ L("div", {
|
|
847
848
|
className: "flex items-center gap-3",
|
|
848
849
|
children: [/* @__PURE__ */ I("span", {
|
|
849
850
|
className: `bento-pulse grid h-10 w-10 place-items-center rounded-2xl ${r} text-white shadow-md`,
|
|
850
|
-
children: /* @__PURE__ */ I(
|
|
851
|
+
children: /* @__PURE__ */ I(he, { size: 20 })
|
|
851
852
|
}), /* @__PURE__ */ I("span", {
|
|
852
853
|
className: "text-[11px] uppercase tracking-wider text-muted-foreground",
|
|
853
854
|
children: i("forms.formActions.new", { defaultValue: "New" })
|
|
@@ -864,9 +865,9 @@ function et({ route: e, label: t, subtitle: n, chip: r }) {
|
|
|
864
865
|
})] })]
|
|
865
866
|
});
|
|
866
867
|
}
|
|
867
|
-
function
|
|
868
|
-
return /* @__PURE__ */ I(
|
|
869
|
-
icon:
|
|
868
|
+
function rt({ title: e, description: t }) {
|
|
869
|
+
return /* @__PURE__ */ I(Ie, {
|
|
870
|
+
icon: U,
|
|
870
871
|
title: e,
|
|
871
872
|
description: t,
|
|
872
873
|
align: "start",
|
|
@@ -875,7 +876,7 @@ function tt({ title: e, description: t }) {
|
|
|
875
876
|
}
|
|
876
877
|
//#endregion
|
|
877
878
|
//#region src/bento/bento-save-bar.tsx
|
|
878
|
-
function
|
|
879
|
+
function Q({ title: e, badges: t, actions: n, onCancel: r, loading: i, disabled: a, dirty: o, titleMissing: s }) {
|
|
879
880
|
let { t: c } = R();
|
|
880
881
|
return /* @__PURE__ */ L("div", {
|
|
881
882
|
className: "bento-glass flex items-center justify-between gap-4 rounded-2xl px-4 py-3 shadow-md backdrop-blur-xl",
|
|
@@ -886,7 +887,7 @@ function nt({ title: e, badges: t, actions: n, onCancel: r, loading: i, disabled
|
|
|
886
887
|
className: "truncate text-base font-semibold tracking-tight md:text-lg",
|
|
887
888
|
children: e
|
|
888
889
|
}),
|
|
889
|
-
/* @__PURE__ */ I(
|
|
890
|
+
/* @__PURE__ */ I(ze, {
|
|
890
891
|
titleMissing: s,
|
|
891
892
|
dirty: o
|
|
892
893
|
}),
|
|
@@ -902,29 +903,29 @@ function nt({ title: e, badges: t, actions: n, onCancel: r, loading: i, disabled
|
|
|
902
903
|
size: "sm",
|
|
903
904
|
loading: i,
|
|
904
905
|
disabled: a,
|
|
905
|
-
children: [/* @__PURE__ */ I(
|
|
906
|
+
children: [/* @__PURE__ */ I(H, { className: "size-4" }), c("forms.formActions.saveChanges")]
|
|
906
907
|
}), r && /* @__PURE__ */ L(_, {
|
|
907
908
|
type: "button",
|
|
908
909
|
variant: "outline",
|
|
909
910
|
size: "sm",
|
|
910
911
|
onClick: r,
|
|
911
|
-
children: [/* @__PURE__ */ I(
|
|
912
|
+
children: [/* @__PURE__ */ I(W, { className: "size-4" }), c("forms.formActions.cancel")]
|
|
912
913
|
})] })
|
|
913
914
|
})]
|
|
914
915
|
});
|
|
915
916
|
}
|
|
916
|
-
function
|
|
917
|
+
function it({ children: e }) {
|
|
917
918
|
return /* @__PURE__ */ I("span", {
|
|
918
919
|
className: "rounded-full border border-border/60 bg-card/50 px-2 py-0.5 text-[10px] uppercase tracking-wider text-muted-foreground backdrop-blur",
|
|
919
920
|
children: e
|
|
920
921
|
});
|
|
921
922
|
}
|
|
922
|
-
|
|
923
|
+
Q.Badge = it;
|
|
923
924
|
//#endregion
|
|
924
925
|
//#region src/bento/bento-scroll-save-bar.tsx
|
|
925
|
-
function
|
|
926
|
+
function at(e) {
|
|
926
927
|
let t = N(null);
|
|
927
|
-
return
|
|
928
|
+
return Be(t), /* @__PURE__ */ L(F, { children: [
|
|
928
929
|
/* @__PURE__ */ I("div", {
|
|
929
930
|
ref: t,
|
|
930
931
|
"aria-hidden": !0,
|
|
@@ -936,16 +937,16 @@ function it(e) {
|
|
|
936
937
|
}),
|
|
937
938
|
/* @__PURE__ */ I("div", {
|
|
938
939
|
className: "bento-fade-in fixed inset-x-0 top-20 z-20 mx-auto w-full max-w-7xl px-4 md:px-8",
|
|
939
|
-
children: /* @__PURE__ */ I(
|
|
940
|
+
children: /* @__PURE__ */ I(Q, { ...e })
|
|
940
941
|
})
|
|
941
942
|
] });
|
|
942
943
|
}
|
|
943
944
|
//#endregion
|
|
944
945
|
//#region src/bento/bento-form-hero.tsx
|
|
945
|
-
function
|
|
946
|
+
function ot({ eyebrow: e, backTo: t, backLabel: n, leading: r, title: i, subtitle: a, trailing: o, onCancel: s, actions: c, loading: l, dirty: u, titleMissing: d, saveDisabled: f, stickyTitle: p, stickyBadges: m }) {
|
|
946
947
|
let { t: h } = R(), g = f ?? (!!d || !u);
|
|
947
|
-
return /* @__PURE__ */ L(F, { children: [/* @__PURE__ */ I(
|
|
948
|
-
eyebrow: t === void 0 ? e : /* @__PURE__ */ I(
|
|
948
|
+
return /* @__PURE__ */ L(F, { children: [/* @__PURE__ */ I(Z, {
|
|
949
|
+
eyebrow: t === void 0 ? e : /* @__PURE__ */ I(X, {
|
|
949
950
|
to: t,
|
|
950
951
|
children: n
|
|
951
952
|
}),
|
|
@@ -959,16 +960,16 @@ function at({ eyebrow: e, backTo: t, backLabel: n, leading: r, title: i, subtitl
|
|
|
959
960
|
size: "sm",
|
|
960
961
|
loading: l,
|
|
961
962
|
disabled: g,
|
|
962
|
-
children: [/* @__PURE__ */ I(
|
|
963
|
+
children: [/* @__PURE__ */ I(H, { className: "size-4" }), h("forms.formActions.saveChanges")]
|
|
963
964
|
}), /* @__PURE__ */ L(_, {
|
|
964
965
|
type: "button",
|
|
965
966
|
variant: "outline",
|
|
966
967
|
size: "sm",
|
|
967
968
|
onClick: s,
|
|
968
|
-
children: [/* @__PURE__ */ I(
|
|
969
|
+
children: [/* @__PURE__ */ I(W, { className: "size-4" }), h("forms.formActions.cancel")]
|
|
969
970
|
})] })
|
|
970
971
|
}), o] })
|
|
971
|
-
}), /* @__PURE__ */ I(
|
|
972
|
+
}), /* @__PURE__ */ I(at, {
|
|
972
973
|
title: p,
|
|
973
974
|
badges: m,
|
|
974
975
|
actions: c,
|
|
@@ -981,58 +982,58 @@ function at({ eyebrow: e, backTo: t, backLabel: n, leading: r, title: i, subtitl
|
|
|
981
982
|
}
|
|
982
983
|
//#endregion
|
|
983
984
|
//#region src/bento/bento-form-section.tsx
|
|
984
|
-
function
|
|
985
|
+
function st({ icon: t, tone: n, title: r, description: i, children: a, trailing: o, as: s = "h2", className: c }) {
|
|
985
986
|
return /* @__PURE__ */ L("section", {
|
|
986
|
-
className: "bento-tile bento-glass relative flex flex-col gap-5 overflow-hidden rounded-3xl p-5 md:p-6",
|
|
987
|
+
className: e("bento-tile bento-glass relative flex flex-col gap-5 overflow-hidden rounded-3xl p-5 md:p-6", c),
|
|
987
988
|
children: [/* @__PURE__ */ L("header", {
|
|
988
989
|
className: "flex items-start justify-between gap-3",
|
|
989
990
|
children: [/* @__PURE__ */ L("div", {
|
|
990
991
|
className: "flex items-center gap-3",
|
|
991
992
|
children: [/* @__PURE__ */ I("span", {
|
|
992
|
-
className: `grid h-10 w-10 place-items-center rounded-2xl text-white shadow-md ${
|
|
993
|
-
children: /* @__PURE__ */ I(
|
|
993
|
+
className: `grid h-10 w-10 place-items-center rounded-2xl text-white shadow-md ${Y(n)}`,
|
|
994
|
+
children: /* @__PURE__ */ I(t, { size: 20 })
|
|
994
995
|
}), /* @__PURE__ */ L("div", {
|
|
995
996
|
className: "flex flex-col gap-0.5",
|
|
996
|
-
children: [/* @__PURE__ */ I(
|
|
997
|
+
children: [/* @__PURE__ */ I(s, {
|
|
997
998
|
className: "text-base font-semibold tracking-tight md:text-lg",
|
|
998
|
-
children: n
|
|
999
|
-
}), r && /* @__PURE__ */ I("p", {
|
|
1000
|
-
className: "text-sm text-muted-foreground",
|
|
1001
999
|
children: r
|
|
1000
|
+
}), i && /* @__PURE__ */ I("p", {
|
|
1001
|
+
className: "text-sm text-muted-foreground",
|
|
1002
|
+
children: i
|
|
1002
1003
|
})]
|
|
1003
1004
|
})]
|
|
1004
|
-
}),
|
|
1005
|
+
}), o && /* @__PURE__ */ I("div", {
|
|
1005
1006
|
className: "shrink-0",
|
|
1006
|
-
children:
|
|
1007
|
+
children: o
|
|
1007
1008
|
})]
|
|
1008
1009
|
}), /* @__PURE__ */ I("div", {
|
|
1009
1010
|
className: "flex flex-col gap-5",
|
|
1010
|
-
children:
|
|
1011
|
+
children: a
|
|
1011
1012
|
})]
|
|
1012
1013
|
});
|
|
1013
1014
|
}
|
|
1014
1015
|
//#endregion
|
|
1015
1016
|
//#region src/bento/bento-panel.tsx
|
|
1016
|
-
function
|
|
1017
|
+
function ct({ children: t, className: n, contentClassName: r }) {
|
|
1017
1018
|
return /* @__PURE__ */ I("div", {
|
|
1018
|
-
className:
|
|
1019
|
+
className: e("bento-glass rounded-2xl shadow-md", n),
|
|
1019
1020
|
children: /* @__PURE__ */ I("div", {
|
|
1020
|
-
className:
|
|
1021
|
-
children:
|
|
1021
|
+
className: r,
|
|
1022
|
+
children: t
|
|
1022
1023
|
})
|
|
1023
1024
|
});
|
|
1024
1025
|
}
|
|
1025
1026
|
//#endregion
|
|
1026
1027
|
//#region src/bento/bento-back-to-top.tsx
|
|
1027
|
-
var
|
|
1028
|
-
function
|
|
1028
|
+
var lt = 480;
|
|
1029
|
+
function ut(e) {
|
|
1029
1030
|
return window.addEventListener("scroll", e, { passive: !0 }), () => window.removeEventListener("scroll", e);
|
|
1030
1031
|
}
|
|
1031
|
-
function ut() {
|
|
1032
|
-
return window.scrollY > ct;
|
|
1033
|
-
}
|
|
1034
1032
|
function dt() {
|
|
1035
|
-
|
|
1033
|
+
return window.scrollY > lt;
|
|
1034
|
+
}
|
|
1035
|
+
function ft() {
|
|
1036
|
+
let { t: e } = R(), t = ee(ut, dt, () => !1);
|
|
1036
1037
|
return /* @__PURE__ */ I("button", {
|
|
1037
1038
|
type: "button",
|
|
1038
1039
|
"aria-label": e("bento.backToTop", { defaultValue: "Back to top" }),
|
|
@@ -1042,22 +1043,62 @@ function dt() {
|
|
|
1042
1043
|
behavior: "smooth"
|
|
1043
1044
|
}),
|
|
1044
1045
|
className: `fixed bottom-6 right-6 z-40 grid h-11 w-11 place-items-center rounded-full border border-border/60 bg-card/80 text-foreground shadow-lg backdrop-blur-xl transition-all duration-300 ease-[cubic-bezier(0.32,0.72,0,1)] hover:-translate-y-0.5 hover:shadow-xl active:scale-95 ${t ? "translate-y-0 scale-100 opacity-100" : "pointer-events-none translate-y-4 scale-90 opacity-0"}`,
|
|
1045
|
-
children: /* @__PURE__ */ I(
|
|
1046
|
+
children: /* @__PURE__ */ I(ie, { size: 18 })
|
|
1046
1047
|
});
|
|
1047
1048
|
}
|
|
1048
1049
|
//#endregion
|
|
1049
1050
|
//#region src/bento/bento-nav.ts
|
|
1050
|
-
function
|
|
1051
|
+
function pt(e) {
|
|
1051
1052
|
return e.bentoRoute ?? e.fallbackRoute;
|
|
1052
1053
|
}
|
|
1053
1054
|
//#endregion
|
|
1054
1055
|
//#region src/bento/bento-command-palette.tsx
|
|
1055
|
-
function
|
|
1056
|
-
|
|
1057
|
-
|
|
1056
|
+
function mt({ label: e, children: t }) {
|
|
1057
|
+
return e ? /* @__PURE__ */ L("div", {
|
|
1058
|
+
role: "group",
|
|
1059
|
+
"aria-label": e,
|
|
1060
|
+
children: [/* @__PURE__ */ I("p", {
|
|
1061
|
+
className: "px-3 pt-2 pb-1 text-xs font-medium text-muted-foreground",
|
|
1062
|
+
children: e
|
|
1063
|
+
}), t]
|
|
1064
|
+
}) : /* @__PURE__ */ I(F, { children: t });
|
|
1065
|
+
}
|
|
1066
|
+
function ht({ index: e, active: t, icon: n, label: r, description: i, trailing: a, onActivate: o, onChoose: s }) {
|
|
1067
|
+
return /* @__PURE__ */ L("button", {
|
|
1068
|
+
type: "button",
|
|
1069
|
+
id: `bento-palette-opt-${e}`,
|
|
1070
|
+
"data-index": e,
|
|
1071
|
+
role: "option",
|
|
1072
|
+
"aria-selected": t ? "true" : "false",
|
|
1073
|
+
onMouseEnter: o,
|
|
1074
|
+
onClick: s,
|
|
1075
|
+
className: `flex w-full items-center gap-3 rounded-xl px-3 py-2.5 text-left text-sm transition-colors ${t ? "bg-accent text-accent-foreground" : "text-foreground"}`,
|
|
1076
|
+
children: [
|
|
1077
|
+
n && /* @__PURE__ */ I(n, {
|
|
1078
|
+
size: 18,
|
|
1079
|
+
className: "shrink-0 text-muted-foreground"
|
|
1080
|
+
}),
|
|
1081
|
+
/* @__PURE__ */ L("span", {
|
|
1082
|
+
className: "flex-1 truncate",
|
|
1083
|
+
children: [r, i && /* @__PURE__ */ I("span", {
|
|
1084
|
+
className: "ml-2 text-muted-foreground",
|
|
1085
|
+
children: i
|
|
1086
|
+
})]
|
|
1087
|
+
}),
|
|
1088
|
+
a ?? (t && /* @__PURE__ */ I(re, {
|
|
1089
|
+
"aria-hidden": !0,
|
|
1090
|
+
size: 15,
|
|
1091
|
+
className: "shrink-0 text-muted-foreground"
|
|
1092
|
+
}))
|
|
1093
|
+
]
|
|
1094
|
+
});
|
|
1095
|
+
}
|
|
1096
|
+
function gt({ open: e, onOpenChange: r, items: a, group: o, onQueryChange: s }) {
|
|
1097
|
+
let { t: c } = R(), l = q(), [u, d] = P(""), [p, m] = P(0), h = N(null), g = M(() => {
|
|
1098
|
+
let e = u.trim().toLowerCase(), t = a.map((e) => ({
|
|
1058
1099
|
item: e,
|
|
1059
|
-
label:
|
|
1060
|
-
description:
|
|
1100
|
+
label: c(e.titleKey),
|
|
1101
|
+
description: c(e.descriptionKey)
|
|
1061
1102
|
}));
|
|
1062
1103
|
if (!e) return t;
|
|
1063
1104
|
let n = [], r = [];
|
|
@@ -1065,45 +1106,57 @@ function pt({ open: n, onOpenChange: i, items: a }) {
|
|
|
1065
1106
|
return [...n, ...r];
|
|
1066
1107
|
}, [
|
|
1067
1108
|
a,
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
]), [
|
|
1071
|
-
|
|
1072
|
-
|
|
1073
|
-
|
|
1074
|
-
|
|
1109
|
+
u,
|
|
1110
|
+
c
|
|
1111
|
+
]), _ = M(() => [...g.map((e) => ({
|
|
1112
|
+
kind: "nav",
|
|
1113
|
+
entry: e
|
|
1114
|
+
})), ...(o?.items ?? []).map((e) => ({
|
|
1115
|
+
kind: "supplied",
|
|
1116
|
+
item: e
|
|
1117
|
+
}))], [g, o]), v = N(s);
|
|
1118
|
+
j(() => {
|
|
1119
|
+
v.current = s;
|
|
1120
|
+
}), j(() => {
|
|
1121
|
+
v.current?.(u);
|
|
1075
1122
|
}, [u]);
|
|
1076
|
-
|
|
1077
|
-
|
|
1123
|
+
let [y, b] = P(e);
|
|
1124
|
+
e !== y && (b(e), e && (d(""), m(0)));
|
|
1125
|
+
let x = _.length === 0 ? 0 : _.length - 1;
|
|
1126
|
+
p > x && m(x), j(() => {
|
|
1127
|
+
(h.current?.querySelector(`[data-index="${p}"]`))?.scrollIntoView({ block: "nearest" });
|
|
1128
|
+
}, [p]);
|
|
1129
|
+
function S(e) {
|
|
1130
|
+
r(!1), e.kind === "nav" ? l(pt(e.entry.item)) : o?.onSelect(e.item);
|
|
1078
1131
|
}
|
|
1079
|
-
function
|
|
1080
|
-
if (e.key === "ArrowDown") e.preventDefault(),
|
|
1081
|
-
else if (e.key === "ArrowUp") e.preventDefault(),
|
|
1132
|
+
function C(e) {
|
|
1133
|
+
if (e.key === "ArrowDown") e.preventDefault(), m((e) => _.length === 0 ? 0 : (e + 1) % _.length);
|
|
1134
|
+
else if (e.key === "ArrowUp") e.preventDefault(), m((e) => _.length === 0 ? 0 : (e - 1 + _.length) % _.length);
|
|
1082
1135
|
else if (e.key === "Enter") {
|
|
1083
1136
|
e.preventDefault();
|
|
1084
|
-
let t =
|
|
1085
|
-
t &&
|
|
1137
|
+
let t = _[p];
|
|
1138
|
+
t && S(t);
|
|
1086
1139
|
}
|
|
1087
1140
|
}
|
|
1088
|
-
return /* @__PURE__ */ I(
|
|
1089
|
-
open:
|
|
1090
|
-
onOpenChange:
|
|
1141
|
+
return /* @__PURE__ */ I(n, {
|
|
1142
|
+
open: e,
|
|
1143
|
+
onOpenChange: r,
|
|
1091
1144
|
children: /* @__PURE__ */ L(f, {
|
|
1092
1145
|
showCloseButton: !1,
|
|
1093
1146
|
className: "top-[15%] max-w-xl translate-y-0 gap-0 overflow-hidden p-0",
|
|
1094
|
-
onKeyDown:
|
|
1147
|
+
onKeyDown: C,
|
|
1095
1148
|
children: [
|
|
1096
|
-
/* @__PURE__ */ I(
|
|
1149
|
+
/* @__PURE__ */ I(i, {
|
|
1097
1150
|
className: "sr-only",
|
|
1098
|
-
children:
|
|
1151
|
+
children: c("bento.palette.title", { defaultValue: "Command palette" })
|
|
1099
1152
|
}),
|
|
1100
|
-
/* @__PURE__ */ I(
|
|
1153
|
+
/* @__PURE__ */ I(t, {
|
|
1101
1154
|
className: "sr-only",
|
|
1102
|
-
children:
|
|
1155
|
+
children: c("bento.palette.description", { defaultValue: "Search and jump to any area" })
|
|
1103
1156
|
}),
|
|
1104
1157
|
/* @__PURE__ */ L("div", {
|
|
1105
1158
|
className: "flex items-center gap-3 border-b border-border/60 px-4",
|
|
1106
|
-
children: [/* @__PURE__ */ I(
|
|
1159
|
+
children: [/* @__PURE__ */ I(ge, {
|
|
1107
1160
|
size: 18,
|
|
1108
1161
|
className: "shrink-0 text-muted-foreground"
|
|
1109
1162
|
}), /* @__PURE__ */ I("input", {
|
|
@@ -1112,57 +1165,62 @@ function pt({ open: n, onOpenChange: i, items: a }) {
|
|
|
1112
1165
|
role: "combobox",
|
|
1113
1166
|
"aria-expanded": "true",
|
|
1114
1167
|
"aria-controls": "bento-palette-list",
|
|
1115
|
-
"aria-activedescendant":
|
|
1116
|
-
value:
|
|
1117
|
-
onChange: (e) =>
|
|
1118
|
-
placeholder:
|
|
1168
|
+
"aria-activedescendant": _[p] ? `bento-palette-opt-${p}` : void 0,
|
|
1169
|
+
value: u,
|
|
1170
|
+
onChange: (e) => d(e.target.value),
|
|
1171
|
+
placeholder: c("bento.palette.placeholder", { defaultValue: "Search areas…" }),
|
|
1119
1172
|
className: "h-12 w-full bg-transparent text-sm outline-none placeholder:text-muted-foreground"
|
|
1120
1173
|
})]
|
|
1121
1174
|
}),
|
|
1122
1175
|
/* @__PURE__ */ L("div", {
|
|
1123
|
-
ref:
|
|
1176
|
+
ref: h,
|
|
1124
1177
|
id: "bento-palette-list",
|
|
1125
1178
|
role: "listbox",
|
|
1126
|
-
"aria-label":
|
|
1179
|
+
"aria-label": c("bento.palette.title", { defaultValue: "Command palette" }),
|
|
1127
1180
|
className: "max-h-80 overflow-y-auto p-2",
|
|
1128
|
-
children: [
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
|
-
|
|
1132
|
-
|
|
1133
|
-
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1143
|
-
/* @__PURE__ */ I(a, {
|
|
1144
|
-
size: 18,
|
|
1145
|
-
className: "shrink-0 text-muted-foreground"
|
|
1146
|
-
}),
|
|
1147
|
-
/* @__PURE__ */ I("span", {
|
|
1148
|
-
className: "flex-1 truncate",
|
|
1149
|
-
children: t
|
|
1150
|
-
}),
|
|
1151
|
-
r ? /* @__PURE__ */ L(F, { children: [/* @__PURE__ */ I(se, {
|
|
1181
|
+
children: [
|
|
1182
|
+
_.length === 0 && !o?.pending && /* @__PURE__ */ I("p", {
|
|
1183
|
+
className: "px-3 py-6 text-center text-sm text-muted-foreground",
|
|
1184
|
+
children: c("bento.palette.noResults", { defaultValue: "No matches" })
|
|
1185
|
+
}),
|
|
1186
|
+
/* @__PURE__ */ I(mt, {
|
|
1187
|
+
label: o && g.length > 0 ? c("bento.palette.areas", { defaultValue: "Areas" }) : void 0,
|
|
1188
|
+
children: g.map(({ item: e, label: t }, n) => /* @__PURE__ */ I(ht, {
|
|
1189
|
+
index: n,
|
|
1190
|
+
active: n === p,
|
|
1191
|
+
icon: e.icon,
|
|
1192
|
+
label: t,
|
|
1193
|
+
onActivate: () => m(n),
|
|
1194
|
+
onChoose: () => S(_[n]),
|
|
1195
|
+
trailing: e.bentoRoute ? void 0 : /* @__PURE__ */ L(F, { children: [/* @__PURE__ */ I(ce, {
|
|
1152
1196
|
"aria-hidden": !0,
|
|
1153
1197
|
size: 15,
|
|
1154
1198
|
className: "shrink-0 text-muted-foreground/70"
|
|
1155
1199
|
}), /* @__PURE__ */ I("span", {
|
|
1156
1200
|
className: "sr-only",
|
|
1157
|
-
children:
|
|
1158
|
-
})] })
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1201
|
+
children: c("bento.palette.opensConsole", { defaultValue: "Opens in console" })
|
|
1202
|
+
})] })
|
|
1203
|
+
}, e.id))
|
|
1204
|
+
}),
|
|
1205
|
+
o && /* @__PURE__ */ L(mt, {
|
|
1206
|
+
label: o.label,
|
|
1207
|
+
children: [o.items.map((e, t) => {
|
|
1208
|
+
let n = g.length + t;
|
|
1209
|
+
return /* @__PURE__ */ I(ht, {
|
|
1210
|
+
index: n,
|
|
1211
|
+
active: n === p,
|
|
1212
|
+
icon: e.icon,
|
|
1213
|
+
label: e.label,
|
|
1214
|
+
description: e.description,
|
|
1215
|
+
onActivate: () => m(n),
|
|
1216
|
+
onChoose: () => S(_[n])
|
|
1217
|
+
}, e.id);
|
|
1218
|
+
}), o.pending && /* @__PURE__ */ I("p", {
|
|
1219
|
+
className: "px-3 py-2.5 text-sm text-muted-foreground",
|
|
1220
|
+
children: c("bento.palette.searching", { defaultValue: "Searching…" })
|
|
1221
|
+
})]
|
|
1222
|
+
})
|
|
1223
|
+
]
|
|
1166
1224
|
})
|
|
1167
1225
|
]
|
|
1168
1226
|
})
|
|
@@ -1170,7 +1228,7 @@ function pt({ open: n, onOpenChange: i, items: a }) {
|
|
|
1170
1228
|
}
|
|
1171
1229
|
//#endregion
|
|
1172
1230
|
//#region src/bento/bento-shortcuts-dialog.tsx
|
|
1173
|
-
function
|
|
1231
|
+
function _t({ open: e, onOpenChange: r, isMac: o }) {
|
|
1174
1232
|
let { t: s } = R(), c = o ? "⌘" : "Ctrl", l = [{
|
|
1175
1233
|
heading: s("bento.shortcuts.global", { defaultValue: "Global" }),
|
|
1176
1234
|
rows: [{
|
|
@@ -1197,18 +1255,18 @@ function mt({ open: n, onOpenChange: a, isMac: o }) {
|
|
|
1197
1255
|
}
|
|
1198
1256
|
]
|
|
1199
1257
|
}];
|
|
1200
|
-
return /* @__PURE__ */ I(
|
|
1201
|
-
open:
|
|
1202
|
-
onOpenChange:
|
|
1258
|
+
return /* @__PURE__ */ I(n, {
|
|
1259
|
+
open: e,
|
|
1260
|
+
onOpenChange: r,
|
|
1203
1261
|
children: /* @__PURE__ */ L(f, {
|
|
1204
1262
|
className: "max-w-md",
|
|
1205
|
-
children: [/* @__PURE__ */ L(
|
|
1263
|
+
children: [/* @__PURE__ */ L(a, { children: [/* @__PURE__ */ L(i, {
|
|
1206
1264
|
className: "flex items-center gap-2",
|
|
1207
|
-
children: [/* @__PURE__ */ I(
|
|
1265
|
+
children: [/* @__PURE__ */ I(de, {
|
|
1208
1266
|
size: 20,
|
|
1209
1267
|
className: "bento-accent-icon"
|
|
1210
1268
|
}), s("bento.shortcuts.title", { defaultValue: "Keyboard shortcuts" })]
|
|
1211
|
-
}), /* @__PURE__ */ I(
|
|
1269
|
+
}), /* @__PURE__ */ I(t, { children: s("bento.shortcuts.description", { defaultValue: "Move around without leaving the keyboard." }) })] }), /* @__PURE__ */ I("div", {
|
|
1212
1270
|
className: "flex flex-col gap-5",
|
|
1213
1271
|
children: l.map((e) => /* @__PURE__ */ L("section", { children: [/* @__PURE__ */ I("h3", {
|
|
1214
1272
|
className: "mb-2 text-[11px] font-semibold uppercase tracking-wider text-muted-foreground",
|
|
@@ -1235,23 +1293,24 @@ function mt({ open: n, onOpenChange: a, isMac: o }) {
|
|
|
1235
1293
|
}
|
|
1236
1294
|
//#endregion
|
|
1237
1295
|
//#region src/bento/bento-nav-rail.tsx
|
|
1238
|
-
|
|
1296
|
+
var vt = fe;
|
|
1297
|
+
function yt(e, t) {
|
|
1239
1298
|
return e === t || e.startsWith(`${t}/`);
|
|
1240
1299
|
}
|
|
1241
|
-
function
|
|
1242
|
-
return t.section.areaRoute &&
|
|
1300
|
+
function bt(e, t) {
|
|
1301
|
+
return t.section.areaRoute && yt(e, t.section.areaRoute) ? !0 : t.items.some((t) => t.bentoRoute && yt(e, t.bentoRoute));
|
|
1243
1302
|
}
|
|
1244
|
-
function
|
|
1245
|
-
let { t: i } = R(), { pathname: a } =
|
|
1303
|
+
function xt({ groups: e, homeRoute: t, homeAliases: n, homeLabel: r }) {
|
|
1304
|
+
let { t: i } = R(), { pathname: a } = be(), o = M(() => e.filter((e) => !!e.section.areaRoute), [e]), s = a === t || (n?.includes(a) ?? !1);
|
|
1246
1305
|
return /* @__PURE__ */ I(h, {
|
|
1247
1306
|
delayDuration: 200,
|
|
1248
1307
|
children: /* @__PURE__ */ L("nav", {
|
|
1249
1308
|
"aria-label": i("bento.nav.label", { defaultValue: "Primary" }),
|
|
1250
1309
|
className: "fixed inset-y-0 left-0 z-40 hidden w-16 flex-col items-center gap-1 overflow-y-auto overflow-x-hidden border-r border-border/40 bg-background/55 pt-20 pb-4 backdrop-blur-xl backdrop-saturate-150 md:flex",
|
|
1251
1310
|
children: [
|
|
1252
|
-
/* @__PURE__ */ I(
|
|
1311
|
+
/* @__PURE__ */ I(St, {
|
|
1253
1312
|
to: t,
|
|
1254
|
-
icon:
|
|
1313
|
+
icon: ue,
|
|
1255
1314
|
label: r ?? i("home.title", { defaultValue: "Home" }),
|
|
1256
1315
|
active: s
|
|
1257
1316
|
}),
|
|
@@ -1259,20 +1318,20 @@ function _t({ groups: e, homeRoute: t, homeAliases: n, homeLabel: r }) {
|
|
|
1259
1318
|
"aria-hidden": !0,
|
|
1260
1319
|
className: "my-1 h-px w-6 bg-border/60"
|
|
1261
1320
|
}),
|
|
1262
|
-
o.map((e) => /* @__PURE__ */ I(
|
|
1321
|
+
o.map((e) => /* @__PURE__ */ I(St, {
|
|
1263
1322
|
to: e.section.areaRoute,
|
|
1264
|
-
icon: e.section.icon,
|
|
1265
|
-
label: i(e.section.labelKey),
|
|
1266
|
-
active:
|
|
1323
|
+
icon: e.section.icon ?? vt,
|
|
1324
|
+
label: e.section.labelKey ? i(e.section.labelKey) : e.section.id,
|
|
1325
|
+
active: bt(a, e)
|
|
1267
1326
|
}, e.section.id))
|
|
1268
1327
|
]
|
|
1269
1328
|
})
|
|
1270
1329
|
});
|
|
1271
1330
|
}
|
|
1272
|
-
function
|
|
1331
|
+
function St({ to: e, icon: t, label: n, active: r }) {
|
|
1273
1332
|
return /* @__PURE__ */ L(d, { children: [/* @__PURE__ */ I(g, {
|
|
1274
1333
|
asChild: !0,
|
|
1275
|
-
children: /* @__PURE__ */ I(
|
|
1334
|
+
children: /* @__PURE__ */ I(K, {
|
|
1276
1335
|
to: e,
|
|
1277
1336
|
"aria-label": n,
|
|
1278
1337
|
"aria-current": r ? "page" : void 0,
|
|
@@ -1286,18 +1345,18 @@ function vt({ to: e, icon: t, label: n, active: r }) {
|
|
|
1286
1345
|
}
|
|
1287
1346
|
//#endregion
|
|
1288
1347
|
//#region src/bento/bento-user-menu.tsx
|
|
1289
|
-
function
|
|
1290
|
-
let { user: d, status: f } =
|
|
1348
|
+
function Ct({ accountRoute: e, logoutUrl: t, organizationsRoute: n, tenantAdminRoute: i, onOpenShortcuts: a, onReplayTour: s }) {
|
|
1349
|
+
let { user: d, status: f } = b(), { t: p } = R(), h = q(), g = `${d.firstName ?? ""} ${d.lastName ?? ""}`.trim() || d.username || "";
|
|
1291
1350
|
return f === "loading" ? /* @__PURE__ */ I("div", {
|
|
1292
1351
|
className: "h-9 w-9 rounded-full bg-muted/40",
|
|
1293
1352
|
"aria-hidden": !0
|
|
1294
|
-
}) : /* @__PURE__ */ L(c, { children: [/* @__PURE__ */ I(
|
|
1353
|
+
}) : /* @__PURE__ */ L(c, { children: [/* @__PURE__ */ I(r, {
|
|
1295
1354
|
asChild: !0,
|
|
1296
1355
|
children: /* @__PURE__ */ I("button", {
|
|
1297
1356
|
type: "button",
|
|
1298
1357
|
title: g || d.username,
|
|
1299
1358
|
className: "bento-tile-clickable cursor-pointer rounded-full p-0.5 ring-1 ring-border/60 outline-none transition-shadow duration-300 ease-[cubic-bezier(0.32,0.72,0,1)] bento-ring hover:ring-2 focus-visible:ring-2 focus-visible:ring-ring",
|
|
1300
|
-
children: /* @__PURE__ */ I(
|
|
1359
|
+
children: /* @__PURE__ */ I(S, {
|
|
1301
1360
|
givenName: d.firstName,
|
|
1302
1361
|
familyName: d.lastName,
|
|
1303
1362
|
name: g || d.username,
|
|
@@ -1316,7 +1375,7 @@ function yt({ accountRoute: e, logoutUrl: t, organizationsRoute: r, tenantAdminR
|
|
|
1316
1375
|
className: "flex items-center gap-3 rounded-xl px-2 py-2 text-left text-sm",
|
|
1317
1376
|
children: [/* @__PURE__ */ I("span", {
|
|
1318
1377
|
className: "rounded-full p-0.5 ring-1 ring-border/60",
|
|
1319
|
-
children: /* @__PURE__ */ I(
|
|
1378
|
+
children: /* @__PURE__ */ I(S, {
|
|
1320
1379
|
givenName: d.firstName,
|
|
1321
1380
|
familyName: d.lastName,
|
|
1322
1381
|
name: g || d.username,
|
|
@@ -1340,27 +1399,27 @@ function yt({ accountRoute: e, logoutUrl: t, organizationsRoute: r, tenantAdminR
|
|
|
1340
1399
|
/* @__PURE__ */ L(l, {
|
|
1341
1400
|
onSelect: () => h(e),
|
|
1342
1401
|
className: "bento-dropdown-item cursor-pointer gap-2 px-3 py-2",
|
|
1343
|
-
children: [/* @__PURE__ */ I(
|
|
1402
|
+
children: [/* @__PURE__ */ I(ve, { size: 18 }), p("nav.account")]
|
|
1344
1403
|
}),
|
|
1345
|
-
|
|
1346
|
-
onSelect: () => h(
|
|
1404
|
+
n && /* @__PURE__ */ L(l, {
|
|
1405
|
+
onSelect: () => h(n),
|
|
1347
1406
|
className: "bento-dropdown-item cursor-pointer gap-2 px-3 py-2",
|
|
1348
|
-
children: [/* @__PURE__ */ I(
|
|
1407
|
+
children: [/* @__PURE__ */ I(ae, { size: 18 }), p("nav.organizations", { defaultValue: "Organizations" })]
|
|
1349
1408
|
}),
|
|
1350
1409
|
i && /* @__PURE__ */ L(l, {
|
|
1351
1410
|
onSelect: () => h(i),
|
|
1352
1411
|
className: "bento-dropdown-item cursor-pointer gap-2 px-3 py-2",
|
|
1353
|
-
children: [/* @__PURE__ */ I(
|
|
1412
|
+
children: [/* @__PURE__ */ I(oe, { size: 18 }), p("nav.tenantAdmin", { defaultValue: "Tenant administration" })]
|
|
1354
1413
|
})
|
|
1355
1414
|
] }),
|
|
1356
1415
|
(a || s) && /* @__PURE__ */ L(F, { children: [/* @__PURE__ */ I(v, { className: "my-1.5 bg-border/50" }), /* @__PURE__ */ L(u, { children: [s && /* @__PURE__ */ L(l, {
|
|
1357
1416
|
onSelect: () => s(),
|
|
1358
1417
|
className: "bento-dropdown-item cursor-pointer gap-2 px-3 py-2",
|
|
1359
|
-
children: [/* @__PURE__ */ I(
|
|
1418
|
+
children: [/* @__PURE__ */ I(U, { size: 18 }), p("bento.tour.replay", { defaultValue: "Take the tour" })]
|
|
1360
1419
|
}), a && /* @__PURE__ */ L(l, {
|
|
1361
1420
|
onSelect: () => a(),
|
|
1362
1421
|
className: "bento-dropdown-item cursor-pointer gap-2 px-3 py-2",
|
|
1363
|
-
children: [/* @__PURE__ */ I(
|
|
1422
|
+
children: [/* @__PURE__ */ I(de, { size: 18 }), p("bento.shortcuts.title", { defaultValue: "Keyboard shortcuts" })]
|
|
1364
1423
|
})] })] }),
|
|
1365
1424
|
/* @__PURE__ */ I(v, { className: "my-1.5 bg-border/50" }),
|
|
1366
1425
|
/* @__PURE__ */ L(l, {
|
|
@@ -1368,24 +1427,24 @@ function yt({ accountRoute: e, logoutUrl: t, organizationsRoute: r, tenantAdminR
|
|
|
1368
1427
|
globalThis.location.href = t;
|
|
1369
1428
|
},
|
|
1370
1429
|
className: "bento-dropdown-item cursor-pointer gap-2 px-3 py-2 bento-item-danger",
|
|
1371
|
-
children: [/* @__PURE__ */ I(
|
|
1430
|
+
children: [/* @__PURE__ */ I(pe, { size: 18 }), p("nav.logOut")]
|
|
1372
1431
|
})
|
|
1373
1432
|
]
|
|
1374
1433
|
})] });
|
|
1375
1434
|
}
|
|
1376
1435
|
//#endregion
|
|
1377
1436
|
//#region src/bento/bento-section-chrome.tsx
|
|
1378
|
-
var
|
|
1379
|
-
function
|
|
1380
|
-
return /* @__PURE__ */ I(
|
|
1437
|
+
var wt = O("console");
|
|
1438
|
+
function Tt({ chrome: e, children: t }) {
|
|
1439
|
+
return /* @__PURE__ */ I(wt.Provider, {
|
|
1381
1440
|
value: e,
|
|
1382
1441
|
children: t
|
|
1383
1442
|
});
|
|
1384
1443
|
}
|
|
1385
|
-
function
|
|
1386
|
-
return A(
|
|
1444
|
+
function Et() {
|
|
1445
|
+
return A(wt);
|
|
1387
1446
|
}
|
|
1388
|
-
var
|
|
1447
|
+
var Dt = {
|
|
1389
1448
|
blue: "blue",
|
|
1390
1449
|
violet: "violet",
|
|
1391
1450
|
emerald: "emerald",
|
|
@@ -1396,29 +1455,30 @@ var Ct = {
|
|
|
1396
1455
|
orange: "amber"
|
|
1397
1456
|
};
|
|
1398
1457
|
function $({ variant: e = "blue", defaultOpen: t, className: n, children: r }) {
|
|
1399
|
-
let i = A(
|
|
1458
|
+
let i = A(wt), a, o;
|
|
1400
1459
|
return i === "bento" && D.forEach(r, (e) => {
|
|
1401
1460
|
if (!k(e)) return;
|
|
1402
1461
|
let { type: t } = e;
|
|
1403
|
-
t ===
|
|
1404
|
-
}), i === "bento" && a ? /* @__PURE__ */ I(
|
|
1462
|
+
t === C.Header || t === C.StaticHeader ? a = e.props : t === C.Content && (o = e.props.children);
|
|
1463
|
+
}), i === "bento" && a ? /* @__PURE__ */ I(st, {
|
|
1405
1464
|
icon: a.icon,
|
|
1406
|
-
tone:
|
|
1465
|
+
tone: Dt[e] ?? "blue",
|
|
1407
1466
|
title: a.title,
|
|
1408
1467
|
description: a.description,
|
|
1468
|
+
className: n,
|
|
1409
1469
|
children: o
|
|
1410
|
-
}) : /* @__PURE__ */ I(
|
|
1470
|
+
}) : /* @__PURE__ */ I(C, {
|
|
1411
1471
|
variant: e,
|
|
1412
1472
|
defaultOpen: t,
|
|
1413
1473
|
className: n,
|
|
1414
1474
|
children: r
|
|
1415
1475
|
});
|
|
1416
1476
|
}
|
|
1417
|
-
$.Header =
|
|
1477
|
+
$.Header = C.Header, $.StaticHeader = C.StaticHeader, $.Content = C.Content;
|
|
1418
1478
|
//#endregion
|
|
1419
1479
|
//#region src/bento/bento-section.tsx
|
|
1420
|
-
var
|
|
1421
|
-
function
|
|
1480
|
+
var Ot = "bento-grid grid auto-rows-[minmax(140px,auto)] grid-cols-2 gap-4 md:grid-cols-4 md:gap-5 lg:grid-cols-6";
|
|
1481
|
+
function kt({ eyebrow: e, title: t, description: n, titleHref: r, children: i, gridClassName: a = Ot }) {
|
|
1422
1482
|
let o = /* @__PURE__ */ I("h2", {
|
|
1423
1483
|
className: "text-xl font-semibold tracking-tight md:text-2xl",
|
|
1424
1484
|
children: t
|
|
@@ -1432,10 +1492,10 @@ function Tt({ eyebrow: e, title: t, description: n, titleHref: r, children: i, g
|
|
|
1432
1492
|
className: "text-xs uppercase tracking-[0.18em] text-muted-foreground",
|
|
1433
1493
|
children: e
|
|
1434
1494
|
}),
|
|
1435
|
-
r ? /* @__PURE__ */ L(
|
|
1495
|
+
r ? /* @__PURE__ */ L(K, {
|
|
1436
1496
|
to: r,
|
|
1437
1497
|
className: "group inline-flex w-fit items-center gap-1 text-foreground transition-colors hover:text-primary",
|
|
1438
|
-
children: [o, /* @__PURE__ */ I(
|
|
1498
|
+
children: [o, /* @__PURE__ */ I(V, {
|
|
1439
1499
|
size: 20,
|
|
1440
1500
|
className: "text-muted-foreground transition-transform duration-300 ease-[cubic-bezier(0.32,0.72,0,1)] group-hover:translate-x-1"
|
|
1441
1501
|
})]
|
|
@@ -1453,22 +1513,22 @@ function Tt({ eyebrow: e, title: t, description: n, titleHref: r, children: i, g
|
|
|
1453
1513
|
}
|
|
1454
1514
|
//#endregion
|
|
1455
1515
|
//#region src/bento/bento-tile.tsx
|
|
1456
|
-
function
|
|
1457
|
-
let
|
|
1458
|
-
|
|
1516
|
+
function At({ to: t, onClick: n, disabled: r = !1, disabledHint: i, icon: a, tone: o, eyebrow: s, title: c, span: l, featured: u = !1, children: d }) {
|
|
1517
|
+
let f = !r && !!(t || n), p = u ? "h-14 w-14 rounded-2xl" : "h-9 w-9 rounded-2xl", m = u ? 28 : 18, h = u ? "text-xl font-semibold tracking-tight md:text-2xl" : "text-base font-semibold tracking-tight md:text-lg", g = /* @__PURE__ */ L(F, { children: [
|
|
1518
|
+
u && /* @__PURE__ */ L(F, { children: [/* @__PURE__ */ I("div", {
|
|
1459
1519
|
"aria-hidden": !0,
|
|
1460
|
-
className: `pointer-events-none absolute -bottom-10 -right-10 h-64 w-64 rounded-full ${
|
|
1520
|
+
className: `pointer-events-none absolute -bottom-10 -right-10 h-64 w-64 rounded-full ${Y(o)} opacity-40 blur-2xl dark:opacity-50`
|
|
1461
1521
|
}), /* @__PURE__ */ I("div", {
|
|
1462
1522
|
"aria-hidden": !0,
|
|
1463
|
-
className: `pointer-events-none absolute right-12 top-1/3 h-32 w-32 rounded-full ${
|
|
1523
|
+
className: `pointer-events-none absolute right-12 top-1/3 h-32 w-32 rounded-full ${Y(o)} bento-chip-tr opacity-20 blur-2xl dark:opacity-30`
|
|
1464
1524
|
})] }),
|
|
1465
1525
|
/* @__PURE__ */ L("div", {
|
|
1466
1526
|
className: "relative z-1 flex items-center justify-between",
|
|
1467
1527
|
children: [/* @__PURE__ */ I("span", {
|
|
1468
|
-
className: `grid place-items-center ${
|
|
1469
|
-
children: /* @__PURE__ */ I(
|
|
1470
|
-
}),
|
|
1471
|
-
size:
|
|
1528
|
+
className: `grid place-items-center ${Y(o)} text-white shadow-md ${p}`,
|
|
1529
|
+
children: /* @__PURE__ */ I(a, { size: m })
|
|
1530
|
+
}), f && /* @__PURE__ */ I(V, {
|
|
1531
|
+
size: u ? 18 : 16,
|
|
1472
1532
|
className: "text-muted-foreground transition-transform duration-300 ease-[cubic-bezier(0.32,0.72,0,1)] group-hover:translate-x-1"
|
|
1473
1533
|
})]
|
|
1474
1534
|
}),
|
|
@@ -1477,37 +1537,37 @@ function Et({ to: e, onClick: t, disabled: n = !1, disabledHint: r, icon: i, ton
|
|
|
1477
1537
|
children: [
|
|
1478
1538
|
/* @__PURE__ */ I("div", {
|
|
1479
1539
|
className: "text-[11px] uppercase tracking-wider text-muted-foreground",
|
|
1480
|
-
children:
|
|
1540
|
+
children: s
|
|
1481
1541
|
}),
|
|
1482
1542
|
/* @__PURE__ */ I("div", {
|
|
1483
|
-
className: `mt-0.5 ${
|
|
1484
|
-
children:
|
|
1543
|
+
className: `mt-0.5 ${h}`,
|
|
1544
|
+
children: c
|
|
1485
1545
|
}),
|
|
1486
|
-
|
|
1546
|
+
d && /* @__PURE__ */ I("div", {
|
|
1487
1547
|
className: "mt-2",
|
|
1488
|
-
children:
|
|
1548
|
+
children: d
|
|
1489
1549
|
})
|
|
1490
1550
|
]
|
|
1491
1551
|
})
|
|
1492
|
-
] }),
|
|
1493
|
-
return
|
|
1494
|
-
className:
|
|
1552
|
+
] }), _ = `bento-tile bento-glass group relative flex flex-col ${u ? "gap-5" : "gap-4"} overflow-hidden text-left ${u ? "p-6 md:p-7" : "p-5"} ${l}${f ? " bento-tile-clickable" : ""}${r ? " cursor-not-allowed opacity-60" : ""}`;
|
|
1553
|
+
return r ? /* @__PURE__ */ I("div", {
|
|
1554
|
+
className: _,
|
|
1495
1555
|
"aria-disabled": "true",
|
|
1496
|
-
title:
|
|
1497
|
-
children:
|
|
1498
|
-
}) :
|
|
1499
|
-
to:
|
|
1500
|
-
className:
|
|
1501
|
-
children:
|
|
1502
|
-
}) :
|
|
1556
|
+
title: i,
|
|
1557
|
+
children: g
|
|
1558
|
+
}) : t ? /* @__PURE__ */ I(K, {
|
|
1559
|
+
to: t,
|
|
1560
|
+
className: _,
|
|
1561
|
+
children: g
|
|
1562
|
+
}) : n ? /* @__PURE__ */ I("button", {
|
|
1503
1563
|
type: "button",
|
|
1504
|
-
onClick:
|
|
1505
|
-
className:
|
|
1506
|
-
children:
|
|
1564
|
+
onClick: n,
|
|
1565
|
+
className: e("w-full", _),
|
|
1566
|
+
children: g
|
|
1507
1567
|
}) : /* @__PURE__ */ I("div", {
|
|
1508
|
-
className:
|
|
1509
|
-
children:
|
|
1568
|
+
className: _,
|
|
1569
|
+
children: g
|
|
1510
1570
|
});
|
|
1511
1571
|
}
|
|
1512
1572
|
//#endregion
|
|
1513
|
-
export { $ as AdaptiveSectionCard,
|
|
1573
|
+
export { $ as AdaptiveSectionCard, We as BENTO_EMPHASIS_NEXT, Ue as BENTO_EMPHASIS_SPAN, Pe as BENTO_TONES, J as BENTO_TONE_CLASS, Ne as BentoActionsMenu, X as BentoBackLink, ft as BentoBackToTop, gt as BentoCommandPalette, Fe as BentoCountTile, Ie as BentoEmptyState, He as BentoEntityShell, qe as BentoEntityTile, ot as BentoFormHero, st as BentoFormSection, Z as BentoHero, Le as BentoHeroIconPicker, Re as BentoInlineEdit, Ye as BentoListPage, xt as BentoNavRail, ct as BentoPanel, Q as BentoSaveBar, at as BentoScrollSaveBar, kt as BentoSection, _t as BentoShortcutsDialog, ze as BentoStatusMarker, At as BentoTile, Xe as BentoTileGrid, Ct as BentoUserMenu, Tt as SectionCardChromeProvider, Y as bentoChipClass, pt as bentoNavTarget, Ge as resolveBentoLayout, Ke as toBentoLayoutEntries, Be as useBentoScrollFade, Et as useSectionChrome };
|