@dialpad/dialtone 8.21.4 → 8.21.5

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 (35) hide show
  1. package/CHANGELOG.json +1 -1
  2. package/lib/build/less/components/avatar.less +3 -0
  3. package/lib/build/less/components/breadcrumbs.less +5 -0
  4. package/lib/build/less/components/chip.less +6 -0
  5. package/lib/build/less/components/codeblock.less +26 -0
  6. package/lib/build/less/components/collapsible.less +33 -0
  7. package/lib/build/less/components/combobox.less +28 -0
  8. package/lib/build/less/components/datepicker.less +84 -41
  9. package/lib/build/less/components/image-viewer.less +35 -0
  10. package/lib/build/less/components/input.less +31 -0
  11. package/lib/build/less/components/keyboard-shortcut.less +39 -0
  12. package/lib/build/less/components/list-item-group.less +17 -0
  13. package/lib/build/less/components/radio-checkbox.less +26 -0
  14. package/lib/build/less/dialtone.less +6 -0
  15. package/lib/dist/css/dialtone.css +228 -41
  16. package/lib/dist/css/dialtone.min.css +1 -1
  17. package/package.json +6 -5
  18. package/lib/build/js/dialtone_health_check/deprecated_icons.js +0 -105
  19. package/lib/build/js/dialtone_health_check/index.js +0 -82
  20. package/lib/build/js/dialtone_health_check/non_dialtone_properties.js +0 -44
  21. package/lib/build/js/dialtone_migration_helper/configs/box-shadows.mjs +0 -19
  22. package/lib/build/js/dialtone_migration_helper/configs/colors.mjs +0 -69
  23. package/lib/build/js/dialtone_migration_helper/configs/fonts.mjs +0 -49
  24. package/lib/build/js/dialtone_migration_helper/configs/size-and-space.mjs +0 -124
  25. package/lib/build/js/dialtone_migration_helper/helpers.mjs +0 -212
  26. package/lib/build/js/dialtone_migration_helper/index.mjs +0 -135
  27. package/lib/dist/js/dialtone_health_check/deprecated_icons.js +0 -105
  28. package/lib/dist/js/dialtone_health_check/index.js +0 -82
  29. package/lib/dist/js/dialtone_health_check/non_dialtone_properties.js +0 -44
  30. package/lib/dist/js/dialtone_migration_helper/configs/box-shadows.mjs +0 -19
  31. package/lib/dist/js/dialtone_migration_helper/configs/colors.mjs +0 -69
  32. package/lib/dist/js/dialtone_migration_helper/configs/fonts.mjs +0 -49
  33. package/lib/dist/js/dialtone_migration_helper/configs/size-and-space.mjs +0 -124
  34. package/lib/dist/js/dialtone_migration_helper/helpers.mjs +0 -212
  35. package/lib/dist/js/dialtone_migration_helper/index.mjs +0 -135
@@ -75,10 +75,13 @@
75
75
  }
76
76
 
77
77
  &__initials {
78
+ position: absolute;
79
+ z-index: var(--zi-base);
78
80
  font-weight: var(--dt-font-weight-bold);
79
81
  font-size: var(--avatar-size-text);
80
82
  line-height: var(--dt-font-line-height-100);
81
83
  text-transform: uppercase;
84
+ user-select: none;
82
85
  }
83
86
 
84
87
  &__icon {
@@ -65,6 +65,11 @@
65
65
 
66
66
  .d-link {
67
67
  color: var(--breadcrumbs-color-text);
68
+ text-decoration: none;
69
+
70
+ &:hover {
71
+ text-decoration: underline;
72
+ }
68
73
  }
69
74
 
70
75
  // -- SELECTED STATE (CURRENT PAGE)
@@ -128,6 +128,12 @@
128
128
  background-color: var(--dt-color-black-400);
129
129
  }
130
130
 
131
+ .d-chip__text {
132
+ overflow: hidden;
133
+ white-space: nowrap;
134
+ text-overflow: ellipsis;
135
+ }
136
+
131
137
  // ============================================================================
132
138
  // $ SIZES
133
139
  // ----------------------------------------------------------------------------
@@ -0,0 +1,26 @@
1
+ //
2
+ // DIALTONE
3
+ // COMPONENTS: Codeblock
4
+ //
5
+ // These are the styles for codeblock component.
6
+ //
7
+ // TABLE OF CONTENTS
8
+ // • BASE STYLE
9
+ //
10
+ // ============================================================================
11
+ // $ BASE STYLE
12
+ // ----------------------------------------------------------------------------
13
+
14
+ .d-codeblock {
15
+ display: block;
16
+ padding: var(--dt-space-400);
17
+ color: var(--dt-color-foreground-secondary);
18
+ font-size: var(--dt-font-size-200);
19
+ font-family: var(--dt-font-family-mono);
20
+ line-height: var(--dt-font-line-height-400);
21
+ white-space: pre-wrap;
22
+ background-color: var(--dt-color-surface-secondary);
23
+ border: var(--dt-size-100) solid;
24
+ border-color: var(--dt-color-border-subtle);
25
+ border-radius: var(--dt-size-radius-400);
26
+ }
@@ -0,0 +1,33 @@
1
+ //
2
+ // DIALTONE
3
+ // COMPONENTS: COLLAPSIBLE
4
+ //
5
+ // These are collapsible classes for Dialpad's design system Dialtone.
6
+ // For further documentation of these and other classes,
7
+ // visit https://dialpad.design/components/collapsible
8
+ //
9
+ // TABLE OF CONTENTS
10
+ // • BASE STYLE
11
+ //
12
+ // ============================================================================
13
+ // $ BASE STYLE
14
+ // ----------------------------------------------------------------------------
15
+ .d-collapsible__icon {
16
+ --icon-base-scale: var(--dt-size-400);
17
+ --icon-size-300: calc(var(--icon-base-scale) * 2.25);
18
+ --icon-size: var(--icon-size-300);
19
+
20
+ flex: none;
21
+ flex-shrink: 0;
22
+ width: var(--icon-size);
23
+ height: var(--icon-size);
24
+ margin-right: var(--dt-space-400);
25
+ fill: currentColor;
26
+ }
27
+
28
+ .d-collapsible__anchor-text {
29
+ margin-right: auto;
30
+ overflow: hidden;
31
+ white-space: nowrap;
32
+ text-overflow: ellipsis;
33
+ }
@@ -0,0 +1,28 @@
1
+ //
2
+ // DIALTONE
3
+ // COMPONENTS: COMBOBOX
4
+ //
5
+ // These are combobox classes for Dialpad's design system Dialtone.
6
+ // For further documentation of these and other classes,
7
+ // visit https://dialpad.design/components/combobox
8
+ //
9
+ // TABLE OF CONTENTS
10
+ // • EMPTY LIST
11
+ // • LOADING LIST LIST
12
+ //
13
+ // ============================================================================
14
+ // $ EMPTY LIST
15
+ // ----------------------------------------------------------------------------
16
+ .d-combobox__empty-list {
17
+ padding: var(--dt-space-0);
18
+ }
19
+
20
+ // ============================================================================
21
+ // $ LOADING LIST
22
+ // ----------------------------------------------------------------------------
23
+ .d-combobox__loading-list {
24
+ max-height: var(--dt-size-925);
25
+ margin-top: var(--dt-space-400);
26
+ padding: var(--dt-space-0);
27
+ overflow-y: auto;
28
+ }
@@ -11,38 +11,86 @@
11
11
  // $ BASE STYLE
12
12
  // ----------------------------------------------------------------------------
13
13
  .d-datepicker {
14
- width: calc(var(--dt-size-925) - var(--dt-size-550));
15
- padding: var(--dt-size-500);
14
+ --datepicker-width: calc(var(--dt-size-300) * 75); // A bit of a magic number as default fixed size, may use CSS utilities to override
15
+ --datepicker-day-size: calc(var(--dt-size-600) - var(--dt-size-200)); // Emulates SM button since Vue component in lieu of Vue component using DT button
16
+
17
+ display: flex;
18
+ flex-direction: column;
19
+ gap: var(--dt-space-400);
20
+ width: var(--datepicker-width);
21
+ padding: var(--dt-space-500);
16
22
 
17
23
  p {
18
24
  display: flex;
19
- margin: 0;
20
- font-weight: 400;
21
- font-size: var(--dt-size-450);
22
- font-family: inherit;
23
- font-style: normal;
25
+ color: var(--dt-color-foreground-secondary);
26
+ font-size: var(--dt-font-size-100);
24
27
  text-transform: uppercase;
25
28
  }
26
29
 
27
30
  &--body {
28
- padding: 0 var(--dt-size-400);
31
+ padding: 0;
32
+ }
33
+
34
+ // TODO: update VUE component to be use a raw <table>
35
+ &__month-year-picker {
36
+ display: flex;
37
+ gap: var(--dt-space-500);
38
+ align-items: center;
39
+ justify-content: space-between;
40
+
41
+ > div {
42
+ display: flex;
43
+ gap: var(--dt-space-200);
44
+ }
45
+
46
+ button {
47
+ // TODO: all of this should be replaced with the Vue DT button
48
+ display: inline-flex;
49
+ align-items: center;
50
+ justify-content: center;
51
+ width: var(--datepicker-day-size);
52
+ height: var(--datepicker-day-size);
53
+ padding: 0;
54
+ color: var(--dt-action-color-foreground-base-default);
55
+ background-color: var(--dt-action-color-background-base-default);
56
+ border: none;
57
+ border-radius: var(--dt-size-radius-circle);
58
+ cursor: pointer;
59
+
60
+ &:hover {
61
+ color: var(--dt-action-color-foreground-base-hover);
62
+ background-color: var(--dt-action-color-background-base-hover);
63
+ }
64
+
65
+ &:active {
66
+ color: var(--dt-action-color-foreground-base-active);
67
+ background-color: var(--dt-action-color-background-base-active);
68
+ }
69
+ }
70
+ }
71
+
72
+ &__calendar {
73
+ display: flex;
74
+ flex-direction: column;
75
+ gap: var(--dt-space-200);
29
76
  }
30
77
 
31
78
  &__week-day {
32
79
  display: flex;
80
+ align-items: center;
33
81
  justify-content: space-between;
34
- margin-bottom: var(--dt-size-500);
35
82
 
36
83
  > div {
37
84
  display: flex;
38
85
  align-items: center;
39
86
  justify-content: center;
40
- width: var(--dt-size-550);
41
- height: var(--dt-size-550);
87
+ width: var(--datepicker-day-size);
88
+ height: var(--datepicker-day-size);
42
89
 
43
90
  p {
44
91
  margin: 0;
45
- color: var(--dt-color-surface-strong);
92
+ color: var(--dt-color-foreground-tertiary);
93
+ font-weight: var(--dt-font-weight-medium);
46
94
  }
47
95
  }
48
96
  }
@@ -51,53 +99,48 @@
51
99
  display: flex;
52
100
  align-items: center;
53
101
  justify-content: space-between;
54
- margin-bottom: var(--dt-size-400);
55
102
  }
56
103
 
57
104
  &__day {
58
- width: var(--dt-size-550);
59
- height: var(--dt-size-550);
105
+ // TODO: all of this should be replaced with the Vue DT button
106
+ width: var(--datepicker-day-size);
107
+ height: var(--datepicker-day-size);
60
108
  padding: 0;
61
- font-size: var(--dt-size-450);
109
+ color: var(--dt-action-color-foreground-muted-default);
110
+ font-size: var(--dt-font-size-100);
111
+ font-variant-numeric: tabular-nums;
112
+ line-height: 1;
62
113
  background-color: transparent;
63
114
  border: none;
64
- border-radius: calc(var(--dt-size-650) + var(--dt-size-200));
115
+ border-radius: var(--dt-size-radius-circle);
65
116
  cursor: pointer;
66
117
 
67
118
  &--disabled {
68
- color: var(--dt-color-surface-bold);
119
+ color: var(--dt-color-foreground-muted);
120
+ cursor: default;
69
121
  }
70
122
 
71
123
  &--selected {
72
- color: var(--dt-color-foreground-primary);
73
- background: var(--dt-color-purple-400);
124
+ color: var(--dt-color-neutral-white);
125
+ background: var(--dt-color-brand-purple);
74
126
  }
75
127
 
76
- &:focus {
77
- box-shadow: var(--dt-shadow-focus);
128
+ &:hover:not(.d-datepicker__day--selected, .d-datepicker__day--disabled) {
129
+ color: var(--dt-action-color-foreground-muted-hover);
130
+ background-color: var(--dt-action-color-background-muted-hover);
78
131
  }
79
- }
80
132
 
81
- &__month-year-picker {
82
- display: flex;
83
- align-items: center;
84
- justify-content: space-between;
85
- width: 100%;
86
- height: 100%;
87
- margin-bottom: var(--dt-size-525);
133
+ &:active:not(.d-datepicker__day--selected, .d-datepicker__day--disabled) {
134
+ color: var(--dt-action-color-foreground-muted-active);
135
+ background-color: var(--dt-action-color-background-muted-active);
136
+ }
88
137
 
89
- > div {
90
- display: inline-flex;
91
- }
138
+ &:focus-visible {
139
+ box-shadow: var(--dt-shadow-focus);
140
+ }
92
141
 
93
- button {
94
- display: inline-flex;
95
- align-items: center;
96
- padding: 0;
97
- color: var(--dt-action-color-foreground-base-default);
98
- background-color: transparent;
99
- border: none;
100
- cursor: pointer;
142
+ &:focus-visible:not(.d-datepicker__day--selected) {
143
+ background-color: var(--dt-color-surface-moderate);
101
144
  }
102
145
  }
103
146
  }
@@ -0,0 +1,35 @@
1
+ //
2
+ // DIALTONE
3
+ // COMPONENTS: Image Viewer
4
+ //
5
+ // These are the styles for Image Viewer component.
6
+ //
7
+ // TABLE OF CONTENTS
8
+ // • BASE STYLE
9
+ //
10
+ // ============================================================================
11
+ // $ BASE STYLE
12
+ // ----------------------------------------------------------------------------
13
+ .d-image-viewer__preview-button {
14
+ padding: var(--dt-space-0);
15
+ cursor: -webkit-zoom-in;
16
+ cursor: zoom-in;
17
+ }
18
+
19
+ .d-image-viewer__full {
20
+ max-width: 80%;
21
+ max-height: 80%;
22
+ padding: var(--dt-space-0);
23
+ border-radius: var(--dt-size-radius-0);
24
+
25
+ &__image {
26
+ max-width: 100%;
27
+ max-height: 100%;
28
+ }
29
+ }
30
+
31
+ .d-image-viewer__close-button {
32
+ --fco: 100%;
33
+
34
+ color: hsla(var(--dt-color-neutral-white-h) var(--dt-color-neutral-white-s) var(--dt-color-neutral-white-l) / var(--fco));
35
+ }
@@ -114,6 +114,37 @@
114
114
  }
115
115
  }
116
116
 
117
+ .d-input__label-text {
118
+ display: flex;
119
+ flex: 1 0%;
120
+ align-items: baseline;
121
+ justify-content: space-between;
122
+ box-sizing: border-box;
123
+ margin-bottom: var(--dt-space-300);
124
+ color: var(--dt-color-foreground-secondary);
125
+ font-weight: var(--dt-font-weight-semi-bold);
126
+ font-size: var(--dt-font-size-200);
127
+ font-family: inherit;
128
+ line-height: var(--dt-font-line-height-300);
129
+ word-break: break-word;
130
+ overflow-wrap: break-word;
131
+ }
132
+
133
+ .d-input__description {
134
+ display: flex;
135
+ flex-direction: column;
136
+ box-sizing: border-box;
137
+ color: var(--dt-color-foreground-tertiary);
138
+ font-size: var(--dt-font-size-100);
139
+ font-family: inherit;
140
+ line-height: var(--dt-font-line-height-400);
141
+ fill: currentColor;
142
+ }
143
+
144
+ .d-input__length-description {
145
+ margin-bottom: var(--dt-space-200);
146
+ }
147
+
117
148
  // $$ INPUT WRAPPER
118
149
  // ----------------------------------------------------------------------------
119
150
  .d-input__wrapper {
@@ -0,0 +1,39 @@
1
+ //
2
+ // DIALTONE
3
+ // COMPONENTS: Keyboard Shortcut
4
+ //
5
+ // These are the styles for Keyboard Shortcut component.
6
+ //
7
+ // TABLE OF CONTENTS
8
+ // • BASE STYLE
9
+ //
10
+ // ============================================================================
11
+ // $ BASE STYLE
12
+ // ----------------------------------------------------------------------------
13
+ .d-keyboard-shortcut {
14
+ display: inline-flex;
15
+ align-items: center;
16
+ justify-content: center;
17
+ box-sizing: border-box;
18
+ padding-right: var(--dt-space-300);
19
+ padding-left: var(--dt-space-300);
20
+ font-size: var(--dt-font-size-100);
21
+ font-family: var(--dt-font-family-body);
22
+ border: var(--dt-size-100) solid;
23
+ border-color: var(--dt-color-border-default);
24
+ border-radius: var(--dt-size-radius-300);
25
+
26
+ &--inverted {
27
+ border-color: var(--dt-color-border-moderate-inverted);
28
+ }
29
+
30
+ &__icon,
31
+ &__item {
32
+ margin-right: var(--dt-space-200);
33
+ color: var(--dt-color-foreground-tertiary);
34
+
35
+ &--inverted {
36
+ color: var(--dt-color-foreground-secondary-inverted);
37
+ }
38
+ }
39
+ }
@@ -0,0 +1,17 @@
1
+ //
2
+ // DIALTONE
3
+ // COMPONENTS: List Item Group
4
+ //
5
+ // These are the styles for List Item Group component.
6
+ //
7
+ // TABLE OF CONTENTS
8
+ // • BASE STYLE
9
+ //
10
+ // ============================================================================
11
+ // $ BASE STYLE
12
+ // ----------------------------------------------------------------------------
13
+ .d-list-item-group {
14
+ position: relative;
15
+ padding-right: var(--dt-space-0);
16
+ padding-left: var(--dt-space-0);
17
+ }
@@ -107,6 +107,22 @@
107
107
  display: flex;
108
108
  flex-direction: column;
109
109
  align-items: flex-start;
110
+
111
+ &__label {
112
+ display: flex;
113
+ flex: 1 0%;
114
+ align-items: baseline;
115
+ justify-content: space-between;
116
+ box-sizing: border-box;
117
+ margin-bottom: var(--dt-space-300);
118
+ color: var(--dt-color-foreground-secondary);
119
+ font-weight: var(--dt-font-weight-semi-bold);
120
+ font-size: var(--dt-font-size-200);
121
+ font-family: inherit;
122
+ line-height: var(--dt-font-line-height-300);
123
+ word-break: break-word;
124
+ overflow-wrap: break-word;
125
+ }
110
126
  }
111
127
 
112
128
 
@@ -145,6 +161,16 @@
145
161
  cursor: pointer;
146
162
  }
147
163
 
164
+ .d-checkbox__description {
165
+ display: flex;
166
+ box-sizing: border-box;
167
+ color: var(--dt-color-foreground-tertiary);
168
+ font-size: var(--dt-font-size-100);
169
+ font-family: inherit;
170
+ line-height: var(--dt-font-line-height-400);
171
+ fill: currentColor;
172
+ }
173
+
148
174
  // ============================================================================
149
175
  // $ CHECKBOXES
150
176
  // ----------------------------------------------------------------------------
@@ -17,12 +17,18 @@
17
17
  @import 'components/button';
18
18
  @import 'components/card';
19
19
  @import 'components/chip';
20
+ @import 'components/codeblock';
21
+ @import 'components/collapsible';
22
+ @import 'components/combobox';
20
23
  @import 'components/datepicker';
21
24
  @import 'components/emoji-picker';
22
25
  @import 'components/forms';
26
+ @import 'components/image-viewer';
23
27
  @import 'components/input';
28
+ @import 'components/keyboard-shortcut';
24
29
  @import 'components/link';
25
30
  @import 'components/list-group'; // Dialtone 5 shim
31
+ @import 'components/list-item-group';
26
32
  @import 'components/modal';
27
33
  @import 'components/notice';
28
34
  @import 'components/toast';