@magic-xpa/cli 4.1100.0-dev4110.99 → 4.1100.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (305) hide show
  1. package/README.md +28 -28
  2. package/index.d.ts +1 -1
  3. package/index.js +4 -4
  4. package/index.js.map +1 -1
  5. package/index.ts +1 -1
  6. package/package.json +2 -2
  7. package/src/collection.json +75 -75
  8. package/src/public_api.d.ts +3 -3
  9. package/src/public_api.js +6 -6
  10. package/src/public_api.js.map +1 -1
  11. package/src/public_api.ts +5 -5
  12. package/src/schematics/magic-utils/Util.d.ts +6 -6
  13. package/src/schematics/magic-utils/Util.js +26 -26
  14. package/src/schematics/magic-utils/Util.js.map +1 -1
  15. package/src/schematics/magic-utils/config.d.ts +12 -12
  16. package/src/schematics/magic-utils/config.js +56 -56
  17. package/src/schematics/magic-utils/config.js.map +1 -1
  18. package/src/schematics/magic-utils/config.ts +68 -68
  19. package/src/schematics/magic-utils/env.d.ts +23 -23
  20. package/src/schematics/magic-utils/env.js +39 -39
  21. package/src/schematics/magic-utils/env.js.map +1 -1
  22. package/src/schematics/magic-utils/env.ts +50 -50
  23. package/src/schematics/magic-utils/manifest.d.ts +11 -11
  24. package/src/schematics/magic-utils/manifest.js +40 -40
  25. package/src/schematics/magic-utils/manifest.js.map +1 -1
  26. package/src/schematics/magic-utils/manifest.ts +46 -46
  27. package/src/schematics/magic-utils/metadata.class.d.ts +51 -51
  28. package/src/schematics/magic-utils/metadata.class.js +124 -124
  29. package/src/schematics/magic-utils/metadata.class.js.map +1 -1
  30. package/src/schematics/magic-utils/metadata.class.ts +159 -159
  31. package/src/schematics/magic-utils/process-json.d.ts +2 -2
  32. package/src/schematics/magic-utils/process-json.js +157 -158
  33. package/src/schematics/magic-utils/process-json.js.map +1 -1
  34. package/src/schematics/magic-utils/rules/build-control.rule.d.ts +5 -5
  35. package/src/schematics/magic-utils/rules/build-control.rule.js +73 -74
  36. package/src/schematics/magic-utils/rules/build-control.rule.js.map +1 -1
  37. package/src/schematics/magic-utils/rules/build-view.rule.d.ts +3 -3
  38. package/src/schematics/magic-utils/rules/build-view.rule.js +82 -83
  39. package/src/schematics/magic-utils/rules/build-view.rule.js.map +1 -1
  40. package/src/schematics/magic-utils/rules/component-list.rule.d.ts +3 -3
  41. package/src/schematics/magic-utils/rules/component-list.rule.js +316 -317
  42. package/src/schematics/magic-utils/rules/component-list.rule.js.map +1 -1
  43. package/src/schematics/magic-utils/rules/generate.rule.d.ts +5 -5
  44. package/src/schematics/magic-utils/rules/generate.rule.js +53 -54
  45. package/src/schematics/magic-utils/rules/generate.rule.js.map +1 -1
  46. package/src/schematics/magic-utils/rules/generate.rule.ts +61 -61
  47. package/src/schematics/magic-utils/rules/init-add-modules.rule.d.ts +12 -12
  48. package/src/schematics/magic-utils/rules/init-add-modules.rule.js +295 -296
  49. package/src/schematics/magic-utils/rules/init-add-modules.rule.js.map +1 -1
  50. package/src/schematics/magic-utils/rules/init-add-modules.rule.ts +360 -360
  51. package/src/schematics/magic-utils/rules/init-gen-components.rule.d.ts +4 -4
  52. package/src/schematics/magic-utils/rules/init-gen-components.rule.js +65 -66
  53. package/src/schematics/magic-utils/rules/init-gen-components.rule.js.map +1 -1
  54. package/src/schematics/magic-utils/rules/init-magic-metadata.rule.d.ts +3 -3
  55. package/src/schematics/magic-utils/rules/init-magic-metadata.rule.js +17 -18
  56. package/src/schematics/magic-utils/rules/init-magic-metadata.rule.js.map +1 -1
  57. package/src/schematics/magic-utils/rules/init-magic-metadata.rule.ts +19 -19
  58. package/src/schematics/magic-utils/rules/load-views-gen.rule.d.ts +3 -3
  59. package/src/schematics/magic-utils/rules/load-views-gen.rule.js +28 -29
  60. package/src/schematics/magic-utils/rules/load-views-gen.rule.js.map +1 -1
  61. package/src/schematics/magic-utils/rules/magic-option.scheme.d.ts +22 -22
  62. package/src/schematics/magic-utils/rules/magic-option.scheme.js +2 -2
  63. package/src/schematics/magic-utils/rules/magic-option.scheme.js.map +1 -1
  64. package/src/schematics/magic-utils/rules/magic-option.scheme.ts +24 -24
  65. package/src/schematics/magic-utils/utils.d.ts +12 -12
  66. package/src/schematics/magic-utils/utils.js +116 -117
  67. package/src/schematics/magic-utils/utils.js.map +1 -1
  68. package/src/schematics/magic-utils/utils.ts +134 -134
  69. package/src/schematics/mg-Install-prerequisites/index.d.ts +3 -3
  70. package/src/schematics/mg-Install-prerequisites/index.js +24 -25
  71. package/src/schematics/mg-Install-prerequisites/index.js.map +1 -1
  72. package/src/schematics/mg-Install-prerequisites/index.ts +30 -30
  73. package/src/schematics/mg-Install-prerequisites/schema.json +14 -14
  74. package/src/schematics/mg-add/files/src/app/app.component.html +17 -17
  75. package/src/schematics/mg-add/files/src/app/app.routes.ts +14 -14
  76. package/src/schematics/mg-add/files/src/app/magic/component-list.g.ts +9 -9
  77. package/src/schematics/mg-add/files/src/app/magic/lazy-loader.service.ts +2 -1
  78. package/src/schematics/mg-add/files/src/app/magic/magic.gen.lib.module.ts +19 -19
  79. package/src/schematics/mg-add/files/src/magic-styles.css +131 -131
  80. package/src/schematics/mg-add/index.d.ts +3 -3
  81. package/src/schematics/mg-add/index.js +150 -151
  82. package/src/schematics/mg-add/index.js.map +1 -1
  83. package/src/schematics/mg-add/schema.json +29 -29
  84. package/src/schematics/mg-add/utils/add-declaration-to-root-module.d.ts +2 -2
  85. package/src/schematics/mg-add/utils/add-declaration-to-root-module.js +10 -11
  86. package/src/schematics/mg-add/utils/add-declaration-to-root-module.js.map +1 -1
  87. package/src/schematics/mg-add/utils/add-declaration-to-root-module.ts +12 -12
  88. package/src/schematics/mg-add/webModule/app.routes.ts +14 -14
  89. package/src/schematics/mg-add-tasks/index.d.ts +3 -3
  90. package/src/schematics/mg-add-tasks/index.js +29 -30
  91. package/src/schematics/mg-add-tasks/index.js.map +1 -1
  92. package/src/schematics/mg-add-tasks/index.ts +53 -53
  93. package/src/schematics/mg-add-tasks/schema.json +41 -41
  94. package/src/schematics/mg-delete-files/index.d.ts +3 -3
  95. package/src/schematics/mg-delete-files/index.js +12 -13
  96. package/src/schematics/mg-delete-files/index.js.map +1 -1
  97. package/src/schematics/mg-delete-files/index.ts +12 -12
  98. package/src/schematics/mg-delete-files/schema.json +14 -14
  99. package/src/schematics/mg-gen-module/index.d.ts +3 -3
  100. package/src/schematics/mg-gen-module/index.js +14 -15
  101. package/src/schematics/mg-gen-module/index.js.map +1 -1
  102. package/src/schematics/mg-gen-module/index.ts +14 -14
  103. package/src/schematics/mg-gen-module/schema.json +24 -24
  104. package/src/schematics/mg-generate/index.d.ts +3 -3
  105. package/src/schematics/mg-generate/index.js +12 -13
  106. package/src/schematics/mg-generate/index.js.map +1 -1
  107. package/src/schematics/mg-generate/index.ts +12 -12
  108. package/src/schematics/mg-generate/schema.json +34 -34
  109. package/src/schematics/mg-generate-component/index.d.ts +3 -3
  110. package/src/schematics/mg-generate-component/index.js +34 -35
  111. package/src/schematics/mg-generate-component/index.js.map +1 -1
  112. package/src/schematics/mg-install/index.d.ts +3 -3
  113. package/src/schematics/mg-install/index.js +29 -30
  114. package/src/schematics/mg-install/index.js.map +1 -1
  115. package/src/schematics/mg-install/index.ts +37 -37
  116. package/src/schematics/mg-install/schema.json +24 -24
  117. package/src/schematics/mg-routes/index.d.ts +6 -6
  118. package/src/schematics/mg-routes/index.js +62 -63
  119. package/src/schematics/mg-routes/index.js.map +1 -1
  120. package/src/schematics/mg-routes/schema.json +14 -14
  121. package/src/schematics/mg-single-control/index.d.ts +3 -3
  122. package/src/schematics/mg-single-control/index.js +28 -29
  123. package/src/schematics/mg-single-control/index.js.map +1 -1
  124. package/src/schematics/mg-single-control/schema.json +24 -24
  125. package/src/schematics/utils/ast.d.ts +21 -21
  126. package/src/schematics/utils/ast.js +90 -91
  127. package/src/schematics/utils/ast.js.map +1 -1
  128. package/src/schematics/utils/ast.ts +103 -103
  129. package/src/schematics/utils/devkit-utils/README.md +1 -1
  130. package/src/schematics/utils/devkit-utils/ast-utils.d.ts +87 -87
  131. package/src/schematics/utils/devkit-utils/ast-utils.js +489 -490
  132. package/src/schematics/utils/devkit-utils/ast-utils.js.map +1 -1
  133. package/src/schematics/utils/devkit-utils/ast-utils.ts +570 -570
  134. package/src/schematics/utils/devkit-utils/ast-utils_old.d.ts +68 -68
  135. package/src/schematics/utils/devkit-utils/ast-utils_old.js +419 -420
  136. package/src/schematics/utils/devkit-utils/ast-utils_old.js.map +1 -1
  137. package/src/schematics/utils/devkit-utils/ast-utils_old.ts +478 -478
  138. package/src/schematics/utils/devkit-utils/change.d.ts +66 -66
  139. package/src/schematics/utils/devkit-utils/change.js +94 -94
  140. package/src/schematics/utils/devkit-utils/change.js.map +1 -1
  141. package/src/schematics/utils/devkit-utils/change.ts +127 -127
  142. package/src/schematics/utils/devkit-utils/component.d.ts +2 -2
  143. package/src/schematics/utils/devkit-utils/component.js +96 -97
  144. package/src/schematics/utils/devkit-utils/component.js.map +1 -1
  145. package/src/schematics/utils/devkit-utils/component.ts +136 -136
  146. package/src/schematics/utils/devkit-utils/config.d.ts +78 -78
  147. package/src/schematics/utils/devkit-utils/config.js +52 -52
  148. package/src/schematics/utils/devkit-utils/config.js.map +1 -1
  149. package/src/schematics/utils/devkit-utils/config.ts +120 -120
  150. package/src/schematics/utils/devkit-utils/find-module.d.ts +28 -28
  151. package/src/schematics/utils/devkit-utils/find-module.js +92 -93
  152. package/src/schematics/utils/devkit-utils/find-module.js.map +1 -1
  153. package/src/schematics/utils/devkit-utils/find-module.ts +108 -108
  154. package/src/schematics/utils/devkit-utils/ng-ast-utils.d.ts +5 -5
  155. package/src/schematics/utils/devkit-utils/ng-ast-utils.js +73 -74
  156. package/src/schematics/utils/devkit-utils/ng-ast-utils.js.map +1 -1
  157. package/src/schematics/utils/devkit-utils/ng-ast-utils.ts +84 -84
  158. package/src/schematics/utils/devkit-utils/parse-name.d.ts +13 -13
  159. package/src/schematics/utils/devkit-utils/parse-name.js +19 -20
  160. package/src/schematics/utils/devkit-utils/parse-name.js.map +1 -1
  161. package/src/schematics/utils/devkit-utils/parse-name.ts +24 -24
  162. package/src/schematics/utils/devkit-utils/route-utils.d.ts +20 -20
  163. package/src/schematics/utils/devkit-utils/route-utils.js +133 -134
  164. package/src/schematics/utils/devkit-utils/route-utils.js.map +1 -1
  165. package/src/schematics/utils/devkit-utils/route-utils.ts +180 -180
  166. package/src/schematics/utils/devkit-utils/validation.d.ts +1 -1
  167. package/src/schematics/utils/devkit-utils/validation.js +18 -19
  168. package/src/schematics/utils/devkit-utils/validation.js.map +1 -1
  169. package/src/schematics/utils/devkit-utils/validation.ts +16 -16
  170. package/src/schematics/utils/html.d.ts +18 -18
  171. package/src/schematics/utils/html.js +59 -60
  172. package/src/schematics/utils/html.js.map +1 -1
  173. package/src/schematics/utils/html.ts +63 -63
  174. package/src/schematics/utils/lib-versions.d.ts +3 -3
  175. package/src/schematics/utils/lib-versions.js +6 -6
  176. package/src/schematics/utils/lib-versions.js.map +1 -1
  177. package/src/schematics/utils/lib-versions.ts +3 -3
  178. package/src/schematics/utils/package.d.ts +5 -5
  179. package/src/schematics/utils/package.js +20 -21
  180. package/src/schematics/utils/package.js.map +1 -1
  181. package/src/schematics/utils/package.ts +22 -22
  182. package/src/schematics/utils/testing.d.ts +5 -5
  183. package/src/schematics/utils/testing.js +26 -27
  184. package/src/schematics/utils/testing.js.map +1 -1
  185. package/src/schematics/utils/testing.ts +25 -25
  186. package/src/types/enums/Enums.d.ts +1646 -1646
  187. package/src/types/enums/Enums.js +1862 -1862
  188. package/src/types/enums/Enums.js.map +1 -1
  189. package/src/types/enums/Enums.ts +2063 -2063
  190. package/src/types/enums/generated-file-types.enum.d.ts +6 -6
  191. package/src/types/enums/generated-file-types.enum.js +10 -10
  192. package/src/types/enums/generated-file-types.enum.js.map +1 -1
  193. package/src/types/enums/generated-file-types.enum.ts +6 -6
  194. package/src/types/enums/horizontal-alignments.enum.d.ts +5 -5
  195. package/src/types/enums/horizontal-alignments.enum.js +9 -9
  196. package/src/types/enums/horizontal-alignments.enum.js.map +1 -1
  197. package/src/types/enums/horizontal-alignments.enum.ts +6 -6
  198. package/src/types/enums/themes.enum.d.ts +6 -6
  199. package/src/types/enums/themes.enum.js +10 -10
  200. package/src/types/enums/themes.enum.js.map +1 -1
  201. package/src/types/enums/themes.enum.ts +6 -6
  202. package/src/types/index.d.ts +7 -7
  203. package/src/types/index.js +10 -10
  204. package/src/types/index.js.map +1 -1
  205. package/src/types/index.ts +8 -8
  206. package/src/types/interfaces/app.d.ts +53 -53
  207. package/src/types/interfaces/app.js +9 -9
  208. package/src/types/interfaces/app.js.map +1 -1
  209. package/src/types/interfaces/app.ts +89 -89
  210. package/src/types/interfaces/control.d.ts +82 -82
  211. package/src/types/interfaces/control.js +2 -2
  212. package/src/types/interfaces/control.js.map +1 -1
  213. package/src/types/interfaces/control.ts +106 -106
  214. package/src/types/interfaces/env.interface.d.ts +19 -19
  215. package/src/types/interfaces/env.interface.js +10 -10
  216. package/src/types/interfaces/template.config.d.ts +8 -8
  217. package/src/types/interfaces/template.config.js +2 -2
  218. package/src/types/interfaces/template.config.js.map +1 -1
  219. package/src/types/interfaces/template.config.ts +11 -11
  220. package/templates/angular/src/app/app.component.html.ejs +17 -17
  221. package/templates/angular/src/app/cmp-array.ejs +3 -3
  222. package/templates/angular/src/app/cmp-hash.ejs +3 -3
  223. package/templates/angular/src/app/component-list.g.ts +21 -21
  224. package/templates/angular/src/app.component.ts +14 -14
  225. package/templates/angular/src/app.module.ts +70 -70
  226. package/templates/angular/src/app.routes.ts +73 -73
  227. package/templates/angular/src/styles/app.css +5 -5
  228. package/templates/attributes/button_attributes.ejs +2 -2
  229. package/templates/attributes/common/base/class.ejs +6 -6
  230. package/templates/attributes/common/base/control_type.ejs +53 -53
  231. package/templates/attributes/common/base/enabled.ejs +9 -9
  232. package/templates/attributes/common/base/imageFileName.ejs +3 -3
  233. package/templates/attributes/common/base/no_control_class.ejs +3 -3
  234. package/templates/attributes/common/base/rtol.ejs +3 -3
  235. package/templates/attributes/common/base/tabindex.ejs +11 -11
  236. package/templates/attributes/common/base/testingId.ejs +8 -8
  237. package/templates/attributes/common/base/tooltip.ejs +7 -7
  238. package/templates/attributes/common/base/visible.ejs +6 -6
  239. package/templates/attributes/common/base/wallpaper.ejs +3 -3
  240. package/templates/attributes/common/base_attributes.ejs +10 -10
  241. package/templates/attributes/common/container_attributes.ejs +6 -6
  242. package/templates/attributes/common/control_attributes.ejs +3 -3
  243. package/templates/attributes/common/format.ejs +5 -5
  244. package/templates/attributes/common/input/hint.ejs +13 -13
  245. package/templates/attributes/common/input/multiline_edit.ejs +3 -3
  246. package/templates/attributes/common/input/must_input.ejs +8 -8
  247. package/templates/attributes/common/input/password_edit.ejs +7 -7
  248. package/templates/attributes/common/input/row_editing_input_attributes.ejs +6 -6
  249. package/templates/attributes/common/input/validation.ejs +5 -5
  250. package/templates/attributes/common/input_attributes.ejs +4 -4
  251. package/templates/attributes/common/no_control_base_attributes.ejs +4 -4
  252. package/templates/attributes/common/row_editing_button_attributes.ejs +10 -10
  253. package/templates/component/view.component.html +14 -14
  254. package/templates/component/view.component.ts +123 -122
  255. package/templates/themes/basicHTML/Code/theme.module.ts +10 -10
  256. package/templates/themes/basicHTML/checkbox.ejs +1 -1
  257. package/templates/themes/basicHTML/combobox.ejs +37 -37
  258. package/templates/themes/basicHTML/edit.ejs +169 -169
  259. package/templates/themes/basicHTML/form.ejs +4 -4
  260. package/templates/themes/basicHTML/group.ejs +4 -4
  261. package/templates/themes/basicHTML/image.ejs +6 -6
  262. package/templates/themes/basicHTML/label.ejs +11 -11
  263. package/templates/themes/basicHTML/listbox.ejs +21 -21
  264. package/templates/themes/basicHTML/push-button.ejs +28 -28
  265. package/templates/themes/basicHTML/radio.ejs +20 -20
  266. package/templates/themes/basicHTML/subform.ejs +6 -6
  267. package/templates/themes/basicHTML/tab.ejs +31 -31
  268. package/templates/themes/basicHTML/tabpage.ejs +5 -5
  269. package/templates/themes/basicHiddenHTML/Code/theme.module.ts +10 -10
  270. package/templates/themes/basicHiddenHTML/combobox.ejs +5 -5
  271. package/templates/themes/basicHiddenHTML/form.ejs +3 -3
  272. package/templates/themes/basicHiddenHTML/group.ejs +2 -2
  273. package/templates/themes/basicHiddenHTML/image.ejs +4 -4
  274. package/templates/themes/basicHiddenHTML/label.ejs +1 -1
  275. package/templates/themes/basicHiddenHTML/listbox.ejs +8 -8
  276. package/templates/themes/basicHiddenHTML/push-button.ejs +26 -26
  277. package/templates/themes/basicHiddenHTML/radio.ejs +17 -17
  278. package/templates/themes/basicHiddenHTML/tab.ejs +13 -13
  279. package/templates/themes/basicHiddenHTML/table.ejs +18 -18
  280. package/templates/themes/basicHiddenHTML/tabpage.ejs +2 -2
  281. package/templates/themes/container.ejs +26 -26
  282. package/templates/themes/control.ejs +52 -52
  283. package/templates/themes/editTypeSelector.ejs +1 -1
  284. package/templates/themes/material/Code/theme.module.ts +68 -68
  285. package/templates/themes/material/base_attributes_date.ejs +8 -8
  286. package/templates/themes/material/checkbox.ejs +1 -1
  287. package/templates/themes/material/combobox.ejs +43 -43
  288. package/templates/themes/material/edit.ejs +204 -204
  289. package/templates/themes/material/group.ejs +3 -3
  290. package/templates/themes/material/listbox.ejs +22 -23
  291. package/templates/themes/material/push-button.ejs +28 -28
  292. package/templates/themes/material/radio.ejs +22 -22
  293. package/templates/themes/material/subform.ejs +8 -8
  294. package/templates/themes/material/tab.ejs +19 -19
  295. package/templates/themes/router_outlet.ejs +5 -5
  296. package/templates/themes/table/HTMLTable/columnHeader.ejs +3 -1
  297. package/templates/themes/table/HTMLTable/table.ejs +37 -37
  298. package/templates/themes/table/grid/additionalComponentCode.ejs +26 -26
  299. package/templates/themes/table/grid/additionalIncludes.ejs +1 -1
  300. package/templates/themes/table/grid/column.ejs +3 -1
  301. package/templates/themes/table/grid/table.ejs +37 -37
  302. package/templates/themes/table/repeatable/column.ejs +11 -11
  303. package/templates/themes/table/repeatable/table.ejs +28 -28
  304. package/templates/themes/tableTypeSelector.ejs +21 -21
  305. package/tsconfig.json +36 -36
@@ -1,66 +1,66 @@
1
- /**
2
- * @license
3
- * Copyright Google Inc. All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- export interface Host {
9
- write(path: string, content: string): Promise<void>;
10
- read(path: string): Promise<string>;
11
- }
12
- export interface Change {
13
- apply(host: Host): Promise<void>;
14
- readonly path: string | null;
15
- readonly order: number;
16
- readonly description: string;
17
- }
18
- /**
19
- * An operation that does nothing.
20
- */
21
- export declare class NoopChange implements Change {
22
- description: string;
23
- order: number;
24
- path: any;
25
- apply(): Promise<void>;
26
- }
27
- /**
28
- * Will add text to the source code.
29
- */
30
- export declare class InsertChange implements Change {
31
- path: string;
32
- pos: number;
33
- toAdd: string;
34
- order: number;
35
- description: string;
36
- constructor(path: string, pos: number, toAdd: string);
37
- /**
38
- * This method does not insert spaces if there is none in the original string.
39
- */
40
- apply(host: Host): Promise<void>;
41
- }
42
- /**
43
- * Will remove text from the source code.
44
- */
45
- export declare class RemoveChange implements Change {
46
- path: string;
47
- private pos;
48
- private toRemove;
49
- order: number;
50
- description: string;
51
- constructor(path: string, pos: number, toRemove: string);
52
- apply(host: Host): Promise<void>;
53
- }
54
- /**
55
- * Will replace text from the source code.
56
- */
57
- export declare class ReplaceChange implements Change {
58
- path: string;
59
- private pos;
60
- private oldText;
61
- private newText;
62
- order: number;
63
- description: string;
64
- constructor(path: string, pos: number, oldText: string, newText: string);
65
- apply(host: Host): Promise<void>;
66
- }
1
+ /**
2
+ * @license
3
+ * Copyright Google Inc. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ export interface Host {
9
+ write(path: string, content: string): Promise<void>;
10
+ read(path: string): Promise<string>;
11
+ }
12
+ export interface Change {
13
+ apply(host: Host): Promise<void>;
14
+ readonly path: string | null;
15
+ readonly order: number;
16
+ readonly description: string;
17
+ }
18
+ /**
19
+ * An operation that does nothing.
20
+ */
21
+ export declare class NoopChange implements Change {
22
+ description: string;
23
+ order: number;
24
+ path: any;
25
+ apply(): Promise<void>;
26
+ }
27
+ /**
28
+ * Will add text to the source code.
29
+ */
30
+ export declare class InsertChange implements Change {
31
+ path: string;
32
+ pos: number;
33
+ toAdd: string;
34
+ order: number;
35
+ description: string;
36
+ constructor(path: string, pos: number, toAdd: string);
37
+ /**
38
+ * This method does not insert spaces if there is none in the original string.
39
+ */
40
+ apply(host: Host): Promise<void>;
41
+ }
42
+ /**
43
+ * Will remove text from the source code.
44
+ */
45
+ export declare class RemoveChange implements Change {
46
+ path: string;
47
+ private pos;
48
+ private toRemove;
49
+ order: number;
50
+ description: string;
51
+ constructor(path: string, pos: number, toRemove: string);
52
+ apply(host: Host): Promise<void>;
53
+ }
54
+ /**
55
+ * Will replace text from the source code.
56
+ */
57
+ export declare class ReplaceChange implements Change {
58
+ path: string;
59
+ private pos;
60
+ private oldText;
61
+ private newText;
62
+ order: number;
63
+ description: string;
64
+ constructor(path: string, pos: number, oldText: string, newText: string);
65
+ apply(host: Host): Promise<void>;
66
+ }
@@ -1,95 +1,95 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ReplaceChange = exports.RemoveChange = exports.InsertChange = exports.NoopChange = void 0;
4
- /**
5
- * An operation that does nothing.
6
- */
7
- class NoopChange {
8
- constructor() {
9
- this.description = 'No operation.';
10
- this.order = Infinity;
11
- this.path = null;
12
- }
13
- apply() { return Promise.resolve(); }
14
- }
15
- exports.NoopChange = NoopChange;
16
- /**
17
- * Will add text to the source code.
18
- */
19
- class InsertChange {
20
- constructor(path, pos, toAdd) {
21
- this.path = path;
22
- this.pos = pos;
23
- this.toAdd = toAdd;
24
- if (pos < 0) {
25
- throw new Error('Negative positions are invalid');
26
- }
27
- this.description = `Inserted ${toAdd} into position ${pos} of ${path}`;
28
- this.order = pos;
29
- }
30
- /**
31
- * This method does not insert spaces if there is none in the original string.
32
- */
33
- apply(host) {
34
- return host.read(this.path).then(content => {
35
- const prefix = content.substring(0, this.pos);
36
- const suffix = content.substring(this.pos);
37
- return host.write(this.path, `${prefix}${this.toAdd}${suffix}`);
38
- });
39
- }
40
- }
41
- exports.InsertChange = InsertChange;
42
- /**
43
- * Will remove text from the source code.
44
- */
45
- class RemoveChange {
46
- constructor(path, pos, toRemove) {
47
- this.path = path;
48
- this.pos = pos;
49
- this.toRemove = toRemove;
50
- if (pos < 0) {
51
- throw new Error('Negative positions are invalid');
52
- }
53
- this.description = `Removed ${toRemove} into position ${pos} of ${path}`;
54
- this.order = pos;
55
- }
56
- apply(host) {
57
- return host.read(this.path).then(content => {
58
- const prefix = content.substring(0, this.pos);
59
- const suffix = content.substring(this.pos + this.toRemove.length);
60
- // TODO: throw error if toRemove doesn't match removed string.
61
- return host.write(this.path, `${prefix}${suffix}`);
62
- });
63
- }
64
- }
65
- exports.RemoveChange = RemoveChange;
66
- /**
67
- * Will replace text from the source code.
68
- */
69
- class ReplaceChange {
70
- constructor(path, pos, oldText, newText) {
71
- this.path = path;
72
- this.pos = pos;
73
- this.oldText = oldText;
74
- this.newText = newText;
75
- if (pos < 0) {
76
- throw new Error('Negative positions are invalid');
77
- }
78
- this.description = `Replaced ${oldText} into position ${pos} of ${path} with ${newText}`;
79
- this.order = pos;
80
- }
81
- apply(host) {
82
- return host.read(this.path).then(content => {
83
- const prefix = content.substring(0, this.pos);
84
- const suffix = content.substring(this.pos + this.oldText.length);
85
- const text = content.substring(this.pos, this.pos + this.oldText.length);
86
- if (text !== this.oldText) {
87
- return Promise.reject(new Error(`Invalid replace: "${text}" != "${this.oldText}".`));
88
- }
89
- // TODO: throw error if oldText doesn't match removed string.
90
- return host.write(this.path, `${prefix}${this.newText}${suffix}`);
91
- });
92
- }
93
- }
94
- exports.ReplaceChange = ReplaceChange;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ReplaceChange = exports.RemoveChange = exports.InsertChange = exports.NoopChange = void 0;
4
+ /**
5
+ * An operation that does nothing.
6
+ */
7
+ class NoopChange {
8
+ constructor() {
9
+ this.description = 'No operation.';
10
+ this.order = Infinity;
11
+ this.path = null;
12
+ }
13
+ apply() { return Promise.resolve(); }
14
+ }
15
+ exports.NoopChange = NoopChange;
16
+ /**
17
+ * Will add text to the source code.
18
+ */
19
+ class InsertChange {
20
+ constructor(path, pos, toAdd) {
21
+ this.path = path;
22
+ this.pos = pos;
23
+ this.toAdd = toAdd;
24
+ if (pos < 0) {
25
+ throw new Error('Negative positions are invalid');
26
+ }
27
+ this.description = `Inserted ${toAdd} into position ${pos} of ${path}`;
28
+ this.order = pos;
29
+ }
30
+ /**
31
+ * This method does not insert spaces if there is none in the original string.
32
+ */
33
+ apply(host) {
34
+ return host.read(this.path).then(content => {
35
+ const prefix = content.substring(0, this.pos);
36
+ const suffix = content.substring(this.pos);
37
+ return host.write(this.path, `${prefix}${this.toAdd}${suffix}`);
38
+ });
39
+ }
40
+ }
41
+ exports.InsertChange = InsertChange;
42
+ /**
43
+ * Will remove text from the source code.
44
+ */
45
+ class RemoveChange {
46
+ constructor(path, pos, toRemove) {
47
+ this.path = path;
48
+ this.pos = pos;
49
+ this.toRemove = toRemove;
50
+ if (pos < 0) {
51
+ throw new Error('Negative positions are invalid');
52
+ }
53
+ this.description = `Removed ${toRemove} into position ${pos} of ${path}`;
54
+ this.order = pos;
55
+ }
56
+ apply(host) {
57
+ return host.read(this.path).then(content => {
58
+ const prefix = content.substring(0, this.pos);
59
+ const suffix = content.substring(this.pos + this.toRemove.length);
60
+ // TODO: throw error if toRemove doesn't match removed string.
61
+ return host.write(this.path, `${prefix}${suffix}`);
62
+ });
63
+ }
64
+ }
65
+ exports.RemoveChange = RemoveChange;
66
+ /**
67
+ * Will replace text from the source code.
68
+ */
69
+ class ReplaceChange {
70
+ constructor(path, pos, oldText, newText) {
71
+ this.path = path;
72
+ this.pos = pos;
73
+ this.oldText = oldText;
74
+ this.newText = newText;
75
+ if (pos < 0) {
76
+ throw new Error('Negative positions are invalid');
77
+ }
78
+ this.description = `Replaced ${oldText} into position ${pos} of ${path} with ${newText}`;
79
+ this.order = pos;
80
+ }
81
+ apply(host) {
82
+ return host.read(this.path).then(content => {
83
+ const prefix = content.substring(0, this.pos);
84
+ const suffix = content.substring(this.pos + this.oldText.length);
85
+ const text = content.substring(this.pos, this.pos + this.oldText.length);
86
+ if (text !== this.oldText) {
87
+ return Promise.reject(new Error(`Invalid replace: "${text}" != "${this.oldText}".`));
88
+ }
89
+ // TODO: throw error if oldText doesn't match removed string.
90
+ return host.write(this.path, `${prefix}${this.newText}${suffix}`);
91
+ });
92
+ }
93
+ }
94
+ exports.ReplaceChange = ReplaceChange;
95
95
  //# sourceMappingURL=change.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"change.js","sourceRoot":"","sources":["change.ts"],"names":[],"mappings":"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","sourcesContent":["/**\r\n * @license\r\n * Copyright Google Inc. All Rights Reserved.\r\n *\r\n * Use of this source code is governed by an MIT-style license that can be\r\n * found in the LICENSE file at https://angular.io/license\r\n */\r\nexport interface Host {\r\n write(path: string, content: string): Promise<void>;\r\n read(path: string): Promise<string>;\r\n}\r\n\r\n\r\nexport interface Change {\r\n apply(host: Host): Promise<void>;\r\n\r\n // The file this change should be applied to. Some changes might not apply to\r\n // a file (maybe the config).\r\n readonly path: string | null;\r\n\r\n // The order this change should be applied. Normally the position inside the file.\r\n // Changes are applied from the bottom of a file to the top.\r\n readonly order: number;\r\n\r\n // The description of this change. This will be outputted in a dry or verbose run.\r\n readonly description: string;\r\n}\r\n\r\n\r\n/**\r\n * An operation that does nothing.\r\n */\r\nexport class NoopChange implements Change {\r\n description = 'No operation.';\r\n order = Infinity;\r\n path = null;\r\n apply() { return Promise.resolve(); }\r\n}\r\n\r\n\r\n/**\r\n * Will add text to the source code.\r\n */\r\nexport class InsertChange implements Change {\r\n\r\n order: number;\r\n description: string;\r\n\r\n constructor(public path: string, public pos: number, public toAdd: string) {\r\n if (pos < 0) {\r\n throw new Error('Negative positions are invalid');\r\n }\r\n this.description = `Inserted ${toAdd} into position ${pos} of ${path}`;\r\n this.order = pos;\r\n }\r\n\r\n /**\r\n * This method does not insert spaces if there is none in the original string.\r\n */\r\n apply(host: Host) {\r\n return host.read(this.path).then(content => {\r\n const prefix = content.substring(0, this.pos);\r\n const suffix = content.substring(this.pos);\r\n\r\n return host.write(this.path, `${prefix}${this.toAdd}${suffix}`);\r\n });\r\n }\r\n}\r\n\r\n/**\r\n * Will remove text from the source code.\r\n */\r\nexport class RemoveChange implements Change {\r\n\r\n order: number;\r\n description: string;\r\n\r\n constructor(public path: string, private pos: number, private toRemove: string) {\r\n if (pos < 0) {\r\n throw new Error('Negative positions are invalid');\r\n }\r\n this.description = `Removed ${toRemove} into position ${pos} of ${path}`;\r\n this.order = pos;\r\n }\r\n\r\n apply(host: Host): Promise<void> {\r\n return host.read(this.path).then(content => {\r\n const prefix = content.substring(0, this.pos);\r\n const suffix = content.substring(this.pos + this.toRemove.length);\r\n\r\n // TODO: throw error if toRemove doesn't match removed string.\r\n return host.write(this.path, `${prefix}${suffix}`);\r\n });\r\n }\r\n}\r\n\r\n/**\r\n * Will replace text from the source code.\r\n */\r\nexport class ReplaceChange implements Change {\r\n order: number;\r\n description: string;\r\n\r\n constructor(public path: string, private pos: number, private oldText: string,\r\n private newText: string) {\r\n if (pos < 0) {\r\n throw new Error('Negative positions are invalid');\r\n }\r\n this.description = `Replaced ${oldText} into position ${pos} of ${path} with ${newText}`;\r\n this.order = pos;\r\n }\r\n\r\n apply(host: Host): Promise<void> {\r\n return host.read(this.path).then(content => {\r\n const prefix = content.substring(0, this.pos);\r\n const suffix = content.substring(this.pos + this.oldText.length);\r\n const text = content.substring(this.pos, this.pos + this.oldText.length);\r\n\r\n if (text !== this.oldText) {\r\n return Promise.reject(new Error(`Invalid replace: \"${text}\" != \"${this.oldText}\".`));\r\n }\r\n\r\n // TODO: throw error if oldText doesn't match removed string.\r\n return host.write(this.path, `${prefix}${this.newText}${suffix}`);\r\n });\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"change.js","sourceRoot":"","sources":["change.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nexport interface Host {\n write(path: string, content: string): Promise<void>;\n read(path: string): Promise<string>;\n}\n\n\nexport interface Change {\n apply(host: Host): Promise<void>;\n\n // The file this change should be applied to. Some changes might not apply to\n // a file (maybe the config).\n readonly path: string | null;\n\n // The order this change should be applied. Normally the position inside the file.\n // Changes are applied from the bottom of a file to the top.\n readonly order: number;\n\n // The description of this change. This will be outputted in a dry or verbose run.\n readonly description: string;\n}\n\n\n/**\n * An operation that does nothing.\n */\nexport class NoopChange implements Change {\n description = 'No operation.';\n order = Infinity;\n path = null;\n apply() { return Promise.resolve(); }\n}\n\n\n/**\n * Will add text to the source code.\n */\nexport class InsertChange implements Change {\n\n order: number;\n description: string;\n\n constructor(public path: string, public pos: number, public toAdd: string) {\n if (pos < 0) {\n throw new Error('Negative positions are invalid');\n }\n this.description = `Inserted ${toAdd} into position ${pos} of ${path}`;\n this.order = pos;\n }\n\n /**\n * This method does not insert spaces if there is none in the original string.\n */\n apply(host: Host) {\n return host.read(this.path).then(content => {\n const prefix = content.substring(0, this.pos);\n const suffix = content.substring(this.pos);\n\n return host.write(this.path, `${prefix}${this.toAdd}${suffix}`);\n });\n }\n}\n\n/**\n * Will remove text from the source code.\n */\nexport class RemoveChange implements Change {\n\n order: number;\n description: string;\n\n constructor(public path: string, private pos: number, private toRemove: string) {\n if (pos < 0) {\n throw new Error('Negative positions are invalid');\n }\n this.description = `Removed ${toRemove} into position ${pos} of ${path}`;\n this.order = pos;\n }\n\n apply(host: Host): Promise<void> {\n return host.read(this.path).then(content => {\n const prefix = content.substring(0, this.pos);\n const suffix = content.substring(this.pos + this.toRemove.length);\n\n // TODO: throw error if toRemove doesn't match removed string.\n return host.write(this.path, `${prefix}${suffix}`);\n });\n }\n}\n\n/**\n * Will replace text from the source code.\n */\nexport class ReplaceChange implements Change {\n order: number;\n description: string;\n\n constructor(public path: string, private pos: number, private oldText: string,\n private newText: string) {\n if (pos < 0) {\n throw new Error('Negative positions are invalid');\n }\n this.description = `Replaced ${oldText} into position ${pos} of ${path} with ${newText}`;\n this.order = pos;\n }\n\n apply(host: Host): Promise<void> {\n return host.read(this.path).then(content => {\n const prefix = content.substring(0, this.pos);\n const suffix = content.substring(this.pos + this.oldText.length);\n const text = content.substring(this.pos, this.pos + this.oldText.length);\n\n if (text !== this.oldText) {\n return Promise.reject(new Error(`Invalid replace: \"${text}\" != \"${this.oldText}\".`));\n }\n\n // TODO: throw error if oldText doesn't match removed string.\n return host.write(this.path, `${prefix}${this.newText}${suffix}`);\n });\n }\n}\n"]}
@@ -1,127 +1,127 @@
1
- /**
2
- * @license
3
- * Copyright Google Inc. All Rights Reserved.
4
- *
5
- * Use of this source code is governed by an MIT-style license that can be
6
- * found in the LICENSE file at https://angular.io/license
7
- */
8
- export interface Host {
9
- write(path: string, content: string): Promise<void>;
10
- read(path: string): Promise<string>;
11
- }
12
-
13
-
14
- export interface Change {
15
- apply(host: Host): Promise<void>;
16
-
17
- // The file this change should be applied to. Some changes might not apply to
18
- // a file (maybe the config).
19
- readonly path: string | null;
20
-
21
- // The order this change should be applied. Normally the position inside the file.
22
- // Changes are applied from the bottom of a file to the top.
23
- readonly order: number;
24
-
25
- // The description of this change. This will be outputted in a dry or verbose run.
26
- readonly description: string;
27
- }
28
-
29
-
30
- /**
31
- * An operation that does nothing.
32
- */
33
- export class NoopChange implements Change {
34
- description = 'No operation.';
35
- order = Infinity;
36
- path = null;
37
- apply() { return Promise.resolve(); }
38
- }
39
-
40
-
41
- /**
42
- * Will add text to the source code.
43
- */
44
- export class InsertChange implements Change {
45
-
46
- order: number;
47
- description: string;
48
-
49
- constructor(public path: string, public pos: number, public toAdd: string) {
50
- if (pos < 0) {
51
- throw new Error('Negative positions are invalid');
52
- }
53
- this.description = `Inserted ${toAdd} into position ${pos} of ${path}`;
54
- this.order = pos;
55
- }
56
-
57
- /**
58
- * This method does not insert spaces if there is none in the original string.
59
- */
60
- apply(host: Host) {
61
- return host.read(this.path).then(content => {
62
- const prefix = content.substring(0, this.pos);
63
- const suffix = content.substring(this.pos);
64
-
65
- return host.write(this.path, `${prefix}${this.toAdd}${suffix}`);
66
- });
67
- }
68
- }
69
-
70
- /**
71
- * Will remove text from the source code.
72
- */
73
- export class RemoveChange implements Change {
74
-
75
- order: number;
76
- description: string;
77
-
78
- constructor(public path: string, private pos: number, private toRemove: string) {
79
- if (pos < 0) {
80
- throw new Error('Negative positions are invalid');
81
- }
82
- this.description = `Removed ${toRemove} into position ${pos} of ${path}`;
83
- this.order = pos;
84
- }
85
-
86
- apply(host: Host): Promise<void> {
87
- return host.read(this.path).then(content => {
88
- const prefix = content.substring(0, this.pos);
89
- const suffix = content.substring(this.pos + this.toRemove.length);
90
-
91
- // TODO: throw error if toRemove doesn't match removed string.
92
- return host.write(this.path, `${prefix}${suffix}`);
93
- });
94
- }
95
- }
96
-
97
- /**
98
- * Will replace text from the source code.
99
- */
100
- export class ReplaceChange implements Change {
101
- order: number;
102
- description: string;
103
-
104
- constructor(public path: string, private pos: number, private oldText: string,
105
- private newText: string) {
106
- if (pos < 0) {
107
- throw new Error('Negative positions are invalid');
108
- }
109
- this.description = `Replaced ${oldText} into position ${pos} of ${path} with ${newText}`;
110
- this.order = pos;
111
- }
112
-
113
- apply(host: Host): Promise<void> {
114
- return host.read(this.path).then(content => {
115
- const prefix = content.substring(0, this.pos);
116
- const suffix = content.substring(this.pos + this.oldText.length);
117
- const text = content.substring(this.pos, this.pos + this.oldText.length);
118
-
119
- if (text !== this.oldText) {
120
- return Promise.reject(new Error(`Invalid replace: "${text}" != "${this.oldText}".`));
121
- }
122
-
123
- // TODO: throw error if oldText doesn't match removed string.
124
- return host.write(this.path, `${prefix}${this.newText}${suffix}`);
125
- });
126
- }
127
- }
1
+ /**
2
+ * @license
3
+ * Copyright Google Inc. All Rights Reserved.
4
+ *
5
+ * Use of this source code is governed by an MIT-style license that can be
6
+ * found in the LICENSE file at https://angular.io/license
7
+ */
8
+ export interface Host {
9
+ write(path: string, content: string): Promise<void>;
10
+ read(path: string): Promise<string>;
11
+ }
12
+
13
+
14
+ export interface Change {
15
+ apply(host: Host): Promise<void>;
16
+
17
+ // The file this change should be applied to. Some changes might not apply to
18
+ // a file (maybe the config).
19
+ readonly path: string | null;
20
+
21
+ // The order this change should be applied. Normally the position inside the file.
22
+ // Changes are applied from the bottom of a file to the top.
23
+ readonly order: number;
24
+
25
+ // The description of this change. This will be outputted in a dry or verbose run.
26
+ readonly description: string;
27
+ }
28
+
29
+
30
+ /**
31
+ * An operation that does nothing.
32
+ */
33
+ export class NoopChange implements Change {
34
+ description = 'No operation.';
35
+ order = Infinity;
36
+ path = null;
37
+ apply() { return Promise.resolve(); }
38
+ }
39
+
40
+
41
+ /**
42
+ * Will add text to the source code.
43
+ */
44
+ export class InsertChange implements Change {
45
+
46
+ order: number;
47
+ description: string;
48
+
49
+ constructor(public path: string, public pos: number, public toAdd: string) {
50
+ if (pos < 0) {
51
+ throw new Error('Negative positions are invalid');
52
+ }
53
+ this.description = `Inserted ${toAdd} into position ${pos} of ${path}`;
54
+ this.order = pos;
55
+ }
56
+
57
+ /**
58
+ * This method does not insert spaces if there is none in the original string.
59
+ */
60
+ apply(host: Host) {
61
+ return host.read(this.path).then(content => {
62
+ const prefix = content.substring(0, this.pos);
63
+ const suffix = content.substring(this.pos);
64
+
65
+ return host.write(this.path, `${prefix}${this.toAdd}${suffix}`);
66
+ });
67
+ }
68
+ }
69
+
70
+ /**
71
+ * Will remove text from the source code.
72
+ */
73
+ export class RemoveChange implements Change {
74
+
75
+ order: number;
76
+ description: string;
77
+
78
+ constructor(public path: string, private pos: number, private toRemove: string) {
79
+ if (pos < 0) {
80
+ throw new Error('Negative positions are invalid');
81
+ }
82
+ this.description = `Removed ${toRemove} into position ${pos} of ${path}`;
83
+ this.order = pos;
84
+ }
85
+
86
+ apply(host: Host): Promise<void> {
87
+ return host.read(this.path).then(content => {
88
+ const prefix = content.substring(0, this.pos);
89
+ const suffix = content.substring(this.pos + this.toRemove.length);
90
+
91
+ // TODO: throw error if toRemove doesn't match removed string.
92
+ return host.write(this.path, `${prefix}${suffix}`);
93
+ });
94
+ }
95
+ }
96
+
97
+ /**
98
+ * Will replace text from the source code.
99
+ */
100
+ export class ReplaceChange implements Change {
101
+ order: number;
102
+ description: string;
103
+
104
+ constructor(public path: string, private pos: number, private oldText: string,
105
+ private newText: string) {
106
+ if (pos < 0) {
107
+ throw new Error('Negative positions are invalid');
108
+ }
109
+ this.description = `Replaced ${oldText} into position ${pos} of ${path} with ${newText}`;
110
+ this.order = pos;
111
+ }
112
+
113
+ apply(host: Host): Promise<void> {
114
+ return host.read(this.path).then(content => {
115
+ const prefix = content.substring(0, this.pos);
116
+ const suffix = content.substring(this.pos + this.oldText.length);
117
+ const text = content.substring(this.pos, this.pos + this.oldText.length);
118
+
119
+ if (text !== this.oldText) {
120
+ return Promise.reject(new Error(`Invalid replace: "${text}" != "${this.oldText}".`));
121
+ }
122
+
123
+ // TODO: throw error if oldText doesn't match removed string.
124
+ return host.write(this.path, `${prefix}${this.newText}${suffix}`);
125
+ });
126
+ }
127
+ }
@@ -1,2 +1,2 @@
1
- import { Rule } from '@angular-devkit/schematics';
2
- export declare function buildComponent(options: any): Rule;
1
+ import { Rule } from '@angular-devkit/schematics';
2
+ export declare function buildComponent(options: any): Rule;