@serjm/deepseek-code 0.3.1 → 0.4.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.
- package/CHANGELOG.md +20 -0
- package/README.md +12 -0
- package/README.ru.md +12 -0
- package/dist/api/index.d.ts +4 -4
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +17 -5
- package/dist/api/index.js.map +1 -1
- package/dist/cli/headless.d.ts.map +1 -1
- package/dist/cli/headless.js +2 -0
- package/dist/cli/headless.js.map +1 -1
- package/dist/commands/index.d.ts +7 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +188 -79
- package/dist/commands/index.js.map +1 -1
- package/dist/config/defaults.d.ts +2 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +4 -2
- package/dist/config/defaults.js.map +1 -1
- package/dist/core/agent-loop.d.ts +27 -1
- package/dist/core/agent-loop.d.ts.map +1 -1
- package/dist/core/agent-loop.js +165 -10
- package/dist/core/agent-loop.js.map +1 -1
- package/dist/core/i18n.d.ts +2 -0
- package/dist/core/i18n.d.ts.map +1 -1
- package/dist/core/i18n.js +15 -9
- package/dist/core/i18n.js.map +1 -1
- package/dist/core/metrics.d.ts +53 -0
- package/dist/core/metrics.d.ts.map +1 -1
- package/dist/core/metrics.js +205 -6
- package/dist/core/metrics.js.map +1 -1
- package/dist/tools/chrome.js +53 -53
- package/dist/tools/edit.d.ts.map +1 -1
- package/dist/tools/edit.js +30 -8
- package/dist/tools/edit.js.map +1 -1
- package/dist/tools/types.d.ts +28 -0
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/tools/types.js +10 -0
- package/dist/tools/types.js.map +1 -1
- package/dist/tools/write.d.ts.map +1 -1
- package/dist/tools/write.js +13 -1
- package/dist/tools/write.js.map +1 -1
- package/dist/ui/activity-cards.js +9 -9
- package/dist/ui/activity-cards.js.map +1 -1
- package/dist/ui/app.d.ts.map +1 -1
- package/dist/ui/app.js +59 -14
- package/dist/ui/app.js.map +1 -1
- package/dist/ui/chat-view.js +2 -2
- package/dist/ui/chat-view.js.map +1 -1
- package/dist/ui/input-bar.d.ts.map +1 -1
- package/dist/ui/input-bar.js +268 -70
- package/dist/ui/input-bar.js.map +1 -1
- package/dist/ui/markdown-view.d.ts +9 -0
- package/dist/ui/markdown-view.d.ts.map +1 -1
- package/dist/ui/markdown-view.js +70 -34
- package/dist/ui/markdown-view.js.map +1 -1
- package/dist/ui/reasoning-view.js +1 -1
- package/dist/ui/reasoning-view.js.map +1 -1
- package/dist/ui/results-panel.js +1 -1
- package/dist/ui/results-panel.js.map +1 -1
- package/dist/ui/setup-wizard.js +5 -5
- package/dist/ui/setup-wizard.js.map +1 -1
- package/dist/ui/status-bar.js +1 -1
- package/dist/ui/status-bar.js.map +1 -1
- package/dist/ui/tool-activity-card.js +9 -9
- package/dist/ui/tool-activity-card.js.map +1 -1
- package/dist/ui/tool-call-view.js +7 -7
- package/dist/ui/tool-call-view.js.map +1 -1
- package/package.json +2 -1
package/dist/tools/types.d.ts
CHANGED
|
@@ -14,12 +14,40 @@ export interface ToolResult {
|
|
|
14
14
|
success: boolean;
|
|
15
15
|
output: string;
|
|
16
16
|
error?: string;
|
|
17
|
+
/** Whether the tool actually changed something (e.g., file written/modified) */
|
|
18
|
+
changed?: boolean;
|
|
19
|
+
/** Whether the change was verified by re-reading from disk */
|
|
20
|
+
verified?: boolean;
|
|
21
|
+
/** List of files that were changed */
|
|
22
|
+
changedFiles?: string[];
|
|
17
23
|
}
|
|
18
24
|
export type ApprovalRequirement = 'always' | 'auto' | 'never';
|
|
25
|
+
/**
|
|
26
|
+
* Budget limits for a task session.
|
|
27
|
+
* All values are optional — unset means unlimited.
|
|
28
|
+
* 0 is treated as "no limit" (falsy check).
|
|
29
|
+
*/
|
|
30
|
+
export interface TaskBudget {
|
|
31
|
+
/** Maximum total tool calls across all iterations */
|
|
32
|
+
maxToolCalls?: number;
|
|
33
|
+
/** Maximum API calls (round trips to model) */
|
|
34
|
+
maxApiCalls?: number;
|
|
35
|
+
/** Maximum iterations (overrides AgentLoopOptions.maxIterations if set) */
|
|
36
|
+
maxIterations?: number;
|
|
37
|
+
/** Maximum calls to read_file tool */
|
|
38
|
+
maxReadFiles?: number;
|
|
39
|
+
/** Maximum calls to shell/bash/run_shell_command tools */
|
|
40
|
+
maxShellCommands?: number;
|
|
41
|
+
}
|
|
19
42
|
export interface ToolDefinition {
|
|
20
43
|
tool: Tool;
|
|
21
44
|
approval: ApprovalRequirement;
|
|
22
45
|
}
|
|
46
|
+
/**
|
|
47
|
+
* Preset budget for small/audit tasks (headless mode).
|
|
48
|
+
* Limits tool calls, API calls, read_file, and shell commands.
|
|
49
|
+
*/
|
|
50
|
+
export declare const AUDIT_BUDGET_PRESET: TaskBudget;
|
|
23
51
|
/**
|
|
24
52
|
* OpenAI-compatible tool format for DeepSeek API function calling.
|
|
25
53
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC3D,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,aAAa,EAAE,CAAC;IAC5B,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CAC7D;AAED,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC3D,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gFAAgF;IAChF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,8DAA8D;IAC9D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,sCAAsC;IACtC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,MAAM,mBAAmB,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAA;AAE7D;;;;GAIG;AACH,MAAM,WAAW,UAAU;IACzB,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,+CAA+C;IAC/C,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,2EAA2E;IAC3E,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,sCAAsC;IACtC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,0DAA0D;IAC1D,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,IAAI,CAAC;IACX,QAAQ,EAAE,mBAAmB,CAAC;CAC/B;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB,EAAE,UAKjC,CAAA;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,UAAU,CAAC;IACjB,QAAQ,EAAE;QACR,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ,CAAC;YACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACpC,QAAQ,EAAE,MAAM,EAAE,CAAC;SACpB,CAAC;KACH,CAAC;CACH;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAE,WAAW,EAAE,cAAc,EAAE,GAAG,UAAU,EAAE,CA4B1E;AAKD;;;GAGG;AACH,wBAAgB,YAAY,CAC1B,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC7B,MAAM,EAAE,aAAa,EAAE,GACtB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAyDzB"}
|
package/dist/tools/types.js
CHANGED
|
@@ -1,3 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Preset budget for small/audit tasks (headless mode).
|
|
3
|
+
* Limits tool calls, API calls, read_file, and shell commands.
|
|
4
|
+
*/
|
|
5
|
+
export const AUDIT_BUDGET_PRESET = {
|
|
6
|
+
maxToolCalls: 12,
|
|
7
|
+
maxApiCalls: 6,
|
|
8
|
+
maxReadFiles: 5,
|
|
9
|
+
maxShellCommands: 4,
|
|
10
|
+
};
|
|
1
11
|
/**
|
|
2
12
|
* Convert our internal ToolDefinition[] to OpenAI-compatible tool format.
|
|
3
13
|
*/
|
package/dist/tools/types.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../../src/tools/write.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,EAAmB,MAAM,YAAY,CAAA;AAKvD,eAAO,MAAM,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"write.d.ts","sourceRoot":"","sources":["../../src/tools/write.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,IAAI,EAAmB,MAAM,YAAY,CAAA;AAKvD,eAAO,MAAM,SAAS,EAAE,IA4DvB,CAAA"}
|
package/dist/tools/write.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { writeFile, mkdir } from 'node:fs/promises';
|
|
1
|
+
import { writeFile, readFile, mkdir } from 'node:fs/promises';
|
|
2
2
|
import { dirname } from 'node:path';
|
|
3
3
|
import { assertPathInWorkspace } from './path-safety.js';
|
|
4
4
|
const MAX_FILE_SIZE = 1_048_576; // 1MB limit
|
|
@@ -28,15 +28,24 @@ export const writeTool = {
|
|
|
28
28
|
success: false,
|
|
29
29
|
output: '',
|
|
30
30
|
error: `File too large: ${content.length} bytes exceeds the maximum of ${MAX_FILE_SIZE} bytes (1MB). Use run_shell_command to write large files.`,
|
|
31
|
+
changed: false,
|
|
32
|
+
verified: false,
|
|
33
|
+
changedFiles: [],
|
|
31
34
|
};
|
|
32
35
|
}
|
|
33
36
|
try {
|
|
34
37
|
assertPathInWorkspace(filePath);
|
|
35
38
|
await mkdir(dirname(filePath), { recursive: true });
|
|
36
39
|
await writeFile(filePath, content, 'utf-8');
|
|
40
|
+
// Verify by re-reading the file
|
|
41
|
+
const writtenContent = await readFile(filePath, 'utf-8');
|
|
42
|
+
const verified = writtenContent === content;
|
|
37
43
|
return {
|
|
38
44
|
success: true,
|
|
39
45
|
output: `Successfully wrote ${content.length} bytes to ${filePath}`,
|
|
46
|
+
changed: true,
|
|
47
|
+
verified,
|
|
48
|
+
changedFiles: [filePath],
|
|
40
49
|
};
|
|
41
50
|
}
|
|
42
51
|
catch (err) {
|
|
@@ -44,6 +53,9 @@ export const writeTool = {
|
|
|
44
53
|
success: false,
|
|
45
54
|
output: '',
|
|
46
55
|
error: `Failed to write file: ${err.message}`,
|
|
56
|
+
changed: false,
|
|
57
|
+
verified: false,
|
|
58
|
+
changedFiles: [],
|
|
47
59
|
};
|
|
48
60
|
}
|
|
49
61
|
},
|
package/dist/tools/write.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"write.js","sourceRoot":"","sources":["../../src/tools/write.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"write.js","sourceRoot":"","sources":["../../src/tools/write.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AAEnC,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAA;AAExD,MAAM,aAAa,GAAG,SAAS,CAAA,CAAC,YAAY;AAE5C,MAAM,CAAC,MAAM,SAAS,GAAS;IAC7B,IAAI,EAAE,YAAY;IAClB,WAAW,EAAE,iFAAiF;IAC9F,UAAU,EAAE;QACV;YACE,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,wCAAwC;YACrD,QAAQ,EAAE,IAAI;SACf;QACD;YACE,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,kCAAkC;YAC/C,QAAQ,EAAE,IAAI;SACf;KACF;IACD,KAAK,CAAC,OAAO,CAAE,IAA6B;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAmB,CAAA;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAiB,CAAA;QAEtC,mBAAmB;QACnB,IAAI,OAAO,CAAC,MAAM,GAAG,aAAa,EAAE,CAAC;YACnC,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,mBAAmB,OAAO,CAAC,MAAM,iCAAiC,aAAa,2DAA2D;gBACjJ,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,KAAK;gBACf,YAAY,EAAE,EAAE;aACjB,CAAA;QACH,CAAC;QAED,IAAI,CAAC;YACH,qBAAqB,CAAC,QAAQ,CAAC,CAAA;YAC/B,MAAM,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;YACnD,MAAM,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;YAE3C,gCAAgC;YAChC,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YACxD,MAAM,QAAQ,GAAG,cAAc,KAAK,OAAO,CAAA;YAE3C,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,sBAAsB,OAAO,CAAC,MAAM,aAAa,QAAQ,EAAE;gBACnE,OAAO,EAAE,IAAI;gBACb,QAAQ;gBACR,YAAY,EAAE,CAAC,QAAQ,CAAC;aACzB,CAAA;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,EAAE;gBACV,KAAK,EAAE,yBAA0B,GAAa,CAAC,OAAO,EAAE;gBACxD,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE,KAAK;gBACf,YAAY,EAAE,EAAE;aACjB,CAAA;QACH,CAAC;IACH,CAAC;CACF,CAAA"}
|
|
@@ -21,10 +21,10 @@ function ShellCard({ data }) {
|
|
|
21
21
|
? colors.error
|
|
22
22
|
: colors.info;
|
|
23
23
|
const statusIcon = data.status === 'success'
|
|
24
|
-
? '
|
|
24
|
+
? '[ok]'
|
|
25
25
|
: data.status === 'failed'
|
|
26
|
-
? '
|
|
27
|
-
: '
|
|
26
|
+
? '[err]'
|
|
27
|
+
: '[run]';
|
|
28
28
|
return (_jsx(Box, { flexDirection: 'column', marginLeft: 2, marginBottom: 1, children: _jsx(Box, { borderStyle: 'round', borderColor: colors.border, paddingX: 1, paddingY: 0, children: _jsxs(Box, { flexDirection: 'column', children: [_jsx(Box, { children: _jsx(Text, { bold: true, color: colors.info, children: "Shell" }) }), _jsx(Box, { children: _jsx(Text, { dimColor: true, children: data.command }) }), data.cwd && (_jsx(Box, { children: _jsxs(Text, { dimColor: true, children: ["\u043F\u0430\u043F\u043A\u0430: ", data.cwd] }) })), _jsxs(Box, { children: [_jsxs(Text, { color: statusColor, children: [statusIcon, " \u0421\u0442\u0430\u0442\u0443\u0441: ", data.status === 'success' ? 'успешно' : data.status === 'failed' ? 'ошибка' : 'выполняется'] }), data.durationMs !== undefined && (_jsxs(Text, { dimColor: true, children: [" \u00B7 ", formatDuration(data.durationMs)] }))] }), data.output && data.output.length > 0 && (_jsx(Box, { children: _jsxs(Text, { color: colors.textMuted, children: [data.output.slice(0, 200), data.output.length > 200 ? '…' : ''] }) })), data.error && (_jsx(Box, { children: _jsxs(Text, { color: colors.error, children: ["\u041E\u0448\u0438\u0431\u043A\u0430: ", data.error.slice(0, 200)] }) }))] }) }) }));
|
|
29
29
|
}
|
|
30
30
|
// ─── File Card ───────────────────────────────────────────────────────────────
|
|
@@ -36,10 +36,10 @@ function FileCard({ data }) {
|
|
|
36
36
|
? colors.error
|
|
37
37
|
: colors.info;
|
|
38
38
|
const statusIcon = data.status === 'success'
|
|
39
|
-
? '
|
|
39
|
+
? '[ok]'
|
|
40
40
|
: data.status === 'failed'
|
|
41
|
-
? '
|
|
42
|
-
: '
|
|
41
|
+
? '[err]'
|
|
42
|
+
: '[run]';
|
|
43
43
|
const toolLabel = data.toolName === 'read_file'
|
|
44
44
|
? 'ReadFile'
|
|
45
45
|
: data.toolName === 'write_file'
|
|
@@ -56,17 +56,17 @@ function FileCard({ data }) {
|
|
|
56
56
|
// ─── Error Card ──────────────────────────────────────────────────────────────
|
|
57
57
|
function ErrorCard({ data }) {
|
|
58
58
|
const colors = themeManager.getColors();
|
|
59
|
-
return (_jsx(Box, { flexDirection: 'column', marginLeft: 2, marginBottom: 1, children: _jsx(Box, { borderStyle: 'round', borderColor: colors.error, paddingX: 1, paddingY: 0, children: _jsxs(Box, { flexDirection: 'column', children: [_jsx(Box, { children: _jsx(Text, { bold: true, color: colors.error, children: "
|
|
59
|
+
return (_jsx(Box, { flexDirection: 'column', marginLeft: 2, marginBottom: 1, children: _jsx(Box, { borderStyle: 'round', borderColor: colors.error, paddingX: 1, paddingY: 0, children: _jsxs(Box, { flexDirection: 'column', children: [_jsx(Box, { children: _jsx(Text, { bold: true, color: colors.error, children: "[err] \u041E\u0448\u0438\u0431\u043A\u0430" }) }), _jsx(Box, { children: _jsxs(Text, { color: colors.error, children: ["\u0418\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442: ", data.toolName] }) }), data.path && (_jsx(Box, { children: _jsxs(Text, { color: colors.error, children: ["\u0424\u0430\u0439\u043B: ", data.path] }) })), _jsx(Box, { children: _jsxs(Text, { color: colors.error, children: ["\u041F\u0440\u0438\u0447\u0438\u043D\u0430: ", data.reason] }) }), data.suggestion && (_jsx(Box, { children: _jsxs(Text, { color: colors.warning, children: ["\u0427\u0442\u043E \u0441\u0434\u0435\u043B\u0430\u0442\u044C: ", data.suggestion] }) }))] }) }) }));
|
|
60
60
|
}
|
|
61
61
|
// ─── Unsupported Card ────────────────────────────────────────────────────────
|
|
62
62
|
function UnsupportedCard({ data }) {
|
|
63
63
|
const colors = themeManager.getColors();
|
|
64
|
-
return (_jsx(Box, { flexDirection: 'column', marginLeft: 2, marginBottom: 1, children: _jsx(Box, { borderStyle: 'round', borderColor: colors.warning, paddingX: 1, paddingY: 0, children: _jsxs(Box, { flexDirection: 'column', children: [_jsx(Box, { children: _jsxs(Text, { bold: true, color: colors.warning, children: ["
|
|
64
|
+
return (_jsx(Box, { flexDirection: 'column', marginLeft: 2, marginBottom: 1, children: _jsx(Box, { borderStyle: 'round', borderColor: colors.warning, paddingX: 1, paddingY: 0, children: _jsxs(Box, { flexDirection: 'column', children: [_jsx(Box, { children: _jsxs(Text, { bold: true, color: colors.warning, children: ["[warn] ", data.feature, " \u043D\u0435\u0434\u043E\u0441\u0442\u0443\u043F\u0435\u043D"] }) }), _jsx(Box, { children: _jsxs(Text, { color: colors.textMuted, children: ["\u041E\u0421: ", data.os] }) }), _jsx(Box, { children: _jsxs(Text, { color: colors.textMuted, children: ["\u041F\u0440\u0438\u0447\u0438\u043D\u0430: ", data.reason] }) }), _jsx(Box, { children: _jsxs(Text, { color: colors.info, children: ["\u0427\u0442\u043E \u0441\u0434\u0435\u043B\u0430\u0442\u044C: ", data.action] }) })] }) }) }));
|
|
65
65
|
}
|
|
66
66
|
// ─── Tasks Card ──────────────────────────────────────────────────────────────
|
|
67
67
|
function TasksCard({ data }) {
|
|
68
68
|
const colors = themeManager.getColors();
|
|
69
|
-
return (_jsx(Box, { flexDirection: 'column', marginLeft: 2, marginBottom: 1, children: _jsx(Box, { borderStyle: 'round', borderColor: colors.border, paddingX: 1, paddingY: 0, children: _jsxs(Box, { flexDirection: 'column', children: [_jsx(Box, { children: _jsx(Text, { bold: true, color: colors.info, children: "
|
|
69
|
+
return (_jsx(Box, { flexDirection: 'column', marginLeft: 2, marginBottom: 1, children: _jsx(Box, { borderStyle: 'round', borderColor: colors.border, paddingX: 1, paddingY: 0, children: _jsxs(Box, { flexDirection: 'column', children: [_jsx(Box, { children: _jsx(Text, { bold: true, color: colors.info, children: "[plan] \u041F\u043B\u0430\u043D" }) }), data.current && (_jsx(Box, { children: _jsxs(Text, { color: colors.warning, children: ["[run] \u0422\u0435\u043A\u0443\u0449\u0435\u0435: ", data.current] }) })), data.completed.length > 0 && (_jsxs(Box, { flexDirection: 'column', children: [_jsx(Text, { color: colors.success, children: "[ok] \u0417\u0430\u0432\u0435\u0440\u0448\u0435\u043D\u043E:" }), data.completed.map((item, i) => (_jsx(Box, { marginLeft: 1, children: _jsxs(Text, { color: colors.success, children: ["- ", item] }) }, i)))] })), data.next.length > 0 && (_jsxs(Box, { flexDirection: 'column', children: [_jsx(Text, { color: colors.textMuted, children: "\u2B1C \u0414\u0430\u043B\u0435\u0435:" }), data.next.map((item, i) => (_jsx(Box, { marginLeft: 1, children: _jsxs(Text, { color: colors.textMuted, children: ["- ", item] }) }, i)))] })), data.errors && data.errors.length > 0 && (_jsxs(Box, { flexDirection: 'column', children: [_jsx(Text, { color: colors.error, children: "[err] \u041E\u0448\u0438\u0431\u043A\u0438:" }), data.errors.map((item, i) => (_jsx(Box, { marginLeft: 1, children: _jsxs(Text, { color: colors.error, children: ["- ", item] }) }, i)))] }))] }) }) }));
|
|
70
70
|
}
|
|
71
71
|
// ─── Router ──────────────────────────────────────────────────────────────────
|
|
72
72
|
export function ActivityCard({ data }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"activity-cards.js","sourceRoot":"","sources":["../../src/ui/activity-cards.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAA;AAE/B,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AAsDzD,gFAAgF;AAEhF,SAAS,cAAc,CAAE,CAAS,EAAE,OAAe;IACjD,MAAM,IAAI,GAAG,OAAO,EAAE,CAAA;IACtB,MAAM,WAAW,GAAG,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACvE,IAAI,WAAW,CAAC,MAAM,IAAI,OAAO;QAAE,OAAO,WAAW,CAAA;IACrD,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IAC1C,OAAO,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAA;AACtE,CAAC;AAED,gFAAgF;AAEhF,SAAS,SAAS,CAAE,EAAE,IAAI,EAA2B;IACnD,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,CAAA;IACvC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS;QAC3C,CAAC,CAAC,MAAM,CAAC,OAAO;QAChB,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ;YACxB,CAAC,CAAC,MAAM,CAAC,KAAK;YACd,CAAC,CAAC,MAAM,CAAC,IAAI,CAAA;IACjB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS;QAC1C,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ;YACxB,CAAC,CAAC,GAAG;YACL,CAAC,CAAC,IAAI,CAAA;IAEV,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,YACxD,KAAC,GAAG,IAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,YAC3E,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,GAAG,cACF,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,MAAM,CAAC,IAAI,sBAAc,GACvC,EACN,KAAC,GAAG,cACF,KAAC,IAAI,IAAC,QAAQ,kBAAE,IAAI,CAAC,OAAO,GAAQ,GAChC,EACL,IAAI,CAAC,GAAG,IAAI,CACX,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,QAAQ,uDAAS,IAAI,CAAC,GAAG,IAAQ,GACnC,CACP,EACD,MAAC,GAAG,eACF,MAAC,IAAI,IAAC,KAAK,EAAE,WAAW,aACrB,UAAU,6CAAW,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,IAC5G,EACN,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,CAChC,MAAC,IAAI,IAAC,QAAQ,+BAAK,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,IAAQ,CAC3D,IACG,EACL,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CACxC,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,aAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAQ,GAClG,CACP,EACA,IAAI,CAAC,KAAK,IAAI,CACb,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,uDAAW,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,IAAQ,GAChE,CACP,IACG,GACF,GACF,CACP,CAAA;AACH,CAAC;AAED,gFAAgF;AAEhF,SAAS,QAAQ,CAAE,EAAE,IAAI,EAA0B;IACjD,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,CAAA;IACvC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS;QAC3C,CAAC,CAAC,MAAM,CAAC,OAAO;QAChB,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ;YACxB,CAAC,CAAC,MAAM,CAAC,KAAK;YACd,CAAC,CAAC,MAAM,CAAC,IAAI,CAAA;IACjB,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,KAAK,SAAS;QAC1C,CAAC,CAAC,GAAG;QACL,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ;YACxB,CAAC,CAAC,GAAG;YACL,CAAC,CAAC,IAAI,CAAA;IAEV,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,KAAK,WAAW;QAC7C,CAAC,CAAC,UAAU;QACZ,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,YAAY;YAC9B,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,MAAM;gBACxB,CAAC,CAAC,MAAM;gBACR,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,MAAM;oBACxB,CAAC,CAAC,MAAM;oBACR,CAAC,CAAC,IAAI,CAAC,QAAQ,KAAK,aAAa;wBAC/B,CAAC,CAAC,MAAM;wBACR,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAA;IAEzB,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,YACxD,KAAC,GAAG,IAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,YAC3E,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,GAAG,cACF,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,MAAM,CAAC,IAAI,YAAG,SAAS,GAAQ,GAC7C,EACN,KAAC,GAAG,cACF,KAAC,IAAI,IAAC,QAAQ,kBAAE,cAAc,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,GAAG,EAAE,CAAC,GAAQ,GAClF,EACN,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,WAAW,aACrB,UAAU,6CAAW,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,IAC5G,GACH,EACL,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CACxC,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,aAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAQ,GAClG,CACP,EACA,IAAI,CAAC,KAAK,IAAI,CACb,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,6DACb,IAAI,CAAC,KAAK,IACf,GACH,CACP,IACG,GACF,GACF,CACP,CAAA;AACH,CAAC;AAED,gFAAgF;AAEhF,SAAS,SAAS,CAAE,EAAE,IAAI,EAA2B;IACnD,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,CAAA;IAEvC,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,YACxD,KAAC,GAAG,IAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAE,MAAM,CAAC,KAAK,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,YAC1E,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,GAAG,cACF,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,MAAM,CAAC,KAAK,4DAAiB,GAC3C,EACN,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,+EAAe,IAAI,CAAC,QAAQ,IAAQ,GACzD,EACL,IAAI,CAAC,IAAI,IAAI,CACZ,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,2CAAS,IAAI,CAAC,IAAI,IAAQ,GAC/C,CACP,EACD,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,6DAAY,IAAI,CAAC,MAAM,IAAQ,GACpD,EACL,IAAI,CAAC,UAAU,IAAI,CAClB,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,gFAAgB,IAAI,CAAC,UAAU,IAAQ,GAC9D,CACP,IACG,GACF,GACF,CACP,CAAA;AACH,CAAC;AAED,gFAAgF;AAEhF,SAAS,eAAe,CAAE,EAAE,IAAI,EAAiC;IAC/D,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,CAAA;IAEvC,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,YACxD,KAAC,GAAG,IAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAE,MAAM,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,YAC5E,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,MAAM,CAAC,OAAO,8BAAM,IAAI,CAAC,OAAO,qEAAmB,GACjE,EACN,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,+BAAO,IAAI,CAAC,EAAE,IAAQ,GAC/C,EACN,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,6DAAY,IAAI,CAAC,MAAM,IAAQ,GACxD,EACN,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,gFAAgB,IAAI,CAAC,MAAM,IAAQ,GACvD,IACF,GACF,GACF,CACP,CAAA;AACH,CAAC;AAED,gFAAgF;AAEhF,SAAS,SAAS,CAAE,EAAE,IAAI,EAA2B;IACnD,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,EAAE,CAAA;IAEvC,OAAO,CACL,KAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,EAAC,UAAU,EAAE,CAAC,EAAE,YAAY,EAAE,CAAC,YACxD,KAAC,GAAG,IAAC,WAAW,EAAC,OAAO,EAAC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,YAC3E,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,GAAG,cACF,KAAC,IAAI,IAAC,IAAI,QAAC,KAAK,EAAE,MAAM,CAAC,IAAI,sDAAgB,GACzC,EACL,IAAI,CAAC,OAAO,IAAI,CACf,KAAC,GAAG,cACF,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,0EAAe,IAAI,CAAC,OAAO,IAAQ,GAC1D,CACP,EACA,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,CAC5B,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,+EAAqB,EAC/C,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAC/B,KAAC,GAAG,IAAS,UAAU,EAAE,CAAC,YACxB,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,wBAAK,IAAI,IAAQ,IADpC,CAAC,CAEL,CACP,CAAC,IACE,CACP,EACA,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CACvB,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,uDAAiB,EAC7C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAC1B,KAAC,GAAG,IAAS,UAAU,EAAE,CAAC,YACxB,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,wBAAK,IAAI,IAAQ,IADtC,CAAC,CAEL,CACP,CAAC,IACE,CACP,EACA,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,IAAI,CACxC,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,6DAAkB,EAC1C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC,CAC5B,KAAC,GAAG,IAAS,UAAU,EAAE,CAAC,YACxB,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,KAAK,wBAAK,IAAI,IAAQ,IADlC,CAAC,CAEL,CACP,CAAC,IACE,CACP,IACG,GACF,GACF,CACP,CAAA;AACH,CAAC;AAED,gFAAgF;AAEhF,MAAM,UAAU,YAAY,CAAE,EAAE,IAAI,EAA8B;IAChE,QAAQ,IAAI,CAAC,IAAI,EAAE,CAAC;QAClB,KAAK,OAAO;YACV,OAAO,KAAC,SAAS,IAAC,IAAI,EAAE,IAAI,GAAI,CAAA;QAClC,KAAK,MAAM;YACT,OAAO,KAAC,QAAQ,IAAC,IAAI,EAAE,IAAI,GAAI,CAAA;QACjC,KAAK,OAAO;YACV,OAAO,KAAC,SAAS,IAAC,IAAI,EAAE,IAAI,GAAI,CAAA;QAClC,KAAK,aAAa;YAChB,OAAO,KAAC,eAAe,IAAC,IAAI,EAAE,IAAI,GAAI,CAAA;QACxC,KAAK,OAAO;YACV,OAAO,KAAC,SAAS,IAAC,IAAI,EAAE,IAAI,GAAI,CAAA;QAClC;YACE,OAAO,IAAI,CAAA;IACf,CAAC;AACH,CAAC;AAED,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAE,EAAiB;IAChD,MAAM,KAAK,GAAuB,EAAE,CAAA;IAEpC,yCAAyC;IACzC,IAAI,EAAE,CAAC,MAAM,KAAK,QAAQ,IAAI,EAAE,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;QACvD,MAAM,UAAU,GAAG,CAAC,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,CAAA;QAC/F,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,SAAS,IAAI,EAAE,CAAC,SAAS,CAAC,OAAO,IAAI,EAAE,CAAC,SAAS,CAAC,IAAI,IAAI,EAAE,CAAW,CAAA;QAElG,iDAAiD;QACjD,IAAI,UAA8B,CAAA;QAClC,IAAI,EAAE,CAAC,KAAK,IAAI,kCAAkC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,UAAU,IAAI,IAAI,EAAE,CAAC;YACxF,MAAM,GAAG,GAAI,IAAe,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAA;YAC7C,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;gBACjC,MAAM,MAAM,GAAG,GAAG,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;gBACzC,MAAM,OAAO,GAAI,IAAe,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,IAAI,MAAM,EAAE,CAAC,CAAA;gBAChF,UAAU,GAAG,uBAAuB,OAAO,EAAE,CAAA;YAC/C,CAAC;QACH,CAAC;QAED,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,OAAO;YACb,QAAQ,EAAE,EAAE,CAAC,IAAI;YACjB,IAAI,EAAE,IAAI,IAAI,SAAS;YACvB,MAAM,EAAE,EAAE,CAAC,KAAK,IAAI,eAAe;YACnC,UAAU;SACX,CAAC,CAAA;QACF,OAAO,KAAK,CAAA;IACd,CAAC;IAED,mCAAmC;IACnC,IAAI,EAAE,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;QACpC,MAAM,OAAO,GAAI,EAAE,CAAC,SAAS,CAAC,OAAkB,IAAI,EAAE,CAAA;QACtD,MAAM,GAAG,GAAG,EAAE,CAAC,SAAS,CAAC,GAAyB,CAAA;QAClD,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,OAAO;YACb,OAAO;YACP,GAAG;YACH,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,SAAS;gBAC7B,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,EAAE,CAAC,MAAM,KAAK,WAAW;oBACzB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,QAAQ;YACd,UAAU,EAAE,EAAE,CAAC,UAAU;YACzB,MAAM,EAAE,EAAE,CAAC,MAAM;YACjB,KAAK,EAAE,EAAE,CAAC,KAAK;SAChB,CAAC,CAAA;QACF,OAAO,KAAK,CAAA;IACd,CAAC;IAED,8BAA8B;IAC9B,MAAM,SAAS,GAAG,CAAC,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,CAAC,CAAA;IAC5E,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,SAAS,IAAI,EAAE,CAAC,SAAS,CAAC,OAAO,IAAI,EAAE,CAAW,CAAA;QAC7E,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,MAAM;YACZ,QAAQ,EAAE,EAAE,CAAC,IAAI;YACjB,IAAI;YACJ,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,SAAS;gBAC7B,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,EAAE,CAAC,MAAM,KAAK,WAAW;oBACzB,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,QAAQ;YACd,MAAM,EAAE,EAAE,CAAC,MAAM;YACjB,KAAK,EAAE,EAAE,CAAC,KAAK;SAChB,CAAC,CAAA;QACF,OAAO,KAAK,CAAA;IACd,CAAC;IAED,kCAAkC;IAClC,KAAK,CAAC,IAAI,CAAC;QACT,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,EAAE,CAAC,IAAI;QACjB,IAAI,EAAE,EAAE;QACR,MAAM,EAAE,EAAE,CAAC,MAAM,KAAK,SAAS;YAC7B,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,EAAE,CAAC,MAAM,KAAK,WAAW;gBACzB,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,QAAQ;QACd,MAAM,EAAE,EAAE,CAAC,MAAM;QACjB,KAAK,EAAE,EAAE,CAAC,KAAK;KAChB,CAAC,CAAA;IAEF,OAAO,KAAK,CAAA;AACd,CAAC;AAED,gFAAgF;AAEhF,MAAM,UAAU,yBAAyB;IACvC,MAAM,EAAE,GAAG,QAAQ,EAAE,CAAA;IACrB,OAAO;QACL,IAAI,EAAE,aAAa;QACnB,OAAO,EAAE,SAAS;QAClB,EAAE;QACF,MAAM,EAAE,EAAE,KAAK,OAAO;YACpB,CAAC,CAAC,uDAAuD;YACzD,CAAC,CAAC,2BAA2B;QAC/B,MAAM,EAAE,EAAE,KAAK,OAAO;YACpB,CAAC,CAAC,oDAAoD;YACtD,CAAC,CAAC,2CAA2C;KAChD,CAAA;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"activity-cards.js","sourceRoot":"","sources":["../../src/ui/activity-cards.tsx"],"names":[],"mappings":"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"}
|
package/dist/ui/app.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/ui/app.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAgB,MAAM,uBAAuB,CAAA;AAGzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../../src/ui/app.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAgB,MAAM,uBAAuB,CAAA;AAGzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAA;AAmB3D,UAAU,QAAQ;IAChB,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,cAAc,CAAC;CACzB;AA4BD,wBAAgB,GAAG,CAAE,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,QAAQ,2CAm/BjD"}
|
package/dist/ui/app.js
CHANGED
|
@@ -76,8 +76,10 @@ export function App({ config, options }) {
|
|
|
76
76
|
const [pendingImage, setPendingImage] = useState(null);
|
|
77
77
|
const [themePicker, setThemePicker] = useState(null);
|
|
78
78
|
const [modelPicker, setModelPicker] = useState(null);
|
|
79
|
+
const [langPicker, setLangPicker] = useState(null);
|
|
79
80
|
const [serviceNotice, setServiceNotice] = useState(null);
|
|
80
81
|
const serviceNoticeTimerRef = useRef(null);
|
|
82
|
+
const budgetRef = useRef(undefined);
|
|
81
83
|
const addServiceNotice = useCallback((text) => {
|
|
82
84
|
setServiceNotice(text);
|
|
83
85
|
if (serviceNoticeTimerRef.current)
|
|
@@ -209,6 +211,8 @@ export function App({ config, options }) {
|
|
|
209
211
|
setSetupStep,
|
|
210
212
|
addServiceNotice,
|
|
211
213
|
getMetrics: () => agentLoopRef.current?.getMetrics(),
|
|
214
|
+
getBudget: () => budgetRef.current,
|
|
215
|
+
setBudget: (budget) => { budgetRef.current = budget; },
|
|
212
216
|
onThemePicker: () => {
|
|
213
217
|
const themes = themeManager.listThemes();
|
|
214
218
|
const currentName = themeManager.theme.name;
|
|
@@ -219,6 +223,11 @@ export function App({ config, options }) {
|
|
|
219
223
|
const idx = DEEPSEEK_MODELS.findIndex(m => m.id === config.model);
|
|
220
224
|
setModelPicker({ selectedIndex: Math.max(0, idx) });
|
|
221
225
|
},
|
|
226
|
+
onLangPicker: () => {
|
|
227
|
+
const loc = i18n.listLocales();
|
|
228
|
+
const idx = loc.findIndex(l => l.code === i18n.getLocale());
|
|
229
|
+
setLangPicker({ selectedIndex: Math.max(0, idx) });
|
|
230
|
+
},
|
|
222
231
|
};
|
|
223
232
|
return executeSlashCommand(input, ctx);
|
|
224
233
|
}, [config, approvalMode, messages, addServiceNotice]);
|
|
@@ -282,6 +291,13 @@ export function App({ config, options }) {
|
|
|
282
291
|
];
|
|
283
292
|
setPendingImage(null);
|
|
284
293
|
}
|
|
294
|
+
// Show local diagnostic notice for large prompts (not sent to model)
|
|
295
|
+
const charCount = input.length;
|
|
296
|
+
const lineCount = (input.match(/\r\n|\r|\n/g) || []).length + 1;
|
|
297
|
+
if (charCount > 500 || lineCount > 5) {
|
|
298
|
+
const msg = i18n.t('promptSending').replace('{chars}', String(charCount)).replace('{lines}', String(lineCount));
|
|
299
|
+
addServiceNotice(msg);
|
|
300
|
+
}
|
|
285
301
|
const userMessage = { role: 'user', content: userContent };
|
|
286
302
|
setMessages(prev => [...prev, userMessage]);
|
|
287
303
|
setIsProcessing(true);
|
|
@@ -301,11 +317,12 @@ export function App({ config, options }) {
|
|
|
301
317
|
approvalMode,
|
|
302
318
|
cwd: process.cwd(),
|
|
303
319
|
signal: abortController.signal,
|
|
320
|
+
budget: budgetRef.current,
|
|
304
321
|
onToolCall: (tc) => {
|
|
305
322
|
const updatedCalls = [...prevToolCallsRef.current, tc];
|
|
306
323
|
prevToolCallsRef.current = updatedCalls;
|
|
307
324
|
setToolCalls(updatedCalls);
|
|
308
|
-
setStatusText(
|
|
325
|
+
setStatusText(`[tool] ${tc.name}...`);
|
|
309
326
|
// Add/update live tool activity card in chat messages
|
|
310
327
|
setMessages(prev => {
|
|
311
328
|
const idx = liveToolMessageIndexRef.current;
|
|
@@ -322,7 +339,7 @@ export function App({ config, options }) {
|
|
|
322
339
|
});
|
|
323
340
|
},
|
|
324
341
|
onToolResult: (result) => {
|
|
325
|
-
setStatusText(result.success ?
|
|
342
|
+
setStatusText(result.success ? `[ok] ${result.toolName} ${i18n.t('toolDone')}` : `[err] ${result.toolName} ${i18n.t('toolError')}`);
|
|
326
343
|
},
|
|
327
344
|
onReasoningChunk: () => { },
|
|
328
345
|
onStreamChunk: (chunk) => {
|
|
@@ -554,13 +571,13 @@ export function App({ config, options }) {
|
|
|
554
571
|
}
|
|
555
572
|
else if (cursor === 2) {
|
|
556
573
|
exemptedToolsRef.current.add(toolName);
|
|
557
|
-
addServiceNotice(
|
|
574
|
+
addServiceNotice(`[mute] ${toolName}: больше не спрашивать в этой сессии`);
|
|
558
575
|
resolve(true);
|
|
559
576
|
}
|
|
560
577
|
else {
|
|
561
578
|
setApprovalMode('turbo');
|
|
562
579
|
saveConfig({ ...config, approvalMode: 'turbo' }).catch(() => { });
|
|
563
|
-
addServiceNotice('
|
|
580
|
+
addServiceNotice('[turbo] Turbo режим включён: инструменты выполняются без подтверждения.');
|
|
564
581
|
resolve(true);
|
|
565
582
|
}
|
|
566
583
|
}
|
|
@@ -582,7 +599,7 @@ export function App({ config, options }) {
|
|
|
582
599
|
saveConfig({ ...config, approvalMode: newMode }).catch(() => { });
|
|
583
600
|
// Local warning — NOT an agent message, NOT sent to model
|
|
584
601
|
if (newMode === 'turbo') {
|
|
585
|
-
addServiceNotice('
|
|
602
|
+
addServiceNotice('[turbo] Включён режим Turbo: инструменты будут выполняться без подтверждения.');
|
|
586
603
|
}
|
|
587
604
|
else if (prev === 'turbo') {
|
|
588
605
|
addServiceNotice('Режим Turbo выключен.');
|
|
@@ -641,7 +658,7 @@ export function App({ config, options }) {
|
|
|
641
658
|
const chosen = picker.themes[picker.selectedIndex];
|
|
642
659
|
themeManager.setTheme(chosen.name);
|
|
643
660
|
setThemePicker(null);
|
|
644
|
-
addServiceNotice(
|
|
661
|
+
addServiceNotice(`[theme] Тема изменена: ${chosen.name}`);
|
|
645
662
|
return;
|
|
646
663
|
}
|
|
647
664
|
return;
|
|
@@ -666,7 +683,35 @@ export function App({ config, options }) {
|
|
|
666
683
|
saveConfig({ ...config, model: chosen.id }).catch(() => { });
|
|
667
684
|
config.model = chosen.id;
|
|
668
685
|
setModelPicker(null);
|
|
669
|
-
addServiceNotice(
|
|
686
|
+
addServiceNotice(`[model] Модель: ${chosen.label} (${chosen.id})`);
|
|
687
|
+
}
|
|
688
|
+
return;
|
|
689
|
+
}
|
|
690
|
+
return;
|
|
691
|
+
}
|
|
692
|
+
// Language picker: interactive selection
|
|
693
|
+
if (langPicker) {
|
|
694
|
+
if (key.escape) {
|
|
695
|
+
setLangPicker(null);
|
|
696
|
+
return;
|
|
697
|
+
}
|
|
698
|
+
if (key.upArrow) {
|
|
699
|
+
setLangPicker(prev => prev ? { selectedIndex: Math.max(0, prev.selectedIndex - 1) } : null);
|
|
700
|
+
return;
|
|
701
|
+
}
|
|
702
|
+
if (key.downArrow) {
|
|
703
|
+
const locales = i18n.listLocales();
|
|
704
|
+
setLangPicker(prev => prev ? { selectedIndex: Math.min(locales.length - 1, prev.selectedIndex + 1) } : null);
|
|
705
|
+
return;
|
|
706
|
+
}
|
|
707
|
+
if (key.return) {
|
|
708
|
+
const locales = i18n.listLocales();
|
|
709
|
+
const chosen = locales[langPicker.selectedIndex];
|
|
710
|
+
if (chosen) {
|
|
711
|
+
i18n.setLocale(chosen.code);
|
|
712
|
+
saveConfig({ ...config, language: chosen.code }).catch(() => { });
|
|
713
|
+
setLangPicker(null);
|
|
714
|
+
addServiceNotice(`[lang] Язык изменён: ${chosen.name} (${chosen.code})`);
|
|
670
715
|
}
|
|
671
716
|
return;
|
|
672
717
|
}
|
|
@@ -832,17 +877,17 @@ export function App({ config, options }) {
|
|
|
832
877
|
langOptions,
|
|
833
878
|
modeOptions,
|
|
834
879
|
} })
|
|
835
|
-
: (_jsxs(Box, { flexDirection: 'column', flexGrow: 1, children: [_jsx(Logo, {}), _jsx(ChatView, { messages: messages, scrollOffset: chatScrollOffset, hasNewMessages: newMessagesWhilePaused }), serviceNotice && (_jsx(Box, { marginLeft: 2, marginBottom: 1, children: _jsx(Text, { color: colors.primary, children: serviceNotice }) })), themePicker && (_jsxs(Box, { flexDirection: 'column', marginLeft: 2, marginBottom: 1, borderStyle: 'round', borderColor: colors.primary, children: [_jsx(Box, { marginLeft: 1, marginTop: 1, children: _jsx(Text, { bold: true, color: colors.primary, children: "\
|
|
836
|
-
'
|
|
837
|
-
'
|
|
838
|
-
|
|
839
|
-
'
|
|
840
|
-
].map((label, i) => (_jsx(Box, { marginLeft: 1, children: _jsxs(Text, { color: approvalCursor === i ? colors.primary : colors.text, children: [approvalCursor === i ? '
|
|
880
|
+
: (_jsxs(Box, { flexDirection: 'column', flexGrow: 1, children: [_jsx(Logo, {}), _jsx(ChatView, { messages: messages, scrollOffset: chatScrollOffset, hasNewMessages: newMessagesWhilePaused }), serviceNotice && (_jsx(Box, { marginLeft: 2, marginBottom: 1, children: _jsx(Text, { color: colors.primary, children: serviceNotice }) })), themePicker && (_jsxs(Box, { flexDirection: 'column', marginLeft: 2, marginBottom: 1, borderStyle: 'round', borderColor: colors.primary, children: [_jsx(Box, { marginLeft: 1, marginTop: 1, children: _jsx(Text, { bold: true, color: colors.primary, children: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u0442\u0435\u043C\u0443" }) }), _jsx(Box, { marginLeft: 1, marginTop: 1, flexDirection: 'column', children: themePicker.themes.map((t, i) => (_jsx(Box, { children: _jsxs(Text, { color: i === themePicker.selectedIndex ? colors.primary : colors.textMuted, children: [i === themePicker.selectedIndex ? '▸ ' : ' ', t.name, t.name === themeManager.theme.name ? ' (текущая)' : ''] }) }, t.name))) }), _jsx(Box, { marginLeft: 1, marginBottom: 1, marginTop: 1, children: _jsx(Text, { color: colors.textMuted, children: "\u2191\u2193 \u2014 \u043D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044F Enter \u2014 \u043F\u0440\u0438\u043C\u0435\u043D\u0438\u0442\u044C Esc \u2014 \u043E\u0442\u043C\u0435\u043D\u0430" }) })] })), modelPicker && (_jsxs(Box, { flexDirection: 'column', marginLeft: 2, marginBottom: 1, borderStyle: 'round', borderColor: colors.primary, children: [_jsx(Box, { marginLeft: 1, marginTop: 1, children: _jsx(Text, { bold: true, color: colors.primary, children: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u043C\u043E\u0434\u0435\u043B\u044C" }) }), _jsx(Box, { marginLeft: 1, marginTop: 1, flexDirection: 'column', children: DEEPSEEK_MODELS.map((m, i) => (_jsxs(Box, { flexDirection: 'column', children: [_jsxs(Text, { color: i === modelPicker.selectedIndex ? colors.primary : colors.textMuted, children: [i === modelPicker.selectedIndex ? '▸ ' : ' ', _jsx(Text, { bold: i === modelPicker.selectedIndex, children: m.label }), m.id === config.model ? _jsx(Text, { dimColor: true, children: " (\u0442\u0435\u043A\u0443\u0449\u0430\u044F)" }) : null] }), _jsxs(Text, { dimColor: true, children: [' ', m.description] })] }, m.id))) }), _jsx(Box, { marginLeft: 1, marginBottom: 1, marginTop: 1, children: _jsx(Text, { color: colors.textMuted, children: "\u2191\u2193 \u2014 \u043D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044F Enter \u2014 \u043F\u0440\u0438\u043C\u0435\u043D\u0438\u0442\u044C Esc \u2014 \u043E\u0442\u043C\u0435\u043D\u0430" }) })] })), langPicker && (_jsxs(Box, { flexDirection: 'column', marginLeft: 2, marginBottom: 1, borderStyle: 'round', borderColor: colors.primary, children: [_jsx(Box, { marginLeft: 1, marginTop: 1, children: _jsx(Text, { bold: true, color: colors.primary, children: "\u0412\u044B\u0431\u0435\u0440\u0438\u0442\u0435 \u044F\u0437\u044B\u043A / Select language / \u9009\u62E9\u8BED\u8A00" }) }), _jsx(Box, { marginLeft: 1, marginTop: 1, flexDirection: 'column', children: i18n.listLocales().map((loc, i) => (_jsx(Box, { children: _jsxs(Text, { color: i === langPicker.selectedIndex ? colors.primary : colors.textMuted, children: [i === langPicker.selectedIndex ? '▸ ' : ' ', loc.name, loc.code === i18n.getLocale() ? _jsx(Text, { dimColor: true, children: " (\u0442\u0435\u043A\u0443\u0449\u0438\u0439)" }) : null] }) }, loc.code))) }), _jsx(Box, { marginLeft: 1, marginBottom: 1, marginTop: 1, children: _jsx(Text, { color: colors.textMuted, children: "\u2191\u2193 \u2014 \u043D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044F Enter \u2014 \u043F\u0440\u0438\u043C\u0435\u043D\u0438\u0442\u044C Esc \u2014 \u043E\u0442\u043C\u0435\u043D\u0430" }) })] })), pendingApproval && (_jsxs(Box, { flexDirection: 'column', marginLeft: 2, marginBottom: 1, borderStyle: 'round', borderColor: colors.warning, children: [_jsx(Box, { children: _jsx(Text, { bold: true, color: colors.warning, children: "\u041F\u043E\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u0442\u044C \u0432\u044B\u0437\u043E\u0432 \u0438\u043D\u0441\u0442\u0440\u0443\u043C\u0435\u043D\u0442\u0430?" }) }), _jsx(Box, { marginLeft: 1, children: _jsx(Text, { bold: true, color: colors.text, children: pendingApproval.toolName }) }), _jsx(Box, { marginLeft: 1, children: _jsx(Text, { color: colors.textMuted, children: JSON.stringify(pendingApproval.args, null, 2).slice(0, 200) }) }), _jsxs(Box, { flexDirection: 'column', marginTop: 1, children: [[
|
|
881
|
+
'[ok] Подтвердить',
|
|
882
|
+
'[no] Отклонить',
|
|
883
|
+
`[mute] Не спрашивать для "${pendingApproval.toolName}"`,
|
|
884
|
+
'[turbo] Выполнять всё без вопросов',
|
|
885
|
+
].map((label, i) => (_jsx(Box, { marginLeft: 1, children: _jsxs(Text, { color: approvalCursor === i ? colors.primary : colors.text, children: [approvalCursor === i ? '> ' : ' ', label] }) }, i))), _jsx(Box, { marginLeft: 1, marginTop: 1, children: _jsx(Text, { color: colors.textMuted, children: "\u2191\u2193 \u2014 \u043D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044F Enter \u2014 \u0432\u044B\u0431\u0440\u0430\u0442\u044C Esc \u2014 \u043E\u0442\u043A\u043B\u043E\u043D\u0438\u0442\u044C" }) })] })] })), pendingClear && (_jsxs(Box, { flexDirection: 'column', marginLeft: 2, marginBottom: 1, borderStyle: 'round', borderColor: colors.warning, children: [_jsx(Box, { children: _jsx(Text, { bold: true, color: colors.warning, children: "\u041E\u0447\u0438\u0441\u0442\u0438\u0442\u044C \u0438\u0441\u0442\u043E\u0440\u0438\u044E \u0447\u0430\u0442\u0430?" }) }), _jsx(Box, { marginLeft: 1, children: _jsxs(Text, { color: colors.textMuted, children: [messages.length, " \u0441\u043E\u043E\u0431\u0449\u0435\u043D\u0438\u0439 \u0431\u0443\u0434\u0435\u0442 \u0443\u0434\u0430\u043B\u0435\u043D\u043E. \u041E\u0442\u043C\u0435\u043D\u0443 \u043D\u0435\u043B\u044C\u0437\u044F."] }) }), _jsxs(Box, { flexDirection: 'column', marginTop: 1, children: [['[ok] Да, очистить', '[no] Отмена'].map((label, i) => (_jsx(Box, { marginLeft: 1, children: _jsxs(Text, { color: clearCursor === i ? colors.primary : colors.text, children: [clearCursor === i ? '> ' : ' ', label] }) }, i))), _jsx(Box, { marginLeft: 1, marginTop: 1, children: _jsx(Text, { color: colors.textMuted, children: "\u2191\u2193 \u2014 \u043D\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044F Enter \u2014 \u0432\u044B\u0431\u0440\u0430\u0442\u044C Esc \u2014 \u043E\u0442\u043C\u0435\u043D\u0430" }) })] })] }))] })), _jsx(InputBar, { onSubmit: handleSubmit, disabled: isProcessing, onClear: handleClear, onExit: handleExit, isMasked: setupStep === 'apikey', isSetupMode: setupStep !== 'done', blockInput: setupStep === 'done' && (pendingApproval !== null || pendingClear), emptyHint: emptyInputHint, onImagePaste: (base64, mimeType) => {
|
|
841
886
|
const model = config.model ?? '';
|
|
842
887
|
if (!model.includes('vl') && !model.includes('vision')) {
|
|
843
888
|
setMessages(prev => [...prev, {
|
|
844
889
|
role: 'assistant',
|
|
845
|
-
content:
|
|
890
|
+
content: `[warn] Вставка изображения требует модель с поддержкой vision.\nТекущая модель: ${model || 'неизвестно'}\nИспользуйте модель с "vl" или "vision" в названии.`,
|
|
846
891
|
}]);
|
|
847
892
|
return;
|
|
848
893
|
}
|