@ulu/frontend 0.1.0-beta.98 → 0.2.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (529) hide show
  1. package/dist/style.css +1 -0
  2. package/{types/utils/system.d.ts → dist/types/js/core/component.d.ts} +11 -14
  3. package/dist/types/js/core/component.d.ts.map +1 -0
  4. package/dist/types/js/core/events.d.ts +27 -0
  5. package/dist/types/js/core/events.d.ts.map +1 -0
  6. package/dist/types/js/core/index.d.ts +4 -0
  7. package/{types/utils → dist/types/js/core}/index.d.ts.map +1 -1
  8. package/dist/types/js/core/settings.d.ts.map +1 -0
  9. package/dist/types/js/index.d.ts +4 -0
  10. package/{types → dist/types/js}/index.d.ts.map +1 -1
  11. package/{types → dist/types/js}/ui/breakpoints.d.ts +4 -6
  12. package/dist/types/js/ui/breakpoints.d.ts.map +1 -0
  13. package/dist/types/js/ui/collapsible.d.ts.map +1 -0
  14. package/{types → dist/types/js}/ui/details-group.d.ts +1 -1
  15. package/dist/types/js/ui/details-group.d.ts.map +1 -0
  16. package/{types → dist/types/js}/ui/dialog.d.ts +1 -1
  17. package/dist/types/js/ui/dialog.d.ts.map +1 -0
  18. package/{types → dist/types/js}/ui/flipcard.d.ts +1 -1
  19. package/dist/types/js/ui/flipcard.d.ts.map +1 -0
  20. package/{types → dist/types/js}/ui/grid.d.ts +1 -1
  21. package/dist/types/js/ui/grid.d.ts.map +1 -0
  22. package/dist/types/js/ui/index.d.ts +22 -0
  23. package/{types → dist/types/js}/ui/index.d.ts.map +1 -1
  24. package/{types → dist/types/js}/ui/modal-builder.d.ts +2 -2
  25. package/dist/types/js/ui/modal-builder.d.ts.map +1 -0
  26. package/dist/types/js/ui/overflow-scroller-pager.d.ts.map +1 -0
  27. package/dist/types/js/ui/overflow-scroller.d.ts.map +1 -0
  28. package/dist/types/js/ui/page.d.ts.map +1 -0
  29. package/{types → dist/types/js}/ui/popover.d.ts +2 -2
  30. package/dist/types/js/ui/popover.d.ts.map +1 -0
  31. package/dist/types/js/ui/print-details.d.ts.map +1 -0
  32. package/dist/types/js/ui/print.d.ts.map +1 -0
  33. package/{types → dist/types/js}/ui/programmatic-modal.d.ts +1 -1
  34. package/dist/types/js/ui/programmatic-modal.d.ts.map +1 -0
  35. package/{types → dist/types/js}/ui/proxy-click.d.ts +1 -1
  36. package/dist/types/js/ui/proxy-click.d.ts.map +1 -0
  37. package/{types → dist/types/js}/ui/resizer.d.ts +1 -1
  38. package/dist/types/js/ui/resizer.d.ts.map +1 -0
  39. package/{types → dist/types/js}/ui/scroll-slider.d.ts +1 -1
  40. package/dist/types/js/ui/scroll-slider.d.ts.map +1 -0
  41. package/{types → dist/types/js}/ui/scrollpoint.d.ts +2 -2
  42. package/dist/types/js/ui/scrollpoint.d.ts.map +1 -0
  43. package/{types → dist/types/js}/ui/slider.d.ts +6 -6
  44. package/dist/types/js/ui/slider.d.ts.map +1 -0
  45. package/{types → dist/types/js}/ui/tabs.d.ts +1 -1
  46. package/dist/types/js/ui/tabs.d.ts.map +1 -0
  47. package/{types → dist/types/js}/ui/theme-toggle.d.ts +1 -1
  48. package/dist/types/js/ui/theme-toggle.d.ts.map +1 -0
  49. package/{types → dist/types/js}/ui/tooltip.d.ts +1 -1
  50. package/dist/types/js/ui/tooltip.d.ts.map +1 -0
  51. package/dist/types/js/utils/class-logger.d.ts.map +1 -0
  52. package/dist/types/js/utils/css.d.ts.map +1 -0
  53. package/dist/types/js/utils/dom.d.ts.map +1 -0
  54. package/{types → dist/types/js}/utils/file-save.d.ts +4 -1
  55. package/dist/types/js/utils/file-save.d.ts.map +1 -0
  56. package/dist/types/js/utils/floating-ui.d.ts.map +1 -0
  57. package/dist/types/js/utils/font-awesome.d.ts.map +1 -0
  58. package/dist/types/js/utils/id.d.ts.map +1 -0
  59. package/dist/types/js/utils/index.d.ts +8 -0
  60. package/dist/types/js/utils/index.d.ts.map +1 -0
  61. package/dist/types/js/utils/pause-youtube-video.d.ts.map +1 -0
  62. package/dist/ulu-frontend.es.js +5737 -0
  63. package/dist/ulu-frontend.umd.js +77 -0
  64. package/lib/index.js +5 -0
  65. package/{js/utils/system.js → lib/js/core/component.js} +13 -12
  66. package/lib/js/core/events.js +98 -0
  67. package/lib/js/core/index.js +34 -0
  68. package/{js → lib/js/core}/settings.js +3 -3
  69. package/lib/js/exports.md +126 -0
  70. package/lib/js/index.js +7 -0
  71. package/{js → lib/js}/ui/breakpoints.js +28 -31
  72. package/{js → lib/js}/ui/collapsible.js +2 -2
  73. package/{js → lib/js}/ui/details-group.js +2 -2
  74. package/{js → lib/js}/ui/dialog.js +6 -6
  75. package/{js → lib/js}/ui/flipcard.js +2 -2
  76. package/{js → lib/js}/ui/grid.js +2 -2
  77. package/lib/js/ui/index.js +161 -0
  78. package/{js → lib/js}/ui/modal-builder.js +6 -6
  79. package/{js → lib/js}/ui/overflow-scroller.js +2 -2
  80. package/{js → lib/js}/ui/popover.js +2 -2
  81. package/{js → lib/js}/ui/print-details.js +3 -3
  82. package/{js → lib/js}/ui/print.js +2 -2
  83. package/{js → lib/js}/ui/programmatic-modal.js +3 -3
  84. package/{js → lib/js}/ui/proxy-click.js +2 -2
  85. package/{js → lib/js}/ui/resizer.js +2 -2
  86. package/{js → lib/js}/ui/scroll-slider.js +2 -2
  87. package/{js → lib/js}/ui/scrollpoint.js +2 -2
  88. package/{js → lib/js}/ui/slider.js +3 -3
  89. package/{js → lib/js}/ui/tabs.js +2 -2
  90. package/{js → lib/js}/ui/theme-toggle.js +5 -5
  91. package/{js → lib/js}/ui/tooltip.js +4 -4
  92. package/{js → lib/js}/utils/css.js +1 -1
  93. package/{js → lib/js}/utils/font-awesome.js +2 -2
  94. package/lib/js/utils/index.js +63 -0
  95. package/{scss → lib/scss}/_breakpoint.scss +4 -4
  96. package/{scss → lib/scss}/_button.scss +1 -0
  97. package/{scss → lib/scss}/_color.scss +42 -38
  98. package/{scss → lib/scss}/_element.scss +6 -1
  99. package/{scss → lib/scss}/_typography.scss +15 -0
  100. package/lib/scss/components/_accordion.scss +274 -0
  101. package/{scss → lib/scss}/components/_basic-hero.scss +1 -1
  102. package/lib/scss/components/_breadcrumb.scss +110 -0
  103. package/{scss → lib/scss}/components/_button.scss +14 -4
  104. package/{scss/components/_card.scss → lib/scss/components/_card-before-no-position-relative.TRASH.scss} +80 -100
  105. package/{scss → lib/scss}/components/_card-grid.scss +8 -2
  106. package/lib/scss/components/_card.scss +656 -0
  107. package/lib/scss/components/_definition-list.scss +178 -0
  108. package/{scss → lib/scss}/components/_index.scss +25 -0
  109. package/{scss → lib/scss}/components/_menu-stack.scss +169 -16
  110. package/{scss → lib/scss}/components/_modal.scss +11 -1
  111. package/lib/scss/components/_progress-bar.scss +260 -0
  112. package/lib/scss/components/_progress-circle.scss +175 -0
  113. package/{scss → lib/scss}/components/_skeleton.scss +26 -15
  114. package/{scss → lib/scss}/components/_tag.scss +49 -7
  115. package/{scss → lib/scss}/helpers/_utilities.scss +25 -3
  116. package/package.json +28 -15
  117. package/.browserslistrc +0 -2
  118. package/.eslintrc +0 -17
  119. package/.prettierrc +0 -10
  120. package/CHANGELOG.md +0 -746
  121. package/deprecated/js/doc-ready.js +0 -28
  122. package/deprecated/js/drupal-programmatic-modal.js +0 -91
  123. package/deprecated/js/jquery-prototypes.js +0 -309
  124. package/deprecated/js/micromodal-modals.js +0 -196
  125. package/deprecated/js/mini-collapsible-popper-positioning.js +0 -126
  126. package/deprecated/js/mini-collapsible.js +0 -607
  127. package/deprecated/js/node-data-manager.js +0 -78
  128. package/deprecated/js/script-loader.js +0 -60
  129. package/deprecated/js/waypoints/README.md +0 -3
  130. package/deprecated/js/waypoints/anchor-menu.js +0 -76
  131. package/deprecated/js/waypoints/element-waypoint.js +0 -75
  132. package/deprecated/js/waypoints/examples/page-link-menu.md +0 -106
  133. package/deprecated/js/waypoints/state-in-attribute.js +0 -32
  134. package/dist/ulu-frontend.min.css +0 -1
  135. package/dist/ulu-frontend.min.js +0 -77
  136. package/docs-dev/.nojekyll +0 -1
  137. package/docs-dev/assets/chunks/modulepreload-polyfill.DaKOjhqt.js +0 -37
  138. package/docs-dev/assets/favicons/android-chrome-192x192.png +0 -0
  139. package/docs-dev/assets/favicons/android-chrome-256x256.png +0 -0
  140. package/docs-dev/assets/favicons/apple-touch-icon.png +0 -0
  141. package/docs-dev/assets/favicons/browserconfig.xml +0 -9
  142. package/docs-dev/assets/favicons/favicon-16x16.png +0 -0
  143. package/docs-dev/assets/favicons/favicon-32x32.png +0 -0
  144. package/docs-dev/assets/favicons/favicon.ico +0 -0
  145. package/docs-dev/assets/favicons/mstile-150x150.png +0 -0
  146. package/docs-dev/assets/favicons/safari-pinned-tab.svg +0 -1
  147. package/docs-dev/assets/favicons/site.webmanifest +0 -19
  148. package/docs-dev/assets/fonts/fontawesome/fa-brands-400.ttf +0 -0
  149. package/docs-dev/assets/fonts/fontawesome/fa-brands-400.woff2 +0 -0
  150. package/docs-dev/assets/fonts/fontawesome/fa-regular-400.ttf +0 -0
  151. package/docs-dev/assets/fonts/fontawesome/fa-regular-400.woff2 +0 -0
  152. package/docs-dev/assets/fonts/fontawesome/fa-solid-900.ttf +0 -0
  153. package/docs-dev/assets/fonts/fontawesome/fa-solid-900.woff2 +0 -0
  154. package/docs-dev/assets/fonts/fontawesome/fa-v4compatibility.ttf +0 -0
  155. package/docs-dev/assets/fonts/fontawesome/fa-v4compatibility.woff2 +0 -0
  156. package/docs-dev/assets/fonts/inter/Inter-Black.woff2 +0 -0
  157. package/docs-dev/assets/fonts/inter/Inter-BlackItalic.woff2 +0 -0
  158. package/docs-dev/assets/fonts/inter/Inter-Bold.woff2 +0 -0
  159. package/docs-dev/assets/fonts/inter/Inter-BoldItalic.woff2 +0 -0
  160. package/docs-dev/assets/fonts/inter/Inter-ExtraBold.woff2 +0 -0
  161. package/docs-dev/assets/fonts/inter/Inter-ExtraBoldItalic.woff2 +0 -0
  162. package/docs-dev/assets/fonts/inter/Inter-ExtraLight.woff2 +0 -0
  163. package/docs-dev/assets/fonts/inter/Inter-ExtraLightItalic.woff2 +0 -0
  164. package/docs-dev/assets/fonts/inter/Inter-Italic.woff2 +0 -0
  165. package/docs-dev/assets/fonts/inter/Inter-Light.woff2 +0 -0
  166. package/docs-dev/assets/fonts/inter/Inter-LightItalic.woff2 +0 -0
  167. package/docs-dev/assets/fonts/inter/Inter-Medium.woff2 +0 -0
  168. package/docs-dev/assets/fonts/inter/Inter-MediumItalic.woff2 +0 -0
  169. package/docs-dev/assets/fonts/inter/Inter-Regular.woff2 +0 -0
  170. package/docs-dev/assets/fonts/inter/Inter-SemiBold.woff2 +0 -0
  171. package/docs-dev/assets/fonts/inter/Inter-SemiBoldItalic.woff2 +0 -0
  172. package/docs-dev/assets/fonts/inter/Inter-Thin.woff2 +0 -0
  173. package/docs-dev/assets/fonts/inter/Inter-ThinItalic.woff2 +0 -0
  174. package/docs-dev/assets/fonts/inter/InterDisplay-Black.woff2 +0 -0
  175. package/docs-dev/assets/fonts/inter/InterDisplay-BlackItalic.woff2 +0 -0
  176. package/docs-dev/assets/fonts/inter/InterDisplay-Bold.woff2 +0 -0
  177. package/docs-dev/assets/fonts/inter/InterDisplay-BoldItalic.woff2 +0 -0
  178. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraBold.woff2 +0 -0
  179. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraBoldItalic.woff2 +0 -0
  180. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraLight.woff2 +0 -0
  181. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraLightItalic.woff2 +0 -0
  182. package/docs-dev/assets/fonts/inter/InterDisplay-Italic.woff2 +0 -0
  183. package/docs-dev/assets/fonts/inter/InterDisplay-Light.woff2 +0 -0
  184. package/docs-dev/assets/fonts/inter/InterDisplay-LightItalic.woff2 +0 -0
  185. package/docs-dev/assets/fonts/inter/InterDisplay-Medium.woff2 +0 -0
  186. package/docs-dev/assets/fonts/inter/InterDisplay-MediumItalic.woff2 +0 -0
  187. package/docs-dev/assets/fonts/inter/InterDisplay-Regular.woff2 +0 -0
  188. package/docs-dev/assets/fonts/inter/InterDisplay-SemiBold.woff2 +0 -0
  189. package/docs-dev/assets/fonts/inter/InterDisplay-SemiBoldItalic.woff2 +0 -0
  190. package/docs-dev/assets/fonts/inter/InterDisplay-Thin.woff2 +0 -0
  191. package/docs-dev/assets/fonts/inter/InterDisplay-ThinItalic.woff2 +0 -0
  192. package/docs-dev/assets/fonts/inter/InterVariable-Italic.woff2 +0 -0
  193. package/docs-dev/assets/fonts/inter/InterVariable.woff2 +0 -0
  194. package/docs-dev/assets/fonts/inter/LICENSE.txt +0 -92
  195. package/docs-dev/assets/fonts/inter/inter.css +0 -37
  196. package/docs-dev/assets/main.js +0 -23312
  197. package/docs-dev/assets/placeholder/4065947-uhd_4096_2160_25fps.credits.txt +0 -2
  198. package/docs-dev/assets/placeholder/4065947-uhd_4096_2160_25fps.mp4 +0 -0
  199. package/docs-dev/assets/placeholder/icon-calendar.svg +0 -1
  200. package/docs-dev/assets/placeholder/icon-check.svg +0 -1
  201. package/docs-dev/assets/placeholder/image-1-attribution.txt +0 -7
  202. package/docs-dev/assets/placeholder/image-1-darkened.jpg +0 -0
  203. package/docs-dev/assets/placeholder/image-1-lightened.jpg +0 -0
  204. package/docs-dev/assets/placeholder/image-1.jpg +0 -0
  205. package/docs-dev/assets/style.css +0 -19153
  206. package/docs-dev/changelog/index.html +0 -7177
  207. package/docs-dev/demos/accordion/index.html +0 -5811
  208. package/docs-dev/demos/badge/index.html +0 -5655
  209. package/docs-dev/demos/badge-stack/index.html +0 -5636
  210. package/docs-dev/demos/badge.1/index.html +0 -5595
  211. package/docs-dev/demos/basic-hero/index.html +0 -111
  212. package/docs-dev/demos/breakpoints-manager/index.html +0 -5666
  213. package/docs-dev/demos/button/index.html +0 -5665
  214. package/docs-dev/demos/button-group/index.html +0 -5652
  215. package/docs-dev/demos/button-verbose/index.html +0 -5658
  216. package/docs-dev/demos/callout/index.html +0 -5704
  217. package/docs-dev/demos/captioned-figure/index.html +0 -5686
  218. package/docs-dev/demos/card/index.html +0 -5682
  219. package/docs-dev/demos/card-grid/index.html +0 -5777
  220. package/docs-dev/demos/counter-list/index.html +0 -5660
  221. package/docs-dev/demos/css-icons/index.html +0 -6298
  222. package/docs-dev/demos/data-grid/index.html +0 -6529
  223. package/docs-dev/demos/data-table/index.html +0 -5833
  224. package/docs-dev/demos/details-group/index.html +0 -5687
  225. package/docs-dev/demos/file-save/index.html +0 -5675
  226. package/docs-dev/demos/flipcard/index.html +0 -6224
  227. package/docs-dev/demos/form-theme/index.html +0 -5842
  228. package/docs-dev/demos/headline-label/index.html +0 -5622
  229. package/docs-dev/demos/hero/index.html +0 -309
  230. package/docs-dev/demos/image-grid/index.html +0 -165
  231. package/docs-dev/demos/index.html +0 -5613
  232. package/docs-dev/demos/list-inline/index.html +0 -5640
  233. package/docs-dev/demos/list-lines/index.html +0 -5630
  234. package/docs-dev/demos/menu-stack/index.html +0 -5769
  235. package/docs-dev/demos/modals/index.html +0 -5844
  236. package/docs-dev/demos/nav-strip/index.html +0 -5725
  237. package/docs-dev/demos/overlay-section/index.html +0 -5701
  238. package/docs-dev/demos/panel/index.html +0 -5682
  239. package/docs-dev/demos/popovers/index.html +0 -5873
  240. package/docs-dev/demos/print/index.html +0 -5633
  241. package/docs-dev/demos/pull-quote/index.html +0 -5632
  242. package/docs-dev/demos/rail/index.html +0 -5730
  243. package/docs-dev/demos/rule/index.html +0 -5694
  244. package/docs-dev/demos/scroll-slider/index.html +0 -170
  245. package/docs-dev/demos/scrollpoints/index.html +0 -5651
  246. package/docs-dev/demos/skeleton/index.html +0 -5676
  247. package/docs-dev/demos/slider/index.html +0 -172
  248. package/docs-dev/demos/spoke-spinner/index.html +0 -5628
  249. package/docs-dev/demos/sticky-list/index.html +0 -5643
  250. package/docs-dev/demos/tabs/index.html +0 -5753
  251. package/docs-dev/demos/tag/index.html +0 -5633
  252. package/docs-dev/demos/theme-toggle/index.html +0 -5699
  253. package/docs-dev/demos/tile-grid-overlay/index.html +0 -390
  254. package/docs-dev/demos/tiles/index.html +0 -5882
  255. package/docs-dev/demos/tooltip/index.html +0 -5661
  256. package/docs-dev/demos/wysiwyg/index.html +0 -5672
  257. package/docs-dev/guide/building-stylesheet/index.html +0 -5682
  258. package/docs-dev/guide/developing-ulu-scss-module/index.html +0 -5734
  259. package/docs-dev/guide/index.html +0 -5615
  260. package/docs-dev/index.html +0 -5662
  261. package/docs-dev/javascript/events/index.html +0 -5811
  262. package/docs-dev/javascript/index.html +0 -5628
  263. package/docs-dev/javascript/settings/index.html +0 -5825
  264. package/docs-dev/javascript/ui-breakpoints/index.html +0 -6071
  265. package/docs-dev/javascript/ui-collapsible/index.html +0 -5738
  266. package/docs-dev/javascript/ui-details-group/index.html +0 -5742
  267. package/docs-dev/javascript/ui-dialog/index.html +0 -5787
  268. package/docs-dev/javascript/ui-flipcard/index.html +0 -5678
  269. package/docs-dev/javascript/ui-grid/index.html +0 -5653
  270. package/docs-dev/javascript/ui-modal-builder/index.html +0 -5901
  271. package/docs-dev/javascript/ui-overflow-scroller/index.html +0 -5611
  272. package/docs-dev/javascript/ui-overflow-scroller-pager/index.html +0 -5629
  273. package/docs-dev/javascript/ui-page/index.html +0 -5626
  274. package/docs-dev/javascript/ui-popover/index.html +0 -5661
  275. package/docs-dev/javascript/ui-print/index.html +0 -5670
  276. package/docs-dev/javascript/ui-print-details/index.html +0 -5641
  277. package/docs-dev/javascript/ui-programmatic-modal/index.html +0 -5611
  278. package/docs-dev/javascript/ui-proxy-click/index.html +0 -5740
  279. package/docs-dev/javascript/ui-resizer/index.html +0 -5946
  280. package/docs-dev/javascript/ui-scroll-slider/index.html +0 -5672
  281. package/docs-dev/javascript/ui-scrollpoint/index.html +0 -5851
  282. package/docs-dev/javascript/ui-slider/index.html +0 -5813
  283. package/docs-dev/javascript/ui-tabs/index.html +0 -5706
  284. package/docs-dev/javascript/ui-theme-toggle/index.html +0 -5830
  285. package/docs-dev/javascript/ui-tooltip/index.html +0 -5754
  286. package/docs-dev/javascript/utils-class-logger/index.html +0 -5746
  287. package/docs-dev/javascript/utils-css/index.html +0 -5644
  288. package/docs-dev/javascript/utils-dom/index.html +0 -5711
  289. package/docs-dev/javascript/utils-file-save/index.html +0 -5783
  290. package/docs-dev/javascript/utils-floating-ui/index.html +0 -5643
  291. package/docs-dev/javascript/utils-id/index.html +0 -5653
  292. package/docs-dev/javascript/utils-pause-youtube-video/index.html +0 -5661
  293. package/docs-dev/javascript/utils-system/index.html +0 -5947
  294. package/docs-dev/sass/base/color/index.html +0 -5644
  295. package/docs-dev/sass/base/elements/index.html +0 -5815
  296. package/docs-dev/sass/base/index/index.html +0 -5814
  297. package/docs-dev/sass/base/index.html +0 -5622
  298. package/docs-dev/sass/base/keyframes/index.html +0 -5646
  299. package/docs-dev/sass/base/layout/index.html +0 -5806
  300. package/docs-dev/sass/base/normalize/index.html +0 -5654
  301. package/docs-dev/sass/base/print/index.html +0 -5650
  302. package/docs-dev/sass/base/root/index.html +0 -5670
  303. package/docs-dev/sass/base/typography/index.html +0 -5670
  304. package/docs-dev/sass/components/accordion/index.html +0 -5979
  305. package/docs-dev/sass/components/adaptive-spacing/index.html +0 -5915
  306. package/docs-dev/sass/components/badge/index.html +0 -5881
  307. package/docs-dev/sass/components/badge-stack/index.html +0 -5811
  308. package/docs-dev/sass/components/basic-hero/index.html +0 -5805
  309. package/docs-dev/sass/components/button/index.html +0 -5799
  310. package/docs-dev/sass/components/button-group/index.html +0 -5803
  311. package/docs-dev/sass/components/button-verbose/index.html +0 -5986
  312. package/docs-dev/sass/components/callout/index.html +0 -5961
  313. package/docs-dev/sass/components/captioned-figure/index.html +0 -5904
  314. package/docs-dev/sass/components/card/index.html +0 -6219
  315. package/docs-dev/sass/components/card-grid/index.html +0 -5813
  316. package/docs-dev/sass/components/counter-list/index.html +0 -5887
  317. package/docs-dev/sass/components/css-icon/index.html +0 -5917
  318. package/docs-dev/sass/components/data-grid/index.html +0 -6052
  319. package/docs-dev/sass/components/data-table/index.html +0 -5988
  320. package/docs-dev/sass/components/fill-context/index.html +0 -5679
  321. package/docs-dev/sass/components/flipcard/index.html +0 -5980
  322. package/docs-dev/sass/components/flipcard-grid/index.html +0 -5800
  323. package/docs-dev/sass/components/form-theme/index.html +0 -6525
  324. package/docs-dev/sass/components/headline-label/index.html +0 -5833
  325. package/docs-dev/sass/components/hero/index.html +0 -5849
  326. package/docs-dev/sass/components/horizontal-rule/index.html +0 -5798
  327. package/docs-dev/sass/components/image-grid/index.html +0 -5805
  328. package/docs-dev/sass/components/index/index.html +0 -5859
  329. package/docs-dev/sass/components/index.html +0 -5622
  330. package/docs-dev/sass/components/links/index.html +0 -5649
  331. package/docs-dev/sass/components/list-inline/index.html +0 -5819
  332. package/docs-dev/sass/components/list-lines/index.html +0 -5840
  333. package/docs-dev/sass/components/list-ordered/index.html +0 -5645
  334. package/docs-dev/sass/components/list-unordered/index.html +0 -5649
  335. package/docs-dev/sass/components/menu-stack/index.html +0 -5992
  336. package/docs-dev/sass/components/modal/index.html +0 -6068
  337. package/docs-dev/sass/components/nav-strip/index.html +0 -5899
  338. package/docs-dev/sass/components/overlay-section/index.html +0 -5843
  339. package/docs-dev/sass/components/pager/index.html +0 -5961
  340. package/docs-dev/sass/components/panel/index.html +0 -6033
  341. package/docs-dev/sass/components/placeholder-block/index.html +0 -5883
  342. package/docs-dev/sass/components/popover/index.html +0 -5994
  343. package/docs-dev/sass/components/pull-quote/index.html +0 -5857
  344. package/docs-dev/sass/components/rail/index.html +0 -5823
  345. package/docs-dev/sass/components/ratio-box/index.html +0 -5803
  346. package/docs-dev/sass/components/rule/index.html +0 -5805
  347. package/docs-dev/sass/components/scroll-slider/index.html +0 -5904
  348. package/docs-dev/sass/components/skeleton/index.html +0 -5860
  349. package/docs-dev/sass/components/skip-link/index.html +0 -5789
  350. package/docs-dev/sass/components/slider/index.html +0 -5913
  351. package/docs-dev/sass/components/spoke-spinner/index.html +0 -5863
  352. package/docs-dev/sass/components/sticky-list/index.html +0 -6023
  353. package/docs-dev/sass/components/table-sticky/index.html +0 -5677
  354. package/docs-dev/sass/components/tabs/index.html +0 -5954
  355. package/docs-dev/sass/components/tag/index.html +0 -5964
  356. package/docs-dev/sass/components/tile-button/index.html +0 -5844
  357. package/docs-dev/sass/components/tile-grid/index.html +0 -5979
  358. package/docs-dev/sass/components/tile-grid-overlay/index.html +0 -5780
  359. package/docs-dev/sass/components/vignette/index.html +0 -5799
  360. package/docs-dev/sass/components/wysiwyg/index.html +0 -5827
  361. package/docs-dev/sass/core/breakpoint/index.html +0 -6454
  362. package/docs-dev/sass/core/button/index.html +0 -6538
  363. package/docs-dev/sass/core/color/index.html +0 -6520
  364. package/docs-dev/sass/core/cssvar/index.html +0 -6411
  365. package/docs-dev/sass/core/element/index.html +0 -6816
  366. package/docs-dev/sass/core/index.html +0 -5609
  367. package/docs-dev/sass/core/layout/index.html +0 -6388
  368. package/docs-dev/sass/core/path/index.html +0 -5778
  369. package/docs-dev/sass/core/selector/index.html +0 -5857
  370. package/docs-dev/sass/core/typography/index.html +0 -6783
  371. package/docs-dev/sass/core/units/index.html +0 -5822
  372. package/docs-dev/sass/core/utils/index.html +0 -8406
  373. package/docs-dev/sass/helpers/color/index.html +0 -5644
  374. package/docs-dev/sass/helpers/display/index.html +0 -5649
  375. package/docs-dev/sass/helpers/index/index.html +0 -5811
  376. package/docs-dev/sass/helpers/index.html +0 -5622
  377. package/docs-dev/sass/helpers/print/index.html +0 -5199
  378. package/docs-dev/sass/helpers/typography/index.html +0 -5672
  379. package/docs-dev/sass/helpers/units/index.html +0 -5818
  380. package/docs-dev/sass/helpers/utilities/index.html +0 -5649
  381. package/docs-dev/sass/index.html +0 -5673
  382. package/index.js +0 -7
  383. package/js/events/index.js +0 -108
  384. package/js/index.js +0 -11
  385. package/js/ui/index.js +0 -22
  386. package/js/utils/index.js +0 -8
  387. package/resources/drupal/twig-macros/accordion.twig +0 -99
  388. package/resources/drupal/twig-macros/dropdown.twig +0 -44
  389. package/resources/drupal/twig-macros/flipcard.twig +0 -69
  390. package/resources/drupal/twig-macros/image.twig +0 -30
  391. package/resources/drupal/twig-macros/layout.twig +0 -338
  392. package/resources/drupal/twig-macros/slider.twig +0 -214
  393. package/resources/drupal/twig-macros/tabs.twig +0 -84
  394. package/scss/components/_accordion.scss +0 -231
  395. package/types/events/index.d.ts +0 -26
  396. package/types/events/index.d.ts.map +0 -1
  397. package/types/index.d.ts +0 -5
  398. package/types/settings.d.ts.map +0 -1
  399. package/types/ui/breakpoints.d.ts.map +0 -1
  400. package/types/ui/collapsible.d.ts.map +0 -1
  401. package/types/ui/details-group.d.ts.map +0 -1
  402. package/types/ui/dialog.d.ts.map +0 -1
  403. package/types/ui/flipcard.d.ts.map +0 -1
  404. package/types/ui/grid.d.ts.map +0 -1
  405. package/types/ui/index.d.ts +0 -24
  406. package/types/ui/modal-builder.d.ts.map +0 -1
  407. package/types/ui/overflow-scroller-pager.d.ts.map +0 -1
  408. package/types/ui/overflow-scroller.d.ts.map +0 -1
  409. package/types/ui/page.d.ts.map +0 -1
  410. package/types/ui/popover.d.ts.map +0 -1
  411. package/types/ui/print-details.d.ts.map +0 -1
  412. package/types/ui/print.d.ts.map +0 -1
  413. package/types/ui/programmatic-modal.d.ts.map +0 -1
  414. package/types/ui/proxy-click.d.ts.map +0 -1
  415. package/types/ui/resizer.d.ts.map +0 -1
  416. package/types/ui/scroll-slider.d.ts.map +0 -1
  417. package/types/ui/scrollpoint.d.ts.map +0 -1
  418. package/types/ui/slider.d.ts.map +0 -1
  419. package/types/ui/tabs.d.ts.map +0 -1
  420. package/types/ui/theme-toggle.d.ts.map +0 -1
  421. package/types/ui/tooltip.d.ts.map +0 -1
  422. package/types/utils/class-logger.d.ts.map +0 -1
  423. package/types/utils/css.d.ts.map +0 -1
  424. package/types/utils/dom.d.ts.map +0 -1
  425. package/types/utils/file-save.d.ts.map +0 -1
  426. package/types/utils/floating-ui.d.ts.map +0 -1
  427. package/types/utils/font-awesome.d.ts.map +0 -1
  428. package/types/utils/id.d.ts.map +0 -1
  429. package/types/utils/index.d.ts +0 -10
  430. package/types/utils/pause-youtube-video.d.ts.map +0 -1
  431. package/types/utils/system.d.ts.map +0 -1
  432. /package/{types → dist/types/js/core}/settings.d.ts +0 -0
  433. /package/{types → dist/types/js}/ui/collapsible.d.ts +0 -0
  434. /package/{types → dist/types/js}/ui/overflow-scroller-pager.d.ts +0 -0
  435. /package/{types → dist/types/js}/ui/overflow-scroller.d.ts +0 -0
  436. /package/{types → dist/types/js}/ui/page.d.ts +0 -0
  437. /package/{types → dist/types/js}/ui/print-details.d.ts +0 -0
  438. /package/{types → dist/types/js}/ui/print.d.ts +0 -0
  439. /package/{types → dist/types/js}/utils/class-logger.d.ts +0 -0
  440. /package/{types → dist/types/js}/utils/css.d.ts +0 -0
  441. /package/{types → dist/types/js}/utils/dom.d.ts +0 -0
  442. /package/{types → dist/types/js}/utils/floating-ui.d.ts +0 -0
  443. /package/{types → dist/types/js}/utils/font-awesome.d.ts +0 -0
  444. /package/{types → dist/types/js}/utils/id.d.ts +0 -0
  445. /package/{types → dist/types/js}/utils/pause-youtube-video.d.ts +0 -0
  446. /package/{js → lib/js}/ui/dialog.todo +0 -0
  447. /package/{js → lib/js}/ui/overflow-scroller-pager.js +0 -0
  448. /package/{js → lib/js}/ui/page.js +0 -0
  449. /package/{js → lib/js}/utils/class-logger.js +0 -0
  450. /package/{js → lib/js}/utils/dom.js +0 -0
  451. /package/{js → lib/js}/utils/file-save.js +0 -0
  452. /package/{js → lib/js}/utils/floating-ui.js +0 -0
  453. /package/{js → lib/js}/utils/id.js +0 -0
  454. /package/{js → lib/js}/utils/pause-youtube-video.js +0 -0
  455. /package/{scss → lib/scss}/README.md +0 -0
  456. /package/{scss → lib/scss}/_cssvar.scss +0 -0
  457. /package/{scss → lib/scss}/_index.scss +0 -0
  458. /package/{scss → lib/scss}/_layout.scss +0 -0
  459. /package/{scss → lib/scss}/_path.scss +0 -0
  460. /package/{scss → lib/scss}/_selector.scss +0 -0
  461. /package/{scss → lib/scss}/_units.scss +0 -0
  462. /package/{scss → lib/scss}/_utils.scss +0 -0
  463. /package/{scss → lib/scss}/base/_color.scss +0 -0
  464. /package/{scss → lib/scss}/base/_elements.scss +0 -0
  465. /package/{scss → lib/scss}/base/_index.scss +0 -0
  466. /package/{scss → lib/scss}/base/_keyframes.scss +0 -0
  467. /package/{scss → lib/scss}/base/_layout.scss +0 -0
  468. /package/{scss → lib/scss}/base/_normalize.scss +0 -0
  469. /package/{scss → lib/scss}/base/_print.scss +0 -0
  470. /package/{scss → lib/scss}/base/_root.scss +0 -0
  471. /package/{scss → lib/scss}/base/_typography.scss +0 -0
  472. /package/{scss → lib/scss}/components/README.md +0 -0
  473. /package/{scss → lib/scss}/components/README.todos +0 -0
  474. /package/{scss → lib/scss}/components/_adaptive-spacing.scss +0 -0
  475. /package/{scss → lib/scss}/components/_badge-stack.scss +0 -0
  476. /package/{scss → lib/scss}/components/_badge.scss +0 -0
  477. /package/{scss → lib/scss}/components/_button-group.scss +0 -0
  478. /package/{scss → lib/scss}/components/_button-verbose.scss +0 -0
  479. /package/{scss → lib/scss}/components/_callout.scss +0 -0
  480. /package/{scss → lib/scss}/components/_captioned-figure.scss +0 -0
  481. /package/{scss → lib/scss}/components/_counter-list.scss +0 -0
  482. /package/{scss → lib/scss}/components/_css-icon.scss +0 -0
  483. /package/{scss → lib/scss}/components/_data-grid.scss +0 -0
  484. /package/{scss → lib/scss}/components/_data-table.scss +0 -0
  485. /package/{scss → lib/scss}/components/_fill-context.scss +0 -0
  486. /package/{scss → lib/scss}/components/_flipcard-grid.scss +0 -0
  487. /package/{scss → lib/scss}/components/_flipcard.scss +0 -0
  488. /package/{scss → lib/scss}/components/_form-theme.scss +0 -0
  489. /package/{scss → lib/scss}/components/_headline-label.scss +0 -0
  490. /package/{scss → lib/scss}/components/_hero.scss +0 -0
  491. /package/{scss → lib/scss}/components/_horizontal-rule.scss +0 -0
  492. /package/{scss → lib/scss}/components/_image-grid.scss +0 -0
  493. /package/{scss → lib/scss}/components/_links.scss +0 -0
  494. /package/{scss → lib/scss}/components/_list-inline.scss +0 -0
  495. /package/{scss → lib/scss}/components/_list-lines.scss +0 -0
  496. /package/{scss → lib/scss}/components/_list-ordered.scss +0 -0
  497. /package/{scss → lib/scss}/components/_list-unordered.scss +0 -0
  498. /package/{scss → lib/scss}/components/_nav-strip.scss +0 -0
  499. /package/{scss → lib/scss}/components/_overlay-section.scss +0 -0
  500. /package/{scss → lib/scss}/components/_pager.scss +0 -0
  501. /package/{scss → lib/scss}/components/_panel.scss +0 -0
  502. /package/{scss → lib/scss}/components/_placeholder-block.scss +0 -0
  503. /package/{scss → lib/scss}/components/_popover.scss +0 -0
  504. /package/{scss → lib/scss}/components/_pull-quote.scss +0 -0
  505. /package/{scss → lib/scss}/components/_rail.scss +0 -0
  506. /package/{scss → lib/scss}/components/_ratio-box.scss +0 -0
  507. /package/{scss → lib/scss}/components/_rule.scss +0 -0
  508. /package/{scss → lib/scss}/components/_scroll-slider.scss +0 -0
  509. /package/{scss → lib/scss}/components/_skip-link.scss +0 -0
  510. /package/{scss → lib/scss}/components/_slider.scss +0 -0
  511. /package/{scss → lib/scss}/components/_spoke-spinner.scss +0 -0
  512. /package/{scss → lib/scss}/components/_sticky-list.scss +0 -0
  513. /package/{scss → lib/scss}/components/_tabs.scss +0 -0
  514. /package/{scss → lib/scss}/components/_tile-button.scss +0 -0
  515. /package/{scss → lib/scss}/components/_tile-grid-overlay.scss +0 -0
  516. /package/{scss → lib/scss}/components/_tile-grid.scss +0 -0
  517. /package/{scss → lib/scss}/components/_vignette.scss +0 -0
  518. /package/{scss → lib/scss}/components/_wysiwyg.scss +0 -0
  519. /package/{scss → lib/scss}/helpers/_color.scss +0 -0
  520. /package/{scss → lib/scss}/helpers/_display.scss +0 -0
  521. /package/{scss → lib/scss}/helpers/_index.scss +0 -0
  522. /package/{scss → lib/scss}/helpers/_print.scss +0 -0
  523. /package/{scss → lib/scss}/helpers/_typography.scss +0 -0
  524. /package/{scss → lib/scss}/helpers/_units.scss +0 -0
  525. /package/{scss → lib/scss}/stylesheets/README.md +0 -0
  526. /package/{scss → lib/scss}/stylesheets/base-styles.scss +0 -0
  527. /package/{scss → lib/scss}/stylesheets/component-styles.scss +0 -0
  528. /package/{scss → lib/scss}/stylesheets/full.scss +0 -0
  529. /package/{scss → lib/scss}/stylesheets/helper-styles.scss +0 -0
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @module core
3
+ * @description
4
+ * Public API for the core modules.
5
+ *
6
+ * This file re-exports the internal implementations from the `core` directory
7
+ * with new names where appropriate, defining the public-facing API for the
8
+ * library bundle.
9
+ *
10
+ * For internal library usage, import directly from the specific file within
11
+ * the `core` directory (e.g., `import { ... } from './settings.js'`).
12
+ */
13
+
14
+ export {
15
+ dispatchCoreEvent,
16
+ getCoreEventName,
17
+ getUluEventName,
18
+ createUluEvent
19
+ } from './events.js';
20
+
21
+ export {
22
+ getDefaultSettings,
23
+ updateSettings,
24
+ getSettings,
25
+ getSetting,
26
+ updateSetting,
27
+ wrapSettingString
28
+ } from './settings.js';
29
+
30
+ export {
31
+ ComponentInitializer
32
+ } from './component.js';
33
+
34
+
@@ -1,6 +1,6 @@
1
1
  /**
2
- * @module settings
3
- * @description Manages shared configuration for the library.
2
+ * @module core/settings
3
+ * @description Internal implementation for managing shared configuration.
4
4
  */
5
5
 
6
6
  /**
@@ -94,4 +94,4 @@ export function wrapSettingString(key, transform) {
94
94
  return transform ? transform(value) : value;
95
95
  }
96
96
  };
97
- }
97
+ }
@@ -0,0 +1,126 @@
1
+ # Exports Map
2
+
3
+ ## Example Import
4
+
5
+ All JavaScript modules are exported from the main `@ulu/frontend` package entry point.
6
+
7
+ **Example Usage:**
8
+ ```javascript
9
+ import { dialogInit, Slider, updateSettings } from '@ulu/frontend';
10
+
11
+ // Update a library setting
12
+ updateSettings({ cssvarPrefix: "my-app" });
13
+
14
+ // Initialize all dialogs
15
+ dialogInit();
16
+
17
+ // Create a new slider
18
+ const slider = new Slider(...);
19
+ ```
20
+
21
+ ## Exports Map
22
+
23
+ ### Core Modules
24
+
25
+ These exports originate from the `lib/js/core/` directory and provide the foundational, cross-cutting logic for the library.
26
+
27
+ - `ComponentInitializer`
28
+ - `createUluEvent`
29
+ - `dispatchCoreEvent`
30
+ - `getCoreEventName`
31
+ - `getDefaultSettings`
32
+ - `getSettings`
33
+ - `getSetting`
34
+ - `getUluEventName`
35
+ - `updateSetting`
36
+ - `updateSettings`
37
+ - `wrapSettingString`
38
+
39
+ ### UI Modules
40
+
41
+ These exports originate from the `lib/js/ui/` directory.
42
+
43
+ - `BreakpointManager`
44
+ - `Collapsible`
45
+ - `detailsGroupInit`
46
+ - `detailsGroupInitializer`
47
+ - `detailsGroupSetupGroup`
48
+ - `dialogBaseAttribute`
49
+ - `dialogCloseAttribute`
50
+ - `dialogDefaults`
51
+ - `dialogGetDialogOptions`
52
+ - `dialogInit`
53
+ - `dialogInitializer`
54
+ - `dialogSetDefaults`
55
+ - `dialogSetupDialog`
56
+ - `dialogSetupTrigger`
57
+ - `Flipcard`
58
+ - `flipcardInit`
59
+ - `flipcardInitializer`
60
+ - `gridInit`
61
+ - `gridInitializer`
62
+ - `modalBuilderBuildModal`
63
+ - `modalBuilderDefaults`
64
+ - `modalBuilderInit`
65
+ - `modalBuilderInitializer`
66
+ - `modalBuilderSetDefaults`
67
+ - `OverflowScroller`
68
+ - `overflowScrollerCreatePager`
69
+ - `pageInit`
70
+ - `Popover`
71
+ - `popoverGetContentByTrigger`
72
+ - `popoverInit`
73
+ - `popoverInitializer`
74
+ - `popoverInstances`
75
+ - `popoverResolve`
76
+ - `printDetailsAttrs`
77
+ - `printDetailsInit`
78
+ - `printInit`
79
+ - `proxyClickAttachHandlers`
80
+ - `proxyClickDefaults`
81
+ - `proxyClickInit`
82
+ - `proxyClickInitializer`
83
+ - `proxyClickSetDefaults`
84
+ - `proxyClickSetupProxy`
85
+ - `Resizer`
86
+ - `scrollSliderInit`
87
+ - `scrollSliderInitializer`
88
+ - `Scrollpoint`
89
+ - `scrollpointInit`
90
+ - `scrollpointInitializer`
91
+ - `Slider`
92
+ - `sliderInit`
93
+ - `sliderInitializer`
94
+ - `sliderSetupSlider`
95
+ - `tabsInit`
96
+ - `tabsInitializer`
97
+ - `tabsInstances`
98
+ - `tabsSetup`
99
+ - `themeToggleDefaults`
100
+ - `themeToggleInit`
101
+ - `themeToggleInitializer`
102
+ - `themeToggleSetDefaults`
103
+ - `themeToggleSetupToggle`
104
+ - `Tooltip`
105
+ - `tooltipInit`
106
+ - `tooltipInitializer`
107
+
108
+ ### Utility Modules
109
+
110
+ These exports originate from the `lib/js/utils/` directory.
111
+
112
+ - `classLoggerLog`
113
+ - `classLoggerLogError`
114
+ - `classLoggerLogWarning`
115
+ - `classLoggerSet`
116
+ - `fontAwesomeConfigureIcons`
117
+ - `createFloatingUi`
118
+ - `dataAttributeToDatasetKey`
119
+ - `ensureId`
120
+ - `FileSave`
121
+ - `floatingUiDefaults`
122
+ - `newId`
123
+ - `resolveClasses`
124
+ - `setPositionClasses`
125
+ - `youtubePauseVideos`
126
+ - `youtubePrepVideos`
@@ -0,0 +1,7 @@
1
+ // Re-export all flattened, prefixed modules from the library.
2
+ // This serves as the main entry point for the tree-shakable ESM bundle.
3
+
4
+ export * from "./core/index.js";
5
+ export * from "./ui/index.js";
6
+ export * from "./utils/index.js";
7
+
@@ -4,15 +4,15 @@
4
4
 
5
5
  // Pass breakpoints from CSS to stylesheet, use this to attach behaviors on breakpoints
6
6
  import { removeArrayElement } from "@ulu/utils/array.js";
7
- import { getName } from "../events/index.js";
8
- import { wrapSettingString } from "../settings.js";
7
+ import { getCoreEventName } from "../core/events.js";
8
+ import { wrapSettingString } from "../core/settings.js";
9
9
  import { getCustomProperty } from "../utils/css.js";
10
10
  import { log, logError } from "../utils/class-logger.js";
11
11
 
12
12
  const getDefaultCustomProperty = prefix => getCustomProperty(prefix, "breakpoint");
13
13
 
14
14
  // Resize Handler to update breakpoints for all instances (Called after resize finished)
15
- window.addEventListener(getName("pageResized"), () => {
15
+ window.addEventListener(getCoreEventName("pageResized"), () => {
16
16
  BreakpointManager.instances.forEach(i => i.update());
17
17
  });
18
18
 
@@ -110,28 +110,23 @@ export class BreakpointManager {
110
110
  const index = this.order.indexOf(name);
111
111
  this.active = name;
112
112
  this.activeIndex = index;
113
- const activeBreakpoint = this.at(this.active);
114
- // Get arrays of breakpoints based on the order array
115
- const mapBreakpoints = n => this.at(n);
116
- // From breakpoint to end (highest)
117
- const max = this.order.slice(index).map(mapBreakpoints);
118
- const notMax = this.order.slice(0, index).map(mapBreakpoints);
119
- // From start up to this breakpoint
120
- const min = this.order.slice(0, index + 1).map(mapBreakpoints);
121
- const notMin = this.order.slice(index + 1).map(mapBreakpoints);
122
- const notOnly = this.order.slice().map(mapBreakpoints);
123
- notOnly.splice(index, 1);
124
-
125
- log(this, 'max:', max.map(b => b.name).join());
126
- log(this, 'min:', min.map(b => b.name).join());
127
-
128
- max.forEach(b => b._setDirection('max', true));
129
- min.forEach(b => b._setDirection('min', true));
130
- activeBreakpoint._setDirection('only', true);
113
+ // const activeBreakpoint = this.at(this.active);
114
+
115
+ // For each breakpoint, set its directional status based on the active index.
116
+ // This ensures the JS methods match the SCSS mixin behavior.
117
+ this.order.forEach((bpName, bpIndex) => {
118
+ const bp = this.breakpoints[bpName];
119
+ const activeIndex = this.activeIndex;
120
+
121
+ // at(NAME).min() is active if active breakpoint is >= NAME.
122
+ bp._setDirection('min', bpIndex <= activeIndex);
123
+
124
+ // at(NAME).max() is active if active breakpoint is < NAME.
125
+ bp._setDirection('max', bpIndex > activeIndex);
131
126
 
132
- notMax.forEach(b => b._setDirection('max', false));
133
- notMin.forEach(b => b._setDirection('min', false));
134
- notOnly.forEach(b => b._setDirection('only', false));
127
+ // at(NAME).only() is active if active breakpoint is == NAME.
128
+ bp._setDirection('only', bpIndex === activeIndex);
129
+ });
135
130
 
136
131
  // Set direction (extra info if needed)
137
132
  if (this.previousIndex !== null) {
@@ -246,18 +241,16 @@ class Breakpoint {
246
241
  this.directions[direction].change(active);
247
242
  }
248
243
  /**
249
- * Attach handler to be executed from the breakpoint and to all breakpoints below.
250
- * - If the browser resizes from a breakpoint below this breakpoint,
251
- * and above the breakpoint name specified, this handler will fire
244
+ * Attach handler to be executed from the breakpoint and to all breakpoints below (inclusive).
245
+ * This corresponds to a `max-width` media query in SCSS.
252
246
  * @param {Function} handler Handler to be executed
253
247
  */
254
248
  max(handler) {
255
249
  this.directions.max.add(handler);
256
250
  }
257
251
  /**
258
- * Attach handler to be executed from the breakpoint and to all breakpoints below.
259
- * - If the browser resizes from a breakpoint above this breakpoint,
260
- * and below the breakpoint name specified, this handler will fire
252
+ * Attach handler to be executed from the breakpoint and to all breakpoints above (inclusive).
253
+ * This corresponds to a `min-width` media query in SCSS.
261
254
  * @param {Function} handler Handler to be executed
262
255
  */
263
256
  min(handler) {
@@ -277,7 +270,11 @@ class Breakpoint {
277
270
  */
278
271
  remove(handler, direction) {
279
272
  const directions = direction ? [ direction ] : ['max', 'min', 'only'];
280
- directions.forEach(d => d.remove(handler));
273
+ directions.forEach(d => {
274
+ if (this.directions[d]) {
275
+ this.directions[d].remove(handler);
276
+ }
277
+ });
281
278
  }
282
279
 
283
280
  log(...msg) {
@@ -2,7 +2,7 @@
2
2
  * @module ui/collapsible
3
3
  */
4
4
 
5
- import { getName as getEventName } from "../events/index.js";
5
+ import { getUluEventName } from "../core/events.js";
6
6
  import { log, logError } from "../utils/class-logger.js";
7
7
  import { ensureId } from "../utils/id.js";
8
8
 
@@ -110,7 +110,7 @@ export class Collapsible {
110
110
  this.setState(startOpen);
111
111
  }
112
112
  createEvent(name, detail) {
113
- return new CustomEvent(getEventName("collapsible:" + name), { detail });
113
+ return new CustomEvent(getUluEventName("collapsible:" + name), { detail });
114
114
  }
115
115
  setState(isOpen, event) {
116
116
  const ctx = {
@@ -3,7 +3,7 @@
3
3
  * @description Manages groups of details (ie. onlyOneOpen at a time)
4
4
  */
5
5
 
6
- import { ComponentInitializer } from "../utils/system.js";
6
+ import { ComponentInitializer } from "../core/component.js";
7
7
 
8
8
  /**
9
9
  * Dialog Component Initializer
@@ -26,7 +26,7 @@ const defaults = {
26
26
  export function init() {
27
27
  initializer.init({
28
28
  withData: true,
29
- events: ["pageModified"],
29
+ coreEvents: ["pageModified"],
30
30
  setup({ element, data, initialize }) {
31
31
  setupGroup(element, data);
32
32
  initialize();
@@ -2,8 +2,8 @@
2
2
  * @module ui/dialog
3
3
  */
4
4
 
5
- import { getName } from "../events/index.js";
6
- import { ComponentInitializer } from "../utils/system.js";
5
+ import { getUluEventName } from "../core/events.js";
6
+ import { ComponentInitializer } from "../core/component.js";
7
7
  import { wasClickOutside, preventScroll as setupPreventScroll } from "@ulu/utils/browser/dom.js";
8
8
  import { pauseVideos as pauseYoutubeVideos, prepVideos as prepYoutubeVideos } from "../utils/pause-youtube-video.js";
9
9
 
@@ -73,7 +73,7 @@ export function setDefaults(options) {
73
73
  export function init() {
74
74
  // Initialize all the dialogs
75
75
  initializer.init({
76
- events: ["pageModified"],
76
+ coreEvents: ["pageModified"],
77
77
  withData: true,
78
78
  setup({ element, initialize, data }) {
79
79
  setupDialog(element, data);
@@ -84,7 +84,7 @@ export function init() {
84
84
  // Initialize all triggers (things that trigger opening a dialog)
85
85
  initializer.init({
86
86
  key: "trigger",
87
- events: ["pageModified"],
87
+ coreEvents: ["pageModified"],
88
88
  withData: true,
89
89
  setup({ element, initialize, data: dialogId }) {
90
90
  setupTrigger(element, dialogId);
@@ -137,8 +137,8 @@ export function setupDialog(dialog, userOptions) {
137
137
  // is finished which is after the click is complete
138
138
  let activeResizePointer;
139
139
 
140
- dialog.addEventListener(getName("resizer:start"), handleResizeStart);
141
- dialog.addEventListener(getName("resizer:end"), handleResizeEnd);
140
+ dialog.addEventListener(getUluEventName("resizer:start"), handleResizeStart);
141
+ dialog.addEventListener(getUluEventName("resizer:end"), handleResizeEnd);
142
142
  dialog.addEventListener("click", handleClicks);
143
143
 
144
144
  if (options.documentEnd) {
@@ -2,7 +2,7 @@
2
2
  * @module ui/flipcard
3
3
  */
4
4
 
5
- import { ComponentInitializer } from "../utils/system.js";
5
+ import { ComponentInitializer } from "../core/component.js";
6
6
  import { trimWhitespace } from "@ulu/utils/string.js";
7
7
  import { log, logError } from "../utils/class-logger.js";
8
8
 
@@ -20,7 +20,7 @@ export const initializer = new ComponentInitializer({
20
20
  export function init() {
21
21
  initializer.init({
22
22
  withData: true,
23
- events: ["pageModified"],
23
+ coreEvents: ["pageModified"],
24
24
  setup({ element, data, initialize }) {
25
25
  const options = Object.assign({}, data);
26
26
  const front = element.querySelector(initializer.attributeSelector("front"));
@@ -2,7 +2,7 @@
2
2
  * @module ui/grid
3
3
  */
4
4
 
5
- import { ComponentInitializer } from "../utils/system.js";
5
+ import { ComponentInitializer } from "../core/component.js";
6
6
  import { setPositionClasses } from "../utils/dom.js";
7
7
 
8
8
  /**
@@ -19,7 +19,7 @@ export const initializer = new ComponentInitializer({
19
19
  */
20
20
  export function init(classes) {
21
21
  initializer.init({
22
- events: ["pageModified", "pageResized"],
22
+ coreEvents: ["pageModified", "pageResized"],
23
23
  setup({ element, initialize }) {
24
24
  setPositionClasses(element, classes);
25
25
  initialize();
@@ -0,0 +1,161 @@
1
+ /**
2
+ * @module ui
3
+ * @description
4
+ * Public API for the UI modules.
5
+ *
6
+ * This file re-exports the internal implementations from the `ui` directory
7
+ * with new names where appropriate, defining the public-facing API for the
8
+ * library bundle.
9
+ *
10
+ * For internal library usage, import directly from the specific file within
11
+ * the `ui` directory (e.g., `import { ... } from './dialog.js'`).
12
+ *
13
+ * @internal How to Name Exports
14
+ *
15
+ * Each export is renamed with a prefix based on its source module's name
16
+ * (e.g., `init` from `dialog.js` becomes `dialogInit`). This is a critical
17
+ * part of the library's bundling strategy, which creates a single, "flat"
18
+ * module with uniquely named exports.
19
+ *
20
+ * This approach:
21
+ * 1. Prevents name collisions between modules that might use the same export
22
+ * names (like `init` or `defaults`).
23
+ * 2. Allows bundlers in consuming projects to perform dead-code elimination
24
+ * (tree-shaking) with maximum effectiveness.
25
+ *
26
+ * How To Add New Exports
27
+ *
28
+ * When adding a new export, follow the naming convention:
29
+ * `[moduleName][OriginalExportName]` (using camelCase).
30
+ *
31
+ * For example, to export `myFunction` from `./foo.js`, you would add:
32
+ * `myFunction as fooMyFunction`
33
+ *
34
+ * Please keep the exports within each block alphabetized.
35
+ */
36
+ export {
37
+ BreakpointManager
38
+ } from "./breakpoints.js";
39
+
40
+ export {
41
+ Collapsible
42
+ } from "./collapsible.js";
43
+
44
+ export {
45
+ init as detailsGroupInit,
46
+ initializer as detailsGroupInitializer,
47
+ setupGroup as detailsGroupSetupGroup
48
+ } from "./details-group.js";
49
+
50
+ export {
51
+ baseAttribute as dialogBaseAttribute,
52
+ closeAttribute as dialogCloseAttribute,
53
+ defaults as dialogDefaults,
54
+ getDialogOptions as dialogGetDialogOptions,
55
+ init as dialogInit,
56
+ initializer as dialogInitializer,
57
+ setDefaults as dialogSetDefaults,
58
+ setupDialog as dialogSetupDialog,
59
+ setupTrigger as dialogSetupTrigger,
60
+ } from "./dialog.js";
61
+
62
+ export {
63
+ Flipcard,
64
+ init as flipcardInit,
65
+ initializer as flipcardInitializer,
66
+ } from "./flipcard.js";
67
+
68
+ export {
69
+ init as gridInit,
70
+ initializer as gridInitializer,
71
+ } from "./grid.js";
72
+
73
+ export {
74
+ buildModal as modalBuilderBuildModal,
75
+ defaults as modalBuilderDefaults,
76
+ init as modalBuilderInit,
77
+ initializer as modalBuilderInitializer,
78
+ setDefaults as modalBuilderSetDefaults,
79
+ } from "./modal-builder.js";
80
+
81
+ export {
82
+ OverflowScroller
83
+ } from "./overflow-scroller.js";
84
+
85
+ export {
86
+ createPager as overflowScrollerCreatePager
87
+ } from "./overflow-scroller-pager.js";
88
+
89
+ export {
90
+ init as pageInit
91
+ } from "./page.js";
92
+
93
+ export {
94
+ getContentByTrigger as popoverGetContentByTrigger,
95
+ init as popoverInit,
96
+ initializer as popoverInitializer,
97
+ instances as popoverInstances,
98
+ Popover,
99
+ resolve as popoverResolve,
100
+ } from "./popover.js";
101
+
102
+ export {
103
+ attrs as printDetailsAttrs,
104
+ init as printDetailsInit
105
+ } from "./print-details.js";
106
+
107
+ export {
108
+ init as printInit
109
+ } from "./print.js";
110
+
111
+ export {
112
+ attachHandlers as proxyClickAttachHandlers,
113
+ defaults as proxyClickDefaults,
114
+ init as proxyClickInit,
115
+ initializer as proxyClickInitializer,
116
+ setDefaults as proxyClickSetDefaults,
117
+ setupProxy as proxyClickSetupProxy,
118
+ } from "./proxy-click.js";
119
+
120
+ export {
121
+ Resizer
122
+ } from "./resizer.js";
123
+
124
+ export {
125
+ init as scrollSliderInit,
126
+ initializer as scrollSliderInitializer,
127
+ } from "./scroll-slider.js";
128
+
129
+ export {
130
+ init as scrollpointInit,
131
+ initializer as scrollpointInitializer,
132
+ Scrollpoint,
133
+ } from "./scrollpoint.js";
134
+
135
+ export {
136
+ init as sliderInit,
137
+ initializer as sliderInitializer,
138
+ setupSlider as sliderSetupSlider,
139
+ Slider,
140
+ } from "./slider.js";
141
+
142
+ export {
143
+ init as tabsInit,
144
+ initializer as tabsInitializer,
145
+ instances as tabsInstances,
146
+ setup as tabsSetup,
147
+ } from "./tabs.js";
148
+
149
+ export {
150
+ defaults as themeToggleDefaults,
151
+ init as themeToggleInit,
152
+ initializer as themeToggleInitializer,
153
+ setDefaults as themeToggleSetDefaults,
154
+ setupToggle as themeToggleSetupToggle,
155
+ } from "./theme-toggle.js";
156
+
157
+ export {
158
+ init as tooltipInit,
159
+ initializer as tooltipInitializer,
160
+ Tooltip,
161
+ } from "./tooltip.js";
@@ -3,9 +3,9 @@
3
3
  * @description Note this module needs to be initialized before dialogs!
4
4
  */
5
5
 
6
- import { ComponentInitializer } from "../utils/system.js";
7
- import { wrapSettingString } from "../settings.js";
8
- import { getName } from "../events/index.js";
6
+ import { ComponentInitializer } from "../core/component.js";
7
+ import { wrapSettingString } from "../core/settings.js";
8
+ import { getCoreEventName } from "../core/events.js";
9
9
  import { Resizer } from "./resizer.js";
10
10
  import { baseAttribute, closeAttribute, defaults as dialogDefaults } from "./dialog.js";
11
11
  import { getElement } from "@ulu/utils/browser/dom.js";
@@ -158,7 +158,7 @@ export function setDefaults(options) {
158
158
  export function init() {
159
159
  initializer.init({
160
160
  withData: true,
161
- events: ["pageModified"],
161
+ coreEvents: ["pageModified"],
162
162
  setup({ element, data }) {
163
163
  buildModal(element, data);
164
164
  }
@@ -228,11 +228,11 @@ export function buildModal(content, options) {
228
228
 
229
229
  if (config.print) {
230
230
  let printClone;
231
- document.addEventListener(getName("beforePrint"), () => {
231
+ document.addEventListener(getCoreEventName("beforePrint"), () => {
232
232
  printClone = content.cloneNode(true);
233
233
  modal.after(printClone);
234
234
  });
235
- document.addEventListener(getName("afterPrint"), () => {
235
+ document.addEventListener(getCoreEventName("afterPrint"), () => {
236
236
  printClone.remove();
237
237
  });
238
238
  }
@@ -10,7 +10,7 @@
10
10
  * @todo - Document that user could use something like [https://github.com/LachlanArthur/scroll-snap-api/tree/master/src] to have it go between items
11
11
  *
12
12
  */
13
- import { wrapSettingString } from "../settings.js";
13
+ import { wrapSettingString } from "../core/settings.js";
14
14
  import { hasRequiredProps } from '@ulu/utils/object.js';
15
15
  import { logError } from "../utils/class-logger.js";
16
16
  const requiredElements = [
@@ -35,7 +35,7 @@ export class OverflowScroller {
35
35
  if (!hasRequiredProps(requiredElements)) {
36
36
  logError(this, 'Missing a required Element');
37
37
  }
38
- console.log(elements)
38
+ // console.log(elements)
39
39
  this.elements = {
40
40
  ...elements,
41
41
  ...this.createControls(elements.controls)
@@ -2,7 +2,7 @@
2
2
  * @module ui/popover
3
3
  */
4
4
 
5
- import { ComponentInitializer } from "../utils/system.js";
5
+ import { ComponentInitializer } from "../core/component.js";
6
6
  import { createFloatingUi } from "../utils/floating-ui.js";
7
7
  import { Collapsible } from "./collapsible.js";
8
8
 
@@ -37,7 +37,7 @@ export function init() {
37
37
  initializer.init({
38
38
  key: "trigger",
39
39
  withData: true,
40
- events: ["pageModified"],
40
+ coreEvents: ["pageModified"],
41
41
  setup({ element, data, initialize }) {
42
42
  if (instances.has(element)) return;
43
43
  const resolved = resolve(element, data);
@@ -2,7 +2,7 @@
2
2
  * @module ui/print-details
3
3
  */
4
4
 
5
- import { getName } from "../events/index.js";
5
+ import { getCoreEventName } from "../core/events.js";
6
6
 
7
7
  /**
8
8
  * Default data attributes
@@ -26,7 +26,7 @@ export function init(options) {
26
26
  const config = Object.assign({}, defaults, options);
27
27
 
28
28
  // Add flag and open each details that's closed
29
- document.addEventListener(getName("beforePrint"), () => {
29
+ document.addEventListener(getCoreEventName("beforePrint"), () => {
30
30
  document.querySelectorAll(config.selector).forEach(details => {
31
31
  if (!details.open) {
32
32
  details.setAttribute(attrs.opened, true);
@@ -35,7 +35,7 @@ export function init(options) {
35
35
  });
36
36
  });
37
37
  // When print ends find all flagged and close
38
- document.addEventListener(getName("afterPrint"), () => {
38
+ document.addEventListener(getCoreEventName("afterPrint"), () => {
39
39
  document.querySelectorAll(attrSelector("opened")).forEach(details => {
40
40
  details.removeAttribute(attrs.opened);
41
41
  details.open = false;
@@ -2,7 +2,7 @@
2
2
  * @module ui/print
3
3
  */
4
4
 
5
- import { ComponentInitializer } from "../utils/system.js";
5
+ import { ComponentInitializer } from "../core/component.js";
6
6
  import { getElement } from "@ulu/utils/browser/dom.js";
7
7
  import { printElement } from "@ulu/utils/browser/print.js";
8
8
 
@@ -28,7 +28,7 @@ const defaults = {
28
28
  export function init() {
29
29
  initializer.init({
30
30
  withData: true,
31
- events: ["pageModified"],
31
+ coreEvents: ["pageModified"],
32
32
  setup({ element, data, initialize }) {
33
33
  setupTrigger(element, data);
34
34
  initialize();