UNPKG

@brasil-interface/cli

Version:
112 lines 5.57 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const utils_1 = require("@brasil-interface/utils"); const commander_1 = require("commander"); const input_helper_1 = require("../../helpers/input-helper"); const output_helper_1 = require("../../helpers/output-helper"); const cpf = commander_1.program.command("cpf").description("CPF utilities."); cpf .command("validate <cpfList>") .description("PT-BR: Valida uma lista de números de CPF. EN-US: Validate a list of CPF numbers.") .option("-i, --input <filepath>", "PT-BR: Caminho do arquivo de input. EN-US: Input file path") .option("-o, --output <filepath>", "PT-BR: Caminho do arquivo de output. EN-US: Output file path") .option("-c, --copy", "PT-BR: Copia o resultado para a área de transferência. EN-US: Copy the result to the clipboard.") .action((cpfList, options) => { const { input, output, copy } = options; const cpfArray = input_helper_1.InputHelper.getArrayFromInputAlternativesOrFail(cpfList, { input, }); const result = cpfArray.map((cpf) => { return { value: cpf, isValid: utils_1.CPF.isValid(cpf) }; }); output_helper_1.OutputHelper.handleResultOutputBasedOnOptions(result, { output, isJson: true, copyToClipboard: copy, }); }); cpf .command("generate") .description("PT-BR: Gera um número de CPF. EN-US: Generate a CPF number.") .option("-a --amount <amount>", "PT-BR: Gera uma quantidade de números de CPF. EN-US: Generate an amount of CPF numbers.", "1") .option("-m --mask", "PT-BR: Formata o número de CPF. EN-US: Mask the CPF number.") .option("-o --output <filepath>", "PT-BR: Salva o resultado (array) em um arquivo JSON. EN-US: Save the result (array) in a JSON file.") .option("-c, --copy", "PT-BR: Copia o resultado para a área de transferência. EN-US: Copy the result to the clipboard.") .action((options) => { const { amount, mask, output, copy } = options; const cpfList = []; for (let i = 0; i < parseInt(amount); i++) { const cpf = mask ? utils_1.CPF.generateMasked() : utils_1.CPF.generate(); cpfList.push(cpf); } output_helper_1.OutputHelper.handleResultOutputBasedOnOptions(cpfList, { output, isJson: true, copyToClipboard: copy, }); }); cpf .command("mask <cpfList>") .description("PT-BR: Formata uma lista de números de CPF. EN-US: Mask a list of CPF numbers.") .option("-s --sensitive", "PT-BR: Trata o número de CPF como sensível. Adicionando asteriscos no lugar de alguns dígitos. EN-US: Treat the CPF number as sensitive. Adding asterisks in place of some digits.") .option("-i, --input <filepath>", "PT-BR: Caminho do arquivo de input. EN-US: Input file path") .option("-o, --output <filepath>", "PT-BR: Caminho do arquivo de output. EN-US: Output file path") .option("-c, --copy", "PT-BR: Copia o resultado para a área de transferência. EN-US: Copy the result to the clipboard.") .action((cpfList, options) => { const { sensitive, input, output, copy } = options; const cpfArray = input_helper_1.InputHelper.getArrayFromInputAlternativesOrFail(cpfList, { input, }); const result = cpfArray.map((cpf) => { return { value: cpf, masked: sensitive ? utils_1.CPF.maskSensitive(cpf) : utils_1.CPF.mask(cpf), }; }); output_helper_1.OutputHelper.handleResultOutputBasedOnOptions(result, { output, isJson: true, copyToClipboard: copy, }); }); cpf .command("unmask <cpfList>") .description("PT-BR: Remove a formatação de uma lista de números de CPF. EN-US: Unmask a list of CPF numbers.") .option("-i, --input <filepath>", "PT-BR: Caminho do arquivo de input. EN-US: Input file path") .option("-o, --output <filepath>", "PT-BR: Caminho do arquivo de output. EN-US: Output file path") .option("-c, --copy", "PT-BR: Copia o resultado para a área de transferência. EN-US: Copy the result to the clipboard.") .action((cpfList, options) => { const { input, output, copy } = options; const cpfArray = input_helper_1.InputHelper.getArrayFromInputAlternativesOrFail(cpfList, { input, }); const result = cpfArray.map((cpf) => { return { value: cpf, unmasked: utils_1.CPF.unmask(cpf) }; }); output_helper_1.OutputHelper.handleResultOutputBasedOnOptions(result, { output, isJson: true, copyToClipboard: copy, }); }); cpf .command("get-estados <cpfList>") .description("PT-BR: Retorna os estados atrelados a uma lista de números de CPF. EN-US: Returns the states linked to a list of CPF numbers.") .option("-i, --input <filepath>", "PT-BR: Caminho do arquivo de input. EN-US: Input file path") .option("-o, --output <filepath>", "PT-BR: Caminho do arquivo de output. EN-US: Output file path") .option("-c, --copy", "PT-BR: Copia o resultado para a área de transferência. EN-US: Copy the result to the clipboard.") .action((cpfList, options) => { const { input, output, copy } = options; const cpfArray = input_helper_1.InputHelper.getArrayFromInputAlternativesOrFail(cpfList, { input, }); const result = cpfArray.map((cpf) => { return { value: cpf, estado: utils_1.CPF.getEstado(cpf) }; }); output_helper_1.OutputHelper.handleResultOutputBasedOnOptions(result, { output, isJson: true, copyToClipboard: copy, }); }); //# sourceMappingURL=cpf.js.map