@o3r/schematics 10.0.0-rc.0 → 10.0.0-rc.10
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/package.json +8 -6
 - package/src/rule-factories/ng-add/dependencies.d.ts +13 -1
 - package/src/rule-factories/ng-add/dependencies.d.ts.map +1 -1
 - package/src/rule-factories/ng-add/dependencies.js +17 -3
 - package/src/rule-factories/ng-add/dependencies.js.map +1 -1
 - package/src/utility/update-imports.d.ts.map +1 -1
 - package/src/utility/update-imports.js +4 -3
 - package/src/utility/update-imports.js.map +1 -1
 - package/src/utility/wrapper.d.ts.map +1 -1
 - package/src/utility/wrapper.js +55 -39
 - package/src/utility/wrapper.js.map +1 -1
 
    
        package/package.json
    CHANGED
    
    | 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            {
         
     | 
| 
       2 
2 
     | 
    
         
             
              "name": "@o3r/schematics",
         
     | 
| 
       3 
     | 
    
         
            -
              "version": "10.0.0-rc. 
     | 
| 
      
 3 
     | 
    
         
            +
              "version": "10.0.0-rc.10",
         
     | 
| 
       4 
4 
     | 
    
         
             
              "publishConfig": {
         
     | 
| 
       5 
5 
     | 
    
         
             
                "access": "public"
         
     | 
| 
       6 
6 
     | 
    
         
             
              },
         
     | 
| 
         @@ -30,7 +30,7 @@ 
     | 
|
| 
       30 
30 
     | 
    
         
             
                "@angular-devkit/core": "~17.2.0",
         
     | 
| 
       31 
31 
     | 
    
         
             
                "@angular-devkit/schematics": "~17.2.0",
         
     | 
| 
       32 
32 
     | 
    
         
             
                "@angular/cli": "~17.2.0",
         
     | 
| 
       33 
     | 
    
         
            -
                "@o3r/telemetry": "^10.0.0-rc. 
     | 
| 
      
 33 
     | 
    
         
            +
                "@o3r/telemetry": "^10.0.0-rc.10",
         
     | 
| 
       34 
34 
     | 
    
         
             
                "@schematics/angular": "~17.2.0",
         
     | 
| 
       35 
35 
     | 
    
         
             
                "eslint": "^8.42.0",
         
     | 
| 
       36 
36 
     | 
    
         
             
                "rxjs": "^7.8.1",
         
     | 
| 
         @@ -54,6 +54,7 @@ 
     | 
|
| 
       54 
54 
     | 
    
         
             
              "dependencies": {
         
     | 
| 
       55 
55 
     | 
    
         
             
                "chalk": "^4.1.2",
         
     | 
| 
       56 
56 
     | 
    
         
             
                "globby": "^11.1.0",
         
     | 
| 
      
 57 
     | 
    
         
            +
                "inquirer": "~8.2.6",
         
     | 
| 
       57 
58 
     | 
    
         
             
                "minimatch": "~9.0.3",
         
     | 
| 
       58 
59 
     | 
    
         
             
                "semver": "^7.5.2",
         
     | 
| 
       59 
60 
     | 
    
         
             
                "tslib": "^2.5.3"
         
     | 
| 
         @@ -78,11 +79,12 @@ 
     | 
|
| 
       78 
79 
     | 
    
         
             
                "@nx/eslint-plugin": "~18.0.2",
         
     | 
| 
       79 
80 
     | 
    
         
             
                "@nx/jest": "~18.0.2",
         
     | 
| 
       80 
81 
     | 
    
         
             
                "@nx/js": "~18.0.2",
         
     | 
| 
       81 
     | 
    
         
            -
                "@o3r/build-helpers": "^10.0.0-rc. 
     | 
| 
       82 
     | 
    
         
            -
                "@o3r/eslint-plugin": "^10.0.0-rc. 
     | 
| 
       83 
     | 
    
         
            -
                "@o3r/telemetry": "^10.0.0-rc. 
     | 
| 
      
 82 
     | 
    
         
            +
                "@o3r/build-helpers": "^10.0.0-rc.10",
         
     | 
| 
      
 83 
     | 
    
         
            +
                "@o3r/eslint-plugin": "^10.0.0-rc.10",
         
     | 
| 
      
 84 
     | 
    
         
            +
                "@o3r/telemetry": "^10.0.0-rc.10",
         
     | 
| 
       84 
85 
     | 
    
         
             
                "@schematics/angular": "~17.2.0",
         
     | 
| 
       85 
86 
     | 
    
         
             
                "@stylistic/eslint-plugin-ts": "^1.5.4",
         
     | 
| 
      
 87 
     | 
    
         
            +
                "@types/inquirer": "~8.2.10",
         
     | 
| 
       86 
88 
     | 
    
         
             
                "@types/jest": "~29.5.2",
         
     | 
| 
       87 
89 
     | 
    
         
             
                "@types/node": "^20.0.0",
         
     | 
| 
       88 
90 
     | 
    
         
             
                "@types/semver": "^7.3.13",
         
     | 
| 
         @@ -92,7 +94,7 @@ 
     | 
|
| 
       92 
94 
     | 
    
         
             
                "eslint": "^8.42.0",
         
     | 
| 
       93 
95 
     | 
    
         
             
                "eslint-import-resolver-node": "^0.3.4",
         
     | 
| 
       94 
96 
     | 
    
         
             
                "eslint-plugin-jest": "~27.9.0",
         
     | 
| 
       95 
     | 
    
         
            -
                "eslint-plugin-jsdoc": "~48. 
     | 
| 
      
 97 
     | 
    
         
            +
                "eslint-plugin-jsdoc": "~48.2.0",
         
     | 
| 
       96 
98 
     | 
    
         
             
                "eslint-plugin-prefer-arrow": "~1.2.3",
         
     | 
| 
       97 
99 
     | 
    
         
             
                "eslint-plugin-unicorn": "^51.0.0",
         
     | 
| 
       98 
100 
     | 
    
         
             
                "jest": "~29.7.0",
         
     | 
| 
         @@ -1,4 +1,4 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            import { Rule, type TaskId, Tree } from '@angular-devkit/schematics';
         
     | 
| 
      
 1 
     | 
    
         
            +
            import { Rule, type SchematicContext, type TaskId, Tree } from '@angular-devkit/schematics';
         
     | 
| 
       2 
2 
     | 
    
         
             
            import { NodeDependencyType } from '@schematics/angular/utility/dependencies';
         
     | 
| 
       3 
3 
     | 
    
         
             
            import { SupportedPackageManagers } from '../../utility';
         
     | 
| 
       4 
4 
     | 
    
         
             
            /**
         
     | 
| 
         @@ -60,6 +60,18 @@ export interface SetupDependenciesOptions { 
     | 
|
| 
       60 
60 
     | 
    
         
             
                /** Callback to run after the task ID is calculated */
         
     | 
| 
       61 
61 
     | 
    
         
             
                scheduleTaskCallback?: (taskIds?: TaskId[]) => void;
         
     | 
| 
       62 
62 
     | 
    
         
             
            }
         
     | 
| 
      
 63 
     | 
    
         
            +
            /** Result of the Setup Dependencies task scheduling process */
         
     | 
| 
      
 64 
     | 
    
         
            +
            export interface SetupDependenciesResult {
         
     | 
| 
      
 65 
     | 
    
         
            +
                /** List of the task ID resulting of the install process */
         
     | 
| 
      
 66 
     | 
    
         
            +
                taskIds: TaskId[];
         
     | 
| 
      
 67 
     | 
    
         
            +
            }
         
     | 
| 
      
 68 
     | 
    
         
            +
            /**
         
     | 
| 
      
 69 
     | 
    
         
            +
             * Determine if the context has information regarding the setup dependencies process
         
     | 
| 
      
 70 
     | 
    
         
            +
             * @param context Schematic context
         
     | 
| 
      
 71 
     | 
    
         
            +
             */
         
     | 
| 
      
 72 
     | 
    
         
            +
            export declare const hasSetupInformation: (context: SchematicContext) => context is SchematicContext & {
         
     | 
| 
      
 73 
     | 
    
         
            +
                setupDependencies: SetupDependenciesResult;
         
     | 
| 
      
 74 
     | 
    
         
            +
            };
         
     | 
| 
       63 
75 
     | 
    
         
             
            /**
         
     | 
| 
       64 
76 
     | 
    
         
             
             * Retrieve the package install configuration
         
     | 
| 
       65 
77 
     | 
    
         
             
             * This is a workaround to ng-add to add the dependency to the sub-package
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../../../../src/rule-factories/ng-add/dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,IAAI,EAAa,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC; 
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"dependencies.d.ts","sourceRoot":"","sources":["../../../../src/rule-factories/ng-add/dependencies.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,IAAI,EAAa,KAAK,gBAAgB,EAAE,KAAK,MAAM,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAC9G,OAAO,EAAE,kBAAkB,EAAE,MAAM,0CAA0C,CAAC;AAI9E,OAAO,EAAyE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AAIhI;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,0BAA0B;IAC1B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE5B,gCAAgC;IAChC,UAAU,CAAC,EAAE,OAAO,CAAC;IAErB,+BAA+B;IAC/B,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB,CAAC,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC;CAClB;AAED,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,KAAK,CAAC,EAAE,kBAAkB,EAAE,CAAC;CAC9B;AAED,MAAM,WAAW,eAAe;IAC9B,yEAAyE;IACzE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iDAAiD;IACjD,UAAU,EAAE,oBAAoB,EAAE,CAAC;IACnC,uDAAuD;IACvD,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,0DAA0D;IAC1D,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,wBAAwB;IACvC,qCAAqC;IACrC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IAC9C;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;IACjC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,mBAAmB;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sCAAsC;IACtC,YAAY,CAAC,EAAE,qBAAqB,CAAC;IACrC,sCAAsC;IACtC,cAAc,CAAC,EAAE,wBAAwB,CAAC;IAC1C,2DAA2D;IAC3D,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,sDAAsD;IACtD,oBAAoB,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CACrD;AAED,+DAA+D;AAC/D,MAAM,WAAW,uBAAuB;IACtC,2DAA2D;IAC3D,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED;;;GAGG;AACH,eAAO,MAAM,mBAAmB;uBAAmF,uBAAuB;CAEzI,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,uBAAuB,oBAAqB,MAAM,QAAQ,IAAI,gBAAgB,MAAM,sBAAsB,OAAO,KAAG,OAAO,MAAM,EAAE,eAAe,CAgB9J,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,YAAa,wBAAwB,KAAG,IAkIrE,CAAC"}
         
     | 
| 
         @@ -1,6 +1,6 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            "use strict";
         
     | 
| 
       2 
2 
     | 
    
         
             
            Object.defineProperty(exports, "__esModule", { value: true });
         
     | 
| 
       3 
     | 
    
         
            -
            exports.setupDependencies = exports.getPackageInstallConfig = void 0;
         
     | 
| 
      
 3 
     | 
    
         
            +
            exports.setupDependencies = exports.getPackageInstallConfig = exports.hasSetupInformation = void 0;
         
     | 
| 
       4 
4 
     | 
    
         
             
            const schematics_1 = require("@angular-devkit/schematics");
         
     | 
| 
       5 
5 
     | 
    
         
             
            const dependencies_1 = require("@schematics/angular/utility/dependencies");
         
     | 
| 
       6 
6 
     | 
    
         
             
            const path = require("node:path");
         
     | 
| 
         @@ -8,6 +8,14 @@ const semver = require("semver"); 
     | 
|
| 
       8 
8 
     | 
    
         
             
            const utility_1 = require("../../utility");
         
     | 
| 
       9 
9 
     | 
    
         
             
            const tasks_1 = require("@angular-devkit/schematics/tasks");
         
     | 
| 
       10 
10 
     | 
    
         
             
            const node_fs_1 = require("node:fs");
         
     | 
| 
      
 11 
     | 
    
         
            +
            /**
         
     | 
| 
      
 12 
     | 
    
         
            +
             * Determine if the context has information regarding the setup dependencies process
         
     | 
| 
      
 13 
     | 
    
         
            +
             * @param context Schematic context
         
     | 
| 
      
 14 
     | 
    
         
            +
             */
         
     | 
| 
      
 15 
     | 
    
         
            +
            const hasSetupInformation = (context) => {
         
     | 
| 
      
 16 
     | 
    
         
            +
                return !!context.setupDependencies;
         
     | 
| 
      
 17 
     | 
    
         
            +
            };
         
     | 
| 
      
 18 
     | 
    
         
            +
            exports.hasSetupInformation = hasSetupInformation;
         
     | 
| 
       11 
19 
     | 
    
         
             
            /**
         
     | 
| 
       12 
20 
     | 
    
         
             
             * Retrieve the package install configuration
         
     | 
| 
       13 
21 
     | 
    
         
             
             * This is a workaround to ng-add to add the dependency to the sub-package
         
     | 
| 
         @@ -125,7 +133,7 @@ const setupDependencies = (options) => { 
     | 
|
| 
       125 
133 
     | 
    
         
             
                            return Object.fromEntries(Object.entries({ projectName: options.projectName, ...options.ngAddOptions, ...options.dependencies[packageName].ngAddOptions })
         
     | 
| 
       126 
134 
     | 
    
         
             
                                .filter(([key]) => !schemaOptions || !!schemaOptions[key]));
         
     | 
| 
       127 
135 
     | 
    
         
             
                        };
         
     | 
| 
       128 
     | 
    
         
            -
                        const  
     | 
| 
      
 136 
     | 
    
         
            +
                        const finalTaskIds = [...ngAddToRun]
         
     | 
| 
       129 
137 
     | 
    
         
             
                            .map((packageName) => {
         
     | 
| 
       130 
138 
     | 
    
         
             
                            let schematic;
         
     | 
| 
       131 
139 
     | 
    
         
             
                            try {
         
     | 
| 
         @@ -142,8 +150,14 @@ const setupDependencies = (options) => { 
     | 
|
| 
       142 
150 
     | 
    
         
             
                            context.logger.debug(`Schedule the schematic ng-add for ${packageName}`);
         
     | 
| 
       143 
151 
     | 
    
         
             
                            return [...ids, context.addTask(new tasks_1.RunSchematicTask(packageName, 'ng-add', schematicOptions), ids)];
         
     | 
| 
       144 
152 
     | 
    
         
             
                        }, [...(installId || []), ...(options.runAfterTasks || [])]);
         
     | 
| 
      
 153 
     | 
    
         
            +
                        if ((0, exports.hasSetupInformation)(context)) {
         
     | 
| 
      
 154 
     | 
    
         
            +
                            context.setupDependencies.taskIds.push(...finalTaskIds);
         
     | 
| 
      
 155 
     | 
    
         
            +
                        }
         
     | 
| 
      
 156 
     | 
    
         
            +
                        else {
         
     | 
| 
      
 157 
     | 
    
         
            +
                            context.setupDependencies = { taskIds: finalTaskIds };
         
     | 
| 
      
 158 
     | 
    
         
            +
                        }
         
     | 
| 
       145 
159 
     | 
    
         
             
                        if (options.scheduleTaskCallback) {
         
     | 
| 
       146 
     | 
    
         
            -
                            options.scheduleTaskCallback( 
     | 
| 
      
 160 
     | 
    
         
            +
                            options.scheduleTaskCallback(finalTaskIds);
         
     | 
| 
       147 
161 
     | 
    
         
             
                        }
         
     | 
| 
       148 
162 
     | 
    
         
             
                    };
         
     | 
| 
       149 
163 
     | 
    
         
             
                    return (0, schematics_1.chain)([
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../../../src/rule-factories/ng-add/dependencies.ts"],"names":[],"mappings":";;;AAAA, 
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../../../src/rule-factories/ng-add/dependencies.ts"],"names":[],"mappings":"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"}
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"update-imports.d.ts","sourceRoot":"","sources":["../../../src/utility/update-imports.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC; 
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"update-imports.d.ts","sourceRoot":"","sources":["../../../src/utility/update-imports.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAgBvD,0DAA0D;AAC1D,MAAM,WAAW,cAAc;IAC7B,CAAC,WAAW,EAAE,MAAM,GAAG;QAAE,CAAC,UAAU,EAAE,MAAM,GAAG;YAAE,UAAU,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC;CAC5F;AAGD;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,OAAO,CAAC,SAAS,EACzB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,EAAE,CAAC,UAAU,EACzB,aAAa,EAAE,MAAM,EACrB,oBAAoB,EAAE,MAAM,EAC5B,UAAU,GAAE,cAAmB,EAC/B,eAAe,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,UAoG7C"}
         
     | 
| 
         @@ -31,9 +31,10 @@ function updateImportsInFile(logger, tree, sourceFile, importsRegexp, renamePack 
     | 
|
| 
       31 
31 
     | 
    
         
             
                        // We store the import line to be able to remove it afterwards
         
     | 
| 
       32 
32 
     | 
    
         
             
                        importNodes.push(imp);
         
     | 
| 
       33 
33 
     | 
    
         
             
                        // We retrieve all the symbols listed in the import statement
         
     | 
| 
       34 
     | 
    
         
            -
                        const namedImport = imp.importClause 
     | 
| 
      
 34 
     | 
    
         
            +
                        const namedImport = imp.importClause?.namedBindings;
         
     | 
| 
      
 35 
     | 
    
         
            +
                        const isTypeOnlyImport = !!imp.importClause && ts.isTypeOnlyImportDeclaration(imp.importClause);
         
     | 
| 
       35 
36 
     | 
    
         
             
                        const imports = namedImport && ts.isNamedImports(namedImport) ?
         
     | 
| 
       36 
     | 
    
         
            -
                            namedImport.elements.map((element) => ({ symbol: element.getText(), location: importFrom })) :
         
     | 
| 
      
 37 
     | 
    
         
            +
                            namedImport.elements.map((element) => ({ symbol: element.getText(), isTypeOnlyImport, location: importFrom })) :
         
     | 
| 
       37 
38 
     | 
    
         
             
                            [];
         
     | 
| 
       38 
39 
     | 
    
         
             
                        // And associate them to the Otter package
         
     | 
| 
       39 
40 
     | 
    
         
             
                        oldImportedSymbolsPerPackage[otterPackage].push(...imports);
         
     | 
| 
         @@ -62,7 +63,7 @@ function updateImportsInFile(logger, tree, sourceFile, importsRegexp, renamePack 
     | 
|
| 
       62 
63 
     | 
    
         
             
                            acc[importFrom] = [];
         
     | 
| 
       63 
64 
     | 
    
         
             
                        }
         
     | 
| 
       64 
65 
     | 
    
         
             
                        const newNameForExportedValue = mapImports[oldPackageName]?.[importSymbol.symbol]?.newValue;
         
     | 
| 
       65 
     | 
    
         
            -
                        acc[importFrom].push(newNameForExportedValue || importSymbol.symbol);
         
     | 
| 
      
 66 
     | 
    
         
            +
                        acc[importFrom].push(`${importSymbol.isTypeOnlyImport ? 'type ' : ''}${newNameForExportedValue || importSymbol.symbol}`);
         
     | 
| 
       66 
67 
     | 
    
         
             
                    });
         
     | 
| 
       67 
68 
     | 
    
         
             
                    return acc;
         
     | 
| 
       68 
69 
     | 
    
         
             
                }, {});
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"update-imports.js","sourceRoot":"","sources":["../../../src/utility/update-imports.ts"],"names":[],"mappings":";;;AAAA,iCAAiC;AAEjC,qEAAkE; 
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"update-imports.js","sourceRoot":"","sources":["../../../src/utility/update-imports.ts"],"names":[],"mappings":"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"}
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"wrapper.d.ts","sourceRoot":"","sources":["../../../src/utility/wrapper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC; 
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"wrapper.d.ts","sourceRoot":"","sources":["../../../src/utility/wrapper.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AA2CvD;;;;GAIG;AACH,eAAO,MAAM,qCAAqC,EAAE,gBAuCnD,CAAC"}
         
     | 
    
        package/src/utility/wrapper.js
    CHANGED
    
    | 
         @@ -1,13 +1,42 @@ 
     | 
|
| 
       1 
1 
     | 
    
         
             
            "use strict";
         
     | 
| 
       2 
2 
     | 
    
         
             
            Object.defineProperty(exports, "__esModule", { value: true });
         
     | 
| 
       3 
3 
     | 
    
         
             
            exports.createSchematicWithMetricsIfInstalled = void 0;
         
     | 
| 
       4 
     | 
    
         
            -
            const  
     | 
| 
      
 4 
     | 
    
         
            +
            const schematics_1 = require("@angular-devkit/schematics");
         
     | 
| 
       5 
5 
     | 
    
         
             
            const dependencies_1 = require("@schematics/angular/utility/dependencies");
         
     | 
| 
      
 6 
     | 
    
         
            +
            const inquirer_1 = require("inquirer");
         
     | 
| 
       6 
7 
     | 
    
         
             
            const node_fs_1 = require("node:fs");
         
     | 
| 
       7 
8 
     | 
    
         
             
            const path = require("node:path");
         
     | 
| 
       8 
     | 
    
         
            -
            const  
     | 
| 
       9 
     | 
    
         
            -
            const index_1 = require("../tasks/index");
         
     | 
| 
      
 9 
     | 
    
         
            +
            const rule_factories_1 = require("../rule-factories");
         
     | 
| 
       10 
10 
     | 
    
         
             
            const noopSchematicWrapper = (fn) => fn;
         
     | 
| 
      
 11 
     | 
    
         
            +
            const PACKAGE_JSON_PATH = 'package.json';
         
     | 
| 
      
 12 
     | 
    
         
            +
            const setupO3rMetricsInPackageJson = (activated) => (tree, context) => {
         
     | 
| 
      
 13 
     | 
    
         
            +
                if (!activated) {
         
     | 
| 
      
 14 
     | 
    
         
            +
                    context.logger.info('You can activate it at any time by running `ng add @o3r/telemetry`.');
         
     | 
| 
      
 15 
     | 
    
         
            +
                }
         
     | 
| 
      
 16 
     | 
    
         
            +
                if (tree.exists(PACKAGE_JSON_PATH)) {
         
     | 
| 
      
 17 
     | 
    
         
            +
                    const packageJson = tree.readJson(PACKAGE_JSON_PATH);
         
     | 
| 
      
 18 
     | 
    
         
            +
                    packageJson.config ||= {};
         
     | 
| 
      
 19 
     | 
    
         
            +
                    packageJson.config.o3rMetrics = activated;
         
     | 
| 
      
 20 
     | 
    
         
            +
                    tree.overwrite(PACKAGE_JSON_PATH, JSON.stringify(packageJson, null, 2));
         
     | 
| 
      
 21 
     | 
    
         
            +
                }
         
     | 
| 
      
 22 
     | 
    
         
            +
            };
         
     | 
| 
      
 23 
     | 
    
         
            +
            const setupTelemetry = (_, context) => {
         
     | 
| 
      
 24 
     | 
    
         
            +
                const taskIdsFromContext = (0, rule_factories_1.hasSetupInformation)(context) ? context.setupDependencies.taskIds : undefined;
         
     | 
| 
      
 25 
     | 
    
         
            +
                const version = JSON.parse((0, node_fs_1.readFileSync)(path.join(__dirname, '..', '..', 'package.json'), 'utf-8')).version;
         
     | 
| 
      
 26 
     | 
    
         
            +
                return (0, rule_factories_1.setupDependencies)({
         
     | 
| 
      
 27 
     | 
    
         
            +
                    dependencies: {
         
     | 
| 
      
 28 
     | 
    
         
            +
                        // eslint-disable-next-line @typescript-eslint/naming-convention
         
     | 
| 
      
 29 
     | 
    
         
            +
                        '@o3r/telemetry': {
         
     | 
| 
      
 30 
     | 
    
         
            +
                            inManifest: [{
         
     | 
| 
      
 31 
     | 
    
         
            +
                                    range: `~${version}`,
         
     | 
| 
      
 32 
     | 
    
         
            +
                                    types: [dependencies_1.NodeDependencyType.Dev]
         
     | 
| 
      
 33 
     | 
    
         
            +
                                }]
         
     | 
| 
      
 34 
     | 
    
         
            +
                        }
         
     | 
| 
      
 35 
     | 
    
         
            +
                    },
         
     | 
| 
      
 36 
     | 
    
         
            +
                    ngAddToRun: ['@o3r/telemetry'],
         
     | 
| 
      
 37 
     | 
    
         
            +
                    runAfterTasks: taskIdsFromContext
         
     | 
| 
      
 38 
     | 
    
         
            +
                });
         
     | 
| 
      
 39 
     | 
    
         
            +
            };
         
     | 
| 
       11 
40 
     | 
    
         
             
            /**
         
     | 
| 
       12 
41 
     | 
    
         
             
             * Wrapper method of a schematic to retrieve some metrics around the schematic run
         
     | 
| 
       13 
42 
     | 
    
         
             
             * if @o3r/telemetry is installed
         
     | 
| 
         @@ -15,54 +44,41 @@ const noopSchematicWrapper = (fn) => fn; 
     | 
|
| 
       15 
44 
     | 
    
         
             
             */
         
     | 
| 
       16 
45 
     | 
    
         
             
            const createSchematicWithMetricsIfInstalled = (schematicFn) => (opts) => async (tree, context) => {
         
     | 
| 
       17 
46 
     | 
    
         
             
                let wrapper = noopSchematicWrapper;
         
     | 
| 
       18 
     | 
    
         
            -
                 
     | 
| 
       19 
     | 
    
         
            -
                const packageJson = tree.exists( 
     | 
| 
      
 47 
     | 
    
         
            +
                let shouldInstallTelemetry = false;
         
     | 
| 
      
 48 
     | 
    
         
            +
                const packageJson = tree.exists(PACKAGE_JSON_PATH) ? tree.readJson(PACKAGE_JSON_PATH) : {};
         
     | 
| 
       20 
49 
     | 
    
         
             
                try {
         
     | 
| 
       21 
50 
     | 
    
         
             
                    const { createSchematicWithMetrics } = await Promise.resolve().then(() => require('@o3r/telemetry'));
         
     | 
| 
       22 
     | 
    
         
            -
                     
     | 
| 
       23 
     | 
    
         
            -
                        wrapper = createSchematicWithMetrics;
         
     | 
| 
       24 
     | 
    
         
            -
                    }
         
     | 
| 
      
 51 
     | 
    
         
            +
                    wrapper = createSchematicWithMetrics;
         
     | 
| 
       25 
52 
     | 
    
         
             
                }
         
     | 
| 
       26 
53 
     | 
    
         
             
                catch (e) {
         
     | 
| 
       27 
54 
     | 
    
         
             
                    // Do not throw if `@o3r/telemetry is not installed
         
     | 
| 
       28 
     | 
    
         
            -
                    if ( 
     | 
| 
       29 
     | 
    
         
            -
                        context.logger.warn('`config.o3rMetrics` is set to true in your package.json, please install the telemetry package with `ng add @o3r/telemetry` to enable the collection of metrics.');
         
     | 
| 
       30 
     | 
    
         
            -
                    }
         
     | 
| 
       31 
     | 
    
         
            -
                    else if ((process.env.NX_CLI_SET !== 'true' || process.env.NX_INTERACTIVE === 'true')
         
     | 
| 
      
 55 
     | 
    
         
            +
                    if ((process.env.NX_CLI_SET !== 'true' || process.env.NX_INTERACTIVE === 'true')
         
     | 
| 
       32 
56 
     | 
    
         
             
                        && context.interactive
         
     | 
| 
       33 
     | 
    
         
            -
                        && packageJson.config?.o3rMetrics  
     | 
| 
      
 57 
     | 
    
         
            +
                        && typeof packageJson.config?.o3rMetrics === 'undefined'
         
     | 
| 
      
 58 
     | 
    
         
            +
                        && process.env.O3R_METRICS !== 'false'
         
     | 
| 
      
 59 
     | 
    
         
            +
                        && opts.o3rMetrics !== false
         
     | 
| 
      
 60 
     | 
    
         
            +
                        && (!process.env.CI || process.env.CI === 'false')) {
         
     | 
| 
       34 
61 
     | 
    
         
             
                        context.logger.debug('`@o3r/telemetry` is not available.\nAsking to add the dependency\n' + e.toString());
         
     | 
| 
       35 
     | 
    
         
            -
                        const  
     | 
| 
      
 62 
     | 
    
         
            +
                        const question = {
         
     | 
| 
      
 63 
     | 
    
         
            +
                            type: 'confirm',
         
     | 
| 
      
 64 
     | 
    
         
            +
                            name: 'isReplyPositive',
         
     | 
| 
      
 65 
     | 
    
         
            +
                            message: `
         
     | 
| 
       36 
66 
     | 
    
         
             
            Would you like to share anonymous data about the usage of Otter builders and schematics with the Otter Team at Amadeus ?
         
     | 
| 
       37 
67 
     | 
    
         
             
            It will help us to improve our tools.
         
     | 
| 
       38 
68 
     | 
    
         
             
            For more details and instructions on how to change these settings, see https://github.com/AmadeusITGroup/otter/blob/main/docs/telemetry/README.md.
         
     | 
| 
       39 
     | 
    
         
            -
                    `, 
     | 
| 
       40 
     | 
    
         
            -
             
     | 
| 
       41 
     | 
    
         
            -
             
     | 
| 
       42 
     | 
    
         
            -
             
     | 
| 
       43 
     | 
    
         
            -
             
     | 
| 
       44 
     | 
    
         
            -
                                version
         
     | 
| 
       45 
     | 
    
         
            -
                            }));
         
     | 
| 
       46 
     | 
    
         
            -
                            await (0, rxjs_1.lastValueFrom)(context.engine.executePostTasks());
         
     | 
| 
       47 
     | 
    
         
            -
                            try {
         
     | 
| 
       48 
     | 
    
         
            -
                                const { createSchematicWithMetrics } = await Promise.resolve().then(() => require('@o3r/telemetry'));
         
     | 
| 
       49 
     | 
    
         
            -
                                wrapper = createSchematicWithMetrics;
         
     | 
| 
       50 
     | 
    
         
            -
                            }
         
     | 
| 
       51 
     | 
    
         
            -
                            catch {
         
     | 
| 
       52 
     | 
    
         
            -
                                // If pnp context package installed in the same process will not be available
         
     | 
| 
       53 
     | 
    
         
            -
                            }
         
     | 
| 
       54 
     | 
    
         
            -
                        }
         
     | 
| 
       55 
     | 
    
         
            -
                        else {
         
     | 
| 
       56 
     | 
    
         
            -
                            context.logger.info('You can activate it at any time by running `ng add @o3r/telemetry`.');
         
     | 
| 
       57 
     | 
    
         
            -
                            packageJson.config ||= {};
         
     | 
| 
       58 
     | 
    
         
            -
                            packageJson.config.o3rMetrics = false;
         
     | 
| 
       59 
     | 
    
         
            -
                            if (tree.exists(packageJsonPath)) {
         
     | 
| 
       60 
     | 
    
         
            -
                                tree.overwrite(packageJsonPath, JSON.stringify(packageJson, null, 2));
         
     | 
| 
       61 
     | 
    
         
            -
                            }
         
     | 
| 
       62 
     | 
    
         
            -
                        }
         
     | 
| 
      
 69 
     | 
    
         
            +
                    `,
         
     | 
| 
      
 70 
     | 
    
         
            +
                            default: false
         
     | 
| 
      
 71 
     | 
    
         
            +
                        };
         
     | 
| 
      
 72 
     | 
    
         
            +
                        const { isReplyPositive } = await (0, inquirer_1.prompt)([question]);
         
     | 
| 
      
 73 
     | 
    
         
            +
                        shouldInstallTelemetry = isReplyPositive;
         
     | 
| 
       63 
74 
     | 
    
         
             
                    }
         
     | 
| 
       64 
75 
     | 
    
         
             
                }
         
     | 
| 
       65 
     | 
    
         
            -
                 
     | 
| 
      
 76 
     | 
    
         
            +
                const rule = (0, schematics_1.chain)([
         
     | 
| 
      
 77 
     | 
    
         
            +
                    setupO3rMetricsInPackageJson(shouldInstallTelemetry),
         
     | 
| 
      
 78 
     | 
    
         
            +
                    schematicFn(opts),
         
     | 
| 
      
 79 
     | 
    
         
            +
                    shouldInstallTelemetry ? setupTelemetry : (0, schematics_1.noop)()
         
     | 
| 
      
 80 
     | 
    
         
            +
                ]);
         
     | 
| 
      
 81 
     | 
    
         
            +
                return wrapper(() => rule)(opts);
         
     | 
| 
       66 
82 
     | 
    
         
             
            };
         
     | 
| 
       67 
83 
     | 
    
         
             
            exports.createSchematicWithMetricsIfInstalled = createSchematicWithMetricsIfInstalled;
         
     | 
| 
       68 
84 
     | 
    
         
             
            //# sourceMappingURL=wrapper.js.map
         
     | 
| 
         @@ -1 +1 @@ 
     | 
|
| 
       1 
     | 
    
         
            -
            {"version":3,"file":"wrapper.js","sourceRoot":"","sources":["../../../src/utility/wrapper.ts"],"names":[],"mappings":";;;AACA, 
     | 
| 
      
 1 
     | 
    
         
            +
            {"version":3,"file":"wrapper.js","sourceRoot":"","sources":["../../../src/utility/wrapper.ts"],"names":[],"mappings":"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"}
         
     |