@graupl/graupl 1.0.0-beta.1 → 1.0.0-beta.10

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 (595) hide show
  1. package/.devcontainer/devcontainer.json +221 -0
  2. package/.env +3 -0
  3. package/.github/workflows/docs.yml +13 -6
  4. package/.github/workflows/prerelease.yml +125 -0
  5. package/.github/workflows/release.yml +111 -0
  6. package/.github/workflows/test.yml +54 -3
  7. package/.versionrc.cjs +12 -0
  8. package/.vscode/settings.json +10 -0
  9. package/CHANGELOG.md +196 -1
  10. package/build.js +4 -2
  11. package/combine-at-rules.cjs +61 -0
  12. package/container/.env +26 -0
  13. package/container/build/app.dockerfile +41 -0
  14. package/container/docker-compose.yml +27 -0
  15. package/dist/css/base/button.css +1 -1
  16. package/dist/css/base/button.css.map +1 -1
  17. package/dist/css/base/form.css +1 -1
  18. package/dist/css/base/form.css.map +1 -1
  19. package/dist/css/base/link.css +1 -1
  20. package/dist/css/base/link.css.map +1 -1
  21. package/dist/css/base/table.css +1 -1
  22. package/dist/css/base/table.css.map +1 -1
  23. package/dist/css/base.css +1 -1
  24. package/dist/css/base.css.map +1 -1
  25. package/dist/css/component/accordion.css +4 -1
  26. package/dist/css/component/accordion.css.map +1 -1
  27. package/dist/css/component/alert.css +1 -1
  28. package/dist/css/component/alert.css.map +1 -1
  29. package/dist/css/component/card.css +1 -1
  30. package/dist/css/component/card.css.map +1 -1
  31. package/dist/css/component/carousel.css +1 -1
  32. package/dist/css/component/carousel.css.map +1 -1
  33. package/dist/css/component/input-group.css +1 -1
  34. package/dist/css/component/input-group.css.map +1 -1
  35. package/dist/css/component/list.css +2 -0
  36. package/dist/css/component/list.css.map +1 -0
  37. package/dist/css/component/menu.css +1 -1
  38. package/dist/css/component/menu.css.map +1 -1
  39. package/dist/css/component/navigation.css +1 -1
  40. package/dist/css/component/navigation.css.map +1 -1
  41. package/dist/css/component.css +4 -1
  42. package/dist/css/component.css.map +1 -1
  43. package/dist/css/graupl.css +4 -1
  44. package/dist/css/graupl.css.map +1 -1
  45. package/dist/css/init.css.map +1 -1
  46. package/dist/css/layout/columns.css +1 -1
  47. package/dist/css/layout/columns.css.map +1 -1
  48. package/dist/css/layout/container.css +1 -1
  49. package/dist/css/layout/container.css.map +1 -1
  50. package/dist/css/layout/flex-columns.css +1 -1
  51. package/dist/css/layout/flex-columns.css.map +1 -1
  52. package/dist/css/layout.css +4 -1
  53. package/dist/css/layout.css.map +1 -1
  54. package/dist/css/normalize.css +1 -1
  55. package/dist/css/normalize.css.map +1 -1
  56. package/dist/css/state/focus.css +1 -1
  57. package/dist/css/state/focus.css.map +1 -1
  58. package/dist/css/state.css +1 -1
  59. package/dist/css/state.css.map +1 -1
  60. package/dist/css/theme/color.css +1 -1
  61. package/dist/css/theme/color.css.map +1 -1
  62. package/dist/css/theme/typography.css +1 -1
  63. package/dist/css/theme/typography.css.map +1 -1
  64. package/dist/css/theme.css +1 -1
  65. package/dist/css/theme.css.map +1 -1
  66. package/dist/css/utilities/alignment.css +1 -1
  67. package/dist/css/utilities/alignment.css.map +1 -1
  68. package/dist/css/utilities/background.css +2 -0
  69. package/dist/css/utilities/background.css.map +1 -0
  70. package/dist/css/utilities/border.css +2 -0
  71. package/dist/css/utilities/border.css.map +1 -0
  72. package/dist/css/utilities/color.css +1 -1
  73. package/dist/css/utilities/color.css.map +1 -1
  74. package/dist/css/utilities/container.css +2 -0
  75. package/dist/css/utilities/container.css.map +1 -0
  76. package/dist/css/utilities/display.css +1 -1
  77. package/dist/css/utilities/display.css.map +1 -1
  78. package/dist/css/utilities/flex.css +1 -1
  79. package/dist/css/utilities/flex.css.map +1 -1
  80. package/dist/css/utilities/gradient.css +2 -0
  81. package/dist/css/utilities/gradient.css.map +1 -0
  82. package/dist/css/utilities/height.css +1 -1
  83. package/dist/css/utilities/height.css.map +1 -1
  84. package/dist/css/utilities/inset.css +1 -1
  85. package/dist/css/utilities/inset.css.map +1 -1
  86. package/dist/css/utilities/justification.css +1 -1
  87. package/dist/css/utilities/justification.css.map +1 -1
  88. package/dist/css/utilities/list.css +1 -1
  89. package/dist/css/utilities/list.css.map +1 -1
  90. package/dist/css/utilities/order.css +1 -1
  91. package/dist/css/utilities/order.css.map +1 -1
  92. package/dist/css/utilities/position.css +2 -0
  93. package/dist/css/utilities/position.css.map +1 -0
  94. package/dist/css/utilities/ratio.css +1 -1
  95. package/dist/css/utilities/ratio.css.map +1 -1
  96. package/dist/css/utilities/spacing.css +1 -1
  97. package/dist/css/utilities/spacing.css.map +1 -1
  98. package/dist/css/utilities/typography.css +1 -1
  99. package/dist/css/utilities/typography.css.map +1 -1
  100. package/dist/css/utilities/visibility.css +1 -1
  101. package/dist/css/utilities/visibility.css.map +1 -1
  102. package/dist/css/utilities/visually-hidden.css +2 -0
  103. package/dist/css/utilities/visually-hidden.css.map +1 -0
  104. package/dist/css/utilities/width.css +1 -1
  105. package/dist/css/utilities/width.css.map +1 -1
  106. package/dist/css/utilities/z-index.css +2 -0
  107. package/dist/css/utilities/z-index.css.map +1 -0
  108. package/dist/css/utilities.css +1 -1
  109. package/dist/css/utilities.css.map +1 -1
  110. package/dist/js/graupl.cjs.js +5 -3
  111. package/dist/js/graupl.esm.js +1305 -206
  112. package/dist/js/graupl.iife.js +5 -3
  113. package/docs/.vitepress/config.js +31 -1
  114. package/docs/.vitepress/theme/custom.scss +16 -16
  115. package/docs/compiling-graupl.md +6 -5
  116. package/docs/utilities/alignment.md +411 -0
  117. package/docs/utilities/background.md +192 -0
  118. package/docs/utilities/border.md +268 -0
  119. package/docs/utilities/color.md +348 -0
  120. package/docs/utilities/container.md +3 -0
  121. package/docs/utilities/display.md +3 -0
  122. package/docs/utilities/flex.md +3 -0
  123. package/docs/utilities/gradient.md +3 -0
  124. package/docs/utilities/height.md +3 -0
  125. package/docs/utilities/inset.md +3 -0
  126. package/docs/utilities/justification.md +3 -0
  127. package/docs/utilities/list.md +3 -0
  128. package/docs/utilities/order.md +3 -0
  129. package/docs/utilities/position.md +3 -0
  130. package/docs/utilities/ratio.md +3 -0
  131. package/docs/utilities/responsive-classes.md +3 -0
  132. package/docs/utilities/spacing.md +3 -0
  133. package/docs/utilities/typography.md +3 -0
  134. package/docs/utilities/visibility.md +3 -0
  135. package/docs/utilities/visually-hidden.md +3 -0
  136. package/docs/utilities/width.md +3 -0
  137. package/docs/utilities/z-index.md +3 -0
  138. package/favicon.ico +0 -0
  139. package/index.html +418 -55
  140. package/logo.svg +296 -0
  141. package/package.json +33 -37
  142. package/packages/core/build.js +9 -0
  143. package/packages/core/dist/css/base/button.css +2 -0
  144. package/packages/core/dist/css/base/button.css.map +1 -0
  145. package/packages/core/dist/css/base/form.css +2 -0
  146. package/packages/core/dist/css/base/form.css.map +1 -0
  147. package/packages/core/dist/css/base/link.css +2 -0
  148. package/packages/core/dist/css/base/link.css.map +1 -0
  149. package/packages/core/dist/css/base/table.css +2 -0
  150. package/packages/core/dist/css/base/table.css.map +1 -0
  151. package/packages/core/dist/css/base.css +2 -0
  152. package/packages/core/dist/css/base.css.map +1 -0
  153. package/packages/core/dist/css/component/accordion.css +5 -0
  154. package/packages/core/dist/css/component/accordion.css.map +1 -0
  155. package/packages/core/dist/css/component/alert.css +2 -0
  156. package/packages/core/dist/css/component/alert.css.map +1 -0
  157. package/packages/core/dist/css/component/card.css +2 -0
  158. package/packages/core/dist/css/component/card.css.map +1 -0
  159. package/packages/core/dist/css/component/carousel.css +2 -0
  160. package/packages/core/dist/css/component/carousel.css.map +1 -0
  161. package/packages/core/dist/css/component/input-group.css +2 -0
  162. package/packages/core/dist/css/component/input-group.css.map +1 -0
  163. package/packages/core/dist/css/component/list.css +2 -0
  164. package/packages/core/dist/css/component/list.css.map +1 -0
  165. package/packages/core/dist/css/component/menu.css +2 -0
  166. package/packages/core/dist/css/component/menu.css.map +1 -0
  167. package/packages/core/dist/css/component/navigation.css +2 -0
  168. package/packages/core/dist/css/component/navigation.css.map +1 -0
  169. package/packages/core/dist/css/component.css +5 -0
  170. package/packages/core/dist/css/component.css.map +1 -0
  171. package/packages/core/dist/css/graupl.css +5 -0
  172. package/packages/core/dist/css/graupl.css.map +1 -0
  173. package/{src/scss/_init.scss → packages/core/dist/css/init.css} +1 -2
  174. package/packages/core/dist/css/init.css.map +1 -0
  175. package/packages/core/dist/css/layout/columns.css +2 -0
  176. package/packages/core/dist/css/layout/columns.css.map +1 -0
  177. package/packages/core/dist/css/layout/container.css +2 -0
  178. package/packages/core/dist/css/layout/container.css.map +1 -0
  179. package/packages/core/dist/css/layout/flex-columns.css +2 -0
  180. package/packages/core/dist/css/layout/flex-columns.css.map +1 -0
  181. package/packages/core/dist/css/layout.css +5 -0
  182. package/packages/core/dist/css/layout.css.map +1 -0
  183. package/packages/core/dist/css/normalize.css +2 -0
  184. package/packages/core/dist/css/normalize.css.map +1 -0
  185. package/packages/core/dist/css/state/focus.css +2 -0
  186. package/packages/core/dist/css/state/focus.css.map +1 -0
  187. package/packages/core/dist/css/state.css +2 -0
  188. package/packages/core/dist/css/state.css.map +1 -0
  189. package/packages/core/dist/css/theme/color.css +2 -0
  190. package/packages/core/dist/css/theme/color.css.map +1 -0
  191. package/packages/core/dist/css/theme/typography.css +2 -0
  192. package/packages/core/dist/css/theme/typography.css.map +1 -0
  193. package/packages/core/dist/css/theme.css +2 -0
  194. package/packages/core/dist/css/theme.css.map +1 -0
  195. package/packages/core/dist/css/utilities/alignment.css +2 -0
  196. package/packages/core/dist/css/utilities/alignment.css.map +1 -0
  197. package/packages/core/dist/css/utilities/background.css +2 -0
  198. package/packages/core/dist/css/utilities/background.css.map +1 -0
  199. package/packages/core/dist/css/utilities/border.css +2 -0
  200. package/packages/core/dist/css/utilities/border.css.map +1 -0
  201. package/packages/core/dist/css/utilities/color.css +2 -0
  202. package/packages/core/dist/css/utilities/color.css.map +1 -0
  203. package/packages/core/dist/css/utilities/container.css +2 -0
  204. package/packages/core/dist/css/utilities/container.css.map +1 -0
  205. package/packages/core/dist/css/utilities/display.css +2 -0
  206. package/packages/core/dist/css/utilities/display.css.map +1 -0
  207. package/packages/core/dist/css/utilities/flex.css +2 -0
  208. package/packages/core/dist/css/utilities/flex.css.map +1 -0
  209. package/packages/core/dist/css/utilities/gradient.css +2 -0
  210. package/packages/core/dist/css/utilities/gradient.css.map +1 -0
  211. package/packages/core/dist/css/utilities/height.css +2 -0
  212. package/packages/core/dist/css/utilities/height.css.map +1 -0
  213. package/packages/core/dist/css/utilities/inset.css +2 -0
  214. package/packages/core/dist/css/utilities/inset.css.map +1 -0
  215. package/packages/core/dist/css/utilities/justification.css +2 -0
  216. package/packages/core/dist/css/utilities/justification.css.map +1 -0
  217. package/packages/core/dist/css/utilities/list.css +2 -0
  218. package/packages/core/dist/css/utilities/list.css.map +1 -0
  219. package/packages/core/dist/css/utilities/order.css +2 -0
  220. package/packages/core/dist/css/utilities/order.css.map +1 -0
  221. package/packages/core/dist/css/utilities/position.css +2 -0
  222. package/packages/core/dist/css/utilities/position.css.map +1 -0
  223. package/packages/core/dist/css/utilities/ratio.css +2 -0
  224. package/packages/core/dist/css/utilities/ratio.css.map +1 -0
  225. package/packages/core/dist/css/utilities/spacing.css +2 -0
  226. package/packages/core/dist/css/utilities/spacing.css.map +1 -0
  227. package/packages/core/dist/css/utilities/typography.css +2 -0
  228. package/packages/core/dist/css/utilities/typography.css.map +1 -0
  229. package/packages/core/dist/css/utilities/visibility.css +2 -0
  230. package/packages/core/dist/css/utilities/visibility.css.map +1 -0
  231. package/packages/core/dist/css/utilities/visually-hidden.css +2 -0
  232. package/packages/core/dist/css/utilities/visually-hidden.css.map +1 -0
  233. package/packages/core/dist/css/utilities/width.css +2 -0
  234. package/packages/core/dist/css/utilities/width.css.map +1 -0
  235. package/packages/core/dist/css/utilities/z-index.css +2 -0
  236. package/packages/core/dist/css/utilities/z-index.css.map +1 -0
  237. package/packages/core/dist/css/utilities.css +2 -0
  238. package/packages/core/dist/css/utilities.css.map +1 -0
  239. package/packages/core/package.json +58 -0
  240. package/packages/core/scss/base/button.scss +3 -0
  241. package/packages/core/scss/base/form.scss +3 -0
  242. package/packages/core/scss/base/link.scss +3 -0
  243. package/packages/core/scss/base/table.scss +3 -0
  244. package/packages/core/scss/base.scss +3 -0
  245. package/packages/core/scss/component/accordion.scss +3 -0
  246. package/packages/core/scss/component/alert.scss +3 -0
  247. package/packages/core/scss/component/card.scss +3 -0
  248. package/packages/core/scss/component/carousel.scss +3 -0
  249. package/packages/core/scss/component/input-group.scss +3 -0
  250. package/packages/core/scss/component/list.scss +3 -0
  251. package/packages/core/scss/component/menu.scss +3 -0
  252. package/packages/core/scss/component/navigation.scss +3 -0
  253. package/packages/core/scss/component.scss +3 -0
  254. package/packages/core/scss/graupl.scss +3 -0
  255. package/packages/core/scss/init.scss +3 -0
  256. package/packages/core/scss/layout/columns.scss +3 -0
  257. package/packages/core/scss/layout/container.scss +3 -0
  258. package/packages/core/scss/layout/flex-columns.scss +3 -0
  259. package/packages/core/scss/layout.scss +3 -0
  260. package/packages/core/scss/normalize.scss +3 -0
  261. package/packages/core/scss/state/focus.scss +3 -0
  262. package/packages/core/scss/state.scss +3 -0
  263. package/packages/core/scss/theme/color.scss +3 -0
  264. package/packages/core/scss/theme/typography.scss +3 -0
  265. package/packages/core/scss/theme.scss +3 -0
  266. package/packages/core/scss/utilities/alignment.scss +3 -0
  267. package/packages/core/scss/utilities/background.scss +3 -0
  268. package/packages/core/scss/utilities/border.scss +3 -0
  269. package/packages/core/scss/utilities/color.scss +3 -0
  270. package/packages/core/scss/utilities/container.scss +3 -0
  271. package/packages/core/scss/utilities/display.scss +3 -0
  272. package/packages/core/scss/utilities/flex.scss +3 -0
  273. package/packages/core/scss/utilities/gradient.scss +3 -0
  274. package/packages/core/scss/utilities/height.scss +3 -0
  275. package/packages/core/scss/utilities/inset.scss +3 -0
  276. package/packages/core/scss/utilities/justification.scss +3 -0
  277. package/packages/core/scss/utilities/list.scss +3 -0
  278. package/packages/core/scss/utilities/order.scss +3 -0
  279. package/{scss/utilities/postion.scss → packages/core/scss/utilities/position.scss} +1 -1
  280. package/packages/core/scss/utilities/ratio.scss +3 -0
  281. package/packages/core/scss/utilities/spacing.scss +3 -0
  282. package/packages/core/scss/utilities/typography.scss +3 -0
  283. package/packages/core/scss/utilities/visibility.scss +3 -0
  284. package/packages/core/scss/utilities/visually-hidden.scss +3 -0
  285. package/packages/core/scss/utilities/width.scss +3 -0
  286. package/packages/core/scss/utilities/z-index.scss +3 -0
  287. package/packages/core/scss/utilities.scss +3 -0
  288. package/{src → packages/core/src}/scss/_defaults.scss +59 -11
  289. package/{src → packages/core/src}/scss/_index.scss +1 -1
  290. package/packages/core/src/scss/_init.scss +6 -0
  291. package/{src → packages/core/src}/scss/_normalize.scss +1 -1
  292. package/{src → packages/core/src}/scss/_variables.scss +43 -1
  293. package/{src → packages/core/src}/scss/base/_index.scss +1 -1
  294. package/{src → packages/core/src}/scss/base/button/_defaults.scss +13 -24
  295. package/packages/core/src/scss/base/button/_index.scss +206 -0
  296. package/packages/core/src/scss/base/button/_mixins.scss +104 -0
  297. package/{src → packages/core/src}/scss/base/button/_variables.scss +108 -32
  298. package/{src → packages/core/src}/scss/base/form/_defaults.scss +8 -1
  299. package/packages/core/src/scss/base/form/_index.scss +227 -0
  300. package/packages/core/src/scss/base/form/_variables.scss +245 -0
  301. package/packages/core/src/scss/base/link/_defaults.scss +35 -0
  302. package/packages/core/src/scss/base/link/_index.scss +245 -0
  303. package/{src → packages/core/src}/scss/base/link/_variables.scss +148 -40
  304. package/packages/core/src/scss/base/table/_defaults.scss +68 -0
  305. package/packages/core/src/scss/base/table/_index.scss +314 -0
  306. package/packages/core/src/scss/base/table/_variables.scss +309 -0
  307. package/{src → packages/core/src}/scss/component/_index.scss +2 -1
  308. package/{src → packages/core/src}/scss/component/accordion/_defaults.scss +1 -1
  309. package/{src → packages/core/src}/scss/component/accordion/_index.scss +73 -55
  310. package/{src → packages/core/src}/scss/component/accordion/_variables.scss +68 -28
  311. package/{src → packages/core/src}/scss/component/alert/_defaults.scss +1 -1
  312. package/{src → packages/core/src}/scss/component/alert/_index.scss +45 -44
  313. package/{src → packages/core/src}/scss/component/alert/_variables.scss +54 -24
  314. package/{src → packages/core/src}/scss/component/card/_defaults.scss +1 -1
  315. package/{src → packages/core/src}/scss/component/card/_index.scss +47 -13
  316. package/{src → packages/core/src}/scss/component/card/_variables.scss +54 -24
  317. package/{src → packages/core/src}/scss/component/carousel/_defaults.scss +1 -1
  318. package/{src → packages/core/src}/scss/component/carousel/_index.scss +29 -25
  319. package/{src → packages/core/src}/scss/component/carousel/_variables.scss +1 -1
  320. package/{src → packages/core/src}/scss/component/input-group/_defaults.scss +1 -1
  321. package/{src → packages/core/src}/scss/component/input-group/_index.scss +2 -2
  322. package/{src → packages/core/src}/scss/component/input-group/_variables.scss +1 -1
  323. package/{src/scss/utilities/order → packages/core/src/scss/component/list}/_defaults.scss +7 -14
  324. package/packages/core/src/scss/component/list/_index.scss +52 -0
  325. package/packages/core/src/scss/component/list/_variables.scss +236 -0
  326. package/{src → packages/core/src}/scss/component/menu/_defaults.scss +11 -20
  327. package/{src → packages/core/src}/scss/component/menu/_index.scss +9 -6
  328. package/{src → packages/core/src}/scss/component/menu/_variables.scss +199 -57
  329. package/packages/core/src/scss/component/navigation/_defaults.scss +23 -0
  330. package/{src → packages/core/src}/scss/component/navigation/_index.scss +3 -2
  331. package/{src → packages/core/src}/scss/component/navigation/_variables.scss +79 -26
  332. package/packages/core/src/scss/functions/_container.scss +38 -0
  333. package/packages/core/src/scss/functions/_important.scss +36 -0
  334. package/{src → packages/core/src}/scss/functions/_screen.scss +9 -1
  335. package/{src → packages/core/src}/scss/functions/_theme.scss +2 -2
  336. package/packages/core/src/scss/functions/_utility.scss +28 -0
  337. package/{src → packages/core/src}/scss/layout/_index.scss +1 -1
  338. package/{src → packages/core/src}/scss/layout/columns/_defaults.scss +9 -4
  339. package/packages/core/src/scss/layout/columns/_index.scss +137 -0
  340. package/{src → packages/core/src}/scss/layout/columns/_variables.scss +6 -2
  341. package/packages/core/src/scss/layout/container/_defaults.scss +35 -0
  342. package/packages/core/src/scss/layout/container/_index.scss +628 -0
  343. package/packages/core/src/scss/layout/container/_variables.scss +114 -0
  344. package/packages/core/src/scss/layout/flex-columns/_defaults.scss +28 -0
  345. package/packages/core/src/scss/layout/flex-columns/_index.scss +184 -0
  346. package/{src → packages/core/src}/scss/layout/flex-columns/_variables.scss +5 -1
  347. package/{src → packages/core/src}/scss/mixins/_animation.scss +1 -1
  348. package/packages/core/src/scss/mixins/_container.scss +80 -0
  349. package/{src → packages/core/src}/scss/mixins/_layer.scss +6 -2
  350. package/{src → packages/core/src}/scss/mixins/_screen.scss +25 -4
  351. package/packages/core/src/scss/mixins/_state.scss +18 -0
  352. package/packages/core/src/scss/mixins/_theme.scss +15 -0
  353. package/packages/core/src/scss/mixins/_utility.scss +185 -0
  354. package/packages/core/src/scss/mixins/_visually-hidden.scss +30 -0
  355. package/packages/core/src/scss/state/_index.scss +3 -0
  356. package/{src → packages/core/src}/scss/state/focus/_defaults.scss +1 -2
  357. package/packages/core/src/scss/state/focus/_index.scss +42 -0
  358. package/packages/core/src/scss/state/focus/_mixins.scss +13 -0
  359. package/{src → packages/core/src}/scss/state/focus/_variables.scss +16 -10
  360. package/{src → packages/core/src}/scss/theme/_index.scss +1 -1
  361. package/{src → packages/core/src}/scss/theme/color/_defaults.scss +1 -1
  362. package/{src → packages/core/src}/scss/theme/color/_index.scss +5 -5
  363. package/{src → packages/core/src}/scss/theme/color/_variables.scss +5 -1
  364. package/{src → packages/core/src}/scss/theme/typography/_defaults.scss +1 -1
  365. package/{src → packages/core/src}/scss/theme/typography/_index.scss +10 -1
  366. package/{src → packages/core/src}/scss/theme/typography/_variables.scss +19 -2
  367. package/{src → packages/core/src}/scss/utilities/_index.scss +7 -1
  368. package/packages/core/src/scss/utilities/_template/_defaults.scss +41 -0
  369. package/packages/core/src/scss/utilities/_template/_index.scss +171 -0
  370. package/{src/scss/utilities/alignment → packages/core/src/scss/utilities/_template}/_variables.scss +1 -1
  371. package/{src → packages/core/src}/scss/utilities/alignment/_defaults.scss +21 -7
  372. package/packages/core/src/scss/utilities/alignment/_index.scss +336 -0
  373. package/{src/scss/utilities/display → packages/core/src/scss/utilities/alignment}/_variables.scss +1 -1
  374. package/packages/core/src/scss/utilities/background/_defaults.scss +122 -0
  375. package/packages/core/src/scss/utilities/background/_index.scss +634 -0
  376. package/packages/core/src/scss/utilities/background/_variables.scss +6 -0
  377. package/packages/core/src/scss/utilities/border/_defaults.scss +73 -0
  378. package/packages/core/src/scss/utilities/border/_index.scss +558 -0
  379. package/{src/scss/utilities/list → packages/core/src/scss/utilities/border}/_variables.scss +1 -1
  380. package/packages/core/src/scss/utilities/color/_defaults.scss +49 -0
  381. package/packages/core/src/scss/utilities/color/_index.scss +469 -0
  382. package/{src/scss/utilities/flex → packages/core/src/scss/utilities/color}/_variables.scss +1 -1
  383. package/packages/core/src/scss/utilities/container/_defaults.scss +40 -0
  384. package/packages/core/src/scss/utilities/container/_index.scss +174 -0
  385. package/packages/core/src/scss/utilities/container/_variables.scss +6 -0
  386. package/packages/core/src/scss/utilities/display/_defaults.scss +47 -0
  387. package/packages/core/src/scss/utilities/display/_index.scss +184 -0
  388. package/{src/scss/utilities/inset → packages/core/src/scss/utilities/display}/_variables.scss +1 -1
  389. package/packages/core/src/scss/utilities/flex/_defaults.scss +99 -0
  390. package/packages/core/src/scss/utilities/flex/_index.scss +486 -0
  391. package/{src/scss/utilities/color → packages/core/src/scss/utilities/flex}/_variables.scss +1 -1
  392. package/packages/core/src/scss/utilities/gradient/_defaults.scss +70 -0
  393. package/packages/core/src/scss/utilities/gradient/_index.scss +696 -0
  394. package/packages/core/src/scss/utilities/gradient/_variables.scss +29 -0
  395. package/packages/core/src/scss/utilities/height/_defaults.scss +54 -0
  396. package/packages/core/src/scss/utilities/height/_index.scss +525 -0
  397. package/packages/core/src/scss/utilities/height/_variables.scss +6 -0
  398. package/packages/core/src/scss/utilities/inset/_defaults.scss +55 -0
  399. package/packages/core/src/scss/utilities/inset/_index.scss +258 -0
  400. package/packages/core/src/scss/utilities/inset/_variables.scss +6 -0
  401. package/{src → packages/core/src}/scss/utilities/justification/_defaults.scss +21 -7
  402. package/packages/core/src/scss/utilities/justification/_index.scss +333 -0
  403. package/packages/core/src/scss/utilities/justification/_variables.scss +6 -0
  404. package/packages/core/src/scss/utilities/list/_defaults.scss +53 -0
  405. package/packages/core/src/scss/utilities/list/_index.scss +253 -0
  406. package/packages/core/src/scss/utilities/list/_variables.scss +6 -0
  407. package/packages/core/src/scss/utilities/order/_defaults.scss +36 -0
  408. package/packages/core/src/scss/utilities/order/_index.scss +246 -0
  409. package/packages/core/src/scss/utilities/order/_variables.scss +6 -0
  410. package/packages/core/src/scss/utilities/position/_defaults.scss +41 -0
  411. package/packages/core/src/scss/utilities/position/_index.scss +178 -0
  412. package/{src/scss/utilities/height → packages/core/src/scss/utilities/position}/_variables.scss +1 -1
  413. package/packages/core/src/scss/utilities/ratio/_defaults.scss +42 -0
  414. package/packages/core/src/scss/utilities/ratio/_index.scss +188 -0
  415. package/{src → packages/core/src}/scss/utilities/ratio/_variables.scss +1 -1
  416. package/{src → packages/core/src}/scss/utilities/spacing/_defaults.scss +19 -4
  417. package/packages/core/src/scss/utilities/spacing/_index.scss +970 -0
  418. package/packages/core/src/scss/utilities/spacing/_variables.scss +6 -0
  419. package/packages/core/src/scss/utilities/typography/_defaults.scss +58 -0
  420. package/packages/core/src/scss/utilities/typography/_index.scss +1089 -0
  421. package/packages/core/src/scss/utilities/typography/_variables.scss +6 -0
  422. package/packages/core/src/scss/utilities/visibility/_defaults.scss +39 -0
  423. package/packages/core/src/scss/utilities/visibility/_index.scss +173 -0
  424. package/packages/core/src/scss/utilities/visibility/_variables.scss +6 -0
  425. package/packages/core/src/scss/utilities/visually-hidden/_defaults.scss +29 -0
  426. package/packages/core/src/scss/utilities/visually-hidden/_index.scss +189 -0
  427. package/packages/core/src/scss/utilities/visually-hidden/_variables.scss +6 -0
  428. package/packages/core/src/scss/utilities/width/_defaults.scss +54 -0
  429. package/packages/core/src/scss/utilities/width/_index.scss +525 -0
  430. package/packages/core/src/scss/utilities/width/_variables.scss +6 -0
  431. package/packages/core/src/scss/utilities/z-index/_defaults.scss +40 -0
  432. package/packages/core/src/scss/utilities/z-index/_index.scss +173 -0
  433. package/packages/core/src/scss/utilities/z-index/_variables.scss +6 -0
  434. package/packages/core/vite.config.js +28 -0
  435. package/packages/icons/dist/css/base/button.css +2 -0
  436. package/packages/icons/dist/css/base/button.css.map +1 -0
  437. package/packages/icons/dist/css/base/link.css +2 -0
  438. package/packages/icons/dist/css/base/link.css.map +1 -0
  439. package/packages/icons/dist/css/base.css +2 -0
  440. package/packages/icons/dist/css/base.css.map +1 -0
  441. package/packages/icons/dist/css/component/icon.css +2 -0
  442. package/packages/icons/dist/css/component/icon.css.map +1 -0
  443. package/packages/icons/dist/css/component.css +2 -0
  444. package/packages/icons/dist/css/component.css.map +1 -0
  445. package/packages/icons/dist/css/icon.css +2 -0
  446. package/packages/icons/dist/css/icon.css.map +1 -0
  447. package/packages/icons/package.json +48 -0
  448. package/packages/icons/scss/base/button.scss +3 -0
  449. package/packages/icons/scss/base/link.scss +3 -0
  450. package/packages/icons/scss/base.scss +3 -0
  451. package/packages/icons/scss/component/icon.scss +3 -0
  452. package/packages/icons/scss/component.scss +3 -0
  453. package/packages/icons/scss/icon.scss +3 -0
  454. package/packages/icons/src/scss/_index.scss +4 -0
  455. package/packages/icons/src/scss/base/_index.scss +4 -0
  456. package/packages/icons/src/scss/base/button/_defaults.scss +7 -0
  457. package/packages/icons/src/scss/base/button/_index.scss +58 -0
  458. package/packages/icons/src/scss/base/button/_variables.scss +7 -0
  459. package/packages/icons/src/scss/base/link/_defaults.scss +7 -0
  460. package/packages/icons/src/scss/base/link/_index.scss +58 -0
  461. package/packages/icons/src/scss/base/link/_variables.scss +7 -0
  462. package/packages/icons/src/scss/component/_index.scss +3 -0
  463. package/packages/icons/src/scss/component/icon/_defaults.scss +30 -0
  464. package/packages/icons/src/scss/component/icon/_index.scss +60 -0
  465. package/packages/icons/src/scss/component/icon/_mixins.scss +62 -0
  466. package/packages/icons/src/scss/component/icon/_variables.scss +24 -0
  467. package/postcss.config.cjs +2 -3
  468. package/scss/base/button.scss +1 -1
  469. package/scss/base/form.scss +1 -1
  470. package/scss/base/link.scss +1 -1
  471. package/scss/base/table.scss +1 -1
  472. package/scss/base.scss +1 -1
  473. package/scss/component/accordion.scss +1 -1
  474. package/scss/component/alert.scss +1 -1
  475. package/scss/component/card.scss +1 -1
  476. package/scss/component/carousel.scss +1 -1
  477. package/scss/component/input-group.scss +1 -1
  478. package/scss/component/list.scss +3 -0
  479. package/scss/component/menu.scss +1 -1
  480. package/scss/component/navigation.scss +1 -1
  481. package/scss/component.scss +1 -1
  482. package/scss/graupl.scss +1 -1
  483. package/scss/init.scss +1 -1
  484. package/scss/layout/columns.scss +1 -1
  485. package/scss/layout/container.scss +1 -1
  486. package/scss/layout/flex-columns.scss +1 -1
  487. package/scss/layout.scss +1 -1
  488. package/scss/normalize.scss +1 -1
  489. package/scss/state/focus.scss +1 -1
  490. package/scss/state.scss +1 -1
  491. package/scss/theme/color.scss +1 -1
  492. package/scss/theme/typography.scss +1 -1
  493. package/scss/theme.scss +1 -1
  494. package/scss/utilities/alignment.scss +1 -1
  495. package/scss/utilities/background.scss +3 -0
  496. package/scss/utilities/border.scss +3 -0
  497. package/scss/utilities/color.scss +1 -1
  498. package/scss/utilities/container.scss +3 -0
  499. package/scss/utilities/display.scss +1 -1
  500. package/scss/utilities/flex.scss +1 -1
  501. package/scss/utilities/gradient.scss +3 -0
  502. package/scss/utilities/height.scss +1 -1
  503. package/scss/utilities/inset.scss +1 -1
  504. package/scss/utilities/justification.scss +1 -1
  505. package/scss/utilities/list.scss +1 -1
  506. package/scss/utilities/order.scss +1 -1
  507. package/scss/utilities/position.scss +3 -0
  508. package/scss/utilities/ratio.scss +1 -1
  509. package/scss/utilities/spacing.scss +1 -1
  510. package/scss/utilities/typography.scss +1 -1
  511. package/scss/utilities/visibility.scss +1 -1
  512. package/scss/utilities/visually-hidden.scss +3 -0
  513. package/scss/utilities/width.scss +1 -1
  514. package/scss/utilities/z-index.scss +3 -0
  515. package/scss/utilities.scss +1 -1
  516. package/stylelint.config.js +1 -0
  517. package/vite.config.js +6 -35
  518. package/dist/css/utilities/postion.css +0 -2
  519. package/dist/css/utilities/postion.css.map +0 -1
  520. package/dist/js/component/accordion.cjs.js +0 -3
  521. package/dist/js/component/accordion.esm.js +0 -1289
  522. package/dist/js/component/accordion.iife.js +0 -3
  523. package/dist/js/component/alert.cjs.js +0 -3
  524. package/dist/js/component/alert.esm.js +0 -529
  525. package/dist/js/component/alert.iife.js +0 -3
  526. package/dist/js/component/carousel.cjs.js +0 -3
  527. package/dist/js/component/carousel.esm.js +0 -1110
  528. package/dist/js/component/carousel.iife.js +0 -3
  529. package/src/scss/base/button/_index.scss +0 -107
  530. package/src/scss/base/button/_mixins.scss +0 -166
  531. package/src/scss/base/form/_index.scss +0 -93
  532. package/src/scss/base/form/_variables.scss +0 -153
  533. package/src/scss/base/link/_defaults.scss +0 -50
  534. package/src/scss/base/link/_index.scss +0 -134
  535. package/src/scss/base/table/_defaults.scss +0 -53
  536. package/src/scss/base/table/_index.scss +0 -121
  537. package/src/scss/base/table/_variables.scss +0 -135
  538. package/src/scss/component/navigation/_defaults.scss +0 -29
  539. package/src/scss/functions/_important.scss +0 -13
  540. package/src/scss/layout/columns/_index.scss +0 -58
  541. package/src/scss/layout/container/_defaults.scss +0 -17
  542. package/src/scss/layout/container/_index.scss +0 -41
  543. package/src/scss/layout/container/_variables.scss +0 -50
  544. package/src/scss/layout/flex-columns/_defaults.scss +0 -18
  545. package/src/scss/layout/flex-columns/_index.scss +0 -80
  546. package/src/scss/mixins/_utility.scss +0 -30
  547. package/src/scss/mixins/_visually-hidden.scss +0 -20
  548. package/src/scss/state/_index.scss +0 -3
  549. package/src/scss/state/focus/_index.scss +0 -13
  550. package/src/scss/state/focus/_mixins.scss +0 -15
  551. package/src/scss/utilities/alignment/_index.scss +0 -75
  552. package/src/scss/utilities/color/_defaults.scss +0 -35
  553. package/src/scss/utilities/color/_index.scss +0 -91
  554. package/src/scss/utilities/display/_defaults.scss +0 -32
  555. package/src/scss/utilities/display/_index.scss +0 -61
  556. package/src/scss/utilities/flex/_defaults.scss +0 -63
  557. package/src/scss/utilities/flex/_index.scss +0 -71
  558. package/src/scss/utilities/height/_defaults.scss +0 -41
  559. package/src/scss/utilities/height/_index.scss +0 -98
  560. package/src/scss/utilities/inset/_defaults.scss +0 -41
  561. package/src/scss/utilities/inset/_index.scss +0 -37
  562. package/src/scss/utilities/justification/_index.scss +0 -75
  563. package/src/scss/utilities/justification/_variables.scss +0 -6
  564. package/src/scss/utilities/list/_defaults.scss +0 -39
  565. package/src/scss/utilities/list/_index.scss +0 -56
  566. package/src/scss/utilities/order/_index.scss +0 -63
  567. package/src/scss/utilities/order/_variables.scss +0 -6
  568. package/src/scss/utilities/position/_defaults.scss +0 -26
  569. package/src/scss/utilities/position/_index.scss +0 -37
  570. package/src/scss/utilities/position/_variables.scss +0 -6
  571. package/src/scss/utilities/ratio/_defaults.scss +0 -28
  572. package/src/scss/utilities/ratio/_index.scss +0 -52
  573. package/src/scss/utilities/spacing/_index.scss +0 -169
  574. package/src/scss/utilities/spacing/_variables.scss +0 -6
  575. package/src/scss/utilities/typography/_defaults.scss +0 -30
  576. package/src/scss/utilities/typography/_index.scss +0 -224
  577. package/src/scss/utilities/typography/_variables.scss +0 -6
  578. package/src/scss/utilities/visibility/_defaults.scss +0 -25
  579. package/src/scss/utilities/visibility/_index.scss +0 -36
  580. package/src/scss/utilities/visibility/_variables.scss +0 -6
  581. package/src/scss/utilities/width/_defaults.scss +0 -41
  582. package/src/scss/utilities/width/_index.scss +0 -98
  583. package/src/scss/utilities/width/_variables.scss +0 -6
  584. /package/{src → packages/core/src}/js/accordion/Accordion.js +0 -0
  585. /package/{src → packages/core/src}/js/accordion/AccordionItem.js +0 -0
  586. /package/{src → packages/core/src}/js/accordion/index.js +0 -0
  587. /package/{src → packages/core/src}/js/alert/Alert.js +0 -0
  588. /package/{src → packages/core/src}/js/alert/index.js +0 -0
  589. /package/{src → packages/core/src}/js/carousel/Carousel.js +0 -0
  590. /package/{src → packages/core/src}/js/carousel/index.js +0 -0
  591. /package/{src → packages/core/src}/js/domHelpers.js +0 -0
  592. /package/{src → packages/core/src}/js/eventHandlers.js +0 -0
  593. /package/{src → packages/core/src}/js/navigation/index.js +0 -0
  594. /package/{src → packages/core/src}/js/storage.js +0 -0
  595. /package/{src → packages/core/src}/js/validate.js +0 -0
@@ -0,0 +1,171 @@
1
+ // @graupl/core [_template] utilities styles.
2
+ //
3
+ // This file generates the [_template] utility classes provided by Graupl.
4
+ //
5
+ // The following classes are generated by default:
6
+ // - `.template-class`: Applies the base value for the property.
7
+ //
8
+ // The following custom properties control the generated classes:
9
+ // - N/A.
10
+ //
11
+ // The following variables control the generated classes:
12
+ // - `$selector-base`: The base selector for the utility classes.
13
+ // - `$use-important`: A flag to determine if the `!important` flag should be added to the utility classes.
14
+ // - `$screen-aware`: A flag to generate screen-aware utility classes.
15
+ // - `$theme-aware`: A flag to generate theme-aware utility classes.
16
+ // - `$state-aware`: A flag to generate state-aware utility classes.
17
+ // - `$container-aware`: A flag to generate container-aware utility classes.
18
+ // - `$screen-aware-separator`: The separator for screen-aware utility classes.
19
+ // - `$theme-aware-separator`: The separator for theme-aware utility classes.
20
+ // - `$state-aware-separator`: The separator for state-aware utility classes.
21
+ // - `$container-aware-separator`: The separator for container-aware utility classes.
22
+ // - `$screen-aware-selector-prefix`: The prefix for screen-aware utility classes.
23
+ // - `$theme-aware-selector-prefix`: The prefix for theme-aware utility classes.
24
+ // - `$state-aware-selector-prefix`: The prefix for state-aware utility classes.
25
+ // - `$container-aware-selector-prefix`: The prefix for container-aware utility classes.
26
+ // - `$template-selector-prefix`: The prefix for the utility classes.
27
+ // - `$base-template-properties`: The base properties and values for the template utility classes.
28
+ // - `$custom-template-properties`: The custom properties and values for the template utility classes.
29
+ // - `$template-properties`: The merged properties and values for the template utility classes.
30
+ //
31
+ // Generating responsive utility classes can be done by setting `$screen-aware`, `$theme-aware`, or `$state-aware` to `true`.
32
+ // By default, no responsive utility classes are generated.
33
+ //
34
+ // When set to true, screen-aware utility classes will be generated for each screen size in the following pattern:
35
+ // - `.{screen-prefix}{screen-name}:{prefix}{value}`
36
+ //
37
+ // e.g. `.sm:[template-class]` will set the `template` property to `value` on screens equal to or larger than the `sm` breakpoint.
38
+ //
39
+ // When set to true, theme-aware utility classes will be generated for each theme in the following pattern:
40
+ // - `.{theme-prefix}{theme-name}:{prefix}{value}`
41
+ //
42
+ // e.g. `.dark:[template-class]` will set the `template` property to `value` when the `dark` theme is active.
43
+ //
44
+ // When set to true, state-aware utility classes will be generated for each state in the following pattern:
45
+ // - `.{state-prefix}{state-name}:{prefix}{value}`
46
+ //
47
+ // e.g. `.hover:[template-class]` will set the `template` property to `value` when the element is hovered.
48
+ //
49
+ // When set to true, container-aware utility classes will be generated for each container in the following pattern:
50
+ // - `.{container-prefix}{container-name}:{prefix}{value}`
51
+ //
52
+ // e.g. `.cq:md:[template-class]` will set the `template` property to `value` when the parent container is larger than the `md` breakpoint.
53
+ //
54
+ // @example
55
+ // <div class="template-class">This content showing you how to use this.</div>
56
+
57
+ @use "../../defaults" as root-defaults;
58
+ @use "../../mixins/layer" as *;
59
+ @use "../../mixins/utility";
60
+ @use "../../theme/color/variables" as color;
61
+ @use "defaults";
62
+ @use "sass:map";
63
+ @use "variables" as *;
64
+
65
+ @include layer(utilities) {
66
+ // `.`
67
+ $selector-prefix: defaults.$selector-base;
68
+
69
+ // For each template property, create a utility class.
70
+ @each $name, $value in defaults.$template-properties {
71
+ // e.g. `.template-property-name`
72
+ $selector: #{$selector-prefix}#{defaults.$template-selector-prefix}#{$name};
73
+
74
+ @include utility.create(
75
+ $selector,
76
+ property,
77
+ $value,
78
+ $important: #{defaults.$use-important}
79
+ );
80
+ }
81
+
82
+ // Generate screen-aware utilities.
83
+ @if defaults.$screen-aware and root-defaults.$screen-aware-utilities {
84
+ @each $screen-name in map.keys(root-defaults.$screen-sizes) {
85
+ // e.g. `.md:` or `.lg:`
86
+ $selector-prefix: #{defaults.$selector-base}#{defaults.$screen-aware-selector-prefix}#{$screen-name}#{defaults.$screen-aware-separator};
87
+
88
+ // For each template property, create a utility class.
89
+ @each $name, $value in defaults.$template-properties {
90
+ // e.g. `.md:template-property-name`
91
+ $selector: #{$selector-prefix}#{defaults.$template-selector-prefix}#{$name};
92
+
93
+ @include utility.create(
94
+ $selector,
95
+ property,
96
+ $value,
97
+ $important: #{defaults.$use-important},
98
+ $screen: $screen-name
99
+ );
100
+ }
101
+ }
102
+ }
103
+
104
+ // Generate theme-aware utilities.
105
+ @if defaults.$theme-aware and root-defaults.$theme-aware-utilities {
106
+ @each $theme-name, $colors in color.$themes {
107
+ @if $theme-name != active {
108
+ // e.g. `.dark:` or `.light:`
109
+ $selector-prefix: #{defaults.$selector-base}#{defaults.$theme-aware-selector-prefix}#{$theme-name}#{defaults.$theme-aware-separator};
110
+
111
+ // For each template property, create a utility class.
112
+ @each $name, $value in defaults.$template-properties {
113
+ // e.g. `.dark:template-property-name` or `.light:template-property-name`
114
+ $selector: #{$selector-prefix}#{defaults.$template-selector-prefix}#{$name};
115
+
116
+ @include utility.create(
117
+ $selector,
118
+ property,
119
+ $value,
120
+ $important: #{defaults.$use-important},
121
+ $theme: $theme-name
122
+ );
123
+ }
124
+ }
125
+ }
126
+ }
127
+
128
+ // Generate state-aware utilities.
129
+ @if defaults.$state-aware and root-defaults.$state-aware-utilities {
130
+ @each $state-name, $value in root-defaults.$state-selectors {
131
+ // e.g. `.hover:` or `.focus:`
132
+ $selector-prefix: #{defaults.$selector-base}#{defaults.$state-aware-selector-prefix}#{$state-name}#{defaults.$state-aware-separator};
133
+
134
+ // For each template property, create a utility class.
135
+ @each $name, $value in defaults.$template-properties {
136
+ // e.g. `.hover:template-property-name` or `.focus:template-property-name`
137
+ $selector: #{$selector-prefix}#{defaults.$template-selector-prefix}#{$name};
138
+
139
+ @include utility.create(
140
+ $selector,
141
+ property,
142
+ $value,
143
+ $important: #{defaults.$use-important},
144
+ $state: $state-name
145
+ );
146
+ }
147
+ }
148
+ }
149
+
150
+ // Generate container-aware utilities.
151
+ @if defaults.$container-aware and root-defaults.$container-aware-utilities {
152
+ @each $container-name in map.keys(root-defaults.$container-sizes) {
153
+ // e.g. `.md:` or `.lg:`
154
+ $selector-prefix: #{defaults.$selector-base}#{defaults.$container-aware-selector-prefix}#{$container-name}#{defaults.$container-aware-separator};
155
+
156
+ // For each template property, create a utility class.
157
+ @each $name, $value in defaults.$template-properties {
158
+ // e.g. `.cq:md:template-property-name`
159
+ $selector: #{$selector-prefix}#{defaults.$template-selector-prefix}#{$name};
160
+
161
+ @include utility.create(
162
+ $selector,
163
+ property,
164
+ $value,
165
+ $important: #{defaults.$use-important},
166
+ $container: $container-name
167
+ );
168
+ }
169
+ }
170
+ }
171
+ }
@@ -1,4 +1,4 @@
1
- // @graupl/graupl alignment utilities variables.
1
+ // @graupl/core [_template] utilities variables.
2
2
  //
3
3
  // These values are to be used to directly style components and provide a
4
4
  // cleaner way to reference custom properties.
@@ -1,4 +1,4 @@
1
- // @graupl/graupl alignment utilities default values.
1
+ // @graupl/core alignment utilities default values.
2
2
  //
3
3
  // Generally, these should not be used directly when styling components unless a static value is needed.
4
4
  // They are mainly used to provide class selectors, fallbacks for custom properties, or loop values.
@@ -6,10 +6,27 @@
6
6
  // They should not be used to define direct property values (i.e. font-size, color, etc.).
7
7
  // Those should be defined as custom properties in the `_variables.scss` file.
8
8
 
9
+ @use "../../defaults" as root-defaults;
9
10
  @use "sass:map";
10
11
 
12
+ // Utility modifiers.
13
+ $selector-base: root-defaults.$utility-selector-base !default;
14
+ $use-important: root-defaults.$use-important !default;
15
+ $screen-aware: false !default;
16
+ $theme-aware: false !default;
17
+ $state-aware: false !default;
18
+ $container-aware: false !default;
19
+ $screen-aware-separator: root-defaults.$utility-screen-aware-separator !default;
20
+ $theme-aware-separator: root-defaults.$utility-theme-aware-separator !default;
21
+ $state-aware-separator: root-defaults.$utility-state-aware-separator !default;
22
+ $container-aware-separator: root-defaults.$utility-container-aware-separator !default;
23
+ $screen-aware-selector-prefix: root-defaults.$utility-screen-aware-selector-prefix !default;
24
+ $theme-aware-selector-prefix: root-defaults.$utility-theme-aware-selector-prefix !default;
25
+ $state-aware-selector-prefix: root-defaults.$utility-state-aware-selector-prefix !default;
26
+ $container-aware-selector-prefix: root-defaults.$utility-container-aware-selector-prefix !default;
27
+
11
28
  // Align content properties.
12
- $align-content-class-prefix: "align-content-" !default;
29
+ $align-content-selector-prefix: "align-content-" !default;
13
30
  $base-align-content-properties: (
14
31
  normal: normal,
15
32
  start: flex-start,
@@ -28,7 +45,7 @@ $align-content-properties: map.merge(
28
45
  );
29
46
 
30
47
  // Align items properties.
31
- $align-items-class-prefix: "align-items-" !default;
48
+ $align-items-selector-prefix: "align-items-" !default;
32
49
  $base-align-items-properties: (
33
50
  start: start,
34
51
  end: end,
@@ -43,7 +60,7 @@ $align-items-properties: map.merge(
43
60
  );
44
61
 
45
62
  // Align self properties.
46
- $align-self-class-prefix: "align-self-" !default;
63
+ $align-self-selector-prefix: "align-self-" !default;
47
64
  $base-align-self-properties: (
48
65
  auto: auto,
49
66
  start: start,
@@ -57,6 +74,3 @@ $align-self-properties: map.merge(
57
74
  $base-align-self-properties,
58
75
  $custom-align-self-properties
59
76
  );
60
-
61
- // Responsive utility flag.
62
- $responsive: false !default;
@@ -0,0 +1,336 @@
1
+ // @graupl/core alignment utilities styles.
2
+ //
3
+ // This file generates the alignment utility classes provided by Graupl.
4
+ //
5
+ // The following classes are generated by default:
6
+ // - `.align-content-normal`: Sets the align-content property to `normal`.
7
+ // - `.align-content-start`: Sets the align-content property to `flex-start`.
8
+ // - `.align-content-end`: Sets the align-content property to `flex-end`.
9
+ // - `.align-content-center`: Sets the align-content property to `center`.
10
+ // - `.align-content-between`: Sets the align-content property to `space-between`.
11
+ // - `.align-content-around`: Sets the align-content property to `space-around`.
12
+ // - `.align-content-evenly`: Sets the align-content property to `space-evenly`.
13
+ // - `.align-content-baseline`: Sets the align-content property to `baseline`.
14
+ // - `.align-content-stretch`: Sets the align-content property to `stretch`.
15
+ // - `.align-items-start`: Sets the align-items property to `start`.
16
+ // - `.align-items-end`: Sets the align-items property to `end`.
17
+ // - `.align-items-center`: Sets the align-items property to `center`.
18
+ // - `.align-items-baseline`: Sets the align-items property to `baseline`.
19
+ // - `.align-items-stretch`: Sets the align-items property to `stretch`.
20
+ // - `.align-self-auto`: Sets the align-self property to `auto`.
21
+ // - `.align-self-start`: Sets the align-self property to `start`.
22
+ // - `.align-self-end`: Sets the align-self property to `end`.
23
+ // - `.align-self-center`: Sets the align-self property to `center`.
24
+ // - `.align-self-baseline`: Sets the align-self property to `baseline`.
25
+ // - `.align-self-stretch`: Sets the align-self property to `stretch`.
26
+ //
27
+ // The following custom properties control the generated classes:
28
+ // - N/A.
29
+ //
30
+ // The following variables control the generated classes:
31
+ // - `$selector-base`: The base selector for the utility classes.
32
+ // - `$use-important`: A flag to determine if the `!important` flag should be added to the utility classes.
33
+ // - `$screen-aware`: A flag to generate screen-aware utility classes.
34
+ // - `$theme-aware`: A flag to generate theme-aware utility classes.
35
+ // - `$state-aware`: A flag to generate state-aware utility classes.
36
+ // - `$container-aware`: A flag to generate container-aware utility classes.
37
+ // - `$screen-aware-separator`: The separator for screen-aware utility classes.
38
+ // - `$theme-aware-separator`: The separator for theme-aware utility classes.
39
+ // - `$state-aware-separator`: The separator for state-aware utility classes.
40
+ // - `$container-aware-separator`: The separator for container-aware utility classes.
41
+ // - `$screen-aware-selector-prefix`: The prefix for screen-aware utility classes.
42
+ // - `$theme-aware-selector-prefix`: The prefix for theme-aware utility classes.
43
+ // - `$state-aware-selector-prefix`: The prefix for state-aware utility classes.
44
+ // - `$container-aware-selector-prefix`: The prefix for container-aware utility classes.
45
+ // - `$align-content-selector-prefix`: The prefix for the align content utility classes.
46
+ // - `$base-align-content-properties`: The base properties and values for the align content utility classes.
47
+ // - `$custom-align-content-properties`: The custom properties and values for the align content utility classes.
48
+ // - `$align-content-properties`: The combined properties and values for the align content utility classes.
49
+ // - `$align-items-selector-prefix`: The prefix for the align items utility classes.
50
+ // - `$base-align-items-properties`: The base properties and values for the align items utility classes.
51
+ // - `$custom-align-items-properties`: The custom properties and values for the align items utility classes.
52
+ // - `$align-items-properties`: The combined properties and values for the align items utility classes.
53
+ // - `$align-self-selector-prefix`: The prefix for the align self utility classes.
54
+ // - `$base-align-self-properties`: The base properties and values for the align self utility classes.
55
+ // - `$custom-align-self-properties`: The custom properties and values for the align self utility classes.
56
+ // - `$align-self-properties`: The combined properties and values for the align self utility classes.
57
+ //
58
+ // Generating responsive utility classes can be done by setting `$screen-aware`, `$theme-aware`, or `$state-aware` to `true`.
59
+ // By default, no responsive utility classes are generated.
60
+ //
61
+ // When set to true, screen-aware utility classes will be generated for each screen size in the following pattern:
62
+ // - `.{screen-prefix-name}:{prefix}{value}`
63
+ //
64
+ // e.g. `.sm:align-content-normal` will set the `align-content` property to `normal` on screens equal to or larger than the `sm` breakpoint.
65
+ //
66
+ // When set to true, theme-aware utility classes will be generated for each theme in the following pattern:
67
+ // - `.{theme-prefix-name}:{prefix}{value}`
68
+ //
69
+ // e.g. `.dark:align-content-normal` will set the `align-content` property to `normal` when the `dark` theme is active.
70
+ //
71
+ // When set to true, state-aware utility classes will be generated for each state in the following pattern:
72
+ // - `.{state-prefix-name}:{prefix}{value}`
73
+ //
74
+ // e.g. `.hover:align-content-normal` will set the `align-content` property to `normal` when the element is hovered.
75
+ //
76
+ // When set to true, container-aware utility classes will be generated for each container in the following pattern:
77
+ // - `.{container-prefix}{container-name}:{prefix}{value}`
78
+ //
79
+ // e.g. `.cq:md:align-content-normal` will set the `align-content` property to `normal` when the parent container is larger than the `md` breakpoint.
80
+ //
81
+ // @example
82
+ // <div class="align-content-normal">This content is aligned normally.</div>
83
+
84
+ @use "../../defaults" as root-defaults;
85
+ @use "../../mixins/layer" as *;
86
+ @use "../../mixins/utility";
87
+ @use "../../theme/color/variables" as color;
88
+ @use "defaults";
89
+ @use "sass:map";
90
+ @use "variables" as *;
91
+
92
+ @include layer(utilities) {
93
+ // `.`
94
+ $selector-prefix: defaults.$selector-base;
95
+
96
+ // For each align content property, create a utility class.
97
+ @each $name, $value in defaults.$align-content-properties {
98
+ // e.g. `.align-content-normal` or `.align-content-start`
99
+ $selector: #{$selector-prefix}#{defaults.$align-content-selector-prefix}#{$name};
100
+
101
+ @include utility.create(
102
+ $selector,
103
+ align-content,
104
+ $value,
105
+ $important: #{defaults.$use-important}
106
+ );
107
+ }
108
+
109
+ // For each align items property, create a utility class.
110
+ @each $name, $value in defaults.$align-items-properties {
111
+ // e.g. `.align-items-start` or `.align-items-center`
112
+ $selector: #{$selector-prefix}#{defaults.$align-items-selector-prefix}#{$name};
113
+
114
+ @include utility.create(
115
+ $selector,
116
+ align-items,
117
+ $value,
118
+ $important: #{defaults.$use-important}
119
+ );
120
+ }
121
+
122
+ // For each align self property, create a utility class.
123
+ @each $name, $value in defaults.$align-self-properties {
124
+ // e.g. `.align-self-auto` or `.align-self-center`
125
+ $selector: #{$selector-prefix}#{defaults.$align-self-selector-prefix}#{$name};
126
+
127
+ @include utility.create(
128
+ $selector,
129
+ align-self,
130
+ $value,
131
+ $important: #{defaults.$use-important}
132
+ );
133
+ }
134
+
135
+ // Generate screen-aware utilities.
136
+ @if defaults.$screen-aware and root-defaults.$screen-aware-utilities {
137
+ @each $screen-name in map.keys(root-defaults.$screen-sizes) {
138
+ // e.g. `.md:` or `.lg:`
139
+ $selector-prefix: #{defaults.$selector-base}#{defaults.$screen-aware-selector-prefix}#{$screen-name}#{defaults.$screen-aware-separator};
140
+
141
+ // For each align content property, create a utility class.
142
+ @each $name, $value in defaults.$align-content-properties {
143
+ // e.g. `.md:align-content-normal` or `.lg:align-content-start`
144
+ $selector: #{$selector-prefix}#{defaults.$align-content-selector-prefix}#{$name};
145
+
146
+ @include utility.create(
147
+ $selector,
148
+ align-content,
149
+ $value,
150
+ $important: #{defaults.$use-important},
151
+ $screen: $screen-name
152
+ );
153
+ }
154
+
155
+ // For each align items property, create a utility class.
156
+ @each $name, $value in defaults.$align-items-properties {
157
+ // e.g. `.md:align-items-start` or `.lg:align-items-center`
158
+ $selector: #{$selector-prefix}#{defaults.$align-items-selector-prefix}#{$name};
159
+
160
+ @include utility.create(
161
+ $selector,
162
+ align-items,
163
+ $value,
164
+ $important: #{defaults.$use-important},
165
+ $screen: $screen-name
166
+ );
167
+ }
168
+
169
+ // For each align self property, create a utility class.
170
+ @each $name, $value in defaults.$align-self-properties {
171
+ // e.g. `.md:align-self-auto` or `.lg:align-self-center`
172
+ $selector: #{$selector-prefix}#{defaults.$align-self-selector-prefix}#{$name};
173
+
174
+ @include utility.create(
175
+ $selector,
176
+ align-self,
177
+ $value,
178
+ $important: #{defaults.$use-important},
179
+ $screen: $screen-name
180
+ );
181
+ }
182
+ }
183
+ }
184
+
185
+ // Generate theme-aware utilities.
186
+ @if defaults.$theme-aware and root-defaults.$theme-aware-utilities {
187
+ @each $theme-name, $colors in color.$themes {
188
+ @if $theme-name != active {
189
+ // e.g. `.dark:` or `.light:`
190
+ $selector-prefix: #{defaults.$selector-base}#{defaults.$theme-aware-selector-prefix}#{$theme-name}#{defaults.$theme-aware-separator};
191
+
192
+ // For each align content property, create a utility class.
193
+ @each $name, $value in defaults.$align-content-properties {
194
+ // e.g. `.dark:align-content-normal` or `.light:align-content-start`
195
+ $selector: #{$selector-prefix}#{defaults.$align-content-selector-prefix}#{$name};
196
+
197
+ @include utility.create(
198
+ $selector,
199
+ align-content,
200
+ $value,
201
+ $important: #{defaults.$use-important},
202
+ $theme: $theme-name
203
+ );
204
+ }
205
+
206
+ // For each align items property, create a utility class.
207
+ @each $name, $value in defaults.$align-items-properties {
208
+ // e.g. `.dark:align-items-start` or `.light:align-items-center`
209
+ $selector: #{$selector-prefix}#{defaults.$align-items-selector-prefix}#{$name};
210
+
211
+ @include utility.create(
212
+ $selector,
213
+ align-items,
214
+ $value,
215
+ $important: #{defaults.$use-important},
216
+ $theme: $theme-name
217
+ );
218
+ }
219
+
220
+ // For each align self property, create a utility class.
221
+ @each $name, $value in defaults.$align-self-properties {
222
+ // e.g. `.dark:align-self-auto` or `.light:align-self-center`
223
+ $selector: #{$selector-prefix}#{defaults.$align-self-selector-prefix}#{$name};
224
+
225
+ @include utility.create(
226
+ $selector,
227
+ align-self,
228
+ $value,
229
+ $important: #{defaults.$use-important},
230
+ $theme: $theme-name
231
+ );
232
+ }
233
+ }
234
+ }
235
+ }
236
+
237
+ // Generate state-aware utilities.
238
+ @if defaults.$state-aware and root-defaults.$state-aware-utilities {
239
+ @each $state-name, $value in root-defaults.$state-selectors {
240
+ // e.g. `.hover:` or `.focus:`
241
+ $selector-prefix: #{defaults.$selector-base}#{defaults.$state-aware-selector-prefix}#{$state-name}#{defaults.$state-aware-separator};
242
+
243
+ // For each align content property, create a utility class.
244
+ @each $name, $value in defaults.$align-content-properties {
245
+ // e.g. `.hover:align-content-normal` or `.focus:align-content-start`
246
+ $selector: #{$selector-prefix}#{defaults.$align-content-selector-prefix}#{$name};
247
+
248
+ @include utility.create(
249
+ $selector,
250
+ align-content,
251
+ $value,
252
+ $important: #{defaults.$use-important},
253
+ $state: $state-name
254
+ );
255
+ }
256
+
257
+ // For each align items property, create a utility class.
258
+ @each $name, $value in defaults.$align-items-properties {
259
+ // e.g. `.hover:align-items-start` or `.focus:align-items-center`
260
+ $selector: #{$selector-prefix}#{defaults.$align-items-selector-prefix}#{$name};
261
+
262
+ @include utility.create(
263
+ $selector,
264
+ align-items,
265
+ $value,
266
+ $important: #{defaults.$use-important},
267
+ $state: $state-name
268
+ );
269
+ }
270
+
271
+ // For each align self property, create a utility class.
272
+ @each $name, $value in defaults.$align-self-properties {
273
+ // e.g. `.hover:align-self-auto` or `.focus:align-self-center`
274
+ $selector: #{$selector-prefix}#{defaults.$align-self-selector-prefix}#{$name};
275
+
276
+ @include utility.create(
277
+ $selector,
278
+ align-self,
279
+ $value,
280
+ $important: #{defaults.$use-important},
281
+ $state: $state-name
282
+ );
283
+ }
284
+ }
285
+ }
286
+
287
+ // Generate container-aware utilities.
288
+ @if defaults.$container-aware and root-defaults.$container-aware-utilities {
289
+ @each $container-name in map.keys(root-defaults.$container-sizes) {
290
+ // e.g. `.md:` or `.lg:`
291
+ $selector-prefix: #{defaults.$selector-base}#{defaults.$container-aware-selector-prefix}#{$container-name}#{defaults.$container-aware-separator};
292
+
293
+ // For each align content property, create a utility class.
294
+ @each $name, $value in defaults.$align-content-properties {
295
+ // e.g. `.md:align-content-normal` or `.lg:align-content-start`
296
+ $selector: #{$selector-prefix}#{defaults.$align-content-selector-prefix}#{$name};
297
+
298
+ @include utility.create(
299
+ $selector,
300
+ align-content,
301
+ $value,
302
+ $important: #{defaults.$use-important},
303
+ $container: $container-name
304
+ );
305
+ }
306
+
307
+ // For each align items property, create a utility class.
308
+ @each $name, $value in defaults.$align-items-properties {
309
+ // e.g. `.md:align-items-start` or `.lg:align-items-center`
310
+ $selector: #{$selector-prefix}#{defaults.$align-items-selector-prefix}#{$name};
311
+
312
+ @include utility.create(
313
+ $selector,
314
+ align-items,
315
+ $value,
316
+ $important: #{defaults.$use-important},
317
+ $container: $container-name
318
+ );
319
+ }
320
+
321
+ // For each align self property, create a utility class.
322
+ @each $name, $value in defaults.$align-self-properties {
323
+ // e.g. `.md:align-self-auto` or `.lg:align-self-center`
324
+ $selector: #{$selector-prefix}#{defaults.$align-self-selector-prefix}#{$name};
325
+
326
+ @include utility.create(
327
+ $selector,
328
+ align-self,
329
+ $value,
330
+ $important: #{defaults.$use-important},
331
+ $container: $container-name
332
+ );
333
+ }
334
+ }
335
+ }
336
+ }
@@ -1,4 +1,4 @@
1
- // @graupl/graupl display utilities variables.
1
+ // @graupl/core alignment utilities variables.
2
2
  //
3
3
  // These values are to be used to directly style components and provide a
4
4
  // cleaner way to reference custom properties.