@o3r/schematics 9.1.0-alpha.10 → 9.1.0-alpha.11

Sign up to get free protection for your applications and to get access to all the features.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@o3r/schematics",
3
- "version": "9.1.0-alpha.10",
3
+ "version": "9.1.0-alpha.11",
4
4
  "description": "Schematics module of the Otter framework",
5
5
  "main": "./src/index.js",
6
6
  "keywords": [
@@ -59,9 +59,9 @@
59
59
  "@nx/jest": "~16.5.0",
60
60
  "@nx/js": "~16.5.0",
61
61
  "@nx/linter": "~16.5.0",
62
- "@o3r/build-helpers": "^9.1.0-alpha.10",
63
- "@o3r/dev-tools": "^9.1.0-alpha.10",
64
- "@o3r/eslint-plugin": "^9.1.0-alpha.10",
62
+ "@o3r/build-helpers": "^9.1.0-alpha.11",
63
+ "@o3r/dev-tools": "^9.1.0-alpha.11",
64
+ "@o3r/eslint-plugin": "^9.1.0-alpha.11",
65
65
  "@schematics/angular": "~16.0.5",
66
66
  "@types/jest": "~29.5.2",
67
67
  "@types/node": "^18.0.0",
@@ -122,4 +122,21 @@ export declare const findMethodByName: (methodName: string) => (classElement: ts
122
122
  * @param blockStatements
123
123
  */
124
124
  export declare const getSimpleUpdatedMethod: (node: ts.ClassDeclaration, factory: ts.NodeFactory, methodName: string, blockStatements: ts.Statement[]) => ts.MethodDeclaration;
125
+ /**
126
+ * Return true is the node is the ExpressionStatement of the TestBedConfiguration
127
+ *
128
+ * @param node
129
+ */
130
+ export declare const isTestBedConfiguration: (node: ts.Node) => node is ts.ExpressionStatement & {
131
+ expression: ts.CallExpression & {
132
+ expression: ts.PropertyAccessExpression;
133
+ };
134
+ };
135
+ /**
136
+ * TransformerFactory to add imports at spec initialization and code to be run just after
137
+ *
138
+ * @param imports
139
+ * @param code
140
+ */
141
+ export declare const addImportsAndCodeBlockStatementAtSpecInitializationTransformerFactory: (imports: (string | ts.Expression)[], code?: string) => ts.TransformerFactory<ts.Node>;
125
142
  //# sourceMappingURL=ast.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../../src/utility/ast.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,gFAAgF,CAAC;AAGrG;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,CAa/I;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,CAc9I;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU;;;;IAc7D;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,eAajF;AAED;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,EAAE,CAAC,SAAS,GAAG;IAC5C,UAAU,EAAE,EAAE,CAAC,cAAc,GAAG;QAC9B,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC;KAC3B,CAAC;CACH,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,SAAU,OAAO,6BAGA,CAAC;AAEjD;;;;;GAKG;AACH,eAAO,MAAM,qCAAqC,cAAe,gBAAgB,WAAW,MAAM,8BAUjG,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,6CAA6C,QAAS,MAAM,qCAQxE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,QAAS,MAAM,sBAW1D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,QAAS,MAAM,mBAU5D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uCAAuC,QAAS,MAAM,8BAQlE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,kBAAmB,GAAG,YAAY,iBAAiB,GAAG,YAAY,WAyB9F,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,qCAAqC,mBAChC,MAAM,2BACE,GAAG,gBAAgB,KAAK,OAAO,KACtD,GAAG,kBAAkB,CAAC,OAAO,CAiC/B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,kBACxB,GAAG,YAAY,EAAE,YACtB,OAAO,MAAM,EAAE,MAAM,CAAC,SAiBjC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,kBAAkB,CAAC,EAAE,CAAC,UAAU,CASlE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,eAAgB,MAAM,oBAAoB,GAAG,YAAY,yCAG1B,CAAC;AAE7D;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,SAAU,GAAG,gBAAgB,WAAW,GAAG,WAAW,cAAc,MAAM,mBAAmB,GAAG,SAAS,EAAE,yBA2B7I,CAAC"}
1
+ {"version":3,"file":"ast.d.ts","sourceRoot":"","sources":["../../../src/utility/ast.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,gFAAgF,CAAC;AAGrG;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,CAa/I;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,IAAI,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,CAc9I;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU;;;;IAc7D;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,eAajF;AAED;;;;GAIG;AACH,MAAM,MAAM,gBAAgB,GAAG,EAAE,CAAC,SAAS,GAAG;IAC5C,UAAU,EAAE,EAAE,CAAC,cAAc,GAAG;QAC9B,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC;KAC3B,CAAC;CACH,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,SAAU,OAAO,6BAGA,CAAC;AAEjD;;;;;GAKG;AACH,eAAO,MAAM,qCAAqC,cAAe,gBAAgB,WAAW,MAAM,8BAUjG,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,6CAA6C,QAAS,MAAM,qCAQxE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,QAAS,MAAM,sBAW1D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,QAAS,MAAM,mBAU5D,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,uCAAuC,QAAS,MAAM,8BAQlE,CAAC;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,kBAAmB,GAAG,YAAY,iBAAiB,GAAG,YAAY,WAyB9F,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,qCAAqC,mBAChC,MAAM,2BACE,GAAG,gBAAgB,KAAK,OAAO,KACtD,GAAG,kBAAkB,CAAC,OAAO,CAiC/B,CAAC;AAEF;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,kBACxB,GAAG,YAAY,EAAE,YACtB,OAAO,MAAM,EAAE,MAAM,CAAC,SAiBjC,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,iBAAiB,EAAE,EAAE,CAAC,kBAAkB,CAAC,EAAE,CAAC,UAAU,CASlE,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,eAAgB,MAAM,oBAAoB,GAAG,YAAY,yCAG1B,CAAC;AAE7D;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB,SAAU,GAAG,gBAAgB,WAAW,GAAG,WAAW,cAAc,MAAM,mBAAmB,GAAG,SAAS,EAAE,yBA2B7I,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,SAAU,OAAO;gBAAkD,GAAG,cAAc,GAAG;QAAE,UAAU,EAAE,GAAG,wBAAwB,CAAA;KAAE;CAOzF,CAAC;AAE7E;;;;;GAKG;AACH,eAAO,MAAM,qEAAqE,YACvE,CAAC,MAAM,GAAG,GAAG,UAAU,CAAC,EAAE,SAC5B,MAAM,KACZ,GAAG,kBAAkB,CAAC,OAAO,CAmD7B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getSimpleUpdatedMethod = exports.findMethodByName = exports.fixStringLiterals = exports.addCommentsOnClassProperties = exports.addInterfaceToClassTransformerFactory = exports.sortClassElement = exports.generateParametersDeclarationFromString = exports.generateBlockStatementsFromString = exports.generateClassElementsFromString = exports.generateImplementsExpressionWithTypeArguments = exports.getPropertyFromDecoratorFirstArgument = exports.isDecoratorWithArg = exports.getExportedSymbolsFromFile = exports.parseImportsFromFile = exports.findLastNodeOfKind = exports.findFirstNodeOfKind = void 0;
3
+ exports.addImportsAndCodeBlockStatementAtSpecInitializationTransformerFactory = exports.isTestBedConfiguration = exports.getSimpleUpdatedMethod = exports.findMethodByName = exports.fixStringLiterals = exports.addCommentsOnClassProperties = exports.addInterfaceToClassTransformerFactory = exports.sortClassElement = exports.generateParametersDeclarationFromString = exports.generateBlockStatementsFromString = exports.generateClassElementsFromString = exports.generateImplementsExpressionWithTypeArguments = exports.getPropertyFromDecoratorFirstArgument = exports.isDecoratorWithArg = exports.getExportedSymbolsFromFile = exports.parseImportsFromFile = exports.findLastNodeOfKind = exports.findFirstNodeOfKind = void 0;
4
4
  const ts = require("@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript");
5
5
  const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
6
6
  /**
@@ -276,4 +276,50 @@ const getSimpleUpdatedMethod = (node, factory, methodName, blockStatements) => {
276
276
  ? factory.updateBlock(originalMethod.body, originalMethod.body.statements.concat(blockStatements)) : factory.createBlock(blockStatements, true)) : factory.createMethodDeclaration([factory.createToken(ts.SyntaxKind.PublicKeyword)], undefined, factory.createIdentifier(methodName), undefined, undefined, [], undefined, factory.createBlock(blockStatements, true));
277
277
  };
278
278
  exports.getSimpleUpdatedMethod = getSimpleUpdatedMethod;
279
+ /**
280
+ * Return true is the node is the ExpressionStatement of the TestBedConfiguration
281
+ *
282
+ * @param node
283
+ */
284
+ const isTestBedConfiguration = (node) => (ts.isExpressionStatement(node)
285
+ && ts.isCallExpression(node.expression)
286
+ && ts.isPropertyAccessExpression(node.expression.expression)
287
+ && ts.isIdentifier(node.expression.expression.expression)
288
+ && node.expression.expression.expression.escapedText.toString() === 'TestBed'
289
+ && node.expression.expression.name.escapedText.toString() === 'configureTestingModule')
290
+ || (ts.isAwaitExpression(node) && (0, exports.isTestBedConfiguration)(node.expression));
291
+ exports.isTestBedConfiguration = isTestBedConfiguration;
292
+ /**
293
+ * TransformerFactory to add imports at spec initialization and code to be run just after
294
+ *
295
+ * @param imports
296
+ * @param code
297
+ */
298
+ const addImportsAndCodeBlockStatementAtSpecInitializationTransformerFactory = (imports, code) => (ctx) => (rootNode) => {
299
+ const { factory } = ctx;
300
+ const visit = (node) => {
301
+ if (ts.isBlock(node) && !!node.statements.find(exports.isTestBedConfiguration)) {
302
+ return factory.updateBlock(node, node.statements
303
+ .reduce((acc, statement) => {
304
+ if ((0, exports.isTestBedConfiguration)(statement)) {
305
+ const firstArgProps = statement.expression.arguments[0].properties;
306
+ const importsProp = firstArgProps.find((prop) => prop.name?.getText() === 'imports');
307
+ return acc.concat(factory.updateExpressionStatement(statement, factory.updateCallExpression(statement.expression, statement.expression.expression, statement.expression.typeArguments, [
308
+ factory.createObjectLiteralExpression([
309
+ ...firstArgProps.filter((prop) => prop.name?.getText() !== 'imports'),
310
+ factory.createPropertyAssignment('imports', factory.createArrayLiteralExpression((importsProp
311
+ ? [...importsProp.initializer.elements]
312
+ : []).concat(imports.map((importName) => typeof importName === 'string' ? factory.createIdentifier(importName) : importName)), true))
313
+ ], true)
314
+ ])));
315
+ }
316
+ return acc.concat(statement);
317
+ }, [])
318
+ .concat(code ? (0, exports.generateBlockStatementsFromString)(code) : []));
319
+ }
320
+ return ts.visitEachChild(node, visit, ctx);
321
+ };
322
+ return ts.visitNode(rootNode, visit);
323
+ };
324
+ exports.addImportsAndCodeBlockStatementAtSpecInitializationTransformerFactory = addImportsAndCodeBlockStatementAtSpecInitializationTransformerFactory;
279
325
  //# sourceMappingURL=ast.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ast.js","sourceRoot":"","sources":["../../../src/utility/ast.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ast.js","sourceRoot":"","sources":["../../../src/utility/ast.ts"],"names":[],"mappings":";;;AAAA,qGAAqG;AACrG,qEAAkE;AAElE;;;;;;GAMG;AACH,SAAgB,mBAAmB,CAA8B,UAAyB,EAAE,UAAyB,EAAE,IAAc;IACnI,MAAM,WAAW,GAAG,IAAI,IAAI,UAAU,CAAC;IACvC,IAAI,GAAG,GAAa,IAAI,CAAC;IACzB,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE;QAC7B,IAAI,CAAC,GAAG,EAAE;YACR,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE;gBACzB,GAAG,GAAG,CAAM,CAAC;aACd;iBAAM;gBACL,GAAG,GAAG,mBAAmB,CAAC,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;aACtD;SACF;IACH,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC;AAbD,kDAaC;AAED;;;;;;GAMG;AACH,SAAgB,kBAAkB,CAA8B,UAAyB,EAAE,UAAyB,EAAE,IAAc;IAClI,MAAM,WAAW,GAAG,IAAI,IAAI,UAAU,CAAC;IACvC,IAAI,GAAG,GAAa,IAAI,CAAC;IACzB,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,EAAE;QAC7B,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,EAAE;YACzB,GAAG,GAAG,GAAG,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAM,CAAC;SAC7C;aAAM;YACL,MAAM,KAAK,GAAG,kBAAkB,CAAI,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC;YAC/D,IAAI,KAAK,EAAE;gBACT,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;aAC1D;SACF;IACH,CAAC,CAAC,CAAC;IACH,OAAO,GAAG,CAAC;AACb,CAAC;AAdD,gDAcC;AAED;;;;GAIG;AACH,SAAgB,oBAAoB,CAAC,UAAyB;IAC5D,6FAA6F;IAC7F,OAAO,IAAA,qBAAS,EAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE;QAC5E,MAAM,GAAG,GAAG,OAA+B,CAAC;QAC5C,MAAM,UAAU,GAAG,GAAG,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAEtE,6DAA6D;QAC7D,MAAM,WAAW,GAAG,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QACvE,MAAM,OAAO,GAAG,WAAW,IAAI,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,CAAC;YAC7D,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAC1D,EAAE,CAAC;QAEL,OAAO,EAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;AACL,CAAC;AAdD,oDAcC;AAED;;;;;GAKG;AACH,SAAgB,0BAA0B,CAAC,OAAmB,EAAE,UAAkB;IAChF,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC;IAC7C,MAAM,UAAU,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;QACxD,OAAO,IAAI,CAAC,QAAQ,KAAK,UAAU,CAAC;IACtC,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,UAAU,EAAE;QACf,OAAO,EAAE,CAAC;KACX;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;IAE3D,OAAO,WAAW,CAAC,kBAAkB,CAAC,MAAO,CAAC,CAAC;AACjD,CAAC;AAbD,gEAaC;AAaD;;;;GAIG;AACI,MAAM,kBAAkB,GAAG,CAAC,IAAa,EAA4B,EAAE,CAC5E,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC;OACjB,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC;OACpC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;AAHpC,QAAA,kBAAkB,sBAGkB;AAEjD;;;;;GAKG;AACI,MAAM,qCAAqC,GAAG,CAAC,SAA2B,EAAE,OAAe,EAAE,EAAE;IACpG,MAAM,wBAAwB,GAAG,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;IAEnE,IAAI,EAAE,CAAC,yBAAyB,CAAC,wBAAwB,CAAC,EAAE;QAC1D,OAAO,wBAAwB,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,EAAiC,EAAE,CACtF,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC;eAC1B,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;eAC1B,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,OAAO,CAChD,EAAE,WAAW,CAAC;KAChB;AACH,CAAC,CAAC;AAVW,QAAA,qCAAqC,yCAUhD;AAEF;;;;GAIG;AACI,MAAM,6CAA6C,GAAG,CAAC,GAAW,EAAE,EAAE;IAC3E,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CACpC,UAAU,EACV,sBAAsB,GAAG,KAAK,EAC9B,EAAE,CAAC,YAAY,CAAC,MAAM,EACtB,IAAI,CACL,CAAC;IACF,OAAO,CAAC,GAAI,UAAU,CAAC,UAAU,CAAC,CAAC,CAAyB,CAAC,eAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAC1F,CAAC,CAAC;AARW,QAAA,6CAA6C,iDAQxD;AAEF;;;;GAIG;AACI,MAAM,+BAA+B,GAAG,CAAC,GAAW,EAAE,EAAE;IAC7D,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CACpC,UAAU,EACV;QACI,GAAG;MACL,EACF,EAAE,CAAC,YAAY,CAAC,MAAM,EACtB,IAAI,CACL,CAAC;IAEF,OAAO,CAAC,GAAI,UAAU,CAAC,UAAU,CAAC,CAAC,CAAyB,CAAC,OAAO,CAAC,CAAC;AACxE,CAAC,CAAC;AAXW,QAAA,+BAA+B,mCAW1C;AAEF;;;;GAIG;AACI,MAAM,iCAAiC,GAAG,CAAC,GAAW,EAAE,EAAE;IAC/D,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CACpC,UAAU,EACV;QACI,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;MAC1B,EACF,EAAE,CAAC,YAAY,CAAC,MAAM,EACtB,IAAI,CACL,CAAC;IACF,OAAO,CAAC,GAAI,UAAU,CAAC,UAAU,CAAC,CAAC,CAA4B,CAAC,IAAK,CAAC,UAAU,CAAC,CAAC;AACpF,CAAC,CAAC;AAVW,QAAA,iCAAiC,qCAU5C;AAEF;;;;GAIG;AACI,MAAM,uCAAuC,GAAG,CAAC,GAAW,EAAE,EAAE;IACrE,MAAM,UAAU,GAAG,EAAE,CAAC,gBAAgB,CACpC,UAAU,EACV,iBAAiB,GAAG,MAAM,EAC1B,EAAE,CAAC,YAAY,CAAC,MAAM,EACtB,IAAI,CACL,CAAC;IACF,OAAO,CAAC,GAAI,UAAU,CAAC,UAAU,CAAC,CAAC,CAA4B,CAAC,UAAU,CAAC,CAAC;AAC9E,CAAC,CAAC;AARW,QAAA,uCAAuC,2CAQlD;AAEF;;;;;;GAMG;AACI,MAAM,gBAAgB,GAAG,CAAC,aAA8B,EAAE,aAA8B,EAAE,EAAE;IACjG,QAAQ,aAAa,CAAC,IAAI,EAAE;QAC1B,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;YACtC,OAAO,CAAC,CAAC,CAAC;SACX;QACD,KAAK,EAAE,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAC9B,QAAQ,aAAa,CAAC,IAAI,EAAE;gBAC1B,KAAK,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;oBACtC,OAAO,CAAC,CAAC;iBACV;gBACD,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;oBACpC,OAAO,CAAC,CAAC,CAAC;iBACX;gBACD,OAAO,CAAC,CAAC;oBACP,OAAO,CAAC,CAAC,CAAC;iBACX;aACF;SACF;QACD,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;YACpC,OAAO,CAAC,CAAC;SACV;QACD,OAAO,CAAC,CAAC;YACP,OAAO,CAAC,CAAC;SACV;KACF;AACH,CAAC,CAAC;AAzBW,QAAA,gBAAgB,oBAyB3B;AAEF;;;;;GAKG;AACI,MAAM,qCAAqC,GAAG,CACnD,cAAsB,EACtB,kBAA0D,GAAG,EAAE,CAAC,IAAI,EACpC,EAAE;IAClC,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE;QAC3B,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;QACxB,MAAM,KAAK,GAAG,CAAC,IAAa,EAAW,EAAE;YACvC,IAAI,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE;gBACxD,MAAM,iBAAiB,GAAG,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC,cAAc,EAAE,EAAE,CAAC,cAAc,CAAC,KAAK,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC;gBACnI,MAAM,qBAAqB,GAAG,IAAA,qDAA6C,EAAC,cAAc,CAAC,CAAC;gBAE5F,MAAM,oBAAoB,GAAG,iBAAiB;oBAC5C,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,iBAAiB,EAAE,CAAC,GAAG,iBAAiB,CAAC,KAAK,EAAE,GAAG,qBAAqB,CAAC,CAAC;oBACzG,CAAC,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC,GAAG,qBAAqB,CAAC,CAAC,CAAC;gBAE9F,MAAM,eAAe,GAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC;qBAC3E,MAAM,CAAC,CAAC,CAAoB,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC,UAAU,CAAC,iBAAiB,CAAC;qBAC7E,MAAM,CAAC,oBAAoB,CAAC,CAAC;gBAEhC,MAAM,YAAY,GAAI,EAAwB;qBAC3C,MAAM,CAAC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;qBACpC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;gBAEvC,OAAO,OAAO,CAAC,sBAAsB,CACnC,IAAI,EACJ,YAAY,EACZ,IAAI,CAAC,IAAI,EACT,IAAI,CAAC,cAAc,EACnB,eAAe,EACf,IAAI,CAAC,OAAO,CACb,CAAC;aACH;YACD,OAAO,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;QAC7C,CAAC,CAAC;QACF,OAAO,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACvC,CAAC,CAAC;AACJ,CAAC,CAAC;AApCW,QAAA,qCAAqC,yCAoChD;AAEF;;;;;GAKG;AACI,MAAM,4BAA4B,GAAG,CAC1C,aAAgC,EAChC,QAAgC,EAChC,EAAE;IACF,aAAa,CAAC,MAAM,CAAC,CAAC,YAAY,EAAoE,EAAE,CACtG,EAAE,CAAC,qBAAqB,CAAC,YAAY,CAAC;WACnC,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC,CACtC,CAAC,OAAO,CAAC,CAAC,YAAY,EAAE,EAAE;QACzB,MAAM,OAAO,GAAG,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC;QACnE,IAAI,CAAC,OAAO,EAAE;YACZ,OAAO;SACR;QACD,EAAE,CAAC,0BAA0B,CAC3B,YAAY,EACZ,EAAE,CAAC,UAAU,CAAC,sBAAsB,EACpC,KAAK,OAAO,EAAE,EACd,IAAI,CACL,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAnBW,QAAA,4BAA4B,gCAmBvC;AAEF;;;;GAIG;AACI,MAAM,iBAAiB,GAAyC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE,EAAE;IAC3F,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;IACxB,MAAM,KAAK,GAAG,CAAC,IAAa,EAAW,EAAE;QACvC,IAAI,IAAI,CAAC,IAAI,KAAK,EAAE,CAAC,UAAU,CAAC,aAAa,EAAE;YAC7C,OAAO,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,CAAC;SAC1F;QACD,OAAO,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC7C,CAAC,CAAC;IACF,OAAO,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAkB,CAAC;AACxD,CAAC,CAAC;AATW,QAAA,iBAAiB,qBAS5B;AAEF;;;;GAIG;AACI,MAAM,gBAAgB,GAAG,CAAC,UAAkB,EAAE,EAAE,CAAC,CAAC,YAA6B,EAAwC,EAAE,CAC9H,EAAE,CAAC,mBAAmB,CAAC,YAAY,CAAC;OACjC,EAAE,CAAC,YAAY,CAAC,YAAY,CAAC,IAAI,CAAC;OAClC,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,UAAU,CAAC;AAHhD,QAAA,gBAAgB,oBAGgC;AAE7D;;;;;;;GAOG;AACI,MAAM,sBAAsB,GAAG,CAAC,IAAyB,EAAE,OAAuB,EAAE,UAAkB,EAAE,eAA+B,EAAE,EAAE;IAChJ,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAA,wBAAgB,EAAC,UAAU,CAAC,CAAC,CAAC;IACvE,OAAO,cAAc;QACnB,CAAC,CAAC,OAAO,CAAC,uBAAuB,CAC/B,cAAc,EACd,EAAE,CAAC,YAAY,CAAC,cAAc,CAAC,EAC/B,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,IAAI,EACnB,cAAc,CAAC,aAAa,EAC5B,cAAc,CAAC,cAAc,EAC7B,cAAc,CAAC,UAAU,EACzB,cAAc,CAAC,IAAI,EACnB,cAAc,CAAC,IAAI;YACjB,CAAC,CAAC,OAAO,CAAC,WAAW,CACnB,cAAc,CAAC,IAAI,EACnB,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,CACvD,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,CACjD,CAAC,CAAC,CAAC,OAAO,CAAC,uBAAuB,CACjC,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,EAClD,SAAS,EACT,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,EACpC,SAAS,EACT,SAAS,EACT,EAAE,EACF,SAAS,EACT,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC,CAC3C,CAAC;AACN,CAAC,CAAC;AA3BW,QAAA,sBAAsB,0BA2BjC;AAEF;;;;GAIG;AACI,MAAM,sBAAsB,GAAG,CAAC,IAAa,EAAoH,EAAE,CACxK,CAAC,EAAE,CAAC,qBAAqB,CAAC,IAAI,CAAC;OAC5B,EAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,UAAU,CAAC;OACpC,EAAE,CAAC,0BAA0B,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;OACzD,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC;OACtD,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,SAAS;OAC1E,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,wBAAwB,CAAC;OACpF,CAAC,EAAE,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,IAAA,8BAAsB,EAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;AAPhE,QAAA,sBAAsB,0BAO0C;AAE7E;;;;;GAKG;AACI,MAAM,qEAAqE,GAAG,CACnF,OAAmC,EACnC,IAAa,EACmB,EAAE,CAClC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,QAAiB,EAAE,EAAE;IAC7B,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;IACxB,MAAM,KAAK,GAAG,CAAC,IAAa,EAAW,EAAE;QACvC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,8BAAsB,CAAC,EAAE;YACtE,OAAO,OAAO,CAAC,WAAW,CACxB,IAAI,EACJ,IAAI,CAAC,UAAU;iBACZ,MAAM,CAAiB,CAAC,GAAG,EAAE,SAAS,EAAE,EAAE;gBACzC,IAAI,IAAA,8BAAsB,EAAC,SAAS,CAAC,EAAE;oBACrC,MAAM,aAAa,GAAI,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAgC,CAAC,UAAU,CAAC;oBACnG,MAAM,WAAW,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,IAAI,EAA8E,EAAE,CAC1H,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,SAAS,CACnC,CAAC;oBAEF,OAAO,GAAG,CAAC,MAAM,CACf,OAAO,CAAC,yBAAyB,CAC/B,SAAS,EACT,OAAO,CAAC,oBAAoB,CAC1B,SAAS,CAAC,UAAU,EACpB,SAAS,CAAC,UAAU,CAAC,UAAU,EAC/B,SAAS,CAAC,UAAU,CAAC,aAAa,EAClC;wBACE,OAAO,CAAC,6BAA6B,CAAC;4BACpC,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,SAAS,CAAC;4BACrE,OAAO,CAAC,wBAAwB,CAAC,SAAS,EAAE,OAAO,CAAC,4BAA4B,CAC9E,CACE,WAAW;gCACT,CAAC,CAAC,CAAC,GAAG,WAAW,CAAC,WAAW,CAAC,QAAQ,CAAC;gCACvC,CAAC,CAAC,EAAE,CACP,CAAC,MAAM,CACN,OAAO,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,OAAO,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAChH,EACD,IAAI,CACL,CAAC;yBACH,EAAE,IAAI,CAAC;qBACT,CACF,CACF,CACF,CAAC;iBACH;gBACD,OAAO,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YAC/B,CAAC,EAAE,EAAE,CAAC;iBACL,MAAM,CACL,IAAI,CAAC,CAAC,CAAC,IAAA,yCAAiC,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CACpD,CACJ,CAAC;SACH;QACD,OAAO,EAAE,CAAC,cAAc,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;IAC7C,CAAC,CAAC;IACF,OAAO,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;AACvC,CAAC,CAAC;AAtDS,QAAA,qEAAqE,yEAsD9E"}
@@ -37,4 +37,10 @@ export declare const getO3rComponentInfoOrThrowIfNotFound: (tree: Tree, componen
37
37
  standalone: boolean;
38
38
  templateRelativePath: string | undefined;
39
39
  };
40
+ /**
41
+ * Transformer factory to add imports into the angular component decorator
42
+ *
43
+ * @param imports
44
+ */
45
+ export declare const addImportsIntoComponentDecoratorTransformerFactory: (imports: string[]) => ts.TransformerFactory<ts.Node>;
40
46
  //# sourceMappingURL=component.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/utility/component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAA6D,MAAM,OAAO,CAAC;AAEpG;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,SAAU,OAAO,6BAEsB,CAAC;AAEvE;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,SAAU,OAAO,6BAEwB,CAAC;AAE1E;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,qBAAsB,GAAG,gBAAgB,YAAwE,CAAC;AAEjJ;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,qBAAsB,GAAG,gBAAgB,YAEA,CAAC;AAE1E;;;;;GAKG;AACH,eAAO,MAAM,oCAAoC,SAAU,IAAI,iBAAiB,MAAM;;;;;CAgErF,CAAC"}
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/utility/component.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,gBAAgB,EAA6D,MAAM,OAAO,CAAC;AAEpG;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,SAAU,OAAO,6BAEsB,CAAC;AAEvE;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,SAAU,OAAO,6BAEwB,CAAC;AAE1E;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,qBAAsB,GAAG,gBAAgB,YAAwE,CAAC;AAEjJ;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,qBAAsB,GAAG,gBAAgB,YAEA,CAAC;AAE1E;;;;;GAKG;AACH,eAAO,MAAM,oCAAoC,SAAU,IAAI,iBAAiB,MAAM;;;;;CAgErF,CAAC;AAEF;;;;GAIG;AACH,eAAO,MAAM,kDAAkD,YACpD,MAAM,EAAE,KAChB,GAAG,kBAAkB,CAAC,OAAO,CA4B/B,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getO3rComponentInfoOrThrowIfNotFound = exports.isO3rClassComponent = exports.isNgClassComponent = exports.isO3rClassDecorator = exports.isNgClassDecorator = void 0;
3
+ exports.addImportsIntoComponentDecoratorTransformerFactory = exports.getO3rComponentInfoOrThrowIfNotFound = exports.isO3rClassComponent = exports.isNgClassComponent = exports.isO3rClassDecorator = exports.isNgClassDecorator = void 0;
4
4
  const ts = require("typescript");
5
5
  const ast_1 = require("./ast");
6
6
  /**
@@ -78,4 +78,27 @@ const getO3rComponentInfoOrThrowIfNotFound = (tree, componentPath) => {
78
78
  };
79
79
  };
80
80
  exports.getO3rComponentInfoOrThrowIfNotFound = getO3rComponentInfoOrThrowIfNotFound;
81
+ /**
82
+ * Transformer factory to add imports into the angular component decorator
83
+ *
84
+ * @param imports
85
+ */
86
+ const addImportsIntoComponentDecoratorTransformerFactory = (imports) => (ctx) => (rootNode) => {
87
+ const { factory } = ctx;
88
+ const visit = (node) => {
89
+ if ((0, exports.isNgClassDecorator)(node)) {
90
+ const importInitializer = (0, ast_1.getPropertyFromDecoratorFirstArgument)(node, 'imports');
91
+ const importsList = importInitializer && ts.isArrayLiteralExpression(importInitializer) ? [...importInitializer.elements] : [];
92
+ return factory.updateDecorator(node, factory.updateCallExpression(node.expression, node.expression.expression, node.expression.typeArguments, [
93
+ factory.createObjectLiteralExpression([
94
+ ...node.expression.arguments[0].properties.filter((prop) => prop.name?.getText() !== 'imports'),
95
+ factory.createPropertyAssignment('imports', factory.createArrayLiteralExpression(importsList.concat(imports.map((importName) => factory.createIdentifier(importName))), true))
96
+ ], true)
97
+ ]));
98
+ }
99
+ return ts.visitEachChild(node, visit, ctx);
100
+ };
101
+ return ts.visitNode(rootNode, visit);
102
+ };
103
+ exports.addImportsIntoComponentDecoratorTransformerFactory = addImportsIntoComponentDecoratorTransformerFactory;
81
104
  //# sourceMappingURL=component.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../src/utility/component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"component.js","sourceRoot":"","sources":["../../../src/utility/component.ts"],"names":[],"mappings":"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"}