@yuuvis/client-cli 18.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 (109) hide show
  1. package/README.md +57 -0
  2. package/cli/commands/generate/app.d.ts +6 -0
  3. package/cli/commands/generate/app.js +80 -0
  4. package/cli/commands/generate/app.js.map +1 -0
  5. package/cli/commands/generate.d.ts +5 -0
  6. package/cli/commands/generate.js +13 -0
  7. package/cli/commands/generate.js.map +1 -0
  8. package/cli/commands/new.d.ts +5 -0
  9. package/cli/commands/new.js +38 -0
  10. package/cli/commands/new.js.map +1 -0
  11. package/cli/options/options-generate-app.json +18 -0
  12. package/cli/options/options-new.json +14 -0
  13. package/cli/utils.d.ts +7 -0
  14. package/cli/utils.js +25 -0
  15. package/cli/utils.js.map +1 -0
  16. package/cli/yuv.d.ts +2 -0
  17. package/cli/yuv.js +17 -0
  18. package/cli/yuv.js.map +1 -0
  19. package/package.json +23 -0
  20. package/schematics/app-manifest.d.ts +41 -0
  21. package/schematics/app-manifest.js +33 -0
  22. package/schematics/app-manifest.js.map +1 -0
  23. package/schematics/constants.d.ts +5 -0
  24. package/schematics/constants.js +9 -0
  25. package/schematics/constants.js.map +1 -0
  26. package/schematics/factories/collection.json +15 -0
  27. package/schematics/factories/generate-app/index.d.ts +8 -0
  28. package/schematics/factories/generate-app/index.js +117 -0
  29. package/schematics/factories/generate-app/index.js.map +1 -0
  30. package/schematics/factories/generate-app/schema.json +39 -0
  31. package/schematics/factories/new/index.d.ts +2 -0
  32. package/schematics/factories/new/index.js +26 -0
  33. package/schematics/factories/new/index.js.map +1 -0
  34. package/schematics/factories/new/schema.json +32 -0
  35. package/schematics/files/_lib_extensions/README.md +3 -0
  36. package/schematics/files/_lib_extensions/ng-package.json +5 -0
  37. package/schematics/files/_lib_extensions/src/index.ts.template +1 -0
  38. package/schematics/files/_lib_extensions/src/lib/extensions.module.ts.template +18 -0
  39. package/schematics/files/_lib_extensions/src/lib/services/extensions.service.ts.template +10 -0
  40. package/schematics/files/_lib_extensions/src/lib/services/index.ts.template +1 -0
  41. package/schematics/files/_lib_ui_src/assets/i18n/de.json +3 -0
  42. package/schematics/files/_lib_ui_src/assets/i18n/en.json +3 -0
  43. package/schematics/files/_lib_ui_src/lib/lib.routes.ts.template +9 -0
  44. package/schematics/files/_root/README.md +27 -0
  45. package/schematics/files/_root/proxy.config.js +28 -0
  46. package/schematics/files/_scripts/i18n-collect.js +59 -0
  47. package/schematics/files/_scripts/i18n-extract.js +31 -0
  48. package/schematics/files/_src/index.html +31 -0
  49. package/schematics/files/_src/styles.scss +8 -0
  50. package/schematics/files/_src_app/app.component.ts.template +17 -0
  51. package/schematics/files/_src_app/app.config.ts.template +29 -0
  52. package/schematics/files/_src_app/app.routes.ts.template +10 -0
  53. package/schematics/files/_src_assets__yuuvis_config/main.json +26 -0
  54. package/schematics/files/_src_assets__yuuvis_theme/app.icon.svg +3 -0
  55. package/schematics/files/_src_assets__yuuvis_theme/favicon.svg +13 -0
  56. package/schematics/files/_src_assets__yuuvis_theme/logo.svg +1 -0
  57. package/schematics/files/_src_assets__yuuvis_theme/splash.svg +3 -0
  58. package/schematics/files/_src_assets__yuuvis_theme/theme.css +13 -0
  59. package/schematics/schematics-util.d.ts +5 -0
  60. package/schematics/schematics-util.js +33 -0
  61. package/schematics/schematics-util.js.map +1 -0
  62. package/schematics/tasks/clean-up-ng-app.d.ts +2 -0
  63. package/schematics/tasks/clean-up-ng-app.js +11 -0
  64. package/schematics/tasks/clean-up-ng-app.js.map +1 -0
  65. package/schematics/tasks/copy-extensions-files.d.ts +1 -0
  66. package/schematics/tasks/copy-extensions-files.js +15 -0
  67. package/schematics/tasks/copy-extensions-files.js.map +1 -0
  68. package/schematics/tasks/copy-files.d.ts +1 -0
  69. package/schematics/tasks/copy-files.js +32 -0
  70. package/schematics/tasks/copy-files.js.map +1 -0
  71. package/schematics/tasks/copy-ui-files.d.ts +1 -0
  72. package/schematics/tasks/copy-ui-files.js +16 -0
  73. package/schematics/tasks/copy-ui-files.js.map +1 -0
  74. package/schematics/tasks/create-update-manifest.d.ts +4 -0
  75. package/schematics/tasks/create-update-manifest.js +34 -0
  76. package/schematics/tasks/create-update-manifest.js.map +1 -0
  77. package/schematics/tasks/generate-library.d.ts +2 -0
  78. package/schematics/tasks/generate-library.js +15 -0
  79. package/schematics/tasks/generate-library.js.map +1 -0
  80. package/schematics/tasks/ng-new.d.ts +2 -0
  81. package/schematics/tasks/ng-new.js +22 -0
  82. package/schematics/tasks/ng-new.js.map +1 -0
  83. package/schematics/tasks/npm-install.d.ts +2 -0
  84. package/schematics/tasks/npm-install.js +16 -0
  85. package/schematics/tasks/npm-install.js.map +1 -0
  86. package/schematics/tasks/update-angular-json.d.ts +2 -0
  87. package/schematics/tasks/update-angular-json.js +43 -0
  88. package/schematics/tasks/update-angular-json.js.map +1 -0
  89. package/schematics/tasks/update-app-config.d.ts +2 -0
  90. package/schematics/tasks/update-app-config.js +50 -0
  91. package/schematics/tasks/update-app-config.js.map +1 -0
  92. package/schematics/tasks/update-app-routes.d.ts +3 -0
  93. package/schematics/tasks/update-app-routes.js +54 -0
  94. package/schematics/tasks/update-app-routes.js.map +1 -0
  95. package/schematics/tasks/update-library-component.d.ts +2 -0
  96. package/schematics/tasks/update-library-component.js +85 -0
  97. package/schematics/tasks/update-library-component.js.map +1 -0
  98. package/schematics/tasks/update-library-public-api.d.ts +2 -0
  99. package/schematics/tasks/update-library-public-api.js +25 -0
  100. package/schematics/tasks/update-library-public-api.js.map +1 -0
  101. package/schematics/tasks/update-library-tsconfig.d.ts +2 -0
  102. package/schematics/tasks/update-library-tsconfig.js +31 -0
  103. package/schematics/tasks/update-library-tsconfig.js.map +1 -0
  104. package/schematics/tasks/update-package-json.d.ts +2 -0
  105. package/schematics/tasks/update-package-json.js +25 -0
  106. package/schematics/tasks/update-package-json.js.map +1 -0
  107. package/schematics/utils.d.ts +2 -0
  108. package/schematics/utils.js +18 -0
  109. package/schematics/utils.js.map +1 -0
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createOrUpdateManifest = createOrUpdateManifest;
4
+ const constants_1 = require("../constants");
5
+ function createOrUpdateManifest(options, targetManifest, libMetadata) {
6
+ return (tree) => {
7
+ const filePath = `${options.libraryRoot}/${constants_1.APP_MANIFEST_FILE_NAME}`;
8
+ /*
9
+ if (tree.exists(filePath)) {
10
+ const content = tree.read(filePath)?.toString('utf-8');
11
+ if (!content) {
12
+ throw new SchematicsException(`Cannot read the file ${filePath}.`);
13
+ }
14
+
15
+ const existingManifest = parseManifest(content);
16
+ if((options.type === 'ui' || options.type === 'both') && !existingManifest.ui) {
17
+ existingManifest.ui = targetManifest.ui;
18
+ }
19
+
20
+ if((options.type === 'extension' || options.type === 'both') && !existingManifest.ui) {
21
+ existingManifest.ui = targetManifest.ui;
22
+ }
23
+
24
+ tree.overwrite(filePath, JSON.stringify(existingManifest, null, 2));
25
+
26
+ return tree;
27
+ }
28
+ */
29
+ const jsonData = JSON.stringify(targetManifest, null, 2);
30
+ tree.create(filePath, jsonData);
31
+ return tree;
32
+ };
33
+ }
34
+ //# sourceMappingURL=create-update-manifest.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-update-manifest.js","sourceRoot":"","sources":["../../../src/schematics/tasks/create-update-manifest.ts"],"names":[],"mappings":";;AAMA,wDA+BC;AApCD,4CAAsD;AAKtD,SAAgB,sBAAsB,CAAC,OAAY,EAAE,cAA2B,EAAE,WAA4B;IAC5G,OAAO,CAAC,IAAU,EAAE,EAAE;QACpB,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,WAAW,IAAI,kCAAsB,EAAE,CAAC;QAEpE;;;;;;;;;;;;;;;;;;;;UAoBE;QAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACzD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAEhC,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Rule } from '@angular-devkit/schematics';
2
+ export declare function generateLibrary(options: any): Rule;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateLibrary = generateLibrary;
4
+ const schematics_1 = require("@angular-devkit/schematics");
5
+ const constants_1 = require("../constants");
6
+ function generateLibrary(options) {
7
+ return (tree, context) => {
8
+ return (0, schematics_1.externalSchematic)('@schematics/angular', 'library', {
9
+ name: options.name,
10
+ prefix: options.prefix,
11
+ standalone: constants_1.NG_STANDALONE
12
+ });
13
+ };
14
+ }
15
+ //# sourceMappingURL=generate-library.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-library.js","sourceRoot":"","sources":["../../../src/schematics/tasks/generate-library.ts"],"names":[],"mappings":";;AAGA,0CAQC;AAXD,2DAA6F;AAC7F,4CAA6C;AAE7C,SAAgB,eAAe,CAAC,OAAY;IAC1C,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;QAC/C,OAAO,IAAA,8BAAiB,EAAC,qBAAqB,EAAE,SAAS,EAAE;YACzD,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,UAAU,EAAE,yBAAa;SAC1B,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Rule } from "@angular-devkit/schematics";
2
+ export default function ngNew(options: any): Rule;
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = ngNew;
4
+ const schematics_1 = require("@angular-devkit/schematics");
5
+ const constants_1 = require("../constants");
6
+ function ngNew(options) {
7
+ return (tree, context) => {
8
+ var _a, _b;
9
+ return (0, schematics_1.externalSchematic)("@schematics/angular", "ng-new", {
10
+ name: options.name,
11
+ createApplication: true,
12
+ standalone: constants_1.NG_STANDALONE,
13
+ style: constants_1.NG_STYLE,
14
+ skipInstall: true,
15
+ skipGit: (_a = options.skipGit) !== null && _a !== void 0 ? _a : false,
16
+ skipTests: (_b = options.skipTests) !== null && _b !== void 0 ? _b : false,
17
+ ssr: false,
18
+ version: constants_1.NG_SCHEMATICS_VERSION
19
+ })(tree, context);
20
+ };
21
+ }
22
+ //# sourceMappingURL=ng-new.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ng-new.js","sourceRoot":"","sources":["../../../src/schematics/tasks/ng-new.ts"],"names":[],"mappings":";;AAGA,wBAcC;AAjBD,2DAA2F;AAC3F,4CAA8E;AAE9E,SAAwB,KAAK,CAAC,OAAY;IACxC,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;;QAC/C,OAAO,IAAA,8BAAiB,EAAC,qBAAqB,EAAE,QAAQ,EAAE;YACxD,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,yBAAa;YACzB,KAAK,EAAE,oBAAQ;YACf,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,MAAA,OAAO,CAAC,OAAO,mCAAI,KAAK;YACjC,SAAS,EAAE,MAAA,OAAO,CAAC,SAAS,mCAAI,KAAK;YACrC,GAAG,EAAE,KAAK;YACV,OAAO,EAAE,iCAAqB;SAC/B,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IACpB,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Rule } from "@angular-devkit/schematics";
2
+ export default function npmInstall(options: any): Rule;
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = npmInstall;
4
+ const tasks_1 = require("@angular-devkit/schematics/tasks");
5
+ function npmInstall(options) {
6
+ return (tree, context) => {
7
+ if (!options.skipInstall) {
8
+ context.logger.info('Installing dependencies');
9
+ context.addTask(new tasks_1.NodePackageInstallTask({
10
+ workingDirectory: options.name
11
+ }));
12
+ }
13
+ return tree;
14
+ };
15
+ }
16
+ //# sourceMappingURL=npm-install.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"npm-install.js","sourceRoot":"","sources":["../../../src/schematics/tasks/npm-install.ts"],"names":[],"mappings":";;AAGA,6BAYC;AAdD,4DAA0E;AAE1E,SAAwB,UAAU,CAAC,OAAY;IAE7C,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;QAE/C,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;YACvB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;YAC/C,OAAO,CAAC,OAAO,CAAC,IAAI,8BAAsB,CAAC;gBACzC,gBAAgB,EAAE,OAAO,CAAC,IAAI;aAC/B,CAAC,CAAC,CAAC;QACN,CAAC;QACD,OAAO,IAAI,CAAC;IAChB,CAAC,CAAA;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Rule } from '@angular-devkit/schematics';
2
+ export default function updateAngularJson(options: any): Rule;
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = updateAngularJson;
4
+ function updateAngularJson(options) {
5
+ return (tree, context) => {
6
+ const angularJsonPath = `/${options.name}/angular.json`;
7
+ const angularJsonFile = tree.read(angularJsonPath);
8
+ if (!angularJsonFile) {
9
+ throw new Error(`Could not find ${angularJsonPath}.`);
10
+ }
11
+ const angularJson = JSON.parse(angularJsonFile.toString());
12
+ const projects = angularJson['projects'];
13
+ const projectName = options.name;
14
+ if (projects[projectName]) {
15
+ const buildOptions = projects[projectName]['architect']['build']['options'];
16
+ const budgets = projects[projectName]['architect']['build']['configurations']['production']['budgets'];
17
+ if (!buildOptions['assets']) {
18
+ buildOptions['assets'] = [];
19
+ }
20
+ //TODO: check if the assets are already available
21
+ const newAssets = [
22
+ { "glob": "**/*", "input": "node_modules/monaco-editor", "output": "/assets/monaco/" },
23
+ { "glob": "**/*", "input": "node_modules/ngx-extended-pdf-viewer/assets/", "output": "/assets/" },
24
+ { "glob": "**/*", "input": "node_modules/@yuuvis/media-viewer/lib/assets/i18n", "output": "/assets/media-viewer/i18n" },
25
+ { "glob": "**/*", "input": "node_modules/@yuuvis/media-viewer/lib/assets/xslt", "output": "/assets/xslt" },
26
+ { "glob": "**/*", "input": "node_modules/@yuuvis/client-shell/i18n", "output": "./assets/@yuuvis/i18n/" },
27
+ "src/assets/"
28
+ ];
29
+ const initialBudget = budgets.find((b) => b.type === 'initial');
30
+ if (initialBudget) {
31
+ initialBudget.maximumWarning = '3MB';
32
+ initialBudget.maximumError = '5MB';
33
+ }
34
+ buildOptions['assets'].push(...newAssets);
35
+ tree.overwrite(angularJsonPath, JSON.stringify(angularJson, null, 2));
36
+ }
37
+ else {
38
+ throw new Error(`The project "${projectName}" could not be found in angular.json.`);
39
+ }
40
+ return tree;
41
+ };
42
+ }
43
+ //# sourceMappingURL=update-angular-json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-angular-json.js","sourceRoot":"","sources":["../../../src/schematics/tasks/update-angular-json.ts"],"names":[],"mappings":";;AAGA,oCA6CC;AA7CD,SAAwB,iBAAiB,CAAC,OAAY;IACpD,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;QAC/C,MAAM,eAAe,GAAG,IAAI,OAAO,CAAC,IAAI,eAAe,CAAC;QACxD,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QAEnD,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,KAAK,CAAC,kBAAkB,eAAe,GAAG,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAe,CAAC;QAEzE,MAAM,QAAQ,GAAQ,WAAW,CAAC,UAAU,CAAC,CAAC;QAC9C,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;QACjC,IAAI,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC1B,MAAM,YAAY,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,SAAS,CAAC,CAAC;YAC5E,MAAM,OAAO,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC,WAAW,CAAC,CAAC,OAAO,CAAC,CAAC,gBAAgB,CAAC,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,CAAC;YAEvG,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5B,YAAY,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;YAC9B,CAAC;YAED,iDAAiD;YACjD,MAAM,SAAS,GAAG;gBAChB,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,4BAA4B,EAAE,QAAQ,EAAE,iBAAiB,EAAE;gBACtF,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,8CAA8C,EAAE,QAAQ,EAAE,UAAU,EAAE;gBACjG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,mDAAmD,EAAE,QAAQ,EAAE,2BAA2B,EAAE;gBACvH,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,mDAAmD,EAAE,QAAQ,EAAE,cAAc,EAAE;gBAC1G,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,wCAAwC,EAAE,QAAQ,EAAE,wBAAwB,EAAE;gBACzG,aAAa;aACd,CAAC;YAEJ,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC;YACrE,IAAI,aAAa,EAAE,CAAC;gBAClB,aAAa,CAAC,cAAc,GAAG,KAAK,CAAC;gBACrC,aAAa,CAAC,YAAY,GAAG,KAAK,CAAC;YACrC,CAAC;YAEC,YAAY,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC;YAC1C,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACxE,CAAC;aAAM,CAAC;YACN,MAAM,IAAI,KAAK,CAAC,gBAAgB,WAAW,uCAAuC,CAAC,CAAC;QACtF,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Rule } from "@angular-devkit/schematics";
2
+ export declare function updateAppConfig(options: any, extensionsModuleName: string, importPath: string): Rule;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.updateAppConfig = updateAppConfig;
7
+ const schematics_1 = require("@angular-devkit/schematics");
8
+ const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
9
+ const change_1 = require("@schematics/angular/utility/change");
10
+ const typescript_1 = __importDefault(require("typescript"));
11
+ function updateAppConfig(options, extensionsModuleName, importPath) {
12
+ return (tree, context) => {
13
+ var _a;
14
+ const filePath = "./src/app/app.config.ts";
15
+ if (!tree.exists(filePath)) {
16
+ throw new schematics_1.SchematicsException(`File ${filePath} not found.`);
17
+ }
18
+ let content = (_a = tree.read(filePath)) === null || _a === void 0 ? void 0 : _a.toString("utf-8");
19
+ if (!content) {
20
+ throw new schematics_1.SchematicsException(`The content of ${filePath} is empty.`);
21
+ }
22
+ const sourceFile = typescript_1.default.createSourceFile(filePath, content, typescript_1.default.ScriptTarget.Latest, true);
23
+ const callExpressions = (0, ast_utils_1.findNodes)(sourceFile, typescript_1.default.SyntaxKind.CallExpression);
24
+ const importShellCall = callExpressions.find((node) => node.expression.getText() === 'importShellExtensions');
25
+ if (!importShellCall) {
26
+ throw new schematics_1.SchematicsException(`Could not find importShellExtensions([...]) in ${filePath}.`);
27
+ }
28
+ const argumentArray = importShellCall.arguments[0];
29
+ if (!typescript_1.default.isArrayLiteralExpression(argumentArray)) {
30
+ throw new schematics_1.SchematicsException(`importShellExtensions([...]) does not contain a valid array.`);
31
+ }
32
+ // check if the module already exists
33
+ const hasModule = argumentArray.elements.some((el) => el.getText() === extensionsModuleName);
34
+ if (hasModule) {
35
+ return tree;
36
+ }
37
+ const recorder = tree.beginUpdate(filePath);
38
+ const position = argumentArray.elements.end;
39
+ const insertChange = new change_1.InsertChange(filePath, position, `${argumentArray.elements.length ? ',\n' : '\n'}${extensionsModuleName}`);
40
+ (0, change_1.applyToUpdateRecorder)(recorder, [insertChange]);
41
+ // add import statement
42
+ const importChange = (0, ast_utils_1.insertImport)(sourceFile, filePath, schematics_1.strings.classify(extensionsModuleName), importPath);
43
+ if (importChange) {
44
+ (0, change_1.applyToUpdateRecorder)(recorder, [importChange]);
45
+ }
46
+ tree.commitUpdate(recorder);
47
+ return tree;
48
+ };
49
+ }
50
+ //# sourceMappingURL=update-app-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-app-config.js","sourceRoot":"","sources":["../../../src/schematics/tasks/update-app-config.ts"],"names":[],"mappings":";;;;;AAKA,0CAkDC;AAvDD,2DAAwG;AACxG,qEAAgF;AAChF,+DAAyF;AACzF,4DAA4B;AAE5B,SAAgB,eAAe,CAAC,OAAY,EAAE,oBAA4B,EAAE,UAAkB;IAC5F,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;;QAC/C,MAAM,QAAQ,GAAG,yBAAyB,CAAC;QAE3C,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,gCAAmB,CAAC,QAAQ,QAAQ,aAAa,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,OAAO,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,0CAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,IAAI,gCAAmB,CAAC,kBAAkB,QAAQ,YAAY,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,UAAU,GAAG,oBAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,oBAAE,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACxF,MAAM,eAAe,GAAG,IAAA,qBAAS,EAAC,UAAU,EAAE,oBAAE,CAAC,UAAU,CAAC,cAAc,CAAwB,CAAC;QACnG,MAAM,eAAe,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CACpD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,uBAAuB,CACtD,CAAC;QAEF,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,MAAM,IAAI,gCAAmB,CAAC,kDAAkD,QAAQ,GAAG,CAAC,CAAC;QAC/F,CAAC;QAED,MAAM,aAAa,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;QACnD,IAAI,CAAC,oBAAE,CAAC,wBAAwB,CAAC,aAAa,CAAC,EAAE,CAAC;YAChD,MAAM,IAAI,gCAAmB,CAAC,8DAA8D,CAAC,CAAC;QAChG,CAAC;QAED,qCAAqC;QACrC,MAAM,SAAS,GAAG,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,oBAAoB,CAAC,CAAC;QAC7F,IAAI,SAAS,EAAE,CAAC;YACd,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC5C,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC;QAE5C,MAAM,YAAY,GAAG,IAAI,qBAAY,CAAC,QAAQ,EAAE,QAAQ,EAAE,GAAG,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,GAAG,oBAA2B,EAAE,CAAC,CAAC;QAC3I,IAAA,8BAAqB,EAAC,QAAQ,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;QAEhD,uBAAuB;QACvB,MAAM,YAAY,GAAG,IAAA,wBAAY,EAAC,UAAU,EAAE,QAAQ,EAAE,oBAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,UAAU,CAAC,CAAC;QAC5G,IAAI,YAAY,EAAE,CAAC;YACjB,IAAA,8BAAqB,EAAC,QAAQ,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;QAClD,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE5B,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Rule } from "@angular-devkit/schematics";
2
+ import { AppManifest } from "../app-manifest";
3
+ export declare function updateAppRoutes(options: any, appManifest: AppManifest): Rule;
@@ -0,0 +1,54 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.updateAppRoutes = updateAppRoutes;
7
+ const typescript_1 = __importDefault(require("typescript"));
8
+ const schematics_1 = require("@angular-devkit/schematics");
9
+ const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
10
+ const change_1 = require("@schematics/angular/utility/change");
11
+ function updateAppRoutes(options, appManifest) {
12
+ return (tree) => {
13
+ const filePath = `./src/app/app.routes.ts`;
14
+ if (!appManifest.ui) {
15
+ throw new schematics_1.SchematicsException(`App manifest has no ui defined.`);
16
+ }
17
+ const appConfig = `
18
+ {
19
+ id: '${appManifest.id}',
20
+ title: '${appManifest.title}',
21
+ path: '${appManifest.ui.path}',
22
+ icon: '${appManifest.ui.icon}',
23
+ loadChildren: () => import('${options.name}').then((m) => m.${schematics_1.strings.classify(options.componentName)}Routes)
24
+ }
25
+ `;
26
+ if (!tree.exists(filePath)) {
27
+ throw new schematics_1.SchematicsException(`Cannot find ${filePath} to register the app ${options.name}.`);
28
+ }
29
+ const fileBuffer = tree.read(filePath);
30
+ if (!fileBuffer) {
31
+ throw new schematics_1.SchematicsException(`Could not read ${filePath}.`);
32
+ }
33
+ let content = fileBuffer.toString("utf-8");
34
+ const sourceFile = typescript_1.default.createSourceFile(filePath, content, typescript_1.default.ScriptTarget.Latest, true);
35
+ const recorder = tree.beginUpdate(filePath);
36
+ // find node apps: App []
37
+ const variableStatements = (0, ast_utils_1.findNodes)(sourceFile, typescript_1.default.SyntaxKind.VariableStatement);
38
+ const appsVariable = variableStatements.find((v) => v.declarationList.declarations.some((d) => d.name.text === "apps"));
39
+ if (!appsVariable) {
40
+ throw new schematics_1.SchematicsException(`Cannot find 'apps' declaration in ${filePath}`);
41
+ }
42
+ // find position for insert
43
+ const appsArrayNode = appsVariable.declarationList.declarations[0].initializer;
44
+ if (!appsArrayNode || !typescript_1.default.isArrayLiteralExpression(appsArrayNode)) {
45
+ throw new schematics_1.SchematicsException(`'apps' is not an array in ${filePath}`);
46
+ }
47
+ const insertPosition = appsArrayNode.elements.end;
48
+ const change = new change_1.InsertChange(filePath, insertPosition, `${appsArrayNode.elements.length > 0 ? "," : ""} ${appConfig}`);
49
+ (0, change_1.applyToUpdateRecorder)(recorder, [change]);
50
+ tree.commitUpdate(recorder);
51
+ return tree;
52
+ };
53
+ }
54
+ //# sourceMappingURL=update-app-routes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-app-routes.js","sourceRoot":"","sources":["../../../src/schematics/tasks/update-app-routes.ts"],"names":[],"mappings":";;;;;AAMA,0CAsDC;AA5DD,4DAA4B;AAC5B,2DAAsF;AACtF,qEAAkE;AAClE,+DAAyF;AAGzF,SAAgB,eAAe,CAAC,OAAY,EAAE,WAAwB;IACpE,OAAO,CAAC,IAAU,EAAE,EAAE;QACpB,MAAM,QAAQ,GAAG,yBAAyB,CAAC;QAC3C,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC;YACpB,MAAM,IAAI,gCAAmB,CAAC,iCAAiC,CAAC,CAAC;QACnE,CAAC;QAED,MAAM,SAAS,GAAG;;aAET,WAAW,CAAC,EAAE;gBACX,WAAW,CAAC,KAAK;eAClB,WAAW,CAAC,EAAE,CAAC,IAAI;eACnB,WAAW,CAAC,EAAE,CAAC,IAAI;oCACE,OAAO,CAAC,IAAI,oBAAoB,oBAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC;;KAEtG,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,gCAAmB,CAAC,eAAe,QAAQ,wBAAwB,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;QAChG,CAAC;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,MAAM,IAAI,gCAAmB,CAAC,kBAAkB,QAAQ,GAAG,CAAC,CAAC;QAC/D,CAAC;QAED,IAAI,OAAO,GAAG,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAC3C,MAAM,UAAU,GAAG,oBAAE,CAAC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,EAAE,oBAAE,CAAC,YAAY,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAExF,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAE5C,yBAAyB;QACzB,MAAM,kBAAkB,GAAG,IAAA,qBAAS,EAAC,UAAU,EAAE,oBAAE,CAAC,UAAU,CAAC,iBAAiB,CAA2B,CAAC;QAC5G,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAE,CAAC,CAAC,IAAsB,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC;QAE3I,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,IAAI,gCAAmB,CAAC,qCAAqC,QAAQ,EAAE,CAAC,CAAC;QACjF,CAAC;QAED,2BAA2B;QAC3B,MAAM,aAAa,GAAG,YAAY,CAAC,eAAe,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC;QAC/E,IAAI,CAAC,aAAa,IAAI,CAAC,oBAAE,CAAC,wBAAwB,CAAC,aAAa,CAAC,EAAE,CAAC;YAClE,MAAM,IAAI,gCAAmB,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,cAAc,GAAG,aAAa,CAAC,QAAQ,CAAC,GAAG,CAAC;QAElD,MAAM,MAAM,GAAG,IAAI,qBAAY,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,aAAa,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,SAAS,EAAE,CAAC,CAAC;QAE1H,IAAA,8BAAqB,EAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;QAC1C,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE5B,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Rule } from '@angular-devkit/schematics';
2
+ export declare function updateLibraryComponent(options: any): Rule;
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || function (mod) {
19
+ if (mod && mod.__esModule) return mod;
20
+ var result = {};
21
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
22
+ __setModuleDefault(result, mod);
23
+ return result;
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.updateLibraryComponent = updateLibraryComponent;
27
+ const core_1 = require("@angular-devkit/core");
28
+ const schematics_1 = require("@angular-devkit/schematics");
29
+ const change_1 = require("@schematics/angular/utility/change");
30
+ const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
31
+ const ts = __importStar(require("typescript"));
32
+ const schematics_util_1 = require("../schematics-util");
33
+ function updateLibraryComponent(options) {
34
+ return (tree) => {
35
+ var _a;
36
+ const filePath = `${options.libraryRoot}/src/lib/${core_1.strings.dasherize(options.componentName)}.component.ts`;
37
+ if (!tree.exists(filePath)) {
38
+ console.warn(`Cannot find the file ${filePath} to append content.`);
39
+ return tree;
40
+ }
41
+ let content = (_a = tree.read(filePath)) === null || _a === void 0 ? void 0 : _a.toString('utf-8');
42
+ if (!content)
43
+ return tree;
44
+ const sourceFile = ts.createSourceFile(filePath, content, ts.ScriptTarget.Latest, true);
45
+ const recorder = tree.beginUpdate(filePath);
46
+ // add import of TranslateModule
47
+ const importChange = (0, ast_utils_1.insertImport)(sourceFile, filePath, 'TranslateModule', '@yuuvis/client-core');
48
+ if (importChange) {
49
+ (0, change_1.applyToUpdateRecorder)(recorder, [importChange]);
50
+ }
51
+ else {
52
+ throw new schematics_1.SchematicsException('Cannot insert import statement IMPORT CHANGE');
53
+ }
54
+ // find the ComponentDecorator
55
+ const componentDecorator = (0, schematics_util_1.findComponentClassDecorator)(sourceFile);
56
+ if (!componentDecorator) {
57
+ throw new schematics_1.SchematicsException('No @Component decorator found.');
58
+ }
59
+ const importsProperty = (0, schematics_util_1.findDecoratorProperty)(componentDecorator, 'imports');
60
+ if (importsProperty) {
61
+ // 'imports' property exists: add TranslateModule to the array
62
+ const arrayLiteral = importsProperty.initializer;
63
+ if (!arrayLiteral.elements.some(el => el.getText() === 'TranslateModule')) {
64
+ const pos = arrayLiteral.elements.end; // Einfügen ans Ende des Arrays
65
+ recorder.insertRight(pos, arrayLiteral.elements.length ? ', TranslateModule' : 'TranslateModule');
66
+ }
67
+ }
68
+ else {
69
+ // 'imports' property doesn't exist: create it
70
+ const decoratorArgs = componentDecorator.expression.arguments[0];
71
+ const pos = decoratorArgs.properties.end;
72
+ recorder.insertRight(pos, decoratorArgs.properties.length ? ', imports: [TranslateModule]' : 'imports: [TranslateModule]');
73
+ }
74
+ // Exchange template
75
+ const newTemplate = ` \`
76
+ <p>
77
+ {{ '${core_1.strings.dasherize(options.componentName)}.works' | translate }}
78
+ </p>
79
+ \``;
80
+ (0, schematics_util_1.addInlineTemplate)(recorder, componentDecorator, newTemplate);
81
+ tree.commitUpdate(recorder);
82
+ return tree;
83
+ };
84
+ }
85
+ //# sourceMappingURL=update-library-component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-library-component.js","sourceRoot":"","sources":["../../../src/schematics/tasks/update-library-component.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { Rule } from "@angular-devkit/schematics";
2
+ export declare function updateLibraryPublicApi(options: any): Rule;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateLibraryPublicApi = updateLibraryPublicApi;
4
+ const schematics_1 = require("@angular-devkit/schematics");
5
+ function updateLibraryPublicApi(options) {
6
+ return (tree) => {
7
+ var _a;
8
+ const filePath = `${options.libraryRoot}/src/public-api.ts`;
9
+ const exportStatement = `export * from './lib/lib.routes';`;
10
+ if (!tree.exists(filePath)) {
11
+ throw new schematics_1.SchematicsException(`Cannot find the file ${filePath} to append content.`);
12
+ }
13
+ let content = (_a = tree.read(filePath)) === null || _a === void 0 ? void 0 : _a.toString('utf-8');
14
+ if (!content)
15
+ return tree;
16
+ if (content.includes(exportStatement)) {
17
+ throw new schematics_1.SchematicsException(`Routes export already exists in ${filePath}`);
18
+ }
19
+ const recorder = tree.beginUpdate(filePath);
20
+ recorder.insertRight(content.length, `\n${exportStatement}\n`);
21
+ tree.commitUpdate(recorder);
22
+ return tree;
23
+ };
24
+ }
25
+ //# sourceMappingURL=update-library-public-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-library-public-api.js","sourceRoot":"","sources":["../../../src/schematics/tasks/update-library-public-api.ts"],"names":[],"mappings":";;AAEA,wDAuBC;AAzBD,2DAA+F;AAE/F,SAAgB,sBAAsB,CAAC,OAAY;IACjD,OAAO,CAAC,IAAU,EAAE,EAAE;;QACpB,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,WAAW,oBAAoB,CAAC;QAC5D,MAAM,eAAe,GAAG,mCAAmC,CAAC;QAE5D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,gCAAmB,CAAC,wBAAwB,QAAQ,qBAAqB,CAAC,CAAC;QACvF,CAAC;QAED,IAAI,OAAO,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,0CAAE,QAAQ,CAAC,OAAO,CAAC,CAAC;QACrD,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAE1B,IAAI,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,gCAAmB,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC5C,QAAQ,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,eAAe,IAAI,CAAC,CAAC;QAE/D,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAE5B,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Rule } from '@angular-devkit/schematics';
2
+ export declare function updateLibraryTsConfig(options: any): Rule;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.updateLibraryTsConfig = updateLibraryTsConfig;
4
+ const schematics_1 = require("@angular-devkit/schematics");
5
+ function updateLibraryTsConfig(options) {
6
+ return (tree) => {
7
+ try {
8
+ const tsconfigBuffer = tree.read('./tsconfig.json');
9
+ if (!tsconfigBuffer) {
10
+ throw new schematics_1.SchematicsException('tsconfig.json not found');
11
+ }
12
+ const tsconfig = tsconfigBuffer.toString('utf8');
13
+ const startIndex = tsconfig.indexOf('{');
14
+ const endIndex = tsconfig.lastIndexOf('}');
15
+ const comment = tsconfig.substring(0, startIndex).trim();
16
+ const jsonPart = tsconfig.substring(startIndex, endIndex + 1);
17
+ const parsedTsconfig = JSON.parse(jsonPart);
18
+ parsedTsconfig.compilerOptions = parsedTsconfig.compilerOptions || {};
19
+ parsedTsconfig.compilerOptions.paths = parsedTsconfig.compilerOptions.paths || {};
20
+ parsedTsconfig.compilerOptions.paths[options.name] = [
21
+ `./${options.libraryRoot}/src/public-api.ts`
22
+ ];
23
+ tree.overwrite('./tsconfig.json', `${comment}\n${JSON.stringify(parsedTsconfig, null, 2)}\n`);
24
+ return tree;
25
+ }
26
+ catch (error) {
27
+ throw new schematics_1.SchematicsException(`Failed to parse tsconfig.json as JSON AST Object.`);
28
+ }
29
+ };
30
+ }
31
+ //# sourceMappingURL=update-library-tsconfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-library-tsconfig.js","sourceRoot":"","sources":["../../../src/schematics/tasks/update-library-tsconfig.ts"],"names":[],"mappings":";;AAEA,sDA8BC;AAhCD,2DAA6E;AAE7E,SAAgB,qBAAqB,CAAC,OAAY;IAChD,OAAO,CAAC,IAAU,EAAE,EAAE;QACpB,IAAI,CAAC;YACH,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACpD,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,MAAM,IAAI,gCAAmB,CAAC,yBAAyB,CAAC,CAAC;YAC3D,CAAC;YACD,MAAM,QAAQ,GAAG,cAAc,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACjD,MAAM,UAAU,GAAW,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;YACjD,MAAM,QAAQ,GAAW,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YAEnD,MAAM,OAAO,GAAW,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,IAAI,EAAE,CAAC;YACjE,MAAM,QAAQ,GAAW,QAAQ,CAAC,SAAS,CAAC,UAAU,EAAE,QAAQ,GAAG,CAAC,CAAC,CAAC;YAEtE,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YAE5C,cAAc,CAAC,eAAe,GAAG,cAAc,CAAC,eAAe,IAAI,EAAE,CAAC;YACtE,cAAc,CAAC,eAAe,CAAC,KAAK,GAAG,cAAc,CAAC,eAAe,CAAC,KAAK,IAAI,EAAE,CAAC;YAElF,cAAc,CAAC,eAAe,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG;gBACnD,KAAK,OAAO,CAAC,WAAW,oBAAoB;aAC7C,CAAC;YAEF,IAAI,CAAC,SAAS,CAAC,iBAAiB,EAAE,GAAG,OAAO,KAAK,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YAE9F,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,gCAAmB,CAAC,mDAAmD,CAAC,CAAC;QACrF,CAAC;IACH,CAAC,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Rule } from "@angular-devkit/schematics";
2
+ export default function updatePackageJson(options: any): Rule;
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.default = updatePackageJson;
4
+ function updatePackageJson(options) {
5
+ return (tree, context) => {
6
+ const packageJsonPath = `${options.name}/package.json`;
7
+ if (tree.exists(packageJsonPath)) {
8
+ const packageJsonBuffer = tree.read(packageJsonPath);
9
+ if (packageJsonBuffer) {
10
+ const packageJson = JSON.parse(packageJsonBuffer.toString());
11
+ packageJson.dependencies = packageJson.dependencies || {};
12
+ packageJson.dependencies['@yuuvis/client-shell'] = 'latest';
13
+ packageJson.devDependencies['@colsen1991/ngx-translate-extract-marker'] = '^2.0.8';
14
+ packageJson.devDependencies['@vendure/ngx-translate-extract'] = '^9.4.0';
15
+ packageJson.scripts['prestart'] = 'npm run i18n:collect';
16
+ packageJson.scripts['start'] = 'ng serve --proxy-config proxy.config.js';
17
+ packageJson.scripts['i18n:collect'] = 'node ./scripts/i18n-collect.js';
18
+ packageJson.scripts['i18n:extract'] = 'node ./scripts/i18n-extract.js';
19
+ tree.overwrite(packageJsonPath, JSON.stringify(packageJson, null, 2));
20
+ }
21
+ }
22
+ return tree;
23
+ };
24
+ }
25
+ //# sourceMappingURL=update-package-json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-package-json.js","sourceRoot":"","sources":["../../../src/schematics/tasks/update-package-json.ts"],"names":[],"mappings":";;AAEA,oCAoBC;AApBD,SAAwB,iBAAiB,CAAC,OAAY;IACpD,OAAO,CAAC,IAAU,EAAE,OAAyB,EAAE,EAAE;QAC/C,MAAM,eAAe,GAAG,GAAG,OAAO,CAAC,IAAI,eAAe,CAAC;QACvD,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC;YACjC,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACrD,IAAI,iBAAiB,EAAE,CAAC;gBACtB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAC7D,WAAW,CAAC,YAAY,GAAG,WAAW,CAAC,YAAY,IAAI,EAAE,CAAC;gBAC1D,WAAW,CAAC,YAAY,CAAC,sBAAsB,CAAC,GAAG,QAAQ,CAAC;gBAC5D,WAAW,CAAC,eAAe,CAAC,0CAA0C,CAAC,GAAG,QAAQ,CAAC;gBACnF,WAAW,CAAC,eAAe,CAAC,gCAAgC,CAAC,GAAG,QAAQ,CAAC;gBACzE,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,GAAG,sBAAsB,CAAC;gBACzD,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,yCAAyC,CAAC;gBACzE,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,gCAAgC,CAAC;gBACvE,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,gCAAgC,CAAC;gBACvE,IAAI,CAAC,SAAS,CAAC,eAAe,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACxE,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAA;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function getLibraryPathFromName(libraryName: string): string;
2
+ export declare function extractNamesFromPackageName(name: string): [string, string, string];
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getLibraryPathFromName = getLibraryPathFromName;
4
+ exports.extractNamesFromPackageName = extractNamesFromPackageName;
5
+ const constants_1 = require("./constants");
6
+ function getLibraryPathFromName(libraryName) {
7
+ if (libraryName.startsWith("@")) {
8
+ const [namespace, lib, _] = extractNamesFromPackageName(libraryName);
9
+ return `${constants_1.APP_BASE_PATH}/${namespace}/${lib}`;
10
+ }
11
+ return `${constants_1.APP_BASE_PATH}/${libraryName}`;
12
+ }
13
+ function extractNamesFromPackageName(name) {
14
+ const [namespace = "", libraryName = name] = name.startsWith("@") ? name.split("/", 2) : ["", name];
15
+ const shortName = libraryName.includes("-") ? libraryName.split("-").pop() || "" : libraryName;
16
+ return [namespace.slice(1), libraryName, shortName];
17
+ }
18
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/schematics/utils.ts"],"names":[],"mappings":";;AAEA,wDAMC;AAED,kEAIC;AAdD,2CAA4C;AAE5C,SAAgB,sBAAsB,CAAC,WAAmB;IACxD,IAAI,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;QAChC,MAAM,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,2BAA2B,CAAC,WAAW,CAAC,CAAC;QACrE,OAAO,GAAG,yBAAa,IAAI,SAAS,IAAI,GAAG,EAAE,CAAC;IAChD,CAAC;IACD,OAAO,GAAG,yBAAa,IAAI,WAAW,EAAE,CAAC;AAC3C,CAAC;AAED,SAAgB,2BAA2B,CAAC,IAAY;IACtD,MAAM,CAAC,SAAS,GAAG,EAAE,EAAE,WAAW,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,CAAC,CAAC;IACpG,MAAM,SAAS,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC;IAC/F,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;AACtD,CAAC"}