@gitlab/ui 85.12.1 → 85.13.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 (39) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/components/base/skeleton_loader/skeleton_loader.js +3 -3
  3. package/dist/components/experimental/duo/chat/constants.js +2 -1
  4. package/dist/components/experimental/duo/chat/duo_chat.js +5 -2
  5. package/dist/index.css +2 -2
  6. package/dist/index.css.map +1 -1
  7. package/dist/tokens/build/js/tokens.dark.js +34 -1
  8. package/dist/tokens/build/js/tokens.js +34 -1
  9. package/dist/tokens/css/tokens.css +33 -0
  10. package/dist/tokens/css/tokens.dark.css +33 -0
  11. package/dist/tokens/js/tokens.dark.js +33 -0
  12. package/dist/tokens/js/tokens.js +33 -0
  13. package/dist/tokens/json/tokens.dark.json +827 -0
  14. package/dist/tokens/json/tokens.json +827 -0
  15. package/dist/tokens/scss/_tokens.dark.scss +33 -0
  16. package/dist/tokens/scss/_tokens.scss +33 -0
  17. package/dist/tokens/scss/_tokens_custom_properties.scss +33 -0
  18. package/dist/utility_classes.css +1 -1
  19. package/dist/utility_classes.css.map +1 -1
  20. package/package.json +1 -2
  21. package/src/components/base/form/form_checkbox/form_checkbox.scss +55 -36
  22. package/src/components/base/skeleton_loader/skeleton_loader.scss +2 -2
  23. package/src/components/base/skeleton_loader/skeleton_loader.vue +3 -3
  24. package/src/components/experimental/duo/chat/constants.js +1 -0
  25. package/src/components/experimental/duo/chat/duo_chat.md +11 -1
  26. package/src/components/experimental/duo/chat/duo_chat.vue +5 -2
  27. package/src/scss/mixins.scss +4 -3
  28. package/src/scss/variables.scss +5 -4
  29. package/src/tokens/action.tokens.json +261 -0
  30. package/src/tokens/build/css/tokens.css +33 -0
  31. package/src/tokens/build/css/tokens.dark.css +33 -0
  32. package/src/tokens/build/js/tokens.dark.js +33 -0
  33. package/src/tokens/build/js/tokens.js +33 -0
  34. package/src/tokens/build/json/tokens.dark.json +827 -0
  35. package/src/tokens/build/json/tokens.json +827 -0
  36. package/src/tokens/build/scss/_tokens.dark.scss +33 -0
  37. package/src/tokens/build/scss/_tokens.scss +33 -0
  38. package/src/tokens/build/scss/_tokens_custom_properties.scss +33 -0
  39. package/src/tokens/control.tokens.json +26 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gitlab/ui",
3
- "version": "85.12.1",
3
+ "version": "85.13.0",
4
4
  "description": "GitLab UI Components",
5
5
  "license": "MIT",
6
6
  "main": "dist/index.js",
@@ -30,7 +30,6 @@
30
30
  "prebuild": "run-s build-tokens generate-utilities",
31
31
  "prepare": "run-s build-tokens generate-utilities",
32
32
  "generate-utilities": "make src/scss/utilities.scss",
33
- "deprecate-gl-utils": "node ./bin/deprecate_utils.js",
34
33
  "copy-fonts": "make copy-fonts",
35
34
  "build-tokens": "node ./bin/build_tokens.js",
36
35
  "clean": "rm -r dist storybook src/scss/utilities.scss",
@@ -15,7 +15,7 @@
15
15
  .gl-form-radio {
16
16
  @include gl-font-base;
17
17
  @include gl-line-height-normal;
18
- @include gl-text-gray-900;
18
+ color: var(--gl-text-color-default);
19
19
 
20
20
  &.form-check {
21
21
  @include gl-display-flex;
@@ -45,9 +45,10 @@
45
45
  .form-check-input:disabled,
46
46
  .form-check-input:disabled ~ .form-check-label,
47
47
  .custom-control-input:disabled,
48
- .custom-control-input:disabled ~ .custom-control-label {
48
+ .custom-control-input:disabled ~ .custom-control-label,
49
+ .custom-control-input:disabled ~ .custom-control-label > .help-text {
49
50
  @include gl-cursor-not-allowed;
50
- @include gl-text-gray-400;
51
+ color: var(--gl-text-color-disabled);
51
52
  }
52
53
 
53
54
  &.custom-control {
@@ -65,27 +66,27 @@
65
66
  }
66
67
 
67
68
  &::before {
68
- @include gl-bg-white;
69
- @include gl-border-gray-400;
69
+ background-color: var(--gl-control-background-color-default);
70
+ border-color: var(--gl-control-border-color-default);
70
71
  }
71
72
  }
72
73
 
73
- .custom-control-input:not(:disabled):focus ~ .custom-control-label {
74
- &::before {
75
- @include gl-border-gray-500;
76
- @include gl-focus;
77
- }
74
+ .custom-control-input:not(:disabled):hover ~ .custom-control-label::before {
75
+ border-color: var(--gl-control-border-color-hover);
78
76
  }
79
77
 
80
- .custom-control-input:checked ~ .custom-control-label {
81
- &::before {
82
- @include gl-bg-blue-500;
83
- @include gl-border-blue-500;
78
+ .custom-control-input:not(:disabled):focus ~ .custom-control-label::before {
79
+ @include gl-focus;
80
+ border-color: var(--gl-control-border-color-focus);
81
+ }
84
82
 
85
- @media (forced-colors: active) {
86
- background-color: LinkText; // stylelint-disable-line scale-unlimited/declaration-strict-value
87
- border-color: LinKText; // stylelint-disable-line scale-unlimited/declaration-strict-value
88
- }
83
+ .custom-control-input:checked ~ .custom-control-label::before {
84
+ background-color: var(--gl-control-background-color-selected-default);
85
+ border-color: var(--gl-control-border-color-selected-default);
86
+
87
+ @media (forced-colors: active) {
88
+ background-color: LinkText; // stylelint-disable-line scale-unlimited/declaration-strict-value
89
+ border-color: LinKText; // stylelint-disable-line scale-unlimited/declaration-strict-value
89
90
  }
90
91
  }
91
92
 
@@ -93,8 +94,8 @@
93
94
  .custom-control-input[type='checkbox']:indeterminate ~ .custom-control-label,
94
95
  .custom-control-input[type='radio']:checked ~ .custom-control-label {
95
96
  &::after {
96
- @include gl-bg-white;
97
97
  background: 50% 50% no-repeat;
98
+ background-color: var(--gl-control-indicator-color-selected);
98
99
  mask-repeat: no-repeat;
99
100
  mask-position: center center;
100
101
  }
@@ -116,11 +117,22 @@
116
117
  }
117
118
 
118
119
  .custom-control-input:not(:disabled):checked ~ .custom-control-label:hover,
120
+ .custom-control-input:not(:disabled):hover:checked ~ .custom-control-label {
121
+ &::before {
122
+ background-color: var(--gl-control-background-color-selected-hover);
123
+ border-color: var(--gl-control-border-color-selected-hover);
124
+ }
125
+ }
126
+
127
+ .custom-control-input:not(:disabled):focus:checked ~ .custom-control-label::before {
128
+ background-color: var(--gl-control-background-color-selected-focus);
129
+ border-color: var(--gl-control-border-color-selected-focus);
130
+ }
131
+
132
+ .custom-control-input:not(:disabled):checked ~ .custom-control-label:hover,
133
+ .custom-control-input:not(:disabled):hover:checked ~ .custom-control-label,
119
134
  .custom-control-input:not(:disabled):focus:checked ~ .custom-control-label {
120
135
  &::before {
121
- @include gl-bg-blue-700;
122
- @include gl-border-blue-700;
123
-
124
136
  @media (forced-colors: active) {
125
137
  background-color: LinkText; // stylelint-disable-line scale-unlimited/declaration-strict-value
126
138
  border-color: LinKText; // stylelint-disable-line scale-unlimited/declaration-strict-value
@@ -130,8 +142,8 @@
130
142
 
131
143
  &.custom-checkbox {
132
144
  .custom-control-input:indeterminate ~ .custom-control-label::before {
133
- @include gl-bg-blue-500;
134
- @include gl-border-blue-500;
145
+ background-color: var(--gl-control-background-color-selected-default);
146
+ border-color: var(--gl-control-border-color-selected-default);
135
147
 
136
148
  @media (forced-colors: active) {
137
149
  background-color: LinkText; // stylelint-disable-line scale-unlimited/declaration-strict-value
@@ -139,11 +151,18 @@
139
151
  }
140
152
  }
141
153
 
142
- .custom-control-input:not(:disabled):indeterminate ~ .custom-control-label:hover::before,
154
+ .custom-control-input:not(:disabled):indeterminate ~ .custom-control-label:hover::before {
155
+ background-color: var(--gl-control-background-color-selected-hover);
156
+ border-color: var(--gl-control-border-color-selected-hover);
157
+ }
158
+
143
159
  .custom-control-input:not(:disabled):focus:indeterminate ~ .custom-control-label::before {
144
- @include gl-bg-blue-700;
145
- @include gl-border-blue-700;
160
+ background-color: var(--gl-control-background-color-selected-focus);
161
+ border-color: var(--gl-control-border-color-selected-focus);
162
+ }
146
163
 
164
+ .custom-control-input:not(:disabled):indeterminate ~ .custom-control-label:hover::before,
165
+ .custom-control-input:not(:disabled):focus:indeterminate ~ .custom-control-label::before {
147
166
  @media (forced-colors: active) {
148
167
  background-color: LinkText; // stylelint-disable-line scale-unlimited/declaration-strict-value
149
168
  border-color: LinKText; // stylelint-disable-line scale-unlimited/declaration-strict-value
@@ -155,9 +174,9 @@
155
174
  @include gl-cursor-not-allowed;
156
175
 
157
176
  &::before {
158
- @include gl-bg-gray-50;
159
- @include gl-border-gray-100;
160
177
  @include gl-pointer-events-auto;
178
+ background-color: var(--gl-control-background-color-disabled);
179
+ border-color: var(--gl-control-border-color-disabled);
161
180
 
162
181
  @media (forced-colors: active) {
163
182
  opacity: 0.5;
@@ -168,22 +187,22 @@
168
187
  .custom-control-input:checked:disabled ~ .custom-control-label,
169
188
  .custom-control-input[type='checkbox']:indeterminate:disabled ~ .custom-control-label {
170
189
  &::before {
171
- @include gl-bg-gray-100;
172
- @include gl-border-gray-100;
190
+ background-color: var(--gl-control-background-color-disabled);
191
+ border-color: var(--gl-control-border-color-disabled);
173
192
  }
174
193
 
175
194
  &::after {
176
195
  background-image: none;
177
- @include gl-bg-gray-500;
196
+ background-color: var(--gl-control-indicator-color-disabled);
178
197
 
179
198
  /* Ensure state indicators (like the checkmark for checked or
180
- the dash for indeterminate) are visible in Windows High
181
- Contrast Mode.
199
+ the dash for indeterminate) are visible in Windows High
200
+ Contrast Mode.
182
201
  */
183
202
  @media screen and (forced-colors: active) {
184
203
  forced-color-adjust: none;
185
204
  /* system color reference for disabled text applied to
186
- background here.
205
+ background here.
187
206
  */
188
207
  // stylelint-disable-next-line
189
208
  background-color: GrayText;
@@ -194,9 +213,9 @@
194
213
 
195
214
  .help-text {
196
215
  @include gl-mt-2;
197
- @include gl-text-gray-500;
198
216
  @include gl-mb-0;
199
217
  @include gl-font-base;
200
218
  @include gl-line-height-normal;
219
+ color: var(--gl-text-color-subtle);
201
220
  }
202
221
  }
@@ -7,11 +7,11 @@
7
7
  @include gl-opacity-10;
8
8
  }
9
9
 
10
- .primary-stop {
10
+ .background-stop {
11
11
  stop-color: var(--gl-skeleton-loader-background-color);
12
12
  }
13
13
 
14
- .secondary-stop {
14
+ .shimmer-stop {
15
15
  stop-color: var(--gl-skeleton-loader-shimmer-color);
16
16
  }
17
17
  }
@@ -169,7 +169,7 @@ export default {
169
169
  createElement(
170
170
  'stop',
171
171
  {
172
- class: 'primary-stop',
172
+ class: 'background-stop',
173
173
  attrs: {
174
174
  offset: '0%',
175
175
  },
@@ -188,7 +188,7 @@ export default {
188
188
  createElement(
189
189
  'stop',
190
190
  {
191
- class: 'secondary-stop',
191
+ class: 'shimmer-stop',
192
192
  attrs: {
193
193
  offset: '50%',
194
194
  },
@@ -207,7 +207,7 @@ export default {
207
207
  createElement(
208
208
  'stop',
209
209
  {
210
- class: 'primary-stop',
210
+ class: 'background-stop',
211
211
  attrs: {
212
212
  offset: '100%',
213
213
  },
@@ -1,5 +1,6 @@
1
1
  export const CHAT_RESET_MESSAGE = '/reset';
2
2
  export const CHAT_CLEAN_MESSAGE = '/clean';
3
+ export const CHAT_CLEAR_MESSAGE = '/clear';
3
4
 
4
5
  export const LOADING_TRANSITION_DURATION = 7500;
5
6
 
@@ -17,6 +17,7 @@ consumer component.
17
17
  :is-chat-available="isChatAvailable"
18
18
  :predefined-prompts="predefinedPrompts"
19
19
  :badge-help-page-url="badgeHelpPageUrl"
20
+ :canceled-request-ids="cancelledRequestIds"
20
21
  :tool-name="toolName"
21
22
  :empty-state-title="emptyStateTitle"
22
23
  :empty-state-description="emptyStateDescription"
@@ -92,6 +93,7 @@ export default {
92
93
  error: null,
93
94
  isLoading: false,
94
95
  toolName: '',
96
+ cancelledRequestIds: []
95
97
  }
96
98
  },
97
99
  provide: {
@@ -113,6 +115,11 @@ export default {
113
115
  this.chatPromptPlaceholder = 'Type your question here';
114
116
  }
115
117
  methods: {
118
+ onChatCancel() {
119
+ // pushing last requestId of messages to canceled Request Ids
120
+ this.cancelledRequestIds.push(this.messages[this.messages.length - 1].requestId);
121
+ this.isLoading = false;
122
+ },
116
123
  onChatHidden() {
117
124
  ...
118
125
  },
@@ -125,7 +132,10 @@ export default {
125
132
  ...
126
133
  },
127
134
  onAiResponse(data) {
128
- this.messages = data
135
+ // check if requestId was not cancelled
136
+ if (requestId && !this.cancelledRequestIds.includes(data.requestId)) {
137
+ this.messages = data
138
+ }
129
139
 
130
140
  this.isLoading = false;
131
141
  },
@@ -16,7 +16,7 @@ import { SafeHtmlDirective as SafeHtml } from '../../../../directives/safe_html/
16
16
  import GlDuoChatLoader from './components/duo_chat_loader/duo_chat_loader.vue';
17
17
  import GlDuoChatPredefinedPrompts from './components/duo_chat_predefined_prompts/duo_chat_predefined_prompts.vue';
18
18
  import GlDuoChatConversation from './components/duo_chat_conversation/duo_chat_conversation.vue';
19
- import { CHAT_CLEAN_MESSAGE, CHAT_RESET_MESSAGE } from './constants';
19
+ import { CHAT_CLEAN_MESSAGE, CHAT_RESET_MESSAGE, CHAT_CLEAR_MESSAGE } from './constants';
20
20
 
21
21
  export const i18n = {
22
22
  CHAT_DEFAULT_TITLE: 'GitLab Duo Chat',
@@ -84,6 +84,9 @@ export default {
84
84
  default: () => [],
85
85
  validator: itemsValidator,
86
86
  },
87
+ /**
88
+ * Array of RequestIds that have been canceled.
89
+ */
87
90
  canceledRequestIds: {
88
91
  type: Array,
89
92
  required: false,
@@ -314,7 +317,7 @@ export default {
314
317
  * @param {String} prompt The user prompt to send.
315
318
  */
316
319
 
317
- if (![CHAT_RESET_MESSAGE, CHAT_CLEAN_MESSAGE].includes(this.prompt)) {
320
+ if (![CHAT_RESET_MESSAGE, CHAT_CLEAN_MESSAGE, CHAT_CLEAR_MESSAGE].includes(this.prompt)) {
318
321
  this.displaySubmitButton = false;
319
322
  }
320
323
  this.$emit('send-chat-prompt', this.prompt.trim());
@@ -54,8 +54,8 @@
54
54
  ) {
55
55
  @if $inset == true {
56
56
  @if $color {
57
- box-shadow: inset 0 0 0 $outline-width $blue-400,
58
- inset 0 0 0 #{$outline-width + $outline-offset} $white,
57
+ box-shadow: inset 0 0 0 $outline-width var(--gl-focus-ring-outer-color),
58
+ inset 0 0 0 #{$outline-width + $outline-offset} var(--gl-focus-ring-inner-color),
59
59
  inset 0 0 0 #{$outline-width + $outline-offset + 1px} $color,
60
60
  $focus-ring-inset if-important($important);
61
61
  outline: none if-important($important);
@@ -66,7 +66,8 @@
66
66
  outline: $focus-ring-outline if-important($important);
67
67
  outline-offset: $outline-offset;
68
68
  } @else {
69
- box-shadow: inset 0 0 0 $outline-width $blue-400, $focus-ring-inset if-important($important);
69
+ box-shadow: inset 0 0 0 $outline-width var(--gl-focus-ring-outer-color),
70
+ $focus-ring-inset if-important($important);
70
71
  outline: none if-important($important);
71
72
  @media (forced-colors: active) {
72
73
  outline: 2px solid LinkText if-important($important);
@@ -221,12 +221,13 @@ $gl-easing-out-cubic: cubic-bezier(0.22, 0.61, 0.36, 1);
221
221
  $outline-offset: 1px;
222
222
  $outline-width: 2px;
223
223
  $outline: #{$outline-offset + $outline-width};
224
- $focus-ring: 0 0 0 $outline-offset $white, 0 0 0 #{$outline-offset + $outline-width} $blue-400;
225
- $focus-ring-inset: inset 0 0 0 #{$outline-width + $outline-offset} $white,
226
- inset 0 0 0 $outline-offset $white;
224
+ $focus-ring: 0 0 0 $outline-offset var(--gl-focus-ring-inner-color),
225
+ 0 0 0 #{$outline-offset + $outline-width} var(--gl-focus-ring-outer-color);
226
+ $focus-ring-inset: inset 0 0 0 #{$outline-width + $outline-offset} var(--gl-focus-ring-inner-color),
227
+ inset 0 0 0 $outline-offset var(--gl-focus-ring-inner-color);
227
228
  $focus-ring-dark: 0 0 0 $outline-offset rgba($black, 0.6),
228
229
  0 0 0 #{$outline-offset + $outline-width} $blue-300;
229
- $focus-ring-outline: $outline-width solid $blue-400;
230
+ $focus-ring-outline: $outline-width solid var(--gl-focus-ring-outer-color);
230
231
 
231
232
  // Toasts
232
233
  $toast-max-width: px-to-rem(586px);
@@ -590,6 +590,267 @@
590
590
  }
591
591
  }
592
592
  }
593
+ },
594
+ "danger": {
595
+ "background": {
596
+ "color": {
597
+ "default": {
598
+ "$value": {
599
+ "default": "{color.neutral.0}",
600
+ "dark": "{color.neutral.900}"
601
+ },
602
+ "$type": "color",
603
+ "$description": "Used for the background of an outlined danger (destructive) action in the default state."
604
+ },
605
+ "hover": {
606
+ "$value": {
607
+ "default": "{color.red.50}",
608
+ "dark": "{color.red.900}"
609
+ },
610
+ "$type": "color",
611
+ "$description": "Used for the background of an outlined danger (destructive) action in the hover state."
612
+ },
613
+ "focus": {
614
+ "$value": {
615
+ "default": "{color.red.50}",
616
+ "dark": "{color.red.900}"
617
+ },
618
+ "$type": "color",
619
+ "$description": "Used for the background of an outlined danger (destructive) action in the focus state."
620
+ },
621
+ "active": {
622
+ "$value": {
623
+ "default": "{color.red.100}",
624
+ "dark": "{color.red.800}"
625
+ },
626
+ "$type": "color",
627
+ "$description": "Used for the background of an outlined danger (destructive) action in the active state."
628
+ },
629
+ "subtle": {
630
+ "default": {
631
+ "$value": "{color.alpha.0}",
632
+ "$type": "color",
633
+ "$description": "Used for the background of a borderless, subtle danger (destructive) action in the default state."
634
+ },
635
+ "hover": {
636
+ "$value": {
637
+ "default": "{color.red.50}",
638
+ "dark": "{color.red.900}"
639
+ },
640
+ "$type": "color",
641
+ "$description": "Used for the background of a borderless, subtle danger (destructive) action in the hover state."
642
+ },
643
+ "focus": {
644
+ "$value": {
645
+ "default": "{color.red.50}",
646
+ "dark": "{color.red.900}"
647
+ },
648
+ "$type": "color",
649
+ "$description": "Used for the background of a borderless, subtle danger (destructive) action in the focus state."
650
+ },
651
+ "active": {
652
+ "$value": {
653
+ "default": "{color.red.100}",
654
+ "dark": "{color.red.800}"
655
+ },
656
+ "$type": "color",
657
+ "$description": "Used for the background of a borderless, subtle danger (destructive) action in the active state."
658
+ }
659
+ },
660
+ "strong": {
661
+ "default": {
662
+ "$value": {
663
+ "default": "{color.red.500}",
664
+ "dark": "{color.red.400}"
665
+ },
666
+ "$type": "color",
667
+ "$description": "Used for the background of a solid, strong danger (destructive) action in the default state."
668
+ },
669
+ "hover": {
670
+ "$value": {
671
+ "default": "{color.red.600}",
672
+ "dark": "{color.red.300}"
673
+ },
674
+ "$type": "color",
675
+ "$description": "Used for the background of a solid, strong danger (destructive) action in the hover state."
676
+ },
677
+ "focus": {
678
+ "$value": {
679
+ "default": "{color.red.600}",
680
+ "dark": "{color.red.300}"
681
+ },
682
+ "$type": "color",
683
+ "$description": "Used for the background of a solid, strong danger (destructive) action in the focus state."
684
+ },
685
+ "active": {
686
+ "$value": {
687
+ "default": "{color.red.800}",
688
+ "dark": "{color.red.100}"
689
+ },
690
+ "$type": "color",
691
+ "$description": "Used for the background of a solid, strong danger (destructive) action in the active state."
692
+ }
693
+ }
694
+ }
695
+ },
696
+ "border": {
697
+ "color": {
698
+ "default": {
699
+ "$value": {
700
+ "default": "{color.red.500}",
701
+ "dark": "{color.red.400}"
702
+ },
703
+ "$type": "color",
704
+ "$description": "Used for the border of an outlined danger (destructive) action in the default state."
705
+ },
706
+ "hover": {
707
+ "$value": {
708
+ "default": "{color.red.700}",
709
+ "dark": "{color.red.200}"
710
+ },
711
+ "$type": "color",
712
+ "$description": "Used for the border of an outlined danger (destructive) action in the hover state."
713
+ },
714
+ "focus": {
715
+ "$value": {
716
+ "default": "{color.red.700}",
717
+ "dark": "{color.red.200}"
718
+ },
719
+ "$type": "color",
720
+ "$description": "Used for the border of an outlined danger (destructive) action in the focus state."
721
+ },
722
+ "active": {
723
+ "$value": {
724
+ "default": "{color.red.900}",
725
+ "dark": "{color.red.50}"
726
+ },
727
+ "$type": "color",
728
+ "$description": "Used for the border of an outlined danger (destructive) action in the active state."
729
+ },
730
+ "strong": {
731
+ "default": {
732
+ "$value": {
733
+ "default": "{color.red.600}",
734
+ "dark": "{color.red.300}"
735
+ },
736
+ "$type": "color",
737
+ "$description": "Used for the border of a solid, strong danger (destructive) action in the default state."
738
+ },
739
+ "hover": {
740
+ "$value": {
741
+ "default": "{color.red.800}",
742
+ "dark": "{color.red.100}"
743
+ },
744
+ "$type": "color",
745
+ "$description": "Used for the border of a solid, strong danger (destructive) action in the hover state."
746
+ },
747
+ "focus": {
748
+ "$value": {
749
+ "default": "{color.red.800}",
750
+ "dark": "{color.red.100}"
751
+ },
752
+ "$type": "color",
753
+ "$description": "Used for the border of a solid, strong danger (destructive) action in the focus state."
754
+ },
755
+ "active": {
756
+ "$value": {
757
+ "default": "{color.red.900}",
758
+ "dark": "{color.red.50}"
759
+ },
760
+ "$type": "color",
761
+ "$description": "Used for the border of a solid, strong danger (destructive) action in the active state."
762
+ }
763
+ }
764
+ }
765
+ },
766
+ "text": {
767
+ "color": {
768
+ "default": {
769
+ "$value": {
770
+ "default": "{color.red.500}",
771
+ "dark": "{color.red.400}"
772
+ },
773
+ "$type": "color",
774
+ "$description": "Used for the text of a danger (destructive) action in the default state."
775
+ },
776
+ "hover": {
777
+ "$value": {
778
+ "default": "{color.red.700}",
779
+ "dark": "{color.red.200}"
780
+ },
781
+ "$type": "color",
782
+ "$description": "Used for the text of a danger (destructive) action in the hover state."
783
+ },
784
+ "focus": {
785
+ "$value": {
786
+ "default": "{color.red.700}",
787
+ "dark": "{color.red.200}"
788
+ },
789
+ "$type": "color",
790
+ "$description": "Used for the text of a danger (destructive) action in the focus state."
791
+ },
792
+ "active": {
793
+ "$value": {
794
+ "default": "{color.red.900}",
795
+ "dark": "{color.red.50}"
796
+ },
797
+ "$type": "color",
798
+ "$description": "Used for the text of a danger (destructive) action in the active state."
799
+ },
800
+ "strong": {
801
+ "$value": {
802
+ "default": "{color.neutral.0}",
803
+ "dark": "{color.neutral.900}"
804
+ },
805
+ "$type": "color",
806
+ "$description": "Used for the text on a solid, strong danger (destructive) action background."
807
+ }
808
+ }
809
+ },
810
+ "icon": {
811
+ "color": {
812
+ "default": {
813
+ "$value": {
814
+ "default": "{color.red.500}",
815
+ "dark": "{color.red.400}"
816
+ },
817
+ "$type": "color",
818
+ "$description": "Used for the icon of a danger (destructive) action in the default state."
819
+ },
820
+ "hover": {
821
+ "$value": {
822
+ "default": "{color.red.700}",
823
+ "dark": "{color.red.200}"
824
+ },
825
+ "$type": "color",
826
+ "$description": "Used for the icon of a danger (destructive) action in the hover state."
827
+ },
828
+ "focus": {
829
+ "$value": {
830
+ "default": "{color.red.700}",
831
+ "dark": "{color.red.200}"
832
+ },
833
+ "$type": "color",
834
+ "$description": "Used for the icon of a danger (destructive) action in the focus state."
835
+ },
836
+ "active": {
837
+ "$value": {
838
+ "default": "{color.red.900}",
839
+ "dark": "{color.red.50}"
840
+ },
841
+ "$type": "color",
842
+ "$description": "Used for the icon of a danger (destructive) action in the active state."
843
+ },
844
+ "strong": {
845
+ "$value": {
846
+ "default": "{color.neutral.0}",
847
+ "dark": "{color.neutral.900}"
848
+ },
849
+ "$type": "color",
850
+ "$description": "Used for the icon on a solid, strong danger (destructive) action background."
851
+ }
852
+ }
853
+ }
593
854
  }
594
855
  }
595
856
  }