@ulu/frontend 0.1.0-beta.32 → 0.1.0-beta.34

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 (214) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/dist/ulu-frontend.min.css +1 -1
  3. package/dist/ulu-frontend.min.js +23 -23
  4. package/docs-dev/changelog/index.html +161 -8
  5. package/docs-dev/demos/accordion/index.html +38 -8
  6. package/docs-dev/demos/button/index.html +38 -8
  7. package/docs-dev/demos/button-verbose/index.html +38 -8
  8. package/docs-dev/demos/callout/index.html +65 -8
  9. package/docs-dev/demos/captioned-figure/index.html +38 -8
  10. package/docs-dev/demos/card/index.html +59 -33
  11. package/docs-dev/demos/card-grid/index.html +42 -12
  12. package/docs-dev/demos/css-icons/index.html +38 -8
  13. package/docs-dev/demos/data-grid/index.html +38 -8
  14. package/docs-dev/demos/data-table/index.html +63 -33
  15. package/docs-dev/demos/details-group/index.html +71 -8
  16. package/docs-dev/demos/file-save/index.html +38 -8
  17. package/docs-dev/demos/flipcard/index.html +38 -8
  18. package/docs-dev/demos/form-theme/index.html +38 -8
  19. package/docs-dev/demos/index.html +38 -8
  20. package/docs-dev/demos/list-inline/index.html +38 -8
  21. package/docs-dev/demos/list-lines/index.html +38 -8
  22. package/docs-dev/demos/menu-stack/index.html +38 -8
  23. package/docs-dev/demos/modals/index.html +51 -10
  24. package/docs-dev/demos/nav-strip/index.html +38 -8
  25. package/docs-dev/demos/overlay-section/index.html +38 -8
  26. package/docs-dev/demos/popovers/index.html +38 -8
  27. package/docs-dev/demos/print/index.html +38 -8
  28. package/docs-dev/demos/pull-quote/index.html +38 -8
  29. package/docs-dev/demos/rule/index.html +38 -8
  30. package/docs-dev/demos/scrollpoints/index.html +39 -9
  31. package/docs-dev/demos/spoke-spinner/index.html +38 -8
  32. package/docs-dev/demos/sticky-list/index.html +38 -8
  33. package/docs-dev/demos/tabs/index.html +74 -8
  34. package/docs-dev/demos/tag/index.html +38 -8
  35. package/docs-dev/demos/theme-toggle/index.html +38 -8
  36. package/docs-dev/demos/tiles/index.html +38 -8
  37. package/docs-dev/demos/tooltip/index.html +38 -8
  38. package/docs-dev/guide/building-stylesheet/index.html +38 -8
  39. package/docs-dev/guide/developing-ulu-scss-module/index.html +38 -8
  40. package/docs-dev/guide/index.html +38 -8
  41. package/docs-dev/index.html +38 -8
  42. package/docs-dev/javascript/events/index.html +38 -8
  43. package/docs-dev/javascript/index.html +38 -8
  44. package/docs-dev/javascript/settings/index.html +38 -8
  45. package/docs-dev/javascript/ui-breakpoints/index.html +38 -8
  46. package/docs-dev/javascript/ui-collapsible/index.html +38 -8
  47. package/docs-dev/javascript/ui-details-group/index.html +56 -38
  48. package/docs-dev/javascript/ui-dialog/index.html +70 -25
  49. package/docs-dev/javascript/ui-flipcard/index.html +99 -13
  50. package/docs-dev/javascript/ui-grid/index.html +48 -44
  51. package/docs-dev/javascript/ui-modal-builder/index.html +49 -40
  52. package/docs-dev/javascript/ui-overflow-scroller/index.html +38 -8
  53. package/docs-dev/javascript/ui-overflow-scroller-pager/index.html +38 -8
  54. package/docs-dev/javascript/ui-page/index.html +38 -8
  55. package/docs-dev/javascript/ui-popover/index.html +46 -20
  56. package/docs-dev/javascript/ui-print/index.html +38 -16
  57. package/docs-dev/javascript/ui-print-details/index.html +38 -8
  58. package/docs-dev/javascript/ui-programmatic-modal/index.html +38 -8
  59. package/docs-dev/javascript/ui-proxy-click/index.html +125 -10
  60. package/docs-dev/javascript/ui-resizer/index.html +38 -8
  61. package/docs-dev/javascript/ui-scroll-slider/index.html +76 -14
  62. package/docs-dev/javascript/ui-scrollpoint/index.html +44 -21
  63. package/docs-dev/javascript/ui-slider/index.html +234 -13
  64. package/docs-dev/javascript/ui-tabs/index.html +49 -56
  65. package/docs-dev/javascript/ui-theme-toggle/index.html +43 -21
  66. package/docs-dev/javascript/ui-tooltip/index.html +45 -19
  67. package/docs-dev/javascript/utils-class-logger/index.html +38 -8
  68. package/docs-dev/javascript/utils-dom/index.html +63 -8
  69. package/docs-dev/javascript/utils-file-save/index.html +38 -8
  70. package/docs-dev/javascript/utils-floating-ui/index.html +38 -8
  71. package/docs-dev/javascript/utils-id/index.html +38 -8
  72. package/docs-dev/javascript/utils-pause-youtube-video/index.html +38 -8
  73. package/docs-dev/javascript/utils-system/index.html +5437 -0
  74. package/docs-dev/sass/base/color/index.html +38 -8
  75. package/docs-dev/sass/base/elements/index.html +38 -8
  76. package/docs-dev/sass/base/index/index.html +38 -8
  77. package/docs-dev/sass/base/index.html +38 -8
  78. package/docs-dev/sass/base/keyframes/index.html +38 -8
  79. package/docs-dev/sass/base/layout/index.html +38 -8
  80. package/docs-dev/sass/base/normalize/index.html +38 -8
  81. package/docs-dev/sass/base/print/index.html +38 -8
  82. package/docs-dev/sass/base/root/index.html +38 -8
  83. package/docs-dev/sass/base/typography/index.html +38 -8
  84. package/docs-dev/sass/components/accordion/index.html +39 -9
  85. package/docs-dev/sass/components/adaptive-spacing/index.html +38 -8
  86. package/docs-dev/sass/components/badge/index.html +38 -8
  87. package/docs-dev/sass/components/basic-hero/index.html +38 -8
  88. package/docs-dev/sass/components/button/index.html +38 -8
  89. package/docs-dev/sass/components/button-verbose/index.html +72 -37
  90. package/docs-dev/sass/components/callout/index.html +124 -35
  91. package/docs-dev/sass/components/captioned-figure/index.html +38 -8
  92. package/docs-dev/sass/components/card/index.html +38 -8
  93. package/docs-dev/sass/components/card-grid/index.html +38 -8
  94. package/docs-dev/sass/components/css-icon/index.html +38 -8
  95. package/docs-dev/sass/components/data-grid/index.html +38 -8
  96. package/docs-dev/sass/components/data-table/index.html +53 -16
  97. package/docs-dev/sass/components/fill-context/index.html +38 -8
  98. package/docs-dev/sass/components/flipcard/index.html +38 -8
  99. package/docs-dev/sass/components/flipcard-grid/index.html +38 -8
  100. package/docs-dev/sass/components/form-theme/index.html +84 -60
  101. package/docs-dev/sass/components/hero/index.html +38 -8
  102. package/docs-dev/sass/components/horizontal-rule/index.html +38 -8
  103. package/docs-dev/sass/components/image-grid/index.html +38 -8
  104. package/docs-dev/sass/components/index/index.html +38 -8
  105. package/docs-dev/sass/components/index.html +38 -8
  106. package/docs-dev/sass/components/links/index.html +38 -8
  107. package/docs-dev/sass/components/list-inline/index.html +38 -8
  108. package/docs-dev/sass/components/list-lines/index.html +38 -8
  109. package/docs-dev/sass/components/list-ordered/index.html +38 -8
  110. package/docs-dev/sass/components/list-unordered/index.html +38 -8
  111. package/docs-dev/sass/components/menu-stack/index.html +38 -8
  112. package/docs-dev/sass/components/modal/index.html +38 -8
  113. package/docs-dev/sass/components/nav-strip/index.html +38 -8
  114. package/docs-dev/sass/components/overlay-section/index.html +38 -8
  115. package/docs-dev/sass/components/pager/index.html +38 -8
  116. package/docs-dev/sass/components/placeholder-block/index.html +38 -8
  117. package/docs-dev/sass/components/popover/index.html +38 -8
  118. package/docs-dev/sass/components/pull-quote/index.html +38 -8
  119. package/docs-dev/sass/components/ratio-box/index.html +38 -8
  120. package/docs-dev/sass/components/rule/index.html +38 -8
  121. package/docs-dev/sass/components/scroll-slider/index.html +46 -28
  122. package/docs-dev/sass/components/skip-link/index.html +38 -8
  123. package/docs-dev/sass/components/slider/index.html +38 -8
  124. package/docs-dev/sass/components/spoke-spinner/index.html +40 -10
  125. package/docs-dev/sass/components/sticky-list/index.html +38 -8
  126. package/docs-dev/sass/components/tabs/index.html +38 -8
  127. package/docs-dev/sass/components/tag/index.html +40 -10
  128. package/docs-dev/sass/components/tile-button/index.html +38 -8
  129. package/docs-dev/sass/components/tile-grid/index.html +38 -8
  130. package/docs-dev/sass/components/tile-grid-overlay/index.html +38 -8
  131. package/docs-dev/sass/components/vignette/index.html +38 -8
  132. package/docs-dev/sass/components/wysiwyg/index.html +38 -8
  133. package/docs-dev/sass/core/breakpoint/index.html +38 -8
  134. package/docs-dev/sass/core/button/index.html +38 -8
  135. package/docs-dev/sass/core/color/index.html +38 -8
  136. package/docs-dev/sass/core/cssvar/index.html +38 -8
  137. package/docs-dev/sass/core/element/index.html +218 -47
  138. package/docs-dev/sass/core/index.html +38 -8
  139. package/docs-dev/sass/core/layout/index.html +94 -45
  140. package/docs-dev/sass/core/path/index.html +38 -8
  141. package/docs-dev/sass/core/selector/index.html +38 -8
  142. package/docs-dev/sass/core/typography/index.html +38 -8
  143. package/docs-dev/sass/core/units/index.html +38 -8
  144. package/docs-dev/sass/core/utils/index.html +302 -68
  145. package/docs-dev/sass/helpers/color/index.html +38 -8
  146. package/docs-dev/sass/helpers/display/index.html +38 -8
  147. package/docs-dev/sass/helpers/index/index.html +38 -8
  148. package/docs-dev/sass/helpers/index.html +38 -8
  149. package/docs-dev/sass/helpers/print/index.html +38 -8
  150. package/docs-dev/sass/helpers/typography/index.html +38 -8
  151. package/docs-dev/sass/helpers/units/index.html +38 -8
  152. package/docs-dev/sass/helpers/utilities/index.html +38 -8
  153. package/docs-dev/sass/index.html +38 -8
  154. package/js/ui/breakpoints.js +1 -2
  155. package/js/ui/details-group.js +33 -42
  156. package/js/ui/dialog.js +64 -41
  157. package/js/ui/dialog.todo +2 -36
  158. package/js/ui/flipcard.js +37 -57
  159. package/js/ui/grid.js +15 -13
  160. package/js/ui/modal-builder.js +24 -38
  161. package/js/ui/popover.js +38 -39
  162. package/js/ui/print.js +16 -25
  163. package/js/ui/proxy-click.js +50 -36
  164. package/js/ui/scroll-slider.js +24 -30
  165. package/js/ui/scrollpoint.js +27 -63
  166. package/js/ui/slider.js +53 -55
  167. package/js/ui/tabs.js +23 -36
  168. package/js/ui/theme-toggle.js +37 -41
  169. package/js/ui/tooltip.js +27 -32
  170. package/js/utils/dom.js +12 -0
  171. package/js/utils/system.js +154 -0
  172. package/package.json +1 -1
  173. package/scss/_element.scss +91 -0
  174. package/scss/_layout.scss +3 -1
  175. package/scss/_utils.scss +42 -0
  176. package/scss/components/_accordion.scss +1 -2
  177. package/scss/components/_button-verbose.scss +41 -36
  178. package/scss/components/_callout.scss +113 -53
  179. package/scss/components/_data-table.scss +3 -0
  180. package/scss/components/_form-theme.scss +24 -25
  181. package/scss/components/_scroll-slider.scss +0 -4
  182. package/types/ui/breakpoints.d.ts.map +1 -1
  183. package/types/ui/details-group.d.ts +7 -12
  184. package/types/ui/details-group.d.ts.map +1 -1
  185. package/types/ui/dialog.d.ts +19 -14
  186. package/types/ui/dialog.d.ts.map +1 -1
  187. package/types/ui/flipcard.d.ts +16 -10
  188. package/types/ui/flipcard.d.ts.map +1 -1
  189. package/types/ui/grid.d.ts +4 -6
  190. package/types/ui/grid.d.ts.map +1 -1
  191. package/types/ui/modal-builder.d.ts +5 -9
  192. package/types/ui/modal-builder.d.ts.map +1 -1
  193. package/types/ui/popover.d.ts +6 -7
  194. package/types/ui/popover.d.ts.map +1 -1
  195. package/types/ui/print.d.ts +0 -4
  196. package/types/ui/print.d.ts.map +1 -1
  197. package/types/ui/proxy-click.d.ts +19 -3
  198. package/types/ui/proxy-click.d.ts.map +1 -1
  199. package/types/ui/scroll-slider.d.ts +5 -7
  200. package/types/ui/scroll-slider.d.ts.map +1 -1
  201. package/types/ui/scrollpoint.d.ts +3 -8
  202. package/types/ui/scrollpoint.d.ts.map +1 -1
  203. package/types/ui/slider.d.ts +22 -12
  204. package/types/ui/slider.d.ts.map +1 -1
  205. package/types/ui/tabs.d.ts +6 -8
  206. package/types/ui/tabs.d.ts.map +1 -1
  207. package/types/ui/theme-toggle.d.ts +6 -13
  208. package/types/ui/theme-toggle.d.ts.map +1 -1
  209. package/types/ui/tooltip.d.ts +3 -5
  210. package/types/ui/tooltip.d.ts.map +1 -1
  211. package/types/utils/dom.d.ts +6 -0
  212. package/types/utils/dom.d.ts.map +1 -1
  213. package/types/utils/system.d.ts +113 -0
  214. package/types/utils/system.d.ts.map +1 -0
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @param {Object} options Change options used as default for dialogs, can then be overriden by data attribute settings on element
2
+ * @param {Object} options Change options used as default for dialogs, can then be overridden by data attribute settings on element
3
3
  */
4
4
  export function setDefaults(options: any): void;
5
5
  /**
@@ -7,12 +7,28 @@ export function setDefaults(options: any): void;
7
7
  * - This will only initialize elements once, it is safe to call on page changes
8
8
  */
9
9
  export function init(): void;
10
- export function setup(context?: Document): void;
11
- export function attachHandlers(proxy: any, child: any, options: any): void;
10
+ /**
11
+ * Setup a single proxy click
12
+ * @param {Node} proxy The container who's click should proxy the click of inner element with options.selector (defaults to [data-ulu-proxy-click-source])
13
+ * @param {Object} userOptions Options to override defaults
14
+ */
15
+ export function setupProxy(proxy: Node, userOptions: any): void;
16
+ /**
17
+ * Main function for attaching behaviors that enable proxy click
18
+ * @param {Node} proxy The container who's click should proxy the click of inner element with options.selector (defaults to [data-ulu-proxy-click-source])
19
+ * @param {Node} child The element who is being proxied and will get clicked if the proxy is clicked (as long as not an interactive element within proxy)
20
+ * @param {Object} config Merged/final options object
21
+ */
22
+ export function attachHandlers(proxy: Node, child: Node, config: any): void;
23
+ /**
24
+ * Proxy Click Component Initializer
25
+ */
26
+ export const initializer: ComponentInitializer;
12
27
  export namespace defaults {
13
28
  let selector: string;
14
29
  let selectorPreventBase: string;
15
30
  let selectorPrevent: string;
16
31
  let mousedownDurationPrevent: number;
17
32
  }
33
+ import { ComponentInitializer } from "../utils/system.js";
18
34
  //# sourceMappingURL=proxy-click.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"proxy-click.d.ts","sourceRoot":"","sources":["../../js/ui/proxy-click.js"],"names":[],"mappings":"AAiCA;;GAEG;AACH,gDAEC;AACD;;;GAGG;AACH,6BAGC;AAED,gDAaC;AACD,2EAiBC"}
1
+ {"version":3,"file":"proxy-click.d.ts","sourceRoot":"","sources":["../../js/ui/proxy-click.js"],"names":[],"mappings":"AAkCA;;GAEG;AACH,gDAEC;AACD;;;GAGG;AACH,6BASC;AAED;;;;GAIG;AACH,kCAHW,IAAI,0BAWd;AAED;;;;;GAKG;AACH,sCAJW,IAAI,SACJ,IAAI,qBAoBd;AAhFD;;GAEG;AACH,+CAGG;;;;;;;qCARkC,oBAAoB"}
@@ -3,11 +3,9 @@
3
3
  * - This will only initialize elements once, it is safe to call on page changes
4
4
  */
5
5
  export function init(): void;
6
- export function setup(): void;
7
- export namespace attrs {
8
- let init: string;
9
- let slider: string;
10
- let track: string;
11
- let controls: string;
12
- }
6
+ /**
7
+ * Scroll Slider Component Initializer
8
+ */
9
+ export const initializer: ComponentInitializer;
10
+ import { ComponentInitializer } from "../utils/system.js";
13
11
  //# sourceMappingURL=scroll-slider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scroll-slider.d.ts","sourceRoot":"","sources":["../../js/ui/scroll-slider.js"],"names":[],"mappings":"AA+BA;;;GAGG;AACH,6BAGC;AAED,8BAGC"}
1
+ {"version":3,"file":"scroll-slider.d.ts","sourceRoot":"","sources":["../../js/ui/scroll-slider.js"],"names":[],"mappings":"AAuBA;;;GAGG;AACH,6BASC;AA5BD;;GAEG;AACH,+CAGG;qCAVkC,oBAAoB"}
@@ -4,15 +4,9 @@
4
4
  */
5
5
  export function init(): void;
6
6
  /**
7
- * Setup all points and groups
7
+ * Scrollpoint Component Initializer
8
8
  */
9
- export function setup(): void;
10
- export namespace attrs {
11
- let init: string;
12
- let point: string;
13
- let group: string;
14
- let groupAnchors: string;
15
- }
9
+ export const initializer: ComponentInitializer;
16
10
  /**
17
11
  * Single scrollpoint
18
12
  * - Note "forward" and "reverse" refer to scroll directions
@@ -130,4 +124,5 @@ export class Scrollpoint {
130
124
  updateStateAttribute(isActive: any, isForward: any): void;
131
125
  destroy(): void;
132
126
  }
127
+ import { ComponentInitializer } from "../utils/system.js";
133
128
  //# sourceMappingURL=scrollpoint.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scrollpoint.d.ts","sourceRoot":"","sources":["../../js/ui/scrollpoint.js"],"names":[],"mappings":"AAyCA;;;GAGG;AACH,6BAGC;AAED;;GAEG;AACH,8BAqBC;;;;;;;AAID;;;;;;;GAOG;AACH;IACE;QACE;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;QAEH;;WAEG;;QAEH;;WAEG;;MAIH;IACF;;;;OAIG;IACH,qBAHW,IAAI,eAkCd;IArBC,aAAsB;IACtB,+BAAoB;IACpB,kBAAwB;IACxB,kBAAqB;IACrB,cAAsB;IACtB,sBAGC;IACD;;;;;;;MAOC;IAMH,kCAEC;IACD;;;;MAMC;IACD;;;OAGG;IACH,8BAkBC;IACD,sBAUC;IACD,kBAGC;IACD,8CAcC;IACD,qBAEC;IACD,mDAmBC;IACD,0DAMC;IACD,gBASC;CACF"}
1
+ {"version":3,"file":"scrollpoint.d.ts","sourceRoot":"","sources":["../../js/ui/scrollpoint.js"],"names":[],"mappings":"AA0BA;;;GAGG;AACH,6BAUC;AAtBD;;GAEG;AACH,+CAGG;AAkBH;;;;;;;GAOG;AACH;IACE;QACE;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;;QAEH;;WAEG;QAEH;;WAEG;;QAEH;;WAEG;;MAIH;IACF;;;;OAIG;IACH,qBAHW,IAAI,eAkCd;IArBC,aAAsB;IACtB,+BAAoB;IACpB,kBAAwB;IACxB,kBAAqB;IACrB,cAAsB;IACtB,sBAGC;IACD;;;;;;;MAOC;IAMH,kCAEC;IACD;;;;MAMC;IACD;;;OAGG;IACH,8BAkBC;IACD,sBAUC;IACD,kBAGC;IACD,8CAcC;IACD,qBAEC;IACD,mDAmBC;IACD,0DAMC;IACD,gBASC;CACF;qCAlQoC,oBAAoB"}
@@ -1,15 +1,25 @@
1
+ /**
2
+ * Initialize all sliders based on data attribute selectors
3
+ */
1
4
  export function init(): void;
2
- export function setup(): void;
3
- export function setupSlider(container: any): void;
4
- export namespace attrs {
5
- let init: string;
6
- let slider: string;
7
- let track: string;
8
- let trackContainer: string;
9
- let controls: string;
10
- }
5
+ /**
6
+ * Setup single slider instance from querying via data attribute selectors
7
+ * @param {Node} container The slide container to query children from
8
+ * @param {Object} options Options for slider class
9
+ */
10
+ export function setupSlider(container: Node, options: any): void;
11
+ /**
12
+ * Slider Component Initializer
13
+ */
14
+ export const initializer: ComponentInitializer;
15
+ /**
16
+ * Class that controls slider
17
+ */
11
18
  export class Slider {
12
19
  static instances: any[];
20
+ /**
21
+ * Default options for slider
22
+ */
13
23
  static defaults: {
14
24
  classAccessiblyHidden: string;
15
25
  namespace: string;
@@ -23,8 +33,7 @@ export class Slider {
23
33
  iconClassPrevious: any;
24
34
  iconClassNext: any;
25
35
  };
26
- constructor(elements: any, config: any, debug?: boolean);
27
- debug: boolean;
36
+ constructor(elements: any, config: any);
28
37
  options: any;
29
38
  slide: {
30
39
  element: any;
@@ -122,7 +131,8 @@ export class Slider {
122
131
  };
123
132
  createNavButton(slide: any, index: any): HTMLButtonElement;
124
133
  getControlContent(action: any): string;
125
- getNavContent(number: any): string;
134
+ getNavContent(slide: any): string;
126
135
  emit(name: any, args: any): void;
127
136
  }
137
+ import { ComponentInitializer } from "../utils/system.js";
128
138
  //# sourceMappingURL=slider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../js/ui/slider.js"],"names":[],"mappings":"AA+EA,6BAGC;AAED,8BAGC;AAED,kDAqBC;;;;;;;;AAED;IACE,wBAAsB;IACtB;;;;;;;;;;;;MAaC;IAED,yDAiCC;IA/BC,eAA+B;IAC/B,aAAsB;IACtB;;;;MAAiB;IACjB,WAAiB;IACjB,uBAA0B;IAQ1B;;;;QAME;IACF,cAIC;IAED;;;cACuF;IAMzF;;OAEG;IACH,qBAKC;IACD;;OAEG;IACH,2BAOC;IACD;;OAEG;IACH,uBAMC;IACD;;;;;;OAMG;IACH,8BAJW,MAAM,YACN,MAAM,kCAqChB;IACD;;OAEG;IACH,wCASC;IACD;;;OAGG;IACH,oDASC;IACD;;OAEG;IACH,yCAOC;IACD;;OAEG;IACH;;;;;;sBAoDC;IACD;;OAEG;IACH;;;sBAUC;IACD;;OAEG;IACH;;;YAOC;IACD,qDA0CC;IACD,cAYC;IACD,+BAKC;IACD,qCAOC;IACD,mBAQC;IACD,mBASC;IACD,yCASC;IACD,oDAUC;IACD;;;;;;MAwBC;IACD;;;;MAmBC;IACD,2DAQC;IACD,uCAMC;IACD,mCAEC;IACD,iCAIC;CACF"}
1
+ {"version":3,"file":"slider.d.ts","sourceRoot":"","sources":["../../js/ui/slider.js"],"names":[],"mappings":"AAsEA;;GAEG;AACH,6BASC;AAED;;;;GAIG;AACH,uCAHW,IAAI,sBAkBd;AAlED;;GAEG;AACH,+CAGG;AA8DH;;GAEG;AACH;IACE,wBAAsB;IACtB;;OAEG;IACH;;;;;;;;;;;;MAaC;IACD,wCAgCC;IA9BC,aAAsB;IACtB;;;;MAAiB;IACjB,WAAiB;IACjB,uBAA0B;IAQ1B;;;;QAME;IACF,cAIC;IAED;;;cACuF;IAMzF;;OAEG;IACH,qBAKC;IACD;;OAEG;IACH,2BAOC;IACD;;OAEG;IACH,uBAMC;IACD;;;;;;OAMG;IACH,8BAJW,MAAM,YACN,MAAM,kCAqChB;IACD;;OAEG;IACH,wCASC;IACD;;;OAGG;IACH,oDASC;IACD;;OAEG;IACH,yCAOC;IACD;;OAEG;IACH;;;;;;sBAoDC;IACD;;OAEG;IACH;;;sBAUC;IACD;;OAEG;IACH;;;YAOC;IACD,qDA0CC;IACD,cAYC;IACD,+BAKC;IACD,qCAOC;IACD,mBAQC;IACD,mBASC;IACD,yCASC;IACD,oDAUC;IACD;;;;;;MAwBC;IACD;;;;MAmBC;IACD,2DAQC;IACD,uCAMC;IACD,kCAEC;IACD,iCAIC;CACF;qCArfoC,oBAAoB"}
@@ -1,14 +1,7 @@
1
1
  /**
2
2
  * Init all instances currently in document
3
- * @param {Object} options Options to serve as defaults
4
3
  */
5
- export function init(options?: any): void;
6
- /**
7
- * Init all tabs within a certain context
8
- * @param {Node} context Element to init within
9
- * @param {Object} options Options to serve as defaults
10
- */
11
- export function initWithin(context: Node, options?: any): void;
4
+ export function init(): void;
12
5
  /**
13
6
  *
14
7
  * @param {Node} element Tablist Element
@@ -21,4 +14,9 @@ export function setup(element: Node, options?: Node): any;
21
14
  * @type {Array}
22
15
  */
23
16
  export const instances: any[];
17
+ /**
18
+ * Tabs Component Initializer
19
+ */
20
+ export const initializer: ComponentInitializer;
21
+ import { ComponentInitializer } from "../utils/system.js";
24
22
  //# sourceMappingURL=tabs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tabs.d.ts","sourceRoot":"","sources":["../../js/ui/tabs.js"],"names":[],"mappings":"AAqBA;;;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"}
@@ -7,29 +7,21 @@ export function setDefaults(options: any): void;
7
7
  * - This will only initialize elements once, it is safe to call on page changes
8
8
  */
9
9
  export function init(): void;
10
- /**
11
- * Query and setup all
12
- */
13
- export function setup(): void;
14
10
  /**
15
11
  * Sets up a single toggle
16
12
  * @param {HTMLElement} toggle A toggle to be setup
17
13
  */
18
- export function setupToggle(toggle: HTMLElement, passedOptions: any): {
14
+ export function setupToggle(toggle: HTMLElement, userOptions: any): {
19
15
  destroy: () => void;
20
16
  toggle: HTMLElement;
21
17
  options: any;
22
18
  toggleState: (event: any) => void;
23
19
  setState(themeKey: any): void;
24
20
  };
25
- export namespace attrs {
26
- let init: string;
27
- let toggle: string;
28
- let toggleIcon: string;
29
- let toggleLabel: string;
30
- let toggleRemote: string;
31
- let state: string;
32
- }
21
+ /**
22
+ * Theme Toggle Component Initializer
23
+ */
24
+ export const initializer: ComponentInitializer;
33
25
  export namespace defaults {
34
26
  namespace themes {
35
27
  namespace light {
@@ -62,4 +54,5 @@ export namespace defaults {
62
54
  let storagePrefix: string;
63
55
  let debug: boolean;
64
56
  }
57
+ import { ComponentInitializer } from "../utils/system.js";
65
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":"AAmGA;;GAEG;AACH,gDAEC;AAED;;;GAGG;AACH,6BAGC;AAED;;GAEG;AACH,8BAEC;AAED;;;GAGG;AACH,oCAFW,WAAW;;;;;;EAiGrB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IA1JC;;OAEG;IACH,mCAAiB"}
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"}
@@ -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
@@ -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;;;;;GAKG;AACH,mCAJW,SAAO,IAAI,kBAEV,WAAW,CAWtB;AAED;;;;;GAKG;AACH,oCAJW,SAAO,IAAI,wBAerB;AAED;;;;;;;;GAQG;AACH,8CANa,MAAM,EAAE,CAiBpB;AAED;;;;;GAKG;AACH,+CAJW,IAAI,cACJ,IAAI,2BAMd;AAnKD;;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;;;;;GAKG;AACH,+CAJW,IAAI,cACJ,IAAI,2BAMd;AA/KD;;GAEG;AAGH,qCAAqD"}
@@ -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"}