@dialpad/dialtone 7.10.3 → 7.11.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.
@@ -22,14 +22,29 @@
22
22
  // $ INPUTS
23
23
  // ----------------------------------------------------------------------------
24
24
  .d-input,
25
+ .d-input--md,
25
26
  .d-textarea,
27
+ .d-textarea--md,
28
+ .d-input__wrapper--md,
26
29
  .d-input__wrapper {
27
30
  // Component CSS Vars
28
31
  // ------------------------------------------------------------------------
29
32
  --input-color-border-focus: var(--purple-400);
30
- --input-color-border: var(--black-600);
31
- --input-color-background: var(--white);
32
- --input-color-text: var(--black-800);
33
+ --input-color-border: hsla(var(--black-900-hsl) ~' / ' 9%);
34
+ --input-color-background: hsla(var(--black-900-hsl) ~' / ' 3%);
35
+ --input-color-background-disabled: hsla(var(--black-900-hsl) ~' / ' 12%);
36
+ --input-border-width: calc(var(--size-100) + calc(var(--size-100) / 2)); // 1.5
37
+ --input-border-radius: var(--size-400);
38
+ --input-padding-y: calc(var(--space-400) - var(--input-border-width));
39
+ --input-padding-x: calc((var(--space-500) - var(--space-300)) - var(--input-border-width));
40
+ --input-color-text: var(--fc-secondary);
41
+ --input-font-size: var(--fs-200);
42
+ --input-line-height: var(--lh-200);
43
+
44
+ .bg-test & {
45
+ --input-color-border: var(--black-300);
46
+ --input-color-background: var(--black-100);
47
+ }
33
48
 
34
49
  position: relative;
35
50
  display: inline-flex;
@@ -37,20 +52,21 @@
37
52
  box-sizing: border-box;
38
53
  width: 100%;
39
54
  min-width: 0;
40
- padding: calc(var(--space-400) - var(--space-100)) var(--space-400); // 7 8
55
+ padding: var(--input-padding-y) var(--input-padding-x);
41
56
  color: var(--input-color-text);
42
57
  font-weight: inherit;
43
- font-size: var(--fs-200);
58
+ font-size: var(--input-font-size);
44
59
  font-family: inherit;
45
- line-height: var(--lh4);
60
+ line-height: var(--input-line-height);
46
61
  background-color: var(--input-color-background);
47
- border: 1px solid var(--input-color-border);
48
- border-radius: var(--base--corner-radius);
62
+ border: var(--input-border-width) solid var(--input-color-border);
63
+ border-radius: var(--input-border-radius);
49
64
  outline: none;
50
65
  box-shadow: none;
51
66
  transition-timing-function: var(--ttf-in-out);
52
67
  transition-duration: 100ms;
53
68
  transition-property: border, box-shadow, background-color;
69
+ appearance: none;
54
70
 
55
71
  // -- Placeholder copy
56
72
  &::placeholder {
@@ -71,8 +87,8 @@
71
87
  // -- DISABLED / READ-ONLY
72
88
  &[disabled],
73
89
  &[read-only] {
74
- --input-color-border: var(--black-400) !important;
75
- --input-color-background: var(--black-300);
90
+ --input-color-border: transparent !important;
91
+ --input-color-background: var(--input-color-background-disabled);
76
92
  --input-color-text: var(--fc-disabled);
77
93
 
78
94
  &:focus,
@@ -85,10 +101,25 @@
85
101
  color: var(--fc-placeholder);
86
102
  }
87
103
  }
104
+
88
105
  // -- DISABLED
89
106
  &[disabled] {
90
107
  cursor: not-allowed;
91
108
  }
109
+
110
+ // -- BROWSER-SPECIFIC
111
+ &::-moz-focus-inner {
112
+ outline: none !important;
113
+ }
114
+
115
+ &:-moz-focusring {
116
+ color: transparent;
117
+ text-shadow: 0 0 0 var(--black-900);
118
+ }
119
+
120
+ &::-ms-expand {
121
+ display: none;
122
+ }
92
123
  }
93
124
 
94
125
  // $$ INPUT WRAPPER
@@ -97,18 +128,18 @@
97
128
  padding: 0;
98
129
 
99
130
  .d-input-icon.d-input-icon--right {
100
- margin-right: var(--space-400); // 8
131
+ margin-right: var(--space-400);
101
132
  }
102
133
 
103
134
  .d-input-icon.d-input-icon--left {
104
- margin-left: var(--space-400); // 8
135
+ margin-left: var(--space-400);
105
136
  }
106
137
 
107
138
  .d-input,
108
139
  .d-textarea {
109
140
  flex: 1;
141
+ background-color: transparent;
110
142
  border: none;
111
- border-radius: var(--base--corner-radius);
112
143
 
113
144
  &:focus {
114
145
  border: none;
@@ -117,11 +148,11 @@
117
148
  }
118
149
 
119
150
  &.d-input-icon--right {
120
- padding-right: calc(var(--space-300) + var(--space-200)); // 6
151
+ padding-right: calc(var(--space-300) + var(--space-200));
121
152
  }
122
153
 
123
154
  &.d-input-icon--left {
124
- padding-left: calc(var(--space-300) + var(--space-200)); // 6
155
+ padding-left: calc(var(--space-300) + var(--space-200));
125
156
  }
126
157
  }
127
158
  }
@@ -129,19 +160,19 @@
129
160
  // $$ SIZES
130
161
  // ----------------------------------------------------------------------------
131
162
  .d-input.d-input--xs {
132
- .input-button-xs();
163
+ #d-internal__input-and-select-xs();
133
164
  }
134
165
 
135
166
  .d-input.d-input--sm {
136
- .input-button-sm();
167
+ #d-internal__input-and-select-sm();
137
168
  }
138
169
 
139
170
  .d-input.d-input--lg {
140
- .input-button-lg();
171
+ #d-internal__input-and-select-lg();
141
172
  }
142
173
 
143
174
  .d-input.d-input--xl {
144
- .input-button-xl();
175
+ #d-internal__input-and-select-xl();
145
176
  }
146
177
 
147
178
 
@@ -151,30 +182,32 @@
151
182
  .d-textarea {
152
183
  min-height: calc(var(--size-300) * 20); // 80
153
184
  vertical-align: top;
185
+ border-bottom-right-radius: var(--size-300);
186
+ resize: vertical;
154
187
  }
155
188
 
156
189
  // $$ SIZES
157
190
  // ----------------------------------------------------------------------------
158
191
  .d-textarea--xs {
159
- .input-button-xs();
192
+ #d-internal__input-and-select-xs();
160
193
 
161
194
  min-height: calc(var(--size-300) * 10); // 40
162
195
  }
163
196
 
164
197
  .d-textarea--sm {
165
- .input-button-sm();
198
+ #d-internal__input-and-select-sm();
166
199
 
167
200
  min-height: calc(var(--size-300) * 12); // 48
168
201
  }
169
202
 
170
203
  .d-textarea--lg {
171
- .input-button-lg();
204
+ #d-internal__input-and-select-lg();
172
205
 
173
206
  min-height: calc(var(--size-300) * 23); // 92
174
207
  }
175
208
 
176
209
  .d-textarea--xl {
177
- .input-button-xl();
210
+ #d-internal__input-and-select-xl();
178
211
 
179
212
  min-height: calc(var(--size-300) * 25); // 100
180
213
  }
@@ -183,7 +216,7 @@
183
216
  // ----------------------------------------------------------------------------
184
217
  .d-input--warning,
185
218
  .d-textarea--warning {
186
- --input-color-border: var(--warning-color) !important;
219
+ --input-color-border: var(--gold-400) !important;
187
220
  --input-color-border-focus: var(--warning-color);
188
221
 
189
222
  &:focus,
@@ -221,15 +254,16 @@
221
254
  // Component CSS Vars
222
255
  // ------------------------------------------------------------------------
223
256
  --input-icon-size: var(--size-500);
257
+ --input-icon-container-height: var(--size-600);
224
258
 
225
259
  z-index: var(--zi-base1);
226
260
  display: inline-flex;
227
261
  align-items: center;
228
- height: calc(var(--size-300) * 9); // 36
262
+ height: var(--input-icon-container-height);
229
263
  margin: 0;
230
- line-height: 0;
231
264
 
232
265
  svg {
266
+ // Backwards-compatible to DT6 icons
233
267
  width: var(--input-icon-size);
234
268
  height: var(--input-icon-size);
235
269
  }
@@ -240,33 +274,37 @@
240
274
  // $$ SIZES
241
275
  // ----------------------------------------------------------------------------
242
276
  .d-input-icon.d-input--xs {
243
- height: calc(var(--size-600) - var(--size-300)); // 28
277
+ --input-icon-container-height: calc(var(--size-600) - var(--size-300));
244
278
  }
245
279
 
246
280
  .d-input-icon--xs {
281
+ // Backwards-compatible to DT6 icons
247
282
  --input-icon-size: @icon12;
248
283
  }
249
284
 
250
285
  .d-input-icon.d-input--sm {
251
- height: var(--size-600); // 32
286
+ --input-icon-container-height: var(--size-600);
252
287
  }
253
288
 
254
289
  .d-input-icon--sm {
290
+ // Backwards-compatible to DT6 icons
255
291
  --input-icon-size: @icon14;
256
292
  }
257
293
 
258
294
  .d-input-icon.d-input--lg {
259
- height: calc(var(--size-300) * 12); // 48
295
+ --input-icon-container-height: calc(var(--size-300) * 10);
260
296
  }
261
297
 
262
298
  .d-input-icon--lg {
299
+ // Backwards-compatible to DT6 icons
263
300
  --input-icon-size: @icon20;
264
301
  }
265
302
 
266
303
  .d-input-icon.d-input--xl {
267
- height: calc(var(--size-300) * 14); // 56
304
+ --input-icon-container-height: calc(var(--size-300) * 14);
268
305
  }
269
306
 
270
307
  .d-input-icon--xl {
308
+ // Backwards-compatible to DT6 icons
271
309
  --input-icon-size: @icon24;
272
310
  }
@@ -28,9 +28,12 @@
28
28
  // Component CSS Vars
29
29
  // ------------------------------------------------------------------------
30
30
  --modal-color-background: hsla(var(--black-900-hsl) ~' / ' 60%);
31
+ --modal-dialog-padding: var(--space-600);
31
32
  --modal-dialog-color-background: var(--white);
32
33
  --modal-dialog-color-text: var(--fc-tertiary);
33
34
  --modal-header-color-text: var(--fc-secondary);
35
+ --modal-dialog-color-shadow: hsla(var(--black-900-hsl) ~' / ' 10%);
36
+ --modal-dialog-shadow: 0 0 0 1px var(--modal-dialog-color-shadow), var(--bs-card);
34
37
 
35
38
  position: fixed;
36
39
  top: 0;
@@ -78,16 +81,20 @@
78
81
  .d-modal__dialog {
79
82
  position: relative;
80
83
  z-index: var(--zi-hide);
84
+ display: flex;
85
+ flex-direction: column;
86
+ gap: var(--space-500); //
81
87
  width: 100%;
82
88
  max-width: calc(var(--size-300) * 157); // 628
83
89
  max-height: 100%;
90
+ padding: var(--modal-dialog-padding); // 32
84
91
  overflow-y: auto;
85
92
  color: var(--modal-dialog-color-text);
86
93
  font-size: var(--fs-200);
87
- line-height: var(--lh8);
94
+ line-height: var(--lh-400);
88
95
  background-color: var(--modal-dialog-color-background);
89
- border-radius: var(--br8);
90
- box-shadow: var(--bs-card);
96
+ border-radius: var(--size-500);
97
+ box-shadow: var(--modal-dialog-shadow);
91
98
  transform: translate3d(0, 30%, 0) scale3d(0.75, 0.75, 0.75);
92
99
  backface-visibility: hidden;
93
100
  visibility: hidden;
@@ -116,16 +123,8 @@
116
123
 
117
124
  display: flex;
118
125
  flex-direction: row-reverse;
126
+ gap: var(--space-400);
119
127
  align-items: center;
120
- padding: 0 var(--modal-footer-padding) var(--modal-footer-padding) var(--modal-footer-padding); // 0 24 24 24
121
-
122
- >:not(:first-child) {
123
- margin-right: var(--space-300); // 4
124
- }
125
-
126
- >:not(:last-child) {
127
- margin-left: var(--space-300); // 4
128
- }
129
128
  }
130
129
 
131
130
 
@@ -138,19 +137,16 @@
138
137
  --modal-header-padding: calc(var(--space-300) * 6); // 24
139
138
 
140
139
  margin: 0 !important;
141
- padding: var(--modal-header-padding) var(--modal-header-padding) 0;
142
140
  color: var(--modal-header-color-text);
143
- font-weight: var(--fw-bold);
144
- font-size: var(--fs-300);
145
- line-height: var(--lh4);
141
+ font-weight: var(--fw-medium);
142
+ font-size: var(--fs-400);
143
+ line-height: var(--lh-100);
146
144
  }
147
145
 
148
146
  // $$ CONTENT
149
147
  // ----------------------------------------------------------------------------
150
148
  .d-modal__content {
151
149
  max-width: 75ch;
152
- margin: calc(var(--space-300) * 3) 0; // 12 0
153
- padding: var(--space-300) calc(var(--space-300) * 6); // 4 24
154
150
  }
155
151
 
156
152
 
@@ -159,8 +155,8 @@
159
155
  // ----------------------------------------------------------------------------
160
156
  .d-modal__close {
161
157
  position: absolute;
162
- top: var(--space-400); // 8
163
- right: var(--space-400); // 8
158
+ top: var(--space-500); // 16
159
+ right: var(--space-500); // 16
164
160
  margin: 0 !important;
165
161
  }
166
162
 
@@ -169,15 +165,33 @@
169
165
  // $ BANNERS
170
166
  // ----------------------------------------------------------------------------
171
167
  .d-modal__banner {
168
+ --modal-banner-padding-y: var(--space-500);
169
+ --modal-banner-padding-x: var(--space-600);
170
+ --modal-banner-color-background: var(--gold-100);
171
+
172
172
  position: relative;
173
173
  box-sizing: border-box;
174
174
  width: 100%;
175
175
  max-width: calc(var(--size-300) * 157); // 628
176
- padding: calc(var(--space-300) * 3) calc(var(--space-300) * 6); // 12 24
176
+ padding: var(--modal-banner-padding-y) var(--modal-banner-padding-x); // 16 32
177
+ color: var(--fc-primary);
177
178
  font-size: var(--fs-200);
178
- line-height: var(--lh4);
179
- background-color: var(--gold-100);
180
- border-radius: var(--br8) var(--br8) 0 0;
179
+ line-height: var(--lh-300);
180
+ background-color: var(--modal-banner-color-background);
181
+ border-radius: var(--size-500) var(--size-500) 0 0;
182
+ box-shadow: var(--modal-dialog-shadow);
183
+
184
+ &::before {
185
+ // 🤦 don't ask. or do, i'm not even sorry.
186
+ position: absolute;
187
+ right: 0;
188
+ bottom: 0;
189
+ left: 0;
190
+ z-index: var(--zi-modal-element);
191
+ height: var(--modal-banner-padding-y);
192
+ background-color: var(--modal-banner-color-background);
193
+ content: '';
194
+ }
181
195
 
182
196
  &:not(.d-d-none) + .d-modal__dialog {
183
197
  border-top-left-radius: 0;
@@ -192,6 +206,8 @@
192
206
  // $$ FULL WIDTH
193
207
  // ----------------------------------------------------------------------------
194
208
  .d-modal--full {
209
+ --modal-dialog-padding: 0;
210
+
195
211
  padding: 0;
196
212
  overflow: hidden scroll;
197
213
  transform: unset !important;
@@ -8,6 +8,7 @@
8
8
  //
9
9
  // TABLE OF CONTENTS
10
10
  // • POPOVER
11
+ // • CSS CUSTOM PROPERTIES
11
12
  // • POPOVER DIALOG
12
13
  // - Base dialog style
13
14
  // - Content
@@ -16,60 +17,66 @@
16
17
 
17
18
  // $ POPOVER
18
19
  // ----------------------------------------------------------------------------
20
+ .d-popover {
21
+ // $ CSS CUSTOM PROPERTIES
22
+ // ----------------------------------------------------------------------------
19
23
 
20
- // $ POPOVER DIALOG
21
- // ----------------------------------------------------------------------------
22
- .d-popover__dialog {
23
- &,
24
- *,
25
- *::before,
26
- *::after {
27
- box-sizing: border-box;
28
- }
24
+ --popover-color-background: var(--black-100);
25
+ --popover-border-width: var(--size-100); // 8
26
+ --popover-border-radius: var(--size-400);
27
+ --popover-color-shadow: hsla(var(--black-900-hsl) ~' / ' 10%);
28
+ --popover-shadow: 0 0 0 1px var(--popover-color-shadow), var(--bs-card);
29
29
 
30
- display: grid;
31
- grid-template-rows: auto 1fr;
32
- overflow: auto;
33
- background-color: var(--white);
34
- border-color: var(--black-400);
35
- border-radius: var(--br8); // 8
36
- box-shadow: var(--bs-card);
37
- }
30
+ // $ POPOVER DIALOG
31
+ // ----------------------------------------------------------------------------
32
+ &__dialog {
33
+ &,
34
+ *,
35
+ *::before,
36
+ *::after {
37
+ box-sizing: border-box;
38
+ }
38
39
 
39
- // to be set on the dialog when it is modal
40
- .d-popover__dialog--modal {
41
- z-index: var(--zi-modal-element);
42
- }
40
+ display: grid;
41
+ grid-template-rows: 1fr;
42
+ overflow: auto;
43
+ border-radius: var(--popover-border-radius);
44
+ box-shadow: var(--popover-shadow);
43
45
 
44
- // $$ DIALOG CONTENT
45
- // ----------------------------------------------------------------------------
46
- .d-popover__content {
47
- overflow: auto;
48
- }
46
+ // to be set on the dialog when it is modal
47
+ &--modal {
48
+ z-index: var(--zi-modal-element);
49
+ }
50
+ }
49
51
 
50
- // $$ DIALOG HEADER / FOOTER
51
- // ----------------------------------------------------------------------------
52
- .d-popover__header-footer-base {
53
- display: flex;
54
- align-items: center;
55
- justify-content: flex-end;
56
- width: 100%;
57
- min-height: var(--size48);
58
- padding-top: calc(var(--space-300) + var(--space-200)); // 6
59
- padding-bottom: calc(var(--space-300) + var(--space-200)); // 6
60
- overflow: auto;
61
- font-weight: var(--fw-semibold);
62
- font-size: var(--fs-200);
63
- }
52
+ // $$ DIALOG CONTENT
53
+ // ----------------------------------------------------------------------------
54
+ &__content {
55
+ overflow: auto;
56
+ }
64
57
 
65
- .d-popover__header {
66
- .d-popover__header-footer-base();
58
+ // $$ DIALOG HEADER / FOOTER
59
+ // ----------------------------------------------------------------------------
67
60
 
68
- border-bottom: var(--size-100) solid var(--black-300);
69
- }
61
+ &__header,
62
+ &__footer {
63
+ display: flex;
64
+ align-items: center;
65
+ justify-content: flex-end;
66
+ width: 100%;
67
+ min-height: var(--size48);
68
+ padding-top: calc(var(--space-300) + var(--space-200)); // 6
69
+ padding-bottom: calc(var(--space-300) + var(--space-200)); // 6
70
+ overflow: auto;
71
+ font-weight: var(--fw-semibold);
72
+ font-size: var(--fs-200);
73
+ }
70
74
 
71
- .d-popover__footer {
72
- .d-popover__header-footer-base();
75
+ &__header {
76
+ border-bottom: var(--popover-border-width) solid var(--popover-color-border);
77
+ }
73
78
 
74
- border-top: var(--size-100) solid var(--black-300);
79
+ &__footer {
80
+ border-top: var(--popover-border-width) solid var(--popover-color-border);
81
+ }
75
82
  }