lumen-plus 0.0.3 → 0.0.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 (73) hide show
  1. package/dist/index.js +2 -0
  2. package/dist/theme-chalk/_index.scss +69 -0
  3. package/dist/theme-chalk/_reset.scss +16 -0
  4. package/dist/theme-chalk/_variables.scss +91 -0
  5. package/dist/theme-chalk/affix.scss +8 -0
  6. package/dist/theme-chalk/alert.scss +140 -0
  7. package/dist/theme-chalk/autocomplete.scss +238 -0
  8. package/dist/theme-chalk/avatar.scss +49 -0
  9. package/dist/theme-chalk/backtop.scss +55 -0
  10. package/dist/theme-chalk/badge.scss +47 -0
  11. package/dist/theme-chalk/breadcrumb.scss +50 -0
  12. package/dist/theme-chalk/button.scss +472 -0
  13. package/dist/theme-chalk/calendar.scss +166 -0
  14. package/dist/theme-chalk/card.scss +70 -0
  15. package/dist/theme-chalk/carousel.scss +167 -0
  16. package/dist/theme-chalk/cascader.scss +265 -0
  17. package/dist/theme-chalk/checkbox.scss +127 -0
  18. package/dist/theme-chalk/collapse.scss +100 -0
  19. package/dist/theme-chalk/color-picker.scss +247 -0
  20. package/dist/theme-chalk/container.scss +79 -0
  21. package/dist/theme-chalk/date-picker.scss +352 -0
  22. package/dist/theme-chalk/date-time-picker.scss +396 -0
  23. package/dist/theme-chalk/descriptions.scss +160 -0
  24. package/dist/theme-chalk/dialog.scss +154 -0
  25. package/dist/theme-chalk/divider.scss +61 -0
  26. package/dist/theme-chalk/drawer.scss +211 -0
  27. package/dist/theme-chalk/dropdown.scss +230 -0
  28. package/dist/theme-chalk/empty.scss +36 -0
  29. package/dist/theme-chalk/form.scss +187 -0
  30. package/dist/theme-chalk/icon.scss +16 -0
  31. package/dist/theme-chalk/image.scss +171 -0
  32. package/dist/theme-chalk/input-number.scss +229 -0
  33. package/dist/theme-chalk/input-tag.scss +119 -0
  34. package/dist/theme-chalk/input.scss +249 -0
  35. package/dist/theme-chalk/link.scss +28 -0
  36. package/dist/theme-chalk/loading.scss +68 -0
  37. package/dist/theme-chalk/menu.scss +239 -0
  38. package/dist/theme-chalk/message.scss +150 -0
  39. package/dist/theme-chalk/messagebox.scss +76 -0
  40. package/dist/theme-chalk/mixins/_bem.scss +103 -0
  41. package/dist/theme-chalk/mixins/_function.scss +12 -0
  42. package/dist/theme-chalk/notification.scss +164 -0
  43. package/dist/theme-chalk/pagination.scss +130 -0
  44. package/dist/theme-chalk/pin-input.scss +192 -0
  45. package/dist/theme-chalk/popconfirm.scss +194 -0
  46. package/dist/theme-chalk/popover.scss +196 -0
  47. package/dist/theme-chalk/progress.scss +51 -0
  48. package/dist/theme-chalk/radio.scss +128 -0
  49. package/dist/theme-chalk/rating.scss +227 -0
  50. package/dist/theme-chalk/result.scss +80 -0
  51. package/dist/theme-chalk/segmented.scss +108 -0
  52. package/dist/theme-chalk/select.scss +301 -0
  53. package/dist/theme-chalk/skeleton.scss +113 -0
  54. package/dist/theme-chalk/slider.scss +259 -0
  55. package/dist/theme-chalk/space.scss +44 -0
  56. package/dist/theme-chalk/statistic.scss +49 -0
  57. package/dist/theme-chalk/steps.scss +255 -0
  58. package/dist/theme-chalk/switch.scss +277 -0
  59. package/dist/theme-chalk/table.scss +343 -0
  60. package/dist/theme-chalk/tabs.scss +433 -0
  61. package/dist/theme-chalk/tag.scss +143 -0
  62. package/dist/theme-chalk/textarea.scss +125 -0
  63. package/dist/theme-chalk/time-picker.scss +321 -0
  64. package/dist/theme-chalk/timeline.scss +119 -0
  65. package/dist/theme-chalk/tooltip.scss +165 -0
  66. package/dist/theme-chalk/transfer.scss +219 -0
  67. package/dist/theme-chalk/tree-select.scss +384 -0
  68. package/dist/theme-chalk/tree.scss +101 -0
  69. package/dist/theme-chalk/upload.scss +457 -0
  70. package/dist/theme-chalk/watermark.scss +30 -0
  71. package/dist/utils/index.js +1 -0
  72. package/dist/utils/transitions.js +31 -0
  73. package/package.json +8 -2
@@ -0,0 +1,396 @@
1
+ @use './variables' as *;
2
+ @use './mixins/bem' as *;
3
+
4
+ @include b('date-time-picker') {
5
+ position: relative;
6
+ display: inline-block;
7
+ width: 220px;
8
+ max-width: 100%;
9
+
10
+ font-size: $font-size-base;
11
+
12
+ @include m('small') {
13
+ font-size: $font-size-small;
14
+ .#{$namespace}-date-time-picker__trigger { height: 28px; }
15
+ }
16
+
17
+ @include m('default') {
18
+ font-size: $font-size-base;
19
+ .#{$namespace}-date-time-picker__trigger { height: 32px; }
20
+ }
21
+
22
+ @include m('large') {
23
+ font-size: $font-size-medium;
24
+ .#{$namespace}-date-time-picker__trigger { height: 40px; }
25
+ }
26
+
27
+ @include e('trigger') {
28
+ display: flex;
29
+ align-items: center;
30
+ padding: 0 12px;
31
+ height: 32px;
32
+ border: 1px solid $border-color-base;
33
+ border-radius: $border-radius-base;
34
+ background-color: $bg-color;
35
+ cursor: pointer;
36
+ transition: border-color 0.2s;
37
+ font-family: inherit;
38
+ font-size: inherit;
39
+ font-weight: inherit;
40
+
41
+ &:hover { border-color: #c0c4cc; }
42
+ &.is-focus { border-color: $color-primary; }
43
+ }
44
+
45
+ @include e('prefix') {
46
+ display: inline-flex;
47
+ align-items: center;
48
+ margin-right: 8px;
49
+ color: $color-text-secondary;
50
+ }
51
+
52
+ @include e('value') {
53
+ flex: 1;
54
+ min-width: 0;
55
+ font-size: inherit;
56
+ color: $color-text-primary;
57
+ line-height: inherit;
58
+ font-weight: inherit;
59
+
60
+ &.is-placeholder { color: $color-text-placeholder; }
61
+ }
62
+
63
+ @include e('arrow') {
64
+ color: $color-text-secondary;
65
+ transition: transform 0.2s;
66
+ pointer-events: none;
67
+
68
+ &.is-open { transform: rotate(180deg); }
69
+ }
70
+
71
+ @include e('clear') {
72
+ display: inline-flex;
73
+ align-items: center;
74
+ padding: 0;
75
+ border: none;
76
+ background: none;
77
+ color: $color-text-secondary;
78
+ cursor: pointer;
79
+ &:hover { color: $color-text; }
80
+ }
81
+
82
+ @include e('dropdown') {
83
+ position: absolute;
84
+ top: 100%;
85
+ left: 0;
86
+ margin-top: 12px;
87
+ // Arrow variables
88
+ --l-date-time-picker-bg: #{$bg-color};
89
+ --l-date-time-picker-border: #{$border-color-lighter};
90
+ --arrow-size: 10px;
91
+
92
+ background-color: var(--l-date-time-picker-bg);
93
+ border: 1px solid var(--l-date-time-picker-border);
94
+ border-radius: $border-radius-base;
95
+ box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1);
96
+ z-index: $z-index-popper;
97
+ overflow: visible;
98
+ transform-origin: top;
99
+ }
100
+
101
+ @include e('menu-arrow') {
102
+ position: absolute;
103
+ width: var(--arrow-size);
104
+ height: var(--arrow-size);
105
+ z-index: -1;
106
+ pointer-events: none;
107
+
108
+ top: calc(-1 * (var(--arrow-size) * 0.55) + 1px);
109
+ left: 50%;
110
+ margin-left: calc(-1 * (var(--arrow-size) / 2));
111
+
112
+ &::before {
113
+ content: '';
114
+ position: absolute;
115
+ inset: 0;
116
+ width: 100%;
117
+ height: 100%;
118
+ background: var(--l-date-time-picker-bg);
119
+ transform: rotate(45deg);
120
+ border-radius: calc(var(--arrow-size) * 0.2);
121
+ box-shadow: -1px -1px 0 0 var(--l-date-time-picker-border);
122
+ }
123
+ }
124
+
125
+ @include e('panel') {
126
+ display: flex;
127
+ }
128
+
129
+ @include e('date-panel') {
130
+ padding: 12px 12px 10px;
131
+ }
132
+
133
+ @include e('time-inputs') {
134
+ display: flex;
135
+ align-items: center;
136
+ gap: 8px;
137
+ margin-bottom: 10px;
138
+ width: 100%;
139
+ }
140
+
141
+ @include e('date-input') {
142
+ flex: 1 1 0;
143
+ min-width: 0;
144
+ width: 0;
145
+ height: 28px;
146
+ padding: 0 10px;
147
+ border: 1px solid $border-color-base;
148
+ border-radius: $border-radius-base;
149
+ background: $bg-color;
150
+ color: $color-text-primary;
151
+ font-size: $font-size-small;
152
+ box-sizing: border-box;
153
+ outline: none;
154
+
155
+ &::placeholder { color: $color-text-placeholder; }
156
+ &:focus { border-color: $color-primary; }
157
+ }
158
+
159
+ @include e('time-input') {
160
+ flex: 1 1 0;
161
+ min-width: 0;
162
+ width: 0;
163
+ height: 28px;
164
+ padding: 0 10px;
165
+ border: 1px solid $border-color-base;
166
+ border-radius: $border-radius-base;
167
+ background: $bg-color;
168
+ color: $color-text-primary;
169
+ font-size: $font-size-small;
170
+ box-sizing: border-box;
171
+ outline: none;
172
+
173
+ &::placeholder { color: $color-text-placeholder; }
174
+ &:focus { border-color: $color-primary; }
175
+ }
176
+
177
+ // time-sep removed (single input)
178
+
179
+ @include e('header') {
180
+ display: flex;
181
+ align-items: center;
182
+ justify-content: space-between;
183
+ margin-bottom: 10px;
184
+ }
185
+
186
+ @include e('body') {
187
+ display: block;
188
+ }
189
+
190
+ @include e('nav') {
191
+ background: none;
192
+ border: none;
193
+ cursor: pointer;
194
+ padding: 4px;
195
+ color: $color-text-secondary;
196
+ border-radius: $border-radius-base;
197
+ &:hover { background: $bg-color-page; color: $color-text; }
198
+ }
199
+
200
+ @include e('nav-group') {
201
+ display: inline-flex;
202
+ align-items: center;
203
+ gap: 2px;
204
+ }
205
+
206
+ @include e('title') {
207
+ flex: 1;
208
+ text-align: center;
209
+ font-size: $font-size-base;
210
+ font-weight: $font-weight-primary;
211
+ color: $color-text-primary;
212
+ }
213
+
214
+ @include e('week') {
215
+ display: grid;
216
+ grid-template-columns: repeat(7, 1fr);
217
+ margin-bottom: 6px;
218
+ }
219
+
220
+ @include e('week-day') {
221
+ text-align: center;
222
+ font-size: $font-size-small;
223
+ color: $color-text-secondary;
224
+ }
225
+
226
+ @include e('days') {
227
+ display: grid;
228
+ grid-template-columns: repeat(7, 1fr);
229
+ gap: 4px;
230
+ }
231
+
232
+ @include e('day') {
233
+ width: 32px;
234
+ height: 32px;
235
+ padding: 0;
236
+ border: none;
237
+ background: transparent;
238
+ border-radius: $border-radius-base;
239
+ cursor: pointer;
240
+ color: $color-text-primary;
241
+ font-size: $font-size-base;
242
+ transition: background-color 0.2s, color 0.2s;
243
+
244
+ &:hover { background-color: $bg-color-page; }
245
+ &.is-other { color: $color-text-placeholder; }
246
+ &.is-today { color: $color-primary; }
247
+ &.is-selected {
248
+ background-color: $color-primary;
249
+ color: #fff;
250
+ }
251
+ }
252
+
253
+ // 时间选择改为输入框(Element Plus 风格),不再使用滚动列。
254
+
255
+ @include e('footer') {
256
+ display: flex;
257
+ justify-content: space-between;
258
+ align-items: center;
259
+ padding: 8px 12px;
260
+ border-top: 1px solid $border-color-light;
261
+ }
262
+
263
+ @include e('btn') {
264
+ padding: 6px 16px;
265
+ font-size: 12px;
266
+ color: #fff;
267
+ background-color: $color-primary;
268
+ border: none;
269
+ border-radius: $border-radius-base;
270
+ cursor: pointer;
271
+ transition: background-color 0.2s, opacity 0.2s;
272
+
273
+ &:hover { opacity: 0.85; }
274
+
275
+ &:disabled {
276
+ cursor: not-allowed;
277
+ opacity: 0.6;
278
+ }
279
+
280
+ &--text {
281
+ color: $color-primary;
282
+ background-color: transparent;
283
+ padding: 6px 0;
284
+
285
+ &:hover {
286
+ opacity: 0.85;
287
+ background-color: transparent;
288
+ }
289
+ }
290
+ }
291
+
292
+ &.is-disabled {
293
+ .#{$namespace}-date-time-picker__trigger {
294
+ background-color: $bg-color-page;
295
+ cursor: not-allowed;
296
+ &:hover { border-color: $border-color-base; }
297
+ }
298
+ .#{$namespace}-date-time-picker__value { color: $color-text-disabled; }
299
+ }
300
+ }
301
+
302
+ .dark {
303
+ .#{$namespace}-date-time-picker {
304
+ .#{$namespace}-date-time-picker__trigger {
305
+ background-color: $bg-color-dark-light;
306
+ border-color: color-mix(in oklab, #{$bg-color-dark-lighter} 78%, #{$color-text-dark});
307
+
308
+ &:hover {
309
+ border-color: color-mix(in oklab, #{$bg-color-dark-lighter} 60%, #{$color-text-dark});
310
+ }
311
+
312
+ &.is-focus {
313
+ border-color: $color-primary;
314
+ }
315
+ }
316
+
317
+ .#{$namespace}-date-time-picker__prefix,
318
+ .#{$namespace}-date-time-picker__arrow,
319
+ .#{$namespace}-date-time-picker__clear {
320
+ color: $color-text-dark-secondary;
321
+ }
322
+
323
+ .#{$namespace}-date-time-picker__clear:hover {
324
+ color: $color-text-dark;
325
+ }
326
+
327
+ .#{$namespace}-date-time-picker__value {
328
+ color: $color-text-dark;
329
+
330
+ &.is-placeholder {
331
+ color: $color-text-dark-secondary;
332
+ }
333
+ }
334
+
335
+ .#{$namespace}-date-time-picker__dropdown {
336
+ --l-date-time-picker-bg: #{$bg-color-dark-light};
337
+ --l-date-time-picker-border: color-mix(in oklab, #{$bg-color-dark-lighter} 74%, #{$color-text-dark});
338
+ box-shadow: $box-shadow-dark;
339
+ }
340
+
341
+ .#{$namespace}-date-time-picker__date-input,
342
+ .#{$namespace}-date-time-picker__time-input {
343
+ background: $bg-color-dark-light;
344
+ border-color: color-mix(in oklab, #{$bg-color-dark-lighter} 78%, #{$color-text-dark});
345
+ color: $color-text-dark;
346
+
347
+ &::placeholder {
348
+ color: $color-text-dark-secondary;
349
+ }
350
+ }
351
+
352
+ .#{$namespace}-date-time-picker__nav {
353
+ color: $color-text-dark-secondary;
354
+
355
+ &:hover {
356
+ background: $bg-color-dark-lighter;
357
+ color: $color-text-dark;
358
+ }
359
+ }
360
+
361
+ .#{$namespace}-date-time-picker__title {
362
+ color: $color-text-dark;
363
+ }
364
+
365
+ .#{$namespace}-date-time-picker__week-day {
366
+ color: $color-text-dark-secondary;
367
+ }
368
+
369
+ .#{$namespace}-date-time-picker__day {
370
+ color: $color-text-dark;
371
+
372
+ &:hover {
373
+ background-color: $bg-color-dark-lighter;
374
+ }
375
+
376
+ &.is-other {
377
+ color: $color-text-dark-secondary;
378
+ }
379
+ }
380
+
381
+ .#{$namespace}-date-time-picker__footer {
382
+ border-top-color: $bg-color-dark-lighter;
383
+ }
384
+
385
+ &.is-disabled {
386
+ .#{$namespace}-date-time-picker__trigger {
387
+ background-color: $bg-color-dark-lighter;
388
+ border-color: color-mix(in oklab, #{$bg-color-dark-lighter} 86%, #{$color-text-dark});
389
+ }
390
+
391
+ .#{$namespace}-date-time-picker__value {
392
+ color: $color-text-dark-secondary;
393
+ }
394
+ }
395
+ }
396
+ }
@@ -0,0 +1,160 @@
1
+ @use './variables' as *;
2
+ @use './mixins/bem' as *;
3
+
4
+ @include b('descriptions') {
5
+ @include m('large') {
6
+ .#{$namespace}-descriptions-item__label,
7
+ .#{$namespace}-descriptions-item__content {
8
+ padding: 16px 20px;
9
+ font-size: $font-size-base;
10
+ }
11
+ }
12
+
13
+ @include m('default') {
14
+ .#{$namespace}-descriptions-item__label,
15
+ .#{$namespace}-descriptions-item__content {
16
+ padding: 12px 16px;
17
+ font-size: $font-size-base;
18
+ }
19
+ }
20
+
21
+ @include m('small') {
22
+ .#{$namespace}-descriptions-item__label,
23
+ .#{$namespace}-descriptions-item__content {
24
+ padding: 8px 12px;
25
+ font-size: $font-size-small;
26
+ }
27
+ }
28
+
29
+ @include when('bordered') {
30
+ .#{$namespace}-descriptions__body {
31
+ border: 1px solid $border-color-lighter;
32
+ border-radius: $border-radius-base;
33
+ overflow: hidden;
34
+ }
35
+
36
+ .#{$namespace}-descriptions__table {
37
+ border-collapse: collapse;
38
+ }
39
+
40
+ .#{$namespace}-descriptions-item__label,
41
+ .#{$namespace}-descriptions-item__content {
42
+ border: 1px solid $border-color-lighter;
43
+ }
44
+
45
+ // prevent double border on the outside (wrapper already has one)
46
+ .#{$namespace}-descriptions__table > tbody > tr:first-child {
47
+ > .#{$namespace}-descriptions-item__label,
48
+ > .#{$namespace}-descriptions-item__content {
49
+ border-top: none;
50
+ }
51
+ }
52
+
53
+ .#{$namespace}-descriptions__table > tbody > tr:last-child {
54
+ > .#{$namespace}-descriptions-item__label,
55
+ > .#{$namespace}-descriptions-item__content {
56
+ border-bottom: none;
57
+ }
58
+ }
59
+
60
+ .#{$namespace}-descriptions__table > tbody > tr {
61
+ > .#{$namespace}-descriptions-item__label {
62
+ border-left: none;
63
+ }
64
+
65
+ > .#{$namespace}-descriptions-item__content {
66
+ border-right: none;
67
+ }
68
+ }
69
+
70
+ .#{$namespace}-descriptions-item__label {
71
+ background: $bg-color-page;
72
+ }
73
+ }
74
+
75
+ @include e('header') {
76
+ display: flex;
77
+ align-items: center;
78
+ justify-content: space-between;
79
+ margin-bottom: $spacing-base;
80
+ }
81
+
82
+ @include e('title') {
83
+ font-size: $font-size-large;
84
+ font-weight: $font-weight-primary;
85
+ color: $color-text-primary;
86
+ }
87
+
88
+ @include e('extra') {
89
+ color: $color-text-regular;
90
+ }
91
+
92
+ @include e('body') {
93
+ width: 100%;
94
+ }
95
+
96
+ @include e('table') {
97
+ width: 100%;
98
+ table-layout: fixed;
99
+ }
100
+ }
101
+
102
+ @include b('descriptions-item') {
103
+ @include e('cell') {
104
+ display: flex;
105
+ gap: 8px;
106
+ }
107
+
108
+ @include e('label') {
109
+ color: $color-text-secondary;
110
+ font-weight: $font-weight-primary;
111
+ white-space: nowrap;
112
+ }
113
+
114
+ @include e('content') {
115
+ color: $color-text-primary;
116
+ word-break: break-word;
117
+ }
118
+ }
119
+
120
+ .dark {
121
+ .#{$namespace}-descriptions {
122
+ .#{$namespace}-descriptions__title {
123
+ color: $color-text-dark;
124
+ }
125
+
126
+ .#{$namespace}-descriptions__extra {
127
+ color: $color-text-dark-secondary;
128
+ }
129
+
130
+ &.is-bordered {
131
+ .#{$namespace}-descriptions__body {
132
+ border-color: color-mix(in oklab, #{$bg-color-dark-lighter} 72%, #{$color-text-dark});
133
+ }
134
+
135
+ .#{$namespace}-descriptions-item__label,
136
+ .#{$namespace}-descriptions-item__content {
137
+ border-color: color-mix(in oklab, #{$bg-color-dark-lighter} 78%, #{$color-text-dark});
138
+ }
139
+
140
+ .#{$namespace}-descriptions-item__label {
141
+ background: $bg-color-dark-lighter;
142
+ border-right-color: color-mix(in oklab, #{$bg-color-dark-lighter} 70%, #{$color-text-dark});
143
+ }
144
+
145
+ .#{$namespace}-descriptions-item__content {
146
+ background: $bg-color-dark-light;
147
+ }
148
+ }
149
+ }
150
+
151
+ .#{$namespace}-descriptions-item {
152
+ .#{$namespace}-descriptions-item__label {
153
+ color: $color-text-dark-secondary;
154
+ }
155
+
156
+ .#{$namespace}-descriptions-item__content {
157
+ color: $color-text-dark;
158
+ }
159
+ }
160
+ }
@@ -0,0 +1,154 @@
1
+ @use './variables' as *;
2
+ @use './mixins/bem' as *;
3
+ @use './mixins/function' as *;
4
+
5
+ @include b(dialog-wrapper) {
6
+ position: fixed;
7
+ top: 0;
8
+ left: 0;
9
+ right: 0;
10
+ bottom: 0;
11
+ z-index: 2000;
12
+ display: flex;
13
+ align-items: center;
14
+ justify-content: center;
15
+ }
16
+
17
+ @include b(dialog-overlay) {
18
+ position: fixed;
19
+ top: 0;
20
+ left: 0;
21
+ right: 0;
22
+ bottom: 0;
23
+ background-color: rgba(0, 0, 0, 0.5);
24
+ animation: #{$namespace}-dialog-fade-in 0.3s ease;
25
+ }
26
+
27
+ @include b(dialog) {
28
+ position: relative;
29
+ background: $bg-color;
30
+ border-radius: $border-radius-large;
31
+ max-width: 90vw;
32
+ max-height: 90vh;
33
+ display: flex;
34
+ flex-direction: column;
35
+ animation: #{$namespace}-dialog-slide-down 0.3s ease;
36
+ z-index: 1;
37
+
38
+ @include when(center) {
39
+ text-align: center;
40
+
41
+ .#{$namespace}-dialog__header {
42
+ justify-content: center;
43
+ }
44
+
45
+ .#{$namespace}-dialog__footer {
46
+ justify-content: center;
47
+ }
48
+ }
49
+
50
+ @include e(header) {
51
+ display: flex;
52
+ align-items: center;
53
+ justify-content: space-between;
54
+ padding: 20px 24px;
55
+ border-bottom: 1px solid $border-color-base;
56
+ }
57
+
58
+ @include e(title) {
59
+ font-size: $font-size-large;
60
+ font-weight: 600;
61
+ color: $color-text-primary;
62
+ line-height: 1.5;
63
+ }
64
+
65
+ @include e(close) {
66
+ border: none;
67
+ background: transparent;
68
+ color: $color-text-secondary;
69
+ cursor: pointer;
70
+ padding: 4px;
71
+ display: flex;
72
+ align-items: center;
73
+ justify-content: center;
74
+ transition: color 0.2s;
75
+ width: 24px;
76
+ height: 24px;
77
+
78
+ &:hover {
79
+ color: $color-text-primary;
80
+ }
81
+
82
+ svg {
83
+ width: 20px;
84
+ height: 20px;
85
+ }
86
+ }
87
+
88
+ @include e(body) {
89
+ padding: 24px;
90
+ flex: 1;
91
+ overflow: auto;
92
+ color: $color-text-primary;
93
+ }
94
+
95
+ @include e(footer) {
96
+ display: flex;
97
+ align-items: center;
98
+ justify-content: flex-end;
99
+ gap: 12px;
100
+ padding: 16px 24px;
101
+ border-top: 1px solid $border-color-base;
102
+ }
103
+ }
104
+
105
+ @keyframes #{$namespace}-dialog-fade-in {
106
+ from {
107
+ opacity: 0;
108
+ }
109
+ to {
110
+ opacity: 1;
111
+ }
112
+ }
113
+
114
+ @keyframes #{$namespace}-dialog-slide-down {
115
+ from {
116
+ opacity: 0;
117
+ transform: translateY(-20px);
118
+ }
119
+ to {
120
+ opacity: 1;
121
+ transform: translateY(0);
122
+ }
123
+ }
124
+
125
+ .dark {
126
+ .#{$namespace}-dialog {
127
+ background: $bg-color-dark-light;
128
+ box-shadow: $box-shadow-dark;
129
+
130
+ .#{$namespace}-dialog__header {
131
+ border-bottom-color: $bg-color-dark-lighter;
132
+ }
133
+
134
+ .#{$namespace}-dialog__title {
135
+ color: $color-text-dark;
136
+ }
137
+
138
+ .#{$namespace}-dialog__close {
139
+ color: $color-text-dark-secondary;
140
+
141
+ &:hover {
142
+ color: $color-text-dark;
143
+ }
144
+ }
145
+
146
+ .#{$namespace}-dialog__body {
147
+ color: $color-text-dark;
148
+ }
149
+
150
+ .#{$namespace}-dialog__footer {
151
+ border-top-color: $bg-color-dark-lighter;
152
+ }
153
+ }
154
+ }