typeorm 0.2.42-dev.f3e2b0e → 0.2.42-dev.f8154eb

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 (315) hide show
  1. package/README.md +38 -0
  2. package/browser/cache/RedisQueryResultCache.js +40 -35
  3. package/browser/cache/RedisQueryResultCache.js.map +1 -1
  4. package/browser/common/RelationType.d.ts +14 -0
  5. package/browser/common/RelationType.js +3 -0
  6. package/browser/common/RelationType.js.map +1 -0
  7. package/browser/connection/BaseConnectionOptions.d.ts +5 -0
  8. package/browser/connection/BaseConnectionOptions.js.map +1 -1
  9. package/browser/connection/Connection.d.ts +7 -3
  10. package/browser/connection/Connection.js +47 -31
  11. package/browser/connection/Connection.js.map +1 -1
  12. package/browser/connection/ConnectionMetadataBuilder.d.ts +3 -3
  13. package/browser/connection/ConnectionMetadataBuilder.js +54 -22
  14. package/browser/connection/ConnectionMetadataBuilder.js.map +1 -1
  15. package/browser/connection/ConnectionOptionsReader.js +33 -28
  16. package/browser/connection/ConnectionOptionsReader.js.map +1 -1
  17. package/browser/connection/options-reader/ConnectionOptionsEnvReader.js +1 -0
  18. package/browser/connection/options-reader/ConnectionOptionsEnvReader.js.map +1 -1
  19. package/browser/decorator/Unique.d.ts +5 -4
  20. package/browser/decorator/Unique.js +7 -3
  21. package/browser/decorator/Unique.js.map +1 -1
  22. package/browser/decorator/columns/PrimaryGeneratedColumn.d.ts +2 -1
  23. package/browser/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
  24. package/browser/decorator/options/ColumnOptions.d.ts +4 -0
  25. package/browser/decorator/options/ColumnOptions.js.map +1 -1
  26. package/browser/decorator/options/PrimaryGeneratedColumnIdentityOptions.d.ts +22 -0
  27. package/browser/decorator/options/PrimaryGeneratedColumnIdentityOptions.js +3 -0
  28. package/browser/decorator/options/PrimaryGeneratedColumnIdentityOptions.js.map +1 -0
  29. package/browser/decorator/options/RelationOptions.d.ts +1 -1
  30. package/browser/decorator/options/RelationOptions.js.map +1 -1
  31. package/browser/decorator/options/UniqueOptions.d.ts +10 -0
  32. package/browser/decorator/options/UniqueOptions.js +3 -0
  33. package/browser/decorator/options/UniqueOptions.js.map +1 -0
  34. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js +1 -1
  35. package/browser/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  36. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js +7 -5
  37. package/browser/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  38. package/browser/driver/cockroachdb/CockroachQueryRunner.js +1 -1
  39. package/browser/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  40. package/browser/driver/mysql/MysqlQueryRunner.js +1 -1
  41. package/browser/driver/mysql/MysqlQueryRunner.js.map +1 -1
  42. package/browser/driver/oracle/OracleQueryRunner.js +1 -1
  43. package/browser/driver/oracle/OracleQueryRunner.js.map +1 -1
  44. package/browser/driver/postgres/PostgresQueryRunner.js +15 -6
  45. package/browser/driver/postgres/PostgresQueryRunner.js.map +1 -1
  46. package/browser/driver/sap/SapQueryRunner.js +1 -1
  47. package/browser/driver/sap/SapQueryRunner.js.map +1 -1
  48. package/browser/driver/sqlite/SqliteDriver.js +11 -10
  49. package/browser/driver/sqlite/SqliteDriver.js.map +1 -1
  50. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +1 -1
  51. package/browser/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  52. package/browser/entity-manager/EntityManager.d.ts +2 -2
  53. package/browser/entity-manager/EntityManager.js +1 -1
  54. package/browser/entity-manager/EntityManager.js.map +1 -1
  55. package/browser/entity-manager/MongoEntityManager.js +2 -1
  56. package/browser/entity-manager/MongoEntityManager.js.map +1 -1
  57. package/browser/entity-schema/EntitySchemaOptions.d.ts +6 -0
  58. package/browser/entity-schema/EntitySchemaOptions.js.map +1 -1
  59. package/browser/entity-schema/EntitySchemaRelationOptions.d.ts +1 -1
  60. package/browser/entity-schema/EntitySchemaRelationOptions.js.map +1 -1
  61. package/browser/entity-schema/EntitySchemaTransformer.js +3 -1
  62. package/browser/entity-schema/EntitySchemaTransformer.js.map +1 -1
  63. package/browser/entity-schema/EntitySchemaUniqueOptions.d.ts +5 -0
  64. package/browser/entity-schema/EntitySchemaUniqueOptions.js.map +1 -1
  65. package/browser/find-options/FindOneOptions.d.ts +6 -0
  66. package/browser/find-options/FindOneOptions.js.map +1 -1
  67. package/browser/find-options/FindOptionsUtils.js +4 -0
  68. package/browser/find-options/FindOptionsUtils.js.map +1 -1
  69. package/browser/find-options/operator/Like.d.ts +1 -1
  70. package/browser/find-options/operator/Like.js +1 -1
  71. package/browser/find-options/operator/Like.js.map +1 -1
  72. package/browser/globals.js +34 -7
  73. package/browser/globals.js.map +1 -1
  74. package/browser/index.d.ts +2 -0
  75. package/browser/index.js +2 -0
  76. package/browser/index.js.map +1 -1
  77. package/browser/metadata/ColumnMetadata.d.ts +4 -0
  78. package/browser/metadata/ColumnMetadata.js +2 -0
  79. package/browser/metadata/ColumnMetadata.js.map +1 -1
  80. package/browser/metadata/RelationMetadata.d.ts +1 -1
  81. package/browser/metadata/RelationMetadata.js.map +1 -1
  82. package/browser/metadata/UniqueMetadata.d.ts +5 -0
  83. package/browser/metadata/UniqueMetadata.js +1 -0
  84. package/browser/metadata/UniqueMetadata.js.map +1 -1
  85. package/browser/metadata-args/UniqueMetadataArgs.d.ts +5 -0
  86. package/browser/metadata-args/UniqueMetadataArgs.js.map +1 -1
  87. package/browser/metadata-builder/EntityMetadataValidator.js +1 -0
  88. package/browser/metadata-builder/EntityMetadataValidator.js.map +1 -1
  89. package/browser/migration/MigrationExecutor.js +1 -1
  90. package/browser/migration/MigrationExecutor.js.map +1 -1
  91. package/browser/persistence/subject-builder/OneToManySubjectBuilder.js +3 -0
  92. package/browser/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -1
  93. package/browser/query-builder/DeleteQueryBuilder.d.ts +4 -2
  94. package/browser/query-builder/DeleteQueryBuilder.js +4 -2
  95. package/browser/query-builder/DeleteQueryBuilder.js.map +1 -1
  96. package/browser/query-builder/InsertQueryBuilder.d.ts +1 -1
  97. package/browser/query-builder/InsertQueryBuilder.js +1 -1
  98. package/browser/query-builder/InsertQueryBuilder.js.map +1 -1
  99. package/browser/query-builder/NotBrackets.d.ts +7 -0
  100. package/browser/query-builder/NotBrackets.js +16 -0
  101. package/browser/query-builder/NotBrackets.js.map +1 -0
  102. package/browser/query-builder/QueryBuilder.d.ts +3 -2
  103. package/browser/query-builder/QueryBuilder.js +2 -1
  104. package/browser/query-builder/QueryBuilder.js.map +1 -1
  105. package/browser/query-builder/RelationLoader.js +11 -6
  106. package/browser/query-builder/RelationLoader.js.map +1 -1
  107. package/browser/query-builder/RelationQueryBuilder.d.ts +1 -1
  108. package/browser/query-builder/RelationQueryBuilder.js +1 -1
  109. package/browser/query-builder/RelationQueryBuilder.js.map +1 -1
  110. package/browser/query-builder/SelectQueryBuilder.d.ts +1 -1
  111. package/browser/query-builder/SelectQueryBuilder.js +1 -1
  112. package/browser/query-builder/SelectQueryBuilder.js.map +1 -1
  113. package/browser/query-builder/SoftDeleteQueryBuilder.d.ts +1 -1
  114. package/browser/query-builder/SoftDeleteQueryBuilder.js +1 -1
  115. package/browser/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  116. package/browser/query-builder/UpdateQueryBuilder.d.ts +4 -2
  117. package/browser/query-builder/UpdateQueryBuilder.js +11 -6
  118. package/browser/query-builder/UpdateQueryBuilder.js.map +1 -1
  119. package/browser/query-builder/WhereExpressionBuilder.d.ts +3 -1
  120. package/browser/query-builder/WhereExpressionBuilder.js.map +1 -1
  121. package/browser/query-runner/BaseQueryRunner.d.ts +2 -2
  122. package/browser/query-runner/BaseQueryRunner.js +3 -3
  123. package/browser/query-runner/BaseQueryRunner.js.map +1 -1
  124. package/browser/repository/AbstractRepository.d.ts +2 -2
  125. package/browser/repository/AbstractRepository.js +2 -2
  126. package/browser/repository/AbstractRepository.js.map +1 -1
  127. package/browser/repository/BaseEntity.d.ts +1 -1
  128. package/browser/repository/BaseEntity.js +1 -1
  129. package/browser/repository/BaseEntity.js.map +1 -1
  130. package/browser/repository/Repository.d.ts +1 -1
  131. package/browser/repository/Repository.js +1 -1
  132. package/browser/repository/Repository.js.map +1 -1
  133. package/browser/repository/TreeRepository.js +1 -1
  134. package/browser/repository/TreeRepository.js.map +1 -1
  135. package/browser/schema-builder/RdbmsSchemaBuilder.js +1 -1
  136. package/browser/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  137. package/browser/schema-builder/options/TableColumnOptions.d.ts +4 -0
  138. package/browser/schema-builder/options/TableColumnOptions.js.map +1 -1
  139. package/browser/schema-builder/options/TableUniqueOptions.d.ts +5 -0
  140. package/browser/schema-builder/options/TableUniqueOptions.js.map +1 -1
  141. package/browser/schema-builder/table/TableColumn.d.ts +4 -0
  142. package/browser/schema-builder/table/TableColumn.js +2 -0
  143. package/browser/schema-builder/table/TableColumn.js.map +1 -1
  144. package/browser/schema-builder/table/TableUnique.d.ts +5 -0
  145. package/browser/schema-builder/table/TableUnique.js +5 -2
  146. package/browser/schema-builder/table/TableUnique.js.map +1 -1
  147. package/browser/schema-builder/util/TableUtils.js +1 -0
  148. package/browser/schema-builder/util/TableUtils.js.map +1 -1
  149. package/browser/util/DirectoryExportedClassesLoader.d.ts +1 -1
  150. package/browser/util/DirectoryExportedClassesLoader.js +55 -31
  151. package/browser/util/DirectoryExportedClassesLoader.js.map +1 -1
  152. package/browser/util/ImportUtils.d.ts +1 -0
  153. package/browser/util/ImportUtils.js +90 -0
  154. package/browser/util/ImportUtils.js.map +1 -0
  155. package/cache/RedisQueryResultCache.js +39 -34
  156. package/cache/RedisQueryResultCache.js.map +1 -1
  157. package/commands/InitCommand.d.ts +9 -7
  158. package/commands/InitCommand.js +72 -43
  159. package/commands/InitCommand.js.map +1 -1
  160. package/commands/QueryCommand.d.ts +1 -1
  161. package/commands/QueryCommand.js +1 -1
  162. package/commands/QueryCommand.js.map +1 -1
  163. package/common/RelationType.d.ts +14 -0
  164. package/common/RelationType.js +4 -0
  165. package/common/RelationType.js.map +1 -0
  166. package/connection/BaseConnectionOptions.d.ts +5 -0
  167. package/connection/BaseConnectionOptions.js.map +1 -1
  168. package/connection/Connection.d.ts +7 -3
  169. package/connection/Connection.js +47 -31
  170. package/connection/Connection.js.map +1 -1
  171. package/connection/ConnectionMetadataBuilder.d.ts +3 -3
  172. package/connection/ConnectionMetadataBuilder.js +53 -21
  173. package/connection/ConnectionMetadataBuilder.js.map +1 -1
  174. package/connection/ConnectionOptionsReader.js +32 -27
  175. package/connection/ConnectionOptionsReader.js.map +1 -1
  176. package/connection/options-reader/ConnectionOptionsEnvReader.js +1 -0
  177. package/connection/options-reader/ConnectionOptionsEnvReader.js.map +1 -1
  178. package/decorator/Unique.d.ts +5 -4
  179. package/decorator/Unique.js +7 -3
  180. package/decorator/Unique.js.map +1 -1
  181. package/decorator/columns/PrimaryGeneratedColumn.d.ts +2 -1
  182. package/decorator/columns/PrimaryGeneratedColumn.js.map +1 -1
  183. package/decorator/options/ColumnOptions.d.ts +4 -0
  184. package/decorator/options/ColumnOptions.js.map +1 -1
  185. package/decorator/options/PrimaryGeneratedColumnIdentityOptions.d.ts +22 -0
  186. package/decorator/options/PrimaryGeneratedColumnIdentityOptions.js +4 -0
  187. package/decorator/options/PrimaryGeneratedColumnIdentityOptions.js.map +1 -0
  188. package/decorator/options/RelationOptions.d.ts +1 -1
  189. package/decorator/options/RelationOptions.js.map +1 -1
  190. package/decorator/options/UniqueOptions.d.ts +10 -0
  191. package/decorator/options/UniqueOptions.js +4 -0
  192. package/decorator/options/UniqueOptions.js.map +1 -0
  193. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js +1 -1
  194. package/driver/aurora-data-api/AuroraDataApiQueryRunner.js.map +1 -1
  195. package/driver/better-sqlite3/BetterSqlite3Driver.js +7 -5
  196. package/driver/better-sqlite3/BetterSqlite3Driver.js.map +1 -1
  197. package/driver/cockroachdb/CockroachQueryRunner.js +1 -1
  198. package/driver/cockroachdb/CockroachQueryRunner.js.map +1 -1
  199. package/driver/mysql/MysqlQueryRunner.js +1 -1
  200. package/driver/mysql/MysqlQueryRunner.js.map +1 -1
  201. package/driver/oracle/OracleQueryRunner.js +1 -1
  202. package/driver/oracle/OracleQueryRunner.js.map +1 -1
  203. package/driver/postgres/PostgresQueryRunner.js +15 -6
  204. package/driver/postgres/PostgresQueryRunner.js.map +1 -1
  205. package/driver/sap/SapQueryRunner.js +1 -1
  206. package/driver/sap/SapQueryRunner.js.map +1 -1
  207. package/driver/sqlite/SqliteDriver.js +11 -10
  208. package/driver/sqlite/SqliteDriver.js.map +1 -1
  209. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js +1 -1
  210. package/driver/sqlite-abstract/AbstractSqliteQueryRunner.js.map +1 -1
  211. package/entity-manager/EntityManager.d.ts +2 -2
  212. package/entity-manager/EntityManager.js +1 -1
  213. package/entity-manager/EntityManager.js.map +1 -1
  214. package/entity-manager/MongoEntityManager.js +2 -1
  215. package/entity-manager/MongoEntityManager.js.map +1 -1
  216. package/entity-schema/EntitySchemaOptions.d.ts +6 -0
  217. package/entity-schema/EntitySchemaOptions.js.map +1 -1
  218. package/entity-schema/EntitySchemaRelationOptions.d.ts +1 -1
  219. package/entity-schema/EntitySchemaRelationOptions.js.map +1 -1
  220. package/entity-schema/EntitySchemaTransformer.js +3 -1
  221. package/entity-schema/EntitySchemaTransformer.js.map +1 -1
  222. package/entity-schema/EntitySchemaUniqueOptions.d.ts +5 -0
  223. package/entity-schema/EntitySchemaUniqueOptions.js.map +1 -1
  224. package/find-options/FindOneOptions.d.ts +6 -0
  225. package/find-options/FindOneOptions.js.map +1 -1
  226. package/find-options/FindOptionsUtils.js +4 -0
  227. package/find-options/FindOptionsUtils.js.map +1 -1
  228. package/find-options/operator/Like.d.ts +1 -1
  229. package/find-options/operator/Like.js +1 -1
  230. package/find-options/operator/Like.js.map +1 -1
  231. package/globals.js +33 -6
  232. package/globals.js.map +1 -1
  233. package/index.d.ts +2 -0
  234. package/index.js +4 -1
  235. package/index.js.map +1 -1
  236. package/index.mjs +352 -0
  237. package/metadata/ColumnMetadata.d.ts +4 -0
  238. package/metadata/ColumnMetadata.js +2 -0
  239. package/metadata/ColumnMetadata.js.map +1 -1
  240. package/metadata/RelationMetadata.d.ts +1 -1
  241. package/metadata/RelationMetadata.js.map +1 -1
  242. package/metadata/UniqueMetadata.d.ts +5 -0
  243. package/metadata/UniqueMetadata.js +1 -0
  244. package/metadata/UniqueMetadata.js.map +1 -1
  245. package/metadata-args/UniqueMetadataArgs.d.ts +5 -0
  246. package/metadata-args/UniqueMetadataArgs.js.map +1 -1
  247. package/metadata-builder/EntityMetadataValidator.js +1 -0
  248. package/metadata-builder/EntityMetadataValidator.js.map +1 -1
  249. package/migration/MigrationExecutor.js +1 -1
  250. package/migration/MigrationExecutor.js.map +1 -1
  251. package/package.json +1 -1
  252. package/persistence/subject-builder/OneToManySubjectBuilder.js +3 -0
  253. package/persistence/subject-builder/OneToManySubjectBuilder.js.map +1 -1
  254. package/query-builder/DeleteQueryBuilder.d.ts +4 -2
  255. package/query-builder/DeleteQueryBuilder.js +4 -2
  256. package/query-builder/DeleteQueryBuilder.js.map +1 -1
  257. package/query-builder/InsertQueryBuilder.d.ts +1 -1
  258. package/query-builder/InsertQueryBuilder.js +1 -1
  259. package/query-builder/InsertQueryBuilder.js.map +1 -1
  260. package/query-builder/NotBrackets.d.ts +7 -0
  261. package/query-builder/NotBrackets.js +19 -0
  262. package/query-builder/NotBrackets.js.map +1 -0
  263. package/query-builder/QueryBuilder.d.ts +3 -2
  264. package/query-builder/QueryBuilder.js +2 -1
  265. package/query-builder/QueryBuilder.js.map +1 -1
  266. package/query-builder/RelationLoader.js +11 -6
  267. package/query-builder/RelationLoader.js.map +1 -1
  268. package/query-builder/RelationQueryBuilder.d.ts +1 -1
  269. package/query-builder/RelationQueryBuilder.js +1 -1
  270. package/query-builder/RelationQueryBuilder.js.map +1 -1
  271. package/query-builder/SelectQueryBuilder.d.ts +1 -1
  272. package/query-builder/SelectQueryBuilder.js +1 -1
  273. package/query-builder/SelectQueryBuilder.js.map +1 -1
  274. package/query-builder/SoftDeleteQueryBuilder.d.ts +1 -1
  275. package/query-builder/SoftDeleteQueryBuilder.js +1 -1
  276. package/query-builder/SoftDeleteQueryBuilder.js.map +1 -1
  277. package/query-builder/UpdateQueryBuilder.d.ts +4 -2
  278. package/query-builder/UpdateQueryBuilder.js +11 -6
  279. package/query-builder/UpdateQueryBuilder.js.map +1 -1
  280. package/query-builder/WhereExpressionBuilder.d.ts +3 -1
  281. package/query-builder/WhereExpressionBuilder.js.map +1 -1
  282. package/query-runner/BaseQueryRunner.d.ts +2 -2
  283. package/query-runner/BaseQueryRunner.js +3 -3
  284. package/query-runner/BaseQueryRunner.js.map +1 -1
  285. package/repository/AbstractRepository.d.ts +2 -2
  286. package/repository/AbstractRepository.js +2 -2
  287. package/repository/AbstractRepository.js.map +1 -1
  288. package/repository/BaseEntity.d.ts +1 -1
  289. package/repository/BaseEntity.js +1 -1
  290. package/repository/BaseEntity.js.map +1 -1
  291. package/repository/Repository.d.ts +1 -1
  292. package/repository/Repository.js +1 -1
  293. package/repository/Repository.js.map +1 -1
  294. package/repository/TreeRepository.js +1 -1
  295. package/repository/TreeRepository.js.map +1 -1
  296. package/schema-builder/RdbmsSchemaBuilder.js +1 -1
  297. package/schema-builder/RdbmsSchemaBuilder.js.map +1 -1
  298. package/schema-builder/options/TableColumnOptions.d.ts +4 -0
  299. package/schema-builder/options/TableColumnOptions.js.map +1 -1
  300. package/schema-builder/options/TableUniqueOptions.d.ts +5 -0
  301. package/schema-builder/options/TableUniqueOptions.js.map +1 -1
  302. package/schema-builder/table/TableColumn.d.ts +4 -0
  303. package/schema-builder/table/TableColumn.js +2 -0
  304. package/schema-builder/table/TableColumn.js.map +1 -1
  305. package/schema-builder/table/TableUnique.d.ts +5 -0
  306. package/schema-builder/table/TableUnique.js +5 -2
  307. package/schema-builder/table/TableUnique.js.map +1 -1
  308. package/schema-builder/util/TableUtils.js +1 -0
  309. package/schema-builder/util/TableUtils.js.map +1 -1
  310. package/util/DirectoryExportedClassesLoader.d.ts +1 -1
  311. package/util/DirectoryExportedClassesLoader.js +54 -31
  312. package/util/DirectoryExportedClassesLoader.js.map +1 -1
  313. package/util/ImportUtils.d.ts +1 -0
  314. package/util/ImportUtils.js +94 -0
  315. package/util/ImportUtils.js.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/query-builder/RelationQueryBuilder.ts"],"names":[],"mappings":"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","file":"RelationQueryBuilder.js","sourcesContent":["import {QueryBuilder} from \"./QueryBuilder\";\nimport {RelationUpdater} from \"./RelationUpdater\";\nimport {RelationRemover} from \"./RelationRemover\";\nimport { TypeORMError } from \"../error\";\n\n/**\n * Allows to work with entity relations and perform specific operations with those relations.\n *\n * todo: add transactions everywhere\n */\nexport class RelationQueryBuilder<Entity> extends QueryBuilder<Entity> {\n\n // -------------------------------------------------------------------------\n // Public Implemented Methods\n // -------------------------------------------------------------------------\n\n /**\n * Gets generated sql query without parameters being replaced.\n */\n getQuery(): string {\n return \"\";\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Sets entity (target) which relations will be updated.\n */\n of(entity: any|any[]): this {\n this.expressionMap.of = entity;\n return this;\n }\n\n /**\n * Sets entity relation's value.\n * Value can be entity, entity id or entity id map (if entity has composite ids).\n * Works only for many-to-one and one-to-one relations.\n * For many-to-many and one-to-many relations use #add and #remove methods instead.\n */\n async set(value: any): Promise<void> {\n const relation = this.expressionMap.relationMetadata;\n\n if (!this.expressionMap.of) // todo: move this check before relation query builder creation?\n throw new TypeORMError(`Entity whose relation needs to be set is not set. Use .of method to define whose relation you want to set.`);\n\n if (relation.isManyToMany || relation.isOneToMany)\n throw new TypeORMError(`Set operation is only supported for many-to-one and one-to-one relations. ` +\n `However given \"${relation.propertyPath}\" has ${relation.relationType} relation. ` +\n `Use .add() method instead.`);\n\n // if there are multiple join columns then user must send id map as \"value\" argument. check if he really did it\n if (relation.joinColumns &&\n relation.joinColumns.length > 1 &&\n (!(value instanceof Object) || Object.keys(value).length < relation.joinColumns.length))\n throw new TypeORMError(`Value to be set into the relation must be a map of relation ids, for example: .set({ firstName: \"...\", lastName: \"...\" })`);\n\n const updater = new RelationUpdater(this, this.expressionMap);\n return updater.update(value);\n }\n\n /**\n * Adds (binds) given value to entity relation.\n * Value can be entity, entity id or entity id map (if entity has composite ids).\n * Value also can be array of entities, array of entity ids or array of entity id maps (if entity has composite ids).\n * Works only for many-to-many and one-to-many relations.\n * For many-to-one and one-to-one use #set method instead.\n */\n async add(value: any|any[]): Promise<void> {\n if (Array.isArray(value) && value.length === 0)\n return;\n\n const relation = this.expressionMap.relationMetadata;\n\n if (!this.expressionMap.of) // todo: move this check before relation query builder creation?\n throw new TypeORMError(`Entity whose relation needs to be set is not set. Use .of method to define whose relation you want to set.`);\n\n if (relation.isManyToOne || relation.isOneToOne)\n throw new TypeORMError(`Add operation is only supported for many-to-many and one-to-many relations. ` +\n `However given \"${relation.propertyPath}\" has ${relation.relationType} relation. ` +\n `Use .set() method instead.`);\n\n // if there are multiple join columns then user must send id map as \"value\" argument. check if he really did it\n if (relation.joinColumns &&\n relation.joinColumns.length > 1 &&\n (!(value instanceof Object) || Object.keys(value).length < relation.joinColumns.length))\n throw new TypeORMError(`Value to be set into the relation must be a map of relation ids, for example: .set({ firstName: \"...\", lastName: \"...\" })`);\n\n const updater = new RelationUpdater(this, this.expressionMap);\n return updater.update(value);\n }\n\n /**\n * Removes (unbinds) given value from entity relation.\n * Value can be entity, entity id or entity id map (if entity has composite ids).\n * Value also can be array of entities, array of entity ids or array of entity id maps (if entity has composite ids).\n * Works only for many-to-many and one-to-many relations.\n * For many-to-one and one-to-one use #set method instead.\n */\n async remove(value: any|any[]): Promise<void> {\n if (Array.isArray(value) && value.length === 0)\n return;\n\n const relation = this.expressionMap.relationMetadata;\n\n if (!this.expressionMap.of) // todo: move this check before relation query builder creation?\n throw new TypeORMError(`Entity whose relation needs to be set is not set. Use .of method to define whose relation you want to set.`);\n\n if (relation.isManyToOne || relation.isOneToOne)\n throw new TypeORMError(`Add operation is only supported for many-to-many and one-to-many relations. ` +\n `However given \"${relation.propertyPath}\" has ${relation.relationType} relation. ` +\n `Use .set(null) method instead.`);\n\n const remover = new RelationRemover(this, this.expressionMap);\n return remover.remove(value);\n }\n\n /**\n * Adds (binds) and removes (unbinds) given values to/from entity relation.\n * Value can be entity, entity id or entity id map (if entity has composite ids).\n * Value also can be array of entities, array of entity ids or array of entity id maps (if entity has composite ids).\n * Works only for many-to-many and one-to-many relations.\n * For many-to-one and one-to-one use #set method instead.\n */\n async addAndRemove(added: any|any[], removed: any|any[]): Promise<void> {\n await this.remove(removed);\n await this.add(added);\n }\n\n /**\n * Gets entity's relation id.\n async getId(): Promise<any> {\n\n }*/\n\n /**\n * Gets entity's relation ids.\n async getIds(): Promise<any[]> {\n return [];\n }*/\n\n /**\n * Loads a single entity (relational) from the relation.\n * You can also provide id of relational entity to filter by.\n */\n async loadOne<T = any>(): Promise<T|undefined> {\n return this.loadMany<T>().then(results => results[0]);\n }\n\n /**\n * Loads many entities (relational) from the relation.\n * You can also provide ids of relational entities to filter by.\n */\n async loadMany<T = any>(): Promise<T[]> {\n let of = this.expressionMap.of;\n if (!(of instanceof Object)) {\n const metadata = this.expressionMap.mainAlias!.metadata;\n if (metadata.hasMultiplePrimaryKeys)\n throw new TypeORMError(`Cannot load entity because only one primary key was specified, however entity contains multiple primary keys`);\n\n of = metadata.primaryColumns[0].createValueMap(of);\n }\n\n return this.connection.relationLoader.load(this.expressionMap.relationMetadata, of, this.queryRunner);\n }\n\n}\n"],"sourceRoot":".."}
1
+ {"version":3,"sources":["../../src/query-builder/RelationQueryBuilder.ts"],"names":[],"mappings":"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","file":"RelationQueryBuilder.js","sourcesContent":["import {QueryBuilder} from \"./QueryBuilder\";\nimport {RelationUpdater} from \"./RelationUpdater\";\nimport {RelationRemover} from \"./RelationRemover\";\nimport { TypeORMError } from \"../error\";\n\n/**\n * Allows to work with entity relations and perform specific operations with those relations.\n *\n * todo: add transactions everywhere\n */\nexport class RelationQueryBuilder<Entity> extends QueryBuilder<Entity> {\n\n // -------------------------------------------------------------------------\n // Public Implemented Methods\n // -------------------------------------------------------------------------\n\n /**\n * Gets generated SQL query without parameters being replaced.\n */\n getQuery(): string {\n return \"\";\n }\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n /**\n * Sets entity (target) which relations will be updated.\n */\n of(entity: any|any[]): this {\n this.expressionMap.of = entity;\n return this;\n }\n\n /**\n * Sets entity relation's value.\n * Value can be entity, entity id or entity id map (if entity has composite ids).\n * Works only for many-to-one and one-to-one relations.\n * For many-to-many and one-to-many relations use #add and #remove methods instead.\n */\n async set(value: any): Promise<void> {\n const relation = this.expressionMap.relationMetadata;\n\n if (!this.expressionMap.of) // todo: move this check before relation query builder creation?\n throw new TypeORMError(`Entity whose relation needs to be set is not set. Use .of method to define whose relation you want to set.`);\n\n if (relation.isManyToMany || relation.isOneToMany)\n throw new TypeORMError(`Set operation is only supported for many-to-one and one-to-one relations. ` +\n `However given \"${relation.propertyPath}\" has ${relation.relationType} relation. ` +\n `Use .add() method instead.`);\n\n // if there are multiple join columns then user must send id map as \"value\" argument. check if he really did it\n if (relation.joinColumns &&\n relation.joinColumns.length > 1 &&\n (!(value instanceof Object) || Object.keys(value).length < relation.joinColumns.length))\n throw new TypeORMError(`Value to be set into the relation must be a map of relation ids, for example: .set({ firstName: \"...\", lastName: \"...\" })`);\n\n const updater = new RelationUpdater(this, this.expressionMap);\n return updater.update(value);\n }\n\n /**\n * Adds (binds) given value to entity relation.\n * Value can be entity, entity id or entity id map (if entity has composite ids).\n * Value also can be array of entities, array of entity ids or array of entity id maps (if entity has composite ids).\n * Works only for many-to-many and one-to-many relations.\n * For many-to-one and one-to-one use #set method instead.\n */\n async add(value: any|any[]): Promise<void> {\n if (Array.isArray(value) && value.length === 0)\n return;\n\n const relation = this.expressionMap.relationMetadata;\n\n if (!this.expressionMap.of) // todo: move this check before relation query builder creation?\n throw new TypeORMError(`Entity whose relation needs to be set is not set. Use .of method to define whose relation you want to set.`);\n\n if (relation.isManyToOne || relation.isOneToOne)\n throw new TypeORMError(`Add operation is only supported for many-to-many and one-to-many relations. ` +\n `However given \"${relation.propertyPath}\" has ${relation.relationType} relation. ` +\n `Use .set() method instead.`);\n\n // if there are multiple join columns then user must send id map as \"value\" argument. check if he really did it\n if (relation.joinColumns &&\n relation.joinColumns.length > 1 &&\n (!(value instanceof Object) || Object.keys(value).length < relation.joinColumns.length))\n throw new TypeORMError(`Value to be set into the relation must be a map of relation ids, for example: .set({ firstName: \"...\", lastName: \"...\" })`);\n\n const updater = new RelationUpdater(this, this.expressionMap);\n return updater.update(value);\n }\n\n /**\n * Removes (unbinds) given value from entity relation.\n * Value can be entity, entity id or entity id map (if entity has composite ids).\n * Value also can be array of entities, array of entity ids or array of entity id maps (if entity has composite ids).\n * Works only for many-to-many and one-to-many relations.\n * For many-to-one and one-to-one use #set method instead.\n */\n async remove(value: any|any[]): Promise<void> {\n if (Array.isArray(value) && value.length === 0)\n return;\n\n const relation = this.expressionMap.relationMetadata;\n\n if (!this.expressionMap.of) // todo: move this check before relation query builder creation?\n throw new TypeORMError(`Entity whose relation needs to be set is not set. Use .of method to define whose relation you want to set.`);\n\n if (relation.isManyToOne || relation.isOneToOne)\n throw new TypeORMError(`Add operation is only supported for many-to-many and one-to-many relations. ` +\n `However given \"${relation.propertyPath}\" has ${relation.relationType} relation. ` +\n `Use .set(null) method instead.`);\n\n const remover = new RelationRemover(this, this.expressionMap);\n return remover.remove(value);\n }\n\n /**\n * Adds (binds) and removes (unbinds) given values to/from entity relation.\n * Value can be entity, entity id or entity id map (if entity has composite ids).\n * Value also can be array of entities, array of entity ids or array of entity id maps (if entity has composite ids).\n * Works only for many-to-many and one-to-many relations.\n * For many-to-one and one-to-one use #set method instead.\n */\n async addAndRemove(added: any|any[], removed: any|any[]): Promise<void> {\n await this.remove(removed);\n await this.add(added);\n }\n\n /**\n * Gets entity's relation id.\n async getId(): Promise<any> {\n\n }*/\n\n /**\n * Gets entity's relation ids.\n async getIds(): Promise<any[]> {\n return [];\n }*/\n\n /**\n * Loads a single entity (relational) from the relation.\n * You can also provide id of relational entity to filter by.\n */\n async loadOne<T = any>(): Promise<T|undefined> {\n return this.loadMany<T>().then(results => results[0]);\n }\n\n /**\n * Loads many entities (relational) from the relation.\n * You can also provide ids of relational entities to filter by.\n */\n async loadMany<T = any>(): Promise<T[]> {\n let of = this.expressionMap.of;\n if (!(of instanceof Object)) {\n const metadata = this.expressionMap.mainAlias!.metadata;\n if (metadata.hasMultiplePrimaryKeys)\n throw new TypeORMError(`Cannot load entity because only one primary key was specified, however entity contains multiple primary keys`);\n\n of = metadata.primaryColumns[0].createValueMap(of);\n }\n\n return this.connection.relationLoader.load(this.expressionMap.relationMetadata, of, this.queryRunner);\n }\n\n}\n"],"sourceRoot":".."}
@@ -16,7 +16,7 @@ import { SelectQueryBuilderOption } from "./SelectQueryBuilderOption";
16
16
  */
17
17
  export declare class SelectQueryBuilder<Entity> extends QueryBuilder<Entity> implements WhereExpressionBuilder {
18
18
  /**
19
- * Gets generated sql query without parameters being replaced.
19
+ * Gets generated SQL query without parameters being replaced.
20
20
  */
21
21
  getQuery(): string;
22
22
  /**
@@ -41,7 +41,7 @@ var SelectQueryBuilder = /** @class */ (function (_super) {
41
41
  // Public Implemented Methods
42
42
  // -------------------------------------------------------------------------
43
43
  /**
44
- * Gets generated sql query without parameters being replaced.
44
+ * Gets generated SQL query without parameters being replaced.
45
45
  */
46
46
  SelectQueryBuilder.prototype.getQuery = function () {
47
47
  var sql = this.createComment();