@ulu/frontend 0.1.0-beta.0 → 0.1.0-beta.2

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 (244) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/docs-dev/assets/chunks/modulepreload-polyfill.DaKOjhqt.js +37 -0
  3. package/docs-dev/assets/favicons/android-chrome-192x192.png +0 -0
  4. package/docs-dev/assets/favicons/android-chrome-256x256.png +0 -0
  5. package/docs-dev/assets/favicons/apple-touch-icon.png +0 -0
  6. package/docs-dev/assets/favicons/browserconfig.xml +9 -0
  7. package/docs-dev/assets/favicons/favicon-16x16.png +0 -0
  8. package/docs-dev/assets/favicons/favicon-32x32.png +0 -0
  9. package/docs-dev/assets/favicons/favicon.ico +0 -0
  10. package/docs-dev/assets/favicons/mstile-150x150.png +0 -0
  11. package/docs-dev/assets/favicons/safari-pinned-tab.svg +1 -0
  12. package/docs-dev/assets/favicons/site.webmanifest +19 -0
  13. package/docs-dev/assets/fonts/fontawesome/fa-brands-400.ttf +0 -0
  14. package/docs-dev/assets/fonts/fontawesome/fa-brands-400.woff2 +0 -0
  15. package/docs-dev/assets/fonts/fontawesome/fa-regular-400.ttf +0 -0
  16. package/docs-dev/assets/fonts/fontawesome/fa-regular-400.woff2 +0 -0
  17. package/docs-dev/assets/fonts/fontawesome/fa-solid-900.ttf +0 -0
  18. package/docs-dev/assets/fonts/fontawesome/fa-solid-900.woff2 +0 -0
  19. package/docs-dev/assets/fonts/fontawesome/fa-v4compatibility.ttf +0 -0
  20. package/docs-dev/assets/fonts/fontawesome/fa-v4compatibility.woff2 +0 -0
  21. package/docs-dev/assets/fonts/inter/Inter-Black.woff2 +0 -0
  22. package/docs-dev/assets/fonts/inter/Inter-BlackItalic.woff2 +0 -0
  23. package/docs-dev/assets/fonts/inter/Inter-Bold.woff2 +0 -0
  24. package/docs-dev/assets/fonts/inter/Inter-BoldItalic.woff2 +0 -0
  25. package/docs-dev/assets/fonts/inter/Inter-ExtraBold.woff2 +0 -0
  26. package/docs-dev/assets/fonts/inter/Inter-ExtraBoldItalic.woff2 +0 -0
  27. package/docs-dev/assets/fonts/inter/Inter-ExtraLight.woff2 +0 -0
  28. package/docs-dev/assets/fonts/inter/Inter-ExtraLightItalic.woff2 +0 -0
  29. package/docs-dev/assets/fonts/inter/Inter-Italic.woff2 +0 -0
  30. package/docs-dev/assets/fonts/inter/Inter-Light.woff2 +0 -0
  31. package/docs-dev/assets/fonts/inter/Inter-LightItalic.woff2 +0 -0
  32. package/docs-dev/assets/fonts/inter/Inter-Medium.woff2 +0 -0
  33. package/docs-dev/assets/fonts/inter/Inter-MediumItalic.woff2 +0 -0
  34. package/docs-dev/assets/fonts/inter/Inter-Regular.woff2 +0 -0
  35. package/docs-dev/assets/fonts/inter/Inter-SemiBold.woff2 +0 -0
  36. package/docs-dev/assets/fonts/inter/Inter-SemiBoldItalic.woff2 +0 -0
  37. package/docs-dev/assets/fonts/inter/Inter-Thin.woff2 +0 -0
  38. package/docs-dev/assets/fonts/inter/Inter-ThinItalic.woff2 +0 -0
  39. package/docs-dev/assets/fonts/inter/InterDisplay-Black.woff2 +0 -0
  40. package/docs-dev/assets/fonts/inter/InterDisplay-BlackItalic.woff2 +0 -0
  41. package/docs-dev/assets/fonts/inter/InterDisplay-Bold.woff2 +0 -0
  42. package/docs-dev/assets/fonts/inter/InterDisplay-BoldItalic.woff2 +0 -0
  43. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraBold.woff2 +0 -0
  44. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraBoldItalic.woff2 +0 -0
  45. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraLight.woff2 +0 -0
  46. package/docs-dev/assets/fonts/inter/InterDisplay-ExtraLightItalic.woff2 +0 -0
  47. package/docs-dev/assets/fonts/inter/InterDisplay-Italic.woff2 +0 -0
  48. package/docs-dev/assets/fonts/inter/InterDisplay-Light.woff2 +0 -0
  49. package/docs-dev/assets/fonts/inter/InterDisplay-LightItalic.woff2 +0 -0
  50. package/docs-dev/assets/fonts/inter/InterDisplay-Medium.woff2 +0 -0
  51. package/docs-dev/assets/fonts/inter/InterDisplay-MediumItalic.woff2 +0 -0
  52. package/docs-dev/assets/fonts/inter/InterDisplay-Regular.woff2 +0 -0
  53. package/docs-dev/assets/fonts/inter/InterDisplay-SemiBold.woff2 +0 -0
  54. package/docs-dev/assets/fonts/inter/InterDisplay-SemiBoldItalic.woff2 +0 -0
  55. package/docs-dev/assets/fonts/inter/InterDisplay-Thin.woff2 +0 -0
  56. package/docs-dev/assets/fonts/inter/InterDisplay-ThinItalic.woff2 +0 -0
  57. package/docs-dev/assets/fonts/inter/InterVariable-Italic.woff2 +0 -0
  58. package/docs-dev/assets/fonts/inter/InterVariable.woff2 +0 -0
  59. package/docs-dev/assets/fonts/inter/LICENSE.txt +92 -0
  60. package/docs-dev/assets/fonts/inter/inter.css +37 -0
  61. package/docs-dev/assets/main.js +15657 -0
  62. package/docs-dev/assets/placeholder/4065947-uhd_4096_2160_25fps.credits.txt +2 -0
  63. package/docs-dev/assets/placeholder/4065947-uhd_4096_2160_25fps.mp4 +0 -0
  64. package/docs-dev/assets/placeholder/image-1-attribution.txt +7 -0
  65. package/docs-dev/assets/placeholder/image-1-darkened.jpg +0 -0
  66. package/docs-dev/assets/placeholder/image-1-lightened.jpg +0 -0
  67. package/docs-dev/assets/placeholder/image-1.jpg +0 -0
  68. package/docs-dev/assets/style.css +18702 -0
  69. package/docs-dev/demos/accordion/index.html +4809 -0
  70. package/docs-dev/demos/button/index.html +4621 -0
  71. package/docs-dev/demos/callout/index.html +4661 -0
  72. package/docs-dev/demos/captioned-figure/index.html +4683 -0
  73. package/docs-dev/demos/card/index.html +5040 -0
  74. package/docs-dev/demos/css-icons/index.html +5272 -0
  75. package/docs-dev/demos/data-grid/index.html +5606 -0
  76. package/docs-dev/demos/data-table/index.html +4697 -0
  77. package/docs-dev/demos/file-save/index.html +4672 -0
  78. package/docs-dev/demos/flipcard/index.html +5221 -0
  79. package/docs-dev/demos/form-theme/index.html +4852 -0
  80. package/docs-dev/demos/hero/index.html +301 -0
  81. package/docs-dev/demos/image-grid/index.html +157 -0
  82. package/docs-dev/demos/index.html +4610 -0
  83. package/docs-dev/demos/menu-stack/index.html +4751 -0
  84. package/docs-dev/demos/modals/index.html +4718 -0
  85. package/docs-dev/demos/nav-strip/index.html +4758 -0
  86. package/docs-dev/demos/overlay-section/index.html +4628 -0
  87. package/docs-dev/demos/popovers/index.html +4628 -0
  88. package/docs-dev/demos/print/index.html +4630 -0
  89. package/docs-dev/demos/pull-quote/index.html +4629 -0
  90. package/docs-dev/demos/rule/index.html +4679 -0
  91. package/docs-dev/demos/scroll-slider/index.html +204 -0
  92. package/docs-dev/demos/scrollpoints/index.html +4648 -0
  93. package/docs-dev/demos/slider/index.html +164 -0
  94. package/docs-dev/demos/spoke-spinner/index.html +4625 -0
  95. package/docs-dev/demos/tabs/index.html +4702 -0
  96. package/docs-dev/demos/tag/index.html +4630 -0
  97. package/docs-dev/demos/tile-grid-overlay/index.html +382 -0
  98. package/docs-dev/demos/tiles/index.html +4879 -0
  99. package/docs-dev/demos/tooltip/index.html +4658 -0
  100. package/docs-dev/guide/building-stylesheet/index.html +4679 -0
  101. package/docs-dev/guide/developing-ulu-scss-module/index.html +4731 -0
  102. package/docs-dev/guide/index.html +4612 -0
  103. package/docs-dev/index.html +4654 -0
  104. package/docs-dev/javascript/events/index.html +4770 -0
  105. package/docs-dev/javascript/index.html +4625 -0
  106. package/docs-dev/javascript/ui-breakpoints/index.html +5070 -0
  107. package/docs-dev/javascript/ui-collapsible/index.html +4737 -0
  108. package/docs-dev/javascript/ui-dialog/index.html +4771 -0
  109. package/docs-dev/javascript/ui-flipcard/index.html +4621 -0
  110. package/docs-dev/javascript/ui-grid/index.html +4678 -0
  111. package/docs-dev/javascript/ui-modal-builder/index.html +4760 -0
  112. package/docs-dev/javascript/ui-overflow-scroller/index.html +4610 -0
  113. package/docs-dev/javascript/ui-overflow-scroller-pager/index.html +4628 -0
  114. package/docs-dev/javascript/ui-page/index.html +4625 -0
  115. package/docs-dev/javascript/ui-popover/index.html +4664 -0
  116. package/docs-dev/javascript/ui-print/index.html +4677 -0
  117. package/docs-dev/javascript/ui-print-details/index.html +4640 -0
  118. package/docs-dev/javascript/ui-programmatic-modal/index.html +4610 -0
  119. package/docs-dev/javascript/ui-proxy-click/index.html +4654 -0
  120. package/docs-dev/javascript/ui-resizer/index.html +4680 -0
  121. package/docs-dev/javascript/ui-scroll-slider/index.html +4639 -0
  122. package/docs-dev/javascript/ui-scrollpoint/index.html +4857 -0
  123. package/docs-dev/javascript/ui-slider/index.html +4621 -0
  124. package/docs-dev/javascript/ui-tabs/index.html +4742 -0
  125. package/docs-dev/javascript/ui-tooltip/index.html +4757 -0
  126. package/docs-dev/javascript/utils-class-logger/index.html +4745 -0
  127. package/docs-dev/javascript/utils-dom/index.html +4790 -0
  128. package/docs-dev/javascript/utils-file-save/index.html +4782 -0
  129. package/docs-dev/javascript/utils-floating-ui/index.html +4642 -0
  130. package/docs-dev/javascript/utils-id/index.html +4652 -0
  131. package/docs-dev/javascript/utils-pause-youtube-video/index.html +4660 -0
  132. package/docs-dev/sass/base/color/index.html +4643 -0
  133. package/docs-dev/sass/base/elements/index.html +4814 -0
  134. package/docs-dev/sass/base/index/index.html +4813 -0
  135. package/docs-dev/sass/base/index.html +4619 -0
  136. package/docs-dev/sass/base/keyframes/index.html +4645 -0
  137. package/docs-dev/sass/base/layout/index.html +4805 -0
  138. package/docs-dev/sass/base/normalize/index.html +4653 -0
  139. package/docs-dev/sass/base/print/index.html +4649 -0
  140. package/docs-dev/sass/base/root/index.html +4669 -0
  141. package/docs-dev/sass/base/typography/index.html +4669 -0
  142. package/docs-dev/sass/components/accordion/index.html +4971 -0
  143. package/docs-dev/sass/components/adaptive-spacing/index.html +4914 -0
  144. package/docs-dev/sass/components/badge/index.html +4862 -0
  145. package/docs-dev/sass/components/button/index.html +4798 -0
  146. package/docs-dev/sass/components/button-verbose/index.html +4910 -0
  147. package/docs-dev/sass/components/callout/index.html +4937 -0
  148. package/docs-dev/sass/components/captioned-figure/index.html +4788 -0
  149. package/docs-dev/sass/components/card/index.html +5146 -0
  150. package/docs-dev/sass/components/card-grid/index.html +4812 -0
  151. package/docs-dev/sass/components/css-icon/index.html +4909 -0
  152. package/docs-dev/sass/components/data-grid/index.html +5044 -0
  153. package/docs-dev/sass/components/data-table/index.html +4795 -0
  154. package/docs-dev/sass/components/fill-context/index.html +4678 -0
  155. package/docs-dev/sass/components/flipcard/index.html +4948 -0
  156. package/docs-dev/sass/components/flipcard-grid/index.html +4799 -0
  157. package/docs-dev/sass/components/form-theme/index.html +5428 -0
  158. package/docs-dev/sass/components/hero/index.html +4800 -0
  159. package/docs-dev/sass/components/horizontal-rule/index.html +4797 -0
  160. package/docs-dev/sass/components/image-grid/index.html +4804 -0
  161. package/docs-dev/sass/components/index/index.html +4848 -0
  162. package/docs-dev/sass/components/index.html +4619 -0
  163. package/docs-dev/sass/components/links/index.html +4648 -0
  164. package/docs-dev/sass/components/list-lines/index.html +4843 -0
  165. package/docs-dev/sass/components/list-ordered/index.html +4644 -0
  166. package/docs-dev/sass/components/list-unordered/index.html +4648 -0
  167. package/docs-dev/sass/components/menu-stack/index.html +4978 -0
  168. package/docs-dev/sass/components/modal/index.html +5025 -0
  169. package/docs-dev/sass/components/nav-strip/index.html +4898 -0
  170. package/docs-dev/sass/components/overlay-section/index.html +4842 -0
  171. package/docs-dev/sass/components/pager/index.html +4960 -0
  172. package/docs-dev/sass/components/placeholder-block/index.html +4882 -0
  173. package/docs-dev/sass/components/popover/index.html +4957 -0
  174. package/docs-dev/sass/components/pull-quote/index.html +4856 -0
  175. package/docs-dev/sass/components/ratio-box/index.html +4802 -0
  176. package/docs-dev/sass/components/rule/index.html +4804 -0
  177. package/docs-dev/sass/components/scroll-slider/index.html +4915 -0
  178. package/docs-dev/sass/components/skip-link/index.html +4788 -0
  179. package/docs-dev/sass/components/slider/index.html +4924 -0
  180. package/docs-dev/sass/components/spoke-spinner/index.html +4862 -0
  181. package/docs-dev/sass/components/tabs/index.html +4931 -0
  182. package/docs-dev/sass/components/tag/index.html +4963 -0
  183. package/docs-dev/sass/components/tile-button/index.html +4843 -0
  184. package/docs-dev/sass/components/tile-grid/index.html +4978 -0
  185. package/docs-dev/sass/components/tile-grid-overlay/index.html +4779 -0
  186. package/docs-dev/sass/components/vignette/index.html +4792 -0
  187. package/docs-dev/sass/components/wysiwyg/index.html +4808 -0
  188. package/docs-dev/sass/core/breakpoint/index.html +5401 -0
  189. package/docs-dev/sass/core/button/index.html +5535 -0
  190. package/docs-dev/sass/core/color/index.html +5385 -0
  191. package/docs-dev/sass/core/cssvar/index.html +5410 -0
  192. package/docs-dev/sass/core/element/index.html +5533 -0
  193. package/docs-dev/sass/core/index.html +4608 -0
  194. package/docs-dev/sass/core/layout/index.html +5368 -0
  195. package/docs-dev/sass/core/path/index.html +4777 -0
  196. package/docs-dev/sass/core/selector/index.html +4856 -0
  197. package/docs-dev/sass/core/typography/index.html +5782 -0
  198. package/docs-dev/sass/core/units/index.html +4815 -0
  199. package/docs-dev/sass/core/utils/index.html +6256 -0
  200. package/docs-dev/sass/helpers/color/index.html +4643 -0
  201. package/docs-dev/sass/helpers/display/index.html +4648 -0
  202. package/docs-dev/sass/helpers/index/index.html +4810 -0
  203. package/docs-dev/sass/helpers/index.html +4619 -0
  204. package/docs-dev/sass/helpers/print/index.html +4648 -0
  205. package/docs-dev/sass/helpers/typography/index.html +4671 -0
  206. package/docs-dev/sass/helpers/units/index.html +4817 -0
  207. package/docs-dev/sass/helpers/utilities/index.html +4648 -0
  208. package/docs-dev/sass/index.html +4670 -0
  209. package/js/ui/tabs.js +24 -4
  210. package/package.json +8 -10
  211. package/scss/_color.scss +1 -1
  212. package/scss/base/_typography.scss +7 -7
  213. package/scss/components/_accordion.scss +2 -2
  214. package/scss/components/_adaptive-spacing.scss +3 -3
  215. package/scss/components/_badge.scss +2 -2
  216. package/scss/components/_button-verbose.scss +20 -20
  217. package/scss/components/_button.scss +2 -0
  218. package/scss/components/_callout.scss +2 -2
  219. package/scss/components/_captioned-figure.scss +2 -3
  220. package/scss/components/_card-grid.scss +2 -2
  221. package/scss/components/_card.scss +5 -2
  222. package/scss/components/_css-icon.scss +2 -2
  223. package/scss/components/_data-grid.scss +2 -2
  224. package/scss/components/_data-table.scss +2 -2
  225. package/scss/components/_flipcard-grid.scss +2 -2
  226. package/scss/components/_flipcard.scss +2 -2
  227. package/scss/components/_form-theme.scss +2 -2
  228. package/scss/components/_hero.scss +2 -2
  229. package/scss/components/_image-grid.scss +2 -2
  230. package/scss/components/_list-lines.scss +2 -2
  231. package/scss/components/_menu-stack.scss +2 -2
  232. package/scss/components/_modal.scss +1 -14
  233. package/scss/components/_nav-strip.scss +3 -3
  234. package/scss/components/_overlay-section.scss +2 -3
  235. package/scss/components/_pager.scss +5 -5
  236. package/scss/components/_placeholder-block.scss +2 -2
  237. package/scss/components/_popover.scss +2 -2
  238. package/scss/components/_pull-quote.scss +2 -2
  239. package/scss/components/_ratio-box.scss +2 -2
  240. package/scss/components/_rule.scss +5 -5
  241. package/scss/components/_scroll-slider.scss +2 -2
  242. package/scss/components/_slider.scss +7 -43
  243. package/scss/components/_tabs.scss +128 -52
  244. package/scss/components/_tag.scss +14 -0
@@ -15,9 +15,9 @@
15
15
  /// Module Settings
16
16
  /// @type Map
17
17
  /// @prop {String} background-color [link] The background color of the pager. This uses color.scss, so the value of this options should be a color variable from color.scss.
18
- /// @prop {String} background-color-hover [linkhover] The background color of the pager when hovered or focused. This uses color.scss, so the value of this options should be a color variable from color.scss.
18
+ /// @prop {String} background-color-hover [link-hover] The background color of the pager when hovered or focused. This uses color.scss, so the value of this options should be a color variable from color.scss.
19
19
  /// @prop {String} border-color [link] The border color of the pager item. This uses color.scss, so the value of this options should be a color variable from color.scss.
20
- /// @prop {String} border-color-hover [linkhover] The border color of the pager item when hovered or focused. This uses color.scss, so the value of this options should be a color variable from color.scss.
20
+ /// @prop {String} border-color-hover [link-hover] The border color of the pager item when hovered or focused. This uses color.scss, so the value of this options should be a color variable from color.scss.
21
21
  /// @prop {Dimension} border-radius [50%] The border radius of the pager item.
22
22
  /// @prop {Dimension} border-width [1px] The border width of the pager item.
23
23
  /// @prop {Color} color [white] The type color of the pager item.
@@ -32,7 +32,7 @@
32
32
  /// @prop {Color} active-color [type] The type color when active. This uses color.scss, so the value of this options should be a color variable from color.scss.
33
33
  /// @prop {CssValue} active-font-weight [bold] The font weight of the pager when focused or hovered.
34
34
  /// @prop {String} action-background-color [link] The background color of the actions options of the pager. This uses color.scss, so the value of this options should be a color variable from color.scss.
35
- /// @prop {String} action-background-color-hover [linkhover] The background color of the actions options of the pager when focused or hovered. This uses color.scss, so the value of this options should be a color variable from color.scss.
35
+ /// @prop {String} action-background-color-hover [link-hover] The background color of the actions options of the pager when focused or hovered. This uses color.scss, so the value of this options should be a color variable from color.scss.
36
36
  /// @prop {Color} action-border-color [transparent] The border color of the action options of the pager.
37
37
  /// @prop {String} action-border-color-hover [link] The border color of the action options of the pager when focused or hovered. This uses color.scss, so the value of this options should be a color variable from color.scss.
38
38
  /// @prop {Color} action-color [white] The type color of the actions options of the pager.
@@ -72,7 +72,7 @@ $config: (
72
72
 
73
73
  /// Change modules $config
74
74
  /// @param {Map} $changes Map of changes
75
- /// @example
75
+ /// @example scss
76
76
  /// @include ulu.component-pager-set(( "property" : value ));
77
77
 
78
78
  @mixin set($changes) {
@@ -81,7 +81,7 @@ $config: (
81
81
 
82
82
  /// Get a config option
83
83
  /// @param {Map} $name Name of property
84
- /// @example
84
+ /// @example scss
85
85
  /// @include ulu.component-pager-get("property");
86
86
 
87
87
 
@@ -67,7 +67,7 @@ $config: (
67
67
 
68
68
  /// Change modules $config
69
69
  /// @param {Map} $changes Map of changes
70
- /// @example
70
+ /// @example scss
71
71
  /// @include ulu.component-placeholder-block-set(( "property" : value ));
72
72
 
73
73
  @mixin set($changes) {
@@ -76,7 +76,7 @@ $config: (
76
76
 
77
77
  /// Get a config option
78
78
  /// @param {Map} $name Name of property
79
- /// @example
79
+ /// @example scss
80
80
  /// @include ulu.component-placeholder-block-get("property");
81
81
 
82
82
  @function get($name) {
@@ -94,7 +94,7 @@ $config: (
94
94
 
95
95
  /// Change modules $config
96
96
  /// @param {Map} $changes Map of changes
97
- /// @example
97
+ /// @example scss
98
98
  /// @include ulu.component-popover-set(( "property" : value ));
99
99
 
100
100
  @mixin set($changes) {
@@ -103,7 +103,7 @@ $config: (
103
103
 
104
104
  /// Get a config option
105
105
  /// @param {Map} $name Name of property
106
- /// @example
106
+ /// @example scss
107
107
  /// @include ulu.component-popover-get("property");
108
108
 
109
109
  @function get($name) {
@@ -52,7 +52,7 @@ $config: (
52
52
 
53
53
  /// Change modules $config
54
54
  /// @param {Map} $changes Map of changes
55
- /// @example
55
+ /// @example scss
56
56
  /// @include ulu.component-pull-quote-set(( "property" : value ));
57
57
 
58
58
  @mixin set($changes) {
@@ -61,7 +61,7 @@ $config: (
61
61
 
62
62
  /// Get a config option
63
63
  /// @param {Map} $name Name of property
64
- /// @example
64
+ /// @example scss
65
65
  /// @include ulu.component-pull-quote-get("property");
66
66
 
67
67
  @function get($name) {
@@ -22,7 +22,7 @@ $config: (
22
22
 
23
23
  /// Change modules $config
24
24
  /// @param {Map} $changes Map of changes
25
- /// @example
25
+ /// @example scss
26
26
  /// @include ulu.component-ratio-box-set(( "property" : value ));
27
27
 
28
28
  @mixin set($changes) {
@@ -31,7 +31,7 @@ $config: (
31
31
 
32
32
  /// Get a config option
33
33
  /// @param {Map} $name Name of property
34
- /// @example
34
+ /// @example scss
35
35
  /// @include ulu.component-ratio-box-get("property");
36
36
 
37
37
  @function get($name) {
@@ -10,9 +10,9 @@
10
10
 
11
11
  /// Module Settings
12
12
  /// @type Map
13
- /// @prop {Number} short-border-width [4px] Short rule width of border
14
- /// @prop {Number} short-modifiers [false] @joe-check
15
- /// @prop {Number} short-width [2.75rem] Short rule width (like an inline rule, normally used above headings), Setting this to false will disable output
13
+ /// @prop {Dimension} short-border-width [4px] Short rule width of border
14
+ /// @prop {Object} short-modifiers [false] Objects to adjust the styles of different short rule styles.
15
+ /// @prop {Dimension} short-width [2.75rem] Short rule width (like an inline rule, normally used above headings), Setting this to false will disable output
16
16
 
17
17
  $config: (
18
18
  "short-border-width" : 4px,
@@ -22,7 +22,7 @@ $config: (
22
22
 
23
23
  /// Change modules $config
24
24
  /// @param {Map} $changes Map of changes
25
- /// @example
25
+ /// @example scss
26
26
  /// @include ulu.component-rule-set(( "property" : value ));
27
27
 
28
28
  @mixin set($changes) {
@@ -31,7 +31,7 @@ $config: (
31
31
 
32
32
  /// Get a config option
33
33
  /// @param {Map} $name Name of property
34
- /// @example
34
+ /// @example scss
35
35
  /// @include ulu.component-rule-get("property");
36
36
 
37
37
  @function get($name) {
@@ -64,7 +64,7 @@ $config: (
64
64
 
65
65
  /// Change modules $config
66
66
  /// @param {Map} $changes Map of changes
67
- /// @example scss - General example
67
+ /// @example scss
68
68
  /// @include ulu.component-scroll-slider-set(( "property" : value ));
69
69
 
70
70
  @mixin set($changes) {
@@ -73,7 +73,7 @@ $config: (
73
73
 
74
74
  /// Get a config option
75
75
  /// @param {Map} $name Name of property
76
- /// @example scss - General example
76
+ /// @example scss
77
77
  /// @include ulu.component-scroll-slider-get("property");
78
78
 
79
79
  @function get($name) {
@@ -7,34 +7,19 @@
7
7
 
8
8
  @use "../color";
9
9
  @use "../utils";
10
- @use "../breakpoint";
11
10
  @use "../selector";
12
11
 
13
12
  /// Module Settings
14
13
  /// @type Map
15
14
  /// @prop {Color} background-color [transparent] Background color for the entire slider section.
16
- /// @prop {List} breakpoint ["small"] Currently commented out @joe-check
17
15
  /// @prop {Dimension} margin-bottom [3rem] Bottom margin color for the entire slider section.
18
16
  /// @prop {Dimension} margin-top [1rem] Top margin color for the entire slider section.
19
17
  /// @prop {Dimension} padding-bottom [0] Bottom padding for individual slides.
20
- /// @prop {Dimension} padding-bottom-small [0] Smaller option for bottom padding for individual slides. Currently commented out @joe-check
21
18
  /// @prop {Dimension} padding-top [0] Top padding for individual slides.
22
- /// @prop {Dimension} padding-top-small [0] Smaller option for top padding for individual slides. Currently commented out @joe-check
23
- /// @prop {Color} button-background-color [transparent] Currently unused @joe-check
24
- /// @prop {Color} button-background-color-hover [color.get("link-hover")] Currently unused @joe-check
25
- /// @prop {CssValue} button-border [2px solid color.get("link")] Currently unused @joe-check
26
- /// @prop {Color} button-border-color-hover [color.get("link-hover")] Currently unused @joe-check
27
- /// @prop {Dimension} button-border-radius [50%] Currently unused @joe-check
28
- /// @prop {Color} button-color [color.get("link")] Currently unused @joe-check
29
- /// @prop {Color} button-color-hover [white] Currently unused @joe-check
30
- /// @prop {Dimension} button-font-size [1.35rem] Currently unused @joe-check
31
- /// @prop {Dimension} button-font-size-small [false] Currently unused @joe-check
32
- /// @prop {Dimension} button-icon-offset-x [false] Offsets the control icons in from their respective sides. @joe-check
19
+ /// @prop {Dimension} button-icon-offset-x [false] Offsets the control icons in from their respective sides.
33
20
  /// @prop {Dimension} button-icon-offset-y [false] Offsets the control options down by adding a margin.
34
- /// @prop {Dimension} button-margin [0.75rem] The margin between the controls and the slide content when using .slide-gap-for-controls
35
- /// @prop {Dimension} button-margin-small [0.75rem] Currently commented out @joe-check
21
+ /// @prop {Dimension} button-margin [0.75rem] The margin between the controls and the slide content when using .slider__slide-gap-for-controls
36
22
  /// @prop {Dimension} button-size [3rem] Size of the button. Likely antiquated and replaced with button-width and button-height
37
- /// @prop {Dimension} button-size-small [false] Currently commented out @joe-check
38
23
  /// @prop {Color} dot-background-color [transparent] The color of the dot when unselected.
39
24
  /// @prop {Color} dot-background-color-hover [color.get("link")] The color of the dot when hovered.
40
25
  /// @prop {Color} dot-background-color-selected [color.get("link")] The color of the dot when selected.
@@ -49,24 +34,12 @@
49
34
 
50
35
  $config: (
51
36
  "background-color" : transparent,
52
- "breakpoint" : "small",
53
37
  "margin-bottom" : 3rem,
54
38
  "margin-top" : 1rem,
55
- "button-background-color" : transparent,
56
- "button-border" : 2px solid color.get("link"),
57
- "button-border-color-hover" : color.get("link-hover"),
58
- "button-border-radius" : 50%,
59
- "button-color-hover" : white,
60
- "button-background-color-hover" : color.get("link-hover"),
61
- "button-color" : color.get("link"),
62
- "button-font-size" : 1.35rem,
63
39
  "button-icon-offset-x" : 2rem,
64
40
  "button-icon-offset-y" : false,
65
- "button-font-size-small" : false,
66
41
  "button-margin" : 2rem,
67
- "button-margin-small" : 0.75rem,
68
42
  "button-size" : 3rem,
69
- "button-size-small" : false,
70
43
  "button-height": 2.5rem,
71
44
  "button-width": 2.5rem,
72
45
  "dot-background-color" : transparent,
@@ -79,14 +52,12 @@ $config: (
79
52
  "dot-border-width" : 2px,
80
53
  "dot-size" : 1rem,
81
54
  "padding-bottom" : 0,
82
- "padding-bottom-small" : 0,
83
55
  "padding-top" : 0,
84
- "padding-top-small" : 0,
85
56
  ) !default;
86
57
 
87
58
  /// Change modules $config
88
59
  /// @param {Map} $changes Map of changes
89
- /// @example scss - General example
60
+ /// @example scss
90
61
  /// @include ulu.component-slider-set(( "property" : value ));
91
62
 
92
63
  @mixin set($changes) {
@@ -95,7 +66,7 @@ $config: (
95
66
 
96
67
  /// Get a config option
97
68
  /// @param {Map} $name Name of property
98
- /// @example scss - General example
69
+ /// @example scss
99
70
  /// @include ulu.component-slider-get("property");
100
71
 
101
72
  @function get($name) {
@@ -180,20 +151,13 @@ $config: (
180
151
  }
181
152
  #{ $prefix }__slide {
182
153
  margin: 0;
183
- // @if (get("button-size-small")) {
184
- // @include breakpoint.max(get("breakpoint")) {
185
- // $bp-slide-padding: get("button-size-small") + get("button-margin-small");
186
- // padding: get("padding-top-small") $bp-slide-padding get("padding-bottom-small") $bp-slide-padding;
187
- // }
188
- // }
189
- }
190
- // @joe-check should we remove this modifier for universal slide padding in favor of the individualized modifiers below?
154
+ }
191
155
  #{ $prefix }--slide-control-margins {
192
156
  #{ $prefix }__slide {
193
157
  padding: get("padding-top") $slide-padding-x get("padding-bottom") $slide-padding-x;
194
158
  }
195
159
  }
196
- .slide-gap-for-controls {
160
+ #{ $prefix }__slide-gap-for-controls {
197
161
  $padding: get("button-width") + get("button-margin");
198
162
  padding-left: $padding;
199
163
  padding-right: $padding;
@@ -215,7 +179,7 @@ $config: (
215
179
  }
216
180
  }
217
181
  #{ $prefix }--inset-controls {
218
- .slide-gap-for-controls {
182
+ #{ $prefix }__slide-gap-for-controls {
219
183
  $padding: get("button-width") + get("button-margin") + get("button-icon-offset-x");
220
184
  padding-left: $padding;
221
185
  padding-right: $padding;
@@ -9,41 +9,68 @@
9
9
  @use "../color";
10
10
  @use "../selector";
11
11
  @use "../breakpoint";
12
+ @use "../typography";
12
13
  @use "../element";
13
14
  @use "../utils";
14
15
 
15
16
  // Used for function fallback
16
17
  $-fallbacks: (
17
- "tablist-border-bottom" : (
18
+ "tablist-divider" : (
18
19
  "function" : meta.get-function("get-rule-style", false, "element"),
19
20
  "arguments" : ("light",)
21
+ ),
22
+ "tab-font-weight" : (
23
+ "function" : meta.get-function("get", false, "typography"),
24
+ "property" : "font-weight-semibold"
20
25
  )
21
26
  );
22
27
 
23
28
  /// Module Settings
24
29
  /// @type Map
25
- /// @prop {Dimension} border-radius [8px] The border radius of the tabs.
26
- /// @prop {Dimension} border-width [0.25em] The width of the tab border.
27
- /// @prop {Dimension} margin [2rem] The gap between tabs and above and below tabs.
30
+ /// @prop {Dimension} margin [(2rem, 0)] The margin for the tabs container
28
31
  /// @prop {Dimension} print-margin [1.5em] Margin between tabs when stacked for print
29
- /// @prop {CssValue} tablist-border-bottom [true] The bottom border of the tabs. If set to true, will use the element.scss property for "get-rule-style".
32
+ /// @prop {CssValue} tablist-divider [true] The border separating the tabs from the panels. By default (true) will use element rule light style
33
+ /// @prop {Dimension} tablist-divider-width [1px] The width of the divider
30
34
  /// @prop {Color} tabpanel-background-color [rgb(245, 245, 245)] The tabpanel background color.
31
- /// @prop {Color} tab-border-color-selected [currentColor] The border color when selected.
32
- /// @prop {String} tab-color [link] The type color for the tabs. This uses color.scss, so the value of this options should be a variable from color.scss.
33
- /// @prop {String} tab-color-hover [link-hover] The type color for the tabs when hovered or focused. This uses color.scss, so the value of this options should be a variable from color.scss.
34
- /// @prop {String} tab-color-selected [selected] The tab type color when selected. This uses color.scss, so the value of this options should be a variable from color.scss.
35
+ /// @prop {Dimension} tabpanel-padding [(2rem,)] Padding for the tabpanel
36
+ /// @prop {Dimension} indicator-size [0.25em] The size of the tab's active border/indicator
37
+ /// @prop {Color} indicator-color [currentColor] The color of the indicator
38
+ /// @prop {Color} tab-color [link] The type color for the tabs. This uses color.scss, so the value of this options should be a variable from color.scss.
39
+ /// @prop {Color} tab-color-hover [link-hover] The type color for the tabs when hovered or focused. This uses color.scss, so the value of this options should be a variable from color.scss.
40
+ /// @prop {Color} tab-color-selected [selected] The tab type color when selected. This uses color.scss, so the value of this options should be a variable from color.scss.
41
+ /// @prop {Color} tab-background-color-selected [null] The tab background color when selected
42
+ /// @prop {CssValue} tab-font-weight [true] The font weight for the tab, defaults to typography "font-weight-semibold"
43
+ /// @prop {Dimension} tab-padding [0.75em 0.1em 0.75em 0.1em] Padding for the tab
44
+ /// @prop {Dimension} tab-gap [1em] Gap between tabs
45
+ /// @prop {Dimension} vertical-tablist-width [minmax(15rem, 30%),] The width of the tablist column when tabs are layout is vertical
46
+ /// @prop {Dimension} vertical-tab-padding [(0.25em 0.75em)] Tab padding when vertical
47
+ /// @prop {Dimension} vertical-divider-width [0px] Divider between tabs and panels when vertical
48
+ /// @prop {Dimension} vertical-tab-gap [0.75em] The gap between tabs when vertical
49
+ /// @prop {Boolean} vertical-indicator-left [true] The indicator for selected tab should be on the left when vertical (false will be on right/inside)
50
+ /// @prop {Boolean} horizontal-tab-wrap [false] Set to true to allow line wrapping when the tabs are in horizontal orientation, vertical is always allowed to wrap
35
51
 
36
52
  $config: (
37
- "border-radius" : 8px,
38
- "border-width" : 0.25em,
39
- "margin" : 2rem,
53
+ "margin" : (2rem, 0),
40
54
  "print-margin" : 1.5em,
41
- "tablist-border-bottom" : true,
42
- "tabpanel-background-color" : rgb(245, 245, 245),
43
- "tab-border-color-selected" : currentColor,
44
- "tab-color" : "link",
55
+ "tablist-divider" : true,
56
+ "tablist-divider-width" : 1px,
57
+ "indicator-size" : 3px,
58
+ "indicator-color" : currentColor,
59
+ "tab-color" : "type-tertiary",
45
60
  "tab-color-hover" : "link-hover",
46
61
  "tab-color-selected" : "selected",
62
+ "tab-background-color-selected" : null,
63
+ "tab-font-weight" : true,
64
+ "tab-padding" : (0.75em),
65
+ "tab-gap" : 1em,
66
+ "tabpanel-background-color" : #f6f6f6,
67
+ "tabpanel-padding" : (2rem),
68
+ "vertical-tablist-width" : minmax(15rem, 30%),
69
+ "vertical-tab-padding" : (0.25em 0.75em),
70
+ "vertical-divider-width" : 0px,
71
+ "vertical-tab-gap" : 0.75em,
72
+ "vertical-indicator-left" : true,
73
+ "horizontal-tab-wrap" : false
47
74
  ) !default;
48
75
 
49
76
  /// Change modules $config
@@ -73,75 +100,124 @@ $config: (
73
100
  @include utils.file-header("component", "tabs");
74
101
 
75
102
  $prefix: selector.class("tabs");
103
+ $tabpanel-spacing: utils.get-spacing(get("tabpanel-padding"));
76
104
 
77
105
  #{ $prefix } {
78
- margin-bottom: get("margin");
79
- margin-top: get("margin");
106
+ margin: get("margin");
80
107
  [role="tablist"] {
81
108
  position: relative;
82
109
  z-index: 2;
83
110
  display: flex;
111
+ gap: get("tab-gap");
84
112
  overflow-x: auto;
85
- margin-bottom: -1px;
86
- border-bottom: get("tablist-border-bottom");
87
113
  }
88
114
  [role="tab"] {
89
115
  display: block;
90
116
  position: relative;
91
117
  cursor: pointer;
92
- padding: 0.75em 0.1em 0.75em 0.1em;
118
+ padding: get("tab-padding");
93
119
  color: color.get(get("tab-color"));
94
- font-weight: bold;
95
- border-bottom: get("border-width") solid transparent;
96
- text-align: center;
97
- white-space: nowrap;
98
- &:not(:first-child) {
99
- margin-left: 1.25em;
100
- @include breakpoint.min("small") {
101
- margin-left: 2em;
102
- }
120
+ font-weight: get("tab-font-weight");
121
+ // Indicator
122
+ &::after {
123
+ content: "";
124
+ position: absolute;
125
+ background-color: color.get(get("indicator-color"));
126
+ opacity: 0;
103
127
  }
104
128
  &:hover {
105
129
  color: color.get(get("tab-color-hover"));
106
130
  }
107
- &:hover,
108
- &:focus,
109
- &[aria-selected="true"] {
110
- border-bottom-color: currentColor;
111
- }
112
131
  &[aria-selected="true"] {
113
132
  color: color.get(get("tab-color-selected"));
114
- border-bottom-color: get("tab-border-color-selected");
115
- opacity: 1;
133
+ background-color: color.get(get("tab-background-color-selected"));
134
+
116
135
  }
117
136
  }
137
+
138
+ // Styling for horizontal tabs
139
+ &:not(#{ $prefix }--vertical) {
140
+ [role="tablist"] {
141
+ border-bottom: get("tablist-divider");
142
+ border-bottom-width: get("tablist-divider-width");
143
+ }
144
+ [role="tab"] {
145
+ text-align: center;
146
+ @if (not get("horizontal-tab-wrap")) {
147
+ white-space: nowrap;
148
+ }
149
+ &::after {
150
+ bottom: 0;
151
+ left: 0;
152
+ right: 0;
153
+ height: get("indicator-size");
154
+ }
155
+ &[aria-selected="true"] {
156
+ &::after {
157
+ opacity: 1;
158
+ }
159
+ }
160
+ }
161
+ }
162
+
118
163
  [role="tabpanel"] {
119
164
  position: relative;
120
165
  z-index: 1;
121
- padding: 2rem get("margin");
122
- margin-bottom: -1px;
166
+ padding: get("tabpanel-padding");
123
167
  overflow: hidden;
124
-
125
168
  background-color: get("tabpanel-background-color");
126
- [class*="video-embed"],
127
- .full-width-image {
128
- margin-left: -(get("margin"));
129
- margin-right: -(get("margin"));
130
- width: calc(100% + #{ get("margin") * 2 });
131
- max-width: none;
132
- &:first-child {
133
- margin-top: -2rem;
169
+ }
170
+ }
171
+ // For images, etc that should fill tabpanel
172
+ #{ $prefix }__tabpanel-content-fill {
173
+ margin-left: -(map.get($tabpanel-spacing, "left"));
174
+ margin-right: -(map.get($tabpanel-spacing, "right"));
175
+ width: calc(100% + #{ map.get($tabpanel-spacing, "left") + map.get($tabpanel-spacing, "right") });
176
+ max-width: none;
177
+ &:first-child {
178
+ margin-top: -(map.get($tabpanel-spacing, "top"));
179
+ }
180
+ &:last-child {
181
+ margin-bottom: -(map.get($tabpanel-spacing, "bottom"));
182
+ }
183
+ }
184
+
185
+ #{ $prefix }--vertical {
186
+ display: grid;
187
+ grid-template-columns: get("vertical-tablist-width") auto;
188
+ [role="tablist"] {
189
+ flex-direction: column;
190
+ gap: get("vertical-tab-gap");
191
+ border-right: get("tablist-divider");
192
+ border-right-width: get("vertical-divider-width");
193
+ grid-column: 1;
194
+ }
195
+ [role="tab"] {
196
+ padding: get("vertical-tab-padding");
197
+ &::after {
198
+ @if (get("vertical-indicator-left")) {
199
+ left: 0;
200
+ } @else {
201
+ right: 0;
134
202
  }
135
- &:last-child {
136
- margin-bottom: -2rem;
203
+ bottom: 0;
204
+ top: 0;
205
+ width: get("indicator-size");
206
+ }
207
+ &[aria-selected="true"] {
208
+ &::after {
209
+ opacity: 1;
137
210
  }
138
211
  }
139
212
  }
213
+ [role="tabpanel"] {
214
+ grid-column: 2; // needed for equalHeights in vertical
215
+ }
140
216
  }
217
+
141
218
  #{ $prefix }--transparent {
142
219
  [role="tablist"] {
143
220
  background-color: transparent;
144
- box-shadow: none;
145
221
  padding-left: 0;
146
222
  padding-right: 0;
147
223
  }
@@ -155,13 +231,13 @@ $config: (
155
231
  #{ $prefix }--full-width {
156
232
  > [role="tablist"] {
157
233
  justify-content: safe center;
158
- box-shadow: 0 4px 4px rgba(0,0,0,0.2);
159
234
  }
160
235
  >[role="tabpanel"] {
161
236
  background-color: transparent;
162
237
  padding: 0;
163
238
  }
164
239
  }
240
+
165
241
  // Display all tabs during print
166
242
  #{ $prefix }--print {
167
243
  @media print {
@@ -23,6 +23,20 @@ $-fallbacks: (
23
23
 
24
24
  /// Module Settings
25
25
  /// @type Map
26
+ /// @prop {CssValue} font-weight [normal] Font weight for the tag text.
27
+ /// @prop {String} font-family [true] Font family for the tag text.
28
+ /// @prop {CssValue} box-shadow [none] Box shadow for the tag.
29
+ /// @prop {Dimension} padding [(0.4em 0.75em)] Inner padding for the tag.
30
+ /// @prop {CssValue} vertical-align [baseline] Vertical alignment of tag text.
31
+ /// @prop {Dimension} margin-between [0.5em] Margin between tag and other elements.
32
+ /// @prop {Dimension} margin-between-tags [0] Margin between tag and other tags.
33
+ /// @prop {Number} line-height [1] Line height for the tag text.
34
+ /// @prop {String} type-size ["small"] Font size for the tag text.
35
+ /// @prop {Color} background-color [#eaeaea] Background color of the tag.
36
+ /// @prop {Dimension} border-radius [1.25em] Border radius of the tag.
37
+ /// @prop {Color} border-color [transparent] Border color for the tag.
38
+ /// @prop {Dimension} border-width [1px] Border width of the tag.
39
+ /// @prop {String} color ["type-tertiary"] Color of the tag text.
26
40
 
27
41
  $config: (
28
42
  "font-weight" : normal,