@dialpad/dialtone 6.10.0 → 6.14.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.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,50 @@
1
+ # [6.14.0](https://github.com/dialpad/dialtone/compare/v6.13.0...v6.14.0) (2022-01-28)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * uc-11528 updating background replacement icon in dialtone ([#536](https://github.com/dialpad/dialtone/issues/536)) ([eab4a92](https://github.com/dialpad/dialtone/commit/eab4a9291856e8d260e7e0dcdc5d0846db362ca8))
7
+
8
+
9
+ ### Features
10
+
11
+ * add about page ([#537](https://github.com/dialpad/dialtone/issues/537)) ([0d45b71](https://github.com/dialpad/dialtone/commit/0d45b715837dc00a2caaca099c5e02a0d2ed0f0f))
12
+
13
+ # [6.13.0](https://github.com/dialpad/dialtone/compare/v6.12.0...v6.13.0) (2022-01-21)
14
+
15
+
16
+ ### Bug Fixes
17
+
18
+ * **button:** loading spinner off center ([#532](https://github.com/dialpad/dialtone/issues/532)) ([9595374](https://github.com/dialpad/dialtone/commit/9595374fadea5c006f0146b9691ea4e06d85a4ea))
19
+
20
+
21
+ ### Features
22
+
23
+ * add toggle styles ([#533](https://github.com/dialpad/dialtone/issues/533)) ([4aeeece](https://github.com/dialpad/dialtone/commit/4aeeecea4748d56003d1242980af1b438620fdcb))
24
+
25
+ # [6.12.0](https://github.com/dialpad/dialtone/compare/v6.11.0...v6.12.0) (2022-01-13)
26
+
27
+
28
+ ### Features
29
+
30
+ * add documentation for new skeleton component ([#521](https://github.com/dialpad/dialtone/issues/521)) ([574f976](https://github.com/dialpad/dialtone/commit/574f97679619e730050d5a75cadb4fbb020e5af8))
31
+ * implement focus visible ([#524](https://github.com/dialpad/dialtone/issues/524)) ([20938ee](https://github.com/dialpad/dialtone/commit/20938ee94efed2a8ea8c7632a631e2f41ff9a1da))
32
+ * implement focus visible polyfill ([#528](https://github.com/dialpad/dialtone/issues/528)) ([0c3a661](https://github.com/dialpad/dialtone/commit/0c3a661eb2748e03a2a2bfcf75642e7b241bd8bf))
33
+
34
+ # [6.11.0](https://github.com/dialpad/dialtone/compare/v6.10.0...v6.11.0) (2022-01-04)
35
+
36
+
37
+ ### Bug Fixes
38
+
39
+ * generate missing hover/focus classes ([#522](https://github.com/dialpad/dialtone/issues/522)) ([0cc761b](https://github.com/dialpad/dialtone/commit/0cc761b5b6ee86746dfbd54e48400652b819348c))
40
+ * responsive variations not working ([#526](https://github.com/dialpad/dialtone/issues/526)) ([c29d53d](https://github.com/dialpad/dialtone/commit/c29d53dc1c3c89a839d3c9724380f5b2e27e0cc2))
41
+ * svg sizes showing up as NaN in svg utility class page ([#525](https://github.com/dialpad/dialtone/issues/525)) ([67c2b26](https://github.com/dialpad/dialtone/commit/67c2b26704e0bfe1209f578cfcec222645cfc549))
42
+
43
+
44
+ ### Features
45
+
46
+ * add file upload spot illustration ([#527](https://github.com/dialpad/dialtone/issues/527)) ([e1533e8](https://github.com/dialpad/dialtone/commit/e1533e856f570688aa5ffc3dd37ae05c3a842987))
47
+
1
48
  # [6.10.0](https://github.com/dialpad/dialtone/compare/v6.9.0...v6.10.0) (2021-12-15)
2
49
 
3
50
 
@@ -58,9 +58,9 @@
58
58
  --button--bgc: hsla(var(--primary-color-hsl) ~' / ' 10%);
59
59
  }
60
60
 
61
- &:focus {
62
- outline: none;
63
- box-shadow: var(--bs-focus-ring);
61
+ &:focus-visible {
62
+ outline: none;
63
+ box-shadow: var(--bs-focus-ring);
64
64
  }
65
65
 
66
66
  &[disabled] {
@@ -192,7 +192,7 @@
192
192
  --button--bgc: var(--black-100);
193
193
  }
194
194
 
195
- &:focus {
195
+ &:focus-visible {
196
196
  box-shadow: var(--bs-focus-ring-circle);
197
197
  }
198
198
 
@@ -267,7 +267,7 @@
267
267
  --button--bgc: hsla(var(--muted-color-hsl) ~' / ' 7.5%);
268
268
  }
269
269
 
270
- &:focus {
270
+ &:focus-visible {
271
271
  box-shadow: var(--bs-focus-ring-muted);
272
272
  }
273
273
 
@@ -286,7 +286,7 @@
286
286
  --button--fc: var(--error-color-hover);
287
287
  }
288
288
 
289
- &:focus {
289
+ &:focus-visible {
290
290
  box-shadow: var(--bs-focus-ring-error);
291
291
  }
292
292
 
@@ -317,7 +317,7 @@
317
317
  --button--bgc: hsla(var(--white-hsl) ~' / ' 15%);
318
318
  }
319
319
 
320
- &:focus {
320
+ &:focus-visible {
321
321
  box-shadow: var(--bs-focus-ring-inverted);
322
322
  }
323
323
 
@@ -363,13 +363,12 @@
363
363
  background-color: hsl(var(--brand-color-h) var(--brand-color-s) var(--brand-color-l));
364
364
 
365
365
  &:hover,
366
- &:focus,
367
366
  &:active {
368
367
  color: hsla(var(--white-hsl) ~' / ' 90%);
369
368
  background-color: hsl(var(--brand-color-h) calc(var(--brand-color-s) + 2.5%) calc(var(--brand-color-l) - 5%));
370
369
  }
371
370
 
372
- &:focus {
371
+ &:focus-visible {
373
372
  box-shadow: 0 0 0 var(--su1) var(--white), 0 0 0 0.25em hsla(var(--brand-color-h) var(--brand-color-s) var(--brand-color-l) ~' / ' 90%);
374
373
  }
375
374
 
@@ -432,8 +431,6 @@
432
431
  // Show the loading animation
433
432
  &::before {
434
433
  position: absolute;
435
- top: calc(50% - var(--su8));
436
- left: calc(50% - var(--su8));
437
434
  width: var(--su16);
438
435
  height: var(--su16);
439
436
  border: var(--su2) solid currentColor;
@@ -40,8 +40,8 @@
40
40
  cursor: pointer;
41
41
  }
42
42
 
43
- &:focus {
44
- border-radius: 4px;
43
+ &:focus-visible {
44
+ border-radius: var(--br4);
45
45
  outline: none;
46
46
  box-shadow: 0 0 0 var(--su2) var(--focus-ring);
47
47
  }
@@ -60,7 +60,7 @@
60
60
  color: var(--fc-warning-hover);
61
61
  }
62
62
 
63
- &:focus {
63
+ &:focus-visible {
64
64
  box-shadow: 0 0 0 var(--su2) var(--focus-ring-warning);
65
65
  }
66
66
  }
@@ -74,7 +74,7 @@
74
74
  color: var(--error-color-hover);
75
75
  }
76
76
 
77
- &:focus {
77
+ &:focus-visible {
78
78
  box-shadow: 0 0 0 var(--su2) var(--focus-ring-error);
79
79
  }
80
80
  }
@@ -88,7 +88,7 @@
88
88
  color: var(--success-color-hover);
89
89
  }
90
90
 
91
- &:focus {
91
+ &:focus-visible {
92
92
  box-shadow: 0 0 0 var(--su2) var(--focus-ring-success);
93
93
  }
94
94
  }
@@ -102,7 +102,7 @@
102
102
  color: var(--muted-color-hover);
103
103
  }
104
104
 
105
- &:focus {
105
+ &:focus-visible {
106
106
  box-shadow: 0 0 0 var(--su2) var(--focus-ring-muted);
107
107
  }
108
108
  }
@@ -135,7 +135,7 @@
135
135
  color: var(--inverted-color-hover);
136
136
  }
137
137
 
138
- &:focus {
138
+ &:focus-visible {
139
139
  box-shadow: 0 0 0 var(--su2) var(--focus-ring-inverted);
140
140
  }
141
141
  }
@@ -52,12 +52,12 @@
52
52
  display: none;
53
53
  }
54
54
 
55
- &:focus,
56
- &:checked:focus {
57
- --check-radio--bc: var(--check-radio--color);
55
+ &:focus-visible,
56
+ &:checked:focus-visible {
57
+ --check-radio--bc: var(--check-radio--color);
58
58
 
59
- outline: 0;
60
- box-shadow: var(--bs-focus-ring);
59
+ outline: 0;
60
+ box-shadow: var(--bs-focus-ring);
61
61
  }
62
62
 
63
63
  &:checked {
@@ -149,8 +149,8 @@
149
149
  background-size: contain;
150
150
  border-radius: var(--br2);
151
151
 
152
- &:focus,
153
- &:checked:focus {
152
+ &:focus-visible,
153
+ &:checked:focus-visible {
154
154
  border-radius: var(--br2);
155
155
  }
156
156
 
@@ -209,8 +209,8 @@
209
209
  --check-radio--color: var(--warning-color);
210
210
  --check-radio--bc: var(--check-radio--color);
211
211
 
212
- &:focus,
213
- &:checked:focus {
212
+ &:focus-visible,
213
+ &:checked:focus-visible {
214
214
  box-shadow: var(--bs-focus-ring-warning);
215
215
  }
216
216
  }
@@ -219,8 +219,8 @@
219
219
  --check-radio--color: var(--error-color);
220
220
  --check-radio--bc: var(--check-radio--color);
221
221
 
222
- &:focus,
223
- &:checked:focus {
222
+ &:focus-visible,
223
+ &:checked:focus-visible {
224
224
  box-shadow: var(--bs-focus-ring-error);
225
225
  }
226
226
  }
@@ -229,8 +229,8 @@
229
229
  --check-radio--color: var(--success-color);
230
230
  --check-radio--bc: var(--check-radio--color);
231
231
 
232
- &:focus,
233
- &:checked:focus {
232
+ &:focus-visible,
233
+ &:checked:focus-visible {
234
234
  box-shadow: var(--bs-focus-ring-success);
235
235
  }
236
236
  }
@@ -251,9 +251,9 @@
251
251
  --check-radio--bgc: var(--black-075);
252
252
  }
253
253
 
254
- &:focus,
255
- &:checked:focus {
256
- box-shadow: var(--bs-focus-ring), inset 0 0 0 var(--su2) var(--white);
254
+ &:focus-visible,
255
+ &:checked:focus-visible {
256
+ box-shadow: var(--bs-focus-ring), inset 0 0 0 var(--su2) var(--white);
257
257
  }
258
258
 
259
259
  &:checked {
@@ -279,9 +279,9 @@
279
279
  --check-radio--color: var(--warning-color);
280
280
  --check-radio--bc: var(--check-radio--color);
281
281
 
282
- &:focus,
283
- &:checked:focus {
284
- box-shadow: var(--bs-focus-ring-warning), inset 0 0 0 var(--su2) var(--white);
282
+ &:focus-visible,
283
+ &:checked:focus-visible {
284
+ box-shadow: var(--bs-focus-ring-warning), inset 0 0 0 var(--su2) var(--white);
285
285
  }
286
286
  }
287
287
 
@@ -289,9 +289,9 @@
289
289
  --check-radio--color: var(--error-color);
290
290
  --check-radio--bc: var(--check-radio--color);
291
291
 
292
- &:focus,
293
- &:checked:focus {
294
- box-shadow: var(--bs-focus-ring-error), inset 0 0 0 var(--su2) var(--white);
292
+ &:focus-visible,
293
+ &:checked:focus-visible {
294
+ box-shadow: var(--bs-focus-ring-error), inset 0 0 0 var(--su2) var(--white);
295
295
  }
296
296
  }
297
297
 
@@ -299,8 +299,8 @@
299
299
  --check-radio--color: var(--success-color);
300
300
  --check-radio--bc: var(--check-radio--color);
301
301
 
302
- &:focus,
303
- &:checked:focus {
304
- box-shadow: var(--bs-focus-ring-success), inset 0 0 0 var(--su2) var(--white);
302
+ &:focus-visible,
303
+ &:checked:focus-visible {
304
+ box-shadow: var(--bs-focus-ring-success), inset 0 0 0 var(--su2) var(--white);
305
305
  }
306
306
  }
@@ -106,8 +106,8 @@
106
106
  border-color: var(--select--bc);
107
107
  // [1] Reset the appearance
108
108
  -webkit-appearance: none;
109
- -moz-appearance: none;
110
- appearance: none;
109
+ -moz-appearance: none;
110
+ appearance: none;
111
111
 
112
112
  // [2] Update the styles
113
113
  .d-input();
@@ -148,7 +148,7 @@
148
148
  &:focus {
149
149
  --select--bc: var(--success-color);
150
150
 
151
- box-shadow: var(--bs-focus-ring-success);
151
+ box-shadow: var(--bs-focus-ring-success) !important;
152
152
  }
153
153
  }
154
154
 
@@ -158,7 +158,7 @@
158
158
  &:focus {
159
159
  --select--bc: var(--error-color);
160
160
 
161
- box-shadow: var(--bs-focus-ring-error);
161
+ box-shadow: var(--bs-focus-ring-error) !important;
162
162
  }
163
163
  }
164
164
 
@@ -168,7 +168,7 @@
168
168
  &:focus {
169
169
  --select--bc: var(--warning-color);
170
170
 
171
- box-shadow: var(--bs-focus-ring-warning);
171
+ box-shadow: var(--bs-focus-ring-warning) !important;
172
172
  }
173
173
  }
174
174
 
@@ -0,0 +1,43 @@
1
+ //
2
+ // DIALTONE
3
+ // COMPONENTS: SKELETON
4
+ //
5
+ // These are the styles for skeleton component.
6
+ // The --placeholder-from-color and --placeholder-to-color custom properties can be set on the parent class of the
7
+ // placeholder to control the animation colors.
8
+ // For further documentation of these styles, please visit https://dialpad.design/components/skeleton
9
+
10
+ // ============================================================================
11
+ // @ SKELETON CONTAINER
12
+ // ----------------------------------------------------------------------------
13
+ .skeleton-placeholder {
14
+ display: flex;
15
+ width: 100%;
16
+ background: var(--placeholder-from-color, @black-075);
17
+ animation-duration: 1000ms;
18
+ fill: var(--placeholder-from-color, @black-075);
19
+ stroke: none;
20
+
21
+ &--animate {
22
+ animation-name: placeholder-throb;
23
+ animation-iteration-count: infinite;
24
+ }
25
+ }
26
+
27
+ // the animation is used by the skeleton component
28
+ @keyframes placeholder-throb {
29
+ 10% {
30
+ background: var(--placeholder-from-color, @black-075);
31
+ fill: var(--placeholder-from-color, @black-075);
32
+ }
33
+
34
+ 50% {
35
+ background: var(--placeholder-to-color, @black-050);
36
+ fill: var(--placeholder-to-color, @black-050);
37
+ }
38
+
39
+ 90% {
40
+ background: var(--placeholder-from-color, @black-075);
41
+ fill: var(--placeholder-from-color, @black-075);
42
+ }
43
+ }
@@ -82,7 +82,7 @@
82
82
  content: '';
83
83
  }
84
84
 
85
- &:focus {
85
+ &:focus-visible {
86
86
  outline: none;
87
87
  box-shadow: 0 0 0 var(--su2) var(--tab--oc);
88
88
  }
@@ -172,7 +172,7 @@
172
172
 
173
173
  .d-toast--organizer,
174
174
  .d-toast--viewing {
175
- border-top: 4px solid var(--pink-500);
175
+ border-top: var(--su4) solid var(--pink-500);
176
176
 
177
177
  .d-notice__icon {
178
178
  color: var(--pink-500);
@@ -0,0 +1,96 @@
1
+ //@import (reference) '../variables/icons.less';
2
+
3
+ //
4
+ // DIALTONE
5
+ // COMPONENTS: TOGGLE
6
+ //
7
+ // These are toggle classes for Dialpad's design system Dialtone.
8
+ // For further documentation of these and other classes,
9
+ // visit https://dialpad.design/components/toggle
10
+ //
11
+ // TABLE OF CONTENTS
12
+ // • BASE STYLE
13
+ // • CHECKED STYLES
14
+ // • DISABLED STYLES
15
+ //
16
+ //
17
+ // ============================================================================
18
+ // $ BASE STYLE
19
+ // ----------------------------------------------------------------------------
20
+ .d-toggle {
21
+ // Component specific CSS Vars
22
+ // ------------------------------------------------------------------------
23
+ --toggle--ta: var(--ttf-in-out);
24
+ --toggle-ts: var(--td200);
25
+ --toggle-bc: var(--black-200);
26
+
27
+ position: relative;
28
+ display: inline-block;
29
+ box-sizing: border-box;
30
+ width: var(--su48);
31
+ height: var(--su24);
32
+ padding: 0;
33
+ line-height: var(--lh4);
34
+ vertical-align: middle;
35
+ background-color: var(--toggle-bc);
36
+ border: var(--su1) solid var(--toggle-bc);
37
+ border-radius: var(--su48);
38
+ cursor: pointer;
39
+
40
+ &__inner {
41
+ position: absolute;
42
+ top: calc(var(--su4) - var(--su1));
43
+ left: var(--su24);
44
+ width: var(--su16);
45
+ height: var(--su16);
46
+ color: var(--white);
47
+ background-image: url("data:image/svg+xml;charset=UTF-8, %3csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' %3e%3cpath d='M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z' fill='%23fff' /%3e%3c/svg%3e");
48
+ background-repeat: no-repeat;
49
+ }
50
+
51
+ &::after {
52
+ position: absolute;
53
+ top: var(--su1);
54
+ left: var(--su1);
55
+ width: calc(var(--su16) + var(--su4));
56
+ height: calc(var(--su16) + var(--su4));
57
+ background-color: var(--white);
58
+ border-radius: var(--br-circle);
59
+ cursor: pointer;
60
+ transition: left var(--toggle-ts) var(--toggle--ta);
61
+ content: ' ';
62
+ }
63
+
64
+ &:focus-visible {
65
+ outline: none;
66
+ box-shadow: var(--bs-focus-ring);
67
+ }
68
+ }
69
+
70
+ // $$ CHECKED TOGGLE
71
+ // ----------------------------------------------------------------------------
72
+ .d-toggle--checked {
73
+ --toggle-bc: var(--primary-color);
74
+
75
+ .d-toggle__inner {
76
+ left: var(--su6);
77
+ background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9 16.2L4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4L9 16.2z' fill='%23fff'/%3E%3C/svg%3E");
78
+ }
79
+
80
+ &::after {
81
+ left: calc(var(--su24) + var(--su1));
82
+ }
83
+ }
84
+
85
+ // $$ DISABLED TOGGLE
86
+ // ----------------------------------------------------------------------------
87
+ .d-toggle--disabled,
88
+ .d-toggle[disabled] {
89
+ cursor: not-allowed;
90
+ opacity: 0.5;
91
+
92
+ &::after {
93
+ cursor: not-allowed;
94
+ transition-property: none;
95
+ }
96
+ }
@@ -100,8 +100,8 @@
100
100
  &:extend(.d-tooltip--hide);
101
101
  }
102
102
 
103
- &:focus-visible,
104
- &:hover {
103
+ &:hover,
104
+ &:focus-visible {
105
105
  .d-tooltip {
106
106
  &:extend(.d-tooltip--show);
107
107
  }
@@ -21,6 +21,7 @@
21
21
  html,
22
22
  body {
23
23
  margin: var(--su0);
24
+ /* stylelint-disable-next-line meowtec/no-px */
24
25
  font-size: 10px; // [1]
25
26
  }
26
27
 
@@ -56,3 +57,13 @@ body {
56
57
  .d-svg-primary--fill {
57
58
  fill: var(--primary-color);
58
59
  }
60
+
61
+ // ============================================================================
62
+ // @ FOCUS VISIBLE
63
+ // ----------------------------------------------------------------------------
64
+ // This will hide the focus indicator if the element receives focus via the mouse,
65
+ // but it will still show up on keyboard focus.
66
+ //
67
+ .js-focus-visible :focus:not(.focus-visible) {
68
+ outline: none;
69
+ }
@@ -25,9 +25,11 @@
25
25
  @import 'components/notice';
26
26
  @import 'components/radio-checkbox';
27
27
  @import 'components/selects';
28
+ @import 'components/skeleton';
28
29
  @import 'components/table';
29
30
  @import 'components/tabs';
30
31
  @import 'components/tooltip';
32
+ @import 'components/toggle';
31
33
 
32
34
  // -- CONFIG
33
35
  @import 'utilities/internals';
@@ -117,7 +117,9 @@
117
117
  .d-bgg-radial { background-image: radial-gradient(var(--bgg-from) 0%, var(--bgg-to) 100%) !important; }
118
118
  .d-bgg-conic { background-image: conic-gradient(var(--bgg-from) 0%, var(--bgg-to) 100%) !important; }
119
119
  .d-bgg-none { background-image: none !important; }
120
+ #d-internals #generate-hover-focus(d-bgg-none, {.d-bgg-none();});
120
121
  .d-bgg-unset { background-image: unset !important; }
122
+ #d-internals #generate-hover-focus(d-bgg-unset, {.d-bgg-unset();});
121
123
 
122
124
 
123
125
  // ============================================================================
@@ -38,70 +38,85 @@
38
38
  #d-internals #color-classes(green-700);
39
39
  #d-internals #color-classes(red-700);
40
40
 
41
- // -- We can't use the mixin for this one class :(
42
- .d-fc-primary,
43
- .h\:d-fc-primary:hover,
44
- .f\:d-fc-primary:focus {
41
+ .d-fc-primary {
45
42
  color: hsla(var(--primary-color-h) var(--primary-color-s) var(--primary-color-l) ~' / ' var(--fco)) !important;
46
43
  }
47
-
48
- .f\:d-fc-primary:focus-within {
49
- color: hsla(var(--primary-color-h) var(--primary-color-s) var(--primary-color-l) ~' / ' var(--fco)) !important;
50
- }
44
+ #d-internals #generate-hover-focus(d-fc-primary, {.d-fc-primary();});
51
45
 
52
46
  // $$ TEXT COLORS
53
47
  // ----------------------------------------------------------------------------
54
48
  .d-fc-dark { &:extend(.d-fc-black-900); }
55
- .h\:d-fc-dark:hover { &:extend(.h\:d-fc-black-900:hover); }
56
- .f\:d-fc-dark:focus { &:extend(.f\:d-fc-black-900:focus); }
57
- .f\:d-fc-dark:focus-within { &:extend(.f\:d-fc-black-900:focus-within); }
49
+ #d-internals #generate-hover-focus(d-fc-dark, {.d-fc-dark();});
58
50
 
59
51
  .d-fc-medium { &:extend(.d-fc-black-800); }
60
- .h\:d-fc-medium:hover { &:extend(.h\:d-fc-black-800:hover); }
61
- .f\:d-fc-medium:focus { &:extend(.f\:d-fc-black-800:focus); }
62
- .f\:d-fc-medium:focus-within { &:extend(.f\:d-fc-black-800:focus-within); }
52
+ #d-internals #generate-hover-focus(d-fc-medium, {.d-fc-medium();});
63
53
 
64
54
  .d-fc-light { &:extend(.d-fc-black-700); }
65
- .h\:d-fc-light:hover { &:extend(.h\:d-fc-black-700:hover); }
66
- .f\:d-fc-light:focus { &:extend(.f\:d-fc-black-700:focus); }
67
- .f\:d-fc-light:focus-within { &:extend(.f\:d-fc-black-700:focus-within); }
55
+ #d-internals #generate-hover-focus(d-fc-light, {.d-fc-light();});
68
56
 
69
57
  .d-fc-lighter { &:extend(.d-fc-black-600); }
58
+ #d-internals #generate-hover-focus(d-fc-lighter, {.d-fc-lighter();});
59
+
70
60
  .d-fc-purple { &:extend(.d-fc-purple-500); }
61
+ #d-internals #generate-hover-focus(d-fc-purple, {.d-fc-purple();});
62
+
71
63
  .d-fc-orange { &:extend(.d-fc-orange-600); }
64
+ #d-internals #generate-hover-focus(d-fc-orange, {.d-fc-orange();});
65
+
72
66
  .d-fc-pink { &:extend(.d-fc-pink-600); }
67
+ #d-internals #generate-hover-focus(d-fc-pink, {.d-fc-pink();});
73
68
 
74
69
  .d-fc-green,
75
70
  .d-fc-success { &:extend(.d-fc-green-600); }
71
+ #d-internals #generate-hover-focus(d-fc-green, {.d-fc-green();});
72
+ #d-internals #generate-hover-focus(d-fc-success, {.d-fc-success();});
76
73
 
77
74
  .d-fc-yellow,
78
75
  .d-fc-warning { &:extend(.d-fc-yellow-600); }
76
+ #d-internals #generate-hover-focus(d-fc-yellow, {.d-fc-yellow();});
77
+ #d-internals #generate-hover-focus(d-fc-warning, {.d-fc-warning();});
79
78
 
80
79
  .d-fc-red,
81
80
  .d-fc-error,
82
81
  .d-fc-danger { &:extend(.d-fc-red-600); }
82
+ #d-internals #generate-hover-focus(d-fc-red, {.d-fc-red();});
83
+ #d-internals #generate-hover-focus(d-fc-error, {.d-fc-error();});
84
+ #d-internals #generate-hover-focus(d-fc-danger, {.d-fc-danger();});
83
85
 
84
86
  .d-fc-current { color: currentColor !important; }
87
+ #d-internals #generate-hover-focus(d-fc-current, {.d-fc-current();});
85
88
  .d-fc-transparent { color: transparent !important; }
89
+ #d-internals #generate-hover-focus(d-fc-transparent, {.d-fc-transparent();});
86
90
  .d-fc-unset { color: unset !important; }
91
+ #d-internals #generate-hover-focus(d-fc-unset, {.d-fc-unset();});
87
92
 
88
93
 
89
94
  // $$ BACKGROUND COLORS
90
95
  // ----------------------------------------------------------------------------
91
96
  .d-bgc-success { &:extend(.d-bgc-green-500); }
97
+ #d-internals #generate-hover-focus(d-bgc-success, {.d-bgc-success();});
92
98
  .d-bgc-warning { &:extend(.d-bgc-yellow-500); }
99
+ #d-internals #generate-hover-focus(d-bgc-warning, {.d-bgc-warning();});
93
100
 
94
101
  .d-bgc-error,
95
102
  .d-bgc-danger { &:extend(.d-bgc-red-500); }
103
+ #d-internals #generate-hover-focus(d-bgc-error, {.d-bgc-error();});
104
+ #d-internals #generate-hover-focus(d-bgc-danger, {.d-bgc-danger();});
105
+
96
106
  .d-bgc-transparent { background-color: transparent !important; background-image: none !important; }
107
+ #d-internals #generate-hover-focus(d-bgc-transparent, {.d-bgc-transparent();});
97
108
  .d-bgc-unset { background-color: unset !important; background-image: unset !important; }
109
+ #d-internals #generate-hover-focus(d-bgc-unset, {.d-bgc-unset();});
98
110
 
99
111
 
100
112
  // $$ BORDER COLORS
101
113
  // ----------------------------------------------------------------------------
102
114
  .d-bc-transparent { border-color: transparent !important; }
115
+ #d-internals #generate-hover-focus(d-bc-transparent, {.d-bc-transparent();});
103
116
  .d-bc-current { border-color: currentColor !important; }
117
+ #d-internals #generate-hover-focus(d-bc-current , {.d-bc-current();});
104
118
  .d-bc-unset { border-color: unset !important; }
119
+ #d-internals #generate-hover-focus(d-bc-unset, {.d-bc-unset();});
105
120
 
106
121
 
107
122
  // $ OPACITY CLASSES
@@ -142,12 +142,19 @@
142
142
  // $ BOX SHADOW
143
143
  // ----------------------------------------------------------------------------
144
144
  .d-bs-sm { box-shadow: var(--bs-sm) !important; }
145
+ #d-internals #generate-hover-focus(d-bs-sm, {.d-bs-sm();});
145
146
  .d-bs-md { box-shadow: var(--bs-md) !important; }
147
+ #d-internals #generate-hover-focus(d-bs-md, {.d-bs-md ();});
146
148
  .d-bs-lg { box-shadow: var(--bs-lg) !important; }
149
+ #d-internals #generate-hover-focus(d-bs-lg, {.d-bs-lg();});
147
150
  .d-bs-xl { box-shadow: var(--bs-xl) !important; }
151
+ #d-internals #generate-hover-focus(d-bs-xl, {.d-bs-xl();});
148
152
  .d-bs-card { box-shadow: var(--bs-card) !important; }
153
+ #d-internals #generate-hover-focus(d-bs-card, {.d-bs-card();});
149
154
  .d-bs-none { box-shadow: none !important; }
155
+ #d-internals #generate-hover-focus(d-bs-none, {.d-bs-none();});
150
156
  .d-bs-unset { box-shadow: unset !important; }
157
+ #d-internals #generate-hover-focus(d-bs-unset, {.d-bs-unset();});
151
158
 
152
159
 
153
160
  // ============================================================================
@@ -308,7 +308,7 @@
308
308
  '.d-gr',
309
309
  { .template(@value) { grid-row: span @value ~' / ' span @value !important; } },
310
310
  1 2 3 4 5 6 7 8 9 10 11 12
311
- );;
311
+ );
312
312
 
313
313
  .d-gr-full { grid-row: 1 ~' / ' -1 !important; }
314
314