@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.
Files changed (114) hide show
  1. package/README.md +55 -19
  2. package/dist/{badge-locale-Bx7m7tg2.js → badge-locale-BwsfyQJT.js} +7 -7
  3. package/dist/{badge-locale-1_BmNTro.cjs → badge-locale-D4J5OlvK.cjs} +1 -1
  4. package/dist/bento/bento-actions-menu.d.ts +1 -1
  5. package/dist/bento/bento-back-to-top.d.ts +1 -1
  6. package/dist/bento/bento-calendar.d.ts +1 -1
  7. package/dist/bento/bento-calendar.d.ts.map +1 -1
  8. package/dist/bento/bento-change-cell.d.ts +22 -0
  9. package/dist/bento/bento-change-cell.d.ts.map +1 -0
  10. package/dist/bento/bento-change-mark.d.ts +1 -1
  11. package/dist/bento/bento-command-palette.d.ts +1 -1
  12. package/dist/bento/bento-command-palette.d.ts.map +1 -1
  13. package/dist/bento/bento-count-tile.d.ts +1 -1
  14. package/dist/bento/bento-data-table.d.ts +12 -2
  15. package/dist/bento/bento-data-table.d.ts.map +1 -1
  16. package/dist/bento/bento-diff.d.ts +1 -1
  17. package/dist/bento/bento-diff.d.ts.map +1 -1
  18. package/dist/bento/bento-empty-state.d.ts +4 -4
  19. package/dist/bento/bento-empty-state.d.ts.map +1 -1
  20. package/dist/bento/bento-entity-shell.d.ts +1 -1
  21. package/dist/bento/bento-entity-tile.d.ts +7 -3
  22. package/dist/bento/bento-entity-tile.d.ts.map +1 -1
  23. package/dist/bento/bento-filter-bar.d.ts +1 -1
  24. package/dist/bento/bento-filter-bar.d.ts.map +1 -1
  25. package/dist/bento/bento-form-hero.d.ts +1 -1
  26. package/dist/bento/bento-form-section.d.ts +8 -7
  27. package/dist/bento/bento-form-section.d.ts.map +1 -1
  28. package/dist/bento/bento-hero-icon-picker.d.ts +1 -1
  29. package/dist/bento/bento-hero.d.ts +3 -3
  30. package/dist/bento/bento-identity-cell.d.ts +22 -0
  31. package/dist/bento/bento-identity-cell.d.ts.map +1 -0
  32. package/dist/bento/bento-inline-edit.d.ts +1 -1
  33. package/dist/bento/bento-inline-edit.d.ts.map +1 -1
  34. package/dist/bento/bento-layout.d.ts +4 -2
  35. package/dist/bento/bento-layout.d.ts.map +1 -1
  36. package/dist/bento/bento-list-page.d.ts +32 -10
  37. package/dist/bento/bento-list-page.d.ts.map +1 -1
  38. package/dist/bento/bento-nav-rail.d.ts +1 -1
  39. package/dist/bento/bento-palette-trigger.d.ts +1 -1
  40. package/dist/bento/bento-panel.d.ts +8 -7
  41. package/dist/bento/bento-panel.d.ts.map +1 -1
  42. package/dist/bento/bento-save-bar.d.ts +2 -2
  43. package/dist/bento/bento-scroll-save-bar.d.ts +1 -1
  44. package/dist/bento/bento-section-chrome.d.ts +3 -3
  45. package/dist/bento/bento-section.d.ts +1 -1
  46. package/dist/bento/bento-shell.d.ts +1 -1
  47. package/dist/bento/bento-shell.d.ts.map +1 -1
  48. package/dist/bento/bento-shortcuts-dialog.d.ts +1 -1
  49. package/dist/bento/bento-split-page.d.ts +1 -1
  50. package/dist/bento/bento-status-marker.d.ts +20 -4
  51. package/dist/bento/bento-status-marker.d.ts.map +1 -1
  52. package/dist/bento/bento-tile.d.ts +1 -1
  53. package/dist/bento/bento-tones.d.ts +1 -1
  54. package/dist/bento/bento-trail.d.ts +1 -1
  55. package/dist/bento/bento-user-menu.d.ts +1 -1
  56. package/dist/bento/bento-version-rail.d.ts +1 -1
  57. package/dist/bento/index.d.ts +4 -2
  58. package/dist/bento/index.d.ts.map +1 -1
  59. package/dist/bento.cjs +3 -3
  60. package/dist/bento.css +39 -5
  61. package/dist/bento.es.js +1301 -1136
  62. package/dist/catalogue.json +155 -32
  63. package/dist/components/app-switcher.d.ts +1 -1
  64. package/dist/components/backend-status.d.ts +2 -2
  65. package/dist/components/language-select.d.ts +1 -1
  66. package/dist/components/language-switcher.d.ts +1 -1
  67. package/dist/components/login/login.d.ts +11 -11
  68. package/dist/components/mode-toggle.d.ts +2 -2
  69. package/dist/components/router/loading-provider.d.ts +1 -1
  70. package/dist/components/startup-first/startup-first.d.ts +11 -11
  71. package/dist/components/theme-provider.d.ts +1 -1
  72. package/dist/components/ui/button.d.ts.map +1 -1
  73. package/dist/components/ui/floating-formulas-bg.d.ts +1 -1
  74. package/dist/components/ui/form-actions.d.ts +1 -1
  75. package/dist/components/ui/glass-card.d.ts +2 -2
  76. package/dist/components/ui/gradient-button.d.ts.map +1 -1
  77. package/dist/components/ui/icon-picker-dialog.d.ts +1 -1
  78. package/dist/components/ui/pulse-ring.d.ts +1 -1
  79. package/dist/components/ui/resizable.d.ts +3 -3
  80. package/dist/components/ui/section-card.d.ts +1 -1
  81. package/dist/components/ui/sidebar.d.ts.map +1 -1
  82. package/dist/components/ui/skeleton.d.ts +1 -1
  83. package/dist/components/ui/sonner.d.ts +1 -1
  84. package/dist/components/ui/stepper.d.ts +1 -1
  85. package/dist/components/ui/sticky-save-bar.d.ts +2 -2
  86. package/dist/components/ui/toggle.d.ts.map +1 -1
  87. package/dist/components/ui/viglet-assistant.d.ts +1 -1
  88. package/dist/components/ui/viglet-avatar.d.ts +1 -1
  89. package/dist/components/viglet-app-switcher.d.ts +1 -1
  90. package/dist/contexts/breadcrumb.context.d.ts +1 -1
  91. package/dist/exports.json +11 -1
  92. package/dist/floating-formulas-bg.css +3 -1
  93. package/dist/i18n/index.d.ts +20 -0
  94. package/dist/i18n/index.d.ts.map +1 -1
  95. package/dist/i18n/locales/en/bento.json.d.ts +10 -0
  96. package/dist/i18n/locales/pt/bento.json.d.ts +10 -0
  97. package/dist/i18n.cjs +1 -1
  98. package/dist/i18n.es.js +20 -0
  99. package/dist/index.cjs +1 -1
  100. package/dist/index.es.js +972 -1045
  101. package/dist/lib/busy.d.ts +1 -1
  102. package/dist/{loading-provider-D-_5G-08.js → loading-provider-Dh7jdSol.js} +2 -2
  103. package/dist/loading-provider-bLW_X3A1.cjs +1 -0
  104. package/dist/preset.css +66 -7
  105. package/dist/router.cjs +1 -1
  106. package/dist/router.es.js +1 -1
  107. package/dist/user.context-BqsOcMaZ.cjs +1 -0
  108. package/dist/{user.context-DUs2lT6D.js → user.context-vCmnGlIb.js} +335 -262
  109. package/dist/viglet-design-system.css +1 -1
  110. package/docs/BENTO-AUTHORING.md +19 -3
  111. package/docs/reference/README.md +5 -7
  112. package/package.json +1 -1
  113. package/dist/loading-provider-E4tIG9BM.cjs +0 -1
  114. 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 (35 components)
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 body is
881
- as tall as its rows up to `height` (480 px by default) and scrolls past that, so a
882
- list of one is one row tall. Pass `rows`,
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 frosted bento section, so a form written that
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 frosted surface and all
913
- of its children; a frosted box that is not part of a form is `BentoPanel`.
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. Pass it to a
935
- `BentoDataTable` as `selectionScope` too, and a selection clears when the filters
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
- <BentoFilterBar
940
- value={filters}
941
- onChange={setFilters}
942
- facets={[
943
- { id: "state", kind: "choice", label: t("state"), multiple: true, options: states },
944
- { id: "updated", kind: "date", label: t("updated") },
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
- <BentoDataTable rows={filtered} selectionScope={JSON.stringify(filters)} … />
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-11 px-5 py-2 has-[>svg]:px-4",
369
- sm: "h-9 rounded-md gap-1.5 px-4 has-[>svg]:px-3 text-xs",
370
- lg: "h-12 rounded-md px-8 has-[>svg]:px-6 text-base",
371
- icon: "size-11",
372
- "icon-sm": "size-9",
373
- "icon-lg": "size-12"
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-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),
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("react").JSX.Element | null;
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("react").JSX.Element;
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("react").JSX.Element;
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,+BAkT9B"}
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("react").JSX.Element;
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("react").JSX.Element;
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,+BA8MpC"}
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("react").JSX.Element;
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
- /** The most the body grows to, in pixels. Fewer rows than fill it, and it is as tall as the rows. */
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("react").JSX.Element;
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":"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"}
1
+ {"version":3,"file":"bento-data-table.d.ts","sourceRoot":"","sources":["../../src/bento/bento-data-table.tsx"],"names":[],"mappings":"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"}
@@ -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("react").JSX.Element;
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,+BA8EtH"}
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
- /** Tonal icon in the leading chip. Defaults to a sparkle. */
5
+ /** Icon in the leading neutral well. Defaults to a sparkle. */
6
6
  icon?: TablerIcon;
7
- /** Tone driving the icon chip gradient. Default `indigo`. */
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
- * frosted `bento-glass` panel, a tonal icon chip, a short title, a one-line
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, tone, title, description, action, align, titleLevel, className, }: Readonly<BentoEmptyStateProps>): import("react").JSX.Element;
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,EAAkB,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/D,MAAM,WAAW,oBAAoB;IACnC,6DAA6D;IAC7D,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,6DAA6D;IAC7D,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,IAAe,EACf,KAAK,EACL,WAAW,EACX,MAAM,EACN,KAAgB,EAChB,UAAc,EACd,SAAS,GACV,EAAE,QAAQ,CAAC,oBAAoB,CAAC,+BA0BhC"}
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("react").JSX.Element;
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: tonal icon chip + optional status pill +
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, tone, title, description, meta, enabled, hasStatus, viewTransitionName, }: Readonly<BentoEntityTileProps>): import("react").JSX.Element;
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,EAAkB,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/D,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,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,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,IAAe,EACf,KAAK,EACL,WAAW,EACX,IAAI,EACJ,OAAO,EACP,SAAiB,EACjB,kBAAkB,GACnB,EAAE,QAAQ,CAAC,oBAAoB,CAAC,+BAkDhC"}
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("react").JSX.Element;
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,+BA6G/B"}
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("react").JSX.Element;
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
- tone: BentoTone;
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 frosted surface, not applied instead of it. A form written
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 frosted surface itself, as a class list rather than a second copy of one.
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
- * Frosted-glass section wrapper for Bento forms — the form-page
35
- * counterpart of `BentoTile`. Groups related fields under a tonal
36
- * icon chip + title + description, with the same iOS-spring entry
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, tone, title, description, children, trailing, as: Heading, className, }: Readonly<BentoFormSectionProps>): import("react").JSX.Element;
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,EAAkB,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAE/D,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,IAAI,EAAE,SAAS,CAAC;IAChB,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,IAAI,EACJ,KAAK,EACL,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,EAAE,EAAE,OAAc,EAClB,SAAS,GACV,EAAE,QAAQ,CAAC,qBAAqB,CAAC,+BAoBjC"}
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("react").JSX.Element;
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("react").JSX.Element;
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
- * frosted-glass surface) so it reads as a section header rather
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("react").JSX.Element;
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