@magic-xpa/cli 4.1201.0-dev4121.306 → 4.1201.0-dev4121.308

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 (189) hide show
  1. package/README.md +28 -28
  2. package/index.js.map +1 -1
  3. package/index.ts +1 -1
  4. package/package.json +1 -1
  5. package/src/collection.json +75 -75
  6. package/src/public_api.js.map +1 -1
  7. package/src/public_api.ts +5 -5
  8. package/src/schematics/magic-utils/config.js +2 -2
  9. package/src/schematics/magic-utils/config.js.map +1 -1
  10. package/src/schematics/magic-utils/config.ts +68 -68
  11. package/src/schematics/magic-utils/env.js +6 -5
  12. package/src/schematics/magic-utils/env.js.map +1 -1
  13. package/src/schematics/magic-utils/env.ts +51 -50
  14. package/src/schematics/magic-utils/manifest.js.map +1 -1
  15. package/src/schematics/magic-utils/manifest.ts +46 -46
  16. package/src/schematics/magic-utils/metadata.class.js +1 -1
  17. package/src/schematics/magic-utils/metadata.class.js.map +1 -1
  18. package/src/schematics/magic-utils/metadata.class.ts +159 -159
  19. package/src/schematics/magic-utils/rules/generate.rule.js.map +1 -1
  20. package/src/schematics/magic-utils/rules/generate.rule.ts +61 -61
  21. package/src/schematics/magic-utils/rules/init-add-modules.rule.js.map +1 -1
  22. package/src/schematics/magic-utils/rules/init-add-modules.rule.ts +360 -360
  23. package/src/schematics/magic-utils/rules/init-magic-metadata.rule.js.map +1 -1
  24. package/src/schematics/magic-utils/rules/init-magic-metadata.rule.ts +19 -19
  25. package/src/schematics/magic-utils/rules/magic-option.scheme.js.map +1 -1
  26. package/src/schematics/magic-utils/rules/magic-option.scheme.ts +24 -24
  27. package/src/schematics/magic-utils/utils.js.map +1 -1
  28. package/src/schematics/magic-utils/utils.ts +134 -134
  29. package/src/schematics/mg-Install-prerequisites/index.js.map +1 -1
  30. package/src/schematics/mg-Install-prerequisites/index.ts +30 -30
  31. package/src/schematics/mg-Install-prerequisites/schema.json +14 -14
  32. package/src/schematics/mg-add/files/src/app/{app.component.html → app.html} +17 -17
  33. package/src/schematics/mg-add/files/src/app/app.routes.ts +14 -14
  34. package/src/schematics/mg-add/files/src/app/magic/component-list.g.ts +9 -9
  35. package/src/schematics/mg-add/files/src/magic-styles.css +131 -131
  36. package/src/schematics/mg-add/index.js +123 -9
  37. package/src/schematics/mg-add/index.js.map +1 -1
  38. package/src/schematics/mg-add/index.ts +160 -27
  39. package/src/schematics/mg-add/schema.json +29 -29
  40. package/src/schematics/mg-add/utils/add-declaration-to-root-module.js.map +1 -1
  41. package/src/schematics/mg-add/utils/add-declaration-to-root-module.ts +12 -12
  42. package/src/schematics/mg-add/webModule/app.routes.ts +14 -14
  43. package/src/schematics/mg-add-tasks/index.js.map +1 -1
  44. package/src/schematics/mg-add-tasks/index.ts +53 -53
  45. package/src/schematics/mg-add-tasks/schema.json +41 -41
  46. package/src/schematics/mg-delete-files/index.js.map +1 -1
  47. package/src/schematics/mg-delete-files/index.ts +12 -12
  48. package/src/schematics/mg-delete-files/schema.json +14 -14
  49. package/src/schematics/mg-gen-module/index.js.map +1 -1
  50. package/src/schematics/mg-gen-module/index.ts +14 -14
  51. package/src/schematics/mg-gen-module/schema.json +24 -24
  52. package/src/schematics/mg-generate/index.js.map +1 -1
  53. package/src/schematics/mg-generate/index.ts +12 -12
  54. package/src/schematics/mg-generate/schema.json +34 -34
  55. package/src/schematics/mg-install/index.js.map +1 -1
  56. package/src/schematics/mg-install/index.ts +37 -37
  57. package/src/schematics/mg-install/schema.json +24 -24
  58. package/src/schematics/mg-routes/schema.json +14 -14
  59. package/src/schematics/mg-single-control/schema.json +24 -24
  60. package/src/schematics/utils/ast.js.map +1 -1
  61. package/src/schematics/utils/ast.ts +103 -103
  62. package/src/schematics/utils/devkit-utils/README.md +1 -1
  63. package/src/schematics/utils/devkit-utils/ast-utils.js.map +1 -1
  64. package/src/schematics/utils/devkit-utils/ast-utils.ts +570 -570
  65. package/src/schematics/utils/devkit-utils/ast-utils_old.js.map +1 -1
  66. package/src/schematics/utils/devkit-utils/ast-utils_old.ts +478 -478
  67. package/src/schematics/utils/devkit-utils/change.js.map +1 -1
  68. package/src/schematics/utils/devkit-utils/change.ts +127 -127
  69. package/src/schematics/utils/devkit-utils/component.js.map +1 -1
  70. package/src/schematics/utils/devkit-utils/component.ts +136 -136
  71. package/src/schematics/utils/devkit-utils/config.js.map +1 -1
  72. package/src/schematics/utils/devkit-utils/config.ts +120 -120
  73. package/src/schematics/utils/devkit-utils/find-module.js.map +1 -1
  74. package/src/schematics/utils/devkit-utils/find-module.ts +108 -108
  75. package/src/schematics/utils/devkit-utils/ng-ast-utils.js.map +1 -1
  76. package/src/schematics/utils/devkit-utils/ng-ast-utils.ts +84 -84
  77. package/src/schematics/utils/devkit-utils/parse-name.js.map +1 -1
  78. package/src/schematics/utils/devkit-utils/parse-name.ts +24 -24
  79. package/src/schematics/utils/devkit-utils/route-utils.js.map +1 -1
  80. package/src/schematics/utils/devkit-utils/route-utils.ts +180 -180
  81. package/src/schematics/utils/devkit-utils/validation.js +1 -1
  82. package/src/schematics/utils/devkit-utils/validation.js.map +1 -1
  83. package/src/schematics/utils/devkit-utils/validation.ts +16 -16
  84. package/src/schematics/utils/html.js.map +1 -1
  85. package/src/schematics/utils/html.ts +63 -63
  86. package/src/schematics/utils/lib-versions.js.map +1 -1
  87. package/src/schematics/utils/lib-versions.ts +3 -3
  88. package/src/schematics/utils/package.js.map +1 -1
  89. package/src/schematics/utils/package.ts +22 -22
  90. package/src/schematics/utils/testing.js.map +1 -1
  91. package/src/schematics/utils/testing.ts +25 -25
  92. package/src/types/enums/Enums.js.map +1 -1
  93. package/src/types/enums/Enums.ts +2063 -2063
  94. package/src/types/enums/generated-file-types.enum.js.map +1 -1
  95. package/src/types/enums/generated-file-types.enum.ts +6 -6
  96. package/src/types/enums/horizontal-alignments.enum.js.map +1 -1
  97. package/src/types/enums/horizontal-alignments.enum.ts +6 -6
  98. package/src/types/enums/themes.enum.js.map +1 -1
  99. package/src/types/enums/themes.enum.ts +6 -6
  100. package/src/types/index.js.map +1 -1
  101. package/src/types/index.ts +8 -8
  102. package/src/types/interfaces/app.js.map +1 -1
  103. package/src/types/interfaces/app.ts +89 -89
  104. package/src/types/interfaces/control.js.map +1 -1
  105. package/src/types/interfaces/control.ts +106 -106
  106. package/src/types/interfaces/template.config.js.map +1 -1
  107. package/src/types/interfaces/template.config.ts +11 -11
  108. package/templates/angular/src/app/{app.component.html.ejs → app.html.ejs} +17 -17
  109. package/templates/angular/src/app/cmp-array.ejs +3 -3
  110. package/templates/angular/src/app/cmp-hash.ejs +3 -3
  111. package/templates/angular/src/app/component-list.g.ts +21 -21
  112. package/templates/angular/src/{app.module.ts → app-module.ts} +70 -70
  113. package/templates/angular/src/app.routes.ts +73 -73
  114. package/templates/angular/src/{app.component.ts → app.ts} +16 -16
  115. package/templates/angular/src/styles/app.css +5 -5
  116. package/templates/attributes/button_attributes.ejs +2 -2
  117. package/templates/attributes/common/base/class.ejs +6 -6
  118. package/templates/attributes/common/base/control_type.ejs +53 -53
  119. package/templates/attributes/common/base/enabled.ejs +9 -9
  120. package/templates/attributes/common/base/imageFileName.ejs +3 -3
  121. package/templates/attributes/common/base/no_control_class.ejs +3 -3
  122. package/templates/attributes/common/base/rtol.ejs +3 -3
  123. package/templates/attributes/common/base/tabindex.ejs +11 -11
  124. package/templates/attributes/common/base/testingId.ejs +8 -8
  125. package/templates/attributes/common/base/tooltip.ejs +7 -7
  126. package/templates/attributes/common/base/visible.ejs +6 -6
  127. package/templates/attributes/common/base/wallpaper.ejs +3 -3
  128. package/templates/attributes/common/base_attributes.ejs +10 -10
  129. package/templates/attributes/common/container_attributes.ejs +6 -6
  130. package/templates/attributes/common/control_attributes.ejs +3 -3
  131. package/templates/attributes/common/format.ejs +5 -5
  132. package/templates/attributes/common/input/hint.ejs +13 -13
  133. package/templates/attributes/common/input/multiline_edit.ejs +3 -3
  134. package/templates/attributes/common/input/must_input.ejs +8 -8
  135. package/templates/attributes/common/input/password_edit.ejs +7 -7
  136. package/templates/attributes/common/input/row_editing_input_attributes.ejs +6 -6
  137. package/templates/attributes/common/input/validation.ejs +5 -5
  138. package/templates/attributes/common/input_attributes.ejs +4 -4
  139. package/templates/attributes/common/no_control_base_attributes.ejs +4 -4
  140. package/templates/attributes/common/row_editing_button_attributes.ejs +10 -10
  141. package/templates/component/view.component.html +14 -14
  142. package/templates/component/view.component.ts +136 -136
  143. package/templates/themes/basicHTML/Code/theme.module.ts +10 -10
  144. package/templates/themes/basicHTML/combobox.ejs +40 -37
  145. package/templates/themes/basicHTML/edit.ejs +179 -169
  146. package/templates/themes/basicHTML/form.ejs +4 -4
  147. package/templates/themes/basicHTML/group.ejs +4 -4
  148. package/templates/themes/basicHTML/image.ejs +7 -6
  149. package/templates/themes/basicHTML/label.ejs +11 -11
  150. package/templates/themes/basicHTML/listbox.ejs +20 -21
  151. package/templates/themes/basicHTML/push-button.ejs +27 -28
  152. package/templates/themes/basicHTML/radio.ejs +21 -20
  153. package/templates/themes/basicHTML/subform.ejs +6 -6
  154. package/templates/themes/basicHTML/tab.ejs +33 -31
  155. package/templates/themes/basicHTML/tabpage.ejs +5 -5
  156. package/templates/themes/basicHiddenHTML/Code/theme.module.ts +10 -10
  157. package/templates/themes/basicHiddenHTML/combobox.ejs +5 -5
  158. package/templates/themes/basicHiddenHTML/form.ejs +3 -3
  159. package/templates/themes/basicHiddenHTML/group.ejs +2 -2
  160. package/templates/themes/basicHiddenHTML/image.ejs +4 -4
  161. package/templates/themes/basicHiddenHTML/label.ejs +1 -1
  162. package/templates/themes/basicHiddenHTML/listbox.ejs +8 -8
  163. package/templates/themes/basicHiddenHTML/push-button.ejs +26 -26
  164. package/templates/themes/basicHiddenHTML/radio.ejs +18 -17
  165. package/templates/themes/basicHiddenHTML/tab.ejs +13 -13
  166. package/templates/themes/basicHiddenHTML/table.ejs +22 -18
  167. package/templates/themes/basicHiddenHTML/tabpage.ejs +2 -2
  168. package/templates/themes/container.ejs +37 -26
  169. package/templates/themes/control.ejs +52 -52
  170. package/templates/themes/editTypeSelector.ejs +1 -1
  171. package/templates/themes/material/Code/theme.module.ts +68 -68
  172. package/templates/themes/material/base_attributes_date.ejs +8 -8
  173. package/templates/themes/material/combobox.ejs +60 -58
  174. package/templates/themes/material/edit.ejs +208 -204
  175. package/templates/themes/material/group.ejs +3 -3
  176. package/templates/themes/material/listbox.ejs +21 -22
  177. package/templates/themes/material/push-button.ejs +27 -28
  178. package/templates/themes/material/radio.ejs +22 -22
  179. package/templates/themes/material/subform.ejs +8 -8
  180. package/templates/themes/material/tab.ejs +21 -19
  181. package/templates/themes/router_outlet.ejs +5 -5
  182. package/templates/themes/table/HTMLTable/table.ejs +41 -37
  183. package/templates/themes/table/grid/additionalComponentCode.ejs +26 -26
  184. package/templates/themes/table/grid/additionalIncludes.ejs +1 -1
  185. package/templates/themes/table/grid/table.ejs +37 -37
  186. package/templates/themes/table/repeatable/column.ejs +11 -11
  187. package/templates/themes/table/repeatable/table.ejs +32 -28
  188. package/templates/themes/tableTypeSelector.ejs +21 -21
  189. package/tsconfig.json +36 -36
@@ -1,46 +1,46 @@
1
- import { ComponentId } from "../../types/interfaces/app";
2
-
3
-
4
- export class Manifest {
5
-
6
- items = new Map<string,ComponentId>();
7
-
8
- constructor(entries : ComponentId[]){
9
- if(entries){
10
- this.convertArrayToMap(entries);
11
- }
12
- }
13
-
14
- add(entry: ComponentId) {
15
- this.items.set( entry.jsonPath , entry );
16
- }
17
- get(jsonPath:string){
18
- let compId:ComponentId = this.items.get(jsonPath);
19
- /*if(!compId){
20
- console.log(`manifest dosen't contain key: ${uniqueName}`);
21
- }*/
22
- return compId;
23
- }
24
-
25
- convertArrayToMap(entries : ComponentId[]){
26
- this.items.clear();
27
- entries.forEach(entry=>{
28
- this.items.set(entry.uniqueName,entry);
29
- });
30
- }
31
- convertMapToArray() : any[] {
32
- return [ ...this.items.values() ];
33
- }
34
-
35
- toString(){
36
- return JSON.stringify([ ...this.items.values() ]);
37
- }
38
- dump(){
39
- for( let [key,value] of this.items){
40
- console.dir(value);
41
- }
42
- }
43
-
44
- }
45
-
46
- //export const manifest = new Manifest();
1
+ import { ComponentId } from "../../types/interfaces/app";
2
+
3
+
4
+ export class Manifest {
5
+
6
+ items = new Map<string,ComponentId>();
7
+
8
+ constructor(entries : ComponentId[]){
9
+ if(entries){
10
+ this.convertArrayToMap(entries);
11
+ }
12
+ }
13
+
14
+ add(entry: ComponentId) {
15
+ this.items.set( entry.jsonPath , entry );
16
+ }
17
+ get(jsonPath:string){
18
+ let compId:ComponentId = this.items.get(jsonPath);
19
+ /*if(!compId){
20
+ console.log(`manifest dosen't contain key: ${uniqueName}`);
21
+ }*/
22
+ return compId;
23
+ }
24
+
25
+ convertArrayToMap(entries : ComponentId[]){
26
+ this.items.clear();
27
+ entries.forEach(entry=>{
28
+ this.items.set(entry.uniqueName,entry);
29
+ });
30
+ }
31
+ convertMapToArray() : any[] {
32
+ return [ ...this.items.values() ];
33
+ }
34
+
35
+ toString(){
36
+ return JSON.stringify([ ...this.items.values() ]);
37
+ }
38
+ dump(){
39
+ for( let [key,value] of this.items){
40
+ console.dir(value);
41
+ }
42
+ }
43
+
44
+ }
45
+
46
+ //export const manifest = new Manifest();
@@ -32,7 +32,7 @@ class MagicPaths {
32
32
  return `${this.rootMagicGenFolder}/${env_1.GEN_FOLDER}/${module_name}/app.routes.ts`;
33
33
  }
34
34
  get rootMagicGenFolder() { return `./${this.project.root}/src/app`; }
35
- get appComponentPath() { return `./${this.project.root}/src/app/app.component.html`; }
35
+ get appComponentPath() { return `./${this.project.root}/src/app/app.html`; }
36
36
  get appRoutesPath() { return `./${this.project.root}/src/app/app.routes.ts`; }
37
37
  get appModulePath() { return `./${this.project.root}/src/app/app.module.ts`; }
38
38
  get executionPath() { return `./${this.project.root}/src/assets/execution.properties`; }
@@ -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\";\r\nimport { AppConfig, ComponentId, Route, RouteTable } from \"../../types/interfaces/app\";\r\nimport { MagicOptionScheme } from \"./rules/magic-option.scheme\";\r\nimport { Project } from \"../utils/devkit-utils/config\";\r\nimport { env, GEN_FOLDER, METADATA_DIR } from \"./env\";\r\nimport { Manifest } from \"./manifest\";\r\nimport { getProject, readJson } from \"./utils\";\r\n\r\n\r\nexport class MagicPaths {\r\n\r\n // return the current module path\r\n // for example : for module \"WebModule1\" it returns 'src/app/magic/WebModule1'\r\n currentModulePath(module_name:string) {\r\n if (module_name !== \"\") {\r\n return `${this.rootMagicGenFolder}/${GEN_FOLDER}/${module_name}`;\r\n }\r\n\r\n return `${this.rootMagicGenFolder}/${GEN_FOLDER}`;\r\n\r\n\r\n }\r\n\r\n // return the destanation path for create the component\r\n // for example : for module \"WebModule1\" component \"WebModule1/folder1/bb/cc/it returns 'src/app/magic/WebModule1'\r\n getDestPathForComponent(module_name:string, componentPath:string) {\r\n return `${this.currentModulePath(module_name)}/${componentPath}`;\r\n }\r\n\r\n getJsonPathForComponent(cmpJsonPath:string) {\r\n return `${this.metadataFolderPath}/${cmpJsonPath}.json`;\r\n }\r\n\r\n getRelativePathForComponentInModule(module_name:string, cmpJsonPath:string) {\r\n let relativePathForComponentInModule = `${cmpJsonPath}`;\r\n if (module_name !== \"\")\r\n relativePathForComponentInModule = `${module_name}/${cmpJsonPath}`;\r\n\r\n return relativePathForComponentInModule;\r\n }\r\n\r\n getRoutePathForWebModule(module_name:string) {\r\n\r\n if (module_name == \"\")\r\n return this.appRoutesPath;\r\n\r\n return `${this.rootMagicGenFolder}/${GEN_FOLDER}/${module_name}/app.routes.ts`;\r\n }\r\n get rootMagicGenFolder(){ return `./${this.project.root}/src/app`; }\r\n get appComponentPath(){ return `./${this.project.root}/src/app/app.component.html`}\r\n get appRoutesPath(){ return `./${this.project.root}/src/app/app.routes.ts`}\r\n get appModulePath(){ return `./${this.project.root}/src/app/app.module.ts`}\r\n get executionPath(){ return `./${this.project.root}/src/assets/execution.properties`}\r\n get magicStylePath(){ return `./${this.project.root}/src/magic-styles.css`}\r\n get angularJsonPath(){ return `./angular.json`}\r\n get tsConfigAppJsonPath(){ return `./${this.project.root}/tsconfig.app.json`}\r\n\r\n // get the relative path of module to be used in LazyLoadMap\r\n magicGenLibModulePath (moduleName){\r\n\r\n let rootPath = this.project.root == '' ? this.project.root: this.project.root + '/';\r\n let modulepath = rootPath+`src/app/${GEN_FOLDER}`;\r\n if (moduleName !== \"\") {\r\n return `${modulepath}/${moduleName}/magic.gen.lib.module`;\r\n }\r\n return `${modulepath}/magic.gen.lib.module`;\r\n }\r\n\r\n // Files under gen folder\r\n get magicGenFolderPath (){ return `./${this.project.root}/src/app/${GEN_FOLDER}`}\r\n\r\n componentListPathForCurrentModuleName (module_name:string):string{\r\n return `./${this.project.root}/src/app/${GEN_FOLDER}/${module_name}/component-list.g.ts`\r\n }\r\n componentListPath (module_name:string):string{\r\n\r\n if (module_name !== \"\"){\r\n return this.componentListPathForCurrentModuleName(module_name);\r\n }\r\n return this.rootMagicComponentListPath;\r\n }\r\n\r\n get rootMagicComponentListPath (){\r\n\r\n return `./${this.project.root}/src/app/${GEN_FOLDER}/component-list.g.ts`\r\n }\r\n\r\n get magicGenLibModule (){ return `./${this.project.root}/src/app/${GEN_FOLDER}/magic.gen.lib.module.ts`}\r\n\r\n get favIconPath(){ return `./${this.project.root}/public/favicon.ico`; }\r\n\r\n get metadataFolderPath(){ return `./${this.project.root}/${METADATA_DIR}`; }\r\n get manifestPath (){ return `./${this.project.root}/${METADATA_DIR}/manifest.json`; }\r\n get configPath (){ return `./${this.project.root}/${METADATA_DIR}/config.json`; }\r\n get programListPath (){return `./${this.project.root}/${METADATA_DIR}/ProgramsList.json`; }\r\n get routesPath (){ return `./${this.project.root}/${METADATA_DIR}/routes.json`; }\r\n\r\n constructor(protected project:Project){\r\n }\r\n}\r\n\r\n\r\nexport class MagicMetadata {\r\n\r\n private _config: AppConfig;\r\n private _routesTable: RouteTable[];\r\n private _programListContents: any;\r\n\r\n paths: MagicPaths;\r\n\r\n get theme() {\r\n if (!this.options.theme) {\r\n this.options.theme = env.metadata.config ?env.metadata.config.theme : 'basicHTML';\r\n }\r\n return this.options.theme;\r\n }\r\n\r\n get allow_testing() {\r\n if (!this.options.allowTesting) {\r\n this.options.allowTesting = env.metadata.config ?env.metadata.config.allow_testing: false;\r\n }\r\n return this.options.allowTesting;\r\n }\r\n get config() {\r\n if (this._config) return this._config;\r\n return this.loadConfig();\r\n }\r\n\r\n get programListContents(){\r\n if(this._programListContents) return this._programListContents;\r\n return this.loadProgramList();\r\n }\r\n\r\n get routesTable(){\r\n if (this._routesTable) return this._routesTable;\r\n return this.loadRoutes();\r\n }\r\n\r\n constructor(public host: Tree, public context: SchematicContext, public options: MagicOptionScheme) {\r\n this.paths = new MagicPaths(getProject(host, options.project));\r\n }\r\n\r\n loadConfig() {\r\n this._config = readJson(this.host, this.paths.configPath);\r\n return this._config;\r\n }\r\n\r\n loadProgramList(){\r\n this._programListContents = readJson(this.host, this.paths.programListPath);\r\n return this._programListContents;\r\n }\r\n\r\n loadRoutes() {\r\n this._routesTable = readJson(this.host, this.paths.routesPath);\r\n return this._routesTable;\r\n }\r\n}\r\n\r\n\r\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.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}/public/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 programListPath (){return `./${this.project.root}/${METADATA_DIR}/ProgramsList.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 private _programListContents: any;\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\n get programListContents(){\n if(this._programListContents) return this._programListContents;\n return this.loadProgramList();\n }\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\n loadProgramList(){\n this._programListContents = readJson(this.host, this.paths.programListPath);\n return this._programListContents;\n }\n\n loadRoutes() {\n this._routesTable = readJson(this.host, this.paths.routesPath);\n return this._routesTable;\n }\n}\n\n\n"]}
@@ -1,159 +1,159 @@
1
- import { SchematicContext, Tree } from "@angular-devkit/schematics";
2
- import { AppConfig, ComponentId, Route, RouteTable } from "../../types/interfaces/app";
3
- import { MagicOptionScheme } from "./rules/magic-option.scheme";
4
- import { Project } from "../utils/devkit-utils/config";
5
- import { env, GEN_FOLDER, METADATA_DIR } from "./env";
6
- import { Manifest } from "./manifest";
7
- import { getProject, readJson } from "./utils";
8
-
9
-
10
- export class MagicPaths {
11
-
12
- // return the current module path
13
- // for example : for module "WebModule1" it returns 'src/app/magic/WebModule1'
14
- currentModulePath(module_name:string) {
15
- if (module_name !== "") {
16
- return `${this.rootMagicGenFolder}/${GEN_FOLDER}/${module_name}`;
17
- }
18
-
19
- return `${this.rootMagicGenFolder}/${GEN_FOLDER}`;
20
-
21
-
22
- }
23
-
24
- // return the destanation path for create the component
25
- // for example : for module "WebModule1" component "WebModule1/folder1/bb/cc/it returns 'src/app/magic/WebModule1'
26
- getDestPathForComponent(module_name:string, componentPath:string) {
27
- return `${this.currentModulePath(module_name)}/${componentPath}`;
28
- }
29
-
30
- getJsonPathForComponent(cmpJsonPath:string) {
31
- return `${this.metadataFolderPath}/${cmpJsonPath}.json`;
32
- }
33
-
34
- getRelativePathForComponentInModule(module_name:string, cmpJsonPath:string) {
35
- let relativePathForComponentInModule = `${cmpJsonPath}`;
36
- if (module_name !== "")
37
- relativePathForComponentInModule = `${module_name}/${cmpJsonPath}`;
38
-
39
- return relativePathForComponentInModule;
40
- }
41
-
42
- getRoutePathForWebModule(module_name:string) {
43
-
44
- if (module_name == "")
45
- return this.appRoutesPath;
46
-
47
- return `${this.rootMagicGenFolder}/${GEN_FOLDER}/${module_name}/app.routes.ts`;
48
- }
49
- get rootMagicGenFolder(){ return `./${this.project.root}/src/app`; }
50
- get appComponentPath(){ return `./${this.project.root}/src/app/app.component.html`}
51
- get appRoutesPath(){ return `./${this.project.root}/src/app/app.routes.ts`}
52
- get appModulePath(){ return `./${this.project.root}/src/app/app.module.ts`}
53
- get executionPath(){ return `./${this.project.root}/src/assets/execution.properties`}
54
- get magicStylePath(){ return `./${this.project.root}/src/magic-styles.css`}
55
- get angularJsonPath(){ return `./angular.json`}
56
- get tsConfigAppJsonPath(){ return `./${this.project.root}/tsconfig.app.json`}
57
-
58
- // get the relative path of module to be used in LazyLoadMap
59
- magicGenLibModulePath (moduleName){
60
-
61
- let rootPath = this.project.root == '' ? this.project.root: this.project.root + '/';
62
- let modulepath = rootPath+`src/app/${GEN_FOLDER}`;
63
- if (moduleName !== "") {
64
- return `${modulepath}/${moduleName}/magic.gen.lib.module`;
65
- }
66
- return `${modulepath}/magic.gen.lib.module`;
67
- }
68
-
69
- // Files under gen folder
70
- get magicGenFolderPath (){ return `./${this.project.root}/src/app/${GEN_FOLDER}`}
71
-
72
- componentListPathForCurrentModuleName (module_name:string):string{
73
- return `./${this.project.root}/src/app/${GEN_FOLDER}/${module_name}/component-list.g.ts`
74
- }
75
- componentListPath (module_name:string):string{
76
-
77
- if (module_name !== ""){
78
- return this.componentListPathForCurrentModuleName(module_name);
79
- }
80
- return this.rootMagicComponentListPath;
81
- }
82
-
83
- get rootMagicComponentListPath (){
84
-
85
- return `./${this.project.root}/src/app/${GEN_FOLDER}/component-list.g.ts`
86
- }
87
-
88
- get magicGenLibModule (){ return `./${this.project.root}/src/app/${GEN_FOLDER}/magic.gen.lib.module.ts`}
89
-
90
- get favIconPath(){ return `./${this.project.root}/public/favicon.ico`; }
91
-
92
- get metadataFolderPath(){ return `./${this.project.root}/${METADATA_DIR}`; }
93
- get manifestPath (){ return `./${this.project.root}/${METADATA_DIR}/manifest.json`; }
94
- get configPath (){ return `./${this.project.root}/${METADATA_DIR}/config.json`; }
95
- get programListPath (){return `./${this.project.root}/${METADATA_DIR}/ProgramsList.json`; }
96
- get routesPath (){ return `./${this.project.root}/${METADATA_DIR}/routes.json`; }
97
-
98
- constructor(protected project:Project){
99
- }
100
- }
101
-
102
-
103
- export class MagicMetadata {
104
-
105
- private _config: AppConfig;
106
- private _routesTable: RouteTable[];
107
- private _programListContents: any;
108
-
109
- paths: MagicPaths;
110
-
111
- get theme() {
112
- if (!this.options.theme) {
113
- this.options.theme = env.metadata.config ?env.metadata.config.theme : 'basicHTML';
114
- }
115
- return this.options.theme;
116
- }
117
-
118
- get allow_testing() {
119
- if (!this.options.allowTesting) {
120
- this.options.allowTesting = env.metadata.config ?env.metadata.config.allow_testing: false;
121
- }
122
- return this.options.allowTesting;
123
- }
124
- get config() {
125
- if (this._config) return this._config;
126
- return this.loadConfig();
127
- }
128
-
129
- get programListContents(){
130
- if(this._programListContents) return this._programListContents;
131
- return this.loadProgramList();
132
- }
133
-
134
- get routesTable(){
135
- if (this._routesTable) return this._routesTable;
136
- return this.loadRoutes();
137
- }
138
-
139
- constructor(public host: Tree, public context: SchematicContext, public options: MagicOptionScheme) {
140
- this.paths = new MagicPaths(getProject(host, options.project));
141
- }
142
-
143
- loadConfig() {
144
- this._config = readJson(this.host, this.paths.configPath);
145
- return this._config;
146
- }
147
-
148
- loadProgramList(){
149
- this._programListContents = readJson(this.host, this.paths.programListPath);
150
- return this._programListContents;
151
- }
152
-
153
- loadRoutes() {
154
- this._routesTable = readJson(this.host, this.paths.routesPath);
155
- return this._routesTable;
156
- }
157
- }
158
-
159
-
1
+ import { SchematicContext, Tree } from "@angular-devkit/schematics";
2
+ import { AppConfig, ComponentId, Route, RouteTable } from "../../types/interfaces/app";
3
+ import { MagicOptionScheme } from "./rules/magic-option.scheme";
4
+ import { Project } from "../utils/devkit-utils/config";
5
+ import { env, GEN_FOLDER, METADATA_DIR } from "./env";
6
+ import { Manifest } from "./manifest";
7
+ import { getProject, readJson } from "./utils";
8
+
9
+
10
+ export class MagicPaths {
11
+
12
+ // return the current module path
13
+ // for example : for module "WebModule1" it returns 'src/app/magic/WebModule1'
14
+ currentModulePath(module_name:string) {
15
+ if (module_name !== "") {
16
+ return `${this.rootMagicGenFolder}/${GEN_FOLDER}/${module_name}`;
17
+ }
18
+
19
+ return `${this.rootMagicGenFolder}/${GEN_FOLDER}`;
20
+
21
+
22
+ }
23
+
24
+ // return the destanation path for create the component
25
+ // for example : for module "WebModule1" component "WebModule1/folder1/bb/cc/it returns 'src/app/magic/WebModule1'
26
+ getDestPathForComponent(module_name:string, componentPath:string) {
27
+ return `${this.currentModulePath(module_name)}/${componentPath}`;
28
+ }
29
+
30
+ getJsonPathForComponent(cmpJsonPath:string) {
31
+ return `${this.metadataFolderPath}/${cmpJsonPath}.json`;
32
+ }
33
+
34
+ getRelativePathForComponentInModule(module_name:string, cmpJsonPath:string) {
35
+ let relativePathForComponentInModule = `${cmpJsonPath}`;
36
+ if (module_name !== "")
37
+ relativePathForComponentInModule = `${module_name}/${cmpJsonPath}`;
38
+
39
+ return relativePathForComponentInModule;
40
+ }
41
+
42
+ getRoutePathForWebModule(module_name:string) {
43
+
44
+ if (module_name == "")
45
+ return this.appRoutesPath;
46
+
47
+ return `${this.rootMagicGenFolder}/${GEN_FOLDER}/${module_name}/app.routes.ts`;
48
+ }
49
+ get rootMagicGenFolder(){ return `./${this.project.root}/src/app`; }
50
+ get appComponentPath(){ return `./${this.project.root}/src/app/app.html`}
51
+ get appRoutesPath(){ return `./${this.project.root}/src/app/app.routes.ts`}
52
+ get appModulePath(){ return `./${this.project.root}/src/app/app.module.ts`}
53
+ get executionPath(){ return `./${this.project.root}/src/assets/execution.properties`}
54
+ get magicStylePath(){ return `./${this.project.root}/src/magic-styles.css`}
55
+ get angularJsonPath(){ return `./angular.json`}
56
+ get tsConfigAppJsonPath(){ return `./${this.project.root}/tsconfig.app.json`}
57
+
58
+ // get the relative path of module to be used in LazyLoadMap
59
+ magicGenLibModulePath (moduleName){
60
+
61
+ let rootPath = this.project.root == '' ? this.project.root: this.project.root + '/';
62
+ let modulepath = rootPath+`src/app/${GEN_FOLDER}`;
63
+ if (moduleName !== "") {
64
+ return `${modulepath}/${moduleName}/magic.gen.lib.module`;
65
+ }
66
+ return `${modulepath}/magic.gen.lib.module`;
67
+ }
68
+
69
+ // Files under gen folder
70
+ get magicGenFolderPath (){ return `./${this.project.root}/src/app/${GEN_FOLDER}`}
71
+
72
+ componentListPathForCurrentModuleName (module_name:string):string{
73
+ return `./${this.project.root}/src/app/${GEN_FOLDER}/${module_name}/component-list.g.ts`
74
+ }
75
+ componentListPath (module_name:string):string{
76
+
77
+ if (module_name !== ""){
78
+ return this.componentListPathForCurrentModuleName(module_name);
79
+ }
80
+ return this.rootMagicComponentListPath;
81
+ }
82
+
83
+ get rootMagicComponentListPath (){
84
+
85
+ return `./${this.project.root}/src/app/${GEN_FOLDER}/component-list.g.ts`
86
+ }
87
+
88
+ get magicGenLibModule (){ return `./${this.project.root}/src/app/${GEN_FOLDER}/magic.gen.lib.module.ts`}
89
+
90
+ get favIconPath(){ return `./${this.project.root}/public/favicon.ico`; }
91
+
92
+ get metadataFolderPath(){ return `./${this.project.root}/${METADATA_DIR}`; }
93
+ get manifestPath (){ return `./${this.project.root}/${METADATA_DIR}/manifest.json`; }
94
+ get configPath (){ return `./${this.project.root}/${METADATA_DIR}/config.json`; }
95
+ get programListPath (){return `./${this.project.root}/${METADATA_DIR}/ProgramsList.json`; }
96
+ get routesPath (){ return `./${this.project.root}/${METADATA_DIR}/routes.json`; }
97
+
98
+ constructor(protected project:Project){
99
+ }
100
+ }
101
+
102
+
103
+ export class MagicMetadata {
104
+
105
+ private _config: AppConfig;
106
+ private _routesTable: RouteTable[];
107
+ private _programListContents: any;
108
+
109
+ paths: MagicPaths;
110
+
111
+ get theme() {
112
+ if (!this.options.theme) {
113
+ this.options.theme = env.metadata.config ?env.metadata.config.theme : 'basicHTML';
114
+ }
115
+ return this.options.theme;
116
+ }
117
+
118
+ get allow_testing() {
119
+ if (!this.options.allowTesting) {
120
+ this.options.allowTesting = env.metadata.config ?env.metadata.config.allow_testing: false;
121
+ }
122
+ return this.options.allowTesting;
123
+ }
124
+ get config() {
125
+ if (this._config) return this._config;
126
+ return this.loadConfig();
127
+ }
128
+
129
+ get programListContents(){
130
+ if(this._programListContents) return this._programListContents;
131
+ return this.loadProgramList();
132
+ }
133
+
134
+ get routesTable(){
135
+ if (this._routesTable) return this._routesTable;
136
+ return this.loadRoutes();
137
+ }
138
+
139
+ constructor(public host: Tree, public context: SchematicContext, public options: MagicOptionScheme) {
140
+ this.paths = new MagicPaths(getProject(host, options.project));
141
+ }
142
+
143
+ loadConfig() {
144
+ this._config = readJson(this.host, this.paths.configPath);
145
+ return this._config;
146
+ }
147
+
148
+ loadProgramList(){
149
+ this._programListContents = readJson(this.host, this.paths.programListPath);
150
+ return this._programListContents;
151
+ }
152
+
153
+ loadRoutes() {
154
+ this._routesTable = readJson(this.host, this.paths.routesPath);
155
+ return this._routesTable;
156
+ }
157
+ }
158
+
159
+
@@ -1 +1 @@
1
- {"version":3,"file":"generate.rule.js","sourceRoot":"","sources":["generate.rule.ts"],"names":[],"mappings":";;AAYA,wCAiBC;AAED,4BA6BC;AA5DD,2BAAmC;AACnC,0CAA0C;AAC1C,0CAA2C;AAI3C,kCAAiC;AACjC,gCAA0C;AAC1C,0CAAoE;AAIpE,SAAgB,cAAc,CAAC,MAAe,EAAC,IAAwB;IACrE,MAAM,MAAM,GAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE;QACjD,uBAAuB,EAAE,CAAC;QAC1B,kBAAkB,EAAO,CAAC;QAC1B,iBAAiB,EAAQ,wBAAwB;QAChD,aAAa,EAAG,0BAA0B;KAC5C,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG;QACZ,CAAC,0BAAkB,CAAC,IAAI,CAAC,EAAE,MAAM;QACjC,gFAAgF;QAChF,CAAC,0BAAkB,CAAC,EAAE,CAAC,EAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAC,aAAa,EAAG,0BAA0B,EAAC,CAAC;QACzG,CAAC,0BAAkB,CAAC,MAAM,CAAC,EAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;QACnE,CAAC,0BAAkB,CAAC,GAAG,CAAC,EAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAG,CAAC;KAClE,CAAC;IAEF,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;AACvB,CAAC;AAED,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,EAAC,cAAc,EAAG,IAAI,EAAC,EACxB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YACb,IAAI,GAAG,EAAE,CAAC;gBAAC,IAAA,aAAM,EAAC,GAAG,CAAC,CAAC;gBAAC,OAAM;YAAC,CAAC;YAEhC,IAAI,CAAC;gBACH,0CAA0C;gBACxC,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7C,GAAG;gBAEH,IAAI,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBAE9C,IAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC,CAAC;oBACpB,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAA;gBAC5D,CAAC;qBAAK,CAAC;oBACL,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;gBAC1D,CAAC;YACH,CAAC;YACD,OAAO,GAAG,EAAE,CAAC;gBACX,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC;gBACf,IAAA,aAAM,EAAC,GAAG,CAAC,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;QACL,OAAO,IAAI,CAAC;IACd,CAAC,CAAA;AACH,CAAC","sourcesContent":["import * as EJS from \"ejs\";\r\n//import * as prettier from \"prettier\";\r\nimport * as jsbeautify from \"js-beautify\";\r\n\r\nimport { Rule, SchematicContext, Tree } from \"@angular-devkit/schematics\";\r\n\r\nimport { logErr } from \"../Util\";\r\nimport { MAGIC_CLI_FOLDER } from \"../env\";\r\nimport { GeneratedFileTypes, TemplateConfig } from \"../../../types\";\r\nimport { MagicOptionScheme } from \"./magic-option.scheme\";\r\nimport { prettierConfig } from \"../config\";\r\n\r\nexport function createGenFuncs(output : string,type: GeneratedFileTypes ) {\r\n const htmlFn = jsbeautify.html.bind(this, output, {\r\n \"max_preserve_newlines\": 0,\r\n \"wrap_line_length\" : 0,\r\n \"wrap_attributes\" : \"force-expand-multiline\",\r\n \"brace_style\" : 'collapse,preserve-inline'\r\n });\r\n\r\n const fnMap = {\r\n [GeneratedFileTypes.HTML]: htmlFn,\r\n //[GeneratedFileTypes.TS] : prettier.format.bind(this, output, prettierConfig),\r\n [GeneratedFileTypes.TS] : jsbeautify.js.bind(this, output, {\"brace_style\" : 'collapse,preserve-inline'}),\r\n [GeneratedFileTypes.HELPER] : jsbeautify.js.bind(this, output, {}),\r\n [GeneratedFileTypes.CSS] : jsbeautify.css.bind(this, output, { })\r\n };\r\n\r\n return fnMap[type]();\r\n}\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 {\"rmWhitespace\" : true},\r\n (err, output) => {\r\n if (err) { logErr(err); return }\r\n\r\n try {\r\n //if(file.type != GeneratedFileTypes.TS) {\r\n output = createGenFuncs(output, file.type);\r\n //}\r\n\r\n let path = `${file.destination}/${file.name}`;\r\n\r\n if(host.exists(path)){\r\n host.overwrite(`${file.destination}/${file.name}`, output)\r\n } else{\r\n host.create(`${file.destination}/${file.name}`, output);\r\n }\r\n }\r\n catch (err) {\r\n logErr(output);\r\n logErr(err);\r\n }\r\n });\r\n return host;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"generate.rule.js","sourceRoot":"","sources":["generate.rule.ts"],"names":[],"mappings":";;AAYA,wCAiBC;AAED,4BA6BC;AA5DD,2BAAmC;AACnC,0CAA0C;AAC1C,0CAA2C;AAI3C,kCAAiC;AACjC,gCAA0C;AAC1C,0CAAoE;AAIpE,SAAgB,cAAc,CAAC,MAAe,EAAC,IAAwB;IACrE,MAAM,MAAM,GAAI,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE;QACjD,uBAAuB,EAAE,CAAC;QAC1B,kBAAkB,EAAO,CAAC;QAC1B,iBAAiB,EAAQ,wBAAwB;QAChD,aAAa,EAAG,0BAA0B;KAC5C,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG;QACZ,CAAC,0BAAkB,CAAC,IAAI,CAAC,EAAE,MAAM;QACjC,gFAAgF;QAChF,CAAC,0BAAkB,CAAC,EAAE,CAAC,EAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAC,aAAa,EAAG,0BAA0B,EAAC,CAAC;QACzG,CAAC,0BAAkB,CAAC,MAAM,CAAC,EAAI,UAAU,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,CAAC;QACnE,CAAC,0BAAkB,CAAC,GAAG,CAAC,EAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,EAAG,CAAC;KAClE,CAAC;IAEF,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;AACvB,CAAC;AAED,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,EAAC,cAAc,EAAG,IAAI,EAAC,EACxB,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE;YACb,IAAI,GAAG,EAAE,CAAC;gBAAC,IAAA,aAAM,EAAC,GAAG,CAAC,CAAC;gBAAC,OAAM;YAAC,CAAC;YAEhC,IAAI,CAAC;gBACH,0CAA0C;gBACxC,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;gBAC7C,GAAG;gBAEH,IAAI,IAAI,GAAG,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBAE9C,IAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAC,CAAC;oBACpB,IAAI,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAA;gBAC5D,CAAC;qBAAK,CAAC;oBACL,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;gBAC1D,CAAC;YACH,CAAC;YACD,OAAO,GAAG,EAAE,CAAC;gBACX,IAAA,aAAM,EAAC,MAAM,CAAC,CAAC;gBACf,IAAA,aAAM,EAAC,GAAG,CAAC,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;QACL,OAAO,IAAI,CAAC;IACd,CAAC,CAAA;AACH,CAAC","sourcesContent":["import * as EJS from \"ejs\";\n//import * as prettier from \"prettier\";\nimport * as jsbeautify from \"js-beautify\";\n\nimport { Rule, SchematicContext, Tree } from \"@angular-devkit/schematics\";\n\nimport { logErr } from \"../Util\";\nimport { MAGIC_CLI_FOLDER } from \"../env\";\nimport { GeneratedFileTypes, TemplateConfig } from \"../../../types\";\nimport { MagicOptionScheme } from \"./magic-option.scheme\";\nimport { prettierConfig } from \"../config\";\n\nexport function createGenFuncs(output : string,type: GeneratedFileTypes ) {\n const htmlFn = jsbeautify.html.bind(this, output, {\n \"max_preserve_newlines\": 0,\n \"wrap_line_length\" : 0,\n \"wrap_attributes\" : \"force-expand-multiline\",\n \"brace_style\" : 'collapse,preserve-inline'\n });\n\n const fnMap = {\n [GeneratedFileTypes.HTML]: htmlFn,\n //[GeneratedFileTypes.TS] : prettier.format.bind(this, output, prettierConfig),\n [GeneratedFileTypes.TS] : jsbeautify.js.bind(this, output, {\"brace_style\" : 'collapse,preserve-inline'}),\n [GeneratedFileTypes.HELPER] : jsbeautify.js.bind(this, output, {}),\n [GeneratedFileTypes.CSS] : jsbeautify.css.bind(this, output, { })\n };\n\n return fnMap[type]();\n}\n\nexport function generate(file: TemplateConfig,options:MagicOptionScheme) :Rule{\n return (host:Tree, context: SchematicContext) => {\n EJS.renderFile(\n `${MAGIC_CLI_FOLDER}/${file.template}`,\n file.data,\n {\"rmWhitespace\" : true},\n (err, output) => {\n if (err) { logErr(err); return }\n\n try {\n //if(file.type != GeneratedFileTypes.TS) {\n output = createGenFuncs(output, file.type);\n //}\n\n let path = `${file.destination}/${file.name}`;\n\n if(host.exists(path)){\n host.overwrite(`${file.destination}/${file.name}`, output)\n } else{\n host.create(`${file.destination}/${file.name}`, output);\n }\n }\n catch (err) {\n logErr(output);\n logErr(err);\n }\n });\n return host;\n }\n}\n"]}
@@ -1,61 +1,61 @@
1
- import * as EJS from "ejs";
2
- //import * as prettier from "prettier";
3
- import * as jsbeautify from "js-beautify";
4
-
5
- import { Rule, SchematicContext, Tree } from "@angular-devkit/schematics";
6
-
7
- import { logErr } from "../Util";
8
- import { MAGIC_CLI_FOLDER } from "../env";
9
- import { GeneratedFileTypes, TemplateConfig } from "../../../types";
10
- import { MagicOptionScheme } from "./magic-option.scheme";
11
- import { prettierConfig } from "../config";
12
-
13
- export function createGenFuncs(output : string,type: GeneratedFileTypes ) {
14
- const htmlFn = jsbeautify.html.bind(this, output, {
15
- "max_preserve_newlines": 0,
16
- "wrap_line_length" : 0,
17
- "wrap_attributes" : "force-expand-multiline",
18
- "brace_style" : 'collapse,preserve-inline'
19
- });
20
-
21
- const fnMap = {
22
- [GeneratedFileTypes.HTML]: htmlFn,
23
- //[GeneratedFileTypes.TS] : prettier.format.bind(this, output, prettierConfig),
24
- [GeneratedFileTypes.TS] : jsbeautify.js.bind(this, output, {"brace_style" : 'collapse,preserve-inline'}),
25
- [GeneratedFileTypes.HELPER] : jsbeautify.js.bind(this, output, {}),
26
- [GeneratedFileTypes.CSS] : jsbeautify.css.bind(this, output, { })
27
- };
28
-
29
- return fnMap[type]();
30
- }
31
-
32
- export function generate(file: TemplateConfig,options:MagicOptionScheme) :Rule{
33
- return (host:Tree, context: SchematicContext) => {
34
- EJS.renderFile(
35
- `${MAGIC_CLI_FOLDER}/${file.template}`,
36
- file.data,
37
- {"rmWhitespace" : true},
38
- (err, output) => {
39
- if (err) { logErr(err); return }
40
-
41
- try {
42
- //if(file.type != GeneratedFileTypes.TS) {
43
- output = createGenFuncs(output, file.type);
44
- //}
45
-
46
- let path = `${file.destination}/${file.name}`;
47
-
48
- if(host.exists(path)){
49
- host.overwrite(`${file.destination}/${file.name}`, output)
50
- } else{
51
- host.create(`${file.destination}/${file.name}`, output);
52
- }
53
- }
54
- catch (err) {
55
- logErr(output);
56
- logErr(err);
57
- }
58
- });
59
- return host;
60
- }
61
- }
1
+ import * as EJS from "ejs";
2
+ //import * as prettier from "prettier";
3
+ import * as jsbeautify from "js-beautify";
4
+
5
+ import { Rule, SchematicContext, Tree } from "@angular-devkit/schematics";
6
+
7
+ import { logErr } from "../Util";
8
+ import { MAGIC_CLI_FOLDER } from "../env";
9
+ import { GeneratedFileTypes, TemplateConfig } from "../../../types";
10
+ import { MagicOptionScheme } from "./magic-option.scheme";
11
+ import { prettierConfig } from "../config";
12
+
13
+ export function createGenFuncs(output : string,type: GeneratedFileTypes ) {
14
+ const htmlFn = jsbeautify.html.bind(this, output, {
15
+ "max_preserve_newlines": 0,
16
+ "wrap_line_length" : 0,
17
+ "wrap_attributes" : "force-expand-multiline",
18
+ "brace_style" : 'collapse,preserve-inline'
19
+ });
20
+
21
+ const fnMap = {
22
+ [GeneratedFileTypes.HTML]: htmlFn,
23
+ //[GeneratedFileTypes.TS] : prettier.format.bind(this, output, prettierConfig),
24
+ [GeneratedFileTypes.TS] : jsbeautify.js.bind(this, output, {"brace_style" : 'collapse,preserve-inline'}),
25
+ [GeneratedFileTypes.HELPER] : jsbeautify.js.bind(this, output, {}),
26
+ [GeneratedFileTypes.CSS] : jsbeautify.css.bind(this, output, { })
27
+ };
28
+
29
+ return fnMap[type]();
30
+ }
31
+
32
+ export function generate(file: TemplateConfig,options:MagicOptionScheme) :Rule{
33
+ return (host:Tree, context: SchematicContext) => {
34
+ EJS.renderFile(
35
+ `${MAGIC_CLI_FOLDER}/${file.template}`,
36
+ file.data,
37
+ {"rmWhitespace" : true},
38
+ (err, output) => {
39
+ if (err) { logErr(err); return }
40
+
41
+ try {
42
+ //if(file.type != GeneratedFileTypes.TS) {
43
+ output = createGenFuncs(output, file.type);
44
+ //}
45
+
46
+ let path = `${file.destination}/${file.name}`;
47
+
48
+ if(host.exists(path)){
49
+ host.overwrite(`${file.destination}/${file.name}`, output)
50
+ } else{
51
+ host.create(`${file.destination}/${file.name}`, output);
52
+ }
53
+ }
54
+ catch (err) {
55
+ logErr(output);
56
+ logErr(err);
57
+ }
58
+ });
59
+ return host;
60
+ }
61
+ }