@lakutata/orm 3.0.0 → 3.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1705) hide show
  1. package/README.md +160 -76
  2. package/README.zh-CN.md +452 -0
  3. package/THIRD_PARTY_NOTICES.md +260 -4
  4. package/dist/cjs/components/Database.d.ts +31 -22
  5. package/dist/cjs/components/Database.js +14 -5
  6. package/dist/cjs/decorators/orm/AfterInsert.d.ts +1 -1
  7. package/dist/cjs/decorators/orm/AfterInsert.js +1 -1
  8. package/dist/cjs/decorators/orm/AfterLoad.d.ts +1 -1
  9. package/dist/cjs/decorators/orm/AfterLoad.js +1 -1
  10. package/dist/cjs/decorators/orm/AfterRecover.d.ts +1 -1
  11. package/dist/cjs/decorators/orm/AfterRecover.js +1 -1
  12. package/dist/cjs/decorators/orm/AfterRemove.d.ts +1 -1
  13. package/dist/cjs/decorators/orm/AfterRemove.js +1 -1
  14. package/dist/cjs/decorators/orm/AfterSoftRemove.d.ts +1 -1
  15. package/dist/cjs/decorators/orm/AfterSoftRemove.js +1 -1
  16. package/dist/cjs/decorators/orm/AfterUpdate.d.ts +1 -1
  17. package/dist/cjs/decorators/orm/AfterUpdate.js +1 -1
  18. package/dist/cjs/decorators/orm/BeforeInsert.d.ts +1 -1
  19. package/dist/cjs/decorators/orm/BeforeInsert.js +1 -1
  20. package/dist/cjs/decorators/orm/BeforeRecover.d.ts +1 -1
  21. package/dist/cjs/decorators/orm/BeforeRecover.js +1 -1
  22. package/dist/cjs/decorators/orm/BeforeRemove.d.ts +1 -1
  23. package/dist/cjs/decorators/orm/BeforeRemove.js +1 -1
  24. package/dist/cjs/decorators/orm/BeforeSoftRemove.d.ts +1 -1
  25. package/dist/cjs/decorators/orm/BeforeSoftRemove.js +1 -1
  26. package/dist/cjs/decorators/orm/BeforeUpdate.d.ts +1 -1
  27. package/dist/cjs/decorators/orm/BeforeUpdate.js +1 -1
  28. package/dist/cjs/decorators/orm/Check.d.ts +1 -1
  29. package/dist/cjs/decorators/orm/Check.js +1 -1
  30. package/dist/cjs/decorators/orm/ChildEntity.d.ts +1 -1
  31. package/dist/cjs/decorators/orm/ChildEntity.js +1 -1
  32. package/dist/cjs/decorators/orm/Column.d.ts +1 -1
  33. package/dist/cjs/decorators/orm/Column.js +1 -1
  34. package/dist/cjs/decorators/orm/CreateDateColumn.d.ts +1 -1
  35. package/dist/cjs/decorators/orm/CreateDateColumn.js +1 -1
  36. package/dist/cjs/decorators/orm/DeleteDateColumn.d.ts +1 -1
  37. package/dist/cjs/decorators/orm/DeleteDateColumn.js +1 -1
  38. package/dist/cjs/decorators/orm/Entity.d.ts +1 -1
  39. package/dist/cjs/decorators/orm/Entity.js +1 -1
  40. package/dist/cjs/decorators/orm/EventSubscriber.d.ts +1 -1
  41. package/dist/cjs/decorators/orm/EventSubscriber.js +1 -1
  42. package/dist/cjs/decorators/orm/Exclusion.d.ts +1 -1
  43. package/dist/cjs/decorators/orm/Exclusion.js +1 -1
  44. package/dist/cjs/decorators/orm/Generated.d.ts +1 -1
  45. package/dist/cjs/decorators/orm/Generated.js +1 -1
  46. package/dist/cjs/decorators/orm/Index.d.ts +1 -1
  47. package/dist/cjs/decorators/orm/Index.js +1 -1
  48. package/dist/cjs/decorators/orm/JoinColumn.d.ts +1 -1
  49. package/dist/cjs/decorators/orm/JoinColumn.js +1 -1
  50. package/dist/cjs/decorators/orm/JoinTable.d.ts +1 -1
  51. package/dist/cjs/decorators/orm/JoinTable.js +1 -1
  52. package/dist/cjs/decorators/orm/ManyToMany.d.ts +1 -1
  53. package/dist/cjs/decorators/orm/ManyToMany.js +1 -1
  54. package/dist/cjs/decorators/orm/ManyToOne.d.ts +1 -1
  55. package/dist/cjs/decorators/orm/ManyToOne.js +1 -1
  56. package/dist/cjs/decorators/orm/ObjectIdColumn.d.ts +1 -1
  57. package/dist/cjs/decorators/orm/ObjectIdColumn.js +1 -1
  58. package/dist/cjs/decorators/orm/OneToMany.d.ts +1 -1
  59. package/dist/cjs/decorators/orm/OneToMany.js +1 -1
  60. package/dist/cjs/decorators/orm/OneToOne.d.ts +1 -1
  61. package/dist/cjs/decorators/orm/OneToOne.js +1 -1
  62. package/dist/cjs/decorators/orm/PrimaryColumn.d.ts +1 -1
  63. package/dist/cjs/decorators/orm/PrimaryColumn.js +1 -1
  64. package/dist/cjs/decorators/orm/PrimaryGeneratedColumn.d.ts +1 -1
  65. package/dist/cjs/decorators/orm/PrimaryGeneratedColumn.js +1 -1
  66. package/dist/cjs/decorators/orm/RelationId.d.ts +1 -1
  67. package/dist/cjs/decorators/orm/RelationId.js +1 -1
  68. package/dist/cjs/decorators/orm/TableInheritance.d.ts +1 -1
  69. package/dist/cjs/decorators/orm/TableInheritance.js +1 -1
  70. package/dist/cjs/decorators/orm/Tree.d.ts +1 -1
  71. package/dist/cjs/decorators/orm/Tree.js +1 -1
  72. package/dist/cjs/decorators/orm/TreeChildren.d.ts +1 -1
  73. package/dist/cjs/decorators/orm/TreeChildren.js +1 -1
  74. package/dist/cjs/decorators/orm/TreeLevelColumn.d.ts +1 -1
  75. package/dist/cjs/decorators/orm/TreeLevelColumn.js +1 -1
  76. package/dist/cjs/decorators/orm/TreeParent.d.ts +1 -1
  77. package/dist/cjs/decorators/orm/TreeParent.js +1 -1
  78. package/dist/cjs/decorators/orm/Unique.d.ts +1 -1
  79. package/dist/cjs/decorators/orm/Unique.js +1 -1
  80. package/dist/cjs/decorators/orm/UpdateDateColumn.d.ts +1 -1
  81. package/dist/cjs/decorators/orm/UpdateDateColumn.js +1 -1
  82. package/dist/cjs/decorators/orm/VersionColumn.d.ts +1 -1
  83. package/dist/cjs/decorators/orm/VersionColumn.js +1 -1
  84. package/dist/cjs/decorators/orm/ViewColumn.d.ts +1 -1
  85. package/dist/cjs/decorators/orm/ViewColumn.js +1 -1
  86. package/dist/cjs/decorators/orm/ViewEntity.d.ts +1 -1
  87. package/dist/cjs/decorators/orm/ViewEntity.js +1 -1
  88. package/dist/cjs/decorators/orm/VirtualColumn.d.ts +1 -1
  89. package/dist/cjs/decorators/orm/VirtualColumn.js +1 -1
  90. package/dist/cjs/exports/ORM.d.ts +189 -192
  91. package/dist/cjs/exports/ORM.js +120 -121
  92. package/dist/cjs/lib/ConnectionOptions.d.ts +10 -0
  93. package/dist/cjs/lib/ConnectionOptions.js +17 -0
  94. package/dist/cjs/providers/Database.d.ts +33 -26
  95. package/dist/cjs/providers/Database.js +15 -8
  96. package/dist/cjs/providers/migration/ExecuteMigration.d.ts +5 -4
  97. package/dist/cjs/providers/migration/ExecuteMigration.js +9 -5
  98. package/dist/cjs/providers/migration/GenerateMigration.d.ts +35 -5
  99. package/dist/cjs/providers/migration/GenerateMigration.js +30 -10
  100. package/dist/cjs/types/LegacyConnectionOptions.d.ts +102 -0
  101. package/dist/cjs/types/LegacyConnectionOptions.js +2 -0
  102. package/dist/cjs/types/MigrationRunOptions.d.ts +4 -1
  103. package/dist/esm/components/Database.js +14 -5
  104. package/dist/esm/decorators/orm/AfterInsert.js +1 -1
  105. package/dist/esm/decorators/orm/AfterLoad.js +1 -1
  106. package/dist/esm/decorators/orm/AfterRecover.js +1 -1
  107. package/dist/esm/decorators/orm/AfterRemove.js +1 -1
  108. package/dist/esm/decorators/orm/AfterSoftRemove.js +1 -1
  109. package/dist/esm/decorators/orm/AfterUpdate.js +1 -1
  110. package/dist/esm/decorators/orm/BeforeInsert.js +1 -1
  111. package/dist/esm/decorators/orm/BeforeRecover.js +1 -1
  112. package/dist/esm/decorators/orm/BeforeRemove.js +1 -1
  113. package/dist/esm/decorators/orm/BeforeSoftRemove.js +1 -1
  114. package/dist/esm/decorators/orm/BeforeUpdate.js +1 -1
  115. package/dist/esm/decorators/orm/Check.js +1 -1
  116. package/dist/esm/decorators/orm/ChildEntity.js +1 -1
  117. package/dist/esm/decorators/orm/Column.js +1 -1
  118. package/dist/esm/decorators/orm/CreateDateColumn.js +1 -1
  119. package/dist/esm/decorators/orm/DeleteDateColumn.js +1 -1
  120. package/dist/esm/decorators/orm/Entity.js +1 -1
  121. package/dist/esm/decorators/orm/EventSubscriber.js +1 -1
  122. package/dist/esm/decorators/orm/Exclusion.js +1 -1
  123. package/dist/esm/decorators/orm/Generated.js +1 -1
  124. package/dist/esm/decorators/orm/Index.js +1 -1
  125. package/dist/esm/decorators/orm/JoinColumn.js +1 -1
  126. package/dist/esm/decorators/orm/JoinTable.js +1 -1
  127. package/dist/esm/decorators/orm/ManyToMany.js +1 -1
  128. package/dist/esm/decorators/orm/ManyToOne.js +1 -1
  129. package/dist/esm/decorators/orm/ObjectIdColumn.js +1 -1
  130. package/dist/esm/decorators/orm/OneToMany.js +1 -1
  131. package/dist/esm/decorators/orm/OneToOne.js +1 -1
  132. package/dist/esm/decorators/orm/PrimaryColumn.js +1 -1
  133. package/dist/esm/decorators/orm/PrimaryGeneratedColumn.js +1 -1
  134. package/dist/esm/decorators/orm/RelationId.js +1 -1
  135. package/dist/esm/decorators/orm/TableInheritance.js +1 -1
  136. package/dist/esm/decorators/orm/Tree.js +1 -1
  137. package/dist/esm/decorators/orm/TreeChildren.js +1 -1
  138. package/dist/esm/decorators/orm/TreeLevelColumn.js +1 -1
  139. package/dist/esm/decorators/orm/TreeParent.js +1 -1
  140. package/dist/esm/decorators/orm/Unique.js +1 -1
  141. package/dist/esm/decorators/orm/UpdateDateColumn.js +1 -1
  142. package/dist/esm/decorators/orm/VersionColumn.js +1 -1
  143. package/dist/esm/decorators/orm/ViewColumn.js +1 -1
  144. package/dist/esm/decorators/orm/ViewEntity.js +1 -1
  145. package/dist/esm/decorators/orm/VirtualColumn.js +1 -1
  146. package/dist/esm/exports/ORM.js +116 -119
  147. package/dist/esm/lib/ConnectionOptions.js +14 -0
  148. package/dist/esm/providers/Database.js +15 -8
  149. package/dist/esm/providers/migration/ExecuteMigration.js +9 -5
  150. package/dist/esm/providers/migration/GenerateMigration.js +30 -10
  151. package/dist/esm/types/LegacyConnectionOptions.js +1 -0
  152. package/dist/types/components/Database.d.ts +31 -22
  153. package/dist/types/decorators/orm/AfterInsert.d.ts +1 -1
  154. package/dist/types/decorators/orm/AfterLoad.d.ts +1 -1
  155. package/dist/types/decorators/orm/AfterRecover.d.ts +1 -1
  156. package/dist/types/decorators/orm/AfterRemove.d.ts +1 -1
  157. package/dist/types/decorators/orm/AfterSoftRemove.d.ts +1 -1
  158. package/dist/types/decorators/orm/AfterUpdate.d.ts +1 -1
  159. package/dist/types/decorators/orm/BeforeInsert.d.ts +1 -1
  160. package/dist/types/decorators/orm/BeforeRecover.d.ts +1 -1
  161. package/dist/types/decorators/orm/BeforeRemove.d.ts +1 -1
  162. package/dist/types/decorators/orm/BeforeSoftRemove.d.ts +1 -1
  163. package/dist/types/decorators/orm/BeforeUpdate.d.ts +1 -1
  164. package/dist/types/decorators/orm/Check.d.ts +1 -1
  165. package/dist/types/decorators/orm/ChildEntity.d.ts +1 -1
  166. package/dist/types/decorators/orm/Column.d.ts +1 -1
  167. package/dist/types/decorators/orm/CreateDateColumn.d.ts +1 -1
  168. package/dist/types/decorators/orm/DeleteDateColumn.d.ts +1 -1
  169. package/dist/types/decorators/orm/Entity.d.ts +1 -1
  170. package/dist/types/decorators/orm/EventSubscriber.d.ts +1 -1
  171. package/dist/types/decorators/orm/Exclusion.d.ts +1 -1
  172. package/dist/types/decorators/orm/Generated.d.ts +1 -1
  173. package/dist/types/decorators/orm/Index.d.ts +1 -1
  174. package/dist/types/decorators/orm/JoinColumn.d.ts +1 -1
  175. package/dist/types/decorators/orm/JoinTable.d.ts +1 -1
  176. package/dist/types/decorators/orm/ManyToMany.d.ts +1 -1
  177. package/dist/types/decorators/orm/ManyToOne.d.ts +1 -1
  178. package/dist/types/decorators/orm/ObjectIdColumn.d.ts +1 -1
  179. package/dist/types/decorators/orm/OneToMany.d.ts +1 -1
  180. package/dist/types/decorators/orm/OneToOne.d.ts +1 -1
  181. package/dist/types/decorators/orm/PrimaryColumn.d.ts +1 -1
  182. package/dist/types/decorators/orm/PrimaryGeneratedColumn.d.ts +1 -1
  183. package/dist/types/decorators/orm/RelationId.d.ts +1 -1
  184. package/dist/types/decorators/orm/TableInheritance.d.ts +1 -1
  185. package/dist/types/decorators/orm/Tree.d.ts +1 -1
  186. package/dist/types/decorators/orm/TreeChildren.d.ts +1 -1
  187. package/dist/types/decorators/orm/TreeLevelColumn.d.ts +1 -1
  188. package/dist/types/decorators/orm/TreeParent.d.ts +1 -1
  189. package/dist/types/decorators/orm/Unique.d.ts +1 -1
  190. package/dist/types/decorators/orm/UpdateDateColumn.d.ts +1 -1
  191. package/dist/types/decorators/orm/VersionColumn.d.ts +1 -1
  192. package/dist/types/decorators/orm/ViewColumn.d.ts +1 -1
  193. package/dist/types/decorators/orm/ViewEntity.d.ts +1 -1
  194. package/dist/types/decorators/orm/VirtualColumn.d.ts +1 -1
  195. package/dist/types/exports/ORM.d.ts +189 -192
  196. package/dist/types/lib/ConnectionOptions.d.ts +10 -0
  197. package/dist/types/providers/Database.d.ts +33 -26
  198. package/dist/types/providers/migration/ExecuteMigration.d.ts +5 -4
  199. package/dist/types/providers/migration/GenerateMigration.d.ts +35 -5
  200. package/dist/types/types/LegacyConnectionOptions.d.ts +102 -0
  201. package/dist/types/types/MigrationRunOptions.d.ts +4 -1
  202. package/dist/vendor/typeorm/cache/DbQueryResultCache.d.ts +70 -0
  203. package/dist/vendor/typeorm/cache/DbQueryResultCache.js +301 -0
  204. package/dist/vendor/typeorm/cache/DbQueryResultCache.js.map +1 -0
  205. package/dist/vendor/typeorm/cache/QueryResultCache.d.ts +41 -0
  206. package/dist/vendor/typeorm/cache/QueryResultCache.js +3 -0
  207. package/dist/vendor/typeorm/cache/QueryResultCache.js.map +1 -0
  208. package/dist/vendor/typeorm/cache/QueryResultCacheFactory.d.ts +13 -0
  209. package/dist/vendor/typeorm/cache/QueryResultCacheFactory.js +41 -0
  210. package/dist/vendor/typeorm/cache/QueryResultCacheFactory.js.map +1 -0
  211. package/dist/vendor/typeorm/cache/QueryResultCacheOptions.d.ts +26 -0
  212. package/dist/vendor/typeorm/cache/QueryResultCacheOptions.js +3 -0
  213. package/dist/vendor/typeorm/cache/QueryResultCacheOptions.js.map +1 -0
  214. package/dist/vendor/typeorm/cache/RedisQueryResultCache.d.ts +84 -0
  215. package/dist/vendor/typeorm/cache/RedisQueryResultCache.js +185 -0
  216. package/dist/vendor/typeorm/cache/RedisQueryResultCache.js.map +1 -0
  217. package/dist/vendor/typeorm/commands/CommandUtils.d.ts +34 -0
  218. package/dist/vendor/typeorm/commands/CommandUtils.js +107 -0
  219. package/dist/vendor/typeorm/commands/CommandUtils.js.map +1 -0
  220. package/dist/vendor/typeorm/common/DeepPartial.d.ts +6 -0
  221. package/dist/vendor/typeorm/common/DeepPartial.js +3 -0
  222. package/dist/vendor/typeorm/common/DeepPartial.js.map +1 -0
  223. package/dist/vendor/typeorm/common/EntityTarget.d.ts +9 -0
  224. package/dist/vendor/typeorm/common/EntityTarget.js +3 -0
  225. package/dist/vendor/typeorm/common/EntityTarget.js.map +1 -0
  226. package/dist/vendor/typeorm/common/MixedList.d.ts +8 -0
  227. package/dist/vendor/typeorm/common/MixedList.js +3 -0
  228. package/dist/vendor/typeorm/common/MixedList.js.map +1 -0
  229. package/dist/vendor/typeorm/common/NonNever.d.ts +6 -0
  230. package/dist/vendor/typeorm/common/NonNever.js +3 -0
  231. package/dist/vendor/typeorm/common/NonNever.js.map +1 -0
  232. package/dist/vendor/typeorm/common/ObjectLiteral.d.ts +6 -0
  233. package/dist/vendor/typeorm/common/ObjectLiteral.js +3 -0
  234. package/dist/vendor/typeorm/common/ObjectLiteral.js.map +1 -0
  235. package/dist/vendor/typeorm/common/ObjectType.d.ts +6 -0
  236. package/dist/vendor/typeorm/common/ObjectType.js +3 -0
  237. package/dist/vendor/typeorm/common/ObjectType.js.map +1 -0
  238. package/dist/vendor/typeorm/common/PickKeysByType.d.ts +6 -0
  239. package/dist/vendor/typeorm/common/PickKeysByType.js +3 -0
  240. package/dist/vendor/typeorm/common/PickKeysByType.js.map +1 -0
  241. package/dist/vendor/typeorm/common/PrimitiveCriteria.d.ts +2 -0
  242. package/dist/vendor/typeorm/common/PrimitiveCriteria.js +3 -0
  243. package/dist/vendor/typeorm/common/PrimitiveCriteria.js.map +1 -0
  244. package/dist/vendor/typeorm/common/RelationType.d.ts +16 -0
  245. package/dist/vendor/typeorm/common/RelationType.js +3 -0
  246. package/dist/vendor/typeorm/common/RelationType.js.map +1 -0
  247. package/dist/vendor/typeorm/connection/ConnectionMetadataBuilder.d.ts +30 -0
  248. package/dist/vendor/typeorm/connection/ConnectionMetadataBuilder.js +78 -0
  249. package/dist/vendor/typeorm/connection/ConnectionMetadataBuilder.js.map +1 -0
  250. package/dist/vendor/typeorm/connection/ConnectionOptionsReader.d.ts +56 -0
  251. package/dist/vendor/typeorm/connection/ConnectionOptionsReader.js +165 -0
  252. package/dist/vendor/typeorm/connection/ConnectionOptionsReader.js.map +1 -0
  253. package/dist/vendor/typeorm/data-source/BaseDataSourceOptions.d.ts +180 -0
  254. package/dist/vendor/typeorm/data-source/BaseDataSourceOptions.js +3 -0
  255. package/dist/vendor/typeorm/data-source/BaseDataSourceOptions.js.map +1 -0
  256. package/dist/vendor/typeorm/data-source/DataSource.d.ts +277 -0
  257. package/dist/vendor/typeorm/data-source/DataSource.js +555 -0
  258. package/dist/vendor/typeorm/data-source/DataSource.js.map +1 -0
  259. package/dist/vendor/typeorm/data-source/DataSourceOptions.d.ts +22 -0
  260. package/dist/vendor/typeorm/data-source/DataSourceOptions.js +3 -0
  261. package/dist/vendor/typeorm/data-source/DataSourceOptions.js.map +1 -0
  262. package/dist/vendor/typeorm/data-source/index.d.ts +2 -0
  263. package/dist/vendor/typeorm/data-source/index.js +5 -0
  264. package/dist/vendor/typeorm/data-source/index.js.map +1 -0
  265. package/dist/vendor/typeorm/decorator/Check.d.ts +17 -0
  266. package/dist/vendor/typeorm/decorator/Check.js +29 -0
  267. package/dist/vendor/typeorm/decorator/Check.js.map +1 -0
  268. package/dist/vendor/typeorm/decorator/Exclusion.d.ts +20 -0
  269. package/dist/vendor/typeorm/decorator/Exclusion.js +33 -0
  270. package/dist/vendor/typeorm/decorator/Exclusion.js.map +1 -0
  271. package/dist/vendor/typeorm/decorator/ForeignKey.d.ts +34 -0
  272. package/dist/vendor/typeorm/decorator/ForeignKey.js +48 -0
  273. package/dist/vendor/typeorm/decorator/ForeignKey.js.map +1 -0
  274. package/dist/vendor/typeorm/decorator/Generated.d.ts +12 -0
  275. package/dist/vendor/typeorm/decorator/Generated.js +25 -0
  276. package/dist/vendor/typeorm/decorator/Generated.js.map +1 -0
  277. package/dist/vendor/typeorm/decorator/Index.d.ts +72 -0
  278. package/dist/vendor/typeorm/decorator/Index.js +59 -0
  279. package/dist/vendor/typeorm/decorator/Index.js.map +1 -0
  280. package/dist/vendor/typeorm/decorator/Unique.d.ts +35 -0
  281. package/dist/vendor/typeorm/decorator/Unique.js +52 -0
  282. package/dist/vendor/typeorm/decorator/Unique.js.map +1 -0
  283. package/dist/vendor/typeorm/decorator/columns/Column.d.ts +106 -0
  284. package/dist/vendor/typeorm/decorator/columns/Column.js +79 -0
  285. package/dist/vendor/typeorm/decorator/columns/Column.js.map +1 -0
  286. package/dist/vendor/typeorm/decorator/columns/CreateDateColumn.d.ts +9 -0
  287. package/dist/vendor/typeorm/decorator/columns/CreateDateColumn.js +22 -0
  288. package/dist/vendor/typeorm/decorator/columns/CreateDateColumn.js.map +1 -0
  289. package/dist/vendor/typeorm/decorator/columns/DeleteDateColumn.d.ts +8 -0
  290. package/dist/vendor/typeorm/decorator/columns/DeleteDateColumn.js +21 -0
  291. package/dist/vendor/typeorm/decorator/columns/DeleteDateColumn.js.map +1 -0
  292. package/dist/vendor/typeorm/decorator/columns/ObjectIdColumn.d.ts +8 -0
  293. package/dist/vendor/typeorm/decorator/columns/ObjectIdColumn.js +26 -0
  294. package/dist/vendor/typeorm/decorator/columns/ObjectIdColumn.js.map +1 -0
  295. package/dist/vendor/typeorm/decorator/columns/PrimaryColumn.d.ts +26 -0
  296. package/dist/vendor/typeorm/decorator/columns/PrimaryColumn.js +64 -0
  297. package/dist/vendor/typeorm/decorator/columns/PrimaryColumn.js.map +1 -0
  298. package/dist/vendor/typeorm/decorator/columns/PrimaryGeneratedColumn.d.ts +35 -0
  299. package/dist/vendor/typeorm/decorator/columns/PrimaryGeneratedColumn.js +61 -0
  300. package/dist/vendor/typeorm/decorator/columns/PrimaryGeneratedColumn.js.map +1 -0
  301. package/dist/vendor/typeorm/decorator/columns/UpdateDateColumn.d.ts +8 -0
  302. package/dist/vendor/typeorm/decorator/columns/UpdateDateColumn.js +21 -0
  303. package/dist/vendor/typeorm/decorator/columns/UpdateDateColumn.js.map +1 -0
  304. package/dist/vendor/typeorm/decorator/columns/VersionColumn.d.ts +9 -0
  305. package/dist/vendor/typeorm/decorator/columns/VersionColumn.js +22 -0
  306. package/dist/vendor/typeorm/decorator/columns/VersionColumn.js.map +1 -0
  307. package/dist/vendor/typeorm/decorator/columns/ViewColumn.d.ts +7 -0
  308. package/dist/vendor/typeorm/decorator/columns/ViewColumn.js +20 -0
  309. package/dist/vendor/typeorm/decorator/columns/ViewColumn.js.map +1 -0
  310. package/dist/vendor/typeorm/decorator/columns/VirtualColumn.d.ts +15 -0
  311. package/dist/vendor/typeorm/decorator/columns/VirtualColumn.js +51 -0
  312. package/dist/vendor/typeorm/decorator/columns/VirtualColumn.js.map +1 -0
  313. package/dist/vendor/typeorm/decorator/entity/ChildEntity.d.ts +6 -0
  314. package/dist/vendor/typeorm/decorator/entity/ChildEntity.js +26 -0
  315. package/dist/vendor/typeorm/decorator/entity/ChildEntity.js.map +1 -0
  316. package/dist/vendor/typeorm/decorator/entity/Entity.d.ts +16 -0
  317. package/dist/vendor/typeorm/decorator/entity/Entity.js +33 -0
  318. package/dist/vendor/typeorm/decorator/entity/Entity.js.map +1 -0
  319. package/dist/vendor/typeorm/decorator/entity/TableInheritance.d.ts +12 -0
  320. package/dist/vendor/typeorm/decorator/entity/TableInheritance.js +25 -0
  321. package/dist/vendor/typeorm/decorator/entity/TableInheritance.js.map +1 -0
  322. package/dist/vendor/typeorm/decorator/entity-view/ViewEntity.d.ts +16 -0
  323. package/dist/vendor/typeorm/decorator/entity-view/ViewEntity.js +34 -0
  324. package/dist/vendor/typeorm/decorator/entity-view/ViewEntity.js.map +1 -0
  325. package/dist/vendor/typeorm/decorator/listeners/AfterInsert.d.ts +4 -0
  326. package/dist/vendor/typeorm/decorator/listeners/AfterInsert.js +18 -0
  327. package/dist/vendor/typeorm/decorator/listeners/AfterInsert.js.map +1 -0
  328. package/dist/vendor/typeorm/decorator/listeners/AfterLoad.d.ts +4 -0
  329. package/dist/vendor/typeorm/decorator/listeners/AfterLoad.js +18 -0
  330. package/dist/vendor/typeorm/decorator/listeners/AfterLoad.js.map +1 -0
  331. package/dist/vendor/typeorm/decorator/listeners/AfterRecover.d.ts +4 -0
  332. package/dist/vendor/typeorm/decorator/listeners/AfterRecover.js +18 -0
  333. package/dist/vendor/typeorm/decorator/listeners/AfterRecover.js.map +1 -0
  334. package/dist/vendor/typeorm/decorator/listeners/AfterRemove.d.ts +4 -0
  335. package/dist/vendor/typeorm/decorator/listeners/AfterRemove.js +18 -0
  336. package/dist/vendor/typeorm/decorator/listeners/AfterRemove.js.map +1 -0
  337. package/dist/vendor/typeorm/decorator/listeners/AfterSoftRemove.d.ts +4 -0
  338. package/dist/vendor/typeorm/decorator/listeners/AfterSoftRemove.js +18 -0
  339. package/dist/vendor/typeorm/decorator/listeners/AfterSoftRemove.js.map +1 -0
  340. package/dist/vendor/typeorm/decorator/listeners/AfterUpdate.d.ts +4 -0
  341. package/dist/vendor/typeorm/decorator/listeners/AfterUpdate.js +18 -0
  342. package/dist/vendor/typeorm/decorator/listeners/AfterUpdate.js.map +1 -0
  343. package/dist/vendor/typeorm/decorator/listeners/BeforeInsert.d.ts +4 -0
  344. package/dist/vendor/typeorm/decorator/listeners/BeforeInsert.js +18 -0
  345. package/dist/vendor/typeorm/decorator/listeners/BeforeInsert.js.map +1 -0
  346. package/dist/vendor/typeorm/decorator/listeners/BeforeRecover.d.ts +4 -0
  347. package/dist/vendor/typeorm/decorator/listeners/BeforeRecover.js +18 -0
  348. package/dist/vendor/typeorm/decorator/listeners/BeforeRecover.js.map +1 -0
  349. package/dist/vendor/typeorm/decorator/listeners/BeforeRemove.d.ts +4 -0
  350. package/dist/vendor/typeorm/decorator/listeners/BeforeRemove.js +18 -0
  351. package/dist/vendor/typeorm/decorator/listeners/BeforeRemove.js.map +1 -0
  352. package/dist/vendor/typeorm/decorator/listeners/BeforeSoftRemove.d.ts +4 -0
  353. package/dist/vendor/typeorm/decorator/listeners/BeforeSoftRemove.js +18 -0
  354. package/dist/vendor/typeorm/decorator/listeners/BeforeSoftRemove.js.map +1 -0
  355. package/dist/vendor/typeorm/decorator/listeners/BeforeUpdate.d.ts +4 -0
  356. package/dist/vendor/typeorm/decorator/listeners/BeforeUpdate.js +18 -0
  357. package/dist/vendor/typeorm/decorator/listeners/BeforeUpdate.js.map +1 -0
  358. package/dist/vendor/typeorm/decorator/listeners/EventSubscriber.d.ts +5 -0
  359. package/dist/vendor/typeorm/decorator/listeners/EventSubscriber.js +16 -0
  360. package/dist/vendor/typeorm/decorator/listeners/EventSubscriber.js.map +1 -0
  361. package/dist/vendor/typeorm/decorator/options/ColumnCommonOptions.d.ts +57 -0
  362. package/dist/vendor/typeorm/decorator/options/ColumnCommonOptions.js +3 -0
  363. package/dist/vendor/typeorm/decorator/options/ColumnCommonOptions.js.map +1 -0
  364. package/dist/vendor/typeorm/decorator/options/ColumnEmbeddedOptions.d.ts +16 -0
  365. package/dist/vendor/typeorm/decorator/options/ColumnEmbeddedOptions.js +3 -0
  366. package/dist/vendor/typeorm/decorator/options/ColumnEmbeddedOptions.js.map +1 -0
  367. package/dist/vendor/typeorm/decorator/options/ColumnEnumOptions.d.ts +13 -0
  368. package/dist/vendor/typeorm/decorator/options/ColumnEnumOptions.js +3 -0
  369. package/dist/vendor/typeorm/decorator/options/ColumnEnumOptions.js.map +1 -0
  370. package/dist/vendor/typeorm/decorator/options/ColumnHstoreOptions.d.ts +10 -0
  371. package/dist/vendor/typeorm/decorator/options/ColumnHstoreOptions.js +3 -0
  372. package/dist/vendor/typeorm/decorator/options/ColumnHstoreOptions.js.map +1 -0
  373. package/dist/vendor/typeorm/decorator/options/ColumnNumericOptions.d.ts +15 -0
  374. package/dist/vendor/typeorm/decorator/options/ColumnNumericOptions.js +3 -0
  375. package/dist/vendor/typeorm/decorator/options/ColumnNumericOptions.js.map +1 -0
  376. package/dist/vendor/typeorm/decorator/options/ColumnOptions.d.ts +158 -0
  377. package/dist/vendor/typeorm/decorator/options/ColumnOptions.js +3 -0
  378. package/dist/vendor/typeorm/decorator/options/ColumnOptions.js.map +1 -0
  379. package/dist/vendor/typeorm/decorator/options/ColumnUnsignedOptions.d.ts +9 -0
  380. package/dist/vendor/typeorm/decorator/options/ColumnUnsignedOptions.js +3 -0
  381. package/dist/vendor/typeorm/decorator/options/ColumnUnsignedOptions.js.map +1 -0
  382. package/dist/vendor/typeorm/decorator/options/ColumnWithLengthOptions.d.ts +10 -0
  383. package/dist/vendor/typeorm/decorator/options/ColumnWithLengthOptions.js +3 -0
  384. package/dist/vendor/typeorm/decorator/options/ColumnWithLengthOptions.js.map +1 -0
  385. package/dist/vendor/typeorm/decorator/options/EntityOptions.d.ts +47 -0
  386. package/dist/vendor/typeorm/decorator/options/EntityOptions.js +3 -0
  387. package/dist/vendor/typeorm/decorator/options/EntityOptions.js.map +1 -0
  388. package/dist/vendor/typeorm/decorator/options/ExclusionOptions.d.ts +10 -0
  389. package/dist/vendor/typeorm/decorator/options/ExclusionOptions.js +3 -0
  390. package/dist/vendor/typeorm/decorator/options/ExclusionOptions.js.map +1 -0
  391. package/dist/vendor/typeorm/decorator/options/ForeignKeyOptions.d.ts +24 -0
  392. package/dist/vendor/typeorm/decorator/options/ForeignKeyOptions.js +3 -0
  393. package/dist/vendor/typeorm/decorator/options/ForeignKeyOptions.js.map +1 -0
  394. package/dist/vendor/typeorm/decorator/options/IndexOptions.d.ts +64 -0
  395. package/dist/vendor/typeorm/decorator/options/IndexOptions.js +3 -0
  396. package/dist/vendor/typeorm/decorator/options/IndexOptions.js.map +1 -0
  397. package/dist/vendor/typeorm/decorator/options/JoinColumnOptions.d.ts +17 -0
  398. package/dist/vendor/typeorm/decorator/options/JoinColumnOptions.js +3 -0
  399. package/dist/vendor/typeorm/decorator/options/JoinColumnOptions.js.map +1 -0
  400. package/dist/vendor/typeorm/decorator/options/JoinTableMultipleColumnsOptions.d.ts +35 -0
  401. package/dist/vendor/typeorm/decorator/options/JoinTableMultipleColumnsOptions.js +3 -0
  402. package/dist/vendor/typeorm/decorator/options/JoinTableMultipleColumnsOptions.js.map +1 -0
  403. package/dist/vendor/typeorm/decorator/options/JoinTableOptions.d.ts +35 -0
  404. package/dist/vendor/typeorm/decorator/options/JoinTableOptions.js +3 -0
  405. package/dist/vendor/typeorm/decorator/options/JoinTableOptions.js.map +1 -0
  406. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnIdentityOptions.d.ts +26 -0
  407. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnIdentityOptions.js +3 -0
  408. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnIdentityOptions.js.map +1 -0
  409. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnNumericOptions.d.ts +26 -0
  410. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnNumericOptions.js +3 -0
  411. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnNumericOptions.js.map +1 -0
  412. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnUUIDOptions.d.ts +17 -0
  413. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnUUIDOptions.js +3 -0
  414. package/dist/vendor/typeorm/decorator/options/PrimaryGeneratedColumnUUIDOptions.js.map +1 -0
  415. package/dist/vendor/typeorm/decorator/options/RelationOptions.d.ts +66 -0
  416. package/dist/vendor/typeorm/decorator/options/RelationOptions.js +3 -0
  417. package/dist/vendor/typeorm/decorator/options/RelationOptions.js.map +1 -0
  418. package/dist/vendor/typeorm/decorator/options/SpatialColumnOptions.d.ts +17 -0
  419. package/dist/vendor/typeorm/decorator/options/SpatialColumnOptions.js +3 -0
  420. package/dist/vendor/typeorm/decorator/options/SpatialColumnOptions.js.map +1 -0
  421. package/dist/vendor/typeorm/decorator/options/TransactionOptions.d.ts +5 -0
  422. package/dist/vendor/typeorm/decorator/options/TransactionOptions.js +3 -0
  423. package/dist/vendor/typeorm/decorator/options/TransactionOptions.js.map +1 -0
  424. package/dist/vendor/typeorm/decorator/options/UniqueOptions.d.ts +10 -0
  425. package/dist/vendor/typeorm/decorator/options/UniqueOptions.js +3 -0
  426. package/dist/vendor/typeorm/decorator/options/UniqueOptions.js.map +1 -0
  427. package/dist/vendor/typeorm/decorator/options/ValueTransformer.d.ts +13 -0
  428. package/dist/vendor/typeorm/decorator/options/ValueTransformer.js +3 -0
  429. package/dist/vendor/typeorm/decorator/options/ValueTransformer.js.map +1 -0
  430. package/dist/vendor/typeorm/decorator/options/ViewColumnOptions.d.ts +15 -0
  431. package/dist/vendor/typeorm/decorator/options/ViewColumnOptions.js +3 -0
  432. package/dist/vendor/typeorm/decorator/options/ViewColumnOptions.js.map +1 -0
  433. package/dist/vendor/typeorm/decorator/options/ViewEntityOptions.d.ts +40 -0
  434. package/dist/vendor/typeorm/decorator/options/ViewEntityOptions.js +3 -0
  435. package/dist/vendor/typeorm/decorator/options/ViewEntityOptions.js.map +1 -0
  436. package/dist/vendor/typeorm/decorator/options/VirtualColumnOptions.d.ts +33 -0
  437. package/dist/vendor/typeorm/decorator/options/VirtualColumnOptions.js +3 -0
  438. package/dist/vendor/typeorm/decorator/options/VirtualColumnOptions.js.map +1 -0
  439. package/dist/vendor/typeorm/decorator/relations/JoinColumn.d.ts +23 -0
  440. package/dist/vendor/typeorm/decorator/relations/JoinColumn.js +28 -0
  441. package/dist/vendor/typeorm/decorator/relations/JoinColumn.js.map +1 -0
  442. package/dist/vendor/typeorm/decorator/relations/JoinTable.d.ts +21 -0
  443. package/dist/vendor/typeorm/decorator/relations/JoinTable.js +35 -0
  444. package/dist/vendor/typeorm/decorator/relations/JoinTable.js.map +1 -0
  445. package/dist/vendor/typeorm/decorator/relations/ManyToMany.d.ts +21 -0
  446. package/dist/vendor/typeorm/decorator/relations/ManyToMany.js +48 -0
  447. package/dist/vendor/typeorm/decorator/relations/ManyToMany.js.map +1 -0
  448. package/dist/vendor/typeorm/decorator/relations/ManyToOne.d.ts +21 -0
  449. package/dist/vendor/typeorm/decorator/relations/ManyToOne.js +48 -0
  450. package/dist/vendor/typeorm/decorator/relations/ManyToOne.js.map +1 -0
  451. package/dist/vendor/typeorm/decorator/relations/OneToMany.d.ts +12 -0
  452. package/dist/vendor/typeorm/decorator/relations/OneToMany.js +39 -0
  453. package/dist/vendor/typeorm/decorator/relations/OneToMany.js.map +1 -0
  454. package/dist/vendor/typeorm/decorator/relations/OneToOne.d.ts +19 -0
  455. package/dist/vendor/typeorm/decorator/relations/OneToOne.js +47 -0
  456. package/dist/vendor/typeorm/decorator/relations/OneToOne.js.map +1 -0
  457. package/dist/vendor/typeorm/decorator/relations/RelationId.d.ts +10 -0
  458. package/dist/vendor/typeorm/decorator/relations/RelationId.js +24 -0
  459. package/dist/vendor/typeorm/decorator/relations/RelationId.js.map +1 -0
  460. package/dist/vendor/typeorm/decorator/tree/Tree.d.ts +12 -0
  461. package/dist/vendor/typeorm/decorator/tree/Tree.js +23 -0
  462. package/dist/vendor/typeorm/decorator/tree/Tree.js.map +1 -0
  463. package/dist/vendor/typeorm/decorator/tree/TreeChildren.d.ts +10 -0
  464. package/dist/vendor/typeorm/decorator/tree/TreeChildren.js +35 -0
  465. package/dist/vendor/typeorm/decorator/tree/TreeChildren.js.map +1 -0
  466. package/dist/vendor/typeorm/decorator/tree/TreeLevelColumn.d.ts +4 -0
  467. package/dist/vendor/typeorm/decorator/tree/TreeLevelColumn.js +18 -0
  468. package/dist/vendor/typeorm/decorator/tree/TreeLevelColumn.js.map +1 -0
  469. package/dist/vendor/typeorm/decorator/tree/TreeParent.d.ts +11 -0
  470. package/dist/vendor/typeorm/decorator/tree/TreeParent.js +34 -0
  471. package/dist/vendor/typeorm/decorator/tree/TreeParent.js.map +1 -0
  472. package/dist/vendor/typeorm/driver/Driver.d.ts +241 -0
  473. package/dist/vendor/typeorm/driver/Driver.js +3 -0
  474. package/dist/vendor/typeorm/driver/Driver.js.map +1 -0
  475. package/dist/vendor/typeorm/driver/DriverFactory.d.ts +14 -0
  476. package/dist/vendor/typeorm/driver/DriverFactory.js +100 -0
  477. package/dist/vendor/typeorm/driver/DriverFactory.js.map +1 -0
  478. package/dist/vendor/typeorm/driver/DriverUtils.d.ts +71 -0
  479. package/dist/vendor/typeorm/driver/DriverUtils.js +233 -0
  480. package/dist/vendor/typeorm/driver/DriverUtils.js.map +1 -0
  481. package/dist/vendor/typeorm/driver/Query.d.ts +9 -0
  482. package/dist/vendor/typeorm/driver/Query.js +15 -0
  483. package/dist/vendor/typeorm/driver/Query.js.map +1 -0
  484. package/dist/vendor/typeorm/driver/SqlInMemory.d.ts +8 -0
  485. package/dist/vendor/typeorm/driver/SqlInMemory.js +14 -0
  486. package/dist/vendor/typeorm/driver/SqlInMemory.js.map +1 -0
  487. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.d.ts +35 -0
  488. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.js +3 -0
  489. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlConnectionCredentialsOptions.js.map +1 -0
  490. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlDataSourceOptions.d.ts +35 -0
  491. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlDataSourceOptions.js +3 -0
  492. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlDataSourceOptions.js.map +1 -0
  493. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlDriver.d.ts +322 -0
  494. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlDriver.js +880 -0
  495. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlDriver.js.map +1 -0
  496. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlQueryRunner.d.ts +532 -0
  497. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlQueryRunner.js +1875 -0
  498. package/dist/vendor/typeorm/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -0
  499. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresDataSourceOptions.d.ts +35 -0
  500. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresDataSourceOptions.js +3 -0
  501. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresDataSourceOptions.js.map +1 -0
  502. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresDriver.d.ts +85 -0
  503. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresDriver.js +130 -0
  504. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresDriver.js.map +1 -0
  505. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresQueryRunner.d.ts +59 -0
  506. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresQueryRunner.js +180 -0
  507. package/dist/vendor/typeorm/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -0
  508. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3DataSourceOptions.d.ts +69 -0
  509. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3DataSourceOptions.js +3 -0
  510. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3DataSourceOptions.js.map +1 -0
  511. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3Driver.d.ts +63 -0
  512. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3Driver.js +158 -0
  513. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -0
  514. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3QueryRunner.d.ts +37 -0
  515. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3QueryRunner.js +144 -0
  516. package/dist/vendor/typeorm/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -0
  517. package/dist/vendor/typeorm/driver/capacitor/CapacitorDataSourceOptions.d.ts +31 -0
  518. package/dist/vendor/typeorm/driver/capacitor/CapacitorDataSourceOptions.js +3 -0
  519. package/dist/vendor/typeorm/driver/capacitor/CapacitorDataSourceOptions.js.map +1 -0
  520. package/dist/vendor/typeorm/driver/capacitor/CapacitorDriver.d.ts +29 -0
  521. package/dist/vendor/typeorm/driver/capacitor/CapacitorDriver.js +78 -0
  522. package/dist/vendor/typeorm/driver/capacitor/CapacitorDriver.js.map +1 -0
  523. package/dist/vendor/typeorm/driver/capacitor/CapacitorQueryRunner.d.ts +39 -0
  524. package/dist/vendor/typeorm/driver/capacitor/CapacitorQueryRunner.js +107 -0
  525. package/dist/vendor/typeorm/driver/capacitor/CapacitorQueryRunner.js.map +1 -0
  526. package/dist/vendor/typeorm/driver/cockroachdb/CockroachConnectionCredentialsOptions.d.ts +34 -0
  527. package/dist/vendor/typeorm/driver/cockroachdb/CockroachConnectionCredentialsOptions.js +3 -0
  528. package/dist/vendor/typeorm/driver/cockroachdb/CockroachConnectionCredentialsOptions.js.map +1 -0
  529. package/dist/vendor/typeorm/driver/cockroachdb/CockroachDataSourceOptions.d.ts +64 -0
  530. package/dist/vendor/typeorm/driver/cockroachdb/CockroachDataSourceOptions.js +3 -0
  531. package/dist/vendor/typeorm/driver/cockroachdb/CockroachDataSourceOptions.js.map +1 -0
  532. package/dist/vendor/typeorm/driver/cockroachdb/CockroachDriver.d.ts +357 -0
  533. package/dist/vendor/typeorm/driver/cockroachdb/CockroachDriver.js +1006 -0
  534. package/dist/vendor/typeorm/driver/cockroachdb/CockroachDriver.js.map +1 -0
  535. package/dist/vendor/typeorm/driver/cockroachdb/CockroachQueryRunner.d.ts +646 -0
  536. package/dist/vendor/typeorm/driver/cockroachdb/CockroachQueryRunner.js +2755 -0
  537. package/dist/vendor/typeorm/driver/cockroachdb/CockroachQueryRunner.js.map +1 -0
  538. package/dist/vendor/typeorm/driver/cordova/CordovaDataSourceOptions.d.ts +24 -0
  539. package/dist/vendor/typeorm/driver/cordova/CordovaDataSourceOptions.js +3 -0
  540. package/dist/vendor/typeorm/driver/cordova/CordovaDataSourceOptions.js.map +1 -0
  541. package/dist/vendor/typeorm/driver/cordova/CordovaDriver.d.ts +33 -0
  542. package/dist/vendor/typeorm/driver/cordova/CordovaDriver.js +84 -0
  543. package/dist/vendor/typeorm/driver/cordova/CordovaDriver.js.map +1 -0
  544. package/dist/vendor/typeorm/driver/cordova/CordovaQueryRunner.d.ts +54 -0
  545. package/dist/vendor/typeorm/driver/cordova/CordovaQueryRunner.js +146 -0
  546. package/dist/vendor/typeorm/driver/cordova/CordovaQueryRunner.js.map +1 -0
  547. package/dist/vendor/typeorm/driver/expo/ExpoDataSourceOptions.d.ts +21 -0
  548. package/dist/vendor/typeorm/driver/expo/ExpoDataSourceOptions.js +3 -0
  549. package/dist/vendor/typeorm/driver/expo/ExpoDataSourceOptions.js.map +1 -0
  550. package/dist/vendor/typeorm/driver/expo/ExpoDriver.d.ts +15 -0
  551. package/dist/vendor/typeorm/driver/expo/ExpoDriver.js +45 -0
  552. package/dist/vendor/typeorm/driver/expo/ExpoDriver.js.map +1 -0
  553. package/dist/vendor/typeorm/driver/expo/ExpoQueryRunner.d.ts +10 -0
  554. package/dist/vendor/typeorm/driver/expo/ExpoQueryRunner.js +67 -0
  555. package/dist/vendor/typeorm/driver/expo/ExpoQueryRunner.js.map +1 -0
  556. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedBTree.d.ts +167 -0
  557. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedBTree.js +541 -0
  558. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedBTree.js.map +1 -0
  559. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedCache.d.ts +96 -0
  560. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedCache.js +185 -0
  561. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedCache.js.map +1 -0
  562. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedClient.d.ts +411 -0
  563. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedClient.js +1345 -0
  564. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedClient.js.map +1 -0
  565. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedCollectionStore.d.ts +402 -0
  566. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedCollectionStore.js +1017 -0
  567. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedCollectionStore.js.map +1 -0
  568. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedFile.d.ts +68 -0
  569. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedFile.js +126 -0
  570. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedFile.js.map +1 -0
  571. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedKeyEncoding.d.ts +88 -0
  572. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedKeyEncoding.js +306 -0
  573. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedKeyEncoding.js.map +1 -0
  574. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedKeydir.d.ts +124 -0
  575. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedKeydir.js +331 -0
  576. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedKeydir.js.map +1 -0
  577. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedLog.d.ts +80 -0
  578. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedLog.js +119 -0
  579. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedLog.js.map +1 -0
  580. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedObjectId.d.ts +19 -0
  581. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedObjectId.js +35 -0
  582. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedObjectId.js.map +1 -0
  583. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedPlanner.d.ts +100 -0
  584. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedPlanner.js +261 -0
  585. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedPlanner.js.map +1 -0
  586. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedStore.d.ts +185 -0
  587. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedStore.js +529 -0
  588. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedStore.js.map +1 -0
  589. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedValues.d.ts +58 -0
  590. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedValues.js +176 -0
  591. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedValues.js.map +1 -0
  592. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorker.d.ts +12 -0
  593. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorker.js +181 -0
  594. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorker.js.map +1 -0
  595. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerClient.d.ts +204 -0
  596. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerClient.js +564 -0
  597. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerClient.js.map +1 -0
  598. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerCode.d.ts +7 -0
  599. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerCode.js +4 -0
  600. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerProtocol.d.ts +117 -0
  601. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerProtocol.js +155 -0
  602. package/dist/vendor/typeorm/driver/mongo-embedded/EmbeddedWorkerProtocol.js.map +1 -0
  603. package/dist/vendor/typeorm/driver/mongo-embedded/MongoEmbeddedDataSourceOptions.d.ts +97 -0
  604. package/dist/vendor/typeorm/driver/mongo-embedded/MongoEmbeddedDataSourceOptions.js +3 -0
  605. package/dist/vendor/typeorm/driver/mongo-embedded/MongoEmbeddedDataSourceOptions.js.map +1 -0
  606. package/dist/vendor/typeorm/driver/mongo-embedded/MongoEmbeddedDriver.d.ts +33 -0
  607. package/dist/vendor/typeorm/driver/mongo-embedded/MongoEmbeddedDriver.js +67 -0
  608. package/dist/vendor/typeorm/driver/mongo-embedded/MongoEmbeddedDriver.js.map +1 -0
  609. package/dist/vendor/typeorm/driver/mongodb/MongoDataSourceOptions.d.ts +205 -0
  610. package/dist/vendor/typeorm/driver/mongodb/MongoDataSourceOptions.js +3 -0
  611. package/dist/vendor/typeorm/driver/mongodb/MongoDataSourceOptions.js.map +1 -0
  612. package/dist/vendor/typeorm/driver/mongodb/MongoDriver.d.ts +281 -0
  613. package/dist/vendor/typeorm/driver/mongodb/MongoDriver.js +446 -0
  614. package/dist/vendor/typeorm/driver/mongodb/MongoDriver.js.map +1 -0
  615. package/dist/vendor/typeorm/driver/mongodb/MongoQueryRunner.d.ts +752 -0
  616. package/dist/vendor/typeorm/driver/mongodb/MongoQueryRunner.js +951 -0
  617. package/dist/vendor/typeorm/driver/mongodb/MongoQueryRunner.js.map +1 -0
  618. package/dist/vendor/typeorm/driver/mongodb/bson.typings.d.ts +1588 -0
  619. package/dist/vendor/typeorm/driver/mongodb/bson.typings.js +4 -0
  620. package/dist/vendor/typeorm/driver/mongodb/bson.typings.js.map +1 -0
  621. package/dist/vendor/typeorm/driver/mongodb/typings.d.ts +8064 -0
  622. package/dist/vendor/typeorm/driver/mongodb/typings.js +24 -0
  623. package/dist/vendor/typeorm/driver/mongodb/typings.js.map +1 -0
  624. package/dist/vendor/typeorm/driver/mysql/MysqlConnectionCredentialsOptions.d.ts +44 -0
  625. package/dist/vendor/typeorm/driver/mysql/MysqlConnectionCredentialsOptions.js +3 -0
  626. package/dist/vendor/typeorm/driver/mysql/MysqlConnectionCredentialsOptions.js.map +1 -0
  627. package/dist/vendor/typeorm/driver/mysql/MysqlDataSourceOptions.d.ts +133 -0
  628. package/dist/vendor/typeorm/driver/mysql/MysqlDataSourceOptions.js +3 -0
  629. package/dist/vendor/typeorm/driver/mysql/MysqlDataSourceOptions.js.map +1 -0
  630. package/dist/vendor/typeorm/driver/mysql/MysqlDriver.d.ts +344 -0
  631. package/dist/vendor/typeorm/driver/mysql/MysqlDriver.js +1077 -0
  632. package/dist/vendor/typeorm/driver/mysql/MysqlDriver.js.map +1 -0
  633. package/dist/vendor/typeorm/driver/mysql/MysqlQueryRunner.d.ts +532 -0
  634. package/dist/vendor/typeorm/driver/mysql/MysqlQueryRunner.js +2341 -0
  635. package/dist/vendor/typeorm/driver/mysql/MysqlQueryRunner.js.map +1 -0
  636. package/dist/vendor/typeorm/driver/nativescript/NativescriptDataSourceOptions.d.ts +45 -0
  637. package/dist/vendor/typeorm/driver/nativescript/NativescriptDataSourceOptions.js +3 -0
  638. package/dist/vendor/typeorm/driver/nativescript/NativescriptDataSourceOptions.js.map +1 -0
  639. package/dist/vendor/typeorm/driver/nativescript/NativescriptDriver.d.ts +46 -0
  640. package/dist/vendor/typeorm/driver/nativescript/NativescriptDriver.js +92 -0
  641. package/dist/vendor/typeorm/driver/nativescript/NativescriptDriver.js.map +1 -0
  642. package/dist/vendor/typeorm/driver/nativescript/NativescriptQueryRunner.d.ts +36 -0
  643. package/dist/vendor/typeorm/driver/nativescript/NativescriptQueryRunner.js +101 -0
  644. package/dist/vendor/typeorm/driver/nativescript/NativescriptQueryRunner.js.map +1 -0
  645. package/dist/vendor/typeorm/driver/oracle/OracleConnectionCredentialsOptions.d.ts +41 -0
  646. package/dist/vendor/typeorm/driver/oracle/OracleConnectionCredentialsOptions.js +3 -0
  647. package/dist/vendor/typeorm/driver/oracle/OracleConnectionCredentialsOptions.js.map +1 -0
  648. package/dist/vendor/typeorm/driver/oracle/OracleDataSourceOptions.d.ts +51 -0
  649. package/dist/vendor/typeorm/driver/oracle/OracleDataSourceOptions.js +3 -0
  650. package/dist/vendor/typeorm/driver/oracle/OracleDataSourceOptions.js.map +1 -0
  651. package/dist/vendor/typeorm/driver/oracle/OracleDriver.d.ts +332 -0
  652. package/dist/vendor/typeorm/driver/oracle/OracleDriver.js +939 -0
  653. package/dist/vendor/typeorm/driver/oracle/OracleDriver.js.map +1 -0
  654. package/dist/vendor/typeorm/driver/oracle/OracleQueryRunner.d.ts +550 -0
  655. package/dist/vendor/typeorm/driver/oracle/OracleQueryRunner.js +2135 -0
  656. package/dist/vendor/typeorm/driver/oracle/OracleQueryRunner.js.map +1 -0
  657. package/dist/vendor/typeorm/driver/postgres/PostgresConnectionCredentialsOptions.d.ts +39 -0
  658. package/dist/vendor/typeorm/driver/postgres/PostgresConnectionCredentialsOptions.js +3 -0
  659. package/dist/vendor/typeorm/driver/postgres/PostgresConnectionCredentialsOptions.js.map +1 -0
  660. package/dist/vendor/typeorm/driver/postgres/PostgresDataSourceOptions.d.ts +89 -0
  661. package/dist/vendor/typeorm/driver/postgres/PostgresDataSourceOptions.js +3 -0
  662. package/dist/vendor/typeorm/driver/postgres/PostgresDataSourceOptions.js.map +1 -0
  663. package/dist/vendor/typeorm/driver/postgres/PostgresDriver.d.ts +391 -0
  664. package/dist/vendor/typeorm/driver/postgres/PostgresDriver.js +1494 -0
  665. package/dist/vendor/typeorm/driver/postgres/PostgresDriver.js.map +1 -0
  666. package/dist/vendor/typeorm/driver/postgres/PostgresQueryRunner.d.ts +691 -0
  667. package/dist/vendor/typeorm/driver/postgres/PostgresQueryRunner.js +3119 -0
  668. package/dist/vendor/typeorm/driver/postgres/PostgresQueryRunner.js.map +1 -0
  669. package/dist/vendor/typeorm/driver/react-native/ReactNativeDataSourceOptions.d.ts +28 -0
  670. package/dist/vendor/typeorm/driver/react-native/ReactNativeDataSourceOptions.js +3 -0
  671. package/dist/vendor/typeorm/driver/react-native/ReactNativeDataSourceOptions.js.map +1 -0
  672. package/dist/vendor/typeorm/driver/react-native/ReactNativeDriver.d.ts +307 -0
  673. package/dist/vendor/typeorm/driver/react-native/ReactNativeDriver.js +805 -0
  674. package/dist/vendor/typeorm/driver/react-native/ReactNativeDriver.js.map +1 -0
  675. package/dist/vendor/typeorm/driver/react-native/ReactNativeQueryRunner.d.ts +36 -0
  676. package/dist/vendor/typeorm/driver/react-native/ReactNativeQueryRunner.js +116 -0
  677. package/dist/vendor/typeorm/driver/react-native/ReactNativeQueryRunner.js.map +1 -0
  678. package/dist/vendor/typeorm/driver/sap/SapConnectionCredentialsOptions.d.ts +45 -0
  679. package/dist/vendor/typeorm/driver/sap/SapConnectionCredentialsOptions.js +3 -0
  680. package/dist/vendor/typeorm/driver/sap/SapConnectionCredentialsOptions.js.map +1 -0
  681. package/dist/vendor/typeorm/driver/sap/SapDataSourceOptions.d.ts +59 -0
  682. package/dist/vendor/typeorm/driver/sap/SapDataSourceOptions.js +3 -0
  683. package/dist/vendor/typeorm/driver/sap/SapDataSourceOptions.js.map +1 -0
  684. package/dist/vendor/typeorm/driver/sap/SapDriver.d.ts +296 -0
  685. package/dist/vendor/typeorm/driver/sap/SapDriver.js +761 -0
  686. package/dist/vendor/typeorm/driver/sap/SapDriver.js.map +1 -0
  687. package/dist/vendor/typeorm/driver/sap/SapQueryRunner.d.ts +565 -0
  688. package/dist/vendor/typeorm/driver/sap/SapQueryRunner.js +2452 -0
  689. package/dist/vendor/typeorm/driver/sap/SapQueryRunner.js.map +1 -0
  690. package/dist/vendor/typeorm/driver/spanner/SpannerConnectionCredentialsOptions.d.ts +30 -0
  691. package/dist/vendor/typeorm/driver/spanner/SpannerConnectionCredentialsOptions.js +3 -0
  692. package/dist/vendor/typeorm/driver/spanner/SpannerConnectionCredentialsOptions.js.map +1 -0
  693. package/dist/vendor/typeorm/driver/spanner/SpannerDataSourceOptions.d.ts +123 -0
  694. package/dist/vendor/typeorm/driver/spanner/SpannerDataSourceOptions.js +3 -0
  695. package/dist/vendor/typeorm/driver/spanner/SpannerDataSourceOptions.js.map +1 -0
  696. package/dist/vendor/typeorm/driver/spanner/SpannerDriver.d.ts +302 -0
  697. package/dist/vendor/typeorm/driver/spanner/SpannerDriver.js +673 -0
  698. package/dist/vendor/typeorm/driver/spanner/SpannerDriver.js.map +1 -0
  699. package/dist/vendor/typeorm/driver/spanner/SpannerQueryRunner.d.ts +574 -0
  700. package/dist/vendor/typeorm/driver/spanner/SpannerQueryRunner.js +1761 -0
  701. package/dist/vendor/typeorm/driver/spanner/SpannerQueryRunner.js.map +1 -0
  702. package/dist/vendor/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.d.ts +319 -0
  703. package/dist/vendor/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.js +770 -0
  704. package/dist/vendor/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -0
  705. package/dist/vendor/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.d.ts +498 -0
  706. package/dist/vendor/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +1732 -0
  707. package/dist/vendor/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -0
  708. package/dist/vendor/typeorm/driver/sqljs/SqljsDataSourceOptions.d.ts +46 -0
  709. package/dist/vendor/typeorm/driver/sqljs/SqljsDataSourceOptions.js +3 -0
  710. package/dist/vendor/typeorm/driver/sqljs/SqljsDataSourceOptions.js.map +1 -0
  711. package/dist/vendor/typeorm/driver/sqljs/SqljsDriver.d.ts +76 -0
  712. package/dist/vendor/typeorm/driver/sqljs/SqljsDriver.js +264 -0
  713. package/dist/vendor/typeorm/driver/sqljs/SqljsDriver.js.map +1 -0
  714. package/dist/vendor/typeorm/driver/sqljs/SqljsQueryRunner.d.ts +40 -0
  715. package/dist/vendor/typeorm/driver/sqljs/SqljsQueryRunner.js +129 -0
  716. package/dist/vendor/typeorm/driver/sqljs/SqljsQueryRunner.js.map +1 -0
  717. package/dist/vendor/typeorm/driver/sqlserver/MssqlParameter.d.ts +45 -0
  718. package/dist/vendor/typeorm/driver/sqlserver/MssqlParameter.js +22 -0
  719. package/dist/vendor/typeorm/driver/sqlserver/MssqlParameter.js.map +1 -0
  720. package/dist/vendor/typeorm/driver/sqlserver/SqlServerConnectionCredentialsOptions.d.ts +43 -0
  721. package/dist/vendor/typeorm/driver/sqlserver/SqlServerConnectionCredentialsOptions.js +3 -0
  722. package/dist/vendor/typeorm/driver/sqlserver/SqlServerConnectionCredentialsOptions.js.map +1 -0
  723. package/dist/vendor/typeorm/driver/sqlserver/SqlServerDataSourceOptions.d.ts +266 -0
  724. package/dist/vendor/typeorm/driver/sqlserver/SqlServerDataSourceOptions.js +3 -0
  725. package/dist/vendor/typeorm/driver/sqlserver/SqlServerDataSourceOptions.js.map +1 -0
  726. package/dist/vendor/typeorm/driver/sqlserver/SqlServerDriver.d.ts +359 -0
  727. package/dist/vendor/typeorm/driver/sqlserver/SqlServerDriver.js +1056 -0
  728. package/dist/vendor/typeorm/driver/sqlserver/SqlServerDriver.js.map +1 -0
  729. package/dist/vendor/typeorm/driver/sqlserver/SqlServerQueryRunner.d.ts +588 -0
  730. package/dist/vendor/typeorm/driver/sqlserver/SqlServerQueryRunner.js +2767 -0
  731. package/dist/vendor/typeorm/driver/sqlserver/SqlServerQueryRunner.js.map +1 -0
  732. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.d.ts +10 -0
  733. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.js +3 -0
  734. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryAccessTokenAuthentication.js.map +1 -0
  735. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.d.ts +12 -0
  736. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.js +3 -0
  737. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryDefaultAuthentication.js.map +1 -0
  738. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.d.ts +20 -0
  739. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.js +3 -0
  740. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryMsiAppServiceAuthentication.js.map +1 -0
  741. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.d.ts +16 -0
  742. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.js +3 -0
  743. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryMsiVmAuthentication.js.map +1 -0
  744. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.d.ts +17 -0
  745. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.js +3 -0
  746. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryPasswordAuthentication.js.map +1 -0
  747. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.d.ts +17 -0
  748. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.js +3 -0
  749. package/dist/vendor/typeorm/driver/sqlserver/authentication/AzureActiveDirectoryServicePrincipalSecret.js.map +1 -0
  750. package/dist/vendor/typeorm/driver/sqlserver/authentication/DefaultAuthentication.d.ts +13 -0
  751. package/dist/vendor/typeorm/driver/sqlserver/authentication/DefaultAuthentication.js +3 -0
  752. package/dist/vendor/typeorm/driver/sqlserver/authentication/DefaultAuthentication.js.map +1 -0
  753. package/dist/vendor/typeorm/driver/sqlserver/authentication/NtlmAuthentication.d.ts +19 -0
  754. package/dist/vendor/typeorm/driver/sqlserver/authentication/NtlmAuthentication.js +3 -0
  755. package/dist/vendor/typeorm/driver/sqlserver/authentication/NtlmAuthentication.js.map +1 -0
  756. package/dist/vendor/typeorm/driver/types/ColumnTypes.d.ts +25 -0
  757. package/dist/vendor/typeorm/driver/types/ColumnTypes.js +3 -0
  758. package/dist/vendor/typeorm/driver/types/ColumnTypes.js.map +1 -0
  759. package/dist/vendor/typeorm/driver/types/CteCapabilities.d.ts +18 -0
  760. package/dist/vendor/typeorm/driver/types/CteCapabilities.js +3 -0
  761. package/dist/vendor/typeorm/driver/types/CteCapabilities.js.map +1 -0
  762. package/dist/vendor/typeorm/driver/types/DataTypeDefaults.d.ts +7 -0
  763. package/dist/vendor/typeorm/driver/types/DataTypeDefaults.js +3 -0
  764. package/dist/vendor/typeorm/driver/types/DataTypeDefaults.js.map +1 -0
  765. package/dist/vendor/typeorm/driver/types/DatabaseType.d.ts +4 -0
  766. package/dist/vendor/typeorm/driver/types/DatabaseType.js +3 -0
  767. package/dist/vendor/typeorm/driver/types/DatabaseType.js.map +1 -0
  768. package/dist/vendor/typeorm/driver/types/GeoJsonTypes.d.ts +92 -0
  769. package/dist/vendor/typeorm/driver/types/GeoJsonTypes.js +3 -0
  770. package/dist/vendor/typeorm/driver/types/GeoJsonTypes.js.map +1 -0
  771. package/dist/vendor/typeorm/driver/types/InvalidFindOptionsWhereBehavior.d.ts +15 -0
  772. package/dist/vendor/typeorm/driver/types/InvalidFindOptionsWhereBehavior.js +3 -0
  773. package/dist/vendor/typeorm/driver/types/InvalidFindOptionsWhereBehavior.js.map +1 -0
  774. package/dist/vendor/typeorm/driver/types/IsolationLevel.d.ts +2 -0
  775. package/dist/vendor/typeorm/driver/types/IsolationLevel.js +11 -0
  776. package/dist/vendor/typeorm/driver/types/IsolationLevel.js.map +1 -0
  777. package/dist/vendor/typeorm/driver/types/MappedColumnTypes.d.ts +112 -0
  778. package/dist/vendor/typeorm/driver/types/MappedColumnTypes.js +3 -0
  779. package/dist/vendor/typeorm/driver/types/MappedColumnTypes.js.map +1 -0
  780. package/dist/vendor/typeorm/driver/types/MetadataTableType.d.ts +5 -0
  781. package/dist/vendor/typeorm/driver/types/MetadataTableType.js +10 -0
  782. package/dist/vendor/typeorm/driver/types/MetadataTableType.js.map +1 -0
  783. package/dist/vendor/typeorm/driver/types/ReplicationMode.d.ts +1 -0
  784. package/dist/vendor/typeorm/driver/types/ReplicationMode.js +3 -0
  785. package/dist/vendor/typeorm/driver/types/ReplicationMode.js.map +1 -0
  786. package/dist/vendor/typeorm/driver/types/ReturningType.d.ts +1 -0
  787. package/dist/vendor/typeorm/driver/types/ReturningType.js +3 -0
  788. package/dist/vendor/typeorm/driver/types/ReturningType.js.map +1 -0
  789. package/dist/vendor/typeorm/driver/types/UpsertType.d.ts +1 -0
  790. package/dist/vendor/typeorm/driver/types/UpsertType.js +3 -0
  791. package/dist/vendor/typeorm/driver/types/UpsertType.js.map +1 -0
  792. package/dist/vendor/typeorm/driver/validate-isolation-level.d.ts +9 -0
  793. package/dist/vendor/typeorm/driver/validate-isolation-level.js +23 -0
  794. package/dist/vendor/typeorm/driver/validate-isolation-level.js.map +1 -0
  795. package/dist/vendor/typeorm/entity-manager/EntityManager.d.ts +530 -0
  796. package/dist/vendor/typeorm/entity-manager/EntityManager.js +918 -0
  797. package/dist/vendor/typeorm/entity-manager/EntityManager.js.map +1 -0
  798. package/dist/vendor/typeorm/entity-manager/EntityManagerFactory.d.ts +16 -0
  799. package/dist/vendor/typeorm/entity-manager/EntityManagerFactory.js +27 -0
  800. package/dist/vendor/typeorm/entity-manager/EntityManagerFactory.js.map +1 -0
  801. package/dist/vendor/typeorm/entity-manager/MongoEntityManager.d.ts +441 -0
  802. package/dist/vendor/typeorm/entity-manager/MongoEntityManager.js +948 -0
  803. package/dist/vendor/typeorm/entity-manager/MongoEntityManager.js.map +1 -0
  804. package/dist/vendor/typeorm/entity-manager/SqljsEntityManager.d.ts +30 -0
  805. package/dist/vendor/typeorm/entity-manager/SqljsEntityManager.js +47 -0
  806. package/dist/vendor/typeorm/entity-manager/SqljsEntityManager.js.map +1 -0
  807. package/dist/vendor/typeorm/entity-schema/EntitySchema.d.ts +9 -0
  808. package/dist/vendor/typeorm/entity-schema/EntitySchema.js +14 -0
  809. package/dist/vendor/typeorm/entity-schema/EntitySchema.js.map +1 -0
  810. package/dist/vendor/typeorm/entity-schema/EntitySchemaCheckOptions.d.ts +10 -0
  811. package/dist/vendor/typeorm/entity-schema/EntitySchemaCheckOptions.js +3 -0
  812. package/dist/vendor/typeorm/entity-schema/EntitySchemaCheckOptions.js.map +1 -0
  813. package/dist/vendor/typeorm/entity-schema/EntitySchemaColumnForeignKeyOptions.d.ts +12 -0
  814. package/dist/vendor/typeorm/entity-schema/EntitySchemaColumnForeignKeyOptions.js +3 -0
  815. package/dist/vendor/typeorm/entity-schema/EntitySchemaColumnForeignKeyOptions.js.map +1 -0
  816. package/dist/vendor/typeorm/entity-schema/EntitySchemaColumnOptions.d.ts +170 -0
  817. package/dist/vendor/typeorm/entity-schema/EntitySchemaColumnOptions.js +3 -0
  818. package/dist/vendor/typeorm/entity-schema/EntitySchemaColumnOptions.js.map +1 -0
  819. package/dist/vendor/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.d.ts +18 -0
  820. package/dist/vendor/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.js +7 -0
  821. package/dist/vendor/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.js.map +1 -0
  822. package/dist/vendor/typeorm/entity-schema/EntitySchemaEmbeddedError.d.ts +6 -0
  823. package/dist/vendor/typeorm/entity-schema/EntitySchemaEmbeddedError.js +17 -0
  824. package/dist/vendor/typeorm/entity-schema/EntitySchemaEmbeddedError.js.map +1 -0
  825. package/dist/vendor/typeorm/entity-schema/EntitySchemaExclusionOptions.d.ts +15 -0
  826. package/dist/vendor/typeorm/entity-schema/EntitySchemaExclusionOptions.js +3 -0
  827. package/dist/vendor/typeorm/entity-schema/EntitySchemaExclusionOptions.js.map +1 -0
  828. package/dist/vendor/typeorm/entity-schema/EntitySchemaForeignKeyOptions.d.ts +16 -0
  829. package/dist/vendor/typeorm/entity-schema/EntitySchemaForeignKeyOptions.js +3 -0
  830. package/dist/vendor/typeorm/entity-schema/EntitySchemaForeignKeyOptions.js.map +1 -0
  831. package/dist/vendor/typeorm/entity-schema/EntitySchemaIndexOptions.d.ts +53 -0
  832. package/dist/vendor/typeorm/entity-schema/EntitySchemaIndexOptions.js +3 -0
  833. package/dist/vendor/typeorm/entity-schema/EntitySchemaIndexOptions.js.map +1 -0
  834. package/dist/vendor/typeorm/entity-schema/EntitySchemaInheritanceOptions.d.ts +11 -0
  835. package/dist/vendor/typeorm/entity-schema/EntitySchemaInheritanceOptions.js +3 -0
  836. package/dist/vendor/typeorm/entity-schema/EntitySchemaInheritanceOptions.js.map +1 -0
  837. package/dist/vendor/typeorm/entity-schema/EntitySchemaOptions.d.ts +118 -0
  838. package/dist/vendor/typeorm/entity-schema/EntitySchemaOptions.js +10 -0
  839. package/dist/vendor/typeorm/entity-schema/EntitySchemaOptions.js.map +1 -0
  840. package/dist/vendor/typeorm/entity-schema/EntitySchemaRelationIdOptions.d.ts +15 -0
  841. package/dist/vendor/typeorm/entity-schema/EntitySchemaRelationIdOptions.js +3 -0
  842. package/dist/vendor/typeorm/entity-schema/EntitySchemaRelationIdOptions.js.map +1 -0
  843. package/dist/vendor/typeorm/entity-schema/EntitySchemaRelationOptions.d.ts +95 -0
  844. package/dist/vendor/typeorm/entity-schema/EntitySchemaRelationOptions.js +3 -0
  845. package/dist/vendor/typeorm/entity-schema/EntitySchemaRelationOptions.js.map +1 -0
  846. package/dist/vendor/typeorm/entity-schema/EntitySchemaTransformer.d.ts +15 -0
  847. package/dist/vendor/typeorm/entity-schema/EntitySchemaTransformer.js +342 -0
  848. package/dist/vendor/typeorm/entity-schema/EntitySchemaTransformer.js.map +1 -0
  849. package/dist/vendor/typeorm/entity-schema/EntitySchemaUniqueOptions.d.ts +17 -0
  850. package/dist/vendor/typeorm/entity-schema/EntitySchemaUniqueOptions.js +3 -0
  851. package/dist/vendor/typeorm/entity-schema/EntitySchemaUniqueOptions.js.map +1 -0
  852. package/dist/vendor/typeorm/error/AlreadyHasActiveConnectionError.d.ts +7 -0
  853. package/dist/vendor/typeorm/error/AlreadyHasActiveConnectionError.js +15 -0
  854. package/dist/vendor/typeorm/error/AlreadyHasActiveConnectionError.js.map +1 -0
  855. package/dist/vendor/typeorm/error/CannotAttachTreeChildrenEntityError.d.ts +7 -0
  856. package/dist/vendor/typeorm/error/CannotAttachTreeChildrenEntityError.js +15 -0
  857. package/dist/vendor/typeorm/error/CannotAttachTreeChildrenEntityError.js.map +1 -0
  858. package/dist/vendor/typeorm/error/CannotConnectAlreadyConnectedError.d.ts +7 -0
  859. package/dist/vendor/typeorm/error/CannotConnectAlreadyConnectedError.js +14 -0
  860. package/dist/vendor/typeorm/error/CannotConnectAlreadyConnectedError.js.map +1 -0
  861. package/dist/vendor/typeorm/error/CannotCreateEntityIdMapError.d.ts +9 -0
  862. package/dist/vendor/typeorm/error/CannotCreateEntityIdMapError.js +20 -0
  863. package/dist/vendor/typeorm/error/CannotCreateEntityIdMapError.js.map +1 -0
  864. package/dist/vendor/typeorm/error/CannotDetermineEntityError.d.ts +7 -0
  865. package/dist/vendor/typeorm/error/CannotDetermineEntityError.js +15 -0
  866. package/dist/vendor/typeorm/error/CannotDetermineEntityError.js.map +1 -0
  867. package/dist/vendor/typeorm/error/CannotExecuteNotConnectedError.d.ts +7 -0
  868. package/dist/vendor/typeorm/error/CannotExecuteNotConnectedError.js +14 -0
  869. package/dist/vendor/typeorm/error/CannotExecuteNotConnectedError.js.map +1 -0
  870. package/dist/vendor/typeorm/error/CannotGetEntityManagerNotConnectedError.d.ts +7 -0
  871. package/dist/vendor/typeorm/error/CannotGetEntityManagerNotConnectedError.js +14 -0
  872. package/dist/vendor/typeorm/error/CannotGetEntityManagerNotConnectedError.js.map +1 -0
  873. package/dist/vendor/typeorm/error/CannotReflectMethodParameterTypeError.d.ts +8 -0
  874. package/dist/vendor/typeorm/error/CannotReflectMethodParameterTypeError.js +17 -0
  875. package/dist/vendor/typeorm/error/CannotReflectMethodParameterTypeError.js.map +1 -0
  876. package/dist/vendor/typeorm/error/CircularRelationsError.d.ts +7 -0
  877. package/dist/vendor/typeorm/error/CircularRelationsError.js +15 -0
  878. package/dist/vendor/typeorm/error/CircularRelationsError.js.map +1 -0
  879. package/dist/vendor/typeorm/error/ColumnTypeUndefinedError.d.ts +8 -0
  880. package/dist/vendor/typeorm/error/ColumnTypeUndefinedError.js +18 -0
  881. package/dist/vendor/typeorm/error/ColumnTypeUndefinedError.js.map +1 -0
  882. package/dist/vendor/typeorm/error/ConnectionIsNotSetError.d.ts +7 -0
  883. package/dist/vendor/typeorm/error/ConnectionIsNotSetError.js +14 -0
  884. package/dist/vendor/typeorm/error/ConnectionIsNotSetError.js.map +1 -0
  885. package/dist/vendor/typeorm/error/ConnectionNotFoundError.d.ts +7 -0
  886. package/dist/vendor/typeorm/error/ConnectionNotFoundError.js +14 -0
  887. package/dist/vendor/typeorm/error/ConnectionNotFoundError.js.map +1 -0
  888. package/dist/vendor/typeorm/error/DataTypeNotSupportedError.d.ts +7 -0
  889. package/dist/vendor/typeorm/error/DataTypeNotSupportedError.js +13 -0
  890. package/dist/vendor/typeorm/error/DataTypeNotSupportedError.js.map +1 -0
  891. package/dist/vendor/typeorm/error/DriverOptionNotSetError.d.ts +7 -0
  892. package/dist/vendor/typeorm/error/DriverOptionNotSetError.js +15 -0
  893. package/dist/vendor/typeorm/error/DriverOptionNotSetError.js.map +1 -0
  894. package/dist/vendor/typeorm/error/DriverPackageNotInstalledError.d.ts +7 -0
  895. package/dist/vendor/typeorm/error/DriverPackageNotInstalledError.js +14 -0
  896. package/dist/vendor/typeorm/error/DriverPackageNotInstalledError.js.map +1 -0
  897. package/dist/vendor/typeorm/error/EntityMetadataNotFoundError.d.ts +6 -0
  898. package/dist/vendor/typeorm/error/EntityMetadataNotFoundError.js +28 -0
  899. package/dist/vendor/typeorm/error/EntityMetadataNotFoundError.js.map +1 -0
  900. package/dist/vendor/typeorm/error/EntityNotFoundError.d.ts +12 -0
  901. package/dist/vendor/typeorm/error/EntityNotFoundError.js +41 -0
  902. package/dist/vendor/typeorm/error/EntityNotFoundError.js.map +1 -0
  903. package/dist/vendor/typeorm/error/EntityPropertyNotFoundError.d.ts +8 -0
  904. package/dist/vendor/typeorm/error/EntityPropertyNotFoundError.js +16 -0
  905. package/dist/vendor/typeorm/error/EntityPropertyNotFoundError.js.map +1 -0
  906. package/dist/vendor/typeorm/error/FindRelationsNotFoundError.d.ts +7 -0
  907. package/dist/vendor/typeorm/error/FindRelationsNotFoundError.js +22 -0
  908. package/dist/vendor/typeorm/error/FindRelationsNotFoundError.js.map +1 -0
  909. package/dist/vendor/typeorm/error/ForbiddenTransactionModeOverrideError.d.ts +8 -0
  910. package/dist/vendor/typeorm/error/ForbiddenTransactionModeOverrideError.js +15 -0
  911. package/dist/vendor/typeorm/error/ForbiddenTransactionModeOverrideError.js.map +1 -0
  912. package/dist/vendor/typeorm/error/InitializedRelationError.d.ts +11 -0
  913. package/dist/vendor/typeorm/error/InitializedRelationError.js +19 -0
  914. package/dist/vendor/typeorm/error/InitializedRelationError.js.map +1 -0
  915. package/dist/vendor/typeorm/error/InsertValuesMissingError.d.ts +7 -0
  916. package/dist/vendor/typeorm/error/InsertValuesMissingError.js +15 -0
  917. package/dist/vendor/typeorm/error/InsertValuesMissingError.js.map +1 -0
  918. package/dist/vendor/typeorm/error/LimitOnUpdateNotSupportedError.d.ts +7 -0
  919. package/dist/vendor/typeorm/error/LimitOnUpdateNotSupportedError.js +14 -0
  920. package/dist/vendor/typeorm/error/LimitOnUpdateNotSupportedError.js.map +1 -0
  921. package/dist/vendor/typeorm/error/LockNotSupportedOnGivenDriverError.d.ts +7 -0
  922. package/dist/vendor/typeorm/error/LockNotSupportedOnGivenDriverError.js +14 -0
  923. package/dist/vendor/typeorm/error/LockNotSupportedOnGivenDriverError.js.map +1 -0
  924. package/dist/vendor/typeorm/error/MetadataAlreadyExistsError.d.ts +4 -0
  925. package/dist/vendor/typeorm/error/MetadataAlreadyExistsError.js +17 -0
  926. package/dist/vendor/typeorm/error/MetadataAlreadyExistsError.js.map +1 -0
  927. package/dist/vendor/typeorm/error/MetadataWithSuchNameAlreadyExistsError.d.ts +4 -0
  928. package/dist/vendor/typeorm/error/MetadataWithSuchNameAlreadyExistsError.js +15 -0
  929. package/dist/vendor/typeorm/error/MetadataWithSuchNameAlreadyExistsError.js.map +1 -0
  930. package/dist/vendor/typeorm/error/MissingDeleteDateColumnError.d.ts +5 -0
  931. package/dist/vendor/typeorm/error/MissingDeleteDateColumnError.js +11 -0
  932. package/dist/vendor/typeorm/error/MissingDeleteDateColumnError.js.map +1 -0
  933. package/dist/vendor/typeorm/error/MissingDriverError.d.ts +7 -0
  934. package/dist/vendor/typeorm/error/MissingDriverError.js +15 -0
  935. package/dist/vendor/typeorm/error/MissingDriverError.js.map +1 -0
  936. package/dist/vendor/typeorm/error/MissingJoinColumnError.d.ts +6 -0
  937. package/dist/vendor/typeorm/error/MissingJoinColumnError.js +22 -0
  938. package/dist/vendor/typeorm/error/MissingJoinColumnError.js.map +1 -0
  939. package/dist/vendor/typeorm/error/MissingJoinTableError.d.ts +6 -0
  940. package/dist/vendor/typeorm/error/MissingJoinTableError.js +22 -0
  941. package/dist/vendor/typeorm/error/MissingJoinTableError.js.map +1 -0
  942. package/dist/vendor/typeorm/error/MissingPrimaryColumnError.d.ts +5 -0
  943. package/dist/vendor/typeorm/error/MissingPrimaryColumnError.js +12 -0
  944. package/dist/vendor/typeorm/error/MissingPrimaryColumnError.js.map +1 -0
  945. package/dist/vendor/typeorm/error/MustBeEntityError.d.ts +7 -0
  946. package/dist/vendor/typeorm/error/MustBeEntityError.js +14 -0
  947. package/dist/vendor/typeorm/error/MustBeEntityError.js.map +1 -0
  948. package/dist/vendor/typeorm/error/NamedPlaceholdersNotSupportedError.d.ts +7 -0
  949. package/dist/vendor/typeorm/error/NamedPlaceholdersNotSupportedError.js +14 -0
  950. package/dist/vendor/typeorm/error/NamedPlaceholdersNotSupportedError.js.map +1 -0
  951. package/dist/vendor/typeorm/error/NestedSetMultipleRootError.d.ts +4 -0
  952. package/dist/vendor/typeorm/error/NestedSetMultipleRootError.js +11 -0
  953. package/dist/vendor/typeorm/error/NestedSetMultipleRootError.js.map +1 -0
  954. package/dist/vendor/typeorm/error/NoConnectionForRepositoryError.d.ts +7 -0
  955. package/dist/vendor/typeorm/error/NoConnectionForRepositoryError.js +15 -0
  956. package/dist/vendor/typeorm/error/NoConnectionForRepositoryError.js.map +1 -0
  957. package/dist/vendor/typeorm/error/NoConnectionOptionError.d.ts +7 -0
  958. package/dist/vendor/typeorm/error/NoConnectionOptionError.js +15 -0
  959. package/dist/vendor/typeorm/error/NoConnectionOptionError.js.map +1 -0
  960. package/dist/vendor/typeorm/error/NoNeedToReleaseEntityManagerError.d.ts +7 -0
  961. package/dist/vendor/typeorm/error/NoNeedToReleaseEntityManagerError.js +16 -0
  962. package/dist/vendor/typeorm/error/NoNeedToReleaseEntityManagerError.js.map +1 -0
  963. package/dist/vendor/typeorm/error/NoVersionOrUpdateDateColumnError.d.ts +7 -0
  964. package/dist/vendor/typeorm/error/NoVersionOrUpdateDateColumnError.js +14 -0
  965. package/dist/vendor/typeorm/error/NoVersionOrUpdateDateColumnError.js.map +1 -0
  966. package/dist/vendor/typeorm/error/OffsetWithoutLimitNotSupportedError.d.ts +7 -0
  967. package/dist/vendor/typeorm/error/OffsetWithoutLimitNotSupportedError.js +16 -0
  968. package/dist/vendor/typeorm/error/OffsetWithoutLimitNotSupportedError.js.map +1 -0
  969. package/dist/vendor/typeorm/error/OptimisticLockCanNotBeUsedError.d.ts +7 -0
  970. package/dist/vendor/typeorm/error/OptimisticLockCanNotBeUsedError.js +14 -0
  971. package/dist/vendor/typeorm/error/OptimisticLockCanNotBeUsedError.js.map +1 -0
  972. package/dist/vendor/typeorm/error/OptimisticLockVersionMismatchError.d.ts +7 -0
  973. package/dist/vendor/typeorm/error/OptimisticLockVersionMismatchError.js +14 -0
  974. package/dist/vendor/typeorm/error/OptimisticLockVersionMismatchError.js.map +1 -0
  975. package/dist/vendor/typeorm/error/PersistedEntityNotFoundError.d.ts +7 -0
  976. package/dist/vendor/typeorm/error/PersistedEntityNotFoundError.js +14 -0
  977. package/dist/vendor/typeorm/error/PersistedEntityNotFoundError.js.map +1 -0
  978. package/dist/vendor/typeorm/error/PessimisticLockTransactionRequiredError.d.ts +7 -0
  979. package/dist/vendor/typeorm/error/PessimisticLockTransactionRequiredError.js +14 -0
  980. package/dist/vendor/typeorm/error/PessimisticLockTransactionRequiredError.js.map +1 -0
  981. package/dist/vendor/typeorm/error/PrimaryColumnCannotBeNullableError.d.ts +4 -0
  982. package/dist/vendor/typeorm/error/PrimaryColumnCannotBeNullableError.js +12 -0
  983. package/dist/vendor/typeorm/error/PrimaryColumnCannotBeNullableError.js.map +1 -0
  984. package/dist/vendor/typeorm/error/QueryFailedError.d.ts +11 -0
  985. package/dist/vendor/typeorm/error/QueryFailedError.js +29 -0
  986. package/dist/vendor/typeorm/error/QueryFailedError.js.map +1 -0
  987. package/dist/vendor/typeorm/error/QueryRunnerAlreadyReleasedError.d.ts +4 -0
  988. package/dist/vendor/typeorm/error/QueryRunnerAlreadyReleasedError.js +11 -0
  989. package/dist/vendor/typeorm/error/QueryRunnerAlreadyReleasedError.js.map +1 -0
  990. package/dist/vendor/typeorm/error/QueryRunnerProviderAlreadyReleasedError.d.ts +7 -0
  991. package/dist/vendor/typeorm/error/QueryRunnerProviderAlreadyReleasedError.js +15 -0
  992. package/dist/vendor/typeorm/error/QueryRunnerProviderAlreadyReleasedError.js.map +1 -0
  993. package/dist/vendor/typeorm/error/RepositoryNotTreeError.d.ts +8 -0
  994. package/dist/vendor/typeorm/error/RepositoryNotTreeError.js +31 -0
  995. package/dist/vendor/typeorm/error/RepositoryNotTreeError.js.map +1 -0
  996. package/dist/vendor/typeorm/error/ReturningStatementNotSupportedError.d.ts +8 -0
  997. package/dist/vendor/typeorm/error/ReturningStatementNotSupportedError.js +15 -0
  998. package/dist/vendor/typeorm/error/ReturningStatementNotSupportedError.js.map +1 -0
  999. package/dist/vendor/typeorm/error/SubjectRemovedAndUpdatedError.d.ts +8 -0
  1000. package/dist/vendor/typeorm/error/SubjectRemovedAndUpdatedError.js +15 -0
  1001. package/dist/vendor/typeorm/error/SubjectRemovedAndUpdatedError.js.map +1 -0
  1002. package/dist/vendor/typeorm/error/SubjectWithoutIdentifierError.d.ts +10 -0
  1003. package/dist/vendor/typeorm/error/SubjectWithoutIdentifierError.js +16 -0
  1004. package/dist/vendor/typeorm/error/SubjectWithoutIdentifierError.js.map +1 -0
  1005. package/dist/vendor/typeorm/error/TransactionAlreadyStartedError.d.ts +7 -0
  1006. package/dist/vendor/typeorm/error/TransactionAlreadyStartedError.js +14 -0
  1007. package/dist/vendor/typeorm/error/TransactionAlreadyStartedError.js.map +1 -0
  1008. package/dist/vendor/typeorm/error/TransactionNotStartedError.d.ts +7 -0
  1009. package/dist/vendor/typeorm/error/TransactionNotStartedError.js +14 -0
  1010. package/dist/vendor/typeorm/error/TransactionNotStartedError.js.map +1 -0
  1011. package/dist/vendor/typeorm/error/TreeRepositoryNotSupportedError.d.ts +5 -0
  1012. package/dist/vendor/typeorm/error/TreeRepositoryNotSupportedError.js +11 -0
  1013. package/dist/vendor/typeorm/error/TreeRepositoryNotSupportedError.js.map +1 -0
  1014. package/dist/vendor/typeorm/error/TypeORMError.d.ts +4 -0
  1015. package/dist/vendor/typeorm/error/TypeORMError.js +22 -0
  1016. package/dist/vendor/typeorm/error/TypeORMError.js.map +1 -0
  1017. package/dist/vendor/typeorm/error/UpdateValuesMissingError.d.ts +4 -0
  1018. package/dist/vendor/typeorm/error/UpdateValuesMissingError.js +11 -0
  1019. package/dist/vendor/typeorm/error/UpdateValuesMissingError.js.map +1 -0
  1020. package/dist/vendor/typeorm/error/UsingJoinColumnIsNotAllowedError.d.ts +6 -0
  1021. package/dist/vendor/typeorm/error/UsingJoinColumnIsNotAllowedError.js +12 -0
  1022. package/dist/vendor/typeorm/error/UsingJoinColumnIsNotAllowedError.js.map +1 -0
  1023. package/dist/vendor/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.d.ts +6 -0
  1024. package/dist/vendor/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +13 -0
  1025. package/dist/vendor/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -0
  1026. package/dist/vendor/typeorm/error/UsingJoinTableIsNotAllowedError.d.ts +6 -0
  1027. package/dist/vendor/typeorm/error/UsingJoinTableIsNotAllowedError.js +13 -0
  1028. package/dist/vendor/typeorm/error/UsingJoinTableIsNotAllowedError.js.map +1 -0
  1029. package/dist/vendor/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.d.ts +6 -0
  1030. package/dist/vendor/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.js +13 -0
  1031. package/dist/vendor/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -0
  1032. package/dist/vendor/typeorm/error/index.d.ts +59 -0
  1033. package/dist/vendor/typeorm/error/index.js +63 -0
  1034. package/dist/vendor/typeorm/error/index.js.map +1 -0
  1035. package/dist/vendor/typeorm/find-options/EqualOperator.d.ts +5 -0
  1036. package/dist/vendor/typeorm/find-options/EqualOperator.js +12 -0
  1037. package/dist/vendor/typeorm/find-options/EqualOperator.js.map +1 -0
  1038. package/dist/vendor/typeorm/find-options/FindManyOptions.d.ts +14 -0
  1039. package/dist/vendor/typeorm/find-options/FindManyOptions.js +3 -0
  1040. package/dist/vendor/typeorm/find-options/FindManyOptions.js.map +1 -0
  1041. package/dist/vendor/typeorm/find-options/FindOneOptions.d.ts +80 -0
  1042. package/dist/vendor/typeorm/find-options/FindOneOptions.js +3 -0
  1043. package/dist/vendor/typeorm/find-options/FindOneOptions.js.map +1 -0
  1044. package/dist/vendor/typeorm/find-options/FindOperator.d.ts +67 -0
  1045. package/dist/vendor/typeorm/find-options/FindOperator.js +95 -0
  1046. package/dist/vendor/typeorm/find-options/FindOperator.js.map +1 -0
  1047. package/dist/vendor/typeorm/find-options/FindOperatorType.d.ts +4 -0
  1048. package/dist/vendor/typeorm/find-options/FindOperatorType.js +3 -0
  1049. package/dist/vendor/typeorm/find-options/FindOperatorType.js.map +1 -0
  1050. package/dist/vendor/typeorm/find-options/FindOptionsOrder.d.ts +18 -0
  1051. package/dist/vendor/typeorm/find-options/FindOptionsOrder.js +3 -0
  1052. package/dist/vendor/typeorm/find-options/FindOptionsOrder.js.map +1 -0
  1053. package/dist/vendor/typeorm/find-options/FindOptionsRelations.d.ts +11 -0
  1054. package/dist/vendor/typeorm/find-options/FindOptionsRelations.js +3 -0
  1055. package/dist/vendor/typeorm/find-options/FindOptionsRelations.js.map +1 -0
  1056. package/dist/vendor/typeorm/find-options/FindOptionsSelect.d.ts +11 -0
  1057. package/dist/vendor/typeorm/find-options/FindOptionsSelect.js +3 -0
  1058. package/dist/vendor/typeorm/find-options/FindOptionsSelect.js.map +1 -0
  1059. package/dist/vendor/typeorm/find-options/FindOptionsUtils.d.ts +71 -0
  1060. package/dist/vendor/typeorm/find-options/FindOptionsUtils.js +278 -0
  1061. package/dist/vendor/typeorm/find-options/FindOptionsUtils.js.map +1 -0
  1062. package/dist/vendor/typeorm/find-options/FindOptionsWhere.d.ts +17 -0
  1063. package/dist/vendor/typeorm/find-options/FindOptionsWhere.js +3 -0
  1064. package/dist/vendor/typeorm/find-options/FindOptionsWhere.js.map +1 -0
  1065. package/dist/vendor/typeorm/find-options/FindTreeOptions.d.ts +13 -0
  1066. package/dist/vendor/typeorm/find-options/FindTreeOptions.js +3 -0
  1067. package/dist/vendor/typeorm/find-options/FindTreeOptions.js.map +1 -0
  1068. package/dist/vendor/typeorm/find-options/OrderByCondition.d.ts +16 -0
  1069. package/dist/vendor/typeorm/find-options/OrderByCondition.js +3 -0
  1070. package/dist/vendor/typeorm/find-options/OrderByCondition.js.map +1 -0
  1071. package/dist/vendor/typeorm/find-options/mongodb/MongoFindManyOptions.d.ts +14 -0
  1072. package/dist/vendor/typeorm/find-options/mongodb/MongoFindManyOptions.js +3 -0
  1073. package/dist/vendor/typeorm/find-options/mongodb/MongoFindManyOptions.js.map +1 -0
  1074. package/dist/vendor/typeorm/find-options/mongodb/MongoFindOneOptions.d.ts +11 -0
  1075. package/dist/vendor/typeorm/find-options/mongodb/MongoFindOneOptions.js +3 -0
  1076. package/dist/vendor/typeorm/find-options/mongodb/MongoFindOneOptions.js.map +1 -0
  1077. package/dist/vendor/typeorm/find-options/operator/And.d.ts +6 -0
  1078. package/dist/vendor/typeorm/find-options/operator/And.js +12 -0
  1079. package/dist/vendor/typeorm/find-options/operator/And.js.map +1 -0
  1080. package/dist/vendor/typeorm/find-options/operator/Any.d.ts +10 -0
  1081. package/dist/vendor/typeorm/find-options/operator/Any.js +16 -0
  1082. package/dist/vendor/typeorm/find-options/operator/Any.js.map +1 -0
  1083. package/dist/vendor/typeorm/find-options/operator/ArrayContainedBy.d.ts +10 -0
  1084. package/dist/vendor/typeorm/find-options/operator/ArrayContainedBy.js +16 -0
  1085. package/dist/vendor/typeorm/find-options/operator/ArrayContainedBy.js.map +1 -0
  1086. package/dist/vendor/typeorm/find-options/operator/ArrayContains.d.ts +10 -0
  1087. package/dist/vendor/typeorm/find-options/operator/ArrayContains.js +16 -0
  1088. package/dist/vendor/typeorm/find-options/operator/ArrayContains.js.map +1 -0
  1089. package/dist/vendor/typeorm/find-options/operator/ArrayOverlap.d.ts +10 -0
  1090. package/dist/vendor/typeorm/find-options/operator/ArrayOverlap.js +16 -0
  1091. package/dist/vendor/typeorm/find-options/operator/ArrayOverlap.js.map +1 -0
  1092. package/dist/vendor/typeorm/find-options/operator/Between.d.ts +11 -0
  1093. package/dist/vendor/typeorm/find-options/operator/Between.js +17 -0
  1094. package/dist/vendor/typeorm/find-options/operator/Between.js.map +1 -0
  1095. package/dist/vendor/typeorm/find-options/operator/Equal.d.ts +15 -0
  1096. package/dist/vendor/typeorm/find-options/operator/Equal.js +20 -0
  1097. package/dist/vendor/typeorm/find-options/operator/Equal.js.map +1 -0
  1098. package/dist/vendor/typeorm/find-options/operator/ILike.d.ts +10 -0
  1099. package/dist/vendor/typeorm/find-options/operator/ILike.js +16 -0
  1100. package/dist/vendor/typeorm/find-options/operator/ILike.js.map +1 -0
  1101. package/dist/vendor/typeorm/find-options/operator/In.d.ts +10 -0
  1102. package/dist/vendor/typeorm/find-options/operator/In.js +16 -0
  1103. package/dist/vendor/typeorm/find-options/operator/In.js.map +1 -0
  1104. package/dist/vendor/typeorm/find-options/operator/IsNull.d.ts +9 -0
  1105. package/dist/vendor/typeorm/find-options/operator/IsNull.js +15 -0
  1106. package/dist/vendor/typeorm/find-options/operator/IsNull.js.map +1 -0
  1107. package/dist/vendor/typeorm/find-options/operator/JsonContains.d.ts +10 -0
  1108. package/dist/vendor/typeorm/find-options/operator/JsonContains.js +16 -0
  1109. package/dist/vendor/typeorm/find-options/operator/JsonContains.js.map +1 -0
  1110. package/dist/vendor/typeorm/find-options/operator/LessThan.d.ts +10 -0
  1111. package/dist/vendor/typeorm/find-options/operator/LessThan.js +16 -0
  1112. package/dist/vendor/typeorm/find-options/operator/LessThan.js.map +1 -0
  1113. package/dist/vendor/typeorm/find-options/operator/LessThanOrEqual.d.ts +10 -0
  1114. package/dist/vendor/typeorm/find-options/operator/LessThanOrEqual.js +16 -0
  1115. package/dist/vendor/typeorm/find-options/operator/LessThanOrEqual.js.map +1 -0
  1116. package/dist/vendor/typeorm/find-options/operator/Like.d.ts +10 -0
  1117. package/dist/vendor/typeorm/find-options/operator/Like.js +16 -0
  1118. package/dist/vendor/typeorm/find-options/operator/Like.js.map +1 -0
  1119. package/dist/vendor/typeorm/find-options/operator/MoreThan.d.ts +10 -0
  1120. package/dist/vendor/typeorm/find-options/operator/MoreThan.js +16 -0
  1121. package/dist/vendor/typeorm/find-options/operator/MoreThan.js.map +1 -0
  1122. package/dist/vendor/typeorm/find-options/operator/MoreThanOrEqual.d.ts +10 -0
  1123. package/dist/vendor/typeorm/find-options/operator/MoreThanOrEqual.js +16 -0
  1124. package/dist/vendor/typeorm/find-options/operator/MoreThanOrEqual.js.map +1 -0
  1125. package/dist/vendor/typeorm/find-options/operator/Not.d.ts +11 -0
  1126. package/dist/vendor/typeorm/find-options/operator/Not.js +17 -0
  1127. package/dist/vendor/typeorm/find-options/operator/Not.js.map +1 -0
  1128. package/dist/vendor/typeorm/find-options/operator/Or.d.ts +6 -0
  1129. package/dist/vendor/typeorm/find-options/operator/Or.js +12 -0
  1130. package/dist/vendor/typeorm/find-options/operator/Or.js.map +1 -0
  1131. package/dist/vendor/typeorm/find-options/operator/Raw.d.ts +31 -0
  1132. package/dist/vendor/typeorm/find-options/operator/Raw.js +11 -0
  1133. package/dist/vendor/typeorm/find-options/operator/Raw.js.map +1 -0
  1134. package/dist/vendor/typeorm/globals.d.ts +6 -0
  1135. package/dist/vendor/typeorm/globals.js +19 -0
  1136. package/dist/vendor/typeorm/globals.js.map +1 -0
  1137. package/dist/vendor/typeorm/index.d.ts +177 -0
  1138. package/dist/vendor/typeorm/index.js +147 -0
  1139. package/dist/vendor/typeorm/index.js.map +1 -0
  1140. package/dist/vendor/typeorm/legacy-naming-strategies/index.d.ts +2 -0
  1141. package/dist/vendor/typeorm/legacy-naming-strategies/index.js +8 -0
  1142. package/dist/vendor/typeorm/legacy-naming-strategies/index.js.map +1 -0
  1143. package/dist/vendor/typeorm/legacy-naming-strategies/legacy-oracle-naming-strategy.d.ts +16 -0
  1144. package/dist/vendor/typeorm/legacy-naming-strategies/legacy-oracle-naming-strategy.js +48 -0
  1145. package/dist/vendor/typeorm/legacy-naming-strategies/legacy-oracle-naming-strategy.js.map +1 -0
  1146. package/dist/vendor/typeorm/legacy-naming-strategies/naming-strategy-v03.d.ts +4 -0
  1147. package/dist/vendor/typeorm/legacy-naming-strategies/naming-strategy-v03.js +14 -0
  1148. package/dist/vendor/typeorm/legacy-naming-strategies/naming-strategy-v03.js.map +1 -0
  1149. package/dist/vendor/typeorm/logger/AbstractLogger.d.ts +82 -0
  1150. package/dist/vendor/typeorm/logger/AbstractLogger.js +270 -0
  1151. package/dist/vendor/typeorm/logger/AbstractLogger.js.map +1 -0
  1152. package/dist/vendor/typeorm/logger/AdvancedConsoleLogger.d.ts +17 -0
  1153. package/dist/vendor/typeorm/logger/AdvancedConsoleLogger.js +59 -0
  1154. package/dist/vendor/typeorm/logger/AdvancedConsoleLogger.js.map +1 -0
  1155. package/dist/vendor/typeorm/logger/DebugLogger.d.ts +26 -0
  1156. package/dist/vendor/typeorm/logger/DebugLogger.js +85 -0
  1157. package/dist/vendor/typeorm/logger/DebugLogger.js.map +1 -0
  1158. package/dist/vendor/typeorm/logger/FileLogger.d.ts +35 -0
  1159. package/dist/vendor/typeorm/logger/FileLogger.js +90 -0
  1160. package/dist/vendor/typeorm/logger/FileLogger.js.map +1 -0
  1161. package/dist/vendor/typeorm/logger/FormattedConsoleLogger.d.ts +17 -0
  1162. package/dist/vendor/typeorm/logger/FormattedConsoleLogger.js +62 -0
  1163. package/dist/vendor/typeorm/logger/FormattedConsoleLogger.js.map +1 -0
  1164. package/dist/vendor/typeorm/logger/Logger.d.ts +64 -0
  1165. package/dist/vendor/typeorm/logger/Logger.js +3 -0
  1166. package/dist/vendor/typeorm/logger/Logger.js.map +1 -0
  1167. package/dist/vendor/typeorm/logger/LoggerFactory.d.ts +14 -0
  1168. package/dist/vendor/typeorm/logger/LoggerFactory.js +41 -0
  1169. package/dist/vendor/typeorm/logger/LoggerFactory.js.map +1 -0
  1170. package/dist/vendor/typeorm/logger/LoggerOptions.d.ts +5 -0
  1171. package/dist/vendor/typeorm/logger/LoggerOptions.js +3 -0
  1172. package/dist/vendor/typeorm/logger/LoggerOptions.js.map +1 -0
  1173. package/dist/vendor/typeorm/logger/SimpleConsoleLogger.d.ts +17 -0
  1174. package/dist/vendor/typeorm/logger/SimpleConsoleLogger.js +60 -0
  1175. package/dist/vendor/typeorm/logger/SimpleConsoleLogger.js.map +1 -0
  1176. package/dist/vendor/typeorm/metadata/CheckMetadata.d.ts +41 -0
  1177. package/dist/vendor/typeorm/metadata/CheckMetadata.js +36 -0
  1178. package/dist/vendor/typeorm/metadata/CheckMetadata.js.map +1 -0
  1179. package/dist/vendor/typeorm/metadata/ColumnMetadata.d.ts +324 -0
  1180. package/dist/vendor/typeorm/metadata/ColumnMetadata.js +624 -0
  1181. package/dist/vendor/typeorm/metadata/ColumnMetadata.js.map +1 -0
  1182. package/dist/vendor/typeorm/metadata/EmbeddedMetadata.d.ts +158 -0
  1183. package/dist/vendor/typeorm/metadata/EmbeddedMetadata.js +214 -0
  1184. package/dist/vendor/typeorm/metadata/EmbeddedMetadata.js.map +1 -0
  1185. package/dist/vendor/typeorm/metadata/EntityListenerMetadata.d.ts +55 -0
  1186. package/dist/vendor/typeorm/metadata/EntityListenerMetadata.js +83 -0
  1187. package/dist/vendor/typeorm/metadata/EntityListenerMetadata.js.map +1 -0
  1188. package/dist/vendor/typeorm/metadata/EntityMetadata.d.ts +619 -0
  1189. package/dist/vendor/typeorm/metadata/EntityMetadata.js +722 -0
  1190. package/dist/vendor/typeorm/metadata/EntityMetadata.js.map +1 -0
  1191. package/dist/vendor/typeorm/metadata/ExclusionMetadata.d.ts +46 -0
  1192. package/dist/vendor/typeorm/metadata/ExclusionMetadata.js +37 -0
  1193. package/dist/vendor/typeorm/metadata/ExclusionMetadata.js.map +1 -0
  1194. package/dist/vendor/typeorm/metadata/ForeignKeyMetadata.d.ts +79 -0
  1195. package/dist/vendor/typeorm/metadata/ForeignKeyMetadata.js +58 -0
  1196. package/dist/vendor/typeorm/metadata/ForeignKeyMetadata.js.map +1 -0
  1197. package/dist/vendor/typeorm/metadata/IndexMetadata.d.ts +125 -0
  1198. package/dist/vendor/typeorm/metadata/IndexMetadata.js +158 -0
  1199. package/dist/vendor/typeorm/metadata/IndexMetadata.js.map +1 -0
  1200. package/dist/vendor/typeorm/metadata/RelationIdMetadata.d.ts +55 -0
  1201. package/dist/vendor/typeorm/metadata/RelationIdMetadata.js +63 -0
  1202. package/dist/vendor/typeorm/metadata/RelationIdMetadata.js.map +1 -0
  1203. package/dist/vendor/typeorm/metadata/RelationMetadata.d.ts +309 -0
  1204. package/dist/vendor/typeorm/metadata/RelationMetadata.js +456 -0
  1205. package/dist/vendor/typeorm/metadata/RelationMetadata.js.map +1 -0
  1206. package/dist/vendor/typeorm/metadata/UniqueMetadata.d.ts +67 -0
  1207. package/dist/vendor/typeorm/metadata/UniqueMetadata.js +108 -0
  1208. package/dist/vendor/typeorm/metadata/UniqueMetadata.js.map +1 -0
  1209. package/dist/vendor/typeorm/metadata/types/ClosureTreeOptions.d.ts +11 -0
  1210. package/dist/vendor/typeorm/metadata/types/ClosureTreeOptions.js +3 -0
  1211. package/dist/vendor/typeorm/metadata/types/ClosureTreeOptions.js.map +1 -0
  1212. package/dist/vendor/typeorm/metadata/types/DeferrableType.d.ts +4 -0
  1213. package/dist/vendor/typeorm/metadata/types/DeferrableType.js +3 -0
  1214. package/dist/vendor/typeorm/metadata/types/DeferrableType.js.map +1 -0
  1215. package/dist/vendor/typeorm/metadata/types/EventListenerTypes.d.ts +20 -0
  1216. package/dist/vendor/typeorm/metadata/types/EventListenerTypes.js +21 -0
  1217. package/dist/vendor/typeorm/metadata/types/EventListenerTypes.js.map +1 -0
  1218. package/dist/vendor/typeorm/metadata/types/OnDeleteType.d.ts +4 -0
  1219. package/dist/vendor/typeorm/metadata/types/OnDeleteType.js +3 -0
  1220. package/dist/vendor/typeorm/metadata/types/OnDeleteType.js.map +1 -0
  1221. package/dist/vendor/typeorm/metadata/types/OnUpdateType.d.ts +4 -0
  1222. package/dist/vendor/typeorm/metadata/types/OnUpdateType.js +3 -0
  1223. package/dist/vendor/typeorm/metadata/types/OnUpdateType.js.map +1 -0
  1224. package/dist/vendor/typeorm/metadata/types/PropertyTypeInFunction.d.ts +4 -0
  1225. package/dist/vendor/typeorm/metadata/types/PropertyTypeInFunction.js +3 -0
  1226. package/dist/vendor/typeorm/metadata/types/PropertyTypeInFunction.js.map +1 -0
  1227. package/dist/vendor/typeorm/metadata/types/RelationTypeInFunction.d.ts +5 -0
  1228. package/dist/vendor/typeorm/metadata/types/RelationTypeInFunction.js +3 -0
  1229. package/dist/vendor/typeorm/metadata/types/RelationTypeInFunction.js.map +1 -0
  1230. package/dist/vendor/typeorm/metadata/types/RelationTypes.d.ts +4 -0
  1231. package/dist/vendor/typeorm/metadata/types/RelationTypes.js +3 -0
  1232. package/dist/vendor/typeorm/metadata/types/RelationTypes.js.map +1 -0
  1233. package/dist/vendor/typeorm/metadata/types/TableTypes.d.ts +4 -0
  1234. package/dist/vendor/typeorm/metadata/types/TableTypes.js +3 -0
  1235. package/dist/vendor/typeorm/metadata/types/TableTypes.js.map +1 -0
  1236. package/dist/vendor/typeorm/metadata/types/TreeTypes.d.ts +5 -0
  1237. package/dist/vendor/typeorm/metadata/types/TreeTypes.js +3 -0
  1238. package/dist/vendor/typeorm/metadata/types/TreeTypes.js.map +1 -0
  1239. package/dist/vendor/typeorm/metadata-args/CheckMetadataArgs.d.ts +17 -0
  1240. package/dist/vendor/typeorm/metadata-args/CheckMetadataArgs.js +3 -0
  1241. package/dist/vendor/typeorm/metadata-args/CheckMetadataArgs.js.map +1 -0
  1242. package/dist/vendor/typeorm/metadata-args/ColumnMetadataArgs.d.ts +25 -0
  1243. package/dist/vendor/typeorm/metadata-args/ColumnMetadataArgs.js +3 -0
  1244. package/dist/vendor/typeorm/metadata-args/ColumnMetadataArgs.js.map +1 -0
  1245. package/dist/vendor/typeorm/metadata-args/DiscriminatorValueMetadataArgs.d.ts +13 -0
  1246. package/dist/vendor/typeorm/metadata-args/DiscriminatorValueMetadataArgs.js +3 -0
  1247. package/dist/vendor/typeorm/metadata-args/DiscriminatorValueMetadataArgs.js.map +1 -0
  1248. package/dist/vendor/typeorm/metadata-args/EmbeddedMetadataArgs.d.ts +26 -0
  1249. package/dist/vendor/typeorm/metadata-args/EmbeddedMetadataArgs.js +3 -0
  1250. package/dist/vendor/typeorm/metadata-args/EmbeddedMetadataArgs.js.map +1 -0
  1251. package/dist/vendor/typeorm/metadata-args/EntityListenerMetadataArgs.d.ts +18 -0
  1252. package/dist/vendor/typeorm/metadata-args/EntityListenerMetadataArgs.js +3 -0
  1253. package/dist/vendor/typeorm/metadata-args/EntityListenerMetadataArgs.js.map +1 -0
  1254. package/dist/vendor/typeorm/metadata-args/EntitySubscriberMetadataArgs.d.ts +9 -0
  1255. package/dist/vendor/typeorm/metadata-args/EntitySubscriberMetadataArgs.js +3 -0
  1256. package/dist/vendor/typeorm/metadata-args/EntitySubscriberMetadataArgs.js.map +1 -0
  1257. package/dist/vendor/typeorm/metadata-args/ExclusionMetadataArgs.d.ts +22 -0
  1258. package/dist/vendor/typeorm/metadata-args/ExclusionMetadataArgs.js +3 -0
  1259. package/dist/vendor/typeorm/metadata-args/ExclusionMetadataArgs.js.map +1 -0
  1260. package/dist/vendor/typeorm/metadata-args/ForeignKeyMetadataArgs.d.ts +54 -0
  1261. package/dist/vendor/typeorm/metadata-args/ForeignKeyMetadataArgs.js +3 -0
  1262. package/dist/vendor/typeorm/metadata-args/ForeignKeyMetadataArgs.js.map +1 -0
  1263. package/dist/vendor/typeorm/metadata-args/GeneratedMetadataArgs.d.ts +17 -0
  1264. package/dist/vendor/typeorm/metadata-args/GeneratedMetadataArgs.js +3 -0
  1265. package/dist/vendor/typeorm/metadata-args/GeneratedMetadataArgs.js.map +1 -0
  1266. package/dist/vendor/typeorm/metadata-args/IndexMetadataArgs.d.ts +82 -0
  1267. package/dist/vendor/typeorm/metadata-args/IndexMetadataArgs.js +3 -0
  1268. package/dist/vendor/typeorm/metadata-args/IndexMetadataArgs.js.map +1 -0
  1269. package/dist/vendor/typeorm/metadata-args/InheritanceMetadataArgs.d.ts +18 -0
  1270. package/dist/vendor/typeorm/metadata-args/InheritanceMetadataArgs.js +3 -0
  1271. package/dist/vendor/typeorm/metadata-args/InheritanceMetadataArgs.js.map +1 -0
  1272. package/dist/vendor/typeorm/metadata-args/JoinColumnMetadataArgs.d.ts +26 -0
  1273. package/dist/vendor/typeorm/metadata-args/JoinColumnMetadataArgs.js +3 -0
  1274. package/dist/vendor/typeorm/metadata-args/JoinColumnMetadataArgs.js.map +1 -0
  1275. package/dist/vendor/typeorm/metadata-args/JoinTableMetadataArgs.d.ts +43 -0
  1276. package/dist/vendor/typeorm/metadata-args/JoinTableMetadataArgs.js +3 -0
  1277. package/dist/vendor/typeorm/metadata-args/JoinTableMetadataArgs.js.map +1 -0
  1278. package/dist/vendor/typeorm/metadata-args/MetadataArgsStorage.d.ts +118 -0
  1279. package/dist/vendor/typeorm/metadata-args/MetadataArgsStorage.js +242 -0
  1280. package/dist/vendor/typeorm/metadata-args/MetadataArgsStorage.js.map +1 -0
  1281. package/dist/vendor/typeorm/metadata-args/NamingStrategyMetadataArgs.d.ts +13 -0
  1282. package/dist/vendor/typeorm/metadata-args/NamingStrategyMetadataArgs.js +3 -0
  1283. package/dist/vendor/typeorm/metadata-args/NamingStrategyMetadataArgs.js.map +1 -0
  1284. package/dist/vendor/typeorm/metadata-args/RelationIdMetadataArgs.d.ts +26 -0
  1285. package/dist/vendor/typeorm/metadata-args/RelationIdMetadataArgs.js +3 -0
  1286. package/dist/vendor/typeorm/metadata-args/RelationIdMetadataArgs.js.map +1 -0
  1287. package/dist/vendor/typeorm/metadata-args/RelationMetadataArgs.d.ts +55 -0
  1288. package/dist/vendor/typeorm/metadata-args/RelationMetadataArgs.js +3 -0
  1289. package/dist/vendor/typeorm/metadata-args/RelationMetadataArgs.js.map +1 -0
  1290. package/dist/vendor/typeorm/metadata-args/TableMetadataArgs.d.ts +66 -0
  1291. package/dist/vendor/typeorm/metadata-args/TableMetadataArgs.js +3 -0
  1292. package/dist/vendor/typeorm/metadata-args/TableMetadataArgs.js.map +1 -0
  1293. package/dist/vendor/typeorm/metadata-args/TransactionEntityMetadataArgs.d.ts +17 -0
  1294. package/dist/vendor/typeorm/metadata-args/TransactionEntityMetadataArgs.js +3 -0
  1295. package/dist/vendor/typeorm/metadata-args/TransactionEntityMetadataArgs.js.map +1 -0
  1296. package/dist/vendor/typeorm/metadata-args/TransactionRepositoryMetadataArgs.d.ts +25 -0
  1297. package/dist/vendor/typeorm/metadata-args/TransactionRepositoryMetadataArgs.js +3 -0
  1298. package/dist/vendor/typeorm/metadata-args/TransactionRepositoryMetadataArgs.js.map +1 -0
  1299. package/dist/vendor/typeorm/metadata-args/TreeMetadataArgs.d.ts +19 -0
  1300. package/dist/vendor/typeorm/metadata-args/TreeMetadataArgs.js +3 -0
  1301. package/dist/vendor/typeorm/metadata-args/TreeMetadataArgs.js.map +1 -0
  1302. package/dist/vendor/typeorm/metadata-args/UniqueMetadataArgs.d.ts +24 -0
  1303. package/dist/vendor/typeorm/metadata-args/UniqueMetadataArgs.js +3 -0
  1304. package/dist/vendor/typeorm/metadata-args/UniqueMetadataArgs.js.map +1 -0
  1305. package/dist/vendor/typeorm/metadata-args/types/ColumnMode.d.ts +7 -0
  1306. package/dist/vendor/typeorm/metadata-args/types/ColumnMode.js +3 -0
  1307. package/dist/vendor/typeorm/metadata-args/types/ColumnMode.js.map +1 -0
  1308. package/dist/vendor/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.d.ts +16 -0
  1309. package/dist/vendor/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.js +154 -0
  1310. package/dist/vendor/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.js.map +1 -0
  1311. package/dist/vendor/typeorm/metadata-builder/EntityMetadataBuilder.d.ts +78 -0
  1312. package/dist/vendor/typeorm/metadata-builder/EntityMetadataBuilder.js +835 -0
  1313. package/dist/vendor/typeorm/metadata-builder/EntityMetadataBuilder.js.map +1 -0
  1314. package/dist/vendor/typeorm/metadata-builder/EntityMetadataValidator.d.ts +34 -0
  1315. package/dist/vendor/typeorm/metadata-builder/EntityMetadataValidator.js +220 -0
  1316. package/dist/vendor/typeorm/metadata-builder/EntityMetadataValidator.js.map +1 -0
  1317. package/dist/vendor/typeorm/metadata-builder/JunctionEntityMetadataBuilder.d.ts +35 -0
  1318. package/dist/vendor/typeorm/metadata-builder/JunctionEntityMetadataBuilder.js +301 -0
  1319. package/dist/vendor/typeorm/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -0
  1320. package/dist/vendor/typeorm/metadata-builder/MetadataUtils.d.ts +31 -0
  1321. package/dist/vendor/typeorm/metadata-builder/MetadataUtils.js +51 -0
  1322. package/dist/vendor/typeorm/metadata-builder/MetadataUtils.js.map +1 -0
  1323. package/dist/vendor/typeorm/metadata-builder/RelationJoinColumnBuilder.d.ts +71 -0
  1324. package/dist/vendor/typeorm/metadata-builder/RelationJoinColumnBuilder.js +216 -0
  1325. package/dist/vendor/typeorm/metadata-builder/RelationJoinColumnBuilder.js.map +1 -0
  1326. package/dist/vendor/typeorm/migration/Migration.d.ts +28 -0
  1327. package/dist/vendor/typeorm/migration/Migration.js +20 -0
  1328. package/dist/vendor/typeorm/migration/Migration.js.map +1 -0
  1329. package/dist/vendor/typeorm/migration/MigrationExecutor.d.ts +115 -0
  1330. package/dist/vendor/typeorm/migration/MigrationExecutor.js +558 -0
  1331. package/dist/vendor/typeorm/migration/MigrationExecutor.js.map +1 -0
  1332. package/dist/vendor/typeorm/migration/MigrationInterface.d.ts +25 -0
  1333. package/dist/vendor/typeorm/migration/MigrationInterface.js +3 -0
  1334. package/dist/vendor/typeorm/migration/MigrationInterface.js.map +1 -0
  1335. package/dist/vendor/typeorm/naming-strategy/DefaultNamingStrategy.d.ts +32 -0
  1336. package/dist/vendor/typeorm/naming-strategy/DefaultNamingStrategy.js +129 -0
  1337. package/dist/vendor/typeorm/naming-strategy/DefaultNamingStrategy.js.map +1 -0
  1338. package/dist/vendor/typeorm/naming-strategy/NamingStrategyInterface.d.ts +109 -0
  1339. package/dist/vendor/typeorm/naming-strategy/NamingStrategyInterface.js +3 -0
  1340. package/dist/vendor/typeorm/naming-strategy/NamingStrategyInterface.js.map +1 -0
  1341. package/dist/vendor/typeorm/package.json +1 -0
  1342. package/dist/vendor/typeorm/persistence/EntityPersistExecutor.d.ts +21 -0
  1343. package/dist/vendor/typeorm/persistence/EntityPersistExecutor.js +179 -0
  1344. package/dist/vendor/typeorm/persistence/EntityPersistExecutor.js.map +1 -0
  1345. package/dist/vendor/typeorm/persistence/Subject.d.ts +155 -0
  1346. package/dist/vendor/typeorm/persistence/Subject.js +237 -0
  1347. package/dist/vendor/typeorm/persistence/Subject.js.map +1 -0
  1348. package/dist/vendor/typeorm/persistence/SubjectChangeMap.d.ts +23 -0
  1349. package/dist/vendor/typeorm/persistence/SubjectChangeMap.js +3 -0
  1350. package/dist/vendor/typeorm/persistence/SubjectChangeMap.js.map +1 -0
  1351. package/dist/vendor/typeorm/persistence/SubjectChangedColumnsComputer.d.ts +25 -0
  1352. package/dist/vendor/typeorm/persistence/SubjectChangedColumnsComputer.js +231 -0
  1353. package/dist/vendor/typeorm/persistence/SubjectChangedColumnsComputer.js.map +1 -0
  1354. package/dist/vendor/typeorm/persistence/SubjectDatabaseEntityLoader.d.ts +29 -0
  1355. package/dist/vendor/typeorm/persistence/SubjectDatabaseEntityLoader.js +150 -0
  1356. package/dist/vendor/typeorm/persistence/SubjectDatabaseEntityLoader.js.map +1 -0
  1357. package/dist/vendor/typeorm/persistence/SubjectExecutor.d.ts +123 -0
  1358. package/dist/vendor/typeorm/persistence/SubjectExecutor.js +764 -0
  1359. package/dist/vendor/typeorm/persistence/SubjectExecutor.js.map +1 -0
  1360. package/dist/vendor/typeorm/persistence/SubjectTopologicalSorter.d.ts +53 -0
  1361. package/dist/vendor/typeorm/persistence/SubjectTopologicalSorter.js +192 -0
  1362. package/dist/vendor/typeorm/persistence/SubjectTopologicalSorter.js.map +1 -0
  1363. package/dist/vendor/typeorm/persistence/subject-builder/CascadesSubjectBuilder.d.ts +25 -0
  1364. package/dist/vendor/typeorm/persistence/subject-builder/CascadesSubjectBuilder.js +136 -0
  1365. package/dist/vendor/typeorm/persistence/subject-builder/CascadesSubjectBuilder.js.map +1 -0
  1366. package/dist/vendor/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.d.ts +47 -0
  1367. package/dist/vendor/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.js +232 -0
  1368. package/dist/vendor/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -0
  1369. package/dist/vendor/typeorm/persistence/subject-builder/OneToManySubjectBuilder.d.ts +33 -0
  1370. package/dist/vendor/typeorm/persistence/subject-builder/OneToManySubjectBuilder.js +193 -0
  1371. package/dist/vendor/typeorm/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -0
  1372. package/dist/vendor/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.d.ts +33 -0
  1373. package/dist/vendor/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js +160 -0
  1374. package/dist/vendor/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js.map +1 -0
  1375. package/dist/vendor/typeorm/persistence/tree/ClosureSubjectExecutor.d.ts +34 -0
  1376. package/dist/vendor/typeorm/persistence/tree/ClosureSubjectExecutor.js +245 -0
  1377. package/dist/vendor/typeorm/persistence/tree/ClosureSubjectExecutor.js.map +1 -0
  1378. package/dist/vendor/typeorm/persistence/tree/MaterializedPathSubjectExecutor.d.ts +23 -0
  1379. package/dist/vendor/typeorm/persistence/tree/MaterializedPathSubjectExecutor.js +129 -0
  1380. package/dist/vendor/typeorm/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -0
  1381. package/dist/vendor/typeorm/persistence/tree/NestedSetSubjectExecutor.d.ts +49 -0
  1382. package/dist/vendor/typeorm/persistence/tree/NestedSetSubjectExecutor.js +281 -0
  1383. package/dist/vendor/typeorm/persistence/tree/NestedSetSubjectExecutor.js.map +1 -0
  1384. package/dist/vendor/typeorm/platform/DriverPackages.d.ts +10 -0
  1385. package/dist/vendor/typeorm/platform/DriverPackages.js +54 -0
  1386. package/dist/vendor/typeorm/platform/DriverPackages.js.map +1 -0
  1387. package/dist/vendor/typeorm/platform/PlatformTools.d.ts +86 -0
  1388. package/dist/vendor/typeorm/platform/PlatformTools.js +218 -0
  1389. package/dist/vendor/typeorm/platform/PlatformTools.js.map +1 -0
  1390. package/dist/vendor/typeorm/query-builder/Alias.d.ts +22 -0
  1391. package/dist/vendor/typeorm/query-builder/Alias.js +28 -0
  1392. package/dist/vendor/typeorm/query-builder/Alias.js.map +1 -0
  1393. package/dist/vendor/typeorm/query-builder/Brackets.d.ts +18 -0
  1394. package/dist/vendor/typeorm/query-builder/Brackets.js +20 -0
  1395. package/dist/vendor/typeorm/query-builder/Brackets.js.map +1 -0
  1396. package/dist/vendor/typeorm/query-builder/DeleteQueryBuilder.d.ts +109 -0
  1397. package/dist/vendor/typeorm/query-builder/DeleteQueryBuilder.js +221 -0
  1398. package/dist/vendor/typeorm/query-builder/DeleteQueryBuilder.js.map +1 -0
  1399. package/dist/vendor/typeorm/query-builder/InsertOrUpdateOptions.d.ts +18 -0
  1400. package/dist/vendor/typeorm/query-builder/InsertOrUpdateOptions.js +3 -0
  1401. package/dist/vendor/typeorm/query-builder/InsertOrUpdateOptions.js.map +1 -0
  1402. package/dist/vendor/typeorm/query-builder/InsertQueryBuilder.d.ts +148 -0
  1403. package/dist/vendor/typeorm/query-builder/InsertQueryBuilder.js +1209 -0
  1404. package/dist/vendor/typeorm/query-builder/InsertQueryBuilder.js.map +1 -0
  1405. package/dist/vendor/typeorm/query-builder/JoinAttribute.d.ts +91 -0
  1406. package/dist/vendor/typeorm/query-builder/JoinAttribute.js +163 -0
  1407. package/dist/vendor/typeorm/query-builder/JoinAttribute.js.map +1 -0
  1408. package/dist/vendor/typeorm/query-builder/JoinOptions.d.ts +3 -0
  1409. package/dist/vendor/typeorm/query-builder/JoinOptions.js +3 -0
  1410. package/dist/vendor/typeorm/query-builder/JoinOptions.js.map +1 -0
  1411. package/dist/vendor/typeorm/query-builder/NotBrackets.d.ts +8 -0
  1412. package/dist/vendor/typeorm/query-builder/NotBrackets.js +16 -0
  1413. package/dist/vendor/typeorm/query-builder/NotBrackets.js.map +1 -0
  1414. package/dist/vendor/typeorm/query-builder/QueryBuilder.d.ts +327 -0
  1415. package/dist/vendor/typeorm/query-builder/QueryBuilder.js +1217 -0
  1416. package/dist/vendor/typeorm/query-builder/QueryBuilder.js.map +1 -0
  1417. package/dist/vendor/typeorm/query-builder/QueryBuilderCte.d.ts +17 -0
  1418. package/dist/vendor/typeorm/query-builder/QueryBuilderCte.js +3 -0
  1419. package/dist/vendor/typeorm/query-builder/QueryBuilderCte.js.map +1 -0
  1420. package/dist/vendor/typeorm/query-builder/QueryBuilderUtils.d.ts +12 -0
  1421. package/dist/vendor/typeorm/query-builder/QueryBuilderUtils.js +33 -0
  1422. package/dist/vendor/typeorm/query-builder/QueryBuilderUtils.js.map +1 -0
  1423. package/dist/vendor/typeorm/query-builder/QueryExpressionMap.d.ts +319 -0
  1424. package/dist/vendor/typeorm/query-builder/QueryExpressionMap.js +325 -0
  1425. package/dist/vendor/typeorm/query-builder/QueryExpressionMap.js.map +1 -0
  1426. package/dist/vendor/typeorm/query-builder/QueryPartialEntity.d.ts +15 -0
  1427. package/dist/vendor/typeorm/query-builder/QueryPartialEntity.js +3 -0
  1428. package/dist/vendor/typeorm/query-builder/QueryPartialEntity.js.map +1 -0
  1429. package/dist/vendor/typeorm/query-builder/RelationIdLoader.d.ts +71 -0
  1430. package/dist/vendor/typeorm/query-builder/RelationIdLoader.js +516 -0
  1431. package/dist/vendor/typeorm/query-builder/RelationIdLoader.js.map +1 -0
  1432. package/dist/vendor/typeorm/query-builder/RelationLoader.d.ts +103 -0
  1433. package/dist/vendor/typeorm/query-builder/RelationLoader.js +342 -0
  1434. package/dist/vendor/typeorm/query-builder/RelationLoader.js.map +1 -0
  1435. package/dist/vendor/typeorm/query-builder/RelationQueryBuilder.d.ts +70 -0
  1436. package/dist/vendor/typeorm/query-builder/RelationQueryBuilder.js +155 -0
  1437. package/dist/vendor/typeorm/query-builder/RelationQueryBuilder.js.map +1 -0
  1438. package/dist/vendor/typeorm/query-builder/RelationRemover.d.ts +18 -0
  1439. package/dist/vendor/typeorm/query-builder/RelationRemover.js +144 -0
  1440. package/dist/vendor/typeorm/query-builder/RelationRemover.js.map +1 -0
  1441. package/dist/vendor/typeorm/query-builder/RelationUpdater.d.ts +18 -0
  1442. package/dist/vendor/typeorm/query-builder/RelationUpdater.js +153 -0
  1443. package/dist/vendor/typeorm/query-builder/RelationUpdater.js.map +1 -0
  1444. package/dist/vendor/typeorm/query-builder/ReturningOption.d.ts +4 -0
  1445. package/dist/vendor/typeorm/query-builder/ReturningOption.js +3 -0
  1446. package/dist/vendor/typeorm/query-builder/ReturningOption.js.map +1 -0
  1447. package/dist/vendor/typeorm/query-builder/ReturningResultsEntityUpdator.d.ts +36 -0
  1448. package/dist/vendor/typeorm/query-builder/ReturningResultsEntityUpdator.js +181 -0
  1449. package/dist/vendor/typeorm/query-builder/ReturningResultsEntityUpdator.js.map +1 -0
  1450. package/dist/vendor/typeorm/query-builder/SelectQuery.d.ts +5 -0
  1451. package/dist/vendor/typeorm/query-builder/SelectQuery.js +3 -0
  1452. package/dist/vendor/typeorm/query-builder/SelectQuery.js.map +1 -0
  1453. package/dist/vendor/typeorm/query-builder/SelectQueryBuilder.d.ts +765 -0
  1454. package/dist/vendor/typeorm/query-builder/SelectQueryBuilder.js +2803 -0
  1455. package/dist/vendor/typeorm/query-builder/SelectQueryBuilder.js.map +1 -0
  1456. package/dist/vendor/typeorm/query-builder/SelectQueryBuilderOption.d.ts +1 -0
  1457. package/dist/vendor/typeorm/query-builder/SelectQueryBuilderOption.js +3 -0
  1458. package/dist/vendor/typeorm/query-builder/SelectQueryBuilderOption.js.map +1 -0
  1459. package/dist/vendor/typeorm/query-builder/SoftDeleteQueryBuilder.d.ts +166 -0
  1460. package/dist/vendor/typeorm/query-builder/SoftDeleteQueryBuilder.js +409 -0
  1461. package/dist/vendor/typeorm/query-builder/SoftDeleteQueryBuilder.js.map +1 -0
  1462. package/dist/vendor/typeorm/query-builder/UpdateQueryBuilder.d.ts +170 -0
  1463. package/dist/vendor/typeorm/query-builder/UpdateQueryBuilder.js +535 -0
  1464. package/dist/vendor/typeorm/query-builder/UpdateQueryBuilder.js.map +1 -0
  1465. package/dist/vendor/typeorm/query-builder/WhereClause.d.ts +16 -0
  1466. package/dist/vendor/typeorm/query-builder/WhereClause.js +3 -0
  1467. package/dist/vendor/typeorm/query-builder/WhereClause.js.map +1 -0
  1468. package/dist/vendor/typeorm/query-builder/WhereExpressionBuilder.d.ts +121 -0
  1469. package/dist/vendor/typeorm/query-builder/WhereExpressionBuilder.js +3 -0
  1470. package/dist/vendor/typeorm/query-builder/WhereExpressionBuilder.js.map +1 -0
  1471. package/dist/vendor/typeorm/query-builder/index.d.ts +4 -0
  1472. package/dist/vendor/typeorm/query-builder/index.js +22 -0
  1473. package/dist/vendor/typeorm/query-builder/index.js.map +1 -0
  1474. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdAttribute.d.ts +64 -0
  1475. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdAttribute.js +87 -0
  1476. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdAttribute.js.map +1 -0
  1477. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdLoadResult.d.ts +5 -0
  1478. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdLoadResult.js +3 -0
  1479. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdLoadResult.js.map +1 -0
  1480. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdLoader.d.ts +12 -0
  1481. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdLoader.js +284 -0
  1482. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdLoader.js.map +1 -0
  1483. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.d.ts +7 -0
  1484. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js +54 -0
  1485. package/dist/vendor/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js.map +1 -0
  1486. package/dist/vendor/typeorm/query-builder/result/DeleteResult.d.ts +16 -0
  1487. package/dist/vendor/typeorm/query-builder/result/DeleteResult.js +16 -0
  1488. package/dist/vendor/typeorm/query-builder/result/DeleteResult.js.map +1 -0
  1489. package/dist/vendor/typeorm/query-builder/result/InsertResult.d.ts +22 -0
  1490. package/dist/vendor/typeorm/query-builder/result/InsertResult.js +27 -0
  1491. package/dist/vendor/typeorm/query-builder/result/InsertResult.js.map +1 -0
  1492. package/dist/vendor/typeorm/query-builder/result/UpdateResult.d.ts +26 -0
  1493. package/dist/vendor/typeorm/query-builder/result/UpdateResult.js +28 -0
  1494. package/dist/vendor/typeorm/query-builder/result/UpdateResult.js.map +1 -0
  1495. package/dist/vendor/typeorm/query-builder/transformer/DocumentToEntityTransformer.d.ts +11 -0
  1496. package/dist/vendor/typeorm/query-builder/transformer/DocumentToEntityTransformer.js +109 -0
  1497. package/dist/vendor/typeorm/query-builder/transformer/DocumentToEntityTransformer.js.map +1 -0
  1498. package/dist/vendor/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.d.ts +12 -0
  1499. package/dist/vendor/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js +120 -0
  1500. package/dist/vendor/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js.map +1 -0
  1501. package/dist/vendor/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.d.ts +19 -0
  1502. package/dist/vendor/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.js +96 -0
  1503. package/dist/vendor/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.js.map +1 -0
  1504. package/dist/vendor/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.d.ts +81 -0
  1505. package/dist/vendor/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.js +450 -0
  1506. package/dist/vendor/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -0
  1507. package/dist/vendor/typeorm/query-runner/BaseQueryRunner.d.ts +318 -0
  1508. package/dist/vendor/typeorm/query-runner/BaseQueryRunner.js +543 -0
  1509. package/dist/vendor/typeorm/query-runner/BaseQueryRunner.js.map +1 -0
  1510. package/dist/vendor/typeorm/query-runner/QueryLock.d.ts +4 -0
  1511. package/dist/vendor/typeorm/query-runner/QueryLock.js +30 -0
  1512. package/dist/vendor/typeorm/query-runner/QueryLock.js.map +1 -0
  1513. package/dist/vendor/typeorm/query-runner/QueryResult.d.ts +17 -0
  1514. package/dist/vendor/typeorm/query-runner/QueryResult.js +16 -0
  1515. package/dist/vendor/typeorm/query-runner/QueryResult.js.map +1 -0
  1516. package/dist/vendor/typeorm/query-runner/QueryRunner.d.ts +380 -0
  1517. package/dist/vendor/typeorm/query-runner/QueryRunner.js +3 -0
  1518. package/dist/vendor/typeorm/query-runner/QueryRunner.js.map +1 -0
  1519. package/dist/vendor/typeorm/repository/BaseEntity.d.ts +387 -0
  1520. package/dist/vendor/typeorm/repository/BaseEntity.js +387 -0
  1521. package/dist/vendor/typeorm/repository/BaseEntity.js.map +1 -0
  1522. package/dist/vendor/typeorm/repository/EntityId.d.ts +2 -0
  1523. package/dist/vendor/typeorm/repository/EntityId.js +3 -0
  1524. package/dist/vendor/typeorm/repository/EntityId.js.map +1 -0
  1525. package/dist/vendor/typeorm/repository/FindTreesOptions.d.ts +9 -0
  1526. package/dist/vendor/typeorm/repository/FindTreesOptions.js +3 -0
  1527. package/dist/vendor/typeorm/repository/FindTreesOptions.js.map +1 -0
  1528. package/dist/vendor/typeorm/repository/MongoRepository.d.ts +313 -0
  1529. package/dist/vendor/typeorm/repository/MongoRepository.js +389 -0
  1530. package/dist/vendor/typeorm/repository/MongoRepository.js.map +1 -0
  1531. package/dist/vendor/typeorm/repository/RemoveOptions.d.ts +27 -0
  1532. package/dist/vendor/typeorm/repository/RemoveOptions.js +3 -0
  1533. package/dist/vendor/typeorm/repository/RemoveOptions.js.map +1 -0
  1534. package/dist/vendor/typeorm/repository/Repository.d.ts +409 -0
  1535. package/dist/vendor/typeorm/repository/Repository.js +442 -0
  1536. package/dist/vendor/typeorm/repository/Repository.js.map +1 -0
  1537. package/dist/vendor/typeorm/repository/SaveOptions.d.ts +35 -0
  1538. package/dist/vendor/typeorm/repository/SaveOptions.js +3 -0
  1539. package/dist/vendor/typeorm/repository/SaveOptions.js.map +1 -0
  1540. package/dist/vendor/typeorm/repository/TreeRepository.d.ts +79 -0
  1541. package/dist/vendor/typeorm/repository/TreeRepository.js +282 -0
  1542. package/dist/vendor/typeorm/repository/TreeRepository.js.map +1 -0
  1543. package/dist/vendor/typeorm/repository/UpdateOptions.d.ts +11 -0
  1544. package/dist/vendor/typeorm/repository/UpdateOptions.js +3 -0
  1545. package/dist/vendor/typeorm/repository/UpdateOptions.js.map +1 -0
  1546. package/dist/vendor/typeorm/repository/UpsertOptions.d.ts +26 -0
  1547. package/dist/vendor/typeorm/repository/UpsertOptions.js +3 -0
  1548. package/dist/vendor/typeorm/repository/UpsertOptions.js.map +1 -0
  1549. package/dist/vendor/typeorm/schema-builder/MongoSchemaBuilder.d.ts +29 -0
  1550. package/dist/vendor/typeorm/schema-builder/MongoSchemaBuilder.js +65 -0
  1551. package/dist/vendor/typeorm/schema-builder/MongoSchemaBuilder.js.map +1 -0
  1552. package/dist/vendor/typeorm/schema-builder/RdbmsSchemaBuilder.d.ts +174 -0
  1553. package/dist/vendor/typeorm/schema-builder/RdbmsSchemaBuilder.js +944 -0
  1554. package/dist/vendor/typeorm/schema-builder/RdbmsSchemaBuilder.js.map +1 -0
  1555. package/dist/vendor/typeorm/schema-builder/SchemaBuilder.d.ts +14 -0
  1556. package/dist/vendor/typeorm/schema-builder/SchemaBuilder.js +3 -0
  1557. package/dist/vendor/typeorm/schema-builder/SchemaBuilder.js.map +1 -0
  1558. package/dist/vendor/typeorm/schema-builder/options/TableCheckOptions.d.ts +17 -0
  1559. package/dist/vendor/typeorm/schema-builder/options/TableCheckOptions.js +3 -0
  1560. package/dist/vendor/typeorm/schema-builder/options/TableCheckOptions.js.map +1 -0
  1561. package/dist/vendor/typeorm/schema-builder/options/TableColumnOptions.d.ts +112 -0
  1562. package/dist/vendor/typeorm/schema-builder/options/TableColumnOptions.js +3 -0
  1563. package/dist/vendor/typeorm/schema-builder/options/TableColumnOptions.js.map +1 -0
  1564. package/dist/vendor/typeorm/schema-builder/options/TableExclusionOptions.d.ts +18 -0
  1565. package/dist/vendor/typeorm/schema-builder/options/TableExclusionOptions.js +3 -0
  1566. package/dist/vendor/typeorm/schema-builder/options/TableExclusionOptions.js.map +1 -0
  1567. package/dist/vendor/typeorm/schema-builder/options/TableForeignKeyOptions.d.ts +44 -0
  1568. package/dist/vendor/typeorm/schema-builder/options/TableForeignKeyOptions.js +3 -0
  1569. package/dist/vendor/typeorm/schema-builder/options/TableForeignKeyOptions.js.map +1 -0
  1570. package/dist/vendor/typeorm/schema-builder/options/TableIndexOptions.d.ts +56 -0
  1571. package/dist/vendor/typeorm/schema-builder/options/TableIndexOptions.js +3 -0
  1572. package/dist/vendor/typeorm/schema-builder/options/TableIndexOptions.js.map +1 -0
  1573. package/dist/vendor/typeorm/schema-builder/options/TableIndexTypes.d.ts +1 -0
  1574. package/dist/vendor/typeorm/schema-builder/options/TableIndexTypes.js +3 -0
  1575. package/dist/vendor/typeorm/schema-builder/options/TableIndexTypes.js.map +1 -0
  1576. package/dist/vendor/typeorm/schema-builder/options/TableOptions.d.ts +65 -0
  1577. package/dist/vendor/typeorm/schema-builder/options/TableOptions.js +3 -0
  1578. package/dist/vendor/typeorm/schema-builder/options/TableOptions.js.map +1 -0
  1579. package/dist/vendor/typeorm/schema-builder/options/TableUniqueOptions.d.ts +18 -0
  1580. package/dist/vendor/typeorm/schema-builder/options/TableUniqueOptions.js +3 -0
  1581. package/dist/vendor/typeorm/schema-builder/options/TableUniqueOptions.js.map +1 -0
  1582. package/dist/vendor/typeorm/schema-builder/options/ViewOptions.d.ts +27 -0
  1583. package/dist/vendor/typeorm/schema-builder/options/ViewOptions.js +3 -0
  1584. package/dist/vendor/typeorm/schema-builder/options/ViewOptions.js.map +1 -0
  1585. package/dist/vendor/typeorm/schema-builder/table/Table.d.ts +183 -0
  1586. package/dist/vendor/typeorm/schema-builder/table/Table.js +332 -0
  1587. package/dist/vendor/typeorm/schema-builder/table/Table.js.map +1 -0
  1588. package/dist/vendor/typeorm/schema-builder/table/TableCheck.d.ts +31 -0
  1589. package/dist/vendor/typeorm/schema-builder/table/TableCheck.js +50 -0
  1590. package/dist/vendor/typeorm/schema-builder/table/TableCheck.js.map +1 -0
  1591. package/dist/vendor/typeorm/schema-builder/table/TableColumn.d.ts +116 -0
  1592. package/dist/vendor/typeorm/schema-builder/table/TableColumn.js +107 -0
  1593. package/dist/vendor/typeorm/schema-builder/table/TableColumn.js.map +1 -0
  1594. package/dist/vendor/typeorm/schema-builder/table/TableExclusion.d.ts +32 -0
  1595. package/dist/vendor/typeorm/schema-builder/table/TableExclusion.js +47 -0
  1596. package/dist/vendor/typeorm/schema-builder/table/TableExclusion.js.map +1 -0
  1597. package/dist/vendor/typeorm/schema-builder/table/TableForeignKey.d.ts +60 -0
  1598. package/dist/vendor/typeorm/schema-builder/table/TableForeignKey.js +74 -0
  1599. package/dist/vendor/typeorm/schema-builder/table/TableForeignKey.js.map +1 -0
  1600. package/dist/vendor/typeorm/schema-builder/table/TableIndex.d.ts +70 -0
  1601. package/dist/vendor/typeorm/schema-builder/table/TableIndex.js +72 -0
  1602. package/dist/vendor/typeorm/schema-builder/table/TableIndex.js.map +1 -0
  1603. package/dist/vendor/typeorm/schema-builder/table/TableUnique.d.ts +32 -0
  1604. package/dist/vendor/typeorm/schema-builder/table/TableUnique.js +51 -0
  1605. package/dist/vendor/typeorm/schema-builder/table/TableUnique.js.map +1 -0
  1606. package/dist/vendor/typeorm/schema-builder/util/TableUtils.d.ts +6 -0
  1607. package/dist/vendor/typeorm/schema-builder/util/TableUtils.js +38 -0
  1608. package/dist/vendor/typeorm/schema-builder/util/TableUtils.js.map +1 -0
  1609. package/dist/vendor/typeorm/schema-builder/util/ViewUtils.d.ts +10 -0
  1610. package/dist/vendor/typeorm/schema-builder/util/ViewUtils.js +29 -0
  1611. package/dist/vendor/typeorm/schema-builder/util/ViewUtils.js.map +1 -0
  1612. package/dist/vendor/typeorm/schema-builder/view/View.d.ts +60 -0
  1613. package/dist/vendor/typeorm/schema-builder/view/View.js +77 -0
  1614. package/dist/vendor/typeorm/schema-builder/view/View.js.map +1 -0
  1615. package/dist/vendor/typeorm/subscriber/Broadcaster.d.ts +263 -0
  1616. package/dist/vendor/typeorm/subscriber/Broadcaster.js +761 -0
  1617. package/dist/vendor/typeorm/subscriber/Broadcaster.js.map +1 -0
  1618. package/dist/vendor/typeorm/subscriber/BroadcasterResult.d.ts +17 -0
  1619. package/dist/vendor/typeorm/subscriber/BroadcasterResult.js +29 -0
  1620. package/dist/vendor/typeorm/subscriber/BroadcasterResult.js.map +1 -0
  1621. package/dist/vendor/typeorm/subscriber/EntitySubscriberInterface.d.ts +101 -0
  1622. package/dist/vendor/typeorm/subscriber/EntitySubscriberInterface.js +3 -0
  1623. package/dist/vendor/typeorm/subscriber/EntitySubscriberInterface.js.map +1 -0
  1624. package/dist/vendor/typeorm/subscriber/event/BaseEvent.d.ts +28 -0
  1625. package/dist/vendor/typeorm/subscriber/event/BaseEvent.js +3 -0
  1626. package/dist/vendor/typeorm/subscriber/event/BaseEvent.js.map +1 -0
  1627. package/dist/vendor/typeorm/subscriber/event/InsertEvent.d.ts +20 -0
  1628. package/dist/vendor/typeorm/subscriber/event/InsertEvent.js +3 -0
  1629. package/dist/vendor/typeorm/subscriber/event/InsertEvent.js.map +1 -0
  1630. package/dist/vendor/typeorm/subscriber/event/LoadEvent.d.ts +15 -0
  1631. package/dist/vendor/typeorm/subscriber/event/LoadEvent.js +3 -0
  1632. package/dist/vendor/typeorm/subscriber/event/LoadEvent.js.map +1 -0
  1633. package/dist/vendor/typeorm/subscriber/event/QueryEvent.d.ts +35 -0
  1634. package/dist/vendor/typeorm/subscriber/event/QueryEvent.js +3 -0
  1635. package/dist/vendor/typeorm/subscriber/event/QueryEvent.js.map +1 -0
  1636. package/dist/vendor/typeorm/subscriber/event/RecoverEvent.d.ts +6 -0
  1637. package/dist/vendor/typeorm/subscriber/event/RecoverEvent.js +3 -0
  1638. package/dist/vendor/typeorm/subscriber/event/RecoverEvent.js.map +1 -0
  1639. package/dist/vendor/typeorm/subscriber/event/RemoveEvent.d.ts +24 -0
  1640. package/dist/vendor/typeorm/subscriber/event/RemoveEvent.js +3 -0
  1641. package/dist/vendor/typeorm/subscriber/event/RemoveEvent.js.map +1 -0
  1642. package/dist/vendor/typeorm/subscriber/event/SoftRemoveEvent.d.ts +6 -0
  1643. package/dist/vendor/typeorm/subscriber/event/SoftRemoveEvent.js +3 -0
  1644. package/dist/vendor/typeorm/subscriber/event/SoftRemoveEvent.js.map +1 -0
  1645. package/dist/vendor/typeorm/subscriber/event/TransactionCommitEvent.d.ts +6 -0
  1646. package/dist/vendor/typeorm/subscriber/event/TransactionCommitEvent.js +3 -0
  1647. package/dist/vendor/typeorm/subscriber/event/TransactionCommitEvent.js.map +1 -0
  1648. package/dist/vendor/typeorm/subscriber/event/TransactionRollbackEvent.d.ts +6 -0
  1649. package/dist/vendor/typeorm/subscriber/event/TransactionRollbackEvent.js +3 -0
  1650. package/dist/vendor/typeorm/subscriber/event/TransactionRollbackEvent.js.map +1 -0
  1651. package/dist/vendor/typeorm/subscriber/event/TransactionStartEvent.d.ts +6 -0
  1652. package/dist/vendor/typeorm/subscriber/event/TransactionStartEvent.js +3 -0
  1653. package/dist/vendor/typeorm/subscriber/event/TransactionStartEvent.js.map +1 -0
  1654. package/dist/vendor/typeorm/subscriber/event/UpdateEvent.d.ts +34 -0
  1655. package/dist/vendor/typeorm/subscriber/event/UpdateEvent.js +3 -0
  1656. package/dist/vendor/typeorm/subscriber/event/UpdateEvent.js.map +1 -0
  1657. package/dist/vendor/typeorm/util/ApplyValueTransformers.d.ts +5 -0
  1658. package/dist/vendor/typeorm/util/ApplyValueTransformers.js +29 -0
  1659. package/dist/vendor/typeorm/util/ApplyValueTransformers.js.map +1 -0
  1660. package/dist/vendor/typeorm/util/DateUtils.d.ts +110 -0
  1661. package/dist/vendor/typeorm/util/DateUtils.js +299 -0
  1662. package/dist/vendor/typeorm/util/DateUtils.js.map +1 -0
  1663. package/dist/vendor/typeorm/util/DepGraph.d.ts +90 -0
  1664. package/dist/vendor/typeorm/util/DepGraph.js +255 -0
  1665. package/dist/vendor/typeorm/util/DepGraph.js.map +1 -0
  1666. package/dist/vendor/typeorm/util/DirectoryExportedClassesLoader.d.ts +9 -0
  1667. package/dist/vendor/typeorm/util/DirectoryExportedClassesLoader.js +60 -0
  1668. package/dist/vendor/typeorm/util/DirectoryExportedClassesLoader.js.map +1 -0
  1669. package/dist/vendor/typeorm/util/ImportUtils.d.ts +5 -0
  1670. package/dist/vendor/typeorm/util/ImportUtils.js +107 -0
  1671. package/dist/vendor/typeorm/util/ImportUtils.js.map +1 -0
  1672. package/dist/vendor/typeorm/util/InstanceChecker.d.ts +61 -0
  1673. package/dist/vendor/typeorm/util/InstanceChecker.js +103 -0
  1674. package/dist/vendor/typeorm/util/InstanceChecker.js.map +1 -0
  1675. package/dist/vendor/typeorm/util/ObjectUtils.d.ts +54 -0
  1676. package/dist/vendor/typeorm/util/ObjectUtils.js +55 -0
  1677. package/dist/vendor/typeorm/util/ObjectUtils.js.map +1 -0
  1678. package/dist/vendor/typeorm/util/OrmUtils.d.ts +133 -0
  1679. package/dist/vendor/typeorm/util/OrmUtils.js +572 -0
  1680. package/dist/vendor/typeorm/util/OrmUtils.js.map +1 -0
  1681. package/dist/vendor/typeorm/util/PathUtils.d.ts +18 -0
  1682. package/dist/vendor/typeorm/util/PathUtils.js +40 -0
  1683. package/dist/vendor/typeorm/util/PathUtils.js.map +1 -0
  1684. package/dist/vendor/typeorm/util/RandomGenerator.d.ts +17 -0
  1685. package/dist/vendor/typeorm/util/RandomGenerator.js +182 -0
  1686. package/dist/vendor/typeorm/util/RandomGenerator.js.map +1 -0
  1687. package/dist/vendor/typeorm/util/SqlTagUtils.d.ts +18 -0
  1688. package/dist/vendor/typeorm/util/SqlTagUtils.js +49 -0
  1689. package/dist/vendor/typeorm/util/SqlTagUtils.js.map +1 -0
  1690. package/dist/vendor/typeorm/util/StringUtils.d.ts +67 -0
  1691. package/dist/vendor/typeorm/util/StringUtils.js +105 -0
  1692. package/dist/vendor/typeorm/util/StringUtils.js.map +1 -0
  1693. package/dist/vendor/typeorm/util/TreeRepositoryUtils.d.ts +23 -0
  1694. package/dist/vendor/typeorm/util/TreeRepositoryUtils.js +66 -0
  1695. package/dist/vendor/typeorm/util/TreeRepositoryUtils.js.map +1 -0
  1696. package/dist/vendor/typeorm/util/Uint8ArrayUtils.d.ts +3 -0
  1697. package/dist/vendor/typeorm/util/Uint8ArrayUtils.js +45 -0
  1698. package/dist/vendor/typeorm/util/Uint8ArrayUtils.js.map +1 -0
  1699. package/dist/vendor/typeorm/util/VersionUtils.d.ts +3 -0
  1700. package/dist/vendor/typeorm/util/VersionUtils.js +33 -0
  1701. package/dist/vendor/typeorm/util/VersionUtils.js.map +1 -0
  1702. package/dist/vendor/typeorm/util/escapeRegExp.d.ts +1 -0
  1703. package/dist/vendor/typeorm/util/escapeRegExp.js +9 -0
  1704. package/dist/vendor/typeorm/util/escapeRegExp.js.map +1 -0
  1705. package/package.json +114 -8
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SapQueryRunner.js","sourceRoot":"","sources":["../../../../../vendor/typeorm/driver/sap/SapQueryRunner.ts"],"names":[],"mappings":"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","sourcesContent":["import { promisify } from \"node:util\"\nimport type { ObjectLiteral } from \"../../common/ObjectLiteral\"\nimport { QueryFailedError, TypeORMError } from \"../../error\"\nimport { QueryRunnerAlreadyReleasedError } from \"../../error/QueryRunnerAlreadyReleasedError\"\nimport { TransactionAlreadyStartedError } from \"../../error/TransactionAlreadyStartedError\"\nimport { TransactionNotStartedError } from \"../../error/TransactionNotStartedError\"\nimport type { ReadStream } from \"../../platform/PlatformTools\"\nimport { BaseQueryRunner } from \"../../query-runner/BaseQueryRunner\"\nimport { QueryLock } from \"../../query-runner/QueryLock\"\nimport { QueryResult } from \"../../query-runner/QueryResult\"\nimport type { QueryRunner } from \"../../query-runner/QueryRunner\"\nimport type { TableIndexOptions } from \"../../schema-builder/options/TableIndexOptions\"\nimport { Table } from \"../../schema-builder/table/Table\"\nimport { TableCheck } from \"../../schema-builder/table/TableCheck\"\nimport { TableColumn } from \"../../schema-builder/table/TableColumn\"\nimport type { TableExclusion } from \"../../schema-builder/table/TableExclusion\"\nimport { TableForeignKey } from \"../../schema-builder/table/TableForeignKey\"\nimport { TableIndex } from \"../../schema-builder/table/TableIndex\"\nimport { TableUnique } from \"../../schema-builder/table/TableUnique\"\nimport { View } from \"../../schema-builder/view/View\"\nimport { Broadcaster } from \"../../subscriber/Broadcaster\"\nimport { BroadcasterResult } from \"../../subscriber/BroadcasterResult\"\nimport { InstanceChecker } from \"../../util/InstanceChecker\"\nimport { OrmUtils } from \"../../util/OrmUtils\"\nimport { Query } from \"../Query\"\nimport type { ColumnType } from \"../types/ColumnTypes\"\nimport type { IsolationLevel } from \"../types/IsolationLevel\"\nimport { validateIsolationLevel } from \"../validate-isolation-level\"\nimport { MetadataTableType } from \"../types/MetadataTableType\"\nimport { NamedPlaceholdersNotSupportedError } from \"../../error/NamedPlaceholdersNotSupportedError\"\nimport type { ReplicationMode } from \"../types/ReplicationMode\"\nimport type { SapDriver } from \"./SapDriver\"\n\n/**\n * Runs queries on a single SQL Server database connection.\n */\nexport class SapQueryRunner extends BaseQueryRunner implements QueryRunner {\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Database driver used by connection.\n */\n driver: SapDriver\n\n // -------------------------------------------------------------------------\n // Protected Properties\n // -------------------------------------------------------------------------\n\n /**\n * Promise used to obtain a database connection from a pool for a first time.\n */\n protected databaseConnectionPromise: Promise<any>\n\n private lock: QueryLock = new QueryLock()\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: SapDriver, mode: ReplicationMode) {\n super()\n this.driver = driver\n this.dataSource = driver.dataSource\n this.broadcaster = new Broadcaster(this)\n this.mode = mode\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates/uses database connection from the connection pool to perform further operations.\n * Returns obtained database connection.\n */\n async connect(): Promise<any> {\n if (this.databaseConnection) return this.databaseConnection\n\n this.databaseConnection = await this.driver.obtainMasterConnection()\n\n return this.databaseConnection\n }\n\n /**\n * Releases used database connection.\n * You cannot use query runner methods once its released.\n */\n async release(): Promise<void> {\n this.isReleased = true\n\n if (this.databaseConnection) {\n // return the connection back to the pool\n try {\n await promisify(this.databaseConnection.disconnect).call(\n this.databaseConnection,\n )\n } catch (error) {\n this.driver.poolErrorHandler(error)\n throw error\n }\n }\n }\n\n /**\n * Starts transaction.\n *\n * @param isolationLevel\n */\n async startTransaction(isolationLevel?: IsolationLevel): Promise<void> {\n isolationLevel ??= this.dataSource.options.isolationLevel\n\n validateIsolationLevel(\n this.driver.supportedIsolationLevels,\n isolationLevel,\n )\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError()\n\n if (\n this.isTransactionActive &&\n this.driver.transactionSupport === \"simple\"\n )\n throw new TransactionAlreadyStartedError()\n\n await this.broadcaster.broadcast(\"BeforeTransactionStart\")\n\n this.isTransactionActive = true\n\n /**\n * Disable AUTOCOMMIT while running transaction.\n * Otherwise, COMMIT/ROLLBACK doesn't work in autocommit mode.\n */\n await this.setAutoCommit({ status: \"off\" })\n\n if (isolationLevel) {\n await this.query(\n `SET TRANSACTION ISOLATION LEVEL ${isolationLevel || \"\"}`,\n )\n }\n\n await this.broadcaster.broadcast(\"AfterTransactionStart\")\n }\n\n /**\n * Commits transaction.\n * Error will be thrown if transaction was not started.\n */\n async commitTransaction(): Promise<void> {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError()\n\n if (!this.isTransactionActive) throw new TransactionNotStartedError()\n\n await this.broadcaster.broadcast(\"BeforeTransactionCommit\")\n\n await this.query(\"COMMIT\")\n this.isTransactionActive = false\n\n await this.setAutoCommit({ status: \"on\" })\n await this.broadcaster.broadcast(\"AfterTransactionCommit\")\n }\n\n /**\n * Rollbacks transaction.\n * Error will be thrown if transaction was not started.\n */\n async rollbackTransaction(): Promise<void> {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError()\n\n if (!this.isTransactionActive) throw new TransactionNotStartedError()\n\n await this.broadcaster.broadcast(\"BeforeTransactionRollback\")\n\n await this.query(\"ROLLBACK\")\n this.isTransactionActive = false\n\n await this.setAutoCommit({ status: \"on\" })\n await this.broadcaster.broadcast(\"AfterTransactionRollback\")\n }\n\n /**\n * Switches AUTOCOMMIT mode on/off\n *\n * @see https://help.sap.com/docs/HANA_SERVICE_CF/7c78579ce9b14a669c1f3295b0d8ca16/d538d11053bd4f3f847ec5ce817a3d4c.html?locale=en-US\n * @param options\n * @param options.status\n */\n async setAutoCommit(options: { status: \"on\" | \"off\" }) {\n const connection = await this.connect()\n connection.setAutoCommit(options.status === \"on\")\n\n const query = `SET TRANSACTION AUTOCOMMIT DDL ${options.status.toUpperCase()}`\n this.driver.dataSource.logger.logQuery(query, [], this)\n try {\n await promisify(connection.exec).call(connection, query)\n } catch (error) {\n throw new QueryFailedError(query, [], error)\n }\n }\n\n /**\n * Executes a given SQL query.\n *\n * @param query\n * @param parameters\n * @param useStructuredResult\n */\n async query(\n query: string,\n parameters?: any[] | ObjectLiteral,\n useStructuredResult = false,\n ): Promise<any> {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError()\n if (parameters && !Array.isArray(parameters))\n throw new NamedPlaceholdersNotSupportedError()\n\n const release = await this.lock.acquire()\n\n const databaseConnection = await this.connect()\n\n let statement: any\n const result = new QueryResult()\n\n this.driver.dataSource.logger.logQuery(query, parameters, this)\n await this.broadcaster.broadcast(\"BeforeQuery\", query, parameters)\n\n const broadcasterResult = new BroadcasterResult()\n\n try {\n const queryStartTime = Date.now()\n const isInsertQuery = query.startsWith(\"INSERT INTO\")\n\n if (parameters?.some(Array.isArray)) {\n statement = await promisify(databaseConnection.prepare).call(\n databaseConnection,\n query,\n )\n }\n\n let raw: any\n try {\n raw = statement\n ? await promisify(statement.exec).call(\n statement,\n parameters,\n )\n : await promisify(databaseConnection.exec).call(\n databaseConnection,\n query,\n parameters,\n {},\n )\n } catch (err) {\n throw new QueryFailedError(query, parameters, err)\n }\n\n // log slow queries if maxQueryExecution time is set\n const maxQueryExecutionTime =\n this.driver.dataSource.options.maxQueryExecutionTime\n const queryEndTime = Date.now()\n const queryExecutionTime = queryEndTime - queryStartTime\n\n this.broadcaster.broadcastAfterQueryEvent(\n broadcasterResult,\n query,\n parameters,\n true,\n queryExecutionTime,\n raw,\n undefined,\n )\n\n if (\n maxQueryExecutionTime &&\n queryExecutionTime > maxQueryExecutionTime\n ) {\n this.driver.dataSource.logger.logQuerySlow(\n queryExecutionTime,\n query,\n parameters,\n this,\n )\n }\n\n if (typeof raw === \"number\") {\n result.affected = raw\n } else if (Array.isArray(raw)) {\n result.records = raw\n }\n\n result.raw = raw\n\n if (isInsertQuery) {\n const lastIdQuery = `SELECT CURRENT_IDENTITY_VALUE() FROM \"SYS\".\"DUMMY\"`\n this.driver.dataSource.logger.logQuery(lastIdQuery, [], this)\n try {\n const identityValueResult: [\n { \"CURRENT_IDENTITY_VALUE()\": unknown },\n ] = await promisify(databaseConnection.exec).call(\n databaseConnection,\n lastIdQuery,\n )\n\n result.raw =\n identityValueResult[0][\"CURRENT_IDENTITY_VALUE()\"]\n result.records = identityValueResult\n } catch (error) {\n throw new QueryFailedError(lastIdQuery, [], error)\n }\n }\n } catch (err) {\n this.driver.dataSource.logger.logQueryError(\n err,\n query,\n parameters,\n this,\n )\n this.broadcaster.broadcastAfterQueryEvent(\n broadcasterResult,\n query,\n parameters,\n false,\n undefined,\n undefined,\n err,\n )\n throw err\n } finally {\n // Never forget to drop the statement we reserved\n if (statement?.drop) {\n await promisify(statement.drop).call(statement)\n }\n\n await broadcasterResult.wait()\n\n // Always release the lock.\n release()\n }\n\n if (useStructuredResult) {\n return result\n } else {\n return result.raw\n }\n }\n\n /**\n * Returns raw data stream.\n *\n * @param query\n * @param parameters\n * @param onEnd\n * @param onError\n */\n async stream(\n query: string,\n parameters?: any[],\n onEnd?: Function,\n onError?: Function,\n ): Promise<ReadStream> {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError()\n\n const release = await this.lock.acquire()\n let statement: any\n let resultSet: any\n\n const cleanup = async () => {\n const originalStatement = statement\n const originalResultSet = resultSet\n statement = null\n resultSet = null\n if (originalResultSet) {\n await promisify(originalResultSet.close).call(originalResultSet)\n }\n if (originalStatement) {\n await promisify(originalStatement.drop).call(originalStatement)\n }\n release()\n }\n\n try {\n const databaseConnection = await this.connect()\n this.driver.dataSource.logger.logQuery(query, parameters, this)\n\n statement = await promisify(databaseConnection.prepare).call(\n databaseConnection,\n query,\n )\n resultSet = await promisify(statement.executeQuery).call(\n statement,\n parameters,\n )\n\n const stream =\n this.driver.streamClient.createObjectStream(resultSet)\n\n if (onEnd) {\n stream.on(\"end\", onEnd)\n }\n stream.on(\"error\", (error: Error) => {\n this.driver.dataSource.logger.logQueryError(\n error,\n query,\n parameters,\n this,\n )\n onError?.(error)\n })\n stream.on(\"close\", cleanup)\n\n return stream\n } catch (error) {\n this.driver.dataSource.logger.logQueryError(\n error,\n query,\n parameters,\n this,\n )\n await cleanup()\n throw new QueryFailedError(query, parameters, error)\n }\n }\n\n /**\n * Returns all available database names including system databases.\n */\n async getDatabases(): Promise<string[]> {\n const results: ObjectLiteral[] = await this.query(\n `SELECT DATABASE_NAME FROM \"SYS\".\"M_DATABASES\"`,\n )\n return results.map((result) => result[\"DATABASE_NAME\"])\n }\n\n /**\n * Returns all available schema names including system schemas.\n * If database parameter specified, returns schemas of that database.\n *\n * @param database\n */\n async getSchemas(database?: string): Promise<string[]> {\n const query = database\n ? `SELECT * FROM \"${database}\".\"SYS\".\"SCHEMAS\"`\n : `SELECT * FROM \"SYS\".\"SCHEMAS\"`\n const results: ObjectLiteral[] = await this.query(query)\n return results.map((result) => result[\"SCHEMA_NAME\"])\n }\n\n /**\n * Checks if database with the given name exist.\n *\n * @param database\n */\n async hasDatabase(database: string): Promise<boolean> {\n const databases = await this.getDatabases()\n return databases.indexOf(database) !== -1\n }\n\n /**\n * Returns current database.\n */\n async getCurrentDatabase(): Promise<string> {\n const currentDBQuery: [{ dbName: string }] = await this.query(\n `SELECT \"DATABASE_NAME\" AS \"dbName\" FROM \"SYS\".\"M_DATABASE\"`,\n )\n\n return currentDBQuery[0].dbName\n }\n\n /**\n * Returns the database server version.\n */\n async getDatabaseAndVersion(): Promise<{\n database: string\n version: string\n }> {\n const currentDBQuery: [{ database: string; version: string }] =\n await this.query(\n `SELECT \"DATABASE_NAME\" AS \"database\", \"VERSION\" AS \"version\" FROM \"SYS\".\"M_DATABASE\"`,\n )\n\n return currentDBQuery[0]\n }\n\n /**\n * Checks if schema with the given name exist.\n *\n * @param schema\n */\n async hasSchema(schema: string): Promise<boolean> {\n const schemas = await this.getSchemas()\n return schemas.indexOf(schema) !== -1\n }\n\n /**\n * Returns current schema.\n */\n async getCurrentSchema(): Promise<string> {\n const currentSchemaQuery: [{ schemaName: string }] = await this.query(\n `SELECT CURRENT_SCHEMA AS \"schemaName\" FROM \"SYS\".\"DUMMY\"`,\n )\n\n return currentSchemaQuery[0].schemaName\n }\n\n /**\n * Checks if table with the given name exist in the database.\n *\n * @param tableOrName\n */\n async hasTable(tableOrName: Table | string): Promise<boolean> {\n const parsedTableName = this.driver.parseTableName(tableOrName)\n\n parsedTableName.schema ??= await this.getCurrentSchema()\n\n const sql = `SELECT COUNT(*) as \"hasTable\" FROM \"SYS\".\"TABLES\" WHERE \"SCHEMA_NAME\" = ? AND \"TABLE_NAME\" = ?`\n const result: [{ hasTable: number }] = await this.query(sql, [\n parsedTableName.schema,\n parsedTableName.tableName,\n ])\n\n return result[0].hasTable > 0\n }\n\n /**\n * Checks if column with the given name exist in the given table.\n *\n * @param tableOrName\n * @param columnName\n */\n async hasColumn(\n tableOrName: Table | string,\n columnName: string,\n ): Promise<boolean> {\n const parsedTableName = this.driver.parseTableName(tableOrName)\n\n parsedTableName.schema ??= await this.getCurrentSchema()\n\n const sql = `SELECT COUNT(*) as \"hasColumn\" FROM \"SYS\".\"TABLE_COLUMNS\" WHERE \"SCHEMA_NAME\" = ? AND \"TABLE_NAME\" = ? AND \"COLUMN_NAME\" = ?`\n const result: [{ hasColumn: number }] = await this.query(sql, [\n parsedTableName.schema,\n parsedTableName.tableName,\n columnName,\n ])\n\n return result[0].hasColumn > 0\n }\n\n /**\n * Creates a new database.\n *\n * @param database\n * @param ifNotExists\n */\n async createDatabase(\n database: string,\n ifNotExists?: boolean,\n ): Promise<void> {\n return Promise.resolve()\n }\n\n /**\n * Drops database.\n *\n * @param database\n * @param ifExists\n */\n async dropDatabase(database: string, ifExists?: boolean): Promise<void> {\n return Promise.resolve()\n }\n\n /**\n * Creates a new table schema.\n *\n * @param schemaPath\n * @param ifNotExists\n */\n async createSchema(\n schemaPath: string,\n ifNotExists?: boolean,\n ): Promise<void> {\n const schema =\n schemaPath.indexOf(\".\") === -1\n ? schemaPath\n : schemaPath.split(\".\")[1]\n const escapedSchema = this.driver.escape(schema)\n\n let exist = false\n if (ifNotExists) {\n const result = await this.query(\n `SELECT * FROM \"SYS\".\"SCHEMAS\" WHERE \"SCHEMA_NAME\" = ?`,\n [schema],\n )\n exist = !!result.length\n }\n if (!ifNotExists || (ifNotExists && !exist)) {\n const up = `CREATE SCHEMA ${escapedSchema}`\n const down = `DROP SCHEMA ${escapedSchema} CASCADE`\n await this.executeQueries(new Query(up), new Query(down))\n }\n }\n\n /**\n * Drops table schema\n *\n * @param schemaPath\n * @param ifExists\n * @param isCascade\n */\n async dropSchema(\n schemaPath: string,\n ifExists?: boolean,\n isCascade?: boolean,\n ): Promise<void> {\n const schema =\n schemaPath.indexOf(\".\") === -1\n ? schemaPath\n : schemaPath.split(\".\")[1]\n const escapedSchema = this.driver.escape(schema)\n let exist = false\n if (ifExists) {\n const result = await this.query(\n `SELECT * FROM \"SYS\".\"SCHEMAS\" WHERE \"SCHEMA_NAME\" = ?`,\n [schema],\n )\n exist = !!result.length\n }\n if (!ifExists || (ifExists && exist)) {\n const up = `DROP SCHEMA ${escapedSchema} ${isCascade ? \"CASCADE\" : \"\"}`\n const down = `CREATE SCHEMA ${escapedSchema}`\n await this.executeQueries(new Query(up), new Query(down))\n }\n }\n\n /**\n * Creates a new table.\n *\n * @param table\n * @param ifNotExists\n * @param createForeignKeys\n * @param createIndices\n */\n async createTable(\n table: Table,\n ifNotExists: boolean = false,\n createForeignKeys: boolean = true,\n createIndices: boolean = true,\n ): Promise<void> {\n if (ifNotExists) {\n const isTableExist = await this.hasTable(table)\n if (isTableExist) return Promise.resolve()\n }\n const upQueries: Query[] = []\n const downQueries: Query[] = []\n\n upQueries.push(this.createTableSql(table, createForeignKeys))\n downQueries.push(this.dropTableSql(table))\n\n // if createForeignKeys is true, we must drop created foreign keys in down query.\n // createTable does not need separate method to create foreign keys, because it create fk's in the same query with table creation.\n if (createForeignKeys)\n table.foreignKeys.forEach((foreignKey) =>\n downQueries.push(this.dropForeignKeySql(table, foreignKey)),\n )\n\n if (createIndices) {\n table.indices.forEach((index) => {\n // new index may be passed without name. In this case we generate index name manually.\n index.name ??= this.dataSource.namingStrategy.indexName(\n table,\n index.columnNames,\n index.where,\n )\n upQueries.push(this.createIndexSql(table, index))\n downQueries.push(this.dropIndexSql(table, index))\n })\n }\n\n // if table has generated column, we must add the expression to the metadata table\n const generatedColumns = table.columns.filter(\n (column) => column.asExpression,\n )\n\n if (generatedColumns.length > 0) {\n const parsedTableName = this.driver.parseTableName(table)\n parsedTableName.schema ??= await this.getCurrentSchema()\n\n for (const column of generatedColumns) {\n const insertQuery = this.insertTypeormMetadataSql({\n schema: parsedTableName.schema,\n table: parsedTableName.tableName,\n type: MetadataTableType.GENERATED_COLUMN,\n name: column.name,\n value: column.asExpression,\n })\n\n const deleteQuery = this.deleteTypeormMetadataSql({\n schema: parsedTableName.schema,\n table: parsedTableName.tableName,\n type: MetadataTableType.GENERATED_COLUMN,\n name: column.name,\n })\n\n upQueries.push(insertQuery)\n downQueries.push(deleteQuery)\n }\n }\n\n await this.executeQueries(upQueries, downQueries)\n }\n\n /**\n * Drops the table.\n *\n * @param tableOrName\n * @param ifExists\n * @param dropForeignKeys\n * @param dropIndices\n */\n async dropTable(\n tableOrName: Table | string,\n ifExists?: boolean,\n dropForeignKeys: boolean = true,\n dropIndices: boolean = true,\n ): Promise<void> {\n if (ifExists) {\n const isTableExist = await this.hasTable(tableOrName)\n if (!isTableExist) return Promise.resolve()\n }\n\n // if dropTable called with dropForeignKeys = true, we must create foreign keys in down query.\n const createForeignKeys: boolean = dropForeignKeys\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n const upQueries: Query[] = []\n const downQueries: Query[] = []\n\n // It needs because if table does not exist and dropForeignKeys or dropIndices is true, we don't need\n // to perform drop queries for foreign keys and indices.\n\n if (dropIndices) {\n table.indices.forEach((index) => {\n upQueries.push(this.dropIndexSql(table, index))\n downQueries.push(this.createIndexSql(table, index))\n })\n }\n\n // if dropForeignKeys is true, we just drop the table, otherwise we also drop table foreign keys.\n // createTable does not need separate method to create foreign keys, because it create fk's in the same query with table creation.\n if (dropForeignKeys)\n table.foreignKeys.forEach((foreignKey) =>\n upQueries.push(this.dropForeignKeySql(table, foreignKey)),\n )\n\n // if table has column with generated type, we must add the expression to the metadata table\n const generatedColumns = table.columns.filter(\n (column) => column.asExpression != null,\n )\n\n if (generatedColumns.length > 0) {\n const parsedTableName = this.driver.parseTableName(table)\n parsedTableName.schema ??= await this.getCurrentSchema()\n\n for (const column of generatedColumns) {\n const deleteQuery = this.deleteTypeormMetadataSql({\n schema: parsedTableName.schema,\n table: parsedTableName.tableName,\n type: MetadataTableType.GENERATED_COLUMN,\n name: column.name,\n })\n upQueries.push(deleteQuery)\n\n if (column.asExpression) {\n const insertQuery = this.insertTypeormMetadataSql({\n schema: parsedTableName.schema,\n table: parsedTableName.tableName,\n type: MetadataTableType.GENERATED_COLUMN,\n name: column.name,\n value: column.asExpression,\n })\n downQueries.push(insertQuery)\n }\n }\n }\n\n upQueries.push(this.dropTableSql(table))\n downQueries.push(this.createTableSql(table, createForeignKeys))\n\n await this.executeQueries(upQueries, downQueries)\n }\n\n /**\n * Creates a new view.\n *\n * @param view\n * @param syncWithMetadata\n */\n async createView(\n view: View,\n syncWithMetadata: boolean = false,\n ): Promise<void> {\n const upQueries: Query[] = []\n const downQueries: Query[] = []\n upQueries.push(this.createViewSql(view))\n if (syncWithMetadata)\n upQueries.push(await this.insertViewDefinitionSql(view))\n downQueries.push(this.dropViewSql(view))\n if (syncWithMetadata)\n downQueries.push(await this.deleteViewDefinitionSql(view))\n await this.executeQueries(upQueries, downQueries)\n }\n\n /**\n * Drops the view.\n *\n * @param target\n * @param ifExists\n */\n async dropView(target: View | string, ifExists?: boolean): Promise<void> {\n const viewName = InstanceChecker.isView(target) ? target.name : target\n\n if (ifExists) {\n const foundViews = await this.loadViews([viewName])\n if (foundViews.length === 0) return\n }\n\n const view = await this.getCachedView(viewName)\n\n const upQueries: Query[] = []\n const downQueries: Query[] = []\n upQueries.push(await this.deleteViewDefinitionSql(view))\n upQueries.push(this.dropViewSql(view))\n downQueries.push(await this.insertViewDefinitionSql(view))\n downQueries.push(this.createViewSql(view))\n await this.executeQueries(upQueries, downQueries)\n }\n\n /**\n * Renames a table.\n *\n * @param oldTableOrName\n * @param newTableName\n */\n async renameTable(\n oldTableOrName: Table | string,\n newTableName: string,\n ): Promise<void> {\n const upQueries: Query[] = []\n const downQueries: Query[] = []\n const oldTable = InstanceChecker.isTable(oldTableOrName)\n ? oldTableOrName\n : await this.getCachedTable(oldTableOrName)\n const newTable = oldTable.clone()\n\n const { schema: schemaName, tableName: oldTableName } =\n this.driver.parseTableName(oldTable)\n\n newTable.name = schemaName\n ? `${schemaName}.${newTableName}`\n : newTableName\n\n // rename table\n upQueries.push(\n new Query(\n `RENAME TABLE ${this.escapePath(oldTable)} TO ${this.escapePath(\n newTable,\n )}`,\n ),\n )\n downQueries.push(\n new Query(\n `RENAME TABLE ${this.escapePath(newTable)} TO ${this.escapePath(\n oldTable,\n )}`,\n ),\n )\n\n const hasGeneratedColumns = oldTable.columns.some(\n (col) => col.asExpression != null,\n )\n\n if (hasGeneratedColumns) {\n const schema = schemaName ?? (await this.getCurrentSchema())\n const updateQuery = this.updateTypeormMetadataSql({\n schema: schema,\n table: oldTableName,\n type: MetadataTableType.GENERATED_COLUMN,\n valueToSet: { table: newTableName },\n })\n const revertUpdateQuery = this.updateTypeormMetadataSql({\n schema: schema,\n table: newTableName,\n type: MetadataTableType.GENERATED_COLUMN,\n valueToSet: { table: oldTableName },\n })\n\n upQueries.push(updateQuery)\n downQueries.push(revertUpdateQuery)\n }\n\n // drop old FK's. Foreign keys must be dropped before the primary keys are dropped\n newTable.foreignKeys.forEach((foreignKey) => {\n upQueries.push(this.dropForeignKeySql(newTable, foreignKey))\n downQueries.push(this.createForeignKeySql(newTable, foreignKey))\n })\n\n // SAP HANA does not allow to drop PK's which is referenced by foreign keys.\n // To avoid this, we must drop all referential foreign keys and recreate them later\n const referencedForeignKeySql = `SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '${schemaName}' AND \"REFERENCED_TABLE_NAME\" = '${oldTableName}'`\n const dbForeignKeys: ObjectLiteral[] = await this.query(\n referencedForeignKeySql,\n )\n let referencedForeignKeys: TableForeignKey[] = []\n const referencedForeignKeyTableMapping: {\n tableName: string\n fkName: string\n }[] = []\n if (dbForeignKeys.length > 0) {\n referencedForeignKeys = dbForeignKeys.map((dbForeignKey) => {\n const foreignKeys = dbForeignKeys.filter(\n (dbFk) =>\n dbFk[\"CONSTRAINT_NAME\"] ===\n dbForeignKey[\"CONSTRAINT_NAME\"],\n )\n\n referencedForeignKeyTableMapping.push({\n tableName: `${dbForeignKey[\"SCHEMA_NAME\"]}.${dbForeignKey[\"TABLE_NAME\"]}`,\n fkName: dbForeignKey[\"CONSTRAINT_NAME\"],\n })\n return new TableForeignKey({\n name: dbForeignKey[\"CONSTRAINT_NAME\"],\n columnNames: foreignKeys.map((dbFk) => dbFk[\"COLUMN_NAME\"]),\n referencedDatabase: newTable.database,\n referencedSchema: newTable.schema,\n referencedTableName: newTable.name, // we use renamed table name\n referencedColumnNames: foreignKeys.map(\n (dbFk) => dbFk[\"REFERENCED_COLUMN_NAME\"],\n ),\n onDelete:\n dbForeignKey[\"DELETE_RULE\"] === \"RESTRICT\"\n ? \"NO ACTION\"\n : dbForeignKey[\"DELETE_RULE\"],\n onUpdate:\n dbForeignKey[\"UPDATE_RULE\"] === \"RESTRICT\"\n ? \"NO ACTION\"\n : dbForeignKey[\"UPDATE_RULE\"],\n deferrable: dbForeignKey[\"CHECK_TIME\"].replace(\"_\", \" \"), // \"CHECK_TIME\" is \"INITIALLY_IMMEDIATE\" or \"INITIALLY DEFERRED\"\n })\n })\n\n // drop referenced foreign keys\n referencedForeignKeys.forEach((foreignKey) => {\n const mapping = referencedForeignKeyTableMapping.find(\n (it) => it.fkName === foreignKey.name,\n )\n upQueries.push(\n this.dropForeignKeySql(mapping!.tableName, foreignKey),\n )\n downQueries.push(\n this.createForeignKeySql(mapping!.tableName, foreignKey),\n )\n })\n }\n\n // rename primary key constraint\n if (newTable.primaryColumns.length > 0) {\n const columnNames = newTable.primaryColumns.map(\n (column) => column.name,\n )\n const columnNamesString = columnNames\n .map((columnName) => `\"${columnName}\"`)\n .join(\", \")\n\n const oldPkName = this.dataSource.namingStrategy.primaryKeyName(\n oldTable,\n columnNames,\n )\n const newPkName = this.dataSource.namingStrategy.primaryKeyName(\n newTable,\n columnNames,\n )\n\n // drop old PK\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n newTable,\n )} DROP CONSTRAINT \"${oldPkName}\"`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n newTable,\n )} ADD CONSTRAINT \"${oldPkName}\" PRIMARY KEY (${columnNamesString})`,\n ),\n )\n\n // create new PK\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n newTable,\n )} ADD CONSTRAINT \"${newPkName}\" PRIMARY KEY (${columnNamesString})`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n newTable,\n )} DROP CONSTRAINT \"${newPkName}\"`,\n ),\n )\n }\n\n // recreate foreign keys with new constraint names\n newTable.foreignKeys.forEach((foreignKey) => {\n // replace constraint name\n foreignKey.name = this.dataSource.namingStrategy.foreignKeyName(\n newTable,\n foreignKey.columnNames,\n this.getTablePath(foreignKey),\n foreignKey.referencedColumnNames,\n )\n\n // create new FK's\n upQueries.push(this.createForeignKeySql(newTable, foreignKey))\n downQueries.push(this.dropForeignKeySql(newTable, foreignKey))\n })\n\n // restore referenced foreign keys\n referencedForeignKeys.forEach((foreignKey) => {\n const mapping = referencedForeignKeyTableMapping.find(\n (it) => it.fkName === foreignKey.name,\n )\n upQueries.push(\n this.createForeignKeySql(mapping!.tableName, foreignKey),\n )\n downQueries.push(\n this.dropForeignKeySql(mapping!.tableName, foreignKey),\n )\n })\n\n // rename index constraints\n newTable.indices.forEach((index) => {\n // build new constraint name\n const newIndexName = this.dataSource.namingStrategy.indexName(\n newTable,\n index.columnNames,\n index.where,\n )\n\n // drop old index\n upQueries.push(this.dropIndexSql(newTable, index))\n downQueries.push(this.createIndexSql(newTable, index))\n\n // replace constraint name\n index.name = newIndexName\n\n // create new index\n upQueries.push(this.createIndexSql(newTable, index))\n downQueries.push(this.dropIndexSql(newTable, index))\n })\n\n await this.executeQueries(upQueries, downQueries)\n\n // rename old table and replace it in cached tabled;\n oldTable.name = newTable.name\n this.replaceCachedTable(oldTable, newTable)\n }\n\n /**\n * Creates a new column from the column in the table.\n *\n * @param tableOrName\n * @param column\n */\n async addColumn(\n tableOrName: Table | string,\n column: TableColumn,\n ): Promise<void> {\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n const parsedTableName = this.driver.parseTableName(table)\n\n parsedTableName.schema ??= await this.getCurrentSchema()\n\n const clonedTable = table.clone()\n const upQueries: Query[] = []\n const downQueries: Query[] = []\n\n upQueries.push(new Query(this.addColumnSql(table, column)))\n downQueries.push(new Query(this.dropColumnSql(table, column)))\n\n // create or update primary key constraint\n if (column.isPrimary) {\n const primaryColumns = clonedTable.primaryColumns\n // if table already have primary key, me must drop it and recreate again\n if (primaryColumns.length > 0) {\n // SAP HANA does not allow to drop PK's which is referenced by foreign keys.\n // To avoid this, we must drop all referential foreign keys and recreate them later\n const referencedForeignKeySql = `SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '${parsedTableName.schema}' AND \"REFERENCED_TABLE_NAME\" = '${parsedTableName.tableName}'`\n const dbForeignKeys: ObjectLiteral[] = await this.query(\n referencedForeignKeySql,\n )\n let referencedForeignKeys: TableForeignKey[] = []\n const referencedForeignKeyTableMapping: {\n tableName: string\n fkName: string\n }[] = []\n if (dbForeignKeys.length > 0) {\n referencedForeignKeys = dbForeignKeys.map(\n (dbForeignKey) => {\n const foreignKeys = dbForeignKeys.filter(\n (dbFk) =>\n dbFk[\"CONSTRAINT_NAME\"] ===\n dbForeignKey[\"CONSTRAINT_NAME\"],\n )\n\n referencedForeignKeyTableMapping.push({\n tableName: `${dbForeignKey[\"SCHEMA_NAME\"]}.${dbForeignKey[\"TABLE_NAME\"]}`,\n fkName: dbForeignKey[\"CONSTRAINT_NAME\"],\n })\n return new TableForeignKey({\n name: dbForeignKey[\"CONSTRAINT_NAME\"],\n columnNames: foreignKeys.map(\n (dbFk) => dbFk[\"COLUMN_NAME\"],\n ),\n referencedDatabase: table.database,\n referencedSchema: table.schema,\n referencedTableName: table.name,\n referencedColumnNames: foreignKeys.map(\n (dbFk) => dbFk[\"REFERENCED_COLUMN_NAME\"],\n ),\n onDelete:\n dbForeignKey[\"DELETE_RULE\"] === \"RESTRICT\"\n ? \"NO ACTION\"\n : dbForeignKey[\"DELETE_RULE\"],\n onUpdate:\n dbForeignKey[\"UPDATE_RULE\"] === \"RESTRICT\"\n ? \"NO ACTION\"\n : dbForeignKey[\"UPDATE_RULE\"],\n deferrable: dbForeignKey[\"CHECK_TIME\"].replace(\n \"_\",\n \" \",\n ),\n })\n },\n )\n\n // drop referenced foreign keys\n referencedForeignKeys.forEach((foreignKey) => {\n const mapping = referencedForeignKeyTableMapping.find(\n (it) => it.fkName === foreignKey.name,\n )\n upQueries.push(\n this.dropForeignKeySql(\n mapping!.tableName,\n foreignKey,\n ),\n )\n downQueries.push(\n this.createForeignKeySql(\n mapping!.tableName,\n foreignKey,\n ),\n )\n })\n }\n\n const pkName = this.dataSource.namingStrategy.primaryKeyName(\n clonedTable,\n primaryColumns.map((column) => column.name),\n )\n const columnNames = primaryColumns\n .map((column) => `\"${column.name}\"`)\n .join(\", \")\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} DROP CONSTRAINT \"${pkName}\"`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} ADD CONSTRAINT \"${pkName}\" PRIMARY KEY (${columnNames})`,\n ),\n )\n\n // restore referenced foreign keys\n referencedForeignKeys.forEach((foreignKey) => {\n const mapping = referencedForeignKeyTableMapping.find(\n (it) => it.fkName === foreignKey.name,\n )\n upQueries.push(\n this.createForeignKeySql(\n mapping!.tableName,\n foreignKey,\n ),\n )\n downQueries.push(\n this.dropForeignKeySql(mapping!.tableName, foreignKey),\n )\n })\n }\n\n primaryColumns.push(column)\n const pkName = this.dataSource.namingStrategy.primaryKeyName(\n clonedTable,\n primaryColumns.map((column) => column.name),\n )\n const columnNames = primaryColumns\n .map((column) => `\"${column.name}\"`)\n .join(\", \")\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} ADD CONSTRAINT \"${pkName}\" PRIMARY KEY (${columnNames})`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} DROP CONSTRAINT \"${pkName}\"`,\n ),\n )\n }\n\n if (column.asExpression) {\n const insertQuery = this.insertTypeormMetadataSql({\n schema: parsedTableName.schema,\n table: parsedTableName.tableName,\n type: MetadataTableType.GENERATED_COLUMN,\n name: column.name,\n value: column.asExpression,\n })\n const deleteQuery = this.deleteTypeormMetadataSql({\n schema: parsedTableName.schema,\n table: parsedTableName.tableName,\n type: MetadataTableType.GENERATED_COLUMN,\n name: column.name,\n })\n\n upQueries.push(insertQuery)\n downQueries.push(deleteQuery)\n }\n\n // create column index\n const columnIndex = clonedTable.indices.find(\n (index) =>\n index.columnNames.length === 1 &&\n index.columnNames[0] === column.name,\n )\n if (columnIndex) {\n upQueries.push(this.createIndexSql(table, columnIndex))\n downQueries.push(this.dropIndexSql(table, columnIndex))\n } else if (column.isUnique) {\n const uniqueIndex = new TableIndex({\n name: this.dataSource.namingStrategy.indexName(table, [\n column.name,\n ]),\n columnNames: [column.name],\n isUnique: true,\n })\n clonedTable.indices.push(uniqueIndex)\n clonedTable.uniques.push(\n new TableUnique({\n name: uniqueIndex.name,\n columnNames: uniqueIndex.columnNames,\n }),\n )\n upQueries.push(this.createIndexSql(table, uniqueIndex))\n downQueries.push(this.dropIndexSql(table, uniqueIndex))\n }\n\n await this.executeQueries(upQueries, downQueries)\n\n clonedTable.addColumn(column)\n this.replaceCachedTable(table, clonedTable)\n }\n\n /**\n * Creates a new columns from the column in the table.\n *\n * @param tableOrName\n * @param columns\n */\n async addColumns(\n tableOrName: Table | string,\n columns: TableColumn[],\n ): Promise<void> {\n for (const column of columns) {\n await this.addColumn(tableOrName, column)\n }\n }\n\n /**\n * Renames column in the given table.\n *\n * @param tableOrName\n * @param oldTableColumnOrName\n * @param newTableColumnOrName\n */\n async renameColumn(\n tableOrName: Table | string,\n oldTableColumnOrName: TableColumn | string,\n newTableColumnOrName: TableColumn | string,\n ): Promise<void> {\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n const oldColumn = InstanceChecker.isTableColumn(oldTableColumnOrName)\n ? oldTableColumnOrName\n : table.columns.find((c) => c.name === oldTableColumnOrName)\n if (!oldColumn)\n throw new TypeORMError(\n `Column \"${oldTableColumnOrName}\" was not found in the \"${table.name}\" table.`,\n )\n\n let newColumn: TableColumn\n if (InstanceChecker.isTableColumn(newTableColumnOrName)) {\n newColumn = newTableColumnOrName\n } else {\n newColumn = oldColumn.clone()\n newColumn.name = newTableColumnOrName\n }\n\n await this.changeColumn(table, oldColumn, newColumn)\n }\n\n /**\n * Changes a column in the table.\n *\n * @param tableOrName\n * @param oldTableColumnOrName\n * @param newColumn\n */\n async changeColumn(\n tableOrName: Table | string,\n oldTableColumnOrName: TableColumn | string,\n newColumn: TableColumn,\n ): Promise<void> {\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n let clonedTable = table.clone()\n const upQueries: Query[] = []\n const downQueries: Query[] = []\n\n const oldColumn = InstanceChecker.isTableColumn(oldTableColumnOrName)\n ? oldTableColumnOrName\n : table.columns.find(\n (column) => column.name === oldTableColumnOrName,\n )\n if (!oldColumn)\n throw new TypeORMError(\n `Column \"${oldTableColumnOrName}\" was not found in the \"${table.name}\" table.`,\n )\n\n if (\n (newColumn.isGenerated !== oldColumn.isGenerated &&\n newColumn.generationStrategy !== \"uuid\") ||\n newColumn.type !== oldColumn.type ||\n newColumn.length !== oldColumn.length ||\n (newColumn.asExpression ?? \"\").trim() !==\n (oldColumn.asExpression ?? \"\").trim()\n ) {\n // SQL Server does not support changing of IDENTITY column, so we must drop column and recreate it again.\n // Also, we recreate column if column type changed\n await this.dropColumn(table, oldColumn)\n await this.addColumn(table, newColumn)\n\n // update cloned table\n clonedTable = table.clone()\n } else {\n if (newColumn.name !== oldColumn.name) {\n // rename column\n upQueries.push(\n new Query(\n `RENAME COLUMN ${this.escapePath(table)}.\"${\n oldColumn.name\n }\" TO \"${newColumn.name}\"`,\n ),\n )\n downQueries.push(\n new Query(\n `RENAME COLUMN ${this.escapePath(table)}.\"${\n newColumn.name\n }\" TO \"${oldColumn.name}\"`,\n ),\n )\n\n if (oldColumn.isPrimary === true) {\n const primaryColumns = clonedTable.primaryColumns\n\n // build old primary constraint name\n const columnNames = primaryColumns.map(\n (column) => column.name,\n )\n const oldPkName =\n this.dataSource.namingStrategy.primaryKeyName(\n clonedTable,\n columnNames,\n )\n\n // replace old column name with new column name\n columnNames.splice(columnNames.indexOf(oldColumn.name), 1)\n columnNames.push(newColumn.name)\n const columnNamesString = columnNames\n .map((columnName) => `\"${columnName}\"`)\n .join(\", \")\n\n // drop old PK\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n clonedTable,\n )} DROP CONSTRAINT \"${oldPkName}\"`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n clonedTable,\n )} ADD CONSTRAINT \"${oldPkName}\" PRIMARY KEY (${columnNamesString})`,\n ),\n )\n\n // build new primary constraint name\n const newPkName =\n this.dataSource.namingStrategy.primaryKeyName(\n clonedTable,\n columnNames,\n )\n\n // create new PK\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n clonedTable,\n )} ADD CONSTRAINT \"${newPkName}\" PRIMARY KEY (${columnNamesString})`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n clonedTable,\n )} DROP CONSTRAINT \"${newPkName}\"`,\n ),\n )\n }\n\n if (oldColumn.asExpression != null) {\n const parsedTableName = this.driver.parseTableName(table)\n parsedTableName.schema ??= await this.getCurrentSchema()\n\n const updateQuery = this.updateTypeormMetadataSql({\n schema: parsedTableName.schema,\n table: parsedTableName.tableName,\n type: MetadataTableType.GENERATED_COLUMN,\n name: oldColumn.name,\n valueToSet: { name: newColumn.name },\n })\n const revertUpdateQuery = this.updateTypeormMetadataSql({\n schema: parsedTableName.schema,\n table: parsedTableName.tableName,\n type: MetadataTableType.GENERATED_COLUMN,\n name: newColumn.name,\n valueToSet: { name: oldColumn.name },\n })\n\n upQueries.push(updateQuery)\n downQueries.push(revertUpdateQuery)\n }\n\n // rename index constraints\n clonedTable.findColumnIndices(oldColumn).forEach((index) => {\n // build new constraint name\n index.columnNames.splice(\n index.columnNames.indexOf(oldColumn.name),\n 1,\n )\n index.columnNames.push(newColumn.name)\n const newIndexName =\n this.dataSource.namingStrategy.indexName(\n clonedTable,\n index.columnNames,\n index.where,\n )\n\n // drop old index\n upQueries.push(this.dropIndexSql(clonedTable, index))\n downQueries.push(this.createIndexSql(clonedTable, index))\n\n // replace constraint name\n index.name = newIndexName\n\n // create new index\n upQueries.push(this.createIndexSql(clonedTable, index))\n downQueries.push(this.dropIndexSql(clonedTable, index))\n })\n\n // rename foreign key constraints\n clonedTable\n .findColumnForeignKeys(oldColumn)\n .forEach((foreignKey) => {\n // build new constraint name\n foreignKey.columnNames.splice(\n foreignKey.columnNames.indexOf(oldColumn.name),\n 1,\n )\n foreignKey.columnNames.push(newColumn.name)\n const newForeignKeyName =\n this.dataSource.namingStrategy.foreignKeyName(\n clonedTable,\n foreignKey.columnNames,\n this.getTablePath(foreignKey),\n foreignKey.referencedColumnNames,\n )\n\n upQueries.push(\n this.dropForeignKeySql(clonedTable, foreignKey),\n )\n downQueries.push(\n this.createForeignKeySql(clonedTable, foreignKey),\n )\n\n // replace constraint name\n foreignKey.name = newForeignKeyName\n\n // create new FK's\n upQueries.push(\n this.createForeignKeySql(clonedTable, foreignKey),\n )\n downQueries.push(\n this.dropForeignKeySql(clonedTable, foreignKey),\n )\n })\n\n // rename check constraints\n clonedTable.findColumnChecks(oldColumn).forEach((check) => {\n // build new constraint name\n check.columnNames!.splice(\n check.columnNames!.indexOf(oldColumn.name),\n 1,\n )\n check.columnNames!.push(newColumn.name)\n const newCheckName =\n this.dataSource.namingStrategy.checkConstraintName(\n clonedTable,\n check.expression!,\n )\n\n upQueries.push(\n this.dropCheckConstraintSql(clonedTable, check),\n )\n downQueries.push(\n this.createCheckConstraintSql(clonedTable, check),\n )\n\n // replace constraint name\n check.name = newCheckName\n\n upQueries.push(\n this.createCheckConstraintSql(clonedTable, check),\n )\n downQueries.push(\n this.dropCheckConstraintSql(clonedTable, check),\n )\n })\n\n // rename old column in the Table object\n const oldTableColumn = clonedTable.columns.find(\n (column) => column.name === oldColumn.name,\n )\n clonedTable.columns[\n clonedTable.columns.indexOf(oldTableColumn!)\n ].name = newColumn.name\n oldColumn.name = newColumn.name\n }\n\n if (this.isColumnChanged(oldColumn, newColumn, true)) {\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} ALTER (${this.buildCreateColumnSql(\n newColumn,\n !(\n oldColumn.default === null ||\n oldColumn.default === undefined\n ),\n !oldColumn.isNullable,\n )})`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} ALTER (${this.buildCreateColumnSql(\n oldColumn,\n !(\n newColumn.default === null ||\n newColumn.default === undefined\n ),\n !newColumn.isNullable,\n )})`,\n ),\n )\n } else if (oldColumn.comment !== newColumn.comment) {\n upQueries.push(\n new Query(\n `COMMENT ON COLUMN ${this.escapePath(table)}.\"${\n oldColumn.name\n }\" IS ${this.escapeComment(newColumn.comment)}`,\n ),\n )\n downQueries.push(\n new Query(\n `COMMENT ON COLUMN ${this.escapePath(table)}.\"${\n newColumn.name\n }\" IS ${this.escapeComment(oldColumn.comment)}`,\n ),\n )\n }\n\n if (newColumn.isPrimary !== oldColumn.isPrimary) {\n const primaryColumns = clonedTable.primaryColumns\n\n // if primary column state changed, we must always drop existed constraint.\n if (primaryColumns.length > 0) {\n const pkName =\n this.dataSource.namingStrategy.primaryKeyName(\n clonedTable,\n primaryColumns.map((column) => column.name),\n )\n const columnNames = primaryColumns\n .map((column) => `\"${column.name}\"`)\n .join(\", \")\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} DROP CONSTRAINT \"${pkName}\"`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} ADD CONSTRAINT \"${pkName}\" PRIMARY KEY (${columnNames})`,\n ),\n )\n }\n\n if (newColumn.isPrimary === true) {\n primaryColumns.push(newColumn)\n // update column in table\n const column = clonedTable.columns.find(\n (column) => column.name === newColumn.name,\n )\n column!.isPrimary = true\n const pkName =\n this.dataSource.namingStrategy.primaryKeyName(\n clonedTable,\n primaryColumns.map((column) => column.name),\n )\n const columnNames = primaryColumns\n .map((column) => `\"${column.name}\"`)\n .join(\", \")\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} ADD CONSTRAINT \"${pkName}\" PRIMARY KEY (${columnNames})`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} DROP CONSTRAINT \"${pkName}\"`,\n ),\n )\n } else {\n const primaryColumn = primaryColumns.find(\n (c) => c.name === newColumn.name,\n )\n primaryColumns.splice(\n primaryColumns.indexOf(primaryColumn!),\n 1,\n )\n\n // update column in table\n const column = clonedTable.columns.find(\n (column) => column.name === newColumn.name,\n )\n column!.isPrimary = false\n\n // if we have another primary keys, we must recreate constraint.\n if (primaryColumns.length > 0) {\n const pkName =\n this.dataSource.namingStrategy.primaryKeyName(\n clonedTable,\n primaryColumns.map((column) => column.name),\n )\n const columnNames = primaryColumns\n .map((column) => `\"${column.name}\"`)\n .join(\", \")\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} ADD CONSTRAINT \"${pkName}\" PRIMARY KEY (${columnNames})`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} DROP CONSTRAINT \"${pkName}\"`,\n ),\n )\n }\n }\n }\n\n if (newColumn.isUnique !== oldColumn.isUnique) {\n if (newColumn.isUnique === true) {\n const uniqueIndex = new TableIndex({\n name: this.dataSource.namingStrategy.indexName(table, [\n newColumn.name,\n ]),\n columnNames: [newColumn.name],\n isUnique: true,\n })\n clonedTable.indices.push(uniqueIndex)\n clonedTable.uniques.push(\n new TableUnique({\n name: uniqueIndex.name,\n columnNames: uniqueIndex.columnNames,\n }),\n )\n upQueries.push(this.createIndexSql(table, uniqueIndex))\n downQueries.push(this.dropIndexSql(table, uniqueIndex))\n } else {\n const uniqueIndex = clonedTable.indices.find((index) => {\n return (\n index.columnNames.length === 1 &&\n index.isUnique === true &&\n !!index.columnNames.find(\n (columnName) => columnName === newColumn.name,\n )\n )\n })\n clonedTable.indices.splice(\n clonedTable.indices.indexOf(uniqueIndex!),\n 1,\n )\n\n const tableUnique = clonedTable.uniques.find(\n (unique) => unique.name === uniqueIndex!.name,\n )\n clonedTable.uniques.splice(\n clonedTable.uniques.indexOf(tableUnique!),\n 1,\n )\n\n upQueries.push(this.dropIndexSql(table, uniqueIndex!))\n downQueries.push(this.createIndexSql(table, uniqueIndex!))\n }\n }\n\n await this.executeQueries(upQueries, downQueries)\n this.replaceCachedTable(table, clonedTable)\n }\n }\n\n /**\n * Changes a column in the table.\n *\n * @param tableOrName\n * @param changedColumns\n */\n async changeColumns(\n tableOrName: Table | string,\n changedColumns: { newColumn: TableColumn; oldColumn: TableColumn }[],\n ): Promise<void> {\n for (const { oldColumn, newColumn } of changedColumns) {\n await this.changeColumn(tableOrName, oldColumn, newColumn)\n }\n }\n\n /**\n * Drops column in the table.\n *\n * @param tableOrName\n * @param columnOrName\n * @param ifExists\n */\n async dropColumn(\n tableOrName: Table | string,\n columnOrName: TableColumn | string,\n ifExists?: boolean,\n ): Promise<void> {\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n const parsedTableName = this.driver.parseTableName(table)\n\n parsedTableName.schema ??= await this.getCurrentSchema()\n\n const column = InstanceChecker.isTableColumn(columnOrName)\n ? columnOrName\n : table.findColumnByName(columnOrName)\n if (!column) {\n if (ifExists) return\n throw new TypeORMError(\n `Column \"${columnOrName}\" was not found in table \"${table.name}\"`,\n )\n }\n\n const clonedTable = table.clone()\n const upQueries: Query[] = []\n const downQueries: Query[] = []\n\n // drop primary key constraint\n if (column.isPrimary) {\n // SAP HANA does not allow to drop PK's which is referenced by foreign keys.\n // To avoid this, we must drop all referential foreign keys and recreate them later\n const referencedForeignKeySql = `SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '${parsedTableName.schema}' AND \"REFERENCED_TABLE_NAME\" = '${parsedTableName.tableName}'`\n const dbForeignKeys: ObjectLiteral[] = await this.query(\n referencedForeignKeySql,\n )\n let referencedForeignKeys: TableForeignKey[] = []\n const referencedForeignKeyTableMapping: {\n tableName: string\n fkName: string\n }[] = []\n if (dbForeignKeys.length > 0) {\n referencedForeignKeys = dbForeignKeys.map((dbForeignKey) => {\n const foreignKeys = dbForeignKeys.filter(\n (dbFk) =>\n dbFk[\"CONSTRAINT_NAME\"] ===\n dbForeignKey[\"CONSTRAINT_NAME\"],\n )\n\n referencedForeignKeyTableMapping.push({\n tableName: `${dbForeignKey[\"SCHEMA_NAME\"]}.${dbForeignKey[\"TABLE_NAME\"]}`,\n fkName: dbForeignKey[\"CONSTRAINT_NAME\"],\n })\n return new TableForeignKey({\n name: dbForeignKey[\"CONSTRAINT_NAME\"],\n columnNames: foreignKeys.map(\n (dbFk) => dbFk[\"COLUMN_NAME\"],\n ),\n referencedDatabase: table.database,\n referencedSchema: table.schema,\n referencedTableName: table.name,\n referencedColumnNames: foreignKeys.map(\n (dbFk) => dbFk[\"REFERENCED_COLUMN_NAME\"],\n ),\n onDelete:\n dbForeignKey[\"DELETE_RULE\"] === \"RESTRICT\"\n ? \"NO ACTION\"\n : dbForeignKey[\"DELETE_RULE\"],\n onUpdate:\n dbForeignKey[\"UPDATE_RULE\"] === \"RESTRICT\"\n ? \"NO ACTION\"\n : dbForeignKey[\"UPDATE_RULE\"],\n deferrable: dbForeignKey[\"CHECK_TIME\"].replace(\n \"_\",\n \" \",\n ),\n })\n })\n\n // drop referenced foreign keys\n referencedForeignKeys.forEach((foreignKey) => {\n const mapping = referencedForeignKeyTableMapping.find(\n (it) => it.fkName === foreignKey.name,\n )\n upQueries.push(\n this.dropForeignKeySql(mapping!.tableName, foreignKey),\n )\n downQueries.push(\n this.createForeignKeySql(\n mapping!.tableName,\n foreignKey,\n ),\n )\n })\n }\n\n const pkName = this.dataSource.namingStrategy.primaryKeyName(\n clonedTable,\n clonedTable.primaryColumns.map((column) => column.name),\n )\n const columnNames = clonedTable.primaryColumns\n .map((primaryColumn) => `\"${primaryColumn.name}\"`)\n .join(\", \")\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n clonedTable,\n )} DROP CONSTRAINT \"${pkName}\"`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n clonedTable,\n )} ADD CONSTRAINT \"${pkName}\" PRIMARY KEY (${columnNames})`,\n ),\n )\n\n // update column in table\n const tableColumn = clonedTable.findColumnByName(column.name)\n tableColumn!.isPrimary = false\n\n // if primary key have multiple columns, we must recreate it without dropped column\n if (clonedTable.primaryColumns.length > 0) {\n const pkName = this.dataSource.namingStrategy.primaryKeyName(\n clonedTable,\n clonedTable.primaryColumns.map((column) => column.name),\n )\n const columnNames = clonedTable.primaryColumns\n .map((primaryColumn) => `\"${primaryColumn.name}\"`)\n .join(\", \")\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n clonedTable,\n )} ADD CONSTRAINT \"${pkName}\" PRIMARY KEY (${columnNames})`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n clonedTable,\n )} DROP CONSTRAINT \"${pkName}\"`,\n ),\n )\n }\n\n // restore referenced foreign keys\n referencedForeignKeys.forEach((foreignKey) => {\n const mapping = referencedForeignKeyTableMapping.find(\n (it) => it.fkName === foreignKey.name,\n )\n upQueries.push(\n this.createForeignKeySql(mapping!.tableName, foreignKey),\n )\n downQueries.push(\n this.dropForeignKeySql(mapping!.tableName, foreignKey),\n )\n })\n }\n\n // drop column index\n const columnIndex = clonedTable.indices.find(\n (index) =>\n index.columnNames.length === 1 &&\n index.columnNames[0] === column.name,\n )\n if (columnIndex) {\n clonedTable.indices.splice(\n clonedTable.indices.indexOf(columnIndex),\n 1,\n )\n upQueries.push(this.dropIndexSql(table, columnIndex))\n downQueries.push(this.createIndexSql(table, columnIndex))\n } else if (column.isUnique) {\n // we splice constraints both from table uniques and indices.\n const uniqueName =\n this.dataSource.namingStrategy.uniqueConstraintName(table, [\n column.name,\n ])\n const foundUnique = clonedTable.uniques.find(\n (unique) => unique.name === uniqueName,\n )\n if (foundUnique) {\n clonedTable.uniques.splice(\n clonedTable.uniques.indexOf(foundUnique),\n 1,\n )\n upQueries.push(this.dropIndexSql(table, uniqueName))\n downQueries.push(\n new Query(\n `CREATE UNIQUE INDEX \"${uniqueName}\" ON ${this.escapePath(\n table,\n )} (\"${column.name}\")`,\n ),\n )\n }\n\n const indexName = this.dataSource.namingStrategy.indexName(table, [\n column.name,\n ])\n const foundIndex = clonedTable.indices.find(\n (index) => index.name === indexName,\n )\n if (foundIndex) {\n clonedTable.indices.splice(\n clonedTable.indices.indexOf(foundIndex),\n 1,\n )\n upQueries.push(this.dropIndexSql(table, indexName))\n downQueries.push(\n new Query(\n `CREATE UNIQUE INDEX \"${indexName}\" ON ${this.escapePath(\n table,\n )} (\"${column.name}\")`,\n ),\n )\n }\n }\n\n // drop column check\n const columnCheck = clonedTable.checks.find(\n (check) =>\n !!check.columnNames &&\n check.columnNames.length === 1 &&\n check.columnNames[0] === column.name,\n )\n if (columnCheck) {\n clonedTable.checks.splice(\n clonedTable.checks.indexOf(columnCheck),\n 1,\n )\n upQueries.push(this.dropCheckConstraintSql(table, columnCheck))\n downQueries.push(this.createCheckConstraintSql(table, columnCheck))\n }\n\n if (column.asExpression != null) {\n const deleteQuery = this.deleteTypeormMetadataSql({\n schema: parsedTableName.schema,\n table: parsedTableName.tableName,\n type: MetadataTableType.GENERATED_COLUMN,\n name: column.name,\n })\n upQueries.push(deleteQuery)\n\n if (column.asExpression) {\n const insertQuery = this.insertTypeormMetadataSql({\n schema: parsedTableName.schema,\n table: parsedTableName.tableName,\n type: MetadataTableType.GENERATED_COLUMN,\n name: column.name,\n value: column.asExpression,\n })\n downQueries.push(insertQuery)\n }\n }\n\n upQueries.push(new Query(this.dropColumnSql(table, column)))\n downQueries.push(new Query(this.addColumnSql(table, column)))\n\n await this.executeQueries(upQueries, downQueries)\n\n clonedTable.removeColumn(column)\n this.replaceCachedTable(table, clonedTable)\n }\n\n /**\n * Drops the columns in the table.\n *\n * @param tableOrName\n * @param columns\n * @param ifExists\n */\n async dropColumns(\n tableOrName: Table | string,\n columns: TableColumn[] | string[],\n ifExists?: boolean,\n ): Promise<void> {\n for (const column of [...columns]) {\n await this.dropColumn(tableOrName, column, ifExists)\n }\n }\n\n /**\n * Creates a new primary key.\n *\n * @param tableOrName\n * @param columnNames\n */\n async createPrimaryKey(\n tableOrName: Table | string,\n columnNames: string[],\n ): Promise<void> {\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n const clonedTable = table.clone()\n\n const up = this.createPrimaryKeySql(table, columnNames)\n\n // mark columns as primary, because dropPrimaryKeySql build constraint name from table primary column names.\n clonedTable.columns.forEach((column) => {\n if (columnNames.find((columnName) => columnName === column.name))\n column.isPrimary = true\n })\n const down = this.dropPrimaryKeySql(clonedTable)\n\n await this.executeQueries(up, down)\n this.replaceCachedTable(table, clonedTable)\n }\n\n /**\n * Updates composite primary keys.\n *\n * @param tableOrName\n * @param columns\n */\n async updatePrimaryKeys(\n tableOrName: Table | string,\n columns: TableColumn[],\n ): Promise<void> {\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n const parsedTableName = this.driver.parseTableName(table)\n\n parsedTableName.schema ??= await this.getCurrentSchema()\n\n const clonedTable = table.clone()\n const columnNames = columns.map((column) => column.name)\n const upQueries: Query[] = []\n const downQueries: Query[] = []\n\n // SAP HANA does not allow to drop PK's which is referenced by foreign keys.\n // To avoid this, we must drop all referential foreign keys and recreate them later\n const referencedForeignKeySql = `SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '${parsedTableName.schema}' AND \"REFERENCED_TABLE_NAME\" = '${parsedTableName.tableName}'`\n const dbForeignKeys: ObjectLiteral[] = await this.query(\n referencedForeignKeySql,\n )\n let referencedForeignKeys: TableForeignKey[] = []\n const referencedForeignKeyTableMapping: {\n tableName: string\n fkName: string\n }[] = []\n if (dbForeignKeys.length > 0) {\n referencedForeignKeys = dbForeignKeys.map((dbForeignKey) => {\n const foreignKeys = dbForeignKeys.filter(\n (dbFk) =>\n dbFk[\"CONSTRAINT_NAME\"] ===\n dbForeignKey[\"CONSTRAINT_NAME\"],\n )\n\n referencedForeignKeyTableMapping.push({\n tableName: `${dbForeignKey[\"SCHEMA_NAME\"]}.${dbForeignKey[\"TABLE_NAME\"]}`,\n fkName: dbForeignKey[\"CONSTRAINT_NAME\"],\n })\n return new TableForeignKey({\n name: dbForeignKey[\"CONSTRAINT_NAME\"],\n columnNames: foreignKeys.map((dbFk) => dbFk[\"COLUMN_NAME\"]),\n referencedDatabase: table.database,\n referencedSchema: table.schema,\n referencedTableName: table.name,\n referencedColumnNames: foreignKeys.map(\n (dbFk) => dbFk[\"REFERENCED_COLUMN_NAME\"],\n ),\n onDelete:\n dbForeignKey[\"DELETE_RULE\"] === \"RESTRICT\"\n ? \"NO ACTION\"\n : dbForeignKey[\"DELETE_RULE\"],\n onUpdate:\n dbForeignKey[\"UPDATE_RULE\"] === \"RESTRICT\"\n ? \"NO ACTION\"\n : dbForeignKey[\"UPDATE_RULE\"],\n deferrable: dbForeignKey[\"CHECK_TIME\"].replace(\"_\", \" \"),\n })\n })\n\n // drop referenced foreign keys\n referencedForeignKeys.forEach((foreignKey) => {\n const mapping = referencedForeignKeyTableMapping.find(\n (it) => it.fkName === foreignKey.name,\n )\n upQueries.push(\n this.dropForeignKeySql(mapping!.tableName, foreignKey),\n )\n downQueries.push(\n this.createForeignKeySql(mapping!.tableName, foreignKey),\n )\n })\n }\n\n // if table already have primary columns, we must drop them.\n const primaryColumns = clonedTable.primaryColumns\n if (primaryColumns.length > 0) {\n const pkName = this.dataSource.namingStrategy.primaryKeyName(\n clonedTable,\n primaryColumns.map((column) => column.name),\n )\n const columnNamesString = primaryColumns\n .map((column) => `\"${column.name}\"`)\n .join(\", \")\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} DROP CONSTRAINT \"${pkName}\"`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} ADD CONSTRAINT \"${pkName}\" PRIMARY KEY (${columnNamesString})`,\n ),\n )\n }\n\n // update columns in table.\n clonedTable.columns\n .filter((column) => columnNames.indexOf(column.name) !== -1)\n .forEach((column) => {\n column.isPrimary = true\n })\n\n const pkName = this.dataSource.namingStrategy.primaryKeyName(\n clonedTable,\n columnNames,\n )\n const columnNamesString = columnNames\n .map((columnName) => `\"${columnName}\"`)\n .join(\", \")\n upQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} ADD CONSTRAINT \"${pkName}\" PRIMARY KEY (${columnNamesString})`,\n ),\n )\n downQueries.push(\n new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} DROP CONSTRAINT \"${pkName}\"`,\n ),\n )\n\n // restore referenced foreign keys\n referencedForeignKeys.forEach((foreignKey) => {\n const mapping = referencedForeignKeyTableMapping.find(\n (it) => it.fkName === foreignKey.name,\n )\n upQueries.push(\n this.createForeignKeySql(mapping!.tableName, foreignKey),\n )\n downQueries.push(\n this.dropForeignKeySql(mapping!.tableName, foreignKey),\n )\n })\n\n await this.executeQueries(upQueries, downQueries)\n this.replaceCachedTable(table, clonedTable)\n }\n\n /**\n * Drops a primary key.\n *\n * @param tableOrName\n * @param constraintName\n * @param ifExists\n */\n async dropPrimaryKey(\n tableOrName: Table | string,\n constraintName?: string,\n ifExists?: boolean,\n ): Promise<void> {\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n\n if (ifExists && table.primaryColumns.length === 0) return\n const parsedTableName = this.driver.parseTableName(table)\n\n parsedTableName.schema ??= await this.getCurrentSchema()\n\n const upQueries: Query[] = []\n const downQueries: Query[] = []\n\n // SAP HANA does not allow to drop PK's which is referenced by foreign keys.\n // To avoid this, we must drop all referential foreign keys and recreate them later\n const referencedForeignKeySql = `SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE \"REFERENCED_SCHEMA_NAME\" = '${parsedTableName.schema}' AND \"REFERENCED_TABLE_NAME\" = '${parsedTableName.tableName}'`\n const dbForeignKeys: ObjectLiteral[] = await this.query(\n referencedForeignKeySql,\n )\n let referencedForeignKeys: TableForeignKey[] = []\n const referencedForeignKeyTableMapping: {\n tableName: string\n fkName: string\n }[] = []\n if (dbForeignKeys.length > 0) {\n referencedForeignKeys = dbForeignKeys.map((dbForeignKey) => {\n const foreignKeys = dbForeignKeys.filter(\n (dbFk) =>\n dbFk[\"CONSTRAINT_NAME\"] ===\n dbForeignKey[\"CONSTRAINT_NAME\"],\n )\n\n referencedForeignKeyTableMapping.push({\n tableName: `${dbForeignKey[\"SCHEMA_NAME\"]}.${dbForeignKey[\"TABLE_NAME\"]}`,\n fkName: dbForeignKey[\"CONSTRAINT_NAME\"],\n })\n return new TableForeignKey({\n name: dbForeignKey[\"CONSTRAINT_NAME\"],\n columnNames: foreignKeys.map((dbFk) => dbFk[\"COLUMN_NAME\"]),\n referencedDatabase: table.database,\n referencedSchema: table.schema,\n referencedTableName: table.name,\n referencedColumnNames: foreignKeys.map(\n (dbFk) => dbFk[\"REFERENCED_COLUMN_NAME\"],\n ),\n onDelete:\n dbForeignKey[\"DELETE_RULE\"] === \"RESTRICT\"\n ? \"NO ACTION\"\n : dbForeignKey[\"DELETE_RULE\"],\n onUpdate:\n dbForeignKey[\"UPDATE_RULE\"] === \"RESTRICT\"\n ? \"NO ACTION\"\n : dbForeignKey[\"UPDATE_RULE\"],\n deferrable: dbForeignKey[\"CHECK_TIME\"].replace(\"_\", \" \"),\n })\n })\n\n // drop referenced foreign keys\n referencedForeignKeys.forEach((foreignKey) => {\n const mapping = referencedForeignKeyTableMapping.find(\n (it) => it.fkName === foreignKey.name,\n )\n upQueries.push(\n this.dropForeignKeySql(mapping!.tableName, foreignKey),\n )\n downQueries.push(\n this.createForeignKeySql(mapping!.tableName, foreignKey),\n )\n })\n }\n\n upQueries.push(this.dropPrimaryKeySql(table))\n downQueries.push(\n this.createPrimaryKeySql(\n table,\n table.primaryColumns.map((column) => column.name),\n ),\n )\n\n // restore referenced foreign keys\n referencedForeignKeys.forEach((foreignKey) => {\n const mapping = referencedForeignKeyTableMapping.find(\n (it) => it.fkName === foreignKey.name,\n )\n upQueries.push(\n this.createForeignKeySql(mapping!.tableName, foreignKey),\n )\n downQueries.push(\n this.dropForeignKeySql(mapping!.tableName, foreignKey),\n )\n })\n\n await this.executeQueries(upQueries, downQueries)\n table.primaryColumns.forEach((column) => {\n column.isPrimary = false\n })\n }\n\n /**\n * Creates a new unique constraint.\n *\n * @param tableOrName\n * @param uniqueConstraint\n */\n async createUniqueConstraint(\n tableOrName: Table | string,\n uniqueConstraint: TableUnique,\n ): Promise<void> {\n throw new TypeORMError(\n `SAP HANA does not support unique constraints. Use unique index instead.`,\n )\n }\n\n /**\n * Creates a new unique constraints.\n *\n * @param tableOrName\n * @param uniqueConstraints\n */\n async createUniqueConstraints(\n tableOrName: Table | string,\n uniqueConstraints: TableUnique[],\n ): Promise<void> {\n throw new TypeORMError(\n `SAP HANA does not support unique constraints. Use unique index instead.`,\n )\n }\n\n /**\n * Drops unique constraint.\n *\n * @param tableOrName\n * @param uniqueOrName\n * @param ifExists\n */\n async dropUniqueConstraint(\n tableOrName: Table | string,\n uniqueOrName: TableUnique | string,\n ifExists?: boolean,\n ): Promise<void> {\n throw new TypeORMError(\n `SAP HANA does not support unique constraints. Use unique index instead.`,\n )\n }\n\n /**\n * Drops unique constraints.\n *\n * @param tableOrName\n * @param uniqueConstraints\n * @param ifExists\n */\n async dropUniqueConstraints(\n tableOrName: Table | string,\n uniqueConstraints: TableUnique[],\n ifExists?: boolean,\n ): Promise<void> {\n throw new TypeORMError(\n `SAP HANA does not support unique constraints. Use unique index instead.`,\n )\n }\n\n /**\n * Creates a new check constraint.\n *\n * @param tableOrName\n * @param checkConstraint\n */\n async createCheckConstraint(\n tableOrName: Table | string,\n checkConstraint: TableCheck,\n ): Promise<void> {\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n\n // new unique constraint may be passed without name. In this case we generate unique name manually.\n checkConstraint.name ??=\n this.dataSource.namingStrategy.checkConstraintName(\n table,\n checkConstraint.expression!,\n )\n\n const up = this.createCheckConstraintSql(table, checkConstraint)\n const down = this.dropCheckConstraintSql(table, checkConstraint)\n await this.executeQueries(up, down)\n table.addCheckConstraint(checkConstraint)\n }\n\n /**\n * Creates a new check constraints.\n *\n * @param tableOrName\n * @param checkConstraints\n */\n async createCheckConstraints(\n tableOrName: Table | string,\n checkConstraints: TableCheck[],\n ): Promise<void> {\n const promises = checkConstraints.map((checkConstraint) =>\n this.createCheckConstraint(tableOrName, checkConstraint),\n )\n await Promise.all(promises)\n }\n\n /**\n * Drops check constraint.\n *\n * @param tableOrName\n * @param checkOrName\n * @param ifExists\n */\n async dropCheckConstraint(\n tableOrName: Table | string,\n checkOrName: TableCheck | string,\n ifExists?: boolean,\n ): Promise<void> {\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n const checkConstraint = InstanceChecker.isTableCheck(checkOrName)\n ? checkOrName\n : table.checks.find((c) => c.name === checkOrName)\n if (!checkConstraint) {\n if (ifExists) return\n throw new TypeORMError(\n `Supplied check constraint was not found in table ${table.name}`,\n )\n }\n\n const up = this.dropCheckConstraintSql(table, checkConstraint)\n const down = this.createCheckConstraintSql(table, checkConstraint)\n await this.executeQueries(up, down)\n table.removeCheckConstraint(checkConstraint)\n }\n\n /**\n * Drops check constraints.\n *\n * @param tableOrName\n * @param checkConstraints\n * @param ifExists\n */\n async dropCheckConstraints(\n tableOrName: Table | string,\n checkConstraints: TableCheck[],\n ifExists?: boolean,\n ): Promise<void> {\n const promises = checkConstraints.map((checkConstraint) =>\n this.dropCheckConstraint(tableOrName, checkConstraint, ifExists),\n )\n await Promise.all(promises)\n }\n\n /**\n * Creates a new exclusion constraint.\n *\n * @param tableOrName\n * @param exclusionConstraint\n */\n async createExclusionConstraint(\n tableOrName: Table | string,\n exclusionConstraint: TableExclusion,\n ): Promise<void> {\n throw new TypeORMError(\n `SAP HANA does not support exclusion constraints.`,\n )\n }\n\n /**\n * Creates a new exclusion constraints.\n *\n * @param tableOrName\n * @param exclusionConstraints\n */\n async createExclusionConstraints(\n tableOrName: Table | string,\n exclusionConstraints: TableExclusion[],\n ): Promise<void> {\n throw new TypeORMError(\n `SAP HANA does not support exclusion constraints.`,\n )\n }\n\n /**\n * Drops exclusion constraint.\n *\n * @param tableOrName\n * @param exclusionOrName\n * @param ifExists\n */\n async dropExclusionConstraint(\n tableOrName: Table | string,\n exclusionOrName: TableExclusion | string,\n ifExists?: boolean,\n ): Promise<void> {\n throw new TypeORMError(\n `SAP HANA does not support exclusion constraints.`,\n )\n }\n\n /**\n * Drops exclusion constraints.\n *\n * @param tableOrName\n * @param exclusionConstraints\n * @param ifExists\n */\n async dropExclusionConstraints(\n tableOrName: Table | string,\n exclusionConstraints: TableExclusion[],\n ifExists?: boolean,\n ): Promise<void> {\n throw new TypeORMError(\n `SAP HANA does not support exclusion constraints.`,\n )\n }\n\n /**\n * Creates a new foreign key.\n *\n * @param tableOrName\n * @param foreignKey\n */\n async createForeignKey(\n tableOrName: Table | string,\n foreignKey: TableForeignKey,\n ): Promise<void> {\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n\n // new FK may be passed without name. In this case we generate FK name manually.\n foreignKey.name ??= this.dataSource.namingStrategy.foreignKeyName(\n table,\n foreignKey.columnNames,\n this.getTablePath(foreignKey),\n foreignKey.referencedColumnNames,\n )\n\n const up = this.createForeignKeySql(table, foreignKey)\n const down = this.dropForeignKeySql(table, foreignKey)\n await this.executeQueries(up, down)\n table.addForeignKey(foreignKey)\n }\n\n /**\n * Creates a new foreign keys.\n *\n * @param tableOrName\n * @param foreignKeys\n */\n async createForeignKeys(\n tableOrName: Table | string,\n foreignKeys: TableForeignKey[],\n ): Promise<void> {\n const promises = foreignKeys.map((foreignKey) =>\n this.createForeignKey(tableOrName, foreignKey),\n )\n await Promise.all(promises)\n }\n\n /**\n * Drops a foreign key from the table.\n *\n * @param tableOrName\n * @param foreignKeyOrName\n * @param ifExists\n */\n async dropForeignKey(\n tableOrName: Table | string,\n foreignKeyOrName: TableForeignKey | string,\n ifExists?: boolean,\n ): Promise<void> {\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n const foreignKey = InstanceChecker.isTableForeignKey(foreignKeyOrName)\n ? foreignKeyOrName\n : table.foreignKeys.find((fk) => fk.name === foreignKeyOrName)\n if (!foreignKey) {\n if (ifExists) return\n throw new TypeORMError(\n `Supplied foreign key was not found in table ${table.name}`,\n )\n }\n\n foreignKey.name ??= this.dataSource.namingStrategy.foreignKeyName(\n table,\n foreignKey.columnNames,\n this.getTablePath(foreignKey),\n foreignKey.referencedColumnNames,\n )\n\n const up = this.dropForeignKeySql(table, foreignKey)\n const down = this.createForeignKeySql(table, foreignKey)\n await this.executeQueries(up, down)\n table.removeForeignKey(foreignKey)\n }\n\n /**\n * Drops a foreign keys from the table.\n *\n * @param tableOrName\n * @param foreignKeys\n * @param ifExists\n */\n async dropForeignKeys(\n tableOrName: Table | string,\n foreignKeys: TableForeignKey[],\n ifExists?: boolean,\n ): Promise<void> {\n const promises = foreignKeys.map((foreignKey) =>\n this.dropForeignKey(tableOrName, foreignKey, ifExists),\n )\n await Promise.all(promises)\n }\n\n /**\n * Creates a new index.\n *\n * @param tableOrName\n * @param index\n */\n async createIndex(\n tableOrName: Table | string,\n index: TableIndex,\n ): Promise<void> {\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n\n // new index may be passed without name. In this case we generate index name manually.\n index.name ??= this.generateIndexName(table, index)\n\n const up = this.createIndexSql(table, index)\n const down = this.dropIndexSql(table, index)\n await this.executeQueries(up, down)\n table.addIndex(index)\n }\n\n /**\n * Creates a new indices\n *\n * @param tableOrName\n * @param indices\n */\n async createIndices(\n tableOrName: Table | string,\n indices: TableIndex[],\n ): Promise<void> {\n const promises = indices.map((index) =>\n this.createIndex(tableOrName, index),\n )\n await Promise.all(promises)\n }\n\n /**\n * Drops an index.\n *\n * @param tableOrName\n * @param indexOrName\n * @param ifExists\n */\n async dropIndex(\n tableOrName: Table | string,\n indexOrName: TableIndex | string,\n ifExists?: boolean,\n ): Promise<void> {\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n const index = InstanceChecker.isTableIndex(indexOrName)\n ? indexOrName\n : table.indices.find((i) => i.name === indexOrName)\n if (!index) {\n if (ifExists) return\n throw new TypeORMError(\n `Supplied index ${indexOrName} was not found in table ${table.name}`,\n )\n }\n\n // old index may be passed without name. In this case we generate index name manually.\n index.name ??= this.generateIndexName(table, index)\n\n const up = this.dropIndexSql(table, index)\n const down = this.createIndexSql(table, index)\n await this.executeQueries(up, down)\n table.removeIndex(index)\n }\n\n /**\n * Drops an indices from the table.\n *\n * @param tableOrName\n * @param indices\n * @param ifExists\n */\n async dropIndices(\n tableOrName: Table | string,\n indices: TableIndex[],\n ifExists?: boolean,\n ): Promise<void> {\n const promises = indices.map((index) =>\n this.dropIndex(tableOrName, index, ifExists),\n )\n await Promise.all(promises)\n }\n\n /**\n * Clears all table contents.\n * Note: this operation uses SQL's TRUNCATE query which cannot be reverted in transactions.\n *\n * @param tablePath\n * @param options\n * @param options.cascade\n */\n async clearTable(\n tablePath: string,\n options?: { cascade?: boolean },\n ): Promise<void> {\n if (options?.cascade) {\n throw new TypeORMError(\n `SAP HANA does not support clearing table with cascade option`,\n )\n }\n await this.query(`TRUNCATE TABLE ${this.escapePath(tablePath)}`)\n }\n\n /**\n * Removes all tables from the currently connected database.\n */\n async clearDatabase(): Promise<void> {\n const schemas: string[] = []\n this.dataSource.entityMetadatas\n .filter((metadata) => metadata.schema)\n .forEach((metadata) => {\n const isSchemaExist = !!schemas.find(\n (schema) => schema === metadata.schema,\n )\n if (!isSchemaExist) schemas.push(metadata.schema!)\n })\n\n if (this.driver.options.schema) {\n schemas.push(this.driver.options.schema)\n } else {\n const [{ currentSchema }] = await this.query(\n `SELECT CURRENT_SCHEMA AS \"currentSchema\" FROM \"SYS\".\"DUMMY\"`,\n )\n schemas.push(currentSchema)\n }\n\n const schemaNamesPlaceholders = schemas.map(() => \"?\").join(\", \")\n\n const isAnotherTransactionActive = this.isTransactionActive\n if (!isAnotherTransactionActive) await this.startTransaction()\n try {\n const selectTableDropsQuery = `SELECT 'DROP TABLE \"' || schema_name || '\".\"' || table_name || '\" CASCADE;' as \"query\" FROM \"SYS\".\"TABLES\" WHERE \"SCHEMA_NAME\" IN (${schemaNamesPlaceholders}) AND \"TABLE_NAME\" NOT IN ('SYS_AFL_GENERATOR_PARAMETERS') AND \"IS_COLUMN_TABLE\" = 'TRUE'`\n const dropTableQueries: ObjectLiteral[] = await this.query(\n selectTableDropsQuery,\n schemas,\n )\n await Promise.all(\n dropTableQueries.map((q) => this.query(q[\"query\"])),\n )\n\n if (!isAnotherTransactionActive) await this.commitTransaction()\n } catch (error) {\n try {\n // we throw original error even if rollback thrown an error\n if (!isAnotherTransactionActive)\n await this.rollbackTransaction()\n } catch (rollbackError) {}\n throw error\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n protected async loadViews(viewNames?: string[]): Promise<View[]> {\n const hasTable = await this.hasTable(this.getTypeormMetadataTableName())\n if (!hasTable) {\n return []\n }\n\n viewNames ??= []\n\n const currentDatabase = await this.getCurrentDatabase()\n const currentSchema = await this.getCurrentSchema()\n\n const viewsCondition = viewNames\n .map((viewName) => {\n let { schema, tableName: name } =\n this.driver.parseTableName(viewName)\n\n schema ??= currentSchema\n\n return `(\"t\".\"schema\" = '${schema}' AND \"t\".\"name\" = '${name}')`\n })\n .join(\" OR \")\n\n const query = `SELECT \"t\".* FROM ${this.escapePath(\n this.getTypeormMetadataTableName(),\n )} \"t\" WHERE \"t\".\"type\" = '${MetadataTableType.VIEW}' ${\n viewsCondition ? `AND (${viewsCondition})` : \"\"\n }`\n const dbViews = await this.query(query)\n return dbViews.map((dbView: any) => {\n const view = new View()\n const schema =\n dbView[\"schema\"] === currentSchema &&\n !this.driver.options.schema\n ? undefined\n : dbView[\"schema\"]\n view.database = currentDatabase\n view.schema = dbView[\"schema\"]\n view.name = this.driver.buildTableName(dbView[\"name\"], schema)\n view.expression = dbView[\"value\"]\n return view\n })\n }\n\n /**\n * Loads all tables (with given names) from the database and creates a Table from them.\n *\n * @param tableNames\n */\n protected async loadTables(tableNames?: string[]): Promise<Table[]> {\n const hasTable = await this.hasTable(this.getTypeormMetadataTableName())\n\n if (tableNames?.length === 0) {\n return []\n }\n\n const currentSchema = await this.getCurrentSchema()\n const currentDatabase = await this.getCurrentDatabase()\n\n const dbTables: {\n SCHEMA_NAME: string\n TABLE_NAME: string\n COMMENTS: string\n }[] = []\n\n if (!tableNames) {\n const tablesSql = `SELECT \"SCHEMA_NAME\", \"TABLE_NAME\", \"COMMENTS\" FROM \"SYS\".\"TABLES\"`\n\n dbTables.push(...(await this.query(tablesSql)))\n } else {\n const tablesCondition = tableNames\n .map((tableName) => {\n let [schema, name] = tableName.split(\".\")\n if (!name) {\n name = schema\n schema = this.driver.options.schema ?? currentSchema\n }\n return `(\"SCHEMA_NAME\" = '${schema}' AND \"TABLE_NAME\" = '${name}')`\n })\n .join(\" OR \")\n\n const tablesSql =\n `SELECT \"SCHEMA_NAME\", \"TABLE_NAME\", \"COMMENTS\" FROM \"SYS\".\"TABLES\" WHERE ` +\n tablesCondition\n\n dbTables.push(...(await this.query(tablesSql)))\n }\n\n // if tables were not found in the db, no need to proceed\n if (dbTables.length === 0) return []\n\n const columnsCondition = dbTables\n .map(({ SCHEMA_NAME, TABLE_NAME }) => {\n return `(\"SCHEMA_NAME\" = '${SCHEMA_NAME}' AND \"TABLE_NAME\" = '${TABLE_NAME}')`\n })\n .join(\" OR \")\n const columnsSql =\n `SELECT * FROM \"SYS\".\"TABLE_COLUMNS\" WHERE ` +\n columnsCondition +\n ` ORDER BY \"POSITION\"`\n\n const constraintsCondition = dbTables\n .map(({ SCHEMA_NAME, TABLE_NAME }) => {\n return `(\"SCHEMA_NAME\" = '${SCHEMA_NAME}' AND \"TABLE_NAME\" = '${TABLE_NAME}')`\n })\n .join(\" OR \")\n const constraintsSql = `SELECT * FROM \"SYS\".\"CONSTRAINTS\" WHERE (${constraintsCondition}) ORDER BY \"POSITION\"`\n\n const indicesCondition = dbTables\n .map(({ SCHEMA_NAME, TABLE_NAME }) => {\n return `(\"I\".\"SCHEMA_NAME\" = '${SCHEMA_NAME}' AND \"I\".\"TABLE_NAME\" = '${TABLE_NAME}')`\n })\n .join(\" OR \")\n // excluding primary key and autogenerated fulltext indices\n const indicesSql =\n `SELECT \"I\".\"INDEX_TYPE\", \"I\".\"SCHEMA_NAME\", \"I\".\"TABLE_NAME\", \"I\".\"INDEX_NAME\", \"IC\".\"COLUMN_NAME\", \"I\".\"CONSTRAINT\" ` +\n `FROM \"SYS\".\"INDEXES\" \"I\" INNER JOIN \"SYS\".\"INDEX_COLUMNS\" \"IC\" ON \"IC\".\"INDEX_OID\" = \"I\".\"INDEX_OID\" ` +\n `WHERE (${indicesCondition}) AND (\"I\".\"CONSTRAINT\" IS NULL OR \"I\".\"CONSTRAINT\" != 'PRIMARY KEY') AND \"I\".\"INDEX_NAME\" NOT LIKE '%_SYS_FULLTEXT_%' ORDER BY \"IC\".\"POSITION\"`\n\n const foreignKeysCondition = dbTables\n .map(({ SCHEMA_NAME, TABLE_NAME }) => {\n return `(\"SCHEMA_NAME\" = '${SCHEMA_NAME}' AND \"TABLE_NAME\" = '${TABLE_NAME}')`\n })\n .join(\" OR \")\n const foreignKeysSql = `SELECT * FROM \"SYS\".\"REFERENTIAL_CONSTRAINTS\" WHERE (${foreignKeysCondition}) ORDER BY \"POSITION\"`\n\n const [\n dbColumns,\n dbConstraints,\n dbIndices,\n dbForeignKeys,\n ]: ObjectLiteral[][] = await Promise.all([\n this.query(columnsSql),\n this.query(constraintsSql),\n this.query(indicesSql),\n this.query(foreignKeysSql),\n ])\n\n // create tables for loaded tables\n return await Promise.all(\n dbTables.map(async (dbTable) => {\n const table = new Table()\n const getSchemaFromKey = (dbObject: any, key: string) => {\n return dbObject[key] === currentSchema &&\n (!this.driver.options.schema ||\n this.driver.options.schema === currentSchema)\n ? undefined\n : dbObject[key]\n }\n\n // We do not need to join schema name, when database is by default.\n const schema = getSchemaFromKey(dbTable, \"SCHEMA_NAME\")\n table.database = currentDatabase\n table.schema = dbTable[\"SCHEMA_NAME\"]\n table.comment = dbTable[\"COMMENTS\"]\n table.name = this.driver.buildTableName(\n dbTable[\"TABLE_NAME\"],\n schema,\n )\n\n let dbGeneratedColumns: ObjectLiteral[] = []\n if (hasTable) {\n const generatedColumnSql = this.selectTypeormMetadataSql({\n schema: dbTable[\"SCHEMA_NAME\"],\n table: dbTable[\"TABLE_NAME\"],\n type: MetadataTableType.GENERATED_COLUMN,\n })\n dbGeneratedColumns = await this.query(\n generatedColumnSql?.query,\n generatedColumnSql?.parameters,\n )\n }\n\n // create columns from the loaded columns\n table.columns = dbColumns\n .filter(\n (dbColumn) =>\n dbColumn[\"TABLE_NAME\"] === dbTable[\"TABLE_NAME\"] &&\n dbColumn[\"SCHEMA_NAME\"] === dbTable[\"SCHEMA_NAME\"],\n )\n .map((dbColumn) => {\n const columnConstraints = dbConstraints.filter(\n (dbConstraint) =>\n dbConstraint[\"TABLE_NAME\"] ===\n dbColumn[\"TABLE_NAME\"] &&\n dbConstraint[\"SCHEMA_NAME\"] ===\n dbColumn[\"SCHEMA_NAME\"] &&\n dbConstraint[\"COLUMN_NAME\"] ===\n dbColumn[\"COLUMN_NAME\"],\n )\n\n const columnUniqueIndices = dbIndices.filter(\n (dbIndex) => {\n return (\n dbIndex[\"TABLE_NAME\"] ===\n dbTable[\"TABLE_NAME\"] &&\n dbIndex[\"SCHEMA_NAME\"] ===\n dbTable[\"SCHEMA_NAME\"] &&\n dbIndex[\"COLUMN_NAME\"] ===\n dbColumn[\"COLUMN_NAME\"] &&\n dbIndex[\"CONSTRAINT\"] &&\n dbIndex[\"CONSTRAINT\"].indexOf(\"UNIQUE\") !==\n -1\n )\n },\n )\n\n const tableMetadata =\n this.dataSource.entityMetadatas.find(\n (metadata) =>\n this.getTablePath(table) ===\n this.getTablePath(metadata),\n )\n const hasIgnoredIndex =\n columnUniqueIndices.length > 0 &&\n tableMetadata?.indices.some((index) => {\n return columnUniqueIndices.some(\n (uniqueIndex) => {\n return (\n index.name ===\n uniqueIndex[\"INDEX_NAME\"] &&\n index.synchronize === false\n )\n },\n )\n })\n\n const isConstraintComposite = columnUniqueIndices.every(\n (uniqueIndex) => {\n return dbIndices.some(\n (dbIndex) =>\n dbIndex[\"INDEX_NAME\"] ===\n uniqueIndex[\"INDEX_NAME\"] &&\n dbIndex[\"COLUMN_NAME\"] !==\n dbColumn[\"COLUMN_NAME\"],\n )\n },\n )\n\n const tableColumn = new TableColumn()\n tableColumn.name = dbColumn[\"COLUMN_NAME\"]\n tableColumn.type =\n dbColumn[\"DATA_TYPE_NAME\"].toLowerCase()\n\n if (\n tableColumn.type === \"dec\" ||\n tableColumn.type === \"decimal\"\n ) {\n // If one of these properties was set, and another was not, Postgres sets '0' in to unspecified property\n // we set 'undefined' in to unspecified property to avoid changing column on sync\n if (\n dbColumn[\"LENGTH\"] !== null &&\n !this.isDefaultColumnPrecision(\n table,\n tableColumn,\n dbColumn[\"LENGTH\"],\n )\n ) {\n tableColumn.precision = dbColumn[\"LENGTH\"]\n } else if (\n dbColumn[\"SCALE\"] !== null &&\n !this.isDefaultColumnScale(\n table,\n tableColumn,\n dbColumn[\"SCALE\"],\n )\n ) {\n tableColumn.precision = undefined\n }\n if (\n dbColumn[\"SCALE\"] !== null &&\n !this.isDefaultColumnScale(\n table,\n tableColumn,\n dbColumn[\"SCALE\"],\n )\n ) {\n tableColumn.scale = dbColumn[\"SCALE\"]\n } else if (\n dbColumn[\"LENGTH\"] !== null &&\n !this.isDefaultColumnPrecision(\n table,\n tableColumn,\n dbColumn[\"LENGTH\"],\n )\n ) {\n tableColumn.scale = undefined\n }\n }\n\n if (\n dbColumn[\"DATA_TYPE_NAME\"].toLowerCase() === \"array\"\n ) {\n tableColumn.isArray = true\n tableColumn.type =\n dbColumn[\"CS_DATA_TYPE_NAME\"].toLowerCase()\n }\n\n // check only columns that have length property\n if (\n this.driver.withLengthColumnTypes.indexOf(\n tableColumn.type as ColumnType,\n ) !== -1 &&\n dbColumn[\"LENGTH\"]\n ) {\n const length = dbColumn[\"LENGTH\"].toString()\n tableColumn.length = !this.isDefaultColumnLength(\n table,\n tableColumn,\n length,\n )\n ? length\n : \"\"\n }\n tableColumn.isUnique =\n columnUniqueIndices.length > 0 &&\n !hasIgnoredIndex &&\n !isConstraintComposite\n tableColumn.isNullable =\n dbColumn[\"IS_NULLABLE\"] === \"TRUE\"\n tableColumn.isPrimary = !!columnConstraints.find(\n (constraint) =>\n constraint[\"IS_PRIMARY_KEY\"] === \"TRUE\",\n )\n tableColumn.isGenerated =\n dbColumn[\"GENERATION_TYPE\"] ===\n \"ALWAYS AS IDENTITY\" ||\n dbColumn[\"GENERATION_TYPE\"] ===\n \"BY DEFAULT AS IDENTITY\"\n if (tableColumn.isGenerated)\n tableColumn.generationStrategy = \"increment\"\n\n if (\n dbColumn[\"DEFAULT_VALUE\"] === null ||\n dbColumn[\"DEFAULT_VALUE\"] === undefined\n ) {\n tableColumn.default = undefined\n } else {\n if (\n tableColumn.type === \"char\" ||\n tableColumn.type === \"nchar\" ||\n tableColumn.type === \"varchar\" ||\n tableColumn.type === \"nvarchar\" ||\n tableColumn.type === \"alphanum\" ||\n tableColumn.type === \"shorttext\"\n ) {\n tableColumn.default = `'${dbColumn[\"DEFAULT_VALUE\"]}'`\n } else if (tableColumn.type === \"boolean\") {\n tableColumn.default =\n dbColumn[\"DEFAULT_VALUE\"] === \"1\"\n ? \"true\"\n : \"false\"\n } else {\n tableColumn.default = dbColumn[\"DEFAULT_VALUE\"]\n }\n }\n\n if (dbColumn[\"GENERATED_ALWAYS_AS\"]) {\n // get generated column expression from typeorm metadata table, as GENERATED_ALWAYS_AS has sanitized expression\n tableColumn.asExpression =\n dbGeneratedColumns.find(\n (gc) => gc.name === dbColumn[\"COLUMN_NAME\"],\n )?.value ??\n dbColumn[\"GENERATED_ALWAYS_AS\"] ??\n \"\"\n }\n\n if (dbColumn[\"COMMENTS\"]) {\n tableColumn.comment = dbColumn[\"COMMENTS\"]\n }\n return tableColumn\n })\n\n // find check constraints of table, group them by constraint name and build TableCheck.\n const tableCheckConstraints = OrmUtils.uniq(\n dbConstraints.filter(\n (dbConstraint) =>\n dbConstraint[\"TABLE_NAME\"] ===\n dbTable[\"TABLE_NAME\"] &&\n dbConstraint[\"SCHEMA_NAME\"] ===\n dbTable[\"SCHEMA_NAME\"] &&\n dbConstraint[\"CHECK_CONDITION\"] !== null &&\n dbConstraint[\"CHECK_CONDITION\"] !== undefined,\n ),\n (dbConstraint) => dbConstraint[\"CONSTRAINT_NAME\"],\n )\n\n table.checks = tableCheckConstraints.map((constraint) => {\n const checks = dbConstraints.filter(\n (dbC) =>\n dbC[\"CONSTRAINT_NAME\"] ===\n constraint[\"CONSTRAINT_NAME\"],\n )\n return new TableCheck({\n name: constraint[\"CONSTRAINT_NAME\"],\n columnNames: checks.map((c) => c[\"COLUMN_NAME\"]),\n expression: constraint[\"CHECK_CONDITION\"],\n })\n })\n\n // find foreign key constraints of table, group them by constraint name and build TableForeignKey.\n const tableForeignKeyConstraints = OrmUtils.uniq(\n dbForeignKeys.filter(\n (dbForeignKey) =>\n dbForeignKey[\"TABLE_NAME\"] ===\n dbTable[\"TABLE_NAME\"] &&\n dbForeignKey[\"SCHEMA_NAME\"] ===\n dbTable[\"SCHEMA_NAME\"],\n ),\n (dbForeignKey) => dbForeignKey[\"CONSTRAINT_NAME\"],\n )\n\n table.foreignKeys = tableForeignKeyConstraints.map(\n (dbForeignKey) => {\n const foreignKeys = dbForeignKeys.filter(\n (dbFk) =>\n dbFk[\"CONSTRAINT_NAME\"] ===\n dbForeignKey[\"CONSTRAINT_NAME\"],\n )\n\n // if referenced table located in currently used schema, we don't need to concat schema name to table name.\n const schema = getSchemaFromKey(\n dbForeignKey,\n \"REFERENCED_SCHEMA_NAME\",\n )\n const referencedTableName = this.driver.buildTableName(\n dbForeignKey[\"REFERENCED_TABLE_NAME\"],\n schema,\n )\n\n return new TableForeignKey({\n name: dbForeignKey[\"CONSTRAINT_NAME\"],\n columnNames: foreignKeys.map(\n (dbFk) => dbFk[\"COLUMN_NAME\"],\n ),\n referencedDatabase: table.database,\n referencedSchema:\n dbForeignKey[\"REFERENCED_SCHEMA_NAME\"],\n referencedTableName: referencedTableName,\n referencedColumnNames: foreignKeys.map(\n (dbFk) => dbFk[\"REFERENCED_COLUMN_NAME\"],\n ),\n onDelete:\n dbForeignKey[\"DELETE_RULE\"] === \"RESTRICT\"\n ? \"NO ACTION\"\n : dbForeignKey[\"DELETE_RULE\"],\n onUpdate:\n dbForeignKey[\"UPDATE_RULE\"] === \"RESTRICT\"\n ? \"NO ACTION\"\n : dbForeignKey[\"UPDATE_RULE\"],\n deferrable: dbForeignKey[\"CHECK_TIME\"].replace(\n \"_\",\n \" \",\n ),\n })\n },\n )\n\n // find index constraints of table, group them by constraint name and build TableIndex.\n const tableIndexConstraints = OrmUtils.uniq(\n dbIndices.filter(\n (dbIndex) =>\n dbIndex[\"TABLE_NAME\"] === dbTable[\"TABLE_NAME\"] &&\n dbIndex[\"SCHEMA_NAME\"] === dbTable[\"SCHEMA_NAME\"],\n ),\n (dbIndex) => dbIndex[\"INDEX_NAME\"],\n )\n\n table.indices = tableIndexConstraints.map((constraint) => {\n const indices = dbIndices.filter((index) => {\n return (\n index[\"SCHEMA_NAME\"] ===\n constraint[\"SCHEMA_NAME\"] &&\n index[\"TABLE_NAME\"] === constraint[\"TABLE_NAME\"] &&\n index[\"INDEX_NAME\"] === constraint[\"INDEX_NAME\"]\n )\n })\n return new TableIndex(<TableIndexOptions>{\n table: table,\n name: constraint[\"INDEX_NAME\"],\n columnNames: indices.map((i) => i[\"COLUMN_NAME\"]),\n isUnique:\n constraint[\"CONSTRAINT\"] &&\n constraint[\"CONSTRAINT\"].indexOf(\"UNIQUE\") !== -1,\n isFulltext: constraint[\"INDEX_TYPE\"] === \"FULLTEXT\",\n })\n })\n\n return table\n }),\n )\n }\n\n /**\n * Builds and returns SQL for create table.\n *\n * @param table\n * @param createForeignKeys\n */\n protected createTableSql(table: Table, createForeignKeys?: boolean): Query {\n const columnDefinitions = table.columns\n .map((column) => this.buildCreateColumnSql(column))\n .join(\", \")\n let sql = `CREATE TABLE ${this.escapePath(table)} (${columnDefinitions}`\n\n // we create unique indexes instead of unique constraints, because SAP HANA does not have unique constraints.\n // if we mark column as Unique, it means that we create UNIQUE INDEX.\n table.columns\n .filter((column) => column.isUnique)\n .forEach((column) => {\n const isUniqueIndexExist = table.indices.some((index) => {\n return (\n index.columnNames.length === 1 &&\n !!index.isUnique &&\n index.columnNames.indexOf(column.name) !== -1\n )\n })\n const isUniqueConstraintExist = table.uniques.some((unique) => {\n return (\n unique.columnNames.length === 1 &&\n unique.columnNames.indexOf(column.name) !== -1\n )\n })\n if (!isUniqueIndexExist && !isUniqueConstraintExist)\n table.indices.push(\n new TableIndex({\n name: this.dataSource.namingStrategy.uniqueConstraintName(\n table,\n [column.name],\n ),\n columnNames: [column.name],\n isUnique: true,\n }),\n )\n })\n\n // as SAP HANA does not have unique constraints, we must create table indices from table uniques and mark them as unique.\n if (table.uniques.length > 0) {\n table.uniques.forEach((unique) => {\n const uniqueExist = table.indices.some(\n (index) => index.name === unique.name,\n )\n if (!uniqueExist) {\n table.indices.push(\n new TableIndex({\n name: unique.name,\n columnNames: unique.columnNames,\n isUnique: true,\n }),\n )\n }\n })\n }\n\n if (table.checks.length > 0) {\n const checksSql = table.checks\n .map((check) => {\n const checkName =\n check.name ??\n this.dataSource.namingStrategy.checkConstraintName(\n table,\n check.expression!,\n )\n return `CONSTRAINT \"${checkName}\" CHECK (${check.expression})`\n })\n .join(\", \")\n\n sql += `, ${checksSql}`\n }\n\n if (table.foreignKeys.length > 0 && createForeignKeys) {\n const foreignKeysSql = table.foreignKeys\n .map((fk) => {\n const columnNames = fk.columnNames\n .map((columnName) => `\"${columnName}\"`)\n .join(\", \")\n fk.name ??= this.dataSource.namingStrategy.foreignKeyName(\n table,\n fk.columnNames,\n this.getTablePath(fk),\n fk.referencedColumnNames,\n )\n const referencedColumnNames = fk.referencedColumnNames\n .map((columnName) => `\"${columnName}\"`)\n .join(\", \")\n\n let constraint = `CONSTRAINT \"${\n fk.name\n }\" FOREIGN KEY (${columnNames}) REFERENCES ${this.escapePath(\n this.getTablePath(fk),\n )} (${referencedColumnNames})`\n // SAP HANA does not have \"NO ACTION\" option for FK's\n if (fk.onDelete) {\n const onDelete =\n fk.onDelete === \"NO ACTION\"\n ? \"RESTRICT\"\n : fk.onDelete\n constraint += ` ON DELETE ${onDelete}`\n }\n if (fk.onUpdate) {\n const onUpdate =\n fk.onUpdate === \"NO ACTION\"\n ? \"RESTRICT\"\n : fk.onUpdate\n constraint += ` ON UPDATE ${onUpdate}`\n }\n if (fk.deferrable) {\n constraint += ` ${fk.deferrable}`\n }\n\n return constraint\n })\n .join(\", \")\n\n sql += `, ${foreignKeysSql}`\n }\n\n const primaryColumns = table.columns.filter(\n (column) => column.isPrimary,\n )\n if (primaryColumns.length > 0) {\n const primaryKeyName =\n this.dataSource.namingStrategy.primaryKeyName(\n table,\n primaryColumns.map((column) => column.name),\n )\n const columnNames = primaryColumns\n .map((column) => `\"${column.name}\"`)\n .join(\", \")\n sql += `, CONSTRAINT \"${primaryKeyName}\" PRIMARY KEY (${columnNames})`\n }\n\n sql += `)`\n\n if (table.comment) {\n sql += ` COMMENT ${this.escapeComment(table.comment)}`\n }\n\n return new Query(sql)\n }\n\n /**\n * Builds drop table sql.\n *\n * @param tableOrName\n * @param ifExists\n */\n protected dropTableSql(\n tableOrName: Table | string,\n ifExists?: boolean,\n ): Query {\n const query = ifExists\n ? `DROP TABLE IF EXISTS ${this.escapePath(tableOrName)}`\n : `DROP TABLE ${this.escapePath(tableOrName)}`\n return new Query(query)\n }\n\n protected createViewSql(view: View): Query {\n if (typeof view.expression === \"string\") {\n return new Query(\n `CREATE VIEW ${this.escapePath(view)} AS ${view.expression}`,\n )\n } else {\n return new Query(\n `CREATE VIEW ${this.escapePath(view)} AS ${view\n .expression(this.dataSource)\n .getQuery()}`,\n )\n }\n }\n\n protected async insertViewDefinitionSql(view: View): Promise<Query> {\n let { schema, tableName: name } = this.driver.parseTableName(view)\n\n schema ??= await this.getCurrentSchema()\n\n const expression =\n typeof view.expression === \"string\"\n ? view.expression.trim()\n : view.expression(this.dataSource).getQuery()\n return this.insertTypeormMetadataSql({\n type: MetadataTableType.VIEW,\n schema: schema,\n name: name,\n value: expression,\n })\n }\n\n /**\n * Builds drop view sql.\n *\n * @param viewOrPath\n */\n protected dropViewSql(viewOrPath: View | string): Query {\n return new Query(`DROP VIEW ${this.escapePath(viewOrPath)}`)\n }\n\n /**\n * Builds remove view sql.\n *\n * @param viewOrPath\n */\n protected async deleteViewDefinitionSql(\n viewOrPath: View | string,\n ): Promise<Query> {\n let { schema, tableName: name } = this.driver.parseTableName(viewOrPath)\n\n schema ??= await this.getCurrentSchema()\n\n return this.deleteTypeormMetadataSql({\n type: MetadataTableType.VIEW,\n schema,\n name,\n })\n }\n\n protected addColumnSql(table: Table, column: TableColumn): string {\n return `ALTER TABLE ${this.escapePath(\n table,\n )} ADD (${this.buildCreateColumnSql(column)})`\n }\n\n protected dropColumnSql(table: Table, column: TableColumn): string {\n return `ALTER TABLE ${this.escapePath(table)} DROP (\"${column.name}\")`\n }\n\n /**\n * Builds create index sql.\n *\n * @param table\n * @param index\n */\n protected createIndexSql(table: Table, index: TableIndex): Query {\n const columns = index.columnNames\n .map((columnName) => `\"${columnName}\"`)\n .join(\", \")\n let indexType = \"\"\n if (index.isUnique) {\n indexType += \"UNIQUE \"\n }\n if (index.isFulltext && this.driver.isFullTextColumnTypeSupported()) {\n indexType += \"FULLTEXT \"\n }\n\n return new Query(\n `CREATE ${indexType}INDEX \"${index.name}\" ON ${this.escapePath(\n table,\n )} (${columns}) ${index.where ? \"WHERE \" + index.where : \"\"}`,\n )\n }\n\n /**\n * Builds drop index sql.\n *\n * @param table\n * @param indexOrName\n */\n protected dropIndexSql(\n table: Table,\n indexOrName: TableIndex | string,\n ): Query {\n const indexName = InstanceChecker.isTableIndex(indexOrName)\n ? indexOrName.name\n : indexOrName\n const parsedTableName = this.driver.parseTableName(table)\n\n if (!parsedTableName.schema) {\n return new Query(`DROP INDEX \"${indexName}\"`)\n } else {\n return new Query(\n `DROP INDEX \"${parsedTableName.schema}\".\"${indexName}\"`,\n )\n }\n }\n\n /**\n * Builds create primary key sql.\n *\n * @param table\n * @param columnNames\n */\n protected createPrimaryKeySql(table: Table, columnNames: string[]): Query {\n const primaryKeyName = this.dataSource.namingStrategy.primaryKeyName(\n table,\n columnNames,\n )\n const columnNamesString = columnNames\n .map((columnName) => `\"${columnName}\"`)\n .join(\", \")\n return new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} ADD CONSTRAINT \"${primaryKeyName}\" PRIMARY KEY (${columnNamesString})`,\n )\n }\n\n /**\n * Builds drop primary key sql.\n *\n * @param table\n */\n protected dropPrimaryKeySql(table: Table): Query {\n const columnNames = table.primaryColumns.map((column) => column.name)\n const primaryKeyName = this.dataSource.namingStrategy.primaryKeyName(\n table,\n columnNames,\n )\n return new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} DROP CONSTRAINT \"${primaryKeyName}\"`,\n )\n }\n\n /**\n * Builds create check constraint sql.\n *\n * @param table\n * @param checkConstraint\n */\n protected createCheckConstraintSql(\n table: Table,\n checkConstraint: TableCheck,\n ): Query {\n return new Query(\n `ALTER TABLE ${this.escapePath(table)} ADD CONSTRAINT \"${\n checkConstraint.name\n }\" CHECK (${checkConstraint.expression})`,\n )\n }\n\n /**\n * Builds drop check constraint sql.\n *\n * @param table\n * @param checkOrName\n */\n protected dropCheckConstraintSql(\n table: Table,\n checkOrName: TableCheck | string,\n ): Query {\n const checkName = InstanceChecker.isTableCheck(checkOrName)\n ? checkOrName.name\n : checkOrName\n return new Query(\n `ALTER TABLE ${this.escapePath(\n table,\n )} DROP CONSTRAINT \"${checkName}\"`,\n )\n }\n\n /**\n * Builds create foreign key sql.\n *\n * @param tableOrName\n * @param foreignKey\n */\n protected createForeignKeySql(\n tableOrName: Table | string,\n foreignKey: TableForeignKey,\n ): Query {\n const columnNames = foreignKey.columnNames\n .map((column) => `\"` + column + `\"`)\n .join(\", \")\n const referencedColumnNames = foreignKey.referencedColumnNames\n .map((column) => `\"` + column + `\"`)\n .join(\",\")\n let sql =\n `ALTER TABLE ${this.escapePath(tableOrName)} ADD CONSTRAINT \"${\n foreignKey.name\n }\" FOREIGN KEY (${columnNames}) ` +\n `REFERENCES ${this.escapePath(\n this.getTablePath(foreignKey),\n )}(${referencedColumnNames})`\n\n // SAP HANA does not have \"NO ACTION\" option for FK's\n if (foreignKey.onDelete) {\n const onDelete =\n foreignKey.onDelete === \"NO ACTION\"\n ? \"RESTRICT\"\n : foreignKey.onDelete\n sql += ` ON DELETE ${onDelete}`\n }\n if (foreignKey.onUpdate) {\n const onUpdate =\n foreignKey.onUpdate === \"NO ACTION\"\n ? \"RESTRICT\"\n : foreignKey.onUpdate\n sql += ` ON UPDATE ${onUpdate}`\n }\n\n if (foreignKey.deferrable) {\n sql += ` ${foreignKey.deferrable}`\n }\n\n return new Query(sql)\n }\n\n /**\n * Builds drop foreign key sql.\n *\n * @param tableOrName\n * @param foreignKeyOrName\n */\n protected dropForeignKeySql(\n tableOrName: Table | string,\n foreignKeyOrName: TableForeignKey | string,\n ): Query {\n const foreignKeyName = InstanceChecker.isTableForeignKey(\n foreignKeyOrName,\n )\n ? foreignKeyOrName.name\n : foreignKeyOrName\n return new Query(\n `ALTER TABLE ${this.escapePath(\n tableOrName,\n )} DROP CONSTRAINT \"${foreignKeyName}\"`,\n )\n }\n\n /**\n * Escapes a given comment so it's safe to include in a query.\n *\n * @param comment\n */\n protected escapeComment(comment?: string) {\n if (!comment || comment.length === 0) {\n return \"NULL\"\n }\n\n comment = comment.replaceAll(\"'\", \"''\").replaceAll(\"\\u0000\", \"\") // Null bytes aren't allowed in comments\n\n return `'${comment}'`\n }\n\n /**\n * Escapes given table or view path.\n *\n * @param target\n */\n protected escapePath(target: Table | View | string): string {\n const { schema, tableName } = this.driver.parseTableName(target)\n\n if (schema) {\n return `\"${schema}\".\"${tableName}\"`\n }\n\n return `\"${tableName}\"`\n }\n\n /**\n * Builds a query for create column.\n *\n * @param column\n * @param explicitDefault\n * @param explicitNullable\n */\n protected buildCreateColumnSql(\n column: TableColumn,\n explicitDefault?: boolean,\n explicitNullable?: boolean,\n ) {\n let c =\n `\"${column.name}\" ` + this.dataSource.driver.createFullType(column)\n if (column.default !== undefined && column.default !== null) {\n c += \" DEFAULT \" + column.default\n } else if (explicitDefault) {\n c += \" DEFAULT NULL\"\n }\n if (!column.isGenerated) {\n // NOT NULL is not supported with GENERATED\n if (column.isNullable !== true) c += \" NOT NULL\"\n else if (explicitNullable) c += \" NULL\"\n }\n if (\n column.isGenerated === true &&\n column.generationStrategy === \"increment\"\n ) {\n // GENERATED BY DEFAULT allows TypeORM to explicitly insert values\n // into identity columns when needed (e.g., synchronize, migrations).\n // GENERATED ALWAYS rejects any explicit value — even the DEFAULT\n // keyword — making it impossible to insert into tables whose only\n // column is an identity column.\n c += \" GENERATED BY DEFAULT AS IDENTITY\"\n }\n\n if (column.asExpression) {\n c += ` GENERATED ALWAYS AS (${column.asExpression})`\n }\n\n if (column.comment) {\n c += ` COMMENT ${this.escapeComment(column.comment)}`\n }\n\n return c\n }\n\n /**\n * Change table comment.\n *\n * @param tableOrName\n * @param newComment\n */\n async changeTableComment(\n tableOrName: Table | string,\n newComment?: string,\n ): Promise<void> {\n const upQueries: Query[] = []\n const downQueries: Query[] = []\n\n const table = InstanceChecker.isTable(tableOrName)\n ? tableOrName\n : await this.getCachedTable(tableOrName)\n\n const escapedNewComment = this.escapeComment(newComment)\n const escapedComment = this.escapeComment(table.comment)\n\n if (escapedNewComment === escapedComment) {\n return\n }\n\n const newTable = table.clone()\n newTable.comment = newComment\n upQueries.push(\n new Query(\n `COMMENT ON TABLE ${this.escapePath(\n newTable,\n )} IS ${escapedNewComment}`,\n ),\n )\n downQueries.push(\n new Query(\n `COMMENT ON TABLE ${this.escapePath(table)} IS ${escapedComment}`,\n ),\n )\n await this.executeQueries(upQueries, downQueries)\n\n table.comment = newTable.comment\n this.replaceCachedTable(table, newTable)\n }\n}\n"]}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Spanner specific connection credential options.
3
+ */
4
+ export interface SpannerConnectionCredentialsOptions {
5
+ /**
6
+ * Connection url where the connection is performed.
7
+ */
8
+ readonly instanceId?: string;
9
+ /**
10
+ * Database host.
11
+ */
12
+ readonly projectId?: string;
13
+ /**
14
+ * Database host port.
15
+ */
16
+ readonly databaseId?: string;
17
+ /**
18
+ * Object containing client_email and private_key properties, or the external account client options. Cannot be used with apiKey.
19
+ */
20
+ readonly credentials?: {
21
+ /**
22
+ * Client email connection credentials (Optional)
23
+ */
24
+ readonly client_email: string;
25
+ /**
26
+ * Private key connection credentials (Optional)
27
+ */
28
+ readonly private_key: string;
29
+ };
30
+ }