UNPKG

@rxap/plugin-localazy

Version:

This package provides executors and generators for integrating Localazy, a translation management platform, into Nx workspaces. It allows for downloading and uploading translations, managing configuration, and initializing Localazy within a project. The p

46 lines 2.39 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.configGenerator = configGenerator; const tslib_1 = require("tslib"); const devkit_1 = require("@nx/devkit"); const workspace_utilities_1 = require("@rxap/workspace-utilities"); const path_1 = require("path"); function configGenerator(tree, options) { return tslib_1.__awaiter(this, void 0, void 0, function* () { var _a; var _b; const projectSourceRoot = (0, workspace_utilities_1.GetProjectSourceRoot)(tree, options.project); if (!projectSourceRoot) { throw new Error(`Could not find project source root for project: ${options.project}`); } const projectRoot = (0, workspace_utilities_1.GetProjectRoot)(tree, options.project); if (!projectRoot) { throw new Error(`Could not find project root for project: ${options.project}`); } (0, workspace_utilities_1.CoerceFilesStructure)(tree, { srcFolder: (0, path_1.join)(__dirname, 'files'), target: projectRoot, overwrite: options.overwrite, }); const projectConfiguration = (0, devkit_1.readProjectConfiguration)(tree, options.project); if (projectConfiguration.targets['extract-i18n']) { (_a = (_b = projectConfiguration.targets['extract-i18n']).options) !== null && _a !== void 0 ? _a : (_b.options = {}); projectConfiguration.targets['extract-i18n'].options.format = 'xliff2'; projectConfiguration.targets['extract-i18n'].options.outputPath = (0, path_1.join)(projectSourceRoot, 'i18n'); } if (options.readKey) { (0, workspace_utilities_1.CoerceTarget)(projectConfiguration, 'localazy-download', { options: { readKey: options.readKey, } }); } (0, devkit_1.updateProjectConfiguration)(tree, options.project, projectConfiguration); (0, workspace_utilities_1.UpdateNxJson)(tree, nxJson => { (0, workspace_utilities_1.CoerceTargetDefaultsDependency)(nxJson, '@angular-devkit/build-angular:browser', 'localazy-download'); }); (0, workspace_utilities_1.CoerceIgnorePattern)(tree, (0, path_1.join)(projectSourceRoot, '.gitignore'), ['/i18n']); }); } exports.default = configGenerator; //# sourceMappingURL=generator.js.map