dsh-code-server-app 0.3.57 → 0.3.59

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.
@@ -1,61 +0,0 @@
1
- // dshcs-editor-bridge / webview/src/approval.jsx —— 待决授权卡片(0.2.3;0.2.4 修"失效")
2
- //
3
- // 背景(见 lib/bridge-approval.mjs):DSH 的敏感动作(写工作区外的文件、执行命令)会走
4
- // `approval/request` 这条 agent 作用域的 waterfall。面板在旁边看的时候先接住它:
5
- // - 用户在这张卡片上点「允许一次 / 拒绝」→ 立刻生效(官方卡片不再出现);
6
- // - **面板关掉**(或等满宿主给的窗口,默认 5 分钟)→ 交回官方链路,DSH 界面里照旧弹同一张卡片。
7
- //
8
- // 0.2.3 的教训(用户实测:"授权框失效了"):卡片自己按 8 秒判过期 → 读完再点,按钮已经是灰的。
9
- // 现在**不再由前端判过期**:只要卡片还在(宿主这边仍未决),按钮就可点;请求被交回官方链路时
10
- // 它会从 `approvals` 里消失,面板改为显示审计行。倒计时只是"还有多久交回官方链路"的提示,
11
- // 不再决定能不能点。
12
- //
13
- // 卡片只做两件事:**显示**这次请求要干什么(工具名 + 原因),**回答**它。
14
- // 没有任何"记住这次选择""以后都允许"的入口 —— 授权只对这一次动作有效。
15
-
16
- /** 剩余时间文案(超过一分钟就 mm:ss,避免秒数跳动带来的紧张感)。 */
17
- function remainingText(item, holdMs, now) {
18
- const at = Number.isSafeInteger(item.at) ? item.at : now;
19
- const left = Math.max(0, at + holdMs - now);
20
- if (left === 0) return '已交回 DSH 界面';
21
- const totalSeconds = Math.ceil(left / 1000);
22
- const minutes = Math.floor(totalSeconds / 60);
23
- const seconds = totalSeconds % 60;
24
- return minutes > 0
25
- ? `${minutes} 分 ${String(seconds).padStart(2, '0')} 秒后交回 DSH 界面`
26
- : `${seconds} 秒后交回 DSH 界面`;
27
- }
28
-
29
- export function ApprovalCard({ item, holdMs, now, decided, onDecide }) {
30
- const choice = decided ?? null;
31
- // 已提交(点了但宿主还没确认):锁住按钮避免连点;这张卡片何时消失由宿主决定。
32
- const locked = choice !== null;
33
-
34
- return (
35
- <div className="dshcs-approval" data-decided={choice ?? undefined}>
36
- <div className="dshcs-approval-head">
37
- <span className="dshcs-approval-title">需要你的授权</span>
38
- <span className="dshcs-approval-timer">{remainingText(item, holdMs, now)}</span>
39
- </div>
40
- <div className="dshcs-approval-body">
41
- <span className="dshcs-approval-tool">{item.toolName}</span>
42
- {item.reason === '' ? null : <div className="dshcs-approval-reason">{item.reason}</div>}
43
- </div>
44
- <div className="dshcs-approval-actions">
45
- <button type="button" disabled={locked} onClick={() => onDecide(item.id, 'allowed-once')}>
46
- 允许一次
47
- </button>
48
- <button type="button" disabled={locked} onClick={() => onDecide(item.id, 'rejected')}>
49
- 拒绝
50
- </button>
51
- {choice === null
52
- ? <span className="dshcs-approval-note">只对这一次动作有效;关掉面板即交回 DSH 界面</span>
53
- : (
54
- <span className="dshcs-approval-note">
55
- {choice === 'allowed-once' ? '已允许一次(DSH 继续执行)' : '已拒绝'}
56
- </span>
57
- )}
58
- </div>
59
- </div>
60
- );
61
- }
@@ -1,576 +0,0 @@
1
- /* 官方设计令牌(DSH 界面同一套):由 scripts/build-webview.mjs 从
2
- * @deepseek-ai/dsh-client-ui-theme@0.1.6-alpha.1 的 lib/client.js 内联 CSS 原样抽出;
3
- * **只保留 -- 自定义属性声明**(普通声明会把宿主 DSH 页面也改掉)。
4
- * 不要手改 —— 这个文件是生成物,重新构建会覆盖。 */
5
- :root {
6
- --dsw-font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
7
- --ds-font-family-code:"SF Mono", "JetBrains Mono", "Fira Code", Consolas, "Liberation Mono", Menlo, Courier, "PingFang SC", "Microsoft YaHei";
8
- --ds-ease-in-out:cubic-bezier(.4, 0, .2, 1);
9
- --ds-transition-duration:.2s;
10
- --ds-transition-duration-fast:.1s;
11
- --ds-transition-duration-slow:.3s;
12
- }
13
- body {
14
- --dsw-static-amber-100:#fef5e7;
15
- --dsw-static-amber-400:#f7ad31;
16
- --dsw-static-amber-500:#f59e0b;
17
- --dsw-static-amber-600:#dd8629;
18
- --dsw-static-amber-900:#27241f;
19
- --dsw-static-blue-100:#dbeafe;
20
- --dsw-static-blue-300:#93c5fd;
21
- --dsw-static-blue-400:#60a5fa;
22
- --dsw-static-blue-450:#4d93f8;
23
- --dsw-static-blue-500:#3b82f6;
24
- --dsw-static-blue-50:#eff6ff;
25
- --dsw-static-blue-50p:#eaf3ff;
26
- --dsw-static-blue-600:#2563eb;
27
- --dsw-static-blue-75:#e5f0ff;
28
- --dsw-static-blue-800:#1e40af;
29
- --dsw-static-blue-900:#0e3074;
30
- --dsw-static-blue-950:#172554;
31
- --dsw-static-deepseek-100:#e4edfd;
32
- --dsw-static-deepseek-200:#d3e2ff;
33
- --dsw-static-deepseek-300:#b7c8fe;
34
- --dsw-static-deepseek-400:#679efe;
35
- --dsw-static-deepseek-450:#5686fe;
36
- --dsw-static-deepseek-500:#4176e6;
37
- --dsw-static-deepseek-50:#edf3fe;
38
- --dsw-static-deepseek-600:#4868b2;
39
- --dsw-static-deepseek-700-delete:#2f4c8f;
40
- --dsw-static-deepseek-800:#34415b;
41
- --dsw-static-deepseek-900:#283142;
42
- --dsw-static-green-100:#e6faed;
43
- --dsw-static-green-400:#4ed17e;
44
- --dsw-static-green-500:#22c55e;
45
- --dsw-static-green-900:#233c2c;
46
- --dsw-static-neutral-00:#fff;
47
- --dsw-static-neutral-1000:#000;
48
- --dsw-static-neutral-100:#f5f5f5;
49
- --dsw-static-neutral-150:#ededed;
50
- --dsw-static-neutral-200:#e5e5e5;
51
- --dsw-static-neutral-250:#dcdcdc;
52
- --dsw-static-neutral-300:#d4d4d4;
53
- --dsw-static-neutral-400:#a2a4a6;
54
- --dsw-static-neutral-500:#7f8287;
55
- --dsw-static-neutral-50:#fafafa;
56
- --dsw-static-neutral-550:#65676b;
57
- --dsw-static-neutral-600:#545557;
58
- --dsw-static-neutral-700:#3c3c3d;
59
- --dsw-static-neutral-800:#292929;
60
- --dsw-static-neutral-850:#212123;
61
- --dsw-static-neutral-900:#0f0f0f;
62
- --dsw-static-neutral-bluish-00:#fff;
63
- --dsw-static-neutral-bluish-1000:#0f1115;
64
- --dsw-static-neutral-bluish-100:#ebeef2;
65
- --dsw-static-neutral-bluish-150:#e9ecf2;
66
- --dsw-static-neutral-bluish-200:#e1e5ee;
67
- --dsw-static-neutral-bluish-300:#cfd3d6;
68
- --dsw-static-neutral-bluish-400:#adb2b8;
69
- --dsw-static-neutral-bluish-500:#979da6;
70
- --dsw-static-neutral-bluish-50:#f9fafb;
71
- --dsw-static-neutral-bluish-600:#81858c;
72
- --dsw-static-neutral-bluish-60:#f5f6f7;
73
- --dsw-static-neutral-bluish-700:#61666b;
74
- --dsw-static-neutral-bluish-750:#43454a;
75
- --dsw-static-neutral-bluish-75:#f1f3f5;
76
- --dsw-static-neutral-bluish-800:#353638;
77
- --dsw-static-neutral-bluish-850:#2c2c2e;
78
- --dsw-static-neutral-bluish-875:#232324;
79
- --dsw-static-neutral-bluish-900:#1b1b1c;
80
- --dsw-static-neutral-bluish-950:#151517;
81
- --dsw-static-red-100:#fee2e2;
82
- --dsw-static-red-400:#f25a5a;
83
- --dsw-static-red-500:#ef4444;
84
- --dsw-static-red-50:#fef2f2;
85
- --dsw-static-red-600:#ec1313;
86
- --dsw-static-red-900:#570c0c;
87
- }
88
- body[data-ds-dark-theme] {
89
- --dsw-static-amber-100:#fef5e7;
90
- --dsw-static-amber-400:#f7ad31;
91
- --dsw-static-amber-500:#f59e0b;
92
- --dsw-static-amber-600:#dd8629;
93
- --dsw-static-amber-900:#27241f;
94
- --dsw-static-blue-100:#dbeafe;
95
- --dsw-static-blue-300:#93c5fd;
96
- --dsw-static-blue-400:#60a5fa;
97
- --dsw-static-blue-450:#4d93f8;
98
- --dsw-static-blue-500:#3b82f6;
99
- --dsw-static-blue-50:#eff6ff;
100
- --dsw-static-blue-50p:#eaf3ff;
101
- --dsw-static-blue-600:#2563eb;
102
- --dsw-static-blue-75:#e5f0ff;
103
- --dsw-static-blue-800:#1e40af;
104
- --dsw-static-blue-900:#0e3074;
105
- --dsw-static-blue-950:#172554;
106
- --dsw-static-deepseek-100:#e4edfd;
107
- --dsw-static-deepseek-200:#d3e2ff;
108
- --dsw-static-deepseek-300:#b7c8fe;
109
- --dsw-static-deepseek-400:#679efe;
110
- --dsw-static-deepseek-450:#5686fe;
111
- --dsw-static-deepseek-500:#4176e6;
112
- --dsw-static-deepseek-50:#edf3fe;
113
- --dsw-static-deepseek-600:#4868b2;
114
- --dsw-static-deepseek-700-delete:#2f4c8f;
115
- --dsw-static-deepseek-800:#34415b;
116
- --dsw-static-deepseek-900:#283142;
117
- --dsw-static-green-100:#e6faed;
118
- --dsw-static-green-400:#4ed17e;
119
- --dsw-static-green-500:#22c55e;
120
- --dsw-static-green-900:#233c2c;
121
- --dsw-static-neutral-00:#fff;
122
- --dsw-static-neutral-1000:#000;
123
- --dsw-static-neutral-100:#f5f5f5;
124
- --dsw-static-neutral-150:#ededed;
125
- --dsw-static-neutral-200:#e5e5e5;
126
- --dsw-static-neutral-250:#dcdcdc;
127
- --dsw-static-neutral-300:#d4d4d4;
128
- --dsw-static-neutral-400:#a2a4a6;
129
- --dsw-static-neutral-500:#7f8287;
130
- --dsw-static-neutral-50:#fafafa;
131
- --dsw-static-neutral-550:#65676b;
132
- --dsw-static-neutral-600:#545557;
133
- --dsw-static-neutral-700:#3c3c3d;
134
- --dsw-static-neutral-800:#292929;
135
- --dsw-static-neutral-850:#212123;
136
- --dsw-static-neutral-900:#0f0f0f;
137
- --dsw-static-neutral-bluish-00:#fff;
138
- --dsw-static-neutral-bluish-1000:#0f1115;
139
- --dsw-static-neutral-bluish-100:#ebeef2;
140
- --dsw-static-neutral-bluish-150:#e9ecf2;
141
- --dsw-static-neutral-bluish-200:#e1e5ee;
142
- --dsw-static-neutral-bluish-300:#cfd3d6;
143
- --dsw-static-neutral-bluish-400:#adb2b8;
144
- --dsw-static-neutral-bluish-500:#979da6;
145
- --dsw-static-neutral-bluish-50:#f9fafb;
146
- --dsw-static-neutral-bluish-600:#81858c;
147
- --dsw-static-neutral-bluish-60:#f9fafb;
148
- --dsw-static-neutral-bluish-700:#61666b;
149
- --dsw-static-neutral-bluish-750:#43454a;
150
- --dsw-static-neutral-bluish-75:#f1f3f5;
151
- --dsw-static-neutral-bluish-800:#353638;
152
- --dsw-static-neutral-bluish-850:#2c2c2e;
153
- --dsw-static-neutral-bluish-875:#232324;
154
- --dsw-static-neutral-bluish-900:#1b1b1c;
155
- --dsw-static-neutral-bluish-950:#151517;
156
- --dsw-static-red-100:#fee2e2;
157
- --dsw-static-red-400:#f25a5a;
158
- --dsw-static-red-500:#ef4444;
159
- --dsw-static-red-50:#fef2f2;
160
- --dsw-static-red-600:#ec1313;
161
- --dsw-static-red-900:#570c0c;
162
- }
163
- body {
164
- --dsw-alias-bg-base:var(--dsw-static-neutral-bluish-00);
165
- --dsw-alias-bg-layer-1:var(--dsw-static-neutral-bluish-00);
166
- --dsw-alias-bg-layer-2:var(--dsw-static-neutral-bluish-00);
167
- --dsw-alias-bg-layer-3:var(--dsw-static-neutral-bluish-00);
168
- --dsw-alias-bg-mask-1:#0000003d;
169
- --dsw-alias-bg-mask-2:#0000001f;
170
- --dsw-alias-bg-mask-3:#0000007a;
171
- --dsw-alias-bg-mask-photo:#000000e0;
172
- --dsw-alias-bg-mask-drop:#ffffffb3;
173
- --dsw-alias-bg-module-platform:var(--dsw-static-neutral-bluish-60);
174
- --dsw-alias-bg-multi-select:var(--dsw-static-neutral-bluish-60);
175
- --dsw-alias-bg-overlay:var(--dsw-static-neutral-bluish-150);
176
- --dsw-alias-bg-skeleton:#0000000a;
177
- --dsw-alias-border-inverted2:#0000;
178
- --dsw-alias-border-inverted:#0000;
179
- --dsw-alias-border-l1:#0000000a;
180
- --dsw-alias-border-l2-darkmode-thin:#0000001a;
181
- --dsw-alias-border-l2:#0000001a;
182
- --dsw-alias-border-l3:#0000001f;
183
- --dsw-alias-border-l4:#00000029;
184
- --dsw-alias-brand-primary-invert:var(--dsw-static-neutral-bluish-1000);
185
- --dsw-alias-brand-primary-new-colorprimary-new-color:#4176e6;
186
- --dsw-alias-brand-primary:var(--dsw-static-neutral-bluish-1000);
187
- --dsw-alias-brand-text:var(--dsw-static-neutral-bluish-1000);
188
- --dsw-alias-button-contrast-fill:var(--dsw-static-neutral-bluish-700);
189
- --dsw-alias-button-elevated-fill:var(--dsw-static-neutral-bluish-00);
190
- --dsw-alias-button-floating-fill:var(--dsw-static-neutral-bluish-00);
191
- --dsw-alias-button-floating-hover:var(--dsw-static-neutral-bluish-75);
192
- --dsw-alias-button-ghost-active-border:var(--dsw-static-neutral-bluish-500);
193
- --dsw-alias-button-ghost-active-fill:var(--dsw-static-neutral-bluish-100);
194
- --dsw-alias-button-ghost-active-hover:var(--dsw-static-neutral-bluish-150);
195
- --dsw-alias-button-info-fill:var(--dsw-static-deepseek-500);
196
- --dsw-alias-button-info-hover:var(--dsw-static-deepseek-400);
197
- --dsw-alias-button-primary-dimmed:var(--dsw-static-neutral-bluish-100);
198
- --dsw-alias-button-primary-fill:var(--dsw-alias-brand-primary);
199
- --dsw-alias-button-primary-hover:var(--dsw-static-neutral-bluish-750);
200
- --dsw-alias-button-tool-bar-fill-invisible:#1f1f1f5c;
201
- --dsw-alias-button-tool-bar-fill:#54555780;
202
- --dsw-alias-button-tool-bar-hover:#54555799;
203
- --dsw-alias-interactive-bg-active:#2631481a;
204
- --dsw-alias-interactive-bg-hover-accent:#26314824;
205
- --dsw-alias-interactive-bg-hover-danger:#ec13130d;
206
- --dsw-alias-interactive-bg-hover-solid:var(--dsw-static-neutral-bluish-75);
207
- --dsw-alias-interactive-bg-hover:#2631480f;
208
- --dsw-alias-label-caption:var(--dsw-static-neutral-bluish-400);
209
- --dsw-alias-label-dimmed:var(--dsw-static-neutral-bluish-200);
210
- --dsw-alias-label-primary-bluish:var(--dsw-static-blue-900);
211
- --dsw-alias-label-primary-dimmed:var(--dsw-static-neutral-bluish-950);
212
- --dsw-alias-label-primary-foreground:var(--dsw-static-neutral-bluish-00);
213
- --dsw-alias-label-primary-inverted:var(--dsw-static-neutral-bluish-00);
214
- --dsw-alias-label-primary:var(--dsw-static-neutral-bluish-1000);
215
- --dsw-alias-label-secondary:var(--dsw-static-neutral-bluish-700);
216
- --dsw-alias-label-tertiary:var(--dsw-static-neutral-bluish-600);
217
- --dsw-alias-link:var(--dsw-static-deepseek-500);
218
- --dsw-alias-markdown-citation:var(--dsw-static-neutral-bluish-100);
219
- --dsw-alias-markdown-code-block-banner:var(--dsw-static-neutral-bluish-50);
220
- --dsw-alias-markdown-code-block:var(--dsw-static-neutral-bluish-50);
221
- --dsw-alias-markdown-code-segment-selected:var(--dsw-static-neutral-bluish-00);
222
- --dsw-alias-markdown-code-segment-unselected:var(--dsw-static-neutral-bluish-75);
223
- --dsw-alias-markdown-inline-code:var(--dsw-static-neutral-50);
224
- --dsw-alias-markdown-placeholder:var(--dsw-static-neutral-bluish-60);
225
- --dsw-alias-markdown-tag:var(--dsw-static-neutral-bluish-75);
226
- --dsw-alias-scrollbar-bg-l1:var(--dsw-static-neutral-200);
227
- --dsw-alias-scrollbar-bg-l2:var(--dsw-static-neutral-200);
228
- --dsw-alias-scrollbar-hover-l1:var(--dsw-static-neutral-300);
229
- --dsw-alias-scrollbar-hover-l2:var(--dsw-static-neutral-300);
230
- --dsw-alias-state-business-primary:var(--dsw-static-deepseek-500);
231
- --dsw-alias-state-business-tertiary:var(--dsw-static-deepseek-100);
232
- --dsw-alias-state-error-primary:var(--dsw-static-red-600);
233
- --dsw-alias-state-error-secondary:var(--dsw-static-red-400);
234
- --dsw-alias-state-success-primary:var(--dsw-static-green-500);
235
- --dsw-alias-state-success-secondary:var(--dsw-static-green-400);
236
- --dsw-alias-state-success-tertiary:var(--dsw-static-green-100);
237
- --dsw-alias-state-warn-label:var(--dsw-static-amber-600);
238
- --dsw-alias-state-warn-primary:var(--dsw-static-amber-500);
239
- --dsw-alias-state-warn-secondary:var(--dsw-static-amber-400);
240
- --dsw-alias-state-warn-tertiary:var(--dsw-static-amber-100);
241
- --dsw-alias-toast-bg:var(--dsw-static-neutral-bluish-800);
242
- --dsw-alias-tooltip-bg:var(--dsw-static-neutral-bluish-850);
243
- --dsw-specific-bubble-highlight:var(--dsw-static-deepseek-200);
244
- --dsw-specific-bubble:var(--dsw-static-deepseek-50);
245
- --dsw-specific-input-major:var(--dsw-static-neutral-bluish-00);
246
- --dsw-specific-login-input:var(--dsw-static-neutral-bluish-50);
247
- --dsw-specific-menu:var(--dsw-alias-bg-layer-3);
248
- --dsw-specific-selector:var(--dsw-static-neutral-bluish-60);
249
- --dsw-specific-sidebar-fill:var(--dsw-static-neutral-bluish-50);
250
- --dsw-specific-sidebar-nav-item-active-accent:var(--dsw-static-deepseek-100);
251
- --dsw-specific-sidebar-nav-item-active:var(--dsw-static-neutral-bluish-100);
252
- --dsw-specific-sidebar-nav-item-hover:var(--dsw-static-neutral-bluish-75);
253
- --dsw-specific-tip:var(--dsw-static-neutral-bluish-60);
254
- }
255
- body[data-ds-dark-theme] {
256
- --dsw-alias-bg-base:var(--dsw-static-neutral-bluish-950);
257
- --dsw-alias-bg-layer-1:var(--dsw-static-neutral-bluish-875);
258
- --dsw-alias-bg-layer-2:var(--dsw-static-neutral-bluish-850);
259
- --dsw-alias-bg-layer-3:var(--dsw-static-neutral-bluish-800);
260
- --dsw-alias-bg-mask-1:#00000080;
261
- --dsw-alias-bg-mask-2:#0003;
262
- --dsw-alias-bg-mask-3:#0000007a;
263
- --dsw-alias-bg-mask-photo:#000000e0;
264
- --dsw-alias-bg-mask-drop:#272730b3;
265
- --dsw-alias-bg-module-platform:var(--dsw-static-neutral-bluish-800);
266
- --dsw-alias-bg-multi-select:var(--dsw-static-neutral-850);
267
- --dsw-alias-bg-overlay:var(--dsw-static-neutral-bluish-700);
268
- --dsw-alias-bg-skeleton:#ffffff14;
269
- --dsw-alias-border-inverted2:#ffffff14;
270
- --dsw-alias-border-inverted:#ffffff0f;
271
- --dsw-alias-border-l1:#ffffff0f;
272
- --dsw-alias-border-l2-darkmode-thin:#ffffff0f;
273
- --dsw-alias-border-l2:#ffffff1f;
274
- --dsw-alias-border-l3:#ffffff29;
275
- --dsw-alias-border-l4:#fff3;
276
- --dsw-alias-brand-primary-invert:var(--dsw-static-neutral-bluish-50);
277
- --dsw-alias-brand-primary-new-colorprimary-new-color:var(--dsw-static-deepseek-450);
278
- --dsw-alias-brand-primary:var(--dsw-static-neutral-bluish-50);
279
- --dsw-alias-brand-text:var(--dsw-static-neutral-bluish-50);
280
- --dsw-alias-button-contrast-fill:var(--dsw-static-neutral-bluish-50);
281
- --dsw-alias-button-elevated-fill:var(--dsw-static-neutral-bluish-750);
282
- --dsw-alias-button-floating-fill:var(--dsw-static-neutral-bluish-850);
283
- --dsw-alias-button-floating-hover:var(--dsw-static-neutral-bluish-800);
284
- --dsw-alias-button-ghost-active-border:var(--dsw-static-neutral-bluish-600);
285
- --dsw-alias-button-ghost-active-fill:var(--dsw-static-neutral-bluish-750);
286
- --dsw-alias-button-ghost-active-hover:var(--dsw-static-neutral-bluish-700);
287
- --dsw-alias-button-info-fill:var(--dsw-static-deepseek-400);
288
- --dsw-alias-button-info-hover:var(--dsw-static-deepseek-500);
289
- --dsw-alias-button-primary-dimmed:var(--dsw-static-neutral-bluish-750);
290
- --dsw-alias-button-primary-fill:var(--dsw-alias-brand-primary);
291
- --dsw-alias-button-primary-hover:var(--dsw-static-neutral-bluish-100);
292
- --dsw-alias-button-tool-bar-fill-invisible:#1f1f1f5c;
293
- --dsw-alias-button-tool-bar-fill:#54555780;
294
- --dsw-alias-button-tool-bar-hover:#54555799;
295
- --dsw-alias-interactive-bg-active:#ffffff24;
296
- --dsw-alias-interactive-bg-hover-accent:#ffffff3d;
297
- --dsw-alias-interactive-bg-hover-danger:#f25a5a26;
298
- --dsw-alias-interactive-bg-hover-solid:var(--dsw-static-neutral-bluish-800);
299
- --dsw-alias-interactive-bg-hover:#ffffff14;
300
- --dsw-alias-label-caption:var(--dsw-static-neutral-bluish-600);
301
- --dsw-alias-label-dimmed:var(--dsw-static-neutral-bluish-750);
302
- --dsw-alias-label-primary-bluish:var(--dsw-static-neutral-bluish-50);
303
- --dsw-alias-label-primary-dimmed:var(--dsw-static-neutral-bluish-100);
304
- --dsw-alias-label-primary-foreground:var(--dsw-static-neutral-bluish-1000);
305
- --dsw-alias-label-primary-inverted:var(--dsw-static-neutral-bluish-800);
306
- --dsw-alias-label-primary:var(--dsw-static-neutral-bluish-50);
307
- --dsw-alias-label-secondary:var(--dsw-static-neutral-bluish-300);
308
- --dsw-alias-label-tertiary:var(--dsw-static-neutral-bluish-400);
309
- --dsw-alias-link:var(--dsw-static-deepseek-400);
310
- --dsw-alias-markdown-citation:var(--dsw-static-neutral-bluish-800);
311
- --dsw-alias-markdown-code-block-banner:var(--dsw-static-neutral-bluish-850);
312
- --dsw-alias-markdown-code-block:var(--dsw-static-neutral-bluish-900);
313
- --dsw-alias-markdown-code-segment-selected:var(--dsw-static-neutral-bluish-800);
314
- --dsw-alias-markdown-code-segment-unselected:var(--dsw-static-neutral-bluish-900);
315
- --dsw-alias-markdown-inline-code:var(--dsw-static-neutral-800);
316
- --dsw-alias-markdown-placeholder:var(--dsw-static-neutral-bluish-850);
317
- --dsw-alias-markdown-tag:var(--dsw-static-neutral-bluish-850);
318
- --dsw-alias-scrollbar-bg-l1:var(--dsw-static-neutral-700);
319
- --dsw-alias-scrollbar-bg-l2:var(--dsw-static-neutral-600);
320
- --dsw-alias-scrollbar-hover-l1:var(--dsw-static-neutral-600);
321
- --dsw-alias-scrollbar-hover-l2:var(--dsw-static-neutral-550);
322
- --dsw-alias-state-business-primary:var(--dsw-static-deepseek-400);
323
- --dsw-alias-state-business-tertiary:var(--dsw-static-deepseek-800);
324
- --dsw-alias-state-error-primary:var(--dsw-static-red-400);
325
- --dsw-alias-state-error-secondary:var(--dsw-static-red-400);
326
- --dsw-alias-state-success-primary:var(--dsw-static-green-500);
327
- --dsw-alias-state-success-secondary:var(--dsw-static-green-400);
328
- --dsw-alias-state-success-tertiary:var(--dsw-static-green-900);
329
- --dsw-alias-state-warn-label:var(--dsw-static-amber-600);
330
- --dsw-alias-state-warn-primary:var(--dsw-static-amber-500);
331
- --dsw-alias-state-warn-secondary:var(--dsw-static-amber-400);
332
- --dsw-alias-state-warn-tertiary:var(--dsw-static-amber-900);
333
- --dsw-alias-toast-bg:var(--dsw-static-neutral-bluish-750);
334
- --dsw-alias-tooltip-bg:var(--dsw-static-neutral-bluish-750);
335
- --dsw-specific-bubble-highlight:var(--dsw-static-neutral-bluish-750);
336
- --dsw-specific-bubble:var(--dsw-static-neutral-bluish-850);
337
- --dsw-specific-input-major:var(--dsw-static-neutral-bluish-850);
338
- --dsw-specific-login-input:var(--dsw-static-neutral-bluish-900);
339
- --dsw-specific-menu:var(--dsw-alias-bg-layer-3);
340
- --dsw-specific-selector:var(--dsw-static-neutral-bluish-800);
341
- --dsw-specific-sidebar-fill:var(--dsw-static-neutral-bluish-900);
342
- --dsw-specific-sidebar-nav-item-active-accent:var(--dsw-static-neutral-bluish-800);
343
- --dsw-specific-sidebar-nav-item-active:var(--dsw-static-neutral-bluish-750);
344
- --dsw-specific-sidebar-nav-item-hover:var(--dsw-static-neutral-bluish-850);
345
- --dsw-specific-tip:var(--dsw-static-neutral-bluish-800);
346
- }
347
- body {
348
- --dsh-scrollbar-thumb:var(--dsw-alias-scrollbar-bg-l1);
349
- --dsh-scrollbar-thumb-hover:var(--dsw-alias-scrollbar-hover-l1);
350
- --dsh-scrollbar-thumb-border:0px;
351
- --dsh-scrollbar-track-margin:0px;
352
- --dsh-scrollbar-width:8px;
353
- }
354
- body {
355
- --dsw-linear-gradient-think:linear-gradient(180deg, #fff 20.19%, #fff0 100%);
356
- --dsw-linear-think-select:linear-gradient(180deg, #f5f6f7 20.19%, #f5f6f700 100%);
357
- --dsw-shadow-lv1:0 2px 4px 0 #0000000d;
358
- --dsw-shadow-lv1-blur:0 4px 12px 0 #00000005;
359
- --dsw-shadow-lv2:0 4px 12px 0 #00000005, 0 2px 8px 0 #0000000a;
360
- --dsw-shadow-lv3:0 0 1px 0 #0003, 0 0 4px 0 #00000005, 0 12px 32px 0 #00000014;
361
- --dsw-elevation-stroke-color:var(--dsw-alias-border-l4);
362
- --dsw-mask-blur:blur(2px);
363
- }
364
- body[data-ds-dark-theme] {
365
- --dsw-linear-gradient-think:linear-gradient(180deg, #151517 20.19%, #15151700 100%);
366
- --dsw-linear-think-select:linear-gradient(180deg, #232325 20.19%, #23232500 100%);
367
- }
368
- body {
369
- --dsh-content-font-delta:calc(var(--dsh-content-font-size,14px) - 14px);
370
- --dsh-content-font-size-secondary:min(calc(var(--dsh-content-font-size,14px) - 1px), max(13px, calc(var(--dsh-content-font-size,14px) - 2px)));
371
- --dsh-content-font-delta-secondary:calc(var(--dsh-content-font-size-secondary) - 13px);
372
- --dsw-font-markdown-h1:700 calc(21px + var(--dsh-content-font-delta)) / calc(30px + var(--dsh-content-font-delta)) var(--dsw-font-family);
373
- --dsw-font-markdown-h1-font-family:var(--dsw-font-family);
374
- --dsw-font-markdown-h1-font-weight:700;
375
- --dsw-font-markdown-h1-line-height:calc(30px + var(--dsh-content-font-delta));
376
- --dsw-font-markdown-h1-font-size:calc(21px + var(--dsh-content-font-delta));
377
- --dsw-font-markdown-h1-font-style:normal;
378
- --dsw-font-markdown-h2:700 calc(19px + var(--dsh-content-font-delta)) / calc(28px + var(--dsh-content-font-delta)) var(--dsw-font-family);
379
- --dsw-font-markdown-h2-font-family:var(--dsw-font-family);
380
- --dsw-font-markdown-h2-font-weight:700;
381
- --dsw-font-markdown-h2-line-height:calc(28px + var(--dsh-content-font-delta));
382
- --dsw-font-markdown-h2-font-size:calc(19px + var(--dsh-content-font-delta));
383
- --dsw-font-markdown-h2-font-style:normal;
384
- --dsw-font-markdown-h3:700 calc(18px + var(--dsh-content-font-delta)) / calc(26px + var(--dsh-content-font-delta)) var(--dsw-font-family);
385
- --dsw-font-markdown-h3-font-family:var(--dsw-font-family);
386
- --dsw-font-markdown-h3-font-weight:700;
387
- --dsw-font-markdown-h3-line-height:calc(26px + var(--dsh-content-font-delta));
388
- --dsw-font-markdown-h3-font-size:calc(18px + var(--dsh-content-font-delta));
389
- --dsw-font-markdown-h3-font-style:normal;
390
- --dsw-font-markdown-h4:600 var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);
391
- --dsw-font-markdown-h4-font-family:var(--dsw-font-family);
392
- --dsw-font-markdown-h4-font-weight:600;
393
- --dsw-font-markdown-h4-line-height:calc(24px + var(--dsh-content-font-delta));
394
- --dsw-font-markdown-h4-font-size:var(--dsh-content-font-size,14px);
395
- --dsw-font-markdown-h4-font-style:normal;
396
- --dsw-font-markdown-base:var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);
397
- --dsw-font-markdown-base-font-family:var(--dsw-font-family);
398
- --dsw-font-markdown-base-font-weight:400;
399
- --dsw-font-markdown-base-line-height:calc(24px + var(--dsh-content-font-delta));
400
- --dsw-font-markdown-base-font-size:var(--dsh-content-font-size,14px);
401
- --dsw-font-markdown-base-font-style:normal;
402
- --dsw-font-markdown-base-strong:600 var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);
403
- --dsw-font-markdown-base-strong-font-family:var(--dsw-font-family);
404
- --dsw-font-markdown-base-strong-font-weight:600;
405
- --dsw-font-markdown-base-strong-line-height:calc(24px + var(--dsh-content-font-delta));
406
- --dsw-font-markdown-base-strong-font-size:var(--dsh-content-font-size,14px);
407
- --dsw-font-markdown-base-strong-font-style:normal;
408
- --dsw-font-markdown-base-italic:italic var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);
409
- --dsw-font-markdown-base-italic-font-family:var(--dsw-font-family);
410
- --dsw-font-markdown-base-italic-font-weight:400;
411
- --dsw-font-markdown-base-italic-line-height:calc(24px + var(--dsh-content-font-delta));
412
- --dsw-font-markdown-base-italic-font-size:var(--dsh-content-font-size,14px);
413
- --dsw-font-markdown-base-italic-font-style:italic;
414
- --dsw-font-markdown-base-strong-italic:italic 600 var(--dsh-content-font-size,14px) / calc(24px + var(--dsh-content-font-delta)) var(--dsw-font-family);
415
- --dsw-font-markdown-base-strong-italic-font-family:var(--dsw-font-family);
416
- --dsw-font-markdown-base-strong-italic-font-weight:600;
417
- --dsw-font-markdown-base-strong-italic-line-height:calc(24px + var(--dsh-content-font-delta));
418
- --dsw-font-markdown-base-strong-italic-font-size:var(--dsh-content-font-size,14px);
419
- --dsw-font-markdown-base-strong-italic-font-style:italic;
420
- --dsw-font-markdown-table:var(--dsh-content-font-size-secondary,13px)/calc(22px + var(--dsh-content-font-delta-secondary,0px)) var(--dsw-font-family);
421
- --dsw-font-markdown-table-font-family:var(--dsw-font-family);
422
- --dsw-font-markdown-table-font-weight:400;
423
- --dsw-font-markdown-table-line-height:calc(22px + var(--dsh-content-font-delta-secondary,0px));
424
- --dsw-font-markdown-table-font-size:var(--dsh-content-font-size-secondary,13px);
425
- --dsw-font-markdown-table-font-style:normal;
426
- --dsw-font-markdown-table-head:500 var(--dsh-content-font-size-secondary,13px)/calc(22px + var(--dsh-content-font-delta-secondary,0px)) var(--dsw-font-family);
427
- --dsw-font-markdown-table-head-font-family:var(--dsw-font-family);
428
- --dsw-font-markdown-table-head-font-weight:500;
429
- --dsw-font-markdown-table-head-line-height:calc(22px + var(--dsh-content-font-delta-secondary,0px));
430
- --dsw-font-markdown-table-head-font-size:var(--dsh-content-font-size-secondary,13px);
431
- --dsw-font-markdown-table-head-font-style:normal;
432
- --dsw-font-markdown-small:12px/20px var(--dsw-font-family);
433
- --dsw-font-markdown-small-font-family:var(--dsw-font-family);
434
- --dsw-font-markdown-small-font-weight:400;
435
- --dsw-font-markdown-small-line-height:20px;
436
- --dsw-font-markdown-small-font-size:12px;
437
- --dsw-font-markdown-small-font-style:normal;
438
- --dsw-font-markdown-small-strong:600 12px/20px var(--dsw-font-family);
439
- --dsw-font-markdown-small-strong-font-family:var(--dsw-font-family);
440
- --dsw-font-markdown-small-strong-font-weight:600;
441
- --dsw-font-markdown-small-strong-line-height:20px;
442
- --dsw-font-markdown-small-strong-font-size:12px;
443
- --dsw-font-markdown-small-strong-font-style:normal;
444
- --dsw-font-markdown-small-italic:italic 12px/20px var(--dsw-font-family);
445
- --dsw-font-markdown-small-italic-font-family:var(--dsw-font-family);
446
- --dsw-font-markdown-small-italic-font-weight:400;
447
- --dsw-font-markdown-small-italic-line-height:20px;
448
- --dsw-font-markdown-small-italic-font-size:12px;
449
- --dsw-font-markdown-small-italic-font-style:italic;
450
- --dsw-font-markdown-small-strong-italic:italic 600 12px/20px var(--dsw-font-family);
451
- --dsw-font-markdown-small-strong-italic-font-family:var(--dsw-font-family);
452
- --dsw-font-markdown-small-strong-italic-font-weight:600;
453
- --dsw-font-markdown-small-strong-italic-line-height:20px;
454
- --dsw-font-markdown-small-strong-italic-font-size:12px;
455
- --dsw-font-markdown-small-strong-italic-font-style:italic;
456
- --dsw-font-markdown-code:12px/19px var(--ds-font-family-code);
457
- --dsw-font-markdown-code-font-family:var(--ds-font-family-code);
458
- --dsw-font-markdown-code-font-weight:400;
459
- --dsw-font-markdown-code-line-height:19px;
460
- --dsw-font-markdown-code-font-size:12px;
461
- --dsw-font-markdown-code-font-style:normal;
462
- --dsw-font-markdown-code-block:11px/19px var(--ds-font-family-code);
463
- --dsw-font-markdown-code-block-font-family:var(--ds-font-family-code);
464
- --dsw-font-markdown-code-block-font-weight:400;
465
- --dsw-font-markdown-code-block-line-height:19px;
466
- --dsw-font-markdown-code-block-font-size:11px;
467
- --dsw-font-markdown-code-block-font-style:normal;
468
- --dsw-font-markdown-code-block-small:11px/16px var(--ds-font-family-code);
469
- --dsw-font-markdown-code-block-small-font-family:var(--ds-font-family-code);
470
- --dsw-font-markdown-code-block-small-font-weight:400;
471
- --dsw-font-markdown-code-block-small-line-height:16px;
472
- --dsw-font-markdown-code-block-small-font-size:11px;
473
- --dsw-font-markdown-code-block-small-font-style:normal;
474
- --dsw-font-xl-24:600 24px/32px var(--dsw-font-family);
475
- --dsw-font-xl-24-font-family:var(--dsw-font-family);
476
- --dsw-font-xl-24-font-weight:600;
477
- --dsw-font-xl-24-line-height:32px;
478
- --dsw-font-xl-24-font-size:24px;
479
- --dsw-font-xl-24-font-style:normal;
480
- --dsw-font-l-20:500 20px/28px var(--dsw-font-family);
481
- --dsw-font-l-20-font-family:var(--dsw-font-family);
482
- --dsw-font-l-20-font-weight:500;
483
- --dsw-font-l-20-line-height:28px;
484
- --dsw-font-l-20-font-size:20px;
485
- --dsw-font-l-20-font-style:normal;
486
- --dsw-font-m-18:500 16px/28px var(--dsw-font-family);
487
- --dsw-font-m-18-font-family:var(--dsw-font-family);
488
- --dsw-font-m-18-font-weight:500;
489
- --dsw-font-m-18-line-height:28px;
490
- --dsw-font-m-18-font-size:16px;
491
- --dsw-font-m-18-font-style:normal;
492
- --dsw-font-base-16:16px/24px var(--dsw-font-family);
493
- --dsw-font-base-16-font-family:var(--dsw-font-family);
494
- --dsw-font-base-16-font-weight:400;
495
- --dsw-font-base-16-line-height:24px;
496
- --dsw-font-base-16-font-size:16px;
497
- --dsw-font-base-16-font-style:normal;
498
- --dsw-font-base-strong-16:500 16px/24px var(--dsw-font-family);
499
- --dsw-font-base-strong-16-font-family:var(--dsw-font-family);
500
- --dsw-font-base-strong-16-font-weight:500;
501
- --dsw-font-base-strong-16-line-height:24px;
502
- --dsw-font-base-strong-16-font-size:16px;
503
- --dsw-font-base-strong-16-font-style:normal;
504
- --dsw-font-s-14:14px/22px var(--dsw-font-family);
505
- --dsw-font-s-14-font-family:var(--dsw-font-family);
506
- --dsw-font-s-14-font-weight:400;
507
- --dsw-font-s-14-line-height:22px;
508
- --dsw-font-s-14-font-size:14px;
509
- --dsw-font-s-14-font-style:normal;
510
- --dsw-font-s-strong-14:500 14px/22px var(--dsw-font-family);
511
- --dsw-font-s-strong-14-font-family:var(--dsw-font-family);
512
- --dsw-font-s-strong-14-font-weight:500;
513
- --dsw-font-s-strong-14-line-height:22px;
514
- --dsw-font-s-strong-14-font-size:14px;
515
- --dsw-font-s-strong-14-font-style:normal;
516
- --dsw-font-xs-13:13px/20px var(--dsw-font-family);
517
- --dsw-font-xs-13-font-family:var(--dsw-font-family);
518
- --dsw-font-xs-13-font-weight:400;
519
- --dsw-font-xs-13-line-height:20px;
520
- --dsw-font-xs-13-font-size:13px;
521
- --dsw-font-xs-13-font-style:normal;
522
- --dsw-font-xs-strong-13:500 13px/20px var(--dsw-font-family);
523
- --dsw-font-xs-strong-13-font-family:var(--dsw-font-family);
524
- --dsw-font-xs-strong-13-font-weight:500;
525
- --dsw-font-xs-strong-13-line-height:20px;
526
- --dsw-font-xs-strong-13-font-size:13px;
527
- --dsw-font-xs-strong-13-font-style:normal;
528
- --dsw-font-xxs-12:12px/18px var(--dsw-font-family);
529
- --dsw-font-xxs-12-font-family:var(--dsw-font-family);
530
- --dsw-font-xxs-12-font-weight:400;
531
- --dsw-font-xxs-12-line-height:18px;
532
- --dsw-font-xxs-12-font-size:12px;
533
- --dsw-font-xxs-12-font-style:normal;
534
- --dsw-font-xxs-strong-12:500 12px/18px var(--dsw-font-family);
535
- --dsw-font-xxs-strong-12-font-family:var(--dsw-font-family);
536
- --dsw-font-xxs-strong-12-font-weight:500;
537
- --dsw-font-xxs-strong-12-line-height:18px;
538
- --dsw-font-xxs-strong-12-font-size:12px;
539
- --dsw-font-xxs-strong-12-font-style:normal;
540
- --dsw-font-xxxs-11:11px/14px var(--dsw-font-family);
541
- --dsw-font-xxxs-11-font-family:var(--dsw-font-family);
542
- --dsw-font-xxxs-11-font-weight:400;
543
- --dsw-font-xxxs-11-line-height:14px;
544
- --dsw-font-xxxs-11-font-size:11px;
545
- --dsw-font-xxxs-11-font-style:normal;
546
- --dsw-font-xxxs-strong-11:500 11px/14px var(--dsw-font-family);
547
- --dsw-font-xxxs-strong-11-font-family:var(--dsw-font-family);
548
- --dsw-font-xxxs-strong-11-font-weight:500;
549
- --dsw-font-xxxs-strong-11-line-height:14px;
550
- --dsw-font-xxxs-strong-11-font-size:11px;
551
- --dsw-font-xxxs-strong-11-font-style:normal;
552
- }
553
- :root {
554
- --shiki-foreground:var(--dsw-alias-label-primary);
555
- --shiki-background:var(--dsw-alias-markdown-code-block);
556
- --shiki-token-constant:#1c7ed6;
557
- --shiki-token-string:#2f9e44;
558
- --shiki-token-comment:#868e96;
559
- --shiki-token-keyword:#d6336c;
560
- --shiki-token-parameter:#e8590c;
561
- --shiki-token-function:#6741d9;
562
- --shiki-token-string-expression:#2b8a3e;
563
- --shiki-token-punctuation:#495057;
564
- --shiki-token-link:#1971c2;
565
- }
566
- body[data-ds-dark-theme] {
567
- --shiki-token-constant:#4dabf7;
568
- --shiki-token-string:#69db7c;
569
- --shiki-token-comment:#adb5bd;
570
- --shiki-token-keyword:#faa2c1;
571
- --shiki-token-parameter:#ffa94d;
572
- --shiki-token-function:#b197fc;
573
- --shiki-token-string-expression:#8ce99a;
574
- --shiki-token-punctuation:#ced4da;
575
- --shiki-token-link:#74c0fc;
576
- }