typeorm 0.2.45-dev.f3cfdd2 → 0.2.45

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 (498) hide show
  1. package/browser/cache/DbQueryResultCache.js +6 -6
  2. package/browser/cache/DbQueryResultCache.js.map +1 -1
  3. package/browser/cache/RedisQueryResultCache.js +2 -2
  4. package/browser/cache/RedisQueryResultCache.js.map +1 -1
  5. package/browser/connection/Connection.js +2 -2
  6. package/browser/connection/Connection.js.map +1 -1
  7. package/browser/connection/ConnectionOptionsReader.js +2 -2
  8. package/browser/connection/ConnectionOptionsReader.js.map +1 -1
  9. package/browser/driver/aurora-data-api/AuroraDataApiDriver.js +10 -10
  10. package/browser/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
  11. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js +157 -157
  12. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  13. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +3 -3
  14. package/browser/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
  15. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js +4 -4
  16. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  17. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js +2 -2
  18. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  19. package/browser/driver/capacitor/CapacitorDriver.js +1 -1
  20. package/browser/driver/capacitor/CapacitorDriver.js.map +1 -1
  21. package/browser/driver/capacitor/CapacitorQueryRunner.js +1 -1
  22. package/browser/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
  23. package/browser/driver/cockroachdb/CockroachDriver.js +6 -6
  24. package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
  25. package/browser/driver/cockroachdb/CockroachQueryRunner.js +153 -153
  26. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  27. package/browser/driver/cordova/CordovaQueryRunner.js +1 -1
  28. package/browser/driver/cordova/CordovaQueryRunner.js.map +1 -1
  29. package/browser/driver/expo/ExpoQueryRunner.js +3 -3
  30. package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
  31. package/browser/driver/mongodb/MongoDriver.js +4 -4
  32. package/browser/driver/mongodb/MongoDriver.js.map +1 -1
  33. package/browser/driver/mysql/MysqlDriver.js +11 -11
  34. package/browser/driver/mysql/MysqlDriver.js.map +1 -1
  35. package/browser/driver/mysql/MysqlQueryRunner.js +163 -163
  36. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  37. package/browser/driver/nativescript/NativescriptQueryRunner.js +1 -1
  38. package/browser/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
  39. package/browser/driver/oracle/OracleDriver.js +10 -10
  40. package/browser/driver/oracle/OracleDriver.js.map +1 -1
  41. package/browser/driver/oracle/OracleQueryRunner.js +124 -124
  42. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  43. package/browser/driver/postgres/PostgresDriver.js +18 -18
  44. package/browser/driver/postgres/PostgresDriver.js.map +1 -1
  45. package/browser/driver/postgres/PostgresQueryRunner.js +229 -229
  46. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  47. package/browser/driver/react-native/ReactNativeQueryRunner.js +1 -1
  48. package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  49. package/browser/driver/sap/SapDriver.js +9 -9
  50. package/browser/driver/sap/SapDriver.js.map +1 -1
  51. package/browser/driver/sap/SapQueryRunner.js +126 -126
  52. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  53. package/browser/driver/sqlite/SqliteDriver.js +4 -4
  54. package/browser/driver/sqlite/SqliteDriver.js.map +1 -1
  55. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +3 -3
  56. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  57. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +61 -61
  58. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  59. package/browser/driver/sqljs/SqljsDriver.js +3 -3
  60. package/browser/driver/sqljs/SqljsDriver.js.map +1 -1
  61. package/browser/driver/sqlserver/SqlServerDriver.js +11 -11
  62. package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
  63. package/browser/driver/sqlserver/SqlServerQueryRunner.js +203 -203
  64. package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  65. package/browser/entity-manager/EntityManager.js +4 -4
  66. package/browser/entity-manager/EntityManager.js.map +1 -1
  67. package/browser/entity-manager/MongoEntityManager.js +1 -1
  68. package/browser/entity-manager/MongoEntityManager.js.map +1 -1
  69. package/browser/entity-schema/EntitySchemaEmbeddedError.js +2 -2
  70. package/browser/entity-schema/EntitySchemaEmbeddedError.js.map +1 -1
  71. package/browser/error/AlreadyHasActiveConnectionError.js +1 -1
  72. package/browser/error/AlreadyHasActiveConnectionError.js.map +1 -1
  73. package/browser/error/CannotAttachTreeChildrenEntityError.js +1 -1
  74. package/browser/error/CannotAttachTreeChildrenEntityError.js.map +1 -1
  75. package/browser/error/CannotConnectAlreadyConnectedError.js +1 -1
  76. package/browser/error/CannotConnectAlreadyConnectedError.js.map +1 -1
  77. package/browser/error/CannotCreateEntityIdMapError.js +1 -1
  78. package/browser/error/CannotCreateEntityIdMapError.js.map +1 -1
  79. package/browser/error/CannotDetermineEntityError.js +1 -1
  80. package/browser/error/CannotDetermineEntityError.js.map +1 -1
  81. package/browser/error/CannotExecuteNotConnectedError.js +1 -1
  82. package/browser/error/CannotExecuteNotConnectedError.js.map +1 -1
  83. package/browser/error/CannotGetEntityManagerNotConnectedError.js +1 -1
  84. package/browser/error/CannotGetEntityManagerNotConnectedError.js.map +1 -1
  85. package/browser/error/CannotReflectMethodParameterTypeError.js +1 -1
  86. package/browser/error/CannotReflectMethodParameterTypeError.js.map +1 -1
  87. package/browser/error/CircularRelationsError.js +1 -1
  88. package/browser/error/CircularRelationsError.js.map +1 -1
  89. package/browser/error/ColumnTypeUndefinedError.js +1 -1
  90. package/browser/error/ColumnTypeUndefinedError.js.map +1 -1
  91. package/browser/error/ConnectionIsNotSetError.js +1 -1
  92. package/browser/error/ConnectionIsNotSetError.js.map +1 -1
  93. package/browser/error/ConnectionNotFoundError.js +1 -1
  94. package/browser/error/ConnectionNotFoundError.js.map +1 -1
  95. package/browser/error/CustomRepositoryCannotInheritRepositoryError.js +1 -1
  96. package/browser/error/CustomRepositoryCannotInheritRepositoryError.js.map +1 -1
  97. package/browser/error/CustomRepositoryDoesNotHaveEntityError.js +1 -1
  98. package/browser/error/CustomRepositoryDoesNotHaveEntityError.js.map +1 -1
  99. package/browser/error/CustomRepositoryNotFoundError.js +1 -1
  100. package/browser/error/CustomRepositoryNotFoundError.js.map +1 -1
  101. package/browser/error/DataTypeNotSupportedError.js +1 -1
  102. package/browser/error/DataTypeNotSupportedError.js.map +1 -1
  103. package/browser/error/DriverOptionNotSetError.js +1 -1
  104. package/browser/error/DriverOptionNotSetError.js.map +1 -1
  105. package/browser/error/DriverPackageNotInstalledError.js +2 -2
  106. package/browser/error/DriverPackageNotInstalledError.js.map +1 -1
  107. package/browser/error/EntityColumnNotFound.js +1 -1
  108. package/browser/error/EntityColumnNotFound.js.map +1 -1
  109. package/browser/error/EntityMetadataNotFoundError.js +1 -1
  110. package/browser/error/EntityMetadataNotFoundError.js.map +1 -1
  111. package/browser/error/EntityNotFoundError.js +2 -2
  112. package/browser/error/EntityNotFoundError.js.map +1 -1
  113. package/browser/error/FindRelationsNotFoundError.js +2 -2
  114. package/browser/error/FindRelationsNotFoundError.js.map +1 -1
  115. package/browser/error/InitializedRelationError.js +1 -1
  116. package/browser/error/InitializedRelationError.js.map +1 -1
  117. package/browser/error/MissingDeleteDateColumnError.js +1 -1
  118. package/browser/error/MissingDeleteDateColumnError.js.map +1 -1
  119. package/browser/error/MissingDriverError.js +2 -2
  120. package/browser/error/MissingDriverError.js.map +1 -1
  121. package/browser/error/MissingJoinColumnError.js +3 -3
  122. package/browser/error/MissingJoinColumnError.js.map +1 -1
  123. package/browser/error/MissingJoinTableError.js +3 -3
  124. package/browser/error/MissingJoinTableError.js.map +1 -1
  125. package/browser/error/MissingPrimaryColumnError.js +1 -1
  126. package/browser/error/MissingPrimaryColumnError.js.map +1 -1
  127. package/browser/error/MustBeEntityError.js +1 -1
  128. package/browser/error/MustBeEntityError.js.map +1 -1
  129. package/browser/error/NamingStrategyNotFoundError.js +2 -2
  130. package/browser/error/NamingStrategyNotFoundError.js.map +1 -1
  131. package/browser/error/NoConnectionForRepositoryError.js +1 -1
  132. package/browser/error/NoConnectionForRepositoryError.js.map +1 -1
  133. package/browser/error/NoConnectionOptionError.js +2 -2
  134. package/browser/error/NoConnectionOptionError.js.map +1 -1
  135. package/browser/error/NoVersionOrUpdateDateColumnError.js +1 -1
  136. package/browser/error/NoVersionOrUpdateDateColumnError.js.map +1 -1
  137. package/browser/error/OptimisticLockVersionMismatchError.js +1 -1
  138. package/browser/error/OptimisticLockVersionMismatchError.js.map +1 -1
  139. package/browser/error/PrimaryColumnCannotBeNullableError.js +1 -1
  140. package/browser/error/PrimaryColumnCannotBeNullableError.js.map +1 -1
  141. package/browser/error/RepositoryNotFoundError.js +2 -2
  142. package/browser/error/RepositoryNotFoundError.js.map +1 -1
  143. package/browser/error/RepositoryNotTreeError.js +1 -1
  144. package/browser/error/RepositoryNotTreeError.js.map +1 -1
  145. package/browser/error/SubjectRemovedAndUpdatedError.js +1 -1
  146. package/browser/error/SubjectRemovedAndUpdatedError.js.map +1 -1
  147. package/browser/error/SubjectWithoutIdentifierError.js +1 -1
  148. package/browser/error/SubjectWithoutIdentifierError.js.map +1 -1
  149. package/browser/error/TreeRepositoryNotSupportedError.js +1 -1
  150. package/browser/error/TreeRepositoryNotSupportedError.js.map +1 -1
  151. package/browser/error/UsingJoinColumnIsNotAllowedError.js +1 -1
  152. package/browser/error/UsingJoinColumnIsNotAllowedError.js.map +1 -1
  153. package/browser/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +1 -1
  154. package/browser/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -1
  155. package/browser/error/UsingJoinTableIsNotAllowedError.js +2 -2
  156. package/browser/error/UsingJoinTableIsNotAllowedError.js.map +1 -1
  157. package/browser/error/UsingJoinTableOnlyOnOneSideAllowedError.js +1 -1
  158. package/browser/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -1
  159. package/browser/find-options/FindOptionsUtils.js +6 -6
  160. package/browser/find-options/FindOptionsUtils.js.map +1 -1
  161. package/browser/logger/FileLogger.js +3 -3
  162. package/browser/logger/FileLogger.js.map +1 -1
  163. package/browser/metadata/EmbeddedMetadata.js +1 -1
  164. package/browser/metadata/EmbeddedMetadata.js.map +1 -1
  165. package/browser/metadata/IndexMetadata.js +1 -1
  166. package/browser/metadata/IndexMetadata.js.map +1 -1
  167. package/browser/metadata/RelationCountMetadata.js +1 -1
  168. package/browser/metadata/RelationCountMetadata.js.map +1 -1
  169. package/browser/metadata/RelationIdMetadata.js +1 -1
  170. package/browser/metadata/RelationIdMetadata.js.map +1 -1
  171. package/browser/metadata/UniqueMetadata.js +1 -1
  172. package/browser/metadata/UniqueMetadata.js.map +1 -1
  173. package/browser/metadata-builder/EntityMetadataBuilder.js +1 -1
  174. package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  175. package/browser/metadata-builder/EntityMetadataValidator.js +9 -9
  176. package/browser/metadata-builder/EntityMetadataValidator.js.map +1 -1
  177. package/browser/metadata-builder/JunctionEntityMetadataBuilder.js +2 -2
  178. package/browser/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
  179. package/browser/metadata-builder/RelationJoinColumnBuilder.js +1 -1
  180. package/browser/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
  181. package/browser/migration/MigrationExecutor.js +16 -16
  182. package/browser/migration/MigrationExecutor.js.map +1 -1
  183. package/browser/naming-strategy/DefaultNamingStrategy.js +11 -11
  184. package/browser/naming-strategy/DefaultNamingStrategy.js.map +1 -1
  185. package/browser/persistence/tree/ClosureSubjectExecutor.js +17 -17
  186. package/browser/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
  187. package/browser/persistence/tree/MaterializedPathSubjectExecutor.js +2 -2
  188. package/browser/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
  189. package/browser/persistence/tree/NestedSetSubjectExecutor.js +44 -44
  190. package/browser/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
  191. package/browser/platform/BrowserPlatformTools.js +9 -9
  192. package/browser/platform/BrowserPlatformTools.js.map +1 -1
  193. package/browser/platform/PlatformTools.js +1 -1
  194. package/browser/platform/PlatformTools.js.map +1 -1
  195. package/browser/query-builder/Alias.js +1 -1
  196. package/browser/query-builder/Alias.js.map +1 -1
  197. package/browser/query-builder/DeleteQueryBuilder.js +3 -3
  198. package/browser/query-builder/DeleteQueryBuilder.js.map +1 -1
  199. package/browser/query-builder/InsertQueryBuilder.js +22 -22
  200. package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
  201. package/browser/query-builder/JoinAttribute.js +1 -1
  202. package/browser/query-builder/JoinAttribute.js.map +1 -1
  203. package/browser/query-builder/QueryBuilder.js +39 -39
  204. package/browser/query-builder/QueryBuilder.js.map +1 -1
  205. package/browser/query-builder/QueryExpressionMap.js +2 -2
  206. package/browser/query-builder/QueryExpressionMap.js.map +1 -1
  207. package/browser/query-builder/RelationLoader.js +7 -7
  208. package/browser/query-builder/RelationLoader.js.map +1 -1
  209. package/browser/query-builder/RelationQueryBuilder.js +3 -3
  210. package/browser/query-builder/RelationQueryBuilder.js.map +1 -1
  211. package/browser/query-builder/RelationRemover.js +4 -4
  212. package/browser/query-builder/RelationRemover.js.map +1 -1
  213. package/browser/query-builder/RelationUpdater.js +1 -1
  214. package/browser/query-builder/RelationUpdater.js.map +1 -1
  215. package/browser/query-builder/SelectQueryBuilder.js +23 -23
  216. package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
  217. package/browser/query-builder/SoftDeleteQueryBuilder.js +4 -4
  218. package/browser/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  219. package/browser/query-builder/UpdateQueryBuilder.js +8 -8
  220. package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
  221. package/browser/query-builder/relation-count/RelationCountAttribute.js +1 -1
  222. package/browser/query-builder/relation-count/RelationCountAttribute.js.map +1 -1
  223. package/browser/query-builder/relation-id/RelationIdAttribute.js +1 -1
  224. package/browser/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
  225. package/browser/query-builder/relation-id/RelationIdLoader.js +4 -4
  226. package/browser/query-builder/relation-id/RelationIdLoader.js.map +1 -1
  227. package/browser/query-runner/BaseQueryRunner.js +7 -7
  228. package/browser/query-runner/BaseQueryRunner.js.map +1 -1
  229. package/browser/repository/TreeRepository.js +7 -7
  230. package/browser/repository/TreeRepository.js.map +1 -1
  231. package/browser/schema-builder/RdbmsSchemaBuilder.js +19 -19
  232. package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  233. package/browser/subscriber/Broadcaster.js +1 -1
  234. package/browser/subscriber/Broadcaster.js.map +1 -1
  235. package/browser/util/DateUtils.js +1 -1
  236. package/browser/util/DateUtils.js.map +1 -1
  237. package/browser/util/DepGraph.js +7 -7
  238. package/browser/util/DepGraph.js.map +1 -1
  239. package/browser/util/DirectoryExportedClassesLoader.js +2 -2
  240. package/browser/util/DirectoryExportedClassesLoader.js.map +1 -1
  241. package/browser/util/PathUtils.js +1 -1
  242. package/browser/util/PathUtils.js.map +1 -1
  243. package/cache/DbQueryResultCache.js +6 -6
  244. package/cache/DbQueryResultCache.js.map +1 -1
  245. package/cache/RedisQueryResultCache.js +2 -2
  246. package/cache/RedisQueryResultCache.js.map +1 -1
  247. package/cli.js +0 -0
  248. package/commands/CommandUtils.js +1 -1
  249. package/commands/CommandUtils.js.map +1 -1
  250. package/commands/EntityCreateCommand.js +3 -3
  251. package/commands/EntityCreateCommand.js.map +1 -1
  252. package/commands/InitCommand.js +6 -6
  253. package/commands/InitCommand.js.map +1 -1
  254. package/commands/MigrationCreateCommand.js +3 -3
  255. package/commands/MigrationCreateCommand.js.map +1 -1
  256. package/commands/MigrationGenerateCommand.js +8 -8
  257. package/commands/MigrationGenerateCommand.js.map +1 -1
  258. package/commands/SchemaLogCommand.js +1 -1
  259. package/commands/SchemaLogCommand.js.map +1 -1
  260. package/commands/SubscriberCreateCommand.js +2 -2
  261. package/commands/SubscriberCreateCommand.js.map +1 -1
  262. package/connection/Connection.js +2 -2
  263. package/connection/Connection.js.map +1 -1
  264. package/connection/ConnectionOptionsReader.js +2 -2
  265. package/connection/ConnectionOptionsReader.js.map +1 -1
  266. package/driver/aurora-data-api/AuroraDataApiDriver.js +10 -10
  267. package/driver/aurora-data-api/AuroraDataApiDriver.js.map +1 -1
  268. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js +157 -157
  269. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  270. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +3 -3
  271. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
  272. package/driver/better-sqlite3/BetterSqlite3Driver.js +4 -4
  273. package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  274. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +2 -2
  275. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  276. package/driver/capacitor/CapacitorDriver.js +1 -1
  277. package/driver/capacitor/CapacitorDriver.js.map +1 -1
  278. package/driver/capacitor/CapacitorQueryRunner.js +1 -1
  279. package/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
  280. package/driver/cockroachdb/CockroachDriver.js +6 -6
  281. package/driver/cockroachdb/CockroachDriver.js.map +1 -1
  282. package/driver/cockroachdb/CockroachQueryRunner.js +153 -153
  283. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  284. package/driver/cordova/CordovaQueryRunner.js +1 -1
  285. package/driver/cordova/CordovaQueryRunner.js.map +1 -1
  286. package/driver/expo/ExpoQueryRunner.js +3 -3
  287. package/driver/expo/ExpoQueryRunner.js.map +1 -1
  288. package/driver/mongodb/MongoDriver.js +4 -4
  289. package/driver/mongodb/MongoDriver.js.map +1 -1
  290. package/driver/mysql/MysqlDriver.js +11 -11
  291. package/driver/mysql/MysqlDriver.js.map +1 -1
  292. package/driver/mysql/MysqlQueryRunner.js +163 -163
  293. package/driver/mysql/MysqlQueryRunner.js.map +1 -1
  294. package/driver/nativescript/NativescriptQueryRunner.js +1 -1
  295. package/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
  296. package/driver/oracle/OracleDriver.js +10 -10
  297. package/driver/oracle/OracleDriver.js.map +1 -1
  298. package/driver/oracle/OracleQueryRunner.js +124 -124
  299. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  300. package/driver/postgres/PostgresDriver.js +18 -18
  301. package/driver/postgres/PostgresDriver.js.map +1 -1
  302. package/driver/postgres/PostgresQueryRunner.js +229 -229
  303. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  304. package/driver/react-native/ReactNativeQueryRunner.js +1 -1
  305. package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  306. package/driver/sap/SapDriver.js +9 -9
  307. package/driver/sap/SapDriver.js.map +1 -1
  308. package/driver/sap/SapQueryRunner.js +126 -126
  309. package/driver/sap/SapQueryRunner.js.map +1 -1
  310. package/driver/sqlite/SqliteDriver.js +4 -4
  311. package/driver/sqlite/SqliteDriver.js.map +1 -1
  312. package/driver/sqlite-abstract/AbstractSqliteDriver.js +3 -3
  313. package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  314. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +61 -61
  315. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  316. package/driver/sqljs/SqljsDriver.js +3 -3
  317. package/driver/sqljs/SqljsDriver.js.map +1 -1
  318. package/driver/sqlserver/SqlServerDriver.js +11 -11
  319. package/driver/sqlserver/SqlServerDriver.js.map +1 -1
  320. package/driver/sqlserver/SqlServerQueryRunner.js +203 -203
  321. package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  322. package/entity-manager/EntityManager.js +4 -4
  323. package/entity-manager/EntityManager.js.map +1 -1
  324. package/entity-manager/MongoEntityManager.js +1 -1
  325. package/entity-manager/MongoEntityManager.js.map +1 -1
  326. package/entity-schema/EntitySchemaEmbeddedError.js +2 -2
  327. package/entity-schema/EntitySchemaEmbeddedError.js.map +1 -1
  328. package/error/AlreadyHasActiveConnectionError.js +1 -1
  329. package/error/AlreadyHasActiveConnectionError.js.map +1 -1
  330. package/error/CannotAttachTreeChildrenEntityError.js +1 -1
  331. package/error/CannotAttachTreeChildrenEntityError.js.map +1 -1
  332. package/error/CannotConnectAlreadyConnectedError.js +1 -1
  333. package/error/CannotConnectAlreadyConnectedError.js.map +1 -1
  334. package/error/CannotCreateEntityIdMapError.js +1 -1
  335. package/error/CannotCreateEntityIdMapError.js.map +1 -1
  336. package/error/CannotDetermineEntityError.js +1 -1
  337. package/error/CannotDetermineEntityError.js.map +1 -1
  338. package/error/CannotExecuteNotConnectedError.js +1 -1
  339. package/error/CannotExecuteNotConnectedError.js.map +1 -1
  340. package/error/CannotGetEntityManagerNotConnectedError.js +1 -1
  341. package/error/CannotGetEntityManagerNotConnectedError.js.map +1 -1
  342. package/error/CannotReflectMethodParameterTypeError.js +1 -1
  343. package/error/CannotReflectMethodParameterTypeError.js.map +1 -1
  344. package/error/CircularRelationsError.js +1 -1
  345. package/error/CircularRelationsError.js.map +1 -1
  346. package/error/ColumnTypeUndefinedError.js +1 -1
  347. package/error/ColumnTypeUndefinedError.js.map +1 -1
  348. package/error/ConnectionIsNotSetError.js +1 -1
  349. package/error/ConnectionIsNotSetError.js.map +1 -1
  350. package/error/ConnectionNotFoundError.js +1 -1
  351. package/error/ConnectionNotFoundError.js.map +1 -1
  352. package/error/CustomRepositoryCannotInheritRepositoryError.js +1 -1
  353. package/error/CustomRepositoryCannotInheritRepositoryError.js.map +1 -1
  354. package/error/CustomRepositoryDoesNotHaveEntityError.js +1 -1
  355. package/error/CustomRepositoryDoesNotHaveEntityError.js.map +1 -1
  356. package/error/CustomRepositoryNotFoundError.js +1 -1
  357. package/error/CustomRepositoryNotFoundError.js.map +1 -1
  358. package/error/DataTypeNotSupportedError.js +1 -1
  359. package/error/DataTypeNotSupportedError.js.map +1 -1
  360. package/error/DriverOptionNotSetError.js +1 -1
  361. package/error/DriverOptionNotSetError.js.map +1 -1
  362. package/error/DriverPackageNotInstalledError.js +2 -2
  363. package/error/DriverPackageNotInstalledError.js.map +1 -1
  364. package/error/EntityColumnNotFound.js +1 -1
  365. package/error/EntityColumnNotFound.js.map +1 -1
  366. package/error/EntityMetadataNotFoundError.js +1 -1
  367. package/error/EntityMetadataNotFoundError.js.map +1 -1
  368. package/error/EntityNotFoundError.js +2 -2
  369. package/error/EntityNotFoundError.js.map +1 -1
  370. package/error/FindRelationsNotFoundError.js +2 -2
  371. package/error/FindRelationsNotFoundError.js.map +1 -1
  372. package/error/InitializedRelationError.js +1 -1
  373. package/error/InitializedRelationError.js.map +1 -1
  374. package/error/MissingDeleteDateColumnError.js +1 -1
  375. package/error/MissingDeleteDateColumnError.js.map +1 -1
  376. package/error/MissingDriverError.js +2 -2
  377. package/error/MissingDriverError.js.map +1 -1
  378. package/error/MissingJoinColumnError.js +3 -3
  379. package/error/MissingJoinColumnError.js.map +1 -1
  380. package/error/MissingJoinTableError.js +3 -3
  381. package/error/MissingJoinTableError.js.map +1 -1
  382. package/error/MissingPrimaryColumnError.js +1 -1
  383. package/error/MissingPrimaryColumnError.js.map +1 -1
  384. package/error/MustBeEntityError.js +1 -1
  385. package/error/MustBeEntityError.js.map +1 -1
  386. package/error/NamingStrategyNotFoundError.js +2 -2
  387. package/error/NamingStrategyNotFoundError.js.map +1 -1
  388. package/error/NoConnectionForRepositoryError.js +1 -1
  389. package/error/NoConnectionForRepositoryError.js.map +1 -1
  390. package/error/NoConnectionOptionError.js +2 -2
  391. package/error/NoConnectionOptionError.js.map +1 -1
  392. package/error/NoVersionOrUpdateDateColumnError.js +1 -1
  393. package/error/NoVersionOrUpdateDateColumnError.js.map +1 -1
  394. package/error/OptimisticLockVersionMismatchError.js +1 -1
  395. package/error/OptimisticLockVersionMismatchError.js.map +1 -1
  396. package/error/PrimaryColumnCannotBeNullableError.js +1 -1
  397. package/error/PrimaryColumnCannotBeNullableError.js.map +1 -1
  398. package/error/RepositoryNotFoundError.js +2 -2
  399. package/error/RepositoryNotFoundError.js.map +1 -1
  400. package/error/RepositoryNotTreeError.js +1 -1
  401. package/error/RepositoryNotTreeError.js.map +1 -1
  402. package/error/SubjectRemovedAndUpdatedError.js +1 -1
  403. package/error/SubjectRemovedAndUpdatedError.js.map +1 -1
  404. package/error/SubjectWithoutIdentifierError.js +1 -1
  405. package/error/SubjectWithoutIdentifierError.js.map +1 -1
  406. package/error/TreeRepositoryNotSupportedError.js +1 -1
  407. package/error/TreeRepositoryNotSupportedError.js.map +1 -1
  408. package/error/UsingJoinColumnIsNotAllowedError.js +1 -1
  409. package/error/UsingJoinColumnIsNotAllowedError.js.map +1 -1
  410. package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +1 -1
  411. package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -1
  412. package/error/UsingJoinTableIsNotAllowedError.js +2 -2
  413. package/error/UsingJoinTableIsNotAllowedError.js.map +1 -1
  414. package/error/UsingJoinTableOnlyOnOneSideAllowedError.js +1 -1
  415. package/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -1
  416. package/find-options/FindOptionsUtils.js +6 -6
  417. package/find-options/FindOptionsUtils.js.map +1 -1
  418. package/logger/FileLogger.js +3 -3
  419. package/logger/FileLogger.js.map +1 -1
  420. package/metadata/EmbeddedMetadata.js +1 -1
  421. package/metadata/EmbeddedMetadata.js.map +1 -1
  422. package/metadata/IndexMetadata.js +1 -1
  423. package/metadata/IndexMetadata.js.map +1 -1
  424. package/metadata/RelationCountMetadata.js +1 -1
  425. package/metadata/RelationCountMetadata.js.map +1 -1
  426. package/metadata/RelationIdMetadata.js +1 -1
  427. package/metadata/RelationIdMetadata.js.map +1 -1
  428. package/metadata/UniqueMetadata.js +1 -1
  429. package/metadata/UniqueMetadata.js.map +1 -1
  430. package/metadata-builder/EntityMetadataBuilder.js +1 -1
  431. package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  432. package/metadata-builder/EntityMetadataValidator.js +9 -9
  433. package/metadata-builder/EntityMetadataValidator.js.map +1 -1
  434. package/metadata-builder/JunctionEntityMetadataBuilder.js +2 -2
  435. package/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
  436. package/metadata-builder/RelationJoinColumnBuilder.js +1 -1
  437. package/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
  438. package/migration/MigrationExecutor.js +16 -16
  439. package/migration/MigrationExecutor.js.map +1 -1
  440. package/naming-strategy/DefaultNamingStrategy.js +11 -11
  441. package/naming-strategy/DefaultNamingStrategy.js.map +1 -1
  442. package/package.json +260 -1
  443. package/persistence/tree/ClosureSubjectExecutor.js +17 -17
  444. package/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
  445. package/persistence/tree/MaterializedPathSubjectExecutor.js +2 -2
  446. package/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
  447. package/persistence/tree/NestedSetSubjectExecutor.js +44 -44
  448. package/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
  449. package/platform/PlatformTools.js +1 -1
  450. package/platform/PlatformTools.js.map +1 -1
  451. package/query-builder/Alias.js +1 -1
  452. package/query-builder/Alias.js.map +1 -1
  453. package/query-builder/DeleteQueryBuilder.js +3 -3
  454. package/query-builder/DeleteQueryBuilder.js.map +1 -1
  455. package/query-builder/InsertQueryBuilder.js +22 -22
  456. package/query-builder/InsertQueryBuilder.js.map +1 -1
  457. package/query-builder/JoinAttribute.js +1 -1
  458. package/query-builder/JoinAttribute.js.map +1 -1
  459. package/query-builder/QueryBuilder.js +39 -39
  460. package/query-builder/QueryBuilder.js.map +1 -1
  461. package/query-builder/QueryExpressionMap.js +2 -2
  462. package/query-builder/QueryExpressionMap.js.map +1 -1
  463. package/query-builder/RelationLoader.js +7 -7
  464. package/query-builder/RelationLoader.js.map +1 -1
  465. package/query-builder/RelationQueryBuilder.js +3 -3
  466. package/query-builder/RelationQueryBuilder.js.map +1 -1
  467. package/query-builder/RelationRemover.js +4 -4
  468. package/query-builder/RelationRemover.js.map +1 -1
  469. package/query-builder/RelationUpdater.js +1 -1
  470. package/query-builder/RelationUpdater.js.map +1 -1
  471. package/query-builder/SelectQueryBuilder.js +23 -23
  472. package/query-builder/SelectQueryBuilder.js.map +1 -1
  473. package/query-builder/SoftDeleteQueryBuilder.js +4 -4
  474. package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  475. package/query-builder/UpdateQueryBuilder.js +8 -8
  476. package/query-builder/UpdateQueryBuilder.js.map +1 -1
  477. package/query-builder/relation-count/RelationCountAttribute.js +1 -1
  478. package/query-builder/relation-count/RelationCountAttribute.js.map +1 -1
  479. package/query-builder/relation-id/RelationIdAttribute.js +1 -1
  480. package/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
  481. package/query-builder/relation-id/RelationIdLoader.js +4 -4
  482. package/query-builder/relation-id/RelationIdLoader.js.map +1 -1
  483. package/query-runner/BaseQueryRunner.js +7 -7
  484. package/query-runner/BaseQueryRunner.js.map +1 -1
  485. package/repository/TreeRepository.js +7 -7
  486. package/repository/TreeRepository.js.map +1 -1
  487. package/schema-builder/RdbmsSchemaBuilder.js +19 -19
  488. package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  489. package/subscriber/Broadcaster.js +1 -1
  490. package/subscriber/Broadcaster.js.map +1 -1
  491. package/util/DateUtils.js +1 -1
  492. package/util/DateUtils.js.map +1 -1
  493. package/util/DepGraph.js +7 -7
  494. package/util/DepGraph.js.map +1 -1
  495. package/util/DirectoryExportedClassesLoader.js +2 -2
  496. package/util/DirectoryExportedClassesLoader.js.map +1 -1
  497. package/util/PathUtils.js +1 -1
  498. package/util/PathUtils.js.map +1 -1
@@ -83,7 +83,7 @@ var AuroraDataApiPostgresQueryRunner = /** @class */ (function (_super) {
83
83
  case 5:
84
84
  _a.sent();
85
85
  return [3 /*break*/, 8];
86
- case 6: return [4 /*yield*/, this.query("SAVEPOINT typeorm_" + this.transactionDepth)];
86
+ case 6: return [4 /*yield*/, this.query("SAVEPOINT typeorm_".concat(this.transactionDepth))];
87
87
  case 7:
88
88
  _a.sent();
89
89
  _a.label = 8;
@@ -112,7 +112,7 @@ var AuroraDataApiPostgresQueryRunner = /** @class */ (function (_super) {
112
112
  case 1:
113
113
  _a.sent();
114
114
  if (!(this.transactionDepth > 1)) return [3 /*break*/, 3];
115
- return [4 /*yield*/, this.query("RELEASE SAVEPOINT typeorm_" + (this.transactionDepth - 1))];
115
+ return [4 /*yield*/, this.query("RELEASE SAVEPOINT typeorm_".concat(this.transactionDepth - 1))];
116
116
  case 2:
117
117
  _a.sent();
118
118
  return [3 /*break*/, 5];
@@ -146,7 +146,7 @@ var AuroraDataApiPostgresQueryRunner = /** @class */ (function (_super) {
146
146
  case 1:
147
147
  _a.sent();
148
148
  if (!(this.transactionDepth > 1)) return [3 /*break*/, 3];
149
- return [4 /*yield*/, this.query("ROLLBACK TO SAVEPOINT typeorm_" + (this.transactionDepth - 1))];
149
+ return [4 /*yield*/, this.query("ROLLBACK TO SAVEPOINT typeorm_".concat(this.transactionDepth - 1))];
150
150
  case 2:
151
151
  _a.sent();
152
152
  return [3 /*break*/, 5];
@@ -1 +1 @@
1
- {"version":3,"sources":["../browser/src/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.ts"],"names":[],"mappings":"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","file":"AuroraDataApiPostgresQueryRunner.js","sourcesContent":["import {QueryRunnerAlreadyReleasedError} from \"../../error/QueryRunnerAlreadyReleasedError\";\nimport {TransactionNotStartedError} from \"../../error/TransactionNotStartedError\";\nimport {QueryRunner} from \"../../query-runner/QueryRunner\";\nimport {IsolationLevel} from \"../types/IsolationLevel\";\nimport {AuroraDataApiPostgresDriver} from \"./AuroraDataApiPostgresDriver\";\nimport {PostgresQueryRunner} from \"../postgres/PostgresQueryRunner\";\nimport {ReplicationMode} from \"../types/ReplicationMode\";\nimport {QueryResult} from \"../../query-runner/QueryResult\";\n\nclass PostgresQueryRunnerWrapper extends PostgresQueryRunner {\n driver: any;\n\n constructor(driver: any, mode: ReplicationMode) {\n super(driver, mode);\n }\n}\n\n/**\n * Runs queries on a single postgres database connection.\n */\nexport class AuroraDataApiPostgresQueryRunner extends PostgresQueryRunnerWrapper implements QueryRunner {\n\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Database driver used by connection.\n */\n driver: AuroraDataApiPostgresDriver;\n\n protected client: any;\n\n // -------------------------------------------------------------------------\n // Protected Properties\n // -------------------------------------------------------------------------\n\n /**\n * Promise used to obtain a database connection for a first time.\n */\n protected databaseConnectionPromise: Promise<any>;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: AuroraDataApiPostgresDriver, client: any, mode: ReplicationMode) {\n super(driver, mode);\n\n this.client = client\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 connect(): Promise<any> {\n if (this.databaseConnection)\n return Promise.resolve(this.databaseConnection);\n\n if (this.databaseConnectionPromise)\n return this.databaseConnectionPromise;\n\n if (this.mode === \"slave\" && this.driver.isReplicated) {\n this.databaseConnectionPromise = this.driver.obtainSlaveConnection().then(([ connection, release]: any[]) => {\n this.driver.connectedQueryRunners.push(this);\n this.databaseConnection = connection;\n this.releaseCallback = release;\n return this.databaseConnection;\n });\n\n } else { // master\n this.databaseConnectionPromise = this.driver.obtainMasterConnection().then(([connection, release]: any[]) => {\n this.driver.connectedQueryRunners.push(this);\n this.databaseConnection = connection;\n this.releaseCallback = release;\n return this.databaseConnection;\n });\n }\n\n return this.databaseConnectionPromise;\n }\n\n /**\n * Starts transaction on the current connection.\n */\n async startTransaction(isolationLevel?: IsolationLevel): Promise<void> {\n this.isTransactionActive = true;\n try {\n await this.broadcaster.broadcast('BeforeTransactionStart');\n } catch (err) {\n this.isTransactionActive = false;\n throw err;\n }\n\n if (this.transactionDepth === 0) {\n await this.client.startTransaction();\n } else {\n await this.query(`SAVEPOINT typeorm_${this.transactionDepth}`);\n }\n this.transactionDepth += 1;\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.isTransactionActive)\n throw new TransactionNotStartedError();\n\n await this.broadcaster.broadcast('BeforeTransactionCommit');\n\n if (this.transactionDepth > 1) {\n await this.query(`RELEASE SAVEPOINT typeorm_${this.transactionDepth - 1}`);\n } else {\n await this.client.commitTransaction();\n this.isTransactionActive = false;\n }\n this.transactionDepth -= 1;\n\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.isTransactionActive)\n throw new TransactionNotStartedError();\n\n await this.broadcaster.broadcast('BeforeTransactionRollback');\n\n if (this.transactionDepth > 1) {\n await this.query(`ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth - 1}`);\n } else {\n await this.client.rollbackTransaction();\n this.isTransactionActive = false;\n }\n this.transactionDepth -= 1;\n\n await this.broadcaster.broadcast('AfterTransactionRollback');\n }\n\n /**\n * Executes a given SQL query.\n */\n async query(query: string, parameters?: any[], useStructuredResult = false): Promise<any> {\n if (this.isReleased)\n throw new QueryRunnerAlreadyReleasedError();\n\n const raw = await this.client.query(query, parameters);\n\n const result = new QueryResult();\n\n result.raw = raw;\n\n if (raw?.hasOwnProperty('records') && Array.isArray(raw.records)) {\n result.records = raw.records;\n }\n\n if (raw?.hasOwnProperty('numberOfRecordsUpdated')) {\n result.affected = raw.numberOfRecordsUpdated;\n }\n\n if (!useStructuredResult) {\n return result.raw;\n }\n\n return result;\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../browser/src/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.ts"],"names":[],"mappings":"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","file":"AuroraDataApiPostgresQueryRunner.js","sourcesContent":["import {QueryRunnerAlreadyReleasedError} from \"../../error/QueryRunnerAlreadyReleasedError\";\nimport {TransactionNotStartedError} from \"../../error/TransactionNotStartedError\";\nimport {QueryRunner} from \"../../query-runner/QueryRunner\";\nimport {IsolationLevel} from \"../types/IsolationLevel\";\nimport {AuroraDataApiPostgresDriver} from \"./AuroraDataApiPostgresDriver\";\nimport {PostgresQueryRunner} from \"../postgres/PostgresQueryRunner\";\nimport {ReplicationMode} from \"../types/ReplicationMode\";\nimport {QueryResult} from \"../../query-runner/QueryResult\";\n\nclass PostgresQueryRunnerWrapper extends PostgresQueryRunner {\n driver: any;\n\n constructor(driver: any, mode: ReplicationMode) {\n super(driver, mode);\n }\n}\n\n/**\n * Runs queries on a single postgres database connection.\n */\nexport class AuroraDataApiPostgresQueryRunner extends PostgresQueryRunnerWrapper implements QueryRunner {\n\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Database driver used by connection.\n */\n driver: AuroraDataApiPostgresDriver;\n\n protected client: any;\n\n // -------------------------------------------------------------------------\n // Protected Properties\n // -------------------------------------------------------------------------\n\n /**\n * Promise used to obtain a database connection for a first time.\n */\n protected databaseConnectionPromise: Promise<any>;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: AuroraDataApiPostgresDriver, client: any, mode: ReplicationMode) {\n super(driver, mode);\n\n this.client = client\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 connect(): Promise<any> {\n if (this.databaseConnection)\n return Promise.resolve(this.databaseConnection);\n\n if (this.databaseConnectionPromise)\n return this.databaseConnectionPromise;\n\n if (this.mode === \"slave\" && this.driver.isReplicated) {\n this.databaseConnectionPromise = this.driver.obtainSlaveConnection().then(([ connection, release]: any[]) => {\n this.driver.connectedQueryRunners.push(this);\n this.databaseConnection = connection;\n this.releaseCallback = release;\n return this.databaseConnection;\n });\n\n } else { // master\n this.databaseConnectionPromise = this.driver.obtainMasterConnection().then(([connection, release]: any[]) => {\n this.driver.connectedQueryRunners.push(this);\n this.databaseConnection = connection;\n this.releaseCallback = release;\n return this.databaseConnection;\n });\n }\n\n return this.databaseConnectionPromise;\n }\n\n /**\n * Starts transaction on the current connection.\n */\n async startTransaction(isolationLevel?: IsolationLevel): Promise<void> {\n this.isTransactionActive = true;\n try {\n await this.broadcaster.broadcast('BeforeTransactionStart');\n } catch (err) {\n this.isTransactionActive = false;\n throw err;\n }\n\n if (this.transactionDepth === 0) {\n await this.client.startTransaction();\n } else {\n await this.query(`SAVEPOINT typeorm_${this.transactionDepth}`);\n }\n this.transactionDepth += 1;\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.isTransactionActive)\n throw new TransactionNotStartedError();\n\n await this.broadcaster.broadcast('BeforeTransactionCommit');\n\n if (this.transactionDepth > 1) {\n await this.query(`RELEASE SAVEPOINT typeorm_${this.transactionDepth - 1}`);\n } else {\n await this.client.commitTransaction();\n this.isTransactionActive = false;\n }\n this.transactionDepth -= 1;\n\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.isTransactionActive)\n throw new TransactionNotStartedError();\n\n await this.broadcaster.broadcast('BeforeTransactionRollback');\n\n if (this.transactionDepth > 1) {\n await this.query(`ROLLBACK TO SAVEPOINT typeorm_${this.transactionDepth - 1}`);\n } else {\n await this.client.rollbackTransaction();\n this.isTransactionActive = false;\n }\n this.transactionDepth -= 1;\n\n await this.broadcaster.broadcast('AfterTransactionRollback');\n }\n\n /**\n * Executes a given SQL query.\n */\n async query(query: string, parameters?: any[], useStructuredResult = false): Promise<any> {\n if (this.isReleased)\n throw new QueryRunnerAlreadyReleasedError();\n\n const raw = await this.client.query(query, parameters);\n\n const result = new QueryResult();\n\n result.raw = raw;\n\n if (raw?.hasOwnProperty('records') && Array.isArray(raw.records)) {\n result.records = raw.records;\n }\n\n if (raw?.hasOwnProperty('numberOfRecordsUpdated')) {\n result.affected = raw.numberOfRecordsUpdated;\n }\n\n if (!useStructuredResult) {\n return result.raw;\n }\n\n return result;\n }\n}\n"],"sourceRoot":"../.."}
@@ -70,7 +70,7 @@ var BetterSqlite3Driver = /** @class */ (function (_super) {
70
70
  if (!database)
71
71
  return tableName;
72
72
  if (this.getAttachedDatabaseHandleByRelativePath(database))
73
- return this.getAttachedDatabaseHandleByRelativePath(database) + "." + tableName;
73
+ return "".concat(this.getAttachedDatabaseHandleByRelativePath(database), ".").concat(tableName);
74
74
  if (database === this.options.database)
75
75
  return tableName;
76
76
  // we use the decorated name as supplied when deriving attach handle (ideally without non-portable absolute path)
@@ -82,7 +82,7 @@ var BetterSqlite3Driver = /** @class */ (function (_super) {
82
82
  attachFilepathRelative: database,
83
83
  attachHandle: identifierHash,
84
84
  };
85
- return identifierHash + "." + tableName;
85
+ return "".concat(identifierHash, ".").concat(tableName);
86
86
  };
87
87
  // -------------------------------------------------------------------------
88
88
  // Protected Methods
@@ -107,7 +107,7 @@ var BetterSqlite3Driver = /** @class */ (function (_super) {
107
107
  // in the options, if encryption key for SQLCipher is setted.
108
108
  // Must invoke key pragma before trying to do any other interaction with the database.
109
109
  if (this.options.key) {
110
- databaseConnection.exec("PRAGMA key = " + JSON.stringify(this.options.key));
110
+ databaseConnection.exec("PRAGMA key = ".concat(JSON.stringify(this.options.key)));
111
111
  }
112
112
  // function to run before a database is used in typeorm.
113
113
  if (typeof prepareDatabase === "function") {
@@ -173,7 +173,7 @@ var BetterSqlite3Driver = /** @class */ (function (_super) {
173
173
  return [4 /*yield*/, this.createDatabaseDirectory(path.dirname(attachFilepathAbsolute))];
174
174
  case 3:
175
175
  _e.sent();
176
- return [4 /*yield*/, this.connection.query("ATTACH \"" + attachFilepathAbsolute + "\" AS \"" + attachHandle + "\"")];
176
+ return [4 /*yield*/, this.connection.query("ATTACH \"".concat(attachFilepathAbsolute, "\" AS \"").concat(attachHandle, "\""))];
177
177
  case 4:
178
178
  _e.sent();
179
179
  _e.label = 5;
@@ -1 +1 @@
1
- {"version":3,"sources":["../browser/src/driver/better-sqlite3/BetterSqlite3Driver.ts"],"names":[],"mappings":"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","file":"BetterSqlite3Driver.js","sourcesContent":["import mkdirp from \"mkdirp\";\nimport path from \"path\";\nimport { DriverPackageNotInstalledError } from \"../../error/DriverPackageNotInstalledError\";\nimport { DriverOptionNotSetError } from \"../../error/DriverOptionNotSetError\";\nimport { PlatformTools } from \"../../platform/PlatformTools\";\nimport { Connection } from \"../../connection/Connection\";\nimport { ColumnType } from \"../types/ColumnTypes\";\nimport { QueryRunner } from \"../../query-runner/QueryRunner\";\nimport { AbstractSqliteDriver } from \"../sqlite-abstract/AbstractSqliteDriver\";\nimport { BetterSqlite3ConnectionOptions } from \"./BetterSqlite3ConnectionOptions\";\nimport { BetterSqlite3QueryRunner } from \"./BetterSqlite3QueryRunner\";\nimport {ReplicationMode} from \"../types/ReplicationMode\";\nimport { filepathToName, isAbsolute } from \"../../util/PathUtils\";\n\n/**\n * Organizes communication with sqlite DBMS.\n */\nexport class BetterSqlite3Driver extends AbstractSqliteDriver {\n\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Connection options.\n */\n options: BetterSqlite3ConnectionOptions;\n\n /**\n * SQLite underlying library.\n */\n sqlite: any;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(connection: Connection) {\n super(connection);\n\n this.connection = connection;\n this.options = connection.options as BetterSqlite3ConnectionOptions;\n this.database = this.options.database;\n\n // validate options to make sure everything is set\n if (!this.options.database)\n throw new DriverOptionNotSetError(\"database\");\n\n // load sqlite package\n this.loadDependencies();\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Closes connection with database.\n */\n async disconnect(): Promise<void> {\n this.queryRunner = undefined;\n this.databaseConnection.close();\n }\n\n /**\n * Creates a query runner used to execute database queries.\n */\n createQueryRunner(mode: ReplicationMode): QueryRunner {\n if (!this.queryRunner)\n this.queryRunner = new BetterSqlite3QueryRunner(this);\n\n return this.queryRunner;\n }\n\n normalizeType(column: { type?: ColumnType, length?: number | string, precision?: number | null, scale?: number }): string {\n if ((column.type as any) === Buffer) {\n return \"blob\";\n }\n\n return super.normalizeType(column);\n }\n\n async afterConnect(): Promise<void> {\n return this.attachDatabases();\n }\n\n /**\n * For SQLite, the database may be added in the decorator metadata. It will be a filepath to a database file.\n */\n buildTableName(tableName: string, _schema?: string, database?: string): string {\n\n if (!database) return tableName;\n if (this.getAttachedDatabaseHandleByRelativePath(database)) return `${this.getAttachedDatabaseHandleByRelativePath(database)}.${tableName}`;\n\n if (database === this.options.database) return tableName;\n\n // we use the decorated name as supplied when deriving attach handle (ideally without non-portable absolute path)\n const identifierHash = filepathToName(database);\n // decorated name will be assumed relative to main database file when non absolute. Paths supplied as absolute won't be portable\n const absFilepath = isAbsolute(database) ? database : path.join(this.getMainDatabasePath(), database);\n\n this.attachedDatabases[database] = {\n attachFilepathAbsolute: absFilepath,\n attachFilepathRelative: database,\n attachHandle: identifierHash,\n };\n\n return `${identifierHash}.${tableName}`;\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates connection with the database.\n */\n protected async createDatabaseConnection() {\n // not to create database directory if is in memory\n if (this.options.database !== \":memory:\")\n await this.createDatabaseDirectory(path.dirname(this.options.database));\n\n const {\n database,\n readonly = false,\n fileMustExist = false,\n timeout = 5000,\n verbose = null,\n prepareDatabase\n } = this.options;\n const databaseConnection = this.sqlite(database, { readonly, fileMustExist, timeout, verbose });\n // in the options, if encryption key for SQLCipher is setted.\n // Must invoke key pragma before trying to do any other interaction with the database.\n if (this.options.key) {\n databaseConnection.exec(`PRAGMA key = ${JSON.stringify(this.options.key)}`);\n }\n\n // function to run before a database is used in typeorm.\n if (typeof prepareDatabase === \"function\") {\n prepareDatabase(databaseConnection);\n }\n\n // we need to enable foreign keys in sqlite to make sure all foreign key related features\n // working properly. this also makes onDelete to work with sqlite.\n databaseConnection.exec(`PRAGMA foreign_keys = ON`);\n\n // turn on WAL mode to enhance performance\n databaseConnection.exec(`PRAGMA journal_mode = WAL`);\n\n return databaseConnection;\n }\n\n /**\n * If driver dependency is not given explicitly, then try to load it via \"require\".\n */\n protected loadDependencies(): void {\n try {\n const sqlite = this.options.driver || PlatformTools.load(\"better-sqlite3\");\n this.sqlite = sqlite;\n\n } catch (e) {\n throw new DriverPackageNotInstalledError(\"SQLite\", \"better-sqlite3\");\n }\n }\n\n /**\n * Auto creates database directory if it does not exist.\n */\n protected async createDatabaseDirectory(dbPath: string): Promise<void> {\n await mkdirp(dbPath);\n }\n\n /**\n * Performs the attaching of the database files. The attachedDatabase should have been populated during calls to #buildTableName\n * during EntityMetadata production (see EntityMetadata#buildTablePath)\n *\n * https://sqlite.org/lang_attach.html\n */\n protected async attachDatabases() {\n\n // @todo - possibly check number of databases (but unqueriable at runtime sadly) - https://www.sqlite.org/limits.html#max_attached\n for await (const {attachHandle, attachFilepathAbsolute} of Object.values(this.attachedDatabases)) {\n await this.createDatabaseDirectory(path.dirname(attachFilepathAbsolute));\n await this.connection.query(`ATTACH \"${attachFilepathAbsolute}\" AS \"${attachHandle}\"`);\n }\n }\n\n protected getMainDatabasePath(): string {\n const optionsDb = this.options.database;\n return path.dirname(isAbsolute(optionsDb) ? optionsDb : path.join(this.options.baseDirectory!, optionsDb));\n }\n\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../browser/src/driver/better-sqlite3/BetterSqlite3Driver.ts"],"names":[],"mappings":"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","file":"BetterSqlite3Driver.js","sourcesContent":["import mkdirp from \"mkdirp\";\nimport path from \"path\";\nimport { DriverPackageNotInstalledError } from \"../../error/DriverPackageNotInstalledError\";\nimport { DriverOptionNotSetError } from \"../../error/DriverOptionNotSetError\";\nimport { PlatformTools } from \"../../platform/PlatformTools\";\nimport { Connection } from \"../../connection/Connection\";\nimport { ColumnType } from \"../types/ColumnTypes\";\nimport { QueryRunner } from \"../../query-runner/QueryRunner\";\nimport { AbstractSqliteDriver } from \"../sqlite-abstract/AbstractSqliteDriver\";\nimport { BetterSqlite3ConnectionOptions } from \"./BetterSqlite3ConnectionOptions\";\nimport { BetterSqlite3QueryRunner } from \"./BetterSqlite3QueryRunner\";\nimport {ReplicationMode} from \"../types/ReplicationMode\";\nimport { filepathToName, isAbsolute } from \"../../util/PathUtils\";\n\n/**\n * Organizes communication with sqlite DBMS.\n */\nexport class BetterSqlite3Driver extends AbstractSqliteDriver {\n\n // -------------------------------------------------------------------------\n // Public Implemented Properties\n // -------------------------------------------------------------------------\n\n /**\n * Connection options.\n */\n options: BetterSqlite3ConnectionOptions;\n\n /**\n * SQLite underlying library.\n */\n sqlite: any;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(connection: Connection) {\n super(connection);\n\n this.connection = connection;\n this.options = connection.options as BetterSqlite3ConnectionOptions;\n this.database = this.options.database;\n\n // validate options to make sure everything is set\n if (!this.options.database)\n throw new DriverOptionNotSetError(\"database\");\n\n // load sqlite package\n this.loadDependencies();\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Closes connection with database.\n */\n async disconnect(): Promise<void> {\n this.queryRunner = undefined;\n this.databaseConnection.close();\n }\n\n /**\n * Creates a query runner used to execute database queries.\n */\n createQueryRunner(mode: ReplicationMode): QueryRunner {\n if (!this.queryRunner)\n this.queryRunner = new BetterSqlite3QueryRunner(this);\n\n return this.queryRunner;\n }\n\n normalizeType(column: { type?: ColumnType, length?: number | string, precision?: number | null, scale?: number }): string {\n if ((column.type as any) === Buffer) {\n return \"blob\";\n }\n\n return super.normalizeType(column);\n }\n\n async afterConnect(): Promise<void> {\n return this.attachDatabases();\n }\n\n /**\n * For SQLite, the database may be added in the decorator metadata. It will be a filepath to a database file.\n */\n buildTableName(tableName: string, _schema?: string, database?: string): string {\n\n if (!database) return tableName;\n if (this.getAttachedDatabaseHandleByRelativePath(database)) return `${this.getAttachedDatabaseHandleByRelativePath(database)}.${tableName}`;\n\n if (database === this.options.database) return tableName;\n\n // we use the decorated name as supplied when deriving attach handle (ideally without non-portable absolute path)\n const identifierHash = filepathToName(database);\n // decorated name will be assumed relative to main database file when non absolute. Paths supplied as absolute won't be portable\n const absFilepath = isAbsolute(database) ? database : path.join(this.getMainDatabasePath(), database);\n\n this.attachedDatabases[database] = {\n attachFilepathAbsolute: absFilepath,\n attachFilepathRelative: database,\n attachHandle: identifierHash,\n };\n\n return `${identifierHash}.${tableName}`;\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates connection with the database.\n */\n protected async createDatabaseConnection() {\n // not to create database directory if is in memory\n if (this.options.database !== \":memory:\")\n await this.createDatabaseDirectory(path.dirname(this.options.database));\n\n const {\n database,\n readonly = false,\n fileMustExist = false,\n timeout = 5000,\n verbose = null,\n prepareDatabase\n } = this.options;\n const databaseConnection = this.sqlite(database, { readonly, fileMustExist, timeout, verbose });\n // in the options, if encryption key for SQLCipher is setted.\n // Must invoke key pragma before trying to do any other interaction with the database.\n if (this.options.key) {\n databaseConnection.exec(`PRAGMA key = ${JSON.stringify(this.options.key)}`);\n }\n\n // function to run before a database is used in typeorm.\n if (typeof prepareDatabase === \"function\") {\n prepareDatabase(databaseConnection);\n }\n\n // we need to enable foreign keys in sqlite to make sure all foreign key related features\n // working properly. this also makes onDelete to work with sqlite.\n databaseConnection.exec(`PRAGMA foreign_keys = ON`);\n\n // turn on WAL mode to enhance performance\n databaseConnection.exec(`PRAGMA journal_mode = WAL`);\n\n return databaseConnection;\n }\n\n /**\n * If driver dependency is not given explicitly, then try to load it via \"require\".\n */\n protected loadDependencies(): void {\n try {\n const sqlite = this.options.driver || PlatformTools.load(\"better-sqlite3\");\n this.sqlite = sqlite;\n\n } catch (e) {\n throw new DriverPackageNotInstalledError(\"SQLite\", \"better-sqlite3\");\n }\n }\n\n /**\n * Auto creates database directory if it does not exist.\n */\n protected async createDatabaseDirectory(dbPath: string): Promise<void> {\n await mkdirp(dbPath);\n }\n\n /**\n * Performs the attaching of the database files. The attachedDatabase should have been populated during calls to #buildTableName\n * during EntityMetadata production (see EntityMetadata#buildTablePath)\n *\n * https://sqlite.org/lang_attach.html\n */\n protected async attachDatabases() {\n\n // @todo - possibly check number of databases (but unqueriable at runtime sadly) - https://www.sqlite.org/limits.html#max_attached\n for await (const {attachHandle, attachFilepathAbsolute} of Object.values(this.attachedDatabases)) {\n await this.createDatabaseDirectory(path.dirname(attachFilepathAbsolute));\n await this.connection.query(`ATTACH \"${attachFilepathAbsolute}\" AS \"${attachHandle}\"`);\n }\n }\n\n protected getMainDatabasePath(): string {\n const optionsDb = this.options.database;\n return path.dirname(isAbsolute(optionsDb) ? optionsDb : path.join(this.options.baseDirectory!, optionsDb));\n }\n\n}\n"],"sourceRoot":"../.."}
@@ -154,7 +154,7 @@ var BetterSqlite3QueryRunner = /** @class */ (function (_super) {
154
154
  switch (_b.label) {
155
155
  case 0:
156
156
  _a = __read(this.splitTablePath(tablePath), 2), database = _a[0], tableName = _a[1];
157
- return [4 /*yield*/, this.query("SELECT " + (database ? "'" + database + "'" : null) + " as database, * FROM " + this.escapePath((database ? database + "." : "") + "sqlite_master") + " WHERE \"type\" = '" + tableOrIndex + "' AND \"" + (tableOrIndex === "table" ? "name" : "tbl_name") + "\" IN ('" + tableName + "')")];
157
+ return [4 /*yield*/, this.query("SELECT ".concat(database ? "'".concat(database, "'") : null, " as database, * FROM ").concat(this.escapePath("".concat(database ? "".concat(database, ".") : "", "sqlite_master")), " WHERE \"type\" = '").concat(tableOrIndex, "' AND \"").concat(tableOrIndex === "table" ? "name" : "tbl_name", "\" IN ('").concat(tableName, "')"))];
158
158
  case 1:
159
159
  res = _b.sent();
160
160
  return [2 /*return*/, res];
@@ -169,7 +169,7 @@ var BetterSqlite3QueryRunner = /** @class */ (function (_super) {
169
169
  switch (_b.label) {
170
170
  case 0:
171
171
  _a = __read(this.splitTablePath(tablePath), 2), database = _a[0], tableName = _a[1];
172
- return [4 /*yield*/, this.query("PRAGMA " + (database ? "\"" + database + "\"." : "") + pragma + "(\"" + tableName + "\")")];
172
+ return [4 /*yield*/, this.query("PRAGMA ".concat(database ? "\"".concat(database, "\".") : "").concat(pragma, "(\"").concat(tableName, "\")"))];
173
173
  case 1:
174
174
  res = _b.sent();
175
175
  return [2 /*return*/, res];
@@ -1 +1 @@
1
- {"version":3,"sources":["../browser/src/driver/better-sqlite3/BetterSqlite3QueryRunner.ts"],"names":[],"mappings":"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","file":"BetterSqlite3QueryRunner.js","sourcesContent":["import { QueryRunnerAlreadyReleasedError } from \"../../error/QueryRunnerAlreadyReleasedError\";\nimport { QueryFailedError } from \"../../error/QueryFailedError\";\nimport { AbstractSqliteQueryRunner } from \"../sqlite-abstract/AbstractSqliteQueryRunner\";\nimport { Broadcaster } from \"../../subscriber/Broadcaster\";\nimport { BetterSqlite3Driver } from \"./BetterSqlite3Driver\";\nimport { QueryResult } from \"../../query-runner/QueryResult\";\n\n/**\n * Runs queries on a single sqlite database connection.\n *\n * Does not support compose primary keys with autoincrement field.\n * todo: need to throw exception for this case.\n */\nexport class BetterSqlite3QueryRunner extends AbstractSqliteQueryRunner {\n\n /**\n * Database driver used by connection.\n */\n driver: BetterSqlite3Driver;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: BetterSqlite3Driver) {\n super();\n this.driver = driver;\n this.connection = driver.connection;\n this.broadcaster = new Broadcaster(this);\n if (typeof this.driver.options.statementCacheSize === \"number\") {\n this.cacheSize = this.driver.options.statementCacheSize;\n } else {\n this.cacheSize = 100;\n }\n }\n\n private cacheSize: number;\n private stmtCache = new Map<string, any>();\n\n private async getStmt(query: string) {\n if (this.cacheSize > 0) {\n let stmt = this.stmtCache.get(query);\n if (!stmt) {\n const databaseConnection = await this.connect();\n stmt = databaseConnection.prepare(query);\n this.stmtCache.set(query, stmt);\n while (this.stmtCache.size > this.cacheSize) {\n // since es6 map keeps the insertion order,\n // it comes to be FIFO cache\n const key = this.stmtCache.keys().next().value;\n this.stmtCache.delete(key);\n }\n }\n return stmt;\n } else {\n const databaseConnection = await this.connect();\n return databaseConnection.prepare(query);\n }\n }\n\n /**\n * Called before migrations are run.\n */\n async beforeMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = OFF`);\n }\n\n /**\n * Called after migrations are run.\n */\n async afterMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = ON`);\n }\n\n /**\n * Executes a given SQL query.\n */\n async query(query: string, parameters?: any[], useStructuredResult = false): Promise<any> {\n if (this.isReleased)\n throw new QueryRunnerAlreadyReleasedError();\n\n const connection = this.driver.connection;\n\n parameters = parameters || [];\n for (let i = 0; i < parameters.length; i++) {\n // in \"where\" clauses the parameters are not escaped by the driver\n if (typeof parameters[i] === \"boolean\")\n parameters[i] = +parameters[i];\n }\n\n this.driver.connection.logger.logQuery(query, parameters, this);\n const queryStartTime = +new Date();\n\n const stmt = await this.getStmt(query);\n\n try {\n const result = new QueryResult();\n\n if (stmt.reader) {\n const raw = stmt.all.apply(stmt, parameters);\n\n result.raw = raw;\n\n if (Array.isArray(raw)) {\n result.records = raw;\n }\n\n } else {\n const raw = stmt.run.apply(stmt, parameters);\n result.affected = raw.changes;\n result.raw = raw.lastInsertRowid;\n }\n\n // log slow queries if maxQueryExecution time is set\n const maxQueryExecutionTime = this.driver.options.maxQueryExecutionTime;\n const queryEndTime = +new Date();\n const queryExecutionTime = queryEndTime - queryStartTime;\n if (maxQueryExecutionTime && queryExecutionTime > maxQueryExecutionTime)\n connection.logger.logQuerySlow(queryExecutionTime, query, parameters, this);\n\n if (!useStructuredResult) {\n return result.raw;\n }\n\n return result;\n } catch (err) {\n connection.logger.logQueryError(err, query, parameters, this);\n throw new QueryFailedError(query, parameters, err);\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n protected async loadTableRecords(tablePath: string, tableOrIndex: \"table\" | \"index\") {\n const [database, tableName] = this.splitTablePath(tablePath);\n const res = await this.query(`SELECT ${database ? `'${database}'` : null} as database, * FROM ${this.escapePath(`${database ? `${database}.` : \"\"}sqlite_master`)} WHERE \"type\" = '${tableOrIndex}' AND \"${tableOrIndex === \"table\" ? \"name\" : \"tbl_name\"}\" IN ('${tableName}')`);\n return res;\n }\n protected async loadPragmaRecords(tablePath: string, pragma: string) {\n const [database, tableName] = this.splitTablePath(tablePath);\n const res = await this.query(`PRAGMA ${database ? `\"${database}\".` : \"\"}${pragma}(\"${tableName}\")`);\n return res;\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../browser/src/driver/better-sqlite3/BetterSqlite3QueryRunner.ts"],"names":[],"mappings":"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","file":"BetterSqlite3QueryRunner.js","sourcesContent":["import { QueryRunnerAlreadyReleasedError } from \"../../error/QueryRunnerAlreadyReleasedError\";\nimport { QueryFailedError } from \"../../error/QueryFailedError\";\nimport { AbstractSqliteQueryRunner } from \"../sqlite-abstract/AbstractSqliteQueryRunner\";\nimport { Broadcaster } from \"../../subscriber/Broadcaster\";\nimport { BetterSqlite3Driver } from \"./BetterSqlite3Driver\";\nimport { QueryResult } from \"../../query-runner/QueryResult\";\n\n/**\n * Runs queries on a single sqlite database connection.\n *\n * Does not support compose primary keys with autoincrement field.\n * todo: need to throw exception for this case.\n */\nexport class BetterSqlite3QueryRunner extends AbstractSqliteQueryRunner {\n\n /**\n * Database driver used by connection.\n */\n driver: BetterSqlite3Driver;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: BetterSqlite3Driver) {\n super();\n this.driver = driver;\n this.connection = driver.connection;\n this.broadcaster = new Broadcaster(this);\n if (typeof this.driver.options.statementCacheSize === \"number\") {\n this.cacheSize = this.driver.options.statementCacheSize;\n } else {\n this.cacheSize = 100;\n }\n }\n\n private cacheSize: number;\n private stmtCache = new Map<string, any>();\n\n private async getStmt(query: string) {\n if (this.cacheSize > 0) {\n let stmt = this.stmtCache.get(query);\n if (!stmt) {\n const databaseConnection = await this.connect();\n stmt = databaseConnection.prepare(query);\n this.stmtCache.set(query, stmt);\n while (this.stmtCache.size > this.cacheSize) {\n // since es6 map keeps the insertion order,\n // it comes to be FIFO cache\n const key = this.stmtCache.keys().next().value;\n this.stmtCache.delete(key);\n }\n }\n return stmt;\n } else {\n const databaseConnection = await this.connect();\n return databaseConnection.prepare(query);\n }\n }\n\n /**\n * Called before migrations are run.\n */\n async beforeMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = OFF`);\n }\n\n /**\n * Called after migrations are run.\n */\n async afterMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = ON`);\n }\n\n /**\n * Executes a given SQL query.\n */\n async query(query: string, parameters?: any[], useStructuredResult = false): Promise<any> {\n if (this.isReleased)\n throw new QueryRunnerAlreadyReleasedError();\n\n const connection = this.driver.connection;\n\n parameters = parameters || [];\n for (let i = 0; i < parameters.length; i++) {\n // in \"where\" clauses the parameters are not escaped by the driver\n if (typeof parameters[i] === \"boolean\")\n parameters[i] = +parameters[i];\n }\n\n this.driver.connection.logger.logQuery(query, parameters, this);\n const queryStartTime = +new Date();\n\n const stmt = await this.getStmt(query);\n\n try {\n const result = new QueryResult();\n\n if (stmt.reader) {\n const raw = stmt.all.apply(stmt, parameters);\n\n result.raw = raw;\n\n if (Array.isArray(raw)) {\n result.records = raw;\n }\n\n } else {\n const raw = stmt.run.apply(stmt, parameters);\n result.affected = raw.changes;\n result.raw = raw.lastInsertRowid;\n }\n\n // log slow queries if maxQueryExecution time is set\n const maxQueryExecutionTime = this.driver.options.maxQueryExecutionTime;\n const queryEndTime = +new Date();\n const queryExecutionTime = queryEndTime - queryStartTime;\n if (maxQueryExecutionTime && queryExecutionTime > maxQueryExecutionTime)\n connection.logger.logQuerySlow(queryExecutionTime, query, parameters, this);\n\n if (!useStructuredResult) {\n return result.raw;\n }\n\n return result;\n } catch (err) {\n connection.logger.logQueryError(err, query, parameters, this);\n throw new QueryFailedError(query, parameters, err);\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n protected async loadTableRecords(tablePath: string, tableOrIndex: \"table\" | \"index\") {\n const [database, tableName] = this.splitTablePath(tablePath);\n const res = await this.query(`SELECT ${database ? `'${database}'` : null} as database, * FROM ${this.escapePath(`${database ? `${database}.` : \"\"}sqlite_master`)} WHERE \"type\" = '${tableOrIndex}' AND \"${tableOrIndex === \"table\" ? \"name\" : \"tbl_name\"}\" IN ('${tableName}')`);\n return res;\n }\n protected async loadPragmaRecords(tablePath: string, pragma: string) {\n const [database, tableName] = this.splitTablePath(tablePath);\n const res = await this.query(`PRAGMA ${database ? `\"${database}\".` : \"\"}${pragma}(\"${tableName}\")`);\n return res;\n }\n}\n"],"sourceRoot":"../.."}
@@ -101,7 +101,7 @@ var CapacitorDriver = /** @class */ (function (_super) {
101
101
  _a.sent();
102
102
  if (!(this.options.journalMode &&
103
103
  ["DELETE", "TRUNCATE", "PERSIST", "MEMORY", "WAL", "OFF"].indexOf(this.options.journalMode) !== -1)) return [3 /*break*/, 5];
104
- return [4 /*yield*/, connection.query("PRAGMA journal_mode = " + this.options.journalMode)];
104
+ return [4 /*yield*/, connection.query("PRAGMA journal_mode = ".concat(this.options.journalMode))];
105
105
  case 4:
106
106
  _a.sent();
107
107
  _a.label = 5;
@@ -1 +1 @@
1
- {"version":3,"sources":["../browser/src/driver/capacitor/CapacitorDriver.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAE/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAG9D,OAAO,EACH,uBAAuB,EACvB,8BAA8B,GACjC,MAAM,aAAa,CAAC;AAGrB;IAAqC,mCAAoB;IAIrD,4EAA4E;IAC5E,cAAc;IACd,4EAA4E;IAE5E,yBAAY,UAAsB;QAAlC,YACI,kBAAM,UAAU,CAAC,SAapB;QAXG,KAAI,CAAC,QAAQ,GAAG,KAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;QACtC,KAAI,CAAC,MAAM,GAAG,KAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAElC,kDAAkD;QAClD,IAAI,CAAC,KAAI,CAAC,OAAO,CAAC,QAAQ;YACtB,MAAM,IAAI,uBAAuB,CAAC,UAAU,CAAC,CAAC;QAElD,IAAI,CAAC,KAAI,CAAC,OAAO,CAAC,MAAM;YAAE,MAAM,IAAI,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QAEtE,sBAAsB;QACtB,KAAI,CAAC,MAAM,GAAG,KAAI,CAAC,OAAO,CAAC,MAAM,CAAC;;IACtC,CAAC;IAED,4EAA4E;IAC5E,iBAAiB;IACjB,4EAA4E;IAE5E;;OAEG;IACG,iCAAO,GAAb;;;;;wBACI,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;wBAC1D,qBAAM,IAAI,CAAC,kBAAkB,EAAA;;wBAA7B,SAA6B,CAAC;;;;;KACjC;IAED;;OAEG;IACG,oCAAU,GAAhB;;;;;;;wBACI,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;wBACF,qBAAM,IAAI,CAAC,kBAAkB,EAAA;;wBAAlD,kBAAkB,GAAG,SAA6B;wBACxD,sBAAO,kBAAkB,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC;gCACnC,KAAI,CAAC,kBAAkB,GAAG,SAAS,CAAC;4BACxC,CAAC,CAAC,EAAC;;;;KACN;IAED;;OAEG;IACH,2CAAiB,GAAjB,UAAkB,IAAqB;QACnC,IAAI,CAAC,IAAI,CAAC,WAAW;YACjB,IAAI,CAAC,WAAW,GAAG,IAAI,oBAAoB,CAAC,IAAI,CAAC,CAAC;QAEtD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC5B,CAAC;IAED,4EAA4E;IAC5E,oBAAoB;IACpB,4EAA4E;IAE5E;;OAEG;IACa,kDAAwB,GAAxC;;;;;;wBACU,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,eAAe,CAAC;wBACpD,kBAAkB,GAAG,YAAY,KAAK,eAAe,CAAC;wBACtD,eAAe,GACjB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,KAAK,WAAW;4BACvC,CAAC,CAAC,CAAC;4BACH,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;wBACZ,qBAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,CACjD,IAAI,CAAC,OAAO,CAAC,QAAQ,EACrB,kBAAkB,EAClB,YAAY,EACZ,eAAe,CAClB,EAAA;;wBALK,UAAU,GAAG,SAKlB;wBACD,qBAAM,UAAU,CAAC,IAAI,EAAE,EAAA;;wBAAvB,SAAuB,CAAC;wBAExB,yFAAyF;wBACzF,kEAAkE;wBAClE,qBAAM,UAAU,CAAC,KAAK,CAAC,0BAA0B,CAAC,EAAA;;wBAFlD,yFAAyF;wBACzF,kEAAkE;wBAClE,SAAkD,CAAC;6BAG/C,CAAA,IAAI,CAAC,OAAO,CAAC,WAAW;4BACxB,CAAC,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,OAAO,CAC7D,IAAI,CAAC,OAAO,CAAC,WAAW,CAC3B,KAAK,CAAC,CAAC,CAAA,EAHR,wBAGQ;wBAER,qBAAM,UAAU,CAAC,KAAK,CAClB,2BAAyB,IAAI,CAAC,OAAO,CAAC,WAAa,CACtD,EAAA;;wBAFD,SAEC,CAAC;;4BAGN,sBAAO,UAAU,EAAC;;;;KACrB;IAES,0CAAgB,GAA1B;QACI,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;YACd,MAAM,IAAI,8BAA8B,CACpC,WAAW,EACX,6BAA6B,CAChC,CAAC;SACL;IACL,CAAC;IACL,sBAAC;AAAD,CA1GA,AA0GC,CA1GoC,oBAAoB,GA0GxD","file":"CapacitorDriver.js","sourcesContent":["import { AbstractSqliteDriver } from \"../sqlite-abstract/AbstractSqliteDriver\";\nimport { CapacitorConnectionOptions } from \"./CapacitorConnectionOptions\";\nimport { CapacitorQueryRunner } from \"./CapacitorQueryRunner\";\nimport { QueryRunner } from \"../../query-runner/QueryRunner\";\nimport { Connection } from \"../../connection/Connection\";\nimport {\n DriverOptionNotSetError,\n DriverPackageNotInstalledError,\n} from \"../../error\";\nimport { ReplicationMode } from \"../types/ReplicationMode\";\n\nexport class CapacitorDriver extends AbstractSqliteDriver {\n driver: any;\n options: CapacitorConnectionOptions;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(connection: Connection) {\n super(connection);\n\n this.database = this.options.database;\n this.driver = this.options.driver;\n\n // validate options to make sure everything is set\n if (!this.options.database)\n throw new DriverOptionNotSetError(\"database\");\n\n if (!this.options.driver) throw new DriverOptionNotSetError(\"driver\");\n\n // load sqlite package\n this.sqlite = this.options.driver;\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Performs connection to the database.\n */\n async connect(): Promise<void> {\n this.databaseConnection = this.createDatabaseConnection();\n await this.databaseConnection;\n }\n\n /**\n * Closes connection with database.\n */\n async disconnect(): Promise<void> {\n this.queryRunner = undefined;\n const databaseConnection = await this.databaseConnection;\n return databaseConnection.close().then(() => {\n this.databaseConnection = undefined;\n });\n }\n\n /**\n * Creates a query runner used to execute database queries.\n */\n createQueryRunner(mode: ReplicationMode): QueryRunner {\n if (!this.queryRunner)\n this.queryRunner = new CapacitorQueryRunner(this);\n\n return this.queryRunner;\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates connection with the database.\n */\n protected async createDatabaseConnection() {\n const databaseMode = this.options.mode || \"no-encryption\";\n const isDatabaseEncryted = databaseMode !== \"no-encryption\";\n const databaseVersion =\n typeof this.options.version === \"undefined\"\n ? 1\n : this.options.version;\n const connection = await this.sqlite.createConnection(\n this.options.database,\n isDatabaseEncryted,\n databaseMode,\n databaseVersion\n );\n await connection.open();\n\n // we need to enable foreign keys in sqlite to make sure all foreign key related features\n // working properly. this also makes onDelete to work with sqlite.\n await connection.query(`PRAGMA foreign_keys = ON`);\n\n if (\n this.options.journalMode &&\n [\"DELETE\", \"TRUNCATE\", \"PERSIST\", \"MEMORY\", \"WAL\", \"OFF\"].indexOf(\n this.options.journalMode\n ) !== -1\n ) {\n await connection.query(\n `PRAGMA journal_mode = ${this.options.journalMode}`\n );\n }\n\n return connection;\n }\n\n protected loadDependencies(): void {\n this.sqlite = this.driver;\n if (!this.driver) {\n throw new DriverPackageNotInstalledError(\n \"Capacitor\",\n \"@capacitor-community/sqlite\"\n );\n }\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../browser/src/driver/capacitor/CapacitorDriver.ts"],"names":[],"mappings":"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","file":"CapacitorDriver.js","sourcesContent":["import { AbstractSqliteDriver } from \"../sqlite-abstract/AbstractSqliteDriver\";\nimport { CapacitorConnectionOptions } from \"./CapacitorConnectionOptions\";\nimport { CapacitorQueryRunner } from \"./CapacitorQueryRunner\";\nimport { QueryRunner } from \"../../query-runner/QueryRunner\";\nimport { Connection } from \"../../connection/Connection\";\nimport {\n DriverOptionNotSetError,\n DriverPackageNotInstalledError,\n} from \"../../error\";\nimport { ReplicationMode } from \"../types/ReplicationMode\";\n\nexport class CapacitorDriver extends AbstractSqliteDriver {\n driver: any;\n options: CapacitorConnectionOptions;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(connection: Connection) {\n super(connection);\n\n this.database = this.options.database;\n this.driver = this.options.driver;\n\n // validate options to make sure everything is set\n if (!this.options.database)\n throw new DriverOptionNotSetError(\"database\");\n\n if (!this.options.driver) throw new DriverOptionNotSetError(\"driver\");\n\n // load sqlite package\n this.sqlite = this.options.driver;\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Performs connection to the database.\n */\n async connect(): Promise<void> {\n this.databaseConnection = this.createDatabaseConnection();\n await this.databaseConnection;\n }\n\n /**\n * Closes connection with database.\n */\n async disconnect(): Promise<void> {\n this.queryRunner = undefined;\n const databaseConnection = await this.databaseConnection;\n return databaseConnection.close().then(() => {\n this.databaseConnection = undefined;\n });\n }\n\n /**\n * Creates a query runner used to execute database queries.\n */\n createQueryRunner(mode: ReplicationMode): QueryRunner {\n if (!this.queryRunner)\n this.queryRunner = new CapacitorQueryRunner(this);\n\n return this.queryRunner;\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Creates connection with the database.\n */\n protected async createDatabaseConnection() {\n const databaseMode = this.options.mode || \"no-encryption\";\n const isDatabaseEncryted = databaseMode !== \"no-encryption\";\n const databaseVersion =\n typeof this.options.version === \"undefined\"\n ? 1\n : this.options.version;\n const connection = await this.sqlite.createConnection(\n this.options.database,\n isDatabaseEncryted,\n databaseMode,\n databaseVersion\n );\n await connection.open();\n\n // we need to enable foreign keys in sqlite to make sure all foreign key related features\n // working properly. this also makes onDelete to work with sqlite.\n await connection.query(`PRAGMA foreign_keys = ON`);\n\n if (\n this.options.journalMode &&\n [\"DELETE\", \"TRUNCATE\", \"PERSIST\", \"MEMORY\", \"WAL\", \"OFF\"].indexOf(\n this.options.journalMode\n ) !== -1\n ) {\n await connection.query(\n `PRAGMA journal_mode = ${this.options.journalMode}`\n );\n }\n\n return connection;\n }\n\n protected loadDependencies(): void {\n this.sqlite = this.driver;\n if (!this.driver) {\n throw new DriverPackageNotInstalledError(\n \"Capacitor\",\n \"@capacitor-community/sqlite\"\n );\n }\n }\n}\n"],"sourceRoot":"../.."}
@@ -131,7 +131,7 @@ var CapacitorQueryRunner = /** @class */ (function (_super) {
131
131
  * Parametrizes given object of values. Used to create column=value queries.
132
132
  */
133
133
  CapacitorQueryRunner.prototype.parametrize = function (objectLiteral) {
134
- return Object.keys(objectLiteral).map(function (key) { return "\"" + key + "\"" + "=?"; });
134
+ return Object.keys(objectLiteral).map(function (key) { return "\"".concat(key, "\"") + "=?"; });
135
135
  };
136
136
  return CapacitorQueryRunner;
137
137
  }(AbstractSqliteQueryRunner));
@@ -1 +1 @@
1
- {"version":3,"sources":["../browser/src/driver/capacitor/CapacitorQueryRunner.ts"],"names":[],"mappings":"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","file":"CapacitorQueryRunner.js","sourcesContent":["import { QueryRunnerAlreadyReleasedError } from \"../../error/QueryRunnerAlreadyReleasedError\";\nimport { QueryFailedError } from \"../../error/QueryFailedError\";\nimport { AbstractSqliteQueryRunner } from \"../sqlite-abstract/AbstractSqliteQueryRunner\";\nimport { CapacitorDriver } from \"./CapacitorDriver\";\nimport { Broadcaster } from \"../../subscriber/Broadcaster\";\nimport { ObjectLiteral } from \"../../common/ObjectLiteral\";\nimport { QueryResult } from \"../../query-runner/QueryResult\";\n\n/**\n * Runs queries on a single sqlite database connection.\n */\nexport class CapacitorQueryRunner extends AbstractSqliteQueryRunner {\n /**\n * Database driver used by connection.\n */\n driver: CapacitorDriver;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: CapacitorDriver) {\n super();\n this.driver = driver;\n this.connection = driver.connection;\n this.broadcaster = new Broadcaster(this);\n }\n\n /**\n * Called before migrations are run.\n */\n async beforeMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = OFF`);\n }\n\n /**\n * Called after migrations are run.\n */\n async afterMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = ON`);\n }\n\n async executeSet(set: { statement: string; values?: any[] }[]) {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError();\n\n const databaseConnection = await this.connect();\n\n return databaseConnection.executeSet(set, false);\n }\n\n /**\n * Executes a given SQL query.\n */\n async query(query: string, parameters?: any[], useStructuredResult = false): Promise<any> {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError();\n\n const databaseConnection = await this.connect();\n\n this.driver.connection.logger.logQuery(query, parameters, this);\n\n const command = query.substr(0, query.indexOf(\" \"));\n\n try {\n let raw: any;\n\n if (\n [ \"BEGIN\", \"ROLLBACK\", \"COMMIT\", \"CREATE\", \"ALTER\", \"DROP\" ].indexOf(\n command\n ) !== -1\n ) {\n raw = await databaseConnection.execute(query, false);\n } else if ([ \"INSERT\", \"UPDATE\", \"DELETE\" ].indexOf(command) !== -1) {\n raw = await databaseConnection.run(query, parameters, false);\n } else {\n raw = await databaseConnection.query(query, parameters || []);\n }\n\n const result = new QueryResult();\n\n if (raw?.hasOwnProperty('values')) {\n result.raw = raw.values;\n result.records = raw.values;\n }\n\n if (raw?.hasOwnProperty('changes')) {\n result.affected = raw.changes.changes;\n result.raw = raw.changes.lastId || raw.changes.changes;\n }\n\n if (!useStructuredResult) {\n return result.raw;\n }\n\n return result;\n } catch (err) {\n this.driver.connection.logger.logQueryError(\n err,\n query,\n parameters,\n this\n );\n\n throw new QueryFailedError(query, parameters, err);\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Parametrizes given object of values. Used to create column=value queries.\n */\n protected parametrize(objectLiteral: ObjectLiteral): string[] {\n return Object.keys(objectLiteral).map((key) => `\"${key}\"` + \"=?\");\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../browser/src/driver/capacitor/CapacitorQueryRunner.ts"],"names":[],"mappings":"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","file":"CapacitorQueryRunner.js","sourcesContent":["import { QueryRunnerAlreadyReleasedError } from \"../../error/QueryRunnerAlreadyReleasedError\";\nimport { QueryFailedError } from \"../../error/QueryFailedError\";\nimport { AbstractSqliteQueryRunner } from \"../sqlite-abstract/AbstractSqliteQueryRunner\";\nimport { CapacitorDriver } from \"./CapacitorDriver\";\nimport { Broadcaster } from \"../../subscriber/Broadcaster\";\nimport { ObjectLiteral } from \"../../common/ObjectLiteral\";\nimport { QueryResult } from \"../../query-runner/QueryResult\";\n\n/**\n * Runs queries on a single sqlite database connection.\n */\nexport class CapacitorQueryRunner extends AbstractSqliteQueryRunner {\n /**\n * Database driver used by connection.\n */\n driver: CapacitorDriver;\n\n // -------------------------------------------------------------------------\n // Constructor\n // -------------------------------------------------------------------------\n\n constructor(driver: CapacitorDriver) {\n super();\n this.driver = driver;\n this.connection = driver.connection;\n this.broadcaster = new Broadcaster(this);\n }\n\n /**\n * Called before migrations are run.\n */\n async beforeMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = OFF`);\n }\n\n /**\n * Called after migrations are run.\n */\n async afterMigration(): Promise<void> {\n await this.query(`PRAGMA foreign_keys = ON`);\n }\n\n async executeSet(set: { statement: string; values?: any[] }[]) {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError();\n\n const databaseConnection = await this.connect();\n\n return databaseConnection.executeSet(set, false);\n }\n\n /**\n * Executes a given SQL query.\n */\n async query(query: string, parameters?: any[], useStructuredResult = false): Promise<any> {\n if (this.isReleased) throw new QueryRunnerAlreadyReleasedError();\n\n const databaseConnection = await this.connect();\n\n this.driver.connection.logger.logQuery(query, parameters, this);\n\n const command = query.substr(0, query.indexOf(\" \"));\n\n try {\n let raw: any;\n\n if (\n [ \"BEGIN\", \"ROLLBACK\", \"COMMIT\", \"CREATE\", \"ALTER\", \"DROP\" ].indexOf(\n command\n ) !== -1\n ) {\n raw = await databaseConnection.execute(query, false);\n } else if ([ \"INSERT\", \"UPDATE\", \"DELETE\" ].indexOf(command) !== -1) {\n raw = await databaseConnection.run(query, parameters, false);\n } else {\n raw = await databaseConnection.query(query, parameters || []);\n }\n\n const result = new QueryResult();\n\n if (raw?.hasOwnProperty('values')) {\n result.raw = raw.values;\n result.records = raw.values;\n }\n\n if (raw?.hasOwnProperty('changes')) {\n result.affected = raw.changes.changes;\n result.raw = raw.changes.lastId || raw.changes.changes;\n }\n\n if (!useStructuredResult) {\n return result.raw;\n }\n\n return result;\n } catch (err) {\n this.driver.connection.logger.logQueryError(\n err,\n query,\n parameters,\n this\n );\n\n throw new QueryFailedError(query, parameters, err);\n }\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Parametrizes given object of values. Used to create column=value queries.\n */\n protected parametrize(objectLiteral: ObjectLiteral): string[] {\n return Object.keys(objectLiteral).map((key) => `\"${key}\"` + \"=?\");\n }\n}\n"],"sourceRoot":"../.."}
@@ -501,9 +501,9 @@ var CockroachDriver = /** @class */ (function () {
501
501
  */
502
502
  CockroachDriver.prototype.normalizeDefault = function (columnMetadata) {
503
503
  var defaultValue = columnMetadata.default;
504
- var arrayCast = columnMetadata.isArray ? "::" + columnMetadata.type + "[]" : "";
504
+ var arrayCast = columnMetadata.isArray ? "::".concat(columnMetadata.type, "[]") : "";
505
505
  if (typeof defaultValue === "number") {
506
- return "(" + defaultValue + ")";
506
+ return "(".concat(defaultValue, ")");
507
507
  }
508
508
  if (typeof defaultValue === "boolean") {
509
509
  return defaultValue ? "true" : "false";
@@ -519,15 +519,15 @@ var CockroachDriver = /** @class */ (function () {
519
519
  return value;
520
520
  }
521
521
  if (typeof defaultValue === "string") {
522
- return "'" + defaultValue + "'" + arrayCast;
522
+ return "'".concat(defaultValue, "'").concat(arrayCast);
523
523
  }
524
524
  if (typeof defaultValue === "object" && defaultValue !== null) {
525
- return "'" + JSON.stringify(defaultValue) + "'";
525
+ return "'".concat(JSON.stringify(defaultValue), "'");
526
526
  }
527
527
  if (defaultValue === undefined || defaultValue === null) {
528
528
  return undefined;
529
529
  }
530
- return "" + defaultValue;
530
+ return "".concat(defaultValue);
531
531
  };
532
532
  /**
533
533
  * Normalizes "isUnique" value of the column.
@@ -740,7 +740,7 @@ var CockroachDriver = /** @class */ (function () {
740
740
  }, options.extra || {});
741
741
  pool = new this.postgres.Pool(connectionOptions);
742
742
  logger = this.connection.logger;
743
- poolErrorHandler = options.poolErrorHandler || (function (error) { return logger.log("warn", "Postgres pool raised an error. " + error); });
743
+ poolErrorHandler = options.poolErrorHandler || (function (error) { return logger.log("warn", "Postgres pool raised an error. ".concat(error)); });
744
744
  /*
745
745
  Attaching an error handler to pool errors is essential, as, otherwise, errors raised will go unhandled and
746
746
  cause the hosting app to crash.