@ulu/frontend 0.1.0-beta.1 → 0.1.0-beta.100

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 (401) hide show
  1. package/CHANGELOG.md +681 -2
  2. package/README.dev.md +3 -3
  3. package/README.md +14 -4
  4. package/dist/ulu-frontend.min.css +1 -1
  5. package/dist/ulu-frontend.min.js +36 -29
  6. package/docs-dev/.nojekyll +1 -0
  7. package/docs-dev/assets/chunks/modulepreload-polyfill.DaKOjhqt.js +37 -0
  8. package/docs-dev/assets/favicons/android-chrome-192x192.png +0 -0
  9. package/docs-dev/assets/favicons/android-chrome-256x256.png +0 -0
  10. package/docs-dev/assets/favicons/apple-touch-icon.png +0 -0
  11. package/docs-dev/assets/favicons/browserconfig.xml +9 -0
  12. package/docs-dev/assets/favicons/favicon-16x16.png +0 -0
  13. package/docs-dev/assets/favicons/favicon-32x32.png +0 -0
  14. package/docs-dev/assets/favicons/favicon.ico +0 -0
  15. package/docs-dev/assets/favicons/mstile-150x150.png +0 -0
  16. package/docs-dev/assets/favicons/safari-pinned-tab.svg +1 -0
  17. package/docs-dev/assets/favicons/site.webmanifest +19 -0
  18. package/docs-dev/assets/fonts/fontawesome/fa-brands-400.ttf +0 -0
  19. package/docs-dev/assets/fonts/fontawesome/fa-brands-400.woff2 +0 -0
  20. package/docs-dev/assets/fonts/fontawesome/fa-regular-400.ttf +0 -0
  21. package/docs-dev/assets/fonts/fontawesome/fa-regular-400.woff2 +0 -0
  22. package/docs-dev/assets/fonts/fontawesome/fa-solid-900.ttf +0 -0
  23. package/docs-dev/assets/fonts/fontawesome/fa-solid-900.woff2 +0 -0
  24. package/docs-dev/assets/fonts/fontawesome/fa-v4compatibility.ttf +0 -0
  25. package/docs-dev/assets/fonts/fontawesome/fa-v4compatibility.woff2 +0 -0
  26. package/docs-dev/assets/fonts/inter/Inter-Black.woff2 +0 -0
  27. package/docs-dev/assets/fonts/inter/Inter-BlackItalic.woff2 +0 -0
  28. package/docs-dev/assets/fonts/inter/Inter-Bold.woff2 +0 -0
  29. package/docs-dev/assets/fonts/inter/Inter-BoldItalic.woff2 +0 -0
  30. package/docs-dev/assets/fonts/inter/Inter-ExtraBold.woff2 +0 -0
  31. package/docs-dev/assets/fonts/inter/Inter-ExtraBoldItalic.woff2 +0 -0
  32. package/docs-dev/assets/fonts/inter/Inter-ExtraLight.woff2 +0 -0
  33. package/docs-dev/assets/fonts/inter/Inter-ExtraLightItalic.woff2 +0 -0
  34. package/docs-dev/assets/fonts/inter/Inter-Italic.woff2 +0 -0
  35. package/docs-dev/assets/fonts/inter/Inter-Light.woff2 +0 -0
  36. package/docs-dev/assets/fonts/inter/Inter-LightItalic.woff2 +0 -0
  37. package/docs-dev/assets/fonts/inter/Inter-Medium.woff2 +0 -0
  38. package/docs-dev/assets/fonts/inter/Inter-MediumItalic.woff2 +0 -0
  39. package/docs-dev/assets/fonts/inter/Inter-Regular.woff2 +0 -0
  40. package/docs-dev/assets/fonts/inter/Inter-SemiBold.woff2 +0 -0
  41. package/docs-dev/assets/fonts/inter/Inter-SemiBoldItalic.woff2 +0 -0
  42. package/docs-dev/assets/fonts/inter/Inter-Thin.woff2 +0 -0
  43. package/docs-dev/assets/fonts/inter/Inter-ThinItalic.woff2 +0 -0
  44. package/docs-dev/assets/fonts/inter/InterDisplay-Black.woff2 +0 -0
  45. package/docs-dev/assets/fonts/inter/InterDisplay-BlackItalic.woff2 +0 -0
  46. package/docs-dev/assets/fonts/inter/InterDisplay-Bold.woff2 +0 -0
  47. package/docs-dev/assets/fonts/inter/InterDisplay-BoldItalic.woff2 +0 -0
  48. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraBold.woff2 +0 -0
  49. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraBoldItalic.woff2 +0 -0
  50. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraLight.woff2 +0 -0
  51. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraLightItalic.woff2 +0 -0
  52. package/docs-dev/assets/fonts/inter/InterDisplay-Italic.woff2 +0 -0
  53. package/docs-dev/assets/fonts/inter/InterDisplay-Light.woff2 +0 -0
  54. package/docs-dev/assets/fonts/inter/InterDisplay-LightItalic.woff2 +0 -0
  55. package/docs-dev/assets/fonts/inter/InterDisplay-Medium.woff2 +0 -0
  56. package/docs-dev/assets/fonts/inter/InterDisplay-MediumItalic.woff2 +0 -0
  57. package/docs-dev/assets/fonts/inter/InterDisplay-Regular.woff2 +0 -0
  58. package/docs-dev/assets/fonts/inter/InterDisplay-SemiBold.woff2 +0 -0
  59. package/docs-dev/assets/fonts/inter/InterDisplay-SemiBoldItalic.woff2 +0 -0
  60. package/docs-dev/assets/fonts/inter/InterDisplay-Thin.woff2 +0 -0
  61. package/docs-dev/assets/fonts/inter/InterDisplay-ThinItalic.woff2 +0 -0
  62. package/docs-dev/assets/fonts/inter/InterVariable-Italic.woff2 +0 -0
  63. package/docs-dev/assets/fonts/inter/InterVariable.woff2 +0 -0
  64. package/docs-dev/assets/fonts/inter/LICENSE.txt +92 -0
  65. package/docs-dev/assets/fonts/inter/inter.css +37 -0
  66. package/docs-dev/assets/main.js +23312 -0
  67. package/docs-dev/assets/placeholder/4065947-uhd_4096_2160_25fps.credits.txt +2 -0
  68. package/docs-dev/assets/placeholder/4065947-uhd_4096_2160_25fps.mp4 +0 -0
  69. package/docs-dev/assets/placeholder/icon-calendar.svg +1 -0
  70. package/docs-dev/assets/placeholder/icon-check.svg +1 -0
  71. package/docs-dev/assets/placeholder/image-1-attribution.txt +7 -0
  72. package/docs-dev/assets/placeholder/image-1-darkened.jpg +0 -0
  73. package/docs-dev/assets/placeholder/image-1-lightened.jpg +0 -0
  74. package/docs-dev/assets/placeholder/image-1.jpg +0 -0
  75. package/docs-dev/assets/style.css +19153 -0
  76. package/docs-dev/changelog/index.html +7184 -0
  77. package/docs-dev/demos/accordion/index.html +5811 -0
  78. package/docs-dev/demos/badge/index.html +5655 -0
  79. package/docs-dev/demos/badge-stack/index.html +5636 -0
  80. package/docs-dev/demos/badge.1/index.html +5595 -0
  81. package/docs-dev/demos/basic-hero/index.html +111 -0
  82. package/docs-dev/demos/breakpoints-manager/index.html +5666 -0
  83. package/docs-dev/demos/button/index.html +5665 -0
  84. package/docs-dev/demos/button-group/index.html +5652 -0
  85. package/docs-dev/demos/button-verbose/index.html +5658 -0
  86. package/docs-dev/demos/callout/index.html +5704 -0
  87. package/docs-dev/demos/captioned-figure/index.html +5686 -0
  88. package/docs-dev/demos/card/index.html +5682 -0
  89. package/docs-dev/demos/card-grid/index.html +5777 -0
  90. package/docs-dev/demos/counter-list/index.html +5660 -0
  91. package/docs-dev/demos/css-icons/index.html +6298 -0
  92. package/docs-dev/demos/data-grid/index.html +6529 -0
  93. package/docs-dev/demos/data-table/index.html +5833 -0
  94. package/docs-dev/demos/details-group/index.html +5687 -0
  95. package/docs-dev/demos/file-save/index.html +5675 -0
  96. package/docs-dev/demos/flipcard/index.html +6224 -0
  97. package/docs-dev/demos/form-theme/index.html +5842 -0
  98. package/docs-dev/demos/headline-label/index.html +5622 -0
  99. package/docs-dev/demos/hero/index.html +309 -0
  100. package/docs-dev/demos/image-grid/index.html +165 -0
  101. package/docs-dev/demos/index.html +5613 -0
  102. package/docs-dev/demos/list-inline/index.html +5640 -0
  103. package/docs-dev/demos/list-lines/index.html +5630 -0
  104. package/docs-dev/demos/menu-stack/index.html +5769 -0
  105. package/docs-dev/demos/modals/index.html +5844 -0
  106. package/docs-dev/demos/nav-strip/index.html +5725 -0
  107. package/docs-dev/demos/overlay-section/index.html +5701 -0
  108. package/docs-dev/demos/panel/index.html +5682 -0
  109. package/docs-dev/demos/popovers/index.html +5873 -0
  110. package/docs-dev/demos/print/index.html +5633 -0
  111. package/docs-dev/demos/pull-quote/index.html +5632 -0
  112. package/docs-dev/demos/rail/index.html +5730 -0
  113. package/docs-dev/demos/rule/index.html +5694 -0
  114. package/docs-dev/demos/scroll-slider/index.html +170 -0
  115. package/docs-dev/demos/scrollpoints/index.html +5651 -0
  116. package/docs-dev/demos/skeleton/index.html +5678 -0
  117. package/docs-dev/demos/slider/index.html +172 -0
  118. package/docs-dev/demos/spoke-spinner/index.html +5628 -0
  119. package/docs-dev/demos/sticky-list/index.html +5643 -0
  120. package/docs-dev/demos/tabs/index.html +5753 -0
  121. package/docs-dev/demos/tag/index.html +5633 -0
  122. package/docs-dev/demos/theme-toggle/index.html +5699 -0
  123. package/docs-dev/demos/tile-grid-overlay/index.html +390 -0
  124. package/docs-dev/demos/tiles/index.html +5882 -0
  125. package/docs-dev/demos/tooltip/index.html +5661 -0
  126. package/docs-dev/demos/wysiwyg/index.html +5672 -0
  127. package/docs-dev/guide/building-stylesheet/index.html +5682 -0
  128. package/docs-dev/guide/developing-ulu-scss-module/index.html +5734 -0
  129. package/docs-dev/guide/index.html +5615 -0
  130. package/docs-dev/index.html +5662 -0
  131. package/docs-dev/javascript/events/index.html +5811 -0
  132. package/docs-dev/javascript/index.html +5628 -0
  133. package/docs-dev/javascript/settings/index.html +5825 -0
  134. package/docs-dev/javascript/ui-breakpoints/index.html +6071 -0
  135. package/docs-dev/javascript/ui-collapsible/index.html +5738 -0
  136. package/docs-dev/javascript/ui-details-group/index.html +5742 -0
  137. package/docs-dev/javascript/ui-dialog/index.html +5787 -0
  138. package/docs-dev/javascript/ui-flipcard/index.html +5678 -0
  139. package/docs-dev/javascript/ui-grid/index.html +5653 -0
  140. package/docs-dev/javascript/ui-modal-builder/index.html +5901 -0
  141. package/docs-dev/javascript/ui-overflow-scroller/index.html +5611 -0
  142. package/docs-dev/javascript/ui-overflow-scroller-pager/index.html +5629 -0
  143. package/docs-dev/javascript/ui-page/index.html +5626 -0
  144. package/docs-dev/javascript/ui-popover/index.html +5661 -0
  145. package/docs-dev/javascript/ui-print/index.html +5670 -0
  146. package/docs-dev/javascript/ui-print-details/index.html +5641 -0
  147. package/docs-dev/javascript/ui-programmatic-modal/index.html +5611 -0
  148. package/docs-dev/javascript/ui-proxy-click/index.html +5740 -0
  149. package/docs-dev/javascript/ui-resizer/index.html +5946 -0
  150. package/docs-dev/javascript/ui-scroll-slider/index.html +5672 -0
  151. package/docs-dev/javascript/ui-scrollpoint/index.html +5851 -0
  152. package/docs-dev/javascript/ui-slider/index.html +5813 -0
  153. package/docs-dev/javascript/ui-tabs/index.html +5706 -0
  154. package/docs-dev/javascript/ui-theme-toggle/index.html +5830 -0
  155. package/docs-dev/javascript/ui-tooltip/index.html +5754 -0
  156. package/docs-dev/javascript/utils-class-logger/index.html +5746 -0
  157. package/docs-dev/javascript/utils-css/index.html +5644 -0
  158. package/docs-dev/javascript/utils-dom/index.html +5711 -0
  159. package/docs-dev/javascript/utils-file-save/index.html +5783 -0
  160. package/docs-dev/javascript/utils-floating-ui/index.html +5643 -0
  161. package/docs-dev/javascript/utils-id/index.html +5653 -0
  162. package/docs-dev/javascript/utils-pause-youtube-video/index.html +5661 -0
  163. package/docs-dev/javascript/utils-system/index.html +5947 -0
  164. package/docs-dev/sass/base/color/index.html +5644 -0
  165. package/docs-dev/sass/base/elements/index.html +5815 -0
  166. package/docs-dev/sass/base/index/index.html +5814 -0
  167. package/docs-dev/sass/base/index.html +5622 -0
  168. package/docs-dev/sass/base/keyframes/index.html +5646 -0
  169. package/docs-dev/sass/base/layout/index.html +5806 -0
  170. package/docs-dev/sass/base/normalize/index.html +5654 -0
  171. package/docs-dev/sass/base/print/index.html +5650 -0
  172. package/docs-dev/sass/base/root/index.html +5670 -0
  173. package/docs-dev/sass/base/typography/index.html +5670 -0
  174. package/docs-dev/sass/components/accordion/index.html +5979 -0
  175. package/docs-dev/sass/components/adaptive-spacing/index.html +5915 -0
  176. package/docs-dev/sass/components/badge/index.html +5881 -0
  177. package/docs-dev/sass/components/badge-stack/index.html +5811 -0
  178. package/docs-dev/sass/components/basic-hero/index.html +5805 -0
  179. package/docs-dev/sass/components/button/index.html +5799 -0
  180. package/docs-dev/sass/components/button-group/index.html +5803 -0
  181. package/docs-dev/sass/components/button-verbose/index.html +5986 -0
  182. package/docs-dev/sass/components/callout/index.html +5961 -0
  183. package/docs-dev/sass/components/captioned-figure/index.html +5904 -0
  184. package/docs-dev/sass/components/card/index.html +6219 -0
  185. package/docs-dev/sass/components/card-grid/index.html +5813 -0
  186. package/docs-dev/sass/components/counter-list/index.html +5887 -0
  187. package/docs-dev/sass/components/css-icon/index.html +5917 -0
  188. package/docs-dev/sass/components/data-grid/index.html +6052 -0
  189. package/docs-dev/sass/components/data-table/index.html +5988 -0
  190. package/docs-dev/sass/components/fill-context/index.html +5679 -0
  191. package/docs-dev/sass/components/flipcard/index.html +5980 -0
  192. package/docs-dev/sass/components/flipcard-grid/index.html +5800 -0
  193. package/docs-dev/sass/components/form-theme/index.html +6525 -0
  194. package/docs-dev/sass/components/headline-label/index.html +5833 -0
  195. package/docs-dev/sass/components/hero/index.html +5849 -0
  196. package/docs-dev/sass/components/horizontal-rule/index.html +5798 -0
  197. package/docs-dev/sass/components/image-grid/index.html +5805 -0
  198. package/docs-dev/sass/components/index/index.html +5859 -0
  199. package/docs-dev/sass/components/index.html +5622 -0
  200. package/docs-dev/sass/components/links/index.html +5649 -0
  201. package/docs-dev/sass/components/list-inline/index.html +5819 -0
  202. package/docs-dev/sass/components/list-lines/index.html +5840 -0
  203. package/docs-dev/sass/components/list-ordered/index.html +5645 -0
  204. package/docs-dev/sass/components/list-unordered/index.html +5649 -0
  205. package/docs-dev/sass/components/menu-stack/index.html +5992 -0
  206. package/docs-dev/sass/components/modal/index.html +6068 -0
  207. package/docs-dev/sass/components/nav-strip/index.html +5899 -0
  208. package/docs-dev/sass/components/overlay-section/index.html +5843 -0
  209. package/docs-dev/sass/components/pager/index.html +5961 -0
  210. package/docs-dev/sass/components/panel/index.html +6033 -0
  211. package/docs-dev/sass/components/placeholder-block/index.html +5883 -0
  212. package/docs-dev/sass/components/popover/index.html +5994 -0
  213. package/docs-dev/sass/components/pull-quote/index.html +5857 -0
  214. package/docs-dev/sass/components/rail/index.html +5823 -0
  215. package/docs-dev/sass/components/ratio-box/index.html +5803 -0
  216. package/docs-dev/sass/components/rule/index.html +5805 -0
  217. package/docs-dev/sass/components/scroll-slider/index.html +5904 -0
  218. package/docs-dev/sass/components/skeleton/index.html +5861 -0
  219. package/docs-dev/sass/components/skip-link/index.html +5789 -0
  220. package/docs-dev/sass/components/slider/index.html +5913 -0
  221. package/docs-dev/sass/components/spoke-spinner/index.html +5863 -0
  222. package/docs-dev/sass/components/sticky-list/index.html +6023 -0
  223. package/docs-dev/sass/components/table-sticky/index.html +5677 -0
  224. package/docs-dev/sass/components/tabs/index.html +5954 -0
  225. package/docs-dev/sass/components/tag/index.html +5964 -0
  226. package/docs-dev/sass/components/tile-button/index.html +5844 -0
  227. package/docs-dev/sass/components/tile-grid/index.html +5979 -0
  228. package/docs-dev/sass/components/tile-grid-overlay/index.html +5780 -0
  229. package/docs-dev/sass/components/vignette/index.html +5799 -0
  230. package/docs-dev/sass/components/wysiwyg/index.html +5827 -0
  231. package/docs-dev/sass/core/breakpoint/index.html +6454 -0
  232. package/docs-dev/sass/core/button/index.html +6538 -0
  233. package/docs-dev/sass/core/color/index.html +6520 -0
  234. package/docs-dev/sass/core/cssvar/index.html +6411 -0
  235. package/docs-dev/sass/core/element/index.html +6816 -0
  236. package/docs-dev/sass/core/index.html +5609 -0
  237. package/docs-dev/sass/core/layout/index.html +6388 -0
  238. package/docs-dev/sass/core/path/index.html +5778 -0
  239. package/docs-dev/sass/core/selector/index.html +5857 -0
  240. package/docs-dev/sass/core/typography/index.html +6783 -0
  241. package/docs-dev/sass/core/units/index.html +5822 -0
  242. package/docs-dev/sass/core/utils/index.html +8406 -0
  243. package/docs-dev/sass/helpers/color/index.html +5644 -0
  244. package/docs-dev/sass/helpers/display/index.html +5649 -0
  245. package/docs-dev/sass/helpers/index/index.html +5811 -0
  246. package/docs-dev/sass/helpers/index.html +5622 -0
  247. package/docs-dev/sass/helpers/print/index.html +5199 -0
  248. package/docs-dev/sass/helpers/typography/index.html +5672 -0
  249. package/docs-dev/sass/helpers/units/index.html +5818 -0
  250. package/docs-dev/sass/helpers/utilities/index.html +5649 -0
  251. package/docs-dev/sass/index.html +5673 -0
  252. package/js/events/index.js +17 -5
  253. package/js/index.js +1 -0
  254. package/js/settings.js +97 -0
  255. package/js/ui/breakpoints.js +19 -16
  256. package/js/ui/collapsible.js +8 -1
  257. package/js/ui/details-group.js +112 -0
  258. package/js/ui/dialog.js +103 -44
  259. package/js/ui/dialog.todo +2 -36
  260. package/js/ui/flipcard.js +37 -57
  261. package/js/ui/grid.js +15 -13
  262. package/js/ui/index.js +1 -0
  263. package/js/ui/modal-builder.js +127 -70
  264. package/js/ui/overflow-scroller.js +6 -4
  265. package/js/ui/page.js +2 -2
  266. package/js/ui/popover.js +38 -38
  267. package/js/ui/print.js +16 -25
  268. package/js/ui/programmatic-modal.js +9 -3
  269. package/js/ui/proxy-click.js +50 -36
  270. package/js/ui/resizer.js +408 -39
  271. package/js/ui/scroll-slider.js +24 -30
  272. package/js/ui/scrollpoint.js +29 -64
  273. package/js/ui/slider.js +108 -63
  274. package/js/ui/tabs.js +46 -39
  275. package/js/ui/theme-toggle.js +332 -94
  276. package/js/ui/tooltip.js +27 -32
  277. package/js/utils/class-logger.js +3 -3
  278. package/js/utils/css.js +13 -0
  279. package/js/utils/dom.js +23 -64
  280. package/js/utils/font-awesome.js +19 -0
  281. package/js/utils/index.js +2 -1
  282. package/js/utils/system.js +155 -0
  283. package/package.json +25 -11
  284. package/scss/README.md +9 -0
  285. package/scss/_breakpoint.scss +39 -5
  286. package/scss/_button.scss +7 -5
  287. package/scss/_color.scss +42 -9
  288. package/scss/_element.scss +124 -2
  289. package/scss/_layout.scss +7 -8
  290. package/scss/_units.scss +3 -2
  291. package/scss/_utils.scss +387 -16
  292. package/scss/base/_elements.scss +0 -1
  293. package/scss/base/_index.scss +1 -1
  294. package/scss/base/_keyframes.scss +15 -0
  295. package/scss/base/_layout.scss +1 -0
  296. package/scss/base/_print.scss +2 -0
  297. package/scss/base/_root.scss +2 -0
  298. package/scss/base/_typography.scss +7 -7
  299. package/scss/components/README.todos +14 -0
  300. package/scss/components/_accordion.scss +46 -32
  301. package/scss/components/_adaptive-spacing.scss +3 -3
  302. package/scss/components/_badge-stack.scss +84 -0
  303. package/scss/components/_badge.scss +35 -11
  304. package/scss/components/_basic-hero.scss +112 -0
  305. package/scss/components/_button-group.scss +90 -0
  306. package/scss/components/_button-verbose.scss +122 -40
  307. package/scss/components/_button.scss +2 -0
  308. package/scss/components/_callout.scss +129 -81
  309. package/scss/components/_captioned-figure.scss +25 -8
  310. package/scss/components/_card-grid.scss +3 -3
  311. package/scss/components/_card.scss +267 -91
  312. package/scss/components/_counter-list.scss +151 -0
  313. package/scss/components/_css-icon.scss +45 -30
  314. package/scss/components/_data-grid.scss +57 -14
  315. package/scss/components/_data-table.scss +46 -6
  316. package/scss/components/_flipcard-grid.scss +2 -2
  317. package/scss/components/_flipcard.scss +23 -17
  318. package/scss/components/_form-theme.scss +148 -137
  319. package/scss/components/_headline-label.scss +83 -0
  320. package/scss/components/_hero.scss +14 -12
  321. package/scss/components/_image-grid.scss +2 -2
  322. package/scss/components/_index.scss +60 -0
  323. package/scss/components/_list-inline.scss +80 -0
  324. package/scss/components/_list-lines.scss +46 -35
  325. package/scss/components/_list-ordered.scss +0 -1
  326. package/scss/components/_menu-stack.scss +44 -28
  327. package/scss/components/_modal.scss +75 -56
  328. package/scss/components/_nav-strip.scss +28 -19
  329. package/scss/components/_overlay-section.scss +6 -9
  330. package/scss/components/_pager.scss +11 -11
  331. package/scss/components/_panel.scss +246 -0
  332. package/scss/components/_placeholder-block.scss +6 -6
  333. package/scss/components/_popover.scss +176 -75
  334. package/scss/components/_pull-quote.scss +15 -15
  335. package/scss/components/_rail.scss +127 -0
  336. package/scss/components/_ratio-box.scss +4 -7
  337. package/scss/components/_rule.scss +6 -6
  338. package/scss/components/_scroll-slider.scss +4 -8
  339. package/scss/components/_skeleton.scss +126 -0
  340. package/scss/components/_skip-link.scss +2 -1
  341. package/scss/components/_slider.scss +53 -112
  342. package/scss/components/_spoke-spinner.scss +2 -2
  343. package/scss/components/_sticky-list.scss +206 -0
  344. package/scss/components/_tabs.scss +135 -51
  345. package/scss/components/_tag.scss +3 -3
  346. package/scss/components/_vignette.scss +3 -5
  347. package/scss/components/_wysiwyg.scss +21 -13
  348. package/scss/helpers/_display.scss +15 -18
  349. package/scss/helpers/_print.scss +12 -7
  350. package/scss/helpers/_utilities.scss +41 -31
  351. package/types/events/index.d.ts +10 -1
  352. package/types/events/index.d.ts.map +1 -1
  353. package/types/index.d.ts +1 -0
  354. package/types/settings.d.ts +70 -0
  355. package/types/settings.d.ts.map +1 -0
  356. package/types/ui/breakpoints.d.ts +14 -14
  357. package/types/ui/breakpoints.d.ts.map +1 -1
  358. package/types/ui/collapsible.d.ts.map +1 -1
  359. package/types/ui/details-group.d.ts +38 -0
  360. package/types/ui/details-group.d.ts.map +1 -0
  361. package/types/ui/dialog.d.ts +20 -14
  362. package/types/ui/dialog.d.ts.map +1 -1
  363. package/types/ui/flipcard.d.ts +16 -10
  364. package/types/ui/flipcard.d.ts.map +1 -1
  365. package/types/ui/grid.d.ts +4 -6
  366. package/types/ui/grid.d.ts.map +1 -1
  367. package/types/ui/index.d.ts +2 -1
  368. package/types/ui/modal-builder.d.ts +116 -11
  369. package/types/ui/modal-builder.d.ts.map +1 -1
  370. package/types/ui/overflow-scroller.d.ts +2 -2
  371. package/types/ui/overflow-scroller.d.ts.map +1 -1
  372. package/types/ui/popover.d.ts +6 -7
  373. package/types/ui/popover.d.ts.map +1 -1
  374. package/types/ui/print.d.ts +0 -4
  375. package/types/ui/print.d.ts.map +1 -1
  376. package/types/ui/programmatic-modal.d.ts.map +1 -1
  377. package/types/ui/proxy-click.d.ts +19 -3
  378. package/types/ui/proxy-click.d.ts.map +1 -1
  379. package/types/ui/resizer.d.ts +116 -16
  380. package/types/ui/resizer.d.ts.map +1 -1
  381. package/types/ui/scroll-slider.d.ts +5 -7
  382. package/types/ui/scroll-slider.d.ts.map +1 -1
  383. package/types/ui/scrollpoint.d.ts +3 -8
  384. package/types/ui/scrollpoint.d.ts.map +1 -1
  385. package/types/ui/slider.d.ts +33 -14
  386. package/types/ui/slider.d.ts.map +1 -1
  387. package/types/ui/tabs.d.ts +6 -8
  388. package/types/ui/tabs.d.ts.map +1 -1
  389. package/types/ui/theme-toggle.d.ts +51 -7
  390. package/types/ui/theme-toggle.d.ts.map +1 -1
  391. package/types/ui/tooltip.d.ts +3 -5
  392. package/types/ui/tooltip.d.ts.map +1 -1
  393. package/types/utils/css.d.ts +11 -0
  394. package/types/utils/css.d.ts.map +1 -0
  395. package/types/utils/dom.d.ts +12 -32
  396. package/types/utils/dom.d.ts.map +1 -1
  397. package/types/utils/font-awesome.d.ts +5 -0
  398. package/types/utils/font-awesome.d.ts.map +1 -0
  399. package/types/utils/index.d.ts +2 -1
  400. package/types/utils/system.d.ts +113 -0
  401. package/types/utils/system.d.ts.map +1 -0
@@ -1,28 +1,128 @@
1
+ /**
2
+ * Class for creating/controlling a container size with a handle/control
3
+ */
1
4
  export class Resizer {
2
5
  static defaults: {
3
6
  debug: boolean;
4
- overrideMaxWidth: boolean;
5
- fromLeft: boolean;
7
+ /**
8
+ * Amount to increase size by (ie. pointer movement * multiplier)
9
+ */
10
+ multiplier: number;
11
+ /**
12
+ * Remove max-width, max-height
13
+ */
14
+ overrideMaxDimensions: boolean;
15
+ /**
16
+ * @type {"left"|"right"|null}
17
+ * Specifies the horizontal edge from which resizing occurs.
18
+ * `null` means no horizontal resizing.
19
+ * - Default null
20
+ */
21
+ fromX: "left" | "right" | null;
22
+ /**
23
+ * @type {"top"|"bottom"|null}
24
+ * Specifies the vertical edge from which resizing occurs.
25
+ * - `null` means no vertical resizing.
26
+ * - Default null
27
+ */
28
+ fromY: "top" | "bottom" | null;
29
+ /**
30
+ * The step in pixels for keyboard resizing with arrow keys.
31
+ */
32
+ keyboardStep: number;
33
+ /**
34
+ * Debounce time in milliseconds for ending a keyboard resize.
35
+ */
36
+ keyboardDebounceTime: number;
37
+ /**
38
+ * If true, the Resizer instance will automatically bind its own DOM event listeners
39
+ * (pointerdown, keydown) to the control element. If `false`, the user is
40
+ * responsible for calling `resizerInstance.onPointerdown(event)` and
41
+ * `resizerInstance.onKeydown(event)` from their own listeners.
42
+ * Default: true
43
+ */
44
+ manageEvents: boolean;
45
+ /**
46
+ * If true, the Resizer instance will automatically manage the `aria-label`
47
+ * attribute of the control element. If `false`, the user is responsible
48
+ * for setting this attribute.
49
+ * Default: false
50
+ */
51
+ manageAriaLabel: boolean;
52
+ /**
53
+ * If true, pointer events (mouse/touch) will enable resizing.
54
+ * Default: true
55
+ */
56
+ enablePointerResizing: boolean;
57
+ /**
58
+ * If true, keyboard events (arrow keys) will enable resizing.
59
+ * Default: true
60
+ */
61
+ enableKeyboardResizing: boolean;
6
62
  };
7
63
  /**
8
- *
9
- * @param {Node} container Container to be resize
10
- * @param {Node} control Resize handle element
11
- * @param {Object} options Defualt can be changed on class
12
- * @param {Boolean} options.debug Enable non-essential debugging logs
13
- * @param {Boolean} options.overrideMaxWidth When script is activated by handle remove the elements max-width and allow the width of the resize to exceed the max (default false)
14
- * @param {Boolean} options.fromLeft The script should assume the handle is on the left side of the element
64
+ * @param {Node} container Container to be resized
65
+ * @param {HTMLElement} control Resize handle element (should be focusable like a button)
66
+ * @param {Object} config Options to configure the resizer.
67
+ * @param {Boolean} [config.debug=false] Enable non-essential debugging logs.
68
+ * @param {Boolean} [config.multiplier=1] Amount to increase size by (ie. pointer movement * multiplier).
69
+ * @param {Boolean} [config.overrideMaxDimensions=false] When script is activated by handle, remove the element's max-width/max-height and allow the resize to exceed them.
70
+ * @param {"left"|"right"|null} [config.fromX=null] Horizontal resizing direction.
71
+ * @param {"top"|"bottom"|null} [config.fromY=null] Vertical resizing direction.
72
+ * @param {number} [config.keyboardStep=10] The step in pixels for keyboard resizing.
73
+ * @param {number} [config.keyboardDebounceTime=200] Debounce time for keyboard resize end.
74
+ * @param {boolean} [config.manageEvents=true] If true, the Resizer will automatically bind its own events.
75
+ * @param {boolean} [config.manageAriaLabel=false] If true, the Resizer will manage the control's aria-label.
76
+ * @param {boolean} [config.enablePointerResizing=true] If true, pointer events will enable resizing.
77
+ * @param {boolean} [config.enableKeyboardResizing=true] If true, keyboard events will enable resizing.
15
78
  */
16
- constructor(container: Node, control: Node, options: {
17
- debug: boolean;
18
- overrideMaxWidth: boolean;
19
- fromLeft: boolean;
79
+ constructor(container: Node, control: HTMLElement, config: {
80
+ debug?: boolean;
81
+ multiplier?: boolean;
82
+ overrideMaxDimensions?: boolean;
83
+ fromX?: "left" | "right" | null;
84
+ fromY?: "top" | "bottom" | null;
85
+ keyboardStep?: number;
86
+ keyboardDebounceTime?: number;
87
+ manageEvents?: boolean;
88
+ manageAriaLabel?: boolean;
89
+ enablePointerResizing?: boolean;
90
+ enableKeyboardResizing?: boolean;
20
91
  });
21
92
  options: any;
22
93
  container: Node;
23
- control: Node;
24
- handlerMousedown: any;
94
+ control: HTMLElement;
95
+ debug: any;
96
+ resizeHorizontal: boolean;
97
+ resizeVertical: boolean;
98
+ /**
99
+ * Cleans up event listeners and internal state to prevent memory leaks.
100
+ */
25
101
  destroy(): void;
26
- onMousedown(e: any): void;
102
+ /**
103
+ * Public handler for pointerdown events. Call this method from your own event listeners
104
+ * if `manageEvents` is false. Its logic will only execute if `enablePointerResizing` is true.
105
+ * @param {PointerEvent} e The pointerdown event.
106
+ */
107
+ onPointerdown(e: PointerEvent): void;
108
+ /**
109
+ * Public handler for keydown events. Call this method from your own event listeners
110
+ * if `manageEvents` is false. Its logic will only execute if `enableKeyboardResizing` is true.
111
+ * @param {KeyboardEvent} e The keydown event.
112
+ */
113
+ onKeydown(e: KeyboardEvent): void;
114
+ /**
115
+ * Generates an accessible label for the resize control based on its configuration.
116
+ * This is a convenience function that can be used by the consumer if `manageAriaLabel` is false.
117
+ * @returns {string} The suggested aria-label for the control.
118
+ */
119
+ getAriaLabel(): string;
120
+ /**
121
+ * Dispatches a custom event on the container element.
122
+ * @param {string} type The event type (e.g., "resizer:start", "resizer:update", "resizer:end").
123
+ * @param {Object} [data={}] Optional data to attach to the event's detail property.
124
+ */
125
+ dispatchEvent(type: string, data?: any): void;
126
+ #private;
27
127
  }
28
128
  //# sourceMappingURL=resizer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resizer.d.ts","sourceRoot":"","sources":["../../js/ui/resizer.js"],"names":[],"mappings":"AAeA;IACE;;;;MAIE;IACF;;;;;;;;OAQG;IACH,uBAPW,IAAI,WACJ,IAAI;QAEa,KAAK;QACL,gBAAgB;QAChB,QAAQ;OAWnC;IALC,aAA2D;IAC3D,gBAA0B;IAC1B,cAAsB;IACtB,sBAAmD;IAGrD,gBAEC;IACD,0BAkBC;CACF"}
1
+ {"version":3,"file":"resizer.d.ts","sourceRoot":"","sources":["../../js/ui/resizer.js"],"names":[],"mappings":"AAUA;;GAEG;AACH;IACE;;QAEE;;WAEG;;QAEH;;WAEG;;QAEH;;;;;WAKG;eAJO,MAAM,GAAC,OAAO,GAAC,IAAI;QAM7B;;;;;WAKG;eAJO,KAAK,GAAC,QAAQ,GAAC,IAAI;QAM7B;;WAEG;;QAEH;;WAEG;;QAEH;;;;;;WAMG;;QAEH;;;;;WAKG;;QAEH;;;WAGG;;QAEH;;;WAGG;;MAEH;IAaF;;;;;;;;;;;;;;;OAeG;IACH,uBAfW,IAAI,WACJ,WAAW;QAEM,KAAK;QACL,UAAU;QACV,qBAAqB;QACT,KAAK,GAAlC,MAAM,GAAC,OAAO,GAAC,IAAI;QACU,KAAK,GAAlC,KAAK,GAAC,QAAQ,GAAC,IAAI;QACH,YAAY,GAA5B,MAAM;QACU,oBAAoB,GAApC,MAAM;QACW,YAAY,GAA7B,OAAO;QACU,eAAe,GAAhC,OAAO;QACU,qBAAqB,GAAtC,OAAO;QACU,sBAAsB,GAAvC,OAAO;OAmDjB;IA3CC,aAAsB;IACtB,gBAA0B;IAC1B,qBAAsB;IACtB,WAA0B;IAmB1B,0BAA8C;IAC9C,wBAA4C;IAqC9C;;OAEG;IACH,gBAsBC;IAwGD;;;;OAIG;IACH,iBAFW,YAAY,QAyCtB;IAED;;;;OAIG;IACH,aAFW,aAAa,QA4DvB;IAED;;;;OAIG;IACH,gBAFa,MAAM,CAYlB;IAED;;;;OAIG;IACH,oBAHW,MAAM,oBAKhB;;CACF"}
@@ -3,11 +3,9 @@
3
3
  * - This will only initialize elements once, it is safe to call on page changes
4
4
  */
5
5
  export function init(): void;
6
- export function setup(): void;
7
- export namespace attrs {
8
- let init: string;
9
- let slider: string;
10
- let track: string;
11
- let controls: string;
12
- }
6
+ /**
7
+ * Scroll Slider Component Initializer
8
+ */
9
+ export const initializer: ComponentInitializer;
10
+ import { ComponentInitializer } from "../utils/system.js";
13
11
  //# sourceMappingURL=scroll-slider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scroll-slider.d.ts","sourceRoot":"","sources":["../../js/ui/scroll-slider.js"],"names":[],"mappings":"AA+BA;;;GAGG;AACH,6BAGC;AAED,8BAGC"}
1
+ {"version":3,"file":"scroll-slider.d.ts","sourceRoot":"","sources":["../../js/ui/scroll-slider.js"],"names":[],"mappings":"AAuBA;;;GAGG;AACH,6BASC;AA5BD;;GAEG;AACH,+CAGG;qCAVkC,oBAAoB"}
@@ -4,15 +4,9 @@
4
4
  */
5
5
  export function init(): void;
6
6
  /**
7
- * Setup all points and groups
7
+ * Scrollpoint Component Initializer
8
8
  */
9
- export function setup(): void;
10
- export namespace attrs {
11
- let init: string;
12
- let point: string;
13
- let group: string;
14
- let groupAnchors: string;
15
- }
9
+ export const initializer: ComponentInitializer;
16
10
  /**
17
11
  * Single scrollpoint
18
12
  * - Note "forward" and "reverse" refer to scroll directions
@@ -130,4 +124,5 @@ export class Scrollpoint {
130
124
  updateStateAttribute(isActive: any, isForward: any): void;
131
125
  destroy(): void;
132
126
  }
127
+ import { ComponentInitializer } from "../utils/system.js";
133
128
  //# sourceMappingURL=scrollpoint.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrollpoint.d.ts","sourceRoot":"","sources":["../../js/ui/scrollpoint.js"],"names":[],"mappings":"AAyCA;;;GAGG;AACH,6BAGC;AAED;;GAEG;AACH,8BAqBC;;;;;;;AAID;;;;;;;GAOG;AACH;IACE;QACE;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;QAEH;;WAEG;;QAEH;;WAEG;;MAIH;IACF;;;;OAIG;IACH,qBAHW,IAAI,eAkCd;IArBC,aAAsB;IACtB,+BAAoB;IACpB,kBAAwB;IACxB,kBAAqB;IACrB,cAAsB;IACtB,sBAGC;IACD;;;;;;;MAOC;IAMH,kCAEC;IACD;;;;MAMC;IACD;;;OAGG;IACH,8BAkBC;IACD,sBAUC;IACD,kBAGC;IACD,8CAcC;IACD,qBAEC;IACD,mDAmBC;IACD,0DAMC;IACD,gBASC;CACF"}
1
+ {"version":3,"file":"scrollpoint.d.ts","sourceRoot":"","sources":["../../js/ui/scrollpoint.js"],"names":[],"mappings":"AA2BA;;;GAGG;AACH,6BAUC;AAtBD;;GAEG;AACH,+CAGG;AAkBH;;;;;;;GAOG;AACH;IACE;QACE;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;QAEH;;WAEG;;QAEH;;WAEG;;MAIH;IACF;;;;OAIG;IACH,qBAHW,IAAI,eAkCd;IArBC,aAAsB;IACtB,+BAAoB;IACpB,kBAAwB;IACxB,kBAAqB;IACrB,cAAsB;IACtB,sBAGC;IACD;;;;;;;MAOC;IAMH,kCAEC;IACD;;;;MAMC;IACD;;;OAGG;IACH,8BAkBC;IACD,sBAUC;IACD,kBAGC;IACD,8CAcC;IACD,qBAEC;IACD,mDAmBC;IACD,0DAMC;IACD,gBASC;CACF;qCAnQoC,oBAAoB"}
@@ -1,15 +1,25 @@
1
+ /**
2
+ * Initialize all sliders based on data attribute selectors
3
+ */
1
4
  export function init(): void;
2
- export function setup(): void;
3
- export function setupSlider(container: any): void;
4
- export namespace attrs {
5
- let init: string;
6
- let slider: string;
7
- let track: string;
8
- let trackContainer: string;
9
- let controls: string;
10
- }
5
+ /**
6
+ * Setup single slider instance from querying via data attribute selectors
7
+ * @param {Node} container The slide container to query children from
8
+ * @param {Object} options Options for slider class
9
+ */
10
+ export function setupSlider(container: Node, options: any): void;
11
+ /**
12
+ * Slider Component Initializer
13
+ */
14
+ export const initializer: ComponentInitializer;
15
+ /**
16
+ * Class that controls slider
17
+ */
11
18
  export class Slider {
12
19
  static instances: any[];
20
+ /**
21
+ * Default options for slider
22
+ */
13
23
  static defaults: {
14
24
  classAccessiblyHidden: string;
15
25
  namespace: string;
@@ -20,11 +30,14 @@ export class Slider {
20
30
  transitionDurationExit: number;
21
31
  transitionTimingFunction: string;
22
32
  buttonClasses: string[];
23
- iconClassesPrevious: string[];
24
- iconClassesNext: string[];
33
+ iconClassPrevious: any;
34
+ iconClassNext: any;
35
+ swipeEnabled: boolean;
36
+ swipeOptions: {
37
+ preventScroll: boolean;
38
+ };
25
39
  };
26
- constructor(elements: any, config: any, debug?: boolean);
27
- debug: boolean;
40
+ constructor(elements: any, config: any);
28
41
  options: any;
29
42
  slide: {
30
43
  element: any;
@@ -32,6 +45,9 @@ export class Slider {
32
45
  number: number;
33
46
  };
34
47
  index: any;
48
+ swipeInstance: any;
49
+ swipeListener: (event: any) => void;
50
+ swipeImageListener: (event: any) => void;
35
51
  transitioning: boolean;
36
52
  slides: {
37
53
  element: any;
@@ -102,6 +118,8 @@ export class Slider {
102
118
  }): any;
103
119
  goto(index: any, event: any, triggerType: any): void;
104
120
  setup(): void;
121
+ setupSwipe(): void;
122
+ onSwipe(event: any): void;
105
123
  trackContainerStyles(): string;
106
124
  transitionCss(property: any): string;
107
125
  trackCss(): string;
@@ -122,7 +140,8 @@ export class Slider {
122
140
  };
123
141
  createNavButton(slide: any, index: any): HTMLButtonElement;
124
142
  getControlContent(action: any): string;
125
- getNavContent(number: any): string;
143
+ getNavContent(slide: any): string;
126
144
  emit(name: any, args: any): void;
127
145
  }
146
+ import { ComponentInitializer } from "../utils/system.js";
128
147
  //# sourceMappingURL=slider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../js/ui/slider.js"],"names":[],"mappings":"AA8EA,6BAGC;AAED,8BAGC;AAED,kDAqBC;;;;;;;;AAED;IACE,wBAAsB;IACtB;;;;;;;;;;;;MAaC;IAED,yDAiCC;IA/BC,eAA+B;IAC/B,aAAsB;IACtB;;;;MAAiB;IACjB,WAAiB;IACjB,uBAA0B;IAQ1B;;;;QAME;IACF,cAIC;IAED;;;cACuF;IAMzF;;OAEG;IACH,qBAKC;IACD;;OAEG;IACH,2BAOC;IACD;;OAEG;IACH,uBAMC;IACD;;;;;;OAMG;IACH,8BAJW,MAAM,YACN,MAAM,kCAqChB;IACD;;OAEG;IACH,wCASC;IACD;;;OAGG;IACH,oDASC;IACD;;OAEG;IACH,yCAOC;IACD;;OAEG;IACH;;;;;;sBAoDC;IACD;;OAEG;IACH;;;sBAUC;IACD;;OAEG;IACH;;;YAOC;IACD,qDA0CC;IACD,cAYC;IACD,+BAKC;IACD,qCAOC;IACD,mBAQC;IACD,mBASC;IACD,yCASC;IACD,oDASC;IACD;;;;;;MAwBC;IACD;;;;MAmBC;IACD,2DAQC;IAED,uCAMC;IACD,mCAEC;IACD,iCAIC;CACF"}
1
+ {"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../js/ui/slider.js"],"names":[],"mappings":"AAyEA;;GAEG;AACH,6BASC;AAED;;;;GAIG;AACH,uCAHW,IAAI,sBAkBd;AAlED;;GAEG;AACH,+CAGG;AA8DH;;GAEG;AACH;IACE,wBAAsB;IACtB;;OAEG;IACH;;;;;;;;;;;;;;;;MAgBC;IACD,wCAmCC;IAjCC,aAAsB;IACtB;;;;MAAiB;IACjB,WAAiB;IACjB,mBAAyB;IACzB,oCAAyB;IACzB,yCAA8B;IAC9B,uBAA0B;IAQ1B;;;;QAME;IACF,cAIC;IAED;;;cACuF;IAMzF;;OAEG;IACH,qBAKC;IACD;;OAEG;IACH,2BAOC;IACD;;OAEG;IACH,uBAMC;IACD;;;;;;OAMG;IACH,8BAJW,MAAM,YACN,MAAM,kCAqChB;IACD;;OAEG;IACH,wCASC;IACD;;;OAGG;IACH,oDASC;IACD;;OAEG;IACH,yCAOC;IACD;;OAEG;IACH;;;;;;sBAoDC;IACD;;OAEG;IACH;;;sBAUC;IACD;;OAEG;IACH;;;YAOC;IACD,qDA0CC;IACD,cAmBC;IACD,mBAsBC;IACD,0BAMC;IACD,+BAKC;IACD,qCAOC;IACD,mBAQC;IACD,mBASC;IACD,yCASC;IACD,oDAUC;IACD;;;;;;MAwBC;IACD;;;;MAmBC;IACD,2DAQC;IACD,uCAMC;IACD,kCAEC;IACD,iCAIC;CACF;qCAjiBoC,oBAAoB"}
@@ -1,14 +1,7 @@
1
1
  /**
2
2
  * Init all instances currently in document
3
- * @param {Object} options Options to serve as defaults
4
3
  */
5
- export function init(options?: any): void;
6
- /**
7
- * Init all tabs within a certain context
8
- * @param {Node} context Element to init within
9
- * @param {Object} options Options to serve as defaults
10
- */
11
- export function initWithin(context: Node, options?: any): void;
4
+ export function init(): void;
12
5
  /**
13
6
  *
14
7
  * @param {Node} element Tablist Element
@@ -21,4 +14,9 @@ export function setup(element: Node, options?: Node): any;
21
14
  * @type {Array}
22
15
  */
23
16
  export const instances: any[];
17
+ /**
18
+ * Tabs Component Initializer
19
+ */
20
+ export const initializer: ComponentInitializer;
21
+ import { ComponentInitializer } from "../utils/system.js";
24
22
  //# sourceMappingURL=tabs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../js/ui/tabs.js"],"names":[],"mappings":"AAeA;;;GAGG;AACH,0CAcC;AAED;;;;GAIG;AACH,oCAHW,IAAI,uBAUd;AAED;;;;;GAKG;AACH,+BAJW,IAAI,YACJ,IAAI,OAuCd;AAlFD;;;GAGG;AACH,8BAA4B"}
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../js/ui/tabs.js"],"names":[],"mappings":"AA2BA;;GAEG;AACH,6BAoBC;AAED;;;;;GAKG;AACH,+BAJW,IAAI,YACJ,IAAI,OA2Bd;AArED;;;GAGG;AACH,8BAA4B;AAE5B;;GAEG;AACH,+CAGG;qCAdkC,oBAAoB"}
@@ -1,14 +1,58 @@
1
+ /**
2
+ * @param {Object} options Change options used as default for dialogs, can then be overridden by data attribute settings on element
3
+ */
4
+ export function setDefaults(options: any): void;
1
5
  /**
2
6
  * Initialize everything in document
3
7
  * - This will only initialize elements once, it is safe to call on page changes
4
8
  */
5
9
  export function init(): void;
6
- export function setup(context?: Document): void;
7
- export namespace options {
8
- let darkTheme: string;
9
- let lightTheme: string;
10
- let defaultTheme: string;
11
- let darkIcon: string;
12
- let lightIcon: string;
10
+ /**
11
+ * Sets up a single toggle
12
+ * @param {HTMLElement} toggle A toggle to be setup
13
+ */
14
+ export function setupToggle(toggle: HTMLElement, userOptions: any): {
15
+ destroy: () => void;
16
+ toggle: HTMLElement;
17
+ options: any;
18
+ toggleState: (event: any) => void;
19
+ setState(themeKey: any): void;
20
+ };
21
+ /**
22
+ * Theme Toggle Component Initializer
23
+ */
24
+ export const initializer: ComponentInitializer;
25
+ export namespace defaults {
26
+ namespace themes {
27
+ namespace light {
28
+ let label: string;
29
+ let value: string;
30
+ let iconClass: string;
31
+ let targetClass: string;
32
+ let mediaQuery: string;
33
+ }
34
+ namespace dark {
35
+ let label_1: string;
36
+ export { label_1 as label };
37
+ let iconClass_1: string;
38
+ export { iconClass_1 as iconClass };
39
+ let targetClass_1: string;
40
+ export { targetClass_1 as targetClass };
41
+ let mediaQuery_1: string;
42
+ export { mediaQuery_1 as mediaQuery };
43
+ }
44
+ }
45
+ let target: string;
46
+ let group: any;
47
+ /**
48
+ * Optional callback to do something when the state changes
49
+ */
50
+ function onChange(_ctx: any): void;
51
+ let initialState: string;
52
+ let checkMediaQuery: boolean;
53
+ let savePreference: boolean;
54
+ let storagePrefix: string;
55
+ let debug: boolean;
13
56
  }
57
+ import { ComponentInitializer } from "../utils/system.js";
14
58
  //# sourceMappingURL=theme-toggle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"theme-toggle.d.ts","sourceRoot":"","sources":["../../js/ui/theme-toggle.js"],"names":[],"mappings":"AA6BA;;;GAGG;AACH,6BAOC;AAED,gDAeC"}
1
+ {"version":3,"file":"theme-toggle.d.ts","sourceRoot":"","sources":["../../js/ui/theme-toggle.js"],"names":[],"mappings":"AAmGA;;GAEG;AACH,gDAEC;AAED;;;GAGG;AACH,6BASC;AAED;;;GAGG;AACH,oCAFW,WAAW;;;;;;EA+FrB;AAhND;;GAEG;AACH,+CAGG;;;;;;;;;;;;;;;;;;;;;;;IAmDD;;OAEG;IACH,mCAAiB;;;;;;;qCAlEkB,oBAAoB"}
@@ -3,12 +3,9 @@
3
3
  */
4
4
  export function init(): void;
5
5
  /**
6
- * Query all popovers on current page and set them up
7
- * - Use this manually if needed
8
- * - Won't setup a popover more than once
6
+ * Tooltip Component Initializer
9
7
  */
10
- export function setup(): void;
11
- export function setupTrigger(trigger: any): Tooltip;
8
+ export const initializer: ComponentInitializer;
12
9
  /**
13
10
  * Tooltip
14
11
  * - Provides basic tooltip functionality
@@ -95,4 +92,5 @@ export class Tooltip {
95
92
  show(event: any): void;
96
93
  hide(event: any): void;
97
94
  }
95
+ import { ComponentInitializer } from "../utils/system.js";
98
96
  //# sourceMappingURL=tooltip.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../js/ui/tooltip.js"],"names":[],"mappings":"AAmBA;;GAEG;AACH,6BAGC;AAED;;;;GAIG;AACH,8BAGC;AAED,oDAOC;AAED;;;;GAIG;AACH;IACE;;OAEG;IACH;QACE;;;;WAIG;;QAEH;;;WAGG;;;;;QAKH;;;WAGG;qBADO,SAAO,IAAI;QAGrB;;WAEG;;QAEH;;;WAGG;;QAEH;;;WAGG;oBADO,aAAc;QAGxB;;;WAGG;oBADO,aAAc;QAGxB;;;WAGG;;QAEH;;WAEG;;QAUH;;;WAGG;;MAIH;IACF,kCAEE;IACF,mEAaC;IAPC,aAA+D;IAC/D,qBAAyF;IACzF,cAA+B;IAC/B,aAAkB;IAClB,gBAAmB;IAIrB,cAIC;IACD,2BAKC;IACD,gBAGC;IACD,uBAcC;IACD,gCASC;IACD,6BAkBC;IACD,uBAiCC;IACD,wBAiBC;IACD,wCAmBC;IACD,sDAEC;IACD,+BAEC;IADC,0BAA4E;IAE9E,gCAKC;IACD,uBAEC;IACD,uBAEC;CACF"}
1
+ {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../js/ui/tooltip.js"],"names":[],"mappings":"AAuBA;;GAEG;AACH,6BAaC;AA5BD;;GAEG;AACH,+CAGG;AAwBH;;;;GAIG;AACH;IACE;;OAEG;IACH;QACE;;;;WAIG;;QAEH;;;WAGG;;;;;QAKH;;;WAGG;qBADO,SAAO,IAAI;QAGrB;;WAEG;;QAEH;;;WAGG;;QAEH;;;WAGG;oBADO,aAAc;QAGxB;;;WAGG;oBADO,aAAc;QAGxB;;;WAGG;;QAEH;;WAEG;;QAUH;;;WAGG;;MAIH;IACF,kCAEE;IACF,mEAaC;IAPC,aAA+D;IAC/D,qBAAyF;IACzF,cAA+B;IAC/B,aAAkB;IAClB,gBAAmB;IAIrB,cAIC;IACD,2BAKC;IACD,gBAGC;IACD,uBAcC;IACD,gCASC;IACD,6BAkBC;IACD,uBAiCC;IACD,wBAiBC;IACD,wCAmBC;IACD,sDAEC;IACD,+BAEC;IADC,0BAA4E;IAE9E,gCAKC;IACD,uBAEC;IACD,uBAEC;CACF;qCApRoC,oBAAoB"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @module utils/css
3
+ */
4
+ /**
5
+ * Generates a CSS custom property name with a given prefix.
6
+ * @param {string} prefix The prefix to apply to the custom property name.
7
+ * @param {string} propertyName The base name of the custom property.
8
+ * @returns {string} The fully formed CSS custom property name (e.g., "--prefix-propertyName").
9
+ */
10
+ export function getCustomProperty(prefix: string, propertyName: string): string;
11
+ //# sourceMappingURL=css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css.d.ts","sourceRoot":"","sources":["../../js/utils/css.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;GAKG;AACH,0CAJW,MAAM,gBACN,MAAM,GACJ,MAAM,CAIlB"}
@@ -1,22 +1,9 @@
1
1
  /**
2
- * Get an elements JSON dataset value
3
- * @param {Node} element
4
- * @param {String} key key in dataset object for element
5
- * @returns {Object} Empty object or JSON object from dataset
2
+ * Converts a data attribute name to its corresponding dataset property name.
3
+ * @param {string} dataAttribute - The data attribute name (e.g., "data-ulu-dialog").
4
+ * @returns {string} - The dataset property name (e.g., "uluDialog").
6
5
  */
7
- export function getDatasetJson(element: Node, key: string): any;
8
- /**
9
- * Get an elements JSON dataset value that could potentially just be a single string
10
- * - If JSON it will return the object else it will return the value directly
11
- * @param {Node} element
12
- * @param {String} key key in dataset object for element
13
- * @returns {Object|String} JSON object or current dataset value (string or empty string if no value)
14
- */
15
- export function getDatasetOptionalJson(element: Node, key: string): any | string;
16
- /**
17
- * Check if a pointer event x/y was outside an elements bounding box
18
- */
19
- export function wasClickOutside(element: any, event: any): boolean;
6
+ export function dataAttributeToDatasetKey(attribute: any): string;
20
7
  /**
21
8
  * Sets up the positional classes that would come from the equal
22
9
  * height module. Needs to be rerun by user when layout changes
@@ -29,20 +16,13 @@ export function wasClickOutside(element: any, event: any): boolean;
29
16
  */
30
17
  export function setPositionClasses(parent: Node, classes?: any): void;
31
18
  /**
32
- * Resolve a target to Element
33
- * @param {String|Node} target The selector or node/element
34
- * @param {Object} context [document] The context to query possible selectors from
35
- */
36
- export function getElement(target: string | Node, context?: any): any;
37
- /**
38
- * Sets a CSS custom property equal to the scrollbar width
39
- * @param {Node} element The element that is the child of a scrollabel container
40
- * @param {Node} container The container that can be scrolled
41
- * @param {Stirng} propName Custom property to set
42
- */
43
- export function addScrollbarProperty(element?: Node, container?: Node, propName?: Stirng): void;
44
- /**
45
- * @module utils/dom
19
+ * Resolves a class input (string or array) into a consistent array of class names.
20
+ * @param {string|string[]} input - The class input, which can be a string, an array of strings, or any other value.
21
+ * @returns {string[]} An array of class names. Returns an empty array for invalid or falsy input.
22
+ * @example
23
+ * resolveClassArray("fas fa-check my-class"); // Returns ["fas", "fa-check", "my-class"]
24
+ * resolveClassArray(["another-class", "yet-another-class"]); // Returns ["another-class", "yet-another-class"]
25
+ * resolveClassArray("single-class"); // Returns ["single-class"]
46
26
  */
47
- export const regexJsonString: RegExp;
27
+ export function resolveClasses(classes: any): string[];
48
28
  //# sourceMappingURL=dom.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../js/utils/dom.js"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,wCAJW,IAAI,oBAYd;AAED;;;;;;GAMG;AACH,gDAJW,IAAI,gBAEF,YAAa,CASzB;AAED;;GAEG;AACH,mEAMC;AAGD;;;;;;;;;GASG;AACH,2CAHa,IAAI,uBAoChB;AAED;;;;GAIG;AACH,mCAHW,SAAO,IAAI,sBAYrB;AAED;;;;;GAKG;AACH,+CAJW,IAAI,cACJ,IAAI,2BAMd;AAzHD;;GAEG;AAGH,qCAAqD"}
1
+ {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../js/utils/dom.js"],"names":[],"mappings":"AAMA;;;;GAIG;AACH,2DAFa,MAAM,CAIlB;AAED;;;;;;;;;GASG;AACH,2CAHa,IAAI,uBAoChB;AAED;;;;;;;;GAQG;AACH,8CANa,MAAM,EAAE,CAiBpB"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Sets icon settings to Font Awesome icons
3
+ */
4
+ export function configureIcons(): void;
5
+ //# sourceMappingURL=font-awesome.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"font-awesome.d.ts","sourceRoot":"","sources":["../../js/utils/font-awesome.js"],"names":[],"mappings":"AAOA;;GAEG;AACH,uCAQC"}
@@ -5,5 +5,6 @@ export * as id from "./id.js";
5
5
  export * as index from "./index.js";
6
6
  export * as pauseYoutubeVideo from "./pause-youtube-video.js";
7
7
  export * as fileSave from "./file-save.js";
8
- declare namespace ___Users_joescherben_Personal_Projects_ULU_frontend_js_utils_index_ { }
8
+ export * as fontAwesome from "./font-awesome.js";
9
+ declare namespace ___Users_joe_Projects_Personal_Github_frontend_js_utils_index_ { }
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,113 @@
1
+ /**
2
+ * Class serves as a utility for UI modules, handling the selection of elements and the initialization of corresponding component instances, ensuring consistent setup within the module
3
+ */
4
+ export class ComponentInitializer {
5
+ static defaults: {
6
+ type: any;
7
+ baseAttribute: any;
8
+ };
9
+ static requiredOptions: string[];
10
+ static hasRequiredOptions: Function;
11
+ /**
12
+ * Create a new instance of ComponentInitializer
13
+ * @param {Object} options Options for configuring the component initializer.
14
+ * @param {String} options.type Type of component (used for logs).
15
+ * @param {String} options.baseAttribute Prefix and base attribute name (used for base attribute and further element attribute names).
16
+ */
17
+ constructor(options: {
18
+ type: string;
19
+ baseAttribute: string;
20
+ });
21
+ options: any;
22
+ logTitle: string;
23
+ /**
24
+ * Initializes the component based on the provided configuration.
25
+ * @param {Object} config The initialization configuration.
26
+ * @param {Function} config.setup The setup function to call for each element.
27
+ * @param {String} config.key [null] The optional key to use with attribute selector.
28
+ * @param {Boolean} config.withData [null] Whether to retrieve element data.
29
+ * @param {Array} config.events [null] Ulu events that should call setup when dispatched (ie. pageModified, pageResized)
30
+ * @param {Boolean} config.onPageResized [null] Whether to bind event listener for page resize end
31
+ * @param {HTMLElement} config.context [document] The context to query within.
32
+ */
33
+ init(config: {
34
+ setup: Function;
35
+ key: string;
36
+ withData: boolean;
37
+ events: any[];
38
+ onPageResized: boolean;
39
+ context: HTMLElement;
40
+ }): void;
41
+ /**
42
+ * Processes the elements based on the provided configuration.
43
+ * @param {object} config The initialization configuration.
44
+ * @param {function} config.setup The setup function to call for each element.
45
+ * @param {string} config.key The optional key to use with attribute selector.
46
+ * @param {boolean} config.withData [false] Whether to retrieve element data.
47
+ * @param {boolean} config.onPageModified [true] Whether to bind event listener for page modifications.
48
+ * @param {HTMLElement} config.context [document] The context to query within.
49
+ */
50
+ setupElements(config: {
51
+ setup: Function;
52
+ key: string;
53
+ withData: boolean;
54
+ onPageModified: boolean;
55
+ context: HTMLElement;
56
+ }): void;
57
+ /**
58
+ * Get an attribute name
59
+ * @param {String} key Optional key, if no key will return baseAttribute if key will return key added to base
60
+ * @returns {String} String like data-ulu-dialog or data-ulu-dialog-element
61
+ */
62
+ getAttribute(key: string): string;
63
+ /**
64
+ * Create an attribute selector
65
+ * @param {String} key Optional key (see getAttribute)
66
+ */
67
+ attributeSelector(key: string): string;
68
+ /**
69
+ * Create an attribute selector for initial
70
+ * @return {String}
71
+ */
72
+ attributeSelectorInitial(key: any): string;
73
+ /**
74
+ * Queries all main elements of a component that have not been initialized and extracts their data attributes.
75
+ * @param {HTMLElement} context The context to query within.
76
+ * @param {Boolean} withData Include dataset from element (as optional JSON)
77
+ * @param {Node} context Element to query elements from
78
+ * @returns {Array<{element: HTMLElement, data: object, initialize: Function}>} An array of objects containing the elements, their data, and convenience function initialize() which when called will set the init attribute on the element
79
+ */
80
+ queryAllInitial(key: any, withData: boolean, context?: HTMLElement): Array<{
81
+ element: HTMLElement;
82
+ data: object;
83
+ initialize: Function;
84
+ }>;
85
+ /**
86
+ * Sets the init attribute on an element, marking it as initialized.
87
+ * @param {HTMLElement} element The element to initialize.
88
+ */
89
+ initializeElement(element: HTMLElement): void;
90
+ /**
91
+ * Get an elements dataset value as JSON or other value
92
+ * @return {*} The value of the dataset, if JSON will return object else will return string value or undefined
93
+ */
94
+ getData(element: any, key: any): any;
95
+ /**
96
+ * Will output namespaced console logs for the given initializer
97
+ */
98
+ log(...msgs: any[]): void;
99
+ /**
100
+ * Will output namespaced console warnings for the given initializer
101
+ */
102
+ warn(...msgs: any[]): void;
103
+ /**
104
+ * Will output namespaced console error for the given initializer
105
+ */
106
+ logError(...msgs: any[]): void;
107
+ }
108
+ /**
109
+ * Class serves as a base for representing individual occurrences of a UI component, providing a consistent structure for each
110
+ */
111
+ export class ComponentInstance {
112
+ }
113
+ //# sourceMappingURL=system.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../js/utils/system.js"],"names":[],"mappings":"AAUA;;GAEG;AACH;IACE;;;MAGE;IACF,iCAGE;IACF,oCAEE;IAEF;;;;;OAKG;IACH;QAH2B,IAAI;QACJ,aAAa;OAUvC;IAFC,aAAwE;IACxE,iBAAgD;IAElD;;;;;;;;;OASG;IACH;QAP4B,KAAK;QACP,GAAG;QACF,QAAQ;QACV,MAAM;QACJ,aAAa;QACT,OAAO,EAA3B,WAAW;aAYrB;IACD;;;;;;;;OAQG;IACH;QAN4B,KAAK;QACP,GAAG,EAAlB,MAAM;QACU,QAAQ,EAAxB,OAAO;QACS,cAAc,EAA9B,OAAO;QACa,OAAO,EAA3B,WAAW;aAMrB;IACD;;;;OAIG;IACH,kCAGC;IACD;;;OAGG;IACH,uCAEC;IACD;;;OAGG;IACH,2CAEC;IACD;;;;;;OAMG;IACH,uDALW,WAAW,GAGT,MAAM;QAAC,OAAO,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,WAAU;KAAC,CAAC,CAS7E;IACD;;;OAGG;IACH,2BAFW,WAAW,QAIrB;IACD;;;OAGG;IACH,qCAGC;IACD;;OAEG;IACH,0BAEC;IACD;;OAEG;IACH,2BAEC;IACD;;OAEG;IACH,+BAEC;CACF;AAED;;GAEG;AACH;CAEC"}