tabby-ai-assistant 1.0.10 → 1.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/index.js +1 -1
  2. package/package.json +3 -3
  3. package/src/components/chat/ai-sidebar.component.scss +43 -0
  4. package/src/components/chat/ai-sidebar.component.ts +43 -1
  5. package/src/components/settings/ai-settings-tab.component.html +13 -5
  6. package/src/components/settings/ai-settings-tab.component.scss +164 -33
  7. package/src/components/settings/ai-settings-tab.component.ts +1 -0
  8. package/src/components/settings/context-settings.component.html +87 -0
  9. package/src/components/settings/context-settings.component.scss +133 -0
  10. package/src/components/settings/context-settings.component.ts +91 -0
  11. package/src/components/settings/provider-config.component.ts +12 -6
  12. package/src/i18n/translations/en-US.ts +27 -1
  13. package/src/i18n/translations/ja-JP.ts +27 -1
  14. package/src/i18n/translations/zh-CN.ts +27 -1
  15. package/src/i18n/types.ts +28 -0
  16. package/src/index.ts +6 -0
  17. package/src/services/chat/chat-session.service.ts +91 -2
  18. package/src/services/context/manager.ts +33 -2
  19. package/src/services/core/ai-assistant.service.ts +35 -11
  20. package/src/services/core/config-provider.service.ts +66 -0
  21. package/src/services/providers/anthropic-provider.service.ts +12 -4
  22. package/src/services/providers/glm-provider.service.ts +12 -4
  23. package/src/services/providers/minimax-provider.service.ts +12 -4
  24. package/src/types/ai.types.ts +3 -3
  25. package/src/types/provider.types.ts +1 -0
  26. package/dist/components/chat/ai-sidebar.component.d.ts +0 -160
  27. package/dist/components/chat/chat-input.component.d.ts +0 -69
  28. package/dist/components/chat/chat-interface.component.d.ts +0 -124
  29. package/dist/components/chat/chat-message.component.d.ts +0 -53
  30. package/dist/components/chat/chat-settings.component.d.ts +0 -72
  31. package/dist/components/common/error-message.component.d.ts +0 -11
  32. package/dist/components/common/loading-spinner.component.d.ts +0 -4
  33. package/dist/components/security/consent-dialog.component.d.ts +0 -11
  34. package/dist/components/security/password-prompt.component.d.ts +0 -10
  35. package/dist/components/security/risk-confirm-dialog.component.d.ts +0 -36
  36. package/dist/components/settings/ai-settings-tab.component.d.ts +0 -82
  37. package/dist/components/settings/general-settings.component.d.ts +0 -94
  38. package/dist/components/settings/provider-config.component.d.ts +0 -300
  39. package/dist/components/settings/security-settings.component.d.ts +0 -33
  40. package/dist/components/terminal/ai-toolbar-button.component.d.ts +0 -10
  41. package/dist/components/terminal/command-preview.component.d.ts +0 -53
  42. package/dist/components/terminal/command-suggestion.component.d.ts +0 -16
  43. package/dist/i18n/index.d.ts +0 -48
  44. package/dist/i18n/translations/en-US.d.ts +0 -5
  45. package/dist/i18n/translations/ja-JP.d.ts +0 -5
  46. package/dist/i18n/translations/zh-CN.d.ts +0 -5
  47. package/dist/i18n/types.d.ts +0 -198
  48. package/dist/index-full.d.ts +0 -8
  49. package/dist/index-minimal.d.ts +0 -3
  50. package/dist/index.d.ts +0 -12
  51. package/dist/main.d.ts +0 -8
  52. package/dist/providers/tabby/ai-config.provider.d.ts +0 -70
  53. package/dist/providers/tabby/ai-hotkey.provider.d.ts +0 -15
  54. package/dist/providers/tabby/ai-settings-tab.provider.d.ts +0 -11
  55. package/dist/providers/tabby/ai-toolbar-button.provider.d.ts +0 -16
  56. package/dist/services/chat/ai-sidebar.service.d.ts +0 -111
  57. package/dist/services/chat/chat-history.service.d.ts +0 -145
  58. package/dist/services/chat/chat-session.service.d.ts +0 -113
  59. package/dist/services/chat/command-generator.service.d.ts +0 -49
  60. package/dist/services/context/compaction.d.ts +0 -90
  61. package/dist/services/context/manager.d.ts +0 -69
  62. package/dist/services/context/memory.d.ts +0 -116
  63. package/dist/services/context/token-budget.d.ts +0 -105
  64. package/dist/services/core/ai-assistant.service.d.ts +0 -127
  65. package/dist/services/core/ai-provider-manager.service.d.ts +0 -119
  66. package/dist/services/core/checkpoint.service.d.ts +0 -130
  67. package/dist/services/core/config-provider.service.d.ts +0 -137
  68. package/dist/services/core/logger.service.d.ts +0 -21
  69. package/dist/services/core/theme.service.d.ts +0 -53
  70. package/dist/services/core/toast.service.d.ts +0 -15
  71. package/dist/services/platform/escape-sequence.service.d.ts +0 -132
  72. package/dist/services/platform/platform-detection.service.d.ts +0 -146
  73. package/dist/services/providers/anthropic-provider.service.d.ts +0 -44
  74. package/dist/services/providers/base-provider.service.d.ts +0 -142
  75. package/dist/services/providers/glm-provider.service.d.ts +0 -96
  76. package/dist/services/providers/minimax-provider.service.d.ts +0 -102
  77. package/dist/services/providers/ollama-provider.service.d.ts +0 -76
  78. package/dist/services/providers/openai-compatible.service.d.ts +0 -44
  79. package/dist/services/providers/openai-provider.service.d.ts +0 -43
  80. package/dist/services/providers/vllm-provider.service.d.ts +0 -82
  81. package/dist/services/security/consent-manager.service.d.ts +0 -65
  82. package/dist/services/security/password-manager.service.d.ts +0 -67
  83. package/dist/services/security/risk-assessment.service.d.ts +0 -65
  84. package/dist/services/security/security-validator.service.d.ts +0 -36
  85. package/dist/services/terminal/buffer-analyzer.service.d.ts +0 -128
  86. package/dist/services/terminal/command-analyzer.service.d.ts +0 -20
  87. package/dist/services/terminal/context-menu.service.d.ts +0 -24
  88. package/dist/services/terminal/hotkey.service.d.ts +0 -28
  89. package/dist/services/terminal/terminal-context.service.d.ts +0 -100
  90. package/dist/services/terminal/terminal-manager.service.d.ts +0 -185
  91. package/dist/services/terminal/terminal-tools.service.d.ts +0 -79
  92. package/dist/types/ai.types.d.ts +0 -199
  93. package/dist/types/provider.types.d.ts +0 -105
  94. package/dist/types/security.types.d.ts +0 -85
  95. package/dist/types/terminal.types.d.ts +0 -150
  96. package/dist/utils/encryption.utils.d.ts +0 -83
  97. package/dist/utils/formatting.utils.d.ts +0 -106
  98. package/dist/utils/validation.utils.d.ts +0 -83
  99. package/jest.config.js +0 -47
  100. package/webpack-docker.config.js +0 -42
  101. package/webpack.config.js +0 -81
@@ -1,4 +0,0 @@
1
- export declare class LoadingSpinnerComponent {
2
- size: 'small' | 'medium' | 'large';
3
- message: string;
4
- }
@@ -1,11 +0,0 @@
1
- import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
2
- import { RiskLevel } from '../../types/security.types';
3
- export declare class ConsentDialogComponent {
4
- activeModal: NgbActiveModal;
5
- command: string;
6
- riskLevel: RiskLevel;
7
- rememberChoice: boolean;
8
- constructor(activeModal: NgbActiveModal);
9
- confirm(): void;
10
- cancel(): void;
11
- }
@@ -1,10 +0,0 @@
1
- import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
2
- export declare class PasswordPromptComponent {
3
- activeModal: NgbActiveModal;
4
- title: string;
5
- password: string;
6
- errorMessage: string;
7
- constructor(activeModal: NgbActiveModal);
8
- submit(): void;
9
- cancel(): void;
10
- }
@@ -1,36 +0,0 @@
1
- import { EventEmitter } from '@angular/core';
2
- import { NgbActiveModal } from '@ng-bootstrap/ng-bootstrap';
3
- import { RiskLevel } from '../../types/security.types';
4
- export declare class RiskConfirmDialogComponent {
5
- activeModal: NgbActiveModal;
6
- command: string;
7
- explanation: string;
8
- riskLevel: RiskLevel;
9
- suggestions: string[];
10
- confirmed: EventEmitter<boolean>;
11
- constructor(activeModal: NgbActiveModal);
12
- /**
13
- * 确认执行
14
- */
15
- confirm(): void;
16
- /**
17
- * 取消执行
18
- */
19
- cancel(): void;
20
- /**
21
- * 获取风险级别文本
22
- */
23
- getRiskLevelText(): string;
24
- /**
25
- * 获取风险级别颜色
26
- */
27
- getRiskLevelColor(): string;
28
- /**
29
- * 获取风险级别图标
30
- */
31
- getRiskLevelIcon(): string;
32
- /**
33
- * 是否为高风险
34
- */
35
- isHighRisk(): boolean;
36
- }
@@ -1,82 +0,0 @@
1
- import { OnInit, OnDestroy } from '@angular/core';
2
- import { AiAssistantService } from '../../services/core/ai-assistant.service';
3
- import { ConfigProviderService } from '../../services/core/config-provider.service';
4
- import { LoggerService } from '../../services/core/logger.service';
5
- import { TranslateService } from '../../i18n';
6
- export declare class AiSettingsTabComponent implements OnInit, OnDestroy {
7
- private aiService;
8
- private config;
9
- private logger;
10
- private translate;
11
- activeTab: string;
12
- isEnabled: boolean;
13
- currentProvider: string;
14
- providerStatus: any;
15
- pluginVersion: string;
16
- t: any;
17
- tabs: {
18
- id: string;
19
- labelKey: string;
20
- icon: string;
21
- }[];
22
- private destroy$;
23
- constructor(aiService: AiAssistantService, config: ConfigProviderService, logger: LoggerService, translate: TranslateService);
24
- ngOnInit(): void;
25
- ngOnDestroy(): void;
26
- /**
27
- * 更新 Tab 标签
28
- */
29
- private updateTabLabels;
30
- /**
31
- * 加载设置
32
- */
33
- private loadSettings;
34
- /**
35
- * 加载提供商状态
36
- */
37
- private loadProviderStatus;
38
- /**
39
- * 切换标签页
40
- */
41
- switchTab(tabId: string): void;
42
- /**
43
- * 切换启用状态
44
- */
45
- toggleEnabled(): void;
46
- /**
47
- * 切换提供商
48
- */
49
- switchProvider(providerName: string): void;
50
- /**
51
- * 刷新提供商状态
52
- */
53
- refreshProviderStatus(): Promise<void>;
54
- /**
55
- * 获取提供商图标类名
56
- */
57
- getProviderIcon(providerName: string): string;
58
- /**
59
- * 获取提供商状态颜色
60
- */
61
- getProviderStatusColor(healthy: boolean): string;
62
- /**
63
- * 获取提供商状态文本
64
- */
65
- getProviderStatusText(healthy: boolean): string;
66
- /**
67
- * 验证配置
68
- */
69
- validateConfig(): Promise<void>;
70
- /**
71
- * 导出配置
72
- */
73
- exportConfig(): void;
74
- /**
75
- * 导入配置
76
- */
77
- importConfig(): void;
78
- /**
79
- * 重置为默认配置
80
- */
81
- resetToDefaults(): void;
82
- }
@@ -1,94 +0,0 @@
1
- import { EventEmitter, OnInit, OnDestroy } from '@angular/core';
2
- import { AiAssistantService } from '../../services/core/ai-assistant.service';
3
- import { ConfigProviderService } from '../../services/core/config-provider.service';
4
- import { LoggerService } from '../../services/core/logger.service';
5
- import { ThemeService } from '../../services/core/theme.service';
6
- import { ConfigService } from 'tabby-core';
7
- import { TranslateService } from '../../i18n';
8
- export declare class GeneralSettingsComponent implements OnInit, OnDestroy {
9
- private aiService;
10
- private config;
11
- private tabbyConfig;
12
- private logger;
13
- private translate;
14
- private themeService;
15
- providerChanged: EventEmitter<string>;
16
- availableProviders: any[];
17
- selectedProvider: string;
18
- isEnabled: boolean;
19
- language: string;
20
- theme: string;
21
- t: any;
22
- private localProviderStatus;
23
- private readonly statusCacheDuration;
24
- private destroy$;
25
- languages: {
26
- value: string;
27
- label: string;
28
- flag: string;
29
- }[];
30
- themes: {
31
- value: string;
32
- label: string;
33
- }[];
34
- private providerNames;
35
- constructor(aiService: AiAssistantService, config: ConfigProviderService, tabbyConfig: ConfigService, logger: LoggerService, translate: TranslateService, themeService: ThemeService);
36
- ngOnInit(): void;
37
- ngOnDestroy(): void;
38
- /**
39
- * 更新主题标签翻译
40
- */
41
- private updateThemeLabels;
42
- /**
43
- * 加载设置
44
- */
45
- private loadSettings;
46
- /**
47
- * 加载可用提供商 - 支持云端和本地供应商
48
- */
49
- private loadProviders;
50
- /**
51
- * 获取供应商描述
52
- */
53
- private getProviderDescription;
54
- /**
55
- * 获取云端提供商状态(同步返回)
56
- */
57
- getProviderStatus(providerName: string): {
58
- text: string;
59
- color: string;
60
- icon: string;
61
- };
62
- /**
63
- * 检测本地供应商状态(异步)
64
- */
65
- private checkLocalProviderStatus;
66
- /**
67
- * 获取本地供应商状态(同步返回,异步更新缓存)
68
- */
69
- getLocalProviderStatus(providerName: string): {
70
- text: string;
71
- color: string;
72
- icon: string;
73
- };
74
- /**
75
- * 更新默认提供商
76
- */
77
- updateDefaultProvider(providerName: string): void;
78
- /**
79
- * 更新启用状态
80
- */
81
- updateEnabled(enabled: boolean): void;
82
- /**
83
- * 更新语言
84
- */
85
- updateLanguage(language: string): void;
86
- /**
87
- * 更新主题
88
- */
89
- updateTheme(theme: string): void;
90
- /**
91
- * 应用主题 - 使用 ThemeService
92
- */
93
- private applyTheme;
94
- }
@@ -1,300 +0,0 @@
1
- import { EventEmitter, OnInit, OnDestroy } from '@angular/core';
2
- import { ConfigProviderService } from '../../services/core/config-provider.service';
3
- import { LoggerService } from '../../services/core/logger.service';
4
- import { ToastService } from '../../services/core/toast.service';
5
- import { TranslateService } from '../../i18n';
6
- export declare class ProviderConfigComponent implements OnInit, OnDestroy {
7
- private config;
8
- private logger;
9
- private toast;
10
- private translate;
11
- providerStatus: any;
12
- refreshStatus: EventEmitter<void>;
13
- switchProvider: EventEmitter<string>;
14
- Object: ObjectConstructor;
15
- selectedProvider: string;
16
- configs: {
17
- [key: string]: any;
18
- };
19
- expandedProvider: string;
20
- localStatus: {
21
- [key: string]: boolean;
22
- };
23
- passwordVisibility: {
24
- [key: string]: {
25
- [fieldKey: string]: boolean;
26
- };
27
- };
28
- t: any;
29
- private apiKeyPatterns;
30
- private destroy$;
31
- cloudProviderTemplates: {
32
- openai: {
33
- name: string;
34
- description: string;
35
- icon: string;
36
- fields: ({
37
- key: string;
38
- label: string;
39
- type: string;
40
- required: boolean;
41
- default?: undefined;
42
- placeholder?: undefined;
43
- } | {
44
- key: string;
45
- label: string;
46
- type: string;
47
- default: string;
48
- required: boolean;
49
- placeholder?: undefined;
50
- } | {
51
- key: string;
52
- label: string;
53
- type: string;
54
- default: string;
55
- required: boolean;
56
- placeholder: string;
57
- })[];
58
- };
59
- anthropic: {
60
- name: string;
61
- description: string;
62
- icon: string;
63
- fields: ({
64
- key: string;
65
- label: string;
66
- type: string;
67
- required: boolean;
68
- default?: undefined;
69
- placeholder?: undefined;
70
- } | {
71
- key: string;
72
- label: string;
73
- type: string;
74
- default: string;
75
- required: boolean;
76
- placeholder?: undefined;
77
- } | {
78
- key: string;
79
- label: string;
80
- type: string;
81
- default: string;
82
- required: boolean;
83
- placeholder: string;
84
- })[];
85
- };
86
- minimax: {
87
- name: string;
88
- description: string;
89
- icon: string;
90
- fields: ({
91
- key: string;
92
- label: string;
93
- type: string;
94
- required: boolean;
95
- default?: undefined;
96
- placeholder?: undefined;
97
- } | {
98
- key: string;
99
- label: string;
100
- type: string;
101
- default: string;
102
- required: boolean;
103
- placeholder?: undefined;
104
- } | {
105
- key: string;
106
- label: string;
107
- type: string;
108
- default: string;
109
- required: boolean;
110
- placeholder: string;
111
- })[];
112
- };
113
- glm: {
114
- name: string;
115
- description: string;
116
- icon: string;
117
- fields: ({
118
- key: string;
119
- label: string;
120
- type: string;
121
- required: boolean;
122
- default?: undefined;
123
- placeholder?: undefined;
124
- } | {
125
- key: string;
126
- label: string;
127
- type: string;
128
- default: string;
129
- required: boolean;
130
- placeholder?: undefined;
131
- } | {
132
- key: string;
133
- label: string;
134
- type: string;
135
- default: string;
136
- required: boolean;
137
- placeholder: string;
138
- })[];
139
- };
140
- };
141
- localProviderTemplates: {
142
- ollama: {
143
- name: string;
144
- description: string;
145
- icon: string;
146
- defaultURL: string;
147
- fields: {
148
- key: string;
149
- label: string;
150
- type: string;
151
- default: string;
152
- required: boolean;
153
- placeholder: string;
154
- }[];
155
- };
156
- vllm: {
157
- name: string;
158
- description: string;
159
- icon: string;
160
- defaultURL: string;
161
- fields: ({
162
- key: string;
163
- label: string;
164
- type: string;
165
- default: string;
166
- required: boolean;
167
- placeholder: string;
168
- } | {
169
- key: string;
170
- label: string;
171
- type: string;
172
- required: boolean;
173
- default?: undefined;
174
- placeholder?: undefined;
175
- })[];
176
- };
177
- };
178
- constructor(config: ConfigProviderService, logger: LoggerService, toast: ToastService, translate: TranslateService);
179
- ngOnInit(): void;
180
- ngOnDestroy(): void;
181
- /**
182
- * 加载配置
183
- */
184
- private loadConfigs;
185
- /**
186
- * 切换展开/折叠
187
- */
188
- toggleExpand(providerName: string): void;
189
- /**
190
- * 检查是否是本地提供商
191
- */
192
- isLocalProvider(providerName: string): boolean;
193
- /**
194
- * 检测本地供应商状态
195
- */
196
- private checkLocalProviderStatus;
197
- /**
198
- * 获取本地供应商在线状态
199
- */
200
- getLocalStatus(providerName: string): {
201
- text: string;
202
- color: string;
203
- icon: string;
204
- };
205
- /**
206
- * 测试本地提供商连接
207
- */
208
- testLocalProvider(providerName: string): Promise<void>;
209
- /**
210
- * 保存配置
211
- */
212
- saveConfig(providerName: string): void;
213
- /**
214
- * 添加提供商
215
- */
216
- addProvider(providerName: string): void;
217
- /**
218
- * 删除提供商
219
- */
220
- removeProvider(providerName: string): void;
221
- /**
222
- * 切换提供商启用状态
223
- */
224
- toggleProviderEnabled(providerName: string): void;
225
- /**
226
- * 测试连接
227
- */
228
- testConnection(providerName: string): Promise<void>;
229
- /**
230
- * 获取测试端点
231
- */
232
- private getTestEndpoint;
233
- /**
234
- * 获取测试请求头
235
- */
236
- private getTestHeaders;
237
- /**
238
- * 获取测试请求体
239
- */
240
- private getTestBody;
241
- /**
242
- * 创建默认配置
243
- */
244
- private createDefaultConfig;
245
- /**
246
- * 获取字段类型
247
- */
248
- getFieldType(field: any): string;
249
- /**
250
- * 获取选项
251
- */
252
- getFieldOptions(field: any): string[];
253
- /**
254
- * 检查是否是密码字段
255
- */
256
- isPasswordField(field: any): boolean;
257
- /**
258
- * 检查是否必填
259
- */
260
- isRequired(field: any): boolean;
261
- /**
262
- * 获取提供商模板(支持云端和本地)
263
- */
264
- getProviderTemplate(providerName: string): any;
265
- /**
266
- * 获取提供商图标
267
- */
268
- getProviderIcon(providerName: string): string;
269
- /**
270
- * 检查是否有配置
271
- */
272
- hasConfig(providerName: string): boolean;
273
- /**
274
- * 获取配置值
275
- */
276
- getConfigValue(providerName: string, key: string, defaultValue?: any): any;
277
- /**
278
- * 更新配置值
279
- */
280
- updateConfigValue(providerName: string, key: string, value: any): void;
281
- /**
282
- * 切换密码字段可见性
283
- */
284
- togglePasswordVisibility(providerName: string, fieldKey: string): void;
285
- /**
286
- * 获取密码字段可见性状态
287
- */
288
- isPasswordVisible(providerName: string, fieldKey: string): boolean;
289
- /**
290
- * 验证 API Key 格式
291
- */
292
- validateApiKeyFormat(providerName: string, apiKey: string): {
293
- valid: boolean;
294
- message: string;
295
- };
296
- /**
297
- * 获取输入框的验证状态类
298
- */
299
- getInputValidationClass(providerName: string, fieldKey: string): string;
300
- }
@@ -1,33 +0,0 @@
1
- import { OnInit, OnDestroy } from '@angular/core';
2
- import { ConfigProviderService } from '../../services/core/config-provider.service';
3
- import { LoggerService } from '../../services/core/logger.service';
4
- import { TranslateService } from '../../i18n';
5
- export declare class SecuritySettingsComponent implements OnInit, OnDestroy {
6
- private config;
7
- private logger;
8
- private translate;
9
- settings: {
10
- enablePasswordProtection: boolean;
11
- enableRiskAssessment: boolean;
12
- defaultRiskLevel: string;
13
- enableConsentPersistence: boolean;
14
- consentExpiryDays: number;
15
- autoApproveLowRisk: boolean;
16
- promptForMediumRisk: boolean;
17
- requirePasswordForHighRisk: boolean;
18
- };
19
- password: string;
20
- newPattern: string;
21
- dangerousPatterns: string[];
22
- t: any;
23
- private destroy$;
24
- constructor(config: ConfigProviderService, logger: LoggerService, translate: TranslateService);
25
- ngOnInit(): void;
26
- ngOnDestroy(): void;
27
- private loadSettings;
28
- updateSetting(key: string, value: any): void;
29
- addDangerousPattern(pattern: string): void;
30
- removeDangerousPattern(index: number): void;
31
- saveSettings(): void;
32
- resetToDefaults(): void;
33
- }
@@ -1,10 +0,0 @@
1
- /**
2
- * AI工具栏按钮组件
3
- * 在Tabby工具栏显示AI助手按钮
4
- */
5
- export declare class AiToolbarButtonComponent {
6
- label: string;
7
- tooltip: string;
8
- showLabel: boolean;
9
- onClick(): void;
10
- }
@@ -1,53 +0,0 @@
1
- import { EventEmitter } from '@angular/core';
2
- import { CommandResponse } from '../../types/ai.types';
3
- import { RiskLevel } from '../../types/security.types';
4
- import { TerminalManagerService, TerminalInfo } from '../../services/terminal/terminal-manager.service';
5
- import { LoggerService } from '../../services/core/logger.service';
6
- export declare class CommandPreviewComponent {
7
- private terminalManager;
8
- private logger;
9
- command: CommandResponse | null;
10
- riskLevel: RiskLevel;
11
- executed: EventEmitter<CommandResponse>;
12
- closed: EventEmitter<void>;
13
- terminals: TerminalInfo[];
14
- selectedTerminalIndex: number;
15
- showTerminalSelector: boolean;
16
- executionStatus: 'idle' | 'executing' | 'success' | 'error';
17
- statusMessage: string;
18
- constructor(terminalManager: TerminalManagerService, logger: LoggerService);
19
- /**
20
- * 加载可用终端列表
21
- */
22
- loadTerminals(): void;
23
- getRiskText(): string;
24
- getRiskIcon(): string;
25
- /**
26
- * 复制命令到剪贴板
27
- */
28
- copyCommand(): void;
29
- /**
30
- * 执行命令到终端
31
- */
32
- execute(): void;
33
- /**
34
- * 仅插入命令(不执行)
35
- */
36
- insertOnly(): void;
37
- /**
38
- * 切换终端选择器
39
- */
40
- toggleTerminalSelector(): void;
41
- /**
42
- * 选择终端
43
- */
44
- selectTerminal(index: number): void;
45
- /**
46
- * 关闭预览
47
- */
48
- close(): void;
49
- /**
50
- * 选择替代命令
51
- */
52
- selectAlternative(alt: any): void;
53
- }
@@ -1,16 +0,0 @@
1
- import { EventEmitter, OnInit, OnDestroy } from '@angular/core';
2
- import { CommandResponse } from '../../types/ai.types';
3
- export declare class CommandSuggestionComponent implements OnInit, OnDestroy {
4
- inputText: string;
5
- suggestionSelected: EventEmitter<CommandResponse>;
6
- closed: EventEmitter<void>;
7
- suggestions: CommandResponse[];
8
- private inputSubject;
9
- private destroy$;
10
- ngOnInit(): void;
11
- ngOnDestroy(): void;
12
- onInputChange(text: string): void;
13
- private generateSuggestions;
14
- selectSuggestion(suggestion: CommandResponse): void;
15
- close(): void;
16
- }