@viglet/viglet-design-system 2026.2.57 → 2026.3.3

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 (274) hide show
  1. package/README.md +277 -7
  2. package/dist/assets.cjs +1 -0
  3. package/dist/assets.es.js +2 -0
  4. package/dist/badge-locale-BxI9TwkE.js +579 -0
  5. package/dist/badge-locale-sIsBdP_e.cjs +7 -0
  6. package/dist/bento/bento-actions-menu.d.ts +42 -0
  7. package/dist/bento/bento-actions-menu.d.ts.map +1 -0
  8. package/dist/bento/bento-back-to-top.d.ts +11 -0
  9. package/dist/bento/bento-back-to-top.d.ts.map +1 -0
  10. package/dist/bento/bento-command-palette.d.ts +28 -0
  11. package/dist/bento/bento-command-palette.d.ts.map +1 -0
  12. package/dist/bento/bento-count-tile.d.ts +18 -0
  13. package/dist/bento/bento-count-tile.d.ts.map +1 -0
  14. package/dist/bento/bento-empty-state.d.ts +35 -0
  15. package/dist/bento/bento-empty-state.d.ts.map +1 -0
  16. package/dist/bento/bento-entity-shell.d.ts +123 -0
  17. package/dist/bento/bento-entity-shell.d.ts.map +1 -0
  18. package/dist/bento/bento-entity-tile.d.ts +40 -0
  19. package/dist/bento/bento-entity-tile.d.ts.map +1 -0
  20. package/dist/bento/bento-form-hero.d.ts +91 -0
  21. package/dist/bento/bento-form-hero.d.ts.map +1 -0
  22. package/dist/bento/bento-form-section.d.ts +31 -0
  23. package/dist/bento/bento-form-section.d.ts.map +1 -0
  24. package/dist/bento/bento-hero-icon-picker.d.ts +35 -0
  25. package/dist/bento/bento-hero-icon-picker.d.ts.map +1 -0
  26. package/dist/bento/bento-hero.d.ts +62 -0
  27. package/dist/bento/bento-hero.d.ts.map +1 -0
  28. package/dist/bento/bento-inline-edit.d.ts +52 -0
  29. package/dist/bento/bento-inline-edit.d.ts.map +1 -0
  30. package/dist/bento/bento-layout.d.ts +52 -0
  31. package/dist/bento/bento-layout.d.ts.map +1 -0
  32. package/dist/bento/bento-list-page.d.ts +124 -0
  33. package/dist/bento/bento-list-page.d.ts.map +1 -0
  34. package/dist/bento/bento-nav-rail.d.ts +32 -0
  35. package/dist/bento/bento-nav-rail.d.ts.map +1 -0
  36. package/dist/bento/bento-nav.d.ts +69 -0
  37. package/dist/bento/bento-nav.d.ts.map +1 -0
  38. package/dist/bento/bento-save-bar.d.ts +36 -0
  39. package/dist/bento/bento-save-bar.d.ts.map +1 -0
  40. package/dist/bento/bento-scroll-fade.d.ts +20 -0
  41. package/dist/bento/bento-scroll-fade.d.ts.map +1 -0
  42. package/dist/bento/bento-scroll-save-bar.d.ts +22 -0
  43. package/dist/bento/bento-scroll-save-bar.d.ts.map +1 -0
  44. package/dist/bento/bento-section-chrome.d.ts +60 -0
  45. package/dist/bento/bento-section-chrome.d.ts.map +1 -0
  46. package/dist/bento/bento-section.d.ts +27 -0
  47. package/dist/bento/bento-section.d.ts.map +1 -0
  48. package/dist/bento/bento-shortcuts-dialog.d.ts +15 -0
  49. package/dist/bento/bento-shortcuts-dialog.d.ts.map +1 -0
  50. package/dist/bento/bento-status-marker.d.ts +26 -0
  51. package/dist/bento/bento-status-marker.d.ts.map +1 -0
  52. package/dist/bento/bento-tile.d.ts +42 -0
  53. package/dist/bento/bento-tile.d.ts.map +1 -0
  54. package/dist/bento/bento-tones.d.ts +33 -0
  55. package/dist/bento/bento-tones.d.ts.map +1 -0
  56. package/dist/bento/bento-user-menu.d.ts +31 -0
  57. package/dist/bento/bento-user-menu.d.ts.map +1 -0
  58. package/dist/bento/index.d.ts +59 -0
  59. package/dist/bento/index.d.ts.map +1 -0
  60. package/dist/bento.cjs +1 -0
  61. package/dist/bento.css +442 -0
  62. package/dist/bento.es.js +1501 -0
  63. package/dist/breadcrumb.context-CTnZ4rD0.cjs +1 -0
  64. package/dist/breadcrumb.context-h2A2IEJ_.js +928 -0
  65. package/dist/components/app-footer.d.ts +1 -1
  66. package/dist/components/app-footer.d.ts.map +1 -1
  67. package/dist/components/app-switcher.d.ts +1 -1
  68. package/dist/components/app-switcher.d.ts.map +1 -1
  69. package/dist/components/backend-status.d.ts +2 -2
  70. package/dist/components/backend-status.d.ts.map +1 -1
  71. package/dist/components/badge-locale.d.ts.map +1 -1
  72. package/dist/components/error-boundary.d.ts.map +1 -1
  73. package/dist/components/language-select.d.ts +1 -1
  74. package/dist/components/language-select.d.ts.map +1 -1
  75. package/dist/components/language-switcher.d.ts +1 -1
  76. package/dist/components/language-switcher.d.ts.map +1 -1
  77. package/dist/components/login/login.d.ts +11 -11
  78. package/dist/components/login/login.d.ts.map +1 -1
  79. package/dist/components/mode-toggle.d.ts +2 -2
  80. package/dist/components/mode-toggle.d.ts.map +1 -1
  81. package/dist/components/nav-secondary.d.ts +1 -1
  82. package/dist/components/nav-secondary.d.ts.map +1 -1
  83. package/dist/components/router/blank-slate.d.ts +10 -0
  84. package/dist/components/router/blank-slate.d.ts.map +1 -1
  85. package/dist/components/router/gradient-button-link.d.ts +1 -1
  86. package/dist/components/router/gradient-button-link.d.ts.map +1 -1
  87. package/dist/components/router/grid.list.d.ts +13 -0
  88. package/dist/components/router/grid.list.d.ts.map +1 -1
  89. package/dist/components/router/internal.sidebar.d.ts +27 -2
  90. package/dist/components/router/internal.sidebar.d.ts.map +1 -1
  91. package/dist/components/router/loading-provider.d.ts +7 -2
  92. package/dist/components/router/loading-provider.d.ts.map +1 -1
  93. package/dist/components/router/nav-main.d.ts +11 -1
  94. package/dist/components/router/nav-main.d.ts.map +1 -1
  95. package/dist/components/router/nav-user.d.ts +15 -1
  96. package/dist/components/router/nav-user.d.ts.map +1 -1
  97. package/dist/components/router/page-content.d.ts +10 -0
  98. package/dist/components/router/page-content.d.ts.map +1 -1
  99. package/dist/components/router/page-header.d.ts +13 -0
  100. package/dist/components/router/page-header.d.ts.map +1 -1
  101. package/dist/components/router/page.d.ts +13 -0
  102. package/dist/components/router/page.d.ts.map +1 -1
  103. package/dist/components/router/sticky.page.header.d.ts +14 -0
  104. package/dist/components/router/sticky.page.header.d.ts.map +1 -1
  105. package/dist/components/router/sub.page.d.ts +15 -11
  106. package/dist/components/router/sub.page.d.ts.map +1 -1
  107. package/dist/components/router/sub.page.header.d.ts +13 -0
  108. package/dist/components/router/sub.page.header.d.ts.map +1 -1
  109. package/dist/components/startup-first/startup-first.d.ts +11 -11
  110. package/dist/components/startup-first/startup-first.d.ts.map +1 -1
  111. package/dist/components/theme-provider.d.ts +1 -1
  112. package/dist/components/theme-provider.d.ts.map +1 -1
  113. package/dist/components/ui/avatar.d.ts +3 -3
  114. package/dist/components/ui/avatar.d.ts.map +1 -1
  115. package/dist/components/ui/badge.d.ts +1 -1
  116. package/dist/components/ui/badge.d.ts.map +1 -1
  117. package/dist/components/ui/breadcrumb.d.ts +7 -7
  118. package/dist/components/ui/breadcrumb.d.ts.map +1 -1
  119. package/dist/components/ui/button.d.ts +1 -1
  120. package/dist/components/ui/button.d.ts.map +1 -1
  121. package/dist/components/ui/card.d.ts +7 -7
  122. package/dist/components/ui/card.d.ts.map +1 -1
  123. package/dist/components/ui/checkbox.d.ts +1 -1
  124. package/dist/components/ui/checkbox.d.ts.map +1 -1
  125. package/dist/components/ui/dialog.d.ts +10 -10
  126. package/dist/components/ui/dialog.d.ts.map +1 -1
  127. package/dist/components/ui/drawer.d.ts +10 -10
  128. package/dist/components/ui/drawer.d.ts.map +1 -1
  129. package/dist/components/ui/dropdown-menu.d.ts +15 -15
  130. package/dist/components/ui/dropdown-menu.d.ts.map +1 -1
  131. package/dist/components/ui/floating-formulas-bg.d.ts +8 -1
  132. package/dist/components/ui/floating-formulas-bg.d.ts.map +1 -1
  133. package/dist/components/ui/form-actions.d.ts +4 -4
  134. package/dist/components/ui/form-actions.d.ts.map +1 -1
  135. package/dist/components/ui/form.d.ts +8 -8
  136. package/dist/components/ui/form.d.ts.map +1 -1
  137. package/dist/components/ui/glass-card.d.ts +1 -1
  138. package/dist/components/ui/glass-card.d.ts.map +1 -1
  139. package/dist/components/ui/gradient-button.d.ts +1 -1
  140. package/dist/components/ui/gradient-button.d.ts.map +1 -1
  141. package/dist/components/ui/gradient-switch.d.ts +1 -1
  142. package/dist/components/ui/gradient-switch.d.ts.map +1 -1
  143. package/dist/components/ui/icon-picker-dialog.d.ts +35 -0
  144. package/dist/components/ui/icon-picker-dialog.d.ts.map +1 -0
  145. package/dist/components/ui/index.d.ts +1 -0
  146. package/dist/components/ui/index.d.ts.map +1 -1
  147. package/dist/components/ui/input.d.ts +1 -1
  148. package/dist/components/ui/input.d.ts.map +1 -1
  149. package/dist/components/ui/label.d.ts +1 -1
  150. package/dist/components/ui/label.d.ts.map +1 -1
  151. package/dist/components/ui/navigation-menu.d.ts +8 -8
  152. package/dist/components/ui/navigation-menu.d.ts.map +1 -1
  153. package/dist/components/ui/pagination.d.ts +5 -5
  154. package/dist/components/ui/pagination.d.ts.map +1 -1
  155. package/dist/components/ui/popover.d.ts +7 -7
  156. package/dist/components/ui/popover.d.ts.map +1 -1
  157. package/dist/components/ui/progress.d.ts +1 -1
  158. package/dist/components/ui/progress.d.ts.map +1 -1
  159. package/dist/components/ui/pulse-ring.d.ts +1 -1
  160. package/dist/components/ui/pulse-ring.d.ts.map +1 -1
  161. package/dist/components/ui/resizable.d.ts +3 -3
  162. package/dist/components/ui/resizable.d.ts.map +1 -1
  163. package/dist/components/ui/section-card.d.ts +7 -7
  164. package/dist/components/ui/section-card.d.ts.map +1 -1
  165. package/dist/components/ui/select.d.ts +10 -10
  166. package/dist/components/ui/select.d.ts.map +1 -1
  167. package/dist/components/ui/separator.d.ts +1 -1
  168. package/dist/components/ui/separator.d.ts.map +1 -1
  169. package/dist/components/ui/sheet.d.ts +8 -8
  170. package/dist/components/ui/sheet.d.ts.map +1 -1
  171. package/dist/components/ui/sidebar.d.ts +23 -23
  172. package/dist/components/ui/sidebar.d.ts.map +1 -1
  173. package/dist/components/ui/skeleton.d.ts +1 -1
  174. package/dist/components/ui/skeleton.d.ts.map +1 -1
  175. package/dist/components/ui/slider.d.ts +1 -1
  176. package/dist/components/ui/slider.d.ts.map +1 -1
  177. package/dist/components/ui/sonner.d.ts +1 -1
  178. package/dist/components/ui/sonner.d.ts.map +1 -1
  179. package/dist/components/ui/stepper.d.ts +3 -3
  180. package/dist/components/ui/stepper.d.ts.map +1 -1
  181. package/dist/components/ui/sticky-save-bar.d.ts +2 -2
  182. package/dist/components/ui/sticky-save-bar.d.ts.map +1 -1
  183. package/dist/components/ui/switch.d.ts +1 -1
  184. package/dist/components/ui/switch.d.ts.map +1 -1
  185. package/dist/components/ui/table.d.ts +8 -8
  186. package/dist/components/ui/table.d.ts.map +1 -1
  187. package/dist/components/ui/tabs.d.ts +4 -4
  188. package/dist/components/ui/tabs.d.ts.map +1 -1
  189. package/dist/components/ui/textarea.d.ts +1 -1
  190. package/dist/components/ui/textarea.d.ts.map +1 -1
  191. package/dist/components/ui/toggle-group.d.ts +2 -2
  192. package/dist/components/ui/toggle-group.d.ts.map +1 -1
  193. package/dist/components/ui/toggle.d.ts +1 -1
  194. package/dist/components/ui/toggle.d.ts.map +1 -1
  195. package/dist/components/ui/tooltip.d.ts +4 -4
  196. package/dist/components/ui/tooltip.d.ts.map +1 -1
  197. package/dist/components/ui/user-avatar.d.ts +1 -1
  198. package/dist/components/ui/user-avatar.d.ts.map +1 -1
  199. package/dist/components/ui/user-menu.d.ts +1 -1
  200. package/dist/components/ui/user-menu.d.ts.map +1 -1
  201. package/dist/components/viglet-app-switcher.d.ts +1 -1
  202. package/dist/components/viglet-app-switcher.d.ts.map +1 -1
  203. package/dist/contexts/breadcrumb.context.d.ts +1 -1
  204. package/dist/contexts/breadcrumb.context.d.ts.map +1 -1
  205. package/dist/contexts/user.context.d.ts +25 -1
  206. package/dist/contexts/user.context.d.ts.map +1 -1
  207. package/dist/exports.json +404 -0
  208. package/dist/floating-formulas-bg.cjs +1 -0
  209. package/dist/floating-formulas-bg.css +21 -0
  210. package/dist/floating-formulas-bg.es.js +83 -56
  211. package/dist/fonts/inter-cyrillic-ext-wght-normal.woff2 +0 -0
  212. package/dist/fonts/inter-cyrillic-wght-normal.woff2 +0 -0
  213. package/dist/fonts/inter-greek-ext-wght-normal.woff2 +0 -0
  214. package/dist/fonts/inter-greek-wght-normal.woff2 +0 -0
  215. package/dist/fonts/inter-latin-ext-wght-normal.woff2 +0 -0
  216. package/dist/fonts/inter-latin-wght-normal.woff2 +0 -0
  217. package/dist/fonts/inter-vietnamese-wght-normal.woff2 +0 -0
  218. package/dist/fonts/plus-jakarta-sans-cyrillic-ext-wght-normal.woff2 +0 -0
  219. package/dist/fonts/plus-jakarta-sans-latin-ext-wght-normal.woff2 +0 -0
  220. package/dist/fonts/plus-jakarta-sans-latin-wght-normal.woff2 +0 -0
  221. package/dist/fonts/plus-jakarta-sans-vietnamese-wght-normal.woff2 +0 -0
  222. package/dist/fonts.css +126 -0
  223. package/dist/hooks/use-grid-adapter.d.ts.map +1 -1
  224. package/dist/hooks/use-mobile.d.ts +10 -0
  225. package/dist/hooks/use-mobile.d.ts.map +1 -1
  226. package/dist/hooks/use-sub-page-breadcrumb.d.ts.map +1 -1
  227. package/dist/i18n/index.d.ts +136 -0
  228. package/dist/i18n/index.d.ts.map +1 -1
  229. package/dist/i18n/locales/en/bento.json.d.ts +51 -0
  230. package/dist/i18n/locales/en/common.json.d.ts +7 -1
  231. package/dist/i18n/locales/en/forms.json.d.ts +15 -1
  232. package/dist/i18n/locales/en/nav.json.d.ts +3 -1
  233. package/dist/i18n/locales/pt/bento.json.d.ts +51 -0
  234. package/dist/i18n/locales/pt/common.json.d.ts +7 -1
  235. package/dist/i18n/locales/pt/forms.json.d.ts +15 -1
  236. package/dist/i18n/locales/pt/nav.json.d.ts +3 -1
  237. package/dist/i18n-DoNdMLEd.cjs +1 -0
  238. package/dist/{i18n-C94rDRaM.js → i18n-DuNITbWa.js} +155 -27
  239. package/dist/{i18n.cjs.js → i18n.cjs} +1 -1
  240. package/dist/i18n.es.js +1 -1
  241. package/dist/index.cjs +1 -0
  242. package/dist/index.d.ts +0 -1
  243. package/dist/index.d.ts.map +1 -1
  244. package/dist/index.es.js +512 -770
  245. package/dist/lib/axios.d.ts.map +1 -1
  246. package/dist/lib/export-xlsx.d.ts +7 -1
  247. package/dist/lib/export-xlsx.d.ts.map +1 -1
  248. package/dist/lib/react-markers.d.ts +17 -0
  249. package/dist/lib/react-markers.d.ts.map +1 -0
  250. package/dist/lib/utils.d.ts +22 -0
  251. package/dist/lib/utils.d.ts.map +1 -1
  252. package/dist/loading-provider-1mgM91iY.cjs +1 -0
  253. package/dist/loading-provider-CMnOuvdR.js +224 -0
  254. package/dist/preset.css +103 -3
  255. package/dist/products-DL_YYXkV.cjs +1 -0
  256. package/dist/products-Du9KB6Xl.js +9 -0
  257. package/dist/{chunk-CMqjfN_6.cjs → rolldown-runtime-BocRIvOZ.cjs} +1 -1
  258. package/dist/router.cjs +1 -0
  259. package/dist/router.es.js +361 -558
  260. package/dist/user.context-kPAqKN4o.js +512 -0
  261. package/dist/user.context-r50nSWER.cjs +1 -0
  262. package/dist/viglet-design-system.css +1 -1
  263. package/dist/vite/boot-loader.d.ts +14 -4
  264. package/dist/vite/boot-loader.d.ts.map +1 -1
  265. package/dist/{vite.cjs.js → vite.cjs} +8 -8
  266. package/dist/vite.es.js +29 -16
  267. package/package.json +67 -23
  268. package/scripts/check-duplicates.mjs +198 -0
  269. package/dist/breadcrumb.context-BF0x4--Z.cjs +0 -7
  270. package/dist/breadcrumb.context-CCiYXxir.js +0 -1501
  271. package/dist/floating-formulas-bg.cjs.js +0 -1
  272. package/dist/i18n-CmYeG6uh.cjs +0 -1
  273. package/dist/index.cjs.js +0 -1
  274. package/dist/router.cjs.js +0 -1
@@ -4,7 +4,7 @@ import * as React from "react";
4
4
  import * as ToggleGroupPrimitive from "@radix-ui/react-toggle-group";
5
5
  declare function ToggleGroup({ className, variant, size, spacing, children, ...props }: React.ComponentProps<typeof ToggleGroupPrimitive.Root> & VariantProps<typeof toggleVariants> & {
6
6
  spacing?: number;
7
- }): import("react/jsx-runtime").JSX.Element;
8
- declare function ToggleGroupItem({ className, children, variant, size, ...props }: React.ComponentProps<typeof ToggleGroupPrimitive.Item> & VariantProps<typeof toggleVariants>): import("react/jsx-runtime").JSX.Element;
7
+ }): React.JSX.Element;
8
+ declare function ToggleGroupItem({ className, children, variant, size, ...props }: React.ComponentProps<typeof ToggleGroupPrimitive.Item> & VariantProps<typeof toggleVariants>): React.JSX.Element;
9
9
  export { ToggleGroup, ToggleGroupItem };
10
10
  //# sourceMappingURL=toggle-group.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toggle-group.d.ts","sourceRoot":"","sources":["../../../src/components/ui/toggle-group.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,oBAAoB,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAG5D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAYvD,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAW,EACX,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,IAAI,CAAC,GACvD,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,2CAmBF;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,IAAI,CAAC,GACvD,YAAY,CAAC,OAAO,cAAc,CAAC,2CAuBpC;AAED,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,CAAA"}
1
+ {"version":3,"file":"toggle-group.d.ts","sourceRoot":"","sources":["../../../src/components/ui/toggle-group.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,oBAAoB,MAAM,8BAA8B,CAAA;AACpE,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAG5D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAYvD,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,OAAO,EACP,IAAI,EACJ,OAAW,EACX,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,IAAI,CAAC,GACvD,YAAY,CAAC,OAAO,cAAc,CAAC,GAAG;IACpC,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB,qBAmBF;AAED,iBAAS,eAAe,CAAC,EACvB,SAAS,EACT,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,oBAAoB,CAAC,IAAI,CAAC,GACvD,YAAY,CAAC,OAAO,cAAc,CAAC,qBAuBpC;AAED,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,CAAA"}
@@ -5,6 +5,6 @@ declare const toggleVariants: (props?: ({
5
5
  variant?: "default" | "outline" | null | undefined;
6
6
  size?: "default" | "sm" | "lg" | null | undefined;
7
7
  } & import('class-variance-authority/types').ClassProp) | undefined) => string;
8
- declare function Toggle({ className, variant, size, ...props }: React.ComponentProps<typeof TogglePrimitive.Root> & VariantProps<typeof toggleVariants>): import("react/jsx-runtime").JSX.Element;
8
+ declare function Toggle({ className, variant, size, ...props }: React.ComponentProps<typeof TogglePrimitive.Root> & VariantProps<typeof toggleVariants>): React.JSX.Element;
9
9
  export { Toggle, toggleVariants };
10
10
  //# sourceMappingURL=toggle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../src/components/ui/toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAIjE,QAAA,MAAM,cAAc;;;8EAoBnB,CAAA;AAED,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,GAClD,YAAY,CAAC,OAAO,cAAc,CAAC,2CAQpC;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA"}
1
+ {"version":3,"file":"toggle.d.ts","sourceRoot":"","sources":["../../../src/components/ui/toggle.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAA;AACzD,OAAO,EAAO,KAAK,YAAY,EAAE,MAAM,0BAA0B,CAAA;AAIjE,QAAA,MAAM,cAAc;;;8EAoBnB,CAAA;AAED,iBAAS,MAAM,CAAC,EACd,SAAS,EACT,OAAO,EACP,IAAI,EACJ,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC,GAClD,YAAY,CAAC,OAAO,cAAc,CAAC,qBAQpC;AAED,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA"}
@@ -1,8 +1,8 @@
1
1
  import * as React from "react";
2
2
  import * as TooltipPrimitive from "@radix-ui/react-tooltip";
3
- declare function TooltipProvider({ delayDuration, ...props }: React.ComponentProps<typeof TooltipPrimitive.Provider>): import("react/jsx-runtime").JSX.Element;
4
- declare function Tooltip({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Root>): import("react/jsx-runtime").JSX.Element;
5
- declare function TooltipTrigger({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Trigger>): import("react/jsx-runtime").JSX.Element;
6
- declare function TooltipContent({ className, sideOffset, children, ...props }: React.ComponentProps<typeof TooltipPrimitive.Content>): import("react/jsx-runtime").JSX.Element;
3
+ declare function TooltipProvider({ delayDuration, ...props }: React.ComponentProps<typeof TooltipPrimitive.Provider>): React.JSX.Element;
4
+ declare function Tooltip({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Root>): React.JSX.Element;
5
+ declare function TooltipTrigger({ ...props }: React.ComponentProps<typeof TooltipPrimitive.Trigger>): React.JSX.Element;
6
+ declare function TooltipContent({ className, sideOffset, children, ...props }: React.ComponentProps<typeof TooltipPrimitive.Content>): React.JSX.Element;
7
7
  export { Tooltip, TooltipTrigger, TooltipContent, TooltipProvider };
8
8
  //# sourceMappingURL=tooltip.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAA;AAI3D,iBAAS,eAAe,CAAC,EACvB,aAAiB,EACjB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,2CAQxD;AAED,iBAAS,OAAO,CAAC,EACf,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,2CAMpD;AAED,iBAAS,cAAc,CAAC,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC,2CAEvD;AAED,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,UAAc,EACd,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC,2CAiBvD;AAED,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,CAAA"}
1
+ {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/ui/tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,gBAAgB,MAAM,yBAAyB,CAAA;AAI3D,iBAAS,eAAe,CAAC,EACvB,aAAiB,EACjB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,QAAQ,CAAC,qBAQxD;AAED,iBAAS,OAAO,CAAC,EACf,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,IAAI,CAAC,qBAMpD;AAED,iBAAS,cAAc,CAAC,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC,qBAEvD;AAED,iBAAS,cAAc,CAAC,EACtB,SAAS,EACT,UAAc,EACd,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,gBAAgB,CAAC,OAAO,CAAC,qBAiBvD;AAED,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,CAAA"}
@@ -36,6 +36,6 @@ export declare function getUserInitials({ givenName, familyName, name, }: {
36
36
  * Renders the given image `src` when provided; otherwise shows initials using
37
37
  * {@link getUserInitials}.
38
38
  */
39
- declare function UserAvatar({ className, givenName, familyName, name, src, alt, children, ...props }: UserAvatarProps): import("react/jsx-runtime").JSX.Element;
39
+ declare function UserAvatar({ className, givenName, familyName, name, src, alt, children, ...props }: UserAvatarProps): React.JSX.Element;
40
40
  export { UserAvatar };
41
41
  //# sourceMappingURL=user-avatar.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"user-avatar.d.ts","sourceRoot":"","sources":["../../../src/components/ui/user-avatar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAI1D,MAAM,WAAW,eACf,SAAQ,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC;IACzD,iCAAiC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gFAAgF;IAChF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAC9B,SAAS,EACT,UAAU,EACV,IAAI,GACL,EAAE;IACD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,MAAM,CAqBT;AAED;;;;;;;;;GASG;AACH,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,SAAS,EACT,UAAU,EACV,IAAI,EACJ,GAAG,EACH,GAAG,EACH,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,eAAe,2CAgCjB;AAED,OAAO,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"user-avatar.d.ts","sourceRoot":"","sources":["../../../src/components/ui/user-avatar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,eAAe,MAAM,wBAAwB,CAAC;AAI1D,MAAM,WAAW,eACf,SAAQ,KAAK,CAAC,cAAc,CAAC,OAAO,eAAe,CAAC,IAAI,CAAC;IACzD,iCAAiC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gFAAgF;IAChF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iCAAiC;IACjC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,qCAAqC;IACrC,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAAC,EAC9B,SAAS,EACT,UAAU,EACV,IAAI,GACL,EAAE;IACD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,MAAM,CAqBT;AAED;;;;;;;;;GASG;AACH,iBAAS,UAAU,CAAC,EAClB,SAAS,EACT,SAAS,EACT,UAAU,EACV,IAAI,EACJ,GAAG,EACH,GAAG,EACH,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,eAAe,qBAgCjB;AAED,OAAO,EAAE,UAAU,EAAE,CAAC"}
@@ -28,5 +28,5 @@ export interface UserMenuProps {
28
28
  * calling app provides the navigation callbacks so behavior is consistent
29
29
  * visually while allowing per-app routing/auth logic.
30
30
  */
31
- export declare function UserMenu({ user, onAccount, onSignOut, extraItems, className, align, }: Readonly<UserMenuProps>): import("react/jsx-runtime").JSX.Element;
31
+ export declare function UserMenu({ user, onAccount, onSignOut, extraItems, className, align, }: Readonly<UserMenuProps>): React.JSX.Element;
32
32
  //# sourceMappingURL=user-menu.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"user-menu.d.ts","sourceRoot":"","sources":["../../../src/components/ui/user-menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgB/B,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,sFAAsF;IACtF,IAAI,EAAE,YAAY,CAAC;IACnB,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,kEAAkE;IAClE,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;CACpC;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,EACvB,IAAI,EACJ,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,KAAa,GACd,EAAE,QAAQ,CAAC,aAAa,CAAC,2CAmFzB"}
1
+ {"version":3,"file":"user-menu.d.ts","sourceRoot":"","sources":["../../../src/components/ui/user-menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAgB/B,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,sFAAsF;IACtF,IAAI,EAAE,YAAY,CAAC;IACnB,8EAA8E;IAC9E,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB,kEAAkE;IAClE,UAAU,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC7B,+CAA+C;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yCAAyC;IACzC,KAAK,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;CACpC;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,EACvB,IAAI,EACJ,SAAS,EACT,SAAS,EACT,UAAU,EACV,SAAS,EACT,KAAa,GACd,EAAE,QAAQ,CAAC,aAAa,CAAC,qBAmFzB"}
@@ -29,5 +29,5 @@ export interface VigletAppSwitcherProps {
29
29
  * across every deployment. Apps that need to customize the URLs (custom
30
30
  * domain, dev environment) can pass `urls`.
31
31
  */
32
- export declare function VigletAppSwitcher({ open, onToggle, activeProduct, urls, triggerTitle, closeLabel, headerHeight, }: Readonly<VigletAppSwitcherProps>): import("react/jsx-runtime").JSX.Element;
32
+ export declare function VigletAppSwitcher({ open, onToggle, activeProduct, urls, triggerTitle, closeLabel, headerHeight, }: Readonly<VigletAppSwitcherProps>): import("react").JSX.Element;
33
33
  //# sourceMappingURL=viglet-app-switcher.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"viglet-app-switcher.d.ts","sourceRoot":"","sources":["../../src/components/viglet-app-switcher.tsx"],"names":[],"mappings":"AASA,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEnE,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAUD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,4FAA4F;IAC5F,aAAa,EAAE,aAAa,CAAC;IAC7B,mEAAmE;IACnE,IAAI,CAAC,EAAE,qBAAqB,CAAC;IAC7B,2FAA2F;IAC3F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,IAAI,EACJ,YAAY,EACZ,UAAU,EACV,YAAiB,GAClB,EAAE,QAAQ,CAAC,sBAAsB,CAAC,2CA4DlC"}
1
+ {"version":3,"file":"viglet-app-switcher.d.ts","sourceRoot":"","sources":["../../src/components/viglet-app-switcher.tsx"],"names":[],"mappings":"AASA,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEnE,MAAM,WAAW,qBAAqB;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAUD,MAAM,WAAW,sBAAsB;IACrC,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,MAAM,IAAI,CAAC;IACrB,4FAA4F;IAC5F,aAAa,EAAE,aAAa,CAAC;IAC7B,mEAAmE;IACnE,IAAI,CAAC,EAAE,qBAAqB,CAAC;IAC7B,2FAA2F;IAC3F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wCAAwC;IACxC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,8EAA8E;IAC9E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,QAAQ,EACR,aAAa,EACb,IAAI,EACJ,YAAY,EACZ,UAAU,EACV,YAAiB,GAClB,EAAE,QAAQ,CAAC,sBAAsB,CAAC,+BA4DlC"}
@@ -12,7 +12,7 @@ interface BreadcrumbContextType {
12
12
  }
13
13
  export declare function BreadcrumbProvider({ children }: {
14
14
  readonly children: ReactNode;
15
- }): import("react/jsx-runtime").JSX.Element;
15
+ }): import("react").JSX.Element;
16
16
  export declare const useBreadcrumb: () => BreadcrumbContextType;
17
17
  /**
18
18
  * Same as useBreadcrumb but returns undefined instead of throwing when no
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumb.context.d.ts","sourceRoot":"","sources":["../../src/contexts/breadcrumb.context.tsx"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,EAA8C,MAAM,OAAO,CAAC;AACtI,MAAM,MAAM,cAAc,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,UAAU,qBAAqB;IAC3B,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;IACrD,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IACzC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,eAAe,EAAE,CAAC,YAAY,CAAC,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;CAC9D;AAGD,wBAAgB,kBAAkB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,2CAoChF;AAED,eAAO,MAAM,aAAa,6BAMzB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,yCAEjC,CAAC"}
1
+ {"version":3,"file":"breadcrumb.context.d.ts","sourceRoot":"","sources":["../../src/contexts/breadcrumb.context.tsx"],"names":[],"mappings":"AACA,OAAO,EAAiB,KAAK,QAAQ,EAAE,KAAK,SAAS,EAAE,KAAK,cAAc,EAA8C,MAAM,OAAO,CAAC;AACtI,MAAM,MAAM,cAAc,GAAG;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,UAAU,qBAAqB;IAC3B,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,QAAQ,EAAE,QAAQ,CAAC,cAAc,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;IACrD,QAAQ,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;IACzC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,eAAe,EAAE,CAAC,YAAY,CAAC,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;CAC9D;AAGD,wBAAgB,kBAAkB,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAA;CAAE,+BAoChF;AAED,eAAO,MAAM,aAAa,6BAMzB,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,yCAEjC,CAAC"}
@@ -1,14 +1,38 @@
1
1
  import { VigUser } from '../models/user';
2
2
  import { default as React } from 'react';
3
+ /**
4
+ * Where the current user has got to.
5
+ *
6
+ * `user` alone could not say. It is initialised to `{} as VigUser`, so a
7
+ * consumer reading `user.name` gets `undefined` whether the request is in
8
+ * flight, the session expired, or the account genuinely has no name — three
9
+ * different screens, one indistinguishable value. Every consumer invented its
10
+ * own guess at which it was looking at; `BentoUserMenu` guessed "loading" from
11
+ * an absent username, and so rendered a skeleton for ever when the fetch failed.
12
+ */
13
+ export type VigUserStatus = "loading" | "ready" | "failed";
14
+ /**
15
+ * "loading" is the state before the first result, not "a request is in flight" —
16
+ * see `refreshUser`.
17
+ */
3
18
  interface UserContextValue {
4
19
  user: VigUser;
5
20
  refreshUser: () => void;
21
+ /** Which of the three states `user` is in. */
22
+ status: VigUserStatus;
23
+ /** What `fetchUser` rejected with, while `status` is "failed". */
24
+ error: unknown;
6
25
  }
7
26
  interface UserProviderProps {
8
27
  children: React.ReactNode;
28
+ /**
29
+ * Loads the current user. Rejecting puts the provider in `status: "failed"`
30
+ * with `error` set; the rejection is not rethrown, so a caller does not have
31
+ * to guard against it becoming an unhandled rejection.
32
+ */
9
33
  fetchUser: () => Promise<VigUser>;
10
34
  }
11
- export declare function UserProvider({ children, fetchUser }: UserProviderProps): import("react/jsx-runtime").JSX.Element;
35
+ export declare function UserProvider({ children, fetchUser }: UserProviderProps): React.JSX.Element;
12
36
  export declare function useCurrentUser(): UserContextValue;
13
37
  export {};
14
38
  //# sourceMappingURL=user.context.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"user.context.d.ts","sourceRoot":"","sources":["../../src/contexts/user.context.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,UAAU,gBAAgB;IACxB,IAAI,EAAE,OAAO,CAAA;IACb,WAAW,EAAE,MAAM,IAAI,CAAA;CACxB;AAID,UAAU,iBAAiB;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;CAClC;AAED,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,iBAAiB,2CActE;AAED,wBAAgB,cAAc,IAAI,gBAAgB,CAIjD"}
1
+ {"version":3,"file":"user.context.d.ts","sourceRoot":"","sources":["../../src/contexts/user.context.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AAC5C,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB;;;;;;;;;GASG;AACH,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAA;AAE1D;;;GAGG;AAEH,UAAU,gBAAgB;IACxB,IAAI,EAAE,OAAO,CAAA;IACb,WAAW,EAAE,MAAM,IAAI,CAAA;IACvB,8CAA8C;IAC9C,MAAM,EAAE,aAAa,CAAA;IACrB,kEAAkE;IAClE,KAAK,EAAE,OAAO,CAAA;CACf;AAID,UAAU,iBAAiB;IACzB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB;;;;OAIG;IACH,SAAS,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAA;CAClC;AAED,wBAAgB,YAAY,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,iBAAiB,qBAkDtE;AAED,wBAAgB,cAAc,IAAI,gBAAgB,CAIjD"}
@@ -0,0 +1,404 @@
1
+ {
2
+ "name": "@viglet/viglet-design-system",
3
+ "version": "2026.3.3",
4
+ "generatedBy": "scripts/emit-exports.mjs",
5
+ "entries": {
6
+ ".": {
7
+ "specifier": "@viglet/viglet-design-system",
8
+ "values": [
9
+ "Accordion",
10
+ "AccordionContent",
11
+ "AccordionItem",
12
+ "AccordionTrigger",
13
+ "AppFooter",
14
+ "AppSwitcher",
15
+ "Avatar",
16
+ "AvatarFallback",
17
+ "AvatarImage",
18
+ "BackendStatusBanner",
19
+ "BackendStatusProvider",
20
+ "Badge",
21
+ "BadgeColorful",
22
+ "BadgeLocale",
23
+ "Breadcrumb",
24
+ "BreadcrumbEllipsis",
25
+ "BreadcrumbItem",
26
+ "BreadcrumbLink",
27
+ "BreadcrumbList",
28
+ "BreadcrumbPage",
29
+ "BreadcrumbProvider",
30
+ "BreadcrumbSeparator",
31
+ "Button",
32
+ "Card",
33
+ "CardAction",
34
+ "CardContent",
35
+ "CardDescription",
36
+ "CardFooter",
37
+ "CardHeader",
38
+ "CardTitle",
39
+ "Checkbox",
40
+ "Dialog",
41
+ "DialogClose",
42
+ "DialogContent",
43
+ "DialogDescription",
44
+ "DialogFooter",
45
+ "DialogHeader",
46
+ "DialogOverlay",
47
+ "DialogPortal",
48
+ "DialogTitle",
49
+ "DialogTrigger",
50
+ "Drawer",
51
+ "DrawerClose",
52
+ "DrawerContent",
53
+ "DrawerDescription",
54
+ "DrawerFooter",
55
+ "DrawerHeader",
56
+ "DrawerOverlay",
57
+ "DrawerPortal",
58
+ "DrawerTitle",
59
+ "DrawerTrigger",
60
+ "DropdownMenu",
61
+ "DropdownMenuCheckboxItem",
62
+ "DropdownMenuContent",
63
+ "DropdownMenuGroup",
64
+ "DropdownMenuItem",
65
+ "DropdownMenuLabel",
66
+ "DropdownMenuPortal",
67
+ "DropdownMenuRadioGroup",
68
+ "DropdownMenuRadioItem",
69
+ "DropdownMenuSeparator",
70
+ "DropdownMenuShortcut",
71
+ "DropdownMenuSub",
72
+ "DropdownMenuSubContent",
73
+ "DropdownMenuSubTrigger",
74
+ "DropdownMenuTrigger",
75
+ "ErrorBoundary",
76
+ "FloatingFormulasBg",
77
+ "Form",
78
+ "FormActions",
79
+ "FormControl",
80
+ "FormDescription",
81
+ "FormField",
82
+ "FormItem",
83
+ "FormItemTwoColumns",
84
+ "FormLabel",
85
+ "FormMessage",
86
+ "GlassCard",
87
+ "GradientButton",
88
+ "GradientSwitch",
89
+ "HoverCard",
90
+ "HoverCardContent",
91
+ "HoverCardTrigger",
92
+ "IconPickerDialog",
93
+ "Input",
94
+ "Label",
95
+ "LanguageSelect",
96
+ "LanguageSwitcher",
97
+ "Login",
98
+ "ModeToggle",
99
+ "ModeToggleSidebar",
100
+ "NavSecondary",
101
+ "NavigationMenu",
102
+ "NavigationMenuContent",
103
+ "NavigationMenuIndicator",
104
+ "NavigationMenuItem",
105
+ "NavigationMenuLink",
106
+ "NavigationMenuList",
107
+ "NavigationMenuTrigger",
108
+ "NavigationMenuViewport",
109
+ "Pagination",
110
+ "PaginationContent",
111
+ "PaginationEllipsis",
112
+ "PaginationItem",
113
+ "PaginationLink",
114
+ "PaginationNext",
115
+ "PaginationPrevious",
116
+ "Popover",
117
+ "PopoverAnchor",
118
+ "PopoverContent",
119
+ "PopoverTrigger",
120
+ "Progress",
121
+ "PulseRing",
122
+ "ResizableHandle",
123
+ "ResizablePanel",
124
+ "ResizablePanelGroup",
125
+ "SectionCard",
126
+ "Select",
127
+ "SelectContent",
128
+ "SelectGroup",
129
+ "SelectItem",
130
+ "SelectLabel",
131
+ "SelectScrollDownButton",
132
+ "SelectScrollUpButton",
133
+ "SelectSeparator",
134
+ "SelectTrigger",
135
+ "SelectValue",
136
+ "Separator",
137
+ "Sheet",
138
+ "SheetClose",
139
+ "SheetContent",
140
+ "SheetDescription",
141
+ "SheetFooter",
142
+ "SheetHeader",
143
+ "SheetTitle",
144
+ "SheetTrigger",
145
+ "Sidebar",
146
+ "SidebarContent",
147
+ "SidebarFooter",
148
+ "SidebarGroup",
149
+ "SidebarGroupAction",
150
+ "SidebarGroupContent",
151
+ "SidebarGroupLabel",
152
+ "SidebarHeader",
153
+ "SidebarInput",
154
+ "SidebarInset",
155
+ "SidebarMenu",
156
+ "SidebarMenuAction",
157
+ "SidebarMenuBadge",
158
+ "SidebarMenuButton",
159
+ "SidebarMenuItem",
160
+ "SidebarMenuSkeleton",
161
+ "SidebarMenuSub",
162
+ "SidebarMenuSubButton",
163
+ "SidebarMenuSubItem",
164
+ "SidebarProvider",
165
+ "SidebarRail",
166
+ "SidebarSeparator",
167
+ "SidebarTrigger",
168
+ "Skeleton",
169
+ "Slider",
170
+ "StartupFirst",
171
+ "Stepper",
172
+ "StickySaveBar",
173
+ "Switch",
174
+ "Table",
175
+ "TableBody",
176
+ "TableCaption",
177
+ "TableCell",
178
+ "TableFooter",
179
+ "TableHead",
180
+ "TableHeader",
181
+ "TableRow",
182
+ "Tabs",
183
+ "TabsContent",
184
+ "TabsList",
185
+ "TabsTrigger",
186
+ "Textarea",
187
+ "ThemeProvider",
188
+ "Toaster",
189
+ "Toggle",
190
+ "ToggleGroup",
191
+ "ToggleGroupItem",
192
+ "Tooltip",
193
+ "TooltipContent",
194
+ "TooltipProvider",
195
+ "TooltipTrigger",
196
+ "UserAvatar",
197
+ "UserMenu",
198
+ "UserProvider",
199
+ "VigletAppSwitcher",
200
+ "badgeVariants",
201
+ "buttonVariants",
202
+ "cn",
203
+ "exportToXlsx",
204
+ "getFlagEmoji",
205
+ "getHashedColor",
206
+ "getLocaleCountryCode",
207
+ "getUserInitials",
208
+ "gradientButtonVariants",
209
+ "initVigI18n",
210
+ "navigationMenuTriggerStyle",
211
+ "registerVigTranslations",
212
+ "reportBackendOffline",
213
+ "reportBackendOnline",
214
+ "setupAxiosInterceptors",
215
+ "toast",
216
+ "toggleVariants",
217
+ "truncateMiddle",
218
+ "useBackendStatus",
219
+ "useBreadcrumb",
220
+ "useBreadcrumbOptional",
221
+ "useCurrentUser",
222
+ "useDateLocale",
223
+ "useFormField",
224
+ "useGridAdapter",
225
+ "useIsMobile",
226
+ "useSidebar",
227
+ "useSubPageBreadcrumb",
228
+ "useTheme",
229
+ "vigDesignSystemTranslations"
230
+ ],
231
+ "types": [
232
+ "AppSwitcherItem",
233
+ "AppSwitcherProps",
234
+ "FloatingFormulasBgProps",
235
+ "GlassCardProps",
236
+ "IconPickerDialogProps",
237
+ "LanguageOption",
238
+ "LanguageSwitcherProps",
239
+ "LoginFeaturePillProps",
240
+ "LoginRootProps",
241
+ "PulseRingProps",
242
+ "StartupFirstHintProps",
243
+ "StartupFirstRootProps",
244
+ "StartupFirstStepsProps",
245
+ "StickySaveBarProps",
246
+ "StickySaveBarVariant",
247
+ "UserAvatarProps",
248
+ "UserMenuProps",
249
+ "UserMenuUser",
250
+ "VigBreadcrumbItem",
251
+ "VigGridItem",
252
+ "VigLocale",
253
+ "VigUser",
254
+ "VigletAppSwitcherProps",
255
+ "VigletAppSwitcherUrls",
256
+ "VigletProduct"
257
+ ]
258
+ },
259
+ "./bento": {
260
+ "specifier": "@viglet/viglet-design-system/bento",
261
+ "values": [
262
+ "AdaptiveSectionCard",
263
+ "BENTO_EMPHASIS_NEXT",
264
+ "BENTO_EMPHASIS_SPAN",
265
+ "BENTO_TONES",
266
+ "BENTO_TONE_CLASS",
267
+ "BentoActionsMenu",
268
+ "BentoBackLink",
269
+ "BentoBackToTop",
270
+ "BentoCommandPalette",
271
+ "BentoCountTile",
272
+ "BentoEmptyState",
273
+ "BentoEntityShell",
274
+ "BentoEntityTile",
275
+ "BentoFormHero",
276
+ "BentoFormSection",
277
+ "BentoHero",
278
+ "BentoHeroIconPicker",
279
+ "BentoInlineEdit",
280
+ "BentoListPage",
281
+ "BentoNavRail",
282
+ "BentoSaveBar",
283
+ "BentoScrollSaveBar",
284
+ "BentoSection",
285
+ "BentoShortcutsDialog",
286
+ "BentoStatusMarker",
287
+ "BentoTile",
288
+ "BentoTileGrid",
289
+ "BentoUserMenu",
290
+ "SectionCardChromeProvider",
291
+ "bentoChipClass",
292
+ "bentoNavTarget",
293
+ "resolveBentoLayout",
294
+ "toBentoLayoutEntries",
295
+ "useBentoScrollFade",
296
+ "useSectionChrome"
297
+ ],
298
+ "types": [
299
+ "AdaptiveSectionCardProps",
300
+ "BentoActionTone",
301
+ "BentoActionsMenuItem",
302
+ "BentoActionsMenuProps",
303
+ "BentoCommandPaletteProps",
304
+ "BentoCountTileProps",
305
+ "BentoEmphasis",
306
+ "BentoEmptyStateProps",
307
+ "BentoEntityShellProps",
308
+ "BentoEntityShellRenderArgs",
309
+ "BentoEntityTileProps",
310
+ "BentoFormHeroProps",
311
+ "BentoFormSectionProps",
312
+ "BentoHeroIconPickerProps",
313
+ "BentoHeroProps",
314
+ "BentoIdentity",
315
+ "BentoInlineEditProps",
316
+ "BentoLayoutEntry",
317
+ "BentoLayoutResponse",
318
+ "BentoLayoutSource",
319
+ "BentoListLayout",
320
+ "BentoListPageProps",
321
+ "BentoNavGroup",
322
+ "BentoNavItem",
323
+ "BentoNavRailProps",
324
+ "BentoNavSection",
325
+ "BentoNavSectionId",
326
+ "BentoSaveBarProps",
327
+ "BentoSectionProps",
328
+ "BentoShellFormState",
329
+ "BentoShortcutsDialogProps",
330
+ "BentoStatusMarkerProps",
331
+ "BentoTileGridProps",
332
+ "BentoTileProps",
333
+ "BentoTone",
334
+ "BentoUserMenuProps",
335
+ "ResolvedBentoItem",
336
+ "SectionChrome"
337
+ ]
338
+ },
339
+ "./assets": {
340
+ "specifier": "@viglet/viglet-design-system/assets",
341
+ "values": [
342
+ "dumontLogoUrl",
343
+ "productLogos",
344
+ "shioLogoUrl",
345
+ "turingLogoUrl",
346
+ "vigletLogoUrl"
347
+ ],
348
+ "types": [
349
+ "ProductId"
350
+ ]
351
+ },
352
+ "./i18n": {
353
+ "specifier": "@viglet/viglet-design-system/i18n",
354
+ "values": [
355
+ "i18n",
356
+ "initVigI18n",
357
+ "registerVigTranslations",
358
+ "vigDesignSystemTranslations"
359
+ ],
360
+ "types": []
361
+ },
362
+ "./router": {
363
+ "specifier": "@viglet/viglet-design-system/router",
364
+ "values": [
365
+ "BlankSlate",
366
+ "DialogDelete",
367
+ "GradientButtonLink",
368
+ "GridList",
369
+ "InternalSidebar",
370
+ "LoadProvider",
371
+ "NavMain",
372
+ "NavUser",
373
+ "Page",
374
+ "PageContent",
375
+ "PageHeader",
376
+ "StickyPageHeader",
377
+ "SubPage",
378
+ "SubPageHeader"
379
+ ],
380
+ "types": [
381
+ "VigBlockedByItem",
382
+ "VigGridItemActionProps"
383
+ ]
384
+ },
385
+ "./floating-formulas-bg": {
386
+ "specifier": "@viglet/viglet-design-system/floating-formulas-bg",
387
+ "values": [
388
+ "FloatingFormulasBg"
389
+ ],
390
+ "types": [
391
+ "FloatingFormulasBgProps"
392
+ ]
393
+ },
394
+ "./vite": {
395
+ "specifier": "@viglet/viglet-design-system/vite",
396
+ "values": [
397
+ "vigletBootLoader"
398
+ ],
399
+ "types": [
400
+ "VigletBootLoaderOptions"
401
+ ]
402
+ }
403
+ }
404
+ }
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("react"),t=require("react/jsx-runtime");var n=[[480,.25],[640,.35],[768,.5],[1024,.7]];function r(){let e=window.innerWidth;for(let[t,r]of n)if(e<t)return r;return 1}function i(e){return window.addEventListener(`resize`,e,{passive:!0}),()=>window.removeEventListener(`resize`,e)}function a(){return(0,e.useSyncExternalStore)(i,r,()=>1)}var o=`H₂O.CO₂.NaCl.C₆H₁₂O₆.O₂.NH₃.CH₄.H₂SO₄.Fe₂O₃.CaCO₃.C₂H₅OH.HCl.NaOH.KMnO₄.N₂.SiO₂.Al₂O₃.MgO.ZnSO₄.Cu.H₂O₂.SO₃.PbO₂.BaSO₄.AgNO₃.K₂Cr₂O₇.Na₂CO₃.Mg(OH)₂.FeCl₃.CuSO₄.Ca(OH)₂.HNO₃.P₄O₁₀.Cl₂.Br₂`.split(`.`),s=[`ff-drift-a`,`ff-drift-b`,`ff-drift-c`,`ff-drift-d`,`ff-drift-e`],c=[{top:`8%`,left:`6%`,size:80,duration:18,delay:-2,drift:`ff-drift-b`,opacity:.3,path:`M10,40 L40,20 L70,40 M40,20 L40,5 M40,20 L25,8 M40,20 L55,8`},{top:`22%`,left:`75%`,size:100,duration:22,delay:-5,drift:`ff-drift-a`,opacity:.25,path:`M20,50 L50,30 L80,50 M50,30 L50,10 M20,50 L20,70 M80,50 L80,70 M50,30 L35,15 M50,30 L65,15`},{top:`60%`,left:`85%`,size:70,duration:16,delay:-1,drift:`ff-drift-b`,opacity:.28,path:`M15,35 L35,15 L55,35 L35,55 Z M35,15 L35,5 M55,35 L65,35`},{top:`70%`,left:`12%`,size:90,duration:20,delay:-4,drift:`ff-drift-a`,opacity:.25,path:`M10,45 L45,25 L80,45 M45,25 L45,5 M10,45 L10,65 M80,45 L80,65`},{top:`5%`,left:`42%`,size:60,duration:15,delay:-3,drift:`ff-drift-c`,opacity:.22,path:`M10,30 L30,10 L50,30 M30,10 L30,0 M10,30 L0,40 M50,30 L60,40`},{top:`45%`,left:`3%`,size:75,duration:19,delay:-6,drift:`ff-drift-a`,opacity:.25,path:`M20,40 L40,20 L60,40 M40,20 L40,5 M20,40 L5,50 M60,40 L75,50 M40,5 L30,0 M40,5 L50,0`},{top:`78%`,left:`52%`,size:85,duration:21,delay:-2,drift:`ff-drift-b`,opacity:.22,path:`M15,45 L42,20 L70,45 M42,20 L42,5 M15,45 L30,60 M70,45 L55,60`},{top:`32%`,left:`92%`,size:65,duration:17,delay:-5,drift:`ff-drift-a`,opacity:.25,path:`M10,35 L32,15 L55,35 M32,15 L32,3 M10,35 L10,50`},{top:`15%`,left:`28%`,size:70,duration:19,delay:-1,drift:`ff-drift-c`,opacity:.25,path:`M10,35 L35,10 L60,35 M35,10 L35,0 M10,35 L0,50 M60,35 L70,50`},{top:`50%`,left:`35%`,size:65,duration:16,delay:-7,drift:`ff-drift-b`,opacity:.2,path:`M10,30 L30,10 L50,30 L30,50 Z M30,10 L30,0`},{top:`40%`,left:`60%`,size:80,duration:20,delay:-3,drift:`ff-drift-a`,opacity:.22,path:`M15,40 L40,15 L65,40 M40,15 L40,3 M15,40 L5,55 M65,40 L75,55 M40,15 L28,5 M40,15 L52,5`},{top:`85%`,left:`78%`,size:60,duration:15,delay:-6,drift:`ff-drift-b`,opacity:.22,path:`M10,30 L30,10 L50,30 M30,10 L30,0 M10,30 L0,40 M50,30 L60,40`}];function l(e){let t=e;return()=>(t=(t*16807+0)%2147483647,(t-1)/2147483646)}function u(e){let t=new Set;for(let n of e)for(let e of n.split(/[\s_-]+/)){let n=e.trim();n.length>0&&t.add(n)}return Array.from(t)}function d(e){if(!e)return null;let t=/^#([0-9a-f])([0-9a-f])([0-9a-f])$/i.exec(e.trim());if(t){let[,e,n,r]=t;return`${Number.parseInt(e+e,16)}, ${Number.parseInt(n+n,16)}, ${Number.parseInt(r+r,16)}`}let n=/^#([0-9a-f]{2})([0-9a-f]{2})([0-9a-f]{2})$/i.exec(e.trim());if(n){let[,e,t,r]=n;return`${Number.parseInt(e,16)}, ${Number.parseInt(t,16)}, ${Number.parseInt(r,16)}`}return null}function f(e){return e<.4?1:e<.8?2:3}function p(e){let t=2166136261;for(let n of e)for(let e=0;e<n.length;e+=1)t^=n.charCodeAt(e),t=Math.imul(t,16777619);return Math.abs(t)%2147483646+1}function m(e,t){let n=[...e];for(let e=n.length-1;e>0;--e){let r=Math.floor(t()*(e+1));[n[e],n[r]]=[n[r],n[e]]}return n}function h(e,t,n){let r=l(n);return m(e,r).slice(0,t).map(e=>({text:e,top:`${r()*85+2}%`,left:`${r()*88+2}%`,size:.8+r()*1.2,duration:10+r()*20,delay:-(r()*20),drift:s[Math.floor(r()*s.length)],opacity:.2+r()*.35}))}function g({itemCount:n=35,extraTokens:r,seed:i,color:s,colorDark:l,withFormulas:m=!0,withBonds:g=!0,withOrbs:_=!0,withLightning:v=!1,withExplosion:y=!1,withGrid:b=!0,motionPaused:x=!1,className:S}){let C=a(),w=Math.max(4,Math.round(n*C)),T=(0,e.useMemo)(()=>c.slice(0,Math.max(2,Math.round(c.length*C))),[C]),E=f(C),D=(0,e.useMemo)(()=>{let e=[...o,...r?u(r):[]];return h(e,w,i??p(e))},[w,r,i]),O={};s&&(O[`--ff-color`]=s),l?O[`--ff-color-dark`]=l:s&&(O[`--ff-color-dark`]=s);let k=d(s);k&&(O[`--ff-color-rgb`]=k);let A=d(l)??k;return A&&(O[`--ff-color-dark-rgb`]=A),(0,t.jsxs)(`div`,{className:`absolute inset-0 pointer-events-none overflow-hidden ${x?`ff-paused`:``} ${S??``}`,style:O,"aria-hidden":`true`,children:[v&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(`div`,{className:`ff-lightning ff-lightning--a1`}),(0,t.jsx)(`div`,{className:`ff-lightning ff-lightning--a2`}),(0,t.jsx)(`div`,{className:`ff-lightning ff-lightning--a3`}),(0,t.jsx)(`div`,{className:`ff-lightning ff-lightning--b1`}),(0,t.jsx)(`div`,{className:`ff-lightning ff-lightning--b2`}),(0,t.jsx)(`div`,{className:`ff-lightning ff-lightning--c1`}),(0,t.jsx)(`div`,{className:`ff-lightning ff-lightning--c2`}),(0,t.jsx)(`div`,{className:`ff-lightning ff-lightning--c3`}),y&&(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)(`div`,{className:`ff-lightning ff-lightning--nuke`}),(0,t.jsx)(`div`,{className:`ff-lightning--flood`})]})]}),_&&(0,t.jsxs)(t.Fragment,{children:[E>=1&&(0,t.jsx)(`div`,{className:`ff-orb ff-orb--1`}),E>=2&&(0,t.jsx)(`div`,{className:`ff-orb ff-orb--2`}),E>=3&&(0,t.jsx)(`div`,{className:`ff-orb ff-orb--3`})]}),b&&(0,t.jsx)(`div`,{className:`ff-grid`}),g&&T.map(e=>(0,t.jsxs)(`svg`,{className:`ff-bond ${e.drift}`,width:e.size,height:e.size,viewBox:`0 0 ${e.size} ${e.size}`,style:{top:e.top,left:e.left,animationDuration:`${e.duration}s`,animationDelay:`${e.delay}s`,opacity:e.opacity},children:[(0,t.jsx)(`path`,{d:e.path,fill:`none`,className:`ff-bond-line`,strokeWidth:`1.5`,strokeLinecap:`round`}),Array.from(e.path.matchAll(/[ML]\s*(\d+),(\d+)/g)).map((e,n)=>(0,t.jsx)(`circle`,{cx:e[1],cy:e[2],r:`2.5`,className:`ff-bond-node`},`node-${n}`))]},`bond-${e.top}-${e.left}`)),m&&D.map(e=>(0,t.jsx)(`span`,{className:`ff-term ${e.drift}`,style:{top:e.top,left:e.left,fontSize:`${e.size}rem`,animationDuration:`${e.duration}s`,animationDelay:`${e.delay}s`,opacity:e.opacity},children:e.text},`f-${e.text}-${e.top}-${e.left}`))]})}exports.FloatingFormulasBg=g;
@@ -99,6 +99,27 @@
99
99
  animation-play-state: paused !important;
100
100
  }
101
101
 
102
+ /* The same freeze, asked for by the reader rather than by the host. The backdrop
103
+ is decorative and drifts continuously, which is the shape of motion that costs
104
+ most: the static layers stay, the movement stops, and the lightning — a
105
+ repeated flash — is removed outright rather than merely paused mid-frame. The
106
+ rule is asserted in src/styles/reduced-motion.test.ts. */
107
+ @media (prefers-reduced-motion: reduce) {
108
+ .ff-term,
109
+ .ff-bond,
110
+ .ff-orb {
111
+ animation: none !important;
112
+ transition: none !important;
113
+ }
114
+
115
+ .ff-lightning,
116
+ .ff-lightning--nuke,
117
+ .ff-lightning--flood {
118
+ animation: none !important;
119
+ opacity: 0 !important;
120
+ }
121
+ }
122
+
102
123
  @keyframes ff-drift-a {
103
124
  0% { transform: translate(0, 0) scale(1) rotate(0deg); }
104
125
  20% { transform: translate(80px, -60px) scale(1.15) rotate(5deg); }