@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
@@ -69,6 +69,8 @@ $config: (
69
69
  "ul-list-style-type": disc,
70
70
  "ul-list-style-type-2": circle,
71
71
  "ul-list-style-type-3": square,
72
+ "cap-color" : "accent",
73
+ "cap-size" : 5px
72
74
  ) !default;
73
75
 
74
76
  /// Rule style map, redefine defaults or add to
@@ -114,18 +116,35 @@ $rule-margins: (
114
116
 
115
117
  /// Sets rule margins
116
118
  /// @param {Map} $changes Map of changes
119
+ /// @param {String} $merge-mode Merge mode see utils.map-merge() [null|"deep"|"overwrite"]
117
120
 
118
- @mixin set-rule-margins($changes) {
119
- $rule-margins: map.merge($rule-margins, $changes) !global;
121
+ @mixin set-rule-margins($changes, $merge-mode: null) {
122
+ $rule-margins: utils.map-merge($rule-margins, $changes, $merge-mode) !global;
120
123
  }
121
124
 
122
125
  /// Get a rule style
123
126
  /// @param {Map} $changes Map of changes
127
+ /// @return {CssValue} Rule style (css border value)
124
128
 
125
129
  @function get-rule-style($name: "default") {
126
130
  @return utils.require-map-get($rule-styles, $name, "element [rule style]");
127
131
  }
128
132
 
133
+ /// Get an optional rule style (which is a border)
134
+ /// - If the value is a string we return the rule style, else we return the value
135
+ /// - Used for things where configuration for say a border can be a user defined border or a string (they want an existing rule-style)
136
+ /// - Except when passing "none"/none this will return as-is (since it's a border property)
137
+ /// @param {*} $value The value to check
138
+ /// @return {*} Rule style if string, else value
139
+
140
+ @function get-optional-rule-style($value) {
141
+ @if (meta.type-of($value) == "string") {
142
+ @return get-rule-style($value);
143
+ } @else {
144
+ @return $value;
145
+ }
146
+ }
147
+
129
148
  /// Sets rule margin
130
149
  /// @param {Map} $changes Map of changes
131
150
 
@@ -290,4 +309,107 @@ $rule-margins: (
290
309
  white-space: normal;
291
310
  width: auto;
292
311
  }
312
+ }
313
+
314
+
315
+ /// Layout utility to add a colored bar (cap) to an element's edge, positioned over the element and its border
316
+ /// - You need to set position (relative, fixed) on parent
317
+ /// @param {String} $side The side to place the cap (top, bottom, left, right)
318
+ /// @param {Map} $options Options for the appearance of the cap
319
+ /// @param {Color} $options.color [$config.cap-color] The color for the end cap
320
+ /// @param {Number} $options.size [$config.cap-size] The width/height of the cap
321
+ /// @param {Number} $options.offset [0] A positive number of the amount the cap should extend outside the box (to account for border-width)
322
+ /// @param {Number} $options.border-radius [null] An optional border-radius to apply to the outward-facing edges of the cap (used to match parent)
323
+ /// @param {Boolean} $before [true] Whether or not to use the ::before element (if not uses :after)
324
+
325
+ @mixin cap(
326
+ $side,
327
+ $options: (),
328
+ $before: true,
329
+ ) {
330
+ $defaults: (
331
+ "color" : get("cap-color"),
332
+ "size" : get("cap-size"),
333
+ "offset" : 0,
334
+ "color-hover" : null,
335
+ "border-radius" : null,
336
+ "padding-adjust" : null,
337
+ );
338
+ $config: map.merge($defaults, $options);
339
+ $element: if($before, "::before", "::after");
340
+
341
+ &#{ $element } {
342
+ content: "";
343
+ position: absolute;
344
+ display: block;
345
+ }
346
+
347
+ @include cap-appearance($side, $config, $before);
348
+ }
349
+
350
+
351
+
352
+ /// Provides the appearance styles for a given cap
353
+ /// - If an option is not provided it won't be output
354
+ /// - This is used to update the caps styling (states, modifiers, etc)
355
+ /// @param {String} $side The side to place the cap (top, bottom, left, right)
356
+ /// @param {Map} $options Options for the appearance of the cap (see options from element.cap)
357
+ /// @param {Boolean} $before Whether or not to use the ::before element (if not uses :after)
358
+
359
+ @mixin cap-appearance(
360
+ $side,
361
+ $options: (),
362
+ $before: true
363
+ ) {
364
+ $element: if($before, "::before", "::after");
365
+ $size: map.get($options, "size");
366
+ $offset: map.get($options, "offset");
367
+ $border-radius: map.get($options, "border-radius");
368
+ $padding-adjust: map.get($options, "padding-adjust");
369
+
370
+ $end: $side == "top" or $side == "bottom";
371
+ $position: if($offset, 0 - $offset, null);
372
+
373
+ @if ($padding-adjust and $size) {
374
+ padding-#{ $side }: calc($padding-adjust + $size);
375
+ }
376
+
377
+ &#{ $element } {
378
+ background-color: color.get(map.get($options, "color"));
379
+ #{ $side }: $position;
380
+
381
+ @if $end {
382
+ left: $position;
383
+ right: $position;
384
+ height: $size;
385
+ } @else {
386
+ top: $position;
387
+ bottom: $position;
388
+ width: $size;
389
+ }
390
+
391
+ @if $border-radius {
392
+ @if $end {
393
+ border-#{ $side }-left-radius: $border-radius;
394
+ border-#{ $side }-right-radius: $border-radius;
395
+ } @else {
396
+ border-top-#{ $side }-radius: $border-radius;
397
+ border-bottom-#{ $side }-radius: $border-radius;
398
+ }
399
+ }
400
+ }
401
+ }
402
+
403
+ /// Add backdrop-filter blur
404
+ /// @param {CssUnit} $amount [get("backdrop-blur")] Amount to blur
405
+ ///
406
+ @mixin backdrop-filter-blur($amount: get("backdrop-blur")) {
407
+ backdrop-filter: blur($amount);
408
+ }
409
+
410
+ /// Accessibly hide focus ring while keeping it when it's required
411
+ @mixin focus-ring-required-only() {
412
+ &:focus:not(:focus-visible) {
413
+ outline: none;
414
+ }
293
415
  }
package/scss/_layout.scss CHANGED
@@ -7,6 +7,7 @@
7
7
  @use "sass:meta";
8
8
  @use "utils";
9
9
  @use "breakpoint";
10
+ @use "color";
10
11
 
11
12
  /// Module Settings
12
13
  /// @type Map
@@ -215,10 +216,7 @@ $containers: (
215
216
  $breakpoints: map.get($container, "breakpoints");
216
217
 
217
218
  $width: map.get($container, "width");
218
- // @debug $specific-breakpoint;
219
- // @if $specific-breakpoint {
220
- // @debug $container;
221
- // }
219
+
222
220
  @if ($width == null) {
223
221
  $width: 100%;
224
222
  }
@@ -243,14 +241,14 @@ $containers: (
243
241
  /// Prints clearfix styles
244
242
 
245
243
  @mixin clearfix() {
246
- &:before,
247
- &:after {
244
+ &::before,
245
+ &::after {
248
246
  content: "";
249
247
  display: table;
250
248
  flex-basis: 0; // Flexbox, clear fix for pseudo elements in Safari
251
249
  order: 1;
252
250
  }
253
- &:after {
251
+ &::after {
254
252
  clear: both;
255
253
  }
256
254
  }
@@ -267,6 +265,7 @@ $containers: (
267
265
  /// Layout utility for absolute (zero on all sides)
268
266
  /// - Probably helpful for gzip if we use this when these exact styles are needed
269
267
  /// so they are identical for compression
268
+ /// @param {Boolean} $set-size [false] Whether or not to use sizes to fill the space (height/width 100%) versus setting bottom and right to 0)
270
269
  @mixin absolute-fill($set-size: false) {
271
270
  position: absolute;
272
271
  top: 0;
@@ -278,4 +277,4 @@ $containers: (
278
277
  width: 100%;
279
278
  height: 100%;
280
279
  }
281
- }
280
+ }
package/scss/_units.scss CHANGED
@@ -27,13 +27,14 @@ $config: (
27
27
 
28
28
  /// Update the units config
29
29
  /// @param {Map} $changes A map to merge into the color palette
30
+ /// @param {String} $merge-mode Merge mode see utils.map-merge() [null|"deep"|"overwrite"]
30
31
  /// @example scss Setting the error and type color
31
32
  /// @include ulu.units-set((
32
33
  /// "default" : 1.5em
33
34
  /// ));
34
35
 
35
- @mixin set($changes) {
36
- $config: map.merge($config, $changes) !global;
36
+ @mixin set($changes, $merge-mode: null) {
37
+ $config: utils.map-merge($config, $changes, $merge-mode) !global;
37
38
  }
38
39
 
39
40
  /// Get a unit by name (preset) or number (multiplier of base)