@nrwl/workspace 15.7.1 → 15.8.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +1 -1
 - package/index.js +2 -2
 - package/index.js.map +1 -1
 - package/migrations.json +1 -1
 - package/package.json +30 -32
 - package/src/generators/{new/files-integrated-repo → library/files/root}/tsconfig.base.json +0 -0
 - package/src/generators/library/library.js +21 -10
 - package/src/generators/library/library.js.map +1 -1
 - package/src/generators/library/schema.d.ts +1 -1
 - package/src/generators/move/lib/update-imports.js +25 -26
 - package/src/generators/move/lib/update-imports.js.map +1 -1
 - package/src/generators/new/schema.json +1 -1
 - package/src/generators/preset/schema.json +1 -1
 - package/src/generators/remove/lib/update-jest-config.js +9 -5
 - package/src/generators/remove/lib/update-jest-config.js.map +1 -1
 - package/src/generators/remove/lib/update-tsconfig.js +2 -2
 - package/src/generators/remove/lib/update-tsconfig.js.map +1 -1
 - package/src/generators/utils/insert-import.js +9 -5
 - package/src/generators/utils/insert-import.js.map +1 -1
 - package/src/generators/utils/insert-statement.js +7 -3
 - package/src/generators/utils/insert-statement.js.map +1 -1
 - package/src/utilities/ast-utils.d.ts +1 -1
 - package/src/utilities/ast-utils.js +28 -13
 - package/src/utilities/ast-utils.js.map +1 -1
 - package/src/utilities/buildable-libs-utils.d.ts +1 -1
 - package/src/utilities/buildable-libs-utils.js +7 -3
 - package/src/utilities/buildable-libs-utils.js.map +1 -1
 - package/src/utilities/ts-config.d.ts +6 -0
 - package/src/utilities/ts-config.js +44 -0
 - package/src/utilities/ts-config.js.map +1 -0
 - package/src/utilities/typescript/compilation.d.ts +1 -1
 - package/src/utilities/typescript/compilation.js +19 -13
 - package/src/utilities/typescript/compilation.js.map +1 -1
 - package/src/utilities/typescript/get-source-nodes.d.ts +1 -1
 - package/src/utilities/typescript.d.ts +0 -7
 - package/src/utilities/typescript.js +3 -41
 - package/src/utilities/typescript.js.map +1 -1
 - package/src/utils/ast-utils.d.ts +1 -1
 - package/src/utils/ast-utils.js +28 -13
 - package/src/utils/ast-utils.js.map +1 -1
 - package/src/utils/rules/to-js.js +8 -4
 - package/src/utils/rules/to-js.js.map +1 -1
 - package/src/utils/create-ts-config.d.ts +0 -17
 - package/src/utils/create-ts-config.js +0 -48
 - package/src/utils/create-ts-config.js.map +0 -1
 
    
        package/src/utils/ast-utils.js
    CHANGED
    
    | 
         @@ -1,12 +1,12 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            "use strict";
         
     | 
| 
       2 
2 
     | 
    
         
             
            Object.defineProperty(exports, "__esModule", { value: true });
         
     | 
| 
       3 
3 
     | 
    
         
             
            exports.applyWithSkipExisting = exports.renameDirSyncInTree = exports.renameSyncInTree = exports.replaceNodeValue = exports.insertImport = exports.createOrUpdate = exports.getProjectConfig = exports.updatePackageJsonDependencies = exports.addDepsToPackageJson = exports.readWorkspace = exports.updateNxJsonInTree = exports.appsDir = exports.libsDir = exports.readNxJsonInTree = exports.updateWorkspaceInTree = exports.updateJsonInTree = exports.allFilesInDirInHost = exports.readJsonInTree = exports.insert = exports.addGlobal = exports.getImport = exports.addIncludeToTsConfig = exports.offset = exports.findClass = exports.addMethod = exports.addParameterToConstructor = exports.ReplaceChange = exports.RemoveChange = exports.InsertChange = exports.NoopChange = exports.getSourceNodes = exports.findNodes = exports.sortObjectByKeys = void 0;
         
     | 
| 
       4 
     | 
    
         
            -
            const ts = require("typescript");
         
     | 
| 
       5 
4 
     | 
    
         
             
            const devkit_1 = require("@nrwl/devkit");
         
     | 
| 
       6 
5 
     | 
    
         
             
            const cli_config_utils_1 = require("./cli-config-utils");
         
     | 
| 
       7 
6 
     | 
    
         
             
            const add_install_task_1 = require("./rules/add-install-task");
         
     | 
| 
       8 
7 
     | 
    
         
             
            const typescript_1 = require("nx/src/utils/typescript");
         
     | 
| 
       9 
8 
     | 
    
         
             
            const get_source_nodes_1 = require("../utilities/typescript/get-source-nodes");
         
     | 
| 
      
 9 
     | 
    
         
            +
            let tsModule;
         
     | 
| 
       10 
10 
     | 
    
         
             
            function nodesByPosition(first, second) {
         
     | 
| 
       11 
11 
     | 
    
         
             
                return first.getStart() - second.getStart();
         
     | 
| 
       12 
12 
     | 
    
         
             
            }
         
     | 
| 
         @@ -118,8 +118,11 @@ class ReplaceChange { 
     | 
|
| 
       118 
118 
     | 
    
         
             
            }
         
     | 
| 
       119 
119 
     | 
    
         
             
            exports.ReplaceChange = ReplaceChange;
         
     | 
| 
       120 
120 
     | 
    
         
             
            function addParameterToConstructor(source, modulePath, opts) {
         
     | 
| 
      
 121 
     | 
    
         
            +
                if (!tsModule) {
         
     | 
| 
      
 122 
     | 
    
         
            +
                    tsModule = require('typescript');
         
     | 
| 
      
 123 
     | 
    
         
            +
                }
         
     | 
| 
       121 
124 
     | 
    
         
             
                const clazz = findClass(source, opts.className);
         
     | 
| 
       122 
     | 
    
         
            -
                const constructor = clazz.members.filter((m) => m.kind ===  
     | 
| 
      
 125 
     | 
    
         
            +
                const constructor = clazz.members.filter((m) => m.kind === tsModule.SyntaxKind.Constructor)[0];
         
     | 
| 
       123 
126 
     | 
    
         
             
                if (constructor) {
         
     | 
| 
       124 
127 
     | 
    
         
             
                    throw new Error('Should be tested');
         
     | 
| 
       125 
128 
     | 
    
         
             
                }
         
     | 
| 
         @@ -148,8 +151,11 @@ ${opts.methodHeader} {} 
     | 
|
| 
       148 
151 
     | 
    
         
             
            }
         
     | 
| 
       149 
152 
     | 
    
         
             
            exports.addMethod = addMethod;
         
     | 
| 
       150 
153 
     | 
    
         
             
            function findClass(source, className, silent = false) {
         
     | 
| 
      
 154 
     | 
    
         
            +
                if (!tsModule) {
         
     | 
| 
      
 155 
     | 
    
         
            +
                    tsModule = require('typescript');
         
     | 
| 
      
 156 
     | 
    
         
            +
                }
         
     | 
| 
       151 
157 
     | 
    
         
             
                const nodes = (0, get_source_nodes_1.getSourceNodes)(source);
         
     | 
| 
       152 
     | 
    
         
            -
                const clazz = (nodes.filter((n) => n.kind ===  
     | 
| 
      
 158 
     | 
    
         
            +
                const clazz = (nodes.filter((n) => n.kind === tsModule.SyntaxKind.ClassDeclaration &&
         
     | 
| 
       153 
159 
     | 
    
         
             
                    n.name.text === className)[0]);
         
     | 
| 
       154 
160 
     | 
    
         
             
                if (!clazz && !silent) {
         
     | 
| 
       155 
161 
     | 
    
         
             
                    throw new Error(`Cannot find class '${className}'`);
         
     | 
| 
         @@ -184,7 +190,10 @@ function addIncludeToTsConfig(tsConfigPath, source, include) { 
     | 
|
| 
       184 
190 
     | 
    
         
             
            }
         
     | 
| 
       185 
191 
     | 
    
         
             
            exports.addIncludeToTsConfig = addIncludeToTsConfig;
         
     | 
| 
       186 
192 
     | 
    
         
             
            function getImport(source, predicate) {
         
     | 
| 
       187 
     | 
    
         
            -
                 
     | 
| 
      
 193 
     | 
    
         
            +
                if (!tsModule) {
         
     | 
| 
      
 194 
     | 
    
         
            +
                    tsModule = require('typescript');
         
     | 
| 
      
 195 
     | 
    
         
            +
                }
         
     | 
| 
      
 196 
     | 
    
         
            +
                const allImports = (0, typescript_1.findNodes)(source, tsModule.SyntaxKind.ImportDeclaration);
         
     | 
| 
       188 
197 
     | 
    
         
             
                const matching = allImports.filter((i) => predicate(i.moduleSpecifier.getText()));
         
     | 
| 
       189 
198 
     | 
    
         
             
                return matching.map((i) => {
         
     | 
| 
       190 
199 
     | 
    
         
             
                    const moduleSpec = i.moduleSpecifier
         
     | 
| 
         @@ -201,7 +210,10 @@ function getImport(source, predicate) { 
     | 
|
| 
       201 
210 
     | 
    
         
             
            }
         
     | 
| 
       202 
211 
     | 
    
         
             
            exports.getImport = getImport;
         
     | 
| 
       203 
212 
     | 
    
         
             
            function addGlobal(source, modulePath, statement) {
         
     | 
| 
       204 
     | 
    
         
            -
                 
     | 
| 
      
 213 
     | 
    
         
            +
                if (!tsModule) {
         
     | 
| 
      
 214 
     | 
    
         
            +
                    tsModule = require('typescript');
         
     | 
| 
      
 215 
     | 
    
         
            +
                }
         
     | 
| 
      
 216 
     | 
    
         
            +
                const allImports = (0, typescript_1.findNodes)(source, tsModule.SyntaxKind.ImportDeclaration);
         
     | 
| 
       205 
217 
     | 
    
         
             
                if (allImports.length > 0) {
         
     | 
| 
       206 
218 
     | 
    
         
             
                    const lastImport = allImports[allImports.length - 1];
         
     | 
| 
       207 
219 
     | 
    
         
             
                    return [
         
     | 
| 
         @@ -417,14 +429,17 @@ function createOrUpdate(host, path, content) { 
     | 
|
| 
       417 
429 
     | 
    
         
             
            }
         
     | 
| 
       418 
430 
     | 
    
         
             
            exports.createOrUpdate = createOrUpdate;
         
     | 
| 
       419 
431 
     | 
    
         
             
            function insertImport(source, fileToEdit, symbolName, fileName, isDefault = false) {
         
     | 
| 
      
 432 
     | 
    
         
            +
                if (!tsModule) {
         
     | 
| 
      
 433 
     | 
    
         
            +
                    tsModule = require('typescript');
         
     | 
| 
      
 434 
     | 
    
         
            +
                }
         
     | 
| 
       420 
435 
     | 
    
         
             
                const rootNode = source;
         
     | 
| 
       421 
     | 
    
         
            -
                const allImports = (0, typescript_1.findNodes)(rootNode,  
     | 
| 
      
 436 
     | 
    
         
            +
                const allImports = (0, typescript_1.findNodes)(rootNode, tsModule.SyntaxKind.ImportDeclaration);
         
     | 
| 
       422 
437 
     | 
    
         
             
                // get nodes that map to import statements from the file fileName
         
     | 
| 
       423 
438 
     | 
    
         
             
                const relevantImports = allImports.filter((node) => {
         
     | 
| 
       424 
439 
     | 
    
         
             
                    // StringLiteral of the ImportDeclaration is the import file (fileName in this case).
         
     | 
| 
       425 
440 
     | 
    
         
             
                    const importFiles = node
         
     | 
| 
       426 
441 
     | 
    
         
             
                        .getChildren()
         
     | 
| 
       427 
     | 
    
         
            -
                        .filter((child) => child.kind ===  
     | 
| 
      
 442 
     | 
    
         
            +
                        .filter((child) => child.kind === tsModule.SyntaxKind.StringLiteral)
         
     | 
| 
       428 
443 
     | 
    
         
             
                        .map((n) => n.text);
         
     | 
| 
       429 
444 
     | 
    
         
             
                    return importFiles.filter((file) => file === fileName).length === 1;
         
     | 
| 
       430 
445 
     | 
    
         
             
                });
         
     | 
| 
         @@ -433,8 +448,8 @@ function insertImport(source, fileToEdit, symbolName, fileName, isDefault = fals 
     | 
|
| 
       433 
448 
     | 
    
         
             
                    // imports from import file
         
     | 
| 
       434 
449 
     | 
    
         
             
                    const imports = [];
         
     | 
| 
       435 
450 
     | 
    
         
             
                    relevantImports.forEach((n) => {
         
     | 
| 
       436 
     | 
    
         
            -
                        Array.prototype.push.apply(imports, (0, typescript_1.findNodes)(n,  
     | 
| 
       437 
     | 
    
         
            -
                        if ((0, typescript_1.findNodes)(n,  
     | 
| 
      
 451 
     | 
    
         
            +
                        Array.prototype.push.apply(imports, (0, typescript_1.findNodes)(n, tsModule.SyntaxKind.Identifier));
         
     | 
| 
      
 452 
     | 
    
         
            +
                        if ((0, typescript_1.findNodes)(n, tsModule.SyntaxKind.AsteriskToken).length > 0) {
         
     | 
| 
       438 
453 
     | 
    
         
             
                            importsAsterisk = true;
         
     | 
| 
       439 
454 
     | 
    
         
             
                        }
         
     | 
| 
       440 
455 
     | 
    
         
             
                    });
         
     | 
| 
         @@ -445,14 +460,14 @@ function insertImport(source, fileToEdit, symbolName, fileName, isDefault = fals 
     | 
|
| 
       445 
460 
     | 
    
         
             
                    const importTextNodes = imports.filter((n) => n.text === symbolName);
         
     | 
| 
       446 
461 
     | 
    
         
             
                    // insert import if it's not there
         
     | 
| 
       447 
462 
     | 
    
         
             
                    if (importTextNodes.length === 0) {
         
     | 
| 
       448 
     | 
    
         
            -
                        const fallbackPos = (0, typescript_1.findNodes)(relevantImports[0],  
     | 
| 
       449 
     | 
    
         
            -
                            (0, typescript_1.findNodes)(relevantImports[0],  
     | 
| 
      
 463 
     | 
    
         
            +
                        const fallbackPos = (0, typescript_1.findNodes)(relevantImports[0], tsModule.SyntaxKind.CloseBraceToken)[0].getStart() ||
         
     | 
| 
      
 464 
     | 
    
         
            +
                            (0, typescript_1.findNodes)(relevantImports[0], tsModule.SyntaxKind.FromKeyword)[0].getStart();
         
     | 
| 
       450 
465 
     | 
    
         
             
                        return insertAfterLastOccurrence(imports, `, ${symbolName}`, fileToEdit, fallbackPos);
         
     | 
| 
       451 
466 
     | 
    
         
             
                    }
         
     | 
| 
       452 
467 
     | 
    
         
             
                    return new NoopChange();
         
     | 
| 
       453 
468 
     | 
    
         
             
                }
         
     | 
| 
       454 
469 
     | 
    
         
             
                // no such import declaration exists
         
     | 
| 
       455 
     | 
    
         
            -
                const useStrict = (0, typescript_1.findNodes)(rootNode,  
     | 
| 
      
 470 
     | 
    
         
            +
                const useStrict = (0, typescript_1.findNodes)(rootNode, tsModule.SyntaxKind.StringLiteral).filter((n) => n.text === 'use strict');
         
     | 
| 
       456 
471 
     | 
    
         
             
                let fallbackPos = 0;
         
     | 
| 
       457 
472 
     | 
    
         
             
                if (useStrict.length > 0) {
         
     | 
| 
       458 
473 
     | 
    
         
             
                    fallbackPos = useStrict[0].end;
         
     | 
| 
         @@ -464,7 +479,7 @@ function insertImport(source, fileToEdit, symbolName, fileName, isDefault = fals 
     | 
|
| 
       464 
479 
     | 
    
         
             
                const separator = insertAtBeginning ? '' : ';\n';
         
     | 
| 
       465 
480 
     | 
    
         
             
                const toInsert = `${separator}import ${open}${symbolName}${close}` +
         
     | 
| 
       466 
481 
     | 
    
         
             
                    ` from '${fileName}'${insertAtBeginning ? ';\n' : ''}`;
         
     | 
| 
       467 
     | 
    
         
            -
                return insertAfterLastOccurrence(allImports, toInsert, fileToEdit, fallbackPos,  
     | 
| 
      
 482 
     | 
    
         
            +
                return insertAfterLastOccurrence(allImports, toInsert, fileToEdit, fallbackPos, tsModule.SyntaxKind.StringLiteral);
         
     | 
| 
       468 
483 
     | 
    
         
             
            }
         
     | 
| 
       469 
484 
     | 
    
         
             
            exports.insertImport = insertImport;
         
     | 
| 
       470 
485 
     | 
    
         
             
            function replaceNodeValue(host, modulePath, node, content) {
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"ast-utils.js","sourceRoot":"","sources":["../../../../../packages/workspace/src/utils/ast-utils.ts"],"names":[],"mappings":"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"}
         
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"ast-utils.js","sourceRoot":"","sources":["../../../../../packages/workspace/src/utils/ast-utils.ts"],"names":[],"mappings":"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"}
         
     | 
    
        package/src/utils/rules/to-js.js
    CHANGED
    
    | 
         @@ -1,18 +1,22 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            "use strict";
         
     | 
| 
       2 
2 
     | 
    
         
             
            Object.defineProperty(exports, "__esModule", { value: true });
         
     | 
| 
       3 
3 
     | 
    
         
             
            exports.maybeJs = exports.updateTsConfigsToJs = exports.toJS = void 0;
         
     | 
| 
       4 
     | 
    
         
            -
            const typescript_1 = require("typescript");
         
     | 
| 
       5 
4 
     | 
    
         
             
            const schematics_1 = require("@angular-devkit/schematics");
         
     | 
| 
       6 
5 
     | 
    
         
             
            const core_1 = require("@angular-devkit/core");
         
     | 
| 
       7 
6 
     | 
    
         
             
            const ast_utils_1 = require("../ast-utils");
         
     | 
| 
      
 7 
     | 
    
         
            +
            let tsModule;
         
     | 
| 
       8 
8 
     | 
    
         
             
            function toJS() {
         
     | 
| 
      
 9 
     | 
    
         
            +
                if (!tsModule) {
         
     | 
| 
      
 10 
     | 
    
         
            +
                    tsModule = require('typescript');
         
     | 
| 
      
 11 
     | 
    
         
            +
                }
         
     | 
| 
      
 12 
     | 
    
         
            +
                const { transpile, JsxEmit, ScriptTarget } = tsModule;
         
     | 
| 
       9 
13 
     | 
    
         
             
                return (0, schematics_1.chain)([
         
     | 
| 
       10 
14 
     | 
    
         
             
                    (0, schematics_1.forEach)((0, schematics_1.when)((path) => path.endsWith('.ts') || path.endsWith('.tsx'), (entry) => {
         
     | 
| 
       11 
15 
     | 
    
         
             
                        const original = entry.content.toString('utf-8');
         
     | 
| 
       12 
     | 
    
         
            -
                        const result =  
     | 
| 
      
 16 
     | 
    
         
            +
                        const result = transpile(original, {
         
     | 
| 
       13 
17 
     | 
    
         
             
                            allowJs: true,
         
     | 
| 
       14 
     | 
    
         
            -
                            jsx:  
     | 
| 
       15 
     | 
    
         
            -
                            target:  
     | 
| 
      
 18 
     | 
    
         
            +
                            jsx: JsxEmit.Preserve,
         
     | 
| 
      
 19 
     | 
    
         
            +
                            target: ScriptTarget.ESNext,
         
     | 
| 
       16 
20 
     | 
    
         
             
                        });
         
     | 
| 
       17 
21 
     | 
    
         
             
                        return {
         
     | 
| 
       18 
22 
     | 
    
         
             
                            content: Buffer.from(result, 'utf-8'),
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"to-js.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/utils/rules/to-js.ts"],"names":[],"mappings":";;;AAAA, 
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"to-js.js","sourceRoot":"","sources":["../../../../../../packages/workspace/src/utils/rules/to-js.ts"],"names":[],"mappings":"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"}
         
     | 
| 
         @@ -1,17 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            import { Tree } from 'nx/src/generators/tree';
         
     | 
| 
       2 
     | 
    
         
            -
            export declare const tsConfigBaseOptions: {
         
     | 
| 
       3 
     | 
    
         
            -
                rootDir: string;
         
     | 
| 
       4 
     | 
    
         
            -
                sourceMap: boolean;
         
     | 
| 
       5 
     | 
    
         
            -
                declaration: boolean;
         
     | 
| 
       6 
     | 
    
         
            -
                moduleResolution: string;
         
     | 
| 
       7 
     | 
    
         
            -
                emitDecoratorMetadata: boolean;
         
     | 
| 
       8 
     | 
    
         
            -
                experimentalDecorators: boolean;
         
     | 
| 
       9 
     | 
    
         
            -
                importHelpers: boolean;
         
     | 
| 
       10 
     | 
    
         
            -
                target: string;
         
     | 
| 
       11 
     | 
    
         
            -
                module: string;
         
     | 
| 
       12 
     | 
    
         
            -
                lib: string[];
         
     | 
| 
       13 
     | 
    
         
            -
                skipLibCheck: boolean;
         
     | 
| 
       14 
     | 
    
         
            -
                skipDefaultLibCheck: boolean;
         
     | 
| 
       15 
     | 
    
         
            -
                baseUrl: string;
         
     | 
| 
       16 
     | 
    
         
            -
            };
         
     | 
| 
       17 
     | 
    
         
            -
            export declare function extractTsConfigBase(host: Tree): void;
         
     | 
| 
         @@ -1,48 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            "use strict";
         
     | 
| 
       2 
     | 
    
         
            -
            Object.defineProperty(exports, "__esModule", { value: true });
         
     | 
| 
       3 
     | 
    
         
            -
            exports.extractTsConfigBase = exports.tsConfigBaseOptions = void 0;
         
     | 
| 
       4 
     | 
    
         
            -
            const json_1 = require("nx/src/generators/utils/json");
         
     | 
| 
       5 
     | 
    
         
            -
            exports.tsConfigBaseOptions = {
         
     | 
| 
       6 
     | 
    
         
            -
                rootDir: '.',
         
     | 
| 
       7 
     | 
    
         
            -
                sourceMap: true,
         
     | 
| 
       8 
     | 
    
         
            -
                declaration: false,
         
     | 
| 
       9 
     | 
    
         
            -
                moduleResolution: 'node',
         
     | 
| 
       10 
     | 
    
         
            -
                emitDecoratorMetadata: true,
         
     | 
| 
       11 
     | 
    
         
            -
                experimentalDecorators: true,
         
     | 
| 
       12 
     | 
    
         
            -
                importHelpers: true,
         
     | 
| 
       13 
     | 
    
         
            -
                target: 'es2015',
         
     | 
| 
       14 
     | 
    
         
            -
                module: 'esnext',
         
     | 
| 
       15 
     | 
    
         
            -
                lib: ['es2017', 'dom'],
         
     | 
| 
       16 
     | 
    
         
            -
                skipLibCheck: true,
         
     | 
| 
       17 
     | 
    
         
            -
                skipDefaultLibCheck: true,
         
     | 
| 
       18 
     | 
    
         
            -
                baseUrl: '.',
         
     | 
| 
       19 
     | 
    
         
            -
            };
         
     | 
| 
       20 
     | 
    
         
            -
            function extractTsConfigBase(host) {
         
     | 
| 
       21 
     | 
    
         
            -
                if (host.exists('tsconfig.base.json'))
         
     | 
| 
       22 
     | 
    
         
            -
                    return;
         
     | 
| 
       23 
     | 
    
         
            -
                const tsconfig = (0, json_1.readJson)(host, 'tsconfig.json');
         
     | 
| 
       24 
     | 
    
         
            -
                const baseCompilerOptions = {};
         
     | 
| 
       25 
     | 
    
         
            -
                for (let compilerOption of Object.keys(exports.tsConfigBaseOptions)) {
         
     | 
| 
       26 
     | 
    
         
            -
                    baseCompilerOptions[compilerOption] =
         
     | 
| 
       27 
     | 
    
         
            -
                        tsconfig.compilerOptions[compilerOption];
         
     | 
| 
       28 
     | 
    
         
            -
                    delete tsconfig.compilerOptions[compilerOption];
         
     | 
| 
       29 
     | 
    
         
            -
                }
         
     | 
| 
       30 
     | 
    
         
            -
                (0, json_1.writeJson)(host, 'tsconfig.base.json', {
         
     | 
| 
       31 
     | 
    
         
            -
                    compileOnSave: false,
         
     | 
| 
       32 
     | 
    
         
            -
                    compilerOptions: baseCompilerOptions,
         
     | 
| 
       33 
     | 
    
         
            -
                    exclude: tsconfig.exclude,
         
     | 
| 
       34 
     | 
    
         
            -
                });
         
     | 
| 
       35 
     | 
    
         
            -
                tsconfig.extends = './tsconfig.base.json';
         
     | 
| 
       36 
     | 
    
         
            -
                delete tsconfig.compileOnSave;
         
     | 
| 
       37 
     | 
    
         
            -
                delete tsconfig.exclude;
         
     | 
| 
       38 
     | 
    
         
            -
                (0, json_1.writeJson)(host, 'tsconfig.json', tsconfig);
         
     | 
| 
       39 
     | 
    
         
            -
                // special case for updating e2e tests.
         
     | 
| 
       40 
     | 
    
         
            -
                if (host.exists('e2e/tsconfig.json')) {
         
     | 
| 
       41 
     | 
    
         
            -
                    (0, json_1.updateJson)(host, 'e2e/tsconfig.json', (json) => {
         
     | 
| 
       42 
     | 
    
         
            -
                        json.extends = '../tsconfig.base.json';
         
     | 
| 
       43 
     | 
    
         
            -
                        return json;
         
     | 
| 
       44 
     | 
    
         
            -
                    });
         
     | 
| 
       45 
     | 
    
         
            -
                }
         
     | 
| 
       46 
     | 
    
         
            -
            }
         
     | 
| 
       47 
     | 
    
         
            -
            exports.extractTsConfigBase = extractTsConfigBase;
         
     | 
| 
       48 
     | 
    
         
            -
            //# sourceMappingURL=create-ts-config.js.map
         
     | 
| 
         @@ -1 +0,0 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"create-ts-config.js","sourceRoot":"","sources":["../../../../../packages/workspace/src/utils/create-ts-config.ts"],"names":[],"mappings":";;;AACA,uDAA+E;AAElE,QAAA,mBAAmB,GAAG;IACjC,OAAO,EAAE,GAAG;IACZ,SAAS,EAAE,IAAI;IACf,WAAW,EAAE,KAAK;IAClB,gBAAgB,EAAE,MAAM;IACxB,qBAAqB,EAAE,IAAI;IAC3B,sBAAsB,EAAE,IAAI;IAC5B,aAAa,EAAE,IAAI;IACnB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,GAAG,EAAE,CAAC,QAAQ,EAAE,KAAK,CAAC;IACtB,YAAY,EAAE,IAAI;IAClB,mBAAmB,EAAE,IAAI;IACzB,OAAO,EAAE,GAAG;CACb,CAAC;AAEF,SAAgB,mBAAmB,CAAC,IAAU;IAC5C,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAAE,OAAO;IAE9C,MAAM,QAAQ,GAAG,IAAA,eAAQ,EAAC,IAAI,EAAE,eAAe,CAAC,CAAC;IACjD,MAAM,mBAAmB,GAAG,EAAS,CAAC;IACtC,KAAK,IAAI,cAAc,IAAI,MAAM,CAAC,IAAI,CAAC,2BAAmB,CAAC,EAAE;QAC3D,mBAAmB,CAAC,cAAc,CAAC;YACjC,QAAQ,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;QAC3C,OAAO,QAAQ,CAAC,eAAe,CAAC,cAAc,CAAC,CAAC;KACjD;IACD,IAAA,gBAAS,EAAC,IAAI,EAAE,oBAAoB,EAAE;QACpC,aAAa,EAAE,KAAK;QACpB,eAAe,EAAE,mBAAmB;QACpC,OAAO,EAAE,QAAQ,CAAC,OAAO;KAC1B,CAAC,CAAC;IACH,QAAQ,CAAC,OAAO,GAAG,sBAAsB,CAAC;IAC1C,OAAO,QAAQ,CAAC,aAAa,CAAC;IAC9B,OAAO,QAAQ,CAAC,OAAO,CAAC;IAExB,IAAA,gBAAS,EAAC,IAAI,EAAE,eAAe,EAAE,QAAQ,CAAC,CAAC;IAE3C,uCAAuC;IACvC,IAAI,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,EAAE;QACpC,IAAA,iBAAU,EAAC,IAAI,EAAE,mBAAmB,EAAE,CAAC,IAAI,EAAE,EAAE;YAC7C,IAAI,CAAC,OAAO,GAAG,uBAAuB,CAAC;YACvC,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;KACJ;AACH,CAAC;AA5BD,kDA4BC"}
         
     |