UNPKG

@criticalmanufacturing/dev-i18n-transform

Version:
47 lines 1.59 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const path = require("path"); const duplicatedTranslations_validator_1 = require("./duplicatedTranslations.validator"); class ValidatorFactory { /** * Gets all the validators for specified language. * * @param pack Package to validate */ static getValidators(pack) { let validators = []; let language; if (pack.files != null && pack.files.length > 0) { language = path.extname(pack.files[0].uniqueFileName); } else { return validators; } switch (language) { case ".ts": validators.push(new duplicatedTranslations_validator_1.DuplicatedTranslationsValidator(pack)); break; case ".po": // none yet break; default: throw new Error("Not Implemented Yet"); } return validators; } /** * Validates all files of given package. * * @param pack Package to validate */ static validate(pack) { // Get validators for language let validators = ValidatorFactory.getValidators(pack); // Call all validators and collect results let validationResults = validators.map((validator) => validator.validate()); // Flatten results and return return [].concat.apply([], validationResults); } } exports.ValidatorFactory = ValidatorFactory; //# sourceMappingURL=index.js.map