@ulu/frontend 0.1.0-beta.83 → 0.1.0-beta.85

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 (177) hide show
  1. package/CHANGELOG.md +25 -0
  2. package/dist/ulu-frontend.min.css +1 -1
  3. package/docs-dev/changelog/index.html +345 -3
  4. package/docs-dev/demos/accordion/index.html +270 -0
  5. package/docs-dev/demos/badge/index.html +270 -0
  6. package/docs-dev/demos/breakpoints-manager/index.html +270 -0
  7. package/docs-dev/demos/button/index.html +270 -0
  8. package/docs-dev/demos/button-group/index.html +5532 -0
  9. package/docs-dev/demos/button-verbose/index.html +270 -0
  10. package/docs-dev/demos/callout/index.html +270 -0
  11. package/docs-dev/demos/captioned-figure/index.html +270 -0
  12. package/docs-dev/demos/card/index.html +286 -16
  13. package/docs-dev/demos/card-grid/index.html +270 -0
  14. package/docs-dev/demos/counter-list/index.html +270 -0
  15. package/docs-dev/demos/css-icons/index.html +270 -0
  16. package/docs-dev/demos/data-grid/index.html +270 -0
  17. package/docs-dev/demos/data-table/index.html +370 -100
  18. package/docs-dev/demos/details-group/index.html +270 -0
  19. package/docs-dev/demos/file-save/index.html +270 -0
  20. package/docs-dev/demos/flipcard/index.html +270 -0
  21. package/docs-dev/demos/form-theme/index.html +270 -0
  22. package/docs-dev/demos/headline-label/index.html +5502 -0
  23. package/docs-dev/demos/index.html +270 -0
  24. package/docs-dev/demos/list-inline/index.html +270 -0
  25. package/docs-dev/demos/list-lines/index.html +270 -0
  26. package/docs-dev/demos/menu-stack/index.html +270 -0
  27. package/docs-dev/demos/modals/index.html +270 -0
  28. package/docs-dev/demos/nav-strip/index.html +270 -0
  29. package/docs-dev/demos/overlay-section/index.html +270 -0
  30. package/docs-dev/demos/panel/index.html +5562 -0
  31. package/docs-dev/demos/popovers/index.html +270 -0
  32. package/docs-dev/demos/print/index.html +270 -0
  33. package/docs-dev/demos/pull-quote/index.html +270 -0
  34. package/docs-dev/demos/rail/index.html +5598 -0
  35. package/docs-dev/demos/rule/index.html +270 -0
  36. package/docs-dev/demos/scrollpoints/index.html +270 -0
  37. package/docs-dev/demos/spoke-spinner/index.html +270 -0
  38. package/docs-dev/demos/sticky-list/index.html +270 -0
  39. package/docs-dev/demos/tabs/index.html +270 -0
  40. package/docs-dev/demos/tag/index.html +270 -0
  41. package/docs-dev/demos/theme-toggle/index.html +270 -0
  42. package/docs-dev/demos/tiles/index.html +270 -0
  43. package/docs-dev/demos/tooltip/index.html +270 -0
  44. package/docs-dev/guide/building-stylesheet/index.html +270 -0
  45. package/docs-dev/guide/developing-ulu-scss-module/index.html +270 -0
  46. package/docs-dev/guide/index.html +270 -0
  47. package/docs-dev/index.html +270 -0
  48. package/docs-dev/javascript/events/index.html +270 -0
  49. package/docs-dev/javascript/index.html +270 -0
  50. package/docs-dev/javascript/settings/index.html +270 -0
  51. package/docs-dev/javascript/ui-breakpoints/index.html +270 -0
  52. package/docs-dev/javascript/ui-collapsible/index.html +270 -0
  53. package/docs-dev/javascript/ui-details-group/index.html +270 -0
  54. package/docs-dev/javascript/ui-dialog/index.html +270 -0
  55. package/docs-dev/javascript/ui-flipcard/index.html +270 -0
  56. package/docs-dev/javascript/ui-grid/index.html +270 -0
  57. package/docs-dev/javascript/ui-modal-builder/index.html +270 -0
  58. package/docs-dev/javascript/ui-overflow-scroller/index.html +270 -0
  59. package/docs-dev/javascript/ui-overflow-scroller-pager/index.html +270 -0
  60. package/docs-dev/javascript/ui-page/index.html +270 -0
  61. package/docs-dev/javascript/ui-popover/index.html +270 -0
  62. package/docs-dev/javascript/ui-print/index.html +270 -0
  63. package/docs-dev/javascript/ui-print-details/index.html +270 -0
  64. package/docs-dev/javascript/ui-programmatic-modal/index.html +270 -0
  65. package/docs-dev/javascript/ui-proxy-click/index.html +270 -0
  66. package/docs-dev/javascript/ui-resizer/index.html +270 -0
  67. package/docs-dev/javascript/ui-scroll-slider/index.html +270 -0
  68. package/docs-dev/javascript/ui-scrollpoint/index.html +270 -0
  69. package/docs-dev/javascript/ui-slider/index.html +270 -0
  70. package/docs-dev/javascript/ui-tabs/index.html +270 -0
  71. package/docs-dev/javascript/ui-theme-toggle/index.html +270 -0
  72. package/docs-dev/javascript/ui-tooltip/index.html +270 -0
  73. package/docs-dev/javascript/utils-class-logger/index.html +270 -0
  74. package/docs-dev/javascript/utils-css/index.html +270 -0
  75. package/docs-dev/javascript/utils-dom/index.html +270 -0
  76. package/docs-dev/javascript/utils-file-save/index.html +270 -0
  77. package/docs-dev/javascript/utils-floating-ui/index.html +270 -0
  78. package/docs-dev/javascript/utils-id/index.html +270 -0
  79. package/docs-dev/javascript/utils-pause-youtube-video/index.html +270 -0
  80. package/docs-dev/javascript/utils-system/index.html +270 -0
  81. package/docs-dev/sass/base/color/index.html +270 -0
  82. package/docs-dev/sass/base/elements/index.html +270 -0
  83. package/docs-dev/sass/base/index/index.html +270 -0
  84. package/docs-dev/sass/base/index.html +270 -0
  85. package/docs-dev/sass/base/keyframes/index.html +270 -0
  86. package/docs-dev/sass/base/layout/index.html +270 -0
  87. package/docs-dev/sass/base/normalize/index.html +270 -0
  88. package/docs-dev/sass/base/print/index.html +270 -0
  89. package/docs-dev/sass/base/root/index.html +270 -0
  90. package/docs-dev/sass/base/typography/index.html +270 -0
  91. package/docs-dev/sass/components/accordion/index.html +270 -0
  92. package/docs-dev/sass/components/adaptive-spacing/index.html +270 -0
  93. package/docs-dev/sass/components/badge/index.html +270 -0
  94. package/docs-dev/sass/components/basic-hero/index.html +270 -0
  95. package/docs-dev/sass/components/button/index.html +270 -0
  96. package/docs-dev/sass/components/button-group/index.html +5683 -0
  97. package/docs-dev/sass/components/button-verbose/index.html +270 -0
  98. package/docs-dev/sass/components/callout/index.html +270 -0
  99. package/docs-dev/sass/components/captioned-figure/index.html +270 -0
  100. package/docs-dev/sass/components/card/index.html +270 -0
  101. package/docs-dev/sass/components/card-grid/index.html +270 -0
  102. package/docs-dev/sass/components/counter-list/index.html +270 -0
  103. package/docs-dev/sass/components/css-icon/index.html +270 -0
  104. package/docs-dev/sass/components/data-grid/index.html +284 -14
  105. package/docs-dev/sass/components/data-table/index.html +270 -0
  106. package/docs-dev/sass/components/fill-context/index.html +270 -0
  107. package/docs-dev/sass/components/flipcard/index.html +270 -0
  108. package/docs-dev/sass/components/flipcard-grid/index.html +270 -0
  109. package/docs-dev/sass/components/form-theme/index.html +270 -0
  110. package/docs-dev/sass/components/headline-label/index.html +5713 -0
  111. package/docs-dev/sass/components/hero/index.html +270 -0
  112. package/docs-dev/sass/components/horizontal-rule/index.html +270 -0
  113. package/docs-dev/sass/components/image-grid/index.html +270 -0
  114. package/docs-dev/sass/components/index/index.html +285 -10
  115. package/docs-dev/sass/components/index.html +270 -0
  116. package/docs-dev/sass/components/links/index.html +270 -0
  117. package/docs-dev/sass/components/list-inline/index.html +270 -0
  118. package/docs-dev/sass/components/list-lines/index.html +270 -0
  119. package/docs-dev/sass/components/list-ordered/index.html +270 -0
  120. package/docs-dev/sass/components/list-unordered/index.html +270 -0
  121. package/docs-dev/sass/components/menu-stack/index.html +270 -0
  122. package/docs-dev/sass/components/modal/index.html +270 -0
  123. package/docs-dev/sass/components/nav-strip/index.html +270 -0
  124. package/docs-dev/sass/components/overlay-section/index.html +270 -0
  125. package/docs-dev/sass/components/pager/index.html +270 -0
  126. package/docs-dev/sass/components/panel/index.html +5913 -0
  127. package/docs-dev/sass/components/placeholder-block/index.html +270 -0
  128. package/docs-dev/sass/components/popover/index.html +270 -0
  129. package/docs-dev/sass/components/pull-quote/index.html +270 -0
  130. package/docs-dev/sass/components/rail/index.html +5700 -0
  131. package/docs-dev/sass/components/ratio-box/index.html +270 -0
  132. package/docs-dev/sass/components/rule/index.html +270 -0
  133. package/docs-dev/sass/components/scroll-slider/index.html +270 -0
  134. package/docs-dev/sass/components/skip-link/index.html +270 -0
  135. package/docs-dev/sass/components/slider/index.html +270 -0
  136. package/docs-dev/sass/components/spoke-spinner/index.html +270 -0
  137. package/docs-dev/sass/components/sticky-list/index.html +270 -0
  138. package/docs-dev/sass/components/table-sticky/index.html +5677 -0
  139. package/docs-dev/sass/components/tabs/index.html +270 -0
  140. package/docs-dev/sass/components/tag/index.html +270 -0
  141. package/docs-dev/sass/components/tile-button/index.html +270 -0
  142. package/docs-dev/sass/components/tile-grid/index.html +270 -0
  143. package/docs-dev/sass/components/tile-grid-overlay/index.html +270 -0
  144. package/docs-dev/sass/components/vignette/index.html +270 -0
  145. package/docs-dev/sass/components/wysiwyg/index.html +270 -0
  146. package/docs-dev/sass/core/breakpoint/index.html +271 -1
  147. package/docs-dev/sass/core/button/index.html +302 -30
  148. package/docs-dev/sass/core/color/index.html +270 -0
  149. package/docs-dev/sass/core/cssvar/index.html +270 -0
  150. package/docs-dev/sass/core/element/index.html +376 -30
  151. package/docs-dev/sass/core/index.html +270 -0
  152. package/docs-dev/sass/core/layout/index.html +270 -0
  153. package/docs-dev/sass/core/path/index.html +270 -0
  154. package/docs-dev/sass/core/selector/index.html +270 -0
  155. package/docs-dev/sass/core/typography/index.html +270 -0
  156. package/docs-dev/sass/core/units/index.html +270 -0
  157. package/docs-dev/sass/core/utils/index.html +388 -76
  158. package/docs-dev/sass/helpers/color/index.html +270 -0
  159. package/docs-dev/sass/helpers/display/index.html +270 -0
  160. package/docs-dev/sass/helpers/index/index.html +270 -0
  161. package/docs-dev/sass/helpers/index.html +270 -0
  162. package/docs-dev/sass/helpers/typography/index.html +270 -0
  163. package/docs-dev/sass/helpers/units/index.html +270 -0
  164. package/docs-dev/sass/helpers/utilities/index.html +270 -0
  165. package/docs-dev/sass/index.html +270 -0
  166. package/package.json +1 -1
  167. package/scss/_breakpoint.scss +1 -1
  168. package/scss/_button.scss +7 -5
  169. package/scss/_element.scss +16 -0
  170. package/scss/_utils.scss +7 -0
  171. package/scss/components/_button-group.scss +90 -0
  172. package/scss/components/_data-grid.scss +0 -3
  173. package/scss/components/_headline-label.scss +83 -0
  174. package/scss/components/_index.scss +30 -0
  175. package/scss/components/_panel.scss +246 -0
  176. package/scss/components/_rail.scss +120 -0
  177. package/scss/components/_table-sticky.scss +185 -0
@@ -226,6 +226,21 @@
226
226
  </li>
227
227
 
228
228
 
229
+ <li class="nav-tree__item ">
230
+
231
+ <a class="nav-tree__link " href="/frontend/demos/button-group/">
232
+
233
+
234
+ <span class="nav-tree__text">
235
+ Button Group
236
+ </span>
237
+
238
+ </a>
239
+
240
+
241
+ </li>
242
+
243
+
229
244
  <li class="nav-tree__item ">
230
245
 
231
246
  <a class="nav-tree__link " href="/frontend/demos/button-verbose/">
@@ -421,6 +436,21 @@
421
436
  </li>
422
437
 
423
438
 
439
+ <li class="nav-tree__item ">
440
+
441
+ <a class="nav-tree__link " href="/frontend/demos/headline-label/">
442
+
443
+
444
+ <span class="nav-tree__text">
445
+ Headline Label
446
+ </span>
447
+
448
+ </a>
449
+
450
+
451
+ </li>
452
+
453
+
424
454
  <li class="nav-tree__item ">
425
455
 
426
456
  <a class="nav-tree__link " href="/frontend/demos/hero/">
@@ -541,6 +571,21 @@
541
571
  </li>
542
572
 
543
573
 
574
+ <li class="nav-tree__item ">
575
+
576
+ <a class="nav-tree__link " href="/frontend/demos/panel/">
577
+
578
+
579
+ <span class="nav-tree__text">
580
+ Panel
581
+ </span>
582
+
583
+ </a>
584
+
585
+
586
+ </li>
587
+
588
+
544
589
  <li class="nav-tree__item ">
545
590
 
546
591
  <a class="nav-tree__link " href="/frontend/demos/popovers/">
@@ -586,6 +631,21 @@
586
631
  </li>
587
632
 
588
633
 
634
+ <li class="nav-tree__item ">
635
+
636
+ <a class="nav-tree__link " href="/frontend/demos/rail/">
637
+
638
+
639
+ <span class="nav-tree__text">
640
+ Rail
641
+ </span>
642
+
643
+ </a>
644
+
645
+
646
+ </li>
647
+
648
+
589
649
  <li class="nav-tree__item ">
590
650
 
591
651
  <a class="nav-tree__link " href="/frontend/demos/rule/">
@@ -1290,6 +1350,21 @@
1290
1350
  </li>
1291
1351
 
1292
1352
 
1353
+ <li class="nav-tree__item ">
1354
+
1355
+ <a class="nav-tree__link " href="/frontend/sass/components/button-group/">
1356
+
1357
+
1358
+ <span class="nav-tree__text">
1359
+ Button-group
1360
+ </span>
1361
+
1362
+ </a>
1363
+
1364
+
1365
+ </li>
1366
+
1367
+
1293
1368
  <li class="nav-tree__item ">
1294
1369
 
1295
1370
  <a class="nav-tree__link " href="/frontend/sass/components/button-verbose/">
@@ -1485,6 +1560,21 @@
1485
1560
  </li>
1486
1561
 
1487
1562
 
1563
+ <li class="nav-tree__item ">
1564
+
1565
+ <a class="nav-tree__link " href="/frontend/sass/components/headline-label/">
1566
+
1567
+
1568
+ <span class="nav-tree__text">
1569
+ Headline-label
1570
+ </span>
1571
+
1572
+ </a>
1573
+
1574
+
1575
+ </li>
1576
+
1577
+
1488
1578
  <li class="nav-tree__item ">
1489
1579
 
1490
1580
  <a class="nav-tree__link " href="/frontend/sass/components/hero/">
@@ -1695,6 +1785,21 @@
1695
1785
  </li>
1696
1786
 
1697
1787
 
1788
+ <li class="nav-tree__item ">
1789
+
1790
+ <a class="nav-tree__link " href="/frontend/sass/components/panel/">
1791
+
1792
+
1793
+ <span class="nav-tree__text">
1794
+ Panel
1795
+ </span>
1796
+
1797
+ </a>
1798
+
1799
+
1800
+ </li>
1801
+
1802
+
1698
1803
  <li class="nav-tree__item ">
1699
1804
 
1700
1805
  <a class="nav-tree__link " href="/frontend/sass/components/placeholder-block/">
@@ -1740,6 +1845,21 @@
1740
1845
  </li>
1741
1846
 
1742
1847
 
1848
+ <li class="nav-tree__item ">
1849
+
1850
+ <a class="nav-tree__link " href="/frontend/sass/components/rail/">
1851
+
1852
+
1853
+ <span class="nav-tree__text">
1854
+ Rail
1855
+ </span>
1856
+
1857
+ </a>
1858
+
1859
+
1860
+ </li>
1861
+
1862
+
1743
1863
  <li class="nav-tree__item ">
1744
1864
 
1745
1865
  <a class="nav-tree__link " href="/frontend/sass/components/ratio-box/">
@@ -1845,6 +1965,21 @@
1845
1965
  </li>
1846
1966
 
1847
1967
 
1968
+ <li class="nav-tree__item ">
1969
+
1970
+ <a class="nav-tree__link " href="/frontend/sass/components/table-sticky/">
1971
+
1972
+
1973
+ <span class="nav-tree__text">
1974
+ Table-sticky
1975
+ </span>
1976
+
1977
+ </a>
1978
+
1979
+
1980
+ </li>
1981
+
1982
+
1848
1983
  <li class="nav-tree__item ">
1849
1984
 
1850
1985
  <a class="nav-tree__link " href="/frontend/sass/components/tabs/">
@@ -2787,6 +2922,21 @@
2787
2922
  </li>
2788
2923
 
2789
2924
 
2925
+ <li class="nav-tree__item ">
2926
+
2927
+ <a class="nav-tree__link " href="/frontend/demos/button-group/">
2928
+
2929
+
2930
+ <span class="nav-tree__text">
2931
+ Button Group
2932
+ </span>
2933
+
2934
+ </a>
2935
+
2936
+
2937
+ </li>
2938
+
2939
+
2790
2940
  <li class="nav-tree__item ">
2791
2941
 
2792
2942
  <a class="nav-tree__link " href="/frontend/demos/button-verbose/">
@@ -2982,6 +3132,21 @@
2982
3132
  </li>
2983
3133
 
2984
3134
 
3135
+ <li class="nav-tree__item ">
3136
+
3137
+ <a class="nav-tree__link " href="/frontend/demos/headline-label/">
3138
+
3139
+
3140
+ <span class="nav-tree__text">
3141
+ Headline Label
3142
+ </span>
3143
+
3144
+ </a>
3145
+
3146
+
3147
+ </li>
3148
+
3149
+
2985
3150
  <li class="nav-tree__item ">
2986
3151
 
2987
3152
  <a class="nav-tree__link " href="/frontend/demos/hero/">
@@ -3102,6 +3267,21 @@
3102
3267
  </li>
3103
3268
 
3104
3269
 
3270
+ <li class="nav-tree__item ">
3271
+
3272
+ <a class="nav-tree__link " href="/frontend/demos/panel/">
3273
+
3274
+
3275
+ <span class="nav-tree__text">
3276
+ Panel
3277
+ </span>
3278
+
3279
+ </a>
3280
+
3281
+
3282
+ </li>
3283
+
3284
+
3105
3285
  <li class="nav-tree__item ">
3106
3286
 
3107
3287
  <a class="nav-tree__link " href="/frontend/demos/popovers/">
@@ -3147,6 +3327,21 @@
3147
3327
  </li>
3148
3328
 
3149
3329
 
3330
+ <li class="nav-tree__item ">
3331
+
3332
+ <a class="nav-tree__link " href="/frontend/demos/rail/">
3333
+
3334
+
3335
+ <span class="nav-tree__text">
3336
+ Rail
3337
+ </span>
3338
+
3339
+ </a>
3340
+
3341
+
3342
+ </li>
3343
+
3344
+
3150
3345
  <li class="nav-tree__item ">
3151
3346
 
3152
3347
  <a class="nav-tree__link " href="/frontend/demos/rule/">
@@ -3851,6 +4046,21 @@
3851
4046
  </li>
3852
4047
 
3853
4048
 
4049
+ <li class="nav-tree__item ">
4050
+
4051
+ <a class="nav-tree__link " href="/frontend/sass/components/button-group/">
4052
+
4053
+
4054
+ <span class="nav-tree__text">
4055
+ Button-group
4056
+ </span>
4057
+
4058
+ </a>
4059
+
4060
+
4061
+ </li>
4062
+
4063
+
3854
4064
  <li class="nav-tree__item ">
3855
4065
 
3856
4066
  <a class="nav-tree__link " href="/frontend/sass/components/button-verbose/">
@@ -4046,6 +4256,21 @@
4046
4256
  </li>
4047
4257
 
4048
4258
 
4259
+ <li class="nav-tree__item ">
4260
+
4261
+ <a class="nav-tree__link " href="/frontend/sass/components/headline-label/">
4262
+
4263
+
4264
+ <span class="nav-tree__text">
4265
+ Headline-label
4266
+ </span>
4267
+
4268
+ </a>
4269
+
4270
+
4271
+ </li>
4272
+
4273
+
4049
4274
  <li class="nav-tree__item ">
4050
4275
 
4051
4276
  <a class="nav-tree__link " href="/frontend/sass/components/hero/">
@@ -4256,6 +4481,21 @@
4256
4481
  </li>
4257
4482
 
4258
4483
 
4484
+ <li class="nav-tree__item ">
4485
+
4486
+ <a class="nav-tree__link " href="/frontend/sass/components/panel/">
4487
+
4488
+
4489
+ <span class="nav-tree__text">
4490
+ Panel
4491
+ </span>
4492
+
4493
+ </a>
4494
+
4495
+
4496
+ </li>
4497
+
4498
+
4259
4499
  <li class="nav-tree__item ">
4260
4500
 
4261
4501
  <a class="nav-tree__link " href="/frontend/sass/components/placeholder-block/">
@@ -4301,6 +4541,21 @@
4301
4541
  </li>
4302
4542
 
4303
4543
 
4544
+ <li class="nav-tree__item ">
4545
+
4546
+ <a class="nav-tree__link " href="/frontend/sass/components/rail/">
4547
+
4548
+
4549
+ <span class="nav-tree__text">
4550
+ Rail
4551
+ </span>
4552
+
4553
+ </a>
4554
+
4555
+
4556
+ </li>
4557
+
4558
+
4304
4559
  <li class="nav-tree__item ">
4305
4560
 
4306
4561
  <a class="nav-tree__link " href="/frontend/sass/components/ratio-box/">
@@ -4406,6 +4661,21 @@
4406
4661
  </li>
4407
4662
 
4408
4663
 
4664
+ <li class="nav-tree__item ">
4665
+
4666
+ <a class="nav-tree__link " href="/frontend/sass/components/table-sticky/">
4667
+
4668
+
4669
+ <span class="nav-tree__text">
4670
+ Table-sticky
4671
+ </span>
4672
+
4673
+ </a>
4674
+
4675
+
4676
+ </li>
4677
+
4678
+
4409
4679
  <li class="nav-tree__item ">
4410
4680
 
4411
4681
  <a class="nav-tree__link " href="/frontend/sass/components/tabs/">
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ulu/frontend",
3
- "version": "0.1.0-beta.83",
3
+ "version": "0.1.0-beta.85",
4
4
  "description": "A versatile SCSS and JavaScript component library offering configurable, accessible components and flexible integration into any project, with SCSS modules suitable for modern JS frameworks.",
5
5
  "browser": "js/index.js",
6
6
  "main": "index.js",
@@ -224,7 +224,7 @@ $sizes: (
224
224
  /// @include breakpoints.fromEach($breakpoints) using ($props) {
225
225
  /// width: map.get($props, "width");
226
226
  /// }
227
- /// @param {String} $breakpoints A map with breakpoints direction will be pulled from each items "direction" property, if direction is missing and no breakpoint will wrap the code
227
+ /// @param {String} $breakpoints A map with breakpoints direction will be pulled from each items "direction" property, if direction is missing no breakpoint will wrap the code (as convention we call the default non-breakpoint direction "default")
228
228
  /// @param {String} $options A map with options to change the behavior
229
229
  /// @param {Boolean} $options.directionRequired Require direction throw error if missing direction
230
230
 
package/scss/_button.scss CHANGED
@@ -94,7 +94,7 @@ $config: (
94
94
 
95
95
  $sizes: (
96
96
  "small" : (
97
- "padding": (0.35em 1.5em),
97
+ "padding": (0.35em 1em),
98
98
  "min-width": 0,
99
99
  "icon-size": 2rem,
100
100
  "icon-font-size": 1rem
@@ -118,9 +118,9 @@ $styles: (
118
118
  "border-color" : transparent,
119
119
  "box-shadow" : none,
120
120
  "hover" : (
121
- "background-color" : "white",
122
- "color" : inherit,
123
- "border-color" : transparent,
121
+ "background-color" : "control-background",
122
+ "color" : "control",
123
+ "border-color" : "control-border",
124
124
  )
125
125
  ),
126
126
  "outline" : (
@@ -129,7 +129,9 @@ $styles: (
129
129
  "border-color" : "rule-light",
130
130
  "box-shadow" : none,
131
131
  "hover" : (
132
- "background-color" : "white",
132
+ "background-color" : "control-background",
133
+ "color" : "control",
134
+ "border-color" : "control-border",
133
135
  )
134
136
  ),
135
137
  ) !default;
@@ -124,11 +124,27 @@ $rule-margins: (
124
124
 
125
125
  /// Get a rule style
126
126
  /// @param {Map} $changes Map of changes
127
+ /// @return {CssValue} Rule style (css border value)
127
128
 
128
129
  @function get-rule-style($name: "default") {
129
130
  @return utils.require-map-get($rule-styles, $name, "element [rule style]");
130
131
  }
131
132
 
133
+ /// Get an optional rule style (which is a border)
134
+ /// - If the value is a string we return the rule style, else we return the value
135
+ /// - Used for things where configuration for say a border can be a user defined border or a string (they want an existing rule-style)
136
+ /// - Except when passing "none"/none this will return as-is (since it's a border property)
137
+ /// @param {*} $value The value to check
138
+ /// @return {*} Rule style if string, else value
139
+
140
+ @function get-optional-rule-style($value) {
141
+ @if (meta.type-of($value) == "string") {
142
+ @return get-rule-style($value);
143
+ } @else {
144
+ @return $value;
145
+ }
146
+ }
147
+
132
148
  /// Sets rule margin
133
149
  /// @param {Map} $changes Map of changes
134
150
 
package/scss/_utils.scss CHANGED
@@ -438,6 +438,13 @@ $config: (
438
438
  @return $value;
439
439
  }
440
440
 
441
+ /// If the value passed is equal to true use the default, else return the value
442
+ /// @param {*} $value The value to check
443
+ /// @param {*} $default The value to return when true
444
+ @function default($value, $default) {
445
+ @return if($value == true, $default, $value);
446
+ }
447
+
441
448
  /// Replaces all or one occurrence of a string within a string
442
449
  /// @param {String} $string String to operate on
443
450
  /// @param {String} $find String to find within string
@@ -0,0 +1,90 @@
1
+ ////
2
+ /// @group button-group
3
+ /// Groups a set of buttons
4
+ ////
5
+
6
+ @use "sass:map";
7
+ @use "sass:math";
8
+
9
+ @use "../selector";
10
+ @use "../utils";
11
+ @use "../color";
12
+ @use "../button";
13
+
14
+ /// Module Settings
15
+ /// @type Map
16
+ /// @prop {Dimension} gap [0.45em] Gap between buttons
17
+ /// @prop {Boolean} no-min-width [true] Buttons within the button group should have no min width
18
+
19
+ $config: (
20
+ "gap": 0.45em,
21
+ "no-min-width" : true
22
+ ) !default;
23
+
24
+ /// Change modules $config
25
+ /// @param {Map} $changes Map of changes
26
+ /// @example scss
27
+ /// @include ulu.component-button-group-set(( "property" : value ));
28
+
29
+ @mixin set($changes) {
30
+ $config: map.merge($config, $changes) !global;
31
+ }
32
+
33
+ /// Get a config option
34
+ /// @param {Map} $name Name of property
35
+ /// @example scss
36
+ /// @include ulu.component-button-group-get("property");
37
+
38
+ @function get($name) {
39
+ @return utils.require-map-get($config, $name, "button-group [config]");
40
+ }
41
+
42
+ /// Prints component styles
43
+ /// @demo button-group
44
+ /// @example scss
45
+ /// @include ulu.component-button-group-styles();
46
+
47
+ @mixin styles {
48
+ $prefix: selector.class("button-group");
49
+ $prefix-button: selector.class("button");
50
+
51
+ $button-radius: button.get("border-radius");
52
+
53
+ #{ $prefix } {
54
+ display: flex;
55
+ flex-wrap: wrap;
56
+ gap: get("gap");
57
+ #{ $prefix-button } {
58
+ margin: 0;
59
+ }
60
+ }
61
+ #{ $prefix }--joined {
62
+ flex-wrap: nowrap;
63
+ overflow-x: auto;
64
+ gap: 0;
65
+ // border-radius: button.get("border-radius");
66
+ #{ $prefix-button } {
67
+ position: relative; // To move to front when hover/active
68
+ border-radius: 0;
69
+ min-width: 0;
70
+ margin-left: -(button.get("border-width"));
71
+ &:first-child {
72
+ border-top-left-radius: $button-radius;
73
+ border-bottom-left-radius: $button-radius;
74
+ margin-left: 0;
75
+ }
76
+ &:last-child {
77
+ border-top-right-radius: $button-radius;
78
+ border-bottom-right-radius: $button-radius;
79
+ }
80
+ #{ button.get("active-selector") } {
81
+ z-index: 2;
82
+ }
83
+ &:hover,
84
+ &:focus {
85
+ z-index: 2;
86
+ }
87
+
88
+ }
89
+ }
90
+ }
@@ -3,9 +3,6 @@
3
3
  /// A page grid layout component that uses data attribute instead of class names, for brevity and readability
4
4
  ////
5
5
 
6
- /// Content Block
7
- /// @demo data-grid
8
-
9
6
  @use "sass:map";
10
7
  @use "sass:math";
11
8
 
@@ -0,0 +1,83 @@
1
+ ////
2
+ /// @group headline-label
3
+ ////
4
+
5
+ @use "sass:map";
6
+ @use "sass:meta";
7
+ @use "../utils";
8
+ @use "../color";
9
+ @use "../typography";
10
+
11
+ // Used for function fallback
12
+ $-fallbacks: (
13
+ "font-weight" : (
14
+ "function" : meta.get-function("get", false, "typography"),
15
+ "property" : "font-weight-bold"
16
+ ),
17
+ "font-family" : (
18
+ "function" : meta.get-function("get", false, "typography"),
19
+ "property" : "font-family-sans"
20
+ ),
21
+ "line-height" : (
22
+ "function" : meta.get-function("get", false, "typography"),
23
+ "property" : "line-height-dense"
24
+ )
25
+ );
26
+
27
+ /// Module Settings
28
+ /// @type Map
29
+ /// @prop {Color} color [ulu.cssvar-use("color-accent")] The text color of the headline label.
30
+ /// @prop {Dimension} margin-bottom [0.2em] The bottom margin of the headline label.
31
+ /// @prop {String} font-weight [typography.get("font-weight-bold")] The font weight of the headline label.
32
+ /// @prop {String} font-family [typography.get("font-family-sans")] The font family of the headline label.
33
+ /// @prop {Dimension|Number} line-height [typography.get("line-height-dense")] The font family of the headline label.
34
+ /// @prop {String} text-transform [null] The font family of the headline label.
35
+ /// @prop {String} type-size ["small"] The typography size preset to use for the headline label (e.g., "small", "medium", "large"), Only uses the font-size value for size
36
+
37
+ $config: (
38
+ "color": "accent",
39
+ "margin-bottom": 0.2em,
40
+ "font-weight": true,
41
+ "font-family": true,
42
+ "line-height": true,
43
+ "text-transform" : null,
44
+ "type-size": "small"
45
+ ) !default;
46
+
47
+ /// Change modules $config
48
+ /// @param {Map} $changes Map of changes
49
+ /// @example scss
50
+ /// @include ulu.component-headline-label-set(( "color" : red ));
51
+
52
+ @mixin set($changes) {
53
+ $config: map.merge($config, $changes) !global;
54
+ }
55
+
56
+ /// Get a config option
57
+ /// @param {String} $name Name of property
58
+ /// @example scss
59
+ /// @include ulu.component-headline-label-get("color");
60
+
61
+ @function get($name) {
62
+ $value: utils.require-map-get($config, $name, "headline-label [config]");
63
+ @return utils.function-fallback($name, $value, $-fallbacks);
64
+ }
65
+
66
+ /// Prints component styles
67
+ /// @example scss
68
+ /// @include ulu.component-headline-label-styles();
69
+
70
+ @mixin styles {
71
+ .headline-label {
72
+ display: block;
73
+ margin-bottom: get("margin-bottom");
74
+ font-weight: get("font-weight");
75
+ font-family: get("font-family");
76
+ line-height: get("line-height");
77
+ text-transform: get("text-transform");
78
+ color: color.get(get("color"));
79
+ @if (get("type-size")) {
80
+ @include typography.size(get("type-size"), $only-font-size: true);
81
+ }
82
+ }
83
+ }