@magic-xpa/cli 4.801.0-dev481.243 → 4.801.0-dev481.249

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 (84) hide show
  1. package/index.js +1 -1
  2. package/index.js.map +1 -1
  3. package/package.json +1 -1
  4. package/src/collection.json +1 -0
  5. package/src/public_api.js +3 -3
  6. package/src/public_api.js.map +1 -1
  7. package/src/schematics/magic-utils/env.js +5 -5
  8. package/src/schematics/magic-utils/env.js.map +1 -1
  9. package/src/schematics/magic-utils/env.ts +5 -5
  10. package/src/schematics/magic-utils/metadata.class.js +3 -3
  11. package/src/schematics/magic-utils/metadata.class.js.map +1 -1
  12. package/src/schematics/magic-utils/process-json.js +4 -4
  13. package/src/schematics/magic-utils/process-json.js.map +1 -1
  14. package/src/schematics/magic-utils/rules/build-control.rule.js +4 -4
  15. package/src/schematics/magic-utils/rules/build-control.rule.js.map +1 -1
  16. package/src/schematics/magic-utils/rules/build-view.rule.js +4 -4
  17. package/src/schematics/magic-utils/rules/build-view.rule.js.map +1 -1
  18. package/src/schematics/magic-utils/rules/component-list.rule.js +29 -50
  19. package/src/schematics/magic-utils/rules/component-list.rule.js.map +1 -1
  20. package/src/schematics/magic-utils/rules/component-list.rule.ts +2 -28
  21. package/src/schematics/magic-utils/rules/generate.rule.js +3 -3
  22. package/src/schematics/magic-utils/rules/generate.rule.js.map +1 -1
  23. package/src/schematics/magic-utils/rules/init-add-modules.rule.js +40 -24
  24. package/src/schematics/magic-utils/rules/init-add-modules.rule.js.map +1 -1
  25. package/src/schematics/magic-utils/rules/init-add-modules.rule.ts +21 -1
  26. package/src/schematics/magic-utils/rules/init-gen-components.rule.js +9 -9
  27. package/src/schematics/magic-utils/rules/init-gen-components.rule.js.map +1 -1
  28. package/src/schematics/magic-utils/rules/init-magic-metadata.rule.js +2 -2
  29. package/src/schematics/magic-utils/rules/init-magic-metadata.rule.js.map +1 -1
  30. package/src/schematics/magic-utils/rules/load-views-gen.rule.js +5 -5
  31. package/src/schematics/magic-utils/rules/load-views-gen.rule.js.map +1 -1
  32. package/src/schematics/magic-utils/utils.js +10 -10
  33. package/src/schematics/magic-utils/utils.js.map +1 -1
  34. package/src/schematics/mg-Install-prerequisites/index.js +3 -3
  35. package/src/schematics/mg-Install-prerequisites/index.js.map +1 -1
  36. package/src/schematics/mg-Install-prerequisites/schema.json +1 -1
  37. package/src/schematics/mg-add/files/src/app/magic/lazy-loader.service.ts +10 -0
  38. package/src/schematics/mg-add/index.js +52 -16
  39. package/src/schematics/mg-add/index.js.map +1 -1
  40. package/src/schematics/mg-add/index.ts +42 -3
  41. package/src/schematics/mg-add/schema.json +1 -1
  42. package/src/schematics/mg-add/utils/add-declaration-to-root-module.js +2 -2
  43. package/src/schematics/mg-add/utils/add-declaration-to-root-module.js.map +1 -1
  44. package/src/schematics/mg-add-tasks/schema.json +1 -1
  45. package/src/schematics/mg-delete-files/index.js +3 -3
  46. package/src/schematics/mg-delete-files/index.js.map +1 -1
  47. package/src/schematics/mg-delete-files/schema.json +1 -1
  48. package/src/schematics/mg-gen-module/index.js +4 -4
  49. package/src/schematics/mg-gen-module/index.js.map +1 -1
  50. package/src/schematics/mg-gen-module/schema.json +1 -1
  51. package/src/schematics/mg-generate/index.js +3 -3
  52. package/src/schematics/mg-generate/index.js.map +1 -1
  53. package/src/schematics/mg-generate/schema.json +1 -1
  54. package/src/schematics/mg-install/index.js +2 -2
  55. package/src/schematics/mg-install/index.js.map +1 -1
  56. package/src/schematics/mg-install/schema.json +1 -1
  57. package/src/schematics/mg-routes/index.js +6 -6
  58. package/src/schematics/mg-routes/index.js.map +1 -1
  59. package/src/schematics/mg-routes/schema.json +1 -1
  60. package/src/schematics/mg-single-control/index.js +4 -4
  61. package/src/schematics/mg-single-control/index.js.map +1 -1
  62. package/src/schematics/mg-single-control/schema.json +1 -1
  63. package/src/schematics/utils/ast.js +6 -6
  64. package/src/schematics/utils/ast.js.map +1 -1
  65. package/src/schematics/utils/devkit-utils/ast-utils_old.js +2 -2
  66. package/src/schematics/utils/devkit-utils/ast-utils_old.js.map +1 -1
  67. package/src/schematics/utils/devkit-utils/component.js +16 -16
  68. package/src/schematics/utils/devkit-utils/component.js.map +1 -1
  69. package/src/schematics/utils/devkit-utils/find-module.js +11 -11
  70. package/src/schematics/utils/devkit-utils/find-module.js.map +1 -1
  71. package/src/schematics/utils/devkit-utils/ng-ast-utils.js +6 -6
  72. package/src/schematics/utils/devkit-utils/ng-ast-utils.js.map +1 -1
  73. package/src/schematics/utils/devkit-utils/parse-name.js +3 -3
  74. package/src/schematics/utils/devkit-utils/parse-name.js.map +1 -1
  75. package/src/schematics/utils/devkit-utils/route-utils.js +16 -16
  76. package/src/schematics/utils/devkit-utils/route-utils.js.map +1 -1
  77. package/src/schematics/utils/html.js +1 -1
  78. package/src/schematics/utils/html.js.map +1 -1
  79. package/src/schematics/utils/testing.js +1 -1
  80. package/src/schematics/utils/testing.js.map +1 -1
  81. package/src/types/enums/Enums.js +5 -1
  82. package/src/types/enums/Enums.js.map +1 -1
  83. package/src/types/index.js +7 -7
  84. package/src/types/index.js.map +1 -1
package/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./src/public_api"), exports);
4
+ (0, tslib_1.__exportStar)(require("./src/public_api"), exports);
5
5
  //# sourceMappingURL=index.js.map
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,2DAAiC","sourcesContent":["export * from './src/public_api';\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["index.ts"],"names":[],"mappings":";;;AAAA,gEAAiC","sourcesContent":["export * from './src/public_api';\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@magic-xpa/cli",
3
- "version": "4.801.0-dev481.243",
3
+ "version": "4.801.0-dev481.249",
4
4
  "license": "SEE LICENSE IN EULA.pdf",
5
5
  "description": "Magic CLI for MagicWeb applications",
6
6
  "keywords": [
@@ -1,5 +1,6 @@
1
1
  {
2
2
  "$schema": "http://json-schema.org/schema",
3
+ "$id": "MagicCliSchematics",
3
4
  "schematics": {
4
5
  "mg-add": {
5
6
  "description": "Add the magic to the application",
package/src/public_api.js CHANGED
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  const tslib_1 = require("tslib");
4
- tslib_1.__exportStar(require("./schematics/mg-add/index"), exports);
5
- tslib_1.__exportStar(require("./schematics/mg-generate/index"), exports);
6
- tslib_1.__exportStar(require("./schematics/mg-routes/index"), exports);
4
+ (0, tslib_1.__exportStar)(require("./schematics/mg-add/index"), exports);
5
+ (0, tslib_1.__exportStar)(require("./schematics/mg-generate/index"), exports);
6
+ (0, tslib_1.__exportStar)(require("./schematics/mg-routes/index"), exports);
7
7
  //# sourceMappingURL=public_api.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"public_api.js","sourceRoot":"","sources":["public_api.ts"],"names":[],"mappings":";;;AAAA,oEAA0C;AAC1C,yEAA+C;AAC/C,uEAA6C","sourcesContent":["export * from \"./schematics/mg-add/index\";\nexport * from \"./schematics/mg-generate/index\";\nexport * from \"./schematics/mg-routes/index\";\n\n\n"]}
1
+ {"version":3,"file":"public_api.js","sourceRoot":"","sources":["public_api.ts"],"names":[],"mappings":";;;AAAA,yEAA0C;AAC1C,8EAA+C;AAC/C,4EAA6C","sourcesContent":["export * from \"./schematics/mg-add/index\";\nexport * from \"./schematics/mg-generate/index\";\nexport * from \"./schematics/mg-routes/index\";\n\n\n"]}
@@ -18,13 +18,13 @@ class Idependencies {
18
18
  exports.Idependencies = Idependencies;
19
19
  exports.dependencies = [
20
20
  // material dependencies
21
- { name: "@angular/material", version: '^10.0.0' },
22
- { name: "@angular/cdk", version: '^10.0.0' },
23
- { name: "@angular/animations", version: '^10.0.0' },
21
+ { name: "@angular/material", version: '^13.0.0' },
22
+ { name: "@angular/cdk", version: '^13.0.0' },
23
+ { name: "@angular/animations", version: '^13.0.0' },
24
24
  { name: "font-awesome", version: '^4.7.0' },
25
25
  { name: "hammerjs", version: '^2.0.8' },
26
- { name: "ngx-infinite-scroll", version: '^6.0.0' },
27
- { name: "ng-dynamic-component", version: '^7.0.1' },
26
+ { name: "ngx-infinite-scroll", version: '^10.0.0' },
27
+ { name: "ng-dynamic-component", version: '^10.0.0' },
28
28
  { name: "rxjs-compat", version: "^6.6.0" },
29
29
  { name: "ngx-currency", version: "^2.5.2" }
30
30
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["env.ts"],"names":[],"mappings":";;;AAKa,QAAA,YAAY,GAAW,gBAAgB,CAAC;AACxC,QAAA,oBAAoB,GAAG,oBAAoB,CAAC;AAC5C,QAAA,mBAAmB,GAAI,kBAAkB,CAAC;AAC1C,QAAA,UAAU,GAAa,OAAO,CAAC;AAC/B,QAAA,gBAAgB,GAAO,+BAA+B,CAAC;AACvD,QAAA,2BAA2B,GAAI,oBAAoB,CAAC;AACpD,QAAA,aAAa,GAAI,KAAK,oBAAY,gBAAgB,CAAC;AACnD,QAAA,WAAW,GAAM,KAAK,oBAAY,cAAc,CAAC;AAE9D,MAAa,aAAa;IACxB,YAAY,OAAc,EAAE,UAAiB;QAC3C,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;IAC5B,CAAC;CAGF;AAPD,sCAOC;AAEU,QAAA,YAAY,GAAG;IAExB,wBAAwB;IACxB,EAAC,IAAI,EAAE,mBAAmB,EAAI,OAAO,EAAE,SAAS,EAAC;IACjD,EAAC,IAAI,EAAE,cAAc,EAAS,OAAO,EAAE,SAAS,EAAC;IACjD,EAAC,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,SAAS,EAAC;IACjD,EAAC,IAAI,EAAE,cAAc,EAAS,OAAO,EAAE,QAAQ,EAAC;IAChD,EAAC,IAAI,EAAE,UAAU,EAAa,OAAO,EAAE,QAAQ,EAAC;IAEhD,EAAC,IAAI,EAAE,qBAAqB,EAAG,OAAO,EAAE,QAAQ,EAAC;IACjD,EAAC,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,QAAQ,EAAC;IACjD,EAAC,IAAI,EAAE,aAAa,EAAW,OAAO,EAAE,QAAQ,EAAC;IACjD,EAAC,IAAI,EAAE,cAAc,EAAU,OAAO,EAAE,QAAQ,EAAC;CAClD,CAAC;AAEW,QAAA,eAAe,GAAG;IAC7B,EAAC,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,SAAS,EAAC;CACnD,CAAC;AACW,QAAA,GAAG,GAAU,EAAS,CAAC","sourcesContent":["// TODO(PK): hard-code for now, will query npm repo\n// to get this info in the future\nimport { MagicMetadata } from \"./metadata.class\";\nimport { IEnv } from \"../../types/interfaces/env.interface\";\n\nexport const METADATA_DIR = `magic-metadata`;\nexport const GEN_COMPONENTS_ARRAY = 'magicGenComponents';\nexport const GEN_COMPONENTS_HASH = 'magicGenCmpsHash';\nexport const GEN_FOLDER = 'magic';\nexport const MAGIC_CLI_FOLDER = './node_modules/@magic-xpa/cli';\nexport const GEN_LAZY_LOAD_MODULES_ARRAY = 'LazyLoadModulesMap';\nexport const manifest_path = `./${METADATA_DIR}/manifest.json`;\nexport const config_path = `./${METADATA_DIR}/config.json`;\n\nexport class Idependencies {\n constructor(setName:string, setVersion:string){\n this.name = setName;\n this.version = setVersion;\n }\n name:string;\n version:string;\n}\n\nexport var dependencies = [\n\n // material dependencies\n {name: \"@angular/material\" , version: '^10.0.0'},\n {name: \"@angular/cdk\" , version: '^10.0.0'},\n {name: \"@angular/animations\", version: '^10.0.0'},\n {name: \"font-awesome\" , version: '^4.7.0'},\n {name: \"hammerjs\" , version: '^2.0.8'},\n\n {name: \"ngx-infinite-scroll\" , version: '^6.0.0'},\n {name: \"ng-dynamic-component\", version: '^7.0.1'},\n {name: \"rxjs-compat\" , version: \"^6.6.0\"},\n {name: \"ngx-currency\" , version: \"^2.5.2\"}\n];\n\nexport const devDependencies = [\n {name: \"@types/stacktrace-js\", version: '^0.0.32'}\n];\nexport const env : IEnv = {} as any;\n\n"]}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["env.ts"],"names":[],"mappings":";;;AAKa,QAAA,YAAY,GAAW,gBAAgB,CAAC;AACxC,QAAA,oBAAoB,GAAG,oBAAoB,CAAC;AAC5C,QAAA,mBAAmB,GAAI,kBAAkB,CAAC;AAC1C,QAAA,UAAU,GAAa,OAAO,CAAC;AAC/B,QAAA,gBAAgB,GAAO,+BAA+B,CAAC;AACvD,QAAA,2BAA2B,GAAI,oBAAoB,CAAC;AACpD,QAAA,aAAa,GAAI,KAAK,oBAAY,gBAAgB,CAAC;AACnD,QAAA,WAAW,GAAM,KAAK,oBAAY,cAAc,CAAC;AAE9D,MAAa,aAAa;IACxB,YAAY,OAAc,EAAE,UAAiB;QAC3C,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC;QACpB,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC;IAC5B,CAAC;CAGF;AAPD,sCAOC;AAEU,QAAA,YAAY,GAAG;IAExB,wBAAwB;IACxB,EAAC,IAAI,EAAE,mBAAmB,EAAI,OAAO,EAAE,SAAS,EAAC;IACjD,EAAC,IAAI,EAAE,cAAc,EAAS,OAAO,EAAE,SAAS,EAAC;IACjD,EAAC,IAAI,EAAE,qBAAqB,EAAE,OAAO,EAAE,SAAS,EAAC;IACjD,EAAC,IAAI,EAAE,cAAc,EAAS,OAAO,EAAE,QAAQ,EAAC;IAChD,EAAC,IAAI,EAAE,UAAU,EAAa,OAAO,EAAE,QAAQ,EAAC;IAEhD,EAAC,IAAI,EAAE,qBAAqB,EAAG,OAAO,EAAE,SAAS,EAAC;IAClD,EAAC,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,SAAS,EAAC;IAClD,EAAC,IAAI,EAAE,aAAa,EAAW,OAAO,EAAE,QAAQ,EAAC;IACjD,EAAC,IAAI,EAAE,cAAc,EAAU,OAAO,EAAE,QAAQ,EAAC;CAClD,CAAC;AAEW,QAAA,eAAe,GAAG;IAC7B,EAAC,IAAI,EAAE,sBAAsB,EAAE,OAAO,EAAE,SAAS,EAAC;CACnD,CAAC;AACW,QAAA,GAAG,GAAU,EAAS,CAAC","sourcesContent":["// TODO(PK): hard-code for now, will query npm repo\n// to get this info in the future\nimport { MagicMetadata } from \"./metadata.class\";\nimport { IEnv } from \"../../types/interfaces/env.interface\";\n\nexport const METADATA_DIR = `magic-metadata`;\nexport const GEN_COMPONENTS_ARRAY = 'magicGenComponents';\nexport const GEN_COMPONENTS_HASH = 'magicGenCmpsHash';\nexport const GEN_FOLDER = 'magic';\nexport const MAGIC_CLI_FOLDER = './node_modules/@magic-xpa/cli';\nexport const GEN_LAZY_LOAD_MODULES_ARRAY = 'LazyLoadModulesMap';\nexport const manifest_path = `./${METADATA_DIR}/manifest.json`;\nexport const config_path = `./${METADATA_DIR}/config.json`;\n\nexport class Idependencies {\n constructor(setName:string, setVersion:string){\n this.name = setName;\n this.version = setVersion;\n }\n name:string;\n version:string;\n}\n\nexport var dependencies = [\n\n // material dependencies\n {name: \"@angular/material\" , version: '^13.0.0'},\n {name: \"@angular/cdk\" , version: '^13.0.0'},\n {name: \"@angular/animations\", version: '^13.0.0'},\n {name: \"font-awesome\" , version: '^4.7.0'},\n {name: \"hammerjs\" , version: '^2.0.8'},\n\n {name: \"ngx-infinite-scroll\" , version: '^10.0.0'},\n {name: \"ng-dynamic-component\", version: '^10.0.0'},\n {name: \"rxjs-compat\" , version: \"^6.6.0\"},\n {name: \"ngx-currency\" , version: \"^2.5.2\"}\n];\n\nexport const devDependencies = [\n {name: \"@types/stacktrace-js\", version: '^0.0.32'}\n];\nexport const env : IEnv = {} as any;\n\n"]}
@@ -24,14 +24,14 @@ export class Idependencies {
24
24
  export var dependencies = [
25
25
 
26
26
  // material dependencies
27
- {name: "@angular/material" , version: '^10.0.0'},
28
- {name: "@angular/cdk" , version: '^10.0.0'},
29
- {name: "@angular/animations", version: '^10.0.0'},
27
+ {name: "@angular/material" , version: '^13.0.0'},
28
+ {name: "@angular/cdk" , version: '^13.0.0'},
29
+ {name: "@angular/animations", version: '^13.0.0'},
30
30
  {name: "font-awesome" , version: '^4.7.0'},
31
31
  {name: "hammerjs" , version: '^2.0.8'},
32
32
 
33
- {name: "ngx-infinite-scroll" , version: '^6.0.0'},
34
- {name: "ng-dynamic-component", version: '^7.0.1'},
33
+ {name: "ngx-infinite-scroll" , version: '^10.0.0'},
34
+ {name: "ng-dynamic-component", version: '^10.0.0'},
35
35
  {name: "rxjs-compat" , version: "^6.6.0"},
36
36
  {name: "ngx-currency" , version: "^2.5.2"}
37
37
  ];
@@ -78,7 +78,7 @@ class MagicMetadata {
78
78
  this.host = host;
79
79
  this.context = context;
80
80
  this.options = options;
81
- this.paths = new MagicPaths(utils_1.getProject(host, options.project));
81
+ this.paths = new MagicPaths((0, utils_1.getProject)(host, options.project));
82
82
  }
83
83
  get theme() {
84
84
  if (!this.options.theme) {
@@ -103,11 +103,11 @@ class MagicMetadata {
103
103
  return this.loadRoutes();
104
104
  }
105
105
  loadConfig() {
106
- this._config = utils_1.readJson(this.host, this.paths.configPath);
106
+ this._config = (0, utils_1.readJson)(this.host, this.paths.configPath);
107
107
  return this._config;
108
108
  }
109
109
  loadRoutes() {
110
- this._routesTable = utils_1.readJson(this.host, this.paths.routesPath);
110
+ this._routesTable = (0, utils_1.readJson)(this.host, this.paths.routesPath);
111
111
  return this._routesTable;
112
112
  }
113
113
  }
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.class.js","sourceRoot":"","sources":["metadata.class.ts"],"names":[],"mappings":"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","sourcesContent":["import { SchematicContext, Tree } from \"@angular-devkit/schematics\";\nimport { AppConfig, ComponentId, Route, RouteTable } from \"../../types/interfaces/app\";\nimport { MagicOptionScheme } from \"./rules/magic-option.scheme\";\nimport { Project } from \"../utils/devkit-utils/config\";\nimport { env, GEN_FOLDER, METADATA_DIR } from \"./env\";\nimport { Manifest } from \"./manifest\";\nimport { getProject, readJson } from \"./utils\";\n\n\nexport class MagicPaths {\n\n // return the current module path\n // for example : for module \"WebModule1\" it returns 'src/app/magic/WebModule1'\n currentModulePath(module_name:string) {\n if (module_name !== \"\") {\n return `${this.rootMagicGenFolder}/${GEN_FOLDER}/${module_name}`;\n }\n\n return `${this.rootMagicGenFolder}/${GEN_FOLDER}`;\n\n\n }\n\n // return the destanation path for create the component\n // for example : for module \"WebModule1\" component \"WebModule1/folder1/bb/cc/it returns 'src/app/magic/WebModule1'\n getDestPathForComponent(module_name:string, componentPath:string) {\n return `${this.currentModulePath(module_name)}/${componentPath}`;\n }\n\n getJsonPathForComponent(cmpJsonPath:string) {\n return `${this.metadataFolderPath}/${cmpJsonPath}.json`;\n }\n\n getRelativePathForComponentInModule(module_name:string, cmpJsonPath:string) {\n let relativePathForComponentInModule = `${cmpJsonPath}`;\n if (module_name !== \"\")\n relativePathForComponentInModule = `${module_name}/${cmpJsonPath}`;\n\n return relativePathForComponentInModule;\n }\n\n getRoutePathForWebModule(module_name:string) {\n\n if (module_name == \"\")\n return this.appRoutesPath;\n\n return `${this.rootMagicGenFolder}/${GEN_FOLDER}/${module_name}/app.routes.ts`;\n }\n get rootMagicGenFolder(){ return `./${this.project.root}/src/app`; }\n get appComponentPath(){ return `./${this.project.root}/src/app/app.component.html`}\n get appRoutesPath(){ return `./${this.project.root}/src/app/app.routes.ts`}\n get appModulePath(){ return `./${this.project.root}/src/app/app.module.ts`}\n get executionPath(){ return `./${this.project.root}/src/assets/execution.properties`}\n get magicStylePath(){ return `./${this.project.root}/src/magic-styles.css`}\n get angularJsonPath(){ return `./angular.json`}\n get tsConfigAppJsonPath(){ return `./${this.project.root}/tsconfig.app.json`}\n\n // get the relative path of module to be used in LazyLoadMap\n magicGenLibModulePath (moduleName){\n\n let rootPath = this.project.root == '' ? this.project.root: this.project.root + '/';\n let modulepath = rootPath+`src/app/${GEN_FOLDER}`;\n if (moduleName !== \"\") {\n return `${modulepath}/${moduleName}/magic.gen.lib.module`;\n }\n return `${modulepath}/magic.gen.lib.module`;\n }\n\n // Files under gen folder\n get magicGenFolderPath (){ return `./${this.project.root}/src/app/${GEN_FOLDER}`}\n\n componentListPathForCurrentModuleName (module_name:string):string{\n return `./${this.project.root}/src/app/${GEN_FOLDER}/${module_name}/component-list.g.ts`\n }\n componentListPath (module_name:string):string{\n\n if (module_name !== \"\"){\n return this.componentListPathForCurrentModuleName(module_name);\n }\n return this.rootMagicComponentListPath;\n }\n\n get rootMagicComponentListPath (){\n\n return `./${this.project.root}/src/app/${GEN_FOLDER}/component-list.g.ts`\n }\n\n get magicGenLibModule (){ return `./${this.project.root}/src/app/${GEN_FOLDER}/magic.gen.lib.module.ts`}\n\n get favIconPath(){ return `./${this.project.root}/src/favicon.ico`; }\n\n get metadataFolderPath(){ return `./${this.project.root}/${METADATA_DIR}`; }\n get manifestPath (){ return `./${this.project.root}/${METADATA_DIR}/manifest.json`; }\n get configPath (){ return `./${this.project.root}/${METADATA_DIR}/config.json`; }\n get routesPath (){ return `./${this.project.root}/${METADATA_DIR}/routes.json`; }\n\n constructor(protected project:Project){\n }\n}\n\n\nexport class MagicMetadata {\n\n private _config: AppConfig;\n private _routesTable: RouteTable[];\n\n paths: MagicPaths;\n\n get theme() {\n if (!this.options.theme) {\n this.options.theme = env.metadata.config ?env.metadata.config.theme : 'basicHTML';\n }\n return this.options.theme;\n }\n\n get allow_testing() {\n if (!this.options.allowTesting) {\n this.options.allowTesting = env.metadata.config ?env.metadata.config.allow_testing: false;\n }\n return this.options.allowTesting;\n }\n get config() {\n if (this._config) return this._config;\n return this.loadConfig();\n }\n get routesTable(){\n if (this._routesTable) return this._routesTable;\n return this.loadRoutes();\n }\n\n constructor(public host: Tree, public context: SchematicContext, public options: MagicOptionScheme) {\n this.paths = new MagicPaths(getProject(host, options.project));\n }\n\n loadConfig() {\n this._config = readJson(this.host, this.paths.configPath);\n return this._config;\n }\n loadRoutes() {\n this._routesTable = readJson(this.host, this.paths.routesPath);\n return this._routesTable;\n }\n}\n\n\n"]}
1
+ {"version":3,"file":"metadata.class.js","sourceRoot":"","sources":["metadata.class.ts"],"names":[],"mappings":"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","sourcesContent":["import { SchematicContext, Tree } from \"@angular-devkit/schematics\";\nimport { AppConfig, ComponentId, Route, RouteTable } from \"../../types/interfaces/app\";\nimport { MagicOptionScheme } from \"./rules/magic-option.scheme\";\nimport { Project } from \"../utils/devkit-utils/config\";\nimport { env, GEN_FOLDER, METADATA_DIR } from \"./env\";\nimport { Manifest } from \"./manifest\";\nimport { getProject, readJson } from \"./utils\";\n\n\nexport class MagicPaths {\n\n // return the current module path\n // for example : for module \"WebModule1\" it returns 'src/app/magic/WebModule1'\n currentModulePath(module_name:string) {\n if (module_name !== \"\") {\n return `${this.rootMagicGenFolder}/${GEN_FOLDER}/${module_name}`;\n }\n\n return `${this.rootMagicGenFolder}/${GEN_FOLDER}`;\n\n\n }\n\n // return the destanation path for create the component\n // for example : for module \"WebModule1\" component \"WebModule1/folder1/bb/cc/it returns 'src/app/magic/WebModule1'\n getDestPathForComponent(module_name:string, componentPath:string) {\n return `${this.currentModulePath(module_name)}/${componentPath}`;\n }\n\n getJsonPathForComponent(cmpJsonPath:string) {\n return `${this.metadataFolderPath}/${cmpJsonPath}.json`;\n }\n\n getRelativePathForComponentInModule(module_name:string, cmpJsonPath:string) {\n let relativePathForComponentInModule = `${cmpJsonPath}`;\n if (module_name !== \"\")\n relativePathForComponentInModule = `${module_name}/${cmpJsonPath}`;\n\n return relativePathForComponentInModule;\n }\n\n getRoutePathForWebModule(module_name:string) {\n\n if (module_name == \"\")\n return this.appRoutesPath;\n\n return `${this.rootMagicGenFolder}/${GEN_FOLDER}/${module_name}/app.routes.ts`;\n }\n get rootMagicGenFolder(){ return `./${this.project.root}/src/app`; }\n get appComponentPath(){ return `./${this.project.root}/src/app/app.component.html`}\n get appRoutesPath(){ return `./${this.project.root}/src/app/app.routes.ts`}\n get appModulePath(){ return `./${this.project.root}/src/app/app.module.ts`}\n get executionPath(){ return `./${this.project.root}/src/assets/execution.properties`}\n get magicStylePath(){ return `./${this.project.root}/src/magic-styles.css`}\n get angularJsonPath(){ return `./angular.json`}\n get tsConfigAppJsonPath(){ return `./${this.project.root}/tsconfig.app.json`}\n\n // get the relative path of module to be used in LazyLoadMap\n magicGenLibModulePath (moduleName){\n\n let rootPath = this.project.root == '' ? this.project.root: this.project.root + '/';\n let modulepath = rootPath+`src/app/${GEN_FOLDER}`;\n if (moduleName !== \"\") {\n return `${modulepath}/${moduleName}/magic.gen.lib.module`;\n }\n return `${modulepath}/magic.gen.lib.module`;\n }\n\n // Files under gen folder\n get magicGenFolderPath (){ return `./${this.project.root}/src/app/${GEN_FOLDER}`}\n\n componentListPathForCurrentModuleName (module_name:string):string{\n return `./${this.project.root}/src/app/${GEN_FOLDER}/${module_name}/component-list.g.ts`\n }\n componentListPath (module_name:string):string{\n\n if (module_name !== \"\"){\n return this.componentListPathForCurrentModuleName(module_name);\n }\n return this.rootMagicComponentListPath;\n }\n\n get rootMagicComponentListPath (){\n\n return `./${this.project.root}/src/app/${GEN_FOLDER}/component-list.g.ts`\n }\n\n get magicGenLibModule (){ return `./${this.project.root}/src/app/${GEN_FOLDER}/magic.gen.lib.module.ts`}\n\n get favIconPath(){ return `./${this.project.root}/src/favicon.ico`; }\n\n get metadataFolderPath(){ return `./${this.project.root}/${METADATA_DIR}`; }\n get manifestPath (){ return `./${this.project.root}/${METADATA_DIR}/manifest.json`; }\n get configPath (){ return `./${this.project.root}/${METADATA_DIR}/config.json`; }\n get routesPath (){ return `./${this.project.root}/${METADATA_DIR}/routes.json`; }\n\n constructor(protected project:Project){\n }\n}\n\n\nexport class MagicMetadata {\n\n private _config: AppConfig;\n private _routesTable: RouteTable[];\n\n paths: MagicPaths;\n\n get theme() {\n if (!this.options.theme) {\n this.options.theme = env.metadata.config ?env.metadata.config.theme : 'basicHTML';\n }\n return this.options.theme;\n }\n\n get allow_testing() {\n if (!this.options.allowTesting) {\n this.options.allowTesting = env.metadata.config ?env.metadata.config.allow_testing: false;\n }\n return this.options.allowTesting;\n }\n get config() {\n if (this._config) return this._config;\n return this.loadConfig();\n }\n get routesTable(){\n if (this._routesTable) return this._routesTable;\n return this.loadRoutes();\n }\n\n constructor(public host: Tree, public context: SchematicContext, public options: MagicOptionScheme) {\n this.paths = new MagicPaths(getProject(host, options.project));\n }\n\n loadConfig() {\n this._config = readJson(this.host, this.paths.configPath);\n return this._config;\n }\n loadRoutes() {\n this._routesTable = readJson(this.host, this.paths.routesPath);\n return this._routesTable;\n }\n}\n\n\n"]}
@@ -56,7 +56,7 @@ function processJson(appJson) {
56
56
  // loop on all views
57
57
  views$.forEach(view$ => {
58
58
  if (view$) {
59
- Util_1.LogLn(`[>] Processing JSON file for component ${view$.props.id}`);
59
+ (0, Util_1.LogLn)(`[>] Processing JSON file for component ${view$.props.id}`);
60
60
  processControl(view$);
61
61
  appJson.views.push(view$);
62
62
  }
@@ -127,16 +127,16 @@ function processControl(control) {
127
127
  else {
128
128
  return;
129
129
  }
130
- if (util_1.isNullOrUndefined(ruleSet$))
130
+ if ((0, util_1.isNullOrUndefined)(ruleSet$))
131
131
  return;
132
132
  // ... or turn on the has-expession flag
133
- if (!util_1.isNullOrUndefined(ruleSet$.has_exp) && ruleSet$.has_exp) {
133
+ if (!(0, util_1.isNullOrUndefined)(ruleSet$.has_exp) && ruleSet$.has_exp) {
134
134
  control.hasClassExpression = true;
135
135
  }
136
136
  // find and keep the class name...
137
137
  else {
138
138
  if (Map[catName] && Map[catName][i] && Map[catName][i] && Map[catName][i]['options']) {
139
- if (!util_1.isNullOrUndefined(Map[catName][i]['options'][String(ruleSet$)]))
139
+ if (!(0, util_1.isNullOrUndefined)(Map[catName][i]['options'][String(ruleSet$)]))
140
140
  controlClasses.push(Map[catName][i]['options'][String(ruleSet$)]);
141
141
  }
142
142
  else {
@@ -1 +1 @@
1
- {"version":3,"file":"process-json.js","sourceRoot":"","sources":["process-json.ts"],"names":[],"mappings":"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","sourcesContent":["import {AppJson, View,Control} from '../../types/index';\r\nimport {LogLn,} from \"./Util\";\r\nimport { isNullOrUndefined } from \"util\";\r\nimport { MgControlType, CtrlButtonTypeGui } from \"../../../src/types/enums/Enums\";\r\n\r\n// mapping for properties which are implemented using a class\r\nconst Map: { [category: string]: { name: string, suffix?: string, options?: { [val: string]: string } }[] } = {\r\n style: [\r\n {\r\n name: 'font',\r\n suffix: 'mgFont'\r\n },\r\n {\r\n name: 'focus_color',\r\n suffix: 'mgFocusColor'\r\n },\r\n\r\n {\r\n name: 'border_color',\r\n suffix: 'mgBorderColor'\r\n },\r\n {\r\n name: 'border',\r\n options: {\r\n \"false\": 'hidden_border'\r\n }\r\n },\r\n {\r\n name: 'border_style',\r\n options: {\r\n \"1\": 'twod_border',\r\n \"2\": 'threed_border',\r\n \"3\": 'threedsunken_border',\r\n \"4\": 'windows_border',\r\n \"5\": 'windows_border',\r\n \"6\": 'emboss_border',\r\n \"7\": 'hidden_border'\r\n }\r\n },\r\n {\r\n name: 'multiline_edit',\r\n options: {\r\n \"true\": 'multiline',\r\n\r\n }\r\n }\r\n ],\r\n props: [],\r\n hint: []\r\n};\r\n\r\n//////////////////////////////////////////////////////////////////\r\n// process the views' json, find the classes used for each control\r\n//////////////////////////////////////////////////////////////////\r\nexport function processJson(appJson: AppJson) :AppJson {\r\n\r\n const views$: View[] = Object.assign([], appJson.views);\r\n appJson.views.length = 0;\r\n\r\n // loop on all views\r\n views$.forEach( view$ => {\r\n if(view$){\r\n LogLn(`[>] Processing JSON file for component ${view$.props.id}`);\r\n processControl(view$);\r\n appJson.views.push(view$);\r\n }\r\n });\r\n return appJson;\r\n}\r\n\r\nfunction CalcClassForControl(control: Control, controlClasses: string[] ){\r\n if (control.controlType != MgControlType.CTRL_TYPE_TABPAGE){\r\n\r\n if (control.controlType === MgControlType.CTRL_TYPE_BUTTON && control.props.button_style === CtrlButtonTypeGui.Image) {\r\n controlClasses.push(\"button_image_background_size\");\r\n }\r\n\r\n if (control.controlType === MgControlType.CTRL_TYPE_LABEL) {\r\n controlClasses.push(\"lable_overflow\");\r\n }\r\n\r\n\r\n if (control.controlType === MgControlType.CTRL_TYPE_COLUMN ) {\r\n controlClasses.push(\"table_row\");\r\n }\r\n\r\n if (control.controlType === MgControlType.CTRL_TYPE_TABLE){\r\n\r\n if (control.props.scroll_bar) {\r\n controlClasses.push(\"table_scrollBar\");\r\n }\r\n }\r\n\r\n if(control.controlType === MgControlType.CTRL_TYPE_TABLE || control.controlType === MgControlType.CTRL_TYPE_GROUP) {\r\n controlClasses.push(\"container_border\");\r\n }\r\n\r\n // if (control.children) {\r\n // control.children.forEach((ctrl$: Control) => {\r\n // CalcClassForControl(ctrl$, controlClasses)\r\n // });\r\n // }\r\n }\r\n}\r\n///////////////////////////////////////////////////////////////////////////////////////////////////\r\n// for each special chars we will add \"\\\" before the special char.\r\n// For example : control name \"Blabla?\" the class name will be \"Blabla\\?\"\r\n///////////////////////////////////////////////////////////////////////////////////////////////////\r\nfunction getControlClassNameInCss(controlNameStr: string): string {\r\n var controlName = controlNameStr;\r\n\r\n //The following chars are created problem in css = [\"!\" \",\" \"+\", \":\", \",\", \"~\", \";\", \"\\\"\" \"{\" \"}\" \">\" \" \"];\r\n //TODO:need to be check with Rotem let specialCharsForRotem = [\"!\"];\r\n\r\n // replace all special chars\r\n let specialCharsWork = [\"\\\\\", \"#\", \"$\", \"%\", \"&\", \"(\", \")\", \"*\", \"-\", \".\", \"/\", \"<\", \"=\", \"?\", \"@\", \"[\", \"]\", \"^\", \"`\", \"|\"];\r\n for (let i = 0; i < specialCharsWork.length; i++) {\r\n controlName = controlName.split(specialCharsWork[i]).join(\"\\\\\" + specialCharsWork[i]);\r\n }\r\n\r\n return controlName;\r\n}\r\n\r\n//////////////////////////////////////////////////////////////////\r\n// recursively process the controls' properties, find the classes used for the control\r\n//////////////////////////////////////////////////////////////////\r\nfunction processControl(control: Control) {\r\n\r\n const categoryNames: string[] = Object.keys(Map);\r\n\r\n //LogLn(\">> Generating CSS class list for \\\"\" + control.props.id + \"\\\"\");\r\n\r\n const controlClasses: string[] = [];\r\n\r\n // use the control's id as a class\r\n //control[\"class_name_in_css\"] = getControlClassNameInCss(control.props.id);\r\n //controlClasses.push(control.props.id + \"Props\");\r\n CalcClassForControl(control, controlClasses);\r\n\r\n // loop on all item names from the \"Map\" object\r\n categoryNames.forEach((catName) => {\r\n let catRuleArray: { name: string, suffix?: string, options?: { [val: string]: string } }[] = Map[catName];\r\n\r\n catRuleArray.forEach((rule, i) => {\r\n\r\n let ruleSet$;\r\n if (control[catName]) {\r\n ruleSet$ = control[catName][rule.name];\r\n }\r\n else {\r\n return;\r\n }\r\n if (isNullOrUndefined(ruleSet$)) return;\r\n\r\n // ... or turn on the has-expession flag\r\n if (!isNullOrUndefined(ruleSet$.has_exp) && ruleSet$.has_exp) {\r\n control.hasClassExpression = true;\r\n }\r\n // find and keep the class name...\r\n else {\r\n if (Map[catName] && Map[catName][i] && Map[catName][i] && Map[catName][i]['options']) {\r\n if (!isNullOrUndefined(Map[catName][i]['options'][String(ruleSet$)]))\r\n controlClasses.push(Map[catName][i]['options'][String(ruleSet$)]);\r\n }\r\n else {\r\n controlClasses.push(Map[catName] && Map[catName][i] && Map[catName][i] && Map[catName][i]['suffix'] + ruleSet$);\r\n }\r\n }\r\n\r\n });\r\n\r\n control.classes = controlClasses.join(' ');\r\n });\r\n\r\n //LogLn(\"generated classes \\\"\" + control.classes + \"\\\"\");\r\n\r\n // go over control's children\r\n if (control.children) {\r\n //LogLn(\"processing child controls...\");\r\n control.children.forEach((ctrl$: Control) => {\r\n processControl(ctrl$)\r\n });\r\n //LogLn(\"...children processing done\")\r\n }\r\n\r\n}\r\n"]}
1
+ {"version":3,"file":"process-json.js","sourceRoot":"","sources":["process-json.ts"],"names":[],"mappings":"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","sourcesContent":["import {AppJson, View,Control} from '../../types/index';\r\nimport {LogLn,} from \"./Util\";\r\nimport { isNullOrUndefined } from \"util\";\r\nimport { MgControlType, CtrlButtonTypeGui } from \"../../../src/types/enums/Enums\";\r\n\r\n// mapping for properties which are implemented using a class\r\nconst Map: { [category: string]: { name: string, suffix?: string, options?: { [val: string]: string } }[] } = {\r\n style: [\r\n {\r\n name: 'font',\r\n suffix: 'mgFont'\r\n },\r\n {\r\n name: 'focus_color',\r\n suffix: 'mgFocusColor'\r\n },\r\n\r\n {\r\n name: 'border_color',\r\n suffix: 'mgBorderColor'\r\n },\r\n {\r\n name: 'border',\r\n options: {\r\n \"false\": 'hidden_border'\r\n }\r\n },\r\n {\r\n name: 'border_style',\r\n options: {\r\n \"1\": 'twod_border',\r\n \"2\": 'threed_border',\r\n \"3\": 'threedsunken_border',\r\n \"4\": 'windows_border',\r\n \"5\": 'windows_border',\r\n \"6\": 'emboss_border',\r\n \"7\": 'hidden_border'\r\n }\r\n },\r\n {\r\n name: 'multiline_edit',\r\n options: {\r\n \"true\": 'multiline',\r\n\r\n }\r\n }\r\n ],\r\n props: [],\r\n hint: []\r\n};\r\n\r\n//////////////////////////////////////////////////////////////////\r\n// process the views' json, find the classes used for each control\r\n//////////////////////////////////////////////////////////////////\r\nexport function processJson(appJson: AppJson) :AppJson {\r\n\r\n const views$: View[] = Object.assign([], appJson.views);\r\n appJson.views.length = 0;\r\n\r\n // loop on all views\r\n views$.forEach( view$ => {\r\n if(view$){\r\n LogLn(`[>] Processing JSON file for component ${view$.props.id}`);\r\n processControl(view$);\r\n appJson.views.push(view$);\r\n }\r\n });\r\n return appJson;\r\n}\r\n\r\nfunction CalcClassForControl(control: Control, controlClasses: string[] ){\r\n if (control.controlType != MgControlType.CTRL_TYPE_TABPAGE){\r\n\r\n if (control.controlType === MgControlType.CTRL_TYPE_BUTTON && control.props.button_style === CtrlButtonTypeGui.Image) {\r\n controlClasses.push(\"button_image_background_size\");\r\n }\r\n\r\n if (control.controlType === MgControlType.CTRL_TYPE_LABEL) {\r\n controlClasses.push(\"lable_overflow\");\r\n }\r\n\r\n\r\n if (control.controlType === MgControlType.CTRL_TYPE_COLUMN ) {\r\n controlClasses.push(\"table_row\");\r\n }\r\n\r\n if (control.controlType === MgControlType.CTRL_TYPE_TABLE){\r\n\r\n if (control.props.scroll_bar) {\r\n controlClasses.push(\"table_scrollBar\");\r\n }\r\n }\r\n\r\n if(control.controlType === MgControlType.CTRL_TYPE_TABLE || control.controlType === MgControlType.CTRL_TYPE_GROUP) {\r\n controlClasses.push(\"container_border\");\r\n }\r\n\r\n // if (control.children) {\r\n // control.children.forEach((ctrl$: Control) => {\r\n // CalcClassForControl(ctrl$, controlClasses)\r\n // });\r\n // }\r\n }\r\n}\r\n///////////////////////////////////////////////////////////////////////////////////////////////////\r\n// for each special chars we will add \"\\\" before the special char.\r\n// For example : control name \"Blabla?\" the class name will be \"Blabla\\?\"\r\n///////////////////////////////////////////////////////////////////////////////////////////////////\r\nfunction getControlClassNameInCss(controlNameStr: string): string {\r\n var controlName = controlNameStr;\r\n\r\n //The following chars are created problem in css = [\"!\" \",\" \"+\", \":\", \",\", \"~\", \";\", \"\\\"\" \"{\" \"}\" \">\" \" \"];\r\n //TODO:need to be check with Rotem let specialCharsForRotem = [\"!\"];\r\n\r\n // replace all special chars\r\n let specialCharsWork = [\"\\\\\", \"#\", \"$\", \"%\", \"&\", \"(\", \")\", \"*\", \"-\", \".\", \"/\", \"<\", \"=\", \"?\", \"@\", \"[\", \"]\", \"^\", \"`\", \"|\"];\r\n for (let i = 0; i < specialCharsWork.length; i++) {\r\n controlName = controlName.split(specialCharsWork[i]).join(\"\\\\\" + specialCharsWork[i]);\r\n }\r\n\r\n return controlName;\r\n}\r\n\r\n//////////////////////////////////////////////////////////////////\r\n// recursively process the controls' properties, find the classes used for the control\r\n//////////////////////////////////////////////////////////////////\r\nfunction processControl(control: Control) {\r\n\r\n const categoryNames: string[] = Object.keys(Map);\r\n\r\n //LogLn(\">> Generating CSS class list for \\\"\" + control.props.id + \"\\\"\");\r\n\r\n const controlClasses: string[] = [];\r\n\r\n // use the control's id as a class\r\n //control[\"class_name_in_css\"] = getControlClassNameInCss(control.props.id);\r\n //controlClasses.push(control.props.id + \"Props\");\r\n CalcClassForControl(control, controlClasses);\r\n\r\n // loop on all item names from the \"Map\" object\r\n categoryNames.forEach((catName) => {\r\n let catRuleArray: { name: string, suffix?: string, options?: { [val: string]: string } }[] = Map[catName];\r\n\r\n catRuleArray.forEach((rule, i) => {\r\n\r\n let ruleSet$;\r\n if (control[catName]) {\r\n ruleSet$ = control[catName][rule.name];\r\n }\r\n else {\r\n return;\r\n }\r\n if (isNullOrUndefined(ruleSet$)) return;\r\n\r\n // ... or turn on the has-expession flag\r\n if (!isNullOrUndefined(ruleSet$.has_exp) && ruleSet$.has_exp) {\r\n control.hasClassExpression = true;\r\n }\r\n // find and keep the class name...\r\n else {\r\n if (Map[catName] && Map[catName][i] && Map[catName][i] && Map[catName][i]['options']) {\r\n if (!isNullOrUndefined(Map[catName][i]['options'][String(ruleSet$)]))\r\n controlClasses.push(Map[catName][i]['options'][String(ruleSet$)]);\r\n }\r\n else {\r\n controlClasses.push(Map[catName] && Map[catName][i] && Map[catName][i] && Map[catName][i]['suffix'] + ruleSet$);\r\n }\r\n }\r\n\r\n });\r\n\r\n control.classes = controlClasses.join(' ');\r\n });\r\n\r\n //LogLn(\"generated classes \\\"\" + control.classes + \"\\\"\");\r\n\r\n // go over control's children\r\n if (control.children) {\r\n //LogLn(\"processing child controls...\");\r\n control.children.forEach((ctrl$: Control) => {\r\n processControl(ctrl$)\r\n });\r\n //LogLn(\"...children processing done\")\r\n }\r\n\r\n}\r\n"]}
@@ -48,7 +48,7 @@ function buildControl(options, module_name) {
48
48
  componentFiles.forEach(templateConfig => {
49
49
  rules.push(generate(templateConfig, options));
50
50
  });
51
- return schematics_1.chain(rules)(host, context);
51
+ return (0, schematics_1.chain)(rules)(host, context);
52
52
  };
53
53
  }
54
54
  exports.buildControl = buildControl;
@@ -59,11 +59,11 @@ function generate(file, options) {
59
59
  return (host, context) => {
60
60
  EJS.renderFile(`${env_1.MAGIC_CLI_FOLDER}/${file.template}`, file.data, {}, (err, output) => {
61
61
  try {
62
- output = generate_rule_1.createGenFuncs(output, file.type);
62
+ output = (0, generate_rule_1.createGenFuncs)(output, file.type);
63
63
  }
64
64
  catch (err) {
65
- Util_2.logErr(output);
66
- Util_2.logErr(err);
65
+ (0, Util_2.logErr)(output);
66
+ (0, Util_2.logErr)(err);
67
67
  }
68
68
  // send the output directly to the stdout, so the calling app will get it
69
69
  console.log(output);
@@ -1 +1 @@
1
- {"version":3,"file":"build-control.rule.js","sourceRoot":"","sources":["build-control.rule.ts"],"names":[],"mappings":";;;AACA,2DAAiF;AACjF,gDAW8B;AAC9B,kCAA+B;AAC/B,gCAA2D;AAC3D,2BAA2B;AAC3B,kCAAsC;AACtC,0CAA0C;AAC1C,mDAAiD;AAEjD,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC;AAErC,EAAE;AACF,qCAAqC;AACrC,EAAE;AACF,SAAgB,YAAY,CAAC,OAAyB,EAAE,WAAkB;IACxE,OAAO,CAAC,IAAS,EAAE,OAAyB,EAAC,EAAE;QAC7C,MAAM,QAAQ,GAAG,SAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,IAAI,GAAM,SAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,KAAK,GAAU,EAAE,CAAC;QAEpB,MAAM,MAAM,GAAK,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAO,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAChG,MAAM,IAAI,GAAO;YACf,aAAa,EAAO,qBAAa;YACjC,KAAK,EAAe,QAAQ,CAAC,KAAK;YAClC,iBAAiB,EAAG,yBAAiB;YACrC,QAAQ,EAAY,gBAAQ;YAC5B,oBAAoB,EAAE,4BAAoB;YAC1C,aAAa,EAAO,qBAAa;YACjC,eAAe,EAAK,uBAAe;YACnC,UAAU,EAAU,kBAAU;YAC9B,cAAc,EAAM,sBAAc;YAClC,IAAI,EAAgB,WAAI;YACxB,KAAK,EAAe,IAAI;YACxB,IAAI,EAAgB,IAAI;YACxB,GAAG,EAAiB,SAAG,CAAC,GAAG;YAC3B,WAAW,EAAS,QAAQ,CAAC,MAAM;SACpC,CAAC;QACF,MAAM,cAAc,GAAqB;YACvC;gBACE,IAAI,EAAE,0BAAkB,CAAC,IAAI;gBAC7B,QAAQ,EAAE,gCAAgC;gBAC1C,WAAW,EAAE,IAAI;gBACjB,IAAI,EAAE,GAAG,MAAM,iBAAiB;gBAChC,IAAI,EAAE,IAAI;aACX;SACF,CAAC;QACF,cAAc,CAAC,OAAO,CAAE,cAAc,CAAC,EAAE;YACvC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEL,OAAO,kBAAK,CAAC,KAAK,CAAC,CAAC,IAAI,EAAC,OAAO,CAAC,CAAC;IACpC,CAAC,CAAA;AACH,CAAC;AAvCD,oCAuCC;AAED,EAAE;AACF,2DAA2D;AAC3D,EAAE;AACF,SAAgB,QAAQ,CAAC,IAAoB,EAAC,OAAyB;IACrE,OAAO,CAAC,IAAS,EAAE,OAAyB,EAAE,EAAE;QAC9C,GAAG,CAAC,UAAU,CACZ,GAAG,sBAAgB,IAAI,IAAI,CAAC,QAAQ,EAAE,EACtC,IAAI,CAAC,IAAI,EACT,EAAE,EACF,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YACd,IAAI;gBACF,MAAM,GAAG,8BAAc,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;aAC5C;YACD,OAAO,GAAG,EAAE;gBACV,aAAM,CAAC,MAAM,CAAC,CAAC;gBACf,aAAM,CAAC,GAAG,CAAC,CAAC;aACb;YACD,yEAAyE;YACzE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;QACL,OAAO,IAAI,CAAC;IACd,CAAC,CAAA;AACH,CAAC;AAnBD,4BAmBC","sourcesContent":["import { MagicOptionScheme } from \"./magic-option.scheme\";\r\nimport { chain, Rule, SchematicContext, Tree } from \"@angular-devkit/schematics\";\r\nimport {\r\n CtrlButtonTypeGui,\r\n GeneratedFileTypes,\r\n MgControlType,\r\n SideType,\r\n StorageAttributeType,\r\n TableWebStyle,\r\n RowEditingTypes,\r\n TemplateConfig,\r\n WindowPosition,\r\n WindowType\r\n} from \"../../../types/index\";\r\nimport { Util } from \"../Util\";\r\nimport { env, GEN_FOLDER, MAGIC_CLI_FOLDER } from \"../env\";\r\nimport * as EJS from 'ejs';\r\nimport { logErr, Log } from \"../Util\";\r\nimport * as jsbeautify from 'js-beautify';\r\nimport { createGenFuncs } from \"./generate.rule\";\r\n\r\nconst htmlBeautify = jsbeautify.html;\r\n\r\n//\r\n// build the HTML of a single control\r\n//\r\nexport function buildControl(options:MagicOptionScheme, module_name:string) : Rule {\r\n return (host:Tree, context: SchematicContext)=>{\r\n const metadata = env.metadata;\r\n const view = env.app.views[0];\r\n let rules:Rule[] = [];\r\n\r\n const viewId = view.props.id;\r\n const dest = metadata.paths.getDestPathForComponent(module_name, view.props.component_path);\r\n const data = {\r\n MgControlType : MgControlType,\r\n theme : metadata.theme,\r\n CtrlButtonTypeGui : CtrlButtonTypeGui,\r\n SideType : SideType,\r\n StorageAttributeType: StorageAttributeType,\r\n TableWebStyle : TableWebStyle,\r\n RowEditingTypes : RowEditingTypes,\r\n WindowType : WindowType,\r\n WindowPosition : WindowPosition,\r\n Util : Util,\r\n child : view,\r\n ctrl : view,\r\n app : env.app,\r\n magicConfig : metadata.config,\r\n };\r\n const componentFiles: TemplateConfig[] = [\r\n {\r\n type: GeneratedFileTypes.HTML,\r\n template: './templates/themes/control.ejs',\r\n destination: dest,\r\n name: `${viewId}.component.html`,\r\n data: data\r\n },\r\n ];\r\n componentFiles.forEach( templateConfig => {\r\n rules.push(generate(templateConfig, options));\r\n });\r\n\r\n return chain(rules)(host,context);\r\n }\r\n}\r\n\r\n//\r\n// Call EJS to generate HTML and write the result to stdout\r\n//\r\nexport function generate(file: TemplateConfig,options:MagicOptionScheme) :Rule{\r\n return (host:Tree, context: SchematicContext) => {\r\n EJS.renderFile(\r\n `${MAGIC_CLI_FOLDER}/${file.template}`,\r\n file.data,\r\n {},\r\n (err, output) => {\r\n try {\r\n output = createGenFuncs(output, file.type);\r\n }\r\n catch (err) {\r\n logErr(output);\r\n logErr(err);\r\n }\r\n // send the output directly to the stdout, so the calling app will get it\r\n console.log(output);\r\n });\r\n return host;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"build-control.rule.js","sourceRoot":"","sources":["build-control.rule.ts"],"names":[],"mappings":";;;AACA,2DAAiF;AACjF,gDAW8B;AAC9B,kCAA+B;AAC/B,gCAA2D;AAC3D,2BAA2B;AAC3B,kCAAsC;AACtC,0CAA0C;AAC1C,mDAAiD;AAEjD,MAAM,YAAY,GAAG,UAAU,CAAC,IAAI,CAAC;AAErC,EAAE;AACF,qCAAqC;AACrC,EAAE;AACF,SAAgB,YAAY,CAAC,OAAyB,EAAE,WAAkB;IACxE,OAAO,CAAC,IAAS,EAAE,OAAyB,EAAC,EAAE;QAC7C,MAAM,QAAQ,GAAG,SAAG,CAAC,QAAQ,CAAC;QAC9B,MAAM,IAAI,GAAM,SAAG,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACjC,IAAI,KAAK,GAAU,EAAE,CAAC;QAEpB,MAAM,MAAM,GAAK,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,GAAO,QAAQ,CAAC,KAAK,CAAC,uBAAuB,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAChG,MAAM,IAAI,GAAO;YACf,aAAa,EAAO,qBAAa;YACjC,KAAK,EAAe,QAAQ,CAAC,KAAK;YAClC,iBAAiB,EAAG,yBAAiB;YACrC,QAAQ,EAAY,gBAAQ;YAC5B,oBAAoB,EAAE,4BAAoB;YAC1C,aAAa,EAAO,qBAAa;YACjC,eAAe,EAAK,uBAAe;YACnC,UAAU,EAAU,kBAAU;YAC9B,cAAc,EAAM,sBAAc;YAClC,IAAI,EAAgB,WAAI;YACxB,KAAK,EAAe,IAAI;YACxB,IAAI,EAAgB,IAAI;YACxB,GAAG,EAAiB,SAAG,CAAC,GAAG;YAC3B,WAAW,EAAS,QAAQ,CAAC,MAAM;SACpC,CAAC;QACF,MAAM,cAAc,GAAqB;YACvC;gBACE,IAAI,EAAE,0BAAkB,CAAC,IAAI;gBAC7B,QAAQ,EAAE,gCAAgC;gBAC1C,WAAW,EAAE,IAAI;gBACjB,IAAI,EAAE,GAAG,MAAM,iBAAiB;gBAChC,IAAI,EAAE,IAAI;aACX;SACF,CAAC;QACF,cAAc,CAAC,OAAO,CAAE,cAAc,CAAC,EAAE;YACvC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC;QAChD,CAAC,CAAC,CAAC;QAEL,OAAO,IAAA,kBAAK,EAAC,KAAK,CAAC,CAAC,IAAI,EAAC,OAAO,CAAC,CAAC;IACpC,CAAC,CAAA;AACH,CAAC;AAvCD,oCAuCC;AAED,EAAE;AACF,2DAA2D;AAC3D,EAAE;AACF,SAAgB,QAAQ,CAAC,IAAoB,EAAC,OAAyB;IACrE,OAAO,CAAC,IAAS,EAAE,OAAyB,EAAE,EAAE;QAC9C,GAAG,CAAC,UAAU,CACZ,GAAG,sBAAgB,IAAI,IAAI,CAAC,QAAQ,EAAE,EACtC,IAAI,CAAC,IAAI,EACT,EAAE,EACF,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YACd,IAAI;gBACF,MAAM,GAAG,IAAA,8BAAc,EAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;aAC5C;YACD,OAAO,GAAG,EAAE;gBACV,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC;gBACf,IAAA,aAAM,EAAC,GAAG,CAAC,CAAC;aACb;YACD,yEAAyE;YACzE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACtB,CAAC,CAAC,CAAC;QACL,OAAO,IAAI,CAAC;IACd,CAAC,CAAA;AACH,CAAC;AAnBD,4BAmBC","sourcesContent":["import { MagicOptionScheme } from \"./magic-option.scheme\";\r\nimport { chain, Rule, SchematicContext, Tree } from \"@angular-devkit/schematics\";\r\nimport {\r\n CtrlButtonTypeGui,\r\n GeneratedFileTypes,\r\n MgControlType,\r\n SideType,\r\n StorageAttributeType,\r\n TableWebStyle,\r\n RowEditingTypes,\r\n TemplateConfig,\r\n WindowPosition,\r\n WindowType\r\n} from \"../../../types/index\";\r\nimport { Util } from \"../Util\";\r\nimport { env, GEN_FOLDER, MAGIC_CLI_FOLDER } from \"../env\";\r\nimport * as EJS from 'ejs';\r\nimport { logErr, Log } from \"../Util\";\r\nimport * as jsbeautify from 'js-beautify';\r\nimport { createGenFuncs } from \"./generate.rule\";\r\n\r\nconst htmlBeautify = jsbeautify.html;\r\n\r\n//\r\n// build the HTML of a single control\r\n//\r\nexport function buildControl(options:MagicOptionScheme, module_name:string) : Rule {\r\n return (host:Tree, context: SchematicContext)=>{\r\n const metadata = env.metadata;\r\n const view = env.app.views[0];\r\n let rules:Rule[] = [];\r\n\r\n const viewId = view.props.id;\r\n const dest = metadata.paths.getDestPathForComponent(module_name, view.props.component_path);\r\n const data = {\r\n MgControlType : MgControlType,\r\n theme : metadata.theme,\r\n CtrlButtonTypeGui : CtrlButtonTypeGui,\r\n SideType : SideType,\r\n StorageAttributeType: StorageAttributeType,\r\n TableWebStyle : TableWebStyle,\r\n RowEditingTypes : RowEditingTypes,\r\n WindowType : WindowType,\r\n WindowPosition : WindowPosition,\r\n Util : Util,\r\n child : view,\r\n ctrl : view,\r\n app : env.app,\r\n magicConfig : metadata.config,\r\n };\r\n const componentFiles: TemplateConfig[] = [\r\n {\r\n type: GeneratedFileTypes.HTML,\r\n template: './templates/themes/control.ejs',\r\n destination: dest,\r\n name: `${viewId}.component.html`,\r\n data: data\r\n },\r\n ];\r\n componentFiles.forEach( templateConfig => {\r\n rules.push(generate(templateConfig, options));\r\n });\r\n\r\n return chain(rules)(host,context);\r\n }\r\n}\r\n\r\n//\r\n// Call EJS to generate HTML and write the result to stdout\r\n//\r\nexport function generate(file: TemplateConfig,options:MagicOptionScheme) :Rule{\r\n return (host:Tree, context: SchematicContext) => {\r\n EJS.renderFile(\r\n `${MAGIC_CLI_FOLDER}/${file.template}`,\r\n file.data,\r\n {},\r\n (err, output) => {\r\n try {\r\n output = createGenFuncs(output, file.type);\r\n }\r\n catch (err) {\r\n logErr(output);\r\n logErr(err);\r\n }\r\n // send the output directly to the stdout, so the calling app will get it\r\n console.log(output);\r\n });\r\n return host;\r\n }\r\n}\r\n"]}
@@ -13,11 +13,11 @@ function buildViews(options, module_name) {
13
13
  const views = env_1.env.app.views;
14
14
  let rules = [];
15
15
  //console.log(`Number of components to generate: ${views.length}`);
16
- Util_1.LogLn(`*** Step 3: generate components. (${views.length} components) ***`);
16
+ (0, Util_1.LogLn)(`*** Step 3: generate components. (${views.length} components) ***`);
17
17
  views.forEach(view => {
18
18
  const viewId = view.props.id;
19
19
  const dest = metadata.paths.getDestPathForComponent(module_name, view.props.component_path);
20
- Util_1.LogLn(`[>] generate component ${viewId}`);
20
+ (0, Util_1.LogLn)(`[>] generate component ${viewId}`);
21
21
  const data = {
22
22
  MgControlType: index_1.MgControlType,
23
23
  theme: metadata.theme,
@@ -59,11 +59,11 @@ function buildViews(options, module_name) {
59
59
  ];
60
60
  componentFiles.forEach(templateConfig => {
61
61
  if (shouldGenerateFileType(templateConfig))
62
- rules.push(generate_rule_1.generate(templateConfig, options));
62
+ rules.push((0, generate_rule_1.generate)(templateConfig, options));
63
63
  });
64
64
  });
65
65
  //console.log(`Number of generate rules: ${rules.length}`);
66
- return schematics_1.chain(rules)(host, context);
66
+ return (0, schematics_1.chain)(rules)(host, context);
67
67
  };
68
68
  // check if the specified template should be used in generation, enables blocking
69
69
  // generation according to specified flags
@@ -1 +1 @@
1
- {"version":3,"file":"build-view.rule.js","sourceRoot":"","sources":["build-view.rule.ts"],"names":[],"mappings":"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","sourcesContent":["//import * as _ from \"lodash\";\r\n\r\nimport { MagicOptionScheme } from \"./magic-option.scheme\";\r\nimport { chain, Rule, SchematicContext, Tree } from \"@angular-devkit/schematics\";\r\nimport {\r\n CtrlButtonTypeGui,\r\n GeneratedFileTypes,\r\n MgControlType,\r\n SideType,\r\n StorageAttributeType,\r\n TableWebStyle,\r\n RowEditingTypes,\r\n TemplateConfig,\r\n WindowPosition,\r\n WindowType\r\n} from \"../../../types/index\";\r\nimport { LogLn, Util } from \"../Util\";\r\nimport { generate } from \"./generate.rule\";\r\nimport { env, GEN_FOLDER } from \"../env\";\r\n\r\nexport function buildViews(options:MagicOptionScheme, module_name:string) : Rule {\r\n return (host:Tree, context: SchematicContext)=>{\r\n const metadata = env.metadata;\r\n const views = env.app.views;\r\n let rules:Rule[] = [];\r\n\r\n //console.log(`Number of components to generate: ${views.length}`);\r\n\r\n LogLn(`*** Step 3: generate components. (${views.length} components) ***`);\r\n views.forEach( view => {\r\n const viewId = view.props.id;\r\n const dest = metadata.paths.getDestPathForComponent(module_name, view.props.component_path);\r\n\r\n LogLn(`[>] generate component ${viewId}`);\r\n\r\n const data = {\r\n MgControlType : MgControlType,\r\n theme : metadata.theme,\r\n CtrlButtonTypeGui : CtrlButtonTypeGui,\r\n SideType : SideType,\r\n StorageAttributeType: StorageAttributeType,\r\n TableWebStyle : TableWebStyle,\r\n RowEditingTypes : RowEditingTypes,\r\n WindowType : WindowType,\r\n WindowPosition : WindowPosition,\r\n Util : Util,\r\n ctrl : view,\r\n app : env.app,\r\n //_ : _,\r\n magicConfig : metadata.config,\r\n };\r\n const componentFiles: TemplateConfig[] = [\r\n {\r\n type: GeneratedFileTypes.HELPER,\r\n template: './templates/component/mg.accessor.ts',\r\n destination: dest,\r\n name: `${viewId}.mg.controls.g.ts`,\r\n data: data\r\n },\r\n {\r\n type: GeneratedFileTypes.TS,\r\n template: './templates/component/view.component.ts',\r\n destination: dest,\r\n name: `${viewId}.component.ts`,\r\n data: data\r\n },\r\n {\r\n type: GeneratedFileTypes.HTML,\r\n template: './templates/component/view.component.html',\r\n destination: dest,\r\n name: `${viewId}.component.html`,\r\n data: data\r\n },\r\n ];\r\n componentFiles.forEach( templateConfig => {\r\n if(shouldGenerateFileType(templateConfig))\r\n rules.push(generate(templateConfig,options));\r\n });\r\n });\r\n\r\n //console.log(`Number of generate rules: ${rules.length}`);\r\n\r\n return chain(rules)(host,context);\r\n }\r\n\r\n // check if the specified template should be used in generation, enables blocking\r\n // generation according to specified flags\r\n function shouldGenerateFileType(templateConfig): boolean{\r\n if(env.metadata.config.no_controls_accessor && templateConfig.type === GeneratedFileTypes.HELPER)\r\n return false;\r\n\r\n if(!env.metadata.config.controls_accessor_only)\r\n return true;\r\n\r\n if(templateConfig.type === GeneratedFileTypes.HELPER)\r\n return true;\r\n\r\n return false;\r\n }\r\n}\r\n\r\n"]}
1
+ {"version":3,"file":"build-view.rule.js","sourceRoot":"","sources":["build-view.rule.ts"],"names":[],"mappings":"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","sourcesContent":["//import * as _ from \"lodash\";\r\n\r\nimport { MagicOptionScheme } from \"./magic-option.scheme\";\r\nimport { chain, Rule, SchematicContext, Tree } from \"@angular-devkit/schematics\";\r\nimport {\r\n CtrlButtonTypeGui,\r\n GeneratedFileTypes,\r\n MgControlType,\r\n SideType,\r\n StorageAttributeType,\r\n TableWebStyle,\r\n RowEditingTypes,\r\n TemplateConfig,\r\n WindowPosition,\r\n WindowType\r\n} from \"../../../types/index\";\r\nimport { LogLn, Util } from \"../Util\";\r\nimport { generate } from \"./generate.rule\";\r\nimport { env, GEN_FOLDER } from \"../env\";\r\n\r\nexport function buildViews(options:MagicOptionScheme, module_name:string) : Rule {\r\n return (host:Tree, context: SchematicContext)=>{\r\n const metadata = env.metadata;\r\n const views = env.app.views;\r\n let rules:Rule[] = [];\r\n\r\n //console.log(`Number of components to generate: ${views.length}`);\r\n\r\n LogLn(`*** Step 3: generate components. (${views.length} components) ***`);\r\n views.forEach( view => {\r\n const viewId = view.props.id;\r\n const dest = metadata.paths.getDestPathForComponent(module_name, view.props.component_path);\r\n\r\n LogLn(`[>] generate component ${viewId}`);\r\n\r\n const data = {\r\n MgControlType : MgControlType,\r\n theme : metadata.theme,\r\n CtrlButtonTypeGui : CtrlButtonTypeGui,\r\n SideType : SideType,\r\n StorageAttributeType: StorageAttributeType,\r\n TableWebStyle : TableWebStyle,\r\n RowEditingTypes : RowEditingTypes,\r\n WindowType : WindowType,\r\n WindowPosition : WindowPosition,\r\n Util : Util,\r\n ctrl : view,\r\n app : env.app,\r\n //_ : _,\r\n magicConfig : metadata.config,\r\n };\r\n const componentFiles: TemplateConfig[] = [\r\n {\r\n type: GeneratedFileTypes.HELPER,\r\n template: './templates/component/mg.accessor.ts',\r\n destination: dest,\r\n name: `${viewId}.mg.controls.g.ts`,\r\n data: data\r\n },\r\n {\r\n type: GeneratedFileTypes.TS,\r\n template: './templates/component/view.component.ts',\r\n destination: dest,\r\n name: `${viewId}.component.ts`,\r\n data: data\r\n },\r\n {\r\n type: GeneratedFileTypes.HTML,\r\n template: './templates/component/view.component.html',\r\n destination: dest,\r\n name: `${viewId}.component.html`,\r\n data: data\r\n },\r\n ];\r\n componentFiles.forEach( templateConfig => {\r\n if(shouldGenerateFileType(templateConfig))\r\n rules.push(generate(templateConfig,options));\r\n });\r\n });\r\n\r\n //console.log(`Number of generate rules: ${rules.length}`);\r\n\r\n return chain(rules)(host,context);\r\n }\r\n\r\n // check if the specified template should be used in generation, enables blocking\r\n // generation according to specified flags\r\n function shouldGenerateFileType(templateConfig): boolean{\r\n if(env.metadata.config.no_controls_accessor && templateConfig.type === GeneratedFileTypes.HELPER)\r\n return false;\r\n\r\n if(!env.metadata.config.controls_accessor_only)\r\n return true;\r\n\r\n if(templateConfig.type === GeneratedFileTypes.HELPER)\r\n return true;\r\n\r\n return false;\r\n }\r\n}\r\n\r\n"]}