@ulu/frontend 0.1.0-beta.99 → 0.2.0-beta.10

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 (563) hide show
  1. package/dist/README.md +12 -0
  2. package/{types/utils/system.d.ts → dist/es/core/component.d.ts} +7 -16
  3. package/dist/es/core/component.d.ts.map +1 -0
  4. package/dist/es/core/component.js +134 -0
  5. package/dist/es/core/events.d.ts +27 -0
  6. package/dist/es/core/events.d.ts.map +1 -0
  7. package/dist/es/core/events.js +45 -0
  8. package/dist/es/core/index.d.ts +4 -0
  9. package/{types/utils → dist/es/core}/index.d.ts.map +1 -1
  10. package/{types → dist/es/core}/settings.d.ts +1 -1
  11. package/dist/es/core/settings.d.ts.map +1 -0
  12. package/dist/es/core/settings.js +44 -0
  13. package/dist/es/index.d.ts +4 -0
  14. package/{types → dist/es}/index.d.ts.map +1 -1
  15. package/dist/es/index.js +125 -0
  16. package/{types → dist/es}/ui/breakpoints.d.ts +9 -9
  17. package/dist/es/ui/breakpoints.d.ts.map +1 -0
  18. package/dist/es/ui/breakpoints.js +194 -0
  19. package/{types → dist/es}/ui/collapsible.d.ts +28 -7
  20. package/dist/es/ui/collapsible.d.ts.map +1 -0
  21. package/dist/es/ui/collapsible.js +140 -0
  22. package/{types → dist/es}/ui/details-group.d.ts +1 -1
  23. package/dist/es/ui/details-group.d.ts.map +1 -0
  24. package/dist/es/ui/details-group.js +49 -0
  25. package/{types → dist/es}/ui/dialog.d.ts +3 -3
  26. package/dist/es/ui/dialog.d.ts.map +1 -0
  27. package/dist/es/ui/dialog.js +112 -0
  28. package/{types → dist/es}/ui/flipcard.d.ts +1 -1
  29. package/dist/es/ui/flipcard.d.ts.map +1 -0
  30. package/dist/es/ui/flipcard.js +97 -0
  31. package/{types → dist/es}/ui/grid.d.ts +2 -2
  32. package/dist/es/ui/grid.d.ts.map +1 -0
  33. package/dist/es/ui/grid.js +18 -0
  34. package/dist/es/ui/index.d.ts +23 -0
  35. package/{types → dist/es}/ui/index.d.ts.map +1 -1
  36. package/{types → dist/es}/ui/modal-builder.d.ts +22 -17
  37. package/dist/es/ui/modal-builder.d.ts.map +1 -0
  38. package/dist/es/ui/modal-builder.js +136 -0
  39. package/dist/es/ui/overflow-scroller-pager.d.ts.map +1 -0
  40. package/dist/es/ui/overflow-scroller-pager.js +28 -0
  41. package/{types → dist/es}/ui/overflow-scroller.d.ts +3 -3
  42. package/dist/es/ui/overflow-scroller.d.ts.map +1 -0
  43. package/dist/es/ui/overflow-scroller.js +90 -0
  44. package/dist/es/ui/page.d.ts.map +1 -0
  45. package/dist/es/ui/page.js +7 -0
  46. package/{types → dist/es}/ui/popover.d.ts +4 -4
  47. package/dist/es/ui/popover.d.ts.map +1 -0
  48. package/dist/es/ui/popover.js +77 -0
  49. package/dist/es/ui/print-details.d.ts.map +1 -0
  50. package/dist/es/ui/print-details.js +22 -0
  51. package/dist/es/ui/print.d.ts.map +1 -0
  52. package/dist/es/ui/print.js +34 -0
  53. package/{types → dist/es}/ui/programmatic-modal.d.ts +2 -2
  54. package/dist/es/ui/programmatic-modal.d.ts.map +1 -0
  55. package/dist/es/ui/programmatic-modal.js +55 -0
  56. package/{types → dist/es}/ui/proxy-click.d.ts +4 -4
  57. package/dist/es/ui/proxy-click.d.ts.map +1 -0
  58. package/dist/es/ui/proxy-click.js +44 -0
  59. package/{types → dist/es}/ui/resizer.d.ts +17 -17
  60. package/dist/es/ui/resizer.d.ts.map +1 -0
  61. package/dist/es/ui/resizer.js +242 -0
  62. package/{types → dist/es}/ui/scroll-slider.d.ts +1 -1
  63. package/dist/es/ui/scroll-slider.d.ts.map +1 -0
  64. package/dist/es/ui/scroll-slider.js +29 -0
  65. package/{types → dist/es}/ui/scrollpoint.d.ts +80 -12
  66. package/dist/es/ui/scrollpoint.d.ts.map +1 -0
  67. package/dist/es/ui/scrollpoint.js +178 -0
  68. package/{types → dist/es}/ui/slider.d.ts +16 -13
  69. package/dist/es/ui/slider.d.ts.map +1 -0
  70. package/dist/es/ui/slider.js +290 -0
  71. package/{types → dist/es}/ui/tabs.d.ts +2 -2
  72. package/dist/es/ui/tabs.d.ts.map +1 -0
  73. package/dist/es/ui/tabs.js +64 -0
  74. package/{types → dist/es}/ui/theme-toggle.d.ts +4 -4
  75. package/dist/es/ui/theme-toggle.d.ts.map +1 -0
  76. package/dist/es/ui/theme-toggle.js +190 -0
  77. package/{types → dist/es}/ui/tooltip.d.ts +5 -5
  78. package/dist/es/ui/tooltip.d.ts.map +1 -0
  79. package/dist/es/ui/tooltip.js +184 -0
  80. package/{types → dist/es}/utils/class-logger.d.ts +4 -4
  81. package/dist/es/utils/class-logger.d.ts.map +1 -0
  82. package/dist/es/utils/class-logger.js +37 -0
  83. package/dist/es/utils/css.d.ts.map +1 -0
  84. package/dist/es/utils/css.js +6 -0
  85. package/{types → dist/es}/utils/dom.d.ts +1 -1
  86. package/dist/es/utils/dom.d.ts.map +1 -0
  87. package/dist/es/utils/dom.js +29 -0
  88. package/{types → dist/es}/utils/file-save.d.ts +4 -1
  89. package/dist/es/utils/file-save.d.ts.map +1 -0
  90. package/dist/es/utils/file-save.js +46 -0
  91. package/{types → dist/es}/utils/floating-ui.d.ts +1 -1
  92. package/dist/es/utils/floating-ui.d.ts.map +1 -0
  93. package/dist/es/utils/floating-ui.js +46 -0
  94. package/dist/es/utils/font-awesome.d.ts.map +1 -0
  95. package/dist/es/utils/font-awesome.js +13 -0
  96. package/dist/es/utils/id.d.ts.map +1 -0
  97. package/dist/es/utils/id.js +11 -0
  98. package/dist/es/utils/index.d.ts +8 -0
  99. package/dist/es/utils/index.d.ts.map +1 -0
  100. package/dist/es/utils/pause-youtube-video.d.ts.map +1 -0
  101. package/dist/es/utils/pause-youtube-video.js +27 -0
  102. package/dist/umd/style.css +1 -0
  103. package/dist/umd/ulu-frontend.umd.js +70 -0
  104. package/lib/index.js +5 -0
  105. package/{js/utils/system.js → lib/js/core/component.js} +13 -12
  106. package/lib/js/core/events.js +98 -0
  107. package/lib/js/core/index.js +34 -0
  108. package/{js → lib/js/core}/settings.js +3 -3
  109. package/lib/js/exports.md +126 -0
  110. package/lib/js/index.js +7 -0
  111. package/{js → lib/js}/ui/breakpoints.js +40 -35
  112. package/{js → lib/js}/ui/collapsible.js +2 -2
  113. package/{js → lib/js}/ui/details-group.js +2 -2
  114. package/{js → lib/js}/ui/dialog.js +6 -6
  115. package/{js → lib/js}/ui/flipcard.js +2 -2
  116. package/{js → lib/js}/ui/grid.js +2 -2
  117. package/lib/js/ui/index.js +165 -0
  118. package/{js → lib/js}/ui/modal-builder.js +11 -9
  119. package/{js → lib/js}/ui/overflow-scroller.js +2 -2
  120. package/{js → lib/js}/ui/popover.js +2 -2
  121. package/{js → lib/js}/ui/print-details.js +3 -3
  122. package/{js → lib/js}/ui/print.js +2 -2
  123. package/{js → lib/js}/ui/programmatic-modal.js +3 -3
  124. package/{js → lib/js}/ui/proxy-click.js +2 -2
  125. package/{js → lib/js}/ui/resizer.js +2 -2
  126. package/{js → lib/js}/ui/scroll-slider.js +2 -2
  127. package/{js → lib/js}/ui/scrollpoint.js +2 -2
  128. package/{js → lib/js}/ui/slider.js +25 -16
  129. package/{js → lib/js}/ui/tabs.js +2 -2
  130. package/{js → lib/js}/ui/theme-toggle.js +5 -5
  131. package/{js → lib/js}/ui/tooltip.js +4 -4
  132. package/{js → lib/js}/utils/css.js +1 -1
  133. package/{js → lib/js}/utils/font-awesome.js +2 -2
  134. package/lib/js/utils/index.js +63 -0
  135. package/{scss → lib/scss}/_breakpoint.scss +4 -4
  136. package/{scss → lib/scss}/_button.scss +1 -0
  137. package/{scss → lib/scss}/_color.scss +42 -38
  138. package/{scss → lib/scss}/_element.scss +13 -2
  139. package/{scss → lib/scss}/_typography.scss +15 -0
  140. package/lib/scss/components/_accordion.scss +268 -0
  141. package/{scss → lib/scss}/components/_basic-hero.scss +1 -1
  142. package/lib/scss/components/_breadcrumb.scss +110 -0
  143. package/{scss → lib/scss}/components/_button.scss +23 -4
  144. package/{scss → lib/scss}/components/_card-grid.scss +8 -2
  145. package/lib/scss/components/_card.scss +655 -0
  146. package/lib/scss/components/_definition-list.scss +178 -0
  147. package/{scss → lib/scss}/components/_form-theme.scss +3 -3
  148. package/{scss → lib/scss}/components/_index.scss +25 -0
  149. package/{scss → lib/scss}/components/_menu-stack.scss +170 -16
  150. package/{scss → lib/scss}/components/_modal.scss +23 -13
  151. package/lib/scss/components/_progress-bar.scss +260 -0
  152. package/lib/scss/components/_progress-circle.scss +175 -0
  153. package/{scss → lib/scss}/components/_skeleton.scss +24 -20
  154. package/{scss → lib/scss}/components/_tag.scss +49 -7
  155. package/{scss → lib/scss}/helpers/_utilities.scss +22 -3
  156. package/package.json +65 -43
  157. package/.browserslistrc +0 -2
  158. package/.eslintrc +0 -17
  159. package/.prettierrc +0 -10
  160. package/CHANGELOG.md +0 -750
  161. package/deprecated/js/doc-ready.js +0 -28
  162. package/deprecated/js/drupal-programmatic-modal.js +0 -91
  163. package/deprecated/js/jquery-prototypes.js +0 -309
  164. package/deprecated/js/micromodal-modals.js +0 -196
  165. package/deprecated/js/mini-collapsible-popper-positioning.js +0 -126
  166. package/deprecated/js/mini-collapsible.js +0 -607
  167. package/deprecated/js/node-data-manager.js +0 -78
  168. package/deprecated/js/script-loader.js +0 -60
  169. package/deprecated/js/waypoints/README.md +0 -3
  170. package/deprecated/js/waypoints/anchor-menu.js +0 -76
  171. package/deprecated/js/waypoints/element-waypoint.js +0 -75
  172. package/deprecated/js/waypoints/examples/page-link-menu.md +0 -106
  173. package/deprecated/js/waypoints/state-in-attribute.js +0 -32
  174. package/dist/ulu-frontend.min.css +0 -1
  175. package/dist/ulu-frontend.min.js +0 -77
  176. package/docs-dev/.nojekyll +0 -1
  177. package/docs-dev/assets/chunks/modulepreload-polyfill.DaKOjhqt.js +0 -37
  178. package/docs-dev/assets/favicons/android-chrome-192x192.png +0 -0
  179. package/docs-dev/assets/favicons/android-chrome-256x256.png +0 -0
  180. package/docs-dev/assets/favicons/apple-touch-icon.png +0 -0
  181. package/docs-dev/assets/favicons/browserconfig.xml +0 -9
  182. package/docs-dev/assets/favicons/favicon-16x16.png +0 -0
  183. package/docs-dev/assets/favicons/favicon-32x32.png +0 -0
  184. package/docs-dev/assets/favicons/favicon.ico +0 -0
  185. package/docs-dev/assets/favicons/mstile-150x150.png +0 -0
  186. package/docs-dev/assets/favicons/safari-pinned-tab.svg +0 -1
  187. package/docs-dev/assets/favicons/site.webmanifest +0 -19
  188. package/docs-dev/assets/fonts/fontawesome/fa-brands-400.ttf +0 -0
  189. package/docs-dev/assets/fonts/fontawesome/fa-brands-400.woff2 +0 -0
  190. package/docs-dev/assets/fonts/fontawesome/fa-regular-400.ttf +0 -0
  191. package/docs-dev/assets/fonts/fontawesome/fa-regular-400.woff2 +0 -0
  192. package/docs-dev/assets/fonts/fontawesome/fa-solid-900.ttf +0 -0
  193. package/docs-dev/assets/fonts/fontawesome/fa-solid-900.woff2 +0 -0
  194. package/docs-dev/assets/fonts/fontawesome/fa-v4compatibility.ttf +0 -0
  195. package/docs-dev/assets/fonts/fontawesome/fa-v4compatibility.woff2 +0 -0
  196. package/docs-dev/assets/fonts/inter/Inter-Black.woff2 +0 -0
  197. package/docs-dev/assets/fonts/inter/Inter-BlackItalic.woff2 +0 -0
  198. package/docs-dev/assets/fonts/inter/Inter-Bold.woff2 +0 -0
  199. package/docs-dev/assets/fonts/inter/Inter-BoldItalic.woff2 +0 -0
  200. package/docs-dev/assets/fonts/inter/Inter-ExtraBold.woff2 +0 -0
  201. package/docs-dev/assets/fonts/inter/Inter-ExtraBoldItalic.woff2 +0 -0
  202. package/docs-dev/assets/fonts/inter/Inter-ExtraLight.woff2 +0 -0
  203. package/docs-dev/assets/fonts/inter/Inter-ExtraLightItalic.woff2 +0 -0
  204. package/docs-dev/assets/fonts/inter/Inter-Italic.woff2 +0 -0
  205. package/docs-dev/assets/fonts/inter/Inter-Light.woff2 +0 -0
  206. package/docs-dev/assets/fonts/inter/Inter-LightItalic.woff2 +0 -0
  207. package/docs-dev/assets/fonts/inter/Inter-Medium.woff2 +0 -0
  208. package/docs-dev/assets/fonts/inter/Inter-MediumItalic.woff2 +0 -0
  209. package/docs-dev/assets/fonts/inter/Inter-Regular.woff2 +0 -0
  210. package/docs-dev/assets/fonts/inter/Inter-SemiBold.woff2 +0 -0
  211. package/docs-dev/assets/fonts/inter/Inter-SemiBoldItalic.woff2 +0 -0
  212. package/docs-dev/assets/fonts/inter/Inter-Thin.woff2 +0 -0
  213. package/docs-dev/assets/fonts/inter/Inter-ThinItalic.woff2 +0 -0
  214. package/docs-dev/assets/fonts/inter/InterDisplay-Black.woff2 +0 -0
  215. package/docs-dev/assets/fonts/inter/InterDisplay-BlackItalic.woff2 +0 -0
  216. package/docs-dev/assets/fonts/inter/InterDisplay-Bold.woff2 +0 -0
  217. package/docs-dev/assets/fonts/inter/InterDisplay-BoldItalic.woff2 +0 -0
  218. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraBold.woff2 +0 -0
  219. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraBoldItalic.woff2 +0 -0
  220. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraLight.woff2 +0 -0
  221. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraLightItalic.woff2 +0 -0
  222. package/docs-dev/assets/fonts/inter/InterDisplay-Italic.woff2 +0 -0
  223. package/docs-dev/assets/fonts/inter/InterDisplay-Light.woff2 +0 -0
  224. package/docs-dev/assets/fonts/inter/InterDisplay-LightItalic.woff2 +0 -0
  225. package/docs-dev/assets/fonts/inter/InterDisplay-Medium.woff2 +0 -0
  226. package/docs-dev/assets/fonts/inter/InterDisplay-MediumItalic.woff2 +0 -0
  227. package/docs-dev/assets/fonts/inter/InterDisplay-Regular.woff2 +0 -0
  228. package/docs-dev/assets/fonts/inter/InterDisplay-SemiBold.woff2 +0 -0
  229. package/docs-dev/assets/fonts/inter/InterDisplay-SemiBoldItalic.woff2 +0 -0
  230. package/docs-dev/assets/fonts/inter/InterDisplay-Thin.woff2 +0 -0
  231. package/docs-dev/assets/fonts/inter/InterDisplay-ThinItalic.woff2 +0 -0
  232. package/docs-dev/assets/fonts/inter/InterVariable-Italic.woff2 +0 -0
  233. package/docs-dev/assets/fonts/inter/InterVariable.woff2 +0 -0
  234. package/docs-dev/assets/fonts/inter/LICENSE.txt +0 -92
  235. package/docs-dev/assets/fonts/inter/inter.css +0 -37
  236. package/docs-dev/assets/main.js +0 -23312
  237. package/docs-dev/assets/placeholder/4065947-uhd_4096_2160_25fps.credits.txt +0 -2
  238. package/docs-dev/assets/placeholder/4065947-uhd_4096_2160_25fps.mp4 +0 -0
  239. package/docs-dev/assets/placeholder/icon-calendar.svg +0 -1
  240. package/docs-dev/assets/placeholder/icon-check.svg +0 -1
  241. package/docs-dev/assets/placeholder/image-1-attribution.txt +0 -7
  242. package/docs-dev/assets/placeholder/image-1-darkened.jpg +0 -0
  243. package/docs-dev/assets/placeholder/image-1-lightened.jpg +0 -0
  244. package/docs-dev/assets/placeholder/image-1.jpg +0 -0
  245. package/docs-dev/assets/style.css +0 -19153
  246. package/docs-dev/changelog/index.html +0 -7184
  247. package/docs-dev/demos/accordion/index.html +0 -5811
  248. package/docs-dev/demos/badge/index.html +0 -5655
  249. package/docs-dev/demos/badge-stack/index.html +0 -5636
  250. package/docs-dev/demos/badge.1/index.html +0 -5595
  251. package/docs-dev/demos/basic-hero/index.html +0 -111
  252. package/docs-dev/demos/breakpoints-manager/index.html +0 -5666
  253. package/docs-dev/demos/button/index.html +0 -5665
  254. package/docs-dev/demos/button-group/index.html +0 -5652
  255. package/docs-dev/demos/button-verbose/index.html +0 -5658
  256. package/docs-dev/demos/callout/index.html +0 -5704
  257. package/docs-dev/demos/captioned-figure/index.html +0 -5686
  258. package/docs-dev/demos/card/index.html +0 -5682
  259. package/docs-dev/demos/card-grid/index.html +0 -5777
  260. package/docs-dev/demos/counter-list/index.html +0 -5660
  261. package/docs-dev/demos/css-icons/index.html +0 -6298
  262. package/docs-dev/demos/data-grid/index.html +0 -6529
  263. package/docs-dev/demos/data-table/index.html +0 -5833
  264. package/docs-dev/demos/details-group/index.html +0 -5687
  265. package/docs-dev/demos/file-save/index.html +0 -5675
  266. package/docs-dev/demos/flipcard/index.html +0 -6224
  267. package/docs-dev/demos/form-theme/index.html +0 -5842
  268. package/docs-dev/demos/headline-label/index.html +0 -5622
  269. package/docs-dev/demos/hero/index.html +0 -309
  270. package/docs-dev/demos/image-grid/index.html +0 -165
  271. package/docs-dev/demos/index.html +0 -5613
  272. package/docs-dev/demos/list-inline/index.html +0 -5640
  273. package/docs-dev/demos/list-lines/index.html +0 -5630
  274. package/docs-dev/demos/menu-stack/index.html +0 -5769
  275. package/docs-dev/demos/modals/index.html +0 -5844
  276. package/docs-dev/demos/nav-strip/index.html +0 -5725
  277. package/docs-dev/demos/overlay-section/index.html +0 -5701
  278. package/docs-dev/demos/panel/index.html +0 -5682
  279. package/docs-dev/demos/popovers/index.html +0 -0
  280. package/docs-dev/demos/print/index.html +0 -5633
  281. package/docs-dev/demos/pull-quote/index.html +0 -5632
  282. package/docs-dev/demos/rail/index.html +0 -5730
  283. package/docs-dev/demos/rule/index.html +0 -5694
  284. package/docs-dev/demos/scroll-slider/index.html +0 -170
  285. package/docs-dev/demos/scrollpoints/index.html +0 -5651
  286. package/docs-dev/demos/skeleton/index.html +0 -5676
  287. package/docs-dev/demos/slider/index.html +0 -172
  288. package/docs-dev/demos/spoke-spinner/index.html +0 -5628
  289. package/docs-dev/demos/sticky-list/index.html +0 -5643
  290. package/docs-dev/demos/tabs/index.html +0 -5753
  291. package/docs-dev/demos/tag/index.html +0 -5633
  292. package/docs-dev/demos/theme-toggle/index.html +0 -5699
  293. package/docs-dev/demos/tile-grid-overlay/index.html +0 -390
  294. package/docs-dev/demos/tiles/index.html +0 -5882
  295. package/docs-dev/demos/tooltip/index.html +0 -5661
  296. package/docs-dev/demos/wysiwyg/index.html +0 -5672
  297. package/docs-dev/guide/building-stylesheet/index.html +0 -5682
  298. package/docs-dev/guide/developing-ulu-scss-module/index.html +0 -5734
  299. package/docs-dev/guide/index.html +0 -5615
  300. package/docs-dev/index.html +0 -5662
  301. package/docs-dev/javascript/events/index.html +0 -5811
  302. package/docs-dev/javascript/index.html +0 -5628
  303. package/docs-dev/javascript/settings/index.html +0 -5825
  304. package/docs-dev/javascript/ui-breakpoints/index.html +0 -6071
  305. package/docs-dev/javascript/ui-collapsible/index.html +0 -5738
  306. package/docs-dev/javascript/ui-details-group/index.html +0 -5742
  307. package/docs-dev/javascript/ui-dialog/index.html +0 -5787
  308. package/docs-dev/javascript/ui-flipcard/index.html +0 -5678
  309. package/docs-dev/javascript/ui-grid/index.html +0 -5653
  310. package/docs-dev/javascript/ui-modal-builder/index.html +0 -5901
  311. package/docs-dev/javascript/ui-overflow-scroller/index.html +0 -5611
  312. package/docs-dev/javascript/ui-overflow-scroller-pager/index.html +0 -5629
  313. package/docs-dev/javascript/ui-page/index.html +0 -5626
  314. package/docs-dev/javascript/ui-popover/index.html +0 -5661
  315. package/docs-dev/javascript/ui-print/index.html +0 -5670
  316. package/docs-dev/javascript/ui-print-details/index.html +0 -5641
  317. package/docs-dev/javascript/ui-programmatic-modal/index.html +0 -5611
  318. package/docs-dev/javascript/ui-proxy-click/index.html +0 -5740
  319. package/docs-dev/javascript/ui-resizer/index.html +0 -5946
  320. package/docs-dev/javascript/ui-scroll-slider/index.html +0 -5672
  321. package/docs-dev/javascript/ui-scrollpoint/index.html +0 -5851
  322. package/docs-dev/javascript/ui-slider/index.html +0 -5813
  323. package/docs-dev/javascript/ui-tabs/index.html +0 -5706
  324. package/docs-dev/javascript/ui-theme-toggle/index.html +0 -5830
  325. package/docs-dev/javascript/ui-tooltip/index.html +0 -5754
  326. package/docs-dev/javascript/utils-class-logger/index.html +0 -5746
  327. package/docs-dev/javascript/utils-css/index.html +0 -5644
  328. package/docs-dev/javascript/utils-dom/index.html +0 -5711
  329. package/docs-dev/javascript/utils-file-save/index.html +0 -5783
  330. package/docs-dev/javascript/utils-floating-ui/index.html +0 -5643
  331. package/docs-dev/javascript/utils-id/index.html +0 -5653
  332. package/docs-dev/javascript/utils-pause-youtube-video/index.html +0 -5661
  333. package/docs-dev/javascript/utils-system/index.html +0 -5947
  334. package/docs-dev/sass/base/color/index.html +0 -5644
  335. package/docs-dev/sass/base/elements/index.html +0 -5815
  336. package/docs-dev/sass/base/index/index.html +0 -5814
  337. package/docs-dev/sass/base/index.html +0 -5622
  338. package/docs-dev/sass/base/keyframes/index.html +0 -5646
  339. package/docs-dev/sass/base/layout/index.html +0 -5806
  340. package/docs-dev/sass/base/normalize/index.html +0 -5654
  341. package/docs-dev/sass/base/print/index.html +0 -5650
  342. package/docs-dev/sass/base/root/index.html +0 -5670
  343. package/docs-dev/sass/base/typography/index.html +0 -5670
  344. package/docs-dev/sass/components/accordion/index.html +0 -5979
  345. package/docs-dev/sass/components/adaptive-spacing/index.html +0 -5915
  346. package/docs-dev/sass/components/badge/index.html +0 -5881
  347. package/docs-dev/sass/components/badge-stack/index.html +0 -5811
  348. package/docs-dev/sass/components/basic-hero/index.html +0 -5805
  349. package/docs-dev/sass/components/button/index.html +0 -5799
  350. package/docs-dev/sass/components/button-group/index.html +0 -5803
  351. package/docs-dev/sass/components/button-verbose/index.html +0 -5986
  352. package/docs-dev/sass/components/callout/index.html +0 -5961
  353. package/docs-dev/sass/components/captioned-figure/index.html +0 -5904
  354. package/docs-dev/sass/components/card/index.html +0 -6219
  355. package/docs-dev/sass/components/card-grid/index.html +0 -5813
  356. package/docs-dev/sass/components/counter-list/index.html +0 -5887
  357. package/docs-dev/sass/components/css-icon/index.html +0 -5917
  358. package/docs-dev/sass/components/data-grid/index.html +0 -6052
  359. package/docs-dev/sass/components/data-table/index.html +0 -5988
  360. package/docs-dev/sass/components/fill-context/index.html +0 -5679
  361. package/docs-dev/sass/components/flipcard/index.html +0 -5980
  362. package/docs-dev/sass/components/flipcard-grid/index.html +0 -5800
  363. package/docs-dev/sass/components/form-theme/index.html +0 -6525
  364. package/docs-dev/sass/components/headline-label/index.html +0 -5833
  365. package/docs-dev/sass/components/hero/index.html +0 -5849
  366. package/docs-dev/sass/components/horizontal-rule/index.html +0 -5798
  367. package/docs-dev/sass/components/image-grid/index.html +0 -5805
  368. package/docs-dev/sass/components/index/index.html +0 -5859
  369. package/docs-dev/sass/components/index.html +0 -5622
  370. package/docs-dev/sass/components/links/index.html +0 -5649
  371. package/docs-dev/sass/components/list-inline/index.html +0 -5819
  372. package/docs-dev/sass/components/list-lines/index.html +0 -5840
  373. package/docs-dev/sass/components/list-ordered/index.html +0 -5645
  374. package/docs-dev/sass/components/list-unordered/index.html +0 -5649
  375. package/docs-dev/sass/components/menu-stack/index.html +0 -5992
  376. package/docs-dev/sass/components/modal/index.html +0 -6068
  377. package/docs-dev/sass/components/nav-strip/index.html +0 -5899
  378. package/docs-dev/sass/components/overlay-section/index.html +0 -5843
  379. package/docs-dev/sass/components/pager/index.html +0 -5961
  380. package/docs-dev/sass/components/panel/index.html +0 -6033
  381. package/docs-dev/sass/components/placeholder-block/index.html +0 -5883
  382. package/docs-dev/sass/components/popover/index.html +0 -5994
  383. package/docs-dev/sass/components/pull-quote/index.html +0 -5857
  384. package/docs-dev/sass/components/rail/index.html +0 -5823
  385. package/docs-dev/sass/components/ratio-box/index.html +0 -5803
  386. package/docs-dev/sass/components/rule/index.html +0 -5805
  387. package/docs-dev/sass/components/scroll-slider/index.html +0 -5904
  388. package/docs-dev/sass/components/skeleton/index.html +0 -5860
  389. package/docs-dev/sass/components/skip-link/index.html +0 -5789
  390. package/docs-dev/sass/components/slider/index.html +0 -5913
  391. package/docs-dev/sass/components/spoke-spinner/index.html +0 -5863
  392. package/docs-dev/sass/components/sticky-list/index.html +0 -6023
  393. package/docs-dev/sass/components/table-sticky/index.html +0 -5677
  394. package/docs-dev/sass/components/tabs/index.html +0 -5954
  395. package/docs-dev/sass/components/tag/index.html +0 -5964
  396. package/docs-dev/sass/components/tile-button/index.html +0 -5844
  397. package/docs-dev/sass/components/tile-grid/index.html +0 -5979
  398. package/docs-dev/sass/components/tile-grid-overlay/index.html +0 -5780
  399. package/docs-dev/sass/components/vignette/index.html +0 -5799
  400. package/docs-dev/sass/components/wysiwyg/index.html +0 -5827
  401. package/docs-dev/sass/core/breakpoint/index.html +0 -6454
  402. package/docs-dev/sass/core/button/index.html +0 -6538
  403. package/docs-dev/sass/core/color/index.html +0 -6520
  404. package/docs-dev/sass/core/cssvar/index.html +0 -6411
  405. package/docs-dev/sass/core/element/index.html +0 -6816
  406. package/docs-dev/sass/core/index.html +0 -5609
  407. package/docs-dev/sass/core/layout/index.html +0 -6388
  408. package/docs-dev/sass/core/path/index.html +0 -5778
  409. package/docs-dev/sass/core/selector/index.html +0 -5857
  410. package/docs-dev/sass/core/typography/index.html +0 -6783
  411. package/docs-dev/sass/core/units/index.html +0 -5822
  412. package/docs-dev/sass/core/utils/index.html +0 -8406
  413. package/docs-dev/sass/helpers/color/index.html +0 -5644
  414. package/docs-dev/sass/helpers/display/index.html +0 -5649
  415. package/docs-dev/sass/helpers/index/index.html +0 -5811
  416. package/docs-dev/sass/helpers/index.html +0 -5622
  417. package/docs-dev/sass/helpers/print/index.html +0 -5199
  418. package/docs-dev/sass/helpers/typography/index.html +0 -5672
  419. package/docs-dev/sass/helpers/units/index.html +0 -5818
  420. package/docs-dev/sass/helpers/utilities/index.html +0 -5649
  421. package/docs-dev/sass/index.html +0 -5673
  422. package/index.js +0 -7
  423. package/js/events/index.js +0 -108
  424. package/js/index.js +0 -11
  425. package/js/ui/index.js +0 -22
  426. package/js/utils/index.js +0 -8
  427. package/resources/drupal/twig-macros/accordion.twig +0 -99
  428. package/resources/drupal/twig-macros/dropdown.twig +0 -44
  429. package/resources/drupal/twig-macros/flipcard.twig +0 -69
  430. package/resources/drupal/twig-macros/image.twig +0 -30
  431. package/resources/drupal/twig-macros/layout.twig +0 -338
  432. package/resources/drupal/twig-macros/slider.twig +0 -214
  433. package/resources/drupal/twig-macros/tabs.twig +0 -84
  434. package/scss/components/_accordion.scss +0 -231
  435. package/scss/components/_card.scss +0 -596
  436. package/types/events/index.d.ts +0 -26
  437. package/types/events/index.d.ts.map +0 -1
  438. package/types/index.d.ts +0 -5
  439. package/types/settings.d.ts.map +0 -1
  440. package/types/ui/breakpoints.d.ts.map +0 -1
  441. package/types/ui/collapsible.d.ts.map +0 -1
  442. package/types/ui/details-group.d.ts.map +0 -1
  443. package/types/ui/dialog.d.ts.map +0 -1
  444. package/types/ui/flipcard.d.ts.map +0 -1
  445. package/types/ui/grid.d.ts.map +0 -1
  446. package/types/ui/index.d.ts +0 -24
  447. package/types/ui/modal-builder.d.ts.map +0 -1
  448. package/types/ui/overflow-scroller-pager.d.ts.map +0 -1
  449. package/types/ui/overflow-scroller.d.ts.map +0 -1
  450. package/types/ui/page.d.ts.map +0 -1
  451. package/types/ui/popover.d.ts.map +0 -1
  452. package/types/ui/print-details.d.ts.map +0 -1
  453. package/types/ui/print.d.ts.map +0 -1
  454. package/types/ui/programmatic-modal.d.ts.map +0 -1
  455. package/types/ui/proxy-click.d.ts.map +0 -1
  456. package/types/ui/resizer.d.ts.map +0 -1
  457. package/types/ui/scroll-slider.d.ts.map +0 -1
  458. package/types/ui/scrollpoint.d.ts.map +0 -1
  459. package/types/ui/slider.d.ts.map +0 -1
  460. package/types/ui/tabs.d.ts.map +0 -1
  461. package/types/ui/theme-toggle.d.ts.map +0 -1
  462. package/types/ui/tooltip.d.ts.map +0 -1
  463. package/types/utils/class-logger.d.ts.map +0 -1
  464. package/types/utils/css.d.ts.map +0 -1
  465. package/types/utils/dom.d.ts.map +0 -1
  466. package/types/utils/file-save.d.ts.map +0 -1
  467. package/types/utils/floating-ui.d.ts.map +0 -1
  468. package/types/utils/font-awesome.d.ts.map +0 -1
  469. package/types/utils/id.d.ts.map +0 -1
  470. package/types/utils/index.d.ts +0 -10
  471. package/types/utils/pause-youtube-video.d.ts.map +0 -1
  472. package/types/utils/system.d.ts.map +0 -1
  473. /package/{types → dist/es}/ui/overflow-scroller-pager.d.ts +0 -0
  474. /package/{types → dist/es}/ui/page.d.ts +0 -0
  475. /package/{types → dist/es}/ui/print-details.d.ts +0 -0
  476. /package/{types → dist/es}/ui/print.d.ts +0 -0
  477. /package/{types → dist/es}/utils/css.d.ts +0 -0
  478. /package/{types → dist/es}/utils/font-awesome.d.ts +0 -0
  479. /package/{types → dist/es}/utils/id.d.ts +0 -0
  480. /package/{types → dist/es}/utils/pause-youtube-video.d.ts +0 -0
  481. /package/{js → lib/js}/ui/dialog.todo +0 -0
  482. /package/{js → lib/js}/ui/overflow-scroller-pager.js +0 -0
  483. /package/{js → lib/js}/ui/page.js +0 -0
  484. /package/{js → lib/js}/utils/class-logger.js +0 -0
  485. /package/{js → lib/js}/utils/dom.js +0 -0
  486. /package/{js → lib/js}/utils/file-save.js +0 -0
  487. /package/{js → lib/js}/utils/floating-ui.js +0 -0
  488. /package/{js → lib/js}/utils/id.js +0 -0
  489. /package/{js → lib/js}/utils/pause-youtube-video.js +0 -0
  490. /package/{scss → lib/scss}/README.md +0 -0
  491. /package/{scss → lib/scss}/_cssvar.scss +0 -0
  492. /package/{scss → lib/scss}/_index.scss +0 -0
  493. /package/{scss → lib/scss}/_layout.scss +0 -0
  494. /package/{scss → lib/scss}/_path.scss +0 -0
  495. /package/{scss → lib/scss}/_selector.scss +0 -0
  496. /package/{scss → lib/scss}/_units.scss +0 -0
  497. /package/{scss → lib/scss}/_utils.scss +0 -0
  498. /package/{scss → lib/scss}/base/_color.scss +0 -0
  499. /package/{scss → lib/scss}/base/_elements.scss +0 -0
  500. /package/{scss → lib/scss}/base/_index.scss +0 -0
  501. /package/{scss → lib/scss}/base/_keyframes.scss +0 -0
  502. /package/{scss → lib/scss}/base/_layout.scss +0 -0
  503. /package/{scss → lib/scss}/base/_normalize.scss +0 -0
  504. /package/{scss → lib/scss}/base/_print.scss +0 -0
  505. /package/{scss → lib/scss}/base/_root.scss +0 -0
  506. /package/{scss → lib/scss}/base/_typography.scss +0 -0
  507. /package/{scss → lib/scss}/components/README.md +0 -0
  508. /package/{scss → lib/scss}/components/README.todos +0 -0
  509. /package/{scss → lib/scss}/components/_adaptive-spacing.scss +0 -0
  510. /package/{scss → lib/scss}/components/_badge-stack.scss +0 -0
  511. /package/{scss → lib/scss}/components/_badge.scss +0 -0
  512. /package/{scss → lib/scss}/components/_button-group.scss +0 -0
  513. /package/{scss → lib/scss}/components/_button-verbose.scss +0 -0
  514. /package/{scss → lib/scss}/components/_callout.scss +0 -0
  515. /package/{scss → lib/scss}/components/_captioned-figure.scss +0 -0
  516. /package/{scss → lib/scss}/components/_counter-list.scss +0 -0
  517. /package/{scss → lib/scss}/components/_css-icon.scss +0 -0
  518. /package/{scss → lib/scss}/components/_data-grid.scss +0 -0
  519. /package/{scss → lib/scss}/components/_data-table.scss +0 -0
  520. /package/{scss → lib/scss}/components/_fill-context.scss +0 -0
  521. /package/{scss → lib/scss}/components/_flipcard-grid.scss +0 -0
  522. /package/{scss → lib/scss}/components/_flipcard.scss +0 -0
  523. /package/{scss → lib/scss}/components/_headline-label.scss +0 -0
  524. /package/{scss → lib/scss}/components/_hero.scss +0 -0
  525. /package/{scss → lib/scss}/components/_horizontal-rule.scss +0 -0
  526. /package/{scss → lib/scss}/components/_image-grid.scss +0 -0
  527. /package/{scss → lib/scss}/components/_links.scss +0 -0
  528. /package/{scss → lib/scss}/components/_list-inline.scss +0 -0
  529. /package/{scss → lib/scss}/components/_list-lines.scss +0 -0
  530. /package/{scss → lib/scss}/components/_list-ordered.scss +0 -0
  531. /package/{scss → lib/scss}/components/_list-unordered.scss +0 -0
  532. /package/{scss → lib/scss}/components/_nav-strip.scss +0 -0
  533. /package/{scss → lib/scss}/components/_overlay-section.scss +0 -0
  534. /package/{scss → lib/scss}/components/_pager.scss +0 -0
  535. /package/{scss → lib/scss}/components/_panel.scss +0 -0
  536. /package/{scss → lib/scss}/components/_placeholder-block.scss +0 -0
  537. /package/{scss → lib/scss}/components/_popover.scss +0 -0
  538. /package/{scss → lib/scss}/components/_pull-quote.scss +0 -0
  539. /package/{scss → lib/scss}/components/_rail.scss +0 -0
  540. /package/{scss → lib/scss}/components/_ratio-box.scss +0 -0
  541. /package/{scss → lib/scss}/components/_rule.scss +0 -0
  542. /package/{scss → lib/scss}/components/_scroll-slider.scss +0 -0
  543. /package/{scss → lib/scss}/components/_skip-link.scss +0 -0
  544. /package/{scss → lib/scss}/components/_slider.scss +0 -0
  545. /package/{scss → lib/scss}/components/_spoke-spinner.scss +0 -0
  546. /package/{scss → lib/scss}/components/_sticky-list.scss +0 -0
  547. /package/{scss → lib/scss}/components/_tabs.scss +0 -0
  548. /package/{scss → lib/scss}/components/_tile-button.scss +0 -0
  549. /package/{scss → lib/scss}/components/_tile-grid-overlay.scss +0 -0
  550. /package/{scss → lib/scss}/components/_tile-grid.scss +0 -0
  551. /package/{scss → lib/scss}/components/_vignette.scss +0 -0
  552. /package/{scss → lib/scss}/components/_wysiwyg.scss +0 -0
  553. /package/{scss → lib/scss}/helpers/_color.scss +0 -0
  554. /package/{scss → lib/scss}/helpers/_display.scss +0 -0
  555. /package/{scss → lib/scss}/helpers/_index.scss +0 -0
  556. /package/{scss → lib/scss}/helpers/_print.scss +0 -0
  557. /package/{scss → lib/scss}/helpers/_typography.scss +0 -0
  558. /package/{scss → lib/scss}/helpers/_units.scss +0 -0
  559. /package/{scss → lib/scss}/stylesheets/README.md +0 -0
  560. /package/{scss → lib/scss}/stylesheets/base-styles.scss +0 -0
  561. /package/{scss → lib/scss}/stylesheets/component-styles.scss +0 -0
  562. /package/{scss → lib/scss}/stylesheets/full.scss +0 -0
  563. /package/{scss → lib/scss}/stylesheets/helper-styles.scss +0 -0
@@ -0,0 +1,290 @@
1
+ var w = Object.defineProperty;
2
+ var T = (a, t, s) => t in a ? w(a, t, { enumerable: !0, configurable: !0, writable: !0, value: s }) : a[t] = s;
3
+ var m = (a, t, s) => T(a, typeof t != "symbol" ? t + "" : t, s);
4
+ import { ComponentInitializer as x } from "../core/component.js";
5
+ import { wrapSettingString as b } from "../core/settings.js";
6
+ import { hasRequiredProps as S } from "@ulu/utils/object.js";
7
+ import { trimWhitespace as v } from "@ulu/utils/string.js";
8
+ import { debounce as k } from "@ulu/utils/performance.js";
9
+ import { logError as y, log as $, logWarning as L } from "../utils/class-logger.js";
10
+ import I from "swipe-listener";
11
+ const f = new x({
12
+ type: "slider",
13
+ baseAttribute: "data-ulu-slider"
14
+ }), A = f.attributeSelector("track"), z = f.attributeSelector("track-container"), D = f.attributeSelector("control-context"), M = f.attributeSelector("slide"), B = [], h = { once: !0 }, E = (a) => `${a}ms`, N = [
15
+ "container",
16
+ "trackContainer",
17
+ "track",
18
+ "slides"
19
+ ];
20
+ function W() {
21
+ f.init({
22
+ withData: !0,
23
+ coreEvents: ["pageModified"],
24
+ setup({ element: a, data: t, initialize: s }) {
25
+ q(a, t), s();
26
+ }
27
+ });
28
+ }
29
+ function q(a, t) {
30
+ const s = Object.assign({}, t), e = {
31
+ container: a,
32
+ track: a.querySelector(A),
33
+ trackContainer: a.querySelector(z),
34
+ controlContext: a.querySelector(D),
35
+ slides: a.querySelectorAll(M)
36
+ };
37
+ e.slides.length && B.push(new g(e, s, !1));
38
+ }
39
+ const l = class l {
40
+ static _initializeGlobals() {
41
+ l.globalsInitialized || (addEventListener("load", () => {
42
+ addEventListener("resize", k(() => {
43
+ l.instances.forEach((t) => t.handleResize());
44
+ }, 250));
45
+ }), l.reduceMotion = matchMedia("(prefers-reduced-motion: reduce)").matches, l.globalsInitialized = !0);
46
+ }
47
+ constructor(t, s) {
48
+ l._initializeGlobals();
49
+ const e = Object.assign({}, l.defaults, s);
50
+ this.options = e, this.slide = null, this.index = null, this.swipeInstance = null, this.swipeListener = null, this.swipeImageListener = null, this.transitioning = !1, S(N) || y(this, "Missing a required Element"), t.slides.length || y(this, "Missing slides"), this.slides = [...t.slides].map((i, n) => ({
51
+ element: i,
52
+ index: n,
53
+ number: n + 1
54
+ })), this.elements = {
55
+ ...t,
56
+ ...this.createControls(t.controlContext || t.container),
57
+ ...this.createNav(t.navContext || t.container)
58
+ }, this.transition = e.transition ? e.transitionFade || l.reduceMotion ? this.fadeTransition : this.slideTransition : this.noTransition, this.setup(), this.goto(0, null, "init"), $(this, "Slider Instance Created", this), l.instances.push(this);
59
+ }
60
+ /**
61
+ * Sliding mechanism needs translate updated on resize
62
+ */
63
+ handleResize() {
64
+ const { slide: t, transition: s, slideTransition: e } = this;
65
+ s === e && t && this.translateTo(t.element.offsetLeft, 0);
66
+ }
67
+ /**
68
+ * Goto to the previous slide
69
+ */
70
+ previous(t) {
71
+ const { index: s, slides: e } = this, i = e.length - 1, n = s - 1, o = n < 0 ? i : n;
72
+ this.emit("previous", [t, o]), this.goto(o, t, "previous");
73
+ }
74
+ /**
75
+ * Goto to the next slide
76
+ */
77
+ next(t) {
78
+ const { index: s, slides: e } = this, i = s + 1, n = i > e.length - 1 ? 0 : i;
79
+ this.emit("next", [t, n]), this.goto(n, t, "next");
80
+ }
81
+ /**
82
+ * Makes sure that no matter what the callback is called if transition event
83
+ * doesn't start or fails to finish/cancel
84
+ * @param {number} element
85
+ * @param {number} duration Duration to wait for complete
86
+ * @param {Function} beginTransition Css changes to begin/start transtion
87
+ */
88
+ ensureTransitionEnds(t, s, e) {
89
+ return new Promise((i) => {
90
+ const n = {}, o = () => {
91
+ clearTimeout(n.start), n.end = setTimeout(r, s + 500);
92
+ }, r = () => {
93
+ clearTimeout(n.start), clearTimeout(n.end), t.removeEventListener("transitionrun", o, h), t.removeEventListener("transitionend", r, h), t.removeEventListener("transitioncancel", r, h), i();
94
+ };
95
+ t.addEventListener("transitionrun", o, h), t.addEventListener("transitionend", r, h), t.addEventListener("transitioncancel", r, h), n.start = setTimeout(r, s + 500), t.style.transitionDuration = E(s), e(), s || r();
96
+ });
97
+ }
98
+ /**
99
+ * Translate the track to X
100
+ */
101
+ translateTo(t, s) {
102
+ const { track: e } = this.elements, i = () => e.style.transform = `translateX(-${t}px)`;
103
+ return e.style.willChange = "transform", this.ensureTransitionEnds(e, s, i).then(() => {
104
+ e.style.willChange = "auto";
105
+ });
106
+ }
107
+ /**
108
+ * Show's a specifc slide and hides others, except when passing true to show all
109
+ * then all slides will visible
110
+ */
111
+ setVisibility(t, s) {
112
+ s || (t.element.style.visibility = "visible"), this.slides.forEach((e) => {
113
+ e !== t && (e.element.style.visibility = s ? "visible" : "hidden");
114
+ });
115
+ }
116
+ /**
117
+ * Perform a fade on a single slide
118
+ */
119
+ fadeSlide(t, s) {
120
+ const { options: e } = this, { element: i } = t, n = s ? e.transitionDuration : e.transitionDurationExit;
121
+ return this.ensureTransitionEnds(i, n, () => {
122
+ i.style.opacity = s ? "1" : "0";
123
+ });
124
+ }
125
+ /**
126
+ * Handler for the entire slide transtion
127
+ */
128
+ async slideTransition({ slide: t, index: s, old: e, oldIndex: i, triggerType: n }) {
129
+ const o = this.slides.length, r = n === "previous", C = o - 1, u = s === 0 && i === C, d = s === C && i === 0;
130
+ let c, p = this.options.transitionDuration;
131
+ i && !u && !d && (p = p * Math.abs(i - s)), o < 3 ? u && !r ? c = e : d && (c = r ? t : e) : u ? c = e : d && (c = t), this.setVisibility(null, !0), c && (c.element.style.order = "-1", await this.translateTo(u ? 0 : e.element.offsetLeft, 0)), await this.translateTo(t.element.offsetLeft, p), c && (c.element.style.order = "0", await this.translateTo(t.element.offsetLeft, 0)), this.setVisibility(t, !1);
132
+ }
133
+ /**
134
+ * Handler for the entire fade transtion
135
+ */
136
+ async fadeTransition({ slide: t, old: s }) {
137
+ this.setVisibility(null, !0), s && (await this.fadeSlide(s, !1), s.element.style.order = "0"), t.element.style.order = "-1", await this.fadeSlide(t, !0), this.setVisibility(t, !1);
138
+ }
139
+ /**
140
+ * Handler for the entire NO transtion
141
+ */
142
+ noTransition({ slide: t, old: s }) {
143
+ return this.setVisibility(t, !1), s && (s.element.style.order = "0"), t.element.style.order = "-1", Promise.resolve();
144
+ }
145
+ goto(t, s, e) {
146
+ const {
147
+ slide: i,
148
+ index: n,
149
+ slides: o,
150
+ elements: r
151
+ } = this, C = e === "init", u = o[t], d = this.getClass("nav-button--active"), c = this.getClass("transition", !0), p = { slide: u, index: t, old: i, oldIndex: n, triggerType: e };
152
+ if (t === n) {
153
+ L(this, "Could not goto slide, still performing transition");
154
+ return;
155
+ }
156
+ if (this.transitioning) {
157
+ L(this, "Cancel goto(), same slide index as current slide");
158
+ return;
159
+ }
160
+ this.elements.track.inert = !0, this.transitioning = !0, i && i.navButton.classList.remove(d), u.navButton.classList.add(d), r.container.classList.add(c), this.transition(p).then(() => {
161
+ this.index = t, this.slide = u, this.transitioning = !1, this.elements.track.inert = !1, r.container.classList.remove(c), C || (u.element.focus(), this.emit("goto", [s, t, u]));
162
+ });
163
+ }
164
+ setup() {
165
+ const { container: t, track: s, trackContainer: e } = this.elements, i = v(this.trackCss()), n = v(this.trackContainerStyles()), o = v(this.slideCss());
166
+ s.setAttribute("style", i), e.setAttribute("style", n), this.slides.forEach((r) => {
167
+ r.element.setAttribute("style", o), r.element.setAttribute("tabindex", "-1");
168
+ }), t.classList.add(this.getClass()), this.options.swipeEnabled && this.setupSwipe();
169
+ }
170
+ setupSwipe() {
171
+ const t = this.elements.track.querySelectorAll("img");
172
+ this.swipeListener = (s) => {
173
+ this.onSwipe(s);
174
+ }, this.swipeImageListener = (s) => {
175
+ s.preventDefault();
176
+ }, this.slides.forEach((s) => {
177
+ const { element: e } = s;
178
+ s.swipeInstance = I(e, this.options.swipeOptions), e.addEventListener("swipe", this.swipeListener);
179
+ }), t.forEach((s) => {
180
+ s.addEventListener("dragstart", this.swipeImageListener);
181
+ });
182
+ }
183
+ onSwipe(t) {
184
+ const { directions: s } = t.detail, e = s.left ? "next" : s.right ? "previous" : null;
185
+ e && this[e](t);
186
+ }
187
+ trackContainerStyles() {
188
+ return `
189
+ overflow: hidden;
190
+ `;
191
+ }
192
+ transitionCss(t) {
193
+ const { transitionTimingFunction: s, transitionDuration: e } = this.options;
194
+ return `
195
+ transition-property: ${t};
196
+ transition-duration: ${E(e)};
197
+ transition-timing-function: ${s};
198
+ `;
199
+ }
200
+ trackCss() {
201
+ return `
202
+ display: flex;
203
+ position: relative;
204
+ list-style: none;
205
+ ${this.transition === this.slideTransition ? this.transitionCss("transform") : ""}
206
+ `;
207
+ }
208
+ slideCss() {
209
+ const t = this.transition === this.fadeTransition;
210
+ return `
211
+ width: 100%;
212
+ flex: 0 0 100%;
213
+ ${t ? this.transitionCss("opacity") : ""}
214
+ opacity: ${t ? "0" : "1"}
215
+ `;
216
+ }
217
+ getClass(t, s) {
218
+ const { namespace: e } = this.options;
219
+ return s ? `${e}--${t}` : t ? `${e}__${t}` : e;
220
+ }
221
+ createControlButton(t) {
222
+ const s = document.createElement("button");
223
+ return s.classList.add(this.getClass("control-button")), s.classList.add(this.getClass(`control-button--${t}`)), s.classList.add(...this.options.buttonClasses), s.setAttribute("data-slider-control", t), s.setAttribute("type", "button"), s.innerHTML = this.getControlContent(t), s;
224
+ }
225
+ createControls(t) {
226
+ const s = document.createElement("ul"), e = document.createElement("li"), i = document.createElement("li"), n = this.createControlButton("previous"), o = this.createControlButton("next");
227
+ return s.classList.add(this.getClass("controls")), e.appendChild(n), i.appendChild(o), s.appendChild(e), s.appendChild(i), n.addEventListener("click", this.previous.bind(this)), o.addEventListener("click", this.next.bind(this)), t.appendChild(s), {
228
+ controls: s,
229
+ previousItem: e,
230
+ nextItem: i,
231
+ previous: n,
232
+ next: o
233
+ };
234
+ }
235
+ createNav(t) {
236
+ const s = document.createElement("ul"), e = this.slides.map(this.createNavButton.bind(this)), i = e.map((n) => {
237
+ const o = document.createElement("li");
238
+ return o.appendChild(n), s.appendChild(o), o;
239
+ });
240
+ return s.classList.add(this.getClass("nav")), t.appendChild(s), {
241
+ nav: s,
242
+ navButtons: e,
243
+ navItems: i
244
+ };
245
+ }
246
+ createNavButton(t, s) {
247
+ const e = document.createElement("button");
248
+ return e.classList.add(this.getClass("nav-button")), e.setAttribute("type", "button"), e.innerHTML = this.getNavContent(t), t.navButton = e, e.addEventListener("click", this.goto.bind(this, s)), e;
249
+ }
250
+ getControlContent(t) {
251
+ const s = this.options[t === "next" ? "iconClassNext" : "iconClassPrevious"];
252
+ return `
253
+ <span class="${this.options.classAccessiblyHidden}">${t}</span>
254
+ <span class="${this.getClass("control-icon")} ${s}" aria-hidden="true"></span>
255
+ `;
256
+ }
257
+ getNavContent(t) {
258
+ return `<span class="${this.options.classAccessiblyHidden}">Item ${t.number}</span>`;
259
+ }
260
+ emit(t, s) {
261
+ this.options.events[t] && this.options.events[t].apply(this, s);
262
+ }
263
+ };
264
+ m(l, "instances", []), m(l, "globalsInitialized", !1), m(l, "reduceMotion", !1), /**
265
+ * Default options for slider
266
+ */
267
+ m(l, "defaults", {
268
+ classAccessiblyHidden: "hidden-visually",
269
+ namespace: "Slider",
270
+ events: {},
271
+ transition: !0,
272
+ transitionFade: !1,
273
+ transitionDuration: 700,
274
+ transitionDurationExit: 400,
275
+ transitionTimingFunction: "ease-in-out",
276
+ buttonClasses: ["button", "button--icon"],
277
+ iconClassPrevious: b("iconClassPrevious"),
278
+ iconClassNext: b("iconClassNext"),
279
+ swipeEnabled: !0,
280
+ swipeOptions: {
281
+ preventScroll: !0
282
+ }
283
+ });
284
+ let g = l;
285
+ export {
286
+ g as Slider,
287
+ W as init,
288
+ f as initializer,
289
+ q as setupSlider
290
+ };
@@ -1,3 +1,4 @@
1
+ import { ComponentInitializer } from '../core/component.js';
1
2
  /**
2
3
  * Init all instances currently in document
3
4
  */
@@ -8,7 +9,7 @@ export function init(): void;
8
9
  * @param {Node} options Options to set as defaults (can be overridden by element dataset options)
9
10
  * @return {Object} Instance object
10
11
  */
11
- export function setup(element: Node, options?: Node): any;
12
+ export function setup(element: Node, options?: Node): Object;
12
13
  /**
13
14
  * Array of current tab instances (exported if you need to interact with them)
14
15
  * @type {Array}
@@ -18,5 +19,4 @@ export const instances: any[];
18
19
  * Tabs Component Initializer
19
20
  */
20
21
  export const initializer: ComponentInitializer;
21
- import { ComponentInitializer } from "../utils/system.js";
22
22
  //# sourceMappingURL=tabs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../../lib/js/ui/tabs.js"],"names":[],"mappings":"AA2BA;;GAEG;AACH,6BAoBC;AAED;;;;;GAKG;AACH,+BAJW,IAAI,YACJ,IAAI,GACH,MAAM,CA0BjB;AArED;;;GAGG;AACH,8BAA4B;AAE5B;;GAEG;AACH,+CAGG;qCAdkC,sBAAsB"}
@@ -0,0 +1,64 @@
1
+ import f from "aria-tablist";
2
+ import { ComponentInitializer as u } from "../core/component.js";
3
+ const l = [], p = new u({
4
+ type: "tabs",
5
+ baseAttribute: "data-ulu-tablist"
6
+ });
7
+ function E() {
8
+ const e = () => {
9
+ p.init({
10
+ coreEvents: ["pageModified"],
11
+ withData: !0,
12
+ setup({ element: n, data: t, initialize: o }) {
13
+ m(n, t), o();
14
+ }
15
+ }), l.forEach(b);
16
+ };
17
+ document.readyState === "complete" ? e() : window.addEventListener("load", e);
18
+ }
19
+ function m(e, n = {}) {
20
+ const t = Object.assign({}, n);
21
+ t.vertical && (t.allArrows = !0);
22
+ const o = { element: e, options: n };
23
+ return o.ariaTablist = f(e, {
24
+ onOpen(...a) {
25
+ a.unshift(o), g.apply(null, a);
26
+ },
27
+ ...t
28
+ }), l.push(o), t.equalHeights && w(e), o;
29
+ }
30
+ function b({ options: e, ariaTablist: n }) {
31
+ if (e.openByUrlHash) {
32
+ const { hash: t } = window.location;
33
+ if (t && t.length > 1) {
34
+ const o = t.substring(1);
35
+ n.tabs.forEach((a) => {
36
+ o === a.id && n.open(a);
37
+ });
38
+ }
39
+ }
40
+ }
41
+ function g({ options: e }, n, t) {
42
+ e.openByUrlHash && window.history && window.history.replaceState(null, "", `#${t.id}`);
43
+ }
44
+ function w(e) {
45
+ const t = [...e.children].map((i) => document.querySelector(`[aria-labelledby="${i.id}"]`)), h = [...t[0].parentElement.querySelectorAll("img")].map((i) => d(i));
46
+ function d(i) {
47
+ return new Promise((r) => {
48
+ i.complete ? r(i) : (i.onload = r, i.onerror = r);
49
+ });
50
+ }
51
+ Promise.all(h).then(() => {
52
+ const i = t.map((s) => {
53
+ let c = s.offsetHeight;
54
+ return s.hidden && (s.hidden = !1, c = s.offsetHeight, s.setAttribute("hidden", "hidden")), c;
55
+ }), r = Math.max(...i);
56
+ t.forEach((s) => s.style.minHeight = `${r}px`);
57
+ });
58
+ }
59
+ export {
60
+ E as init,
61
+ p as initializer,
62
+ l as instances,
63
+ m as setup
64
+ };
@@ -1,7 +1,8 @@
1
+ import { ComponentInitializer } from '../core/component.js';
1
2
  /**
2
3
  * @param {Object} options Change options used as default for dialogs, can then be overridden by data attribute settings on element
3
4
  */
4
- export function setDefaults(options: any): void;
5
+ export function setDefaults(options: Object): void;
5
6
  /**
6
7
  * Initialize everything in document
7
8
  * - This will only initialize elements once, it is safe to call on page changes
@@ -17,7 +18,7 @@ export function setupToggle(toggle: HTMLElement, userOptions: any): {
17
18
  options: any;
18
19
  toggleState: (event: any) => void;
19
20
  setState(themeKey: any): void;
20
- };
21
+ } | undefined;
21
22
  /**
22
23
  * Theme Toggle Component Initializer
23
24
  */
@@ -43,7 +44,7 @@ export namespace defaults {
43
44
  }
44
45
  }
45
46
  let target: string;
46
- let group: any;
47
+ let group: null;
47
48
  /**
48
49
  * Optional callback to do something when the state changes
49
50
  */
@@ -54,5 +55,4 @@ export namespace defaults {
54
55
  let storagePrefix: string;
55
56
  let debug: boolean;
56
57
  }
57
- import { ComponentInitializer } from "../utils/system.js";
58
58
  //# sourceMappingURL=theme-toggle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"theme-toggle.d.ts","sourceRoot":"","sources":["../../../lib/js/ui/theme-toggle.js"],"names":[],"mappings":"AAmGA;;GAEG;AACH,qCAFW,MAAM,QAIhB;AAED;;;GAGG;AACH,6BASC;AAED;;;GAGG;AACH,oCAFW,WAAW;;;;;;cA+FrB;AAhND;;GAEG;AACH,+CAGG;;;;;;;;;;;;;;;;;;;;;;;IAmDD;;OAEG;IACH,mCAAiB;;;;;;;qCAlEkB,sBAAsB"}
@@ -0,0 +1,190 @@
1
+ import { ComponentInitializer as M } from "../core/component.js";
2
+ import { getCoreEventName as y } from "../core/events.js";
3
+ import { resolveClasses as b } from "../utils/dom.js";
4
+ import { hasRequiredProps as q } from "@ulu/utils/object.js";
5
+ import { getElements as I } from "@ulu/utils/browser/dom.js";
6
+ const c = new M({
7
+ type: "theme-toggle",
8
+ baseAttribute: "data-ulu-theme-toggle"
9
+ }), Q = c.attributeSelector("label"), $ = c.attributeSelector("icon"), L = c.getAttribute("remote"), v = c.getAttribute("init"), S = c.getAttribute("state"), j = (e) => document.querySelectorAll(
10
+ `[${L}="${e}"]`
11
+ ), C = (e) => document.querySelectorAll(
12
+ `[${L}="${e}"]:not([${v}])`
13
+ ), T = ["target"], O = q(T), E = (e, r) => e ? r() : null, P = {
14
+ /**
15
+ * Object of each theme that should be toggle/cycled through
16
+ */
17
+ themes: {
18
+ light: {
19
+ label: "Light",
20
+ value: "light",
21
+ iconClass: "fas fa-moon",
22
+ targetClass: "theme-light",
23
+ mediaQuery: "(prefers-color-scheme: light)"
24
+ },
25
+ dark: {
26
+ label: "Dark",
27
+ iconClass: "fas fa-sun",
28
+ targetClass: "theme-dark",
29
+ mediaQuery: "(prefers-color-scheme: dark)"
30
+ }
31
+ },
32
+ /**
33
+ * Required this is the element(s) that should be changed by a specific toggle
34
+ * - The element should have data-ulu-theme-toggle-target="SOME_IDENTIFIER"
35
+ */
36
+ target: "body",
37
+ /**
38
+ * Optional group to link remote toggles (toggles that follow the main one and can toggle too)
39
+ */
40
+ group: null,
41
+ /**
42
+ * Optional callback to do something when the state changes
43
+ */
44
+ onChange(e) {
45
+ },
46
+ /**
47
+ * The initial state for this component
48
+ * - May be overridden by saved preference or media query if options are enabled
49
+ */
50
+ initialState: "light",
51
+ /**
52
+ * Check the OS systems user preference via 'preferenceQuery' option
53
+ */
54
+ checkMediaQuery: !1,
55
+ /**
56
+ * Will store the preference in local storage so it persists between page loads
57
+ */
58
+ savePreference: !1,
59
+ /**
60
+ * The key that will be used to store the preference in local storage
61
+ * - This will be used as prefix in combination with group if defined
62
+ */
63
+ storagePrefix: "ulu-theme-",
64
+ /**
65
+ * Output information to console for debugging
66
+ */
67
+ debug: !1
68
+ };
69
+ let k = { ...P };
70
+ function G(e) {
71
+ k = Object.assign({}, k, e);
72
+ }
73
+ function H() {
74
+ c.init({
75
+ coreEvents: ["pageModified"],
76
+ withData: !0,
77
+ setup({ element: e, data: r, initialize: o }) {
78
+ R(e, r), o();
79
+ }
80
+ });
81
+ }
82
+ function R(e, r) {
83
+ const o = Object.assign({}, P, r);
84
+ if (!O(o)) {
85
+ console.error(`Missing a required option: ${T.join(", ")}`);
86
+ return;
87
+ }
88
+ const t = o.group, n = { toggle: e, options: o }, u = w(o);
89
+ if (!u) {
90
+ console.error("Unable to resolve initial key");
91
+ return;
92
+ }
93
+ p(u, n), e.addEventListener("click", a), l(), document.addEventListener(y("pageModified"), l);
94
+ function s(g) {
95
+ const d = I(o.target)[0].dataset.uluThemeToggleState, f = D(d, o);
96
+ if (!f) {
97
+ console.error("Issue getting next theme key");
98
+ return;
99
+ }
100
+ p(f, { ...n, event: g });
101
+ }
102
+ function a(g) {
103
+ s(g);
104
+ }
105
+ function l() {
106
+ if (!t) return;
107
+ C(t).forEach((i) => {
108
+ i.addEventListener("click", a), c.initializeElement(i);
109
+ });
110
+ }
111
+ function m() {
112
+ if (!t) return;
113
+ C(t).forEach((i) => {
114
+ i.removeEventListener("click", a), i.removeAttribute(v, "");
115
+ });
116
+ }
117
+ function h() {
118
+ e.removeEventListener("click", a), e.removeAttribute(v, ""), m(), document.removeEventListener(y("pageModified"), l);
119
+ }
120
+ return {
121
+ destroy: h,
122
+ toggle: e,
123
+ options: o,
124
+ toggleState: s,
125
+ setState(g) {
126
+ p(g, n);
127
+ }
128
+ };
129
+ }
130
+ function p(e, r) {
131
+ if (!e) {
132
+ console.error("Missing key");
133
+ return;
134
+ }
135
+ const { toggle: o, options: t } = r, { themes: n, group: u } = t, s = {
136
+ targets: I(t.target),
137
+ toggles: [o, ...u ? j(u) : []]
138
+ };
139
+ if (!s.targets.length || !s.toggles.length) {
140
+ console.error("Issue setting state, couldn't find needed elements", s);
141
+ return;
142
+ }
143
+ const a = n[e], l = z(e, n), m = {
144
+ ...r,
145
+ key: e,
146
+ elements: s,
147
+ theme: a,
148
+ otherThemes: l
149
+ };
150
+ t.debug && c.log("Set state context", m);
151
+ const h = x(l, "targetClass"), g = x(l, "iconClass");
152
+ s.targets.forEach((i) => {
153
+ i.setAttribute(S, e), i.classList.remove(...h), i.classList.add(...b(a.targetClass));
154
+ }), s.toggles.forEach((i) => {
155
+ const d = i.querySelector(Q), f = i.querySelector($);
156
+ d && (d.textContent = a.label), f && (f.classList.remove(...g), f.classList.add(...b(a.iconClass))), i.setAttribute(S, e);
157
+ }), t.onChange && t.onChange(m), t.savePreference && localStorage.setItem(A(t), e);
158
+ }
159
+ function w(e) {
160
+ const { savePreference: r, checkMediaQuery: o, themes: t, initialState: n } = e, u = A(e), s = E(r, () => localStorage.getItem(u)), a = E(o, () => K(t)), l = s || a || n;
161
+ return e.debug && (c.log("Preference Saved", s), c.log("Media Query Preference", a), c.log("Initial State:", n)), l || c.logError("Failed to resolve initial theme (pass 'initialState' to options)"), l;
162
+ }
163
+ function K(e) {
164
+ const r = Object.entries(e).find(([o, t]) => {
165
+ if (t.mediaQuery)
166
+ return window.matchMedia(t.mediaQuery).matches;
167
+ });
168
+ return r ? r[0] : null;
169
+ }
170
+ function D(e, r) {
171
+ const { themes: o } = r, t = Object.keys(o), n = t.findIndex((s) => s === e), u = n === -1 ? 0 : (n + 1) % t.length;
172
+ return t[u];
173
+ }
174
+ function z(e, r) {
175
+ return Object.entries(r).filter(([t]) => t !== e).map(([t, n]) => n);
176
+ }
177
+ function x(e, r) {
178
+ return e.reduce((o, t) => o.concat(b(t[r])), []);
179
+ }
180
+ function A(e) {
181
+ const { storagePrefix: r, group: o } = e;
182
+ return o ? `${r}${o}` : r;
183
+ }
184
+ export {
185
+ P as defaults,
186
+ H as init,
187
+ c as initializer,
188
+ G as setDefaults,
189
+ R as setupToggle
190
+ };
@@ -1,3 +1,4 @@
1
+ import { ComponentInitializer } from '../core/component.js';
1
2
  /**
2
3
  * Initialize default popover
3
4
  */
@@ -74,23 +75,22 @@ export class Tooltip {
74
75
  options: any;
75
76
  floatingOptions: any;
76
77
  elements: any;
77
- handlers: {};
78
- isOpen: boolean;
78
+ handlers: {} | undefined;
79
+ isOpen: boolean | undefined;
79
80
  setup(): void;
80
81
  setupAccessibility(): void;
81
82
  destroy(): void;
82
83
  getInnerContent(): any;
83
- getAnchorElement(): HTMLElement;
84
+ getAnchorElement(): HTMLElement | null;
84
85
  createContentElement(): void;
85
86
  attachHandlers(): void;
86
87
  destroyHandlers(): void;
87
88
  setState(isOpen: any, event: any): void;
88
89
  createEvent(name: any, detail: any): CustomEvent<any>;
89
90
  createFloatingInstance(): void;
90
- floatingCleanup: Function;
91
+ floatingCleanup: Function | null | undefined;
91
92
  destroyFloatingInstance(): void;
92
93
  show(event: any): void;
93
94
  hide(event: any): void;
94
95
  }
95
- import { ComponentInitializer } from "../utils/system.js";
96
96
  //# sourceMappingURL=tooltip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../lib/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,KAAK,QAAS;QAGxB;;;WAGG;oBADO,KAAK,QAAS;QAGxB;;;WAGG;;QAEH;;WAEG;;QAUH;;;WAGG;;MAIH;IACF,kCAEE;IACF,mEAaC;IAPC,aAA+D;IAC/D,qBAAyF;IACzF,cAA+B;IAC/B,yBAAkB;IAClB,4BAAmB;IAIrB,cAIC;IACD,2BAKC;IACD,gBAGC;IACD,uBAcC;IACD,uCASC;IACD,6BAkBC;IACD,uBAiCC;IACD,wBAiBC;IACD,wCAmBC;IACD,sDAEC;IACD,+BAEC;IADC,6CAA4E;IAE9E,gCAKC;IACD,uBAEC;IACD,uBAEC;CACF;qCApRoC,sBAAsB"}