@solidstarters/solid-code-builder 1.0.8 → 1.0.10

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 (277) hide show
  1. package/dist/code-builder/lib/field/FieldManager.d.ts +2 -1
  2. package/dist/code-builder/lib/field/FieldManager.js +1 -0
  3. package/dist/code-builder/lib/field/FieldManager.js.map +1 -1
  4. package/{src/code-builder/lib/field/decorator-managers/dto/DecimalDecoratorManager.d.ts → dist/code-builder/lib/field/decorator-managers/dto/ApiPropertyDecoratorManager.d.ts} +7 -7
  5. package/{src/code-builder/lib/field/decorator-managers/dto/MinLengthDecoratorManager.js → dist/code-builder/lib/field/decorator-managers/dto/ApiPropertyDecoratorManager.js} +10 -10
  6. package/dist/code-builder/lib/field/decorator-managers/dto/ApiPropertyDecoratorManager.js.map +1 -0
  7. package/dist/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.d.ts +2 -2
  8. package/dist/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.js +8 -8
  9. package/dist/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.js.map +1 -1
  10. package/dist/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.d.ts +1 -0
  11. package/dist/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.js +12 -4
  12. package/dist/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.js.map +1 -1
  13. package/dist/code-builder/lib/field/field-managers/base/BaseFieldManagerForEntity.js +2 -2
  14. package/dist/code-builder/lib/field/field-managers/base/BaseFieldManagerForEntity.js.map +1 -1
  15. package/dist/code-builder/lib/model/helpers.d.ts +1 -0
  16. package/dist/code-builder/lib/model/helpers.js +4 -0
  17. package/dist/code-builder/lib/model/helpers.js.map +1 -1
  18. package/dist/files/generate-model/controllers/__model@dasherize__.controller.ts +3 -2
  19. package/files/generate-model/controllers/__model@dasherize__.controller.ts +3 -2
  20. package/package.json +1 -1
  21. package/src/code-builder/lib/field/FieldManager.ts +1 -0
  22. package/src/code-builder/lib/field/decorator-managers/dto/ApiPropertyDecoratorManager.ts +127 -0
  23. package/src/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.ts +10 -10
  24. package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.ts +13 -3
  25. package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForEntity.ts +2 -2
  26. package/src/code-builder/lib/model/helpers.ts +4 -0
  27. package/solidstarters-solid-code-builder-1.0.7.tgz +0 -0
  28. package/src/code-builder/index.d.ts +0 -9
  29. package/src/code-builder/index.js +0 -178
  30. package/src/code-builder/index.js.map +0 -1
  31. package/src/code-builder/index_spec.d.ts +0 -1
  32. package/src/code-builder/index_spec.js +0 -46
  33. package/src/code-builder/index_spec.js.map +0 -1
  34. package/src/code-builder/lib/field/FieldManager.d.ts +0 -106
  35. package/src/code-builder/lib/field/FieldManager.js +0 -236
  36. package/src/code-builder/lib/field/FieldManager.js.map +0 -1
  37. package/src/code-builder/lib/field/decorator-managers/dto/ArrayDecoratorManager.d.ts +0 -26
  38. package/src/code-builder/lib/field/decorator-managers/dto/ArrayDecoratorManager.js +0 -107
  39. package/src/code-builder/lib/field/decorator-managers/dto/ArrayDecoratorManager.js.map +0 -1
  40. package/src/code-builder/lib/field/decorator-managers/dto/BigIntDecoratorManager.d.ts +0 -24
  41. package/src/code-builder/lib/field/decorator-managers/dto/BigIntDecoratorManager.js +0 -100
  42. package/src/code-builder/lib/field/decorator-managers/dto/BigIntDecoratorManager.js.map +0 -1
  43. package/src/code-builder/lib/field/decorator-managers/dto/BooleanDecoratorManager.d.ts +0 -24
  44. package/src/code-builder/lib/field/decorator-managers/dto/BooleanDecoratorManager.js +0 -102
  45. package/src/code-builder/lib/field/decorator-managers/dto/BooleanDecoratorManager.js.map +0 -1
  46. package/src/code-builder/lib/field/decorator-managers/dto/DateDecoratorManager.d.ts +0 -24
  47. package/src/code-builder/lib/field/decorator-managers/dto/DateDecoratorManager.js +0 -106
  48. package/src/code-builder/lib/field/decorator-managers/dto/DateDecoratorManager.js.map +0 -1
  49. package/src/code-builder/lib/field/decorator-managers/dto/DecimalDecoratorManager.js +0 -112
  50. package/src/code-builder/lib/field/decorator-managers/dto/DecimalDecoratorManager.js.map +0 -1
  51. package/src/code-builder/lib/field/decorator-managers/dto/EmailDecoratorManager.d.ts +0 -24
  52. package/src/code-builder/lib/field/decorator-managers/dto/EmailDecoratorManager.js +0 -99
  53. package/src/code-builder/lib/field/decorator-managers/dto/EmailDecoratorManager.js.map +0 -1
  54. package/src/code-builder/lib/field/decorator-managers/dto/IntDecoratorManager.d.ts +0 -24
  55. package/src/code-builder/lib/field/decorator-managers/dto/IntDecoratorManager.js +0 -100
  56. package/src/code-builder/lib/field/decorator-managers/dto/IntDecoratorManager.js.map +0 -1
  57. package/src/code-builder/lib/field/decorator-managers/dto/JsonDecoratorManager.d.ts +0 -24
  58. package/src/code-builder/lib/field/decorator-managers/dto/JsonDecoratorManager.js +0 -100
  59. package/src/code-builder/lib/field/decorator-managers/dto/JsonDecoratorManager.js.map +0 -1
  60. package/src/code-builder/lib/field/decorator-managers/dto/LengthDecoratorManager.d.ts +0 -25
  61. package/src/code-builder/lib/field/decorator-managers/dto/LengthDecoratorManager.js +0 -104
  62. package/src/code-builder/lib/field/decorator-managers/dto/LengthDecoratorManager.js.map +0 -1
  63. package/src/code-builder/lib/field/decorator-managers/dto/MaxDecoratorManager.d.ts +0 -25
  64. package/src/code-builder/lib/field/decorator-managers/dto/MaxDecoratorManager.js +0 -103
  65. package/src/code-builder/lib/field/decorator-managers/dto/MaxDecoratorManager.js.map +0 -1
  66. package/src/code-builder/lib/field/decorator-managers/dto/MaxLengthDecoratorManager.d.ts +0 -25
  67. package/src/code-builder/lib/field/decorator-managers/dto/MaxLengthDecoratorManager.js +0 -103
  68. package/src/code-builder/lib/field/decorator-managers/dto/MaxLengthDecoratorManager.js.map +0 -1
  69. package/src/code-builder/lib/field/decorator-managers/dto/MinDecoratorManager.d.ts +0 -25
  70. package/src/code-builder/lib/field/decorator-managers/dto/MinDecoratorManager.js +0 -102
  71. package/src/code-builder/lib/field/decorator-managers/dto/MinDecoratorManager.js.map +0 -1
  72. package/src/code-builder/lib/field/decorator-managers/dto/MinLengthDecoratorManager.d.ts +0 -25
  73. package/src/code-builder/lib/field/decorator-managers/dto/MinLengthDecoratorManager.js.map +0 -1
  74. package/src/code-builder/lib/field/decorator-managers/dto/NumberDecoratorManager.d.ts +0 -24
  75. package/src/code-builder/lib/field/decorator-managers/dto/NumberDecoratorManager.js +0 -112
  76. package/src/code-builder/lib/field/decorator-managers/dto/NumberDecoratorManager.js.map +0 -1
  77. package/src/code-builder/lib/field/decorator-managers/dto/OptionalDecoratorManager.d.ts +0 -26
  78. package/src/code-builder/lib/field/decorator-managers/dto/OptionalDecoratorManager.js +0 -104
  79. package/src/code-builder/lib/field/decorator-managers/dto/OptionalDecoratorManager.js.map +0 -1
  80. package/src/code-builder/lib/field/decorator-managers/dto/RegexDecoratorManager.d.ts +0 -25
  81. package/src/code-builder/lib/field/decorator-managers/dto/RegexDecoratorManager.js +0 -102
  82. package/src/code-builder/lib/field/decorator-managers/dto/RegexDecoratorManager.js.map +0 -1
  83. package/src/code-builder/lib/field/decorator-managers/dto/RequiredDecoratorManager.d.ts +0 -25
  84. package/src/code-builder/lib/field/decorator-managers/dto/RequiredDecoratorManager.js +0 -100
  85. package/src/code-builder/lib/field/decorator-managers/dto/RequiredDecoratorManager.js.map +0 -1
  86. package/src/code-builder/lib/field/decorator-managers/dto/StringDecoratorManager.d.ts +0 -24
  87. package/src/code-builder/lib/field/decorator-managers/dto/StringDecoratorManager.js +0 -99
  88. package/src/code-builder/lib/field/decorator-managers/dto/StringDecoratorManager.js.map +0 -1
  89. package/src/code-builder/lib/field/decorator-managers/dto/TransformDecoratorManager.d.ts +0 -25
  90. package/src/code-builder/lib/field/decorator-managers/dto/TransformDecoratorManager.js +0 -102
  91. package/src/code-builder/lib/field/decorator-managers/dto/TransformDecoratorManager.js.map +0 -1
  92. package/src/code-builder/lib/field/decorator-managers/dto/ValidateNestedDecoratorManager.d.ts +0 -30
  93. package/src/code-builder/lib/field/decorator-managers/dto/ValidateNestedDecoratorManager.js +0 -140
  94. package/src/code-builder/lib/field/decorator-managers/dto/ValidateNestedDecoratorManager.js.map +0 -1
  95. package/src/code-builder/lib/field/decorator-managers/entity/ColumnDecoratorManager.d.ts +0 -34
  96. package/src/code-builder/lib/field/decorator-managers/entity/ColumnDecoratorManager.js +0 -178
  97. package/src/code-builder/lib/field/decorator-managers/entity/ColumnDecoratorManager.js.map +0 -1
  98. package/src/code-builder/lib/field/decorator-managers/entity/IndexDecoratorManager.d.ts +0 -24
  99. package/src/code-builder/lib/field/decorator-managers/entity/IndexDecoratorManager.js +0 -79
  100. package/src/code-builder/lib/field/decorator-managers/entity/IndexDecoratorManager.js.map +0 -1
  101. package/src/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.d.ts +0 -29
  102. package/src/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.js +0 -118
  103. package/src/code-builder/lib/field/decorator-managers/entity/JoinTableDecoratorManager.js.map +0 -1
  104. package/src/code-builder/lib/field/decorator-managers/entity/ManyToManyDecoratorManager.d.ts +0 -37
  105. package/src/code-builder/lib/field/decorator-managers/entity/ManyToManyDecoratorManager.js +0 -175
  106. package/src/code-builder/lib/field/decorator-managers/entity/ManyToManyDecoratorManager.js.map +0 -1
  107. package/src/code-builder/lib/field/decorator-managers/entity/ManyToOneDecoratorManager.d.ts +0 -34
  108. package/src/code-builder/lib/field/decorator-managers/entity/ManyToOneDecoratorManager.js +0 -179
  109. package/src/code-builder/lib/field/decorator-managers/entity/ManyToOneDecoratorManager.js.map +0 -1
  110. package/src/code-builder/lib/field/decorator-managers/entity/OneToManyDecoratorManager.d.ts +0 -33
  111. package/src/code-builder/lib/field/decorator-managers/entity/OneToManyDecoratorManager.js +0 -155
  112. package/src/code-builder/lib/field/decorator-managers/entity/OneToManyDecoratorManager.js.map +0 -1
  113. package/src/code-builder/lib/field/decorator-managers/entity/UniqueIndexDecoratorManager.d.ts +0 -31
  114. package/src/code-builder/lib/field/decorator-managers/entity/UniqueIndexDecoratorManager.js +0 -174
  115. package/src/code-builder/lib/field/decorator-managers/entity/UniqueIndexDecoratorManager.js.map +0 -1
  116. package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.d.ts +0 -51
  117. package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.js +0 -345
  118. package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForDto.js.map +0 -1
  119. package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForEntity.d.ts +0 -58
  120. package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForEntity.js +0 -373
  121. package/src/code-builder/lib/field/field-managers/base/BaseFieldManagerForEntity.js.map +0 -1
  122. package/src/code-builder/lib/field/field-managers/base/DeleteType.d.ts +0 -6
  123. package/src/code-builder/lib/field/field-managers/base/DeleteType.js +0 -11
  124. package/src/code-builder/lib/field/field-managers/base/DeleteType.js.map +0 -1
  125. package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldHandler.d.ts +0 -13
  126. package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldHandler.js +0 -33
  127. package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldHandler.js.map +0 -1
  128. package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldManagerForDto.d.ts +0 -23
  129. package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldManagerForDto.js +0 -81
  130. package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldManagerForDto.js.map +0 -1
  131. package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldManagerForEntity.d.ts +0 -13
  132. package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldManagerForEntity.js +0 -55
  133. package/src/code-builder/lib/field/field-managers/bigint/BigIntFieldManagerForEntity.js.map +0 -1
  134. package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldHandler.d.ts +0 -13
  135. package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldHandler.js +0 -33
  136. package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldHandler.js.map +0 -1
  137. package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldManagerForDto.d.ts +0 -22
  138. package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldManagerForDto.js +0 -75
  139. package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldManagerForDto.js.map +0 -1
  140. package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldManagerForEntity.d.ts +0 -13
  141. package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldManagerForEntity.js +0 -51
  142. package/src/code-builder/lib/field/field-managers/boolean/BooleanFieldManagerForEntity.js.map +0 -1
  143. package/src/code-builder/lib/field/field-managers/computed/ComputedFieldHandler.d.ts +0 -14
  144. package/src/code-builder/lib/field/field-managers/computed/ComputedFieldHandler.js +0 -30
  145. package/src/code-builder/lib/field/field-managers/computed/ComputedFieldHandler.js.map +0 -1
  146. package/src/code-builder/lib/field/field-managers/computed/ComputedFieldManagerForEntity.d.ts +0 -11
  147. package/src/code-builder/lib/field/field-managers/computed/ComputedFieldManagerForEntity.js +0 -33
  148. package/src/code-builder/lib/field/field-managers/computed/ComputedFieldManagerForEntity.js.map +0 -1
  149. package/src/code-builder/lib/field/field-managers/date/DateFieldHandler.d.ts +0 -13
  150. package/src/code-builder/lib/field/field-managers/date/DateFieldHandler.js +0 -33
  151. package/src/code-builder/lib/field/field-managers/date/DateFieldHandler.js.map +0 -1
  152. package/src/code-builder/lib/field/field-managers/date/DateFieldManagerForDto.d.ts +0 -22
  153. package/src/code-builder/lib/field/field-managers/date/DateFieldManagerForDto.js +0 -81
  154. package/src/code-builder/lib/field/field-managers/date/DateFieldManagerForDto.js.map +0 -1
  155. package/src/code-builder/lib/field/field-managers/date/DateFieldManagerForEntity.d.ts +0 -13
  156. package/src/code-builder/lib/field/field-managers/date/DateFieldManagerForEntity.js +0 -59
  157. package/src/code-builder/lib/field/field-managers/date/DateFieldManagerForEntity.js.map +0 -1
  158. package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldHandler.d.ts +0 -13
  159. package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldHandler.js +0 -33
  160. package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldHandler.js.map +0 -1
  161. package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldManagerForDto.d.ts +0 -22
  162. package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldManagerForDto.js +0 -77
  163. package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldManagerForDto.js.map +0 -1
  164. package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldManagerForEntity.d.ts +0 -13
  165. package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldManagerForEntity.js +0 -53
  166. package/src/code-builder/lib/field/field-managers/decimal/DecimalFieldManagerForEntity.js.map +0 -1
  167. package/src/code-builder/lib/field/field-managers/email/EmailFieldHandler.d.ts +0 -14
  168. package/src/code-builder/lib/field/field-managers/email/EmailFieldHandler.js +0 -34
  169. package/src/code-builder/lib/field/field-managers/email/EmailFieldHandler.js.map +0 -1
  170. package/src/code-builder/lib/field/field-managers/email/EmailFieldManagerForDto.d.ts +0 -22
  171. package/src/code-builder/lib/field/field-managers/email/EmailFieldManagerForDto.js +0 -72
  172. package/src/code-builder/lib/field/field-managers/email/EmailFieldManagerForDto.js.map +0 -1
  173. package/src/code-builder/lib/field/field-managers/email/EmailFieldManagerForEntity.d.ts +0 -12
  174. package/src/code-builder/lib/field/field-managers/email/EmailFieldManagerForEntity.js +0 -44
  175. package/src/code-builder/lib/field/field-managers/email/EmailFieldManagerForEntity.js.map +0 -1
  176. package/src/code-builder/lib/field/field-managers/int/IntFieldHandler.d.ts +0 -13
  177. package/src/code-builder/lib/field/field-managers/int/IntFieldHandler.js +0 -33
  178. package/src/code-builder/lib/field/field-managers/int/IntFieldHandler.js.map +0 -1
  179. package/src/code-builder/lib/field/field-managers/int/IntFieldManagerForDto.d.ts +0 -22
  180. package/src/code-builder/lib/field/field-managers/int/IntFieldManagerForDto.js +0 -76
  181. package/src/code-builder/lib/field/field-managers/int/IntFieldManagerForDto.js.map +0 -1
  182. package/src/code-builder/lib/field/field-managers/int/IntFieldManagerForEntity.d.ts +0 -13
  183. package/src/code-builder/lib/field/field-managers/int/IntFieldManagerForEntity.js +0 -52
  184. package/src/code-builder/lib/field/field-managers/int/IntFieldManagerForEntity.js.map +0 -1
  185. package/src/code-builder/lib/field/field-managers/json/JsonFieldHandler.d.ts +0 -14
  186. package/src/code-builder/lib/field/field-managers/json/JsonFieldHandler.js +0 -34
  187. package/src/code-builder/lib/field/field-managers/json/JsonFieldHandler.js.map +0 -1
  188. package/src/code-builder/lib/field/field-managers/json/JsonFieldManagerForDto.d.ts +0 -20
  189. package/src/code-builder/lib/field/field-managers/json/JsonFieldManagerForDto.js +0 -57
  190. package/src/code-builder/lib/field/field-managers/json/JsonFieldManagerForDto.js.map +0 -1
  191. package/src/code-builder/lib/field/field-managers/json/JsonFieldManagerForEntity.d.ts +0 -9
  192. package/src/code-builder/lib/field/field-managers/json/JsonFieldManagerForEntity.js +0 -21
  193. package/src/code-builder/lib/field/field-managers/json/JsonFieldManagerForEntity.js.map +0 -1
  194. package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldHandler.d.ts +0 -14
  195. package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldHandler.js +0 -34
  196. package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldHandler.js.map +0 -1
  197. package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldManagerForDto.d.ts +0 -22
  198. package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldManagerForDto.js +0 -63
  199. package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldManagerForDto.js.map +0 -1
  200. package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldManagerForEntity.d.ts +0 -11
  201. package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldManagerForEntity.js +0 -34
  202. package/src/code-builder/lib/field/field-managers/long-text/LongTextFieldManagerForEntity.js.map +0 -1
  203. package/src/code-builder/lib/field/field-managers/media/MediaFieldHandler.d.ts +0 -13
  204. package/src/code-builder/lib/field/field-managers/media/MediaFieldHandler.js +0 -33
  205. package/src/code-builder/lib/field/field-managers/media/MediaFieldHandler.js.map +0 -1
  206. package/src/code-builder/lib/field/field-managers/media/MediaFieldManagerForDto.d.ts +0 -23
  207. package/src/code-builder/lib/field/field-managers/media/MediaFieldManagerForDto.js +0 -72
  208. package/src/code-builder/lib/field/field-managers/media/MediaFieldManagerForDto.js.map +0 -1
  209. package/src/code-builder/lib/field/field-managers/media/MediaFieldManagerForEntity.d.ts +0 -12
  210. package/src/code-builder/lib/field/field-managers/media/MediaFieldManagerForEntity.js +0 -57
  211. package/src/code-builder/lib/field/field-managers/media/MediaFieldManagerForEntity.js.map +0 -1
  212. package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldHandler.d.ts +0 -13
  213. package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldHandler.js +0 -27
  214. package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldHandler.js.map +0 -1
  215. package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldManagerForDto.d.ts +0 -24
  216. package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldManagerForDto.js +0 -75
  217. package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldManagerForDto.js.map +0 -1
  218. package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldManagerForEntity.d.ts +0 -12
  219. package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldManagerForEntity.js +0 -35
  220. package/src/code-builder/lib/field/field-managers/no-ops/NoOpsFieldManagerForEntity.js.map +0 -1
  221. package/src/code-builder/lib/field/field-managers/password/PasswordFieldHandler.d.ts +0 -14
  222. package/src/code-builder/lib/field/field-managers/password/PasswordFieldHandler.js +0 -34
  223. package/src/code-builder/lib/field/field-managers/password/PasswordFieldHandler.js.map +0 -1
  224. package/src/code-builder/lib/field/field-managers/password/PasswordFieldManagerForDto.d.ts +0 -29
  225. package/src/code-builder/lib/field/field-managers/password/PasswordFieldManagerForDto.js +0 -121
  226. package/src/code-builder/lib/field/field-managers/password/PasswordFieldManagerForDto.js.map +0 -1
  227. package/src/code-builder/lib/field/field-managers/password/PasswordFieldManagerForEntity.d.ts +0 -11
  228. package/src/code-builder/lib/field/field-managers/password/PasswordFieldManagerForEntity.js +0 -37
  229. package/src/code-builder/lib/field/field-managers/password/PasswordFieldManagerForEntity.js.map +0 -1
  230. package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldHandler.d.ts +0 -13
  231. package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldHandler.js +0 -33
  232. package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldHandler.js.map +0 -1
  233. package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldManagerForDto.d.ts +0 -51
  234. package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldManagerForDto.js +0 -366
  235. package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldManagerForDto.js.map +0 -1
  236. package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldManagerForEntity.d.ts +0 -30
  237. package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldManagerForEntity.js +0 -158
  238. package/src/code-builder/lib/field/field-managers/relation/ManyToManyRelationFieldManagerForEntity.js.map +0 -1
  239. package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldHandler.d.ts +0 -13
  240. package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldHandler.js +0 -33
  241. package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldHandler.js.map +0 -1
  242. package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldManagerForDto.d.ts +0 -43
  243. package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldManagerForDto.js +0 -294
  244. package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldManagerForDto.js.map +0 -1
  245. package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldManagerForEntity.d.ts +0 -31
  246. package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldManagerForEntity.js +0 -177
  247. package/src/code-builder/lib/field/field-managers/relation/ManyToOneRelationFieldManagerForEntity.js.map +0 -1
  248. package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldHandler.d.ts +0 -14
  249. package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldHandler.js +0 -34
  250. package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldHandler.js.map +0 -1
  251. package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldManagerForDto.d.ts +0 -22
  252. package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldManagerForDto.js +0 -63
  253. package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldManagerForDto.js.map +0 -1
  254. package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldManagerForEntity.d.ts +0 -11
  255. package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldManagerForEntity.js +0 -34
  256. package/src/code-builder/lib/field/field-managers/rich-text/RichTextFieldManagerForEntity.js.map +0 -1
  257. package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldHandler.d.ts +0 -14
  258. package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldHandler.js +0 -34
  259. package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldHandler.js.map +0 -1
  260. package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldManagerForDto.d.ts +0 -22
  261. package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldManagerForDto.js +0 -63
  262. package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldManagerForDto.js.map +0 -1
  263. package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldManagerForEntity.d.ts +0 -11
  264. package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldManagerForEntity.js +0 -37
  265. package/src/code-builder/lib/field/field-managers/short-text/ShortTextFieldManagerForEntity.js.map +0 -1
  266. package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldHandler.d.ts +0 -14
  267. package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldHandler.js +0 -34
  268. package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldHandler.js.map +0 -1
  269. package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldManagerForDto.d.ts +0 -8
  270. package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldManagerForDto.js +0 -15
  271. package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldManagerForDto.js.map +0 -1
  272. package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldManagerForEntity.d.ts +0 -11
  273. package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldManagerForEntity.js +0 -33
  274. package/src/code-builder/lib/field/field-managers/uuid/UUIDFieldManagerForEntity.js.map +0 -1
  275. package/src/code-builder/lib/model/helpers.d.ts +0 -49
  276. package/src/code-builder/lib/model/helpers.js +0 -407
  277. package/src/code-builder/lib/model/helpers.js.map +0 -1
@@ -1,178 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.ColumnDecoratorManager = void 0;
7
- const typescript_1 = __importDefault(require("@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript"));
8
- const lodash_1 = __importDefault(require("lodash"));
9
- const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
10
- class ColumnDecoratorManager {
11
- constructor(options, fieldNode) {
12
- this.options = options;
13
- this.fieldNode = fieldNode;
14
- }
15
- isApplyDecorator() {
16
- return this.options.isColumn;
17
- }
18
- decoratorName() {
19
- return 'Column';
20
- }
21
- setFieldNode(fieldNode) {
22
- this.fieldNode = fieldNode;
23
- }
24
- buildDecorator() {
25
- const fieldSourceLines = [];
26
- const changes = [];
27
- //Add the Column decorator to the field
28
- const columnDecoratorLine = `@${this.decoratorName()}(${this.buildColumnOptionsCode()})`;
29
- fieldSourceLines.push(columnDecoratorLine);
30
- changes.push(...this.decoratorImports());
31
- return {
32
- filePath: this.options.source.fileName,
33
- field: this.options.field,
34
- changes: changes,
35
- fieldSourceLines: fieldSourceLines,
36
- };
37
- }
38
- decoratorImports() {
39
- return [(0, ast_utils_1.insertImport)(this.options.source, this.options.source.fileName, this.decoratorName(), 'typeorm')];
40
- }
41
- updateDecorator() {
42
- if (!this.fieldNode)
43
- throw new Error('Field node is required for updating the index decorator');
44
- let newModifiers = [];
45
- let existingModifiers = this.fieldNode.modifiers;
46
- // Check if the field has an Column decorator.
47
- const existingDecorator = this.findDecorator(this.decoratorName(), existingModifiers);
48
- //Remove the column decorator if the column decorator exists
49
- //TODO probably this too can be done in a lesser intrusive way i.e update everything instead of removing and adding
50
- newModifiers = [...this.filterNonDecorators(existingModifiers), ...this.filterOtherDecorators(this.decoratorName(), existingModifiers)];
51
- //Add the column decorator if column decorator is required
52
- const changes = [];
53
- if (this.isApplyDecorator()) {
54
- newModifiers = [...newModifiers, this.createColumnDecorator(existingDecorator)];
55
- changes.push(...this.decoratorImports());
56
- }
57
- const updatedProperty = typescript_1.default.factory.updatePropertyDeclaration(this.fieldNode, newModifiers, //Replace with new modifiers
58
- this.fieldNode.name, this.fieldNode.questionToken, this.fieldNode.type, this.fieldNode.initializer);
59
- return [updatedProperty, changes];
60
- }
61
- findDecorator(name, existingModifiers) {
62
- return existingModifiers ? existingModifiers.filter((m) => (m.kind === typescript_1.default.SyntaxKind.Decorator)).map(m => m).filter(m => this.containsIdentifierName(m, name)).pop() : undefined;
63
- }
64
- filterOtherDecorators(name, existingModifiers) {
65
- return existingModifiers ? existingModifiers.filter((m) => (m.kind === typescript_1.default.SyntaxKind.Decorator)).map(m => m).filter(m => !this.containsIdentifierName(m, name)) : [];
66
- }
67
- filterNonDecorators(existingModifiers) {
68
- return existingModifiers ? existingModifiers.filter((m) => (m.kind !== typescript_1.default.SyntaxKind.Decorator)).map(m => m) : [];
69
- }
70
- containsIdentifierName(m, identifierName) {
71
- const callExpression = m.expression;
72
- const identifier = callExpression.expression;
73
- return identifier.text === identifierName;
74
- }
75
- createColumnDecorator(existingColumnDecorator) {
76
- // Capture the existing column decorator options
77
- let existingColumnDecoratorPropertyAssignments = [];
78
- if (existingColumnDecorator !== undefined) {
79
- //Pre-set the column options from the existing column decorator
80
- const existingCallExpression = existingColumnDecorator.expression;
81
- // Check if call expression has at least 1 arguments
82
- if (existingCallExpression.arguments.length > 0) {
83
- if (!typescript_1.default.isObjectLiteralExpression(existingCallExpression.arguments[0])) {
84
- throw new Error('Column decorator 1st arguments must be an object literal containing the column options');
85
- }
86
- const existingObjectLiteralExpression = existingCallExpression.arguments[0];
87
- existingColumnDecoratorPropertyAssignments.push(...existingObjectLiteralExpression.properties);
88
- }
89
- }
90
- // Create the new column decorator options as property assignments, if the option is not null
91
- const columnDecoratorOptions = this.createColumnDecoratorOptions();
92
- const newPropertyAssignments = Array.from(columnDecoratorOptions.values()).filter(p => p !== null);
93
- // console.log('newPropertyAssignments', newPropertyAssignments.map(p => JSON.stringify(p.name)).join(', '));
94
- // Add the other unhandled column decorator options
95
- const handledColumnDecoratorOptions = Array.from(columnDecoratorOptions.keys());
96
- //@ts-ignore
97
- const otherPropertyAssignments = existingColumnDecoratorPropertyAssignments.filter(ps => { var _a; return !handledColumnDecoratorOptions.includes((_a = ps.name) === null || _a === void 0 ? void 0 : _a.escapedText); });
98
- newPropertyAssignments.push(...otherPropertyAssignments);
99
- // Re-create the column decorator with the merged column decorator options
100
- const decoratorIdentifier = typescript_1.default.factory.createIdentifier(this.decoratorName());
101
- const decoratorOptions = typescript_1.default.factory.createObjectLiteralExpression(newPropertyAssignments);
102
- const call = typescript_1.default.factory.createCallExpression(decoratorIdentifier, undefined, [decoratorOptions]);
103
- return typescript_1.default.factory.createDecorator(call);
104
- }
105
- createColumnDecoratorOptions() {
106
- const options = new Map();
107
- //Set common options
108
- //TODO Proper types to be used e.g ColumnCommonOptions
109
- // if (this.field.defaultValue) {
110
- // options.set('default', this.field.defaultValue);
111
- // }
112
- (!lodash_1.default.isEmpty(this.options.columnName)) ? options.set('name', typescript_1.default.factory.createStringLiteral(this.options.columnName)) : options.set('name', null);
113
- (this.options.type) ? options.set('type', typescript_1.default.factory.createStringLiteral(this.options.type)) : options.set('type', null);
114
- if (!this.options.required) {
115
- options.set('nullable', typescript_1.default.factory.createTrue());
116
- }
117
- //Set additional options
118
- this.options.otherOptionExpressions.forEach((value, key) => {
119
- options.set(key, value);
120
- });
121
- return this.optionsToPropertyAssignmentsOrNull(options);
122
- }
123
- optionsToPropertyAssignmentsOrNull(options) {
124
- const decoratorOptions = new Map();
125
- options.forEach((value, key) => {
126
- if (value !== null) {
127
- decoratorOptions.set(key, typescript_1.default.factory.createPropertyAssignment(typescript_1.default.factory.createIdentifier(key), value));
128
- }
129
- else {
130
- decoratorOptions.set(key, null);
131
- }
132
- });
133
- return decoratorOptions;
134
- }
135
- buildColumnDecoratorOptions() {
136
- const options = new Map();
137
- //Set common options
138
- //TODO Proper types to be used e.g ColumnCommonOptions
139
- // if (this.options.field.defaultValue) {
140
- // options.set('default', this.options.field.defaultValue);
141
- // }
142
- if (!lodash_1.default.isEmpty(this.options.columnName)) {
143
- options.set('name', `${this.options.columnName}`);
144
- }
145
- if (!lodash_1.default.isEmpty(this.options.type)) {
146
- options.set('type', `${this.options.type}`);
147
- }
148
- if (!this.options.required) {
149
- options.set('nullable', true);
150
- }
151
- // Set some keys as null, to indicate they are handled i.e they will be removed & recreated, if required
152
- //Handled keys
153
- // options.set('length', null) //TODO Can be improved, since handled keys needs to be managed in this decorator. Ideally it should be managed in the corresponding field
154
- //Set additional options
155
- this.options.otherOptions.forEach((value, key) => {
156
- options.set(key, value);
157
- });
158
- return options;
159
- }
160
- buildColumnOptionsCode() {
161
- const options = this.buildColumnDecoratorOptions();
162
- const keys = Array.from(options.keys());
163
- const optionsString = keys
164
- .filter((key) => options.get(key) !== null)
165
- .map((key) => {
166
- if (typeof options.get(key) === 'string') {
167
- return `${key}: "${options.get(key)}"`;
168
- }
169
- else {
170
- return `${key}: ${options.get(key)}`;
171
- }
172
- })
173
- .join(', ');
174
- return `{ ${optionsString} }`;
175
- }
176
- }
177
- exports.ColumnDecoratorManager = ColumnDecoratorManager;
178
- //# sourceMappingURL=ColumnDecoratorManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ColumnDecoratorManager.js","sourceRoot":"","sources":["ColumnDecoratorManager.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- import ts, { PropertyDeclaration } from "@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript";
2
- import { DecoratorManager, PartialAddFieldChange } from "../../FieldManager";
3
- import { Change } from "@schematics/angular/utility/change";
4
- interface IndexDecoratorOptions {
5
- index: boolean;
6
- source: ts.SourceFile;
7
- field: any;
8
- }
9
- export declare class IndexDecoratorManager implements DecoratorManager {
10
- options: IndexDecoratorOptions;
11
- fieldNode?: ts.PropertyDeclaration | undefined;
12
- constructor(options: IndexDecoratorOptions, fieldNode?: ts.PropertyDeclaration | undefined);
13
- isApplyDecorator(): boolean;
14
- decoratorName(): string;
15
- setFieldNode(fieldNode: ts.PropertyDeclaration): void;
16
- buildDecorator(): PartialAddFieldChange;
17
- decoratorImports(): Change[];
18
- updateDecorator(): [PropertyDeclaration, Change[]];
19
- private createIndexDecorator;
20
- private filterOtherDecorators;
21
- private filterNonDecorators;
22
- private containsIdentifierName;
23
- }
24
- export {};
@@ -1,79 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.IndexDecoratorManager = void 0;
7
- const typescript_1 = __importDefault(require("@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript"));
8
- const FieldManager_1 = require("../../FieldManager");
9
- const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
10
- class IndexDecoratorManager {
11
- constructor(options, fieldNode) {
12
- this.options = options;
13
- this.fieldNode = fieldNode;
14
- }
15
- isApplyDecorator() {
16
- return this.options.index && this.options.field.relationType !== FieldManager_1.RelationType.ManyToMany;
17
- }
18
- decoratorName() {
19
- return 'Index';
20
- }
21
- setFieldNode(fieldNode) {
22
- this.fieldNode = fieldNode;
23
- }
24
- buildDecorator() {
25
- const fieldSourceLines = [];
26
- const changes = [];
27
- // if (this.field.index) {
28
- const indexDecoratorLine = `@Index()`;
29
- fieldSourceLines.push(indexDecoratorLine);
30
- changes.push(...this.decoratorImports());
31
- // }
32
- return {
33
- filePath: this.options.source.fileName,
34
- field: this.options.field,
35
- changes: changes,
36
- fieldSourceLines: fieldSourceLines,
37
- };
38
- }
39
- decoratorImports() {
40
- return [(0, ast_utils_1.insertImport)(this.options.source, this.options.source.fileName, this.decoratorName(), 'typeorm')];
41
- }
42
- //Updates the index decorator for the fieldNode based on the options provided
43
- // @returns the updated property declaration
44
- updateDecorator() {
45
- if (!this.fieldNode)
46
- throw new Error('Field node is required for updating the index decorator');
47
- let newModifiers = [];
48
- let existingModifiers = this.fieldNode.modifiers;
49
- //Remove the Index decorator if the Index decorator exists
50
- //TODO probably this too can be done in a lesser intrusive way i.e update everything instead of removing and adding
51
- newModifiers = [...this.filterNonDecorators(existingModifiers), ...this.filterOtherDecorators(this.decoratorName(), existingModifiers)];
52
- //Add the column decorator if column decorator is required
53
- const changes = [];
54
- if (this.isApplyDecorator()) {
55
- newModifiers = [...newModifiers, this.createIndexDecorator()];
56
- changes.push(...this.decoratorImports());
57
- }
58
- //If index decorator is present & index is required, no need to update the index decorator
59
- const updatedProperty = typescript_1.default.factory.updatePropertyDeclaration(this.fieldNode, newModifiers, //newModifiers contains the updated index decorator
60
- this.fieldNode.name, this.fieldNode.questionToken, this.fieldNode.type, this.fieldNode.initializer);
61
- return [updatedProperty, changes];
62
- }
63
- createIndexDecorator() {
64
- return typescript_1.default.factory.createDecorator(typescript_1.default.factory.createCallExpression(typescript_1.default.factory.createIdentifier('Index'), undefined, []));
65
- }
66
- filterOtherDecorators(name, existingModifiers) {
67
- return existingModifiers ? existingModifiers.filter((m) => (m.kind === typescript_1.default.SyntaxKind.Decorator)).map(m => m).filter(m => !this.containsIdentifierName(m, name)) : [];
68
- }
69
- filterNonDecorators(existingModifiers) {
70
- return existingModifiers ? existingModifiers.filter((m) => (m.kind !== typescript_1.default.SyntaxKind.Decorator)).map(m => m) : [];
71
- }
72
- containsIdentifierName(m, identifierName) {
73
- const callExpression = m.expression;
74
- const identifier = callExpression.expression;
75
- return identifier.text === identifierName;
76
- }
77
- }
78
- exports.IndexDecoratorManager = IndexDecoratorManager;
79
- //# sourceMappingURL=IndexDecoratorManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"IndexDecoratorManager.js","sourceRoot":"","sources":["IndexDecoratorManager.ts"],"names":[],"mappings":"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"}
@@ -1,29 +0,0 @@
1
- import ts, { PropertyDeclaration } from "@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript";
2
- import { Change } from "@schematics/angular/utility/change";
3
- import { DecoratorManager, PartialAddFieldChange } from "../../FieldManager";
4
- interface JoinTableDecoratorOptions {
5
- isManyToManyRelationOwner: boolean;
6
- source: ts.SourceFile;
7
- field: any;
8
- fieldName: string;
9
- modelName: string;
10
- }
11
- export declare class JoinTableDecoratorManager implements DecoratorManager {
12
- options: JoinTableDecoratorOptions;
13
- fieldNode?: ts.PropertyDeclaration | undefined;
14
- constructor(options: JoinTableDecoratorOptions, fieldNode?: ts.PropertyDeclaration | undefined);
15
- isApplyDecorator(): boolean;
16
- decoratorName(): string;
17
- buildDecorator(): PartialAddFieldChange;
18
- decoratorImports(): Change[];
19
- setFieldNode(fieldNode: PropertyDeclaration): void;
20
- updateDecorator(): [PropertyDeclaration, Change[]];
21
- private createDecorator;
22
- private createDecoratorArguments;
23
- private existingDecoratorOptions;
24
- private findDecorator;
25
- private filterOtherDecorators;
26
- private filterNonDecorators;
27
- private containsIdentifierName;
28
- }
29
- export {};
@@ -1,118 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.JoinTableDecoratorManager = void 0;
7
- const typescript_1 = __importDefault(require("@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript"));
8
- const ast_utils_1 = require("@schematics/angular/utility/ast-utils");
9
- class JoinTableDecoratorManager {
10
- constructor(options, fieldNode) {
11
- this.options = options;
12
- this.fieldNode = fieldNode;
13
- }
14
- isApplyDecorator() {
15
- return this.options.isManyToManyRelationOwner;
16
- }
17
- decoratorName() {
18
- return 'JoinTable';
19
- }
20
- buildDecorator() {
21
- const changes = [];
22
- const fieldSourceLines = [];
23
- // Add the many-to-many import
24
- // const decoratorImport = insertImport(
25
- // this.options.source,
26
- // this.options.source.fileName,
27
- // this.decoratorName(),
28
- // 'typeorm',
29
- // );
30
- // if (decoratorImport) {
31
- // changes.push(decoratorImport);
32
- // }
33
- fieldSourceLines.push(`@${this.decoratorName()}()`);
34
- changes.push(...this.decoratorImports());
35
- return {
36
- filePath: this.options.source.fileName,
37
- field: this.options.field,
38
- changes: changes,
39
- fieldSourceLines: fieldSourceLines,
40
- };
41
- }
42
- decoratorImports() {
43
- return [(0, ast_utils_1.insertImport)(this.options.source, this.options.source.fileName, this.decoratorName(), 'typeorm')];
44
- }
45
- setFieldNode(fieldNode) {
46
- this.fieldNode = fieldNode;
47
- }
48
- updateDecorator() {
49
- // Check if the field property declaration exists, if not throw an error
50
- if (!this.fieldNode)
51
- throw new Error('Field node is required for updating the one to many decorator');
52
- let newModifiers = [];
53
- let existingModifiers = this.fieldNode.modifiers;
54
- // Check if field has an existing one-to-many relation decorator
55
- const existingDecorator = this.findDecorator(this.decoratorName(), existingModifiers);
56
- //Remove the many-to-one decorator if it exists
57
- //TODO probably this too can be done in a lesser intrusive way i.e update everything instead of removing and adding
58
- newModifiers = [...this.filterNonDecorators(existingModifiers), ...this.filterOtherDecorators(this.decoratorName(), existingModifiers)];
59
- //Add the one-to-many decorator if it is required
60
- const changes = [];
61
- if (this.isApplyDecorator()) {
62
- newModifiers = [...newModifiers, this.createDecorator(existingDecorator)];
63
- changes.push(...this.decoratorImports());
64
- }
65
- const updatedProperty = typescript_1.default.factory.updatePropertyDeclaration(this.fieldNode, newModifiers, //Replace with new modifiers
66
- this.fieldNode.name, this.fieldNode.questionToken, this.fieldNode.type, this.fieldNode.initializer);
67
- return [updatedProperty, changes];
68
- }
69
- createDecorator(existingDecorator) {
70
- let existingRelationOptions = this.existingDecoratorOptions(existingDecorator);
71
- // const mergedRelationOptions: ObjectLiteralElementLike[] = this.mergeNewAndExistingDecoratorOptions(existingRelationOptions);
72
- // Re-create the decorator with the merged decorator options
73
- const decoratorIdentifier = typescript_1.default.factory.createIdentifier(this.decoratorName());
74
- const argumentsArray = this.createDecoratorArguments(existingRelationOptions);
75
- const call = typescript_1.default.factory.createCallExpression(decoratorIdentifier, undefined, argumentsArray);
76
- return typescript_1.default.factory.createDecorator(call);
77
- }
78
- createDecoratorArguments(joinTableOptions) {
79
- const argumentsArray = [];
80
- if (joinTableOptions.length > 0) {
81
- const validationOptionsObjectLiteral = typescript_1.default.factory.createObjectLiteralExpression(joinTableOptions);
82
- argumentsArray.push(validationOptionsObjectLiteral);
83
- }
84
- return argumentsArray;
85
- }
86
- existingDecoratorOptions(existingDecorator) {
87
- let existingDecoratorPropertyAssignments = [];
88
- if (existingDecorator !== undefined) {
89
- //Pre-set the relation options from the existing relation decorator
90
- const existingCallExpression = existingDecorator.expression;
91
- // Check if call expression has at least 1 arguments
92
- if (existingCallExpression.arguments.length > 0) { //Because we are interested in the 1st argument, we check for length > 0
93
- if (!typescript_1.default.isObjectLiteralExpression(existingCallExpression.arguments[0])) {
94
- throw new Error('JoinTable decorator 1st argument must be an object literal containing the joinTable options');
95
- }
96
- const existingObjectLiteralExpression = existingCallExpression.arguments[0];
97
- existingDecoratorPropertyAssignments.push(...existingObjectLiteralExpression.properties);
98
- }
99
- }
100
- return existingDecoratorPropertyAssignments;
101
- }
102
- findDecorator(name, existingModifiers) {
103
- return existingModifiers ? existingModifiers.filter((m) => (m.kind === typescript_1.default.SyntaxKind.Decorator)).map(m => m).filter(m => this.containsIdentifierName(m, name)).pop() : undefined;
104
- }
105
- filterOtherDecorators(name, existingModifiers) {
106
- return existingModifiers ? existingModifiers.filter((m) => (m.kind === typescript_1.default.SyntaxKind.Decorator)).map(m => m).filter(m => !this.containsIdentifierName(m, name)) : [];
107
- }
108
- filterNonDecorators(existingModifiers) {
109
- return existingModifiers ? existingModifiers.filter((m) => (m.kind !== typescript_1.default.SyntaxKind.Decorator)).map(m => m) : [];
110
- }
111
- containsIdentifierName(m, identifierName) {
112
- const callExpression = m.expression;
113
- const identifier = callExpression.expression;
114
- return identifier.text === identifierName;
115
- }
116
- }
117
- exports.JoinTableDecoratorManager = JoinTableDecoratorManager;
118
- //# sourceMappingURL=JoinTableDecoratorManager.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"JoinTableDecoratorManager.js","sourceRoot":"","sources":["JoinTableDecoratorManager.ts"],"names":[],"mappings":"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"}
@@ -1,37 +0,0 @@
1
- import ts, { PropertyDeclaration } from "@schematics/angular/third_party/github.com/Microsoft/TypeScript/lib/typescript";
2
- import { Change } from "@schematics/angular/utility/change";
3
- import { DecoratorManager, DeleteType, PartialAddFieldChange } from "../../FieldManager";
4
- interface ManyToManyDecoratorOptions {
5
- isManyToMany: boolean;
6
- relationModelName: string;
7
- relationInverseFieldName: string;
8
- relationCascade: DeleteType;
9
- owner: boolean;
10
- source: ts.SourceFile;
11
- field: any;
12
- fieldName: string;
13
- modelName: string;
14
- }
15
- export declare class ManyToManyDecoratorManager implements DecoratorManager {
16
- options: ManyToManyDecoratorOptions;
17
- fieldNode?: ts.PropertyDeclaration | undefined;
18
- constructor(options: ManyToManyDecoratorOptions, fieldNode?: ts.PropertyDeclaration | undefined);
19
- isApplyDecorator(): boolean;
20
- decoratorName(): string;
21
- buildDecorator(): PartialAddFieldChange;
22
- setFieldNode(fieldNode: PropertyDeclaration): void;
23
- decoratorImports(): Change[];
24
- updateDecorator(): [PropertyDeclaration, Change[]];
25
- private buildRelationOptionsCode;
26
- private createRelationDecorator;
27
- private mergeNewAndExistingDecoratorOptions;
28
- private createDecoratorArguments;
29
- private existingDecoratorOptions;
30
- private createRelationDecoratorOptions;
31
- private optionsToPropertyAssignmentsOrNull;
32
- private findDecorator;
33
- private filterOtherDecorators;
34
- private filterNonDecorators;
35
- private containsIdentifierName;
36
- }
37
- export {};