Skip to content

Commit e8e46e5

Browse files
committed
Replace missing configuration warnings with notifications and enhance settings navigation
- `apps/editor/src/utils/show-no-configurations-warning.ts` should show separate warnings for missing chatbot/model - add translations [Fragment] - in `apps/editor/src/utils/show-no-configurations-warning.ts`, if no providers are set yet, open api.providers() - rename `apps/editor/src/utils/show-no-configurations-warning.ts` to 'show missing configuration notification', and use notification (info), not warning modal └── apps └── editor └── src ├── commands │ ├── code-at-cursor-command │ │ └── utils │ │ ├── get-code-at-cursor-config.ts │ │ └── perform-code-at-cursor.ts │ └── generate-commit-message-commands │ ├── actions │ │ └── run-generate-action.ts │ └── utils │ └── get-commit-message-config.ts ├── features │ └── search-files │ └── search-modes │ └── perform-intelligent-search-mode.ts ├── i18n │ └── translations │ └── utils │ ├── index.ts │ ├── show-missing-configuration-notification.ts │ ├── show-no-configurations-warning.ts │ └── show-parent-folder-quick-pick.ts ├── services │ └── providers-manager.ts ├── utils │ ├── show-missing-configuration-notification.ts │ └── show-no-configurations-warning.ts └── views ├── prompt │ └── backend │ └── message-handlers │ ├── handle-patch-repair.ts │ ├── handle-voice-input.ts │ └── utils │ └── patch-repair-utils.ts └── settings ├── frontend │ └── Home │ ├── index.ts │ └── sections │ ├── GeneralSection.tsx │ └── WebSection.tsx └── helpers └── open-settings.ts
1 parent b335094 commit e8e46e5

14 files changed

Lines changed: 93 additions & 61 deletions

File tree

‎apps/editor/src/commands/code-at-cursor-command/utils/get-code-at-cursor-config.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import { Logger } from '@shared/utils/logger'
88
import { LAST_USED_CODE_AT_CURSOR_CONFIG_ID_STATE_KEY } from '@/constants/state-keys'
99
import { t } from '@/i18n'
1010
import { show_configurations_quick_pick } from '@/utils/show-configurations-quick-pick'
11-
import { show_no_configurations_warning } from '@/utils/show-no-configurations-warning'
11+
import { show_missing_configuration_notification } from '@/utils/show-missing-configuration-notification'
1212

1313
export const get_code_at_cursor_api_configuration = async (params: {
1414
providers_manager: ProvidersManager
@@ -20,7 +20,7 @@ export const get_code_at_cursor_api_configuration = async (params: {
2020
await params.providers_manager.get_api_configurations()
2121

2222
if (code_at_cursor_api_configurations.length == 0) {
23-
show_no_configurations_warning('api')
23+
show_missing_configuration_notification('api')
2424
return
2525
}
2626

‎apps/editor/src/commands/code-at-cursor-command/utils/perform-code-at-cursor.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ import { normalize_path } from '@/utils/normalize-path'
2323
import { WebSocketManager } from '@/services/websocket-manager'
2424
import { show_configurations_quick_pick } from '@/utils/show-configurations-quick-pick'
2525
import { get_last_used_web_configuration_key } from '@/constants/state-keys'
26-
import { show_no_configurations_warning } from '@/utils/show-no-configurations-warning'
26+
import { show_missing_configuration_notification } from '@/utils/show-missing-configuration-notification'
2727
import { ConfigWebConfigurationFormat } from '@/utils/web-configuration-format-converters'
2828

2929
export const perform_code_at_cursor = async (params: {
@@ -282,7 +282,7 @@ export const perform_code_at_cursor = async (params: {
282282
)
283283

284284
if (valid_web_configurations.length == 0) {
285-
show_no_configurations_warning('web')
285+
show_missing_configuration_notification('web')
286286
return
287287
}
288288

‎apps/editor/src/commands/generate-commit-message-commands/actions/run-generate-action.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ import { WebSocketManager } from '@/services/websocket-manager'
2525
import { ProvidersManager } from '@/services/providers-manager'
2626
import { get_response_preview_promise_resolve } from '@/commands/apply-response-command/utils/preview'
2727
import { normalize_path } from '@/utils/normalize-path'
28-
import { show_no_configurations_warning } from '@/utils/show-no-configurations-warning'
28+
import { show_missing_configuration_notification } from '@/utils/show-missing-configuration-notification'
2929
import { ConfigWebConfigurationFormat } from '@/utils/web-configuration-format-converters'
3030

3131
const truncate_prompt = (text: string): string => {
@@ -397,7 +397,7 @@ export const run_generate_action = async (params: {
397397
)
398398

399399
if (valid_web_configurations.length == 0) {
400-
show_no_configurations_warning('web')
400+
show_missing_configuration_notification('web')
401401
current_action = undefined
402402
continue
403403
}

‎apps/editor/src/commands/generate-commit-message-commands/utils/get-commit-message-config.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { Logger } from '@shared/utils/logger'
44
import { LAST_USED_COMMIT_MESSAGES_CONFIG_ID_STATE_KEY } from '@/constants/state-keys'
55
import { t } from '@/i18n'
66
import { show_configurations_quick_pick } from '@/utils/show-configurations-quick-pick'
7-
import { show_no_configurations_warning } from '@/utils/show-no-configurations-warning'
7+
import { show_missing_configuration_notification } from '@/utils/show-missing-configuration-notification'
88

99
export interface CommitMessageApiConfiguration {
1010
provider_name: string
@@ -41,7 +41,7 @@ export const get_commit_message_api_configuration = async (params: {
4141
const api_configurations = await providers_manager.get_api_configurations()
4242

4343
if (api_configurations.length == 0) {
44-
show_no_configurations_warning('api')
44+
show_missing_configuration_notification('api')
4545
return null
4646
}
4747

‎apps/editor/src/features/search-files/search-modes/perform-intelligent-search-mode.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import { WebSocketManager } from '@/services/websocket-manager'
1919
import { display_token_count } from '@shared/utils/display-token-count'
2020
import { show_configurations_quick_pick } from '@/utils/show-configurations-quick-pick'
2121
import { intelligent_file_search_format_for_prompt_view } from '@/constants/instructions'
22-
import { show_no_configurations_warning } from '@/utils/show-no-configurations-warning'
22+
import { show_missing_configuration_notification } from '@/utils/show-missing-configuration-notification'
2323
import { ConfigWebConfigurationFormat } from '@/utils/web-configuration-format-converters'
2424

2525
export const perform_intelligent_search_mode = async (params: {
@@ -297,7 +297,7 @@ export const perform_intelligent_search_mode = async (params: {
297297
)
298298

299299
if (valid_web_configurations.length == 0) {
300-
show_no_configurations_warning('web')
300+
show_missing_configuration_notification('web')
301301
go_back_to_action = true
302302
continue
303303
}
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11
import { translations as show_parent_folder_quick_pick } from './show-parent-folder-quick-pick'
22
import { translations as git_repository_utils } from './git-repository-utils'
3-
import { translations as show_no_configurations_warning } from './show-no-configurations-warning'
3+
import { translations as show_missing_configuration_notification } from './show-missing-configuration-notification'
44

55
export const translations = {
66
...show_parent_folder_quick_pick,
77
...git_repository_utils,
8-
...show_no_configurations_warning
8+
...show_missing_configuration_notification
99
}
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
export const translations = {
2+
'utils.show-missing-configuration-notification.no-model-configurations-created-yet':
3+
{
4+
en: 'No model configured yet.',
5+
pl: 'Nie skonfigurowano jeszcze żadnego modelu.',
6+
'zh-cn': '尚未配置任何模型。',
7+
ja: 'モデルがまだ設定されていません。',
8+
'zh-tw': '尚未設定任何模型。',
9+
de: 'Noch kein Modell konfiguriert.',
10+
es: 'Aún no se ha configurado ningún modelo.',
11+
fr: 'Aucun modèle configuré pour le moment.',
12+
'pt-br': 'Nenhum modelo configurado ainda.',
13+
ru: 'Модель еще не настроена.',
14+
ko: '아직 구성된 모델이 없습니다.',
15+
it: 'Nessun modello ancora configurato.',
16+
tr: 'Henüz bir model yapılandırılmadı.',
17+
cs: 'Zatím nebyl nakonfigurován žádný model.',
18+
hu: 'Még nincs modell konfigurálva.',
19+
bg: 'Все още няма конфигуриран модел.'
20+
},
21+
'utils.show-missing-configuration-notification.no-chatbot-configurations-created-yet':
22+
{
23+
en: 'No chatbot configured yet.',
24+
pl: 'Nie skonfigurowano jeszcze żadnego chatbota.',
25+
'zh-cn': '尚未配置任何聊天机器人。',
26+
ja: 'チャットボットがまだ設定されていません。',
27+
'zh-tw': '尚未設定任何聊天機器人。',
28+
de: 'Noch kein Chatbot konfiguriert.',
29+
es: 'Aún no se ha configurado ningún chatbot.',
30+
fr: 'Aucun chatbot configuré pour le moment.',
31+
'pt-br': 'Nenhum chatbot configurado ainda.',
32+
ru: 'Чат-бот еще не настроен.',
33+
ko: '아직 구성된 챗봇이 없습니다.',
34+
it: 'Nessun chatbot ancora configurato.',
35+
tr: 'Henüz bir sohbet robotu yapılandırılmadı.',
36+
cs: 'Zatím nebyl nakonfigurován žádný chatbot.',
37+
hu: 'Még nincs chatbot konfigurálva.',
38+
bg: 'Все още няма конфигуриран чатбот.'
39+
}
40+
} as const

‎apps/editor/src/i18n/translations/utils/show-no-configurations-warning.ts‎

Lines changed: 0 additions & 20 deletions
This file was deleted.
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
import * as vscode from 'vscode'
2+
import { t } from '@/i18n'
3+
import { open_settings } from '@/views/settings/helpers/open-settings'
4+
5+
export const show_missing_configuration_notification = async (
6+
type: 'api' | 'web'
7+
): Promise<void> => {
8+
const open_settings_label = t('common.open-settings')
9+
const result = await vscode.window.showInformationMessage(
10+
type == 'api'
11+
? t(
12+
'utils.show-missing-configuration-notification.no-model-configurations-created-yet'
13+
)
14+
: t(
15+
'utils.show-missing-configuration-notification.no-chatbot-configurations-created-yet'
16+
),
17+
open_settings_label
18+
)
19+
20+
if (result == open_settings_label) {
21+
if (type == 'api') {
22+
const config = vscode.workspace.getConfiguration('codeWebChat')
23+
const providers = config.get<any[]>('providers', [])
24+
25+
if (providers.length == 0) {
26+
open_settings.api.providers()
27+
} else {
28+
open_settings.api.models()
29+
}
30+
} else {
31+
open_settings.web.chatbots()
32+
}
33+
}
34+
}

‎apps/editor/src/utils/show-no-configurations-warning.ts‎

Lines changed: 0 additions & 22 deletions
This file was deleted.

0 commit comments

Comments
 (0)