draft-components 0.60.0 → 0.62.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 (69) hide show
  1. package/components/date-preset-picker-popover/date-preset-picker-popover.d.ts +1 -1
  2. package/components/date-preset-picker-popover/date-preset-picker-popover.js +4 -4
  3. package/components/date-range-picker/date-range-picker.js +2 -2
  4. package/components/datetime-input/date-components.js +7 -12
  5. package/components/datetime-input/datetime-input.js +1 -1
  6. package/components/dialog/dialog.js +2 -1
  7. package/components/inline-message/inline-message.js +2 -1
  8. package/components/number-input/number-input.js +2 -1
  9. package/components/popover/popover.d.ts +1 -1
  10. package/components/popover/popover.js +10 -8
  11. package/components/slider/slider.d.ts +6 -5
  12. package/components/slider/slider.js +26 -8
  13. package/components/table/table-sort-button.js +2 -1
  14. package/components/tabs/tabs-state.js +2 -1
  15. package/components/toaster/toaster.js +1 -1
  16. package/css/draft-components.css +2 -2
  17. package/hooks/use-capture-focus.js +6 -4
  18. package/hooks/use-close-on-click-outside.js +3 -2
  19. package/hooks/use-close-on-esc-press.js +2 -1
  20. package/lib/plain-date-range.js +6 -8
  21. package/lib/plain-date.js +7 -8
  22. package/lib/stack.js +0 -1
  23. package/lib/util.js +1 -1
  24. package/package.json +1 -1
  25. package/scss/components/_actions-group.scss +5 -3
  26. package/scss/components/_alert.scss +34 -32
  27. package/scss/components/_avatar.scss +20 -18
  28. package/scss/components/_box.scss +49 -47
  29. package/scss/components/_breadcrumbs.scss +6 -4
  30. package/scss/components/_button.scss +20 -18
  31. package/scss/components/_calendar.scss +13 -11
  32. package/scss/components/_checkbox.scss +4 -2
  33. package/scss/components/_date-picker.scss +4 -2
  34. package/scss/components/_date-preset-picker-popover.scss +11 -9
  35. package/scss/components/_datetime-input.scss +11 -9
  36. package/scss/components/_dialog.scss +9 -7
  37. package/scss/components/_form-field.scss +4 -2
  38. package/scss/components/_formatted-content.scss +23 -21
  39. package/scss/components/_inline-message.scss +3 -1
  40. package/scss/components/_input.scss +11 -9
  41. package/scss/components/_label.scss +5 -2
  42. package/scss/components/_loading-view.scss +20 -18
  43. package/scss/components/_non-ideal-state-view.scss +27 -25
  44. package/scss/components/_number-input.scss +4 -2
  45. package/scss/components/_radio-button.scss +4 -2
  46. package/scss/components/_radio-group.scss +17 -14
  47. package/scss/components/_scope-buttons.scss +4 -2
  48. package/scss/components/_secret.scss +4 -2
  49. package/scss/components/_segmented-control.scss +7 -5
  50. package/scss/components/_select.scss +9 -7
  51. package/scss/components/_selection-control.scss +11 -9
  52. package/scss/components/_slider.scss +88 -98
  53. package/scss/components/_switch.scss +5 -3
  54. package/scss/components/_table.scss +17 -15
  55. package/scss/components/_tabs.scss +13 -12
  56. package/scss/components/_tag.scss +37 -35
  57. package/scss/components/_text-input.scss +3 -1
  58. package/scss/components/_toast.scss +25 -23
  59. package/scss/components/_toaster.scss +8 -6
  60. package/scss/components/_tooltip.scss +6 -4
  61. package/scss/components/_vertical-navigation.scss +16 -14
  62. package/scss/draft-components-utils.scss +0 -1
  63. package/scss/draft-components.scss +0 -1
  64. package/scss/themes/_default-theme.scss +162 -156
  65. package/scss/utils/_borders.scss +14 -12
  66. package/scss/utils/_gap.scss +14 -12
  67. package/scss/utils/_margin.scss +14 -12
  68. package/scss/utils/_padding.scss +14 -12
  69. package/scss/.DS_Store +0 -0
@@ -1,8 +1,10 @@
1
+ @use '../abstracts' as dc;
2
+
1
3
  .dc-loading-view {
2
4
  font-family: var(--dc-font-base);
3
- font-size: $font-size-base;
4
- padding-right: $gap-4x;
5
- padding-left: $gap-4x;
5
+ font-size: dc.$font-size-base;
6
+ padding-right: dc.$gap-4x;
7
+ padding-left: dc.$gap-4x;
6
8
  text-align: center;
7
9
  color: var(--dc-primary-text-color);
8
10
  }
@@ -12,7 +14,7 @@
12
14
  }
13
15
 
14
16
  .dc-loading-view__content {
15
- margin-top: $gap-3x;
17
+ margin-top: dc.$gap-3x;
16
18
  }
17
19
 
18
20
  .dc-loading-view_pad-y_none {
@@ -21,36 +23,36 @@
21
23
  }
22
24
 
23
25
  .dc-loading-view_pad-y_2xs {
24
- padding-top: $gap-1x;
25
- padding-bottom: $gap-1x;
26
+ padding-top: dc.$gap-1x;
27
+ padding-bottom: dc.$gap-1x;
26
28
  }
27
29
 
28
30
  .dc-loading-view_pad-y_xs {
29
- padding-top: $gap-2x;
30
- padding-bottom: $gap-2x;
31
+ padding-top: dc.$gap-2x;
32
+ padding-bottom: dc.$gap-2x;
31
33
  }
32
34
 
33
35
  .dc-loading-view_pad-y_sm {
34
- padding-top: $gap-4x;
35
- padding-bottom: $gap-4x;
36
+ padding-top: dc.$gap-4x;
37
+ padding-bottom: dc.$gap-4x;
36
38
  }
37
39
 
38
40
  .dc-loading-view_pad-y_md {
39
- padding-top: $gap-8x;
40
- padding-bottom: $gap-8x;
41
+ padding-top: dc.$gap-8x;
42
+ padding-bottom: dc.$gap-8x;
41
43
  }
42
44
 
43
45
  .dc-loading-view_pad-y_lg {
44
- padding-top: $gap-16x;
45
- padding-bottom: $gap-16x;
46
+ padding-top: dc.$gap-16x;
47
+ padding-bottom: dc.$gap-16x;
46
48
  }
47
49
 
48
50
  .dc-loading-view_pad-y_xl {
49
- padding-top: $gap-20x;
50
- padding-bottom: $gap-20x;
51
+ padding-top: dc.$gap-20x;
52
+ padding-bottom: dc.$gap-20x;
51
53
  }
52
54
 
53
55
  .dc-loading-view_pad-y_2xl {
54
- padding-top: $gap-24x;
55
- padding-bottom: $gap-24x;
56
+ padding-top: dc.$gap-24x;
57
+ padding-bottom: dc.$gap-24x;
56
58
  }
@@ -1,9 +1,11 @@
1
+ @use '../abstracts' as dc;
2
+
1
3
  .dc-non-ideal-state {
2
4
  font-family: var(--dc-font-base);
3
- font-size: $font-size-base;
5
+ font-size: dc.$font-size-base;
4
6
  box-sizing: border-box;
5
- padding-right: $gap-4x;
6
- padding-left: $gap-4x;
7
+ padding-right: dc.$gap-4x;
8
+ padding-left: dc.$gap-4x;
7
9
  text-align: center;
8
10
  color: var(--dc-non-ideal-state-text-color);
9
11
  }
@@ -14,7 +16,7 @@
14
16
  }
15
17
 
16
18
  .dc-non-ideal-state__icon {
17
- margin-bottom: $gap-8x;
19
+ margin-bottom: dc.$gap-8x;
18
20
  color: var(--dc-non-ideal-state-icon-color);
19
21
  }
20
22
 
@@ -23,31 +25,31 @@
23
25
  }
24
26
 
25
27
  .dc-non-ideal-state__icon_red {
26
- color: $red-500;
28
+ color: dc.$red-500;
27
29
  }
28
30
 
29
31
  .dc-non-ideal-state__icon_orange {
30
- color: $orange-500;
32
+ color: dc.$orange-500;
31
33
  }
32
34
 
33
35
  .dc-non-ideal-state__icon_blue {
34
- color: $blue-500;
36
+ color: dc.$blue-500;
35
37
  }
36
38
 
37
39
  .dc-non-ideal-state__icon_green {
38
- color: $green-500;
40
+ color: dc.$green-500;
39
41
  }
40
42
 
41
43
  .dc-non-ideal-state__description {
42
- margin-top: $gap-2x;
44
+ margin-top: dc.$gap-2x;
43
45
  }
44
46
 
45
47
  .dc-non-ideal-state__actions {
46
- margin-top: $gap-4x;
48
+ margin-top: dc.$gap-4x;
47
49
  }
48
50
 
49
51
  .dc-non-ideal-state__content {
50
- margin-top: $gap-4x;
52
+ margin-top: dc.$gap-4x;
51
53
  }
52
54
 
53
55
  .dc-non-ideal-state_spacing_none {
@@ -56,36 +58,36 @@
56
58
  }
57
59
 
58
60
  .dc-non-ideal-state_spacing_2xs {
59
- padding-top: $gap-1x;
60
- padding-bottom: $gap-1x;
61
+ padding-top: dc.$gap-1x;
62
+ padding-bottom: dc.$gap-1x;
61
63
  }
62
64
 
63
65
  .dc-non-ideal-state_spacing_xs {
64
- padding-top: $gap-2x;
65
- padding-bottom: $gap-2x;
66
+ padding-top: dc.$gap-2x;
67
+ padding-bottom: dc.$gap-2x;
66
68
  }
67
69
 
68
70
  .dc-non-ideal-state_spacing_sm {
69
- padding-top: $gap-4x;
70
- padding-bottom: $gap-4x;
71
+ padding-top: dc.$gap-4x;
72
+ padding-bottom: dc.$gap-4x;
71
73
  }
72
74
 
73
75
  .dc-non-ideal-state_spacing_md {
74
- padding-top: $gap-8x;
75
- padding-bottom: $gap-8x;
76
+ padding-top: dc.$gap-8x;
77
+ padding-bottom: dc.$gap-8x;
76
78
  }
77
79
 
78
80
  .dc-non-ideal-state_spacing_lg {
79
- padding-top: $gap-16x;
80
- padding-bottom: $gap-16x;
81
+ padding-top: dc.$gap-16x;
82
+ padding-bottom: dc.$gap-16x;
81
83
  }
82
84
 
83
85
  .dc-non-ideal-state_spacing_xl {
84
- padding-top: $gap-20x;
85
- padding-bottom: $gap-20x;
86
+ padding-top: dc.$gap-20x;
87
+ padding-bottom: dc.$gap-20x;
86
88
  }
87
89
 
88
90
  .dc-non-ideal-state_spacing_2xl {
89
- padding-top: $gap-24x;
90
- padding-bottom: $gap-24x;
91
+ padding-top: dc.$gap-24x;
92
+ padding-bottom: dc.$gap-24x;
91
93
  }
@@ -1,3 +1,5 @@
1
+ @use '../abstracts' as dc;
2
+
1
3
  .dc-number-input {
2
4
  display: inline-flex;
3
5
  align-items: center;
@@ -8,10 +10,10 @@
8
10
  }
9
11
 
10
12
  .dc-number-input > * + * {
11
- margin-left: $gap-1x;
13
+ margin-left: dc.$gap-1x;
12
14
  }
13
15
 
14
16
  .dc-number-input__text-input {
15
17
  flex: auto;
16
- width: px-to-rem(160px);
18
+ width: dc.px-to-rem(160px);
17
19
  }
@@ -1,3 +1,5 @@
1
+ @use '../abstracts' as dc;
2
+
1
3
  .dc-radio-btn {
2
4
  --dc-selection-control-size: var(--dc-radio-btn-size);
3
5
  }
@@ -7,7 +9,7 @@
7
9
  }
8
10
 
9
11
  .dc-radio-btn__input {
10
- @include visually-hidden;
12
+ @include dc.visually-hidden;
11
13
  }
12
14
 
13
15
  .dc-radio-btn__radio {
@@ -42,7 +44,7 @@
42
44
  transform: translate(-50%, -50%);
43
45
  border-radius: 50%;
44
46
  background: currentColor;
45
- box-shadow: $shadow-xs;
47
+ box-shadow: dc.$shadow-xs;
46
48
  }
47
49
 
48
50
  .dc-radio-btn__input:focus + .dc-radio-btn__radio {
@@ -1,3 +1,5 @@
1
+ @use '../abstracts' as dc;
2
+
1
3
  .dc-radio-group {
2
4
  font-family: var(--dc-font-base);
3
5
  margin-top: 0;
@@ -7,27 +9,27 @@
7
9
  }
8
10
 
9
11
  .dc-radio-group > * + * {
10
- margin-top: $gap-2x;
12
+ margin-top: dc.$gap-2x;
11
13
  }
12
14
 
13
15
  .dc-radio-group-input {
14
- @include visually-hidden;
16
+ @include dc.visually-hidden;
15
17
  }
16
18
 
17
19
  .dc-radio-group-item {
18
20
  display: flex;
19
21
  align-items: center;
20
22
  box-sizing: border-box;
21
- padding: $gap-2x $gap-4x;
23
+ padding: dc.$gap-2x dc.$gap-4x;
22
24
  cursor: default;
23
25
  border: 2px solid var(--dc-radio-group-border-color);
24
- border-radius: $border-radius-md;
26
+ border-radius: dc.$border-radius-md;
25
27
  }
26
28
 
27
29
  .dc-radio-group-item__check {
28
30
  display: inline-block;
29
- width: px-to-rem(18px);
30
- height: px-to-rem(18px);
31
+ width: dc.px-to-rem(18px);
32
+ height: dc.px-to-rem(18px);
31
33
  color: var(--dc-radio-group-selection-color);
32
34
  border-radius: 50%;
33
35
  box-shadow: inset 0 0 0 1px var(--dc-radio-group-border-color);
@@ -38,23 +40,23 @@
38
40
  }
39
41
 
40
42
  .dc-radio-group-item > * + * {
41
- margin-left: $gap-4x;
43
+ margin-left: dc.$gap-4x;
42
44
  }
43
45
 
44
46
  .dc-radio-group-item__body {
45
- font-size: $font-size-sm;
47
+ font-size: dc.$font-size-sm;
46
48
  flex: auto;
47
49
  }
48
50
 
49
51
  .dc-radio-group-item__label {
50
- font-weight: $font-weight-medium;
52
+ font-weight: dc.$font-weight-medium;
51
53
  margin: 0;
52
54
  padding: 0;
53
55
  color: var(--dc-primary-text-color);
54
56
  }
55
57
 
56
58
  .dc-radio-group-item__description {
57
- margin-top: $gap-1x;
59
+ margin-top: dc.$gap-1x;
58
60
  color: var(--dc-secondary-text-color);
59
61
  }
60
62
 
@@ -62,6 +64,7 @@
62
64
  border-color: var(--dc-radio-group-selection-color);
63
65
  }
64
66
 
67
+ //noinspection CssMissingComma
65
68
  .dc-radio-group-input:checked
66
69
  ~ .dc-radio-group-item
67
70
  .dc-radio-group-item__check-icon {
@@ -78,16 +81,16 @@
78
81
  }
79
82
 
80
83
  .dc-radio-group_type_simple-list > * + * {
81
- margin-top: $gap-1x;
84
+ margin-top: dc.$gap-1x;
82
85
  }
83
86
 
84
87
  .dc-radio-group_type_simple-list .dc-radio-group-item {
85
88
  display: inline-flex;
86
- padding: $gap-1x;
89
+ padding: dc.$gap-1x;
87
90
  border: none;
88
- border-radius: $border-radius-sm;
91
+ border-radius: dc.$border-radius-sm;
89
92
  }
90
93
 
91
94
  .dc-radio-group_type_simple-list .dc-radio-group-item__label {
92
- font-weight: $font-weight-normal;
95
+ font-weight: dc.$font-weight-normal;
93
96
  }
@@ -1,4 +1,6 @@
1
- $dc-scope-buttons-space: $gap-1x;
1
+ @use '../abstracts' as dc;
2
+
3
+ $dc-scope-buttons-space: dc.$gap-1x;
2
4
 
3
5
  .dc-scope-buttons {
4
6
  display: inline-flex;
@@ -29,7 +31,7 @@ $dc-scope-buttons-space: $gap-1x;
29
31
  }
30
32
 
31
33
  .dc-scope-buttons_bottom-pad {
32
- padding-bottom: $gap-1x;
34
+ padding-bottom: dc.$gap-1x;
33
35
  }
34
36
 
35
37
  .dc-scope-buttons > .dc-scope-button + .dc-scope-button {
@@ -1,3 +1,5 @@
1
+ @use '../abstracts' as dc;
2
+
1
3
  .dc-secret {
2
4
  font-family: var(--dc-font-code);
3
5
  position: relative;
@@ -7,7 +9,7 @@
7
9
 
8
10
  .dc-secret__content {
9
11
  text-align: left;
10
- opacity: $opacity-75;
12
+ opacity: dc.$opacity-75;
11
13
  }
12
14
 
13
15
  .dc-secret__btn {
@@ -25,6 +27,6 @@
25
27
 
26
28
  .dc-secret_shown .dc-secret__btn {
27
29
  position: initial;
28
- margin-top: $gap-2x;
30
+ margin-top: dc.$gap-2x;
29
31
  transform: none;
30
32
  }
@@ -1,20 +1,22 @@
1
+ @use '../abstracts' as dc;
2
+
1
3
  .dc-segmented-control {
2
4
  position: relative;
3
5
  display: inline-flex;
4
6
  margin-top: 0;
5
7
  margin-bottom: 0;
6
- padding: px-to-rem(1px) px-to-rem(2px);
8
+ padding: dc.px-to-rem(1px) dc.px-to-rem(2px);
7
9
  list-style: none;
8
- border-radius: $border-radius-lg;
9
- background: rgba($gray-900, $opacity-5);
10
+ border-radius: dc.$border-radius-lg;
11
+ background: rgba(dc.$gray-900, dc.$opacity-5);
10
12
  }
11
13
 
12
14
  .dc-segmented-control_size_sm {
13
- border-radius: $border-radius-md;
15
+ border-radius: dc.$border-radius-md;
14
16
  }
15
17
 
16
18
  .dc-segmented-control_size_lg {
17
- border-radius: $border-radius-xl;
19
+ border-radius: dc.$border-radius-xl;
18
20
  }
19
21
 
20
22
  .dc-segmented-control__radio-btn {
@@ -1,34 +1,36 @@
1
+ @use '../abstracts' as dc;
2
+
1
3
  @function select-arrow-icon($color) {
2
- @return inline-svg(
4
+ @return dc.inline-svg(
3
5
  '<svg width="12" height="16" viewBox="0 0 12 16" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3 11L6 14L9 11" stroke="#{$color}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/><path d="M9 5L6 2L3 5" stroke="#{$color}" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>'
4
6
  );
5
7
  }
6
8
 
7
9
  .dc-select {
8
- line-height: $leading-default;
10
+ line-height: dc.$leading-default;
9
11
  width: auto;
10
12
  padding-right: calc(1.25em + var(--dc-input-gap));
11
13
  padding-left: var(--dc-input-gap);
12
14
  cursor: pointer;
13
15
  color: initial;
14
16
  border: none;
15
- background-image: select-arrow-icon($gray-600);
17
+ background-image: select-arrow-icon(dc.$gray-600);
16
18
  background-repeat: no-repeat;
17
19
  background-position: calc(100% - var(--dc-input-gap)) center;
18
20
  background-size: 0.85em auto;
19
- box-shadow: 0 0 0 1px var(--dc-input-border-color), $shadow-xs;
21
+ box-shadow: 0 0 0 1px var(--dc-input-border-color), dc.$shadow-xs;
20
22
  }
21
23
 
22
24
  .dc-select:disabled {
23
- background-image: select-arrow-icon($gray-400);
25
+ background-image: select-arrow-icon(dc.$gray-400);
24
26
  }
25
27
 
26
28
  .dc-select[multiple] {
27
29
  height: initial;
28
- padding: $gap-2x 0;
30
+ padding: dc.$gap-2x 0;
29
31
  background: var(--dc-input-bg);
30
32
  }
31
33
 
32
34
  .dc-select option {
33
- padding: $gap-1x $gap-3x;
35
+ padding: dc.$gap-1x dc.$gap-3x;
34
36
  }
@@ -1,6 +1,8 @@
1
+ @use '../abstracts' as dc;
2
+
1
3
  .dc-selection-control {
2
- --dc-selection-control-size: #{px-to-rem(18px)};
3
- --dc-selection-control-gap: #{$gap-3x};
4
+ --dc-selection-control-size: #{dc.px-to-rem(18px)};
5
+ --dc-selection-control-gap: #{dc.$gap-3x};
4
6
  }
5
7
 
6
8
  .dc-selection-control {
@@ -18,20 +20,20 @@
18
20
  }
19
21
 
20
22
  .dc-selection-control__label {
21
- font-size: $font-size-sm;
22
- font-weight: $font-weight-medium;
23
- line-height: $leading-default;
23
+ font-size: dc.$font-size-sm;
24
+ font-weight: dc.$font-weight-medium;
25
+ line-height: dc.$leading-tight;
24
26
  display: inline-block;
25
27
  margin-left: var(--dc-selection-control-gap);
26
28
  user-select: none;
27
29
  color: var(--dc-primary-text-color);
28
- @include text-truncate;
30
+ @include dc.text-truncate;
29
31
  }
30
32
 
31
33
  .dc-selection-control__description {
32
- font-size: $font-size-sm;
33
- line-height: $leading-tight;
34
- margin-top: $gap-1x;
34
+ font-size: dc.$font-size-sm;
35
+ line-height: dc.$leading-tight;
36
+ margin-top: dc.$gap-1x;
35
37
  margin-left: calc(
36
38
  var(--dc-selection-control-size) + var(--dc-selection-control-gap)
37
39
  );