@magic-xpa/cli 4.1000.0 → 4.1100.0-dev000.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 (307) 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 -80
  39. package/src/schematics/magic-utils/rules/build-view.rule.js.map +1 -1
  40. package/src/schematics/magic-utils/rules/build-view.rule.ts +4 -0
  41. package/src/schematics/magic-utils/rules/component-list.rule.d.ts +3 -3
  42. package/src/schematics/magic-utils/rules/component-list.rule.js +316 -317
  43. package/src/schematics/magic-utils/rules/component-list.rule.js.map +1 -1
  44. package/src/schematics/magic-utils/rules/generate.rule.d.ts +5 -5
  45. package/src/schematics/magic-utils/rules/generate.rule.js +53 -54
  46. package/src/schematics/magic-utils/rules/generate.rule.js.map +1 -1
  47. package/src/schematics/magic-utils/rules/generate.rule.ts +61 -61
  48. package/src/schematics/magic-utils/rules/init-add-modules.rule.d.ts +12 -12
  49. package/src/schematics/magic-utils/rules/init-add-modules.rule.js +295 -296
  50. package/src/schematics/magic-utils/rules/init-add-modules.rule.js.map +1 -1
  51. package/src/schematics/magic-utils/rules/init-add-modules.rule.ts +360 -360
  52. package/src/schematics/magic-utils/rules/init-gen-components.rule.d.ts +4 -4
  53. package/src/schematics/magic-utils/rules/init-gen-components.rule.js +65 -66
  54. package/src/schematics/magic-utils/rules/init-gen-components.rule.js.map +1 -1
  55. package/src/schematics/magic-utils/rules/init-magic-metadata.rule.d.ts +3 -3
  56. package/src/schematics/magic-utils/rules/init-magic-metadata.rule.js +17 -18
  57. package/src/schematics/magic-utils/rules/init-magic-metadata.rule.js.map +1 -1
  58. package/src/schematics/magic-utils/rules/init-magic-metadata.rule.ts +19 -19
  59. package/src/schematics/magic-utils/rules/load-views-gen.rule.d.ts +3 -3
  60. package/src/schematics/magic-utils/rules/load-views-gen.rule.js +28 -29
  61. package/src/schematics/magic-utils/rules/load-views-gen.rule.js.map +1 -1
  62. package/src/schematics/magic-utils/rules/magic-option.scheme.d.ts +22 -21
  63. package/src/schematics/magic-utils/rules/magic-option.scheme.js +2 -2
  64. package/src/schematics/magic-utils/rules/magic-option.scheme.js.map +1 -1
  65. package/src/schematics/magic-utils/rules/magic-option.scheme.ts +24 -23
  66. package/src/schematics/magic-utils/utils.d.ts +12 -12
  67. package/src/schematics/magic-utils/utils.js +116 -117
  68. package/src/schematics/magic-utils/utils.js.map +1 -1
  69. package/src/schematics/magic-utils/utils.ts +134 -134
  70. package/src/schematics/mg-Install-prerequisites/index.d.ts +3 -3
  71. package/src/schematics/mg-Install-prerequisites/index.js +24 -25
  72. package/src/schematics/mg-Install-prerequisites/index.js.map +1 -1
  73. package/src/schematics/mg-Install-prerequisites/index.ts +30 -30
  74. package/src/schematics/mg-Install-prerequisites/schema.json +14 -14
  75. package/src/schematics/mg-add/files/src/app/app.component.html +17 -17
  76. package/src/schematics/mg-add/files/src/app/app.routes.ts +14 -14
  77. package/src/schematics/mg-add/files/src/app/magic/component-list.g.ts +9 -9
  78. package/src/schematics/mg-add/files/src/app/magic/lazy-loader.service.ts +2 -1
  79. package/src/schematics/mg-add/files/src/app/magic/magic.gen.lib.module.ts +19 -19
  80. package/src/schematics/mg-add/files/src/magic-styles.css +131 -131
  81. package/src/schematics/mg-add/index.d.ts +3 -3
  82. package/src/schematics/mg-add/index.js +150 -151
  83. package/src/schematics/mg-add/index.js.map +1 -1
  84. package/src/schematics/mg-add/schema.json +29 -29
  85. package/src/schematics/mg-add/utils/add-declaration-to-root-module.d.ts +2 -2
  86. package/src/schematics/mg-add/utils/add-declaration-to-root-module.js +10 -11
  87. package/src/schematics/mg-add/utils/add-declaration-to-root-module.js.map +1 -1
  88. package/src/schematics/mg-add/utils/add-declaration-to-root-module.ts +12 -12
  89. package/src/schematics/mg-add/webModule/app.routes.ts +14 -14
  90. package/src/schematics/mg-add-tasks/index.d.ts +3 -3
  91. package/src/schematics/mg-add-tasks/index.js +29 -30
  92. package/src/schematics/mg-add-tasks/index.js.map +1 -1
  93. package/src/schematics/mg-add-tasks/index.ts +53 -53
  94. package/src/schematics/mg-add-tasks/schema.json +41 -41
  95. package/src/schematics/mg-delete-files/index.d.ts +3 -3
  96. package/src/schematics/mg-delete-files/index.js +12 -13
  97. package/src/schematics/mg-delete-files/index.js.map +1 -1
  98. package/src/schematics/mg-delete-files/index.ts +12 -12
  99. package/src/schematics/mg-delete-files/schema.json +14 -14
  100. package/src/schematics/mg-gen-module/index.d.ts +3 -3
  101. package/src/schematics/mg-gen-module/index.js +14 -15
  102. package/src/schematics/mg-gen-module/index.js.map +1 -1
  103. package/src/schematics/mg-gen-module/index.ts +14 -14
  104. package/src/schematics/mg-gen-module/schema.json +24 -24
  105. package/src/schematics/mg-generate/index.d.ts +3 -3
  106. package/src/schematics/mg-generate/index.js +12 -13
  107. package/src/schematics/mg-generate/index.js.map +1 -1
  108. package/src/schematics/mg-generate/index.ts +12 -12
  109. package/src/schematics/mg-generate/schema.json +34 -34
  110. package/src/schematics/mg-generate-component/index.d.ts +3 -3
  111. package/src/schematics/mg-generate-component/index.js +34 -35
  112. package/src/schematics/mg-generate-component/index.js.map +1 -1
  113. package/src/schematics/mg-generate-component/schema.json +6 -0
  114. package/src/schematics/mg-install/index.d.ts +3 -3
  115. package/src/schematics/mg-install/index.js +29 -30
  116. package/src/schematics/mg-install/index.js.map +1 -1
  117. package/src/schematics/mg-install/index.ts +37 -37
  118. package/src/schematics/mg-install/schema.json +24 -24
  119. package/src/schematics/mg-routes/index.d.ts +6 -6
  120. package/src/schematics/mg-routes/index.js +62 -63
  121. package/src/schematics/mg-routes/index.js.map +1 -1
  122. package/src/schematics/mg-routes/schema.json +14 -14
  123. package/src/schematics/mg-single-control/index.d.ts +3 -3
  124. package/src/schematics/mg-single-control/index.js +28 -29
  125. package/src/schematics/mg-single-control/index.js.map +1 -1
  126. package/src/schematics/mg-single-control/schema.json +24 -24
  127. package/src/schematics/utils/ast.d.ts +21 -21
  128. package/src/schematics/utils/ast.js +90 -91
  129. package/src/schematics/utils/ast.js.map +1 -1
  130. package/src/schematics/utils/ast.ts +103 -103
  131. package/src/schematics/utils/devkit-utils/README.md +1 -1
  132. package/src/schematics/utils/devkit-utils/ast-utils.d.ts +87 -87
  133. package/src/schematics/utils/devkit-utils/ast-utils.js +489 -490
  134. package/src/schematics/utils/devkit-utils/ast-utils.js.map +1 -1
  135. package/src/schematics/utils/devkit-utils/ast-utils.ts +570 -570
  136. package/src/schematics/utils/devkit-utils/ast-utils_old.d.ts +68 -68
  137. package/src/schematics/utils/devkit-utils/ast-utils_old.js +419 -420
  138. package/src/schematics/utils/devkit-utils/ast-utils_old.js.map +1 -1
  139. package/src/schematics/utils/devkit-utils/ast-utils_old.ts +478 -478
  140. package/src/schematics/utils/devkit-utils/change.d.ts +66 -66
  141. package/src/schematics/utils/devkit-utils/change.js +94 -94
  142. package/src/schematics/utils/devkit-utils/change.js.map +1 -1
  143. package/src/schematics/utils/devkit-utils/change.ts +127 -127
  144. package/src/schematics/utils/devkit-utils/component.d.ts +2 -2
  145. package/src/schematics/utils/devkit-utils/component.js +96 -97
  146. package/src/schematics/utils/devkit-utils/component.js.map +1 -1
  147. package/src/schematics/utils/devkit-utils/component.ts +136 -136
  148. package/src/schematics/utils/devkit-utils/config.d.ts +78 -78
  149. package/src/schematics/utils/devkit-utils/config.js +52 -52
  150. package/src/schematics/utils/devkit-utils/config.js.map +1 -1
  151. package/src/schematics/utils/devkit-utils/config.ts +120 -120
  152. package/src/schematics/utils/devkit-utils/find-module.d.ts +28 -28
  153. package/src/schematics/utils/devkit-utils/find-module.js +92 -93
  154. package/src/schematics/utils/devkit-utils/find-module.js.map +1 -1
  155. package/src/schematics/utils/devkit-utils/find-module.ts +108 -108
  156. package/src/schematics/utils/devkit-utils/ng-ast-utils.d.ts +5 -5
  157. package/src/schematics/utils/devkit-utils/ng-ast-utils.js +73 -74
  158. package/src/schematics/utils/devkit-utils/ng-ast-utils.js.map +1 -1
  159. package/src/schematics/utils/devkit-utils/ng-ast-utils.ts +84 -84
  160. package/src/schematics/utils/devkit-utils/parse-name.d.ts +13 -13
  161. package/src/schematics/utils/devkit-utils/parse-name.js +19 -20
  162. package/src/schematics/utils/devkit-utils/parse-name.js.map +1 -1
  163. package/src/schematics/utils/devkit-utils/parse-name.ts +24 -24
  164. package/src/schematics/utils/devkit-utils/route-utils.d.ts +20 -20
  165. package/src/schematics/utils/devkit-utils/route-utils.js +133 -134
  166. package/src/schematics/utils/devkit-utils/route-utils.js.map +1 -1
  167. package/src/schematics/utils/devkit-utils/route-utils.ts +180 -180
  168. package/src/schematics/utils/devkit-utils/validation.d.ts +1 -1
  169. package/src/schematics/utils/devkit-utils/validation.js +18 -19
  170. package/src/schematics/utils/devkit-utils/validation.js.map +1 -1
  171. package/src/schematics/utils/devkit-utils/validation.ts +16 -16
  172. package/src/schematics/utils/html.d.ts +18 -18
  173. package/src/schematics/utils/html.js +59 -60
  174. package/src/schematics/utils/html.js.map +1 -1
  175. package/src/schematics/utils/html.ts +63 -63
  176. package/src/schematics/utils/lib-versions.d.ts +3 -3
  177. package/src/schematics/utils/lib-versions.js +6 -6
  178. package/src/schematics/utils/lib-versions.js.map +1 -1
  179. package/src/schematics/utils/lib-versions.ts +3 -3
  180. package/src/schematics/utils/package.d.ts +5 -5
  181. package/src/schematics/utils/package.js +20 -21
  182. package/src/schematics/utils/package.js.map +1 -1
  183. package/src/schematics/utils/package.ts +22 -22
  184. package/src/schematics/utils/testing.d.ts +5 -5
  185. package/src/schematics/utils/testing.js +26 -27
  186. package/src/schematics/utils/testing.js.map +1 -1
  187. package/src/schematics/utils/testing.ts +25 -25
  188. package/src/types/enums/Enums.d.ts +1646 -1646
  189. package/src/types/enums/Enums.js +1862 -1862
  190. package/src/types/enums/Enums.js.map +1 -1
  191. package/src/types/enums/Enums.ts +2063 -2063
  192. package/src/types/enums/generated-file-types.enum.d.ts +6 -6
  193. package/src/types/enums/generated-file-types.enum.js +10 -10
  194. package/src/types/enums/generated-file-types.enum.js.map +1 -1
  195. package/src/types/enums/generated-file-types.enum.ts +6 -6
  196. package/src/types/enums/horizontal-alignments.enum.d.ts +5 -5
  197. package/src/types/enums/horizontal-alignments.enum.js +9 -9
  198. package/src/types/enums/horizontal-alignments.enum.js.map +1 -1
  199. package/src/types/enums/horizontal-alignments.enum.ts +6 -6
  200. package/src/types/enums/themes.enum.d.ts +6 -6
  201. package/src/types/enums/themes.enum.js +10 -10
  202. package/src/types/enums/themes.enum.js.map +1 -1
  203. package/src/types/enums/themes.enum.ts +6 -6
  204. package/src/types/index.d.ts +7 -7
  205. package/src/types/index.js +10 -10
  206. package/src/types/index.js.map +1 -1
  207. package/src/types/index.ts +8 -8
  208. package/src/types/interfaces/app.d.ts +53 -53
  209. package/src/types/interfaces/app.js +9 -9
  210. package/src/types/interfaces/app.js.map +1 -1
  211. package/src/types/interfaces/app.ts +89 -89
  212. package/src/types/interfaces/control.d.ts +82 -82
  213. package/src/types/interfaces/control.js +2 -2
  214. package/src/types/interfaces/control.js.map +1 -1
  215. package/src/types/interfaces/control.ts +106 -106
  216. package/src/types/interfaces/env.interface.d.ts +19 -19
  217. package/src/types/interfaces/env.interface.js +10 -10
  218. package/src/types/interfaces/template.config.d.ts +8 -8
  219. package/src/types/interfaces/template.config.js +2 -2
  220. package/src/types/interfaces/template.config.js.map +1 -1
  221. package/src/types/interfaces/template.config.ts +11 -11
  222. package/templates/angular/src/app/app.component.html.ejs +17 -17
  223. package/templates/angular/src/app/cmp-array.ejs +3 -3
  224. package/templates/angular/src/app/cmp-hash.ejs +3 -3
  225. package/templates/angular/src/app/component-list.g.ts +21 -21
  226. package/templates/angular/src/app.component.ts +14 -14
  227. package/templates/angular/src/app.module.ts +70 -70
  228. package/templates/angular/src/app.routes.ts +73 -73
  229. package/templates/angular/src/styles/app.css +5 -5
  230. package/templates/attributes/button_attributes.ejs +2 -2
  231. package/templates/attributes/common/base/class.ejs +6 -6
  232. package/templates/attributes/common/base/control_type.ejs +53 -53
  233. package/templates/attributes/common/base/enabled.ejs +9 -9
  234. package/templates/attributes/common/base/imageFileName.ejs +3 -3
  235. package/templates/attributes/common/base/no_control_class.ejs +3 -3
  236. package/templates/attributes/common/base/rtol.ejs +3 -3
  237. package/templates/attributes/common/base/tabindex.ejs +11 -11
  238. package/templates/attributes/common/base/testingId.ejs +8 -8
  239. package/templates/attributes/common/base/tooltip.ejs +7 -7
  240. package/templates/attributes/common/base/visible.ejs +6 -6
  241. package/templates/attributes/common/base/wallpaper.ejs +3 -3
  242. package/templates/attributes/common/base_attributes.ejs +10 -10
  243. package/templates/attributes/common/container_attributes.ejs +6 -6
  244. package/templates/attributes/common/control_attributes.ejs +3 -3
  245. package/templates/attributes/common/format.ejs +5 -5
  246. package/templates/attributes/common/input/hint.ejs +13 -13
  247. package/templates/attributes/common/input/multiline_edit.ejs +3 -3
  248. package/templates/attributes/common/input/must_input.ejs +8 -8
  249. package/templates/attributes/common/input/password_edit.ejs +7 -7
  250. package/templates/attributes/common/input/row_editing_input_attributes.ejs +6 -6
  251. package/templates/attributes/common/input/validation.ejs +5 -5
  252. package/templates/attributes/common/input_attributes.ejs +4 -4
  253. package/templates/attributes/common/no_control_base_attributes.ejs +4 -4
  254. package/templates/attributes/common/row_editing_button_attributes.ejs +10 -10
  255. package/templates/component/view.component.html +14 -14
  256. package/templates/component/view.component.ts +123 -122
  257. package/templates/themes/basicHTML/Code/theme.module.ts +10 -10
  258. package/templates/themes/basicHTML/checkbox.ejs +1 -1
  259. package/templates/themes/basicHTML/combobox.ejs +37 -37
  260. package/templates/themes/basicHTML/edit.ejs +169 -168
  261. package/templates/themes/basicHTML/form.ejs +4 -4
  262. package/templates/themes/basicHTML/group.ejs +4 -4
  263. package/templates/themes/basicHTML/image.ejs +6 -6
  264. package/templates/themes/basicHTML/label.ejs +11 -11
  265. package/templates/themes/basicHTML/listbox.ejs +21 -21
  266. package/templates/themes/basicHTML/push-button.ejs +28 -28
  267. package/templates/themes/basicHTML/radio.ejs +20 -20
  268. package/templates/themes/basicHTML/subform.ejs +6 -6
  269. package/templates/themes/basicHTML/tab.ejs +31 -31
  270. package/templates/themes/basicHTML/tabpage.ejs +5 -5
  271. package/templates/themes/basicHiddenHTML/Code/theme.module.ts +10 -10
  272. package/templates/themes/basicHiddenHTML/combobox.ejs +5 -5
  273. package/templates/themes/basicHiddenHTML/form.ejs +3 -3
  274. package/templates/themes/basicHiddenHTML/group.ejs +2 -2
  275. package/templates/themes/basicHiddenHTML/image.ejs +4 -4
  276. package/templates/themes/basicHiddenHTML/label.ejs +1 -1
  277. package/templates/themes/basicHiddenHTML/listbox.ejs +8 -8
  278. package/templates/themes/basicHiddenHTML/push-button.ejs +26 -26
  279. package/templates/themes/basicHiddenHTML/radio.ejs +17 -17
  280. package/templates/themes/basicHiddenHTML/tab.ejs +13 -13
  281. package/templates/themes/basicHiddenHTML/table.ejs +18 -18
  282. package/templates/themes/basicHiddenHTML/tabpage.ejs +2 -2
  283. package/templates/themes/container.ejs +26 -26
  284. package/templates/themes/control.ejs +52 -52
  285. package/templates/themes/editTypeSelector.ejs +1 -1
  286. package/templates/themes/material/Code/theme.module.ts +68 -68
  287. package/templates/themes/material/base_attributes_date.ejs +8 -8
  288. package/templates/themes/material/checkbox.ejs +1 -1
  289. package/templates/themes/material/combobox.ejs +43 -43
  290. package/templates/themes/material/edit.ejs +204 -204
  291. package/templates/themes/material/group.ejs +3 -3
  292. package/templates/themes/material/listbox.ejs +22 -23
  293. package/templates/themes/material/push-button.ejs +28 -28
  294. package/templates/themes/material/radio.ejs +22 -22
  295. package/templates/themes/material/subform.ejs +8 -8
  296. package/templates/themes/material/tab.ejs +19 -19
  297. package/templates/themes/router_outlet.ejs +5 -5
  298. package/templates/themes/table/HTMLTable/columnHeader.ejs +3 -1
  299. package/templates/themes/table/HTMLTable/table.ejs +37 -37
  300. package/templates/themes/table/grid/additionalComponentCode.ejs +26 -26
  301. package/templates/themes/table/grid/additionalIncludes.ejs +1 -1
  302. package/templates/themes/table/grid/column.ejs +3 -1
  303. package/templates/themes/table/grid/table.ejs +37 -37
  304. package/templates/themes/table/repeatable/column.ejs +11 -11
  305. package/templates/themes/table/repeatable/table.ejs +28 -28
  306. package/templates/themes/tableTypeSelector.ejs +21 -21
  307. 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":["/**\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
+ {"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,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;