typeorm 0.2.39-dev.d7d19e9 → 0.2.39-dev.d8c5812

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 (546) hide show
  1. package/browser/connection/ConnectionMetadataBuilder.js +4 -4
  2. package/browser/connection/ConnectionMetadataBuilder.js.map +1 -1
  3. package/browser/connection/options-reader/ConnectionOptionsYmlReader.js +1 -1
  4. package/browser/connection/options-reader/ConnectionOptionsYmlReader.js.map +1 -1
  5. package/browser/decorator/transaction/Transaction.js +3 -3
  6. package/browser/decorator/transaction/Transaction.js.map +1 -1
  7. package/browser/driver/DriverUtils.js +1 -1
  8. package/browser/driver/DriverUtils.js.map +1 -1
  9. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js +2 -2
  10. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  11. package/browser/driver/cockroachdb/CockroachDriver.js +1 -1
  12. package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
  13. package/browser/driver/cockroachdb/CockroachQueryRunner.js +2 -2
  14. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  15. package/browser/driver/mysql/MysqlQueryRunner.js +2 -2
  16. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  17. package/browser/driver/oracle/OracleQueryRunner.js +2 -2
  18. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  19. package/browser/driver/postgres/PostgresDriver.js +1 -1
  20. package/browser/driver/postgres/PostgresDriver.js.map +1 -1
  21. package/browser/driver/postgres/PostgresQueryRunner.js +2 -2
  22. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  23. package/browser/driver/sap/SapQueryRunner.js +2 -2
  24. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  25. package/browser/driver/sqlite/SqliteQueryRunner.js +16 -8
  26. package/browser/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  27. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +2 -2
  28. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  29. package/browser/driver/sqlserver/SqlServerQueryRunner.js +10 -10
  30. package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  31. package/browser/find-options/FindOptionsUtils.js +1 -1
  32. package/browser/find-options/FindOptionsUtils.js.map +1 -1
  33. package/browser/metadata/ColumnMetadata.js +4 -4
  34. package/browser/metadata/ColumnMetadata.js.map +1 -1
  35. package/browser/metadata/EmbeddedMetadata.js +1 -1
  36. package/browser/metadata/EmbeddedMetadata.js.map +1 -1
  37. package/browser/metadata/EntityMetadata.js +1 -1
  38. package/browser/metadata/EntityMetadata.js.map +1 -1
  39. package/browser/metadata/RelationMetadata.js +4 -4
  40. package/browser/metadata/RelationMetadata.js.map +1 -1
  41. package/browser/metadata-builder/EntityMetadataBuilder.js +5 -5
  42. package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  43. package/browser/metadata-builder/JunctionEntityMetadataBuilder.js +1 -1
  44. package/browser/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
  45. package/browser/naming-strategy/DefaultNamingStrategy.js +5 -5
  46. package/browser/naming-strategy/DefaultNamingStrategy.js.map +1 -1
  47. package/browser/persistence/Subject.js +1 -1
  48. package/browser/persistence/Subject.js.map +1 -1
  49. package/browser/persistence/SubjectDatabaseEntityLoader.js +1 -1
  50. package/browser/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
  51. package/browser/persistence/SubjectExecutor.js +1 -1
  52. package/browser/persistence/SubjectExecutor.js.map +1 -1
  53. package/browser/persistence/SubjectTopoligicalSorter.js +5 -5
  54. package/browser/persistence/SubjectTopoligicalSorter.js.map +1 -1
  55. package/browser/persistence/tree/ClosureSubjectExecutor.js +4 -4
  56. package/browser/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
  57. package/browser/query-builder/InsertQueryBuilder.js +2 -2
  58. package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
  59. package/browser/query-builder/QueryBuilder.js +9 -9
  60. package/browser/query-builder/QueryBuilder.js.map +1 -1
  61. package/browser/query-builder/RelationLoader.js +2 -2
  62. package/browser/query-builder/RelationLoader.js.map +1 -1
  63. package/browser/query-builder/RelationRemover.js +6 -6
  64. package/browser/query-builder/RelationRemover.js.map +1 -1
  65. package/browser/query-builder/SelectQueryBuilder.js +7 -7
  66. package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
  67. package/browser/query-builder/UpdateQueryBuilder.js +2 -2
  68. package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
  69. package/browser/query-builder/relation-id/RelationIdLoader.js +1 -1
  70. package/browser/query-builder/relation-id/RelationIdLoader.js.map +1 -1
  71. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js +2 -2
  72. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  73. package/browser/query-runner/BaseQueryRunner.js +2 -2
  74. package/browser/query-runner/BaseQueryRunner.js.map +1 -1
  75. package/browser/query-runner/QueryLock.js +1 -1
  76. package/browser/query-runner/QueryLock.js.map +1 -1
  77. package/browser/repository/BaseEntity.js +1 -1
  78. package/browser/repository/BaseEntity.js.map +1 -1
  79. package/browser/repository/Repository.js +1 -1
  80. package/browser/repository/Repository.js.map +1 -1
  81. package/browser/repository/TreeRepository.js +2 -2
  82. package/browser/repository/TreeRepository.js.map +1 -1
  83. package/browser/schema-builder/table/TableCheck.js +1 -1
  84. package/browser/schema-builder/table/TableCheck.js.map +1 -1
  85. package/browser/schema-builder/table/TableForeignKey.js +2 -2
  86. package/browser/schema-builder/table/TableForeignKey.js.map +1 -1
  87. package/browser/schema-builder/table/TableIndex.js +1 -1
  88. package/browser/schema-builder/table/TableIndex.js.map +1 -1
  89. package/browser/schema-builder/table/TableUnique.js +1 -1
  90. package/browser/schema-builder/table/TableUnique.js.map +1 -1
  91. package/cache/DbQueryResultCache.js +12 -12
  92. package/cache/RedisQueryResultCache.js +12 -12
  93. package/cli.js +1 -6
  94. package/cli.js.map +1 -1
  95. package/commands/CacheClearCommand.js +4 -4
  96. package/commands/CacheClearCommand.js.map +1 -1
  97. package/commands/CommandUtils.js +10 -10
  98. package/commands/CommandUtils.js.map +1 -1
  99. package/commands/EntityCreateCommand.js +3 -3
  100. package/commands/EntityCreateCommand.js.map +1 -1
  101. package/commands/InitCommand.js +5 -5
  102. package/commands/InitCommand.js.map +1 -1
  103. package/commands/MigrationCreateCommand.js +5 -5
  104. package/commands/MigrationCreateCommand.js.map +1 -1
  105. package/commands/MigrationGenerateCommand.js +7 -7
  106. package/commands/MigrationGenerateCommand.js.map +1 -1
  107. package/commands/MigrationRevertCommand.js +4 -4
  108. package/commands/MigrationRevertCommand.js.map +1 -1
  109. package/commands/MigrationRunCommand.js +5 -5
  110. package/commands/MigrationRunCommand.js.map +1 -1
  111. package/commands/MigrationShowCommand.js +5 -5
  112. package/commands/MigrationShowCommand.js.map +1 -1
  113. package/commands/QueryCommand.js +4 -4
  114. package/commands/QueryCommand.js.map +1 -1
  115. package/commands/SchemaDropCommand.js +4 -4
  116. package/commands/SchemaDropCommand.js.map +1 -1
  117. package/commands/SchemaLogCommand.js +5 -5
  118. package/commands/SchemaLogCommand.js.map +1 -1
  119. package/commands/SchemaSyncCommand.js +4 -4
  120. package/commands/SchemaSyncCommand.js.map +1 -1
  121. package/commands/SubscriberCreateCommand.js +3 -3
  122. package/commands/SubscriberCreateCommand.js.map +1 -1
  123. package/commands/VersionCommand.js +3 -3
  124. package/commands/VersionCommand.js.map +1 -1
  125. package/connection/Connection.js +19 -19
  126. package/connection/Connection.js.map +1 -1
  127. package/connection/ConnectionMetadataBuilder.js +11 -11
  128. package/connection/ConnectionMetadataBuilder.js.map +1 -1
  129. package/connection/ConnectionOptionsReader.js +9 -9
  130. package/connection/ConnectionOptionsReader.js.map +1 -1
  131. package/connection/options-reader/ConnectionOptionsEnvReader.js +2 -2
  132. package/connection/options-reader/ConnectionOptionsXmlReader.js +3 -3
  133. package/connection/options-reader/ConnectionOptionsXmlReader.js.map +1 -1
  134. package/connection/options-reader/ConnectionOptionsYmlReader.js +4 -4
  135. package/connection/options-reader/ConnectionOptionsYmlReader.js.map +1 -1
  136. package/decorator/Check.js +1 -1
  137. package/decorator/Check.js.map +1 -1
  138. package/decorator/EntityRepository.js +1 -1
  139. package/decorator/EntityRepository.js.map +1 -1
  140. package/decorator/Exclusion.js +1 -1
  141. package/decorator/Exclusion.js.map +1 -1
  142. package/decorator/Generated.js +1 -1
  143. package/decorator/Generated.js.map +1 -1
  144. package/decorator/Index.js +1 -1
  145. package/decorator/Index.js.map +1 -1
  146. package/decorator/Unique.js +1 -1
  147. package/decorator/Unique.js.map +1 -1
  148. package/decorator/columns/Column.js +4 -4
  149. package/decorator/columns/Column.js.map +1 -1
  150. package/decorator/columns/CreateDateColumn.js +1 -1
  151. package/decorator/columns/CreateDateColumn.js.map +1 -1
  152. package/decorator/columns/DeleteDateColumn.js +1 -1
  153. package/decorator/columns/DeleteDateColumn.js.map +1 -1
  154. package/decorator/columns/ObjectIdColumn.js +1 -1
  155. package/decorator/columns/ObjectIdColumn.js.map +1 -1
  156. package/decorator/columns/PrimaryColumn.js +2 -2
  157. package/decorator/columns/PrimaryColumn.js.map +1 -1
  158. package/decorator/columns/PrimaryGeneratedColumn.js +2 -2
  159. package/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
  160. package/decorator/columns/UpdateDateColumn.js +1 -1
  161. package/decorator/columns/UpdateDateColumn.js.map +1 -1
  162. package/decorator/columns/VersionColumn.js +1 -1
  163. package/decorator/columns/VersionColumn.js.map +1 -1
  164. package/decorator/columns/ViewColumn.js +1 -1
  165. package/decorator/columns/ViewColumn.js.map +1 -1
  166. package/decorator/entity/ChildEntity.js +2 -2
  167. package/decorator/entity/ChildEntity.js.map +1 -1
  168. package/decorator/entity/Entity.js +1 -1
  169. package/decorator/entity/Entity.js.map +1 -1
  170. package/decorator/entity/TableInheritance.js +1 -1
  171. package/decorator/entity/TableInheritance.js.map +1 -1
  172. package/decorator/entity-view/ViewEntity.js +1 -1
  173. package/decorator/entity-view/ViewEntity.js.map +1 -1
  174. package/decorator/listeners/AfterInsert.js +1 -1
  175. package/decorator/listeners/AfterInsert.js.map +1 -1
  176. package/decorator/listeners/AfterLoad.js +1 -1
  177. package/decorator/listeners/AfterLoad.js.map +1 -1
  178. package/decorator/listeners/AfterRemove.js +1 -1
  179. package/decorator/listeners/AfterRemove.js.map +1 -1
  180. package/decorator/listeners/AfterUpdate.js +1 -1
  181. package/decorator/listeners/AfterUpdate.js.map +1 -1
  182. package/decorator/listeners/BeforeInsert.js +1 -1
  183. package/decorator/listeners/BeforeInsert.js.map +1 -1
  184. package/decorator/listeners/BeforeRemove.js +1 -1
  185. package/decorator/listeners/BeforeRemove.js.map +1 -1
  186. package/decorator/listeners/BeforeUpdate.js +1 -1
  187. package/decorator/listeners/BeforeUpdate.js.map +1 -1
  188. package/decorator/listeners/EventSubscriber.js +1 -1
  189. package/decorator/listeners/EventSubscriber.js.map +1 -1
  190. package/decorator/relations/JoinColumn.js +1 -1
  191. package/decorator/relations/JoinColumn.js.map +1 -1
  192. package/decorator/relations/JoinTable.js +1 -1
  193. package/decorator/relations/JoinTable.js.map +1 -1
  194. package/decorator/relations/ManyToMany.js +1 -1
  195. package/decorator/relations/ManyToMany.js.map +1 -1
  196. package/decorator/relations/ManyToOne.js +1 -1
  197. package/decorator/relations/ManyToOne.js.map +1 -1
  198. package/decorator/relations/OneToMany.js +1 -1
  199. package/decorator/relations/OneToMany.js.map +1 -1
  200. package/decorator/relations/OneToOne.js +1 -1
  201. package/decorator/relations/OneToOne.js.map +1 -1
  202. package/decorator/relations/RelationCount.js +1 -1
  203. package/decorator/relations/RelationCount.js.map +1 -1
  204. package/decorator/relations/RelationId.js +1 -1
  205. package/decorator/relations/RelationId.js.map +1 -1
  206. package/decorator/transaction/Transaction.js +7 -7
  207. package/decorator/transaction/Transaction.js.map +1 -1
  208. package/decorator/transaction/TransactionManager.js +1 -1
  209. package/decorator/transaction/TransactionManager.js.map +1 -1
  210. package/decorator/transaction/TransactionRepository.js +1 -1
  211. package/decorator/transaction/TransactionRepository.js.map +1 -1
  212. package/decorator/tree/Tree.js +1 -1
  213. package/decorator/tree/Tree.js.map +1 -1
  214. package/decorator/tree/TreeChildren.js +1 -1
  215. package/decorator/tree/TreeChildren.js.map +1 -1
  216. package/decorator/tree/TreeLevelColumn.js +1 -1
  217. package/decorator/tree/TreeLevelColumn.js.map +1 -1
  218. package/decorator/tree/TreeParent.js +1 -1
  219. package/decorator/tree/TreeParent.js.map +1 -1
  220. package/driver/DriverUtils.js +9 -9
  221. package/driver/DriverUtils.js.map +1 -1
  222. package/driver/aurora-data-api/AuroraDataApiConnection.js +1 -1
  223. package/driver/aurora-data-api/AuroraDataApiConnection.js.map +1 -1
  224. package/driver/aurora-data-api/AuroraDataApiDriver.js +6 -6
  225. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js +129 -129
  226. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  227. package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js +8 -8
  228. package/driver/aurora-data-api-pg/AuroraDataApiPostgresDriver.js.map +1 -1
  229. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js +12 -12
  230. package/driver/aurora-data-api-pg/AuroraDataApiPostgresQueryRunner.js.map +1 -1
  231. package/driver/better-sqlite3/BetterSqlite3Driver.js +10 -10
  232. package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  233. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js +5 -5
  234. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  235. package/driver/capacitor/CapacitorDriver.js +7 -7
  236. package/driver/capacitor/CapacitorDriver.js.map +1 -1
  237. package/driver/capacitor/CapacitorQueryRunner.js +5 -5
  238. package/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
  239. package/driver/cockroachdb/CockroachDriver.js +11 -11
  240. package/driver/cockroachdb/CockroachDriver.js.map +1 -1
  241. package/driver/cockroachdb/CockroachQueryRunner.js +137 -137
  242. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  243. package/driver/cordova/CordovaDriver.js +3 -3
  244. package/driver/cordova/CordovaDriver.js.map +1 -1
  245. package/driver/cordova/CordovaQueryRunner.js +13 -13
  246. package/driver/cordova/CordovaQueryRunner.js.map +1 -1
  247. package/driver/expo/ExpoDriver.js +3 -3
  248. package/driver/expo/ExpoDriver.js.map +1 -1
  249. package/driver/expo/ExpoQueryRunner.js +11 -11
  250. package/driver/expo/ExpoQueryRunner.js.map +1 -1
  251. package/driver/mongodb/MongoDriver.js +2 -2
  252. package/driver/mongodb/MongoQueryRunner.js +178 -178
  253. package/driver/mysql/MysqlDriver.js +5 -5
  254. package/driver/mysql/MysqlDriver.js.map +1 -1
  255. package/driver/mysql/MysqlQueryRunner.js +130 -130
  256. package/driver/mysql/MysqlQueryRunner.js.map +1 -1
  257. package/driver/nativescript/NativescriptDriver.js +3 -3
  258. package/driver/nativescript/NativescriptDriver.js.map +1 -1
  259. package/driver/nativescript/NativescriptQueryRunner.js +3 -3
  260. package/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
  261. package/driver/oracle/OracleDriver.js +8 -8
  262. package/driver/oracle/OracleQueryRunner.js +125 -125
  263. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  264. package/driver/postgres/PostgresDriver.js +19 -19
  265. package/driver/postgres/PostgresDriver.js.map +1 -1
  266. package/driver/postgres/PostgresQueryRunner.js +150 -150
  267. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  268. package/driver/react-native/ReactNativeDriver.js +3 -3
  269. package/driver/react-native/ReactNativeDriver.js.map +1 -1
  270. package/driver/react-native/ReactNativeQueryRunner.js +3 -3
  271. package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  272. package/driver/sap/SapDriver.js +5 -5
  273. package/driver/sap/SapDriver.js.map +1 -1
  274. package/driver/sap/SapQueryRunner.js +135 -135
  275. package/driver/sap/SapQueryRunner.js.map +1 -1
  276. package/driver/sqlite/SqliteDriver.js +10 -10
  277. package/driver/sqlite/SqliteDriver.js.map +1 -1
  278. package/driver/sqlite/SqliteQueryRunner.js +21 -13
  279. package/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  280. package/driver/sqlite-abstract/AbstractSqliteDriver.js +4 -4
  281. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +121 -121
  282. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  283. package/driver/sqljs/SqljsDriver.js +13 -13
  284. package/driver/sqljs/SqljsDriver.js.map +1 -1
  285. package/driver/sqljs/SqljsQueryRunner.js +9 -9
  286. package/driver/sqljs/SqljsQueryRunner.js.map +1 -1
  287. package/driver/sqlserver/SqlServerDriver.js +6 -6
  288. package/driver/sqlserver/SqlServerQueryRunner.js +152 -152
  289. package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  290. package/entity-manager/EntityManager.js +30 -30
  291. package/entity-manager/EntityManager.js.map +1 -1
  292. package/entity-manager/MongoEntityManager.js +15 -15
  293. package/entity-manager/MongoEntityManager.js.map +1 -1
  294. package/entity-manager/SqljsEntityManager.js +5 -5
  295. package/entity-manager/SqljsEntityManager.js.map +1 -1
  296. package/entity-schema/EntitySchemaTransformer.js +1 -1
  297. package/entity-schema/EntitySchemaTransformer.js.map +1 -1
  298. package/error/AlreadyHasActiveConnectionError.js +1 -1
  299. package/error/AlreadyHasActiveConnectionError.js.map +1 -1
  300. package/error/CannotAttachTreeChildrenEntityError.js +1 -1
  301. package/error/CannotAttachTreeChildrenEntityError.js.map +1 -1
  302. package/error/CannotConnectAlreadyConnectedError.js +1 -1
  303. package/error/CannotConnectAlreadyConnectedError.js.map +1 -1
  304. package/error/CannotCreateEntityIdMapError.js +1 -1
  305. package/error/CannotCreateEntityIdMapError.js.map +1 -1
  306. package/error/CannotDetermineEntityError.js +1 -1
  307. package/error/CannotDetermineEntityError.js.map +1 -1
  308. package/error/CannotExecuteNotConnectedError.js +1 -1
  309. package/error/CannotExecuteNotConnectedError.js.map +1 -1
  310. package/error/CannotGetEntityManagerNotConnectedError.js +1 -1
  311. package/error/CannotGetEntityManagerNotConnectedError.js.map +1 -1
  312. package/error/CannotReflectMethodParameterTypeError.js +1 -1
  313. package/error/CannotReflectMethodParameterTypeError.js.map +1 -1
  314. package/error/CircularRelationsError.js +1 -1
  315. package/error/CircularRelationsError.js.map +1 -1
  316. package/error/ColumnTypeUndefinedError.js +1 -1
  317. package/error/ColumnTypeUndefinedError.js.map +1 -1
  318. package/error/ConnectionIsNotSetError.js +1 -1
  319. package/error/ConnectionIsNotSetError.js.map +1 -1
  320. package/error/ConnectionNotFoundError.js +1 -1
  321. package/error/ConnectionNotFoundError.js.map +1 -1
  322. package/error/CustomRepositoryCannotInheritRepositoryError.js +1 -1
  323. package/error/CustomRepositoryCannotInheritRepositoryError.js.map +1 -1
  324. package/error/CustomRepositoryDoesNotHaveEntityError.js +1 -1
  325. package/error/CustomRepositoryDoesNotHaveEntityError.js.map +1 -1
  326. package/error/CustomRepositoryNotFoundError.js +1 -1
  327. package/error/CustomRepositoryNotFoundError.js.map +1 -1
  328. package/error/DataTypeNotSupportedError.js +1 -1
  329. package/error/DataTypeNotSupportedError.js.map +1 -1
  330. package/error/DriverOptionNotSetError.js +1 -1
  331. package/error/DriverOptionNotSetError.js.map +1 -1
  332. package/error/DriverPackageNotInstalledError.js +1 -1
  333. package/error/DriverPackageNotInstalledError.js.map +1 -1
  334. package/error/EntityColumnNotFound.js +1 -1
  335. package/error/EntityColumnNotFound.js.map +1 -1
  336. package/error/EntityMetadataNotFoundError.js +1 -1
  337. package/error/EntityMetadataNotFoundError.js.map +1 -1
  338. package/error/EntityNotFoundError.js +1 -1
  339. package/error/EntityNotFoundError.js.map +1 -1
  340. package/error/FindRelationsNotFoundError.js +1 -1
  341. package/error/FindRelationsNotFoundError.js.map +1 -1
  342. package/error/InitializedRelationError.js +1 -1
  343. package/error/InitializedRelationError.js.map +1 -1
  344. package/error/InsertValuesMissingError.js +1 -1
  345. package/error/InsertValuesMissingError.js.map +1 -1
  346. package/error/LimitOnUpdateNotSupportedError.js +1 -1
  347. package/error/LimitOnUpdateNotSupportedError.js.map +1 -1
  348. package/error/LockNotSupportedOnGivenDriverError.js +1 -1
  349. package/error/LockNotSupportedOnGivenDriverError.js.map +1 -1
  350. package/error/MetadataAlreadyExistsError.js +1 -1
  351. package/error/MetadataAlreadyExistsError.js.map +1 -1
  352. package/error/MetadataWithSuchNameAlreadyExistsError.js +1 -1
  353. package/error/MetadataWithSuchNameAlreadyExistsError.js.map +1 -1
  354. package/error/MissingDeleteDateColumnError.js +1 -1
  355. package/error/MissingDeleteDateColumnError.js.map +1 -1
  356. package/error/MissingDriverError.js +1 -1
  357. package/error/MissingDriverError.js.map +1 -1
  358. package/error/MissingJoinColumnError.js +1 -1
  359. package/error/MissingJoinColumnError.js.map +1 -1
  360. package/error/MissingJoinTableError.js +1 -1
  361. package/error/MissingJoinTableError.js.map +1 -1
  362. package/error/MissingPrimaryColumnError.js +1 -1
  363. package/error/MissingPrimaryColumnError.js.map +1 -1
  364. package/error/MustBeEntityError.js +1 -1
  365. package/error/MustBeEntityError.js.map +1 -1
  366. package/error/NamingStrategyNotFoundError.js +1 -1
  367. package/error/NamingStrategyNotFoundError.js.map +1 -1
  368. package/error/NestedSetMultipleRootError.js +1 -1
  369. package/error/NestedSetMultipleRootError.js.map +1 -1
  370. package/error/NoConnectionForRepositoryError.js +1 -1
  371. package/error/NoConnectionForRepositoryError.js.map +1 -1
  372. package/error/NoConnectionOptionError.js +1 -1
  373. package/error/NoConnectionOptionError.js.map +1 -1
  374. package/error/NoNeedToReleaseEntityManagerError.js +1 -1
  375. package/error/NoNeedToReleaseEntityManagerError.js.map +1 -1
  376. package/error/NoVersionOrUpdateDateColumnError.js +1 -1
  377. package/error/NoVersionOrUpdateDateColumnError.js.map +1 -1
  378. package/error/OffsetWithoutLimitNotSupportedError.js +1 -1
  379. package/error/OffsetWithoutLimitNotSupportedError.js.map +1 -1
  380. package/error/OptimisticLockCanNotBeUsedError.js +1 -1
  381. package/error/OptimisticLockCanNotBeUsedError.js.map +1 -1
  382. package/error/OptimisticLockVersionMismatchError.js +1 -1
  383. package/error/OptimisticLockVersionMismatchError.js.map +1 -1
  384. package/error/PersistedEntityNotFoundError.js +1 -1
  385. package/error/PersistedEntityNotFoundError.js.map +1 -1
  386. package/error/PessimisticLockTransactionRequiredError.js +1 -1
  387. package/error/PessimisticLockTransactionRequiredError.js.map +1 -1
  388. package/error/PrimaryColumnCannotBeNullableError.js +1 -1
  389. package/error/PrimaryColumnCannotBeNullableError.js.map +1 -1
  390. package/error/QueryFailedError.js +3 -3
  391. package/error/QueryFailedError.js.map +1 -1
  392. package/error/QueryRunnerAlreadyReleasedError.js +1 -1
  393. package/error/QueryRunnerAlreadyReleasedError.js.map +1 -1
  394. package/error/QueryRunnerProviderAlreadyReleasedError.js +1 -1
  395. package/error/QueryRunnerProviderAlreadyReleasedError.js.map +1 -1
  396. package/error/RepositoryNotFoundError.js +1 -1
  397. package/error/RepositoryNotFoundError.js.map +1 -1
  398. package/error/RepositoryNotTreeError.js +1 -1
  399. package/error/RepositoryNotTreeError.js.map +1 -1
  400. package/error/ReturningStatementNotSupportedError.js +1 -1
  401. package/error/ReturningStatementNotSupportedError.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/TransactionAlreadyStartedError.js +1 -1
  407. package/error/TransactionAlreadyStartedError.js.map +1 -1
  408. package/error/TransactionNotStartedError.js +1 -1
  409. package/error/TransactionNotStartedError.js.map +1 -1
  410. package/error/TreeRepositoryNotSupportedError.js +1 -1
  411. package/error/TreeRepositoryNotSupportedError.js.map +1 -1
  412. package/error/TypeORMError.js +1 -1
  413. package/error/TypeORMError.js.map +1 -1
  414. package/error/UpdateValuesMissingError.js +1 -1
  415. package/error/UpdateValuesMissingError.js.map +1 -1
  416. package/error/UsingJoinColumnIsNotAllowedError.js +1 -1
  417. package/error/UsingJoinColumnIsNotAllowedError.js.map +1 -1
  418. package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js +1 -1
  419. package/error/UsingJoinColumnOnlyOnOneSideAllowedError.js.map +1 -1
  420. package/error/UsingJoinTableIsNotAllowedError.js +1 -1
  421. package/error/UsingJoinTableIsNotAllowedError.js.map +1 -1
  422. package/error/UsingJoinTableOnlyOnOneSideAllowedError.js +1 -1
  423. package/error/UsingJoinTableOnlyOnOneSideAllowedError.js.map +1 -1
  424. package/error/index.js +62 -62
  425. package/error/index.js.map +1 -1
  426. package/find-options/FindOptionsUtils.js +4 -4
  427. package/find-options/FindOptionsUtils.js.map +1 -1
  428. package/globals.js +7 -7
  429. package/globals.js.map +1 -1
  430. package/index.js +102 -102
  431. package/index.js.map +1 -1
  432. package/logger/DebugLogger.js +9 -9
  433. package/logger/DebugLogger.js.map +1 -1
  434. package/logger/FileLogger.js +1 -1
  435. package/logger/FileLogger.js.map +1 -1
  436. package/metadata/ColumnMetadata.js +4 -4
  437. package/metadata/ColumnMetadata.js.map +1 -1
  438. package/metadata/EmbeddedMetadata.js +1 -1
  439. package/metadata/EmbeddedMetadata.js.map +1 -1
  440. package/metadata/EntityMetadata.js +2 -2
  441. package/metadata/EntityMetadata.js.map +1 -1
  442. package/metadata/RelationMetadata.js +4 -4
  443. package/metadata/RelationMetadata.js.map +1 -1
  444. package/metadata-builder/EntityMetadataBuilder.js +5 -5
  445. package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  446. package/metadata-builder/JunctionEntityMetadataBuilder.js +1 -1
  447. package/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
  448. package/migration/MigrationExecutor.js +33 -33
  449. package/migration/MigrationExecutor.js.map +1 -1
  450. package/naming-strategy/DefaultNamingStrategy.js +10 -10
  451. package/naming-strategy/DefaultNamingStrategy.js.map +1 -1
  452. package/package.json +1 -1
  453. package/persistence/EntityPersistExecutor.js +5 -5
  454. package/persistence/EntityPersistExecutor.js.map +1 -1
  455. package/persistence/Subject.js +1 -1
  456. package/persistence/Subject.js.map +1 -1
  457. package/persistence/SubjectDatabaseEntityLoader.js +6 -6
  458. package/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
  459. package/persistence/SubjectExecutor.js +31 -31
  460. package/persistence/SubjectExecutor.js.map +1 -1
  461. package/persistence/SubjectTopoligicalSorter.js +5 -5
  462. package/persistence/SubjectTopoligicalSorter.js.map +1 -1
  463. package/persistence/subject-builder/CascadesSubjectBuilder.js +1 -1
  464. package/persistence/subject-builder/CascadesSubjectBuilder.js.map +1 -1
  465. package/persistence/tree/ClosureSubjectExecutor.js +13 -13
  466. package/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
  467. package/persistence/tree/MaterializedPathSubjectExecutor.js +5 -5
  468. package/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
  469. package/persistence/tree/NestedSetSubjectExecutor.js +14 -14
  470. package/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
  471. package/platform/PlatformTools.js +8 -8
  472. package/platform/PlatformTools.js.map +1 -1
  473. package/query-builder/DeleteQueryBuilder.js +4 -4
  474. package/query-builder/DeleteQueryBuilder.js.map +1 -1
  475. package/query-builder/InsertQueryBuilder.js +7 -7
  476. package/query-builder/InsertQueryBuilder.js.map +1 -1
  477. package/query-builder/JoinAttribute.js +1 -1
  478. package/query-builder/JoinAttribute.js.map +1 -1
  479. package/query-builder/QueryBuilder.js +37 -37
  480. package/query-builder/QueryBuilder.js.map +1 -1
  481. package/query-builder/QueryBuilderUtils.js +1 -1
  482. package/query-builder/QueryBuilderUtils.js.map +1 -1
  483. package/query-builder/QueryExpressionMap.js +3 -3
  484. package/query-builder/QueryExpressionMap.js.map +1 -1
  485. package/query-builder/RelationLoader.js +2 -2
  486. package/query-builder/RelationLoader.js.map +1 -1
  487. package/query-builder/RelationQueryBuilder.js +13 -13
  488. package/query-builder/RelationQueryBuilder.js.map +1 -1
  489. package/query-builder/RelationRemover.js +12 -12
  490. package/query-builder/RelationRemover.js.map +1 -1
  491. package/query-builder/RelationUpdater.js +2 -2
  492. package/query-builder/ReturningResultsEntityUpdator.js +6 -6
  493. package/query-builder/SelectQueryBuilder.js +36 -36
  494. package/query-builder/SelectQueryBuilder.js.map +1 -1
  495. package/query-builder/SoftDeleteQueryBuilder.js +4 -4
  496. package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  497. package/query-builder/UpdateQueryBuilder.js +7 -7
  498. package/query-builder/UpdateQueryBuilder.js.map +1 -1
  499. package/query-builder/relation-count/RelationCountAttribute.js +2 -2
  500. package/query-builder/relation-count/RelationCountAttribute.js.map +1 -1
  501. package/query-builder/relation-count/RelationCountLoader.js +4 -4
  502. package/query-builder/relation-id/RelationIdAttribute.js +1 -1
  503. package/query-builder/relation-id/RelationIdAttribute.js.map +1 -1
  504. package/query-builder/relation-id/RelationIdLoader.js +5 -5
  505. package/query-builder/relation-id/RelationIdLoader.js.map +1 -1
  506. package/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js +3 -3
  507. package/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js.map +1 -1
  508. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js +2 -2
  509. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  510. package/query-runner/BaseQueryRunner.js +25 -25
  511. package/query-runner/BaseQueryRunner.js.map +1 -1
  512. package/query-runner/QueryLock.js +3 -3
  513. package/query-runner/QueryLock.js.map +1 -1
  514. package/repository/AbstractRepository.js +1 -1
  515. package/repository/AbstractRepository.js.map +1 -1
  516. package/repository/BaseEntity.js +4 -4
  517. package/repository/BaseEntity.js.map +1 -1
  518. package/repository/MongoRepository.js +1 -1
  519. package/repository/MongoRepository.js.map +1 -1
  520. package/repository/Repository.js +1 -1
  521. package/repository/Repository.js.map +1 -1
  522. package/repository/TreeRepository.js +7 -7
  523. package/repository/TreeRepository.js.map +1 -1
  524. package/schema-builder/MongoSchemaBuilder.js +2 -2
  525. package/schema-builder/RdbmsSchemaBuilder.js +95 -95
  526. package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  527. package/schema-builder/table/Table.js +1 -1
  528. package/schema-builder/table/Table.js.map +1 -1
  529. package/schema-builder/table/TableCheck.js +1 -1
  530. package/schema-builder/table/TableCheck.js.map +1 -1
  531. package/schema-builder/table/TableForeignKey.js +2 -2
  532. package/schema-builder/table/TableForeignKey.js.map +1 -1
  533. package/schema-builder/table/TableIndex.js +1 -1
  534. package/schema-builder/table/TableIndex.js.map +1 -1
  535. package/schema-builder/table/TableUnique.js +1 -1
  536. package/schema-builder/table/TableUnique.js.map +1 -1
  537. package/util/DateUtils.js +1 -1
  538. package/util/DateUtils.js.map +1 -1
  539. package/util/DirectoryExportedClassesLoader.js +1 -1
  540. package/util/DirectoryExportedClassesLoader.js.map +1 -1
  541. package/util/ObjectUtils.js +2 -2
  542. package/util/ObjectUtils.js.map +1 -1
  543. package/util/OrmUtils.js +2 -2
  544. package/util/OrmUtils.js.map +1 -1
  545. package/util/StringUtils.js +2 -2
  546. package/util/StringUtils.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/DateUtils.ts"],"names":[],"mappings":"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","file":"DateUtils.js","sourcesContent":["import { ColumnMetadata } from \"../metadata/ColumnMetadata\";\n\n/**\n * Provides utilities to transform hydrated and persisted data.\n */\nexport class DateUtils {\n\n // -------------------------------------------------------------------------\n // Public Static Methods\n // -------------------------------------------------------------------------\n\n /**\n * Normalizes date object hydrated from the database.\n */\n static normalizeHydratedDate(mixedDate: Date|string|undefined): Date|string|undefined {\n if (!mixedDate)\n return mixedDate;\n\n return typeof mixedDate === \"string\" ? new Date(mixedDate) : mixedDate as Date;\n }\n\n /**\n * Converts given value into date string in a \"YYYY-MM-DD\" format.\n */\n static mixedDateToDateString(value: string|Date): string {\n if (value instanceof Date)\n return this.formatZerolessValue(value.getFullYear()) + \"-\" + this.formatZerolessValue(value.getMonth() + 1) + \"-\" + this.formatZerolessValue(value.getDate());\n\n return value;\n }\n\n /**\n * Converts given value into date object.\n */\n static mixedDateToDate(mixedDate: Date|string, toUtc: boolean = false, useMilliseconds = true): Date {\n let date = typeof mixedDate === \"string\" ? new Date(mixedDate) : mixedDate;\n\n if (toUtc)\n date = new Date(\n date.getUTCFullYear(),\n date.getUTCMonth(),\n date.getUTCDate(),\n date.getUTCHours(),\n date.getUTCMinutes(),\n date.getUTCSeconds(),\n date.getUTCMilliseconds()\n );\n\n if (!useMilliseconds)\n date.setUTCMilliseconds(0);\n\n return date;\n }\n\n /**\n * Converts given value into time string in a \"HH:mm:ss\" format.\n */\n static mixedDateToTimeString(value: Date|any, skipSeconds: boolean = false): string|any {\n if (value instanceof Date)\n return this.formatZerolessValue(value.getHours()) +\n \":\" + this.formatZerolessValue(value.getMinutes()) +\n (!skipSeconds ? \":\" + this.formatZerolessValue(value.getSeconds()) : \"\");\n\n return value;\n }\n\n /**\n * Converts given value into time string in a \"HH:mm:ss\" format.\n */\n static mixedTimeToDate(value: Date|any): string|any {\n if (typeof value === \"string\") {\n const [hours, minutes, seconds] = value.split(\":\");\n const date = new Date();\n if (hours)\n date.setHours(parseInt(hours));\n if (minutes)\n date.setMinutes(parseInt(minutes));\n if (seconds)\n date.setSeconds(parseInt(seconds));\n return date;\n }\n\n return value;\n }\n\n /**\n * Converts given string value with \"-\" separator into a \"HH:mm:ss\" format.\n */\n static mixedTimeToString(value: string|any, skipSeconds: boolean = false): string|any {\n value = value instanceof Date ? (value.getHours() + \":\" + value.getMinutes() + (!skipSeconds ? \":\" + value.getSeconds() : \"\")) : value;\n if (typeof value === \"string\") {\n return value.split(\":\")\n .map(v => v.length === 1 ? \"0\" + v : v) // append zero at beginning if we have a first-zero-less number\n .join(\":\");\n }\n\n return value;\n }\n\n /**\n * Converts given value into datetime string in a \"YYYY-MM-DD HH-mm-ss\" format.\n */\n static mixedDateToDatetimeString(value: Date|any, useMilliseconds?: boolean): string|any {\n if (typeof value === \"string\") {\n value = new Date(value);\n }\n if (value instanceof Date) {\n let finalValue = this.formatZerolessValue(value.getFullYear()) + \"-\" +\n this.formatZerolessValue(value.getMonth() + 1) + \"-\" +\n this.formatZerolessValue(value.getDate()) + \" \" +\n this.formatZerolessValue(value.getHours()) + \":\" +\n this.formatZerolessValue(value.getMinutes()) + \":\" +\n this.formatZerolessValue(value.getSeconds());\n\n if (useMilliseconds)\n finalValue += `.${this.formatMilliseconds(value.getMilliseconds())}`;\n\n value = finalValue;\n }\n\n\n return value;\n }\n\n /**\n * Converts given value into utc datetime string in a \"YYYY-MM-DD HH-mm-ss.sss\" format.\n */\n static mixedDateToUtcDatetimeString(value: Date|any): string|any {\n if (typeof value === \"string\") {\n value = new Date(value);\n }\n if (value instanceof Date) {\n return this.formatZerolessValue(value.getUTCFullYear()) + \"-\" +\n this.formatZerolessValue(value.getUTCMonth() + 1) + \"-\" +\n this.formatZerolessValue(value.getUTCDate()) + \" \" +\n this.formatZerolessValue(value.getUTCHours()) + \":\" +\n this.formatZerolessValue(value.getUTCMinutes()) + \":\" +\n this.formatZerolessValue(value.getUTCSeconds()) + \".\" +\n this.formatMilliseconds(value.getUTCMilliseconds());\n }\n\n return value;\n }\n\n /**\n * Converts each item in the given array to string joined by \",\" separator.\n */\n static simpleArrayToString(value: any[]|any): string[]|any {\n if (Array.isArray(value)) {\n return (value as any[])\n .map(i => String(i))\n .join(\",\");\n }\n\n return value;\n }\n\n /**\n * Converts given string to simple array split by \",\" separator.\n */\n static stringToSimpleArray(value: string|any): string|any {\n if (value instanceof String || typeof value === \"string\") {\n if (value.length > 0) {\n return value.split(\",\");\n } else {\n return [];\n }\n }\n\n return value;\n }\n\n static simpleJsonToString(value: any): string {\n return JSON.stringify(value);\n }\n\n static stringToSimpleJson(value: any) {\n return typeof value === \"string\" ? JSON.parse(value) : value;\n }\n\n static simpleEnumToString(value: any) {\n return \"\" + value;\n }\n\n static stringToSimpleEnum(value: any, columnMetadata: ColumnMetadata) {\n if (\n columnMetadata.enum\n && !isNaN(value)\n && columnMetadata.enum.indexOf(parseInt(value)) >= 0\n ) {\n // convert to number if that exists in poosible enum options\n value = parseInt(value);\n }\n\n return value;\n }\n\n // -------------------------------------------------------------------------\n // Private Static Methods\n // -------------------------------------------------------------------------\n\n /**\n * Formats given number to \"0x\" format, e.g. if it is 1 then it will return \"01\".\n */\n private static formatZerolessValue(value: number): string {\n if (value < 10)\n return \"0\" + value;\n\n return String(value);\n }\n\n /**\n * Formats given number to \"0x\" format, e.g. if it is 1 then it will return \"01\".\n */\n private static formatMilliseconds(value: number): string {\n if (value < 10) {\n return \"00\" + value;\n } else if (value < 100) {\n return \"0\" + value;\n } else {\n return String(value);\n }\n }\n\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/util/DateUtils.ts"],"names":[],"mappings":"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","file":"DateUtils.js","sourcesContent":["import { ColumnMetadata } from \"../metadata/ColumnMetadata\";\n\n/**\n * Provides utilities to transform hydrated and persisted data.\n */\nexport class DateUtils {\n\n // -------------------------------------------------------------------------\n // Public Static Methods\n // -------------------------------------------------------------------------\n\n /**\n * Normalizes date object hydrated from the database.\n */\n static normalizeHydratedDate(mixedDate: Date|string|undefined): Date|string|undefined {\n if (!mixedDate)\n return mixedDate;\n\n return typeof mixedDate === \"string\" ? new Date(mixedDate) : mixedDate as Date;\n }\n\n /**\n * Converts given value into date string in a \"YYYY-MM-DD\" format.\n */\n static mixedDateToDateString(value: string|Date): string {\n if (value instanceof Date)\n return this.formatZerolessValue(value.getFullYear()) + \"-\" + this.formatZerolessValue(value.getMonth() + 1) + \"-\" + this.formatZerolessValue(value.getDate());\n\n return value;\n }\n\n /**\n * Converts given value into date object.\n */\n static mixedDateToDate(mixedDate: Date|string, toUtc: boolean = false, useMilliseconds = true): Date {\n let date = typeof mixedDate === \"string\" ? new Date(mixedDate) : mixedDate;\n\n if (toUtc)\n date = new Date(\n date.getUTCFullYear(),\n date.getUTCMonth(),\n date.getUTCDate(),\n date.getUTCHours(),\n date.getUTCMinutes(),\n date.getUTCSeconds(),\n date.getUTCMilliseconds()\n );\n\n if (!useMilliseconds)\n date.setUTCMilliseconds(0);\n\n return date;\n }\n\n /**\n * Converts given value into time string in a \"HH:mm:ss\" format.\n */\n static mixedDateToTimeString(value: Date|any, skipSeconds: boolean = false): string|any {\n if (value instanceof Date)\n return this.formatZerolessValue(value.getHours()) +\n \":\" + this.formatZerolessValue(value.getMinutes()) +\n (!skipSeconds ? \":\" + this.formatZerolessValue(value.getSeconds()) : \"\");\n\n return value;\n }\n\n /**\n * Converts given value into time string in a \"HH:mm:ss\" format.\n */\n static mixedTimeToDate(value: Date|any): string|any {\n if (typeof value === \"string\") {\n const [hours, minutes, seconds] = value.split(\":\");\n const date = new Date();\n if (hours)\n date.setHours(parseInt(hours));\n if (minutes)\n date.setMinutes(parseInt(minutes));\n if (seconds)\n date.setSeconds(parseInt(seconds));\n return date;\n }\n\n return value;\n }\n\n /**\n * Converts given string value with \"-\" separator into a \"HH:mm:ss\" format.\n */\n static mixedTimeToString(value: string|any, skipSeconds: boolean = false): string|any {\n value = value instanceof Date ? (value.getHours() + \":\" + value.getMinutes() + (!skipSeconds ? \":\" + value.getSeconds() : \"\")) : value;\n if (typeof value === \"string\") {\n return value.split(\":\")\n .map(v => v.length === 1 ? \"0\" + v : v) // append zero at beginning if we have a first-zero-less number\n .join(\":\");\n }\n\n return value;\n }\n\n /**\n * Converts given value into datetime string in a \"YYYY-MM-DD HH-mm-ss\" format.\n */\n static mixedDateToDatetimeString(value: Date|any, useMilliseconds?: boolean): string|any {\n if (typeof value === \"string\") {\n value = new Date(value);\n }\n if (value instanceof Date) {\n let finalValue = this.formatZerolessValue(value.getFullYear()) + \"-\" +\n this.formatZerolessValue(value.getMonth() + 1) + \"-\" +\n this.formatZerolessValue(value.getDate()) + \" \" +\n this.formatZerolessValue(value.getHours()) + \":\" +\n this.formatZerolessValue(value.getMinutes()) + \":\" +\n this.formatZerolessValue(value.getSeconds());\n\n if (useMilliseconds)\n finalValue += `.${this.formatMilliseconds(value.getMilliseconds())}`;\n\n value = finalValue;\n }\n\n\n return value;\n }\n\n /**\n * Converts given value into utc datetime string in a \"YYYY-MM-DD HH-mm-ss.sss\" format.\n */\n static mixedDateToUtcDatetimeString(value: Date|any): string|any {\n if (typeof value === \"string\") {\n value = new Date(value);\n }\n if (value instanceof Date) {\n return this.formatZerolessValue(value.getUTCFullYear()) + \"-\" +\n this.formatZerolessValue(value.getUTCMonth() + 1) + \"-\" +\n this.formatZerolessValue(value.getUTCDate()) + \" \" +\n this.formatZerolessValue(value.getUTCHours()) + \":\" +\n this.formatZerolessValue(value.getUTCMinutes()) + \":\" +\n this.formatZerolessValue(value.getUTCSeconds()) + \".\" +\n this.formatMilliseconds(value.getUTCMilliseconds());\n }\n\n return value;\n }\n\n /**\n * Converts each item in the given array to string joined by \",\" separator.\n */\n static simpleArrayToString(value: any[]|any): string[]|any {\n if (Array.isArray(value)) {\n return (value as any[])\n .map(i => String(i))\n .join(\",\");\n }\n\n return value;\n }\n\n /**\n * Converts given string to simple array split by \",\" separator.\n */\n static stringToSimpleArray(value: string|any): string|any {\n if (value instanceof String || typeof value === \"string\") {\n if (value.length > 0) {\n return value.split(\",\");\n } else {\n return [];\n }\n }\n\n return value;\n }\n\n static simpleJsonToString(value: any): string {\n return JSON.stringify(value);\n }\n\n static stringToSimpleJson(value: any) {\n return typeof value === \"string\" ? JSON.parse(value) : value;\n }\n\n static simpleEnumToString(value: any) {\n return \"\" + value;\n }\n\n static stringToSimpleEnum(value: any, columnMetadata: ColumnMetadata) {\n if (\n columnMetadata.enum\n && !isNaN(value)\n && columnMetadata.enum.indexOf(parseInt(value)) >= 0\n ) {\n // convert to number if that exists in poosible enum options\n value = parseInt(value);\n }\n\n return value;\n }\n\n // -------------------------------------------------------------------------\n // Private Static Methods\n // -------------------------------------------------------------------------\n\n /**\n * Formats given number to \"0x\" format, e.g. if it is 1 then it will return \"01\".\n */\n private static formatZerolessValue(value: number): string {\n if (value < 10)\n return \"0\" + value;\n\n return String(value);\n }\n\n /**\n * Formats given number to \"0x\" format, e.g. if it is 1 then it will return \"01\".\n */\n private static formatMilliseconds(value: number): string {\n if (value < 10) {\n return \"00\" + value;\n } else if (value < 100) {\n return \"0\" + value;\n } else {\n return String(value);\n }\n }\n\n}\n"],"sourceRoot":".."}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.importJsonsFromDirectories = exports.importClassesFromDirectories = void 0;
4
4
  var tslib_1 = require("tslib");
5
- var glob_1 = tslib_1.__importDefault(require("glob"));
5
+ var glob_1 = (0, tslib_1.__importDefault)(require("glob"));
6
6
  var PlatformTools_1 = require("../platform/PlatformTools");
7
7
  var EntitySchema_1 = require("../entity-schema/EntitySchema");
8
8
  /**
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/DirectoryExportedClassesLoader.ts"],"names":[],"mappings":"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","file":"DirectoryExportedClassesLoader.js","sourcesContent":["import glob from \"glob\";\nimport {PlatformTools} from \"../platform/PlatformTools\";\nimport {EntitySchema} from \"../entity-schema/EntitySchema\";\nimport {Logger} from \"../logger/Logger\";\n/**\n * Loads all exported classes from the given directory.\n */\nexport function importClassesFromDirectories(logger: Logger, directories: string[], formats = [\".js\", \".cjs\", \".ts\"]): Function[] {\n\n const logLevel = \"info\";\n const classesNotFoundMessage = \"No classes were found using the provided glob pattern: \";\n const classesFoundMessage = \"All classes found using provided glob pattern\";\n function loadFileClasses(exported: any, allLoaded: Function[]) {\n if (typeof exported === \"function\" || exported instanceof EntitySchema) {\n allLoaded.push(exported);\n\n } else if (Array.isArray(exported)) {\n exported.forEach((i: any) => loadFileClasses(i, allLoaded));\n\n } else if (typeof exported === \"object\" && exported !== null) {\n Object.keys(exported).forEach(key => loadFileClasses(exported[key], allLoaded));\n\n }\n return allLoaded;\n }\n\n const allFiles = directories.reduce((allDirs, dir) => {\n return allDirs.concat(glob.sync(PlatformTools.pathNormalize(dir)));\n }, [] as string[]);\n\n if (directories.length > 0 && allFiles.length === 0) {\n logger.log(logLevel, `${classesNotFoundMessage} \"${directories}\"`);\n } else if (allFiles.length > 0) {\n logger.log(logLevel, `${classesFoundMessage} \"${directories}\" : \"${allFiles}\"`);\n }\n const dirs = allFiles\n .filter(file => {\n const dtsExtension = file.substring(file.length - 5, file.length);\n return formats.indexOf(PlatformTools.pathExtname(file)) !== -1 && dtsExtension !== \".d.ts\";\n })\n .map(file => require(PlatformTools.pathResolve(file)));\n\n return loadFileClasses(dirs, []);\n}\n\n/**\n * Loads all json files from the given directory.\n */\nexport function importJsonsFromDirectories(directories: string[], format = \".json\"): any[] {\n\n const allFiles = directories.reduce((allDirs, dir) => {\n return allDirs.concat(glob.sync(PlatformTools.pathNormalize(dir)));\n }, [] as string[]);\n\n return allFiles\n .filter(file => PlatformTools.pathExtname(file) === format)\n .map(file => require(PlatformTools.pathResolve(file)));\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/util/DirectoryExportedClassesLoader.ts"],"names":[],"mappings":"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","file":"DirectoryExportedClassesLoader.js","sourcesContent":["import glob from \"glob\";\nimport {PlatformTools} from \"../platform/PlatformTools\";\nimport {EntitySchema} from \"../entity-schema/EntitySchema\";\nimport {Logger} from \"../logger/Logger\";\n/**\n * Loads all exported classes from the given directory.\n */\nexport function importClassesFromDirectories(logger: Logger, directories: string[], formats = [\".js\", \".cjs\", \".ts\"]): Function[] {\n\n const logLevel = \"info\";\n const classesNotFoundMessage = \"No classes were found using the provided glob pattern: \";\n const classesFoundMessage = \"All classes found using provided glob pattern\";\n function loadFileClasses(exported: any, allLoaded: Function[]) {\n if (typeof exported === \"function\" || exported instanceof EntitySchema) {\n allLoaded.push(exported);\n\n } else if (Array.isArray(exported)) {\n exported.forEach((i: any) => loadFileClasses(i, allLoaded));\n\n } else if (typeof exported === \"object\" && exported !== null) {\n Object.keys(exported).forEach(key => loadFileClasses(exported[key], allLoaded));\n\n }\n return allLoaded;\n }\n\n const allFiles = directories.reduce((allDirs, dir) => {\n return allDirs.concat(glob.sync(PlatformTools.pathNormalize(dir)));\n }, [] as string[]);\n\n if (directories.length > 0 && allFiles.length === 0) {\n logger.log(logLevel, `${classesNotFoundMessage} \"${directories}\"`);\n } else if (allFiles.length > 0) {\n logger.log(logLevel, `${classesFoundMessage} \"${directories}\" : \"${allFiles}\"`);\n }\n const dirs = allFiles\n .filter(file => {\n const dtsExtension = file.substring(file.length - 5, file.length);\n return formats.indexOf(PlatformTools.pathExtname(file)) !== -1 && dtsExtension !== \".d.ts\";\n })\n .map(file => require(PlatformTools.pathResolve(file)));\n\n return loadFileClasses(dirs, []);\n}\n\n/**\n * Loads all json files from the given directory.\n */\nexport function importJsonsFromDirectories(directories: string[], format = \".json\"): any[] {\n\n const allFiles = directories.reduce((allDirs, dir) => {\n return allDirs.concat(glob.sync(PlatformTools.pathNormalize(dir)));\n }, [] as string[]);\n\n return allFiles\n .filter(file => PlatformTools.pathExtname(file) === format)\n .map(file => require(PlatformTools.pathResolve(file)));\n}\n"],"sourceRoot":".."}
@@ -18,10 +18,10 @@ var ObjectUtils = /** @class */ (function () {
18
18
  sources[_i - 1] = arguments[_i];
19
19
  }
20
20
  try {
21
- for (var sources_1 = tslib_1.__values(sources), sources_1_1 = sources_1.next(); !sources_1_1.done; sources_1_1 = sources_1.next()) {
21
+ for (var sources_1 = (0, tslib_1.__values)(sources), sources_1_1 = sources_1.next(); !sources_1_1.done; sources_1_1 = sources_1.next()) {
22
22
  var source = sources_1_1.value;
23
23
  try {
24
- for (var _c = (e_2 = void 0, tslib_1.__values(Object.getOwnPropertyNames(source))), _d = _c.next(); !_d.done; _d = _c.next()) {
24
+ for (var _c = (e_2 = void 0, (0, tslib_1.__values)(Object.getOwnPropertyNames(source))), _d = _c.next(); !_d.done; _d = _c.next()) {
25
25
  var prop = _d.value;
26
26
  target[prop] = source[prop];
27
27
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/ObjectUtils.ts"],"names":[],"mappings":";;;;AAAA;IAAA;IAyCA,CAAC;IAbC;;;;;OAKG;IACI,kBAAM,GAAb,UAAc,MAAc;;QAAE,iBAAiB;aAAjB,UAAiB,EAAjB,qBAAiB,EAAjB,IAAiB;YAAjB,gCAAiB;;;YAC7C,KAAqB,IAAA,YAAA,iBAAA,OAAO,CAAA,gCAAA,qDAAE;gBAAzB,IAAM,MAAM,oBAAA;;oBACf,KAAmB,IAAA,oBAAA,iBAAA,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAA,CAAA,gBAAA,4BAAE;wBAAlD,IAAM,IAAI,WAAA;wBACV,MAAc,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;qBACxC;;;;;;;;;aACF;;;;;;;;;IACH,CAAC;IACH,kBAAC;AAAD,CAzCA,AAyCC,IAAA;AAzCY,kCAAW","file":"ObjectUtils.js","sourcesContent":["export class ObjectUtils {\n /**\n * Copy the values of all of the enumerable own properties from one or more source objects to a\n * target object.\n * @param target The target object to copy to.\n * @param source The source object from which to copy properties.\n */\n static assign<T, U>(target: T, source: U): void;\n\n /**\n * Copy the values of all of the enumerable own properties from one or more source objects to a\n * target object.\n * @param target The target object to copy to.\n * @param source1 The first source object from which to copy properties.\n * @param source2 The second source object from which to copy properties.\n */\n static assign<T, U, V>(target: T, source1: U, source2: V): void;\n\n /**\n * Copy the values of all of the enumerable own properties from one or more source objects to a\n * target object.\n * @param target The target object to copy to.\n * @param source1 The first source object from which to copy properties.\n * @param source2 The second source object from which to copy properties.\n * @param source3 The third source object from which to copy properties.\n */\n static assign<T, U, V, W>(target: T, source1: U, source2: V, source3: W): void;\n\n /**\n * Copy the values of all of the enumerable own properties from one or more source objects to a\n * target object.\n * @param target The target object to copy to.\n * @param sources One or more source objects from which to copy properties\n */\n static assign(target: object, ...sources: any[]): void {\n for (const source of sources) {\n for (const prop of Object.getOwnPropertyNames(source)) {\n (target as any)[prop] = source[prop];\n }\n }\n }\n}"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/util/ObjectUtils.ts"],"names":[],"mappings":";;;;AAAA;IAAA;IAyCA,CAAC;IAbC;;;;;OAKG;IACI,kBAAM,GAAb,UAAc,MAAc;;QAAE,iBAAiB;aAAjB,UAAiB,EAAjB,qBAAiB,EAAjB,IAAiB;YAAjB,gCAAiB;;;YAC7C,KAAqB,IAAA,YAAA,sBAAA,OAAO,CAAA,gCAAA,qDAAE;gBAAzB,IAAM,MAAM,oBAAA;;oBACf,KAAmB,IAAA,oBAAA,sBAAA,MAAM,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAA,CAAA,gBAAA,4BAAE;wBAAlD,IAAM,IAAI,WAAA;wBACV,MAAc,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;qBACxC;;;;;;;;;aACF;;;;;;;;;IACH,CAAC;IACH,kBAAC;AAAD,CAzCA,AAyCC,IAAA;AAzCY,kCAAW","file":"ObjectUtils.js","sourcesContent":["export class ObjectUtils {\n /**\n * Copy the values of all of the enumerable own properties from one or more source objects to a\n * target object.\n * @param target The target object to copy to.\n * @param source The source object from which to copy properties.\n */\n static assign<T, U>(target: T, source: U): void;\n\n /**\n * Copy the values of all of the enumerable own properties from one or more source objects to a\n * target object.\n * @param target The target object to copy to.\n * @param source1 The first source object from which to copy properties.\n * @param source2 The second source object from which to copy properties.\n */\n static assign<T, U, V>(target: T, source1: U, source2: V): void;\n\n /**\n * Copy the values of all of the enumerable own properties from one or more source objects to a\n * target object.\n * @param target The target object to copy to.\n * @param source1 The first source object from which to copy properties.\n * @param source2 The second source object from which to copy properties.\n * @param source3 The third source object from which to copy properties.\n */\n static assign<T, U, V, W>(target: T, source1: U, source2: V, source3: W): void;\n\n /**\n * Copy the values of all of the enumerable own properties from one or more source objects to a\n * target object.\n * @param target The target object to copy to.\n * @param sources One or more source objects from which to copy properties\n */\n static assign(target: object, ...sources: any[]): void {\n for (const source of sources) {\n for (const prop of Object.getOwnPropertyNames(source)) {\n (target as any)[prop] = source[prop];\n }\n }\n }\n}"],"sourceRoot":".."}
package/util/OrmUtils.js CHANGED
@@ -113,7 +113,7 @@ var OrmUtils = /** @class */ (function () {
113
113
  if (memo === void 0) { memo = new Map(); }
114
114
  if (this.isPlainObject(target) && this.isPlainObject(source)) {
115
115
  try {
116
- for (var _b = tslib_1.__values(Object.keys(source)), _c = _b.next(); !_c.done; _c = _b.next()) {
116
+ for (var _b = (0, tslib_1.__values)(Object.keys(source)), _c = _b.next(); !_c.done; _c = _b.next()) {
117
117
  var key = _c.value;
118
118
  this.mergeObjectKey(target, key, source[key], memo);
119
119
  }
@@ -145,7 +145,7 @@ var OrmUtils = /** @class */ (function () {
145
145
  return target;
146
146
  }
147
147
  try {
148
- for (var sources_1 = tslib_1.__values(sources), sources_1_1 = sources_1.next(); !sources_1_1.done; sources_1_1 = sources_1.next()) {
148
+ for (var sources_1 = (0, tslib_1.__values)(sources), sources_1_1 = sources_1.next(); !sources_1_1.done; sources_1_1 = sources_1.next()) {
149
149
  var source = sources_1_1.value;
150
150
  OrmUtils.merge(target, source);
151
151
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/OrmUtils.ts"],"names":[],"mappings":"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","file":"OrmUtils.js","sourcesContent":["import {ObjectLiteral} from \"../common/ObjectLiteral\";\n\nexport class OrmUtils {\n\n // -------------------------------------------------------------------------\n // Public methods\n // -------------------------------------------------------------------------\n\n /**\n * Chunks array into pieces.\n */\n static chunk<T>(array: T[], size: number): T[][] {\n return Array.from(Array(Math.ceil(array.length / size)), (_, i) => {\n return array.slice(i * size, i * size + size);\n });\n }\n\n static splitClassesAndStrings<T>(clsesAndStrings: (string | T)[]): [T[], string[]] {\n return [\n (clsesAndStrings).filter((cls): cls is T => typeof cls !== \"string\"),\n (clsesAndStrings).filter((str): str is string => typeof str === \"string\"),\n ];\n }\n\n static groupBy<T, R>(array: T[], propertyCallback: (item: T) => R): { id: R, items: T[] }[] {\n return array.reduce((groupedArray, value) => {\n const key = propertyCallback(value);\n let grouped = groupedArray.find(i => i.id === key);\n if (!grouped) {\n grouped = { id: key, items: [] };\n groupedArray.push(grouped);\n }\n grouped.items.push(value);\n return groupedArray;\n }, [] as Array<{ id: R, items: T[] }>);\n }\n\n static uniq<T>(array: T[], criteria?: (item: T) => any): T[];\n static uniq<T, K extends keyof T>(array: T[], property: K): T[];\n static uniq<T, K extends keyof T>(array: T[], criteriaOrProperty?: ((item: T) => any) | K): T[] {\n return array.reduce((uniqueArray, item) => {\n let found: boolean = false;\n if (criteriaOrProperty instanceof Function) {\n const itemValue = criteriaOrProperty(item);\n found = !!uniqueArray.find(uniqueItem => criteriaOrProperty(uniqueItem) === itemValue);\n\n } else if (typeof criteriaOrProperty === \"string\") {\n found = !!uniqueArray.find(uniqueItem => uniqueItem[criteriaOrProperty] === item[criteriaOrProperty]);\n\n } else {\n found = uniqueArray.indexOf(item) !== -1;\n }\n\n if (!found)\n uniqueArray.push(item);\n\n return uniqueArray;\n }, [] as T[]);\n }\n\n // Checks if it's an object made by Object.create(null), {} or new Object()\n private static isPlainObject(item: any) {\n if (item === null || item === undefined) {\n return false;\n }\n\n return !item.constructor || item.constructor === Object;\n }\n\n private static mergeArrayKey(target: any, key: number, value: any, memo: Map<any, any>) {\n // Have we seen this before? Prevent infinite recursion.\n if (memo.has(value)) {\n target[key] = memo.get(value);\n return;\n }\n\n if (value instanceof Promise) {\n // Skip promises entirely.\n // This is a hold-over from the old code & is because we don't want to pull in\n // the lazy fields. Ideally we'd remove these promises via another function first\n // but for now we have to do it here.\n return;\n }\n\n\n if (!this.isPlainObject(value) && !Array.isArray(value)) {\n target[key] = value;\n return;\n }\n\n if (!target[key]) {\n target[key] = Array.isArray(value) ? [] : {};\n }\n\n memo.set(value, target[key]);\n this.merge(target[key], value, memo);\n memo.delete(value);\n }\n\n private static mergeObjectKey(target: any, key: string, value: any, memo: Map<any, any>) {\n // Have we seen this before? Prevent infinite recursion.\n if (memo.has(value)) {\n Object.assign(target, { [key]: memo.get(value) });\n return;\n }\n\n if (value instanceof Promise) {\n // Skip promises entirely.\n // This is a hold-over from the old code & is because we don't want to pull in\n // the lazy fields. Ideally we'd remove these promises via another function first\n // but for now we have to do it here.\n return;\n }\n\n if (!this.isPlainObject(value) && !Array.isArray(value)) {\n Object.assign(target, { [key]: value });\n return;\n }\n\n if (!target[key]) {\n Object.assign(target, { [key]: Array.isArray(value) ? [] : {} });\n }\n\n memo.set(value, target[key]);\n this.merge(target[key], value, memo);\n memo.delete(value);\n }\n\n private static merge(target: any, source: any, memo: Map<any, any> = new Map()): any {\n if (this.isPlainObject(target) && this.isPlainObject(source)) {\n for (const key of Object.keys(source)) {\n this.mergeObjectKey(target, key, source[key], memo);\n }\n }\n\n if (Array.isArray(target) && Array.isArray(source)) {\n for (let key = 0; key < source.length; key++) {\n this.mergeArrayKey(target, key, source[key], memo);\n }\n }\n }\n\n /**\n * Deep Object.assign.\n */\n static mergeDeep(target: any, ...sources: any[]): any {\n if (!sources.length) {\n return target;\n }\n\n for (const source of sources) {\n OrmUtils.merge(target, source);\n }\n\n return target;\n }\n\n /**\n * Deep compare objects.\n *\n * @see http://stackoverflow.com/a/1144249\n */\n static deepCompare(...args: any[]): boolean {\n let i: any, l: any, leftChain: any, rightChain: any;\n\n if (arguments.length < 1) {\n return true; // Die silently? Don't know how to handle such case, please help...\n // throw \"Need two or more arguments to compare\";\n }\n\n for (i = 1, l = arguments.length; i < l; i++) {\n\n leftChain = []; // Todo: this can be cached\n rightChain = [];\n\n if (!this.compare2Objects(leftChain, rightChain, arguments[0], arguments[i])) {\n return false;\n }\n }\n\n return true;\n }\n\n /**\n * Check if two entity-id-maps are the same\n */\n static compareIds(firstId: ObjectLiteral|undefined, secondId: ObjectLiteral|undefined): boolean {\n if (firstId === undefined || firstId === null || secondId === undefined || secondId === null)\n return false;\n\n // Optimized version for the common case\n if (\n ((typeof firstId.id === \"string\" && typeof secondId.id === \"string\") ||\n (typeof firstId.id === \"number\" && typeof secondId.id === \"number\")) &&\n Object.keys(firstId).length === 1 &&\n Object.keys(secondId).length === 1\n ) {\n return firstId.id === secondId.id;\n }\n\n return OrmUtils.deepCompare(firstId, secondId);\n }\n\n /**\n * Transforms given value into boolean value.\n */\n static toBoolean(value: any): boolean {\n if (typeof value === \"boolean\")\n return value;\n\n if (typeof value === \"string\")\n return value === \"true\" || value === \"1\";\n\n if (typeof value === \"number\")\n return value > 0;\n\n return false;\n }\n\n /**\n * Composes an object from the given array of keys and values.\n */\n static zipObject(keys: any[], values: any[]): ObjectLiteral {\n return keys.reduce((object, column, index) => {\n object[column] = values[index];\n return object;\n }, {} as ObjectLiteral);\n }\n\n /**\n * Compares two arrays.\n */\n static isArraysEqual(arr1: any[], arr2: any[]): boolean {\n if (arr1.length !== arr2.length) return false;\n return arr1.every(element => {\n return arr2.indexOf(element) !== -1;\n });\n }\n\n // -------------------------------------------------------------------------\n // Private methods\n // -------------------------------------------------------------------------\n\n private static compare2Objects(leftChain: any, rightChain: any, x: any, y: any) {\n let p;\n\n // remember that NaN === NaN returns false\n // and isNaN(undefined) returns true\n if (Number.isNaN(x) && Number.isNaN(y))\n return true;\n\n // Compare primitives and functions.\n // Check if both arguments link to the same object.\n // Especially useful on the step where we compare prototypes\n if (x === y)\n return true;\n\n // Unequal, but either is null or undefined (use case: jsonb comparasion)\n // PR #3776, todo: add tests\n if (x === null || y === null || x === undefined || y === undefined)\n return false;\n\n // Fix the buffer compare bug.\n // See: https://github.com/typeorm/typeorm/issues/3654\n if ((typeof x.equals === \"function\" || x.equals instanceof Function) && x.equals(y))\n return true;\n\n // Works in case when functions are created in constructor.\n // Comparing dates is a common scenario. Another built-ins?\n // We can even handle functions passed across iframes\n if ((typeof x === \"function\" && typeof y === \"function\") ||\n (x instanceof Date && y instanceof Date) ||\n (x instanceof RegExp && y instanceof RegExp) ||\n (x instanceof String && y instanceof String) ||\n (x instanceof Number && y instanceof Number))\n return x.toString() === y.toString();\n\n // At last checking prototypes as good as we can\n if (!(x instanceof Object && y instanceof Object))\n return false;\n\n if (x.isPrototypeOf(y) || y.isPrototypeOf(x))\n return false;\n\n if (x.constructor !== y.constructor)\n return false;\n\n if (x.prototype !== y.prototype)\n return false;\n\n // Check for infinitive linking loops\n if (leftChain.indexOf(x) > -1 || rightChain.indexOf(y) > -1)\n return false;\n\n // Quick checking of one object being a subset of another.\n // todo: cache the structure of arguments[0] for performance\n for (p in y) {\n if (y.hasOwnProperty(p) !== x.hasOwnProperty(p)) {\n return false;\n }\n else if (typeof y[p] !== typeof x[p]) {\n return false;\n }\n }\n\n for (p in x) {\n if (y.hasOwnProperty(p) !== x.hasOwnProperty(p)) {\n return false;\n }\n else if (typeof y[p] !== typeof x[p]) {\n return false;\n }\n\n switch (typeof (x[p])) {\n case \"object\":\n case \"function\":\n\n leftChain.push(x);\n rightChain.push(y);\n\n if (!this.compare2Objects(leftChain, rightChain, x[p], y[p])) {\n return false;\n }\n\n leftChain.pop();\n rightChain.pop();\n break;\n\n default:\n if (x[p] !== y[p]) {\n return false;\n }\n break;\n }\n }\n\n return true;\n }\n\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/util/OrmUtils.ts"],"names":[],"mappings":"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","file":"OrmUtils.js","sourcesContent":["import {ObjectLiteral} from \"../common/ObjectLiteral\";\n\nexport class OrmUtils {\n\n // -------------------------------------------------------------------------\n // Public methods\n // -------------------------------------------------------------------------\n\n /**\n * Chunks array into pieces.\n */\n static chunk<T>(array: T[], size: number): T[][] {\n return Array.from(Array(Math.ceil(array.length / size)), (_, i) => {\n return array.slice(i * size, i * size + size);\n });\n }\n\n static splitClassesAndStrings<T>(clsesAndStrings: (string | T)[]): [T[], string[]] {\n return [\n (clsesAndStrings).filter((cls): cls is T => typeof cls !== \"string\"),\n (clsesAndStrings).filter((str): str is string => typeof str === \"string\"),\n ];\n }\n\n static groupBy<T, R>(array: T[], propertyCallback: (item: T) => R): { id: R, items: T[] }[] {\n return array.reduce((groupedArray, value) => {\n const key = propertyCallback(value);\n let grouped = groupedArray.find(i => i.id === key);\n if (!grouped) {\n grouped = { id: key, items: [] };\n groupedArray.push(grouped);\n }\n grouped.items.push(value);\n return groupedArray;\n }, [] as Array<{ id: R, items: T[] }>);\n }\n\n static uniq<T>(array: T[], criteria?: (item: T) => any): T[];\n static uniq<T, K extends keyof T>(array: T[], property: K): T[];\n static uniq<T, K extends keyof T>(array: T[], criteriaOrProperty?: ((item: T) => any) | K): T[] {\n return array.reduce((uniqueArray, item) => {\n let found: boolean = false;\n if (criteriaOrProperty instanceof Function) {\n const itemValue = criteriaOrProperty(item);\n found = !!uniqueArray.find(uniqueItem => criteriaOrProperty(uniqueItem) === itemValue);\n\n } else if (typeof criteriaOrProperty === \"string\") {\n found = !!uniqueArray.find(uniqueItem => uniqueItem[criteriaOrProperty] === item[criteriaOrProperty]);\n\n } else {\n found = uniqueArray.indexOf(item) !== -1;\n }\n\n if (!found)\n uniqueArray.push(item);\n\n return uniqueArray;\n }, [] as T[]);\n }\n\n // Checks if it's an object made by Object.create(null), {} or new Object()\n private static isPlainObject(item: any) {\n if (item === null || item === undefined) {\n return false;\n }\n\n return !item.constructor || item.constructor === Object;\n }\n\n private static mergeArrayKey(target: any, key: number, value: any, memo: Map<any, any>) {\n // Have we seen this before? Prevent infinite recursion.\n if (memo.has(value)) {\n target[key] = memo.get(value);\n return;\n }\n\n if (value instanceof Promise) {\n // Skip promises entirely.\n // This is a hold-over from the old code & is because we don't want to pull in\n // the lazy fields. Ideally we'd remove these promises via another function first\n // but for now we have to do it here.\n return;\n }\n\n\n if (!this.isPlainObject(value) && !Array.isArray(value)) {\n target[key] = value;\n return;\n }\n\n if (!target[key]) {\n target[key] = Array.isArray(value) ? [] : {};\n }\n\n memo.set(value, target[key]);\n this.merge(target[key], value, memo);\n memo.delete(value);\n }\n\n private static mergeObjectKey(target: any, key: string, value: any, memo: Map<any, any>) {\n // Have we seen this before? Prevent infinite recursion.\n if (memo.has(value)) {\n Object.assign(target, { [key]: memo.get(value) });\n return;\n }\n\n if (value instanceof Promise) {\n // Skip promises entirely.\n // This is a hold-over from the old code & is because we don't want to pull in\n // the lazy fields. Ideally we'd remove these promises via another function first\n // but for now we have to do it here.\n return;\n }\n\n if (!this.isPlainObject(value) && !Array.isArray(value)) {\n Object.assign(target, { [key]: value });\n return;\n }\n\n if (!target[key]) {\n Object.assign(target, { [key]: Array.isArray(value) ? [] : {} });\n }\n\n memo.set(value, target[key]);\n this.merge(target[key], value, memo);\n memo.delete(value);\n }\n\n private static merge(target: any, source: any, memo: Map<any, any> = new Map()): any {\n if (this.isPlainObject(target) && this.isPlainObject(source)) {\n for (const key of Object.keys(source)) {\n this.mergeObjectKey(target, key, source[key], memo);\n }\n }\n\n if (Array.isArray(target) && Array.isArray(source)) {\n for (let key = 0; key < source.length; key++) {\n this.mergeArrayKey(target, key, source[key], memo);\n }\n }\n }\n\n /**\n * Deep Object.assign.\n */\n static mergeDeep(target: any, ...sources: any[]): any {\n if (!sources.length) {\n return target;\n }\n\n for (const source of sources) {\n OrmUtils.merge(target, source);\n }\n\n return target;\n }\n\n /**\n * Deep compare objects.\n *\n * @see http://stackoverflow.com/a/1144249\n */\n static deepCompare(...args: any[]): boolean {\n let i: any, l: any, leftChain: any, rightChain: any;\n\n if (arguments.length < 1) {\n return true; // Die silently? Don't know how to handle such case, please help...\n // throw \"Need two or more arguments to compare\";\n }\n\n for (i = 1, l = arguments.length; i < l; i++) {\n\n leftChain = []; // Todo: this can be cached\n rightChain = [];\n\n if (!this.compare2Objects(leftChain, rightChain, arguments[0], arguments[i])) {\n return false;\n }\n }\n\n return true;\n }\n\n /**\n * Check if two entity-id-maps are the same\n */\n static compareIds(firstId: ObjectLiteral|undefined, secondId: ObjectLiteral|undefined): boolean {\n if (firstId === undefined || firstId === null || secondId === undefined || secondId === null)\n return false;\n\n // Optimized version for the common case\n if (\n ((typeof firstId.id === \"string\" && typeof secondId.id === \"string\") ||\n (typeof firstId.id === \"number\" && typeof secondId.id === \"number\")) &&\n Object.keys(firstId).length === 1 &&\n Object.keys(secondId).length === 1\n ) {\n return firstId.id === secondId.id;\n }\n\n return OrmUtils.deepCompare(firstId, secondId);\n }\n\n /**\n * Transforms given value into boolean value.\n */\n static toBoolean(value: any): boolean {\n if (typeof value === \"boolean\")\n return value;\n\n if (typeof value === \"string\")\n return value === \"true\" || value === \"1\";\n\n if (typeof value === \"number\")\n return value > 0;\n\n return false;\n }\n\n /**\n * Composes an object from the given array of keys and values.\n */\n static zipObject(keys: any[], values: any[]): ObjectLiteral {\n return keys.reduce((object, column, index) => {\n object[column] = values[index];\n return object;\n }, {} as ObjectLiteral);\n }\n\n /**\n * Compares two arrays.\n */\n static isArraysEqual(arr1: any[], arr2: any[]): boolean {\n if (arr1.length !== arr2.length) return false;\n return arr1.every(element => {\n return arr2.indexOf(element) !== -1;\n });\n }\n\n // -------------------------------------------------------------------------\n // Private methods\n // -------------------------------------------------------------------------\n\n private static compare2Objects(leftChain: any, rightChain: any, x: any, y: any) {\n let p;\n\n // remember that NaN === NaN returns false\n // and isNaN(undefined) returns true\n if (Number.isNaN(x) && Number.isNaN(y))\n return true;\n\n // Compare primitives and functions.\n // Check if both arguments link to the same object.\n // Especially useful on the step where we compare prototypes\n if (x === y)\n return true;\n\n // Unequal, but either is null or undefined (use case: jsonb comparasion)\n // PR #3776, todo: add tests\n if (x === null || y === null || x === undefined || y === undefined)\n return false;\n\n // Fix the buffer compare bug.\n // See: https://github.com/typeorm/typeorm/issues/3654\n if ((typeof x.equals === \"function\" || x.equals instanceof Function) && x.equals(y))\n return true;\n\n // Works in case when functions are created in constructor.\n // Comparing dates is a common scenario. Another built-ins?\n // We can even handle functions passed across iframes\n if ((typeof x === \"function\" && typeof y === \"function\") ||\n (x instanceof Date && y instanceof Date) ||\n (x instanceof RegExp && y instanceof RegExp) ||\n (x instanceof String && y instanceof String) ||\n (x instanceof Number && y instanceof Number))\n return x.toString() === y.toString();\n\n // At last checking prototypes as good as we can\n if (!(x instanceof Object && y instanceof Object))\n return false;\n\n if (x.isPrototypeOf(y) || y.isPrototypeOf(x))\n return false;\n\n if (x.constructor !== y.constructor)\n return false;\n\n if (x.prototype !== y.prototype)\n return false;\n\n // Check for infinitive linking loops\n if (leftChain.indexOf(x) > -1 || rightChain.indexOf(y) > -1)\n return false;\n\n // Quick checking of one object being a subset of another.\n // todo: cache the structure of arguments[0] for performance\n for (p in y) {\n if (y.hasOwnProperty(p) !== x.hasOwnProperty(p)) {\n return false;\n }\n else if (typeof y[p] !== typeof x[p]) {\n return false;\n }\n }\n\n for (p in x) {\n if (y.hasOwnProperty(p) !== x.hasOwnProperty(p)) {\n return false;\n }\n else if (typeof y[p] !== typeof x[p]) {\n return false;\n }\n\n switch (typeof (x[p])) {\n case \"object\":\n case \"function\":\n\n leftChain.push(x);\n rightChain.push(y);\n\n if (!this.compare2Objects(leftChain, rightChain, x[p], y[p])) {\n return false;\n }\n\n leftChain.pop();\n rightChain.pop();\n break;\n\n default:\n if (x[p] !== y[p]) {\n return false;\n }\n break;\n }\n }\n\n return true;\n }\n\n}\n"],"sourceRoot":".."}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.hash = exports.shorten = exports.abbreviate = exports.titleCase = exports.snakeCase = exports.camelCase = void 0;
4
4
  var tslib_1 = require("tslib");
5
- var sha_js_1 = tslib_1.__importDefault(require("sha.js"));
5
+ var sha_js_1 = (0, tslib_1.__importDefault)(require("sha.js"));
6
6
  /**
7
7
  * Converts string into camelCase.
8
8
  *
@@ -99,7 +99,7 @@ exports.shorten = shorten;
99
99
  */
100
100
  function hash(input, options) {
101
101
  if (options === void 0) { options = {}; }
102
- var hashFunction = sha_js_1.default("sha256");
102
+ var hashFunction = (0, sha_js_1.default)("sha256");
103
103
  hashFunction.update(input, "utf8");
104
104
  var hashedInput = hashFunction.digest("hex");
105
105
  if (options.length) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/util/StringUtils.ts"],"names":[],"mappings":"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","file":"StringUtils.js","sourcesContent":["import shajs from \"sha.js\";\n\n/**\n * Converts string into camelCase.\n *\n * @see http://stackoverflow.com/questions/2970525/converting-any-string-into-camel-case\n */\nexport function camelCase(str: string, firstCapital: boolean = false): string {\n return str.replace(/^([A-Z])|[\\s-_](\\w)/g, function(match, p1, p2, offset) {\n if (firstCapital === true && offset === 0) return p1;\n if (p2) return p2.toUpperCase();\n return p1.toLowerCase();\n });\n}\n\n/**\n * Converts string into snake_case.\n *\n */\nexport function snakeCase(str: string): string{\n return str\n // ABc -> a_bc\n .replace(/([A-Z])([A-Z])([a-z])/g, \"$1_$2$3\")\n // aC -> a_c\n .replace(/([a-z0-9])([A-Z])/g, \"$1_$2\")\n .toLowerCase();\n}\n\n/**\n * Converts string into Title Case.\n *\n * @see http://stackoverflow.com/questions/196972/convert-string-to-title-case-with-javascript\n */\nexport function titleCase(str: string): string {\n return str.replace(/\\w\\S*/g, txt => txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase());\n}\n\n/**\n * Builds abbreviated string from given string;\n */\nexport function abbreviate(str: string, abbrLettersCount: number = 1): string {\n const words = str.replace(/([a-z\\xE0-\\xFF])([A-Z\\xC0\\xDF])/g, \"$1 $2\").split(\" \");\n return words.reduce((res, word) => {\n res += word.substr(0, abbrLettersCount);\n return res;\n }, \"\");\n}\n\nexport interface IShortenOptions {\n /** String used to split \"segments\" of the alias/column name */\n separator?: string;\n /** Maximum length of any \"segment\" */\n segmentLength?: number;\n /** Length of any \"term\" in a \"segment\"; \"OrderItem\" is a segment, \"Order\" and \"Items\" are terms */\n termLength?: number;\n }\n\n /**\n * Shorten a given `input`. Useful for RDBMS imposing a limit on the\n * maximum length of aliases and column names in SQL queries.\n *\n * @param input String to be shortened.\n * @param options Default to `4` for segments length, `2` for terms length, `'__'` as a separator.\n *\n * @return Shortened `input`.\n *\n * @example\n * // returns: \"UsShCa__orde__mark__dire\"\n * shorten('UserShoppingCart__order__market__director')\n *\n * // returns: \"cat_wit_ver_lon_nam_pos_wit_ver_lon_nam_pos_wit_ver_lon_nam\"\n * shorten(\n * 'category_with_very_long_name_posts_with_very_long_name_post_with_very_long_name',\n * { separator: '_', segmentLength: 3 }\n * )\n *\n * // equals: UsShCa__orde__mark_market_id\n * `${shorten('UserShoppingCart__order__market')}_market_id`\n */\n export function shorten(input: string, options: IShortenOptions = {}): string {\n const { segmentLength = 4, separator = \"__\", termLength = 2 } = options;\n\n const segments = input.split(separator);\n const shortSegments = segments.reduce((acc: string[], val: string) => {\n // split the given segment into many terms based on an eventual camel cased name\n const segmentTerms = val.replace(/([a-z\\xE0-\\xFF])([A-Z\\xC0-\\xDF])/g, \"$1 $2\").split(\" \");\n // \"OrderItemList\" becomes \"OrItLi\", while \"company\" becomes \"comp\"\n const length = segmentTerms.length > 1 ? termLength : segmentLength;\n const shortSegment = segmentTerms.map(term => term.substr(0, length)).join(\"\");\n\n acc.push(shortSegment);\n return acc;\n }, []);\n\n return shortSegments.join(separator);\n }\n\ninterface IHashOptions {\n length?: number;\n}\n\n/**\n * Returns a hashed input.\n *\n * @param input String to be hashed.\n * @param options.length Optionally, shorten the output to desired length.\n */\nexport function hash(input: string, options: IHashOptions = {}): string {\n const hashFunction = shajs(\"sha256\");\n\n hashFunction.update(input, \"utf8\");\n\n const hashedInput = hashFunction.digest(\"hex\");\n\n if (options.length) {\n return hashedInput.slice(0, options.length);\n }\n\n return hashedInput;\n }\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/util/StringUtils.ts"],"names":[],"mappings":"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","file":"StringUtils.js","sourcesContent":["import shajs from \"sha.js\";\n\n/**\n * Converts string into camelCase.\n *\n * @see http://stackoverflow.com/questions/2970525/converting-any-string-into-camel-case\n */\nexport function camelCase(str: string, firstCapital: boolean = false): string {\n return str.replace(/^([A-Z])|[\\s-_](\\w)/g, function(match, p1, p2, offset) {\n if (firstCapital === true && offset === 0) return p1;\n if (p2) return p2.toUpperCase();\n return p1.toLowerCase();\n });\n}\n\n/**\n * Converts string into snake_case.\n *\n */\nexport function snakeCase(str: string): string{\n return str\n // ABc -> a_bc\n .replace(/([A-Z])([A-Z])([a-z])/g, \"$1_$2$3\")\n // aC -> a_c\n .replace(/([a-z0-9])([A-Z])/g, \"$1_$2\")\n .toLowerCase();\n}\n\n/**\n * Converts string into Title Case.\n *\n * @see http://stackoverflow.com/questions/196972/convert-string-to-title-case-with-javascript\n */\nexport function titleCase(str: string): string {\n return str.replace(/\\w\\S*/g, txt => txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase());\n}\n\n/**\n * Builds abbreviated string from given string;\n */\nexport function abbreviate(str: string, abbrLettersCount: number = 1): string {\n const words = str.replace(/([a-z\\xE0-\\xFF])([A-Z\\xC0\\xDF])/g, \"$1 $2\").split(\" \");\n return words.reduce((res, word) => {\n res += word.substr(0, abbrLettersCount);\n return res;\n }, \"\");\n}\n\nexport interface IShortenOptions {\n /** String used to split \"segments\" of the alias/column name */\n separator?: string;\n /** Maximum length of any \"segment\" */\n segmentLength?: number;\n /** Length of any \"term\" in a \"segment\"; \"OrderItem\" is a segment, \"Order\" and \"Items\" are terms */\n termLength?: number;\n }\n\n /**\n * Shorten a given `input`. Useful for RDBMS imposing a limit on the\n * maximum length of aliases and column names in SQL queries.\n *\n * @param input String to be shortened.\n * @param options Default to `4` for segments length, `2` for terms length, `'__'` as a separator.\n *\n * @return Shortened `input`.\n *\n * @example\n * // returns: \"UsShCa__orde__mark__dire\"\n * shorten('UserShoppingCart__order__market__director')\n *\n * // returns: \"cat_wit_ver_lon_nam_pos_wit_ver_lon_nam_pos_wit_ver_lon_nam\"\n * shorten(\n * 'category_with_very_long_name_posts_with_very_long_name_post_with_very_long_name',\n * { separator: '_', segmentLength: 3 }\n * )\n *\n * // equals: UsShCa__orde__mark_market_id\n * `${shorten('UserShoppingCart__order__market')}_market_id`\n */\n export function shorten(input: string, options: IShortenOptions = {}): string {\n const { segmentLength = 4, separator = \"__\", termLength = 2 } = options;\n\n const segments = input.split(separator);\n const shortSegments = segments.reduce((acc: string[], val: string) => {\n // split the given segment into many terms based on an eventual camel cased name\n const segmentTerms = val.replace(/([a-z\\xE0-\\xFF])([A-Z\\xC0-\\xDF])/g, \"$1 $2\").split(\" \");\n // \"OrderItemList\" becomes \"OrItLi\", while \"company\" becomes \"comp\"\n const length = segmentTerms.length > 1 ? termLength : segmentLength;\n const shortSegment = segmentTerms.map(term => term.substr(0, length)).join(\"\");\n\n acc.push(shortSegment);\n return acc;\n }, []);\n\n return shortSegments.join(separator);\n }\n\ninterface IHashOptions {\n length?: number;\n}\n\n/**\n * Returns a hashed input.\n *\n * @param input String to be hashed.\n * @param options.length Optionally, shorten the output to desired length.\n */\nexport function hash(input: string, options: IHashOptions = {}): string {\n const hashFunction = shajs(\"sha256\");\n\n hashFunction.update(input, \"utf8\");\n\n const hashedInput = hashFunction.digest(\"hex\");\n\n if (options.length) {\n return hashedInput.slice(0, options.length);\n }\n\n return hashedInput;\n }\n"],"sourceRoot":".."}