@teseor/css 1.6.0 → 1.8.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 (498) hide show
  1. package/dist/compiled.css +1 -1
  2. package/dist/index.css +72 -65
  3. package/package.json +2 -2
  4. package/src/{02-base → base}/root/root.scss +1 -1
  5. package/src/base/typography/typography.docs.json +328 -0
  6. package/src/{02-base → base}/typography/typography.scss +2 -2
  7. package/src/components/actions/button/button-visual.png +0 -0
  8. package/src/{04-components → components}/actions/button/button.api.json +4 -4
  9. package/src/{04-components → components}/actions/button/button.docs.json +63 -11
  10. package/src/{04-components → components}/actions/button/index.scss +20 -14
  11. package/src/components/actions/button-group/button-group.docs.json +151 -0
  12. package/src/{04-components → components}/actions/button-group/index.scss +1 -1
  13. package/src/{04-components → components}/actions/close-button/close-button.docs.json +4 -3
  14. package/src/{04-components → components}/actions/close-button/index.scss +2 -2
  15. package/src/{04-components/layout → components/content}/divider/divider.api.json +2 -2
  16. package/src/components/content/divider/divider.docs.json +113 -0
  17. package/src/{04-components/layout → components/content}/divider/index.scss +1 -1
  18. package/src/components/content/scroll-area/index.scss +92 -0
  19. package/src/components/content/scroll-area/scroll-area-visual.png +0 -0
  20. package/src/components/content/scroll-area/scroll-area.api.json +63 -0
  21. package/src/components/content/scroll-area/scroll-area.docs.json +204 -0
  22. package/src/components/content/scroll-area/scroll-area.visual.spec.ts +14 -0
  23. package/src/{04-components/layout → components/content}/spacer/spacer.docs.json +2 -2
  24. package/src/{04-components → components}/data-display/avatar/avatar.api.json +5 -5
  25. package/src/{04-components → components}/data-display/avatar/avatar.docs.json +55 -10
  26. package/src/{04-components → components}/data-display/avatar/index.scss +1 -1
  27. package/src/components/data-display/badge/badge-visual.png +0 -0
  28. package/src/{04-components → components}/data-display/badge/badge.api.json +14 -2
  29. package/src/{04-components → components}/data-display/badge/badge.docs.json +32 -7
  30. package/src/{04-components → components}/data-display/badge/index.scss +13 -7
  31. package/src/components/data-display/card/card-visual.png +0 -0
  32. package/src/{04-components → components}/data-display/card/card.api.json +15 -0
  33. package/src/{04-components → components}/data-display/card/card.docs.json +26 -2
  34. package/src/{04-components → components}/data-display/card/index.scss +26 -6
  35. package/src/{04-components → components}/data-display/data-list/data-list.api.json +2 -2
  36. package/src/components/data-display/data-list/data-list.docs.json +259 -0
  37. package/src/{04-components → components}/data-display/data-list/index.scss +1 -1
  38. package/src/components/data-display/icon/icon-visual.png +0 -0
  39. package/src/{04-components → components}/data-display/icon/icon.docs.json +105 -17
  40. package/src/{04-components → components}/data-display/icon/index.scss +7 -1
  41. package/src/{04-components → components}/data-display/image/image.api.json +4 -4
  42. package/src/{04-components → components}/data-display/image/image.docs.json +8 -8
  43. package/src/{04-components → components}/data-display/image/index.scss +1 -1
  44. package/src/{04-components → components}/data-display/stat/index.scss +1 -1
  45. package/src/{04-components → components}/data-display/stat/stat.docs.json +1 -1
  46. package/src/{04-components → components}/data-display/status/index.scss +7 -1
  47. package/src/{04-components → components}/data-display/status/status.api.json +2 -2
  48. package/src/components/data-display/status/status.docs.json +147 -0
  49. package/src/{04-components → components}/data-display/table/index.scss +2 -2
  50. package/src/components/data-display/table/table.docs.json +184 -0
  51. package/src/{04-components → components}/data-display/tag/index.scss +9 -3
  52. package/src/components/data-display/tag/tag-visual.png +0 -0
  53. package/src/{04-components → components}/data-display/tag/tag.api.json +17 -5
  54. package/src/{04-components → components}/data-display/tag/tag.docs.json +48 -10
  55. package/src/components/disclosure/accordion/accordion.docs.json +206 -0
  56. package/src/{04-components → components}/disclosure/accordion/index.scss +1 -1
  57. package/src/components/disclosure/disclosure/disclosure-visual.png +0 -0
  58. package/src/{04-components → components}/disclosure/disclosure/disclosure.api.json +2 -2
  59. package/src/components/disclosure/disclosure/disclosure.docs.json +154 -0
  60. package/src/{04-components → components}/disclosure/disclosure/index.scss +11 -1
  61. package/src/{04-components → components}/feedback/alert/alert-visual.png +0 -0
  62. package/src/{04-components → components}/feedback/alert/alert.api.json +24 -1
  63. package/src/components/feedback/alert/alert.docs.json +325 -0
  64. package/src/{04-components → components}/feedback/alert/index.scss +23 -1
  65. package/src/{04-components → components}/feedback/progress/index.scss +11 -1
  66. package/src/components/feedback/progress/progress-visual.png +0 -0
  67. package/src/{04-components → components}/feedback/progress/progress.api.json +1 -1
  68. package/src/components/feedback/progress/progress.docs.json +257 -0
  69. package/src/{04-components → components}/feedback/progress-circle/index.scss +11 -5
  70. package/src/{04-components → components}/feedback/progress-circle/progress-circle.api.json +4 -4
  71. package/src/{04-components → components}/feedback/progress-circle/progress-circle.docs.json +5 -4
  72. package/src/{04-components → components}/feedback/skeleton/index.scss +11 -1
  73. package/src/components/feedback/skeleton/skeleton.docs.json +126 -0
  74. package/src/{04-components → components}/feedback/spinner/index.scss +12 -6
  75. package/src/{04-components → components}/feedback/spinner/spinner.api.json +5 -5
  76. package/src/{04-components → components}/feedback/spinner/spinner.docs.json +42 -9
  77. package/src/{04-components → components}/feedback/toast/index.scss +8 -2
  78. package/src/{04-components → components}/feedback/toast/toast.api.json +4 -4
  79. package/src/components/feedback/toast/toast.docs.json +281 -0
  80. package/src/{04-components → components}/forms/checkbox/checkbox.api.json +8 -4
  81. package/src/{04-components → components}/forms/checkbox/checkbox.docs.json +30 -10
  82. package/src/{04-components → components}/forms/checkbox/index.scss +11 -4
  83. package/src/{04-components → components}/forms/checkbox-group/checkbox-group.docs.json +1 -0
  84. package/src/{04-components → components}/forms/checkbox-group/index.scss +3 -3
  85. package/src/components/forms/field/field.docs.json +190 -0
  86. package/src/{04-components → components}/forms/field/index.scss +1 -1
  87. package/src/{04-components → components}/forms/fieldset/index.scss +2 -2
  88. package/src/{04-components → components}/forms/form/index.scss +1 -1
  89. package/src/{04-components → components}/forms/form-error/form-error.docs.json +23 -2
  90. package/src/{04-components → components}/forms/form-error/index.scss +1 -1
  91. package/src/{04-components → components}/forms/form-helper/form-helper.docs.json +3 -1
  92. package/src/{04-components → components}/forms/form-helper/index.scss +1 -1
  93. package/src/{04-components → components}/forms/input/index.scss +9 -7
  94. package/src/{04-components → components}/forms/input/input-visual.png +0 -0
  95. package/src/{04-components → components}/forms/input/input.api.json +3 -3
  96. package/src/{04-components → components}/forms/input/input.docs.json +128 -11
  97. package/src/{04-components → components}/forms/label/index.scss +2 -2
  98. package/src/components/forms/label/label-visual.png +0 -0
  99. package/src/{04-components → components}/forms/label/label.docs.json +43 -6
  100. package/src/components/forms/number-input/index.scss +153 -0
  101. package/src/components/forms/number-input/number-input-visual.png +0 -0
  102. package/src/components/forms/number-input/number-input.api.json +74 -0
  103. package/src/components/forms/number-input/number-input.docs.json +262 -0
  104. package/src/components/forms/number-input/number-input.visual.spec.ts +14 -0
  105. package/src/components/forms/password-input/index.scss +138 -0
  106. package/src/components/forms/password-input/password-input-visual.png +0 -0
  107. package/src/components/forms/password-input/password-input.api.json +84 -0
  108. package/src/components/forms/password-input/password-input.docs.json +276 -0
  109. package/src/components/forms/password-input/password-input.visual.spec.ts +14 -0
  110. package/src/{04-components → components}/forms/radio/index.scss +11 -4
  111. package/src/{04-components → components}/forms/radio/radio.api.json +8 -4
  112. package/src/{04-components → components}/forms/radio/radio.docs.json +94 -12
  113. package/src/{04-components → components}/forms/radio-group/index.scss +3 -3
  114. package/src/{04-components → components}/forms/radio-group/radio-group.docs.json +1 -0
  115. package/src/{04-components → components}/forms/search-input/index.scss +2 -2
  116. package/src/components/forms/search-input/search-input-visual.png +0 -0
  117. package/src/{04-components → components}/forms/search-input/search-input.docs.json +1 -1
  118. package/src/{04-components → components}/forms/select/index.scss +9 -7
  119. package/src/components/forms/select/select-visual.png +0 -0
  120. package/src/{04-components → components}/forms/select/select.api.json +3 -3
  121. package/src/{04-components → components}/forms/select/select.docs.json +87 -18
  122. package/src/{04-components → components}/forms/slider/index.scss +3 -3
  123. package/src/{04-components → components}/forms/slider/slider.docs.json +3 -3
  124. package/src/{04-components → components}/forms/textarea/index.scss +6 -6
  125. package/src/{04-components → components}/forms/textarea/textarea.api.json +4 -4
  126. package/src/{04-components → components}/forms/textarea/textarea.docs.json +15 -9
  127. package/src/{04-components → components}/forms/toggle/index.scss +3 -3
  128. package/src/components/forms/toggle/toggle-visual.png +0 -0
  129. package/src/{04-components → components}/forms/toggle/toggle.api.json +5 -5
  130. package/src/components/forms/toggle/toggle.docs.json +229 -0
  131. package/src/{04-components → components}/index.scss +6 -2
  132. package/src/{04-components → components}/navigation/breadcrumb/breadcrumb.api.json +1 -1
  133. package/src/components/navigation/breadcrumb/breadcrumb.docs.json +170 -0
  134. package/src/{04-components → components}/navigation/breadcrumb/index.scss +1 -1
  135. package/src/components/navigation/dropdown-menu/dropdown-menu-visual.png +0 -0
  136. package/src/components/navigation/dropdown-menu/dropdown-menu.api.json +37 -0
  137. package/src/components/navigation/dropdown-menu/dropdown-menu.docs.json +272 -0
  138. package/src/components/navigation/dropdown-menu/dropdown-menu.visual.spec.ts +14 -0
  139. package/src/components/navigation/dropdown-menu/index.scss +84 -0
  140. package/src/{04-components → components}/navigation/menu/index.scss +3 -3
  141. package/src/{04-components → components}/navigation/menu/menu.api.json +4 -4
  142. package/src/components/navigation/menu/menu.docs.json +326 -0
  143. package/src/{04-components → components}/navigation/nav/index.scss +2 -2
  144. package/src/{04-components → components}/navigation/pagination/index.scss +2 -2
  145. package/src/{04-components → components}/navigation/pagination/pagination.api.json +2 -2
  146. package/src/components/navigation/pagination/pagination.docs.json +483 -0
  147. package/src/{04-components → components}/navigation/tabs/index.scss +48 -4
  148. package/src/components/navigation/tabs/tabs-visual.png +0 -0
  149. package/src/{04-components → components}/navigation/tabs/tabs.api.json +16 -1
  150. package/src/components/navigation/tabs/tabs.docs.json +243 -0
  151. package/src/{04-components → components}/overlays/dialog/dialog.api.json +3 -3
  152. package/src/components/overlays/dialog/dialog.docs.json +200 -0
  153. package/src/{04-components → components}/overlays/dialog/index.scss +1 -1
  154. package/src/{04-components → components}/overlays/drawer/drawer.api.json +4 -4
  155. package/src/components/overlays/drawer/drawer.docs.json +282 -0
  156. package/src/{04-components → components}/overlays/drawer/index.scss +9 -2
  157. package/src/{04-components → components}/overlays/modal/index.scss +2 -2
  158. package/src/{04-components → components}/overlays/modal/modal.api.json +6 -6
  159. package/src/components/overlays/modal/modal.docs.json +163 -0
  160. package/src/{04-components → components}/overlays/overlay/index.scss +1 -1
  161. package/src/components/overlays/overlay/overlay.docs.json +138 -0
  162. package/src/{04-components → components}/overlays/popover/index.scss +1 -1
  163. package/src/{04-components → components}/overlays/popover/popover.api.json +4 -4
  164. package/src/{04-components → components}/overlays/popover/popover.docs.json +47 -6
  165. package/src/{04-components → components}/overlays/tooltip/index.scss +5 -5
  166. package/src/{04-components → components}/overlays/tooltip/tooltip.api.json +4 -4
  167. package/src/{04-components → components}/overlays/tooltip/tooltip.docs.json +46 -6
  168. package/src/{04-components → components}/typography/blockquote/index.scss +1 -1
  169. package/src/components/typography/code/code-visual.png +0 -0
  170. package/src/{04-components → components}/typography/code/code.docs.json +23 -3
  171. package/src/{04-components → components}/typography/code/index.scss +1 -1
  172. package/src/{04-components → components}/typography/code-block/code-block.docs.json +1 -0
  173. package/src/{04-components → components}/typography/code-block/index.scss +1 -1
  174. package/src/{04-components → components}/typography/heading/heading.docs.json +28 -6
  175. package/src/{04-components → components}/typography/heading/index.scss +1 -1
  176. package/src/{04-components → components}/typography/kbd/index.scss +1 -1
  177. package/src/{04-components → components}/typography/kbd/kbd.docs.json +1 -1
  178. package/src/{04-components → components}/typography/link/index.scss +1 -1
  179. package/src/{04-components → components}/typography/link/link.docs.json +51 -6
  180. package/src/{04-components → components}/typography/list/index.scss +1 -1
  181. package/src/{04-components → components}/typography/list/list.api.json +1 -1
  182. package/src/{04-components → components}/typography/list/list.docs.json +2 -2
  183. package/src/{04-components → components}/typography/mark/index.scss +1 -1
  184. package/src/{00-config → config}/tokens/_variables.scss +4 -0
  185. package/src/config/tokens/accessibility.docs.json +104 -0
  186. package/src/config/tokens/borders/index.scss +8 -0
  187. package/src/config/tokens/colors/colors.docs.json +316 -0
  188. package/src/config/tokens/colors/index.scss +28 -0
  189. package/src/{00-config → config}/tokens/grid/grid.docs.json +1 -1
  190. package/src/config/tokens/grid/index.scss +13 -0
  191. package/src/config/tokens/radius/index.scss +9 -0
  192. package/src/config/tokens/semantic/colors/index.scss +67 -0
  193. package/src/config/tokens/semantic/spacing/index.scss +12 -0
  194. package/src/config/tokens/shadows/index.scss +7 -0
  195. package/src/config/tokens/spacing/index.scss +17 -0
  196. package/src/{00-config → config}/tokens/spacing/spacing.docs.json +7 -7
  197. package/src/config/tokens/theming.docs.json +179 -0
  198. package/src/config/tokens/typography/index.scss +120 -0
  199. package/src/{99-debug → debug}/grid-overlay.scss +3 -3
  200. package/src/index.scss +17 -20
  201. package/src/layout/app-shell/app-shell-visual.png +0 -0
  202. package/src/{03-layout → layout}/app-shell/app-shell.docs.json +10 -10
  203. package/src/layout/app-shell/app-shell.visual.spec.ts +13 -0
  204. package/src/{03-layout → layout}/aspect-ratio/aspect-ratio.docs.json +2 -2
  205. package/src/layout/box/box-visual.png +0 -0
  206. package/src/layout/box/box.docs.json +93 -0
  207. package/src/layout/box/box.visual.spec.ts +13 -0
  208. package/src/{03-layout → layout}/box/index.scss +1 -1
  209. package/src/layout/center/center-visual.png +0 -0
  210. package/src/layout/center/center.visual.spec.ts +13 -0
  211. package/src/layout/column/column-visual.png +0 -0
  212. package/src/{03-layout/stack/stack.api.json → layout/column/column.api.json} +1 -1
  213. package/src/{03-layout/stack/stack.docs.json → layout/column/column.docs.json} +7 -7
  214. package/src/layout/column/column.visual.spec.ts +13 -0
  215. package/src/layout/column/index.scss +13 -0
  216. package/src/layout/container/index.scss +17 -0
  217. package/src/{03-layout → layout}/content/index.scss +1 -1
  218. package/src/layout/grid/grid-visual.png +0 -0
  219. package/src/layout/grid/grid.visual.spec.ts +13 -0
  220. package/src/{03-layout → layout}/index.scss +2 -3
  221. package/src/{03-layout → layout}/main/index.scss +4 -4
  222. package/src/layout/row/index.scss +18 -0
  223. package/src/{03-layout/cluster/cluster.api.json → layout/row/row.api.json} +1 -1
  224. package/src/{03-layout/cluster/cluster.docs.json → layout/row/row.docs.json} +6 -6
  225. package/src/{03-layout/cluster/cluster.visual.spec.ts → layout/row/row.visual.spec.ts} +5 -5
  226. package/src/{03-layout → layout}/sidebar/index.scss +6 -6
  227. package/src/{03-layout → layout}/sidebar/sidebar.docs.json +4 -4
  228. package/src/{03-layout → layout}/sidebar-nav/index.scss +15 -2
  229. package/src/layout/sidebar-nav/sidebar-nav-all.png +0 -0
  230. package/src/layout/sidebar-nav/sidebar-nav.docs.json +827 -0
  231. package/src/{03-layout → layout}/topbar/index.scss +1 -1
  232. package/src/testing/api-types.ts +1 -1
  233. package/src/testing/grid-alignment.spec.ts +34 -88
  234. package/src/testing/html-generator.ts +1 -1
  235. package/src/testing/page-setup.ts +4 -2
  236. package/src/utilities/border/index.scss +18 -0
  237. package/src/{05-utilities → utilities}/display/display.scss +11 -11
  238. package/src/{05-utilities → utilities}/spacing/spacing.docs.json +1 -1
  239. package/src/{05-utilities → utilities}/spacing/spacing.scss +5 -5
  240. package/src/{05-utilities → utilities}/text/text.docs.json +7 -7
  241. package/src/{05-utilities → utilities}/visually-hidden/index.scss +2 -2
  242. package/src/{05-utilities → utilities}/visually-hidden/visually-hidden.docs.json +17 -2
  243. package/src/00-config/mixins/_border.scss +0 -13
  244. package/src/00-config/mixins/index.scss +0 -1
  245. package/src/00-config/tokens/borders/index.scss +0 -6
  246. package/src/00-config/tokens/colors/colors.docs.json +0 -168
  247. package/src/00-config/tokens/colors/index.scss +0 -26
  248. package/src/00-config/tokens/grid/index.scss +0 -11
  249. package/src/00-config/tokens/radius/index.scss +0 -7
  250. package/src/00-config/tokens/semantic/colors/index.scss +0 -30
  251. package/src/00-config/tokens/semantic/spacing/index.scss +0 -10
  252. package/src/00-config/tokens/shadows/index.scss +0 -5
  253. package/src/00-config/tokens/spacing/index.scss +0 -15
  254. package/src/00-config/tokens/theming.docs.json +0 -77
  255. package/src/00-config/tokens/typography/index.scss +0 -119
  256. package/src/02-base/typography/typography.docs.json +0 -94
  257. package/src/03-layout/box/box.docs.json +0 -57
  258. package/src/03-layout/cluster/index.scss +0 -18
  259. package/src/03-layout/container/index.scss +0 -17
  260. package/src/03-layout/flex/flex.api.json +0 -15
  261. package/src/03-layout/flex/flex.docs.json +0 -56
  262. package/src/03-layout/flex/index.scss +0 -51
  263. package/src/03-layout/sidebar-nav/sidebar-nav-all.png +0 -0
  264. package/src/03-layout/sidebar-nav/sidebar-nav.docs.json +0 -100
  265. package/src/03-layout/stack/index.scss +0 -13
  266. package/src/04-components/actions/button/button-visual.png +0 -0
  267. package/src/04-components/actions/button-group/button-group.docs.json +0 -52
  268. package/src/04-components/data-display/badge/badge-visual.png +0 -0
  269. package/src/04-components/data-display/card/card-visual.png +0 -0
  270. package/src/04-components/data-display/data-list/data-list.docs.json +0 -79
  271. package/src/04-components/data-display/icon/icon-visual.png +0 -0
  272. package/src/04-components/data-display/status/status.docs.json +0 -60
  273. package/src/04-components/data-display/table/table.docs.json +0 -59
  274. package/src/04-components/data-display/tag/tag-visual.png +0 -0
  275. package/src/04-components/disclosure/accordion/accordion.docs.json +0 -51
  276. package/src/04-components/disclosure/disclosure/disclosure-visual.png +0 -0
  277. package/src/04-components/disclosure/disclosure/disclosure.docs.json +0 -73
  278. package/src/04-components/feedback/alert/alert.docs.json +0 -79
  279. package/src/04-components/feedback/progress/progress-visual.png +0 -0
  280. package/src/04-components/feedback/progress/progress.docs.json +0 -87
  281. package/src/04-components/feedback/skeleton/skeleton.docs.json +0 -62
  282. package/src/04-components/feedback/toast/toast.docs.json +0 -99
  283. package/src/04-components/forms/field/field.docs.json +0 -59
  284. package/src/04-components/forms/label/label-visual.png +0 -0
  285. package/src/04-components/forms/search-input/search-input-visual.png +0 -0
  286. package/src/04-components/forms/select/select-visual.png +0 -0
  287. package/src/04-components/forms/toggle/toggle-visual.png +0 -0
  288. package/src/04-components/forms/toggle/toggle.docs.json +0 -92
  289. package/src/04-components/layout/divider/divider.docs.json +0 -68
  290. package/src/04-components/navigation/breadcrumb/breadcrumb.docs.json +0 -59
  291. package/src/04-components/navigation/menu/menu.docs.json +0 -81
  292. package/src/04-components/navigation/pagination/pagination.docs.json +0 -88
  293. package/src/04-components/navigation/tabs/tabs-visual.png +0 -0
  294. package/src/04-components/navigation/tabs/tabs.docs.json +0 -61
  295. package/src/04-components/overlays/dialog/dialog.docs.json +0 -58
  296. package/src/04-components/overlays/drawer/drawer.docs.json +0 -78
  297. package/src/04-components/overlays/modal/modal.docs.json +0 -86
  298. package/src/04-components/overlays/overlay/overlay.docs.json +0 -63
  299. package/src/04-components/typography/code/code-visual.png +0 -0
  300. package/src/05-utilities/border/index.scss +0 -21
  301. package/src/testing/sidebar-toggles.spec.ts +0 -103
  302. /package/src/{02-base → base}/index.scss +0 -0
  303. /package/src/{04-components → components}/actions/button/button.visual.spec.ts +0 -0
  304. /package/src/{04-components → components}/actions/button-group/button-group-visual.png +0 -0
  305. /package/src/{04-components → components}/actions/button-group/button-group.api.json +0 -0
  306. /package/src/{04-components → components}/actions/button-group/button-group.visual.spec.ts +0 -0
  307. /package/src/{04-components → components}/actions/close-button/close-button-visual.png +0 -0
  308. /package/src/{04-components → components}/actions/close-button/close-button.api.json +0 -0
  309. /package/src/{04-components → components}/actions/close-button/close-button.visual.spec.ts +0 -0
  310. /package/src/{04-components/layout → components/content}/divider/divider-visual.png +0 -0
  311. /package/src/{04-components/layout → components/content}/divider/divider.visual.spec.ts +0 -0
  312. /package/src/{04-components/layout → components/content}/spacer/index.scss +0 -0
  313. /package/src/{04-components/layout → components/content}/spacer/spacer-visual.png +0 -0
  314. /package/src/{04-components/layout → components/content}/spacer/spacer.api.json +0 -0
  315. /package/src/{04-components/layout → components/content}/spacer/spacer.visual.spec.ts +0 -0
  316. /package/src/{04-components → components}/data-display/avatar/avatar-visual.png +0 -0
  317. /package/src/{04-components → components}/data-display/avatar/avatar.visual.spec.ts +0 -0
  318. /package/src/{04-components → components}/data-display/badge/badge.visual.spec.ts +0 -0
  319. /package/src/{04-components → components}/data-display/card/card.visual.spec.ts +0 -0
  320. /package/src/{04-components → components}/data-display/data-list/data-list-visual.png +0 -0
  321. /package/src/{04-components → components}/data-display/data-list/data-list.visual.spec.ts +0 -0
  322. /package/src/{04-components → components}/data-display/icon/icon.api.json +0 -0
  323. /package/src/{04-components → components}/data-display/icon/icon.visual.spec.ts +0 -0
  324. /package/src/{04-components → components}/data-display/image/image-visual.png +0 -0
  325. /package/src/{04-components → components}/data-display/image/image.visual.spec.ts +0 -0
  326. /package/src/{04-components → components}/data-display/stat/stat-visual.png +0 -0
  327. /package/src/{04-components → components}/data-display/stat/stat.api.json +0 -0
  328. /package/src/{04-components → components}/data-display/stat/stat.visual.spec.ts +0 -0
  329. /package/src/{04-components → components}/data-display/status/status-visual.png +0 -0
  330. /package/src/{04-components → components}/data-display/status/status.visual.spec.ts +0 -0
  331. /package/src/{04-components → components}/data-display/table/table-visual.png +0 -0
  332. /package/src/{04-components → components}/data-display/table/table.api.json +0 -0
  333. /package/src/{04-components → components}/data-display/table/table.visual.spec.ts +0 -0
  334. /package/src/{04-components → components}/data-display/tag/tag.visual.spec.ts +0 -0
  335. /package/src/{04-components → components}/disclosure/accordion/accordion-visual.png +0 -0
  336. /package/src/{04-components → components}/disclosure/accordion/accordion.api.json +0 -0
  337. /package/src/{04-components → components}/disclosure/accordion/accordion.visual.spec.ts +0 -0
  338. /package/src/{04-components → components}/disclosure/disclosure/disclosure.visual.spec.ts +0 -0
  339. /package/src/{04-components → components}/feedback/alert/alert.visual.spec.ts +0 -0
  340. /package/src/{04-components → components}/feedback/progress/progress.visual.spec.ts +0 -0
  341. /package/src/{04-components → components}/feedback/progress-circle/progress-circle-visual.png +0 -0
  342. /package/src/{04-components → components}/feedback/progress-circle/progress-circle.visual.spec.ts +0 -0
  343. /package/src/{04-components → components}/feedback/skeleton/skeleton-visual.png +0 -0
  344. /package/src/{04-components → components}/feedback/skeleton/skeleton.api.json +0 -0
  345. /package/src/{04-components → components}/feedback/skeleton/skeleton.visual.spec.ts +0 -0
  346. /package/src/{04-components → components}/feedback/spinner/spinner-visual.png +0 -0
  347. /package/src/{04-components → components}/feedback/spinner/spinner.visual.spec.ts +0 -0
  348. /package/src/{04-components → components}/feedback/toast/toast-visual.png +0 -0
  349. /package/src/{04-components → components}/feedback/toast/toast.visual.spec.ts +0 -0
  350. /package/src/{04-components → components}/forms/checkbox/checkbox-visual.png +0 -0
  351. /package/src/{04-components → components}/forms/checkbox/checkbox.visual.spec.ts +0 -0
  352. /package/src/{04-components → components}/forms/checkbox-group/checkbox-group-visual.png +0 -0
  353. /package/src/{04-components → components}/forms/checkbox-group/checkbox-group.api.json +0 -0
  354. /package/src/{04-components → components}/forms/checkbox-group/checkbox-group.visual.spec.ts +0 -0
  355. /package/src/{04-components → components}/forms/field/field-visual.png +0 -0
  356. /package/src/{04-components → components}/forms/field/field.api.json +0 -0
  357. /package/src/{04-components → components}/forms/field/field.visual.spec.ts +0 -0
  358. /package/src/{04-components → components}/forms/fieldset/fieldset-visual.png +0 -0
  359. /package/src/{04-components → components}/forms/fieldset/fieldset.api.json +0 -0
  360. /package/src/{04-components → components}/forms/fieldset/fieldset.docs.json +0 -0
  361. /package/src/{04-components → components}/forms/fieldset/fieldset.visual.spec.ts +0 -0
  362. /package/src/{04-components → components}/forms/form/form-visual.png +0 -0
  363. /package/src/{04-components → components}/forms/form/form.api.json +0 -0
  364. /package/src/{04-components → components}/forms/form/form.docs.json +0 -0
  365. /package/src/{04-components → components}/forms/form/form.visual.spec.ts +0 -0
  366. /package/src/{04-components → components}/forms/form-error/form-error-visual.png +0 -0
  367. /package/src/{04-components → components}/forms/form-error/form-error.api.json +0 -0
  368. /package/src/{04-components → components}/forms/form-error/form-error.visual.spec.ts +0 -0
  369. /package/src/{04-components → components}/forms/form-helper/form-helper-visual.png +0 -0
  370. /package/src/{04-components → components}/forms/form-helper/form-helper.api.json +0 -0
  371. /package/src/{04-components → components}/forms/form-helper/form-helper.visual.spec.ts +0 -0
  372. /package/src/{04-components → components}/forms/input/input.visual.spec.ts +0 -0
  373. /package/src/{04-components → components}/forms/label/label.api.json +0 -0
  374. /package/src/{04-components → components}/forms/label/label.visual.spec.ts +0 -0
  375. /package/src/{04-components → components}/forms/radio/radio-visual.png +0 -0
  376. /package/src/{04-components → components}/forms/radio/radio.visual.spec.ts +0 -0
  377. /package/src/{04-components → components}/forms/radio-group/radio-group-visual.png +0 -0
  378. /package/src/{04-components → components}/forms/radio-group/radio-group.api.json +0 -0
  379. /package/src/{04-components → components}/forms/radio-group/radio-group.visual.spec.ts +0 -0
  380. /package/src/{04-components → components}/forms/search-input/search-input.api.json +0 -0
  381. /package/src/{04-components → components}/forms/search-input/search-input.visual.spec.ts +0 -0
  382. /package/src/{04-components → components}/forms/select/select.visual.spec.ts +0 -0
  383. /package/src/{04-components → components}/forms/slider/slider-visual.png +0 -0
  384. /package/src/{04-components → components}/forms/slider/slider.api.json +0 -0
  385. /package/src/{04-components → components}/forms/slider/slider.visual.spec.ts +0 -0
  386. /package/src/{04-components → components}/forms/textarea/textarea-visual.png +0 -0
  387. /package/src/{04-components → components}/forms/textarea/textarea.visual.spec.ts +0 -0
  388. /package/src/{04-components → components}/forms/toggle/toggle.visual.spec.ts +0 -0
  389. /package/src/{04-components → components}/navigation/breadcrumb/breadcrumb-visual.png +0 -0
  390. /package/src/{04-components → components}/navigation/breadcrumb/breadcrumb.visual.spec.ts +0 -0
  391. /package/src/{04-components → components}/navigation/menu/menu-visual.png +0 -0
  392. /package/src/{04-components → components}/navigation/menu/menu.visual.spec.ts +0 -0
  393. /package/src/{04-components → components}/navigation/nav/nav-visual.png +0 -0
  394. /package/src/{04-components → components}/navigation/nav/nav.api.json +0 -0
  395. /package/src/{04-components → components}/navigation/nav/nav.docs.json +0 -0
  396. /package/src/{04-components → components}/navigation/nav/nav.visual.spec.ts +0 -0
  397. /package/src/{04-components → components}/navigation/pagination/pagination-visual.png +0 -0
  398. /package/src/{04-components → components}/navigation/pagination/pagination.visual.spec.ts +0 -0
  399. /package/src/{04-components → components}/navigation/tabs/tabs.visual.spec.ts +0 -0
  400. /package/src/{04-components → components}/overlays/dialog/dialog-visual.png +0 -0
  401. /package/src/{04-components → components}/overlays/dialog/dialog.visual.spec.ts +0 -0
  402. /package/src/{04-components → components}/overlays/drawer/drawer-visual.png +0 -0
  403. /package/src/{04-components → components}/overlays/drawer/drawer.visual.spec.ts +0 -0
  404. /package/src/{04-components → components}/overlays/modal/modal-visual.png +0 -0
  405. /package/src/{04-components → components}/overlays/modal/modal.visual.spec.ts +0 -0
  406. /package/src/{04-components → components}/overlays/overlay/overlay-visual.png +0 -0
  407. /package/src/{04-components → components}/overlays/overlay/overlay.api.json +0 -0
  408. /package/src/{04-components → components}/overlays/overlay/overlay.visual.spec.ts +0 -0
  409. /package/src/{04-components → components}/overlays/popover/popover-visual.png +0 -0
  410. /package/src/{04-components → components}/overlays/popover/popover.visual.spec.ts +0 -0
  411. /package/src/{04-components → components}/overlays/tooltip/tooltip-visual.png +0 -0
  412. /package/src/{04-components → components}/overlays/tooltip/tooltip.visual.spec.ts +0 -0
  413. /package/src/{04-components → components}/typography/blockquote/blockquote-visual.png +0 -0
  414. /package/src/{04-components → components}/typography/blockquote/blockquote.api.json +0 -0
  415. /package/src/{04-components → components}/typography/blockquote/blockquote.docs.json +0 -0
  416. /package/src/{04-components → components}/typography/blockquote/blockquote.visual.spec.ts +0 -0
  417. /package/src/{04-components → components}/typography/code/code.api.json +0 -0
  418. /package/src/{04-components → components}/typography/code/code.visual.spec.ts +0 -0
  419. /package/src/{04-components → components}/typography/code-block/code-block-visual.png +0 -0
  420. /package/src/{04-components → components}/typography/code-block/code-block.api.json +0 -0
  421. /package/src/{04-components → components}/typography/code-block/code-block.visual.spec.ts +0 -0
  422. /package/src/{04-components → components}/typography/heading/heading-visual.png +0 -0
  423. /package/src/{04-components → components}/typography/heading/heading.api.json +0 -0
  424. /package/src/{04-components → components}/typography/heading/heading.visual.spec.ts +0 -0
  425. /package/src/{04-components → components}/typography/kbd/kbd-visual.png +0 -0
  426. /package/src/{04-components → components}/typography/kbd/kbd.api.json +0 -0
  427. /package/src/{04-components → components}/typography/kbd/kbd.visual.spec.ts +0 -0
  428. /package/src/{04-components → components}/typography/link/link-visual.png +0 -0
  429. /package/src/{04-components → components}/typography/link/link.api.json +0 -0
  430. /package/src/{04-components → components}/typography/link/link.visual.spec.ts +0 -0
  431. /package/src/{04-components → components}/typography/list/list-visual.png +0 -0
  432. /package/src/{04-components → components}/typography/list/list.visual.spec.ts +0 -0
  433. /package/src/{04-components → components}/typography/mark/mark-visual.png +0 -0
  434. /package/src/{04-components → components}/typography/mark/mark.api.json +0 -0
  435. /package/src/{04-components → components}/typography/mark/mark.docs.json +0 -0
  436. /package/src/{04-components → components}/typography/mark/mark.visual.spec.ts +0 -0
  437. /package/src/{00-config → config}/layers/layers.scss +0 -0
  438. /package/src/{00-config → config}/tokens/index.scss +0 -0
  439. /package/src/{00-config → config}/tokens/input.scss +0 -0
  440. /package/src/{00-config → config}/tokens/motion/index.scss +0 -0
  441. /package/src/{00-config → config}/tokens/zindex/index.scss +0 -0
  442. /package/src/{99-debug → debug}/index.scss +0 -0
  443. /package/src/{03-layout → layout}/app-shell/app-shell.api.json +0 -0
  444. /package/src/{03-layout → layout}/app-shell/index.scss +0 -0
  445. /package/src/{03-layout → layout}/aspect-ratio/aspect-ratio-visual.png +0 -0
  446. /package/src/{03-layout → layout}/aspect-ratio/aspect-ratio.api.json +0 -0
  447. /package/src/{03-layout → layout}/aspect-ratio/aspect-ratio.visual.spec.ts +0 -0
  448. /package/src/{03-layout → layout}/aspect-ratio/index.scss +0 -0
  449. /package/src/{03-layout → layout}/box/box.api.json +0 -0
  450. /package/src/{03-layout → layout}/center/center.api.json +0 -0
  451. /package/src/{03-layout → layout}/center/center.docs.json +0 -0
  452. /package/src/{03-layout → layout}/center/index.scss +0 -0
  453. /package/src/{03-layout → layout}/container/container.api.json +0 -0
  454. /package/src/{03-layout → layout}/content/content-visual.png +0 -0
  455. /package/src/{03-layout → layout}/content/content.api.json +0 -0
  456. /package/src/{03-layout → layout}/content/content.docs.json +0 -0
  457. /package/src/{03-layout → layout}/content/content.visual.spec.ts +0 -0
  458. /package/src/{03-layout → layout}/footer/footer-visual.png +0 -0
  459. /package/src/{03-layout → layout}/footer/footer.api.json +0 -0
  460. /package/src/{03-layout → layout}/footer/footer.docs.json +0 -0
  461. /package/src/{03-layout → layout}/footer/footer.visual.spec.ts +0 -0
  462. /package/src/{03-layout → layout}/footer/index.scss +0 -0
  463. /package/src/{03-layout → layout}/grid/grid.api.json +0 -0
  464. /package/src/{03-layout → layout}/grid/grid.docs.json +0 -0
  465. /package/src/{03-layout → layout}/grid/index.scss +0 -0
  466. /package/src/{03-layout → layout}/main/main.api.json +0 -0
  467. /package/src/{03-layout → layout}/nav-rail/index.scss +0 -0
  468. /package/src/{03-layout → layout}/nav-rail/nav-rail-visual.png +0 -0
  469. /package/src/{03-layout → layout}/nav-rail/nav-rail.api.json +0 -0
  470. /package/src/{03-layout → layout}/nav-rail/nav-rail.docs.json +0 -0
  471. /package/src/{03-layout → layout}/nav-rail/nav-rail.visual.spec.ts +0 -0
  472. /package/src/{03-layout → layout}/page-header/index.scss +0 -0
  473. /package/src/{03-layout → layout}/page-header/page-header-visual.png +0 -0
  474. /package/src/{03-layout → layout}/page-header/page-header.api.json +0 -0
  475. /package/src/{03-layout → layout}/page-header/page-header.docs.json +0 -0
  476. /package/src/{03-layout → layout}/page-header/page-header.visual.spec.ts +0 -0
  477. /package/src/{03-layout/cluster/cluster-visual.png → layout/row/row-visual.png} +0 -0
  478. /package/src/{03-layout → layout}/sidebar/sidebar-visual.png +0 -0
  479. /package/src/{03-layout → layout}/sidebar/sidebar.api.json +0 -0
  480. /package/src/{03-layout → layout}/sidebar/sidebar.visual.spec.ts +0 -0
  481. /package/src/{03-layout → layout}/sidebar-nav/sidebar-nav.api.json +0 -0
  482. /package/src/{03-layout → layout}/sidebar-nav/sidebar-nav.visual.spec.ts +0 -0
  483. /package/src/{03-layout → layout}/topbar/topbar-visual.png +0 -0
  484. /package/src/{03-layout → layout}/topbar/topbar.api.json +0 -0
  485. /package/src/{03-layout → layout}/topbar/topbar.docs.json +0 -0
  486. /package/src/{03-layout → layout}/topbar/topbar.visual.spec.ts +0 -0
  487. /package/src/{01-reset → reset}/index.scss +0 -0
  488. /package/src/{01-reset → reset}/reset.scss +0 -0
  489. /package/src/{05-utilities → utilities}/display/display.api.json +0 -0
  490. /package/src/{05-utilities → utilities}/display/display.docs.json +0 -0
  491. /package/src/{05-utilities → utilities}/index.scss +0 -0
  492. /package/src/{05-utilities → utilities}/spacing/spacing.api.json +0 -0
  493. /package/src/{05-utilities → utilities}/text/text.api.json +0 -0
  494. /package/src/{05-utilities → utilities}/text/text.scss +0 -0
  495. /package/src/{05-utilities → utilities}/view-transition/index.scss +0 -0
  496. /package/src/{05-utilities → utilities}/view-transition/view-transition.api.json +0 -0
  497. /package/src/{05-utilities → utilities}/view-transition/view-transition.docs.json +0 -0
  498. /package/src/{05-utilities → utilities}/visually-hidden/visually-hidden.api.json +0 -0
@@ -0,0 +1,179 @@
1
+ {
2
+ "id": "theming",
3
+ "type": "guide",
4
+ "title": "Theming",
5
+ "description": "Customize the design system with CSS custom properties",
6
+ "skipValidation": true,
7
+ "sections": [
8
+ {
9
+ "title": "Brand Colors",
10
+ "description": "Change the entire color palette by adjusting hue values",
11
+ "examples": [
12
+ {
13
+ "title": "Default (Blue)",
14
+ "items": [
15
+ {
16
+ "tag": "div",
17
+ "class": "theme-demo",
18
+ "children": [
19
+ { "tag": "button", "class": "ui-button", "text": "Primary" },
20
+ { "tag": "button", "class": "ui-button ui-button--secondary", "text": "Secondary" },
21
+ { "tag": "button", "class": "ui-button ui-button--danger", "text": "Danger" }
22
+ ]
23
+ }
24
+ ],
25
+ "code": ":root {\n --ui-hue-primary: 220; /* Blue */\n}"
26
+ },
27
+ {
28
+ "title": "Purple Theme",
29
+ "items": [
30
+ {
31
+ "tag": "div",
32
+ "class": "theme-demo theme-purple",
33
+ "children": [
34
+ { "tag": "button", "class": "ui-button", "text": "Primary" },
35
+ { "tag": "button", "class": "ui-button ui-button--secondary", "text": "Secondary" },
36
+ { "tag": "button", "class": "ui-button ui-button--danger", "text": "Danger" }
37
+ ]
38
+ }
39
+ ],
40
+ "code": ".theme-purple {\n --ui-hue-primary: 270; /* Purple */\n}"
41
+ },
42
+ {
43
+ "title": "Teal Theme",
44
+ "items": [
45
+ {
46
+ "tag": "div",
47
+ "class": "theme-demo theme-teal",
48
+ "children": [
49
+ { "tag": "button", "class": "ui-button", "text": "Primary" },
50
+ { "tag": "button", "class": "ui-button ui-button--secondary", "text": "Secondary" },
51
+ { "tag": "button", "class": "ui-button ui-button--danger", "text": "Danger" }
52
+ ]
53
+ }
54
+ ],
55
+ "code": ".theme-teal {\n --ui-hue-primary: 180; /* Teal */\n}"
56
+ },
57
+ {
58
+ "title": "Orange Theme",
59
+ "items": [
60
+ {
61
+ "tag": "div",
62
+ "class": "theme-demo theme-orange",
63
+ "children": [
64
+ { "tag": "button", "class": "ui-button", "text": "Primary" },
65
+ { "tag": "button", "class": "ui-button ui-button--secondary", "text": "Secondary" },
66
+ { "tag": "button", "class": "ui-button ui-button--danger", "text": "Danger" }
67
+ ]
68
+ }
69
+ ],
70
+ "code": ".theme-orange {\n --ui-hue-primary: 25; /* Orange */\n}"
71
+ }
72
+ ]
73
+ },
74
+ {
75
+ "title": "Dark Mode",
76
+ "description": "Toggle dark mode with data-theme attribute",
77
+ "examples": [
78
+ {
79
+ "title": "Light Mode",
80
+ "items": [
81
+ {
82
+ "tag": "div",
83
+ "class": "theme-demo",
84
+ "children": [
85
+ {
86
+ "tag": "div",
87
+ "class": "ui-card",
88
+ "children": [{ "tag": "p", "text": "Light mode card" }]
89
+ }
90
+ ]
91
+ }
92
+ ],
93
+ "code": "<html>\n <!-- Light mode (default) -->\n</html>"
94
+ },
95
+ {
96
+ "title": "Dark Mode",
97
+ "items": [
98
+ {
99
+ "tag": "div",
100
+ "class": "theme-demo",
101
+ "attrs": { "data-theme": "dark" },
102
+ "children": [
103
+ {
104
+ "tag": "div",
105
+ "class": "ui-card",
106
+ "children": [{ "tag": "p", "text": "Dark mode card" }]
107
+ }
108
+ ]
109
+ }
110
+ ],
111
+ "code": "<html data-theme=\"dark\">\n <!-- Dark mode enabled -->\n</html>"
112
+ }
113
+ ]
114
+ },
115
+ {
116
+ "title": "Component Overrides",
117
+ "description": "Override specific component tokens",
118
+ "examples": [
119
+ {
120
+ "title": "Custom Button Height",
121
+ "items": [
122
+ {
123
+ "tag": "div",
124
+ "class": "theme-demo custom-buttons",
125
+ "children": [
126
+ { "tag": "button", "class": "ui-button ui-button--sm", "text": "Small" },
127
+ { "tag": "button", "class": "ui-button", "text": "Default" },
128
+ { "tag": "button", "class": "ui-button ui-button--lg", "text": "Large" }
129
+ ]
130
+ }
131
+ ],
132
+ "code": ".custom-buttons {\n --ui-button-height-sm: 24px;\n --ui-button-height: 40px;\n --ui-button-height-lg: 56px;\n}"
133
+ },
134
+ {
135
+ "title": "Custom Card Padding",
136
+ "items": [
137
+ {
138
+ "tag": "div",
139
+ "class": "theme-demo custom-cards",
140
+ "children": [
141
+ {
142
+ "tag": "div",
143
+ "class": "ui-card",
144
+ "children": [{ "tag": "p", "text": "Card with custom padding" }]
145
+ }
146
+ ]
147
+ }
148
+ ],
149
+ "code": ".custom-cards {\n --ui-card-padding: var(--ui-space-4);\n}"
150
+ }
151
+ ]
152
+ },
153
+ {
154
+ "title": "Full Theme Example",
155
+ "description": "Complete theme customization",
156
+ "examples": [
157
+ {
158
+ "items": [
159
+ {
160
+ "tag": "div",
161
+ "class": "theme-demo theme-corporate",
162
+ "children": [
163
+ { "tag": "button", "class": "ui-button", "text": "Action" },
164
+ {
165
+ "tag": "div",
166
+ "class": "ui-card",
167
+ "children": [
168
+ { "tag": "p", "text": "Corporate theme with teal accent and sharp corners" }
169
+ ]
170
+ }
171
+ ]
172
+ }
173
+ ],
174
+ "code": ".theme-corporate {\n /* Brand hue */\n --ui-hue-primary: 180;\n\n /* Sharper corners */\n --ui-radius-sm: 2px;\n --ui-radius-md: 4px;\n --ui-radius-lg: 6px;\n\n /* Tighter spacing */\n --ui-space-1: 12px;\n --ui-space-2: 24px;\n}"
175
+ }
176
+ ]
177
+ }
178
+ ]
179
+ }
@@ -0,0 +1,120 @@
1
+ @layer tokens {
2
+ :root {
3
+ // Font families — system font stack, override with custom fonts via these tokens
4
+ --ui-font-sans: system-ui, -apple-system, blinkmacsystemfont, "Segoe UI", roboto, "Helvetica Neue", arial, sans-serif;
5
+ --ui-font-mono: ui-monospace, sfmono-regular, "SF Mono", menlo, consolas, "Liberation Mono", monospace;
6
+
7
+ // ==========================================================================
8
+ // PRIMITIVE TOKENS - Font Size Scale
9
+ // Modular scale: 1.2 ratio (Minor Third), base 16px
10
+ // ==========================================================================
11
+ --ui-font-size-xs: 0.75rem;
12
+ --ui-font-size-sm: 0.875rem;
13
+ --ui-font-size-md: 1rem;
14
+ --ui-font-size-lg: 1.25rem;
15
+ --ui-font-size-xl: 1.5rem;
16
+ --ui-font-size-2xl: 1.75rem;
17
+ --ui-font-size-3xl: 2rem;
18
+ --ui-font-size-4xl: 2.5rem;
19
+
20
+ // ==========================================================================
21
+ // PRIMITIVE TOKENS - Line Heights (8px grid-snap)
22
+ // Two modes: normal (for body text) and tight (for UI/forms)
23
+ // ==========================================================================
24
+
25
+ // Tight line-heights for compact UI elements
26
+ --ui-leading-tight-xs: var(--ui-row-1);
27
+ --ui-leading-tight-sm: var(--ui-row-1);
28
+ --ui-leading-tight-md: calc(var(--ui-unit) * 3);
29
+ --ui-leading-tight-lg: calc(var(--ui-unit) * 3);
30
+
31
+ // Normal line-heights for readable body text
32
+ --ui-leading-xs: var(--ui-row-1);
33
+ --ui-leading-sm: calc(var(--ui-unit) * 3);
34
+ --ui-leading-md: calc(var(--ui-unit) * 3);
35
+ --ui-leading-lg: var(--ui-row-2);
36
+ --ui-leading-xl: var(--ui-row-2);
37
+ --ui-leading-2xl: var(--ui-row-2);
38
+ --ui-leading-3xl: calc(var(--ui-unit) * 5);
39
+ --ui-leading-4xl: calc(var(--ui-unit) * 6);
40
+
41
+ // ==========================================================================
42
+ // PRIMITIVE TOKENS - Font Weights
43
+ // ==========================================================================
44
+ --ui-weight-normal: 400;
45
+ --ui-weight-medium: 500;
46
+ --ui-weight-semibold: 600;
47
+ --ui-weight-bold: 700;
48
+
49
+ // ==========================================================================
50
+ // PRIMITIVE TOKENS - Letter Spacing
51
+ // ==========================================================================
52
+ --ui-tracking-display: -0.02em;
53
+ --ui-tracking-body: 0;
54
+ --ui-tracking-caps: 0.08em;
55
+
56
+ // ==========================================================================
57
+ // SEMANTIC TOKENS - Text Roles
58
+ // ==========================================================================
59
+
60
+ // Heading 1
61
+ --ui-heading-1-size: var(--ui-font-size-4xl);
62
+ --ui-heading-1-line-height: var(--ui-leading-4xl);
63
+ --ui-heading-1-weight: var(--ui-weight-bold);
64
+ --ui-heading-1-tracking: var(--ui-tracking-display);
65
+
66
+ // Heading 2
67
+ --ui-heading-2-size: var(--ui-font-size-3xl);
68
+ --ui-heading-2-line-height: var(--ui-leading-3xl);
69
+ --ui-heading-2-weight: var(--ui-weight-bold);
70
+ --ui-heading-2-tracking: -0.01em;
71
+
72
+ // Heading 3
73
+ --ui-heading-3-size: var(--ui-font-size-2xl);
74
+ --ui-heading-3-line-height: var(--ui-leading-2xl);
75
+ --ui-heading-3-weight: var(--ui-weight-semibold);
76
+ --ui-heading-3-tracking: var(--ui-tracking-body);
77
+
78
+ // Heading 4
79
+ --ui-heading-4-size: var(--ui-font-size-xl);
80
+ --ui-heading-4-line-height: var(--ui-leading-xl);
81
+ --ui-heading-4-weight: var(--ui-weight-semibold);
82
+ --ui-heading-4-tracking: var(--ui-tracking-body);
83
+
84
+ // Heading 5
85
+ --ui-heading-5-size: var(--ui-font-size-lg);
86
+ --ui-heading-5-line-height: var(--ui-leading-sm);
87
+ --ui-heading-5-weight: var(--ui-weight-medium);
88
+ --ui-heading-5-tracking: var(--ui-tracking-body);
89
+
90
+ // Body
91
+ --ui-body-size: var(--ui-font-size-md);
92
+ --ui-body-line-height: var(--ui-leading-md);
93
+ --ui-body-weight: var(--ui-weight-normal);
94
+ --ui-body-tracking: var(--ui-tracking-body);
95
+
96
+ // Body Small
97
+ --ui-body-sm-size: var(--ui-font-size-sm);
98
+ --ui-body-sm-line-height: var(--ui-leading-sm);
99
+ --ui-body-sm-weight: var(--ui-weight-normal);
100
+ --ui-body-sm-tracking: var(--ui-tracking-body);
101
+
102
+ // Caption
103
+ --ui-caption-size: var(--ui-font-size-xs);
104
+ --ui-caption-line-height: var(--ui-leading-xs);
105
+ --ui-caption-weight: var(--ui-weight-normal);
106
+ --ui-caption-tracking: 0.01em;
107
+
108
+ // Lead
109
+ --ui-lead-size: var(--ui-font-size-lg);
110
+ --ui-lead-line-height: var(--ui-leading-lg);
111
+ --ui-lead-weight: var(--ui-weight-normal);
112
+ --ui-lead-tracking: var(--ui-tracking-body);
113
+
114
+ // Eyebrow
115
+ --ui-eyebrow-size: var(--ui-font-size-xs);
116
+ --ui-eyebrow-line-height: var(--ui-leading-xs);
117
+ --ui-eyebrow-weight: var(--ui-weight-semibold);
118
+ --ui-eyebrow-tracking: var(--ui-tracking-caps);
119
+ }
120
+ }
@@ -24,7 +24,7 @@
24
24
  background-image: linear-gradient(to right, var(--debug-color) 1px, transparent 1px),
25
25
  linear-gradient(to bottom, var(--debug-color) 1px, transparent 1px);
26
26
  pointer-events: none;
27
- background-size: var(--unit) var(--unit);
27
+ background-size: var(--ui-unit) var(--ui-unit);
28
28
  background-position: 0 0;
29
29
  }
30
30
 
@@ -49,7 +49,7 @@
49
49
  linear-gradient(to bottom, var(--debug-color) 1px, transparent 1px),
50
50
  linear-gradient(to bottom, var(--debug-color-strong) 1px, transparent 1px);
51
51
  pointer-events: none;
52
- background-size: var(--unit) var(--unit), var(--unit) var(--unit), var(--unit) var(--ui-row);
52
+ background-size: var(--ui-unit) var(--ui-unit), var(--ui-unit) var(--ui-unit), var(--ui-unit) var(--ui-row);
53
53
  background-position: 0 0;
54
54
  }
55
55
 
@@ -71,7 +71,7 @@
71
71
 
72
72
  background-image: linear-gradient(to bottom, var(--debug-color) 1px, transparent 1px);
73
73
  pointer-events: none;
74
- background-size: 100% var(--unit);
74
+ background-size: 100% var(--ui-unit);
75
75
  }
76
76
 
77
77
  // Element boundaries outline
package/src/index.scss CHANGED
@@ -1,27 +1,24 @@
1
- /**
2
- * CSS Library - Main Entry Point
3
- *
4
- * Import order follows numbered folder structure for cascade control.
5
- */
1
+ // CSS Library - Main Entry Point
2
+ // Import order controls cascade.
6
3
 
7
- /* 00. Config: Layer definitions + Design tokens */
8
- @use './00-config/layers/layers' as *;
9
- @use './00-config/tokens/index' as *;
4
+ // Config: Layer definitions + Design tokens
5
+ @use './config/layers/layers' as *;
6
+ @use './config/tokens/index' as *;
10
7
 
11
- /* 01. Reset styles */
12
- @use './01-reset/index' as *;
8
+ // Reset styles
9
+ @use './reset/index' as *;
13
10
 
14
- /* 02. Base styles (typography, etc.) */
15
- @use './02-base/index' as *;
11
+ // Base styles (typography, etc.)
12
+ @use './base/index' as *;
16
13
 
17
- /* 03. Layout primitives */
18
- @use './03-layout/index' as *;
14
+ // Layout primitives
15
+ @use './layout/index' as *;
19
16
 
20
- /* 04. Components */
21
- @use './04-components/index' as *;
17
+ // Components
18
+ @use './components/index' as *;
22
19
 
23
- /* 05. Utilities (high specificity, load last) */
24
- @use './05-utilities/index' as *;
20
+ // Utilities (high specificity, load last)
21
+ @use './utilities/index' as *;
25
22
 
26
- /* 99. Debug tools (dev only) */
27
- @use './99-debug/index' as *;
23
+ // Debug tools (dev only)
24
+ @use './debug/index' as *;
@@ -27,11 +27,11 @@
27
27
  "title": "Sidebar Widths",
28
28
  "examples": [
29
29
  {
30
- "layout": "stack",
30
+ "layout": "column",
31
31
  "items": [
32
32
  {
33
33
  "tag": "div",
34
- "class": "ui-cluster ui-cluster--sm",
34
+ "class": "ui-row ui-row--sm",
35
35
  "children": [
36
36
  { "tag": "code", "text": ".ui-sidebar--sm" },
37
37
  { "tag": "span", "text": "192px (24 units)" }
@@ -39,7 +39,7 @@
39
39
  },
40
40
  {
41
41
  "tag": "div",
42
- "class": "ui-cluster ui-cluster--sm",
42
+ "class": "ui-row ui-row--sm",
43
43
  "children": [
44
44
  { "tag": "code", "text": ".ui-sidebar--md" },
45
45
  { "tag": "span", "text": "240px (30 units) - default" }
@@ -47,7 +47,7 @@
47
47
  },
48
48
  {
49
49
  "tag": "div",
50
- "class": "ui-cluster ui-cluster--sm",
50
+ "class": "ui-row ui-row--sm",
51
51
  "children": [
52
52
  { "tag": "code", "text": ".ui-sidebar--lg" },
53
53
  { "tag": "span", "text": "320px (40 units)" }
@@ -70,11 +70,11 @@
70
70
  "title": "Container Widths",
71
71
  "examples": [
72
72
  {
73
- "layout": "stack",
73
+ "layout": "column",
74
74
  "items": [
75
75
  {
76
76
  "tag": "div",
77
- "class": "ui-cluster ui-cluster--sm",
77
+ "class": "ui-row ui-row--sm",
78
78
  "children": [
79
79
  { "tag": "code", "text": ".ui-container--sm" },
80
80
  { "tag": "span", "text": "640px (80 units)" }
@@ -82,7 +82,7 @@
82
82
  },
83
83
  {
84
84
  "tag": "div",
85
- "class": "ui-cluster ui-cluster--sm",
85
+ "class": "ui-row ui-row--sm",
86
86
  "children": [
87
87
  { "tag": "code", "text": ".ui-container--md" },
88
88
  { "tag": "span", "text": "800px (100 units)" }
@@ -90,7 +90,7 @@
90
90
  },
91
91
  {
92
92
  "tag": "div",
93
- "class": "ui-cluster ui-cluster--sm",
93
+ "class": "ui-row ui-row--sm",
94
94
  "children": [
95
95
  { "tag": "code", "text": ".ui-container--lg" },
96
96
  { "tag": "span", "text": "960px (120 units) - default" }
@@ -98,7 +98,7 @@
98
98
  },
99
99
  {
100
100
  "tag": "div",
101
- "class": "ui-cluster ui-cluster--sm",
101
+ "class": "ui-row ui-row--sm",
102
102
  "children": [
103
103
  { "tag": "code", "text": ".ui-container--xl" },
104
104
  { "tag": "span", "text": "1280px (160 units)" }
@@ -106,7 +106,7 @@
106
106
  },
107
107
  {
108
108
  "tag": "div",
109
- "class": "ui-cluster ui-cluster--sm",
109
+ "class": "ui-row ui-row--sm",
110
110
  "children": [
111
111
  { "tag": "code", "text": ".ui-container--full" },
112
112
  { "tag": "span", "text": "No max width" }
@@ -0,0 +1,13 @@
1
+ import { resolve } from 'node:path';
2
+ import { expect, test } from '@playwright/test';
3
+ import { saveForLostPixel, setupVisualTestFromDocs } from '../../testing';
4
+
5
+ const DOCS_PATH = resolve(__dirname, 'app-shell.docs.json');
6
+
7
+ test.describe('app-shell visual regression', () => {
8
+ test('all variations', async ({ page }) => {
9
+ await setupVisualTestFromDocs(page, DOCS_PATH);
10
+ await saveForLostPixel(page, 'app-shell');
11
+ await expect(page.locator('body')).toHaveScreenshot('app-shell.visual.png');
12
+ });
13
+ });
@@ -12,7 +12,7 @@
12
12
  "items": [
13
13
  {
14
14
  "tag": "div",
15
- "class": "ui-cluster ui-cluster--md",
15
+ "class": "ui-row ui-row--md",
16
16
  "children": [
17
17
  {
18
18
  "tag": "div",
@@ -112,7 +112,7 @@
112
112
  "items": [
113
113
  {
114
114
  "tag": "div",
115
- "class": "ui-cluster ui-cluster--md",
115
+ "class": "ui-row ui-row--md",
116
116
  "children": [
117
117
  {
118
118
  "tag": "div",
Binary file
@@ -0,0 +1,93 @@
1
+ {
2
+ "id": "box",
3
+ "type": "primitive",
4
+ "title": "Box",
5
+ "description": "Base container with style props. Foundation for layout primitives.",
6
+ "api": "box.api.json",
7
+ "sections": [
8
+ {
9
+ "title": "Default",
10
+ "examples": [
11
+ {
12
+ "items": [{ "tag": "div", "class": "ui-box", "text": "Content" }],
13
+ "code": "<div class=\"ui-box\">Content</div>"
14
+ }
15
+ ]
16
+ },
17
+ {
18
+ "title": "Padding",
19
+ "examples": [
20
+ {
21
+ "layout": "column",
22
+ "items": [
23
+ { "tag": "div", "class": "ui-box ui-box--p-1 ui-box--bg-subtle", "text": "Padding 1" },
24
+ { "tag": "div", "class": "ui-box ui-box--p-2 ui-box--bg-subtle", "text": "Padding 2" },
25
+ { "tag": "div", "class": "ui-box ui-box--p-3 ui-box--bg-subtle", "text": "Padding 3" },
26
+ { "tag": "div", "class": "ui-box ui-box--p-4 ui-box--bg-subtle", "text": "Padding 4" }
27
+ ],
28
+ "code": "<div class=\"ui-box ui-box--p-1\">...</div>\n<div class=\"ui-box ui-box--p-2\">...</div>\n<div class=\"ui-box ui-box--p-3\">...</div>\n<div class=\"ui-box ui-box--p-4\">...</div>"
29
+ }
30
+ ]
31
+ },
32
+ {
33
+ "title": "Background",
34
+ "examples": [
35
+ {
36
+ "layout": "column",
37
+ "items": [
38
+ {
39
+ "tag": "div",
40
+ "class": "ui-box ui-box--p-2 ui-box--bg-subtle",
41
+ "text": "Subtle background"
42
+ },
43
+ {
44
+ "tag": "div",
45
+ "class": "ui-box ui-box--p-2 ui-box--bg-muted",
46
+ "text": "Muted background"
47
+ }
48
+ ],
49
+ "code": "<div class=\"ui-box ui-box--bg-subtle\">...</div>\n<div class=\"ui-box ui-box--bg-muted\">...</div>"
50
+ }
51
+ ]
52
+ },
53
+ {
54
+ "title": "Rounded",
55
+ "examples": [
56
+ {
57
+ "layout": "row",
58
+ "items": [
59
+ {
60
+ "tag": "div",
61
+ "class": "ui-box ui-box--p-3 ui-box--bg-subtle ui-box--rounded",
62
+ "text": "Rounded"
63
+ },
64
+ {
65
+ "tag": "div",
66
+ "class": "ui-box ui-box--p-3 ui-box--bg-subtle ui-box--rounded-lg",
67
+ "text": "Rounded lg"
68
+ }
69
+ ],
70
+ "code": "<div class=\"ui-box ui-box--rounded\">...</div>\n<div class=\"ui-box ui-box--rounded-lg\">...</div>"
71
+ }
72
+ ]
73
+ },
74
+ {
75
+ "title": "Custom via CSS Variables",
76
+ "examples": [
77
+ {
78
+ "items": [
79
+ {
80
+ "tag": "div",
81
+ "class": "ui-box",
82
+ "attrs": {
83
+ "style": "--box-padding: var(--ui-space-3); --box-bg: var(--ui-color-primary); --box-color: white; --box-radius: var(--ui-radius-lg);"
84
+ },
85
+ "text": "Custom box"
86
+ }
87
+ ],
88
+ "code": "<div class=\"ui-box\" style=\"--box-padding: ...; --box-bg: ...;\">...</div>"
89
+ }
90
+ ]
91
+ }
92
+ ]
93
+ }
@@ -0,0 +1,13 @@
1
+ import { resolve } from 'node:path';
2
+ import { expect, test } from '@playwright/test';
3
+ import { saveForLostPixel, setupVisualTestFromDocs } from '../../testing';
4
+
5
+ const DOCS_PATH = resolve(__dirname, 'box.docs.json');
6
+
7
+ test.describe('box visual regression', () => {
8
+ test('all variations', async ({ page }) => {
9
+ await setupVisualTestFromDocs(page, DOCS_PATH);
10
+ await saveForLostPixel(page, 'box');
11
+ await expect(page.locator('body')).toHaveScreenshot('box.visual.png');
12
+ });
13
+ });
@@ -1,4 +1,4 @@
1
- @use '../../00-config/tokens/variables' as t;
1
+ @use '../../config/tokens/variables' as t;
2
2
 
3
3
  // Box - base container with style props
4
4
  // Foundation for other layout primitives
@@ -0,0 +1,13 @@
1
+ import { resolve } from 'node:path';
2
+ import { expect, test } from '@playwright/test';
3
+ import { saveForLostPixel, setupVisualTestFromDocs } from '../../testing';
4
+
5
+ const DOCS_PATH = resolve(__dirname, 'center.docs.json');
6
+
7
+ test.describe('center visual regression', () => {
8
+ test('all variations', async ({ page }) => {
9
+ await setupVisualTestFromDocs(page, DOCS_PATH);
10
+ await saveForLostPixel(page, 'center');
11
+ await expect(page.locator('body')).toHaveScreenshot('center.visual.png');
12
+ });
13
+ });
@@ -1,5 +1,5 @@
1
1
  {
2
- "name": "stack",
2
+ "name": "column",
3
3
  "element": "div",
4
4
  "modifiers": {
5
5
  "size": {