@graupl/core 1.0.0-beta.10
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/dist/css/base/button.css +2 -0
- package/dist/css/base/button.css.map +1 -0
- package/dist/css/base/form.css +2 -0
- package/dist/css/base/form.css.map +1 -0
- package/dist/css/base/link.css +2 -0
- package/dist/css/base/link.css.map +1 -0
- package/dist/css/base/table.css +2 -0
- package/dist/css/base/table.css.map +1 -0
- package/dist/css/base.css +2 -0
- package/dist/css/base.css.map +1 -0
- package/dist/css/component/accordion.css +5 -0
- package/dist/css/component/accordion.css.map +1 -0
- package/dist/css/component/alert.css +2 -0
- package/dist/css/component/alert.css.map +1 -0
- package/dist/css/component/card.css +2 -0
- package/dist/css/component/card.css.map +1 -0
- package/dist/css/component/carousel.css +2 -0
- package/dist/css/component/carousel.css.map +1 -0
- package/dist/css/component/input-group.css +2 -0
- package/dist/css/component/input-group.css.map +1 -0
- package/dist/css/component/list.css +2 -0
- package/dist/css/component/list.css.map +1 -0
- package/dist/css/component/menu.css +2 -0
- package/dist/css/component/menu.css.map +1 -0
- package/dist/css/component/navigation.css +2 -0
- package/dist/css/component/navigation.css.map +1 -0
- package/dist/css/component.css +5 -0
- package/dist/css/component.css.map +1 -0
- package/dist/css/graupl.css +5 -0
- package/dist/css/graupl.css.map +1 -0
- package/dist/css/init.css +2 -0
- package/dist/css/init.css.map +1 -0
- package/dist/css/layout/columns.css +2 -0
- package/dist/css/layout/columns.css.map +1 -0
- package/dist/css/layout/container.css +2 -0
- package/dist/css/layout/container.css.map +1 -0
- package/dist/css/layout/flex-columns.css +2 -0
- package/dist/css/layout/flex-columns.css.map +1 -0
- package/dist/css/layout.css +5 -0
- package/dist/css/layout.css.map +1 -0
- package/dist/css/normalize.css +2 -0
- package/dist/css/normalize.css.map +1 -0
- package/dist/css/state/focus.css +2 -0
- package/dist/css/state/focus.css.map +1 -0
- package/dist/css/state.css +2 -0
- package/dist/css/state.css.map +1 -0
- package/dist/css/theme/color.css +2 -0
- package/dist/css/theme/color.css.map +1 -0
- package/dist/css/theme/typography.css +2 -0
- package/dist/css/theme/typography.css.map +1 -0
- package/dist/css/theme.css +2 -0
- package/dist/css/theme.css.map +1 -0
- package/dist/css/utilities/alignment.css +2 -0
- package/dist/css/utilities/alignment.css.map +1 -0
- package/dist/css/utilities/background.css +2 -0
- package/dist/css/utilities/background.css.map +1 -0
- package/dist/css/utilities/border.css +2 -0
- package/dist/css/utilities/border.css.map +1 -0
- package/dist/css/utilities/color.css +2 -0
- package/dist/css/utilities/color.css.map +1 -0
- package/dist/css/utilities/container.css +2 -0
- package/dist/css/utilities/container.css.map +1 -0
- package/dist/css/utilities/display.css +2 -0
- package/dist/css/utilities/display.css.map +1 -0
- package/dist/css/utilities/flex.css +2 -0
- package/dist/css/utilities/flex.css.map +1 -0
- package/dist/css/utilities/gradient.css +2 -0
- package/dist/css/utilities/gradient.css.map +1 -0
- package/dist/css/utilities/height.css +2 -0
- package/dist/css/utilities/height.css.map +1 -0
- package/dist/css/utilities/inset.css +2 -0
- package/dist/css/utilities/inset.css.map +1 -0
- package/dist/css/utilities/justification.css +2 -0
- package/dist/css/utilities/justification.css.map +1 -0
- package/dist/css/utilities/list.css +2 -0
- package/dist/css/utilities/list.css.map +1 -0
- package/dist/css/utilities/order.css +2 -0
- package/dist/css/utilities/order.css.map +1 -0
- package/dist/css/utilities/position.css +2 -0
- package/dist/css/utilities/position.css.map +1 -0
- package/dist/css/utilities/ratio.css +2 -0
- package/dist/css/utilities/ratio.css.map +1 -0
- package/dist/css/utilities/spacing.css +2 -0
- package/dist/css/utilities/spacing.css.map +1 -0
- package/dist/css/utilities/typography.css +2 -0
- package/dist/css/utilities/typography.css.map +1 -0
- package/dist/css/utilities/visibility.css +2 -0
- package/dist/css/utilities/visibility.css.map +1 -0
- package/dist/css/utilities/visually-hidden.css +2 -0
- package/dist/css/utilities/visually-hidden.css.map +1 -0
- package/dist/css/utilities/width.css +2 -0
- package/dist/css/utilities/width.css.map +1 -0
- package/dist/css/utilities/z-index.css +2 -0
- package/dist/css/utilities/z-index.css.map +1 -0
- package/dist/css/utilities.css +2 -0
- package/dist/css/utilities.css.map +1 -0
- package/package.json +58 -0
- package/scss/base/button.scss +3 -0
- package/scss/base/form.scss +3 -0
- package/scss/base/link.scss +3 -0
- package/scss/base/table.scss +3 -0
- package/scss/base.scss +3 -0
- package/scss/component/accordion.scss +3 -0
- package/scss/component/alert.scss +3 -0
- package/scss/component/card.scss +3 -0
- package/scss/component/carousel.scss +3 -0
- package/scss/component/input-group.scss +3 -0
- package/scss/component/list.scss +3 -0
- package/scss/component/menu.scss +3 -0
- package/scss/component/navigation.scss +3 -0
- package/scss/component.scss +3 -0
- package/scss/graupl.scss +3 -0
- package/scss/init.scss +3 -0
- package/scss/layout/columns.scss +3 -0
- package/scss/layout/container.scss +3 -0
- package/scss/layout/flex-columns.scss +3 -0
- package/scss/layout.scss +3 -0
- package/scss/normalize.scss +3 -0
- package/scss/state/focus.scss +3 -0
- package/scss/state.scss +3 -0
- package/scss/theme/color.scss +3 -0
- package/scss/theme/typography.scss +3 -0
- package/scss/theme.scss +3 -0
- package/scss/utilities/alignment.scss +3 -0
- package/scss/utilities/background.scss +3 -0
- package/scss/utilities/border.scss +3 -0
- package/scss/utilities/color.scss +3 -0
- package/scss/utilities/container.scss +3 -0
- package/scss/utilities/display.scss +3 -0
- package/scss/utilities/flex.scss +3 -0
- package/scss/utilities/gradient.scss +3 -0
- package/scss/utilities/height.scss +3 -0
- package/scss/utilities/inset.scss +3 -0
- package/scss/utilities/justification.scss +3 -0
- package/scss/utilities/list.scss +3 -0
- package/scss/utilities/order.scss +3 -0
- package/scss/utilities/position.scss +3 -0
- package/scss/utilities/ratio.scss +3 -0
- package/scss/utilities/spacing.scss +3 -0
- package/scss/utilities/typography.scss +3 -0
- package/scss/utilities/visibility.scss +3 -0
- package/scss/utilities/visually-hidden.scss +3 -0
- package/scss/utilities/width.scss +3 -0
- package/scss/utilities/z-index.scss +3 -0
- package/scss/utilities.scss +3 -0
- package/src/js/accordion/Accordion.js +1163 -0
- package/src/js/accordion/AccordionItem.js +496 -0
- package/src/js/accordion/index.js +10 -0
- package/src/js/alert/Alert.js +581 -0
- package/src/js/alert/index.js +11 -0
- package/src/js/carousel/Carousel.js +1427 -0
- package/src/js/carousel/index.js +10 -0
- package/src/js/domHelpers.js +37 -0
- package/src/js/eventHandlers.js +39 -0
- package/src/js/navigation/index.js +36 -0
- package/src/js/storage.js +106 -0
- package/src/js/validate.js +225 -0
- package/src/scss/_defaults.scss +184 -0
- package/src/scss/_index.scss +15 -0
- package/src/scss/_init.scss +6 -0
- package/src/scss/_normalize.scss +197 -0
- package/src/scss/_variables.scss +95 -0
- package/src/scss/base/_index.scss +6 -0
- package/src/scss/base/button/_defaults.scss +49 -0
- package/src/scss/base/button/_index.scss +206 -0
- package/src/scss/base/button/_mixins.scss +104 -0
- package/src/scss/base/button/_variables.scss +252 -0
- package/src/scss/base/form/_defaults.scss +24 -0
- package/src/scss/base/form/_index.scss +227 -0
- package/src/scss/base/form/_variables.scss +245 -0
- package/src/scss/base/link/_defaults.scss +35 -0
- package/src/scss/base/link/_index.scss +245 -0
- package/src/scss/base/link/_variables.scss +370 -0
- package/src/scss/base/table/_defaults.scss +68 -0
- package/src/scss/base/table/_index.scss +314 -0
- package/src/scss/base/table/_variables.scss +309 -0
- package/src/scss/component/_index.scss +10 -0
- package/src/scss/component/accordion/_defaults.scss +40 -0
- package/src/scss/component/accordion/_index.scss +198 -0
- package/src/scss/component/accordion/_variables.scss +356 -0
- package/src/scss/component/alert/_defaults.scss +49 -0
- package/src/scss/component/alert/_index.scss +119 -0
- package/src/scss/component/alert/_variables.scss +200 -0
- package/src/scss/component/card/_defaults.scss +32 -0
- package/src/scss/component/card/_index.scss +212 -0
- package/src/scss/component/card/_variables.scss +216 -0
- package/src/scss/component/carousel/_defaults.scss +43 -0
- package/src/scss/component/carousel/_index.scss +192 -0
- package/src/scss/component/carousel/_variables.scss +104 -0
- package/src/scss/component/input-group/_defaults.scss +30 -0
- package/src/scss/component/input-group/_index.scss +47 -0
- package/src/scss/component/input-group/_variables.scss +66 -0
- package/src/scss/component/list/_defaults.scss +15 -0
- package/src/scss/component/list/_index.scss +52 -0
- package/src/scss/component/list/_variables.scss +236 -0
- package/src/scss/component/menu/_defaults.scss +57 -0
- package/src/scss/component/menu/_index.scss +308 -0
- package/src/scss/component/menu/_variables.scss +642 -0
- package/src/scss/component/navigation/_defaults.scss +23 -0
- package/src/scss/component/navigation/_index.scss +190 -0
- package/src/scss/component/navigation/_variables.scss +290 -0
- package/src/scss/functions/_container.scss +38 -0
- package/src/scss/functions/_important.scss +36 -0
- package/src/scss/functions/_screen.scss +38 -0
- package/src/scss/functions/_theme.scss +39 -0
- package/src/scss/functions/_utility.scss +28 -0
- package/src/scss/layout/_index.scss +5 -0
- package/src/scss/layout/columns/_defaults.scss +24 -0
- package/src/scss/layout/columns/_index.scss +137 -0
- package/src/scss/layout/columns/_variables.scss +55 -0
- package/src/scss/layout/container/_defaults.scss +35 -0
- package/src/scss/layout/container/_index.scss +628 -0
- package/src/scss/layout/container/_variables.scss +114 -0
- package/src/scss/layout/flex-columns/_defaults.scss +28 -0
- package/src/scss/layout/flex-columns/_index.scss +184 -0
- package/src/scss/layout/flex-columns/_variables.scss +30 -0
- package/src/scss/mixins/_animation.scss +15 -0
- package/src/scss/mixins/_container.scss +80 -0
- package/src/scss/mixins/_layer.scss +16 -0
- package/src/scss/mixins/_screen.scss +77 -0
- package/src/scss/mixins/_state.scss +18 -0
- package/src/scss/mixins/_theme.scss +15 -0
- package/src/scss/mixins/_utility.scss +185 -0
- package/src/scss/mixins/_visually-hidden.scss +30 -0
- package/src/scss/state/_index.scss +3 -0
- package/src/scss/state/focus/_defaults.scss +9 -0
- package/src/scss/state/focus/_index.scss +42 -0
- package/src/scss/state/focus/_mixins.scss +13 -0
- package/src/scss/state/focus/_variables.scss +50 -0
- package/src/scss/theme/_index.scss +4 -0
- package/src/scss/theme/color/_defaults.scss +143 -0
- package/src/scss/theme/color/_index.scss +42 -0
- package/src/scss/theme/color/_variables.scss +133 -0
- package/src/scss/theme/typography/_defaults.scss +54 -0
- package/src/scss/theme/typography/_index.scss +120 -0
- package/src/scss/theme/typography/_variables.scss +248 -0
- package/src/scss/utilities/_index.scss +23 -0
- package/src/scss/utilities/_template/_defaults.scss +41 -0
- package/src/scss/utilities/_template/_index.scss +171 -0
- package/src/scss/utilities/_template/_variables.scss +6 -0
- package/src/scss/utilities/alignment/_defaults.scss +76 -0
- package/src/scss/utilities/alignment/_index.scss +336 -0
- package/src/scss/utilities/alignment/_variables.scss +6 -0
- package/src/scss/utilities/background/_defaults.scss +122 -0
- package/src/scss/utilities/background/_index.scss +634 -0
- package/src/scss/utilities/background/_variables.scss +6 -0
- package/src/scss/utilities/border/_defaults.scss +73 -0
- package/src/scss/utilities/border/_index.scss +558 -0
- package/src/scss/utilities/border/_variables.scss +6 -0
- package/src/scss/utilities/color/_defaults.scss +49 -0
- package/src/scss/utilities/color/_index.scss +469 -0
- package/src/scss/utilities/color/_variables.scss +6 -0
- package/src/scss/utilities/container/_defaults.scss +40 -0
- package/src/scss/utilities/container/_index.scss +174 -0
- package/src/scss/utilities/container/_variables.scss +6 -0
- package/src/scss/utilities/display/_defaults.scss +47 -0
- package/src/scss/utilities/display/_index.scss +184 -0
- package/src/scss/utilities/display/_variables.scss +6 -0
- package/src/scss/utilities/flex/_defaults.scss +99 -0
- package/src/scss/utilities/flex/_index.scss +486 -0
- package/src/scss/utilities/flex/_variables.scss +6 -0
- package/src/scss/utilities/gradient/_defaults.scss +70 -0
- package/src/scss/utilities/gradient/_index.scss +696 -0
- package/src/scss/utilities/gradient/_variables.scss +29 -0
- package/src/scss/utilities/height/_defaults.scss +54 -0
- package/src/scss/utilities/height/_index.scss +525 -0
- package/src/scss/utilities/height/_variables.scss +6 -0
- package/src/scss/utilities/inset/_defaults.scss +55 -0
- package/src/scss/utilities/inset/_index.scss +258 -0
- package/src/scss/utilities/inset/_variables.scss +6 -0
- package/src/scss/utilities/justification/_defaults.scss +73 -0
- package/src/scss/utilities/justification/_index.scss +333 -0
- package/src/scss/utilities/justification/_variables.scss +6 -0
- package/src/scss/utilities/list/_defaults.scss +53 -0
- package/src/scss/utilities/list/_index.scss +253 -0
- package/src/scss/utilities/list/_variables.scss +6 -0
- package/src/scss/utilities/order/_defaults.scss +36 -0
- package/src/scss/utilities/order/_index.scss +246 -0
- package/src/scss/utilities/order/_variables.scss +6 -0
- package/src/scss/utilities/position/_defaults.scss +41 -0
- package/src/scss/utilities/position/_index.scss +178 -0
- package/src/scss/utilities/position/_variables.scss +6 -0
- package/src/scss/utilities/ratio/_defaults.scss +42 -0
- package/src/scss/utilities/ratio/_index.scss +188 -0
- package/src/scss/utilities/ratio/_variables.scss +9 -0
- package/src/scss/utilities/spacing/_defaults.scss +64 -0
- package/src/scss/utilities/spacing/_index.scss +970 -0
- package/src/scss/utilities/spacing/_variables.scss +6 -0
- package/src/scss/utilities/typography/_defaults.scss +58 -0
- package/src/scss/utilities/typography/_index.scss +1089 -0
- package/src/scss/utilities/typography/_variables.scss +6 -0
- package/src/scss/utilities/visibility/_defaults.scss +39 -0
- package/src/scss/utilities/visibility/_index.scss +173 -0
- package/src/scss/utilities/visibility/_variables.scss +6 -0
- package/src/scss/utilities/visually-hidden/_defaults.scss +29 -0
- package/src/scss/utilities/visually-hidden/_index.scss +189 -0
- package/src/scss/utilities/visually-hidden/_variables.scss +6 -0
- package/src/scss/utilities/width/_defaults.scss +54 -0
- package/src/scss/utilities/width/_index.scss +525 -0
- package/src/scss/utilities/width/_variables.scss +6 -0
- package/src/scss/utilities/z-index/_defaults.scss +40 -0
- package/src/scss/utilities/z-index/_index.scss +173 -0
- package/src/scss/utilities/z-index/_variables.scss +6 -0
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
// @graupl/core button base variables.
|
|
2
|
+
//
|
|
3
|
+
// These values are to be used to directly style bases and provide a
|
|
4
|
+
// cleaner way to reference custom properties.
|
|
5
|
+
|
|
6
|
+
@use "defaults";
|
|
7
|
+
@use "../../variables" as root-variables;
|
|
8
|
+
@use "../../defaults" as root-defaults;
|
|
9
|
+
@use "../../theme/color/variables" as color;
|
|
10
|
+
@use "../../theme/typography/variables" as typography;
|
|
11
|
+
@use "../../functions/theme";
|
|
12
|
+
@use "sass:map";
|
|
13
|
+
|
|
14
|
+
// Button properties.
|
|
15
|
+
$button-min-width: var(
|
|
16
|
+
--#{root-defaults.$prefix}button-min-width,
|
|
17
|
+
#{root-defaults.$interactive-min-width}
|
|
18
|
+
);
|
|
19
|
+
$button-min-height: var(
|
|
20
|
+
--#{root-defaults.$prefix}button-min-height,
|
|
21
|
+
#{root-defaults.$interactive-min-height}
|
|
22
|
+
);
|
|
23
|
+
$button-padding-x: var(
|
|
24
|
+
--#{root-defaults.$prefix}button-padding-x,
|
|
25
|
+
#{map.get(root-variables.$spacers, 5)}
|
|
26
|
+
);
|
|
27
|
+
$button-padding-y: var(
|
|
28
|
+
--#{root-defaults.$prefix}button-padding-y,
|
|
29
|
+
#{map.get(root-variables.$spacers, 3)}
|
|
30
|
+
);
|
|
31
|
+
$button-padding: var(
|
|
32
|
+
--#{root-defaults.$prefix}button-padding,
|
|
33
|
+
#{$button-padding-y} #{$button-padding-x}
|
|
34
|
+
);
|
|
35
|
+
$button-font-size: var(
|
|
36
|
+
--#{root-defaults.$prefix}button-font-size,
|
|
37
|
+
#{map.get(typography.$font-sizes, base)}
|
|
38
|
+
);
|
|
39
|
+
$button-transition: var(
|
|
40
|
+
--#{root-defaults.$prefix}button-transition,
|
|
41
|
+
background #{map.get(root-variables.$transition-durations, fast)}
|
|
42
|
+
#{root-variables.$transition-timing-function},
|
|
43
|
+
color #{map.get(root-variables.$transition-durations, fast)}
|
|
44
|
+
#{root-variables.$transition-timing-function},
|
|
45
|
+
transform #{map.get(root-variables.$transition-durations, fast)}
|
|
46
|
+
#{root-variables.$transition-timing-function}
|
|
47
|
+
);
|
|
48
|
+
$button-transition-reduced-motion: var(
|
|
49
|
+
--#{root-defaults.$prefix}button-transition-reduced-motion,
|
|
50
|
+
background #{map.get(root-variables.$transition-durations, none)}
|
|
51
|
+
#{root-variables.$transition-timing-function},
|
|
52
|
+
color #{map.get(root-variables.$transition-durations, none)}
|
|
53
|
+
#{root-variables.$transition-timing-function}
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
// Transform properties.
|
|
57
|
+
$button-transform: var(
|
|
58
|
+
--#{root-defaults.$prefix}button-transform,
|
|
59
|
+
#{defaults.$button-initial-transform}
|
|
60
|
+
);
|
|
61
|
+
$button-visited-transform: var(
|
|
62
|
+
--#{root-defaults.$prefix}button-visited-transform,
|
|
63
|
+
#{$button-transform}
|
|
64
|
+
);
|
|
65
|
+
$button-focus-transform: var(
|
|
66
|
+
--#{root-defaults.$prefix}button-focus-transform,
|
|
67
|
+
#{$button-transform}
|
|
68
|
+
);
|
|
69
|
+
$button-hover-transform: var(
|
|
70
|
+
--#{root-defaults.$prefix}button-hover-transform,
|
|
71
|
+
#{$button-transform}
|
|
72
|
+
);
|
|
73
|
+
$button-active-transform: var(
|
|
74
|
+
--#{root-defaults.$prefix}button-active-transform,
|
|
75
|
+
#{defaults.$button-final-transform}
|
|
76
|
+
);
|
|
77
|
+
$button-disabled-transform: var(
|
|
78
|
+
--#{root-defaults.$prefix}button-disabled-transform,
|
|
79
|
+
#{defaults.$button-disabled-transform}
|
|
80
|
+
);
|
|
81
|
+
$button-transform-states: (
|
|
82
|
+
default: $button-transform,
|
|
83
|
+
visited: $button-visited-transform,
|
|
84
|
+
focus: $button-focus-transform,
|
|
85
|
+
hover: $button-hover-transform,
|
|
86
|
+
active: $button-active-transform,
|
|
87
|
+
disabled: $button-disabled-transform,
|
|
88
|
+
);
|
|
89
|
+
|
|
90
|
+
// Background properties.
|
|
91
|
+
$button-background: var(
|
|
92
|
+
--#{root-defaults.$prefix}button-background,
|
|
93
|
+
#{color.$background}
|
|
94
|
+
);
|
|
95
|
+
$button-visited-background: var(
|
|
96
|
+
--#{root-defaults.$prefix}button-visited-background,
|
|
97
|
+
#{$button-background}
|
|
98
|
+
);
|
|
99
|
+
$button-focus-background: var(
|
|
100
|
+
--#{root-defaults.$prefix}button-focus-background,
|
|
101
|
+
#{$button-background}
|
|
102
|
+
);
|
|
103
|
+
$button-hover-background: var(
|
|
104
|
+
--#{root-defaults.$prefix}button-hover-background,
|
|
105
|
+
#{color.$color}
|
|
106
|
+
);
|
|
107
|
+
$button-active-background: var(
|
|
108
|
+
--#{root-defaults.$prefix}button-active-background,
|
|
109
|
+
#{$button-hover-background}
|
|
110
|
+
);
|
|
111
|
+
$button-disabled-background: var(
|
|
112
|
+
--#{root-defaults.$prefix}button-disabled-background,
|
|
113
|
+
#{color.$background}
|
|
114
|
+
);
|
|
115
|
+
$button-background-states: (
|
|
116
|
+
default: $button-background,
|
|
117
|
+
visited: $button-visited-background,
|
|
118
|
+
focus: $button-focus-background,
|
|
119
|
+
hover: $button-hover-background,
|
|
120
|
+
active: $button-active-background,
|
|
121
|
+
disabled: $button-disabled-background,
|
|
122
|
+
);
|
|
123
|
+
|
|
124
|
+
// Text properties.
|
|
125
|
+
$button-color: var(--#{root-defaults.$prefix}button-color, #{color.$color});
|
|
126
|
+
$button-visited-color: var(
|
|
127
|
+
--#{root-defaults.$prefix}button-visited-color,
|
|
128
|
+
#{$button-color}
|
|
129
|
+
);
|
|
130
|
+
$button-focus-color: var(
|
|
131
|
+
--#{root-defaults.$prefix}button-focus-color,
|
|
132
|
+
#{$button-color}
|
|
133
|
+
);
|
|
134
|
+
$button-hover-color: var(
|
|
135
|
+
--#{root-defaults.$prefix}button-hover-color,
|
|
136
|
+
#{color.$background}
|
|
137
|
+
);
|
|
138
|
+
$button-active-color: var(
|
|
139
|
+
--#{root-defaults.$prefix}button-active-color,
|
|
140
|
+
#{$button-hover-color}
|
|
141
|
+
);
|
|
142
|
+
$button-disabled-color: var(
|
|
143
|
+
--#{root-defaults.$prefix}button-disabled-color,
|
|
144
|
+
#{theme.get(primary, 200)}
|
|
145
|
+
);
|
|
146
|
+
$button-color-states: (
|
|
147
|
+
default: $button-color,
|
|
148
|
+
visited: $button-visited-color,
|
|
149
|
+
focus: $button-focus-color,
|
|
150
|
+
hover: $button-hover-color,
|
|
151
|
+
active: $button-active-color,
|
|
152
|
+
disabled: $button-disabled-color,
|
|
153
|
+
);
|
|
154
|
+
|
|
155
|
+
// Border properties.
|
|
156
|
+
$button-border-top-width: var(
|
|
157
|
+
--#{root-defaults.$prefix}button-border-top-width,
|
|
158
|
+
#{root-variables.$border-top-width}
|
|
159
|
+
);
|
|
160
|
+
$button-border-right-width: var(
|
|
161
|
+
--#{root-defaults.$prefix}button-border-right-width,
|
|
162
|
+
#{root-variables.$border-right-width}
|
|
163
|
+
);
|
|
164
|
+
$button-border-bottom-width: var(
|
|
165
|
+
--#{root-defaults.$prefix}button-border-bottom-width,
|
|
166
|
+
#{root-variables.$border-bottom-width}
|
|
167
|
+
);
|
|
168
|
+
$button-border-left-width: var(
|
|
169
|
+
--#{root-defaults.$prefix}button-border-left-width,
|
|
170
|
+
#{root-variables.$border-left-width}
|
|
171
|
+
);
|
|
172
|
+
$button-border-width: var(
|
|
173
|
+
--#{root-defaults.$prefix}button-border-width,
|
|
174
|
+
#{$button-border-top-width} #{$button-border-right-width}
|
|
175
|
+
#{$button-border-bottom-width} #{$button-border-left-width}
|
|
176
|
+
);
|
|
177
|
+
$button-border-top-style: var(
|
|
178
|
+
--#{root-defaults.$prefix}button-border-top-style,
|
|
179
|
+
#{root-variables.$border-top-style}
|
|
180
|
+
);
|
|
181
|
+
$button-border-right-style: var(
|
|
182
|
+
--#{root-defaults.$prefix}button-border-right-style,
|
|
183
|
+
#{root-variables.$border-right-style}
|
|
184
|
+
);
|
|
185
|
+
$button-border-bottom-style: var(
|
|
186
|
+
--#{root-defaults.$prefix}button-border-bottom-style,
|
|
187
|
+
#{root-variables.$border-bottom-style}
|
|
188
|
+
);
|
|
189
|
+
$button-border-left-style: var(
|
|
190
|
+
--#{root-defaults.$prefix}button-border-left-style,
|
|
191
|
+
#{root-variables.$border-left-style}
|
|
192
|
+
);
|
|
193
|
+
$button-border-style: var(
|
|
194
|
+
--#{root-defaults.$prefix}button-border-style,
|
|
195
|
+
#{$button-border-top-style} #{$button-border-right-style}
|
|
196
|
+
#{$button-border-bottom-style} #{$button-border-left-style}
|
|
197
|
+
);
|
|
198
|
+
$button-border-top-left-radius: var(
|
|
199
|
+
--#{root-defaults.$prefix}button-border-top-left-radius,
|
|
200
|
+
#{root-variables.$border-top-left-radius}
|
|
201
|
+
);
|
|
202
|
+
$button-border-top-right-radius: var(
|
|
203
|
+
--#{root-defaults.$prefix}button-border-top-right-radius,
|
|
204
|
+
#{root-variables.$border-top-right-radius}
|
|
205
|
+
);
|
|
206
|
+
$button-border-bottom-right-radius: var(
|
|
207
|
+
--#{root-defaults.$prefix}button-border-bottom-right-radius,
|
|
208
|
+
#{root-variables.$border-bottom-right-radius}
|
|
209
|
+
);
|
|
210
|
+
$button-border-bottom-left-radius: var(
|
|
211
|
+
--#{root-defaults.$prefix}button-border-bottom-left-radius,
|
|
212
|
+
#{root-variables.$border-bottom-left-radius}
|
|
213
|
+
);
|
|
214
|
+
$button-border-radius: var(
|
|
215
|
+
--#{root-defaults.$prefix}button-border-radius,
|
|
216
|
+
#{$button-border-top-left-radius} #{$button-border-top-right-radius}
|
|
217
|
+
#{$button-border-bottom-right-radius} #{$button-border-bottom-left-radius}
|
|
218
|
+
);
|
|
219
|
+
|
|
220
|
+
// Border colour properties.
|
|
221
|
+
$button-border-color: var(
|
|
222
|
+
--#{root-defaults.$prefix}button-border-color,
|
|
223
|
+
#{color.$border-color}
|
|
224
|
+
);
|
|
225
|
+
$button-visited-border-color: var(
|
|
226
|
+
--#{root-defaults.$prefix}button-visited-border-color,
|
|
227
|
+
#{$button-border-color}
|
|
228
|
+
);
|
|
229
|
+
$button-focus-border-color: var(
|
|
230
|
+
--#{root-defaults.$prefix}button-focus-border-color,
|
|
231
|
+
#{$button-border-color}
|
|
232
|
+
);
|
|
233
|
+
$button-hover-border-color: var(
|
|
234
|
+
--#{root-defaults.$prefix}button-hover-border-color,
|
|
235
|
+
#{color.$border-color}
|
|
236
|
+
);
|
|
237
|
+
$button-active-border-color: var(
|
|
238
|
+
--#{root-defaults.$prefix}button-active-border-color,
|
|
239
|
+
#{$button-hover-border-color}
|
|
240
|
+
);
|
|
241
|
+
$button-disabled-border-color: var(
|
|
242
|
+
--#{root-defaults.$prefix}button-disabled-border-color,
|
|
243
|
+
#{theme.get(primary, 200)}
|
|
244
|
+
);
|
|
245
|
+
$button-border-color-states: (
|
|
246
|
+
default: $button-border-color,
|
|
247
|
+
visited: $button-visited-border-color,
|
|
248
|
+
focus: $button-focus-border-color,
|
|
249
|
+
hover: $button-hover-border-color,
|
|
250
|
+
active: $button-active-border-color,
|
|
251
|
+
disabled: $button-disabled-border-color,
|
|
252
|
+
);
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// @graupl/core form base default values.
|
|
2
|
+
//
|
|
3
|
+
// Generally, these should not be used directly when styling bases unless a static value is needed.
|
|
4
|
+
// They are mainly used to provide class selectors, fallbacks for custom properties, or loop values.
|
|
5
|
+
//
|
|
6
|
+
// They should not be used to define direct property values (i.e. font-size, color, etc.).
|
|
7
|
+
// Those should be defined as custom properties in the `_variables.scss` file.
|
|
8
|
+
|
|
9
|
+
// Form selectors.
|
|
10
|
+
$selector-base: "" !default;
|
|
11
|
+
$modifier-selector-base: $selector-base !default;
|
|
12
|
+
$input-selector-base: $selector-base !default;
|
|
13
|
+
$input-selector: "input" !default;
|
|
14
|
+
$textarea-selector-base: $selector-base !default;
|
|
15
|
+
$textarea-selector: "textarea" !default;
|
|
16
|
+
$select-selector-base: $selector-base !default;
|
|
17
|
+
$select-selector: "select" !default;
|
|
18
|
+
$label-selector-base: $selector-base !default;
|
|
19
|
+
$label-selector: "label" !default;
|
|
20
|
+
$fieldset-selector-base: $selector-base !default;
|
|
21
|
+
$fieldset-selector: "fieldset" !default;
|
|
22
|
+
|
|
23
|
+
// Fieldset properties.
|
|
24
|
+
$fieldset-direction: column !default;
|
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
// @graupl/core form base styles.
|
|
2
|
+
//
|
|
3
|
+
// This module provides the base styles for form components such as inputs, textareas, selects, labels, and fieldsets.
|
|
4
|
+
//
|
|
5
|
+
// The following selectors are generated by default:
|
|
6
|
+
// - `input`: The input component.
|
|
7
|
+
// - `textarea`: The textarea component.
|
|
8
|
+
// - `select`: The select component.
|
|
9
|
+
// - `label`: The label component.
|
|
10
|
+
// - `fieldset`: The fieldset component.
|
|
11
|
+
//
|
|
12
|
+
// The following custom properties control the generated selectors:
|
|
13
|
+
// - `--graupl-input-padding-x`: The horizontal padding for input components.
|
|
14
|
+
// - `--graupl-input-padding-y`: The vertical padding for input components.
|
|
15
|
+
// - `--graupl-input-padding`: The padding for input components (combines x and y padding).
|
|
16
|
+
// - `--graupl-input-font-size`: The font size for input components.
|
|
17
|
+
// - `--graupl-label-font-size`: The font size for label components.
|
|
18
|
+
// - `--graupl-fieldset-direction`: The direction of fieldset items.
|
|
19
|
+
// - `--graupl-fieldset-gap`: The gap between fieldset items.
|
|
20
|
+
// - `--graupl-fieldset-padding-x`: The horizontal padding for fieldset components.
|
|
21
|
+
// - `--graupl-fieldset-padding-y`: The vertical padding for fieldset components.
|
|
22
|
+
// - `--graupl-fieldset-padding`: The padding for fieldset components (combines x and y padding).
|
|
23
|
+
// - `--graupl-fieldset-font-size`: The font size for fieldset components.
|
|
24
|
+
// - `--graupl-input-background`: The background color for input components.
|
|
25
|
+
// - `--graupl-fieldset-background`: The background color for fieldset components.
|
|
26
|
+
// - `--graupl-input-color`: The text color for input components.
|
|
27
|
+
// - `--graupl-input-placeholder-color`: The placeholder text color for input components.
|
|
28
|
+
// - `--graupl-label-color`: The text color for label components.
|
|
29
|
+
// - `--graupl-fieldset-color`: The text color for fieldset components.
|
|
30
|
+
// - `--graupl-input-disabled-color`: The text color for disabled input components.
|
|
31
|
+
// - `--graupl-input-placeholder-disabled-color`: The placeholder text color for disabled input components.
|
|
32
|
+
// - `--graupl-label-disabled-color`: The text color for disabled label components.
|
|
33
|
+
// - `--graupl-fieldset-disabled-color`: The text color for disabled fieldset components.
|
|
34
|
+
// - `--graupl-input-border-top-width`: The top border width for input components.
|
|
35
|
+
// - `--graupl-input-border-right-width`: The right border width for input components.
|
|
36
|
+
// - `--graupl-input-border-bottom-width`: The bottom border width for input components.
|
|
37
|
+
// - `--graupl-input-border-left-width`: The left border width for input components.
|
|
38
|
+
// - `--graupl-input-border-width`: The border width for input components (combines top, right, bottom, and left widths).
|
|
39
|
+
// - `--graupl-input-border-top-style`: The top border style for input components.
|
|
40
|
+
// - `--graupl-input-border-right-style`: The right border style for input components.
|
|
41
|
+
// - `--graupl-input-border-bottom-style`: The bottom border style for input components.
|
|
42
|
+
// - `--graupl-input-border-left-style`: The left border style for input components.
|
|
43
|
+
// - `--graupl-input-border-style`: The border style for input components (combines top, right, bottom, and left styles).
|
|
44
|
+
// - `--graupl-input-border-top-left-radius`: The top-left border radius for input components.
|
|
45
|
+
// - `--graupl-input-border-top-right-radius`: The top-right border radius for input components.
|
|
46
|
+
// - `--graupl-input-border-bottom-right-radius`: The bottom-right border radius for input components.
|
|
47
|
+
// - `--graupl-input-border-bottom-left-radius`: The bottom-left border radius for input components.
|
|
48
|
+
// - `--graupl-input-border-radius`: The border radius for input components (combines top-left, top-right, bottom-right, and bottom-left radii).
|
|
49
|
+
// - `--graupl-fieldset-border-top-width`: The top border width for fieldset components.
|
|
50
|
+
// - `--graupl-fieldset-border-right-width`: The right border width for fieldset components.
|
|
51
|
+
// - `--graupl-fieldset-border-bottom-width`: The bottom border width for fieldset components.
|
|
52
|
+
// - `--graupl-fieldset-border-left-width`: The left border width for fieldset components.
|
|
53
|
+
// - `--graupl-fieldset-border-width`: The border width for fieldset components (combines top, right, bottom, and left widths).
|
|
54
|
+
// - `--graupl-fieldset-border-top-style`: The top border style for fieldset components.
|
|
55
|
+
// - `--graupl-fieldset-border-right-style`: The right border style for fieldset components.
|
|
56
|
+
// - `--graupl-fieldset-border-bottom-style`: The bottom border style for fieldset components.
|
|
57
|
+
// - `--graupl-fieldset-border-left-style`: The left border style for fieldset components.
|
|
58
|
+
// - `--graupl-fieldset-border-style`: The border style for fieldset components (combines top, right, bottom, and left styles).
|
|
59
|
+
// - `--graupl-fieldset-border-top-left-radius`: The top-left border radius for fieldset components.
|
|
60
|
+
// - `--graupl-fieldset-border-top-right-radius`: The top-right border radius for fieldset components.
|
|
61
|
+
// - `--graupl-fieldset-border-bottom-right-radius`: The bottom-right border radius for fieldset components.
|
|
62
|
+
// - `--graupl-fieldset-border-bottom-left-radius`: The bottom-left border radius for fieldset components.
|
|
63
|
+
// - `--graupl-fieldset-border-radius`: The border radius for fieldset components (combines top-left, top-right, bottom-right, and bottom-left radii).
|
|
64
|
+
// - `--graupl-input-border-color`: The border color for input components.
|
|
65
|
+
// - `--graupl-input-disabled-border-color`: The border color for disabled input components.
|
|
66
|
+
// - `--graupl-fieldset-border-color`: The border color for fieldset components.
|
|
67
|
+
// - `--graupl-fieldset-disabled-border-color`: The border color for disabled fieldset components.
|
|
68
|
+
// - `--graupl-input-accent-color`: The accent color for input components.
|
|
69
|
+
//
|
|
70
|
+
// The following variables control the generated selectors:
|
|
71
|
+
// - `$selector-base`: The selector base for the component.
|
|
72
|
+
// - `$modifier-selector-base`: The selector base for component modifiers.
|
|
73
|
+
// - `$input-selector-base`: The base selector for the input component.
|
|
74
|
+
// - `$input-selector`: The input component selector.
|
|
75
|
+
// - `$textarea-selector-base`: The base selector for the textarea component.
|
|
76
|
+
// - `$textarea-selector`: The textarea component selector.
|
|
77
|
+
// - `$select-selector-base`: The base selector for the select component.
|
|
78
|
+
// - `$select-selector`: The select component selector.
|
|
79
|
+
// - `$fieldset-selector-base`: The base selector for the fieldset component.
|
|
80
|
+
// - `$fieldset-selector`: The fieldset component selector.
|
|
81
|
+
// - `$fieldset-direction`: The direction of fieldset component items.
|
|
82
|
+
//
|
|
83
|
+
// @example
|
|
84
|
+
// <label for="input-id">Input Label</label>
|
|
85
|
+
// <input id="input-id" type="text" placeholder="Enter text" />
|
|
86
|
+
//
|
|
87
|
+
// @example
|
|
88
|
+
// <label for="textarea-id">Textarea Label</label>
|
|
89
|
+
// <textarea id="textarea-id" placeholder="Enter text"></textarea>
|
|
90
|
+
//
|
|
91
|
+
// @example
|
|
92
|
+
// <label for="select-id">Select Label</label>
|
|
93
|
+
// <select id="select-id">
|
|
94
|
+
// <option value="1">Option 1</option>
|
|
95
|
+
// <option value="2">Option 2</option>
|
|
96
|
+
// </select>
|
|
97
|
+
//
|
|
98
|
+
// @example
|
|
99
|
+
// <fieldset>
|
|
100
|
+
// <legend>Fieldset Legend</legend>
|
|
101
|
+
// <label for="input-id">Input Label</label>
|
|
102
|
+
// <input id="input-id" type="text" placeholder="Enter text" />
|
|
103
|
+
// <label for="textarea-id">Textarea Label</label>
|
|
104
|
+
// <textarea id="textarea-id" placeholder="Enter text"></textarea>
|
|
105
|
+
// <label for="select-id">Select Label</label>
|
|
106
|
+
// <select id="select-id">
|
|
107
|
+
// <option value="1">Option 1</option>
|
|
108
|
+
// <option value="2">Option 2</option>
|
|
109
|
+
// </select>
|
|
110
|
+
// </fieldset>
|
|
111
|
+
|
|
112
|
+
@use "../../defaults" as root-defaults;
|
|
113
|
+
@use "../../mixins/layer" as *;
|
|
114
|
+
@use "defaults";
|
|
115
|
+
@use "sass:map";
|
|
116
|
+
@use "variables" as *;
|
|
117
|
+
|
|
118
|
+
@include layer(base) {
|
|
119
|
+
// input, textarea, select
|
|
120
|
+
#{defaults.$input-selector-base}#{defaults.$input-selector},
|
|
121
|
+
#{defaults.$textarea-selector-base}#{defaults.$textarea-selector},
|
|
122
|
+
#{defaults.$select-selector-base}#{defaults.$select-selector} {
|
|
123
|
+
padding: $input-padding;
|
|
124
|
+
border-width: $input-border-width;
|
|
125
|
+
border-style: $input-border-style;
|
|
126
|
+
border-radius: $input-border-radius;
|
|
127
|
+
font-size: $input-font-size;
|
|
128
|
+
|
|
129
|
+
@each $selector in map.get(root-defaults.$state-selectors, "disabled") {
|
|
130
|
+
// e.g :disabled, .disabled
|
|
131
|
+
&#{$selector} {
|
|
132
|
+
cursor: not-allowed;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
137
|
+
// label
|
|
138
|
+
#{defaults.$label-selector-base}#{defaults.$label-selector} {
|
|
139
|
+
font-size: $label-font-size;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
// fieldset
|
|
143
|
+
#{defaults.$fieldset-selector-base}#{defaults.$fieldset-selector} {
|
|
144
|
+
display: flex;
|
|
145
|
+
flex-flow: $fieldset-direction wrap;
|
|
146
|
+
gap: $fieldset-gap;
|
|
147
|
+
padding: $fieldset-padding;
|
|
148
|
+
border-width: $fieldset-border-width;
|
|
149
|
+
border-style: $fieldset-border-style;
|
|
150
|
+
border-radius: $fieldset-border-radius;
|
|
151
|
+
font-size: $fieldset-font-size;
|
|
152
|
+
|
|
153
|
+
@each $selector in map.get(root-defaults.$state-selectors, "disabled") {
|
|
154
|
+
// e.g :disabled, .disabled
|
|
155
|
+
&#{$selector} {
|
|
156
|
+
#{defaults.$input-selector},
|
|
157
|
+
#{defaults.$textarea-selector},
|
|
158
|
+
#{defaults.$select-selector} {
|
|
159
|
+
cursor: not-allowed;
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
@include layer(theme) {
|
|
167
|
+
// input, textarea, select
|
|
168
|
+
#{defaults.$input-selector-base}#{defaults.$input-selector},
|
|
169
|
+
#{defaults.$textarea-selector-base}#{defaults.$textarea-selector},
|
|
170
|
+
#{defaults.$select-selector-base}#{defaults.$select-selector} {
|
|
171
|
+
border-color: $input-border-color;
|
|
172
|
+
background: $input-background;
|
|
173
|
+
color: $input-color;
|
|
174
|
+
accent-color: $input-accent-color;
|
|
175
|
+
|
|
176
|
+
&::placeholder {
|
|
177
|
+
color: $input-placeholder-color;
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
@each $selector in map.get(root-defaults.$state-selectors, "disabled") {
|
|
181
|
+
// e.g :disabled, .disabled
|
|
182
|
+
&#{$selector} {
|
|
183
|
+
border-color: $input-disabled-border-color;
|
|
184
|
+
color: $input-disabled-color;
|
|
185
|
+
|
|
186
|
+
&::placeholder {
|
|
187
|
+
color: $input-placeholder-disabled-color;
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
// label
|
|
194
|
+
#{defaults.$label-selector-base}#{defaults.$label-selector} {
|
|
195
|
+
color: $label-color;
|
|
196
|
+
|
|
197
|
+
@each $selector in map.get(root-defaults.$state-selectors, "disabled") {
|
|
198
|
+
// &:has(:disabled, .disabled)
|
|
199
|
+
&:has(
|
|
200
|
+
+ #{defaults.$input-selector-base}#{defaults.$input-selector}#{$selector},
|
|
201
|
+
+ #{defaults.$textarea-selector-base}#{defaults.$textarea-selector}#{$selector},
|
|
202
|
+
+ #{defaults.$select-selector-base}#{defaults.$select-selector}#{$selector}
|
|
203
|
+
) {
|
|
204
|
+
color: $label-disabled-color;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
// fieldset
|
|
210
|
+
#{defaults.$fieldset-selector-base}#{defaults.$fieldset-selector} {
|
|
211
|
+
border-color: $fieldset-border-color;
|
|
212
|
+
background: $fieldset-background;
|
|
213
|
+
color: $fieldset-color;
|
|
214
|
+
|
|
215
|
+
@each $selector in map.get(root-defaults.$state-selectors, "disabled") {
|
|
216
|
+
// e.g :disabled, .disabled
|
|
217
|
+
&#{$selector} {
|
|
218
|
+
border-color: $fieldset-disabled-border-color;
|
|
219
|
+
color: $fieldset-disabled-color;
|
|
220
|
+
|
|
221
|
+
#{defaults.$label-selector} {
|
|
222
|
+
color: $label-disabled-color;
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
}
|