UNPKG

@nstudio/web-angular

Version:

Web Angular Plugin for xplat

68 lines (67 loc) 3.6 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = default_1; const schematics_1 = require("@angular-devkit/schematics"); const xplat_1 = require("@nstudio/xplat"); const xplat_utils_1 = require("@nstudio/xplat-utils"); const xplat_2 = require("../../utils/xplat"); function default_1(options) { return (0, schematics_1.chain)([ (0, xplat_utils_1.prerun)(options, true), // (tree: Tree, context: SchematicContext) => { // if (tree.exists(`/libs/xplat/core/src/lib/index.ts`)) { // return noop(); // } else { // return externalSchematic('@nstudio/angular', 'xplat', options, { // interactive: false, // })(tree, context); // } // }, xplat_1.XplatHelpers.generateLib(options, 'core', 'xplat/web', 'jsdom'), xplat_1.XplatHelpers.cleanupLib(options, 'core', 'xplat/web'), xplat_1.XplatHelpers.generateLib(options, 'features', 'xplat/web', 'jsdom'), xplat_1.XplatHelpers.cleanupLib(options, 'features', 'xplat/web'), xplat_1.XplatHelpers.generateLib(options, 'scss', 'xplat/web', 'jsdom'), xplat_1.XplatHelpers.cleanupLib(options, 'scss', 'xplat/web'), (tree, context) => { const xplatFolderName = xplat_1.XplatHelpers.getXplatFoldername('web', 'angular'); // console.log('xplatName:', xplatName); return options.skipDependentPlatformFiles ? (0, schematics_1.noop)() : xplat_1.XplatHelpers.addPlatformFiles(options, xplatFolderName, 'core', 'index.ts')(tree, context); }, (tree, context) => { const xplatFolderName = xplat_1.XplatHelpers.getXplatFoldername('web', 'angular'); // console.log('xplatName:', xplatName); return options.skipDependentPlatformFiles ? (0, schematics_1.noop)() : xplat_1.XplatHelpers.addPlatformFiles(options, xplatFolderName, 'features', 'index.ts')(tree, context); }, (tree, context) => { const xplatFolderName = xplat_1.XplatHelpers.getXplatFoldername('web', 'angular'); if (tree.exists(`/libs/xplat/${xplatFolderName}/scss/src/_index.scss`)) { // may have already generated web support return (0, schematics_1.noop)()(tree, context); } else { return (0, schematics_1.branchAndMerge)((0, schematics_1.mergeWith)((0, schematics_1.apply)((0, schematics_1.url)(`./_files_platform_scss`), [ (0, schematics_1.template)(Object.assign(Object.assign({}, options), (0, xplat_1.getDefaultTemplateOptions)())), (0, schematics_1.move)(`libs/xplat/${xplatFolderName}/scss/src`), ])))(tree, context); } }, (tree, context) => { if (tree.exists('/libs/xplat/scss/src/_index.scss')) { // user may have generated support already return (0, schematics_1.noop)()(tree, context); } else { return (0, schematics_1.branchAndMerge)((0, schematics_1.mergeWith)((0, schematics_1.apply)((0, schematics_1.url)(`./_files_lib_scss`), [ (0, schematics_1.template)(Object.assign(Object.assign({}, options), (0, xplat_1.getDefaultTemplateOptions)())), (0, schematics_1.move)('libs/xplat/scss/src'), ])))(tree, context); } }, xplat_2.XplatWebAngularHelpers.updateRootDeps(options), ]); }