@rxap/ts-morph 1.6.0 → 1.7.0-dev.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 (255) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/package.json +3 -3
  3. package/src/lib/add-provider-to-array.d.ts +9 -0
  4. package/src/lib/add-provider-to-array.js +9 -0
  5. package/src/lib/add-provider-to-array.js.map +1 -1
  6. package/src/lib/angular/add-route.d.ts +29 -0
  7. package/src/lib/angular/add-route.js +13 -0
  8. package/src/lib/angular/add-route.js.map +1 -1
  9. package/src/lib/angular/build-route-object.d.ts +31 -0
  10. package/src/lib/angular/build-route-object.js +6 -0
  11. package/src/lib/angular/build-route-object.js.map +1 -1
  12. package/src/lib/angular/coerce-app-config-provider.d.ts +10 -0
  13. package/src/lib/angular/coerce-app-config-provider.js +7 -0
  14. package/src/lib/angular/coerce-app-config-provider.js.map +1 -1
  15. package/src/lib/angular/coerce-app-navigation.d.ts +25 -0
  16. package/src/lib/angular/coerce-app-navigation.js +7 -0
  17. package/src/lib/angular/coerce-app-navigation.js.map +1 -1
  18. package/src/lib/angular/coerce-app-routes.d.ts +8 -0
  19. package/src/lib/angular/coerce-app-routes.js +8 -0
  20. package/src/lib/angular/coerce-app-routes.js.map +1 -1
  21. package/src/lib/angular/coerce-component-import.d.ts +8 -0
  22. package/src/lib/angular/coerce-component-import.js +8 -0
  23. package/src/lib/angular/coerce-component-import.js.map +1 -1
  24. package/src/lib/angular/coerce-component-input.d.ts +12 -0
  25. package/src/lib/angular/coerce-component-input.js +10 -0
  26. package/src/lib/angular/coerce-component-input.js.map +1 -1
  27. package/src/lib/angular/coerce-component.d.ts +30 -2
  28. package/src/lib/angular/coerce-component.js +10 -0
  29. package/src/lib/angular/coerce-component.js.map +1 -1
  30. package/src/lib/angular/coerce-data-source-class.d.ts +26 -0
  31. package/src/lib/angular/coerce-data-source-class.js +8 -0
  32. package/src/lib/angular/coerce-data-source-class.js.map +1 -1
  33. package/src/lib/angular/coerce-layout-routes.d.ts +24 -0
  34. package/src/lib/angular/coerce-layout-routes.js +9 -0
  35. package/src/lib/angular/coerce-layout-routes.js.map +1 -1
  36. package/src/lib/angular/coerce-module-provider.d.ts +8 -0
  37. package/src/lib/angular/coerce-module-provider.js +8 -0
  38. package/src/lib/angular/coerce-module-provider.js.map +1 -1
  39. package/src/lib/angular/coerce-route-guard.d.ts +8 -0
  40. package/src/lib/angular/coerce-route-guard.js +8 -0
  41. package/src/lib/angular/coerce-route-guard.js.map +1 -1
  42. package/src/lib/angular/coerce-routes.d.ts +17 -0
  43. package/src/lib/angular/coerce-routes.js +8 -0
  44. package/src/lib/angular/coerce-routes.js.map +1 -1
  45. package/src/lib/angular/coerce-stories.d.ts +19 -0
  46. package/src/lib/angular/coerce-stories.js +7 -0
  47. package/src/lib/angular/coerce-stories.js.map +1 -1
  48. package/src/lib/angular/coerce-token-export.d.ts +20 -0
  49. package/src/lib/angular/coerce-token-export.js +8 -0
  50. package/src/lib/angular/coerce-token-export.js.map +1 -1
  51. package/src/lib/angular/find-parent-route.d.ts +35 -0
  52. package/src/lib/angular/find-parent-route.js +35 -0
  53. package/src/lib/angular/find-parent-route.js.map +1 -1
  54. package/src/lib/angular/get-component-class.d.ts +7 -0
  55. package/src/lib/angular/get-component-class.js +7 -0
  56. package/src/lib/angular/get-component-class.js.map +1 -1
  57. package/src/lib/angular/get-component-decorator-object.d.ts +6 -0
  58. package/src/lib/angular/get-component-decorator-object.js +6 -0
  59. package/src/lib/angular/get-component-decorator-object.js.map +1 -1
  60. package/src/lib/angular/remove-component-import.d.ts +7 -0
  61. package/src/lib/angular/remove-component-import.js +7 -0
  62. package/src/lib/angular/remove-component-import.js.map +1 -1
  63. package/src/lib/angular/remove-route.d.ts +22 -0
  64. package/src/lib/angular/remove-route.js +7 -0
  65. package/src/lib/angular/remove-route.js.map +1 -1
  66. package/src/lib/coerce-accessor-declaration.d.ts +18 -0
  67. package/src/lib/coerce-accessor-declaration.js +18 -0
  68. package/src/lib/coerce-accessor-declaration.js.map +1 -1
  69. package/src/lib/coerce-array-element.d.ts +24 -0
  70. package/src/lib/coerce-array-element.js +24 -0
  71. package/src/lib/coerce-array-element.js.map +1 -1
  72. package/src/lib/coerce-class-constructor.d.ts +7 -0
  73. package/src/lib/coerce-class-constructor.js +7 -0
  74. package/src/lib/coerce-class-constructor.js.map +1 -1
  75. package/src/lib/coerce-class-method.d.ts +9 -0
  76. package/src/lib/coerce-class-method.js +9 -0
  77. package/src/lib/coerce-class-method.js.map +1 -1
  78. package/src/lib/coerce-class-property.d.ts +10 -0
  79. package/src/lib/coerce-class-property.js +10 -0
  80. package/src/lib/coerce-class-property.js.map +1 -1
  81. package/src/lib/coerce-class.d.ts +9 -0
  82. package/src/lib/coerce-class.js +9 -0
  83. package/src/lib/coerce-class.js.map +1 -1
  84. package/src/lib/coerce-decorator.d.ts +10 -0
  85. package/src/lib/coerce-decorator.js +10 -0
  86. package/src/lib/coerce-decorator.js.map +1 -1
  87. package/src/lib/coerce-default-class-export.d.ts +5 -0
  88. package/src/lib/coerce-default-class-export.js +5 -0
  89. package/src/lib/coerce-default-class-export.js.map +1 -1
  90. package/src/lib/coerce-default-export.d.ts +5 -0
  91. package/src/lib/coerce-default-export.js +5 -0
  92. package/src/lib/coerce-default-export.js.map +1 -1
  93. package/src/lib/coerce-dependency-injection.d.ts +26 -0
  94. package/src/lib/coerce-dependency-injection.js +8 -0
  95. package/src/lib/coerce-dependency-injection.js.map +1 -1
  96. package/src/lib/coerce-function.d.ts +9 -0
  97. package/src/lib/coerce-function.js +9 -0
  98. package/src/lib/coerce-function.js.map +1 -1
  99. package/src/lib/coerce-imports.d.ts +8 -0
  100. package/src/lib/coerce-imports.js +8 -0
  101. package/src/lib/coerce-imports.js.map +1 -1
  102. package/src/lib/coerce-interface.d.ts +9 -0
  103. package/src/lib/coerce-interface.js +9 -0
  104. package/src/lib/coerce-interface.js.map +1 -1
  105. package/src/lib/coerce-mapping-class-method.d.ts +22 -0
  106. package/src/lib/coerce-mapping-class-method.js +7 -0
  107. package/src/lib/coerce-mapping-class-method.js.map +1 -1
  108. package/src/lib/coerce-property-assignment.d.ts +10 -0
  109. package/src/lib/coerce-property-assignment.js +10 -0
  110. package/src/lib/coerce-property-assignment.js.map +1 -1
  111. package/src/lib/coerce-property-declaration.d.ts +9 -0
  112. package/src/lib/coerce-property-declaration.js.map +1 -1
  113. package/src/lib/coerce-source-file.d.ts +9 -0
  114. package/src/lib/coerce-source-file.js +9 -0
  115. package/src/lib/coerce-source-file.js.map +1 -1
  116. package/src/lib/coerce-statements.d.ts +8 -0
  117. package/src/lib/coerce-statements.js +8 -0
  118. package/src/lib/coerce-statements.js.map +1 -1
  119. package/src/lib/coerce-variable-declaration.d.ts +10 -0
  120. package/src/lib/coerce-variable-declaration.js +10 -0
  121. package/src/lib/coerce-variable-declaration.js.map +1 -1
  122. package/src/lib/create-project.d.ts +6 -0
  123. package/src/lib/create-project.js +6 -0
  124. package/src/lib/create-project.js.map +1 -1
  125. package/src/lib/data-property.d.ts +39 -1
  126. package/src/lib/data-property.js +23 -0
  127. package/src/lib/data-property.js.map +1 -1
  128. package/src/lib/find-function.d.ts +6 -0
  129. package/src/lib/find-function.js +6 -0
  130. package/src/lib/find-function.js.map +1 -1
  131. package/src/lib/get-class-decorator-arguments.js +7 -0
  132. package/src/lib/get-class-decorator-arguments.js.map +1 -1
  133. package/src/lib/get-class.d.ts +9 -0
  134. package/src/lib/get-class.js +9 -0
  135. package/src/lib/get-class.js.map +1 -1
  136. package/src/lib/get-coerce-array-literal-form-object-literal.d.ts +17 -0
  137. package/src/lib/get-coerce-array-literal-form-object-literal.js +17 -0
  138. package/src/lib/get-coerce-array-literal-form-object-literal.js.map +1 -1
  139. package/src/lib/identifier.d.ts +12 -0
  140. package/src/lib/identifier.js +6 -0
  141. package/src/lib/identifier.js.map +1 -1
  142. package/src/lib/nest/add-to-global-health-endpoint.d.ts +6 -0
  143. package/src/lib/nest/add-to-global-health-endpoint.js +6 -0
  144. package/src/lib/nest/add-to-global-health-endpoint.js.map +1 -1
  145. package/src/lib/nest/coerce-app-guard-provider.d.ts +6 -0
  146. package/src/lib/nest/coerce-app-guard-provider.js +6 -0
  147. package/src/lib/nest/coerce-app-guard-provider.js.map +1 -1
  148. package/src/lib/nest/coerce-dto-class.d.ts +30 -0
  149. package/src/lib/nest/coerce-dto-class.js +6 -0
  150. package/src/lib/nest/coerce-dto-class.js.map +1 -1
  151. package/src/lib/nest/coerce-health-controller.d.ts +7 -0
  152. package/src/lib/nest/coerce-health-controller.js +7 -0
  153. package/src/lib/nest/coerce-health-controller.js.map +1 -1
  154. package/src/lib/nest/coerce-health-endpoint.d.ts +7 -0
  155. package/src/lib/nest/coerce-health-endpoint.js +7 -0
  156. package/src/lib/nest/coerce-health-endpoint.js.map +1 -1
  157. package/src/lib/nest/coerce-health-indicator.d.ts +7 -0
  158. package/src/lib/nest/coerce-health-indicator.js +7 -0
  159. package/src/lib/nest/coerce-health-indicator.js.map +1 -1
  160. package/src/lib/nest/coerce-health-module.d.ts +6 -0
  161. package/src/lib/nest/coerce-health-module.js +6 -0
  162. package/src/lib/nest/coerce-health-module.js.map +1 -1
  163. package/src/lib/nest/coerce-nest-app-config.d.ts +25 -0
  164. package/src/lib/nest/coerce-nest-app-config.js +7 -0
  165. package/src/lib/nest/coerce-nest-app-config.js.map +1 -1
  166. package/src/lib/nest/coerce-nest-app-controller.d.ts +9 -0
  167. package/src/lib/nest/coerce-nest-app-controller.js +9 -0
  168. package/src/lib/nest/coerce-nest-app-controller.js.map +1 -1
  169. package/src/lib/nest/coerce-nest-app-module.d.ts +7 -0
  170. package/src/lib/nest/coerce-nest-app-module.js +7 -0
  171. package/src/lib/nest/coerce-nest-app-module.js.map +1 -1
  172. package/src/lib/nest/coerce-nest-cache-module-import.d.ts +10 -0
  173. package/src/lib/nest/coerce-nest-cache-module-import.js +7 -0
  174. package/src/lib/nest/coerce-nest-cache-module-import.js.map +1 -1
  175. package/src/lib/nest/coerce-nest-config-module-import.d.ts +10 -0
  176. package/src/lib/nest/coerce-nest-config-module-import.js +7 -0
  177. package/src/lib/nest/coerce-nest-config-module-import.js.map +1 -1
  178. package/src/lib/nest/coerce-nest-controller.d.ts +14 -0
  179. package/src/lib/nest/coerce-nest-controller.js +8 -0
  180. package/src/lib/nest/coerce-nest-controller.js.map +1 -1
  181. package/src/lib/nest/coerce-nest-environment-module.d.ts +6 -0
  182. package/src/lib/nest/coerce-nest-environment-module.js +6 -0
  183. package/src/lib/nest/coerce-nest-environment-module.js.map +1 -1
  184. package/src/lib/nest/coerce-nest-environment-provider.d.ts +6 -0
  185. package/src/lib/nest/coerce-nest-environment-provider.js +6 -0
  186. package/src/lib/nest/coerce-nest-environment-provider.js.map +1 -1
  187. package/src/lib/nest/coerce-nest-module-controller.d.ts +19 -0
  188. package/src/lib/nest/coerce-nest-module-controller.js +7 -0
  189. package/src/lib/nest/coerce-nest-module-controller.js.map +1 -1
  190. package/src/lib/nest/coerce-nest-module-import.d.ts +21 -0
  191. package/src/lib/nest/coerce-nest-module-import.js +6 -0
  192. package/src/lib/nest/coerce-nest-module-import.js.map +1 -1
  193. package/src/lib/nest/coerce-nest-module-provider.d.ts +18 -0
  194. package/src/lib/nest/coerce-nest-module-provider.js +6 -0
  195. package/src/lib/nest/coerce-nest-module-provider.js.map +1 -1
  196. package/src/lib/nest/coerce-nest-module.d.ts +14 -0
  197. package/src/lib/nest/coerce-nest-module.js +8 -0
  198. package/src/lib/nest/coerce-nest-module.js.map +1 -1
  199. package/src/lib/nest/coerce-nest-operation.d.ts +108 -0
  200. package/src/lib/nest/coerce-nest-operation.js +9 -0
  201. package/src/lib/nest/coerce-nest-operation.js.map +1 -1
  202. package/src/lib/nest/coerce-nest-provider-to-array.d.ts +8 -0
  203. package/src/lib/nest/coerce-nest-provider-to-array.js +8 -0
  204. package/src/lib/nest/coerce-nest-provider-to-array.js.map +1 -1
  205. package/src/lib/nest/coerce-nest-throttler-module-import.d.ts +10 -0
  206. package/src/lib/nest/coerce-nest-throttler-module-import.js +7 -0
  207. package/src/lib/nest/coerce-nest-throttler-module-import.js.map +1 -1
  208. package/src/lib/nest/dto-class-property.d.ts +10 -1
  209. package/src/lib/nest/dto-class-property.js +6 -0
  210. package/src/lib/nest/dto-class-property.js.map +1 -1
  211. package/src/lib/nest/find-nest-module-source-file.d.ts +7 -0
  212. package/src/lib/nest/find-nest-module-source-file.js +7 -0
  213. package/src/lib/nest/find-nest-module-source-file.js.map +1 -1
  214. package/src/lib/nest/get-controller-class.d.ts +7 -0
  215. package/src/lib/nest/get-controller-class.js +7 -0
  216. package/src/lib/nest/get-controller-class.js.map +1 -1
  217. package/src/lib/nest/get-nest-module-metadata.d.ts +6 -0
  218. package/src/lib/nest/get-nest-module-metadata.js +6 -0
  219. package/src/lib/nest/get-nest-module-metadata.js.map +1 -1
  220. package/src/lib/nest/has-nest-module-class.d.ts +6 -0
  221. package/src/lib/nest/has-nest-module-class.js +6 -0
  222. package/src/lib/nest/has-nest-module-class.js.map +1 -1
  223. package/src/lib/nest/has-nest-module-import.d.ts +10 -0
  224. package/src/lib/nest/has-nest-module-import.js +7 -0
  225. package/src/lib/nest/has-nest-module-import.js.map +1 -1
  226. package/src/lib/nest/is-nest-module-class.d.ts +6 -0
  227. package/src/lib/nest/is-nest-module-class.js +6 -0
  228. package/src/lib/nest/is-nest-module-class.js.map +1 -1
  229. package/src/lib/nest/nest-provider-object.d.ts +24 -0
  230. package/src/lib/nest/operation-id-utilities.d.ts +12 -0
  231. package/src/lib/nest/operation-id-utilities.js +12 -0
  232. package/src/lib/nest/operation-id-utilities.js.map +1 -1
  233. package/src/lib/nest/remove-nest-module-import.d.ts +9 -0
  234. package/src/lib/nest/remove-nest-module-import.js +6 -0
  235. package/src/lib/nest/remove-nest-module-import.js.map +1 -1
  236. package/src/lib/nest/remove-nest-module-provider.d.ts +9 -0
  237. package/src/lib/nest/remove-nest-module-provider.js +6 -0
  238. package/src/lib/nest/remove-nest-module-provider.js.map +1 -1
  239. package/src/lib/nest/remove-nest-provider-to-array.d.ts +7 -0
  240. package/src/lib/nest/remove-nest-provider-to-array.js +7 -0
  241. package/src/lib/nest/remove-nest-provider-to-array.js.map +1 -1
  242. package/src/lib/overwrite-options.d.ts +6 -0
  243. package/src/lib/provider-object.d.ts +26 -0
  244. package/src/lib/to-mapping-object.d.ts +14 -0
  245. package/src/lib/to-mapping-object.js +8 -0
  246. package/src/lib/to-mapping-object.js.map +1 -1
  247. package/src/lib/type-import.d.ts +57 -0
  248. package/src/lib/type-import.js +35 -0
  249. package/src/lib/type-import.js.map +1 -1
  250. package/src/lib/upstream-options.d.ts +18 -0
  251. package/src/lib/upstream-options.js +18 -0
  252. package/src/lib/upstream-options.js.map +1 -1
  253. package/src/lib/write-type.d.ts +6 -0
  254. package/src/lib/write-type.js +9 -0
  255. package/src/lib/write-type.js.map +1 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,16 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [1.7.0-dev.0](https://gitlab.com/rxap/packages/compare/@rxap/ts-morph@1.6.1-dev.0...@rxap/ts-morph@1.7.0-dev.0) (2026-02-09)
7
+
8
+ ### Features
9
+
10
+ - **ts-morph:** add parameters to GetClassDecoratorArguments function ([255304f](https://gitlab.com/rxap/packages/commit/255304ff04b102edd4a49bcf582fd8a50978bf17))
11
+
12
+ ## [1.6.1-dev.0](https://gitlab.com/rxap/packages/compare/@rxap/ts-morph@1.6.0...@rxap/ts-morph@1.6.1-dev.0) (2026-01-29)
13
+
14
+ **Note:** Version bump only for package @rxap/ts-morph
15
+
6
16
  # [1.6.0](https://gitlab.com/rxap/packages/compare/@rxap/ts-morph@1.6.0-dev.3...@rxap/ts-morph@1.6.0) (2026-01-23)
7
17
 
8
18
  **Note:** Version bump only for package @rxap/ts-morph
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
- "version": "1.6.0",
2
+ "version": "1.7.0-dev.0",
3
3
  "name": "@rxap/ts-morph",
4
4
  "description": "Provides utilities for manipulating TypeScript code using the ts-morph library. It offers a fluent API to add, modify, and remove code elements such as classes, decorators, imports, and properties in both Angular and NestJS projects. This package simplifies common code generation and refactoring tasks.\n",
5
5
  "license": "GPL-3.0-or-later",
6
6
  "dependencies": {
7
7
  "@nx/devkit": "20.5.0",
8
- "@rxap/utilities": "^16.5.0",
8
+ "@rxap/utilities": "^16.5.1-dev.0",
9
9
  "colors": "^1.4.0",
10
10
  "ts-morph": "^18.0.0",
11
11
  "tslib": "2.6.2"
@@ -44,7 +44,7 @@
44
44
  },
45
45
  "schematics": "./generators.json",
46
46
  "type": "commonjs",
47
- "gitHead": "36b0e9732b24717840935712e316593ff6aba795",
47
+ "gitHead": "dbb0bd2e1d3f41bc16b1a558aa71e6ef54aba7de",
48
48
  "types": "./src/index.d.ts",
49
49
  "main": "./src/index.js"
50
50
  }
@@ -1,3 +1,12 @@
1
1
  import { ArrayLiteralExpression, Expression, ObjectLiteralExpression } from 'ts-morph';
2
2
  import { ProviderObject } from './provider-object';
3
+ /**
4
+ * Adds a provider to an Angular or NestJS provider array.
5
+ *
6
+ * @param providerObject - The provider to add. Can be a string (class name) or a ProviderObject.
7
+ * @param providerArray - The array literal expression to add the provider to.
8
+ * @param overwrite - If true, overwrites the existing provider. If an array of strings, it specifies which properties to overwrite.
9
+ * @param compare - A function to compare an existing object literal expression with the provider object to determine if it exists.
10
+ * @returns The added or updated expression in the array.
11
+ */
3
12
  export declare function AddProviderToArray(providerObject: ProviderObject | string, providerArray: ArrayLiteralExpression, overwrite?: boolean | string[], compare?: (ole: ObjectLiteralExpression, po: ProviderObject) => boolean): Expression;
@@ -3,6 +3,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AddProviderToArray = AddProviderToArray;
4
4
  const utilities_1 = require("@rxap/utilities");
5
5
  const ts_morph_1 = require("ts-morph");
6
+ /**
7
+ * Adds a provider to an Angular or NestJS provider array.
8
+ *
9
+ * @param providerObject - The provider to add. Can be a string (class name) or a ProviderObject.
10
+ * @param providerArray - The array literal expression to add the provider to.
11
+ * @param overwrite - If true, overwrites the existing provider. If an array of strings, it specifies which properties to overwrite.
12
+ * @param compare - A function to compare an existing object literal expression with the provider object to determine if it exists.
13
+ * @returns The added or updated expression in the array.
14
+ */
6
15
  function AddProviderToArray(providerObject, providerArray, overwrite = false, compare = (ole, po) => {
7
16
  var _a;
8
17
  const provideProperty = ole.getProperty('provide');
@@ -1 +1 @@
1
- {"version":3,"file":"add-provider-to-array.js","sourceRoot":"","sources":["../../../../../packages/ts-morph/src/lib/add-provider-to-array.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add-provider-to-array.js","sourceRoot":"","sources":["../../../../../packages/ts-morph/src/lib/add-provider-to-array.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,41 @@
1
1
  import { ArrayLiteralExpression, SourceFile } from 'ts-morph';
2
2
  import { AngularRoute } from './build-route-object';
3
3
  import 'colors';
4
+ /**
5
+ * Factory function to create a default insertAt function for routes.
6
+ * Determines the index to insert a new route based on the route path (e.g. wildcards go last).
7
+ *
8
+ * @param route - The route to insert.
9
+ * @returns A function that takes an array literal expression and returns the index.
10
+ */
4
11
  export declare function DefaultInsertAtFactory(route: AngularRoute): (array: ArrayLiteralExpression) => number;
5
12
  export interface AddRouteOptions {
13
+ /**
14
+ * The route configuration to add.
15
+ */
6
16
  route: AngularRoute;
17
+ /**
18
+ * The path to the parent route's children array where the new route should be added.
19
+ * If not provided, it adds to the root routes array.
20
+ */
7
21
  path?: string[];
22
+ /**
23
+ * The name of the component of the parent route to add the child route to.
24
+ */
8
25
  component?: string;
26
+ /**
27
+ * The name of the routes variable (default: ROUTES).
28
+ */
9
29
  name?: string;
30
+ /**
31
+ * A function to determine the index at which to insert the new route.
32
+ */
10
33
  insertAt?: (array: ArrayLiteralExpression) => number;
11
34
  }
35
+ /**
36
+ * Adds a route to an Angular routes array.
37
+ *
38
+ * @param sourceFile - The source file containing the routes definition.
39
+ * @param options - Options for adding the route.
40
+ */
12
41
  export declare function AddRoute(sourceFile: SourceFile, options: AddRouteOptions): void;
@@ -7,6 +7,13 @@ const coerce_array_element_1 = require("../coerce-array-element");
7
7
  const build_route_object_1 = require("./build-route-object");
8
8
  const find_parent_route_1 = require("./find-parent-route");
9
9
  require("colors");
10
+ /**
11
+ * Factory function to create a default insertAt function for routes.
12
+ * Determines the index to insert a new route based on the route path (e.g. wildcards go last).
13
+ *
14
+ * @param route - The route to insert.
15
+ * @returns A function that takes an array literal expression and returns the index.
16
+ */
10
17
  function DefaultInsertAtFactory(route) {
11
18
  return (array) => {
12
19
  var _a, _b;
@@ -46,6 +53,12 @@ function DefaultInsertAtFactory(route) {
46
53
  return insertAt;
47
54
  };
48
55
  }
56
+ /**
57
+ * Adds a route to an Angular routes array.
58
+ *
59
+ * @param sourceFile - The source file containing the routes definition.
60
+ * @param options - Options for adding the route.
61
+ */
49
62
  function AddRoute(sourceFile, options) {
50
63
  const { component, route, path, name = 'ROUTES', insertAt = DefaultInsertAtFactory(route) } = options;
51
64
  const routes = sourceFile.getVariableDeclaration(name);
@@ -1 +1 @@
1
- {"version":3,"file":"add-route.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/add-route.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add-route.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/add-route.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,51 @@
1
1
  import { WriterFunction } from 'ts-morph';
2
+ /**
3
+ * Interface representing an Angular route definition.
4
+ */
2
5
  export interface AngularRoute {
6
+ /**
7
+ * The path for the route.
8
+ */
3
9
  path: string;
10
+ /**
11
+ * The component to use for the route.
12
+ */
4
13
  component?: string;
14
+ /**
15
+ * Lazy loaded children routes.
16
+ * Can be a string (import path) or object with import and then/property.
17
+ */
5
18
  loadChildren?: string | {
6
19
  import: string;
7
20
  then: string;
8
21
  };
22
+ /**
23
+ * Lazy loaded component.
24
+ */
9
25
  loadComponent?: string | {
10
26
  import: string;
11
27
  then: string;
12
28
  };
29
+ /**
30
+ * The outlet name for the route.
31
+ */
13
32
  outlet?: string | null;
33
+ /**
34
+ * Static data for the route.
35
+ */
14
36
  data?: Record<string, any> | null;
37
+ /**
38
+ * Configuration for loading a remote module (Module Federation).
39
+ */
15
40
  loadRemoteModule?: string | {
16
41
  name: string;
17
42
  entry?: string;
18
43
  };
19
44
  }
45
+ /**
46
+ * Builds an object literal expression for an Angular route.
47
+ *
48
+ * @param route - The route definition.
49
+ * @returns A WriterFunction that writes the object literal.
50
+ */
20
51
  export declare function BuildRouteObject(route: AngularRoute): WriterFunction;
@@ -2,6 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.BuildRouteObject = BuildRouteObject;
4
4
  const ts_morph_1 = require("ts-morph");
5
+ /**
6
+ * Builds an object literal expression for an Angular route.
7
+ *
8
+ * @param route - The route definition.
9
+ * @returns A WriterFunction that writes the object literal.
10
+ */
5
11
  function BuildRouteObject(route) {
6
12
  var _a;
7
13
  const obj = {
@@ -1 +1 @@
1
- {"version":3,"file":"build-route-object.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/build-route-object.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build-route-object.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/build-route-object.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,19 @@
1
1
  import { SourceFile } from 'ts-morph';
2
2
  import { ProviderObject } from '../provider-object';
3
+ /**
4
+ * Options for coercing the application configuration provider.
5
+ */
3
6
  export interface CoerceAppConfigProviderOptions {
4
7
  providers?: Array<ProviderObject | string>;
5
8
  overwrite?: boolean;
6
9
  httpInterceptors?: string[];
7
10
  importProvidersFrom?: string[];
8
11
  }
12
+ /**
13
+ * Coerces the `appConfig` variable in an Angular application configuration file.
14
+ * Adds providers, HTTP interceptors, and `importProvidersFrom` calls.
15
+ *
16
+ * @param sourceFile - The source file containing the app config.
17
+ * @param options - Options for coercing the provider.
18
+ */
9
19
  export declare function CoerceAppConfigProvider(sourceFile: SourceFile, options: CoerceAppConfigProviderOptions): void;
@@ -6,6 +6,13 @@ const add_provider_to_array_1 = require("../add-provider-to-array");
6
6
  const coerce_imports_1 = require("../coerce-imports");
7
7
  const coerce_variable_declaration_1 = require("../coerce-variable-declaration");
8
8
  const get_coerce_array_literal_form_object_literal_1 = require("../get-coerce-array-literal-form-object-literal");
9
+ /**
10
+ * Coerces the `appConfig` variable in an Angular application configuration file.
11
+ * Adds providers, HTTP interceptors, and `importProvidersFrom` calls.
12
+ *
13
+ * @param sourceFile - The source file containing the app config.
14
+ * @param options - Options for coercing the provider.
15
+ */
9
16
  function CoerceAppConfigProvider(sourceFile, options) {
10
17
  const { providers = [], httpInterceptors = [], importProvidersFrom = [], overwrite = false } = options;
11
18
  const appConfigVariableDeclaration = (0, coerce_variable_declaration_1.CoerceVariableDeclaration)(sourceFile, 'appConfig', {
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-app-config-provider.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-app-config-provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coerce-app-config-provider.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-app-config-provider.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,38 @@
1
1
  import { IconConfig } from '@rxap/utilities';
2
2
  import { SourceFile } from 'ts-morph';
3
3
  export interface AppNavigationItem {
4
+ /**
5
+ * The router link path segments.
6
+ */
4
7
  routerLink: string[];
8
+ /**
9
+ * The display label for the navigation item.
10
+ */
5
11
  label: string;
12
+ /**
13
+ * Child navigation items.
14
+ */
6
15
  children?: AppNavigationItem[];
16
+ /**
17
+ * Icon configuration for the item.
18
+ */
7
19
  icon?: IconConfig;
8
20
  }
9
21
  export interface CoerceAppNavigationOptions {
22
+ /**
23
+ * List of navigation items to add.
24
+ */
10
25
  itemList?: AppNavigationItem[];
26
+ /**
27
+ * If true, overwrites existing items with same label.
28
+ */
11
29
  overwrite?: boolean;
12
30
  }
31
+ /**
32
+ * Coerces the application navigation configuration.
33
+ * Creates or updates the `APP_NAVIGATION` constant.
34
+ *
35
+ * @param sourceFile - The source file containing the navigation config.
36
+ * @param options - Options for the navigation items.
37
+ */
13
38
  export declare function CoerceAppNavigation(sourceFile: SourceFile, options?: CoerceAppNavigationOptions): void;
@@ -5,6 +5,13 @@ const utilities_1 = require("@rxap/utilities");
5
5
  const ts_morph_1 = require("ts-morph");
6
6
  const coerce_imports_1 = require("../coerce-imports");
7
7
  const coerce_variable_declaration_1 = require("../coerce-variable-declaration");
8
+ /**
9
+ * Coerces the application navigation configuration.
10
+ * Creates or updates the `APP_NAVIGATION` constant.
11
+ *
12
+ * @param sourceFile - The source file containing the navigation config.
13
+ * @param options - Options for the navigation items.
14
+ */
8
15
  function CoerceAppNavigation(sourceFile, options = {}) {
9
16
  var _a, _b, _c, _d, _e;
10
17
  const variableDeclaration = (0, coerce_variable_declaration_1.CoerceVariableDeclaration)(sourceFile, 'APP_NAVIGATION', {
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-app-navigation.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-app-navigation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coerce-app-navigation.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-app-navigation.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,12 @@
1
1
  import { SourceFile } from 'ts-morph';
2
2
  import { CoerceRoutesOptions } from './coerce-routes';
3
3
  export type CoerceAppRoutesOptions = CoerceRoutesOptions;
4
+ /**
5
+ * Coerces the application routes configuration.
6
+ * Usually creates the root `appRoutes` or `ROUTES` constant.
7
+ *
8
+ * @param sourceFile - The source file containing the routes.
9
+ * @param options - Options for the routes.
10
+ * @returns The variable declaration for the routes.
11
+ */
4
12
  export declare function CoerceAppRoutes(sourceFile: SourceFile, options?: CoerceAppRoutesOptions): import("ts-morph").VariableDeclaration;
@@ -4,6 +4,14 @@ exports.CoerceAppRoutes = CoerceAppRoutes;
4
4
  const ts_morph_1 = require("ts-morph");
5
5
  const coerce_imports_1 = require("../coerce-imports");
6
6
  const coerce_routes_1 = require("./coerce-routes");
7
+ /**
8
+ * Coerces the application routes configuration.
9
+ * Usually creates the root `appRoutes` or `ROUTES` constant.
10
+ *
11
+ * @param sourceFile - The source file containing the routes.
12
+ * @param options - Options for the routes.
13
+ * @returns The variable declaration for the routes.
14
+ */
7
15
  function CoerceAppRoutes(sourceFile, options = {}) {
8
16
  var _a, _b;
9
17
  const variableDeclaration = (0, coerce_routes_1.CoerceRoutes)(sourceFile, Object.assign(Object.assign({}, options), { name: (_a = options.name) !== null && _a !== void 0 ? _a : 'appRoutes', initializer: (_b = options.initializer) !== null && _b !== void 0 ? _b : (w => {
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-app-routes.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-app-routes.ts"],"names":[],"mappings":";;AAYA,0CA0BC;AAtCD,uCAGkB;AAClB,sDAAkD;AAClD,mDAGyB;AAIzB,SAAgB,eAAe,CAAC,UAAsB,EAAE,UAAkC,EAAE;;IAE1F,MAAM,mBAAmB,GAAG,IAAA,4BAAY,EAAC,UAAU,kCAC9C,OAAO,KACV,IAAI,EAAE,MAAA,OAAO,CAAC,IAAI,mCAAI,WAAW,EACjC,WAAW,EAAE,MAAA,OAAO,CAAC,WAAW,mCAAI,CAAC,CAAC,CAAC,EAAE;YACvC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACjB,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAC/B,kBAAO,CAAC,MAAM,CAAC;gBACb,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;gBACxB,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;aAC7B,CAAC,CAAC,CAAC,CAAC,CAAC;YACN,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACf,CAAC,CAAC,IACF,CAAC;IAGH,IAAA,8BAAa,EAAC,UAAU,EAAE;QACxB;YACE,YAAY,EAAE,CAAE,oBAAoB,CAAE;YACtC,eAAe,EAAE,wBAAwB;SAC1C;KACF,CAAC,CAAC;IAEH,OAAO,mBAAmB,CAAC;AAE7B,CAAC"}
1
+ {"version":3,"file":"coerce-app-routes.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-app-routes.ts"],"names":[],"mappings":";;AAoBA,0CA0BC;AA9CD,uCAGkB;AAClB,sDAAkD;AAClD,mDAGyB;AAIzB;;;;;;;GAOG;AACH,SAAgB,eAAe,CAAC,UAAsB,EAAE,UAAkC,EAAE;;IAE1F,MAAM,mBAAmB,GAAG,IAAA,4BAAY,EAAC,UAAU,kCAC9C,OAAO,KACV,IAAI,EAAE,MAAA,OAAO,CAAC,IAAI,mCAAI,WAAW,EACjC,WAAW,EAAE,MAAA,OAAO,CAAC,WAAW,mCAAI,CAAC,CAAC,CAAC,EAAE;YACvC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;YACjB,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YAC/B,kBAAO,CAAC,MAAM,CAAC;gBACb,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;gBACxB,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;aAC7B,CAAC,CAAC,CAAC,CAAC,CAAC;YACN,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACf,CAAC,CAAC,IACF,CAAC;IAGH,IAAA,8BAAa,EAAC,UAAU,EAAE;QACxB;YACE,YAAY,EAAE,CAAE,oBAAoB,CAAE;YACtC,eAAe,EAAE,wBAAwB;SAC1C;KACF,CAAC,CAAC;IAEH,OAAO,mBAAmB,CAAC;AAE7B,CAAC"}
@@ -8,4 +8,12 @@ import { TypeImport } from '../type-import';
8
8
  * @param componentImport - The name or TypeImport of the import to coerce.
9
9
  * @returns - The updated imports array after coercing the import.
10
10
  */
11
+ /**
12
+ * Coerces a component import in an Angular component's `imports` array.
13
+ * Adds the import to the component decorator and the file imports.
14
+ *
15
+ * @param sourceFileOrClassDeclaration - The source file or class declaration of the component.
16
+ * @param componentImport - The name or TypeImport of the component to import.
17
+ * @returns The imports array literal expression.
18
+ */
11
19
  export declare function CoerceComponentImport(sourceFileOrClassDeclaration: SourceFile | ClassDeclaration | ObjectLiteralExpression, componentImport: string | TypeImport): import("ts-morph").ArrayLiteralExpression;
@@ -16,6 +16,14 @@ const get_component_decorator_object_1 = require("./get-component-decorator-obje
16
16
  * @param componentImport - The name or TypeImport of the import to coerce.
17
17
  * @returns - The updated imports array after coercing the import.
18
18
  */
19
+ /**
20
+ * Coerces a component import in an Angular component's `imports` array.
21
+ * Adds the import to the component decorator and the file imports.
22
+ *
23
+ * @param sourceFileOrClassDeclaration - The source file or class declaration of the component.
24
+ * @param componentImport - The name or TypeImport of the component to import.
25
+ * @returns The imports array literal expression.
26
+ */
19
27
  function CoerceComponentImport(sourceFileOrClassDeclaration, componentImport) {
20
28
  var _a;
21
29
  const sourceFile = sourceFileOrClassDeclaration.isKind(ts_morph_1.SyntaxKind.SourceFile) ? sourceFileOrClassDeclaration : sourceFileOrClassDeclaration.getSourceFile();
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-component-import.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-component-import.ts"],"names":[],"mappings":";;AAyBA,sDA4BC;AArDD,uCAKkB;AAClB,kEAA6D;AAC7D,sDAAkD;AAClD,kHAAyG;AACzG,gDAIwB;AACxB,+DAA0D;AAC1D,qFAA+E;AAE/E;;;;;;;GAOG;AACH,SAAgB,qBAAqB,CACnC,4BAAqF,EACrF,eAAoC;;IAGpC,MAAM,UAAU,GAAG,4BAA4B,CAAC,MAAM,CAAC,qBAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,4BAA4B,CAAC,aAAa,EAAE,CAAC;IAE5J,IAAI,wBAAiD,CAAC;IACtD,IAAI,4BAA4B,CAAC,MAAM,CAAC,qBAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC;QAC5E,wBAAwB,GAAG,4BAA4B,CAAC;IAC1D,CAAC;SAAM,IAAI,4BAA4B,CAAC,MAAM,CAAC,qBAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC5E,wBAAwB,GAAG,IAAA,4DAA2B,EAAC,4BAA4B,CAAC,CAAC;IACvF,CAAC;SAAM,CAAC;QACN,wBAAwB,GAAG,IAAA,4DAA2B,EAAC,IAAA,uCAAiB,EAAC,4BAA4B,CAAC,CAAC,CAAC;IAC1G,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAA,eAAe,CAAC,WAAW,mCAAI,eAAe,CAAC,IAAI,CAAC;IAE/H,IAAI,IAAA,0BAAY,EAAC,eAAe,CAAC,EAAE,CAAC;QAClC,IAAA,8BAAa,EAAC,UAAU,EAAE,IAAA,yCAA2B,EAAC,eAAe,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,YAAY,GAAG,IAAA,qFAAsC,EAAC,wBAAwB,EAAE,SAAS,CAAC,CAAC;IAEjG,IAAA,yCAAkB,EAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAE7C,OAAO,YAAY,CAAC;AAEtB,CAAC"}
1
+ {"version":3,"file":"coerce-component-import.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-component-import.ts"],"names":[],"mappings":";;AAiCA,sDA4BC;AA7DD,uCAKkB;AAClB,kEAA6D;AAC7D,sDAAkD;AAClD,kHAAyG;AACzG,gDAIwB;AACxB,+DAA0D;AAC1D,qFAA+E;AAE/E;;;;;;;GAOG;AACH;;;;;;;GAOG;AACH,SAAgB,qBAAqB,CACnC,4BAAqF,EACrF,eAAoC;;IAGpC,MAAM,UAAU,GAAG,4BAA4B,CAAC,MAAM,CAAC,qBAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,4BAA4B,CAAC,aAAa,EAAE,CAAC;IAE5J,IAAI,wBAAiD,CAAC;IACtD,IAAI,4BAA4B,CAAC,MAAM,CAAC,qBAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC;QAC5E,wBAAwB,GAAG,4BAA4B,CAAC;IAC1D,CAAC;SAAM,IAAI,4BAA4B,CAAC,MAAM,CAAC,qBAAU,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC5E,wBAAwB,GAAG,IAAA,4DAA2B,EAAC,4BAA4B,CAAC,CAAC;IACvF,CAAC;SAAM,CAAC;QACN,wBAAwB,GAAG,IAAA,4DAA2B,EAAC,IAAA,uCAAiB,EAAC,4BAA4B,CAAC,CAAC,CAAC;IAC1G,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,MAAA,eAAe,CAAC,WAAW,mCAAI,eAAe,CAAC,IAAI,CAAC;IAE/H,IAAI,IAAA,0BAAY,EAAC,eAAe,CAAC,EAAE,CAAC;QAClC,IAAA,8BAAa,EAAC,UAAU,EAAE,IAAA,yCAA2B,EAAC,eAAe,CAAC,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,YAAY,GAAG,IAAA,qFAAsC,EAAC,wBAAwB,EAAE,SAAS,CAAC,CAAC;IAEjG,IAAA,yCAAkB,EAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAE7C,OAAO,YAAY,CAAC;AAEtB,CAAC"}
@@ -1,9 +1,21 @@
1
1
  import { ClassDeclaration, DecoratableNode, PropertyDeclaration, PropertyNamedNode, SetAccessorDeclaration, SourceFile, WriterFunction } from 'ts-morph';
2
2
  import { TypeImport } from '../type-import';
3
3
  export interface ComponentInputDefinition {
4
+ /**
5
+ * Alias for the input binding (e.g. @Input('alias')).
6
+ */
4
7
  alias?: string;
8
+ /**
9
+ * Whether the input is required.
10
+ */
5
11
  isRequired?: boolean;
12
+ /**
13
+ * Initial value for the input property.
14
+ */
6
15
  initializer?: string | WriterFunction;
16
+ /**
17
+ * If true, creates a setter accessor for the input instead of a simple property.
18
+ */
7
19
  asSetAccessor?: boolean;
8
20
  }
9
21
  export interface SetComponentInputDefinition extends ComponentInputDefinition {
@@ -9,6 +9,16 @@ const coerce_property_declaration_1 = require("../coerce-property-declaration");
9
9
  const has_constructor_parameter_1 = require("../has-constructor-parameter");
10
10
  const write_type_1 = require("../write-type");
11
11
  const get_component_class_1 = require("./get-component-class");
12
+ /**
13
+ * Coerces an Input property in an Angular component.
14
+ * Can create a property or a setter/getter input.
15
+ *
16
+ * @param sourceFileOrClassDeclaration - The source file or class declaration of the component.
17
+ * @param name - The name of the input.
18
+ * @param type - The type of the input.
19
+ * @param options - Options for the input (alias, required, asSetAccessor).
20
+ * @returns The created or existing property/setter declaration.
21
+ */
12
22
  function CoerceComponentInput(sourceFileOrClassDeclaration, name, type, { initializer, alias, isRequired, asSetAccessor } = {}) {
13
23
  const classDeclaration = sourceFileOrClassDeclaration.isKind(ts_morph_1.SyntaxKind.ClassDeclaration) ? sourceFileOrClassDeclaration : (0, get_component_class_1.GetComponentClass)(sourceFileOrClassDeclaration);
14
24
  const sourceFile = sourceFileOrClassDeclaration.isKind(ts_morph_1.SyntaxKind.SourceFile) ? sourceFileOrClassDeclaration : sourceFileOrClassDeclaration.getSourceFile();
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-component-input.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-component-input.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coerce-component-input.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-component-input.ts"],"names":[],"mappings":"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"}
@@ -1,19 +1,47 @@
1
1
  import { ClassDeclarationStructure, ObjectLiteralExpression, OptionalKind, SourceFile } from 'ts-morph';
2
2
  export interface CoerceComponentOptions {
3
+ /**
4
+ * The selector for the component.
5
+ * If false, no selector is added.
6
+ */
3
7
  selector?: string | false;
8
+ /**
9
+ * Prefix to use for the selector (defaults to project prefix).
10
+ */
4
11
  prefix?: string;
12
+ /**
13
+ * Inline template string.
14
+ */
5
15
  template?: string;
16
+ /**
17
+ * Inline styles string or array of strings.
18
+ */
6
19
  styles?: string;
7
20
  /**
8
- * true - use the component name to generate the templateUrl
21
+ * Path to external template file.
22
+ * If true, generates default path based on component name.
9
23
  */
10
24
  templateUrl?: string | true;
11
25
  /**
12
- * true - use the component name to generate a styleUrl
26
+ * Path(s) to external style files.
27
+ * If true, generates default path based on component name.
13
28
  */
14
29
  styleUrls?: string | string[] | true;
30
+ /**
31
+ * Change detection strategy (OnPush or Default).
32
+ */
15
33
  changeDetection?: 'OnPush' | 'Default';
16
34
  }
35
+ /**
36
+ * Coerces an Angular component class declaration.
37
+ * Creates the component class and decorates it with @Component.
38
+ *
39
+ * @param sourceFile - The source file to add the component to.
40
+ * @param name - The name of the component (kebab-case).
41
+ * @param options - Options for the component (selector, template, styles, etc.).
42
+ * @param classStructure - Optional structure for the class.
43
+ * @returns An object containing the class declaration and the component decorator object.
44
+ */
17
45
  export declare function CoerceComponent(sourceFile: SourceFile, name: string, options?: CoerceComponentOptions, classStructure?: Omit<OptionalKind<ClassDeclarationStructure>, 'name'>): {
18
46
  classDeclaration: import("ts-morph").ClassDeclaration;
19
47
  componentDecoratorObject: ObjectLiteralExpression;
@@ -6,6 +6,16 @@ const ts_morph_1 = require("ts-morph");
6
6
  const coerce_class_1 = require("../coerce-class");
7
7
  const coerce_decorator_1 = require("../coerce-decorator");
8
8
  const coerce_imports_1 = require("../coerce-imports");
9
+ /**
10
+ * Coerces an Angular component class declaration.
11
+ * Creates the component class and decorates it with @Component.
12
+ *
13
+ * @param sourceFile - The source file to add the component to.
14
+ * @param name - The name of the component (kebab-case).
15
+ * @param options - Options for the component (selector, template, styles, etc.).
16
+ * @param classStructure - Optional structure for the class.
17
+ * @returns An object containing the class declaration and the component decorator object.
18
+ */
9
19
  function CoerceComponent(sourceFile, name, options = {}, classStructure = {}) {
10
20
  var _a;
11
21
  const className = (0, utilities_1.classify)((0, utilities_1.CoerceSuffix)((0, utilities_1.dasherize)(name), '-component'));
@@ -1 +1 @@
1
- {"version":3,"file":"coerce-component.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"coerce-component.js","sourceRoot":"","sources":["../../../../../../packages/ts-morph/src/lib/angular/coerce-component.ts"],"names":[],"mappings":"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"}