claritas-web-framework 7.0.1 → 8.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (65) hide show
  1. package/dist/index.css +276 -1
  2. package/dist/index.html +1 -1
  3. package/index.html +18 -7
  4. package/package.json +6 -5
  5. package/sass/_functions.scss +3 -145
  6. package/sass/_mixins.scss +0 -5
  7. package/sass/_reboot.scss +72 -410
  8. package/sass/_root.scss +11 -1
  9. package/sass/_variables.scss +120 -219
  10. package/sass/helpers/_grid.scss +11 -15
  11. package/sass/index.scss +2 -0
  12. package/sass/mixins/_button.scss +124 -232
  13. package/sass/mixins/_caret.scss +17 -10
  14. package/sass/mixins/_colors.scss +1 -1
  15. package/sass/mixins/_gradient.scss +0 -8
  16. package/sass/mixins/_group.scss +2 -2
  17. package/sass/mixins/_list.scss +1 -1
  18. package/sass/modules/_alert.scss +8 -8
  19. package/sass/modules/_breadcrumbs.scss +3 -3
  20. package/sass/modules/_button.scss +72 -96
  21. package/sass/modules/_card.scss +41 -56
  22. package/sass/modules/_close.scss +20 -10
  23. package/sass/modules/_details.scss +7 -25
  24. package/sass/modules/_dialog.scss +5 -5
  25. package/sass/modules/_dropdown.scss +28 -56
  26. package/sass/modules/_form.scss +167 -39
  27. package/sass/modules/_list.scss +19 -17
  28. package/sass/modules/_loader.scss +36 -36
  29. package/sass/modules/_nav.scss +95 -66
  30. package/sass/modules/_pill.scss +9 -22
  31. package/sass/modules/_table.scss +4 -4
  32. package/sass/modules/_tabs.scss +34 -57
  33. package/sass/modules/_tag.scss +11 -23
  34. package/sass/modules/_tile.scss +7 -7
  35. package/sass/modules/_tooltip.scss +13 -11
  36. package/sass/modules/form/_checkbox.scss +20 -21
  37. package/sass/modules/form/_file.scss +30 -25
  38. package/sass/modules/form/_formFieldGroup.scss +25 -37
  39. package/sass/modules/form/_output.scss +1 -1
  40. package/sass/modules/form/_progress.scss +20 -33
  41. package/sass/modules/form/_radio.scss +15 -39
  42. package/sass/modules/form/_range.scss +76 -24
  43. package/sass/modules/form/_select.scss +5 -5
  44. package/sass/modules/form/_switch.scss +1 -1
  45. package/sass/modules/form/_text.scss +20 -17
  46. package/sass/modules/form/_textarea.scss +1 -1
  47. package/sass/modules/form/_toggle.scss +23 -52
  48. package/webpack.config.js +5 -22
  49. package/webpack.plugins.js +15 -0
  50. package/webpack.rules.js +8 -0
  51. package/images/block.svg +0 -3
  52. package/images/check.svg +0 -3
  53. package/images/chevron-down.svg +0 -1
  54. package/images/menu.svg +0 -3
  55. package/images/remove.svg +0 -3
  56. package/images/subdirectory.svg +0 -3
  57. package/images/upload.svg +0 -3
  58. package/sass/mixins/_borderRadius.scss +0 -79
  59. package/sass/mixins/_boxShadow.scss +0 -22
  60. package/sass/mixins/_colors.temp.scss +0 -89
  61. package/sass/mixins/_pill.scss +0 -14
  62. package/sass/mixins/_rfs.scss +0 -297
  63. package/sass/mixins/_tag.scss +0 -52
  64. package/sass/mixins/_transition.scss +0 -27
  65. package/sass/modules/_button.old.scss +0 -215
@@ -5,25 +5,21 @@
5
5
  .form--control-checkbox {
6
6
  & > * {
7
7
  &:not(:last-child) {
8
- margin-right: $spacer;
8
+ margin-right: var(--spacer);
9
9
 
10
10
  @include media-breakpoint-up("desktop") {
11
- margin-right: calc($spacer * 0.5);
11
+ margin-right: calc(var(--spacer) * 0.5);
12
12
  }
13
13
  }
14
14
  }
15
15
 
16
16
  & input[type="checkbox"] {
17
+ --input-width: auto;
18
+ --input-desktop-width: auto;
19
+
20
+ aspect-ratio: 1;
17
21
  flex-shrink: 0;
18
- height: $input-size;
19
- width: $input-size;
20
22
  vertical-align: text-bottom;
21
- padding: 0;
22
-
23
- @include media-breakpoint-up("desktop") {
24
- height: calc($input-size * 0.75);
25
- width: calc($input-size * 0.75);
26
- }
27
23
 
28
24
  &::before {
29
25
  content: "";
@@ -34,12 +30,11 @@
34
30
  }
35
31
 
36
32
  &:checked {
37
- background-color: $input-detail-color;
38
- border-color: $input-detail-color;
33
+ background: var(--input-detail-background);
39
34
 
40
35
  &::before {
41
- border-right: 2px solid $white;
42
- border-bottom: 2px solid $white;
36
+ border-right: 2px solid var(--white);
37
+ border-bottom: 2px solid var(--white);
43
38
  height: 65%;
44
39
  width: 32.5%;
45
40
  transform: rotate(45deg) translateY(-15%) translateX(-15%);
@@ -48,30 +43,34 @@
48
43
  &:disabled,
49
44
  &.disabled,
50
45
  &[aria-disabled="true"] {
51
- background-color: rgba($input-detail-color, 40%);
52
- border-color: rgba($input-detail-color, 80%);
46
+ background: var(--input-disabled-detail-background);
53
47
  }
54
48
  }
55
49
 
56
50
  &:indeterminate,
57
51
  &[aria-checked="mixed"] {
58
52
  &::before {
59
- border: 2px solid $white;
53
+ border: 2px solid var(--white);
60
54
  height: 0;
61
55
  width: 65%;
62
56
  }
63
57
  }
64
58
 
59
+ &.input--small {
60
+ --input-width: auto;
61
+ --input-desktop-width: auto;
62
+ }
63
+
65
64
  &.input--large {
66
- height: calc($spacer * 2);
67
- width: calc($spacer * 2);
65
+ --input-width: auto;
66
+ --input-desktop-width: auto;
68
67
  }
69
68
 
70
69
  @each $key, $value in $all-colors {
71
70
  &.input--#{$key} {
72
71
  &:checked {
73
- background-color: $value;
74
- border-color: $value;
72
+ --input-detail-background: hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 100%);
73
+ --input-disabled-detail-background: hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 65%);
75
74
  }
76
75
  }
77
76
  }
@@ -18,11 +18,14 @@
18
18
  order: 999;
19
19
 
20
20
  &:not(:empty) {
21
- border-right: $input-border-width $input-border-style $input-border-color;
22
- border-bottom: $input-border-width $input-border-style $input-border-color;
23
- border-left: $input-border-width $input-border-style $input-border-color;
24
- border-bottom-right-radius: $border-radius-default;
25
- border-bottom-left-radius: $border-radius-default;
21
+ border-right: 1px solid
22
+ hsl(var(--border-color-h) var(--border-color-s) var(--border-color-l) / #{$border-opacity});
23
+ border-bottom: 1px solid
24
+ hsl(var(--border-color-h) var(--border-color-s) var(--border-color-l) / #{$border-opacity});
25
+ border-left: 1px solid
26
+ hsl(var(--border-color-h) var(--border-color-s) var(--border-color-l) / #{$border-opacity});
27
+ border-bottom-right-radius: var(--border-radius-medium);
28
+ border-bottom-left-radius: var(--border-radius-medium);
26
29
  padding: $input-padding-y $input-padding-x;
27
30
  white-space: nowrap;
28
31
  overflow: hidden;
@@ -33,8 +36,8 @@
33
36
 
34
37
  &:empty {
35
38
  & ~ .form--label {
36
- border-bottom-right-radius: $border-radius-default;
37
- border-bottom-left-radius: $border-radius-default;
39
+ border-bottom-right-radius: var(--border-radius-medium);
40
+ border-bottom-left-radius: var(--border-radius-medium);
38
41
  }
39
42
  }
40
43
  }
@@ -47,33 +50,35 @@
47
50
  position: relative;
48
51
  margin-bottom: 0;
49
52
  text-align: center;
50
- padding: $spacer $spacer calc($spacer * 3);
51
- border: $input-border-width $input-border-style $input-border-color;
52
- border-top-left-radius: $border-radius-default;
53
- border-top-right-radius: $border-radius-default;
54
- background-color: $gray-1;
53
+ padding: var(--spacer) var(--spacer) calc(var(--spacer) * 3);
54
+ border: 1px solid hsl(var(--border-color-h) var(--border-color-s) var(--border-color-l) / #{$border-opacity});
55
+ border-top-left-radius: var(--border-radius-medium);
56
+ border-top-right-radius: var(--border-radius-medium);
57
+ background-color: var(--gray-1);
55
58
  transition: $form-transition;
56
59
 
57
60
  &::after {
58
61
  content: "";
59
62
  position: absolute;
60
- width: calc($spacer * 2);
61
- height: calc($spacer * 2);
63
+ width: calc(var(--spacer) * 2);
64
+ height: calc(var(--spacer) * 2);
62
65
  top: auto;
63
66
  left: 50%;
64
- bottom: calc($spacer * 0.5);
67
+ bottom: calc(var(--spacer) * 0.5);
65
68
  transform: translateX(-50%);
66
69
  margin: 0;
67
- background-size: calc($spacer * 2) auto;
70
+ background-size: calc(var(--spacer) * 2) auto;
68
71
  background-image: escape-svg($form-file-indicator);
69
- transition: background-image 0.15s ease-in-out, $form-transition;
72
+ transition:
73
+ background-image 0.15s ease-in-out,
74
+ $form-transition;
70
75
  }
71
76
  }
72
77
 
73
78
  &:hover {
74
79
  & ~ .form--label {
75
- border-color: $input-hover-border-color;
76
- background-color: $gray-2;
80
+ border-color: var(--input-hover-border-color);
81
+ background-color: var(--gray-2);
77
82
 
78
83
  &::after {
79
84
  background-image: escape-svg($form-file-indicator-hover);
@@ -82,7 +87,7 @@
82
87
 
83
88
  & ~ .file--name {
84
89
  &:not(:empty) {
85
- border-color: $input-hover-border-color;
90
+ border-color: var(--input-hover-border-color);
86
91
  }
87
92
  }
88
93
  }
@@ -120,19 +125,19 @@ input[type="file"] {
120
125
 
121
126
  &::-webkit-file-upload-button,
122
127
  &::file-selector-button {
123
- background-color: $light;
128
+ background-color: var(--light);
124
129
  padding: $input-padding-y $input-padding-x;
125
130
  margin: calc($input-padding-y * -1) $input-padding-x calc($input-padding-y * -1) calc($input-padding-x * -1);
126
131
  -webkit-margin-end: $input-padding-x;
127
132
  margin-inline-end: $input-padding-x;
128
- color: $body-color;
133
+ color: var(--body-color);
129
134
  pointer-events: none;
130
- border-color: rgba($border-color-main, $border-opacity);
135
+ border-color: hsl(var(--border-color-h) var(--border-color-s) var(--border-color-l) / #{$border-opacity});
131
136
  border-style: solid;
132
137
  border-width: 0;
133
138
  border-inline-end-width: 1px;
134
139
  border-right-width: 1px;
135
- border-radius: $input-border-radius 0 0 $input-border-radius;
140
+ border-radius: var(--border-radius-medium) 0 0 var(--border-radius-medium);
136
141
  transition: $form-transition;
137
142
  }
138
143
 
@@ -140,7 +145,7 @@ input[type="file"] {
140
145
  &:not(:disabled, [readonly]) {
141
146
  &::-webkit-file-upload-button,
142
147
  &::file-selector-button {
143
- background-color: $gray-2;
148
+ background-color: var(--gray-2);
144
149
  }
145
150
  }
146
151
  }
@@ -21,51 +21,39 @@
21
21
  & progress,
22
22
  & .form--span,
23
23
  & .input--div {
24
- border-radius: $border-radius-none;
24
+ --input-border-radius: 0;
25
25
  }
26
26
 
27
27
  &:first-child {
28
- & button,
29
- & input,
30
- & textarea,
31
- & output,
32
- & select,
33
- & progress,
34
- & .form--span,
35
- & .form--div {
36
- &:not(.button--square),
37
- &:not(.input--square) {
38
- border-bottom-left-radius: $input-border-radius;
39
- border-top-left-radius: $input-border-radius;
40
-
41
- &.button--rounded,
42
- &.input--rounded {
43
- border-bottom-left-radius: $border-radius-round;
44
- border-top-left-radius: $border-radius-round;
45
- }
28
+ & * {
29
+ --input-border-radius: var(--border-radius-medium) 0 0 var(--border-radius-medium);
30
+ --input-small-border-radius: var(--border-radius-small) 0 0 var(--border-radius-small);
31
+ --input-large-border-radius: var(--border-radius-large) 0 0 var(--border-radius-large);
32
+
33
+ --button-border-radius: var(--border-radius-medium) 0 0 var(--border-radius-medium);
34
+ --button-small-border-radius: var(--border-radius-small) 0 0 var(--border-radius-small);
35
+ --button-large-border-radius: var(--border-radius-large) 0 0 var(--border-radius-large);
36
+
37
+ &.button--rounded,
38
+ &.input--rounded {
39
+ border-radius: var(--border-radius-round) 0 0 var(--border-radius-round);
46
40
  }
47
41
  }
48
42
  }
49
43
 
50
44
  &:last-child {
51
- & button,
52
- & input,
53
- & textarea,
54
- & output,
55
- & select,
56
- & progress,
57
- & .form--span,
58
- & .form--div {
59
- &:not(.button--square),
60
- &:not(.input--square) {
61
- border-bottom-right-radius: $input-border-radius;
62
- border-top-right-radius: $input-border-radius;
63
-
64
- &.button--rounded,
65
- &.input--rounded {
66
- border-bottom-right-radius: $border-radius-round;
67
- border-top-right-radius: $border-radius-round;
68
- }
45
+ & * {
46
+ --input-border-radius: 0 var(--border-radius-medium) var(--border-radius-medium) 0;
47
+ --input-small-border-radius: 0 var(--border-radius-small) var(--border-radius-small) 0;
48
+ --input-large-border-radius: 0 var(--border-radius-large) var(--border-radius-large) 0;
49
+
50
+ --button-border-radius: 0 var(--border-radius-medium) var(--border-radius-medium) 0;
51
+ --button-small-border-radius: 0 var(--border-radius-small) var(--border-radius-small) 0;
52
+ --button-large-border-radius: 0 var(--border-radius-large) var(--border-radius-large) 0;
53
+
54
+ &.button--rounded,
55
+ &.input--rounded {
56
+ border-radius: 0 var(--border-radius-round) var(--border-radius-round) 0;
69
57
  }
70
58
  }
71
59
  }
@@ -2,6 +2,6 @@
2
2
  @use "./../../variables" as *;
3
3
 
4
4
  output {
5
- background-color: rgba($black, 5%);
5
+ --input-background: hsl(var(--body-color-h) var(--body-color-s) 95% / 100%);
6
6
  pointer-events: none;
7
7
  }
@@ -2,66 +2,53 @@
2
2
  @use "./../../variables" as *;
3
3
 
4
4
  progress {
5
+ --input-padding-x: 1px;
6
+ --input-padding-y: 1px;
7
+ --input-small-padding-x: 1px;
8
+ --input-small-padding-y: 1px;
9
+ --input-large-padding-x: 1px;
10
+ --input-large-padding-y: 1px;
11
+ --input-height: var(--spacer);
12
+ --input-desktop-height: var(--spacer);
13
+
5
14
  background-color: transparent;
6
- border-radius: $border-radius-round;
7
- height: $spacer;
15
+ border-radius: var(--input-round-border-radius);
8
16
  overflow: hidden;
9
- position: relative;
10
- padding: 0;
11
-
12
- &::before {
13
- content: attr(value);
14
- content: attr(value) " / " attr(max);
15
- position: absolute;
16
- left: 0;
17
- top: 50%;
18
- width: auto;
19
- height: auto;
20
- line-height: 1;
21
- color: $body-color;
22
- padding: 0 calc($spacer * 0.5);
23
- font-size: $font-size-small;
24
- transform: translateY(-50%);
25
- }
26
17
 
27
18
  &::-webkit-progress-bar {
28
- background-color: rgba($black, 7%);
19
+ background-color: hsl(var(--body-color-h) var(--body-color-s) 95% / 100%);
29
20
  }
30
21
 
31
22
  &::-webkit-progress-value {
32
- background-color: $input-detail-color;
33
- border-radius: $border-radius-round;
23
+ background-color: var(--input-detail-background);
24
+ border-radius: var(--input-round-border-radius);
34
25
  }
35
26
 
36
27
  &::-moz-progress-bar {
37
- background-color: rgba($black, 7%);
28
+ background-color: hsl(var(--body-color-h) var(--body-color-s) 95% / 100%);
38
29
  }
39
30
 
40
31
  &::-moz-progress-value {
41
- background-color: $input-detail-color;
42
- border-radius: $border-radius-round;
32
+ background-color: var(--input-detail-background);
33
+ border-radius: var(--input-round-border-radius);
43
34
  }
44
35
 
45
36
  @each $key, $value in $theme-colors {
46
37
  &.input--#{$key} {
47
- color: color.mix(black, $value, 75%);
48
- border-color: $gray-3;
49
- background-color: transparent;
50
-
51
38
  &::-webkit-progress-bar {
52
- background-color: rgba($value, 7%);
39
+ background-color: hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 5%);
53
40
  }
54
41
 
55
42
  &::-moz-progress-bar {
56
- background-color: rgba($value, 7%);
43
+ background-color: hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 5%);
57
44
  }
58
45
 
59
46
  &::-webkit-progress-value {
60
- background-color: $value;
47
+ background-color: hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 100%);
61
48
  }
62
49
 
63
50
  &::-moz-progress-value {
64
- background-color: $value;
51
+ background-color: hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 100%);
65
52
  }
66
53
  }
67
54
  }
@@ -6,26 +6,22 @@
6
6
  .form--control-radio {
7
7
  & > * {
8
8
  &:not(:last-child) {
9
- margin-right: $spacer;
9
+ margin-right: var(--spacer);
10
10
 
11
11
  @include media-breakpoint-up("desktop") {
12
- margin-right: calc($spacer * 0.5);
12
+ margin-right: calc(var(--spacer) * 0.5);
13
13
  }
14
14
  }
15
15
  }
16
16
 
17
17
  & input[type="radio"] {
18
+ --input-width: auto;
19
+ --input-desktop-width: auto;
20
+
21
+ border-radius: var(--input-round-border-radius);
22
+ aspect-ratio: 1;
18
23
  flex-shrink: 0;
19
- height: $input-size;
20
- width: $input-size;
21
24
  vertical-align: text-bottom;
22
- border-radius: $border-radius-round;
23
- padding: 0;
24
-
25
- @include media-breakpoint-up("desktop") {
26
- height: calc($input-size * 0.75);
27
- width: calc($input-size * 0.75);
28
- }
29
25
 
30
26
  &::before {
31
27
  content: "";
@@ -33,47 +29,27 @@
33
29
  margin: auto;
34
30
  inset: 0;
35
31
  overflow: hidden;
32
+ border-radius: var(--input-round-border-radius);
33
+ background: var(--white);
34
+ width: 50%;
35
+ aspect-ratio: 1;
36
36
  }
37
37
 
38
38
  &:checked {
39
- &::before {
40
- border: 7px solid $input-background-color;
41
- border-radius: $border-radius-round;
42
- background: $input-detail-color;
43
-
44
- @include media-breakpoint-up("desktop") {
45
- border-width: 5px;
46
- }
47
- }
39
+ background: var(--input-detail-background);
48
40
 
49
41
  &:disabled,
50
42
  &.disabled,
51
43
  &[aria-disabled="true"] {
52
- background-color: $white;
53
- border-color: rgba($input-detail-color, 40%);
54
-
55
- &::before {
56
- background: rgba($input-detail-color, 40%);
57
- }
44
+ background: var(--input-disabled-detail-background);
58
45
  }
59
46
  }
60
47
 
61
48
  @each $key, $value in $theme-colors {
62
49
  &.input--#{$key} {
63
50
  &:checked {
64
- &::before {
65
- background: $value;
66
- }
67
-
68
- &:disabled,
69
- &.disabled,
70
- &[aria-disabled="true"] {
71
- border-color: rgba($value, 40%);
72
-
73
- &::before {
74
- background: rgba($value, 40%);
75
- }
76
- }
51
+ --input-detail-background: hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 100%);
52
+ --input-disabled-detail-background: hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 65%);
77
53
  }
78
54
  }
79
55
  }
@@ -1,41 +1,61 @@
1
1
  @use "sass:color";
2
2
  @use "./../../variables" as *;
3
3
 
4
- @mixin make-track($color: rgba($black, 7%)) {
5
- background: $color;
6
- border-radius: $border-radius-round;
4
+ @mixin make-track() {
5
+ background: hsl(var(--border-color-h) var(--border-color-s) var(--border-color-l) / 10%);
6
+ border-radius: var(--input-round-border-radius);
7
7
  width: 100%;
8
- height: calc($spacer * 0.5);
8
+ height: calc(var(--spacer) * 0.5);
9
9
  cursor: pointer;
10
10
  }
11
11
 
12
- @mixin make-thumb($focus: false, $disabled: false, $color: $input-detail-color) {
13
- margin-top: calc($spacer * -0.25);
14
- width: $spacer;
15
- height: $spacer;
12
+ @mixin make-thumb(
13
+ $focus: false,
14
+ $disabled: false,
15
+ $color: var(--input-detail-background),
16
+ $shadow: hsl(var(--primary-h) var(--primary-s) var(--primary-l) / 25%)
17
+ ) {
18
+ margin-top: calc(var(--spacer) * -0.25);
19
+ width: var(--spacer);
20
+ height: var(--spacer);
16
21
  background: $color;
17
- border: 1px solid rgba($border-color-main, $border-opacity);
18
- border-radius: $border-radius-round;
22
+ border: 1px solid hsl(var(--border-color-h) var(--border-color-s) var(--border-color-l) / #{$border-opacity});
23
+ border-radius: var(--input-round-border-radius);
19
24
  cursor: pointer;
20
- box-shadow: $box-shadow-medium;
25
+ box-shadow: var(--box-shadow-small);
21
26
  appearance: none;
22
27
 
23
28
  @if $focus == true {
24
- box-shadow: 0 0 0 1px $white, 0 0 0 calc($spacer * 0.25) rgba($color, 25%);
29
+ box-shadow:
30
+ 0 0 0 1px var(--white),
31
+ 0 0 0 calc(var(--spacer) * 0.25) $shadow;
25
32
  }
26
33
 
27
34
  @if $disabled == true {
28
- background: $gray-3;
35
+ background: var(--input-disabled-detail-background);
29
36
  }
30
37
  }
31
38
 
32
39
  input[type="range"] {
33
- appearance: none;
34
- margin: calc($spacer * 0.5) 0;
35
- border-color: transparent;
36
- box-shadow: none;
37
- padding-left: 0;
38
- padding-right: 0;
40
+ --input-border-color: transparent;
41
+ --input-hover-border-color: transparent;
42
+ --input-focus-border-color: transparent;
43
+ --input-active-border-color: transparent;
44
+ --input-disabled-border-color: transparent;
45
+
46
+ --input-box-shadow: none;
47
+ --input-hover-box-shadow: none;
48
+ --input-focus-box-shadow: none;
49
+ --input-active-box-shadow: none;
50
+ --input-disabled-box-shadow: none;
51
+
52
+ --input-disabled-background: hsl(var(--body-color-h) var(--body-color-s) 100% / 100%);
53
+
54
+ --input-padding-x: 0;
55
+ --input-small-padding-x: 0;
56
+ --input-large-padding-x: 0;
57
+
58
+ margin: calc(var(--spacer) * 0.5) 0;
39
59
 
40
60
  &::-moz-range-track {
41
61
  @include make-track;
@@ -53,10 +73,6 @@ input[type="range"] {
53
73
  @include make-thumb(false, false);
54
74
  }
55
75
 
56
- &:hover {
57
- border-color: transparent;
58
- }
59
-
60
76
  &:focus {
61
77
  &::-webkit-slider-runnable-track {
62
78
  @include make-track;
@@ -74,7 +90,7 @@ input[type="range"] {
74
90
  &:disabled,
75
91
  &.disabled,
76
92
  &[aria-disabled="true"] {
77
- background-color: transparent;
93
+ --input-disabled-detail-background: hsl(var(--primary-h) var(--primary-s) calc(var(--primary-l) + 20%) / 100%);
78
94
 
79
95
  &::-webkit-slider-runnable-track {
80
96
  @include make-track;
@@ -92,4 +108,40 @@ input[type="range"] {
92
108
  @include make-thumb(false, true);
93
109
  }
94
110
  }
111
+
112
+ @each $key, $value in $theme-colors {
113
+ &.input--#{$key} {
114
+ --input-disabled-detail-background: hsl(var(--#{$key}-h) var(--#{$key}-s) calc(var(--#{$key}-l) + 20%) / 100%);
115
+
116
+ &::-moz-range-thumb {
117
+ @include make-thumb(false, false, $value, hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 25%));
118
+ }
119
+
120
+ &::-webkit-slider-thumb {
121
+ @include make-thumb(false, false, $value, hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 25%));
122
+ }
123
+
124
+ &:focus {
125
+ &::-moz-range-thumb {
126
+ @include make-thumb(true, false, $value, hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 25%));
127
+ }
128
+
129
+ &::-webkit-slider-thumb {
130
+ @include make-thumb(true, false, $value, hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 25%));
131
+ }
132
+ }
133
+
134
+ &:disabled,
135
+ &.disabled,
136
+ &[aria-disabled="true"] {
137
+ &::-moz-range-thumb {
138
+ @include make-thumb(false, true, $value, hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 25%));
139
+ }
140
+
141
+ &::-webkit-slider-thumb {
142
+ @include make-thumb(false, true, $value, hsl(var(--#{$key}-h) var(--#{$key}-s) var(--#{$key}-l) / 25%));
143
+ }
144
+ }
145
+ }
146
+ }
95
147
  }
@@ -2,21 +2,21 @@
2
2
  @use "./../../functions" as *;
3
3
 
4
4
  select {
5
- padding: $input-padding-y calc($spacer * 2) $input-padding-y $input-padding-x;
6
- padding-inline-start: calc($spacer - 3px);
5
+ padding-right: calc(var(--spacer) * 2);
6
+ padding-inline-start: calc(var(--spacer) - 3px);
7
7
 
8
8
  &:not([multiple]) {
9
9
  background-image: escape-svg($form-select-indicator);
10
10
  background-repeat: no-repeat;
11
- background-position: right calc($spacer * 0.5) center;
12
- background-size: $spacer auto;
11
+ background-position: right calc(var(--spacer) * 0.5) center;
12
+ background-size: var(--spacer) auto;
13
13
  }
14
14
 
15
15
  &[multiple] {
16
16
  padding: 0;
17
17
 
18
18
  & option {
19
- padding: calc($spacer * 0.5) $spacer;
19
+ padding: calc(var(--spacer) * 0.5) var(--spacer);
20
20
  }
21
21
  }
22
22
  }
@@ -15,7 +15,7 @@
15
15
  + .button {
16
16
  pointer-events: none;
17
17
  filter: none;
18
- opacity: $form-check-button-check-disabled-opacity;
18
+ opacity: 0.65;
19
19
  }
20
20
  }
21
21
  }