@abp/ng.schematics 6.0.0-rc.4 → 6.0.0

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.
Files changed (167) hide show
  1. package/collection.json +5 -0
  2. package/commands/api/index.js +38 -28
  3. package/commands/api/index.js.map +1 -1
  4. package/commands/api/schema.json +9 -0
  5. package/commands/create-lib/files-package/__libraryName@kebab__/.eslintrc.json.template +44 -0
  6. package/commands/create-lib/files-package/__libraryName@kebab__/config/ng-package.json.template +7 -0
  7. package/commands/create-lib/files-package/__libraryName@kebab__/config/src/__libraryName@kebab__-config.module.ts.template +12 -0
  8. package/commands/create-lib/files-package/__libraryName@kebab__/config/src/enums/index.ts.template +1 -0
  9. package/commands/create-lib/files-package/__libraryName@kebab__/config/src/enums/route-names.ts.template +3 -0
  10. package/commands/create-lib/files-package/__libraryName@kebab__/config/src/providers/index.ts.template +1 -0
  11. package/commands/create-lib/files-package/__libraryName@kebab__/config/src/providers/route.provider.ts.template +26 -0
  12. package/commands/create-lib/files-package/__libraryName@kebab__/config/src/public-api.ts.template +3 -0
  13. package/commands/create-lib/files-package/__libraryName@kebab__/karma.conf.js.template +44 -0
  14. package/commands/create-lib/files-package/__libraryName@kebab__/ng-package.json.template +7 -0
  15. package/commands/create-lib/files-package/__libraryName@kebab__/package.json.template +11 -0
  16. package/commands/create-lib/files-package/__libraryName@kebab__/src/lib/__libraryName@kebab__-routing.module.ts.template +18 -0
  17. package/commands/create-lib/files-package/__libraryName@kebab__/src/lib/__libraryName@kebab__.module.ts.template +22 -0
  18. package/commands/create-lib/files-package/__libraryName@kebab__/src/public-api.ts.template +4 -0
  19. package/commands/create-lib/files-package/__libraryName@kebab__/src/test.ts.template +26 -0
  20. package/commands/create-lib/files-package/__libraryName@kebab__/tsconfig.lib.json.template +20 -0
  21. package/commands/create-lib/files-package/__libraryName@kebab__/tsconfig.lib.prod.json.template +10 -0
  22. package/commands/create-lib/files-package/__libraryName@kebab__/tsconfig.spec.json.template +17 -0
  23. package/commands/create-lib/files-secondary-entrypoint/__libraryName@kebab__/ng-package.json.template +7 -0
  24. package/commands/create-lib/files-secondary-entrypoint/__libraryName@kebab__/src/lib/__target@kebab__-__libraryName@kebab__.module.ts.template +11 -0
  25. package/commands/create-lib/files-secondary-entrypoint/__libraryName@kebab__/src/lib/index.ts.template +1 -0
  26. package/commands/create-lib/files-secondary-entrypoint/__libraryName@kebab__/src/public-api.ts.template +1 -0
  27. package/commands/create-lib/index.d.ts +6 -0
  28. package/commands/create-lib/index.js +124 -0
  29. package/commands/create-lib/index.js.map +1 -0
  30. package/commands/create-lib/models/generate-lib-schema.d.ts +13 -0
  31. package/commands/create-lib/models/generate-lib-schema.js +3 -0
  32. package/commands/create-lib/models/generate-lib-schema.js.map +1 -0
  33. package/commands/create-lib/models/index.d.ts +1 -0
  34. package/commands/create-lib/models/index.js +18 -0
  35. package/commands/create-lib/models/index.js.map +1 -0
  36. package/commands/create-lib/schema.json +36 -0
  37. package/commands/proxy-add/index.js +15 -15
  38. package/commands/proxy-add/index.js.map +1 -1
  39. package/commands/proxy-add/schema.json +9 -0
  40. package/commands/proxy-index/index.d.ts +3 -2
  41. package/commands/proxy-index/index.js +5 -5
  42. package/commands/proxy-index/index.js.map +1 -1
  43. package/commands/proxy-index/schema.json +9 -0
  44. package/commands/proxy-refresh/index.d.ts +2 -2
  45. package/commands/proxy-refresh/index.js +13 -13
  46. package/commands/proxy-refresh/index.js.map +1 -1
  47. package/commands/proxy-refresh/schema.json +10 -0
  48. package/commands/proxy-remove/index.d.ts +2 -2
  49. package/commands/proxy-remove/index.js +13 -13
  50. package/commands/proxy-remove/index.js.map +1 -1
  51. package/commands/proxy-remove/schema.json +9 -0
  52. package/constants/index.js +6 -2
  53. package/constants/index.js.map +1 -1
  54. package/constants/symbols.d.ts +1 -0
  55. package/constants/symbols.js +5 -0
  56. package/constants/symbols.js.map +1 -0
  57. package/enums/exception.d.ts +2 -1
  58. package/enums/index.js +6 -2
  59. package/enums/index.js.map +1 -1
  60. package/models/generate-proxy-schema.d.ts +4 -0
  61. package/models/index.js +6 -2
  62. package/models/index.js.map +1 -1
  63. package/models/method.js +3 -3
  64. package/models/method.js.map +1 -1
  65. package/package.json +6 -5
  66. package/test-setup.js +2 -2
  67. package/test-setup.js.map +1 -1
  68. package/utils/angular/ast-utils.d.ts +1 -14
  69. package/utils/angular/ast-utils.js +45 -117
  70. package/utils/angular/ast-utils.js.map +1 -1
  71. package/utils/angular/change.d.ts +6 -4
  72. package/utils/angular/change.js +29 -4
  73. package/utils/angular/change.js.map +1 -1
  74. package/utils/angular/dependencies.d.ts +1 -1
  75. package/utils/angular/dependencies.js +7 -9
  76. package/utils/angular/dependencies.js.map +1 -1
  77. package/utils/angular/dependency.d.ts +96 -0
  78. package/utils/angular/dependency.js +123 -0
  79. package/utils/angular/dependency.js.map +1 -0
  80. package/utils/angular/find-module.d.ts +2 -4
  81. package/utils/angular/find-module.js +22 -22
  82. package/utils/angular/find-module.js.map +1 -1
  83. package/utils/angular/generate-from-files.d.ts +17 -0
  84. package/utils/angular/generate-from-files.js +37 -0
  85. package/utils/angular/generate-from-files.js.map +1 -0
  86. package/utils/angular/index.d.ts +1 -5
  87. package/utils/angular/index.js +7 -7
  88. package/utils/angular/index.js.map +1 -1
  89. package/utils/angular/json-file.d.ts +4 -4
  90. package/utils/angular/json-file.js +24 -17
  91. package/utils/angular/json-file.js.map +1 -1
  92. package/utils/angular/ng-ast-utils.d.ts +7 -0
  93. package/utils/angular/ng-ast-utils.js +13 -21
  94. package/utils/angular/ng-ast-utils.js.map +1 -1
  95. package/utils/angular/parse-name.d.ts +1 -1
  96. package/utils/angular/parse-name.js +6 -6
  97. package/utils/angular/parse-name.js.map +1 -1
  98. package/utils/angular/paths.d.ts +1 -1
  99. package/utils/angular/paths.js +2 -2
  100. package/utils/angular/paths.js.map +1 -1
  101. package/utils/angular/project-targets.d.ts +1 -1
  102. package/utils/angular/project-targets.js +1 -1
  103. package/utils/angular/validation.d.ts +8 -2
  104. package/utils/angular/validation.js +10 -55
  105. package/utils/angular/validation.js.map +1 -1
  106. package/utils/angular/workspace-models.d.ts +16 -15
  107. package/utils/angular/workspace-models.js +9 -4
  108. package/utils/angular/workspace-models.js.map +1 -1
  109. package/utils/angular/workspace.d.ts +40 -5
  110. package/utils/angular/workspace.js +96 -38
  111. package/utils/angular/workspace.js.map +1 -1
  112. package/utils/angular-schematic/generate-lib.d.ts +3 -0
  113. package/utils/angular-schematic/generate-lib.js +54 -0
  114. package/utils/angular-schematic/generate-lib.js.map +1 -0
  115. package/utils/angular-schematic/index.d.ts +1 -0
  116. package/utils/angular-schematic/index.js +18 -0
  117. package/utils/angular-schematic/index.js.map +1 -0
  118. package/utils/api.js +1 -1
  119. package/utils/api.js.map +1 -1
  120. package/utils/ast.js +3 -3
  121. package/utils/ast.js.map +1 -1
  122. package/utils/barrel.js +1 -1
  123. package/utils/barrel.js.map +1 -1
  124. package/utils/common.js +1 -1
  125. package/utils/common.js.map +1 -1
  126. package/utils/enum.js +2 -2
  127. package/utils/enum.js.map +1 -1
  128. package/utils/generics.js +1 -2
  129. package/utils/generics.js.map +1 -1
  130. package/utils/index.js +6 -2
  131. package/utils/index.js.map +1 -1
  132. package/utils/methods.js +2 -1
  133. package/utils/methods.js.map +1 -1
  134. package/utils/model.js +17 -19
  135. package/utils/model.js.map +1 -1
  136. package/utils/namespace.js +1 -1
  137. package/utils/namespace.js.map +1 -1
  138. package/utils/path.js +1 -1
  139. package/utils/path.js.map +1 -1
  140. package/utils/rule.js +3 -3
  141. package/utils/rule.js.map +1 -1
  142. package/utils/service.js +15 -11
  143. package/utils/service.js.map +1 -1
  144. package/utils/source.js +19 -19
  145. package/utils/source.js.map +1 -1
  146. package/utils/text.js +18 -9
  147. package/utils/text.js.map +1 -1
  148. package/utils/type.js +6 -6
  149. package/utils/type.js.map +1 -1
  150. package/utils/workspace.d.ts +9 -1
  151. package/utils/workspace.js +51 -9
  152. package/utils/workspace.js.map +1 -1
  153. package/utils/angular/config.d.ts +0 -455
  154. package/utils/angular/config.js +0 -71
  155. package/utils/angular/config.js.map +0 -1
  156. package/utils/angular/json-utils.d.ts +0 -14
  157. package/utils/angular/json-utils.js +0 -159
  158. package/utils/angular/json-utils.js.map +0 -1
  159. package/utils/angular/latest-versions.d.ts +0 -18
  160. package/utils/angular/latest-versions.js +0 -27
  161. package/utils/angular/latest-versions.js.map +0 -1
  162. package/utils/angular/lint-fix.d.ts +0 -9
  163. package/utils/angular/lint-fix.js +0 -42
  164. package/utils/angular/lint-fix.js.map +0 -1
  165. package/utils/angular/tsconfig.d.ts +0 -16
  166. package/utils/angular/tsconfig.js +0 -63
  167. package/utils/angular/tsconfig.js.map +0 -1
@@ -1,13 +1,14 @@
1
1
  "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.addRouteDeclarationToModule = exports.getRouterModuleDeclaration = exports.getEnvironmentExportName = exports.isImported = exports.addEntryComponentToModule = exports.addBootstrapToModule = exports.addExportToModule = exports.addProviderToModule = exports.addImportToModule = exports.addDeclarationToModule = exports.addSymbolToNgModuleMetadata = exports.getMetadataField = exports.getFirstNgModuleName = exports.getDecoratorMetadata = exports.getContentOfKeyLiteral = exports.insertAfterLastOccurrence = exports.findNode = exports.getSourceNodes = exports.findNodes = exports.insertImport = void 0;
4
2
  /**
5
3
  * @license
6
- * Copyright Google Inc. All Rights Reserved.
4
+ * Copyright Google LLC All Rights Reserved.
7
5
  *
8
6
  * Use of this source code is governed by an MIT-style license that can be
9
7
  * found in the LICENSE file at https://angular.io/license
10
8
  */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.addRouteDeclarationToModule = exports.getRouterModuleDeclaration = exports.getEnvironmentExportName = exports.isImported = exports.addBootstrapToModule = exports.addExportToModule = exports.addProviderToModule = exports.addImportToModule = exports.addDeclarationToModule = exports.addSymbolToNgModuleMetadata = exports.getMetadataField = exports.getDecoratorMetadata = exports.insertAfterLastOccurrence = exports.findNode = exports.getSourceNodes = exports.findNodes = exports.insertImport = void 0;
11
+ const core_1 = require("@angular-devkit/core");
11
12
  const ts = require("typescript");
12
13
  const change_1 = require("./change");
13
14
  /**
@@ -84,7 +85,7 @@ function findNodes(node, kindOrGuard, max = Infinity, recursive = false) {
84
85
  }
85
86
  if (max > 0 && (recursive || !test(node))) {
86
87
  for (const child of node.getChildren()) {
87
- findNodes(child, test, max).forEach(node => {
88
+ findNodes(child, test, max, recursive).forEach(node => {
88
89
  if (max > 0) {
89
90
  arr.push(node);
90
91
  }
@@ -120,7 +121,6 @@ function getSourceNodes(sourceFile) {
120
121
  exports.getSourceNodes = getSourceNodes;
121
122
  function findNode(node, kind, text) {
122
123
  if (node.kind === kind && node.getText() === text) {
123
- // throw new Error(node.getText());
124
124
  return node;
125
125
  }
126
126
  let foundNode = null;
@@ -167,19 +167,7 @@ function insertAfterLastOccurrence(nodes, toInsert, file, fallbackPos, syntaxKin
167
167
  return new change_1.InsertChange(file, lastItemPosition, toInsert);
168
168
  }
169
169
  exports.insertAfterLastOccurrence = insertAfterLastOccurrence;
170
- function getContentOfKeyLiteral(_source, node) {
171
- if (node.kind == ts.SyntaxKind.Identifier) {
172
- return node.text;
173
- }
174
- else if (node.kind == ts.SyntaxKind.StringLiteral) {
175
- return node.text;
176
- }
177
- else {
178
- return null;
179
- }
180
- }
181
- exports.getContentOfKeyLiteral = getContentOfKeyLiteral;
182
- function _angularImportsFromNode(node, _sourceFile) {
170
+ function _angularImportsFromNode(node) {
183
171
  const ms = node.moduleSpecifier;
184
172
  let modulePath;
185
173
  switch (ms.kind) {
@@ -225,7 +213,7 @@ function _angularImportsFromNode(node, _sourceFile) {
225
213
  }
226
214
  function getDecoratorMetadata(source, identifier, module) {
227
215
  const angularImports = findNodes(source, ts.isImportDeclaration)
228
- .map(node => _angularImportsFromNode(node, source))
216
+ .map(node => _angularImportsFromNode(node))
229
217
  .reduce((acc, current) => {
230
218
  for (const key of Object.keys(current)) {
231
219
  acc[key] = current[key];
@@ -260,74 +248,43 @@ function getDecoratorMetadata(source, identifier, module) {
260
248
  .map(expr => expr.arguments[0]);
261
249
  }
262
250
  exports.getDecoratorMetadata = getDecoratorMetadata;
263
- function findClassDeclarationParent(node) {
264
- if (ts.isClassDeclaration(node)) {
265
- return node;
266
- }
267
- return node.parent && findClassDeclarationParent(node.parent);
268
- }
269
- /**
270
- * Given a source file with @NgModule class(es), find the name of the first @NgModule class.
271
- *
272
- * @param source source file containing one or more @NgModule
273
- * @returns the name of the first @NgModule, or `undefined` if none is found
274
- */
275
- function getFirstNgModuleName(source) {
276
- // First, find the @NgModule decorators.
277
- const ngModulesMetadata = getDecoratorMetadata(source, 'NgModule', '@angular/core');
278
- if (ngModulesMetadata.length === 0) {
279
- return undefined;
280
- }
281
- // Then walk parent pointers up the AST, looking for the ClassDeclaration parent of the NgModule
282
- // metadata.
283
- const moduleClass = findClassDeclarationParent(ngModulesMetadata[0]);
284
- if (!moduleClass || !moduleClass.name) {
285
- return undefined;
286
- }
287
- // Get the class name of the module ClassDeclaration.
288
- return moduleClass.name.text;
289
- }
290
- exports.getFirstNgModuleName = getFirstNgModuleName;
291
251
  function getMetadataField(node, metadataField) {
292
252
  return (node.properties
293
253
  .filter(ts.isPropertyAssignment)
294
254
  // Filter out every fields that's not "metadataField". Also handles string literals
295
255
  // (but not expressions).
296
256
  .filter(({ name }) => {
297
- return ((ts.isIdentifier(name) || ts.isStringLiteral(name)) && name.getText() === metadataField);
257
+ return (ts.isIdentifier(name) || ts.isStringLiteral(name)) && name.text === metadataField;
298
258
  }));
299
259
  }
300
260
  exports.getMetadataField = getMetadataField;
301
261
  function addSymbolToNgModuleMetadata(source, ngModulePath, metadataField, symbolName, importPath = null) {
302
262
  const nodes = getDecoratorMetadata(source, 'NgModule', '@angular/core');
303
- let node = nodes[0];
263
+ const node = nodes[0];
304
264
  // Find the decorator declaration.
305
- if (!node) {
265
+ if (!node || !ts.isObjectLiteralExpression(node)) {
306
266
  return [];
307
267
  }
308
268
  // Get all the children property assignment of object literals.
309
269
  const matchingProperties = getMetadataField(node, metadataField);
310
- // Get the last node of the array literal.
311
- if (!matchingProperties) {
312
- return [];
313
- }
314
270
  if (matchingProperties.length == 0) {
315
271
  // We haven't found the field in the metadata declaration. Insert a new field.
316
- const expr = node;
317
272
  let position;
318
273
  let toInsert;
319
- if (expr.properties.length == 0) {
320
- position = expr.getEnd() - 1;
321
- toInsert = ` ${metadataField}: [${symbolName}]\n`;
274
+ if (node.properties.length == 0) {
275
+ position = node.getEnd() - 1;
276
+ toInsert = `\n ${metadataField}: [\n${core_1.tags.indentBy(4) `${symbolName}`}\n ]\n`;
322
277
  }
323
278
  else {
324
- node = expr.properties[expr.properties.length - 1];
325
- position = node.getEnd();
279
+ const childNode = node.properties[node.properties.length - 1];
280
+ position = childNode.getEnd();
326
281
  // Get the indentation of the last element, if any.
327
- const text = node.getFullText(source);
328
- const matches = text.match(/^\r?\n\s*/);
329
- if (matches && matches.length > 0) {
330
- toInsert = `,${matches[0]}${metadataField}: [${symbolName}]`;
282
+ const text = childNode.getFullText(source);
283
+ const matches = text.match(/^(\r?\n)(\s*)/);
284
+ if (matches) {
285
+ toInsert =
286
+ `,${matches[0]}${metadataField}: [${matches[1]}` +
287
+ `${core_1.tags.indentBy(matches[2].length + 2) `${symbolName}`}${matches[0]}]`;
331
288
  }
332
289
  else {
333
290
  toInsert = `, ${metadataField}: [${symbolName}]`;
@@ -345,61 +302,36 @@ function addSymbolToNgModuleMetadata(source, ngModulePath, metadataField, symbol
345
302
  }
346
303
  const assignment = matchingProperties[0];
347
304
  // If it's not an array, nothing we can do really.
348
- if (assignment.initializer.kind !== ts.SyntaxKind.ArrayLiteralExpression) {
305
+ if (!ts.isPropertyAssignment(assignment) ||
306
+ !ts.isArrayLiteralExpression(assignment.initializer)) {
349
307
  return [];
350
308
  }
351
- const arrLiteral = assignment.initializer;
352
- if (arrLiteral.elements.length == 0) {
353
- // Forward the property.
354
- node = arrLiteral;
355
- }
356
- else {
357
- node = arrLiteral.elements;
358
- }
359
- if (!node) {
360
- console.error('No app module found. Please add your new class to your component.');
361
- return [];
362
- }
363
- if (Array.isArray(node)) {
364
- // eslint-disable-next-line @typescript-eslint/ban-types
365
- const nodeArray = node;
366
- const symbolsArray = nodeArray.map(node => node.getText());
367
- if (symbolsArray.includes(symbolName)) {
309
+ let expresssion;
310
+ const assignmentInit = assignment.initializer;
311
+ const elements = assignmentInit.elements;
312
+ if (elements.length) {
313
+ const symbolsArray = elements.map(node => core_1.tags.oneLine `${node.getText()}`);
314
+ if (symbolsArray.includes(core_1.tags.oneLine `${symbolName}`)) {
368
315
  return [];
369
316
  }
370
- node = node[node.length - 1];
317
+ expresssion = elements[elements.length - 1];
371
318
  }
372
- let toInsert;
373
- let position = node.getEnd();
374
- if (node.kind == ts.SyntaxKind.ObjectLiteralExpression) {
375
- // We haven't found the field in the metadata declaration. Insert a new
376
- // field.
377
- const expr = node;
378
- if (expr.properties.length == 0) {
379
- position = expr.getEnd() - 1;
380
- toInsert = ` ${symbolName}\n`;
381
- }
382
- else {
383
- // Get the indentation of the last element, if any.
384
- const text = node.getFullText(source);
385
- if (text.match(/^\r?\r?\n/)) {
386
- toInsert = `,${text.match(/^\r?\n\s*/)[0]}${symbolName}`;
387
- }
388
- else {
389
- toInsert = `, ${symbolName}`;
390
- }
391
- }
319
+ else {
320
+ expresssion = assignmentInit;
392
321
  }
393
- else if (node.kind == ts.SyntaxKind.ArrayLiteralExpression) {
322
+ let toInsert;
323
+ let position = expresssion.getEnd();
324
+ if (ts.isArrayLiteralExpression(expresssion)) {
394
325
  // We found the field but it's empty. Insert it just before the `]`.
395
326
  position--;
396
- toInsert = `${symbolName}`;
327
+ toInsert = `\n${core_1.tags.indentBy(4) `${symbolName}`}\n `;
397
328
  }
398
329
  else {
399
330
  // Get the indentation of the last element, if any.
400
- const text = node.getFullText(source);
401
- if (text.match(/^\r?\n/)) {
402
- toInsert = `,${text.match(/^\r?\n(\r?)\s*/)[0]}${symbolName}`;
331
+ const text = expresssion.getFullText(source);
332
+ const matches = text.match(/^(\r?\n)(\s*)/);
333
+ if (matches) {
334
+ toInsert = `,${matches[1]}${core_1.tags.indentBy(matches[2].length) `${symbolName}`}`;
403
335
  }
404
336
  else {
405
337
  toInsert = `, ${symbolName}`;
@@ -450,14 +382,6 @@ function addBootstrapToModule(source, modulePath, classifiedName, importPath) {
450
382
  return addSymbolToNgModuleMetadata(source, modulePath, 'bootstrap', classifiedName, importPath);
451
383
  }
452
384
  exports.addBootstrapToModule = addBootstrapToModule;
453
- /**
454
- * Custom function to insert an entryComponent into NgModule. It also imports it.
455
- * @deprecated - Since version 9.0.0 with Ivy, entryComponents is no longer necessary.
456
- */
457
- function addEntryComponentToModule(source, modulePath, classifiedName, importPath) {
458
- return addSymbolToNgModuleMetadata(source, modulePath, 'entryComponents', classifiedName, importPath);
459
- }
460
- exports.addEntryComponentToModule = addEntryComponentToModule;
461
385
  /**
462
386
  * Determine if an import already exists.
463
387
  */
@@ -519,6 +443,9 @@ exports.getEnvironmentExportName = getEnvironmentExportName;
519
443
  function getRouterModuleDeclaration(source) {
520
444
  const result = getDecoratorMetadata(source, 'NgModule', '@angular/core');
521
445
  const node = result[0];
446
+ if (!node || !ts.isObjectLiteralExpression(node)) {
447
+ return undefined;
448
+ }
522
449
  const matchingProperties = getMetadataField(node, 'imports');
523
450
  if (!matchingProperties) {
524
451
  return;
@@ -539,7 +466,8 @@ exports.getRouterModuleDeclaration = getRouterModuleDeclaration;
539
466
  function addRouteDeclarationToModule(source, fileToAdd, routeLiteral) {
540
467
  const routerModuleExpr = getRouterModuleDeclaration(source);
541
468
  if (!routerModuleExpr) {
542
- throw new Error(`Couldn't find a route declaration in ${fileToAdd}.`);
469
+ throw new Error(`Couldn't find a route declaration in ${fileToAdd}.\n` +
470
+ `Use the '--module' option to specify a different routing module.`);
543
471
  }
544
472
  const scopeConfigMethodArgs = routerModuleExpr.arguments;
545
473
  if (!scopeConfigMethodArgs.length) {
@@ -1 +1 @@
1
- {"version":3,"file":"ast-utils.js","sourceRoot":"","sources":["../../../../../packages/schematics/src/utils/angular/ast-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ast-utils.js","sourceRoot":"","sources":["../../../../../packages/schematics/src/utils/angular/ast-utils.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
1
  /**
2
2
  * @license
3
- * Copyright Google Inc. All Rights Reserved.
3
+ * Copyright Google LLC All Rights Reserved.
4
4
  *
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
7
7
  */
8
+ import { UpdateRecorder } from '@angular-devkit/schematics';
8
9
  export interface Host {
9
10
  write(path: string, content: string): Promise<void>;
10
11
  read(path: string): Promise<string>;
@@ -45,7 +46,7 @@ export declare class InsertChange implements Change {
45
46
  export declare class RemoveChange implements Change {
46
47
  path: string;
47
48
  private pos;
48
- private toRemove;
49
+ toRemove: string;
49
50
  order: number;
50
51
  description: string;
51
52
  constructor(path: string, pos: number, toRemove: string);
@@ -57,10 +58,11 @@ export declare class RemoveChange implements Change {
57
58
  export declare class ReplaceChange implements Change {
58
59
  path: string;
59
60
  private pos;
60
- private oldText;
61
- private newText;
61
+ oldText: string;
62
+ newText: string;
62
63
  order: number;
63
64
  description: string;
64
65
  constructor(path: string, pos: number, oldText: string, newText: string);
65
66
  apply(host: Host): Promise<void>;
66
67
  }
68
+ export declare function applyToUpdateRecorder(recorder: UpdateRecorder, changes: Change[]): void;
@@ -1,6 +1,13 @@
1
1
  "use strict";
2
+ /**
3
+ * @license
4
+ * Copyright Google LLC All Rights Reserved.
5
+ *
6
+ * Use of this source code is governed by an MIT-style license that can be
7
+ * found in the LICENSE file at https://angular.io/license
8
+ */
2
9
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ReplaceChange = exports.RemoveChange = exports.InsertChange = exports.NoopChange = void 0;
10
+ exports.applyToUpdateRecorder = exports.ReplaceChange = exports.RemoveChange = exports.InsertChange = exports.NoopChange = void 0;
4
11
  /**
5
12
  * An operation that does nothing.
6
13
  */
@@ -33,7 +40,7 @@ class InsertChange {
33
40
  * This method does not insert spaces if there is none in the original string.
34
41
  */
35
42
  apply(host) {
36
- return host.read(this.path).then(content => {
43
+ return host.read(this.path).then((content) => {
37
44
  const prefix = content.substring(0, this.pos);
38
45
  const suffix = content.substring(this.pos);
39
46
  return host.write(this.path, `${prefix}${this.toAdd}${suffix}`);
@@ -56,7 +63,7 @@ class RemoveChange {
56
63
  this.order = pos;
57
64
  }
58
65
  apply(host) {
59
- return host.read(this.path).then(content => {
66
+ return host.read(this.path).then((content) => {
60
67
  const prefix = content.substring(0, this.pos);
61
68
  const suffix = content.substring(this.pos + this.toRemove.length);
62
69
  // TODO: throw error if toRemove doesn't match removed string.
@@ -81,7 +88,7 @@ class ReplaceChange {
81
88
  this.order = pos;
82
89
  }
83
90
  apply(host) {
84
- return host.read(this.path).then(content => {
91
+ return host.read(this.path).then((content) => {
85
92
  const prefix = content.substring(0, this.pos);
86
93
  const suffix = content.substring(this.pos + this.oldText.length);
87
94
  const text = content.substring(this.pos, this.pos + this.oldText.length);
@@ -94,4 +101,22 @@ class ReplaceChange {
94
101
  }
95
102
  }
96
103
  exports.ReplaceChange = ReplaceChange;
104
+ function applyToUpdateRecorder(recorder, changes) {
105
+ for (const change of changes) {
106
+ if (change instanceof InsertChange) {
107
+ recorder.insertLeft(change.pos, change.toAdd);
108
+ }
109
+ else if (change instanceof RemoveChange) {
110
+ recorder.remove(change.order, change.toRemove.length);
111
+ }
112
+ else if (change instanceof ReplaceChange) {
113
+ recorder.remove(change.order, change.oldText.length);
114
+ recorder.insertLeft(change.order, change.newText);
115
+ }
116
+ else if (!(change instanceof NoopChange)) {
117
+ throw new Error('Unknown Change type encountered when updating a recorder.');
118
+ }
119
+ }
120
+ }
121
+ exports.applyToUpdateRecorder = applyToUpdateRecorder;
97
122
  //# sourceMappingURL=change.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"change.js","sourceRoot":"","sources":["../../../../../packages/schematics/src/utils/angular/change.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"change.js","sourceRoot":"","sources":["../../../../../packages/schematics/src/utils/angular/change.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright Google Inc. All Rights Reserved.
3
+ * Copyright Google LLC All Rights Reserved.
4
4
  *
5
5
  * Use of this source code is governed by an MIT-style license that can be
6
6
  * found in the LICENSE file at https://angular.io/license
@@ -1,4 +1,11 @@
1
1
  "use strict";
2
+ /**
3
+ * @license
4
+ * Copyright Google LLC All Rights Reserved.
5
+ *
6
+ * Use of this source code is governed by an MIT-style license that can be
7
+ * found in the LICENSE file at https://angular.io/license
8
+ */
2
9
  Object.defineProperty(exports, "__esModule", { value: true });
3
10
  exports.getPackageJsonDependency = exports.removePackageJsonDependency = exports.addPackageJsonDependency = exports.NodeDependencyType = void 0;
4
11
  const json_file_1 = require("./json-file");
@@ -18,9 +25,6 @@ const ALL_DEPENDENCY_TYPE = [
18
25
  ];
19
26
  function addPackageJsonDependency(tree, dependency, pkgJsonPath = PKG_JSON_PATH) {
20
27
  const json = new json_file_1.JSONFile(tree, pkgJsonPath);
21
- if (json.error) {
22
- throw json.error;
23
- }
24
28
  const { overwrite, type, name, version } = dependency;
25
29
  const path = [type, name];
26
30
  if (overwrite || !json.get(path)) {
@@ -30,9 +34,6 @@ function addPackageJsonDependency(tree, dependency, pkgJsonPath = PKG_JSON_PATH)
30
34
  exports.addPackageJsonDependency = addPackageJsonDependency;
31
35
  function removePackageJsonDependency(tree, name, pkgJsonPath = PKG_JSON_PATH) {
32
36
  const json = new json_file_1.JSONFile(tree, pkgJsonPath);
33
- if (json.error) {
34
- throw json.error;
35
- }
36
37
  for (const depType of ALL_DEPENDENCY_TYPE) {
37
38
  json.remove([depType, name]);
38
39
  }
@@ -40,9 +41,6 @@ function removePackageJsonDependency(tree, name, pkgJsonPath = PKG_JSON_PATH) {
40
41
  exports.removePackageJsonDependency = removePackageJsonDependency;
41
42
  function getPackageJsonDependency(tree, name, pkgJsonPath = PKG_JSON_PATH) {
42
43
  const json = new json_file_1.JSONFile(tree, pkgJsonPath);
43
- if (json.error) {
44
- throw json.error;
45
- }
46
44
  for (const depType of ALL_DEPENDENCY_TYPE) {
47
45
  const version = json.get([depType, name]);
48
46
  if (typeof version === 'string') {
@@ -1 +1 @@
1
- {"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../../../../packages/schematics/src/utils/angular/dependencies.ts"],"names":[],"mappings":";;;AAQA,2CAAuC;AAEvC,MAAM,aAAa,GAAG,eAAe,CAAC;AACtC,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,8CAAwB,CAAA;IACxB,6CAAuB,CAAA;IACvB,+CAAyB,CAAA;IACzB,uDAAiC,CAAA;AACnC,CAAC,EALW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAK7B;AASD,MAAM,mBAAmB,GAAG;IAC1B,kBAAkB,CAAC,OAAO;IAC1B,kBAAkB,CAAC,GAAG;IACtB,kBAAkB,CAAC,QAAQ;IAC3B,kBAAkB,CAAC,IAAI;CACxB,CAAC;AAEF,SAAgB,wBAAwB,CACtC,IAAU,EACV,UAA0B,EAC1B,WAAW,GAAG,aAAa;IAE3B,MAAM,IAAI,GAAG,IAAI,oBAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC7C,IAAI,IAAI,CAAC,KAAK,EAAE;QACd,MAAM,IAAI,CAAC,KAAK,CAAC;KAClB;IAED,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IACtD,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1B,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QAChC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KAC5B;AACH,CAAC;AAfD,4DAeC;AAED,SAAgB,2BAA2B,CACzC,IAAU,EACV,IAAY,EACZ,WAAW,GAAG,aAAa;IAE3B,MAAM,IAAI,GAAG,IAAI,oBAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC7C,IAAI,IAAI,CAAC,KAAK,EAAE;QACd,MAAM,IAAI,CAAC,KAAK,CAAC;KAClB;IAED,KAAK,MAAM,OAAO,IAAI,mBAAmB,EAAE;QACzC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;KAC9B;AACH,CAAC;AAbD,kEAaC;AAED,SAAgB,wBAAwB,CACtC,IAAU,EACV,IAAY,EACZ,WAAW,GAAG,aAAa;IAE3B,MAAM,IAAI,GAAG,IAAI,oBAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAC7C,IAAI,IAAI,CAAC,KAAK,EAAE;QACd,MAAM,IAAI,CAAC,KAAK,CAAC;KAClB;IAED,KAAK,MAAM,OAAO,IAAI,mBAAmB,EAAE;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAE1C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,IAAI;gBACV,OAAO;aACR,CAAC;SACH;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAvBD,4DAuBC"}
1
+ {"version":3,"file":"dependencies.js","sourceRoot":"","sources":["../../../../../packages/schematics/src/utils/angular/dependencies.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAGH,2CAAuC;AAEvC,MAAM,aAAa,GAAG,eAAe,CAAC;AACtC,IAAY,kBAKX;AALD,WAAY,kBAAkB;IAC5B,8CAAwB,CAAA;IACxB,6CAAuB,CAAA;IACvB,+CAAyB,CAAA;IACzB,uDAAiC,CAAA;AACnC,CAAC,EALW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAK7B;AASD,MAAM,mBAAmB,GAAG;IAC1B,kBAAkB,CAAC,OAAO;IAC1B,kBAAkB,CAAC,GAAG;IACtB,kBAAkB,CAAC,QAAQ;IAC3B,kBAAkB,CAAC,IAAI;CACxB,CAAC;AAEF,SAAgB,wBAAwB,CACtC,IAAU,EACV,UAA0B,EAC1B,WAAW,GAAG,aAAa;IAE3B,MAAM,IAAI,GAAG,IAAI,oBAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAE7C,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IACtD,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC1B,IAAI,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;QAChC,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;KAC5B;AACH,CAAC;AAZD,4DAYC;AAED,SAAgB,2BAA2B,CACzC,IAAU,EACV,IAAY,EACZ,WAAW,GAAG,aAAa;IAE3B,MAAM,IAAI,GAAG,IAAI,oBAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAE7C,KAAK,MAAM,OAAO,IAAI,mBAAmB,EAAE;QACzC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;KAC9B;AACH,CAAC;AAVD,kEAUC;AAED,SAAgB,wBAAwB,CACtC,IAAU,EACV,IAAY,EACZ,WAAW,GAAG,aAAa;IAE3B,MAAM,IAAI,GAAG,IAAI,oBAAQ,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAE7C,KAAK,MAAM,OAAO,IAAI,mBAAmB,EAAE;QACzC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAE1C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE;YAC/B,OAAO;gBACL,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,IAAI;gBACV,OAAO;aACR,CAAC;SACH;KACF;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AApBD,4DAoBC"}
@@ -0,0 +1,96 @@
1
+ /**
2
+ * @license
3
+ * Copyright Google LLC All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ import { Rule } from '@angular-devkit/schematics';
9
+ /**
10
+ * An enum used to specify the type of a dependency found within a package manifest
11
+ * file (`package.json`).
12
+ */
13
+ export declare enum DependencyType {
14
+ Default = "dependencies",
15
+ Dev = "devDependencies",
16
+ Peer = "peerDependencies"
17
+ }
18
+ /**
19
+ * An enum used to specify the dependency installation behavior for the {@link addDependency}
20
+ * schematics rule. The installation behavior affects if and when {@link NodePackageInstallTask}
21
+ * will be scheduled when using the rule.
22
+ */
23
+ export declare enum InstallBehavior {
24
+ /**
25
+ * No installation will occur as a result of the rule when specified.
26
+ *
27
+ * NOTE: This does not prevent other rules from scheduling a {@link NodePackageInstallTask}
28
+ * which may install the dependency.
29
+ */
30
+ None = 0,
31
+ /**
32
+ * Automatically determine the need to schedule a {@link NodePackageInstallTask} based on
33
+ * previous usage of the {@link addDependency} within the schematic.
34
+ */
35
+ Auto = 1,
36
+ /**
37
+ * Always schedule a {@link NodePackageInstallTask} when the rule is executed.
38
+ */
39
+ Always = 2
40
+ }
41
+ /**
42
+ * An enum used to specify the existing dependency behavior for the {@link addDependency}
43
+ * schematics rule. The existing behavior affects whether the named dependency will be added
44
+ * to the `package.json` when the dependency is already present with a differing specifier.
45
+ */
46
+ export declare enum ExistingBehavior {
47
+ /**
48
+ * The dependency will not be added or otherwise changed if it already exists.
49
+ */
50
+ Skip = 0,
51
+ /**
52
+ * The dependency's existing specifier will be replaced with the specifier provided in the
53
+ * {@link addDependency} call. A warning will also be shown during schematic execution to
54
+ * notify the user of the replacement.
55
+ */
56
+ Replace = 1
57
+ }
58
+ /**
59
+ * Adds a package as a dependency to a `package.json`. By default the `package.json` located
60
+ * at the schematic's root will be used. The `manifestPath` option can be used to explicitly specify
61
+ * a `package.json` in different location. The type of the dependency can also be specified instead
62
+ * of the default of the `dependencies` section by using the `type` option for either `devDependencies`
63
+ * or `peerDependencies`.
64
+ *
65
+ * When using this rule, {@link NodePackageInstallTask} does not need to be included directly by
66
+ * a schematic. A package manager install task will be automatically scheduled as needed.
67
+ *
68
+ * @param name The name of the package to add.
69
+ * @param specifier The package specifier for the package to add. Typically a SemVer range.
70
+ * @param options An optional object that can contain the `type` of the dependency
71
+ * and/or a path (`packageJsonPath`) of a manifest file (`package.json`) to modify.
72
+ * @returns A Schematics {@link Rule}
73
+ */
74
+ export declare function addDependency(name: string, specifier: string, options?: {
75
+ /**
76
+ * The type of the dependency determines the section of the `package.json` to which the
77
+ * dependency will be added. Defaults to {@link DependencyType.Default} (`dependencies`).
78
+ */
79
+ type?: DependencyType;
80
+ /**
81
+ * The path of the package manifest file (`package.json`) that will be modified.
82
+ * Defaults to `/package.json`.
83
+ */
84
+ packageJsonPath?: string;
85
+ /**
86
+ * The dependency installation behavior to use to determine whether a
87
+ * {@link NodePackageInstallTask} should be scheduled after adding the dependency.
88
+ * Defaults to {@link InstallBehavior.Auto}.
89
+ */
90
+ install?: InstallBehavior;
91
+ /**
92
+ * The behavior to use when the dependency already exists within the `package.json`.
93
+ * Defaults to {@link ExistingBehavior.Replace}.
94
+ */
95
+ existing?: ExistingBehavior;
96
+ }): Rule;