@ihk-gfi/lux-components-update 11.13.0 → 13.0.1

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 (230) hide show
  1. package/README.md +2 -4
  2. package/package.json +14 -17
  3. package/src/add-lux-components/files/app/app.component.html +1 -1
  4. package/src/add-lux-components/files/app/app.component.ts +4 -1
  5. package/src/add-lux-components/files/locale/messages.en.xlf +489 -235
  6. package/src/add-lux-components/files/locale/messages.xlf +451 -218
  7. package/src/add-lux-components/files/scripts/.browserslistrc +10 -7
  8. package/src/add-lux-components/files/src/index.html +31 -0
  9. package/src/add-lux-components/index.js +151 -78
  10. package/src/add-lux-components/index.js.map +1 -1
  11. package/src/add-lux-components/index.ts +141 -66
  12. package/src/add-lux-components/index_spec.js +4 -4
  13. package/src/add-lux-components/index_spec.js.map +1 -1
  14. package/src/add-lux-components/index_spec.ts +1 -1
  15. package/src/add-lux-components/schema.json +1 -1
  16. package/src/collection.json +8 -88
  17. package/src/update-dependencies/index.d.ts +1 -1
  18. package/src/update-dependencies/index.js +82 -65
  19. package/src/update-dependencies/index.js.map +1 -1
  20. package/src/update-dependencies/index.ts +112 -95
  21. package/src/update-dependencies/schema.json +1 -1
  22. package/src/update-en-messages/index.d.ts +2 -0
  23. package/src/update-en-messages/index.js +75 -0
  24. package/src/update-en-messages/index.js.map +1 -0
  25. package/src/update-en-messages/index.ts +78 -0
  26. package/src/{update110100 → update-en-messages}/schema.json +3 -3
  27. package/src/updates/update130000/files/root/.browserslistrc +20 -0
  28. package/src/updates/update130000/index.d.ts +27 -0
  29. package/src/updates/update130000/index.js +296 -0
  30. package/src/updates/update130000/index.js.map +1 -0
  31. package/src/updates/update130000/index.ts +346 -0
  32. package/src/{migrate-to-eslint → updates/update130000}/index_spec.d.ts +0 -0
  33. package/src/updates/update130000/index_spec.js +574 -0
  34. package/src/updates/update130000/index_spec.js.map +1 -0
  35. package/src/updates/update130000/index_spec.ts +665 -0
  36. package/src/{update → updates/update130000}/schema.json +1 -1
  37. package/src/utility/dependencies.js +16 -14
  38. package/src/utility/dependencies.js.map +1 -1
  39. package/src/utility/dependencies.ts +6 -4
  40. package/src/utility/files.d.ts +5 -1
  41. package/src/utility/files.js +27 -16
  42. package/src/utility/files.js.map +1 -1
  43. package/src/utility/files.ts +16 -3
  44. package/src/utility/html.js +88 -25
  45. package/src/utility/html.js.map +1 -1
  46. package/src/utility/html.ts +105 -29
  47. package/src/{migrate-to-webcomponent/index_spec.d.ts → utility/html_spec.d.ts} +0 -0
  48. package/src/utility/html_spec.js +560 -0
  49. package/src/utility/html_spec.js.map +1 -0
  50. package/src/utility/html_spec.ts +575 -0
  51. package/src/utility/json.d.ts +46 -1
  52. package/src/utility/json.js +174 -4
  53. package/src/utility/json.js.map +1 -1
  54. package/src/utility/json.ts +198 -3
  55. package/src/{update/index_spec.d.ts → utility/json_spec.d.ts} +0 -0
  56. package/src/utility/json_spec.js +326 -0
  57. package/src/utility/json_spec.js.map +1 -0
  58. package/src/utility/json_spec.ts +376 -0
  59. package/src/utility/typescript.js +16 -16
  60. package/src/utility/typescript.js.map +1 -1
  61. package/src/utility/typescript_spec.js +36 -36
  62. package/src/utility/typescript_spec.js.map +1 -1
  63. package/src/utility/util.d.ts +2 -2
  64. package/src/utility/util.js +16 -14
  65. package/src/utility/util.js.map +1 -1
  66. package/src/utility/util.ts +7 -5
  67. package/src/utility/validation.js +11 -11
  68. package/src/utility/validation.js.map +1 -1
  69. package/src/migrate-to-eslint/files/.eslintrc.json +0 -68
  70. package/src/migrate-to-eslint/files/.prettierrc +0 -25
  71. package/src/migrate-to-eslint/index.d.ts +0 -6
  72. package/src/migrate-to-eslint/index.js +0 -149
  73. package/src/migrate-to-eslint/index.js.map +0 -1
  74. package/src/migrate-to-eslint/index.ts +0 -181
  75. package/src/migrate-to-eslint/index_spec.js +0 -129
  76. package/src/migrate-to-eslint/index_spec.js.map +0 -1
  77. package/src/migrate-to-eslint/index_spec.ts +0 -152
  78. package/src/migrate-to-eslint/schema.json +0 -23
  79. package/src/migrate-to-webcomponent/index.d.ts +0 -10
  80. package/src/migrate-to-webcomponent/index.js +0 -278
  81. package/src/migrate-to-webcomponent/index.js.map +0 -1
  82. package/src/migrate-to-webcomponent/index.ts +0 -331
  83. package/src/migrate-to-webcomponent/index_spec.js +0 -580
  84. package/src/migrate-to-webcomponent/index_spec.js.map +0 -1
  85. package/src/migrate-to-webcomponent/index_spec.ts +0 -703
  86. package/src/migrate-to-webcomponent/schema.json +0 -23
  87. package/src/update/files/locale/messages.en.xlf +0 -940
  88. package/src/update/files/locale/messages.xlf +0 -815
  89. package/src/update/files/scripts/move-de-files.js +0 -15
  90. package/src/update/index.d.ts +0 -23
  91. package/src/update/index.js +0 -635
  92. package/src/update/index.js.map +0 -1
  93. package/src/update/index.ts +0 -712
  94. package/src/update/index_spec.js +0 -984
  95. package/src/update/index_spec.js.map +0 -1
  96. package/src/update/index_spec.ts +0 -1139
  97. package/src/update110001/index.d.ts +0 -2
  98. package/src/update110001/index.js +0 -42
  99. package/src/update110001/index.js.map +0 -1
  100. package/src/update110001/index.ts +0 -40
  101. package/src/update110001/index_spec.d.ts +0 -1
  102. package/src/update110001/index_spec.js +0 -67
  103. package/src/update110001/index_spec.js.map +0 -1
  104. package/src/update110001/index_spec.ts +0 -72
  105. package/src/update110001/schema.json +0 -23
  106. package/src/update110100/index.d.ts +0 -2
  107. package/src/update110100/index.js +0 -27
  108. package/src/update110100/index.js.map +0 -1
  109. package/src/update110100/index.ts +0 -24
  110. package/src/update110100/index_spec.d.ts +0 -1
  111. package/src/update110100/index_spec.js +0 -69
  112. package/src/update110100/index_spec.js.map +0 -1
  113. package/src/update110100/index_spec.ts +0 -73
  114. package/src/update110101/index.d.ts +0 -2
  115. package/src/update110101/index.js +0 -24
  116. package/src/update110101/index.js.map +0 -1
  117. package/src/update110101/index.ts +0 -21
  118. package/src/update110101/index_spec.d.ts +0 -1
  119. package/src/update110101/index_spec.js +0 -65
  120. package/src/update110101/index_spec.js.map +0 -1
  121. package/src/update110101/index_spec.ts +0 -69
  122. package/src/update110101/schema.json +0 -23
  123. package/src/update110200/index.d.ts +0 -2
  124. package/src/update110200/index.js +0 -24
  125. package/src/update110200/index.js.map +0 -1
  126. package/src/update110200/index.ts +0 -21
  127. package/src/update110200/index_spec.d.ts +0 -1
  128. package/src/update110200/index_spec.js +0 -65
  129. package/src/update110200/index_spec.js.map +0 -1
  130. package/src/update110200/index_spec.ts +0 -69
  131. package/src/update110200/schema.json +0 -23
  132. package/src/update110300/index.d.ts +0 -2
  133. package/src/update110300/index.js +0 -133
  134. package/src/update110300/index.js.map +0 -1
  135. package/src/update110300/index.ts +0 -148
  136. package/src/update110300/index_spec.d.ts +0 -1
  137. package/src/update110300/index_spec.js +0 -121
  138. package/src/update110300/index_spec.js.map +0 -1
  139. package/src/update110300/index_spec.ts +0 -139
  140. package/src/update110300/schema.json +0 -23
  141. package/src/update110400/index.d.ts +0 -2
  142. package/src/update110400/index.js +0 -28
  143. package/src/update110400/index.js.map +0 -1
  144. package/src/update110400/index.ts +0 -28
  145. package/src/update110400/index_spec.d.ts +0 -1
  146. package/src/update110400/index_spec.js +0 -66
  147. package/src/update110400/index_spec.js.map +0 -1
  148. package/src/update110400/index_spec.ts +0 -70
  149. package/src/update110400/schema.json +0 -23
  150. package/src/update110500/index.d.ts +0 -2
  151. package/src/update110500/index.js +0 -28
  152. package/src/update110500/index.js.map +0 -1
  153. package/src/update110500/index.ts +0 -28
  154. package/src/update110500/index_spec.d.ts +0 -1
  155. package/src/update110500/index_spec.js +0 -66
  156. package/src/update110500/index_spec.js.map +0 -1
  157. package/src/update110500/index_spec.ts +0 -70
  158. package/src/update110500/schema.json +0 -23
  159. package/src/update110600/index.d.ts +0 -2
  160. package/src/update110600/index.js +0 -28
  161. package/src/update110600/index.js.map +0 -1
  162. package/src/update110600/index.ts +0 -28
  163. package/src/update110600/index_spec.d.ts +0 -1
  164. package/src/update110600/index_spec.js +0 -66
  165. package/src/update110600/index_spec.js.map +0 -1
  166. package/src/update110600/index_spec.ts +0 -70
  167. package/src/update110600/schema.json +0 -23
  168. package/src/update110700/index.d.ts +0 -2
  169. package/src/update110700/index.js +0 -45
  170. package/src/update110700/index.js.map +0 -1
  171. package/src/update110700/index.ts +0 -47
  172. package/src/update110700/index_spec.d.ts +0 -1
  173. package/src/update110700/index_spec.js +0 -108
  174. package/src/update110700/index_spec.js.map +0 -1
  175. package/src/update110700/index_spec.ts +0 -122
  176. package/src/update110700/schema.json +0 -23
  177. package/src/update110800/index.d.ts +0 -2
  178. package/src/update110800/index.js +0 -32
  179. package/src/update110800/index.js.map +0 -1
  180. package/src/update110800/index.ts +0 -33
  181. package/src/update110800/index_spec.d.ts +0 -1
  182. package/src/update110800/index_spec.js +0 -70
  183. package/src/update110800/index_spec.js.map +0 -1
  184. package/src/update110800/index_spec.ts +0 -75
  185. package/src/update110800/schema.json +0 -23
  186. package/src/update110900/index.d.ts +0 -4
  187. package/src/update110900/index.js +0 -111
  188. package/src/update110900/index.js.map +0 -1
  189. package/src/update110900/index.ts +0 -123
  190. package/src/update110900/index_spec.d.ts +0 -1
  191. package/src/update110900/index_spec.js +0 -311
  192. package/src/update110900/index_spec.js.map +0 -1
  193. package/src/update110900/index_spec.ts +0 -341
  194. package/src/update110900/schema.json +0 -23
  195. package/src/update111000/index.d.ts +0 -2
  196. package/src/update111000/index.js +0 -27
  197. package/src/update111000/index.js.map +0 -1
  198. package/src/update111000/index.ts +0 -27
  199. package/src/update111000/index_spec.d.ts +0 -1
  200. package/src/update111000/index_spec.js +0 -65
  201. package/src/update111000/index_spec.js.map +0 -1
  202. package/src/update111000/index_spec.ts +0 -70
  203. package/src/update111000/schema.json +0 -23
  204. package/src/update111100/index.d.ts +0 -2
  205. package/src/update111100/index.js +0 -389
  206. package/src/update111100/index.js.map +0 -1
  207. package/src/update111100/index.ts +0 -405
  208. package/src/update111100/index_spec.d.ts +0 -1
  209. package/src/update111100/index_spec.js +0 -66
  210. package/src/update111100/index_spec.js.map +0 -1
  211. package/src/update111100/index_spec.ts +0 -70
  212. package/src/update111100/schema.json +0 -23
  213. package/src/update111200/index.d.ts +0 -2
  214. package/src/update111200/index.js +0 -59
  215. package/src/update111200/index.js.map +0 -1
  216. package/src/update111200/index.ts +0 -75
  217. package/src/update111200/index_spec.d.ts +0 -1
  218. package/src/update111200/index_spec.js +0 -67
  219. package/src/update111200/index_spec.js.map +0 -1
  220. package/src/update111200/index_spec.ts +0 -71
  221. package/src/update111200/schema.json +0 -23
  222. package/src/update111300/index.d.ts +0 -2
  223. package/src/update111300/index.js +0 -27
  224. package/src/update111300/index.js.map +0 -1
  225. package/src/update111300/index.ts +0 -27
  226. package/src/update111300/index_spec.d.ts +0 -1
  227. package/src/update111300/index_spec.js +0 -65
  228. package/src/update111300/index_spec.js.map +0 -1
  229. package/src/update111300/index_spec.ts +0 -69
  230. package/src/update111300/schema.json +0 -23
@@ -0,0 +1,78 @@
1
+ import { chain, Rule, SchematicContext, Tree } from '@angular-devkit/schematics';
2
+ import cheerio from 'cheerio';
3
+ import { logInfo } from '../utility/logging';
4
+ import { messageInfoRule } from '../utility/util';
5
+
6
+ export function updateEnMessages(): Rule {
7
+ return chain([
8
+ messageInfoRule(`Die englischen Übersetzungen im Projekt werden aktualisiert...`),
9
+ updateEnMessagesIntern(),
10
+ messageInfoRule(`Die englischen Übersetzungen im Projekt wurden aktualisiert.`)
11
+ ]);
12
+ }
13
+
14
+ function updateEnMessagesIntern(): Rule {
15
+ return (tree: Tree, _context: SchematicContext) => {
16
+ const filePathLCEn = '/node_modules/@ihk-gfi/lux-components/src/locale/messages.en.xlf';
17
+ const filePathSDEn = '/node_modules/@ihk-gfi/lux-stammdaten/src/locale/messages.en.xlf';
18
+ const filePathAPPEn = '/src/locale/messages.en.xlf';
19
+ const filePathAPPDe = '/src/locale/messages.xlf';
20
+
21
+ const contentLCEn = readTransUnitFile(tree, filePathLCEn);
22
+ const contentSDEn = readTransUnitFile(tree, filePathSDEn);
23
+ const contentAPPEn = readTransUnitFile(tree, filePathAPPEn);
24
+ const contentAPPDe = readTransUnitFile(tree, filePathAPPDe);
25
+
26
+ const fnLCEEn = cheerio.load(contentLCEn, { xmlMode: true, decodeEntities: false });
27
+ const fnSDEn = cheerio.load(contentSDEn, { xmlMode: true, decodeEntities: false });
28
+ const fnAPPEn = cheerio.load(contentAPPEn, { xmlMode: true, decodeEntities: false });
29
+ const fnAPPDe = cheerio.load(contentAPPDe, { xmlMode: true, decodeEntities: false });
30
+
31
+ let newContent = `
32
+ <?xml version="1.0" encoding="UTF-8" ?>
33
+ <xliff version="1.2" xmlns="urn:oasis:names:tc:xliff:document:1.2">
34
+ <file source-language="en" datatype="plaintext" original="ng2.template">
35
+ <body>
36
+ `;
37
+
38
+ fnAPPDe('trans-unit').each((i, element) => {
39
+ const id = fnAPPDe(element).attr('id');
40
+ if (id?.startsWith('luxc.')) {
41
+ const transUnit = fnLCEEn(`trans-unit[id="${ id }"]`).first();
42
+ fnAPPDe('\n ' + fnLCEEn(transUnit).find('target').toString()).insertAfter(fnAPPDe(`trans-unit[id="${ id }"]`).find('source'));
43
+ newContent += ' ' + fnAPPDe(element).toString() + '\n';
44
+ } else if (id?.startsWith('luxsd.')) {
45
+ const transUnit = fnSDEn(`trans-unit[id="${ id }"]`).first();
46
+ fnAPPDe('\n ' + fnSDEn(transUnit).find('target').toString()).insertAfter(fnAPPDe(`trans-unit[id="${ id }"]`).find('source'));
47
+ newContent += ' ' + fnAPPDe(element).toString() + '\n';
48
+ } else {
49
+ const transUnit = fnAPPEn(`trans-unit[id="${ id }"]`).first();
50
+ fnAPPDe('\n ' + fnAPPEn(transUnit).find('target').toString()).insertAfter(fnAPPDe(`trans-unit[id="${ id }"]`).find('source'));
51
+ newContent += ' ' + fnAPPDe(element).toString() + '\n';
52
+ }
53
+ });
54
+
55
+ newContent += `
56
+ </body>
57
+ </file>
58
+ </xliff> `;
59
+
60
+ logInfo(`Die Datei '${ filePathAPPEn }' wurde aktualisiert.`);
61
+ if (!tree.exists(filePathAPPEn)) {
62
+ tree.create(filePathAPPEn, newContent);
63
+ } else {
64
+ tree.overwrite(filePathAPPEn, newContent);
65
+ }
66
+ };
67
+ }
68
+
69
+ function readTransUnitFile(tree: Tree, filePath: string): string {
70
+ let content = '';
71
+
72
+ if (tree.exists(filePath)) {
73
+ const buffer = tree.read(filePath);
74
+ content = buffer ? buffer.toString() : '';
75
+ }
76
+
77
+ return content;
78
+ }
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/schema",
3
- "id": "luxUpdate110100Schema",
4
- "title": "Aktualisiert das LUX-Componentsprojekt",
3
+ "$id": "updateEnMessagesSchema",
4
+ "title": "Aktualisiert die englischen Übersetzungen im Projekt.",
5
5
  "type": "object",
6
- "description": "Aktualisiert das LUX-Componentsprojekt",
6
+ "description": "Aktualisiert die englischen Übersetzungen im Projekt.",
7
7
  "properties": {
8
8
  "project": {
9
9
  "type": "string",
@@ -0,0 +1,20 @@
1
+ # This file is used by the build system to adjust CSS and JS output to support the specified browsers below.
2
+ # For additional information regarding the format and rule options, please see:
3
+ # https://github.com/browserslist/browserslist#queries
4
+
5
+ # For the full list of supported browsers by the Angular framework, please see:
6
+ # https://angular.io/guide/browser-support
7
+
8
+ # You can see what browsers were selected by your queries by running:
9
+ # npx browserslist
10
+
11
+ last 2 Chrome versions
12
+ last 2 ChromeAndroid versions
13
+
14
+ last 2 Safari versions
15
+ last 2 iOS versions
16
+
17
+ last 2 Firefox versions
18
+ last 2 FirefoxAndroid versions
19
+
20
+ last 2 Edge versions
@@ -0,0 +1,27 @@
1
+ import { Rule } from '@angular-devkit/schematics';
2
+ export declare const updateMajorVersion = "13";
3
+ export declare const updateMinVersion = "11.14.0";
4
+ export declare const updateNodeMinVersion = "16.0.0";
5
+ export declare function update(options: any): Rule;
6
+ export declare function updateProject(options: any): Rule;
7
+ export declare function check(options: any): Rule;
8
+ export declare function deleteWebpackConfig(options: any): Rule;
9
+ export declare function copyFiles(options: any): Rule;
10
+ export declare function updateAngularJson(options: any): Rule;
11
+ export declare function updateTsConfigJson(options: any): Rule;
12
+ export declare function updateIndexHtml(options: any): Rule;
13
+ export declare function updatePackageJson(options: any): Rule;
14
+ export declare function updateBuildThemeAssets(options: any): Rule;
15
+ export declare function updateTestThemeAssets(options: any): Rule;
16
+ export declare function removeThemeAssets(options: any): Rule;
17
+ export declare function removeLuxSelectedFilesAlwaysUseArray(options: any): Rule;
18
+ /**
19
+ * Wenn eine Komponente einen leeren Style im styles-Array (styles: ['']) angegeben hat, führt dies zu dem folgenden Fehler:
20
+ * Error: PostCSS received undefined instead of CSS string
21
+ * Diese Methode repariert diesen Fehler, in dem der Leerstring entfernt wird.
22
+ *
23
+ * @param options
24
+ */
25
+ export declare function fixEmptyStyles(options: any): Rule;
26
+ export declare function removeDatepickerDefaultLocale(options: any): Rule;
27
+ export declare function fixKarmaConf(options: any): Rule;
@@ -0,0 +1,296 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.fixKarmaConf = exports.removeDatepickerDefaultLocale = exports.fixEmptyStyles = exports.removeLuxSelectedFilesAlwaysUseArray = exports.removeThemeAssets = exports.updateTestThemeAssets = exports.updateBuildThemeAssets = exports.updatePackageJson = exports.updateIndexHtml = exports.updateTsConfigJson = exports.updateAngularJson = exports.copyFiles = exports.deleteWebpackConfig = exports.check = exports.updateProject = exports.update = exports.updateNodeMinVersion = exports.updateMinVersion = exports.updateMajorVersion = void 0;
4
+ const schematics_1 = require("@angular-devkit/schematics");
5
+ const chalk = require("chalk");
6
+ const jsonc_parser_1 = require("jsonc-parser");
7
+ const index_1 = require("../../update-dependencies/index");
8
+ const files_1 = require("../../utility/files");
9
+ const html_1 = require("../../utility/html");
10
+ const json_1 = require("../../utility/json");
11
+ const logging_1 = require("../../utility/logging");
12
+ const util_1 = require("../../utility/util");
13
+ const validation_1 = require("../../utility/validation");
14
+ exports.updateMajorVersion = '13';
15
+ exports.updateMinVersion = '11.14.0';
16
+ exports.updateNodeMinVersion = '16.0.0';
17
+ function update(options) {
18
+ return (tree, _context) => {
19
+ return (0, schematics_1.chain)([
20
+ check(options),
21
+ (0, util_1.applyRuleIf)(exports.updateMinVersion, updateProject(options)),
22
+ (0, util_1.finish)(false, `${chalk.yellowBright('Wichtig!!!')} Hinweise im Update Guide beachten -> https://github.com/IHK-GfI/lux-components/wiki/update-guide-${exports.updateMajorVersion}`)
23
+ ]);
24
+ };
25
+ }
26
+ exports.update = update;
27
+ function updateProject(options) {
28
+ return (tree, _context) => {
29
+ return (0, schematics_1.chain)([
30
+ (0, util_1.messageInfoRule)(`LUX-Components ${exports.updateMajorVersion} werden aktualisiert...`),
31
+ updateAngularJson(options),
32
+ updatePackageJson(options),
33
+ updateTsConfigJson(options),
34
+ updateIndexHtml(options),
35
+ removeLuxSelectedFilesAlwaysUseArray(options),
36
+ fixEmptyStyles(options),
37
+ removeDatepickerDefaultLocale(options),
38
+ copyFiles(options),
39
+ fixKarmaConf(options),
40
+ deleteWebpackConfig(options),
41
+ (0, index_1.updateDependencies)(),
42
+ (0, util_1.messageSuccessRule)(`LUX-Components ${exports.updateMajorVersion} wurden aktualisiert.`)
43
+ ]);
44
+ };
45
+ }
46
+ exports.updateProject = updateProject;
47
+ function check(options) {
48
+ return (tree, _context) => {
49
+ (0, logging_1.logInfoWithDescriptor)(`Vorbedingungen werden geprüft...`);
50
+ (0, validation_1.validateNodeVersion)(_context, exports.updateNodeMinVersion);
51
+ (0, validation_1.validateLuxComponentsVersion)(tree, `${exports.updateMinVersion} || ^${exports.updateMajorVersion}.0.0`);
52
+ (0, logging_1.logSuccess)(`Vorbedingungen wurden geprüft.`);
53
+ return tree;
54
+ };
55
+ }
56
+ exports.check = check;
57
+ function deleteWebpackConfig(options) {
58
+ return (0, schematics_1.chain)([
59
+ (0, util_1.messageInfoRule)(`Datei 'webpack.config.js' wird gelöscht...`),
60
+ (0, files_1.deleteFile)(options, '/webpack.config.js'),
61
+ (0, util_1.messageSuccessRule)(`Datei 'webpack.config.js' wurde gelöscht.`),
62
+ (0, util_1.messageInfoRule)(`Verweis auf die 'webpack.config.js' wird aus der Datei 'angular.json' gelöscht...`),
63
+ (tree, _context) => {
64
+ (0, json_1.removeJsonNode)(tree, '/angular.json', ['projects', options.project, 'architect', 'build', 'options', 'extraWebpackConfig']);
65
+ },
66
+ (0, util_1.messageSuccessRule)(`Verweis auf die 'webpack.config.js' wurde aus der Datei 'angular.json' gelöscht.`),
67
+ ]);
68
+ }
69
+ exports.deleteWebpackConfig = deleteWebpackConfig;
70
+ function copyFiles(options) {
71
+ return (0, schematics_1.chain)([
72
+ (0, util_1.messageInfoRule)(`Dateien werden kopiert...`),
73
+ (0, files_1.moveFilesToDirectory)(options, 'files/root', '/'),
74
+ (0, util_1.messageSuccessRule)(`Dateien wurden kopiert.`)
75
+ ]);
76
+ }
77
+ exports.copyFiles = copyFiles;
78
+ function updateAngularJson(options) {
79
+ return (tree, _context) => {
80
+ const jsonPathAllowedCommonJS = ['projects', options.project, 'architect', 'build', 'options', 'allowedCommonJsDependencies'];
81
+ const jsonPathOptimization = ['projects', options.project, 'architect', 'build', 'configurations', 'production', 'optimization'];
82
+ const jsonValueOptimization = {
83
+ 'scripts': true,
84
+ 'styles': {
85
+ 'minify': true,
86
+ 'inlineCritical': false
87
+ },
88
+ 'fonts': true
89
+ };
90
+ const jsonPathDevelopmentBuild = ['projects', options.project, 'architect', 'build', 'configurations', 'development'];
91
+ const jsonValueDevelopmentBuild = {
92
+ 'buildOptimizer': false,
93
+ 'optimization': false,
94
+ 'vendorChunk': true,
95
+ 'extractLicenses': false,
96
+ 'sourceMap': true,
97
+ 'namedChunks': true
98
+ };
99
+ const jsonPathDevelopmentServe = ['projects', options.project, 'architect', 'serve', 'configurations', 'development'];
100
+ const jsonValueDevelopmentServe = {
101
+ 'browserTarget': options.project + ':build:development'
102
+ };
103
+ const jsonPathDevelopmentServeDefault = ['projects', options.project, 'architect', 'serve', 'defaultConfiguration'];
104
+ const findGlobFn = (node) => (0, json_1.findObjectPropertyInArray)(node, 'glob', 'material-design-icons.css');
105
+ const jsonPathGlob = ['projects', options.project, 'architect', 'build', 'options', 'assets'];
106
+ const jsonValueGlob = {
107
+ "glob": "material-design-icons.css*",
108
+ "input": "./node_modules/material-design-icons-iconfont/dist",
109
+ "output": "./assets/icons/material-icons"
110
+ };
111
+ return (0, schematics_1.chain)([
112
+ (0, util_1.messageInfoRule)(`Datei "angular.json" wird aktualisiert...`),
113
+ updateBuildThemeAssets(options),
114
+ updateTestThemeAssets(options),
115
+ removeThemeAssets(options),
116
+ (0, json_1.updateJsonArray)(options, '/angular.json', jsonPathGlob, jsonValueGlob, true, findGlobFn),
117
+ (0, json_1.updateJsonValue)(options, '/angular.json', jsonPathDevelopmentBuild, jsonValueDevelopmentBuild),
118
+ (0, json_1.updateJsonValue)(options, '/angular.json', jsonPathDevelopmentServe, jsonValueDevelopmentServe),
119
+ (0, json_1.updateJsonValue)(options, '/angular.json', jsonPathDevelopmentServeDefault, 'development'),
120
+ (0, json_1.updateJsonArray)(options, '/angular.json', jsonPathAllowedCommonJS, 'hammerjs'),
121
+ (0, json_1.updateJsonArray)(options, '/angular.json', jsonPathAllowedCommonJS, 'ng2-pdf-viewer'),
122
+ (0, json_1.updateJsonArray)(options, '/angular.json', jsonPathAllowedCommonJS, 'pdfjs-dist'),
123
+ (0, json_1.updateJsonValue)(options, '/angular.json', jsonPathOptimization, jsonValueOptimization),
124
+ (0, util_1.messageSuccessRule)(`Datei "angular.json" wurde aktualisiert.`)
125
+ ]);
126
+ };
127
+ }
128
+ exports.updateAngularJson = updateAngularJson;
129
+ function updateTsConfigJson(options) {
130
+ return (tree, _context) => {
131
+ return (0, schematics_1.chain)([
132
+ (0, util_1.messageInfoRule)(`Datei "tsconfig.json" wird aktualisiert...`),
133
+ (0, json_1.updateJsonValue)(options, '/tsconfig.json', ['compilerOptions', 'allowSyntheticDefaultImports'], true),
134
+ (0, util_1.messageSuccessRule)(`Datei "tsconfig.json" wurde aktualisiert.`)
135
+ ]);
136
+ };
137
+ }
138
+ exports.updateTsConfigJson = updateTsConfigJson;
139
+ function updateIndexHtml(options) {
140
+ return (tree, _context) => {
141
+ return (0, schematics_1.chain)([
142
+ (0, util_1.messageInfoRule)(`Datei "index.html" wird aktualisiert...`),
143
+ (tree, _context) => {
144
+ const filePath = '/src/index.html';
145
+ const buffer = tree.read(filePath);
146
+ if (buffer) {
147
+ const content = buffer.toString();
148
+ let modifiedContent = content;
149
+ modifiedContent = (0, util_1.replaceAll)(modifiedContent, 'rel="stylesheet"', 'rel="stylesheet preload" as="style" type="text/css"');
150
+ if (content !== modifiedContent) {
151
+ (0, logging_1.logInfo)(`Den Wert "preload" ergänzt.`);
152
+ tree.overwrite(filePath, modifiedContent);
153
+ }
154
+ }
155
+ },
156
+ (0, util_1.messageSuccessRule)(`Datei "index.html" wurde aktualisiert.`)
157
+ ]);
158
+ };
159
+ }
160
+ exports.updateIndexHtml = updateIndexHtml;
161
+ function updatePackageJson(options) {
162
+ return (tree, _context) => {
163
+ return (0, schematics_1.chain)([
164
+ (0, util_1.messageInfoRule)(`Datei "package.json" wird aktualisiert...`),
165
+ (tree, _context) => {
166
+ const filePath = '/package.json';
167
+ const content = (0, json_1.readJsonAsString)(tree, filePath);
168
+ let modifiedContent = content;
169
+ modifiedContent = modifiedContent.replace(' --ivy', '');
170
+ modifiedContent = modifiedContent.replace(' --plugin @ihk-gfi/lux-components/ie11-lazy-modules-plugin.js', '');
171
+ modifiedContent = modifiedContent.replace(' npm run lint --bailOnLintError true', ' npm run lint');
172
+ if (content !== modifiedContent) {
173
+ (0, logging_1.logInfo)(`Das Flag "--ivy" wurde aus dem Script "xi18n" entfernt.`);
174
+ tree.overwrite(filePath, modifiedContent);
175
+ }
176
+ },
177
+ (tree, _context) => {
178
+ (0, json_1.removeJsonNode)(tree, '/package.json', ['scripts', 'start-ie']);
179
+ },
180
+ (0, util_1.messageSuccessRule)(`Datei "package.json" wurde aktualisiert.`)
181
+ ]);
182
+ };
183
+ }
184
+ exports.updatePackageJson = updatePackageJson;
185
+ function updateBuildThemeAssets(options) {
186
+ return (tree, context) => {
187
+ updateThemeAssetsIntern(tree, ['projects', options.project, 'architect', 'build', 'options', 'assets'], 'build');
188
+ };
189
+ }
190
+ exports.updateBuildThemeAssets = updateBuildThemeAssets;
191
+ function updateTestThemeAssets(options) {
192
+ return (tree, context) => {
193
+ updateThemeAssetsIntern(tree, ['projects', options.project, 'architect', 'test', 'options', 'assets'], 'test');
194
+ };
195
+ }
196
+ exports.updateTestThemeAssets = updateTestThemeAssets;
197
+ function updateThemeAssetsIntern(tree, jsonPath, label) {
198
+ const filePath = '/angular.json';
199
+ const contentAsNode = (0, json_1.readJson)(tree, filePath);
200
+ const buildAssetsNode = (0, jsonc_parser_1.findNodeAtLocation)(contentAsNode, jsonPath);
201
+ if (buildAssetsNode) {
202
+ const arrayIndex = (0, json_1.findObjectIndexInArray)(buildAssetsNode, 'glob', '*.css');
203
+ if (arrayIndex >= 0) {
204
+ const angularJson = (0, json_1.readJsonAsString)(tree, filePath);
205
+ const edits = (0, jsonc_parser_1.modify)(angularJson, [...jsonPath, arrayIndex], {
206
+ glob: '*(*min.css|*min.css.map)',
207
+ input: './node_modules/@ihk-gfi/lux-components-theme/prebuilt-themes',
208
+ output: './assets/themes'
209
+ }, { formattingOptions: json_1.jsonFormattingOptions, isArrayInsertion: false });
210
+ if (edits) {
211
+ tree.overwrite(filePath, (0, jsonc_parser_1.applyEdits)(angularJson, edits));
212
+ (0, logging_1.logInfo)(`Den Abschnitt "${JSON.stringify(jsonPath)}" aktualisiert.`);
213
+ }
214
+ }
215
+ }
216
+ }
217
+ function removeThemeAssets(options) {
218
+ return (tree, context) => {
219
+ const filePath = '/angular.json';
220
+ const jsonPath = ['projects', options.project, 'architect', 'build', 'configurations', 'es5'];
221
+ (0, json_1.removeJsonNode)(tree, filePath, jsonPath);
222
+ };
223
+ }
224
+ exports.removeThemeAssets = removeThemeAssets;
225
+ function removeLuxSelectedFilesAlwaysUseArray(options) {
226
+ return (0, schematics_1.chain)([
227
+ (0, util_1.messageInfoRule)(`Das Attribut "luxSelectedFilesAlwaysUseArray" wird entfernt...`),
228
+ (tree, context) => {
229
+ (0, files_1.iterateFilesAndModifyContent)(tree, options.path, (filePath, content) => {
230
+ let result = (0, html_1.removeAttribute)(content, 'lux-file-list', 'luxSelectedFilesAlwaysUseArray');
231
+ if (content !== result.content) {
232
+ (0, logging_1.logInfo)(filePath + ' wurde angepasst.');
233
+ tree.overwrite(filePath, result.content);
234
+ }
235
+ }, '.component.html');
236
+ },
237
+ (0, util_1.messageSuccessRule)(`Das Attribut "luxSelectedFilesAlwaysUseArray" wird entfernt.`)
238
+ ]);
239
+ }
240
+ exports.removeLuxSelectedFilesAlwaysUseArray = removeLuxSelectedFilesAlwaysUseArray;
241
+ /**
242
+ * Wenn eine Komponente einen leeren Style im styles-Array (styles: ['']) angegeben hat, führt dies zu dem folgenden Fehler:
243
+ * Error: PostCSS received undefined instead of CSS string
244
+ * Diese Methode repariert diesen Fehler, in dem der Leerstring entfernt wird.
245
+ *
246
+ * @param options
247
+ */
248
+ function fixEmptyStyles(options) {
249
+ return (0, schematics_1.chain)([
250
+ (0, util_1.messageInfoRule)(`Die leeren Styles im @Component-Teil (styles: [''] => styles: []) werden korrigiert...`),
251
+ (tree, context) => {
252
+ (0, files_1.iterateFilesAndModifyContent)(tree, options.path, (filePath, content) => {
253
+ const modifiedContent = content.replace(/styles\s?:\s*\[('{2}|"{2})\]/g, 'styles: []');
254
+ if (modifiedContent !== content) {
255
+ (0, logging_1.logInfo)(filePath + ' wurde angepasst.');
256
+ tree.overwrite(filePath, modifiedContent);
257
+ }
258
+ }, '.component.ts');
259
+ },
260
+ (0, util_1.messageSuccessRule)(`Die leeren Styles wurden korrigiert.`)
261
+ ]);
262
+ }
263
+ exports.fixEmptyStyles = fixEmptyStyles;
264
+ function removeDatepickerDefaultLocale(options) {
265
+ return (0, schematics_1.chain)([
266
+ (0, util_1.messageInfoRule)(`Die explizit gesetzte Defaultlocale "de-DE" wird bei allen Datepickern entfernt...`),
267
+ (tree, context) => {
268
+ (0, files_1.iterateFilesAndModifyContent)(tree, options.path, (filePath, content) => {
269
+ const modifiedContent = content.replace(/\sluxLocale="de-DE"/g, '');
270
+ if (modifiedContent !== content) {
271
+ (0, logging_1.logInfo)(filePath + ' wurde angepasst.');
272
+ tree.overwrite(filePath, modifiedContent);
273
+ }
274
+ }, '.component.html');
275
+ },
276
+ (0, util_1.messageSuccessRule)(`Die explizit gesetzte Defaultlocale "de-DE" wurde bei allen Datepickern entfernt.`)
277
+ ]);
278
+ }
279
+ exports.removeDatepickerDefaultLocale = removeDatepickerDefaultLocale;
280
+ function fixKarmaConf(options) {
281
+ return (0, schematics_1.chain)([
282
+ (0, util_1.messageInfoRule)(`Datei "karma.conf.js" wird aktualisiert...`),
283
+ (tree, context) => {
284
+ (0, files_1.iterateFilesAndModifyContent)(tree, options.path, (filePath, content) => {
285
+ const modifiedContent = content.replace(/require\('karma-coverage-istanbul-reporter'\),/g, 'require(\'karma-coverage\'),');
286
+ if (modifiedContent !== content) {
287
+ (0, logging_1.logInfo)(filePath + ' wurde angepasst.');
288
+ tree.overwrite(filePath, modifiedContent);
289
+ }
290
+ }, 'karma.conf.js');
291
+ },
292
+ (0, util_1.messageSuccessRule)(`Datei "karma.conf.js" wurde aktualisiert.`)
293
+ ]);
294
+ }
295
+ exports.fixKarmaConf = fixKarmaConf;
296
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":"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"}