@sdata/web-vue 4.7.1 → 5.0.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 (219) hide show
  1. package/dist/sd.css +4004 -3955
  2. package/dist/sd.min.css +13 -13
  3. package/es/_components/input-label/style/index.css +47 -47
  4. package/es/_components/select-view/style/index.css +256 -256
  5. package/es/alert/style/index.css +48 -48
  6. package/es/alert/style/token.scss +257 -0
  7. package/es/anchor/style/index.css +18 -18
  8. package/es/anchor/style/token.scss +74 -0
  9. package/es/auto-complete/style/index.css +18 -18
  10. package/es/auto-complete/style/token.scss +94 -0
  11. package/es/avatar/style/index.css +31 -31
  12. package/es/avatar/style/token.scss +118 -0
  13. package/es/back-top/style/index.css +11 -11
  14. package/es/back-top/style/token.scss +60 -0
  15. package/es/badge/style/index.css +35 -35
  16. package/es/badge/style/token.scss +148 -0
  17. package/es/basic-crud-table/style/index.css +4 -4
  18. package/es/basic-crud-table/style/token.scss +20 -0
  19. package/es/bloom-menu/style/index.css +33 -34
  20. package/es/bloom-menu/style/index.scss +5 -5
  21. package/es/bloom-menu/style/token.scss +99 -0
  22. package/es/border-beam/style/token.scss +28 -0
  23. package/es/breadcrumb/style/index.css +17 -17
  24. package/es/breadcrumb/style/token.scss +97 -0
  25. package/es/button/style/index.css +379 -379
  26. package/es/button/style/index.scss +3 -3
  27. package/es/button/style/token.scss +1604 -0
  28. package/es/card/style/index.css +36 -36
  29. package/es/card/style/token.scss +162 -0
  30. package/es/carousel/style/index.css +41 -41
  31. package/es/carousel/style/token.scss +101 -0
  32. package/es/cascader/style/index.css +58 -58
  33. package/es/cascader/style/token.scss +89 -0
  34. package/es/checkbox/style/index.css +28 -28
  35. package/es/checkbox/style/token.scss +134 -0
  36. package/es/collapse/style/index.css +24 -24
  37. package/es/collapse/style/token.scss +136 -0
  38. package/es/color-picker/style/index.css +50 -50
  39. package/es/color-picker/style/token.scss +200 -0
  40. package/es/comment/style/index.css +15 -15
  41. package/es/comment/style/token.scss +83 -0
  42. package/es/config-provider/algorithms.d.ts +11 -0
  43. package/es/config-provider/algorithms.js +53 -0
  44. package/es/config-provider/global-theme.js +7 -4
  45. package/es/config-provider/theme-config.d.ts +11 -0
  46. package/es/config-provider/theme-config.js +114 -0
  47. package/es/config-provider/theme-provider.vue_vue_type_script_setup_true_lang.js +46 -11
  48. package/es/config-provider/theme.d.ts +4 -1
  49. package/es/config-provider/theme.js +6 -5
  50. package/es/config-provider/token-key.d.ts +1 -0
  51. package/es/config-provider/token-key.js +6 -0
  52. package/es/copy/style/index.css +1 -1
  53. package/es/copy/style/token.scss +9 -0
  54. package/es/cropper/style/index.css +7 -7
  55. package/es/cropper/style/token.scss +24 -0
  56. package/es/date-picker/style/index.css +73 -73
  57. package/es/date-picker/style/token.scss +229 -0
  58. package/es/descriptions/style/index.css +45 -45
  59. package/es/descriptions/style/token.scss +191 -0
  60. package/es/divider/style/index.css +11 -11
  61. package/es/divider/style/token.scss +60 -0
  62. package/es/drawer/style/index.css +13 -13
  63. package/es/drawer/style/token.scss +68 -0
  64. package/es/dropdown/style/index.css +24 -23
  65. package/es/dropdown/style/index.scss +4 -2
  66. package/es/dropdown/style/token.scss +123 -0
  67. package/es/ellipsis/ellipsis.vue_vue_type_script_setup_true_lang.js +3 -3
  68. package/es/ellipsis/interface.d.ts +1 -0
  69. package/es/ellipsis/style/index.css +2 -2
  70. package/es/ellipsis/style/token.scss +5 -0
  71. package/es/empty/style/index.css +7 -7
  72. package/es/empty/style/token.scss +35 -0
  73. package/es/file-previewer/style/index.css +44 -44
  74. package/es/file-previewer/style/token.scss +198 -0
  75. package/es/form/style/index.css +113 -113
  76. package/es/form/style/token.scss +340 -0
  77. package/es/image/style/index.css +83 -83
  78. package/es/image/style/token.scss +451 -0
  79. package/es/index.css +4004 -3955
  80. package/es/index.d.ts +3 -0
  81. package/es/index.js +4 -1
  82. package/es/input/style/index.css +104 -104
  83. package/es/input/style/input.scss +2 -8
  84. package/es/input/style/size.scss +4 -4
  85. package/es/input/style/token.scss +327 -0
  86. package/es/input-mask/style/index.css +1 -1
  87. package/es/input-mask/style/token.scss +8 -0
  88. package/es/input-number/style/index.css +19 -19
  89. package/es/input-number/style/token.scss +82 -0
  90. package/es/input-tag/style/index.css +209 -209
  91. package/es/input-tag/style/token.scss +226 -0
  92. package/es/json-form/style/index.css +2 -2
  93. package/es/json-form/style/token.scss +21 -0
  94. package/es/kv-list/style/index.css +13 -13
  95. package/es/kv-list/style/token.scss +29 -0
  96. package/es/layout/style/index.css +38 -38
  97. package/es/layout/style/token.scss +100 -0
  98. package/es/link/style/index.css +28 -28
  99. package/es/link/style/token.scss +117 -0
  100. package/es/list/style/index.css +27 -27
  101. package/es/list/style/token.scss +178 -0
  102. package/es/mention/style/token.scss +22 -0
  103. package/es/menu/style/index.css +153 -120
  104. package/es/menu/style/index.scss +12 -4
  105. package/es/menu/style/token.scss +390 -0
  106. package/es/message/style/index.css +33 -33
  107. package/es/message/style/token.scss +218 -0
  108. package/es/modal/style/index.css +21 -21
  109. package/es/modal/style/token.scss +115 -0
  110. package/es/model-selector/style/index.css +1 -1
  111. package/es/notification/style/index.css +44 -44
  112. package/es/notification/style/token.scss +241 -0
  113. package/es/number-flow/style/index.css +5 -5
  114. package/es/number-flow/style/token.scss +19 -0
  115. package/es/page-header/style/index.css +25 -25
  116. package/es/page-header/style/token.scss +139 -0
  117. package/es/pagination/style/index.css +85 -85
  118. package/es/pagination/style/token.scss +303 -0
  119. package/es/panel-group/style/index.css +7 -7
  120. package/es/panel-group/style/token.scss +28 -0
  121. package/es/popconfirm/style/index.css +18 -18
  122. package/es/popconfirm/style/token.scss +83 -0
  123. package/es/popover/style/index.css +12 -12
  124. package/es/popover/style/token.scss +58 -0
  125. package/es/progress/style/index.css +55 -55
  126. package/es/progress/style/token.scss +253 -0
  127. package/es/qr-code/style/index.css +18 -21
  128. package/es/qr-code/style/index.scss +4 -6
  129. package/es/qr-code/style/token.scss +59 -0
  130. package/es/radio/style/index.css +45 -44
  131. package/es/radio/style/index.scss +1 -0
  132. package/es/radio/style/token.scss +185 -0
  133. package/es/rate/style/index.css +8 -8
  134. package/es/rate/style/token.scss +19 -0
  135. package/es/regex-vis/style/index.css +51 -51
  136. package/es/regex-vis/style/token.scss +170 -0
  137. package/es/result/style/index.css +26 -26
  138. package/es/result/style/token.scss +139 -0
  139. package/es/rich-text-editor/style/index.css +31 -31
  140. package/es/rich-text-editor/style/token.scss +120 -0
  141. package/es/scrollbar/style/index.css +14 -14
  142. package/es/scrollbar/style/token.scss +33 -0
  143. package/es/secret/style/index.css +6 -6
  144. package/es/secret/style/token.scss +30 -0
  145. package/es/select/style/index.css +27 -27
  146. package/es/select/style/token.scss +151 -0
  147. package/es/selectable-card/style/index.css +53 -51
  148. package/es/selectable-card/style/index.scss +6 -2
  149. package/es/selectable-card/style/token.scss +60 -0
  150. package/es/sender/style/index.css +54 -54
  151. package/es/sender/style/token.scss +155 -0
  152. package/es/skeleton/style/index.css +12 -12
  153. package/es/skeleton/style/token.scss +60 -0
  154. package/es/slider/style/index.css +34 -34
  155. package/es/slider/style/token.scss +144 -0
  156. package/es/spin/style/index.css +11 -11
  157. package/es/spin/style/token.scss +60 -0
  158. package/es/split/style/index.css +2 -2
  159. package/es/split/style/token.scss +18 -0
  160. package/es/statistic/style/index.css +13 -13
  161. package/es/statistic/style/token.scss +73 -0
  162. package/es/steps/style/index.css +98 -98
  163. package/es/steps/style/token.scss +464 -0
  164. package/es/style/color/css-variables.scss +382 -381
  165. package/es/style/theme/css-variables.scss +329 -135
  166. package/es/style/theme/global.scss +5 -5
  167. package/es/style/theme/index.scss +1 -1
  168. package/es/style/theme/runtime.scss +29 -0
  169. package/es/switch/style/index.css +37 -37
  170. package/es/switch/style/token.scss +135 -0
  171. package/es/table/style/index.css +127 -127
  172. package/es/table/style/token.scss +425 -0
  173. package/es/tabs/style/index.css +196 -190
  174. package/es/tabs/style/index.scss +27 -17
  175. package/es/tabs/style/token.scss +534 -0
  176. package/es/tag/index.d.ts +13 -0
  177. package/es/tag/interface.d.ts +1 -0
  178. package/es/tag/style/index.css +159 -159
  179. package/es/tag/style/token.scss +513 -0
  180. package/es/tag/tag.vue.d.ts +13 -3
  181. package/es/tag/tag.vue_vue_type_script_setup_true_lang.js +35 -8
  182. package/es/tag-group/style/index.css +3 -3
  183. package/es/tag-group/style/token.scss +9 -0
  184. package/es/textarea/style/index.css +40 -40
  185. package/es/time-picker/style/index.css +12 -12
  186. package/es/time-picker/style/token.scss +50 -0
  187. package/es/timeline/style/index.css +22 -22
  188. package/es/timeline/style/token.scss +75 -0
  189. package/es/toolbar/style/index.css +6 -6
  190. package/es/toolbar/style/token.scss +45 -0
  191. package/es/tooltip/style/index.css +8 -8
  192. package/es/tooltip/style/token.scss +46 -0
  193. package/es/tour/style/index.css +28 -28
  194. package/es/tour/style/token.scss +65 -0
  195. package/es/transfer/style/index.css +46 -45
  196. package/es/transfer/style/index.scss +4 -1
  197. package/es/transfer/style/token.scss +199 -0
  198. package/es/tree/style/index.css +43 -36
  199. package/es/tree/style/index.scss +10 -0
  200. package/es/tree/style/token.scss +163 -0
  201. package/es/tree-select/style/index.css +9 -9
  202. package/es/tree-select/style/token.scss +21 -0
  203. package/es/trigger/style/index.css +7 -7
  204. package/es/trigger/style/token.scss +19 -0
  205. package/es/typography/style/index.css +40 -40
  206. package/es/typography/style/token.scss +220 -0
  207. package/es/upload/index.d.ts +3 -0
  208. package/es/upload/style/index.css +95 -95
  209. package/es/upload/style/token.scss +470 -0
  210. package/es/upload/upload.vue.d.ts +2 -0
  211. package/es/upload/upload.vue_vue_type_script_setup_true_lang.js +109 -16
  212. package/json/vetur-attributes.json +7 -0
  213. package/json/vetur-tags.json +4 -1
  214. package/json/web-types.json +18 -2
  215. package/package.json +7 -2
  216. package/es/style/color/palette-dark.d.ts +0 -4
  217. package/es/style/color/palette-dark.js +0 -10
  218. package/es/style/color/palette.d.ts +0 -4
  219. package/es/style/color/palette.js +0 -10
@@ -1,3 +1,4 @@
1
+ @use '@style/theme/runtime.scss' as theme-runtime;
1
2
  @use 'sass:string';
2
3
  @use '@style/theme/index.scss' as global;
3
4
 
@@ -7,3 +8,32 @@ $secret-trigger-color-text: var(string.unquote('#{global.$sd-cssvars-prefix}-col
7
8
  $secret-trigger-color-text_hover: var(string.unquote('#{global.$sd-cssvars-prefix}-color-text-1'));
8
9
  $secret-trigger-size-icon: global.$size-4;
9
10
  $secret-placeholder-color-text: var(string.unquote('#{global.$sd-cssvars-prefix}-color-text-3'));
11
+
12
+ // @generated runtime tokens — pnpm theme:generate
13
+ $secret-gap: theme-runtime.token('secret', 'secret-gap', $secret-gap, 'spacing-3');
14
+ $secret-trigger-border-radius: theme-runtime.token(
15
+ 'secret',
16
+ 'secret-trigger-border-radius',
17
+ $secret-trigger-border-radius
18
+ );
19
+ $secret-trigger-color-text: theme-runtime.token(
20
+ 'secret',
21
+ 'secret-trigger-color-text',
22
+ $secret-trigger-color-text
23
+ );
24
+ $secret-trigger-color-text_hover: theme-runtime.token(
25
+ 'secret',
26
+ 'secret-trigger-color-text-hover',
27
+ $secret-trigger-color-text_hover
28
+ );
29
+ $secret-trigger-size-icon: theme-runtime.token(
30
+ 'secret',
31
+ 'secret-trigger-size-icon',
32
+ $secret-trigger-size-icon,
33
+ 'size-4'
34
+ );
35
+ $secret-placeholder-color-text: theme-runtime.token(
36
+ 'secret',
37
+ 'secret-placeholder-color-text',
38
+ $secret-placeholder-color-text
39
+ );
@@ -24,11 +24,11 @@
24
24
  **********************************************/
25
25
  .sd-select-dropdown {
26
26
  box-sizing: border-box;
27
- padding: 4px 0;
28
- background-color: var(--sd-color-bg-popup);
29
- border: 1px solid var(--sd-color-fill-3);
30
- border-radius: var(--sd-border-radius-medium);
31
- box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06), 0 8px 24px rgba(0, 0, 0, 0.08);
27
+ padding: var(--component-select-select-popup-padding-vertical, var(--component-select-popup-padding-vertical, var(--spacing-2, 4px))) 0;
28
+ background-color: var(--component-select-select-popup-color-bg, var(--component-select-popup-color-bg, var(--sd-color-bg-popup)));
29
+ border: 1px solid var(--component-select-select-popup-color-border, var(--component-select-popup-color-border, var(--sd-color-fill-3)));
30
+ border-radius: var(--component-select-select-popup-border-radius, var(--component-select-popup-border-radius, var(--sd-border-radius-medium)));
31
+ box-shadow: var(--component-select-select-popup-box-shadow, var(--component-select-popup-box-shadow, 0 2px 6px rgba(0, 0, 0, 0.06), 0 8px 24px rgba(0, 0, 0, 0.08)));
32
32
  }
33
33
  .sd-select-dropdown .sd-select-dropdown-loading {
34
34
  display: flex;
@@ -43,7 +43,7 @@
43
43
  list-style: none;
44
44
  }
45
45
  .sd-select-dropdown-list-wrapper {
46
- max-height: 200px;
46
+ max-height: var(--component-select-select-popup-max-height, var(--component-select-popup-max-height, var(--size-50, 200px)));
47
47
  overflow-y: auto;
48
48
  }
49
49
  .sd-select-dropdown .sd-select-option {
@@ -53,12 +53,12 @@
53
53
  align-items: center;
54
54
  box-sizing: border-box;
55
55
  width: 100%;
56
- padding: 0 12px;
57
- color: var(--sd-color-text-1);
58
- font-size: 14px;
59
- line-height: 36px;
56
+ padding: 0 var(--component-select-select-signal-popup-option-padding-horizontal, var(--component-select-signal-popup-option-padding-horizontal, var(--spacing-6, 12px)));
57
+ color: var(--component-select-select-popup-option-color-text-default, var(--component-select-popup-option-color-text-default, var(--sd-color-text-1)));
58
+ font-size: var(--component-select-select-popup-font-size, var(--component-select-popup-font-size, var(--font-size-body-3, 14px)));
59
+ line-height: var(--component-select-select-popup-option-height, var(--component-select-popup-option-height, var(--size-9, 36px)));
60
60
  text-align: left;
61
- background-color: var(--sd-color-bg-popup);
61
+ background-color: var(--component-select-select-popup-option-color-bg-default, var(--component-select-popup-option-color-bg-default, var(--sd-color-bg-popup)));
62
62
  cursor: pointer;
63
63
  }
64
64
  .sd-select-dropdown .sd-select-option-content {
@@ -78,18 +78,18 @@
78
78
  justify-content: space-between;
79
79
  }
80
80
  .sd-select-dropdown .sd-select-option-selected {
81
- color: var(--sd-color-text-1);
82
- font-weight: 500;
83
- background-color: var(--sd-color-bg-popup);
81
+ color: var(--component-select-select-popup-option-color-text-selected, var(--component-select-popup-option-color-text-selected, var(--sd-color-text-1)));
82
+ font-weight: var(--component-select-select-popup-option-font-weight-selected, var(--component-select-popup-option-font-weight-selected, var(--font-weight-500, 500)));
83
+ background-color: var(--component-select-select-popup-option-color-bg-selected, var(--component-select-popup-option-color-bg-selected, var(--sd-color-bg-popup)));
84
84
  }
85
85
  .sd-select-dropdown .sd-select-option-active, .sd-select-dropdown .sd-select-option:not(.sd-select-dropdown .sd-select-option-disabled):hover {
86
- color: var(--sd-color-text-1);
87
- background-color: var(--sd-color-fill-2);
86
+ color: var(--component-select-select-popup-option-color-text-hover, var(--component-select-popup-option-color-text-hover, var(--sd-color-text-1)));
87
+ background-color: var(--component-select-select-popup-option-color-bg-hover, var(--component-select-popup-option-color-bg-hover, var(--sd-color-fill-2)));
88
88
  transition: color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1), background-color 0.1s cubic-bezier(0.34, 0.69, 0.1, 1);
89
89
  }
90
90
  .sd-select-dropdown .sd-select-option-disabled {
91
- color: var(--sd-color-text-4);
92
- background-color: var(--sd-color-bg-popup);
91
+ color: var(--component-select-select-popup-option-color-text-disabled, var(--component-select-popup-option-color-text-disabled, var(--sd-color-text-4)));
92
+ background-color: var(--component-select-select-popup-option-color-bg-disabled, var(--component-select-popup-option-color-bg-disabled, var(--sd-color-bg-popup)));
93
93
  cursor: not-allowed;
94
94
  }
95
95
  .sd-select-dropdown .sd-select-option-icon {
@@ -97,19 +97,19 @@
97
97
  margin-right: 8px;
98
98
  }
99
99
  .sd-select-dropdown .sd-select-option-suffix {
100
- margin-left: 12px;
100
+ margin-left: var(--component-select-dropdown-margin-left-suffix-icon, var(--component-select-margin-left-suffix-icon, var(--spacing-6, 12px)));
101
101
  }
102
102
  .sd-select-dropdown .sd-select-group:first-child .sd-select-dropdown .sd-select-group-title {
103
- margin-top: 8px;
103
+ margin-top: var(--component-select-select-popup-group-title-padding-top, var(--component-select-popup-group-title-padding-top, var(--spacing-4, 8px)));
104
104
  }
105
105
  .sd-select-dropdown .sd-select-group-title {
106
106
  box-sizing: border-box;
107
107
  width: 100%;
108
- margin-top: 8px;
109
- padding: 0 12px;
110
- color: var(--sd-color-text-3);
111
- font-size: 12px;
112
- line-height: 20px;
108
+ margin-top: var(--component-select-select-popup-group-title-padding-top, var(--component-select-popup-group-title-padding-top, var(--spacing-4, 8px)));
109
+ padding: 0 var(--component-select-select-popup-group-title-padding-horizontal, var(--component-select-popup-group-title-padding-horizontal, var(--spacing-6, 12px)));
110
+ color: var(--component-select-select-popup-group-title-color-text, var(--component-select-popup-group-title-color-text, var(--sd-color-text-3)));
111
+ font-size: var(--component-select-select-popup-group-title-font-size, var(--component-select-popup-group-title-font-size, var(--font-size-body-1, 12px)));
112
+ line-height: var(--component-select-select-popup-group-title-height, var(--component-select-popup-group-title-height, var(--size-5, 20px)));
113
113
  cursor: default;
114
114
  overflow: hidden;
115
115
  white-space: nowrap;
@@ -119,11 +119,11 @@
119
119
  padding-top: 0;
120
120
  }
121
121
  .sd-select-dropdown-header {
122
- border-bottom: 1px solid var(--sd-color-fill-3);
122
+ border-bottom: 1px solid var(--component-select-select-popup-color-border, var(--component-select-popup-color-border, var(--sd-color-fill-3)));
123
123
  }
124
124
  .sd-select-dropdown.sd-select-dropdown-has-footer {
125
125
  padding-bottom: 0;
126
126
  }
127
127
  .sd-select-dropdown-footer {
128
- border-top: 1px solid var(--sd-color-fill-3);
128
+ border-top: 1px solid var(--component-select-select-popup-color-border, var(--component-select-popup-color-border, var(--sd-color-fill-3)));
129
129
  }
@@ -1,3 +1,4 @@
1
+ @use '@style/theme/runtime.scss' as theme-runtime;
1
2
  @use '@style/theme/index.scss' as global;
2
3
 
3
4
  @forward '@style/theme/index.scss';
@@ -67,3 +68,153 @@ $select-popup-group-title-color-text: var(
67
68
  );
68
69
 
69
70
  $dropdown-margin-left-suffix-icon: global.$spacing-6;
71
+
72
+ // @generated runtime tokens — pnpm theme:generate
73
+ $select-popup-max-height: theme-runtime.token(
74
+ 'select',
75
+ 'select-popup-max-height',
76
+ $select-popup-max-height,
77
+ 'size-50'
78
+ );
79
+ $select-popup-border-radius: theme-runtime.token(
80
+ 'select',
81
+ 'select-popup-border-radius',
82
+ $select-popup-border-radius
83
+ );
84
+ $select-popup-padding-vertical: theme-runtime.token(
85
+ 'select',
86
+ 'select-popup-padding-vertical',
87
+ $select-popup-padding-vertical,
88
+ 'spacing-2'
89
+ );
90
+ $select-popup-font-size: theme-runtime.token(
91
+ 'select',
92
+ 'select-popup-font-size',
93
+ $select-popup-font-size,
94
+ 'font-size-body-3'
95
+ );
96
+ $select-popup-color-bg: theme-runtime.token(
97
+ 'select',
98
+ 'select-popup-color-bg',
99
+ $select-popup-color-bg
100
+ );
101
+ $select-popup-color-border: theme-runtime.token(
102
+ 'select',
103
+ 'select-popup-color-border',
104
+ $select-popup-color-border
105
+ );
106
+ $select-popup-box-shadow: theme-runtime.token(
107
+ 'select',
108
+ 'select-popup-box-shadow',
109
+ $select-popup-box-shadow
110
+ );
111
+ $select-popup-option-height: theme-runtime.token(
112
+ 'select',
113
+ 'select-popup-option-height',
114
+ $select-popup-option-height,
115
+ 'size-9'
116
+ );
117
+ $select-popup-option-font-weight_selected: theme-runtime.token(
118
+ 'select',
119
+ 'select-popup-option-font-weight-selected',
120
+ $select-popup-option-font-weight_selected,
121
+ 'font-weight-500'
122
+ );
123
+ $select-signal-popup-option-padding-horizontal: theme-runtime.token(
124
+ 'select',
125
+ 'select-signal-popup-option-padding-horizontal',
126
+ $select-signal-popup-option-padding-horizontal,
127
+ 'spacing-6'
128
+ );
129
+ $select-multi-popup-option-padding-horizontal: theme-runtime.token(
130
+ 'select',
131
+ 'select-multi-popup-option-padding-horizontal',
132
+ $select-multi-popup-option-padding-horizontal,
133
+ 'spacing-2'
134
+ );
135
+ $select-popup-option-color-bg_default: theme-runtime.token(
136
+ 'select',
137
+ 'select-popup-option-color-bg-default',
138
+ $select-popup-option-color-bg_default
139
+ );
140
+ $select-popup-option-color-bg_hover: theme-runtime.token(
141
+ 'select',
142
+ 'select-popup-option-color-bg-hover',
143
+ $select-popup-option-color-bg_hover
144
+ );
145
+ $select-popup-option-color-bg_selected: theme-runtime.token(
146
+ 'select',
147
+ 'select-popup-option-color-bg-selected',
148
+ $select-popup-option-color-bg_selected
149
+ );
150
+ $select-popup-option-color-bg_disabled: theme-runtime.token(
151
+ 'select',
152
+ 'select-popup-option-color-bg-disabled',
153
+ $select-popup-option-color-bg_disabled
154
+ );
155
+ $select-popup-option-color-text_default: theme-runtime.token(
156
+ 'select',
157
+ 'select-popup-option-color-text-default',
158
+ $select-popup-option-color-text_default
159
+ );
160
+ $select-popup-option-color-text_hover: theme-runtime.token(
161
+ 'select',
162
+ 'select-popup-option-color-text-hover',
163
+ $select-popup-option-color-text_hover
164
+ );
165
+ $select-popup-option-color-text_selected: theme-runtime.token(
166
+ 'select',
167
+ 'select-popup-option-color-text-selected',
168
+ $select-popup-option-color-text_selected
169
+ );
170
+ $select-popup-option-color-text_disabled: theme-runtime.token(
171
+ 'select',
172
+ 'select-popup-option-color-text-disabled',
173
+ $select-popup-option-color-text_disabled
174
+ );
175
+ $select-popup-option-color-highlight-text: theme-runtime.token(
176
+ 'select',
177
+ 'select-popup-option-color-highlight-text',
178
+ $select-popup-option-color-highlight-text
179
+ );
180
+ $select-popup-option-font-highlight-weight: theme-runtime.token(
181
+ 'select',
182
+ 'select-popup-option-font-highlight-weight',
183
+ $select-popup-option-font-highlight-weight,
184
+ 'font-weight-500'
185
+ );
186
+ $select-popup-group-title-height: theme-runtime.token(
187
+ 'select',
188
+ 'select-popup-group-title-height',
189
+ $select-popup-group-title-height,
190
+ 'size-5'
191
+ );
192
+ $select-popup-group-title-padding-horizontal: theme-runtime.token(
193
+ 'select',
194
+ 'select-popup-group-title-padding-horizontal',
195
+ $select-popup-group-title-padding-horizontal,
196
+ 'spacing-6'
197
+ );
198
+ $select-popup-group-title-padding-top: theme-runtime.token(
199
+ 'select',
200
+ 'select-popup-group-title-padding-top',
201
+ $select-popup-group-title-padding-top,
202
+ 'spacing-4'
203
+ );
204
+ $select-popup-group-title-font-size: theme-runtime.token(
205
+ 'select',
206
+ 'select-popup-group-title-font-size',
207
+ $select-popup-group-title-font-size,
208
+ 'font-size-body-1'
209
+ );
210
+ $select-popup-group-title-color-text: theme-runtime.token(
211
+ 'select',
212
+ 'select-popup-group-title-color-text',
213
+ $select-popup-group-title-color-text
214
+ );
215
+ $dropdown-margin-left-suffix-icon: theme-runtime.token(
216
+ 'select',
217
+ 'dropdown-margin-left-suffix-icon',
218
+ $dropdown-margin-left-suffix-icon,
219
+ 'spacing-6'
220
+ );
@@ -18,10 +18,10 @@
18
18
  .sd-selectable-card {
19
19
  position: relative;
20
20
  box-sizing: border-box;
21
- color: var(--sd-color-text-1);
22
- background: var(--sd-color-bg-2);
23
- border: 1px solid var(--sd-color-neutral-3);
24
- border-radius: var(--sd-border-radius-medium);
21
+ color: var(--component-selectable-card-selectable-card-color-value, var(--component-selectable-card-color-value, var(--sd-color-text-1)));
22
+ background: var(--component-selectable-card-selectable-card-color-bg, var(--component-selectable-card-color-bg, var(--sd-color-bg-2)));
23
+ border: var(--component-selectable-card-selectable-card-border-width, var(--component-selectable-card-border-width, var(--border-1, 1px))) solid var(--component-selectable-card-selectable-card-color-border, var(--component-selectable-card-color-border, var(--sd-color-neutral-3)));
24
+ border-radius: var(--component-selectable-card-selectable-card-border-radius, var(--component-selectable-card-border-radius, var(--sd-border-radius-medium)));
25
25
  cursor: pointer;
26
26
  transition: color 0.2s cubic-bezier(0.34, 0.69, 0.1, 1), background-color 0.2s cubic-bezier(0.34, 0.69, 0.1, 1), border-color 0.2s cubic-bezier(0.34, 0.69, 0.1, 1), box-shadow 0.2s cubic-bezier(0.34, 0.69, 0.1, 1);
27
27
  }
@@ -36,15 +36,17 @@
36
36
  }
37
37
  @media (hover: hover) {
38
38
  .sd-selectable-card:not(.sd-selectable-card--disabled):hover::after {
39
- background: rgba(0, 0, 0, 0.05);
39
+ background: var(--component-selectable-card-selectable-card-overlay-hover, var(--component-selectable-card-overlay-hover, rgba(0, 0, 0, 0.05)));
40
40
  }
41
41
  }
42
42
  .sd-selectable-card:not(.sd-selectable-card--disabled):active::after {
43
- background: rgba(0, 0, 0, 0.1);
43
+ background: var(--component-selectable-card-selectable-card-overlay-active, var(--component-selectable-card-overlay-active, rgba(0, 0, 0, 0.1)));
44
44
  }
45
45
  .sd-selectable-card:has(.sd-selectable-card-input:focus-visible) {
46
- outline: 2px solid rgb(var(--sd-primary-6));
47
- outline-offset: 2px;
46
+ outline: none;
47
+ }
48
+ .sd-selectable-card:has(.sd-selectable-card-input:focus-visible)::after {
49
+ background: var(--component-selectable-card-selectable-card-overlay-hover, var(--component-selectable-card-overlay-hover, rgba(0, 0, 0, 0.05)));
48
50
  }
49
51
  .sd-selectable-card-body {
50
52
  display: flex;
@@ -65,16 +67,16 @@
65
67
  font-size: 2em;
66
68
  }
67
69
  .sd-selectable-card-title {
68
- color: var(--sd-color-text-2);
70
+ color: var(--component-selectable-card-selectable-card-color-title, var(--component-selectable-card-color-title, var(--sd-color-text-2)));
69
71
  font-size: 14px;
70
72
  }
71
73
  .sd-selectable-card-value {
72
- color: var(--sd-color-text-1);
74
+ color: var(--component-selectable-card-selectable-card-color-value, var(--component-selectable-card-color-value, var(--sd-color-text-1)));
73
75
  font-weight: 500;
74
76
  line-height: 1.25;
75
77
  }
76
78
  .sd-selectable-card-description, .sd-selectable-card-default {
77
- color: var(--sd-color-text-3);
79
+ color: var(--component-selectable-card-selectable-card-color-description, var(--component-selectable-card-color-description, var(--sd-color-text-3)));
78
80
  font-size: 13px;
79
81
  line-height: 1.5715;
80
82
  }
@@ -124,69 +126,69 @@
124
126
  font-size: 20px;
125
127
  }
126
128
  .sd-selectable-card--color-red {
127
- --sd-selectable-card-accent: rgb(var(--sd-red-6));
128
- --sd-selectable-card-soft-bg: rgb(var(--sd-red-1));
129
- --sd-selectable-card-border: rgb(var(--sd-red-6));
129
+ --sd-selectable-card-accent: var(--component-tag-tag-red-color-text, var(--component-tag-red-color-text, rgb(var(--sd-red-6))));
130
+ --sd-selectable-card-soft-bg: var(--component-tag-tag-red-color-bg, var(--component-tag-red-color-bg, rgb(var(--sd-red-1))));
131
+ --sd-selectable-card-border: var(--component-tag-tag-red-bordered-color-border, var(--component-tag-red-bordered-color-border, rgb(var(--sd-red-6))));
130
132
  }
131
133
  .sd-selectable-card--color-orangered {
132
- --sd-selectable-card-accent: rgb(var(--sd-orangered-6));
133
- --sd-selectable-card-soft-bg: rgb(var(--sd-orangered-1));
134
- --sd-selectable-card-border: rgb(var(--sd-orangered-6));
134
+ --sd-selectable-card-accent: var(--component-tag-tag-orangered-color-text, var(--component-tag-orangered-color-text, rgb(var(--sd-orangered-6))));
135
+ --sd-selectable-card-soft-bg: var(--component-tag-tag-orangered-color-bg, var(--component-tag-orangered-color-bg, rgb(var(--sd-orangered-1))));
136
+ --sd-selectable-card-border: var(--component-tag-tag-orangered-bordered-color-border, var(--component-tag-orangered-bordered-color-border, rgb(var(--sd-orangered-6))));
135
137
  }
136
138
  .sd-selectable-card--color-orange {
137
- --sd-selectable-card-accent: rgb(var(--sd-orange-6));
138
- --sd-selectable-card-soft-bg: rgb(var(--sd-orange-1));
139
- --sd-selectable-card-border: rgb(var(--sd-orange-6));
139
+ --sd-selectable-card-accent: var(--component-tag-tag-orange-color-text, var(--component-tag-orange-color-text, rgb(var(--sd-orange-6))));
140
+ --sd-selectable-card-soft-bg: var(--component-tag-tag-orange-color-bg, var(--component-tag-orange-color-bg, rgb(var(--sd-orange-1))));
141
+ --sd-selectable-card-border: var(--component-tag-tag-orange-bordered-color-border, var(--component-tag-orange-bordered-color-border, rgb(var(--sd-orange-6))));
140
142
  }
141
143
  .sd-selectable-card--color-gold {
142
- --sd-selectable-card-accent: rgb(var(--sd-gold-6));
143
- --sd-selectable-card-soft-bg: rgb(var(--sd-gold-1));
144
- --sd-selectable-card-border: rgb(var(--sd-gold-6));
144
+ --sd-selectable-card-accent: var(--component-tag-tag-gold-color-text, var(--component-tag-gold-color-text, rgb(var(--sd-gold-6))));
145
+ --sd-selectable-card-soft-bg: var(--component-tag-tag-gold-color-bg, var(--component-tag-gold-color-bg, rgb(var(--sd-gold-1))));
146
+ --sd-selectable-card-border: var(--component-tag-tag-gold-bordered-color-border, var(--component-tag-gold-bordered-color-border, rgb(var(--sd-gold-6))));
145
147
  }
146
148
  .sd-selectable-card--color-lime {
147
- --sd-selectable-card-accent: rgb(var(--sd-lime-6));
148
- --sd-selectable-card-soft-bg: rgb(var(--sd-lime-1));
149
- --sd-selectable-card-border: rgb(var(--sd-lime-6));
149
+ --sd-selectable-card-accent: var(--component-tag-tag-lime-color-text, var(--component-tag-lime-color-text, rgb(var(--sd-lime-6))));
150
+ --sd-selectable-card-soft-bg: var(--component-tag-tag-lime-color-bg, var(--component-tag-lime-color-bg, rgb(var(--sd-lime-1))));
151
+ --sd-selectable-card-border: var(--component-tag-tag-lime-bordered-color-border, var(--component-tag-lime-bordered-color-border, rgb(var(--sd-lime-6))));
150
152
  }
151
153
  .sd-selectable-card--color-green {
152
- --sd-selectable-card-accent: rgb(var(--sd-green-6));
153
- --sd-selectable-card-soft-bg: rgb(var(--sd-green-1));
154
- --sd-selectable-card-border: rgb(var(--sd-green-6));
154
+ --sd-selectable-card-accent: var(--component-tag-tag-green-color-text, var(--component-tag-green-color-text, rgb(var(--sd-green-6))));
155
+ --sd-selectable-card-soft-bg: var(--component-tag-tag-green-color-bg, var(--component-tag-green-color-bg, rgb(var(--sd-green-1))));
156
+ --sd-selectable-card-border: var(--component-tag-tag-green-bordered-color-border, var(--component-tag-green-bordered-color-border, rgb(var(--sd-green-6))));
155
157
  }
156
158
  .sd-selectable-card--color-cyan {
157
- --sd-selectable-card-accent: rgb(var(--sd-cyan-6));
158
- --sd-selectable-card-soft-bg: rgb(var(--sd-cyan-1));
159
- --sd-selectable-card-border: rgb(var(--sd-cyan-6));
159
+ --sd-selectable-card-accent: var(--component-tag-tag-cyan-color-text, var(--component-tag-cyan-color-text, rgb(var(--sd-cyan-6))));
160
+ --sd-selectable-card-soft-bg: var(--component-tag-tag-cyan-color-bg, var(--component-tag-cyan-color-bg, rgb(var(--sd-cyan-1))));
161
+ --sd-selectable-card-border: var(--component-tag-tag-cyan-bordered-color-border, var(--component-tag-cyan-bordered-color-border, rgb(var(--sd-cyan-6))));
160
162
  }
161
163
  .sd-selectable-card--color-blue {
162
- --sd-selectable-card-accent: rgb(var(--sd-blue-6));
163
- --sd-selectable-card-soft-bg: rgb(var(--sd-blue-1));
164
- --sd-selectable-card-border: rgb(var(--sd-blue-6));
164
+ --sd-selectable-card-accent: var(--component-tag-tag-blue-color-text, var(--component-tag-blue-color-text, rgb(var(--sd-blue-6))));
165
+ --sd-selectable-card-soft-bg: var(--component-tag-tag-blue-color-bg, var(--component-tag-blue-color-bg, rgb(var(--sd-blue-1))));
166
+ --sd-selectable-card-border: var(--component-tag-tag-blue-bordered-color-border, var(--component-tag-blue-bordered-color-border, rgb(var(--sd-blue-6))));
165
167
  }
166
168
  .sd-selectable-card--color-sdblue {
167
- --sd-selectable-card-accent: rgb(var(--sd-sdblue-6));
168
- --sd-selectable-card-soft-bg: rgb(var(--sd-sdblue-1));
169
- --sd-selectable-card-border: rgb(var(--sd-sdblue-6));
169
+ --sd-selectable-card-accent: var(--component-tag-tag-sdblue-color-text, var(--component-tag-sdblue-color-text, rgb(var(--sd-sdblue-6))));
170
+ --sd-selectable-card-soft-bg: var(--component-tag-tag-sdblue-color-bg, var(--component-tag-sdblue-color-bg, rgb(var(--sd-sdblue-1))));
171
+ --sd-selectable-card-border: var(--component-tag-tag-sdblue-bordered-color-border, var(--component-tag-sdblue-bordered-color-border, rgb(var(--sd-sdblue-6))));
170
172
  }
171
173
  .sd-selectable-card--color-purple {
172
- --sd-selectable-card-accent: rgb(var(--sd-purple-6));
173
- --sd-selectable-card-soft-bg: rgb(var(--sd-purple-1));
174
- --sd-selectable-card-border: rgb(var(--sd-purple-6));
174
+ --sd-selectable-card-accent: var(--component-tag-tag-purple-color-text, var(--component-tag-purple-color-text, rgb(var(--sd-purple-6))));
175
+ --sd-selectable-card-soft-bg: var(--component-tag-tag-purple-color-bg, var(--component-tag-purple-color-bg, rgb(var(--sd-purple-1))));
176
+ --sd-selectable-card-border: var(--component-tag-tag-purple-bordered-color-border, var(--component-tag-purple-bordered-color-border, rgb(var(--sd-purple-6))));
175
177
  }
176
178
  .sd-selectable-card--color-pinkpurple {
177
- --sd-selectable-card-accent: rgb(var(--sd-pinkpurple-6));
178
- --sd-selectable-card-soft-bg: rgb(var(--sd-pinkpurple-1));
179
- --sd-selectable-card-border: rgb(var(--sd-pinkpurple-6));
179
+ --sd-selectable-card-accent: var(--component-tag-tag-pinkpurple-color-text, var(--component-tag-pinkpurple-color-text, rgb(var(--sd-pinkpurple-6))));
180
+ --sd-selectable-card-soft-bg: var(--component-tag-tag-pinkpurple-color-bg, var(--component-tag-pinkpurple-color-bg, rgb(var(--sd-pinkpurple-1))));
181
+ --sd-selectable-card-border: var(--component-tag-tag-pinkpurple-bordered-color-border, var(--component-tag-pinkpurple-bordered-color-border, rgb(var(--sd-pinkpurple-6))));
180
182
  }
181
183
  .sd-selectable-card--color-magenta {
182
- --sd-selectable-card-accent: rgb(var(--sd-magenta-6));
183
- --sd-selectable-card-soft-bg: rgb(var(--sd-magenta-1));
184
- --sd-selectable-card-border: rgb(var(--sd-magenta-6));
184
+ --sd-selectable-card-accent: var(--component-tag-tag-magenta-color-text, var(--component-tag-magenta-color-text, rgb(var(--sd-magenta-6))));
185
+ --sd-selectable-card-soft-bg: var(--component-tag-tag-magenta-color-bg, var(--component-tag-magenta-color-bg, rgb(var(--sd-magenta-1))));
186
+ --sd-selectable-card-border: var(--component-tag-tag-magenta-bordered-color-border, var(--component-tag-magenta-bordered-color-border, rgb(var(--sd-magenta-6))));
185
187
  }
186
188
  .sd-selectable-card--color-gray {
187
- --sd-selectable-card-accent: rgb(var(--sd-gray-6));
188
- --sd-selectable-card-soft-bg: rgb(var(--sd-gray-2));
189
- --sd-selectable-card-border: rgb(var(--sd-gray-6));
189
+ --sd-selectable-card-accent: var(--component-tag-tag-gray-color-text, var(--component-tag-gray-color-text, rgb(var(--sd-gray-6))));
190
+ --sd-selectable-card-soft-bg: var(--component-tag-tag-gray-color-bg, var(--component-tag-gray-color-bg, rgb(var(--sd-gray-2))));
191
+ --sd-selectable-card-border: var(--component-tag-tag-gray-bordered-color-border, var(--component-tag-gray-bordered-color-border, rgb(var(--sd-gray-6))));
190
192
  }
191
193
  .sd-selectable-card--selected {
192
194
  border-color: var(--sd-selectable-card-border);
@@ -204,7 +206,7 @@
204
206
  }
205
207
  .sd-selectable-card--disabled {
206
208
  cursor: not-allowed;
207
- opacity: 0.5;
209
+ opacity: var(--component-selectable-card-selectable-card-disabled-opacity, var(--component-selectable-card-disabled-opacity, 0.5));
208
210
  }
209
211
  .sd-selectable-card-input {
210
212
  position: absolute;
@@ -48,9 +48,13 @@ $colors:
48
48
  background: $selectable-card-overlay-active;
49
49
  }
50
50
 
51
+ // 键盘焦点与 hover 保持同一视觉(::after 覆盖层)
51
52
  &:has(&-input:focus-visible) {
52
- outline: 2px solid $selectable-card-color-focus;
53
- outline-offset: 2px;
53
+ outline: none;
54
+
55
+ &::after {
56
+ background: $selectable-card-overlay-hover;
57
+ }
54
58
  }
55
59
 
56
60
  &-body {
@@ -1,3 +1,4 @@
1
+ @use '@style/theme/runtime.scss' as theme-runtime;
1
2
  @use '@style/theme/index.scss' as global;
2
3
  @use 'sass:string';
3
4
 
@@ -25,3 +26,62 @@ $selectable-card-size-large-gap: global.$spacing-6;
25
26
  $selectable-card-size-small-value: global.$font-size-body-3;
26
27
  $selectable-card-size-medium-value: global.$font-size-title-1;
27
28
  $selectable-card-size-large-value: global.$font-size-title-2;
29
+
30
+ // @generated runtime tokens — pnpm theme:generate
31
+ $selectable-card-color-bg: theme-runtime.token(
32
+ 'selectable-card',
33
+ 'selectable-card-color-bg',
34
+ $selectable-card-color-bg
35
+ );
36
+ $selectable-card-color-border: theme-runtime.token(
37
+ 'selectable-card',
38
+ 'selectable-card-color-border',
39
+ $selectable-card-color-border
40
+ );
41
+ $selectable-card-color-title: theme-runtime.token(
42
+ 'selectable-card',
43
+ 'selectable-card-color-title',
44
+ $selectable-card-color-title
45
+ );
46
+ $selectable-card-color-value: theme-runtime.token(
47
+ 'selectable-card',
48
+ 'selectable-card-color-value',
49
+ $selectable-card-color-value
50
+ );
51
+ $selectable-card-color-description: theme-runtime.token(
52
+ 'selectable-card',
53
+ 'selectable-card-color-description',
54
+ $selectable-card-color-description
55
+ );
56
+ $selectable-card-color-focus: theme-runtime.token(
57
+ 'selectable-card',
58
+ 'selectable-card-color-focus',
59
+ $selectable-card-color-focus,
60
+ 'color-primary-6'
61
+ );
62
+ $selectable-card-border-width: theme-runtime.token(
63
+ 'selectable-card',
64
+ 'selectable-card-border-width',
65
+ $selectable-card-border-width,
66
+ 'border-1'
67
+ );
68
+ $selectable-card-border-radius: theme-runtime.token(
69
+ 'selectable-card',
70
+ 'selectable-card-border-radius',
71
+ $selectable-card-border-radius
72
+ );
73
+ $selectable-card-disabled-opacity: theme-runtime.token(
74
+ 'selectable-card',
75
+ 'selectable-card-disabled-opacity',
76
+ $selectable-card-disabled-opacity
77
+ );
78
+ $selectable-card-overlay-hover: theme-runtime.token(
79
+ 'selectable-card',
80
+ 'selectable-card-overlay-hover',
81
+ $selectable-card-overlay-hover
82
+ );
83
+ $selectable-card-overlay-active: theme-runtime.token(
84
+ 'selectable-card',
85
+ 'selectable-card-overlay-active',
86
+ $selectable-card-overlay-active
87
+ );