@omnitron-dev/prism 0.3.0 → 0.3.2

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 (413) hide show
  1. package/README.md +216 -2
  2. package/THIRD-PARTY-NOTICES.txt +26 -0
  3. package/dist/accessibility/index.js +2 -0
  4. package/dist/accessibility/index.js.map +1 -1
  5. package/dist/auth/index.d.ts +4 -0
  6. package/dist/auth/index.d.ts.map +1 -0
  7. package/dist/auth/index.js +4 -0
  8. package/dist/auth/index.js.map +1 -0
  9. package/dist/blocks/auth-block/guards.d.ts +3 -2
  10. package/dist/blocks/auth-block/guards.d.ts.map +1 -1
  11. package/dist/blocks/dashboard-block/dashboard-block.d.ts.map +1 -1
  12. package/dist/blocks/dashboard-block/types.d.ts +4 -2
  13. package/dist/blocks/dashboard-block/types.d.ts.map +1 -1
  14. package/dist/blocks/dashboard-block/use-dashboard-block.d.ts +2 -2
  15. package/dist/blocks/dashboard-block/use-dashboard-block.d.ts.map +1 -1
  16. package/dist/blocks/data-grid-block/data-grid-block.d.ts.map +1 -1
  17. package/dist/blocks/data-grid-block/types.d.ts +3 -0
  18. package/dist/blocks/data-grid-block/types.d.ts.map +1 -1
  19. package/dist/blocks/index.js +80 -253
  20. package/dist/blocks/index.js.map +1 -1
  21. package/dist/chunk-2AB7VGPW.js +447 -0
  22. package/dist/chunk-2AB7VGPW.js.map +1 -0
  23. package/dist/{chunk-WFD54GQQ.js → chunk-2E67PQ4T.js} +14 -573
  24. package/dist/chunk-2E67PQ4T.js.map +1 -0
  25. package/dist/chunk-2KG2NI73.js +84 -0
  26. package/dist/chunk-2KG2NI73.js.map +1 -0
  27. package/dist/chunk-2UYRW6X3.js +44 -0
  28. package/dist/chunk-2UYRW6X3.js.map +1 -0
  29. package/dist/chunk-36C5H56C.js +208 -0
  30. package/dist/chunk-36C5H56C.js.map +1 -0
  31. package/dist/chunk-36FOXX25.js +73 -0
  32. package/dist/chunk-36FOXX25.js.map +1 -0
  33. package/dist/chunk-3VSM7NZG.js +562 -0
  34. package/dist/chunk-3VSM7NZG.js.map +1 -0
  35. package/dist/chunk-4B2LTPK2.js +826 -0
  36. package/dist/chunk-4B2LTPK2.js.map +1 -0
  37. package/dist/chunk-4HUGZJKU.js +108 -0
  38. package/dist/chunk-4HUGZJKU.js.map +1 -0
  39. package/dist/chunk-4Q5L7LDG.js +74 -0
  40. package/dist/chunk-4Q5L7LDG.js.map +1 -0
  41. package/dist/{chunk-BRDWQVRT.js → chunk-4R7EZ7GQ.js} +3 -2
  42. package/dist/chunk-4R7EZ7GQ.js.map +1 -0
  43. package/dist/chunk-6IANOSMD.js +185 -0
  44. package/dist/chunk-6IANOSMD.js.map +1 -0
  45. package/dist/chunk-7ATBURW2.js +206 -0
  46. package/dist/chunk-7ATBURW2.js.map +1 -0
  47. package/dist/{chunk-6AHI4GSV.js → chunk-AATAOOSF.js} +4 -3
  48. package/dist/chunk-AATAOOSF.js.map +1 -0
  49. package/dist/chunk-AKLRKCYH.js +128 -0
  50. package/dist/chunk-AKLRKCYH.js.map +1 -0
  51. package/dist/chunk-CT46KJOR.js +133 -0
  52. package/dist/chunk-CT46KJOR.js.map +1 -0
  53. package/dist/{chunk-YQW43BDH.js → chunk-D4GFAJAZ.js} +1168 -6354
  54. package/dist/chunk-D4GFAJAZ.js.map +1 -0
  55. package/dist/chunk-D5J3KW6Q.js +106 -0
  56. package/dist/chunk-D5J3KW6Q.js.map +1 -0
  57. package/dist/chunk-DEPJRTVT.js +3 -0
  58. package/dist/{chunk-FU52GL2E.js.map → chunk-DEPJRTVT.js.map} +1 -1
  59. package/dist/{chunk-S6SEGBX6.js → chunk-DHTYHUYI.js} +85 -107
  60. package/dist/chunk-DHTYHUYI.js.map +1 -0
  61. package/dist/chunk-E7WM2RXA.js +249 -0
  62. package/dist/chunk-E7WM2RXA.js.map +1 -0
  63. package/dist/chunk-F6RZ7LW6.js +1271 -0
  64. package/dist/chunk-F6RZ7LW6.js.map +1 -0
  65. package/dist/chunk-FOGY3HA4.js +217 -0
  66. package/dist/chunk-FOGY3HA4.js.map +1 -0
  67. package/dist/chunk-G2GANYMW.js +139 -0
  68. package/dist/chunk-G2GANYMW.js.map +1 -0
  69. package/dist/chunk-I6DILPFE.js +293 -0
  70. package/dist/chunk-I6DILPFE.js.map +1 -0
  71. package/dist/chunk-IRYU3NTG.js +573 -0
  72. package/dist/chunk-IRYU3NTG.js.map +1 -0
  73. package/dist/chunk-JTIUGPW5.js +284 -0
  74. package/dist/chunk-JTIUGPW5.js.map +1 -0
  75. package/dist/{chunk-GUFHFEPZ.js → chunk-JZBSPDED.js} +2 -2
  76. package/dist/{chunk-GUFHFEPZ.js.map → chunk-JZBSPDED.js.map} +1 -1
  77. package/dist/chunk-KPY7TA4D.js +191 -0
  78. package/dist/chunk-KPY7TA4D.js.map +1 -0
  79. package/dist/{chunk-OBJ244BO.js → chunk-LFWKGNCX.js} +50 -656
  80. package/dist/chunk-LFWKGNCX.js.map +1 -0
  81. package/dist/chunk-LH4ZZZYB.js +37 -0
  82. package/dist/chunk-LH4ZZZYB.js.map +1 -0
  83. package/dist/chunk-NFJ7CPG3.js +13 -0
  84. package/dist/chunk-NFJ7CPG3.js.map +1 -0
  85. package/dist/chunk-NFPOIHD4.js +3 -0
  86. package/dist/{chunk-AYYFMTMI.js.map → chunk-NFPOIHD4.js.map} +1 -1
  87. package/dist/{chunk-XIXSSI3B.js → chunk-NJM5AVBM.js} +3 -2
  88. package/dist/chunk-NJM5AVBM.js.map +1 -0
  89. package/dist/{chunk-Z5OSPAOC.js → chunk-NSNM53WI.js} +196 -175
  90. package/dist/chunk-NSNM53WI.js.map +1 -0
  91. package/dist/chunk-NTREGTG7.js +31 -0
  92. package/dist/chunk-NTREGTG7.js.map +1 -0
  93. package/dist/{chunk-ADG4HZEP.js → chunk-OKJA6SJM.js} +4 -4
  94. package/dist/chunk-OKJA6SJM.js.map +1 -0
  95. package/dist/chunk-Q6JDNFSG.js +303 -0
  96. package/dist/chunk-Q6JDNFSG.js.map +1 -0
  97. package/dist/chunk-RPOGINR5.js +115 -0
  98. package/dist/chunk-RPOGINR5.js.map +1 -0
  99. package/dist/{chunk-ZTATTUH7.js → chunk-RSWVYIXK.js} +282 -683
  100. package/dist/chunk-RSWVYIXK.js.map +1 -0
  101. package/dist/chunk-SSEHL5VP.js +110 -0
  102. package/dist/chunk-SSEHL5VP.js.map +1 -0
  103. package/dist/chunk-TEIGUOWN.js +523 -0
  104. package/dist/chunk-TEIGUOWN.js.map +1 -0
  105. package/dist/{chunk-AYYFMTMI.js → chunk-TJ7DHXUX.js} +2 -2
  106. package/dist/chunk-TJ7DHXUX.js.map +1 -0
  107. package/dist/chunk-TZHWYT34.js +590 -0
  108. package/dist/chunk-TZHWYT34.js.map +1 -0
  109. package/dist/chunk-TZWHELY4.js +45 -0
  110. package/dist/chunk-TZWHELY4.js.map +1 -0
  111. package/dist/{chunk-BZOL7GMU.js → chunk-UEINJFLS.js} +7 -7
  112. package/dist/chunk-UEINJFLS.js.map +1 -0
  113. package/dist/chunk-URFQX3I6.js +129 -0
  114. package/dist/chunk-URFQX3I6.js.map +1 -0
  115. package/dist/chunk-VG6FOMOH.js +187 -0
  116. package/dist/chunk-VG6FOMOH.js.map +1 -0
  117. package/dist/chunk-VQVVHMPG.js +106 -0
  118. package/dist/chunk-VQVVHMPG.js.map +1 -0
  119. package/dist/{chunk-DRFNMZLG.js → chunk-VUKOT432.js} +3 -2
  120. package/dist/chunk-VUKOT432.js.map +1 -0
  121. package/dist/chunk-WD4N72DL.js +315 -0
  122. package/dist/chunk-WD4N72DL.js.map +1 -0
  123. package/dist/chunk-XBYMG4QK.js +119 -0
  124. package/dist/chunk-XBYMG4QK.js.map +1 -0
  125. package/dist/chunk-YHM6GIHV.js +3 -0
  126. package/dist/chunk-YHM6GIHV.js.map +1 -0
  127. package/dist/{chunk-SNZK5X6F.js → chunk-Z2AN43YU.js} +4 -2
  128. package/dist/chunk-Z2AN43YU.js.map +1 -0
  129. package/dist/chunk-ZNWHMQRM.js +171 -0
  130. package/dist/chunk-ZNWHMQRM.js.map +1 -0
  131. package/dist/{chunk-YSIG2XYH.js → chunk-ZRJYQN6Y.js} +2 -2
  132. package/dist/{chunk-YSIG2XYH.js.map → chunk-ZRJYQN6Y.js.map} +1 -1
  133. package/dist/{chunk-AD4W7HYC.js → chunk-ZYI3MHLE.js} +3 -2
  134. package/dist/chunk-ZYI3MHLE.js.map +1 -0
  135. package/dist/cli/index.js +66 -423
  136. package/dist/cli/index.js.map +1 -1
  137. package/dist/components/accordion/accordion.d.ts.map +1 -1
  138. package/dist/components/admin-filters/admin-data-table.d.ts +7 -1
  139. package/dist/components/admin-filters/admin-data-table.d.ts.map +1 -1
  140. package/dist/components/admin-filters/filter-toolbar.d.ts.map +1 -1
  141. package/dist/components/admin-filters/index.js +8 -0
  142. package/dist/components/admin-filters/index.js.map +1 -0
  143. package/dist/components/alert/alert.d.ts.map +1 -1
  144. package/dist/components/alert/index.js +5 -0
  145. package/dist/components/alert/index.js.map +1 -0
  146. package/dist/components/animate/index.js +5 -0
  147. package/dist/components/animate/index.js.map +1 -0
  148. package/dist/components/breadcrumbs/breadcrumbs.d.ts.map +1 -1
  149. package/dist/components/breadcrumbs/index.js +4 -0
  150. package/dist/components/breadcrumbs/index.js.map +1 -0
  151. package/dist/components/card/index.js +4 -0
  152. package/dist/components/card/index.js.map +1 -0
  153. package/dist/components/chart/chart.d.ts.map +1 -1
  154. package/dist/components/chart/index.css +52 -0
  155. package/dist/components/chart/index.css.map +1 -0
  156. package/dist/components/chart/index.js +5 -0
  157. package/dist/components/chart/index.js.map +1 -0
  158. package/dist/components/chart/types.d.ts +3 -1
  159. package/dist/components/chart/types.d.ts.map +1 -1
  160. package/dist/components/chart/use-chart.d.ts.map +1 -1
  161. package/dist/components/command-palette/command-palette.d.ts +3 -1
  162. package/dist/components/command-palette/command-palette.d.ts.map +1 -1
  163. package/dist/components/command-palette/index.js +4 -0
  164. package/dist/components/command-palette/index.js.map +1 -0
  165. package/dist/components/confirm-dialog/index.js +4 -0
  166. package/dist/components/confirm-dialog/index.js.map +1 -0
  167. package/dist/components/date-input/date-input.d.ts +28 -0
  168. package/dist/components/date-input/date-input.d.ts.map +1 -0
  169. package/dist/components/date-input/index.d.ts +3 -0
  170. package/dist/components/date-input/index.d.ts.map +1 -0
  171. package/dist/components/date-input/value.d.ts +9 -0
  172. package/dist/components/date-input/value.d.ts.map +1 -0
  173. package/dist/components/doc-layout/doc-sidebar.d.ts +4 -1
  174. package/dist/components/doc-layout/doc-sidebar.d.ts.map +1 -1
  175. package/dist/components/doc-layout/index.js +7 -0
  176. package/dist/components/doc-layout/index.js.map +1 -0
  177. package/dist/components/editor/editor.d.ts.map +1 -1
  178. package/dist/components/editor/icons/index.d.ts +32 -40
  179. package/dist/components/editor/icons/index.d.ts.map +1 -1
  180. package/dist/components/editor/index.js +4 -1
  181. package/dist/components/editor/index.js.map +1 -1
  182. package/dist/components/emoji-picker/index.js +2 -1
  183. package/dist/components/emoji-picker/index.js.map +1 -1
  184. package/dist/components/empty-content/empty-content.d.ts.map +1 -1
  185. package/dist/components/empty-content/index.js +4 -0
  186. package/dist/components/empty-content/index.js.map +1 -0
  187. package/dist/components/error-boundary/error-boundary.d.ts.map +1 -1
  188. package/dist/components/error-boundary/index.js +6 -0
  189. package/dist/components/error-boundary/index.js.map +1 -0
  190. package/dist/components/index.css +17 -10
  191. package/dist/components/index.css.map +1 -1
  192. package/dist/components/index.d.ts +5 -4
  193. package/dist/components/index.d.ts.map +1 -1
  194. package/dist/components/index.js +47 -11
  195. package/dist/components/index.js.map +1 -1
  196. package/dist/components/knowledge-graph/edge-labels.d.ts +14 -0
  197. package/dist/components/knowledge-graph/edge-labels.d.ts.map +1 -0
  198. package/dist/components/knowledge-graph/graph.d.ts +56 -0
  199. package/dist/components/knowledge-graph/graph.d.ts.map +1 -0
  200. package/dist/components/knowledge-graph/index.css +176 -0
  201. package/dist/components/knowledge-graph/index.css.map +1 -0
  202. package/dist/components/knowledge-graph/index.d.ts +3 -0
  203. package/dist/components/knowledge-graph/index.d.ts.map +1 -0
  204. package/dist/components/knowledge-graph/index.js +797 -0
  205. package/dist/components/knowledge-graph/index.js.map +1 -0
  206. package/dist/components/knowledge-graph/label-layout.d.ts +28 -0
  207. package/dist/components/knowledge-graph/label-layout.d.ts.map +1 -0
  208. package/dist/components/knowledge-graph/label-store.d.ts +15 -0
  209. package/dist/components/knowledge-graph/label-store.d.ts.map +1 -0
  210. package/dist/components/knowledge-graph/model.d.ts +92 -0
  211. package/dist/components/knowledge-graph/model.d.ts.map +1 -0
  212. package/dist/components/label/index.js +5 -0
  213. package/dist/components/label/index.js.map +1 -0
  214. package/dist/components/label/label.d.ts.map +1 -1
  215. package/dist/components/lightbox/lightbox.d.ts.map +1 -1
  216. package/dist/components/loading-screen/index.js +4 -0
  217. package/dist/components/loading-screen/index.js.map +1 -0
  218. package/dist/components/map/Map.d.ts +19 -43
  219. package/dist/components/map/Map.d.ts.map +1 -1
  220. package/dist/components/map/MapCoverageLayer.d.ts +1 -1
  221. package/dist/components/map/MapCoverageLayer.d.ts.map +1 -1
  222. package/dist/components/map/MapMarker.d.ts +1 -1
  223. package/dist/components/map/MapMarker.d.ts.map +1 -1
  224. package/dist/components/map/MapPlaceSearch.d.ts +33 -0
  225. package/dist/components/map/MapPlaceSearch.d.ts.map +1 -0
  226. package/dist/components/map/MapPointPicker.d.ts +21 -12
  227. package/dist/components/map/MapPointPicker.d.ts.map +1 -1
  228. package/dist/components/map/coordinates.d.ts +10 -0
  229. package/dist/components/map/coordinates.d.ts.map +1 -0
  230. package/dist/components/map/index.css +4 -0
  231. package/dist/components/map/index.css.map +1 -0
  232. package/dist/components/map/index.d.ts +7 -2
  233. package/dist/components/map/index.d.ts.map +1 -1
  234. package/dist/components/map/index.js +4 -0
  235. package/dist/components/map/index.js.map +1 -0
  236. package/dist/components/nav-card/nav-card.d.ts.map +1 -1
  237. package/dist/components/navigation-progress/index.js +4 -0
  238. package/dist/components/navigation-progress/index.js.map +1 -0
  239. package/dist/components/page-content/index.js +4 -0
  240. package/dist/components/page-content/index.js.map +1 -0
  241. package/dist/components/popover/index.js +4 -0
  242. package/dist/components/popover/index.js.map +1 -0
  243. package/dist/components/rail/rail.d.ts.map +1 -1
  244. package/dist/components/research/diagram-image.d.ts +11 -0
  245. package/dist/components/research/diagram-image.d.ts.map +1 -0
  246. package/dist/components/research/diagram.d.ts +8 -0
  247. package/dist/components/research/diagram.d.ts.map +1 -0
  248. package/dist/components/research/document.d.ts +33 -0
  249. package/dist/components/research/document.d.ts.map +1 -0
  250. package/dist/components/research/frontmatter.d.ts +15 -0
  251. package/dist/components/research/frontmatter.d.ts.map +1 -0
  252. package/dist/components/research/index.css +51 -0
  253. package/dist/components/research/index.css.map +1 -0
  254. package/dist/components/research/index.d.ts +3 -0
  255. package/dist/components/research/index.d.ts.map +1 -0
  256. package/dist/components/research/index.js +8 -0
  257. package/dist/components/research/index.js.map +1 -0
  258. package/dist/components/research/parse.d.ts +29 -0
  259. package/dist/components/research/parse.d.ts.map +1 -0
  260. package/dist/components/research-editor/block-commands.d.ts +20 -0
  261. package/dist/components/research-editor/block-commands.d.ts.map +1 -0
  262. package/dist/components/research-editor/block-controls.d.ts +13 -0
  263. package/dist/components/research-editor/block-controls.d.ts.map +1 -0
  264. package/dist/components/research-editor/editor.d.ts +75 -0
  265. package/dist/components/research-editor/editor.d.ts.map +1 -0
  266. package/dist/components/research-editor/extensions.d.ts +14 -0
  267. package/dist/components/research-editor/extensions.d.ts.map +1 -0
  268. package/dist/components/research-editor/index.css +332 -0
  269. package/dist/components/research-editor/index.css.map +1 -0
  270. package/dist/components/research-editor/index.d.ts +5 -0
  271. package/dist/components/research-editor/index.d.ts.map +1 -0
  272. package/dist/components/research-editor/index.js +1593 -0
  273. package/dist/components/research-editor/index.js.map +1 -0
  274. package/dist/components/research-editor/math-input.d.ts +32 -0
  275. package/dist/components/research-editor/math-input.d.ts.map +1 -0
  276. package/dist/components/research-editor/math-markup.d.ts +4 -0
  277. package/dist/components/research-editor/math-markup.d.ts.map +1 -0
  278. package/dist/components/research-editor/math-navigation.d.ts +6 -0
  279. package/dist/components/research-editor/math-navigation.d.ts.map +1 -0
  280. package/dist/components/research-editor/math-node.d.ts +11 -0
  281. package/dist/components/research-editor/math-node.d.ts.map +1 -0
  282. package/dist/components/research-editor/source.d.ts +19 -0
  283. package/dist/components/research-editor/source.d.ts.map +1 -0
  284. package/dist/components/scroll-to-top/index.js +4 -0
  285. package/dist/components/scroll-to-top/index.js.map +1 -0
  286. package/dist/components/scrollbar/scrollbar.d.ts +4 -2
  287. package/dist/components/scrollbar/scrollbar.d.ts.map +1 -1
  288. package/dist/components/search-input/index.js +7 -0
  289. package/dist/components/search-input/index.js.map +1 -0
  290. package/dist/components/search-input/search-input.d.ts +3 -11
  291. package/dist/components/search-input/search-input.d.ts.map +1 -1
  292. package/dist/components/skeleton/index.js +4 -0
  293. package/dist/components/skeleton/index.js.map +1 -0
  294. package/dist/components/snackbar/index.js +6 -0
  295. package/dist/components/snackbar/index.js.map +1 -0
  296. package/dist/components/stepper/index.js +4 -0
  297. package/dist/components/stepper/index.js.map +1 -0
  298. package/dist/components/table/index.d.ts +1 -0
  299. package/dist/components/table/index.d.ts.map +1 -1
  300. package/dist/components/table/index.js +5 -0
  301. package/dist/components/table/index.js.map +1 -0
  302. package/dist/components/table/table-viewport.d.ts +13 -0
  303. package/dist/components/table/table-viewport.d.ts.map +1 -0
  304. package/dist/components/table/table.d.ts +3 -1
  305. package/dist/components/table/table.d.ts.map +1 -1
  306. package/dist/components/tabs/index.js +6 -0
  307. package/dist/components/tabs/index.js.map +1 -0
  308. package/dist/components/tabs/tabs.d.ts +12 -1
  309. package/dist/components/tabs/tabs.d.ts.map +1 -1
  310. package/dist/components/tiptap-renderer/tiptap-renderer.d.ts +4 -3
  311. package/dist/components/tiptap-renderer/tiptap-renderer.d.ts.map +1 -1
  312. package/dist/core/index.d.ts +1 -1
  313. package/dist/core/index.d.ts.map +1 -1
  314. package/dist/core/index.js +12 -6
  315. package/dist/core/index.js.map +1 -1
  316. package/dist/core/provider.d.ts +7 -2
  317. package/dist/core/provider.d.ts.map +1 -1
  318. package/dist/forms/index.js +2 -0
  319. package/dist/forms/index.js.map +1 -1
  320. package/dist/forms/schema-provider.d.ts +3 -3
  321. package/dist/forms/schema-utils.d.ts +3 -3
  322. package/dist/hooks/index.js +14 -8
  323. package/dist/hooks/index.js.map +1 -1
  324. package/dist/hooks/use-config-from-query.d.ts +2 -0
  325. package/dist/hooks/use-config-from-query.d.ts.map +1 -1
  326. package/dist/hooks/use-image-dimensions.d.ts.map +1 -1
  327. package/dist/hooks/use-keyboard-shortcut.d.ts.map +1 -1
  328. package/dist/hooks/use-scroll-position.d.ts.map +1 -1
  329. package/dist/hooks/use-window-size.d.ts.map +1 -1
  330. package/dist/icons/context.d.ts +17 -0
  331. package/dist/icons/context.d.ts.map +1 -0
  332. package/dist/icons/controls.d.ts +51 -0
  333. package/dist/icons/controls.d.ts.map +1 -0
  334. package/dist/icons/index.d.ts +3 -0
  335. package/dist/icons/index.d.ts.map +1 -0
  336. package/dist/icons/index.js +5 -0
  337. package/dist/icons/index.js.map +1 -0
  338. package/dist/icons/theme.d.ts +4 -0
  339. package/dist/icons/theme.d.ts.map +1 -0
  340. package/dist/index.css +17 -10
  341. package/dist/index.css.map +1 -1
  342. package/dist/index.js +57 -20
  343. package/dist/index.js.map +1 -1
  344. package/dist/internal/research-parser.js +3 -0
  345. package/dist/internal/research-parser.js.map +1 -0
  346. package/dist/layouts/core/header-section.d.ts +1 -0
  347. package/dist/layouts/core/header-section.d.ts.map +1 -1
  348. package/dist/layouts/dashboard/labels.d.ts +12 -0
  349. package/dist/layouts/dashboard/labels.d.ts.map +1 -0
  350. package/dist/layouts/dashboard/layout.d.ts +9 -1
  351. package/dist/layouts/dashboard/layout.d.ts.map +1 -1
  352. package/dist/layouts/dashboard/sidenav.d.ts +7 -3
  353. package/dist/layouts/dashboard/sidenav.d.ts.map +1 -1
  354. package/dist/layouts/index.d.ts +5 -0
  355. package/dist/layouts/index.d.ts.map +1 -1
  356. package/dist/layouts/index.js +9 -3
  357. package/dist/layouts/index.js.map +1 -1
  358. package/dist/layouts/panel-layout.d.ts +35 -0
  359. package/dist/layouts/panel-layout.d.ts.map +1 -0
  360. package/dist/layouts/sidebar-toggle.d.ts +11 -0
  361. package/dist/layouts/sidebar-toggle.d.ts.map +1 -0
  362. package/dist/netron/index.js +2 -1
  363. package/dist/netron/index.js.map +1 -1
  364. package/dist/registry/index.js +1 -1
  365. package/dist/state/create-store.d.ts.map +1 -1
  366. package/dist/state/index.js +3 -2
  367. package/dist/state/index.js.map +1 -1
  368. package/dist/state/settings-version.d.ts.map +1 -1
  369. package/dist/state/stores/auth.d.ts +4 -16
  370. package/dist/state/stores/auth.d.ts.map +1 -1
  371. package/dist/state/stores/ui.d.ts +7 -105
  372. package/dist/state/stores/ui.d.ts.map +1 -1
  373. package/dist/theme/components/Button.d.ts.map +1 -1
  374. package/dist/theme/components/Chip.d.ts.map +1 -1
  375. package/dist/theme/components/Dialog.d.ts.map +1 -1
  376. package/dist/theme/components/FormControls.d.ts +3 -12
  377. package/dist/theme/components/FormControls.d.ts.map +1 -1
  378. package/dist/theme/components/TextField.d.ts.map +1 -1
  379. package/dist/theme/components/index.d.ts.map +1 -1
  380. package/dist/theme/components/theme-utils.d.ts +2 -2
  381. package/dist/theme/components/theme-utils.d.ts.map +1 -1
  382. package/dist/theme/create-theme.d.ts +5 -17
  383. package/dist/theme/create-theme.d.ts.map +1 -1
  384. package/dist/theme/index.js +8 -2
  385. package/dist/theme/index.js.map +1 -1
  386. package/dist/theme/mixins.d.ts +3 -1
  387. package/dist/theme/mixins.d.ts.map +1 -1
  388. package/dist/theme/palette/overrides.d.ts +24 -0
  389. package/dist/theme/palette/overrides.d.ts.map +1 -0
  390. package/dist/theme/semantic-surface.d.ts +8 -0
  391. package/dist/theme/semantic-surface.d.ts.map +1 -0
  392. package/dist/types/index.js +2 -2
  393. package/dist/ui/index.d.ts +18 -0
  394. package/dist/ui/index.d.ts.map +1 -0
  395. package/dist/ui/index.js +149 -0
  396. package/dist/ui/index.js.map +1 -0
  397. package/dist/utils/async-lock.d.ts.map +1 -1
  398. package/package.json +200 -47
  399. package/dist/chunk-6AHI4GSV.js.map +0 -1
  400. package/dist/chunk-AD4W7HYC.js.map +0 -1
  401. package/dist/chunk-ADG4HZEP.js.map +0 -1
  402. package/dist/chunk-BRDWQVRT.js.map +0 -1
  403. package/dist/chunk-BZOL7GMU.js.map +0 -1
  404. package/dist/chunk-DRFNMZLG.js.map +0 -1
  405. package/dist/chunk-FU52GL2E.js +0 -3
  406. package/dist/chunk-OBJ244BO.js.map +0 -1
  407. package/dist/chunk-S6SEGBX6.js.map +0 -1
  408. package/dist/chunk-SNZK5X6F.js.map +0 -1
  409. package/dist/chunk-WFD54GQQ.js.map +0 -1
  410. package/dist/chunk-XIXSSI3B.js.map +0 -1
  411. package/dist/chunk-YQW43BDH.js.map +0 -1
  412. package/dist/chunk-Z5OSPAOC.js.map +0 -1
  413. package/dist/chunk-ZTATTUH7.js.map +0 -1
@@ -0,0 +1,37 @@
1
+ // src/utils/create-classes.ts
2
+ var DEFAULT_CLASS_PREFIX = "prism";
3
+ var classPrefix = DEFAULT_CLASS_PREFIX;
4
+ function setClassPrefix(prefix) {
5
+ classPrefix = prefix;
6
+ }
7
+ function getClassPrefix() {
8
+ return classPrefix;
9
+ }
10
+ function createClasses(className) {
11
+ return `${classPrefix}__${className}`;
12
+ }
13
+ function createClassesObject(classNames) {
14
+ return classNames.reduce(
15
+ (acc, name) => {
16
+ acc[name] = createClasses(name);
17
+ return acc;
18
+ },
19
+ {}
20
+ );
21
+ }
22
+ function createComponentClasses(componentName, suffixes) {
23
+ if (suffixes) {
24
+ return suffixes.reduce(
25
+ (acc, suffix) => {
26
+ acc[suffix] = createClasses(`${componentName}__${suffix}`);
27
+ return acc;
28
+ },
29
+ {}
30
+ );
31
+ }
32
+ return (suffix) => createClasses(`${componentName}__${suffix}`);
33
+ }
34
+
35
+ export { DEFAULT_CLASS_PREFIX, createClasses, createClassesObject, createComponentClasses, getClassPrefix, setClassPrefix };
36
+ //# sourceMappingURL=chunk-LH4ZZZYB.js.map
37
+ //# sourceMappingURL=chunk-LH4ZZZYB.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/utils/create-classes.ts"],"names":[],"mappings":";AAiBO,IAAM,oBAAA,GAAuB;AAEpC,IAAI,WAAA,GAAc,oBAAA;AAaX,SAAS,eAAe,MAAA,EAAsB;AACnD,EAAA,WAAA,GAAc,MAAA;AAChB;AAOO,SAAS,cAAA,GAAyB;AACvC,EAAA,OAAO,WAAA;AACT;AAqBO,SAAS,cAAc,SAAA,EAA2B;AACvD,EAAA,OAAO,CAAA,EAAG,WAAW,CAAA,EAAA,EAAK,SAAS,CAAA,CAAA;AACrC;AAcO,SAAS,oBAAsC,UAAA,EAA6C;AACjG,EAAA,OAAO,UAAA,CAAW,MAAA;AAAA,IAChB,CAAC,KAAK,IAAA,KAAS;AACb,MAAA,GAAA,CAAI,IAAI,CAAA,GAAI,aAAA,CAAc,IAAI,CAAA;AAC9B,MAAA,OAAO,GAAA;AAAA,IACT,CAAA;AAAA,IACA;AAAC,GACH;AACF;AAoCO,SAAS,sBAAA,CACd,eACA,QAAA,EACkD;AAClD,EAAA,IAAI,QAAA,EAAU;AACZ,IAAA,OAAO,QAAA,CAAS,MAAA;AAAA,MACd,CAAC,KAAK,MAAA,KAAW;AACf,QAAA,GAAA,CAAI,MAAM,CAAA,GAAI,aAAA,CAAc,GAAG,aAAa,CAAA,EAAA,EAAK,MAAM,CAAA,CAAE,CAAA;AACzD,QAAA,OAAO,GAAA;AAAA,MACT,CAAA;AAAA,MACA;AAAC,KACH;AAAA,EACF;AACA,EAAA,OAAO,CAAC,MAAA,KAAmB,aAAA,CAAc,GAAG,aAAa,CAAA,EAAA,EAAK,MAAM,CAAA,CAAE,CAAA;AACxE","file":"chunk-LH4ZZZYB.js","sourcesContent":["/**\n * Class Name Factory\n *\n * Creates prefixed CSS class names for consistent component styling.\n * Uses a configurable prefix to avoid collisions with other libraries.\n *\n * @module utils/create-classes\n */\n\n// =============================================================================\n// CONFIGURATION\n// =============================================================================\n\n/**\n * Default class prefix for Prism components.\n * Can be overridden via PRISM_CLASS_PREFIX environment variable.\n */\nexport const DEFAULT_CLASS_PREFIX = 'prism';\n\nlet classPrefix = DEFAULT_CLASS_PREFIX;\n\n/**\n * Set the global class prefix for all Prism components.\n *\n * @param prefix - New class prefix to use\n *\n * @example\n * ```ts\n * setClassPrefix('my-app');\n * createClasses('button__root'); // => \"my-app__button__root\"\n * ```\n */\nexport function setClassPrefix(prefix: string): void {\n classPrefix = prefix;\n}\n\n/**\n * Get the current class prefix.\n *\n * @returns Current class prefix\n */\nexport function getClassPrefix(): string {\n return classPrefix;\n}\n\n// =============================================================================\n// CLASS FACTORY\n// =============================================================================\n\n/**\n * Create a prefixed CSS class name.\n *\n * @param className - Class name suffix (e.g., \"button__root\")\n * @returns Prefixed class name (e.g., \"prism__button__root\")\n *\n * @example\n * ```ts\n * createClasses('chart__root')\n * // => \"prism__chart__root\"\n *\n * createClasses('chart__loading')\n * // => \"prism__chart__loading\"\n * ```\n */\nexport function createClasses(className: string): string {\n return `${classPrefix}__${className}`;\n}\n\n/**\n * Create multiple prefixed CSS class names.\n *\n * @param classNames - Array of class name suffixes\n * @returns Object mapping original names to prefixed names\n *\n * @example\n * ```ts\n * const classes = createClassesObject(['root', 'loading', 'label']);\n * // => { root: \"prism__root\", loading: \"prism__loading\", label: \"prism__label\" }\n * ```\n */\nexport function createClassesObject<T extends string>(classNames: readonly T[]): Record<T, string> {\n return classNames.reduce(\n (acc, name) => {\n acc[name] = createClasses(name);\n return acc;\n },\n {} as Record<T, string>\n );\n}\n\n/**\n * Create a class name factory for a specific component.\n *\n * @param componentName - Component name (e.g., \"chart\", \"button\")\n * @returns Function that creates prefixed class names for that component\n *\n * @example\n * ```ts\n * const chartClass = createComponentClasses('chart');\n * chartClass('root'); // => \"prism__chart__root\"\n * chartClass('loading'); // => \"prism__chart__loading\"\n * ```\n */\nexport function createComponentClasses(componentName: string): (suffix: string) => string;\n\n/**\n * Create a class name object for a specific component with predefined suffixes.\n *\n * @param componentName - Component name (e.g., \"chart\", \"button\")\n * @param suffixes - Array of class name suffixes\n * @returns Object mapping suffix names to prefixed class names\n *\n * @example\n * ```ts\n * const chartClasses = createComponentClasses('chart', ['root', 'loading', 'label'] as const);\n * chartClasses.root; // => \"prism__chart__root\"\n * chartClasses.loading; // => \"prism__chart__loading\"\n * ```\n */\nexport function createComponentClasses<T extends string>(\n componentName: string,\n suffixes: readonly T[]\n): Record<T, string>;\n\nexport function createComponentClasses<T extends string>(\n componentName: string,\n suffixes?: readonly T[]\n): ((suffix: string) => string) | Record<T, string> {\n if (suffixes) {\n return suffixes.reduce(\n (acc, suffix) => {\n acc[suffix] = createClasses(`${componentName}__${suffix}`);\n return acc;\n },\n {} as Record<T, string>\n );\n }\n return (suffix: string) => createClasses(`${componentName}__${suffix}`);\n}\n"]}
@@ -0,0 +1,13 @@
1
+ import { useEffect } from 'react';
2
+
3
+ // src/components/scroll-to-top/scroll-to-top.tsx
4
+ function ScrollToTop({ pathname }) {
5
+ useEffect(() => {
6
+ window.scrollTo(0, 0);
7
+ }, [pathname]);
8
+ return null;
9
+ }
10
+
11
+ export { ScrollToTop };
12
+ //# sourceMappingURL=chunk-NFJ7CPG3.js.map
13
+ //# sourceMappingURL=chunk-NFJ7CPG3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/components/scroll-to-top/scroll-to-top.tsx"],"names":[],"mappings":";;;AAqCO,SAAS,WAAA,CAAY,EAAE,QAAA,EAAS,EAAqB;AAC1D,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,MAAA,CAAO,QAAA,CAAS,GAAG,CAAC,CAAA;AAAA,EACtB,CAAA,EAAG,CAAC,QAAQ,CAAC,CAAA;AAEb,EAAA,OAAO,IAAA;AACT","file":"chunk-NFJ7CPG3.js","sourcesContent":["'use client';\n\n/**\n * ScrollToTop\n *\n * Scrolls the window to the top on pathname change.\n * Framework-agnostic: accepts `pathname` as a prop.\n *\n * @module components/scroll-to-top\n */\n\nimport { useEffect } from 'react';\n\nexport interface ScrollToTopProps {\n /** Current route pathname. Scrolls to top on change. */\n pathname: string;\n}\n\n/**\n * ScrollToTop - Restores scroll position to top on route change.\n *\n * @example\n * ```tsx\n * import { useLocation } from 'react-router-dom';\n * import { ScrollToTop } from '@omnitron-dev/prism';\n *\n * function App() {\n * const { pathname } = useLocation();\n * return (\n * <>\n * <ScrollToTop pathname={pathname} />\n * <Routes>...</Routes>\n * </>\n * );\n * }\n * ```\n */\nexport function ScrollToTop({ pathname }: ScrollToTopProps) {\n useEffect(() => {\n window.scrollTo(0, 0);\n }, [pathname]);\n\n return null;\n}\n"]}
@@ -0,0 +1,3 @@
1
+
2
+ //# sourceMappingURL=chunk-NFPOIHD4.js.map
3
+ //# sourceMappingURL=chunk-NFPOIHD4.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-AYYFMTMI.js","sourcesContent":[]}
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"chunk-NFPOIHD4.js"}
@@ -2,6 +2,7 @@ import { create } from 'zustand';
2
2
  import { devtools, persist } from 'zustand/middleware';
3
3
  import { immer } from 'zustand/middleware/immer';
4
4
 
5
+ // src/state/create-store.ts
5
6
  function createPrismStore(initializer, options) {
6
7
  const { name, persist: persistOption, devtools: devtoolsOption = true } = options;
7
8
  const enableDevtools = devtoolsOption && typeof window !== "undefined";
@@ -161,5 +162,5 @@ function getDefaultSettings() {
161
162
  }
162
163
 
163
164
  export { createPersistedStore, createPrismStore, createSelectors, createUIStore, getDefaultSettings, settingsStore, useSettingsStore };
164
- //# sourceMappingURL=chunk-XIXSSI3B.js.map
165
- //# sourceMappingURL=chunk-XIXSSI3B.js.map
165
+ //# sourceMappingURL=chunk-NJM5AVBM.js.map
166
+ //# sourceMappingURL=chunk-NJM5AVBM.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/state/create-store.ts","../src/state/stores/settings.ts"],"names":[],"mappings":"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","file":"chunk-NJM5AVBM.js","sourcesContent":["/**\n * Prism Store Factory\n *\n * Creates Zustand stores with sensible defaults:\n * - Immer middleware for immutable updates\n * - DevTools integration\n * - Optional persistence\n *\n * @module @omnitron-dev/prism/state\n */\n\nimport { create, type StateCreator, type StoreApi, type UseBoundStore } from 'zustand';\nimport { devtools, persist, type PersistOptions, type DevtoolsOptions } from 'zustand/middleware';\nimport { immer } from 'zustand/middleware/immer';\n\n/**\n * Options for creating a Prism store.\n */\nexport interface CreateStoreOptions<T> {\n /** Store name for DevTools and persistence */\n name: string;\n /** Enable persistence to localStorage */\n persist?: boolean | Partial<PersistOptions<T>>;\n /** Enable Redux DevTools (default: true in development) */\n devtools?: boolean;\n}\n\n/**\n * Middleware type helpers for proper typing.\n */\ntype ImmerMiddleware = ['zustand/immer', never];\n\n/**\n * Creates a Zustand store with Prism defaults.\n *\n * @example\n * ```typescript\n * interface CounterState {\n * count: number;\n * increment: () => void;\n * decrement: () => void;\n * }\n *\n * export const useCounterStore = createPrismStore<CounterState>(\n * (set) => ({\n * count: 0,\n * increment: () => set((state) => { state.count += 1; }),\n * decrement: () => set((state) => { state.count -= 1; }),\n * }),\n * { name: 'counter', persist: true }\n * );\n * ```\n */\n/**\n * A store that persists — the return type of `createPersistedStore`.\n *\n * Narrower than `createPrismStore`'s union: the `persist` API is guaranteed,\n * because this factory always installs the middleware.\n */\nexport type PersistedStore<T extends object> = UseBoundStore<StoreApi<T>> & {\n persist: {\n hasHydrated: () => boolean;\n rehydrate: () => Promise<void> | void;\n clearStorage: () => void;\n setOptions: (options: Partial<PersistOptions<T>>) => void;\n onHydrate: (fn: (state: T) => void) => () => void;\n onFinishHydration: (fn: (state: T) => void) => () => void;\n getOptions: () => Partial<PersistOptions<T>>;\n };\n};\n\nexport function createPrismStore<T extends object>(\n initializer: StateCreator<T, [ImmerMiddleware], []>,\n options: CreateStoreOptions<T>\n) {\n const { name, persist: persistOption, devtools: devtoolsOption = true } = options;\n const enableDevtools = devtoolsOption && typeof window !== 'undefined';\n\n // Prepare persist config\n const persistConfig: PersistOptions<T> | null = persistOption\n ? {\n name: `prism-${name}`,\n ...(typeof persistOption === 'object' ? persistOption : {}),\n }\n : null;\n\n // Prepare devtools config\n const devtoolsConfig: DevtoolsOptions = { name: `Prism:${name}` };\n\n // Create store based on which middleware are enabled\n // Using explicit middleware chains for proper type inference\n if (persistConfig && enableDevtools) {\n return create<T>()(devtools(persist(immer(initializer), persistConfig), devtoolsConfig));\n }\n\n if (persistConfig) {\n return create<T>()(persist(immer(initializer), persistConfig));\n }\n\n if (enableDevtools) {\n return create<T>()(devtools(immer(initializer), devtoolsConfig));\n }\n\n // No middleware except immer\n return create<T>()(immer(initializer));\n}\n\n/**\n * Creates a simple store without persistence (for UI-only state).\n */\nexport function createUIStore<T extends object>(initializer: StateCreator<T, [ImmerMiddleware], []>, name: string) {\n return createPrismStore(initializer, { name, persist: false });\n}\n\n/**\n * Merge a persisted state written under an older version into the current one.\n *\n * zustand's default when a version differs and no `migrate` is supplied is to\n * discard the stored state entirely and fall back to defaults — it logs\n * \"State loaded from storage couldn't be migrated since no migrate function\n * was provided\" to the console and moves on. In a browser that message is\n * seen by nobody, and what the user sees is their theme, layout, density and\n * language silently back at factory settings after an update that had nothing\n * to do with any of them.\n *\n * Discarding is the safe default for a library that cannot know what changed.\n * It is the wrong default here, because these stores hold preferences: the\n * cost of keeping a value that no longer means anything is one wrong setting,\n * and the cost of dropping everything is every setting.\n *\n * So: keep each stored key whose name still exists in the current defaults\n * AND whose type still matches. A field that was removed is dropped, a field\n * that changed shape is replaced by the new default, everything else\n * survives. A store needing more than that passes its own `migrate` — this\n * only fills in where none was given.\n */\nfunction mergeCompatibleFields<T extends object>(persisted: unknown, current: T): T {\n if (!persisted || typeof persisted !== 'object') return current;\n\n const stored = persisted as Record<string, unknown>;\n const merged = { ...current } as Record<string, unknown>;\n\n for (const [key, value] of Object.entries(stored)) {\n if (!(key in merged)) continue; // field is gone\n const currentValue = merged[key];\n if (typeof currentValue === 'function') continue; // actions are not state\n if (currentValue === undefined || currentValue === null) {\n merged[key] = value;\n continue;\n }\n if (value === null || value === undefined) continue; // keep the default\n // Same primitive type, or both plain objects / both arrays.\n const sameShape =\n typeof value === typeof currentValue &&\n Array.isArray(value) === Array.isArray(currentValue);\n if (sameShape) merged[key] = value;\n }\n\n return merged as T;\n}\n\n/**\n * Creates a persisted store (for settings, preferences).\n *\n * Includes a storage wrapper that catches errors from localStorage\n * (e.g., private browsing, quota exceeded) and falls back gracefully, and a\n * default `migrate` that preserves settings across a version bump — see\n * `mergeCompatibleFields`.\n */\nexport function createPersistedStore<T extends object>(\n initializer: StateCreator<T, [ImmerMiddleware], []>,\n name: string,\n persistOptions?: Partial<PersistOptions<T>>\n): PersistedStore<T> {\n // `createPrismStore` decides its middleware chain at runtime (devtools are\n // enabled only in a browser), so its return type is a union in which one\n // branch carries no `persist` API. This function always persists — the\n // whole of its contract — and callers need `persist.hasHydrated()` and\n // `persist.rehydrate()`. Stating the narrower type here is what makes\n // those reachable; without it a caller has to cast, which is how a store\n // that does not persist would look identical to one that does.\n return createPrismStore(initializer, {\n name,\n persist: {\n version: 1,\n // Two hooks, and both are needed. `migrate` runs only on a version\n // mismatch and decides whether the stored state survives at all —\n // returning it unchanged is what stops zustand discarding it. `merge`\n // runs every load and decides how it combines with the current\n // defaults; zustand's own is a shallow spread, which would let a\n // stored field of the wrong shape overwrite a good default.\n migrate: (persisted: unknown) => persisted as T,\n merge: (persisted: unknown, current: T) => mergeCompatibleFields(persisted, current),\n storage: {\n getItem: (key) => {\n try {\n const value = localStorage.getItem(key);\n return value ? JSON.parse(value) : null;\n } catch {\n return null;\n }\n },\n setItem: (key, value) => {\n try {\n localStorage.setItem(key, JSON.stringify(value));\n } catch {\n // Silently fail (private browsing, quota exceeded)\n }\n },\n removeItem: (key) => {\n try {\n localStorage.removeItem(key);\n } catch {\n // Silently fail\n }\n },\n },\n ...persistOptions,\n },\n }) as PersistedStore<T>;\n}\n\n/**\n * Selector type for store state.\n */\nexport type StoreSelector<T, U> = (state: T) => U;\n\n/**\n * Helper to create typed selectors for a store.\n *\n * @example\n * ```typescript\n * const selectors = createSelectors(useUserStore);\n * const userName = selectors.use.name();\n * ```\n */\nexport function createSelectors<T extends object>(store: UseBoundStore<StoreApi<T>>) {\n const storeIn = store as UseBoundStore<StoreApi<T>> & {\n use: { [K in keyof T]: () => T[K] };\n };\n\n // Use Proxy so selectors work for dynamically added state keys,\n // not just keys present at creation time\n storeIn.use = new Proxy({} as { [K in keyof T]: () => T[K] }, {\n get: (_target, prop: string | symbol) => {\n if (typeof prop !== 'string') return undefined;\n return () => store((state: T) => state[prop as keyof T]);\n },\n });\n\n return storeIn;\n}\n","/**\n * Settings Store\n *\n * Comprehensive settings management with persistence.\n * Combines theme preferences with layout and navigation settings.\n *\n * @module state/stores/settings\n */\n\nimport { createPersistedStore, createSelectors } from '../create-store.js';\nimport type { ThemePreset, ThemeMode, ThemeDirection, ComponentDensity } from '../../types/theme.js';\n\n// =============================================================================\n// TYPES\n// =============================================================================\n\n/**\n * Navigation layout options for dashboard.\n */\nexport type NavLayout = 'vertical' | 'horizontal' | 'mini';\n\n/**\n * Navigation color scheme.\n */\nexport type NavColor = 'integrate' | 'apparent';\n\n/**\n * Settings state and actions.\n */\nexport interface SettingsState {\n // Theme\n /** Current theme mode */\n mode: ThemeMode;\n /** Current theme preset */\n preset: ThemePreset;\n /** Primary color override (hex) */\n primaryColor: string | null;\n /** High contrast mode */\n contrast: 'default' | 'high';\n /** Text direction */\n direction: ThemeDirection;\n\n // Typography\n /** Base font size (12-20) */\n fontSize: number;\n /** Font family override */\n fontFamily: string | null;\n\n // Layout\n /** Component density */\n density: ComponentDensity;\n /** Compact sidebar (deprecated — use sidebarCollapsed) */\n compactSidebar: boolean;\n /** Per-layout sidebar collapsed state (keyed by persistKey) */\n sidebarCollapsed: Record<string, boolean>;\n /** Dashboard navigation layout */\n navLayout: NavLayout;\n /** Navigation color scheme */\n navColor: NavColor;\n /** Stretch content to full width */\n stretch: boolean;\n\n /** Per-table rows-per-page preference (keyed by table ID) */\n tableRowsPerPage: Record<string, number>;\n\n // Actions\n setMode: (mode: ThemeMode) => void;\n toggleMode: () => void;\n setPreset: (preset: ThemePreset) => void;\n setPrimaryColor: (color: string | null) => void;\n setContrast: (contrast: 'default' | 'high') => void;\n setDirection: (direction: ThemeDirection) => void;\n setFontSize: (size: number) => void;\n setFontFamily: (family: string | null) => void;\n setDensity: (density: ComponentDensity) => void;\n setCompactSidebar: (compact: boolean) => void;\n setSidebarCollapsed: (key: string, collapsed: boolean) => void;\n getSidebarCollapsed: (key: string) => boolean;\n setNavLayout: (layout: NavLayout) => void;\n setNavColor: (color: NavColor) => void;\n setStretch: (stretch: boolean) => void;\n setTableRowsPerPage: (tableId: string, rows: number) => void;\n getTableRowsPerPage: (tableId: string, fallback?: number) => number;\n updateSettings: (updates: Partial<SettingsValues>) => void;\n reset: () => void;\n canReset: () => boolean;\n}\n\n/**\n * Settings values (state without actions).\n */\nexport type SettingsValues = Omit<\n SettingsState,\n | 'setMode'\n | 'toggleMode'\n | 'setPreset'\n | 'setPrimaryColor'\n | 'setContrast'\n | 'setDirection'\n | 'setFontSize'\n | 'setFontFamily'\n | 'setDensity'\n | 'setCompactSidebar'\n | 'setSidebarCollapsed'\n | 'getSidebarCollapsed'\n | 'setNavLayout'\n | 'setNavColor'\n | 'setStretch'\n | 'setTableRowsPerPage'\n | 'getTableRowsPerPage'\n | 'updateSettings'\n | 'reset'\n | 'canReset'\n>;\n\n// =============================================================================\n// DEFAULT STATE\n// =============================================================================\n\nconst defaultSettings: SettingsValues = {\n // Theme\n mode: 'light',\n preset: 'default-light',\n primaryColor: null,\n contrast: 'default',\n direction: 'ltr',\n\n // Typography\n fontSize: 16,\n fontFamily: null, // null = use Prism default (Nunito Sans Variable)\n\n // Layout\n density: 'standard',\n compactSidebar: false,\n sidebarCollapsed: {},\n navLayout: 'vertical',\n navColor: 'integrate',\n stretch: true,\n tableRowsPerPage: {},\n};\n\n// =============================================================================\n// STORE\n// =============================================================================\n\n/**\n * Settings store with persistence.\n *\n * @example\n * ```tsx\n * function SettingsPanel() {\n * const { mode, setMode, preset, setPreset, canReset, reset } = useSettingsStore();\n *\n * return (\n * <div>\n * <Switch checked={mode === 'dark'} onChange={() => setMode(mode === 'dark' ? 'light' : 'dark')} />\n * <Select value={preset} onChange={(e) => setPreset(e.target.value as ThemePreset)}>\n * <MenuItem value=\"default-light\">Light</MenuItem>\n * <MenuItem value=\"luxury\">Luxury</MenuItem>\n * </Select>\n * {canReset() && <Button onClick={reset}>Reset</Button>}\n * </div>\n * );\n * }\n * ```\n */\nexport const useSettingsStore = createPersistedStore<SettingsState>(\n (set, get) => ({\n ...defaultSettings,\n\n // Theme actions\n setMode: (mode) => set({ mode }),\n toggleMode: () =>\n set((state) => {\n state.mode = state.mode === 'light' ? 'dark' : 'light';\n }),\n setPreset: (preset) => set({ preset }),\n setPrimaryColor: (primaryColor) => set({ primaryColor }),\n setContrast: (contrast) => set({ contrast }),\n setDirection: (direction) => set({ direction }),\n\n // Typography actions\n setFontSize: (fontSize) => set({ fontSize: Math.min(20, Math.max(12, fontSize)) }),\n setFontFamily: (fontFamily) => set({ fontFamily }),\n\n // Layout actions\n setDensity: (density) => set({ density }),\n setCompactSidebar: (compactSidebar) => set({ compactSidebar }),\n setSidebarCollapsed: (key, collapsed) =>\n set((state) => {\n state.sidebarCollapsed = { ...state.sidebarCollapsed, [key]: collapsed };\n }),\n getSidebarCollapsed: (key) => get().sidebarCollapsed[key] ?? false,\n setNavLayout: (navLayout) => set({ navLayout }),\n setNavColor: (navColor) => set({ navColor }),\n setStretch: (stretch) => set({ stretch }),\n setTableRowsPerPage: (tableId, rows) =>\n set((state) => {\n state.tableRowsPerPage = { ...state.tableRowsPerPage, [tableId]: rows };\n }),\n getTableRowsPerPage: (tableId, fallback = 25) => get().tableRowsPerPage[tableId] ?? fallback,\n\n // Batch update\n updateSettings: (updates) => set(updates),\n\n // Reset\n reset: () => set(defaultSettings),\n canReset: () => {\n const state = get();\n return Object.keys(defaultSettings).some(\n (key) => state[key as keyof SettingsValues] !== defaultSettings[key as keyof SettingsValues]\n );\n },\n }),\n 'settings'\n);\n\n/**\n * Settings store with auto-generated selectors.\n *\n * @example\n * ```tsx\n * const mode = settingsStore.use.mode();\n * const preset = settingsStore.use.preset();\n * ```\n */\nexport const settingsStore = createSelectors(useSettingsStore);\n\n/**\n * Get default settings values.\n */\nexport function getDefaultSettings(): SettingsValues {\n return { ...defaultSettings };\n}\n"]}