@graupl/graupl 1.0.0-beta.4 → 1.0.0-beta.41

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 (475) hide show
  1. package/LICENSE +674 -0
  2. package/README.md +9 -0
  3. package/dist/css/base/button.css +2 -2
  4. package/dist/css/base/button.css.map +1 -1
  5. package/dist/css/base/form.css +2 -2
  6. package/dist/css/base/form.css.map +1 -1
  7. package/dist/css/base/link.css +2 -2
  8. package/dist/css/base/link.css.map +1 -1
  9. package/dist/css/base/table.css +2 -2
  10. package/dist/css/base/table.css.map +1 -1
  11. package/dist/css/base.css +2 -2
  12. package/dist/css/base.css.map +1 -1
  13. package/dist/css/component/accordion.css +2 -2
  14. package/dist/css/component/accordion.css.map +1 -1
  15. package/dist/css/component/alert.css +2 -2
  16. package/dist/css/component/alert.css.map +1 -1
  17. package/dist/css/component/badge.css +2 -0
  18. package/dist/css/component/badge.css.map +1 -0
  19. package/dist/css/component/breadcrumb.css +2 -0
  20. package/dist/css/component/breadcrumb.css.map +1 -0
  21. package/dist/css/component/card.css +2 -2
  22. package/dist/css/component/card.css.map +1 -1
  23. package/dist/css/component/carousel.css +2 -2
  24. package/dist/css/component/carousel.css.map +1 -1
  25. package/dist/css/component/disclosure.css +2 -0
  26. package/dist/css/component/disclosure.css.map +1 -0
  27. package/dist/css/component/input-group.css +2 -2
  28. package/dist/css/component/input-group.css.map +1 -1
  29. package/dist/css/component/list.css +2 -2
  30. package/dist/css/component/list.css.map +1 -1
  31. package/dist/css/component/menu.css +2 -2
  32. package/dist/css/component/menu.css.map +1 -1
  33. package/dist/css/component/navigation.css +2 -2
  34. package/dist/css/component/navigation.css.map +1 -1
  35. package/dist/css/component/tabs.css +2 -0
  36. package/dist/css/component/tabs.css.map +1 -0
  37. package/dist/css/component.css +2 -2
  38. package/dist/css/component.css.map +1 -1
  39. package/dist/css/graupl.css +2 -2
  40. package/dist/css/graupl.css.map +1 -1
  41. package/dist/css/init.css +2 -2
  42. package/dist/css/init.css.map +1 -1
  43. package/dist/css/layout/columns.css +2 -2
  44. package/dist/css/layout/columns.css.map +1 -1
  45. package/dist/css/layout/container.css +2 -2
  46. package/dist/css/layout/container.css.map +1 -1
  47. package/dist/css/layout/flex-columns.css +2 -2
  48. package/dist/css/layout/flex-columns.css.map +1 -1
  49. package/dist/css/layout.css +2 -2
  50. package/dist/css/layout.css.map +1 -1
  51. package/dist/css/normalize.css +2 -2
  52. package/dist/css/normalize.css.map +1 -1
  53. package/dist/css/state/focus.css +2 -2
  54. package/dist/css/state/focus.css.map +1 -1
  55. package/dist/css/state.css +2 -2
  56. package/dist/css/state.css.map +1 -1
  57. package/dist/css/theme/color.css +2 -2
  58. package/dist/css/theme/color.css.map +1 -1
  59. package/dist/css/theme/typography.css +2 -2
  60. package/dist/css/theme/typography.css.map +1 -1
  61. package/dist/css/theme.css +2 -2
  62. package/dist/css/theme.css.map +1 -1
  63. package/dist/css/utilities/alignment.css +1 -1
  64. package/dist/css/utilities/alignment.css.map +1 -1
  65. package/dist/css/utilities/background.css +2 -2
  66. package/dist/css/utilities/background.css.map +1 -1
  67. package/dist/css/utilities/border.css +2 -2
  68. package/dist/css/utilities/border.css.map +1 -1
  69. package/dist/css/utilities/color.css +2 -2
  70. package/dist/css/utilities/color.css.map +1 -1
  71. package/dist/css/utilities/container.css +2 -0
  72. package/dist/css/utilities/container.css.map +1 -0
  73. package/dist/css/utilities/display.css +2 -2
  74. package/dist/css/utilities/display.css.map +1 -1
  75. package/dist/css/utilities/flex.css +2 -2
  76. package/dist/css/utilities/flex.css.map +1 -1
  77. package/dist/css/utilities/gradient.css +2 -2
  78. package/dist/css/utilities/gradient.css.map +1 -1
  79. package/dist/css/utilities/height.css +2 -2
  80. package/dist/css/utilities/height.css.map +1 -1
  81. package/dist/css/utilities/inset.css +2 -2
  82. package/dist/css/utilities/inset.css.map +1 -1
  83. package/dist/css/utilities/isolation.css +2 -0
  84. package/dist/css/utilities/isolation.css.map +1 -0
  85. package/dist/css/utilities/justification.css +1 -1
  86. package/dist/css/utilities/justification.css.map +1 -1
  87. package/dist/css/utilities/list.css +1 -1
  88. package/dist/css/utilities/list.css.map +1 -1
  89. package/dist/css/utilities/object.css +2 -0
  90. package/dist/css/utilities/object.css.map +1 -0
  91. package/dist/css/utilities/order.css +2 -2
  92. package/dist/css/utilities/order.css.map +1 -1
  93. package/dist/css/utilities/position.css +2 -0
  94. package/dist/css/utilities/position.css.map +1 -0
  95. package/dist/css/utilities/ratio.css +2 -2
  96. package/dist/css/utilities/ratio.css.map +1 -1
  97. package/dist/css/utilities/spacing.css +2 -2
  98. package/dist/css/utilities/spacing.css.map +1 -1
  99. package/dist/css/utilities/typography.css +2 -2
  100. package/dist/css/utilities/typography.css.map +1 -1
  101. package/dist/css/utilities/visibility.css +2 -2
  102. package/dist/css/utilities/visibility.css.map +1 -1
  103. package/dist/css/utilities/visually-hidden.css +2 -0
  104. package/dist/css/utilities/visually-hidden.css.map +1 -0
  105. package/dist/css/utilities/width.css +2 -2
  106. package/dist/css/utilities/width.css.map +1 -1
  107. package/dist/css/utilities/z-index.css +2 -0
  108. package/dist/css/utilities/z-index.css.map +1 -0
  109. package/dist/css/utilities.css +2 -2
  110. package/dist/css/utilities.css.map +1 -1
  111. package/dist/js/accordion.js +5 -0
  112. package/dist/js/accordion.js.map +1 -0
  113. package/dist/js/alert.js +5 -0
  114. package/dist/js/alert.js.map +1 -0
  115. package/dist/js/breadcrumb.js +5 -0
  116. package/dist/js/breadcrumb.js.map +1 -0
  117. package/dist/js/carousel.js +5 -0
  118. package/dist/js/carousel.js.map +1 -0
  119. package/dist/js/component/accordion.cjs.js +5 -3
  120. package/dist/js/component/accordion.cjs.js.map +1 -0
  121. package/dist/js/component/accordion.es.js +5 -0
  122. package/dist/js/component/accordion.es.js.map +1 -0
  123. package/dist/js/component/accordion.iife.js +5 -3
  124. package/dist/js/component/accordion.iife.js.map +1 -0
  125. package/dist/js/component/alert.cjs.js +5 -3
  126. package/dist/js/component/alert.cjs.js.map +1 -0
  127. package/dist/js/component/alert.es.js +5 -0
  128. package/dist/js/component/alert.es.js.map +1 -0
  129. package/dist/js/component/alert.iife.js +5 -3
  130. package/dist/js/component/alert.iife.js.map +1 -0
  131. package/dist/js/component/breadcrumb.cjs.js +5 -0
  132. package/dist/js/component/breadcrumb.cjs.js.map +1 -0
  133. package/dist/js/component/breadcrumb.es.js +5 -0
  134. package/dist/js/component/breadcrumb.es.js.map +1 -0
  135. package/dist/js/component/breadcrumb.iife.js +5 -0
  136. package/dist/js/component/breadcrumb.iife.js.map +1 -0
  137. package/dist/js/component/carousel.cjs.js +5 -3
  138. package/dist/js/component/carousel.cjs.js.map +1 -0
  139. package/dist/js/component/carousel.es.js +5 -0
  140. package/dist/js/component/carousel.es.js.map +1 -0
  141. package/dist/js/component/carousel.iife.js +5 -3
  142. package/dist/js/component/carousel.iife.js.map +1 -0
  143. package/dist/js/component/disclosure.cjs.js +5 -0
  144. package/dist/js/component/disclosure.cjs.js.map +1 -0
  145. package/dist/js/component/disclosure.es.js +5 -0
  146. package/dist/js/component/disclosure.es.js.map +1 -0
  147. package/dist/js/component/disclosure.iife.js +5 -0
  148. package/dist/js/component/disclosure.iife.js.map +1 -0
  149. package/dist/js/component/tabs.cjs.js +5 -0
  150. package/dist/js/component/tabs.cjs.js.map +1 -0
  151. package/dist/js/component/tabs.es.js +5 -0
  152. package/dist/js/component/tabs.es.js.map +1 -0
  153. package/dist/js/component/tabs.iife.js +5 -0
  154. package/dist/js/component/tabs.iife.js.map +1 -0
  155. package/dist/js/disclosure.js +5 -0
  156. package/dist/js/disclosure.js.map +1 -0
  157. package/dist/js/generator/accordion.cjs.js +5 -0
  158. package/dist/js/generator/accordion.cjs.js.map +1 -0
  159. package/dist/js/generator/accordion.es.js +5 -0
  160. package/dist/js/generator/accordion.es.js.map +1 -0
  161. package/dist/js/generator/accordion.iife.js +5 -0
  162. package/dist/js/generator/accordion.iife.js.map +1 -0
  163. package/dist/js/generator/alert.cjs.js +5 -0
  164. package/dist/js/generator/alert.cjs.js.map +1 -0
  165. package/dist/js/generator/alert.es.js +5 -0
  166. package/dist/js/generator/alert.es.js.map +1 -0
  167. package/dist/js/generator/alert.iife.js +5 -0
  168. package/dist/js/generator/alert.iife.js.map +1 -0
  169. package/dist/js/generator/breadcrumb.cjs.js +5 -0
  170. package/dist/js/generator/breadcrumb.cjs.js.map +1 -0
  171. package/dist/js/generator/breadcrumb.es.js +5 -0
  172. package/dist/js/generator/breadcrumb.es.js.map +1 -0
  173. package/dist/js/generator/breadcrumb.iife.js +5 -0
  174. package/dist/js/generator/breadcrumb.iife.js.map +1 -0
  175. package/dist/js/generator/carousel.cjs.js +5 -0
  176. package/dist/js/generator/carousel.cjs.js.map +1 -0
  177. package/dist/js/generator/carousel.es.js +5 -0
  178. package/dist/js/generator/carousel.es.js.map +1 -0
  179. package/dist/js/generator/carousel.iife.js +5 -0
  180. package/dist/js/generator/carousel.iife.js.map +1 -0
  181. package/dist/js/generator/disclosure.cjs.js +5 -0
  182. package/dist/js/generator/disclosure.cjs.js.map +1 -0
  183. package/dist/js/generator/disclosure.es.js +5 -0
  184. package/dist/js/generator/disclosure.es.js.map +1 -0
  185. package/dist/js/generator/disclosure.iife.js +5 -0
  186. package/dist/js/generator/disclosure.iife.js.map +1 -0
  187. package/dist/js/generator/navigation.cjs.js +3 -0
  188. package/dist/js/generator/navigation.cjs.js.map +1 -0
  189. package/dist/js/generator/navigation.es.js +3 -0
  190. package/dist/js/generator/navigation.es.js.map +1 -0
  191. package/dist/js/generator/navigation.iife.js +3 -0
  192. package/dist/js/generator/navigation.iife.js.map +1 -0
  193. package/dist/js/generator/tabs.cjs.js +5 -0
  194. package/dist/js/generator/tabs.cjs.js.map +1 -0
  195. package/dist/js/generator/tabs.es.js +5 -0
  196. package/dist/js/generator/tabs.es.js.map +1 -0
  197. package/dist/js/generator/tabs.iife.js +5 -0
  198. package/dist/js/generator/tabs.iife.js.map +1 -0
  199. package/dist/js/graupl.js +5 -0
  200. package/dist/js/graupl.js.map +1 -0
  201. package/dist/js/navigation.js +3 -0
  202. package/dist/js/navigation.js.map +1 -0
  203. package/dist/js/storage/initializer.js +3 -0
  204. package/dist/js/storage/initializer.js.map +1 -0
  205. package/dist/js/storage/storage-manager.cjs.js +3 -0
  206. package/dist/js/storage/storage-manager.cjs.js.map +1 -0
  207. package/dist/js/storage/storage-manager.es.js +3 -0
  208. package/dist/js/storage/storage-manager.es.js.map +1 -0
  209. package/dist/js/storage/storage-manager.iife.js +3 -0
  210. package/dist/js/storage/storage-manager.iife.js.map +1 -0
  211. package/dist/js/tabs.js +5 -0
  212. package/dist/js/tabs.js.map +1 -0
  213. package/package.json +59 -49
  214. package/scss/base/button.scss +1 -1
  215. package/scss/base/form.scss +1 -1
  216. package/scss/base/link.scss +1 -1
  217. package/scss/base/table.scss +1 -1
  218. package/scss/base.scss +1 -1
  219. package/scss/component/accordion.scss +1 -1
  220. package/scss/component/alert.scss +1 -1
  221. package/scss/component/badge.scss +3 -0
  222. package/scss/component/breadcrumb.scss +3 -0
  223. package/scss/component/card.scss +1 -1
  224. package/scss/component/carousel.scss +1 -1
  225. package/scss/component/disclosure.scss +3 -0
  226. package/scss/component/input-group.scss +1 -1
  227. package/scss/component/list.scss +1 -1
  228. package/scss/component/menu.scss +1 -1
  229. package/scss/component/navigation.scss +1 -1
  230. package/scss/component/tabs.scss +3 -0
  231. package/scss/component.scss +1 -1
  232. package/scss/graupl.scss +1 -1
  233. package/scss/init.scss +1 -1
  234. package/scss/layout/columns.scss +1 -1
  235. package/scss/layout/container.scss +1 -1
  236. package/scss/layout/flex-columns.scss +1 -1
  237. package/scss/layout.scss +1 -1
  238. package/scss/normalize.scss +1 -1
  239. package/scss/state/focus.scss +1 -1
  240. package/scss/state.scss +1 -1
  241. package/scss/theme/color.scss +1 -1
  242. package/scss/theme/typography.scss +1 -1
  243. package/scss/theme.scss +1 -1
  244. package/scss/utilities/alignment.scss +1 -1
  245. package/scss/utilities/background.scss +1 -1
  246. package/scss/utilities/border.scss +1 -1
  247. package/scss/utilities/color.scss +1 -1
  248. package/scss/utilities/container.scss +3 -0
  249. package/scss/utilities/display.scss +1 -1
  250. package/scss/utilities/flex.scss +1 -1
  251. package/scss/utilities/gradient.scss +1 -1
  252. package/scss/utilities/height.scss +1 -1
  253. package/scss/utilities/inset.scss +1 -1
  254. package/scss/utilities/isolation.scss +3 -0
  255. package/scss/utilities/justification.scss +1 -1
  256. package/scss/utilities/list.scss +1 -1
  257. package/scss/utilities/object.scss +3 -0
  258. package/scss/utilities/order.scss +1 -1
  259. package/scss/utilities/position.scss +3 -0
  260. package/scss/utilities/ratio.scss +1 -1
  261. package/scss/utilities/spacing.scss +1 -1
  262. package/scss/utilities/typography.scss +1 -1
  263. package/scss/utilities/visibility.scss +1 -1
  264. package/scss/utilities/visually-hidden.scss +3 -0
  265. package/scss/utilities/width.scss +1 -1
  266. package/scss/utilities/z-index.scss +3 -0
  267. package/scss/utilities.scss +1 -1
  268. package/.browserslistrc +0 -3
  269. package/.czrc +0 -3
  270. package/.editorconfig +0 -13
  271. package/.github/CODE_OF_CONDUCT.md +0 -73
  272. package/.github/COMMIT_CONVENTION.md +0 -17
  273. package/.github/CONTRIBUTING.md +0 -86
  274. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -30
  275. package/.github/ISSUE_TEMPLATE/documentation.md +0 -20
  276. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -20
  277. package/.github/SECURITY.md +0 -26
  278. package/.github/dependabot.yml +0 -17
  279. package/.github/pull_request_template.md +0 -5
  280. package/.github/workflows/codeql-analysis.yml +0 -71
  281. package/.github/workflows/docs.yml +0 -59
  282. package/.github/workflows/test.yml +0 -27
  283. package/.husky/commit-msg +0 -3
  284. package/.husky/pre-commit +0 -4
  285. package/.prettierignore +0 -12
  286. package/.stylelintignore +0 -9
  287. package/.versionrc.cjs +0 -61
  288. package/CHANGELOG.md +0 -430
  289. package/build.js +0 -7
  290. package/combine-at-rules.cjs +0 -61
  291. package/commitlint.config.js +0 -5
  292. package/dist/css/utilities/postion.css +0 -2
  293. package/dist/css/utilities/postion.css.map +0 -1
  294. package/dist/js/component/accordion.esm.js +0 -1289
  295. package/dist/js/component/alert.esm.js +0 -529
  296. package/dist/js/component/carousel.esm.js +0 -1110
  297. package/dist/js/graupl.cjs.js +0 -5
  298. package/dist/js/graupl.esm.js +0 -1462
  299. package/dist/js/graupl.iife.js +0 -5
  300. package/docs/.vitepress/config.js +0 -78
  301. package/docs/.vitepress/theme/custom.scss +0 -35
  302. package/docs/.vitepress/theme/index.js +0 -4
  303. package/docs/compiling-graupl.md +0 -56
  304. package/docs/components/alert.md +0 -130
  305. package/docs/components/button.md +0 -84
  306. package/docs/components/card.md +0 -369
  307. package/docs/components/index.md +0 -1
  308. package/docs/components/inputgroup.md +0 -159
  309. package/docs/components/menu.md +0 -326
  310. package/docs/components/navigation.md +0 -158
  311. package/docs/content.md +0 -237
  312. package/docs/defaults.md +0 -121
  313. package/docs/forms.md +0 -79
  314. package/docs/functions.md +0 -9
  315. package/docs/getting-started.md +0 -1
  316. package/docs/index.md +0 -1
  317. package/docs/introduction.md +0 -25
  318. package/docs/layout.md +0 -200
  319. package/docs/mixins.md +0 -47
  320. package/docs/state.md +0 -67
  321. package/docs/theme.md +0 -258
  322. package/docs/utilities.md +0 -357
  323. package/eslint.config.js +0 -74
  324. package/index.html +0 -923
  325. package/index.js +0 -12
  326. package/lint-staged.config.js +0 -6
  327. package/postcss.config.cjs +0 -11
  328. package/prettier.config.js +0 -16
  329. package/scss/utilities/postion.scss +0 -3
  330. package/src/js/accordion/Accordion.js +0 -1163
  331. package/src/js/accordion/AccordionItem.js +0 -496
  332. package/src/js/accordion/index.js +0 -10
  333. package/src/js/alert/Alert.js +0 -581
  334. package/src/js/alert/index.js +0 -11
  335. package/src/js/carousel/Carousel.js +0 -1427
  336. package/src/js/carousel/index.js +0 -10
  337. package/src/js/domHelpers.js +0 -37
  338. package/src/js/eventHandlers.js +0 -39
  339. package/src/js/navigation/index.js +0 -36
  340. package/src/js/storage.js +0 -106
  341. package/src/js/validate.js +0 -225
  342. package/src/scss/_defaults.scss +0 -152
  343. package/src/scss/_index.scss +0 -15
  344. package/src/scss/_init.scss +0 -6
  345. package/src/scss/_normalize.scss +0 -197
  346. package/src/scss/_variables.scss +0 -53
  347. package/src/scss/base/_index.scss +0 -6
  348. package/src/scss/base/button/_defaults.scss +0 -60
  349. package/src/scss/base/button/_index.scss +0 -107
  350. package/src/scss/base/button/_mixins.scss +0 -166
  351. package/src/scss/base/button/_variables.scss +0 -176
  352. package/src/scss/base/form/_defaults.scss +0 -17
  353. package/src/scss/base/form/_index.scss +0 -93
  354. package/src/scss/base/form/_variables.scss +0 -153
  355. package/src/scss/base/link/_defaults.scss +0 -50
  356. package/src/scss/base/link/_index.scss +0 -134
  357. package/src/scss/base/link/_variables.scss +0 -262
  358. package/src/scss/base/table/_defaults.scss +0 -53
  359. package/src/scss/base/table/_index.scss +0 -121
  360. package/src/scss/base/table/_variables.scss +0 -135
  361. package/src/scss/component/_index.scss +0 -10
  362. package/src/scss/component/accordion/_defaults.scss +0 -40
  363. package/src/scss/component/accordion/_index.scss +0 -180
  364. package/src/scss/component/accordion/_variables.scss +0 -316
  365. package/src/scss/component/alert/_defaults.scss +0 -49
  366. package/src/scss/component/alert/_index.scss +0 -118
  367. package/src/scss/component/alert/_variables.scss +0 -170
  368. package/src/scss/component/card/_defaults.scss +0 -32
  369. package/src/scss/component/card/_index.scss +0 -178
  370. package/src/scss/component/card/_variables.scss +0 -186
  371. package/src/scss/component/carousel/_defaults.scss +0 -43
  372. package/src/scss/component/carousel/_index.scss +0 -188
  373. package/src/scss/component/carousel/_variables.scss +0 -104
  374. package/src/scss/component/input-group/_defaults.scss +0 -30
  375. package/src/scss/component/input-group/_index.scss +0 -47
  376. package/src/scss/component/input-group/_variables.scss +0 -66
  377. package/src/scss/component/list/_defaults.scss +0 -15
  378. package/src/scss/component/list/_index.scss +0 -50
  379. package/src/scss/component/list/_variables.scss +0 -176
  380. package/src/scss/component/menu/_defaults.scss +0 -66
  381. package/src/scss/component/menu/_index.scss +0 -305
  382. package/src/scss/component/menu/_variables.scss +0 -500
  383. package/src/scss/component/navigation/_defaults.scss +0 -29
  384. package/src/scss/component/navigation/_index.scss +0 -189
  385. package/src/scss/component/navigation/_variables.scss +0 -237
  386. package/src/scss/functions/_important.scss +0 -13
  387. package/src/scss/functions/_screen.scss +0 -38
  388. package/src/scss/functions/_theme.scss +0 -39
  389. package/src/scss/functions/_utility.scss +0 -28
  390. package/src/scss/layout/_index.scss +0 -5
  391. package/src/scss/layout/columns/_defaults.scss +0 -24
  392. package/src/scss/layout/columns/_index.scss +0 -58
  393. package/src/scss/layout/columns/_variables.scss +0 -51
  394. package/src/scss/layout/container/_defaults.scss +0 -23
  395. package/src/scss/layout/container/_index.scss +0 -43
  396. package/src/scss/layout/container/_variables.scss +0 -50
  397. package/src/scss/layout/flex-columns/_defaults.scss +0 -24
  398. package/src/scss/layout/flex-columns/_index.scss +0 -78
  399. package/src/scss/layout/flex-columns/_variables.scss +0 -26
  400. package/src/scss/mixins/_animation.scss +0 -15
  401. package/src/scss/mixins/_layer.scss +0 -16
  402. package/src/scss/mixins/_screen.scss +0 -77
  403. package/src/scss/mixins/_state.scss +0 -18
  404. package/src/scss/mixins/_theme.scss +0 -15
  405. package/src/scss/mixins/_utility.scss +0 -138
  406. package/src/scss/mixins/_visually-hidden.scss +0 -20
  407. package/src/scss/state/_index.scss +0 -3
  408. package/src/scss/state/focus/_defaults.scss +0 -10
  409. package/src/scss/state/focus/_index.scss +0 -13
  410. package/src/scss/state/focus/_mixins.scss +0 -15
  411. package/src/scss/state/focus/_variables.scss +0 -44
  412. package/src/scss/theme/_index.scss +0 -4
  413. package/src/scss/theme/color/_defaults.scss +0 -143
  414. package/src/scss/theme/color/_index.scss +0 -42
  415. package/src/scss/theme/color/_variables.scss +0 -129
  416. package/src/scss/theme/typography/_defaults.scss +0 -54
  417. package/src/scss/theme/typography/_index.scss +0 -111
  418. package/src/scss/theme/typography/_variables.scss +0 -231
  419. package/src/scss/utilities/_index.scss +0 -20
  420. package/src/scss/utilities/alignment/_defaults.scss +0 -64
  421. package/src/scss/utilities/alignment/_index.scss +0 -168
  422. package/src/scss/utilities/alignment/_variables.scss +0 -6
  423. package/src/scss/utilities/background/_defaults.scss +0 -145
  424. package/src/scss/utilities/background/_index.scss +0 -340
  425. package/src/scss/utilities/background/_variables.scss +0 -6
  426. package/src/scss/utilities/border/_defaults.scss +0 -61
  427. package/src/scss/utilities/border/_index.scss +0 -269
  428. package/src/scss/utilities/border/_variables.scss +0 -6
  429. package/src/scss/utilities/color/_defaults.scss +0 -37
  430. package/src/scss/utilities/color/_index.scss +0 -202
  431. package/src/scss/utilities/color/_variables.scss +0 -6
  432. package/src/scss/utilities/display/_defaults.scss +0 -36
  433. package/src/scss/utilities/display/_index.scss +0 -134
  434. package/src/scss/utilities/display/_variables.scss +0 -6
  435. package/src/scss/utilities/flex/_defaults.scss +0 -87
  436. package/src/scss/utilities/flex/_index.scss +0 -255
  437. package/src/scss/utilities/flex/_variables.scss +0 -6
  438. package/src/scss/utilities/gradient/_defaults.scss +0 -58
  439. package/src/scss/utilities/gradient/_index.scss +0 -380
  440. package/src/scss/utilities/gradient/_variables.scss +0 -29
  441. package/src/scss/utilities/height/_defaults.scss +0 -43
  442. package/src/scss/utilities/height/_index.scss +0 -236
  443. package/src/scss/utilities/height/_variables.scss +0 -6
  444. package/src/scss/utilities/inset/_defaults.scss +0 -43
  445. package/src/scss/utilities/inset/_index.scss +0 -90
  446. package/src/scss/utilities/inset/_variables.scss +0 -6
  447. package/src/scss/utilities/justification/_defaults.scss +0 -61
  448. package/src/scss/utilities/justification/_index.scss +0 -168
  449. package/src/scss/utilities/justification/_variables.scss +0 -6
  450. package/src/scss/utilities/list/_defaults.scss +0 -41
  451. package/src/scss/utilities/list/_index.scss +0 -125
  452. package/src/scss/utilities/list/_variables.scss +0 -6
  453. package/src/scss/utilities/order/_defaults.scss +0 -24
  454. package/src/scss/utilities/order/_index.scss +0 -111
  455. package/src/scss/utilities/order/_variables.scss +0 -6
  456. package/src/scss/utilities/position/_defaults.scss +0 -28
  457. package/src/scss/utilities/position/_index.scss +0 -82
  458. package/src/scss/utilities/position/_variables.scss +0 -6
  459. package/src/scss/utilities/ratio/_defaults.scss +0 -30
  460. package/src/scss/utilities/ratio/_index.scss +0 -91
  461. package/src/scss/utilities/ratio/_variables.scss +0 -9
  462. package/src/scss/utilities/spacing/_defaults.scss +0 -51
  463. package/src/scss/utilities/spacing/_index.scss +0 -382
  464. package/src/scss/utilities/spacing/_variables.scss +0 -6
  465. package/src/scss/utilities/typography/_defaults.scss +0 -46
  466. package/src/scss/utilities/typography/_index.scss +0 -658
  467. package/src/scss/utilities/typography/_variables.scss +0 -6
  468. package/src/scss/utilities/visibility/_defaults.scss +0 -27
  469. package/src/scss/utilities/visibility/_index.scss +0 -82
  470. package/src/scss/utilities/visibility/_variables.scss +0 -6
  471. package/src/scss/utilities/width/_defaults.scss +0 -43
  472. package/src/scss/utilities/width/_index.scss +0 -236
  473. package/src/scss/utilities/width/_variables.scss +0 -6
  474. package/stylelint.config.js +0 -22
  475. package/vite.config.js +0 -57
@@ -1,496 +0,0 @@
1
- /**
2
- * @file
3
- * The Accordion Item class.
4
- */
5
-
6
- /* global Accordion */
7
-
8
- import { isTag, isValidType } from "../validate.js";
9
- import { addClass, removeClass } from "../domHelpers.js";
10
-
11
- /**
12
- * Creates a new accordion item.
13
- *
14
- * @class
15
- */
16
- class AccordionItem {
17
- /**
18
- * The HTML elements for the accordion item in the DOM.
19
- *
20
- * @protected
21
- *
22
- * @type {Object<HTMLElement>}
23
- *
24
- * @property {HTMLElement} item - The accordion item element.
25
- * @property {HTMLElement} toggle - The controller element.
26
- * @property {HTMLElement} header - The header element.
27
- * @property {HTMLElement} content - The content element.
28
- */
29
- _dom = {
30
- item: null,
31
- toggle: null,
32
- header: null,
33
- content: null,
34
- };
35
-
36
- /**
37
- * The declared graupl accordion elements within the accordion item.
38
- *
39
- * @protected
40
- *
41
- * @type {Object<Accordion>}
42
- *
43
- * @property {Accordion} parentAccordion - The parent accordion containing this item.
44
- */
45
- _elements = {
46
- parentAccordion: null,
47
- };
48
-
49
- /**
50
- * The open state of the accordion.
51
- *
52
- * @protected
53
- *
54
- * @type {boolean}
55
- */
56
- _open = false;
57
-
58
- /**
59
- * The locked state of the accordions item.
60
- *
61
- * If locked, the accordion item cannot be closed.
62
- *
63
- * @protected
64
- *
65
- * @type {boolean}
66
- */
67
- _locked = false;
68
-
69
- /**
70
- * The event that is triggered when the accordion item is shown.
71
- *
72
- * @protected
73
- *
74
- * @event grauplAccordionItemExpand
75
- *
76
- * @type {CustomEvent}
77
- *
78
- * @property {boolean} bubbles - A flag to bubble the event.
79
- * @property {Object<AccordionItem>} detail - The details object containing the Accordion item itself.
80
- */
81
- _expandEvent = new CustomEvent("grauplAccordionItemExpand", {
82
- bubbles: true,
83
- detail: { item: this },
84
- });
85
-
86
- /**
87
- * The event that is triggered when the accordion item is hidden.
88
- *
89
- * @protected
90
- *
91
- * @event grauplAccordionItemCollapse
92
- *
93
- * @type {CustomEvent}
94
- *
95
- * @property {boolean} bubbles - A flag to bubble the event.
96
- * @property {Object<AccordionItem>} detail - The details object containing the Accordion item itself.
97
- */
98
- _collapseEvent = new CustomEvent("grauplAccordionItemCollapse", {
99
- bubbles: true,
100
- detail: { item: this },
101
- });
102
-
103
- /**
104
- * Constructs a new Accordion item object.
105
- *
106
- * @class
107
- *
108
- * @param {object} options - The options object.
109
- * @param {HTMLElement} options.accordionItemElement - The accordion item element.
110
- * @param {HTMLElement} options.accordionItemToggleElement - The toggle element.
111
- * @param {HTMLElement} options.accordionItemHeaderElement - The header element.
112
- * @param {HTMLElement} options.accordionItemContentElement - The content element.
113
- * @param {Accordion} [options.parentAccordion = null] - The accordion containing this item.
114
- */
115
- constructor({
116
- accordionItemElement,
117
- accordionItemToggleElement,
118
- accordionItemHeaderElement,
119
- accordionItemContentElement,
120
- parentAccordion = null,
121
- }) {
122
- // Set DOM elements.
123
- this._dom.item = accordionItemElement;
124
- this._dom.toggle = accordionItemToggleElement;
125
- this._dom.header = accordionItemHeaderElement;
126
- this._dom.content = accordionItemContentElement;
127
-
128
- // Set the accordion elements.
129
- this._elements.parentAccordion = parentAccordion;
130
- }
131
-
132
- /**
133
- * Initializes the accordion item.
134
- */
135
- initialize() {
136
- // Set the IDs for the accordion item and it's elements if they don't exist.
137
- this._setIds();
138
-
139
- // Set the ARIA attributes for the accordion item and it's elements.
140
- this._setAriaAttributes();
141
-
142
- // Set the initial state of the accordion item.
143
- if (this.dom.toggle.getAttribute("aria-expanded") === "true") {
144
- this.show(false, false);
145
- } else {
146
- this.hide(false, false);
147
- }
148
- }
149
-
150
- /**
151
- * The HTML elements for the accordion item in the DOM.
152
- *
153
- * @readonly
154
- *
155
- * @type {object}
156
- *
157
- * @see _dom
158
- */
159
- get dom() {
160
- return this._dom;
161
- }
162
-
163
- /**
164
- * The declared graupl accordion elements within the accordion item.
165
- *
166
- * @readonly
167
- *
168
- * @type {Object<Accordion>}
169
- *
170
- * @see _elements
171
- */
172
- get elements() {
173
- return this._elements;
174
- }
175
-
176
- /**
177
- * The open state of the accordion.
178
- *
179
- * @readonly
180
- *
181
- * @type {object}
182
- *
183
- * @see _open
184
- */
185
- get isOpen() {
186
- return this._open;
187
- }
188
-
189
- /**
190
- * The locked state of the accordions item.
191
- *
192
- * If locked, the accordion item cannot be closed.
193
- *
194
- * @readonly
195
- *
196
- * @type {boolean}
197
- *
198
- * @see _locked
199
- */
200
- get isLocked() {
201
- return this._locked;
202
- }
203
-
204
- set isOpen(value) {
205
- isValidType("boolean", { value });
206
-
207
- if (this._open !== value) {
208
- this._open = value;
209
- }
210
- }
211
-
212
- /**
213
- * Sets the IDs for the accordion item and it's elements if they don't exist.
214
- *
215
- * The generated IDs use the parent accordion's key and follows the pattern:
216
- * - Accordion item: `accordion-item-{key}-{index}`
217
- * - Accordion item toggle: `accordion-item-toggle-{key}-{index}`
218
- * - Accordion item content: `accordion-item-content-{key}-{index}`
219
- */
220
- _setIds() {
221
- // Get the required information for IDs.
222
- const { key } = this.elements.parentAccordion;
223
- const index = this.elements.parentAccordion.dom.accordionItems.indexOf(
224
- this.dom.item
225
- );
226
-
227
- this.dom.item.id = this.dom.item.id || `accordion-item-${key}-${index}`;
228
- this.dom.toggle.id =
229
- this.dom.toggle.id || `accordion-item-toggle-${key}-${index}`;
230
- this.dom.header.id =
231
- this.dom.header.id || `accordion-item-header-${key}-${index}`;
232
- this.dom.content.id =
233
- this.dom.content.id || `accordion-item-content-${key}-${index}`;
234
- }
235
-
236
- /**
237
- * Sets the ARIA attributes for the accordion item and it's elements.
238
- */
239
- _setAriaAttributes() {
240
- // Set the ARIA attributes for the accordion item toggle.
241
- // If the toggle is not a button, then set the role to "button".
242
- if (!isTag("button", { toggle: this.dom.toggle })) {
243
- this.dom.toggle.setAttribute("role", "button");
244
- }
245
-
246
- // If aria-expanded is not explicitly set to "true", then set it to "false".
247
- if (this.dom.toggle.getAttribute("aria-expanded") !== "true") {
248
- this.dom.toggle.setAttribute("aria-expanded", "false");
249
- }
250
-
251
- // Set the aria-controls attribute for the toggle.
252
- this.dom.toggle.setAttribute("aria-controls", this.dom.content.id);
253
-
254
- // Set the ARIA attributes for the accordion item content.
255
- // If the content is not a section, then set the role to "region".
256
- if (!isTag("section", { content: this.dom.content })) {
257
- this.dom.content.setAttribute("role", "region");
258
- }
259
-
260
- // Set the aria-labelledby attribute for the content.
261
- this.dom.content.setAttribute("aria-labelledby", this.dom.toggle.id);
262
- }
263
-
264
- /**
265
- * Shows the accordion item.
266
- *
267
- * @public
268
- *
269
- * @fires grauplAccordionItemExpand
270
- *
271
- * @param {boolean} [emit = true] - Emit the show event once shown.
272
- * @param {boolean} [transition = true] - Respect the transition class.
273
- */
274
- show(emit = true, transition = true) {
275
- if (this._open) {
276
- return;
277
- }
278
-
279
- const { closeClass, openClass, transitionClass, openDuration } =
280
- this.elements.parentAccordion;
281
-
282
- // Set aria-expanded to true when hiding accordion item.
283
- this.dom.toggle.setAttribute("aria-expanded", "true");
284
-
285
- // If we're dealing with transition classes, then we need to utilize
286
- // requestAnimationFrame to add the transition class, remove the hide class,
287
- // add the show class, and finally remove the transition class.
288
- //
289
- // If `transition` is false, then it doesn't matter if the transition class
290
- // is set. Do not use the transition.
291
- if (transition && transitionClass !== "") {
292
- addClass(transitionClass, this.dom.item);
293
-
294
- requestAnimationFrame(() => {
295
- removeClass(closeClass, this.dom.item);
296
-
297
- this.dom.item.style.height = `${this.dom.header.getBoundingClientRect().height}px`;
298
-
299
- requestAnimationFrame(() => {
300
- addClass(openClass, this.dom.item);
301
-
302
- this.dom.item.style.height = `${this.dom.header.getBoundingClientRect().height + this.dom.content.getBoundingClientRect().height}px`;
303
-
304
- requestAnimationFrame(() => {
305
- setTimeout(() => {
306
- removeClass(transitionClass, this.dom.item);
307
-
308
- this.dom.item.style.height = "";
309
- }, openDuration);
310
- });
311
- });
312
- });
313
- } else {
314
- // Add the show class
315
- addClass(openClass, this.dom.item);
316
-
317
- // Remove the hide class.
318
- removeClass(closeClass, this.dom.item);
319
- }
320
-
321
- this._open = true;
322
-
323
- // If the parent accordion only allows a single item to be open at a time,
324
- // then close all other items.
325
- if (!this.elements.parentAccordion.allowMultipleExpand) {
326
- this.unlockSiblings();
327
- this.closeSiblings();
328
- }
329
-
330
- // If the parent accordion requires at least one item to be open, and this
331
- // is the only open item, then lock it. Otherwise, unlock all siblings.
332
- if (!this.elements.parentAccordion.allowNoExpand) {
333
- if (this.elements.parentAccordion.openAccordionItems.length <= 1) {
334
- this.lock();
335
- } else {
336
- this.unlockSiblings();
337
- }
338
- }
339
-
340
- if (emit) {
341
- this.dom.item.dispatchEvent(this._expandEvent);
342
- }
343
- }
344
-
345
- /**
346
- * Hides the accordion item.
347
- *
348
- * @public
349
- *
350
- * @fires grauplAccordionItemCollapse
351
- *
352
- * @param {boolean} [emit = true] - Emit the show event once shown.
353
- * @param {boolean} [transition = true] - Respect the transition class.
354
- */
355
- hide(emit = true, transition = true) {
356
- if (!this._open) {
357
- return;
358
- }
359
-
360
- if (
361
- !this.elements.parentAccordion.allowNoExpand &&
362
- this.elements.parentAccordion.openAccordionItems.length <= 1
363
- ) {
364
- return;
365
- }
366
-
367
- const { closeClass, openClass, transitionClass, closeDuration } =
368
- this.elements.parentAccordion;
369
-
370
- // Set aria-expanded to false when hiding accordion item.
371
- this.dom.toggle.setAttribute("aria-expanded", "false");
372
-
373
- // If we're dealing with transition classes, then we need to utilize
374
- // requestAnimationFrame to add the transition class, remove the show class,
375
- // add the hide class, and finally remove the transition class.
376
- //
377
- // If `transition` is false, then it doesn't matter if the transition class
378
- // is set. Do not use the transition.
379
- if (transition && transitionClass !== "") {
380
- addClass(transitionClass, this.dom.item);
381
- this.dom.item.style.height = `${this.dom.item.getBoundingClientRect().height}px`;
382
-
383
- requestAnimationFrame(() => {
384
- removeClass(openClass, this.dom.item);
385
- this.dom.item.style.height = `${this.dom.header.getBoundingClientRect().height}px`;
386
-
387
- requestAnimationFrame(() => {
388
- addClass(closeClass, this.dom.item);
389
-
390
- requestAnimationFrame(() => {
391
- setTimeout(() => {
392
- removeClass(transitionClass, this.dom.item);
393
-
394
- this.dom.item.style.height = "";
395
- }, closeDuration);
396
- });
397
- });
398
- });
399
- } else {
400
- // Add the hide class
401
- addClass(closeClass, this.dom.item);
402
-
403
- // Remove the show class.
404
- removeClass(openClass, this.dom.item);
405
- }
406
-
407
- this._open = false;
408
-
409
- // If the parent accordion requires at least one item to be open, and this was
410
- // the second to last open item, then lock to last open item.
411
- if (
412
- !this.elements.parentAccordion.allowNoExpand &&
413
- this.elements.parentAccordion.openAccordionItems.length === 1
414
- ) {
415
- this.elements.parentAccordion.openAccordionItems[0].lock();
416
- }
417
-
418
- if (emit) {
419
- this.dom.item.dispatchEvent(this._collapseEvent);
420
- }
421
- }
422
-
423
- /**
424
- * Toggle the accordion item.
425
- *
426
- * @public
427
- */
428
- toggle() {
429
- this.isOpen ? this.hide() : this.show();
430
- }
431
-
432
- /**
433
- * Focuses the accordion item.
434
- *
435
- * @public
436
- */
437
- focus() {
438
- this.dom.toggle.focus();
439
- }
440
-
441
- /**
442
- * Blurs the accordion item.
443
- *
444
- * @public
445
- */
446
- blur() {
447
- this.dom.toggle.blur();
448
- }
449
-
450
- /**
451
- * Locks the accordion item.
452
- *
453
- * @public
454
- */
455
- lock() {
456
- this._locked = true;
457
- this.dom.toggle.setAttribute("disabled", "true");
458
- }
459
-
460
- /**
461
- * Unlocks the accordion item.
462
- *
463
- * @public
464
- */
465
- unlock() {
466
- this._locked = false;
467
- this.dom.toggle.removeAttribute("disabled");
468
- }
469
-
470
- closeSiblings() {
471
- if (this.elements.parentAccordion) {
472
- this.elements.parentAccordion.elements.accordionItems.forEach((item) => {
473
- if (item !== this) {
474
- item.hide();
475
- }
476
- });
477
- }
478
- }
479
-
480
- /**
481
- * Unlocks the siblings of the accordion item.
482
- *
483
- * @public
484
- */
485
- unlockSiblings() {
486
- if (this.elements.parentAccordion) {
487
- this.elements.parentAccordion.elements.accordionItems.forEach((item) => {
488
- if (item !== this) {
489
- item.unlock();
490
- }
491
- });
492
- }
493
- }
494
- }
495
-
496
- export default AccordionItem;
@@ -1,10 +0,0 @@
1
- import Accordion from "./Accordion.js";
2
-
3
- document.addEventListener("DOMContentLoaded", () => {
4
- document.querySelectorAll(".accordion").forEach((accordionElement) => {
5
- new Accordion({
6
- accordionElement,
7
- initialize: true,
8
- });
9
- });
10
- });