Skip to content

Commit 2c12397

Browse files
committed
Merge selected files payload into token count message
- number of selected files and token count should be sent to front-end in a single message, so that there are no desynchronized UI updates └── apps └── editor └── src ├── context │ ├── context-initialization.ts │ ├── helpers │ │ └── get-selected-files.ts │ ├── providers │ │ └── workspace │ │ ├── modules │ │ │ └── token-calculator.ts │ │ └── workspace-provider.ts │ └── shared-context-state.ts └── views └── prompt ├── backend │ └── prompt-view-provider.ts ├── frontend │ ├── Main │ │ ├── Main.tsx │ │ └── MainView │ │ ├── MainView.tsx │ │ └── components │ │ └── PromptAttachments │ │ └── PromptAttachments.tsx │ ├── Prompt.tsx │ └── hooks │ ├── use-editor-sync.ts │ └── use-prompt │ └── use-prompt.ts └── types └── messages.ts
1 parent 4aec240 commit 2c12397

4 files changed

Lines changed: 11 additions & 31 deletions

File tree

‎apps/editor/src/views/prompt/backend/prompt-view-provider.ts‎

Lines changed: 8 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -375,7 +375,7 @@ export class PromptViewProvider implements vscode.WebviewViewProvider {
375375
vscode.workspace.onDidChangeWorkspaceFolders(() => {
376376
handle_get_tasks(this)
377377
handle_get_workspace_state(this)
378-
this.send_selected_files()
378+
this.send_token_count()
379379
})
380380
)
381381

@@ -428,7 +428,6 @@ export class PromptViewProvider implements vscode.WebviewViewProvider {
428428
this.current_selected_files_token_count = token_count
429429
if (this.webview_view) {
430430
this.send_token_count()
431-
this.send_selected_files()
432431
}
433432
})
434433

@@ -579,6 +578,11 @@ export class PromptViewProvider implements vscode.WebviewViewProvider {
579578
symbols_cache: this.symbols_cache
580579
})
581580

581+
const selected_files = get_selected_files({
582+
workspace_provider: this.workspace_provider,
583+
shared_context_state: this.shared_context_state
584+
})
585+
582586
this.send_message({
583587
command: 'TOKEN_COUNT_UPDATED',
584588
selected_files_token_count: this.current_selected_files_token_count,
@@ -597,19 +601,8 @@ export class PromptViewProvider implements vscode.WebviewViewProvider {
597601
) +
598602
ask_instructions_result.skill_definitions.length) /
599603
4
600-
)
601-
})
602-
}
603-
604-
send_selected_files() {
605-
const file_paths = get_selected_files({
606-
workspace_provider: this.workspace_provider,
607-
shared_context_state: this.shared_context_state
608-
})
609-
610-
this.send_message({
611-
command: 'SELECTED_FILES',
612-
file_paths
604+
),
605+
selected_files
613606
})
614607
}
615608

@@ -890,8 +883,6 @@ export class PromptViewProvider implements vscode.WebviewViewProvider {
890883
await handle_pick_tasks_workspace(this, message)
891884
} else if (message.command == 'GET_TOKEN_COUNT') {
892885
this.send_token_count()
893-
} else if (message.command == 'GET_SELECTED_FILES') {
894-
this.send_selected_files()
895886
} else if (message.command == 'PREVIEW_PROMPT') {
896887
await handle_preview_prompt({
897888
prompt_view_provider: this

‎apps/editor/src/views/prompt/frontend/hooks/use-editor-sync.ts‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,8 +26,8 @@ export const use_editor_sync = (vscode: any) => {
2626
set_currently_open_file_path(message.currently_open_file_path)
2727
} else if (message.command == 'EDITOR_SELECTION_CHANGED') {
2828
set_current_selection(message.current_selection)
29-
} else if (message.command == 'SELECTED_FILES') {
30-
set_selected_files(message.file_paths)
29+
} else if (message.command == 'TOKEN_COUNT_UPDATED') {
30+
set_selected_files(message.selected_files)
3131
} else if (message.command == 'CURRENTLY_OPEN_FILE_TEXT') {
3232
set_currently_open_file_text(message.text)
3333
} else if (message.command == 'WORKSPACE_STATE') {

‎apps/editor/src/views/prompt/frontend/hooks/use-prompt/use-prompt.ts‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -211,7 +211,6 @@ export const use_prompt = (vscode: any) => {
211211
{ command: 'GET_VOICE_INPUT_PUSH_TO_TALK' },
212212
{ command: 'GET_IS_MODERN_UI' },
213213
{ command: 'GET_TOKEN_COUNT' },
214-
{ command: 'GET_SELECTED_FILES' },
215214
{ command: 'GET_API_CONFIGURATIONS' }
216215
]
217216
initial_messages.forEach((message) => post_message(vscode, message))

‎apps/editor/src/views/prompt/types/messages.ts‎

Lines changed: 1 addition & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -567,10 +567,6 @@ export interface GetTokenCountMessage extends BaseMessage {
567567
command: 'GET_TOKEN_COUNT'
568568
}
569569

570-
export interface GetSelectedFilesMessage extends BaseMessage {
571-
command: 'GET_SELECTED_FILES'
572-
}
573-
574570
export interface PreviewPromptMessage extends BaseMessage {
575571
command: 'PREVIEW_PROMPT'
576572
}
@@ -711,7 +707,6 @@ export type FrontendMessage =
711707
| PickTasksWorkspaceMessage
712708
| GetIsModernUiMessage
713709
| GetTokenCountMessage
714-
| GetSelectedFilesMessage
715710
| PreviewPromptMessage
716711
| InstallBrowserExtensionMessage
717712
| PreviewChangesSymbolMessage
@@ -816,6 +811,7 @@ export interface TokenCountMessage extends BaseMessage {
816811
selected_files_token_count: number
817812
edit_instructions_token_count: number
818813
ask_instructions_token_count: number
814+
selected_files: string[]
819815
}
820816

821817
export interface WebConfigurationUpdatedMessage extends BaseMessage {
@@ -871,11 +867,6 @@ export interface ResetApplyButtonTemporaryDisabledStateMessage extends BaseMessa
871867
command: 'RESET_APPLY_BUTTON_TEMPORARY_DISABLED_STATE'
872868
}
873869

874-
export interface SelectedFilesMessage extends BaseMessage {
875-
command: 'SELECTED_FILES'
876-
file_paths: string[]
877-
}
878-
879870
export interface SendWithShiftEnterMessage extends BaseMessage {
880871
command: 'SEND_WITH_SHIFT_ENTER'
881872
enabled: boolean
@@ -1022,7 +1013,6 @@ export type BackendMessage =
10221013
| ApiPromptTypeMessage
10231014
| CliPromptTypeMessage
10241015
| VersionMessage
1025-
| SelectedFilesMessage
10261016
| SendWithShiftEnterMessage
10271017
| CanUndoChangedMessage
10281018
| ResetApplyButtonTemporaryDisabledStateMessage

0 commit comments

Comments
 (0)