commons-shared-web-ui 0.0.4 → 0.0.6
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/fesm2022/commons-shared-web-ui.mjs +2442 -185
- package/fesm2022/commons-shared-web-ui.mjs.map +1 -1
- package/index.d.ts +968 -55
- package/package.json +1 -1
- package/src/lib/modules/filter/filter.theme.scss +92 -0
- package/src/lib/modules/filter-sidebar/filter-sidebar.theme.scss +28 -40
- package/src/lib/modules/form-components/components/checkbox/_theme.scss +63 -0
- package/src/lib/modules/form-components/components/datepicker/_theme.scss +82 -0
- package/src/lib/modules/form-components/components/dropdown/_theme.scss +91 -0
- package/src/lib/modules/form-components/components/input/_theme.scss +77 -0
- package/src/lib/modules/form-components/components/radio/_theme.scss +61 -0
- package/src/lib/modules/form-components/components/search/_theme.scss +73 -0
- package/src/lib/modules/form-components/components/toggle/_theme.scss +45 -0
- package/src/lib/modules/form-components/form-components.theme.scss +25 -0
- package/src/lib/modules/smart-table/smart-table.theme.scss +4 -0
package/package.json
CHANGED
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
|
|
3
|
+
// Default configuration for the filter theme
|
|
4
|
+
$default-filter-config: (
|
|
5
|
+
// Button Trigger
|
|
6
|
+
btn-bg: #ffffff,
|
|
7
|
+
btn-border: 1px solid #e0e0e0,
|
|
8
|
+
btn-radius: 4px,
|
|
9
|
+
btn-text-color: #333,
|
|
10
|
+
btn-hover-bg: #f5f5f5,
|
|
11
|
+
btn-active-bg: #e3f2fd,
|
|
12
|
+
btn-active-text: #1976d2,
|
|
13
|
+
btn-badge-bg: #f44336,
|
|
14
|
+
btn-badge-text: #fff,
|
|
15
|
+
|
|
16
|
+
// Panel / Sidebar
|
|
17
|
+
panel-bg: #ffffff,
|
|
18
|
+
panel-border: 1px solid #e0e0e0,
|
|
19
|
+
panel-shadow: 0 4px 12px rgba(0, 0, 0, 0.15),
|
|
20
|
+
panel-width: 320px,
|
|
21
|
+
panel-min-width: 480px,
|
|
22
|
+
panel-header-bg: #fafafa,
|
|
23
|
+
panel-header-text: #333,
|
|
24
|
+
panel-padding: 1rem,
|
|
25
|
+
panel-radius: 8px,
|
|
26
|
+
panel-header-height: 48px,
|
|
27
|
+
|
|
28
|
+
// Tabs
|
|
29
|
+
tab-bg: transparent,
|
|
30
|
+
tab-text: #666,
|
|
31
|
+
tab-active-bg: #fff,
|
|
32
|
+
tab-active-text: #1976d2,
|
|
33
|
+
tab-border-bottom: 2px solid #1976d2,
|
|
34
|
+
|
|
35
|
+
// Content
|
|
36
|
+
section-title: #333,
|
|
37
|
+
option-text: #555,
|
|
38
|
+
option-hover-bg: #f9f9f9,
|
|
39
|
+
|
|
40
|
+
// Footer actions
|
|
41
|
+
footer-bg: #fff,
|
|
42
|
+
footer-border-top: 1px solid #e0e0e0,
|
|
43
|
+
action-primary-bg: #1976d2,
|
|
44
|
+
action-primary-text: #fff,
|
|
45
|
+
action-secondary-text: #666
|
|
46
|
+
);
|
|
47
|
+
|
|
48
|
+
@mixin filter-theme($user-config: ()) {
|
|
49
|
+
$config: map.merge($default-filter-config, $user-config);
|
|
50
|
+
|
|
51
|
+
// Button Trigger
|
|
52
|
+
--cc-filter-btn-bg: #{map.get($config, btn-bg)};
|
|
53
|
+
--cc-filter-btn-border: #{map.get($config, btn-border)};
|
|
54
|
+
--cc-filter-btn-radius: #{map.get($config, btn-radius)};
|
|
55
|
+
--cc-filter-btn-text-color: #{map.get($config, btn-text-color)};
|
|
56
|
+
--cc-filter-btn-hover-bg: #{map.get($config, btn-hover-bg)};
|
|
57
|
+
--cc-filter-btn-active-bg: #{map.get($config, btn-active-bg)};
|
|
58
|
+
--cc-filter-btn-active-text: #{map.get($config, btn-active-text)};
|
|
59
|
+
--cc-filter-btn-badge-bg: #{map.get($config, btn-badge-bg)};
|
|
60
|
+
--cc-filter-btn-badge-text: #{map.get($config, btn-badge-text)};
|
|
61
|
+
|
|
62
|
+
// Panel
|
|
63
|
+
--cc-filter-panel-bg: #{map.get($config, panel-bg)};
|
|
64
|
+
--cc-filter-panel-border: #{map.get($config, panel-border)};
|
|
65
|
+
--cc-filter-panel-shadow: #{map.get($config, panel-shadow)};
|
|
66
|
+
--cc-filter-panel-width: #{map.get($config, panel-width)};
|
|
67
|
+
--cc-filter-panel-min-width: #{map.get($config, panel-min-width)};
|
|
68
|
+
--cc-filter-panel-padding: #{map.get($config, panel-padding)};
|
|
69
|
+
--cc-filter-panel-header-bg: #{map.get($config, panel-header-bg)};
|
|
70
|
+
--cc-filter-panel-header-text: #{map.get($config, panel-header-text)};
|
|
71
|
+
--cc-filter-panel-radius: #{map.get($config, panel-radius)};
|
|
72
|
+
--cc-filter-panel-header-height: #{map.get($config, panel-header-height)};
|
|
73
|
+
|
|
74
|
+
// Tabs
|
|
75
|
+
--cc-filter-tab-bg: #{map.get($config, tab-bg)};
|
|
76
|
+
--cc-filter-tab-text: #{map.get($config, tab-text)};
|
|
77
|
+
--cc-filter-tab-active-bg: #{map.get($config, tab-active-bg)};
|
|
78
|
+
--cc-filter-tab-active-text: #{map.get($config, tab-active-text)};
|
|
79
|
+
--cc-filter-tab-border-bottom: #{map.get($config, tab-border-bottom)};
|
|
80
|
+
|
|
81
|
+
// Content
|
|
82
|
+
--cc-filter-section-title: #{map.get($config, section-title)};
|
|
83
|
+
--cc-filter-option-text: #{map.get($config, option-text)};
|
|
84
|
+
--cc-filter-option-hover-bg: #{map.get($config, option-hover-bg)};
|
|
85
|
+
|
|
86
|
+
// Footer
|
|
87
|
+
--cc-filter-footer-bg: #{map.get($config, footer-bg)};
|
|
88
|
+
--cc-filter-footer-border-top: #{map.get($config, footer-border-top)};
|
|
89
|
+
--cc-filter-action-primary-bg: #{map.get($config, action-primary-bg)};
|
|
90
|
+
--cc-filter-action-primary-text: #{map.get($config, action-primary-text)};
|
|
91
|
+
--cc-filter-action-secondary-text: #{map.get($config, action-secondary-text)};
|
|
92
|
+
}
|
|
@@ -1,50 +1,38 @@
|
|
|
1
1
|
@use 'sass:map';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
3
|
+
$default-filter-sidebar-config: (
|
|
4
|
+
// Layout
|
|
5
|
+
width: 100%,
|
|
6
|
+
padding: 1.5rem,
|
|
7
|
+
gap: 1.5rem,
|
|
8
|
+
bg: #FEFEFE,
|
|
9
|
+
border-radius: 0,
|
|
10
|
+
|
|
11
|
+
// Header
|
|
12
|
+
header-height: 3rem,
|
|
13
|
+
header-title-size: 1.125rem,
|
|
14
|
+
header-title-weight: 500,
|
|
15
|
+
header-title-color: #202124,
|
|
9
16
|
|
|
10
|
-
//
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
tab-active-bg: #FEF2F2,
|
|
14
|
-
tab-active-color: #EF4444,
|
|
15
|
-
tab-active-border: #FECACA,
|
|
16
|
-
tab-hover-bg: #F3F4F6,
|
|
17
|
-
|
|
18
|
-
// Sections
|
|
19
|
-
section-title-color: #374151,
|
|
20
|
-
accordion-title-color: #111827,
|
|
21
|
-
|
|
22
|
-
// Actions Footer
|
|
23
|
-
footer-bg: #ffffff,
|
|
24
|
-
footer-border-color: #E5E7EB
|
|
17
|
+
// Footer
|
|
18
|
+
footer-padding: 1rem 0 0 0,
|
|
19
|
+
footer-gap: 1rem,
|
|
25
20
|
);
|
|
26
21
|
|
|
27
22
|
@mixin filter-sidebar-theme($user-config: ()) {
|
|
28
|
-
$config: map.merge($default-filter-config, $user-config);
|
|
23
|
+
$config: map.merge($default-filter-sidebar-config, $user-config);
|
|
29
24
|
|
|
30
|
-
|
|
31
|
-
--cc-filter-
|
|
32
|
-
--cc-filter-
|
|
33
|
-
--cc-filter-
|
|
25
|
+
--cc-filter-sidebar-width: #{map.get($config, width)};
|
|
26
|
+
--cc-filter-sidebar-padding: #{map.get($config, padding)};
|
|
27
|
+
--cc-filter-sidebar-gap: #{map.get($config, gap)};
|
|
28
|
+
--cc-filter-sidebar-bg: #{map.get($config, bg)};
|
|
29
|
+
--cc-filter-sidebar-border-radius: #{map.get($config, border-radius)};
|
|
34
30
|
|
|
35
|
-
|
|
36
|
-
--cc-filter-
|
|
37
|
-
--cc-filter-
|
|
38
|
-
--cc-filter-
|
|
39
|
-
--cc-filter-tab-active-color: #{map.get($config, tab-active-color)};
|
|
40
|
-
--cc-filter-tab-active-border: #{map.get($config, tab-active-border)};
|
|
41
|
-
--cc-filter-tab-hover-bg: #{map.get($config, tab-hover-bg)};
|
|
31
|
+
--cc-filter-header-height: #{map.get($config, header-height)};
|
|
32
|
+
--cc-filter-header-title-size: #{map.get($config, header-title-size)};
|
|
33
|
+
--cc-filter-header-title-weight: #{map.get($config, header-title-weight)};
|
|
34
|
+
--cc-filter-header-title-color: #{map.get($config, header-title-color)};
|
|
42
35
|
|
|
43
|
-
|
|
44
|
-
--cc-filter-
|
|
45
|
-
--cc-filter-accordion-title-color: #{map.get($config, accordion-title-color)};
|
|
46
|
-
|
|
47
|
-
// Footer
|
|
48
|
-
--cc-filter-footer-bg: #{map.get($config, footer-bg)};
|
|
49
|
-
--cc-filter-footer-border-color: #{map.get($config, footer-border-color)};
|
|
36
|
+
--cc-filter-footer-padding: #{map.get($config, footer-padding)};
|
|
37
|
+
--cc-filter-footer-gap: #{map.get($config, footer-gap)};
|
|
50
38
|
}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
|
|
3
|
+
$default-checkbox-config: (
|
|
4
|
+
// Layout
|
|
5
|
+
margin-bottom: 0.5rem,
|
|
6
|
+
group-gap: 0.75rem,
|
|
7
|
+
|
|
8
|
+
// Label
|
|
9
|
+
font-size: 0.875rem,
|
|
10
|
+
font-weight: 400,
|
|
11
|
+
font-family: inherit,
|
|
12
|
+
label-color: #202124,
|
|
13
|
+
|
|
14
|
+
// Group label
|
|
15
|
+
group-label-font-size: 0.875rem,
|
|
16
|
+
group-label-font-weight: 500,
|
|
17
|
+
group-label-color: #202124,
|
|
18
|
+
|
|
19
|
+
// Size
|
|
20
|
+
size: 1.125rem,
|
|
21
|
+
border-radius: 2px,
|
|
22
|
+
|
|
23
|
+
// Colors
|
|
24
|
+
checked-color: #1A73E8,
|
|
25
|
+
unchecked-color: #BDC1C6,
|
|
26
|
+
|
|
27
|
+
// States
|
|
28
|
+
disabled-color: #80868B,
|
|
29
|
+
error-color: #D93025,
|
|
30
|
+
required-color: #D93025
|
|
31
|
+
);
|
|
32
|
+
|
|
33
|
+
@mixin checkbox-theme($user-config: ()) {
|
|
34
|
+
$config: map.merge($default-checkbox-config, $user-config);
|
|
35
|
+
|
|
36
|
+
// Layout
|
|
37
|
+
--cc-checkbox-margin-bottom: #{map.get($config, margin-bottom)};
|
|
38
|
+
--cc-checkbox-group-gap: #{map.get($config, group-gap)};
|
|
39
|
+
|
|
40
|
+
// Label
|
|
41
|
+
--cc-checkbox-font-size: #{map.get($config, font-size)};
|
|
42
|
+
--cc-checkbox-font-weight: #{map.get($config, font-weight)};
|
|
43
|
+
--cc-checkbox-font-family: #{map.get($config, font-family)};
|
|
44
|
+
--cc-checkbox-label-color: #{map.get($config, label-color)};
|
|
45
|
+
|
|
46
|
+
// Group label
|
|
47
|
+
--cc-checkbox-group-label-font-size: #{map.get($config, group-label-font-size)};
|
|
48
|
+
--cc-checkbox-group-label-font-weight: #{map.get($config, group-label-font-weight)};
|
|
49
|
+
--cc-checkbox-group-label-color: #{map.get($config, group-label-color)};
|
|
50
|
+
|
|
51
|
+
// Size
|
|
52
|
+
--cc-checkbox-size: #{map.get($config, size)};
|
|
53
|
+
--cc-checkbox-border-radius: #{map.get($config, border-radius)};
|
|
54
|
+
|
|
55
|
+
// Colors
|
|
56
|
+
--cc-checkbox-checked-color: #{map.get($config, checked-color)};
|
|
57
|
+
--cc-checkbox-unchecked-color: #{map.get($config, unchecked-color)};
|
|
58
|
+
|
|
59
|
+
// States
|
|
60
|
+
--cc-checkbox-disabled-color: #{map.get($config, disabled-color)};
|
|
61
|
+
--cc-checkbox-error-color: #{map.get($config, error-color)};
|
|
62
|
+
--cc-checkbox-required-color: #{map.get($config, required-color)};
|
|
63
|
+
}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
|
|
3
|
+
$default-datepicker-config: (
|
|
4
|
+
// Layout
|
|
5
|
+
height: 2.5rem,
|
|
6
|
+
padding: 0.375rem 1rem,
|
|
7
|
+
label-gap: 0.5rem,
|
|
8
|
+
|
|
9
|
+
// Borders
|
|
10
|
+
border-radius: 0.4375rem,
|
|
11
|
+
border-color: #BDC1C6,
|
|
12
|
+
border-width: 1px,
|
|
13
|
+
|
|
14
|
+
// Colors
|
|
15
|
+
bg: #FEFEFE,
|
|
16
|
+
color: #202124,
|
|
17
|
+
placeholder-color: #80868B,
|
|
18
|
+
|
|
19
|
+
// Typography
|
|
20
|
+
font-size: 0.875rem,
|
|
21
|
+
font-weight: 400,
|
|
22
|
+
font-family: inherit,
|
|
23
|
+
|
|
24
|
+
// Label
|
|
25
|
+
label-font-size: 0.875rem,
|
|
26
|
+
label-font-weight: 500,
|
|
27
|
+
label-color: #202124,
|
|
28
|
+
|
|
29
|
+
// States
|
|
30
|
+
focus-border-color: #1A73E8,
|
|
31
|
+
error-color: #D93025,
|
|
32
|
+
disabled-bg: #F1F3F4,
|
|
33
|
+
disabled-color: #80868B,
|
|
34
|
+
required-color: #D93025,
|
|
35
|
+
|
|
36
|
+
// Icon
|
|
37
|
+
icon-color: #5F6368
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
@mixin datepicker-theme($user-config: ()) {
|
|
41
|
+
$config: map.merge($default-datepicker-config, $user-config);
|
|
42
|
+
|
|
43
|
+
// Layout
|
|
44
|
+
--cc-datepicker-height: #{map.get($config, height)};
|
|
45
|
+
--cc-datepicker-padding: #{map.get($config, padding)};
|
|
46
|
+
--cc-datepicker-label-gap: #{map.get($config, label-gap)};
|
|
47
|
+
|
|
48
|
+
// Borders
|
|
49
|
+
--cc-datepicker-border-radius: #{map.get($config, border-radius)};
|
|
50
|
+
--cc-datepicker-border-color: #{map.get($config, border-color)};
|
|
51
|
+
--cc-datepicker-border-width: #{map.get($config, border-width)};
|
|
52
|
+
|
|
53
|
+
// Colors
|
|
54
|
+
--cc-datepicker-bg: #{map.get($config, bg)};
|
|
55
|
+
--cc-datepicker-color: #{map.get($config, color)};
|
|
56
|
+
--cc-datepicker-placeholder-color: #{map.get($config, placeholder-color)};
|
|
57
|
+
|
|
58
|
+
// Typography
|
|
59
|
+
--cc-datepicker-font-size: #{map.get($config, font-size)};
|
|
60
|
+
--cc-datepicker-font-weight: #{map.get($config, font-weight)};
|
|
61
|
+
--cc-datepicker-font-family: #{map.get($config, font-family)};
|
|
62
|
+
|
|
63
|
+
// Label
|
|
64
|
+
--cc-datepicker-label-font-size: #{map.get($config, label-font-size)};
|
|
65
|
+
--cc-datepicker-label-font-weight: #{map.get($config, label-font-weight)};
|
|
66
|
+
--cc-datepicker-label-color: #{map.get($config, label-color)};
|
|
67
|
+
|
|
68
|
+
// States
|
|
69
|
+
--cc-datepicker-focus-border-color: #{map.get($config, focus-border-color)};
|
|
70
|
+
--cc-datepicker-error-color: #{map.get($config, error-color)};
|
|
71
|
+
--cc-datepicker-disabled-bg: #{map.get($config, disabled-bg)};
|
|
72
|
+
--cc-datepicker-disabled-color: #{map.get($config, disabled-color)};
|
|
73
|
+
--cc-datepicker-required-color: #{map.get($config, required-color)};
|
|
74
|
+
|
|
75
|
+
// Icon
|
|
76
|
+
--cc-datepicker-icon-color: #{map.get($config, icon-color)};
|
|
77
|
+
|
|
78
|
+
// MD3 Overrides or Missing Variables
|
|
79
|
+
--mat-datepicker-calendar-container-background-color: var(--cc-datepicker-bg, #FEFEFE);
|
|
80
|
+
--mat-datepicker-calendar-container-shape: var(--cc-datepicker-border-radius, 0.4375rem);
|
|
81
|
+
--mat-datepicker-calendar-container-elevation-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2), 0px 4px 5px 0px rgba(0, 0, 0, 0.14), 0px 1px 10px 0px rgba(0, 0, 0, 0.12);
|
|
82
|
+
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
|
|
3
|
+
$default-dropdown-config: (
|
|
4
|
+
// Layout
|
|
5
|
+
height: 2.5rem,
|
|
6
|
+
padding: 0.375rem 1rem,
|
|
7
|
+
label-gap: 0.5rem,
|
|
8
|
+
|
|
9
|
+
// Borders
|
|
10
|
+
border-radius: 0.4375rem,
|
|
11
|
+
border-color: #BDC1C6,
|
|
12
|
+
border-width: 1px,
|
|
13
|
+
|
|
14
|
+
// Colors
|
|
15
|
+
bg: #FEFEFE,
|
|
16
|
+
color: #202124,
|
|
17
|
+
placeholder-color: #80868B,
|
|
18
|
+
|
|
19
|
+
// Typography
|
|
20
|
+
font-size: 0.875rem,
|
|
21
|
+
font-weight: 400,
|
|
22
|
+
font-family: inherit,
|
|
23
|
+
|
|
24
|
+
// Label
|
|
25
|
+
label-font-size: 0.875rem,
|
|
26
|
+
label-font-weight: 500,
|
|
27
|
+
label-color: #202124,
|
|
28
|
+
|
|
29
|
+
// States
|
|
30
|
+
focus-border-color: #1A73E8,
|
|
31
|
+
error-color: #D93025,
|
|
32
|
+
disabled-bg: #F1F3F4,
|
|
33
|
+
disabled-color: #80868B,
|
|
34
|
+
required-color: #D93025,
|
|
35
|
+
|
|
36
|
+
// Search
|
|
37
|
+
divider-color: #E0E0E0,
|
|
38
|
+
search-border-color: #BDC1C6,
|
|
39
|
+
search-border-radius: 0.25rem,
|
|
40
|
+
search-font-size: 0.875rem,
|
|
41
|
+
search-focus-color: #1A73E8,
|
|
42
|
+
|
|
43
|
+
// Dropdown arrow
|
|
44
|
+
arrow-color: #5F6368
|
|
45
|
+
);
|
|
46
|
+
|
|
47
|
+
@mixin dropdown-theme($user-config: ()) {
|
|
48
|
+
$config: map.merge($default-dropdown-config, $user-config);
|
|
49
|
+
|
|
50
|
+
// Layout
|
|
51
|
+
--cc-dropdown-height: #{map.get($config, height)};
|
|
52
|
+
--cc-dropdown-padding: #{map.get($config, padding)};
|
|
53
|
+
--cc-dropdown-label-gap: #{map.get($config, label-gap)};
|
|
54
|
+
|
|
55
|
+
// Borders
|
|
56
|
+
--cc-dropdown-border-radius: #{map.get($config, border-radius)};
|
|
57
|
+
--cc-dropdown-border-color: #{map.get($config, border-color)};
|
|
58
|
+
--cc-dropdown-border-width: #{map.get($config, border-width)};
|
|
59
|
+
|
|
60
|
+
// Colors
|
|
61
|
+
--cc-dropdown-bg: #{map.get($config, bg)};
|
|
62
|
+
--cc-dropdown-color: #{map.get($config, color)};
|
|
63
|
+
--cc-dropdown-placeholder-color: #{map.get($config, placeholder-color)};
|
|
64
|
+
|
|
65
|
+
// Typography
|
|
66
|
+
--cc-dropdown-font-size: #{map.get($config, font-size)};
|
|
67
|
+
--cc-dropdown-font-weight: #{map.get($config, font-weight)};
|
|
68
|
+
--cc-dropdown-font-family: #{map.get($config, font-family)};
|
|
69
|
+
|
|
70
|
+
// Label
|
|
71
|
+
--cc-dropdown-label-font-size: #{map.get($config, label-font-size)};
|
|
72
|
+
--cc-dropdown-label-font-weight: #{map.get($config, label-font-weight)};
|
|
73
|
+
--cc-dropdown-label-color: #{map.get($config, label-color)};
|
|
74
|
+
|
|
75
|
+
// States
|
|
76
|
+
--cc-dropdown-focus-border-color: #{map.get($config, focus-border-color)};
|
|
77
|
+
--cc-dropdown-error-color: #{map.get($config, error-color)};
|
|
78
|
+
--cc-dropdown-disabled-bg: #{map.get($config, disabled-bg)};
|
|
79
|
+
--cc-dropdown-disabled-color: #{map.get($config, disabled-color)};
|
|
80
|
+
--cc-dropdown-required-color: #{map.get($config, required-color)};
|
|
81
|
+
|
|
82
|
+
// Search
|
|
83
|
+
--cc-dropdown-divider-color: #{map.get($config, divider-color)};
|
|
84
|
+
--cc-dropdown-search-border-color: #{map.get($config, search-border-color)};
|
|
85
|
+
--cc-dropdown-search-border-radius: #{map.get($config, search-border-radius)};
|
|
86
|
+
--cc-dropdown-search-font-size: #{map.get($config, search-font-size)};
|
|
87
|
+
--cc-dropdown-search-focus-color: #{map.get($config, search-focus-color)};
|
|
88
|
+
|
|
89
|
+
// Arrow
|
|
90
|
+
--cc-dropdown-arrow-color: #{map.get($config, arrow-color)};
|
|
91
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
|
|
3
|
+
$default-input-config: (
|
|
4
|
+
// Layout
|
|
5
|
+
height: 2.5rem,
|
|
6
|
+
padding: 0.375rem 1rem,
|
|
7
|
+
label-gap: 0.5rem,
|
|
8
|
+
|
|
9
|
+
// Borders
|
|
10
|
+
border-radius: 0.4375rem,
|
|
11
|
+
border-color: #BDC1C6,
|
|
12
|
+
border-width: 1px,
|
|
13
|
+
|
|
14
|
+
// Colors
|
|
15
|
+
bg: #FEFEFE,
|
|
16
|
+
color: #202124,
|
|
17
|
+
placeholder-color: #80868B,
|
|
18
|
+
|
|
19
|
+
// Typography
|
|
20
|
+
font-size: 0.875rem,
|
|
21
|
+
font-weight: 400,
|
|
22
|
+
font-family: inherit,
|
|
23
|
+
|
|
24
|
+
// Label
|
|
25
|
+
label-font-size: 0.875rem,
|
|
26
|
+
label-font-weight: 500,
|
|
27
|
+
label-color: #202124,
|
|
28
|
+
|
|
29
|
+
// States
|
|
30
|
+
focus-border-color: #1A73E8,
|
|
31
|
+
error-color: #D93025,
|
|
32
|
+
disabled-bg: #F1F3F4,
|
|
33
|
+
disabled-color: #80868B,
|
|
34
|
+
required-color: #D93025,
|
|
35
|
+
|
|
36
|
+
// Icon
|
|
37
|
+
icon-color: #5F6368
|
|
38
|
+
);
|
|
39
|
+
|
|
40
|
+
@mixin input-theme($user-config: ()) {
|
|
41
|
+
$config: map.merge($default-input-config, $user-config);
|
|
42
|
+
|
|
43
|
+
// Layout
|
|
44
|
+
--cc-input-height: #{map.get($config, height)};
|
|
45
|
+
--cc-input-padding: #{map.get($config, padding)};
|
|
46
|
+
--cc-input-label-gap: #{map.get($config, label-gap)};
|
|
47
|
+
|
|
48
|
+
// Borders
|
|
49
|
+
--cc-input-border-radius: #{map.get($config, border-radius)};
|
|
50
|
+
--cc-input-border-color: #{map.get($config, border-color)};
|
|
51
|
+
--cc-input-border-width: #{map.get($config, border-width)};
|
|
52
|
+
|
|
53
|
+
// Colors
|
|
54
|
+
--cc-input-bg: #{map.get($config, bg)};
|
|
55
|
+
--cc-input-color: #{map.get($config, color)};
|
|
56
|
+
--cc-input-placeholder-color: #{map.get($config, placeholder-color)};
|
|
57
|
+
|
|
58
|
+
// Typography
|
|
59
|
+
--cc-input-font-size: #{map.get($config, font-size)};
|
|
60
|
+
--cc-input-font-weight: #{map.get($config, font-weight)};
|
|
61
|
+
--cc-input-font-family: #{map.get($config, font-family)};
|
|
62
|
+
|
|
63
|
+
// Label
|
|
64
|
+
--cc-input-label-font-size: #{map.get($config, label-font-size)};
|
|
65
|
+
--cc-input-label-font-weight: #{map.get($config, label-font-weight)};
|
|
66
|
+
--cc-input-label-color: #{map.get($config, label-color)};
|
|
67
|
+
|
|
68
|
+
// States
|
|
69
|
+
--cc-input-focus-border-color: #{map.get($config, focus-border-color)};
|
|
70
|
+
--cc-input-error-color: #{map.get($config, error-color)};
|
|
71
|
+
--cc-input-disabled-bg: #{map.get($config, disabled-bg)};
|
|
72
|
+
--cc-input-disabled-color: #{map.get($config, disabled-color)};
|
|
73
|
+
--cc-input-required-color: #{map.get($config, required-color)};
|
|
74
|
+
|
|
75
|
+
// Icon
|
|
76
|
+
--cc-input-icon-color: #{map.get($config, icon-color)};
|
|
77
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
|
|
3
|
+
$default-radio-config: (
|
|
4
|
+
// Layout
|
|
5
|
+
label-gap: 0.5rem,
|
|
6
|
+
group-gap: 0.75rem,
|
|
7
|
+
|
|
8
|
+
// Label
|
|
9
|
+
font-size: 0.875rem,
|
|
10
|
+
font-weight: 400,
|
|
11
|
+
font-family: inherit,
|
|
12
|
+
label-color: #202124,
|
|
13
|
+
|
|
14
|
+
// Group label
|
|
15
|
+
group-label-font-size: 0.875rem,
|
|
16
|
+
group-label-font-weight: 500,
|
|
17
|
+
group-label-color: #202124,
|
|
18
|
+
|
|
19
|
+
// Size
|
|
20
|
+
size: 1.25rem,
|
|
21
|
+
|
|
22
|
+
// Colors
|
|
23
|
+
checked-color: #1A73E8,
|
|
24
|
+
unchecked-color: #BDC1C6,
|
|
25
|
+
|
|
26
|
+
// States
|
|
27
|
+
disabled-color: #80868B,
|
|
28
|
+
error-color: #D93025,
|
|
29
|
+
required-color: #D93025
|
|
30
|
+
);
|
|
31
|
+
|
|
32
|
+
@mixin radio-theme($user-config: ()) {
|
|
33
|
+
$config: map.merge($default-radio-config, $user-config);
|
|
34
|
+
|
|
35
|
+
// Layout
|
|
36
|
+
--cc-radio-label-gap: #{map.get($config, label-gap)};
|
|
37
|
+
--cc-radio-group-gap: #{map.get($config, group-gap)};
|
|
38
|
+
|
|
39
|
+
// Label
|
|
40
|
+
--cc-radio-font-size: #{map.get($config, font-size)};
|
|
41
|
+
--cc-radio-font-weight: #{map.get($config, font-weight)};
|
|
42
|
+
--cc-radio-font-family: #{map.get($config, font-family)};
|
|
43
|
+
--cc-radio-label-color: #{map.get($config, label-color)};
|
|
44
|
+
|
|
45
|
+
// Group label
|
|
46
|
+
--cc-radio-group-label-font-size: #{map.get($config, group-label-font-size)};
|
|
47
|
+
--cc-radio-group-label-font-weight: #{map.get($config, group-label-font-weight)};
|
|
48
|
+
--cc-radio-group-label-color: #{map.get($config, group-label-color)};
|
|
49
|
+
|
|
50
|
+
// Size
|
|
51
|
+
--cc-radio-size: #{map.get($config, size)};
|
|
52
|
+
|
|
53
|
+
// Colors
|
|
54
|
+
--cc-radio-checked-color: #{map.get($config, checked-color)};
|
|
55
|
+
--cc-radio-unchecked-color: #{map.get($config, unchecked-color)};
|
|
56
|
+
|
|
57
|
+
// States
|
|
58
|
+
--cc-radio-disabled-color: #{map.get($config, disabled-color)};
|
|
59
|
+
--cc-radio-error-color: #{map.get($config, error-color)};
|
|
60
|
+
--cc-radio-required-color: #{map.get($config, required-color)};
|
|
61
|
+
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
|
|
3
|
+
$default-search-config: (
|
|
4
|
+
// Layout
|
|
5
|
+
height: 2.5rem,
|
|
6
|
+
padding: 0.375rem 1rem,
|
|
7
|
+
label-gap: 0.5rem,
|
|
8
|
+
|
|
9
|
+
// Borders
|
|
10
|
+
border-radius: 0.4375rem,
|
|
11
|
+
border-color: #BDC1C6,
|
|
12
|
+
border-width: 1px,
|
|
13
|
+
|
|
14
|
+
// Colors
|
|
15
|
+
bg: #FEFEFE,
|
|
16
|
+
color: #202124,
|
|
17
|
+
placeholder-color: #80868B,
|
|
18
|
+
|
|
19
|
+
// Typography
|
|
20
|
+
font-size: 0.875rem,
|
|
21
|
+
font-weight: 400,
|
|
22
|
+
font-family: inherit,
|
|
23
|
+
|
|
24
|
+
// Label
|
|
25
|
+
label-font-size: 0.875rem,
|
|
26
|
+
label-font-weight: 500,
|
|
27
|
+
label-color: #202124,
|
|
28
|
+
|
|
29
|
+
// States
|
|
30
|
+
focus-border-color: #1A73E8,
|
|
31
|
+
disabled-bg: #F1F3F4,
|
|
32
|
+
disabled-color: #80868B,
|
|
33
|
+
|
|
34
|
+
// Icon
|
|
35
|
+
icon-color: #5F6368
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
@mixin search-theme($user-config: ()) {
|
|
39
|
+
$config: map.merge($default-search-config, $user-config);
|
|
40
|
+
|
|
41
|
+
// Layout
|
|
42
|
+
--cc-search-height: #{map.get($config, height)};
|
|
43
|
+
--cc-search-padding: #{map.get($config, padding)};
|
|
44
|
+
--cc-search-label-gap: #{map.get($config, label-gap)};
|
|
45
|
+
|
|
46
|
+
// Borders
|
|
47
|
+
--cc-search-border-radius: #{map.get($config, border-radius)};
|
|
48
|
+
--cc-search-border-color: #{map.get($config, border-color)};
|
|
49
|
+
--cc-search-border-width: #{map.get($config, border-width)};
|
|
50
|
+
|
|
51
|
+
// Colors
|
|
52
|
+
--cc-search-bg: #{map.get($config, bg)};
|
|
53
|
+
--cc-search-color: #{map.get($config, color)};
|
|
54
|
+
--cc-search-placeholder-color: #{map.get($config, placeholder-color)};
|
|
55
|
+
|
|
56
|
+
// Typography
|
|
57
|
+
--cc-search-font-size: #{map.get($config, font-size)};
|
|
58
|
+
--cc-search-font-weight: #{map.get($config, font-weight)};
|
|
59
|
+
--cc-search-font-family: #{map.get($config, font-family)};
|
|
60
|
+
|
|
61
|
+
// Label
|
|
62
|
+
--cc-search-label-font-size: #{map.get($config, label-font-size)};
|
|
63
|
+
--cc-search-label-font-weight: #{map.get($config, label-font-weight)};
|
|
64
|
+
--cc-search-label-color: #{map.get($config, label-color)};
|
|
65
|
+
|
|
66
|
+
// States
|
|
67
|
+
--cc-search-focus-border-color: #{map.get($config, focus-border-color)};
|
|
68
|
+
--cc-search-disabled-bg: #{map.get($config, disabled-bg)};
|
|
69
|
+
--cc-search-disabled-color: #{map.get($config, disabled-color)};
|
|
70
|
+
|
|
71
|
+
// Icon
|
|
72
|
+
--cc-search-icon-color: #{map.get($config, icon-color)};
|
|
73
|
+
}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
@use 'sass:map';
|
|
2
|
+
|
|
3
|
+
$default-toggle-config: (
|
|
4
|
+
// Label
|
|
5
|
+
font-size: 0.875rem,
|
|
6
|
+
font-weight: 400,
|
|
7
|
+
font-family: inherit,
|
|
8
|
+
label-color: #202124,
|
|
9
|
+
|
|
10
|
+
// Size
|
|
11
|
+
width: 2.25rem,
|
|
12
|
+
height: 1rem,
|
|
13
|
+
|
|
14
|
+
// Colors
|
|
15
|
+
track-color: #BDC1C6,
|
|
16
|
+
thumb-color: #FEFEFE,
|
|
17
|
+
checked-track-color: #1A73E8,
|
|
18
|
+
checked-thumb-color: #FEFEFE,
|
|
19
|
+
|
|
20
|
+
// States
|
|
21
|
+
disabled-color: #80868B
|
|
22
|
+
);
|
|
23
|
+
|
|
24
|
+
@mixin toggle-theme($user-config: ()) {
|
|
25
|
+
$config: map.merge($default-toggle-config, $user-config);
|
|
26
|
+
|
|
27
|
+
// Label
|
|
28
|
+
--cc-toggle-font-size: #{map.get($config, font-size)};
|
|
29
|
+
--cc-toggle-font-weight: #{map.get($config, font-weight)};
|
|
30
|
+
--cc-toggle-font-family: #{map.get($config, font-family)};
|
|
31
|
+
--cc-toggle-label-color: #{map.get($config, label-color)};
|
|
32
|
+
|
|
33
|
+
// Size
|
|
34
|
+
--cc-toggle-width: #{map.get($config, width)};
|
|
35
|
+
--cc-toggle-height: #{map.get($config, height)};
|
|
36
|
+
|
|
37
|
+
// Colors
|
|
38
|
+
--cc-toggle-track-color: #{map.get($config, track-color)};
|
|
39
|
+
--cc-toggle-thumb-color: #{map.get($config, thumb-color)};
|
|
40
|
+
--cc-toggle-checked-track-color: #{map.get($config, checked-track-color)};
|
|
41
|
+
--cc-toggle-checked-thumb-color: #{map.get($config, checked-thumb-color)};
|
|
42
|
+
|
|
43
|
+
// States
|
|
44
|
+
--cc-toggle-disabled-color: #{map.get($config, disabled-color)};
|
|
45
|
+
}
|