@ulu/frontend 0.1.0-beta.12 → 0.1.0-beta.121

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 (344) hide show
  1. package/CHANGELOG.md +717 -0
  2. package/GEMINI.md +9 -0
  3. package/README.dev.md +3 -3
  4. package/README.md +14 -4
  5. package/dist/ulu-frontend.min.css +1 -1
  6. package/dist/ulu-frontend.min.js +36 -29
  7. package/docs-dev/.nojekyll +1 -0
  8. package/docs-dev/assets/main.js +832 -421
  9. package/docs-dev/assets/placeholder/icon-calendar.svg +1 -0
  10. package/docs-dev/assets/placeholder/icon-check.svg +1 -0
  11. package/docs-dev/assets/style.css +629 -233
  12. package/docs-dev/changelog/index.html +7613 -0
  13. package/docs-dev/changelog/updates-and-changes/index.html +5109 -0
  14. package/docs-dev/demos/accordion/index.html +1496 -358
  15. package/docs-dev/demos/badge/index.html +5895 -0
  16. package/docs-dev/demos/badge-stack/index.html +5876 -0
  17. package/docs-dev/demos/basic-hero/index.html +111 -0
  18. package/docs-dev/demos/breadcrumb/index.html +5930 -0
  19. package/docs-dev/demos/breakpoints-manager/index.html +5906 -0
  20. package/docs-dev/demos/button/index.html +1537 -343
  21. package/docs-dev/demos/button-group/index.html +5892 -0
  22. package/docs-dev/demos/button-verbose/index.html +5898 -0
  23. package/docs-dev/demos/callout/index.html +1559 -379
  24. package/docs-dev/demos/captioned-figure/index.html +1492 -339
  25. package/docs-dev/demos/card/index.html +1592 -800
  26. package/docs-dev/demos/card-grid/index.html +6017 -0
  27. package/docs-dev/demos/card-new/index.html +5088 -0
  28. package/docs-dev/demos/card-old/index.html +5223 -0
  29. package/docs-dev/demos/card.1/index.html +5223 -0
  30. package/docs-dev/demos/card.TRASH/index.html +5541 -0
  31. package/docs-dev/demos/counter-list/index.html +5900 -0
  32. package/docs-dev/demos/css-icons/index.html +1556 -380
  33. package/docs-dev/demos/data-grid/index.html +1492 -339
  34. package/docs-dev/demos/data-table/index.html +1634 -348
  35. package/docs-dev/demos/definition-list/index.html +6011 -0
  36. package/docs-dev/demos/details-group/index.html +5927 -0
  37. package/docs-dev/demos/donut-chart/index.html +5874 -0
  38. package/docs-dev/demos/file-save/index.html +1492 -339
  39. package/docs-dev/demos/flipcard/index.html +1492 -339
  40. package/docs-dev/demos/form-theme/index.html +1500 -347
  41. package/docs-dev/demos/headline-label/index.html +5862 -0
  42. package/docs-dev/demos/hero/index.html +12 -4
  43. package/docs-dev/demos/image-grid/index.html +12 -4
  44. package/docs-dev/demos/index.html +1493 -340
  45. package/docs-dev/demos/list-inline/index.html +1492 -339
  46. package/docs-dev/demos/list-lines/index.html +1492 -339
  47. package/docs-dev/demos/menu-stack/index.html +1652 -378
  48. package/docs-dev/demos/modals/index.html +1642 -366
  49. package/docs-dev/demos/nav-strip/index.html +1492 -339
  50. package/docs-dev/demos/overlay-section/index.html +1611 -388
  51. package/docs-dev/demos/panel/index.html +5922 -0
  52. package/docs-dev/demos/popovers/index.html +1752 -357
  53. package/docs-dev/demos/print/index.html +1492 -339
  54. package/docs-dev/demos/progress-bar/index.html +6030 -0
  55. package/docs-dev/demos/progress-circle/index.html +6197 -0
  56. package/docs-dev/demos/progress-donut/index.html +6107 -0
  57. package/docs-dev/demos/pull-quote/index.html +1492 -339
  58. package/docs-dev/demos/rail/index.html +5970 -0
  59. package/docs-dev/demos/rule/index.html +1509 -344
  60. package/docs-dev/demos/scroll-slider/index.html +72 -106
  61. package/docs-dev/demos/scrollpoints/index.html +1493 -340
  62. package/docs-dev/demos/skeleton/index.html +5918 -0
  63. package/docs-dev/demos/slider/index.html +12 -4
  64. package/docs-dev/demos/spoke-spinner/index.html +1492 -339
  65. package/docs-dev/demos/sticky-list/index.html +5883 -0
  66. package/docs-dev/demos/tabs/index.html +1565 -376
  67. package/docs-dev/demos/tag/index.html +1510 -345
  68. package/docs-dev/demos/theme-toggle/index.html +5939 -0
  69. package/docs-dev/demos/tile-grid-overlay/index.html +12 -4
  70. package/docs-dev/demos/tiles/index.html +1492 -339
  71. package/docs-dev/demos/tooltip/index.html +1492 -339
  72. package/docs-dev/demos/wysiwyg/index.html +5912 -0
  73. package/docs-dev/guide/building-stylesheet/index.html +1492 -339
  74. package/docs-dev/guide/developing-ulu-scss-module/index.html +1492 -339
  75. package/docs-dev/guide/index.html +1492 -339
  76. package/docs-dev/guide/updates-and-changes/index.html +5033 -0
  77. package/docs-dev/index.html +1492 -339
  78. package/docs-dev/javascript/events/index.html +1567 -376
  79. package/docs-dev/javascript/index.html +1492 -339
  80. package/docs-dev/javascript/settings/index.html +6065 -0
  81. package/docs-dev/javascript/ui-breakpoints/index.html +1506 -355
  82. package/docs-dev/javascript/ui-collapsible/index.html +1491 -340
  83. package/docs-dev/javascript/ui-details-group/index.html +5982 -0
  84. package/docs-dev/javascript/ui-dialog/index.html +1523 -357
  85. package/docs-dev/javascript/ui-flipcard/index.html +1552 -345
  86. package/docs-dev/javascript/ui-grid/index.html +1538 -413
  87. package/docs-dev/javascript/ui-modal-builder/index.html +1761 -470
  88. package/docs-dev/javascript/ui-overflow-scroller/index.html +1491 -340
  89. package/docs-dev/javascript/ui-overflow-scroller-pager/index.html +1491 -340
  90. package/docs-dev/javascript/ui-page/index.html +1491 -340
  91. package/docs-dev/javascript/ui-popover/index.html +1501 -354
  92. package/docs-dev/javascript/ui-print/index.html +1489 -346
  93. package/docs-dev/javascript/ui-print-details/index.html +1491 -340
  94. package/docs-dev/javascript/ui-programmatic-modal/index.html +1491 -340
  95. package/docs-dev/javascript/ui-proxy-click/index.html +1591 -355
  96. package/docs-dev/javascript/ui-resizer/index.html +1850 -434
  97. package/docs-dev/javascript/ui-scroll-slider/index.html +1531 -348
  98. package/docs-dev/javascript/ui-scrollpoint/index.html +1501 -357
  99. package/docs-dev/javascript/ui-slider/index.html +1708 -366
  100. package/docs-dev/javascript/ui-tabs/index.html +1523 -409
  101. package/docs-dev/javascript/ui-theme-toggle/index.html +6070 -0
  102. package/docs-dev/javascript/ui-tooltip/index.html +1501 -354
  103. package/docs-dev/javascript/utils-class-logger/index.html +1492 -341
  104. package/docs-dev/javascript/utils-css/index.html +5884 -0
  105. package/docs-dev/javascript/utils-dom/index.html +1523 -452
  106. package/docs-dev/javascript/utils-file-save/index.html +1491 -340
  107. package/docs-dev/javascript/utils-floating-ui/index.html +1491 -340
  108. package/docs-dev/javascript/utils-id/index.html +1491 -340
  109. package/docs-dev/javascript/utils-pause-youtube-video/index.html +1491 -340
  110. package/docs-dev/javascript/utils-system/index.html +6187 -0
  111. package/docs-dev/sass/base/color/index.html +1491 -340
  112. package/docs-dev/sass/base/elements/index.html +1492 -341
  113. package/docs-dev/sass/base/index/index.html +1492 -341
  114. package/docs-dev/sass/base/index.html +1492 -339
  115. package/docs-dev/sass/base/keyframes/index.html +1492 -341
  116. package/docs-dev/sass/base/layout/index.html +1492 -341
  117. package/docs-dev/sass/base/normalize/index.html +1491 -340
  118. package/docs-dev/sass/base/print/index.html +1492 -341
  119. package/docs-dev/sass/base/root/index.html +1495 -344
  120. package/docs-dev/sass/base/typography/index.html +1491 -340
  121. package/docs-dev/sass/components/accordion/index.html +1628 -436
  122. package/docs-dev/sass/components/adaptive-spacing/index.html +1491 -340
  123. package/docs-dev/sass/components/badge/index.html +1522 -353
  124. package/docs-dev/sass/components/badge-stack/index.html +6051 -0
  125. package/docs-dev/sass/components/basic-hero/index.html +6045 -0
  126. package/docs-dev/sass/components/breadcrumb/index.html +6092 -0
  127. package/docs-dev/sass/components/button/index.html +1491 -340
  128. package/docs-dev/sass/components/button-group/index.html +6043 -0
  129. package/docs-dev/sass/components/button-verbose/index.html +1613 -387
  130. package/docs-dev/sass/components/callout/index.html +1598 -388
  131. package/docs-dev/sass/components/captioned-figure/index.html +1491 -340
  132. package/docs-dev/sass/components/card/index.html +1601 -393
  133. package/docs-dev/sass/components/card-grid/index.html +1491 -340
  134. package/docs-dev/sass/components/counter-list/index.html +6127 -0
  135. package/docs-dev/sass/components/css-icon/index.html +1492 -341
  136. package/docs-dev/sass/components/data-grid/index.html +1511 -353
  137. package/docs-dev/sass/components/data-table/index.html +1510 -352
  138. package/docs-dev/sass/components/definition-list/index.html +6107 -0
  139. package/docs-dev/sass/components/fill-context/index.html +1491 -340
  140. package/docs-dev/sass/components/flipcard/index.html +1569 -387
  141. package/docs-dev/sass/components/flipcard-grid/index.html +1491 -340
  142. package/docs-dev/sass/components/form-theme/index.html +1718 -572
  143. package/docs-dev/sass/components/headline-label/index.html +6073 -0
  144. package/docs-dev/sass/components/hero/index.html +1499 -348
  145. package/docs-dev/sass/components/horizontal-rule/index.html +1491 -340
  146. package/docs-dev/sass/components/image-grid/index.html +1491 -340
  147. package/docs-dev/sass/components/index/index.html +1514 -349
  148. package/docs-dev/sass/components/index.html +1492 -339
  149. package/docs-dev/sass/components/links/index.html +1491 -340
  150. package/docs-dev/sass/components/list-inline/index.html +1491 -340
  151. package/docs-dev/sass/components/list-lines/index.html +1491 -340
  152. package/docs-dev/sass/components/list-ordered/index.html +1491 -340
  153. package/docs-dev/sass/components/list-unordered/index.html +1491 -340
  154. package/docs-dev/sass/components/menu-stack/index.html +1578 -378
  155. package/docs-dev/sass/components/modal/index.html +1576 -390
  156. package/docs-dev/sass/components/nav-strip/index.html +1499 -348
  157. package/docs-dev/sass/components/overlay-section/index.html +1499 -348
  158. package/docs-dev/sass/components/pager/index.html +1491 -340
  159. package/docs-dev/sass/components/panel/index.html +6273 -0
  160. package/docs-dev/sass/components/placeholder-block/index.html +1491 -340
  161. package/docs-dev/sass/components/popover/index.html +1561 -404
  162. package/docs-dev/sass/components/progress-bar/index.html +6252 -0
  163. package/docs-dev/sass/components/progress-circle/index.html +6144 -0
  164. package/docs-dev/sass/components/pull-quote/index.html +1491 -340
  165. package/docs-dev/sass/components/rail/index.html +6063 -0
  166. package/docs-dev/sass/components/ratio-box/index.html +1499 -348
  167. package/docs-dev/sass/components/rule/index.html +1492 -341
  168. package/docs-dev/sass/components/scroll-slider/index.html +1501 -362
  169. package/docs-dev/sass/components/skeleton/index.html +6101 -0
  170. package/docs-dev/sass/components/skip-link/index.html +1491 -340
  171. package/docs-dev/sass/components/slider/index.html +1581 -442
  172. package/docs-dev/sass/components/spoke-spinner/index.html +1493 -342
  173. package/docs-dev/sass/components/sticky-list/index.html +6263 -0
  174. package/docs-dev/sass/components/table-sticky/index.html +5707 -0
  175. package/docs-dev/sass/components/tabs/index.html +1519 -353
  176. package/docs-dev/sass/components/tag/index.html +1648 -403
  177. package/docs-dev/sass/components/tile-button/index.html +1491 -340
  178. package/docs-dev/sass/components/tile-grid/index.html +1491 -340
  179. package/docs-dev/sass/components/tile-grid-overlay/index.html +1491 -340
  180. package/docs-dev/sass/components/vignette/index.html +1499 -348
  181. package/docs-dev/sass/components/wysiwyg/index.html +1524 -355
  182. package/docs-dev/sass/core/breakpoint/index.html +1577 -374
  183. package/docs-dev/sass/core/button/index.html +1523 -370
  184. package/docs-dev/sass/core/color/index.html +1768 -485
  185. package/docs-dev/sass/core/cssvar/index.html +1491 -340
  186. package/docs-dev/sass/core/element/index.html +1837 -404
  187. package/docs-dev/sass/core/index.html +1491 -340
  188. package/docs-dev/sass/core/layout/index.html +1582 -412
  189. package/docs-dev/sass/core/path/index.html +1491 -340
  190. package/docs-dev/sass/core/selector/index.html +1491 -340
  191. package/docs-dev/sass/core/typography/index.html +1657 -448
  192. package/docs-dev/sass/core/units/index.html +1499 -342
  193. package/docs-dev/sass/core/utils/index.html +2781 -481
  194. package/docs-dev/sass/helpers/color/index.html +1491 -340
  195. package/docs-dev/sass/helpers/display/index.html +1492 -341
  196. package/docs-dev/sass/helpers/index/index.html +1491 -340
  197. package/docs-dev/sass/helpers/index.html +1492 -339
  198. package/docs-dev/sass/helpers/print/index.html +759 -298
  199. package/docs-dev/sass/helpers/typography/index.html +1491 -340
  200. package/docs-dev/sass/helpers/units/index.html +1491 -340
  201. package/docs-dev/sass/helpers/utilities/index.html +1495 -340
  202. package/docs-dev/sass/index.html +1492 -339
  203. package/js/events/index.js +17 -5
  204. package/js/index.js +1 -0
  205. package/js/settings.js +97 -0
  206. package/js/ui/breakpoints.js +19 -16
  207. package/js/ui/collapsible.js +8 -1
  208. package/js/ui/details-group.js +112 -0
  209. package/js/ui/dialog.js +103 -44
  210. package/js/ui/dialog.todo +2 -36
  211. package/js/ui/flipcard.js +37 -57
  212. package/js/ui/grid.js +15 -13
  213. package/js/ui/index.js +1 -0
  214. package/js/ui/modal-builder.js +127 -70
  215. package/js/ui/overflow-scroller.js +6 -4
  216. package/js/ui/page.js +2 -2
  217. package/js/ui/popover.js +38 -38
  218. package/js/ui/print.js +16 -25
  219. package/js/ui/programmatic-modal.js +9 -3
  220. package/js/ui/proxy-click.js +50 -36
  221. package/js/ui/resizer.js +408 -39
  222. package/js/ui/scroll-slider.js +24 -30
  223. package/js/ui/scrollpoint.js +29 -64
  224. package/js/ui/slider.js +108 -63
  225. package/js/ui/tabs.js +23 -36
  226. package/js/ui/theme-toggle.js +332 -94
  227. package/js/ui/tooltip.js +27 -32
  228. package/js/utils/class-logger.js +3 -3
  229. package/js/utils/css.js +13 -0
  230. package/js/utils/dom.js +23 -64
  231. package/js/utils/font-awesome.js +19 -0
  232. package/js/utils/index.js +2 -1
  233. package/js/utils/system.js +155 -0
  234. package/package.json +24 -9
  235. package/scss/README.md +9 -0
  236. package/scss/_breakpoint.scss +39 -5
  237. package/scss/_button.scss +7 -5
  238. package/scss/_color.scss +71 -40
  239. package/scss/_element.scss +124 -2
  240. package/scss/_layout.scss +7 -8
  241. package/scss/_typography.scss +15 -0
  242. package/scss/_units.scss +3 -2
  243. package/scss/_utils.scss +387 -16
  244. package/scss/base/_elements.scss +0 -1
  245. package/scss/base/_index.scss +1 -1
  246. package/scss/base/_keyframes.scss +15 -0
  247. package/scss/base/_layout.scss +1 -0
  248. package/scss/base/_print.scss +2 -0
  249. package/scss/base/_root.scss +2 -0
  250. package/scss/components/_accordion.scss +167 -110
  251. package/scss/components/_badge-stack.scss +84 -0
  252. package/scss/components/_badge.scss +30 -7
  253. package/scss/components/_basic-hero.scss +112 -0
  254. package/scss/components/_breadcrumb.scss +110 -0
  255. package/scss/components/_button-group.scss +90 -0
  256. package/scss/components/_button-verbose.scss +100 -18
  257. package/scss/components/_callout.scss +112 -53
  258. package/scss/components/_card-grid.scss +5 -2
  259. package/scss/components/_card.scss +216 -87
  260. package/scss/components/_counter-list.scss +151 -0
  261. package/scss/components/_css-icon.scss +27 -17
  262. package/scss/components/_data-grid.scss +55 -12
  263. package/scss/components/_data-table.scss +3 -0
  264. package/scss/components/_definition-list.scss +178 -0
  265. package/scss/components/_flipcard.scss +8 -3
  266. package/scss/components/_form-theme.scss +106 -95
  267. package/scss/components/_headline-label.scss +83 -0
  268. package/scss/components/_hero.scss +3 -10
  269. package/scss/components/_index.scss +79 -0
  270. package/scss/components/_menu-stack.scss +87 -23
  271. package/scss/components/_modal.scss +51 -23
  272. package/scss/components/_nav-strip.scss +2 -0
  273. package/scss/components/_overlay-section.scss +2 -5
  274. package/scss/components/_panel.scss +246 -0
  275. package/scss/components/_popover.scss +139 -38
  276. package/scss/components/_progress-bar.scss +260 -0
  277. package/scss/components/_progress-circle.scss +175 -0
  278. package/scss/components/_pull-quote.scss +1 -1
  279. package/scss/components/_rail.scss +127 -0
  280. package/scss/components/_ratio-box.scss +2 -5
  281. package/scss/components/_rule.scss +1 -0
  282. package/scss/components/_scroll-slider.scss +1 -5
  283. package/scss/components/_skeleton.scss +126 -0
  284. package/scss/components/_slider.scss +49 -72
  285. package/scss/components/_spoke-spinner.scss +2 -2
  286. package/scss/components/_sticky-list.scss +206 -0
  287. package/scss/components/_tabs.scss +22 -4
  288. package/scss/components/_tag.scss +49 -7
  289. package/scss/components/_vignette.scss +2 -5
  290. package/scss/components/_wysiwyg.scss +21 -13
  291. package/scss/helpers/_display.scss +15 -18
  292. package/scss/helpers/_print.scss +12 -7
  293. package/scss/helpers/_utilities.scss +62 -34
  294. package/types/events/index.d.ts +10 -1
  295. package/types/events/index.d.ts.map +1 -1
  296. package/types/index.d.ts +1 -0
  297. package/types/settings.d.ts +70 -0
  298. package/types/settings.d.ts.map +1 -0
  299. package/types/ui/breakpoints.d.ts +14 -14
  300. package/types/ui/breakpoints.d.ts.map +1 -1
  301. package/types/ui/collapsible.d.ts.map +1 -1
  302. package/types/ui/details-group.d.ts +38 -0
  303. package/types/ui/details-group.d.ts.map +1 -0
  304. package/types/ui/dialog.d.ts +20 -14
  305. package/types/ui/dialog.d.ts.map +1 -1
  306. package/types/ui/flipcard.d.ts +16 -10
  307. package/types/ui/flipcard.d.ts.map +1 -1
  308. package/types/ui/grid.d.ts +4 -6
  309. package/types/ui/grid.d.ts.map +1 -1
  310. package/types/ui/index.d.ts +1 -0
  311. package/types/ui/modal-builder.d.ts +116 -11
  312. package/types/ui/modal-builder.d.ts.map +1 -1
  313. package/types/ui/overflow-scroller.d.ts +2 -2
  314. package/types/ui/overflow-scroller.d.ts.map +1 -1
  315. package/types/ui/popover.d.ts +6 -7
  316. package/types/ui/popover.d.ts.map +1 -1
  317. package/types/ui/print.d.ts +0 -4
  318. package/types/ui/print.d.ts.map +1 -1
  319. package/types/ui/programmatic-modal.d.ts.map +1 -1
  320. package/types/ui/proxy-click.d.ts +19 -3
  321. package/types/ui/proxy-click.d.ts.map +1 -1
  322. package/types/ui/resizer.d.ts +116 -16
  323. package/types/ui/resizer.d.ts.map +1 -1
  324. package/types/ui/scroll-slider.d.ts +5 -7
  325. package/types/ui/scroll-slider.d.ts.map +1 -1
  326. package/types/ui/scrollpoint.d.ts +3 -8
  327. package/types/ui/scrollpoint.d.ts.map +1 -1
  328. package/types/ui/slider.d.ts +33 -14
  329. package/types/ui/slider.d.ts.map +1 -1
  330. package/types/ui/tabs.d.ts +6 -8
  331. package/types/ui/tabs.d.ts.map +1 -1
  332. package/types/ui/theme-toggle.d.ts +51 -7
  333. package/types/ui/theme-toggle.d.ts.map +1 -1
  334. package/types/ui/tooltip.d.ts +3 -5
  335. package/types/ui/tooltip.d.ts.map +1 -1
  336. package/types/utils/css.d.ts +11 -0
  337. package/types/utils/css.d.ts.map +1 -0
  338. package/types/utils/dom.d.ts +12 -32
  339. package/types/utils/dom.d.ts.map +1 -1
  340. package/types/utils/font-awesome.d.ts +5 -0
  341. package/types/utils/font-awesome.d.ts.map +1 -0
  342. package/types/utils/index.d.ts +1 -0
  343. package/types/utils/system.d.ts +113 -0
  344. package/types/utils/system.d.ts.map +1 -0
@@ -0,0 +1,126 @@
1
+ ////
2
+ /// @group skeleton
3
+ /// Placeholder component for skeleton (ie. loading state
4
+ ////
5
+
6
+ @use "sass:map";
7
+ @use "sass:list";
8
+ @use "sass:math";
9
+ @use "sass:meta";
10
+
11
+ @use "../selector";
12
+ @use "../utils";
13
+ @use "../color";
14
+ @use "../element";
15
+
16
+
17
+ // Used for function fallback
18
+ $-fallbacks: (
19
+ "border-radius" : (
20
+ "function" : meta.get-function("get", false, "element"),
21
+ "property" : "border-radius"
22
+ )
23
+ );
24
+
25
+ /// Module Settings
26
+ /// @type Map
27
+ /// @prop {CssValue} animation [pulse 2s cubic-bezier(0.4,0,0.6,1) infinite] The animation applied to skeleton elements.
28
+ /// @prop {Color} color [type-disabled] The base color for skeleton elements.
29
+ /// @prop {Color} background-color [#cbcbcb] The primary background color for skeleton elements.
30
+ /// @prop {Color} background-color-alt [#aeaeae] An alternative background color for skeleton elements, used for variations.
31
+ /// @prop {Dimension} border-radius [true] The border-radius for skeleton blocks and text. If set to true, uses the element.scss property for "border-radius".
32
+ /// @prop {Dimension} inline-margin [0.35em] The margin between inline skeleton text elements.
33
+ /// @prop {Number} media-ratio [(4/3)] The aspect ratio for skeleton media blocks (width/height).
34
+ /// @prop {Dimension} text-border-radius [3em] The border-radius for skeleton text lines.
35
+ /// @prop {Map} widths [Map] A map defining various width percentages for skeleton text lines (or used to size blocks/etc)
36
+
37
+ $config: (
38
+ "animation" : UluPulse 2s cubic-bezier(0.4,0,0.6,1) infinite,
39
+ "color" : "type-disabled",
40
+ "background-color" : #e2e2e2,
41
+ "background-color-alt" : #bababa,
42
+ "border-radius": true,
43
+ "inline-margin" : 0.35em,
44
+ "media-ratio" : list.slash(4, 3),
45
+ "media-font-size" : 2rem,
46
+ "text-border-radius" : 3em,
47
+ "widths": (
48
+ "small-xxx" : 10%,
49
+ "small-xx" : 20%,
50
+ "small-x" : 30%,
51
+ "small" : 40%,
52
+ "large" : 70%,
53
+ "large-x" : 85%,
54
+ "large-xx" : 100%
55
+ ),
56
+ ) !default;
57
+
58
+ /// Change modules $config
59
+ /// @param {Map} $changes Map of changes
60
+ /// @example scss
61
+ /// @include ulu.component-skeleton-set(( "property" : value ));
62
+
63
+ @mixin set($changes) {
64
+ $config: map.merge($config, $changes) !global;
65
+ }
66
+
67
+ /// Get a config option
68
+ /// @param {Map} $name Name of property
69
+ /// @example scss
70
+ /// @include ulu.component-skeleton-get("property");
71
+
72
+ @function get($name) {
73
+ $value: utils.require-map-get($config, $name, "skeleton [config]");
74
+ @return utils.function-fallback($name, $value, $-fallbacks);
75
+ }
76
+
77
+ /// Prints component styles
78
+ /// @demo skeleton
79
+ /// @example scss
80
+ /// @include ulu.component-skeleton-styles();
81
+
82
+ @mixin styles {
83
+ $prefix: selector.class("skeleton");
84
+
85
+ #{ $prefix } {
86
+ animation: get("animation");
87
+ color: color.get(get("color"));
88
+ }
89
+ #{ $prefix }--background {
90
+ background-color: color.get(get("background-color")) !important;
91
+ }
92
+ #{ $prefix }--block,
93
+ #{ $prefix }--text,
94
+ #{ $prefix }--media {
95
+ animation: get("animation");
96
+ color: color.get(get("color"));
97
+ background-color: color.get(get("background-color")) !important;
98
+ border-radius: get("border-radius");
99
+ }
100
+ #{ $prefix }--media {
101
+ display: flex;
102
+ align-items: center;
103
+ justify-content: center;
104
+ aspect-ratio: get("media-ratio");
105
+ font-size: get("media-font-size");
106
+ }
107
+ #{ $prefix }--text {
108
+ height: 1em;
109
+ width: 60%;
110
+ border-radius: get("text-border-radius");
111
+ }
112
+ #{ $prefix }--inline {
113
+ display: inline-block;
114
+ }
115
+ #{ $prefix }--inline + #{ $prefix }--inline {
116
+ margin-left: get("inline-margin");
117
+ }
118
+ #{ $prefix }--background-alt {
119
+ background-color: color.get(get("background-color-alt")) !important;
120
+ }
121
+ @each $name, $value in get("widths") {
122
+ #{ $prefix }--width-#{ $name } {
123
+ width: $value;
124
+ }
125
+ }
126
+ }
@@ -12,47 +12,45 @@
12
12
  /// Module Settings
13
13
  /// @type Map
14
14
  /// @prop {Color} background-color [transparent] Background color for the entire slider section.
15
- /// @prop {Dimension} margin-bottom [3rem] Bottom margin color for the entire slider section.
16
- /// @prop {Dimension} margin-top [1rem] Top margin color for the entire slider section.
17
- /// @prop {Dimension} padding-bottom [0] Bottom padding for individual slides.
15
+ /// @prop {Dimension} margin [(1rem 0 3rem 0)] Margin for slider container
18
16
  /// @prop {Dimension} padding-top [0] Top padding for individual slides.
19
- /// @prop {Dimension} button-icon-offset-x [false] Offsets the control icons in from their respective sides.
20
- /// @prop {Dimension} button-icon-offset-y [false] Offsets the control options down by adding a margin.
17
+ /// @prop {Dimension} button-offset-x [null] Offsets the control button in from their respective sides.
18
+ /// @prop {Dimension} button-offset-y [null] Offsets the control button y
21
19
  /// @prop {Dimension} button-margin [0.75rem] The margin between the controls and the slide content when using .slider__slide-gap-for-controls
22
- /// @prop {Dimension} button-size [3rem] Size of the button. Likely antiquated and replaced with button-width and button-height
23
- /// @prop {Color} dot-background-color [transparent] The color of the dot when unselected.
24
- /// @prop {Color} dot-background-color-hover [color.get("link")] The color of the dot when hovered.
25
- /// @prop {Color} dot-background-color-selected [color.get("link")] The color of the dot when selected.
26
- /// @prop {Dimension} dot-border-radius [50%] The border-radius of the dot.
27
- /// @prop {Color} dot-border-color [color.get("link")] The border color of the dot.
28
- /// @prop {Color} dot-border-color-hover [color.get("link")] The border color of the dot when hovered.
29
- /// @prop {Color} dot-border-color-selected [color.get("link")] The border color of the dot when selected.
30
- /// @prop {Dimension} dot-border-width [2px] The border width of the dot.
31
- /// @prop {Dimension} dot-size [1rem] The height and width of the dot.
32
- /// @prop {Dimension} button-height [1rem] The height of the button.
20
+ /// @prop {Color} nav-margin [(0.5rem 0)] Margin for nav (dots)
21
+ /// @prop {Color} nav-background-color [transparent] The color of the dot when unselected.
22
+ /// @prop {Color} nav-background-color-hover [color.get("link")] The color of the dot when hovered.
23
+ /// @prop {Color} nav-background-color-selected [color.get("link")] The color of the dot when selected.
24
+ /// @prop {Dimension} nav-border-radius [50%] The border-radius of the dot.
25
+ /// @prop {Color} nav-border-color [color.get("link")] The border color of the dot.
26
+ /// @prop {Color} nav-border-color-hover [color.get("link")] The border color of the dot when hovered.
27
+ /// @prop {Color} nav-border-color-selected [color.get("link")] The border color of the dot when selected.
28
+ /// @prop {Dimension} nav-border-width [2px] The border width of the dot.
29
+ /// @prop {Dimension} nav-size [1rem] The height and width of the dot.
30
+ /// @prop {Dimension} nav-gap [0.2rem] Gap between nav items
33
31
  /// @prop {Dimension} button-width [1rem] The width of the button.
34
32
 
35
33
  $config: (
36
34
  "background-color" : transparent,
37
- "margin-bottom" : 3rem,
38
- "margin-top" : 1rem,
39
- "button-icon-offset-x" : 2rem,
40
- "button-icon-offset-y" : false,
41
- "button-margin" : 2rem,
42
- "button-size" : 3rem,
43
- "button-height": 2.5rem,
44
- "button-width": 2.5rem,
45
- "dot-background-color" : transparent,
46
- "dot-background-color-hover" : "link",
47
- "dot-background-color-selected" : "link",
48
- "dot-border-color" : "link",
49
- "dot-border-color-hover" : "link",
50
- "dot-border-color-selected" : "link",
51
- "dot-border-radius" : 50%,
52
- "dot-border-width" : 2px,
53
- "dot-size" : 1rem,
35
+ "margin" : (1rem 0 3rem 0),
54
36
  "padding-bottom" : 0,
55
37
  "padding-top" : 0,
38
+ "button-offset-x" : null,
39
+ "button-offset-y" : null,
40
+ "button-margin" : 2rem,
41
+ "button-width": 2.5rem,
42
+ "nav-background-color" : transparent,
43
+ "nav-background-color-hover" : "link",
44
+ "nav-background-color-selected" : "link",
45
+ "nav-border-color" : "link",
46
+ "nav-border-color-hover" : "link",
47
+ "nav-border-color-selected" : "link",
48
+ "nav-border-radius" : 50%,
49
+ "nav-gap" : 0.2rem,
50
+ "nav-border-width" : 2px,
51
+ "nav-size" : 1rem,
52
+ "nav-margin" : (0.5rem 0),
53
+
56
54
  ) !default;
57
55
 
58
56
  /// Change modules $config
@@ -84,7 +82,7 @@ $config: (
84
82
  #{ $prefix } {
85
83
  position: relative; // for controls
86
84
  background-color: color.get(get("background-color"));
87
- margin: get("margin-top") 0 get("margin-bottom") 0;
85
+ margin: get("margin");
88
86
  }
89
87
  #{ $prefix }__track,
90
88
  #{ $prefix-plugin }__controls,
@@ -97,34 +95,30 @@ $config: (
97
95
  top: 50%;
98
96
  transform: translateY(-50%);
99
97
  z-index: 10;
100
- }
101
- @if get("button-icon-offset-y") {
102
- #{ $prefix-plugin }__control-icon {
103
- margin-top: get("button-icon-offset-y");
104
- }
98
+ margin-top: get("button-offset-y");
105
99
  }
106
100
  #{ $prefix-plugin }__nav {
107
101
  display: flex;
108
102
  justify-content: center;
109
- li {
110
- margin: 0.5rem 0.15rem;
111
- }
103
+ margin: get("nav-margin");
104
+ gap: get("nav-gap");
112
105
  }
113
106
  #{ $prefix-plugin }__nav-button {
114
107
  display: block;
115
- width: get("dot-size");
116
- height: get("dot-size");
117
- background-color: color.get(get("dot-background-color"));
118
- border: get("dot-border-width") solid color.get(get("dot-border-color"));
119
- border-radius: get("dot-border-radius");
108
+ width: get("nav-size");
109
+ height: get("nav-size");
110
+ background-color: color.get(get("nav-background-color"));
111
+ border: get("nav-border-width") solid color.get(get("nav-border-color"));
112
+ border-radius: get("nav-border-radius");
120
113
  &:hover {
121
- background-color: color.get(get("dot-background-color-hover"));
114
+ background-color: color.get(get("nav-background-color-hover"));
115
+ border-color: color.get(get("nav-border-color-hover"));
122
116
  }
123
117
  }
124
118
  #{ $prefix-plugin }__nav-button--active,
125
119
  #{ $prefix-plugin }__nav-button--active:hover {
126
- background-color: color.get(get("dot-background-color-selected"));
127
- border-color: color.get(get("dot-border-color-selected"));
120
+ background-color: color.get(get("nav-background-color-selected"));
121
+ border-color: color.get(get("nav-border-color-selected"));
128
122
  }
129
123
  #{ $prefix-plugin }__control-button,
130
124
  #{ $prefix-plugin }__nav-button {
@@ -164,42 +158,25 @@ $config: (
164
158
  }
165
159
  #{ $prefix-plugin }__control-button--previous {
166
160
  left: 0;
167
- @if get("button-icon-offset-x") {
168
- #{ $prefix-plugin }__control-icon {
169
- margin-left: get("button-icon-offset-x");
170
- }
171
- }
161
+ margin-left: get("button-offset-x");
172
162
  }
173
163
  #{ $prefix-plugin }__control-button--next {
174
164
  right: 0;
175
- @if get("button-icon-offset-x") {
176
- #{ $prefix-plugin }__control-icon {
177
- margin-right: get("button-icon-offset-x");
178
- }
179
- }
165
+ margin-right: get("button-offset-x");
180
166
  }
181
167
  #{ $prefix }--inset-controls {
182
168
  #{ $prefix }__slide-gap-for-controls {
183
- $padding: get("button-width") + get("button-margin") + get("button-icon-offset-x");
169
+ $padding: get("button-width") + get("button-margin") + get("button-offset-x");
184
170
  padding-left: $padding;
185
171
  padding-right: $padding;
186
172
  }
187
173
  #{ $prefix-plugin }__control-button--previous {
188
174
  left: 0;
189
- @if get("button-icon-offset-x") {
190
- &#{ $prefix-plugin }__control-icon {
191
- margin-left: get("button-icon-offset-x");
192
-
193
- }
194
- }
175
+ margin-left: get("button-offset-x");
195
176
  }
196
177
  #{ $prefix-plugin }__control-button--next {
197
178
  right: 0;
198
- @if get("button-icon-offset-x") {
199
- &#{ $prefix-plugin }__control-icon {
200
- margin-right: get("button-icon-offset-x");
201
- }
202
- }
179
+ margin-right: get("button-offset-x");
203
180
  }
204
181
  }
205
182
  }
@@ -96,7 +96,7 @@ $styles: () !default;
96
96
  transform-origin: $sizeHalf $sizeHalf;
97
97
  animation: UluFadeOut get("duration") linear infinite;
98
98
  }
99
- #{ $prefix }__spinner div:after {
99
+ #{ $prefix }__spinner div::after {
100
100
  content: " ";
101
101
  display: block;
102
102
  position: absolute;
@@ -181,7 +181,7 @@ $styles: () !default;
181
181
  transform-origin: $sizeHalf $sizeHalf;
182
182
  animation-duration: map.get($merged, "duration");
183
183
  }
184
- #{ $prefix }__spinner div:after {
184
+ #{ $prefix }__spinner div::after {
185
185
  left: $sizeHalf - $spoke-widthHalf;
186
186
  width: $spoke-width;
187
187
  height: map.get($merged, "spoke-height");
@@ -0,0 +1,206 @@
1
+
2
+ ////
3
+ /// @group sticky-list
4
+ ////
5
+ /// Sticky first column, sticky elements inside adjacent columns to first. (Sticky list with header)
6
+
7
+ @use "sass:map";
8
+ @use "sass:meta";
9
+ @use "sass:color" as sassColor;
10
+
11
+ @use "../color";
12
+ @use "../element";
13
+ @use "../breakpoint";
14
+ @use "../typography";
15
+ @use "../utils";
16
+ @use "../selector";
17
+
18
+ // Used for function fallback
19
+ $-fallbacks: (
20
+ "margin" : (
21
+ "function" : meta.get-function("get", false, "element"),
22
+ "property" : "margin"
23
+ ),
24
+ );
25
+
26
+ /// Module Settings
27
+ /// @type Map
28
+ /// @prop {Color} background-color [transparent] Background color for the entire slider section.
29
+ /// @prop {Number} margin [true] Margin on ends of component (defaults to element margin)
30
+ /// @prop {Number} mask-offset-bottom [55vh] The offset for the mask (on bottom)
31
+ /// @prop {Number} mask-offset-top [5rem] The offset for the mask (on top)
32
+ /// @prop {Number} sticky-top [45vh] When to stick
33
+ /// @prop {String} breakpoint ["medium"] The upward breakpoint that this is allowed to be sticky
34
+ /// @prop {String} type-size ["medium"] The typography size to use for title
35
+ /// @prop {Number} title-width [40%] The width of the title when this is displayed in columns
36
+ /// @prop {Number} title-min-width [8em] The min width for title when displayed in columns
37
+ /// @prop {CssValue} title-text-align [right] Text alignment for title when displayed in columns
38
+ /// @prop {Number} item-padding-x [0] Optional padding on the left/right for items
39
+ /// @prop {Number} gap [2rem] The gap between title and items when displayed in columns
40
+ /// @prop {Color} background-color [white] The background color used for the mask
41
+ /// @prop {List} background-contexts Adjust the background mask color by contextual selectors. Pass List of Maps with ("selector" [parent/contextual selector], "background-color", "item-padding-x" [optional])
42
+
43
+ $config: (
44
+ "margin" : true,
45
+ "mask-offset-bottom" : 55vh,
46
+ "mask-offset-top" : 5rem,
47
+ "sticky-top" : 45vh,
48
+ "breakpoint" : "medium",
49
+ "type-size" : "large",
50
+ "title-width" : 40%,
51
+ "title-min-width" : 8em,
52
+ "title-text-align" : right,
53
+ "item-padding-x" : 0,
54
+ "gap" : 2rem,
55
+ "background-color" : white,
56
+ "background-contexts" : (
57
+ (
58
+ "selector" : ".background-dark",
59
+ "background-color" : black,
60
+ "item-padding-x" : 1em
61
+ ),
62
+ )
63
+ );
64
+
65
+ /// Change modules $config
66
+ /// @param {Map} $changes Map of changes
67
+ /// @example scss
68
+ /// @include ulu.component-sticky-list-set(( "property" : value ));
69
+
70
+ @mixin set($changes) {
71
+ $config: map.merge($config, $changes) !global;
72
+ }
73
+
74
+ /// Set sizes map
75
+ /// @param {Map} $changes Map of changes
76
+ /// @param {String} $merge-mode Merge mode see utils.map-merge() [null|"deep"|"overwrite"]
77
+
78
+ @mixin set-sizes($changes, $merge-mode: null) {
79
+ $sizes: utils.map-merge($sizes, $changes, $merge-mode) !global;
80
+ }
81
+
82
+ /// Get a config option
83
+ /// @param {Map} $name Name of property
84
+ /// @example scss
85
+ /// @include ulu.component-sticky-list-get("property");
86
+
87
+ @function get($name) {
88
+ $value: utils.require-map-get($config, $name, "sticky-list [config]");
89
+ @return utils.function-fallback($name, $value, $-fallbacks);
90
+ }
91
+
92
+ /// Prints component styles
93
+ /// @demo sticky-list
94
+ /// @example scss
95
+ /// @include ulu.component-sticky-list-styles();
96
+ /// @example html {preview}
97
+ /// <div class="sticky-list">
98
+ /// <strong class="sticky-list__title">Example:</strong>
99
+ /// <ul class="sticky-list__list">
100
+ /// <li class="sticky-list__item">
101
+ /// Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras nec nisl magna
102
+ /// </li>
103
+ /// <li class="sticky-list__item">
104
+ /// Aenean sollicitudin mauris lectus, blandit suscipit lectus fringilla sed
105
+ /// </li>
106
+ /// <li class="sticky-list__item">
107
+ /// Suspendisse sollicitudin, justo sed efficitur tempor, risus
108
+ /// </li>
109
+ /// <li class="sticky-list__item">
110
+ /// Suspendisse sollicitudin, justo sed efficitur tempor, risus
111
+ /// </li>
112
+ /// <li class="sticky-list__item">
113
+ /// Suspendisse sollicitudin, justo sed efficitur tempor, risus
114
+ /// </li>
115
+ /// </ul>
116
+ /// </div>
117
+
118
+ @mixin styles {
119
+ $prefix: selector.class("sticky-list");
120
+ $mask-offset-top: get("mask-offset-top");
121
+ $mask-offset-bottom: get("mask-offset-bottom");
122
+ $type-size: get("type-size");
123
+ $sticky-top: get("sticky-top");
124
+
125
+ #{ $prefix } {
126
+ padding: get("margin") 0;
127
+ }
128
+ @include breakpoint.min(get("breakpoint")) {
129
+ #{ $prefix } {
130
+ display: flex;
131
+ align-items: flex-start;
132
+ gap: get("gap");
133
+ position: relative;
134
+ @if ($type-size and typography.has-size($type-size)) {
135
+ @include typography.size($type-size, $only-font-size: true);
136
+ } @else if ($type-size) {
137
+ @warn "Unable to find '#{$type-size}' typography size for title";
138
+ }
139
+ }
140
+ #{ $prefix }__title,
141
+ #{ $prefix } > :not(ul) {
142
+ display: block;
143
+ position: sticky;
144
+ top: $sticky-top;
145
+ flex-basis: get("title-width");
146
+ min-width: get("title-min-width");
147
+ padding-top: $mask-offset-top;
148
+ padding-bottom: $mask-offset-bottom;
149
+ text-align: get("title-text-align");
150
+ }
151
+ #{ $prefix }__list,
152
+ #{ $prefix } > ul {
153
+ list-style: none;
154
+ margin: 0;
155
+ display: flex;
156
+ flex-direction: column;
157
+ justify-content: space-between;
158
+ align-self: stretch;
159
+ }
160
+ #{ $prefix }__item,
161
+ #{ $prefix } > ul > li {
162
+ display: block;
163
+ position: sticky;
164
+ top: $sticky-top;
165
+ margin: 0 !important; // If in editor (to complicated for :not())
166
+ padding: $mask-offset-top get("item-padding-x") $mask-offset-bottom get("item-padding-x");
167
+ @include set-background(get("background-color"));
168
+ }
169
+ #{ $prefix }__item:first-child,
170
+ #{ $prefix } > ul > li:first-child {
171
+ margin-top: 0;
172
+ }
173
+ #{ $prefix }__item:last-child,
174
+ #{ $prefix } > ul > li:last-child {
175
+ margin-bottom: 0;
176
+ }
177
+ }
178
+
179
+ // Print out any contextual background styles
180
+ @each $props in get("background-contexts") {
181
+ $selector: map.get($props, "selector");
182
+ $item-padding-x: map.get($props, "item-padding-x");
183
+ @include breakpoint.min(get("breakpoint")) {
184
+ #{ $selector } {
185
+ #{ $prefix }__item,
186
+ #{ $prefix } > ul > li {
187
+ @if ($item-padding-x) {
188
+ padding-left: $item-padding-x;
189
+ padding-right: $item-padding-x;
190
+ }
191
+ @include set-background(map.get($props, "background-color"));
192
+ }
193
+ }
194
+ }
195
+ }
196
+ }
197
+
198
+ /// Outputs background color mask CSS (gradient from transparent to original color)
199
+ /// @param {Color} $color The color to create the CSS for
200
+
201
+ @mixin set-background($color) {
202
+ $color: color.get($color);
203
+ $color-transparent: sassColor.change($color, $alpha: 0);
204
+ background-color: $color;
205
+ background: linear-gradient(180deg, $color-transparent 0%, $color get("mask-offset-top"));
206
+ }
@@ -9,6 +9,7 @@
9
9
  @use "../color";
10
10
  @use "../selector";
11
11
  @use "../breakpoint";
12
+ @use "../layout";
12
13
  @use "../typography";
13
14
  @use "../element";
14
15
  @use "../utils";
@@ -39,6 +40,8 @@ $-fallbacks: (
39
40
  /// @prop {Dimension} tabpanel-padding [(2rem,)] Padding for the tabpanel
40
41
  /// @prop {Dimension} indicator-size [0.25em] The size of the tab's active border/indicator
41
42
  /// @prop {Color} indicator-color [currentColor] The color of the indicator
43
+ /// @prop {Color} indicator-transition-duration [200ms] The transition duration for indicator
44
+ /// @prop {Color} indicator-scale-start [0] The starting scale for the indicator (set to 1 to disable expanding on click)
42
45
  /// @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.
43
46
  /// @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.
44
47
  /// @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.
@@ -55,14 +58,17 @@ $-fallbacks: (
55
58
  /// @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
56
59
 
57
60
  $config: (
58
- "margin" : (2rem, 0),
61
+ "margin" : (2rem 0),
59
62
  "print-margin" : 1.5em,
60
63
  "tablist-divider" : true,
61
64
  "tablist-divider-width" : 1px,
62
65
  "indicator-size" : 3px,
63
66
  "indicator-color" : currentColor,
67
+ "indicator-transition-duration" : 200ms,
68
+ "indicator-transition-timing" : ease-out,
69
+ "indicator-scale-start" : 0,
64
70
  "tab-color" : "type-tertiary",
65
- "tab-color-hover" : "link-hover",
71
+ "tab-color-hover" : "selected",
66
72
  "tab-color-selected" : "selected",
67
73
  "tab-background-color-selected" : null,
68
74
  "tab-font-weight" : true,
@@ -118,6 +124,7 @@ $config: (
118
124
  overflow-x: auto;
119
125
  border-bottom: get("tablist-divider");
120
126
  border-bottom-width: get("tablist-divider-width");
127
+ @include layout.remove-scrollbar();
121
128
  }
122
129
  [role="tab"] {
123
130
  display: block;
@@ -140,17 +147,28 @@ $config: (
140
147
  left: 0;
141
148
  right: 0;
142
149
  height: get("indicator-size");
150
+ transition-property: opacity, background-color, transform;
151
+ transition-duration: get("indicator-transition-duration");
152
+ transition-timing-function: get("indicator-transition-timing");
153
+ transform: scaleX(get("indicator-scale-start"));
154
+ transform-origin: center;
143
155
  }
144
156
  &:hover {
145
157
  color: color.get(get("tab-color-hover"));
146
158
  }
159
+ // Add focus so as user clicks item it starts the active state styling
160
+ &:focus,
147
161
  &[aria-selected="true"] {
148
- color: color.get(get("tab-color-selected"));
149
- background-color: color.get(get("tab-background-color-selected"));
162
+ outline: none; // We are providing focus styling
150
163
  &::after {
151
164
  opacity: 1;
165
+ transform: scaleX(1);
152
166
  }
153
167
  }
168
+ &[aria-selected="true"] {
169
+ color: color.get(get("tab-color-selected"));
170
+ background-color: color.get(get("tab-background-color-selected"));
171
+ }
154
172
  }
155
173
  [role="tabpanel"] {
156
174
  position: relative;