@didaoktv/didaoui-uniapp 1.2.2 → 1.3.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 (75) hide show
  1. package/README.md +59 -0
  2. package/components/dd-action-sheet/dd-action-sheet.vue +7 -7
  3. package/components/dd-alert/dd-alert.vue +16 -16
  4. package/components/dd-backtop/dd-backtop.vue +3 -3
  5. package/components/dd-badge/dd-badge.vue +10 -10
  6. package/components/dd-bill-detail/dd-bill-detail.vue +20 -20
  7. package/components/dd-button/dd-button.vue +12 -12
  8. package/components/dd-calendar/dd-calendar.vue +21 -21
  9. package/components/dd-capsule-button/dd-capsule-button.vue +5 -5
  10. package/components/dd-car-keyboard/dd-car-keyboard.vue +8 -8
  11. package/components/dd-card/dd-card.vue +9 -9
  12. package/components/dd-cascader/dd-cascader.vue +3 -3
  13. package/components/dd-cell/dd-cell.vue +9 -9
  14. package/components/dd-cell-group/dd-cell-group.vue +4 -4
  15. package/components/dd-champion-card/dd-champion-card.vue +8 -8
  16. package/components/dd-checkbox/dd-checkbox.vue +8 -8
  17. package/components/dd-collapse/dd-collapse.vue +1 -1
  18. package/components/dd-collapse-item/dd-collapse-item.vue +6 -6
  19. package/components/dd-count-down/dd-count-down.vue +1 -1
  20. package/components/dd-coupon/dd-coupon.vue +53 -53
  21. package/components/dd-cropper/dd-cropper.vue +57 -40
  22. package/components/dd-date-picker/dd-date-picker.vue +7 -7
  23. package/components/dd-dialog/dd-dialog.vue +12 -12
  24. package/components/dd-divider/dd-divider.vue +2 -2
  25. package/components/dd-drawer/dd-drawer.vue +7 -7
  26. package/components/dd-dropdown-item/dd-dropdown-item.vue +3 -3
  27. package/components/dd-dropdown-menu/dd-dropdown-menu.vue +3 -3
  28. package/components/dd-empty-state/dd-empty-state.vue +5 -5
  29. package/components/dd-feature-grid/dd-feature-grid.vue +3 -3
  30. package/components/dd-field/dd-field.vue +18 -18
  31. package/components/dd-goods-sku/dd-goods-sku.vue +14 -14
  32. package/components/dd-icon/dd-icon.vue +1 -1
  33. package/components/dd-image/dd-image.vue +5 -5
  34. package/components/dd-input/dd-input.vue +9 -9
  35. package/components/dd-keyboard/dd-keyboard.vue +5 -5
  36. package/components/dd-list-cell/dd-list-cell.vue +8 -8
  37. package/components/dd-loading/dd-loading.vue +4 -4
  38. package/components/dd-loadmore/dd-loadmore.vue +1 -1
  39. package/components/dd-mini-program-navbar/dd-mini-program-navbar.vue +7 -7
  40. package/components/dd-modal/dd-modal.vue +11 -11
  41. package/components/dd-navigation/dd-navigation.vue +6 -6
  42. package/components/dd-number-keyboard/dd-number-keyboard.vue +6 -6
  43. package/components/dd-picker/dd-picker.vue +8 -8
  44. package/components/dd-popover/dd-popover.vue +4 -4
  45. package/components/dd-popover-item/dd-popover-item.vue +2 -2
  46. package/components/dd-popup/dd-popup.vue +4 -4
  47. package/components/dd-progress/dd-progress.vue +5 -5
  48. package/components/dd-pull-refresh/dd-pull-refresh.vue +4 -4
  49. package/components/dd-radio/dd-radio.vue +5 -5
  50. package/components/dd-room-card/dd-room-card.vue +26 -26
  51. package/components/dd-search-bar/dd-search-bar.vue +11 -11
  52. package/components/dd-segmented-tab/dd-segmented-tab.vue +7 -7
  53. package/components/dd-signature/dd-signature.vue +6 -6
  54. package/components/dd-skeleton/dd-skeleton.vue +2 -2
  55. package/components/dd-slider/dd-slider.vue +6 -6
  56. package/components/dd-stat-card/dd-stat-card.vue +9 -9
  57. package/components/dd-step/dd-step.vue +2 -2
  58. package/components/dd-stepper/dd-stepper.vue +7 -7
  59. package/components/dd-swipe/dd-swipe.vue +1 -1
  60. package/components/dd-swipe-action/dd-swipe-action.vue +3 -3
  61. package/components/dd-swipeable-tab/dd-swipeable-tab.vue +5 -5
  62. package/components/dd-switch/dd-switch.vue +4 -4
  63. package/components/dd-tabbar/dd-tabbar.vue +2 -2
  64. package/components/dd-tabbar-item/dd-tabbar-item.vue +2 -2
  65. package/components/dd-tag/dd-tag.vue +33 -33
  66. package/components/dd-text/dd-text.vue +11 -11
  67. package/components/dd-toast/dd-toast.vue +5 -5
  68. package/components/dd-top-navbar/dd-top-navbar.vue +4 -4
  69. package/components/dd-upload/dd-upload.vue +6 -6
  70. package/components/dd-workorder-card/dd-workorder-card.vue +17 -17
  71. package/package.json +2 -1
  72. package/scss/_mixins.scss +11 -11
  73. package/scss/_theme-tokens.scss +183 -0
  74. package/scss/_variables.scss +298 -250
  75. package/scss/theme.scss +36 -0
@@ -95,14 +95,14 @@ function onClick() {
95
95
 
96
96
  .dd-room-card {
97
97
  box-sizing: border-box;
98
- background: $dd-bg-elevated;
98
+ background: var(--dd-bg-elevated, #{$dd-bg-elevated});
99
99
  @include dd-transition(transform 0.2s ease);
100
100
  }
101
101
 
102
102
  // === GRID ===
103
103
  .dd-room-card--grid {
104
104
  position: relative;
105
- border: 1px solid $dd-border-default;
105
+ border: 1px solid var(--dd-border-default, #{$dd-border-default});
106
106
  border-radius: $dd-radius-lg;
107
107
  overflow: hidden;
108
108
  aspect-ratio: 1 / 1;
@@ -113,7 +113,7 @@ function onClick() {
113
113
  .dd-room-card__topbar {
114
114
  height: 12rpx;
115
115
  width: 100%;
116
- background: $dd-surface-container-highest;
116
+ background: var(--dd-surface-container-highest, #{$dd-surface-container-highest});
117
117
  flex-shrink: 0;
118
118
  }
119
119
 
@@ -130,7 +130,7 @@ function onClick() {
130
130
  .dd-room-card__no {
131
131
  font-size: $dd-font-size-h1;
132
132
  font-weight: $dd-font-weight-h1;
133
- color: $dd-text-primary;
133
+ color: var(--dd-text-primary, #{$dd-text-primary});
134
134
  line-height: 1.2;
135
135
  }
136
136
 
@@ -148,17 +148,17 @@ function onClick() {
148
148
  width: 12rpx;
149
149
  height: 12rpx;
150
150
  border-radius: 50%;
151
- background: $dd-neutral-500;
151
+ background: var(--dd-muted, #{$dd-muted});
152
152
  }
153
153
 
154
154
  .dd-room-card__status-text {
155
155
  font-size: $dd-font-size-caption;
156
- color: $dd-text-tertiary;
156
+ color: var(--dd-text-tertiary, #{$dd-text-tertiary});
157
157
  }
158
158
 
159
159
  .dd-room-card__capacity {
160
160
  font-size: $dd-font-size-caption;
161
- color: $dd-text-tertiary;
161
+ color: var(--dd-text-tertiary, #{$dd-text-tertiary});
162
162
 
163
163
  &--inline {
164
164
  font-size: $dd-font-size-caption;
@@ -171,12 +171,12 @@ function onClick() {
171
171
  right: 12rpx;
172
172
  z-index: 2;
173
173
  padding: 2rpx 12rpx;
174
- background: $dd-gradient-primary;
174
+ background: var(--dd-gradient-primary, #{$dd-gradient-primary});
175
175
  border-radius: $dd-radius-sm;
176
176
  text {
177
177
  font-size: $dd-font-size-caption;
178
178
  font-weight: 700;
179
- color: $dd-neutral-900;
179
+ color: var(--dd-primary-contrast, #{$dd-primary-contrast});
180
180
  line-height: 1.6;
181
181
  }
182
182
  }
@@ -184,33 +184,33 @@ function onClick() {
184
184
  // === 顶部栏/状态色: occupied=gold, reserved=accent, idle=neutral ===
185
185
  .dd-room-card--occupied.dd-room-card--grid {
186
186
  .dd-room-card__topbar {
187
- background: $dd-gradient-primary-h;
187
+ background: var(--dd-gradient-primary-h, #{$dd-gradient-primary-h});
188
188
  }
189
189
  .dd-room-card__dot {
190
- background: $dd-primary-400;
190
+ background: var(--dd-primary-400, #{$dd-primary-400});
191
191
  box-shadow: 0 0 12rpx rgba(245, 166, 35, 0.6);
192
192
  }
193
193
  .dd-room-card__status-text {
194
- color: $dd-primary-400;
194
+ color: var(--dd-primary-400, #{$dd-primary-400});
195
195
  }
196
196
  }
197
197
 
198
198
  .dd-room-card--reserved.dd-room-card--grid {
199
199
  .dd-room-card__topbar {
200
- background: $dd-gradient-accent-h;
200
+ background: var(--dd-gradient-accent-h, #{$dd-gradient-accent-h});
201
201
  }
202
202
  .dd-room-card__dot {
203
- background: $dd-accent-400;
203
+ background: var(--dd-accent-400, #{$dd-accent-400});
204
204
  box-shadow: 0 0 12rpx rgba(45, 75, 160, 0.6);
205
205
  }
206
206
  .dd-room-card__status-text {
207
- color: $dd-accent-300;
207
+ color: var(--dd-accent-300, #{$dd-accent-300});
208
208
  }
209
209
  }
210
210
 
211
211
  .dd-room-card--idle.dd-room-card--grid {
212
212
  .dd-room-card__topbar {
213
- background: $dd-surface-container-highest;
213
+ background: var(--dd-surface-container-highest, #{$dd-surface-container-highest});
214
214
  }
215
215
  }
216
216
 
@@ -221,7 +221,7 @@ function onClick() {
221
221
  align-items: center;
222
222
  gap: $dd-space-3;
223
223
  padding: $dd-space-3 $dd-space-4;
224
- border: 1px solid $dd-border-default;
224
+ border: 1px solid var(--dd-border-default, #{$dd-border-default});
225
225
  border-radius: $dd-radius-md;
226
226
  }
227
227
 
@@ -233,7 +233,7 @@ function onClick() {
233
233
  display: flex;
234
234
  align-items: center;
235
235
  justify-content: center;
236
- background: $dd-gradient-accent;
236
+ background: var(--dd-gradient-accent, #{$dd-gradient-accent});
237
237
 
238
238
  &-text {
239
239
  font-size: $dd-font-size-body;
@@ -243,11 +243,11 @@ function onClick() {
243
243
  }
244
244
 
245
245
  .dd-room-card--vip .dd-room-card__avatar {
246
- background: $dd-gradient-primary;
246
+ background: var(--dd-gradient-primary, #{$dd-gradient-primary});
247
247
  }
248
248
 
249
249
  .dd-room-card--theme .dd-room-card__avatar {
250
- background: $dd-gradient-accent;
250
+ background: var(--dd-gradient-accent, #{$dd-gradient-accent});
251
251
  }
252
252
 
253
253
  .dd-room-card__list-info {
@@ -266,7 +266,7 @@ function onClick() {
266
266
  .dd-room-card__name {
267
267
  font-size: $dd-font-size-body;
268
268
  font-weight: 600;
269
- color: $dd-text-primary;
269
+ color: var(--dd-text-primary, #{$dd-text-primary});
270
270
  @include dd-ellipsis(1);
271
271
  }
272
272
 
@@ -278,27 +278,27 @@ function onClick() {
278
278
 
279
279
  .dd-room-card__time {
280
280
  font-size: $dd-font-size-caption;
281
- color: $dd-text-secondary;
281
+ color: var(--dd-text-secondary, #{$dd-text-secondary});
282
282
  }
283
283
 
284
284
  // list 状态色
285
285
  .dd-room-card--occupied.dd-room-card--list {
286
286
  .dd-room-card__dot {
287
- background: $dd-primary-400;
287
+ background: var(--dd-primary-400, #{$dd-primary-400});
288
288
  box-shadow: 0 0 12rpx rgba(245, 166, 35, 0.6);
289
289
  }
290
290
  .dd-room-card__status-text {
291
- color: $dd-primary-400;
291
+ color: var(--dd-primary-400, #{$dd-primary-400});
292
292
  }
293
293
  }
294
294
 
295
295
  .dd-room-card--reserved.dd-room-card--list {
296
296
  .dd-room-card__dot {
297
- background: $dd-accent-400;
297
+ background: var(--dd-accent-400, #{$dd-accent-400});
298
298
  box-shadow: 0 0 12rpx rgba(45, 75, 160, 0.6);
299
299
  }
300
300
  .dd-room-card__status-text {
301
- color: $dd-accent-300;
301
+ color: var(--dd-accent-300, #{$dd-accent-300});
302
302
  }
303
303
  }
304
304
 
@@ -109,8 +109,8 @@ function onCancel() {
109
109
  gap: $dd-space-2;
110
110
  height: 88rpx;
111
111
  padding: 0 $dd-space-3;
112
- background: $dd-neutral-800;
113
- border: 1px solid $dd-neutral-700;
112
+ background: var(--dd-surface-container-low, #{$dd-surface-container-low});
113
+ border: 1px solid var(--dd-border-default, #{$dd-border-default});
114
114
  border-radius: $dd-radius-full;
115
115
  box-sizing: border-box;
116
116
  @include dd-transition(border-color 0.2s, box-shadow 0.2s);
@@ -120,19 +120,19 @@ function onCancel() {
120
120
  }
121
121
 
122
122
  &--focus {
123
- border-color: $dd-primary-500;
124
- box-shadow: $dd-shadow-glow-gold-lg;
123
+ border-color: var(--dd-primary, #{$dd-primary});
124
+ box-shadow: var(--dd-shadow-glow-gold-lg, #{$dd-shadow-glow-gold-lg});
125
125
  }
126
126
  }
127
127
 
128
128
  &__icon {
129
129
  font-size: $dd-font-size-body;
130
- color: $dd-neutral-400;
130
+ color: var(--dd-muted, #{$dd-muted});
131
131
  line-height: 1;
132
132
  @include dd-transition(color 0.2s);
133
133
 
134
134
  &--focus {
135
- color: $dd-primary-400;
135
+ color: var(--dd-primary-400, #{$dd-primary-400});
136
136
  }
137
137
  }
138
138
 
@@ -141,7 +141,7 @@ function onCancel() {
141
141
  min-width: 0;
142
142
  height: 100%;
143
143
  font-size: $dd-font-size-body;
144
- color: $dd-neutral-100;
144
+ color: var(--dd-text-primary, #{$dd-text-primary});
145
145
  background: transparent;
146
146
  border: none;
147
147
  }
@@ -151,8 +151,8 @@ function onCancel() {
151
151
  width: 36rpx;
152
152
  height: 36rpx;
153
153
  border-radius: 50%;
154
- background: $dd-neutral-800;
155
- color: $dd-neutral-300;
154
+ background: var(--dd-surface-container-high, #{$dd-surface-container-high});
155
+ color: var(--dd-text-secondary, #{$dd-text-secondary});
156
156
  font-size: $dd-font-size-caption;
157
157
  line-height: 1;
158
158
  }
@@ -162,14 +162,14 @@ function onCancel() {
162
162
  padding: 0 $dd-space-1;
163
163
  font-size: $dd-font-size-body;
164
164
  font-weight: 500;
165
- color: $dd-primary-400;
165
+ color: var(--dd-primary-400, #{$dd-primary-400});
166
166
  }
167
167
 
168
168
  &--disabled {
169
169
  opacity: 0.4;
170
170
  @include dd-no-touch;
171
171
  .dd-search__icon {
172
- color: $dd-neutral-600;
172
+ color: var(--dd-text-tertiary, #{$dd-text-tertiary});
173
173
  }
174
174
  }
175
175
  }
@@ -113,8 +113,8 @@ watch(() => props.options, measure)
113
113
  position: relative;
114
114
  display: inline-flex;
115
115
  padding: $dd-space-1;
116
- background: $dd-neutral-800;
117
- border: 1px solid $dd-border-default;
116
+ background: var(--dd-surface-container-high, #{$dd-surface-container-high});
117
+ border: 1px solid var(--dd-border-default, #{$dd-border-default});
118
118
  border-radius: $dd-radius-full;
119
119
  }
120
120
 
@@ -124,13 +124,13 @@ watch(() => props.options, measure)
124
124
  min-width: 120rpx;
125
125
  padding: 12rpx $dd-space-4;
126
126
  @include dd-flex-center;
127
- color: $dd-text-tertiary;
127
+ color: var(--dd-text-tertiary, #{$dd-text-tertiary});
128
128
  font-size: $dd-font-size-body;
129
129
  font-weight: 500;
130
130
  @include dd-transition(color 0.3s);
131
131
 
132
132
  &--active {
133
- color: $dd-neutral-900;
133
+ color: var(--dd-primary-contrast, #{$dd-primary-contrast});
134
134
  font-weight: 600;
135
135
  }
136
136
  }
@@ -157,14 +157,14 @@ watch(() => props.options, measure)
157
157
  .dd-seg-text__item {
158
158
  position: relative;
159
159
  padding: $dd-space-2 0;
160
- color: $dd-text-tertiary;
160
+ color: var(--dd-text-tertiary, #{$dd-text-tertiary});
161
161
  font-size: $dd-font-size-body;
162
162
  font-weight: 500;
163
163
  @include dd-flex-center;
164
164
  @include dd-transition(color 0.3s);
165
165
 
166
166
  &--active {
167
- color: $dd-primary-400;
167
+ color: var(--dd-primary-400, #{$dd-primary-400});
168
168
  font-weight: 600;
169
169
  }
170
170
  }
@@ -175,7 +175,7 @@ watch(() => props.options, measure)
175
175
  left: 20%;
176
176
  width: 60%;
177
177
  height: $dd-space-1;
178
- background: $dd-primary-400;
178
+ background: var(--dd-primary-400, #{$dd-primary-400});
179
179
  border-radius: $dd-radius-full;
180
180
  }
181
181
  }
@@ -425,7 +425,7 @@
425
425
  flex-direction: column;
426
426
 
427
427
  &__canvas-wrap {
428
- border: 1px solid $dd-border-default;
428
+ border: 1px solid var(--dd-border-default, #{$dd-border-default});
429
429
  border-radius: 4px;
430
430
  overflow: hidden;
431
431
  }
@@ -437,7 +437,7 @@
437
437
 
438
438
  &__toolbar {
439
439
  margin-top: 5px;
440
- background-color: $dd-bg-elevated;
440
+ background-color: var(--dd-bg-elevated, #{$dd-bg-elevated});
441
441
  }
442
442
 
443
443
  &__toolbar-icons {
@@ -466,7 +466,7 @@
466
466
  display: block;
467
467
  margin-bottom: 10px;
468
468
  font-size: 14px;
469
- color: $dd-text-tertiary;
469
+ color: var(--dd-text-tertiary, #{$dd-text-tertiary});
470
470
  }
471
471
  }
472
472
 
@@ -478,7 +478,7 @@
478
478
  display: block;
479
479
  margin-bottom: 10px;
480
480
  font-size: 14px;
481
- color: $dd-text-tertiary;
481
+ color: var(--dd-text-tertiary, #{$dd-text-tertiary});
482
482
  }
483
483
 
484
484
  &__colors {
@@ -492,11 +492,11 @@
492
492
  width: 30px;
493
493
  height: 30px;
494
494
  border-radius: 50%;
495
- border: 2px solid $dd-border-default;
495
+ border: 2px solid var(--dd-border-default, #{$dd-border-default});
496
496
  cursor: pointer;
497
497
 
498
498
  &--active {
499
- border-color: $dd-primary-400;
499
+ border-color: var(--dd-primary-400, #{$dd-primary-400});
500
500
  transform: scale(1.1);
501
501
  }
502
502
  }
@@ -93,7 +93,7 @@ const lineWidths = computed(() => {
93
93
  &__block {
94
94
  position: relative;
95
95
  overflow: hidden;
96
- background: $dd-neutral-800; // var(--dd-skeleton-bg)
96
+ background: var(--dd-surface-container-high, #{$dd-surface-container-high}); // var(--dd-skeleton-bg)
97
97
 
98
98
  &::after {
99
99
  content: '';
@@ -143,7 +143,7 @@ const lineWidths = computed(() => {
143
143
  align-items: center;
144
144
  gap: $dd-space-3;
145
145
  padding: $dd-space-3 0;
146
- @include dd-hairline-bottom($dd-border-subtle);
146
+ @include dd-hairline-bottom(var(--dd-border-subtle, #{$dd-border-subtle}));
147
147
  }
148
148
 
149
149
  &__list-text {
@@ -160,7 +160,7 @@ function onMouseDown(e: any) {
160
160
  width: 100%;
161
161
  height: 6rpx;
162
162
  border-radius: $dd-radius-full;
163
- background: $dd-neutral-800;
163
+ background: var(--dd-surface-container-high, #{$dd-surface-container-high});
164
164
  }
165
165
 
166
166
  &__fill {
@@ -169,7 +169,7 @@ function onMouseDown(e: any) {
169
169
  left: 0;
170
170
  height: 100%;
171
171
  border-radius: $dd-radius-full;
172
- background: $dd-gradient-primary-h;
172
+ background: var(--dd-gradient-primary-h, #{$dd-gradient-primary-h});
173
173
  box-shadow: 0 0 8rpx rgba($dd-primary-400, 0.6);
174
174
  }
175
175
 
@@ -179,9 +179,9 @@ function onMouseDown(e: any) {
179
179
  width: 32rpx;
180
180
  height: 32rpx;
181
181
  background: $dd-color-white;
182
- border: 4rpx solid $dd-primary-400;
182
+ border: 4rpx solid var(--dd-primary-400, #{$dd-primary-400});
183
183
  border-radius: 50%;
184
- box-shadow: $dd-shadow-glow-gold-lg;
184
+ box-shadow: var(--dd-shadow-glow-gold-lg, #{$dd-shadow-glow-gold-lg});
185
185
  transform: translate(-50%, -50%);
186
186
  @include dd-transition(transform 0.1s ease, box-shadow 0.2s ease);
187
187
 
@@ -207,7 +207,7 @@ function onMouseDown(e: any) {
207
207
  left: 50%;
208
208
  transform: translateX(-50%);
209
209
  border: 6rpx solid transparent;
210
- border-top-color: $dd-glass-border;
210
+ border-top-color: var(--dd-glass-border, #{$dd-glass-border});
211
211
  border-bottom: 0;
212
212
  }
213
213
  }
@@ -215,7 +215,7 @@ function onMouseDown(e: any) {
215
215
  &__tooltip-text {
216
216
  font-size: $dd-font-size-caption;
217
217
  font-weight: 600;
218
- color: $dd-primary-300;
218
+ color: var(--dd-primary-300, #{$dd-primary-300});
219
219
  line-height: 1.2;
220
220
  }
221
221
 
@@ -142,33 +142,33 @@ function onClick(e: Event) {
142
142
 
143
143
  // === 6 渐变变体 ===
144
144
  .dd-stat-card--primary {
145
- background: $dd-gradient-primary;
145
+ background: var(--dd-gradient-primary, #{$dd-gradient-primary});
146
146
  &:active {
147
- box-shadow: $dd-shadow-glow-gold-lg;
147
+ box-shadow: var(--dd-shadow-glow-gold-lg, #{$dd-shadow-glow-gold-lg});
148
148
  }
149
149
  }
150
150
 
151
151
  .dd-stat-card--accent {
152
- background: $dd-gradient-accent-wide;
152
+ background: var(--dd-gradient-accent-wide, #{$dd-gradient-accent-wide});
153
153
  &:active {
154
- box-shadow: $dd-shadow-glow-blue-lg;
154
+ box-shadow: var(--dd-shadow-glow-blue-lg, #{$dd-shadow-glow-blue-lg});
155
155
  }
156
156
  }
157
157
 
158
158
  .dd-stat-card--success {
159
- background: $dd-gradient-success;
159
+ background: var(--dd-gradient-success, #{$dd-gradient-success});
160
160
  }
161
161
 
162
162
  .dd-stat-card--warning {
163
- background: $dd-gradient-warning;
163
+ background: var(--dd-gradient-warning, #{$dd-gradient-warning});
164
164
  }
165
165
 
166
166
  .dd-stat-card--error {
167
- background: $dd-gradient-error;
167
+ background: var(--dd-gradient-error, #{$dd-gradient-error});
168
168
  }
169
169
 
170
170
  .dd-stat-card--neutral {
171
- background: $dd-gradient-neutral;
172
- border: 1px solid $dd-neutral-600;
171
+ background: var(--dd-gradient-neutral, #{$dd-gradient-neutral});
172
+ border: 1px solid var(--dd-border-default, #{$dd-border-default});
173
173
  }
174
174
  </style>
@@ -173,7 +173,7 @@ const lineStyle = computed(() => ({
173
173
 
174
174
  &__title {
175
175
  font-size: $dd-font-size-caption;
176
- color: $dd-text-primary;
176
+ color: var(--dd-text-primary, #{$dd-text-primary});
177
177
  line-height: $dd-line-height-caption;
178
178
  }
179
179
 
@@ -181,7 +181,7 @@ const lineStyle = computed(() => ({
181
181
  display: block;
182
182
  margin-top: $dd-space-1;
183
183
  font-size: $dd-font-size-caption;
184
- color: $dd-text-tertiary;
184
+ color: var(--dd-text-tertiary, #{$dd-text-tertiary});
185
185
  line-height: 1.4;
186
186
  }
187
187
  }
@@ -93,8 +93,8 @@ function onPlus() {
93
93
  justify-content: center;
94
94
  gap: $dd-space-1;
95
95
  padding: $dd-space-1;
96
- background: $dd-neutral-800;
97
- border: 1px solid $dd-neutral-700;
96
+ background: var(--dd-surface-container-low, #{$dd-surface-container-low});
97
+ border: 1px solid var(--dd-border-default, #{$dd-border-default});
98
98
  border-radius: $dd-radius-full;
99
99
  box-sizing: border-box;
100
100
 
@@ -102,7 +102,7 @@ function onPlus() {
102
102
  @include dd-flex-center;
103
103
  flex-shrink: 0;
104
104
  border-radius: 50%;
105
- background: $dd-gradient-primary-wide;
105
+ background: var(--dd-gradient-primary-wide, #{$dd-gradient-primary-wide});
106
106
  @include dd-transition(transform 0.1s ease, opacity 0.2s);
107
107
 
108
108
  &--active {
@@ -110,24 +110,24 @@ function onPlus() {
110
110
  }
111
111
 
112
112
  &--disabled {
113
- background: $dd-neutral-800;
113
+ background: var(--dd-surface-container-low, #{$dd-surface-container-low});
114
114
  @include dd-no-touch;
115
115
  .dd-stepper__icon {
116
- color: $dd-neutral-500;
116
+ color: var(--dd-muted, #{$dd-muted});
117
117
  opacity: 0.4;
118
118
  }
119
119
  }
120
120
  }
121
121
 
122
122
  &__icon {
123
- color: $dd-neutral-900;
123
+ color: var(--dd-primary-contrast, #{$dd-primary-contrast});
124
124
  font-weight: 700;
125
125
  line-height: 1;
126
126
  }
127
127
 
128
128
  &__value {
129
129
  text-align: center;
130
- color: $dd-neutral-50;
130
+ color: var(--dd-text-primary, #{$dd-text-primary});
131
131
  font-weight: 700;
132
132
  line-height: 1;
133
133
  @include dd-ellipsis(1);
@@ -139,7 +139,7 @@ defineExpose({ jumpTo, current })
139
139
  @include dd-transition(background 0.3s ease);
140
140
 
141
141
  &--active {
142
- background: $dd-primary-500;
142
+ background: var(--dd-primary, #{$dd-primary});
143
143
  }
144
144
  }
145
145
  }
@@ -75,7 +75,7 @@ const emit = defineEmits<{
75
75
  (e: 'close'): void
76
76
  }>()
77
77
 
78
- // 默认操作色用 error 红 ($dd-error-500)
78
+ // 默认操作色用 error 红 ($dd-error)
79
79
  const defaultActionColor = '#E53935'
80
80
 
81
81
  const translateX = ref(0)
@@ -174,7 +174,7 @@ defineExpose({ close })
174
174
  .dd-swipe-action {
175
175
  position: relative;
176
176
  overflow: hidden;
177
- background: $dd-bg-elevated;
177
+ background: var(--dd-bg-elevated, #{$dd-bg-elevated});
178
178
 
179
179
  &--disabled {
180
180
  .dd-swipe-action__content {
@@ -236,7 +236,7 @@ defineExpose({ close })
236
236
  position: relative;
237
237
  z-index: 1;
238
238
  width: 100%;
239
- background: $dd-bg-elevated;
239
+ background: var(--dd-bg-elevated, #{$dd-bg-elevated});
240
240
  transform: translateX(0);
241
241
 
242
242
  &--anim {
@@ -163,14 +163,14 @@ watch(() => props.options, measure)
163
163
  @include dd-flex-center;
164
164
  height: 100%;
165
165
  padding: 0 $dd-space-4;
166
- color: $dd-text-tertiary;
166
+ color: var(--dd-text-tertiary, #{$dd-text-tertiary});
167
167
  font-size: $dd-font-size-body;
168
168
  font-weight: 500;
169
169
  box-sizing: border-box;
170
170
  @include dd-transition(color 0.3s);
171
171
 
172
172
  &--active {
173
- color: $dd-primary-400;
173
+ color: var(--dd-primary-400, #{$dd-primary-400});
174
174
  font-weight: 600;
175
175
  .dd-swipe__label {
176
176
  text-shadow: 0 0 12px rgba(245, 166, 35, 0.5);
@@ -188,15 +188,15 @@ watch(() => props.options, measure)
188
188
  bottom: 0;
189
189
  left: 0;
190
190
  height: $dd-space-1;
191
- background: $dd-gradient-primary-h;
191
+ background: var(--dd-gradient-primary-h, #{$dd-gradient-primary-h});
192
192
  border-radius: $dd-radius-full;
193
- box-shadow: $dd-shadow-glow-gold-sm;
193
+ box-shadow: var(--dd-shadow-glow-gold-sm, #{$dd-shadow-glow-gold-sm});
194
194
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1),
195
195
  width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
196
196
  }
197
197
 
198
198
  .dd-swipe__divider {
199
199
  height: 1px;
200
- background: $dd-neutral-800;
200
+ background: var(--dd-rule, #{$dd-rule});
201
201
  }
202
202
  </style>
@@ -63,15 +63,15 @@ function onToggle() {
63
63
  }
64
64
 
65
65
  // off
66
- background: $dd-neutral-800;
67
- border: 1px solid $dd-glass-border;
66
+ background: var(--dd-surface-container-high, #{$dd-surface-container-high});
67
+ border: 1px solid var(--dd-glass-border, #{$dd-glass-border});
68
68
  box-shadow: inset 0 2rpx 6rpx rgba(0, 0, 0, 0.3);
69
69
 
70
70
  // on
71
71
  &--on {
72
- background: $dd-gradient-primary;
72
+ background: var(--dd-gradient-primary, #{$dd-gradient-primary});
73
73
  border-color: rgba($dd-primary-300, 0.5);
74
- box-shadow: $dd-shadow-glow-gold-lg, inset 0 2rpx 6rpx rgba(0, 0, 0, 0.1);
74
+ box-shadow: var(--dd-shadow-glow-gold-lg, #{$dd-shadow-glow-gold-lg}), inset 0 2rpx 6rpx rgba(0, 0, 0, 0.1);
75
75
  }
76
76
 
77
77
  &--disabled {
@@ -79,11 +79,11 @@ provide('ddTabbar', {
79
79
  align-items: center;
80
80
  width: 100%;
81
81
  height: 100rpx;
82
- background: $dd-surface;
82
+ background: var(--dd-surface, #{$dd-surface});
83
83
  box-sizing: border-box;
84
84
 
85
85
  &--border {
86
- @include dd-hairline-top($dd-border-default);
86
+ @include dd-hairline-top(var(--dd-border-default, #{$dd-border-default}));
87
87
  }
88
88
 
89
89
  &--safe {
@@ -99,7 +99,7 @@ function onClick() {
99
99
  height: $dd-space-4;
100
100
  padding: 0 $dd-space-1;
101
101
  border-radius: $dd-radius-full;
102
- background: $dd-error;
102
+ background: var(--dd-error, #{$dd-error});
103
103
  @include dd-flex-center;
104
104
  }
105
105
 
@@ -116,7 +116,7 @@ function onClick() {
116
116
  width: $dd-space-2;
117
117
  height: $dd-space-2;
118
118
  border-radius: 50%;
119
- background: $dd-error;
119
+ background: var(--dd-error, #{$dd-error});
120
120
  }
121
121
  }
122
122
  </style>