@nanocollective/nanocoder
Version:
A local-first CLI coding agent that brings the power of agentic coding tools like Claude Code and Gemini CLI to local models or controlled APIs like OpenRouter
37 lines • 2.54 kB
JavaScript
import { jsx as _jsx } from "react/jsx-runtime";
import { ModelDatabaseDisplay } from '../../commands/model-database.js';
import CheckpointSelector from '../../components/checkpoint-selector.js';
import ModelSelector from '../../components/model-selector.js';
import ProviderSelector from '../../components/provider-selector.js';
import { McpWizard } from '../../wizards/mcp-wizard.js';
import { ProviderWizard } from '../../wizards/provider-wizard.js';
import { SettingsSelector } from './settings-selector.js';
/**
* Renders the appropriate modal selector based on current application mode
* Returns null if no modal is active
*/
export function ModalSelectors({ isModelSelectionMode, isProviderSelectionMode, isModelDatabaseMode, isConfigWizardMode, isMcpWizardMode, isCheckpointLoadMode, isSettingsMode, client, currentModel, currentProvider, checkpointLoadData, onModelSelect, onModelSelectionCancel, onProviderSelect, onProviderSelectionCancel, onModelDatabaseCancel, onConfigWizardComplete, onConfigWizardCancel, onMcpWizardComplete, onMcpWizardCancel, onCheckpointSelect, onCheckpointCancel, onSettingsCancel, }) {
if (isModelSelectionMode) {
return (_jsx(ModelSelector, { client: client, currentModel: currentModel, onModelSelect: model => void onModelSelect(model), onCancel: onModelSelectionCancel }));
}
if (isProviderSelectionMode) {
return (_jsx(ProviderSelector, { currentProvider: currentProvider, onProviderSelect: provider => void onProviderSelect(provider), onCancel: onProviderSelectionCancel }));
}
if (isSettingsMode) {
return _jsx(SettingsSelector, { onCancel: onSettingsCancel });
}
if (isModelDatabaseMode) {
return _jsx(ModelDatabaseDisplay, { onCancel: onModelDatabaseCancel });
}
if (isConfigWizardMode) {
return (_jsx(ProviderWizard, { projectDir: process.cwd(), onComplete: configPath => void onConfigWizardComplete(configPath), onCancel: onConfigWizardCancel }));
}
if (isMcpWizardMode) {
return (_jsx(McpWizard, { projectDir: process.cwd(), onComplete: configPath => void onMcpWizardComplete(configPath), onCancel: onMcpWizardCancel }));
}
if (isCheckpointLoadMode && checkpointLoadData) {
return (_jsx(CheckpointSelector, { checkpoints: checkpointLoadData.checkpoints, currentMessageCount: checkpointLoadData.currentMessageCount, onSelect: (name, backup) => void onCheckpointSelect(name, backup), onCancel: onCheckpointCancel }));
}
return null;
}
//# sourceMappingURL=modal-selectors.js.map