@ulu/frontend 0.1.0-beta.8 → 0.1.0-beta.80

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 (287) hide show
  1. package/CHANGELOG.md +529 -0
  2. package/README.dev.md +3 -3
  3. package/README.md +14 -4
  4. package/dist/ulu-frontend.min.css +1 -1
  5. package/dist/ulu-frontend.min.js +35 -28
  6. package/docs-dev/assets/main.js +8290 -635
  7. package/docs-dev/assets/placeholder/icon-calendar.svg +1 -0
  8. package/docs-dev/assets/placeholder/icon-check.svg +1 -0
  9. package/docs-dev/assets/style.css +789 -338
  10. package/docs-dev/changelog/index.html +6553 -0
  11. package/docs-dev/demos/accordion/index.html +850 -328
  12. package/docs-dev/demos/badge/index.html +5265 -0
  13. package/docs-dev/demos/basic-hero/index.html +111 -0
  14. package/docs-dev/demos/breakpoints-manager/index.html +5276 -0
  15. package/docs-dev/demos/button/index.html +892 -328
  16. package/docs-dev/demos/button-verbose/index.html +5268 -0
  17. package/docs-dev/demos/callout/index.html +895 -332
  18. package/docs-dev/demos/captioned-figure/index.html +850 -327
  19. package/docs-dev/demos/card/index.html +930 -768
  20. package/docs-dev/demos/card-grid/index.html +5387 -0
  21. package/docs-dev/demos/counter-list/index.html +5270 -0
  22. package/docs-dev/demos/css-icons/index.html +850 -327
  23. package/docs-dev/demos/data-grid/index.html +870 -347
  24. package/docs-dev/demos/data-table/index.html +1024 -368
  25. package/docs-dev/demos/details-group/index.html +5297 -0
  26. package/docs-dev/demos/file-save/index.html +850 -327
  27. package/docs-dev/demos/flipcard/index.html +850 -327
  28. package/docs-dev/demos/form-theme/index.html +868 -358
  29. package/docs-dev/demos/hero/index.html +12 -4
  30. package/docs-dev/demos/image-grid/index.html +12 -4
  31. package/docs-dev/demos/index.html +851 -328
  32. package/docs-dev/demos/list-inline/index.html +850 -327
  33. package/docs-dev/demos/list-lines/index.html +850 -327
  34. package/docs-dev/demos/menu-stack/index.html +884 -346
  35. package/docs-dev/demos/modals/index.html +968 -330
  36. package/docs-dev/demos/nav-strip/index.html +850 -327
  37. package/docs-dev/demos/overlay-section/index.html +939 -346
  38. package/docs-dev/demos/popovers/index.html +1112 -347
  39. package/docs-dev/demos/print/index.html +850 -327
  40. package/docs-dev/demos/pull-quote/index.html +850 -327
  41. package/docs-dev/demos/rule/index.html +863 -328
  42. package/docs-dev/demos/scroll-slider/index.html +72 -106
  43. package/docs-dev/demos/scrollpoints/index.html +851 -328
  44. package/docs-dev/demos/slider/index.html +12 -4
  45. package/docs-dev/demos/spoke-spinner/index.html +850 -327
  46. package/docs-dev/demos/{list-inline.1 → sticky-list}/index.html +883 -357
  47. package/docs-dev/demos/tabs/index.html +886 -327
  48. package/docs-dev/demos/tag/index.html +850 -327
  49. package/docs-dev/demos/theme-toggle/index.html +5309 -0
  50. package/docs-dev/demos/tile-grid-overlay/index.html +12 -4
  51. package/docs-dev/demos/tiles/index.html +850 -327
  52. package/docs-dev/demos/tooltip/index.html +850 -327
  53. package/docs-dev/guide/building-stylesheet/index.html +850 -327
  54. package/docs-dev/guide/developing-ulu-scss-module/index.html +850 -327
  55. package/docs-dev/guide/index.html +850 -327
  56. package/docs-dev/index.html +850 -327
  57. package/docs-dev/javascript/events/index.html +847 -326
  58. package/docs-dev/javascript/index.html +850 -327
  59. package/docs-dev/javascript/settings/index.html +5430 -0
  60. package/docs-dev/javascript/ui-breakpoints/index.html +862 -341
  61. package/docs-dev/javascript/ui-collapsible/index.html +847 -326
  62. package/docs-dev/javascript/ui-details-group/index.html +5352 -0
  63. package/docs-dev/javascript/ui-dialog/index.html +879 -343
  64. package/docs-dev/javascript/ui-flipcard/index.html +908 -331
  65. package/docs-dev/javascript/ui-grid/index.html +857 -362
  66. package/docs-dev/javascript/ui-modal-builder/index.html +1047 -386
  67. package/docs-dev/javascript/ui-overflow-scroller/index.html +847 -326
  68. package/docs-dev/javascript/ui-overflow-scroller-pager/index.html +847 -326
  69. package/docs-dev/javascript/ui-page/index.html +847 -326
  70. package/docs-dev/javascript/ui-popover/index.html +855 -338
  71. package/docs-dev/javascript/ui-print/index.html +847 -334
  72. package/docs-dev/javascript/ui-print-details/index.html +847 -326
  73. package/docs-dev/javascript/ui-programmatic-modal/index.html +847 -326
  74. package/docs-dev/javascript/ui-proxy-click/index.html +934 -328
  75. package/docs-dev/javascript/ui-resizer/index.html +847 -326
  76. package/docs-dev/javascript/ui-scroll-slider/index.html +885 -332
  77. package/docs-dev/javascript/ui-scrollpoint/index.html +853 -339
  78. package/docs-dev/javascript/ui-slider/index.html +1043 -331
  79. package/docs-dev/javascript/ui-tabs/index.html +858 -374
  80. package/docs-dev/javascript/ui-theme-toggle/index.html +5440 -0
  81. package/docs-dev/javascript/ui-tooltip/index.html +854 -337
  82. package/docs-dev/javascript/utils-class-logger/index.html +847 -326
  83. package/docs-dev/javascript/utils-css/index.html +5254 -0
  84. package/docs-dev/javascript/utils-dom/index.html +887 -446
  85. package/docs-dev/javascript/utils-file-save/index.html +847 -326
  86. package/docs-dev/javascript/utils-floating-ui/index.html +847 -326
  87. package/docs-dev/javascript/utils-id/index.html +847 -326
  88. package/docs-dev/javascript/utils-pause-youtube-video/index.html +847 -326
  89. package/docs-dev/javascript/utils-system/index.html +5557 -0
  90. package/docs-dev/sass/base/color/index.html +847 -326
  91. package/docs-dev/sass/base/elements/index.html +847 -326
  92. package/docs-dev/sass/base/index/index.html +847 -326
  93. package/docs-dev/sass/base/index.html +850 -327
  94. package/docs-dev/sass/base/keyframes/index.html +847 -326
  95. package/docs-dev/sass/base/layout/index.html +847 -326
  96. package/docs-dev/sass/base/normalize/index.html +847 -326
  97. package/docs-dev/sass/base/print/index.html +847 -326
  98. package/docs-dev/sass/base/root/index.html +847 -326
  99. package/docs-dev/sass/base/typography/index.html +847 -326
  100. package/docs-dev/sass/components/accordion/index.html +866 -338
  101. package/docs-dev/sass/components/adaptive-spacing/index.html +847 -326
  102. package/docs-dev/sass/components/badge/index.html +869 -337
  103. package/docs-dev/sass/components/basic-hero/index.html +5415 -0
  104. package/docs-dev/sass/components/button/index.html +847 -326
  105. package/docs-dev/sass/components/button-verbose/index.html +933 -337
  106. package/docs-dev/sass/components/callout/index.html +958 -418
  107. package/docs-dev/sass/components/captioned-figure/index.html +970 -334
  108. package/docs-dev/sass/components/card/index.html +939 -346
  109. package/docs-dev/sass/components/card-grid/index.html +847 -326
  110. package/docs-dev/sass/components/counter-list/index.html +5497 -0
  111. package/docs-dev/sass/components/css-icon/index.html +864 -336
  112. package/docs-dev/sass/components/data-grid/index.html +868 -340
  113. package/docs-dev/sass/components/data-table/index.html +1063 -352
  114. package/docs-dev/sass/components/fill-context/index.html +847 -326
  115. package/docs-dev/sass/components/flipcard/index.html +888 -336
  116. package/docs-dev/sass/components/flipcard-grid/index.html +847 -326
  117. package/docs-dev/sass/components/form-theme/index.html +1063 -446
  118. package/docs-dev/sass/components/hero/index.html +903 -334
  119. package/docs-dev/sass/components/horizontal-rule/index.html +847 -326
  120. package/docs-dev/sass/components/image-grid/index.html +847 -326
  121. package/docs-dev/sass/components/index/index.html +860 -336
  122. package/docs-dev/sass/components/index.html +850 -327
  123. package/docs-dev/sass/components/links/index.html +847 -326
  124. package/docs-dev/sass/components/list-inline/index.html +847 -326
  125. package/docs-dev/sass/components/list-lines/index.html +847 -326
  126. package/docs-dev/sass/components/list-ordered/index.html +847 -326
  127. package/docs-dev/sass/components/list-unordered/index.html +847 -326
  128. package/docs-dev/sass/components/menu-stack/index.html +881 -347
  129. package/docs-dev/sass/components/modal/index.html +891 -342
  130. package/docs-dev/sass/components/nav-strip/index.html +855 -334
  131. package/docs-dev/sass/components/overlay-section/index.html +855 -334
  132. package/docs-dev/sass/components/pager/index.html +847 -326
  133. package/docs-dev/sass/components/placeholder-block/index.html +847 -326
  134. package/docs-dev/sass/components/popover/index.html +904 -347
  135. package/docs-dev/sass/components/pull-quote/index.html +859 -338
  136. package/docs-dev/sass/components/ratio-box/index.html +855 -334
  137. package/docs-dev/sass/components/rule/index.html +848 -327
  138. package/docs-dev/sass/components/scroll-slider/index.html +855 -346
  139. package/docs-dev/sass/components/skip-link/index.html +847 -326
  140. package/docs-dev/sass/components/slider/index.html +897 -388
  141. package/docs-dev/sass/components/spoke-spinner/index.html +849 -328
  142. package/docs-dev/sass/components/sticky-list/index.html +5633 -0
  143. package/docs-dev/sass/components/tabs/index.html +872 -336
  144. package/docs-dev/sass/components/tag/index.html +849 -328
  145. package/docs-dev/sass/components/tile-button/index.html +847 -326
  146. package/docs-dev/sass/components/tile-grid/index.html +847 -326
  147. package/docs-dev/sass/components/tile-grid-overlay/index.html +847 -326
  148. package/docs-dev/sass/components/vignette/index.html +861 -334
  149. package/docs-dev/sass/components/wysiwyg/index.html +847 -326
  150. package/docs-dev/sass/core/breakpoint/index.html +931 -358
  151. package/docs-dev/sass/core/button/index.html +847 -326
  152. package/docs-dev/sass/core/color/index.html +1019 -366
  153. package/docs-dev/sass/core/cssvar/index.html +847 -326
  154. package/docs-dev/sass/core/element/index.html +1108 -381
  155. package/docs-dev/sass/core/index.html +847 -326
  156. package/docs-dev/sass/core/layout/index.html +903 -363
  157. package/docs-dev/sass/core/path/index.html +847 -326
  158. package/docs-dev/sass/core/selector/index.html +847 -326
  159. package/docs-dev/sass/core/typography/index.html +847 -326
  160. package/docs-dev/sass/core/units/index.html +857 -330
  161. package/docs-dev/sass/core/utils/index.html +2104 -476
  162. package/docs-dev/sass/helpers/color/index.html +847 -326
  163. package/docs-dev/sass/helpers/display/index.html +848 -327
  164. package/docs-dev/sass/helpers/index/index.html +847 -326
  165. package/docs-dev/sass/helpers/index.html +850 -327
  166. package/docs-dev/sass/helpers/print/index.html +759 -298
  167. package/docs-dev/sass/helpers/typography/index.html +847 -326
  168. package/docs-dev/sass/helpers/units/index.html +847 -326
  169. package/docs-dev/sass/helpers/utilities/index.html +849 -328
  170. package/docs-dev/sass/index.html +850 -327
  171. package/js/index.js +1 -0
  172. package/js/settings.js +95 -0
  173. package/js/ui/breakpoints.js +19 -16
  174. package/js/ui/collapsible.js +8 -1
  175. package/js/ui/details-group.js +112 -0
  176. package/js/ui/dialog.js +85 -42
  177. package/js/ui/dialog.todo +2 -36
  178. package/js/ui/flipcard.js +37 -57
  179. package/js/ui/grid.js +15 -13
  180. package/js/ui/index.js +1 -0
  181. package/js/ui/modal-builder.js +105 -59
  182. package/js/ui/overflow-scroller.js +6 -4
  183. package/js/ui/page.js +2 -2
  184. package/js/ui/popover.js +38 -38
  185. package/js/ui/print.js +16 -25
  186. package/js/ui/programmatic-modal.js +9 -3
  187. package/js/ui/proxy-click.js +50 -36
  188. package/js/ui/scroll-slider.js +24 -30
  189. package/js/ui/scrollpoint.js +29 -64
  190. package/js/ui/slider.js +108 -63
  191. package/js/ui/tabs.js +23 -36
  192. package/js/ui/theme-toggle.js +332 -94
  193. package/js/ui/tooltip.js +27 -32
  194. package/js/utils/css.js +13 -0
  195. package/js/utils/dom.js +23 -64
  196. package/js/utils/font-awesome.js +18 -0
  197. package/js/utils/index.js +2 -1
  198. package/js/utils/system.js +155 -0
  199. package/package.json +23 -8
  200. package/scss/README.md +4 -0
  201. package/scss/_breakpoint.scss +38 -4
  202. package/scss/_color.scss +40 -9
  203. package/scss/_element.scss +108 -2
  204. package/scss/_layout.scss +7 -8
  205. package/scss/_units.scss +3 -2
  206. package/scss/_utils.scss +380 -16
  207. package/scss/components/README.todos +14 -0
  208. package/scss/components/_accordion.scss +33 -19
  209. package/scss/components/_badge.scss +23 -4
  210. package/scss/components/_basic-hero.scss +112 -0
  211. package/scss/components/_button-verbose.scss +100 -18
  212. package/scss/components/_callout.scss +125 -78
  213. package/scss/components/_captioned-figure.scss +17 -0
  214. package/scss/components/_card-grid.scss +1 -1
  215. package/scss/components/_card.scss +246 -74
  216. package/scss/components/_counter-list.scss +151 -0
  217. package/scss/components/_css-icon.scss +25 -21
  218. package/scss/components/_data-grid.scss +55 -9
  219. package/scss/components/_data-table.scss +39 -3
  220. package/scss/components/_flipcard.scss +8 -3
  221. package/scss/components/_form-theme.scss +119 -108
  222. package/scss/components/_hero.scss +12 -10
  223. package/scss/components/_index.scss +18 -0
  224. package/scss/components/_menu-stack.scss +42 -26
  225. package/scss/components/_modal.scss +42 -26
  226. package/scss/components/_nav-strip.scss +2 -0
  227. package/scss/components/_overlay-section.scss +2 -5
  228. package/scss/components/_popover.scss +165 -64
  229. package/scss/components/_pull-quote.scss +13 -13
  230. package/scss/components/_ratio-box.scss +2 -5
  231. package/scss/components/_rule.scss +1 -0
  232. package/scss/components/_scroll-slider.scss +1 -5
  233. package/scss/components/_slider.scss +49 -72
  234. package/scss/components/_spoke-spinner.scss +2 -2
  235. package/scss/components/_sticky-list.scss +206 -0
  236. package/scss/components/_tabs.scss +22 -4
  237. package/scss/components/_vignette.scss +3 -5
  238. package/scss/helpers/_display.scss +15 -18
  239. package/scss/helpers/_print.scss +12 -7
  240. package/scss/helpers/_utilities.scss +42 -32
  241. package/types/index.d.ts +1 -0
  242. package/types/settings.d.ts +66 -0
  243. package/types/settings.d.ts.map +1 -0
  244. package/types/ui/breakpoints.d.ts +14 -14
  245. package/types/ui/breakpoints.d.ts.map +1 -1
  246. package/types/ui/collapsible.d.ts.map +1 -1
  247. package/types/ui/details-group.d.ts +38 -0
  248. package/types/ui/details-group.d.ts.map +1 -0
  249. package/types/ui/dialog.d.ts +20 -14
  250. package/types/ui/dialog.d.ts.map +1 -1
  251. package/types/ui/flipcard.d.ts +16 -10
  252. package/types/ui/flipcard.d.ts.map +1 -1
  253. package/types/ui/grid.d.ts +4 -6
  254. package/types/ui/grid.d.ts.map +1 -1
  255. package/types/ui/index.d.ts +2 -1
  256. package/types/ui/modal-builder.d.ts +113 -11
  257. package/types/ui/modal-builder.d.ts.map +1 -1
  258. package/types/ui/overflow-scroller.d.ts +2 -2
  259. package/types/ui/overflow-scroller.d.ts.map +1 -1
  260. package/types/ui/popover.d.ts +6 -7
  261. package/types/ui/popover.d.ts.map +1 -1
  262. package/types/ui/print.d.ts +0 -4
  263. package/types/ui/print.d.ts.map +1 -1
  264. package/types/ui/programmatic-modal.d.ts.map +1 -1
  265. package/types/ui/proxy-click.d.ts +19 -3
  266. package/types/ui/proxy-click.d.ts.map +1 -1
  267. package/types/ui/scroll-slider.d.ts +5 -7
  268. package/types/ui/scroll-slider.d.ts.map +1 -1
  269. package/types/ui/scrollpoint.d.ts +3 -8
  270. package/types/ui/scrollpoint.d.ts.map +1 -1
  271. package/types/ui/slider.d.ts +33 -14
  272. package/types/ui/slider.d.ts.map +1 -1
  273. package/types/ui/tabs.d.ts +6 -8
  274. package/types/ui/tabs.d.ts.map +1 -1
  275. package/types/ui/theme-toggle.d.ts +51 -7
  276. package/types/ui/theme-toggle.d.ts.map +1 -1
  277. package/types/ui/tooltip.d.ts +3 -5
  278. package/types/ui/tooltip.d.ts.map +1 -1
  279. package/types/utils/css.d.ts +11 -0
  280. package/types/utils/css.d.ts.map +1 -0
  281. package/types/utils/dom.d.ts +12 -32
  282. package/types/utils/dom.d.ts.map +1 -1
  283. package/types/utils/font-awesome.d.ts +5 -0
  284. package/types/utils/font-awesome.d.ts.map +1 -0
  285. package/types/utils/index.d.ts +2 -1
  286. package/types/utils/system.d.ts +113 -0
  287. package/types/utils/system.d.ts.map +1 -0
@@ -7,99 +7,110 @@
7
7
  @use "sass:meta";
8
8
  @use "sass:math";
9
9
  @use "sass:list";
10
+
10
11
  @use "../selector";
11
12
  @use "../utils";
12
13
  @use "../color";
13
14
  @use "../element";
14
15
  @use "../typography";
15
16
 
17
+ // Used for function fallback
18
+ $-fallbacks: (
19
+ "description-line-height" : (
20
+ "function" : meta.get-function("get", false, "typography"),
21
+ "property" : "line-height-dense",
22
+ ),
23
+ );
24
+
16
25
  /// Module Settings
17
26
  /// @type Map
18
- /// @prop {} color [inherit]
19
- /// @prop {} color-placeholder ["type-tertiary"]
20
- /// @prop {} drupal [false]
21
- /// @prop {} error-color ["error"]
22
- /// @prop {} error-highlight-color [rgb(251, 242, 242)]
23
- /// @prop {} error-selector [".is-danger"]
24
- /// @prop {} file-button-style [true]
25
- /// @prop {} font-weight-label [bold]
26
- /// @prop {} font-weight-legend [bold]
27
- /// @prop {} font-weight-placeholder [normal]
28
- /// @prop {} font-weight-input [null]
29
- /// @prop {} font-weight-textarea [null]
30
- /// @prop {} font-weight-select [null]
31
- /// @prop {} input-border [element.get-rule-style()]
32
- /// @prop {} input-border-radius [0]
33
- /// @prop {} input-margin-y [0.75em]
34
- /// @prop {} input-padding-x [0.5em]
35
- /// @prop {} input-padding-y [0.25em]
36
- /// @prop {} input-min-width [10em]
37
- /// @prop {} input-background-color [white]
38
- /// @prop {} item-border-radius [null]
39
- /// @prop {} item-highlight-width [6px]
40
- /// @prop {} required-color ["error"]
41
- /// @prop {} text-input-margin-bottom [0.5em]
42
- /// @prop {} text-input-margin-top [1em]
43
- /// @prop {} warning-color ["warning"]
44
- /// @prop {} warning-highlight-color [rgb(255, 249, 237)]
45
- /// @prop {} warning-selector [".is-warning"]
46
- /// @prop {} check-input-color [currentColor]
47
- /// @prop {} check-input-size [1.15em]
48
- /// @prop {} check-input-touch-size [2em]
49
- /// @prop {} check-input-background-color [white]
50
- /// @prop {} check-input-background-color-checked [white]
51
- /// @prop {} check-input-background-color-hover [white]
52
- /// @prop {} check-input-background-color-indeterminate [white]
53
- /// @prop {} check-input-border [null]
54
- /// @prop {} check-input-border-color-hover [null]
55
- /// @prop {} check-input-border-color-checked [null]
56
- /// @prop {} check-input-border-color-indeterminate [null]
57
- /// @prop {} check-input-border-color-focus [null]
58
- /// @prop {} check-input-outline [null]
59
- /// @prop {} check-input-outline-hover [null]
60
- /// @prop {} check-input-outline-checked [null]
61
- /// @prop {} check-input-outline-focus [1px solid white]
62
- /// @prop {} check-input-touch-color-hover [#e8e8e8]
63
- /// @prop {} check-input-touch-color-focus [null]
64
- /// @prop {} check-input-radio-size [0.3em]
65
- /// @prop {} check-input-checkmark-width [0.38em]
66
- /// @prop {} check-input-checkmark-height [0.68em]
67
- /// @prop {} check-input-checkmark-offset-y [-0.2em]
68
- /// @prop {} check-input-checkmark-stroke-size [0.18em]
69
- /// @prop {} check-input-mark-color [currentColor]
70
- /// @prop {} check-input-mark-color-hover [null]
71
- /// @prop {} check-input-mark-color-focus [null]
72
- /// @prop {} check-input-mark-color-checked [null]
73
- /// @prop {} check-input-mark-color-indeterminate [null]
74
- /// @prop {} check-input-disabled-opacity [0.6]
75
- /// @prop {} check-input-border-radius [null]
76
- /// @prop {} description-color [false]
77
- /// @prop {} description-margin [(0.25em 0)]
78
- /// @prop {} description-max-width [25em]
79
- /// @prop {} fieldset-background [transparent]
80
- /// @prop {} fieldset-border [none]
81
- /// @prop {} fieldset-margin-bottom [1rem]
82
- /// @prop {} fieldset-margin-top [1rem]
83
- /// @prop {} fieldset-padding [0]
84
- /// @prop {} fieldset-margin-compact [0]
85
- /// @prop {} fieldset-border-radius [0]
86
- /// @prop {} fieldset-legend-color [inherit]
87
- /// @prop {} fieldset-legend-border-bottom [null]
88
- /// @prop {} select-border-radius [4px]
89
- /// @prop {} select-background-color [null]
90
- /// @prop {} select-border [null]
91
- /// @prop {} select-padding-x [null]
92
- /// @prop {} select-padding-y [null]
93
- /// @prop {} select-image [null]
94
- /// @prop {} select-image-size [0.9em]
95
- /// @prop {} select-image-offset [0.7em]
96
- /// @prop {} select-image-margin [0.65em]
27
+ /// @prop {CssValue} color [inherit] Color of the text of the form.
28
+ /// @prop {CssValue} color-placeholder ["type-tertiary"] Color for the placeholder text.
29
+ /// @prop {Boolean} drupal [false] Toggle if using drupal to include drupal specific styling.
30
+ /// @prop {Color} error-color ["danger"] Type color for errors.
31
+ /// @prop {Color} error-highlight-color [rgb(251, 242, 242)] Outline color of error container.
32
+ /// @prop {String} error-selector [".is-danger"] Class for error styling.
33
+ /// @prop {} file-button-style [true] @joe-check should this have a fallback
34
+ /// @prop {CssValue} font-weight-label [bold] Font weight of the labels.
35
+ /// @prop {CssValue} font-weight-legend [bold] Font weight of the legend.
36
+ /// @prop {CssValue} font-weight-placeholder [normal] Font weight of placeholder text.
37
+ /// @prop {CssValue} font-weight-input [null] Font weight of input text.
38
+ /// @prop {CssValue} font-weight-textarea [null] Font weight of textarea text.
39
+ /// @prop {CssValue} font-weight-select [null] Font weight of select text.
40
+ /// @prop {CssValue} input-border [element.get-rule-style()] Border of the input.
41
+ /// @prop {Dimension} input-border-radius [0] Border radius of the input.
42
+ /// @prop {Dimension} input-padding-x [0.5em] Horizontal padding of the input.
43
+ /// @prop {Dimension} input-padding-y [0.25em] Vertical padding of the input.
44
+ /// @prop {Dimension} input-min-width [10em] Min width of the input.
45
+ /// @prop {Color} input-background-color [white] Background color of the input.
46
+ /// @prop {Dimension} item-border-radius [null] Border radius for __item.
47
+ /// @prop {Dimension} item-highlight-width [6px] Width of the item box highlight.
48
+ /// @prop {Color} required-color ["danger"] Color for required text.
49
+ /// @prop {Dimension} text-input-margin-bottom [0.5em] Bottom margin for the label.
50
+ /// @prop {Dimension} text-input-margin-top [1em] Top margin for the label.
51
+ /// @prop {Color} warning-color ["warning"] The warning text color.
52
+ /// @prop {Color} warning-highlight-color [rgb(255, 249, 237)] Outline color of the warning.
53
+ /// @prop {String} warning-selector [".is-warning"] Selector for adding warning styles.
54
+ /// @prop {Color} check-input-color [currentColor] @joe-check unused
55
+ /// @prop {Dimension} check-input-size [1.15em] Size of input box.
56
+ /// @prop {Dimension} check-input-touch-size [2em] Touchable size of the input box.
57
+ /// @prop {Color} check-input-background-color [white] Background color for the check input.
58
+ /// @prop {Color} check-input-background-color-checked [white] Background color for the check input when checked.
59
+ /// @prop {Color} check-input-background-color-hover [white] Background color for the check input when hovered or focused.
60
+ /// @prop {Color} check-input-background-color-indeterminate [white] Background color for the indeterminate check input.
61
+ /// @prop {} check-input-border [null] @joe-check check how this is called with a fallback in the styles mixin
62
+ /// @prop {Color} check-input-border-color-hover [null] Check input border color.
63
+ /// @prop {Color} check-input-border-color-checked [null] Check input border color when checked.
64
+ /// @prop {Color} check-input-border-color-indeterminate [null] Indeterminate check input border color.
65
+ /// @prop {Color} check-input-border-color-focus [null] Check input border color when hovered or focused.
66
+ /// @prop {CssValue} check-input-outline [null] Check input outline.
67
+ /// @prop {CssValue} check-input-outline-hover [null] Check input outline when hovered.
68
+ /// @prop {CssValue} check-input-outline-checked [null] Check input outline when checked.
69
+ /// @prop {CssValue} check-input-outline-focus [1px solid white] Check input outline when focused.
70
+ /// @prop {Color} check-input-touch-color-hover [#e8e8e8] Check input background color when hovered.
71
+ /// @prop {Color} check-input-touch-color-focus [null] Check input background color when focused.
72
+ /// @prop {Dimension} check-input-radio-size [0.3em] Radio border size.
73
+ /// @prop {Dimension} check-input-checkmark-width [0.38em] Width of checkmark.
74
+ /// @prop {Dimension} check-input-checkmark-height [0.68em] Height of checkmark.
75
+ /// @prop {Dimension} check-input-checkmark-offset-y [-0.2em] vertical offset of checkmark.
76
+ /// @prop {Dimension} check-input-checkmark-stroke-size [0.18em] stroke size of checkmark.
77
+ /// @prop {Color} check-input-mark-color [currentColor] Check input color.
78
+ /// @prop {Color} check-input-mark-color-hover [null] Check input color when hovered.
79
+ /// @prop {Color} check-input-mark-color-focus [null] Check input color when focused.
80
+ /// @prop {Color} check-input-mark-color-checked [null] Check input color when checked.
81
+ /// @prop {Color} check-input-mark-color-indeterminate [null] Check input color when indeterminate.
82
+ /// @prop {Number} check-input-disabled-opacity [0.6] Opacity of the check input when disabled.
83
+ /// @prop {Dimension} check-input-border-radius [null] Checkbox input border radius.
84
+ /// @prop {Color} description-color [false] Color of help text.
85
+ /// @prop {CssValue} description-margin [(0.25em 0)] Margin for help text.
86
+ /// @prop {Dimension} description-max-width [25em] Max width of help text.
87
+ /// @prop {Number} description-line-height [true] Line height for description element, defaults to typography line-height-dense
88
+ /// @prop {Color} fieldset-background [transparent] Background color of fieldset element.
89
+ /// @prop {CssValue} fieldset-border [none] Border for fieldset
90
+ /// @prop {Dimension} fieldset-margin-bottom [1rem] Bottom margin for the fieldset element.
91
+ /// @prop {Dimension} fieldset-margin-top [1rem] Bottom margin for the fieldset element.
92
+ /// @prop {Dimension} fieldset-padding [0] Padding for the fieldset element.
93
+ /// @prop {Dimension} fieldset-margin-compact [0] @joe-check unused
94
+ /// @prop {Dimension} fieldset-border-radius [0] Border radius of the fieldset element.
95
+ /// @prop {Color} fieldset-legend-color [inherit] Text color for the fieldset's label.
96
+ /// @prop {Dimension} fieldset-legend-border-bottom [null] Bottom border color for the fieldset's label
97
+ /// @prop {Dimension} fieldset-legend-padding-bottom [null] Bottom padding for the fieldset's label
98
+ /// @prop {Dimension} select-border-radius [4px] Border radius for the select element.
99
+ /// @prop {Color} select-background-color [null] Background color for the select element.
100
+ /// @prop {CssValue} select-border [null] The border for the select element. Fallback to input border.
101
+ /// @prop {Dimension} select-padding-x [null] Horizontal padding for the select element. Fallback to input-padding-x.
102
+ /// @prop {Dimension} select-padding-y [null] Vertical padding for the select element. Fallback to input-padding-y.
103
+ /// @prop {CssValue} select-image [null] Url for select element's background image.
104
+ /// @prop {Dimension} select-image-size [0.9em] Background size for the select image.
105
+ /// @prop {Dimension} select-image-offset [0.7em] Offset for the select image.
106
+ /// @prop {Dimension} select-image-margin [0.65em] select image margin.
107
+ /// @prop {Dimension} inline-gap [1em] Gap between items that are inline like checkboxes
97
108
 
98
109
  $config: (
99
110
  "color" : inherit,
100
111
  "color-placeholder" : "type-tertiary",
101
112
  "drupal" : false,
102
- "error-color" : "error",
113
+ "error-color" : "danger",
103
114
  "error-highlight-color" : rgb(251, 242, 242),
104
115
  "error-selector" : ".is-danger",
105
116
  "file-button-style" : true,
@@ -111,14 +122,14 @@ $config: (
111
122
  "font-weight-select" : null,
112
123
  "input-border" : element.get-rule-style(),
113
124
  "input-border-radius" : 0,
114
- "input-margin-y" : 0.75em,
125
+ "item-margin-y" : 0.75em,
115
126
  "input-padding-x" : 0.5em,
116
127
  "input-padding-y" : 0.25em,
117
128
  "input-min-width" : 10em,
118
129
  "input-background-color" : white,
119
130
  "item-border-radius" : null,
120
131
  "item-highlight-width" : 6px,
121
- "required-color" : "error",
132
+ "required-color" : "danger",
122
133
  "text-input-margin-bottom" : 0.5em,
123
134
  "text-input-margin-top" : 1em,
124
135
  "warning-color" : "warning",
@@ -157,6 +168,7 @@ $config: (
157
168
  "description-color" : false,
158
169
  "description-margin" : (0.25em 0),
159
170
  "description-max-width" : 25em,
171
+ "description-line-height" : true,
160
172
  "fieldset-background" : transparent,
161
173
  "fieldset-border" : none,
162
174
  "fieldset-margin-bottom" : 1rem,
@@ -166,6 +178,8 @@ $config: (
166
178
  "fieldset-border-radius" : 0,
167
179
  "fieldset-legend-color" : inherit,
168
180
  "fieldset-legend-border-bottom" : null,
181
+ "fieldset-legend-padding-bottom" : 0,
182
+ "fieldset-legend-margin-bottom" : 0.5em,
169
183
  "select-border-radius" : 4px,
170
184
  "select-background-color" : null,
171
185
  "select-border" : null,
@@ -175,6 +189,7 @@ $config: (
175
189
  "select-image-size" : 0.9em,
176
190
  "select-image-offset" : 0.7em,
177
191
  "select-image-margin" : 0.65em,
192
+ "inline-gap" : 1em
178
193
  ) !default;
179
194
 
180
195
  /// Change modules $config
@@ -192,7 +207,8 @@ $config: (
192
207
  /// @include ulu.component-form-theme-get("property");
193
208
 
194
209
  @function get($name) {
195
- @return utils.require-map-get($config, $name, "component-form-theme [config]");
210
+ $value: utils.require-map-get($config, $name, "component-form-theme [config]");
211
+ @return utils.function-fallback($name, $value, $-fallbacks);
196
212
  }
197
213
 
198
214
  @function -fallback($op1, $op2) {
@@ -305,7 +321,6 @@ $config: (
305
321
  }
306
322
  select {
307
323
  font-weight: get("font-weight-select");
308
- border: get("select-border");
309
324
  border-radius: get("select-border-radius");
310
325
  background-color: color.get(get("select-background-color"));
311
326
  padding: -fallback("select-padding-y", "input-padding-y") -fallback("select-padding-x", "input-padding-x");
@@ -339,7 +354,7 @@ $config: (
339
354
  transition: background-color 220ms ease-in-out;
340
355
  flex: 0 0 $input-touch-size; // When used in flex container
341
356
  // Box / Circle (centered absolute)
342
- &:before {
357
+ &::before {
343
358
  content: '';
344
359
  display: block;
345
360
  position: absolute;
@@ -357,7 +372,7 @@ $config: (
357
372
  transform: translate(-50%, -50%);
358
373
  }
359
374
  // Checkmark/ radio
360
- &:after {
375
+ &::after {
361
376
  content: '';
362
377
  display: block;
363
378
  position: relative;
@@ -370,32 +385,32 @@ $config: (
370
385
  }
371
386
  &:focus {
372
387
  background-color: color.get(get("check-input-touch-color-focus"));
373
- &:before {
388
+ &::before {
374
389
  border-color: color.get(get("check-input-border-color-focus"));
375
390
  outline: get("check-input-outline-focus");
376
391
  }
377
- &:after {
392
+ &::after {
378
393
  border-color: color.get(get("check-input-mark-color-focus"));
379
394
  }
380
395
  }
381
396
  &:hover {
382
397
  background-color: color.get(get("check-input-touch-color-hover"));
383
- &:before {
398
+ &::before {
384
399
  outline: get("check-input-outline-hover");
385
400
  background-color: color.get(get("check-input-background-color-hover"));
386
401
  border-color: color.get(get("check-input-border-color-hover"));
387
402
  }
388
- &:after {
403
+ &::after {
389
404
  border-color: color.get(get("check-input-mark-color-hover"));
390
405
  }
391
406
  }
392
407
  &:checked {
393
- &:before {
408
+ &::before {
394
409
  background-color: color.get(get("check-input-background-color-checked"));
395
410
  border-color: color.get(get("check-input-border-color-checked"));
396
411
  outline: get("check-input-outline-checked");
397
412
  }
398
- &:after {
413
+ &::after {
399
414
  opacity: 1;
400
415
  border-color: color.get(get("check-input-mark-color-checked"));
401
416
  }
@@ -411,10 +426,10 @@ $config: (
411
426
  }
412
427
  }
413
428
  [type="checkbox"] {
414
- &:before {
429
+ &::before {
415
430
  border-radius: -fallback("check-input-border-radius", "input-border-radius");
416
431
  }
417
- &:after {
432
+ &::after {
418
433
  border-radius: 0;
419
434
  width: get("check-input-checkmark-width");
420
435
  height: get("check-input-checkmark-height");
@@ -427,11 +442,11 @@ $config: (
427
442
  }
428
443
  &:indeterminate,
429
444
  &[aria-checked=mixed] {
430
- &:before {
445
+ &::before {
431
446
  background-color: color.get(get("check-input-background-color-indeterminate"));
432
447
  border-color: color.get(get("check-input-border-color-indeterminate"));
433
448
  }
434
- &:after {
449
+ &::after {
435
450
  border-right: none;
436
451
  transform: translatey(50%);
437
452
  opacity: 1;
@@ -456,19 +471,13 @@ $config: (
456
471
  > legend {
457
472
  font-weight: get("font-weight-legend");
458
473
  display: block;
459
- margin: 0 0 0.5em 0;
474
+ margin: 0 0 get("fieldset-legend-margin-bottom") 0;
460
475
  border: 0;
461
- padding: 0;
476
+ padding: 0 0 get("fieldset-legend-padding-bottom") 0;
462
477
  width: 100%;
463
478
  float: left;
464
- > span {
465
- display: block;
466
- margin-bottom: 1rem;
467
- padding-bottom: 0.5em;
468
- padding-top: 0.5em;
469
- border-bottom: get("fieldset-legend-border-bottom");
470
- color: color.get(get("fieldset-legend-color"));
471
- }
479
+ border-bottom: get("fieldset-legend-border-bottom");
480
+ color: color.get(get("fieldset-legend-color"));
472
481
  & ~ * {
473
482
  clear: left;
474
483
  }
@@ -501,6 +510,7 @@ $config: (
501
510
  margin: get("description-margin");
502
511
  font-style: italic;
503
512
  @include typography.size("small", null, true);
513
+ line-height: get("description-line-height");
504
514
  max-width: get("description-max-width");
505
515
  color: color.get(get("description-color"));
506
516
  }
@@ -547,7 +557,7 @@ $config: (
547
557
  #{ $prefix }__item {
548
558
  display: flex;
549
559
  align-items: center;
550
- margin-bottom: get("input-margin-y");
560
+ margin-bottom: get("item-margin-y");
551
561
  border-radius: get("item-border-radius");
552
562
  flex-shrink: 0; // Cannot be smaller than content within
553
563
  @include -form-item-state($selectError, $errorColor, color.get(get("error-highlight-color")));
@@ -565,8 +575,9 @@ $config: (
565
575
  #{ $prefix }__items-inline {
566
576
  display: flex;
567
577
  flex-wrap: wrap;
578
+ gap: get("inline-gap");
568
579
  > #{ $prefix }__item {
569
- margin-right: 1.5em;
580
+ margin: 0;
570
581
  }
571
582
  }
572
583
  #{ $prefix }__actions {
@@ -11,10 +11,20 @@
11
11
  @use "../utils";
12
12
  @use "../breakpoint";
13
13
  @use "../typography";
14
+ @use "../layout";
14
15
 
15
16
  /// Module Settings
16
17
  /// @type Map
17
18
  /// @prop {Map} extra-split-ratios [wide 70/30] A map where the name is the modifier and the value is a list with two percentages (the first percentage will be correspond with the graphic or content depending on selector [ie. .hero--split-graphic-[name] would apply the first percentage to the graphic while hero--split-content-[name] would apply the first percentage to the content])
19
+ /// @prop {String} breakpoint ["medium"] At what breakpoint the hero goes to small screen styling.
20
+ /// @prop {Dimension} height [100vh] Height of the hero.
21
+ /// @prop {Dimension} height-compact [40vh] Height of the hero when using the "--compact" styling.
22
+ /// @prop {Dimension} graphic-height-stacked [60vh] Height of the graphic.
23
+ /// @prop {Dimension} content-max-width [40rem] Max width of the content.
24
+ /// @prop {Dimension} content-padding-top [3rem] Top padding of the content.
25
+ /// @prop {Dimension} content-padding-bottom [3rem] Bottom padding of the content.
26
+ /// @prop {CssValue} text-align [center] Text align of the content.
27
+
18
28
 
19
29
  $config: (
20
30
  "breakpoint" : "medium",
@@ -77,11 +87,7 @@ $config: (
77
87
  width: 100%;
78
88
  }
79
89
  #{ $prefix }__graphic-media {
80
- position: absolute;
81
- top: 0;
82
- left: 0;
83
- width: 100%;
84
- height: 100%;
90
+ @include layout.absolute-fill(true);
85
91
  object-fit: cover;
86
92
  }
87
93
 
@@ -162,11 +168,7 @@ $config: (
162
168
  z-index: 2;
163
169
  }
164
170
  #{ $prefix }__graphic {
165
- position: absolute;
166
- top: 0;
167
- left: 0;
168
- right: 0;
169
- bottom: 0;
171
+ @include layout.absolute-fill();
170
172
  }
171
173
  &#{ $prefix }--bottom,
172
174
  &#{ $prefix }--bottom #{ $prefix }__content {
@@ -6,11 +6,13 @@
6
6
  @forward "accordion" as accordion-*;
7
7
  @forward "adaptive-spacing" as adaptive-spacing-*;
8
8
  @forward "badge" as badge-*;
9
+ @forward "basic-hero" as basic-hero-*;
9
10
  @forward "button" as button-*;
10
11
  @forward "button-verbose" as button-verbose-*;
11
12
  @forward "callout" as callout-*;
12
13
  @forward "card" as card-*;
13
14
  @forward "card-grid" as card-grid-*;
15
+ @forward "counter-list" as counter-list-*;
14
16
  @forward "css-icon" as css-icon-*;
15
17
  @forward "data-grid" as data-grid-*;
16
18
  @forward "data-table" as data-table-*;
@@ -37,6 +39,7 @@
37
39
  @forward "rule" as rule-*;
38
40
  @forward "scroll-slider" as scroll-slider-*;
39
41
  @forward "skip-link" as skip-link-*;
42
+ @forward "sticky-list" as sticky-list-*;
40
43
  @forward "slider" as slider-*;
41
44
  @forward "hero" as hero-*;
42
45
  @forward "tabs" as tabs-*;
@@ -55,11 +58,13 @@
55
58
  @use "adaptive-spacing";
56
59
  @use "accordion";
57
60
  @use "badge";
61
+ @use "basic-hero";
58
62
  @use "button";
59
63
  @use "button-verbose";
60
64
  @use "callout";
61
65
  @use "card";
62
66
  @use "card-grid";
67
+ @use "counter-list";
63
68
  @use "css-icon";
64
69
  @use "data-grid";
65
70
  @use "data-table";
@@ -86,6 +91,7 @@
86
91
  @use "rule";
87
92
  @use "scroll-slider";
88
93
  @use "skip-link";
94
+ @use "sticky-list";
89
95
  @use "slider";
90
96
  @use "hero";
91
97
  @use "tabs";
@@ -105,11 +111,13 @@ $all-includes: (
105
111
  "accordion",
106
112
  "adaptive-spacing",
107
113
  "badge",
114
+ "basic-hero",
108
115
  "button",
109
116
  "button-verbose",
110
117
  "callout",
111
118
  "card",
112
119
  "card-grid",
120
+ "counter-list",
113
121
  "css-icon",
114
122
  "data-grid",
115
123
  "data-table",
@@ -134,6 +142,7 @@ $all-includes: (
134
142
  "rule",
135
143
  "scroll-slider",
136
144
  "skip-link",
145
+ "sticky-list",
137
146
  "slider",
138
147
  "hero",
139
148
  "tabs",
@@ -199,6 +208,9 @@ $current-includes: $all-includes;
199
208
  @if (list.index($includes, "badge")) {
200
209
  @include badge.styles;
201
210
  }
211
+ @if (list.index($includes, "basic-hero")) {
212
+ @include basic-hero.styles;
213
+ }
202
214
  @if (list.index($includes, "tag")) {
203
215
  @include tag.styles;
204
216
  }
@@ -211,6 +223,9 @@ $current-includes: $all-includes;
211
223
  @if (list.index($includes, "card-grid")) {
212
224
  @include card-grid.styles;
213
225
  }
226
+ @if (list.index($includes, "counter-list")) {
227
+ @include counter-list.styles;
228
+ }
214
229
  @if (list.index($includes, "css-icon")) {
215
230
  @include css-icon.styles;
216
231
  }
@@ -289,6 +304,9 @@ $current-includes: $all-includes;
289
304
  @if (list.index($includes, "skip-link")) {
290
305
  @include skip-link.styles;
291
306
  }
307
+ @if (list.index($includes, "sticky-list")) {
308
+ @include sticky-list.styles;
309
+ }
292
310
  @if (list.index($includes, "slider")) {
293
311
  @include slider.styles;
294
312
  }