Skip to content

Commit c467d53

Browse files
roomotehannesrudolph
authored andcommitted
fix: Add missing types for Files Changed Overview feature
1 parent 4d90ad1 commit c467d53

File tree

2 files changed

+37
-39
lines changed

2 files changed

+37
-39
lines changed

src/shared/ExtensionMessage.ts

Lines changed: 19 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,10 @@ import type {
99
ClineMessage,
1010
MarketplaceItem,
1111
TodoItem,
12-
ClineSay,
13-
FileChangeset,
1412
CloudUserInfo,
1513
OrganizationAllowList,
1614
ShareVisibility,
15+
QueuedMessage,
1716
} from "@roo-code/types"
1817

1918
import { GitCommit } from "../utils/git"
@@ -59,12 +58,9 @@ export interface LanguageModelChatSelector {
5958
id?: string
6059
}
6160

62-
/**
63-
* Message sent from the VS Code extension to the webview UI.
64-
* The 'type' union below enumerates outbound notifications and data updates
65-
* (e.g., "state", "theme", "indexingStatusUpdate", "filesChanged") that the
66-
* webview consumes to render and synchronize state. See the full union below.
67-
*/
61+
// Represents JSON data that is sent from extension to webview, called
62+
// ExtensionMessage and has 'type' enum which can be 'plusButtonClicked' or
63+
// 'settingsButtonClicked' or 'hello'. Webview will hold state.
6864
export interface ExtensionMessage {
6965
type:
7066
| "action"
@@ -128,11 +124,9 @@ export interface ExtensionMessage {
128124
| "commands"
129125
| "insertTextIntoTextarea"
130126
| "filesChanged"
131-
| "checkpointCreated"
132-
| "checkpointRestored"
133-
| "say"
134127
text?: string
135128
payload?: any // Add a generic payload for now, can refine later
129+
filesChanged?: any // Files changed data
136130
action?:
137131
| "chatButtonClicked"
138132
| "mcpButtonClicked"
@@ -205,10 +199,7 @@ export interface ExtensionMessage {
205199
messageTs?: number
206200
context?: string
207201
commands?: Command[]
208-
filesChanged?: FileChangeset // Added filesChanged property
209-
checkpoint?: string // For checkpointCreated and checkpointRestored messages
210-
previousCheckpoint?: string // For checkpoint_created message
211-
say?: ClineSay // Added say property
202+
queuedMessages?: QueuedMessage[]
212203
}
213204

214205
export type ExtensionState = Pick<
@@ -232,8 +223,10 @@ export type ExtensionState = Pick<
232223
| "alwaysAllowMcp"
233224
| "alwaysAllowModeSwitch"
234225
| "alwaysAllowSubtasks"
226+
| "alwaysAllowFollowupQuestions"
235227
| "alwaysAllowExecute"
236228
| "alwaysAllowUpdateTodoList"
229+
| "followupAutoApproveTimeoutMs"
237230
| "allowedCommands"
238231
| "deniedCommands"
239232
| "allowedMaxRequests"
@@ -242,6 +235,7 @@ export type ExtensionState = Pick<
242235
| "browserViewportSize"
243236
| "screenshotQuality"
244237
| "remoteBrowserEnabled"
238+
| "cachedChromeHostUrl"
245239
| "remoteBrowserHost"
246240
// | "enableCheckpoints" // Optional in GlobalSettings, required here.
247241
| "ttsEnabled"
@@ -287,12 +281,14 @@ export type ExtensionState = Pick<
287281
| "maxDiagnosticMessages"
288282
| "remoteControlEnabled"
289283
| "openRouterImageGenerationSelectedModel"
284+
| "includeTaskHistoryInEnhance"
290285
> & {
291286
version: string
287+
filesChangedEnabled: boolean
292288
clineMessages: ClineMessage[]
293289
currentTaskItem?: HistoryItem
294290
currentTaskTodos?: TodoItem[] // Initial todos for the current task
295-
apiConfiguration?: ProviderSettings
291+
apiConfiguration: ProviderSettings
296292
uriScheme?: string
297293
shouldShowAnnouncement: boolean
298294

@@ -340,8 +336,14 @@ export type ExtensionState = Pick<
340336
marketplaceInstalledMetadata?: { project: Record<string, any>; global: Record<string, any> }
341337
profileThresholds: Record<string, number>
342338
hasOpenedModeSelector: boolean
343-
filesChangedEnabled: boolean
344339
openRouterImageApiKey?: string
340+
openRouterUseMiddleOutTransform?: boolean
341+
messageQueue?: QueuedMessage[]
342+
lastShownAnnouncementId?: string
343+
apiModelId?: string
344+
mcpServers?: McpServer[]
345+
hasSystemPromptOverride?: boolean
346+
mdmCompliant?: boolean
345347
}
346348

347349
export interface ClineSayTool {

src/shared/WebviewMessage.ts

Lines changed: 18 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import {
77
type InstallMarketplaceItemOptions,
88
type MarketplaceItem,
99
type ShareVisibility,
10+
type QueuedMessage,
1011
marketplaceItemSchema,
1112
} from "@roo-code/types"
1213

@@ -22,6 +23,8 @@ export interface UpdateTodoListPayload {
2223
todos: any[]
2324
}
2425

26+
export type EditQueuedMessagePayload = Pick<QueuedMessage, "id" | "text" | "images">
27+
2528
export interface WebviewMessage {
2629
type:
2730
| "updateTodoList"
@@ -48,6 +51,12 @@ export interface WebviewMessage {
4851
| "followupAutoApproveTimeoutMs"
4952
| "webviewDidLaunch"
5053
| "webviewReady"
54+
| "filesChangedRequest"
55+
| "viewDiff"
56+
| "acceptFileChange"
57+
| "rejectFileChange"
58+
| "acceptAllFileChanges"
59+
| "rejectAllFileChanges"
5160
| "newTask"
5261
| "askResponse"
5362
| "terminalOperation"
@@ -83,6 +92,7 @@ export interface WebviewMessage {
8392
| "allowedMaxRequests"
8493
| "allowedMaxCost"
8594
| "alwaysAllowSubtasks"
95+
| "alwaysAllowUpdateTodoList"
8696
| "autoCondenseContext"
8797
| "autoCondenseContextPercent"
8898
| "condensingApiConfigId"
@@ -185,6 +195,7 @@ export interface WebviewMessage {
185195
| "indexCleared"
186196
| "focusPanelRequest"
187197
| "profileThresholds"
198+
| "setHistoryPreviewCollapsed"
188199
| "openExternal"
189200
| "filterMarketplaceItems"
190201
| "marketplaceButtonClicked"
@@ -195,6 +206,7 @@ export interface WebviewMessage {
195206
| "marketplaceInstallResult"
196207
| "fetchMarketplaceData"
197208
| "switchTab"
209+
| "profileThresholds"
198210
| "shareTaskSuccess"
199211
| "exportMode"
200212
| "exportModeResult"
@@ -210,23 +222,20 @@ export interface WebviewMessage {
210222
| "createCommand"
211223
| "insertTextIntoTextarea"
212224
| "showMdmAuthRequiredNotification"
213-
| "viewDiff"
214-
| "acceptFileChange"
215-
| "rejectFileChange"
216-
| "acceptAllFileChanges"
217-
| "rejectAllFileChanges"
218-
| "filesChangedEnabled"
219-
| "filesChangedRequest"
220-
| "filesChangedBaselineUpdate"
221225
| "imageGenerationSettings"
222226
| "openRouterImageApiKey"
223227
| "openRouterImageGenerationSelectedModel"
228+
| "queueMessage"
229+
| "removeQueuedMessage"
230+
| "editQueuedMessage"
224231
text?: string
225232
editedMessageContent?: string
226233
tab?: "settings" | "history" | "mcp" | "modes" | "chat" | "marketplace" | "cloud"
227234
disabled?: boolean
228235
context?: string
229236
dataUri?: string
237+
uri?: string
238+
uris?: string[]
230239
askResponse?: ClineAskResponse
231240
apiConfiguration?: ProviderSettings
232241
images?: string[]
@@ -291,17 +300,6 @@ export interface WebviewMessage {
291300
codebaseIndexMistralApiKey?: string
292301
codebaseIndexVercelAiGatewayApiKey?: string
293302
}
294-
command?: string // Added for new message types sent from webview
295-
uri?: string // Added for file URIs in new message types
296-
uris?: string[] // For rejectAllFileChanges to specify which files to reject
297-
baseline?: string // For filesChangedBaselineUpdate message
298-
fileChanges?: Array<{ uri: string; type: string }> // For filesChangedRequest message
299-
}
300-
301-
export interface Terminal {
302-
pid: number
303-
name: string
304-
cwd: string
305303
}
306304

307305
export const checkoutDiffPayloadSchema = z.object({
@@ -347,6 +345,4 @@ export type WebViewMessagePayload =
347345
| IndexClearedPayload
348346
| InstallMarketplaceItemWithParametersPayload
349347
| UpdateTodoListPayload
350-
351-
// Alias for consistent naming (prefer 'Webview' spelling in new code)
352-
export type WebviewMessagePayload = WebViewMessagePayload
348+
| EditQueuedMessagePayload

0 commit comments

Comments
 (0)