@lakutata/orm 3.0.0-beta.6 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (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,2755 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CockroachQueryRunner = 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 QueryResult_1 = require("../../query-runner/QueryResult");
11
+ const Table_1 = require("../../schema-builder/table/Table");
12
+ const TableCheck_1 = require("../../schema-builder/table/TableCheck");
13
+ const TableColumn_1 = require("../../schema-builder/table/TableColumn");
14
+ const TableExclusion_1 = require("../../schema-builder/table/TableExclusion");
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 VersionUtils_1 = require("../../util/VersionUtils");
24
+ const Query_1 = require("../Query");
25
+ const validate_isolation_level_1 = require("../validate-isolation-level");
26
+ const MetadataTableType_1 = require("../types/MetadataTableType");
27
+ /**
28
+ * Runs queries on a single postgres database connection.
29
+ */
30
+ class CockroachQueryRunner extends BaseQueryRunner_1.BaseQueryRunner {
31
+ // -------------------------------------------------------------------------
32
+ // Constructor
33
+ // -------------------------------------------------------------------------
34
+ constructor(driver, mode) {
35
+ super();
36
+ /**
37
+ * Stores all executed queries to be able to run them again if transaction fails.
38
+ */
39
+ this.queries = [];
40
+ /**
41
+ * Indicates if running queries must be stored
42
+ */
43
+ this.storeQueries = false;
44
+ /**
45
+ * Current number of transaction retries in case of 40001 error.
46
+ */
47
+ this.transactionRetries = 0;
48
+ this.driver = driver;
49
+ this.dataSource = driver.dataSource;
50
+ this.mode = mode;
51
+ this.broadcaster = new Broadcaster_1.Broadcaster(this);
52
+ }
53
+ // -------------------------------------------------------------------------
54
+ // Public Methods
55
+ // -------------------------------------------------------------------------
56
+ /**
57
+ * Creates/uses database connection from the connection pool to perform further operations.
58
+ * Returns obtained database connection.
59
+ */
60
+ connect() {
61
+ if (this.databaseConnection)
62
+ return Promise.resolve(this.databaseConnection);
63
+ if (this.databaseConnectionPromise)
64
+ return this.databaseConnectionPromise;
65
+ if (this.mode === "slave" && this.driver.isReplicated) {
66
+ this.databaseConnectionPromise = this.driver
67
+ .obtainSlaveConnection()
68
+ .then(([connection, release]) => {
69
+ this.driver.connectedQueryRunners.push(this);
70
+ this.databaseConnection = connection;
71
+ const onErrorCallback = (err) => this.releaseConnection(err);
72
+ this.releaseCallback = (err) => {
73
+ this.databaseConnection.removeListener("error", onErrorCallback);
74
+ release(err);
75
+ };
76
+ this.databaseConnection.on("error", onErrorCallback);
77
+ return this.databaseConnection;
78
+ });
79
+ }
80
+ else {
81
+ // master
82
+ this.databaseConnectionPromise = this.driver
83
+ .obtainMasterConnection()
84
+ .then(([connection, release]) => {
85
+ this.driver.connectedQueryRunners.push(this);
86
+ this.databaseConnection = connection;
87
+ const onErrorCallback = (err) => this.releaseConnection(err);
88
+ this.releaseCallback = (err) => {
89
+ this.databaseConnection.removeListener("error", onErrorCallback);
90
+ release(err);
91
+ };
92
+ this.databaseConnection.on("error", onErrorCallback);
93
+ return this.databaseConnection;
94
+ });
95
+ }
96
+ return this.databaseConnectionPromise;
97
+ }
98
+ /**
99
+ * Release a connection back to the pool, optionally specifying an Error to release with.
100
+ * Per pg-pool documentation this will prevent the pool from re-using the broken connection.
101
+ *
102
+ * @param err
103
+ */
104
+ async releaseConnection(err) {
105
+ if (this.isReleased) {
106
+ return;
107
+ }
108
+ this.isReleased = true;
109
+ if (this.releaseCallback) {
110
+ this.releaseCallback(err);
111
+ this.releaseCallback = undefined;
112
+ }
113
+ const index = this.driver.connectedQueryRunners.indexOf(this);
114
+ if (index !== -1) {
115
+ this.driver.connectedQueryRunners.splice(index, 1);
116
+ }
117
+ }
118
+ /**
119
+ * Releases used database connection.
120
+ * You cannot use query runner methods once its released.
121
+ */
122
+ release() {
123
+ return this.releaseConnection();
124
+ }
125
+ /**
126
+ * Starts transaction.
127
+ *
128
+ * @param isolationLevel
129
+ */
130
+ async startTransaction(isolationLevel) {
131
+ isolationLevel ??= this.dataSource.options.isolationLevel;
132
+ (0, validate_isolation_level_1.validateIsolationLevel)(this.driver.supportedIsolationLevels, isolationLevel);
133
+ this.isTransactionActive = true;
134
+ this.transactionRetries = 0;
135
+ try {
136
+ await this.broadcaster.broadcast("BeforeTransactionStart");
137
+ }
138
+ catch (err) {
139
+ this.isTransactionActive = false;
140
+ throw err;
141
+ }
142
+ if (this.transactionDepth === 0) {
143
+ await this.query("START TRANSACTION");
144
+ await this.query("SAVEPOINT cockroach_restart");
145
+ if (isolationLevel) {
146
+ await this.query("SET TRANSACTION ISOLATION LEVEL " + isolationLevel);
147
+ }
148
+ }
149
+ else {
150
+ await this.query(`SAVEPOINT typeorm_${this.transactionDepth}`);
151
+ }
152
+ this.transactionDepth += 1;
153
+ this.storeQueries = true;
154
+ await this.broadcaster.broadcast("AfterTransactionStart");
155
+ }
156
+ /**
157
+ * Commits transaction.
158
+ * Error will be thrown if transaction was not started.
159
+ */
160
+ async commitTransaction() {
161
+ if (!this.isTransactionActive)
162
+ throw new TransactionNotStartedError_1.TransactionNotStartedError();
163
+ await this.broadcaster.broadcast("BeforeTransactionCommit");
164
+ if (this.transactionDepth > 1) {
165
+ await this.query(`RELEASE SAVEPOINT typeorm_${this.transactionDepth - 1}`);
166
+ this.transactionDepth -= 1;
167
+ }
168
+ else {
169
+ this.storeQueries = false;
170
+ await this.query("RELEASE SAVEPOINT cockroach_restart");
171
+ await this.query("COMMIT");
172
+ this.queries = [];
173
+ this.isTransactionActive = false;
174
+ this.transactionRetries = 0;
175
+ this.transactionDepth -= 1;
176
+ }
177
+ await this.broadcaster.broadcast("AfterTransactionCommit");
178
+ }
179
+ /**
180
+ * Rollbacks transaction.
181
+ * Error will be thrown if transaction was not started.
182
+ */
183
+ async rollbackTransaction() {
184
+ if (!this.isTransactionActive)
185
+ throw new TransactionNotStartedError_1.TransactionNotStartedError();
186
+ await this.broadcaster.broadcast("BeforeTransactionRollback");
187
+ if (this.transactionDepth > 1) {
188
+ await this.query(`ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth - 1}`);
189
+ }
190
+ else {
191
+ this.storeQueries = false;
192
+ await this.query("ROLLBACK");
193
+ this.queries = [];
194
+ this.isTransactionActive = false;
195
+ this.transactionRetries = 0;
196
+ }
197
+ this.transactionDepth -= 1;
198
+ await this.broadcaster.broadcast("AfterTransactionRollback");
199
+ }
200
+ /**
201
+ * Executes a given SQL query.
202
+ *
203
+ * @param query
204
+ * @param parameters
205
+ * @param useStructuredResult
206
+ */
207
+ async query(query, parameters, useStructuredResult = false) {
208
+ if (this.isReleased)
209
+ throw new QueryRunnerAlreadyReleasedError_1.QueryRunnerAlreadyReleasedError();
210
+ if (parameters && !Array.isArray(parameters))
211
+ throw new NamedPlaceholdersNotSupportedError_1.NamedPlaceholdersNotSupportedError();
212
+ const databaseConnection = await this.connect();
213
+ this.driver.dataSource.logger.logQuery(query, parameters, this);
214
+ await this.broadcaster.broadcast("BeforeQuery", query, parameters);
215
+ const broadcasterResult = new BroadcasterResult_1.BroadcasterResult();
216
+ const queryStartTime = Date.now();
217
+ if (this.isTransactionActive && this.storeQueries) {
218
+ this.queries.push({ query, parameters, useStructuredResult });
219
+ }
220
+ try {
221
+ const raw = await new Promise((ok, fail) => {
222
+ databaseConnection.query(query, parameters, (err, raw) => (err ? fail(err) : ok(raw)));
223
+ });
224
+ // log slow queries if maxQueryExecution time is set
225
+ const maxQueryExecutionTime = this.driver.options.maxQueryExecutionTime;
226
+ const queryEndTime = Date.now();
227
+ const queryExecutionTime = queryEndTime - queryStartTime;
228
+ if (maxQueryExecutionTime &&
229
+ queryExecutionTime > maxQueryExecutionTime) {
230
+ this.driver.dataSource.logger.logQuerySlow(queryExecutionTime, query, parameters, this);
231
+ }
232
+ const result = new QueryResult_1.QueryResult();
233
+ if (raw.hasOwnProperty("rowCount")) {
234
+ result.affected = raw.rowCount;
235
+ }
236
+ if (raw.hasOwnProperty("rows")) {
237
+ result.records = raw.rows;
238
+ }
239
+ switch (raw.command) {
240
+ case "DELETE":
241
+ // for DELETE query additionally return number of affected rows
242
+ result.raw = [raw.rows, raw.rowCount];
243
+ break;
244
+ default:
245
+ result.raw = raw.rows;
246
+ }
247
+ this.broadcaster.broadcastAfterQueryEvent(broadcasterResult, query, parameters, true, queryExecutionTime, raw, undefined);
248
+ if (useStructuredResult) {
249
+ return result;
250
+ }
251
+ else {
252
+ return result.raw;
253
+ }
254
+ }
255
+ catch (err) {
256
+ if (err.code === "40001" &&
257
+ this.isTransactionActive &&
258
+ this.transactionRetries <
259
+ (this.driver.options.maxTransactionRetries ?? 5)) {
260
+ this.transactionRetries += 1;
261
+ this.storeQueries = false;
262
+ await this.query("ROLLBACK TO SAVEPOINT cockroach_restart");
263
+ const sleepTime = 2 ** this.transactionRetries *
264
+ 0.1 *
265
+ (Math.random() + 0.5) *
266
+ 1000;
267
+ await new Promise((resolve) => setTimeout(resolve, sleepTime));
268
+ let result = undefined;
269
+ for (const q of this.queries) {
270
+ this.driver.dataSource.logger.logQuery(`Retrying transaction for query "${q.query}"`, q.parameters, this);
271
+ result = await this.query(q.query, q.parameters, q.useStructuredResult);
272
+ }
273
+ this.transactionRetries = 0;
274
+ this.storeQueries = true;
275
+ return result;
276
+ }
277
+ else {
278
+ this.driver.dataSource.logger.logQueryError(err, query, parameters, this);
279
+ this.broadcaster.broadcastAfterQueryEvent(broadcasterResult, query, parameters, false, undefined, undefined, err);
280
+ throw new QueryFailedError_1.QueryFailedError(query, parameters, err);
281
+ }
282
+ }
283
+ finally {
284
+ await broadcasterResult.wait();
285
+ }
286
+ }
287
+ /**
288
+ * Returns raw data stream.
289
+ *
290
+ * @param query
291
+ * @param parameters
292
+ * @param onEnd
293
+ * @param onError
294
+ */
295
+ async stream(query, parameters, onEnd, onError) {
296
+ const QueryStream = this.driver.loadStreamDependency();
297
+ if (this.isReleased) {
298
+ throw new QueryRunnerAlreadyReleasedError_1.QueryRunnerAlreadyReleasedError();
299
+ }
300
+ const databaseConnection = await this.connect();
301
+ this.driver.dataSource.logger.logQuery(query, parameters, this);
302
+ const stream = databaseConnection.query(new QueryStream(query, parameters));
303
+ if (onEnd) {
304
+ stream.on("end", onEnd);
305
+ }
306
+ if (onError) {
307
+ stream.on("error", onError);
308
+ }
309
+ return stream;
310
+ }
311
+ /**
312
+ * Returns all available database names including system databases.
313
+ */
314
+ async getDatabases() {
315
+ return Promise.resolve([]);
316
+ }
317
+ /**
318
+ * Returns all available schema names including system schemas.
319
+ * If database parameter specified, returns schemas of that database.
320
+ *
321
+ * @param database
322
+ */
323
+ async getSchemas(database) {
324
+ return Promise.resolve([]);
325
+ }
326
+ /**
327
+ * Checks if database with the given name exist.
328
+ *
329
+ * @param database
330
+ */
331
+ async hasDatabase(database) {
332
+ const result = await this.query(`SELECT * FROM "pg_database" WHERE "datname" = $1`, [database]);
333
+ return result.length ? true : false;
334
+ }
335
+ /**
336
+ * Loads currently using database
337
+ */
338
+ async getCurrentDatabase() {
339
+ const query = await this.query(`SELECT * FROM current_database()`);
340
+ return query[0]["current_database"];
341
+ }
342
+ /**
343
+ * Checks if schema with the given name exist.
344
+ *
345
+ * @param schema
346
+ */
347
+ async hasSchema(schema) {
348
+ const result = await this.query(`SELECT * FROM "information_schema"."schemata" WHERE "schema_name" = $1`, [schema]);
349
+ return result.length ? true : false;
350
+ }
351
+ /**
352
+ * Loads currently using database schema
353
+ */
354
+ async getCurrentSchema() {
355
+ const query = await this.query(`SELECT * FROM current_schema()`);
356
+ return query[0]["current_schema"];
357
+ }
358
+ /**
359
+ * Checks if table with the given name exist in the database.
360
+ *
361
+ * @param tableOrName
362
+ */
363
+ async hasTable(tableOrName) {
364
+ const parsedTableName = this.driver.parseTableName(tableOrName);
365
+ parsedTableName.schema ??= await this.getCurrentSchema();
366
+ const sql = `SELECT * FROM "information_schema"."tables" WHERE "table_schema" = $1 AND "table_name" = $2`;
367
+ const result = await this.query(sql, [
368
+ parsedTableName.schema,
369
+ parsedTableName.tableName,
370
+ ]);
371
+ return result.length ? true : false;
372
+ }
373
+ /**
374
+ * Checks if column with the given name exist in the given table.
375
+ *
376
+ * @param tableOrName
377
+ * @param columnName
378
+ */
379
+ async hasColumn(tableOrName, columnName) {
380
+ const parsedTableName = this.driver.parseTableName(tableOrName);
381
+ parsedTableName.schema ??= await this.getCurrentSchema();
382
+ const sql = `SELECT * FROM "information_schema"."columns" WHERE "table_schema" = $1 AND "table_name" = $2 AND "column_name" = $3`;
383
+ const result = await this.query(sql, [
384
+ parsedTableName.schema,
385
+ parsedTableName.tableName,
386
+ columnName,
387
+ ]);
388
+ return result.length ? true : false;
389
+ }
390
+ /**
391
+ * Creates a new database.
392
+ *
393
+ * @param database
394
+ * @param ifNotExists
395
+ */
396
+ async createDatabase(database, ifNotExists) {
397
+ const up = `CREATE DATABASE ${ifNotExists ? "IF NOT EXISTS " : ""} ${this.driver.escape(database)}`;
398
+ const down = `DROP DATABASE ${this.driver.escape(database)}`;
399
+ await this.executeQueries(new Query_1.Query(up), new Query_1.Query(down));
400
+ }
401
+ /**
402
+ * Drops database.
403
+ *
404
+ * @param database
405
+ * @param ifExists
406
+ */
407
+ async dropDatabase(database, ifExists) {
408
+ const up = `DROP DATABASE ${ifExists ? "IF EXISTS " : ""} ${this.driver.escape(database)}`;
409
+ const down = `CREATE DATABASE ${this.driver.escape(database)}`;
410
+ await this.executeQueries(new Query_1.Query(up), new Query_1.Query(down));
411
+ }
412
+ /**
413
+ * Creates a new table schema.
414
+ *
415
+ * @param schemaPath
416
+ * @param ifNotExists
417
+ */
418
+ async createSchema(schemaPath, ifNotExists) {
419
+ const schema = schemaPath.indexOf(".") === -1
420
+ ? schemaPath
421
+ : schemaPath.split(".")[1];
422
+ const escapedSchema = this.driver.escape(schema);
423
+ const up = ifNotExists
424
+ ? `CREATE SCHEMA IF NOT EXISTS ${escapedSchema}`
425
+ : `CREATE SCHEMA ${escapedSchema}`;
426
+ const down = `DROP SCHEMA ${escapedSchema} CASCADE`;
427
+ await this.executeQueries(new Query_1.Query(up), new Query_1.Query(down));
428
+ }
429
+ /**
430
+ * Drops table schema.
431
+ *
432
+ * @param schemaPath
433
+ * @param ifExists
434
+ * @param isCascade
435
+ */
436
+ async dropSchema(schemaPath, ifExists, isCascade) {
437
+ const schema = schemaPath.indexOf(".") === -1
438
+ ? schemaPath
439
+ : schemaPath.split(".")[1];
440
+ const escapedSchema = this.driver.escape(schema);
441
+ const up = ifExists
442
+ ? `DROP SCHEMA IF EXISTS ${escapedSchema} ${isCascade ? "CASCADE" : ""}`
443
+ : `DROP SCHEMA ${escapedSchema} ${isCascade ? "CASCADE" : ""}`;
444
+ const down = `CREATE SCHEMA ${escapedSchema}`;
445
+ await this.executeQueries(new Query_1.Query(up), new Query_1.Query(down));
446
+ }
447
+ /**
448
+ * Creates a new table.
449
+ *
450
+ * @param table
451
+ * @param ifNotExists
452
+ * @param createForeignKeys
453
+ * @param createIndices
454
+ */
455
+ async createTable(table, ifNotExists = false, createForeignKeys = true, createIndices = true) {
456
+ if (ifNotExists) {
457
+ const isTableExist = await this.hasTable(table);
458
+ if (isTableExist)
459
+ return Promise.resolve();
460
+ }
461
+ const upQueries = [];
462
+ const downQueries = [];
463
+ // if table have column with ENUM type, we must create this type in postgres.
464
+ const enumColumns = table.columns.filter((column) => column.type === "enum" || column.type === "simple-enum");
465
+ const createdEnumTypes = [];
466
+ for (const column of enumColumns) {
467
+ // TODO: Should also check if values of existing type matches expected ones
468
+ const hasEnum = await this.hasEnumType(table, column);
469
+ const enumName = this.buildEnumName(table, column);
470
+ // if enum with the same "enumName" is defined more then once, me must prevent double creation
471
+ if (!hasEnum && createdEnumTypes.indexOf(enumName) === -1) {
472
+ createdEnumTypes.push(enumName);
473
+ upQueries.push(this.createEnumTypeSql(table, column, enumName));
474
+ downQueries.push(this.dropEnumTypeSql(table, column, enumName));
475
+ }
476
+ }
477
+ table.columns
478
+ .filter((column) => column.isGenerated &&
479
+ column.generationStrategy === "increment")
480
+ .forEach((column) => {
481
+ upQueries.push(new Query_1.Query(`CREATE SEQUENCE ${this.escapePath(this.buildSequencePath(table, column))}`));
482
+ downQueries.push(new Query_1.Query(`DROP SEQUENCE ${this.escapePath(this.buildSequencePath(table, column))}`));
483
+ });
484
+ upQueries.push(this.createTableSql(table, createForeignKeys));
485
+ downQueries.push(this.dropTableSql(table));
486
+ // if createForeignKeys is true, we must drop created foreign keys in down query.
487
+ // createTable does not need separate method to create foreign keys, because it create fk's in the same query with table creation.
488
+ if (createForeignKeys)
489
+ table.foreignKeys.forEach((foreignKey) => downQueries.push(this.dropForeignKeySql(table, foreignKey)));
490
+ if (createIndices) {
491
+ table.indices
492
+ .filter((index) => !index.isUnique)
493
+ .forEach((index) => {
494
+ // new index may be passed without name. In this case we generate index name manually.
495
+ index.name ??= this.dataSource.namingStrategy.indexName(table, index.columnNames, index.where);
496
+ upQueries.push(this.createIndexSql(table, index));
497
+ downQueries.push(this.dropIndexSql(table, index));
498
+ });
499
+ }
500
+ // if table have column with generated type, we must add the expression to the metadata table
501
+ const generatedColumns = table.columns.filter((column) => column.generatedType && column.asExpression);
502
+ if (generatedColumns.length > 0) {
503
+ const parsedTableName = this.driver.parseTableName(table);
504
+ parsedTableName.schema ??= await this.getCurrentSchema();
505
+ for (const column of generatedColumns) {
506
+ const insertQuery = this.insertTypeormMetadataSql({
507
+ schema: parsedTableName.schema,
508
+ table: parsedTableName.tableName,
509
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
510
+ name: column.name,
511
+ value: column.asExpression,
512
+ });
513
+ const deleteQuery = this.deleteTypeormMetadataSql({
514
+ schema: parsedTableName.schema,
515
+ table: parsedTableName.tableName,
516
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
517
+ name: column.name,
518
+ });
519
+ upQueries.push(insertQuery);
520
+ downQueries.push(deleteQuery);
521
+ }
522
+ }
523
+ await this.executeQueries(upQueries, downQueries);
524
+ }
525
+ /**
526
+ * Drops the table.
527
+ *
528
+ * @param target
529
+ * @param ifExists
530
+ * @param dropForeignKeys
531
+ * @param dropIndices
532
+ */
533
+ async dropTable(target, ifExists, dropForeignKeys = true, dropIndices = true) {
534
+ // It needs because if table does not exist and dropForeignKeys or dropIndices is true, we don't need
535
+ // to perform drop queries for foreign keys and indices.
536
+ if (ifExists) {
537
+ const isTableExist = await this.hasTable(target);
538
+ if (!isTableExist)
539
+ return Promise.resolve();
540
+ }
541
+ // if dropTable called with dropForeignKeys = true, we must create foreign keys in down query.
542
+ const createForeignKeys = dropForeignKeys;
543
+ const tablePath = this.getTablePath(target);
544
+ const table = await this.getCachedTable(tablePath);
545
+ const upQueries = [];
546
+ const downQueries = [];
547
+ // foreign keys must be dropped before indices, because fk's rely on indices
548
+ if (dropForeignKeys)
549
+ table.foreignKeys.forEach((foreignKey) => upQueries.push(this.dropForeignKeySql(table, foreignKey)));
550
+ if (dropIndices) {
551
+ table.indices.forEach((index) => {
552
+ upQueries.push(this.dropIndexSql(table, index));
553
+ downQueries.push(this.createIndexSql(table, index));
554
+ });
555
+ }
556
+ upQueries.push(this.dropTableSql(table));
557
+ downQueries.push(this.createTableSql(table, createForeignKeys));
558
+ table.columns
559
+ .filter((column) => column.isGenerated &&
560
+ column.generationStrategy === "increment")
561
+ .forEach((column) => {
562
+ upQueries.push(new Query_1.Query(`DROP SEQUENCE ${this.escapePath(this.buildSequencePath(table, column))}`));
563
+ downQueries.push(new Query_1.Query(`CREATE SEQUENCE ${this.escapePath(this.buildSequencePath(table, column))}`));
564
+ });
565
+ // if table had columns with generated type, we must remove the expression from the metadata table
566
+ const generatedColumns = table.columns.filter((column) => column.generatedType);
567
+ if (generatedColumns.length > 0) {
568
+ const parsedTableName = this.driver.parseTableName(table);
569
+ parsedTableName.schema ??= await this.getCurrentSchema();
570
+ for (const column of generatedColumns) {
571
+ const deleteQuery = this.deleteTypeormMetadataSql({
572
+ schema: parsedTableName.schema,
573
+ table: parsedTableName.tableName,
574
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
575
+ name: column.name,
576
+ });
577
+ upQueries.push(deleteQuery);
578
+ if (column.asExpression) {
579
+ const insertQuery = this.insertTypeormMetadataSql({
580
+ schema: parsedTableName.schema,
581
+ table: parsedTableName.tableName,
582
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
583
+ name: column.name,
584
+ value: column.asExpression,
585
+ });
586
+ downQueries.push(insertQuery);
587
+ }
588
+ }
589
+ }
590
+ await this.executeQueries(upQueries, downQueries);
591
+ }
592
+ /**
593
+ * Creates a new view.
594
+ *
595
+ * @param view
596
+ * @param syncWithMetadata
597
+ */
598
+ async createView(view, syncWithMetadata = false) {
599
+ const upQueries = [];
600
+ const downQueries = [];
601
+ upQueries.push(this.createViewSql(view));
602
+ if (syncWithMetadata)
603
+ upQueries.push(await this.insertViewDefinitionSql(view));
604
+ downQueries.push(this.dropViewSql(view));
605
+ if (syncWithMetadata)
606
+ downQueries.push(await this.deleteViewDefinitionSql(view));
607
+ await this.executeQueries(upQueries, downQueries);
608
+ }
609
+ /**
610
+ * Drops the view.
611
+ *
612
+ * @param target
613
+ * @param ifExists
614
+ */
615
+ async dropView(target, ifExists) {
616
+ const viewName = InstanceChecker_1.InstanceChecker.isView(target) ? target.name : target;
617
+ const view = await this.getCachedView(viewName);
618
+ await this.executeQueries([
619
+ await this.deleteViewDefinitionSql(view),
620
+ ifExists
621
+ ? new Query_1.Query(`DROP VIEW IF EXISTS ${this.escapePath(view)}`)
622
+ : this.dropViewSql(view),
623
+ ], [
624
+ await this.insertViewDefinitionSql(view),
625
+ this.createViewSql(view),
626
+ ]);
627
+ }
628
+ /**
629
+ * Renames the given table.
630
+ *
631
+ * @param oldTableOrName
632
+ * @param newTableName
633
+ */
634
+ async renameTable(oldTableOrName, newTableName) {
635
+ const upQueries = [];
636
+ const downQueries = [];
637
+ const oldTable = InstanceChecker_1.InstanceChecker.isTable(oldTableOrName)
638
+ ? oldTableOrName
639
+ : await this.getCachedTable(oldTableOrName);
640
+ const newTable = oldTable.clone();
641
+ let { schema: schemaName, tableName: oldTableName } = this.driver.parseTableName(oldTable);
642
+ schemaName ??= await this.getCurrentSchema();
643
+ newTable.name = schemaName
644
+ ? `${schemaName}.${newTableName}`
645
+ : newTableName;
646
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(oldTable)} RENAME TO "${newTableName}"`));
647
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(newTable)} RENAME TO "${oldTableName}"`));
648
+ const hasGeneratedColumns = oldTable.columns.some((col) => col.generatedType);
649
+ if (hasGeneratedColumns) {
650
+ const updateQuery = this.updateTypeormMetadataSql({
651
+ schema: schemaName,
652
+ table: oldTableName,
653
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
654
+ valueToSet: { table: newTableName },
655
+ });
656
+ const revertUpdateQuery = this.updateTypeormMetadataSql({
657
+ schema: schemaName,
658
+ table: newTableName,
659
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
660
+ valueToSet: { table: oldTableName },
661
+ });
662
+ upQueries.push(updateQuery);
663
+ downQueries.push(revertUpdateQuery);
664
+ }
665
+ // rename column primary key constraint
666
+ if (newTable.primaryColumns.length > 0 &&
667
+ !newTable.primaryColumns[0].primaryKeyConstraintName) {
668
+ const columnNames = newTable.primaryColumns.map((column) => column.name);
669
+ const oldPkName = this.dataSource.namingStrategy.primaryKeyName(oldTable, columnNames);
670
+ const newPkName = this.dataSource.namingStrategy.primaryKeyName(newTable, columnNames);
671
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(newTable)} RENAME CONSTRAINT "${oldPkName}" TO "${newPkName}"`));
672
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(newTable)} RENAME CONSTRAINT "${newPkName}" TO "${oldPkName}"`));
673
+ }
674
+ // rename unique constraints
675
+ newTable.uniques.forEach((unique) => {
676
+ const oldUniqueName = this.dataSource.namingStrategy.uniqueConstraintName(oldTable, unique.columnNames);
677
+ // Skip renaming if Unique has user defined constraint name
678
+ if (unique.name !== oldUniqueName)
679
+ return;
680
+ // build new constraint name
681
+ const newUniqueName = this.dataSource.namingStrategy.uniqueConstraintName(newTable, unique.columnNames);
682
+ // build queries
683
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(newTable)} RENAME CONSTRAINT "${unique.name}" TO "${newUniqueName}"`));
684
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(newTable)} RENAME CONSTRAINT "${newUniqueName}" TO "${unique.name}"`));
685
+ // replace constraint name
686
+ unique.name = newUniqueName;
687
+ });
688
+ // rename index constraints
689
+ newTable.indices.forEach((index) => {
690
+ const oldIndexName = this.dataSource.namingStrategy.indexName(oldTable, index.columnNames, index.where);
691
+ // Skip renaming if Index has user defined constraint name
692
+ if (index.name !== oldIndexName)
693
+ return;
694
+ // build new constraint name
695
+ const { schema } = this.driver.parseTableName(newTable);
696
+ const newIndexName = this.dataSource.namingStrategy.indexName(newTable, index.columnNames, index.where);
697
+ // build queries
698
+ const up = schema
699
+ ? `ALTER INDEX "${schema}"."${index.name}" RENAME TO "${newIndexName}"`
700
+ : `ALTER INDEX "${index.name}" RENAME TO "${newIndexName}"`;
701
+ const down = schema
702
+ ? `ALTER INDEX "${schema}"."${newIndexName}" RENAME TO "${index.name}"`
703
+ : `ALTER INDEX "${newIndexName}" RENAME TO "${index.name}"`;
704
+ upQueries.push(new Query_1.Query(up));
705
+ downQueries.push(new Query_1.Query(down));
706
+ // replace constraint name
707
+ index.name = newIndexName;
708
+ });
709
+ // rename foreign key constraints
710
+ newTable.foreignKeys.forEach((foreignKey) => {
711
+ const oldForeignKeyName = this.dataSource.namingStrategy.foreignKeyName(oldTable, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
712
+ // Skip renaming if foreign key has user defined constraint name
713
+ if (foreignKey.name !== oldForeignKeyName)
714
+ return;
715
+ // build new constraint name
716
+ const newForeignKeyName = this.dataSource.namingStrategy.foreignKeyName(newTable, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
717
+ // build queries
718
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(newTable)} RENAME CONSTRAINT "${foreignKey.name}" TO "${newForeignKeyName}"`));
719
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(newTable)} RENAME CONSTRAINT "${newForeignKeyName}" TO "${foreignKey.name}"`));
720
+ // replace constraint name
721
+ foreignKey.name = newForeignKeyName;
722
+ });
723
+ // rename ENUM types
724
+ const enumColumns = newTable.columns.filter((column) => column.type === "enum" || column.type === "simple-enum");
725
+ for (const column of enumColumns) {
726
+ // skip renaming for user-defined enum name
727
+ if (column.enumName)
728
+ continue;
729
+ const oldEnumType = await this.getUserDefinedTypeName(oldTable, column);
730
+ upQueries.push(new Query_1.Query(`ALTER TYPE "${oldEnumType.schema}"."${oldEnumType.name}" RENAME TO ${this.buildEnumName(newTable, column, false)}`));
731
+ downQueries.push(new Query_1.Query(`ALTER TYPE ${this.buildEnumName(newTable, column)} RENAME TO "${oldEnumType.name}"`));
732
+ }
733
+ await this.executeQueries(upQueries, downQueries);
734
+ }
735
+ /**
736
+ * Creates a new column from the column in the table.
737
+ *
738
+ * @param tableOrName
739
+ * @param column
740
+ */
741
+ async addColumn(tableOrName, column) {
742
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
743
+ ? tableOrName
744
+ : await this.getCachedTable(tableOrName);
745
+ const clonedTable = table.clone();
746
+ const upQueries = [];
747
+ const downQueries = [];
748
+ if (column.generationStrategy === "increment") {
749
+ throw new error_1.TypeORMError(`Adding sequential generated columns into existing table is not supported`);
750
+ }
751
+ if (column.type === "enum" || column.type === "simple-enum") {
752
+ const hasEnum = await this.hasEnumType(table, column);
753
+ if (!hasEnum) {
754
+ upQueries.push(this.createEnumTypeSql(table, column));
755
+ downQueries.push(this.dropEnumTypeSql(table, column));
756
+ }
757
+ }
758
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD ${this.buildCreateColumnSql(table, column)}`));
759
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP COLUMN "${column.name}"`));
760
+ // create or update primary key constraint
761
+ if (column.isPrimary) {
762
+ const primaryColumns = clonedTable.primaryColumns;
763
+ // if table already have primary key, me must drop it and recreate again
764
+ // todo: https://go.crdb.dev/issue-v/48026/v21.1
765
+ if (primaryColumns.length > 0) {
766
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
767
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map((column) => column.name));
768
+ const columnNames = primaryColumns
769
+ .map((column) => `"${column.name}"`)
770
+ .join(", ");
771
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
772
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
773
+ }
774
+ primaryColumns.push(column);
775
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
776
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map((column) => column.name));
777
+ const columnNames = primaryColumns
778
+ .map((column) => `"${column.name}"`)
779
+ .join(", ");
780
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
781
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
782
+ }
783
+ if (column.generatedType && column.asExpression) {
784
+ let { schema, tableName } = this.driver.parseTableName(table);
785
+ schema ??= await this.getCurrentSchema();
786
+ const insertQuery = this.insertTypeormMetadataSql({
787
+ schema: schema,
788
+ table: tableName,
789
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
790
+ name: column.name,
791
+ value: column.asExpression,
792
+ });
793
+ const deleteQuery = this.deleteTypeormMetadataSql({
794
+ schema: schema,
795
+ table: tableName,
796
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
797
+ name: column.name,
798
+ });
799
+ upQueries.push(insertQuery);
800
+ downQueries.push(deleteQuery);
801
+ }
802
+ // create column index
803
+ const columnIndex = clonedTable.indices.find((index) => index.columnNames.length === 1 &&
804
+ index.columnNames[0] === column.name);
805
+ if (columnIndex) {
806
+ // CockroachDB stores unique indices as UNIQUE constraints
807
+ if (columnIndex.isUnique) {
808
+ const unique = new TableUnique_1.TableUnique({
809
+ name: this.dataSource.namingStrategy.uniqueConstraintName(table, columnIndex.columnNames),
810
+ columnNames: columnIndex.columnNames,
811
+ });
812
+ upQueries.push(this.createUniqueConstraintSql(table, unique));
813
+ downQueries.push(this.dropIndexSql(table, unique));
814
+ clonedTable.uniques.push(unique);
815
+ }
816
+ else {
817
+ upQueries.push(this.createIndexSql(table, columnIndex));
818
+ downQueries.push(this.dropIndexSql(table, columnIndex));
819
+ }
820
+ }
821
+ // create unique constraint
822
+ if (column.isUnique) {
823
+ const uniqueConstraint = new TableUnique_1.TableUnique({
824
+ name: this.dataSource.namingStrategy.uniqueConstraintName(table, [column.name]),
825
+ columnNames: [column.name],
826
+ });
827
+ clonedTable.uniques.push(uniqueConstraint);
828
+ upQueries.push(this.createUniqueConstraintSql(table, uniqueConstraint));
829
+ downQueries.push(this.dropIndexSql(table, uniqueConstraint.name)); // CockroachDB creates indices for unique constraints
830
+ }
831
+ // create column's comment
832
+ if (column.comment) {
833
+ upQueries.push(new Query_1.Query(`COMMENT ON COLUMN ${this.escapePath(table)}."${column.name}" IS ${this.escapeComment(column.comment)}`));
834
+ downQueries.push(new Query_1.Query(`COMMENT ON COLUMN ${this.escapePath(table)}."${column.name}" IS ${this.escapeComment(column.comment)}`));
835
+ }
836
+ await this.executeQueries(upQueries, downQueries);
837
+ clonedTable.addColumn(column);
838
+ this.replaceCachedTable(table, clonedTable);
839
+ }
840
+ /**
841
+ * Creates a new columns from the column in the table.
842
+ *
843
+ * @param tableOrName
844
+ * @param columns
845
+ */
846
+ async addColumns(tableOrName, columns) {
847
+ for (const column of columns) {
848
+ await this.addColumn(tableOrName, column);
849
+ }
850
+ }
851
+ /**
852
+ * Renames column in the given table.
853
+ *
854
+ * @param tableOrName
855
+ * @param oldTableColumnOrName
856
+ * @param newTableColumnOrName
857
+ */
858
+ async renameColumn(tableOrName, oldTableColumnOrName, newTableColumnOrName) {
859
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
860
+ ? tableOrName
861
+ : await this.getCachedTable(tableOrName);
862
+ const oldColumn = InstanceChecker_1.InstanceChecker.isTableColumn(oldTableColumnOrName)
863
+ ? oldTableColumnOrName
864
+ : table.columns.find((c) => c.name === oldTableColumnOrName);
865
+ if (!oldColumn)
866
+ throw new error_1.TypeORMError(`Column "${oldTableColumnOrName}" was not found in the "${table.name}" table.`);
867
+ let newColumn;
868
+ if (InstanceChecker_1.InstanceChecker.isTableColumn(newTableColumnOrName)) {
869
+ newColumn = newTableColumnOrName;
870
+ }
871
+ else {
872
+ newColumn = oldColumn.clone();
873
+ newColumn.name = newTableColumnOrName;
874
+ }
875
+ return this.changeColumn(table, oldColumn, newColumn);
876
+ }
877
+ /**
878
+ * Changes a column in the table.
879
+ *
880
+ * @param tableOrName
881
+ * @param oldTableColumnOrName
882
+ * @param newColumn
883
+ */
884
+ async changeColumn(tableOrName, oldTableColumnOrName, newColumn) {
885
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
886
+ ? tableOrName
887
+ : await this.getCachedTable(tableOrName);
888
+ let clonedTable = table.clone();
889
+ const upQueries = [];
890
+ const downQueries = [];
891
+ let defaultValueChanged = false;
892
+ const oldColumn = InstanceChecker_1.InstanceChecker.isTableColumn(oldTableColumnOrName)
893
+ ? oldTableColumnOrName
894
+ : table.columns.find((column) => column.name === oldTableColumnOrName);
895
+ if (!oldColumn)
896
+ throw new error_1.TypeORMError(`Column "${oldTableColumnOrName}" was not found in the "${table.name}" table.`);
897
+ if (oldColumn.type !== newColumn.type ||
898
+ oldColumn.length !== newColumn.length ||
899
+ newColumn.isArray !== oldColumn.isArray ||
900
+ oldColumn.generatedType !== newColumn.generatedType ||
901
+ oldColumn.asExpression !== newColumn.asExpression) {
902
+ // To avoid data conversion, we just recreate column
903
+ await this.dropColumn(table, oldColumn);
904
+ await this.addColumn(table, newColumn);
905
+ // update cloned table
906
+ clonedTable = table.clone();
907
+ }
908
+ else {
909
+ if (oldColumn.name !== newColumn.name) {
910
+ // rename column
911
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} RENAME COLUMN "${oldColumn.name}" TO "${newColumn.name}"`));
912
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} RENAME COLUMN "${newColumn.name}" TO "${oldColumn.name}"`));
913
+ if (oldColumn.generatedType) {
914
+ let { schema, tableName } = this.driver.parseTableName(table);
915
+ schema ??= await this.getCurrentSchema();
916
+ const updateQuery = this.updateTypeormMetadataSql({
917
+ schema: schema,
918
+ table: tableName,
919
+ name: oldColumn.name,
920
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
921
+ valueToSet: { name: newColumn.name },
922
+ });
923
+ const revertUpdateQuery = this.updateTypeormMetadataSql({
924
+ schema: schema,
925
+ table: tableName,
926
+ name: newColumn.name,
927
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
928
+ valueToSet: { name: oldColumn.name },
929
+ });
930
+ upQueries.push(updateQuery);
931
+ downQueries.push(revertUpdateQuery);
932
+ }
933
+ // rename ENUM type
934
+ if (oldColumn.type === "enum" ||
935
+ oldColumn.type === "simple-enum") {
936
+ const oldEnumType = await this.getUserDefinedTypeName(table, oldColumn);
937
+ upQueries.push(new Query_1.Query(`ALTER TYPE "${oldEnumType.schema}"."${oldEnumType.name}" RENAME TO ${this.buildEnumName(table, newColumn, false)}`));
938
+ downQueries.push(new Query_1.Query(`ALTER TYPE ${this.buildEnumName(table, newColumn)} RENAME TO "${oldEnumType.name}"`));
939
+ }
940
+ // rename column primary key constraint
941
+ if (oldColumn.isPrimary === true &&
942
+ !oldColumn.primaryKeyConstraintName) {
943
+ const primaryColumns = clonedTable.primaryColumns;
944
+ // build old primary constraint name
945
+ const columnNames = primaryColumns.map((column) => column.name);
946
+ const oldPkName = this.dataSource.namingStrategy.primaryKeyName(clonedTable, columnNames);
947
+ // replace old column name with new column name
948
+ columnNames.splice(columnNames.indexOf(oldColumn.name), 1);
949
+ columnNames.push(newColumn.name);
950
+ // build new primary constraint name
951
+ const newPkName = this.dataSource.namingStrategy.primaryKeyName(clonedTable, columnNames);
952
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} RENAME CONSTRAINT "${oldPkName}" TO "${newPkName}"`));
953
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} RENAME CONSTRAINT "${newPkName}" TO "${oldPkName}"`));
954
+ }
955
+ // rename unique constraints
956
+ clonedTable.findColumnUniques(oldColumn).forEach((unique) => {
957
+ const oldUniqueName = this.dataSource.namingStrategy.uniqueConstraintName(clonedTable, unique.columnNames);
958
+ // Skip renaming if Unique has user defined constraint name
959
+ if (unique.name !== oldUniqueName)
960
+ return;
961
+ // build new constraint name
962
+ unique.columnNames.splice(unique.columnNames.indexOf(oldColumn.name), 1);
963
+ unique.columnNames.push(newColumn.name);
964
+ const newUniqueName = this.dataSource.namingStrategy.uniqueConstraintName(clonedTable, unique.columnNames);
965
+ // build queries
966
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} RENAME CONSTRAINT "${unique.name}" TO "${newUniqueName}"`));
967
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} RENAME CONSTRAINT "${newUniqueName}" TO "${unique.name}"`));
968
+ // replace constraint name
969
+ unique.name = newUniqueName;
970
+ });
971
+ // rename index constraints
972
+ clonedTable.findColumnIndices(oldColumn).forEach((index) => {
973
+ const oldIndexName = this.dataSource.namingStrategy.indexName(clonedTable, index.columnNames, index.where);
974
+ // Skip renaming if Index has user defined constraint name
975
+ if (index.name !== oldIndexName)
976
+ return;
977
+ // build new constraint name
978
+ index.columnNames.splice(index.columnNames.indexOf(oldColumn.name), 1);
979
+ index.columnNames.push(newColumn.name);
980
+ const { schema } = this.driver.parseTableName(table);
981
+ const newIndexName = this.dataSource.namingStrategy.indexName(clonedTable, index.columnNames, index.where);
982
+ // build queries
983
+ const up = schema
984
+ ? `ALTER INDEX "${schema}"."${index.name}" RENAME TO "${newIndexName}"`
985
+ : `ALTER INDEX "${index.name}" RENAME TO "${newIndexName}"`;
986
+ const down = schema
987
+ ? `ALTER INDEX "${schema}"."${newIndexName}" RENAME TO "${index.name}"`
988
+ : `ALTER INDEX "${newIndexName}" RENAME TO "${index.name}"`;
989
+ upQueries.push(new Query_1.Query(up));
990
+ downQueries.push(new Query_1.Query(down));
991
+ // replace constraint name
992
+ index.name = newIndexName;
993
+ });
994
+ // rename foreign key constraints
995
+ clonedTable
996
+ .findColumnForeignKeys(oldColumn)
997
+ .forEach((foreignKey) => {
998
+ const foreignKeyName = this.dataSource.namingStrategy.foreignKeyName(clonedTable, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
999
+ // Skip renaming if foreign key has user defined constraint name
1000
+ if (foreignKey.name !== foreignKeyName)
1001
+ return;
1002
+ // build new constraint name
1003
+ foreignKey.columnNames.splice(foreignKey.columnNames.indexOf(oldColumn.name), 1);
1004
+ foreignKey.columnNames.push(newColumn.name);
1005
+ const newForeignKeyName = this.dataSource.namingStrategy.foreignKeyName(clonedTable, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
1006
+ // build queries
1007
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} RENAME CONSTRAINT "${foreignKey.name}" TO "${newForeignKeyName}"`));
1008
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} RENAME CONSTRAINT "${newForeignKeyName}" TO "${foreignKey.name}"`));
1009
+ // replace constraint name
1010
+ foreignKey.name = newForeignKeyName;
1011
+ });
1012
+ // rename old column in the Table object
1013
+ const oldTableColumn = clonedTable.columns.find((column) => column.name === oldColumn.name);
1014
+ clonedTable.columns[clonedTable.columns.indexOf(oldTableColumn)].name = newColumn.name;
1015
+ oldColumn.name = newColumn.name;
1016
+ }
1017
+ if (newColumn.precision !== oldColumn.precision ||
1018
+ newColumn.scale !== oldColumn.scale) {
1019
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" TYPE ${this.driver.createFullType(newColumn)}`));
1020
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" TYPE ${this.driver.createFullType(oldColumn)}`));
1021
+ }
1022
+ if (oldColumn.isNullable !== newColumn.isNullable) {
1023
+ if (newColumn.isNullable) {
1024
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${oldColumn.name}" DROP NOT NULL`));
1025
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${oldColumn.name}" SET NOT NULL`));
1026
+ }
1027
+ else {
1028
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${oldColumn.name}" SET NOT NULL`));
1029
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${oldColumn.name}" DROP NOT NULL`));
1030
+ }
1031
+ }
1032
+ if (oldColumn.comment !== newColumn.comment) {
1033
+ upQueries.push(new Query_1.Query(`COMMENT ON COLUMN ${this.escapePath(table)}."${oldColumn.name}" IS ${this.escapeComment(newColumn.comment)}`));
1034
+ downQueries.push(new Query_1.Query(`COMMENT ON COLUMN ${this.escapePath(table)}."${newColumn.name}" IS ${this.escapeComment(oldColumn.comment)}`));
1035
+ }
1036
+ if (newColumn.isPrimary !== oldColumn.isPrimary) {
1037
+ const primaryColumns = clonedTable.primaryColumns;
1038
+ // if primary column state changed, we must always drop existed constraint.
1039
+ if (primaryColumns.length > 0) {
1040
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
1041
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map((column) => column.name));
1042
+ const columnNames = primaryColumns
1043
+ .map((column) => `"${column.name}"`)
1044
+ .join(", ");
1045
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
1046
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
1047
+ }
1048
+ if (newColumn.isPrimary === true) {
1049
+ primaryColumns.push(newColumn);
1050
+ // update column in table
1051
+ const column = clonedTable.columns.find((column) => column.name === newColumn.name);
1052
+ column.isPrimary = true;
1053
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
1054
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map((column) => column.name));
1055
+ const columnNames = primaryColumns
1056
+ .map((column) => `"${column.name}"`)
1057
+ .join(", ");
1058
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
1059
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
1060
+ }
1061
+ else {
1062
+ const primaryColumn = primaryColumns.find((c) => c.name === newColumn.name);
1063
+ primaryColumns.splice(primaryColumns.indexOf(primaryColumn), 1);
1064
+ // update column in table
1065
+ const column = clonedTable.columns.find((column) => column.name === newColumn.name);
1066
+ column.isPrimary = false;
1067
+ // if we have another primary keys, we must recreate constraint.
1068
+ if (primaryColumns.length > 0) {
1069
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
1070
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map((column) => column.name));
1071
+ const columnNames = primaryColumns
1072
+ .map((column) => `"${column.name}"`)
1073
+ .join(", ");
1074
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
1075
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
1076
+ }
1077
+ }
1078
+ }
1079
+ if (newColumn.isUnique !== oldColumn.isUnique) {
1080
+ if (newColumn.isUnique) {
1081
+ const uniqueConstraint = new TableUnique_1.TableUnique({
1082
+ name: this.dataSource.namingStrategy.uniqueConstraintName(table, [newColumn.name]),
1083
+ columnNames: [newColumn.name],
1084
+ });
1085
+ clonedTable.uniques.push(uniqueConstraint);
1086
+ upQueries.push(this.createUniqueConstraintSql(table, uniqueConstraint));
1087
+ // CockroachDB creates index for UNIQUE constraint.
1088
+ // We must use DROP INDEX ... CASCADE instead of DROP CONSTRAINT.
1089
+ downQueries.push(this.dropIndexSql(table, uniqueConstraint));
1090
+ }
1091
+ else {
1092
+ const uniqueConstraint = clonedTable.uniques.find((unique) => {
1093
+ return (unique.columnNames.length === 1 &&
1094
+ !!unique.columnNames.find((columnName) => columnName === newColumn.name));
1095
+ });
1096
+ clonedTable.uniques.splice(clonedTable.uniques.indexOf(uniqueConstraint), 1);
1097
+ // CockroachDB creates index for UNIQUE constraint.
1098
+ // We must use DROP INDEX ... CASCADE instead of DROP CONSTRAINT.
1099
+ upQueries.push(this.dropIndexSql(table, uniqueConstraint));
1100
+ downQueries.push(this.createUniqueConstraintSql(table, uniqueConstraint));
1101
+ }
1102
+ }
1103
+ if ((newColumn.type === "enum" ||
1104
+ newColumn.type === "simple-enum") &&
1105
+ (oldColumn.type === "enum" ||
1106
+ oldColumn.type === "simple-enum") &&
1107
+ (!OrmUtils_1.OrmUtils.isArraysEqual(newColumn.enum, oldColumn.enum) ||
1108
+ newColumn.enumName !== oldColumn.enumName)) {
1109
+ const arraySuffix = newColumn.isArray ? "[]" : "";
1110
+ // "public"."new_enum"
1111
+ const newEnumName = this.buildEnumName(table, newColumn);
1112
+ // "public"."old_enum"
1113
+ const oldEnumName = this.buildEnumName(table, oldColumn);
1114
+ // "old_enum"
1115
+ const oldEnumNameWithoutSchema = this.buildEnumName(table, oldColumn, false);
1116
+ //"public"."old_enum_old"
1117
+ const oldEnumNameWithSchema_old = this.buildEnumName(table, oldColumn, true, false, true);
1118
+ //"old_enum_old"
1119
+ const oldEnumNameWithoutSchema_old = this.buildEnumName(table, oldColumn, false, false, true);
1120
+ // rename old ENUM
1121
+ upQueries.push(new Query_1.Query(`ALTER TYPE ${oldEnumName} RENAME TO ${oldEnumNameWithoutSchema_old}`));
1122
+ downQueries.push(new Query_1.Query(`ALTER TYPE ${oldEnumNameWithSchema_old} RENAME TO ${oldEnumNameWithoutSchema}`));
1123
+ // create new ENUM
1124
+ upQueries.push(this.createEnumTypeSql(table, newColumn, newEnumName));
1125
+ downQueries.push(this.dropEnumTypeSql(table, newColumn, newEnumName));
1126
+ // if column have default value, we must drop it to avoid issues with type casting
1127
+ if (oldColumn.default !== null &&
1128
+ oldColumn.default !== undefined) {
1129
+ // mark default as changed to prevent double update
1130
+ defaultValueChanged = true;
1131
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${oldColumn.name}" DROP DEFAULT`));
1132
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${oldColumn.name}" SET DEFAULT ${oldColumn.default}`));
1133
+ }
1134
+ // build column types
1135
+ const upType = `${newEnumName}${arraySuffix} USING "${newColumn.name}"::"text"::${newEnumName}${arraySuffix}`;
1136
+ const downType = `${oldEnumNameWithSchema_old}${arraySuffix} USING "${newColumn.name}"::"text"::${oldEnumNameWithSchema_old}${arraySuffix}`;
1137
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" TYPE ${upType}`));
1138
+ // we add a delay here since for some reason cockroachdb fails with
1139
+ // "cannot drop type because other objects still depend on it" error
1140
+ // if we are trying to drop type right after we altered it.
1141
+ upQueries.push(new Query_1.Query(`SELECT pg_sleep(0.1)`));
1142
+ downQueries.push(new Query_1.Query(`SELECT pg_sleep(0.1)`));
1143
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" TYPE ${downType}`));
1144
+ // restore column default or create new one
1145
+ if (newColumn.default !== null &&
1146
+ newColumn.default !== undefined) {
1147
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" SET DEFAULT ${newColumn.default}`));
1148
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" DROP DEFAULT`));
1149
+ }
1150
+ // remove old ENUM
1151
+ upQueries.push(this.dropEnumTypeSql(table, oldColumn, oldEnumNameWithSchema_old));
1152
+ downQueries.push(this.createEnumTypeSql(table, oldColumn, oldEnumNameWithSchema_old));
1153
+ }
1154
+ if (oldColumn.isGenerated !== newColumn.isGenerated &&
1155
+ newColumn.generationStrategy !== "uuid") {
1156
+ if (newColumn.isGenerated) {
1157
+ if (newColumn.generationStrategy === "increment") {
1158
+ throw new error_1.TypeORMError(`Adding sequential generated columns into existing table is not supported`);
1159
+ }
1160
+ else if (newColumn.generationStrategy === "rowid") {
1161
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" SET DEFAULT unique_rowid()`));
1162
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" DROP DEFAULT`));
1163
+ }
1164
+ }
1165
+ else {
1166
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" DROP DEFAULT`));
1167
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" SET DEFAULT unique_rowid()`));
1168
+ }
1169
+ }
1170
+ if (newColumn.default !== oldColumn.default &&
1171
+ !defaultValueChanged) {
1172
+ if (newColumn.default !== null &&
1173
+ newColumn.default !== undefined) {
1174
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" SET DEFAULT ${newColumn.default}`));
1175
+ if (oldColumn.default !== null &&
1176
+ oldColumn.default !== undefined) {
1177
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" SET DEFAULT ${oldColumn.default}`));
1178
+ }
1179
+ else {
1180
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" DROP DEFAULT`));
1181
+ }
1182
+ }
1183
+ else if (oldColumn.default !== null &&
1184
+ oldColumn.default !== undefined) {
1185
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" DROP DEFAULT`));
1186
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" SET DEFAULT ${oldColumn.default}`));
1187
+ }
1188
+ }
1189
+ }
1190
+ if ((newColumn.spatialFeatureType ?? "").toLowerCase() !==
1191
+ (oldColumn.spatialFeatureType ?? "").toLowerCase() ||
1192
+ newColumn.srid !== oldColumn.srid) {
1193
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" TYPE ${this.driver.createFullType(newColumn)}`));
1194
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ALTER COLUMN "${newColumn.name}" TYPE ${this.driver.createFullType(oldColumn)}`));
1195
+ }
1196
+ await this.executeQueries(upQueries, downQueries);
1197
+ this.replaceCachedTable(table, clonedTable);
1198
+ }
1199
+ /**
1200
+ * Changes a column in the table.
1201
+ *
1202
+ * @param tableOrName
1203
+ * @param changedColumns
1204
+ */
1205
+ async changeColumns(tableOrName, changedColumns) {
1206
+ for (const { oldColumn, newColumn } of changedColumns) {
1207
+ await this.changeColumn(tableOrName, oldColumn, newColumn);
1208
+ }
1209
+ }
1210
+ /**
1211
+ * Drops column in the table.
1212
+ *
1213
+ * @param tableOrName
1214
+ * @param columnOrName
1215
+ * @param ifExists
1216
+ */
1217
+ async dropColumn(tableOrName, columnOrName, ifExists) {
1218
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1219
+ ? tableOrName
1220
+ : await this.getCachedTable(tableOrName);
1221
+ const column = InstanceChecker_1.InstanceChecker.isTableColumn(columnOrName)
1222
+ ? columnOrName
1223
+ : table.findColumnByName(columnOrName);
1224
+ if (!column) {
1225
+ if (ifExists)
1226
+ return;
1227
+ throw new error_1.TypeORMError(`Column "${columnOrName}" was not found in table "${table.name}"`);
1228
+ }
1229
+ const clonedTable = table.clone();
1230
+ const upQueries = [];
1231
+ const downQueries = [];
1232
+ // drop primary key constraint
1233
+ // todo: https://go.crdb.dev/issue-v/48026/v21.1
1234
+ if (column.isPrimary) {
1235
+ const pkName = column.primaryKeyConstraintName ??
1236
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, clonedTable.primaryColumns.map((column) => column.name));
1237
+ const columnNames = clonedTable.primaryColumns
1238
+ .map((primaryColumn) => `"${primaryColumn.name}"`)
1239
+ .join(", ");
1240
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(clonedTable)} DROP CONSTRAINT "${pkName}"`));
1241
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(clonedTable)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
1242
+ // update column in table
1243
+ const tableColumn = clonedTable.findColumnByName(column.name);
1244
+ tableColumn.isPrimary = false;
1245
+ // if primary key have multiple columns, we must recreate it without dropped column
1246
+ if (clonedTable.primaryColumns.length > 0) {
1247
+ const pkName = clonedTable.primaryColumns[0].primaryKeyConstraintName ??
1248
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, clonedTable.primaryColumns.map((column) => column.name));
1249
+ const columnNames = clonedTable.primaryColumns
1250
+ .map((primaryColumn) => `"${primaryColumn.name}"`)
1251
+ .join(", ");
1252
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(clonedTable)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNames})`));
1253
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(clonedTable)} DROP CONSTRAINT "${pkName}"`));
1254
+ }
1255
+ }
1256
+ // drop column index
1257
+ const columnIndex = clonedTable.indices.find((index) => index.columnNames.length === 1 &&
1258
+ index.columnNames[0] === column.name);
1259
+ if (columnIndex) {
1260
+ clonedTable.indices.splice(clonedTable.indices.indexOf(columnIndex), 1);
1261
+ upQueries.push(this.dropIndexSql(table, columnIndex));
1262
+ downQueries.push(this.createIndexSql(table, columnIndex));
1263
+ }
1264
+ // drop column check
1265
+ const columnCheck = clonedTable.checks.find((check) => !!check.columnNames &&
1266
+ check.columnNames.length === 1 &&
1267
+ check.columnNames[0] === column.name);
1268
+ if (columnCheck) {
1269
+ clonedTable.checks.splice(clonedTable.checks.indexOf(columnCheck), 1);
1270
+ upQueries.push(this.dropCheckConstraintSql(table, columnCheck));
1271
+ downQueries.push(this.createCheckConstraintSql(table, columnCheck));
1272
+ }
1273
+ // drop column unique
1274
+ const columnUnique = clonedTable.uniques.find((unique) => unique.columnNames.length === 1 &&
1275
+ unique.columnNames[0] === column.name);
1276
+ if (columnUnique) {
1277
+ clonedTable.uniques.splice(clonedTable.uniques.indexOf(columnUnique), 1);
1278
+ upQueries.push(this.dropIndexSql(table, columnUnique.name)); // CockroachDB creates indices for unique constraints
1279
+ downQueries.push(this.createUniqueConstraintSql(table, columnUnique));
1280
+ }
1281
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP COLUMN ${ifExists ? "IF EXISTS " : ""}"${column.name}"`));
1282
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD ${this.buildCreateColumnSql(table, column)}`));
1283
+ if (column.generationStrategy === "increment") {
1284
+ upQueries.push(new Query_1.Query(`DROP SEQUENCE ${this.escapePath(this.buildSequencePath(table, column))}`));
1285
+ downQueries.push(new Query_1.Query(`CREATE SEQUENCE ${this.escapePath(this.buildSequencePath(table, column))}`));
1286
+ }
1287
+ if (column.generatedType) {
1288
+ let { schema, tableName } = this.driver.parseTableName(table);
1289
+ schema ??= await this.getCurrentSchema();
1290
+ const deleteQuery = this.deleteTypeormMetadataSql({
1291
+ schema: schema,
1292
+ table: tableName,
1293
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
1294
+ name: column.name,
1295
+ });
1296
+ upQueries.push(deleteQuery);
1297
+ if (column.asExpression) {
1298
+ const insertQuery = this.insertTypeormMetadataSql({
1299
+ schema: schema,
1300
+ table: tableName,
1301
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
1302
+ name: column.name,
1303
+ value: column.asExpression,
1304
+ });
1305
+ downQueries.push(insertQuery);
1306
+ }
1307
+ }
1308
+ // drop enum type
1309
+ if (column.type === "enum" || column.type === "simple-enum") {
1310
+ const hasEnum = await this.hasEnumType(table, column);
1311
+ if (hasEnum) {
1312
+ const enumType = await this.getUserDefinedTypeName(table, column);
1313
+ const escapedEnumName = `"${enumType.schema}"."${enumType.name}"`;
1314
+ upQueries.push(this.dropEnumTypeSql(table, column, escapedEnumName));
1315
+ downQueries.push(this.createEnumTypeSql(table, column, escapedEnumName));
1316
+ }
1317
+ }
1318
+ await this.executeQueries(upQueries, downQueries);
1319
+ clonedTable.removeColumn(column);
1320
+ this.replaceCachedTable(table, clonedTable);
1321
+ }
1322
+ /**
1323
+ * Drops the columns in the table.
1324
+ *
1325
+ * @param tableOrName
1326
+ * @param columns
1327
+ * @param ifExists
1328
+ */
1329
+ async dropColumns(tableOrName, columns, ifExists) {
1330
+ for (const column of [...columns]) {
1331
+ await this.dropColumn(tableOrName, column, ifExists);
1332
+ }
1333
+ }
1334
+ /**
1335
+ * Creates a new primary key.
1336
+ *
1337
+ * @param tableOrName
1338
+ * @param columnNames
1339
+ * @param constraintName
1340
+ */
1341
+ async createPrimaryKey(tableOrName, columnNames, constraintName) {
1342
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1343
+ ? tableOrName
1344
+ : await this.getCachedTable(tableOrName);
1345
+ const clonedTable = table.clone();
1346
+ const up = this.createPrimaryKeySql(table, columnNames, constraintName);
1347
+ // mark columns as primary, because dropPrimaryKeySql build constraint name from table primary column names.
1348
+ clonedTable.columns.forEach((column) => {
1349
+ if (columnNames.find((columnName) => columnName === column.name))
1350
+ column.isPrimary = true;
1351
+ });
1352
+ const down = this.dropPrimaryKeySql(clonedTable);
1353
+ await this.executeQueries(up, down);
1354
+ this.replaceCachedTable(table, clonedTable);
1355
+ }
1356
+ /**
1357
+ * Updates composite primary keys.
1358
+ *
1359
+ * @param tableOrName
1360
+ * @param columns
1361
+ */
1362
+ async updatePrimaryKeys(tableOrName, columns) {
1363
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1364
+ ? tableOrName
1365
+ : await this.getCachedTable(tableOrName);
1366
+ const clonedTable = table.clone();
1367
+ const columnNames = columns.map((column) => column.name);
1368
+ const upQueries = [];
1369
+ const downQueries = [];
1370
+ // if table already have primary columns, we must drop them.
1371
+ const primaryColumns = clonedTable.primaryColumns;
1372
+ if (primaryColumns.length > 0) {
1373
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
1374
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, primaryColumns.map((column) => column.name));
1375
+ const columnNamesString = primaryColumns
1376
+ .map((column) => `"${column.name}"`)
1377
+ .join(", ");
1378
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
1379
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNamesString})`));
1380
+ }
1381
+ // update columns in table.
1382
+ clonedTable.columns
1383
+ .filter((column) => columnNames.indexOf(column.name) !== -1)
1384
+ .forEach((column) => {
1385
+ column.isPrimary = true;
1386
+ });
1387
+ const pkName = primaryColumns[0].primaryKeyConstraintName ??
1388
+ this.dataSource.namingStrategy.primaryKeyName(clonedTable, columnNames);
1389
+ const columnNamesString = columnNames
1390
+ .map((columnName) => `"${columnName}"`)
1391
+ .join(", ");
1392
+ upQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${pkName}" PRIMARY KEY (${columnNamesString})`));
1393
+ downQueries.push(new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${pkName}"`));
1394
+ await this.executeQueries(upQueries, downQueries);
1395
+ this.replaceCachedTable(table, clonedTable);
1396
+ }
1397
+ /**
1398
+ * Drops a primary key.
1399
+ *
1400
+ * @param tableOrName
1401
+ * @param constraintName
1402
+ * @param ifExists
1403
+ */
1404
+ async dropPrimaryKey(tableOrName, constraintName, ifExists) {
1405
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1406
+ ? tableOrName
1407
+ : await this.getCachedTable(tableOrName);
1408
+ const up = this.dropPrimaryKeySql(table, ifExists);
1409
+ const down = this.createPrimaryKeySql(table, table.primaryColumns.map((column) => column.name), constraintName);
1410
+ await this.executeQueries(up, down);
1411
+ table.primaryColumns.forEach((column) => {
1412
+ column.isPrimary = false;
1413
+ });
1414
+ }
1415
+ /**
1416
+ * Creates new unique constraint.
1417
+ *
1418
+ * @param tableOrName
1419
+ * @param uniqueConstraint
1420
+ */
1421
+ async createUniqueConstraint(tableOrName, uniqueConstraint) {
1422
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1423
+ ? tableOrName
1424
+ : await this.getCachedTable(tableOrName);
1425
+ // new unique constraint may be passed without name. In this case we generate unique name manually.
1426
+ uniqueConstraint.name ??=
1427
+ this.dataSource.namingStrategy.uniqueConstraintName(table, uniqueConstraint.columnNames);
1428
+ const up = this.createUniqueConstraintSql(table, uniqueConstraint);
1429
+ // CockroachDB creates index for UNIQUE constraint.
1430
+ // We must use DROP INDEX ... CASCADE instead of DROP CONSTRAINT.
1431
+ const down = this.dropIndexSql(table, uniqueConstraint);
1432
+ await this.executeQueries(up, down);
1433
+ table.addUniqueConstraint(uniqueConstraint);
1434
+ }
1435
+ /**
1436
+ * Creates new unique constraints.
1437
+ *
1438
+ * @param tableOrName
1439
+ * @param uniqueConstraints
1440
+ */
1441
+ async createUniqueConstraints(tableOrName, uniqueConstraints) {
1442
+ for (const uniqueConstraint of uniqueConstraints) {
1443
+ await this.createUniqueConstraint(tableOrName, uniqueConstraint);
1444
+ }
1445
+ }
1446
+ /**
1447
+ * Drops unique constraint.
1448
+ *
1449
+ * @param tableOrName
1450
+ * @param uniqueOrName
1451
+ * @param ifExists
1452
+ */
1453
+ async dropUniqueConstraint(tableOrName, uniqueOrName, ifExists) {
1454
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1455
+ ? tableOrName
1456
+ : await this.getCachedTable(tableOrName);
1457
+ const uniqueConstraint = InstanceChecker_1.InstanceChecker.isTableUnique(uniqueOrName)
1458
+ ? uniqueOrName
1459
+ : table.uniques.find((u) => u.name === uniqueOrName);
1460
+ if (!uniqueConstraint) {
1461
+ if (ifExists)
1462
+ return;
1463
+ throw new error_1.TypeORMError(`Supplied unique constraint was not found in table ${table.name}`);
1464
+ }
1465
+ // CockroachDB creates index for UNIQUE constraint.
1466
+ // We must use DROP INDEX ... CASCADE instead of DROP CONSTRAINT.
1467
+ const up = this.dropIndexSql(table, uniqueConstraint, ifExists);
1468
+ const down = this.createUniqueConstraintSql(table, uniqueConstraint);
1469
+ await this.executeQueries(up, down);
1470
+ table.removeUniqueConstraint(uniqueConstraint);
1471
+ }
1472
+ /**
1473
+ * Drops unique constraints.
1474
+ *
1475
+ * @param tableOrName
1476
+ * @param uniqueConstraints
1477
+ * @param ifExists
1478
+ */
1479
+ async dropUniqueConstraints(tableOrName, uniqueConstraints, ifExists) {
1480
+ for (const uniqueConstraint of [...uniqueConstraints]) {
1481
+ await this.dropUniqueConstraint(tableOrName, uniqueConstraint, ifExists);
1482
+ }
1483
+ }
1484
+ /**
1485
+ * Creates new check constraint.
1486
+ *
1487
+ * @param tableOrName
1488
+ * @param checkConstraint
1489
+ */
1490
+ async createCheckConstraint(tableOrName, checkConstraint) {
1491
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1492
+ ? tableOrName
1493
+ : await this.getCachedTable(tableOrName);
1494
+ // new unique constraint may be passed without name. In this case we generate unique name manually.
1495
+ checkConstraint.name ??=
1496
+ this.dataSource.namingStrategy.checkConstraintName(table, checkConstraint.expression);
1497
+ const up = this.createCheckConstraintSql(table, checkConstraint);
1498
+ const down = this.dropCheckConstraintSql(table, checkConstraint);
1499
+ await this.executeQueries(up, down);
1500
+ table.addCheckConstraint(checkConstraint);
1501
+ }
1502
+ /**
1503
+ * Creates new check constraints.
1504
+ *
1505
+ * @param tableOrName
1506
+ * @param checkConstraints
1507
+ */
1508
+ async createCheckConstraints(tableOrName, checkConstraints) {
1509
+ const promises = checkConstraints.map((checkConstraint) => this.createCheckConstraint(tableOrName, checkConstraint));
1510
+ await Promise.all(promises);
1511
+ }
1512
+ /**
1513
+ * Drops check constraint.
1514
+ *
1515
+ * @param tableOrName
1516
+ * @param checkOrName
1517
+ * @param ifExists
1518
+ */
1519
+ async dropCheckConstraint(tableOrName, checkOrName, ifExists) {
1520
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1521
+ ? tableOrName
1522
+ : await this.getCachedTable(tableOrName);
1523
+ const checkConstraint = InstanceChecker_1.InstanceChecker.isTableCheck(checkOrName)
1524
+ ? checkOrName
1525
+ : table.checks.find((c) => c.name === checkOrName);
1526
+ if (!checkConstraint) {
1527
+ if (ifExists)
1528
+ return;
1529
+ throw new error_1.TypeORMError(`Supplied check constraint was not found in table ${table.name}`);
1530
+ }
1531
+ const up = this.dropCheckConstraintSql(table, checkConstraint, ifExists);
1532
+ const down = this.createCheckConstraintSql(table, checkConstraint);
1533
+ await this.executeQueries(up, down);
1534
+ table.removeCheckConstraint(checkConstraint);
1535
+ }
1536
+ /**
1537
+ * Drops check constraints.
1538
+ *
1539
+ * @param tableOrName
1540
+ * @param checkConstraints
1541
+ * @param ifExists
1542
+ */
1543
+ async dropCheckConstraints(tableOrName, checkConstraints, ifExists) {
1544
+ const promises = checkConstraints.map((checkConstraint) => this.dropCheckConstraint(tableOrName, checkConstraint, ifExists));
1545
+ await Promise.all(promises);
1546
+ }
1547
+ /**
1548
+ * Creates new exclusion constraint.
1549
+ *
1550
+ * @param tableOrName
1551
+ * @param exclusionConstraint
1552
+ */
1553
+ async createExclusionConstraint(tableOrName, exclusionConstraint) {
1554
+ throw new error_1.TypeORMError(`CockroachDB does not support exclusion constraints.`);
1555
+ }
1556
+ /**
1557
+ * Creates new exclusion constraints.
1558
+ *
1559
+ * @param tableOrName
1560
+ * @param exclusionConstraints
1561
+ */
1562
+ async createExclusionConstraints(tableOrName, exclusionConstraints) {
1563
+ throw new error_1.TypeORMError(`CockroachDB does not support exclusion constraints.`);
1564
+ }
1565
+ /**
1566
+ * Drops exclusion constraint.
1567
+ *
1568
+ * @param tableOrName
1569
+ * @param exclusionOrName
1570
+ * @param ifExists
1571
+ */
1572
+ async dropExclusionConstraint(tableOrName, exclusionOrName, ifExists) {
1573
+ throw new error_1.TypeORMError(`CockroachDB does not support exclusion constraints.`);
1574
+ }
1575
+ /**
1576
+ * Drops exclusion constraints.
1577
+ *
1578
+ * @param tableOrName
1579
+ * @param exclusionConstraints
1580
+ * @param ifExists
1581
+ */
1582
+ async dropExclusionConstraints(tableOrName, exclusionConstraints, ifExists) {
1583
+ throw new error_1.TypeORMError(`CockroachDB does not support exclusion constraints.`);
1584
+ }
1585
+ /**
1586
+ * Creates a new foreign key.
1587
+ *
1588
+ * @param tableOrName
1589
+ * @param foreignKey
1590
+ */
1591
+ async createForeignKey(tableOrName, foreignKey) {
1592
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1593
+ ? tableOrName
1594
+ : await this.getCachedTable(tableOrName);
1595
+ // new FK may be passed without name. In this case we generate FK name manually.
1596
+ foreignKey.name ??= this.dataSource.namingStrategy.foreignKeyName(table, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
1597
+ const up = this.createForeignKeySql(table, foreignKey);
1598
+ const down = this.dropForeignKeySql(table, foreignKey);
1599
+ await this.executeQueries(up, down);
1600
+ table.addForeignKey(foreignKey);
1601
+ }
1602
+ /**
1603
+ * Creates a new foreign keys.
1604
+ *
1605
+ * @param tableOrName
1606
+ * @param foreignKeys
1607
+ */
1608
+ async createForeignKeys(tableOrName, foreignKeys) {
1609
+ for (const foreignKey of foreignKeys) {
1610
+ await this.createForeignKey(tableOrName, foreignKey);
1611
+ }
1612
+ }
1613
+ /**
1614
+ * Drops a foreign key from the table.
1615
+ *
1616
+ * @param tableOrName
1617
+ * @param foreignKeyOrName
1618
+ * @param ifExists
1619
+ */
1620
+ async dropForeignKey(tableOrName, foreignKeyOrName, ifExists) {
1621
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1622
+ ? tableOrName
1623
+ : await this.getCachedTable(tableOrName);
1624
+ const foreignKey = InstanceChecker_1.InstanceChecker.isTableForeignKey(foreignKeyOrName)
1625
+ ? foreignKeyOrName
1626
+ : table.foreignKeys.find((fk) => fk.name === foreignKeyOrName);
1627
+ if (!foreignKey) {
1628
+ if (ifExists)
1629
+ return;
1630
+ throw new error_1.TypeORMError(`Supplied foreign key was not found in table ${table.name}`);
1631
+ }
1632
+ foreignKey.name ??= this.dataSource.namingStrategy.foreignKeyName(table, foreignKey.columnNames, this.getTablePath(foreignKey), foreignKey.referencedColumnNames);
1633
+ const up = this.dropForeignKeySql(table, foreignKey, ifExists);
1634
+ const down = this.createForeignKeySql(table, foreignKey);
1635
+ await this.executeQueries(up, down);
1636
+ table.removeForeignKey(foreignKey);
1637
+ }
1638
+ /**
1639
+ * Drops a foreign keys from the table.
1640
+ *
1641
+ * @param tableOrName
1642
+ * @param foreignKeys
1643
+ * @param ifExists
1644
+ */
1645
+ async dropForeignKeys(tableOrName, foreignKeys, ifExists) {
1646
+ for (const foreignKey of [...foreignKeys]) {
1647
+ await this.dropForeignKey(tableOrName, foreignKey, ifExists);
1648
+ }
1649
+ }
1650
+ /**
1651
+ * Creates a new index.
1652
+ *
1653
+ * @param tableOrName
1654
+ * @param index
1655
+ */
1656
+ async createIndex(tableOrName, index) {
1657
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1658
+ ? tableOrName
1659
+ : await this.getCachedTable(tableOrName);
1660
+ // new index may be passed without name. In this case we generate index name manually.
1661
+ index.name ??= this.generateIndexName(table, index);
1662
+ // CockroachDB stores unique indices and UNIQUE constraints
1663
+ if (index.isUnique) {
1664
+ const unique = new TableUnique_1.TableUnique({
1665
+ name: index.name,
1666
+ columnNames: index.columnNames,
1667
+ });
1668
+ const up = this.createUniqueConstraintSql(table, unique);
1669
+ // CockroachDB also creates index for UNIQUE constraints.
1670
+ // We can't drop UNIQUE constraint with DROP CONSTRAINT. We must use DROP INDEX ... CASCADE instead.
1671
+ const down = this.dropIndexSql(table, unique);
1672
+ await this.executeQueries(up, down);
1673
+ table.addUniqueConstraint(unique);
1674
+ }
1675
+ else {
1676
+ const up = this.createIndexSql(table, index);
1677
+ const down = this.dropIndexSql(table, index);
1678
+ await this.executeQueries(up, down);
1679
+ table.addIndex(index);
1680
+ }
1681
+ }
1682
+ /**
1683
+ * Creates a new indices
1684
+ *
1685
+ * @param tableOrName
1686
+ * @param indices
1687
+ */
1688
+ async createIndices(tableOrName, indices) {
1689
+ for (const index of indices) {
1690
+ await this.createIndex(tableOrName, index);
1691
+ }
1692
+ }
1693
+ /**
1694
+ * Drops an index from the table.
1695
+ *
1696
+ * @param tableOrName
1697
+ * @param indexOrName
1698
+ * @param ifExists
1699
+ */
1700
+ async dropIndex(tableOrName, indexOrName, ifExists) {
1701
+ const table = InstanceChecker_1.InstanceChecker.isTable(tableOrName)
1702
+ ? tableOrName
1703
+ : await this.getCachedTable(tableOrName);
1704
+ const index = InstanceChecker_1.InstanceChecker.isTableIndex(indexOrName)
1705
+ ? indexOrName
1706
+ : table.indices.find((i) => i.name === indexOrName);
1707
+ if (!index) {
1708
+ if (ifExists)
1709
+ return;
1710
+ throw new error_1.TypeORMError(`Supplied index ${indexOrName} was not found in table ${table.name}`);
1711
+ }
1712
+ // old index may be passed without name. In this case we generate index name manually.
1713
+ index.name ??= this.generateIndexName(table, index);
1714
+ const up = this.dropIndexSql(table, index, ifExists);
1715
+ const down = this.createIndexSql(table, index);
1716
+ await this.executeQueries(up, down);
1717
+ table.removeIndex(index);
1718
+ }
1719
+ /**
1720
+ * Drops an indices from the table.
1721
+ *
1722
+ * @param tableOrName
1723
+ * @param indices
1724
+ * @param ifExists
1725
+ */
1726
+ async dropIndices(tableOrName, indices, ifExists) {
1727
+ for (const index of [...indices]) {
1728
+ await this.dropIndex(tableOrName, index, ifExists);
1729
+ }
1730
+ }
1731
+ /**
1732
+ * Clears all table contents.
1733
+ * Note: this operation uses SQL's TRUNCATE query which cannot be reverted in transactions.
1734
+ *
1735
+ * @param tableName
1736
+ * @param options
1737
+ * @param options.cascade
1738
+ */
1739
+ async clearTable(tableName, options) {
1740
+ const cascade = options?.cascade ? " CASCADE" : "";
1741
+ await this.query(`TRUNCATE TABLE ${this.escapePath(tableName)}${cascade}`);
1742
+ }
1743
+ /**
1744
+ * Removes all tables from the currently connected database.
1745
+ */
1746
+ async clearDatabase() {
1747
+ const schemas = [];
1748
+ this.dataSource.entityMetadatas
1749
+ .filter((metadata) => metadata.schema)
1750
+ .forEach((metadata) => {
1751
+ const isSchemaExist = !!schemas.find((schema) => schema === metadata.schema);
1752
+ if (!isSchemaExist)
1753
+ schemas.push(metadata.schema);
1754
+ });
1755
+ if (this.driver.options.schema) {
1756
+ schemas.push(this.driver.options.schema);
1757
+ }
1758
+ else {
1759
+ const [{ currentSchema }] = await this.query(`SELECT current_schema() AS "currentSchema"`);
1760
+ schemas.push(currentSchema);
1761
+ }
1762
+ const isAnotherTransactionActive = this.isTransactionActive;
1763
+ if (!isAnotherTransactionActive)
1764
+ await this.startTransaction();
1765
+ try {
1766
+ const version = await this.getVersion();
1767
+ // drop views
1768
+ const views = await this.query(`SELECT quote_ident(schemaname) || '.' || quote_ident(viewname) as "name" ` +
1769
+ `FROM "pg_views" WHERE "schemaname"::STRING = ANY($1::STRING[])`, [schemas]);
1770
+ if (views.length > 0) {
1771
+ await this.query(`DROP VIEW IF EXISTS ${views.map(({ name }) => name).join(", ")} CASCADE`);
1772
+ }
1773
+ // drop tables
1774
+ const tables = await this.query(`SELECT quote_ident(table_schema) || '.' || quote_ident(table_name) as "name" ` +
1775
+ `FROM "information_schema"."tables" WHERE "table_schema"::STRING = ANY($1::STRING[]) AND "table_type" = 'BASE TABLE'`, [schemas]);
1776
+ if (tables.length > 0) {
1777
+ await this.query(`DROP TABLE IF EXISTS ${tables.map(({ name }) => name).join(", ")} CASCADE`);
1778
+ }
1779
+ // drop sequences
1780
+ const sequences = await this.query(`SELECT quote_ident(sequence_schema) || '.' || quote_ident(sequence_name) as "name" ` +
1781
+ `FROM "information_schema"."sequences" WHERE "sequence_schema"::STRING = ANY($1::STRING[])`, [schemas]);
1782
+ if (sequences.length > 0) {
1783
+ await this.query(`DROP SEQUENCE IF EXISTS ${sequences.map(({ name }) => name).join(", ")}`);
1784
+ }
1785
+ // drop enum types. Supported starting from v20.2.19.
1786
+ if (VersionUtils_1.VersionUtils.isGreaterOrEqual(version, "20.2.19")) {
1787
+ await this.dropEnumTypes(schemas);
1788
+ }
1789
+ if (!isAnotherTransactionActive)
1790
+ await this.commitTransaction();
1791
+ }
1792
+ catch (error) {
1793
+ try {
1794
+ // we throw original error even if rollback thrown an error
1795
+ if (!isAnotherTransactionActive)
1796
+ await this.rollbackTransaction();
1797
+ }
1798
+ catch {
1799
+ // no-op
1800
+ }
1801
+ throw error;
1802
+ }
1803
+ }
1804
+ // -------------------------------------------------------------------------
1805
+ // Protected Methods
1806
+ // -------------------------------------------------------------------------
1807
+ async loadViews(viewNames) {
1808
+ const hasTable = await this.hasTable(this.getTypeormMetadataTableName());
1809
+ if (!hasTable) {
1810
+ return [];
1811
+ }
1812
+ viewNames ??= [];
1813
+ const currentDatabase = await this.getCurrentDatabase();
1814
+ const currentSchema = await this.getCurrentSchema();
1815
+ const viewsCondition = viewNames
1816
+ .map((viewName) => {
1817
+ const { schema, tableName } = this.driver.parseTableName(viewName);
1818
+ return `("t"."schema" = '${schema ?? currentSchema}' AND "t"."name" = '${tableName}')`;
1819
+ })
1820
+ .join(" OR ");
1821
+ const query = `SELECT "t".*, "v"."check_option" FROM ${this.escapePath(this.getTypeormMetadataTableName())} "t" ` +
1822
+ `INNER JOIN "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})` : ""}`;
1823
+ const dbViews = await this.query(query);
1824
+ return dbViews.map((dbView) => {
1825
+ const view = new View_1.View();
1826
+ const schema = dbView["schema"] === currentSchema &&
1827
+ !this.driver.options.schema
1828
+ ? undefined
1829
+ : dbView["schema"];
1830
+ view.database = currentDatabase;
1831
+ view.schema = dbView["schema"];
1832
+ view.name = this.driver.buildTableName(dbView["name"], schema);
1833
+ view.expression = dbView["value"];
1834
+ return view;
1835
+ });
1836
+ }
1837
+ /**
1838
+ * Loads all tables (with given names) from the database and creates a Table from them.
1839
+ *
1840
+ * @param tableNames
1841
+ */
1842
+ async loadTables(tableNames) {
1843
+ // if no tables given then no need to proceed
1844
+ if (tableNames?.length === 0) {
1845
+ return [];
1846
+ }
1847
+ const currentSchema = await this.getCurrentSchema();
1848
+ const currentDatabase = await this.getCurrentDatabase();
1849
+ const dbTables = [];
1850
+ if (!tableNames) {
1851
+ const tablesSql = `SELECT "table_schema", "table_name" FROM "information_schema"."tables"`;
1852
+ dbTables.push(...(await this.query(tablesSql)));
1853
+ }
1854
+ else {
1855
+ const tablesCondition = tableNames
1856
+ .map((tableName) => this.driver.parseTableName(tableName))
1857
+ .map(({ schema, tableName }) => {
1858
+ return `("table_schema" = '${schema ?? currentSchema}' AND "table_name" = '${tableName}')`;
1859
+ })
1860
+ .join(" OR ");
1861
+ const tablesSql = `SELECT "table_schema", "table_name" FROM "information_schema"."tables" WHERE ` +
1862
+ tablesCondition;
1863
+ dbTables.push(...(await this.query(tablesSql)));
1864
+ }
1865
+ if (dbTables.length === 0) {
1866
+ return [];
1867
+ }
1868
+ const columnsCondition = dbTables
1869
+ .map(({ table_name, table_schema }) => {
1870
+ return `("table_schema" = '${table_schema}' AND "table_name" = '${table_name}')`;
1871
+ })
1872
+ .join(" OR ");
1873
+ const columnsSql = `SELECT "columns".*, "attr"."attgenerated" as "generated_type", ` +
1874
+ `pg_catalog.col_description((quote_ident(table_catalog) || '.' || quote_ident(table_schema) || '.' || quote_ident(table_name))::regclass::oid, ordinal_position) as description ` +
1875
+ `FROM "information_schema"."columns" ` +
1876
+ `LEFT JOIN "pg_namespace" AS "ns" ON "ns"."nspname" = "table_schema" ` +
1877
+ `LEFT JOIN "pg_class" AS "cls" ON "cls"."relnamespace" = "ns"."oid" AND "cls"."relname" = "table_name" ` +
1878
+ `LEFT JOIN "pg_attribute" AS "attr" ON "attr"."attrelid" = "cls"."oid" AND "attr"."attname" = "column_name" AND "attr"."attnum" = "ordinal_position" ` +
1879
+ `WHERE "is_hidden" = 'NO' AND ` +
1880
+ `(${columnsCondition})`;
1881
+ const constraintsCondition = dbTables
1882
+ .map(({ table_name, table_schema }) => {
1883
+ return `("ns"."nspname" = '${table_schema}' AND "t"."relname" = '${table_name}')`;
1884
+ })
1885
+ .join(" OR ");
1886
+ const constraintsSql = `SELECT "ns"."nspname" AS "table_schema", "t"."relname" AS "table_name", "cnst"."conname" AS "constraint_name", ` +
1887
+ `pg_get_constraintdef("cnst"."oid") AS "expression", ` +
1888
+ `CASE "cnst"."contype" WHEN 'p' THEN 'PRIMARY' WHEN 'u' THEN 'UNIQUE' WHEN 'c' THEN 'CHECK' WHEN 'x' THEN 'EXCLUDE' END AS "constraint_type", "a"."attname" AS "column_name" ` +
1889
+ `FROM "pg_constraint" "cnst" ` +
1890
+ `INNER JOIN "pg_class" "t" ON "t"."oid" = "cnst"."conrelid" ` +
1891
+ `INNER JOIN "pg_namespace" "ns" ON "ns"."oid" = "cnst"."connamespace" ` +
1892
+ `LEFT JOIN "pg_attribute" "a" ON "a"."attrelid" = "cnst"."conrelid" AND "a"."attnum" = ANY ("cnst"."conkey") ` +
1893
+ `WHERE "t"."relkind" = 'r' AND (${constraintsCondition})`;
1894
+ const indicesSql = `SELECT "ns"."nspname" AS "table_schema", "t"."relname" AS "table_name", "i"."relname" AS "constraint_name", "a"."attname" AS "column_name", ` +
1895
+ `CASE "ix"."indisunique" WHEN 't' THEN 'TRUE' ELSE'FALSE' END AS "is_unique", pg_get_expr("ix"."indpred", "ix"."indrelid") AS "condition", ` +
1896
+ `"types"."typname" AS "type_name" ` +
1897
+ `FROM "pg_class" "t" ` +
1898
+ `INNER JOIN "pg_index" "ix" ON "ix"."indrelid" = "t"."oid" ` +
1899
+ `INNER JOIN "pg_attribute" "a" ON "a"."attrelid" = "t"."oid" AND "a"."attnum" = ANY ("ix"."indkey") ` +
1900
+ `INNER JOIN "pg_namespace" "ns" ON "ns"."oid" = "t"."relnamespace" ` +
1901
+ `INNER JOIN "pg_class" "i" ON "i"."oid" = "ix"."indexrelid" ` +
1902
+ `INNER JOIN "pg_type" "types" ON "types"."oid" = "a"."atttypid" ` +
1903
+ `LEFT JOIN "pg_constraint" "cnst" ON "cnst"."conname" = "i"."relname" ` +
1904
+ `WHERE "t"."relkind" = 'r' AND "cnst"."contype" IS NULL AND (${constraintsCondition})`;
1905
+ const foreignKeysCondition = dbTables
1906
+ .map(({ table_name, table_schema }) => {
1907
+ return `("ns"."nspname" = '${table_schema}' AND "cl"."relname" = '${table_name}')`;
1908
+ })
1909
+ .join(" OR ");
1910
+ const foreignKeysSql = `SELECT "con"."conname" AS "constraint_name", "con"."nspname" AS "table_schema", "con"."relname" AS "table_name", "att2"."attname" AS "column_name", ` +
1911
+ `"ns"."nspname" AS "referenced_table_schema", "cl"."relname" AS "referenced_table_name", "att"."attname" AS "referenced_column_name", "con"."confdeltype" AS "on_delete", "con"."confupdtype" AS "on_update" ` +
1912
+ `FROM ( ` +
1913
+ `SELECT UNNEST ("con1"."conkey") AS "parent", UNNEST ("con1"."confkey") AS "child", "con1"."confrelid", "con1"."conrelid", "con1"."conname", "con1"."contype", "ns"."nspname", "cl"."relname", ` +
1914
+ `CASE "con1"."confdeltype" WHEN 'a' THEN 'NO ACTION' WHEN 'r' THEN 'RESTRICT' WHEN 'c' THEN 'CASCADE' WHEN 'n' THEN 'SET NULL' WHEN 'd' THEN 'SET DEFAULT' END as "confdeltype", ` +
1915
+ `CASE "con1"."confupdtype" WHEN 'a' THEN 'NO ACTION' WHEN 'r' THEN 'RESTRICT' WHEN 'c' THEN 'CASCADE' WHEN 'n' THEN 'SET NULL' WHEN 'd' THEN 'SET DEFAULT' END as "confupdtype" ` +
1916
+ `FROM "pg_class" "cl" ` +
1917
+ `INNER JOIN "pg_namespace" "ns" ON "cl"."relnamespace" = "ns"."oid" ` +
1918
+ `INNER JOIN "pg_constraint" "con1" ON "con1"."conrelid" = "cl"."oid" ` +
1919
+ `WHERE "con1"."contype" = 'f' AND (${foreignKeysCondition}) ` +
1920
+ `) "con" ` +
1921
+ `INNER JOIN "pg_attribute" "att" ON "att"."attrelid" = "con"."confrelid" AND "att"."attnum" = "con"."child" ` +
1922
+ `INNER JOIN "pg_class" "cl" ON "cl"."oid" = "con"."confrelid" ` +
1923
+ `INNER JOIN "pg_namespace" "ns" ON "cl"."relnamespace" = "ns"."oid" ` +
1924
+ `INNER JOIN "pg_attribute" "att2" ON "att2"."attrelid" = "con"."conrelid" AND "att2"."attnum" = "con"."parent"`;
1925
+ const tableSchemas = dbTables
1926
+ .map((dbTable) => `'${dbTable.table_schema}'`)
1927
+ .join(", ");
1928
+ const enumsSql = `SELECT "t"."typname" AS "name", string_agg("e"."enumlabel", '|' ORDER BY "e"."enumsortorder") AS "value" ` +
1929
+ `FROM "pg_enum" "e" ` +
1930
+ `INNER JOIN "pg_type" "t" ON "t"."oid" = "e"."enumtypid" ` +
1931
+ `INNER JOIN "pg_namespace" "n" ON "n"."oid" = "t"."typnamespace" ` +
1932
+ `WHERE "n"."nspname" IN (${tableSchemas}) ` +
1933
+ `GROUP BY "t"."typname"`;
1934
+ const dbColumns = await this.query(columnsSql);
1935
+ const dbConstraints = await this.query(constraintsSql);
1936
+ const dbIndices = await this.query(indicesSql);
1937
+ const dbForeignKeys = await this.query(foreignKeysSql);
1938
+ const dbEnums = await this.query(enumsSql);
1939
+ // create tables for loaded tables
1940
+ return Promise.all(dbTables.map(async (dbTable) => {
1941
+ const table = new Table_1.Table();
1942
+ const getSchemaFromKey = (dbObject, key) => {
1943
+ return dbObject[key] === currentSchema &&
1944
+ (!this.driver.options.schema ||
1945
+ this.driver.options.schema === currentSchema)
1946
+ ? undefined
1947
+ : dbObject[key];
1948
+ };
1949
+ // We do not need to join schema name, when database is by default.
1950
+ const schema = getSchemaFromKey(dbTable, "table_schema");
1951
+ table.database = currentDatabase;
1952
+ table.schema = dbTable["table_schema"];
1953
+ table.name = this.driver.buildTableName(dbTable["table_name"], schema);
1954
+ // create columns from the loaded columns
1955
+ table.columns = await Promise.all(dbColumns
1956
+ .filter((dbColumn) => dbColumn["table_name"] ===
1957
+ dbTable["table_name"] &&
1958
+ dbColumn["table_schema"] ===
1959
+ dbTable["table_schema"])
1960
+ .map(async (dbColumn) => {
1961
+ const columnConstraints = dbConstraints.filter((dbConstraint) => {
1962
+ return (dbConstraint["table_name"] ===
1963
+ dbColumn["table_name"] &&
1964
+ dbConstraint["table_schema"] ===
1965
+ dbColumn["table_schema"] &&
1966
+ dbConstraint["column_name"] ===
1967
+ dbColumn["column_name"]);
1968
+ });
1969
+ const tableColumn = new TableColumn_1.TableColumn();
1970
+ tableColumn.name = dbColumn["column_name"];
1971
+ tableColumn.type =
1972
+ dbColumn["crdb_sql_type"].toLowerCase();
1973
+ if (dbColumn["crdb_sql_type"].indexOf("COLLATE") !==
1974
+ -1) {
1975
+ tableColumn.collation = dbColumn["crdb_sql_type"].slice(dbColumn["crdb_sql_type"].indexOf("COLLATE") +
1976
+ "COLLATE".length +
1977
+ 1);
1978
+ tableColumn.type = tableColumn.type.slice(0, dbColumn["crdb_sql_type"].indexOf("COLLATE") - 1);
1979
+ }
1980
+ if (tableColumn.type.indexOf("(") !== -1)
1981
+ tableColumn.type = tableColumn.type.slice(0, tableColumn.type.indexOf("("));
1982
+ if (tableColumn.type === "numeric" ||
1983
+ tableColumn.type === "decimal") {
1984
+ if (dbColumn["numeric_precision"] !== null &&
1985
+ !this.isDefaultColumnPrecision(table, tableColumn, dbColumn["numeric_precision"])) {
1986
+ tableColumn.precision = parseInt(dbColumn["numeric_precision"]);
1987
+ }
1988
+ else if (dbColumn["numeric_scale"] !== null &&
1989
+ !this.isDefaultColumnScale(table, tableColumn, dbColumn["numeric_scale"])) {
1990
+ tableColumn.precision = undefined;
1991
+ }
1992
+ if (dbColumn["numeric_scale"] !== null &&
1993
+ !this.isDefaultColumnScale(table, tableColumn, dbColumn["numeric_scale"])) {
1994
+ tableColumn.scale = parseInt(dbColumn["numeric_scale"]);
1995
+ }
1996
+ else if (dbColumn["numeric_precision"] !== null &&
1997
+ !this.isDefaultColumnPrecision(table, tableColumn, dbColumn["numeric_precision"])) {
1998
+ tableColumn.scale = undefined;
1999
+ }
2000
+ }
2001
+ // docs: https://www.postgresql.org/docs/current/xtypes.html
2002
+ // When you define a new base type, PostgreSQL automatically provides support for arrays of that type.
2003
+ // The array type typically has the same name as the base type with the underscore character (_) prepended.
2004
+ // ----
2005
+ // so, we must remove this underscore character from enum type name
2006
+ let udtName = dbColumn["udt_name"];
2007
+ if (udtName.startsWith("_")) {
2008
+ udtName = udtName.slice(1);
2009
+ }
2010
+ const enumType = dbEnums.find((dbEnum) => {
2011
+ return dbEnum["name"] === udtName;
2012
+ });
2013
+ if (enumType) {
2014
+ // check if `enumName` is specified by user
2015
+ const builtEnumName = this.buildEnumName(table, tableColumn, false, true);
2016
+ const enumName = builtEnumName !== enumType["name"]
2017
+ ? enumType["name"]
2018
+ : undefined;
2019
+ tableColumn.type = "enum";
2020
+ tableColumn.enum = enumType["value"].split("|");
2021
+ tableColumn.enumName = enumName;
2022
+ }
2023
+ if (dbColumn["data_type"].toLowerCase() === "array") {
2024
+ tableColumn.isArray = true;
2025
+ if (!enumType) {
2026
+ const type = dbColumn["crdb_sql_type"]
2027
+ .replace("[]", "")
2028
+ .toLowerCase();
2029
+ tableColumn.type =
2030
+ this.dataSource.driver.normalizeType({
2031
+ type: type,
2032
+ });
2033
+ }
2034
+ }
2035
+ // check only columns that have length property
2036
+ if (this.driver.withLengthColumnTypes.indexOf(tableColumn.type) !== -1 &&
2037
+ dbColumn["character_maximum_length"]) {
2038
+ const length = dbColumn["character_maximum_length"].toString();
2039
+ tableColumn.length =
2040
+ !this.isDefaultColumnLength(table, tableColumn, length)
2041
+ ? length
2042
+ : "";
2043
+ }
2044
+ tableColumn.isNullable =
2045
+ dbColumn["is_nullable"] === "YES";
2046
+ const primaryConstraint = columnConstraints.find((constraint) => constraint["constraint_type"] === "PRIMARY");
2047
+ if (primaryConstraint) {
2048
+ tableColumn.isPrimary = true;
2049
+ // find another columns involved in primary key constraint
2050
+ const anotherPrimaryConstraints = dbConstraints.filter((constraint) => constraint["table_name"] ===
2051
+ dbColumn["table_name"] &&
2052
+ constraint["table_schema"] ===
2053
+ dbColumn["table_schema"] &&
2054
+ constraint["column_name"] !==
2055
+ dbColumn["column_name"] &&
2056
+ constraint["constraint_type"] ===
2057
+ "PRIMARY");
2058
+ // collect all column names
2059
+ const columnNames = anotherPrimaryConstraints.map((constraint) => constraint["column_name"]);
2060
+ columnNames.push(dbColumn["column_name"]);
2061
+ // build default primary key constraint name
2062
+ const pkName = this.dataSource.namingStrategy.primaryKeyName(table, columnNames);
2063
+ // if primary key has user-defined constraint name, write it in table column
2064
+ if (primaryConstraint["constraint_name"] !==
2065
+ pkName) {
2066
+ tableColumn.primaryKeyConstraintName =
2067
+ primaryConstraint["constraint_name"];
2068
+ }
2069
+ }
2070
+ const uniqueConstraints = columnConstraints.filter((constraint) => constraint["constraint_type"] === "UNIQUE");
2071
+ const isConstraintComposite = uniqueConstraints.every((uniqueConstraint) => {
2072
+ return dbConstraints.some((dbConstraint) => dbConstraint["constraint_type"] ===
2073
+ "UNIQUE" &&
2074
+ dbConstraint["constraint_name"] ===
2075
+ uniqueConstraint["constraint_name"] &&
2076
+ dbConstraint["column_name"] !==
2077
+ dbColumn["column_name"]);
2078
+ });
2079
+ tableColumn.isUnique =
2080
+ uniqueConstraints.length > 0 &&
2081
+ !isConstraintComposite;
2082
+ if (dbColumn["column_default"] !== null &&
2083
+ dbColumn["column_default"] !== undefined) {
2084
+ if (dbColumn["column_default"] ===
2085
+ "unique_rowid()") {
2086
+ tableColumn.isGenerated = true;
2087
+ tableColumn.generationStrategy = "rowid";
2088
+ }
2089
+ else if (dbColumn["column_default"].indexOf("nextval") !== -1) {
2090
+ tableColumn.isGenerated = true;
2091
+ tableColumn.generationStrategy = "increment";
2092
+ }
2093
+ else if (dbColumn["column_default"] ===
2094
+ "gen_random_uuid()") {
2095
+ tableColumn.isGenerated = true;
2096
+ tableColumn.generationStrategy = "uuid";
2097
+ }
2098
+ else {
2099
+ tableColumn.default = dbColumn["column_default"].replaceAll(/:::[\w\s[\]"]+/g, "");
2100
+ tableColumn.default =
2101
+ tableColumn.default.replace(/^(-?[\d.]+)$/, "($1)");
2102
+ if (enumType) {
2103
+ tableColumn.default =
2104
+ tableColumn.default.replace(`.${enumType["name"]}`, "");
2105
+ }
2106
+ }
2107
+ }
2108
+ if ((dbColumn["is_generated"] === "YES" ||
2109
+ dbColumn["is_generated"] === "ALWAYS") &&
2110
+ dbColumn["generation_expression"]) {
2111
+ tableColumn.generatedType =
2112
+ dbColumn["generated_type"] === "s"
2113
+ ? "STORED"
2114
+ : "VIRTUAL";
2115
+ // We cannot relay on information_schema.columns.generation_expression, because it is formatted different.
2116
+ const asExpressionQuery = this.selectTypeormMetadataSql({
2117
+ schema: dbTable["table_schema"],
2118
+ table: dbTable["table_name"],
2119
+ type: MetadataTableType_1.MetadataTableType.GENERATED_COLUMN,
2120
+ name: tableColumn.name,
2121
+ });
2122
+ const results = await this.query(asExpressionQuery.query, asExpressionQuery.parameters);
2123
+ if (results[0]?.value) {
2124
+ tableColumn.asExpression = results[0].value;
2125
+ }
2126
+ else {
2127
+ tableColumn.asExpression = "";
2128
+ }
2129
+ }
2130
+ tableColumn.comment =
2131
+ dbColumn["description"] ?? undefined;
2132
+ if (dbColumn["character_set_name"])
2133
+ tableColumn.charset =
2134
+ dbColumn["character_set_name"];
2135
+ if (tableColumn.type === "geometry" ||
2136
+ tableColumn.type === "geography") {
2137
+ const sql = `SELECT * FROM (` +
2138
+ `SELECT "f_table_schema" "table_schema", "f_table_name" "table_name", ` +
2139
+ `"f_${tableColumn.type}_column" "column_name", "srid", "type", "coord_dimension" ` +
2140
+ `FROM "${tableColumn.type}_columns"` +
2141
+ `) AS _ ` +
2142
+ `WHERE "column_name" = '${dbColumn["column_name"]}' AND ` +
2143
+ `"table_schema" = '${dbColumn["table_schema"]}' AND ` +
2144
+ `"table_name" = '${dbColumn["table_name"]}'`;
2145
+ const results = await this.query(sql);
2146
+ if (results.length > 0) {
2147
+ // "geometry_columns" folds the Z dimension into
2148
+ // "coord_dimension" and only keeps the M suffix in
2149
+ // "type", while "geography_columns" reports the
2150
+ // full suffix in "type", so the suffix is only
2151
+ // appended when it is missing.
2152
+ //
2153
+ // Unlike PostGIS, CockroachDB also drops the M
2154
+ // suffix from "geometry_columns"."type", which makes
2155
+ // PointM indistinguishable from PointZ there. The
2156
+ // declared type in "crdb_sql_type" still carries it.
2157
+ let spatialFeatureType = /^\w+\((\w+)/.exec(dbColumn["crdb_sql_type"] ?? "")?.[1] ?? results[0].type;
2158
+ const coordDimension = parseInt(results[0].coord_dimension);
2159
+ const upperType = spatialFeatureType.toUpperCase();
2160
+ if (coordDimension === 3 &&
2161
+ !upperType.endsWith("Z") &&
2162
+ !upperType.endsWith("M")) {
2163
+ spatialFeatureType += "Z";
2164
+ }
2165
+ else if (coordDimension === 4 &&
2166
+ !upperType.endsWith("Z") &&
2167
+ !upperType.endsWith("M")) {
2168
+ spatialFeatureType += "ZM";
2169
+ }
2170
+ tableColumn.spatialFeatureType =
2171
+ spatialFeatureType;
2172
+ tableColumn.srid = results[0].srid
2173
+ ? parseInt(results[0].srid)
2174
+ : undefined;
2175
+ }
2176
+ }
2177
+ return tableColumn;
2178
+ }));
2179
+ // find unique constraints of table, group them by constraint name and build TableUnique.
2180
+ const tableUniqueConstraints = OrmUtils_1.OrmUtils.uniq(dbConstraints.filter((dbConstraint) => {
2181
+ return (dbConstraint["table_name"] ===
2182
+ dbTable["table_name"] &&
2183
+ dbConstraint["table_schema"] ===
2184
+ dbTable["table_schema"] &&
2185
+ dbConstraint["constraint_type"] === "UNIQUE");
2186
+ }), (dbConstraint) => dbConstraint["constraint_name"]);
2187
+ table.uniques = tableUniqueConstraints.map((constraint) => {
2188
+ const uniques = dbConstraints.filter((dbC) => dbC["constraint_name"] ===
2189
+ constraint["constraint_name"]);
2190
+ return new TableUnique_1.TableUnique({
2191
+ name: constraint["constraint_name"],
2192
+ columnNames: uniques.map((u) => u["column_name"]),
2193
+ });
2194
+ });
2195
+ // find check constraints of table, group them by constraint name and build TableCheck.
2196
+ const tableCheckConstraints = OrmUtils_1.OrmUtils.uniq(dbConstraints.filter((dbConstraint) => {
2197
+ return (dbConstraint["table_name"] ===
2198
+ dbTable["table_name"] &&
2199
+ dbConstraint["table_schema"] ===
2200
+ dbTable["table_schema"] &&
2201
+ dbConstraint["constraint_type"] === "CHECK");
2202
+ }), (dbConstraint) => dbConstraint["constraint_name"]);
2203
+ table.checks = tableCheckConstraints.map((constraint) => {
2204
+ const checks = dbConstraints.filter((dbC) => dbC["constraint_name"] ===
2205
+ constraint["constraint_name"]);
2206
+ return new TableCheck_1.TableCheck({
2207
+ name: constraint["constraint_name"],
2208
+ columnNames: checks.map((c) => c["column_name"]),
2209
+ expression: constraint["expression"].replace(/^\s*CHECK\s*\((.*)\)\s*$/i, "$1"),
2210
+ });
2211
+ });
2212
+ // find exclusion constraints of table, group them by constraint name and build TableExclusion.
2213
+ const tableExclusionConstraints = OrmUtils_1.OrmUtils.uniq(dbConstraints.filter((dbConstraint) => {
2214
+ return (dbConstraint["table_name"] ===
2215
+ dbTable["table_name"] &&
2216
+ dbConstraint["table_schema"] ===
2217
+ dbTable["table_schema"] &&
2218
+ dbConstraint["constraint_type"] === "EXCLUDE");
2219
+ }), (dbConstraint) => dbConstraint["constraint_name"]);
2220
+ table.exclusions = tableExclusionConstraints.map((constraint) => {
2221
+ return new TableExclusion_1.TableExclusion({
2222
+ name: constraint["constraint_name"],
2223
+ expression: constraint["expression"].slice(8), // trim EXCLUDE from start of expression
2224
+ });
2225
+ });
2226
+ // find foreign key constraints of table, group them by constraint name and build TableForeignKey.
2227
+ const tableForeignKeyConstraints = OrmUtils_1.OrmUtils.uniq(dbForeignKeys.filter((dbForeignKey) => {
2228
+ return (dbForeignKey["table_name"] ===
2229
+ dbTable["table_name"] &&
2230
+ dbForeignKey["table_schema"] ===
2231
+ dbTable["table_schema"]);
2232
+ }), (dbForeignKey) => dbForeignKey["constraint_name"]);
2233
+ table.foreignKeys = tableForeignKeyConstraints.map((dbForeignKey) => {
2234
+ const foreignKeys = dbForeignKeys.filter((dbFk) => dbFk["constraint_name"] ===
2235
+ dbForeignKey["constraint_name"]);
2236
+ // if referenced table located in currently used schema, we don't need to concat schema name to table name.
2237
+ const schema = getSchemaFromKey(dbForeignKey, "referenced_table_schema");
2238
+ const referencedTableName = this.driver.buildTableName(dbForeignKey["referenced_table_name"], schema);
2239
+ return new TableForeignKey_1.TableForeignKey({
2240
+ name: dbForeignKey["constraint_name"],
2241
+ columnNames: foreignKeys.map((dbFk) => dbFk["column_name"]),
2242
+ referencedSchema: dbForeignKey["referenced_table_schema"],
2243
+ referencedTableName: referencedTableName,
2244
+ referencedColumnNames: foreignKeys.map((dbFk) => dbFk["referenced_column_name"]),
2245
+ onDelete: dbForeignKey["on_delete"],
2246
+ onUpdate: dbForeignKey["on_update"],
2247
+ });
2248
+ });
2249
+ // find index constraints of table, group them by constraint name and build TableIndex.
2250
+ const tableIndexConstraints = OrmUtils_1.OrmUtils.uniq(dbIndices.filter((dbIndex) => {
2251
+ return (dbIndex["table_name"] === dbTable["table_name"] &&
2252
+ dbIndex["table_schema"] === dbTable["table_schema"]);
2253
+ }), (dbIndex) => dbIndex["constraint_name"]);
2254
+ table.indices = tableIndexConstraints.map((constraint) => {
2255
+ const indices = dbIndices.filter((index) => index["constraint_name"] ===
2256
+ constraint["constraint_name"]);
2257
+ return new TableIndex_1.TableIndex({
2258
+ table: table,
2259
+ name: constraint["constraint_name"],
2260
+ columnNames: indices.map((i) => i["column_name"]),
2261
+ isUnique: constraint["is_unique"] === "TRUE",
2262
+ where: constraint["condition"],
2263
+ isSpatial: indices.every((i) => this.driver.spatialTypes.indexOf(i["type_name"]) >= 0),
2264
+ isFulltext: false,
2265
+ });
2266
+ });
2267
+ return table;
2268
+ }));
2269
+ }
2270
+ /**
2271
+ * Builds create table sql.
2272
+ *
2273
+ * @param table
2274
+ * @param createForeignKeys
2275
+ */
2276
+ createTableSql(table, createForeignKeys) {
2277
+ const columnDefinitions = table.columns
2278
+ .map((column) => this.buildCreateColumnSql(table, column))
2279
+ .join(", ");
2280
+ let sql = `CREATE TABLE ${this.escapePath(table)} (${columnDefinitions}`;
2281
+ table.columns
2282
+ .filter((column) => column.isUnique)
2283
+ .forEach((column) => {
2284
+ const isUniqueExist = table.uniques.some((unique) => unique.columnNames.length === 1 &&
2285
+ unique.columnNames[0] === column.name);
2286
+ if (!isUniqueExist)
2287
+ table.uniques.push(new TableUnique_1.TableUnique({
2288
+ name: this.dataSource.namingStrategy.uniqueConstraintName(table, [column.name]),
2289
+ columnNames: [column.name],
2290
+ }));
2291
+ });
2292
+ table.indices
2293
+ .filter((index) => index.isUnique)
2294
+ .forEach((index) => {
2295
+ table.uniques.push(new TableUnique_1.TableUnique({
2296
+ name: this.dataSource.namingStrategy.uniqueConstraintName(table, index.columnNames),
2297
+ columnNames: index.columnNames,
2298
+ }));
2299
+ });
2300
+ if (table.uniques.length > 0) {
2301
+ const uniquesSql = table.uniques
2302
+ .map((unique) => {
2303
+ const uniqueName = unique.name ??
2304
+ this.dataSource.namingStrategy.uniqueConstraintName(table, unique.columnNames);
2305
+ const columnNames = unique.columnNames
2306
+ .map((columnName) => `"${columnName}"`)
2307
+ .join(", ");
2308
+ return `CONSTRAINT "${uniqueName}" UNIQUE (${columnNames})`;
2309
+ })
2310
+ .join(", ");
2311
+ sql += `, ${uniquesSql}`;
2312
+ }
2313
+ if (table.checks.length > 0) {
2314
+ const checksSql = table.checks
2315
+ .map((check) => {
2316
+ const checkName = check.name ??
2317
+ this.dataSource.namingStrategy.checkConstraintName(table, check.expression);
2318
+ return `CONSTRAINT "${checkName}" CHECK (${check.expression})`;
2319
+ })
2320
+ .join(", ");
2321
+ sql += `, ${checksSql}`;
2322
+ }
2323
+ if (table.foreignKeys.length > 0 && createForeignKeys) {
2324
+ const foreignKeysSql = table.foreignKeys
2325
+ .map((fk) => {
2326
+ const columnNames = fk.columnNames
2327
+ .map((columnName) => `"${columnName}"`)
2328
+ .join(", ");
2329
+ fk.name ??= this.dataSource.namingStrategy.foreignKeyName(table, fk.columnNames, this.getTablePath(fk), fk.referencedColumnNames);
2330
+ const referencedColumnNames = fk.referencedColumnNames
2331
+ .map((columnName) => `"${columnName}"`)
2332
+ .join(", ");
2333
+ let constraint = `CONSTRAINT "${fk.name}" FOREIGN KEY (${columnNames}) REFERENCES ${this.escapePath(this.getTablePath(fk))} (${referencedColumnNames})`;
2334
+ if (fk.onDelete)
2335
+ constraint += ` ON DELETE ${fk.onDelete}`;
2336
+ if (fk.onUpdate)
2337
+ constraint += ` ON UPDATE ${fk.onUpdate}`;
2338
+ return constraint;
2339
+ })
2340
+ .join(", ");
2341
+ sql += `, ${foreignKeysSql}`;
2342
+ }
2343
+ const primaryColumns = table.columns.filter((column) => column.isPrimary);
2344
+ if (primaryColumns.length > 0) {
2345
+ const primaryKeyName = primaryColumns[0].primaryKeyConstraintName ??
2346
+ this.dataSource.namingStrategy.primaryKeyName(table, primaryColumns.map((column) => column.name));
2347
+ const columnNames = primaryColumns
2348
+ .map((column) => `"${column.name}"`)
2349
+ .join(", ");
2350
+ sql += `, CONSTRAINT "${primaryKeyName}" PRIMARY KEY (${columnNames})`;
2351
+ }
2352
+ sql += `)`;
2353
+ table.columns
2354
+ .filter((it) => it.comment)
2355
+ .forEach((it) => {
2356
+ sql += `; COMMENT ON COLUMN ${this.escapePath(table)}."${it.name}" IS ${this.escapeComment(it.comment)}`;
2357
+ });
2358
+ return new Query_1.Query(sql);
2359
+ }
2360
+ /**
2361
+ * Loads Cockroachdb version.
2362
+ */
2363
+ async getVersion() {
2364
+ const result = await this.query(`SELECT version() AS "version"`);
2365
+ const versionString = result[0].version;
2366
+ return versionString.replace(/^CockroachDB CCL v([\d.]+) .*$/, "$1");
2367
+ }
2368
+ /**
2369
+ * Builds drop table sql.
2370
+ *
2371
+ * @param tableOrPath
2372
+ */
2373
+ dropTableSql(tableOrPath) {
2374
+ return new Query_1.Query(`DROP TABLE ${this.escapePath(tableOrPath)}`);
2375
+ }
2376
+ createViewSql(view) {
2377
+ if (typeof view.expression === "string") {
2378
+ return new Query_1.Query(`CREATE VIEW ${this.escapePath(view)} AS ${view.expression}`);
2379
+ }
2380
+ else {
2381
+ return new Query_1.Query(`CREATE VIEW ${this.escapePath(view)} AS ${view
2382
+ .expression(this.dataSource)
2383
+ .getQuery()}`);
2384
+ }
2385
+ }
2386
+ async insertViewDefinitionSql(view) {
2387
+ const currentSchema = await this.getCurrentSchema();
2388
+ let { schema, tableName: name } = this.driver.parseTableName(view);
2389
+ schema ??= currentSchema;
2390
+ const expression = typeof view.expression === "string"
2391
+ ? view.expression.trim()
2392
+ : view.expression(this.dataSource).getQuery();
2393
+ return this.insertTypeormMetadataSql({
2394
+ type: MetadataTableType_1.MetadataTableType.VIEW,
2395
+ schema: schema,
2396
+ name: name,
2397
+ value: expression,
2398
+ });
2399
+ }
2400
+ /**
2401
+ * Builds drop view sql.
2402
+ *
2403
+ * @param viewOrPath
2404
+ */
2405
+ dropViewSql(viewOrPath) {
2406
+ return new Query_1.Query(`DROP VIEW ${this.escapePath(viewOrPath)}`);
2407
+ }
2408
+ /**
2409
+ * Builds remove view sql.
2410
+ *
2411
+ * @param viewOrPath
2412
+ */
2413
+ async deleteViewDefinitionSql(viewOrPath) {
2414
+ const currentSchema = await this.getCurrentSchema();
2415
+ let { schema, tableName: name } = this.driver.parseTableName(viewOrPath);
2416
+ schema ??= currentSchema;
2417
+ return this.deleteTypeormMetadataSql({
2418
+ type: MetadataTableType_1.MetadataTableType.VIEW,
2419
+ schema,
2420
+ name,
2421
+ });
2422
+ }
2423
+ /**
2424
+ * Drops ENUM type from given schemas.
2425
+ *
2426
+ * @param schemaNames
2427
+ */
2428
+ async dropEnumTypes(schemaNames) {
2429
+ const enums = await this.query(`SELECT quote_ident(n.nspname) || '.' || quote_ident(t.typname) as "name" FROM "pg_type" "t" ` +
2430
+ `INNER JOIN "pg_enum" "e" ON "e"."enumtypid" = "t"."oid" ` +
2431
+ `INNER JOIN "pg_namespace" "n" ON "n"."oid" = "t"."typnamespace" ` +
2432
+ `WHERE "n"."nspname"::STRING = ANY($1::STRING[]) GROUP BY "n"."nspname", "t"."typname"`, [schemaNames]);
2433
+ if (enums.length > 0) {
2434
+ await this.query(`DROP TYPE IF EXISTS ${enums.map(({ name }) => name).join(", ")}`);
2435
+ }
2436
+ }
2437
+ /**
2438
+ * Checks if enum with the given name exist in the database.
2439
+ *
2440
+ * @param table
2441
+ * @param column
2442
+ */
2443
+ async hasEnumType(table, column) {
2444
+ let { schema } = this.driver.parseTableName(table);
2445
+ schema ??= await this.getCurrentSchema();
2446
+ const enumName = this.buildEnumName(table, column, false, true);
2447
+ const sql = `SELECT "n"."nspname", "t"."typname" FROM "pg_type" "t" ` +
2448
+ `INNER JOIN "pg_namespace" "n" ON "n"."oid" = "t"."typnamespace" ` +
2449
+ `WHERE "n"."nspname" = '${schema}' AND "t"."typname" = '${enumName}'`;
2450
+ const result = await this.query(sql);
2451
+ return result.length ? true : false;
2452
+ }
2453
+ /**
2454
+ * Builds create ENUM type sql.
2455
+ *
2456
+ * @param table
2457
+ * @param column
2458
+ * @param enumName
2459
+ */
2460
+ createEnumTypeSql(table, column, enumName) {
2461
+ enumName ??= this.buildEnumName(table, column);
2462
+ const enumValues = column
2463
+ .enum.map((value) => `'${value.replaceAll("'", "''")}'`)
2464
+ .join(", ");
2465
+ return new Query_1.Query(`CREATE TYPE ${enumName} AS ENUM(${enumValues})`);
2466
+ }
2467
+ /**
2468
+ * Builds create ENUM type sql.
2469
+ *
2470
+ * @param table
2471
+ * @param column
2472
+ * @param enumName
2473
+ */
2474
+ dropEnumTypeSql(table, column, enumName) {
2475
+ enumName ??= this.buildEnumName(table, column);
2476
+ return new Query_1.Query(`DROP TYPE ${enumName}`);
2477
+ }
2478
+ /**
2479
+ * Builds create index sql.
2480
+ * UNIQUE indices creates as UNIQUE constraints.
2481
+ *
2482
+ * @param table
2483
+ * @param index
2484
+ */
2485
+ createIndexSql(table, index) {
2486
+ const columns = index.columnNames
2487
+ .map((columnName) => `"${columnName}"`)
2488
+ .join(", ");
2489
+ return new Query_1.Query(`CREATE ${index.isUnique ? "UNIQUE " : ""}INDEX "${index.name}" ON ${this.escapePath(table)} ${index.isSpatial ? "USING GiST " : ""}(${columns}) ${index.where ? "WHERE " + index.where : ""}`);
2490
+ }
2491
+ /**
2492
+ * Builds drop index sql.
2493
+ *
2494
+ * @param table
2495
+ * @param indexOrName
2496
+ * @param ifExists
2497
+ */
2498
+ dropIndexSql(table, indexOrName, ifExists) {
2499
+ const indexName = InstanceChecker_1.InstanceChecker.isTableIndex(indexOrName) ||
2500
+ InstanceChecker_1.InstanceChecker.isTableUnique(indexOrName)
2501
+ ? indexOrName.name
2502
+ : indexOrName;
2503
+ return new Query_1.Query(`DROP INDEX ${ifExists ? "IF EXISTS " : ""}${this.escapePath(table)}@"${indexName}" CASCADE`);
2504
+ }
2505
+ /**
2506
+ * Builds create primary key sql.
2507
+ *
2508
+ * @param table
2509
+ * @param columnNames
2510
+ * @param constraintName
2511
+ */
2512
+ createPrimaryKeySql(table, columnNames, constraintName) {
2513
+ const primaryKeyName = constraintName ??
2514
+ this.dataSource.namingStrategy.primaryKeyName(table, columnNames);
2515
+ const columnNamesString = columnNames
2516
+ .map((columnName) => `"${columnName}"`)
2517
+ .join(", ");
2518
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${primaryKeyName}" PRIMARY KEY (${columnNamesString})`);
2519
+ }
2520
+ /**
2521
+ * Builds drop primary key sql.
2522
+ *
2523
+ * @param table
2524
+ * @param ifExists
2525
+ */
2526
+ dropPrimaryKeySql(table, ifExists) {
2527
+ if (!table.primaryColumns.length)
2528
+ throw new error_1.TypeORMError(`Table ${table} has no primary keys.`);
2529
+ const columnNames = table.primaryColumns.map((column) => column.name);
2530
+ const constraintName = table.primaryColumns[0].primaryKeyConstraintName;
2531
+ const primaryKeyName = constraintName ??
2532
+ this.dataSource.namingStrategy.primaryKeyName(table, columnNames);
2533
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT ${ifExists ? "IF EXISTS " : ""}"${primaryKeyName}"`);
2534
+ }
2535
+ /**
2536
+ * Builds create unique constraint sql.
2537
+ *
2538
+ * @param table
2539
+ * @param uniqueConstraint
2540
+ */
2541
+ createUniqueConstraintSql(table, uniqueConstraint) {
2542
+ const columnNames = uniqueConstraint.columnNames
2543
+ .map((column) => `"` + column + `"`)
2544
+ .join(", ");
2545
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${uniqueConstraint.name}" UNIQUE (${columnNames})`);
2546
+ }
2547
+ /**
2548
+ * Builds drop unique constraint sql.
2549
+ *
2550
+ * @param table
2551
+ * @param uniqueOrName
2552
+ */
2553
+ dropUniqueConstraintSql(table, uniqueOrName) {
2554
+ const uniqueName = InstanceChecker_1.InstanceChecker.isTableUnique(uniqueOrName)
2555
+ ? uniqueOrName.name
2556
+ : uniqueOrName;
2557
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT "${uniqueName}"`);
2558
+ }
2559
+ /**
2560
+ * Builds create check constraint sql.
2561
+ *
2562
+ * @param table
2563
+ * @param checkConstraint
2564
+ */
2565
+ createCheckConstraintSql(table, checkConstraint) {
2566
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${checkConstraint.name}" CHECK (${checkConstraint.expression})`);
2567
+ }
2568
+ /**
2569
+ * Builds drop check constraint sql.
2570
+ *
2571
+ * @param table
2572
+ * @param checkOrName
2573
+ * @param ifExists
2574
+ */
2575
+ dropCheckConstraintSql(table, checkOrName, ifExists) {
2576
+ const checkName = InstanceChecker_1.InstanceChecker.isTableCheck(checkOrName)
2577
+ ? checkOrName.name
2578
+ : checkOrName;
2579
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT ${ifExists ? "IF EXISTS " : ""}"${checkName}"`);
2580
+ }
2581
+ /**
2582
+ * Builds create foreign key sql.
2583
+ *
2584
+ * @param table
2585
+ * @param foreignKey
2586
+ */
2587
+ createForeignKeySql(table, foreignKey) {
2588
+ const columnNames = foreignKey.columnNames
2589
+ .map((column) => `"` + column + `"`)
2590
+ .join(", ");
2591
+ const referencedColumnNames = foreignKey.referencedColumnNames
2592
+ .map((column) => `"` + column + `"`)
2593
+ .join(",");
2594
+ let sql = `ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT "${foreignKey.name}" FOREIGN KEY (${columnNames}) ` +
2595
+ `REFERENCES ${this.escapePath(this.getTablePath(foreignKey))}(${referencedColumnNames})`;
2596
+ if (foreignKey.onDelete)
2597
+ sql += ` ON DELETE ${foreignKey.onDelete}`;
2598
+ if (foreignKey.onUpdate)
2599
+ sql += ` ON UPDATE ${foreignKey.onUpdate}`;
2600
+ return new Query_1.Query(sql);
2601
+ }
2602
+ /**
2603
+ * Builds drop foreign key sql.
2604
+ *
2605
+ * @param table
2606
+ * @param foreignKeyOrName
2607
+ * @param ifExists
2608
+ */
2609
+ dropForeignKeySql(table, foreignKeyOrName, ifExists) {
2610
+ const foreignKeyName = InstanceChecker_1.InstanceChecker.isTableForeignKey(foreignKeyOrName)
2611
+ ? foreignKeyOrName.name
2612
+ : foreignKeyOrName;
2613
+ return new Query_1.Query(`ALTER TABLE ${this.escapePath(table)} DROP CONSTRAINT ${ifExists ? "IF EXISTS " : ""}"${foreignKeyName}"`);
2614
+ }
2615
+ /**
2616
+ * Builds sequence name from given table and column.
2617
+ *
2618
+ * @param table
2619
+ * @param columnOrName
2620
+ */
2621
+ buildSequenceName(table, columnOrName) {
2622
+ const { tableName } = this.driver.parseTableName(table);
2623
+ const columnName = InstanceChecker_1.InstanceChecker.isTableColumn(columnOrName)
2624
+ ? columnOrName.name
2625
+ : columnOrName;
2626
+ return `${tableName}_${columnName}_seq`;
2627
+ }
2628
+ buildSequencePath(table, columnOrName) {
2629
+ const { schema } = this.driver.parseTableName(table);
2630
+ return schema
2631
+ ? `${schema}.${this.buildSequenceName(table, columnOrName)}`
2632
+ : this.buildSequenceName(table, columnOrName);
2633
+ }
2634
+ /**
2635
+ * Builds ENUM type name from given table and column.
2636
+ *
2637
+ * @param table
2638
+ * @param column
2639
+ * @param withSchema
2640
+ * @param disableEscape
2641
+ * @param toOld
2642
+ */
2643
+ buildEnumName(table, column, withSchema = true, disableEscape, toOld) {
2644
+ const { schema, tableName } = this.driver.parseTableName(table);
2645
+ let enumName = column.enumName ?? `${tableName}_${column.name.toLowerCase()}_enum`;
2646
+ if (schema && withSchema)
2647
+ enumName = `${schema}.${enumName}`;
2648
+ if (toOld)
2649
+ enumName = enumName + "_old";
2650
+ return enumName
2651
+ .split(".")
2652
+ .map((i) => {
2653
+ return disableEscape ? i : `"${i}"`;
2654
+ })
2655
+ .join(".");
2656
+ }
2657
+ async getUserDefinedTypeName(table, column) {
2658
+ let { schema, tableName: name } = this.driver.parseTableName(table);
2659
+ schema ??= await this.getCurrentSchema();
2660
+ const result = await this.query(`SELECT "udt_schema", "udt_name" ` +
2661
+ `FROM "information_schema"."columns" WHERE "table_schema" = '${schema}' AND "table_name" = '${name}' AND "column_name"='${column.name}'`);
2662
+ // docs: https://www.postgresql.org/docs/current/xtypes.html
2663
+ // When you define a new base type, PostgreSQL automatically provides support for arrays of that type.
2664
+ // The array type typically has the same name as the base type with the underscore character (_) prepended.
2665
+ // ----
2666
+ // so, we must remove this underscore character from enum type name
2667
+ let udtName = result[0]["udt_name"];
2668
+ if (udtName.startsWith("_")) {
2669
+ udtName = udtName.slice(1);
2670
+ }
2671
+ return {
2672
+ schema: result[0]["udt_schema"],
2673
+ name: udtName,
2674
+ };
2675
+ }
2676
+ /**
2677
+ * Escapes a given comment so it's safe to include in a query.
2678
+ *
2679
+ * @param comment
2680
+ */
2681
+ escapeComment(comment) {
2682
+ if (comment === undefined || comment.length === 0) {
2683
+ return "NULL";
2684
+ }
2685
+ comment = comment.replaceAll("'", "''").replaceAll("\u0000", ""); // Null bytes aren't allowed in comments
2686
+ return `'${comment}'`;
2687
+ }
2688
+ /**
2689
+ * Escapes given table or view path.
2690
+ *
2691
+ * @param target
2692
+ */
2693
+ escapePath(target) {
2694
+ const { schema, tableName } = this.driver.parseTableName(target);
2695
+ if (schema && schema !== this.driver.searchSchema) {
2696
+ return `"${schema}"."${tableName}"`;
2697
+ }
2698
+ return `"${tableName}"`;
2699
+ }
2700
+ /**
2701
+ * Builds a query for create column.
2702
+ *
2703
+ * @param table
2704
+ * @param column
2705
+ */
2706
+ buildCreateColumnSql(table, column) {
2707
+ let c = '"' + column.name + '"';
2708
+ if (column.isGenerated) {
2709
+ if (column.generationStrategy === "increment") {
2710
+ c += ` INT DEFAULT nextval('${this.escapePath(this.buildSequencePath(table, column))}')`;
2711
+ }
2712
+ else if (column.generationStrategy === "rowid") {
2713
+ c += " INT DEFAULT unique_rowid()";
2714
+ }
2715
+ else if (column.generationStrategy === "uuid") {
2716
+ c += " UUID DEFAULT gen_random_uuid()";
2717
+ }
2718
+ }
2719
+ if (column.type === "enum" || column.type === "simple-enum") {
2720
+ c += " " + this.buildEnumName(table, column);
2721
+ if (column.isArray)
2722
+ c += " array";
2723
+ }
2724
+ else if (!column.isGenerated) {
2725
+ c += " " + this.dataSource.driver.createFullType(column);
2726
+ }
2727
+ if (column.asExpression) {
2728
+ c += ` AS (${column.asExpression}) ${column.generatedType ?? "VIRTUAL"}`;
2729
+ }
2730
+ else {
2731
+ if (column.charset)
2732
+ c += ' CHARACTER SET "' + column.charset + '"';
2733
+ if (column.collation)
2734
+ c += ' COLLATE "' + column.collation + '"';
2735
+ }
2736
+ if (!column.isNullable)
2737
+ c += " NOT NULL";
2738
+ if (!column.isGenerated &&
2739
+ column.default !== undefined &&
2740
+ column.default !== null)
2741
+ c += " DEFAULT " + column.default;
2742
+ return c;
2743
+ }
2744
+ /**
2745
+ * Change table comment.
2746
+ *
2747
+ * @param tableOrName
2748
+ * @param comment
2749
+ */
2750
+ changeTableComment(tableOrName, comment) {
2751
+ throw new error_1.TypeORMError(`cockroachdb driver does not support change table comment.`);
2752
+ }
2753
+ }
2754
+ exports.CockroachQueryRunner = CockroachQueryRunner;
2755
+ //# sourceMappingURL=CockroachQueryRunner.js.map