@ulu/frontend 0.1.0-beta.1 → 0.1.0-beta.11

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 (257) hide show
  1. package/CHANGELOG.md +63 -2
  2. package/dist/ulu-frontend.min.css +1 -1
  3. package/dist/ulu-frontend.min.js +7 -7
  4. package/docs-dev/assets/chunks/modulepreload-polyfill.DaKOjhqt.js +37 -0
  5. package/docs-dev/assets/favicons/android-chrome-192x192.png +0 -0
  6. package/docs-dev/assets/favicons/android-chrome-256x256.png +0 -0
  7. package/docs-dev/assets/favicons/apple-touch-icon.png +0 -0
  8. package/docs-dev/assets/favicons/browserconfig.xml +9 -0
  9. package/docs-dev/assets/favicons/favicon-16x16.png +0 -0
  10. package/docs-dev/assets/favicons/favicon-32x32.png +0 -0
  11. package/docs-dev/assets/favicons/favicon.ico +0 -0
  12. package/docs-dev/assets/favicons/mstile-150x150.png +0 -0
  13. package/docs-dev/assets/favicons/safari-pinned-tab.svg +1 -0
  14. package/docs-dev/assets/favicons/site.webmanifest +19 -0
  15. package/docs-dev/assets/fonts/fontawesome/fa-brands-400.ttf +0 -0
  16. package/docs-dev/assets/fonts/fontawesome/fa-brands-400.woff2 +0 -0
  17. package/docs-dev/assets/fonts/fontawesome/fa-regular-400.ttf +0 -0
  18. package/docs-dev/assets/fonts/fontawesome/fa-regular-400.woff2 +0 -0
  19. package/docs-dev/assets/fonts/fontawesome/fa-solid-900.ttf +0 -0
  20. package/docs-dev/assets/fonts/fontawesome/fa-solid-900.woff2 +0 -0
  21. package/docs-dev/assets/fonts/fontawesome/fa-v4compatibility.ttf +0 -0
  22. package/docs-dev/assets/fonts/fontawesome/fa-v4compatibility.woff2 +0 -0
  23. package/docs-dev/assets/fonts/inter/Inter-Black.woff2 +0 -0
  24. package/docs-dev/assets/fonts/inter/Inter-BlackItalic.woff2 +0 -0
  25. package/docs-dev/assets/fonts/inter/Inter-Bold.woff2 +0 -0
  26. package/docs-dev/assets/fonts/inter/Inter-BoldItalic.woff2 +0 -0
  27. package/docs-dev/assets/fonts/inter/Inter-ExtraBold.woff2 +0 -0
  28. package/docs-dev/assets/fonts/inter/Inter-ExtraBoldItalic.woff2 +0 -0
  29. package/docs-dev/assets/fonts/inter/Inter-ExtraLight.woff2 +0 -0
  30. package/docs-dev/assets/fonts/inter/Inter-ExtraLightItalic.woff2 +0 -0
  31. package/docs-dev/assets/fonts/inter/Inter-Italic.woff2 +0 -0
  32. package/docs-dev/assets/fonts/inter/Inter-Light.woff2 +0 -0
  33. package/docs-dev/assets/fonts/inter/Inter-LightItalic.woff2 +0 -0
  34. package/docs-dev/assets/fonts/inter/Inter-Medium.woff2 +0 -0
  35. package/docs-dev/assets/fonts/inter/Inter-MediumItalic.woff2 +0 -0
  36. package/docs-dev/assets/fonts/inter/Inter-Regular.woff2 +0 -0
  37. package/docs-dev/assets/fonts/inter/Inter-SemiBold.woff2 +0 -0
  38. package/docs-dev/assets/fonts/inter/Inter-SemiBoldItalic.woff2 +0 -0
  39. package/docs-dev/assets/fonts/inter/Inter-Thin.woff2 +0 -0
  40. package/docs-dev/assets/fonts/inter/Inter-ThinItalic.woff2 +0 -0
  41. package/docs-dev/assets/fonts/inter/InterDisplay-Black.woff2 +0 -0
  42. package/docs-dev/assets/fonts/inter/InterDisplay-BlackItalic.woff2 +0 -0
  43. package/docs-dev/assets/fonts/inter/InterDisplay-Bold.woff2 +0 -0
  44. package/docs-dev/assets/fonts/inter/InterDisplay-BoldItalic.woff2 +0 -0
  45. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraBold.woff2 +0 -0
  46. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraBoldItalic.woff2 +0 -0
  47. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraLight.woff2 +0 -0
  48. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraLightItalic.woff2 +0 -0
  49. package/docs-dev/assets/fonts/inter/InterDisplay-Italic.woff2 +0 -0
  50. package/docs-dev/assets/fonts/inter/InterDisplay-Light.woff2 +0 -0
  51. package/docs-dev/assets/fonts/inter/InterDisplay-LightItalic.woff2 +0 -0
  52. package/docs-dev/assets/fonts/inter/InterDisplay-Medium.woff2 +0 -0
  53. package/docs-dev/assets/fonts/inter/InterDisplay-MediumItalic.woff2 +0 -0
  54. package/docs-dev/assets/fonts/inter/InterDisplay-Regular.woff2 +0 -0
  55. package/docs-dev/assets/fonts/inter/InterDisplay-SemiBold.woff2 +0 -0
  56. package/docs-dev/assets/fonts/inter/InterDisplay-SemiBoldItalic.woff2 +0 -0
  57. package/docs-dev/assets/fonts/inter/InterDisplay-Thin.woff2 +0 -0
  58. package/docs-dev/assets/fonts/inter/InterDisplay-ThinItalic.woff2 +0 -0
  59. package/docs-dev/assets/fonts/inter/InterVariable-Italic.woff2 +0 -0
  60. package/docs-dev/assets/fonts/inter/InterVariable.woff2 +0 -0
  61. package/docs-dev/assets/fonts/inter/LICENSE.txt +92 -0
  62. package/docs-dev/assets/fonts/inter/inter.css +37 -0
  63. package/docs-dev/assets/main.js +15657 -0
  64. package/docs-dev/assets/placeholder/4065947-uhd_4096_2160_25fps.credits.txt +2 -0
  65. package/docs-dev/assets/placeholder/4065947-uhd_4096_2160_25fps.mp4 +0 -0
  66. package/docs-dev/assets/placeholder/image-1-attribution.txt +7 -0
  67. package/docs-dev/assets/placeholder/image-1-darkened.jpg +0 -0
  68. package/docs-dev/assets/placeholder/image-1-lightened.jpg +0 -0
  69. package/docs-dev/assets/placeholder/image-1.jpg +0 -0
  70. package/docs-dev/assets/style.css +18702 -0
  71. package/docs-dev/demos/accordion/index.html +4899 -0
  72. package/docs-dev/demos/button/index.html +4711 -0
  73. package/docs-dev/demos/callout/index.html +4764 -0
  74. package/docs-dev/demos/captioned-figure/index.html +4773 -0
  75. package/docs-dev/demos/card/index.html +5130 -0
  76. package/docs-dev/demos/css-icons/index.html +5362 -0
  77. package/docs-dev/demos/data-grid/index.html +5616 -0
  78. package/docs-dev/demos/data-table/index.html +4787 -0
  79. package/docs-dev/demos/file-save/index.html +4762 -0
  80. package/docs-dev/demos/flipcard/index.html +5311 -0
  81. package/docs-dev/demos/form-theme/index.html +4929 -0
  82. package/docs-dev/demos/hero/index.html +301 -0
  83. package/docs-dev/demos/image-grid/index.html +157 -0
  84. package/docs-dev/demos/index.html +4700 -0
  85. package/docs-dev/demos/list-inline/index.html +4727 -0
  86. package/docs-dev/demos/list-inline.1/index.html +4727 -0
  87. package/docs-dev/demos/list-lines/index.html +4717 -0
  88. package/docs-dev/demos/menu-stack/index.html +4841 -0
  89. package/docs-dev/demos/modals/index.html +4808 -0
  90. package/docs-dev/demos/nav-strip/index.html +4812 -0
  91. package/docs-dev/demos/overlay-section/index.html +4718 -0
  92. package/docs-dev/demos/popovers/index.html +4718 -0
  93. package/docs-dev/demos/print/index.html +4720 -0
  94. package/docs-dev/demos/pull-quote/index.html +4719 -0
  95. package/docs-dev/demos/rule/index.html +4769 -0
  96. package/docs-dev/demos/scroll-slider/index.html +204 -0
  97. package/docs-dev/demos/scrollpoints/index.html +4738 -0
  98. package/docs-dev/demos/slider/index.html +164 -0
  99. package/docs-dev/demos/spoke-spinner/index.html +4715 -0
  100. package/docs-dev/demos/tabs/index.html +4804 -0
  101. package/docs-dev/demos/tag/index.html +4720 -0
  102. package/docs-dev/demos/tile-grid-overlay/index.html +382 -0
  103. package/docs-dev/demos/tiles/index.html +4969 -0
  104. package/docs-dev/demos/tooltip/index.html +4748 -0
  105. package/docs-dev/guide/building-stylesheet/index.html +4769 -0
  106. package/docs-dev/guide/developing-ulu-scss-module/index.html +4821 -0
  107. package/docs-dev/guide/index.html +4702 -0
  108. package/docs-dev/index.html +4749 -0
  109. package/docs-dev/javascript/events/index.html +4860 -0
  110. package/docs-dev/javascript/index.html +4715 -0
  111. package/docs-dev/javascript/ui-breakpoints/index.html +5160 -0
  112. package/docs-dev/javascript/ui-collapsible/index.html +4827 -0
  113. package/docs-dev/javascript/ui-dialog/index.html +4861 -0
  114. package/docs-dev/javascript/ui-flipcard/index.html +4711 -0
  115. package/docs-dev/javascript/ui-grid/index.html +4768 -0
  116. package/docs-dev/javascript/ui-modal-builder/index.html +4850 -0
  117. package/docs-dev/javascript/ui-overflow-scroller/index.html +4700 -0
  118. package/docs-dev/javascript/ui-overflow-scroller-pager/index.html +4718 -0
  119. package/docs-dev/javascript/ui-page/index.html +4715 -0
  120. package/docs-dev/javascript/ui-popover/index.html +4754 -0
  121. package/docs-dev/javascript/ui-print/index.html +4767 -0
  122. package/docs-dev/javascript/ui-print-details/index.html +4730 -0
  123. package/docs-dev/javascript/ui-programmatic-modal/index.html +4700 -0
  124. package/docs-dev/javascript/ui-proxy-click/index.html +4744 -0
  125. package/docs-dev/javascript/ui-resizer/index.html +4770 -0
  126. package/docs-dev/javascript/ui-scroll-slider/index.html +4729 -0
  127. package/docs-dev/javascript/ui-scrollpoint/index.html +4947 -0
  128. package/docs-dev/javascript/ui-slider/index.html +4711 -0
  129. package/docs-dev/javascript/ui-tabs/index.html +4832 -0
  130. package/docs-dev/javascript/ui-tooltip/index.html +4847 -0
  131. package/docs-dev/javascript/utils-class-logger/index.html +4835 -0
  132. package/docs-dev/javascript/utils-dom/index.html +4880 -0
  133. package/docs-dev/javascript/utils-file-save/index.html +4872 -0
  134. package/docs-dev/javascript/utils-floating-ui/index.html +4732 -0
  135. package/docs-dev/javascript/utils-id/index.html +4742 -0
  136. package/docs-dev/javascript/utils-pause-youtube-video/index.html +4750 -0
  137. package/docs-dev/sass/base/color/index.html +4733 -0
  138. package/docs-dev/sass/base/elements/index.html +4904 -0
  139. package/docs-dev/sass/base/index/index.html +4903 -0
  140. package/docs-dev/sass/base/index.html +4709 -0
  141. package/docs-dev/sass/base/keyframes/index.html +4735 -0
  142. package/docs-dev/sass/base/layout/index.html +4895 -0
  143. package/docs-dev/sass/base/normalize/index.html +4743 -0
  144. package/docs-dev/sass/base/print/index.html +4739 -0
  145. package/docs-dev/sass/base/root/index.html +4759 -0
  146. package/docs-dev/sass/base/typography/index.html +4759 -0
  147. package/docs-dev/sass/components/accordion/index.html +5061 -0
  148. package/docs-dev/sass/components/adaptive-spacing/index.html +5004 -0
  149. package/docs-dev/sass/components/badge/index.html +4952 -0
  150. package/docs-dev/sass/components/button/index.html +4888 -0
  151. package/docs-dev/sass/components/button-verbose/index.html +5000 -0
  152. package/docs-dev/sass/components/callout/index.html +4991 -0
  153. package/docs-dev/sass/components/captioned-figure/index.html +4878 -0
  154. package/docs-dev/sass/components/card/index.html +5251 -0
  155. package/docs-dev/sass/components/card-grid/index.html +4902 -0
  156. package/docs-dev/sass/components/css-icon/index.html +5006 -0
  157. package/docs-dev/sass/components/data-grid/index.html +5134 -0
  158. package/docs-dev/sass/components/data-table/index.html +4889 -0
  159. package/docs-dev/sass/components/fill-context/index.html +4768 -0
  160. package/docs-dev/sass/components/flipcard/index.html +5038 -0
  161. package/docs-dev/sass/components/flipcard-grid/index.html +4889 -0
  162. package/docs-dev/sass/components/form-theme/index.html +5619 -0
  163. package/docs-dev/sass/components/hero/index.html +4890 -0
  164. package/docs-dev/sass/components/horizontal-rule/index.html +4887 -0
  165. package/docs-dev/sass/components/image-grid/index.html +4894 -0
  166. package/docs-dev/sass/components/index/index.html +4939 -0
  167. package/docs-dev/sass/components/index.html +4709 -0
  168. package/docs-dev/sass/components/links/index.html +4738 -0
  169. package/docs-dev/sass/components/list-inline/index.html +4908 -0
  170. package/docs-dev/sass/components/list-lines/index.html +4929 -0
  171. package/docs-dev/sass/components/list-ordered/index.html +4734 -0
  172. package/docs-dev/sass/components/list-unordered/index.html +4738 -0
  173. package/docs-dev/sass/components/menu-stack/index.html +5067 -0
  174. package/docs-dev/sass/components/modal/index.html +5122 -0
  175. package/docs-dev/sass/components/nav-strip/index.html +4988 -0
  176. package/docs-dev/sass/components/overlay-section/index.html +4932 -0
  177. package/docs-dev/sass/components/pager/index.html +5050 -0
  178. package/docs-dev/sass/components/placeholder-block/index.html +4972 -0
  179. package/docs-dev/sass/components/popover/index.html +5047 -0
  180. package/docs-dev/sass/components/pull-quote/index.html +4946 -0
  181. package/docs-dev/sass/components/ratio-box/index.html +4892 -0
  182. package/docs-dev/sass/components/rule/index.html +4894 -0
  183. package/docs-dev/sass/components/scroll-slider/index.html +5005 -0
  184. package/docs-dev/sass/components/skip-link/index.html +4878 -0
  185. package/docs-dev/sass/components/slider/index.html +5014 -0
  186. package/docs-dev/sass/components/spoke-spinner/index.html +4952 -0
  187. package/docs-dev/sass/components/tabs/index.html +5028 -0
  188. package/docs-dev/sass/components/tag/index.html +5053 -0
  189. package/docs-dev/sass/components/tile-button/index.html +4933 -0
  190. package/docs-dev/sass/components/tile-grid/index.html +5068 -0
  191. package/docs-dev/sass/components/tile-grid-overlay/index.html +4869 -0
  192. package/docs-dev/sass/components/vignette/index.html +4882 -0
  193. package/docs-dev/sass/components/wysiwyg/index.html +4898 -0
  194. package/docs-dev/sass/core/breakpoint/index.html +5491 -0
  195. package/docs-dev/sass/core/button/index.html +5625 -0
  196. package/docs-dev/sass/core/color/index.html +5482 -0
  197. package/docs-dev/sass/core/cssvar/index.html +5500 -0
  198. package/docs-dev/sass/core/element/index.html +5623 -0
  199. package/docs-dev/sass/core/index.html +4698 -0
  200. package/docs-dev/sass/core/layout/index.html +5458 -0
  201. package/docs-dev/sass/core/path/index.html +4867 -0
  202. package/docs-dev/sass/core/selector/index.html +4946 -0
  203. package/docs-dev/sass/core/typography/index.html +5872 -0
  204. package/docs-dev/sass/core/units/index.html +4905 -0
  205. package/docs-dev/sass/core/utils/index.html +6346 -0
  206. package/docs-dev/sass/helpers/color/index.html +4733 -0
  207. package/docs-dev/sass/helpers/display/index.html +4738 -0
  208. package/docs-dev/sass/helpers/index/index.html +4900 -0
  209. package/docs-dev/sass/helpers/index.html +4709 -0
  210. package/docs-dev/sass/helpers/print/index.html +4738 -0
  211. package/docs-dev/sass/helpers/typography/index.html +4761 -0
  212. package/docs-dev/sass/helpers/units/index.html +4907 -0
  213. package/docs-dev/sass/helpers/utilities/index.html +4738 -0
  214. package/docs-dev/sass/index.html +4760 -0
  215. package/js/ui/modal-builder.js +1 -1
  216. package/js/ui/tabs.js +24 -4
  217. package/package.json +5 -6
  218. package/scss/_color.scss +10 -3
  219. package/scss/base/_typography.scss +7 -7
  220. package/scss/components/README.todos +13 -0
  221. package/scss/components/_accordion.scss +15 -15
  222. package/scss/components/_adaptive-spacing.scss +3 -3
  223. package/scss/components/_badge.scss +5 -4
  224. package/scss/components/_button-verbose.scss +22 -22
  225. package/scss/components/_button.scss +2 -0
  226. package/scss/components/_callout.scss +45 -56
  227. package/scss/components/_captioned-figure.scss +8 -8
  228. package/scss/components/_card-grid.scss +3 -3
  229. package/scss/components/_card.scss +57 -39
  230. package/scss/components/_css-icon.scss +18 -13
  231. package/scss/components/_data-grid.scss +2 -2
  232. package/scss/components/_data-table.scss +15 -6
  233. package/scss/components/_flipcard-grid.scss +2 -2
  234. package/scss/components/_flipcard.scss +15 -14
  235. package/scss/components/_form-theme.scss +47 -47
  236. package/scss/components/_hero.scss +2 -2
  237. package/scss/components/_image-grid.scss +2 -2
  238. package/scss/components/_index.scss +6 -0
  239. package/scss/components/_list-inline.scss +80 -0
  240. package/scss/components/_list-lines.scss +46 -35
  241. package/scss/components/_list-ordered.scss +0 -1
  242. package/scss/components/_menu-stack.scss +5 -6
  243. package/scss/components/_modal.scss +24 -33
  244. package/scss/components/_nav-strip.scss +26 -19
  245. package/scss/components/_overlay-section.scss +4 -4
  246. package/scss/components/_pager.scss +11 -11
  247. package/scss/components/_placeholder-block.scss +6 -6
  248. package/scss/components/_popover.scss +11 -11
  249. package/scss/components/_pull-quote.scss +2 -2
  250. package/scss/components/_ratio-box.scss +2 -2
  251. package/scss/components/_rule.scss +5 -6
  252. package/scss/components/_scroll-slider.scss +3 -3
  253. package/scss/components/_skip-link.scss +2 -1
  254. package/scss/components/_slider.scss +15 -51
  255. package/scss/components/_tabs.scss +119 -53
  256. package/scss/components/_tag.scss +3 -3
  257. package/types/ui/tabs.d.ts.map +1 -1
@@ -18,7 +18,7 @@
18
18
  /// @prop {} color [inherit]
19
19
  /// @prop {} color-placeholder ["type-tertiary"]
20
20
  /// @prop {} drupal [false]
21
- /// @prop {} error-color ["error"]
21
+ /// @prop {} error-color ["danger"]
22
22
  /// @prop {} error-highlight-color [rgb(251, 242, 242)]
23
23
  /// @prop {} error-selector [".is-danger"]
24
24
  /// @prop {} file-button-style [true]
@@ -37,7 +37,7 @@
37
37
  /// @prop {} input-background-color [white]
38
38
  /// @prop {} item-border-radius [null]
39
39
  /// @prop {} item-highlight-width [6px]
40
- /// @prop {} required-color ["error"]
40
+ /// @prop {} required-color ["danger"]
41
41
  /// @prop {} text-input-margin-bottom [0.5em]
42
42
  /// @prop {} text-input-margin-top [1em]
43
43
  /// @prop {} warning-color ["warning"]
@@ -82,9 +82,11 @@
82
82
  /// @prop {} fieldset-margin-top [1rem]
83
83
  /// @prop {} fieldset-padding [0]
84
84
  /// @prop {} fieldset-margin-compact [0]
85
+ /// @prop {} fieldset-border-bottom [0]
85
86
  /// @prop {} fieldset-border-radius [0]
86
87
  /// @prop {} fieldset-legend-color [inherit]
87
88
  /// @prop {} fieldset-legend-border-bottom [null]
89
+ /// @prop {} fieldset-legend-padding-bottom [null]
88
90
  /// @prop {} select-border-radius [4px]
89
91
  /// @prop {} select-background-color [null]
90
92
  /// @prop {} select-border [null]
@@ -94,12 +96,13 @@
94
96
  /// @prop {} select-image-size [0.9em]
95
97
  /// @prop {} select-image-offset [0.7em]
96
98
  /// @prop {} select-image-margin [0.65em]
99
+ /// @prop {Unit} inline-gap [1em] Gap between items that are inline like checkboxes
97
100
 
98
101
  $config: (
99
102
  "color" : inherit,
100
103
  "color-placeholder" : "type-tertiary",
101
104
  "drupal" : false,
102
- "error-color" : "error",
105
+ "error-color" : "danger",
103
106
  "error-highlight-color" : rgb(251, 242, 242),
104
107
  "error-selector" : ".is-danger",
105
108
  "file-button-style" : true,
@@ -111,14 +114,14 @@ $config: (
111
114
  "font-weight-select" : null,
112
115
  "input-border" : element.get-rule-style(),
113
116
  "input-border-radius" : 0,
114
- "input-margin-y" : 0.75em,
117
+ "item-margin-y" : 0.75em,
115
118
  "input-padding-x" : 0.5em,
116
119
  "input-padding-y" : 0.25em,
117
120
  "input-min-width" : 10em,
118
121
  "input-background-color" : white,
119
122
  "item-border-radius" : null,
120
123
  "item-highlight-width" : 6px,
121
- "required-color" : "error",
124
+ "required-color" : "danger",
122
125
  "text-input-margin-bottom" : 0.5em,
123
126
  "text-input-margin-top" : 1em,
124
127
  "warning-color" : "warning",
@@ -166,6 +169,8 @@ $config: (
166
169
  "fieldset-border-radius" : 0,
167
170
  "fieldset-legend-color" : inherit,
168
171
  "fieldset-legend-border-bottom" : null,
172
+ "fieldset-legend-padding-bottom" : 0,
173
+ "fieldset-legend-margin-bottom" : 0.5em,
169
174
  "select-border-radius" : 4px,
170
175
  "select-background-color" : null,
171
176
  "select-border" : null,
@@ -175,11 +180,12 @@ $config: (
175
180
  "select-image-size" : 0.9em,
176
181
  "select-image-offset" : 0.7em,
177
182
  "select-image-margin" : 0.65em,
183
+ "inline-gap" : 1em
178
184
  ) !default;
179
185
 
180
186
  /// Change modules $config
181
187
  /// @param {Map} $changes Map of changes
182
- /// @example
188
+ /// @example scss
183
189
  /// @include ulu.component-form-theme-set(( "property" : value ));
184
190
 
185
191
  @mixin set($changes) {
@@ -188,7 +194,7 @@ $config: (
188
194
 
189
195
  /// Get a config option
190
196
  /// @param {Map} $name Name of property
191
- /// @example
197
+ /// @example scss
192
198
  /// @include ulu.component-form-theme-get("property");
193
199
 
194
200
  @function get($name) {
@@ -258,7 +264,7 @@ $config: (
258
264
  textarea,
259
265
  label,
260
266
  legend {
261
- color: get("color");
267
+ color: color.get(get("color"));
262
268
  font-size: 1em;
263
269
  max-width: 100%;
264
270
  line-height: typography.get("line-height-dense");
@@ -291,7 +297,7 @@ $config: (
291
297
  [type="password"],
292
298
  [type="file"] {
293
299
  padding: get("input-padding-y") get("input-padding-x");
294
- background-color: get("input-background-color");
300
+ background-color: color.get(get("input-background-color"));
295
301
  border-radius: get("input-border-radius");
296
302
  transition: border linear 0.2s;
297
303
  border: get("input-border");
@@ -305,9 +311,8 @@ $config: (
305
311
  }
306
312
  select {
307
313
  font-weight: get("font-weight-select");
308
- border: get("select-border");
309
314
  border-radius: get("select-border-radius");
310
- background-color: get("select-background-color");
315
+ background-color: color.get(get("select-background-color"));
311
316
  padding: -fallback("select-padding-y", "input-padding-y") -fallback("select-padding-x", "input-padding-x");
312
317
  border: -fallback("select-border", "input-border");
313
318
  @if get("select-image") {
@@ -365,39 +370,39 @@ $config: (
365
370
  opacity: 0;
366
371
  transform: rotate(45deg);
367
372
  transition: opacity ease-out 150ms;
368
- border: get("check-input-radio-size") solid get("check-input-mark-color");
373
+ border: get("check-input-radio-size") solid color.get(get("check-input-mark-color"));
369
374
  border-radius: 50%;
370
375
  }
371
376
  &:focus {
372
- background-color: get("check-input-touch-color-focus");
377
+ background-color: color.get(get("check-input-touch-color-focus"));
373
378
  &:before {
374
- border-color: get("check-input-border-color-focus");
379
+ border-color: color.get(get("check-input-border-color-focus"));
375
380
  outline: get("check-input-outline-focus");
376
381
  }
377
382
  &:after {
378
- border-color: get("check-input-mark-color-focus");
383
+ border-color: color.get(get("check-input-mark-color-focus"));
379
384
  }
380
385
  }
381
386
  &:hover {
382
- background-color: get("check-input-touch-color-hover");
387
+ background-color: color.get(get("check-input-touch-color-hover"));
383
388
  &:before {
384
389
  outline: get("check-input-outline-hover");
385
- background-color: get("check-input-background-color-hover");
386
- border-color: get("check-input-border-color-hover");
390
+ background-color: color.get(get("check-input-background-color-hover"));
391
+ border-color: color.get(get("check-input-border-color-hover"));
387
392
  }
388
393
  &:after {
389
- border-color: get("check-input-mark-color-hover");
394
+ border-color: color.get(get("check-input-mark-color-hover"));
390
395
  }
391
396
  }
392
397
  &:checked {
393
398
  &:before {
394
- background-color: get("check-input-background-color-checked");
395
- border-color: get("check-input-border-color-checked");
399
+ background-color: color.get(get("check-input-background-color-checked"));
400
+ border-color: color.get(get("check-input-border-color-checked"));
396
401
  outline: get("check-input-outline-checked");
397
402
  }
398
403
  &:after {
399
404
  opacity: 1;
400
- border-color: get("check-input-mark-color-checked");
405
+ border-color: color.get(get("check-input-mark-color-checked"));
401
406
  }
402
407
  }
403
408
 
@@ -428,15 +433,15 @@ $config: (
428
433
  &:indeterminate,
429
434
  &[aria-checked=mixed] {
430
435
  &:before {
431
- background-color: get("check-input-background-color-indeterminate");
432
- border-color: get("check-input-border-color-indeterminate");
436
+ background-color: color.get(get("check-input-background-color-indeterminate"));
437
+ border-color: color.get(get("check-input-border-color-indeterminate"));
433
438
  }
434
439
  &:after {
435
440
  border-right: none;
436
441
  transform: translatey(50%);
437
442
  opacity: 1;
438
443
  height: get("check-input-checkmark-stroke-size");
439
- border-color: get("check-input-mark-color-indeterminate");
444
+ border-color: color.get(get("check-input-mark-color-indeterminate"));
440
445
  }
441
446
  }
442
447
  }
@@ -449,38 +454,32 @@ $config: (
449
454
  margin-top: get("fieldset-margin-top");
450
455
  margin-bottom: get("fieldset-margin-bottom");
451
456
  border: get("fieldset-border");
452
- background-color: get("fieldset-background");
457
+ background-color: color.get(get("fieldset-background"));
453
458
  border-radius: get("fieldset-border-radius");
454
459
  padding: get("fieldset-padding");
455
460
 
456
461
  > legend {
457
462
  font-weight: get("font-weight-legend");
458
463
  display: block;
459
- margin: 0 0 0.5em 0;
464
+ margin: 0 0 get("fieldset-legend-margin-bottom") 0;
460
465
  border: 0;
461
- padding: 0;
466
+ padding: 0 0 get("fieldset-legend-padding-bottom") 0;
462
467
  width: 100%;
463
468
  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: get("fieldset-legend-color");
471
- }
469
+ border-bottom: get("fieldset-legend-border-bottom");
470
+ color: color.get(get("fieldset-legend-color"));
472
471
  & ~ * {
473
472
  clear: left;
474
473
  }
475
474
  }
476
475
  &#{ $selectError } {
477
476
  > legend {
478
- color: $errorColor;
477
+ color: color.get($errorColor);
479
478
  }
480
479
  }
481
480
  &#{ $selectWarning } {
482
481
  > legend {
483
- color: $warningColor;
482
+ color: color.get($warningColor);
484
483
  }
485
484
  }
486
485
  }
@@ -502,7 +501,7 @@ $config: (
502
501
  font-style: italic;
503
502
  @include typography.size("small", null, true);
504
503
  max-width: get("description-max-width");
505
- color: get("description-color");
504
+ color: color.get(get("description-color"));
506
505
  }
507
506
 
508
507
  /// Styles for form item that should have label as block and text input
@@ -547,11 +546,11 @@ $config: (
547
546
  #{ $prefix }__item {
548
547
  display: flex;
549
548
  align-items: center;
550
- margin-bottom: get("input-margin-y");
549
+ margin-bottom: get("item-margin-y");
551
550
  border-radius: get("item-border-radius");
552
551
  flex-shrink: 0; // Cannot be smaller than content within
553
- @include -form-item-state($selectError, $errorColor, get("error-highlight-color"));
554
- @include -form-item-state($selectWarning, $warningColor, get("warning-highlight-color"));
552
+ @include -form-item-state($selectError, $errorColor, color.get(get("error-highlight-color")));
553
+ @include -form-item-state($selectWarning, $warningColor, color.get(get("warning-highlight-color")));
555
554
  }
556
555
  #{ $prefix }__item--align-top {
557
556
  align-items: flex-start;
@@ -565,8 +564,9 @@ $config: (
565
564
  #{ $prefix }__items-inline {
566
565
  display: flex;
567
566
  flex-wrap: wrap;
567
+ gap: get("inline-gap");
568
568
  > #{ $prefix }__item {
569
- margin-right: 1.5em;
569
+ margin: 0;
570
570
  }
571
571
  }
572
572
  #{ $prefix }__actions {
@@ -578,10 +578,10 @@ $config: (
578
578
  }
579
579
  }
580
580
  #{ $prefix }__error {
581
- color: $errorColor;
581
+ color: color.get($errorColor);
582
582
  }
583
583
  #{ $prefix }__warning {
584
- color: $warningColor;
584
+ color: color.get($warningColor);
585
585
  }
586
586
  }
587
587
 
@@ -622,12 +622,12 @@ $config: (
622
622
  // outline: get("item-outline-width") solid $highlightColor;
623
623
  box-shadow: 0 0 0 get("item-highlight-width") $highlightColor;
624
624
  label {
625
- color: $color;
625
+ color: color.get($color);
626
626
  }
627
627
  select,
628
628
  textarea,
629
629
  input:not([type="checkbox"]):not([type="radio"]) {
630
- border-color: $color;
630
+ border-color: color.get($color);
631
631
  }
632
632
  }
633
633
  }
@@ -32,7 +32,7 @@ $config: (
32
32
 
33
33
  /// Change modules $config
34
34
  /// @param {Map} $changes Map of changes
35
- /// @example
35
+ /// @example scss
36
36
  /// @include ulu.component-hero-set(( "property" : value ));
37
37
 
38
38
  @mixin set($changes) {
@@ -41,7 +41,7 @@ $config: (
41
41
 
42
42
  /// Get a config option
43
43
  /// @param {Map} $name Name of property
44
- /// @example
44
+ /// @example scss
45
45
  /// @include ulu.component-hero-get("property");
46
46
 
47
47
  @function get($name) {
@@ -24,7 +24,7 @@ $config: (
24
24
 
25
25
  /// Change modules $config
26
26
  /// @param {Map} $changes Map of changes
27
- /// @example
27
+ /// @example scss
28
28
  /// @include ulu.component-image-grid-set(( "property" : value ));
29
29
 
30
30
  @mixin set($changes) {
@@ -33,7 +33,7 @@ $config: (
33
33
 
34
34
  /// Get a config option
35
35
  /// @param {Map} $name Name of property
36
- /// @example
36
+ /// @example scss
37
37
  /// @include ulu.component-image-grid-get("property");
38
38
 
39
39
  @function get($name) {
@@ -22,6 +22,7 @@
22
22
  @forward "image-grid" as image-grid-*;
23
23
  @forward "links" as links-*;
24
24
  @forward "list-lines" as list-lines-*;
25
+ @forward "list-inline" as list-inline-*;
25
26
  @forward "list-ordered" as list-ordered-*;
26
27
  @forward "list-unordered" as list-unordered-*;
27
28
  @forward "menu-stack" as menu-stack-*;
@@ -69,6 +70,7 @@
69
70
  @use "horizontal-rule";
70
71
  @use "image-grid";
71
72
  @use "list-lines";
73
+ @use "list-inline";
72
74
  @use "list-ordered";
73
75
  @use "list-unordered";
74
76
  @use "links";
@@ -119,6 +121,7 @@ $all-includes: (
119
121
  "image-grid",
120
122
  "links",
121
123
  "list-lines",
124
+ "list-inline",
122
125
  "list-ordered",
123
126
  "list-unordered",
124
127
  "menu-stack",
@@ -241,6 +244,9 @@ $current-includes: $all-includes;
241
244
  @if (list.index($includes, "list-lines")) {
242
245
  @include list-lines.styles;
243
246
  }
247
+ @if (list.index($includes, "list-inline")) {
248
+ @include list-inline.styles;
249
+ }
244
250
  @if (list.index($includes, "list-unordered")) {
245
251
  @include list-unordered.styles;
246
252
  }
@@ -0,0 +1,80 @@
1
+ ////
2
+ /// @group list-inline
3
+ ////
4
+
5
+ @use "sass:map";
6
+
7
+ @use "../element";
8
+ @use "../selector";
9
+ @use "../utils";
10
+
11
+ /// Module Config
12
+ /// @prop {String} rule-style ["light"] Name of element > rule style to use for divider/border
13
+ /// @prop {Dimension} margin-top [0] Top margin of list.
14
+ /// @prop {Dimension} margin-bottom [1em] Bottom margin of list.
15
+ /// @prop {Dimension} space-between [1em] Gap between item and dividers
16
+ /// @prop {Dimension} space-between-large [1em] Gap between item and dividers when using large-gap modifier
17
+
18
+ $config: (
19
+ "rule-style" : "light",
20
+ "margin-top": 0,
21
+ "margin-bottom": 1em,
22
+ "space-between" : 1em,
23
+ "space-between-large" : 2em
24
+ ) !default;
25
+
26
+ /// Change modules $config
27
+ /// @param {Map} $changes Map of changes
28
+ /// @example scss
29
+ /// @include ulu.component-list-inline-set(( "property" : value ));
30
+
31
+ @mixin set($changes) {
32
+ $config: map.merge($config, $changes) !global;
33
+ }
34
+
35
+ /// Get a config option
36
+ /// @param {Map} $name Name of property
37
+ /// @example scss
38
+ /// @include ulu.component-list-inline-get("property");
39
+
40
+ @function get($name) {
41
+ @return utils.require-map-get($config, $name, "list-inline [config]");
42
+ }
43
+
44
+ /// Output component stylesheet
45
+ /// @example scss
46
+ /// @include ulu.component-list-inline-styles();
47
+
48
+ @mixin styles {
49
+ $prefix: selector.class("list-inline");
50
+ $border: element.get-rule-style(get("rule-style"));
51
+
52
+ ul#{ $prefix },
53
+ #{ $prefix } ul {
54
+ list-style: none;
55
+ display: inline-flex;
56
+ flex-wrap: wrap;
57
+ margin: get("margin-top") 0 get("margin-bottom") 0;
58
+ }
59
+ #{ $prefix } {
60
+ li {
61
+ // Not using flex gap because we would need to position
62
+ // pseudo for divider, so we would still need to use math
63
+ // So custom properties couldn't be used (no benefit)
64
+ padding-right: get("space-between");
65
+ margin-right: get("space-between");
66
+ border-right: $border;
67
+ &:last-child {
68
+ border-right: none;
69
+ padding-right: 0;
70
+ margin-right: 0;
71
+ }
72
+ }
73
+ }
74
+ #{ $prefix }--large-gap {
75
+ li {
76
+ padding-right: get("space-between-large");
77
+ margin-right: get("space-between-large");
78
+ }
79
+ }
80
+ }
@@ -3,30 +3,45 @@
3
3
  ////
4
4
 
5
5
  @use "sass:map";
6
+ @use "sass:meta";
6
7
 
7
8
  @use "../element";
8
- @use "../color";
9
9
  @use "../typography";
10
+ @use "../selector";
10
11
  @use "../utils";
11
12
 
13
+ // Used for function fallback
14
+ $-fallbacks: (
15
+ "dense-line-height" : (
16
+ "function" : meta.get-function("get", false, "typography"),
17
+ "property" : "line-height-dense"
18
+ ),
19
+ );
20
+
12
21
  /// Module Config
13
22
  /// @prop {Boolean} border-first [true] If enabled, adds a top border to the first item in list-lines.
14
23
  /// @prop {Boolean} border-last [true] If enabled, adds a bottom border to the last item in list-lines.
24
+ /// @prop {String} rule-style ["light"] Name of element > rule style to use for divider/border
15
25
  /// @prop {Dimension} margin-bottom [1em] Bottom margin of list.
16
26
  /// @prop {Dimension} margin-top [0] Top margin of list.
17
27
  /// @prop {Dimension} padding-between [1em] Padding between items in list.
28
+ /// @prop {Dimension} padding-between [1em] Padding between items in list when using dense modifier
29
+ /// @prop {Dimension} line-height-dense [true] Line height when list lines has dense modifier (defaults to typography line-height-dense)
18
30
 
19
31
  $config: (
20
32
  "border-first" : true,
21
33
  "border-last" : true,
22
34
  "margin-bottom": 1em,
23
35
  "margin-top": 0,
24
- "padding-between" : 1em
36
+ "rule-style" : "light",
37
+ "padding-between" : 1em,
38
+ "dense-padding-between" : 0.65em,
39
+ "dense-line-height" : true
25
40
  ) !default;
26
41
 
27
42
  /// Change modules $config
28
43
  /// @param {Map} $changes Map of changes
29
- /// @example
44
+ /// @example scss
30
45
  /// @include ulu.component-list-lines-set(( "property" : value ));
31
46
 
32
47
  @mixin set($changes) {
@@ -35,35 +50,12 @@ $config: (
35
50
 
36
51
  /// Get a config option
37
52
  /// @param {Map} $name Name of property
38
- /// @example
53
+ /// @example scss
39
54
  /// @include ulu.component-list-lines-get("property");
40
55
 
41
56
  @function get($name) {
42
- @return utils.require-map-get($config, $name, "grid [config]");
43
- }
44
-
45
- /// Output component styles
46
-
47
- @mixin inner-styles {
48
- $border: element.get-rule-style("light") !default;
49
- list-style: none;
50
- margin: get("margin-top") 0 get("margin-bottom") 0;
51
- padding: 0;
52
- @if (get("border-first")) {
53
- border-top: $border;
54
- }
55
- >li {
56
- border-bottom: $border;
57
- padding: get("padding-between") 0;
58
- >*:last-child {
59
- margin-bottom: 0;
60
- }
61
- @if (not get("border-last")) {
62
- &:last-child {
63
- border-bottom-width: 0;
64
- }
65
- }
66
- }
57
+ $value: utils.require-map-get($config, $name, "list-lines [config]");
58
+ @return utils.function-fallback($name, $value, $-fallbacks);
67
59
  }
68
60
 
69
61
  /// Output component stylesheet
@@ -71,14 +63,33 @@ $config: (
71
63
  /// @include ulu.component-list-lines-styles();
72
64
 
73
65
  @mixin styles {
74
-
75
- .list-lines {
76
- @include inner-styles;
66
+ $prefix: selector.class("list-lines");
67
+ $border: element.get-rule-style(get("rule-style"));
68
+
69
+ #{ $prefix } {
70
+ list-style: none;
71
+ margin: get("margin-top") 0 get("margin-bottom") 0;
72
+ padding: 0;
73
+ @if (get("border-first")) {
74
+ border-top: $border;
75
+ }
76
+ >li {
77
+ border-bottom: $border;
78
+ padding: get("padding-between") 0;
79
+ >*:last-child {
80
+ margin-bottom: 0;
81
+ }
82
+ @if (not get("border-last")) {
83
+ &:last-child {
84
+ border-bottom-width: 0;
85
+ }
86
+ }
87
+ }
77
88
  }
78
- .list-lines--dense {
89
+ #{ $prefix }--dense {
79
90
  >li {
80
- padding: 0.5em 0;
81
- line-height: typography.get("line-height-dense");
91
+ padding: get("dense-padding-between") 0;
92
+ line-height: get("dense-line-height");
82
93
  }
83
94
  }
84
95
  }
@@ -3,7 +3,6 @@
3
3
  ////
4
4
 
5
5
  @use "../element";
6
- @use "../color";
7
6
  @use "../selector";
8
7
 
9
8
  /// Output component stylesheet
@@ -24,7 +24,7 @@ $-fallbacks: (
24
24
 
25
25
  /// Module Settings
26
26
  /// @type Map
27
- /// @prop {Dimension} checkbox-area-width [3em] The width of the checkbox are.
27
+ /// @prop {Dimension} checkbox-area-width [3em] The width of the checkbox area.
28
28
  /// @prop {Boolean} link-separated-margin [false] Enables a margin between the items in the menu-stack.
29
29
  /// @prop {Boolean} link-separated-rule-style [false] Enables a rule between the items in the menu-stack.
30
30
  /// @prop {Dimension} nested-indent [0.5em] The indentation of child lists within the menu-stack.
@@ -62,7 +62,6 @@ $config: (
62
62
  "toggle-icon-rotate" : false,
63
63
  "compact-link-padding-x": 0.75em,
64
64
  "compact-link-padding-y": 0.25em,
65
-
66
65
  "label-color" : null,
67
66
  "label-margin" : 0.5em,
68
67
  "label-text-transform" : uppercase,
@@ -86,7 +85,7 @@ $config: (
86
85
 
87
86
  /// Change modules $config
88
87
  /// @param {Map} $changes Map of changes
89
- /// @example
88
+ /// @example scss
90
89
  /// @include ulu.component-menu-stack-set(( "property" : value ));
91
90
 
92
91
  @mixin set($changes) {
@@ -95,7 +94,7 @@ $config: (
95
94
 
96
95
  /// Get a config option
97
96
  /// @param {Map} $name Name of property
98
- /// @example
97
+ /// @example scss
99
98
  /// @include ulu.component-menu-stack-get("property");
100
99
 
101
100
  @function get($name) {
@@ -220,8 +219,8 @@ $config: (
220
219
 
221
220
  // Link buttons hang outside in margin so that text optically aligns
222
221
  #{ $prefix }--hanging {
223
- padding-left: get("link-padding-x");
224
- padding-right: get("link-padding-x");
222
+ // padding-left: get("link-padding-x");
223
+ // padding-right: get("link-padding-x");
225
224
  > #{ $prefix }__list > #{ $prefix }__item {
226
225
  > #{ $prefix }__link,
227
226
  >#{ $prefix }__collapsible > #{ $prefix }__toggle {