mirror of
https://github.com/Kilo-Org/kilocode.git
synced 2026-08-28 19:11:03 +08:00
refactor(vscode): reorganize webview component folder structure
Move loose root-level components into feature folders and extract cross-feature reusable components into a shared/ layer: - components/profile/ — ProfileView + DeviceAuthCard (was at root) - components/settings/Settings.tsx — moved from root into settings/ - components/shared/ — ModelSelector, ModeSwitcher, ThinkingSelector, WorkingIndicator, model-selector-utils (extracted from chat/) Fixes the cross-folder coupling where settings/ProvidersTab and agent-manager/ imported from chat/ for reusable selector components. Update all import paths in App.tsx, PromptInput, MessageList, ProvidersTab, AgentManagerApp, MultiModelSelector, and settings/index.ts.
This commit is contained in:
@@ -58,8 +58,8 @@ import { ConfigProvider } from "../src/context/config"
|
||||
import { SessionProvider, useSession } from "../src/context/session"
|
||||
import { WorktreeModeProvider } from "../src/context/worktree-mode"
|
||||
import { ChatView } from "../src/components/chat"
|
||||
import { ModelSelectorBase } from "../src/components/chat/ModelSelector"
|
||||
import { ModeSwitcherBase } from "../src/components/chat/ModeSwitcher"
|
||||
import { ModelSelectorBase } from "../src/components/shared/ModelSelector"
|
||||
import { ModeSwitcherBase } from "../src/components/shared/ModeSwitcher"
|
||||
import {
|
||||
MultiModelSelector,
|
||||
type ModelAllocations,
|
||||
|
||||
@@ -3,7 +3,7 @@ import { Icon } from "@kilocode/kilo-ui/icon"
|
||||
import { useProvider } from "../src/context/provider"
|
||||
import type { EnrichedModel } from "../src/context/provider"
|
||||
import { useLanguage } from "../src/context/language"
|
||||
import { KILO_GATEWAY_ID, providerSortKey } from "../src/components/chat/model-selector-utils"
|
||||
import { KILO_GATEWAY_ID, providerSortKey } from "../src/components/shared/model-selector-utils"
|
||||
import {
|
||||
type ModelAllocations,
|
||||
MAX_MULTI_VERSIONS,
|
||||
|
||||
@@ -8,8 +8,8 @@ import { Code } from "@kilocode/kilo-ui/code"
|
||||
import { Diff } from "@kilocode/kilo-ui/diff"
|
||||
import { DataProvider } from "@kilocode/kilo-ui/context/data"
|
||||
import { Toast } from "@kilocode/kilo-ui/toast"
|
||||
import Settings from "./components/Settings"
|
||||
import ProfileView from "./components/ProfileView"
|
||||
import Settings from "./components/settings/Settings"
|
||||
import ProfileView from "./components/profile/ProfileView"
|
||||
import { VSCodeProvider, useVSCode } from "./context/vscode"
|
||||
import { ServerProvider, useServer } from "./context/server"
|
||||
import { ProviderProvider, useProvider } from "./context/provider"
|
||||
|
||||
@@ -18,7 +18,7 @@ import { useLanguage } from "../../context/language"
|
||||
import { formatRelativeDate } from "../../utils/date"
|
||||
import { CloudImportDialog } from "./CloudImportDialog"
|
||||
import { VscodeSessionTurn } from "./VscodeSessionTurn"
|
||||
import { WorkingIndicator } from "./WorkingIndicator"
|
||||
import { WorkingIndicator } from "../shared/WorkingIndicator"
|
||||
|
||||
const KiloLogo = (): JSX.Element => {
|
||||
const iconsBaseUri = (window as { ICONS_BASE_URI?: string }).ICONS_BASE_URI || ""
|
||||
|
||||
@@ -11,9 +11,9 @@ import { useSession } from "../../context/session"
|
||||
import { useServer } from "../../context/server"
|
||||
import { useLanguage } from "../../context/language"
|
||||
import { useVSCode } from "../../context/vscode"
|
||||
import { ModelSelector } from "./ModelSelector"
|
||||
import { ModeSwitcher } from "./ModeSwitcher"
|
||||
import { ThinkingSelector } from "./ThinkingSelector"
|
||||
import { ModelSelector } from "../shared/ModelSelector"
|
||||
import { ModeSwitcher } from "../shared/ModeSwitcher"
|
||||
import { ThinkingSelector } from "../shared/ThinkingSelector"
|
||||
import { useFileMention } from "../../hooks/useFileMention"
|
||||
import { useImageAttachments } from "../../hooks/useImageAttachments"
|
||||
import { fileName, dirName, buildHighlightSegments } from "./prompt-input-utils"
|
||||
|
||||
+4
-4
@@ -3,10 +3,10 @@ import { Button } from "@kilocode/kilo-ui/button"
|
||||
import { Card } from "@kilocode/kilo-ui/card"
|
||||
import { Spinner } from "@kilocode/kilo-ui/spinner"
|
||||
import { showToast } from "@kilocode/kilo-ui/toast"
|
||||
import { useVSCode } from "../context/vscode"
|
||||
import { useLanguage } from "../context/language"
|
||||
import { generateQRCode } from "../utils/qrcode"
|
||||
import type { DeviceAuthStatus } from "../types/messages"
|
||||
import { useVSCode } from "../../context/vscode"
|
||||
import { useLanguage } from "../../context/language"
|
||||
import { generateQRCode } from "../../utils/qrcode"
|
||||
import type { DeviceAuthStatus } from "../../types/messages"
|
||||
|
||||
interface DeviceAuthCardProps {
|
||||
status: DeviceAuthStatus
|
||||
+3
-3
@@ -4,10 +4,10 @@ import { Card } from "@kilocode/kilo-ui/card"
|
||||
import { Icon } from "@kilocode/kilo-ui/icon"
|
||||
import { Select } from "@kilocode/kilo-ui/select"
|
||||
import { Tooltip } from "@kilocode/kilo-ui/tooltip"
|
||||
import { useVSCode } from "../context/vscode"
|
||||
import { useLanguage } from "../context/language"
|
||||
import { useVSCode } from "../../context/vscode"
|
||||
import { useLanguage } from "../../context/language"
|
||||
import DeviceAuthCard from "./DeviceAuthCard"
|
||||
import type { ProfileData, DeviceAuthState } from "../types/messages"
|
||||
import type { ProfileData, DeviceAuthState } from "../../types/messages"
|
||||
|
||||
export type { ProfileData }
|
||||
|
||||
@@ -6,7 +6,7 @@ import { IconButton } from "@kilocode/kilo-ui/icon-button"
|
||||
import { useConfig } from "../../context/config"
|
||||
import { useProvider } from "../../context/provider"
|
||||
import { useLanguage } from "../../context/language"
|
||||
import { ModelSelectorBase } from "../chat/ModelSelector"
|
||||
import { ModelSelectorBase } from "../shared/ModelSelector"
|
||||
import type { ModelSelection } from "../../types/messages"
|
||||
import SettingsRow from "./SettingsRow"
|
||||
|
||||
|
||||
+16
-16
@@ -3,22 +3,22 @@ import { Button } from "@kilocode/kilo-ui/button"
|
||||
import { Icon } from "@kilocode/kilo-ui/icon"
|
||||
import { Tabs } from "@kilocode/kilo-ui/tabs"
|
||||
import { Tooltip } from "@kilocode/kilo-ui/tooltip"
|
||||
import { useLanguage } from "../context/language"
|
||||
import ProvidersTab from "./settings/ProvidersTab"
|
||||
import AgentBehaviourTab from "./settings/AgentBehaviourTab"
|
||||
import AutoApproveTab from "./settings/AutoApproveTab"
|
||||
import BrowserTab from "./settings/BrowserTab"
|
||||
import CheckpointsTab from "./settings/CheckpointsTab"
|
||||
import DisplayTab from "./settings/DisplayTab"
|
||||
import AutocompleteTab from "./settings/AutocompleteTab"
|
||||
import NotificationsTab from "./settings/NotificationsTab"
|
||||
import ContextTab from "./settings/ContextTab"
|
||||
import TerminalTab from "./settings/TerminalTab"
|
||||
import PromptsTab from "./settings/PromptsTab"
|
||||
import ExperimentalTab from "./settings/ExperimentalTab"
|
||||
import LanguageTab from "./settings/LanguageTab"
|
||||
import AboutKiloCodeTab from "./settings/AboutKiloCodeTab"
|
||||
import { useServer } from "../context/server"
|
||||
import { useLanguage } from "../../context/language"
|
||||
import ProvidersTab from "./ProvidersTab"
|
||||
import AgentBehaviourTab from "./AgentBehaviourTab"
|
||||
import AutoApproveTab from "./AutoApproveTab"
|
||||
import BrowserTab from "./BrowserTab"
|
||||
import CheckpointsTab from "./CheckpointsTab"
|
||||
import DisplayTab from "./DisplayTab"
|
||||
import AutocompleteTab from "./AutocompleteTab"
|
||||
import NotificationsTab from "./NotificationsTab"
|
||||
import ContextTab from "./ContextTab"
|
||||
import TerminalTab from "./TerminalTab"
|
||||
import PromptsTab from "./PromptsTab"
|
||||
import ExperimentalTab from "./ExperimentalTab"
|
||||
import LanguageTab from "./LanguageTab"
|
||||
import AboutKiloCodeTab from "./AboutKiloCodeTab"
|
||||
import { useServer } from "../../context/server"
|
||||
|
||||
export interface SettingsProps {
|
||||
onBack?: () => void
|
||||
@@ -1,3 +1,4 @@
|
||||
export { default as Settings } from "./Settings"
|
||||
export { default as ProvidersTab } from "./ProvidersTab"
|
||||
export { default as AgentBehaviourTab } from "./AgentBehaviourTab"
|
||||
export { default as AutoApproveTab } from "./AutoApproveTab"
|
||||
|
||||
Reference in New Issue
Block a user