@yuuvis/client-cli 19.8.0 → 19.10.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 (97) hide show
  1. package/README.md +70 -0
  2. package/cli/commands/add/app.js +6 -1
  3. package/cli/commands/add/app.js.map +1 -1
  4. package/cli/commands/add/language.d.ts +6 -0
  5. package/cli/commands/add/language.js +40 -0
  6. package/cli/commands/add/language.js.map +1 -0
  7. package/cli/commands/generate/app.js +3 -1
  8. package/cli/commands/generate/app.js.map +1 -1
  9. package/cli/commands/generate/theme.d.ts +6 -0
  10. package/cli/commands/generate/theme.js +65 -0
  11. package/cli/commands/generate/theme.js.map +1 -0
  12. package/cli/options/options-add-language.json +7 -0
  13. package/cli/options/options-generate-theme.json +41 -0
  14. package/cli/utils.js.map +1 -1
  15. package/package.json +5 -1
  16. package/schematics/app-manifest.d.ts +1 -1
  17. package/schematics/app-manifest.js +1 -1
  18. package/schematics/app-manifest.js.map +1 -1
  19. package/schematics/commands/angular-json.d.ts +2 -2
  20. package/schematics/commands/angular-json.js +3 -16
  21. package/schematics/commands/angular-json.js.map +1 -1
  22. package/schematics/commands/app-config-ts.d.ts +12 -3
  23. package/schematics/commands/app-config-ts.js +77 -3
  24. package/schematics/commands/app-config-ts.js.map +1 -1
  25. package/schematics/commands/library-component.d.ts +4 -4
  26. package/schematics/commands/library-component.js +12 -16
  27. package/schematics/commands/library-component.js.map +1 -1
  28. package/schematics/commands/main-json.d.ts +80 -0
  29. package/schematics/commands/main-json.js +107 -0
  30. package/schematics/commands/main-json.js.map +1 -0
  31. package/schematics/commands/package-json.d.ts +20 -7
  32. package/schematics/commands/package-json.js +43 -8
  33. package/schematics/commands/package-json.js.map +1 -1
  34. package/schematics/commands/styles-scss.d.ts +52 -0
  35. package/schematics/commands/styles-scss.js +91 -0
  36. package/schematics/commands/styles-scss.js.map +1 -0
  37. package/schematics/commands/typescript-file.d.ts +10 -0
  38. package/schematics/commands/typescript-file.js +48 -1
  39. package/schematics/commands/typescript-file.js.map +1 -1
  40. package/schematics/factories/add-app/index.js +1 -1
  41. package/schematics/factories/add-app/index.js.map +1 -1
  42. package/schematics/factories/add-language/index.d.ts +2 -0
  43. package/schematics/factories/add-language/index.js +44 -0
  44. package/schematics/factories/add-language/index.js.map +1 -0
  45. package/schematics/factories/add-language/schema.json +23 -0
  46. package/schematics/factories/collection.json +10 -0
  47. package/schematics/factories/generate-app/index.js +8 -10
  48. package/schematics/factories/generate-app/index.js.map +1 -1
  49. package/schematics/factories/generate-app/schema.json +45 -45
  50. package/schematics/factories/generate-theme/generate-theme.model.d.ts +15 -0
  51. package/schematics/factories/generate-theme/generate-theme.model.js +3 -0
  52. package/schematics/factories/generate-theme/generate-theme.model.js.map +1 -0
  53. package/schematics/factories/generate-theme/index.d.ts +3 -0
  54. package/schematics/factories/generate-theme/index.js +122 -0
  55. package/schematics/factories/generate-theme/index.js.map +1 -0
  56. package/schematics/factories/generate-theme/schema.json +59 -0
  57. package/schematics/factories/new/index.js +3 -3
  58. package/schematics/factories/new/index.js.map +1 -1
  59. package/schematics/files/_i18n-external/__locale__.json +1 -0
  60. package/schematics/files/_scripts/extract-client-version.js +4 -0
  61. package/schematics/files/_src_app/app.component.html.template +1 -0
  62. package/schematics/files/_src_app/app.component.ts.template +7 -7
  63. package/schematics/files/_src_app/app.config.ts.template +1 -1
  64. package/schematics/files/_src_app/app.markers.ts.template +1 -0
  65. package/schematics/files/_src_assets_i18n/de.json +1 -0
  66. package/schematics/files/_src_assets_i18n/en.json +1 -0
  67. package/schematics/files/_src_styles_theme/__themeName__.config.scss.template +113 -0
  68. package/schematics/files/_src_styles_theme/__themeName__.theme.scss.template +5 -0
  69. package/schematics/patches/impl/0001.patch.js +2 -2
  70. package/schematics/patches/impl/0001.patch.js.map +1 -1
  71. package/schematics/patches/impl/0003.patch.d.ts +2 -2
  72. package/schematics/patches/impl/0003.patch.js +2 -2
  73. package/schematics/patches/impl/0003.patch.js.map +1 -1
  74. package/schematics/patches/impl/0004.patch.d.ts +9 -0
  75. package/schematics/patches/impl/0004.patch.js +37 -0
  76. package/schematics/patches/impl/0004.patch.js.map +1 -0
  77. package/schematics/patches/impl/0005.patch.d.ts +9 -0
  78. package/schematics/patches/impl/0005.patch.js +39 -0
  79. package/schematics/patches/impl/0005.patch.js.map +1 -0
  80. package/schematics/project-metadata.d.ts +2 -2
  81. package/schematics/registry-config.d.ts +18 -0
  82. package/schematics/registry-config.js +111 -0
  83. package/schematics/registry-config.js.map +1 -0
  84. package/schematics/rules/clean-up-ng-app.js +0 -1
  85. package/schematics/rules/clean-up-ng-app.js.map +1 -1
  86. package/schematics/rules/copy-resources.d.ts +3 -1
  87. package/schematics/rules/copy-resources.js +31 -3
  88. package/schematics/rules/copy-resources.js.map +1 -1
  89. package/schematics/rules/generate-theme.d.ts +6 -0
  90. package/schematics/rules/generate-theme.js +25 -0
  91. package/schematics/rules/generate-theme.js.map +1 -0
  92. package/schematics/schematics-util.d.ts +9 -0
  93. package/schematics/schematics-util.js +199 -43
  94. package/schematics/schematics-util.js.map +1 -1
  95. package/schematics/types/main-json.d.ts +299 -0
  96. package/schematics/types/main-json.js +24 -0
  97. package/schematics/types/main-json.js.map +1 -0
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.TypeScriptFileEditor = exports.AddPropertyToClassCommand = exports.AddImplementsClauseToClassCommand = exports.AddImportToFileCommand = exports.CompositeTypeScriptFileCommand = void 0;
15
+ exports.TypeScriptFileEditor = exports.AddMarkersToFileCommand = exports.AddPropertyToClassCommand = exports.AddImplementsClauseToClassCommand = exports.AddImportToFileCommand = exports.CompositeTypeScriptFileCommand = void 0;
16
16
  const schematics_1 = require("@angular-devkit/schematics");
17
17
  const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
18
18
  const change_1 = require("@schematics/angular/utility/change");
@@ -150,6 +150,53 @@ class AddPropertyToClassCommand {
150
150
  }
151
151
  }
152
152
  exports.AddPropertyToClassCommand = AddPropertyToClassCommand;
153
+ /**
154
+ * Adds marker calls to a TypeScript file (e.g. `marker('a.b.c');`).
155
+ * New markers are inserted after the last existing marker call, or after the last import
156
+ * if no markers exist yet. Already-present marker strings are skipped.
157
+ */
158
+ class AddMarkersToFileCommand {
159
+ constructor(markerStrings) {
160
+ this.markerStrings = markerStrings;
161
+ }
162
+ execute(sourceFile, recorder, filePath, context) {
163
+ if (this.markerStrings.length === 0)
164
+ return;
165
+ const isMarkerStatement = (statement) => typescript_1.default.isExpressionStatement(statement) &&
166
+ typescript_1.default.isCallExpression(statement.expression) &&
167
+ typescript_1.default.isIdentifier(statement.expression.expression) &&
168
+ statement.expression.expression.text === 'marker';
169
+ const markerStatements = sourceFile.statements.filter(isMarkerStatement);
170
+ const existingValues = new Set(markerStatements.map(s => {
171
+ const arg = s.expression.arguments[0];
172
+ return typescript_1.default.isStringLiteral(arg) ? arg.text : null;
173
+ }).filter((v) => v !== null));
174
+ const newMarkers = this.markerStrings.filter(m => {
175
+ if (existingValues.has(m)) {
176
+ context.logger.warn(`Marker '${m}' already exists in ${filePath}, skipping.`);
177
+ return false;
178
+ }
179
+ return true;
180
+ });
181
+ if (newMarkers.length === 0)
182
+ return;
183
+ const markersText = newMarkers.map(m => `\nmarker('${m}');`).join('');
184
+ if (markerStatements.length > 0) {
185
+ const lastMarker = markerStatements[markerStatements.length - 1];
186
+ recorder.insertRight(lastMarker.end, markersText);
187
+ }
188
+ else {
189
+ const imports = sourceFile.statements.filter(typescript_1.default.isImportDeclaration);
190
+ if (imports.length > 0) {
191
+ recorder.insertRight(imports[imports.length - 1].end, markersText);
192
+ }
193
+ else {
194
+ recorder.insertLeft(0, markersText);
195
+ }
196
+ }
197
+ }
198
+ }
199
+ exports.AddMarkersToFileCommand = AddMarkersToFileCommand;
153
200
  /**
154
201
  * Class for editing a typescript file.
155
202
  */
@@ -1 +1 @@
1
- {"version":3,"file":"typescript-file.js","sourceRoot":"","sources":["../../../src/schematics/commands/typescript-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"typescript-file.js","sourceRoot":"","sources":["../../../src/schematics/commands/typescript-file.ts"],"names":[],"mappings":"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"}
@@ -41,7 +41,7 @@ function addApp(options) {
41
41
  }
42
42
  if (!!appManifest.requires && appManifest.requires.length > 0) {
43
43
  if (!tree.exists('/src/app/app.requirements.ts')) {
44
- rules.push((0, copy_resources_1.copyAppRequirementsFile)());
44
+ rules.push((0, copy_resources_1.copyFileToSourceAppFolder)('/app.requirements.ts.template'));
45
45
  }
46
46
  rules.push((0, update_app_requirements_1.updateAppDependenciesRule)(appManifest.id, appManifest.requires));
47
47
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schematics/factories/add-app/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAUA,wBAmCC;AA7CD,2DAA8E;AAC9E,2DAAsD;AACtD,uCAA+C;AAC/C,uDAA6D;AAC7D,uDAA6D;AAC7D,iFAAgF;AAChF,0EAAiD;AACjD,6DAAyD;AACzD,+DAAqE;AAErE,SAAgB,MAAM,CAAC,OAAY;IACjC,OAAO,CAAO,IAAS,EAAE,OAAY,EAAE,EAAE;QACvC,MAAM,OAAO,GAAG,MAAM,kCAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAErD,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,gCAAmB,CAAC,WAAW,OAAO,CAAC,IAAI,6DAA6D,CAAC,CAAC;QACtH,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAA,wBAAgB,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEzD,MAAM,WAAW,GAAG,MAAM,IAAA,+BAAa,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/D,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;QAExE,MAAM,KAAK,GAAW,EAAE,CAAC;QAEzB,IAAI,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,IAAA,gCAAmB,EAAC,iBAAiB,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC,CAAC;QAClF,CAAC;QAED,IAAI,CAAC,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;YAC5B,MAAM,oBAAoB,GAAG,GAAG,iBAAiB,CAAC,eAAe,aAAa,CAAC;YAC/E,KAAK,CAAC,IAAI,CAAC,IAAA,gCAAmB,EAAC,WAAW,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC,CAAC;QAC/F,CAAC;QAED,IAAI,CAAC,CAAC,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,8BAA8B,CAAC,EAAE,CAAC;gBACjD,KAAK,CAAC,IAAI,CAAC,IAAA,wCAAuB,GAAE,CAAC,CAAC;YACxC,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,IAAA,mDAAyB,EAAC,WAAW,CAAC,EAAE,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC9E,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,IAAA,qBAAU,EAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAE3C,OAAO,IAAA,kBAAK,EAAC,KAAK,CAAC,CAAC;IACtB,CAAC,CAAA,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schematics/factories/add-app/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAUA,wBAmCC;AA7CD,2DAA8E;AAC9E,2DAAsD;AACtD,uCAA+C;AAC/C,uDAA6D;AAC7D,uDAA6D;AAC7D,iFAAgF;AAChF,0EAAiD;AACjD,6DAAyD;AACzD,+DAAuE;AAEvE,SAAgB,MAAM,CAAC,OAAY;IACjC,OAAO,CAAO,IAAS,EAAE,OAAY,EAAE,EAAE;QACvC,MAAM,OAAO,GAAG,MAAM,kCAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAErD,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,gCAAmB,CAAC,WAAW,OAAO,CAAC,IAAI,6DAA6D,CAAC,CAAC;QACtH,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAA,wBAAgB,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAEzD,MAAM,WAAW,GAAG,MAAM,IAAA,+BAAa,EAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC/D,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC;QAExE,MAAM,KAAK,GAAW,EAAE,CAAC;QAEzB,IAAI,CAAC,CAAC,WAAW,CAAC,EAAE,EAAE,CAAC;YACrB,KAAK,CAAC,IAAI,CAAC,IAAA,gCAAmB,EAAC,iBAAiB,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC,CAAC;QAClF,CAAC;QAED,IAAI,CAAC,CAAC,WAAW,CAAC,SAAS,EAAE,CAAC;YAC5B,MAAM,oBAAoB,GAAG,GAAG,iBAAiB,CAAC,eAAe,aAAa,CAAC;YAC/E,KAAK,CAAC,IAAI,CAAC,IAAA,gCAAmB,EAAC,WAAW,CAAC,EAAE,EAAE,WAAW,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC,CAAC;QAC/F,CAAC;QAED,IAAI,CAAC,CAAC,WAAW,CAAC,QAAQ,IAAI,WAAW,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9D,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,8BAA8B,CAAC,EAAE,CAAC;gBACjD,KAAK,CAAC,IAAI,CAAC,IAAA,0CAAyB,EAAC,+BAA+B,CAAC,CAAC,CAAC;YACzE,CAAC;YACD,KAAK,CAAC,IAAI,CAAC,IAAA,mDAAyB,EAAC,WAAW,CAAC,EAAE,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC9E,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,IAAA,qBAAU,EAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAE3C,OAAO,IAAA,kBAAK,EAAC,KAAK,CAAC,CAAC;IACtB,CAAC,CAAA,CAAC;AACJ,CAAC"}
@@ -0,0 +1,2 @@
1
+ import { Rule } from '@angular-devkit/schematics';
2
+ export declare function addLanguage(options: any): Rule;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.addLanguage = addLanguage;
13
+ const schematics_1 = require("@angular-devkit/schematics");
14
+ const package_json_1 = require("../../commands/package-json");
15
+ const main_json_1 = require("../../commands/main-json");
16
+ const copy_resources_1 = require("../../rules/copy-resources");
17
+ function addLanguage(options) {
18
+ return (tree, context) => __awaiter(this, void 0, void 0, function* () {
19
+ var _a;
20
+ const label = (_a = options.label) !== null && _a !== void 0 ? _a : options.locale;
21
+ const rules = [];
22
+ if (!tree.exists(`/i18n-external/${options.locale}.json`)) {
23
+ rules.push((0, copy_resources_1.copyNewLanguageFileToI18nExternal)(options.locale));
24
+ }
25
+ rules.push(updatePackageJsonRule(options.locale));
26
+ rules.push(updateMainJsonRule(options.locale, label));
27
+ return (0, schematics_1.chain)(rules);
28
+ });
29
+ }
30
+ function updatePackageJsonRule(locale) {
31
+ return (tree, context) => __awaiter(this, void 0, void 0, function* () {
32
+ const command = new package_json_1.UpdateLocalesInI18nExtractTaskCommand(locale);
33
+ const editor = yield package_json_1.PackageJsonEditor.create(tree, 'package.json');
34
+ editor.run(command, context);
35
+ });
36
+ }
37
+ function updateMainJsonRule(locale, label) {
38
+ return (tree, context) => __awaiter(this, void 0, void 0, function* () {
39
+ const command = new main_json_1.AddLanguageCommand(locale, label);
40
+ const editor = main_json_1.MainJsonEditor.create(tree);
41
+ editor.run(command, context);
42
+ });
43
+ }
44
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schematics/factories/add-language/index.ts"],"names":[],"mappings":";;;;;;;;;;;AAKA,kCAcC;AAnBD,2DAAiF;AACjF,8DAAuG;AACvG,wDAA8E;AAC9E,+DAA+E;AAE/E,SAAgB,WAAW,CAAC,OAAY;IACtC,OAAO,CAAO,IAAU,EAAE,OAAyB,EAAE,EAAE;;QACrD,MAAM,KAAK,GAAG,MAAA,OAAO,CAAC,KAAK,mCAAI,OAAO,CAAC,MAAM,CAAC;QAC9C,MAAM,KAAK,GAAW,EAAE,CAAC;QACzB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,kBAAkB,OAAO,CAAC,MAAM,OAAO,CAAC,EAAE,CAAC;YAC1D,KAAK,CAAC,IAAI,CAAC,IAAA,kDAAiC,EAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAChE,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;QAEtD,OAAO,IAAA,kBAAK,EAAC,KAAK,CAAC,CAAC;IACtB,CAAC,CAAA,CAAC;AAEJ,CAAC;AAED,SAAS,qBAAqB,CAAC,MAAc;IAC3C,OAAO,CAAO,IAAU,EAAE,OAAyB,EAAE,EAAE;QACrD,MAAM,OAAO,GAAG,IAAI,oDAAqC,CAAC,MAAM,CAAC,CAAC;QAClE,MAAM,MAAM,GAAG,MAAM,gCAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACpE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/B,CAAC,CAAA,CAAC;AACJ,CAAC;AAED,SAAS,kBAAkB,CAAC,MAAc,EAAE,KAAa;IACvD,OAAO,CAAO,IAAU,EAAE,OAAyB,EAAE,EAAE;QACrD,MAAM,OAAO,GAAG,IAAI,8BAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACtD,MAAM,MAAM,GAAG,0BAAc,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/B,CAAC,CAAA,CAAC;AACJ,CAAC"}
@@ -0,0 +1,23 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "add-language",
4
+ "title": "Add Language Schematic",
5
+ "type": "object",
6
+ "properties": {
7
+ "locale": {
8
+ "type": "string",
9
+ "description": "The locale code of the language to add (e.g. 'es' for Spanish, 'fr' for French). Only lowercase letters and hyphens are allowed.",
10
+ "pattern": "^[a-z]+(-[a-z]+)*$",
11
+ "$default": {
12
+ "$source": "argv",
13
+ "index": 0
14
+ }
15
+ },
16
+ "label": {
17
+ "type": "string",
18
+ "description": "The display name of the language, written in that language itself (e.g. 'Español' for Spanish, 'Français' for French)",
19
+ "pattern": "^\\S.*$"
20
+ }
21
+ },
22
+ "required": ["locale"]
23
+ }
@@ -20,10 +20,20 @@
20
20
  "factory": "./add-app/index#addApp",
21
21
  "schema": "./add-app/schema.json"
22
22
  },
23
+ "add-language": {
24
+ "description": "Adds a new language to the yuuvis client project",
25
+ "factory": "./add-language/index#addLanguage",
26
+ "schema": "./add-language/schema.json"
27
+ },
23
28
  "apply-patch": {
24
29
  "description": "Applies the patch with the given ID to the current client project.",
25
30
  "factory": "./apply-patch/index#applyPatch",
26
31
  "schema": "./apply-patch/schema.json"
32
+ },
33
+ "generate-theme": {
34
+ "description": "Generates a new yuuvis client theme",
35
+ "factory": "./generate-theme/index#generateTheme",
36
+ "schema": "./generate-theme/schema.json"
27
37
  }
28
38
  }
29
39
  }
@@ -155,29 +155,27 @@ function updateLibraryComponentRule(projectName, componentName) {
155
155
  return (tree, context) => __awaiter(this, void 0, void 0, function* () {
156
156
  const project = yield project_metadata_1.ProjectMetadata.fromTree(tree);
157
157
  const librarySourceRoot = yield project.getLibrarySourceRoot(projectName);
158
- const filePath = (0, utils_1.buildPath)(librarySourceRoot, 'lib', `${schematics_1.strings.dasherize(componentName)}.component.ts`);
159
- const template = ` \`
160
- <p>
161
- {{ '${schematics_1.strings.dasherize(componentName)}.works' | translate }}
162
- </p>
163
- \``;
158
+ const dasherizedName = schematics_1.strings.dasherize(componentName);
159
+ const tsFilePath = (0, utils_1.buildPath)(librarySourceRoot, 'lib', `${dasherizedName}.component.ts`);
160
+ const htmlFilePath = (0, utils_1.buildPath)(librarySourceRoot, 'lib', `${dasherizedName}.component.html`);
164
161
  const command = new typescript_file_1.CompositeTypeScriptFileCommand([
165
162
  new typescript_file_1.AddImportToFileCommand('TranslateModule', '@yuuvis/client-core'),
166
163
  new library_component_1.AddImportToComponentDecoratorCommand('TranslateModule'),
167
- new library_component_1.AddInlineTemplateToComponentDecoratorCommand(template)
164
+ new library_component_1.ReplaceTemplateWithTemplateUrlCommand(`./${dasherizedName}.component.html`),
168
165
  ]);
169
- const editor = yield typescript_file_1.TypeScriptFileEditor.create(tree, filePath);
166
+ const editor = yield typescript_file_1.TypeScriptFileEditor.create(tree, tsFilePath);
170
167
  editor.run(command, context);
168
+ tree.create(htmlFilePath, `<p>\n {{ '${dasherizedName}.works' | translate }}\n</p>\n`);
171
169
  return tree;
172
170
  });
173
171
  }
174
172
  function updatePackageJsonRule(projectName, libraryName, libraryShortName) {
175
- return (tree) => __awaiter(this, void 0, void 0, function* () {
173
+ return (tree, context) => __awaiter(this, void 0, void 0, function* () {
176
174
  const command = new package_json_1.AddScriptsCommand({
177
175
  [`build:app:${libraryShortName}`]: `ng build ${libraryName}`
178
176
  });
179
177
  const editor = yield package_json_1.PackageJsonEditor.create(tree, 'package.json');
180
- editor.run(command);
178
+ editor.run(command, context);
181
179
  return tree;
182
180
  });
183
181
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schematics/factories/generate-app/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAyBA,kCAkCC;AA3DD,gDAAwB;AACxB,2DAA0F;AAC1F,uCAA0D;AAC1D,mEAA+D;AAE/D,+EAA4E;AAC5E,uDAA6D;AAC7D,uDAA6D;AAC7D,8DAA2F;AAC3F,gEAAiG;AACjG,6DAAyD;AACzD,gEAAoF;AACpF,oEAAuF;AACvF,wEAAsI;AACtI,oEAA8H;AAC9H,+DAA+F;AAC/F,8DAAmF;AASnF,SAAgB,WAAW,CAAC,OAAY;IACtC,OAAO,CAAO,IAAU,EAAE,OAAyB,EAAE,EAAE;QACrD,eAAe,CAAC,OAAO,CAAC,CAAC;QAEzB,MAAM,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC;QACjC,MAAM,iBAAiB,GAAG,IAAA,wBAAgB,EAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACzD,OAAO,CAAC,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC;QAChD,OAAO,CAAC,aAAa,GAAG,iBAAiB,CAAC,WAAW,CAAC;QACtD,OAAO,CAAC,SAAS,GAAG,iBAAiB,CAAC,SAAS,CAAC;QAEhD,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC;QAE1J,MAAM,KAAK,GAAW;YACpB,IAAA,kCAAe,EAAC,OAAO,CAAC;YACxB,IAAA,+CAAsB,EAAC,OAAO,CAAC,IAAI,EAAE,WAAW,CAAC;YACjD,IAAA,4BAAW,EAAC,OAAO,CAAC;YACpB,IAAA,gCAAe,EAAC,OAAO,CAAC;YACxB,qBAAqB,CAAC,WAAW,CAAC;YAClC,sBAAsB,CAAC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC;YAC1D,0BAA0B,CAAC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC;YAC9D,qBAAqB,CAAC,WAAW,CAAC;YAClC,uBAAuB,CAAC,WAAW,EAAE,OAAO,CAAC,aAAa,CAAC;YAC3D,IAAA,gCAAmB,EAAC,WAAW,EAAE,WAAW,CAAC;YAC7C,qBAAqB,CAAC,WAAW,EAAE,iBAAiB,CAAC,eAAe,EAAE,iBAAiB,CAAC,SAAS,CAAC;SACnG,CAAC;QAEF,IAAG,CAAC,OAAO,CAAC,aAAa,EAAE,CAAC;YAC1B,MAAM,oBAAoB,GAAG,GAAG,WAAW,aAAa,CAAA;YACxD,KAAK,CAAC,IAAI,CAAC,IAAA,oCAAmB,EAAC,OAAO,CAAC,CAAC,CAAC;YACzC,KAAK,CAAC,IAAI,CAAC,IAAA,gCAAmB,EAAC,WAAW,CAAC,EAAE,EAAE,WAAW,CAAC,SAAU,EAAE,oBAAoB,CAAC,CAAC,CAAC;QAChG,CAAC;QAED,OAAO,IAAA,kBAAK,EAAC,KAAK,CAAC,CAAC;IACtB,CAAC,CAAA,CAAC;AACJ,CAAC;AAED,iDAAiD;AACjD,SAAS,iBAAiB,CAAC,aAAqB,EAAE,KAAa,EAAE,KAAa,EAAE,aAAsB,EAAE,SAAkB,EAAE,WAAoB;IAC9I,MAAM,QAAQ,GAAgB;QAC5B,EAAE,EAAE,GAAG,KAAK,EAAE;QACd,KAAK,EAAE,GAAG,oBAAO,CAAC,UAAU,CAAC,aAAa,CAAC,QAAQ;QACnD,QAAQ,EAAE,EAAE;KACb,CAAC;IAEF,QAAQ,CAAC,EAAE,GAAG;QACZ,IAAI,EAAE,GAAG,KAAK,EAAE;QAChB,QAAQ,EAAE,UAAU;QACpB,MAAM,EAAE,GAAG,oBAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ;QAClD,OAAO,EAAE;YACP,SAAS,EAAE,SAAS;YACpB,WAAW,EAAE,WAAW;SACzB;KACF,CAAC;IAEF,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,QAAQ,CAAC,SAAS,GAAG,GAAG,oBAAO,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC;IACrE,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,eAAe,CAAC,OAAY;IACnC,IAAI,YAAY,GAAG,IAAI,CAAC;IAExB,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAClB,YAAY,GAAG,4BAA4B,CAAC;IAC9C,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnB,YAAY,GAAG,6BAA6B,CAAC;IAC/C,CAAC;IAED,IAAI,CAAC,CAAC,YAAY,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC;IAChC,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,WAAmB;IAChD,OAAO,CAAO,IAAU,EAAE,EAAE;QAC1B,MAAM,OAAO,GAAG,IAAI,wCAAyB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAEnE,MAAM,MAAM,GAAG,MAAM,gCAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QACpD,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEpB,OAAO,IAAI,CAAA;IACb,CAAC,CAAA,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,WAAmB,EAAE,aAAsB;IACzE,OAAO,CAAO,IAAU,EAAE,EAAE;QAC1B,MAAM,OAAO,GAAG,MAAM,kCAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACxC,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAG,IAAA,iBAAS,EAAC,WAAW,EAAE,eAAe,CAAC,CAAC;QACzD,MAAM,KAAK,GAAG;YACZ,CAAC,WAAW,CAAC,EAAE,CAAC,KAAK,iBAAiB,gBAAgB,CAAC;YACvD,CAAC,GAAG,WAAW,SAAS,CAAC,EAAE,CAAC,KAAK,WAAW,sBAAsB,CAAC;SACpE,CAAA;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,KAAK,CAAC,GAAG,WAAW,aAAa,CAAC,GAAG,CAAC,KAAK,WAAW,0BAA0B,CAAC,CAAC;QACpF,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,iDAAiC,CAAC,KAAK,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,8BAAc,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC3D,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEpB,OAAO,IAAI,CAAC;IACd,CAAC,CAAA,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,WAAmB;IAChD,OAAO,CAAO,IAAU,EAAE,EAAE;QAC1B,MAAM,OAAO,GAAG,MAAM,kCAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAG,IAAA,iBAAS,EAAC,iBAAiB,EAAE,eAAe,CAAC,CAAC;QAC/D,MAAM,OAAO,GAAG,IAAI,iCAAiB,CAAC,CAAC,mCAAmC,CAAC,CAAC,CAAC;QAC7E,MAAM,MAAM,GAAG,MAAM,iCAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC9D,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEpB,OAAO,IAAI,CAAC;IACd,CAAC,CAAA,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,WAAmB,EAAE,aAAsB;IAC1E,OAAO,CAAO,IAAU,EAAE,EAAE;QAC1B,MAAM,OAAO,GAAG,MAAM,kCAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAC9D,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAC1E,MAAM,eAAe,GAAG,cAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAA;QACrE,MAAM,QAAQ,GAAG,IAAA,iBAAS,EAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;QAE3D,MAAM,MAAM,GAAG;YACb,EAAC,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,mBAAmB,EAAE,MAAM,EAAE,IAAI,EAAC;YACtD,EAAC,KAAK,EAAE,KAAK,eAAe,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAC;SAC3E,CAAC;QAEF,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,MAAM,CAAC,IAAI,CAAC,EAAC,KAAK,EAAE,yBAAyB,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,wBAAwB,EAAC,CAAC,CAAC;QAClG,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,kCAAgB,CAAC,MAAM,CAAC,CAAC;QAC7C,MAAM,MAAM,GAAG,qCAAmB,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC1D,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEpB,OAAO,IAAI,CAAC;IACd,CAAC,CAAA,CAAA;AACH,CAAC;AAED,SAAS,0BAA0B,CAAC,WAAmB,EAAE,aAAqB;IAC5E,OAAO,CAAO,IAAU,EAAE,OAAyB,EAAE,EAAE;QACrD,MAAM,OAAO,GAAG,MAAM,kCAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,iBAAiB,GAAG,MAAM,OAAO,CAAC,oBAAoB,CAAC,WAAW,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAG,IAAA,iBAAS,EAAC,iBAAiB,EAAE,KAAK,EAAE,GAAG,oBAAO,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;QAEzG,MAAM,QAAQ,GAAG;;YAET,oBAAO,CAAC,SAAS,CAAC,aAAa,CAAC;;OAErC,CAAC;QAEJ,MAAM,OAAO,GAAG,IAAI,gDAA8B,CAAC;YACjD,IAAI,wCAAsB,CAAC,iBAAiB,EAAE,qBAAqB,CAAC;YACpE,IAAI,wDAAoC,CAAC,iBAAiB,CAAC;YAC3D,IAAI,gEAA4C,CAAC,QAAQ,CAAC;SAC3D,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,sCAAoB,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACjE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAE7B,OAAO,IAAI,CAAC;IACd,CAAC,CAAA,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,WAAmB,EAAE,WAAmB,EAAE,gBAAwB;IAC/F,OAAO,CAAO,IAAU,EAAE,EAAE;QAC1B,MAAM,OAAO,GAAG,IAAI,gCAAiB,CAAC;YACpC,CAAC,aAAa,gBAAgB,EAAE,CAAC,EAAE,YAAY,WAAW,EAAE;SAC7D,CAAC,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,gCAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;QACpE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAEpB,OAAO,IAAI,CAAC;IACd,CAAC,CAAA,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schematics/factories/generate-app/index.ts"],"names":[],"mappings":"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"}
@@ -1,48 +1,48 @@
1
1
  {
2
- "$schema": "http://json-schema.org/draft-07/schema",
3
- "$id": "generate-app",
4
- "title": "Generate App Schematic",
5
- "type": "object",
6
- "properties": {
7
- "name": {
8
- "type": "string",
9
- "description": "The name of the app",
10
- "pattern": "^(@[a-z0-9-]+/[a-z][a-z0-9-]*|[a-z][a-z0-9-]*)$",
11
- "$default": {
12
- "$source": "argv",
13
- "index": 0
14
- }
15
- },
16
- "skipExtension": {
17
- "type": "boolean",
18
- "description": "Do not generate extension code.",
19
- "default": false
20
- },
21
- "appId": {
22
- "type": "string",
23
- "description": "The ID of the app. Only letters, numbers, hyphens, dots, and underscores are allowed.",
24
- "pattern": "^[a-zA-Z0-9_](?:[a-zA-Z0-9._-]*[a-zA-Z0-9_])?$"
25
- },
26
- "route": {
27
- "type": "string",
28
- "description": "The URL path where the app will be available to the client. Only letters, numbers, hyphens, underscores, and dots are allowed.",
29
- "pattern": "^[a-zA-Z0-9\\-_\\.]+$"
30
- },
31
- "prefix": {
32
- "type": "string",
33
- "description": "A prefix to apply to generated selectors.",
34
- "pattern": "^[a-z0-9]+$"
35
- },
36
- "appHeader": {
37
- "type": "boolean",
38
- "description": "Use the shell's app header layout.",
39
- "default": false
40
- },
41
- "hideFromNav": {
42
- "type": "boolean",
43
- "description": "Hide the app from the navigation bar.",
44
- "default": false
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "generate-app",
4
+ "title": "Generate App Schematic",
5
+ "type": "object",
6
+ "properties": {
7
+ "name": {
8
+ "type": "string",
9
+ "description": "The name of the app",
10
+ "pattern": "^(@[a-z0-9-]+/[a-z][a-z0-9-]*|[a-z][a-z0-9-]*)$",
11
+ "$default": {
12
+ "$source": "argv",
13
+ "index": 0
45
14
  }
46
15
  },
47
- "required": ["name"]
48
- }
16
+ "skipExtension": {
17
+ "type": "boolean",
18
+ "description": "Do not generate extension code.",
19
+ "default": false
20
+ },
21
+ "appId": {
22
+ "type": "string",
23
+ "description": "The ID of the app. Only letters, numbers, hyphens, dots, and underscores are allowed.",
24
+ "pattern": "^[a-zA-Z0-9_](?:[a-zA-Z0-9._-]*[a-zA-Z0-9_])?$"
25
+ },
26
+ "route": {
27
+ "type": "string",
28
+ "description": "The URL path where the app will be available to the client. Only letters, numbers, hyphens, underscores, and dots are allowed.",
29
+ "pattern": "^[a-zA-Z0-9\\-_\\.]+$"
30
+ },
31
+ "prefix": {
32
+ "type": "string",
33
+ "description": "A prefix to apply to generated selectors.",
34
+ "pattern": "^[a-z0-9]+$"
35
+ },
36
+ "appHeader": {
37
+ "type": "boolean",
38
+ "description": "Use the shell's app header layout.",
39
+ "default": false
40
+ },
41
+ "hideFromNav": {
42
+ "type": "boolean",
43
+ "description": "Hide the app from the navigation bar.",
44
+ "default": false
45
+ }
46
+ },
47
+ "required": ["name"]
48
+ }
@@ -0,0 +1,15 @@
1
+ export interface GenerateThemeColorOptions {
2
+ primaryColor: string;
3
+ secondaryColor?: string;
4
+ tertiaryColor?: string;
5
+ neutralColor?: string;
6
+ neutralVariantColor?: string;
7
+ errorColor: string;
8
+ hasDarkTheme?: boolean;
9
+ hasLightTheme?: boolean;
10
+ includeHighContrast?: boolean;
11
+ directory?: string;
12
+ }
13
+ export interface GenerateThemeOptions extends GenerateThemeColorOptions {
14
+ name: string;
15
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=generate-theme.model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generate-theme.model.js","sourceRoot":"","sources":["../../../../src/schematics/factories/generate-theme/generate-theme.model.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import { Rule } from '@angular-devkit/schematics';
2
+ import { GenerateThemeOptions } from './generate-theme.model';
3
+ export declare function generateTheme(options: GenerateThemeOptions): Rule;
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.generateTheme = generateTheme;
13
+ const schematics_1 = require("@angular-devkit/schematics");
14
+ const project_metadata_1 = require("../../project-metadata");
15
+ const generate_theme_1 = require("../../rules/generate-theme");
16
+ const utils_1 = require("../../utils");
17
+ const typescript_file_1 = require("../../commands/typescript-file");
18
+ const strings_1 = require("@angular-devkit/core/src/utils/strings");
19
+ const copy_resources_1 = require("../../rules/copy-resources");
20
+ const app_config_ts_1 = require("../../commands/app-config-ts");
21
+ const styles_scss_1 = require("../../commands/styles-scss");
22
+ function generateTheme(options) {
23
+ return (tree, context) => __awaiter(this, void 0, void 0, function* () {
24
+ options = coerceColorOptionsToString(options);
25
+ const project = yield project_metadata_1.ProjectMetadata.fromTree(tree);
26
+ const stylesPath = (0, utils_1.buildPath)(project.sourceRoot, 'styles.scss');
27
+ const targetPath = (0, utils_1.buildPath)(project.sourceRoot, 'styles', options.name);
28
+ const themePath = (0, utils_1.buildPath)(project.sourceRoot, 'styles', options.name, options.name);
29
+ const markersFilePath = (0, utils_1.buildPath)(project.sourceRoot, 'app', 'app.markers.ts');
30
+ const rules = [
31
+ (0, generate_theme_1.runAngularMaterialGenerateTheme)(options, themePath),
32
+ generateThemeConfigScssFileRule(options, targetPath),
33
+ generateThemeScssFileRule(options.name, targetPath),
34
+ updateStylesRule(stylesPath, options.name),
35
+ updateAppConfigRule(options.name, options.hasDarkTheme, options.hasLightTheme),
36
+ ];
37
+ if (!tree.exists(markersFilePath)) {
38
+ rules.push((0, copy_resources_1.copyFileToSourceAppFolder)('/app.markers.ts.template'));
39
+ }
40
+ rules.push(generateMarkerRule(options.name, markersFilePath));
41
+ return (0, schematics_1.chain)(rules);
42
+ });
43
+ }
44
+ function generateThemeConfigScssFileRule(options, targetPath) {
45
+ return (tree, context) => __awaiter(this, void 0, void 0, function* () {
46
+ return (0, schematics_1.chain)([
47
+ (0, schematics_1.mergeWith)((0, schematics_1.apply)((0, schematics_1.url)('../../files/_src_styles_theme'), [
48
+ (0, schematics_1.filter)((path) => path.includes('.config.scss')),
49
+ (0, schematics_1.template)({ themeName: options.name, hasLightTheme: options.hasLightTheme, hasDarkTheme: options.hasDarkTheme }),
50
+ (0, schematics_1.renameTemplateFiles)(),
51
+ (0, schematics_1.move)(targetPath)
52
+ ]), schematics_1.MergeStrategy.Overwrite)
53
+ ]);
54
+ });
55
+ }
56
+ ;
57
+ function generateThemeScssFileRule(themeName, targetPath) {
58
+ return (tree, context) => __awaiter(this, void 0, void 0, function* () {
59
+ return (0, schematics_1.chain)([
60
+ (0, schematics_1.mergeWith)((0, schematics_1.apply)((0, schematics_1.url)('../../files/_src_styles_theme'), [
61
+ (0, schematics_1.filter)((path) => path.includes('.theme.scss')),
62
+ (0, schematics_1.template)({ themeName }),
63
+ (0, schematics_1.renameTemplateFiles)(),
64
+ (0, schematics_1.move)(targetPath)
65
+ ]), schematics_1.MergeStrategy.Overwrite)
66
+ ]);
67
+ });
68
+ }
69
+ ;
70
+ function updateStylesRule(stylesPath, themeName) {
71
+ return (tree, context) => __awaiter(this, void 0, void 0, function* () {
72
+ const editor = styles_scss_1.StylesScssEditor.create(tree, stylesPath);
73
+ editor.run(new styles_scss_1.AddImportCommand([`./styles/${themeName}/${themeName}.theme.scss`]));
74
+ return tree;
75
+ });
76
+ }
77
+ ;
78
+ function updateAppConfigRule(themeName, hasDarkTheme = true, hasLightTheme = true) {
79
+ return (tree, context) => __awaiter(this, void 0, void 0, function* () {
80
+ const project = yield project_metadata_1.ProjectMetadata.fromTree(tree);
81
+ const filePath = (0, utils_1.buildPath)(project.sourceRoot, 'app', 'app.config.ts');
82
+ const command = new typescript_file_1.CompositeTypeScriptFileCommand([
83
+ new typescript_file_1.AddImportToFileCommand('provideYuvCustomTheme', '@yuuvis/client-framework/common'),
84
+ new app_config_ts_1.AddOrUpdateProvideYuvCustomThemeCommand(themeName, getThemeLabelKey(themeName), getThemeDescriptionKey(themeName), hasDarkTheme, hasLightTheme)
85
+ ]);
86
+ const editor = yield typescript_file_1.TypeScriptFileEditor.create(tree, filePath);
87
+ editor.run(command, context);
88
+ return tree;
89
+ });
90
+ }
91
+ ;
92
+ function generateMarkerRule(themeName, markersFilePath) {
93
+ return (tree, context) => __awaiter(this, void 0, void 0, function* () {
94
+ const labelKey = getThemeLabelKey(themeName);
95
+ const descriptionKey = getThemeDescriptionKey(themeName);
96
+ const command = new typescript_file_1.AddMarkersToFileCommand([labelKey, descriptionKey]);
97
+ const editor = yield typescript_file_1.TypeScriptFileEditor.create(tree, markersFilePath);
98
+ editor.run(command, context);
99
+ return tree;
100
+ });
101
+ }
102
+ function getThemeLabelKey(themeName) {
103
+ return `yuv.client.theme.${(0, strings_1.dasherize)(themeName)}.label`;
104
+ }
105
+ function getThemeDescriptionKey(themeName) {
106
+ return `yuv.client.theme.${(0, strings_1.dasherize)(themeName)}.description`;
107
+ }
108
+ function coerceColorOptionsToString(options) {
109
+ const colorKeys = [
110
+ 'primaryColor',
111
+ 'secondaryColor',
112
+ 'tertiaryColor',
113
+ 'neutralColor',
114
+ 'neutralVariantColor',
115
+ 'errorColor'
116
+ ];
117
+ const coerced = Object.assign({}, options);
118
+ colorKeys.forEach(key => { if (coerced[key] !== undefined)
119
+ coerced[key] = String(coerced[key]); });
120
+ return coerced;
121
+ }
122
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/schematics/factories/generate-theme/index.ts"],"names":[],"mappings":";;;;;;;;;;;AAWA,sCAyBC;AApCD,2DAAoK;AACpK,6DAAyD;AACzD,+DAA6E;AAC7E,uCAAwC;AAExC,oEAAuJ;AACvJ,oEAAmE;AACnE,+DAAuE;AACvE,gEAAuF;AACvF,4DAAgF;AAEhF,SAAgB,aAAa,CAAC,OAA6B;IACzD,OAAO,CAAO,IAAU,EAAE,OAAyB,EAAE,EAAE;QACrD,OAAO,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,MAAM,kCAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,UAAU,GAAG,IAAA,iBAAS,EAAC,OAAO,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;QAChE,MAAM,UAAU,GAAG,IAAA,iBAAS,EAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACzE,MAAM,SAAS,GAAG,IAAA,iBAAS,EAAC,OAAO,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QACtF,MAAM,eAAe,GAAG,IAAA,iBAAS,EAAC,OAAO,CAAC,UAAU,EAAE,KAAK,EAAE,gBAAgB,CAAC,CAAC;QAE/E,MAAM,KAAK,GAAG;YACZ,IAAA,gDAA+B,EAAC,OAAO,EAAE,SAAS,CAAC;YACnD,+BAA+B,CAAC,OAAO,EAAE,UAAU,CAAC;YACpD,yBAAyB,CAAC,OAAO,CAAC,IAAI,EAAE,UAAU,CAAC;YACnD,gBAAgB,CAAC,UAAU,EAAE,OAAO,CAAC,IAAI,CAAC;YAC1C,mBAAmB,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,aAAa,CAAC;SAC/E,CAAC;QAEF,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,IAAA,0CAAyB,EAAC,0BAA0B,CAAC,CAAC,CAAC;QACpE,CAAC;QAED,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC,CAAC;QAE9D,OAAO,IAAA,kBAAK,EAAC,KAAK,CAAC,CAAC;IACtB,CAAC,CAAA,CAAC;AACJ,CAAC;AAED,SAAS,+BAA+B,CAAE,OAA6B,EAAE,UAAkB;IACzF,OAAO,CAAO,IAAU,EAAE,OAAyB,EAAE,EAAE;QACrD,OAAO,IAAA,kBAAK,EAAC;YACX,IAAA,sBAAS,EACP,IAAA,kBAAK,EAAC,IAAA,gBAAG,EAAC,+BAA+B,CAAC,EAAE;gBAC1C,IAAA,mBAAM,EAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC;gBAC/C,IAAA,qBAAQ,EAAC,EAAE,SAAS,EAAE,OAAO,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC;gBAC/G,IAAA,gCAAmB,GAAE;gBACrB,IAAA,iBAAI,EAAC,UAAU,CAAC;aACjB,CAAC,EACF,0BAAa,CAAC,SAAS,CACxB;SACF,CAAC,CAAC;IACL,CAAC,CAAA,CAAC;AACJ,CAAC;AAAA,CAAC;AAEF,SAAS,yBAAyB,CAAE,SAAiB,EAAE,UAAkB;IACvE,OAAO,CAAO,IAAU,EAAE,OAAyB,EAAE,EAAE;QACrD,OAAO,IAAA,kBAAK,EAAC;YACX,IAAA,sBAAS,EACP,IAAA,kBAAK,EAAC,IAAA,gBAAG,EAAC,+BAA+B,CAAC,EAAE;gBAC1C,IAAA,mBAAM,EAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;gBAC9C,IAAA,qBAAQ,EAAC,EAAE,SAAS,EAAE,CAAC;gBACvB,IAAA,gCAAmB,GAAE;gBACrB,IAAA,iBAAI,EAAC,UAAU,CAAC;aACjB,CAAC,EACF,0BAAa,CAAC,SAAS,CACxB;SACF,CAAC,CAAC;IACL,CAAC,CAAA,CAAC;AACJ,CAAC;AAAA,CAAC;AAEF,SAAS,gBAAgB,CAAE,UAAkB,EAAE,SAAiB;IAC9D,OAAO,CAAO,IAAU,EAAE,OAAyB,EAAE,EAAE;QACrD,MAAM,MAAM,GAAG,8BAAgB,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,CAAC,CAAA;QACxD,MAAM,CAAC,GAAG,CACR,IAAI,8BAAgB,CAAC,CAAC,YAAY,SAAS,IAAI,SAAS,aAAa,CAAC,CAAC,CACxE,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC,CAAA,CAAC;AACJ,CAAC;AAAA,CAAC;AAEF,SAAS,mBAAmB,CAAE,SAAiB,EAAE,YAAY,GAAG,IAAI,EAAE,aAAa,GAAG,IAAI;IACxF,OAAO,CAAO,IAAU,EAAE,OAAyB,EAAE,EAAE;QACrD,MAAM,OAAO,GAAG,MAAM,kCAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,IAAA,iBAAS,EAAC,OAAO,CAAC,UAAU,EAAE,KAAK,EAAE,eAAe,CAAC,CAAC;QAEvE,MAAM,OAAO,GAAG,IAAI,gDAA8B,CAAC;YACjD,IAAI,wCAAsB,CAAC,uBAAuB,EAAE,iCAAiC,CAAC;YACtF,IAAI,uDAAuC,CAAC,SAAS,EAAE,gBAAgB,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,aAAa,CAAC;SACpJ,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,sCAAoB,CAAC,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACjE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAE7B,OAAO,IAAI,CAAC;IACd,CAAC,CAAA,CAAC;AACJ,CAAC;AAAA,CAAC;AAEF,SAAS,kBAAkB,CAAC,SAAiB,EAAE,eAAuB;IACpE,OAAO,CAAO,IAAU,EAAE,OAAyB,EAAE,EAAE;QACrD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAC7C,MAAM,cAAc,GAAG,sBAAsB,CAAC,SAAS,CAAC,CAAC;QACzD,MAAM,OAAO,GAAG,IAAI,yCAAuB,CAAC,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC;QACxE,MAAM,MAAM,GAAG,MAAM,sCAAoB,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QACxE,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAE7B,OAAO,IAAI,CAAC;IACd,CAAC,CAAA,CAAA;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,SAAiB;IACzC,OAAO,oBAAoB,IAAA,mBAAS,EAAC,SAAS,CAAC,QAAQ,CAAC;AAC1D,CAAC;AAED,SAAS,sBAAsB,CAAC,SAAiB;IAC/C,OAAO,oBAAoB,IAAA,mBAAS,EAAC,SAAS,CAAC,cAAc,CAAC;AAChE,CAAC;AAED,SAAS,0BAA0B,CAAC,OAA6B;IAC/D,MAAM,SAAS,GAAG;QAChB,cAAc;QACd,gBAAgB;QAChB,eAAe;QACf,cAAc;QACd,qBAAqB;QACrB,YAAY;KACJ,CAAC;IACX,MAAM,OAAO,qBAAQ,OAAO,CAAE,CAAC;IAC/B,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,SAAS;QAAG,OAAe,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5G,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,59 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema",
3
+ "$id": "theme",
4
+ "title": "Theme Schematic",
5
+ "type": "object",
6
+ "properties": {
7
+ "primaryColor": {
8
+ "description": "The hex color code without the leading #.",
9
+ "type": ["string", "number"],
10
+ "pattern": "^[0-9a-fA-F]{6}$"
11
+ },
12
+ "secondaryColor": {
13
+ "type": ["string", "number"],
14
+ "description": "Color for secondary color palette",
15
+ "pattern": "^[0-9a-fA-F]{6}$"
16
+ },
17
+ "tertiaryColor": {
18
+ "type": ["string", "number"],
19
+ "description": "Color for tertiary color palette",
20
+ "pattern": "^[0-9a-fA-F]{6}$"
21
+ },
22
+ "neutralColor": {
23
+ "type": ["string", "number"],
24
+ "description": "Color for neutral color palette",
25
+ "pattern": "^[0-9a-fA-F]{6}$"
26
+ },
27
+ "neutralVariantColor": {
28
+ "type": ["string", "number"],
29
+ "description": "Color for the neutral variant palette",
30
+ "pattern": "^[0-9a-fA-F]{6}$"
31
+ },
32
+ "errorColor": {
33
+ "type": ["string", "number"],
34
+ "description": "Color for the error palette",
35
+ "pattern": "^[0-9a-fA-F]{6}$"
36
+ },
37
+ "includeHighContrast": {
38
+ "type": "boolean",
39
+ "default": false,
40
+ "description": "Whether to create high contrast override theme mixins"
41
+ },
42
+ "name": {
43
+ "description": "The name of the theme to be generated.",
44
+ "type": "string",
45
+ "pattern": "^[a-z][0-9a-z-]*$"
46
+ },
47
+ "hasDarkTheme": {
48
+ "type": "boolean",
49
+ "default": true,
50
+ "description": "Whether to generate a dark variant of the theme"
51
+ },
52
+ "hasLightTheme": {
53
+ "type": "boolean",
54
+ "default": true,
55
+ "description": "Whether to generate a light variant of the theme"
56
+ }
57
+ },
58
+ "required": ["name", "primaryColor"]
59
+ }
@@ -77,7 +77,7 @@ function updateAngularJsonRule(projectName) {
77
77
  });
78
78
  }
79
79
  function updatePackageJsonRule(projectName, shellVersion) {
80
- return (tree) => __awaiter(this, void 0, void 0, function* () {
80
+ return (tree, context) => __awaiter(this, void 0, void 0, function* () {
81
81
  const command = new package_json_1.CompositePackageJsonCommand([
82
82
  new package_json_1.AddDependenciesCommand({
83
83
  '@angular/animations': '^19.2.0',
@@ -97,12 +97,12 @@ function updatePackageJsonRule(projectName, shellVersion) {
97
97
  prebuild: 'node ./scripts/extract-client-version.js && node ./scripts/extract-component-data.js',
98
98
  'build:docker': constants_1.BUILD_DOCKER_NPM_SCRIPT,
99
99
  'i18n:collect': 'node ./scripts/i18n-collect.js',
100
- 'i18n:extract': 'node ./scripts/i18n-extract.js',
100
+ 'i18n:extract': 'node ./scripts/i18n-extract.js --lang=de,en',
101
101
  'update:shell': 'node ./scripts/update-shell.js'
102
102
  })
103
103
  ]);
104
104
  const editor = yield package_json_1.PackageJsonEditor.create(tree, `${projectName}/package.json`);
105
- editor.run(command);
105
+ editor.run(command, context);
106
106
  return tree;
107
107
  });
108
108
  }