liquido
Version:
Conjunto de ferramentas para desenvolvimento de aplicações para a internet 100% em português
56 lines • 3.23 kB
JavaScript
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const prompts_1 = __importDefault(require("prompts"));
const declaracoes_1 = require("@designliquido/delegua/declaracoes");
const flexoes_1 = require("@designliquido/flexoes");
const gerar_1 = require("./interface-linha-comando/gerar");
const gerador_visoes_1 = require("./interface-linha-comando/gerar/gerador-visoes");
const gerador_rotas_1 = require("./interface-linha-comando/gerar/gerador-rotas");
const pontoDeEntradaGerar = async (argumentos) => {
// argumentos[0] normalmente é o nome do executável, seja Node, Bun, etc.
// argumentos[1] é o nome do arquivo deste ponto de entrada.
// argumentos[2] é o nome do modelo correspondente. Se vir vazio, perguntar o nome.
let nomeModelo = argumentos[2];
if (nomeModelo === undefined || nomeModelo.length <= 0) {
const opcoesModelos = (0, gerar_1.obterTodosModelos)();
const respostaNomeModelo = await (0, prompts_1.default)({
type: 'select',
name: 'nomeModelo',
message: 'Qual o nome do modelo?',
choices: opcoesModelos
});
nomeModelo = respostaNomeModelo.nomeModelo;
}
const declaracoes = (0, gerar_1.importarModelos)(nomeModelo);
(0, gerar_1.criarDiretorioSeNaoExiste)('rotas');
const geradorVisoes = new gerador_visoes_1.GeradorVisoes();
const geradorRotas = new gerador_rotas_1.GeradorRotas();
// Aqui apenas aceitamos declarações de classes. Pode ser mais de uma.
for (const declaracao of declaracoes.filter((d) => d instanceof declaracoes_1.Classe)) {
const declaracaoModelo = declaracao;
const nomeBaseModelo = declaracaoModelo.simbolo.lexema.toLocaleLowerCase('pt');
const nomeModeloPlural = (0, flexoes_1.pluralizar)(nomeBaseModelo).toLocaleLowerCase('pt');
const caminhosRotas = geradorRotas.criarNovasRotas(declaracaoModelo);
for (const caminhoRota of caminhosRotas) {
console.info(`Rota ${caminhoRota}`);
}
// Visões
(0, gerar_1.criarDiretorioSeNaoExiste)('visoes');
(0, gerar_1.criarDiretorioSeNaoExiste)('visoes', nomeModeloPlural);
const visaoSelecionarTudo = geradorVisoes.criarNovaVisao(nomeModeloPlural, declaracaoModelo, 'selecionarTudo');
console.info(`Visão ${visaoSelecionarTudo}`);
const visaoSelecionarUm = geradorVisoes.criarNovaVisao(nomeModeloPlural, declaracaoModelo, 'selecionarUm');
console.info(`Visão ${visaoSelecionarUm}`);
const visaoAdicionar = geradorVisoes.criarNovaVisao(nomeModeloPlural, declaracaoModelo, 'adicionar');
console.info(`Visão ${visaoAdicionar}`);
const visaoEditar = geradorVisoes.criarNovaVisao(nomeModeloPlural, declaracaoModelo, 'editar');
console.info(`Visão ${visaoEditar}`);
const visaoExcluir = geradorVisoes.criarNovaVisao(nomeModeloPlural, declaracaoModelo, 'excluir');
console.info(`Visão ${visaoExcluir}`);
}
};
pontoDeEntradaGerar(process.argv);
//# sourceMappingURL=index-gerar.js.map
;