@graupl/graupl 1.0.0-alpha.9 → 1.0.0-beta.1

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 (350) hide show
  1. package/.github/workflows/codeql-analysis.yml +3 -3
  2. package/.husky/commit-msg +0 -1
  3. package/.husky/pre-commit +0 -1
  4. package/CHANGELOG.md +160 -0
  5. package/build.js +7 -0
  6. package/dist/css/base/button.css +2 -0
  7. package/dist/css/base/button.css.map +1 -0
  8. package/dist/css/base/form.css +2 -0
  9. package/dist/css/base/form.css.map +1 -0
  10. package/dist/css/base/link.css +2 -0
  11. package/dist/css/base/link.css.map +1 -0
  12. package/dist/css/base/table.css +2 -0
  13. package/dist/css/base/table.css.map +1 -0
  14. package/dist/css/base.css +2 -0
  15. package/dist/css/base.css.map +1 -0
  16. package/dist/css/component/accordion.css +2 -0
  17. package/dist/css/component/accordion.css.map +1 -0
  18. package/dist/css/component/alert.css +2 -0
  19. package/dist/css/component/alert.css.map +1 -0
  20. package/dist/css/component/card.css +2 -0
  21. package/dist/css/component/card.css.map +1 -0
  22. package/dist/css/component/carousel.css +2 -0
  23. package/dist/css/component/carousel.css.map +1 -0
  24. package/dist/css/component/input-group.css +2 -0
  25. package/dist/css/component/input-group.css.map +1 -0
  26. package/dist/css/component/menu.css +2 -0
  27. package/dist/css/component/menu.css.map +1 -0
  28. package/dist/css/component/navigation.css +2 -0
  29. package/dist/css/component/navigation.css.map +1 -0
  30. package/dist/css/component.css +2 -0
  31. package/dist/css/component.css.map +1 -0
  32. package/dist/css/graupl.css +2 -0
  33. package/dist/css/graupl.css.map +1 -0
  34. package/dist/css/init.css +2 -0
  35. package/dist/css/init.css.map +1 -0
  36. package/dist/css/layout/columns.css +2 -0
  37. package/dist/css/layout/columns.css.map +1 -0
  38. package/dist/css/layout/container.css +2 -0
  39. package/dist/css/layout/container.css.map +1 -0
  40. package/dist/css/layout/flex-columns.css +2 -0
  41. package/dist/css/layout/flex-columns.css.map +1 -0
  42. package/dist/css/layout.css +2 -0
  43. package/dist/css/layout.css.map +1 -0
  44. package/dist/css/normalize.css +2 -0
  45. package/dist/css/normalize.css.map +1 -0
  46. package/dist/css/state/focus.css +2 -0
  47. package/dist/css/state/focus.css.map +1 -0
  48. package/dist/css/state.css +2 -0
  49. package/dist/css/state.css.map +1 -0
  50. package/dist/css/theme/color.css +2 -0
  51. package/dist/css/theme/color.css.map +1 -0
  52. package/dist/css/theme/typography.css +2 -0
  53. package/dist/css/theme/typography.css.map +1 -0
  54. package/dist/css/theme.css +2 -0
  55. package/dist/css/theme.css.map +1 -0
  56. package/dist/css/utilities/alignment.css +2 -0
  57. package/dist/css/utilities/alignment.css.map +1 -0
  58. package/dist/css/utilities/color.css +2 -0
  59. package/dist/css/utilities/color.css.map +1 -0
  60. package/dist/css/utilities/display.css +2 -0
  61. package/dist/css/utilities/display.css.map +1 -0
  62. package/dist/css/utilities/flex.css +2 -0
  63. package/dist/css/utilities/flex.css.map +1 -0
  64. package/dist/css/utilities/height.css +2 -0
  65. package/dist/css/utilities/height.css.map +1 -0
  66. package/dist/css/utilities/inset.css +2 -0
  67. package/dist/css/utilities/inset.css.map +1 -0
  68. package/dist/css/utilities/justification.css +2 -0
  69. package/dist/css/utilities/justification.css.map +1 -0
  70. package/dist/css/utilities/list.css +2 -0
  71. package/dist/css/utilities/list.css.map +1 -0
  72. package/dist/css/utilities/order.css +2 -0
  73. package/dist/css/utilities/order.css.map +1 -0
  74. package/dist/css/utilities/postion.css +2 -0
  75. package/dist/css/utilities/postion.css.map +1 -0
  76. package/dist/css/utilities/ratio.css +2 -0
  77. package/dist/css/utilities/ratio.css.map +1 -0
  78. package/dist/css/utilities/spacing.css +2 -0
  79. package/dist/css/utilities/spacing.css.map +1 -0
  80. package/dist/css/utilities/typography.css +2 -0
  81. package/dist/css/utilities/typography.css.map +1 -0
  82. package/dist/css/utilities/visibility.css +2 -0
  83. package/dist/css/utilities/visibility.css.map +1 -0
  84. package/dist/css/utilities/width.css +2 -0
  85. package/dist/css/utilities/width.css.map +1 -0
  86. package/dist/css/utilities.css +2 -0
  87. package/dist/css/utilities.css.map +1 -0
  88. package/dist/js/component/accordion.cjs.js +3 -0
  89. package/dist/js/component/accordion.esm.js +1289 -0
  90. package/dist/js/component/accordion.iife.js +3 -0
  91. package/dist/js/component/alert.cjs.js +3 -0
  92. package/dist/js/component/alert.esm.js +529 -0
  93. package/dist/js/component/alert.iife.js +3 -0
  94. package/dist/js/component/carousel.cjs.js +3 -0
  95. package/dist/js/component/carousel.esm.js +1110 -0
  96. package/dist/js/component/carousel.iife.js +3 -0
  97. package/dist/js/graupl.cjs.js +5 -0
  98. package/dist/js/graupl.esm.js +1462 -0
  99. package/dist/js/graupl.iife.js +5 -0
  100. package/docs/.vitepress/config.js +39 -12
  101. package/docs/components/alert.md +130 -0
  102. package/docs/components/button.md +84 -0
  103. package/docs/components/card.md +369 -0
  104. package/docs/components/index.md +1 -0
  105. package/docs/components/inputgroup.md +159 -0
  106. package/docs/components/menu.md +326 -0
  107. package/docs/components/navigation.md +158 -0
  108. package/docs/content.md +237 -0
  109. package/docs/defaults.md +121 -0
  110. package/docs/forms.md +79 -0
  111. package/docs/functions.md +9 -0
  112. package/docs/getting-started.md +1 -0
  113. package/docs/index.md +1 -7
  114. package/docs/introduction.md +22 -2
  115. package/docs/layout.md +200 -0
  116. package/docs/mixins.md +47 -0
  117. package/docs/state.md +67 -0
  118. package/docs/theme.md +258 -0
  119. package/docs/utilities.md +357 -0
  120. package/eslint.config.js +1 -0
  121. package/index.html +816 -327
  122. package/index.js +12 -0
  123. package/package.json +31 -10
  124. package/scss/base/button.scss +3 -0
  125. package/scss/base/form.scss +1 -1
  126. package/scss/base/link.scss +1 -1
  127. package/scss/base/table.scss +1 -1
  128. package/scss/base.scss +1 -1
  129. package/scss/component/accordion.scss +3 -0
  130. package/scss/component/alert.scss +3 -0
  131. package/scss/component/card.scss +3 -0
  132. package/scss/component/carousel.scss +3 -0
  133. package/scss/component/input-group.scss +1 -1
  134. package/scss/component/menu.scss +3 -0
  135. package/scss/component/navigation.scss +3 -0
  136. package/scss/component.scss +1 -1
  137. package/scss/graupl.scss +1 -3
  138. package/scss/init.scss +3 -0
  139. package/scss/layout/columns.scss +1 -1
  140. package/scss/layout/container.scss +1 -1
  141. package/scss/layout/flex-columns.scss +3 -0
  142. package/scss/layout.scss +1 -1
  143. package/scss/normalize.scss +3 -0
  144. package/scss/state/focus.scss +1 -1
  145. package/scss/state.scss +1 -1
  146. package/scss/theme/color.scss +1 -1
  147. package/scss/theme/typography.scss +1 -1
  148. package/scss/theme.scss +1 -1
  149. package/scss/utilities/alignment.scss +3 -0
  150. package/scss/utilities/color.scss +3 -0
  151. package/scss/utilities/display.scss +3 -0
  152. package/scss/utilities/flex.scss +3 -0
  153. package/scss/utilities/height.scss +3 -0
  154. package/scss/utilities/inset.scss +3 -0
  155. package/scss/utilities/justification.scss +3 -0
  156. package/scss/utilities/list.scss +3 -0
  157. package/scss/utilities/order.scss +3 -0
  158. package/scss/utilities/postion.scss +3 -0
  159. package/scss/utilities/ratio.scss +3 -0
  160. package/scss/utilities/spacing.scss +1 -1
  161. package/scss/utilities/typography.scss +1 -1
  162. package/scss/utilities/visibility.scss +3 -0
  163. package/scss/utilities/width.scss +3 -0
  164. package/scss/utilities.scss +1 -1
  165. package/src/js/accordion/Accordion.js +1163 -0
  166. package/src/js/accordion/AccordionItem.js +496 -0
  167. package/src/js/accordion/index.js +10 -0
  168. package/src/js/alert/Alert.js +581 -0
  169. package/src/js/alert/index.js +11 -0
  170. package/src/js/carousel/Carousel.js +1427 -0
  171. package/src/js/carousel/index.js +10 -0
  172. package/src/js/domHelpers.js +37 -0
  173. package/src/js/eventHandlers.js +39 -0
  174. package/src/js/navigation/index.js +36 -0
  175. package/src/js/storage.js +106 -0
  176. package/src/js/validate.js +225 -0
  177. package/src/scss/_defaults.scss +75 -6
  178. package/src/scss/_index.scss +4 -3
  179. package/src/scss/_init.scss +2 -2
  180. package/src/scss/_normalize.scss +197 -0
  181. package/src/scss/_variables.scss +17 -17
  182. package/src/scss/base/_index.scss +2 -1
  183. package/src/scss/base/button/_defaults.scss +60 -0
  184. package/src/scss/base/button/_index.scss +107 -0
  185. package/src/scss/base/button/_mixins.scss +166 -0
  186. package/src/scss/base/button/_variables.scss +176 -0
  187. package/src/scss/base/form/_defaults.scss +14 -4
  188. package/src/scss/base/form/_index.scss +23 -20
  189. package/src/scss/base/form/_variables.scss +46 -37
  190. package/src/scss/base/link/_defaults.scss +48 -5
  191. package/src/scss/base/link/_index.scss +111 -10
  192. package/src/scss/base/link/_variables.scss +239 -9
  193. package/src/scss/base/table/_defaults.scss +49 -4
  194. package/src/scss/base/table/_index.scss +102 -8
  195. package/src/scss/base/table/_variables.scss +87 -17
  196. package/src/scss/component/_index.scss +7 -3
  197. package/src/scss/component/accordion/_defaults.scss +40 -0
  198. package/src/scss/component/accordion/_index.scss +180 -0
  199. package/src/scss/component/accordion/_variables.scss +316 -0
  200. package/src/scss/component/alert/_defaults.scss +49 -0
  201. package/src/scss/component/alert/_index.scss +118 -0
  202. package/src/scss/component/alert/_variables.scss +170 -0
  203. package/src/scss/component/card/_defaults.scss +32 -0
  204. package/src/scss/component/card/_index.scss +178 -0
  205. package/src/scss/component/card/_variables.scss +186 -0
  206. package/src/scss/component/carousel/_defaults.scss +43 -0
  207. package/src/scss/component/carousel/_index.scss +188 -0
  208. package/src/scss/component/carousel/_variables.scss +104 -0
  209. package/src/scss/component/input-group/_defaults.scss +11 -4
  210. package/src/scss/component/input-group/_index.scss +13 -11
  211. package/src/scss/component/input-group/_variables.scss +16 -13
  212. package/src/scss/component/menu/_defaults.scss +66 -0
  213. package/src/scss/component/menu/_index.scss +305 -0
  214. package/src/scss/component/menu/_variables.scss +500 -0
  215. package/src/scss/component/navigation/_defaults.scss +29 -0
  216. package/src/scss/component/navigation/_index.scss +189 -0
  217. package/src/scss/component/navigation/_variables.scss +237 -0
  218. package/src/scss/functions/_important.scss +2 -0
  219. package/src/scss/functions/_screen.scss +30 -0
  220. package/src/scss/functions/_theme.scss +28 -7
  221. package/src/scss/layout/_index.scss +2 -1
  222. package/src/scss/layout/columns/_defaults.scss +12 -4
  223. package/src/scss/layout/columns/_index.scss +32 -10
  224. package/src/scss/layout/columns/_variables.scss +13 -9
  225. package/src/scss/layout/container/_defaults.scss +13 -4
  226. package/src/scss/layout/container/_index.scss +12 -7
  227. package/src/scss/layout/container/_variables.scss +14 -11
  228. package/src/scss/layout/flex-columns/_defaults.scss +18 -0
  229. package/src/scss/layout/flex-columns/_index.scss +80 -0
  230. package/src/scss/layout/flex-columns/_variables.scss +26 -0
  231. package/src/scss/mixins/_animation.scss +15 -0
  232. package/src/scss/mixins/_layer.scss +3 -5
  233. package/src/scss/mixins/_screen.scss +56 -0
  234. package/src/scss/mixins/_utility.scss +30 -0
  235. package/src/scss/mixins/_visually-hidden.scss +20 -0
  236. package/src/scss/state/_index.scss +1 -1
  237. package/src/scss/state/focus/_defaults.scss +6 -4
  238. package/src/scss/state/focus/_index.scss +7 -7
  239. package/src/scss/state/focus/_mixins.scss +15 -0
  240. package/src/scss/state/focus/_variables.scss +14 -10
  241. package/src/scss/theme/_index.scss +1 -1
  242. package/src/scss/theme/color/_defaults.scss +101 -19
  243. package/src/scss/theme/color/_index.scss +18 -18
  244. package/src/scss/theme/color/_variables.scss +73 -65
  245. package/src/scss/theme/typography/_defaults.scss +7 -5
  246. package/src/scss/theme/typography/_index.scss +1 -1
  247. package/src/scss/theme/typography/_variables.scss +62 -58
  248. package/src/scss/utilities/_index.scss +14 -2
  249. package/src/scss/utilities/alignment/_defaults.scss +62 -0
  250. package/src/scss/utilities/alignment/_index.scss +75 -0
  251. package/src/scss/utilities/alignment/_variables.scss +6 -0
  252. package/src/scss/utilities/color/_defaults.scss +35 -0
  253. package/src/scss/utilities/color/_index.scss +91 -0
  254. package/src/scss/utilities/color/_variables.scss +6 -0
  255. package/src/scss/utilities/display/_defaults.scss +32 -0
  256. package/src/scss/utilities/display/_index.scss +61 -0
  257. package/src/scss/utilities/display/_variables.scss +6 -0
  258. package/src/scss/utilities/flex/_defaults.scss +63 -0
  259. package/src/scss/utilities/flex/_index.scss +71 -0
  260. package/src/scss/utilities/flex/_variables.scss +6 -0
  261. package/src/scss/utilities/height/_defaults.scss +41 -0
  262. package/src/scss/utilities/height/_index.scss +98 -0
  263. package/src/scss/utilities/height/_variables.scss +6 -0
  264. package/src/scss/utilities/inset/_defaults.scss +41 -0
  265. package/src/scss/utilities/inset/_index.scss +37 -0
  266. package/src/scss/utilities/inset/_variables.scss +6 -0
  267. package/src/scss/utilities/justification/_defaults.scss +59 -0
  268. package/src/scss/utilities/justification/_index.scss +75 -0
  269. package/src/scss/utilities/justification/_variables.scss +6 -0
  270. package/src/scss/utilities/list/_defaults.scss +39 -0
  271. package/src/scss/utilities/list/_index.scss +56 -0
  272. package/src/scss/utilities/list/_variables.scss +6 -0
  273. package/src/scss/utilities/order/_defaults.scss +22 -0
  274. package/src/scss/utilities/order/_index.scss +63 -0
  275. package/src/scss/utilities/order/_variables.scss +6 -0
  276. package/src/scss/utilities/position/_defaults.scss +26 -0
  277. package/src/scss/utilities/position/_index.scss +37 -0
  278. package/src/scss/utilities/position/_variables.scss +6 -0
  279. package/src/scss/utilities/ratio/_defaults.scss +28 -0
  280. package/src/scss/utilities/ratio/_index.scss +52 -0
  281. package/src/scss/utilities/ratio/_variables.scss +9 -0
  282. package/src/scss/utilities/spacing/_defaults.scss +9 -4
  283. package/src/scss/utilities/spacing/_index.scss +138 -33
  284. package/src/scss/utilities/spacing/_variables.scss +5 -2
  285. package/src/scss/utilities/typography/_defaults.scss +29 -4
  286. package/src/scss/utilities/typography/_index.scss +155 -23
  287. package/src/scss/utilities/typography/_variables.scss +5 -2
  288. package/src/scss/utilities/visibility/_defaults.scss +25 -0
  289. package/src/scss/utilities/visibility/_index.scss +36 -0
  290. package/src/scss/utilities/visibility/_variables.scss +6 -0
  291. package/src/scss/utilities/width/_defaults.scss +41 -0
  292. package/src/scss/utilities/width/_index.scss +98 -0
  293. package/src/scss/utilities/width/_variables.scss +6 -0
  294. package/stylelint.config.js +5 -0
  295. package/vite.config.js +57 -0
  296. package/dist/base/form.css +0 -2
  297. package/dist/base/form.css.map +0 -1
  298. package/dist/base/link.css +0 -2
  299. package/dist/base/link.css.map +0 -1
  300. package/dist/base/table.css +0 -2
  301. package/dist/base/table.css.map +0 -1
  302. package/dist/base.css +0 -2
  303. package/dist/base.css.map +0 -1
  304. package/dist/component/button.css +0 -2
  305. package/dist/component/button.css.map +0 -1
  306. package/dist/component/input-group.css +0 -2
  307. package/dist/component/input-group.css.map +0 -1
  308. package/dist/component/table.css +0 -2
  309. package/dist/component/table.css.map +0 -1
  310. package/dist/component.css +0 -2
  311. package/dist/component.css.map +0 -1
  312. package/dist/graupl.css +0 -2
  313. package/dist/graupl.css.map +0 -1
  314. package/dist/layout/columns.css +0 -2
  315. package/dist/layout/columns.css.map +0 -1
  316. package/dist/layout/container.css +0 -2
  317. package/dist/layout/container.css.map +0 -1
  318. package/dist/layout.css +0 -2
  319. package/dist/layout.css.map +0 -1
  320. package/dist/state/focus.css +0 -2
  321. package/dist/state/focus.css.map +0 -1
  322. package/dist/state.css +0 -2
  323. package/dist/state.css.map +0 -1
  324. package/dist/theme/color.css +0 -2
  325. package/dist/theme/color.css.map +0 -1
  326. package/dist/theme/typography.css +0 -2
  327. package/dist/theme/typography.css.map +0 -1
  328. package/dist/theme.css +0 -2
  329. package/dist/theme.css.map +0 -1
  330. package/dist/utilities/colors.css +0 -2
  331. package/dist/utilities/colors.css.map +0 -1
  332. package/dist/utilities/spacing.css +0 -2
  333. package/dist/utilities/spacing.css.map +0 -1
  334. package/dist/utilities/typography.css +0 -2
  335. package/dist/utilities/typography.css.map +0 -1
  336. package/dist/utilities.css +0 -2
  337. package/dist/utilities.css.map +0 -1
  338. package/scss/component/button.scss +0 -3
  339. package/scss/component/table.scss +0 -3
  340. package/scss/utilities/colors.scss +0 -3
  341. package/src/scss/component/button/_defaults.scss +0 -39
  342. package/src/scss/component/button/_index.scss +0 -98
  343. package/src/scss/component/button/_variables.scss +0 -131
  344. package/src/scss/component/table/_defaults.scss +0 -30
  345. package/src/scss/component/table/_index.scss +0 -77
  346. package/src/scss/component/table/_variables.scss +0 -64
  347. package/src/scss/mixins/_media-queries.scss +0 -26
  348. package/src/scss/utilities/colors/_defaults.scss +0 -5
  349. package/src/scss/utilities/colors/_index.scss +0 -22
  350. package/src/scss/utilities/colors/_variables.scss +0 -3
@@ -0,0 +1,326 @@
1
+ # Menu
2
+
3
+ Defaults
4
+
5
+ ```jsx
6
+ // Menu selectors.
7
+ $menu-selector: ".menu" !default;
8
+ $submenu-selector: ".submenu" !default;
9
+ $menu-item-selector: ".menu-item" !default;
10
+ $menu-link-selector: ".menu-link" !default;
11
+ $submenu-toggle-selector: ".submenu-toggle" !default;
12
+ $menu-show-selector: ".show" !default;
13
+ $menu-hide-selector: ".hide" !default;
14
+
15
+ // Flex properties.
16
+ $menu-flex-direction: row !default;
17
+ $submenu-flex-direction: column !default;
18
+
19
+ // Visibility properties.
20
+ $menu-show-display: flex !default;
21
+ $menu-hide-display: none !default;
22
+ $submenu-show-display: $menu-show-display !default;
23
+ $submenu-hide-display: $menu-hide-display !default;
24
+
25
+ // Menu item properties.
26
+ $menu-item-min-width: min-content !default;
27
+ $menu-item-max-width: 100% !default;
28
+
29
+ // Submenu properties.
30
+ $submenu-position: absolute !default;
31
+ $submenu-z-index: 2 !default;
32
+ $submenu-top: 100% !default;
33
+ $submenu-right: auto !default;
34
+ $submenu-bottom: auto !default;
35
+ $submenu-left: 0 !default;
36
+
37
+ // Submenu item properties.
38
+ $submenu-item-width: 100% !default;
39
+
40
+ // Menu link properties.
41
+ $menu-link-text-decoration: none !default;
42
+ $menu-link-visited-text-decoration: $menu-link-text-decoration !default;
43
+ $menu-link-focus-text-decoration: $menu-link-text-decoration !default;
44
+ $menu-link-hover-text-decoration: $menu-link-text-decoration !default;
45
+ $menu-link-active-text-decoration: $menu-link-text-decoration !default;
46
+ $menu-link-disabled-text-decoration: $menu-link-text-decoration !default;
47
+ $menu-link-text-decoration-style: solid !default;
48
+ $menu-link-visited-text-decoration-style: $menu-link-text-decoration-style !default;
49
+ $menu-link-focus-text-decoration-style: $menu-link-text-decoration-style !default;
50
+ $menu-link-hover-text-decoration-style: $menu-link-text-decoration-style !default;
51
+ $menu-link-active-text-decoration-style: $menu-link-text-decoration-style !default;
52
+ $menu-link-disabled-text-decoration-style: $menu-link-text-decoration-style !default;
53
+ $menu-link-transform: none !default;
54
+ $menu-link-visited-transform: $menu-link-transform !default;
55
+ $menu-link-focus-transform: $menu-link-transform !default;
56
+ $menu-link-hover-transform: $menu-link-transform !default;
57
+ $menu-link-active-transform: $menu-link-transform !default;
58
+ $menu-link-disabled-transform: $menu-link-transform !default;
59
+ $menu-border-width: 0 !default;
60
+ $menu-link-border-width: 0 !default;
61
+ $submenu-toggle-transform: rotate(0deg) !default;
62
+ $submenu-toggle-open-transform: rotate(-180deg) !default;
63
+ $submenu-toggle-content: "'▼'" !default;
64
+ ```
65
+
66
+ Variables
67
+
68
+ The menu properties:
69
+
70
+ ```scss
71
+ --#{root-defaults.$prefix}menu-flex-direction
72
+ --#{root-defaults.$prefix}menu-padding-x
73
+ --#{root-defaults.$prefix}menu-padding-y
74
+ --#{root-defaults.$prefix}menu-padding
75
+
76
+ ```
77
+
78
+ The menu gap properties:
79
+
80
+ ```scss
81
+ --#{root-defaults.$prefix}menu-column-gap
82
+ --#{root-defaults.$prefix}menu-row-gap
83
+ --#{root-defaults.$prefix}menu-gap
84
+
85
+ ```
86
+
87
+ The menu display properties:
88
+
89
+ ```scss
90
+ --#{root-defaults.$prefix}menu-show-display
91
+ --#{root-defaults.$prefix}menu-hide-display
92
+ --#{root-defaults.$prefix}menu-display
93
+
94
+ ```
95
+
96
+ The menu color properties:
97
+
98
+ ```scss
99
+ --#{root-defaults.$prefix}menu-background
100
+ --#{root-defaults.$prefix}menu-color
101
+
102
+ ```
103
+
104
+ The menu border properties:
105
+
106
+ ```scss
107
+ --#{root-defaults.$prefix}menu-border-color
108
+ --#{root-defaults.$prefix}menu-border-radius
109
+ --#{root-defaults.$prefix}menu-border-style
110
+ --#{root-defaults.$prefix}menu-border-width
111
+ --#{root-defaults.$prefix}menu-border
112
+
113
+ ```
114
+
115
+ The submenu properties:
116
+
117
+ ```scss
118
+ --#{root-defaults.$prefix}submenu-flex-direction
119
+ --#{root-defaults.$prefix}submenu-z-index
120
+ --#{root-defaults.$prefix}submenu-padding-x
121
+ --#{root-defaults.$prefix}submenu-padding-y
122
+ --#{root-defaults.$prefix}submenu-padding
123
+
124
+ ```
125
+
126
+ The submenu gap properties:
127
+
128
+ ```scss
129
+ --#{root-defaults.$prefix}submenu-column-gap
130
+ --#{root-defaults.$prefix}submenu-row-gap
131
+ --#{root-defaults.$prefix}submenu-gap
132
+
133
+ ```
134
+
135
+ The submenu display properties:
136
+
137
+ ```scss
138
+ --#{root-defaults.$prefix}submenu-show-display
139
+ --#{root-defaults.$prefix}submenu-hide-display
140
+ --#{root-defaults.$prefix}submenu-display
141
+
142
+ ```
143
+
144
+ The submenu color properties:
145
+
146
+ ```scss
147
+ --#{root-defaults.$prefix}submenu-background
148
+ --#{root-defaults.$prefix}submenu-color
149
+
150
+ ```
151
+
152
+ The submenu border properties:
153
+
154
+ ```scss
155
+ --#{root-defaults.$prefix}submenu-border-color
156
+ --#{root-defaults.$prefix}submenu-border-radius
157
+ --#{root-defaults.$prefix}submenu-border-style
158
+ --#{root-defaults.$prefix}submenu-border-width
159
+ --#{root-defaults.$prefix}submenu-border
160
+
161
+ ```
162
+
163
+ The submenu position properties:
164
+
165
+ ```scss
166
+ --#{root-defaults.$prefix}submenu-position
167
+ --#{root-defaults.$prefix}submenu-top
168
+ --#{root-defaults.$prefix}submenu-right
169
+ --#{root-defaults.$prefix}submenu-bottom
170
+ --#{root-defaults.$prefix}submenu-left
171
+ --#{root-defaults.$prefix}submenu-inset
172
+
173
+ ```
174
+
175
+ The menu item properties:
176
+
177
+ ```scss
178
+ --#{root-defaults.$prefix}menu-item-min-width
179
+ --#{root-defaults.$prefix}menu-item-max-width
180
+ --#{root-defaults.$prefix}menu-item-padding-x
181
+ --#{root-defaults.$prefix}menu-item-padding-y
182
+ --#{root-defaults.$prefix}menu-item-padding
183
+
184
+ ```
185
+
186
+ The submenu item properties:
187
+
188
+ ```scss
189
+ --#{root-defaults.$prefix}submenu-item-width
190
+
191
+ ```
192
+
193
+ The menu link properties:
194
+
195
+ ```scss
196
+ --#{root-defaults.$prefix}menu-link-padding-x
197
+ --#{root-defaults.$prefix}menu-link-padding-y
198
+ --#{root-defaults.$prefix}menu-link-padding
199
+
200
+ ```
201
+
202
+ The menu link transform properties:
203
+
204
+ ```scss
205
+ --#{root-defaults.$prefix}menu-link-transition
206
+ --#{root-defaults.$prefix}menu-link-transition-reduced-motion
207
+ --#{root-defaults.$prefix}menu-link-transform
208
+ --#{root-defaults.$prefix}menu-link-visited-transform
209
+ --#{root-defaults.$prefix}menu-link-focus-transform
210
+ --#{root-defaults.$prefix}menu-link-hover-transform
211
+ --#{root-defaults.$prefix}menu-link-active-transform
212
+ --#{root-defaults.$prefix}menu-link-disabled-transform
213
+
214
+ ```
215
+
216
+ The menu link gap properties:
217
+
218
+ ```scss
219
+ --#{root-defaults.$prefix}menu-link-column-gap
220
+ --#{root-defaults.$prefix}menu-link-row-gap
221
+ --#{root-defaults.$prefix}menu-link-gap
222
+
223
+ ```
224
+
225
+ The menu link colors:
226
+
227
+ ```scss
228
+ --#{root-defaults.$prefix}menu-link-background
229
+ --#{root-defaults.$prefix}menu-link-visited-background
230
+ --#{root-defaults.$prefix}menu-link-focus-background
231
+ --#{root-defaults.$prefix}menu-link-hover-background
232
+ --#{root-defaults.$prefix}menu-link-active-background
233
+ --#{root-defaults.$prefix}menu-link-disabled-background
234
+ --#{root-defaults.$prefix}menu-link-color
235
+ --#{root-defaults.$prefix}menu-link-visited-color
236
+ --#{root-defaults.$prefix}menu-link-focus-color
237
+ --#{root-defaults.$prefix}menu-link-hover-color
238
+ --#{root-defaults.$prefix}menu-link-active-color
239
+ --#{root-defaults.$prefix}menu-link-disabled-color
240
+
241
+ ```
242
+
243
+ The menu link text decoration properties:
244
+
245
+ ```scss
246
+ --#{root-defaults.$prefix}menu-link-text-decoration
247
+ --#{root-defaults.$prefix}menu-link-visited-text-decoration
248
+ --#{root-defaults.$prefix}menu-link-focus-text-decoration
249
+ --#{root-defaults.$prefix}menu-link-hover-text-decoration
250
+ --#{root-defaults.$prefix}menu-link-active-text-decoration
251
+ --#{root-defaults.$prefix}menu-link-disabled-text-decoration
252
+ --#{root-defaults.$prefix}menu-link-text-decoration-thickness
253
+ --#{root-defaults.$prefix}menu-link-visited-text-decoration-thickness
254
+ --#{root-defaults.$prefix}menu-link-focus-text-decoration-thickness
255
+ --#{root-defaults.$prefix}menu-link-hover-text-decoration-thickness
256
+ --#{root-defaults.$prefix}menu-link-active-text-decoration-thickness
257
+ --#{root-defaults.$prefix}menu-link-disabled-text-decoration-thickness
258
+ --#{root-defaults.$prefix}menu-link-text-decoration-style
259
+ --#{root-defaults.$prefix}menu-link-visited-text-decoration-style
260
+ --#{root-defaults.$prefix}menu-link-focus-text-decoration-style
261
+ --#{root-defaults.$prefix}menu-link-hover-text-decoration-style
262
+ --#{root-defaults.$prefix}menu-link-active-text-decoration-style
263
+ --#{root-defaults.$prefix}menu-link-disabled-text-decoration-style
264
+ --#{root-defaults.$prefix}menu-link-text-decoration-color
265
+ --#{root-defaults.$prefix}menu-link-visited-text-decoration-color
266
+ --#{root-defaults.$prefix}menu-link-focus-text-decoration-color
267
+ --#{root-defaults.$prefix}menu-link-hover-text-decoration-color
268
+ --#{root-defaults.$prefix}menu-link-active-text-decoration-color
269
+ --#{root-defaults.$prefix}menu-link-disabled-text-decoration-color
270
+
271
+ ```
272
+
273
+ The menu link border properties:
274
+
275
+ ```scss
276
+ --#{root-defaults.$prefix}menu-link-border-radius
277
+ --#{root-defaults.$prefix}menu-link-border-style
278
+ --#{root-defaults.$prefix}menu-link-border-width
279
+ --#{root-defaults.$prefix}menu-link-border
280
+ --#{root-defaults.$prefix}menu-link-border-color
281
+ --#{root-defaults.$prefix}menu-link-visited-border-color
282
+ --#{root-defaults.$prefix}menu-link-focus-border-color
283
+ --#{root-defaults.$prefix}menu-link-hover-border-color
284
+ --#{root-defaults.$prefix}menu-link-active-border-color
285
+ --#{root-defaults.$prefix}menu-link-disabled-border-color
286
+
287
+ ```
288
+
289
+ The submenu toggle properties:
290
+
291
+ ```scss
292
+ --#{root-defaults.$prefix}submenu-toggle-transform
293
+ --#{root-defaults.$prefix}submenu-toggle-open-transform
294
+ --#{root-defaults.$prefix}submenu-toggle-content
295
+ --#{root-defaults.$prefix}submenu-toggle-transition
296
+ --#{root-defaults.$prefix}submenu-toggle-transition-reduced-motion
297
+
298
+ ```
299
+
300
+ Markup
301
+
302
+ ```jsx
303
+ <div class="py-10 full-width container">
304
+ <div class="py-7">
305
+ <nav class="navigation" data-graupl-menu-type="DisclosureMenu" data-graupl-menu-options="{'optionalKeySupport': true}">
306
+ <a class="navigation-branding" href="#">Graupl</a>
307
+ <button class="navigation-toggle ml-auto mr-0" aria-label="Toggle navigation"></button>
308
+ <ul class="menu">
309
+ <li class="menu-item"><a class="menu-link" href="#">Home</a></li>
310
+ <li class="menu-item submenu-item">
311
+ <button class="menu-link button link submenu-toggle">About</button>
312
+ <ul class="submenu">
313
+ <li class="menu-item"><a class="menu-link" href="#">About Us</a></li>
314
+ <li class="menu-item"><a class="menu-link" href="#">Our Team</a></li>
315
+ <li class="menu-item"><a class="menu-link" href="#">Our Mission</a></li>
316
+ </ul>
317
+ </li>
318
+ <li class="menu-item"><a class="menu-link" href="#">Blog</a></li>
319
+ <li class="menu-item"><a class="menu-link" href="#">Portfolio</a></li>
320
+ <li class="menu-item"><a class="menu-link button tertiary" href="#">Contact</a></li>
321
+ </ul>
322
+ </nav>
323
+ </div>
324
+ </div>
325
+ </div>
326
+ ```
@@ -0,0 +1,158 @@
1
+ # Navigation
2
+
3
+ Default
4
+
5
+ ```jsx
6
+ // Navigation selectors.
7
+ $navigation-selector: ".navigation" !default;
8
+ $navigation-toggle-selector: ".navigation-toggle" !default;
9
+ $navigation-branding-selector: ".navigation-branding" !default;
10
+
11
+ // Navigation toggle properties.
12
+ $navigation-toggle-content: "'☰'" !default;
13
+
14
+ // Navigation branding properties.
15
+ $navigation-branding-text-decoration: none !default;
16
+ $navigation-branding-visited-text-decoration: $navigation-branding-text-decoration !default;
17
+ $navigation-branding-focus-text-decoration: $navigation-branding-text-decoration !default;
18
+ $navigation-branding-hover-text-decoration: $navigation-branding-text-decoration !default;
19
+ $navigation-branding-active-text-decoration: $navigation-branding-text-decoration !default;
20
+ $navigation-branding-disabled-text-decoration: $navigation-branding-text-decoration !default;
21
+ $navigation-branding-text-decoration-style: solid !default;
22
+ $navigation-branding-visited-text-decoration-style: $navigation-branding-text-decoration-style !default;
23
+ $navigation-branding-focus-text-decoration-style: $navigation-branding-text-decoration-style !default;
24
+ $navigation-branding-hover-text-decoration-style: $navigation-branding-text-decoration-style !default;
25
+ $navigation-branding-active-text-decoration-style: $navigation-branding-text-decoration-style !default;
26
+ $navigation-branding-disabled-text-decoration-style: $navigation-branding-text-decoration-style !default;
27
+ ```
28
+
29
+ Variables
30
+
31
+ The navigation colors:
32
+
33
+ ```scss
34
+ --#{root-defaults.$prefix}navigation-background
35
+ --#{root-defaults.$prefix}navigation-color
36
+
37
+ ```
38
+
39
+ The navigation toggle size:
40
+
41
+ ```scss
42
+ --#{root-defaults.$prefix}navigation-toggle-min-width
43
+ --#{root-defaults.$prefix}navigation-toggle-min-height
44
+
45
+ ```
46
+
47
+ The navigation toggle spacing:
48
+
49
+ ```scss
50
+ --#{root-defaults.$prefix}navigation-toggle-padding-x
51
+ --#{root-defaults.$prefix}navigation-toggle-padding-y
52
+ --#{root-defaults.$prefix}navigation-toggle-padding
53
+
54
+ ```
55
+
56
+ The navigation toggle colors:
57
+
58
+ ```scss
59
+ --#{root-defaults.$prefix}navigation-toggle-background
60
+ --#{root-defaults.$prefix}navigation-toggle-color
61
+ --#{root-defaults.$prefix}navigation-toggle-hover-background
62
+ --#{root-defaults.$prefix}navigation-toggle-hover-color
63
+
64
+ ```
65
+
66
+ The navigation toggle border properties:
67
+
68
+ ```scss
69
+ --#{root-defaults.$prefix}navigation-toggle-border-width
70
+ --#{root-defaults.$prefix}navigation-toggle-border-style
71
+ --#{root-defaults.$prefix}navigation-toggle-border
72
+ --#{root-defaults.$prefix}navigation-toggle-border-color
73
+ --#{root-defaults.$prefix}navigation-toggle-border-radius
74
+
75
+ ```
76
+
77
+ The navigation branding properties:
78
+
79
+ ```scss
80
+ --#{root-defaults.$prefix}navigation-branding-font-size
81
+ --#{root-defaults.$prefix}navigation-branding-font-weight
82
+ --#{root-defaults.$prefix}navigation-branding-padding-x
83
+ --#{root-defaults.$prefix}navigation-branding-padding-y
84
+ --#{root-defaults.$prefix}navigation-branding-padding
85
+
86
+ ```
87
+
88
+ The navigation branding colors:
89
+
90
+ ```scss
91
+ --#{root-defaults.$prefix}navigation-branding-color
92
+ --#{root-defaults.$prefix}navigation-branding-visited-color
93
+ --#{root-defaults.$prefix}navigation-branding-focus-color
94
+ --#{root-defaults.$prefix}navigation-branding-hover-color
95
+ --#{root-defaults.$prefix}navigation-branding-active-color
96
+ --#{root-defaults.$prefix}navigation-branding-disabled-color
97
+
98
+ ```
99
+
100
+ The navigation branding text decoration properties:
101
+
102
+ ```scss
103
+ --#{root-defaults.$prefix}navigation-branding-text-decoration
104
+ --#{root-defaults.$prefix}navigation-branding-visited-text-decoration
105
+ --#{root-defaults.$prefix}navigation-branding-focus-text-decoration
106
+ --#{root-defaults.$prefix}navigation-branding-hover-text-decoration
107
+ --#{root-defaults.$prefix}navigation-branding-active-text-decoration
108
+ --#{root-defaults.$prefix}navigation-branding-disabled-text-decoration
109
+ --#{root-defaults.$prefix}navigation-branding-text-decoration-style
110
+ --#{root-defaults.$prefix}navigation-branding-visited-text-decoration-style
111
+ --#{root-defaults.$prefix}navigation-branding-focus-text-decoration-style
112
+ --#{root-defaults.$prefix}navigation-branding-hover-text-decoration-style
113
+ --#{root-defaults.$prefix}navigation-branding-active-text-decoration-style
114
+ --#{root-defaults.$prefix}navigation-branding-disabled-text-decoration-style
115
+ --#{root-defaults.$prefix}navigation-branding-text-decoration-thickness
116
+ --#{root-defaults.$prefix}navigation-branding-visited-text-decoration-thickness
117
+ --#{root-defaults.$prefix}navigation-branding-focus-text-decoration-thickness
118
+ --#{root-defaults.$prefix}navigation-branding-hover-text-decoration-thickness
119
+ --#{root-defaults.$prefix}navigation-branding-active-text-decoration-thickness
120
+ --#{root-defaults.$prefix}navigation-branding-disabled-text-decoration-thickness
121
+ --#{root-defaults.$prefix}navigation-branding-text-decoration-color
122
+ --#{root-defaults.$prefix}navigation-branding-visited-text-decoration-color
123
+ --#{root-defaults.$prefix}navigation-branding-focus-text-decoration-color
124
+ --#{root-defaults.$prefix}navigation-branding-hover-text-decoration-color
125
+ --#{root-defaults.$prefix}navigation-branding-active-text-decoration-color
126
+ --#{root-defaults.$prefix}navigation-branding-disabled-text-decoration-color
127
+
128
+ ```
129
+
130
+ The navigation toggle properties:
131
+
132
+ ```scss
133
+ --#{root-defaults.$prefix}navigation-toggle-content
134
+
135
+ ```
136
+
137
+ Markup
138
+
139
+ ```jsx
140
+ <nav class="navigation" data-graupl-menu-type="DisclosureMenu" data-graupl-menu-options="{'optionalKeySupport': true}">
141
+ <a class="navigation-branding" href="#">Graupl</a>
142
+ <button class="navigation-toggle ml-auto mr-0" aria-label="Toggle navigation"></button>
143
+ <ul class="menu">
144
+ <li class="menu-item"><a class="menu-link" href="#">Home</a></li>
145
+ <li class="menu-item submenu-item">
146
+ <button class="menu-link button link submenu-toggle">About</button>
147
+ <ul class="submenu">
148
+ <li class="menu-item"><a class="menu-link" href="#">About Us</a></li>
149
+ <li class="menu-item"><a class="menu-link" href="#">Our Team</a></li>
150
+ <li class="menu-item"><a class="menu-link" href="#">Our Mission</a></li>
151
+ </ul>
152
+ </li>
153
+ <li class="menu-item"><a class="menu-link" href="#">Blog</a></li>
154
+ <li class="menu-item"><a class="menu-link" href="#">Portfolio</a></li>
155
+ <li class="menu-item"><a class="menu-link button tertiary" href="#">Contact</a></li>
156
+ </ul>
157
+ </nav>
158
+ ```