UNPKG

@sprucelabs/spruce-cli

Version:

Command line interface for building Spruce skills.

71 lines 3.11 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const AgentWriter_1 = __importDefault(require("../features/agent/writers/AgentWriter")); const ConversationWriter_1 = __importDefault(require("../features/conversation/writers/ConversationWriter")); const DeployWriter_1 = __importDefault(require("../features/deploy/writers/DeployWriter")); const ErrorWriter_1 = __importDefault(require("../features/error/writers/ErrorWriter")); const EventWriter_1 = __importDefault(require("../features/event/writers/EventWriter")); const LogWriter_1 = __importDefault(require("../features/log/writers/LogWriter")); const NodeWriter_1 = __importDefault(require("../features/node/writers/NodeWriter")); const PermissionWriter_1 = __importDefault(require("../features/permission/writers/PermissionWriter")); const PolishWriter_1 = __importDefault(require("../features/polish/writers/PolishWriter")); const SandboxWriter_1 = __importDefault(require("../features/sandbox/writers/SandboxWriter")); const SchemaWriter_1 = __importDefault(require("../features/schema/writers/SchemaWriter")); const SkillWriter_1 = __importDefault(require("../features/skill/writers/SkillWriter")); const StoreWriter_1 = __importDefault(require("../features/store/writers/StoreWriter")); const TestWriter_1 = __importDefault(require("../features/test/writers/TestWriter")); const ViewWriter_1 = __importDefault(require("../features/view/writers/ViewWriter")); const VsCodeWriter_1 = __importDefault(require("../features/vscode/writers/VsCodeWriter")); const classMap = { error: ErrorWriter_1.default, event: EventWriter_1.default, schema: SchemaWriter_1.default, skill: SkillWriter_1.default, test: TestWriter_1.default, agent: AgentWriter_1.default, node: NodeWriter_1.default, vscode: VsCodeWriter_1.default, conversation: ConversationWriter_1.default, deploy: DeployWriter_1.default, sandbox: SandboxWriter_1.default, store: StoreWriter_1.default, view: ViewWriter_1.default, log: LogWriter_1.default, polish: PolishWriter_1.default, permission: PermissionWriter_1.default, }; class WriterFactory { templates; ui; linter; settings; static classMap = classMap; constructor(options) { const { templates, ui, linter, settings } = options; this.templates = templates; this.ui = ui; this.linter = linter; this.settings = settings; } static reset() { this.classMap = classMap; } static setWriterClass(code, writer) { this.classMap[code] = writer; } Writer(code, options) { const Class = WriterFactory.classMap[code]; return new Class({ templates: this.templates, term: this.ui, linter: this.linter, settings: this.settings, ...(options || {}), }); } } exports.default = WriterFactory; //# sourceMappingURL=WriterFactory.js.map