@ulu/frontend 0.1.0-beta.4 → 0.1.0-beta.41

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (295) hide show
  1. package/CHANGELOG.md +337 -1
  2. package/dist/ulu-frontend.min.css +1 -1
  3. package/dist/ulu-frontend.min.js +28 -27
  4. package/docs-dev/assets/main.js +832 -421
  5. package/docs-dev/assets/placeholder/icon-calendar.svg +1 -0
  6. package/docs-dev/assets/placeholder/icon-check.svg +1 -0
  7. package/docs-dev/assets/style.css +629 -233
  8. package/docs-dev/changelog/index.html +6090 -0
  9. package/docs-dev/changelog/updates-and-changes/index.html +5109 -0
  10. package/docs-dev/demos/accordion/index.html +904 -321
  11. package/docs-dev/demos/basic-hero/index.html +111 -0
  12. package/docs-dev/demos/breakpoints-manager/index.html +5246 -0
  13. package/docs-dev/demos/button/index.html +916 -323
  14. package/docs-dev/demos/button-verbose/index.html +5238 -0
  15. package/docs-dev/demos/callout/index.html +951 -328
  16. package/docs-dev/demos/captioned-figure/index.html +904 -321
  17. package/docs-dev/demos/card/index.html +970 -748
  18. package/docs-dev/demos/card-grid/index.html +5357 -0
  19. package/docs-dev/demos/card-new/index.html +5088 -0
  20. package/docs-dev/demos/card-old/index.html +5223 -0
  21. package/docs-dev/demos/card.1/index.html +5223 -0
  22. package/docs-dev/demos/card.TRASH/index.html +5541 -0
  23. package/docs-dev/demos/counter-list/index.html +5224 -0
  24. package/docs-dev/demos/css-icons/index.html +904 -321
  25. package/docs-dev/demos/data-grid/index.html +1014 -511
  26. package/docs-dev/demos/data-table/index.html +1064 -348
  27. package/docs-dev/demos/details-group/index.html +5267 -0
  28. package/docs-dev/demos/file-save/index.html +904 -321
  29. package/docs-dev/demos/flipcard/index.html +904 -321
  30. package/docs-dev/demos/form-theme/index.html +922 -352
  31. package/docs-dev/demos/hero/index.html +12 -4
  32. package/docs-dev/demos/image-grid/index.html +12 -4
  33. package/docs-dev/demos/index.html +904 -321
  34. package/docs-dev/demos/list-inline/index.html +5220 -0
  35. package/docs-dev/demos/list-inline.1/index.html +4727 -0
  36. package/docs-dev/demos/list-lines/index.html +5210 -0
  37. package/docs-dev/demos/menu-stack/index.html +975 -377
  38. package/docs-dev/demos/modals/index.html +1010 -357
  39. package/docs-dev/demos/nav-strip/index.html +924 -377
  40. package/docs-dev/demos/overlay-section/index.html +979 -326
  41. package/docs-dev/demos/popovers/index.html +0 -4628
  42. package/docs-dev/demos/print/index.html +904 -321
  43. package/docs-dev/demos/pull-quote/index.html +904 -321
  44. package/docs-dev/demos/rule/index.html +952 -357
  45. package/docs-dev/demos/scroll-slider/index.html +72 -106
  46. package/docs-dev/demos/scrollpoints/index.html +905 -322
  47. package/docs-dev/demos/slider/index.html +12 -4
  48. package/docs-dev/demos/spoke-spinner/index.html +904 -321
  49. package/docs-dev/demos/sticky-list/index.html +5223 -0
  50. package/docs-dev/demos/tabs/index.html +944 -325
  51. package/docs-dev/demos/tag/index.html +904 -321
  52. package/docs-dev/demos/theme-toggle/index.html +5279 -0
  53. package/docs-dev/demos/tile-grid-overlay/index.html +12 -4
  54. package/docs-dev/demos/tiles/index.html +904 -321
  55. package/docs-dev/demos/tooltip/index.html +904 -321
  56. package/docs-dev/guide/building-stylesheet/index.html +904 -321
  57. package/docs-dev/guide/developing-ulu-scss-module/index.html +904 -321
  58. package/docs-dev/guide/index.html +904 -321
  59. package/docs-dev/guide/updates-and-changes/index.html +5033 -0
  60. package/docs-dev/index.html +904 -321
  61. package/docs-dev/javascript/events/index.html +901 -320
  62. package/docs-dev/javascript/index.html +904 -321
  63. package/docs-dev/javascript/settings/index.html +5400 -0
  64. package/docs-dev/javascript/ui-breakpoints/index.html +916 -335
  65. package/docs-dev/javascript/ui-collapsible/index.html +901 -320
  66. package/docs-dev/javascript/ui-details-group/index.html +5322 -0
  67. package/docs-dev/javascript/ui-dialog/index.html +967 -371
  68. package/docs-dev/javascript/ui-flipcard/index.html +964 -327
  69. package/docs-dev/javascript/ui-grid/index.html +913 -358
  70. package/docs-dev/javascript/ui-modal-builder/index.html +914 -354
  71. package/docs-dev/javascript/ui-overflow-scroller/index.html +901 -320
  72. package/docs-dev/javascript/ui-overflow-scroller-pager/index.html +901 -320
  73. package/docs-dev/javascript/ui-page/index.html +901 -320
  74. package/docs-dev/javascript/ui-popover/index.html +911 -334
  75. package/docs-dev/javascript/ui-print/index.html +901 -328
  76. package/docs-dev/javascript/ui-print-details/index.html +901 -320
  77. package/docs-dev/javascript/ui-programmatic-modal/index.html +901 -320
  78. package/docs-dev/javascript/ui-proxy-click/index.html +990 -324
  79. package/docs-dev/javascript/ui-resizer/index.html +901 -320
  80. package/docs-dev/javascript/ui-scroll-slider/index.html +941 -328
  81. package/docs-dev/javascript/ui-scrollpoint/index.html +907 -333
  82. package/docs-dev/javascript/ui-slider/index.html +1099 -327
  83. package/docs-dev/javascript/ui-tabs/index.html +914 -370
  84. package/docs-dev/javascript/ui-theme-toggle/index.html +5410 -0
  85. package/docs-dev/javascript/ui-tooltip/index.html +940 -363
  86. package/docs-dev/javascript/utils-class-logger/index.html +901 -320
  87. package/docs-dev/javascript/utils-css/index.html +5224 -0
  88. package/docs-dev/javascript/utils-dom/index.html +1054 -339
  89. package/docs-dev/javascript/utils-file-save/index.html +901 -320
  90. package/docs-dev/javascript/utils-floating-ui/index.html +901 -320
  91. package/docs-dev/javascript/utils-id/index.html +901 -320
  92. package/docs-dev/javascript/utils-pause-youtube-video/index.html +901 -320
  93. package/docs-dev/javascript/utils-system/index.html +5527 -0
  94. package/docs-dev/sass/base/color/index.html +901 -320
  95. package/docs-dev/sass/base/elements/index.html +973 -392
  96. package/docs-dev/sass/base/index/index.html +959 -378
  97. package/docs-dev/sass/base/index.html +904 -321
  98. package/docs-dev/sass/base/keyframes/index.html +901 -320
  99. package/docs-dev/sass/base/layout/index.html +966 -385
  100. package/docs-dev/sass/base/normalize/index.html +901 -320
  101. package/docs-dev/sass/base/print/index.html +901 -320
  102. package/docs-dev/sass/base/root/index.html +901 -320
  103. package/docs-dev/sass/base/typography/index.html +901 -320
  104. package/docs-dev/sass/components/accordion/index.html +1026 -445
  105. package/docs-dev/sass/components/adaptive-spacing/index.html +1027 -446
  106. package/docs-dev/sass/components/badge/index.html +1005 -424
  107. package/docs-dev/sass/components/basic-hero/index.html +5385 -0
  108. package/docs-dev/sass/components/button/index.html +952 -371
  109. package/docs-dev/sass/components/button-verbose/index.html +1089 -433
  110. package/docs-dev/sass/components/callout/index.html +1086 -482
  111. package/docs-dev/sass/components/captioned-figure/index.html +1070 -374
  112. package/docs-dev/sass/components/card/index.html +1121 -491
  113. package/docs-dev/sass/components/card-grid/index.html +973 -392
  114. package/docs-dev/sass/components/counter-list/index.html +5458 -0
  115. package/docs-dev/sass/components/css-icon/index.html +1052 -464
  116. package/docs-dev/sass/components/data-grid/index.html +1087 -499
  117. package/docs-dev/sass/components/data-table/index.html +1154 -381
  118. package/docs-dev/sass/components/fill-context/index.html +901 -320
  119. package/docs-dev/sass/components/flipcard/index.html +1071 -459
  120. package/docs-dev/sass/components/flipcard-grid/index.html +960 -379
  121. package/docs-dev/sass/components/form-theme/index.html +1349 -672
  122. package/docs-dev/sass/components/hero/index.html +1016 -387
  123. package/docs-dev/sass/components/horizontal-rule/index.html +959 -378
  124. package/docs-dev/sass/components/image-grid/index.html +966 -385
  125. package/docs-dev/sass/components/index/index.html +1004 -419
  126. package/docs-dev/sass/components/index.html +904 -321
  127. package/docs-dev/sass/components/links/index.html +901 -320
  128. package/docs-dev/sass/components/list-inline/index.html +5399 -0
  129. package/docs-dev/sass/components/list-lines/index.html +1009 -432
  130. package/docs-dev/sass/components/list-ordered/index.html +903 -322
  131. package/docs-dev/sass/components/list-unordered/index.html +901 -320
  132. package/docs-dev/sass/components/menu-stack/index.html +1050 -456
  133. package/docs-dev/sass/components/modal/index.html +1032 -444
  134. package/docs-dev/sass/components/nav-strip/index.html +1023 -442
  135. package/docs-dev/sass/components/overlay-section/index.html +1010 -429
  136. package/docs-dev/sass/components/pager/index.html +1017 -436
  137. package/docs-dev/sass/components/placeholder-block/index.html +1017 -436
  138. package/docs-dev/sass/components/popover/index.html +1068 -451
  139. package/docs-dev/sass/components/pull-quote/index.html +1017 -436
  140. package/docs-dev/sass/components/ratio-box/index.html +969 -388
  141. package/docs-dev/sass/components/rule/index.html +972 -391
  142. package/docs-dev/sass/components/scroll-slider/index.html +1019 -450
  143. package/docs-dev/sass/components/skip-link/index.html +961 -380
  144. package/docs-dev/sass/components/slider/index.html +1023 -442
  145. package/docs-dev/sass/components/spoke-spinner/index.html +961 -380
  146. package/docs-dev/sass/components/sticky-list/index.html +5603 -0
  147. package/docs-dev/sass/components/tabs/index.html +1020 -439
  148. package/docs-dev/sass/components/tag/index.html +1064 -483
  149. package/docs-dev/sass/components/tile-button/index.html +1004 -423
  150. package/docs-dev/sass/components/tile-grid/index.html +1045 -464
  151. package/docs-dev/sass/components/tile-grid-overlay/index.html +940 -359
  152. package/docs-dev/sass/components/vignette/index.html +965 -378
  153. package/docs-dev/sass/components/wysiwyg/index.html +968 -387
  154. package/docs-dev/sass/core/breakpoint/index.html +1045 -450
  155. package/docs-dev/sass/core/button/index.html +1438 -857
  156. package/docs-dev/sass/core/color/index.html +1084 -496
  157. package/docs-dev/sass/core/cssvar/index.html +950 -369
  158. package/docs-dev/sass/core/element/index.html +1504 -782
  159. package/docs-dev/sass/core/index.html +901 -320
  160. package/docs-dev/sass/core/layout/index.html +1062 -462
  161. package/docs-dev/sass/core/path/index.html +953 -372
  162. package/docs-dev/sass/core/selector/index.html +952 -371
  163. package/docs-dev/sass/core/typography/index.html +1171 -590
  164. package/docs-dev/sass/core/units/index.html +984 -403
  165. package/docs-dev/sass/core/utils/index.html +1941 -500
  166. package/docs-dev/sass/helpers/color/index.html +901 -320
  167. package/docs-dev/sass/helpers/display/index.html +902 -321
  168. package/docs-dev/sass/helpers/index/index.html +956 -375
  169. package/docs-dev/sass/helpers/index.html +904 -321
  170. package/docs-dev/sass/helpers/print/index.html +843 -292
  171. package/docs-dev/sass/helpers/typography/index.html +901 -320
  172. package/docs-dev/sass/helpers/units/index.html +950 -369
  173. package/docs-dev/sass/helpers/utilities/index.html +903 -322
  174. package/docs-dev/sass/index.html +904 -321
  175. package/js/index.js +1 -0
  176. package/js/settings.js +95 -0
  177. package/js/ui/breakpoints.js +19 -16
  178. package/js/ui/collapsible.js +8 -1
  179. package/js/ui/details-group.js +112 -0
  180. package/js/ui/dialog.js +90 -42
  181. package/js/ui/dialog.todo +2 -36
  182. package/js/ui/flipcard.js +37 -57
  183. package/js/ui/grid.js +15 -13
  184. package/js/ui/index.js +1 -0
  185. package/js/ui/modal-builder.js +45 -54
  186. package/js/ui/overflow-scroller.js +6 -4
  187. package/js/ui/popover.js +38 -38
  188. package/js/ui/print.js +16 -25
  189. package/js/ui/programmatic-modal.js +9 -3
  190. package/js/ui/proxy-click.js +50 -36
  191. package/js/ui/scroll-slider.js +24 -30
  192. package/js/ui/scrollpoint.js +28 -64
  193. package/js/ui/slider.js +61 -62
  194. package/js/ui/tabs.js +23 -36
  195. package/js/ui/theme-toggle.js +331 -94
  196. package/js/ui/tooltip.js +27 -32
  197. package/js/utils/css.js +13 -0
  198. package/js/utils/dom.js +85 -8
  199. package/js/utils/font-awesome.js +18 -0
  200. package/js/utils/index.js +2 -1
  201. package/js/utils/system.js +154 -0
  202. package/package.json +10 -7
  203. package/scss/_breakpoint.scss +16 -3
  204. package/scss/_color.scss +9 -2
  205. package/scss/_element.scss +91 -0
  206. package/scss/_layout.scss +7 -8
  207. package/scss/_utils.scss +248 -13
  208. package/scss/components/README.todos +14 -0
  209. package/scss/components/_accordion.scss +18 -20
  210. package/scss/components/_badge.scss +3 -2
  211. package/scss/components/_basic-hero.scss +112 -0
  212. package/scss/components/_button-verbose.scss +102 -20
  213. package/scss/components/_callout.scss +127 -79
  214. package/scss/components/_captioned-figure.scss +23 -5
  215. package/scss/components/_card-grid.scss +1 -1
  216. package/scss/components/_card.scss +242 -88
  217. package/scss/components/_counter-list.scss +133 -0
  218. package/scss/components/_css-icon.scss +33 -28
  219. package/scss/components/_data-grid.scss +38 -9
  220. package/scss/components/_data-table.scss +44 -4
  221. package/scss/components/_flipcard.scss +21 -15
  222. package/scss/components/_form-theme.scss +146 -135
  223. package/scss/components/_hero.scss +12 -10
  224. package/scss/components/_index.scss +24 -0
  225. package/scss/components/_list-inline.scss +80 -0
  226. package/scss/components/_list-lines.scss +44 -33
  227. package/scss/components/_list-ordered.scss +0 -1
  228. package/scss/components/_menu-stack.scss +42 -26
  229. package/scss/components/_modal.scss +29 -19
  230. package/scss/components/_nav-strip.scss +25 -16
  231. package/scss/components/_overlay-section.scss +4 -6
  232. package/scss/components/_pager.scss +6 -6
  233. package/scss/components/_placeholder-block.scss +4 -4
  234. package/scss/components/_popover.scss +174 -73
  235. package/scss/components/_pull-quote.scss +13 -13
  236. package/scss/components/_ratio-box.scss +2 -5
  237. package/scss/components/_rule.scss +1 -1
  238. package/scss/components/_scroll-slider.scss +2 -6
  239. package/scss/components/_skip-link.scss +2 -1
  240. package/scss/components/_slider.scss +17 -38
  241. package/scss/components/_spoke-spinner.scss +2 -2
  242. package/scss/components/_sticky-list.scss +206 -0
  243. package/scss/components/_tabs.scss +4 -2
  244. package/scss/components/_tag.scss +1 -1
  245. package/scss/components/_vignette.scss +3 -5
  246. package/scss/helpers/_display.scss +15 -18
  247. package/scss/helpers/_print.scss +12 -7
  248. package/scss/helpers/_utilities.scss +42 -32
  249. package/types/index.d.ts +1 -0
  250. package/types/settings.d.ts +66 -0
  251. package/types/settings.d.ts.map +1 -0
  252. package/types/ui/breakpoints.d.ts +14 -14
  253. package/types/ui/breakpoints.d.ts.map +1 -1
  254. package/types/ui/collapsible.d.ts.map +1 -1
  255. package/types/ui/details-group.d.ts +38 -0
  256. package/types/ui/details-group.d.ts.map +1 -0
  257. package/types/ui/dialog.d.ts +20 -14
  258. package/types/ui/dialog.d.ts.map +1 -1
  259. package/types/ui/flipcard.d.ts +16 -10
  260. package/types/ui/flipcard.d.ts.map +1 -1
  261. package/types/ui/grid.d.ts +4 -6
  262. package/types/ui/grid.d.ts.map +1 -1
  263. package/types/ui/index.d.ts +1 -0
  264. package/types/ui/modal-builder.d.ts +8 -11
  265. package/types/ui/modal-builder.d.ts.map +1 -1
  266. package/types/ui/overflow-scroller.d.ts +2 -2
  267. package/types/ui/overflow-scroller.d.ts.map +1 -1
  268. package/types/ui/popover.d.ts +6 -7
  269. package/types/ui/popover.d.ts.map +1 -1
  270. package/types/ui/print.d.ts +0 -4
  271. package/types/ui/print.d.ts.map +1 -1
  272. package/types/ui/programmatic-modal.d.ts.map +1 -1
  273. package/types/ui/proxy-click.d.ts +19 -3
  274. package/types/ui/proxy-click.d.ts.map +1 -1
  275. package/types/ui/scroll-slider.d.ts +5 -7
  276. package/types/ui/scroll-slider.d.ts.map +1 -1
  277. package/types/ui/scrollpoint.d.ts +3 -8
  278. package/types/ui/scrollpoint.d.ts.map +1 -1
  279. package/types/ui/slider.d.ts +24 -14
  280. package/types/ui/slider.d.ts.map +1 -1
  281. package/types/ui/tabs.d.ts +6 -8
  282. package/types/ui/tabs.d.ts.map +1 -1
  283. package/types/ui/theme-toggle.d.ts +51 -7
  284. package/types/ui/theme-toggle.d.ts.map +1 -1
  285. package/types/ui/tooltip.d.ts +3 -5
  286. package/types/ui/tooltip.d.ts.map +1 -1
  287. package/types/utils/css.d.ts +11 -0
  288. package/types/utils/css.d.ts.map +1 -0
  289. package/types/utils/dom.d.ts +45 -6
  290. package/types/utils/dom.d.ts.map +1 -1
  291. package/types/utils/font-awesome.d.ts +5 -0
  292. package/types/utils/font-awesome.d.ts.map +1 -0
  293. package/types/utils/index.d.ts +1 -0
  294. package/types/utils/system.d.ts +113 -0
  295. package/types/utils/system.d.ts.map +1 -0
@@ -1,14 +1,7 @@
1
1
  /**
2
2
  * Init all instances currently in document
3
- * @param {Object} options Options to serve as defaults
4
3
  */
5
- export function init(options?: any): void;
6
- /**
7
- * Init all tabs within a certain context
8
- * @param {Node} context Element to init within
9
- * @param {Object} options Options to serve as defaults
10
- */
11
- export function initWithin(context: Node, options?: any): void;
4
+ export function init(): void;
12
5
  /**
13
6
  *
14
7
  * @param {Node} element Tablist Element
@@ -21,4 +14,9 @@ export function setup(element: Node, options?: Node): any;
21
14
  * @type {Array}
22
15
  */
23
16
  export const instances: any[];
17
+ /**
18
+ * Tabs Component Initializer
19
+ */
20
+ export const initializer: ComponentInitializer;
21
+ import { ComponentInitializer } from "../utils/system.js";
24
22
  //# sourceMappingURL=tabs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../js/ui/tabs.js"],"names":[],"mappings":"AAeA;;;GAGG;AACH,0CAcC;AAED;;;;GAIG;AACH,oCAHW,IAAI,uBAUd;AAED;;;;;GAKG;AACH,+BAJW,IAAI,YACJ,IAAI,OAuCd;AAlFD;;;GAGG;AACH,8BAA4B"}
1
+ {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../js/ui/tabs.js"],"names":[],"mappings":"AA2BA;;GAEG;AACH,6BAoBC;AAED;;;;;GAKG;AACH,+BAJW,IAAI,YACJ,IAAI,OA2Bd;AArED;;;GAGG;AACH,8BAA4B;AAE5B;;GAEG;AACH,+CAGG;qCAdkC,oBAAoB"}
@@ -1,14 +1,58 @@
1
+ /**
2
+ * @param {Object} options Change options used as default for dialogs, can then be overridden by data attribute settings on element
3
+ */
4
+ export function setDefaults(options: any): void;
1
5
  /**
2
6
  * Initialize everything in document
3
7
  * - This will only initialize elements once, it is safe to call on page changes
4
8
  */
5
9
  export function init(): void;
6
- export function setup(context?: Document): void;
7
- export namespace options {
8
- let darkTheme: string;
9
- let lightTheme: string;
10
- let defaultTheme: string;
11
- let darkIcon: string;
12
- let lightIcon: string;
10
+ /**
11
+ * Sets up a single toggle
12
+ * @param {HTMLElement} toggle A toggle to be setup
13
+ */
14
+ export function setupToggle(toggle: HTMLElement, userOptions: any): {
15
+ destroy: () => void;
16
+ toggle: HTMLElement;
17
+ options: any;
18
+ toggleState: (event: any) => void;
19
+ setState(themeKey: any): void;
20
+ };
21
+ /**
22
+ * Theme Toggle Component Initializer
23
+ */
24
+ export const initializer: ComponentInitializer;
25
+ export namespace defaults {
26
+ namespace themes {
27
+ namespace light {
28
+ let label: string;
29
+ let value: string;
30
+ let iconClass: string;
31
+ let targetClass: string;
32
+ let mediaQuery: string;
33
+ }
34
+ namespace dark {
35
+ let label_1: string;
36
+ export { label_1 as label };
37
+ let iconClass_1: string;
38
+ export { iconClass_1 as iconClass };
39
+ let targetClass_1: string;
40
+ export { targetClass_1 as targetClass };
41
+ let mediaQuery_1: string;
42
+ export { mediaQuery_1 as mediaQuery };
43
+ }
44
+ }
45
+ let target: string;
46
+ let group: any;
47
+ /**
48
+ * Optional callback to do something when the state changes
49
+ */
50
+ function onChange(_ctx: any): void;
51
+ let initialState: string;
52
+ let checkMediaQuery: boolean;
53
+ let savePreference: boolean;
54
+ let storagePrefix: string;
55
+ let debug: boolean;
13
56
  }
57
+ import { ComponentInitializer } from "../utils/system.js";
14
58
  //# sourceMappingURL=theme-toggle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"theme-toggle.d.ts","sourceRoot":"","sources":["../../js/ui/theme-toggle.js"],"names":[],"mappings":"AA6BA;;;GAGG;AACH,6BAOC;AAED,gDAeC"}
1
+ {"version":3,"file":"theme-toggle.d.ts","sourceRoot":"","sources":["../../js/ui/theme-toggle.js"],"names":[],"mappings":"AAkGA;;GAEG;AACH,gDAEC;AAED;;;GAGG;AACH,6BASC;AAED;;;GAGG;AACH,oCAFW,WAAW;;;;;;EA+FrB;AAhND;;GAEG;AACH,+CAGG;;;;;;;;;;;;;;;;;;;;;;;IAmDD;;OAEG;IACH,mCAAiB;;;;;;;qCAjEkB,oBAAoB"}
@@ -3,12 +3,9 @@
3
3
  */
4
4
  export function init(): void;
5
5
  /**
6
- * Query all popovers on current page and set them up
7
- * - Use this manually if needed
8
- * - Won't setup a popover more than once
6
+ * Tooltip Component Initializer
9
7
  */
10
- export function setup(): void;
11
- export function setupTrigger(trigger: any): Tooltip;
8
+ export const initializer: ComponentInitializer;
12
9
  /**
13
10
  * Tooltip
14
11
  * - Provides basic tooltip functionality
@@ -95,4 +92,5 @@ export class Tooltip {
95
92
  show(event: any): void;
96
93
  hide(event: any): void;
97
94
  }
95
+ import { ComponentInitializer } from "../utils/system.js";
98
96
  //# sourceMappingURL=tooltip.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../js/ui/tooltip.js"],"names":[],"mappings":"AAmBA;;GAEG;AACH,6BAGC;AAED;;;;GAIG;AACH,8BAGC;AAED,oDAOC;AAED;;;;GAIG;AACH;IACE;;OAEG;IACH;QACE;;;;WAIG;;QAEH;;;WAGG;;;;;QAKH;;;WAGG;qBADO,SAAO,IAAI;QAGrB;;WAEG;;QAEH;;;WAGG;;QAEH;;;WAGG;oBADO,aAAc;QAGxB;;;WAGG;oBADO,aAAc;QAGxB;;;WAGG;;QAEH;;WAEG;;QAUH;;;WAGG;;MAIH;IACF,kCAEE;IACF,mEAaC;IAPC,aAA+D;IAC/D,qBAAyF;IACzF,cAA+B;IAC/B,aAAkB;IAClB,gBAAmB;IAIrB,cAIC;IACD,2BAKC;IACD,gBAGC;IACD,uBAcC;IACD,gCASC;IACD,6BAkBC;IACD,uBAiCC;IACD,wBAiBC;IACD,wCAmBC;IACD,sDAEC;IACD,+BAEC;IADC,0BAA4E;IAE9E,gCAKC;IACD,uBAEC;IACD,uBAEC;CACF"}
1
+ {"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../js/ui/tooltip.js"],"names":[],"mappings":"AAuBA;;GAEG;AACH,6BAaC;AA5BD;;GAEG;AACH,+CAGG;AAwBH;;;;GAIG;AACH;IACE;;OAEG;IACH;QACE;;;;WAIG;;QAEH;;;WAGG;;;;;QAKH;;;WAGG;qBADO,SAAO,IAAI;QAGrB;;WAEG;;QAEH;;;WAGG;;QAEH;;;WAGG;oBADO,aAAc;QAGxB;;;WAGG;oBADO,aAAc;QAGxB;;;WAGG;;QAEH;;WAEG;;QAUH;;;WAGG;;MAIH;IACF,kCAEE;IACF,mEAaC;IAPC,aAA+D;IAC/D,qBAAyF;IACzF,cAA+B;IAC/B,aAAkB;IAClB,gBAAmB;IAIrB,cAIC;IACD,2BAKC;IACD,gBAGC;IACD,uBAcC;IACD,gCASC;IACD,6BAkBC;IACD,uBAiCC;IACD,wBAiBC;IACD,wCAmBC;IACD,sDAEC;IACD,+BAEC;IADC,0BAA4E;IAE9E,gCAKC;IACD,uBAEC;IACD,uBAEC;CACF;qCApRoC,oBAAoB"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @module utils/css
3
+ */
4
+ /**
5
+ * Generates a CSS custom property name with a given prefix.
6
+ * @param {string} prefix The prefix to apply to the custom property name.
7
+ * @param {string} propertyName The base name of the custom property.
8
+ * @returns {string} The fully formed CSS custom property name (e.g., "--prefix-propertyName").
9
+ */
10
+ export function getCustomProperty(prefix: string, propertyName: string): string;
11
+ //# sourceMappingURL=css.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"css.d.ts","sourceRoot":"","sources":["../../js/utils/css.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;;;;GAKG;AACH,0CAJW,MAAM,gBACN,MAAM,GACJ,MAAM,CAIlB"}
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Converts a data attribute name to its corresponding dataset property name.
3
+ * @param {string} dataAttribute - The data attribute name (e.g., "data-ulu-dialog").
4
+ * @returns {string} - The dataset property name (e.g., "uluDialog").
5
+ */
6
+ export function dataAttributeToDatasetKey(attribute: any): string;
1
7
  /**
2
8
  * Get an elements JSON dataset value
3
9
  * @param {Node} element
@@ -32,15 +38,48 @@ export function setPositionClasses(parent: Node, classes?: any): void;
32
38
  * Resolve a target to Element
33
39
  * @param {String|Node} target The selector or node/element
34
40
  * @param {Object} context [document] The context to query possible selectors from
41
+ * @return {HTMLElement} The element or null if not found
42
+ */
43
+ export function getElement(target: string | Node, context?: any): HTMLElement;
44
+ /**
45
+ * Resolve a target to Elements
46
+ * @param {String|Node} target The selector or node/element
47
+ * @param {Object} context [document] The context to query possible selectors from
48
+ * @return {Array} The elements or null if not found
49
+ */
50
+ export function getElements(target: string | Node, context?: any): any[];
51
+ /**
52
+ * Resolves a class input (string or array) into a consistent array of class names.
53
+ * @param {string|string[]} input - The class input, which can be a string, an array of strings, or any other value.
54
+ * @returns {string[]} An array of class names. Returns an empty array for invalid or falsy input.
55
+ * @example
56
+ * resolveClassArray("fas fa-check my-class"); // Returns ["fas", "fa-check", "my-class"]
57
+ * resolveClassArray(["another-class", "yet-another-class"]); // Returns ["another-class", "yet-another-class"]
58
+ * resolveClassArray("single-class"); // Returns ["single-class"]
59
+ */
60
+ export function resolveClasses(classes: any): string[];
61
+ /**
62
+ * Sets a CSS custom property equal to the scrollbar width.
63
+ * @param {object} options - Configuration options.
64
+ * @param {HTMLElement} [options.scrollableChild=document.body] - An element that is a child of a scrollable container (used for width calculation).
65
+ * @param {Window|HTMLElement} [options.container=window] - The container that can be scrolled (used for width calculation).
66
+ * @param {HTMLElement} [options.propertyElement=document.documentElement] - The element to which the custom property will be added. Defaults to document.documentElement for :root access.
67
+ * @param {string} [options.propName="--ulu-scrollbar-width"] - The name of the custom property to set.
35
68
  */
36
- export function getElement(target: string | Node, context?: any): any;
69
+ export function addScrollbarProperty(options: {
70
+ scrollableChild?: HTMLElement;
71
+ container?: Window | HTMLElement;
72
+ propertyElement?: HTMLElement;
73
+ propName?: string;
74
+ }): void;
37
75
  /**
38
- * Sets a CSS custom property equal to the scrollbar width
39
- * @param {Node} element The element that is the child of a scrollabel container
40
- * @param {Node} container The container that can be scrolled
41
- * @param {Stirng} propName Custom property to set
76
+ * Calculates the width of the scrollbar.
77
+ *
78
+ * @param {HTMLElement} [element=document.body] -The element that is the child of a scrollable container
79
+ * @param {Window|HTMLElement} [container=window] - The container that can be scrolled
80
+ * @returns {number} The width of the scrollbar in pixels.
42
81
  */
43
- export function addScrollbarProperty(element?: Node, container?: Node, propName?: Stirng): void;
82
+ export function getScrollbarWidth(element?: HTMLElement, container?: Window | HTMLElement): number;
44
83
  /**
45
84
  * @module utils/dom
46
85
  */
@@ -1 +1 @@
1
- {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../js/utils/dom.js"],"names":[],"mappings":"AAOA;;;;;GAKG;AACH,wCAJW,IAAI,oBAYd;AAED;;;;;;GAMG;AACH,gDAJW,IAAI,gBAEF,YAAa,CASzB;AAED;;GAEG;AACH,mEAMC;AAGD;;;;;;;;;GASG;AACH,2CAHa,IAAI,uBAoChB;AAED;;;;GAIG;AACH,mCAHW,SAAO,IAAI,sBAYrB;AAED;;;;;GAKG;AACH,+CAJW,IAAI,cACJ,IAAI,2BAMd;AAzHD;;GAEG;AAGH,qCAAqD"}
1
+ {"version":3,"file":"dom.d.ts","sourceRoot":"","sources":["../../js/utils/dom.js"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,2DAFa,MAAM,CAOlB;AAED;;;;;GAKG;AACH,wCAJW,IAAI,oBAYd;AAED;;;;;;GAMG;AACH,gDAJW,IAAI,gBAEF,YAAa,CASzB;AAED;;GAEG;AACH,mEAMC;AAGD;;;;;;;;;GASG;AACH,2CAHa,IAAI,uBAoChB;AAED;;;;;GAKG;AACH,mCAJW,SAAO,IAAI,kBAEV,WAAW,CAWtB;AAED;;;;;GAKG;AACH,oCAJW,SAAO,IAAI,wBAerB;AAED;;;;;;;;GAQG;AACH,8CANa,MAAM,EAAE,CAiBpB;AAED;;;;;;;GAOG;AACH;IALiC,eAAe,GAArC,WAAW;IACkB,SAAS,GAAtC,MAAM,GAAC,WAAW;IACI,eAAe,GAArC,WAAW;IACM,QAAQ,GAAzB,MAAM;SAehB;AAED;;;;;;GAMG;AACH,4CAJW,WAAW,cACX,MAAM,GAAC,WAAW,GAChB,MAAM,CAIlB;AAtMD;;GAEG;AAGH,qCAAqD"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Sets icon settings to Font Awesome icons
3
+ */
4
+ export function configureIcons(): void;
5
+ //# sourceMappingURL=font-awesome.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"font-awesome.d.ts","sourceRoot":"","sources":["../../js/utils/font-awesome.js"],"names":[],"mappings":"AAOA;;GAEG;AACH,uCAOC"}
@@ -5,5 +5,6 @@ export * as id from "./id.js";
5
5
  export * as index from "./index.js";
6
6
  export * as pauseYoutubeVideo from "./pause-youtube-video.js";
7
7
  export * as fileSave from "./file-save.js";
8
+ export * as fontAwesome from "./font-awesome.js";
8
9
  declare namespace ___Users_joescherben_Personal_Projects_ULU_frontend_js_utils_index_ { }
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,113 @@
1
+ /**
2
+ * Class serves as a utility for UI modules, handling the selection of elements and the initialization of corresponding component instances, ensuring consistent setup within the module
3
+ */
4
+ export class ComponentInitializer {
5
+ static defaults: {
6
+ type: any;
7
+ baseAttribute: any;
8
+ };
9
+ static requiredOptions: string[];
10
+ static hasRequiredOptions: Function;
11
+ /**
12
+ * Create a new instance of ComponentInitializer
13
+ * @param {Object} options Options for configuring the component initializer.
14
+ * @param {String} options.type Type of component (used for logs).
15
+ * @param {String} options.baseAttribute Prefix and base attribute name (used for base attribute and further element attribute names).
16
+ */
17
+ constructor(options: {
18
+ type: string;
19
+ baseAttribute: string;
20
+ });
21
+ options: any;
22
+ logTitle: string;
23
+ /**
24
+ * Initializes the component based on the provided configuration.
25
+ * @param {Object} config The initialization configuration.
26
+ * @param {Function} config.setup The setup function to call for each element.
27
+ * @param {String} config.key [null] The optional key to use with attribute selector.
28
+ * @param {Boolean} config.withData [null] Whether to retrieve element data.
29
+ * @param {Array} config.events [null] Ulu events that should call setup when dispatched (ie. pageModified, pageResized)
30
+ * @param {Boolean} config.onPageResized [null] Whether to bind event listener for page resize end
31
+ * @param {HTMLElement} config.context [document] The context to query within.
32
+ */
33
+ init(config: {
34
+ setup: Function;
35
+ key: string;
36
+ withData: boolean;
37
+ events: any[];
38
+ onPageResized: boolean;
39
+ context: HTMLElement;
40
+ }): void;
41
+ /**
42
+ * Processes the elements based on the provided configuration.
43
+ * @param {object} config The initialization configuration.
44
+ * @param {function} config.setup The setup function to call for each element.
45
+ * @param {string} config.key The optional key to use with attribute selector.
46
+ * @param {boolean} config.withData [false] Whether to retrieve element data.
47
+ * @param {boolean} config.onPageModified [true] Whether to bind event listener for page modifications.
48
+ * @param {HTMLElement} config.context [document] The context to query within.
49
+ */
50
+ setupElements(config: {
51
+ setup: Function;
52
+ key: string;
53
+ withData: boolean;
54
+ onPageModified: boolean;
55
+ context: HTMLElement;
56
+ }): void;
57
+ /**
58
+ * Get an attribute name
59
+ * @param {String} key Optional key, if no key will return baseAttribute if key will return key added to base
60
+ * @returns {String} String like data-ulu-dialog or data-ulu-dialog-element
61
+ */
62
+ getAttribute(key: string): string;
63
+ /**
64
+ * Create an attribute selector
65
+ * @param {String} key Optional key (see getAttribute)
66
+ */
67
+ attributeSelector(key: string): string;
68
+ /**
69
+ * Create an attribute selector for initial
70
+ * @return {String}
71
+ */
72
+ attributeSelectorInitial(key: any): string;
73
+ /**
74
+ * Queries all main elements of a component that have not been initialized and extracts their data attributes.
75
+ * @param {HTMLElement} context The context to query within.
76
+ * @param {Boolean} withData Include dataset from element (as optional JSON)
77
+ * @param {Node} context Element to query elements from
78
+ * @returns {Array<{element: HTMLElement, data: object, initialize: Function}>} An array of objects containing the elements, their data, and convenience function initialize() which when called will set the init attribute on the element
79
+ */
80
+ queryAllInitial(key: any, withData: boolean, context?: HTMLElement): Array<{
81
+ element: HTMLElement;
82
+ data: object;
83
+ initialize: Function;
84
+ }>;
85
+ /**
86
+ * Sets the init attribute on an element, marking it as initialized.
87
+ * @param {HTMLElement} element The element to initialize.
88
+ */
89
+ initializeElement(element: HTMLElement): void;
90
+ /**
91
+ * Get an elements dataset value as JSON or other value
92
+ * @return {*} The value of the dataset, if JSON will return object else will return string value or undefined
93
+ */
94
+ getData(element: any, key: any): any;
95
+ /**
96
+ * Will output namespaced console logs for the given initializer
97
+ */
98
+ log(...msgs: any[]): void;
99
+ /**
100
+ * Will output namespaced console warnings for the given initializer
101
+ */
102
+ warn(...msgs: any[]): void;
103
+ /**
104
+ * Will output namespaced console error for the given initializer
105
+ */
106
+ logError(...msgs: any[]): void;
107
+ }
108
+ /**
109
+ * Class serves as a base for representing individual occurrences of a UI component, providing a consistent structure for each
110
+ */
111
+ export class ComponentInstance {
112
+ }
113
+ //# sourceMappingURL=system.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../js/utils/system.js"],"names":[],"mappings":"AASA;;GAEG;AACH;IACE;;;MAGE;IACF,iCAGE;IACF,oCAEE;IAEF;;;;;OAKG;IACH;QAH2B,IAAI;QACJ,aAAa;OAUvC;IAFC,aAAwE;IACxE,iBAAgD;IAElD;;;;;;;;;OASG;IACH;QAP4B,KAAK;QACP,GAAG;QACF,QAAQ;QACV,MAAM;QACJ,aAAa;QACT,OAAO,EAA3B,WAAW;aAYrB;IACD;;;;;;;;OAQG;IACH;QAN4B,KAAK;QACP,GAAG,EAAlB,MAAM;QACU,QAAQ,EAAxB,OAAO;QACS,cAAc,EAA9B,OAAO;QACa,OAAO,EAA3B,WAAW;aAMrB;IACD;;;;OAIG;IACH,kCAGC;IACD;;;OAGG;IACH,uCAEC;IACD;;;OAGG;IACH,2CAEC;IACD;;;;;;OAMG;IACH,uDALW,WAAW,GAGT,MAAM;QAAC,OAAO,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,WAAU;KAAC,CAAC,CAS7E;IACD;;;OAGG;IACH,2BAFW,WAAW,QAIrB;IACD;;;OAGG;IACH,qCAGC;IACD;;OAEG;IACH,0BAEC;IACD;;OAEG;IACH,2BAEC;IACD;;OAEG;IACH,+BAEC;CACF;AAED;;GAEG;AACH;CAEC"}