@dynamic-framework/ui-react 1.26.0 → 1.27.0

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 (51) hide show
  1. package/dist/css/dynamic-ui-non-root.css +269 -905
  2. package/dist/css/dynamic-ui-non-root.min.css +2 -2
  3. package/dist/css/dynamic-ui-root.css +228 -152
  4. package/dist/css/dynamic-ui-root.min.css +2 -2
  5. package/dist/css/dynamic-ui.css +496 -1056
  6. package/dist/css/dynamic-ui.min.css +2 -2
  7. package/dist/index.esm.js +112 -47
  8. package/dist/index.esm.js.map +1 -1
  9. package/dist/index.js +113 -46
  10. package/dist/index.js.map +1 -1
  11. package/dist/types/components/DButtonIcon/DButtonIcon.d.ts +19 -0
  12. package/dist/types/components/DButtonIcon/index.d.ts +2 -0
  13. package/dist/types/components/DInput/DInput.d.ts +3 -2
  14. package/dist/types/components/DInputCheck/DInputCheck.d.ts +3 -1
  15. package/dist/types/components/DInputCounter/DInputCounter.d.ts +2 -1
  16. package/dist/types/components/DInputCurrency/DInputCurrency.d.ts +2 -1
  17. package/dist/types/components/DInputCurrencyBase/DInputCurrencyBase.d.ts +2 -1
  18. package/dist/types/components/DInputMask/DInputMask.d.ts +2 -1
  19. package/dist/types/components/DInputSearch/DInputSearch.d.ts +2 -1
  20. package/dist/types/components/DInputSelect/DInputSelect.d.ts +3 -2
  21. package/dist/types/components/DInputSwitch/DInputSwitch.d.ts +3 -1
  22. package/dist/types/components/DSelect/DSelect.d.ts +3 -3
  23. package/dist/types/components/DStepper/DStepper.d.ts +2 -1
  24. package/dist/types/components/DStepperDesktop/DStepperDesktop.d.ts +2 -1
  25. package/dist/types/components/DTableHead/DTableHead.d.ts +9 -0
  26. package/dist/types/components/DTableHead/index.d.ts +2 -0
  27. package/dist/types/components/DToastContainer/DToastContainer.d.ts +2 -14
  28. package/dist/types/components/DToastContainer/useDToast.d.ts +11 -12
  29. package/dist/types/components/index.d.ts +2 -0
  30. package/dist/types/contexts/DContext.d.ts +1 -1
  31. package/dist/types/hooks/useFormatCurrency.d.ts +2 -1
  32. package/package.json +4 -4
  33. package/src/style/abstracts/_mixins.scss +41 -21
  34. package/src/style/abstracts/variables/_+import.scss +11 -3
  35. package/src/style/abstracts/variables/_border.scss +1 -1
  36. package/src/style/abstracts/variables/_buttons.scss +3 -5
  37. package/src/style/abstracts/variables/_colors.scss +10 -10
  38. package/src/style/abstracts/variables/_forms.scss +24 -50
  39. package/src/style/abstracts/variables/_quick-action-switch.scss +0 -2
  40. package/src/style/base/_alert.scss +1 -1
  41. package/src/style/base/_buttons.scss +41 -16
  42. package/src/style/base/_form-check.scss +2 -19
  43. package/src/style/base/_form-switch.scss +4 -53
  44. package/src/style/components/_+import.scss +3 -2
  45. package/src/style/components/_d-button-icon.scss +26 -0
  46. package/src/style/components/_d-close.scss +11 -0
  47. package/src/style/components/_d-modal.scss +0 -11
  48. package/src/style/components/_d-offcanvas.scss +0 -11
  49. package/src/style/components/_d-quick-action-switch.scss +0 -7
  50. package/src/style/components/_d-table-head.scss +18 -0
  51. package/src/style/root/_root.scss +42 -36
@@ -1,13 +1,13 @@
1
1
  // scss-docs-start form-text-variables
2
2
  $form-text-margin-top: $spacer-2 !default;
3
- $form-text-color: $text-muted !default;
3
+ $form-text-color: var(--#{$prefix}body-color) !default;
4
4
  // scss-docs-end form-text-variables
5
5
 
6
6
  // scss-docs-start form-label-variables
7
7
  $form-label-margin-bottom: 0 !default;
8
- $form-label-font-size: var(--#{$prefix}fs-small) !default;
9
- $form-label-font-weight: var(--#{$prefix}fw-bold) !default;
10
- $form-label-color: var(--#{$prefix}gray) !default;
8
+ $form-label-font-size: var(--#{$prefix}label-font-size) !default;
9
+ $form-label-font-weight: var(--#{$prefix}label-font-weight) !default;
10
+ $form-label-color: var(--#{$prefix}label-color) !default;
11
11
  // scss-docs-end form-label-variables
12
12
 
13
13
  // scss-docs-start form-input-variables
@@ -27,74 +27,49 @@ $input-disabled-color: var(--#{$prefix}gray-300) !default;
27
27
  $input-disabled-bg: var(--#{$prefix}gray-100) !default;
28
28
  $input-disabled-border-color: var(--#{$prefix}gray-300) !default;
29
29
 
30
- $input-color: var(--#{$prefix}gray-900) !default;
30
+ $input-color: var(--#{$prefix}body-color) !default;
31
31
  $input-box-shadow: 0 0 0 transparent !default; // to avoid the none in the bootstrap box-shadow calculation
32
32
 
33
- $input-border-color: var(--#{$prefix}gray-300) !default;
33
+ $input-border-color: var(--#{$prefix}border-color) !default;
34
34
  $input-border-radius: var(--#{$prefix}border-radius-sm) !default;
35
35
  $input-border-radius-sm: var(--#{$prefix}border-radius-sm) !default;
36
36
  $input-border-radius-lg: var(--#{$prefix}border-radius-sm) !default;
37
37
 
38
- $input-focus-border-color: var(--#{$prefix}focus-ring-color) !default; // unused
39
- $input-focus-width: 1px !default;
40
- $input-focus-box-shadow: 0 0 0 1px rgba(var(--#{$prefix}secondary-rgb)) !default;
38
+ $input-focus-border-color: $component-focus-border-color !default; // unused
39
+ $input-focus-width: $input-btn-focus-width !default;
41
40
 
42
- $input-placeholder-color: var(--#{$prefix}gray-300) !default;
41
+ $input-placeholder-color: var(--#{$prefix}border-color) !default;
43
42
 
44
43
  $input-plaintext-color: var(--#{$prefix}body-color) !default;
45
44
  // scss-docs-end form-input-variables
46
45
 
47
46
  // scss-docs-start form-check-variables
48
- // custom
49
- $form-check-size-multiplier: 1.5 !default;
50
- // end custom
51
- $form-check-input-width: 1em * $form-check-size-multiplier !default;
47
+ $form-check-input-width: 1em !default;
52
48
  $form-check-min-height: $form-check-input-width !default;
53
- $form-check-padding-start: $form-check-input-width - .5em * $form-check-size-multiplier !default;
54
- $form-check-margin-bottom: .125rem !default;
55
-
56
- // custom
57
- $form-check-input-border-color: var(--#{$prefix}gray-400) !default;
58
- // end custom
59
-
60
- $form-check-input-focus-box-shadow: none !default;
61
-
62
- // custom
63
- $form-check-input-focus-border-color: $form-check-input-border-color !default;
64
- $form-check-input-focus-outline-color: var(--#{$prefix}focus-ring-color) !default;
65
- $form-check-input-focus-outline: 2px solid $form-check-input-focus-outline-color !default;
66
- $form-check-input-focus-outline-offset: 2px !default;
67
- $form-check-input-hover-border-color: var(--#{$prefix}focus-ring-color) !default;
68
- // end custom
69
-
49
+ $form-check-padding-start: $form-check-input-width - .5em !default;
50
+ $form-check-input-focus-box-shadow: var(--#{$prefix}form-check-input-focus-box-shadow) !default;
51
+ $form-check-input-focus-border: var(--#{$prefix}form-check-input-focus-border-color) !default;
70
52
  $form-check-input-checked-bg-image: url("data:image/svg+xml, <svg viewBox='-4 -6 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' clip-rule='evenodd' d='M14.294 0.594229C14.3863 0.498719 14.4966 0.422536 14.6186 0.370127C14.7406 0.317718 14.8719 0.290132 15.0046 0.288978C15.1374 0.287824 15.2691 0.313126 15.392 0.363407C15.5149 0.413688 15.6265 0.487941 15.7204 0.581833C15.8143 0.675726 15.8886 0.787378 15.9389 0.910275C15.9891 1.03317 16.0144 1.16485 16.0133 1.29763C16.0121 1.43041 15.9846 1.56163 15.9321 1.68363C15.8797 1.80564 15.8036 1.91598 15.708 2.00823L6.70804 11.0082C6.52051 11.1957 6.26621 11.301 6.00104 11.301C5.73588 11.301 5.48157 11.1957 5.29404 11.0082L0.293041 6.00723C0.110883 5.81863 0.0100885 5.56602 0.0123669 5.30383C0.0146453 5.04163 0.119815 4.79082 0.305223 4.60541C0.490631 4.42 0.741443 4.31483 1.00364 4.31255C1.26584 4.31028 1.51844 4.41107 1.70704 4.59323L6.00104 8.88723L14.294 0.594229V0.594229Z' fill='#{$white}'/></svg>") !default;
71
53
  $form-check-radio-checked-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='2' fill='#{$white}'/></svg>") !default;
72
54
 
73
55
  $form-check-input-indeterminate-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><path fill='none' stroke='#{$white}' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/></svg>") !default;
74
-
75
- // custom
76
- $form-check-input-disabled-border-color: var(--#{$prefix}gray-300) !default;
77
- $form-check-input-disabled-bg: var(--#{$prefix}gray-100) !default;
78
- // end custom
79
-
80
56
  // scss-docs-end form-check-variables
81
57
 
82
58
  // scss-docs-start form-switch-variables
83
59
  $form-switch-color: var(--#{$prefix}white) !default;
84
- $form-switch-width: 3em !default;
85
- $form-switch-bg-image: url("data:image/svg+xml,<svg viewBox='-4 -4 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='0.5' y='0.5' width='15' height='15' rx='7.5' fill='#{$white}' stroke='#{$gray-500}'/></svg>") !default;
86
- $form-switch-focus-color: var(--#{$prefix}tertiary) !default;
87
- $form-switch-focus-bg-image: url("data:image/svg+xml,<svg viewBox='-4 -4 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='0.5' y='0.5' width='15' height='15' rx='7.5' fill='#{$white}' stroke='#{$gray-500}'/></svg>") !default;
88
-
89
- $form-switch-checked-color: var(--#{$prefix}white) !default;
90
- $form-switch-checked-bg-image: url("data:image/svg+xml,<svg viewBox='-4 -4 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='0.5' y='0.5' width='15' height='15' rx='7.5' fill='#{$white}' stroke='#{$gray-500}'/></svg>") !default;
60
+ $form-switch-width: 2em !default;
61
+ $form-switch-padding-start: $form-switch-width !default;
62
+ $form-switch-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$gray-300}'/></svg>") !default;
63
+ $form-switch-focus-color: $component-focus-border-color !default;
64
+ $form-switch-focus-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$secondary-300}'/></svg>") !default;
91
65
 
92
66
  // custom
93
- $form-switch-disabled-bg-image: url("data:image/svg+xml,<svg viewBox='-4 -4 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'><rect x='0.5' y='0.5' width='15' height='15' rx='7.5' fill='#{$white}' stroke='#{$gray-300}'/></svg>") !default;
94
- $form-switch-label-color: var(--#{$prefix}gray) !default;
95
- $form-switch-active-label-color: var(--#{$prefix}gray-700) !default;
67
+ $form-switch-valid-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$success}'/></svg>") !default;
68
+ $form-switch-invalid-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$danger}'/></svg>") !default;
96
69
  // end custom
97
70
 
71
+ $form-switch-checked-color: var(--#{$prefix}white) !default;
72
+ $form-switch-checked-bg-image: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$white}'/></svg>") !default;
98
73
  // scss-docs-end form-switch-variables
99
74
 
100
75
  // scss-docs-start input-group-variables
@@ -105,7 +80,6 @@ $input-group-addon-border-color: transparent !default;
105
80
  // custom
106
81
  $form-text-padding-y: 0 !default;
107
82
  $form-text-padding-x: $spacer-2 !default;
108
- $form-text-color: var(--#{$prefix}gray) !default;
109
83
  // end custom
110
84
 
111
85
  // scss-docs-start form-select-variables
@@ -126,7 +100,7 @@ $form-range-track-box-shadow: none !default;
126
100
 
127
101
  $form-range-thumb-width: $spacer-4 !default;
128
102
  $form-range-thumb-box-shadow: 0 .1rem .25rem rgba(var(--#{$prefix}black-rgb), .1) !default;
129
- $form-range-thumb-focus-box-shadow: $component-focus-shadow !default;
103
+ $form-range-thumb-focus-box-shadow: 0 0 0 4px rgba(var(--#{$prefix}primary-rgb), .4) !default;
130
104
  $form-range-thumb-active-bg: $component-active-bg !default;
131
105
  $form-range-thumb-disabled-bg: var(--#{$prefix}gray-500) !default;
132
106
  // scss-docs-end form-range-variables
@@ -152,7 +126,7 @@ $form-feedback-icon-invalid: null !default;
152
126
  // scss-docs-end form-feedback-variables
153
127
 
154
128
  // scss-docs-start form-validation-colors
155
- $form-valid-color: $form-label-color !default;
129
+ $form-valid-color: $form-feedback-icon-valid-color !default;
156
130
  $form-valid-border-color: $form-feedback-valid-color !default;
157
131
  $form-invalid-color: $form-feedback-invalid-color !default;
158
132
  $form-invalid-border-color: $form-feedback-invalid-color !default;
@@ -7,7 +7,6 @@ $quick-action-switch-content-gap: var(--#{$prefix}ref-spacer-1) !default;
7
7
 
8
8
  $quick-action-switch-label-font-size: $font-size-base !default;
9
9
  $quick-action-switch-label-font-weight: $form-label-font-weight !default;
10
- $quick-action-switch-label-color: $form-switch-label-color !default;
11
10
 
12
11
  $quick-action-switch-hint-font-size: var(--#{$prefix}fs-small) !default;
13
12
  $quick-action-switch-hint-font-weight: var(--#{$prefix}fw-normal) !default;
@@ -16,6 +15,5 @@ $quick-action-switch-hint-color: var(--#{$prefix}gray-400) !default;
16
15
  $quick-action-switch-hover-bg: var(--#{$prefix}secondary-soft) !default;
17
16
 
18
17
  $quick-action-switch-checked-bg: var(--#{$prefix}white) !default;
19
- $quick-action-switch-checked-label-color: $form-switch-active-label-color !default;
20
18
  $quick-action-switch-checked-hint-color: var(--#{$prefix}gray-500) !default;
21
19
 
@@ -47,7 +47,7 @@
47
47
 
48
48
  &.alert-soft {
49
49
  --#{$prefix}alert-color: var(--#{$prefix}gray-900);
50
- border-width: 0 0 0 5px;
50
+ --#{$prefix}alert-border: 0;
51
51
 
52
52
  @each $theme, $value in map-remove($theme-colors, "light", "dark") {
53
53
  &.alert-#{$theme} {
@@ -13,7 +13,7 @@
13
13
  --#{$prefix}btn-box-shadow: #{$btn-box-shadow};
14
14
  --#{$prefix}btn-disabled-opacity: #{$btn-disabled-opacity};
15
15
  --#{$prefix}btn-focus-box-shadow: 0 0 0 #{$btn-focus-width} rgba(var(--#{$prefix}btn-focus-shadow-rgb), .5);
16
- --#{$prefix}btn–text-decoration: if($link-decoration == none, null, none);
16
+ --#{$prefix}btn–text-decoration: #{if($link-decoration == none, null, none)};
17
17
  --#{$prefix}btn-lg-padding-y: #{$btn-padding-y-lg};
18
18
  --#{$prefix}btn-lg-padding-x: #{$btn-padding-x-lg};
19
19
  --#{$prefix}btn-lg-font-size: #{$btn-font-size-lg};
@@ -49,14 +49,15 @@
49
49
  }
50
50
 
51
51
  // hover selectors
52
- &:hover,
53
- &.hover {
52
+ &.hover,
53
+ &:hover {
54
54
  color: var(--#{$prefix}btn-hover-color);
55
55
  text-decoration: none;
56
56
  background-color: var(--#{$prefix}btn-hover-bg);
57
57
  border-color: var(--#{$prefix}btn-hover-border-color);
58
58
  }
59
59
 
60
+ .btn-check + &.hover,
60
61
  .btn-check + &:hover {
61
62
  // override for the checkbox/radio buttons
62
63
  color: var(--#{$prefix}btn-color);
@@ -65,21 +66,30 @@
65
66
  }
66
67
 
67
68
  // focus selectors
68
- .btn-check:focus-visible + &,
69
- &:focus-visible:not(:hover),
70
- &.focus-visible:not(:hover) {
71
- // copy of .btn:focus bootstrap + focus var
69
+ &.focus-visible,
70
+ &:focus-visible {
72
71
  color: var(--#{$prefix}btn-focus-color, var(--#{$prefix}btn-hover-color));
73
72
  @include gradient-bg(var(--#{$prefix}btn-focus-bg, var(--#{$prefix}btn-hover-bg)));
74
73
  border-color: var(--#{$prefix}btn-focus-border-color, var(--#{$prefix}btn-hover-border-color));
75
- // end copy
74
+ outline: 0;
75
+ // Avoid using mixin so we can pass custom focus shadow properly
76
+ @if $enable-shadows {
77
+ box-shadow: var(--#{$prefix}btn-box-shadow), var(--#{$prefix}btn-focus-box-shadow);
78
+ } @else {
79
+ box-shadow: var(--#{$prefix}btn-focus-box-shadow);
80
+ }
76
81
  }
77
82
 
78
- .btn-check:focus-visible + &,
79
- &:focus-visible,
80
- &.focus-visible {
81
- outline: var(--#{$prefix}btn-focus-border-width, var(--#{$prefix}btn-border-width)) solid var(--#{$prefix}btn-focus-outline-color, var(--#{$prefix}focus-ring-color));
82
- outline-offset: var(--#{$prefix}btn-focus-outline-offset, var(--#{$prefix}btn-border-width));
83
+ .btn-check.focus-visible + &,
84
+ .btn-check:focus-visible + & {
85
+ border-color: var(--#{$prefix}btn-hover-border-color);
86
+ outline: 0;
87
+
88
+ @if $enable-shadows {
89
+ box-shadow: var(--#{$prefix}btn-box-shadow), var(--#{$prefix}btn-focus-box-shadow);
90
+ } @else {
91
+ box-shadow: var(--#{$prefix}btn-focus-box-shadow);
92
+ }
83
93
  }
84
94
 
85
95
  .btn-check:checked + &,
@@ -92,20 +102,31 @@
92
102
  // Remove CSS gradients if they're enabled
93
103
  background-image: if($enable-gradients, none, null);
94
104
  border-color: var(--#{$prefix}btn-active-border-color);
95
- @include box-shadow(var(--#{$prefix}btn-active-shadow));
105
+ @include box-shadow(var(--#{$prefix}btn-active-box-shadow));
96
106
 
107
+ &.focus-visible,
97
108
  &:focus-visible {
98
109
  // Avoid using mixin so we can pass custom focus shadow properly
99
110
  @if $enable-shadows {
100
- box-shadow: var(--#{$prefix}btn-active-shadow), var(--#{$prefix}btn-focus-box-shadow);
111
+ box-shadow: var(--#{$prefix}btn-active-box-shadow), var(--#{$prefix}btn-focus-box-shadow);
101
112
  } @else {
102
113
  box-shadow: var(--#{$prefix}btn-focus-box-shadow);
103
114
  }
104
115
  }
105
116
  }
106
117
 
107
- &:disabled,
118
+ .btn-check:checked.focus-visible + &,
119
+ .btn-check:checked:focus-visible + & {
120
+ // Avoid using mixin so we can pass custom focus shadow properly
121
+ @if $enable-shadows {
122
+ box-shadow: var(--#{$prefix}btn-active-box-shadow), var(--#{$prefix}btn-focus-box-shadow);
123
+ } @else {
124
+ box-shadow: var(--#{$prefix}btn-focus-box-shadow);
125
+ }
126
+ }
127
+
108
128
  &.disabled,
129
+ &:disabled,
109
130
  fieldset:disabled & {
110
131
  color: var(--#{$prefix}btn-disabled-color);
111
132
  pointer-events: none;
@@ -189,15 +210,19 @@
189
210
  background-image: none;
190
211
  }
191
212
 
213
+ &.hover,
192
214
  &:hover,
215
+ &.focus-visible,
193
216
  &:focus-visible {
194
217
  text-decoration: $link-hover-decoration;
195
218
  }
196
219
 
220
+ &.focus-visible,
197
221
  &:focus-visible {
198
222
  color: var(--#{$prefix}btn-color);
199
223
  }
200
224
 
225
+ &.hover,
201
226
  &:hover {
202
227
  color: var(--#{$prefix}btn-hover-color);
203
228
  }
@@ -1,21 +1,4 @@
1
1
  .form-check-input {
2
- &:hover {
3
- border-color: $form-check-input-hover-border-color;
4
- }
5
-
6
- &:focus {
7
- border-color: $form-check-input-focus-border-color;
8
- outline: $form-check-input-focus-outline;
9
- outline-offset: $form-check-input-focus-outline-offset;
10
- }
11
-
12
- &:checked {
13
- border-color: $form-check-input-checked-border-color;
14
- }
15
-
16
- &:disabled:not(:checked, :indeterminate) {
17
- background-color: $form-check-input-disabled-bg;
18
- border-color: $form-check-input-disabled-border-color;
19
- opacity: 1;
20
- }
2
+ --bs-form-check-input-focus-border-color: #{$component-focus-border-color};
3
+ --bs-form-check-input-focus-box-shadow: #{$input-btn-focus-box-shadow};
21
4
  }
@@ -1,58 +1,9 @@
1
1
  .form-switch {
2
- --#{$prefix}input-switch-bg: var(--#{$prefix}gray-300);
3
- --#{$prefix}input-switch-border-color: var(--#{$prefix}gray-500);
4
- --#{$prefix}input-switch-dot: #{escape-svg($form-switch-bg-image)};
5
- --#{$prefix}input-switch-hover-border-color: var(--#{$prefix}focus-ring-color);
6
- --#{$prefix}input-switch-focus-outline-color: var(--#{$prefix}focus-ring-color);
7
- --#{$prefix}input-switch-active-border-color: var(--#{$prefix}focus-ring-color);
8
- --#{$prefix}input-switch-active-bg: var(--#{$prefix}focus-ring-color);
9
- --#{$prefix}input-switch-disabled-border-color: var(--#{$prefix}gray-300);
10
- --#{$prefix}input-switch-disabled-bg: var(--#{$prefix}gray-100);
11
- --#{$prefix}input-switch-disabled-dot: #{escape-svg($form-switch-disabled-bg-image)};
12
- --#{$prefix}input-switch-label-color: #{$form-switch-label-color};
13
- --#{$prefix}input-switch-active-label-color: #{$form-switch-active-label-color};
14
-
15
- .form-check-label {
16
- color: var(--#{$prefix}input-switch-label-color);
17
- }
18
-
19
- .form-check-input:checked ~ .form-check-label {
20
- color: var(--#{$prefix}input-switch-active-label-color);
21
- }
22
-
23
- .form-check-input {
24
- background-color: var(--#{$prefix}input-switch-bg);
25
- background-image: var(--#{$prefix}input-switch-dot);
26
- border: 1px solid var(--#{$prefix}input-switch-border-color);
27
-
28
- &:checked {
29
- background-color: var(--#{$prefix}input-switch-active-bg);
30
- border-color: var(--#{$prefix}input-switch-active-border-color);
31
- }
32
-
33
- &[disabled]:not(:checked),
34
- &:disabled:not(:checked) {
35
- background-color: var(--#{$prefix}input-switch-disabled-bg);
36
- background-image: var(--#{$prefix}input-switch-disabled-dot);
37
- border-color: var(--#{$prefix}input-switch-disabled-border-color);
38
- }
39
- }
40
-
41
- &:hover {
42
- &.form-switch {
43
- .form-check-input:not([disabled]),
44
- .form-check-input:not(:disabled) {
45
- border-color: var(--#{$prefix}input-switch-hover-border-color);
46
- }
47
- }
2
+ .form-check-input.is-valid:not(:checked) {
3
+ --bs-form-switch-bg: #{escape-svg($form-switch-valid-bg-image)};
48
4
  }
49
5
 
50
- &:focus-within {
51
- &.form-switch {
52
- .form-check-input {
53
- outline: 2px solid var(--#{$prefix}input-switch-focus-outline-color);
54
- outline-offset: 2px;
55
- }
56
- }
6
+ .form-check-input.is-invalid:not(:checked) {
7
+ --bs-form-switch-bg: #{escape-svg($form-switch-invalid-bg-image)};
57
8
  }
58
9
  }
@@ -1,7 +1,6 @@
1
- @import "node_modules/react-toastify/scss/main";
2
-
3
1
  @import "d-icon";
4
2
  @import "d-input-pin";
3
+ @import "d-button-icon";
5
4
  @import "d-quick-action-button";
6
5
  @import "d-quick-action-select";
7
6
  @import "d-quick-action-check";
@@ -13,6 +12,7 @@
13
12
  @import "d-datepicker";
14
13
  @import "d-timepicker";
15
14
  @import "d-tabs";
15
+ @import "d-close";
16
16
  @import "d-popover";
17
17
  @import "d-box-file";
18
18
  @import "d-carousel";
@@ -20,3 +20,4 @@
20
20
  @import "d-stepper-mobile";
21
21
  @import "d-card-account";
22
22
  @import "d-select";
23
+ @import "d-table-head";
@@ -0,0 +1,26 @@
1
+ .d-button-icon {
2
+ --#{$prefix}btn-padding-x: var(--#{$prefix}ref-spacer-3);
3
+ --#{$prefix}btn-padding-y: var(--#{$prefix}ref-spacer-3);
4
+ --#{$prefix}btn-lg-padding-y: var(--#{$prefix}ref-spacer-4);
5
+ --#{$prefix}btn-lg-padding-x: var(--#{$prefix}ref-spacer-4);
6
+ --#{$prefix}btn-sm-padding-y: var(--#{$prefix}ref-spacer-2);
7
+ --#{$prefix}btn-sm-padding-x: var(--#{$prefix}ref-spacer-2);
8
+ }
9
+
10
+ .btn-lg {
11
+ @include button-size(
12
+ var(--#{$prefix}btn-lg-padding-y),
13
+ var(--#{$prefix}btn-lg-padding-x),
14
+ var(--#{$prefix}btn-lg-font-size),
15
+ var(--#{$prefix}btn-lg-border-radius),
16
+ );
17
+ }
18
+
19
+ .btn-sm {
20
+ @include button-size(
21
+ var(--#{$prefix}btn-sm-padding-y),
22
+ var(--#{$prefix}btn-sm-padding-x),
23
+ var(--#{$prefix}btn-sm-font-size),
24
+ var(--#{$prefix}btn-sm-border-radius),
25
+ );
26
+ }
@@ -0,0 +1,11 @@
1
+ .d-close {
2
+ display: flex;
3
+ align-self: center;
4
+ padding: 0;
5
+ background: transparent;
6
+ border: 0;
7
+
8
+ .d-icon {
9
+ --#{$prefix}icon-size: var(--#{$prefix}ref-spacer-4);
10
+ }
11
+ }
@@ -16,17 +16,6 @@
16
16
  }
17
17
  }
18
18
 
19
- .d-modal-close {
20
- align-self: flex-start;
21
- padding: 0;
22
- background: transparent;
23
- border: 0;
24
-
25
- .d-icon {
26
- --#{$prefix}icon-size: var(--#{$prefix}ref-spacer-4);
27
- }
28
- }
29
-
30
19
  .d-modal-separator {
31
20
  height: var(--#{$prefix}modal-separator-height);
32
21
  margin: 0 var(--#{$prefix}modal-separator-margin-x);
@@ -23,17 +23,6 @@
23
23
  padding: var(--#{$prefix}offcanvas-padding-y) var(--#{$prefix}offcanvas-padding-x);
24
24
  }
25
25
 
26
- .d-offcanvas-close {
27
- align-self: flex-start;
28
- padding: 0;
29
- background: transparent;
30
- border: 0;
31
-
32
- .d-icon {
33
- --#{$prefix}icon-size: var(--#{$prefix}ref-spacer-4);
34
- }
35
- }
36
-
37
26
  .d-offcanvas-action-fill > * {
38
27
  flex: 1;
39
28
  }
@@ -8,7 +8,6 @@
8
8
 
9
9
  --#{$prefix}quick-action-switch-label-font-size: #{$quick-action-switch-label-font-size};
10
10
  --#{$prefix}quick-action-switch-label-font-weight: #{$quick-action-switch-label-font-weight};
11
- --#{$prefix}quick-action-switch-label-color: #{$quick-action-switch-label-color};
12
11
 
13
12
  --#{$prefix}quick-action-switch-hint-font-size: #{$quick-action-switch-hint-font-size};
14
13
  --#{$prefix}quick-action-switch-hint-font-weight: #{$quick-action-switch-hint-font-weight};
@@ -17,7 +16,6 @@
17
16
  --#{$prefix}quick-action-switch-hover-bg: #{$quick-action-switch-hover-bg};
18
17
 
19
18
  --#{$prefix}quick-action-switch-checked-bg: #{$quick-action-switch-checked-bg};
20
- --#{$prefix}quick-action-switch-checked-label-color: #{$quick-action-switch-checked-label-color};
21
19
  --#{$prefix}quick-action-switch-checked-hint-color: #{$quick-action-switch-checked-hint-color};
22
20
 
23
21
  display: flex;
@@ -38,10 +36,6 @@
38
36
  &:has(input:checked) {
39
37
  background: var(--#{$prefix}quick-action-switch-checked-bg);
40
38
 
41
- .d-quick-action-switch-label {
42
- color: var(--#{$prefix}quick-action-switch-checked-label-color);
43
- }
44
-
45
39
  .d-quick-action-switch-hint {
46
40
  color: var(--#{$prefix}quick-action-switch-checked-hint-color);
47
41
  }
@@ -56,7 +50,6 @@
56
50
  label {
57
51
  --#{$prefix}label-font-size: var(--#{$prefix}quick-action-switch-label-font-size);
58
52
  --#{$prefix}label-font-weight: var(--#{$prefix}quick-action-switch-label-font-weight);
59
- --#{$prefix}label-color: var(--#{$prefix}quick-action-switch-label-color);
60
53
  }
61
54
 
62
55
  .d-quick-action-switch-hint {
@@ -0,0 +1,18 @@
1
+ .d-table-head {
2
+ button {
3
+ display: inline-flex;
4
+ flex: 1;
5
+ align-items: center;
6
+ justify-content: space-between;
7
+ width: 100%;
8
+ padding: 0;
9
+ font-size: inherit;
10
+ font-weight: inherit;
11
+ background: transparent;
12
+ border: unset;
13
+
14
+ .d-icon {
15
+ --#{$prefix}icon-size: var(--#{$prefix}fs-small);
16
+ }
17
+ }
18
+ }
@@ -167,7 +167,11 @@
167
167
  // scss-docs-start root-focus-variables
168
168
  --#{$prefix}focus-ring-width: #{$focus-ring-width};
169
169
  --#{$prefix}focus-ring-opacity: #{$focus-ring-opacity};
170
- --#{$prefix}focus-ring-color: rgba(var(--#{$prefix}#{$focus-ring-color-mapping}), var(--#{$prefix}focus-ring-opacity));
170
+ --#{$prefix}focus-ring-border-color-rgb: #{$focus-ring-border-color};
171
+ --#{$prefix}focus-ring-border-color: rgb(var(--#{$prefix}focus-ring-border-color-rgb));
172
+ --#{$prefix}focus-ring-base-color-rgb: var(--#{$prefix}#{$focus-ring-color-mapping});
173
+ --#{$prefix}focus-ring-base-color: rgb(var(--#{$prefix}focus-ring-base-color-rgb));
174
+ --#{$prefix}focus-ring-color: rgba(var(--#{$prefix}focus-ring-base-color-rgb), var(--#{$prefix}focus-ring-opacity));
171
175
  // scss-docs-end root-focus-variables
172
176
 
173
177
  // scss-docs-start root-form-validation-variables
@@ -207,7 +211,7 @@
207
211
  --#{$prefix}label-padding-x: var(--#{$prefix}ref-spacer-2);
208
212
  --#{$prefix}label-font-size: var(--#{$prefix}fs-small);
209
213
  --#{$prefix}label-font-weight: var(--#{$prefix}fw-normal);
210
- --#{$prefix}label-color: var(--#{$prefix}gray);
214
+ --#{$prefix}label-color: var(--#{$prefix}gray-700);
211
215
 
212
216
  --#{$prefix}btn-border-radius: #{$btn-border-radius};
213
217
  --#{$prefix}btn-lg-border-radius: #{$btn-border-radius-lg};
@@ -217,66 +221,68 @@
217
221
  @if $color == "light" {
218
222
  @include df-button-variant-variables(
219
223
  "light",
220
- $default-color: var(--#{$prefix}light),
224
+ $default-color: var(--#{$prefix}gray-100),
225
+ $default-text-color: color-contrast-var(map-get($all-colors, gray-100)),
221
226
  $hover-color: var(--#{$prefix}gray-200),
222
- $focus-color: var(--#{$prefix}light),
223
- $active-color: var(--#{$prefix}gray-300),
224
- $default-text-color: color-contrast-var(map-get($all-colors, light)),
225
227
  $hover-text-color: color-contrast-var(map-get($all-colors, gray-200)),
228
+ $focus-color: var(--#{$prefix}gray-200),
226
229
  $focus-text-color: color-contrast-var(map-get($all-colors, gray-200)),
230
+ $active-color: var(--#{$prefix}gray-300),
227
231
  $active-text-color: color-contrast-var(map-get($all-colors, gray-300)),
228
- $disabled-opacity: .65
232
+ $focus-shadow-rgb: var(--#{$prefix}gray-100-rgb),
229
233
  );
230
234
  @include df-button-outline-variant-variables(
231
235
  "light",
232
- $default-color: var(--#{$prefix}light),
233
- $hover-bg-color: var(--#{$prefix}light),
234
- $hover-text-color: color-contrast-var(map-get($all-colors, light)),
235
- $focus-text-color: var(--#{$prefix}light),
236
- $active-text-color: color-contrast-var(map-get($all-colors, light)),
236
+ $default-color: var(--#{$prefix}gray-100),
237
+ $hover-bg-color: var(--#{$prefix}gray-200),
238
+ $hover-text-color: color-contrast-var(map-get($all-colors, gray-200)),
239
+ $focus-bg-color: var(--#{$prefix}gray-200),
240
+ $focus-text-color: color-contrast-var(map-get($all-colors, gray-200)),
237
241
  $active-bg-color: var(--#{$prefix}gray-300),
238
- $active-border-color: var(--#{$prefix}gray-300)
242
+ $active-text-color: color-contrast-var(map-get($all-colors, gray-300)),
243
+ $focus-shadow-rgb: var(--#{$prefix}gray-100-rgb),
239
244
  );
240
245
  @include df-button-link-variant-variables(
241
246
  "light",
242
- $default-color: var(--#{$prefix}light),
243
- $hover-bg-color: var(--#{$prefix}light),
244
- $hover-text-color: color-contrast-var(map-get($all-colors, light)),
245
- $focus-text-color: var(--#{$prefix}light),
246
- $active-text-color: color-contrast-var(map-get($all-colors, light)),
247
- $active-bg-color: var(--#{$prefix}gray-300)
247
+ $default-color: var(--#{$prefix}gray-100),
248
+ $hover-text-color: var(--#{$prefix}gray-200),
249
+ $focus-text-color: var(--#{$prefix}gray-200),
250
+ $active-text-color: color-contrast-var(map-get($all-colors, gray-300)),
251
+ $active-bg-color: var(--#{$prefix}gray-300),
252
+ $focus-shadow-rgb: var(--#{$prefix}gray-100-rgb),
248
253
  );
249
254
  } @else if $color == "dark" {
250
255
  @include df-button-variant-variables(
251
256
  "dark",
252
- $default-color: var(--#{$prefix}dark),
257
+ $default-color: var(--#{$prefix}gray-900),
258
+ $default-text-color: color-contrast-var(map-get($all-colors, gray-900)),
253
259
  $hover-color: var(--#{$prefix}gray-800),
254
- $focus-color: var(--#{$prefix}dark),
255
- $active-color: var(--#{$prefix}gray-700),
256
- $default-text-color: color-contrast-var(map-get($all-colors, dark)),
257
260
  $hover-text-color: color-contrast-var(map-get($all-colors, gray-800)),
261
+ $focus-color: var(--#{$prefix}gray-800),
258
262
  $focus-text-color: color-contrast-var(map-get($all-colors, gray-800)),
263
+ $active-color: var(--#{$prefix}gray-700),
259
264
  $active-text-color: color-contrast-var(map-get($all-colors, gray-700)),
260
- $disabled-opacity: .65
265
+ $focus-shadow-rgb: var(--#{$prefix}gray-900-rgb),
261
266
  );
262
267
  @include df-button-outline-variant-variables(
263
268
  "dark",
264
- $default-color: var(--#{$prefix}dark),
265
- $hover-bg-color: var(--#{$prefix}dark),
266
- $hover-text-color: color-contrast-var(map-get($all-colors, dark)),
267
- $focus-text-color: var(--#{$prefix}dark),
268
- $active-text-color: color-contrast-var(map-get($all-colors, dark)),
269
+ $default-color: var(--#{$prefix}gray-900),
270
+ $hover-bg-color: var(--#{$prefix}gray-800),
271
+ $hover-text-color: color-contrast-var(map-get($all-colors, gray-800)),
272
+ $focus-bg-color: var(--#{$prefix}gray-800),
273
+ $focus-text-color: color-contrast-var(map-get($all-colors, gray-800)),
269
274
  $active-bg-color: var(--#{$prefix}gray-700),
270
- $active-border-color: var(--#{$prefix}gray-700)
275
+ $active-text-color: color-contrast-var(map-get($all-colors, gray-700)),
276
+ $focus-shadow-rgb: var(--#{$prefix}gray-900-rgb),
271
277
  );
272
278
  @include df-button-link-variant-variables(
273
279
  "dark",
274
- $default-color: var(--#{$prefix}dark),
275
- $hover-bg-color: var(--#{$prefix}dark),
276
- $hover-text-color: color-contrast-var(map-get($all-colors, dark)),
277
- $focus-text-color: var(--#{$prefix}dark),
278
- $active-text-color: color-contrast-var(map-get($all-colors, dark)),
279
- $active-bg-color: var(--#{$prefix}gray-700)
280
+ $default-color: var(--#{$prefix}gray-900),
281
+ $hover-text-color: var(--#{$prefix}gray-800),
282
+ $focus-text-color: var(--#{$prefix}gray-800),
283
+ $active-text-color: color-contrast-var(map-get($all-colors, gray-700)),
284
+ $active-bg-color: var(--#{$prefix}gray-700),
285
+ $focus-shadow-rgb: var(--#{$prefix}gray-900-rgb),
280
286
  );
281
287
  } @else {
282
288
  @include df-button-variant-variables($color);