@jovertical/mise-design-system 0.0.0-stage → 1.1.0

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 (869) hide show
  1. package/LICENSE +21 -0
  2. package/LICENSES/shadcn-svelte.txt +23 -0
  3. package/LICENSES/shadcn-ui.txt +21 -0
  4. package/LICENSES/tailwindcss.txt +21 -0
  5. package/README.md +127 -2
  6. package/bin/mise-theme.js +12 -0
  7. package/dist/components/actions/button/button-variants.d.ts +37 -0
  8. package/dist/components/actions/button/button-variants.js +99 -0
  9. package/dist/components/actions/button/button.svelte +84 -0
  10. package/dist/components/actions/button/button.svelte.d.ts +17 -0
  11. package/dist/components/actions/button/index.d.ts +2 -0
  12. package/dist/components/actions/button/index.js +2 -0
  13. package/dist/components/actions/command/command-dialog.svelte +60 -0
  14. package/dist/components/actions/command/command-dialog.svelte.d.ts +17 -0
  15. package/dist/components/actions/command/command-empty.svelte +24 -0
  16. package/dist/components/actions/command/command-empty.svelte.d.ts +6 -0
  17. package/dist/components/actions/command/command-group.svelte +43 -0
  18. package/dist/components/actions/command/command-group.svelte.d.ts +8 -0
  19. package/dist/components/actions/command/command-input.svelte +38 -0
  20. package/dist/components/actions/command/command-input.svelte.d.ts +6 -0
  21. package/dist/components/actions/command/command-item.svelte +27 -0
  22. package/dist/components/actions/command/command-item.svelte.d.ts +6 -0
  23. package/dist/components/actions/command/command-list.svelte +24 -0
  24. package/dist/components/actions/command/command-list.svelte.d.ts +6 -0
  25. package/dist/components/actions/command/command-separator.svelte +24 -0
  26. package/dist/components/actions/command/command-separator.svelte.d.ts +6 -0
  27. package/dist/components/actions/command/command-shortcut.svelte +33 -0
  28. package/dist/components/actions/command/command-shortcut.svelte.d.ts +7 -0
  29. package/dist/components/actions/command/command.svelte +37 -0
  30. package/dist/components/actions/command/command.svelte.d.ts +10 -0
  31. package/dist/components/actions/command/index.d.ts +9 -0
  32. package/dist/components/actions/command/index.js +9 -0
  33. package/dist/components/actions/dropdown-menu/dropdown-menu-checkbox-item.svelte +52 -0
  34. package/dist/components/actions/dropdown-menu/dropdown-menu-checkbox-item.svelte.d.ts +9 -0
  35. package/dist/components/actions/dropdown-menu/dropdown-menu-content.svelte +38 -0
  36. package/dist/components/actions/dropdown-menu/dropdown-menu-content.svelte.d.ts +8 -0
  37. package/dist/components/actions/dropdown-menu/dropdown-menu-group.svelte +16 -0
  38. package/dist/components/actions/dropdown-menu/dropdown-menu-group.svelte.d.ts +5 -0
  39. package/dist/components/actions/dropdown-menu/dropdown-menu-item.svelte +39 -0
  40. package/dist/components/actions/dropdown-menu/dropdown-menu-item.svelte.d.ts +9 -0
  41. package/dist/components/actions/dropdown-menu/dropdown-menu-label.svelte +37 -0
  42. package/dist/components/actions/dropdown-menu/dropdown-menu-label.svelte.d.ts +8 -0
  43. package/dist/components/actions/dropdown-menu/dropdown-menu-portal.svelte +16 -0
  44. package/dist/components/actions/dropdown-menu/dropdown-menu-portal.svelte.d.ts +5 -0
  45. package/dist/components/actions/dropdown-menu/dropdown-menu-radio-group.svelte +25 -0
  46. package/dist/components/actions/dropdown-menu/dropdown-menu-radio-group.svelte.d.ts +5 -0
  47. package/dist/components/actions/dropdown-menu/dropdown-menu-radio-item.svelte +50 -0
  48. package/dist/components/actions/dropdown-menu/dropdown-menu-radio-item.svelte.d.ts +9 -0
  49. package/dist/components/actions/dropdown-menu/dropdown-menu-separator.svelte +23 -0
  50. package/dist/components/actions/dropdown-menu/dropdown-menu-separator.svelte.d.ts +5 -0
  51. package/dist/components/actions/dropdown-menu/dropdown-menu-shortcut.svelte +32 -0
  52. package/dist/components/actions/dropdown-menu/dropdown-menu-shortcut.svelte.d.ts +6 -0
  53. package/dist/components/actions/dropdown-menu/dropdown-menu-sub-content.svelte +26 -0
  54. package/dist/components/actions/dropdown-menu/dropdown-menu-sub-content.svelte.d.ts +5 -0
  55. package/dist/components/actions/dropdown-menu/dropdown-menu-sub-trigger.svelte +41 -0
  56. package/dist/components/actions/dropdown-menu/dropdown-menu-sub-trigger.svelte.d.ts +7 -0
  57. package/dist/components/actions/dropdown-menu/dropdown-menu-sub.svelte +16 -0
  58. package/dist/components/actions/dropdown-menu/dropdown-menu-sub.svelte.d.ts +5 -0
  59. package/dist/components/actions/dropdown-menu/dropdown-menu-trigger.svelte +16 -0
  60. package/dist/components/actions/dropdown-menu/dropdown-menu-trigger.svelte.d.ts +5 -0
  61. package/dist/components/actions/dropdown-menu/dropdown-menu.svelte +16 -0
  62. package/dist/components/actions/dropdown-menu/dropdown-menu.svelte.d.ts +5 -0
  63. package/dist/components/actions/dropdown-menu/index.d.ts +15 -0
  64. package/dist/components/actions/dropdown-menu/index.js +15 -0
  65. package/dist/components/actions/theme-toggle/index.d.ts +3 -0
  66. package/dist/components/actions/theme-toggle/index.js +3 -0
  67. package/dist/components/actions/theme-toggle/theme-provider.svelte +49 -0
  68. package/dist/components/actions/theme-toggle/theme-provider.svelte.d.ts +19 -0
  69. package/dist/components/actions/theme-toggle/theme-toggle.svelte +48 -0
  70. package/dist/components/actions/theme-toggle/theme-toggle.svelte.d.ts +13 -0
  71. package/dist/components/actions/theme-toggle/theme.svelte.d.ts +17 -0
  72. package/dist/components/actions/theme-toggle/theme.svelte.js +45 -0
  73. package/dist/components/data-display/avatar/avatar-fallback.svelte +29 -0
  74. package/dist/components/data-display/avatar/avatar-fallback.svelte.d.ts +6 -0
  75. package/dist/components/data-display/avatar/avatar-image.svelte +23 -0
  76. package/dist/components/data-display/avatar/avatar-image.svelte.d.ts +5 -0
  77. package/dist/components/data-display/avatar/avatar-status.svelte +48 -0
  78. package/dist/components/data-display/avatar/avatar-status.svelte.d.ts +16 -0
  79. package/dist/components/data-display/avatar/avatar.svelte +24 -0
  80. package/dist/components/data-display/avatar/avatar.svelte.d.ts +6 -0
  81. package/dist/components/data-display/avatar/index.d.ts +5 -0
  82. package/dist/components/data-display/avatar/index.js +5 -0
  83. package/dist/components/data-display/avatar/presence-dot.svelte +42 -0
  84. package/dist/components/data-display/avatar/presence-dot.svelte.d.ts +14 -0
  85. package/dist/components/data-display/badge/badge-variants.d.ts +6 -0
  86. package/dist/components/data-display/badge/badge-variants.js +53 -0
  87. package/dist/components/data-display/badge/badge.svelte +66 -0
  88. package/dist/components/data-display/badge/badge.svelte.d.ts +29 -0
  89. package/dist/components/data-display/badge/index.d.ts +2 -0
  90. package/dist/components/data-display/badge/index.js +2 -0
  91. package/dist/components/data-display/chart/chart-defaults.d.ts +22 -0
  92. package/dist/components/data-display/chart/chart-defaults.js +19 -0
  93. package/dist/components/data-display/chart/chart-style.svelte +49 -0
  94. package/dist/components/data-display/chart/chart-style.svelte.d.ts +9 -0
  95. package/dist/components/data-display/chart/chart-tooltip.svelte +201 -0
  96. package/dist/components/data-display/chart/chart-tooltip.svelte.d.ts +30 -0
  97. package/dist/components/data-display/chart/chart-utils.d.ts +42 -0
  98. package/dist/components/data-display/chart/chart-utils.js +42 -0
  99. package/dist/components/data-display/chart/chart.svelte +105 -0
  100. package/dist/components/data-display/chart/chart.svelte.d.ts +15 -0
  101. package/dist/components/data-display/chart/index.d.ts +5 -0
  102. package/dist/components/data-display/chart/index.js +5 -0
  103. package/dist/components/data-display/checklist/checklist-card.svelte +157 -0
  104. package/dist/components/data-display/checklist/checklist-card.svelte.d.ts +47 -0
  105. package/dist/components/data-display/checklist/checklist-row-heading.svelte +56 -0
  106. package/dist/components/data-display/checklist/checklist-row-heading.svelte.d.ts +10 -0
  107. package/dist/components/data-display/checklist/checklist-task-row.svelte +101 -0
  108. package/dist/components/data-display/checklist/checklist-task-row.svelte.d.ts +9 -0
  109. package/dist/components/data-display/checklist/checklist-types.d.ts +51 -0
  110. package/dist/components/data-display/checklist/checklist-types.js +6 -0
  111. package/dist/components/data-display/checklist/checklist.svelte +78 -0
  112. package/dist/components/data-display/checklist/checklist.svelte.d.ts +24 -0
  113. package/dist/components/data-display/checklist/index.d.ts +3 -0
  114. package/dist/components/data-display/checklist/index.js +2 -0
  115. package/dist/components/data-display/data-table/data-table-column-header.svelte +99 -0
  116. package/dist/components/data-display/data-table/data-table-column-header.svelte.d.ts +38 -0
  117. package/dist/components/data-display/data-table/data-table-column-toggle.svelte +68 -0
  118. package/dist/components/data-display/data-table/data-table-column-toggle.svelte.d.ts +33 -0
  119. package/dist/components/data-display/data-table/data-table-export-menu.svelte +93 -0
  120. package/dist/components/data-display/data-table/data-table-export-menu.svelte.d.ts +18 -0
  121. package/dist/components/data-display/data-table/data-table-faceted-filter.svelte +133 -0
  122. package/dist/components/data-display/data-table/data-table-faceted-filter.svelte.d.ts +50 -0
  123. package/dist/components/data-display/data-table/data-table-row-actions.svelte +79 -0
  124. package/dist/components/data-display/data-table/data-table-row-actions.svelte.d.ts +28 -0
  125. package/dist/components/data-display/data-table/data-table-toolbar.svelte +180 -0
  126. package/dist/components/data-display/data-table/data-table-toolbar.svelte.d.ts +70 -0
  127. package/dist/components/data-display/data-table/data-table-view-toggle.svelte +39 -0
  128. package/dist/components/data-display/data-table/data-table-view-toggle.svelte.d.ts +12 -0
  129. package/dist/components/data-display/data-table/data-table.svelte +468 -0
  130. package/dist/components/data-display/data-table/data-table.svelte.d.ts +103 -0
  131. package/dist/components/data-display/data-table/features.d.ts +51 -0
  132. package/dist/components/data-display/data-table/features.js +27 -0
  133. package/dist/components/data-display/data-table/index.d.ts +9 -0
  134. package/dist/components/data-display/data-table/index.js +9 -0
  135. package/dist/components/data-display/delta-badge/delta-badge.svelte +87 -0
  136. package/dist/components/data-display/delta-badge/delta-badge.svelte.d.ts +39 -0
  137. package/dist/components/data-display/delta-badge/index.d.ts +1 -0
  138. package/dist/components/data-display/delta-badge/index.js +1 -0
  139. package/dist/components/data-display/entity-label/entity-label.svelte +77 -0
  140. package/dist/components/data-display/entity-label/entity-label.svelte.d.ts +33 -0
  141. package/dist/components/data-display/entity-label/index.d.ts +1 -0
  142. package/dist/components/data-display/entity-label/index.js +1 -0
  143. package/dist/components/data-display/fact-list/fact-list-item.svelte +113 -0
  144. package/dist/components/data-display/fact-list/fact-list-item.svelte.d.ts +43 -0
  145. package/dist/components/data-display/fact-list/fact-list.svelte +48 -0
  146. package/dist/components/data-display/fact-list/fact-list.svelte.d.ts +21 -0
  147. package/dist/components/data-display/fact-list/index.d.ts +2 -0
  148. package/dist/components/data-display/fact-list/index.js +2 -0
  149. package/dist/components/data-display/icon-chip/icon-chip-variants.d.ts +21 -0
  150. package/dist/components/data-display/icon-chip/icon-chip-variants.js +44 -0
  151. package/dist/components/data-display/icon-chip/icon-chip.svelte +53 -0
  152. package/dist/components/data-display/icon-chip/icon-chip.svelte.d.ts +23 -0
  153. package/dist/components/data-display/icon-chip/index.d.ts +2 -0
  154. package/dist/components/data-display/icon-chip/index.js +2 -0
  155. package/dist/components/data-display/item/index.d.ts +11 -0
  156. package/dist/components/data-display/item/index.js +11 -0
  157. package/dist/components/data-display/item/item-actions.svelte +27 -0
  158. package/dist/components/data-display/item/item-actions.svelte.d.ts +6 -0
  159. package/dist/components/data-display/item/item-content.svelte +27 -0
  160. package/dist/components/data-display/item/item-content.svelte.d.ts +6 -0
  161. package/dist/components/data-display/item/item-description.svelte +39 -0
  162. package/dist/components/data-display/item/item-description.svelte.d.ts +7 -0
  163. package/dist/components/data-display/item/item-footer.svelte +27 -0
  164. package/dist/components/data-display/item/item-footer.svelte.d.ts +6 -0
  165. package/dist/components/data-display/item/item-group.svelte +34 -0
  166. package/dist/components/data-display/item/item-group.svelte.d.ts +11 -0
  167. package/dist/components/data-display/item/item-header.svelte +27 -0
  168. package/dist/components/data-display/item/item-header.svelte.d.ts +6 -0
  169. package/dist/components/data-display/item/item-media.svelte +63 -0
  170. package/dist/components/data-display/item/item-media.svelte.d.ts +23 -0
  171. package/dist/components/data-display/item/item-separator.svelte +25 -0
  172. package/dist/components/data-display/item/item-separator.svelte.d.ts +5 -0
  173. package/dist/components/data-display/item/item-title.svelte +27 -0
  174. package/dist/components/data-display/item/item-title.svelte.d.ts +6 -0
  175. package/dist/components/data-display/item/item-variants.d.ts +17 -0
  176. package/dist/components/data-display/item/item-variants.js +37 -0
  177. package/dist/components/data-display/item/item.svelte +70 -0
  178. package/dist/components/data-display/item/item.svelte.d.ts +30 -0
  179. package/dist/components/data-display/metric-bar/index.d.ts +2 -0
  180. package/dist/components/data-display/metric-bar/index.js +2 -0
  181. package/dist/components/data-display/metric-bar/metric-bar.svelte +122 -0
  182. package/dist/components/data-display/metric-bar/metric-bar.svelte.d.ts +41 -0
  183. package/dist/components/data-display/metric-bar/metric-rank.svelte +33 -0
  184. package/dist/components/data-display/metric-bar/metric-rank.svelte.d.ts +12 -0
  185. package/dist/components/data-display/metric-grid/index.d.ts +1 -0
  186. package/dist/components/data-display/metric-grid/index.js +1 -0
  187. package/dist/components/data-display/metric-grid/metric-grid.svelte +66 -0
  188. package/dist/components/data-display/metric-grid/metric-grid.svelte.d.ts +35 -0
  189. package/dist/components/data-display/metric-row/index.d.ts +1 -0
  190. package/dist/components/data-display/metric-row/index.js +1 -0
  191. package/dist/components/data-display/metric-row/metric-row.svelte +175 -0
  192. package/dist/components/data-display/metric-row/metric-row.svelte.d.ts +58 -0
  193. package/dist/components/data-display/radial-stat/index.d.ts +1 -0
  194. package/dist/components/data-display/radial-stat/index.js +1 -0
  195. package/dist/components/data-display/radial-stat/radial-stat.svelte +113 -0
  196. package/dist/components/data-display/radial-stat/radial-stat.svelte.d.ts +35 -0
  197. package/dist/components/data-display/readiness/index.d.ts +3 -0
  198. package/dist/components/data-display/readiness/index.js +3 -0
  199. package/dist/components/data-display/readiness/readiness-summarise.d.ts +40 -0
  200. package/dist/components/data-display/readiness/readiness-summarise.js +25 -0
  201. package/dist/components/data-display/readiness/readiness-summary.svelte +65 -0
  202. package/dist/components/data-display/readiness/readiness-summary.svelte.d.ts +19 -0
  203. package/dist/components/data-display/readiness/readiness.svelte +102 -0
  204. package/dist/components/data-display/readiness/readiness.svelte.d.ts +22 -0
  205. package/dist/components/data-display/segmented-bar/index.d.ts +1 -0
  206. package/dist/components/data-display/segmented-bar/index.js +1 -0
  207. package/dist/components/data-display/segmented-bar/segmented-bar.svelte +116 -0
  208. package/dist/components/data-display/segmented-bar/segmented-bar.svelte.d.ts +34 -0
  209. package/dist/components/data-display/segmented-code/index.d.ts +1 -0
  210. package/dist/components/data-display/segmented-code/index.js +1 -0
  211. package/dist/components/data-display/segmented-code/segmented-code.svelte +84 -0
  212. package/dist/components/data-display/segmented-code/segmented-code.svelte.d.ts +27 -0
  213. package/dist/components/data-display/sparkline/index.d.ts +1 -0
  214. package/dist/components/data-display/sparkline/index.js +1 -0
  215. package/dist/components/data-display/sparkline/sparkline.svelte +98 -0
  216. package/dist/components/data-display/sparkline/sparkline.svelte.d.ts +22 -0
  217. package/dist/components/data-display/stat-tile/index.d.ts +1 -0
  218. package/dist/components/data-display/stat-tile/index.js +1 -0
  219. package/dist/components/data-display/stat-tile/stat-tile.svelte +328 -0
  220. package/dist/components/data-display/stat-tile/stat-tile.svelte.d.ts +125 -0
  221. package/dist/components/data-display/table/context.d.ts +2 -0
  222. package/dist/components/data-display/table/context.js +16 -0
  223. package/dist/components/data-display/table/index.d.ts +8 -0
  224. package/dist/components/data-display/table/index.js +8 -0
  225. package/dist/components/data-display/table/table-body.svelte +28 -0
  226. package/dist/components/data-display/table/table-body.svelte.d.ts +7 -0
  227. package/dist/components/data-display/table/table-caption.svelte +28 -0
  228. package/dist/components/data-display/table/table-caption.svelte.d.ts +7 -0
  229. package/dist/components/data-display/table/table-cell.svelte +45 -0
  230. package/dist/components/data-display/table/table-cell.svelte.d.ts +9 -0
  231. package/dist/components/data-display/table/table-footer.svelte +28 -0
  232. package/dist/components/data-display/table/table-footer.svelte.d.ts +7 -0
  233. package/dist/components/data-display/table/table-head.svelte +54 -0
  234. package/dist/components/data-display/table/table-head.svelte.d.ts +15 -0
  235. package/dist/components/data-display/table/table-header.svelte +28 -0
  236. package/dist/components/data-display/table/table-header.svelte.d.ts +7 -0
  237. package/dist/components/data-display/table/table-row.svelte +31 -0
  238. package/dist/components/data-display/table/table-row.svelte.d.ts +7 -0
  239. package/dist/components/data-display/table/table.svelte +47 -0
  240. package/dist/components/data-display/table/table.svelte.d.ts +14 -0
  241. package/dist/components/data-display/timeline/index.d.ts +8 -0
  242. package/dist/components/data-display/timeline/index.js +8 -0
  243. package/dist/components/data-display/timeline/timeline-connector.svelte +33 -0
  244. package/dist/components/data-display/timeline/timeline-connector.svelte.d.ts +11 -0
  245. package/dist/components/data-display/timeline/timeline-content.svelte +35 -0
  246. package/dist/components/data-display/timeline/timeline-content.svelte.d.ts +7 -0
  247. package/dist/components/data-display/timeline/timeline-dot.svelte +57 -0
  248. package/dist/components/data-display/timeline/timeline-dot.svelte.d.ts +21 -0
  249. package/dist/components/data-display/timeline/timeline-item.svelte +26 -0
  250. package/dist/components/data-display/timeline/timeline-item.svelte.d.ts +6 -0
  251. package/dist/components/data-display/timeline/timeline-skeleton.svelte +43 -0
  252. package/dist/components/data-display/timeline/timeline-skeleton.svelte.d.ts +9 -0
  253. package/dist/components/data-display/timeline/timeline-title.svelte +30 -0
  254. package/dist/components/data-display/timeline/timeline-title.svelte.d.ts +7 -0
  255. package/dist/components/data-display/timeline/timeline-variants.d.ts +12 -0
  256. package/dist/components/data-display/timeline/timeline-variants.js +34 -0
  257. package/dist/components/data-display/timeline/timeline.svelte +38 -0
  258. package/dist/components/data-display/timeline/timeline.svelte.d.ts +18 -0
  259. package/dist/components/data-display/tree-leaf/index.d.ts +1 -0
  260. package/dist/components/data-display/tree-leaf/index.js +1 -0
  261. package/dist/components/data-display/tree-leaf/tree-leaf.svelte +87 -0
  262. package/dist/components/data-display/tree-leaf/tree-leaf.svelte.d.ts +30 -0
  263. package/dist/components/feedback/alert/alert-action.svelte +36 -0
  264. package/dist/components/feedback/alert/alert-action.svelte.d.ts +11 -0
  265. package/dist/components/feedback/alert/alert-description.svelte +38 -0
  266. package/dist/components/feedback/alert/alert-description.svelte.d.ts +9 -0
  267. package/dist/components/feedback/alert/alert-title.svelte +30 -0
  268. package/dist/components/feedback/alert/alert-title.svelte.d.ts +9 -0
  269. package/dist/components/feedback/alert/alert-variants.d.ts +11 -0
  270. package/dist/components/feedback/alert/alert-variants.js +26 -0
  271. package/dist/components/feedback/alert/alert.svelte +38 -0
  272. package/dist/components/feedback/alert/alert.svelte.d.ts +15 -0
  273. package/dist/components/feedback/alert/index.d.ts +5 -0
  274. package/dist/components/feedback/alert/index.js +5 -0
  275. package/dist/components/feedback/empty/empty-content.svelte +30 -0
  276. package/dist/components/feedback/empty/empty-content.svelte.d.ts +6 -0
  277. package/dist/components/feedback/empty/empty-description.svelte +35 -0
  278. package/dist/components/feedback/empty/empty-description.svelte.d.ts +6 -0
  279. package/dist/components/feedback/empty/empty-header.svelte +27 -0
  280. package/dist/components/feedback/empty/empty-header.svelte.d.ts +6 -0
  281. package/dist/components/feedback/empty/empty-media.svelte +43 -0
  282. package/dist/components/feedback/empty/empty-media.svelte.d.ts +14 -0
  283. package/dist/components/feedback/empty/empty-title.svelte +27 -0
  284. package/dist/components/feedback/empty/empty-title.svelte.d.ts +6 -0
  285. package/dist/components/feedback/empty/empty-variants.d.ts +10 -0
  286. package/dist/components/feedback/empty/empty-variants.js +20 -0
  287. package/dist/components/feedback/empty/empty.svelte +36 -0
  288. package/dist/components/feedback/empty/empty.svelte.d.ts +11 -0
  289. package/dist/components/feedback/empty/index.d.ts +7 -0
  290. package/dist/components/feedback/empty/index.js +7 -0
  291. package/dist/components/feedback/empty-state/empty-state.svelte +45 -0
  292. package/dist/components/feedback/empty-state/empty-state.svelte.d.ts +19 -0
  293. package/dist/components/feedback/empty-state/index.d.ts +1 -0
  294. package/dist/components/feedback/empty-state/index.js +1 -0
  295. package/dist/components/feedback/error-state/error-state.svelte +102 -0
  296. package/dist/components/feedback/error-state/error-state.svelte.d.ts +37 -0
  297. package/dist/components/feedback/error-state/index.d.ts +1 -0
  298. package/dist/components/feedback/error-state/index.js +1 -0
  299. package/dist/components/feedback/feature-preview/feature-preview.svelte +102 -0
  300. package/dist/components/feedback/feature-preview/feature-preview.svelte.d.ts +34 -0
  301. package/dist/components/feedback/feature-preview/index.d.ts +1 -0
  302. package/dist/components/feedback/feature-preview/index.js +1 -0
  303. package/dist/components/feedback/loading-state/index.d.ts +1 -0
  304. package/dist/components/feedback/loading-state/index.js +1 -0
  305. package/dist/components/feedback/loading-state/loading-state.svelte +48 -0
  306. package/dist/components/feedback/loading-state/loading-state.svelte.d.ts +18 -0
  307. package/dist/components/feedback/locked-overlay/index.d.ts +1 -0
  308. package/dist/components/feedback/locked-overlay/index.js +1 -0
  309. package/dist/components/feedback/locked-overlay/locked-overlay.svelte +77 -0
  310. package/dist/components/feedback/locked-overlay/locked-overlay.svelte.d.ts +31 -0
  311. package/dist/components/feedback/navigation-progress/index.d.ts +1 -0
  312. package/dist/components/feedback/navigation-progress/index.js +1 -0
  313. package/dist/components/feedback/navigation-progress/navigation-progress.svelte +93 -0
  314. package/dist/components/feedback/navigation-progress/navigation-progress.svelte.d.ts +20 -0
  315. package/dist/components/feedback/progress/index.d.ts +1 -0
  316. package/dist/components/feedback/progress/index.js +1 -0
  317. package/dist/components/feedback/progress/progress.svelte +48 -0
  318. package/dist/components/feedback/progress/progress.svelte.d.ts +12 -0
  319. package/dist/components/feedback/skeleton/index.d.ts +1 -0
  320. package/dist/components/feedback/skeleton/index.js +1 -0
  321. package/dist/components/feedback/skeleton/skeleton.svelte +33 -0
  322. package/dist/components/feedback/skeleton/skeleton.svelte.d.ts +10 -0
  323. package/dist/components/feedback/sonner/index.d.ts +2 -0
  324. package/dist/components/feedback/sonner/index.js +2 -0
  325. package/dist/components/feedback/sonner/sonner.svelte +87 -0
  326. package/dist/components/feedback/sonner/sonner.svelte.d.ts +6 -0
  327. package/dist/components/feedback/spinner/index.d.ts +1 -0
  328. package/dist/components/feedback/spinner/index.js +1 -0
  329. package/dist/components/feedback/spinner/spinner.svelte +50 -0
  330. package/dist/components/feedback/spinner/spinner.svelte.d.ts +17 -0
  331. package/dist/components/forms/button-group/button-group-separator.svelte +31 -0
  332. package/dist/components/forms/button-group/button-group-separator.svelte.d.ts +6 -0
  333. package/dist/components/forms/button-group/button-group-text.svelte +46 -0
  334. package/dist/components/forms/button-group/button-group-text.svelte.d.ts +12 -0
  335. package/dist/components/forms/button-group/button-group-variants.d.ts +13 -0
  336. package/dist/components/forms/button-group/button-group-variants.js +20 -0
  337. package/dist/components/forms/button-group/button-group.svelte +46 -0
  338. package/dist/components/forms/button-group/button-group.svelte.d.ts +14 -0
  339. package/dist/components/forms/button-group/index.d.ts +4 -0
  340. package/dist/components/forms/button-group/index.js +4 -0
  341. package/dist/components/forms/calendar/calendar-caption.svelte +103 -0
  342. package/dist/components/forms/calendar/calendar-caption.svelte.d.ts +16 -0
  343. package/dist/components/forms/calendar/calendar-classes.d.ts +23 -0
  344. package/dist/components/forms/calendar/calendar-classes.js +36 -0
  345. package/dist/components/forms/calendar/calendar.svelte +120 -0
  346. package/dist/components/forms/calendar/calendar.svelte.d.ts +21 -0
  347. package/dist/components/forms/calendar/index.d.ts +3 -0
  348. package/dist/components/forms/calendar/index.js +2 -0
  349. package/dist/components/forms/calendar/range-calendar.svelte +114 -0
  350. package/dist/components/forms/calendar/range-calendar.svelte.d.ts +18 -0
  351. package/dist/components/forms/checkbox/checkbox.svelte +55 -0
  352. package/dist/components/forms/checkbox/checkbox.svelte.d.ts +6 -0
  353. package/dist/components/forms/checkbox/index.d.ts +1 -0
  354. package/dist/components/forms/checkbox/index.js +1 -0
  355. package/dist/components/forms/choice-row/choice-row-readonly.svelte +56 -0
  356. package/dist/components/forms/choice-row/choice-row-readonly.svelte.d.ts +17 -0
  357. package/dist/components/forms/choice-row/choice-row.svelte +129 -0
  358. package/dist/components/forms/choice-row/choice-row.svelte.d.ts +53 -0
  359. package/dist/components/forms/choice-row/index.d.ts +2 -0
  360. package/dist/components/forms/choice-row/index.js +2 -0
  361. package/dist/components/forms/combobox/combobox-chip.svelte +65 -0
  362. package/dist/components/forms/combobox/combobox-chip.svelte.d.ts +14 -0
  363. package/dist/components/forms/combobox/combobox-chips-input.svelte +23 -0
  364. package/dist/components/forms/combobox/combobox-chips-input.svelte.d.ts +6 -0
  365. package/dist/components/forms/combobox/combobox-chips.svelte +35 -0
  366. package/dist/components/forms/combobox/combobox-chips.svelte.d.ts +10 -0
  367. package/dist/components/forms/combobox/combobox-content.svelte +52 -0
  368. package/dist/components/forms/combobox/combobox-content.svelte.d.ts +11 -0
  369. package/dist/components/forms/combobox/combobox-context.d.ts +6 -0
  370. package/dist/components/forms/combobox/combobox-context.js +9 -0
  371. package/dist/components/forms/combobox/combobox-empty.svelte +28 -0
  372. package/dist/components/forms/combobox/combobox-empty.svelte.d.ts +6 -0
  373. package/dist/components/forms/combobox/combobox-group.svelte +15 -0
  374. package/dist/components/forms/combobox/combobox-group.svelte.d.ts +5 -0
  375. package/dist/components/forms/combobox/combobox-input.svelte +98 -0
  376. package/dist/components/forms/combobox/combobox-input.svelte.d.ts +16 -0
  377. package/dist/components/forms/combobox/combobox-item.svelte +61 -0
  378. package/dist/components/forms/combobox/combobox-item.svelte.d.ts +9 -0
  379. package/dist/components/forms/combobox/combobox-label.svelte +25 -0
  380. package/dist/components/forms/combobox/combobox-label.svelte.d.ts +5 -0
  381. package/dist/components/forms/combobox/combobox-list.svelte +27 -0
  382. package/dist/components/forms/combobox/combobox-list.svelte.d.ts +5 -0
  383. package/dist/components/forms/combobox/combobox-separator.svelte +22 -0
  384. package/dist/components/forms/combobox/combobox-separator.svelte.d.ts +5 -0
  385. package/dist/components/forms/combobox/combobox-trigger.svelte +36 -0
  386. package/dist/components/forms/combobox/combobox-trigger.svelte.d.ts +6 -0
  387. package/dist/components/forms/combobox/combobox.svelte +49 -0
  388. package/dist/components/forms/combobox/combobox.svelte.d.ts +23 -0
  389. package/dist/components/forms/combobox/index.d.ts +13 -0
  390. package/dist/components/forms/combobox/index.js +13 -0
  391. package/dist/components/forms/date-picker/date-picker.svelte +149 -0
  392. package/dist/components/forms/date-picker/date-picker.svelte.d.ts +45 -0
  393. package/dist/components/forms/date-picker/index.d.ts +1 -0
  394. package/dist/components/forms/date-picker/index.js +1 -0
  395. package/dist/components/forms/field/field-content.svelte +27 -0
  396. package/dist/components/forms/field/field-content.svelte.d.ts +6 -0
  397. package/dist/components/forms/field/field-description.svelte +40 -0
  398. package/dist/components/forms/field/field-description.svelte.d.ts +6 -0
  399. package/dist/components/forms/field/field-error.svelte +57 -0
  400. package/dist/components/forms/field/field-error.svelte.d.ts +15 -0
  401. package/dist/components/forms/field/field-group.svelte +30 -0
  402. package/dist/components/forms/field/field-group.svelte.d.ts +6 -0
  403. package/dist/components/forms/field/field-label.svelte +49 -0
  404. package/dist/components/forms/field/field-label.svelte.d.ts +12 -0
  405. package/dist/components/forms/field/field-legend.svelte +44 -0
  406. package/dist/components/forms/field/field-legend.svelte.d.ts +8 -0
  407. package/dist/components/forms/field/field-separator.svelte +37 -0
  408. package/dist/components/forms/field/field-separator.svelte.d.ts +6 -0
  409. package/dist/components/forms/field/field-set.svelte +31 -0
  410. package/dist/components/forms/field/field-set.svelte.d.ts +6 -0
  411. package/dist/components/forms/field/field-title.svelte +30 -0
  412. package/dist/components/forms/field/field-title.svelte.d.ts +6 -0
  413. package/dist/components/forms/field/field-variants.d.ts +10 -0
  414. package/dist/components/forms/field/field-variants.js +26 -0
  415. package/dist/components/forms/field/field.svelte +45 -0
  416. package/dist/components/forms/field/field.svelte.d.ts +14 -0
  417. package/dist/components/forms/field/index.d.ts +11 -0
  418. package/dist/components/forms/field/index.js +11 -0
  419. package/dist/components/forms/form/form-button.svelte +19 -0
  420. package/dist/components/forms/form/form-button.svelte.d.ts +6 -0
  421. package/dist/components/forms/form/form-description.svelte +28 -0
  422. package/dist/components/forms/form/form-description.svelte.d.ts +7 -0
  423. package/dist/components/forms/form/form-element-field.svelte +47 -0
  424. package/dist/components/forms/form/form-element-field.svelte.d.ts +35 -0
  425. package/dist/components/forms/form/form-field-errors.svelte +48 -0
  426. package/dist/components/forms/form/form-field-errors.svelte.d.ts +9 -0
  427. package/dist/components/forms/form/form-field.svelte +56 -0
  428. package/dist/components/forms/form/form-field.svelte.d.ts +42 -0
  429. package/dist/components/forms/form/form-fieldset.svelte +41 -0
  430. package/dist/components/forms/form/form-fieldset.svelte.d.ts +29 -0
  431. package/dist/components/forms/form/form-label.svelte +47 -0
  432. package/dist/components/forms/form/form-label.svelte.d.ts +10 -0
  433. package/dist/components/forms/form/form-legend.svelte +28 -0
  434. package/dist/components/forms/form/form-legend.svelte.d.ts +7 -0
  435. package/dist/components/forms/form/form-types.d.ts +13 -0
  436. package/dist/components/forms/form/form-types.js +1 -0
  437. package/dist/components/forms/form/form.svelte +38 -0
  438. package/dist/components/forms/form/form.svelte.d.ts +38 -0
  439. package/dist/components/forms/form/index.d.ts +11 -0
  440. package/dist/components/forms/form/index.js +10 -0
  441. package/dist/components/forms/input/index.d.ts +1 -0
  442. package/dist/components/forms/input/index.js +1 -0
  443. package/dist/components/forms/input/input.svelte +58 -0
  444. package/dist/components/forms/input/input.svelte.d.ts +13 -0
  445. package/dist/components/forms/input-group/index.d.ts +7 -0
  446. package/dist/components/forms/input-group/index.js +7 -0
  447. package/dist/components/forms/input-group/input-group-addon.svelte +51 -0
  448. package/dist/components/forms/input-group/input-group-addon.svelte.d.ts +10 -0
  449. package/dist/components/forms/input-group/input-group-button.svelte +39 -0
  450. package/dist/components/forms/input-group/input-group-button.svelte.d.ts +8 -0
  451. package/dist/components/forms/input-group/input-group-input.svelte +33 -0
  452. package/dist/components/forms/input-group/input-group-input.svelte.d.ts +5 -0
  453. package/dist/components/forms/input-group/input-group-text.svelte +30 -0
  454. package/dist/components/forms/input-group/input-group-text.svelte.d.ts +7 -0
  455. package/dist/components/forms/input-group/input-group-textarea.svelte +39 -0
  456. package/dist/components/forms/input-group/input-group-textarea.svelte.d.ts +11 -0
  457. package/dist/components/forms/input-group/input-group-variants.d.ts +14 -0
  458. package/dist/components/forms/input-group/input-group-variants.js +32 -0
  459. package/dist/components/forms/input-group/input-group.svelte +44 -0
  460. package/dist/components/forms/input-group/input-group.svelte.d.ts +11 -0
  461. package/dist/components/forms/input-otp/index.d.ts +4 -0
  462. package/dist/components/forms/input-otp/index.js +4 -0
  463. package/dist/components/forms/input-otp/input-otp-group.svelte +40 -0
  464. package/dist/components/forms/input-otp/input-otp-group.svelte.d.ts +12 -0
  465. package/dist/components/forms/input-otp/input-otp-separator.svelte +28 -0
  466. package/dist/components/forms/input-otp/input-otp-separator.svelte.d.ts +6 -0
  467. package/dist/components/forms/input-otp/input-otp-slot.svelte +56 -0
  468. package/dist/components/forms/input-otp/input-otp-slot.svelte.d.ts +8 -0
  469. package/dist/components/forms/input-otp/input-otp.svelte +40 -0
  470. package/dist/components/forms/input-otp/input-otp.svelte.d.ts +10 -0
  471. package/dist/components/forms/label/index.d.ts +1 -0
  472. package/dist/components/forms/label/index.js +1 -0
  473. package/dist/components/forms/label/label.svelte +26 -0
  474. package/dist/components/forms/label/label.svelte.d.ts +5 -0
  475. package/dist/components/forms/media-dropzone/index.d.ts +2 -0
  476. package/dist/components/forms/media-dropzone/index.js +1 -0
  477. package/dist/components/forms/media-dropzone/media-dropzone.svelte +248 -0
  478. package/dist/components/forms/media-dropzone/media-dropzone.svelte.d.ts +42 -0
  479. package/dist/components/forms/media-dropzone/media-uploader.svelte.d.ts +81 -0
  480. package/dist/components/forms/media-dropzone/media-uploader.svelte.js +177 -0
  481. package/dist/components/forms/number-input/index.d.ts +3 -0
  482. package/dist/components/forms/number-input/index.js +2 -0
  483. package/dist/components/forms/number-input/number-input-field.svelte +157 -0
  484. package/dist/components/forms/number-input/number-input-field.svelte.d.ts +21 -0
  485. package/dist/components/forms/number-input/number-input-math.d.ts +21 -0
  486. package/dist/components/forms/number-input/number-input-math.js +43 -0
  487. package/dist/components/forms/number-input/number-input.svelte +175 -0
  488. package/dist/components/forms/number-input/number-input.svelte.d.ts +53 -0
  489. package/dist/components/forms/quantity-input/index.d.ts +1 -0
  490. package/dist/components/forms/quantity-input/index.js +1 -0
  491. package/dist/components/forms/quantity-input/quantity-input.svelte +262 -0
  492. package/dist/components/forms/quantity-input/quantity-input.svelte.d.ts +75 -0
  493. package/dist/components/forms/radio-group/index.d.ts +2 -0
  494. package/dist/components/forms/radio-group/index.js +2 -0
  495. package/dist/components/forms/radio-group/radio-group-item.svelte +41 -0
  496. package/dist/components/forms/radio-group/radio-group-item.svelte.d.ts +6 -0
  497. package/dist/components/forms/radio-group/radio-group.svelte +30 -0
  498. package/dist/components/forms/radio-group/radio-group.svelte.d.ts +5 -0
  499. package/dist/components/forms/select/index.d.ts +10 -0
  500. package/dist/components/forms/select/index.js +10 -0
  501. package/dist/components/forms/select/select-content.svelte +53 -0
  502. package/dist/components/forms/select/select-content.svelte.d.ts +9 -0
  503. package/dist/components/forms/select/select-group.svelte +16 -0
  504. package/dist/components/forms/select/select-group.svelte.d.ts +5 -0
  505. package/dist/components/forms/select/select-item.svelte +67 -0
  506. package/dist/components/forms/select/select-item.svelte.d.ts +13 -0
  507. package/dist/components/forms/select/select-label.svelte +23 -0
  508. package/dist/components/forms/select/select-label.svelte.d.ts +5 -0
  509. package/dist/components/forms/select/select-scroll-down-button.svelte +30 -0
  510. package/dist/components/forms/select/select-scroll-down-button.svelte.d.ts +6 -0
  511. package/dist/components/forms/select/select-scroll-up-button.svelte +30 -0
  512. package/dist/components/forms/select/select-scroll-up-button.svelte.d.ts +6 -0
  513. package/dist/components/forms/select/select-separator.svelte +26 -0
  514. package/dist/components/forms/select/select-separator.svelte.d.ts +6 -0
  515. package/dist/components/forms/select/select-trigger.svelte +48 -0
  516. package/dist/components/forms/select/select-trigger.svelte.d.ts +14 -0
  517. package/dist/components/forms/select/select-value.svelte +16 -0
  518. package/dist/components/forms/select/select-value.svelte.d.ts +5 -0
  519. package/dist/components/forms/select/select.svelte +33 -0
  520. package/dist/components/forms/select/select.svelte.d.ts +20 -0
  521. package/dist/components/forms/switch/index.d.ts +1 -0
  522. package/dist/components/forms/switch/index.js +1 -0
  523. package/dist/components/forms/switch/switch.svelte +41 -0
  524. package/dist/components/forms/switch/switch.svelte.d.ts +7 -0
  525. package/dist/components/forms/switch-field/index.d.ts +1 -0
  526. package/dist/components/forms/switch-field/index.js +1 -0
  527. package/dist/components/forms/switch-field/switch-field.svelte +124 -0
  528. package/dist/components/forms/switch-field/switch-field.svelte.d.ts +51 -0
  529. package/dist/components/forms/textarea/index.d.ts +1 -0
  530. package/dist/components/forms/textarea/index.js +1 -0
  531. package/dist/components/forms/textarea/textarea.svelte +70 -0
  532. package/dist/components/forms/textarea/textarea.svelte.d.ts +12 -0
  533. package/dist/components/forms/time-picker/index.d.ts +1 -0
  534. package/dist/components/forms/time-picker/index.js +1 -0
  535. package/dist/components/forms/time-picker/time-picker.svelte +127 -0
  536. package/dist/components/forms/time-picker/time-picker.svelte.d.ts +20 -0
  537. package/dist/components/forms/toggle/index.d.ts +2 -0
  538. package/dist/components/forms/toggle/index.js +2 -0
  539. package/dist/components/forms/toggle/toggle-variants.d.ts +13 -0
  540. package/dist/components/forms/toggle/toggle-variants.js +63 -0
  541. package/dist/components/forms/toggle/toggle.svelte +48 -0
  542. package/dist/components/forms/toggle/toggle.svelte.d.ts +16 -0
  543. package/dist/components/forms/toggle-group/index.d.ts +2 -0
  544. package/dist/components/forms/toggle-group/index.js +2 -0
  545. package/dist/components/forms/toggle-group/toggle-group-item.svelte +60 -0
  546. package/dist/components/forms/toggle-group/toggle-group-item.svelte.d.ts +9 -0
  547. package/dist/components/forms/toggle-group/toggle-group.svelte +82 -0
  548. package/dist/components/forms/toggle-group/toggle-group.svelte.d.ts +21 -0
  549. package/dist/components/layout/aside-card/aside-card.svelte +76 -0
  550. package/dist/components/layout/aside-card/aside-card.svelte.d.ts +19 -0
  551. package/dist/components/layout/aside-card/index.d.ts +1 -0
  552. package/dist/components/layout/aside-card/index.js +1 -0
  553. package/dist/components/layout/card/card-action.svelte +33 -0
  554. package/dist/components/layout/card/card-action.svelte.d.ts +12 -0
  555. package/dist/components/layout/card/card-content.svelte +48 -0
  556. package/dist/components/layout/card/card-content.svelte.d.ts +19 -0
  557. package/dist/components/layout/card/card-description.svelte +32 -0
  558. package/dist/components/layout/card/card-description.svelte.d.ts +6 -0
  559. package/dist/components/layout/card/card-footer.svelte +62 -0
  560. package/dist/components/layout/card/card-footer.svelte.d.ts +23 -0
  561. package/dist/components/layout/card/card-header.svelte +48 -0
  562. package/dist/components/layout/card/card-header.svelte.d.ts +17 -0
  563. package/dist/components/layout/card/card-title.svelte +61 -0
  564. package/dist/components/layout/card/card-title.svelte.d.ts +26 -0
  565. package/dist/components/layout/card/card.svelte +60 -0
  566. package/dist/components/layout/card/card.svelte.d.ts +19 -0
  567. package/dist/components/layout/card/index.d.ts +7 -0
  568. package/dist/components/layout/card/index.js +7 -0
  569. package/dist/components/layout/card-grid/card-grid-cell.svelte +32 -0
  570. package/dist/components/layout/card-grid/card-grid-cell.svelte.d.ts +11 -0
  571. package/dist/components/layout/card-grid/card-grid.svelte +51 -0
  572. package/dist/components/layout/card-grid/card-grid.svelte.d.ts +17 -0
  573. package/dist/components/layout/card-grid/index.d.ts +2 -0
  574. package/dist/components/layout/card-grid/index.js +2 -0
  575. package/dist/components/layout/card-list/card-list.svelte +59 -0
  576. package/dist/components/layout/card-list/card-list.svelte.d.ts +27 -0
  577. package/dist/components/layout/card-list/index.d.ts +1 -0
  578. package/dist/components/layout/card-list/index.js +1 -0
  579. package/dist/components/layout/collapsible/collapsible-content.svelte +16 -0
  580. package/dist/components/layout/collapsible/collapsible-content.svelte.d.ts +5 -0
  581. package/dist/components/layout/collapsible/collapsible-trigger.svelte +16 -0
  582. package/dist/components/layout/collapsible/collapsible-trigger.svelte.d.ts +5 -0
  583. package/dist/components/layout/collapsible/collapsible.svelte +22 -0
  584. package/dist/components/layout/collapsible/collapsible.svelte.d.ts +10 -0
  585. package/dist/components/layout/collapsible/index.d.ts +3 -0
  586. package/dist/components/layout/collapsible/index.js +3 -0
  587. package/dist/components/layout/page-header/index.d.ts +1 -0
  588. package/dist/components/layout/page-header/index.js +1 -0
  589. package/dist/components/layout/page-header/page-header.svelte +118 -0
  590. package/dist/components/layout/page-header/page-header.svelte.d.ts +34 -0
  591. package/dist/components/layout/page-layout/index.d.ts +1 -0
  592. package/dist/components/layout/page-layout/index.js +1 -0
  593. package/dist/components/layout/page-layout/page-layout.svelte +30 -0
  594. package/dist/components/layout/page-layout/page-layout.svelte.d.ts +10 -0
  595. package/dist/components/layout/separator/index.d.ts +1 -0
  596. package/dist/components/layout/separator/index.js +1 -0
  597. package/dist/components/layout/separator/separator.svelte +34 -0
  598. package/dist/components/layout/separator/separator.svelte.d.ts +5 -0
  599. package/dist/components/layout/summary-card/index.d.ts +1 -0
  600. package/dist/components/layout/summary-card/index.js +1 -0
  601. package/dist/components/layout/summary-card/summary-card.svelte +51 -0
  602. package/dist/components/layout/summary-card/summary-card.svelte.d.ts +23 -0
  603. package/dist/components/navigation/breadcrumb/breadcrumb-ellipsis.svelte +38 -0
  604. package/dist/components/navigation/breadcrumb/breadcrumb-ellipsis.svelte.d.ts +9 -0
  605. package/dist/components/navigation/breadcrumb/breadcrumb-item.svelte +30 -0
  606. package/dist/components/navigation/breadcrumb/breadcrumb-item.svelte.d.ts +10 -0
  607. package/dist/components/navigation/breadcrumb/breadcrumb-link.svelte +42 -0
  608. package/dist/components/navigation/breadcrumb/breadcrumb-link.svelte.d.ts +12 -0
  609. package/dist/components/navigation/breadcrumb/breadcrumb-list.svelte +26 -0
  610. package/dist/components/navigation/breadcrumb/breadcrumb-list.svelte.d.ts +6 -0
  611. package/dist/components/navigation/breadcrumb/breadcrumb-page.svelte +31 -0
  612. package/dist/components/navigation/breadcrumb/breadcrumb-page.svelte.d.ts +10 -0
  613. package/dist/components/navigation/breadcrumb/breadcrumb-separator.svelte +39 -0
  614. package/dist/components/navigation/breadcrumb/breadcrumb-separator.svelte.d.ts +9 -0
  615. package/dist/components/navigation/breadcrumb/breadcrumb.svelte +32 -0
  616. package/dist/components/navigation/breadcrumb/breadcrumb.svelte.d.ts +11 -0
  617. package/dist/components/navigation/breadcrumb/index.d.ts +7 -0
  618. package/dist/components/navigation/breadcrumb/index.js +7 -0
  619. package/dist/components/navigation/sidebar/context.svelte.d.ts +26 -0
  620. package/dist/components/navigation/sidebar/context.svelte.js +61 -0
  621. package/dist/components/navigation/sidebar/index.d.ts +25 -0
  622. package/dist/components/navigation/sidebar/index.js +25 -0
  623. package/dist/components/navigation/sidebar/sidebar-content.svelte +32 -0
  624. package/dist/components/navigation/sidebar/sidebar-content.svelte.d.ts +7 -0
  625. package/dist/components/navigation/sidebar/sidebar-footer.svelte +28 -0
  626. package/dist/components/navigation/sidebar/sidebar-footer.svelte.d.ts +6 -0
  627. package/dist/components/navigation/sidebar/sidebar-group-action.svelte +50 -0
  628. package/dist/components/navigation/sidebar/sidebar-group-action.svelte.d.ts +12 -0
  629. package/dist/components/navigation/sidebar/sidebar-group-content.svelte +36 -0
  630. package/dist/components/navigation/sidebar/sidebar-group-content.svelte.d.ts +6 -0
  631. package/dist/components/navigation/sidebar/sidebar-group-label.svelte +51 -0
  632. package/dist/components/navigation/sidebar/sidebar-group-label.svelte.d.ts +12 -0
  633. package/dist/components/navigation/sidebar/sidebar-group.svelte +32 -0
  634. package/dist/components/navigation/sidebar/sidebar-group.svelte.d.ts +6 -0
  635. package/dist/components/navigation/sidebar/sidebar-header.svelte +33 -0
  636. package/dist/components/navigation/sidebar/sidebar-header.svelte.d.ts +6 -0
  637. package/dist/components/navigation/sidebar/sidebar-input.svelte +31 -0
  638. package/dist/components/navigation/sidebar/sidebar-input.svelte.d.ts +5 -0
  639. package/dist/components/navigation/sidebar/sidebar-inset.svelte +32 -0
  640. package/dist/components/navigation/sidebar/sidebar-inset.svelte.d.ts +6 -0
  641. package/dist/components/navigation/sidebar/sidebar-menu-action.svelte +58 -0
  642. package/dist/components/navigation/sidebar/sidebar-menu-action.svelte.d.ts +14 -0
  643. package/dist/components/navigation/sidebar/sidebar-menu-badge.svelte +42 -0
  644. package/dist/components/navigation/sidebar/sidebar-menu-badge.svelte.d.ts +6 -0
  645. package/dist/components/navigation/sidebar/sidebar-menu-button.svelte +97 -0
  646. package/dist/components/navigation/sidebar/sidebar-menu-button.svelte.d.ts +20 -0
  647. package/dist/components/navigation/sidebar/sidebar-menu-item.svelte +33 -0
  648. package/dist/components/navigation/sidebar/sidebar-menu-item.svelte.d.ts +6 -0
  649. package/dist/components/navigation/sidebar/sidebar-menu-skeleton.svelte +46 -0
  650. package/dist/components/navigation/sidebar/sidebar-menu-skeleton.svelte.d.ts +8 -0
  651. package/dist/components/navigation/sidebar/sidebar-menu-sub-button.svelte +64 -0
  652. package/dist/components/navigation/sidebar/sidebar-menu-sub-button.svelte.d.ts +14 -0
  653. package/dist/components/navigation/sidebar/sidebar-menu-sub-item.svelte +33 -0
  654. package/dist/components/navigation/sidebar/sidebar-menu-sub-item.svelte.d.ts +6 -0
  655. package/dist/components/navigation/sidebar/sidebar-menu-sub.svelte +37 -0
  656. package/dist/components/navigation/sidebar/sidebar-menu-sub.svelte.d.ts +6 -0
  657. package/dist/components/navigation/sidebar/sidebar-menu.svelte +28 -0
  658. package/dist/components/navigation/sidebar/sidebar-menu.svelte.d.ts +6 -0
  659. package/dist/components/navigation/sidebar/sidebar-provider.svelte +74 -0
  660. package/dist/components/navigation/sidebar/sidebar-provider.svelte.d.ts +19 -0
  661. package/dist/components/navigation/sidebar/sidebar-rail.svelte +42 -0
  662. package/dist/components/navigation/sidebar/sidebar-rail.svelte.d.ts +6 -0
  663. package/dist/components/navigation/sidebar/sidebar-separator.svelte +29 -0
  664. package/dist/components/navigation/sidebar/sidebar-separator.svelte.d.ts +5 -0
  665. package/dist/components/navigation/sidebar/sidebar-trigger.svelte +40 -0
  666. package/dist/components/navigation/sidebar/sidebar-trigger.svelte.d.ts +5 -0
  667. package/dist/components/navigation/sidebar/sidebar-variants.d.ts +11 -0
  668. package/dist/components/navigation/sidebar/sidebar-variants.js +40 -0
  669. package/dist/components/navigation/sidebar/sidebar.svelte +152 -0
  670. package/dist/components/navigation/sidebar/sidebar.svelte.d.ts +17 -0
  671. package/dist/components/navigation/stepper/index.d.ts +2 -0
  672. package/dist/components/navigation/stepper/index.js +2 -0
  673. package/dist/components/navigation/stepper/stepper-chip.svelte +42 -0
  674. package/dist/components/navigation/stepper/stepper-chip.svelte.d.ts +16 -0
  675. package/dist/components/navigation/stepper/stepper-navigation.svelte +112 -0
  676. package/dist/components/navigation/stepper/stepper-navigation.svelte.d.ts +36 -0
  677. package/dist/components/navigation/stepper/stepper.svelte +364 -0
  678. package/dist/components/navigation/stepper/stepper.svelte.d.ts +65 -0
  679. package/dist/components/navigation/tabs/index.d.ts +4 -0
  680. package/dist/components/navigation/tabs/index.js +4 -0
  681. package/dist/components/navigation/tabs/tabs-content.svelte +23 -0
  682. package/dist/components/navigation/tabs/tabs-content.svelte.d.ts +5 -0
  683. package/dist/components/navigation/tabs/tabs-list.svelte +24 -0
  684. package/dist/components/navigation/tabs/tabs-list.svelte.d.ts +5 -0
  685. package/dist/components/navigation/tabs/tabs-trigger.svelte +24 -0
  686. package/dist/components/navigation/tabs/tabs-trigger.svelte.d.ts +5 -0
  687. package/dist/components/navigation/tabs/tabs.svelte +30 -0
  688. package/dist/components/navigation/tabs/tabs.svelte.d.ts +5 -0
  689. package/dist/components/overlays/alert-dialog/alert-dialog-action.svelte +50 -0
  690. package/dist/components/overlays/alert-dialog/alert-dialog-action.svelte.d.ts +7 -0
  691. package/dist/components/overlays/alert-dialog/alert-dialog-cancel.svelte +34 -0
  692. package/dist/components/overlays/alert-dialog/alert-dialog-cancel.svelte.d.ts +7 -0
  693. package/dist/components/overlays/alert-dialog/alert-dialog-content.svelte +45 -0
  694. package/dist/components/overlays/alert-dialog/alert-dialog-content.svelte.d.ts +12 -0
  695. package/dist/components/overlays/alert-dialog/alert-dialog-description.svelte +23 -0
  696. package/dist/components/overlays/alert-dialog/alert-dialog-description.svelte.d.ts +5 -0
  697. package/dist/components/overlays/alert-dialog/alert-dialog-footer.svelte +35 -0
  698. package/dist/components/overlays/alert-dialog/alert-dialog-footer.svelte.d.ts +6 -0
  699. package/dist/components/overlays/alert-dialog/alert-dialog-header.svelte +35 -0
  700. package/dist/components/overlays/alert-dialog/alert-dialog-header.svelte.d.ts +6 -0
  701. package/dist/components/overlays/alert-dialog/alert-dialog-media.svelte +35 -0
  702. package/dist/components/overlays/alert-dialog/alert-dialog-media.svelte.d.ts +6 -0
  703. package/dist/components/overlays/alert-dialog/alert-dialog-overlay.svelte +26 -0
  704. package/dist/components/overlays/alert-dialog/alert-dialog-overlay.svelte.d.ts +5 -0
  705. package/dist/components/overlays/alert-dialog/alert-dialog-portal.svelte +16 -0
  706. package/dist/components/overlays/alert-dialog/alert-dialog-portal.svelte.d.ts +5 -0
  707. package/dist/components/overlays/alert-dialog/alert-dialog-title.svelte +26 -0
  708. package/dist/components/overlays/alert-dialog/alert-dialog-title.svelte.d.ts +5 -0
  709. package/dist/components/overlays/alert-dialog/alert-dialog-trigger.svelte +16 -0
  710. package/dist/components/overlays/alert-dialog/alert-dialog-trigger.svelte.d.ts +5 -0
  711. package/dist/components/overlays/alert-dialog/alert-dialog.svelte +34 -0
  712. package/dist/components/overlays/alert-dialog/alert-dialog.svelte.d.ts +12 -0
  713. package/dist/components/overlays/alert-dialog/index.d.ts +12 -0
  714. package/dist/components/overlays/alert-dialog/index.js +12 -0
  715. package/dist/components/overlays/dialog/dialog-close.svelte +16 -0
  716. package/dist/components/overlays/dialog/dialog-close.svelte.d.ts +5 -0
  717. package/dist/components/overlays/dialog/dialog-content.svelte +79 -0
  718. package/dist/components/overlays/dialog/dialog-content.svelte.d.ts +26 -0
  719. package/dist/components/overlays/dialog/dialog-description.svelte +23 -0
  720. package/dist/components/overlays/dialog/dialog-description.svelte.d.ts +5 -0
  721. package/dist/components/overlays/dialog/dialog-footer.svelte +27 -0
  722. package/dist/components/overlays/dialog/dialog-footer.svelte.d.ts +6 -0
  723. package/dist/components/overlays/dialog/dialog-header.svelte +27 -0
  724. package/dist/components/overlays/dialog/dialog-header.svelte.d.ts +6 -0
  725. package/dist/components/overlays/dialog/dialog-overlay.svelte +26 -0
  726. package/dist/components/overlays/dialog/dialog-overlay.svelte.d.ts +5 -0
  727. package/dist/components/overlays/dialog/dialog-portal.svelte +16 -0
  728. package/dist/components/overlays/dialog/dialog-portal.svelte.d.ts +5 -0
  729. package/dist/components/overlays/dialog/dialog-title.svelte +23 -0
  730. package/dist/components/overlays/dialog/dialog-title.svelte.d.ts +5 -0
  731. package/dist/components/overlays/dialog/dialog-trigger.svelte +16 -0
  732. package/dist/components/overlays/dialog/dialog-trigger.svelte.d.ts +5 -0
  733. package/dist/components/overlays/dialog/dialog.svelte +16 -0
  734. package/dist/components/overlays/dialog/dialog.svelte.d.ts +5 -0
  735. package/dist/components/overlays/dialog/index.d.ts +10 -0
  736. package/dist/components/overlays/dialog/index.js +10 -0
  737. package/dist/components/overlays/drawer/drawer-close.svelte +16 -0
  738. package/dist/components/overlays/drawer/drawer-close.svelte.d.ts +5 -0
  739. package/dist/components/overlays/drawer/drawer-content.svelte +50 -0
  740. package/dist/components/overlays/drawer/drawer-content.svelte.d.ts +8 -0
  741. package/dist/components/overlays/drawer/drawer-description.svelte +23 -0
  742. package/dist/components/overlays/drawer/drawer-description.svelte.d.ts +5 -0
  743. package/dist/components/overlays/drawer/drawer-footer.svelte +27 -0
  744. package/dist/components/overlays/drawer/drawer-footer.svelte.d.ts +6 -0
  745. package/dist/components/overlays/drawer/drawer-header.svelte +30 -0
  746. package/dist/components/overlays/drawer/drawer-header.svelte.d.ts +6 -0
  747. package/dist/components/overlays/drawer/drawer-overlay.svelte +26 -0
  748. package/dist/components/overlays/drawer/drawer-overlay.svelte.d.ts +5 -0
  749. package/dist/components/overlays/drawer/drawer-portal.svelte +16 -0
  750. package/dist/components/overlays/drawer/drawer-portal.svelte.d.ts +5 -0
  751. package/dist/components/overlays/drawer/drawer-title.svelte +23 -0
  752. package/dist/components/overlays/drawer/drawer-title.svelte.d.ts +5 -0
  753. package/dist/components/overlays/drawer/drawer-trigger.svelte +16 -0
  754. package/dist/components/overlays/drawer/drawer-trigger.svelte.d.ts +5 -0
  755. package/dist/components/overlays/drawer/drawer.svelte +28 -0
  756. package/dist/components/overlays/drawer/drawer.svelte.d.ts +11 -0
  757. package/dist/components/overlays/drawer/index.d.ts +10 -0
  758. package/dist/components/overlays/drawer/index.js +10 -0
  759. package/dist/components/overlays/hint/hint.svelte +69 -0
  760. package/dist/components/overlays/hint/hint.svelte.d.ts +32 -0
  761. package/dist/components/overlays/hint/index.d.ts +1 -0
  762. package/dist/components/overlays/hint/index.js +1 -0
  763. package/dist/components/overlays/hover-card/hover-card-content.svelte +46 -0
  764. package/dist/components/overlays/hover-card/hover-card-content.svelte.d.ts +12 -0
  765. package/dist/components/overlays/hover-card/hover-card-trigger.svelte +18 -0
  766. package/dist/components/overlays/hover-card/hover-card-trigger.svelte.d.ts +5 -0
  767. package/dist/components/overlays/hover-card/hover-card.svelte +22 -0
  768. package/dist/components/overlays/hover-card/hover-card.svelte.d.ts +10 -0
  769. package/dist/components/overlays/hover-card/index.d.ts +3 -0
  770. package/dist/components/overlays/hover-card/index.js +3 -0
  771. package/dist/components/overlays/popover/index.d.ts +3 -0
  772. package/dist/components/overlays/popover/index.js +3 -0
  773. package/dist/components/overlays/popover/popover-content.svelte +54 -0
  774. package/dist/components/overlays/popover/popover-content.svelte.d.ts +19 -0
  775. package/dist/components/overlays/popover/popover-trigger.svelte +16 -0
  776. package/dist/components/overlays/popover/popover-trigger.svelte.d.ts +5 -0
  777. package/dist/components/overlays/popover/popover.svelte +22 -0
  778. package/dist/components/overlays/popover/popover.svelte.d.ts +10 -0
  779. package/dist/components/overlays/sheet/index.d.ts +8 -0
  780. package/dist/components/overlays/sheet/index.js +8 -0
  781. package/dist/components/overlays/sheet/sheet-close.svelte +16 -0
  782. package/dist/components/overlays/sheet/sheet-close.svelte.d.ts +5 -0
  783. package/dist/components/overlays/sheet/sheet-content.svelte +71 -0
  784. package/dist/components/overlays/sheet/sheet-content.svelte.d.ts +18 -0
  785. package/dist/components/overlays/sheet/sheet-description.svelte +23 -0
  786. package/dist/components/overlays/sheet/sheet-description.svelte.d.ts +5 -0
  787. package/dist/components/overlays/sheet/sheet-footer.svelte +27 -0
  788. package/dist/components/overlays/sheet/sheet-footer.svelte.d.ts +6 -0
  789. package/dist/components/overlays/sheet/sheet-header.svelte +27 -0
  790. package/dist/components/overlays/sheet/sheet-header.svelte.d.ts +6 -0
  791. package/dist/components/overlays/sheet/sheet-title.svelte +23 -0
  792. package/dist/components/overlays/sheet/sheet-title.svelte.d.ts +5 -0
  793. package/dist/components/overlays/sheet/sheet-trigger.svelte +16 -0
  794. package/dist/components/overlays/sheet/sheet-trigger.svelte.d.ts +5 -0
  795. package/dist/components/overlays/sheet/sheet.svelte +20 -0
  796. package/dist/components/overlays/sheet/sheet.svelte.d.ts +9 -0
  797. package/dist/components/overlays/tooltip/index.d.ts +4 -0
  798. package/dist/components/overlays/tooltip/index.js +4 -0
  799. package/dist/components/overlays/tooltip/tooltip-content.svelte +58 -0
  800. package/dist/components/overlays/tooltip/tooltip-content.svelte.d.ts +14 -0
  801. package/dist/components/overlays/tooltip/tooltip-provider.svelte +16 -0
  802. package/dist/components/overlays/tooltip/tooltip-provider.svelte.d.ts +5 -0
  803. package/dist/components/overlays/tooltip/tooltip-trigger.svelte +16 -0
  804. package/dist/components/overlays/tooltip/tooltip-trigger.svelte.d.ts +5 -0
  805. package/dist/components/overlays/tooltip/tooltip.svelte +21 -0
  806. package/dist/components/overlays/tooltip/tooltip.svelte.d.ts +5 -0
  807. package/dist/components/typography/heading/heading.svelte +60 -0
  808. package/dist/components/typography/heading/heading.svelte.d.ts +23 -0
  809. package/dist/components/typography/heading/index.d.ts +1 -0
  810. package/dist/components/typography/heading/index.js +1 -0
  811. package/dist/components/typography/text/index.d.ts +1 -0
  812. package/dist/components/typography/text/index.js +1 -0
  813. package/dist/components/typography/text/text.svelte +84 -0
  814. package/dist/components/typography/text/text.svelte.d.ts +31 -0
  815. package/dist/form.d.ts +9 -0
  816. package/dist/form.js +9 -0
  817. package/dist/hooks/is-mobile.svelte.d.ts +15 -0
  818. package/dist/hooks/is-mobile.svelte.js +17 -0
  819. package/dist/index.d.ts +94 -0
  820. package/dist/index.js +101 -0
  821. package/dist/styles/components.css +192 -0
  822. package/dist/theme.css +535 -0
  823. package/dist/tokens/cli.d.ts +11 -0
  824. package/dist/tokens/cli.js +58 -0
  825. package/dist/tokens/config.d.ts +39 -0
  826. package/dist/tokens/config.js +46 -0
  827. package/dist/tokens/emit-web.d.ts +11 -0
  828. package/dist/tokens/emit-web.js +172 -0
  829. package/dist/tokens/geometry.d.ts +62 -0
  830. package/dist/tokens/geometry.js +67 -0
  831. package/dist/tokens/info.d.ts +10 -0
  832. package/dist/tokens/info.js +62 -0
  833. package/dist/tokens/presets.d.ts +51 -0
  834. package/dist/tokens/presets.js +35 -0
  835. package/dist/tokens/semantic.d.ts +32 -0
  836. package/dist/tokens/semantic.js +158 -0
  837. package/dist/tokens/tailwind-palette.d.ts +356 -0
  838. package/dist/tokens/tailwind-palette.js +352 -0
  839. package/dist/tokens.d.ts +11 -0
  840. package/dist/tokens.js +11 -0
  841. package/dist/utils/cn.d.ts +11 -0
  842. package/dist/utils/cn.js +14 -0
  843. package/dist/utils/monotone-path.d.ts +10 -0
  844. package/dist/utils/monotone-path.js +52 -0
  845. package/dist/utils/segmented-control.d.ts +47 -0
  846. package/dist/utils/segmented-control.js +53 -0
  847. package/dist/utils/tone.d.ts +78 -0
  848. package/dist/utils/tone.js +119 -0
  849. package/dist/utils/types.d.ts +17 -0
  850. package/dist/utils/types.js +6 -0
  851. package/package.json +124 -3
  852. package/skills/mise/SKILL.md +159 -0
  853. package/skills/mise/components/actions.md +200 -0
  854. package/skills/mise/components/data-display.md +728 -0
  855. package/skills/mise/components/feedback.md +198 -0
  856. package/skills/mise/components/forms.md +712 -0
  857. package/skills/mise/components/layout.md +178 -0
  858. package/skills/mise/components/navigation.md +250 -0
  859. package/skills/mise/components/overlays.md +291 -0
  860. package/skills/mise/components/typography.md +36 -0
  861. package/skills/mise/recipes/dashboard-page.md +40 -0
  862. package/skills/mise/recipes/dashboard-page.svelte +132 -0
  863. package/skills/mise/recipes/data-table.md +39 -0
  864. package/skills/mise/recipes/data-table.svelte +130 -0
  865. package/skills/mise/recipes/form-sveltekit.svelte +79 -0
  866. package/skills/mise/recipes/form.md +82 -0
  867. package/skills/mise/recipes/form.svelte +158 -0
  868. package/skills/mise/setup.md +99 -0
  869. package/skills/mise/theming.md +82 -0
@@ -0,0 +1,11 @@
1
+ import { type ThemeConfig } from './config.js';
2
+ /** `:root` and `.dark` only, for swapping a theme at runtime, as Storybook's preset switcher does. */
3
+ export declare function emitThemeVariables(config?: ThemeConfig): string;
4
+ /** The whole generated theme, without the hand-written component overrides. */
5
+ export declare function emitThemeCss(config?: ThemeConfig): string;
6
+ /**
7
+ * The shipped stylesheet: the emitted theme, then the hand-written overrides.
8
+ * They are concatenated rather than joined by an `@import`, because CSS
9
+ * requires `@import` to come before every other rule.
10
+ */
11
+ export declare function themeStylesheet(config: ThemeConfig, componentsCss: string): string;
@@ -0,0 +1,172 @@
1
+ import { RAMP_ROLES, resolveTheme } from './config.js';
2
+ import { layout, radiusScale, sizing } from './geometry.js';
3
+ import { darkTokens, lightTokens, SEMANTIC_TOKENS } from './semantic.js';
4
+ import { STEPS } from './tailwind-palette.js';
5
+ /**
6
+ * Generates `theme.css` from a theme config.
7
+ *
8
+ * Consumers import it after Tailwind:
9
+ *
10
+ * @import 'tailwindcss';
11
+ * @import 'tw-animate-css';
12
+ * @import '@jovertical/mise-design-system/theme.css';
13
+ * @source '../node_modules/@jovertical/mise-design-system/dist';
14
+ *
15
+ * The `@source` line is not optional. Tailwind v4 skips `node_modules` when
16
+ * it detects content, so without it every class the components use is pruned.
17
+ *
18
+ * Adapted from the React package 2.23.0 src/tokens/emit-web.ts. The
19
+ * emitter now takes a config instead of reading module constants.
20
+ */
21
+ /** Tokens declared in `:root` under a `--color-*` name rather than a semantic one. */
22
+ const COLOR_PREFIXED = new Set(['--color-table-header']);
23
+ /** The faces live in `:root` so a consumer can override them in plain CSS. */
24
+ const FONT_TOKENS = ['--font-sans', '--font-heading', '--font-mono'];
25
+ /**
26
+ * A 10% wash under ink of the same tone, for a soft badge, a chip or an alert.
27
+ * Named once here, because a tint that drifts by a percent between components
28
+ * reads as two different states. Red washes from `--destructive`, the red
29
+ * every component inks with.
30
+ */
31
+ const SOFT_TINTS = {
32
+ '--color-primary-soft': 'var(--primary)',
33
+ '--color-info-soft': 'var(--color-info)',
34
+ '--color-success-soft': 'var(--color-success)',
35
+ '--color-warning-soft': 'var(--color-warning)',
36
+ '--color-destructive-soft': 'var(--destructive)',
37
+ };
38
+ const declare = (entries) => [...entries].map(([token, value]) => ` ${token}: ${value};`);
39
+ const bridgeName = (token) => token.startsWith('--color-') ? token : `--color-${token.slice(2)}`;
40
+ /**
41
+ * The `@theme inline` bridge. `inline` makes Tailwind write each value
42
+ * through as authored, so `bg-primary` emits `var(--primary)` and follows
43
+ * whichever of `:root` / `.dark` is in scope. A bridge that pointed at a ramp
44
+ * step directly would freeze the utility in one scheme.
45
+ */
46
+ function themeInline() {
47
+ const lines = [
48
+ ' /* Faces, resolved from :root so a consumer can override them. */',
49
+ ...declare(FONT_TOKENS.map((token) => [token, `var(${token})`])),
50
+ '',
51
+ ' /* Radius scale, derived from the single --radius in :root. */',
52
+ ...declare(Object.entries(radiusScale)),
53
+ '',
54
+ ' /* Semantic surfaces and ink. Every one resolves through :root / .dark. */',
55
+ ...declare(SEMANTIC_TOKENS.filter((token) => !COLOR_PREFIXED.has(token)).map((token) => [
56
+ bridgeName(token),
57
+ `var(${token})`,
58
+ ])),
59
+ '',
60
+ ' /* Soft tints: each tone at 10%, behind ink of the same tone. */',
61
+ ...declare(Object.entries(SOFT_TINTS).map(([token, ink]) => [
62
+ token,
63
+ `color-mix(in oklab, ${ink} 10%, transparent)`,
64
+ ])),
65
+ '',
66
+ ' /* Theme-responsive, declared under a --color-* name in :root. */',
67
+ ...declare([...COLOR_PREFIXED].map((token) => [token, `var(${token})`])),
68
+ '',
69
+ ' /* Role ramps. The self-reference hands each utility a var() that :root',
70
+ ' resolves, rather than baking in a literal. */',
71
+ ...RAMP_ROLES.flatMap((role) => declare(STEPS.map((at) => [`--color-${role}-${at}`, `var(--color-${role}-${at})`]))),
72
+ '',
73
+ ' /* Structural measurements. */',
74
+ ...declare(Object.entries(layout)),
75
+ ];
76
+ return `@theme inline {\n${lines.join('\n')}\n}`;
77
+ }
78
+ function rootBlock(theme) {
79
+ const lines = [
80
+ ' /* Structure, and the one --radius the scale derives from. */',
81
+ ...declare(Object.entries(sizing)),
82
+ ` --radius: ${theme.radius};`,
83
+ '',
84
+ ' /* Faces. */',
85
+ ` --font-sans: ${theme.fonts.sans};`,
86
+ ` --font-heading: ${theme.fonts.heading};`,
87
+ ` --font-mono: ${theme.fonts.mono};`,
88
+ '',
89
+ ' /* Light scheme. --accent is a brand tint meaning "active nav row";',
90
+ ' it is never a hover state. */',
91
+ ...declare(Object.entries({ ...lightTokens(theme), ...theme.light })),
92
+ '',
93
+ ' /* Role ramps, as literals: Tailwind prunes theme variables nobody uses. */',
94
+ ...RAMP_ROLES.flatMap((role) => declare(STEPS.map((at) => [`--color-${role}-${at}`, theme.ramps[role][at]]))),
95
+ ];
96
+ return `:root {\n${lines.join('\n')}\n}`;
97
+ }
98
+ function darkBlock(theme) {
99
+ const lines = [
100
+ ' /* Near-black surfaces and translucent white borders. */',
101
+ ...declare(Object.entries({ ...darkTokens(theme), ...theme.dark })),
102
+ ];
103
+ return `.dark {\n${lines.join('\n')}\n}`;
104
+ }
105
+ const BASE_BLOCK = `@layer base {
106
+ * {
107
+ @apply border-border outline-ring/50;
108
+ }
109
+ body {
110
+ @apply bg-background text-foreground font-sans;
111
+ }
112
+ }`;
113
+ /**
114
+ * Printing a listing should produce the table, not a screenshot of the app.
115
+ * The rules target `data-slot` attributes the components emit, so they ship
116
+ * with the theme instead of rotting in an app.
117
+ */
118
+ const PRINT_BLOCK = `@media print {
119
+ [data-slot='sidebar'],
120
+ [data-slot='sidebar-gap'],
121
+ header {
122
+ display: none !important;
123
+ }
124
+
125
+ [data-slot='sidebar-inset'] {
126
+ margin: 0 !important;
127
+ box-shadow: none !important;
128
+ }
129
+
130
+ [data-slot='table-container'] {
131
+ overflow: visible !important;
132
+ }
133
+
134
+ body {
135
+ background: #fff !important;
136
+ }
137
+ }`;
138
+ /** `:root` and `.dark` only, for swapping a theme at runtime, as Storybook's preset switcher does. */
139
+ export function emitThemeVariables(config = {}) {
140
+ const theme = resolveTheme(config);
141
+ return `${rootBlock(theme)}\n\n${darkBlock(theme)}\n`;
142
+ }
143
+ /** The whole generated theme, without the hand-written component overrides. */
144
+ export function emitThemeCss(config = {}) {
145
+ const theme = resolveTheme(config);
146
+ return [
147
+ '/* Generated by @jovertical/mise-design-system. Do not edit.',
148
+ ' * Regenerate with `pnpm build:theme`, or `npx mise-theme` for a custom theme.',
149
+ ' */',
150
+ '',
151
+ '@custom-variant dark (&:is(.dark *));',
152
+ '',
153
+ themeInline(),
154
+ '',
155
+ rootBlock(theme),
156
+ '',
157
+ darkBlock(theme),
158
+ '',
159
+ BASE_BLOCK,
160
+ '',
161
+ PRINT_BLOCK,
162
+ '',
163
+ ].join('\n');
164
+ }
165
+ /**
166
+ * The shipped stylesheet: the emitted theme, then the hand-written overrides.
167
+ * They are concatenated rather than joined by an `@import`, because CSS
168
+ * requires `@import` to come before every other rule.
169
+ */
170
+ export function themeStylesheet(config, componentsCss) {
171
+ return `${emitThemeCss(config)}\n${componentsCss}`;
172
+ }
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Everything in the theme that is not a colour and not configurable: the
3
+ * radius scale's shape, the shell's structural measurements, and the control
4
+ * geometry components hard-code.
5
+ *
6
+ * Adapted from the React package 2.23.0 src/tokens/geometry.ts.
7
+ */
8
+ /** Structural measurements, declared in `:root`. `--spacing` drives every spacing utility. */
9
+ export declare const sizing: {
10
+ readonly '--sidebar-width': "calc(var(--spacing) * 20)";
11
+ readonly '--header-height': "64px";
12
+ readonly '--spacing': "0.25rem";
13
+ };
14
+ /**
15
+ * Derived from the single `--radius`, so one edit moves the whole scale in
16
+ * step. `--radius-4xl` is what cards and dialogs use, clamped to 24px by
17
+ * `rounded-[min(var(--radius-4xl),24px)]`.
18
+ */
19
+ export declare const radiusScale: {
20
+ readonly '--radius-sm': "calc(var(--radius) - 4px)";
21
+ readonly '--radius-md': "calc(var(--radius) - 2px)";
22
+ readonly '--radius-lg': "var(--radius)";
23
+ readonly '--radius-xl': "calc(var(--radius) + 4px)";
24
+ readonly '--radius-2xl': "calc(var(--radius) + 8px)";
25
+ readonly '--radius-3xl': "calc(var(--radius) + 12px)";
26
+ readonly '--radius-4xl': "calc(var(--radius) + 16px)";
27
+ };
28
+ /**
29
+ * `--container-content` caps the content column, header bar included, so
30
+ * tables do not stretch the full width of an ultrawide display.
31
+ */
32
+ export declare const layout: {
33
+ readonly '--height-header': "var(--header-height)";
34
+ readonly '--width-sidebar': "var(--sidebar-width)";
35
+ readonly '--container-content': "96rem";
36
+ readonly '--spacing': "var(--spacing)";
37
+ };
38
+ /**
39
+ * Control geometry, recorded as a rule rather than emitted as CSS.
40
+ *
41
+ * Components hard-code these classes; the table exists so that a new component
42
+ * has one place to check instead of copying whichever neighbour it was pasted
43
+ * from. Kept in sync with the Geometry docs page in Storybook.
44
+ */
45
+ export declare const geometryRules: {
46
+ readonly card: "rounded-[min(var(--radius-4xl),24px)]";
47
+ readonly dialog: "rounded-[min(var(--radius-4xl),24px)]";
48
+ readonly button: "rounded-2xl";
49
+ readonly input: "rounded-2xl";
50
+ readonly select: "rounded-2xl";
51
+ readonly toolbarPill: "rounded-2xl";
52
+ readonly segmentedTrack: "rounded-full";
53
+ readonly segmentedItem: "rounded-full";
54
+ readonly menuSurface: "rounded-2xl";
55
+ readonly menuRow: "rounded-lg";
56
+ readonly sidebarNavRow: "rounded-xl";
57
+ readonly badge: "rounded-lg";
58
+ readonly iconAction: "rounded-full";
59
+ readonly toolbarControlHeight: "h-8";
60
+ readonly formControlHeight: "h-9";
61
+ readonly menuRowHeight: "py-1.5";
62
+ };
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Everything in the theme that is not a colour and not configurable: the
3
+ * radius scale's shape, the shell's structural measurements, and the control
4
+ * geometry components hard-code.
5
+ *
6
+ * Adapted from the React package 2.23.0 src/tokens/geometry.ts.
7
+ */
8
+ /** Structural measurements, declared in `:root`. `--spacing` drives every spacing utility. */
9
+ export const sizing = {
10
+ '--sidebar-width': 'calc(var(--spacing) * 20)',
11
+ '--header-height': '64px',
12
+ '--spacing': '0.25rem',
13
+ };
14
+ /**
15
+ * Derived from the single `--radius`, so one edit moves the whole scale in
16
+ * step. `--radius-4xl` is what cards and dialogs use, clamped to 24px by
17
+ * `rounded-[min(var(--radius-4xl),24px)]`.
18
+ */
19
+ export const radiusScale = {
20
+ '--radius-sm': 'calc(var(--radius) - 4px)',
21
+ '--radius-md': 'calc(var(--radius) - 2px)',
22
+ '--radius-lg': 'var(--radius)',
23
+ '--radius-xl': 'calc(var(--radius) + 4px)',
24
+ '--radius-2xl': 'calc(var(--radius) + 8px)',
25
+ '--radius-3xl': 'calc(var(--radius) + 12px)',
26
+ '--radius-4xl': 'calc(var(--radius) + 16px)',
27
+ };
28
+ /**
29
+ * `--container-content` caps the content column, header bar included, so
30
+ * tables do not stretch the full width of an ultrawide display.
31
+ */
32
+ export const layout = {
33
+ '--height-header': 'var(--header-height)',
34
+ '--width-sidebar': 'var(--sidebar-width)',
35
+ '--container-content': '96rem',
36
+ '--spacing': 'var(--spacing)',
37
+ };
38
+ /**
39
+ * Control geometry, recorded as a rule rather than emitted as CSS.
40
+ *
41
+ * Components hard-code these classes; the table exists so that a new component
42
+ * has one place to check instead of copying whichever neighbour it was pasted
43
+ * from. Kept in sync with the Geometry docs page in Storybook.
44
+ */
45
+ export const geometryRules = {
46
+ card: 'rounded-[min(var(--radius-4xl),24px)]',
47
+ dialog: 'rounded-[min(var(--radius-4xl),24px)]',
48
+ button: 'rounded-2xl',
49
+ input: 'rounded-2xl',
50
+ select: 'rounded-2xl',
51
+ toolbarPill: 'rounded-2xl',
52
+ // The segmented control's track and its pill are both fully round, and the
53
+ // pill is lifted with `shadow-sm`. The composed class strings live in
54
+ // `src/components/segmented-control.ts`, which is what `Tabs`, `ToggleGroup`
55
+ // and `DataTableViewToggle` read; these two lines record the geometry so a
56
+ // new control can check the table without importing a component.
57
+ segmentedTrack: 'rounded-full',
58
+ segmentedItem: 'rounded-full',
59
+ menuSurface: 'rounded-2xl',
60
+ menuRow: 'rounded-lg',
61
+ sidebarNavRow: 'rounded-xl',
62
+ badge: 'rounded-lg',
63
+ iconAction: 'rounded-full',
64
+ toolbarControlHeight: 'h-8',
65
+ formControlHeight: 'h-9',
66
+ menuRowHeight: 'py-1.5',
67
+ };
@@ -0,0 +1,10 @@
1
+ export type ProjectInfo = {
2
+ version: string;
3
+ stack: 'sveltekit' | 'inertia' | 'vite';
4
+ svelte: string | null;
5
+ tailwind: string | null;
6
+ themeConfig: string | null;
7
+ stylesheet: string | null;
8
+ form: boolean;
9
+ };
10
+ export declare function projectInfo(cwd: string, version: string): Promise<ProjectInfo>;
@@ -0,0 +1,62 @@
1
+ /**
2
+ * What an agent needs to know about the app it is working in before it writes
3
+ * mise UI: which version, which stack, where the theme and the stylesheet are.
4
+ * Read-only. The consumer skill runs it on load through `mise-theme info --json`.
5
+ */
6
+ import { existsSync } from 'node:fs';
7
+ import { readdir, readFile } from 'node:fs/promises';
8
+ import { join, relative } from 'node:path';
9
+ const THEME_CONFIGS = ['mise.theme.js', 'mise.theme.mjs', 'mise.theme.ts'];
10
+ const SKIPPED = new Set([
11
+ 'node_modules',
12
+ '.git',
13
+ 'vendor',
14
+ 'dist',
15
+ 'build',
16
+ '.svelte-kit',
17
+ 'storage',
18
+ 'public',
19
+ ]);
20
+ const IMPORT = /@import\s+['"]@jovertical\/mise-design-system\//;
21
+ const MAX_DEPTH = 6;
22
+ async function findStylesheet(cwd, dir = cwd, depth = 0) {
23
+ if (depth > MAX_DEPTH)
24
+ return null;
25
+ const entries = (await readdir(dir, { withFileTypes: true })).sort((a, b) => a.name.localeCompare(b.name));
26
+ for (const entry of entries) {
27
+ const path = join(dir, entry.name);
28
+ if (entry.isFile() &&
29
+ entry.name.endsWith('.css') &&
30
+ IMPORT.test(await readFile(path, 'utf8'))) {
31
+ return relative(cwd, path).split('\\').join('/');
32
+ }
33
+ }
34
+ for (const entry of entries) {
35
+ if (!entry.isDirectory() || SKIPPED.has(entry.name) || entry.name.startsWith('.'))
36
+ continue;
37
+ const found = await findStylesheet(cwd, join(dir, entry.name), depth + 1);
38
+ if (found)
39
+ return found;
40
+ }
41
+ return null;
42
+ }
43
+ export async function projectInfo(cwd, version) {
44
+ const manifestPath = join(cwd, 'package.json');
45
+ if (!existsSync(manifestPath))
46
+ throw new Error(`No package.json in ${cwd}`);
47
+ const manifest = JSON.parse(await readFile(manifestPath, 'utf8'));
48
+ const dependencies = {
49
+ ...manifest.dependencies,
50
+ ...manifest.devDependencies,
51
+ };
52
+ const has = (name) => name in dependencies;
53
+ return {
54
+ version,
55
+ stack: has('@sveltejs/kit') ? 'sveltekit' : has('@inertiajs/svelte') ? 'inertia' : 'vite',
56
+ svelte: dependencies.svelte ?? null,
57
+ tailwind: dependencies.tailwindcss ?? null,
58
+ themeConfig: THEME_CONFIGS.find((name) => existsSync(join(cwd, name))) ?? null,
59
+ stylesheet: await findStylesheet(cwd),
60
+ form: has('formsnap') && has('sveltekit-superforms'),
61
+ };
62
+ }
@@ -0,0 +1,51 @@
1
+ /** The neutral ramps a theme can sit on. `zinc` is the default. */
2
+ export declare const BASES: readonly ["zinc", "slate", "gray", "neutral", "stone"];
3
+ export type BaseName = (typeof BASES)[number];
4
+ /**
5
+ * The theme mise ships (D4, D11): zinc neutrals, an indigo brand, and the four
6
+ * statuses on hues that read as their meaning. The five chart hues are picked
7
+ * to stay apart from each other and from the indigo brand.
8
+ */
9
+ export declare const defaultTheme: {
10
+ readonly base: "zinc";
11
+ readonly primary: "indigo";
12
+ readonly status: {
13
+ readonly info: "sky";
14
+ readonly success: "emerald";
15
+ readonly warning: "amber";
16
+ readonly critical: "red";
17
+ };
18
+ readonly charts: readonly ["teal", "orange", "fuchsia", "lime", "sky"];
19
+ readonly radius: "0.625rem";
20
+ readonly fonts: {
21
+ readonly sans: "ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'";
22
+ readonly heading: "ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'";
23
+ readonly mono: "ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace";
24
+ };
25
+ };
26
+ /**
27
+ * What Storybook's preset switcher offers: each base under the default brand,
28
+ * and one worked custom theme that changes the base, the brand and the radius
29
+ * together.
30
+ */
31
+ export declare const presets: {
32
+ readonly zinc: {};
33
+ readonly slate: {
34
+ readonly base: "slate";
35
+ };
36
+ readonly gray: {
37
+ readonly base: "gray";
38
+ };
39
+ readonly neutral: {
40
+ readonly base: "neutral";
41
+ };
42
+ readonly stone: {
43
+ readonly base: "stone";
44
+ };
45
+ readonly 'teal-on-stone': {
46
+ readonly base: "stone";
47
+ readonly primary: "teal";
48
+ readonly radius: "0.5rem";
49
+ };
50
+ };
51
+ export type PresetName = keyof typeof presets;
@@ -0,0 +1,35 @@
1
+ /** The neutral ramps a theme can sit on. `zinc` is the default. */
2
+ export const BASES = ['zinc', 'slate', 'gray', 'neutral', 'stone'];
3
+ /**
4
+ * System stacks, so a consumer loads no web font by default. Numbers line up
5
+ * through `tabular-nums` where a component needs it, not through a mono base
6
+ * face. Mono-as-base was the React package's identity choice and did not come over.
7
+ */
8
+ const SYSTEM_SANS = "ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'";
9
+ const SYSTEM_MONO = "ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace";
10
+ /**
11
+ * The theme mise ships (D4, D11): zinc neutrals, an indigo brand, and the four
12
+ * statuses on hues that read as their meaning. The five chart hues are picked
13
+ * to stay apart from each other and from the indigo brand.
14
+ */
15
+ export const defaultTheme = {
16
+ base: 'zinc',
17
+ primary: 'indigo',
18
+ status: { info: 'sky', success: 'emerald', warning: 'amber', critical: 'red' },
19
+ charts: ['teal', 'orange', 'fuchsia', 'lime', 'sky'],
20
+ radius: '0.625rem',
21
+ fonts: { sans: SYSTEM_SANS, heading: SYSTEM_SANS, mono: SYSTEM_MONO },
22
+ };
23
+ /**
24
+ * What Storybook's preset switcher offers: each base under the default brand,
25
+ * and one worked custom theme that changes the base, the brand and the radius
26
+ * together.
27
+ */
28
+ export const presets = {
29
+ zinc: {},
30
+ slate: { base: 'slate' },
31
+ gray: { base: 'gray' },
32
+ neutral: { base: 'neutral' },
33
+ stone: { base: 'stone' },
34
+ 'teal-on-stone': { base: 'stone', primary: 'teal', radius: '0.5rem' },
35
+ };
@@ -0,0 +1,32 @@
1
+ import type { ResolvedTheme } from './config.js';
2
+ /**
3
+ * The semantic contract: what a colour means. Consumers override these by
4
+ * name (spec, Theming level 2), so the list is public and stable.
5
+ *
6
+ * Values point at the role ramps in `:root` (`var(--color-primary-600)`)
7
+ * rather than being resolved to literals. That way an override of one ramp
8
+ * step moves every token that reads it, and light and dark cannot drift apart
9
+ * silently.
10
+ *
11
+ * Adapted from the React package 2.23.0 src/tokens/semantic.ts. The
12
+ * React package's brand literals and `--error` did not come over. `--secondary` is a
13
+ * neutral fill again, as in shadcn, rather than a brand orange.
14
+ */
15
+ export declare const SEMANTIC_TOKENS: readonly ["--background", "--foreground", "--card", "--card-foreground", "--popover", "--popover-foreground", "--primary", "--primary-foreground", "--secondary", "--secondary-foreground", "--muted", "--muted-foreground", "--accent", "--accent-foreground", "--destructive", "--info", "--success", "--warning", "--destructive-foreground", "--info-foreground", "--success-foreground", "--warning-foreground", "--border", "--input", "--ring", "--chart-1", "--chart-2", "--chart-3", "--chart-4", "--chart-5", "--sidebar", "--sidebar-foreground", "--sidebar-primary", "--sidebar-primary-foreground", "--sidebar-accent", "--sidebar-accent-foreground", "--sidebar-border", "--sidebar-ring", "--color-table-header"];
16
+ export type SemanticToken = (typeof SEMANTIC_TOKENS)[number];
17
+ type Scheme = Record<SemanticToken, string>;
18
+ /**
19
+ * `:root`. Muted ink is the base's 600 rather than shadcn's 500: 500 falls
20
+ * below AA on a `--muted` surface, which is where most small grey text sits.
21
+ * `--accent` is a brand tint and means "active nav row". It is never a hover
22
+ * state.
23
+ */
24
+ export declare function lightTokens(theme: ResolvedTheme): Scheme;
25
+ /**
26
+ * `.dark`: near-black surfaces with translucent white borders, so stacked
27
+ * panels stay legible without heavy outlines. Status ink brightens to the 400
28
+ * step. The table header follows the sidebar, as in the React package.
29
+ * Without that, the header is the brightest thing on a dark screen.
30
+ */
31
+ export declare function darkTokens(theme: ResolvedTheme): Scheme;
32
+ export {};
@@ -0,0 +1,158 @@
1
+ /**
2
+ * The semantic contract: what a colour means. Consumers override these by
3
+ * name (spec, Theming level 2), so the list is public and stable.
4
+ *
5
+ * Values point at the role ramps in `:root` (`var(--color-primary-600)`)
6
+ * rather than being resolved to literals. That way an override of one ramp
7
+ * step moves every token that reads it, and light and dark cannot drift apart
8
+ * silently.
9
+ *
10
+ * Adapted from the React package 2.23.0 src/tokens/semantic.ts. The
11
+ * React package's brand literals and `--error` did not come over. `--secondary` is a
12
+ * neutral fill again, as in shadcn, rather than a brand orange.
13
+ */
14
+ export const SEMANTIC_TOKENS = [
15
+ '--background',
16
+ '--foreground',
17
+ '--card',
18
+ '--card-foreground',
19
+ '--popover',
20
+ '--popover-foreground',
21
+ '--primary',
22
+ '--primary-foreground',
23
+ '--secondary',
24
+ '--secondary-foreground',
25
+ '--muted',
26
+ '--muted-foreground',
27
+ '--accent',
28
+ '--accent-foreground',
29
+ '--destructive',
30
+ '--info',
31
+ '--success',
32
+ '--warning',
33
+ '--destructive-foreground',
34
+ '--info-foreground',
35
+ '--success-foreground',
36
+ '--warning-foreground',
37
+ '--border',
38
+ '--input',
39
+ '--ring',
40
+ '--chart-1',
41
+ '--chart-2',
42
+ '--chart-3',
43
+ '--chart-4',
44
+ '--chart-5',
45
+ '--sidebar',
46
+ '--sidebar-foreground',
47
+ '--sidebar-primary',
48
+ '--sidebar-primary-foreground',
49
+ '--sidebar-accent',
50
+ '--sidebar-accent-foreground',
51
+ '--sidebar-border',
52
+ '--sidebar-ring',
53
+ '--color-table-header',
54
+ ];
55
+ const WHITE = 'oklch(1 0 0)';
56
+ const step = (role, at) => `var(--color-${role}-${at})`;
57
+ /**
58
+ * `:root`. Muted ink is the base's 600 rather than shadcn's 500: 500 falls
59
+ * below AA on a `--muted` surface, which is where most small grey text sits.
60
+ * `--accent` is a brand tint and means "active nav row". It is never a hover
61
+ * state.
62
+ */
63
+ export function lightTokens(theme) {
64
+ const [c1, c2, c3, c4, c5] = theme.charts;
65
+ return {
66
+ '--background': WHITE,
67
+ '--foreground': step('base', 950),
68
+ '--card': WHITE,
69
+ '--card-foreground': step('base', 950),
70
+ '--popover': WHITE,
71
+ '--popover-foreground': step('base', 950),
72
+ '--primary': step('primary', 600),
73
+ '--primary-foreground': WHITE,
74
+ '--secondary': step('base', 100),
75
+ '--secondary-foreground': step('base', 900),
76
+ '--muted': step('base', 100),
77
+ '--muted-foreground': step('base', 600),
78
+ '--accent': step('primary', 50),
79
+ '--accent-foreground': step('primary', 700),
80
+ '--destructive': step('critical', 600),
81
+ '--info': step('info', 600),
82
+ '--success': step('success', 600),
83
+ '--warning': step('warning', 600),
84
+ '--destructive-foreground': WHITE,
85
+ '--info-foreground': WHITE,
86
+ '--success-foreground': WHITE,
87
+ '--warning-foreground': WHITE,
88
+ '--border': step('base', 200),
89
+ '--input': step('base', 200),
90
+ '--ring': step('primary', 400),
91
+ '--chart-1': c1[500],
92
+ '--chart-2': c2[500],
93
+ '--chart-3': c3[500],
94
+ '--chart-4': c4[500],
95
+ '--chart-5': c5[500],
96
+ '--sidebar': step('base', 50),
97
+ '--sidebar-foreground': step('base', 950),
98
+ '--sidebar-primary': step('primary', 600),
99
+ '--sidebar-primary-foreground': WHITE,
100
+ '--sidebar-accent': step('base', 100),
101
+ '--sidebar-accent-foreground': step('base', 900),
102
+ '--sidebar-border': step('base', 200),
103
+ '--sidebar-ring': step('base', 400),
104
+ '--color-table-header': step('base', 50),
105
+ };
106
+ }
107
+ /**
108
+ * `.dark`: near-black surfaces with translucent white borders, so stacked
109
+ * panels stay legible without heavy outlines. Status ink brightens to the 400
110
+ * step. The table header follows the sidebar, as in the React package.
111
+ * Without that, the header is the brightest thing on a dark screen.
112
+ */
113
+ export function darkTokens(theme) {
114
+ const [c1, c2, c3, c4, c5] = theme.charts;
115
+ return {
116
+ '--background': step('base', 950),
117
+ '--foreground': step('base', 50),
118
+ '--card': step('base', 900),
119
+ '--card-foreground': step('base', 50),
120
+ '--popover': step('base', 900),
121
+ '--popover-foreground': step('base', 50),
122
+ '--primary': step('primary', 400),
123
+ '--primary-foreground': step('primary', 950),
124
+ '--secondary': step('base', 800),
125
+ '--secondary-foreground': step('base', 50),
126
+ '--muted': step('base', 800),
127
+ '--muted-foreground': step('base', 400),
128
+ '--accent': step('primary', 950),
129
+ '--accent-foreground': step('primary', 200),
130
+ '--destructive': step('critical', 400),
131
+ '--info': step('info', 400),
132
+ '--success': step('success', 400),
133
+ '--warning': step('warning', 400),
134
+ // White on a bright 400 all but disappears; the darkest step reads, as
135
+ // `--primary-foreground` does on the brand.
136
+ '--destructive-foreground': step('critical', 950),
137
+ '--info-foreground': step('info', 950),
138
+ '--success-foreground': step('success', 950),
139
+ '--warning-foreground': step('warning', 950),
140
+ '--border': 'oklch(1 0 0 / 10%)',
141
+ '--input': 'oklch(1 0 0 / 15%)',
142
+ '--ring': step('primary', 500),
143
+ '--chart-1': c1[400],
144
+ '--chart-2': c2[400],
145
+ '--chart-3': c3[400],
146
+ '--chart-4': c4[400],
147
+ '--chart-5': c5[400],
148
+ '--sidebar': step('base', 900),
149
+ '--sidebar-foreground': step('base', 50),
150
+ '--sidebar-primary': step('primary', 400),
151
+ '--sidebar-primary-foreground': step('primary', 950),
152
+ '--sidebar-accent': step('base', 800),
153
+ '--sidebar-accent-foreground': step('base', 50),
154
+ '--sidebar-border': 'oklch(1 0 0 / 10%)',
155
+ '--sidebar-ring': step('base', 600),
156
+ '--color-table-header': 'var(--sidebar)',
157
+ };
158
+ }