@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
@@ -10,6 +10,7 @@
10
10
  @use "../utils";
11
11
  @use "../element";
12
12
  @use "../typography";
13
+ @use "../color";
13
14
 
14
15
  // Used for function fallback
15
16
  $-fallbacks: (
@@ -52,7 +53,7 @@ $config: (
52
53
 
53
54
  /// Change modules $config
54
55
  /// @param {Map} $changes Map of changes
55
- /// @example
56
+ /// @example scss
56
57
  /// @include ulu.component-captioned-figure-set(( "property" : value ));
57
58
 
58
59
  @mixin set($changes) {
@@ -61,7 +62,7 @@ $config: (
61
62
 
62
63
  /// Get a config option
63
64
  /// @param {Map} $name Name of property
64
- /// @example
65
+ /// @example scss
65
66
  /// @include ulu.component-captioned-figure-get("property");
66
67
 
67
68
  @function get($name) {
@@ -71,7 +72,6 @@ $config: (
71
72
 
72
73
  /// Prints component styles
73
74
  /// @example scss
74
- /// @example
75
75
  /// @include ulu.component-captioned-figure-styles();
76
76
 
77
77
  @mixin styles {
@@ -83,7 +83,7 @@ $config: (
83
83
  display: block;
84
84
  position: relative;
85
85
  margin-bottom: get("margin-bottom");
86
- background-color: get("background-color");
86
+ background-color: color.get(get("background-color"));
87
87
  > img {
88
88
  width: 100%;
89
89
  height: auto;
@@ -102,20 +102,20 @@ $config: (
102
102
  }
103
103
  #{ $prefix }__caption {
104
104
  position: absolute;
105
- color: get("color");
105
+ color: color.get(get("color"));
106
106
  @include typography.size(get("type-size"), $only-font-size: true);
107
107
  line-height: get("line-height");
108
108
  max-width: get("caption-max-width");
109
- background-color: get("caption-background-color");
109
+ background-color: color.get(get("caption-background-color"));
110
110
  padding: get("caption-padding");
111
111
  backdrop-filter: get("caption-backdrop-filter");
112
112
  }
113
113
  #{ $prefix }--traditional {
114
114
  #{ $prefix }__caption {
115
115
  position: static;
116
- color: get("traditional-caption-color");
116
+ color: color.get(get("traditional-caption-color"));
117
117
  max-width: get("traditional-caption-max-width");
118
- background-color: get("traditional-caption-background-color");
118
+ background-color: color.get(get("traditional-caption-background-color"));
119
119
  padding: get("traditional-caption-padding");
120
120
  text-align: get("traditional-caption-text-align");
121
121
  @if (get("traditional-caption-text-align") == right) {
@@ -25,7 +25,7 @@ $config: (
25
25
 
26
26
  /// Change modules $config
27
27
  /// @param {Map} $changes Map of changes
28
- /// @example
28
+ /// @example scss
29
29
  /// @include ulu.component-card-grid-set(( "property" : value ));
30
30
 
31
31
  @mixin set($changes) {
@@ -34,7 +34,7 @@ $config: (
34
34
 
35
35
  /// Get a config option
36
36
  /// @param {Map} $name Name of property
37
- /// @example
37
+ /// @example scss
38
38
  /// @include ulu.component-card-grid-get("property");
39
39
 
40
40
  @function get($name) {
@@ -51,7 +51,7 @@ $config: (
51
51
 
52
52
  #{ $prefix } {
53
53
  display: grid;
54
- grid-template-columns: get("template-columns");
54
+ grid-template-columns: get("template-columns");
55
55
  grid-auto-rows: 1fr;
56
56
  gap: get("gap");
57
57
  margin: get("gap") 0;
@@ -9,6 +9,7 @@
9
9
  @use "../breakpoint";
10
10
  @use "../utils";
11
11
  @use "../selector";
12
+ @use "../color";
12
13
 
13
14
  // todo
14
15
  // sass color adjust for smooth transition. Add a comment for this if we can’t get to this
@@ -18,7 +19,6 @@
18
19
  /// @prop {Dimension} padding [2rem] The padding for the image icon
19
20
  /// @prop {Dimension} margin-y [3rem] Top and bottom margin for the card.
20
21
  /// @prop {Dimension} border-radius [5rem] The border radius of the card.
21
- /// @prop {String} horizontal-breakpoint [small] The breakpoint used to change the card to vertical if using the card--horizontal styling. Uses ulu's breakpoint module.
22
22
  /// @prop {CssValue} box-shadow [null] The box-shadow for the card.
23
23
  /// @prop {CssValue} box-shadow-hover [null] The box-shadow for the card when hovered or focused.
24
24
  /// @prop {Color} color [null] The type color of the card.
@@ -57,8 +57,10 @@
57
57
  /// @prop {Boolean} image-transition-enabled [true] Enable or disable the image transition.
58
58
  /// @prop {Time} image-transition-duration [350ms] The duration of the image transition.
59
59
  /// @prop {CssValue} image-transition-timing-function [ease-in-out] The timing function for the image transition.
60
+ /// @prop {List} image-icon-max-width [30rem] Max width for image when using the modifier on the .card__image--icon
60
61
  /// @prop {List} image-transition-properties [(transform, filter)] The properties for the image transitions.
61
-
62
+ /// @prop {String} horizontal-breakpoint [small] The breakpoint used to change the card to vertical if using the card--horizontal styling. Uses ulu's breakpoint module.
63
+ /// @prop {Unit} horizontal-body-max-width [80rem] The max-width of body when horizontal
62
64
 
63
65
 
64
66
  $config: (
@@ -78,6 +80,8 @@ $config: (
78
80
  "footer-padding-y" : 0.25rem,
79
81
  "footer-min-height" : 2.5rem,
80
82
  "horizontal-breakpoint" : "small",
83
+ "horizontal-image-width" : 33%,
84
+ "horizontal-body-max-width" : 80rem,
81
85
  "header-margin" : 0.75em,
82
86
  "image-ratio" : 56.25%,
83
87
  "image-aspect-ratio": list.slash(5, 3),
@@ -85,6 +89,7 @@ $config: (
85
89
  "image-border" : null, // For when you have a margin
86
90
  "image-filter-hover" : null,
87
91
  "image-margin" : null,
92
+ "image-icon-max-width" : 30rem,
88
93
  "image-transform-hover" : null,
89
94
  "image-transition-duration" : 350ms,
90
95
  "image-transition-enabled" : true,
@@ -109,11 +114,11 @@ $config: (
109
114
  "overlay-background-color": rgba(0, 0, 0, 0.6),
110
115
  "overlay-shading": true,
111
116
  "overlay-body-padding-y": 1rem,
112
- ) !default;
117
+ ) !default;
113
118
 
114
119
  /// Change modules $config
115
120
  /// @param {Map} $changes Map of changes
116
- /// @example
121
+ /// @example scss
117
122
  /// @include ulu.component-card-set(( "property" : value ));
118
123
 
119
124
  @mixin set($changes) {
@@ -122,7 +127,7 @@ $config: (
122
127
 
123
128
  /// Get a config option
124
129
  /// @param {Map} $name Name of property
125
- /// @example
130
+ /// @example scss
126
131
  /// @include ulu.component-card-get(( "property" : value ));
127
132
 
128
133
  @function get($name) {
@@ -131,6 +136,9 @@ $config: (
131
136
 
132
137
  /// Mixin styles for card when it has proxy click enabled and is being interacted with (hover/focus)
133
138
  /// @param {Boolean} $hover [false] Apply styles when the card is being hover/focused within, else applies styles to rest state of a clickable card (one who has a proxy click setup)
139
+ /// Prints component styles
140
+ /// @example scss
141
+ /// @include ulu.component-card-styles();
134
142
 
135
143
  @mixin when-clickable($hover: false) {
136
144
  $prefix: selector.class("card");
@@ -164,8 +172,8 @@ $config: (
164
172
  $prefix: selector.class("card");
165
173
 
166
174
  #{ $prefix } {
167
- color: get("color");
168
- background-color: get("background-color");
175
+ color: color.get(get("color"));
176
+ background-color: color.get(get("background-color"));
169
177
  border-radius: get("border-radius");
170
178
  box-shadow: get("box-shadow");
171
179
  margin-top: get("margin-y");
@@ -175,34 +183,31 @@ $config: (
175
183
  flex-direction: column;
176
184
  justify-content: flex-end;
177
185
  max-width: get("max-width");
178
- }
179
- @if (get("border") or get("border-hover") or get("overlay-background-color-hover")) {
180
- @include when-clickable($hover: false) {
181
- &:after {
182
- position: absolute;
183
- content: if(get("border"), "", false);
184
- top: 0;
185
- bottom: 0;
186
- right: 0;
187
- left: 0;
188
- border: get("border");
189
- border-radius: get("border-radius");
190
- z-index: 4;
191
- pointer-events: none;
192
- }
186
+ // Border is on pseudo so that it's on top of image/etc
187
+ &:after {
188
+ position: absolute;
189
+ content: if(get("border"), "", null);
190
+ top: 0;
191
+ bottom: 0;
192
+ right: 0;
193
+ left: 0;
194
+ border: get("border");
195
+ border-radius: get("border-radius");
196
+ z-index: 4;
197
+ pointer-events: none;
193
198
  }
194
199
  }
195
200
 
196
201
  @include when-clickable($hover: true) {
197
- background-color: get("background-color-hover");
198
- color: get("color-hover");
202
+ background-color: color.get(get("background-color-hover"));
203
+ color: color.get(get("color-hover"));
199
204
  box-shadow: get("box-shadow-hover");
200
205
 
201
206
  @if (get("border-hover") or get("overlay-background-color-hover")) {
202
207
  &:after {
203
208
  content: "";
204
209
  border: get("border-hover");
205
- background-color: get("overlay-background-color-hover");
210
+ background-color: color.get(get("overlay-background-color-hover"));
206
211
  }
207
212
  }
208
213
  }
@@ -219,14 +224,14 @@ $config: (
219
224
  }
220
225
 
221
226
  #{ $prefix }__title {
222
- color: get("title-color");
227
+ color: color.get(get("title-color"));
223
228
  margin-bottom: get("title-margin");
224
229
  display: block;
225
230
  font-weight: get("title-font-weight");
226
231
  @if get("title-color-hover") {
227
232
  &:hover,
228
233
  &:focus {
229
- color: get("title-color-hover");
234
+ color: color.get(get("title-color-hover"));
230
235
  }
231
236
  }
232
237
  #{ $prefix }__title-link {
@@ -236,7 +241,7 @@ $config: (
236
241
  @if get("title-color-hover") {
237
242
  @include when-clickable($hover: true) {
238
243
  #{ $prefix }__title {
239
- color: get("title-color-hover");
244
+ color: color.get(get("title-color-hover"));
240
245
  }
241
246
  }
242
247
  }
@@ -254,7 +259,7 @@ $config: (
254
259
  // padding-top: get("image-ratio"); // 9:16
255
260
  margin: get("image-margin");
256
261
  border: get("image-border");
257
- background-color: get("image-background-color");
262
+ background-color: color.get(get("image-background-color"));
258
263
  border-top-right-radius: get("border-radius");
259
264
  border-top-left-radius: get("border-radius");
260
265
  aspect-ratio: get("image-aspect-ratio");
@@ -299,7 +304,7 @@ $config: (
299
304
  img {
300
305
  position: static;
301
306
  display: block;
302
- max-width: 30rem;
307
+ max-width: get("image-icon-max-width");
303
308
  height: auto;
304
309
  top: auto;
305
310
  left: auto;
@@ -337,11 +342,15 @@ $config: (
337
342
  position: relative;
338
343
  flex-grow: 0;
339
344
  z-index: 2;
340
- color: get("color-overlay");
341
- background-color: get("overlay-background-color");
345
+ color: color.get(get("color-overlay"));
346
+ background-color: color.get(get("overlay-background-color"));
342
347
  min-height: 0;
343
348
  padding-top: get("overlay-body-padding-y");
344
349
  padding-bottom: get("overlay-body-padding-y");
350
+ &:not(:has(~ #{ $prefix }__footer)) {
351
+ border-bottom-left-radius: get("border-radius");
352
+ border-bottom-right-radius: get("border-radius");
353
+ }
345
354
  @if (get("overlay-shading")) {
346
355
  margin-top: 4rem;
347
356
  &::before {
@@ -356,11 +365,20 @@ $config: (
356
365
  }
357
366
  }
358
367
  #{ $prefix }__footer {
359
- background-color: get("overlay-background-color");
360
- color: get("color-overlay");
368
+ background-color: color.get(get("overlay-background-color"));
369
+ color: color.get(get("color-overlay"));
370
+ border-bottom-left-radius: get("border-radius");
371
+ border-bottom-right-radius: get("border-radius");
372
+ }
373
+ #{ $prefix }__body,
374
+ #{ $prefix }__footer {
375
+ &:last-child {
376
+ border-bottom-left-radius: get("border-radius");
377
+ border-bottom-right-radius: get("border-radius");
378
+ }
361
379
  }
362
380
  #{ $prefix }__title {
363
- color: get("color-overlay");
381
+ color: color.get(get("color-overlay"));
364
382
  }
365
383
  #{ $prefix }__image {
366
384
  position: absolute;
@@ -370,7 +388,7 @@ $config: (
370
388
  right: 0;
371
389
  overflow: hidden;
372
390
  padding-top: 0;
373
- background-color: rgb(255, 255, 255);
391
+ background-color: color.get(rgb(255, 255, 255));
374
392
  border-radius: get("border-radius");
375
393
  aspect-ratio: auto;
376
394
  img {
@@ -400,8 +418,8 @@ $config: (
400
418
  justify-content: center;
401
419
  align-items: center;
402
420
  #{ $prefix }__image {
403
- width: 33%;
404
- flex: 0 1 33%;
421
+ width: get("horizontal-image-width");
422
+ flex: 0 1 get("horizontal-image-width");
405
423
  // max-width: 30rem;
406
424
  min-height: 28rem;
407
425
  // padding-top: 0;
@@ -411,7 +429,7 @@ $config: (
411
429
  flex: 1;
412
430
  flex-direction: column;
413
431
  justify-content: center;
414
- max-width: 80rem;
432
+ max-width: get("horizontal-body-max-width");
415
433
  }
416
434
  }
417
435
  }
@@ -17,6 +17,7 @@
17
17
 
18
18
  @use "sass:map";
19
19
  @use "sass:math";
20
+ @use "../color";
20
21
 
21
22
  @use "../utils";
22
23
 
@@ -29,6 +30,7 @@
29
30
  /// @prop {Dimension} size [1.1em] The width, height and font size of the css-icon.
30
31
  /// @prop {Dimension} stroke-border-radius [1px] The rounding of the strokes for css-icon.
31
32
  /// @prop {Dimension} stroke-width [0.15em] The stroke width of the css-icon.
33
+ /// @prop {Dimension} drag-gap-multiplier [0.75] Multiplier used to adjust the space between drag-x/drag-y icons (used for all stroke sizes)
32
34
  /// @prop {Dimension} text-offset [0.05em] When using an icon with text, adds a margin to match the text height.
33
35
  /// @prop {Dimension} text-size [1em] font-size of the icon when using text.
34
36
  /// @prop {Dimension} vertical-align [-0.2em] Vertical-align for css-icon
@@ -44,6 +46,7 @@ $config: (
44
46
  "size" : 1.15em,
45
47
  "stroke-border-radius" : null,
46
48
  "stroke-width" : 3px,
49
+ "drag-gap-multiplier" : 0.75,
47
50
  "text-offset" : 0.05em,
48
51
  "text-size" : 1em,
49
52
  "vertical-align" : -0.25em,
@@ -59,7 +62,7 @@ $config: (
59
62
 
60
63
  /// Change modules $config
61
64
  /// @param {Map} $changes Map of changes
62
- /// @example
65
+ /// @example scss
63
66
  /// @include ulu.component-css-icon-set(( "property" : value ));
64
67
 
65
68
  @mixin set($changes) {
@@ -68,7 +71,7 @@ $config: (
68
71
 
69
72
  /// Get a config option
70
73
  /// @param {Map} $name Name of property
71
- /// @example
74
+ /// @example scss
72
75
  /// @include ulu.component-css-icon-get("property");
73
76
 
74
77
  @function get($name) {
@@ -100,7 +103,7 @@ $config: (
100
103
  /// @include ulu.component-css-icon-styles();
101
104
 
102
105
  @mixin styles {
103
- $border: get("stroke-width") solid get("color");
106
+ $border: get("stroke-width") solid color.get(get("color"));
104
107
  $size: get("size");
105
108
  $stroke-width: get("stroke-width");
106
109
  $half-height: math.div(get("size"), 2);
@@ -130,7 +133,7 @@ $config: (
130
133
  height: $stroke-width;
131
134
  top: 50%;
132
135
  left: 50%;
133
- background-color: get("color");
136
+ background-color: color.get(get("color"));
134
137
  transform: translateX(-50%);
135
138
  margin-top: -($half-stroke-width);
136
139
  border-radius: get("stroke-border-radius");
@@ -158,7 +161,7 @@ $config: (
158
161
  // Solid icons
159
162
  [class*="css-icon--circle"],
160
163
  [class*="css-icon--square"] {
161
- background-color: get("color");
164
+ background-color: color.get(get("color"));
162
165
  }
163
166
  [class*="css-icon--circle"] {
164
167
  border-radius: 50%;
@@ -192,7 +195,7 @@ $config: (
192
195
  font-family: get("font-family");
193
196
  font-weight: bold;
194
197
  margin-top: get("text-offset");
195
- color: get("color");
198
+ color: color.get(get("color"));
196
199
  height: auto;
197
200
  left: 0;
198
201
  right: 0;
@@ -222,7 +225,7 @@ $config: (
222
225
  // Arrow uses same equilateral triangle
223
226
  [class*="css-icon--triangle"],
224
227
  [class*="css-icon--arrow"]::after {
225
- background-color: get("color");
228
+ background-color: color.get(get("color"));
226
229
  clip-path: polygon(10% 10%, 90% 50%, 10% 90%);
227
230
  }
228
231
  [class*="css-icon--arrow"] {
@@ -309,21 +312,23 @@ $config: (
309
312
  &::before {
310
313
  content: "";
311
314
  // Make up for margin-top by default
312
- margin-top: -($stroke-width + $stroke-width);
315
+ margin-top: -(($stroke-width + $stroke-width) * get("drag-gap-multiplier"));
313
316
  }
314
317
  &::after {
315
318
  content: "";
316
- margin-top: $stroke-width;
319
+ margin-top: $stroke-width * get("drag-gap-multiplier");
317
320
  }
318
321
  }
319
322
 
320
323
  @include for-each-stroke() using ($alt-width, $alt-border-radius) {
324
+ // $drag-gap-multiplier: map.get($props, "drag-gap-multiplier");
325
+ // $drag-gap-multiplier: if($drag-gap-multiplier, $drag-gap-multiplier, 0);
321
326
  &[class*="css-icon--drag"] {
322
327
  &::before {
323
- margin-top: -($alt-width + $alt-width);
328
+ margin-top: -(($alt-width + $alt-width) * get("drag-gap-multiplier"));
324
329
  }
325
330
  &::after {
326
- margin-top: $alt-width;
331
+ margin-top: $alt-width * get("drag-gap-multiplier");
327
332
  }
328
333
  }
329
334
  }
@@ -344,7 +349,7 @@ $config: (
344
349
  margin-top: 0;
345
350
  }
346
351
  &::before {
347
- box-shadow: 0px ($stroke-width * 2 + 1px) get("color");
352
+ box-shadow: 0px ($stroke-width * 2 + 1px) color.get(get("color"));
348
353
  margin-bottom: ($stroke-width * 3) + 2px;
349
354
  }
350
355
  }
@@ -352,7 +357,7 @@ $config: (
352
357
  &.css-icon--menu,
353
358
  &.css-icon--menu-to-close {
354
359
  &::before {
355
- box-shadow: 0px ($alt-width * 2 + 1px) get("color");
360
+ box-shadow: 0px ($alt-width * 2 + 1px) color.get(get("color"));
356
361
  margin-bottom: ($alt-width * 3) + 2px;
357
362
  }
358
363
  }
@@ -73,7 +73,7 @@ $config: (
73
73
 
74
74
  /// Change modules $config
75
75
  /// @param {Map} $changes Map of changes
76
- /// @example
76
+ /// @example scss
77
77
  /// @include ulu.component-data-grid-set(( "property" : value ));
78
78
 
79
79
  @mixin set($changes) {
@@ -82,7 +82,7 @@ $config: (
82
82
 
83
83
  /// Get a config option
84
84
  /// @param {Map} $name Name of property
85
- /// @example
85
+ /// @example scss
86
86
  /// @include ulu.component-data-grid-get("property");
87
87
 
88
88
  @function get($name) {
@@ -30,10 +30,11 @@ $config: (
30
30
  "text-align" : left,
31
31
  "type-size" : "small",
32
32
  "background-color" : white,
33
- "header-background-color" : #eeeeee,
33
+ "header-background-color" : #f5f4f4,
34
34
  "body-background-color" : white,
35
35
  "footer-background-color" : #f3f3f3,
36
36
  "color" : "type-secondary",
37
+ "header-color" : "headline",
37
38
  "line-height" : true,
38
39
  "column-min-width" : 6em,
39
40
  "first-column-large-min-width" : 15em,
@@ -46,15 +47,18 @@ $config: (
46
47
  "highlighted-row-border-color" : null,
47
48
  "large-header-cell-padding-y" : 1em,
48
49
  "caption-type-size" : "large",
50
+ "caption-background-color" : null,
49
51
  "caption-font-weight" : bold,
50
- "caption-margin" : (0 0 1em 0),
51
- "caption-padding" : (0,),
52
+ "caption-border-bottom" : null,
53
+ "caption-margin" : (0,),
54
+ "caption-padding" : (0.65em 0),
55
+ "caption-text-align" : left,
52
56
  "extra-selector" : ".wysiwyg table"
53
57
  ) !default;
54
58
 
55
59
  /// Change modules $config
56
60
  /// @param {Map} $changes Map of changes
57
- /// @example
61
+ /// @example scss
58
62
  /// @include ulu.component-data-table-set(( "property" : value ));
59
63
 
60
64
  @mixin set($changes) {
@@ -63,7 +67,7 @@ $config: (
63
67
 
64
68
  /// Get a config option
65
69
  /// @param {Map} $name Name of property
66
- /// @example
70
+ /// @example scss
67
71
  /// @include ulu.component-data-table-get("property");
68
72
 
69
73
  @function get($name) {
@@ -107,9 +111,11 @@ $config: (
107
111
  @include typography.size(get("caption-type-size"));
108
112
  }
109
113
  font-weight: get("caption-font-weight");
110
- text-align: left;
114
+ text-align: get("caption-text-align");
111
115
  margin: get("caption-margin");
112
116
  padding: get("caption-padding");
117
+ background-color: get("caption-background-color");
118
+ border-bottom: get("caption-border-bottom");
113
119
  }
114
120
  th,
115
121
  tr,
@@ -133,6 +139,9 @@ $config: (
133
139
  thead tr {
134
140
  background-color: color.get(get("header-background-color"));
135
141
  }
142
+ thead th {
143
+ color: color.get(get("header-color"));
144
+ }
136
145
  tbody tr {
137
146
  background-color: color.get(get("body-background-color"));
138
147
  }
@@ -23,7 +23,7 @@ $config: (
23
23
 
24
24
  /// Change modules $config
25
25
  /// @param {Map} $changes Map of changes
26
- /// @example
26
+ /// @example scss
27
27
  /// @include ulu.component-flipcard-grid-set(( "property" : value ));
28
28
 
29
29
  @mixin set($changes) {
@@ -32,7 +32,7 @@ $config: (
32
32
 
33
33
  /// Get a config option
34
34
  /// @param {Map} $name Name of property
35
- /// @example
35
+ /// @example scss
36
36
  /// @include ulu.component-flipcard-grid-get("property");
37
37
 
38
38
  @function get($name) {
@@ -5,6 +5,7 @@
5
5
  /// Creates adaptive (changing at breakpoints)n between items (vertical/horizontal layout)
6
6
 
7
7
  @use "sass:map";
8
+ @use "../color";
8
9
  @use "../utils";
9
10
  @use "../selector";
10
11
 
@@ -61,7 +62,7 @@ $config: (
61
62
 
62
63
  /// Change modules $config
63
64
  /// @param {Map} $changes Map of changes
64
- /// @example
65
+ /// @example scss
65
66
  /// @include ulu.component-flipcard-set(( "property" : value ));
66
67
 
67
68
  @mixin set($changes) {
@@ -78,7 +79,7 @@ $config: (
78
79
 
79
80
  /// Get a config option
80
81
  /// @param {Map} $name Name of property
81
- /// @example
82
+ /// @example scss
82
83
  /// @include ulu.component-flipcard-get("property");
83
84
 
84
85
  @function get($name) {
@@ -90,14 +91,14 @@ $config: (
90
91
 
91
92
  #{ $prefix } {
92
93
  height: 100%;
93
- background-color: get("background-color");
94
+ background-color: color.get(get("background-color"));
94
95
  line-height: 1.4;
95
96
  overflow: hidden;
96
97
  position: relative;
97
98
  border: get("border");
98
99
  border-radius: get("border-radius");
99
100
  &#{ $prefix }:hover {
100
- border-color: get("border-color-hover");
101
+ border-color: color.get(get("border-color-hover"));
101
102
  }
102
103
  #{ $prefix }__control-button:focus {
103
104
  border: get("control-button-border-focus");
@@ -123,10 +124,10 @@ $config: (
123
124
  transform: scale(1.15);
124
125
  }
125
126
  #{ $prefix }__front-content {
126
- color: get("title-color-hover");
127
+ color: color.get(get("title-color-hover"));
127
128
  }
128
129
  #{ $prefix }__icon {
129
- color: get("icon-color-hover");
130
+ color: color.get(get("icon-color-hover"));
130
131
  }
131
132
  }
132
133
  @media (prefers-reduced-motion: no-preference) {
@@ -140,14 +141,14 @@ $config: (
140
141
  }
141
142
  }
142
143
  #{ $prefix }--w-image {
143
- background-color: get("background-color-image");
144
+ background-color: color.get(get("background-color-image"));
144
145
 
145
146
  &:hover {
146
147
  #{ $prefix }__front-content {
147
- color: get("title-color-image-hover");
148
+ color: color.get(get("title-color-image-hover"));
148
149
  }
149
150
  #{ $prefix }__icon {
150
- color: get("icon-color-image-hover");
151
+ color: color.get(get("icon-color-image-hover"));
151
152
  }
152
153
  }
153
154
  }
@@ -168,7 +169,7 @@ $config: (
168
169
  }
169
170
  }
170
171
  #{ $prefix }__icon {
171
- color: get('icon-color');
172
+ color: color.get(get('icon-color'));
172
173
  display: block;
173
174
  margin-top: 0.5rem;
174
175
  }
@@ -177,7 +178,7 @@ $config: (
177
178
  display: flex;
178
179
  flex-direction: column;
179
180
  justify-content: flex-end;
180
- color: get("title-color");
181
+ color: color.get(get("title-color"));
181
182
  position: relative;
182
183
  z-index: 2;
183
184
  padding: get('padding');
@@ -186,10 +187,10 @@ $config: (
186
187
  }
187
188
  #{ $prefix }--w-image {
188
189
  #{ $prefix }__icon {
189
- color: get("icon-color-image");
190
+ color: color.get(get("icon-color-image"));
190
191
  }
191
192
  #{ $prefix }__front-content {
192
- color: get("title-color-image");
193
+ color: color.get(get("title-color-image"));
193
194
  @if(get("bottom-shadow")) {
194
195
  // bottom position includes padding so that the shadow
195
196
  &:after {
@@ -207,7 +208,7 @@ $config: (
207
208
  }
208
209
  }
209
210
  #{ $prefix }__back {
210
- background-color: get("background-color-back");
211
+ background-color: color.get(get("background-color-back"));
211
212
  padding: get('padding');
212
213
  justify-content: flex-end;
213
214
  [data-flipcard-state="open"] & {