@lakutata/orm 3.0.0 → 3.1.1

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 (1705) hide show
  1. package/README.md +160 -76
  2. package/README.zh-CN.md +452 -0
  3. package/THIRD_PARTY_NOTICES.md +260 -4
  4. package/dist/cjs/components/Database.d.ts +31 -22
  5. package/dist/cjs/components/Database.js +14 -5
  6. package/dist/cjs/decorators/orm/AfterInsert.d.ts +1 -1
  7. package/dist/cjs/decorators/orm/AfterInsert.js +1 -1
  8. package/dist/cjs/decorators/orm/AfterLoad.d.ts +1 -1
  9. package/dist/cjs/decorators/orm/AfterLoad.js +1 -1
  10. package/dist/cjs/decorators/orm/AfterRecover.d.ts +1 -1
  11. package/dist/cjs/decorators/orm/AfterRecover.js +1 -1
  12. package/dist/cjs/decorators/orm/AfterRemove.d.ts +1 -1
  13. package/dist/cjs/decorators/orm/AfterRemove.js +1 -1
  14. package/dist/cjs/decorators/orm/AfterSoftRemove.d.ts +1 -1
  15. package/dist/cjs/decorators/orm/AfterSoftRemove.js +1 -1
  16. package/dist/cjs/decorators/orm/AfterUpdate.d.ts +1 -1
  17. package/dist/cjs/decorators/orm/AfterUpdate.js +1 -1
  18. package/dist/cjs/decorators/orm/BeforeInsert.d.ts +1 -1
  19. package/dist/cjs/decorators/orm/BeforeInsert.js +1 -1
  20. package/dist/cjs/decorators/orm/BeforeRecover.d.ts +1 -1
  21. package/dist/cjs/decorators/orm/BeforeRecover.js +1 -1
  22. package/dist/cjs/decorators/orm/BeforeRemove.d.ts +1 -1
  23. package/dist/cjs/decorators/orm/BeforeRemove.js +1 -1
  24. package/dist/cjs/decorators/orm/BeforeSoftRemove.d.ts +1 -1
  25. package/dist/cjs/decorators/orm/BeforeSoftRemove.js +1 -1
  26. package/dist/cjs/decorators/orm/BeforeUpdate.d.ts +1 -1
  27. package/dist/cjs/decorators/orm/BeforeUpdate.js +1 -1
  28. package/dist/cjs/decorators/orm/Check.d.ts +1 -1
  29. package/dist/cjs/decorators/orm/Check.js +1 -1
  30. package/dist/cjs/decorators/orm/ChildEntity.d.ts +1 -1
  31. package/dist/cjs/decorators/orm/ChildEntity.js +1 -1
  32. package/dist/cjs/decorators/orm/Column.d.ts +1 -1
  33. package/dist/cjs/decorators/orm/Column.js +1 -1
  34. package/dist/cjs/decorators/orm/CreateDateColumn.d.ts +1 -1
  35. package/dist/cjs/decorators/orm/CreateDateColumn.js +1 -1
  36. package/dist/cjs/decorators/orm/DeleteDateColumn.d.ts +1 -1
  37. package/dist/cjs/decorators/orm/DeleteDateColumn.js +1 -1
  38. package/dist/cjs/decorators/orm/Entity.d.ts +1 -1
  39. package/dist/cjs/decorators/orm/Entity.js +1 -1
  40. package/dist/cjs/decorators/orm/EventSubscriber.d.ts +1 -1
  41. package/dist/cjs/decorators/orm/EventSubscriber.js +1 -1
  42. package/dist/cjs/decorators/orm/Exclusion.d.ts +1 -1
  43. package/dist/cjs/decorators/orm/Exclusion.js +1 -1
  44. package/dist/cjs/decorators/orm/Generated.d.ts +1 -1
  45. package/dist/cjs/decorators/orm/Generated.js +1 -1
  46. package/dist/cjs/decorators/orm/Index.d.ts +1 -1
  47. package/dist/cjs/decorators/orm/Index.js +1 -1
  48. package/dist/cjs/decorators/orm/JoinColumn.d.ts +1 -1
  49. package/dist/cjs/decorators/orm/JoinColumn.js +1 -1
  50. package/dist/cjs/decorators/orm/JoinTable.d.ts +1 -1
  51. package/dist/cjs/decorators/orm/JoinTable.js +1 -1
  52. package/dist/cjs/decorators/orm/ManyToMany.d.ts +1 -1
  53. package/dist/cjs/decorators/orm/ManyToMany.js +1 -1
  54. package/dist/cjs/decorators/orm/ManyToOne.d.ts +1 -1
  55. package/dist/cjs/decorators/orm/ManyToOne.js +1 -1
  56. package/dist/cjs/decorators/orm/ObjectIdColumn.d.ts +1 -1
  57. package/dist/cjs/decorators/orm/ObjectIdColumn.js +1 -1
  58. package/dist/cjs/decorators/orm/OneToMany.d.ts +1 -1
  59. package/dist/cjs/decorators/orm/OneToMany.js +1 -1
  60. package/dist/cjs/decorators/orm/OneToOne.d.ts +1 -1
  61. package/dist/cjs/decorators/orm/OneToOne.js +1 -1
  62. package/dist/cjs/decorators/orm/PrimaryColumn.d.ts +1 -1
  63. package/dist/cjs/decorators/orm/PrimaryColumn.js +1 -1
  64. package/dist/cjs/decorators/orm/PrimaryGeneratedColumn.d.ts +1 -1
  65. package/dist/cjs/decorators/orm/PrimaryGeneratedColumn.js +1 -1
  66. package/dist/cjs/decorators/orm/RelationId.d.ts +1 -1
  67. package/dist/cjs/decorators/orm/RelationId.js +1 -1
  68. package/dist/cjs/decorators/orm/TableInheritance.d.ts +1 -1
  69. package/dist/cjs/decorators/orm/TableInheritance.js +1 -1
  70. package/dist/cjs/decorators/orm/Tree.d.ts +1 -1
  71. package/dist/cjs/decorators/orm/Tree.js +1 -1
  72. package/dist/cjs/decorators/orm/TreeChildren.d.ts +1 -1
  73. package/dist/cjs/decorators/orm/TreeChildren.js +1 -1
  74. package/dist/cjs/decorators/orm/TreeLevelColumn.d.ts +1 -1
  75. package/dist/cjs/decorators/orm/TreeLevelColumn.js +1 -1
  76. package/dist/cjs/decorators/orm/TreeParent.d.ts +1 -1
  77. package/dist/cjs/decorators/orm/TreeParent.js +1 -1
  78. package/dist/cjs/decorators/orm/Unique.d.ts +1 -1
  79. package/dist/cjs/decorators/orm/Unique.js +1 -1
  80. package/dist/cjs/decorators/orm/UpdateDateColumn.d.ts +1 -1
  81. package/dist/cjs/decorators/orm/UpdateDateColumn.js +1 -1
  82. package/dist/cjs/decorators/orm/VersionColumn.d.ts +1 -1
  83. package/dist/cjs/decorators/orm/VersionColumn.js +1 -1
  84. package/dist/cjs/decorators/orm/ViewColumn.d.ts +1 -1
  85. package/dist/cjs/decorators/orm/ViewColumn.js +1 -1
  86. package/dist/cjs/decorators/orm/ViewEntity.d.ts +1 -1
  87. package/dist/cjs/decorators/orm/ViewEntity.js +1 -1
  88. package/dist/cjs/decorators/orm/VirtualColumn.d.ts +1 -1
  89. package/dist/cjs/decorators/orm/VirtualColumn.js +1 -1
  90. package/dist/cjs/exports/ORM.d.ts +189 -192
  91. package/dist/cjs/exports/ORM.js +120 -121
  92. package/dist/cjs/lib/ConnectionOptions.d.ts +10 -0
  93. package/dist/cjs/lib/ConnectionOptions.js +17 -0
  94. package/dist/cjs/providers/Database.d.ts +33 -26
  95. package/dist/cjs/providers/Database.js +15 -8
  96. package/dist/cjs/providers/migration/ExecuteMigration.d.ts +5 -4
  97. package/dist/cjs/providers/migration/ExecuteMigration.js +9 -5
  98. package/dist/cjs/providers/migration/GenerateMigration.d.ts +35 -5
  99. package/dist/cjs/providers/migration/GenerateMigration.js +30 -10
  100. package/dist/cjs/types/LegacyConnectionOptions.d.ts +102 -0
  101. package/dist/cjs/types/LegacyConnectionOptions.js +2 -0
  102. package/dist/cjs/types/MigrationRunOptions.d.ts +4 -1
  103. package/dist/esm/components/Database.js +14 -5
  104. package/dist/esm/decorators/orm/AfterInsert.js +1 -1
  105. package/dist/esm/decorators/orm/AfterLoad.js +1 -1
  106. package/dist/esm/decorators/orm/AfterRecover.js +1 -1
  107. package/dist/esm/decorators/orm/AfterRemove.js +1 -1
  108. package/dist/esm/decorators/orm/AfterSoftRemove.js +1 -1
  109. package/dist/esm/decorators/orm/AfterUpdate.js +1 -1
  110. package/dist/esm/decorators/orm/BeforeInsert.js +1 -1
  111. package/dist/esm/decorators/orm/BeforeRecover.js +1 -1
  112. package/dist/esm/decorators/orm/BeforeRemove.js +1 -1
  113. package/dist/esm/decorators/orm/BeforeSoftRemove.js +1 -1
  114. package/dist/esm/decorators/orm/BeforeUpdate.js +1 -1
  115. package/dist/esm/decorators/orm/Check.js +1 -1
  116. package/dist/esm/decorators/orm/ChildEntity.js +1 -1
  117. package/dist/esm/decorators/orm/Column.js +1 -1
  118. package/dist/esm/decorators/orm/CreateDateColumn.js +1 -1
  119. package/dist/esm/decorators/orm/DeleteDateColumn.js +1 -1
  120. package/dist/esm/decorators/orm/Entity.js +1 -1
  121. package/dist/esm/decorators/orm/EventSubscriber.js +1 -1
  122. package/dist/esm/decorators/orm/Exclusion.js +1 -1
  123. package/dist/esm/decorators/orm/Generated.js +1 -1
  124. package/dist/esm/decorators/orm/Index.js +1 -1
  125. package/dist/esm/decorators/orm/JoinColumn.js +1 -1
  126. package/dist/esm/decorators/orm/JoinTable.js +1 -1
  127. package/dist/esm/decorators/orm/ManyToMany.js +1 -1
  128. package/dist/esm/decorators/orm/ManyToOne.js +1 -1
  129. package/dist/esm/decorators/orm/ObjectIdColumn.js +1 -1
  130. package/dist/esm/decorators/orm/OneToMany.js +1 -1
  131. package/dist/esm/decorators/orm/OneToOne.js +1 -1
  132. package/dist/esm/decorators/orm/PrimaryColumn.js +1 -1
  133. package/dist/esm/decorators/orm/PrimaryGeneratedColumn.js +1 -1
  134. package/dist/esm/decorators/orm/RelationId.js +1 -1
  135. package/dist/esm/decorators/orm/TableInheritance.js +1 -1
  136. package/dist/esm/decorators/orm/Tree.js +1 -1
  137. package/dist/esm/decorators/orm/TreeChildren.js +1 -1
  138. package/dist/esm/decorators/orm/TreeLevelColumn.js +1 -1
  139. package/dist/esm/decorators/orm/TreeParent.js +1 -1
  140. package/dist/esm/decorators/orm/Unique.js +1 -1
  141. package/dist/esm/decorators/orm/UpdateDateColumn.js +1 -1
  142. package/dist/esm/decorators/orm/VersionColumn.js +1 -1
  143. package/dist/esm/decorators/orm/ViewColumn.js +1 -1
  144. package/dist/esm/decorators/orm/ViewEntity.js +1 -1
  145. package/dist/esm/decorators/orm/VirtualColumn.js +1 -1
  146. package/dist/esm/exports/ORM.js +116 -119
  147. package/dist/esm/lib/ConnectionOptions.js +14 -0
  148. package/dist/esm/providers/Database.js +15 -8
  149. package/dist/esm/providers/migration/ExecuteMigration.js +9 -5
  150. package/dist/esm/providers/migration/GenerateMigration.js +30 -10
  151. package/dist/esm/types/LegacyConnectionOptions.js +1 -0
  152. package/dist/types/components/Database.d.ts +31 -22
  153. package/dist/types/decorators/orm/AfterInsert.d.ts +1 -1
  154. package/dist/types/decorators/orm/AfterLoad.d.ts +1 -1
  155. package/dist/types/decorators/orm/AfterRecover.d.ts +1 -1
  156. package/dist/types/decorators/orm/AfterRemove.d.ts +1 -1
  157. package/dist/types/decorators/orm/AfterSoftRemove.d.ts +1 -1
  158. package/dist/types/decorators/orm/AfterUpdate.d.ts +1 -1
  159. package/dist/types/decorators/orm/BeforeInsert.d.ts +1 -1
  160. package/dist/types/decorators/orm/BeforeRecover.d.ts +1 -1
  161. package/dist/types/decorators/orm/BeforeRemove.d.ts +1 -1
  162. package/dist/types/decorators/orm/BeforeSoftRemove.d.ts +1 -1
  163. package/dist/types/decorators/orm/BeforeUpdate.d.ts +1 -1
  164. package/dist/types/decorators/orm/Check.d.ts +1 -1
  165. package/dist/types/decorators/orm/ChildEntity.d.ts +1 -1
  166. package/dist/types/decorators/orm/Column.d.ts +1 -1
  167. package/dist/types/decorators/orm/CreateDateColumn.d.ts +1 -1
  168. package/dist/types/decorators/orm/DeleteDateColumn.d.ts +1 -1
  169. package/dist/types/decorators/orm/Entity.d.ts +1 -1
  170. package/dist/types/decorators/orm/EventSubscriber.d.ts +1 -1
  171. package/dist/types/decorators/orm/Exclusion.d.ts +1 -1
  172. package/dist/types/decorators/orm/Generated.d.ts +1 -1
  173. package/dist/types/decorators/orm/Index.d.ts +1 -1
  174. package/dist/types/decorators/orm/JoinColumn.d.ts +1 -1
  175. package/dist/types/decorators/orm/JoinTable.d.ts +1 -1
  176. package/dist/types/decorators/orm/ManyToMany.d.ts +1 -1
  177. package/dist/types/decorators/orm/ManyToOne.d.ts +1 -1
  178. package/dist/types/decorators/orm/ObjectIdColumn.d.ts +1 -1
  179. package/dist/types/decorators/orm/OneToMany.d.ts +1 -1
  180. package/dist/types/decorators/orm/OneToOne.d.ts +1 -1
  181. package/dist/types/decorators/orm/PrimaryColumn.d.ts +1 -1
  182. package/dist/types/decorators/orm/PrimaryGeneratedColumn.d.ts +1 -1
  183. package/dist/types/decorators/orm/RelationId.d.ts +1 -1
  184. package/dist/types/decorators/orm/TableInheritance.d.ts +1 -1
  185. package/dist/types/decorators/orm/Tree.d.ts +1 -1
  186. package/dist/types/decorators/orm/TreeChildren.d.ts +1 -1
  187. package/dist/types/decorators/orm/TreeLevelColumn.d.ts +1 -1
  188. package/dist/types/decorators/orm/TreeParent.d.ts +1 -1
  189. package/dist/types/decorators/orm/Unique.d.ts +1 -1
  190. package/dist/types/decorators/orm/UpdateDateColumn.d.ts +1 -1
  191. package/dist/types/decorators/orm/VersionColumn.d.ts +1 -1
  192. package/dist/types/decorators/orm/ViewColumn.d.ts +1 -1
  193. package/dist/types/decorators/orm/ViewEntity.d.ts +1 -1
  194. package/dist/types/decorators/orm/VirtualColumn.d.ts +1 -1
  195. package/dist/types/exports/ORM.d.ts +189 -192
  196. package/dist/types/lib/ConnectionOptions.d.ts +10 -0
  197. package/dist/types/providers/Database.d.ts +33 -26
  198. package/dist/types/providers/migration/ExecuteMigration.d.ts +5 -4
  199. package/dist/types/providers/migration/GenerateMigration.d.ts +35 -5
  200. package/dist/types/types/LegacyConnectionOptions.d.ts +102 -0
  201. package/dist/types/types/MigrationRunOptions.d.ts +4 -1
  202. package/dist/vendor/typeorm/cache/DbQueryResultCache.d.ts +70 -0
  203. package/dist/vendor/typeorm/cache/DbQueryResultCache.js +301 -0
  204. package/dist/vendor/typeorm/cache/DbQueryResultCache.js.map +1 -0
  205. package/dist/vendor/typeorm/cache/QueryResultCache.d.ts +41 -0
  206. package/dist/vendor/typeorm/cache/QueryResultCache.js +3 -0
  207. package/dist/vendor/typeorm/cache/QueryResultCache.js.map +1 -0
  208. package/dist/vendor/typeorm/cache/QueryResultCacheFactory.d.ts +13 -0
  209. package/dist/vendor/typeorm/cache/QueryResultCacheFactory.js +41 -0
  210. package/dist/vendor/typeorm/cache/QueryResultCacheFactory.js.map +1 -0
  211. package/dist/vendor/typeorm/cache/QueryResultCacheOptions.d.ts +26 -0
  212. package/dist/vendor/typeorm/cache/QueryResultCacheOptions.js +3 -0
  213. package/dist/vendor/typeorm/cache/QueryResultCacheOptions.js.map +1 -0
  214. package/dist/vendor/typeorm/cache/RedisQueryResultCache.d.ts +84 -0
  215. package/dist/vendor/typeorm/cache/RedisQueryResultCache.js +185 -0
  216. package/dist/vendor/typeorm/cache/RedisQueryResultCache.js.map +1 -0
  217. package/dist/vendor/typeorm/commands/CommandUtils.d.ts +34 -0
  218. package/dist/vendor/typeorm/commands/CommandUtils.js +107 -0
  219. package/dist/vendor/typeorm/commands/CommandUtils.js.map +1 -0
  220. package/dist/vendor/typeorm/common/DeepPartial.d.ts +6 -0
  221. package/dist/vendor/typeorm/common/DeepPartial.js +3 -0
  222. package/dist/vendor/typeorm/common/DeepPartial.js.map +1 -0
  223. package/dist/vendor/typeorm/common/EntityTarget.d.ts +9 -0
  224. package/dist/vendor/typeorm/common/EntityTarget.js +3 -0
  225. package/dist/vendor/typeorm/common/EntityTarget.js.map +1 -0
  226. package/dist/vendor/typeorm/common/MixedList.d.ts +8 -0
  227. package/dist/vendor/typeorm/common/MixedList.js +3 -0
  228. package/dist/vendor/typeorm/common/MixedList.js.map +1 -0
  229. package/dist/vendor/typeorm/common/NonNever.d.ts +6 -0
  230. package/dist/vendor/typeorm/common/NonNever.js +3 -0
  231. package/dist/vendor/typeorm/common/NonNever.js.map +1 -0
  232. package/dist/vendor/typeorm/common/ObjectLiteral.d.ts +6 -0
  233. package/dist/vendor/typeorm/common/ObjectLiteral.js +3 -0
  234. package/dist/vendor/typeorm/common/ObjectLiteral.js.map +1 -0
  235. package/dist/vendor/typeorm/common/ObjectType.d.ts +6 -0
  236. package/dist/vendor/typeorm/common/ObjectType.js +3 -0
  237. package/dist/vendor/typeorm/common/ObjectType.js.map +1 -0
  238. package/dist/vendor/typeorm/common/PickKeysByType.d.ts +6 -0
  239. package/dist/vendor/typeorm/common/PickKeysByType.js +3 -0
  240. package/dist/vendor/typeorm/common/PickKeysByType.js.map +1 -0
  241. package/dist/vendor/typeorm/common/PrimitiveCriteria.d.ts +2 -0
  242. package/dist/vendor/typeorm/common/PrimitiveCriteria.js +3 -0
  243. package/dist/vendor/typeorm/common/PrimitiveCriteria.js.map +1 -0
  244. package/dist/vendor/typeorm/common/RelationType.d.ts +16 -0
  245. package/dist/vendor/typeorm/common/RelationType.js +3 -0
  246. package/dist/vendor/typeorm/common/RelationType.js.map +1 -0
  247. package/dist/vendor/typeorm/connection/ConnectionMetadataBuilder.d.ts +30 -0
  248. package/dist/vendor/typeorm/connection/ConnectionMetadataBuilder.js +78 -0
  249. package/dist/vendor/typeorm/connection/ConnectionMetadataBuilder.js.map +1 -0
  250. package/dist/vendor/typeorm/connection/ConnectionOptionsReader.d.ts +56 -0
  251. package/dist/vendor/typeorm/connection/ConnectionOptionsReader.js +165 -0
  252. package/dist/vendor/typeorm/connection/ConnectionOptionsReader.js.map +1 -0
  253. package/dist/vendor/typeorm/data-source/BaseDataSourceOptions.d.ts +180 -0
  254. package/dist/vendor/typeorm/data-source/BaseDataSourceOptions.js +3 -0
  255. package/dist/vendor/typeorm/data-source/BaseDataSourceOptions.js.map +1 -0
  256. package/dist/vendor/typeorm/data-source/DataSource.d.ts +277 -0
  257. package/dist/vendor/typeorm/data-source/DataSource.js +555 -0
  258. package/dist/vendor/typeorm/data-source/DataSource.js.map +1 -0
  259. package/dist/vendor/typeorm/data-source/DataSourceOptions.d.ts +22 -0
  260. package/dist/vendor/typeorm/data-source/DataSourceOptions.js +3 -0
  261. package/dist/vendor/typeorm/data-source/DataSourceOptions.js.map +1 -0
  262. package/dist/vendor/typeorm/data-source/index.d.ts +2 -0
  263. package/dist/vendor/typeorm/data-source/index.js +5 -0
  264. package/dist/vendor/typeorm/data-source/index.js.map +1 -0
  265. package/dist/vendor/typeorm/decorator/Check.d.ts +17 -0
  266. package/dist/vendor/typeorm/decorator/Check.js +29 -0
  267. package/dist/vendor/typeorm/decorator/Check.js.map +1 -0
  268. package/dist/vendor/typeorm/decorator/Exclusion.d.ts +20 -0
  269. package/dist/vendor/typeorm/decorator/Exclusion.js +33 -0
  270. package/dist/vendor/typeorm/decorator/Exclusion.js.map +1 -0
  271. package/dist/vendor/typeorm/decorator/ForeignKey.d.ts +34 -0
  272. package/dist/vendor/typeorm/decorator/ForeignKey.js +48 -0
  273. package/dist/vendor/typeorm/decorator/ForeignKey.js.map +1 -0
  274. package/dist/vendor/typeorm/decorator/Generated.d.ts +12 -0
  275. package/dist/vendor/typeorm/decorator/Generated.js +25 -0
  276. package/dist/vendor/typeorm/decorator/Generated.js.map +1 -0
  277. package/dist/vendor/typeorm/decorator/Index.d.ts +72 -0
  278. package/dist/vendor/typeorm/decorator/Index.js +59 -0
  279. package/dist/vendor/typeorm/decorator/Index.js.map +1 -0
  280. package/dist/vendor/typeorm/decorator/Unique.d.ts +35 -0
  281. package/dist/vendor/typeorm/decorator/Unique.js +52 -0
  282. package/dist/vendor/typeorm/decorator/Unique.js.map +1 -0
  283. package/dist/vendor/typeorm/decorator/columns/Column.d.ts +106 -0
  284. package/dist/vendor/typeorm/decorator/columns/Column.js +79 -0
  285. package/dist/vendor/typeorm/decorator/columns/Column.js.map +1 -0
  286. package/dist/vendor/typeorm/decorator/columns/CreateDateColumn.d.ts +9 -0
  287. package/dist/vendor/typeorm/decorator/columns/CreateDateColumn.js +22 -0
  288. package/dist/vendor/typeorm/decorator/columns/CreateDateColumn.js.map +1 -0
  289. package/dist/vendor/typeorm/decorator/columns/DeleteDateColumn.d.ts +8 -0
  290. package/dist/vendor/typeorm/decorator/columns/DeleteDateColumn.js +21 -0
  291. package/dist/vendor/typeorm/decorator/columns/DeleteDateColumn.js.map +1 -0
  292. package/dist/vendor/typeorm/decorator/columns/ObjectIdColumn.d.ts +8 -0
  293. package/dist/vendor/typeorm/decorator/columns/ObjectIdColumn.js +26 -0
  294. package/dist/vendor/typeorm/decorator/columns/ObjectIdColumn.js.map +1 -0
  295. package/dist/vendor/typeorm/decorator/columns/PrimaryColumn.d.ts +26 -0
  296. package/dist/vendor/typeorm/decorator/columns/PrimaryColumn.js +64 -0
  297. package/dist/vendor/typeorm/decorator/columns/PrimaryColumn.js.map +1 -0
  298. package/dist/vendor/typeorm/decorator/columns/PrimaryGeneratedColumn.d.ts +35 -0
  299. package/dist/vendor/typeorm/decorator/columns/PrimaryGeneratedColumn.js +61 -0
  300. package/dist/vendor/typeorm/decorator/columns/PrimaryGeneratedColumn.js.map +1 -0
  301. package/dist/vendor/typeorm/decorator/columns/UpdateDateColumn.d.ts +8 -0
  302. package/dist/vendor/typeorm/decorator/columns/UpdateDateColumn.js +21 -0
  303. package/dist/vendor/typeorm/decorator/columns/UpdateDateColumn.js.map +1 -0
  304. package/dist/vendor/typeorm/decorator/columns/VersionColumn.d.ts +9 -0
  305. package/dist/vendor/typeorm/decorator/columns/VersionColumn.js +22 -0
  306. package/dist/vendor/typeorm/decorator/columns/VersionColumn.js.map +1 -0
  307. package/dist/vendor/typeorm/decorator/columns/ViewColumn.d.ts +7 -0
  308. package/dist/vendor/typeorm/decorator/columns/ViewColumn.js +20 -0
  309. package/dist/vendor/typeorm/decorator/columns/ViewColumn.js.map +1 -0
  310. package/dist/vendor/typeorm/decorator/columns/VirtualColumn.d.ts +15 -0
  311. package/dist/vendor/typeorm/decorator/columns/VirtualColumn.js +51 -0
  312. package/dist/vendor/typeorm/decorator/columns/VirtualColumn.js.map +1 -0
  313. package/dist/vendor/typeorm/decorator/entity/ChildEntity.d.ts +6 -0
  314. package/dist/vendor/typeorm/decorator/entity/ChildEntity.js +26 -0
  315. package/dist/vendor/typeorm/decorator/entity/ChildEntity.js.map +1 -0
  316. package/dist/vendor/typeorm/decorator/entity/Entity.d.ts +16 -0
  317. package/dist/vendor/typeorm/decorator/entity/Entity.js +33 -0
  318. package/dist/vendor/typeorm/decorator/entity/Entity.js.map +1 -0
  319. package/dist/vendor/typeorm/decorator/entity/TableInheritance.d.ts +12 -0
  320. package/dist/vendor/typeorm/decorator/entity/TableInheritance.js +25 -0
  321. package/dist/vendor/typeorm/decorator/entity/TableInheritance.js.map +1 -0
  322. package/dist/vendor/typeorm/decorator/entity-view/ViewEntity.d.ts +16 -0
  323. package/dist/vendor/typeorm/decorator/entity-view/ViewEntity.js +34 -0
  324. package/dist/vendor/typeorm/decorator/entity-view/ViewEntity.js.map +1 -0
  325. package/dist/vendor/typeorm/decorator/listeners/AfterInsert.d.ts +4 -0
  326. package/dist/vendor/typeorm/decorator/listeners/AfterInsert.js +18 -0
  327. package/dist/vendor/typeorm/decorator/listeners/AfterInsert.js.map +1 -0
  328. package/dist/vendor/typeorm/decorator/listeners/AfterLoad.d.ts +4 -0
  329. package/dist/vendor/typeorm/decorator/listeners/AfterLoad.js +18 -0
  330. package/dist/vendor/typeorm/decorator/listeners/AfterLoad.js.map +1 -0
  331. package/dist/vendor/typeorm/decorator/listeners/AfterRecover.d.ts +4 -0
  332. package/dist/vendor/typeorm/decorator/listeners/AfterRecover.js +18 -0
  333. package/dist/vendor/typeorm/decorator/listeners/AfterRecover.js.map +1 -0
  334. package/dist/vendor/typeorm/decorator/listeners/AfterRemove.d.ts +4 -0
  335. package/dist/vendor/typeorm/decorator/listeners/AfterRemove.js +18 -0
  336. package/dist/vendor/typeorm/decorator/listeners/AfterRemove.js.map +1 -0
  337. package/dist/vendor/typeorm/decorator/listeners/AfterSoftRemove.d.ts +4 -0
  338. package/dist/vendor/typeorm/decorator/listeners/AfterSoftRemove.js +18 -0
  339. package/dist/vendor/typeorm/decorator/listeners/AfterSoftRemove.js.map +1 -0
  340. package/dist/vendor/typeorm/decorator/listeners/AfterUpdate.d.ts +4 -0
  341. package/dist/vendor/typeorm/decorator/listeners/AfterUpdate.js +18 -0
  342. package/dist/vendor/typeorm/decorator/listeners/AfterUpdate.js.map +1 -0
  343. package/dist/vendor/typeorm/decorator/listeners/BeforeInsert.d.ts +4 -0
  344. package/dist/vendor/typeorm/decorator/listeners/BeforeInsert.js +18 -0
  345. package/dist/vendor/typeorm/decorator/listeners/BeforeInsert.js.map +1 -0
  346. package/dist/vendor/typeorm/decorator/listeners/BeforeRecover.d.ts +4 -0
  347. package/dist/vendor/typeorm/decorator/listeners/BeforeRecover.js +18 -0
  348. package/dist/vendor/typeorm/decorator/listeners/BeforeRecover.js.map +1 -0
  349. package/dist/vendor/typeorm/decorator/listeners/BeforeRemove.d.ts +4 -0
  350. package/dist/vendor/typeorm/decorator/listeners/BeforeRemove.js +18 -0
  351. package/dist/vendor/typeorm/decorator/listeners/BeforeRemove.js.map +1 -0
  352. package/dist/vendor/typeorm/decorator/listeners/BeforeSoftRemove.d.ts +4 -0
  353. package/dist/vendor/typeorm/decorator/listeners/BeforeSoftRemove.js +18 -0
  354. package/dist/vendor/typeorm/decorator/listeners/BeforeSoftRemove.js.map +1 -0
  355. package/dist/vendor/typeorm/decorator/listeners/BeforeUpdate.d.ts +4 -0
  356. package/dist/vendor/typeorm/decorator/listeners/BeforeUpdate.js +18 -0
  357. package/dist/vendor/typeorm/decorator/listeners/BeforeUpdate.js.map +1 -0
  358. package/dist/vendor/typeorm/decorator/listeners/EventSubscriber.d.ts +5 -0
  359. package/dist/vendor/typeorm/decorator/listeners/EventSubscriber.js +16 -0
  360. package/dist/vendor/typeorm/decorator/listeners/EventSubscriber.js.map +1 -0
  361. package/dist/vendor/typeorm/decorator/options/ColumnCommonOptions.d.ts +57 -0
  362. package/dist/vendor/typeorm/decorator/options/ColumnCommonOptions.js +3 -0
  363. package/dist/vendor/typeorm/decorator/options/ColumnCommonOptions.js.map +1 -0
  364. package/dist/vendor/typeorm/decorator/options/ColumnEmbeddedOptions.d.ts +16 -0
  365. package/dist/vendor/typeorm/decorator/options/ColumnEmbeddedOptions.js +3 -0
  366. package/dist/vendor/typeorm/decorator/options/ColumnEmbeddedOptions.js.map +1 -0
  367. package/dist/vendor/typeorm/decorator/options/ColumnEnumOptions.d.ts +13 -0
  368. package/dist/vendor/typeorm/decorator/options/ColumnEnumOptions.js +3 -0
  369. package/dist/vendor/typeorm/decorator/options/ColumnEnumOptions.js.map +1 -0
  370. package/dist/vendor/typeorm/decorator/options/ColumnHstoreOptions.d.ts +10 -0
  371. package/dist/vendor/typeorm/decorator/options/ColumnHstoreOptions.js +3 -0
  372. package/dist/vendor/typeorm/decorator/options/ColumnHstoreOptions.js.map +1 -0
  373. package/dist/vendor/typeorm/decorator/options/ColumnNumericOptions.d.ts +15 -0
  374. package/dist/vendor/typeorm/decorator/options/ColumnNumericOptions.js +3 -0
  375. package/dist/vendor/typeorm/decorator/options/ColumnNumericOptions.js.map +1 -0
  376. package/dist/vendor/typeorm/decorator/options/ColumnOptions.d.ts +158 -0
  377. package/dist/vendor/typeorm/decorator/options/ColumnOptions.js +3 -0
  378. package/dist/vendor/typeorm/decorator/options/ColumnOptions.js.map +1 -0
  379. package/dist/vendor/typeorm/decorator/options/ColumnUnsignedOptions.d.ts +9 -0
  380. package/dist/vendor/typeorm/decorator/options/ColumnUnsignedOptions.js +3 -0
  381. package/dist/vendor/typeorm/decorator/options/ColumnUnsignedOptions.js.map +1 -0
  382. package/dist/vendor/typeorm/decorator/options/ColumnWithLengthOptions.d.ts +10 -0
  383. package/dist/vendor/typeorm/decorator/options/ColumnWithLengthOptions.js +3 -0
  384. package/dist/vendor/typeorm/decorator/options/ColumnWithLengthOptions.js.map +1 -0
  385. package/dist/vendor/typeorm/decorator/options/EntityOptions.d.ts +47 -0
  386. package/dist/vendor/typeorm/decorator/options/EntityOptions.js +3 -0
  387. package/dist/vendor/typeorm/decorator/options/EntityOptions.js.map +1 -0
  388. package/dist/vendor/typeorm/decorator/options/ExclusionOptions.d.ts +10 -0
  389. package/dist/vendor/typeorm/decorator/options/ExclusionOptions.js +3 -0
  390. package/dist/vendor/typeorm/decorator/options/ExclusionOptions.js.map +1 -0
  391. package/dist/vendor/typeorm/decorator/options/ForeignKeyOptions.d.ts +24 -0
  392. package/dist/vendor/typeorm/decorator/options/ForeignKeyOptions.js +3 -0
  393. package/dist/vendor/typeorm/decorator/options/ForeignKeyOptions.js.map +1 -0
  394. package/dist/vendor/typeorm/decorator/options/IndexOptions.d.ts +64 -0
  395. package/dist/vendor/typeorm/decorator/options/IndexOptions.js +3 -0
  396. package/dist/vendor/typeorm/decorator/options/IndexOptions.js.map +1 -0
  397. package/dist/vendor/typeorm/decorator/options/JoinColumnOptions.d.ts +17 -0
  398. package/dist/vendor/typeorm/decorator/options/JoinColumnOptions.js +3 -0
  399. package/dist/vendor/typeorm/decorator/options/JoinColumnOptions.js.map +1 -0
  400. package/dist/vendor/typeorm/decorator/options/JoinTableMultipleColumnsOptions.d.ts +35 -0
  401. package/dist/vendor/typeorm/decorator/options/JoinTableMultipleColumnsOptions.js +3 -0
  402. package/dist/vendor/typeorm/decorator/options/JoinTableMultipleColumnsOptions.js.map +1 -0
  403. package/dist/vendor/typeorm/decorator/options/JoinTableOptions.d.ts +35 -0
  404. package/dist/vendor/typeorm/decorator/options/JoinTableOptions.js +3 -0
  405. package/dist/vendor/typeorm/decorator/options/JoinTableOptions.js.map +1 -0
  406. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnIdentityOptions.d.ts +26 -0
  407. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnIdentityOptions.js +3 -0
  408. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnIdentityOptions.js.map +1 -0
  409. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnNumericOptions.d.ts +26 -0
  410. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnNumericOptions.js +3 -0
  411. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnNumericOptions.js.map +1 -0
  412. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnUUIDOptions.d.ts +17 -0
  413. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnUUIDOptions.js +3 -0
  414. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnUUIDOptions.js.map +1 -0
  415. package/dist/vendor/typeorm/decorator/options/RelationOptions.d.ts +66 -0
  416. package/dist/vendor/typeorm/decorator/options/RelationOptions.js +3 -0
  417. package/dist/vendor/typeorm/decorator/options/RelationOptions.js.map +1 -0
  418. package/dist/vendor/typeorm/decorator/options/SpatialColumnOptions.d.ts +17 -0
  419. package/dist/vendor/typeorm/decorator/options/SpatialColumnOptions.js +3 -0
  420. package/dist/vendor/typeorm/decorator/options/SpatialColumnOptions.js.map +1 -0
  421. package/dist/vendor/typeorm/decorator/options/TransactionOptions.d.ts +5 -0
  422. package/dist/vendor/typeorm/decorator/options/TransactionOptions.js +3 -0
  423. package/dist/vendor/typeorm/decorator/options/TransactionOptions.js.map +1 -0
  424. package/dist/vendor/typeorm/decorator/options/UniqueOptions.d.ts +10 -0
  425. package/dist/vendor/typeorm/decorator/options/UniqueOptions.js +3 -0
  426. package/dist/vendor/typeorm/decorator/options/UniqueOptions.js.map +1 -0
  427. package/dist/vendor/typeorm/decorator/options/ValueTransformer.d.ts +13 -0
  428. package/dist/vendor/typeorm/decorator/options/ValueTransformer.js +3 -0
  429. package/dist/vendor/typeorm/decorator/options/ValueTransformer.js.map +1 -0
  430. package/dist/vendor/typeorm/decorator/options/ViewColumnOptions.d.ts +15 -0
  431. package/dist/vendor/typeorm/decorator/options/ViewColumnOptions.js +3 -0
  432. package/dist/vendor/typeorm/decorator/options/ViewColumnOptions.js.map +1 -0
  433. package/dist/vendor/typeorm/decorator/options/ViewEntityOptions.d.ts +40 -0
  434. package/dist/vendor/typeorm/decorator/options/ViewEntityOptions.js +3 -0
  435. package/dist/vendor/typeorm/decorator/options/ViewEntityOptions.js.map +1 -0
  436. package/dist/vendor/typeorm/decorator/options/VirtualColumnOptions.d.ts +33 -0
  437. package/dist/vendor/typeorm/decorator/options/VirtualColumnOptions.js +3 -0
  438. package/dist/vendor/typeorm/decorator/options/VirtualColumnOptions.js.map +1 -0
  439. package/dist/vendor/typeorm/decorator/relations/JoinColumn.d.ts +23 -0
  440. package/dist/vendor/typeorm/decorator/relations/JoinColumn.js +28 -0
  441. package/dist/vendor/typeorm/decorator/relations/JoinColumn.js.map +1 -0
  442. package/dist/vendor/typeorm/decorator/relations/JoinTable.d.ts +21 -0
  443. package/dist/vendor/typeorm/decorator/relations/JoinTable.js +35 -0
  444. package/dist/vendor/typeorm/decorator/relations/JoinTable.js.map +1 -0
  445. package/dist/vendor/typeorm/decorator/relations/ManyToMany.d.ts +21 -0
  446. package/dist/vendor/typeorm/decorator/relations/ManyToMany.js +48 -0
  447. package/dist/vendor/typeorm/decorator/relations/ManyToMany.js.map +1 -0
  448. package/dist/vendor/typeorm/decorator/relations/ManyToOne.d.ts +21 -0
  449. package/dist/vendor/typeorm/decorator/relations/ManyToOne.js +48 -0
  450. package/dist/vendor/typeorm/decorator/relations/ManyToOne.js.map +1 -0
  451. package/dist/vendor/typeorm/decorator/relations/OneToMany.d.ts +12 -0
  452. package/dist/vendor/typeorm/decorator/relations/OneToMany.js +39 -0
  453. package/dist/vendor/typeorm/decorator/relations/OneToMany.js.map +1 -0
  454. package/dist/vendor/typeorm/decorator/relations/OneToOne.d.ts +19 -0
  455. package/dist/vendor/typeorm/decorator/relations/OneToOne.js +47 -0
  456. package/dist/vendor/typeorm/decorator/relations/OneToOne.js.map +1 -0
  457. package/dist/vendor/typeorm/decorator/relations/RelationId.d.ts +10 -0
  458. package/dist/vendor/typeorm/decorator/relations/RelationId.js +24 -0
  459. package/dist/vendor/typeorm/decorator/relations/RelationId.js.map +1 -0
  460. package/dist/vendor/typeorm/decorator/tree/Tree.d.ts +12 -0
  461. package/dist/vendor/typeorm/decorator/tree/Tree.js +23 -0
  462. package/dist/vendor/typeorm/decorator/tree/Tree.js.map +1 -0
  463. package/dist/vendor/typeorm/decorator/tree/TreeChildren.d.ts +10 -0
  464. package/dist/vendor/typeorm/decorator/tree/TreeChildren.js +35 -0
  465. package/dist/vendor/typeorm/decorator/tree/TreeChildren.js.map +1 -0
  466. package/dist/vendor/typeorm/decorator/tree/TreeLevelColumn.d.ts +4 -0
  467. package/dist/vendor/typeorm/decorator/tree/TreeLevelColumn.js +18 -0
  468. package/dist/vendor/typeorm/decorator/tree/TreeLevelColumn.js.map +1 -0
  469. package/dist/vendor/typeorm/decorator/tree/TreeParent.d.ts +11 -0
  470. package/dist/vendor/typeorm/decorator/tree/TreeParent.js +34 -0
  471. package/dist/vendor/typeorm/decorator/tree/TreeParent.js.map +1 -0
  472. package/dist/vendor/typeorm/driver/Driver.d.ts +241 -0
  473. package/dist/vendor/typeorm/driver/Driver.js +3 -0
  474. package/dist/vendor/typeorm/driver/Driver.js.map +1 -0
  475. package/dist/vendor/typeorm/driver/DriverFactory.d.ts +14 -0
  476. package/dist/vendor/typeorm/driver/DriverFactory.js +100 -0
  477. package/dist/vendor/typeorm/driver/DriverFactory.js.map +1 -0
  478. package/dist/vendor/typeorm/driver/DriverUtils.d.ts +71 -0
  479. package/dist/vendor/typeorm/driver/DriverUtils.js +233 -0
  480. package/dist/vendor/typeorm/driver/DriverUtils.js.map +1 -0
  481. package/dist/vendor/typeorm/driver/Query.d.ts +9 -0
  482. package/dist/vendor/typeorm/driver/Query.js +15 -0
  483. package/dist/vendor/typeorm/driver/Query.js.map +1 -0
  484. package/dist/vendor/typeorm/driver/SqlInMemory.d.ts +8 -0
  485. package/dist/vendor/typeorm/driver/SqlInMemory.js +14 -0
  486. package/dist/vendor/typeorm/driver/SqlInMemory.js.map +1 -0
  487. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.d.ts +35 -0
  488. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.js +3 -0
  489. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.js.map +1 -0
  490. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlDataSourceOptions.d.ts +35 -0
  491. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlDataSourceOptions.js +3 -0
  492. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlDataSourceOptions.js.map +1 -0
  493. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlDriver.d.ts +322 -0
  494. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlDriver.js +880 -0
  495. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlDriver.js.map +1 -0
  496. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlQueryRunner.d.ts +532 -0
  497. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlQueryRunner.js +1875 -0
  498. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -0
  499. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresDataSourceOptions.d.ts +35 -0
  500. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresDataSourceOptions.js +3 -0
  501. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresDataSourceOptions.js.map +1 -0
  502. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresDriver.d.ts +85 -0
  503. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresDriver.js +130 -0
  504. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresDriver.js.map +1 -0
  505. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresQueryRunner.d.ts +59 -0
  506. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresQueryRunner.js +180 -0
  507. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -0
  508. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3DataSourceOptions.d.ts +69 -0
  509. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3DataSourceOptions.js +3 -0
  510. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3DataSourceOptions.js.map +1 -0
  511. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3Driver.d.ts +63 -0
  512. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3Driver.js +158 -0
  513. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -0
  514. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3QueryRunner.d.ts +37 -0
  515. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3QueryRunner.js +144 -0
  516. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -0
  517. package/dist/vendor/typeorm/driver/capacitor/CapacitorDataSourceOptions.d.ts +31 -0
  518. package/dist/vendor/typeorm/driver/capacitor/CapacitorDataSourceOptions.js +3 -0
  519. package/dist/vendor/typeorm/driver/capacitor/CapacitorDataSourceOptions.js.map +1 -0
  520. package/dist/vendor/typeorm/driver/capacitor/CapacitorDriver.d.ts +29 -0
  521. package/dist/vendor/typeorm/driver/capacitor/CapacitorDriver.js +78 -0
  522. package/dist/vendor/typeorm/driver/capacitor/CapacitorDriver.js.map +1 -0
  523. package/dist/vendor/typeorm/driver/capacitor/CapacitorQueryRunner.d.ts +39 -0
  524. package/dist/vendor/typeorm/driver/capacitor/CapacitorQueryRunner.js +107 -0
  525. package/dist/vendor/typeorm/driver/capacitor/CapacitorQueryRunner.js.map +1 -0
  526. package/dist/vendor/typeorm/driver/cockroachdb/CockroachConnectionCredentialsOptions.d.ts +34 -0
  527. package/dist/vendor/typeorm/driver/cockroachdb/CockroachConnectionCredentialsOptions.js +3 -0
  528. package/dist/vendor/typeorm/driver/cockroachdb/CockroachConnectionCredentialsOptions.js.map +1 -0
  529. package/dist/vendor/typeorm/driver/cockroachdb/CockroachDataSourceOptions.d.ts +64 -0
  530. package/dist/vendor/typeorm/driver/cockroachdb/CockroachDataSourceOptions.js +3 -0
  531. package/dist/vendor/typeorm/driver/cockroachdb/CockroachDataSourceOptions.js.map +1 -0
  532. package/dist/vendor/typeorm/driver/cockroachdb/CockroachDriver.d.ts +357 -0
  533. package/dist/vendor/typeorm/driver/cockroachdb/CockroachDriver.js +1006 -0
  534. package/dist/vendor/typeorm/driver/cockroachdb/CockroachDriver.js.map +1 -0
  535. package/dist/vendor/typeorm/driver/cockroachdb/CockroachQueryRunner.d.ts +646 -0
  536. package/dist/vendor/typeorm/driver/cockroachdb/CockroachQueryRunner.js +2755 -0
  537. package/dist/vendor/typeorm/driver/cockroachdb/CockroachQueryRunner.js.map +1 -0
  538. package/dist/vendor/typeorm/driver/cordova/CordovaDataSourceOptions.d.ts +24 -0
  539. package/dist/vendor/typeorm/driver/cordova/CordovaDataSourceOptions.js +3 -0
  540. package/dist/vendor/typeorm/driver/cordova/CordovaDataSourceOptions.js.map +1 -0
  541. package/dist/vendor/typeorm/driver/cordova/CordovaDriver.d.ts +33 -0
  542. package/dist/vendor/typeorm/driver/cordova/CordovaDriver.js +84 -0
  543. package/dist/vendor/typeorm/driver/cordova/CordovaDriver.js.map +1 -0
  544. package/dist/vendor/typeorm/driver/cordova/CordovaQueryRunner.d.ts +54 -0
  545. package/dist/vendor/typeorm/driver/cordova/CordovaQueryRunner.js +146 -0
  546. package/dist/vendor/typeorm/driver/cordova/CordovaQueryRunner.js.map +1 -0
  547. package/dist/vendor/typeorm/driver/expo/ExpoDataSourceOptions.d.ts +21 -0
  548. package/dist/vendor/typeorm/driver/expo/ExpoDataSourceOptions.js +3 -0
  549. package/dist/vendor/typeorm/driver/expo/ExpoDataSourceOptions.js.map +1 -0
  550. package/dist/vendor/typeorm/driver/expo/ExpoDriver.d.ts +15 -0
  551. package/dist/vendor/typeorm/driver/expo/ExpoDriver.js +45 -0
  552. package/dist/vendor/typeorm/driver/expo/ExpoDriver.js.map +1 -0
  553. package/dist/vendor/typeorm/driver/expo/ExpoQueryRunner.d.ts +10 -0
  554. package/dist/vendor/typeorm/driver/expo/ExpoQueryRunner.js +67 -0
  555. package/dist/vendor/typeorm/driver/expo/ExpoQueryRunner.js.map +1 -0
  556. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedBTree.d.ts +167 -0
  557. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedBTree.js +541 -0
  558. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedBTree.js.map +1 -0
  559. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedCache.d.ts +96 -0
  560. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedCache.js +185 -0
  561. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedCache.js.map +1 -0
  562. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedClient.d.ts +411 -0
  563. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedClient.js +1345 -0
  564. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedClient.js.map +1 -0
  565. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedCollectionStore.d.ts +402 -0
  566. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedCollectionStore.js +1017 -0
  567. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedCollectionStore.js.map +1 -0
  568. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedFile.d.ts +68 -0
  569. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedFile.js +126 -0
  570. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedFile.js.map +1 -0
  571. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedKeyEncoding.d.ts +88 -0
  572. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedKeyEncoding.js +306 -0
  573. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedKeyEncoding.js.map +1 -0
  574. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedKeydir.d.ts +124 -0
  575. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedKeydir.js +331 -0
  576. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedKeydir.js.map +1 -0
  577. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedLog.d.ts +80 -0
  578. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedLog.js +119 -0
  579. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedLog.js.map +1 -0
  580. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedObjectId.d.ts +19 -0
  581. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedObjectId.js +35 -0
  582. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedObjectId.js.map +1 -0
  583. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedPlanner.d.ts +100 -0
  584. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedPlanner.js +261 -0
  585. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedPlanner.js.map +1 -0
  586. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedStore.d.ts +185 -0
  587. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedStore.js +529 -0
  588. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedStore.js.map +1 -0
  589. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedValues.d.ts +58 -0
  590. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedValues.js +176 -0
  591. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedValues.js.map +1 -0
  592. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorker.d.ts +12 -0
  593. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorker.js +181 -0
  594. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorker.js.map +1 -0
  595. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerClient.d.ts +204 -0
  596. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerClient.js +564 -0
  597. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerClient.js.map +1 -0
  598. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerCode.d.ts +7 -0
  599. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerCode.js +4 -0
  600. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerProtocol.d.ts +117 -0
  601. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerProtocol.js +155 -0
  602. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerProtocol.js.map +1 -0
  603. package/dist/vendor/typeorm/driver/mongo-embedded/MongoEmbeddedDataSourceOptions.d.ts +97 -0
  604. package/dist/vendor/typeorm/driver/mongo-embedded/MongoEmbeddedDataSourceOptions.js +3 -0
  605. package/dist/vendor/typeorm/driver/mongo-embedded/MongoEmbeddedDataSourceOptions.js.map +1 -0
  606. package/dist/vendor/typeorm/driver/mongo-embedded/MongoEmbeddedDriver.d.ts +33 -0
  607. package/dist/vendor/typeorm/driver/mongo-embedded/MongoEmbeddedDriver.js +67 -0
  608. package/dist/vendor/typeorm/driver/mongo-embedded/MongoEmbeddedDriver.js.map +1 -0
  609. package/dist/vendor/typeorm/driver/mongodb/MongoDataSourceOptions.d.ts +205 -0
  610. package/dist/vendor/typeorm/driver/mongodb/MongoDataSourceOptions.js +3 -0
  611. package/dist/vendor/typeorm/driver/mongodb/MongoDataSourceOptions.js.map +1 -0
  612. package/dist/vendor/typeorm/driver/mongodb/MongoDriver.d.ts +281 -0
  613. package/dist/vendor/typeorm/driver/mongodb/MongoDriver.js +446 -0
  614. package/dist/vendor/typeorm/driver/mongodb/MongoDriver.js.map +1 -0
  615. package/dist/vendor/typeorm/driver/mongodb/MongoQueryRunner.d.ts +752 -0
  616. package/dist/vendor/typeorm/driver/mongodb/MongoQueryRunner.js +951 -0
  617. package/dist/vendor/typeorm/driver/mongodb/MongoQueryRunner.js.map +1 -0
  618. package/dist/vendor/typeorm/driver/mongodb/bson.typings.d.ts +1588 -0
  619. package/dist/vendor/typeorm/driver/mongodb/bson.typings.js +4 -0
  620. package/dist/vendor/typeorm/driver/mongodb/bson.typings.js.map +1 -0
  621. package/dist/vendor/typeorm/driver/mongodb/typings.d.ts +8064 -0
  622. package/dist/vendor/typeorm/driver/mongodb/typings.js +24 -0
  623. package/dist/vendor/typeorm/driver/mongodb/typings.js.map +1 -0
  624. package/dist/vendor/typeorm/driver/mysql/MysqlConnectionCredentialsOptions.d.ts +44 -0
  625. package/dist/vendor/typeorm/driver/mysql/MysqlConnectionCredentialsOptions.js +3 -0
  626. package/dist/vendor/typeorm/driver/mysql/MysqlConnectionCredentialsOptions.js.map +1 -0
  627. package/dist/vendor/typeorm/driver/mysql/MysqlDataSourceOptions.d.ts +133 -0
  628. package/dist/vendor/typeorm/driver/mysql/MysqlDataSourceOptions.js +3 -0
  629. package/dist/vendor/typeorm/driver/mysql/MysqlDataSourceOptions.js.map +1 -0
  630. package/dist/vendor/typeorm/driver/mysql/MysqlDriver.d.ts +344 -0
  631. package/dist/vendor/typeorm/driver/mysql/MysqlDriver.js +1077 -0
  632. package/dist/vendor/typeorm/driver/mysql/MysqlDriver.js.map +1 -0
  633. package/dist/vendor/typeorm/driver/mysql/MysqlQueryRunner.d.ts +532 -0
  634. package/dist/vendor/typeorm/driver/mysql/MysqlQueryRunner.js +2341 -0
  635. package/dist/vendor/typeorm/driver/mysql/MysqlQueryRunner.js.map +1 -0
  636. package/dist/vendor/typeorm/driver/nativescript/NativescriptDataSourceOptions.d.ts +45 -0
  637. package/dist/vendor/typeorm/driver/nativescript/NativescriptDataSourceOptions.js +3 -0
  638. package/dist/vendor/typeorm/driver/nativescript/NativescriptDataSourceOptions.js.map +1 -0
  639. package/dist/vendor/typeorm/driver/nativescript/NativescriptDriver.d.ts +46 -0
  640. package/dist/vendor/typeorm/driver/nativescript/NativescriptDriver.js +92 -0
  641. package/dist/vendor/typeorm/driver/nativescript/NativescriptDriver.js.map +1 -0
  642. package/dist/vendor/typeorm/driver/nativescript/NativescriptQueryRunner.d.ts +36 -0
  643. package/dist/vendor/typeorm/driver/nativescript/NativescriptQueryRunner.js +101 -0
  644. package/dist/vendor/typeorm/driver/nativescript/NativescriptQueryRunner.js.map +1 -0
  645. package/dist/vendor/typeorm/driver/oracle/OracleConnectionCredentialsOptions.d.ts +41 -0
  646. package/dist/vendor/typeorm/driver/oracle/OracleConnectionCredentialsOptions.js +3 -0
  647. package/dist/vendor/typeorm/driver/oracle/OracleConnectionCredentialsOptions.js.map +1 -0
  648. package/dist/vendor/typeorm/driver/oracle/OracleDataSourceOptions.d.ts +51 -0
  649. package/dist/vendor/typeorm/driver/oracle/OracleDataSourceOptions.js +3 -0
  650. package/dist/vendor/typeorm/driver/oracle/OracleDataSourceOptions.js.map +1 -0
  651. package/dist/vendor/typeorm/driver/oracle/OracleDriver.d.ts +332 -0
  652. package/dist/vendor/typeorm/driver/oracle/OracleDriver.js +939 -0
  653. package/dist/vendor/typeorm/driver/oracle/OracleDriver.js.map +1 -0
  654. package/dist/vendor/typeorm/driver/oracle/OracleQueryRunner.d.ts +550 -0
  655. package/dist/vendor/typeorm/driver/oracle/OracleQueryRunner.js +2135 -0
  656. package/dist/vendor/typeorm/driver/oracle/OracleQueryRunner.js.map +1 -0
  657. package/dist/vendor/typeorm/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +39 -0
  658. package/dist/vendor/typeorm/driver/postgres/PostgresConnectionCredentialsOptions.js +3 -0
  659. package/dist/vendor/typeorm/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -0
  660. package/dist/vendor/typeorm/driver/postgres/PostgresDataSourceOptions.d.ts +89 -0
  661. package/dist/vendor/typeorm/driver/postgres/PostgresDataSourceOptions.js +3 -0
  662. package/dist/vendor/typeorm/driver/postgres/PostgresDataSourceOptions.js.map +1 -0
  663. package/dist/vendor/typeorm/driver/postgres/PostgresDriver.d.ts +391 -0
  664. package/dist/vendor/typeorm/driver/postgres/PostgresDriver.js +1494 -0
  665. package/dist/vendor/typeorm/driver/postgres/PostgresDriver.js.map +1 -0
  666. package/dist/vendor/typeorm/driver/postgres/PostgresQueryRunner.d.ts +691 -0
  667. package/dist/vendor/typeorm/driver/postgres/PostgresQueryRunner.js +3119 -0
  668. package/dist/vendor/typeorm/driver/postgres/PostgresQueryRunner.js.map +1 -0
  669. package/dist/vendor/typeorm/driver/react-native/ReactNativeDataSourceOptions.d.ts +28 -0
  670. package/dist/vendor/typeorm/driver/react-native/ReactNativeDataSourceOptions.js +3 -0
  671. package/dist/vendor/typeorm/driver/react-native/ReactNativeDataSourceOptions.js.map +1 -0
  672. package/dist/vendor/typeorm/driver/react-native/ReactNativeDriver.d.ts +307 -0
  673. package/dist/vendor/typeorm/driver/react-native/ReactNativeDriver.js +805 -0
  674. package/dist/vendor/typeorm/driver/react-native/ReactNativeDriver.js.map +1 -0
  675. package/dist/vendor/typeorm/driver/react-native/ReactNativeQueryRunner.d.ts +36 -0
  676. package/dist/vendor/typeorm/driver/react-native/ReactNativeQueryRunner.js +116 -0
  677. package/dist/vendor/typeorm/driver/react-native/ReactNativeQueryRunner.js.map +1 -0
  678. package/dist/vendor/typeorm/driver/sap/SapConnectionCredentialsOptions.d.ts +45 -0
  679. package/dist/vendor/typeorm/driver/sap/SapConnectionCredentialsOptions.js +3 -0
  680. package/dist/vendor/typeorm/driver/sap/SapConnectionCredentialsOptions.js.map +1 -0
  681. package/dist/vendor/typeorm/driver/sap/SapDataSourceOptions.d.ts +59 -0
  682. package/dist/vendor/typeorm/driver/sap/SapDataSourceOptions.js +3 -0
  683. package/dist/vendor/typeorm/driver/sap/SapDataSourceOptions.js.map +1 -0
  684. package/dist/vendor/typeorm/driver/sap/SapDriver.d.ts +296 -0
  685. package/dist/vendor/typeorm/driver/sap/SapDriver.js +761 -0
  686. package/dist/vendor/typeorm/driver/sap/SapDriver.js.map +1 -0
  687. package/dist/vendor/typeorm/driver/sap/SapQueryRunner.d.ts +565 -0
  688. package/dist/vendor/typeorm/driver/sap/SapQueryRunner.js +2452 -0
  689. package/dist/vendor/typeorm/driver/sap/SapQueryRunner.js.map +1 -0
  690. package/dist/vendor/typeorm/driver/spanner/SpannerConnectionCredentialsOptions.d.ts +30 -0
  691. package/dist/vendor/typeorm/driver/spanner/SpannerConnectionCredentialsOptions.js +3 -0
  692. package/dist/vendor/typeorm/driver/spanner/SpannerConnectionCredentialsOptions.js.map +1 -0
  693. package/dist/vendor/typeorm/driver/spanner/SpannerDataSourceOptions.d.ts +123 -0
  694. package/dist/vendor/typeorm/driver/spanner/SpannerDataSourceOptions.js +3 -0
  695. package/dist/vendor/typeorm/driver/spanner/SpannerDataSourceOptions.js.map +1 -0
  696. package/dist/vendor/typeorm/driver/spanner/SpannerDriver.d.ts +302 -0
  697. package/dist/vendor/typeorm/driver/spanner/SpannerDriver.js +673 -0
  698. package/dist/vendor/typeorm/driver/spanner/SpannerDriver.js.map +1 -0
  699. package/dist/vendor/typeorm/driver/spanner/SpannerQueryRunner.d.ts +574 -0
  700. package/dist/vendor/typeorm/driver/spanner/SpannerQueryRunner.js +1761 -0
  701. package/dist/vendor/typeorm/driver/spanner/SpannerQueryRunner.js.map +1 -0
  702. package/dist/vendor/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +319 -0
  703. package/dist/vendor/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.js +770 -0
  704. package/dist/vendor/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -0
  705. package/dist/vendor/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +498 -0
  706. package/dist/vendor/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +1732 -0
  707. package/dist/vendor/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -0
  708. package/dist/vendor/typeorm/driver/sqljs/SqljsDataSourceOptions.d.ts +46 -0
  709. package/dist/vendor/typeorm/driver/sqljs/SqljsDataSourceOptions.js +3 -0
  710. package/dist/vendor/typeorm/driver/sqljs/SqljsDataSourceOptions.js.map +1 -0
  711. package/dist/vendor/typeorm/driver/sqljs/SqljsDriver.d.ts +76 -0
  712. package/dist/vendor/typeorm/driver/sqljs/SqljsDriver.js +264 -0
  713. package/dist/vendor/typeorm/driver/sqljs/SqljsDriver.js.map +1 -0
  714. package/dist/vendor/typeorm/driver/sqljs/SqljsQueryRunner.d.ts +40 -0
  715. package/dist/vendor/typeorm/driver/sqljs/SqljsQueryRunner.js +129 -0
  716. package/dist/vendor/typeorm/driver/sqljs/SqljsQueryRunner.js.map +1 -0
  717. package/dist/vendor/typeorm/driver/sqlserver/MssqlParameter.d.ts +45 -0
  718. package/dist/vendor/typeorm/driver/sqlserver/MssqlParameter.js +22 -0
  719. package/dist/vendor/typeorm/driver/sqlserver/MssqlParameter.js.map +1 -0
  720. package/dist/vendor/typeorm/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +43 -0
  721. package/dist/vendor/typeorm/driver/sqlserver/SqlServerConnectionCredentialsOptions.js +3 -0
  722. package/dist/vendor/typeorm/driver/sqlserver/SqlServerConnectionCredentialsOptions.js.map +1 -0
  723. package/dist/vendor/typeorm/driver/sqlserver/SqlServerDataSourceOptions.d.ts +266 -0
  724. package/dist/vendor/typeorm/driver/sqlserver/SqlServerDataSourceOptions.js +3 -0
  725. package/dist/vendor/typeorm/driver/sqlserver/SqlServerDataSourceOptions.js.map +1 -0
  726. package/dist/vendor/typeorm/driver/sqlserver/SqlServerDriver.d.ts +359 -0
  727. package/dist/vendor/typeorm/driver/sqlserver/SqlServerDriver.js +1056 -0
  728. package/dist/vendor/typeorm/driver/sqlserver/SqlServerDriver.js.map +1 -0
  729. package/dist/vendor/typeorm/driver/sqlserver/SqlServerQueryRunner.d.ts +588 -0
  730. package/dist/vendor/typeorm/driver/sqlserver/SqlServerQueryRunner.js +2767 -0
  731. package/dist/vendor/typeorm/driver/sqlserver/SqlServerQueryRunner.js.map +1 -0
  732. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.d.ts +10 -0
  733. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.js +3 -0
  734. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.js.map +1 -0
  735. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.d.ts +12 -0
  736. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.js +3 -0
  737. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.js.map +1 -0
  738. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.d.ts +20 -0
  739. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.js +3 -0
  740. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.js.map +1 -0
  741. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.d.ts +16 -0
  742. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.js +3 -0
  743. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.js.map +1 -0
  744. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.d.ts +17 -0
  745. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.js +3 -0
  746. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.js.map +1 -0
  747. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.d.ts +17 -0
  748. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.js +3 -0
  749. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.js.map +1 -0
  750. package/dist/vendor/typeorm/driver/sqlserver/authentication/DefaultAuthentication.d.ts +13 -0
  751. package/dist/vendor/typeorm/driver/sqlserver/authentication/DefaultAuthentication.js +3 -0
  752. package/dist/vendor/typeorm/driver/sqlserver/authentication/DefaultAuthentication.js.map +1 -0
  753. package/dist/vendor/typeorm/driver/sqlserver/authentication/NtlmAuthentication.d.ts +19 -0
  754. package/dist/vendor/typeorm/driver/sqlserver/authentication/NtlmAuthentication.js +3 -0
  755. package/dist/vendor/typeorm/driver/sqlserver/authentication/NtlmAuthentication.js.map +1 -0
  756. package/dist/vendor/typeorm/driver/types/ColumnTypes.d.ts +25 -0
  757. package/dist/vendor/typeorm/driver/types/ColumnTypes.js +3 -0
  758. package/dist/vendor/typeorm/driver/types/ColumnTypes.js.map +1 -0
  759. package/dist/vendor/typeorm/driver/types/CteCapabilities.d.ts +18 -0
  760. package/dist/vendor/typeorm/driver/types/CteCapabilities.js +3 -0
  761. package/dist/vendor/typeorm/driver/types/CteCapabilities.js.map +1 -0
  762. package/dist/vendor/typeorm/driver/types/DataTypeDefaults.d.ts +7 -0
  763. package/dist/vendor/typeorm/driver/types/DataTypeDefaults.js +3 -0
  764. package/dist/vendor/typeorm/driver/types/DataTypeDefaults.js.map +1 -0
  765. package/dist/vendor/typeorm/driver/types/DatabaseType.d.ts +4 -0
  766. package/dist/vendor/typeorm/driver/types/DatabaseType.js +3 -0
  767. package/dist/vendor/typeorm/driver/types/DatabaseType.js.map +1 -0
  768. package/dist/vendor/typeorm/driver/types/GeoJsonTypes.d.ts +92 -0
  769. package/dist/vendor/typeorm/driver/types/GeoJsonTypes.js +3 -0
  770. package/dist/vendor/typeorm/driver/types/GeoJsonTypes.js.map +1 -0
  771. package/dist/vendor/typeorm/driver/types/InvalidFindOptionsWhereBehavior.d.ts +15 -0
  772. package/dist/vendor/typeorm/driver/types/InvalidFindOptionsWhereBehavior.js +3 -0
  773. package/dist/vendor/typeorm/driver/types/InvalidFindOptionsWhereBehavior.js.map +1 -0
  774. package/dist/vendor/typeorm/driver/types/IsolationLevel.d.ts +2 -0
  775. package/dist/vendor/typeorm/driver/types/IsolationLevel.js +11 -0
  776. package/dist/vendor/typeorm/driver/types/IsolationLevel.js.map +1 -0
  777. package/dist/vendor/typeorm/driver/types/MappedColumnTypes.d.ts +112 -0
  778. package/dist/vendor/typeorm/driver/types/MappedColumnTypes.js +3 -0
  779. package/dist/vendor/typeorm/driver/types/MappedColumnTypes.js.map +1 -0
  780. package/dist/vendor/typeorm/driver/types/MetadataTableType.d.ts +5 -0
  781. package/dist/vendor/typeorm/driver/types/MetadataTableType.js +10 -0
  782. package/dist/vendor/typeorm/driver/types/MetadataTableType.js.map +1 -0
  783. package/dist/vendor/typeorm/driver/types/ReplicationMode.d.ts +1 -0
  784. package/dist/vendor/typeorm/driver/types/ReplicationMode.js +3 -0
  785. package/dist/vendor/typeorm/driver/types/ReplicationMode.js.map +1 -0
  786. package/dist/vendor/typeorm/driver/types/ReturningType.d.ts +1 -0
  787. package/dist/vendor/typeorm/driver/types/ReturningType.js +3 -0
  788. package/dist/vendor/typeorm/driver/types/ReturningType.js.map +1 -0
  789. package/dist/vendor/typeorm/driver/types/UpsertType.d.ts +1 -0
  790. package/dist/vendor/typeorm/driver/types/UpsertType.js +3 -0
  791. package/dist/vendor/typeorm/driver/types/UpsertType.js.map +1 -0
  792. package/dist/vendor/typeorm/driver/validate-isolation-level.d.ts +9 -0
  793. package/dist/vendor/typeorm/driver/validate-isolation-level.js +23 -0
  794. package/dist/vendor/typeorm/driver/validate-isolation-level.js.map +1 -0
  795. package/dist/vendor/typeorm/entity-manager/EntityManager.d.ts +530 -0
  796. package/dist/vendor/typeorm/entity-manager/EntityManager.js +918 -0
  797. package/dist/vendor/typeorm/entity-manager/EntityManager.js.map +1 -0
  798. package/dist/vendor/typeorm/entity-manager/EntityManagerFactory.d.ts +16 -0
  799. package/dist/vendor/typeorm/entity-manager/EntityManagerFactory.js +27 -0
  800. package/dist/vendor/typeorm/entity-manager/EntityManagerFactory.js.map +1 -0
  801. package/dist/vendor/typeorm/entity-manager/MongoEntityManager.d.ts +441 -0
  802. package/dist/vendor/typeorm/entity-manager/MongoEntityManager.js +948 -0
  803. package/dist/vendor/typeorm/entity-manager/MongoEntityManager.js.map +1 -0
  804. package/dist/vendor/typeorm/entity-manager/SqljsEntityManager.d.ts +30 -0
  805. package/dist/vendor/typeorm/entity-manager/SqljsEntityManager.js +47 -0
  806. package/dist/vendor/typeorm/entity-manager/SqljsEntityManager.js.map +1 -0
  807. package/dist/vendor/typeorm/entity-schema/EntitySchema.d.ts +9 -0
  808. package/dist/vendor/typeorm/entity-schema/EntitySchema.js +14 -0
  809. package/dist/vendor/typeorm/entity-schema/EntitySchema.js.map +1 -0
  810. package/dist/vendor/typeorm/entity-schema/EntitySchemaCheckOptions.d.ts +10 -0
  811. package/dist/vendor/typeorm/entity-schema/EntitySchemaCheckOptions.js +3 -0
  812. package/dist/vendor/typeorm/entity-schema/EntitySchemaCheckOptions.js.map +1 -0
  813. package/dist/vendor/typeorm/entity-schema/EntitySchemaColumnForeignKeyOptions.d.ts +12 -0
  814. package/dist/vendor/typeorm/entity-schema/EntitySchemaColumnForeignKeyOptions.js +3 -0
  815. package/dist/vendor/typeorm/entity-schema/EntitySchemaColumnForeignKeyOptions.js.map +1 -0
  816. package/dist/vendor/typeorm/entity-schema/EntitySchemaColumnOptions.d.ts +170 -0
  817. package/dist/vendor/typeorm/entity-schema/EntitySchemaColumnOptions.js +3 -0
  818. package/dist/vendor/typeorm/entity-schema/EntitySchemaColumnOptions.js.map +1 -0
  819. package/dist/vendor/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.d.ts +18 -0
  820. package/dist/vendor/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.js +7 -0
  821. package/dist/vendor/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.js.map +1 -0
  822. package/dist/vendor/typeorm/entity-schema/EntitySchemaEmbeddedError.d.ts +6 -0
  823. package/dist/vendor/typeorm/entity-schema/EntitySchemaEmbeddedError.js +17 -0
  824. package/dist/vendor/typeorm/entity-schema/EntitySchemaEmbeddedError.js.map +1 -0
  825. package/dist/vendor/typeorm/entity-schema/EntitySchemaExclusionOptions.d.ts +15 -0
  826. package/dist/vendor/typeorm/entity-schema/EntitySchemaExclusionOptions.js +3 -0
  827. package/dist/vendor/typeorm/entity-schema/EntitySchemaExclusionOptions.js.map +1 -0
  828. package/dist/vendor/typeorm/entity-schema/EntitySchemaForeignKeyOptions.d.ts +16 -0
  829. package/dist/vendor/typeorm/entity-schema/EntitySchemaForeignKeyOptions.js +3 -0
  830. package/dist/vendor/typeorm/entity-schema/EntitySchemaForeignKeyOptions.js.map +1 -0
  831. package/dist/vendor/typeorm/entity-schema/EntitySchemaIndexOptions.d.ts +53 -0
  832. package/dist/vendor/typeorm/entity-schema/EntitySchemaIndexOptions.js +3 -0
  833. package/dist/vendor/typeorm/entity-schema/EntitySchemaIndexOptions.js.map +1 -0
  834. package/dist/vendor/typeorm/entity-schema/EntitySchemaInheritanceOptions.d.ts +11 -0
  835. package/dist/vendor/typeorm/entity-schema/EntitySchemaInheritanceOptions.js +3 -0
  836. package/dist/vendor/typeorm/entity-schema/EntitySchemaInheritanceOptions.js.map +1 -0
  837. package/dist/vendor/typeorm/entity-schema/EntitySchemaOptions.d.ts +118 -0
  838. package/dist/vendor/typeorm/entity-schema/EntitySchemaOptions.js +10 -0
  839. package/dist/vendor/typeorm/entity-schema/EntitySchemaOptions.js.map +1 -0
  840. package/dist/vendor/typeorm/entity-schema/EntitySchemaRelationIdOptions.d.ts +15 -0
  841. package/dist/vendor/typeorm/entity-schema/EntitySchemaRelationIdOptions.js +3 -0
  842. package/dist/vendor/typeorm/entity-schema/EntitySchemaRelationIdOptions.js.map +1 -0
  843. package/dist/vendor/typeorm/entity-schema/EntitySchemaRelationOptions.d.ts +95 -0
  844. package/dist/vendor/typeorm/entity-schema/EntitySchemaRelationOptions.js +3 -0
  845. package/dist/vendor/typeorm/entity-schema/EntitySchemaRelationOptions.js.map +1 -0
  846. package/dist/vendor/typeorm/entity-schema/EntitySchemaTransformer.d.ts +15 -0
  847. package/dist/vendor/typeorm/entity-schema/EntitySchemaTransformer.js +342 -0
  848. package/dist/vendor/typeorm/entity-schema/EntitySchemaTransformer.js.map +1 -0
  849. package/dist/vendor/typeorm/entity-schema/EntitySchemaUniqueOptions.d.ts +17 -0
  850. package/dist/vendor/typeorm/entity-schema/EntitySchemaUniqueOptions.js +3 -0
  851. package/dist/vendor/typeorm/entity-schema/EntitySchemaUniqueOptions.js.map +1 -0
  852. package/dist/vendor/typeorm/error/AlreadyHasActiveConnectionError.d.ts +7 -0
  853. package/dist/vendor/typeorm/error/AlreadyHasActiveConnectionError.js +15 -0
  854. package/dist/vendor/typeorm/error/AlreadyHasActiveConnectionError.js.map +1 -0
  855. package/dist/vendor/typeorm/error/CannotAttachTreeChildrenEntityError.d.ts +7 -0
  856. package/dist/vendor/typeorm/error/CannotAttachTreeChildrenEntityError.js +15 -0
  857. package/dist/vendor/typeorm/error/CannotAttachTreeChildrenEntityError.js.map +1 -0
  858. package/dist/vendor/typeorm/error/CannotConnectAlreadyConnectedError.d.ts +7 -0
  859. package/dist/vendor/typeorm/error/CannotConnectAlreadyConnectedError.js +14 -0
  860. package/dist/vendor/typeorm/error/CannotConnectAlreadyConnectedError.js.map +1 -0
  861. package/dist/vendor/typeorm/error/CannotCreateEntityIdMapError.d.ts +9 -0
  862. package/dist/vendor/typeorm/error/CannotCreateEntityIdMapError.js +20 -0
  863. package/dist/vendor/typeorm/error/CannotCreateEntityIdMapError.js.map +1 -0
  864. package/dist/vendor/typeorm/error/CannotDetermineEntityError.d.ts +7 -0
  865. package/dist/vendor/typeorm/error/CannotDetermineEntityError.js +15 -0
  866. package/dist/vendor/typeorm/error/CannotDetermineEntityError.js.map +1 -0
  867. package/dist/vendor/typeorm/error/CannotExecuteNotConnectedError.d.ts +7 -0
  868. package/dist/vendor/typeorm/error/CannotExecuteNotConnectedError.js +14 -0
  869. package/dist/vendor/typeorm/error/CannotExecuteNotConnectedError.js.map +1 -0
  870. package/dist/vendor/typeorm/error/CannotGetEntityManagerNotConnectedError.d.ts +7 -0
  871. package/dist/vendor/typeorm/error/CannotGetEntityManagerNotConnectedError.js +14 -0
  872. package/dist/vendor/typeorm/error/CannotGetEntityManagerNotConnectedError.js.map +1 -0
  873. package/dist/vendor/typeorm/error/CannotReflectMethodParameterTypeError.d.ts +8 -0
  874. package/dist/vendor/typeorm/error/CannotReflectMethodParameterTypeError.js +17 -0
  875. package/dist/vendor/typeorm/error/CannotReflectMethodParameterTypeError.js.map +1 -0
  876. package/dist/vendor/typeorm/error/CircularRelationsError.d.ts +7 -0
  877. package/dist/vendor/typeorm/error/CircularRelationsError.js +15 -0
  878. package/dist/vendor/typeorm/error/CircularRelationsError.js.map +1 -0
  879. package/dist/vendor/typeorm/error/ColumnTypeUndefinedError.d.ts +8 -0
  880. package/dist/vendor/typeorm/error/ColumnTypeUndefinedError.js +18 -0
  881. package/dist/vendor/typeorm/error/ColumnTypeUndefinedError.js.map +1 -0
  882. package/dist/vendor/typeorm/error/ConnectionIsNotSetError.d.ts +7 -0
  883. package/dist/vendor/typeorm/error/ConnectionIsNotSetError.js +14 -0
  884. package/dist/vendor/typeorm/error/ConnectionIsNotSetError.js.map +1 -0
  885. package/dist/vendor/typeorm/error/ConnectionNotFoundError.d.ts +7 -0
  886. package/dist/vendor/typeorm/error/ConnectionNotFoundError.js +14 -0
  887. package/dist/vendor/typeorm/error/ConnectionNotFoundError.js.map +1 -0
  888. package/dist/vendor/typeorm/error/DataTypeNotSupportedError.d.ts +7 -0
  889. package/dist/vendor/typeorm/error/DataTypeNotSupportedError.js +13 -0
  890. package/dist/vendor/typeorm/error/DataTypeNotSupportedError.js.map +1 -0
  891. package/dist/vendor/typeorm/error/DriverOptionNotSetError.d.ts +7 -0
  892. package/dist/vendor/typeorm/error/DriverOptionNotSetError.js +15 -0
  893. package/dist/vendor/typeorm/error/DriverOptionNotSetError.js.map +1 -0
  894. package/dist/vendor/typeorm/error/DriverPackageNotInstalledError.d.ts +7 -0
  895. package/dist/vendor/typeorm/error/DriverPackageNotInstalledError.js +14 -0
  896. package/dist/vendor/typeorm/error/DriverPackageNotInstalledError.js.map +1 -0
  897. package/dist/vendor/typeorm/error/EntityMetadataNotFoundError.d.ts +6 -0
  898. package/dist/vendor/typeorm/error/EntityMetadataNotFoundError.js +28 -0
  899. package/dist/vendor/typeorm/error/EntityMetadataNotFoundError.js.map +1 -0
  900. package/dist/vendor/typeorm/error/EntityNotFoundError.d.ts +12 -0
  901. package/dist/vendor/typeorm/error/EntityNotFoundError.js +41 -0
  902. package/dist/vendor/typeorm/error/EntityNotFoundError.js.map +1 -0
  903. package/dist/vendor/typeorm/error/EntityPropertyNotFoundError.d.ts +8 -0
  904. package/dist/vendor/typeorm/error/EntityPropertyNotFoundError.js +16 -0
  905. package/dist/vendor/typeorm/error/EntityPropertyNotFoundError.js.map +1 -0
  906. package/dist/vendor/typeorm/error/FindRelationsNotFoundError.d.ts +7 -0
  907. package/dist/vendor/typeorm/error/FindRelationsNotFoundError.js +22 -0
  908. package/dist/vendor/typeorm/error/FindRelationsNotFoundError.js.map +1 -0
  909. package/dist/vendor/typeorm/error/ForbiddenTransactionModeOverrideError.d.ts +8 -0
  910. package/dist/vendor/typeorm/error/ForbiddenTransactionModeOverrideError.js +15 -0
  911. package/dist/vendor/typeorm/error/ForbiddenTransactionModeOverrideError.js.map +1 -0
  912. package/dist/vendor/typeorm/error/InitializedRelationError.d.ts +11 -0
  913. package/dist/vendor/typeorm/error/InitializedRelationError.js +19 -0
  914. package/dist/vendor/typeorm/error/InitializedRelationError.js.map +1 -0
  915. package/dist/vendor/typeorm/error/InsertValuesMissingError.d.ts +7 -0
  916. package/dist/vendor/typeorm/error/InsertValuesMissingError.js +15 -0
  917. package/dist/vendor/typeorm/error/InsertValuesMissingError.js.map +1 -0
  918. package/dist/vendor/typeorm/error/LimitOnUpdateNotSupportedError.d.ts +7 -0
  919. package/dist/vendor/typeorm/error/LimitOnUpdateNotSupportedError.js +14 -0
  920. package/dist/vendor/typeorm/error/LimitOnUpdateNotSupportedError.js.map +1 -0
  921. package/dist/vendor/typeorm/error/LockNotSupportedOnGivenDriverError.d.ts +7 -0
  922. package/dist/vendor/typeorm/error/LockNotSupportedOnGivenDriverError.js +14 -0
  923. package/dist/vendor/typeorm/error/LockNotSupportedOnGivenDriverError.js.map +1 -0
  924. package/dist/vendor/typeorm/error/MetadataAlreadyExistsError.d.ts +4 -0
  925. package/dist/vendor/typeorm/error/MetadataAlreadyExistsError.js +17 -0
  926. package/dist/vendor/typeorm/error/MetadataAlreadyExistsError.js.map +1 -0
  927. package/dist/vendor/typeorm/error/MetadataWithSuchNameAlreadyExistsError.d.ts +4 -0
  928. package/dist/vendor/typeorm/error/MetadataWithSuchNameAlreadyExistsError.js +15 -0
  929. package/dist/vendor/typeorm/error/MetadataWithSuchNameAlreadyExistsError.js.map +1 -0
  930. package/dist/vendor/typeorm/error/MissingDeleteDateColumnError.d.ts +5 -0
  931. package/dist/vendor/typeorm/error/MissingDeleteDateColumnError.js +11 -0
  932. package/dist/vendor/typeorm/error/MissingDeleteDateColumnError.js.map +1 -0
  933. package/dist/vendor/typeorm/error/MissingDriverError.d.ts +7 -0
  934. package/dist/vendor/typeorm/error/MissingDriverError.js +15 -0
  935. package/dist/vendor/typeorm/error/MissingDriverError.js.map +1 -0
  936. package/dist/vendor/typeorm/error/MissingJoinColumnError.d.ts +6 -0
  937. package/dist/vendor/typeorm/error/MissingJoinColumnError.js +22 -0
  938. package/dist/vendor/typeorm/error/MissingJoinColumnError.js.map +1 -0
  939. package/dist/vendor/typeorm/error/MissingJoinTableError.d.ts +6 -0
  940. package/dist/vendor/typeorm/error/MissingJoinTableError.js +22 -0
  941. package/dist/vendor/typeorm/error/MissingJoinTableError.js.map +1 -0
  942. package/dist/vendor/typeorm/error/MissingPrimaryColumnError.d.ts +5 -0
  943. package/dist/vendor/typeorm/error/MissingPrimaryColumnError.js +12 -0
  944. package/dist/vendor/typeorm/error/MissingPrimaryColumnError.js.map +1 -0
  945. package/dist/vendor/typeorm/error/MustBeEntityError.d.ts +7 -0
  946. package/dist/vendor/typeorm/error/MustBeEntityError.js +14 -0
  947. package/dist/vendor/typeorm/error/MustBeEntityError.js.map +1 -0
  948. package/dist/vendor/typeorm/error/NamedPlaceholdersNotSupportedError.d.ts +7 -0
  949. package/dist/vendor/typeorm/error/NamedPlaceholdersNotSupportedError.js +14 -0
  950. package/dist/vendor/typeorm/error/NamedPlaceholdersNotSupportedError.js.map +1 -0
  951. package/dist/vendor/typeorm/error/NestedSetMultipleRootError.d.ts +4 -0
  952. package/dist/vendor/typeorm/error/NestedSetMultipleRootError.js +11 -0
  953. package/dist/vendor/typeorm/error/NestedSetMultipleRootError.js.map +1 -0
  954. package/dist/vendor/typeorm/error/NoConnectionForRepositoryError.d.ts +7 -0
  955. package/dist/vendor/typeorm/error/NoConnectionForRepositoryError.js +15 -0
  956. package/dist/vendor/typeorm/error/NoConnectionForRepositoryError.js.map +1 -0
  957. package/dist/vendor/typeorm/error/NoConnectionOptionError.d.ts +7 -0
  958. package/dist/vendor/typeorm/error/NoConnectionOptionError.js +15 -0
  959. package/dist/vendor/typeorm/error/NoConnectionOptionError.js.map +1 -0
  960. package/dist/vendor/typeorm/error/NoNeedToReleaseEntityManagerError.d.ts +7 -0
  961. package/dist/vendor/typeorm/error/NoNeedToReleaseEntityManagerError.js +16 -0
  962. package/dist/vendor/typeorm/error/NoNeedToReleaseEntityManagerError.js.map +1 -0
  963. package/dist/vendor/typeorm/error/NoVersionOrUpdateDateColumnError.d.ts +7 -0
  964. package/dist/vendor/typeorm/error/NoVersionOrUpdateDateColumnError.js +14 -0
  965. package/dist/vendor/typeorm/error/NoVersionOrUpdateDateColumnError.js.map +1 -0
  966. package/dist/vendor/typeorm/error/OffsetWithoutLimitNotSupportedError.d.ts +7 -0
  967. package/dist/vendor/typeorm/error/OffsetWithoutLimitNotSupportedError.js +16 -0
  968. package/dist/vendor/typeorm/error/OffsetWithoutLimitNotSupportedError.js.map +1 -0
  969. package/dist/vendor/typeorm/error/OptimisticLockCanNotBeUsedError.d.ts +7 -0
  970. package/dist/vendor/typeorm/error/OptimisticLockCanNotBeUsedError.js +14 -0
  971. package/dist/vendor/typeorm/error/OptimisticLockCanNotBeUsedError.js.map +1 -0
  972. package/dist/vendor/typeorm/error/OptimisticLockVersionMismatchError.d.ts +7 -0
  973. package/dist/vendor/typeorm/error/OptimisticLockVersionMismatchError.js +14 -0
  974. package/dist/vendor/typeorm/error/OptimisticLockVersionMismatchError.js.map +1 -0
  975. package/dist/vendor/typeorm/error/PersistedEntityNotFoundError.d.ts +7 -0
  976. package/dist/vendor/typeorm/error/PersistedEntityNotFoundError.js +14 -0
  977. package/dist/vendor/typeorm/error/PersistedEntityNotFoundError.js.map +1 -0
  978. package/dist/vendor/typeorm/error/PessimisticLockTransactionRequiredError.d.ts +7 -0
  979. package/dist/vendor/typeorm/error/PessimisticLockTransactionRequiredError.js +14 -0
  980. package/dist/vendor/typeorm/error/PessimisticLockTransactionRequiredError.js.map +1 -0
  981. package/dist/vendor/typeorm/error/PrimaryColumnCannotBeNullableError.d.ts +4 -0
  982. package/dist/vendor/typeorm/error/PrimaryColumnCannotBeNullableError.js +12 -0
  983. package/dist/vendor/typeorm/error/PrimaryColumnCannotBeNullableError.js.map +1 -0
  984. package/dist/vendor/typeorm/error/QueryFailedError.d.ts +11 -0
  985. package/dist/vendor/typeorm/error/QueryFailedError.js +29 -0
  986. package/dist/vendor/typeorm/error/QueryFailedError.js.map +1 -0
  987. package/dist/vendor/typeorm/error/QueryRunnerAlreadyReleasedError.d.ts +4 -0
  988. package/dist/vendor/typeorm/error/QueryRunnerAlreadyReleasedError.js +11 -0
  989. package/dist/vendor/typeorm/error/QueryRunnerAlreadyReleasedError.js.map +1 -0
  990. package/dist/vendor/typeorm/error/QueryRunnerProviderAlreadyReleasedError.d.ts +7 -0
  991. package/dist/vendor/typeorm/error/QueryRunnerProviderAlreadyReleasedError.js +15 -0
  992. package/dist/vendor/typeorm/error/QueryRunnerProviderAlreadyReleasedError.js.map +1 -0
  993. package/dist/vendor/typeorm/error/RepositoryNotTreeError.d.ts +8 -0
  994. package/dist/vendor/typeorm/error/RepositoryNotTreeError.js +31 -0
  995. package/dist/vendor/typeorm/error/RepositoryNotTreeError.js.map +1 -0
  996. package/dist/vendor/typeorm/error/ReturningStatementNotSupportedError.d.ts +8 -0
  997. package/dist/vendor/typeorm/error/ReturningStatementNotSupportedError.js +15 -0
  998. package/dist/vendor/typeorm/error/ReturningStatementNotSupportedError.js.map +1 -0
  999. package/dist/vendor/typeorm/error/SubjectRemovedAndUpdatedError.d.ts +8 -0
  1000. package/dist/vendor/typeorm/error/SubjectRemovedAndUpdatedError.js +15 -0
  1001. package/dist/vendor/typeorm/error/SubjectRemovedAndUpdatedError.js.map +1 -0
  1002. package/dist/vendor/typeorm/error/SubjectWithoutIdentifierError.d.ts +10 -0
  1003. package/dist/vendor/typeorm/error/SubjectWithoutIdentifierError.js +16 -0
  1004. package/dist/vendor/typeorm/error/SubjectWithoutIdentifierError.js.map +1 -0
  1005. package/dist/vendor/typeorm/error/TransactionAlreadyStartedError.d.ts +7 -0
  1006. package/dist/vendor/typeorm/error/TransactionAlreadyStartedError.js +14 -0
  1007. package/dist/vendor/typeorm/error/TransactionAlreadyStartedError.js.map +1 -0
  1008. package/dist/vendor/typeorm/error/TransactionNotStartedError.d.ts +7 -0
  1009. package/dist/vendor/typeorm/error/TransactionNotStartedError.js +14 -0
  1010. package/dist/vendor/typeorm/error/TransactionNotStartedError.js.map +1 -0
  1011. package/dist/vendor/typeorm/error/TreeRepositoryNotSupportedError.d.ts +5 -0
  1012. package/dist/vendor/typeorm/error/TreeRepositoryNotSupportedError.js +11 -0
  1013. package/dist/vendor/typeorm/error/TreeRepositoryNotSupportedError.js.map +1 -0
  1014. package/dist/vendor/typeorm/error/TypeORMError.d.ts +4 -0
  1015. package/dist/vendor/typeorm/error/TypeORMError.js +22 -0
  1016. package/dist/vendor/typeorm/error/TypeORMError.js.map +1 -0
  1017. package/dist/vendor/typeorm/error/UpdateValuesMissingError.d.ts +4 -0
  1018. package/dist/vendor/typeorm/error/UpdateValuesMissingError.js +11 -0
  1019. package/dist/vendor/typeorm/error/UpdateValuesMissingError.js.map +1 -0
  1020. package/dist/vendor/typeorm/error/UsingJoinColumnIsNotAllowedError.d.ts +6 -0
  1021. package/dist/vendor/typeorm/error/UsingJoinColumnIsNotAllowedError.js +12 -0
  1022. package/dist/vendor/typeorm/error/UsingJoinColumnIsNotAllowedError.js.map +1 -0
  1023. package/dist/vendor/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.d.ts +6 -0
  1024. package/dist/vendor/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +13 -0
  1025. package/dist/vendor/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -0
  1026. package/dist/vendor/typeorm/error/UsingJoinTableIsNotAllowedError.d.ts +6 -0
  1027. package/dist/vendor/typeorm/error/UsingJoinTableIsNotAllowedError.js +13 -0
  1028. package/dist/vendor/typeorm/error/UsingJoinTableIsNotAllowedError.js.map +1 -0
  1029. package/dist/vendor/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.d.ts +6 -0
  1030. package/dist/vendor/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.js +13 -0
  1031. package/dist/vendor/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -0
  1032. package/dist/vendor/typeorm/error/index.d.ts +59 -0
  1033. package/dist/vendor/typeorm/error/index.js +63 -0
  1034. package/dist/vendor/typeorm/error/index.js.map +1 -0
  1035. package/dist/vendor/typeorm/find-options/EqualOperator.d.ts +5 -0
  1036. package/dist/vendor/typeorm/find-options/EqualOperator.js +12 -0
  1037. package/dist/vendor/typeorm/find-options/EqualOperator.js.map +1 -0
  1038. package/dist/vendor/typeorm/find-options/FindManyOptions.d.ts +14 -0
  1039. package/dist/vendor/typeorm/find-options/FindManyOptions.js +3 -0
  1040. package/dist/vendor/typeorm/find-options/FindManyOptions.js.map +1 -0
  1041. package/dist/vendor/typeorm/find-options/FindOneOptions.d.ts +80 -0
  1042. package/dist/vendor/typeorm/find-options/FindOneOptions.js +3 -0
  1043. package/dist/vendor/typeorm/find-options/FindOneOptions.js.map +1 -0
  1044. package/dist/vendor/typeorm/find-options/FindOperator.d.ts +67 -0
  1045. package/dist/vendor/typeorm/find-options/FindOperator.js +95 -0
  1046. package/dist/vendor/typeorm/find-options/FindOperator.js.map +1 -0
  1047. package/dist/vendor/typeorm/find-options/FindOperatorType.d.ts +4 -0
  1048. package/dist/vendor/typeorm/find-options/FindOperatorType.js +3 -0
  1049. package/dist/vendor/typeorm/find-options/FindOperatorType.js.map +1 -0
  1050. package/dist/vendor/typeorm/find-options/FindOptionsOrder.d.ts +18 -0
  1051. package/dist/vendor/typeorm/find-options/FindOptionsOrder.js +3 -0
  1052. package/dist/vendor/typeorm/find-options/FindOptionsOrder.js.map +1 -0
  1053. package/dist/vendor/typeorm/find-options/FindOptionsRelations.d.ts +11 -0
  1054. package/dist/vendor/typeorm/find-options/FindOptionsRelations.js +3 -0
  1055. package/dist/vendor/typeorm/find-options/FindOptionsRelations.js.map +1 -0
  1056. package/dist/vendor/typeorm/find-options/FindOptionsSelect.d.ts +11 -0
  1057. package/dist/vendor/typeorm/find-options/FindOptionsSelect.js +3 -0
  1058. package/dist/vendor/typeorm/find-options/FindOptionsSelect.js.map +1 -0
  1059. package/dist/vendor/typeorm/find-options/FindOptionsUtils.d.ts +71 -0
  1060. package/dist/vendor/typeorm/find-options/FindOptionsUtils.js +278 -0
  1061. package/dist/vendor/typeorm/find-options/FindOptionsUtils.js.map +1 -0
  1062. package/dist/vendor/typeorm/find-options/FindOptionsWhere.d.ts +17 -0
  1063. package/dist/vendor/typeorm/find-options/FindOptionsWhere.js +3 -0
  1064. package/dist/vendor/typeorm/find-options/FindOptionsWhere.js.map +1 -0
  1065. package/dist/vendor/typeorm/find-options/FindTreeOptions.d.ts +13 -0
  1066. package/dist/vendor/typeorm/find-options/FindTreeOptions.js +3 -0
  1067. package/dist/vendor/typeorm/find-options/FindTreeOptions.js.map +1 -0
  1068. package/dist/vendor/typeorm/find-options/OrderByCondition.d.ts +16 -0
  1069. package/dist/vendor/typeorm/find-options/OrderByCondition.js +3 -0
  1070. package/dist/vendor/typeorm/find-options/OrderByCondition.js.map +1 -0
  1071. package/dist/vendor/typeorm/find-options/mongodb/MongoFindManyOptions.d.ts +14 -0
  1072. package/dist/vendor/typeorm/find-options/mongodb/MongoFindManyOptions.js +3 -0
  1073. package/dist/vendor/typeorm/find-options/mongodb/MongoFindManyOptions.js.map +1 -0
  1074. package/dist/vendor/typeorm/find-options/mongodb/MongoFindOneOptions.d.ts +11 -0
  1075. package/dist/vendor/typeorm/find-options/mongodb/MongoFindOneOptions.js +3 -0
  1076. package/dist/vendor/typeorm/find-options/mongodb/MongoFindOneOptions.js.map +1 -0
  1077. package/dist/vendor/typeorm/find-options/operator/And.d.ts +6 -0
  1078. package/dist/vendor/typeorm/find-options/operator/And.js +12 -0
  1079. package/dist/vendor/typeorm/find-options/operator/And.js.map +1 -0
  1080. package/dist/vendor/typeorm/find-options/operator/Any.d.ts +10 -0
  1081. package/dist/vendor/typeorm/find-options/operator/Any.js +16 -0
  1082. package/dist/vendor/typeorm/find-options/operator/Any.js.map +1 -0
  1083. package/dist/vendor/typeorm/find-options/operator/ArrayContainedBy.d.ts +10 -0
  1084. package/dist/vendor/typeorm/find-options/operator/ArrayContainedBy.js +16 -0
  1085. package/dist/vendor/typeorm/find-options/operator/ArrayContainedBy.js.map +1 -0
  1086. package/dist/vendor/typeorm/find-options/operator/ArrayContains.d.ts +10 -0
  1087. package/dist/vendor/typeorm/find-options/operator/ArrayContains.js +16 -0
  1088. package/dist/vendor/typeorm/find-options/operator/ArrayContains.js.map +1 -0
  1089. package/dist/vendor/typeorm/find-options/operator/ArrayOverlap.d.ts +10 -0
  1090. package/dist/vendor/typeorm/find-options/operator/ArrayOverlap.js +16 -0
  1091. package/dist/vendor/typeorm/find-options/operator/ArrayOverlap.js.map +1 -0
  1092. package/dist/vendor/typeorm/find-options/operator/Between.d.ts +11 -0
  1093. package/dist/vendor/typeorm/find-options/operator/Between.js +17 -0
  1094. package/dist/vendor/typeorm/find-options/operator/Between.js.map +1 -0
  1095. package/dist/vendor/typeorm/find-options/operator/Equal.d.ts +15 -0
  1096. package/dist/vendor/typeorm/find-options/operator/Equal.js +20 -0
  1097. package/dist/vendor/typeorm/find-options/operator/Equal.js.map +1 -0
  1098. package/dist/vendor/typeorm/find-options/operator/ILike.d.ts +10 -0
  1099. package/dist/vendor/typeorm/find-options/operator/ILike.js +16 -0
  1100. package/dist/vendor/typeorm/find-options/operator/ILike.js.map +1 -0
  1101. package/dist/vendor/typeorm/find-options/operator/In.d.ts +10 -0
  1102. package/dist/vendor/typeorm/find-options/operator/In.js +16 -0
  1103. package/dist/vendor/typeorm/find-options/operator/In.js.map +1 -0
  1104. package/dist/vendor/typeorm/find-options/operator/IsNull.d.ts +9 -0
  1105. package/dist/vendor/typeorm/find-options/operator/IsNull.js +15 -0
  1106. package/dist/vendor/typeorm/find-options/operator/IsNull.js.map +1 -0
  1107. package/dist/vendor/typeorm/find-options/operator/JsonContains.d.ts +10 -0
  1108. package/dist/vendor/typeorm/find-options/operator/JsonContains.js +16 -0
  1109. package/dist/vendor/typeorm/find-options/operator/JsonContains.js.map +1 -0
  1110. package/dist/vendor/typeorm/find-options/operator/LessThan.d.ts +10 -0
  1111. package/dist/vendor/typeorm/find-options/operator/LessThan.js +16 -0
  1112. package/dist/vendor/typeorm/find-options/operator/LessThan.js.map +1 -0
  1113. package/dist/vendor/typeorm/find-options/operator/LessThanOrEqual.d.ts +10 -0
  1114. package/dist/vendor/typeorm/find-options/operator/LessThanOrEqual.js +16 -0
  1115. package/dist/vendor/typeorm/find-options/operator/LessThanOrEqual.js.map +1 -0
  1116. package/dist/vendor/typeorm/find-options/operator/Like.d.ts +10 -0
  1117. package/dist/vendor/typeorm/find-options/operator/Like.js +16 -0
  1118. package/dist/vendor/typeorm/find-options/operator/Like.js.map +1 -0
  1119. package/dist/vendor/typeorm/find-options/operator/MoreThan.d.ts +10 -0
  1120. package/dist/vendor/typeorm/find-options/operator/MoreThan.js +16 -0
  1121. package/dist/vendor/typeorm/find-options/operator/MoreThan.js.map +1 -0
  1122. package/dist/vendor/typeorm/find-options/operator/MoreThanOrEqual.d.ts +10 -0
  1123. package/dist/vendor/typeorm/find-options/operator/MoreThanOrEqual.js +16 -0
  1124. package/dist/vendor/typeorm/find-options/operator/MoreThanOrEqual.js.map +1 -0
  1125. package/dist/vendor/typeorm/find-options/operator/Not.d.ts +11 -0
  1126. package/dist/vendor/typeorm/find-options/operator/Not.js +17 -0
  1127. package/dist/vendor/typeorm/find-options/operator/Not.js.map +1 -0
  1128. package/dist/vendor/typeorm/find-options/operator/Or.d.ts +6 -0
  1129. package/dist/vendor/typeorm/find-options/operator/Or.js +12 -0
  1130. package/dist/vendor/typeorm/find-options/operator/Or.js.map +1 -0
  1131. package/dist/vendor/typeorm/find-options/operator/Raw.d.ts +31 -0
  1132. package/dist/vendor/typeorm/find-options/operator/Raw.js +11 -0
  1133. package/dist/vendor/typeorm/find-options/operator/Raw.js.map +1 -0
  1134. package/dist/vendor/typeorm/globals.d.ts +6 -0
  1135. package/dist/vendor/typeorm/globals.js +19 -0
  1136. package/dist/vendor/typeorm/globals.js.map +1 -0
  1137. package/dist/vendor/typeorm/index.d.ts +177 -0
  1138. package/dist/vendor/typeorm/index.js +147 -0
  1139. package/dist/vendor/typeorm/index.js.map +1 -0
  1140. package/dist/vendor/typeorm/legacy-naming-strategies/index.d.ts +2 -0
  1141. package/dist/vendor/typeorm/legacy-naming-strategies/index.js +8 -0
  1142. package/dist/vendor/typeorm/legacy-naming-strategies/index.js.map +1 -0
  1143. package/dist/vendor/typeorm/legacy-naming-strategies/legacy-oracle-naming-strategy.d.ts +16 -0
  1144. package/dist/vendor/typeorm/legacy-naming-strategies/legacy-oracle-naming-strategy.js +48 -0
  1145. package/dist/vendor/typeorm/legacy-naming-strategies/legacy-oracle-naming-strategy.js.map +1 -0
  1146. package/dist/vendor/typeorm/legacy-naming-strategies/naming-strategy-v03.d.ts +4 -0
  1147. package/dist/vendor/typeorm/legacy-naming-strategies/naming-strategy-v03.js +14 -0
  1148. package/dist/vendor/typeorm/legacy-naming-strategies/naming-strategy-v03.js.map +1 -0
  1149. package/dist/vendor/typeorm/logger/AbstractLogger.d.ts +82 -0
  1150. package/dist/vendor/typeorm/logger/AbstractLogger.js +270 -0
  1151. package/dist/vendor/typeorm/logger/AbstractLogger.js.map +1 -0
  1152. package/dist/vendor/typeorm/logger/AdvancedConsoleLogger.d.ts +17 -0
  1153. package/dist/vendor/typeorm/logger/AdvancedConsoleLogger.js +59 -0
  1154. package/dist/vendor/typeorm/logger/AdvancedConsoleLogger.js.map +1 -0
  1155. package/dist/vendor/typeorm/logger/DebugLogger.d.ts +26 -0
  1156. package/dist/vendor/typeorm/logger/DebugLogger.js +85 -0
  1157. package/dist/vendor/typeorm/logger/DebugLogger.js.map +1 -0
  1158. package/dist/vendor/typeorm/logger/FileLogger.d.ts +35 -0
  1159. package/dist/vendor/typeorm/logger/FileLogger.js +90 -0
  1160. package/dist/vendor/typeorm/logger/FileLogger.js.map +1 -0
  1161. package/dist/vendor/typeorm/logger/FormattedConsoleLogger.d.ts +17 -0
  1162. package/dist/vendor/typeorm/logger/FormattedConsoleLogger.js +62 -0
  1163. package/dist/vendor/typeorm/logger/FormattedConsoleLogger.js.map +1 -0
  1164. package/dist/vendor/typeorm/logger/Logger.d.ts +64 -0
  1165. package/dist/vendor/typeorm/logger/Logger.js +3 -0
  1166. package/dist/vendor/typeorm/logger/Logger.js.map +1 -0
  1167. package/dist/vendor/typeorm/logger/LoggerFactory.d.ts +14 -0
  1168. package/dist/vendor/typeorm/logger/LoggerFactory.js +41 -0
  1169. package/dist/vendor/typeorm/logger/LoggerFactory.js.map +1 -0
  1170. package/dist/vendor/typeorm/logger/LoggerOptions.d.ts +5 -0
  1171. package/dist/vendor/typeorm/logger/LoggerOptions.js +3 -0
  1172. package/dist/vendor/typeorm/logger/LoggerOptions.js.map +1 -0
  1173. package/dist/vendor/typeorm/logger/SimpleConsoleLogger.d.ts +17 -0
  1174. package/dist/vendor/typeorm/logger/SimpleConsoleLogger.js +60 -0
  1175. package/dist/vendor/typeorm/logger/SimpleConsoleLogger.js.map +1 -0
  1176. package/dist/vendor/typeorm/metadata/CheckMetadata.d.ts +41 -0
  1177. package/dist/vendor/typeorm/metadata/CheckMetadata.js +36 -0
  1178. package/dist/vendor/typeorm/metadata/CheckMetadata.js.map +1 -0
  1179. package/dist/vendor/typeorm/metadata/ColumnMetadata.d.ts +324 -0
  1180. package/dist/vendor/typeorm/metadata/ColumnMetadata.js +624 -0
  1181. package/dist/vendor/typeorm/metadata/ColumnMetadata.js.map +1 -0
  1182. package/dist/vendor/typeorm/metadata/EmbeddedMetadata.d.ts +158 -0
  1183. package/dist/vendor/typeorm/metadata/EmbeddedMetadata.js +214 -0
  1184. package/dist/vendor/typeorm/metadata/EmbeddedMetadata.js.map +1 -0
  1185. package/dist/vendor/typeorm/metadata/EntityListenerMetadata.d.ts +55 -0
  1186. package/dist/vendor/typeorm/metadata/EntityListenerMetadata.js +83 -0
  1187. package/dist/vendor/typeorm/metadata/EntityListenerMetadata.js.map +1 -0
  1188. package/dist/vendor/typeorm/metadata/EntityMetadata.d.ts +619 -0
  1189. package/dist/vendor/typeorm/metadata/EntityMetadata.js +722 -0
  1190. package/dist/vendor/typeorm/metadata/EntityMetadata.js.map +1 -0
  1191. package/dist/vendor/typeorm/metadata/ExclusionMetadata.d.ts +46 -0
  1192. package/dist/vendor/typeorm/metadata/ExclusionMetadata.js +37 -0
  1193. package/dist/vendor/typeorm/metadata/ExclusionMetadata.js.map +1 -0
  1194. package/dist/vendor/typeorm/metadata/ForeignKeyMetadata.d.ts +79 -0
  1195. package/dist/vendor/typeorm/metadata/ForeignKeyMetadata.js +58 -0
  1196. package/dist/vendor/typeorm/metadata/ForeignKeyMetadata.js.map +1 -0
  1197. package/dist/vendor/typeorm/metadata/IndexMetadata.d.ts +125 -0
  1198. package/dist/vendor/typeorm/metadata/IndexMetadata.js +158 -0
  1199. package/dist/vendor/typeorm/metadata/IndexMetadata.js.map +1 -0
  1200. package/dist/vendor/typeorm/metadata/RelationIdMetadata.d.ts +55 -0
  1201. package/dist/vendor/typeorm/metadata/RelationIdMetadata.js +63 -0
  1202. package/dist/vendor/typeorm/metadata/RelationIdMetadata.js.map +1 -0
  1203. package/dist/vendor/typeorm/metadata/RelationMetadata.d.ts +309 -0
  1204. package/dist/vendor/typeorm/metadata/RelationMetadata.js +456 -0
  1205. package/dist/vendor/typeorm/metadata/RelationMetadata.js.map +1 -0
  1206. package/dist/vendor/typeorm/metadata/UniqueMetadata.d.ts +67 -0
  1207. package/dist/vendor/typeorm/metadata/UniqueMetadata.js +108 -0
  1208. package/dist/vendor/typeorm/metadata/UniqueMetadata.js.map +1 -0
  1209. package/dist/vendor/typeorm/metadata/types/ClosureTreeOptions.d.ts +11 -0
  1210. package/dist/vendor/typeorm/metadata/types/ClosureTreeOptions.js +3 -0
  1211. package/dist/vendor/typeorm/metadata/types/ClosureTreeOptions.js.map +1 -0
  1212. package/dist/vendor/typeorm/metadata/types/DeferrableType.d.ts +4 -0
  1213. package/dist/vendor/typeorm/metadata/types/DeferrableType.js +3 -0
  1214. package/dist/vendor/typeorm/metadata/types/DeferrableType.js.map +1 -0
  1215. package/dist/vendor/typeorm/metadata/types/EventListenerTypes.d.ts +20 -0
  1216. package/dist/vendor/typeorm/metadata/types/EventListenerTypes.js +21 -0
  1217. package/dist/vendor/typeorm/metadata/types/EventListenerTypes.js.map +1 -0
  1218. package/dist/vendor/typeorm/metadata/types/OnDeleteType.d.ts +4 -0
  1219. package/dist/vendor/typeorm/metadata/types/OnDeleteType.js +3 -0
  1220. package/dist/vendor/typeorm/metadata/types/OnDeleteType.js.map +1 -0
  1221. package/dist/vendor/typeorm/metadata/types/OnUpdateType.d.ts +4 -0
  1222. package/dist/vendor/typeorm/metadata/types/OnUpdateType.js +3 -0
  1223. package/dist/vendor/typeorm/metadata/types/OnUpdateType.js.map +1 -0
  1224. package/dist/vendor/typeorm/metadata/types/PropertyTypeInFunction.d.ts +4 -0
  1225. package/dist/vendor/typeorm/metadata/types/PropertyTypeInFunction.js +3 -0
  1226. package/dist/vendor/typeorm/metadata/types/PropertyTypeInFunction.js.map +1 -0
  1227. package/dist/vendor/typeorm/metadata/types/RelationTypeInFunction.d.ts +5 -0
  1228. package/dist/vendor/typeorm/metadata/types/RelationTypeInFunction.js +3 -0
  1229. package/dist/vendor/typeorm/metadata/types/RelationTypeInFunction.js.map +1 -0
  1230. package/dist/vendor/typeorm/metadata/types/RelationTypes.d.ts +4 -0
  1231. package/dist/vendor/typeorm/metadata/types/RelationTypes.js +3 -0
  1232. package/dist/vendor/typeorm/metadata/types/RelationTypes.js.map +1 -0
  1233. package/dist/vendor/typeorm/metadata/types/TableTypes.d.ts +4 -0
  1234. package/dist/vendor/typeorm/metadata/types/TableTypes.js +3 -0
  1235. package/dist/vendor/typeorm/metadata/types/TableTypes.js.map +1 -0
  1236. package/dist/vendor/typeorm/metadata/types/TreeTypes.d.ts +5 -0
  1237. package/dist/vendor/typeorm/metadata/types/TreeTypes.js +3 -0
  1238. package/dist/vendor/typeorm/metadata/types/TreeTypes.js.map +1 -0
  1239. package/dist/vendor/typeorm/metadata-args/CheckMetadataArgs.d.ts +17 -0
  1240. package/dist/vendor/typeorm/metadata-args/CheckMetadataArgs.js +3 -0
  1241. package/dist/vendor/typeorm/metadata-args/CheckMetadataArgs.js.map +1 -0
  1242. package/dist/vendor/typeorm/metadata-args/ColumnMetadataArgs.d.ts +25 -0
  1243. package/dist/vendor/typeorm/metadata-args/ColumnMetadataArgs.js +3 -0
  1244. package/dist/vendor/typeorm/metadata-args/ColumnMetadataArgs.js.map +1 -0
  1245. package/dist/vendor/typeorm/metadata-args/DiscriminatorValueMetadataArgs.d.ts +13 -0
  1246. package/dist/vendor/typeorm/metadata-args/DiscriminatorValueMetadataArgs.js +3 -0
  1247. package/dist/vendor/typeorm/metadata-args/DiscriminatorValueMetadataArgs.js.map +1 -0
  1248. package/dist/vendor/typeorm/metadata-args/EmbeddedMetadataArgs.d.ts +26 -0
  1249. package/dist/vendor/typeorm/metadata-args/EmbeddedMetadataArgs.js +3 -0
  1250. package/dist/vendor/typeorm/metadata-args/EmbeddedMetadataArgs.js.map +1 -0
  1251. package/dist/vendor/typeorm/metadata-args/EntityListenerMetadataArgs.d.ts +18 -0
  1252. package/dist/vendor/typeorm/metadata-args/EntityListenerMetadataArgs.js +3 -0
  1253. package/dist/vendor/typeorm/metadata-args/EntityListenerMetadataArgs.js.map +1 -0
  1254. package/dist/vendor/typeorm/metadata-args/EntitySubscriberMetadataArgs.d.ts +9 -0
  1255. package/dist/vendor/typeorm/metadata-args/EntitySubscriberMetadataArgs.js +3 -0
  1256. package/dist/vendor/typeorm/metadata-args/EntitySubscriberMetadataArgs.js.map +1 -0
  1257. package/dist/vendor/typeorm/metadata-args/ExclusionMetadataArgs.d.ts +22 -0
  1258. package/dist/vendor/typeorm/metadata-args/ExclusionMetadataArgs.js +3 -0
  1259. package/dist/vendor/typeorm/metadata-args/ExclusionMetadataArgs.js.map +1 -0
  1260. package/dist/vendor/typeorm/metadata-args/ForeignKeyMetadataArgs.d.ts +54 -0
  1261. package/dist/vendor/typeorm/metadata-args/ForeignKeyMetadataArgs.js +3 -0
  1262. package/dist/vendor/typeorm/metadata-args/ForeignKeyMetadataArgs.js.map +1 -0
  1263. package/dist/vendor/typeorm/metadata-args/GeneratedMetadataArgs.d.ts +17 -0
  1264. package/dist/vendor/typeorm/metadata-args/GeneratedMetadataArgs.js +3 -0
  1265. package/dist/vendor/typeorm/metadata-args/GeneratedMetadataArgs.js.map +1 -0
  1266. package/dist/vendor/typeorm/metadata-args/IndexMetadataArgs.d.ts +82 -0
  1267. package/dist/vendor/typeorm/metadata-args/IndexMetadataArgs.js +3 -0
  1268. package/dist/vendor/typeorm/metadata-args/IndexMetadataArgs.js.map +1 -0
  1269. package/dist/vendor/typeorm/metadata-args/InheritanceMetadataArgs.d.ts +18 -0
  1270. package/dist/vendor/typeorm/metadata-args/InheritanceMetadataArgs.js +3 -0
  1271. package/dist/vendor/typeorm/metadata-args/InheritanceMetadataArgs.js.map +1 -0
  1272. package/dist/vendor/typeorm/metadata-args/JoinColumnMetadataArgs.d.ts +26 -0
  1273. package/dist/vendor/typeorm/metadata-args/JoinColumnMetadataArgs.js +3 -0
  1274. package/dist/vendor/typeorm/metadata-args/JoinColumnMetadataArgs.js.map +1 -0
  1275. package/dist/vendor/typeorm/metadata-args/JoinTableMetadataArgs.d.ts +43 -0
  1276. package/dist/vendor/typeorm/metadata-args/JoinTableMetadataArgs.js +3 -0
  1277. package/dist/vendor/typeorm/metadata-args/JoinTableMetadataArgs.js.map +1 -0
  1278. package/dist/vendor/typeorm/metadata-args/MetadataArgsStorage.d.ts +118 -0
  1279. package/dist/vendor/typeorm/metadata-args/MetadataArgsStorage.js +242 -0
  1280. package/dist/vendor/typeorm/metadata-args/MetadataArgsStorage.js.map +1 -0
  1281. package/dist/vendor/typeorm/metadata-args/NamingStrategyMetadataArgs.d.ts +13 -0
  1282. package/dist/vendor/typeorm/metadata-args/NamingStrategyMetadataArgs.js +3 -0
  1283. package/dist/vendor/typeorm/metadata-args/NamingStrategyMetadataArgs.js.map +1 -0
  1284. package/dist/vendor/typeorm/metadata-args/RelationIdMetadataArgs.d.ts +26 -0
  1285. package/dist/vendor/typeorm/metadata-args/RelationIdMetadataArgs.js +3 -0
  1286. package/dist/vendor/typeorm/metadata-args/RelationIdMetadataArgs.js.map +1 -0
  1287. package/dist/vendor/typeorm/metadata-args/RelationMetadataArgs.d.ts +55 -0
  1288. package/dist/vendor/typeorm/metadata-args/RelationMetadataArgs.js +3 -0
  1289. package/dist/vendor/typeorm/metadata-args/RelationMetadataArgs.js.map +1 -0
  1290. package/dist/vendor/typeorm/metadata-args/TableMetadataArgs.d.ts +66 -0
  1291. package/dist/vendor/typeorm/metadata-args/TableMetadataArgs.js +3 -0
  1292. package/dist/vendor/typeorm/metadata-args/TableMetadataArgs.js.map +1 -0
  1293. package/dist/vendor/typeorm/metadata-args/TransactionEntityMetadataArgs.d.ts +17 -0
  1294. package/dist/vendor/typeorm/metadata-args/TransactionEntityMetadataArgs.js +3 -0
  1295. package/dist/vendor/typeorm/metadata-args/TransactionEntityMetadataArgs.js.map +1 -0
  1296. package/dist/vendor/typeorm/metadata-args/TransactionRepositoryMetadataArgs.d.ts +25 -0
  1297. package/dist/vendor/typeorm/metadata-args/TransactionRepositoryMetadataArgs.js +3 -0
  1298. package/dist/vendor/typeorm/metadata-args/TransactionRepositoryMetadataArgs.js.map +1 -0
  1299. package/dist/vendor/typeorm/metadata-args/TreeMetadataArgs.d.ts +19 -0
  1300. package/dist/vendor/typeorm/metadata-args/TreeMetadataArgs.js +3 -0
  1301. package/dist/vendor/typeorm/metadata-args/TreeMetadataArgs.js.map +1 -0
  1302. package/dist/vendor/typeorm/metadata-args/UniqueMetadataArgs.d.ts +24 -0
  1303. package/dist/vendor/typeorm/metadata-args/UniqueMetadataArgs.js +3 -0
  1304. package/dist/vendor/typeorm/metadata-args/UniqueMetadataArgs.js.map +1 -0
  1305. package/dist/vendor/typeorm/metadata-args/types/ColumnMode.d.ts +7 -0
  1306. package/dist/vendor/typeorm/metadata-args/types/ColumnMode.js +3 -0
  1307. package/dist/vendor/typeorm/metadata-args/types/ColumnMode.js.map +1 -0
  1308. package/dist/vendor/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.d.ts +16 -0
  1309. package/dist/vendor/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.js +154 -0
  1310. package/dist/vendor/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.js.map +1 -0
  1311. package/dist/vendor/typeorm/metadata-builder/EntityMetadataBuilder.d.ts +78 -0
  1312. package/dist/vendor/typeorm/metadata-builder/EntityMetadataBuilder.js +835 -0
  1313. package/dist/vendor/typeorm/metadata-builder/EntityMetadataBuilder.js.map +1 -0
  1314. package/dist/vendor/typeorm/metadata-builder/EntityMetadataValidator.d.ts +34 -0
  1315. package/dist/vendor/typeorm/metadata-builder/EntityMetadataValidator.js +220 -0
  1316. package/dist/vendor/typeorm/metadata-builder/EntityMetadataValidator.js.map +1 -0
  1317. package/dist/vendor/typeorm/metadata-builder/JunctionEntityMetadataBuilder.d.ts +35 -0
  1318. package/dist/vendor/typeorm/metadata-builder/JunctionEntityMetadataBuilder.js +301 -0
  1319. package/dist/vendor/typeorm/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -0
  1320. package/dist/vendor/typeorm/metadata-builder/MetadataUtils.d.ts +31 -0
  1321. package/dist/vendor/typeorm/metadata-builder/MetadataUtils.js +51 -0
  1322. package/dist/vendor/typeorm/metadata-builder/MetadataUtils.js.map +1 -0
  1323. package/dist/vendor/typeorm/metadata-builder/RelationJoinColumnBuilder.d.ts +71 -0
  1324. package/dist/vendor/typeorm/metadata-builder/RelationJoinColumnBuilder.js +216 -0
  1325. package/dist/vendor/typeorm/metadata-builder/RelationJoinColumnBuilder.js.map +1 -0
  1326. package/dist/vendor/typeorm/migration/Migration.d.ts +28 -0
  1327. package/dist/vendor/typeorm/migration/Migration.js +20 -0
  1328. package/dist/vendor/typeorm/migration/Migration.js.map +1 -0
  1329. package/dist/vendor/typeorm/migration/MigrationExecutor.d.ts +115 -0
  1330. package/dist/vendor/typeorm/migration/MigrationExecutor.js +558 -0
  1331. package/dist/vendor/typeorm/migration/MigrationExecutor.js.map +1 -0
  1332. package/dist/vendor/typeorm/migration/MigrationInterface.d.ts +25 -0
  1333. package/dist/vendor/typeorm/migration/MigrationInterface.js +3 -0
  1334. package/dist/vendor/typeorm/migration/MigrationInterface.js.map +1 -0
  1335. package/dist/vendor/typeorm/naming-strategy/DefaultNamingStrategy.d.ts +32 -0
  1336. package/dist/vendor/typeorm/naming-strategy/DefaultNamingStrategy.js +129 -0
  1337. package/dist/vendor/typeorm/naming-strategy/DefaultNamingStrategy.js.map +1 -0
  1338. package/dist/vendor/typeorm/naming-strategy/NamingStrategyInterface.d.ts +109 -0
  1339. package/dist/vendor/typeorm/naming-strategy/NamingStrategyInterface.js +3 -0
  1340. package/dist/vendor/typeorm/naming-strategy/NamingStrategyInterface.js.map +1 -0
  1341. package/dist/vendor/typeorm/package.json +1 -0
  1342. package/dist/vendor/typeorm/persistence/EntityPersistExecutor.d.ts +21 -0
  1343. package/dist/vendor/typeorm/persistence/EntityPersistExecutor.js +179 -0
  1344. package/dist/vendor/typeorm/persistence/EntityPersistExecutor.js.map +1 -0
  1345. package/dist/vendor/typeorm/persistence/Subject.d.ts +155 -0
  1346. package/dist/vendor/typeorm/persistence/Subject.js +237 -0
  1347. package/dist/vendor/typeorm/persistence/Subject.js.map +1 -0
  1348. package/dist/vendor/typeorm/persistence/SubjectChangeMap.d.ts +23 -0
  1349. package/dist/vendor/typeorm/persistence/SubjectChangeMap.js +3 -0
  1350. package/dist/vendor/typeorm/persistence/SubjectChangeMap.js.map +1 -0
  1351. package/dist/vendor/typeorm/persistence/SubjectChangedColumnsComputer.d.ts +25 -0
  1352. package/dist/vendor/typeorm/persistence/SubjectChangedColumnsComputer.js +231 -0
  1353. package/dist/vendor/typeorm/persistence/SubjectChangedColumnsComputer.js.map +1 -0
  1354. package/dist/vendor/typeorm/persistence/SubjectDatabaseEntityLoader.d.ts +29 -0
  1355. package/dist/vendor/typeorm/persistence/SubjectDatabaseEntityLoader.js +150 -0
  1356. package/dist/vendor/typeorm/persistence/SubjectDatabaseEntityLoader.js.map +1 -0
  1357. package/dist/vendor/typeorm/persistence/SubjectExecutor.d.ts +123 -0
  1358. package/dist/vendor/typeorm/persistence/SubjectExecutor.js +764 -0
  1359. package/dist/vendor/typeorm/persistence/SubjectExecutor.js.map +1 -0
  1360. package/dist/vendor/typeorm/persistence/SubjectTopologicalSorter.d.ts +53 -0
  1361. package/dist/vendor/typeorm/persistence/SubjectTopologicalSorter.js +192 -0
  1362. package/dist/vendor/typeorm/persistence/SubjectTopologicalSorter.js.map +1 -0
  1363. package/dist/vendor/typeorm/persistence/subject-builder/CascadesSubjectBuilder.d.ts +25 -0
  1364. package/dist/vendor/typeorm/persistence/subject-builder/CascadesSubjectBuilder.js +136 -0
  1365. package/dist/vendor/typeorm/persistence/subject-builder/CascadesSubjectBuilder.js.map +1 -0
  1366. package/dist/vendor/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.d.ts +47 -0
  1367. package/dist/vendor/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.js +232 -0
  1368. package/dist/vendor/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -0
  1369. package/dist/vendor/typeorm/persistence/subject-builder/OneToManySubjectBuilder.d.ts +33 -0
  1370. package/dist/vendor/typeorm/persistence/subject-builder/OneToManySubjectBuilder.js +193 -0
  1371. package/dist/vendor/typeorm/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -0
  1372. package/dist/vendor/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.d.ts +33 -0
  1373. package/dist/vendor/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js +160 -0
  1374. package/dist/vendor/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js.map +1 -0
  1375. package/dist/vendor/typeorm/persistence/tree/ClosureSubjectExecutor.d.ts +34 -0
  1376. package/dist/vendor/typeorm/persistence/tree/ClosureSubjectExecutor.js +245 -0
  1377. package/dist/vendor/typeorm/persistence/tree/ClosureSubjectExecutor.js.map +1 -0
  1378. package/dist/vendor/typeorm/persistence/tree/MaterializedPathSubjectExecutor.d.ts +23 -0
  1379. package/dist/vendor/typeorm/persistence/tree/MaterializedPathSubjectExecutor.js +129 -0
  1380. package/dist/vendor/typeorm/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -0
  1381. package/dist/vendor/typeorm/persistence/tree/NestedSetSubjectExecutor.d.ts +49 -0
  1382. package/dist/vendor/typeorm/persistence/tree/NestedSetSubjectExecutor.js +281 -0
  1383. package/dist/vendor/typeorm/persistence/tree/NestedSetSubjectExecutor.js.map +1 -0
  1384. package/dist/vendor/typeorm/platform/DriverPackages.d.ts +10 -0
  1385. package/dist/vendor/typeorm/platform/DriverPackages.js +54 -0
  1386. package/dist/vendor/typeorm/platform/DriverPackages.js.map +1 -0
  1387. package/dist/vendor/typeorm/platform/PlatformTools.d.ts +86 -0
  1388. package/dist/vendor/typeorm/platform/PlatformTools.js +218 -0
  1389. package/dist/vendor/typeorm/platform/PlatformTools.js.map +1 -0
  1390. package/dist/vendor/typeorm/query-builder/Alias.d.ts +22 -0
  1391. package/dist/vendor/typeorm/query-builder/Alias.js +28 -0
  1392. package/dist/vendor/typeorm/query-builder/Alias.js.map +1 -0
  1393. package/dist/vendor/typeorm/query-builder/Brackets.d.ts +18 -0
  1394. package/dist/vendor/typeorm/query-builder/Brackets.js +20 -0
  1395. package/dist/vendor/typeorm/query-builder/Brackets.js.map +1 -0
  1396. package/dist/vendor/typeorm/query-builder/DeleteQueryBuilder.d.ts +109 -0
  1397. package/dist/vendor/typeorm/query-builder/DeleteQueryBuilder.js +221 -0
  1398. package/dist/vendor/typeorm/query-builder/DeleteQueryBuilder.js.map +1 -0
  1399. package/dist/vendor/typeorm/query-builder/InsertOrUpdateOptions.d.ts +18 -0
  1400. package/dist/vendor/typeorm/query-builder/InsertOrUpdateOptions.js +3 -0
  1401. package/dist/vendor/typeorm/query-builder/InsertOrUpdateOptions.js.map +1 -0
  1402. package/dist/vendor/typeorm/query-builder/InsertQueryBuilder.d.ts +148 -0
  1403. package/dist/vendor/typeorm/query-builder/InsertQueryBuilder.js +1209 -0
  1404. package/dist/vendor/typeorm/query-builder/InsertQueryBuilder.js.map +1 -0
  1405. package/dist/vendor/typeorm/query-builder/JoinAttribute.d.ts +91 -0
  1406. package/dist/vendor/typeorm/query-builder/JoinAttribute.js +163 -0
  1407. package/dist/vendor/typeorm/query-builder/JoinAttribute.js.map +1 -0
  1408. package/dist/vendor/typeorm/query-builder/JoinOptions.d.ts +3 -0
  1409. package/dist/vendor/typeorm/query-builder/JoinOptions.js +3 -0
  1410. package/dist/vendor/typeorm/query-builder/JoinOptions.js.map +1 -0
  1411. package/dist/vendor/typeorm/query-builder/NotBrackets.d.ts +8 -0
  1412. package/dist/vendor/typeorm/query-builder/NotBrackets.js +16 -0
  1413. package/dist/vendor/typeorm/query-builder/NotBrackets.js.map +1 -0
  1414. package/dist/vendor/typeorm/query-builder/QueryBuilder.d.ts +327 -0
  1415. package/dist/vendor/typeorm/query-builder/QueryBuilder.js +1217 -0
  1416. package/dist/vendor/typeorm/query-builder/QueryBuilder.js.map +1 -0
  1417. package/dist/vendor/typeorm/query-builder/QueryBuilderCte.d.ts +17 -0
  1418. package/dist/vendor/typeorm/query-builder/QueryBuilderCte.js +3 -0
  1419. package/dist/vendor/typeorm/query-builder/QueryBuilderCte.js.map +1 -0
  1420. package/dist/vendor/typeorm/query-builder/QueryBuilderUtils.d.ts +12 -0
  1421. package/dist/vendor/typeorm/query-builder/QueryBuilderUtils.js +33 -0
  1422. package/dist/vendor/typeorm/query-builder/QueryBuilderUtils.js.map +1 -0
  1423. package/dist/vendor/typeorm/query-builder/QueryExpressionMap.d.ts +319 -0
  1424. package/dist/vendor/typeorm/query-builder/QueryExpressionMap.js +325 -0
  1425. package/dist/vendor/typeorm/query-builder/QueryExpressionMap.js.map +1 -0
  1426. package/dist/vendor/typeorm/query-builder/QueryPartialEntity.d.ts +15 -0
  1427. package/dist/vendor/typeorm/query-builder/QueryPartialEntity.js +3 -0
  1428. package/dist/vendor/typeorm/query-builder/QueryPartialEntity.js.map +1 -0
  1429. package/dist/vendor/typeorm/query-builder/RelationIdLoader.d.ts +71 -0
  1430. package/dist/vendor/typeorm/query-builder/RelationIdLoader.js +516 -0
  1431. package/dist/vendor/typeorm/query-builder/RelationIdLoader.js.map +1 -0
  1432. package/dist/vendor/typeorm/query-builder/RelationLoader.d.ts +103 -0
  1433. package/dist/vendor/typeorm/query-builder/RelationLoader.js +342 -0
  1434. package/dist/vendor/typeorm/query-builder/RelationLoader.js.map +1 -0
  1435. package/dist/vendor/typeorm/query-builder/RelationQueryBuilder.d.ts +70 -0
  1436. package/dist/vendor/typeorm/query-builder/RelationQueryBuilder.js +155 -0
  1437. package/dist/vendor/typeorm/query-builder/RelationQueryBuilder.js.map +1 -0
  1438. package/dist/vendor/typeorm/query-builder/RelationRemover.d.ts +18 -0
  1439. package/dist/vendor/typeorm/query-builder/RelationRemover.js +144 -0
  1440. package/dist/vendor/typeorm/query-builder/RelationRemover.js.map +1 -0
  1441. package/dist/vendor/typeorm/query-builder/RelationUpdater.d.ts +18 -0
  1442. package/dist/vendor/typeorm/query-builder/RelationUpdater.js +153 -0
  1443. package/dist/vendor/typeorm/query-builder/RelationUpdater.js.map +1 -0
  1444. package/dist/vendor/typeorm/query-builder/ReturningOption.d.ts +4 -0
  1445. package/dist/vendor/typeorm/query-builder/ReturningOption.js +3 -0
  1446. package/dist/vendor/typeorm/query-builder/ReturningOption.js.map +1 -0
  1447. package/dist/vendor/typeorm/query-builder/ReturningResultsEntityUpdator.d.ts +36 -0
  1448. package/dist/vendor/typeorm/query-builder/ReturningResultsEntityUpdator.js +181 -0
  1449. package/dist/vendor/typeorm/query-builder/ReturningResultsEntityUpdator.js.map +1 -0
  1450. package/dist/vendor/typeorm/query-builder/SelectQuery.d.ts +5 -0
  1451. package/dist/vendor/typeorm/query-builder/SelectQuery.js +3 -0
  1452. package/dist/vendor/typeorm/query-builder/SelectQuery.js.map +1 -0
  1453. package/dist/vendor/typeorm/query-builder/SelectQueryBuilder.d.ts +765 -0
  1454. package/dist/vendor/typeorm/query-builder/SelectQueryBuilder.js +2803 -0
  1455. package/dist/vendor/typeorm/query-builder/SelectQueryBuilder.js.map +1 -0
  1456. package/dist/vendor/typeorm/query-builder/SelectQueryBuilderOption.d.ts +1 -0
  1457. package/dist/vendor/typeorm/query-builder/SelectQueryBuilderOption.js +3 -0
  1458. package/dist/vendor/typeorm/query-builder/SelectQueryBuilderOption.js.map +1 -0
  1459. package/dist/vendor/typeorm/query-builder/SoftDeleteQueryBuilder.d.ts +166 -0
  1460. package/dist/vendor/typeorm/query-builder/SoftDeleteQueryBuilder.js +409 -0
  1461. package/dist/vendor/typeorm/query-builder/SoftDeleteQueryBuilder.js.map +1 -0
  1462. package/dist/vendor/typeorm/query-builder/UpdateQueryBuilder.d.ts +170 -0
  1463. package/dist/vendor/typeorm/query-builder/UpdateQueryBuilder.js +535 -0
  1464. package/dist/vendor/typeorm/query-builder/UpdateQueryBuilder.js.map +1 -0
  1465. package/dist/vendor/typeorm/query-builder/WhereClause.d.ts +16 -0
  1466. package/dist/vendor/typeorm/query-builder/WhereClause.js +3 -0
  1467. package/dist/vendor/typeorm/query-builder/WhereClause.js.map +1 -0
  1468. package/dist/vendor/typeorm/query-builder/WhereExpressionBuilder.d.ts +121 -0
  1469. package/dist/vendor/typeorm/query-builder/WhereExpressionBuilder.js +3 -0
  1470. package/dist/vendor/typeorm/query-builder/WhereExpressionBuilder.js.map +1 -0
  1471. package/dist/vendor/typeorm/query-builder/index.d.ts +4 -0
  1472. package/dist/vendor/typeorm/query-builder/index.js +22 -0
  1473. package/dist/vendor/typeorm/query-builder/index.js.map +1 -0
  1474. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdAttribute.d.ts +64 -0
  1475. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdAttribute.js +87 -0
  1476. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdAttribute.js.map +1 -0
  1477. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdLoadResult.d.ts +5 -0
  1478. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdLoadResult.js +3 -0
  1479. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdLoadResult.js.map +1 -0
  1480. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdLoader.d.ts +12 -0
  1481. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdLoader.js +284 -0
  1482. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdLoader.js.map +1 -0
  1483. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.d.ts +7 -0
  1484. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js +54 -0
  1485. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js.map +1 -0
  1486. package/dist/vendor/typeorm/query-builder/result/DeleteResult.d.ts +16 -0
  1487. package/dist/vendor/typeorm/query-builder/result/DeleteResult.js +16 -0
  1488. package/dist/vendor/typeorm/query-builder/result/DeleteResult.js.map +1 -0
  1489. package/dist/vendor/typeorm/query-builder/result/InsertResult.d.ts +22 -0
  1490. package/dist/vendor/typeorm/query-builder/result/InsertResult.js +27 -0
  1491. package/dist/vendor/typeorm/query-builder/result/InsertResult.js.map +1 -0
  1492. package/dist/vendor/typeorm/query-builder/result/UpdateResult.d.ts +26 -0
  1493. package/dist/vendor/typeorm/query-builder/result/UpdateResult.js +28 -0
  1494. package/dist/vendor/typeorm/query-builder/result/UpdateResult.js.map +1 -0
  1495. package/dist/vendor/typeorm/query-builder/transformer/DocumentToEntityTransformer.d.ts +11 -0
  1496. package/dist/vendor/typeorm/query-builder/transformer/DocumentToEntityTransformer.js +109 -0
  1497. package/dist/vendor/typeorm/query-builder/transformer/DocumentToEntityTransformer.js.map +1 -0
  1498. package/dist/vendor/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.d.ts +12 -0
  1499. package/dist/vendor/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js +120 -0
  1500. package/dist/vendor/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js.map +1 -0
  1501. package/dist/vendor/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.d.ts +19 -0
  1502. package/dist/vendor/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.js +96 -0
  1503. package/dist/vendor/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.js.map +1 -0
  1504. package/dist/vendor/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.d.ts +81 -0
  1505. package/dist/vendor/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.js +450 -0
  1506. package/dist/vendor/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -0
  1507. package/dist/vendor/typeorm/query-runner/BaseQueryRunner.d.ts +318 -0
  1508. package/dist/vendor/typeorm/query-runner/BaseQueryRunner.js +543 -0
  1509. package/dist/vendor/typeorm/query-runner/BaseQueryRunner.js.map +1 -0
  1510. package/dist/vendor/typeorm/query-runner/QueryLock.d.ts +4 -0
  1511. package/dist/vendor/typeorm/query-runner/QueryLock.js +30 -0
  1512. package/dist/vendor/typeorm/query-runner/QueryLock.js.map +1 -0
  1513. package/dist/vendor/typeorm/query-runner/QueryResult.d.ts +17 -0
  1514. package/dist/vendor/typeorm/query-runner/QueryResult.js +16 -0
  1515. package/dist/vendor/typeorm/query-runner/QueryResult.js.map +1 -0
  1516. package/dist/vendor/typeorm/query-runner/QueryRunner.d.ts +380 -0
  1517. package/dist/vendor/typeorm/query-runner/QueryRunner.js +3 -0
  1518. package/dist/vendor/typeorm/query-runner/QueryRunner.js.map +1 -0
  1519. package/dist/vendor/typeorm/repository/BaseEntity.d.ts +387 -0
  1520. package/dist/vendor/typeorm/repository/BaseEntity.js +387 -0
  1521. package/dist/vendor/typeorm/repository/BaseEntity.js.map +1 -0
  1522. package/dist/vendor/typeorm/repository/EntityId.d.ts +2 -0
  1523. package/dist/vendor/typeorm/repository/EntityId.js +3 -0
  1524. package/dist/vendor/typeorm/repository/EntityId.js.map +1 -0
  1525. package/dist/vendor/typeorm/repository/FindTreesOptions.d.ts +9 -0
  1526. package/dist/vendor/typeorm/repository/FindTreesOptions.js +3 -0
  1527. package/dist/vendor/typeorm/repository/FindTreesOptions.js.map +1 -0
  1528. package/dist/vendor/typeorm/repository/MongoRepository.d.ts +313 -0
  1529. package/dist/vendor/typeorm/repository/MongoRepository.js +389 -0
  1530. package/dist/vendor/typeorm/repository/MongoRepository.js.map +1 -0
  1531. package/dist/vendor/typeorm/repository/RemoveOptions.d.ts +27 -0
  1532. package/dist/vendor/typeorm/repository/RemoveOptions.js +3 -0
  1533. package/dist/vendor/typeorm/repository/RemoveOptions.js.map +1 -0
  1534. package/dist/vendor/typeorm/repository/Repository.d.ts +409 -0
  1535. package/dist/vendor/typeorm/repository/Repository.js +442 -0
  1536. package/dist/vendor/typeorm/repository/Repository.js.map +1 -0
  1537. package/dist/vendor/typeorm/repository/SaveOptions.d.ts +35 -0
  1538. package/dist/vendor/typeorm/repository/SaveOptions.js +3 -0
  1539. package/dist/vendor/typeorm/repository/SaveOptions.js.map +1 -0
  1540. package/dist/vendor/typeorm/repository/TreeRepository.d.ts +79 -0
  1541. package/dist/vendor/typeorm/repository/TreeRepository.js +282 -0
  1542. package/dist/vendor/typeorm/repository/TreeRepository.js.map +1 -0
  1543. package/dist/vendor/typeorm/repository/UpdateOptions.d.ts +11 -0
  1544. package/dist/vendor/typeorm/repository/UpdateOptions.js +3 -0
  1545. package/dist/vendor/typeorm/repository/UpdateOptions.js.map +1 -0
  1546. package/dist/vendor/typeorm/repository/UpsertOptions.d.ts +26 -0
  1547. package/dist/vendor/typeorm/repository/UpsertOptions.js +3 -0
  1548. package/dist/vendor/typeorm/repository/UpsertOptions.js.map +1 -0
  1549. package/dist/vendor/typeorm/schema-builder/MongoSchemaBuilder.d.ts +29 -0
  1550. package/dist/vendor/typeorm/schema-builder/MongoSchemaBuilder.js +65 -0
  1551. package/dist/vendor/typeorm/schema-builder/MongoSchemaBuilder.js.map +1 -0
  1552. package/dist/vendor/typeorm/schema-builder/RdbmsSchemaBuilder.d.ts +174 -0
  1553. package/dist/vendor/typeorm/schema-builder/RdbmsSchemaBuilder.js +944 -0
  1554. package/dist/vendor/typeorm/schema-builder/RdbmsSchemaBuilder.js.map +1 -0
  1555. package/dist/vendor/typeorm/schema-builder/SchemaBuilder.d.ts +14 -0
  1556. package/dist/vendor/typeorm/schema-builder/SchemaBuilder.js +3 -0
  1557. package/dist/vendor/typeorm/schema-builder/SchemaBuilder.js.map +1 -0
  1558. package/dist/vendor/typeorm/schema-builder/options/TableCheckOptions.d.ts +17 -0
  1559. package/dist/vendor/typeorm/schema-builder/options/TableCheckOptions.js +3 -0
  1560. package/dist/vendor/typeorm/schema-builder/options/TableCheckOptions.js.map +1 -0
  1561. package/dist/vendor/typeorm/schema-builder/options/TableColumnOptions.d.ts +112 -0
  1562. package/dist/vendor/typeorm/schema-builder/options/TableColumnOptions.js +3 -0
  1563. package/dist/vendor/typeorm/schema-builder/options/TableColumnOptions.js.map +1 -0
  1564. package/dist/vendor/typeorm/schema-builder/options/TableExclusionOptions.d.ts +18 -0
  1565. package/dist/vendor/typeorm/schema-builder/options/TableExclusionOptions.js +3 -0
  1566. package/dist/vendor/typeorm/schema-builder/options/TableExclusionOptions.js.map +1 -0
  1567. package/dist/vendor/typeorm/schema-builder/options/TableForeignKeyOptions.d.ts +44 -0
  1568. package/dist/vendor/typeorm/schema-builder/options/TableForeignKeyOptions.js +3 -0
  1569. package/dist/vendor/typeorm/schema-builder/options/TableForeignKeyOptions.js.map +1 -0
  1570. package/dist/vendor/typeorm/schema-builder/options/TableIndexOptions.d.ts +56 -0
  1571. package/dist/vendor/typeorm/schema-builder/options/TableIndexOptions.js +3 -0
  1572. package/dist/vendor/typeorm/schema-builder/options/TableIndexOptions.js.map +1 -0
  1573. package/dist/vendor/typeorm/schema-builder/options/TableIndexTypes.d.ts +1 -0
  1574. package/dist/vendor/typeorm/schema-builder/options/TableIndexTypes.js +3 -0
  1575. package/dist/vendor/typeorm/schema-builder/options/TableIndexTypes.js.map +1 -0
  1576. package/dist/vendor/typeorm/schema-builder/options/TableOptions.d.ts +65 -0
  1577. package/dist/vendor/typeorm/schema-builder/options/TableOptions.js +3 -0
  1578. package/dist/vendor/typeorm/schema-builder/options/TableOptions.js.map +1 -0
  1579. package/dist/vendor/typeorm/schema-builder/options/TableUniqueOptions.d.ts +18 -0
  1580. package/dist/vendor/typeorm/schema-builder/options/TableUniqueOptions.js +3 -0
  1581. package/dist/vendor/typeorm/schema-builder/options/TableUniqueOptions.js.map +1 -0
  1582. package/dist/vendor/typeorm/schema-builder/options/ViewOptions.d.ts +27 -0
  1583. package/dist/vendor/typeorm/schema-builder/options/ViewOptions.js +3 -0
  1584. package/dist/vendor/typeorm/schema-builder/options/ViewOptions.js.map +1 -0
  1585. package/dist/vendor/typeorm/schema-builder/table/Table.d.ts +183 -0
  1586. package/dist/vendor/typeorm/schema-builder/table/Table.js +332 -0
  1587. package/dist/vendor/typeorm/schema-builder/table/Table.js.map +1 -0
  1588. package/dist/vendor/typeorm/schema-builder/table/TableCheck.d.ts +31 -0
  1589. package/dist/vendor/typeorm/schema-builder/table/TableCheck.js +50 -0
  1590. package/dist/vendor/typeorm/schema-builder/table/TableCheck.js.map +1 -0
  1591. package/dist/vendor/typeorm/schema-builder/table/TableColumn.d.ts +116 -0
  1592. package/dist/vendor/typeorm/schema-builder/table/TableColumn.js +107 -0
  1593. package/dist/vendor/typeorm/schema-builder/table/TableColumn.js.map +1 -0
  1594. package/dist/vendor/typeorm/schema-builder/table/TableExclusion.d.ts +32 -0
  1595. package/dist/vendor/typeorm/schema-builder/table/TableExclusion.js +47 -0
  1596. package/dist/vendor/typeorm/schema-builder/table/TableExclusion.js.map +1 -0
  1597. package/dist/vendor/typeorm/schema-builder/table/TableForeignKey.d.ts +60 -0
  1598. package/dist/vendor/typeorm/schema-builder/table/TableForeignKey.js +74 -0
  1599. package/dist/vendor/typeorm/schema-builder/table/TableForeignKey.js.map +1 -0
  1600. package/dist/vendor/typeorm/schema-builder/table/TableIndex.d.ts +70 -0
  1601. package/dist/vendor/typeorm/schema-builder/table/TableIndex.js +72 -0
  1602. package/dist/vendor/typeorm/schema-builder/table/TableIndex.js.map +1 -0
  1603. package/dist/vendor/typeorm/schema-builder/table/TableUnique.d.ts +32 -0
  1604. package/dist/vendor/typeorm/schema-builder/table/TableUnique.js +51 -0
  1605. package/dist/vendor/typeorm/schema-builder/table/TableUnique.js.map +1 -0
  1606. package/dist/vendor/typeorm/schema-builder/util/TableUtils.d.ts +6 -0
  1607. package/dist/vendor/typeorm/schema-builder/util/TableUtils.js +38 -0
  1608. package/dist/vendor/typeorm/schema-builder/util/TableUtils.js.map +1 -0
  1609. package/dist/vendor/typeorm/schema-builder/util/ViewUtils.d.ts +10 -0
  1610. package/dist/vendor/typeorm/schema-builder/util/ViewUtils.js +29 -0
  1611. package/dist/vendor/typeorm/schema-builder/util/ViewUtils.js.map +1 -0
  1612. package/dist/vendor/typeorm/schema-builder/view/View.d.ts +60 -0
  1613. package/dist/vendor/typeorm/schema-builder/view/View.js +77 -0
  1614. package/dist/vendor/typeorm/schema-builder/view/View.js.map +1 -0
  1615. package/dist/vendor/typeorm/subscriber/Broadcaster.d.ts +263 -0
  1616. package/dist/vendor/typeorm/subscriber/Broadcaster.js +761 -0
  1617. package/dist/vendor/typeorm/subscriber/Broadcaster.js.map +1 -0
  1618. package/dist/vendor/typeorm/subscriber/BroadcasterResult.d.ts +17 -0
  1619. package/dist/vendor/typeorm/subscriber/BroadcasterResult.js +29 -0
  1620. package/dist/vendor/typeorm/subscriber/BroadcasterResult.js.map +1 -0
  1621. package/dist/vendor/typeorm/subscriber/EntitySubscriberInterface.d.ts +101 -0
  1622. package/dist/vendor/typeorm/subscriber/EntitySubscriberInterface.js +3 -0
  1623. package/dist/vendor/typeorm/subscriber/EntitySubscriberInterface.js.map +1 -0
  1624. package/dist/vendor/typeorm/subscriber/event/BaseEvent.d.ts +28 -0
  1625. package/dist/vendor/typeorm/subscriber/event/BaseEvent.js +3 -0
  1626. package/dist/vendor/typeorm/subscriber/event/BaseEvent.js.map +1 -0
  1627. package/dist/vendor/typeorm/subscriber/event/InsertEvent.d.ts +20 -0
  1628. package/dist/vendor/typeorm/subscriber/event/InsertEvent.js +3 -0
  1629. package/dist/vendor/typeorm/subscriber/event/InsertEvent.js.map +1 -0
  1630. package/dist/vendor/typeorm/subscriber/event/LoadEvent.d.ts +15 -0
  1631. package/dist/vendor/typeorm/subscriber/event/LoadEvent.js +3 -0
  1632. package/dist/vendor/typeorm/subscriber/event/LoadEvent.js.map +1 -0
  1633. package/dist/vendor/typeorm/subscriber/event/QueryEvent.d.ts +35 -0
  1634. package/dist/vendor/typeorm/subscriber/event/QueryEvent.js +3 -0
  1635. package/dist/vendor/typeorm/subscriber/event/QueryEvent.js.map +1 -0
  1636. package/dist/vendor/typeorm/subscriber/event/RecoverEvent.d.ts +6 -0
  1637. package/dist/vendor/typeorm/subscriber/event/RecoverEvent.js +3 -0
  1638. package/dist/vendor/typeorm/subscriber/event/RecoverEvent.js.map +1 -0
  1639. package/dist/vendor/typeorm/subscriber/event/RemoveEvent.d.ts +24 -0
  1640. package/dist/vendor/typeorm/subscriber/event/RemoveEvent.js +3 -0
  1641. package/dist/vendor/typeorm/subscriber/event/RemoveEvent.js.map +1 -0
  1642. package/dist/vendor/typeorm/subscriber/event/SoftRemoveEvent.d.ts +6 -0
  1643. package/dist/vendor/typeorm/subscriber/event/SoftRemoveEvent.js +3 -0
  1644. package/dist/vendor/typeorm/subscriber/event/SoftRemoveEvent.js.map +1 -0
  1645. package/dist/vendor/typeorm/subscriber/event/TransactionCommitEvent.d.ts +6 -0
  1646. package/dist/vendor/typeorm/subscriber/event/TransactionCommitEvent.js +3 -0
  1647. package/dist/vendor/typeorm/subscriber/event/TransactionCommitEvent.js.map +1 -0
  1648. package/dist/vendor/typeorm/subscriber/event/TransactionRollbackEvent.d.ts +6 -0
  1649. package/dist/vendor/typeorm/subscriber/event/TransactionRollbackEvent.js +3 -0
  1650. package/dist/vendor/typeorm/subscriber/event/TransactionRollbackEvent.js.map +1 -0
  1651. package/dist/vendor/typeorm/subscriber/event/TransactionStartEvent.d.ts +6 -0
  1652. package/dist/vendor/typeorm/subscriber/event/TransactionStartEvent.js +3 -0
  1653. package/dist/vendor/typeorm/subscriber/event/TransactionStartEvent.js.map +1 -0
  1654. package/dist/vendor/typeorm/subscriber/event/UpdateEvent.d.ts +34 -0
  1655. package/dist/vendor/typeorm/subscriber/event/UpdateEvent.js +3 -0
  1656. package/dist/vendor/typeorm/subscriber/event/UpdateEvent.js.map +1 -0
  1657. package/dist/vendor/typeorm/util/ApplyValueTransformers.d.ts +5 -0
  1658. package/dist/vendor/typeorm/util/ApplyValueTransformers.js +29 -0
  1659. package/dist/vendor/typeorm/util/ApplyValueTransformers.js.map +1 -0
  1660. package/dist/vendor/typeorm/util/DateUtils.d.ts +110 -0
  1661. package/dist/vendor/typeorm/util/DateUtils.js +299 -0
  1662. package/dist/vendor/typeorm/util/DateUtils.js.map +1 -0
  1663. package/dist/vendor/typeorm/util/DepGraph.d.ts +90 -0
  1664. package/dist/vendor/typeorm/util/DepGraph.js +255 -0
  1665. package/dist/vendor/typeorm/util/DepGraph.js.map +1 -0
  1666. package/dist/vendor/typeorm/util/DirectoryExportedClassesLoader.d.ts +9 -0
  1667. package/dist/vendor/typeorm/util/DirectoryExportedClassesLoader.js +60 -0
  1668. package/dist/vendor/typeorm/util/DirectoryExportedClassesLoader.js.map +1 -0
  1669. package/dist/vendor/typeorm/util/ImportUtils.d.ts +5 -0
  1670. package/dist/vendor/typeorm/util/ImportUtils.js +107 -0
  1671. package/dist/vendor/typeorm/util/ImportUtils.js.map +1 -0
  1672. package/dist/vendor/typeorm/util/InstanceChecker.d.ts +61 -0
  1673. package/dist/vendor/typeorm/util/InstanceChecker.js +103 -0
  1674. package/dist/vendor/typeorm/util/InstanceChecker.js.map +1 -0
  1675. package/dist/vendor/typeorm/util/ObjectUtils.d.ts +54 -0
  1676. package/dist/vendor/typeorm/util/ObjectUtils.js +55 -0
  1677. package/dist/vendor/typeorm/util/ObjectUtils.js.map +1 -0
  1678. package/dist/vendor/typeorm/util/OrmUtils.d.ts +133 -0
  1679. package/dist/vendor/typeorm/util/OrmUtils.js +572 -0
  1680. package/dist/vendor/typeorm/util/OrmUtils.js.map +1 -0
  1681. package/dist/vendor/typeorm/util/PathUtils.d.ts +18 -0
  1682. package/dist/vendor/typeorm/util/PathUtils.js +40 -0
  1683. package/dist/vendor/typeorm/util/PathUtils.js.map +1 -0
  1684. package/dist/vendor/typeorm/util/RandomGenerator.d.ts +17 -0
  1685. package/dist/vendor/typeorm/util/RandomGenerator.js +182 -0
  1686. package/dist/vendor/typeorm/util/RandomGenerator.js.map +1 -0
  1687. package/dist/vendor/typeorm/util/SqlTagUtils.d.ts +18 -0
  1688. package/dist/vendor/typeorm/util/SqlTagUtils.js +49 -0
  1689. package/dist/vendor/typeorm/util/SqlTagUtils.js.map +1 -0
  1690. package/dist/vendor/typeorm/util/StringUtils.d.ts +67 -0
  1691. package/dist/vendor/typeorm/util/StringUtils.js +105 -0
  1692. package/dist/vendor/typeorm/util/StringUtils.js.map +1 -0
  1693. package/dist/vendor/typeorm/util/TreeRepositoryUtils.d.ts +23 -0
  1694. package/dist/vendor/typeorm/util/TreeRepositoryUtils.js +66 -0
  1695. package/dist/vendor/typeorm/util/TreeRepositoryUtils.js.map +1 -0
  1696. package/dist/vendor/typeorm/util/Uint8ArrayUtils.d.ts +3 -0
  1697. package/dist/vendor/typeorm/util/Uint8ArrayUtils.js +45 -0
  1698. package/dist/vendor/typeorm/util/Uint8ArrayUtils.js.map +1 -0
  1699. package/dist/vendor/typeorm/util/VersionUtils.d.ts +3 -0
  1700. package/dist/vendor/typeorm/util/VersionUtils.js +33 -0
  1701. package/dist/vendor/typeorm/util/VersionUtils.js.map +1 -0
  1702. package/dist/vendor/typeorm/util/escapeRegExp.d.ts +1 -0
  1703. package/dist/vendor/typeorm/util/escapeRegExp.js +9 -0
  1704. package/dist/vendor/typeorm/util/escapeRegExp.js.map +1 -0
  1705. package/package.json +114 -8
@@ -0,0 +1,2767 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SqlServerQueryRunner = void 0;
4
+ const error_1 = require("../../error");
5
+ const NamedPlaceholdersNotSupportedError_1 = require("../../error/NamedPlaceholdersNotSupportedError");
6
+ const QueryFailedError_1 = require("../../error/QueryFailedError");
7
+ const QueryRunnerAlreadyReleasedError_1 = require("../../error/QueryRunnerAlreadyReleasedError");
8
+ const TransactionNotStartedError_1 = require("../../error/TransactionNotStartedError");
9
+ const BaseQueryRunner_1 = require("../../query-runner/BaseQueryRunner");
10
+ const QueryLock_1 = require("../../query-runner/QueryLock");
11
+ const QueryResult_1 = require("../../query-runner/QueryResult");
12
+ const Table_1 = require("../../schema-builder/table/Table");
13
+ const TableCheck_1 = require("../../schema-builder/table/TableCheck");
14
+ const TableColumn_1 = require("../../schema-builder/table/TableColumn");
15
+ const TableForeignKey_1 = require("../../schema-builder/table/TableForeignKey");
16
+ const TableIndex_1 = require("../../schema-builder/table/TableIndex");
17
+ const TableUnique_1 = require("../../schema-builder/table/TableUnique");
18
+ const View_1 = require("../../schema-builder/view/View");
19
+ const Broadcaster_1 = require("../../subscriber/Broadcaster");
20
+ const BroadcasterResult_1 = require("../../subscriber/BroadcasterResult");
21
+ const InstanceChecker_1 = require("../../util/InstanceChecker");
22
+ const OrmUtils_1 = require("../../util/OrmUtils");
23
+ const Query_1 = require("../Query");
24
+ const validate_isolation_level_1 = require("../validate-isolation-level");
25
+ const MetadataTableType_1 = require("../types/MetadataTableType");
26
+ /**
27
+ * Runs queries on a single SQL Server database connection.
28
+ */
29
+ class SqlServerQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
30
+ // -------------------------------------------------------------------------
31
+ // Constructor
32
+ // -------------------------------------------------------------------------
33
+ constructor(driver, mode) {
34
+ super();
35
+ // -------------------------------------------------------------------------
36
+ // Private Properties
37
+ // -------------------------------------------------------------------------
38
+ this.lock = new QueryLock_1.QueryLock();
39
+ this.driver = driver;
40
+ this.dataSource = driver.dataSource;
41
+ this.broadcaster = new Broadcaster_1.Broadcaster(this);
42
+ this.mode = mode;
43
+ }
44
+ // -------------------------------------------------------------------------
45
+ // Public Methods
46
+ // -------------------------------------------------------------------------
47
+ /**
48
+ * Creates/uses database connection from the connection pool to perform further operations.
49
+ * Returns obtained database connection.
50
+ */
51
+ connect() {
52
+ return Promise.resolve();
53
+ }
54
+ /**
55
+ * Releases used database connection.
56
+ * You cannot use query runner methods once its released.
57
+ */
58
+ release() {
59
+ this.isReleased = true;
60
+ return Promise.resolve();
61
+ }
62
+ /**
63
+ * Starts transaction.
64
+ *
65
+ * @param isolationLevel
66
+ */
67
+ async startTransaction(isolationLevel) {
68
+ isolationLevel ??= this.dataSource.options.isolationLevel;
69
+ (0, validate_isolation_level_1.validateIsolationLevel)(this.driver.supportedIsolationLevels, isolationLevel);
70
+ if (this.isReleased)
71
+ throw new QueryRunnerAlreadyReleasedError_1.QueryRunnerAlreadyReleasedError();
72
+ this.isTransactionActive = true;
73
+ try {
74
+ await this.broadcaster.broadcast("BeforeTransactionStart");
75
+ }
76
+ catch (err) {
77
+ this.isTransactionActive = false;
78
+ throw err;
79
+ }
80
+ await new Promise(async (ok, fail) => {
81
+ const transactionCallback = (err) => {
82
+ if (err) {
83
+ this.isTransactionActive = false;
84
+ return fail(err);
85
+ }
86
+ ok();
87
+ };
88
+ if (this.transactionDepth === 0) {
89
+ const pool = await (this.mode === "slave"
90
+ ? this.driver.obtainSlaveConnection()
91
+ : this.driver.obtainMasterConnection());
92
+ this.databaseConnection = pool.transaction();
93
+ this.dataSource.logger.logQuery("BEGIN TRANSACTION");
94
+ if (isolationLevel) {
95
+ this.databaseConnection.begin(this.driver.convertIsolationLevel(isolationLevel), transactionCallback);
96
+ this.dataSource.logger.logQuery("SET TRANSACTION ISOLATION LEVEL " + isolationLevel);
97
+ }
98
+ else {
99
+ this.databaseConnection.begin(transactionCallback);
100
+ }
101
+ }
102
+ else {
103
+ await this.query(`SAVE TRANSACTION typeorm_${this.transactionDepth}`);
104
+ ok();
105
+ }
106
+ this.transactionDepth += 1;
107
+ });
108
+ await this.broadcaster.broadcast("AfterTransactionStart");
109
+ }
110
+ /**
111
+ * Commits transaction.
112
+ * Error will be thrown if transaction was not started.
113
+ */
114
+ async commitTransaction() {
115
+ if (this.isReleased)
116
+ throw new QueryRunnerAlreadyReleasedError_1.QueryRunnerAlreadyReleasedError();
117
+ if (!this.isTransactionActive)
118
+ throw new TransactionNotStartedError_1.TransactionNotStartedError();
119
+ await this.broadcaster.broadcast("BeforeTransactionCommit");
120
+ if (this.transactionDepth === 1) {
121
+ return new Promise((ok, fail) => {
122
+ this.databaseConnection.commit(async (err) => {
123
+ if (err)
124
+ return fail(err);
125
+ this.isTransactionActive = false;
126
+ this.databaseConnection = null;
127
+ await this.broadcaster.broadcast("AfterTransactionCommit");
128
+ ok();
129
+ this.dataSource.logger.logQuery("COMMIT");
130
+ this.transactionDepth -= 1;
131
+ });
132
+ });
133
+ }
134
+ this.transactionDepth -= 1;
135
+ }
136
+ /**
137
+ * Rollbacks transaction.
138
+ * Error will be thrown if transaction was not started.
139
+ */
140
+ async rollbackTransaction() {
141
+ if (this.isReleased)
142
+ throw new QueryRunnerAlreadyReleasedError_1.QueryRunnerAlreadyReleasedError();
143
+ if (!this.isTransactionActive)
144
+ throw new TransactionNotStartedError_1.TransactionNotStartedError();
145
+ await this.broadcaster.broadcast("BeforeTransactionRollback");
146
+ if (this.transactionDepth > 1) {
147
+ await this.query(`ROLLBACK TRANSACTION typeorm_${this.transactionDepth - 1}`);
148
+ this.transactionDepth -= 1;
149
+ }
150
+ else {
151
+ return new Promise((ok, fail) => {
152
+ this.databaseConnection.rollback(async (err) => {
153
+ if (err)
154
+ return fail(err);
155
+ this.isTransactionActive = false;
156
+ this.databaseConnection = null;
157
+ await this.broadcaster.broadcast("AfterTransactionRollback");
158
+ ok();
159
+ this.dataSource.logger.logQuery("ROLLBACK");
160
+ this.transactionDepth -= 1;
161
+ });
162
+ });
163
+ }
164
+ }
165
+ /**
166
+ * Executes a given SQL query.
167
+ *
168
+ * @param query
169
+ * @param parameters
170
+ * @param useStructuredResult
171
+ */
172
+ async query(query, parameters, useStructuredResult = false) {
173
+ if (this.isReleased)
174
+ throw new QueryRunnerAlreadyReleasedError_1.QueryRunnerAlreadyReleasedError();
175
+ if (parameters && !Array.isArray(parameters))
176
+ throw new NamedPlaceholdersNotSupportedError_1.NamedPlaceholdersNotSupportedError();
177
+ const release = await this.lock.acquire();
178
+ this.driver.dataSource.logger.logQuery(query, parameters, this);
179
+ await this.broadcaster.broadcast("BeforeQuery", query, parameters);
180
+ const broadcasterResult = new BroadcasterResult_1.BroadcasterResult();
181
+ const maxQueryExecutionTime = this.driver.options.maxQueryExecutionTime;
182
+ let queryStartTime;
183
+ try {
184
+ const pool = await (this.mode === "slave"
185
+ ? this.driver.obtainSlaveConnection()
186
+ : this.driver.obtainMasterConnection());
187
+ const request = new this.driver.mssql.Request(this.isTransactionActive ? this.databaseConnection : pool);
188
+ if (parameters?.length) {
189
+ parameters.forEach((parameter, index) => {
190
+ const parameterName = index.toString();
191
+ if (InstanceChecker_1.InstanceChecker.isMssqlParameter(parameter)) {
192
+ const mssqlParameter = this.mssqlParameterToNativeParameter(parameter);
193
+ if (mssqlParameter) {
194
+ request.input(parameterName, mssqlParameter, parameter.value);
195
+ }
196
+ else {
197
+ request.input(parameterName, parameter.value);
198
+ }
199
+ }
200
+ else {
201
+ request.input(parameterName, parameter);
202
+ }
203
+ });
204
+ }
205
+ queryStartTime = Date.now();
206
+ const raw = await request.query(query).catch((err) => {
207
+ throw new QueryFailedError_1.QueryFailedError(query, parameters, err);
208
+ });
209
+ // log slow queries if maxQueryExecution time is set
210
+ const queryExecutionTime = Date.now() - queryStartTime;
211
+ this.broadcaster.broadcastAfterQueryEvent(broadcasterResult, query, parameters, true, queryExecutionTime, raw, undefined);
212
+ if (maxQueryExecutionTime &&
213
+ queryExecutionTime > maxQueryExecutionTime) {
214
+ this.driver.dataSource.logger.logQuerySlow(queryExecutionTime, query, parameters, this);
215
+ }
216
+ const result = new QueryResult_1.QueryResult();
217
+ if (raw?.hasOwnProperty("recordset")) {
218
+ result.records = raw.recordset;
219
+ }
220
+ if (raw?.hasOwnProperty("rowsAffected")) {
221
+ result.affected = raw.rowsAffected[0];
222
+ }
223
+ const queryType = query.slice(0, query.indexOf(" "));
224
+ switch (queryType) {
225
+ case "DELETE":
226
+ // for DELETE query additionally return number of affected rows
227
+ result.raw = [raw.recordset, raw.rowsAffected[0]];
228
+ break;
229
+ default:
230
+ result.raw = raw.recordset;
231
+ }
232
+ return useStructuredResult ? result : result.raw;
233
+ }
234
+ catch (err) {
235
+ const queryExecutionTime = queryStartTime
236
+ ? Date.now() - queryStartTime
237
+ : undefined;
238
+ if (maxQueryExecutionTime &&
239
+ queryExecutionTime !== undefined &&
240
+ queryExecutionTime > maxQueryExecutionTime) {
241
+ this.driver.dataSource.logger.logQuerySlow(queryExecutionTime, query, parameters, this);
242
+ }
243
+ this.driver.dataSource.logger.logQueryError(err, query, parameters, this);
244
+ this.broadcaster.broadcastAfterQueryEvent(broadcasterResult, query, parameters, false, undefined, undefined, err);
245
+ throw err;
246
+ }
247
+ finally {
248
+ await broadcasterResult.wait();
249
+ release();
250
+ }
251
+ }
252
+ /**
253
+ * Returns raw data stream.
254
+ *
255
+ * @param query
256
+ * @param parameters
257
+ * @param onEnd
258
+ * @param onError
259
+ */
260
+ async stream(query, parameters, onEnd, onError) {
261
+ if (this.isReleased)
262
+ throw new QueryRunnerAlreadyReleasedError_1.QueryRunnerAlreadyReleasedError();
263
+ const release = await this.lock.acquire();
264
+ this.driver.dataSource.logger.logQuery(query, parameters, this);
265
+ const pool = await (this.mode === "slave"
266
+ ? this.driver.obtainSlaveConnection()
267
+ : this.driver.obtainMasterConnection());
268
+ const request = new this.driver.mssql.Request(this.isTransactionActive ? this.databaseConnection : pool);
269
+ if (parameters?.length) {
270
+ parameters.forEach((parameter, index) => {
271
+ const parameterName = index.toString();
272
+ if (InstanceChecker_1.InstanceChecker.isMssqlParameter(parameter)) {
273
+ request.input(parameterName, this.mssqlParameterToNativeParameter(parameter), parameter.value);
274
+ }
275
+ else {
276
+ request.input(parameterName, parameter);
277
+ }
278
+ });
279
+ }
280
+ request.query(query);
281
+ const streamRequest = request.toReadableStream();
282
+ streamRequest.on("error", (err) => {
283
+ release();
284
+ this.driver.dataSource.logger.logQueryError(err, query, parameters, this);
285
+ });
286
+ streamRequest.on("end", () => {
287
+ release();
288
+ });
289
+ if (onEnd) {
290
+ streamRequest.on("end", onEnd);
291
+ }
292
+ if (onError) {
293
+ streamRequest.on("error", onError);
294
+ }
295
+ return streamRequest;
296
+ }
297
+ /**
298
+ * Returns all available database names including system databases.
299
+ */
300
+ async getDatabases() {
301
+ const results = await this.query(`EXEC sp_databases`);
302
+ return results.map((result) => result["DATABASE_NAME"]);
303
+ }
304
+ /**
305
+ * Returns all available schema names including system schemas.
306
+ * If database parameter specified, returns schemas of that database.
307
+ *
308
+ * @param database
309
+ */
310
+ async getSchemas(database) {
311
+ const query = database
312
+ ? `SELECT * FROM "${database}"."sys"."schemas"`
313
+ : `SELECT * FROM "sys"."schemas"`;
314
+ const results = await this.query(query);
315
+ return results.map((result) => result["name"]);
316
+ }
317
+ /**
318
+ * Checks if database with the given name exist.
319
+ *
320
+ * @param database
321
+ */
322
+ async hasDatabase(database) {
323
+ const result = await this.query(`SELECT DB_ID(@0) as "db_id"`, [
324
+ database,
325
+ ]);
326
+ const dbId = result[0]["db_id"];
327
+ return !!dbId;
328
+ }
329
+ /**
330
+ * Loads currently using database
331
+ */
332
+ async getCurrentDatabase() {
333
+ const currentDBQuery = await this.query(`SELECT DB_NAME() AS "db_name"`);
334
+ return currentDBQuery[0]["db_name"];
335
+ }
336
+ /**
337
+ * Checks if schema with the given name exist.
338
+ *
339
+ * @param schema
340
+ */
341
+ async hasSchema(schema) {
342
+ const result = await this.query(`SELECT SCHEMA_ID(@0) as "schema_id"`, [
343
+ schema,
344
+ ]);
345
+ const schemaId = result[0]["schema_id"];
346
+ return !!schemaId;
347
+ }
348
+ /**
349
+ * Loads currently using database schema
350
+ */
351
+ async getCurrentSchema() {
352
+ const currentSchemaQuery = await this.query(`SELECT SCHEMA_NAME() AS "schema_name"`);
353
+ return currentSchemaQuery[0]["schema_name"];
354
+ }
355
+ /**
356
+ * Checks if table with the given name exist in the database.
357
+ *
358
+ * @param tableOrName
359
+ */
360
+ async hasTable(tableOrName) {
361
+ const parsedTableName = this.driver.parseTableName(tableOrName);
362
+ parsedTableName.database ??= await this.getCurrentDatabase();
363
+ parsedTableName.schema ??= await this.getCurrentSchema();
364
+ const sql = `SELECT * FROM ${this.driver.escape(parsedTableName.database)}."INFORMATION_SCHEMA"."TABLES" WHERE "TABLE_NAME" = @0 AND "TABLE_SCHEMA" = @1`;
365
+ const result = await this.query(sql, [
366
+ parsedTableName.tableName,
367
+ parsedTableName.schema,
368
+ ]);
369
+ return result.length ? true : false;
370
+ }
371
+ /**
372
+ * Checks if column exist in the table.
373
+ *
374
+ * @param tableOrName
375
+ * @param columnName
376
+ */
377
+ async hasColumn(tableOrName, columnName) {
378
+ const parsedTableName = this.driver.parseTableName(tableOrName);
379
+ parsedTableName.database ??= await this.getCurrentDatabase();
380
+ parsedTableName.schema ??= await this.getCurrentSchema();
381
+ const sql = `SELECT * FROM ${this.driver.escape(parsedTableName.database)}."INFORMATION_SCHEMA"."COLUMNS" WHERE "TABLE_NAME" = @0 AND "TABLE_SCHEMA" = @1 AND "COLUMN_NAME" = @2`;
382
+ const result = await this.query(sql, [
383
+ parsedTableName.tableName,
384
+ parsedTableName.schema,
385
+ columnName,
386
+ ]);
387
+ return result.length ? true : false;
388
+ }
389
+ /**
390
+ * Creates a new database.
391
+ *
392
+ * @param database
393
+ * @param ifNotExists
394
+ */
395
+ async createDatabase(database, ifNotExists) {
396
+ const escapedQuote = database.replaceAll("'", "''");
397
+ const up = ifNotExists
398
+ ? `IF DB_ID('${escapedQuote}') IS NULL CREATE DATABASE ${this.driver.escape(database)}`
399
+ : `CREATE DATABASE ${this.driver.escape(database)}`;
400
+ const down = `DROP DATABASE ${this.driver.escape(database)}`;
401
+ await this.executeQueries(new Query_1.Query(up), new Query_1.Query(down));
402
+ }
403
+ /**
404
+ * Drops database.
405
+ *
406
+ * @param database
407
+ * @param ifExists
408
+ */
409
+ async dropDatabase(database, ifExists) {
410
+ const escapedQuote = database.replaceAll("'", "''");
411
+ const up = ifExists
412
+ ? `IF DB_ID('${escapedQuote}') IS NOT NULL DROP DATABASE ${this.driver.escape(database)}`
413
+ : `DROP DATABASE ${this.driver.escape(database)}`;
414
+ const down = `CREATE DATABASE ${this.driver.escape(database)}`;
415
+ await this.executeQueries(new Query_1.Query(up), new Query_1.Query(down));
416
+ }
417
+ /**
418
+ * Creates table schema.
419
+ * If database name also specified (e.g. 'dbName.schemaName') schema will be created in specified database.
420
+ *
421
+ * @param schemaPath
422
+ * @param ifNotExists
423
+ */
424
+ async createSchema(schemaPath, ifNotExists) {
425
+ const upQueries = [];
426
+ const downQueries = [];
427
+ if (schemaPath.indexOf(".") === -1) {
428
+ const escapedQuote = schemaPath.replaceAll("'", "''");
429
+ const escapedExec = this.driver
430
+ .escape(schemaPath)
431
+ .replaceAll("'", "''");
432
+ const upQuery = ifNotExists
433
+ ? `IF SCHEMA_ID('${escapedQuote}') IS NULL BEGIN EXEC ('CREATE SCHEMA ${escapedExec}') END`
434
+ : `CREATE SCHEMA ${this.driver.escape(schemaPath)}`;
435
+ upQueries.push(new Query_1.Query(upQuery));
436
+ downQueries.push(new Query_1.Query(`DROP SCHEMA ${this.driver.escape(schemaPath)}`));
437
+ }
438
+ else {
439
+ const dbName = schemaPath.split(".")[0];
440
+ const schema = schemaPath.split(".")[1];
441
+ const escapedSchemaQuote = schema.replaceAll("'", "''");
442
+ const escapedSchemaExec = this.driver
443
+ .escape(schema)
444
+ .replaceAll("'", "''");
445
+ const currentDB = await this.getCurrentDatabase();
446
+ upQueries.push(new Query_1.Query(`USE ${this.driver.escape(dbName)}`));
447
+ downQueries.push(new Query_1.Query(`USE ${this.driver.escape(currentDB)}`));
448
+ const upQuery = ifNotExists
449
+ ? `IF SCHEMA_ID('${escapedSchemaQuote}') IS NULL BEGIN EXEC ('CREATE SCHEMA ${escapedSchemaExec}') END`
450
+ : `CREATE SCHEMA ${this.driver.escape(schema)}`;
451
+ upQueries.push(new Query_1.Query(upQuery));
452
+ downQueries.push(new Query_1.Query(`DROP SCHEMA ${this.driver.escape(schema)}`));
453
+ upQueries.push(new Query_1.Query(`USE ${this.driver.escape(currentDB)}`));
454
+ downQueries.push(new Query_1.Query(`USE ${this.driver.escape(dbName)}`));
455
+ }
456
+ await this.executeQueries(upQueries, downQueries);
457
+ }
458
+ /**
459
+ * Drops table schema.
460
+ * If database name also specified (e.g. 'dbName.schemaName') schema will be dropped in specified database.
461
+ *
462
+ * @param schemaPath
463
+ * @param ifExists
464
+ */
465
+ async dropSchema(schemaPath, ifExists) {
466
+ const upQueries = [];
467
+ const downQueries = [];
468
+ if (schemaPath.indexOf(".") === -1) {
469
+ const escapedQuote = schemaPath.replaceAll("'", "''");
470
+ const escapedExec = this.driver
471
+ .escape(schemaPath)
472
+ .replaceAll("'", "''");
473
+ const upQuery = ifExists
474
+ ? `IF SCHEMA_ID('${escapedQuote}') IS NOT NULL BEGIN EXEC ('DROP SCHEMA ${escapedExec}') END`
475
+ : `DROP SCHEMA ${this.driver.escape(schemaPath)}`;
476
+ upQueries.push(new Query_1.Query(upQuery));
477
+ downQueries.push(new Query_1.Query(`CREATE SCHEMA ${this.driver.escape(schemaPath)}`));
478
+ }
479
+ else {
480
+ const dbName = schemaPath.split(".")[0];
481
+ const schema = schemaPath.split(".")[1];
482
+ const escapedSchemaQuote = schema.replaceAll("'", "''");
483
+ const escapedSchemaExec = this.driver
484
+ .escape(schema)
485
+ .replaceAll("'", "''");
486
+ const currentDB = await this.getCurrentDatabase();
487
+ upQueries.push(new Query_1.Query(`USE ${this.driver.escape(dbName)}`));
488
+ downQueries.push(new Query_1.Query(`USE ${this.driver.escape(currentDB)}`));
489
+ const upQuery = ifExists
490
+ ? `IF SCHEMA_ID('${escapedSchemaQuote}') IS NOT NULL BEGIN EXEC ('DROP SCHEMA ${escapedSchemaExec}') END`
491
+ : `DROP SCHEMA ${this.driver.escape(schema)}`;
492
+ upQueries.push(new Query_1.Query(upQuery));
493
+ downQueries.push(new Query_1.Query(`CREATE SCHEMA ${this.driver.escape(schema)}`));
494
+ upQueries.push(new Query_1.Query(`USE ${this.driver.escape(currentDB)}`));
495
+ downQueries.push(new Query_1.Query(`USE ${this.driver.escape(dbName)}`));
496
+ }
497
+ await this.executeQueries(upQueries, downQueries);
498
+ }
499
+ /**
500
+ * Creates a new table.
501
+ *
502
+ * @param table
503
+ * @param ifNotExists
504
+ * @param createForeignKeys
505
+ * @param createIndices
506
+ */
507
+ async createTable(table, ifNotExists = false, createForeignKeys = true, createIndices = true) {
508
+ if (ifNotExists) {
509
+ const isTableExist = await this.hasTable(table);
510
+ if (isTableExist)
511
+ return Promise.resolve();
512
+ }
513
+ const upQueries = [];
514
+ const downQueries = [];
515
+ upQueries.push(this.createTableSql(table, createForeignKeys));
516
+ downQueries.push(this.dropTableSql(table));
517
+ // if createForeignKeys is true, we must drop created foreign keys in down query.
518
+ // createTable does not need separate method to create foreign keys, because it create fk's in the same query with table creation.
519
+ if (createForeignKeys)
520
+ table.foreignKeys.forEach((foreignKey) => downQueries.push(this.dropForeignKeySql(table, foreignKey)));
521
+ if (createIndices) {
522
+ table.indices.forEach((index) => {
523
+ // new index may be passed without name. In this case we generate index name manually.
524
+ index.name ??= this.dataSource.namingStrategy.indexName(table, index.columnNames, index.where);
525
+ upQueries.push(this.createIndexSql(table, index));
526
+ downQueries.push(this.dropIndexSql(table, index));
527
+ });
528
+ }
529
+ // if table have column with generated type, we must add the expression to the metadata table
530
+ const generatedColumns = table.columns.filter((column) => column.generatedType && column.asExpression);
531
+ if (generatedColumns.length > 0) {
532
+ const parsedTableName = this.driver.parseTableName(table);
533
+ parsedTableName.schema ??= await this.getCurrentSchema();
534
+ parsedTableName.database ??= await this.getCurrentDatabase();
535
+ for (const column of generatedColumns) {
536
+ const insertQuery = this.insertTypeormMetadataSql({
537
+ database: parsedTableName.database,
538
+ schema: parsedTableName.schema,
539
+ table: parsedTableName.tableName,
540
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
541
+ name: column.name,
542
+ value: column.asExpression,
543
+ });
544
+ const deleteQuery = this.deleteTypeormMetadataSql({
545
+ database: parsedTableName.database,
546
+ schema: parsedTableName.schema,
547
+ table: parsedTableName.tableName,
548
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
549
+ name: column.name,
550
+ });
551
+ upQueries.push(insertQuery);
552
+ downQueries.push(deleteQuery);
553
+ }
554
+ }
555
+ await this.executeQueries(upQueries, downQueries);
556
+ }
557
+ /**
558
+ * Drops the table.
559
+ *
560
+ * @param tableOrName
561
+ * @param ifExists
562
+ * @param dropForeignKeys
563
+ * @param dropIndices
564
+ */
565
+ async dropTable(tableOrName, ifExists, dropForeignKeys = true, dropIndices = true) {
566
+ if (ifExists) {
567
+ const isTableExist = await this.hasTable(tableOrName);
568
+ if (!isTableExist)
569
+ return Promise.resolve();
570
+ }
571
+ // if dropTable called with dropForeignKeys = true, we must create foreign keys in down query.
572
+ const createForeignKeys = dropForeignKeys;
573
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
574
+ ? tableOrName
575
+ : await this.getCachedTable(tableOrName);
576
+ const upQueries = [];
577
+ const downQueries = [];
578
+ // It needs because if table does not exist and dropForeignKeys or dropIndices is true, we don't need
579
+ // to perform drop queries for foreign keys and indices.
580
+ if (dropIndices) {
581
+ table.indices.forEach((index) => {
582
+ upQueries.push(this.dropIndexSql(table, index));
583
+ downQueries.push(this.createIndexSql(table, index));
584
+ });
585
+ }
586
+ // if dropForeignKeys is true, we just drop the table, otherwise we also drop table foreign keys.
587
+ // createTable does not need separate method to create foreign keys, because it create fk's in the same query with table creation.
588
+ if (dropForeignKeys)
589
+ table.foreignKeys.forEach((foreignKey) => upQueries.push(this.dropForeignKeySql(table, foreignKey)));
590
+ upQueries.push(this.dropTableSql(table));
591
+ downQueries.push(this.createTableSql(table, createForeignKeys));
592
+ // if table had columns with generated type, we must remove the expression from the metadata table
593
+ const generatedColumns = table.columns.filter((column) => column.generatedType);
594
+ if (generatedColumns.length > 0) {
595
+ const parsedTableName = this.driver.parseTableName(table);
596
+ parsedTableName.schema ??= await this.getCurrentSchema();
597
+ parsedTableName.database ??= await this.getCurrentDatabase();
598
+ for (const column of generatedColumns) {
599
+ const deleteQuery = this.deleteTypeormMetadataSql({
600
+ database: parsedTableName.database,
601
+ schema: parsedTableName.schema,
602
+ table: parsedTableName.tableName,
603
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
604
+ name: column.name,
605
+ });
606
+ upQueries.push(deleteQuery);
607
+ if (column.asExpression) {
608
+ const insertQuery = this.insertTypeormMetadataSql({
609
+ database: parsedTableName.database,
610
+ schema: parsedTableName.schema,
611
+ table: parsedTableName.tableName,
612
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
613
+ name: column.name,
614
+ value: column.asExpression,
615
+ });
616
+ downQueries.push(insertQuery);
617
+ }
618
+ }
619
+ }
620
+ await this.executeQueries(upQueries, downQueries);
621
+ }
622
+ /**
623
+ * Creates a new view.
624
+ *
625
+ * @param view
626
+ * @param syncWithMetadata
627
+ */
628
+ async createView(view, syncWithMetadata = false) {
629
+ const upQueries = [];
630
+ const downQueries = [];
631
+ upQueries.push(this.createViewSql(view));
632
+ if (syncWithMetadata)
633
+ upQueries.push(await this.insertViewDefinitionSql(view));
634
+ downQueries.push(this.dropViewSql(view));
635
+ if (syncWithMetadata)
636
+ downQueries.push(await this.deleteViewDefinitionSql(view));
637
+ await this.executeQueries(upQueries, downQueries);
638
+ }
639
+ /**
640
+ * Drops the view.
641
+ *
642
+ * @param target
643
+ * @param ifExists
644
+ */
645
+ async dropView(target, ifExists) {
646
+ const viewName = InstanceChecker_1.InstanceChecker.isView(target) ? target.name : target;
647
+ let view;
648
+ try {
649
+ view = await this.getCachedView(viewName);
650
+ }
651
+ catch {
652
+ if (ifExists)
653
+ return;
654
+ throw new error_1.TypeORMError(`View "${viewName}" does not exist.`);
655
+ }
656
+ await this.executeQueries([
657
+ await this.deleteViewDefinitionSql(view),
658
+ this.dropViewSql(view, ifExists),
659
+ ], [
660
+ await this.insertViewDefinitionSql(view),
661
+ this.createViewSql(view),
662
+ ]);
663
+ }
664
+ /**
665
+ * Renames a table.
666
+ *
667
+ * @param oldTableOrName
668
+ * @param newTableName
669
+ */
670
+ async renameTable(oldTableOrName, newTableName) {
671
+ const upQueries = [];
672
+ const downQueries = [];
673
+ const oldTable = InstanceChecker_1.InstanceChecker.isTable(oldTableOrName)
674
+ ? oldTableOrName
675
+ : await this.getCachedTable(oldTableOrName);
676
+ const newTable = oldTable.clone();
677
+ let { tableName: oldTableName, database: dbName, schema: schemaName, } = this.driver.parseTableName(oldTable.name);
678
+ dbName ??= await this.getCurrentDatabase();
679
+ schemaName ??= await this.getCurrentSchema();
680
+ newTable.name = this.driver.buildTableName(newTableName, schemaName, dbName);
681
+ // if we have tables with database which differs from database specified in config, we must change currently used database.
682
+ // This need because we can not rename objects from another database.
683
+ const currentDB = await this.getCurrentDatabase();
684
+ if (dbName && dbName !== currentDB) {
685
+ upQueries.push(new Query_1.Query(`USE "${dbName}"`));
686
+ downQueries.push(new Query_1.Query(`USE "${currentDB}"`));
687
+ }
688
+ // rename table
689
+ upQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(oldTable)}", "${newTableName}"`));
690
+ downQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(newTable)}", "${oldTableName}"`));
691
+ const hasGeneratedColumns = oldTable.columns.some((col) => col.generatedType);
692
+ let updateMetadataQuery;
693
+ let revertMetadataQuery;
694
+ if (hasGeneratedColumns) {
695
+ updateMetadataQuery = this.updateTypeormMetadataSql({
696
+ database: dbName,
697
+ schema: schemaName,
698
+ table: oldTableName,
699
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
700
+ valueToSet: { table: newTableName },
701
+ });
702
+ revertMetadataQuery = this.updateTypeormMetadataSql({
703
+ database: dbName,
704
+ schema: schemaName,
705
+ table: newTableName,
706
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
707
+ valueToSet: { table: oldTableName },
708
+ });
709
+ }
710
+ // rename primary key constraint
711
+ if (newTable.primaryColumns.length > 0 &&
712
+ !newTable.primaryColumns[0].primaryKeyConstraintName) {
713
+ const columnNames = newTable.primaryColumns.map((column) => column.name);
714
+ const oldPkName = this.dataSource.namingStrategy.primaryKeyName(oldTable, columnNames);
715
+ const newPkName = this.dataSource.namingStrategy.primaryKeyName(newTable, columnNames);
716
+ // rename primary constraint
717
+ upQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(newTable)}.${oldPkName}", "${newPkName}"`));
718
+ downQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(newTable)}.${newPkName}", "${oldPkName}"`));
719
+ }
720
+ // rename unique constraints
721
+ newTable.uniques.forEach((unique) => {
722
+ const oldUniqueName = this.dataSource.namingStrategy.uniqueConstraintName(oldTable, unique.columnNames);
723
+ // Skip renaming if Unique has user defined constraint name
724
+ if (unique.name !== oldUniqueName)
725
+ return;
726
+ // build new constraint name
727
+ const newUniqueName = this.dataSource.namingStrategy.uniqueConstraintName(newTable, unique.columnNames);
728
+ // build queries
729
+ upQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(newTable)}.${unique.name}", "${newUniqueName}"`));
730
+ downQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(newTable)}.${newUniqueName}", "${unique.name}"`));
731
+ // replace constraint name
732
+ unique.name = newUniqueName;
733
+ });
734
+ // rename index constraints
735
+ newTable.indices.forEach((index) => {
736
+ const oldIndexName = this.dataSource.namingStrategy.indexName(oldTable, index.columnNames, index.where);
737
+ // Skip renaming if Index has user defined constraint name
738
+ if (index.name !== oldIndexName)
739
+ return;
740
+ // build new constraint name
741
+ const newIndexName = this.dataSource.namingStrategy.indexName(newTable, index.columnNames, index.where);
742
+ // build queries
743
+ upQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(newTable)}.${index.name}", "${newIndexName}", "INDEX"`));
744
+ downQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(newTable)}.${newIndexName}", "${index.name}", "INDEX"`));
745
+ // replace constraint name
746
+ index.name = newIndexName;
747
+ });
748
+ // rename foreign key constraints
749
+ newTable.foreignKeys.forEach((foreignKey) => {
750
+ const oldForeignKeyName = this.dataSource.namingStrategy.foreignKeyName(oldTable, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
751
+ // Skip renaming if foreign key has user defined constraint name
752
+ if (foreignKey.name !== oldForeignKeyName)
753
+ return;
754
+ // build new constraint name
755
+ const newForeignKeyName = this.dataSource.namingStrategy.foreignKeyName(newTable, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
756
+ // build queries
757
+ upQueries.push(new Query_1.Query(`EXEC sp_rename "${this.buildForeignKeyName(foreignKey.name, schemaName, dbName)}", "${newForeignKeyName}"`));
758
+ downQueries.push(new Query_1.Query(`EXEC sp_rename "${this.buildForeignKeyName(newForeignKeyName, schemaName, dbName)}", "${foreignKey.name}"`));
759
+ // replace constraint name
760
+ foreignKey.name = newForeignKeyName;
761
+ });
762
+ // change currently used database back to default db.
763
+ if (dbName && dbName !== currentDB) {
764
+ upQueries.push(new Query_1.Query(`USE "${currentDB}"`));
765
+ downQueries.push(new Query_1.Query(`USE "${dbName}"`));
766
+ }
767
+ if (updateMetadataQuery)
768
+ upQueries.push(updateMetadataQuery);
769
+ if (revertMetadataQuery)
770
+ downQueries.push(revertMetadataQuery);
771
+ await this.executeQueries(upQueries, downQueries);
772
+ // rename old table and replace it in cached tabled;
773
+ oldTable.name = newTable.name;
774
+ this.replaceCachedTable(oldTable, newTable);
775
+ }
776
+ /**
777
+ * Creates a new column from the column in the table.
778
+ *
779
+ * @param tableOrName
780
+ * @param column
781
+ */
782
+ async addColumn(tableOrName, column) {
783
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
784
+ ? tableOrName
785
+ : await this.getCachedTable(tableOrName);
786
+ const clonedTable = table.clone();
787
+ const upQueries = [];
788
+ const downQueries = [];
789
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD ${this.buildCreateColumnSql(table, column, false, true)}`));
790
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP COLUMN "${column.name}"`));
791
+ // create or update primary key constraint
792
+ if (column.isPrimary) {
793
+ const primaryColumns = clonedTable.primaryColumns;
794
+ // if table already have primary key, me must drop it and recreate again
795
+ if (primaryColumns.length > 0) {
796
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
797
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map((column) => column.name));
798
+ const columnNames = primaryColumns
799
+ .map((column) => `"${column.name}"`)
800
+ .join(", ");
801
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
802
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
803
+ }
804
+ primaryColumns.push(column);
805
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
806
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map((column) => column.name));
807
+ const columnNames = primaryColumns
808
+ .map((column) => `"${column.name}"`)
809
+ .join(", ");
810
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
811
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
812
+ }
813
+ // create column index
814
+ const columnIndex = clonedTable.indices.find((index) => index.columnNames.length === 1 &&
815
+ index.columnNames[0] === column.name);
816
+ if (columnIndex) {
817
+ upQueries.push(this.createIndexSql(table, columnIndex));
818
+ downQueries.push(this.dropIndexSql(table, columnIndex));
819
+ }
820
+ // create unique constraint
821
+ if (column.isUnique) {
822
+ const uniqueConstraint = new TableUnique_1.TableUnique({
823
+ name: this.dataSource.namingStrategy.uniqueConstraintName(table, [column.name]),
824
+ columnNames: [column.name],
825
+ });
826
+ clonedTable.uniques.push(uniqueConstraint);
827
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${uniqueConstraint.name}" UNIQUE ("${column.name}")`));
828
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${uniqueConstraint.name}"`));
829
+ }
830
+ // remove default constraint
831
+ if (column.default !== null && column.default !== undefined) {
832
+ const defaultName = this.dataSource.namingStrategy.defaultConstraintName(table, column.name);
833
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${defaultName}"`));
834
+ }
835
+ if (column.generatedType && column.asExpression) {
836
+ const parsedTableName = this.driver.parseTableName(table);
837
+ parsedTableName.schema ??= await this.getCurrentSchema();
838
+ parsedTableName.database ??= await this.getCurrentDatabase();
839
+ const insertQuery = this.insertTypeormMetadataSql({
840
+ database: parsedTableName.database,
841
+ schema: parsedTableName.schema,
842
+ table: parsedTableName.tableName,
843
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
844
+ name: column.name,
845
+ value: column.asExpression,
846
+ });
847
+ const deleteQuery = this.deleteTypeormMetadataSql({
848
+ database: parsedTableName.database,
849
+ schema: parsedTableName.schema,
850
+ table: parsedTableName.tableName,
851
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
852
+ name: column.name,
853
+ });
854
+ upQueries.push(insertQuery);
855
+ downQueries.push(deleteQuery);
856
+ }
857
+ await this.executeQueries(upQueries, downQueries);
858
+ clonedTable.addColumn(column);
859
+ this.replaceCachedTable(table, clonedTable);
860
+ }
861
+ /**
862
+ * Creates a new columns from the column in the table.
863
+ *
864
+ * @param tableOrName
865
+ * @param columns
866
+ */
867
+ async addColumns(tableOrName, columns) {
868
+ for (const column of columns) {
869
+ await this.addColumn(tableOrName, column);
870
+ }
871
+ }
872
+ /**
873
+ * Renames column in the given table.
874
+ *
875
+ * @param tableOrName
876
+ * @param oldTableColumnOrName
877
+ * @param newTableColumnOrName
878
+ */
879
+ async renameColumn(tableOrName, oldTableColumnOrName, newTableColumnOrName) {
880
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
881
+ ? tableOrName
882
+ : await this.getCachedTable(tableOrName);
883
+ const oldColumn = InstanceChecker_1.InstanceChecker.isTableColumn(oldTableColumnOrName)
884
+ ? oldTableColumnOrName
885
+ : table.columns.find((c) => c.name === oldTableColumnOrName);
886
+ if (!oldColumn)
887
+ throw new error_1.TypeORMError(`Column "${oldTableColumnOrName}" was not found in the "${table.name}" table.`);
888
+ let newColumn;
889
+ if (InstanceChecker_1.InstanceChecker.isTableColumn(newTableColumnOrName)) {
890
+ newColumn = newTableColumnOrName;
891
+ }
892
+ else {
893
+ newColumn = oldColumn.clone();
894
+ newColumn.name = newTableColumnOrName;
895
+ }
896
+ await this.changeColumn(table, oldColumn, newColumn);
897
+ }
898
+ /**
899
+ * Changes a column in the table.
900
+ *
901
+ * @param tableOrName
902
+ * @param oldTableColumnOrName
903
+ * @param newColumn
904
+ */
905
+ async changeColumn(tableOrName, oldTableColumnOrName, newColumn) {
906
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
907
+ ? tableOrName
908
+ : await this.getCachedTable(tableOrName);
909
+ let clonedTable = table.clone();
910
+ const upQueries = [];
911
+ const downQueries = [];
912
+ const oldColumn = InstanceChecker_1.InstanceChecker.isTableColumn(oldTableColumnOrName)
913
+ ? oldTableColumnOrName
914
+ : table.columns.find((column) => column.name === oldTableColumnOrName);
915
+ if (!oldColumn)
916
+ throw new error_1.TypeORMError(`Column "${oldTableColumnOrName}" was not found in the "${table.name}" table.`);
917
+ if ((newColumn.isGenerated !== oldColumn.isGenerated &&
918
+ newColumn.generationStrategy !== "uuid") ||
919
+ newColumn.type !== oldColumn.type ||
920
+ newColumn.length !== oldColumn.length ||
921
+ newColumn.asExpression !== oldColumn.asExpression ||
922
+ newColumn.generatedType !== oldColumn.generatedType) {
923
+ // SQL Server does not support changing of IDENTITY column, so we must drop column and recreate it again.
924
+ // Also, we recreate column if column type changed
925
+ await this.dropColumn(table, oldColumn);
926
+ await this.addColumn(table, newColumn);
927
+ // update cloned table
928
+ clonedTable = table.clone();
929
+ }
930
+ else {
931
+ if (newColumn.name !== oldColumn.name) {
932
+ // we need database name and schema name to rename FK constraints
933
+ let { database: dbName, schema: schemaName, tableName, } = this.driver.parseTableName(table);
934
+ schemaName ??= await this.getCurrentSchema();
935
+ dbName ??= await this.getCurrentDatabase();
936
+ // if we have tables with database which differs from database specified in config, we must change currently used database.
937
+ // This need because we can not rename objects from another database.
938
+ const currentDB = await this.getCurrentDatabase();
939
+ if (dbName && dbName !== currentDB) {
940
+ upQueries.push(new Query_1.Query(`USE "${dbName}"`));
941
+ downQueries.push(new Query_1.Query(`USE "${currentDB}"`));
942
+ }
943
+ // rename the column
944
+ upQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(table)}.${oldColumn.name}", "${newColumn.name}"`));
945
+ downQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(table)}.${newColumn.name}", "${oldColumn.name}"`));
946
+ let updateMetadataQuery;
947
+ let revertMetadataQuery;
948
+ if (oldColumn.generatedType) {
949
+ updateMetadataQuery = this.updateTypeormMetadataSql({
950
+ database: dbName,
951
+ schema: schemaName,
952
+ table: tableName,
953
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
954
+ name: oldColumn.name,
955
+ valueToSet: { name: newColumn.name },
956
+ });
957
+ revertMetadataQuery = this.updateTypeormMetadataSql({
958
+ database: dbName,
959
+ schema: schemaName,
960
+ table: tableName,
961
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
962
+ name: newColumn.name,
963
+ valueToSet: { name: oldColumn.name },
964
+ });
965
+ }
966
+ // rename column primary key constraint
967
+ if (oldColumn.isPrimary === true &&
968
+ !oldColumn.primaryKeyConstraintName) {
969
+ const primaryColumns = clonedTable.primaryColumns;
970
+ // build old primary constraint name
971
+ const columnNames = primaryColumns.map((column) => column.name);
972
+ const oldPkName = this.dataSource.namingStrategy.primaryKeyName(clonedTable, columnNames);
973
+ // replace old column name with new column name
974
+ columnNames.splice(columnNames.indexOf(oldColumn.name), 1);
975
+ columnNames.push(newColumn.name);
976
+ // build new primary constraint name
977
+ const newPkName = this.dataSource.namingStrategy.primaryKeyName(clonedTable, columnNames);
978
+ // rename primary constraint
979
+ upQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(clonedTable)}.${oldPkName}", "${newPkName}"`));
980
+ downQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(clonedTable)}.${newPkName}", "${oldPkName}"`));
981
+ }
982
+ // rename index constraints
983
+ clonedTable.findColumnIndices(oldColumn).forEach((index) => {
984
+ const oldIndexName = this.dataSource.namingStrategy.indexName(clonedTable, index.columnNames, index.where);
985
+ // Skip renaming if Index has user defined constraint name
986
+ if (index.name !== oldIndexName)
987
+ return;
988
+ // build new constraint name
989
+ index.columnNames.splice(index.columnNames.indexOf(oldColumn.name), 1);
990
+ index.columnNames.push(newColumn.name);
991
+ const newIndexName = this.dataSource.namingStrategy.indexName(clonedTable, index.columnNames, index.where);
992
+ // build queries
993
+ upQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(clonedTable)}.${index.name}", "${newIndexName}", "INDEX"`));
994
+ downQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(clonedTable)}.${newIndexName}", "${index.name}", "INDEX"`));
995
+ // replace constraint name
996
+ index.name = newIndexName;
997
+ });
998
+ // rename foreign key constraints
999
+ clonedTable
1000
+ .findColumnForeignKeys(oldColumn)
1001
+ .forEach((foreignKey) => {
1002
+ const foreignKeyName = this.dataSource.namingStrategy.foreignKeyName(clonedTable, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
1003
+ // Skip renaming if foreign key has user defined constraint name
1004
+ if (foreignKey.name !== foreignKeyName)
1005
+ return;
1006
+ // build new constraint name
1007
+ foreignKey.columnNames.splice(foreignKey.columnNames.indexOf(oldColumn.name), 1);
1008
+ foreignKey.columnNames.push(newColumn.name);
1009
+ const newForeignKeyName = this.dataSource.namingStrategy.foreignKeyName(clonedTable, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
1010
+ // build queries
1011
+ upQueries.push(new Query_1.Query(`EXEC sp_rename "${this.buildForeignKeyName(foreignKey.name, schemaName, dbName)}", "${newForeignKeyName}"`));
1012
+ downQueries.push(new Query_1.Query(`EXEC sp_rename "${this.buildForeignKeyName(newForeignKeyName, schemaName, dbName)}", "${foreignKey.name}"`));
1013
+ // replace constraint name
1014
+ foreignKey.name = newForeignKeyName;
1015
+ });
1016
+ // rename check constraints
1017
+ clonedTable.findColumnChecks(oldColumn).forEach((check) => {
1018
+ // build new constraint name
1019
+ check.columnNames.splice(check.columnNames.indexOf(oldColumn.name), 1);
1020
+ check.columnNames.push(newColumn.name);
1021
+ const newCheckName = this.dataSource.namingStrategy.checkConstraintName(clonedTable, check.expression);
1022
+ // build queries
1023
+ upQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(clonedTable)}.${check.name}", "${newCheckName}"`));
1024
+ downQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(clonedTable)}.${newCheckName}", "${check.name}"`));
1025
+ // replace constraint name
1026
+ check.name = newCheckName;
1027
+ });
1028
+ // rename unique constraints
1029
+ clonedTable.findColumnUniques(oldColumn).forEach((unique) => {
1030
+ const oldUniqueName = this.dataSource.namingStrategy.uniqueConstraintName(clonedTable, unique.columnNames);
1031
+ // Skip renaming if Unique has user defined constraint name
1032
+ if (unique.name !== oldUniqueName)
1033
+ return;
1034
+ // build new constraint name
1035
+ unique.columnNames.splice(unique.columnNames.indexOf(oldColumn.name), 1);
1036
+ unique.columnNames.push(newColumn.name);
1037
+ const newUniqueName = this.dataSource.namingStrategy.uniqueConstraintName(clonedTable, unique.columnNames);
1038
+ // build queries
1039
+ upQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(clonedTable)}.${unique.name}", "${newUniqueName}"`));
1040
+ downQueries.push(new Query_1.Query(`EXEC sp_rename "${this.getTablePath(clonedTable)}.${newUniqueName}", "${unique.name}"`));
1041
+ // replace constraint name
1042
+ unique.name = newUniqueName;
1043
+ });
1044
+ // rename default constraints
1045
+ if (oldColumn.default !== null &&
1046
+ oldColumn.default !== undefined) {
1047
+ const oldDefaultName = this.dataSource.namingStrategy.defaultConstraintName(table, oldColumn.name);
1048
+ const newDefaultName = this.dataSource.namingStrategy.defaultConstraintName(table, newColumn.name);
1049
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${oldDefaultName}"`));
1050
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${oldDefaultName}" DEFAULT ${oldColumn.default} FOR "${newColumn.name}"`));
1051
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${newDefaultName}" DEFAULT ${oldColumn.default} FOR "${newColumn.name}"`));
1052
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${newDefaultName}"`));
1053
+ }
1054
+ // change currently used database back to default db.
1055
+ if (dbName && dbName !== currentDB) {
1056
+ upQueries.push(new Query_1.Query(`USE "${currentDB}"`));
1057
+ downQueries.push(new Query_1.Query(`USE "${dbName}"`));
1058
+ }
1059
+ if (updateMetadataQuery)
1060
+ upQueries.push(updateMetadataQuery);
1061
+ if (revertMetadataQuery)
1062
+ downQueries.push(revertMetadataQuery);
1063
+ // rename old column in the Table object
1064
+ const oldTableColumn = clonedTable.columns.find((column) => column.name === oldColumn.name);
1065
+ clonedTable.columns[clonedTable.columns.indexOf(oldTableColumn)].name = newColumn.name;
1066
+ oldColumn.name = newColumn.name;
1067
+ }
1068
+ if (this.isColumnChanged(oldColumn, newColumn, false, false, false)) {
1069
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN ${this.buildCreateColumnSql(table, newColumn, true, false, true)}`));
1070
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN ${this.buildCreateColumnSql(table, oldColumn, true, false, true)}`));
1071
+ }
1072
+ if (this.isEnumChanged(oldColumn, newColumn)) {
1073
+ const oldExpression = this.getEnumExpression(oldColumn);
1074
+ const oldCheck = new TableCheck_1.TableCheck({
1075
+ name: this.dataSource.namingStrategy.checkConstraintName(table, oldExpression, true),
1076
+ expression: oldExpression,
1077
+ });
1078
+ const newExpression = this.getEnumExpression(newColumn);
1079
+ const newCheck = new TableCheck_1.TableCheck({
1080
+ name: this.dataSource.namingStrategy.checkConstraintName(table, newExpression, true),
1081
+ expression: newExpression,
1082
+ });
1083
+ upQueries.push(this.dropCheckConstraintSql(table, oldCheck));
1084
+ upQueries.push(this.createCheckConstraintSql(table, newCheck));
1085
+ downQueries.push(this.dropCheckConstraintSql(table, newCheck));
1086
+ downQueries.push(this.createCheckConstraintSql(table, oldCheck));
1087
+ }
1088
+ if (newColumn.isPrimary !== oldColumn.isPrimary) {
1089
+ const primaryColumns = clonedTable.primaryColumns;
1090
+ // if primary column state changed, we must always drop existed constraint.
1091
+ if (primaryColumns.length > 0) {
1092
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
1093
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map((column) => column.name));
1094
+ const columnNames = primaryColumns
1095
+ .map((column) => `"${column.name}"`)
1096
+ .join(", ");
1097
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
1098
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
1099
+ }
1100
+ if (newColumn.isPrimary === true) {
1101
+ primaryColumns.push(newColumn);
1102
+ // update column in table
1103
+ const column = clonedTable.columns.find((column) => column.name === newColumn.name);
1104
+ column.isPrimary = true;
1105
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
1106
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map((column) => column.name));
1107
+ const columnNames = primaryColumns
1108
+ .map((column) => `"${column.name}"`)
1109
+ .join(", ");
1110
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
1111
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
1112
+ }
1113
+ else {
1114
+ const primaryColumn = primaryColumns.find((c) => c.name === newColumn.name);
1115
+ primaryColumns.splice(primaryColumns.indexOf(primaryColumn), 1);
1116
+ // update column in table
1117
+ const column = clonedTable.columns.find((column) => column.name === newColumn.name);
1118
+ column.isPrimary = false;
1119
+ // if we have another primary keys, we must recreate constraint.
1120
+ if (primaryColumns.length > 0) {
1121
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
1122
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map((column) => column.name));
1123
+ const columnNames = primaryColumns
1124
+ .map((column) => `"${column.name}"`)
1125
+ .join(", ");
1126
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
1127
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
1128
+ }
1129
+ }
1130
+ }
1131
+ if (newColumn.isUnique !== oldColumn.isUnique) {
1132
+ if (newColumn.isUnique === true) {
1133
+ const uniqueConstraint = new TableUnique_1.TableUnique({
1134
+ name: this.dataSource.namingStrategy.uniqueConstraintName(table, [newColumn.name]),
1135
+ columnNames: [newColumn.name],
1136
+ });
1137
+ clonedTable.uniques.push(uniqueConstraint);
1138
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${uniqueConstraint.name}" UNIQUE ("${newColumn.name}")`));
1139
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${uniqueConstraint.name}"`));
1140
+ }
1141
+ else {
1142
+ const uniqueConstraint = clonedTable.uniques.find((unique) => {
1143
+ return (unique.columnNames.length === 1 &&
1144
+ !!unique.columnNames.find((columnName) => columnName === newColumn.name));
1145
+ });
1146
+ clonedTable.uniques.splice(clonedTable.uniques.indexOf(uniqueConstraint), 1);
1147
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${uniqueConstraint.name}"`));
1148
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${uniqueConstraint.name}" UNIQUE ("${newColumn.name}")`));
1149
+ }
1150
+ }
1151
+ if (newColumn.default !== oldColumn.default) {
1152
+ // (note) if there is a previous default, we need to drop its constraint first
1153
+ if (oldColumn.default !== null &&
1154
+ oldColumn.default !== undefined) {
1155
+ const defaultName = this.dataSource.namingStrategy.defaultConstraintName(table, oldColumn.name);
1156
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${defaultName}"`));
1157
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${defaultName}" DEFAULT ${oldColumn.default} FOR "${oldColumn.name}"`));
1158
+ }
1159
+ if (newColumn.default !== null &&
1160
+ newColumn.default !== undefined) {
1161
+ const defaultName = this.dataSource.namingStrategy.defaultConstraintName(table, newColumn.name);
1162
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${defaultName}" DEFAULT ${newColumn.default} FOR "${newColumn.name}"`));
1163
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${defaultName}"`));
1164
+ }
1165
+ }
1166
+ await this.executeQueries(upQueries, downQueries);
1167
+ this.replaceCachedTable(table, clonedTable);
1168
+ }
1169
+ }
1170
+ /**
1171
+ * Changes a column in the table.
1172
+ *
1173
+ * @param tableOrName
1174
+ * @param changedColumns
1175
+ */
1176
+ async changeColumns(tableOrName, changedColumns) {
1177
+ for (const { oldColumn, newColumn } of changedColumns) {
1178
+ await this.changeColumn(tableOrName, oldColumn, newColumn);
1179
+ }
1180
+ }
1181
+ /**
1182
+ * Drops column in the table.
1183
+ *
1184
+ * @param tableOrName
1185
+ * @param columnOrName
1186
+ * @param ifExists
1187
+ */
1188
+ async dropColumn(tableOrName, columnOrName, ifExists) {
1189
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1190
+ ? tableOrName
1191
+ : await this.getCachedTable(tableOrName);
1192
+ const column = InstanceChecker_1.InstanceChecker.isTableColumn(columnOrName)
1193
+ ? columnOrName
1194
+ : table.findColumnByName(columnOrName);
1195
+ if (!column) {
1196
+ if (ifExists)
1197
+ return;
1198
+ throw new error_1.TypeORMError(`Column "${columnOrName}" was not found in table "${table.name}"`);
1199
+ }
1200
+ const clonedTable = table.clone();
1201
+ const upQueries = [];
1202
+ const downQueries = [];
1203
+ // drop primary key constraint
1204
+ if (column.isPrimary) {
1205
+ const pkName = column.primaryKeyConstraintName ??
1206
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, clonedTable.primaryColumns.map((column) => column.name));
1207
+ const columnNames = clonedTable.primaryColumns
1208
+ .map((primaryColumn) => `"${primaryColumn.name}"`)
1209
+ .join(", ");
1210
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(clonedTable)} DROP CONSTRAINT "${pkName}"`));
1211
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(clonedTable)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
1212
+ // update column in table
1213
+ const tableColumn = clonedTable.findColumnByName(column.name);
1214
+ tableColumn.isPrimary = false;
1215
+ // if primary key have multiple columns, we must recreate it without dropped column
1216
+ if (clonedTable.primaryColumns.length > 0) {
1217
+ const pkName = clonedTable.primaryColumns[0].primaryKeyConstraintName ??
1218
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, clonedTable.primaryColumns.map((column) => column.name));
1219
+ const columnNames = clonedTable.primaryColumns
1220
+ .map((primaryColumn) => `"${primaryColumn.name}"`)
1221
+ .join(", ");
1222
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(clonedTable)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
1223
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(clonedTable)} DROP CONSTRAINT "${pkName}"`));
1224
+ }
1225
+ }
1226
+ // drop column index
1227
+ const columnIndex = clonedTable.indices.find((index) => index.columnNames.length === 1 &&
1228
+ index.columnNames[0] === column.name);
1229
+ if (columnIndex) {
1230
+ clonedTable.indices.splice(clonedTable.indices.indexOf(columnIndex), 1);
1231
+ upQueries.push(this.dropIndexSql(table, columnIndex));
1232
+ downQueries.push(this.createIndexSql(table, columnIndex));
1233
+ }
1234
+ // drop column check
1235
+ const columnCheck = clonedTable.checks.find((check) => !!check.columnNames &&
1236
+ check.columnNames.length === 1 &&
1237
+ check.columnNames[0] === column.name);
1238
+ if (columnCheck) {
1239
+ clonedTable.checks.splice(clonedTable.checks.indexOf(columnCheck), 1);
1240
+ upQueries.push(this.dropCheckConstraintSql(table, columnCheck));
1241
+ downQueries.push(this.createCheckConstraintSql(table, columnCheck));
1242
+ }
1243
+ // drop column unique
1244
+ const columnUnique = clonedTable.uniques.find((unique) => unique.columnNames.length === 1 &&
1245
+ unique.columnNames[0] === column.name);
1246
+ if (columnUnique) {
1247
+ clonedTable.uniques.splice(clonedTable.uniques.indexOf(columnUnique), 1);
1248
+ upQueries.push(this.dropUniqueConstraintSql(table, columnUnique));
1249
+ downQueries.push(this.createUniqueConstraintSql(table, columnUnique));
1250
+ }
1251
+ // drop default constraint
1252
+ if (column.default !== null && column.default !== undefined) {
1253
+ const defaultName = this.dataSource.namingStrategy.defaultConstraintName(table, column.name);
1254
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${defaultName}"`));
1255
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${defaultName}" DEFAULT ${column.default} FOR "${column.name}"`));
1256
+ }
1257
+ if (column.generatedType) {
1258
+ const parsedTableName = this.driver.parseTableName(table);
1259
+ parsedTableName.schema ??= await this.getCurrentSchema();
1260
+ parsedTableName.database ??= await this.getCurrentDatabase();
1261
+ const deleteQuery = this.deleteTypeormMetadataSql({
1262
+ database: parsedTableName.database,
1263
+ schema: parsedTableName.schema,
1264
+ table: parsedTableName.tableName,
1265
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
1266
+ name: column.name,
1267
+ });
1268
+ upQueries.push(deleteQuery);
1269
+ if (column.asExpression) {
1270
+ const insertQuery = this.insertTypeormMetadataSql({
1271
+ database: parsedTableName.database,
1272
+ schema: parsedTableName.schema,
1273
+ table: parsedTableName.tableName,
1274
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
1275
+ name: column.name,
1276
+ value: column.asExpression,
1277
+ });
1278
+ downQueries.push(insertQuery);
1279
+ }
1280
+ }
1281
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP COLUMN "${column.name}"`));
1282
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD ${this.buildCreateColumnSql(table, column, false, false)}`));
1283
+ await this.executeQueries(upQueries, downQueries);
1284
+ clonedTable.removeColumn(column);
1285
+ this.replaceCachedTable(table, clonedTable);
1286
+ }
1287
+ /**
1288
+ * Drops the columns in the table.
1289
+ *
1290
+ * @param tableOrName
1291
+ * @param columns
1292
+ * @param ifExists
1293
+ */
1294
+ async dropColumns(tableOrName, columns, ifExists) {
1295
+ for (const column of [...columns]) {
1296
+ await this.dropColumn(tableOrName, column, ifExists);
1297
+ }
1298
+ }
1299
+ /**
1300
+ * Creates a new primary key.
1301
+ *
1302
+ * @param tableOrName
1303
+ * @param columnNames
1304
+ * @param constraintName
1305
+ */
1306
+ async createPrimaryKey(tableOrName, columnNames, constraintName) {
1307
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1308
+ ? tableOrName
1309
+ : await this.getCachedTable(tableOrName);
1310
+ const clonedTable = table.clone();
1311
+ const up = this.createPrimaryKeySql(table, columnNames, constraintName);
1312
+ // mark columns as primary, because dropPrimaryKeySql build constraint name from table primary column names.
1313
+ clonedTable.columns.forEach((column) => {
1314
+ if (columnNames.find((columnName) => columnName === column.name))
1315
+ column.isPrimary = true;
1316
+ });
1317
+ const down = this.dropPrimaryKeySql(clonedTable);
1318
+ await this.executeQueries(up, down);
1319
+ this.replaceCachedTable(table, clonedTable);
1320
+ }
1321
+ /**
1322
+ * Updates composite primary keys.
1323
+ *
1324
+ * @param tableOrName
1325
+ * @param columns
1326
+ */
1327
+ async updatePrimaryKeys(tableOrName, columns) {
1328
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1329
+ ? tableOrName
1330
+ : await this.getCachedTable(tableOrName);
1331
+ const clonedTable = table.clone();
1332
+ const columnNames = columns.map((column) => column.name);
1333
+ const upQueries = [];
1334
+ const downQueries = [];
1335
+ // if table already have primary columns, we must drop them.
1336
+ const primaryColumns = clonedTable.primaryColumns;
1337
+ if (primaryColumns.length > 0) {
1338
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
1339
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map((column) => column.name));
1340
+ const columnNamesString = primaryColumns
1341
+ .map((column) => `"${column.name}"`)
1342
+ .join(", ");
1343
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
1344
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNamesString})`));
1345
+ }
1346
+ // update columns in table.
1347
+ clonedTable.columns
1348
+ .filter((column) => columnNames.indexOf(column.name) !== -1)
1349
+ .forEach((column) => {
1350
+ column.isPrimary = true;
1351
+ });
1352
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
1353
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, columnNames);
1354
+ const columnNamesString = columnNames
1355
+ .map((columnName) => `"${columnName}"`)
1356
+ .join(", ");
1357
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNamesString})`));
1358
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
1359
+ await this.executeQueries(upQueries, downQueries);
1360
+ this.replaceCachedTable(table, clonedTable);
1361
+ }
1362
+ /**
1363
+ * Drops a primary key.
1364
+ *
1365
+ * @param tableOrName
1366
+ * @param constraintName
1367
+ * @param ifExists
1368
+ */
1369
+ async dropPrimaryKey(tableOrName, constraintName, ifExists) {
1370
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1371
+ ? tableOrName
1372
+ : await this.getCachedTable(tableOrName);
1373
+ if (ifExists && table.primaryColumns.length === 0)
1374
+ return;
1375
+ const up = this.dropPrimaryKeySql(table);
1376
+ const down = this.createPrimaryKeySql(table, table.primaryColumns.map((column) => column.name), constraintName);
1377
+ await this.executeQueries(up, down);
1378
+ table.primaryColumns.forEach((column) => {
1379
+ column.isPrimary = false;
1380
+ });
1381
+ }
1382
+ /**
1383
+ * Creates a new unique constraint.
1384
+ *
1385
+ * @param tableOrName
1386
+ * @param uniqueConstraint
1387
+ */
1388
+ async createUniqueConstraint(tableOrName, uniqueConstraint) {
1389
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1390
+ ? tableOrName
1391
+ : await this.getCachedTable(tableOrName);
1392
+ // new unique constraint may be passed without name. In this case we generate unique name manually.
1393
+ uniqueConstraint.name ??=
1394
+ this.dataSource.namingStrategy.uniqueConstraintName(table, uniqueConstraint.columnNames);
1395
+ const up = this.createUniqueConstraintSql(table, uniqueConstraint);
1396
+ const down = this.dropUniqueConstraintSql(table, uniqueConstraint);
1397
+ await this.executeQueries(up, down);
1398
+ table.addUniqueConstraint(uniqueConstraint);
1399
+ }
1400
+ /**
1401
+ * Creates a new unique constraints.
1402
+ *
1403
+ * @param tableOrName
1404
+ * @param uniqueConstraints
1405
+ */
1406
+ async createUniqueConstraints(tableOrName, uniqueConstraints) {
1407
+ const promises = uniqueConstraints.map((uniqueConstraint) => this.createUniqueConstraint(tableOrName, uniqueConstraint));
1408
+ await Promise.all(promises);
1409
+ }
1410
+ /**
1411
+ * Drops unique constraint.
1412
+ *
1413
+ * @param tableOrName
1414
+ * @param uniqueOrName
1415
+ * @param ifExists
1416
+ */
1417
+ async dropUniqueConstraint(tableOrName, uniqueOrName, ifExists) {
1418
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1419
+ ? tableOrName
1420
+ : await this.getCachedTable(tableOrName);
1421
+ const uniqueConstraint = InstanceChecker_1.InstanceChecker.isTableUnique(uniqueOrName)
1422
+ ? uniqueOrName
1423
+ : table.uniques.find((u) => u.name === uniqueOrName);
1424
+ if (!uniqueConstraint) {
1425
+ if (ifExists)
1426
+ return;
1427
+ throw new error_1.TypeORMError(`Supplied unique constraint was not found in table ${table.name}`);
1428
+ }
1429
+ const up = this.dropUniqueConstraintSql(table, uniqueConstraint);
1430
+ const down = this.createUniqueConstraintSql(table, uniqueConstraint);
1431
+ await this.executeQueries(up, down);
1432
+ table.removeUniqueConstraint(uniqueConstraint);
1433
+ }
1434
+ /**
1435
+ * Drops unique constraints.
1436
+ *
1437
+ * @param tableOrName
1438
+ * @param uniqueConstraints
1439
+ * @param ifExists
1440
+ */
1441
+ async dropUniqueConstraints(tableOrName, uniqueConstraints, ifExists) {
1442
+ const promises = uniqueConstraints.map((uniqueConstraint) => this.dropUniqueConstraint(tableOrName, uniqueConstraint, ifExists));
1443
+ await Promise.all(promises);
1444
+ }
1445
+ /**
1446
+ * Creates a new check constraint.
1447
+ *
1448
+ * @param tableOrName
1449
+ * @param checkConstraint
1450
+ */
1451
+ async createCheckConstraint(tableOrName, checkConstraint) {
1452
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1453
+ ? tableOrName
1454
+ : await this.getCachedTable(tableOrName);
1455
+ // new unique constraint may be passed without name. In this case we generate unique name manually.
1456
+ checkConstraint.name ??=
1457
+ this.dataSource.namingStrategy.checkConstraintName(table, checkConstraint.expression);
1458
+ const up = this.createCheckConstraintSql(table, checkConstraint);
1459
+ const down = this.dropCheckConstraintSql(table, checkConstraint);
1460
+ await this.executeQueries(up, down);
1461
+ table.addCheckConstraint(checkConstraint);
1462
+ }
1463
+ /**
1464
+ * Creates a new check constraints.
1465
+ *
1466
+ * @param tableOrName
1467
+ * @param checkConstraints
1468
+ */
1469
+ async createCheckConstraints(tableOrName, checkConstraints) {
1470
+ const promises = checkConstraints.map((checkConstraint) => this.createCheckConstraint(tableOrName, checkConstraint));
1471
+ await Promise.all(promises);
1472
+ }
1473
+ /**
1474
+ * Drops check constraint.
1475
+ *
1476
+ * @param tableOrName
1477
+ * @param checkOrName
1478
+ * @param ifExists
1479
+ */
1480
+ async dropCheckConstraint(tableOrName, checkOrName, ifExists) {
1481
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1482
+ ? tableOrName
1483
+ : await this.getCachedTable(tableOrName);
1484
+ const checkConstraint = InstanceChecker_1.InstanceChecker.isTableCheck(checkOrName)
1485
+ ? checkOrName
1486
+ : table.checks.find((c) => c.name === checkOrName);
1487
+ if (!checkConstraint) {
1488
+ if (ifExists)
1489
+ return;
1490
+ throw new error_1.TypeORMError(`Supplied check constraint was not found in table ${table.name}`);
1491
+ }
1492
+ const up = this.dropCheckConstraintSql(table, checkConstraint);
1493
+ const down = this.createCheckConstraintSql(table, checkConstraint);
1494
+ await this.executeQueries(up, down);
1495
+ table.removeCheckConstraint(checkConstraint);
1496
+ }
1497
+ /**
1498
+ * Drops check constraints.
1499
+ *
1500
+ * @param tableOrName
1501
+ * @param checkConstraints
1502
+ * @param ifExists
1503
+ */
1504
+ async dropCheckConstraints(tableOrName, checkConstraints, ifExists) {
1505
+ const promises = checkConstraints.map((checkConstraint) => this.dropCheckConstraint(tableOrName, checkConstraint, ifExists));
1506
+ await Promise.all(promises);
1507
+ }
1508
+ /**
1509
+ * Creates a new exclusion constraint.
1510
+ *
1511
+ * @param tableOrName
1512
+ * @param exclusionConstraint
1513
+ */
1514
+ async createExclusionConstraint(tableOrName, exclusionConstraint) {
1515
+ throw new error_1.TypeORMError(`SqlServer does not support exclusion constraints.`);
1516
+ }
1517
+ /**
1518
+ * Creates a new exclusion constraints.
1519
+ *
1520
+ * @param tableOrName
1521
+ * @param exclusionConstraints
1522
+ */
1523
+ async createExclusionConstraints(tableOrName, exclusionConstraints) {
1524
+ throw new error_1.TypeORMError(`SqlServer does not support exclusion constraints.`);
1525
+ }
1526
+ /**
1527
+ * Drops exclusion constraint.
1528
+ *
1529
+ * @param tableOrName
1530
+ * @param exclusionOrName
1531
+ * @param ifExists
1532
+ */
1533
+ async dropExclusionConstraint(tableOrName, exclusionOrName, ifExists) {
1534
+ throw new error_1.TypeORMError(`SqlServer does not support exclusion constraints.`);
1535
+ }
1536
+ /**
1537
+ * Drops exclusion constraints.
1538
+ *
1539
+ * @param tableOrName
1540
+ * @param exclusionConstraints
1541
+ * @param ifExists
1542
+ */
1543
+ async dropExclusionConstraints(tableOrName, exclusionConstraints, ifExists) {
1544
+ throw new error_1.TypeORMError(`SqlServer does not support exclusion constraints.`);
1545
+ }
1546
+ /**
1547
+ * Creates a new foreign key.
1548
+ *
1549
+ * @param tableOrName
1550
+ * @param foreignKey
1551
+ */
1552
+ async createForeignKey(tableOrName, foreignKey) {
1553
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1554
+ ? tableOrName
1555
+ : await this.getCachedTable(tableOrName);
1556
+ const metadata = this.dataSource.hasMetadata(table.name)
1557
+ ? this.dataSource.getMetadata(table.name)
1558
+ : undefined;
1559
+ if (metadata?.treeParentRelation &&
1560
+ metadata.treeParentRelation.isTreeParent &&
1561
+ metadata.foreignKeys.find((foreignKey) => foreignKey.onDelete !== "NO ACTION"))
1562
+ throw new error_1.TypeORMError("SqlServer does not support options in TreeParent.");
1563
+ // new FK may be passed without name. In this case we generate FK name manually.
1564
+ foreignKey.name ??= this.dataSource.namingStrategy.foreignKeyName(table, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
1565
+ const up = this.createForeignKeySql(table, foreignKey);
1566
+ const down = this.dropForeignKeySql(table, foreignKey);
1567
+ await this.executeQueries(up, down);
1568
+ table.addForeignKey(foreignKey);
1569
+ }
1570
+ /**
1571
+ * Creates a new foreign keys.
1572
+ *
1573
+ * @param tableOrName
1574
+ * @param foreignKeys
1575
+ */
1576
+ async createForeignKeys(tableOrName, foreignKeys) {
1577
+ const promises = foreignKeys.map((foreignKey) => this.createForeignKey(tableOrName, foreignKey));
1578
+ await Promise.all(promises);
1579
+ }
1580
+ /**
1581
+ * Drops a foreign key from the table.
1582
+ *
1583
+ * @param tableOrName
1584
+ * @param foreignKeyOrName
1585
+ * @param ifExists
1586
+ */
1587
+ async dropForeignKey(tableOrName, foreignKeyOrName, ifExists) {
1588
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1589
+ ? tableOrName
1590
+ : await this.getCachedTable(tableOrName);
1591
+ const foreignKey = InstanceChecker_1.InstanceChecker.isTableForeignKey(foreignKeyOrName)
1592
+ ? foreignKeyOrName
1593
+ : table.foreignKeys.find((fk) => fk.name === foreignKeyOrName);
1594
+ if (!foreignKey) {
1595
+ if (ifExists)
1596
+ return;
1597
+ throw new error_1.TypeORMError(`Supplied foreign key was not found in table ${table.name}`);
1598
+ }
1599
+ foreignKey.name ??= this.dataSource.namingStrategy.foreignKeyName(table, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
1600
+ const up = this.dropForeignKeySql(table, foreignKey);
1601
+ const down = this.createForeignKeySql(table, foreignKey);
1602
+ await this.executeQueries(up, down);
1603
+ table.removeForeignKey(foreignKey);
1604
+ }
1605
+ /**
1606
+ * Drops a foreign keys from the table.
1607
+ *
1608
+ * @param tableOrName
1609
+ * @param foreignKeys
1610
+ * @param ifExists
1611
+ */
1612
+ async dropForeignKeys(tableOrName, foreignKeys, ifExists) {
1613
+ const promises = foreignKeys.map((foreignKey) => this.dropForeignKey(tableOrName, foreignKey, ifExists));
1614
+ await Promise.all(promises);
1615
+ }
1616
+ /**
1617
+ * Creates a new index.
1618
+ *
1619
+ * @param tableOrName
1620
+ * @param index
1621
+ */
1622
+ async createIndex(tableOrName, index) {
1623
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1624
+ ? tableOrName
1625
+ : await this.getCachedTable(tableOrName);
1626
+ // new index may be passed without name. In this case we generate index name manually.
1627
+ index.name ??= this.generateIndexName(table, index);
1628
+ const up = this.createIndexSql(table, index);
1629
+ const down = this.dropIndexSql(table, index);
1630
+ await this.executeQueries(up, down);
1631
+ table.addIndex(index);
1632
+ }
1633
+ /**
1634
+ * Creates a new indices
1635
+ *
1636
+ * @param tableOrName
1637
+ * @param indices
1638
+ */
1639
+ async createIndices(tableOrName, indices) {
1640
+ const promises = indices.map((index) => this.createIndex(tableOrName, index));
1641
+ await Promise.all(promises);
1642
+ }
1643
+ /**
1644
+ * Drops an index.
1645
+ *
1646
+ * @param tableOrName
1647
+ * @param indexOrName
1648
+ * @param ifExists
1649
+ */
1650
+ async dropIndex(tableOrName, indexOrName, ifExists) {
1651
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1652
+ ? tableOrName
1653
+ : await this.getCachedTable(tableOrName);
1654
+ const index = InstanceChecker_1.InstanceChecker.isTableIndex(indexOrName)
1655
+ ? indexOrName
1656
+ : table.indices.find((i) => i.name === indexOrName);
1657
+ if (!index) {
1658
+ if (ifExists)
1659
+ return;
1660
+ throw new error_1.TypeORMError(`Supplied index was not found in table ${table.name}`);
1661
+ }
1662
+ // old index may be passed without name. In this case we generate index name manually.
1663
+ index.name ??= this.generateIndexName(table, index);
1664
+ const up = this.dropIndexSql(table, index);
1665
+ const down = this.createIndexSql(table, index);
1666
+ await this.executeQueries(up, down);
1667
+ table.removeIndex(index);
1668
+ }
1669
+ /**
1670
+ * Drops an indices from the table.
1671
+ *
1672
+ * @param tableOrName
1673
+ * @param indices
1674
+ * @param ifExists
1675
+ */
1676
+ async dropIndices(tableOrName, indices, ifExists) {
1677
+ const promises = indices.map((index) => this.dropIndex(tableOrName, index, ifExists));
1678
+ await Promise.all(promises);
1679
+ }
1680
+ /**
1681
+ * Clears all table contents.
1682
+ * Note: this operation uses SQL's TRUNCATE query which cannot be reverted in transactions.
1683
+ *
1684
+ * @param tablePath
1685
+ * @param options
1686
+ * @param options.cascade
1687
+ */
1688
+ async clearTable(tablePath, options) {
1689
+ if (options?.cascade) {
1690
+ throw new error_1.TypeORMError(`SqlServer does not support clearing table with cascade option`);
1691
+ }
1692
+ await this.query(`TRUNCATE TABLE ${this.escapePath(tablePath)}`);
1693
+ }
1694
+ /**
1695
+ * Removes all tables from the currently connected database.
1696
+ *
1697
+ * @param database
1698
+ */
1699
+ async clearDatabase(database) {
1700
+ if (database) {
1701
+ const isDatabaseExist = await this.hasDatabase(database);
1702
+ if (!isDatabaseExist)
1703
+ return Promise.resolve();
1704
+ }
1705
+ const isAnotherTransactionActive = this.isTransactionActive;
1706
+ if (!isAnotherTransactionActive)
1707
+ await this.startTransaction();
1708
+ try {
1709
+ const allViewsSql = database
1710
+ ? `SELECT * FROM "${database}"."INFORMATION_SCHEMA"."VIEWS"`
1711
+ : `SELECT * FROM "INFORMATION_SCHEMA"."VIEWS"`;
1712
+ const allViewsResults = await this.query(allViewsSql);
1713
+ await Promise.all(allViewsResults.map((viewResult) => {
1714
+ // 'DROP VIEW' does not allow specifying the database name as a prefix to the object name.
1715
+ const dropTableSql = `DROP VIEW "${viewResult["TABLE_SCHEMA"]}"."${viewResult["TABLE_NAME"]}"`;
1716
+ return this.query(dropTableSql);
1717
+ }));
1718
+ const allTablesSql = database
1719
+ ? `SELECT * FROM "${database}"."INFORMATION_SCHEMA"."TABLES" WHERE "TABLE_TYPE" = 'BASE TABLE'`
1720
+ : `SELECT * FROM "INFORMATION_SCHEMA"."TABLES" WHERE "TABLE_TYPE" = 'BASE TABLE'`;
1721
+ const allTablesResults = await this.query(allTablesSql);
1722
+ if (allTablesResults.length > 0) {
1723
+ const tablesByCatalog = allTablesResults.reduce((c, { TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME }) => {
1724
+ c[TABLE_CATALOG] = c[TABLE_CATALOG] ?? [];
1725
+ c[TABLE_CATALOG].push({ TABLE_SCHEMA, TABLE_NAME });
1726
+ return c;
1727
+ }, {});
1728
+ const foreignKeysSql = Object.entries(tablesByCatalog)
1729
+ .map(([TABLE_CATALOG, tables]) => {
1730
+ const conditions = tables
1731
+ .map(({ TABLE_SCHEMA, TABLE_NAME }) => {
1732
+ return `("fk"."referenced_object_id" = OBJECT_ID('"${TABLE_CATALOG}"."${TABLE_SCHEMA}"."${TABLE_NAME}"'))`;
1733
+ })
1734
+ .join(" OR ");
1735
+ return (`SELECT DISTINCT '${TABLE_CATALOG}' AS "TABLE_CATALOG", ` +
1736
+ `OBJECT_SCHEMA_NAME("fk"."parent_object_id", DB_ID('${TABLE_CATALOG}')) AS "TABLE_SCHEMA", ` +
1737
+ `OBJECT_NAME("fk"."parent_object_id", DB_ID('${TABLE_CATALOG}')) AS "TABLE_NAME", ` +
1738
+ `"fk"."name" AS "CONSTRAINT_NAME" ` +
1739
+ `FROM "${TABLE_CATALOG}"."sys"."foreign_keys" AS "fk" ` +
1740
+ `WHERE (${conditions})`);
1741
+ })
1742
+ .join(" UNION ALL ");
1743
+ const foreignKeys = await this.query(foreignKeysSql);
1744
+ await Promise.all(foreignKeys.map(async ({ TABLE_CATALOG, TABLE_SCHEMA, TABLE_NAME, CONSTRAINT_NAME, }) => {
1745
+ // Disable the constraint first.
1746
+ await this.query(`ALTER TABLE "${TABLE_CATALOG}"."${TABLE_SCHEMA}"."${TABLE_NAME}" ` +
1747
+ `NOCHECK CONSTRAINT "${CONSTRAINT_NAME}"`);
1748
+ await this.query(`ALTER TABLE "${TABLE_CATALOG}"."${TABLE_SCHEMA}"."${TABLE_NAME}" ` +
1749
+ `DROP CONSTRAINT "${CONSTRAINT_NAME}" -- FROM CLEAR`);
1750
+ }));
1751
+ await Promise.all(allTablesResults.map(async (tablesResult) => {
1752
+ if (tablesResult["TABLE_NAME"].startsWith("#")) {
1753
+ // don't try to drop temporary tables
1754
+ return;
1755
+ }
1756
+ const dropTableSql = `DROP TABLE "${tablesResult["TABLE_CATALOG"]}"."${tablesResult["TABLE_SCHEMA"]}"."${tablesResult["TABLE_NAME"]}"`;
1757
+ return this.query(dropTableSql);
1758
+ }));
1759
+ }
1760
+ if (database) {
1761
+ const metadataTableName = this.getTypeormMetadataTableName();
1762
+ const hasMetadataTable = await this.hasTable(metadataTableName);
1763
+ if (hasMetadataTable) {
1764
+ await this.query(`DELETE FROM ${this.escapePath(metadataTableName)} WHERE "database" = @0`, [database]);
1765
+ }
1766
+ }
1767
+ if (!isAnotherTransactionActive)
1768
+ await this.commitTransaction();
1769
+ }
1770
+ catch (error) {
1771
+ try {
1772
+ // we throw original error even if rollback thrown an error
1773
+ if (!isAnotherTransactionActive)
1774
+ await this.rollbackTransaction();
1775
+ }
1776
+ catch (rollbackError) { }
1777
+ throw error;
1778
+ }
1779
+ }
1780
+ // -------------------------------------------------------------------------
1781
+ // Protected Methods
1782
+ // -------------------------------------------------------------------------
1783
+ async loadViews(viewPaths) {
1784
+ const hasTable = await this.hasTable(this.getTypeormMetadataTableName());
1785
+ if (!hasTable) {
1786
+ return [];
1787
+ }
1788
+ viewPaths ??= [];
1789
+ const currentSchema = await this.getCurrentSchema();
1790
+ const currentDatabase = await this.getCurrentDatabase();
1791
+ const dbNames = viewPaths
1792
+ .map((viewPath) => this.driver.parseTableName(viewPath).database)
1793
+ .filter((database) => database);
1794
+ if (this.driver.database &&
1795
+ !dbNames.find((dbName) => dbName === this.driver.database))
1796
+ dbNames.push(this.driver.database);
1797
+ const viewsCondition = viewPaths
1798
+ .map((viewPath) => {
1799
+ let { schema, tableName: name } = this.driver.parseTableName(viewPath);
1800
+ schema ??= currentSchema;
1801
+ return `("T"."SCHEMA" = '${schema}' AND "T"."NAME" = '${name}')`;
1802
+ })
1803
+ .join(" OR ");
1804
+ const query = dbNames
1805
+ .map((dbName) => {
1806
+ return (`SELECT "T".*, "V"."CHECK_OPTION" FROM ${this.escapePath(this.getTypeormMetadataTableName())} "t" ` +
1807
+ `INNER JOIN "${dbName}"."INFORMATION_SCHEMA"."VIEWS" "V" ON "V"."TABLE_SCHEMA" = "T"."SCHEMA" AND "v"."TABLE_NAME" = "T"."NAME" WHERE "T"."TYPE" = '${MetadataTableType_1.MetadataTableType.VIEW}' ${viewsCondition ? `AND (${viewsCondition})` : ""}`);
1808
+ })
1809
+ .join(" UNION ALL ");
1810
+ const dbViews = await this.query(query);
1811
+ return dbViews.map((dbView) => {
1812
+ const view = new View_1.View();
1813
+ const db = dbView["TABLE_CATALOG"] === currentDatabase
1814
+ ? undefined
1815
+ : dbView["TABLE_CATALOG"];
1816
+ const schema = dbView["schema"] === currentSchema &&
1817
+ !this.driver.options.schema
1818
+ ? undefined
1819
+ : dbView["schema"];
1820
+ view.database = dbView["TABLE_CATALOG"];
1821
+ view.schema = dbView["schema"];
1822
+ view.name = this.driver.buildTableName(dbView["name"], schema, db);
1823
+ view.expression = dbView["value"];
1824
+ return view;
1825
+ });
1826
+ }
1827
+ /**
1828
+ * Loads all tables (with given names) from the database and creates a Table from them.
1829
+ *
1830
+ * @param tableNames
1831
+ */
1832
+ async loadTables(tableNames) {
1833
+ // if no tables given then no need to proceed
1834
+ if (tableNames?.length === 0) {
1835
+ return [];
1836
+ }
1837
+ const currentSchema = await this.getCurrentSchema();
1838
+ const currentDatabase = await this.getCurrentDatabase();
1839
+ const dbTables = [];
1840
+ if (!tableNames) {
1841
+ const databasesSql = `SELECT DISTINCT "name" ` +
1842
+ `FROM "master"."dbo"."sysdatabases" ` +
1843
+ `WHERE "name" NOT IN ('master', 'model', 'msdb')`;
1844
+ const dbDatabases = await this.query(databasesSql);
1845
+ const tablesSql = dbDatabases
1846
+ .map(({ name }) => {
1847
+ return (`SELECT DISTINCT "TABLE_CATALOG", "TABLE_SCHEMA", "TABLE_NAME" ` +
1848
+ `FROM "${name}"."INFORMATION_SCHEMA"."TABLES" ` +
1849
+ `WHERE "TABLE_TYPE" = 'BASE TABLE' AND ` +
1850
+ `"TABLE_CATALOG" = '${name}' AND ` +
1851
+ `ISNULL(Objectproperty(Object_id("TABLE_CATALOG" + '.' + "TABLE_SCHEMA" + '.' + "TABLE_NAME"), 'IsMSShipped'), 0) = 0`);
1852
+ })
1853
+ .join(" UNION ALL ");
1854
+ dbTables.push(...(await this.query(tablesSql)));
1855
+ }
1856
+ else {
1857
+ const tableNamesByCatalog = tableNames
1858
+ .map((tableName) => this.driver.parseTableName(tableName))
1859
+ .reduce((c, { database, ...other }) => {
1860
+ database = database ?? currentDatabase;
1861
+ c[database] = c[database] || [];
1862
+ c[database].push({
1863
+ schema: other.schema ?? currentSchema,
1864
+ tableName: other.tableName,
1865
+ });
1866
+ return c;
1867
+ }, {});
1868
+ const tablesSql = Object.entries(tableNamesByCatalog)
1869
+ .map(([database, tables]) => {
1870
+ const tablesCondition = tables
1871
+ .map(({ schema, tableName }) => {
1872
+ return `("TABLE_SCHEMA" = '${schema}' AND "TABLE_NAME" = '${tableName}')`;
1873
+ })
1874
+ .join(" OR ");
1875
+ return (`SELECT DISTINCT "TABLE_CATALOG", "TABLE_SCHEMA", "TABLE_NAME" ` +
1876
+ `FROM "${database}"."INFORMATION_SCHEMA"."TABLES" ` +
1877
+ `WHERE ` +
1878
+ `"TABLE_TYPE" = 'BASE TABLE' AND ` +
1879
+ `"TABLE_CATALOG" = '${database}' AND ` +
1880
+ `${tablesCondition}`);
1881
+ })
1882
+ .join(" UNION ALL ");
1883
+ dbTables.push(...(await this.query(tablesSql)));
1884
+ }
1885
+ // if tables were not found in the db, no need to proceed
1886
+ if (dbTables.length === 0) {
1887
+ return [];
1888
+ }
1889
+ const dbTablesByCatalog = dbTables.reduce((c, { TABLE_CATALOG, ...other }) => {
1890
+ c[TABLE_CATALOG] = c[TABLE_CATALOG] || [];
1891
+ c[TABLE_CATALOG].push(other);
1892
+ return c;
1893
+ }, {});
1894
+ const columnsSql = Object.entries(dbTablesByCatalog)
1895
+ .map(([TABLE_CATALOG, tables]) => {
1896
+ const condition = tables
1897
+ .map(({ TABLE_SCHEMA, TABLE_NAME }) => `("TABLE_SCHEMA" = '${TABLE_SCHEMA}' AND "TABLE_NAME" = '${TABLE_NAME}')`)
1898
+ .join("OR");
1899
+ return (`SELECT "COLUMNS".*, "cc"."is_persisted", "cc"."definition" ` +
1900
+ `FROM "${TABLE_CATALOG}"."INFORMATION_SCHEMA"."COLUMNS" ` +
1901
+ `LEFT JOIN "${TABLE_CATALOG}"."sys"."schemas" "ss" ON "ss"."name" = "TABLE_SCHEMA" ` +
1902
+ `LEFT JOIN "${TABLE_CATALOG}"."sys"."tables" "st" ON "st"."name" = "TABLE_NAME" ` +
1903
+ `AND "st"."schema_id" = "ss"."schema_id" ` +
1904
+ `LEFT JOIN "${TABLE_CATALOG}"."sys"."columns" "sc" ON "sc"."object_id" = "st"."object_id" ` +
1905
+ `AND "sc"."name" = "COLUMN_NAME" ` +
1906
+ `LEFT JOIN "${TABLE_CATALOG}"."sys"."computed_columns" "cc" ON "cc"."object_id" = "sc"."object_id" ` +
1907
+ `AND "cc"."column_id" = "sc"."column_id" ` +
1908
+ `WHERE (${condition})`);
1909
+ })
1910
+ .join(" UNION ALL ");
1911
+ const constraintsSql = Object.entries(dbTablesByCatalog)
1912
+ .map(([TABLE_CATALOG, tables]) => {
1913
+ const conditions = tables
1914
+ .map(({ TABLE_NAME, TABLE_SCHEMA }) => `("columnUsages"."TABLE_SCHEMA" = '${TABLE_SCHEMA}' AND "columnUsages"."TABLE_NAME" = '${TABLE_NAME}')`)
1915
+ .join(" OR ");
1916
+ return (`SELECT "columnUsages".*, "tableConstraints"."CONSTRAINT_TYPE", "chk"."definition" ` +
1917
+ `FROM "${TABLE_CATALOG}"."INFORMATION_SCHEMA"."CONSTRAINT_COLUMN_USAGE" "columnUsages" ` +
1918
+ `INNER JOIN "${TABLE_CATALOG}"."INFORMATION_SCHEMA"."TABLE_CONSTRAINTS" "tableConstraints" ` +
1919
+ `ON ` +
1920
+ `"tableConstraints"."CONSTRAINT_NAME" = "columnUsages"."CONSTRAINT_NAME" AND ` +
1921
+ `"tableConstraints"."TABLE_SCHEMA" = "columnUsages"."TABLE_SCHEMA" AND ` +
1922
+ `"tableConstraints"."TABLE_NAME" = "columnUsages"."TABLE_NAME" ` +
1923
+ `LEFT JOIN "${TABLE_CATALOG}"."sys"."check_constraints" "chk" ` +
1924
+ `ON ` +
1925
+ `"chk"."object_id" = OBJECT_ID("columnUsages"."TABLE_CATALOG" + '.' + "columnUsages"."TABLE_SCHEMA" + '.' + "columnUsages"."CONSTRAINT_NAME") ` +
1926
+ `WHERE ` +
1927
+ `(${conditions}) AND ` +
1928
+ `"tableConstraints"."CONSTRAINT_TYPE" IN ('PRIMARY KEY', 'UNIQUE', 'CHECK')`);
1929
+ })
1930
+ .join(" UNION ALL ");
1931
+ const foreignKeysSql = Object.entries(dbTablesByCatalog)
1932
+ .map(([TABLE_CATALOG, tables]) => {
1933
+ const conditions = tables
1934
+ .map(({ TABLE_NAME, TABLE_SCHEMA }) => `("s1"."name" = '${TABLE_SCHEMA}' AND "t1"."name" = '${TABLE_NAME}')`)
1935
+ .join(" OR ");
1936
+ return (`SELECT "fk"."name" AS "FK_NAME", '${TABLE_CATALOG}' AS "TABLE_CATALOG", "s1"."name" AS "TABLE_SCHEMA", "t1"."name" AS "TABLE_NAME", ` +
1937
+ `"col1"."name" AS "COLUMN_NAME", "s2"."name" AS "REF_SCHEMA", "t2"."name" AS "REF_TABLE", "col2"."name" AS "REF_COLUMN", ` +
1938
+ `"fk"."delete_referential_action_desc" AS "ON_DELETE", "fk"."update_referential_action_desc" AS "ON_UPDATE" ` +
1939
+ `FROM "${TABLE_CATALOG}"."sys"."foreign_keys" "fk" ` +
1940
+ `INNER JOIN "${TABLE_CATALOG}"."sys"."foreign_key_columns" "fkc" ON "fkc"."constraint_object_id" = "fk"."object_id" ` +
1941
+ `INNER JOIN "${TABLE_CATALOG}"."sys"."tables" "t1" ON "t1"."object_id" = "fk"."parent_object_id" ` +
1942
+ `INNER JOIN "${TABLE_CATALOG}"."sys"."schemas" "s1" ON "s1"."schema_id" = "t1"."schema_id" ` +
1943
+ `INNER JOIN "${TABLE_CATALOG}"."sys"."tables" "t2" ON "t2"."object_id" = "fk"."referenced_object_id" ` +
1944
+ `INNER JOIN "${TABLE_CATALOG}"."sys"."schemas" "s2" ON "s2"."schema_id" = "t2"."schema_id" ` +
1945
+ `INNER JOIN "${TABLE_CATALOG}"."sys"."columns" "col1" ON "col1"."column_id" = "fkc"."parent_column_id" AND "col1"."object_id" = "fk"."parent_object_id" ` +
1946
+ `INNER JOIN "${TABLE_CATALOG}"."sys"."columns" "col2" ON "col2"."column_id" = "fkc"."referenced_column_id" AND "col2"."object_id" = "fk"."referenced_object_id" ` +
1947
+ `WHERE (${conditions})`);
1948
+ })
1949
+ .join(" UNION ALL ");
1950
+ const identityColumnsSql = Object.entries(dbTablesByCatalog)
1951
+ .map(([TABLE_CATALOG, tables]) => {
1952
+ const conditions = tables
1953
+ .map(({ TABLE_NAME, TABLE_SCHEMA }) => `("TABLE_SCHEMA" = '${TABLE_SCHEMA}' AND "TABLE_NAME" = '${TABLE_NAME}')`)
1954
+ .join(" OR ");
1955
+ return (`SELECT "TABLE_CATALOG", "TABLE_SCHEMA", "COLUMN_NAME", "TABLE_NAME" ` +
1956
+ `FROM "${TABLE_CATALOG}"."INFORMATION_SCHEMA"."COLUMNS" ` +
1957
+ `WHERE ` +
1958
+ `EXISTS(SELECT 1 FROM "${TABLE_CATALOG}"."sys"."columns" "S" WHERE OBJECT_ID("TABLE_CATALOG" + '.' + "TABLE_SCHEMA" + '.' + "TABLE_NAME") = "S"."OBJECT_ID" AND "COLUMN_NAME" = "S"."NAME" AND "S"."is_identity" = 1) AND ` +
1959
+ `(${conditions})`);
1960
+ })
1961
+ .join(" UNION ALL ");
1962
+ const dbCollationsSql = `SELECT "NAME", "COLLATION_NAME" FROM "sys"."databases"`;
1963
+ const indicesSql = Object.entries(dbTablesByCatalog)
1964
+ .map(([TABLE_CATALOG, tables]) => {
1965
+ const conditions = tables
1966
+ .map(({ TABLE_NAME, TABLE_SCHEMA }) => `("s"."name" = '${TABLE_SCHEMA}' AND "t"."name" = '${TABLE_NAME}')`)
1967
+ .join(" OR ");
1968
+ return (`SELECT '${TABLE_CATALOG}' AS "TABLE_CATALOG", "s"."name" AS "TABLE_SCHEMA", "t"."name" AS "TABLE_NAME", ` +
1969
+ `"ind"."name" AS "INDEX_NAME", "col"."name" AS "COLUMN_NAME", "ind"."is_unique" AS "IS_UNIQUE", "ind"."filter_definition" as "CONDITION" ` +
1970
+ `FROM "${TABLE_CATALOG}"."sys"."indexes" "ind" ` +
1971
+ `INNER JOIN "${TABLE_CATALOG}"."sys"."index_columns" "ic" ON "ic"."object_id" = "ind"."object_id" AND "ic"."index_id" = "ind"."index_id" ` +
1972
+ `INNER JOIN "${TABLE_CATALOG}"."sys"."columns" "col" ON "col"."object_id" = "ic"."object_id" AND "col"."column_id" = "ic"."column_id" ` +
1973
+ `INNER JOIN "${TABLE_CATALOG}"."sys"."tables" "t" ON "t"."object_id" = "ind"."object_id" ` +
1974
+ `INNER JOIN "${TABLE_CATALOG}"."sys"."schemas" "s" ON "s"."schema_id" = "t"."schema_id" ` +
1975
+ `WHERE ` +
1976
+ `"ind"."is_primary_key" = 0 AND "ind"."is_unique_constraint" = 0 AND "t"."is_ms_shipped" = 0 AND ` +
1977
+ `(${conditions})`);
1978
+ })
1979
+ .join(" UNION ALL ");
1980
+ const [dbColumns, dbConstraints, dbForeignKeys, dbIdentityColumns, dbCollations, dbIndices,] = await Promise.all([
1981
+ this.query(columnsSql),
1982
+ this.query(constraintsSql),
1983
+ this.query(foreignKeysSql),
1984
+ this.query(identityColumnsSql),
1985
+ this.query(dbCollationsSql),
1986
+ this.query(indicesSql),
1987
+ ]);
1988
+ // create table schemas for loaded tables
1989
+ return await Promise.all(dbTables.map(async (dbTable) => {
1990
+ const table = new Table_1.Table();
1991
+ const getSchemaFromKey = (dbObject, key) => {
1992
+ return dbObject[key] === currentSchema &&
1993
+ (!this.driver.options.schema ||
1994
+ this.driver.options.schema === currentSchema)
1995
+ ? undefined
1996
+ : dbObject[key];
1997
+ };
1998
+ // We do not need to join schema and database names, when db or schema is by default.
1999
+ const db = dbTable["TABLE_CATALOG"] === currentDatabase
2000
+ ? undefined
2001
+ : dbTable["TABLE_CATALOG"];
2002
+ const schema = getSchemaFromKey(dbTable, "TABLE_SCHEMA");
2003
+ table.database = dbTable["TABLE_CATALOG"];
2004
+ table.schema = dbTable["TABLE_SCHEMA"];
2005
+ table.name = this.driver.buildTableName(dbTable["TABLE_NAME"], schema, db);
2006
+ const defaultCollation = dbCollations.find((dbCollation) => dbCollation["NAME"] === dbTable["TABLE_CATALOG"]);
2007
+ // create columns from the loaded columns
2008
+ table.columns = await Promise.all(dbColumns
2009
+ .filter((dbColumn) => dbColumn["TABLE_NAME"] ===
2010
+ dbTable["TABLE_NAME"] &&
2011
+ dbColumn["TABLE_SCHEMA"] ===
2012
+ dbTable["TABLE_SCHEMA"] &&
2013
+ dbColumn["TABLE_CATALOG"] ===
2014
+ dbTable["TABLE_CATALOG"])
2015
+ .map(async (dbColumn) => {
2016
+ const columnConstraints = dbConstraints.filter((dbConstraint) => dbConstraint["TABLE_NAME"] ===
2017
+ dbColumn["TABLE_NAME"] &&
2018
+ dbConstraint["TABLE_SCHEMA"] ===
2019
+ dbColumn["TABLE_SCHEMA"] &&
2020
+ dbConstraint["TABLE_CATALOG"] ===
2021
+ dbColumn["TABLE_CATALOG"] &&
2022
+ dbConstraint["COLUMN_NAME"] ===
2023
+ dbColumn["COLUMN_NAME"]);
2024
+ const uniqueConstraints = columnConstraints.filter((constraint) => constraint["CONSTRAINT_TYPE"] === "UNIQUE");
2025
+ const isConstraintComposite = uniqueConstraints.every((uniqueConstraint) => {
2026
+ return dbConstraints.some((dbConstraint) => dbConstraint["CONSTRAINT_TYPE"] ===
2027
+ "UNIQUE" &&
2028
+ dbConstraint["CONSTRAINT_NAME"] ===
2029
+ uniqueConstraint["CONSTRAINT_NAME"] &&
2030
+ dbConstraint["TABLE_SCHEMA"] ===
2031
+ dbColumn["TABLE_SCHEMA"] &&
2032
+ dbConstraint["TABLE_CATALOG"] ===
2033
+ dbColumn["TABLE_CATALOG"] &&
2034
+ dbConstraint["COLUMN_NAME"] !==
2035
+ dbColumn["COLUMN_NAME"]);
2036
+ });
2037
+ const isGenerated = !!dbIdentityColumns.find((column) => column["TABLE_NAME"] ===
2038
+ dbColumn["TABLE_NAME"] &&
2039
+ column["TABLE_SCHEMA"] ===
2040
+ dbColumn["TABLE_SCHEMA"] &&
2041
+ column["TABLE_CATALOG"] ===
2042
+ dbColumn["TABLE_CATALOG"] &&
2043
+ column["COLUMN_NAME"] ===
2044
+ dbColumn["COLUMN_NAME"]);
2045
+ const tableColumn = new TableColumn_1.TableColumn();
2046
+ tableColumn.name = dbColumn["COLUMN_NAME"];
2047
+ tableColumn.type =
2048
+ dbColumn["DATA_TYPE"].toLowerCase();
2049
+ // check only columns that have length property
2050
+ if (this.driver.withLengthColumnTypes.indexOf(tableColumn.type) !== -1 &&
2051
+ dbColumn["CHARACTER_MAXIMUM_LENGTH"]) {
2052
+ const length = dbColumn["CHARACTER_MAXIMUM_LENGTH"].toString();
2053
+ if (length === "-1") {
2054
+ tableColumn.length = "MAX";
2055
+ }
2056
+ else {
2057
+ if (tableColumn.type === "vector") {
2058
+ const len = +length;
2059
+ // NOTE: real returned length is (N*4 + 8) where N is desired dimensions
2060
+ if (!Number.isNaN(len)) {
2061
+ tableColumn.length = String((len - 8) / 4);
2062
+ }
2063
+ }
2064
+ else {
2065
+ tableColumn.length =
2066
+ !this.isDefaultColumnLength(table, tableColumn, length)
2067
+ ? length
2068
+ : "";
2069
+ }
2070
+ }
2071
+ }
2072
+ if (tableColumn.type === "decimal" ||
2073
+ tableColumn.type === "numeric") {
2074
+ if (dbColumn["NUMERIC_PRECISION"] !== null &&
2075
+ !this.isDefaultColumnPrecision(table, tableColumn, dbColumn["NUMERIC_PRECISION"]))
2076
+ tableColumn.precision =
2077
+ dbColumn["NUMERIC_PRECISION"];
2078
+ if (dbColumn["NUMERIC_SCALE"] !== null &&
2079
+ !this.isDefaultColumnScale(table, tableColumn, dbColumn["NUMERIC_SCALE"]))
2080
+ tableColumn.scale =
2081
+ dbColumn["NUMERIC_SCALE"];
2082
+ }
2083
+ if (tableColumn.type === "nvarchar") {
2084
+ // Check if this is an enum
2085
+ const columnCheckConstraints = columnConstraints.filter((constraint) => constraint["CONSTRAINT_TYPE"] ===
2086
+ "CHECK");
2087
+ if (columnCheckConstraints.length) {
2088
+ // const isEnumRegexp = new RegExp("^\\(\\[" + tableColumn.name + "\\]='[^']+'(?: OR \\[" + tableColumn.name + "\\]='[^']+')*\\)$");
2089
+ for (const checkConstraint of columnCheckConstraints) {
2090
+ if (this.isEnumCheckConstraint(checkConstraint["CONSTRAINT_NAME"])) {
2091
+ // This is an enum constraint, make column into an enum
2092
+ tableColumn.enum = [];
2093
+ const enumValueRegexp = new RegExp("\\[" +
2094
+ tableColumn.name +
2095
+ "\\]='([^']+)'", "g");
2096
+ let result;
2097
+ while ((result = enumValueRegexp.exec(checkConstraint["definition"])) !== null) {
2098
+ tableColumn.enum.unshift(result[1]);
2099
+ }
2100
+ // Skip other column constraints
2101
+ break;
2102
+ }
2103
+ }
2104
+ }
2105
+ }
2106
+ const primaryConstraint = columnConstraints.find((constraint) => constraint["CONSTRAINT_TYPE"] ===
2107
+ "PRIMARY KEY");
2108
+ if (primaryConstraint) {
2109
+ tableColumn.isPrimary = true;
2110
+ // find another columns involved in primary key constraint
2111
+ const anotherPrimaryConstraints = dbConstraints.filter((constraint) => constraint["TABLE_NAME"] ===
2112
+ dbColumn["TABLE_NAME"] &&
2113
+ constraint["TABLE_SCHEMA"] ===
2114
+ dbColumn["TABLE_SCHEMA"] &&
2115
+ constraint["TABLE_CATALOG"] ===
2116
+ dbColumn["TABLE_CATALOG"] &&
2117
+ constraint["COLUMN_NAME"] !==
2118
+ dbColumn["COLUMN_NAME"] &&
2119
+ constraint["CONSTRAINT_TYPE"] ===
2120
+ "PRIMARY KEY");
2121
+ // collect all column names
2122
+ const columnNames = anotherPrimaryConstraints.map((constraint) => constraint["COLUMN_NAME"]);
2123
+ columnNames.push(dbColumn["COLUMN_NAME"]);
2124
+ // build default primary key constraint name
2125
+ const pkName = this.dataSource.namingStrategy.primaryKeyName(table, columnNames);
2126
+ // if primary key has user-defined constraint name, write it in table column
2127
+ if (primaryConstraint["CONSTRAINT_NAME"] !==
2128
+ pkName) {
2129
+ tableColumn.primaryKeyConstraintName =
2130
+ primaryConstraint["CONSTRAINT_NAME"];
2131
+ }
2132
+ }
2133
+ tableColumn.default =
2134
+ dbColumn["COLUMN_DEFAULT"] !== null &&
2135
+ dbColumn["COLUMN_DEFAULT"] !== undefined
2136
+ ? this.removeParenthesisFromDefault(dbColumn["COLUMN_DEFAULT"])
2137
+ : undefined;
2138
+ tableColumn.isNullable =
2139
+ dbColumn["IS_NULLABLE"] === "YES";
2140
+ tableColumn.isUnique =
2141
+ uniqueConstraints.length > 0 &&
2142
+ !isConstraintComposite;
2143
+ tableColumn.isGenerated = isGenerated;
2144
+ if (isGenerated)
2145
+ tableColumn.generationStrategy = "increment";
2146
+ if (tableColumn.default === "newsequentialid()") {
2147
+ tableColumn.isGenerated = true;
2148
+ tableColumn.generationStrategy = "uuid";
2149
+ tableColumn.default = undefined;
2150
+ }
2151
+ // todo: unable to get default charset
2152
+ // tableColumn.charset = dbColumn["CHARACTER_SET_NAME"];
2153
+ if (dbColumn["COLLATION_NAME"])
2154
+ tableColumn.collation =
2155
+ dbColumn["COLLATION_NAME"] ===
2156
+ defaultCollation["COLLATION_NAME"]
2157
+ ? undefined
2158
+ : dbColumn["COLLATION_NAME"];
2159
+ if (tableColumn.type === "datetime2" ||
2160
+ tableColumn.type === "time" ||
2161
+ tableColumn.type === "datetimeoffset") {
2162
+ tableColumn.precision =
2163
+ !this.isDefaultColumnPrecision(table, tableColumn, dbColumn["DATETIME_PRECISION"])
2164
+ ? dbColumn["DATETIME_PRECISION"]
2165
+ : undefined;
2166
+ }
2167
+ if (dbColumn["is_persisted"] !== null &&
2168
+ dbColumn["is_persisted"] !== undefined &&
2169
+ dbColumn["definition"]) {
2170
+ tableColumn.generatedType =
2171
+ dbColumn["is_persisted"] === true
2172
+ ? "STORED"
2173
+ : "VIRTUAL";
2174
+ // We cannot relay on information_schema.columns.generation_expression, because it is formatted different.
2175
+ const asExpressionQuery = this.selectTypeormMetadataSql({
2176
+ database: dbTable["TABLE_CATALOG"],
2177
+ schema: dbTable["TABLE_SCHEMA"],
2178
+ table: dbTable["TABLE_NAME"],
2179
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
2180
+ name: tableColumn.name,
2181
+ });
2182
+ const results = await this.query(asExpressionQuery.query, asExpressionQuery.parameters);
2183
+ if (results[0]?.value) {
2184
+ tableColumn.asExpression = results[0].value;
2185
+ }
2186
+ else {
2187
+ tableColumn.asExpression = "";
2188
+ }
2189
+ }
2190
+ return tableColumn;
2191
+ }));
2192
+ // find unique constraints of table, group them by constraint name and build TableUnique.
2193
+ const tableUniqueConstraints = OrmUtils_1.OrmUtils.uniq(dbConstraints.filter((dbConstraint) => dbConstraint["TABLE_NAME"] ===
2194
+ dbTable["TABLE_NAME"] &&
2195
+ dbConstraint["TABLE_SCHEMA"] ===
2196
+ dbTable["TABLE_SCHEMA"] &&
2197
+ dbConstraint["TABLE_CATALOG"] ===
2198
+ dbTable["TABLE_CATALOG"] &&
2199
+ dbConstraint["CONSTRAINT_TYPE"] === "UNIQUE"), (dbConstraint) => dbConstraint["CONSTRAINT_NAME"]);
2200
+ table.uniques = tableUniqueConstraints.map((constraint) => {
2201
+ const uniques = dbConstraints.filter((dbC) => dbC["CONSTRAINT_NAME"] ===
2202
+ constraint["CONSTRAINT_NAME"]);
2203
+ return new TableUnique_1.TableUnique({
2204
+ name: constraint["CONSTRAINT_NAME"],
2205
+ columnNames: uniques.map((u) => u["COLUMN_NAME"]),
2206
+ });
2207
+ });
2208
+ // find check constraints of table, group them by constraint name and build TableCheck.
2209
+ const tableCheckConstraints = OrmUtils_1.OrmUtils.uniq(dbConstraints.filter((dbConstraint) => dbConstraint["TABLE_NAME"] ===
2210
+ dbTable["TABLE_NAME"] &&
2211
+ dbConstraint["TABLE_SCHEMA"] ===
2212
+ dbTable["TABLE_SCHEMA"] &&
2213
+ dbConstraint["TABLE_CATALOG"] ===
2214
+ dbTable["TABLE_CATALOG"] &&
2215
+ dbConstraint["CONSTRAINT_TYPE"] === "CHECK"), (dbConstraint) => dbConstraint["CONSTRAINT_NAME"]);
2216
+ table.checks = tableCheckConstraints
2217
+ .filter((constraint) => !this.isEnumCheckConstraint(constraint["CONSTRAINT_NAME"]))
2218
+ .map((constraint) => {
2219
+ const checks = dbConstraints.filter((dbC) => dbC["CONSTRAINT_NAME"] ===
2220
+ constraint["CONSTRAINT_NAME"]);
2221
+ return new TableCheck_1.TableCheck({
2222
+ name: constraint["CONSTRAINT_NAME"],
2223
+ columnNames: checks.map((c) => c["COLUMN_NAME"]),
2224
+ expression: constraint["definition"],
2225
+ });
2226
+ });
2227
+ // find foreign key constraints of table, group them by constraint name and build TableForeignKey.
2228
+ const tableForeignKeyConstraints = OrmUtils_1.OrmUtils.uniq(dbForeignKeys.filter((dbForeignKey) => dbForeignKey["TABLE_NAME"] ===
2229
+ dbTable["TABLE_NAME"] &&
2230
+ dbForeignKey["TABLE_SCHEMA"] ===
2231
+ dbTable["TABLE_SCHEMA"] &&
2232
+ dbForeignKey["TABLE_CATALOG"] ===
2233
+ dbTable["TABLE_CATALOG"]), (dbForeignKey) => dbForeignKey["FK_NAME"]);
2234
+ table.foreignKeys = tableForeignKeyConstraints.map((dbForeignKey) => {
2235
+ const foreignKeys = dbForeignKeys.filter((dbFk) => dbFk["FK_NAME"] === dbForeignKey["FK_NAME"]);
2236
+ // if referenced table located in currently used db and schema, we don't need to concat db and schema names to table name.
2237
+ const db = dbForeignKey["TABLE_CATALOG"] === currentDatabase
2238
+ ? undefined
2239
+ : dbForeignKey["TABLE_CATALOG"];
2240
+ const schema = getSchemaFromKey(dbForeignKey, "REF_SCHEMA");
2241
+ const referencedTableName = this.driver.buildTableName(dbForeignKey["REF_TABLE"], schema, db);
2242
+ return new TableForeignKey_1.TableForeignKey({
2243
+ name: dbForeignKey["FK_NAME"],
2244
+ columnNames: foreignKeys.map((dbFk) => dbFk["COLUMN_NAME"]),
2245
+ referencedDatabase: dbForeignKey["TABLE_CATALOG"],
2246
+ referencedSchema: dbForeignKey["REF_SCHEMA"],
2247
+ referencedTableName: referencedTableName,
2248
+ referencedColumnNames: foreignKeys.map((dbFk) => dbFk["REF_COLUMN"]),
2249
+ onDelete: dbForeignKey["ON_DELETE"].replace("_", " "), // SqlServer returns NO_ACTION, instead of NO ACTION
2250
+ onUpdate: dbForeignKey["ON_UPDATE"].replace("_", " "), // SqlServer returns NO_ACTION, instead of NO ACTION
2251
+ });
2252
+ });
2253
+ // find index constraints of table, group them by constraint name and build TableIndex.
2254
+ const tableIndexConstraints = OrmUtils_1.OrmUtils.uniq(dbIndices.filter((dbIndex) => dbIndex["TABLE_NAME"] === dbTable["TABLE_NAME"] &&
2255
+ dbIndex["TABLE_SCHEMA"] ===
2256
+ dbTable["TABLE_SCHEMA"] &&
2257
+ dbIndex["TABLE_CATALOG"] ===
2258
+ dbTable["TABLE_CATALOG"]), (dbIndex) => dbIndex["INDEX_NAME"]);
2259
+ table.indices = tableIndexConstraints.map((constraint) => {
2260
+ const indices = dbIndices.filter((index) => {
2261
+ return (index["TABLE_CATALOG"] ===
2262
+ constraint["TABLE_CATALOG"] &&
2263
+ index["TABLE_SCHEMA"] ===
2264
+ constraint["TABLE_SCHEMA"] &&
2265
+ index["TABLE_NAME"] === constraint["TABLE_NAME"] &&
2266
+ index["INDEX_NAME"] === constraint["INDEX_NAME"]);
2267
+ });
2268
+ return new TableIndex_1.TableIndex({
2269
+ table: table,
2270
+ name: constraint["INDEX_NAME"],
2271
+ columnNames: indices.map((i) => i["COLUMN_NAME"]),
2272
+ isUnique: constraint["IS_UNIQUE"],
2273
+ where: constraint["CONDITION"],
2274
+ });
2275
+ });
2276
+ return table;
2277
+ }));
2278
+ }
2279
+ /**
2280
+ * Builds and returns SQL for create table.
2281
+ *
2282
+ * @param table
2283
+ * @param createForeignKeys
2284
+ */
2285
+ createTableSql(table, createForeignKeys) {
2286
+ const columnDefinitions = table.columns
2287
+ .map((column) => this.buildCreateColumnSql(table, column, false, true))
2288
+ .join(", ");
2289
+ let sql = `CREATE TABLE ${this.escapePath(table)} (${columnDefinitions}`;
2290
+ table.columns
2291
+ .filter((column) => column.isUnique)
2292
+ .forEach((column) => {
2293
+ const isUniqueExist = table.uniques.some((unique) => unique.columnNames.length === 1 &&
2294
+ unique.columnNames[0] === column.name);
2295
+ if (!isUniqueExist)
2296
+ table.uniques.push(new TableUnique_1.TableUnique({
2297
+ name: this.dataSource.namingStrategy.uniqueConstraintName(table, [column.name]),
2298
+ columnNames: [column.name],
2299
+ }));
2300
+ });
2301
+ if (table.uniques.length > 0) {
2302
+ const uniquesSql = table.uniques
2303
+ .map((unique) => {
2304
+ const uniqueName = unique.name ??
2305
+ this.dataSource.namingStrategy.uniqueConstraintName(table, unique.columnNames);
2306
+ const columnNames = unique.columnNames
2307
+ .map((columnName) => `"${columnName}"`)
2308
+ .join(", ");
2309
+ return `CONSTRAINT "${uniqueName}" UNIQUE (${columnNames})`;
2310
+ })
2311
+ .join(", ");
2312
+ sql += `, ${uniquesSql}`;
2313
+ }
2314
+ if (table.checks.length > 0) {
2315
+ const checksSql = table.checks
2316
+ .map((check) => {
2317
+ const checkName = check.name ??
2318
+ this.dataSource.namingStrategy.checkConstraintName(table, check.expression);
2319
+ return `CONSTRAINT "${checkName}" CHECK (${check.expression})`;
2320
+ })
2321
+ .join(", ");
2322
+ sql += `, ${checksSql}`;
2323
+ }
2324
+ if (table.foreignKeys.length > 0 && createForeignKeys) {
2325
+ const foreignKeysSql = table.foreignKeys
2326
+ .map((fk) => {
2327
+ const columnNames = fk.columnNames
2328
+ .map((columnName) => `"${columnName}"`)
2329
+ .join(", ");
2330
+ fk.name ??= this.dataSource.namingStrategy.foreignKeyName(table, fk.columnNames, this.getTablePath(fk), fk.referencedColumnNames);
2331
+ const referencedColumnNames = fk.referencedColumnNames
2332
+ .map((columnName) => `"${columnName}"`)
2333
+ .join(", ");
2334
+ let constraint = `CONSTRAINT "${fk.name}" FOREIGN KEY (${columnNames}) REFERENCES ${this.escapePath(this.getTablePath(fk))} (${referencedColumnNames})`;
2335
+ if (fk.onDelete)
2336
+ constraint += ` ON DELETE ${fk.onDelete}`;
2337
+ if (fk.onUpdate)
2338
+ constraint += ` ON UPDATE ${fk.onUpdate}`;
2339
+ return constraint;
2340
+ })
2341
+ .join(", ");
2342
+ sql += `, ${foreignKeysSql}`;
2343
+ }
2344
+ const primaryColumns = table.columns.filter((column) => column.isPrimary);
2345
+ if (primaryColumns.length > 0) {
2346
+ const primaryKeyName = primaryColumns[0].primaryKeyConstraintName ??
2347
+ this.dataSource.namingStrategy.primaryKeyName(table, primaryColumns.map((column) => column.name));
2348
+ const columnNames = primaryColumns
2349
+ .map((column) => `"${column.name}"`)
2350
+ .join(", ");
2351
+ sql += `, CONSTRAINT "${primaryKeyName}" PRIMARY KEY (${columnNames})`;
2352
+ }
2353
+ sql += `)`;
2354
+ return new Query_1.Query(sql);
2355
+ }
2356
+ /**
2357
+ * Builds drop table sql.
2358
+ *
2359
+ * @param tableOrName
2360
+ * @param ifExists
2361
+ */
2362
+ dropTableSql(tableOrName, ifExists) {
2363
+ const query = ifExists
2364
+ ? `DROP TABLE IF EXISTS ${this.escapePath(tableOrName)}`
2365
+ : `DROP TABLE ${this.escapePath(tableOrName)}`;
2366
+ return new Query_1.Query(query);
2367
+ }
2368
+ createViewSql(view) {
2369
+ const parsedName = this.driver.parseTableName(view);
2370
+ // Can't use `escapePath` here because `CREATE VIEW` does not accept database names.
2371
+ const viewIdentifier = parsedName.schema
2372
+ ? `"${parsedName.schema}"."${parsedName.tableName}"`
2373
+ : `"${parsedName.tableName}"`;
2374
+ if (typeof view.expression === "string") {
2375
+ return new Query_1.Query(`CREATE VIEW ${viewIdentifier} AS ${view.expression}`);
2376
+ }
2377
+ else {
2378
+ return new Query_1.Query(`CREATE VIEW ${viewIdentifier} AS ${view
2379
+ .expression(this.dataSource)
2380
+ .getQuery()}`);
2381
+ }
2382
+ }
2383
+ async insertViewDefinitionSql(view) {
2384
+ const parsedTableName = this.driver.parseTableName(view);
2385
+ parsedTableName.schema ??= await this.getCurrentSchema();
2386
+ const expression = typeof view.expression === "string"
2387
+ ? view.expression.trim()
2388
+ : view.expression(this.dataSource).getQuery();
2389
+ return this.insertTypeormMetadataSql({
2390
+ type: MetadataTableType_1.MetadataTableType.VIEW,
2391
+ database: parsedTableName.database,
2392
+ schema: parsedTableName.schema,
2393
+ name: parsedTableName.tableName,
2394
+ value: expression,
2395
+ });
2396
+ }
2397
+ /**
2398
+ * Builds drop view sql.
2399
+ *
2400
+ * @param viewOrPath
2401
+ * @param ifExists
2402
+ */
2403
+ dropViewSql(viewOrPath, ifExists) {
2404
+ const query = ifExists
2405
+ ? `DROP VIEW IF EXISTS ${this.escapePath(viewOrPath)}`
2406
+ : `DROP VIEW ${this.escapePath(viewOrPath)}`;
2407
+ return new Query_1.Query(query);
2408
+ }
2409
+ /**
2410
+ * Builds remove view sql.
2411
+ *
2412
+ * @param viewOrPath
2413
+ */
2414
+ async deleteViewDefinitionSql(viewOrPath) {
2415
+ const parsedTableName = this.driver.parseTableName(viewOrPath);
2416
+ parsedTableName.schema ??= await this.getCurrentSchema();
2417
+ return this.deleteTypeormMetadataSql({
2418
+ type: MetadataTableType_1.MetadataTableType.VIEW,
2419
+ database: parsedTableName.database,
2420
+ schema: parsedTableName.schema,
2421
+ name: parsedTableName.tableName,
2422
+ });
2423
+ }
2424
+ /**
2425
+ * Builds create index sql.
2426
+ *
2427
+ * @param table
2428
+ * @param index
2429
+ */
2430
+ createIndexSql(table, index) {
2431
+ const columns = index.columnNames
2432
+ .map((columnName) => `"${columnName}"`)
2433
+ .join(", ");
2434
+ return new Query_1.Query(`CREATE ${index.isUnique ? "UNIQUE " : ""}INDEX "${index.name}" ON ${this.escapePath(table)} (${columns}) ${index.where ? "WHERE " + index.where : ""}`);
2435
+ }
2436
+ /**
2437
+ * Builds drop index sql.
2438
+ *
2439
+ * @param table
2440
+ * @param indexOrName
2441
+ */
2442
+ dropIndexSql(table, indexOrName) {
2443
+ const indexName = InstanceChecker_1.InstanceChecker.isTableIndex(indexOrName)
2444
+ ? indexOrName.name
2445
+ : indexOrName;
2446
+ return new Query_1.Query(`DROP INDEX "${indexName}" ON ${this.escapePath(table)}`);
2447
+ }
2448
+ /**
2449
+ * Builds create primary key sql.
2450
+ *
2451
+ * @param table
2452
+ * @param columnNames
2453
+ * @param constraintName
2454
+ */
2455
+ createPrimaryKeySql(table, columnNames, constraintName) {
2456
+ const primaryKeyName = constraintName ??
2457
+ this.dataSource.namingStrategy.primaryKeyName(table, columnNames);
2458
+ const columnNamesString = columnNames
2459
+ .map((columnName) => `"${columnName}"`)
2460
+ .join(", ");
2461
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${primaryKeyName}" PRIMARY KEY (${columnNamesString})`);
2462
+ }
2463
+ /**
2464
+ * Builds drop primary key sql.
2465
+ *
2466
+ * @param table
2467
+ */
2468
+ dropPrimaryKeySql(table) {
2469
+ const columnNames = table.primaryColumns.map((column) => column.name);
2470
+ const constraintName = table.primaryColumns[0].primaryKeyConstraintName;
2471
+ const primaryKeyName = constraintName ??
2472
+ this.dataSource.namingStrategy.primaryKeyName(table, columnNames);
2473
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${primaryKeyName}"`);
2474
+ }
2475
+ /**
2476
+ * Builds create unique constraint sql.
2477
+ *
2478
+ * @param table
2479
+ * @param uniqueConstraint
2480
+ */
2481
+ createUniqueConstraintSql(table, uniqueConstraint) {
2482
+ const columnNames = uniqueConstraint.columnNames
2483
+ .map((column) => `"` + column + `"`)
2484
+ .join(", ");
2485
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${uniqueConstraint.name}" UNIQUE (${columnNames})`);
2486
+ }
2487
+ /**
2488
+ * Builds drop unique constraint sql.
2489
+ *
2490
+ * @param table
2491
+ * @param uniqueOrName
2492
+ */
2493
+ dropUniqueConstraintSql(table, uniqueOrName) {
2494
+ const uniqueName = InstanceChecker_1.InstanceChecker.isTableUnique(uniqueOrName)
2495
+ ? uniqueOrName.name
2496
+ : uniqueOrName;
2497
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${uniqueName}"`);
2498
+ }
2499
+ /**
2500
+ * Builds create check constraint sql.
2501
+ *
2502
+ * @param table
2503
+ * @param checkConstraint
2504
+ */
2505
+ createCheckConstraintSql(table, checkConstraint) {
2506
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${checkConstraint.name}" CHECK (${checkConstraint.expression})`);
2507
+ }
2508
+ /**
2509
+ * Builds drop check constraint sql.
2510
+ *
2511
+ * @param table
2512
+ * @param checkOrName
2513
+ */
2514
+ dropCheckConstraintSql(table, checkOrName) {
2515
+ const checkName = InstanceChecker_1.InstanceChecker.isTableCheck(checkOrName)
2516
+ ? checkOrName.name
2517
+ : checkOrName;
2518
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${checkName}"`);
2519
+ }
2520
+ /**
2521
+ * Builds create foreign key sql.
2522
+ *
2523
+ * @param table
2524
+ * @param foreignKey
2525
+ */
2526
+ createForeignKeySql(table, foreignKey) {
2527
+ const columnNames = foreignKey.columnNames
2528
+ .map((column) => `"` + column + `"`)
2529
+ .join(", ");
2530
+ const referencedColumnNames = foreignKey.referencedColumnNames
2531
+ .map((column) => `"` + column + `"`)
2532
+ .join(",");
2533
+ let sql = `ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${foreignKey.name}" FOREIGN KEY (${columnNames}) ` +
2534
+ `REFERENCES ${this.escapePath(this.getTablePath(foreignKey))}(${referencedColumnNames})`;
2535
+ if (foreignKey.onDelete)
2536
+ sql += ` ON DELETE ${foreignKey.onDelete}`;
2537
+ if (foreignKey.onUpdate)
2538
+ sql += ` ON UPDATE ${foreignKey.onUpdate}`;
2539
+ return new Query_1.Query(sql);
2540
+ }
2541
+ /**
2542
+ * Builds drop foreign key sql.
2543
+ *
2544
+ * @param table
2545
+ * @param foreignKeyOrName
2546
+ */
2547
+ dropForeignKeySql(table, foreignKeyOrName) {
2548
+ const foreignKeyName = InstanceChecker_1.InstanceChecker.isTableForeignKey(foreignKeyOrName)
2549
+ ? foreignKeyOrName.name
2550
+ : foreignKeyOrName;
2551
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${foreignKeyName}"`);
2552
+ }
2553
+ /**
2554
+ * Escapes given table or View path.
2555
+ *
2556
+ * @param target
2557
+ */
2558
+ escapePath(target) {
2559
+ const { database, schema, tableName } = this.driver.parseTableName(target);
2560
+ if (database && database !== this.driver.database) {
2561
+ if (schema && schema !== this.driver.searchSchema) {
2562
+ return `"${database}"."${schema}"."${tableName}"`;
2563
+ }
2564
+ return `"${database}".."${tableName}"`;
2565
+ }
2566
+ if (schema && schema !== this.driver.searchSchema) {
2567
+ return `"${schema}"."${tableName}"`;
2568
+ }
2569
+ return `"${tableName}"`;
2570
+ }
2571
+ /**
2572
+ * Concat database name and schema name to the foreign key name.
2573
+ * Needs because FK name is relevant to the schema and database.
2574
+ *
2575
+ * @param fkName
2576
+ * @param schemaName
2577
+ * @param dbName
2578
+ */
2579
+ buildForeignKeyName(fkName, schemaName, dbName) {
2580
+ let joinedFkName = fkName;
2581
+ if (schemaName && schemaName !== this.driver.searchSchema)
2582
+ joinedFkName = schemaName + "." + joinedFkName;
2583
+ if (dbName && dbName !== this.driver.database)
2584
+ joinedFkName = dbName + "." + joinedFkName;
2585
+ return joinedFkName;
2586
+ }
2587
+ /**
2588
+ * Removes parenthesis around default value.
2589
+ * Sql server returns default value with parenthesis around.
2590
+ *
2591
+ * @example
2592
+ * ('My text') // for string
2593
+ * ((1)) // for number
2594
+ * (newsequentialId()) // for function
2595
+ *
2596
+ * @param defaultValue
2597
+ */
2598
+ removeParenthesisFromDefault(defaultValue) {
2599
+ if (!defaultValue.startsWith("("))
2600
+ return defaultValue;
2601
+ const end = defaultValue.lastIndexOf(")");
2602
+ if (!defaultValue.endsWith(")") || end <= 0)
2603
+ return defaultValue;
2604
+ const normalizedDefault = defaultValue.slice(1, end);
2605
+ return this.removeParenthesisFromDefault(normalizedDefault);
2606
+ }
2607
+ /**
2608
+ * Builds a query for create column.
2609
+ *
2610
+ * @param table
2611
+ * @param column
2612
+ * @param skipIdentity
2613
+ * @param createDefault
2614
+ * @param skipEnum
2615
+ */
2616
+ buildCreateColumnSql(table, column, skipIdentity, createDefault, skipEnum) {
2617
+ let c = `"${column.name}" ${this.dataSource.driver.createFullType(column)}`;
2618
+ if (!skipEnum && column.enum) {
2619
+ const expression = this.getEnumExpression(column);
2620
+ const checkName = this.dataSource.namingStrategy.checkConstraintName(table, expression, true);
2621
+ c += ` CONSTRAINT ${checkName} CHECK(${expression})`;
2622
+ }
2623
+ if (column.collation)
2624
+ c += " COLLATE " + column.collation;
2625
+ if (column.asExpression) {
2626
+ c += ` AS (${column.asExpression})`;
2627
+ if (column.generatedType === "STORED") {
2628
+ c += ` PERSISTED`;
2629
+ // NOT NULL can be specified for computed columns only if PERSISTED is also specified
2630
+ if (column.isNullable !== true)
2631
+ c += " NOT NULL";
2632
+ }
2633
+ }
2634
+ else {
2635
+ if (column.isNullable !== true)
2636
+ c += " NOT NULL";
2637
+ }
2638
+ if (column.isGenerated === true &&
2639
+ column.generationStrategy === "increment" &&
2640
+ !skipIdentity)
2641
+ // don't use skipPrimary here since updates can update already exist primary without auto inc.
2642
+ c += " IDENTITY(1,1)";
2643
+ if (column.default !== undefined &&
2644
+ column.default !== null &&
2645
+ createDefault) {
2646
+ // we create named constraint to be able to delete this constraint when column been dropped
2647
+ const defaultName = this.dataSource.namingStrategy.defaultConstraintName(table, column.name);
2648
+ c += ` CONSTRAINT "${defaultName}" DEFAULT ${column.default}`;
2649
+ }
2650
+ if (column.isGenerated &&
2651
+ column.generationStrategy === "uuid" &&
2652
+ !column.default) {
2653
+ // we create named constraint to be able to delete this constraint when column been dropped
2654
+ const defaultName = this.dataSource.namingStrategy.defaultConstraintName(table, column.name);
2655
+ c += ` CONSTRAINT "${defaultName}" DEFAULT NEWSEQUENTIALID()`;
2656
+ }
2657
+ return c;
2658
+ }
2659
+ getEnumExpression(column) {
2660
+ if (!column.enum) {
2661
+ throw new Error(`Enum is not defined in column ${column.name}`);
2662
+ }
2663
+ return (column.name +
2664
+ " IN (" +
2665
+ column.enum.map((val) => "'" + val + "'").join(",") +
2666
+ ")");
2667
+ }
2668
+ isEnumCheckConstraint(name) {
2669
+ return name.indexOf("CHK_") !== -1 && name.indexOf("_ENUM") !== -1;
2670
+ }
2671
+ /**
2672
+ * Converts MssqlParameter into real mssql parameter type.
2673
+ *
2674
+ * @param parameter
2675
+ */
2676
+ mssqlParameterToNativeParameter(parameter) {
2677
+ switch (this.driver.normalizeType({ type: parameter.type })) {
2678
+ case "bit":
2679
+ return this.driver.mssql.Bit;
2680
+ case "bigint":
2681
+ return this.driver.mssql.BigInt;
2682
+ case "decimal":
2683
+ return this.driver.mssql.Decimal(...parameter.params);
2684
+ case "float":
2685
+ return this.driver.mssql.Float;
2686
+ case "int":
2687
+ return this.driver.mssql.Int;
2688
+ case "money":
2689
+ return this.driver.mssql.Money;
2690
+ case "numeric":
2691
+ return this.driver.mssql.Numeric(...parameter.params);
2692
+ case "smallint":
2693
+ return this.driver.mssql.SmallInt;
2694
+ case "smallmoney":
2695
+ return this.driver.mssql.SmallMoney;
2696
+ case "real":
2697
+ return this.driver.mssql.Real;
2698
+ case "tinyint":
2699
+ return this.driver.mssql.TinyInt;
2700
+ case "char":
2701
+ if (this.driver.options.options
2702
+ ?.disableAsciiToUnicodeParamConversion) {
2703
+ return this.driver.mssql.Char(...parameter.params);
2704
+ }
2705
+ return this.driver.mssql.NChar(...parameter.params);
2706
+ case "nchar":
2707
+ return this.driver.mssql.NChar(...parameter.params);
2708
+ case "text":
2709
+ if (this.driver.options.options
2710
+ ?.disableAsciiToUnicodeParamConversion) {
2711
+ return this.driver.mssql.Text;
2712
+ }
2713
+ return this.driver.mssql.Ntext;
2714
+ case "ntext":
2715
+ return this.driver.mssql.Ntext;
2716
+ case "varchar":
2717
+ if (this.driver.options.options
2718
+ ?.disableAsciiToUnicodeParamConversion) {
2719
+ return this.driver.mssql.VarChar(...parameter.params);
2720
+ }
2721
+ return this.driver.mssql.NVarChar(...parameter.params);
2722
+ case "nvarchar":
2723
+ return this.driver.mssql.NVarChar(...parameter.params);
2724
+ case "xml":
2725
+ return this.driver.mssql.Xml;
2726
+ case "time":
2727
+ return this.driver.mssql.Time(...parameter.params);
2728
+ case "date":
2729
+ return this.driver.mssql.Date;
2730
+ case "datetime":
2731
+ return this.driver.mssql.DateTime;
2732
+ case "datetime2":
2733
+ return this.driver.mssql.DateTime2(...parameter.params);
2734
+ case "datetimeoffset":
2735
+ return this.driver.mssql.DateTimeOffset(...parameter.params);
2736
+ case "smalldatetime":
2737
+ return this.driver.mssql.SmallDateTime;
2738
+ case "uniqueidentifier":
2739
+ return this.driver.mssql.UniqueIdentifier;
2740
+ case "variant":
2741
+ return this.driver.mssql.Variant;
2742
+ case "binary":
2743
+ return this.driver.mssql.Binary;
2744
+ case "varbinary":
2745
+ return this.driver.mssql.VarBinary(...parameter.params);
2746
+ case "image":
2747
+ return this.driver.mssql.Image;
2748
+ case "udt":
2749
+ return this.driver.mssql.UDT;
2750
+ case "rowversion":
2751
+ return this.driver.mssql.RowVersion;
2752
+ case "vector":
2753
+ return this.driver.mssql.Ntext;
2754
+ }
2755
+ }
2756
+ /**
2757
+ * Change table comment.
2758
+ *
2759
+ * @param tableOrName
2760
+ * @param comment
2761
+ */
2762
+ changeTableComment(tableOrName, comment) {
2763
+ throw new error_1.TypeORMError(`sqlserver driver does not support change table comment.`);
2764
+ }
2765
+ }
2766
+ exports.SqlServerQueryRunner = SqlServerQueryRunner;
2767
+ //# sourceMappingURL=SqlServerQueryRunner.js.map