@nextclaw/ui 0.6.4 → 0.6.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/dist/assets/{ChannelsList-D_sFrLcv.js → ChannelsList-DiX7ssoj.js} +1 -1
- package/dist/assets/ChatPage-CEEbtfae.js +34 -0
- package/dist/assets/{DocBrowser-BjlljUNM.js → DocBrowser-CkDugJv3.js} +1 -1
- package/dist/assets/{MarketplacePage-Dob7bQI5.js → MarketplacePage-Cxt223yL.js} +1 -1
- package/dist/assets/{ModelConfig-BesYoiw5.js → ModelConfig-BRRJU2mk.js} +1 -1
- package/dist/assets/{ProvidersList-NOoQyb_C.js → ProvidersList-Bl-OMAwu.js} +1 -1
- package/dist/assets/{RuntimeConfig-CGLGP3_g.js → RuntimeConfig-C0wurlgT.js} +1 -1
- package/dist/assets/{SecretsConfig-DP_InKs3.js → SecretsConfig-C_3yJm1I.js} +2 -2
- package/dist/assets/{SessionsConfig-XJbSPDZp.js → SessionsConfig-D13xFf5J.js} +1 -1
- package/dist/assets/{card-Bg0moANO.js → card-sDEXo_R4.js} +1 -1
- package/dist/assets/index-6azf0otP.css +1 -0
- package/dist/assets/index-DP9xXu9V.js +2 -0
- package/dist/assets/{label-DZuLJB_b.js → label-DhIqXnKx.js} +1 -1
- package/dist/assets/{logos-BDO7tmL-.js → logos-B9Qiy9wo.js} +1 -1
- package/dist/assets/{page-layout-BL29v3Ct.js → page-layout-CC6kzYFp.js} +1 -1
- package/dist/assets/{switch-DxH8lRYW.js → switch-DFPJEEVz.js} +1 -1
- package/dist/assets/{tabs-custom-BPd_6USz.js → tabs-custom-C_1pBckQ.js} +1 -1
- package/dist/assets/{useConfig-CJjG7ys-.js → useConfig-q7QqH3JB.js} +3 -3
- package/dist/assets/{useConfirmDialog-C-G5k7zK.js → useConfirmDialog-BNkeOTcY.js} +1 -1
- package/dist/assets/{vendor-Ylg6Wdt_.js → vendor-Dj2ULvht.js} +61 -56
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/src/components/chat/ChatThread.tsx +4 -2
- package/src/index.css +226 -29
- package/src/lib/i18n.ts +2 -0
- package/dist/assets/ChatPage-dDje_-4b.js +0 -32
- package/dist/assets/index-8RAlp6Gn.js +0 -2
- package/dist/assets/index-r3k4oB78.css +0 -1
package/dist/index.html
CHANGED
|
@@ -6,9 +6,9 @@
|
|
|
6
6
|
<link rel="icon" type="image/svg+xml" href="/logo.svg" />
|
|
7
7
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
8
8
|
<title>NextClaw - 系统配置</title>
|
|
9
|
-
<script type="module" crossorigin src="/assets/index-
|
|
10
|
-
<link rel="modulepreload" crossorigin href="/assets/vendor-
|
|
11
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
9
|
+
<script type="module" crossorigin src="/assets/index-DP9xXu9V.js"></script>
|
|
10
|
+
<link rel="modulepreload" crossorigin href="/assets/vendor-Dj2ULvht.js">
|
|
11
|
+
<link rel="stylesheet" crossorigin href="/assets/index-6azf0otP.css">
|
|
12
12
|
</head>
|
|
13
13
|
|
|
14
14
|
<body>
|
package/package.json
CHANGED
|
@@ -222,8 +222,10 @@ function MarkdownBlock({ text, role }: { text: string; role: ChatRole }) {
|
|
|
222
222
|
}
|
|
223
223
|
return <img {...props} src={safeSrc} alt={alt || ''} loading="lazy" decoding="async" />;
|
|
224
224
|
},
|
|
225
|
-
code: ({
|
|
226
|
-
|
|
225
|
+
code: ({ className, children, ...props }) => {
|
|
226
|
+
const plainText = String(children ?? '');
|
|
227
|
+
const isInlineCode = !className && !plainText.includes('\n');
|
|
228
|
+
if (isInlineCode) {
|
|
227
229
|
return (
|
|
228
230
|
<code {...props} className={cn('chat-inline-code', className)}>
|
|
229
231
|
{children}
|
package/src/index.css
CHANGED
|
@@ -184,70 +184,267 @@
|
|
|
184
184
|
}
|
|
185
185
|
|
|
186
186
|
.chat-markdown {
|
|
187
|
-
|
|
188
|
-
|
|
187
|
+
--md-text: #0f172a;
|
|
188
|
+
--md-muted: #334155;
|
|
189
|
+
--md-border: rgba(148, 163, 184, 0.34);
|
|
190
|
+
--md-link: hsl(var(--primary));
|
|
191
|
+
--md-inline-code-bg: rgba(15, 23, 42, 0.08);
|
|
192
|
+
--md-inline-code-color: #1e293b;
|
|
193
|
+
--md-blockquote-border: rgba(14, 165, 233, 0.45);
|
|
194
|
+
--md-blockquote-bg: rgba(14, 165, 233, 0.08);
|
|
195
|
+
--md-code-surface: #0b1220;
|
|
196
|
+
--md-code-toolbar-bg: rgba(15, 23, 42, 0.56);
|
|
197
|
+
--md-code-toolbar-border: rgba(148, 163, 184, 0.3);
|
|
198
|
+
--md-code-text: #e5e7eb;
|
|
199
|
+
--md-table-head-bg: rgba(148, 163, 184, 0.14);
|
|
200
|
+
|
|
201
|
+
color: var(--md-text);
|
|
202
|
+
font-size: 0.925rem;
|
|
203
|
+
line-height: 1.72;
|
|
189
204
|
word-break: break-word;
|
|
190
205
|
}
|
|
191
206
|
|
|
207
|
+
.chat-markdown-user {
|
|
208
|
+
--md-text: rgba(255, 255, 255, 0.97);
|
|
209
|
+
--md-muted: rgba(219, 234, 254, 0.92);
|
|
210
|
+
--md-border: rgba(191, 219, 254, 0.35);
|
|
211
|
+
--md-link: #dbeafe;
|
|
212
|
+
--md-inline-code-bg: rgba(15, 23, 42, 0.35);
|
|
213
|
+
--md-inline-code-color: #eff6ff;
|
|
214
|
+
--md-blockquote-border: rgba(191, 219, 254, 0.8);
|
|
215
|
+
--md-blockquote-bg: rgba(15, 23, 42, 0.2);
|
|
216
|
+
--md-code-surface: rgba(2, 6, 23, 0.92);
|
|
217
|
+
--md-code-toolbar-bg: rgba(2, 6, 23, 0.88);
|
|
218
|
+
--md-code-toolbar-border: rgba(191, 219, 254, 0.26);
|
|
219
|
+
--md-code-text: #e2e8f0;
|
|
220
|
+
--md-table-head-bg: rgba(191, 219, 254, 0.16);
|
|
221
|
+
}
|
|
222
|
+
|
|
192
223
|
.chat-markdown > * + * {
|
|
193
|
-
margin-top: 0.
|
|
224
|
+
margin-top: 0.72rem;
|
|
225
|
+
}
|
|
226
|
+
|
|
227
|
+
.chat-markdown p,
|
|
228
|
+
.chat-markdown li,
|
|
229
|
+
.chat-markdown blockquote {
|
|
230
|
+
color: var(--md-text);
|
|
194
231
|
}
|
|
195
232
|
|
|
196
233
|
.chat-markdown h1,
|
|
197
234
|
.chat-markdown h2,
|
|
198
|
-
.chat-markdown h3
|
|
199
|
-
|
|
235
|
+
.chat-markdown h3,
|
|
236
|
+
.chat-markdown h4,
|
|
237
|
+
.chat-markdown h5,
|
|
238
|
+
.chat-markdown h6 {
|
|
239
|
+
margin: 0.2rem 0 0;
|
|
200
240
|
font-weight: 700;
|
|
241
|
+
line-height: 1.35;
|
|
242
|
+
letter-spacing: -0.01em;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
.chat-markdown h1 {
|
|
246
|
+
font-size: 1.22rem;
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
.chat-markdown h2 {
|
|
250
|
+
font-size: 1.12rem;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
.chat-markdown h3 {
|
|
254
|
+
font-size: 1.02rem;
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
.chat-markdown h4,
|
|
258
|
+
.chat-markdown h5,
|
|
259
|
+
.chat-markdown h6 {
|
|
260
|
+
font-size: 0.96rem;
|
|
201
261
|
}
|
|
202
262
|
|
|
203
263
|
.chat-markdown ul,
|
|
204
264
|
.chat-markdown ol {
|
|
205
|
-
|
|
265
|
+
margin: 0.35rem 0;
|
|
266
|
+
padding-left: 1.35rem;
|
|
267
|
+
}
|
|
268
|
+
|
|
269
|
+
.chat-markdown li + li {
|
|
270
|
+
margin-top: 0.25rem;
|
|
271
|
+
}
|
|
272
|
+
|
|
273
|
+
.chat-markdown li > p {
|
|
274
|
+
margin: 0;
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
.chat-markdown ul.contains-task-list,
|
|
278
|
+
.chat-markdown ol.contains-task-list {
|
|
279
|
+
list-style: none;
|
|
280
|
+
padding-left: 0.2rem;
|
|
281
|
+
}
|
|
282
|
+
|
|
283
|
+
.chat-markdown li.task-list-item {
|
|
284
|
+
display: flex;
|
|
285
|
+
align-items: flex-start;
|
|
286
|
+
gap: 0.52rem;
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
.chat-markdown .chat-task-checkbox {
|
|
290
|
+
position: relative;
|
|
291
|
+
top: 0.2rem;
|
|
292
|
+
width: 0.92rem;
|
|
293
|
+
height: 0.92rem;
|
|
294
|
+
cursor: default;
|
|
295
|
+
}
|
|
296
|
+
|
|
297
|
+
.chat-markdown hr {
|
|
298
|
+
border: 0;
|
|
299
|
+
border-top: 1px solid var(--md-border);
|
|
300
|
+
margin: 0.92rem 0;
|
|
301
|
+
}
|
|
302
|
+
|
|
303
|
+
.chat-markdown a {
|
|
304
|
+
color: var(--md-link);
|
|
305
|
+
text-decoration-line: underline;
|
|
306
|
+
text-decoration-thickness: 1.2px;
|
|
307
|
+
text-underline-offset: 2px;
|
|
308
|
+
word-break: break-all;
|
|
309
|
+
}
|
|
310
|
+
|
|
311
|
+
.chat-markdown .chat-link-invalid {
|
|
312
|
+
color: var(--md-muted);
|
|
313
|
+
text-decoration-line: underline;
|
|
314
|
+
text-decoration-style: dotted;
|
|
206
315
|
}
|
|
207
316
|
|
|
208
317
|
.chat-markdown code {
|
|
209
318
|
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
|
210
|
-
font-size: 0.
|
|
319
|
+
font-size: 0.82rem;
|
|
211
320
|
}
|
|
212
321
|
|
|
322
|
+
.chat-markdown .chat-inline-code,
|
|
213
323
|
.chat-markdown :not(pre) > code {
|
|
214
|
-
padding: 0.1rem 0.
|
|
215
|
-
border-radius: 0.
|
|
216
|
-
background:
|
|
324
|
+
padding: 0.1rem 0.35rem;
|
|
325
|
+
border-radius: 0.4rem;
|
|
326
|
+
background: var(--md-inline-code-bg);
|
|
327
|
+
color: var(--md-inline-code-color);
|
|
328
|
+
border: 1px solid var(--md-border);
|
|
329
|
+
font-weight: 520;
|
|
330
|
+
}
|
|
331
|
+
|
|
332
|
+
.chat-codeblock {
|
|
333
|
+
margin: 0.2rem 0 0.1rem;
|
|
334
|
+
border: 1px solid var(--md-code-toolbar-border);
|
|
335
|
+
border-radius: 0.78rem;
|
|
336
|
+
overflow: hidden;
|
|
337
|
+
background: var(--md-code-surface);
|
|
338
|
+
}
|
|
339
|
+
|
|
340
|
+
.chat-codeblock-toolbar {
|
|
341
|
+
display: flex;
|
|
342
|
+
align-items: center;
|
|
343
|
+
justify-content: space-between;
|
|
344
|
+
gap: 0.5rem;
|
|
345
|
+
padding: 0.43rem 0.58rem;
|
|
346
|
+
background: var(--md-code-toolbar-bg);
|
|
347
|
+
border-bottom: 1px solid var(--md-code-toolbar-border);
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
.chat-codeblock-language {
|
|
351
|
+
font-size: 0.68rem;
|
|
352
|
+
font-weight: 700;
|
|
353
|
+
text-transform: uppercase;
|
|
354
|
+
letter-spacing: 0.06em;
|
|
355
|
+
color: var(--md-code-text);
|
|
356
|
+
opacity: 0.8;
|
|
357
|
+
}
|
|
358
|
+
|
|
359
|
+
.chat-codeblock-copy {
|
|
360
|
+
display: inline-flex;
|
|
361
|
+
align-items: center;
|
|
362
|
+
gap: 0.3rem;
|
|
363
|
+
font-size: 0.7rem;
|
|
364
|
+
font-weight: 600;
|
|
365
|
+
color: var(--md-code-text);
|
|
366
|
+
border: 1px solid var(--md-code-toolbar-border);
|
|
367
|
+
border-radius: 0.48rem;
|
|
368
|
+
padding: 0.18rem 0.36rem;
|
|
369
|
+
background: transparent;
|
|
370
|
+
cursor: pointer;
|
|
371
|
+
transition: background-color 0.15s ease, border-color 0.15s ease;
|
|
372
|
+
}
|
|
373
|
+
|
|
374
|
+
.chat-codeblock-copy:hover {
|
|
375
|
+
background: rgba(148, 163, 184, 0.2);
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
.chat-codeblock pre {
|
|
379
|
+
margin: 0;
|
|
380
|
+
padding: 0.75rem 0.82rem 0.8rem;
|
|
381
|
+
overflow-x: auto;
|
|
382
|
+
background: transparent;
|
|
383
|
+
}
|
|
384
|
+
|
|
385
|
+
.chat-codeblock code {
|
|
386
|
+
display: block;
|
|
387
|
+
min-width: max-content;
|
|
388
|
+
white-space: pre;
|
|
389
|
+
line-height: 1.58;
|
|
390
|
+
color: var(--md-code-text);
|
|
217
391
|
}
|
|
218
392
|
|
|
219
|
-
.chat-
|
|
393
|
+
.chat-table-wrap {
|
|
394
|
+
margin: 0.15rem 0;
|
|
395
|
+
border: 1px solid var(--md-border);
|
|
396
|
+
border-radius: 0.72rem;
|
|
220
397
|
overflow-x: auto;
|
|
221
|
-
border-radius: 0.65rem;
|
|
222
|
-
padding: 0.65rem 0.75rem;
|
|
223
|
-
background: rgba(15, 23, 42, 0.9);
|
|
224
|
-
color: #e2e8f0;
|
|
225
398
|
}
|
|
226
399
|
|
|
227
400
|
.chat-markdown table {
|
|
228
401
|
width: 100%;
|
|
229
|
-
|
|
230
|
-
|
|
402
|
+
min-width: 420px;
|
|
403
|
+
border-collapse: separate;
|
|
404
|
+
border-spacing: 0;
|
|
405
|
+
font-size: 0.82rem;
|
|
406
|
+
}
|
|
407
|
+
|
|
408
|
+
.chat-markdown thead {
|
|
409
|
+
background: var(--md-table-head-bg);
|
|
231
410
|
}
|
|
232
411
|
|
|
233
412
|
.chat-markdown th,
|
|
234
413
|
.chat-markdown td {
|
|
235
|
-
|
|
236
|
-
|
|
414
|
+
padding: 0.45rem 0.58rem;
|
|
415
|
+
border-bottom: 1px solid var(--md-border);
|
|
416
|
+
text-align: left;
|
|
417
|
+
vertical-align: top;
|
|
237
418
|
}
|
|
238
419
|
|
|
239
|
-
.chat-markdown
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
color: rgba(30, 41, 59, 0.85);
|
|
420
|
+
.chat-markdown th + th,
|
|
421
|
+
.chat-markdown td + td {
|
|
422
|
+
border-left: 1px solid var(--md-border);
|
|
243
423
|
}
|
|
244
424
|
|
|
245
|
-
.chat-markdown-
|
|
246
|
-
|
|
247
|
-
text-decoration: underline;
|
|
425
|
+
.chat-markdown tbody tr:last-child td {
|
|
426
|
+
border-bottom: none;
|
|
248
427
|
}
|
|
249
428
|
|
|
250
|
-
.chat-markdown
|
|
251
|
-
|
|
252
|
-
|
|
429
|
+
.chat-markdown th {
|
|
430
|
+
font-weight: 650;
|
|
431
|
+
}
|
|
432
|
+
|
|
433
|
+
.chat-markdown strong {
|
|
434
|
+
font-weight: 650;
|
|
435
|
+
}
|
|
436
|
+
|
|
437
|
+
.chat-markdown img {
|
|
438
|
+
max-width: 100%;
|
|
439
|
+
border-radius: 0.75rem;
|
|
440
|
+
border: 1px solid var(--md-border);
|
|
441
|
+
}
|
|
442
|
+
|
|
443
|
+
.chat-markdown blockquote {
|
|
444
|
+
margin: 0.2rem 0;
|
|
445
|
+
border-left: 3px solid var(--md-blockquote-border);
|
|
446
|
+
border-radius: 0 0.55rem 0.55rem 0;
|
|
447
|
+
padding: 0.45rem 0.72rem;
|
|
448
|
+
background: var(--md-blockquote-bg);
|
|
449
|
+
color: var(--md-muted);
|
|
253
450
|
}
|
package/src/lib/i18n.ts
CHANGED
|
@@ -525,6 +525,8 @@ export const LABELS: Record<string, { zh: string; en: string }> = {
|
|
|
525
525
|
chatToolOutput: { zh: '查看输出', en: 'View Output' },
|
|
526
526
|
chatToolNoOutput: { zh: '无输出(执行完成)', en: 'No output (completed)' },
|
|
527
527
|
chatReasoning: { zh: '查看推理内容', en: 'Show reasoning' },
|
|
528
|
+
chatCodeCopy: { zh: '复制代码', en: 'Copy' },
|
|
529
|
+
chatCodeCopied: { zh: '已复制', en: 'Copied' },
|
|
528
530
|
|
|
529
531
|
// Chat Sidebar (unified)
|
|
530
532
|
chatSidebarNewTask: { zh: '新任务', en: 'New Task' },
|