@simplysm/sd-cli 7.0.263 → 7.0.268

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 (80) hide show
  1. package/README.md +70 -23
  2. package/{src/entry-points/file/assets → assets/client-files}/assets/icons/icon-128x128.png +0 -0
  3. package/{src/entry-points/file/assets → assets/client-files}/assets/icons/icon-144x144.png +0 -0
  4. package/{src/entry-points/file/assets → assets/client-files}/assets/icons/icon-152x152.png +0 -0
  5. package/{src/entry-points/file/assets → assets/client-files}/assets/icons/icon-192x192.png +0 -0
  6. package/{src/entry-points/file/assets → assets/client-files}/assets/icons/icon-384x384.png +0 -0
  7. package/{src/entry-points/file/assets → assets/client-files}/assets/icons/icon-512x512.png +0 -0
  8. package/{src/entry-points/file/assets → assets/client-files}/assets/icons/icon-72x72.png +0 -0
  9. package/{src/entry-points/file/assets → assets/client-files}/assets/icons/icon-96x96.png +0 -0
  10. package/{src/entry-points/file/assets → assets/client-files}/favicon.ico +0 -0
  11. package/dist/bin/sd-cli.mjs +48 -9
  12. package/dist/build-tool/SdCliCordova.mjs +2 -2
  13. package/dist/build-tool/SdCliIndexFileGenerator.mjs +2 -3
  14. package/dist/builder/SdCliClientBuilder.d.ts +2 -0
  15. package/dist/builder/SdCliClientBuilder.mjs +47 -14
  16. package/dist/builder/SdCliServerBuilder.d.ts +2 -0
  17. package/dist/builder/SdCliServerBuilder.mjs +27 -13
  18. package/dist/entry-points/SdCliPrepare.mjs +34 -34
  19. package/dist/entry-points/SdCliProjectGenerator.d.ts +7 -0
  20. package/dist/entry-points/SdCliProjectGenerator.mjs +65 -33
  21. package/dist/entry-points/file/base/fc_package_eslintrc.mjs +11 -11
  22. package/dist/entry-points/file/base/fc_package_tsconfig.d.ts +1 -0
  23. package/dist/entry-points/file/base/fc_package_tsconfig.mjs +3 -2
  24. package/dist/entry-points/file/client/fc_package_AppModule.mjs +1 -1
  25. package/dist/entry-points/file/client/fc_package_AppPage.mjs +2 -22
  26. package/dist/entry-points/file/client/fc_package_Page.d.ts +4 -0
  27. package/dist/entry-points/file/client/fc_package_Page.mjs +19 -0
  28. package/dist/entry-points/file/project/fc_project_gitignore.mjs +1 -1
  29. package/dist/entry-points/file/project/fc_project_readme.mjs +3 -2
  30. package/dist/entry-points/file/project/fc_project_tsconfig.mjs +1 -2
  31. package/dist/index.d.ts +1 -1
  32. package/dist/index.mjs +2 -2
  33. package/dist/ng-tools/SdCliNgModuleGenerator.mjs +35 -36
  34. package/dist/packages/SdCliPackage.mjs +2 -2
  35. package/docs/client-add-page.md +8 -0
  36. package/docs/client-router.md +85 -0
  37. package/docs/client-sw.md +101 -0
  38. package/docs/conf-orm.md +81 -0
  39. package/docs/conf-usage.md +5 -0
  40. package/docs/lib-local-update.md +50 -0
  41. package/docs/lib-ts-paths.md +25 -0
  42. package/package.json +6 -6
  43. package/src/SdCliBuildResultError.ts +9 -9
  44. package/src/bin/sd-cli.ts +52 -9
  45. package/src/build-tool/SdCliCacheCompilerHost.ts +77 -77
  46. package/src/build-tool/SdCliCordova.ts +1 -1
  47. package/src/build-tool/SdCliGithubApi.ts +110 -110
  48. package/src/build-tool/SdCliIndexFileGenerator.ts +79 -80
  49. package/src/build-tool/SdCliNgCacheCompilerHost.ts +58 -58
  50. package/src/build-tool/SdCliPackageLinter.ts +74 -74
  51. package/src/builder/SdCliClientBuilder.ts +60 -15
  52. package/src/builder/SdCliServerBuilder.ts +34 -14
  53. package/src/entry-points/SdCliFileCrypto.ts +87 -87
  54. package/src/entry-points/SdCliPrepare.ts +55 -55
  55. package/src/entry-points/SdCliProjectGenerator.ts +80 -38
  56. package/src/entry-points/file/base/fc_package_eslintrc.ts +10 -10
  57. package/src/entry-points/file/base/fc_package_tsconfig.ts +3 -2
  58. package/src/entry-points/file/client/fc_package_AppModule.ts +1 -1
  59. package/src/entry-points/file/client/fc_package_AppPage.ts +1 -21
  60. package/src/entry-points/file/client/fc_package_Page.ts +19 -0
  61. package/src/entry-points/file/project/fc_project_gitignore.ts +1 -1
  62. package/src/entry-points/file/project/fc_project_readme.ts +2 -1
  63. package/src/entry-points/file/project/fc_project_tsconfig.ts +0 -1
  64. package/src/index.ts +55 -55
  65. package/src/ng-tools/SdCliNgModuleGenerator.ts +639 -640
  66. package/src/ng-tools/babel/SdCliBbFileMetadata.ts +568 -568
  67. package/src/ng-tools/babel/SdCliBbRootMetadata.ts +239 -239
  68. package/src/ng-tools/babel/SdCliBbUtil.ts +15 -15
  69. package/src/ng-tools/babel/TSdCliBbNgMetadata.ts +234 -234
  70. package/src/ng-tools/babel/TSdCliBbTypeMetadata.ts +177 -177
  71. package/src/ng-tools/commons.ts +3 -3
  72. package/src/ng-tools/typescript/SdCliTsFileMetadata.ts +384 -384
  73. package/src/ng-tools/typescript/SdCliTsRootMetadata.ts +32 -32
  74. package/src/ng-tools/typescript/SdCliTsUtil.ts +29 -29
  75. package/src/packages/SdCliPackage.ts +1 -1
  76. package/src/utils/SdCliConfigUtil.ts +94 -94
  77. package/src/utils/SdCliNpmConfigUtil.ts +16 -16
  78. package/dist/entry-points/file/client/fc_package_appicons.d.ts +0 -1
  79. package/dist/entry-points/file/client/fc_package_appicons.mjs +0 -6
  80. package/src/entry-points/file/client/fc_package_appicons.ts +0 -5
@@ -15,7 +15,6 @@ import { fc_package_tsconfig } from "./file/base/fc_package_tsconfig";
15
15
  import { fc_package_DbContext } from "./file/db/fc_package_DbContext";
16
16
  import { fc_package_DbModel } from "./file/db/fc_package_DbModel";
17
17
  import { fc_package_server_main } from "./file/server/fc_package_server_main";
18
- import { fc_package_appicons } from "./file/client/fc_package_appicons";
19
18
  import { fc_package_AppModule } from "./file/client/fc_package_AppModule";
20
19
  import { fc_package_AppPage } from "./file/client/fc_package_AppPage";
21
20
  import { fileURLToPath } from "url";
@@ -24,6 +23,7 @@ import { fc_package_client_main } from "./file/client/fc_package_client_main";
24
23
  import { fc_package_manifest } from "./file/client/fc_package_manifest";
25
24
  import { fc_package_polyfills } from "./file/client/fc_package_polyfills";
26
25
  import { fc_package_styles } from "./file/client/fc_package_styles";
26
+ import { fc_package_Page } from "./file/client/fc_package_Page";
27
27
  export class SdCliProjectGenerator {
28
28
  constructor(_rootPath) {
29
29
  this._rootPath = _rootPath;
@@ -69,20 +69,34 @@ export class SdCliProjectGenerator {
69
69
  await SdProcess.spawnAsync("npm install", { cwd: this._rootPath }, true);
70
70
  }
71
71
  async addTsLibAsync(opt) {
72
+ const projNpmConfig = await this._getProjNpmConfigAsync();
73
+ const projName = projNpmConfig.name;
72
74
  await this._addPackageBaseTemplate({
73
- ...opt,
75
+ name: opt.name,
76
+ description: opt.description,
77
+ useDom: opt.isForAngular || opt.useDom,
78
+ isForAngular: opt.isForAngular,
74
79
  isModule: true,
75
- isForAngular: false,
76
80
  types: "dist/index.d.ts",
77
81
  main: "dist/index.mjs",
78
- dependencies: {}
82
+ dependencies: {},
83
+ tsconfigOptions: {}
79
84
  });
80
85
  this._logger.log(`[${opt.name}] 'simplysm.json' 파일에 등록`);
81
86
  await this._addPackageToSimplysmJson({
82
87
  name: opt.name,
83
88
  type: "library",
84
- useAutoIndex: true
89
+ autoIndex: {
90
+ ...opt.isForAngular ? {
91
+ polyfills: [
92
+ "@simplysm/sd-core-common",
93
+ "@simplysm/sd-core-browser"
94
+ ]
95
+ } : {}
96
+ },
85
97
  });
98
+ this._logger.log(`[${projName}] npm install`);
99
+ await SdProcess.spawnAsync("npm install", { cwd: this._rootPath }, true);
86
100
  }
87
101
  async addDbLibAsync(opt) {
88
102
  const pkgName = "db-" + opt.name;
@@ -100,7 +114,8 @@ export class SdCliProjectGenerator {
100
114
  dependencies: {
101
115
  "@simplysm/sd-core-common": "~7.0.0",
102
116
  "@simplysm/sd-orm-common": "~7.0.0"
103
- }
117
+ },
118
+ tsconfigOptions: {}
104
119
  });
105
120
  this._logger.log(`[${pkgName}] 'src/${StringUtil.toPascalCase(opt.name)}DbContext.ts' 파일 생성`);
106
121
  await FsUtil.writeFileAsync(path.resolve(pkgPath, `src/${StringUtil.toPascalCase(opt.name)}DbContext.ts`), fc_package_DbContext({
@@ -112,7 +127,7 @@ export class SdCliProjectGenerator {
112
127
  await this._addPackageToSimplysmJson({
113
128
  name: pkgName,
114
129
  type: "library",
115
- useAutoIndex: true
130
+ autoIndex: {}
116
131
  });
117
132
  this._logger.log(`[${projName}] npm install`);
118
133
  await SdProcess.spawnAsync("npm install", { cwd: this._rootPath }, true);
@@ -161,7 +176,8 @@ export class SdCliProjectGenerator {
161
176
  "@simplysm/sd-core-node": "~7.0.0",
162
177
  "@simplysm/sd-service-common": "~7.0.0",
163
178
  "@simplysm/sd-service-server": "~7.0.0"
164
- }
179
+ },
180
+ tsconfigOptions: {}
165
181
  });
166
182
  this._logger.log(`[${pkgName}] 'src/main.ts' 파일 등록`);
167
183
  await FsUtil.writeFileAsync(path.resolve(pkgPath, `src/main.ts`), fc_package_server_main({
@@ -171,8 +187,7 @@ export class SdCliProjectGenerator {
171
187
  this._logger.log(`[${pkgName}] 'simplysm.json' 파일에 등록`);
172
188
  await this._addPackageToSimplysmJson({
173
189
  name: pkgName,
174
- type: "server",
175
- useAutoIndex: false
190
+ type: "server"
176
191
  });
177
192
  this._logger.log(`[${projName}] npm install`);
178
193
  await SdProcess.spawnAsync("npm install", { cwd: this._rootPath }, true);
@@ -189,26 +204,20 @@ export class SdCliProjectGenerator {
189
204
  isModule: true,
190
205
  isForAngular: true,
191
206
  dependencies: {
192
- "@angular/common": "^13.2.0",
193
- "@angular/core": "^13.2.0",
194
207
  "@angular/platform-browser": "^13.2.0",
195
- "@angular/platform-browser-dynamic": "^13.2.0",
196
- "@fortawesome/angular-fontawesome": "^0.10.2",
197
- "@fortawesome/fontawesome-svg-core": "^6.1.0",
198
- "@fortawesome/free-brands-svg-icons": "^6.1.0",
199
- "@fortawesome/pro-duotone-svg-icons": "^6.1.0",
200
- "@fortawesome/pro-light-svg-icons": "^6.1.0",
201
- "@fortawesome/pro-regular-svg-icons": "^6.1.0",
202
- "@fortawesome/pro-solid-svg-icons": "^6.1.0",
203
- "@simplysm/sd-angular": "~7.0.0",
204
- "@simplysm/sd-core-browser": "~7.0.0",
205
- "@simplysm/sd-core-common": "~7.0.0",
206
- "rxjs": "^6.6.7",
207
- "zone.js": "~0.11.4"
208
+ "@angular/platform-browser-dynamic": "^13.2.0"
209
+ },
210
+ tsconfigOptions: {
211
+ angularCompilerOptions: {
212
+ "enableI18nLegacyMessageIdFormat": false,
213
+ "strictInjectionParameters": true,
214
+ "strictInputAccessModifiers": true,
215
+ "strictTemplates": true,
216
+ "strictInputTypes": false,
217
+ "strictOutputEventTypes": false
218
+ }
208
219
  }
209
220
  });
210
- this._logger.log(`[${pkgName}] 'src/app-icons.ts' 파일 등록`);
211
- await FsUtil.writeFileAsync(path.resolve(pkgPath, "src/app-icons.ts"), fc_package_appicons());
212
221
  this._logger.log(`[${pkgName}] 'src/AppModule.ts' 파일 등록`);
213
222
  await FsUtil.writeFileAsync(path.resolve(pkgPath, "src/AppModule.ts"), fc_package_AppModule());
214
223
  this._logger.log(`[${pkgName}] 'src/AppPage.ts' 파일 등록`);
@@ -230,16 +239,27 @@ export class SdCliProjectGenerator {
230
239
  this._logger.log(`[${pkgName}] 'src/styles.scss' 파일 등록`);
231
240
  await FsUtil.writeFileAsync(path.resolve(pkgPath, "src/styles.scss"), fc_package_styles());
232
241
  this._logger.log(`[${pkgName}] 'src/assets' 파일 복사`);
233
- await FsUtil.copyAsync(path.resolve(path.dirname(fileURLToPath(import.meta.url)), "file/assets"), path.resolve(pkgPath, "src"));
242
+ await FsUtil.copyAsync(path.resolve(path.dirname(fileURLToPath(import.meta.url)), "../../assets/client-files"), path.resolve(pkgPath, "src"));
234
243
  await this._addPackageToSimplysmJson({
235
244
  name: pkgName,
236
245
  type: "client",
237
- useAutoIndex: false,
238
246
  serverName: opt.serverName
239
247
  });
240
248
  this._logger.log(`[${projName}] npm install`);
241
249
  await SdProcess.spawnAsync("npm install", { cwd: this._rootPath }, true);
242
250
  }
251
+ async addPageAsync(opt) {
252
+ const pkgPath = path.resolve(this._rootPath, "packages", opt.pkgName);
253
+ this._logger.log(`[${opt.pkgName}] 'src/app/${Boolean(opt.category) ? opt.category + "/" : ""}${opt.name}Page.ts' 파일 생성`);
254
+ await FsUtil.writeFileAsync(path.resolve(pkgPath, `src/app/${Boolean(opt.category) ? opt.category + "/" : ""}${opt.name}Page.ts`), fc_package_Page({
255
+ name: opt.name,
256
+ isRouteParent: opt.isRouteParent
257
+ }));
258
+ if (opt.isRouteParent) {
259
+ this._logger.log(`[${opt.name}] 'src/app/${Boolean(opt.category) ? opt.category + "/" : ""}${StringUtil.toKebabCase(opt.name)}' 디렉토리 생성`);
260
+ await FsUtil.mkdirsAsync(path.resolve(pkgPath, `src/app/${Boolean(opt.category) ? opt.category + "/" : ""}${StringUtil.toKebabCase(opt.name)}`));
261
+ }
262
+ }
243
263
  async _addPackageBaseTemplate(opt) {
244
264
  const pkgPath = path.resolve(this._rootPath, "packages", opt.name);
245
265
  this._logger.log(`[${opt.name}] '.eslintrc.cjs' 파일 생성`);
@@ -254,12 +274,24 @@ export class SdCliProjectGenerator {
254
274
  isModule: opt.isModule,
255
275
  main: opt.main,
256
276
  types: opt.types,
257
- dependencies: opt.dependencies
277
+ dependencies: {
278
+ ...opt.dependencies,
279
+ ...opt.isForAngular ? {
280
+ "@angular/common": "^13.2.0",
281
+ "@angular/core": "^13.2.0",
282
+ "@simplysm/sd-angular": "~7.0.0",
283
+ "@simplysm/sd-core-common": "~7.0.0",
284
+ "@simplysm/sd-core-browser": "~7.0.0",
285
+ "rxjs": "^6.6.7",
286
+ "zone.js": "~0.11.4"
287
+ } : {}
288
+ }
258
289
  }));
259
290
  this._logger.log(`[${opt.name}] 'tsconfig.json' 파일 생성`);
260
291
  await FsUtil.writeFileAsync(path.resolve(pkgPath, "tsconfig.json"), fc_package_tsconfig({
261
292
  isModule: opt.isModule,
262
- useDom: opt.useDom
293
+ useDom: opt.useDom,
294
+ options: opt.tsconfigOptions
263
295
  }));
264
296
  this._logger.log(`[${opt.name}] 'src' 디렉토리 생성`);
265
297
  await FsUtil.mkdirsAsync(path.resolve(pkgPath, "src"));
@@ -269,7 +301,7 @@ export class SdCliProjectGenerator {
269
301
  config.packages = config.packages ?? {};
270
302
  config.packages[opt.name] = {
271
303
  type: opt.type,
272
- ...opt.useAutoIndex ? { autoIndex: {} } : {},
304
+ ...opt.autoIndex ? { autoIndex: opt.autoIndex } : {},
273
305
  ...opt.serverName !== undefined ? { server: opt.serverName } : {}
274
306
  };
275
307
  await FsUtil.writeJsonAsync(path.resolve(this._rootPath, "simplysm.json"), config, { space: 2 });
@@ -285,4 +317,4 @@ export class SdCliProjectGenerator {
285
317
  return projNpmConfig;
286
318
  }
287
319
  }
288
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2RDbGlQcm9qZWN0R2VuZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2VudHJ5LXBvaW50cy9TZENsaVByb2plY3RHZW5lcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbkUsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQ3hCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNuRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNuRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUN4RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzlFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRXhFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzFFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRXBFLE1BQU0sT0FBTyxxQkFBcUI7SUFHaEMsWUFBb0MsU0FBaUI7UUFBakIsY0FBUyxHQUFULFNBQVMsQ0FBUTtRQUZwQyxZQUFPLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBR3JGLENBQUM7SUFFTSxLQUFLLENBQUMsU0FBUyxDQUFDLEdBQTJFO1FBQ2hHLElBQUksQ0FBQyxNQUFNLE1BQU0sQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxjQUFjLEVBQUUsbUJBQW1CLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtZQUMxSyxNQUFNLElBQUksS0FBSyxDQUFDLCtGQUErRixDQUFDLENBQUM7U0FDbEg7UUFFRCxNQUFNLFFBQVEsR0FBRyxHQUFHLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1FBRTNELElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLHVCQUF1QixDQUFDLENBQUM7UUFDMUMsTUFBTSxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxlQUFlLENBQUMsRUFBRSx3QkFBd0IsRUFBRSxDQUFDLENBQUM7UUFFdkcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxRQUFRLHlCQUF5QixDQUFDLENBQUM7UUFDeEQsTUFBTSxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxlQUFlLENBQUMsRUFBRSxtQkFBbUIsRUFBRSxDQUFDLENBQUM7UUFFbEcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxRQUFRLHlCQUF5QixDQUFDLENBQUM7UUFDeEQsTUFBTSxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxnQkFBZ0IsQ0FBQyxFQUFFLHdCQUF3QixFQUFFLENBQUMsQ0FBQztRQUV4RyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLFFBQVEsc0JBQXNCLENBQUMsQ0FBQztRQUNyRCxNQUFNLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFlBQVksQ0FBQyxFQUFFLG9CQUFvQixFQUFFLENBQUMsQ0FBQztRQUVoRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLFFBQVEsd0JBQXdCLENBQUMsQ0FBQztRQUN2RCxJQUFJLFVBQThCLENBQUM7UUFDbkMsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxjQUFjLENBQUMsQ0FBQyxFQUFFO1lBQy9ELE1BQU0sU0FBUyxHQUFHLE1BQU0sTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsY0FBYyxDQUFDLENBQWUsQ0FBQztZQUN6RyxVQUFVLEdBQUcsU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDM0Q7UUFDRCxNQUFNLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGNBQWMsQ0FBQyxFQUFFLG9CQUFvQixDQUFDO1lBQzdGLElBQUksRUFBRSxRQUFRO1lBQ2QsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXO1lBQzVCLE1BQU0sRUFBRSxHQUFHLENBQUMsTUFBTTtZQUNsQixNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU07WUFDbEIsVUFBVTtTQUNYLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxRQUFRLHFCQUFxQixDQUFDLENBQUM7UUFDcEQsTUFBTSxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsRUFBRSxpQkFBaUIsQ0FBQztZQUN2RixXQUFXLEVBQUUsR0FBRyxDQUFDLFdBQVc7U0FDN0IsQ0FBQyxDQUFDLENBQUM7UUFFSixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLFFBQVEseUJBQXlCLENBQUMsQ0FBQztRQUN4RCxNQUFNLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGVBQWUsQ0FBQyxFQUFFLG1CQUFtQixFQUFFLENBQUMsQ0FBQztRQUVsRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLFFBQVEseUJBQXlCLENBQUMsQ0FBQztRQUN4RCxNQUFNLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGVBQWUsQ0FBQyxFQUFFLG1CQUFtQixFQUFFLENBQUMsQ0FBQztRQUVsRyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLFFBQVEsc0JBQXNCLENBQUMsQ0FBQztRQUNyRCxNQUFNLE1BQU0sQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7UUFFbkUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxRQUFRLGVBQWUsQ0FBQyxDQUFDO1FBQzlDLE1BQU0sU0FBUyxDQUFDLFVBQVUsQ0FBQyxhQUFhLEVBQUUsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzNFLENBQUM7SUFFTSxLQUFLLENBQUMsYUFBYSxDQUFDLEdBQTJEO1FBQ3BGLE1BQU0sSUFBSSxDQUFDLHVCQUF1QixDQUFDO1lBQ2pDLEdBQUcsR0FBRztZQUNOLFFBQVEsRUFBRSxJQUFJO1lBQ2QsWUFBWSxFQUFFLEtBQUs7WUFDbkIsS0FBSyxFQUFFLGlCQUFpQjtZQUN4QixJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLFlBQVksRUFBRSxFQUFFO1NBQ2pCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLElBQUksMEJBQTBCLENBQUMsQ0FBQztRQUV6RCxNQUFNLElBQUksQ0FBQyx5QkFBeUIsQ0FBQztZQUNuQyxJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7WUFDZCxJQUFJLEVBQUUsU0FBUztZQUNmLFlBQVksRUFBRSxJQUFJO1NBQ25CLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTSxLQUFLLENBQUMsYUFBYSxDQUFDLEdBQXFCO1FBQzlDLE1BQU0sT0FBTyxHQUFHLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDO1FBQ2pDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDbEUsTUFBTSxhQUFhLEdBQUcsTUFBTSxJQUFJLENBQUMsc0JBQXNCLEVBQUUsQ0FBQztRQUMxRCxNQUFNLFFBQVEsR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDO1FBRXBDLE1BQU0sSUFBSSxDQUFDLHVCQUF1QixDQUFDO1lBQ2pDLElBQUksRUFBRSxPQUFPO1lBQ2IsV0FBVyxFQUFFLEtBQUssR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtZQUMzQyxNQUFNLEVBQUUsS0FBSztZQUNiLFFBQVEsRUFBRSxLQUFLO1lBQ2YsWUFBWSxFQUFFLEtBQUs7WUFDbkIsS0FBSyxFQUFFLGlCQUFpQjtZQUN4QixJQUFJLEVBQUUsZ0JBQWdCO1lBQ3RCLFlBQVksRUFBRTtnQkFDWiwwQkFBMEIsRUFBRSxRQUFRO2dCQUNwQyx5QkFBeUIsRUFBRSxRQUFRO2FBQ3BDO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxPQUFPLFVBQVUsVUFBVSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUM7UUFDOUYsTUFBTSxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLE9BQU8sVUFBVSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFLG9CQUFvQixDQUFDO1lBQzlILElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtTQUNmLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxPQUFPLHdCQUF3QixDQUFDLENBQUM7UUFDdEQsTUFBTSxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUM7UUFFOUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxPQUFPLDBCQUEwQixDQUFDLENBQUM7UUFDeEQsTUFBTSxJQUFJLENBQUMseUJBQXlCLENBQUM7WUFDbkMsSUFBSSxFQUFFLE9BQU87WUFDYixJQUFJLEVBQUUsU0FBUztZQUNmLFlBQVksRUFBRSxJQUFJO1NBQ25CLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksUUFBUSxlQUFlLENBQUMsQ0FBQztRQUM5QyxNQUFNLFNBQVMsQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRU0sS0FBSyxDQUFDLGtCQUFrQixDQUFDLEdBQStFO1FBQzdHLE1BQU0sT0FBTyxHQUFHLEtBQUssR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDO1FBQ3RDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFbEUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxPQUFPLGlCQUFpQixHQUFHLENBQUMsUUFBUSxJQUFJLEdBQUcsQ0FBQyxJQUFJLFlBQVksQ0FBQyxDQUFDO1FBRW5GLE1BQU0sTUFBTSxDQUFDLGNBQWMsQ0FDekIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsY0FBYyxHQUFHLENBQUMsUUFBUSxJQUFJLEdBQUcsQ0FBQyxJQUFJLEtBQUssQ0FBQyxFQUFFLGtCQUFrQixDQUFDO1lBQ3JGLElBQUksRUFBRSxHQUFHLENBQUMsSUFBSTtZQUNkLFdBQVcsRUFBRSxHQUFHLENBQUMsV0FBVztTQUM3QixDQUFDLENBQUMsQ0FBQztRQUVOLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksT0FBTyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ2xELElBQUksZ0JBQWdCLEdBQUcsTUFBTSxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLE9BQU8sVUFBVSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7UUFFdEksSUFBSSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsRUFBRTtZQUMzQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sdUNBQXVDLENBQUMsQ0FBQztZQUNyRSxnQkFBZ0IsR0FBRyxnQkFBZ0IsQ0FBQyxPQUFPLENBQUMscUNBQXFDLEVBQUUsK0NBQStDLENBQUMsQ0FBQztTQUNySTtRQUVELElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksT0FBTyxtQ0FBbUMsQ0FBQyxDQUFDO1FBQ2pFLGdCQUFnQixHQUFHLFlBQVksR0FBRyxDQUFDLElBQUkscUJBQXFCLEdBQUcsQ0FBQyxRQUFRLElBQUksR0FBRyxDQUFDLElBQUksTUFBTSxHQUFHLGdCQUFnQixDQUFDO1FBRTlHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsUUFBUSxHQUFHLENBQUMsUUFBUSxJQUFJLENBQUMsRUFBRTtZQUN4RCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxJQUFJLDhCQUE4QixDQUFDLENBQUM7WUFFN0QsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxjQUFjLEdBQUcsQ0FBQyxRQUFRLEtBQUssQ0FBQyxDQUFDO1NBQ3JGO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxPQUFPLDJCQUEyQixDQUFDLENBQUM7UUFFekQsZ0JBQWdCLEdBQUcsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLElBQUksTUFBTSxDQUFDLFFBQVEsR0FBRyxDQUFDLFFBQVEsSUFBSSxDQUFDLEVBQUU7U0FDN0UsR0FBRyxDQUFDLFFBQVE7b0JBQ0QsVUFBVSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLDBCQUEwQixHQUFHLENBQUMsSUFBSTtDQUNyRixDQUFDLElBQUksRUFBRSxHQUFHLElBQUksQ0FBQyxDQUFDO1FBRWIsTUFBTSxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLE9BQU8sVUFBVSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLGNBQWMsQ0FBQyxFQUFFLGdCQUFnQixDQUFDLENBQUM7SUFDcEksQ0FBQztJQUVNLEtBQUssQ0FBQyxjQUFjLENBQUMsR0FBNEM7UUFDdEUsTUFBTSxPQUFPLEdBQUcsUUFBUSxHQUFHLENBQUMsR0FBRyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUMxRSxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ2xFLE1BQU0sYUFBYSxHQUFHLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7UUFDMUQsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQztRQUVwQyxNQUFNLElBQUksQ0FBQyx1QkFBdUIsQ0FBQztZQUNqQyxJQUFJLEVBQUUsT0FBTztZQUNiLFdBQVcsRUFBRSxDQUFDLEdBQUcsQ0FBQyxXQUFXLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsR0FBRyxDQUFDLFdBQVcsQ0FBQyxXQUFXLEVBQUUsR0FBRyxDQUFDLEdBQUcsSUFBSTtZQUM5RixNQUFNLEVBQUUsS0FBSztZQUNiLFFBQVEsRUFBRSxLQUFLO1lBQ2YsWUFBWSxFQUFFLEtBQUs7WUFDbkIsSUFBSSxFQUFFLGNBQWM7WUFDcEIsWUFBWSxFQUFFO2dCQUNaLDBCQUEwQixFQUFFLFFBQVE7Z0JBQ3BDLHdCQUF3QixFQUFFLFFBQVE7Z0JBQ2xDLDZCQUE2QixFQUFFLFFBQVE7Z0JBQ3ZDLDZCQUE2QixFQUFFLFFBQVE7YUFDeEM7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sdUJBQXVCLENBQUMsQ0FBQztRQUNyRCxNQUFNLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsYUFBYSxDQUFDLEVBQUUsc0JBQXNCLENBQUM7WUFDdkYsUUFBUSxFQUFFLElBQUksQ0FBQyxTQUFTO1lBQ3hCLE9BQU8sRUFBRSxPQUFPO1NBQ2pCLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxPQUFPLDBCQUEwQixDQUFDLENBQUM7UUFDeEQsTUFBTSxJQUFJLENBQUMseUJBQXlCLENBQUM7WUFDbkMsSUFBSSxFQUFFLE9BQU87WUFDYixJQUFJLEVBQUUsUUFBUTtZQUNkLFlBQVksRUFBRSxLQUFLO1NBQ3BCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksUUFBUSxlQUFlLENBQUMsQ0FBQztRQUM5QyxNQUFNLFNBQVMsQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRU0sS0FBSyxDQUFDLGNBQWMsQ0FBQyxHQUE4RDtRQUN4RixNQUFNLE9BQU8sR0FBRyxVQUFVLEdBQUcsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUNyQyxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRWxFLE1BQU0sYUFBYSxHQUFHLE1BQU0sSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7UUFDMUQsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQztRQUVwQyxNQUFNLElBQUksQ0FBQyx1QkFBdUIsQ0FBQztZQUNqQyxJQUFJLEVBQUUsT0FBTztZQUNiLFdBQVcsRUFBRSxHQUFHLEdBQUcsQ0FBQyxXQUFXLFFBQVE7WUFDdkMsTUFBTSxFQUFFLElBQUk7WUFDWixRQUFRLEVBQUUsSUFBSTtZQUNkLFlBQVksRUFBRSxJQUFJO1lBQ2xCLFlBQVksRUFBRTtnQkFDWixpQkFBaUIsRUFBRSxTQUFTO2dCQUM1QixlQUFlLEVBQUUsU0FBUztnQkFDMUIsMkJBQTJCLEVBQUUsU0FBUztnQkFDdEMsbUNBQW1DLEVBQUUsU0FBUztnQkFDOUMsa0NBQWtDLEVBQUUsU0FBUztnQkFDN0MsbUNBQW1DLEVBQUUsUUFBUTtnQkFDN0Msb0NBQW9DLEVBQUUsUUFBUTtnQkFDOUMsb0NBQW9DLEVBQUUsUUFBUTtnQkFDOUMsa0NBQWtDLEVBQUUsUUFBUTtnQkFDNUMsb0NBQW9DLEVBQUUsUUFBUTtnQkFDOUMsa0NBQWtDLEVBQUUsUUFBUTtnQkFDNUMsc0JBQXNCLEVBQUUsUUFBUTtnQkFDaEMsMkJBQTJCLEVBQUUsUUFBUTtnQkFDckMsMEJBQTBCLEVBQUUsUUFBUTtnQkFDcEMsTUFBTSxFQUFFLFFBQVE7Z0JBQ2hCLFNBQVMsRUFBRSxTQUFTO2FBQ3JCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxPQUFPLDRCQUE0QixDQUFDLENBQUM7UUFDMUQsTUFBTSxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLGtCQUFrQixDQUFDLEVBQUUsbUJBQW1CLEVBQUUsQ0FBQyxDQUFDO1FBRTlGLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksT0FBTyw0QkFBNEIsQ0FBQyxDQUFDO1FBQzFELE1BQU0sTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxrQkFBa0IsQ0FBQyxFQUFFLG9CQUFvQixFQUFFLENBQUMsQ0FBQztRQUUvRixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sMEJBQTBCLENBQUMsQ0FBQztRQUN4RCxNQUFNLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLENBQUMsRUFBRSxrQkFBa0IsRUFBRSxDQUFDLENBQUM7UUFFM0YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxPQUFPLDBCQUEwQixDQUFDLENBQUM7UUFDeEQsTUFBTSxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLGdCQUFnQixDQUFDLEVBQUUsZ0JBQWdCLENBQUM7WUFDcEYsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXO1NBQzdCLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxPQUFPLHVCQUF1QixDQUFDLENBQUM7UUFDckQsTUFBTSxNQUFNLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxFQUFFLHNCQUFzQixFQUFFLENBQUMsQ0FBQztRQUU1RixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sNkJBQTZCLENBQUMsQ0FBQztRQUMzRCxNQUFNLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsbUJBQW1CLENBQUMsRUFBRSxtQkFBbUIsQ0FBQztZQUMxRixXQUFXLEVBQUUsYUFBYSxDQUFDLFdBQVc7WUFDdEMsTUFBTSxFQUFFLGFBQWEsQ0FBQyxNQUFNO1lBQzVCLE9BQU8sRUFBRSxhQUFhLENBQUMsT0FBTztTQUMvQixDQUFDLENBQUMsQ0FBQztRQUVKLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksT0FBTyw0QkFBNEIsQ0FBQyxDQUFDO1FBQzFELE1BQU0sTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxrQkFBa0IsQ0FBQyxFQUFFLG9CQUFvQixFQUFFLENBQUMsQ0FBQztRQUUvRixJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLE9BQU8sMkJBQTJCLENBQUMsQ0FBQztRQUN6RCxNQUFNLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLENBQUMsRUFBRSxpQkFBaUIsRUFBRSxDQUFDLENBQUM7UUFFM0YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxPQUFPLHNCQUFzQixDQUFDLENBQUM7UUFDcEQsTUFBTSxNQUFNLENBQUMsU0FBUyxDQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRSxhQUFhLENBQUMsRUFDekUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsS0FBSyxDQUFDLENBQzdCLENBQUM7UUFFRixNQUFNLElBQUksQ0FBQyx5QkFBeUIsQ0FBQztZQUNuQyxJQUFJLEVBQUUsT0FBTztZQUNiLElBQUksRUFBRSxRQUFRO1lBQ2QsWUFBWSxFQUFFLEtBQUs7WUFDbkIsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVO1NBQzNCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksUUFBUSxlQUFlLENBQUMsQ0FBQztRQUM5QyxNQUFNLFNBQVMsQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxTQUFTLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRU8sS0FBSyxDQUFDLHVCQUF1QixDQUFDLEdBQTBLO1FBQzlNLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRW5FLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLElBQUkseUJBQXlCLENBQUMsQ0FBQztRQUN4RCxNQUFNLE1BQU0sQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsZUFBZSxDQUFDLEVBQUUsbUJBQW1CLENBQUM7WUFDdEYsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1NBQy9CLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSx3QkFBd0IsQ0FBQyxDQUFDO1FBQ3ZELE1BQU0sTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxjQUFjLENBQUMsRUFBRSxvQkFBb0IsQ0FBQztZQUN0RixRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVM7WUFDeEIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO1lBQ2QsV0FBVyxFQUFFLEdBQUcsQ0FBQyxXQUFXO1lBQzVCLFFBQVEsRUFBRSxHQUFHLENBQUMsUUFBUTtZQUN0QixJQUFJLEVBQUUsR0FBRyxDQUFDLElBQUk7WUFDZCxLQUFLLEVBQUUsR0FBRyxDQUFDLEtBQUs7WUFDaEIsWUFBWSxFQUFFLEdBQUcsQ0FBQyxZQUFZO1NBQy9CLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSx5QkFBeUIsQ0FBQyxDQUFDO1FBQ3hELE1BQU0sTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxlQUFlLENBQUMsRUFBRSxtQkFBbUIsQ0FBQztZQUN0RixRQUFRLEVBQUUsR0FBRyxDQUFDLFFBQVE7WUFDdEIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNO1NBQ25CLENBQUMsQ0FBQyxDQUFDO1FBRUosSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsSUFBSSxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2hELE1BQU0sTUFBTSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7SUFFTyxLQUFLLENBQUMseUJBQXlCLENBQUMsR0FBK0U7UUFDckgsTUFBTSxNQUFNLEdBQUcsTUFBTSxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxlQUFlLENBQUMsQ0FBQyxDQUFDO1FBQ3pGLE1BQU0sQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUM7UUFDeEMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUc7WUFDMUIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxJQUFJO1lBQ2QsR0FBRyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUM1QyxHQUFHLEdBQUcsQ0FBQyxVQUFVLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxHQUFHLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDbEUsQ0FBQztRQUNGLE1BQU0sTUFBTSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsZUFBZSxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbkcsQ0FBQztJQUVPLEtBQUssQ0FBQyxzQkFBc0I7UUFDbEMsTUFBTSxhQUFhLEdBQUcsTUFBTSxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxjQUFjLENBQUMsQ0FBZSxDQUFDO1FBRTdHLElBQUksYUFBYSxDQUFDLFdBQVcsS0FBSyxTQUFTLEVBQUU7WUFDM0MsTUFBTSxJQUFJLEtBQUssQ0FBQyxrREFBa0QsQ0FBQyxDQUFDO1NBQ3JFO1FBQ0QsSUFBSSxhQUFhLENBQUMsTUFBTSxLQUFLLFNBQVMsRUFBRTtZQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLDZDQUE2QyxDQUFDLENBQUM7U0FDaEU7UUFFRCxPQUFPLGFBQW9CLENBQUM7SUFDOUIsQ0FBQztDQUNGIn0=
320
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2RDbGlQcm9qZWN0R2VuZXJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2VudHJ5LXBvaW50cy9TZENsaVByb2plY3RHZW5lcmF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDbkUsT0FBTyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQ3hCLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUN0RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNuRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUNuRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUNyRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUN6RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN4RSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUN0RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFB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
@@ -14,18 +14,18 @@ module.exports = {
14
14
  project: require("path").resolve(__dirname, "tsconfig.json")
15
15
  }
16
16
  }
17
- },${opt.isForAngular ? `
18
- {
19
- files: ["*.ts"],
20
- extends: ["plugin:@simplysm/angular"]
21
- },
22
- {
23
- files: ["*.html"],
24
- extends: ["plugin:@simplysm/angular-template"]
25
- }` : ""}
26
- }
17
+ }
18
+ }${opt.isForAngular ? `,
19
+ {
20
+ files: ["*.ts"],
21
+ extends: ["plugin:@simplysm/angular"]
22
+ },
23
+ {
24
+ files: ["*.html"],
25
+ extends: ["plugin:@simplysm/angular-template"]
26
+ }` : ""}
27
27
  ]
28
28
  };
29
29
 
30
30
  `.trim();
31
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmNfcGFja2FnZV9lc2xpbnRyYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbnRyeS1wb2ludHMvZmlsZS9iYXNlL2ZjX3BhY2thZ2VfZXNsaW50cmMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxHQUE4QixFQUFVLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7OztVQWdCeEYsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7Ozs7Ozs7O1FBUXJCLENBQUMsQ0FBQyxDQUFDLEVBQUU7Ozs7O0NBS1osQ0FBQyxJQUFJLEVBQUUsQ0FBQyJ9
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmNfcGFja2FnZV9lc2xpbnRyYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbnRyeS1wb2ludHMvZmlsZS9iYXNlL2ZjX3BhY2thZ2VfZXNsaW50cmMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxHQUE4QixFQUFVLEVBQUUsQ0FBQyxrQkFBa0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FpQjNGLEdBQUcsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDOzs7Ozs7OztNQVFwQixDQUFDLENBQUMsQ0FBQyxFQUFFOzs7O0NBSVYsQ0FBQyxJQUFJLEVBQUUsQ0FBQyJ9
@@ -1,4 +1,5 @@
1
1
  export declare const fc_package_tsconfig: (opt: {
2
2
  isModule: boolean;
3
3
  useDom: boolean;
4
+ options: Record<string, any>;
4
5
  }) => string;
@@ -7,6 +7,7 @@ export const fc_package_tsconfig = (opt) => JSON.stringify({
7
7
  ...opt.useDom ? ["DOM"] : []
8
8
  ],
9
9
  outDir: "./dist"
10
- }
10
+ },
11
+ ...opt.options
11
12
  }, undefined, 2);
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmNfcGFja2FnZV90c2NvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbnRyeS1wb2ludHMvZmlsZS9iYXNlL2ZjX3BhY2thZ2VfdHNjb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxHQUEyQyxFQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3pHLE9BQU8sRUFBRSxxQkFBcUI7SUFDOUIsZUFBZSxFQUFFO1FBQ2YsR0FBRyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFO1FBQzlDLEdBQUcsRUFBRTtZQUNILFFBQVE7WUFDUixHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDN0I7UUFDRCxNQUFNLEVBQUUsUUFBUTtLQUNqQjtDQUNGLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDIn0=
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmNfcGFja2FnZV90c2NvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbnRyeS1wb2ludHMvZmlsZS9iYXNlL2ZjX3BhY2thZ2VfdHNjb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBQyxHQUF5RSxFQUFVLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3ZJLE9BQU8sRUFBRSxxQkFBcUI7SUFDOUIsZUFBZSxFQUFFO1FBQ2YsR0FBRyxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFO1FBQzlDLEdBQUcsRUFBRTtZQUNILFFBQVE7WUFDUixHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUU7U0FDN0I7UUFDRCxNQUFNLEVBQUUsUUFBUTtLQUNqQjtJQUNELEdBQUcsR0FBRyxDQUFDLE9BQU87Q0FDZixFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyJ9
@@ -26,7 +26,7 @@ export class AppModule implements DoBootstrap {
26
26
  public constructor(private readonly _toast: SdToastProvider) {
27
27
  }
28
28
 
29
- public async ngDoBootstrap(appRef: ApplicationRef): Promise<void> {
29
+ public ngDoBootstrap(appRef: ApplicationRef): void {
30
30
  this._toast.alertThemes = ["danger"];
31
31
 
32
32
  appRef.bootstrap(AppPage);
@@ -1,8 +1,6 @@
1
1
  export const fc_package_AppPage = () => /* language=ts */ `
2
2
 
3
- import { ChangeDetectionStrategy, Component, HostListener } from "@angular/core";
4
- import { DevModal } from "./modals/DevModal";
5
- import { SdModalProvider } from "@simplysm/sd-angular";
3
+ import { ChangeDetectionStrategy, Component } from "@angular/core";
6
4
 
7
5
  @Component({
8
6
  selector: "app-root",
@@ -10,25 +8,7 @@ import { SdModalProvider } from "@simplysm/sd-angular";
10
8
  template: \`APP_PAGE\`
11
9
  })
12
10
  export class AppPage {
13
- public constructor(private readonly _modal: SdModalProvider) {
14
- }
15
-
16
- @HostListener("document:keydown", ["$event"])
17
- public async onKeydown(event: KeyboardEvent): Promise<void> {
18
- if (
19
- process.env["NODE_ENV"] !== "production"
20
- && event.ctrlKey
21
- && event.altKey
22
- && event.shiftKey
23
- && event.key === "F12"
24
- ) {
25
- event.preventDefault();
26
- event.stopPropagation();
27
-
28
- await this._modal.showAsync(DevModal, "DEV", undefined, { key: "dev-modal" });
29
- }
30
- }
31
11
  }
32
12
 
33
13
  `.trim();
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmNfcGFja2FnZV9BcHBQYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VudHJ5LXBvaW50cy9maWxlL2NsaWVudC9mY19wYWNrYWdlX0FwcFBhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsR0FBVyxFQUFFLENBQUMsaUJBQWlCLENBQUM7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBZ0NqRSxDQUFDLElBQUksRUFBRSxDQUFDIn0=
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmNfcGFja2FnZV9BcHBQYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VudHJ5LXBvaW50cy9maWxlL2NsaWVudC9mY19wYWNrYWdlX0FwcFBhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsR0FBVyxFQUFFLENBQUMsaUJBQWlCLENBQUM7Ozs7Ozs7Ozs7OztDQVlqRSxDQUFDLElBQUksRUFBRSxDQUFDIn0=
@@ -0,0 +1,4 @@
1
+ export declare const fc_package_Page: (opt: {
2
+ name: string;
3
+ isRouteParent: boolean;
4
+ }) => string;
@@ -0,0 +1,19 @@
1
+ import { StringUtil } from "@simplysm/sd-core-common";
2
+ export const fc_package_Page = (opt) => /* language=ts */ `
3
+
4
+ import { ChangeDetectionStrategy, Component } from "@angular/core";
5
+
6
+ @Component({
7
+ selector: "app-${StringUtil.toKebabCase(opt.name)}",
8
+ changeDetection: ChangeDetectionStrategy.OnPush,
9
+ template: \`
10
+ ${opt.name}${opt.isRouteParent ? `<br/>
11
+ <router-outlet></router-outlet>
12
+ ` : ``}
13
+ \`
14
+ })
15
+ export class ${opt.name}Page {
16
+ }
17
+
18
+ `.trim();
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmNfcGFja2FnZV9QYWdlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2VudHJ5LXBvaW50cy9maWxlL2NsaWVudC9mY19wYWNrYWdlX1BhZ2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXRELE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxDQUFDLEdBQTZDLEVBQVUsRUFBRSxDQUFDLGlCQUFpQixDQUFDOzs7OzttQkFLekYsVUFBVSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDOzs7TUFHN0MsR0FBRyxDQUFDLElBQUksR0FBRyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQzs7S0FFaEMsQ0FBQyxDQUFDLENBQUMsRUFBRTs7O2VBR0ssR0FBRyxDQUFDLElBQUk7OztDQUd0QixDQUFDLElBQUksRUFBRSxDQUFDIn0=
@@ -11,7 +11,7 @@ _logs
11
11
  _modules
12
12
  _routes.ts
13
13
  ~$*.xlsx
14
- .*
14
+ .*/
15
15
 
16
16
  `.trim();
17
17
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmNfcHJvamVjdF9naXRpZ25vcmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZW50cnktcG9pbnRzL2ZpbGUvcHJvamVjdC9mY19wcm9qZWN0X2dpdGlnbm9yZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxHQUFXLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQzs7Ozs7Ozs7Ozs7Ozs7O0NBZTFFLENBQUMsSUFBSSxFQUFFLENBQUMifQ==
@@ -3,10 +3,11 @@ export const fc_project_readme = (opt) => /* language=md */ `
3
3
 
4
4
  ## Requirements
5
5
 
6
- * node@16.x.x
6
+ * node v16.x.x
7
7
 
8
8
  ## Installation
9
9
 
10
10
  npm install
11
+
11
12
  `.trim();
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmNfcHJvamVjdF9yZWFkbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZW50cnktcG9pbnRzL2ZpbGUvcHJvamVjdC9mY19wcm9qZWN0X3JlYWRtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEdBQTRCLEVBQVUsRUFBRSxDQUFDLGlCQUFpQixDQUFDO0lBQ3pGLEdBQUcsQ0FBQyxXQUFXOzs7Ozs7Ozs7Q0FTbEIsQ0FBQyxJQUFJLEVBQUUsQ0FBQyJ9
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmNfcHJvamVjdF9yZWFkbWUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvZW50cnktcG9pbnRzL2ZpbGUvcHJvamVjdC9mY19wcm9qZWN0X3JlYWRtZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxDQUFDLEdBQTRCLEVBQVUsRUFBRSxDQUFDLGlCQUFpQixDQUFDO0lBQ3pGLEdBQUcsQ0FBQyxXQUFXOzs7Ozs7Ozs7O0NBVWxCLENBQUMsSUFBSSxFQUFFLENBQUMifQ==
@@ -9,7 +9,6 @@ export const fc_project_tsconfig = () => JSON.stringify({
9
9
  strict: true,
10
10
  moduleResolution: "node",
11
11
  esModuleInterop: true,
12
- noImplicitOverride: true,
13
12
  noImplicitReturns: true,
14
13
  noImplicitAny: false,
15
14
  useUnknownInCatchVariables: false,
@@ -23,4 +22,4 @@ export const fc_project_tsconfig = () => JSON.stringify({
23
22
  noUnusedLocals: true
24
23
  }
25
24
  }, undefined, 2);
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmNfcHJvamVjdF90c2NvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbnRyeS1wb2ludHMvZmlsZS9wcm9qZWN0L2ZjX3Byb2plY3RfdHNjb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsR0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUM5RCxlQUFlLEVBQUU7UUFDZixXQUFXLEVBQUUsSUFBSTtRQUNqQixrQkFBa0IsRUFBRSxJQUFJO1FBQ3hCLHNCQUFzQixFQUFFLElBQUk7UUFDNUIscUJBQXFCLEVBQUUsSUFBSTtRQUMzQixNQUFNLEVBQUUsUUFBUTtRQUNoQixNQUFNLEVBQUUsUUFBUTtRQUNoQixNQUFNLEVBQUUsSUFBSTtRQUNaLGdCQUFnQixFQUFFLE1BQU07UUFDeEIsZUFBZSxFQUFFLElBQUk7UUFDckIsa0JBQWtCLEVBQUUsSUFBSTtRQUN4QixpQkFBaUIsRUFBRSxJQUFJO1FBQ3ZCLGFBQWEsRUFBRSxLQUFLO1FBQ3BCLDBCQUEwQixFQUFFLEtBQUs7UUFDakMsMEJBQTBCLEVBQUUsSUFBSTtRQUNoQyxlQUFlLEVBQUUsSUFBSTtRQUNyQixtQkFBbUIsRUFBRSxJQUFJO1FBQ3pCLFlBQVksRUFBRSxJQUFJO1FBQ2xCLGdDQUFnQyxFQUFFLElBQUk7UUFDdEMsa0NBQWtDLEVBQUUsSUFBSTtRQUN4QyxhQUFhLEVBQUUsSUFBSTtRQUNuQixjQUFjLEVBQUUsSUFBSTtLQUNyQjtDQUNGLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDIn0=
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmNfcHJvamVjdF90c2NvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9lbnRyeS1wb2ludHMvZmlsZS9wcm9qZWN0L2ZjX3Byb2plY3RfdHNjb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsR0FBVyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUM5RCxlQUFlLEVBQUU7UUFDZixXQUFXLEVBQUUsSUFBSTtRQUNqQixrQkFBa0IsRUFBRSxJQUFJO1FBQ3hCLHNCQUFzQixFQUFFLElBQUk7UUFDNUIscUJBQXFCLEVBQUUsSUFBSTtRQUMzQixNQUFNLEVBQUUsUUFBUTtRQUNoQixNQUFNLEVBQUUsUUFBUTtRQUNoQixNQUFNLEVBQUUsSUFBSTtRQUNaLGdCQUFnQixFQUFFLE1BQU07UUFDeEIsZUFBZSxFQUFFLElBQUk7UUFDckIsaUJBQWlCLEVBQUUsSUFBSTtRQUN2QixhQUFhLEVBQUUsS0FBSztRQUNwQiwwQkFBMEIsRUFBRSxLQUFLO1FBQ2pDLDBCQUEwQixFQUFFLElBQUk7UUFDaEMsZUFBZSxFQUFFLElBQUk7UUFDckIsbUJBQW1CLEVBQUUsSUFBSTtRQUN6QixZQUFZLEVBQUUsSUFBSTtRQUNsQixnQ0FBZ0MsRUFBRSxJQUFJO1FBQ3RDLGtDQUFrQyxFQUFFLElBQUk7UUFDeEMsYUFBYSxFQUFFLElBQUk7UUFDbkIsY0FBYyxFQUFFLElBQUk7S0FDckI7Q0FDRixFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQyJ9
package/dist/index.d.ts CHANGED
@@ -13,12 +13,12 @@ export * from "./commons";
13
13
  export * from "./entry-points/file/base/fc_package_eslintrc";
14
14
  export * from "./entry-points/file/base/fc_package_npmconfig";
15
15
  export * from "./entry-points/file/base/fc_package_tsconfig";
16
- export * from "./entry-points/file/client/fc_package_appicons";
17
16
  export * from "./entry-points/file/client/fc_package_AppModule";
18
17
  export * from "./entry-points/file/client/fc_package_AppPage";
19
18
  export * from "./entry-points/file/client/fc_package_client_main";
20
19
  export * from "./entry-points/file/client/fc_package_index";
21
20
  export * from "./entry-points/file/client/fc_package_manifest";
21
+ export * from "./entry-points/file/client/fc_package_Page";
22
22
  export * from "./entry-points/file/client/fc_package_polyfills";
23
23
  export * from "./entry-points/file/client/fc_package_styles";
24
24
  export * from "./entry-points/file/db/fc_package_DbContext";
package/dist/index.mjs CHANGED
@@ -13,12 +13,12 @@ export * from "./commons";
13
13
  export * from "./entry-points/file/base/fc_package_eslintrc";
14
14
  export * from "./entry-points/file/base/fc_package_npmconfig";
15
15
  export * from "./entry-points/file/base/fc_package_tsconfig";
16
- export * from "./entry-points/file/client/fc_package_appicons";
17
16
  export * from "./entry-points/file/client/fc_package_AppModule";
18
17
  export * from "./entry-points/file/client/fc_package_AppPage";
19
18
  export * from "./entry-points/file/client/fc_package_client_main";
20
19
  export * from "./entry-points/file/client/fc_package_index";
21
20
  export * from "./entry-points/file/client/fc_package_manifest";
21
+ export * from "./entry-points/file/client/fc_package_Page";
22
22
  export * from "./entry-points/file/client/fc_package_polyfills";
23
23
  export * from "./entry-points/file/client/fc_package_styles";
24
24
  export * from "./entry-points/file/db/fc_package_DbContext";
@@ -53,4 +53,4 @@ export * from "./SdCliBuildResultError";
53
53
  export * from "./utils/SdCliBuildResultUtil";
54
54
  export * from "./utils/SdCliConfigUtil";
55
55
  export * from "./utils/SdCliNpmConfigUtil";
56
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNEJBQTRCLENBQUMifQ==
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLDhCQUE4QixDQUFDO0FBQzdDLGNBQWMsNkJBQTZCLENBQUM7QUFDNUMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxzREFBc0QsQ0FBQztBQUNyRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsc0RBQXNELENBQUM7QUFDckUsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLGtEQUFrRCxDQUFDO0FBQ2pFLGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxpREFBaUQsQ0FBQztBQUNoRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyxnQ0FBZ0MsQ0FBQztBQUMvQyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMseUJBQXlCLENBQUM7QUFDeEMsY0FBYyw4QkFBOEIsQ0FBQztBQUM3QyxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsNEJBQTRCLENBQUMifQ==