Reorganize file structure: core/, utils/, modes/interactive/components/, modes/interactive/theme/

This commit is contained in:
Mario Zechner 2025-12-09 00:51:33 +01:00
parent 00982705f2
commit 83a6c26969
56 changed files with 133 additions and 128 deletions

View file

@ -22,31 +22,31 @@ import {
visibleWidth,
} from "@mariozechner/pi-tui";
import { exec } from "child_process";
import { getChangelogPath, parseChangelog } from "../../changelog.js";
import { copyToClipboard } from "../../clipboard.js";
import { APP_NAME, getDebugLogPath, getOAuthPath } from "../../config.js";
import type { AgentSession } from "../../core/agent-session.js";
import { type BashExecutionMessage, isBashExecutionMessage } from "../../messages.js";
import { invalidateOAuthCache } from "../../model-config.js";
import { listOAuthProviders, login, logout, type SupportedOAuthProvider } from "../../oauth/index.js";
import { getLatestCompactionEntry, SUMMARY_PREFIX, SUMMARY_SUFFIX } from "../../session-manager.js";
import { getEditorTheme, getMarkdownTheme, onThemeChange, setTheme, theme } from "../../theme/theme.js";
import type { TruncationResult } from "../../tools/truncate.js";
import { AssistantMessageComponent } from "../../tui/assistant-message.js";
import { BashExecutionComponent } from "../../tui/bash-execution.js";
import { CompactionComponent } from "../../tui/compaction.js";
import { CustomEditor } from "../../tui/custom-editor.js";
import { DynamicBorder } from "../../tui/dynamic-border.js";
import { FooterComponent } from "../../tui/footer.js";
import { ModelSelectorComponent } from "../../tui/model-selector.js";
import { OAuthSelectorComponent } from "../../tui/oauth-selector.js";
import { QueueModeSelectorComponent } from "../../tui/queue-mode-selector.js";
import { SessionSelectorComponent } from "../../tui/session-selector.js";
import { ThemeSelectorComponent } from "../../tui/theme-selector.js";
import { ThinkingSelectorComponent } from "../../tui/thinking-selector.js";
import { ToolExecutionComponent } from "../../tui/tool-execution.js";
import { UserMessageComponent } from "../../tui/user-message.js";
import { UserMessageSelectorComponent } from "../../tui/user-message-selector.js";
import { type BashExecutionMessage, isBashExecutionMessage } from "../../core/messages.js";
import { invalidateOAuthCache } from "../../core/model-config.js";
import { listOAuthProviders, login, logout, type SupportedOAuthProvider } from "../../core/oauth/index.js";
import { getLatestCompactionEntry, SUMMARY_PREFIX, SUMMARY_SUFFIX } from "../../core/session-manager.js";
import type { TruncationResult } from "../../core/tools/truncate.js";
import { getChangelogPath, parseChangelog } from "../../utils/changelog.js";
import { copyToClipboard } from "../../utils/clipboard.js";
import { APP_NAME, getDebugLogPath, getOAuthPath } from "../../utils/config.js";
import { AssistantMessageComponent } from "./components/assistant-message.js";
import { BashExecutionComponent } from "./components/bash-execution.js";
import { CompactionComponent } from "./components/compaction.js";
import { CustomEditor } from "./components/custom-editor.js";
import { DynamicBorder } from "./components/dynamic-border.js";
import { FooterComponent } from "./components/footer.js";
import { ModelSelectorComponent } from "./components/model-selector.js";
import { OAuthSelectorComponent } from "./components/oauth-selector.js";
import { QueueModeSelectorComponent } from "./components/queue-mode-selector.js";
import { SessionSelectorComponent } from "./components/session-selector.js";
import { ThemeSelectorComponent } from "./components/theme-selector.js";
import { ThinkingSelectorComponent } from "./components/thinking-selector.js";
import { ToolExecutionComponent } from "./components/tool-execution.js";
import { UserMessageComponent } from "./components/user-message.js";
import { UserMessageSelectorComponent } from "./components/user-message-selector.js";
import { getEditorTheme, getMarkdownTheme, onThemeChange, setTheme, theme } from "./theme/theme.js";
export class InteractiveMode {
private session: AgentSession;