typeorm 0.3.19 → 0.3.20-dev.c22e30f

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 (433) hide show
  1. package/README.md +1 -1
  2. package/browser/cache/DbQueryResultCache.js +1 -1
  3. package/browser/cache/DbQueryResultCache.js.map +1 -1
  4. package/browser/cache/QueryResultCacheFactory.js.map +1 -1
  5. package/browser/cache/RedisQueryResultCache.js +1 -1
  6. package/browser/cache/RedisQueryResultCache.js.map +1 -1
  7. package/browser/cli-ts-node-esm.js.map +1 -1
  8. package/browser/connection/ConnectionManager.js.map +1 -1
  9. package/browser/connection/ConnectionMetadataBuilder.js.map +1 -1
  10. package/browser/connection/ConnectionOptionsReader.js.map +1 -1
  11. package/browser/connection/options-reader/ConnectionOptionsEnvReader.js.map +1 -1
  12. package/browser/container.js.map +1 -1
  13. package/browser/data-source/DataSource.js.map +1 -1
  14. package/browser/decorator/Unique.js.map +1 -1
  15. package/browser/decorator/columns/Column.js.map +1 -1
  16. package/browser/decorator/columns/PrimaryColumn.js.map +1 -1
  17. package/browser/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
  18. package/browser/decorator/columns/VirtualColumn.js +1 -1
  19. package/browser/decorator/columns/VirtualColumn.js.map +1 -1
  20. package/browser/decorator/entity/ChildEntity.js.map +1 -1
  21. package/browser/decorator/relations/ManyToMany.js.map +1 -1
  22. package/browser/decorator/relations/ManyToOne.js.map +1 -1
  23. package/browser/decorator/relations/OneToMany.js.map +1 -1
  24. package/browser/decorator/relations/OneToOne.js.map +1 -1
  25. package/browser/driver/DriverFactory.js.map +1 -1
  26. package/browser/driver/DriverUtils.js.map +1 -1
  27. package/browser/driver/aurora-mysql/AuroraMysqlDriver.js +10 -10
  28. package/browser/driver/aurora-mysql/AuroraMysqlDriver.js.map +1 -1
  29. package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js +2 -2
  30. package/browser/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
  31. package/browser/driver/aurora-postgres/AuroraPostgresDriver.js.map +1 -1
  32. package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.js +2 -2
  33. package/browser/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -1
  34. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  35. package/browser/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  36. package/browser/driver/capacitor/CapacitorDriver.js.map +1 -1
  37. package/browser/driver/capacitor/CapacitorQueryRunner.js +2 -2
  38. package/browser/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
  39. package/browser/driver/cockroachdb/CockroachDriver.js.map +1 -1
  40. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  41. package/browser/driver/cordova/CordovaDriver.js.map +1 -1
  42. package/browser/driver/cordova/CordovaQueryRunner.js.map +1 -1
  43. package/browser/driver/expo/ExpoDriver.js.map +1 -1
  44. package/browser/driver/expo/ExpoQueryRunner.js +2 -2
  45. package/browser/driver/expo/ExpoQueryRunner.js.map +1 -1
  46. package/browser/driver/mongodb/MongoDriver.js.map +1 -1
  47. package/browser/driver/mysql/MysqlDriver.js +12 -14
  48. package/browser/driver/mysql/MysqlDriver.js.map +1 -1
  49. package/browser/driver/mysql/MysqlQueryRunner.js +1 -1
  50. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  51. package/browser/driver/nativescript/NativescriptDriver.js.map +1 -1
  52. package/browser/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
  53. package/browser/driver/oracle/OracleDriver.js.map +1 -1
  54. package/browser/driver/oracle/OracleQueryRunner.js +6 -8
  55. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  56. package/browser/driver/postgres/PostgresDriver.js +2 -3
  57. package/browser/driver/postgres/PostgresDriver.js.map +1 -1
  58. package/browser/driver/postgres/PostgresQueryRunner.js +1 -2
  59. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  60. package/browser/driver/react-native/ReactNativeDriver.js +4 -6
  61. package/browser/driver/react-native/ReactNativeDriver.js.map +1 -1
  62. package/browser/driver/react-native/ReactNativeQueryRunner.js +2 -2
  63. package/browser/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  64. package/browser/driver/sap/SapDriver.js.map +1 -1
  65. package/browser/driver/sap/SapQueryRunner.js +3 -3
  66. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  67. package/browser/driver/spanner/SpannerDriver.js.map +1 -1
  68. package/browser/driver/spanner/SpannerQueryRunner.js.map +1 -1
  69. package/browser/driver/sqlite/SqliteDriver.js.map +1 -1
  70. package/browser/driver/sqlite/SqliteQueryRunner.js +3 -2
  71. package/browser/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  72. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js +4 -6
  73. package/browser/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  74. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +1 -1
  75. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  76. package/browser/driver/sqljs/SqljsDriver.js +1 -2
  77. package/browser/driver/sqljs/SqljsDriver.js.map +1 -1
  78. package/browser/driver/sqljs/SqljsQueryRunner.js.map +1 -1
  79. package/browser/driver/sqlserver/SqlServerDriver.js.map +1 -1
  80. package/browser/driver/sqlserver/SqlServerQueryRunner.js +9 -7
  81. package/browser/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  82. package/browser/entity-manager/EntityManager.js.map +1 -1
  83. package/browser/entity-manager/MongoEntityManager.js +1 -1
  84. package/browser/entity-manager/MongoEntityManager.js.map +1 -1
  85. package/browser/entity-schema/EntitySchemaTransformer.js +2 -3
  86. package/browser/entity-schema/EntitySchemaTransformer.js.map +1 -1
  87. package/browser/error/EntityMetadataNotFoundError.js.map +1 -1
  88. package/browser/error/EntityNotFoundError.js.map +1 -1
  89. package/browser/error/FindRelationsNotFoundError.js.map +1 -1
  90. package/browser/error/MissingJoinColumnError.js.map +1 -1
  91. package/browser/error/MissingJoinTableError.js.map +1 -1
  92. package/browser/error/QueryFailedError.js.map +1 -1
  93. package/browser/error/RepositoryNotTreeError.js.map +1 -1
  94. package/browser/error/TypeORMError.js.map +1 -1
  95. package/browser/find-options/FindOperator.js.map +1 -1
  96. package/browser/find-options/FindOptionsUtils.js +1 -1
  97. package/browser/find-options/FindOptionsUtils.js.map +1 -1
  98. package/browser/find-options/operator/Raw.js.map +1 -1
  99. package/browser/globals.js.map +1 -1
  100. package/browser/logger/AbstractLogger.js.map +1 -1
  101. package/browser/logger/AdvancedConsoleLogger.js +1 -2
  102. package/browser/logger/AdvancedConsoleLogger.js.map +1 -1
  103. package/browser/logger/DebugLogger.js +1 -2
  104. package/browser/logger/DebugLogger.js.map +1 -1
  105. package/browser/logger/FileLogger.js +2 -3
  106. package/browser/logger/FileLogger.js.map +1 -1
  107. package/browser/logger/LoggerFactory.js.map +1 -1
  108. package/browser/logger/SimpleConsoleLogger.js +1 -2
  109. package/browser/logger/SimpleConsoleLogger.js.map +1 -1
  110. package/browser/metadata/CheckMetadata.js.map +1 -1
  111. package/browser/metadata/ColumnMetadata.js +1 -2
  112. package/browser/metadata/ColumnMetadata.js.map +1 -1
  113. package/browser/metadata/EmbeddedMetadata.js +1 -1
  114. package/browser/metadata/EmbeddedMetadata.js.map +1 -1
  115. package/browser/metadata/EntityListenerMetadata.js.map +1 -1
  116. package/browser/metadata/EntityMetadata.js +2 -3
  117. package/browser/metadata/EntityMetadata.js.map +1 -1
  118. package/browser/metadata/ExclusionMetadata.js.map +1 -1
  119. package/browser/metadata/IndexMetadata.js.map +1 -1
  120. package/browser/metadata/RelationIdMetadata.js.map +1 -1
  121. package/browser/metadata/RelationMetadata.js.map +1 -1
  122. package/browser/metadata/UniqueMetadata.js.map +1 -1
  123. package/browser/metadata-args/MetadataArgsStorage.js.map +1 -1
  124. package/browser/metadata-builder/ClosureJunctionEntityMetadataBuilder.js.map +1 -1
  125. package/browser/metadata-builder/EntityMetadataBuilder.js +5 -8
  126. package/browser/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  127. package/browser/metadata-builder/EntityMetadataValidator.js.map +1 -1
  128. package/browser/metadata-builder/JunctionEntityMetadataBuilder.js +7 -8
  129. package/browser/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
  130. package/browser/metadata-builder/MetadataUtils.js.map +1 -1
  131. package/browser/metadata-builder/RelationJoinColumnBuilder.js +2 -3
  132. package/browser/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
  133. package/browser/migration/MigrationExecutor.js +2 -2
  134. package/browser/migration/MigrationExecutor.js.map +1 -1
  135. package/browser/naming-strategy/DefaultNamingStrategy.js.map +1 -1
  136. package/browser/naming-strategy/LegacyOracleNamingStrategy.js.map +1 -1
  137. package/browser/persistence/EntityPersistExecutor.js.map +1 -1
  138. package/browser/persistence/Subject.js.map +1 -1
  139. package/browser/persistence/SubjectChangedColumnsComputer.js.map +1 -1
  140. package/browser/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
  141. package/browser/persistence/SubjectExecutor.js.map +1 -1
  142. package/browser/persistence/SubjectTopoligicalSorter.js.map +1 -1
  143. package/browser/persistence/subject-builder/CascadesSubjectBuilder.js.map +1 -1
  144. package/browser/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
  145. package/browser/persistence/subject-builder/OneToManySubjectBuilder.js +1 -2
  146. package/browser/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -1
  147. package/browser/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js.map +1 -1
  148. package/browser/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
  149. package/browser/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
  150. package/browser/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
  151. package/browser/platform/BrowserPlatformTools.js.map +1 -1
  152. package/browser/platform/PlatformTools.d.ts +3 -0
  153. package/browser/platform/PlatformTools.js.map +1 -1
  154. package/browser/query-builder/DeleteQueryBuilder.js.map +1 -1
  155. package/browser/query-builder/InsertQueryBuilder.js +12 -13
  156. package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
  157. package/browser/query-builder/JoinAttribute.js.map +1 -1
  158. package/browser/query-builder/QueryBuilder.js +3 -4
  159. package/browser/query-builder/QueryBuilder.js.map +1 -1
  160. package/browser/query-builder/QueryExpressionMap.js +2 -2
  161. package/browser/query-builder/QueryExpressionMap.js.map +1 -1
  162. package/browser/query-builder/RelationIdLoader.js.map +1 -1
  163. package/browser/query-builder/RelationLoader.js.map +1 -1
  164. package/browser/query-builder/RelationQueryBuilder.js.map +1 -1
  165. package/browser/query-builder/RelationRemover.js.map +1 -1
  166. package/browser/query-builder/RelationUpdater.js.map +1 -1
  167. package/browser/query-builder/ReturningResultsEntityUpdator.js.map +1 -1
  168. package/browser/query-builder/SelectQueryBuilder.js +17 -15
  169. package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
  170. package/browser/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  171. package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
  172. package/browser/query-builder/relation-count/RelationCountLoader.js.map +1 -1
  173. package/browser/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.js +2 -2
  174. package/browser/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.js.map +1 -1
  175. package/browser/query-builder/relation-id/RelationIdLoader.js.map +1 -1
  176. package/browser/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js +2 -2
  177. package/browser/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js.map +1 -1
  178. package/browser/query-builder/transformer/DocumentToEntityTransformer.js.map +1 -1
  179. package/browser/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js.map +1 -1
  180. package/browser/query-builder/transformer/PlainObjectToNewEntityTransformer.js.map +1 -1
  181. package/browser/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  182. package/browser/query-runner/BaseQueryRunner.js.map +1 -1
  183. package/browser/query-runner/QueryLock.js.map +1 -1
  184. package/browser/repository/BaseEntity.js.map +1 -1
  185. package/browser/repository/TreeRepository.js.map +1 -1
  186. package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  187. package/browser/schema-builder/table/Table.js +2 -2
  188. package/browser/schema-builder/table/Table.js.map +1 -1
  189. package/browser/schema-builder/table/TableColumn.js.map +1 -1
  190. package/browser/schema-builder/util/ViewUtils.js.map +1 -1
  191. package/browser/schema-builder/view/View.js.map +1 -1
  192. package/browser/subscriber/Broadcaster.js +6 -6
  193. package/browser/subscriber/Broadcaster.js.map +1 -1
  194. package/browser/subscriber/BroadcasterResult.js.map +1 -1
  195. package/browser/util/ApplyValueTransformers.js.map +1 -1
  196. package/browser/util/DateUtils.js.map +1 -1
  197. package/browser/util/DepGraph.js +2 -2
  198. package/browser/util/DepGraph.js.map +1 -1
  199. package/browser/util/DirectoryExportedClassesLoader.js.map +1 -1
  200. package/browser/util/ImportUtils.js +1 -1
  201. package/browser/util/ImportUtils.js.map +1 -1
  202. package/browser/util/ObjectUtils.js.map +1 -1
  203. package/browser/util/OrmUtils.js.map +1 -1
  204. package/browser/util/RandomGenerator.js.map +1 -1
  205. package/browser/util/StringUtils.js.map +1 -1
  206. package/browser/util/TreeRepositoryUtils.js +3 -6
  207. package/browser/util/TreeRepositoryUtils.js.map +1 -1
  208. package/cache/DbQueryResultCache.js +1 -1
  209. package/cache/DbQueryResultCache.js.map +1 -1
  210. package/cache/QueryResultCacheFactory.js.map +1 -1
  211. package/cache/RedisQueryResultCache.js +1 -1
  212. package/cache/RedisQueryResultCache.js.map +1 -1
  213. package/cli-ts-node-esm.js.map +1 -1
  214. package/commands/CacheClearCommand.js.map +1 -1
  215. package/commands/CommandUtils.js.map +1 -1
  216. package/commands/EntityCreateCommand.js.map +1 -1
  217. package/commands/InitCommand.js +1 -1
  218. package/commands/InitCommand.js.map +1 -1
  219. package/commands/MigrationCreateCommand.js.map +1 -1
  220. package/commands/MigrationGenerateCommand.js.map +1 -1
  221. package/commands/MigrationRevertCommand.js +2 -2
  222. package/commands/MigrationRevertCommand.js.map +1 -1
  223. package/commands/MigrationRunCommand.js +2 -2
  224. package/commands/MigrationRunCommand.js.map +1 -1
  225. package/commands/MigrationShowCommand.js.map +1 -1
  226. package/commands/QueryCommand.js.map +1 -1
  227. package/commands/SchemaDropCommand.js.map +1 -1
  228. package/commands/SchemaLogCommand.js.map +1 -1
  229. package/commands/SchemaSyncCommand.js.map +1 -1
  230. package/commands/SubscriberCreateCommand.js.map +1 -1
  231. package/commands/VersionCommand.js.map +1 -1
  232. package/connection/ConnectionManager.js.map +1 -1
  233. package/connection/ConnectionMetadataBuilder.js.map +1 -1
  234. package/connection/ConnectionOptionsReader.js.map +1 -1
  235. package/connection/options-reader/ConnectionOptionsEnvReader.js.map +1 -1
  236. package/container.js.map +1 -1
  237. package/data-source/DataSource.js.map +1 -1
  238. package/decorator/Unique.js.map +1 -1
  239. package/decorator/columns/Column.js.map +1 -1
  240. package/decorator/columns/PrimaryColumn.js.map +1 -1
  241. package/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
  242. package/decorator/columns/VirtualColumn.js +1 -1
  243. package/decorator/columns/VirtualColumn.js.map +1 -1
  244. package/decorator/entity/ChildEntity.js.map +1 -1
  245. package/decorator/relations/ManyToMany.js.map +1 -1
  246. package/decorator/relations/ManyToOne.js.map +1 -1
  247. package/decorator/relations/OneToMany.js.map +1 -1
  248. package/decorator/relations/OneToOne.js.map +1 -1
  249. package/driver/DriverFactory.js.map +1 -1
  250. package/driver/DriverUtils.js.map +1 -1
  251. package/driver/aurora-mysql/AuroraMysqlDriver.js +10 -10
  252. package/driver/aurora-mysql/AuroraMysqlDriver.js.map +1 -1
  253. package/driver/aurora-mysql/AuroraMysqlQueryRunner.js +2 -2
  254. package/driver/aurora-mysql/AuroraMysqlQueryRunner.js.map +1 -1
  255. package/driver/aurora-postgres/AuroraPostgresDriver.js.map +1 -1
  256. package/driver/aurora-postgres/AuroraPostgresQueryRunner.js +2 -2
  257. package/driver/aurora-postgres/AuroraPostgresQueryRunner.js.map +1 -1
  258. package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  259. package/driver/better-sqlite3/BetterSqlite3QueryRunner.js.map +1 -1
  260. package/driver/capacitor/CapacitorDriver.js.map +1 -1
  261. package/driver/capacitor/CapacitorQueryRunner.js +2 -2
  262. package/driver/capacitor/CapacitorQueryRunner.js.map +1 -1
  263. package/driver/cockroachdb/CockroachDriver.js.map +1 -1
  264. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  265. package/driver/cordova/CordovaDriver.js.map +1 -1
  266. package/driver/cordova/CordovaQueryRunner.js.map +1 -1
  267. package/driver/expo/ExpoDriver.js.map +1 -1
  268. package/driver/expo/ExpoQueryRunner.js +2 -2
  269. package/driver/expo/ExpoQueryRunner.js.map +1 -1
  270. package/driver/mongodb/MongoDriver.js.map +1 -1
  271. package/driver/mysql/MysqlDriver.js +12 -14
  272. package/driver/mysql/MysqlDriver.js.map +1 -1
  273. package/driver/mysql/MysqlQueryRunner.js +1 -1
  274. package/driver/mysql/MysqlQueryRunner.js.map +1 -1
  275. package/driver/nativescript/NativescriptDriver.js.map +1 -1
  276. package/driver/nativescript/NativescriptQueryRunner.js.map +1 -1
  277. package/driver/oracle/OracleDriver.js.map +1 -1
  278. package/driver/oracle/OracleQueryRunner.js +6 -8
  279. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  280. package/driver/postgres/PostgresDriver.js +2 -3
  281. package/driver/postgres/PostgresDriver.js.map +1 -1
  282. package/driver/postgres/PostgresQueryRunner.js +1 -2
  283. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  284. package/driver/react-native/ReactNativeDriver.js +4 -6
  285. package/driver/react-native/ReactNativeDriver.js.map +1 -1
  286. package/driver/react-native/ReactNativeQueryRunner.js +2 -2
  287. package/driver/react-native/ReactNativeQueryRunner.js.map +1 -1
  288. package/driver/sap/SapDriver.js.map +1 -1
  289. package/driver/sap/SapQueryRunner.js +3 -3
  290. package/driver/sap/SapQueryRunner.js.map +1 -1
  291. package/driver/spanner/SpannerDriver.js.map +1 -1
  292. package/driver/spanner/SpannerQueryRunner.js.map +1 -1
  293. package/driver/sqlite/SqliteDriver.js.map +1 -1
  294. package/driver/sqlite/SqliteQueryRunner.js +3 -2
  295. package/driver/sqlite/SqliteQueryRunner.js.map +1 -1
  296. package/driver/sqlite-abstract/AbstractSqliteDriver.js +4 -6
  297. package/driver/sqlite-abstract/AbstractSqliteDriver.js.map +1 -1
  298. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +1 -1
  299. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  300. package/driver/sqljs/SqljsDriver.js +1 -2
  301. package/driver/sqljs/SqljsDriver.js.map +1 -1
  302. package/driver/sqljs/SqljsQueryRunner.js.map +1 -1
  303. package/driver/sqlserver/SqlServerDriver.js.map +1 -1
  304. package/driver/sqlserver/SqlServerQueryRunner.js +9 -7
  305. package/driver/sqlserver/SqlServerQueryRunner.js.map +1 -1
  306. package/driver/types/MetadataTableType.js +1 -1
  307. package/driver/types/MetadataTableType.js.map +1 -1
  308. package/entity-manager/EntityManager.js.map +1 -1
  309. package/entity-manager/MongoEntityManager.js +1 -1
  310. package/entity-manager/MongoEntityManager.js.map +1 -1
  311. package/entity-schema/EntitySchemaTransformer.js +2 -3
  312. package/entity-schema/EntitySchemaTransformer.js.map +1 -1
  313. package/error/EntityMetadataNotFoundError.js.map +1 -1
  314. package/error/EntityNotFoundError.js.map +1 -1
  315. package/error/FindRelationsNotFoundError.js.map +1 -1
  316. package/error/MissingJoinColumnError.js.map +1 -1
  317. package/error/MissingJoinTableError.js.map +1 -1
  318. package/error/QueryFailedError.js.map +1 -1
  319. package/error/RepositoryNotTreeError.js.map +1 -1
  320. package/error/TypeORMError.js.map +1 -1
  321. package/find-options/FindOperator.js.map +1 -1
  322. package/find-options/FindOptionsUtils.js +1 -1
  323. package/find-options/FindOptionsUtils.js.map +1 -1
  324. package/find-options/operator/Raw.js.map +1 -1
  325. package/globals.js.map +1 -1
  326. package/logger/AbstractLogger.js.map +1 -1
  327. package/logger/AdvancedConsoleLogger.js +1 -2
  328. package/logger/AdvancedConsoleLogger.js.map +1 -1
  329. package/logger/DebugLogger.js +1 -2
  330. package/logger/DebugLogger.js.map +1 -1
  331. package/logger/FileLogger.js +2 -3
  332. package/logger/FileLogger.js.map +1 -1
  333. package/logger/LoggerFactory.js.map +1 -1
  334. package/logger/SimpleConsoleLogger.js +1 -2
  335. package/logger/SimpleConsoleLogger.js.map +1 -1
  336. package/metadata/CheckMetadata.js.map +1 -1
  337. package/metadata/ColumnMetadata.js +1 -2
  338. package/metadata/ColumnMetadata.js.map +1 -1
  339. package/metadata/EmbeddedMetadata.js +1 -1
  340. package/metadata/EmbeddedMetadata.js.map +1 -1
  341. package/metadata/EntityListenerMetadata.js.map +1 -1
  342. package/metadata/EntityMetadata.js +2 -3
  343. package/metadata/EntityMetadata.js.map +1 -1
  344. package/metadata/ExclusionMetadata.js.map +1 -1
  345. package/metadata/IndexMetadata.js.map +1 -1
  346. package/metadata/RelationIdMetadata.js.map +1 -1
  347. package/metadata/RelationMetadata.js.map +1 -1
  348. package/metadata/UniqueMetadata.js.map +1 -1
  349. package/metadata-args/MetadataArgsStorage.js.map +1 -1
  350. package/metadata-builder/ClosureJunctionEntityMetadataBuilder.js.map +1 -1
  351. package/metadata-builder/EntityMetadataBuilder.js +5 -8
  352. package/metadata-builder/EntityMetadataBuilder.js.map +1 -1
  353. package/metadata-builder/EntityMetadataValidator.js.map +1 -1
  354. package/metadata-builder/JunctionEntityMetadataBuilder.js +7 -8
  355. package/metadata-builder/JunctionEntityMetadataBuilder.js.map +1 -1
  356. package/metadata-builder/MetadataUtils.js.map +1 -1
  357. package/metadata-builder/RelationJoinColumnBuilder.js +2 -3
  358. package/metadata-builder/RelationJoinColumnBuilder.js.map +1 -1
  359. package/migration/MigrationExecutor.js +2 -2
  360. package/migration/MigrationExecutor.js.map +1 -1
  361. package/naming-strategy/DefaultNamingStrategy.js.map +1 -1
  362. package/naming-strategy/LegacyOracleNamingStrategy.js.map +1 -1
  363. package/package.json +1 -273
  364. package/persistence/EntityPersistExecutor.js.map +1 -1
  365. package/persistence/Subject.js.map +1 -1
  366. package/persistence/SubjectChangedColumnsComputer.js.map +1 -1
  367. package/persistence/SubjectDatabaseEntityLoader.js.map +1 -1
  368. package/persistence/SubjectExecutor.js.map +1 -1
  369. package/persistence/SubjectTopoligicalSorter.js.map +1 -1
  370. package/persistence/subject-builder/CascadesSubjectBuilder.js.map +1 -1
  371. package/persistence/subject-builder/ManyToManySubjectBuilder.js.map +1 -1
  372. package/persistence/subject-builder/OneToManySubjectBuilder.js +1 -2
  373. package/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -1
  374. package/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.js.map +1 -1
  375. package/persistence/tree/ClosureSubjectExecutor.js.map +1 -1
  376. package/persistence/tree/MaterializedPathSubjectExecutor.js.map +1 -1
  377. package/persistence/tree/NestedSetSubjectExecutor.js.map +1 -1
  378. package/platform/PlatformTools.d.ts +3 -0
  379. package/platform/PlatformTools.js.map +1 -1
  380. package/query-builder/DeleteQueryBuilder.js.map +1 -1
  381. package/query-builder/InsertQueryBuilder.js +12 -13
  382. package/query-builder/InsertQueryBuilder.js.map +1 -1
  383. package/query-builder/JoinAttribute.js.map +1 -1
  384. package/query-builder/QueryBuilder.js +3 -4
  385. package/query-builder/QueryBuilder.js.map +1 -1
  386. package/query-builder/QueryExpressionMap.js +2 -2
  387. package/query-builder/QueryExpressionMap.js.map +1 -1
  388. package/query-builder/RelationIdLoader.js.map +1 -1
  389. package/query-builder/RelationLoader.js.map +1 -1
  390. package/query-builder/RelationQueryBuilder.js.map +1 -1
  391. package/query-builder/RelationRemover.js.map +1 -1
  392. package/query-builder/RelationUpdater.js.map +1 -1
  393. package/query-builder/ReturningResultsEntityUpdator.js.map +1 -1
  394. package/query-builder/SelectQueryBuilder.js +17 -15
  395. package/query-builder/SelectQueryBuilder.js.map +1 -1
  396. package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  397. package/query-builder/UpdateQueryBuilder.js.map +1 -1
  398. package/query-builder/relation-count/RelationCountLoader.js.map +1 -1
  399. package/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.js +2 -2
  400. package/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.js.map +1 -1
  401. package/query-builder/relation-id/RelationIdLoader.js.map +1 -1
  402. package/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js +2 -2
  403. package/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.js.map +1 -1
  404. package/query-builder/transformer/DocumentToEntityTransformer.js.map +1 -1
  405. package/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.js.map +1 -1
  406. package/query-builder/transformer/PlainObjectToNewEntityTransformer.js.map +1 -1
  407. package/query-builder/transformer/RawSqlResultsToEntityTransformer.js.map +1 -1
  408. package/query-runner/BaseQueryRunner.js.map +1 -1
  409. package/query-runner/QueryLock.js.map +1 -1
  410. package/repository/BaseEntity.js.map +1 -1
  411. package/repository/TreeRepository.js.map +1 -1
  412. package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  413. package/schema-builder/table/Table.js +2 -2
  414. package/schema-builder/table/Table.js.map +1 -1
  415. package/schema-builder/table/TableColumn.js.map +1 -1
  416. package/schema-builder/util/ViewUtils.js.map +1 -1
  417. package/schema-builder/view/View.js.map +1 -1
  418. package/subscriber/Broadcaster.js +6 -6
  419. package/subscriber/Broadcaster.js.map +1 -1
  420. package/subscriber/BroadcasterResult.js.map +1 -1
  421. package/util/ApplyValueTransformers.js.map +1 -1
  422. package/util/DateUtils.js.map +1 -1
  423. package/util/DepGraph.js +2 -2
  424. package/util/DepGraph.js.map +1 -1
  425. package/util/DirectoryExportedClassesLoader.js.map +1 -1
  426. package/util/ImportUtils.js +1 -1
  427. package/util/ImportUtils.js.map +1 -1
  428. package/util/ObjectUtils.js.map +1 -1
  429. package/util/OrmUtils.js.map +1 -1
  430. package/util/RandomGenerator.js.map +1 -1
  431. package/util/StringUtils.js.map +1 -1
  432. package/util/TreeRepositoryUtils.js +3 -6
  433. package/util/TreeRepositoryUtils.js.map +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/decorator/Unique.ts"],"names":[],"mappings":";;;AAAA,wCAAmD;AAGnD,qDAAiD;AAoCjD;;GAEG;AACH,SAAgB,MAAM,CAClB,qBAImB,EACnB,oBAGmB,EACnB,YAA4B;IAE5B,MAAM,IAAI,GACN,OAAO,qBAAqB,KAAK,QAAQ;QACrC,CAAC,CAAC,qBAAqB;QACvB,CAAC,CAAC,SAAS,CAAA;IACnB,MAAM,MAAM,GACR,OAAO,qBAAqB,KAAK,QAAQ;QACrC,CAAC,CAGE,oBAAoB;QACvB,CAAC,CAAE,qBAAkC,CAAA;IAC7C,IAAI,OAAO,GACP,yBAAW,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QAC3C,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC;QACjC,CAAC,CAAE,qBAAuC;QAC1C,CAAC,CAAC,YAAY,CAAA;IACtB,IAAI,CAAC,OAAO;QACR,OAAO;YACH,yBAAW,CAAC,QAAQ,CAAC,qBAAqB,CAAC;gBAC3C,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC;gBAChC,CAAC,CAAE,oBAAsC;gBACzC,CAAC,CAAC,YAAY,CAAA;IAE1B,OAAO,UACH,WAA8B,EAC9B,YAA8B;QAE9B,IAAI,OAAO,GAAG,MAAM,CAAA;QAEpB,IAAI,YAAY,KAAK,SAAS,EAAE;YAC5B,QAAQ,OAAO,YAAY,EAAE;gBACzB,KAAK,QAAQ;oBACT,OAAO,GAAG,CAAC,YAAY,CAAC,CAAA;oBACxB,MAAK;gBAET,KAAK,QAAQ;oBACT,OAAO,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAA;oBACnC,MAAK;aACZ;SACJ;QAED,MAAM,IAAI,GAAuB;YAC7B,MAAM,EAAE,YAAY;gBAChB,CAAC,CAAC,WAAW,CAAC,WAAW;gBACzB,CAAC,CAAE,WAAwB;YAC/B,IAAI,EAAE,IAAI;YACV,OAAO;YACP,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;SACvD,CAAA;QACD,IAAA,gCAAsB,GAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/C,CAAC,CAAA;AACL,CAAC;AA/DD,wBA+DC","file":"Unique.js","sourcesContent":["import { getMetadataArgsStorage } from \"../globals\"\nimport { UniqueMetadataArgs } from \"../metadata-args/UniqueMetadataArgs\"\nimport { UniqueOptions } from \"./options/UniqueOptions\"\nimport { ObjectUtils } from \"../util/ObjectUtils\"\n\n/**\n * Composite unique constraint must be set on entity classes and must specify entity's fields to be unique.\n */\nexport function Unique(\n name: string,\n fields: string[],\n options?: UniqueOptions,\n): ClassDecorator & PropertyDecorator\n\n/**\n * Composite unique constraint must be set on entity classes and must specify entity's fields to be unique.\n */\nexport function Unique(\n fields: string[],\n options?: UniqueOptions,\n): ClassDecorator & PropertyDecorator\n\n/**\n * Composite unique constraint must be set on entity classes and must specify entity's fields to be unique.\n */\nexport function Unique(\n fields: (object?: any) => any[] | { [key: string]: number },\n options?: UniqueOptions,\n): ClassDecorator & PropertyDecorator\n\n/**\n * Composite unique constraint must be set on entity classes and must specify entity's fields to be unique.\n */\nexport function Unique(\n name: string,\n fields: (object?: any) => any[] | { [key: string]: number },\n options?: UniqueOptions,\n): ClassDecorator & PropertyDecorator\n\n/**\n * Composite unique constraint must be set on entity classes and must specify entity's fields to be unique.\n */\nexport function Unique(\n nameOrFieldsOrOptions?:\n | string\n | string[]\n | ((object: any) => any[] | { [key: string]: number })\n | UniqueOptions,\n maybeFieldsOrOptions?:\n | ((object?: any) => any[] | { [key: string]: number })\n | string[]\n | UniqueOptions,\n maybeOptions?: UniqueOptions,\n): ClassDecorator & PropertyDecorator {\n const name =\n typeof nameOrFieldsOrOptions === \"string\"\n ? nameOrFieldsOrOptions\n : undefined\n const fields =\n typeof nameOrFieldsOrOptions === \"string\"\n ? <\n | ((object?: any) => any[] | { [key: string]: number })\n | string[]\n >maybeFieldsOrOptions\n : (nameOrFieldsOrOptions as string[])\n let options =\n ObjectUtils.isObject(nameOrFieldsOrOptions) &&\n !Array.isArray(nameOrFieldsOrOptions)\n ? (nameOrFieldsOrOptions as UniqueOptions)\n : maybeOptions\n if (!options)\n options =\n ObjectUtils.isObject(nameOrFieldsOrOptions) &&\n !Array.isArray(maybeFieldsOrOptions)\n ? (maybeFieldsOrOptions as UniqueOptions)\n : maybeOptions\n\n return function (\n clsOrObject: Function | Object,\n propertyName?: string | symbol,\n ) {\n let columns = fields\n\n if (propertyName !== undefined) {\n switch (typeof propertyName) {\n case \"string\":\n columns = [propertyName]\n break\n\n case \"symbol\":\n columns = [propertyName.toString()]\n break\n }\n }\n\n const args: UniqueMetadataArgs = {\n target: propertyName\n ? clsOrObject.constructor\n : (clsOrObject as Function),\n name: name,\n columns,\n deferrable: options ? options.deferrable : undefined,\n }\n getMetadataArgsStorage().uniques.push(args)\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/decorator/Unique.ts"],"names":[],"mappings":";;;AAAA,wCAAmD;AAGnD,qDAAiD;AAoCjD;;GAEG;AACH,SAAgB,MAAM,CAClB,qBAImB,EACnB,oBAGmB,EACnB,YAA4B;IAE5B,MAAM,IAAI,GACN,OAAO,qBAAqB,KAAK,QAAQ;QACrC,CAAC,CAAC,qBAAqB;QACvB,CAAC,CAAC,SAAS,CAAA;IACnB,MAAM,MAAM,GACR,OAAO,qBAAqB,KAAK,QAAQ;QACrC,CAAC,CAGE,oBAAoB;QACvB,CAAC,CAAE,qBAAkC,CAAA;IAC7C,IAAI,OAAO,GACP,yBAAW,CAAC,QAAQ,CAAC,qBAAqB,CAAC;QAC3C,CAAC,KAAK,CAAC,OAAO,CAAC,qBAAqB,CAAC;QACjC,CAAC,CAAE,qBAAuC;QAC1C,CAAC,CAAC,YAAY,CAAA;IACtB,IAAI,CAAC,OAAO;QACR,OAAO;YACH,yBAAW,CAAC,QAAQ,CAAC,qBAAqB,CAAC;gBAC3C,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC;gBAChC,CAAC,CAAE,oBAAsC;gBACzC,CAAC,CAAC,YAAY,CAAA;IAE1B,OAAO,UACH,WAA8B,EAC9B,YAA8B;QAE9B,IAAI,OAAO,GAAG,MAAM,CAAA;QAEpB,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;YAC7B,QAAQ,OAAO,YAAY,EAAE,CAAC;gBAC1B,KAAK,QAAQ;oBACT,OAAO,GAAG,CAAC,YAAY,CAAC,CAAA;oBACxB,MAAK;gBAET,KAAK,QAAQ;oBACT,OAAO,GAAG,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAA;oBACnC,MAAK;YACb,CAAC;QACL,CAAC;QAED,MAAM,IAAI,GAAuB;YAC7B,MAAM,EAAE,YAAY;gBAChB,CAAC,CAAC,WAAW,CAAC,WAAW;gBACzB,CAAC,CAAE,WAAwB;YAC/B,IAAI,EAAE,IAAI;YACV,OAAO;YACP,UAAU,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS;SACvD,CAAA;QACD,IAAA,gCAAsB,GAAE,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/C,CAAC,CAAA;AACL,CAAC;AA/DD,wBA+DC","file":"Unique.js","sourcesContent":["import { getMetadataArgsStorage } from \"../globals\"\nimport { UniqueMetadataArgs } from \"../metadata-args/UniqueMetadataArgs\"\nimport { UniqueOptions } from \"./options/UniqueOptions\"\nimport { ObjectUtils } from \"../util/ObjectUtils\"\n\n/**\n * Composite unique constraint must be set on entity classes and must specify entity's fields to be unique.\n */\nexport function Unique(\n name: string,\n fields: string[],\n options?: UniqueOptions,\n): ClassDecorator & PropertyDecorator\n\n/**\n * Composite unique constraint must be set on entity classes and must specify entity's fields to be unique.\n */\nexport function Unique(\n fields: string[],\n options?: UniqueOptions,\n): ClassDecorator & PropertyDecorator\n\n/**\n * Composite unique constraint must be set on entity classes and must specify entity's fields to be unique.\n */\nexport function Unique(\n fields: (object?: any) => any[] | { [key: string]: number },\n options?: UniqueOptions,\n): ClassDecorator & PropertyDecorator\n\n/**\n * Composite unique constraint must be set on entity classes and must specify entity's fields to be unique.\n */\nexport function Unique(\n name: string,\n fields: (object?: any) => any[] | { [key: string]: number },\n options?: UniqueOptions,\n): ClassDecorator & PropertyDecorator\n\n/**\n * Composite unique constraint must be set on entity classes and must specify entity's fields to be unique.\n */\nexport function Unique(\n nameOrFieldsOrOptions?:\n | string\n | string[]\n | ((object: any) => any[] | { [key: string]: number })\n | UniqueOptions,\n maybeFieldsOrOptions?:\n | ((object?: any) => any[] | { [key: string]: number })\n | string[]\n | UniqueOptions,\n maybeOptions?: UniqueOptions,\n): ClassDecorator & PropertyDecorator {\n const name =\n typeof nameOrFieldsOrOptions === \"string\"\n ? nameOrFieldsOrOptions\n : undefined\n const fields =\n typeof nameOrFieldsOrOptions === \"string\"\n ? <\n | ((object?: any) => any[] | { [key: string]: number })\n | string[]\n >maybeFieldsOrOptions\n : (nameOrFieldsOrOptions as string[])\n let options =\n ObjectUtils.isObject(nameOrFieldsOrOptions) &&\n !Array.isArray(nameOrFieldsOrOptions)\n ? (nameOrFieldsOrOptions as UniqueOptions)\n : maybeOptions\n if (!options)\n options =\n ObjectUtils.isObject(nameOrFieldsOrOptions) &&\n !Array.isArray(maybeFieldsOrOptions)\n ? (maybeFieldsOrOptions as UniqueOptions)\n : maybeOptions\n\n return function (\n clsOrObject: Function | Object,\n propertyName?: string | symbol,\n ) {\n let columns = fields\n\n if (propertyName !== undefined) {\n switch (typeof propertyName) {\n case \"string\":\n columns = [propertyName]\n break\n\n case \"symbol\":\n columns = [propertyName.toString()]\n break\n }\n }\n\n const args: UniqueMetadataArgs = {\n target: propertyName\n ? clsOrObject.constructor\n : (clsOrObject as Function),\n name: name,\n columns,\n deferrable: options ? options.deferrable : undefined,\n }\n getMetadataArgsStorage().uniques.push(args)\n }\n}\n"],"sourceRoot":".."}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/decorator/columns/Column.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AAiBtD,mFAA+E;AAgH/E;;;GAGG;AACH,SAAgB,MAAM,CAClB,aAG6C,EAC7C,OAA+C;IAE/C,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,uBAAuB;QACvB,IAAI,IAA4B,CAAA;QAChC,IACI,OAAO,aAAa,KAAK,QAAQ;YACjC,OAAO,aAAa,KAAK,UAAU,EACrC;YACE,IAAI,GAAe,aAAa,CAAA;SACnC;aAAM,IAAI,aAAa,EAAE;YACtB,OAAO,GAAkB,aAAa,CAAA;YACtC,IAAI,GAAG,aAAa,CAAC,IAAI,CAAA;SAC5B;QACD,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,EAAmB,CAAA;QAE3C,uDAAuD;QACvD,MAAM,mBAAmB,GACrB,OAAO,IAAK,OAAe,CAAC,WAAW;YACnC,CAAC,CAAE,OAAe,CAAC,WAAW,CACxB,aAAa,EACb,MAAM,EACN,YAAY,CACf;YACH,CAAC,CAAC,SAAS,CAAA;QACnB,IAAI,CAAC,IAAI,IAAI,mBAAmB;YAC5B,uDAAuD;YACvD,IAAI,GAAG,mBAAmB,CAAA;QAE9B,yGAAyG;QACzG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI;YAAE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QAE9C,0CAA0C;QAC1C,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,UAAU;YAChD,OAAO,CAAC,UAAU;gBACd,mBAAmB,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAA;QAE5D,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE;YACrC,uBAAuB;YACvB,IAAA,gCAAsB,GAAE,CAAC,SAAS,CAAC,IAAI,CAAC;gBACpC,MAAM,EAAE,MAAM,CAAC,WAAW;gBAC1B,YAAY,EAAE,YAAY;gBAC1B,OAAO,EACH,mBAAmB,KAAK,KAAK,IAAI,OAAO,CAAC,KAAK,KAAK,IAAI;gBAC3D,MAAM,EACF,OAAO,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;gBAC7D,IAAI,EAAE,aAAyC;aAC1B,CAAC,CAAA;SAC7B;aAAM;YACH,4BAA4B;YAE5B,yFAAyF;YACzF,IAAI,CAAC,OAAO,CAAC,IAAI;gBACb,MAAM,IAAI,mDAAwB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;YAE5D,gBAAgB;YAChB,IAAI,OAAO,CAAC,MAAM,KAAK,IAAI;gBACvB,IAAA,gCAAsB,GAAE,CAAC,OAAO,CAAC,IAAI,CAAC;oBAClC,MAAM,EAAE,MAAM,CAAC,WAAW;oBAC1B,OAAO,EAAE,CAAC,YAAY,CAAC;iBAC1B,CAAC,CAAA;YAEN,IAAA,gCAAsB,GAAE,CAAC,OAAO,CAAC,IAAI,CAAC;gBAClC,MAAM,EAAE,MAAM,CAAC,WAAW;gBAC1B,YAAY,EAAE,YAAY;gBAC1B,IAAI,EAAE,SAAS;gBACf,OAAO,EAAE,OAAO;aACG,CAAC,CAAA;YAExB,IAAI,OAAO,CAAC,SAAS,EAAE;gBACnB,IAAA,gCAAsB,GAAE,CAAC,WAAW,CAAC,IAAI,CAAC;oBACtC,MAAM,EAAE,MAAM,CAAC,WAAW;oBAC1B,YAAY,EAAE,YAAY;oBAC1B,QAAQ,EACJ,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ;wBACjC,CAAC,CAAC,OAAO,CAAC,SAAS;wBACnB,CAAC,CAAC,WAAW;iBACC,CAAC,CAAA;aAC9B;SACJ;IACL,CAAC,CAAA;AACL,CAAC;AAtFD,wBAsFC","file":"Column.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport {\n ColumnType,\n SimpleColumnType,\n SpatialColumnType,\n WithLengthColumnType,\n WithPrecisionColumnType,\n WithWidthColumnType,\n} from \"../../driver/types/ColumnTypes\"\nimport { ColumnMetadataArgs } from \"../../metadata-args/ColumnMetadataArgs\"\nimport { ColumnCommonOptions } from \"../options/ColumnCommonOptions\"\nimport { SpatialColumnOptions } from \"../options/SpatialColumnOptions\"\nimport { ColumnWithLengthOptions } from \"../options/ColumnWithLengthOptions\"\nimport { ColumnNumericOptions } from \"../options/ColumnNumericOptions\"\nimport { ColumnEnumOptions } from \"../options/ColumnEnumOptions\"\nimport { ColumnEmbeddedOptions } from \"../options/ColumnEmbeddedOptions\"\nimport { EmbeddedMetadataArgs } from \"../../metadata-args/EmbeddedMetadataArgs\"\nimport { ColumnTypeUndefinedError } from \"../../error/ColumnTypeUndefinedError\"\nimport { ColumnHstoreOptions } from \"../options/ColumnHstoreOptions\"\nimport { ColumnWithWidthOptions } from \"../options/ColumnWithWidthOptions\"\nimport { GeneratedMetadataArgs } from \"../../metadata-args/GeneratedMetadataArgs\"\nimport { ColumnOptions } from \"../options/ColumnOptions\"\n\n/**\n * Column decorator is used to mark a specific class property as a table column. Only properties decorated with this\n * decorator will be persisted to the database when entity be saved.\n */\nexport function Column(): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(options: ColumnOptions): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: SimpleColumnType,\n options?: ColumnCommonOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: SpatialColumnType,\n options?: ColumnCommonOptions & SpatialColumnOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: WithLengthColumnType,\n options?: ColumnCommonOptions & ColumnWithLengthOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: WithWidthColumnType,\n options?: ColumnCommonOptions & ColumnWithWidthOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: WithPrecisionColumnType,\n options?: ColumnCommonOptions & ColumnNumericOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: \"enum\",\n options?: ColumnCommonOptions & ColumnEnumOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: \"simple-enum\",\n options?: ColumnCommonOptions & ColumnEnumOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: \"set\",\n options?: ColumnCommonOptions & ColumnEnumOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: \"hstore\",\n options?: ColumnCommonOptions & ColumnHstoreOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n *\n * Property in entity can be marked as Embedded, and on persist all columns from the embedded are mapped to the\n * single table of the entity where Embedded is used. And on hydration all columns which supposed to be in the\n * embedded will be mapped to it from the single table.\n */\nexport function Column(\n type: (type?: any) => Function,\n options?: ColumnEmbeddedOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n typeOrOptions?:\n | ((type?: any) => Function)\n | ColumnType\n | (ColumnOptions & ColumnEmbeddedOptions),\n options?: ColumnOptions & ColumnEmbeddedOptions,\n): PropertyDecorator {\n return function (object: Object, propertyName: string) {\n // normalize parameters\n let type: ColumnType | undefined\n if (\n typeof typeOrOptions === \"string\" ||\n typeof typeOrOptions === \"function\"\n ) {\n type = <ColumnType>typeOrOptions\n } else if (typeOrOptions) {\n options = <ColumnOptions>typeOrOptions\n type = typeOrOptions.type\n }\n if (!options) options = {} as ColumnOptions\n\n // if type is not given explicitly then try to guess it\n const reflectMetadataType =\n Reflect && (Reflect as any).getMetadata\n ? (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n : undefined\n if (!type && reflectMetadataType)\n // if type is not given explicitly then try to guess it\n type = reflectMetadataType\n\n // check if there is no type in column options then set type from first function argument, or guessed one\n if (!options.type && type) options.type = type\n\n // specify HSTORE type if column is HSTORE\n if (options.type === \"hstore\" && !options.hstoreType)\n options.hstoreType =\n reflectMetadataType === Object ? \"object\" : \"string\"\n\n if (typeof typeOrOptions === \"function\") {\n // register an embedded\n getMetadataArgsStorage().embeddeds.push({\n target: object.constructor,\n propertyName: propertyName,\n isArray:\n reflectMetadataType === Array || options.array === true,\n prefix:\n options.prefix !== undefined ? options.prefix : undefined,\n type: typeOrOptions as (type?: any) => Function,\n } as EmbeddedMetadataArgs)\n } else {\n // register a regular column\n\n // if we still don't have a type then we need to give error to user that type is required\n if (!options.type)\n throw new ColumnTypeUndefinedError(object, propertyName)\n\n // create unique\n if (options.unique === true)\n getMetadataArgsStorage().uniques.push({\n target: object.constructor,\n columns: [propertyName],\n })\n\n getMetadataArgsStorage().columns.push({\n target: object.constructor,\n propertyName: propertyName,\n mode: \"regular\",\n options: options,\n } as ColumnMetadataArgs)\n\n if (options.generated) {\n getMetadataArgsStorage().generations.push({\n target: object.constructor,\n propertyName: propertyName,\n strategy:\n typeof options.generated === \"string\"\n ? options.generated\n : \"increment\",\n } as GeneratedMetadataArgs)\n }\n }\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../../src/decorator/columns/Column.ts"],"names":[],"mappings":"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","file":"Column.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport {\n ColumnType,\n SimpleColumnType,\n SpatialColumnType,\n WithLengthColumnType,\n WithPrecisionColumnType,\n WithWidthColumnType,\n} from \"../../driver/types/ColumnTypes\"\nimport { ColumnMetadataArgs } from \"../../metadata-args/ColumnMetadataArgs\"\nimport { ColumnCommonOptions } from \"../options/ColumnCommonOptions\"\nimport { SpatialColumnOptions } from \"../options/SpatialColumnOptions\"\nimport { ColumnWithLengthOptions } from \"../options/ColumnWithLengthOptions\"\nimport { ColumnNumericOptions } from \"../options/ColumnNumericOptions\"\nimport { ColumnEnumOptions } from \"../options/ColumnEnumOptions\"\nimport { ColumnEmbeddedOptions } from \"../options/ColumnEmbeddedOptions\"\nimport { EmbeddedMetadataArgs } from \"../../metadata-args/EmbeddedMetadataArgs\"\nimport { ColumnTypeUndefinedError } from \"../../error/ColumnTypeUndefinedError\"\nimport { ColumnHstoreOptions } from \"../options/ColumnHstoreOptions\"\nimport { ColumnWithWidthOptions } from \"../options/ColumnWithWidthOptions\"\nimport { GeneratedMetadataArgs } from \"../../metadata-args/GeneratedMetadataArgs\"\nimport { ColumnOptions } from \"../options/ColumnOptions\"\n\n/**\n * Column decorator is used to mark a specific class property as a table column. Only properties decorated with this\n * decorator will be persisted to the database when entity be saved.\n */\nexport function Column(): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(options: ColumnOptions): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: SimpleColumnType,\n options?: ColumnCommonOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: SpatialColumnType,\n options?: ColumnCommonOptions & SpatialColumnOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: WithLengthColumnType,\n options?: ColumnCommonOptions & ColumnWithLengthOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: WithWidthColumnType,\n options?: ColumnCommonOptions & ColumnWithWidthOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: WithPrecisionColumnType,\n options?: ColumnCommonOptions & ColumnNumericOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: \"enum\",\n options?: ColumnCommonOptions & ColumnEnumOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: \"simple-enum\",\n options?: ColumnCommonOptions & ColumnEnumOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: \"set\",\n options?: ColumnCommonOptions & ColumnEnumOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n type: \"hstore\",\n options?: ColumnCommonOptions & ColumnHstoreOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n *\n * Property in entity can be marked as Embedded, and on persist all columns from the embedded are mapped to the\n * single table of the entity where Embedded is used. And on hydration all columns which supposed to be in the\n * embedded will be mapped to it from the single table.\n */\nexport function Column(\n type: (type?: any) => Function,\n options?: ColumnEmbeddedOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n */\nexport function Column(\n typeOrOptions?:\n | ((type?: any) => Function)\n | ColumnType\n | (ColumnOptions & ColumnEmbeddedOptions),\n options?: ColumnOptions & ColumnEmbeddedOptions,\n): PropertyDecorator {\n return function (object: Object, propertyName: string) {\n // normalize parameters\n let type: ColumnType | undefined\n if (\n typeof typeOrOptions === \"string\" ||\n typeof typeOrOptions === \"function\"\n ) {\n type = <ColumnType>typeOrOptions\n } else if (typeOrOptions) {\n options = <ColumnOptions>typeOrOptions\n type = typeOrOptions.type\n }\n if (!options) options = {} as ColumnOptions\n\n // if type is not given explicitly then try to guess it\n const reflectMetadataType =\n Reflect && (Reflect as any).getMetadata\n ? (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n : undefined\n if (!type && reflectMetadataType)\n // if type is not given explicitly then try to guess it\n type = reflectMetadataType\n\n // check if there is no type in column options then set type from first function argument, or guessed one\n if (!options.type && type) options.type = type\n\n // specify HSTORE type if column is HSTORE\n if (options.type === \"hstore\" && !options.hstoreType)\n options.hstoreType =\n reflectMetadataType === Object ? \"object\" : \"string\"\n\n if (typeof typeOrOptions === \"function\") {\n // register an embedded\n getMetadataArgsStorage().embeddeds.push({\n target: object.constructor,\n propertyName: propertyName,\n isArray:\n reflectMetadataType === Array || options.array === true,\n prefix:\n options.prefix !== undefined ? options.prefix : undefined,\n type: typeOrOptions as (type?: any) => Function,\n } as EmbeddedMetadataArgs)\n } else {\n // register a regular column\n\n // if we still don't have a type then we need to give error to user that type is required\n if (!options.type)\n throw new ColumnTypeUndefinedError(object, propertyName)\n\n // create unique\n if (options.unique === true)\n getMetadataArgsStorage().uniques.push({\n target: object.constructor,\n columns: [propertyName],\n })\n\n getMetadataArgsStorage().columns.push({\n target: object.constructor,\n propertyName: propertyName,\n mode: \"regular\",\n options: options,\n } as ColumnMetadataArgs)\n\n if (options.generated) {\n getMetadataArgsStorage().generations.push({\n target: object.constructor,\n propertyName: propertyName,\n strategy:\n typeof options.generated === \"string\"\n ? options.generated\n : \"increment\",\n } as GeneratedMetadataArgs)\n }\n }\n }\n}\n"],"sourceRoot":"../.."}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/decorator/columns/PrimaryColumn.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AACtD,mFAA+E;AAC/E,uGAAmG;AA6BnG;;;;GAIG;AACH,SAAgB,aAAa,CACzB,aAAiD,EACjD,OAA8B;IAE9B,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,uBAAuB;QACvB,IAAI,IAA4B,CAAA;QAChC,IACI,OAAO,aAAa,KAAK,QAAQ;YACjC,aAAa,KAAK,MAAM;YACxB,aAAa,KAAK,OAAO;YACzB,aAAa,KAAK,MAAM,EAC1B;YACE,IAAI,GAAG,aAA2B,CAAA;SACrC;aAAM;YACH,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAwB,aAAa,CAAC,CAAA;SACnE;QACD,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,EAA0B,CAAA;QAElD,uDAAuD;QACvD,MAAM,mBAAmB,GACrB,OAAO,IAAK,OAAe,CAAC,WAAW;YACnC,CAAC,CAAE,OAAe,CAAC,WAAW,CACxB,aAAa,EACb,MAAM,EACN,YAAY,CACf;YACH,CAAC,CAAC,SAAS,CAAA;QACnB,IAAI,CAAC,IAAI,IAAI,mBAAmB;YAAE,IAAI,GAAG,mBAAmB,CAAA;QAE5D,yGAAyG;QACzG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI;YAAE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QAE9C,yFAAyF;QACzF,IAAI,CAAC,OAAO,CAAC,IAAI;YACb,MAAM,IAAI,mDAAwB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;QAE5D,wFAAwF;QACxF,IAAI,OAAO,CAAC,QAAQ;YAChB,MAAM,IAAI,uEAAkC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;QAEtE,6CAA6C;QAC7C,OAAO,CAAC,OAAO,GAAG,IAAI,CAAA;QAEtB,4CAA4C;QAC5C,IAAA,gCAAsB,GAAE,CAAC,OAAO,CAAC,IAAI,CAAC;YAClC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,OAAO;SACG,CAAC,CAAA;QAExB,IAAI,OAAO,CAAC,SAAS,EAAE;YACnB,IAAA,gCAAsB,GAAE,CAAC,WAAW,CAAC,IAAI,CAAC;gBACtC,MAAM,EAAE,MAAM,CAAC,WAAW;gBAC1B,YAAY,EAAE,YAAY;gBAC1B,QAAQ,EACJ,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ;oBACjC,CAAC,CAAC,OAAO,CAAC,SAAS;oBACnB,CAAC,CAAC,WAAW;aACC,CAAC,CAAA;SAC9B;IACL,CAAC,CAAA;AACL,CAAC;AA/DD,sCA+DC","file":"PrimaryColumn.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { ColumnTypeUndefinedError } from \"../../error/ColumnTypeUndefinedError\"\nimport { PrimaryColumnCannotBeNullableError } from \"../../error/PrimaryColumnCannotBeNullableError\"\nimport { ColumnMetadataArgs } from \"../../metadata-args/ColumnMetadataArgs\"\nimport { GeneratedMetadataArgs } from \"../../metadata-args/GeneratedMetadataArgs\"\nimport { ColumnOptions } from \"../options/ColumnOptions\"\nimport { ColumnType } from \"../../driver/types/ColumnTypes\"\n\n/**\n * Describes all primary key column's options.\n * If specified, the nullable field must be set to false.\n */\nexport type PrimaryColumnOptions = ColumnOptions & { nullable?: false }\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n * Primary columns also creates a PRIMARY KEY for this column in a db.\n */\nexport function PrimaryColumn(options?: PrimaryColumnOptions): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n * Primary columns also creates a PRIMARY KEY for this column in a db.\n */\nexport function PrimaryColumn(\n type?: ColumnType,\n options?: PrimaryColumnOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n * Primary columns also creates a PRIMARY KEY for this column in a db.\n */\nexport function PrimaryColumn(\n typeOrOptions?: ColumnType | PrimaryColumnOptions,\n options?: PrimaryColumnOptions,\n): PropertyDecorator {\n return function (object: Object, propertyName: string) {\n // normalize parameters\n let type: ColumnType | undefined\n if (\n typeof typeOrOptions === \"string\" ||\n typeOrOptions === String ||\n typeOrOptions === Boolean ||\n typeOrOptions === Number\n ) {\n type = typeOrOptions as ColumnType\n } else {\n options = Object.assign({}, <PrimaryColumnOptions>typeOrOptions)\n }\n if (!options) options = {} as PrimaryColumnOptions\n\n // if type is not given explicitly then try to guess it\n const reflectMetadataType =\n Reflect && (Reflect as any).getMetadata\n ? (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n : undefined\n if (!type && reflectMetadataType) type = reflectMetadataType\n\n // check if there is no type in column options then set type from first function argument, or guessed one\n if (!options.type && type) options.type = type\n\n // if we still don't have a type then we need to give error to user that type is required\n if (!options.type)\n throw new ColumnTypeUndefinedError(object, propertyName)\n\n // check if column is not nullable, because we cannot allow a primary key to be nullable\n if (options.nullable)\n throw new PrimaryColumnCannotBeNullableError(object, propertyName)\n\n // explicitly set a primary to column options\n options.primary = true\n\n // create and register a new column metadata\n getMetadataArgsStorage().columns.push({\n target: object.constructor,\n propertyName: propertyName,\n mode: \"regular\",\n options: options,\n } as ColumnMetadataArgs)\n\n if (options.generated) {\n getMetadataArgsStorage().generations.push({\n target: object.constructor,\n propertyName: propertyName,\n strategy:\n typeof options.generated === \"string\"\n ? options.generated\n : \"increment\",\n } as GeneratedMetadataArgs)\n }\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../../src/decorator/columns/PrimaryColumn.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AACtD,mFAA+E;AAC/E,uGAAmG;AA6BnG;;;;GAIG;AACH,SAAgB,aAAa,CACzB,aAAiD,EACjD,OAA8B;IAE9B,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,uBAAuB;QACvB,IAAI,IAA4B,CAAA;QAChC,IACI,OAAO,aAAa,KAAK,QAAQ;YACjC,aAAa,KAAK,MAAM;YACxB,aAAa,KAAK,OAAO;YACzB,aAAa,KAAK,MAAM,EAC1B,CAAC;YACC,IAAI,GAAG,aAA2B,CAAA;QACtC,CAAC;aAAM,CAAC;YACJ,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAwB,aAAa,CAAC,CAAA;QACpE,CAAC;QACD,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,EAA0B,CAAA;QAElD,uDAAuD;QACvD,MAAM,mBAAmB,GACrB,OAAO,IAAK,OAAe,CAAC,WAAW;YACnC,CAAC,CAAE,OAAe,CAAC,WAAW,CACxB,aAAa,EACb,MAAM,EACN,YAAY,CACf;YACH,CAAC,CAAC,SAAS,CAAA;QACnB,IAAI,CAAC,IAAI,IAAI,mBAAmB;YAAE,IAAI,GAAG,mBAAmB,CAAA;QAE5D,yGAAyG;QACzG,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,IAAI;YAAE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QAE9C,yFAAyF;QACzF,IAAI,CAAC,OAAO,CAAC,IAAI;YACb,MAAM,IAAI,mDAAwB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;QAE5D,wFAAwF;QACxF,IAAI,OAAO,CAAC,QAAQ;YAChB,MAAM,IAAI,uEAAkC,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;QAEtE,6CAA6C;QAC7C,OAAO,CAAC,OAAO,GAAG,IAAI,CAAA;QAEtB,4CAA4C;QAC5C,IAAA,gCAAsB,GAAE,CAAC,OAAO,CAAC,IAAI,CAAC;YAClC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,OAAO;SACG,CAAC,CAAA;QAExB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACpB,IAAA,gCAAsB,GAAE,CAAC,WAAW,CAAC,IAAI,CAAC;gBACtC,MAAM,EAAE,MAAM,CAAC,WAAW;gBAC1B,YAAY,EAAE,YAAY;gBAC1B,QAAQ,EACJ,OAAO,OAAO,CAAC,SAAS,KAAK,QAAQ;oBACjC,CAAC,CAAC,OAAO,CAAC,SAAS;oBACnB,CAAC,CAAC,WAAW;aACC,CAAC,CAAA;QAC/B,CAAC;IACL,CAAC,CAAA;AACL,CAAC;AA/DD,sCA+DC","file":"PrimaryColumn.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { ColumnTypeUndefinedError } from \"../../error/ColumnTypeUndefinedError\"\nimport { PrimaryColumnCannotBeNullableError } from \"../../error/PrimaryColumnCannotBeNullableError\"\nimport { ColumnMetadataArgs } from \"../../metadata-args/ColumnMetadataArgs\"\nimport { GeneratedMetadataArgs } from \"../../metadata-args/GeneratedMetadataArgs\"\nimport { ColumnOptions } from \"../options/ColumnOptions\"\nimport { ColumnType } from \"../../driver/types/ColumnTypes\"\n\n/**\n * Describes all primary key column's options.\n * If specified, the nullable field must be set to false.\n */\nexport type PrimaryColumnOptions = ColumnOptions & { nullable?: false }\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n * Primary columns also creates a PRIMARY KEY for this column in a db.\n */\nexport function PrimaryColumn(options?: PrimaryColumnOptions): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n * Primary columns also creates a PRIMARY KEY for this column in a db.\n */\nexport function PrimaryColumn(\n type?: ColumnType,\n options?: PrimaryColumnOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n * Primary columns also creates a PRIMARY KEY for this column in a db.\n */\nexport function PrimaryColumn(\n typeOrOptions?: ColumnType | PrimaryColumnOptions,\n options?: PrimaryColumnOptions,\n): PropertyDecorator {\n return function (object: Object, propertyName: string) {\n // normalize parameters\n let type: ColumnType | undefined\n if (\n typeof typeOrOptions === \"string\" ||\n typeOrOptions === String ||\n typeOrOptions === Boolean ||\n typeOrOptions === Number\n ) {\n type = typeOrOptions as ColumnType\n } else {\n options = Object.assign({}, <PrimaryColumnOptions>typeOrOptions)\n }\n if (!options) options = {} as PrimaryColumnOptions\n\n // if type is not given explicitly then try to guess it\n const reflectMetadataType =\n Reflect && (Reflect as any).getMetadata\n ? (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n : undefined\n if (!type && reflectMetadataType) type = reflectMetadataType\n\n // check if there is no type in column options then set type from first function argument, or guessed one\n if (!options.type && type) options.type = type\n\n // if we still don't have a type then we need to give error to user that type is required\n if (!options.type)\n throw new ColumnTypeUndefinedError(object, propertyName)\n\n // check if column is not nullable, because we cannot allow a primary key to be nullable\n if (options.nullable)\n throw new PrimaryColumnCannotBeNullableError(object, propertyName)\n\n // explicitly set a primary to column options\n options.primary = true\n\n // create and register a new column metadata\n getMetadataArgsStorage().columns.push({\n target: object.constructor,\n propertyName: propertyName,\n mode: \"regular\",\n options: options,\n } as ColumnMetadataArgs)\n\n if (options.generated) {\n getMetadataArgsStorage().generations.push({\n target: object.constructor,\n propertyName: propertyName,\n strategy:\n typeof options.generated === \"string\"\n ? options.generated\n : \"increment\",\n } as GeneratedMetadataArgs)\n }\n }\n}\n"],"sourceRoot":"../.."}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/decorator/columns/PrimaryGeneratedColumn.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AAMtD,wDAAoD;AA2CpD;;;;GAIG;AACH,SAAgB,sBAAsB,CAClC,iBAO2C,EAC3C,YAG2C;IAE3C,uBAAuB;IACvB,MAAM,OAAO,GAAkB,EAAE,CAAA;IACjC,IAAI,QAAqD,CAAA;IACzD,IAAI,iBAAiB,EAAE;QACnB,IAAI,OAAO,iBAAiB,KAAK,QAAQ;YACrC,QAAQ,GAAG,iBAIK,CAAA;QAEpB,IAAI,yBAAW,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE;YACzC,QAAQ,GAAG,WAAW,CAAA;YACtB,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAA;SAC5C;KACJ;SAAM;QACH,QAAQ,GAAG,WAAW,CAAA;KACzB;IACD,IAAI,yBAAW,CAAC,QAAQ,CAAC,YAAY,CAAC;QAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IAE5E,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,sFAAsF;QACtF,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE;YACf,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,UAAU,EAAE;gBACrD,OAAO,CAAC,IAAI,GAAG,MAAM,CAAA;aACxB;iBAAM,IAAI,QAAQ,KAAK,MAAM,EAAE;gBAC5B,OAAO,CAAC,IAAI,GAAG,MAAM,CAAA;aACxB;iBAAM,IAAI,QAAQ,KAAK,OAAO,EAAE;gBAC7B,OAAO,CAAC,IAAI,GAAG,KAAK,CAAA;aACvB;SACJ;QAED,2DAA2D;QAC3D,OAAO,CAAC,OAAO,GAAG,IAAI,CAAA;QAEtB,gCAAgC;QAChC,IAAA,gCAAsB,GAAE,CAAC,OAAO,CAAC,IAAI,CAAC;YAClC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,OAAO;SACnB,CAAC,CAAA;QAEF,mCAAmC;QACnC,IAAA,gCAAsB,GAAE,CAAC,WAAW,CAAC,IAAI,CAAC;YACtC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,QAAQ,EAAE,QAAQ;SACI,CAAC,CAAA;IAC/B,CAAC,CAAA;AACL,CAAC;AAhED,wDAgEC","file":"PrimaryGeneratedColumn.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { PrimaryGeneratedColumnNumericOptions } from \"../options/PrimaryGeneratedColumnNumericOptions\"\nimport { PrimaryGeneratedColumnUUIDOptions } from \"../options/PrimaryGeneratedColumnUUIDOptions\"\nimport { GeneratedMetadataArgs } from \"../../metadata-args/GeneratedMetadataArgs\"\nimport { ColumnOptions } from \"../options/ColumnOptions\"\nimport { PrimaryGeneratedColumnIdentityOptions } from \"../options/PrimaryGeneratedColumnIdentityOptions\"\nimport { ObjectUtils } from \"../../util/ObjectUtils\"\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n */\nexport function PrimaryGeneratedColumn(): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n */\nexport function PrimaryGeneratedColumn(\n options: PrimaryGeneratedColumnNumericOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n */\nexport function PrimaryGeneratedColumn(\n strategy: \"increment\",\n options?: PrimaryGeneratedColumnNumericOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n */\nexport function PrimaryGeneratedColumn(\n strategy: \"uuid\",\n options?: PrimaryGeneratedColumnUUIDOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n */\nexport function PrimaryGeneratedColumn(\n strategy: \"rowid\",\n options?: PrimaryGeneratedColumnUUIDOptions,\n): PropertyDecorator\n\nexport function PrimaryGeneratedColumn(\n strategy: \"identity\",\n options?: PrimaryGeneratedColumnIdentityOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n * This column creates an integer PRIMARY COLUMN with generated set to true.\n */\nexport function PrimaryGeneratedColumn(\n strategyOrOptions?:\n | \"increment\"\n | \"uuid\"\n | \"rowid\"\n | \"identity\"\n | PrimaryGeneratedColumnNumericOptions\n | PrimaryGeneratedColumnUUIDOptions\n | PrimaryGeneratedColumnIdentityOptions,\n maybeOptions?:\n | PrimaryGeneratedColumnNumericOptions\n | PrimaryGeneratedColumnUUIDOptions\n | PrimaryGeneratedColumnIdentityOptions,\n): PropertyDecorator {\n // normalize parameters\n const options: ColumnOptions = {}\n let strategy: \"increment\" | \"uuid\" | \"rowid\" | \"identity\"\n if (strategyOrOptions) {\n if (typeof strategyOrOptions === \"string\")\n strategy = strategyOrOptions as\n | \"increment\"\n | \"uuid\"\n | \"rowid\"\n | \"identity\"\n\n if (ObjectUtils.isObject(strategyOrOptions)) {\n strategy = \"increment\"\n Object.assign(options, strategyOrOptions)\n }\n } else {\n strategy = \"increment\"\n }\n if (ObjectUtils.isObject(maybeOptions)) Object.assign(options, maybeOptions)\n\n return function (object: Object, propertyName: string) {\n // if column type is not explicitly set then determine it based on generation strategy\n if (!options.type) {\n if (strategy === \"increment\" || strategy === \"identity\") {\n options.type = Number\n } else if (strategy === \"uuid\") {\n options.type = \"uuid\"\n } else if (strategy === \"rowid\") {\n options.type = \"int\"\n }\n }\n\n // explicitly set a primary and generated to column options\n options.primary = true\n\n // register column metadata args\n getMetadataArgsStorage().columns.push({\n target: object.constructor,\n propertyName: propertyName,\n mode: \"regular\",\n options: options,\n })\n\n // register generated metadata args\n getMetadataArgsStorage().generations.push({\n target: object.constructor,\n propertyName: propertyName,\n strategy: strategy,\n } as GeneratedMetadataArgs)\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../../src/decorator/columns/PrimaryGeneratedColumn.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AAMtD,wDAAoD;AA2CpD;;;;GAIG;AACH,SAAgB,sBAAsB,CAClC,iBAO2C,EAC3C,YAG2C;IAE3C,uBAAuB;IACvB,MAAM,OAAO,GAAkB,EAAE,CAAA;IACjC,IAAI,QAAqD,CAAA;IACzD,IAAI,iBAAiB,EAAE,CAAC;QACpB,IAAI,OAAO,iBAAiB,KAAK,QAAQ;YACrC,QAAQ,GAAG,iBAIK,CAAA;QAEpB,IAAI,yBAAW,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC1C,QAAQ,GAAG,WAAW,CAAA;YACtB,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,iBAAiB,CAAC,CAAA;QAC7C,CAAC;IACL,CAAC;SAAM,CAAC;QACJ,QAAQ,GAAG,WAAW,CAAA;IAC1B,CAAC;IACD,IAAI,yBAAW,CAAC,QAAQ,CAAC,YAAY,CAAC;QAAE,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,YAAY,CAAC,CAAA;IAE5E,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,sFAAsF;QACtF,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAChB,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;gBACtD,OAAO,CAAC,IAAI,GAAG,MAAM,CAAA;YACzB,CAAC;iBAAM,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;gBAC7B,OAAO,CAAC,IAAI,GAAG,MAAM,CAAA;YACzB,CAAC;iBAAM,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;gBAC9B,OAAO,CAAC,IAAI,GAAG,KAAK,CAAA;YACxB,CAAC;QACL,CAAC;QAED,2DAA2D;QAC3D,OAAO,CAAC,OAAO,GAAG,IAAI,CAAA;QAEtB,gCAAgC;QAChC,IAAA,gCAAsB,GAAE,CAAC,OAAO,CAAC,IAAI,CAAC;YAClC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,OAAO;SACnB,CAAC,CAAA;QAEF,mCAAmC;QACnC,IAAA,gCAAsB,GAAE,CAAC,WAAW,CAAC,IAAI,CAAC;YACtC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,QAAQ,EAAE,QAAQ;SACI,CAAC,CAAA;IAC/B,CAAC,CAAA;AACL,CAAC;AAhED,wDAgEC","file":"PrimaryGeneratedColumn.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { PrimaryGeneratedColumnNumericOptions } from \"../options/PrimaryGeneratedColumnNumericOptions\"\nimport { PrimaryGeneratedColumnUUIDOptions } from \"../options/PrimaryGeneratedColumnUUIDOptions\"\nimport { GeneratedMetadataArgs } from \"../../metadata-args/GeneratedMetadataArgs\"\nimport { ColumnOptions } from \"../options/ColumnOptions\"\nimport { PrimaryGeneratedColumnIdentityOptions } from \"../options/PrimaryGeneratedColumnIdentityOptions\"\nimport { ObjectUtils } from \"../../util/ObjectUtils\"\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n */\nexport function PrimaryGeneratedColumn(): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n */\nexport function PrimaryGeneratedColumn(\n options: PrimaryGeneratedColumnNumericOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n */\nexport function PrimaryGeneratedColumn(\n strategy: \"increment\",\n options?: PrimaryGeneratedColumnNumericOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n */\nexport function PrimaryGeneratedColumn(\n strategy: \"uuid\",\n options?: PrimaryGeneratedColumnUUIDOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n */\nexport function PrimaryGeneratedColumn(\n strategy: \"rowid\",\n options?: PrimaryGeneratedColumnUUIDOptions,\n): PropertyDecorator\n\nexport function PrimaryGeneratedColumn(\n strategy: \"identity\",\n options?: PrimaryGeneratedColumnIdentityOptions,\n): PropertyDecorator\n\n/**\n * Column decorator is used to mark a specific class property as a table column.\n * Only properties decorated with this decorator will be persisted to the database when entity be saved.\n * This column creates an integer PRIMARY COLUMN with generated set to true.\n */\nexport function PrimaryGeneratedColumn(\n strategyOrOptions?:\n | \"increment\"\n | \"uuid\"\n | \"rowid\"\n | \"identity\"\n | PrimaryGeneratedColumnNumericOptions\n | PrimaryGeneratedColumnUUIDOptions\n | PrimaryGeneratedColumnIdentityOptions,\n maybeOptions?:\n | PrimaryGeneratedColumnNumericOptions\n | PrimaryGeneratedColumnUUIDOptions\n | PrimaryGeneratedColumnIdentityOptions,\n): PropertyDecorator {\n // normalize parameters\n const options: ColumnOptions = {}\n let strategy: \"increment\" | \"uuid\" | \"rowid\" | \"identity\"\n if (strategyOrOptions) {\n if (typeof strategyOrOptions === \"string\")\n strategy = strategyOrOptions as\n | \"increment\"\n | \"uuid\"\n | \"rowid\"\n | \"identity\"\n\n if (ObjectUtils.isObject(strategyOrOptions)) {\n strategy = \"increment\"\n Object.assign(options, strategyOrOptions)\n }\n } else {\n strategy = \"increment\"\n }\n if (ObjectUtils.isObject(maybeOptions)) Object.assign(options, maybeOptions)\n\n return function (object: Object, propertyName: string) {\n // if column type is not explicitly set then determine it based on generation strategy\n if (!options.type) {\n if (strategy === \"increment\" || strategy === \"identity\") {\n options.type = Number\n } else if (strategy === \"uuid\") {\n options.type = \"uuid\"\n } else if (strategy === \"rowid\") {\n options.type = \"int\"\n }\n }\n\n // explicitly set a primary and generated to column options\n options.primary = true\n\n // register column metadata args\n getMetadataArgsStorage().columns.push({\n target: object.constructor,\n propertyName: propertyName,\n mode: \"regular\",\n options: options,\n })\n\n // register generated metadata args\n getMetadataArgsStorage().generations.push({\n target: object.constructor,\n propertyName: propertyName,\n strategy: strategy,\n } as GeneratedMetadataArgs)\n }\n}\n"],"sourceRoot":"../.."}
@@ -17,7 +17,7 @@ function VirtualColumn(typeOrOptions, options) {
17
17
  options = typeOrOptions;
18
18
  type = options.type;
19
19
  }
20
- if (!(options === null || options === void 0 ? void 0 : options.query)) {
20
+ if (!options?.query) {
21
21
  throw new Error("Column options must be defined for calculated columns.");
22
22
  }
23
23
  // if type is not given explicitly then try to guess it
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/decorator/columns/VirtualColumn.ts"],"names":[],"mappings":";;;AACA,uCAAsD;AACtD,2CAAsD;AAgBtD;;GAEG;AACH,SAAgB,aAAa,CACzB,aAAiD,EACjD,OAA8B;IAE9B,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,uBAAuB;QACvB,IAAI,IAA4B,CAAA;QAChC,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE;YACnC,IAAI,GAAe,aAAa,CAAA;SACnC;aAAM;YACH,OAAO,GAAyB,aAAa,CAAA;YAC7C,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;SACtB;QAED,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,KAAK,CAAA,EAAE;YACjB,MAAM,IAAI,KAAK,CACX,wDAAwD,CAC3D,CAAA;SACJ;QAED,uDAAuD;QACvD,MAAM,mBAAmB,GACrB,OAAO,IAAK,OAAe,CAAC,WAAW;YACnC,CAAC,CAAE,OAAe,CAAC,WAAW,CACxB,aAAa,EACb,MAAM,EACN,YAAY,CACf;YACH,CAAC,CAAC,SAAS,CAAA;QACnB,IAAI,CAAC,IAAI,IAAI,mBAAmB;YAC5B,uDAAuD;YACvD,IAAI,GAAG,mBAAmB,CAAA;QAE9B,yGAAyG;QACzG,IAAI,IAAI;YAAE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QAE7B,0CAA0C;QAC1C,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,UAAU;YAChD,OAAO,CAAC,UAAU;gBACd,mBAAmB,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAA;QAE5D,yFAAyF;QACzF,IAAI,CAAC,OAAO,CAAC,IAAI;YACb,MAAM,IAAI,gCAAwB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;QAE5D,IAAA,gCAAsB,GAAE,CAAC,OAAO,CAAC,IAAI,CAAC;YAClC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,OAAO,IAAI,EAAE;SACH,CAAC,CAAA;IAC5B,CAAC,CAAA;AACL,CAAC;AApDD,sCAoDC","file":"VirtualColumn.js","sourcesContent":["import { ColumnType } from \"../../driver/types/ColumnTypes\"\nimport { ColumnTypeUndefinedError } from \"../../error\"\nimport { getMetadataArgsStorage } from \"../../globals\"\nimport { ColumnMetadataArgs } from \"../../metadata-args/ColumnMetadataArgs\"\nimport { VirtualColumnOptions } from \"../options/VirtualColumnOptions\"\n/**\n * VirtualColumn decorator is used to mark a specific class property as a Virtual column.\n */\nexport function VirtualColumn(options: VirtualColumnOptions): PropertyDecorator\n\n/**\n * VirtualColumn decorator is used to mark a specific class property as a Virtual column.\n */\nexport function VirtualColumn(\n typeOrOptions: ColumnType,\n options: VirtualColumnOptions,\n): PropertyDecorator\n\n/**\n * VirtualColumn decorator is used to mark a specific class property as a Virtual column.\n */\nexport function VirtualColumn(\n typeOrOptions?: ColumnType | VirtualColumnOptions,\n options?: VirtualColumnOptions,\n): PropertyDecorator {\n return function (object: Object, propertyName: string) {\n // normalize parameters\n let type: ColumnType | undefined\n if (typeof typeOrOptions === \"string\") {\n type = <ColumnType>typeOrOptions\n } else {\n options = <VirtualColumnOptions>typeOrOptions\n type = options.type\n }\n\n if (!options?.query) {\n throw new Error(\n \"Column options must be defined for calculated columns.\",\n )\n }\n\n // if type is not given explicitly then try to guess it\n const reflectMetadataType =\n Reflect && (Reflect as any).getMetadata\n ? (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n : undefined\n if (!type && reflectMetadataType)\n // if type is not given explicitly then try to guess it\n type = reflectMetadataType\n\n // check if there is no type in column options then set type from first function argument, or guessed one\n if (type) options.type = type\n\n // specify HSTORE type if column is HSTORE\n if (options.type === \"hstore\" && !options.hstoreType)\n options.hstoreType =\n reflectMetadataType === Object ? \"object\" : \"string\"\n\n // if we still don't have a type then we need to give error to user that type is required\n if (!options.type)\n throw new ColumnTypeUndefinedError(object, propertyName)\n\n getMetadataArgsStorage().columns.push({\n target: object.constructor,\n propertyName: propertyName,\n mode: \"virtual-property\",\n options: options || {},\n } as ColumnMetadataArgs)\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../../src/decorator/columns/VirtualColumn.ts"],"names":[],"mappings":";;;AACA,uCAAsD;AACtD,2CAAsD;AAgBtD;;GAEG;AACH,SAAgB,aAAa,CACzB,aAAiD,EACjD,OAA8B;IAE9B,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,uBAAuB;QACvB,IAAI,IAA4B,CAAA;QAChC,IAAI,OAAO,aAAa,KAAK,QAAQ,EAAE,CAAC;YACpC,IAAI,GAAe,aAAa,CAAA;QACpC,CAAC;aAAM,CAAC;YACJ,OAAO,GAAyB,aAAa,CAAA;YAC7C,IAAI,GAAG,OAAO,CAAC,IAAI,CAAA;QACvB,CAAC;QAED,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CACX,wDAAwD,CAC3D,CAAA;QACL,CAAC;QAED,uDAAuD;QACvD,MAAM,mBAAmB,GACrB,OAAO,IAAK,OAAe,CAAC,WAAW;YACnC,CAAC,CAAE,OAAe,CAAC,WAAW,CACxB,aAAa,EACb,MAAM,EACN,YAAY,CACf;YACH,CAAC,CAAC,SAAS,CAAA;QACnB,IAAI,CAAC,IAAI,IAAI,mBAAmB;YAC5B,uDAAuD;YACvD,IAAI,GAAG,mBAAmB,CAAA;QAE9B,yGAAyG;QACzG,IAAI,IAAI;YAAE,OAAO,CAAC,IAAI,GAAG,IAAI,CAAA;QAE7B,0CAA0C;QAC1C,IAAI,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,OAAO,CAAC,UAAU;YAChD,OAAO,CAAC,UAAU;gBACd,mBAAmB,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAA;QAE5D,yFAAyF;QACzF,IAAI,CAAC,OAAO,CAAC,IAAI;YACb,MAAM,IAAI,gCAAwB,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;QAE5D,IAAA,gCAAsB,GAAE,CAAC,OAAO,CAAC,IAAI,CAAC;YAClC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,OAAO,IAAI,EAAE;SACH,CAAC,CAAA;IAC5B,CAAC,CAAA;AACL,CAAC;AApDD,sCAoDC","file":"VirtualColumn.js","sourcesContent":["import { ColumnType } from \"../../driver/types/ColumnTypes\"\nimport { ColumnTypeUndefinedError } from \"../../error\"\nimport { getMetadataArgsStorage } from \"../../globals\"\nimport { ColumnMetadataArgs } from \"../../metadata-args/ColumnMetadataArgs\"\nimport { VirtualColumnOptions } from \"../options/VirtualColumnOptions\"\n/**\n * VirtualColumn decorator is used to mark a specific class property as a Virtual column.\n */\nexport function VirtualColumn(options: VirtualColumnOptions): PropertyDecorator\n\n/**\n * VirtualColumn decorator is used to mark a specific class property as a Virtual column.\n */\nexport function VirtualColumn(\n typeOrOptions: ColumnType,\n options: VirtualColumnOptions,\n): PropertyDecorator\n\n/**\n * VirtualColumn decorator is used to mark a specific class property as a Virtual column.\n */\nexport function VirtualColumn(\n typeOrOptions?: ColumnType | VirtualColumnOptions,\n options?: VirtualColumnOptions,\n): PropertyDecorator {\n return function (object: Object, propertyName: string) {\n // normalize parameters\n let type: ColumnType | undefined\n if (typeof typeOrOptions === \"string\") {\n type = <ColumnType>typeOrOptions\n } else {\n options = <VirtualColumnOptions>typeOrOptions\n type = options.type\n }\n\n if (!options?.query) {\n throw new Error(\n \"Column options must be defined for calculated columns.\",\n )\n }\n\n // if type is not given explicitly then try to guess it\n const reflectMetadataType =\n Reflect && (Reflect as any).getMetadata\n ? (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n : undefined\n if (!type && reflectMetadataType)\n // if type is not given explicitly then try to guess it\n type = reflectMetadataType\n\n // check if there is no type in column options then set type from first function argument, or guessed one\n if (type) options.type = type\n\n // specify HSTORE type if column is HSTORE\n if (options.type === \"hstore\" && !options.hstoreType)\n options.hstoreType =\n reflectMetadataType === Object ? \"object\" : \"string\"\n\n // if we still don't have a type then we need to give error to user that type is required\n if (!options.type)\n throw new ColumnTypeUndefinedError(object, propertyName)\n\n getMetadataArgsStorage().columns.push({\n target: object.constructor,\n propertyName: propertyName,\n mode: \"virtual-property\",\n options: options || {},\n } as ColumnMetadataArgs)\n }\n}\n"],"sourceRoot":"../.."}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/decorator/entity/ChildEntity.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AAItD;;GAEG;AACH,SAAgB,WAAW,CAAC,kBAAwB;IAChD,OAAO,UAAU,MAAgB;QAC7B,4BAA4B;QAC5B,IAAA,gCAAsB,GAAE,CAAC,MAAM,CAAC,IAAI,CAAC;YACjC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,cAAc;SACF,CAAC,CAAA;QAEvB,kDAAkD;QAClD,IAAI,OAAO,kBAAkB,KAAK,WAAW,EAAE;YAC3C,IAAA,gCAAsB,GAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC;gBAC9C,MAAM,EAAE,MAAM;gBACd,KAAK,EAAE,kBAAkB;aACM,CAAC,CAAA;SACvC;IACL,CAAC,CAAA;AACL,CAAC;AAhBD,kCAgBC","file":"ChildEntity.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { TableMetadataArgs } from \"../../metadata-args/TableMetadataArgs\"\nimport { DiscriminatorValueMetadataArgs } from \"../../metadata-args/DiscriminatorValueMetadataArgs\"\n\n/**\n * Special type of the table used in the single-table inherited tables.\n */\nexport function ChildEntity(discriminatorValue?: any): ClassDecorator {\n return function (target: Function) {\n // register a table metadata\n getMetadataArgsStorage().tables.push({\n target: target,\n type: \"entity-child\",\n } as TableMetadataArgs)\n\n // register discriminator value if it was provided\n if (typeof discriminatorValue !== \"undefined\") {\n getMetadataArgsStorage().discriminatorValues.push({\n target: target,\n value: discriminatorValue,\n } as DiscriminatorValueMetadataArgs)\n }\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../../src/decorator/entity/ChildEntity.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AAItD;;GAEG;AACH,SAAgB,WAAW,CAAC,kBAAwB;IAChD,OAAO,UAAU,MAAgB;QAC7B,4BAA4B;QAC5B,IAAA,gCAAsB,GAAE,CAAC,MAAM,CAAC,IAAI,CAAC;YACjC,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,cAAc;SACF,CAAC,CAAA;QAEvB,kDAAkD;QAClD,IAAI,OAAO,kBAAkB,KAAK,WAAW,EAAE,CAAC;YAC5C,IAAA,gCAAsB,GAAE,CAAC,mBAAmB,CAAC,IAAI,CAAC;gBAC9C,MAAM,EAAE,MAAM;gBACd,KAAK,EAAE,kBAAkB;aACM,CAAC,CAAA;QACxC,CAAC;IACL,CAAC,CAAA;AACL,CAAC;AAhBD,kCAgBC","file":"ChildEntity.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { TableMetadataArgs } from \"../../metadata-args/TableMetadataArgs\"\nimport { DiscriminatorValueMetadataArgs } from \"../../metadata-args/DiscriminatorValueMetadataArgs\"\n\n/**\n * Special type of the table used in the single-table inherited tables.\n */\nexport function ChildEntity(discriminatorValue?: any): ClassDecorator {\n return function (target: Function) {\n // register a table metadata\n getMetadataArgsStorage().tables.push({\n target: target,\n type: \"entity-child\",\n } as TableMetadataArgs)\n\n // register discriminator value if it was provided\n if (typeof discriminatorValue !== \"undefined\") {\n getMetadataArgsStorage().discriminatorValues.push({\n target: target,\n value: discriminatorValue,\n } as DiscriminatorValueMetadataArgs)\n }\n }\n}\n"],"sourceRoot":"../.."}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/decorator/relations/ManyToMany.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AAItD,wDAAoD;AAuBpD;;;;GAIG;AACH,SAAgB,UAAU,CACtB,oBAA8D,EAC9D,oBAAsE,EACtE,OAAyB;IAEzB,uBAAuB;IACvB,IAAI,mBAAkD,CAAA;IACtD,IAAI,yBAAW,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE;QAC5C,OAAO,GAAoB,oBAAoB,CAAA;KAClD;SAAM;QACH,mBAAmB,GAAG,oBAA2B,CAAA;KACpD;IAED,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,EAAqB,CAAA;QAE7C,4CAA4C;QAC5C,IAAI,MAAM,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,CAAA;QAClC,IAAI,CAAC,MAAM,IAAI,OAAO,IAAK,OAAe,CAAC,WAAW,EAAE;YACpD,0BAA0B;YAC1B,MAAM,aAAa,GAAI,OAAe,CAAC,WAAW,CAC9C,aAAa,EACb,MAAM,EACN,YAAY,CACf,CAAA;YACD,IACI,aAAa;gBACb,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ;gBACtC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS;gBAE9C,MAAM,GAAG,IAAI,CAAA;SACpB;QAED,IAAA,gCAAsB,GAAE,CAAC,SAAS,CAAC,IAAI,CAAC;YACpC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,+BAA+B;YAC/B,YAAY,EAAE,cAAc;YAC5B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,oBAAoB;YAC1B,mBAAmB,EAAE,mBAAmB;YACxC,OAAO,EAAE,OAAO;SACK,CAAC,CAAA;IAC9B,CAAC,CAAA;AACL,CAAC;AA5CD,gCA4CC","file":"ManyToMany.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { RelationMetadataArgs } from \"../../metadata-args/RelationMetadataArgs\"\nimport { ObjectType } from \"../../common/ObjectType\"\nimport { RelationOptions } from \"../options/RelationOptions\"\nimport { ObjectUtils } from \"../../util/ObjectUtils\"\n\n/**\n * Many-to-many is a type of relationship when Entity1 can have multiple instances of Entity2, and Entity2 can have\n * multiple instances of Entity1. To achieve it, this type of relation creates a junction table, where it storage\n * entity1 and entity2 ids. This is owner side of the relationship.\n */\nexport function ManyToMany<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n options?: RelationOptions,\n): PropertyDecorator\n\n/**\n * Many-to-many is a type of relationship when Entity1 can have multiple instances of Entity2, and Entity2 can have\n * multiple instances of Entity1. To achieve it, this type of relation creates a junction table, where it storage\n * entity1 and entity2 ids. This is owner side of the relationship.\n */\nexport function ManyToMany<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSide?: string | ((object: T) => any),\n options?: RelationOptions,\n): PropertyDecorator\n\n/**\n * Many-to-many is a type of relationship when Entity1 can have multiple instances of Entity2, and Entity2 can have\n * multiple instances of Entity1. To achieve it, this type of relation creates a junction table, where it storage\n * entity1 and entity2 ids. This is owner side of the relationship.\n */\nexport function ManyToMany<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSideOrOptions?: string | ((object: T) => any) | RelationOptions,\n options?: RelationOptions,\n): PropertyDecorator {\n // normalize parameters\n let inverseSideProperty: string | ((object: T) => any)\n if (ObjectUtils.isObject(inverseSideOrOptions)) {\n options = <RelationOptions>inverseSideOrOptions\n } else {\n inverseSideProperty = inverseSideOrOptions as any\n }\n\n return function (object: Object, propertyName: string) {\n if (!options) options = {} as RelationOptions\n\n // now try to determine it its lazy relation\n let isLazy = options.lazy === true\n if (!isLazy && Reflect && (Reflect as any).getMetadata) {\n // automatic determination\n const reflectedType = (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n if (\n reflectedType &&\n typeof reflectedType.name === \"string\" &&\n reflectedType.name.toLowerCase() === \"promise\"\n )\n isLazy = true\n }\n\n getMetadataArgsStorage().relations.push({\n target: object.constructor,\n propertyName: propertyName,\n // propertyType: reflectedType,\n relationType: \"many-to-many\",\n isLazy: isLazy,\n type: typeFunctionOrTarget,\n inverseSideProperty: inverseSideProperty,\n options: options,\n } as RelationMetadataArgs)\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../../src/decorator/relations/ManyToMany.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AAItD,wDAAoD;AAuBpD;;;;GAIG;AACH,SAAgB,UAAU,CACtB,oBAA8D,EAC9D,oBAAsE,EACtE,OAAyB;IAEzB,uBAAuB;IACvB,IAAI,mBAAkD,CAAA;IACtD,IAAI,yBAAW,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC7C,OAAO,GAAoB,oBAAoB,CAAA;IACnD,CAAC;SAAM,CAAC;QACJ,mBAAmB,GAAG,oBAA2B,CAAA;IACrD,CAAC;IAED,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,EAAqB,CAAA;QAE7C,4CAA4C;QAC5C,IAAI,MAAM,GAAG,OAAO,CAAC,IAAI,KAAK,IAAI,CAAA;QAClC,IAAI,CAAC,MAAM,IAAI,OAAO,IAAK,OAAe,CAAC,WAAW,EAAE,CAAC;YACrD,0BAA0B;YAC1B,MAAM,aAAa,GAAI,OAAe,CAAC,WAAW,CAC9C,aAAa,EACb,MAAM,EACN,YAAY,CACf,CAAA;YACD,IACI,aAAa;gBACb,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ;gBACtC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS;gBAE9C,MAAM,GAAG,IAAI,CAAA;QACrB,CAAC;QAED,IAAA,gCAAsB,GAAE,CAAC,SAAS,CAAC,IAAI,CAAC;YACpC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,+BAA+B;YAC/B,YAAY,EAAE,cAAc;YAC5B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,oBAAoB;YAC1B,mBAAmB,EAAE,mBAAmB;YACxC,OAAO,EAAE,OAAO;SACK,CAAC,CAAA;IAC9B,CAAC,CAAA;AACL,CAAC;AA5CD,gCA4CC","file":"ManyToMany.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { RelationMetadataArgs } from \"../../metadata-args/RelationMetadataArgs\"\nimport { ObjectType } from \"../../common/ObjectType\"\nimport { RelationOptions } from \"../options/RelationOptions\"\nimport { ObjectUtils } from \"../../util/ObjectUtils\"\n\n/**\n * Many-to-many is a type of relationship when Entity1 can have multiple instances of Entity2, and Entity2 can have\n * multiple instances of Entity1. To achieve it, this type of relation creates a junction table, where it storage\n * entity1 and entity2 ids. This is owner side of the relationship.\n */\nexport function ManyToMany<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n options?: RelationOptions,\n): PropertyDecorator\n\n/**\n * Many-to-many is a type of relationship when Entity1 can have multiple instances of Entity2, and Entity2 can have\n * multiple instances of Entity1. To achieve it, this type of relation creates a junction table, where it storage\n * entity1 and entity2 ids. This is owner side of the relationship.\n */\nexport function ManyToMany<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSide?: string | ((object: T) => any),\n options?: RelationOptions,\n): PropertyDecorator\n\n/**\n * Many-to-many is a type of relationship when Entity1 can have multiple instances of Entity2, and Entity2 can have\n * multiple instances of Entity1. To achieve it, this type of relation creates a junction table, where it storage\n * entity1 and entity2 ids. This is owner side of the relationship.\n */\nexport function ManyToMany<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSideOrOptions?: string | ((object: T) => any) | RelationOptions,\n options?: RelationOptions,\n): PropertyDecorator {\n // normalize parameters\n let inverseSideProperty: string | ((object: T) => any)\n if (ObjectUtils.isObject(inverseSideOrOptions)) {\n options = <RelationOptions>inverseSideOrOptions\n } else {\n inverseSideProperty = inverseSideOrOptions as any\n }\n\n return function (object: Object, propertyName: string) {\n if (!options) options = {} as RelationOptions\n\n // now try to determine it its lazy relation\n let isLazy = options.lazy === true\n if (!isLazy && Reflect && (Reflect as any).getMetadata) {\n // automatic determination\n const reflectedType = (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n if (\n reflectedType &&\n typeof reflectedType.name === \"string\" &&\n reflectedType.name.toLowerCase() === \"promise\"\n )\n isLazy = true\n }\n\n getMetadataArgsStorage().relations.push({\n target: object.constructor,\n propertyName: propertyName,\n // propertyType: reflectedType,\n relationType: \"many-to-many\",\n isLazy: isLazy,\n type: typeFunctionOrTarget,\n inverseSideProperty: inverseSideProperty,\n options: options,\n } as RelationMetadataArgs)\n }\n}\n"],"sourceRoot":"../.."}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/decorator/relations/ManyToOne.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AAItD,wDAAoD;AAuBpD;;;;GAIG;AACH,SAAgB,SAAS,CACrB,oBAA8D,EAC9D,oBAAsE,EACtE,OAAyB;IAEzB,wBAAwB;IACxB,IAAI,mBAAkD,CAAA;IACtD,IAAI,yBAAW,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE;QAC5C,OAAO,GAAoB,oBAAoB,CAAA;KAClD;SAAM;QACH,mBAAmB,GAAG,oBAA2B,CAAA;KACpD;IAED,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,EAAqB,CAAA;QAE7C,iDAAiD;QACjD,IAAI,MAAM,GAAG,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAA;QAC7C,IAAI,CAAC,MAAM,IAAI,OAAO,IAAK,OAAe,CAAC,WAAW,EAAE;YACpD,0BAA0B;YAC1B,MAAM,aAAa,GAAI,OAAe,CAAC,WAAW,CAC9C,aAAa,EACb,MAAM,EACN,YAAY,CACf,CAAA;YACD,IACI,aAAa;gBACb,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ;gBACtC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS;gBAE9C,MAAM,GAAG,IAAI,CAAA;SACpB;QAED,IAAA,gCAAsB,GAAE,CAAC,SAAS,CAAC,IAAI,CAAC;YACpC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,+BAA+B;YAC/B,YAAY,EAAE,aAAa;YAC3B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,oBAAoB;YAC1B,mBAAmB,EAAE,mBAAmB;YACxC,OAAO,EAAE,OAAO;SACK,CAAC,CAAA;IAC9B,CAAC,CAAA;AACL,CAAC;AA5CD,8BA4CC","file":"ManyToOne.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { RelationMetadataArgs } from \"../../metadata-args/RelationMetadataArgs\"\nimport { ObjectType } from \"../../common/ObjectType\"\nimport { RelationOptions } from \"../options/RelationOptions\"\nimport { ObjectUtils } from \"../../util/ObjectUtils\"\n\n/**\n * A many-to-one relation allows creating the type of relation where Entity1 can have a single instance of Entity2, but\n * Entity2 can have multiple instances of Entity1. Entity1 is the owner of the relationship, and stores the id of\n * Entity2 on its side of the relation.\n */\nexport function ManyToOne<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n options?: RelationOptions,\n): PropertyDecorator\n\n/**\n * A many-to-one relation allows creating the type of relation where Entity1 can have a single instance of Entity2, but\n * Entity2 can have multiple instances of Entity1. Entity1 is the owner of the relationship, and stores the id of\n * Entity2 on its side of the relation.\n */\nexport function ManyToOne<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSide?: string | ((object: T) => any),\n options?: RelationOptions,\n): PropertyDecorator\n\n/**\n * A many-to-one relation allows creating the type of relation where Entity1 can have a single instance of Entity2, but\n * Entity2 can have multiple instances of Entity1. Entity1 is the owner of the relationship, and stores the id of\n * Entity2 on its side of the relation.\n */\nexport function ManyToOne<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSideOrOptions?: string | ((object: T) => any) | RelationOptions,\n options?: RelationOptions,\n): PropertyDecorator {\n // Normalize parameters.\n let inverseSideProperty: string | ((object: T) => any)\n if (ObjectUtils.isObject(inverseSideOrOptions)) {\n options = <RelationOptions>inverseSideOrOptions\n } else {\n inverseSideProperty = inverseSideOrOptions as any\n }\n\n return function (object: Object, propertyName: string) {\n if (!options) options = {} as RelationOptions\n\n // Now try to determine if it is a lazy relation.\n let isLazy = options && options.lazy === true\n if (!isLazy && Reflect && (Reflect as any).getMetadata) {\n // automatic determination\n const reflectedType = (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n if (\n reflectedType &&\n typeof reflectedType.name === \"string\" &&\n reflectedType.name.toLowerCase() === \"promise\"\n )\n isLazy = true\n }\n\n getMetadataArgsStorage().relations.push({\n target: object.constructor,\n propertyName: propertyName,\n // propertyType: reflectedType,\n relationType: \"many-to-one\",\n isLazy: isLazy,\n type: typeFunctionOrTarget,\n inverseSideProperty: inverseSideProperty,\n options: options,\n } as RelationMetadataArgs)\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../../src/decorator/relations/ManyToOne.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AAItD,wDAAoD;AAuBpD;;;;GAIG;AACH,SAAgB,SAAS,CACrB,oBAA8D,EAC9D,oBAAsE,EACtE,OAAyB;IAEzB,wBAAwB;IACxB,IAAI,mBAAkD,CAAA;IACtD,IAAI,yBAAW,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC7C,OAAO,GAAoB,oBAAoB,CAAA;IACnD,CAAC;SAAM,CAAC;QACJ,mBAAmB,GAAG,oBAA2B,CAAA;IACrD,CAAC;IAED,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,EAAqB,CAAA;QAE7C,iDAAiD;QACjD,IAAI,MAAM,GAAG,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAA;QAC7C,IAAI,CAAC,MAAM,IAAI,OAAO,IAAK,OAAe,CAAC,WAAW,EAAE,CAAC;YACrD,0BAA0B;YAC1B,MAAM,aAAa,GAAI,OAAe,CAAC,WAAW,CAC9C,aAAa,EACb,MAAM,EACN,YAAY,CACf,CAAA;YACD,IACI,aAAa;gBACb,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ;gBACtC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS;gBAE9C,MAAM,GAAG,IAAI,CAAA;QACrB,CAAC;QAED,IAAA,gCAAsB,GAAE,CAAC,SAAS,CAAC,IAAI,CAAC;YACpC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,+BAA+B;YAC/B,YAAY,EAAE,aAAa;YAC3B,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,oBAAoB;YAC1B,mBAAmB,EAAE,mBAAmB;YACxC,OAAO,EAAE,OAAO;SACK,CAAC,CAAA;IAC9B,CAAC,CAAA;AACL,CAAC;AA5CD,8BA4CC","file":"ManyToOne.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { RelationMetadataArgs } from \"../../metadata-args/RelationMetadataArgs\"\nimport { ObjectType } from \"../../common/ObjectType\"\nimport { RelationOptions } from \"../options/RelationOptions\"\nimport { ObjectUtils } from \"../../util/ObjectUtils\"\n\n/**\n * A many-to-one relation allows creating the type of relation where Entity1 can have a single instance of Entity2, but\n * Entity2 can have multiple instances of Entity1. Entity1 is the owner of the relationship, and stores the id of\n * Entity2 on its side of the relation.\n */\nexport function ManyToOne<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n options?: RelationOptions,\n): PropertyDecorator\n\n/**\n * A many-to-one relation allows creating the type of relation where Entity1 can have a single instance of Entity2, but\n * Entity2 can have multiple instances of Entity1. Entity1 is the owner of the relationship, and stores the id of\n * Entity2 on its side of the relation.\n */\nexport function ManyToOne<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSide?: string | ((object: T) => any),\n options?: RelationOptions,\n): PropertyDecorator\n\n/**\n * A many-to-one relation allows creating the type of relation where Entity1 can have a single instance of Entity2, but\n * Entity2 can have multiple instances of Entity1. Entity1 is the owner of the relationship, and stores the id of\n * Entity2 on its side of the relation.\n */\nexport function ManyToOne<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSideOrOptions?: string | ((object: T) => any) | RelationOptions,\n options?: RelationOptions,\n): PropertyDecorator {\n // Normalize parameters.\n let inverseSideProperty: string | ((object: T) => any)\n if (ObjectUtils.isObject(inverseSideOrOptions)) {\n options = <RelationOptions>inverseSideOrOptions\n } else {\n inverseSideProperty = inverseSideOrOptions as any\n }\n\n return function (object: Object, propertyName: string) {\n if (!options) options = {} as RelationOptions\n\n // Now try to determine if it is a lazy relation.\n let isLazy = options && options.lazy === true\n if (!isLazy && Reflect && (Reflect as any).getMetadata) {\n // automatic determination\n const reflectedType = (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n if (\n reflectedType &&\n typeof reflectedType.name === \"string\" &&\n reflectedType.name.toLowerCase() === \"promise\"\n )\n isLazy = true\n }\n\n getMetadataArgsStorage().relations.push({\n target: object.constructor,\n propertyName: propertyName,\n // propertyType: reflectedType,\n relationType: \"many-to-one\",\n isLazy: isLazy,\n type: typeFunctionOrTarget,\n inverseSideProperty: inverseSideProperty,\n options: options,\n } as RelationMetadataArgs)\n }\n}\n"],"sourceRoot":"../.."}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/decorator/relations/OneToMany.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AAKtD;;;;GAIG;AACH,SAAgB,SAAS,CACrB,oBAA8D,EAC9D,WAA0C,EAC1C,OAAyB;IAEzB,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,EAAqB,CAAA;QAE7C,iDAAiD;QACjD,IAAI,MAAM,GAAG,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAA;QAC7C,IAAI,CAAC,MAAM,IAAI,OAAO,IAAK,OAAe,CAAC,WAAW,EAAE;YACpD,0BAA0B;YAC1B,MAAM,aAAa,GAAI,OAAe,CAAC,WAAW,CAC9C,aAAa,EACb,MAAM,EACN,YAAY,CACf,CAAA;YACD,IACI,aAAa;gBACb,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ;gBACtC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS;gBAE9C,MAAM,GAAG,IAAI,CAAA;SACpB;QAED,IAAA,gCAAsB,GAAE,CAAC,SAAS,CAAC,IAAI,CAAC;YACpC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,+BAA+B;YAC/B,MAAM,EAAE,MAAM;YACd,YAAY,EAAE,aAAa;YAC3B,IAAI,EAAE,oBAAoB;YAC1B,mBAAmB,EAAE,WAAW;YAChC,OAAO,EAAE,OAAO;SACK,CAAC,CAAA;IAC9B,CAAC,CAAA;AACL,CAAC;AApCD,8BAoCC","file":"OneToMany.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { RelationMetadataArgs } from \"../../metadata-args/RelationMetadataArgs\"\nimport { ObjectType } from \"../../common/ObjectType\"\nimport { RelationOptions } from \"../options/RelationOptions\"\n\n/**\n * A one-to-many relation allows creating the type of relation where Entity1 can have multiple instances of Entity2,\n * but Entity2 has only one Entity1. Entity2 is the owner of the relationship, and stores the id of Entity1 on its\n * side of the relation.\n */\nexport function OneToMany<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSide: string | ((object: T) => any),\n options?: RelationOptions,\n): PropertyDecorator {\n return function (object: Object, propertyName: string) {\n if (!options) options = {} as RelationOptions\n\n // Now try to determine if it is a lazy relation.\n let isLazy = options && options.lazy === true\n if (!isLazy && Reflect && (Reflect as any).getMetadata) {\n // automatic determination\n const reflectedType = (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n if (\n reflectedType &&\n typeof reflectedType.name === \"string\" &&\n reflectedType.name.toLowerCase() === \"promise\"\n )\n isLazy = true\n }\n\n getMetadataArgsStorage().relations.push({\n target: object.constructor,\n propertyName: propertyName,\n // propertyType: reflectedType,\n isLazy: isLazy,\n relationType: \"one-to-many\",\n type: typeFunctionOrTarget,\n inverseSideProperty: inverseSide,\n options: options,\n } as RelationMetadataArgs)\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../../src/decorator/relations/OneToMany.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AAKtD;;;;GAIG;AACH,SAAgB,SAAS,CACrB,oBAA8D,EAC9D,WAA0C,EAC1C,OAAyB;IAEzB,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,EAAqB,CAAA;QAE7C,iDAAiD;QACjD,IAAI,MAAM,GAAG,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAA;QAC7C,IAAI,CAAC,MAAM,IAAI,OAAO,IAAK,OAAe,CAAC,WAAW,EAAE,CAAC;YACrD,0BAA0B;YAC1B,MAAM,aAAa,GAAI,OAAe,CAAC,WAAW,CAC9C,aAAa,EACb,MAAM,EACN,YAAY,CACf,CAAA;YACD,IACI,aAAa;gBACb,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ;gBACtC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS;gBAE9C,MAAM,GAAG,IAAI,CAAA;QACrB,CAAC;QAED,IAAA,gCAAsB,GAAE,CAAC,SAAS,CAAC,IAAI,CAAC;YACpC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,+BAA+B;YAC/B,MAAM,EAAE,MAAM;YACd,YAAY,EAAE,aAAa;YAC3B,IAAI,EAAE,oBAAoB;YAC1B,mBAAmB,EAAE,WAAW;YAChC,OAAO,EAAE,OAAO;SACK,CAAC,CAAA;IAC9B,CAAC,CAAA;AACL,CAAC;AApCD,8BAoCC","file":"OneToMany.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { RelationMetadataArgs } from \"../../metadata-args/RelationMetadataArgs\"\nimport { ObjectType } from \"../../common/ObjectType\"\nimport { RelationOptions } from \"../options/RelationOptions\"\n\n/**\n * A one-to-many relation allows creating the type of relation where Entity1 can have multiple instances of Entity2,\n * but Entity2 has only one Entity1. Entity2 is the owner of the relationship, and stores the id of Entity1 on its\n * side of the relation.\n */\nexport function OneToMany<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSide: string | ((object: T) => any),\n options?: RelationOptions,\n): PropertyDecorator {\n return function (object: Object, propertyName: string) {\n if (!options) options = {} as RelationOptions\n\n // Now try to determine if it is a lazy relation.\n let isLazy = options && options.lazy === true\n if (!isLazy && Reflect && (Reflect as any).getMetadata) {\n // automatic determination\n const reflectedType = (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n if (\n reflectedType &&\n typeof reflectedType.name === \"string\" &&\n reflectedType.name.toLowerCase() === \"promise\"\n )\n isLazy = true\n }\n\n getMetadataArgsStorage().relations.push({\n target: object.constructor,\n propertyName: propertyName,\n // propertyType: reflectedType,\n isLazy: isLazy,\n relationType: \"one-to-many\",\n type: typeFunctionOrTarget,\n inverseSideProperty: inverseSide,\n options: options,\n } as RelationMetadataArgs)\n }\n}\n"],"sourceRoot":"../.."}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/decorator/relations/OneToOne.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AAItD,wDAAoD;AAqBpD;;;GAGG;AACH,SAAgB,QAAQ,CACpB,oBAA8D,EAC9D,oBAAsE,EACtE,OAAyB;IAEzB,uBAAuB;IACvB,IAAI,mBAAkD,CAAA;IACtD,IAAI,yBAAW,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE;QAC5C,OAAO,GAAoB,oBAAoB,CAAA;KAClD;SAAM;QACH,mBAAmB,GAAG,oBAA2B,CAAA;KACpD;IAED,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,EAAqB,CAAA;QAE7C,4CAA4C;QAC5C,IAAI,MAAM,GAAG,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;QAC5D,IAAI,CAAC,MAAM,IAAI,OAAO,IAAK,OAAe,CAAC,WAAW,EAAE;YACpD,0BAA0B;YAC1B,MAAM,aAAa,GAAI,OAAe,CAAC,WAAW,CAC9C,aAAa,EACb,MAAM,EACN,YAAY,CACf,CAAA;YACD,IACI,aAAa;gBACb,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ;gBACtC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS;gBAE9C,MAAM,GAAG,IAAI,CAAA;SACpB;QAED,IAAA,gCAAsB,GAAE,CAAC,SAAS,CAAC,IAAI,CAAC;YACpC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,+BAA+B;YAC/B,MAAM,EAAE,MAAM;YACd,YAAY,EAAE,YAAY;YAC1B,IAAI,EAAE,oBAAoB;YAC1B,mBAAmB,EAAE,mBAAmB;YACxC,OAAO,EAAE,OAAO;SACK,CAAC,CAAA;IAC9B,CAAC,CAAA;AACL,CAAC;AA5CD,4BA4CC","file":"OneToOne.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { RelationMetadataArgs } from \"../../metadata-args/RelationMetadataArgs\"\nimport { ObjectType } from \"../../common/ObjectType\"\nimport { RelationOptions } from \"../options/RelationOptions\"\nimport { ObjectUtils } from \"../../util/ObjectUtils\"\n\n/**\n * One-to-one relation allows to create direct relation between two entities. Entity1 have only one Entity2.\n * Entity1 is an owner of the relationship, and storages Entity1 id on its own side.\n */\nexport function OneToOne<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n options?: RelationOptions,\n): PropertyDecorator\n\n/**\n * One-to-one relation allows to create direct relation between two entities. Entity1 have only one Entity2.\n * Entity1 is an owner of the relationship, and storages Entity1 id on its own side.\n */\nexport function OneToOne<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSide?: string | ((object: T) => any),\n options?: RelationOptions,\n): PropertyDecorator\n\n/**\n * One-to-one relation allows to create direct relation between two entities. Entity1 have only one Entity2.\n * Entity1 is an owner of the relationship, and storages Entity1 id on its own side.\n */\nexport function OneToOne<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSideOrOptions?: string | ((object: T) => any) | RelationOptions,\n options?: RelationOptions,\n): PropertyDecorator {\n // normalize parameters\n let inverseSideProperty: string | ((object: T) => any)\n if (ObjectUtils.isObject(inverseSideOrOptions)) {\n options = <RelationOptions>inverseSideOrOptions\n } else {\n inverseSideProperty = inverseSideOrOptions as any\n }\n\n return function (object: Object, propertyName: string) {\n if (!options) options = {} as RelationOptions\n\n // now try to determine it its lazy relation\n let isLazy = options && options.lazy === true ? true : false\n if (!isLazy && Reflect && (Reflect as any).getMetadata) {\n // automatic determination\n const reflectedType = (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n if (\n reflectedType &&\n typeof reflectedType.name === \"string\" &&\n reflectedType.name.toLowerCase() === \"promise\"\n )\n isLazy = true\n }\n\n getMetadataArgsStorage().relations.push({\n target: object.constructor,\n propertyName: propertyName,\n // propertyType: reflectedType,\n isLazy: isLazy,\n relationType: \"one-to-one\",\n type: typeFunctionOrTarget,\n inverseSideProperty: inverseSideProperty,\n options: options,\n } as RelationMetadataArgs)\n }\n}\n"],"sourceRoot":"../.."}
1
+ {"version":3,"sources":["../../src/decorator/relations/OneToOne.ts"],"names":[],"mappings":";;;AAAA,2CAAsD;AAItD,wDAAoD;AAqBpD;;;GAGG;AACH,SAAgB,QAAQ,CACpB,oBAA8D,EAC9D,oBAAsE,EACtE,OAAyB;IAEzB,uBAAuB;IACvB,IAAI,mBAAkD,CAAA;IACtD,IAAI,yBAAW,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;QAC7C,OAAO,GAAoB,oBAAoB,CAAA;IACnD,CAAC;SAAM,CAAC;QACJ,mBAAmB,GAAG,oBAA2B,CAAA;IACrD,CAAC;IAED,OAAO,UAAU,MAAc,EAAE,YAAoB;QACjD,IAAI,CAAC,OAAO;YAAE,OAAO,GAAG,EAAqB,CAAA;QAE7C,4CAA4C;QAC5C,IAAI,MAAM,GAAG,OAAO,IAAI,OAAO,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;QAC5D,IAAI,CAAC,MAAM,IAAI,OAAO,IAAK,OAAe,CAAC,WAAW,EAAE,CAAC;YACrD,0BAA0B;YAC1B,MAAM,aAAa,GAAI,OAAe,CAAC,WAAW,CAC9C,aAAa,EACb,MAAM,EACN,YAAY,CACf,CAAA;YACD,IACI,aAAa;gBACb,OAAO,aAAa,CAAC,IAAI,KAAK,QAAQ;gBACtC,aAAa,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,SAAS;gBAE9C,MAAM,GAAG,IAAI,CAAA;QACrB,CAAC;QAED,IAAA,gCAAsB,GAAE,CAAC,SAAS,CAAC,IAAI,CAAC;YACpC,MAAM,EAAE,MAAM,CAAC,WAAW;YAC1B,YAAY,EAAE,YAAY;YAC1B,+BAA+B;YAC/B,MAAM,EAAE,MAAM;YACd,YAAY,EAAE,YAAY;YAC1B,IAAI,EAAE,oBAAoB;YAC1B,mBAAmB,EAAE,mBAAmB;YACxC,OAAO,EAAE,OAAO;SACK,CAAC,CAAA;IAC9B,CAAC,CAAA;AACL,CAAC;AA5CD,4BA4CC","file":"OneToOne.js","sourcesContent":["import { getMetadataArgsStorage } from \"../../globals\"\nimport { RelationMetadataArgs } from \"../../metadata-args/RelationMetadataArgs\"\nimport { ObjectType } from \"../../common/ObjectType\"\nimport { RelationOptions } from \"../options/RelationOptions\"\nimport { ObjectUtils } from \"../../util/ObjectUtils\"\n\n/**\n * One-to-one relation allows to create direct relation between two entities. Entity1 have only one Entity2.\n * Entity1 is an owner of the relationship, and storages Entity1 id on its own side.\n */\nexport function OneToOne<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n options?: RelationOptions,\n): PropertyDecorator\n\n/**\n * One-to-one relation allows to create direct relation between two entities. Entity1 have only one Entity2.\n * Entity1 is an owner of the relationship, and storages Entity1 id on its own side.\n */\nexport function OneToOne<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSide?: string | ((object: T) => any),\n options?: RelationOptions,\n): PropertyDecorator\n\n/**\n * One-to-one relation allows to create direct relation between two entities. Entity1 have only one Entity2.\n * Entity1 is an owner of the relationship, and storages Entity1 id on its own side.\n */\nexport function OneToOne<T>(\n typeFunctionOrTarget: string | ((type?: any) => ObjectType<T>),\n inverseSideOrOptions?: string | ((object: T) => any) | RelationOptions,\n options?: RelationOptions,\n): PropertyDecorator {\n // normalize parameters\n let inverseSideProperty: string | ((object: T) => any)\n if (ObjectUtils.isObject(inverseSideOrOptions)) {\n options = <RelationOptions>inverseSideOrOptions\n } else {\n inverseSideProperty = inverseSideOrOptions as any\n }\n\n return function (object: Object, propertyName: string) {\n if (!options) options = {} as RelationOptions\n\n // now try to determine it its lazy relation\n let isLazy = options && options.lazy === true ? true : false\n if (!isLazy && Reflect && (Reflect as any).getMetadata) {\n // automatic determination\n const reflectedType = (Reflect as any).getMetadata(\n \"design:type\",\n object,\n propertyName,\n )\n if (\n reflectedType &&\n typeof reflectedType.name === \"string\" &&\n reflectedType.name.toLowerCase() === \"promise\"\n )\n isLazy = true\n }\n\n getMetadataArgsStorage().relations.push({\n target: object.constructor,\n propertyName: propertyName,\n // propertyType: reflectedType,\n isLazy: isLazy,\n relationType: \"one-to-one\",\n type: typeFunctionOrTarget,\n inverseSideProperty: inverseSideProperty,\n options: options,\n } as RelationMetadataArgs)\n }\n}\n"],"sourceRoot":"../.."}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/driver/DriverFactory.ts"],"names":[],"mappings":";;;AAAA,oEAAgE;AAChE,mEAA+D;AAC/D,uDAAmD;AACnD,iEAA6D;AAC7D,wDAAoD;AACpD,wDAAoD;AACpD,2DAAuD;AACvD,wEAAoE;AACpE,0EAAsE;AACtE,qDAAiD;AACjD,qDAAiD;AACjD,8DAA0D;AAC1D,kDAA8C;AAC9C,wEAAoE;AACpE,iFAA6E;AAG7E,+CAA2C;AAC3C,8EAA0E;AAC1E,iEAA6D;AAC7D,2DAAuD;AAEvD;;GAEG;AACH,MAAa,aAAa;IACtB;;OAEG;IACH,MAAM,CAAC,UAAsB;QACzB,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC,OAAO,CAAA;QACnC,QAAQ,IAAI,EAAE;YACV,KAAK,OAAO;gBACR,OAAO,IAAI,yBAAW,CAAC,UAAU,CAAC,CAAA;YACtC,KAAK,UAAU;gBACX,OAAO,IAAI,+BAAc,CAAC,UAAU,CAAC,CAAA;YACzC,KAAK,aAAa;gBACd,OAAO,IAAI,iCAAe,CAAC,UAAU,CAAC,CAAA;YAC1C,KAAK,KAAK;gBACN,OAAO,IAAI,qBAAS,CAAC,UAAU,CAAC,CAAA;YACpC,KAAK,SAAS;gBACV,OAAO,IAAI,yBAAW,CAAC,UAAU,CAAC,CAAA;YACtC,KAAK,QAAQ;gBACT,OAAO,IAAI,2BAAY,CAAC,UAAU,CAAC,CAAA;YACvC,KAAK,gBAAgB;gBACjB,OAAO,IAAI,yCAAmB,CAAC,UAAU,CAAC,CAAA;YAC9C,KAAK,SAAS;gBACV,OAAO,IAAI,6BAAa,CAAC,UAAU,CAAC,CAAA;YACxC,KAAK,cAAc;gBACf,OAAO,IAAI,uCAAkB,CAAC,UAAU,CAAC,CAAA;YAC7C,KAAK,cAAc;gBACf,OAAO,IAAI,qCAAiB,CAAC,UAAU,CAAC,CAAA;YAC5C,KAAK,OAAO;gBACR,OAAO,IAAI,yBAAW,CAAC,UAAU,CAAC,CAAA;YACtC,KAAK,QAAQ;gBACT,OAAO,IAAI,2BAAY,CAAC,UAAU,CAAC,CAAA;YACvC,KAAK,OAAO;gBACR,OAAO,IAAI,iCAAe,CAAC,UAAU,CAAC,CAAA;YAC1C,KAAK,SAAS;gBACV,OAAO,IAAI,yBAAW,CAAC,UAAU,CAAC,CAAA;YACtC,KAAK,MAAM;gBACP,OAAO,IAAI,uBAAU,CAAC,UAAU,CAAC,CAAA;YACrC,KAAK,cAAc;gBACf,OAAO,IAAI,qCAAiB,CAAC,UAAU,CAAC,CAAA;YAC5C,KAAK,iBAAiB;gBAClB,OAAO,IAAI,2CAAoB,CAAC,UAAU,CAAC,CAAA;YAC/C,KAAK,WAAW;gBACZ,OAAO,IAAI,iCAAe,CAAC,UAAU,CAAC,CAAA;YAC1C,KAAK,SAAS;gBACV,OAAO,IAAI,6BAAa,CAAC,UAAU,CAAC,CAAA;YACxC;gBACI,MAAM,IAAI,uCAAkB,CAAC,IAAI,EAAE;oBAC/B,cAAc;oBACd,iBAAiB;oBACjB,gBAAgB;oBAChB,WAAW;oBACX,aAAa;oBACb,SAAS;oBACT,MAAM;oBACN,SAAS;oBACT,SAAS;oBACT,OAAO;oBACP,OAAO;oBACP,cAAc;oBACd,QAAQ;oBACR,UAAU;oBACV,cAAc;oBACd,KAAK;oBACL,QAAQ;oBACR,OAAO;oBACP,SAAS;iBACZ,CAAC,CAAA;SACT;IACL,CAAC;CACJ;AArED,sCAqEC","file":"DriverFactory.js","sourcesContent":["import { MissingDriverError } from \"../error/MissingDriverError\"\nimport { CockroachDriver } from \"./cockroachdb/CockroachDriver\"\nimport { MongoDriver } from \"./mongodb/MongoDriver\"\nimport { SqlServerDriver } from \"./sqlserver/SqlServerDriver\"\nimport { OracleDriver } from \"./oracle/OracleDriver\"\nimport { SqliteDriver } from \"./sqlite/SqliteDriver\"\nimport { CordovaDriver } from \"./cordova/CordovaDriver\"\nimport { ReactNativeDriver } from \"./react-native/ReactNativeDriver\"\nimport { NativescriptDriver } from \"./nativescript/NativescriptDriver\"\nimport { SqljsDriver } from \"./sqljs/SqljsDriver\"\nimport { MysqlDriver } from \"./mysql/MysqlDriver\"\nimport { PostgresDriver } from \"./postgres/PostgresDriver\"\nimport { ExpoDriver } from \"./expo/ExpoDriver\"\nimport { AuroraMysqlDriver } from \"./aurora-mysql/AuroraMysqlDriver\"\nimport { AuroraPostgresDriver } from \"./aurora-postgres/AuroraPostgresDriver\"\nimport { Driver } from \"./Driver\"\nimport { DataSource } from \"../data-source/DataSource\"\nimport { SapDriver } from \"./sap/SapDriver\"\nimport { BetterSqlite3Driver } from \"./better-sqlite3/BetterSqlite3Driver\"\nimport { CapacitorDriver } from \"./capacitor/CapacitorDriver\"\nimport { SpannerDriver } from \"./spanner/SpannerDriver\"\n\n/**\n * Helps to create drivers.\n */\nexport class DriverFactory {\n /**\n * Creates a new driver depend on a given connection's driver type.\n */\n create(connection: DataSource): Driver {\n const { type } = connection.options\n switch (type) {\n case \"mysql\":\n return new MysqlDriver(connection)\n case \"postgres\":\n return new PostgresDriver(connection)\n case \"cockroachdb\":\n return new CockroachDriver(connection)\n case \"sap\":\n return new SapDriver(connection)\n case \"mariadb\":\n return new MysqlDriver(connection)\n case \"sqlite\":\n return new SqliteDriver(connection)\n case \"better-sqlite3\":\n return new BetterSqlite3Driver(connection)\n case \"cordova\":\n return new CordovaDriver(connection)\n case \"nativescript\":\n return new NativescriptDriver(connection)\n case \"react-native\":\n return new ReactNativeDriver(connection)\n case \"sqljs\":\n return new SqljsDriver(connection)\n case \"oracle\":\n return new OracleDriver(connection)\n case \"mssql\":\n return new SqlServerDriver(connection)\n case \"mongodb\":\n return new MongoDriver(connection)\n case \"expo\":\n return new ExpoDriver(connection)\n case \"aurora-mysql\":\n return new AuroraMysqlDriver(connection)\n case \"aurora-postgres\":\n return new AuroraPostgresDriver(connection)\n case \"capacitor\":\n return new CapacitorDriver(connection)\n case \"spanner\":\n return new SpannerDriver(connection)\n default:\n throw new MissingDriverError(type, [\n \"aurora-mysql\",\n \"aurora-postgres\",\n \"better-sqlite3\",\n \"capacitor\",\n \"cockroachdb\",\n \"cordova\",\n \"expo\",\n \"mariadb\",\n \"mongodb\",\n \"mssql\",\n \"mysql\",\n \"nativescript\",\n \"oracle\",\n \"postgres\",\n \"react-native\",\n \"sap\",\n \"sqlite\",\n \"sqljs\",\n \"spanner\",\n ])\n }\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/driver/DriverFactory.ts"],"names":[],"mappings":";;;AAAA,oEAAgE;AAChE,mEAA+D;AAC/D,uDAAmD;AACnD,iEAA6D;AAC7D,wDAAoD;AACpD,wDAAoD;AACpD,2DAAuD;AACvD,wEAAoE;AACpE,0EAAsE;AACtE,qDAAiD;AACjD,qDAAiD;AACjD,8DAA0D;AAC1D,kDAA8C;AAC9C,wEAAoE;AACpE,iFAA6E;AAG7E,+CAA2C;AAC3C,8EAA0E;AAC1E,iEAA6D;AAC7D,2DAAuD;AAEvD;;GAEG;AACH,MAAa,aAAa;IACtB;;OAEG;IACH,MAAM,CAAC,UAAsB;QACzB,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC,OAAO,CAAA;QACnC,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,OAAO;gBACR,OAAO,IAAI,yBAAW,CAAC,UAAU,CAAC,CAAA;YACtC,KAAK,UAAU;gBACX,OAAO,IAAI,+BAAc,CAAC,UAAU,CAAC,CAAA;YACzC,KAAK,aAAa;gBACd,OAAO,IAAI,iCAAe,CAAC,UAAU,CAAC,CAAA;YAC1C,KAAK,KAAK;gBACN,OAAO,IAAI,qBAAS,CAAC,UAAU,CAAC,CAAA;YACpC,KAAK,SAAS;gBACV,OAAO,IAAI,yBAAW,CAAC,UAAU,CAAC,CAAA;YACtC,KAAK,QAAQ;gBACT,OAAO,IAAI,2BAAY,CAAC,UAAU,CAAC,CAAA;YACvC,KAAK,gBAAgB;gBACjB,OAAO,IAAI,yCAAmB,CAAC,UAAU,CAAC,CAAA;YAC9C,KAAK,SAAS;gBACV,OAAO,IAAI,6BAAa,CAAC,UAAU,CAAC,CAAA;YACxC,KAAK,cAAc;gBACf,OAAO,IAAI,uCAAkB,CAAC,UAAU,CAAC,CAAA;YAC7C,KAAK,cAAc;gBACf,OAAO,IAAI,qCAAiB,CAAC,UAAU,CAAC,CAAA;YAC5C,KAAK,OAAO;gBACR,OAAO,IAAI,yBAAW,CAAC,UAAU,CAAC,CAAA;YACtC,KAAK,QAAQ;gBACT,OAAO,IAAI,2BAAY,CAAC,UAAU,CAAC,CAAA;YACvC,KAAK,OAAO;gBACR,OAAO,IAAI,iCAAe,CAAC,UAAU,CAAC,CAAA;YAC1C,KAAK,SAAS;gBACV,OAAO,IAAI,yBAAW,CAAC,UAAU,CAAC,CAAA;YACtC,KAAK,MAAM;gBACP,OAAO,IAAI,uBAAU,CAAC,UAAU,CAAC,CAAA;YACrC,KAAK,cAAc;gBACf,OAAO,IAAI,qCAAiB,CAAC,UAAU,CAAC,CAAA;YAC5C,KAAK,iBAAiB;gBAClB,OAAO,IAAI,2CAAoB,CAAC,UAAU,CAAC,CAAA;YAC/C,KAAK,WAAW;gBACZ,OAAO,IAAI,iCAAe,CAAC,UAAU,CAAC,CAAA;YAC1C,KAAK,SAAS;gBACV,OAAO,IAAI,6BAAa,CAAC,UAAU,CAAC,CAAA;YACxC;gBACI,MAAM,IAAI,uCAAkB,CAAC,IAAI,EAAE;oBAC/B,cAAc;oBACd,iBAAiB;oBACjB,gBAAgB;oBAChB,WAAW;oBACX,aAAa;oBACb,SAAS;oBACT,MAAM;oBACN,SAAS;oBACT,SAAS;oBACT,OAAO;oBACP,OAAO;oBACP,cAAc;oBACd,QAAQ;oBACR,UAAU;oBACV,cAAc;oBACd,KAAK;oBACL,QAAQ;oBACR,OAAO;oBACP,SAAS;iBACZ,CAAC,CAAA;QACV,CAAC;IACL,CAAC;CACJ;AArED,sCAqEC","file":"DriverFactory.js","sourcesContent":["import { MissingDriverError } from \"../error/MissingDriverError\"\nimport { CockroachDriver } from \"./cockroachdb/CockroachDriver\"\nimport { MongoDriver } from \"./mongodb/MongoDriver\"\nimport { SqlServerDriver } from \"./sqlserver/SqlServerDriver\"\nimport { OracleDriver } from \"./oracle/OracleDriver\"\nimport { SqliteDriver } from \"./sqlite/SqliteDriver\"\nimport { CordovaDriver } from \"./cordova/CordovaDriver\"\nimport { ReactNativeDriver } from \"./react-native/ReactNativeDriver\"\nimport { NativescriptDriver } from \"./nativescript/NativescriptDriver\"\nimport { SqljsDriver } from \"./sqljs/SqljsDriver\"\nimport { MysqlDriver } from \"./mysql/MysqlDriver\"\nimport { PostgresDriver } from \"./postgres/PostgresDriver\"\nimport { ExpoDriver } from \"./expo/ExpoDriver\"\nimport { AuroraMysqlDriver } from \"./aurora-mysql/AuroraMysqlDriver\"\nimport { AuroraPostgresDriver } from \"./aurora-postgres/AuroraPostgresDriver\"\nimport { Driver } from \"./Driver\"\nimport { DataSource } from \"../data-source/DataSource\"\nimport { SapDriver } from \"./sap/SapDriver\"\nimport { BetterSqlite3Driver } from \"./better-sqlite3/BetterSqlite3Driver\"\nimport { CapacitorDriver } from \"./capacitor/CapacitorDriver\"\nimport { SpannerDriver } from \"./spanner/SpannerDriver\"\n\n/**\n * Helps to create drivers.\n */\nexport class DriverFactory {\n /**\n * Creates a new driver depend on a given connection's driver type.\n */\n create(connection: DataSource): Driver {\n const { type } = connection.options\n switch (type) {\n case \"mysql\":\n return new MysqlDriver(connection)\n case \"postgres\":\n return new PostgresDriver(connection)\n case \"cockroachdb\":\n return new CockroachDriver(connection)\n case \"sap\":\n return new SapDriver(connection)\n case \"mariadb\":\n return new MysqlDriver(connection)\n case \"sqlite\":\n return new SqliteDriver(connection)\n case \"better-sqlite3\":\n return new BetterSqlite3Driver(connection)\n case \"cordova\":\n return new CordovaDriver(connection)\n case \"nativescript\":\n return new NativescriptDriver(connection)\n case \"react-native\":\n return new ReactNativeDriver(connection)\n case \"sqljs\":\n return new SqljsDriver(connection)\n case \"oracle\":\n return new OracleDriver(connection)\n case \"mssql\":\n return new SqlServerDriver(connection)\n case \"mongodb\":\n return new MongoDriver(connection)\n case \"expo\":\n return new ExpoDriver(connection)\n case \"aurora-mysql\":\n return new AuroraMysqlDriver(connection)\n case \"aurora-postgres\":\n return new AuroraPostgresDriver(connection)\n case \"capacitor\":\n return new CapacitorDriver(connection)\n case \"spanner\":\n return new SpannerDriver(connection)\n default:\n throw new MissingDriverError(type, [\n \"aurora-mysql\",\n \"aurora-postgres\",\n \"better-sqlite3\",\n \"capacitor\",\n \"cockroachdb\",\n \"cordova\",\n \"expo\",\n \"mariadb\",\n \"mongodb\",\n \"mssql\",\n \"mysql\",\n \"nativescript\",\n \"oracle\",\n \"postgres\",\n \"react-native\",\n \"sap\",\n \"sqlite\",\n \"sqljs\",\n \"spanner\",\n ])\n }\n }\n}\n"],"sourceRoot":".."}
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/driver/DriverUtils.ts"],"names":[],"mappings":"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","file":"DriverUtils.js","sourcesContent":["import { Driver } from \"./Driver\"\nimport { hash, shorten } from \"../util/StringUtils\"\nimport { VersionUtils } from \"../util/VersionUtils\"\n\n/**\n * Common driver utility functions.\n */\nexport class DriverUtils {\n // -------------------------------------------------------------------------\n // Public Static Methods\n // -------------------------------------------------------------------------\n\n /**\n * Returns true if given driver is SQLite-based driver.\n */\n static isSQLiteFamily(driver: Driver): boolean {\n return [\n \"sqlite\",\n \"cordova\",\n \"react-native\",\n \"nativescript\",\n \"sqljs\",\n \"expo\",\n \"better-sqlite3\",\n \"capacitor\",\n ].includes(driver.options.type)\n }\n\n /**\n * Returns true if given driver is MySQL-based driver.\n */\n static isMySQLFamily(driver: Driver): boolean {\n return [\"mysql\", \"mariadb\"].includes(driver.options.type)\n }\n\n static isReleaseVersionOrGreater(driver: Driver, version: string): boolean {\n return (\n driver.version != null &&\n VersionUtils.isGreaterOrEqual(driver.version, version)\n )\n }\n\n static isPostgresFamily(driver: Driver): boolean {\n return [\"postgres\", \"aurora-postgres\", \"cockroachdb\"].includes(\n driver.options.type,\n )\n }\n\n /**\n * Normalizes and builds a new driver options.\n * Extracts settings from connection url and sets to a new options object.\n */\n static buildDriverOptions(\n options: any,\n buildOptions?: { useSid: boolean },\n ): any {\n if (options.url) {\n const urlDriverOptions = this.parseConnectionUrl(options.url) as {\n [key: string]: any\n }\n\n if (\n buildOptions &&\n buildOptions.useSid &&\n urlDriverOptions.database\n ) {\n urlDriverOptions.sid = urlDriverOptions.database\n }\n\n for (const key of Object.keys(urlDriverOptions)) {\n if (typeof urlDriverOptions[key] === \"undefined\") {\n delete urlDriverOptions[key]\n }\n }\n\n return Object.assign({}, options, urlDriverOptions)\n }\n return Object.assign({}, options)\n }\n\n /**\n * buildDriverOptions for MongodDB only to support replica set\n */\n static buildMongoDBDriverOptions(\n options: any,\n buildOptions?: { useSid: boolean },\n ): any {\n if (options.url) {\n const urlDriverOptions = this.parseMongoDBConnectionUrl(\n options.url,\n ) as { [key: string]: any }\n\n if (\n buildOptions &&\n buildOptions.useSid &&\n urlDriverOptions.database\n ) {\n urlDriverOptions.sid = urlDriverOptions.database\n }\n\n for (const key of Object.keys(urlDriverOptions)) {\n if (typeof urlDriverOptions[key] === \"undefined\") {\n delete urlDriverOptions[key]\n }\n }\n\n return Object.assign({}, options, urlDriverOptions)\n }\n return Object.assign({}, options)\n }\n\n /**\n * Joins and shortens alias if needed.\n *\n * If the alias length is greater than the limit allowed by the current\n * driver, replaces it with a shortend string, if the shortend string\n * is still too long, it will then hash the alias.\n *\n * @param driver Current `Driver`.\n * @param buildOptions Optional settings.\n * @param alias Alias parts.\n *\n * @return An alias that is no longer than the divers max alias length.\n */\n static buildAlias(\n { maxAliasLength }: Driver,\n buildOptions: { shorten?: boolean; joiner?: string } | undefined,\n ...alias: string[]\n ): string {\n const joiner =\n buildOptions && buildOptions.joiner ? buildOptions.joiner : \"_\"\n\n let newAlias = alias.length === 1 ? alias[0] : alias.join(joiner)\n\n if (\n maxAliasLength &&\n maxAliasLength > 0 &&\n newAlias.length > maxAliasLength\n ) {\n if (buildOptions && buildOptions.shorten === true) {\n const shortenedAlias = shorten(newAlias)\n if (shortenedAlias.length < maxAliasLength) {\n return shortenedAlias\n }\n }\n\n return hash(newAlias, { length: maxAliasLength })\n }\n\n return newAlias\n }\n\n /**\n * @deprecated use `buildAlias` instead.\n */\n static buildColumnAlias(\n { maxAliasLength }: Driver,\n buildOptions: { shorten?: boolean; joiner?: string } | string,\n ...alias: string[]\n ) {\n if (typeof buildOptions === \"string\") {\n alias.unshift(buildOptions)\n buildOptions = { shorten: false, joiner: \"_\" }\n } else {\n buildOptions = Object.assign(\n { shorten: false, joiner: \"_\" },\n buildOptions,\n )\n }\n return this.buildAlias(\n { maxAliasLength } as Driver,\n buildOptions,\n ...alias,\n )\n }\n\n // -------------------------------------------------------------------------\n // Private Static Methods\n // -------------------------------------------------------------------------\n\n /**\n * Extracts connection data from the connection url.\n */\n private static parseConnectionUrl(url: string) {\n const type = url.split(\":\")[0]\n const firstSlashes = url.indexOf(\"//\")\n const preBase = url.substr(firstSlashes + 2)\n const secondSlash = preBase.indexOf(\"/\")\n const base =\n secondSlash !== -1 ? preBase.substr(0, secondSlash) : preBase\n let afterBase =\n secondSlash !== -1 ? preBase.substr(secondSlash + 1) : undefined\n // remove mongodb query params\n if (afterBase && afterBase.indexOf(\"?\") !== -1) {\n afterBase = afterBase.substr(0, afterBase.indexOf(\"?\"))\n }\n\n const lastAtSign = base.lastIndexOf(\"@\")\n const usernameAndPassword = base.substr(0, lastAtSign)\n const hostAndPort = base.substr(lastAtSign + 1)\n\n let username = usernameAndPassword\n let password = \"\"\n const firstColon = usernameAndPassword.indexOf(\":\")\n if (firstColon !== -1) {\n username = usernameAndPassword.substr(0, firstColon)\n password = usernameAndPassword.substr(firstColon + 1)\n }\n const [host, port] = hostAndPort.split(\":\")\n\n return {\n type: type,\n host: host,\n username: decodeURIComponent(username),\n password: decodeURIComponent(password),\n port: port ? parseInt(port) : undefined,\n database: afterBase || undefined,\n }\n }\n\n /**\n * Extracts connection data from the connection url for MongoDB to support replica set.\n */\n private static parseMongoDBConnectionUrl(url: string) {\n const type = url.split(\":\")[0]\n const firstSlashes = url.indexOf(\"//\")\n const preBase = url.substr(firstSlashes + 2)\n const secondSlash = preBase.indexOf(\"/\")\n const base =\n secondSlash !== -1 ? preBase.substr(0, secondSlash) : preBase\n let afterBase =\n secondSlash !== -1 ? preBase.substr(secondSlash + 1) : undefined\n let afterQuestionMark = \"\"\n let host = undefined\n let port = undefined\n let hostReplicaSet = undefined\n let replicaSet = undefined\n\n let optionsObject: any = {}\n\n if (afterBase && afterBase.indexOf(\"?\") !== -1) {\n // split params\n afterQuestionMark = afterBase.substr(\n afterBase.indexOf(\"?\") + 1,\n afterBase.length,\n )\n\n const optionsList = afterQuestionMark.split(\"&\")\n let optionKey: string\n let optionValue: string\n\n // create optionsObject for merge with connectionUrl object before return\n optionsList.forEach((optionItem) => {\n optionKey = optionItem.split(\"=\")[0]\n optionValue = optionItem.split(\"=\")[1]\n optionsObject[optionKey] = optionValue\n })\n\n // specific replicaSet value to set options about hostReplicaSet\n replicaSet = optionsObject[\"replicaSet\"]\n afterBase = afterBase.substr(0, afterBase.indexOf(\"?\"))\n }\n\n const lastAtSign = base.lastIndexOf(\"@\")\n const usernameAndPassword = base.substr(0, lastAtSign)\n const hostAndPort = base.substr(lastAtSign + 1)\n\n let username = usernameAndPassword\n let password = \"\"\n const firstColon = usernameAndPassword.indexOf(\":\")\n if (firstColon !== -1) {\n username = usernameAndPassword.substr(0, firstColon)\n password = usernameAndPassword.substr(firstColon + 1)\n }\n\n // If replicaSet have value set It as hostlist, If not set like standalone host\n if (replicaSet) {\n hostReplicaSet = hostAndPort\n } else {\n ;[host, port] = hostAndPort.split(\":\")\n }\n\n let connectionUrl: any = {\n type: type,\n host: host,\n hostReplicaSet: hostReplicaSet,\n username: decodeURIComponent(username),\n password: decodeURIComponent(password),\n port: port ? parseInt(port) : undefined,\n database: afterBase || undefined,\n }\n\n // Loop to set every options in connectionUrl to object\n for (const [key, value] of Object.entries(optionsObject)) {\n connectionUrl[key] = value\n }\n\n return connectionUrl\n }\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/driver/DriverUtils.ts"],"names":[],"mappings":"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","file":"DriverUtils.js","sourcesContent":["import { Driver } from \"./Driver\"\nimport { hash, shorten } from \"../util/StringUtils\"\nimport { VersionUtils } from \"../util/VersionUtils\"\n\n/**\n * Common driver utility functions.\n */\nexport class DriverUtils {\n // -------------------------------------------------------------------------\n // Public Static Methods\n // -------------------------------------------------------------------------\n\n /**\n * Returns true if given driver is SQLite-based driver.\n */\n static isSQLiteFamily(driver: Driver): boolean {\n return [\n \"sqlite\",\n \"cordova\",\n \"react-native\",\n \"nativescript\",\n \"sqljs\",\n \"expo\",\n \"better-sqlite3\",\n \"capacitor\",\n ].includes(driver.options.type)\n }\n\n /**\n * Returns true if given driver is MySQL-based driver.\n */\n static isMySQLFamily(driver: Driver): boolean {\n return [\"mysql\", \"mariadb\"].includes(driver.options.type)\n }\n\n static isReleaseVersionOrGreater(driver: Driver, version: string): boolean {\n return (\n driver.version != null &&\n VersionUtils.isGreaterOrEqual(driver.version, version)\n )\n }\n\n static isPostgresFamily(driver: Driver): boolean {\n return [\"postgres\", \"aurora-postgres\", \"cockroachdb\"].includes(\n driver.options.type,\n )\n }\n\n /**\n * Normalizes and builds a new driver options.\n * Extracts settings from connection url and sets to a new options object.\n */\n static buildDriverOptions(\n options: any,\n buildOptions?: { useSid: boolean },\n ): any {\n if (options.url) {\n const urlDriverOptions = this.parseConnectionUrl(options.url) as {\n [key: string]: any\n }\n\n if (\n buildOptions &&\n buildOptions.useSid &&\n urlDriverOptions.database\n ) {\n urlDriverOptions.sid = urlDriverOptions.database\n }\n\n for (const key of Object.keys(urlDriverOptions)) {\n if (typeof urlDriverOptions[key] === \"undefined\") {\n delete urlDriverOptions[key]\n }\n }\n\n return Object.assign({}, options, urlDriverOptions)\n }\n return Object.assign({}, options)\n }\n\n /**\n * buildDriverOptions for MongodDB only to support replica set\n */\n static buildMongoDBDriverOptions(\n options: any,\n buildOptions?: { useSid: boolean },\n ): any {\n if (options.url) {\n const urlDriverOptions = this.parseMongoDBConnectionUrl(\n options.url,\n ) as { [key: string]: any }\n\n if (\n buildOptions &&\n buildOptions.useSid &&\n urlDriverOptions.database\n ) {\n urlDriverOptions.sid = urlDriverOptions.database\n }\n\n for (const key of Object.keys(urlDriverOptions)) {\n if (typeof urlDriverOptions[key] === \"undefined\") {\n delete urlDriverOptions[key]\n }\n }\n\n return Object.assign({}, options, urlDriverOptions)\n }\n return Object.assign({}, options)\n }\n\n /**\n * Joins and shortens alias if needed.\n *\n * If the alias length is greater than the limit allowed by the current\n * driver, replaces it with a shortend string, if the shortend string\n * is still too long, it will then hash the alias.\n *\n * @param driver Current `Driver`.\n * @param buildOptions Optional settings.\n * @param alias Alias parts.\n *\n * @return An alias that is no longer than the divers max alias length.\n */\n static buildAlias(\n { maxAliasLength }: Driver,\n buildOptions: { shorten?: boolean; joiner?: string } | undefined,\n ...alias: string[]\n ): string {\n const joiner =\n buildOptions && buildOptions.joiner ? buildOptions.joiner : \"_\"\n\n let newAlias = alias.length === 1 ? alias[0] : alias.join(joiner)\n\n if (\n maxAliasLength &&\n maxAliasLength > 0 &&\n newAlias.length > maxAliasLength\n ) {\n if (buildOptions && buildOptions.shorten === true) {\n const shortenedAlias = shorten(newAlias)\n if (shortenedAlias.length < maxAliasLength) {\n return shortenedAlias\n }\n }\n\n return hash(newAlias, { length: maxAliasLength })\n }\n\n return newAlias\n }\n\n /**\n * @deprecated use `buildAlias` instead.\n */\n static buildColumnAlias(\n { maxAliasLength }: Driver,\n buildOptions: { shorten?: boolean; joiner?: string } | string,\n ...alias: string[]\n ) {\n if (typeof buildOptions === \"string\") {\n alias.unshift(buildOptions)\n buildOptions = { shorten: false, joiner: \"_\" }\n } else {\n buildOptions = Object.assign(\n { shorten: false, joiner: \"_\" },\n buildOptions,\n )\n }\n return this.buildAlias(\n { maxAliasLength } as Driver,\n buildOptions,\n ...alias,\n )\n }\n\n // -------------------------------------------------------------------------\n // Private Static Methods\n // -------------------------------------------------------------------------\n\n /**\n * Extracts connection data from the connection url.\n */\n private static parseConnectionUrl(url: string) {\n const type = url.split(\":\")[0]\n const firstSlashes = url.indexOf(\"//\")\n const preBase = url.substr(firstSlashes + 2)\n const secondSlash = preBase.indexOf(\"/\")\n const base =\n secondSlash !== -1 ? preBase.substr(0, secondSlash) : preBase\n let afterBase =\n secondSlash !== -1 ? preBase.substr(secondSlash + 1) : undefined\n // remove mongodb query params\n if (afterBase && afterBase.indexOf(\"?\") !== -1) {\n afterBase = afterBase.substr(0, afterBase.indexOf(\"?\"))\n }\n\n const lastAtSign = base.lastIndexOf(\"@\")\n const usernameAndPassword = base.substr(0, lastAtSign)\n const hostAndPort = base.substr(lastAtSign + 1)\n\n let username = usernameAndPassword\n let password = \"\"\n const firstColon = usernameAndPassword.indexOf(\":\")\n if (firstColon !== -1) {\n username = usernameAndPassword.substr(0, firstColon)\n password = usernameAndPassword.substr(firstColon + 1)\n }\n const [host, port] = hostAndPort.split(\":\")\n\n return {\n type: type,\n host: host,\n username: decodeURIComponent(username),\n password: decodeURIComponent(password),\n port: port ? parseInt(port) : undefined,\n database: afterBase || undefined,\n }\n }\n\n /**\n * Extracts connection data from the connection url for MongoDB to support replica set.\n */\n private static parseMongoDBConnectionUrl(url: string) {\n const type = url.split(\":\")[0]\n const firstSlashes = url.indexOf(\"//\")\n const preBase = url.substr(firstSlashes + 2)\n const secondSlash = preBase.indexOf(\"/\")\n const base =\n secondSlash !== -1 ? preBase.substr(0, secondSlash) : preBase\n let afterBase =\n secondSlash !== -1 ? preBase.substr(secondSlash + 1) : undefined\n let afterQuestionMark = \"\"\n let host = undefined\n let port = undefined\n let hostReplicaSet = undefined\n let replicaSet = undefined\n\n let optionsObject: any = {}\n\n if (afterBase && afterBase.indexOf(\"?\") !== -1) {\n // split params\n afterQuestionMark = afterBase.substr(\n afterBase.indexOf(\"?\") + 1,\n afterBase.length,\n )\n\n const optionsList = afterQuestionMark.split(\"&\")\n let optionKey: string\n let optionValue: string\n\n // create optionsObject for merge with connectionUrl object before return\n optionsList.forEach((optionItem) => {\n optionKey = optionItem.split(\"=\")[0]\n optionValue = optionItem.split(\"=\")[1]\n optionsObject[optionKey] = optionValue\n })\n\n // specific replicaSet value to set options about hostReplicaSet\n replicaSet = optionsObject[\"replicaSet\"]\n afterBase = afterBase.substr(0, afterBase.indexOf(\"?\"))\n }\n\n const lastAtSign = base.lastIndexOf(\"@\")\n const usernameAndPassword = base.substr(0, lastAtSign)\n const hostAndPort = base.substr(lastAtSign + 1)\n\n let username = usernameAndPassword\n let password = \"\"\n const firstColon = usernameAndPassword.indexOf(\":\")\n if (firstColon !== -1) {\n username = usernameAndPassword.substr(0, firstColon)\n password = usernameAndPassword.substr(firstColon + 1)\n }\n\n // If replicaSet have value set It as hostlist, If not set like standalone host\n if (replicaSet) {\n hostReplicaSet = hostAndPort\n } else {\n ;[host, port] = hostAndPort.split(\":\")\n }\n\n let connectionUrl: any = {\n type: type,\n host: host,\n hostReplicaSet: hostReplicaSet,\n username: decodeURIComponent(username),\n password: decodeURIComponent(password),\n port: port ? parseInt(port) : undefined,\n database: afterBase || undefined,\n }\n\n // Loop to set every options in connectionUrl to object\n for (const [key, value] of Object.entries(optionsObject)) {\n connectionUrl[key] = value\n }\n\n return connectionUrl\n }\n}\n"],"sourceRoot":".."}
@@ -40,21 +40,21 @@ class AuroraMysqlDriver {
40
40
  // numeric types
41
41
  "bit",
42
42
  "int",
43
- "integer",
43
+ "integer", // synonym for int
44
44
  "tinyint",
45
45
  "smallint",
46
46
  "mediumint",
47
47
  "bigint",
48
48
  "float",
49
49
  "double",
50
- "double precision",
51
- "real",
50
+ "double precision", // synonym for double
51
+ "real", // synonym for double
52
52
  "decimal",
53
- "dec",
54
- "numeric",
55
- "fixed",
56
- "bool",
57
- "boolean",
53
+ "dec", // synonym for decimal
54
+ "numeric", // synonym for decimal
55
+ "fixed", // synonym for decimal
56
+ "bool", // synonym for tinyint
57
+ "boolean", // synonym for tinyint
58
58
  // date and time types
59
59
  "date",
60
60
  "datetime",
@@ -63,10 +63,10 @@ class AuroraMysqlDriver {
63
63
  "year",
64
64
  // string types
65
65
  "char",
66
- "nchar",
66
+ "nchar", // synonym for national char
67
67
  "national char",
68
68
  "varchar",
69
- "nvarchar",
69
+ "nvarchar", // synonym for national varchar
70
70
  "national varchar",
71
71
  "blob",
72
72
  "text",