@ulu/frontend 0.1.0-beta.3 → 0.1.0-beta.30
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.
- package/CHANGELOG.md +205 -1
- package/dist/ulu-frontend.min.css +1 -1
- package/dist/ulu-frontend.min.js +19 -18
- package/docs-dev/assets/main.js +832 -421
- package/docs-dev/assets/placeholder/icon-calendar.svg +1 -0
- package/docs-dev/assets/placeholder/icon-check.svg +1 -0
- package/docs-dev/assets/style.css +629 -233
- package/docs-dev/changelog/index.html +5660 -0
- package/docs-dev/changelog/updates-and-changes/index.html +5109 -0
- package/docs-dev/demos/accordion/index.html +758 -295
- package/docs-dev/demos/basic-hero/index.html +111 -0
- package/docs-dev/demos/button/index.html +758 -295
- package/docs-dev/demos/button-verbose/index.html +5118 -0
- package/docs-dev/demos/callout/index.html +783 -307
- package/docs-dev/demos/captioned-figure/index.html +758 -295
- package/docs-dev/demos/card/index.html +819 -719
- package/docs-dev/demos/card-grid/index.html +5241 -0
- package/docs-dev/demos/card-new/index.html +5088 -0
- package/docs-dev/demos/card-old/index.html +5223 -0
- package/docs-dev/demos/card.1/index.html +5223 -0
- package/docs-dev/demos/card.TRASH/index.html +5541 -0
- package/docs-dev/demos/css-icons/index.html +758 -295
- package/docs-dev/demos/data-grid/index.html +866 -483
- package/docs-dev/demos/data-table/index.html +783 -320
- package/docs-dev/demos/details-group/index.html +5114 -0
- package/docs-dev/demos/file-save/index.html +758 -295
- package/docs-dev/demos/flipcard/index.html +758 -295
- package/docs-dev/demos/form-theme/index.html +776 -326
- package/docs-dev/demos/hero/index.html +12 -4
- package/docs-dev/demos/image-grid/index.html +12 -4
- package/docs-dev/demos/index.html +758 -295
- package/docs-dev/demos/list-inline/index.html +5100 -0
- package/docs-dev/demos/list-inline.1/index.html +4727 -0
- package/docs-dev/demos/list-lines/index.html +5090 -0
- package/docs-dev/demos/menu-stack/index.html +777 -314
- package/docs-dev/demos/modals/index.html +758 -295
- package/docs-dev/demos/nav-strip/index.html +778 -351
- package/docs-dev/demos/overlay-section/index.html +758 -295
- package/docs-dev/demos/popovers/index.html +860 -299
- package/docs-dev/demos/print/index.html +758 -295
- package/docs-dev/demos/pull-quote/index.html +758 -295
- package/docs-dev/demos/rule/index.html +758 -295
- package/docs-dev/demos/scroll-slider/index.html +72 -106
- package/docs-dev/demos/scrollpoints/index.html +758 -295
- package/docs-dev/demos/slider/index.html +12 -4
- package/docs-dev/demos/spoke-spinner/index.html +758 -295
- package/docs-dev/demos/sticky-list/index.html +5103 -0
- package/docs-dev/demos/tabs/index.html +758 -295
- package/docs-dev/demos/tag/index.html +758 -295
- package/docs-dev/demos/theme-toggle/index.html +5159 -0
- package/docs-dev/demos/tile-grid-overlay/index.html +12 -4
- package/docs-dev/demos/tiles/index.html +758 -295
- package/docs-dev/demos/tooltip/index.html +758 -295
- package/docs-dev/guide/building-stylesheet/index.html +758 -295
- package/docs-dev/guide/developing-ulu-scss-module/index.html +758 -295
- package/docs-dev/guide/index.html +758 -295
- package/docs-dev/guide/updates-and-changes/index.html +5033 -0
- package/docs-dev/index.html +758 -295
- package/docs-dev/javascript/events/index.html +755 -294
- package/docs-dev/javascript/index.html +758 -295
- package/docs-dev/javascript/settings/index.html +5214 -0
- package/docs-dev/javascript/ui-breakpoints/index.html +755 -294
- package/docs-dev/javascript/ui-collapsible/index.html +755 -294
- package/docs-dev/javascript/ui-details-group/index.html +5214 -0
- package/docs-dev/javascript/ui-dialog/index.html +755 -294
- package/docs-dev/javascript/ui-flipcard/index.html +755 -294
- package/docs-dev/javascript/ui-grid/index.html +755 -294
- package/docs-dev/javascript/ui-modal-builder/index.html +755 -294
- package/docs-dev/javascript/ui-overflow-scroller/index.html +755 -294
- package/docs-dev/javascript/ui-overflow-scroller-pager/index.html +755 -294
- package/docs-dev/javascript/ui-page/index.html +755 -294
- package/docs-dev/javascript/ui-popover/index.html +755 -294
- package/docs-dev/javascript/ui-print/index.html +755 -294
- package/docs-dev/javascript/ui-print-details/index.html +755 -294
- package/docs-dev/javascript/ui-programmatic-modal/index.html +755 -294
- package/docs-dev/javascript/ui-proxy-click/index.html +755 -294
- package/docs-dev/javascript/ui-resizer/index.html +755 -294
- package/docs-dev/javascript/ui-scroll-slider/index.html +755 -294
- package/docs-dev/javascript/ui-scrollpoint/index.html +755 -294
- package/docs-dev/javascript/ui-slider/index.html +755 -294
- package/docs-dev/javascript/ui-tabs/index.html +755 -294
- package/docs-dev/javascript/ui-theme-toggle/index.html +5298 -0
- package/docs-dev/javascript/ui-tooltip/index.html +755 -294
- package/docs-dev/javascript/utils-class-logger/index.html +755 -294
- package/docs-dev/javascript/utils-dom/index.html +819 -298
- package/docs-dev/javascript/utils-file-save/index.html +755 -294
- package/docs-dev/javascript/utils-floating-ui/index.html +755 -294
- package/docs-dev/javascript/utils-id/index.html +755 -294
- package/docs-dev/javascript/utils-pause-youtube-video/index.html +755 -294
- package/docs-dev/sass/base/color/index.html +755 -294
- package/docs-dev/sass/base/elements/index.html +755 -294
- package/docs-dev/sass/base/index/index.html +755 -294
- package/docs-dev/sass/base/index.html +758 -295
- package/docs-dev/sass/base/keyframes/index.html +755 -294
- package/docs-dev/sass/base/layout/index.html +755 -294
- package/docs-dev/sass/base/normalize/index.html +755 -294
- package/docs-dev/sass/base/print/index.html +755 -294
- package/docs-dev/sass/base/root/index.html +755 -294
- package/docs-dev/sass/base/typography/index.html +755 -294
- package/docs-dev/sass/components/accordion/index.html +761 -300
- package/docs-dev/sass/components/adaptive-spacing/index.html +755 -294
- package/docs-dev/sass/components/badge/index.html +763 -302
- package/docs-dev/sass/components/basic-hero/index.html +5265 -0
- package/docs-dev/sass/components/button/index.html +755 -294
- package/docs-dev/sass/components/button-verbose/index.html +813 -303
- package/docs-dev/sass/components/callout/index.html +780 -355
- package/docs-dev/sass/components/captioned-figure/index.html +878 -302
- package/docs-dev/sass/components/card/index.html +817 -313
- package/docs-dev/sass/components/card-grid/index.html +755 -294
- package/docs-dev/sass/components/css-icon/index.html +772 -304
- package/docs-dev/sass/components/data-grid/index.html +755 -294
- package/docs-dev/sass/components/data-table/index.html +951 -305
- package/docs-dev/sass/components/fill-context/index.html +755 -294
- package/docs-dev/sass/components/flipcard/index.html +791 -299
- package/docs-dev/sass/components/flipcard-grid/index.html +755 -294
- package/docs-dev/sass/components/form-theme/index.html +926 -363
- package/docs-dev/sass/components/hero/index.html +811 -302
- package/docs-dev/sass/components/horizontal-rule/index.html +755 -294
- package/docs-dev/sass/components/image-grid/index.html +755 -294
- package/docs-dev/sass/components/index/index.html +768 -304
- package/docs-dev/sass/components/index.html +758 -295
- package/docs-dev/sass/components/links/index.html +755 -294
- package/docs-dev/sass/components/list-inline/index.html +5279 -0
- package/docs-dev/sass/components/list-lines/index.html +787 -330
- package/docs-dev/sass/components/list-ordered/index.html +757 -296
- package/docs-dev/sass/components/list-unordered/index.html +755 -294
- package/docs-dev/sass/components/menu-stack/index.html +789 -315
- package/docs-dev/sass/components/modal/index.html +776 -308
- package/docs-dev/sass/components/nav-strip/index.html +767 -306
- package/docs-dev/sass/components/overlay-section/index.html +763 -302
- package/docs-dev/sass/components/pager/index.html +755 -294
- package/docs-dev/sass/components/placeholder-block/index.html +755 -294
- package/docs-dev/sass/components/popover/index.html +812 -315
- package/docs-dev/sass/components/pull-quote/index.html +767 -306
- package/docs-dev/sass/components/ratio-box/index.html +755 -294
- package/docs-dev/sass/components/rule/index.html +763 -302
- package/docs-dev/sass/components/scroll-slider/index.html +755 -294
- package/docs-dev/sass/components/skip-link/index.html +763 -302
- package/docs-dev/sass/components/slider/index.html +762 -301
- package/docs-dev/sass/components/spoke-spinner/index.html +755 -294
- package/docs-dev/sass/components/sticky-list/index.html +5483 -0
- package/docs-dev/sass/components/tabs/index.html +764 -303
- package/docs-dev/sass/components/tag/index.html +755 -294
- package/docs-dev/sass/components/tile-button/index.html +755 -294
- package/docs-dev/sass/components/tile-grid/index.html +755 -294
- package/docs-dev/sass/components/tile-grid-overlay/index.html +755 -294
- package/docs-dev/sass/components/vignette/index.html +769 -302
- package/docs-dev/sass/components/wysiwyg/index.html +755 -294
- package/docs-dev/sass/core/breakpoint/index.html +755 -294
- package/docs-dev/sass/core/button/index.html +755 -294
- package/docs-dev/sass/core/color/index.html +793 -325
- package/docs-dev/sass/core/cssvar/index.html +755 -294
- package/docs-dev/sass/core/element/index.html +755 -294
- package/docs-dev/sass/core/index.html +755 -294
- package/docs-dev/sass/core/layout/index.html +755 -294
- package/docs-dev/sass/core/path/index.html +755 -294
- package/docs-dev/sass/core/selector/index.html +755 -294
- package/docs-dev/sass/core/typography/index.html +755 -294
- package/docs-dev/sass/core/units/index.html +755 -294
- package/docs-dev/sass/core/utils/index.html +1481 -382
- package/docs-dev/sass/helpers/color/index.html +755 -294
- package/docs-dev/sass/helpers/display/index.html +755 -294
- package/docs-dev/sass/helpers/index/index.html +755 -294
- package/docs-dev/sass/helpers/index.html +758 -295
- package/docs-dev/sass/helpers/print/index.html +755 -294
- package/docs-dev/sass/helpers/typography/index.html +755 -294
- package/docs-dev/sass/helpers/units/index.html +755 -294
- package/docs-dev/sass/helpers/utilities/index.html +755 -294
- package/docs-dev/sass/index.html +758 -295
- package/js/index.js +1 -0
- package/js/settings.js +78 -0
- package/js/ui/details-group.js +121 -0
- package/js/ui/index.js +1 -0
- package/js/ui/modal-builder.js +3 -2
- package/js/ui/overflow-scroller.js +5 -4
- package/js/ui/popover.js +1 -0
- package/js/ui/programmatic-modal.js +9 -3
- package/js/ui/slider.js +7 -6
- package/js/ui/theme-toggle.js +330 -89
- package/js/utils/dom.js +43 -1
- package/js/utils/font-awesome.js +18 -0
- package/js/utils/index.js +2 -1
- package/package.json +9 -6
- package/scss/_color.scss +9 -2
- package/scss/_layout.scss +1 -4
- package/scss/_utils.scss +187 -11
- package/scss/components/README.todos +14 -0
- package/scss/components/_accordion.scss +17 -18
- package/scss/components/_badge.scss +3 -2
- package/scss/components/_basic-hero.scss +112 -0
- package/scss/components/_button-verbose.scss +66 -12
- package/scss/components/_callout.scss +43 -54
- package/scss/components/_captioned-figure.scss +23 -5
- package/scss/components/_card-grid.scss +1 -1
- package/scss/components/_card.scss +190 -70
- package/scss/components/_css-icon.scss +16 -11
- package/scss/components/_data-table.scss +41 -4
- package/scss/components/_flipcard.scss +20 -14
- package/scss/components/_form-theme.scss +135 -123
- package/scss/components/_hero.scss +9 -0
- package/scss/components/_index.scss +18 -0
- package/scss/components/_list-inline.scss +80 -0
- package/scss/components/_list-lines.scss +44 -33
- package/scss/components/_list-ordered.scss +0 -1
- package/scss/components/_menu-stack.scss +42 -26
- package/scss/components/_modal.scss +23 -19
- package/scss/components/_nav-strip.scss +25 -16
- package/scss/components/_overlay-section.scss +2 -1
- package/scss/components/_pager.scss +6 -6
- package/scss/components/_placeholder-block.scss +4 -4
- package/scss/components/_popover.scss +174 -73
- package/scss/components/_pull-quote.scss +12 -12
- package/scss/components/_rule.scss +0 -1
- package/scss/components/_scroll-slider.scss +1 -1
- package/scss/components/_skip-link.scss +2 -1
- package/scss/components/_slider.scss +17 -38
- package/scss/components/_sticky-list.scss +206 -0
- package/scss/components/_tabs.scss +5 -2
- package/scss/components/_tag.scss +1 -1
- package/scss/components/_vignette.scss +1 -0
- package/types/index.d.ts +1 -0
- package/types/settings.d.ts +38 -0
- package/types/settings.d.ts.map +1 -0
- package/types/ui/details-group.d.ts +43 -0
- package/types/ui/details-group.d.ts.map +1 -0
- package/types/ui/index.d.ts +1 -0
- package/types/ui/modal-builder.d.ts +2 -2
- package/types/ui/modal-builder.d.ts.map +1 -1
- package/types/ui/overflow-scroller.d.ts +2 -2
- package/types/ui/overflow-scroller.d.ts.map +1 -1
- package/types/ui/popover.d.ts.map +1 -1
- package/types/ui/programmatic-modal.d.ts.map +1 -1
- package/types/ui/slider.d.ts +2 -2
- package/types/ui/slider.d.ts.map +1 -1
- package/types/ui/tabs.d.ts.map +1 -1
- package/types/ui/theme-toggle.d.ts +58 -7
- package/types/ui/theme-toggle.d.ts.map +1 -1
- package/types/utils/dom.d.ts +19 -1
- package/types/utils/dom.d.ts.map +1 -1
- package/types/utils/font-awesome.d.ts +5 -0
- package/types/utils/font-awesome.d.ts.map +1 -0
- package/types/utils/index.d.ts +1 -0
|
@@ -7,99 +7,111 @@
|
|
|
7
7
|
@use "sass:meta";
|
|
8
8
|
@use "sass:math";
|
|
9
9
|
@use "sass:list";
|
|
10
|
+
|
|
10
11
|
@use "../selector";
|
|
11
12
|
@use "../utils";
|
|
12
13
|
@use "../color";
|
|
13
14
|
@use "../element";
|
|
14
15
|
@use "../typography";
|
|
15
16
|
|
|
17
|
+
// Used for function fallback
|
|
18
|
+
$-fallbacks: (
|
|
19
|
+
"description-line-height" : (
|
|
20
|
+
"function" : meta.get-function("get", false, "typography"),
|
|
21
|
+
"property" : "line-height-dense",
|
|
22
|
+
),
|
|
23
|
+
);
|
|
24
|
+
|
|
16
25
|
/// Module Settings
|
|
17
26
|
/// @type Map
|
|
18
|
-
/// @prop {} color [inherit]
|
|
19
|
-
/// @prop {} color-placeholder ["type-tertiary"]
|
|
20
|
-
/// @prop {} drupal [false]
|
|
21
|
-
/// @prop {} error-color ["
|
|
22
|
-
/// @prop {} error-highlight-color [rgb(251, 242, 242)]
|
|
23
|
-
/// @prop {} error-selector [".is-danger"]
|
|
24
|
-
/// @prop {} file-button-style [true]
|
|
25
|
-
/// @prop {} font-weight-label [bold]
|
|
26
|
-
/// @prop {} font-weight-legend [bold]
|
|
27
|
-
/// @prop {} font-weight-placeholder [normal]
|
|
28
|
-
/// @prop {} font-weight-input [null]
|
|
29
|
-
/// @prop {} font-weight-textarea [null]
|
|
30
|
-
/// @prop {} font-weight-select [null]
|
|
31
|
-
/// @prop {} input-border [element.get-rule-style()]
|
|
32
|
-
/// @prop {} input-border-radius [0]
|
|
33
|
-
/// @prop {} input-
|
|
34
|
-
/// @prop {} input-padding-
|
|
35
|
-
/// @prop {} input-
|
|
36
|
-
/// @prop {} input-
|
|
37
|
-
/// @prop {}
|
|
38
|
-
/// @prop {} item-
|
|
39
|
-
/// @prop {}
|
|
40
|
-
/// @prop {}
|
|
41
|
-
/// @prop {} text-input-margin-
|
|
42
|
-
/// @prop {}
|
|
43
|
-
/// @prop {} warning-color [
|
|
44
|
-
/// @prop {} warning-
|
|
45
|
-
/// @prop {}
|
|
46
|
-
/// @prop {} check-input-
|
|
47
|
-
/// @prop {} check-input-size [
|
|
48
|
-
/// @prop {} check-input-
|
|
49
|
-
/// @prop {} check-input-background-color [white]
|
|
50
|
-
/// @prop {} check-input-background-color-
|
|
51
|
-
/// @prop {} check-input-background-color-
|
|
52
|
-
/// @prop {} check-input-
|
|
53
|
-
/// @prop {} check-input-border [null]
|
|
54
|
-
/// @prop {} check-input-border-color-
|
|
55
|
-
/// @prop {} check-input-border-color-
|
|
56
|
-
/// @prop {} check-input-border-color-
|
|
57
|
-
/// @prop {} check-input-
|
|
58
|
-
/// @prop {} check-input-outline [null]
|
|
59
|
-
/// @prop {} check-input-outline-
|
|
60
|
-
/// @prop {} check-input-outline-
|
|
61
|
-
/// @prop {} check-input-
|
|
62
|
-
/// @prop {} check-input-touch-color-
|
|
63
|
-
/// @prop {} check-input-
|
|
64
|
-
/// @prop {} check-input-
|
|
65
|
-
/// @prop {} check-input-checkmark-
|
|
66
|
-
/// @prop {} check-input-checkmark-
|
|
67
|
-
/// @prop {} check-input-checkmark-
|
|
68
|
-
/// @prop {} check-input-
|
|
69
|
-
/// @prop {} check-input-mark-color [
|
|
70
|
-
/// @prop {} check-input-mark-color-
|
|
71
|
-
/// @prop {} check-input-mark-color-
|
|
72
|
-
/// @prop {} check-input-mark-color-
|
|
73
|
-
/// @prop {} check-input-
|
|
74
|
-
/// @prop {} check-input-
|
|
75
|
-
/// @prop {}
|
|
76
|
-
/// @prop {} description-
|
|
77
|
-
/// @prop {} description-
|
|
78
|
-
/// @prop {} description-
|
|
79
|
-
/// @prop {} fieldset-background [transparent]
|
|
80
|
-
/// @prop {} fieldset-border [none]
|
|
81
|
-
/// @prop {} fieldset-margin-bottom [1rem]
|
|
82
|
-
/// @prop {} fieldset-margin-top [1rem]
|
|
83
|
-
/// @prop {} fieldset-padding [0]
|
|
84
|
-
/// @prop {} fieldset-margin-compact [0]
|
|
85
|
-
/// @prop {} fieldset-border-
|
|
86
|
-
/// @prop {} fieldset-
|
|
87
|
-
/// @prop {} fieldset-legend-
|
|
88
|
-
/// @prop {}
|
|
89
|
-
/// @prop {}
|
|
90
|
-
/// @prop {} select-border [
|
|
91
|
-
/// @prop {} select-
|
|
92
|
-
/// @prop {} select-
|
|
93
|
-
/// @prop {} select-
|
|
94
|
-
/// @prop {} select-
|
|
95
|
-
/// @prop {} select-image
|
|
96
|
-
/// @prop {} select-image-
|
|
27
|
+
/// @prop {CssValue} color [inherit] Color of the text of the form.
|
|
28
|
+
/// @prop {CssValue} color-placeholder ["type-tertiary"] Color for the placeholder text.
|
|
29
|
+
/// @prop {Boolean} drupal [false] Toggle if using drupal to include drupal specific styling.
|
|
30
|
+
/// @prop {Color} error-color ["danger"] Type color for errors.
|
|
31
|
+
/// @prop {Color} error-highlight-color [rgb(251, 242, 242)] Outline color of error container.
|
|
32
|
+
/// @prop {String} error-selector [".is-danger"] Class for error styling.
|
|
33
|
+
/// @prop {} file-button-style [true] @joe-check should this have a fallback
|
|
34
|
+
/// @prop {CssValue} font-weight-label [bold] Font weight of the labels.
|
|
35
|
+
/// @prop {CssValue} font-weight-legend [bold] Font weight of the legend.
|
|
36
|
+
/// @prop {CssValue} font-weight-placeholder [normal] Font weight of placeholder text.
|
|
37
|
+
/// @prop {CssValue} font-weight-input [null] Font weight of input text.
|
|
38
|
+
/// @prop {CssValue} font-weight-textarea [null] Font weight of textarea text.
|
|
39
|
+
/// @prop {CssValue} font-weight-select [null] Font weight of select text.
|
|
40
|
+
/// @prop {CssValue} input-border [element.get-rule-style()] Border of the input.
|
|
41
|
+
/// @prop {Dimension} input-border-radius [0] Border radius of the input.
|
|
42
|
+
/// @prop {Dimension} input-padding-x [0.5em] Horizontal padding of the input.
|
|
43
|
+
/// @prop {Dimension} input-padding-y [0.25em] Vertical padding of the input.
|
|
44
|
+
/// @prop {Dimension} input-min-width [10em] Min width of the input.
|
|
45
|
+
/// @prop {Color} input-background-color [white] Background color of the input.
|
|
46
|
+
/// @prop {Dimension} item-border-radius [null] Border radius for __item.
|
|
47
|
+
/// @prop {Dimension} item-highlight-width [6px] Width of the item box highlight.
|
|
48
|
+
/// @prop {Color} required-color ["danger"] Color for required text.
|
|
49
|
+
/// @prop {Dimension} text-input-margin-bottom [0.5em] Bottom margin for the label.
|
|
50
|
+
/// @prop {Dimension} text-input-margin-top [1em] Top margin for the label.
|
|
51
|
+
/// @prop {Color} warning-color ["warning"] The warning text color.
|
|
52
|
+
/// @prop {Color} warning-highlight-color [rgb(255, 249, 237)] Outline color of the warning.
|
|
53
|
+
/// @prop {String} warning-selector [".is-warning"] Selector for adding warning styles.
|
|
54
|
+
/// @prop {Color} check-input-color [currentColor] @joe-check unused
|
|
55
|
+
/// @prop {Dimension} check-input-size [1.15em] Size of input box.
|
|
56
|
+
/// @prop {Dimension} check-input-touch-size [2em] Touchable size of the input box.
|
|
57
|
+
/// @prop {Color} check-input-background-color [white] Background color for the check input.
|
|
58
|
+
/// @prop {Color} check-input-background-color-checked [white] Background color for the check input when checked.
|
|
59
|
+
/// @prop {Color} check-input-background-color-hover [white] Background color for the check input when hovered or focused.
|
|
60
|
+
/// @prop {Color} check-input-background-color-indeterminate [white] Background color for the indeterminate check input.
|
|
61
|
+
/// @prop {} check-input-border [null] @joe-check check how this is called with a fallback in the styles mixin
|
|
62
|
+
/// @prop {Color} check-input-border-color-hover [null] Check input border color.
|
|
63
|
+
/// @prop {Color} check-input-border-color-checked [null] Check input border color when checked.
|
|
64
|
+
/// @prop {Color} check-input-border-color-indeterminate [null] Indeterminate check input border color.
|
|
65
|
+
/// @prop {Color} check-input-border-color-focus [null] Check input border color when hovered or focused.
|
|
66
|
+
/// @prop {CssValue} check-input-outline [null] Check input outline.
|
|
67
|
+
/// @prop {CssValue} check-input-outline-hover [null]
|
|
68
|
+
/// @prop {CssValue} check-input-outline-checked [null]
|
|
69
|
+
/// @prop {CssValue} check-input-outline-focus [1px solid white]
|
|
70
|
+
/// @prop {Color} check-input-touch-color-hover [#e8e8e8]
|
|
71
|
+
/// @prop {Color} check-input-touch-color-focus [null]
|
|
72
|
+
/// @prop {Dimension} check-input-radio-size [0.3em]
|
|
73
|
+
/// @prop {Dimension} check-input-checkmark-width [0.38em]
|
|
74
|
+
/// @prop {Dimension} check-input-checkmark-height [0.68em]
|
|
75
|
+
/// @prop {Dimension} check-input-checkmark-offset-y [-0.2em]
|
|
76
|
+
/// @prop {Dimension} check-input-checkmark-stroke-size [0.18em]
|
|
77
|
+
/// @prop {Color} check-input-mark-color [currentColor]
|
|
78
|
+
/// @prop {Color} check-input-mark-color-hover [null]
|
|
79
|
+
/// @prop {Color} check-input-mark-color-focus [null]
|
|
80
|
+
/// @prop {Color} check-input-mark-color-checked [null]
|
|
81
|
+
/// @prop {Color} check-input-mark-color-indeterminate [null]
|
|
82
|
+
/// @prop {Number} check-input-disabled-opacity [0.6]
|
|
83
|
+
/// @prop {Dimension} check-input-border-radius [null]
|
|
84
|
+
/// @prop {Color} description-color [false]
|
|
85
|
+
/// @prop {CssValue} description-margin [(0.25em 0)]
|
|
86
|
+
/// @prop {Dimension} description-max-width [25em]
|
|
87
|
+
/// @prop {Number} description-line-height [true] Line height for description element, defaults to typograpahy line-height-dense
|
|
88
|
+
/// @prop {Color} fieldset-background [transparent]
|
|
89
|
+
/// @prop {CssValue} fieldset-border [none]
|
|
90
|
+
/// @prop {Dimension} fieldset-margin-bottom [1rem]
|
|
91
|
+
/// @prop {Dimension} fieldset-margin-top [1rem]
|
|
92
|
+
/// @prop {Dimension} fieldset-padding [0]
|
|
93
|
+
/// @prop {Dimension} fieldset-margin-compact [0]
|
|
94
|
+
/// @prop {Dimension} fieldset-border-bottom [0]
|
|
95
|
+
/// @prop {Dimension} fieldset-border-radius [0]
|
|
96
|
+
/// @prop {Color} fieldset-legend-color [inherit]
|
|
97
|
+
/// @prop {Dimension} fieldset-legend-border-bottom [null]
|
|
98
|
+
/// @prop {Dimension} fieldset-legend-padding-bottom [null]
|
|
99
|
+
/// @prop {Dimension} select-border-radius [4px]
|
|
100
|
+
/// @prop {Color} select-background-color [null]
|
|
101
|
+
/// @prop {CssValue} select-border [null]
|
|
102
|
+
/// @prop {Dimension} select-padding-x [null]
|
|
103
|
+
/// @prop {Dimension} select-padding-y [null]
|
|
104
|
+
/// @prop {CssValue} select-image [null]
|
|
105
|
+
/// @prop {Dimension} select-image-size [0.9em]
|
|
106
|
+
/// @prop {Dimension} select-image-offset [0.7em]
|
|
107
|
+
/// @prop {Dimension} select-image-margin [0.65em]
|
|
108
|
+
/// @prop {Dimension} inline-gap [1em] Gap between items that are inline like checkboxes
|
|
97
109
|
|
|
98
110
|
$config: (
|
|
99
111
|
"color" : inherit,
|
|
100
112
|
"color-placeholder" : "type-tertiary",
|
|
101
113
|
"drupal" : false,
|
|
102
|
-
"error-color" : "
|
|
114
|
+
"error-color" : "danger",
|
|
103
115
|
"error-highlight-color" : rgb(251, 242, 242),
|
|
104
116
|
"error-selector" : ".is-danger",
|
|
105
117
|
"file-button-style" : true,
|
|
@@ -111,14 +123,14 @@ $config: (
|
|
|
111
123
|
"font-weight-select" : null,
|
|
112
124
|
"input-border" : element.get-rule-style(),
|
|
113
125
|
"input-border-radius" : 0,
|
|
114
|
-
"
|
|
126
|
+
"item-margin-y" : 0.75em,
|
|
115
127
|
"input-padding-x" : 0.5em,
|
|
116
128
|
"input-padding-y" : 0.25em,
|
|
117
129
|
"input-min-width" : 10em,
|
|
118
130
|
"input-background-color" : white,
|
|
119
131
|
"item-border-radius" : null,
|
|
120
132
|
"item-highlight-width" : 6px,
|
|
121
|
-
"required-color" : "
|
|
133
|
+
"required-color" : "danger",
|
|
122
134
|
"text-input-margin-bottom" : 0.5em,
|
|
123
135
|
"text-input-margin-top" : 1em,
|
|
124
136
|
"warning-color" : "warning",
|
|
@@ -157,6 +169,7 @@ $config: (
|
|
|
157
169
|
"description-color" : false,
|
|
158
170
|
"description-margin" : (0.25em 0),
|
|
159
171
|
"description-max-width" : 25em,
|
|
172
|
+
"description-line-height" : true,
|
|
160
173
|
"fieldset-background" : transparent,
|
|
161
174
|
"fieldset-border" : none,
|
|
162
175
|
"fieldset-margin-bottom" : 1rem,
|
|
@@ -166,6 +179,8 @@ $config: (
|
|
|
166
179
|
"fieldset-border-radius" : 0,
|
|
167
180
|
"fieldset-legend-color" : inherit,
|
|
168
181
|
"fieldset-legend-border-bottom" : null,
|
|
182
|
+
"fieldset-legend-padding-bottom" : 0,
|
|
183
|
+
"fieldset-legend-margin-bottom" : 0.5em,
|
|
169
184
|
"select-border-radius" : 4px,
|
|
170
185
|
"select-background-color" : null,
|
|
171
186
|
"select-border" : null,
|
|
@@ -175,6 +190,7 @@ $config: (
|
|
|
175
190
|
"select-image-size" : 0.9em,
|
|
176
191
|
"select-image-offset" : 0.7em,
|
|
177
192
|
"select-image-margin" : 0.65em,
|
|
193
|
+
"inline-gap" : 1em
|
|
178
194
|
) !default;
|
|
179
195
|
|
|
180
196
|
/// Change modules $config
|
|
@@ -192,7 +208,8 @@ $config: (
|
|
|
192
208
|
/// @include ulu.component-form-theme-get("property");
|
|
193
209
|
|
|
194
210
|
@function get($name) {
|
|
195
|
-
|
|
211
|
+
$value: utils.require-map-get($config, $name, "component-form-theme [config]");
|
|
212
|
+
@return utils.function-fallback($name, $value, $-fallbacks);
|
|
196
213
|
}
|
|
197
214
|
|
|
198
215
|
@function -fallback($op1, $op2) {
|
|
@@ -258,7 +275,7 @@ $config: (
|
|
|
258
275
|
textarea,
|
|
259
276
|
label,
|
|
260
277
|
legend {
|
|
261
|
-
color: get("color");
|
|
278
|
+
color: color.get(get("color"));
|
|
262
279
|
font-size: 1em;
|
|
263
280
|
max-width: 100%;
|
|
264
281
|
line-height: typography.get("line-height-dense");
|
|
@@ -291,7 +308,7 @@ $config: (
|
|
|
291
308
|
[type="password"],
|
|
292
309
|
[type="file"] {
|
|
293
310
|
padding: get("input-padding-y") get("input-padding-x");
|
|
294
|
-
background-color: get("input-background-color");
|
|
311
|
+
background-color: color.get(get("input-background-color"));
|
|
295
312
|
border-radius: get("input-border-radius");
|
|
296
313
|
transition: border linear 0.2s;
|
|
297
314
|
border: get("input-border");
|
|
@@ -305,9 +322,8 @@ $config: (
|
|
|
305
322
|
}
|
|
306
323
|
select {
|
|
307
324
|
font-weight: get("font-weight-select");
|
|
308
|
-
border: get("select-border");
|
|
309
325
|
border-radius: get("select-border-radius");
|
|
310
|
-
background-color: get("select-background-color");
|
|
326
|
+
background-color: color.get(get("select-background-color"));
|
|
311
327
|
padding: -fallback("select-padding-y", "input-padding-y") -fallback("select-padding-x", "input-padding-x");
|
|
312
328
|
border: -fallback("select-border", "input-border");
|
|
313
329
|
@if get("select-image") {
|
|
@@ -365,39 +381,39 @@ $config: (
|
|
|
365
381
|
opacity: 0;
|
|
366
382
|
transform: rotate(45deg);
|
|
367
383
|
transition: opacity ease-out 150ms;
|
|
368
|
-
border: get("check-input-radio-size") solid get("check-input-mark-color");
|
|
384
|
+
border: get("check-input-radio-size") solid color.get(get("check-input-mark-color"));
|
|
369
385
|
border-radius: 50%;
|
|
370
386
|
}
|
|
371
387
|
&:focus {
|
|
372
|
-
background-color: get("check-input-touch-color-focus");
|
|
388
|
+
background-color: color.get(get("check-input-touch-color-focus"));
|
|
373
389
|
&:before {
|
|
374
|
-
border-color: get("check-input-border-color-focus");
|
|
390
|
+
border-color: color.get(get("check-input-border-color-focus"));
|
|
375
391
|
outline: get("check-input-outline-focus");
|
|
376
392
|
}
|
|
377
393
|
&:after {
|
|
378
|
-
border-color: get("check-input-mark-color-focus");
|
|
394
|
+
border-color: color.get(get("check-input-mark-color-focus"));
|
|
379
395
|
}
|
|
380
396
|
}
|
|
381
397
|
&:hover {
|
|
382
|
-
background-color: get("check-input-touch-color-hover");
|
|
398
|
+
background-color: color.get(get("check-input-touch-color-hover"));
|
|
383
399
|
&:before {
|
|
384
400
|
outline: get("check-input-outline-hover");
|
|
385
|
-
background-color: get("check-input-background-color-hover");
|
|
386
|
-
border-color: get("check-input-border-color-hover");
|
|
401
|
+
background-color: color.get(get("check-input-background-color-hover"));
|
|
402
|
+
border-color: color.get(get("check-input-border-color-hover"));
|
|
387
403
|
}
|
|
388
404
|
&:after {
|
|
389
|
-
border-color: get("check-input-mark-color-hover");
|
|
405
|
+
border-color: color.get(get("check-input-mark-color-hover"));
|
|
390
406
|
}
|
|
391
407
|
}
|
|
392
408
|
&:checked {
|
|
393
409
|
&:before {
|
|
394
|
-
background-color: get("check-input-background-color-checked");
|
|
395
|
-
border-color: get("check-input-border-color-checked");
|
|
410
|
+
background-color: color.get(get("check-input-background-color-checked"));
|
|
411
|
+
border-color: color.get(get("check-input-border-color-checked"));
|
|
396
412
|
outline: get("check-input-outline-checked");
|
|
397
413
|
}
|
|
398
414
|
&:after {
|
|
399
415
|
opacity: 1;
|
|
400
|
-
border-color: get("check-input-mark-color-checked");
|
|
416
|
+
border-color: color.get(get("check-input-mark-color-checked"));
|
|
401
417
|
}
|
|
402
418
|
}
|
|
403
419
|
|
|
@@ -428,15 +444,15 @@ $config: (
|
|
|
428
444
|
&:indeterminate,
|
|
429
445
|
&[aria-checked=mixed] {
|
|
430
446
|
&:before {
|
|
431
|
-
background-color: get("check-input-background-color-indeterminate");
|
|
432
|
-
border-color: get("check-input-border-color-indeterminate");
|
|
447
|
+
background-color: color.get(get("check-input-background-color-indeterminate"));
|
|
448
|
+
border-color: color.get(get("check-input-border-color-indeterminate"));
|
|
433
449
|
}
|
|
434
450
|
&:after {
|
|
435
451
|
border-right: none;
|
|
436
452
|
transform: translatey(50%);
|
|
437
453
|
opacity: 1;
|
|
438
454
|
height: get("check-input-checkmark-stroke-size");
|
|
439
|
-
border-color: get("check-input-mark-color-indeterminate");
|
|
455
|
+
border-color: color.get(get("check-input-mark-color-indeterminate"));
|
|
440
456
|
}
|
|
441
457
|
}
|
|
442
458
|
}
|
|
@@ -449,38 +465,32 @@ $config: (
|
|
|
449
465
|
margin-top: get("fieldset-margin-top");
|
|
450
466
|
margin-bottom: get("fieldset-margin-bottom");
|
|
451
467
|
border: get("fieldset-border");
|
|
452
|
-
background-color: get("fieldset-background");
|
|
468
|
+
background-color: color.get(get("fieldset-background"));
|
|
453
469
|
border-radius: get("fieldset-border-radius");
|
|
454
470
|
padding: get("fieldset-padding");
|
|
455
471
|
|
|
456
472
|
> legend {
|
|
457
473
|
font-weight: get("font-weight-legend");
|
|
458
474
|
display: block;
|
|
459
|
-
margin: 0 0
|
|
475
|
+
margin: 0 0 get("fieldset-legend-margin-bottom") 0;
|
|
460
476
|
border: 0;
|
|
461
|
-
padding: 0;
|
|
477
|
+
padding: 0 0 get("fieldset-legend-padding-bottom") 0;
|
|
462
478
|
width: 100%;
|
|
463
479
|
float: left;
|
|
464
|
-
|
|
465
|
-
|
|
466
|
-
margin-bottom: 1rem;
|
|
467
|
-
padding-bottom: 0.5em;
|
|
468
|
-
padding-top: 0.5em;
|
|
469
|
-
border-bottom: get("fieldset-legend-border-bottom");
|
|
470
|
-
color: get("fieldset-legend-color");
|
|
471
|
-
}
|
|
480
|
+
border-bottom: get("fieldset-legend-border-bottom");
|
|
481
|
+
color: color.get(get("fieldset-legend-color"));
|
|
472
482
|
& ~ * {
|
|
473
483
|
clear: left;
|
|
474
484
|
}
|
|
475
485
|
}
|
|
476
486
|
&#{ $selectError } {
|
|
477
487
|
> legend {
|
|
478
|
-
color: $errorColor;
|
|
488
|
+
color: color.get($errorColor);
|
|
479
489
|
}
|
|
480
490
|
}
|
|
481
491
|
&#{ $selectWarning } {
|
|
482
492
|
> legend {
|
|
483
|
-
color: $warningColor;
|
|
493
|
+
color: color.get($warningColor);
|
|
484
494
|
}
|
|
485
495
|
}
|
|
486
496
|
}
|
|
@@ -501,8 +511,9 @@ $config: (
|
|
|
501
511
|
margin: get("description-margin");
|
|
502
512
|
font-style: italic;
|
|
503
513
|
@include typography.size("small", null, true);
|
|
514
|
+
line-height: get("description-line-height");
|
|
504
515
|
max-width: get("description-max-width");
|
|
505
|
-
color: get("description-color");
|
|
516
|
+
color: color.get(get("description-color"));
|
|
506
517
|
}
|
|
507
518
|
|
|
508
519
|
/// Styles for form item that should have label as block and text input
|
|
@@ -547,11 +558,11 @@ $config: (
|
|
|
547
558
|
#{ $prefix }__item {
|
|
548
559
|
display: flex;
|
|
549
560
|
align-items: center;
|
|
550
|
-
margin-bottom: get("
|
|
561
|
+
margin-bottom: get("item-margin-y");
|
|
551
562
|
border-radius: get("item-border-radius");
|
|
552
563
|
flex-shrink: 0; // Cannot be smaller than content within
|
|
553
|
-
@include -form-item-state($selectError, $errorColor, get("error-highlight-color"));
|
|
554
|
-
@include -form-item-state($selectWarning, $warningColor, get("warning-highlight-color"));
|
|
564
|
+
@include -form-item-state($selectError, $errorColor, color.get(get("error-highlight-color")));
|
|
565
|
+
@include -form-item-state($selectWarning, $warningColor, color.get(get("warning-highlight-color")));
|
|
555
566
|
}
|
|
556
567
|
#{ $prefix }__item--align-top {
|
|
557
568
|
align-items: flex-start;
|
|
@@ -565,8 +576,9 @@ $config: (
|
|
|
565
576
|
#{ $prefix }__items-inline {
|
|
566
577
|
display: flex;
|
|
567
578
|
flex-wrap: wrap;
|
|
579
|
+
gap: get("inline-gap");
|
|
568
580
|
> #{ $prefix }__item {
|
|
569
|
-
margin
|
|
581
|
+
margin: 0;
|
|
570
582
|
}
|
|
571
583
|
}
|
|
572
584
|
#{ $prefix }__actions {
|
|
@@ -578,10 +590,10 @@ $config: (
|
|
|
578
590
|
}
|
|
579
591
|
}
|
|
580
592
|
#{ $prefix }__error {
|
|
581
|
-
color: $errorColor;
|
|
593
|
+
color: color.get($errorColor);
|
|
582
594
|
}
|
|
583
595
|
#{ $prefix }__warning {
|
|
584
|
-
color: $warningColor;
|
|
596
|
+
color: color.get($warningColor);
|
|
585
597
|
}
|
|
586
598
|
}
|
|
587
599
|
|
|
@@ -622,12 +634,12 @@ $config: (
|
|
|
622
634
|
// outline: get("item-outline-width") solid $highlightColor;
|
|
623
635
|
box-shadow: 0 0 0 get("item-highlight-width") $highlightColor;
|
|
624
636
|
label {
|
|
625
|
-
color: $color;
|
|
637
|
+
color: color.get($color);
|
|
626
638
|
}
|
|
627
639
|
select,
|
|
628
640
|
textarea,
|
|
629
641
|
input:not([type="checkbox"]):not([type="radio"]) {
|
|
630
|
-
border-color: $color;
|
|
642
|
+
border-color: color.get($color);
|
|
631
643
|
}
|
|
632
644
|
}
|
|
633
645
|
}
|
|
@@ -15,6 +15,15 @@
|
|
|
15
15
|
/// Module Settings
|
|
16
16
|
/// @type Map
|
|
17
17
|
/// @prop {Map} extra-split-ratios [wide 70/30] A map where the name is the modifier and the value is a list with two percentages (the first percentage will be correspond with the graphic or content depending on selector [ie. .hero--split-graphic-[name] would apply the first percentage to the graphic while hero--split-content-[name] would apply the first percentage to the content])
|
|
18
|
+
/// @prop {String} breakpoint ["medium"] At what breakpoint the hero goes to small screen styling.
|
|
19
|
+
/// @prop {Dimension} height [100vh] Height of the hero.
|
|
20
|
+
/// @prop {Dimension} height-compact [40vh] Height of the hero when using the "--compact" styling.
|
|
21
|
+
/// @prop {Dimension} graphic-height-stacked [60vh] Height of the graphic.
|
|
22
|
+
/// @prop {Dimension} content-max-width [40rem] Max width of the content.
|
|
23
|
+
/// @prop {Dimension} content-padding-top [3rem] Top padding of the content.
|
|
24
|
+
/// @prop {Dimension} content-padding-bottom [3rem] Bottom padding of the content.
|
|
25
|
+
/// @prop {CssValue} text-align [center] Text align of the content.
|
|
26
|
+
|
|
18
27
|
|
|
19
28
|
$config: (
|
|
20
29
|
"breakpoint" : "medium",
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
@forward "accordion" as accordion-*;
|
|
7
7
|
@forward "adaptive-spacing" as adaptive-spacing-*;
|
|
8
8
|
@forward "badge" as badge-*;
|
|
9
|
+
@forward "basic-hero" as basic-hero-*;
|
|
9
10
|
@forward "button" as button-*;
|
|
10
11
|
@forward "button-verbose" as button-verbose-*;
|
|
11
12
|
@forward "callout" as callout-*;
|
|
@@ -22,6 +23,7 @@
|
|
|
22
23
|
@forward "image-grid" as image-grid-*;
|
|
23
24
|
@forward "links" as links-*;
|
|
24
25
|
@forward "list-lines" as list-lines-*;
|
|
26
|
+
@forward "list-inline" as list-inline-*;
|
|
25
27
|
@forward "list-ordered" as list-ordered-*;
|
|
26
28
|
@forward "list-unordered" as list-unordered-*;
|
|
27
29
|
@forward "menu-stack" as menu-stack-*;
|
|
@@ -36,6 +38,7 @@
|
|
|
36
38
|
@forward "rule" as rule-*;
|
|
37
39
|
@forward "scroll-slider" as scroll-slider-*;
|
|
38
40
|
@forward "skip-link" as skip-link-*;
|
|
41
|
+
@forward "sticky-list" as sticky-list-*;
|
|
39
42
|
@forward "slider" as slider-*;
|
|
40
43
|
@forward "hero" as hero-*;
|
|
41
44
|
@forward "tabs" as tabs-*;
|
|
@@ -54,6 +57,7 @@
|
|
|
54
57
|
@use "adaptive-spacing";
|
|
55
58
|
@use "accordion";
|
|
56
59
|
@use "badge";
|
|
60
|
+
@use "basic-hero";
|
|
57
61
|
@use "button";
|
|
58
62
|
@use "button-verbose";
|
|
59
63
|
@use "callout";
|
|
@@ -69,6 +73,7 @@
|
|
|
69
73
|
@use "horizontal-rule";
|
|
70
74
|
@use "image-grid";
|
|
71
75
|
@use "list-lines";
|
|
76
|
+
@use "list-inline";
|
|
72
77
|
@use "list-ordered";
|
|
73
78
|
@use "list-unordered";
|
|
74
79
|
@use "links";
|
|
@@ -84,6 +89,7 @@
|
|
|
84
89
|
@use "rule";
|
|
85
90
|
@use "scroll-slider";
|
|
86
91
|
@use "skip-link";
|
|
92
|
+
@use "sticky-list";
|
|
87
93
|
@use "slider";
|
|
88
94
|
@use "hero";
|
|
89
95
|
@use "tabs";
|
|
@@ -103,6 +109,7 @@ $all-includes: (
|
|
|
103
109
|
"accordion",
|
|
104
110
|
"adaptive-spacing",
|
|
105
111
|
"badge",
|
|
112
|
+
"basic-hero",
|
|
106
113
|
"button",
|
|
107
114
|
"button-verbose",
|
|
108
115
|
"callout",
|
|
@@ -119,6 +126,7 @@ $all-includes: (
|
|
|
119
126
|
"image-grid",
|
|
120
127
|
"links",
|
|
121
128
|
"list-lines",
|
|
129
|
+
"list-inline",
|
|
122
130
|
"list-ordered",
|
|
123
131
|
"list-unordered",
|
|
124
132
|
"menu-stack",
|
|
@@ -131,6 +139,7 @@ $all-includes: (
|
|
|
131
139
|
"rule",
|
|
132
140
|
"scroll-slider",
|
|
133
141
|
"skip-link",
|
|
142
|
+
"sticky-list",
|
|
134
143
|
"slider",
|
|
135
144
|
"hero",
|
|
136
145
|
"tabs",
|
|
@@ -196,6 +205,9 @@ $current-includes: $all-includes;
|
|
|
196
205
|
@if (list.index($includes, "badge")) {
|
|
197
206
|
@include badge.styles;
|
|
198
207
|
}
|
|
208
|
+
@if (list.index($includes, "basic-hero")) {
|
|
209
|
+
@include basic-hero.styles;
|
|
210
|
+
}
|
|
199
211
|
@if (list.index($includes, "tag")) {
|
|
200
212
|
@include tag.styles;
|
|
201
213
|
}
|
|
@@ -241,6 +253,9 @@ $current-includes: $all-includes;
|
|
|
241
253
|
@if (list.index($includes, "list-lines")) {
|
|
242
254
|
@include list-lines.styles;
|
|
243
255
|
}
|
|
256
|
+
@if (list.index($includes, "list-inline")) {
|
|
257
|
+
@include list-inline.styles;
|
|
258
|
+
}
|
|
244
259
|
@if (list.index($includes, "list-unordered")) {
|
|
245
260
|
@include list-unordered.styles;
|
|
246
261
|
}
|
|
@@ -283,6 +298,9 @@ $current-includes: $all-includes;
|
|
|
283
298
|
@if (list.index($includes, "skip-link")) {
|
|
284
299
|
@include skip-link.styles;
|
|
285
300
|
}
|
|
301
|
+
@if (list.index($includes, "sticky-list")) {
|
|
302
|
+
@include sticky-list.styles;
|
|
303
|
+
}
|
|
286
304
|
@if (list.index($includes, "slider")) {
|
|
287
305
|
@include slider.styles;
|
|
288
306
|
}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
////
|
|
2
|
+
/// @group list-inline
|
|
3
|
+
////
|
|
4
|
+
|
|
5
|
+
@use "sass:map";
|
|
6
|
+
|
|
7
|
+
@use "../element";
|
|
8
|
+
@use "../selector";
|
|
9
|
+
@use "../utils";
|
|
10
|
+
|
|
11
|
+
/// Module Config
|
|
12
|
+
/// @prop {String} rule-style ["light"] Name of element > rule style to use for divider/border
|
|
13
|
+
/// @prop {Dimension} margin-top [0] Top margin of list.
|
|
14
|
+
/// @prop {Dimension} margin-bottom [1em] Bottom margin of list.
|
|
15
|
+
/// @prop {Dimension} space-between [1em] Gap between item and dividers
|
|
16
|
+
/// @prop {Dimension} space-between-large [1em] Gap between item and dividers when using large-gap modifier
|
|
17
|
+
|
|
18
|
+
$config: (
|
|
19
|
+
"rule-style" : "light",
|
|
20
|
+
"margin-top": 0,
|
|
21
|
+
"margin-bottom": 1em,
|
|
22
|
+
"space-between" : 1em,
|
|
23
|
+
"space-between-large" : 2em
|
|
24
|
+
) !default;
|
|
25
|
+
|
|
26
|
+
/// Change modules $config
|
|
27
|
+
/// @param {Map} $changes Map of changes
|
|
28
|
+
/// @example scss
|
|
29
|
+
/// @include ulu.component-list-inline-set(( "property" : value ));
|
|
30
|
+
|
|
31
|
+
@mixin set($changes) {
|
|
32
|
+
$config: map.merge($config, $changes) !global;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
/// Get a config option
|
|
36
|
+
/// @param {Map} $name Name of property
|
|
37
|
+
/// @example scss
|
|
38
|
+
/// @include ulu.component-list-inline-get("property");
|
|
39
|
+
|
|
40
|
+
@function get($name) {
|
|
41
|
+
@return utils.require-map-get($config, $name, "list-inline [config]");
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/// Output component stylesheet
|
|
45
|
+
/// @example scss
|
|
46
|
+
/// @include ulu.component-list-inline-styles();
|
|
47
|
+
|
|
48
|
+
@mixin styles {
|
|
49
|
+
$prefix: selector.class("list-inline");
|
|
50
|
+
$border: element.get-rule-style(get("rule-style"));
|
|
51
|
+
|
|
52
|
+
ul#{ $prefix },
|
|
53
|
+
#{ $prefix } ul {
|
|
54
|
+
list-style: none;
|
|
55
|
+
display: inline-flex;
|
|
56
|
+
flex-wrap: wrap;
|
|
57
|
+
margin: get("margin-top") 0 get("margin-bottom") 0;
|
|
58
|
+
}
|
|
59
|
+
#{ $prefix } {
|
|
60
|
+
li {
|
|
61
|
+
// Not using flex gap because we would need to position
|
|
62
|
+
// pseudo for divider, so we would still need to use math
|
|
63
|
+
// So custom properties couldn't be used (no benefit)
|
|
64
|
+
padding-right: get("space-between");
|
|
65
|
+
margin-right: get("space-between");
|
|
66
|
+
border-right: $border;
|
|
67
|
+
&:last-child {
|
|
68
|
+
border-right: none;
|
|
69
|
+
padding-right: 0;
|
|
70
|
+
margin-right: 0;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
#{ $prefix }--large-gap {
|
|
75
|
+
li {
|
|
76
|
+
padding-right: get("space-between-large");
|
|
77
|
+
margin-right: get("space-between-large");
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
}
|