@designliquido/foles
Version:
Linguagem de folhas de estilo para documentos em geral em português
41 lines (39 loc) • 2.19 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.validarValoresAdicionais = validarValoresAdicionais;
const globais_1 = require("../atributos/globais");
function validarValoresAdicionais(nomePropriedade, valores, valoresAdicionais, valoresAceitos) {
const valorTipado = valores[0];
const valorModificador = valorTipado.qualitativo;
let valoresCss = [];
if (valoresAceitos) {
valoresCss = Object.values(valoresAceitos);
}
const valoresGlobaisCss = Object.values(globais_1.valoresGlobais);
valoresGlobaisCss.forEach((valor) => valoresCss.push(valor));
if (valoresAceitos !== null) {
if (!(valorModificador in valoresAdicionais) &&
!(valorModificador in valoresAceitos) &&
!(valoresCss.includes(valorModificador)) &&
!(valorModificador in globais_1.valoresGlobais)) {
throw new Error(`Modificador ou variável '${nomePropriedade}' com valor ${valorModificador} inválido. Valores FolEs aceitos:
${Object.keys(valoresAdicionais).reduce((final, atual) => (final += `, ${atual}`))},
${Object.keys(valoresAceitos).reduce((final, atual) => (final += `, ${atual}`))},
${Object.keys(globais_1.valoresGlobais).reduce((final, atual) => (final += `, ${atual}`))}.
Valores CSS aceitos:
${valoresCss.reduce((final, atual) => (final += `, ${atual}`))}.`);
}
}
else {
if (!(valorModificador in valoresAdicionais) &&
!(valoresCss.includes(valorModificador)) &&
!(valorModificador in globais_1.valoresGlobais)) {
throw new Error(`Modificador ou variável '${nomePropriedade}' com valor ${valorModificador} inválido. Valores FolEs aceitos:
${Object.keys(valoresAdicionais).reduce((final, atual) => (final += `, ${atual}`))},
${Object.keys(globais_1.valoresGlobais).reduce((final, atual) => (final += `, ${atual}`))}.
Valores CSS aceitos:
${valoresCss.reduce((final, atual) => (final += `, ${atual}`))}.`);
}
}
}
//# sourceMappingURL=condicao-extra.js.map