@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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@viglet/viglet-design-system",
3
- "version": "2026.3.16",
3
+ "version": "2026.3.18",
4
4
  "generatedBy": "scripts/emit-catalogue.mjs",
5
5
  "components": [
6
6
  {
@@ -50,8 +50,8 @@
50
50
  {
51
51
  "name": "AdaptiveSectionCard",
52
52
  "specifier": "@viglet/viglet-design-system/bento",
53
- "summary": "A `SectionCard`'s markup rendered as a frosted BentoFormSection.",
54
- "description": "A `SectionCard`'s markup rendered as a frosted BentoFormSection.\nImport it aliased where you want a drop-in:\n\n```tsx\nimport { AdaptiveSectionCard as SectionCard } from \"@viglet/viglet-design-system/bento\"\n```\n\nIt reads the icon, title and description off the `Header` (or `StaticHeader`)\nchild and unwraps the `Content` child, so a form written against the console's\ncompound API renders in the bento language without being rewritten. Every\nother child renders where it was written. That compound API is the whole\ndifference from `BentoFormSection`, which takes the same three as props.\n\nIt used to pick between two chromes off a provider, which is what let one form\nlive in two consoles at once while a product migrated behind a parallel route.\nEvery consumer finished that migration, so there is one chrome left\nand nothing to pick between.",
53
+ "summary": "A `SectionCard`'s markup rendered as a BentoFormSection.",
54
+ "description": "A `SectionCard`'s markup rendered as a BentoFormSection.\nImport it aliased where you want a drop-in:\n\n```tsx\nimport { AdaptiveSectionCard as SectionCard } from \"@viglet/viglet-design-system/bento\"\n```\n\nIt reads the icon, title and description off the `Header` (or `StaticHeader`)\nchild and unwraps the `Content` child, so a form written against the console's\ncompound API renders in the bento language without being rewritten. Every\nother child renders where it was written. That compound API is the whole\ndifference from `BentoFormSection`, which takes the same three as props.\n\nIt used to pick between two chromes off a provider, which is what let one form\nlive in two consoles at once while a product migrated behind a parallel route.\nEvery consumer finished that migration, so there is one chrome left\nand nothing to pick between.",
55
55
  "deprecated": null,
56
56
  "example": null,
57
57
  "props": [
@@ -65,7 +65,7 @@
65
65
  "name": "className",
66
66
  "type": "string | undefined",
67
67
  "optional": true,
68
- "summary": "Merged onto the frosted surface rather than replacing it."
68
+ "summary": "Merged onto the section surface rather than replacing it."
69
69
  },
70
70
  {
71
71
  "name": "variant",
@@ -490,6 +490,48 @@
490
490
  "inheritedProps": 0,
491
491
  "rules": []
492
492
  },
493
+ {
494
+ "name": "BentoChangeCell",
495
+ "specifier": "@viglet/viglet-design-system/bento",
496
+ "summary": "the column that says when a record last changed, and who changed it.",
497
+ "description": "the column that says when a record last changed, and who changed it.\n\nEach console drew `toLocaleDateString()`, which repeats one date down a list\nand never says who. This draws a relative time in the reader's language (\"2\ndays ago\", then a short date past a month), with the exact instant as its\ntooltip and as what a screen reader says, and an optional actor line marked\nwhen the change came from an agent. It takes values and fetches nothing.",
498
+ "deprecated": null,
499
+ "example": null,
500
+ "props": [
501
+ {
502
+ "name": "at",
503
+ "type": "string | number | Date",
504
+ "optional": false,
505
+ "summary": "When the record last changed."
506
+ },
507
+ {
508
+ "name": "actor",
509
+ "type": "string | undefined",
510
+ "optional": true,
511
+ "summary": "Who changed it, already a display name."
512
+ },
513
+ {
514
+ "name": "agent",
515
+ "type": "boolean | undefined",
516
+ "optional": true,
517
+ "summary": "Whether an agent made the change, which marks the actor line."
518
+ },
519
+ {
520
+ "name": "className",
521
+ "type": "string | undefined",
522
+ "optional": true,
523
+ "summary": ""
524
+ },
525
+ {
526
+ "name": "now",
527
+ "type": "number | Date | undefined",
528
+ "optional": true,
529
+ "summary": "What \"now\" is, for a relative time measured from somewhere fixed."
530
+ }
531
+ ],
532
+ "inheritedProps": 0,
533
+ "rules": []
534
+ },
493
535
  {
494
536
  "name": "BentoChangeMark",
495
537
  "specifier": "@viglet/viglet-design-system/bento",
@@ -612,6 +654,7 @@
612
654
  ],
613
655
  "inheritedProps": 0,
614
656
  "rules": [
657
+ "BENTO-AUTHORING §4 Colour — a tone is a token",
615
658
  "BENTO-BOUNDARY Inventory"
616
659
  ]
617
660
  },
@@ -663,7 +706,7 @@
663
706
  "name": "height",
664
707
  "type": "number | undefined",
665
708
  "optional": true,
666
- "summary": "The most the body grows to, in pixels."
709
+ "summary": "The most the body grows to, in pixels, scrolling inside itself past it: for a table in a panel or a dialog."
667
710
  },
668
711
  {
669
712
  "name": "layout",
@@ -718,6 +761,12 @@
718
761
  "type": "string | undefined",
719
762
  "optional": true,
720
763
  "summary": "What the rows were chosen by, such as a serialised filter."
764
+ },
765
+ {
766
+ "name": "toolbar",
767
+ "type": "ReactNode",
768
+ "optional": true,
769
+ "summary": "The list's own controls, a filter and secondary actions, drawn at the start of the table's bar with Columns at its end."
721
770
  }
722
771
  ],
723
772
  "inheritedProps": 0,
@@ -771,7 +820,7 @@
771
820
  "name": "BentoEmptyState",
772
821
  "specifier": "@viglet/viglet-design-system/bento",
773
822
  "summary": "The one canonical Bento empty-state.",
774
- "description": "The one canonical Bento empty-state. Every \"nothing here yet\" surface\n— an empty entity list, a chart with no samples, an analytics tab before its\nfirst data point — renders this so the void reads the same everywhere: a\nfrosted `bento-glass` panel, a tonal icon chip, a short title, a one-line\nhint, and an optional CTA. Consistency here is the delight: an empty screen\nthat looks designed rather than broken.\n\nThe list mosaic's `EmptyHintTile` delegates to this component (wrapping it in\nthe grid span), so lists and standalone panels stay visually identical.",
823
+ "description": "The one canonical Bento empty-state. Every \"nothing here yet\" surface\n— an empty entity list, a chart with no samples, an analytics tab before its\nfirst data point — renders this so the void reads the same everywhere: a\n`bento-glass` card, an icon in a neutral well, a short title, a one-line\nhint, and an optional CTA. Consistency here is the delight: an empty screen\nthat looks designed rather than broken.\n\nThe list mosaic's `EmptyHintTile` delegates to this component (wrapping it in\nthe grid span), so lists and standalone panels stay visually identical.",
775
824
  "deprecated": null,
776
825
  "example": null,
777
826
  "props": [
@@ -809,7 +858,7 @@
809
858
  "name": "icon",
810
859
  "type": "Icon | undefined",
811
860
  "optional": true,
812
- "summary": "Tonal icon in the leading chip."
861
+ "summary": "Icon in the leading neutral well."
813
862
  },
814
863
  {
815
864
  "name": "titleLevel",
@@ -821,7 +870,7 @@
821
870
  "name": "tone",
822
871
  "type": "BentoTone | undefined",
823
872
  "optional": true,
824
- "summary": "Tone driving the icon chip gradient."
873
+ "summary": ""
825
874
  }
826
875
  ],
827
876
  "inheritedProps": 0,
@@ -968,8 +1017,8 @@
968
1017
  {
969
1018
  "name": "BentoEntityTile",
970
1019
  "specifier": "@viglet/viglet-design-system/bento",
971
- "summary": "The common Bento content tile: tonal icon chip + optional status pill + title + description + optional meta row, sized by BentoEmphasis.",
972
- "description": "The common Bento content tile: tonal icon chip + optional status pill +\ntitle + description + optional meta row, sized by BentoEmphasis.\nCovers the shape shared by the entity lists; entities with a bespoke tile can\nskip it and pass their own node to BentoListPage's `renderTile`.",
1020
+ "summary": "The common Bento content tile: icon in a neutral well + optional status pill or record state + title + description + optional meta row, sized by BentoEmphasis.",
1021
+ "description": "The common Bento content tile: icon in a neutral well + optional status pill\nor record state + title + description + optional meta row, sized by BentoEmphasis.\nCovers the shape shared by the entity lists; entities with a bespoke tile can\nskip it and pass their own node to BentoListPage's `renderTile`.",
973
1022
  "deprecated": null,
974
1023
  "example": null,
975
1024
  "props": [
@@ -1033,6 +1082,12 @@
1033
1082
  "optional": true,
1034
1083
  "summary": "Optional meta chips/text under the title (e.g."
1035
1084
  },
1085
+ {
1086
+ "name": "state",
1087
+ "type": "BentoRecordState | undefined",
1088
+ "optional": true,
1089
+ "summary": "The record's state, drawn as a dot and a word — the one colour a list tile carries."
1090
+ },
1036
1091
  {
1037
1092
  "name": "tone",
1038
1093
  "type": "BentoTone | undefined",
@@ -1216,8 +1271,8 @@
1216
1271
  {
1217
1272
  "name": "BentoFormSection",
1218
1273
  "specifier": "@viglet/viglet-design-system/bento",
1219
- "summary": "Frosted-glass section wrapper for Bento forms — the form-page counterpart of `BentoTile`.",
1220
- "description": "Frosted-glass section wrapper for Bento forms — the form-page\ncounterpart of `BentoTile`. Groups related fields under a tonal\nicon chip + title + description, with the same iOS-spring entry\nand `bento-glass` surface used elsewhere in the bento language.\n\nStays content-agnostic: any react-hook-form field combo can sit\ninside `children`, so existing FormField/Input/Select/Switch\ncomponents are reused without modification.",
1274
+ "summary": "Card section wrapper for Bento forms — the form-page counterpart of `BentoTile`.",
1275
+ "description": "Card section wrapper for Bento forms — the form-page\ncounterpart of `BentoTile`. Groups related fields under an icon\nin a neutral well + title + description, with the same iOS-spring entry\nand `bento-glass` surface used elsewhere in the bento language.\n\nStays content-agnostic: any react-hook-form field combo can sit\ninside `children`, so existing FormField/Input/Select/Switch\ncomponents are reused without modification.",
1221
1276
  "deprecated": null,
1222
1277
  "example": null,
1223
1278
  "props": [
@@ -1239,12 +1294,6 @@
1239
1294
  "optional": false,
1240
1295
  "summary": ""
1241
1296
  },
1242
- {
1243
- "name": "tone",
1244
- "type": "BentoTone",
1245
- "optional": false,
1246
- "summary": ""
1247
- },
1248
1297
  {
1249
1298
  "name": "as",
1250
1299
  "type": "\"h2\" | \"h3\" | \"h4\" | undefined",
@@ -1255,7 +1304,7 @@
1255
1304
  "name": "className",
1256
1305
  "type": "string | undefined",
1257
1306
  "optional": true,
1258
- "summary": "Merged onto the frosted surface, not applied instead of it."
1307
+ "summary": "Merged onto the section surface, not applied instead of it."
1259
1308
  },
1260
1309
  {
1261
1310
  "name": "description",
@@ -1263,6 +1312,12 @@
1263
1312
  "optional": true,
1264
1313
  "summary": ""
1265
1314
  },
1315
+ {
1316
+ "name": "tone",
1317
+ "type": "BentoTone | undefined",
1318
+ "optional": true,
1319
+ "summary": ""
1320
+ },
1266
1321
  {
1267
1322
  "name": "trailing",
1268
1323
  "type": "ReactNode",
@@ -1281,7 +1336,7 @@
1281
1336
  "name": "BentoHero",
1282
1337
  "specifier": "@viglet/viglet-design-system/bento",
1283
1338
  "summary": "Page-level hero block used at the top of every Bento page.",
1284
- "description": "Page-level hero block used at the top of every Bento page.\n\nMirrors the \"navigation title\" pattern from iOS — large, airy,\nleft-aligned by default, and animates in with the same spring as\nthe rest of the bento shell. Stays outside the bento grid (no\nfrosted-glass surface) so it reads as a section header rather\nthan as a tile.\n\nLayout contract: leading + title block always anchor to the start;\nthe optional `trailing` slot is pushed to the far right via\n`ml-auto` so single-child (no trailing) renders deterministically\nleft-aligned without depending on `justify-content` quirks.",
1339
+ "description": "Page-level hero block used at the top of every Bento page.\n\nMirrors the \"navigation title\" pattern from iOS — large, airy,\nleft-aligned by default, and animates in with the same spring as\nthe rest of the bento shell. Stays outside the bento grid (no\ncard surface) so it reads as a section header rather\nthan as a tile.\n\nLayout contract: leading + title block always anchor to the start;\nthe optional `trailing` slot is pushed to the far right via\n`ml-auto` so single-child (no trailing) renders deterministically\nleft-aligned without depending on `justify-content` quirks.",
1285
1340
  "deprecated": null,
1286
1341
  "example": null,
1287
1342
  "props": [
@@ -1399,9 +1454,46 @@
1399
1454
  ],
1400
1455
  "inheritedProps": 0,
1401
1456
  "rules": [
1457
+ "BENTO-AUTHORING §4 Colour — a tone is a token",
1402
1458
  "BENTO-BOUNDARY Inventory"
1403
1459
  ]
1404
1460
  },
1461
+ {
1462
+ "name": "BentoIdentityCell",
1463
+ "specifier": "@viglet/viglet-design-system/bento",
1464
+ "summary": "the first column of a list: who or what a row is.",
1465
+ "description": "the first column of a list: who or what a row is.\n\nEach console drew its own name cell, a bold name and nothing under it, so two\nproducts disagreed on how a record is recognised. This one is a square of\ninitials in a tone derived from the name, the name, and a muted line under it.\nBoth lines truncate, so a long address never makes a row taller than the\ntable's `rowHeight`. It takes values and fetches nothing.",
1466
+ "deprecated": null,
1467
+ "example": null,
1468
+ "props": [
1469
+ {
1470
+ "name": "name",
1471
+ "type": "string",
1472
+ "optional": false,
1473
+ "summary": "The record's name, already a display string."
1474
+ },
1475
+ {
1476
+ "name": "className",
1477
+ "type": "string | undefined",
1478
+ "optional": true,
1479
+ "summary": ""
1480
+ },
1481
+ {
1482
+ "name": "detail",
1483
+ "type": "ReactNode",
1484
+ "optional": true,
1485
+ "summary": "A muted second line: a description, an address, a key."
1486
+ },
1487
+ {
1488
+ "name": "tone",
1489
+ "type": "BentoTone | undefined",
1490
+ "optional": true,
1491
+ "summary": "The square's tone."
1492
+ }
1493
+ ],
1494
+ "inheritedProps": 0,
1495
+ "rules": []
1496
+ },
1405
1497
  {
1406
1498
  "name": "BentoInlineEdit",
1407
1499
  "specifier": "@viglet/viglet-design-system/bento",
@@ -1556,6 +1648,12 @@
1556
1648
  "optional": true,
1557
1649
  "summary": "The table's columns, as BentoDataTable takes them."
1558
1650
  },
1651
+ {
1652
+ "name": "defaultView",
1653
+ "type": "BentoListView | undefined",
1654
+ "optional": true,
1655
+ "summary": "Which view a list given both renderTile and columns opens in, before the reader picks one."
1656
+ },
1559
1657
  {
1560
1658
  "name": "error",
1561
1659
  "type": "string | null | undefined",
@@ -1578,13 +1676,13 @@
1578
1676
  "name": "headerAction",
1579
1677
  "type": "ReactNode",
1580
1678
  "optional": true,
1581
- "summary": "Optional global action(s) rendered in a row below the hero (left-aligned, sharing the row with the \"Customize\" button)."
1679
+ "summary": ""
1582
1680
  },
1583
1681
  {
1584
1682
  "name": "heroIcon",
1585
1683
  "type": "Icon | undefined",
1586
1684
  "optional": true,
1587
- "summary": "The hero's icon chip."
1685
+ "summary": "The hero's icon, in a neutral well."
1588
1686
  },
1589
1687
  {
1590
1688
  "name": "hideNew",
@@ -1622,6 +1720,12 @@
1622
1720
  "optional": true,
1623
1721
  "summary": "Enter or a double click on a row, usually its detail route."
1624
1722
  },
1723
+ {
1724
+ "name": "onViewChange",
1725
+ "type": "((view: BentoListView) => void) | undefined",
1726
+ "optional": true,
1727
+ "summary": ""
1728
+ },
1625
1729
  {
1626
1730
  "name": "renderTile",
1627
1731
  "type": "((item: T, emphasis: BentoEmphasis) => ReactNode) | undefined",
@@ -1638,13 +1742,25 @@
1638
1742
  "name": "tone",
1639
1743
  "type": "BentoTone | undefined",
1640
1744
  "optional": true,
1641
- "summary": "Tone driving the hero chip + New-tile gradient."
1745
+ "summary": ""
1746
+ },
1747
+ {
1748
+ "name": "toolbar",
1749
+ "type": "ReactNode",
1750
+ "optional": true,
1751
+ "summary": "The list's own controls: its filter and any secondary, list-scoped action (an import, a launch)."
1642
1752
  },
1643
1753
  {
1644
1754
  "name": "trail",
1645
1755
  "type": "readonly BentoTrailStep[] | undefined",
1646
1756
  "optional": true,
1647
1757
  "summary": "A nested list's ancestors, root first (forwarded to BentoHero)."
1758
+ },
1759
+ {
1760
+ "name": "view",
1761
+ "type": "BentoListView | undefined",
1762
+ "optional": true,
1763
+ "summary": "The reader's choice, controlled: the product stores it per `listId`, as it stores a column layout, so it is one viewer's preference and not shared state."
1648
1764
  }
1649
1765
  ],
1650
1766
  "inheritedProps": 0,
@@ -1728,8 +1844,8 @@
1728
1844
  {
1729
1845
  "name": "BentoPanel",
1730
1846
  "specifier": "@viglet/viglet-design-system/bento",
1731
- "summary": "A frosted container with **no heading** — the shape the bento vocabulary was missing.",
1732
- "description": "A frosted container with **no heading** — the shape the bento vocabulary was missing.\n\n`BentoTile` is a clickable tile, `BentoSection` is a heading plus a grid, `BentoFormSection` is\na titled form group. None of them is \"a frosted box with arbitrary content in it\", so every\nconsumer that needed one hand-rolled `bento-glass rounded-2xl border` at the call site — and the\nmoment two of them picked different radii the product was inconsistent for a reason invisible in\nany diff.\n\nIt is a distinct component rather than a `title`-less `BentoSection` because the absence of a\nheading is the point. A stats strip, a toolbar, a listing and a 404 message all sit under a hero\nthat already names the page; a heading on any of them is noise, and `BentoSection` without a\ntitle would still render its `header` element and put an empty entry in the document outline.\n\nThe surface is `BentoSaveBar`'s, deliberately: that bar is the other frosted container with no\nheading in this layer, and two things doing the same job should not drift apart. `bento-glass`\nalready carries the border and the blur, so this adds only the radius and the shadow.",
1847
+ "summary": "A card with **no heading** — the shape the bento vocabulary was missing.",
1848
+ "description": "A card with **no heading** — the shape the bento vocabulary was missing.\n\n`BentoTile` is a clickable tile, `BentoSection` is a heading plus a grid, `BentoFormSection` is\na titled form group. None of them is \"a box with arbitrary content in it\", so every\nconsumer that needed one hand-rolled `bento-glass rounded-2xl border` at the call site — and the\nmoment two of them picked different radii the product was inconsistent for a reason invisible in\nany diff.\n\nIt is a distinct component rather than a `title`-less `BentoSection` because the absence of a\nheading is the point. A stats strip, a toolbar, a listing and a 404 message all sit under a hero\nthat already names the page; a heading on any of them is noise, and `BentoSection` without a\ntitle would still render its `header` element and put an empty entry in the document outline.\n\nIt takes `BentoSaveBar`'s radius and shadow, deliberately: that bar is the other container with\nno heading in this layer, and two things doing the same job should not drift apart. The\nsurfaces differ since VDS182: `bento-glass` is a solid card on its border, and the bar keeps\n`bento-frost` because content scrolls under it.",
1733
1849
  "deprecated": null,
1734
1850
  "example": null,
1735
1851
  "props": [
@@ -1743,7 +1859,7 @@
1743
1859
  "name": "className",
1744
1860
  "type": "string | undefined",
1745
1861
  "optional": true,
1746
- "summary": "Applied to the frosted container itself — margins, `overflow-hidden`, a width."
1862
+ "summary": "Applied to the card itself — margins, `overflow-hidden`, a width."
1747
1863
  },
1748
1864
  {
1749
1865
  "name": "contentClassName",
@@ -2082,8 +2198,8 @@
2082
2198
  {
2083
2199
  "name": "BentoStatusMarker",
2084
2200
  "specifier": "@viglet/viglet-design-system/bento",
2085
- "summary": "A small chip in a bento hero's eyebrow saying a form cannot be saved yet or has unsaved changes.",
2086
- "description": "A small chip in a bento hero's eyebrow saying a form cannot be saved yet or has\nunsaved changes.\n\nIt carries the two save-state cues the bento detail pages kept from the console's\nsticky header:\n\n - `titleMissing` → a red \"Title required\" blocker (Save is also disabled).\n - `dirty` → an amber \"Unsaved changes\" cue with a pulsing dot.\n\nRenders nothing when neither applies. Case/tracking are reset so it can sit\ninside the hero eyebrow (which is uppercase + wide-tracked) without\ninheriting those styles.",
2201
+ "summary": "A small mark in a bento hero's eyebrow, a row or a tile, saying what state a record is in, or that a form cannot be saved yet or has unsaved changes.",
2202
+ "description": "A small mark in a bento hero's eyebrow, a row or a tile, saying what state a\nrecord is in, or that a form cannot be saved yet or has unsaved changes.\n\nIt carries the two save-state cues the bento detail pages kept from the console's\nsticky header:\n\n - `titleMissing` → a red \"Title required\" blocker (Save is also disabled).\n - `dirty` → an amber \"Unsaved changes\" cue with a pulsing dot.\n\nand, since VDS182, the record's `state` as a dot and a word: published,\ndraft, scheduled, changed since publish, archived. That is where colour goes\non a list; a product area gets none.\n\nRenders nothing when none applies. Case/tracking are reset so it can sit\ninside the hero eyebrow (which is uppercase + wide-tracked) without\ninheriting those styles.",
2087
2203
  "deprecated": null,
2088
2204
  "example": null,
2089
2205
  "props": [
@@ -2099,6 +2215,12 @@
2099
2215
  "optional": true,
2100
2216
  "summary": "There are unsaved changes — renders an amber \"unsaved\" cue."
2101
2217
  },
2218
+ {
2219
+ "name": "state",
2220
+ "type": "BentoRecordState | undefined",
2221
+ "optional": true,
2222
+ "summary": "The record's state, drawn as a dot and a word."
2223
+ },
2102
2224
  {
2103
2225
  "name": "titleMissing",
2104
2226
  "type": "boolean | undefined",
@@ -2188,14 +2310,15 @@
2188
2310
  ],
2189
2311
  "inheritedProps": 0,
2190
2312
  "rules": [
2313
+ "BENTO-AUTHORING §4 Colour — a tone is a token",
2191
2314
  "BENTO-BOUNDARY Inventory"
2192
2315
  ]
2193
2316
  },
2194
2317
  {
2195
2318
  "name": "BentoTileGrid",
2196
2319
  "specifier": "@viglet/viglet-design-system/bento",
2197
- "summary": "The Bento mosaic **without** a hero — the frosted `bento-grid` of tiles, an optional dashed \"New\" tile, and an empty-state hint.",
2198
- "description": "The Bento mosaic **without** a hero — the frosted `bento-grid` of tiles, an\noptional dashed \"New\" tile, and an empty-state hint. Use it for list content\nthat renders inside a shell which already owns the header (e.g. a page with a\nshared BentoHero + pill tab-bar `Outlet`, like Administration, or a\nread-only landing that renders its own hero above the grid). Standalone CRUD\nlists should use BentoListPage, which wraps this shape with a hero and\nthe T575 customize/reorder mode.",
2320
+ "summary": "The Bento mosaic **without** a hero — the `bento-grid` of tiles, an optional dashed \"New\" tile, and an empty-state hint.",
2321
+ "description": "The Bento mosaic **without** a hero — the `bento-grid` of tiles, an\noptional dashed \"New\" tile, and an empty-state hint. Use it for list content\nthat renders inside a shell which already owns the header (e.g. a page with a\nshared BentoHero + pill tab-bar `Outlet`, like Administration, or a\nread-only landing that renders its own hero above the grid). Standalone CRUD\nlists should use BentoListPage, which wraps this shape with a hero and\nthe T575 customize/reorder mode.",
2199
2322
  "deprecated": null,
2200
2323
  "example": null,
2201
2324
  "props": [
@@ -2275,7 +2398,7 @@
2275
2398
  "name": "tone",
2276
2399
  "type": "BentoTone | undefined",
2277
2400
  "optional": true,
2278
- "summary": "Tone driving the dashed New-tile gradient."
2401
+ "summary": ""
2279
2402
  }
2280
2403
  ],
2281
2404
  "inheritedProps": 0,
@@ -3341,7 +3464,7 @@
3341
3464
  "name": "GlassCard",
3342
3465
  "specifier": "@viglet/viglet-design-system",
3343
3466
  "summary": "A frosted glass card for a login, onboarding or hero surface, with rounded corners and responsive padding already set.",
3344
- "description": "A frosted glass card for a login, onboarding or hero surface, with rounded\ncorners and responsive padding already set.\n\nPass any Tailwind override through `className`; the merge is done with\n`tailwind-merge`, so the last of two conflicting utilities wins (`p-4` over the\ndefault `p-6 sm:p-8`). Inside a bento shell a frosted box is `BentoPanel`, and a\nform section is `BentoFormSection`.\n\nThe shadow tint follows `color` / `colorDark`. With neither, the light shadow\nstill takes `--ff-color-rgb` from an ancestor FloatingFormulasBg, so a\ncard inside one matches the surrounding palette without being told to.",
3467
+ "description": "A frosted glass card for a login, onboarding or hero surface, with rounded\ncorners and responsive padding already set.\n\nPass any Tailwind override through `className`; the merge is done with\n`tailwind-merge`, so the last of two conflicting utilities wins (`p-4` over the\ndefault `p-6 sm:p-8`). Inside a bento shell a box is `BentoPanel`, and a\nform section is `BentoFormSection`.\n\nThe shadow tint follows `color` / `colorDark`. With neither, the light shadow\nstill takes `--ff-color-rgb` from an ancestor FloatingFormulasBg, so a\ncard inside one matches the surrounding palette without being told to.",
3345
3468
  "deprecated": null,
3346
3469
  "example": null,
3347
3470
  "props": [
@@ -47,5 +47,5 @@ export interface AppSwitcherProps {
47
47
  * viglet-ds-consumer-pair -- an example of a suite, not a claim about who
48
48
  * installs this package. The apps are the caller's to pass in.
49
49
  */
50
- export declare function AppSwitcher({ open, onToggle, apps, triggerTitle, closeLabel, showTrigger, headerHeight, }: Readonly<AppSwitcherProps>): import("react").JSX.Element;
50
+ export declare function AppSwitcher({ open, onToggle, apps, triggerTitle, closeLabel, showTrigger, headerHeight, }: Readonly<AppSwitcherProps>): import('react').JSX.Element;
51
51
  //# sourceMappingURL=app-switcher.d.ts.map
@@ -29,7 +29,7 @@ interface BackendStatusProviderProps {
29
29
  *
30
30
  * @since 2026.2.29
31
31
  */
32
- export declare function BackendStatusProvider({ healthEndpoint, pollInterval, showBanner, children, }: Readonly<BackendStatusProviderProps>): import("react").JSX.Element;
32
+ export declare function BackendStatusProvider({ healthEndpoint, pollInterval, showBanner, children, }: Readonly<BackendStatusProviderProps>): import('react').JSX.Element;
33
33
  /**
34
34
  * The "server unavailable, retrying" banner, with a retry button, that
35
35
  * `BackendStatusProvider` renders while the backend is unreachable.
@@ -37,6 +37,6 @@ export declare function BackendStatusProvider({ healthEndpoint, pollInterval, sh
37
37
  * Mount it yourself only to place it elsewhere, with `showBanner={false}` on the
38
38
  * provider, and always beneath that provider.
39
39
  */
40
- export declare function BackendStatusBanner(): import("react").JSX.Element | null;
40
+ export declare function BackendStatusBanner(): import('react').JSX.Element | null;
41
41
  export {};
42
42
  //# sourceMappingURL=backend-status.d.ts.map
@@ -15,6 +15,6 @@ interface LanguageSelectProps {
15
15
  * name, so a stored value still shows as chosen. It sets a value; the reader's
16
16
  * own interface language is `LanguageSwitcher`'s.
17
17
  */
18
- export declare function LanguageSelect({ value, onValueChange, locales, extraLocaleValues, placeholder, className, }: Readonly<LanguageSelectProps>): import("react").JSX.Element;
18
+ export declare function LanguageSelect({ value, onValueChange, locales, extraLocaleValues, placeholder, className, }: Readonly<LanguageSelectProps>): import('react').JSX.Element;
19
19
  export {};
20
20
  //# sourceMappingURL=language-select.d.ts.map
@@ -14,5 +14,5 @@ export interface LanguageSwitcherProps {
14
14
  * Dropdown to switch the active i18next language.
15
15
  * Persists via the standard i18next-browser-languagedetector localStorage cache.
16
16
  */
17
- export declare function LanguageSwitcher({ languages, }: Readonly<LanguageSwitcherProps>): import("react").JSX.Element;
17
+ export declare function LanguageSwitcher({ languages, }: Readonly<LanguageSwitcherProps>): import('react').JSX.Element;
18
18
  //# sourceMappingURL=language-switcher.d.ts.map
@@ -6,34 +6,34 @@ export interface LoginRootProps extends HTMLAttributes<HTMLDivElement> {
6
6
  /** Accent color in dark mode. Defaults to `color`. */
7
7
  colorDark?: string;
8
8
  }
9
- declare function LoginRoot({ color, colorDark, children, className, style, ...rest }: Readonly<LoginRootProps>): import("react").JSX.Element;
9
+ declare function LoginRoot({ color, colorDark, children, className, style, ...rest }: Readonly<LoginRootProps>): import('react').JSX.Element;
10
10
  /** Animated backdrop. Accepts every `FloatingFormulasBgProps` toggle. */
11
- declare function LoginBackground(props: Readonly<Omit<FloatingFormulasBgProps, "color" | "colorDark">>): import("react").JSX.Element;
11
+ declare function LoginBackground(props: Readonly<Omit<FloatingFormulasBgProps, "color" | "colorDark">>): import('react').JSX.Element;
12
12
  /** Absolute top-right toolbar slot (settings popover, theme toggle, etc.). */
13
- declare function LoginSettings({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import("react").JSX.Element;
13
+ declare function LoginSettings({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import('react').JSX.Element;
14
14
  /** Centered stack container for the visible card + surrounding text. */
15
- declare function LoginContent({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import("react").JSX.Element;
15
+ declare function LoginContent({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import('react').JSX.Element;
16
16
  interface LoginLogoProps extends HTMLAttributes<HTMLDivElement> {
17
17
  /** Disable the pulse ring animation. */
18
18
  pulsePaused?: boolean;
19
19
  }
20
20
  /** Logo wrapper with pulse ring + glass container. */
21
- declare function LoginLogo({ children, pulsePaused, className, ...rest }: Readonly<LoginLogoProps>): import("react").JSX.Element;
21
+ declare function LoginLogo({ children, pulsePaused, className, ...rest }: Readonly<LoginLogoProps>): import('react').JSX.Element;
22
22
  /** Gradient product title. */
23
- declare function LoginTitle({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLHeadingElement>>): import("react").JSX.Element;
23
+ declare function LoginTitle({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLHeadingElement>>): import('react').JSX.Element;
24
24
  /** Subtle tagline below the title. */
25
- declare function LoginTagline({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLParagraphElement>>): import("react").JSX.Element;
25
+ declare function LoginTagline({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLParagraphElement>>): import('react').JSX.Element;
26
26
  /** Row of feature pills. */
27
- declare function LoginFeatures({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import("react").JSX.Element;
27
+ declare function LoginFeatures({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import('react').JSX.Element;
28
28
  export interface LoginFeaturePillProps extends HTMLAttributes<HTMLDivElement> {
29
29
  icon?: ReactNode;
30
30
  }
31
31
  /** Single pill (icon + label) used inside {@link Login.Features}. */
32
- declare function LoginFeaturePill({ icon, children, className, ...rest }: Readonly<LoginFeaturePillProps>): import("react").JSX.Element;
32
+ declare function LoginFeaturePill({ icon, children, className, ...rest }: Readonly<LoginFeaturePillProps>): import('react').JSX.Element;
33
33
  /** Glass-morphism card that hosts the actual login form. */
34
- declare function LoginCard({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import("react").JSX.Element;
34
+ declare function LoginCard({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import('react').JSX.Element;
35
35
  /** Subtle footer line below the form. */
36
- declare function LoginFooter({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLParagraphElement>>): import("react").JSX.Element;
36
+ declare function LoginFooter({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLParagraphElement>>): import('react').JSX.Element;
37
37
  /**
38
38
  * The login screen, composed: an animated backdrop, the product's logo in a pulse
39
39
  * ring, a title, tagline and feature pills, and a glass card holding the form.
@@ -2,11 +2,11 @@
2
2
  * A header button opening a menu of the light, dark and system themes. It sets
3
3
  * the theme through `ThemeProvider`, which has to be mounted above it.
4
4
  */
5
- export declare function ModeToggle(): import("react").JSX.Element;
5
+ export declare function ModeToggle(): import('react').JSX.Element;
6
6
  /**
7
7
  * The theme control for a console sidebar on a small screen: one row that cycles
8
8
  * through light, dark and system. Hidden from `md` up, where `ModeToggle` sits in
9
9
  * the header.
10
10
  */
11
- export declare function ModeToggleSidebar(): import("react").JSX.Element;
11
+ export declare function ModeToggleSidebar(): import('react').JSX.Element;
12
12
  //# sourceMappingURL=mode-toggle.d.ts.map
@@ -13,6 +13,6 @@ interface LoadProviderProps {
13
13
  * A page's loading gate: a skeleton until `checkIsNotUndefined` has a value, an
14
14
  * error slate with a retry link when `error` is set, and its children after that.
15
15
  */
16
- export declare const LoadProvider: ({ checkIsNotUndefined, error, tryAgainUrl, children }: LoadProviderProps) => import("react").JSX.Element;
16
+ export declare const LoadProvider: ({ checkIsNotUndefined, error, tryAgainUrl, children }: LoadProviderProps) => import('react').JSX.Element;
17
17
  export {};
18
18
  //# sourceMappingURL=loading-provider.d.ts.map
@@ -6,11 +6,11 @@ export interface StartupFirstRootProps extends HTMLAttributes<HTMLDivElement> {
6
6
  /** Accent color in dark mode. Defaults to `color`. */
7
7
  colorDark?: string;
8
8
  }
9
- declare function StartupFirstRoot({ color, colorDark, children, className, style, ...rest }: Readonly<StartupFirstRootProps>): import("react").JSX.Element;
9
+ declare function StartupFirstRoot({ color, colorDark, children, className, style, ...rest }: Readonly<StartupFirstRootProps>): import('react').JSX.Element;
10
10
  /** Animated backdrop (delegates to FloatingFormulasBg). */
11
- declare function StartupFirstBackground(props: Readonly<Omit<FloatingFormulasBgProps, "color" | "colorDark">>): import("react").JSX.Element;
11
+ declare function StartupFirstBackground(props: Readonly<Omit<FloatingFormulasBgProps, "color" | "colorDark">>): import('react').JSX.Element;
12
12
  /** Centered stack that hosts every visible element. */
13
- declare function StartupFirstContent({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import("react").JSX.Element;
13
+ declare function StartupFirstContent({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import('react').JSX.Element;
14
14
  export interface StartupFirstStepsProps extends HTMLAttributes<HTMLDivElement> {
15
15
  /** 1-based index of the currently active step. */
16
16
  current: number;
@@ -18,29 +18,29 @@ export interface StartupFirstStepsProps extends HTMLAttributes<HTMLDivElement> {
18
18
  total: number;
19
19
  }
20
20
  /** Step pagination dots shown at the top of the wizard. */
21
- declare function StartupFirstSteps({ current, total, className, ...rest }: Readonly<StartupFirstStepsProps>): import("react").JSX.Element;
21
+ declare function StartupFirstSteps({ current, total, className, ...rest }: Readonly<StartupFirstStepsProps>): import('react').JSX.Element;
22
22
  interface StartupFirstLogoProps extends HTMLAttributes<HTMLDivElement> {
23
23
  pulsePaused?: boolean;
24
24
  /** Size in px of the outer logo chip. Defaults to 80. */
25
25
  size?: number;
26
26
  }
27
27
  /** Product logo wrapped in a pulse ring. */
28
- declare function StartupFirstLogo({ children, pulsePaused, size, className, style, ...rest }: Readonly<StartupFirstLogoProps>): import("react").JSX.Element;
28
+ declare function StartupFirstLogo({ children, pulsePaused, size, className, style, ...rest }: Readonly<StartupFirstLogoProps>): import('react').JSX.Element;
29
29
  /** Product title in the wizard header. */
30
- declare function StartupFirstTitle({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLHeadingElement>>): import("react").JSX.Element;
30
+ declare function StartupFirstTitle({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLHeadingElement>>): import('react').JSX.Element;
31
31
  /** Longer-form copy under the title (explanation, purpose of the step). */
32
- declare function StartupFirstDescription({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLParagraphElement>>): import("react").JSX.Element;
32
+ declare function StartupFirstDescription({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLParagraphElement>>): import('react').JSX.Element;
33
33
  /** Glass-morphism card that hosts the form / step content. */
34
- declare function StartupFirstCard({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import("react").JSX.Element;
34
+ declare function StartupFirstCard({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import('react').JSX.Element;
35
35
  /** Action row at the bottom (Back / Continue / etc). */
36
- declare function StartupFirstActions({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import("react").JSX.Element;
36
+ declare function StartupFirstActions({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLDivElement>>): import('react').JSX.Element;
37
37
  /** Subtle footer text (product line, version, support link). */
38
- declare function StartupFirstFooter({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLParagraphElement>>): import("react").JSX.Element;
38
+ declare function StartupFirstFooter({ children, className, ...rest }: Readonly<HTMLAttributes<HTMLParagraphElement>>): import('react').JSX.Element;
39
39
  export interface StartupFirstHintProps extends HTMLAttributes<HTMLDivElement> {
40
40
  icon?: ReactNode;
41
41
  }
42
42
  /** Small tip callout used next to form fields. */
43
- declare function StartupFirstHint({ icon, children, className, ...rest }: Readonly<StartupFirstHintProps>): import("react").JSX.Element;
43
+ declare function StartupFirstHint({ icon, children, className, ...rest }: Readonly<StartupFirstHintProps>): import('react').JSX.Element;
44
44
  /**
45
45
  * The first-access screen an administrator sees before any user exists: the
46
46
  * login screen's backdrop, logo and glass card, with a step count and actions.
@@ -30,7 +30,7 @@ type ThemeProviderState = {
30
30
  * this package already published, and `useTheme` keeps its shape, because
31
31
  * three consoles import it.
32
32
  */
33
- export declare function ThemeProvider({ children, defaultTheme, storageKey, ...props }: Readonly<ThemeProviderProps>): import("react").JSX.Element;
33
+ export declare function ThemeProvider({ children, defaultTheme, storageKey, ...props }: Readonly<ThemeProviderProps>): import('react').JSX.Element;
34
34
  /**
35
35
  * The shape three consoles import: `{ theme, setTheme }`, where `theme` is the
36
36
  * setting rather than the resolved colour — "system" stays "system".
@@ -1 +1 @@
1
- {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/components/ui/button.tsx"],"names":[],"mappings":"AACA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,QAAA,MAAM,cAAc;;;8EA8BnB,CAAA;AAED;;;;;;;GAOG;AACH,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAe,EACf,OAAe,EACf,OAAO,EACP,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,GAC/B,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,qBAkBF;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA"}
1
+ {"version":3,"file":"button.d.ts","sourceRoot":"","sources":["../../../src/components/ui/button.tsx"],"names":[],"mappings":"AACA,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAK9B,QAAA,MAAM,cAAc;;;8EAgCnB,CAAA;AAED;;;;;;;GAOG;AACH,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAe,EACf,OAAe,EACf,OAAO,EACP,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,GAC/B,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB,qBAkBF;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA"}
@@ -47,5 +47,5 @@ export interface FloatingFormulasBgProps {
47
47
  * flicker, and a `seed` fixes its arrangement. `Login.Background` and
48
48
  * `StartupFirst.Background` render it with the screen's colours already applied.
49
49
  */
50
- export declare function FloatingFormulasBg({ itemCount, extraTokens, seed, color, colorDark, withFormulas, withBonds, withOrbs, withLightning, withExplosion, withGrid, motionPaused, className, }: Readonly<FloatingFormulasBgProps>): import("react").JSX.Element;
50
+ export declare function FloatingFormulasBg({ itemCount, extraTokens, seed, color, colorDark, withFormulas, withBonds, withOrbs, withLightning, withExplosion, withGrid, motionPaused, className, }: Readonly<FloatingFormulasBgProps>): import('react').JSX.Element;
51
51
  //# sourceMappingURL=floating-formulas-bg.d.ts.map
@@ -10,7 +10,7 @@ interface FormActionsProps {
10
10
  * A bento form saves from its hero and the save bar that follows it, through
11
11
  * `BentoFormHero` or `BentoEntityShell`, and has no footer row.
12
12
  */
13
- declare function FormActions({ children, className }: Readonly<FormActionsProps>): import("react").JSX.Element;
13
+ declare function FormActions({ children, className }: Readonly<FormActionsProps>): import('react').JSX.Element;
14
14
  declare namespace FormActions {
15
15
  var Cancel: ({ onClick, children, className }: Readonly<CancelProps>) => import("react").JSX.Element;
16
16
  var Submit: ({ loading, disabled, children, className }: Readonly<SubmitProps>) => import("react").JSX.Element;