UNPKG

@pmeig/srv-cli

Version:

A powerful command-line interface for the @pmeig/srv framework ecosystem. Provides project scaffolding, code generation, build automation, and development tools for creating and managing framework-based applications and libraries.

44 lines 1.7 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.NoopContext = void 0; const cli_context_1 = require("./server/cli.context"); const runner_1 = require("./runner/runner"); const runner_helper_1 = require("./runner/runner.helper"); const node_process_1 = require("node:process"); exports.NoopContext = { type: 'noop', name: 'noop', projects: {}, architecture: {}, location: { root: '' }, assets: [] }; const main = async (params) => { const request = params.shift(); if (request) { const contextMetadata = (0, cli_context_1.findContext)(process.cwd()); if (contextMetadata.context) { if (contextMetadata.context.type === 'application') { contextMetadata.context.projects['main'] = contextMetadata.context; params.unshift('main'); } else if (params.length === 0) { params.unshift((Object.entries(contextMetadata.context.projects ?? {}).find(([_, project]) => project.type === 'application') ?? ['main'])[0]); } } const runner = runner_1.Runner[request]; if (runner) { const parameters = (0, runner_helper_1.extractParameters)(params, runner.parameters, contextMetadata.context?.projects ?? {}); return runner.run(contextMetadata.context ?? exports.NoopContext, parameters.cli, contextMetadata.rootProject, ...parameters.command); } } }; (async () => await main(process.argv.slice(2)) .then(() => (0, node_process_1.exit)(0)) .catch(error => { console.error(error); (0, node_process_1.exit)(1); }))(); //# sourceMappingURL=index.js.map