@viglet/viglet-design-system 2026.3.16 → 2026.3.18
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 +55 -19
- package/dist/{badge-locale-Bx7m7tg2.js → badge-locale-BwsfyQJT.js} +7 -7
- package/dist/{badge-locale-1_BmNTro.cjs → badge-locale-D4J5OlvK.cjs} +1 -1
- package/dist/bento/bento-actions-menu.d.ts +1 -1
- package/dist/bento/bento-back-to-top.d.ts +1 -1
- package/dist/bento/bento-calendar.d.ts +1 -1
- package/dist/bento/bento-calendar.d.ts.map +1 -1
- package/dist/bento/bento-change-cell.d.ts +22 -0
- package/dist/bento/bento-change-cell.d.ts.map +1 -0
- package/dist/bento/bento-change-mark.d.ts +1 -1
- package/dist/bento/bento-command-palette.d.ts +1 -1
- package/dist/bento/bento-command-palette.d.ts.map +1 -1
- package/dist/bento/bento-count-tile.d.ts +1 -1
- package/dist/bento/bento-data-table.d.ts +12 -2
- package/dist/bento/bento-data-table.d.ts.map +1 -1
- package/dist/bento/bento-diff.d.ts +1 -1
- package/dist/bento/bento-diff.d.ts.map +1 -1
- package/dist/bento/bento-empty-state.d.ts +4 -4
- package/dist/bento/bento-empty-state.d.ts.map +1 -1
- package/dist/bento/bento-entity-shell.d.ts +1 -1
- package/dist/bento/bento-entity-tile.d.ts +7 -3
- package/dist/bento/bento-entity-tile.d.ts.map +1 -1
- package/dist/bento/bento-filter-bar.d.ts +1 -1
- package/dist/bento/bento-filter-bar.d.ts.map +1 -1
- package/dist/bento/bento-form-hero.d.ts +1 -1
- package/dist/bento/bento-form-section.d.ts +8 -7
- package/dist/bento/bento-form-section.d.ts.map +1 -1
- package/dist/bento/bento-hero-icon-picker.d.ts +1 -1
- package/dist/bento/bento-hero.d.ts +3 -3
- package/dist/bento/bento-identity-cell.d.ts +22 -0
- package/dist/bento/bento-identity-cell.d.ts.map +1 -0
- package/dist/bento/bento-inline-edit.d.ts +1 -1
- package/dist/bento/bento-inline-edit.d.ts.map +1 -1
- package/dist/bento/bento-layout.d.ts +4 -2
- package/dist/bento/bento-layout.d.ts.map +1 -1
- package/dist/bento/bento-list-page.d.ts +32 -10
- package/dist/bento/bento-list-page.d.ts.map +1 -1
- package/dist/bento/bento-nav-rail.d.ts +1 -1
- package/dist/bento/bento-palette-trigger.d.ts +1 -1
- package/dist/bento/bento-panel.d.ts +8 -7
- package/dist/bento/bento-panel.d.ts.map +1 -1
- package/dist/bento/bento-save-bar.d.ts +2 -2
- package/dist/bento/bento-scroll-save-bar.d.ts +1 -1
- package/dist/bento/bento-section-chrome.d.ts +3 -3
- package/dist/bento/bento-section.d.ts +1 -1
- package/dist/bento/bento-shell.d.ts +1 -1
- package/dist/bento/bento-shell.d.ts.map +1 -1
- package/dist/bento/bento-shortcuts-dialog.d.ts +1 -1
- package/dist/bento/bento-split-page.d.ts +1 -1
- package/dist/bento/bento-status-marker.d.ts +20 -4
- package/dist/bento/bento-status-marker.d.ts.map +1 -1
- package/dist/bento/bento-tile.d.ts +1 -1
- package/dist/bento/bento-tones.d.ts +1 -1
- package/dist/bento/bento-trail.d.ts +1 -1
- package/dist/bento/bento-user-menu.d.ts +1 -1
- package/dist/bento/bento-version-rail.d.ts +1 -1
- package/dist/bento/index.d.ts +4 -2
- package/dist/bento/index.d.ts.map +1 -1
- package/dist/bento.cjs +3 -3
- package/dist/bento.css +39 -5
- package/dist/bento.es.js +1301 -1136
- package/dist/catalogue.json +155 -32
- package/dist/components/app-switcher.d.ts +1 -1
- package/dist/components/backend-status.d.ts +2 -2
- package/dist/components/language-select.d.ts +1 -1
- package/dist/components/language-switcher.d.ts +1 -1
- package/dist/components/login/login.d.ts +11 -11
- package/dist/components/mode-toggle.d.ts +2 -2
- package/dist/components/router/loading-provider.d.ts +1 -1
- package/dist/components/startup-first/startup-first.d.ts +11 -11
- package/dist/components/theme-provider.d.ts +1 -1
- package/dist/components/ui/button.d.ts.map +1 -1
- package/dist/components/ui/floating-formulas-bg.d.ts +1 -1
- package/dist/components/ui/form-actions.d.ts +1 -1
- package/dist/components/ui/glass-card.d.ts +2 -2
- package/dist/components/ui/gradient-button.d.ts.map +1 -1
- package/dist/components/ui/icon-picker-dialog.d.ts +1 -1
- package/dist/components/ui/pulse-ring.d.ts +1 -1
- package/dist/components/ui/resizable.d.ts +3 -3
- package/dist/components/ui/section-card.d.ts +1 -1
- package/dist/components/ui/sidebar.d.ts.map +1 -1
- package/dist/components/ui/skeleton.d.ts +1 -1
- package/dist/components/ui/sonner.d.ts +1 -1
- package/dist/components/ui/stepper.d.ts +1 -1
- package/dist/components/ui/sticky-save-bar.d.ts +2 -2
- package/dist/components/ui/toggle.d.ts.map +1 -1
- package/dist/components/ui/viglet-assistant.d.ts +1 -1
- package/dist/components/ui/viglet-avatar.d.ts +1 -1
- package/dist/components/viglet-app-switcher.d.ts +1 -1
- package/dist/contexts/breadcrumb.context.d.ts +1 -1
- package/dist/exports.json +11 -1
- package/dist/floating-formulas-bg.css +3 -1
- package/dist/i18n/index.d.ts +20 -0
- package/dist/i18n/index.d.ts.map +1 -1
- package/dist/i18n/locales/en/bento.json.d.ts +10 -0
- package/dist/i18n/locales/pt/bento.json.d.ts +10 -0
- package/dist/i18n.cjs +1 -1
- package/dist/i18n.es.js +20 -0
- package/dist/index.cjs +1 -1
- package/dist/index.es.js +972 -1045
- package/dist/lib/busy.d.ts +1 -1
- package/dist/{loading-provider-D-_5G-08.js → loading-provider-Dh7jdSol.js} +2 -2
- package/dist/loading-provider-bLW_X3A1.cjs +1 -0
- package/dist/preset.css +66 -7
- package/dist/router.cjs +1 -1
- package/dist/router.es.js +1 -1
- package/dist/user.context-BqsOcMaZ.cjs +1 -0
- package/dist/{user.context-DUs2lT6D.js → user.context-vCmnGlIb.js} +335 -262
- package/dist/viglet-design-system.css +1 -1
- package/docs/BENTO-AUTHORING.md +19 -3
- package/docs/reference/README.md +5 -7
- package/package.json +1 -1
- package/dist/loading-provider-E4tIG9BM.cjs +0 -1
- package/dist/user.context-uYif5Mp2.cjs +0 -1
package/README.md
CHANGED
|
@@ -725,9 +725,9 @@ AppFooter, AppSwitcher, BackendStatusBanner, BackendStatusProvider, BadgeColorfu
|
|
|
725
725
|
|
|
726
726
|
`DialogDelete`, `GradientButtonLink` and `LoadProvider` are imported from `@viglet/viglet-design-system/router`; every other name above comes from the package root. `Login` and `StartupFirst` are compounds — each is a root with named parts on it, the way `Card` is.
|
|
727
727
|
|
|
728
|
-
### Bento Layer (
|
|
728
|
+
### Bento Layer (37 components)
|
|
729
729
|
|
|
730
|
-
AdaptiveSectionCard, BentoActionsMenu, BentoBackLink, BentoBackToTop, BentoCalendar, BentoChangeMark, BentoCommandPalette, BentoCountTile, BentoDataTable, BentoDiff, BentoEmptyState, BentoEntityShell, BentoEntityTile, BentoFilterBar, BentoFormHero, BentoFormSection, BentoHero, BentoHeroIconPicker, BentoInlineEdit, BentoListPage, BentoNavRail, BentoPaletteTrigger, BentoPanel, BentoSaveBar, BentoScrollSaveBar, BentoSection, BentoShell, BentoShortcutsDialog, BentoSplitPage, BentoStatusMarker, BentoTile, BentoTileGrid, BentoTrail, BentoUserMenu, BentoVersionRail
|
|
730
|
+
AdaptiveSectionCard, BentoActionsMenu, BentoBackLink, BentoBackToTop, BentoCalendar, BentoChangeCell, BentoChangeMark, BentoCommandPalette, BentoCountTile, BentoDataTable, BentoDiff, BentoEmptyState, BentoEntityShell, BentoEntityTile, BentoFilterBar, BentoFormHero, BentoFormSection, BentoHero, BentoHeroIconPicker, BentoIdentityCell, BentoInlineEdit, BentoListPage, BentoNavRail, BentoPaletteTrigger, BentoPanel, BentoSaveBar, BentoScrollSaveBar, BentoSection, BentoShell, BentoShortcutsDialog, BentoSplitPage, BentoStatusMarker, BentoTile, BentoTileGrid, BentoTrail, BentoUserMenu, BentoVersionRail
|
|
731
731
|
|
|
732
732
|
All from `@viglet/viglet-design-system/bento`, with `@viglet/viglet-design-system/bento.css` beside it. [The bento layer](#the-bento-layer) is what each one is for and how a page composes them; this is the inventory.
|
|
733
733
|
|
|
@@ -785,6 +785,12 @@ Three utility classes cover the common shapes: `vg-accent-chip` (the tinted grad
|
|
|
785
785
|
|
|
786
786
|
This is separate from a component's **colour palette**. `SectionCard` (`blue | violet | emerald | amber | rose | cyan`) and `StickySaveBar` (`gray | blue | orange | green`) are keyed by hue — the caller picked that colour deliberately — so re-keying the accent leaves them alone, the same way it leaves the [bento tones](#the-bento-layer) alone.
|
|
787
787
|
|
|
788
|
+
**Control heights are a closed scale.** `Button`, `GradientButton`, `Toggle`, `Input`, `SelectTrigger`, `NavigationMenuTrigger` and the sidebar's menu buttons take their height from two tokens: `--vg-control-dense` (32 px — tables, filter bars, toolbars, the `sm` and `icon-sm` sizes) and `--vg-control-form` (36 px — fields and their actions, the `default`, `lg`, `icon` and `icon-lg` sizes). `lg` keeps its wider padding and is no longer a third height. Under `pointer: coarse` both rise to `--vg-control-touch` (44 px). A control of your own reads the same tokens — `h-(--vg-control-form)` — rather than a fixed `h-*`, and the `button-height` and `input-height` figures of `look:census` count what a console still draws off the scale. Two kinds of button are not counted as controls: one taller than the touch step is read as a card (a file tile, a row with a description), and one drawn as text a reader clicks (an inline edit's value, a sort header) says so with `data-look="text"`.
|
|
789
|
+
|
|
790
|
+
**Radii are a closed scale too.** `--vg-radius-control` (6 px — buttons, fields, menu items), `--vg-radius-panel` (10 px — cards, dialogs, popovers, every bento surface) and `--vg-radius-full` (pills, avatars, the state dot). The preset points every Tailwind radius key at the first two — `rounded-xs`, `-sm` and `-md` are control, `rounded-lg` through `-4xl` are panel — so existing class names keep compiling and land on the scale. Tailwind's bare `rounded` is a fixed 4 px the theme never sees; write `rounded-sm`. `--vg-radius` still resolves, as the panel value. The `radius` figure of `look:census` counts what a console draws off the scale.
|
|
791
|
+
|
|
792
|
+
**One monospace family.** `--vg-font-mono` is the stack — `"JetBrains Mono", ui-monospace, …` — and the preset maps Tailwind's `font-mono` (and so `code`, `pre` and `kbd`) to it, with `text-mono` as the 12 px step for ids, paths, keys and diffs. The face is not bundled: load JetBrains Mono to get it, or every mono falls to the platform's `ui-monospace` together. Write `font-mono` rather than naming a family, and the `mono` figure of `look:census` stays at one.
|
|
793
|
+
|
|
788
794
|
### i18n
|
|
789
795
|
|
|
790
796
|
Base translations (EN/PT) for common UI strings: buttons, form labels, dialog text, navigation, theme, and the assistant dock.
|
|
@@ -821,6 +827,13 @@ and `onRowOpen` as you would to `BentoDataTable`) and the records sit under the
|
|
|
821
827
|
hero, with the create action as the hero's primary button. Pass `renderTile`
|
|
822
828
|
to ask for the tile mosaic instead, for things a reader picks by sight. A page
|
|
823
829
|
that already passes `renderTile` keeps its tiles. `heroIcon` is now optional.
|
|
830
|
+
Pass the list's filter and secondary actions as `toolbar`: on a table they open
|
|
831
|
+
its bar, with Columns at the end, so a list has one bar of controls.
|
|
832
|
+
`headerAction` is deprecated and drawn in the same place for one release.
|
|
833
|
+
Pass both `renderTile` and `columns` and the reader gets a Grid and List switch
|
|
834
|
+
in that bar: `defaultView` (`"grid"` or `"list"`) is the first view, and `view`
|
|
835
|
+
with `onViewChange` let you store the reader's choice per list, as you store a
|
|
836
|
+
column layout.
|
|
824
837
|
|
|
825
838
|
It is a separate entry point, so a console still on the first era carries none
|
|
826
839
|
of it:
|
|
@@ -877,9 +890,11 @@ link sits, with the middle collapsed past four. A trail of one renders the usual
|
|
|
877
890
|
arrow back link. `BentoTrail` is the same trail on its own, for a custom eyebrow.
|
|
878
891
|
|
|
879
892
|
`BentoDataTable` is the list a curator sorts, range-selects and acts on at scale.
|
|
880
|
-
It mounts only the rows in view, so ten thousand cost what twenty do. The
|
|
881
|
-
as tall as its rows
|
|
882
|
-
list of one is one row tall
|
|
893
|
+
It mounts only the rows in view, so ten thousand cost what twenty do. The table is
|
|
894
|
+
as tall as its rows and scrolls with the page, its header row held under the
|
|
895
|
+
shell's header, so a list of one is one row tall and a long list has one scrollbar.
|
|
896
|
+
Pass `height` only for a table inside a panel or a dialog: the body then grows to
|
|
897
|
+
that many pixels and scrolls inside itself past it. Pass `rows`,
|
|
883
898
|
`getRowId`, `columns` (a header, a `cell`, and a `sortValue` to make it sortable),
|
|
884
899
|
and optionally `rowActions` for a per-row menu and `selectionActions` for the bar
|
|
885
900
|
that appears over a selection. The arrows move between rows, Shift with an arrow
|
|
@@ -906,11 +921,11 @@ the selection with its own controls, without remounting the table.
|
|
|
906
921
|
```
|
|
907
922
|
|
|
908
923
|
`AdaptiveSectionCard` renders the console's compound form markup — a `Header`
|
|
909
|
-
child and a `Content` child — as a
|
|
924
|
+
child and a `Content` child — as a bento card section, so a form written that
|
|
910
925
|
way moves without being rewritten. That compound API is the whole difference
|
|
911
926
|
from `BentoFormSection`, which takes the same icon, title and description as
|
|
912
|
-
props. A section whose header it cannot read keeps the
|
|
913
|
-
of its children; a
|
|
927
|
+
props. A section whose header it cannot read keeps the section surface and all
|
|
928
|
+
of its children; a box that is not part of a form is `BentoPanel`.
|
|
914
929
|
|
|
915
930
|
**`SectionCardChromeProvider`, `useSectionChrome`, the `SectionChrome` type and
|
|
916
931
|
the `defaultOpen` prop were removed in this release.** They picked between the
|
|
@@ -931,20 +946,41 @@ in this release and stops type-checking in the next.
|
|
|
931
946
|
declare (a `choice` of options, single or `multiple`, or a `date` range), the
|
|
932
947
|
active filters as removable chips, and a clear-all. It holds no state. You pass
|
|
933
948
|
`value` and get one `onChange` per action, typing included once it pauses, so the
|
|
934
|
-
value can live in the URL and a filtered view is a link.
|
|
935
|
-
|
|
936
|
-
change the rows:
|
|
949
|
+
value can live in the URL and a filtered view is a link. Hand the bar to the
|
|
950
|
+
table as its `toolbar`, so it sits in the table's own bar, and the filters to it
|
|
951
|
+
as `selectionScope` too, so a selection clears when the filters change the rows:
|
|
937
952
|
|
|
938
953
|
```tsx
|
|
939
|
-
<
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
|
|
945
|
-
|
|
954
|
+
<BentoDataTable
|
|
955
|
+
rows={filtered}
|
|
956
|
+
selectionScope={JSON.stringify(filters)}
|
|
957
|
+
toolbar={
|
|
958
|
+
<BentoFilterBar
|
|
959
|
+
value={filters}
|
|
960
|
+
onChange={setFilters}
|
|
961
|
+
facets={[
|
|
962
|
+
{ id: "state", kind: "choice", label: t("state"), multiple: true, options: states },
|
|
963
|
+
{ id: "updated", kind: "date", label: t("updated") },
|
|
964
|
+
]}
|
|
965
|
+
/>
|
|
966
|
+
}
|
|
967
|
+
…
|
|
946
968
|
/>
|
|
947
|
-
|
|
969
|
+
```
|
|
970
|
+
|
|
971
|
+
Two cells give a list's columns one look in every product. `BentoIdentityCell`
|
|
972
|
+
is the first column: a square of initials in a tone derived from `name` (or the
|
|
973
|
+
`tone` you pass), the name, and a muted `detail` line such as an address, both
|
|
974
|
+
truncated. `BentoChangeCell` is the "changed" column: `at` drawn as a relative
|
|
975
|
+
time in the reader's language ("2 days ago", a short date past a month), with the
|
|
976
|
+
exact instant as its tooltip and accessible name, and an optional `actor` line
|
|
977
|
+
that `agent` marks. Give the table a `rowHeight` of 56 or so for the two lines.
|
|
978
|
+
|
|
979
|
+
```tsx
|
|
980
|
+
columns={[
|
|
981
|
+
{ id: "name", header: t("name"), cell: (s) => <BentoIdentityCell name={s.name} detail={s.host} /> },
|
|
982
|
+
{ id: "changed", header: t("changed"), cell: (s) => <BentoChangeCell at={s.updated} actor={s.updatedBy} /> },
|
|
983
|
+
]}
|
|
948
984
|
```
|
|
949
985
|
|
|
950
986
|
`BentoDiff` compares two versions of structured content field by field, for
|
|
@@ -365,12 +365,12 @@ var K = f("inline-flex items-center justify-center gap-2 whitespace-nowrap round
|
|
|
365
365
|
].join(" ")
|
|
366
366
|
},
|
|
367
367
|
size: {
|
|
368
|
-
default: "h-
|
|
369
|
-
sm: "h-
|
|
370
|
-
lg: "h-
|
|
371
|
-
icon: "size-
|
|
372
|
-
"icon-sm": "size-
|
|
373
|
-
"icon-lg": "size-
|
|
368
|
+
default: "h-(--vg-control-form) px-5 py-2 has-[>svg]:px-4",
|
|
369
|
+
sm: "h-(--vg-control-dense) rounded-md gap-1.5 px-4 has-[>svg]:px-3 text-xs",
|
|
370
|
+
lg: "h-(--vg-control-form) rounded-md px-8 has-[>svg]:px-6 text-base",
|
|
371
|
+
icon: "size-(--vg-control-form)",
|
|
372
|
+
"icon-sm": "size-(--vg-control-dense)",
|
|
373
|
+
"icon-lg": "size-(--vg-control-form)"
|
|
374
374
|
}
|
|
375
375
|
},
|
|
376
376
|
defaultVariants: {
|
|
@@ -398,7 +398,7 @@ function J({ className: e, type: t, ...r }) {
|
|
|
398
398
|
return /* @__PURE__ */ l("input", {
|
|
399
399
|
type: t,
|
|
400
400
|
"data-slot": "input",
|
|
401
|
-
className: n("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-
|
|
401
|
+
className: n("file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-(--vg-control-form) w-full min-w-0 rounded-md border bg-transparent pl-3 pr-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm", "focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]", "aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive", e),
|
|
402
402
|
...r
|
|
403
403
|
});
|
|
404
404
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const e=require("./rolldown-runtime-BocRIvOZ.cjs"),t=require("./utils-Oagwe_oa.cjs");let n=require("react");n=e.t(n,1);let r=require("react/jsx-runtime"),i=require("@radix-ui/react-slot"),a=require("class-variance-authority"),o=require("react-i18next"),s=require("@radix-ui/react-dialog");s=e.t(s,1);var c=e=>e?.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase();function l(e,t,n=[]){if(t==null)throw Error(`[lucide]: iconNode is required when icon name is used`);return{name:c(e),size:24,node:t,...n.length>0?{aliases:n}:{}}}var u=e=>{let t=``,n=!1;for(let r of e){if(r===`-`||r===`_`||r<=` `){n=t.length>0;continue}t.length===0?t+=r.toLowerCase():t+=n?r.toUpperCase():r,n=!1}return t},d=e=>{let t=u(e);return t.charAt(0).toUpperCase()+t.slice(1)},f=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),p={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":2,"stroke-linecap":`round`,"stroke-linejoin":`round`};function m(e){return e!=null}function h(e,t={}){let n=t.attributeNames??{},r=e=>n[e]??e,i=e.size??e.width??p.width,a=e.size??e.height??p.height,o=e.aliases?.filter(e=>typeof e==`string`&&e.trim()!==``).map(e=>`lucide-${e}`)??[],s=[...e.name?[`lucide-${e.name}`]:[],...o],c=t.className?.split(` `).filter(Boolean)??[],l=t.includeDefaultClasses===!1?f(...c):f(`lucide`,...s,...c),u=t.absoluteStrokeWidth?Number(t.strokeWidth??p[`stroke-width`])*Number(e.size??e.width??p.width)/Number(t.size??t.width??p.width):t.strokeWidth??p[`stroke-width`];return[`svg`,{...Object.entries(p).reduce((e,[t,n])=>(e[r(t)]=n,e),{}),...`color`in t&&t.color&&{[r(`stroke`)]:t.color},...`size`in t&&m(t.size)&&{[r(`width`)]:t.size,[r(`height`)]:t.size},...`width`in t&&m(t.width)&&{[r(`width`)]:t.width},...`height`in t&&m(t.height)&&{[r(`height`)]:t.height},[r(`stroke-width`)]:u,...l&&{[r(`class`)]:l},[r(`viewBox`)]:`0 0 ${i} ${a}`,...t.hasA11yProp===!1?{[r(`aria-hidden`)]:`true`}:{},...`attributes`in t&&t.attributes},e.node.map(e=>{let[n,i,a]=e,o=t.nonScalingStroke?{[r(`vector-effect`)]:`non-scaling-stroke`,...i}:i;return a?[n,o,a]:[n,o]})]}function g(e,t={}){return h(e,{...t,attributeNames:{...t.attributeNames,class:`className`,"stroke-width":`strokeWidth`,"stroke-linecap":`strokeLinecap`,"stroke-linejoin":`strokeLinejoin`,"vector-effect":`vectorEffect`}})}var _=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},v=(0,n.createContext)({}),y=()=>(0,n.useContext)(v),b=(0,n.forwardRef)(({color:e,size:t,width:r,height:i,strokeWidth:a,absoluteStrokeWidth:o,nonScalingStroke:s,className:c=``,children:l,iconNode:u=[],icon:d={node:u,aliases:[],size:24},...p},m)=>{let{size:h=24,strokeWidth:v=2,absoluteStrokeWidth:b=!1,nonScalingStroke:x=!1,color:S=`currentColor`,className:C=``}=y()??{},w=!!l||_(p),[T,E,D=[]]=g(d,{color:e??S,width:r??t??h,height:i??t??h,strokeWidth:a??v,absoluteStrokeWidth:o??b,nonScalingStroke:s??x,className:f(C,c),hasA11yProp:w,attributes:p});return(0,n.createElement)(T,{ref:m,...E},[...D.map(([e,t])=>(0,n.createElement)(e,t)),...Array.isArray(l)?l:[l]])});function x(e,t=[],r=[]){let i=typeof e==`string`?l(e,t,r):e,a=(0,n.forwardRef)(({className:e,...t},r)=>(0,n.createElement)(b,{ref:r,icon:i,className:e,...t}));return i.name&&(a.displayName=d(i.name)),a}var S={name:`globe`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]};S.node;var C=x(S),w={name:`x`,size:24,node:[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]};w.node;var T=x(w),E=(0,a.cva)(`inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden`,{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90`,secondary:`border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90`,destructive:`border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60`,outline:`text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground`}},defaultVariants:{variant:`default`}});function D({className:e,variant:n,asChild:a=!1,...o}){return(0,r.jsx)(a?i.Slot:`span`,{"data-slot":`badge`,className:t.t(E({variant:n}),e),...o})}function O(e,t,n){let r=e||t===!0||t===`true`;return{inert:r,props:{"aria-busy":e?`true`:void 0,"aria-disabled":r?`true`:void 0,onClick:e=>{if(r){e.preventDefault(),e.stopPropagation();return}n?.(e)}}}}function k(){return(0,r.jsxs)(`svg`,{"aria-hidden":`true`,className:`size-4 animate-spin`,xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,children:[(0,r.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,r.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z`})]})}function A({...e}){return(0,r.jsx)(s.Root,{"data-slot":`dialog`,...e})}function j({...e}){return(0,r.jsx)(s.Trigger,{"data-slot":`dialog-trigger`,...e})}function M({...e}){return(0,r.jsx)(s.Portal,{"data-slot":`dialog-portal`,...e})}function N({...e}){return(0,r.jsx)(s.Close,{"data-slot":`dialog-close`,...e})}function P({className:e,...n}){return(0,r.jsx)(s.Overlay,{"data-slot":`dialog-overlay`,className:t.t(`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50`,e),...n})}function F({className:e,children:n,showCloseButton:i=!0,...a}){let{t:c}=(0,o.useTranslation)();return(0,r.jsxs)(M,{"data-slot":`dialog-portal`,children:[(0,r.jsx)(P,{}),(0,r.jsxs)(s.Content,{"data-slot":`dialog-content`,className:t.t(`bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg`,e),...a,children:[n,i&&(0,r.jsxs)(s.Close,{"data-slot":`dialog-close`,className:`ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,children:[(0,r.jsx)(T,{}),(0,r.jsx)(`span`,{className:`sr-only`,children:c(`dialog.close`,{defaultValue:`Close`})})]})]})]})}function I({className:e,...n}){return(0,r.jsx)(`div`,{"data-slot":`dialog-header`,className:t.t(`flex flex-col gap-2 text-center sm:text-left`,e),...n})}function L({className:e,...n}){return(0,r.jsx)(`div`,{"data-slot":`dialog-footer`,className:t.t(`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`,e),...n})}function R({className:e,...n}){return(0,r.jsx)(s.Title,{"data-slot":`dialog-title`,className:t.t(`text-lg leading-none font-semibold`,e),...n})}function z({className:e,...n}){return(0,r.jsx)(s.Description,{"data-slot":`dialog-description`,className:t.t(`text-muted-foreground text-sm`,e),...n})}var B=(0,a.cva)(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all duration-200 cursor-pointer disabled:cursor-not-allowed disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:ring-[3px]`,{variants:{variant:{default:[`bg-gradient-to-r from-[var(--vg-accent-fill-from)] to-[var(--vg-accent-fill-to)] text-white`,`shadow-md shadow-[var(--vg-accent-shadow)]`,`hover:from-[var(--vg-accent-fill-from-hover)] hover:to-[var(--vg-accent-fill-to-hover)]`,`hover:shadow-lg hover:shadow-[var(--vg-accent-shadow-hover)]`,`focus-visible:ring-[var(--vg-accent-ring)]`].join(` `),secondary:[`bg-gradient-to-r from-slate-600 to-slate-700 text-white`,`shadow-md shadow-slate-500/25`,`hover:from-slate-700 hover:to-slate-800`,`hover:shadow-lg hover:shadow-slate-500/30`,`focus-visible:ring-slate-500/50`,`dark:from-slate-500 dark:to-slate-600`,`dark:shadow-slate-500/20`,`dark:hover:from-slate-600 dark:hover:to-slate-700`,`dark:hover:shadow-slate-500/25`,`dark:focus-visible:ring-slate-400/50`].join(` `),destructive:[`bg-gradient-to-r from-red-600 to-rose-600 text-white`,`shadow-md shadow-red-500/25`,`hover:from-red-700 hover:to-rose-700`,`hover:shadow-lg hover:shadow-red-500/30`,`focus-visible:ring-red-500/50`,`dark:from-red-500 dark:to-rose-500`,`dark:shadow-red-500/20`,`dark:hover:from-red-600 dark:hover:to-rose-600`,`dark:hover:shadow-red-500/25`,`dark:focus-visible:ring-red-400/50`].join(` `),success:[`bg-gradient-to-r from-emerald-600 to-teal-600 text-white`,`shadow-md shadow-emerald-500/25`,`hover:from-emerald-700 hover:to-teal-700`,`hover:shadow-lg hover:shadow-emerald-500/30`,`focus-visible:ring-emerald-500/50`,`dark:from-emerald-500 dark:to-teal-500`,`dark:shadow-emerald-500/20`,`dark:hover:from-emerald-600 dark:hover:to-teal-600`,`dark:hover:shadow-emerald-500/25`,`dark:focus-visible:ring-emerald-400/50`].join(` `),outline:[`border-2 border-[var(--vg-accent-fg)] text-[var(--vg-accent-fg)] bg-transparent`,`hover:bg-[var(--vg-accent-fill-from)] hover:text-white`,`shadow-sm hover:shadow-md hover:shadow-[var(--vg-accent-shadow)]`,`focus-visible:ring-[var(--vg-accent-ring)]`].join(` `),ghost:[`bg-transparent text-[var(--vg-accent-fg)]`,`hover:bg-[var(--vg-accent-surface)]`,`focus-visible:ring-[var(--vg-accent-ring)]`].join(` `)},size:{default:`h-11 px-5 py-2 has-[>svg]:px-4`,sm:`h-9 rounded-md gap-1.5 px-4 has-[>svg]:px-3 text-xs`,lg:`h-12 rounded-md px-8 has-[>svg]:px-6 text-base`,icon:`size-11`,"icon-sm":`size-9`,"icon-lg":`size-12`}},defaultVariants:{variant:`default`,size:`default`}});function V({className:e,variant:n,size:a,asChild:o=!1,loading:s=!1,onClick:c,children:l,...u}){let d=O(s,u[`aria-disabled`],c),f=t.t(B({variant:n,size:a,className:e}),d.inert&&(s?`cursor-progress`:`cursor-not-allowed opacity-50`));return(0,r.jsx)(o?i.Slot:`button`,{"data-slot":`gradient-button`,className:f,...u,...d.props,children:o?l:(0,r.jsxs)(r.Fragment,{children:[s&&(0,r.jsx)(k,{}),l]})})}function H({className:e,type:n,...i}){return(0,r.jsx)(`input`,{type:n,"data-slot":`input`,className:t.t(`file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-9 w-full min-w-0 rounded-md border bg-transparent pl-3 pr-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,e),...i})}function U({className:e,...n}){return(0,r.jsx)(`div`,{"data-slot":`skeleton`,className:t.t(`bg-accent animate-pulse rounded-md`,e),...n})}var W=({text:e,href:n,onClick:i,className:a,prefix:o})=>{if(!e)return null;let s=t.r(e);return(0,r.jsxs)(D,{variant:`outline`,title:e,onClick:()=>n&&i?.(n),className:t.t(`vg-badge-colorful text-xs font-medium px-2 py-0.5 gap-1.5 cursor-pointer transition-all hover:opacity-80`,`dynamic-badge-${e.length}`,a),style:{"--badge-bg":s.light.bg,"--badge-text":s.light.text,"--badge-border":s.light.border,"--badge-dark-bg":s.dark.bg,"--badge-dark-text":s.dark.text,"--badge-dark-border":s.dark.border},children:[o,(0,r.jsx)(`span`,{children:e})]})},G={AR:`SA`,BN:`BD`,CA:`ES`,CS:`CZ`,DA:`DK`,DE:`DE`,EL:`GR`,EN:`US`,EU:`ES`,FA:`IR`,FI:`FI`,FIL:`PH`,FR:`FR`,GA:`IE`,GL:`ES`,GU:`IN`,HE:`IL`,HI:`IN`,HU:`HU`,ID:`ID`,IT:`IT`,JA:`JP`,KN:`IN`,KO:`KR`,MR:`IN`,MSA:`MY`,NL:`NL`,NO:`NO`,PL:`PL`,PT:`BR`,RO:`RO`,RU:`RU`,ES:`ES`,SV:`SE`,TA:`IN`,TH:`TH`,TR:`TR`,UK:`UA`,UR:`PK`,VI:`VN`,ZH:`CN`},K={UK:`GB`};function q(e){if(!e)return``;let{language:n,region:r}=t.i(e);if(r)return(K[r]||r).toLowerCase();let i=G[n];return i?i.toLowerCase():(K[n]||n).toLowerCase()}var J=({locale:e,className:i})=>{let a=q(e),[o,s]=(0,n.useState)(null),c=o===a;return(0,r.jsxs)(D,{variant:`secondary`,className:t.t(`font-mono gap-2 py-1 pl-1 pr-2 w-fit`,i),children:[!c&&a?(0,r.jsx)(`img`,{src:`https://flagcdn.com/w40/${a}.png`,alt:a,onError:()=>s(a),className:`w-5 h-3.5 object-cover rounded-sm shadow-sm`}):(0,r.jsx)(C,{className:`w-3.5 h-3.5 text-muted-foreground`}),(0,r.jsx)(`span`,{className:`text-xs font-bold uppercase tracking-tight leading-none`,children:e})]})};Object.defineProperty(exports,"C",{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,"S",{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return H}}),Object.defineProperty(exports,"b",{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return L}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return I}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return F}}),Object.defineProperty(exports,"v",{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,"x",{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,"y",{enumerable:!0,get:function(){return O}});
|
|
1
|
+
const e=require("./rolldown-runtime-BocRIvOZ.cjs"),t=require("./utils-Oagwe_oa.cjs");let n=require("react");n=e.t(n,1);let r=require("react/jsx-runtime"),i=require("@radix-ui/react-slot"),a=require("class-variance-authority"),o=require("react-i18next"),s=require("@radix-ui/react-dialog");s=e.t(s,1);var c=e=>e?.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase();function l(e,t,n=[]){if(t==null)throw Error(`[lucide]: iconNode is required when icon name is used`);return{name:c(e),size:24,node:t,...n.length>0?{aliases:n}:{}}}var u=e=>{let t=``,n=!1;for(let r of e){if(r===`-`||r===`_`||r<=` `){n=t.length>0;continue}t.length===0?t+=r.toLowerCase():t+=n?r.toUpperCase():r,n=!1}return t},d=e=>{let t=u(e);return t.charAt(0).toUpperCase()+t.slice(1)},f=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),p={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":2,"stroke-linecap":`round`,"stroke-linejoin":`round`};function m(e){return e!=null}function h(e,t={}){let n=t.attributeNames??{},r=e=>n[e]??e,i=e.size??e.width??p.width,a=e.size??e.height??p.height,o=e.aliases?.filter(e=>typeof e==`string`&&e.trim()!==``).map(e=>`lucide-${e}`)??[],s=[...e.name?[`lucide-${e.name}`]:[],...o],c=t.className?.split(` `).filter(Boolean)??[],l=t.includeDefaultClasses===!1?f(...c):f(`lucide`,...s,...c),u=t.absoluteStrokeWidth?Number(t.strokeWidth??p[`stroke-width`])*Number(e.size??e.width??p.width)/Number(t.size??t.width??p.width):t.strokeWidth??p[`stroke-width`];return[`svg`,{...Object.entries(p).reduce((e,[t,n])=>(e[r(t)]=n,e),{}),...`color`in t&&t.color&&{[r(`stroke`)]:t.color},...`size`in t&&m(t.size)&&{[r(`width`)]:t.size,[r(`height`)]:t.size},...`width`in t&&m(t.width)&&{[r(`width`)]:t.width},...`height`in t&&m(t.height)&&{[r(`height`)]:t.height},[r(`stroke-width`)]:u,...l&&{[r(`class`)]:l},[r(`viewBox`)]:`0 0 ${i} ${a}`,...t.hasA11yProp===!1?{[r(`aria-hidden`)]:`true`}:{},...`attributes`in t&&t.attributes},e.node.map(e=>{let[n,i,a]=e,o=t.nonScalingStroke?{[r(`vector-effect`)]:`non-scaling-stroke`,...i}:i;return a?[n,o,a]:[n,o]})]}function g(e,t={}){return h(e,{...t,attributeNames:{...t.attributeNames,class:`className`,"stroke-width":`strokeWidth`,"stroke-linecap":`strokeLinecap`,"stroke-linejoin":`strokeLinejoin`,"vector-effect":`vectorEffect`}})}var _=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},v=(0,n.createContext)({}),y=()=>(0,n.useContext)(v),b=(0,n.forwardRef)(({color:e,size:t,width:r,height:i,strokeWidth:a,absoluteStrokeWidth:o,nonScalingStroke:s,className:c=``,children:l,iconNode:u=[],icon:d={node:u,aliases:[],size:24},...p},m)=>{let{size:h=24,strokeWidth:v=2,absoluteStrokeWidth:b=!1,nonScalingStroke:x=!1,color:S=`currentColor`,className:C=``}=y()??{},w=!!l||_(p),[T,E,D=[]]=g(d,{color:e??S,width:r??t??h,height:i??t??h,strokeWidth:a??v,absoluteStrokeWidth:o??b,nonScalingStroke:s??x,className:f(C,c),hasA11yProp:w,attributes:p});return(0,n.createElement)(T,{ref:m,...E},[...D.map(([e,t])=>(0,n.createElement)(e,t)),...Array.isArray(l)?l:[l]])});function x(e,t=[],r=[]){let i=typeof e==`string`?l(e,t,r):e,a=(0,n.forwardRef)(({className:e,...t},r)=>(0,n.createElement)(b,{ref:r,icon:i,className:e,...t}));return i.name&&(a.displayName=d(i.name)),a}var S={name:`globe`,size:24,node:[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20`,key:`13o1zl`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}]]};S.node;var C=x(S),w={name:`x`,size:24,node:[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]};w.node;var T=x(w),E=(0,a.cva)(`inline-flex items-center justify-center rounded-full border px-2 py-0.5 text-xs font-medium w-fit whitespace-nowrap shrink-0 [&>svg]:size-3 gap-1 [&>svg]:pointer-events-none focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px] aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive transition-[color,box-shadow] overflow-hidden`,{variants:{variant:{default:`border-transparent bg-primary text-primary-foreground [a&]:hover:bg-primary/90`,secondary:`border-transparent bg-secondary text-secondary-foreground [a&]:hover:bg-secondary/90`,destructive:`border-transparent bg-destructive text-white [a&]:hover:bg-destructive/90 focus-visible:ring-destructive/20 dark:focus-visible:ring-destructive/40 dark:bg-destructive/60`,outline:`text-foreground [a&]:hover:bg-accent [a&]:hover:text-accent-foreground`}},defaultVariants:{variant:`default`}});function D({className:e,variant:n,asChild:a=!1,...o}){return(0,r.jsx)(a?i.Slot:`span`,{"data-slot":`badge`,className:t.t(E({variant:n}),e),...o})}function O(e,t,n){let r=e||t===!0||t===`true`;return{inert:r,props:{"aria-busy":e?`true`:void 0,"aria-disabled":r?`true`:void 0,onClick:e=>{if(r){e.preventDefault(),e.stopPropagation();return}n?.(e)}}}}function k(){return(0,r.jsxs)(`svg`,{"aria-hidden":`true`,className:`size-4 animate-spin`,xmlns:`http://www.w3.org/2000/svg`,fill:`none`,viewBox:`0 0 24 24`,children:[(0,r.jsx)(`circle`,{className:`opacity-25`,cx:`12`,cy:`12`,r:`10`,stroke:`currentColor`,strokeWidth:`4`}),(0,r.jsx)(`path`,{className:`opacity-75`,fill:`currentColor`,d:`M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z`})]})}function A({...e}){return(0,r.jsx)(s.Root,{"data-slot":`dialog`,...e})}function j({...e}){return(0,r.jsx)(s.Trigger,{"data-slot":`dialog-trigger`,...e})}function M({...e}){return(0,r.jsx)(s.Portal,{"data-slot":`dialog-portal`,...e})}function N({...e}){return(0,r.jsx)(s.Close,{"data-slot":`dialog-close`,...e})}function P({className:e,...n}){return(0,r.jsx)(s.Overlay,{"data-slot":`dialog-overlay`,className:t.t(`data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50`,e),...n})}function F({className:e,children:n,showCloseButton:i=!0,...a}){let{t:c}=(0,o.useTranslation)();return(0,r.jsxs)(M,{"data-slot":`dialog-portal`,children:[(0,r.jsx)(P,{}),(0,r.jsxs)(s.Content,{"data-slot":`dialog-content`,className:t.t(`bg-background data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 fixed top-[50%] left-[50%] z-50 grid w-full max-w-[calc(100%-2rem)] translate-x-[-50%] translate-y-[-50%] gap-4 rounded-lg border p-6 shadow-lg duration-200 sm:max-w-lg`,e),...a,children:[n,i&&(0,r.jsxs)(s.Close,{"data-slot":`dialog-close`,className:`ring-offset-background focus:ring-ring data-[state=open]:bg-accent data-[state=open]:text-muted-foreground absolute top-4 right-4 rounded-xs opacity-70 transition-opacity hover:opacity-100 focus:ring-2 focus:ring-offset-2 focus:outline-hidden disabled:pointer-events-none [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4`,children:[(0,r.jsx)(T,{}),(0,r.jsx)(`span`,{className:`sr-only`,children:c(`dialog.close`,{defaultValue:`Close`})})]})]})]})}function I({className:e,...n}){return(0,r.jsx)(`div`,{"data-slot":`dialog-header`,className:t.t(`flex flex-col gap-2 text-center sm:text-left`,e),...n})}function L({className:e,...n}){return(0,r.jsx)(`div`,{"data-slot":`dialog-footer`,className:t.t(`flex flex-col-reverse gap-2 sm:flex-row sm:justify-end`,e),...n})}function R({className:e,...n}){return(0,r.jsx)(s.Title,{"data-slot":`dialog-title`,className:t.t(`text-lg leading-none font-semibold`,e),...n})}function z({className:e,...n}){return(0,r.jsx)(s.Description,{"data-slot":`dialog-description`,className:t.t(`text-muted-foreground text-sm`,e),...n})}var B=(0,a.cva)(`inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-all duration-200 cursor-pointer disabled:cursor-not-allowed disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 shrink-0 [&_svg]:shrink-0 outline-none focus-visible:ring-[3px]`,{variants:{variant:{default:[`bg-gradient-to-r from-[var(--vg-accent-fill-from)] to-[var(--vg-accent-fill-to)] text-white`,`shadow-md shadow-[var(--vg-accent-shadow)]`,`hover:from-[var(--vg-accent-fill-from-hover)] hover:to-[var(--vg-accent-fill-to-hover)]`,`hover:shadow-lg hover:shadow-[var(--vg-accent-shadow-hover)]`,`focus-visible:ring-[var(--vg-accent-ring)]`].join(` `),secondary:[`bg-gradient-to-r from-slate-600 to-slate-700 text-white`,`shadow-md shadow-slate-500/25`,`hover:from-slate-700 hover:to-slate-800`,`hover:shadow-lg hover:shadow-slate-500/30`,`focus-visible:ring-slate-500/50`,`dark:from-slate-500 dark:to-slate-600`,`dark:shadow-slate-500/20`,`dark:hover:from-slate-600 dark:hover:to-slate-700`,`dark:hover:shadow-slate-500/25`,`dark:focus-visible:ring-slate-400/50`].join(` `),destructive:[`bg-gradient-to-r from-red-600 to-rose-600 text-white`,`shadow-md shadow-red-500/25`,`hover:from-red-700 hover:to-rose-700`,`hover:shadow-lg hover:shadow-red-500/30`,`focus-visible:ring-red-500/50`,`dark:from-red-500 dark:to-rose-500`,`dark:shadow-red-500/20`,`dark:hover:from-red-600 dark:hover:to-rose-600`,`dark:hover:shadow-red-500/25`,`dark:focus-visible:ring-red-400/50`].join(` `),success:[`bg-gradient-to-r from-emerald-600 to-teal-600 text-white`,`shadow-md shadow-emerald-500/25`,`hover:from-emerald-700 hover:to-teal-700`,`hover:shadow-lg hover:shadow-emerald-500/30`,`focus-visible:ring-emerald-500/50`,`dark:from-emerald-500 dark:to-teal-500`,`dark:shadow-emerald-500/20`,`dark:hover:from-emerald-600 dark:hover:to-teal-600`,`dark:hover:shadow-emerald-500/25`,`dark:focus-visible:ring-emerald-400/50`].join(` `),outline:[`border-2 border-[var(--vg-accent-fg)] text-[var(--vg-accent-fg)] bg-transparent`,`hover:bg-[var(--vg-accent-fill-from)] hover:text-white`,`shadow-sm hover:shadow-md hover:shadow-[var(--vg-accent-shadow)]`,`focus-visible:ring-[var(--vg-accent-ring)]`].join(` `),ghost:[`bg-transparent text-[var(--vg-accent-fg)]`,`hover:bg-[var(--vg-accent-surface)]`,`focus-visible:ring-[var(--vg-accent-ring)]`].join(` `)},size:{default:`h-(--vg-control-form) px-5 py-2 has-[>svg]:px-4`,sm:`h-(--vg-control-dense) rounded-md gap-1.5 px-4 has-[>svg]:px-3 text-xs`,lg:`h-(--vg-control-form) rounded-md px-8 has-[>svg]:px-6 text-base`,icon:`size-(--vg-control-form)`,"icon-sm":`size-(--vg-control-dense)`,"icon-lg":`size-(--vg-control-form)`}},defaultVariants:{variant:`default`,size:`default`}});function V({className:e,variant:n,size:a,asChild:o=!1,loading:s=!1,onClick:c,children:l,...u}){let d=O(s,u[`aria-disabled`],c),f=t.t(B({variant:n,size:a,className:e}),d.inert&&(s?`cursor-progress`:`cursor-not-allowed opacity-50`));return(0,r.jsx)(o?i.Slot:`button`,{"data-slot":`gradient-button`,className:f,...u,...d.props,children:o?l:(0,r.jsxs)(r.Fragment,{children:[s&&(0,r.jsx)(k,{}),l]})})}function H({className:e,type:n,...i}){return(0,r.jsx)(`input`,{type:n,"data-slot":`input`,className:t.t(`file:text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground dark:bg-input/30 border-input h-(--vg-control-form) w-full min-w-0 rounded-md border bg-transparent pl-3 pr-3 py-1 text-base shadow-xs transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50 md:text-sm`,`focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]`,`aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive`,e),...i})}function U({className:e,...n}){return(0,r.jsx)(`div`,{"data-slot":`skeleton`,className:t.t(`bg-accent animate-pulse rounded-md`,e),...n})}var W=({text:e,href:n,onClick:i,className:a,prefix:o})=>{if(!e)return null;let s=t.r(e);return(0,r.jsxs)(D,{variant:`outline`,title:e,onClick:()=>n&&i?.(n),className:t.t(`vg-badge-colorful text-xs font-medium px-2 py-0.5 gap-1.5 cursor-pointer transition-all hover:opacity-80`,`dynamic-badge-${e.length}`,a),style:{"--badge-bg":s.light.bg,"--badge-text":s.light.text,"--badge-border":s.light.border,"--badge-dark-bg":s.dark.bg,"--badge-dark-text":s.dark.text,"--badge-dark-border":s.dark.border},children:[o,(0,r.jsx)(`span`,{children:e})]})},G={AR:`SA`,BN:`BD`,CA:`ES`,CS:`CZ`,DA:`DK`,DE:`DE`,EL:`GR`,EN:`US`,EU:`ES`,FA:`IR`,FI:`FI`,FIL:`PH`,FR:`FR`,GA:`IE`,GL:`ES`,GU:`IN`,HE:`IL`,HI:`IN`,HU:`HU`,ID:`ID`,IT:`IT`,JA:`JP`,KN:`IN`,KO:`KR`,MR:`IN`,MSA:`MY`,NL:`NL`,NO:`NO`,PL:`PL`,PT:`BR`,RO:`RO`,RU:`RU`,ES:`ES`,SV:`SE`,TA:`IN`,TH:`TH`,TR:`TR`,UK:`UA`,UR:`PK`,VI:`VN`,ZH:`CN`},K={UK:`GB`};function q(e){if(!e)return``;let{language:n,region:r}=t.i(e);if(r)return(K[r]||r).toLowerCase();let i=G[n];return i?i.toLowerCase():(K[n]||n).toLowerCase()}var J=({locale:e,className:i})=>{let a=q(e),[o,s]=(0,n.useState)(null),c=o===a;return(0,r.jsxs)(D,{variant:`secondary`,className:t.t(`font-mono gap-2 py-1 pl-1 pr-2 w-fit`,i),children:[!c&&a?(0,r.jsx)(`img`,{src:`https://flagcdn.com/w40/${a}.png`,alt:a,onError:()=>s(a),className:`w-5 h-3.5 object-cover rounded-sm shadow-sm`}):(0,r.jsx)(C,{className:`w-3.5 h-3.5 text-muted-foreground`}),(0,r.jsx)(`span`,{className:`text-xs font-bold uppercase tracking-tight leading-none`,children:e})]})};Object.defineProperty(exports,"C",{enumerable:!0,get:function(){return x}}),Object.defineProperty(exports,"S",{enumerable:!0,get:function(){return T}}),Object.defineProperty(exports,"_",{enumerable:!0,get:function(){return j}}),Object.defineProperty(exports,"a",{enumerable:!0,get:function(){return H}}),Object.defineProperty(exports,"b",{enumerable:!0,get:function(){return D}}),Object.defineProperty(exports,"c",{enumerable:!0,get:function(){return A}}),Object.defineProperty(exports,"d",{enumerable:!0,get:function(){return z}}),Object.defineProperty(exports,"f",{enumerable:!0,get:function(){return L}}),Object.defineProperty(exports,"g",{enumerable:!0,get:function(){return R}}),Object.defineProperty(exports,"h",{enumerable:!0,get:function(){return M}}),Object.defineProperty(exports,"i",{enumerable:!0,get:function(){return U}}),Object.defineProperty(exports,"l",{enumerable:!0,get:function(){return N}}),Object.defineProperty(exports,"m",{enumerable:!0,get:function(){return P}}),Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return q}}),Object.defineProperty(exports,"o",{enumerable:!0,get:function(){return V}}),Object.defineProperty(exports,"p",{enumerable:!0,get:function(){return I}}),Object.defineProperty(exports,"r",{enumerable:!0,get:function(){return W}}),Object.defineProperty(exports,"s",{enumerable:!0,get:function(){return B}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return J}}),Object.defineProperty(exports,"u",{enumerable:!0,get:function(){return F}}),Object.defineProperty(exports,"v",{enumerable:!0,get:function(){return k}}),Object.defineProperty(exports,"x",{enumerable:!0,get:function(){return E}}),Object.defineProperty(exports,"y",{enumerable:!0,get:function(){return O}});
|
|
@@ -46,5 +46,5 @@ export interface BentoActionsMenuProps {
|
|
|
46
46
|
* Hidden by default behind a single icon — keeps the hero's primary
|
|
47
47
|
* content uncluttered while keeping every action one click away.
|
|
48
48
|
*/
|
|
49
|
-
export declare function BentoActionsMenu({ actions, triggerLabel }: Readonly<BentoActionsMenuProps>): import(
|
|
49
|
+
export declare function BentoActionsMenu({ actions, triggerLabel }: Readonly<BentoActionsMenuProps>): import('react').JSX.Element | null;
|
|
50
50
|
//# sourceMappingURL=bento-actions-menu.d.ts.map
|
|
@@ -15,5 +15,5 @@ export interface BentoBackToTopProps {
|
|
|
15
15
|
* in flow, in the corner stack above the assistant dock (VDS133): the two used to
|
|
16
16
|
* pin themselves to the same corner, and the dock covered it.
|
|
17
17
|
*/
|
|
18
|
-
export declare function BentoBackToTop({ inline }?: Readonly<BentoBackToTopProps>): import(
|
|
18
|
+
export declare function BentoBackToTop({ inline }?: Readonly<BentoBackToTopProps>): import('react').JSX.Element;
|
|
19
19
|
//# sourceMappingURL=bento-back-to-top.d.ts.map
|
|
@@ -48,5 +48,5 @@ export interface BentoCalendarProps {
|
|
|
48
48
|
* Enter reaches a day's entries, Space picks one up, the arrows choose a day and
|
|
49
49
|
* Enter drops it, announced as it happens. It fetches nothing.
|
|
50
50
|
*/
|
|
51
|
-
export declare function BentoCalendar({ entries, view, defaultView, onViewChange, defaultDate, timeZone, weekStartsOn, onEntryMove, onEntrySelect, onRangeChange, label, className, }: Readonly<BentoCalendarProps>): import(
|
|
51
|
+
export declare function BentoCalendar({ entries, view, defaultView, onViewChange, defaultDate, timeZone, weekStartsOn, onEntryMove, onEntrySelect, onRangeChange, label, className, }: Readonly<BentoCalendarProps>): import('react').JSX.Element;
|
|
52
52
|
//# sourceMappingURL=bento-calendar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bento-calendar.d.ts","sourceRoot":"","sources":["../../src/bento/bento-calendar.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,+EAA+E;IAC/E,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAC9B,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAC;IACd,kFAAkF;IAClF,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC;CAChC;AAED,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,MAAM,CAAC;AAEjD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACvC,sDAAsD;IACtD,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACjD,0DAA0D;IAC1D,WAAW,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IACrC,gFAAgF;IAChF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACzC;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,KAAK,IAAI,CAAC;IAChD,yEAAyE;IACzE,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,yGAAyG;IACzG,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,IAAI,CAAC;QAAC,GAAG,EAAE,IAAI,CAAA;KAAE,KAAK,IAAI,CAAC;IAC5D,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAsDD;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,IAAI,EACJ,WAAqB,EACrB,YAAY,EACZ,WAAW,EACX,QAA2D,EAC3D,YAAgB,EAChB,WAAW,EACX,aAAa,EACb,aAAa,EACb,KAAK,EACL,SAAS,GACV,EAAE,QAAQ,CAAC,kBAAkB,CAAC,+
|
|
1
|
+
{"version":3,"file":"bento-calendar.d.ts","sourceRoot":"","sources":["../../src/bento/bento-calendar.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,+EAA+E;IAC/E,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAC9B,wEAAwE;IACxE,KAAK,EAAE,MAAM,CAAC;IACd,kFAAkF;IAClF,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC;CAChC;AAED,MAAM,MAAM,iBAAiB,GAAG,OAAO,GAAG,MAAM,CAAC;AAEjD,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,SAAS,kBAAkB,EAAE,CAAC;IACvC,sDAAsD;IACtD,IAAI,CAAC,EAAE,iBAAiB,CAAC;IACzB,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACjD,0DAA0D;IAC1D,WAAW,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IACrC,gFAAgF;IAChF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,6BAA6B;IAC7B,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACzC;;;OAGG;IACH,WAAW,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,KAAK,IAAI,CAAC;IAChD,yEAAyE;IACzE,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,yGAAyG;IACzG,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,IAAI,CAAC;QAAC,GAAG,EAAE,IAAI,CAAA;KAAE,KAAK,IAAI,CAAC;IAC5D,kEAAkE;IAClE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAsDD;;;;;;;;;;;GAWG;AACH,wBAAgB,aAAa,CAAC,EAC5B,OAAO,EACP,IAAI,EACJ,WAAqB,EACrB,YAAY,EACZ,WAAW,EACX,QAA2D,EAC3D,YAAgB,EAChB,WAAW,EACX,aAAa,EACb,aAAa,EACb,KAAK,EACL,SAAS,GACV,EAAE,QAAQ,CAAC,kBAAkB,CAAC,+BAmT9B"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export interface BentoChangeCellProps {
|
|
2
|
+
/** When the record last changed. */
|
|
3
|
+
at: Date | number | string;
|
|
4
|
+
/** Who changed it, already a display name. Omitted, the cell is the time alone. */
|
|
5
|
+
actor?: string;
|
|
6
|
+
/** Whether an agent made the change, which marks the actor line. */
|
|
7
|
+
agent?: boolean;
|
|
8
|
+
/** What "now" is, for a relative time measured from somewhere fixed. Defaults to when the cell mounted. */
|
|
9
|
+
now?: Date | number;
|
|
10
|
+
className?: string;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* VDS207 — the column that says when a record last changed, and who changed it.
|
|
14
|
+
*
|
|
15
|
+
* Each console drew `toLocaleDateString()`, which repeats one date down a list
|
|
16
|
+
* and never says who. This draws a relative time in the reader's language ("2
|
|
17
|
+
* days ago", then a short date past a month), with the exact instant as its
|
|
18
|
+
* tooltip and as what a screen reader says, and an optional actor line marked
|
|
19
|
+
* when the change came from an agent. It takes values and fetches nothing.
|
|
20
|
+
*/
|
|
21
|
+
export declare function BentoChangeCell({ at, actor, agent, now, className }: Readonly<BentoChangeCellProps>): import('react').JSX.Element;
|
|
22
|
+
//# sourceMappingURL=bento-change-cell.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bento-change-cell.d.ts","sourceRoot":"","sources":["../../src/bento/bento-change-cell.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,oBAAoB;IACnC,oCAAoC;IACpC,EAAE,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,CAAC;IAC3B,mFAAmF;IACnF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oEAAoE;IACpE,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,2GAA2G;IAC3G,GAAG,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAkBD;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAa,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,QAAQ,CAAC,oBAAoB,CAAC,+BAsC3G"}
|
|
@@ -17,5 +17,5 @@ export interface BentoChangeMarkProps {
|
|
|
17
17
|
* reads. It takes a state and nothing else: striking a deleted item's name is the
|
|
18
18
|
* product's to draw.
|
|
19
19
|
*/
|
|
20
|
-
export declare function BentoChangeMark({ state, compact, className }: Readonly<BentoChangeMarkProps>): import(
|
|
20
|
+
export declare function BentoChangeMark({ state, compact, className }: Readonly<BentoChangeMarkProps>): import('react').JSX.Element;
|
|
21
21
|
//# sourceMappingURL=bento-change-mark.d.ts.map
|
|
@@ -71,5 +71,5 @@ export interface BentoCommandPaletteProps {
|
|
|
71
71
|
* It only renders and drives selection while `open`. `useBentoShellShortcuts`
|
|
72
72
|
* opens it from the keyboard and `BentoPaletteTrigger` from the header.
|
|
73
73
|
*/
|
|
74
|
-
export declare function BentoCommandPalette({ open, onOpenChange, items, group, onQueryChange, }: Readonly<BentoCommandPaletteProps>): import(
|
|
74
|
+
export declare function BentoCommandPalette({ open, onOpenChange, items, group, onQueryChange, }: Readonly<BentoCommandPaletteProps>): import('react').JSX.Element;
|
|
75
75
|
//# sourceMappingURL=bento-command-palette.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bento-command-palette.d.ts","sourceRoot":"","sources":["../../src/bento/bento-command-palette.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAwC,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAGjF,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhE,kDAAkD;AAClD,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,oFAAoF;IACpF,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,aAAa,CAAC;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC7D;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAwB;IACvC,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,KAAK,EAAE,yBAAyB,EAAE,CAAC;IACnC;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4EAA4E;IAC5E,QAAQ,EAAE,CAAC,IAAI,EAAE,yBAAyB,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC;;;;;;;;OAQG;IACH,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,wBAAwB,CAAC;IACjC;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AA0DD;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,IAAI,EACJ,YAAY,EACZ,KAAK,EACL,KAAK,EACL,aAAa,GACd,EAAE,QAAQ,CAAC,wBAAwB,CAAC,+
|
|
1
|
+
{"version":3,"file":"bento-command-palette.d.ts","sourceRoot":"","sources":["../../src/bento/bento-command-palette.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAwC,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC;AAGjF,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAEhE,kDAAkD;AAClD,MAAM,WAAW,yBAAyB;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,oFAAoF;IACpF,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,aAAa,CAAC;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC7D;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAwB;IACvC,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,KAAK,EAAE,yBAAyB,EAAE,CAAC;IACnC;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,4EAA4E;IAC5E,QAAQ,EAAE,CAAC,IAAI,EAAE,yBAAyB,KAAK,IAAI,CAAC;CACrD;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC;;;;;;;;OAQG;IACH,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,wBAAwB,CAAC;IACjC;;;;OAIG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACzC;AA0DD;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,EAClC,IAAI,EACJ,YAAY,EACZ,KAAK,EACL,KAAK,EACL,aAAa,GACd,EAAE,QAAQ,CAAC,wBAAwB,CAAC,+BAgNpC"}
|
|
@@ -14,5 +14,5 @@ export interface BentoCountTileProps {
|
|
|
14
14
|
* Compact Bento tile that highlights a single number — typical for
|
|
15
15
|
* counters (e.g., "12 LLMs", "3 MCP servers").
|
|
16
16
|
*/
|
|
17
|
-
export declare function BentoCountTile({ to, icon: Icon, tone, label, count, span, }: Readonly<BentoCountTileProps>): import(
|
|
17
|
+
export declare function BentoCountTile({ to, icon: Icon, tone, label, count, span, }: Readonly<BentoCountTileProps>): import('react').JSX.Element;
|
|
18
18
|
//# sourceMappingURL=bento-count-tile.d.ts.map
|
|
@@ -64,10 +64,20 @@ export interface BentoDataTableProps<TRow> {
|
|
|
64
64
|
onRowOpen?: (row: TRow) => void;
|
|
65
65
|
/** Pixels per row. Rows are one height, which is what lets the table mount only the visible ones. */
|
|
66
66
|
rowHeight?: number;
|
|
67
|
-
/**
|
|
67
|
+
/**
|
|
68
|
+
* The most the body grows to, in pixels, scrolling inside itself past it: for a
|
|
69
|
+
* table in a panel or a dialog. Omitted, the table is as tall as its rows and
|
|
70
|
+
* scrolls with the page, its header row held under the shell's header.
|
|
71
|
+
*/
|
|
68
72
|
height?: number;
|
|
69
73
|
/** Shown instead of the body when there are no rows. */
|
|
70
74
|
empty?: ReactNode;
|
|
75
|
+
/**
|
|
76
|
+
* The list's own controls, a filter and secondary actions, drawn at the start of
|
|
77
|
+
* the table's bar with Columns at its end. A selection replaces them with its
|
|
78
|
+
* actions in the same bar, so a list never has two bands.
|
|
79
|
+
*/
|
|
80
|
+
toolbar?: ReactNode;
|
|
71
81
|
}
|
|
72
82
|
/**
|
|
73
83
|
* VDS138 — a table a curator sorts, range-selects and acts on at scale.
|
|
@@ -84,5 +94,5 @@ export interface BentoDataTableProps<TRow> {
|
|
|
84
94
|
* and actions, and stores the column layout the way `BentoListPage` has it store
|
|
85
95
|
* a tile layout.
|
|
86
96
|
*/
|
|
87
|
-
export declare function BentoDataTable<TRow extends RowData>({ rows, getRowId, columns, label, getRowLabel, rowActions, selectionActions, selectedIds, onSelectionChange, selectionScope, layout, onLayoutChange, onRowOpen, rowHeight, height, empty, }: Readonly<BentoDataTableProps<TRow>>): import(
|
|
97
|
+
export declare function BentoDataTable<TRow extends RowData>({ rows, getRowId, columns, label, getRowLabel, rowActions, selectionActions, selectedIds, onSelectionChange, selectionScope, layout, onLayoutChange, onRowOpen, rowHeight, height, empty, toolbar, }: Readonly<BentoDataTableProps<TRow>>): import('react').JSX.Element;
|
|
88
98
|
//# sourceMappingURL=bento-data-table.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bento-data-table.d.ts","sourceRoot":"","sources":["../../src/bento/bento-data-table.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,OAAO,EAEb,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,KAAK,aAAa,EAGlB,KAAK,SAAS,
|
|
1
|
+
{"version":3,"file":"bento-data-table.d.ts","sourceRoot":"","sources":["../../src/bento/bento-data-table.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,OAAO,EAEb,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,KAAK,aAAa,EAGlB,KAAK,SAAS,EAOf,MAAM,OAAO,CAAC;AAaf,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE9E,MAAM,WAAW,oBAAoB,CAAC,IAAI;IACxC,2DAA2D;IAC3D,EAAE,EAAE,MAAM,CAAC;IACX,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,2BAA2B;IAC3B,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,SAAS,CAAC;IAC/B,wFAAwF;IACxF,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,IAAI,GAAG,SAAS,CAAC;IACrE,6FAA6F;IAC7F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uEAAuE;IACvE,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,oBAAoB,CAAC,IAAI;IACxC,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,aAAa,CAAC;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvC,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,mDAAmD;IACnD,QAAQ,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC;CAClC;AAED,2FAA2F;AAC3F,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,mBAAmB,CAAC,IAAI;IACvC,IAAI,EAAE,SAAS,IAAI,EAAE,CAAC;IACtB,QAAQ,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,MAAM,CAAC;IAChC,OAAO,EAAE,SAAS,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IAC/C,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,mGAAmG;IACnG,WAAW,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,MAAM,CAAC;IACpC,2CAA2C;IAC3C,UAAU,CAAC,EAAE,SAAS,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IACnD,6FAA6F;IAC7F,gBAAgB,CAAC,EAAE,SAAS,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;IACzD;;;;;OAKG;IACH,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,iBAAiB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;IAC5C;;;;OAIG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,kEAAkE;IAClE,MAAM,CAAC,EAAE,oBAAoB,CAAC;IAC9B,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACxD,wCAAwC;IACxC,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,IAAI,KAAK,IAAI,CAAC;IAChC,qGAAqG;IACrG,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wDAAwD;IACxD,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;;OAIG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;CACrB;AA6BD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,cAAc,CAAC,IAAI,SAAS,OAAO,EAAE,EACnD,IAAI,EACJ,QAAQ,EACR,OAAO,EACP,KAAK,EACL,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,iBAAiB,EACjB,cAAc,EACd,MAAM,EACN,cAAc,EACd,SAAS,EACT,SAAc,EACd,MAAM,EACN,KAAK,EACL,OAAO,GACR,EAAE,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,+BA6drC"}
|
|
@@ -46,5 +46,5 @@ export type BentoDiffLayout = "inline" | "split";
|
|
|
46
46
|
* removals rather than as an empty panel. A change is named in text as well as
|
|
47
47
|
* coloured, so it reads the same without colour. It fetches nothing.
|
|
48
48
|
*/
|
|
49
|
-
export declare function BentoDiff({ before, after, fields, showUnchanged, layout }: Readonly<BentoDiffProps>): import(
|
|
49
|
+
export declare function BentoDiff({ before, after, fields, showUnchanged, layout }: Readonly<BentoDiffProps>): import('react').JSX.Element;
|
|
50
50
|
//# sourceMappingURL=bento-diff.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bento-diff.d.ts","sourceRoot":"","sources":["../../src/bento/bento-diff.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAOjD,6CAA6C;AAC7C,MAAM,MAAM,kBAAkB;AAC5B,yCAAyC;AACvC,MAAM;AACR,gGAAgG;GAC9F,MAAM;AACR,2FAA2F;GACzF,OAAO;AACT,iEAAiE;GAC/D,OAAO,CAAC;AAEZ,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,uEAAuE;IACvE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,SAAS,CAAC;CACxC;AAED,8GAA8G;AAC9G,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;AAErE,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,aAAa,CAAC;IACtB,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;IAClC,4DAA4D;IAC5D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,MAAM,CAAC,EAAE,eAAe,CAAC;CAC1B;AAED,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,OAAO,CAAC;AAgEjD;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,aAAqB,EAAE,MAAiB,EAAE,EAAE,QAAQ,CAAC,cAAc,CAAC,+
|
|
1
|
+
{"version":3,"file":"bento-diff.d.ts","sourceRoot":"","sources":["../../src/bento/bento-diff.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAOjD,6CAA6C;AAC7C,MAAM,MAAM,kBAAkB;AAC5B,yCAAyC;AACvC,MAAM;AACR,gGAAgG;GAC9F,MAAM;AACR,2FAA2F;GACzF,OAAO;AACT,iEAAiE;GAC/D,OAAO,CAAC;AAEZ,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,kBAAkB,CAAC;IAC1B,uEAAuE;IACvE,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,SAAS,CAAC;CACxC;AAED,8GAA8G;AAC9G,MAAM,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;AAErE,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,aAAa,CAAC;IACtB,KAAK,EAAE,aAAa,CAAC;IACrB,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;IAClC,4DAA4D;IAC5D,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;OAIG;IACH,MAAM,CAAC,EAAE,eAAe,CAAC;CAC1B;AAED,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,OAAO,CAAC;AAgEjD;;;;;;;;;;;;GAYG;AACH,wBAAgB,SAAS,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,aAAqB,EAAE,MAAiB,EAAE,EAAE,QAAQ,CAAC,cAAc,CAAC,+BA+EtH"}
|
|
@@ -2,9 +2,9 @@ import { Icon as TablerIcon } from '@tabler/icons-react';
|
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
3
|
import { BentoTone } from './bento-tones';
|
|
4
4
|
export interface BentoEmptyStateProps {
|
|
5
|
-
/**
|
|
5
|
+
/** Icon in the leading neutral well. Defaults to a sparkle. */
|
|
6
6
|
icon?: TablerIcon;
|
|
7
|
-
/**
|
|
7
|
+
/** @deprecated Ignored since VDS182: an empty state names nothing, so its icon sits in a neutral well. */
|
|
8
8
|
tone?: BentoTone;
|
|
9
9
|
/** Headline — what's missing, in plain language. */
|
|
10
10
|
title: string;
|
|
@@ -31,12 +31,12 @@ export interface BentoEmptyStateProps {
|
|
|
31
31
|
* The one canonical Bento empty-state (T572). Every "nothing here yet" surface
|
|
32
32
|
* — an empty entity list, a chart with no samples, an analytics tab before its
|
|
33
33
|
* first data point — renders this so the void reads the same everywhere: a
|
|
34
|
-
*
|
|
34
|
+
* `bento-glass` card, an icon in a neutral well, a short title, a one-line
|
|
35
35
|
* hint, and an optional CTA. Consistency here is the delight: an empty screen
|
|
36
36
|
* that looks designed rather than broken.
|
|
37
37
|
*
|
|
38
38
|
* The list mosaic's `EmptyHintTile` delegates to this component (wrapping it in
|
|
39
39
|
* the grid span), so lists and standalone panels stay visually identical.
|
|
40
40
|
*/
|
|
41
|
-
export declare function BentoEmptyState({ icon: Icon,
|
|
41
|
+
export declare function BentoEmptyState({ icon: Icon, title, description, action, align, titleLevel, className, }: Readonly<BentoEmptyStateProps>): import('react').JSX.Element;
|
|
42
42
|
//# sourceMappingURL=bento-empty-state.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bento-empty-state.d.ts","sourceRoot":"","sources":["../../src/bento/bento-empty-state.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,
|
|
1
|
+
{"version":3,"file":"bento-empty-state.d.ts","sourceRoot":"","sources":["../../src/bento/bento-empty-state.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,WAAW,oBAAoB;IACnC,+DAA+D;IAC/D,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,0GAA0G;IAC1G,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,oDAAoD;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,uCAAuC;IACvC,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,6EAA6E;IAC7E,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB;;;;OAIG;IACH,KAAK,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC3B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,eAAe,CAAC,EAC9B,IAAI,EAAE,IAAmB,EACzB,KAAK,EACL,WAAW,EACX,MAAM,EACN,KAAgB,EAChB,UAAc,EACd,SAAS,GACV,EAAE,QAAQ,CAAC,oBAAoB,CAAC,+BAyBhC"}
|
|
@@ -126,6 +126,6 @@ export interface BentoEntityShellProps<TEntity extends BentoEntityLike> {
|
|
|
126
126
|
* The form body is a render prop receiving `{ staged, onStateChange }` and
|
|
127
127
|
* wraps the existing react-hook-form fields in `BentoFormSection`s unchanged.
|
|
128
128
|
*/
|
|
129
|
-
export declare function BentoEntityShell<TEntity extends BentoEntityLike>({ entity, isNew, headlineFallback, eyebrow, listRoute, trail, icon, tone, formId, feature, hasStatus, hideIcon, readOnly, autosaveOnly, badge, notice, onUpdate, onDelete, extraActions, children, }: Readonly<BentoEntityShellProps<TEntity>>): import(
|
|
129
|
+
export declare function BentoEntityShell<TEntity extends BentoEntityLike>({ entity, isNew, headlineFallback, eyebrow, listRoute, trail, icon, tone, formId, feature, hasStatus, hideIcon, readOnly, autosaveOnly, badge, notice, onUpdate, onDelete, extraActions, children, }: Readonly<BentoEntityShellProps<TEntity>>): import('react').JSX.Element;
|
|
130
130
|
export {};
|
|
131
131
|
//# sourceMappingURL=bento-entity-shell.d.ts.map
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { Icon as TablerIcon } from '@tabler/icons-react';
|
|
2
2
|
import { ReactNode } from 'react';
|
|
3
3
|
import { BentoEmphasis } from './bento-layout';
|
|
4
|
+
import { BentoRecordState } from './bento-status-marker';
|
|
4
5
|
import { BentoTone } from './bento-tones';
|
|
5
6
|
export interface BentoEntityTileProps {
|
|
6
7
|
/** Link target for the tile. */
|
|
@@ -19,7 +20,10 @@ export interface BentoEntityTileProps {
|
|
|
19
20
|
defaultIcon: TablerIcon;
|
|
20
21
|
/** User-picked Iconify icon name, if any. */
|
|
21
22
|
icon?: string | null;
|
|
23
|
+
/** @deprecated Ignored since VDS182: a list tile carries no tone of its own; pass `state`. */
|
|
22
24
|
tone?: BentoTone;
|
|
25
|
+
/** The record's state, drawn as a dot and a word — the one colour a list tile carries. */
|
|
26
|
+
state?: BentoRecordState;
|
|
23
27
|
title: string;
|
|
24
28
|
description?: string | null;
|
|
25
29
|
/** Optional meta chips/text under the title (e.g. vendor, model name). */
|
|
@@ -31,10 +35,10 @@ export interface BentoEntityTileProps {
|
|
|
31
35
|
viewTransitionName?: string;
|
|
32
36
|
}
|
|
33
37
|
/**
|
|
34
|
-
* The common Bento content tile:
|
|
35
|
-
* title + description + optional meta row, sized by {@link BentoEmphasis}.
|
|
38
|
+
* The common Bento content tile: icon in a neutral well + optional status pill
|
|
39
|
+
* or record state + title + description + optional meta row, sized by {@link BentoEmphasis}.
|
|
36
40
|
* Covers the shape shared by the entity lists; entities with a bespoke tile can
|
|
37
41
|
* skip it and pass their own node to {@link BentoListPage}'s `renderTile`.
|
|
38
42
|
*/
|
|
39
|
-
export declare function BentoEntityTile({ to, emphasis, featured, defaultIcon: DefaultIcon, icon,
|
|
43
|
+
export declare function BentoEntityTile({ to, emphasis, featured, defaultIcon: DefaultIcon, icon, title, description, meta, state, enabled, hasStatus, viewTransitionName, }: Readonly<BentoEntityTileProps>): import('react').JSX.Element;
|
|
40
44
|
//# sourceMappingURL=bento-entity-tile.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bento-entity-tile.d.ts","sourceRoot":"","sources":["../../src/bento/bento-entity-tile.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,
|
|
1
|
+
{"version":3,"file":"bento-entity-tile.d.ts","sourceRoot":"","sources":["../../src/bento/bento-entity-tile.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,IAAI,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAqB,KAAK,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,WAAW,oBAAoB;IACnC,gCAAgC;IAChC,EAAE,EAAE,MAAM,CAAC;IACX;;;OAGG;IACH,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB;;;OAGG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yDAAyD;IACzD,WAAW,EAAE,UAAU,CAAC;IACxB,6CAA6C;IAC7C,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,8FAA8F;IAC9F,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,0FAA0F;IAC1F,KAAK,CAAC,EAAE,gBAAgB,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,0EAA0E;IAC1E,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,gEAAgE;IAChE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oEAAoE;IACpE,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,EAC9B,EAAE,EACF,QAAQ,EACR,QAAQ,EACR,WAAW,EAAE,WAAW,EACxB,IAAI,EACJ,KAAK,EACL,WAAW,EACX,IAAI,EACJ,KAAK,EACL,OAAO,EACP,SAAiB,EACjB,kBAAkB,GACnB,EAAE,QAAQ,CAAC,oBAAoB,CAAC,+BA2ChC"}
|
|
@@ -56,5 +56,5 @@ export declare const EMPTY_FILTERS: BentoFilterValue;
|
|
|
56
56
|
* `BentoDataTable`'s `selectionScope`, and a selection never outlives the rows it
|
|
57
57
|
* was made on.
|
|
58
58
|
*/
|
|
59
|
-
export declare function BentoFilterBar({ value, onChange, facets, queryLabel, queryDelay, views, }: Readonly<BentoFilterBarProps>): import(
|
|
59
|
+
export declare function BentoFilterBar({ value, onChange, facets, queryLabel, queryDelay, views, }: Readonly<BentoFilterBarProps>): import('react').JSX.Element;
|
|
60
60
|
//# sourceMappingURL=bento-filter-bar.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bento-filter-bar.d.ts","sourceRoot":"","sources":["../../src/bento/bento-filter-bar.tsx"],"names":[],"mappings":"AACA,OAAO,EAAuB,KAAK,SAAS,EAA8B,MAAM,OAAO,CAAC;AAexF,yDAAyD;AACzD,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,SAAS;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACrD,uDAAuD;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,yEAAyE;AACzE,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,GAAG,oBAAoB,CAAC;AAE7E,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,qEAAqE;AACrE,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,qGAAqG;IACrG,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,oBAAoB,GAAG,SAAS,CAAC,CAAC;CAC9E;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,gBAAgB,CAAC;IACxB,0GAA0G;IAC1G,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC5C,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACpC,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mGAAmG;IACnG,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,eAAO,MAAM,aAAa,EAAE,gBAA4C,CAAC;AAezE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,QAAQ,EACR,MAAM,EACN,UAAU,EACV,UAAgB,EAChB,KAAK,GACN,EAAE,QAAQ,CAAC,mBAAmB,CAAC,+
|
|
1
|
+
{"version":3,"file":"bento-filter-bar.d.ts","sourceRoot":"","sources":["../../src/bento/bento-filter-bar.tsx"],"names":[],"mappings":"AACA,OAAO,EAAuB,KAAK,SAAS,EAA8B,MAAM,OAAO,CAAC;AAexF,yDAAyD;AACzD,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,SAAS;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACrD,uDAAuD;IACvD,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,yEAAyE;AACzE,MAAM,WAAW,oBAAoB;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,gBAAgB,GAAG,sBAAsB,GAAG,oBAAoB,CAAC;AAE7E,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,EAAE,CAAC,EAAE,MAAM,CAAC;CACb;AAED,qEAAqE;AACrE,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,qGAAqG;IACrG,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,oBAAoB,GAAG,SAAS,CAAC,CAAC;CAC9E;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,gBAAgB,CAAC;IACxB,0GAA0G;IAC1G,QAAQ,EAAE,CAAC,KAAK,EAAE,gBAAgB,KAAK,IAAI,CAAC;IAC5C,MAAM,EAAE,SAAS,gBAAgB,EAAE,CAAC;IACpC,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mGAAmG;IACnG,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB;AAED,eAAO,MAAM,aAAa,EAAE,gBAA4C,CAAC;AAezE;;;;;;;;;;;;;GAaG;AACH,wBAAgB,cAAc,CAAC,EAC7B,KAAK,EACL,QAAQ,EACR,MAAM,EACN,UAAU,EACV,UAAgB,EAChB,KAAK,GACN,EAAE,QAAQ,CAAC,mBAAmB,CAAC,+BA8G/B"}
|
|
@@ -87,5 +87,5 @@ export interface BentoFormHeroProps extends BentoHeroProps {
|
|
|
87
87
|
* @author Alexandre Oliveira
|
|
88
88
|
* @since 2026.3.4
|
|
89
89
|
*/
|
|
90
|
-
export declare function BentoFormHero({ eyebrow, backTo, backLabel, trail, leading, title, subtitle, trailing, onCancel, actions, loading, dirty, titleMissing, saveDisabled, stickyTitle, stickyBadges, }: Readonly<BentoFormHeroProps>): import(
|
|
90
|
+
export declare function BentoFormHero({ eyebrow, backTo, backLabel, trail, leading, title, subtitle, trailing, onCancel, actions, loading, dirty, titleMissing, saveDisabled, stickyTitle, stickyBadges, }: Readonly<BentoFormHeroProps>): import('react').JSX.Element;
|
|
91
91
|
//# sourceMappingURL=bento-form-hero.d.ts.map
|
|
@@ -10,14 +10,15 @@ export interface BentoFormSectionProps {
|
|
|
10
10
|
icon: ComponentType<{
|
|
11
11
|
size?: number;
|
|
12
12
|
}>;
|
|
13
|
-
|
|
13
|
+
/** @deprecated Ignored since VDS182: a form section names no single thing, so its icon sits in a neutral well. */
|
|
14
|
+
tone?: BentoTone;
|
|
14
15
|
title: string;
|
|
15
16
|
description?: string;
|
|
16
17
|
children: ReactNode;
|
|
17
18
|
/** Optional trailing slot in the header (badges, status pill, etc.). */
|
|
18
19
|
trailing?: ReactNode;
|
|
19
20
|
/**
|
|
20
|
-
* Merged onto the
|
|
21
|
+
* Merged onto the section surface, not applied instead of it. A form written
|
|
21
22
|
* against the console's compound API reaches this through
|
|
22
23
|
* `AdaptiveSectionCard`, which used to forward it on one branch only — so a
|
|
23
24
|
* styled form lost its styling under one of the two chromes (VDS111).
|
|
@@ -25,20 +26,20 @@ export interface BentoFormSectionProps {
|
|
|
25
26
|
className?: string;
|
|
26
27
|
}
|
|
27
28
|
/**
|
|
28
|
-
* The
|
|
29
|
+
* The section surface itself, as a class list rather than a second copy of one.
|
|
29
30
|
* `AdaptiveSectionCard` renders a section whose header it cannot read, and a
|
|
30
31
|
* pasted class list is the one a change to this surface never reaches.
|
|
31
32
|
*/
|
|
32
33
|
export declare const BENTO_FORM_SURFACE = "bento-tile bento-glass relative flex flex-col gap-5 overflow-hidden rounded-3xl p-5 md:p-6";
|
|
33
34
|
/**
|
|
34
|
-
*
|
|
35
|
-
* counterpart of `BentoTile`. Groups related fields under
|
|
36
|
-
*
|
|
35
|
+
* Card section wrapper for Bento forms — the form-page
|
|
36
|
+
* counterpart of `BentoTile`. Groups related fields under an icon
|
|
37
|
+
* in a neutral well + title + description, with the same iOS-spring entry
|
|
37
38
|
* and `bento-glass` surface used elsewhere in the bento language.
|
|
38
39
|
*
|
|
39
40
|
* Stays content-agnostic: any react-hook-form field combo can sit
|
|
40
41
|
* inside `children`, so existing FormField/Input/Select/Switch
|
|
41
42
|
* components are reused without modification.
|
|
42
43
|
*/
|
|
43
|
-
export declare function BentoFormSection({ icon: Icon,
|
|
44
|
+
export declare function BentoFormSection({ icon: Icon, title, description, children, trailing, as: Heading, className, }: Readonly<BentoFormSectionProps>): import('react').JSX.Element;
|
|
44
45
|
//# sourceMappingURL=bento-form-section.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bento-form-section.d.ts","sourceRoot":"","sources":["../../src/bento/bento-form-section.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAItD,OAAO,
|
|
1
|
+
{"version":3,"file":"bento-form-section.d.ts","sourceRoot":"","sources":["../../src/bento/bento-form-section.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAItD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/C,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IACxB,IAAI,EAAE,aAAa,CAAC;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACvC,kHAAkH;IAClH,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC;IACpB,wEAAwE;IACxE,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,+FAC+D,CAAC;AAE/F;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,IAAI,EAAE,IAAI,EACV,KAAK,EACL,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,EAAE,EAAE,OAAc,EAClB,SAAS,GACV,EAAE,QAAQ,CAAC,qBAAqB,CAAC,+BAoBjC"}
|
|
@@ -31,5 +31,5 @@ export interface BentoHeroIconPickerProps {
|
|
|
31
31
|
* across all bento detail/header pages — replacing the in-form
|
|
32
32
|
* IconPicker field with a single click target on the page header.
|
|
33
33
|
*/
|
|
34
|
-
export declare function BentoHeroIconPicker({ value, onChange, onClear, defaultIcon: DefaultIcon, tone, title, description, readOnly, }: Readonly<BentoHeroIconPickerProps>): import(
|
|
34
|
+
export declare function BentoHeroIconPicker({ value, onChange, onClear, defaultIcon: DefaultIcon, tone, title, description, readOnly, }: Readonly<BentoHeroIconPickerProps>): import('react').JSX.Element;
|
|
35
35
|
//# sourceMappingURL=bento-hero-icon-picker.d.ts.map
|
|
@@ -14,7 +14,7 @@ import { BentoTrailStep } from './bento-trail';
|
|
|
14
14
|
export declare function BentoBackLink({ to, children }: Readonly<{
|
|
15
15
|
to: string;
|
|
16
16
|
children: ReactNode;
|
|
17
|
-
}>): import(
|
|
17
|
+
}>): import('react').JSX.Element;
|
|
18
18
|
/**
|
|
19
19
|
* The way back a hero draws above its title: a trail when there are ancestors to
|
|
20
20
|
* name, the arrow back link when there is one parent, nothing when there is none.
|
|
@@ -63,7 +63,7 @@ export interface BentoHeroProps {
|
|
|
63
63
|
* Mirrors the "navigation title" pattern from iOS — large, airy,
|
|
64
64
|
* left-aligned by default, and animates in with the same spring as
|
|
65
65
|
* the rest of the bento shell. Stays outside the bento grid (no
|
|
66
|
-
*
|
|
66
|
+
* card surface) so it reads as a section header rather
|
|
67
67
|
* than as a tile.
|
|
68
68
|
*
|
|
69
69
|
* Layout contract: leading + title block always anchor to the start;
|
|
@@ -71,5 +71,5 @@ export interface BentoHeroProps {
|
|
|
71
71
|
* `ml-auto` so single-child (no trailing) renders deterministically
|
|
72
72
|
* left-aligned without depending on `justify-content` quirks.
|
|
73
73
|
*/
|
|
74
|
-
export declare function BentoHero({ eyebrow, backTo, backLabel, trail, title, subtitle, leading, trailing, }: Readonly<BentoHeroProps>): import(
|
|
74
|
+
export declare function BentoHero({ eyebrow, backTo, backLabel, trail, title, subtitle, leading, trailing, }: Readonly<BentoHeroProps>): import('react').JSX.Element;
|
|
75
75
|
//# sourceMappingURL=bento-hero.d.ts.map
|