taon-typeorm 18.0.23 → 19.0.0

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 (1216) hide show
  1. package/assets/shared/shared_folder_info.txt +1 -1
  2. package/package.json +1 -1
  3. package/tmp-environment.json +24 -3
  4. package/browser/esm2022/lib/index.mjs +0 -4
  5. package/browser/esm2022/lib/typeorm/cache/DbQueryResultCache.mjs +0 -251
  6. package/browser/esm2022/lib/typeorm/cache/QueryResultCache.mjs +0 -4
  7. package/browser/esm2022/lib/typeorm/cache/QueryResultCacheFactory.mjs +0 -33
  8. package/browser/esm2022/lib/typeorm/cache/QueryResultCacheOptions.mjs +0 -4
  9. package/browser/esm2022/lib/typeorm/cache/RedisQueryResultCache.mjs +0 -185
  10. package/browser/esm2022/lib/typeorm/common/DeepPartial.mjs +0 -3
  11. package/browser/esm2022/lib/typeorm/common/EntityTarget.mjs +0 -3
  12. package/browser/esm2022/lib/typeorm/common/MixedList.mjs +0 -3
  13. package/browser/esm2022/lib/typeorm/common/ObjectLiteral.mjs +0 -4
  14. package/browser/esm2022/lib/typeorm/common/ObjectType.mjs +0 -3
  15. package/browser/esm2022/lib/typeorm/common/RelationType.mjs +0 -3
  16. package/browser/esm2022/lib/typeorm/connection/Connection.mjs +0 -13
  17. package/browser/esm2022/lib/typeorm/connection/ConnectionManager.mjs +0 -57
  18. package/browser/esm2022/lib/typeorm/connection/ConnectionMetadataBuilder.mjs +0 -63
  19. package/browser/esm2022/lib/typeorm/connection/ConnectionOptions.mjs +0 -3
  20. package/browser/esm2022/lib/typeorm/connection/ConnectionOptionsReader.mjs +0 -237
  21. package/browser/esm2022/lib/typeorm/constants.mjs +0 -4
  22. package/browser/esm2022/lib/typeorm/container.mjs +0 -57
  23. package/browser/esm2022/lib/typeorm/data-source/BaseDataSourceOptions.mjs +0 -4
  24. package/browser/esm2022/lib/typeorm/data-source/DataSource.mjs +0 -458
  25. package/browser/esm2022/lib/typeorm/data-source/DataSourceOptions.mjs +0 -11
  26. package/browser/esm2022/lib/typeorm/data-source/index.mjs +0 -4
  27. package/browser/esm2022/lib/typeorm/decorator/Check.mjs +0 -25
  28. package/browser/esm2022/lib/typeorm/decorator/EntityRepository.mjs +0 -19
  29. package/browser/esm2022/lib/typeorm/decorator/Exclusion.mjs +0 -25
  30. package/browser/esm2022/lib/typeorm/decorator/Generated.mjs +0 -22
  31. package/browser/esm2022/lib/typeorm/decorator/Index.mjs +0 -52
  32. package/browser/esm2022/lib/typeorm/decorator/Unique.mjs +0 -48
  33. package/browser/esm2022/lib/typeorm/decorator/columns/Column.mjs +0 -67
  34. package/browser/esm2022/lib/typeorm/decorator/columns/CreateDateColumn.mjs +0 -19
  35. package/browser/esm2022/lib/typeorm/decorator/columns/DeleteDateColumn.mjs +0 -18
  36. package/browser/esm2022/lib/typeorm/decorator/columns/ObjectIdColumn.mjs +0 -23
  37. package/browser/esm2022/lib/typeorm/decorator/columns/PrimaryColumn.mjs +0 -54
  38. package/browser/esm2022/lib/typeorm/decorator/columns/PrimaryGeneratedColumn.mjs +0 -52
  39. package/browser/esm2022/lib/typeorm/decorator/columns/UpdateDateColumn.mjs +0 -18
  40. package/browser/esm2022/lib/typeorm/decorator/columns/VersionColumn.mjs +0 -19
  41. package/browser/esm2022/lib/typeorm/decorator/columns/ViewColumn.mjs +0 -17
  42. package/browser/esm2022/lib/typeorm/decorator/columns/VirtualColumn.mjs +0 -41
  43. package/browser/esm2022/lib/typeorm/decorator/entity/ChildEntity.mjs +0 -21
  44. package/browser/esm2022/lib/typeorm/decorator/entity/Entity.mjs +0 -28
  45. package/browser/esm2022/lib/typeorm/decorator/entity/TableInheritance.mjs +0 -20
  46. package/browser/esm2022/lib/typeorm/decorator/entity-view/ViewEntity.mjs +0 -30
  47. package/browser/esm2022/lib/typeorm/decorator/listeners/AfterInsert.mjs +0 -17
  48. package/browser/esm2022/lib/typeorm/decorator/listeners/AfterLoad.mjs +0 -17
  49. package/browser/esm2022/lib/typeorm/decorator/listeners/AfterRecover.mjs +0 -17
  50. package/browser/esm2022/lib/typeorm/decorator/listeners/AfterRemove.mjs +0 -17
  51. package/browser/esm2022/lib/typeorm/decorator/listeners/AfterSoftRemove.mjs +0 -17
  52. package/browser/esm2022/lib/typeorm/decorator/listeners/AfterUpdate.mjs +0 -17
  53. package/browser/esm2022/lib/typeorm/decorator/listeners/BeforeInsert.mjs +0 -17
  54. package/browser/esm2022/lib/typeorm/decorator/listeners/BeforeRecover.mjs +0 -17
  55. package/browser/esm2022/lib/typeorm/decorator/listeners/BeforeRemove.mjs +0 -17
  56. package/browser/esm2022/lib/typeorm/decorator/listeners/BeforeSoftRemove.mjs +0 -17
  57. package/browser/esm2022/lib/typeorm/decorator/listeners/BeforeUpdate.mjs +0 -17
  58. package/browser/esm2022/lib/typeorm/decorator/listeners/EventSubscriber.mjs +0 -15
  59. package/browser/esm2022/lib/typeorm/decorator/options/ColumnCommonOptions.mjs +0 -4
  60. package/browser/esm2022/lib/typeorm/decorator/options/ColumnEmbeddedOptions.mjs +0 -4
  61. package/browser/esm2022/lib/typeorm/decorator/options/ColumnEnumOptions.mjs +0 -4
  62. package/browser/esm2022/lib/typeorm/decorator/options/ColumnHstoreOptions.mjs +0 -4
  63. package/browser/esm2022/lib/typeorm/decorator/options/ColumnNumericOptions.mjs +0 -4
  64. package/browser/esm2022/lib/typeorm/decorator/options/ColumnOptions.mjs +0 -4
  65. package/browser/esm2022/lib/typeorm/decorator/options/ColumnWithLengthOptions.mjs +0 -4
  66. package/browser/esm2022/lib/typeorm/decorator/options/ColumnWithWidthOptions.mjs +0 -4
  67. package/browser/esm2022/lib/typeorm/decorator/options/EntityOptions.mjs +0 -4
  68. package/browser/esm2022/lib/typeorm/decorator/options/IndexOptions.mjs +0 -4
  69. package/browser/esm2022/lib/typeorm/decorator/options/JoinColumnOptions.mjs +0 -4
  70. package/browser/esm2022/lib/typeorm/decorator/options/JoinTableMultipleColumnsOptions.mjs +0 -4
  71. package/browser/esm2022/lib/typeorm/decorator/options/JoinTableOptions.mjs +0 -4
  72. package/browser/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnIdentityOptions.mjs +0 -4
  73. package/browser/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnNumericOptions.mjs +0 -4
  74. package/browser/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnUUIDOptions.mjs +0 -4
  75. package/browser/esm2022/lib/typeorm/decorator/options/RelationOptions.mjs +0 -4
  76. package/browser/esm2022/lib/typeorm/decorator/options/SpatialColumnOptions.mjs +0 -4
  77. package/browser/esm2022/lib/typeorm/decorator/options/UniqueOptions.mjs +0 -4
  78. package/browser/esm2022/lib/typeorm/decorator/options/ValueTransformer.mjs +0 -4
  79. package/browser/esm2022/lib/typeorm/decorator/options/ViewColumnOptions.mjs +0 -4
  80. package/browser/esm2022/lib/typeorm/decorator/options/ViewEntityOptions.mjs +0 -4
  81. package/browser/esm2022/lib/typeorm/decorator/options/VirtualColumnOptions.mjs +0 -4
  82. package/browser/esm2022/lib/typeorm/decorator/relations/JoinColumn.mjs +0 -25
  83. package/browser/esm2022/lib/typeorm/decorator/relations/JoinTable.mjs +0 -31
  84. package/browser/esm2022/lib/typeorm/decorator/relations/ManyToMany.mjs +0 -40
  85. package/browser/esm2022/lib/typeorm/decorator/relations/ManyToOne.mjs +0 -40
  86. package/browser/esm2022/lib/typeorm/decorator/relations/OneToMany.mjs +0 -32
  87. package/browser/esm2022/lib/typeorm/decorator/relations/OneToOne.mjs +0 -39
  88. package/browser/esm2022/lib/typeorm/decorator/relations/RelationCount.mjs +0 -20
  89. package/browser/esm2022/lib/typeorm/decorator/relations/RelationId.mjs +0 -20
  90. package/browser/esm2022/lib/typeorm/decorator/tree/Tree.mjs +0 -19
  91. package/browser/esm2022/lib/typeorm/decorator/tree/TreeChildren.mjs +0 -34
  92. package/browser/esm2022/lib/typeorm/decorator/tree/TreeLevelColumn.mjs +0 -17
  93. package/browser/esm2022/lib/typeorm/decorator/tree/TreeParent.mjs +0 -34
  94. package/browser/esm2022/lib/typeorm/driver/Driver.mjs +0 -4
  95. package/browser/esm2022/lib/typeorm/driver/DriverFactory.mjs +0 -99
  96. package/browser/esm2022/lib/typeorm/driver/DriverUtils.mjs +0 -213
  97. package/browser/esm2022/lib/typeorm/driver/Query.mjs +0 -13
  98. package/browser/esm2022/lib/typeorm/driver/SqlInMemory.mjs +0 -12
  99. package/browser/esm2022/lib/typeorm/driver/cordova/CordovaConnectionOptions.mjs +0 -4
  100. package/browser/esm2022/lib/typeorm/driver/cordova/CordovaDriver.mjs +0 -63
  101. package/browser/esm2022/lib/typeorm/driver/cordova/CordovaQueryRunner.mjs +0 -152
  102. package/browser/esm2022/lib/typeorm/driver/mongodb/typings.mjs +0 -6516
  103. package/browser/esm2022/lib/typeorm/driver/nativescript/NativescriptConnectionOptions.mjs +0 -4
  104. package/browser/esm2022/lib/typeorm/driver/nativescript/NativescriptDriver.mjs +0 -82
  105. package/browser/esm2022/lib/typeorm/driver/nativescript/NativescriptQueryRunner.mjs +0 -82
  106. package/browser/esm2022/lib/typeorm/driver/react-native/ReactNativeConnectionOptions.mjs +0 -4
  107. package/browser/esm2022/lib/typeorm/driver/react-native/ReactNativeDriver.mjs +0 -69
  108. package/browser/esm2022/lib/typeorm/driver/react-native/ReactNativeQueryRunner.mjs +0 -81
  109. package/browser/esm2022/lib/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.mjs +0 -582
  110. package/browser/esm2022/lib/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.mjs +0 -1421
  111. package/browser/esm2022/lib/typeorm/driver/sqljs/SqljsConnectionOptions.mjs +0 -4
  112. package/browser/esm2022/lib/typeorm/driver/sqljs/SqljsDriver.mjs +0 -249
  113. package/browser/esm2022/lib/typeorm/driver/sqljs/SqljsQueryRunner.mjs +0 -107
  114. package/browser/esm2022/lib/typeorm/driver/types/ColumnTypes.mjs +0 -3
  115. package/browser/esm2022/lib/typeorm/driver/types/CteCapabilities.mjs +0 -4
  116. package/browser/esm2022/lib/typeorm/driver/types/DataTypeDefaults.mjs +0 -4
  117. package/browser/esm2022/lib/typeorm/driver/types/DatabaseType.mjs +0 -3
  118. package/browser/esm2022/lib/typeorm/driver/types/IsolationLevel.mjs +0 -3
  119. package/browser/esm2022/lib/typeorm/driver/types/MappedColumnTypes.mjs +0 -4
  120. package/browser/esm2022/lib/typeorm/driver/types/MetadataTableType.mjs +0 -9
  121. package/browser/esm2022/lib/typeorm/driver/types/ReplicationMode.mjs +0 -3
  122. package/browser/esm2022/lib/typeorm/driver/types/UpsertType.mjs +0 -3
  123. package/browser/esm2022/lib/typeorm/entity-manager/EntityManager.mjs +0 -743
  124. package/browser/esm2022/lib/typeorm/entity-manager/EntityManagerFactory.mjs +0 -23
  125. package/browser/esm2022/lib/typeorm/entity-manager/SqljsEntityManager.mjs +0 -35
  126. package/browser/esm2022/lib/typeorm/entity-schema/EntitySchema.mjs +0 -12
  127. package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaCheckOptions.mjs +0 -4
  128. package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaColumnOptions.mjs +0 -4
  129. package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.mjs +0 -5
  130. package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaEmbeddedError.mjs +0 -15
  131. package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaExclusionOptions.mjs +0 -4
  132. package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaIndexOptions.mjs +0 -4
  133. package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaOptions.mjs +0 -8
  134. package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaRelationIdOptions.mjs +0 -4
  135. package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaRelationOptions.mjs +0 -4
  136. package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaTransformer.mjs +0 -268
  137. package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaUniqueOptions.mjs +0 -4
  138. package/browser/esm2022/lib/typeorm/error/AlreadyHasActiveConnectionError.mjs +0 -13
  139. package/browser/esm2022/lib/typeorm/error/CannotAttachTreeChildrenEntityError.mjs +0 -13
  140. package/browser/esm2022/lib/typeorm/error/CannotConnectAlreadyConnectedError.mjs +0 -12
  141. package/browser/esm2022/lib/typeorm/error/CannotCreateEntityIdMapError.mjs +0 -18
  142. package/browser/esm2022/lib/typeorm/error/CannotDetermineEntityError.mjs +0 -13
  143. package/browser/esm2022/lib/typeorm/error/CannotExecuteNotConnectedError.mjs +0 -12
  144. package/browser/esm2022/lib/typeorm/error/CannotGetEntityManagerNotConnectedError.mjs +0 -12
  145. package/browser/esm2022/lib/typeorm/error/CannotReflectMethodParameterTypeError.mjs +0 -15
  146. package/browser/esm2022/lib/typeorm/error/CircularRelationsError.mjs +0 -13
  147. package/browser/esm2022/lib/typeorm/error/ColumnTypeUndefinedError.mjs +0 -16
  148. package/browser/esm2022/lib/typeorm/error/ConnectionIsNotSetError.mjs +0 -12
  149. package/browser/esm2022/lib/typeorm/error/ConnectionNotFoundError.mjs +0 -12
  150. package/browser/esm2022/lib/typeorm/error/CustomRepositoryCannotInheritRepositoryError.mjs +0 -15
  151. package/browser/esm2022/lib/typeorm/error/CustomRepositoryDoesNotHaveEntityError.mjs +0 -15
  152. package/browser/esm2022/lib/typeorm/error/CustomRepositoryNotFoundError.mjs +0 -15
  153. package/browser/esm2022/lib/typeorm/error/DataTypeNotSupportedError.mjs +0 -11
  154. package/browser/esm2022/lib/typeorm/error/DriverOptionNotSetError.mjs +0 -13
  155. package/browser/esm2022/lib/typeorm/error/DriverPackageNotInstalledError.mjs +0 -13
  156. package/browser/esm2022/lib/typeorm/error/EntityMetadataNotFoundError.mjs +0 -26
  157. package/browser/esm2022/lib/typeorm/error/EntityNotFoundError.mjs +0 -37
  158. package/browser/esm2022/lib/typeorm/error/EntityPropertyNotFoundError.mjs +0 -14
  159. package/browser/esm2022/lib/typeorm/error/FindRelationsNotFoundError.mjs +0 -20
  160. package/browser/esm2022/lib/typeorm/error/InitializedRelationError.mjs +0 -17
  161. package/browser/esm2022/lib/typeorm/error/InsertValuesMissingError.mjs +0 -13
  162. package/browser/esm2022/lib/typeorm/error/LimitOnUpdateNotSupportedError.mjs +0 -12
  163. package/browser/esm2022/lib/typeorm/error/LockNotSupportedOnGivenDriverError.mjs +0 -12
  164. package/browser/esm2022/lib/typeorm/error/MetadataAlreadyExistsError.mjs +0 -15
  165. package/browser/esm2022/lib/typeorm/error/MetadataWithSuchNameAlreadyExistsError.mjs +0 -13
  166. package/browser/esm2022/lib/typeorm/error/MissingDeleteDateColumnError.mjs +0 -9
  167. package/browser/esm2022/lib/typeorm/error/MissingDriverError.mjs +0 -13
  168. package/browser/esm2022/lib/typeorm/error/MissingJoinColumnError.mjs +0 -20
  169. package/browser/esm2022/lib/typeorm/error/MissingJoinTableError.mjs +0 -20
  170. package/browser/esm2022/lib/typeorm/error/MissingPrimaryColumnError.mjs +0 -10
  171. package/browser/esm2022/lib/typeorm/error/MustBeEntityError.mjs +0 -12
  172. package/browser/esm2022/lib/typeorm/error/NamingStrategyNotFoundError.mjs +0 -18
  173. package/browser/esm2022/lib/typeorm/error/NestedSetMultipleRootError.mjs +0 -9
  174. package/browser/esm2022/lib/typeorm/error/NoConnectionForRepositoryError.mjs +0 -13
  175. package/browser/esm2022/lib/typeorm/error/NoConnectionOptionError.mjs +0 -13
  176. package/browser/esm2022/lib/typeorm/error/NoNeedToReleaseEntityManagerError.mjs +0 -14
  177. package/browser/esm2022/lib/typeorm/error/NoVersionOrUpdateDateColumnError.mjs +0 -12
  178. package/browser/esm2022/lib/typeorm/error/OffsetWithoutLimitNotSupportedError.mjs +0 -14
  179. package/browser/esm2022/lib/typeorm/error/OptimisticLockCanNotBeUsedError.mjs +0 -12
  180. package/browser/esm2022/lib/typeorm/error/OptimisticLockVersionMismatchError.mjs +0 -12
  181. package/browser/esm2022/lib/typeorm/error/PersistedEntityNotFoundError.mjs +0 -12
  182. package/browser/esm2022/lib/typeorm/error/PessimisticLockTransactionRequiredError.mjs +0 -12
  183. package/browser/esm2022/lib/typeorm/error/PrimaryColumnCannotBeNullableError.mjs +0 -10
  184. package/browser/esm2022/lib/typeorm/error/QueryFailedError.mjs +0 -27
  185. package/browser/esm2022/lib/typeorm/error/QueryRunnerAlreadyReleasedError.mjs +0 -9
  186. package/browser/esm2022/lib/typeorm/error/QueryRunnerProviderAlreadyReleasedError.mjs +0 -13
  187. package/browser/esm2022/lib/typeorm/error/RepositoryNotTreeError.mjs +0 -29
  188. package/browser/esm2022/lib/typeorm/error/ReturningStatementNotSupportedError.mjs +0 -13
  189. package/browser/esm2022/lib/typeorm/error/SubjectRemovedAndUpdatedError.mjs +0 -13
  190. package/browser/esm2022/lib/typeorm/error/SubjectWithoutIdentifierError.mjs +0 -14
  191. package/browser/esm2022/lib/typeorm/error/TransactionAlreadyStartedError.mjs +0 -12
  192. package/browser/esm2022/lib/typeorm/error/TransactionNotStartedError.mjs +0 -12
  193. package/browser/esm2022/lib/typeorm/error/TreeRepositoryNotSupportedError.mjs +0 -9
  194. package/browser/esm2022/lib/typeorm/error/TypeORMError.mjs +0 -18
  195. package/browser/esm2022/lib/typeorm/error/UpdateValuesMissingError.mjs +0 -9
  196. package/browser/esm2022/lib/typeorm/error/UsingJoinColumnIsNotAllowedError.mjs +0 -10
  197. package/browser/esm2022/lib/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.mjs +0 -11
  198. package/browser/esm2022/lib/typeorm/error/UsingJoinTableIsNotAllowedError.mjs +0 -11
  199. package/browser/esm2022/lib/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.mjs +0 -11
  200. package/browser/esm2022/lib/typeorm/error/index.mjs +0 -63
  201. package/browser/esm2022/lib/typeorm/find-options/EqualOperator.mjs +0 -10
  202. package/browser/esm2022/lib/typeorm/find-options/FindManyOptions.mjs +0 -4
  203. package/browser/esm2022/lib/typeorm/find-options/FindOneOptions.mjs +0 -4
  204. package/browser/esm2022/lib/typeorm/find-options/FindOperator.mjs +0 -74
  205. package/browser/esm2022/lib/typeorm/find-options/FindOperatorType.mjs +0 -3
  206. package/browser/esm2022/lib/typeorm/find-options/FindOptionsOrder.mjs +0 -3
  207. package/browser/esm2022/lib/typeorm/find-options/FindOptionsRelations.mjs +0 -3
  208. package/browser/esm2022/lib/typeorm/find-options/FindOptionsSelect.mjs +0 -5
  209. package/browser/esm2022/lib/typeorm/find-options/FindOptionsUtils.mjs +0 -293
  210. package/browser/esm2022/lib/typeorm/find-options/FindOptionsWhere.mjs +0 -3
  211. package/browser/esm2022/lib/typeorm/find-options/FindTreeOptions.mjs +0 -4
  212. package/browser/esm2022/lib/typeorm/find-options/JoinOptions.mjs +0 -4
  213. package/browser/esm2022/lib/typeorm/find-options/OrderByCondition.mjs +0 -3
  214. package/browser/esm2022/lib/typeorm/find-options/operator/Any.mjs +0 -11
  215. package/browser/esm2022/lib/typeorm/find-options/operator/ArrayContainedBy.mjs +0 -11
  216. package/browser/esm2022/lib/typeorm/find-options/operator/ArrayContains.mjs +0 -11
  217. package/browser/esm2022/lib/typeorm/find-options/operator/ArrayOverlap.mjs +0 -11
  218. package/browser/esm2022/lib/typeorm/find-options/operator/Between.mjs +0 -11
  219. package/browser/esm2022/lib/typeorm/find-options/operator/Equal.mjs +0 -15
  220. package/browser/esm2022/lib/typeorm/find-options/operator/ILike.mjs +0 -11
  221. package/browser/esm2022/lib/typeorm/find-options/operator/In.mjs +0 -11
  222. package/browser/esm2022/lib/typeorm/find-options/operator/IsNull.mjs +0 -11
  223. package/browser/esm2022/lib/typeorm/find-options/operator/LessThan.mjs +0 -11
  224. package/browser/esm2022/lib/typeorm/find-options/operator/LessThanOrEqual.mjs +0 -11
  225. package/browser/esm2022/lib/typeorm/find-options/operator/Like.mjs +0 -11
  226. package/browser/esm2022/lib/typeorm/find-options/operator/MoreThan.mjs +0 -11
  227. package/browser/esm2022/lib/typeorm/find-options/operator/MoreThanOrEqual.mjs +0 -11
  228. package/browser/esm2022/lib/typeorm/find-options/operator/Not.mjs +0 -12
  229. package/browser/esm2022/lib/typeorm/find-options/operator/Raw.mjs +0 -10
  230. package/browser/esm2022/lib/typeorm/globals.mjs +0 -165
  231. package/browser/esm2022/lib/typeorm/index.mjs +0 -157
  232. package/browser/esm2022/lib/typeorm/logger/AdvancedConsoleLogger.mjs +0 -109
  233. package/browser/esm2022/lib/typeorm/logger/DebugLogger.mjs +0 -94
  234. package/browser/esm2022/lib/typeorm/logger/Logger.mjs +0 -4
  235. package/browser/esm2022/lib/typeorm/logger/LoggerFactory.mjs +0 -36
  236. package/browser/esm2022/lib/typeorm/logger/LoggerOptions.mjs +0 -3
  237. package/browser/esm2022/lib/typeorm/logger/SimpleConsoleLogger.mjs +0 -108
  238. package/browser/esm2022/lib/typeorm/metadata/CheckMetadata.mjs +0 -26
  239. package/browser/esm2022/lib/typeorm/metadata/ColumnMetadata.mjs +0 -553
  240. package/browser/esm2022/lib/typeorm/metadata/EmbeddedMetadata.mjs +0 -206
  241. package/browser/esm2022/lib/typeorm/metadata/EntityListenerMetadata.mjs +0 -52
  242. package/browser/esm2022/lib/typeorm/metadata/EntityMetadata.mjs +0 -636
  243. package/browser/esm2022/lib/typeorm/metadata/ExclusionMetadata.mjs +0 -26
  244. package/browser/esm2022/lib/typeorm/metadata/ForeignKeyMetadata.mjs +0 -48
  245. package/browser/esm2022/lib/typeorm/metadata/IndexMetadata.mjs +0 -131
  246. package/browser/esm2022/lib/typeorm/metadata/RelationCountMetadata.mjs +0 -30
  247. package/browser/esm2022/lib/typeorm/metadata/RelationIdMetadata.mjs +0 -50
  248. package/browser/esm2022/lib/typeorm/metadata/RelationMetadata.mjs +0 -398
  249. package/browser/esm2022/lib/typeorm/metadata/UniqueMetadata.mjs +0 -90
  250. package/browser/esm2022/lib/typeorm/metadata/types/ClosureTreeOptions.mjs +0 -4
  251. package/browser/esm2022/lib/typeorm/metadata/types/DeferrableType.mjs +0 -3
  252. package/browser/esm2022/lib/typeorm/metadata/types/EventListenerTypes.mjs +0 -19
  253. package/browser/esm2022/lib/typeorm/metadata/types/OnDeleteType.mjs +0 -3
  254. package/browser/esm2022/lib/typeorm/metadata/types/OnUpdateType.mjs +0 -3
  255. package/browser/esm2022/lib/typeorm/metadata/types/PropertyTypeInFunction.mjs +0 -3
  256. package/browser/esm2022/lib/typeorm/metadata/types/RelationTypeInFunction.mjs +0 -3
  257. package/browser/esm2022/lib/typeorm/metadata/types/RelationTypes.mjs +0 -3
  258. package/browser/esm2022/lib/typeorm/metadata/types/TableTypes.mjs +0 -3
  259. package/browser/esm2022/lib/typeorm/metadata/types/TreeTypes.mjs +0 -3
  260. package/browser/esm2022/lib/typeorm/metadata-args/CheckMetadataArgs.mjs +0 -4
  261. package/browser/esm2022/lib/typeorm/metadata-args/ColumnMetadataArgs.mjs +0 -4
  262. package/browser/esm2022/lib/typeorm/metadata-args/DiscriminatorValueMetadataArgs.mjs +0 -4
  263. package/browser/esm2022/lib/typeorm/metadata-args/EmbeddedMetadataArgs.mjs +0 -4
  264. package/browser/esm2022/lib/typeorm/metadata-args/EntityListenerMetadataArgs.mjs +0 -4
  265. package/browser/esm2022/lib/typeorm/metadata-args/EntityRepositoryMetadataArgs.mjs +0 -4
  266. package/browser/esm2022/lib/typeorm/metadata-args/EntitySubscriberMetadataArgs.mjs +0 -4
  267. package/browser/esm2022/lib/typeorm/metadata-args/ExclusionMetadataArgs.mjs +0 -4
  268. package/browser/esm2022/lib/typeorm/metadata-args/GeneratedMetadataArgs.mjs +0 -4
  269. package/browser/esm2022/lib/typeorm/metadata-args/IndexMetadataArgs.mjs +0 -4
  270. package/browser/esm2022/lib/typeorm/metadata-args/InheritanceMetadataArgs.mjs +0 -4
  271. package/browser/esm2022/lib/typeorm/metadata-args/JoinColumnMetadataArgs.mjs +0 -4
  272. package/browser/esm2022/lib/typeorm/metadata-args/JoinTableMetadataArgs.mjs +0 -4
  273. package/browser/esm2022/lib/typeorm/metadata-args/MetadataArgsStorage.mjs +0 -217
  274. package/browser/esm2022/lib/typeorm/metadata-args/NamingStrategyMetadataArgs.mjs +0 -4
  275. package/browser/esm2022/lib/typeorm/metadata-args/RelationCountMetadataArgs.mjs +0 -4
  276. package/browser/esm2022/lib/typeorm/metadata-args/RelationIdMetadataArgs.mjs +0 -4
  277. package/browser/esm2022/lib/typeorm/metadata-args/RelationMetadataArgs.mjs +0 -4
  278. package/browser/esm2022/lib/typeorm/metadata-args/TableMetadataArgs.mjs +0 -4
  279. package/browser/esm2022/lib/typeorm/metadata-args/TransactionEntityMetadataArgs.mjs +0 -4
  280. package/browser/esm2022/lib/typeorm/metadata-args/TransactionRepositoryMetadataArgs.mjs +0 -4
  281. package/browser/esm2022/lib/typeorm/metadata-args/TreeMetadataArgs.mjs +0 -4
  282. package/browser/esm2022/lib/typeorm/metadata-args/UniqueMetadataArgs.mjs +0 -4
  283. package/browser/esm2022/lib/typeorm/metadata-args/types/ColumnMode.mjs +0 -3
  284. package/browser/esm2022/lib/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.mjs +0 -131
  285. package/browser/esm2022/lib/typeorm/metadata-builder/EntityMetadataBuilder.mjs +0 -678
  286. package/browser/esm2022/lib/typeorm/metadata-builder/EntityMetadataValidator.mjs +0 -183
  287. package/browser/esm2022/lib/typeorm/metadata-builder/JunctionEntityMetadataBuilder.mjs +0 -262
  288. package/browser/esm2022/lib/typeorm/metadata-builder/MetadataUtils.mjs +0 -41
  289. package/browser/esm2022/lib/typeorm/metadata-builder/RelationJoinColumnBuilder.mjs +0 -167
  290. package/browser/esm2022/lib/typeorm/migration/Migration.mjs +0 -14
  291. package/browser/esm2022/lib/typeorm/migration/MigrationExecutor.mjs +0 -454
  292. package/browser/esm2022/lib/typeorm/migration/MigrationInterface.mjs +0 -4
  293. package/browser/esm2022/lib/typeorm/naming-strategy/DefaultNamingStrategy.mjs +0 -140
  294. package/browser/esm2022/lib/typeorm/naming-strategy/NamingStrategyInterface.mjs +0 -4
  295. package/browser/esm2022/lib/typeorm/persistence/EntityPersistExecutor.mjs +0 -125
  296. package/browser/esm2022/lib/typeorm/persistence/Subject.mjs +0 -212
  297. package/browser/esm2022/lib/typeorm/persistence/SubjectChangeMap.mjs +0 -4
  298. package/browser/esm2022/lib/typeorm/persistence/SubjectChangedColumnsComputer.mjs +0 -164
  299. package/browser/esm2022/lib/typeorm/persistence/SubjectDatabaseEntityLoader.mjs +0 -125
  300. package/browser/esm2022/lib/typeorm/persistence/SubjectExecutor.mjs +0 -721
  301. package/browser/esm2022/lib/typeorm/persistence/SubjectTopoligicalSorter.mjs +0 -151
  302. package/browser/esm2022/lib/typeorm/persistence/subject-builder/CascadesSubjectBuilder.mjs +0 -84
  303. package/browser/esm2022/lib/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.mjs +0 -153
  304. package/browser/esm2022/lib/typeorm/persistence/subject-builder/OneToManySubjectBuilder.mjs +0 -117
  305. package/browser/esm2022/lib/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.mjs +0 -95
  306. package/browser/esm2022/lib/typeorm/persistence/tree/ClosureSubjectExecutor.mjs +0 -220
  307. package/browser/esm2022/lib/typeorm/persistence/tree/MaterializedPathSubjectExecutor.mjs +0 -97
  308. package/browser/esm2022/lib/typeorm/persistence/tree/NestedSetSubjectExecutor.mjs +0 -250
  309. package/browser/esm2022/lib/typeorm/platform/PlatformTools.mjs +0 -346
  310. package/browser/esm2022/lib/typeorm/query-builder/Alias.mjs +0 -26
  311. package/browser/esm2022/lib/typeorm/query-builder/Brackets.mjs +0 -16
  312. package/browser/esm2022/lib/typeorm/query-builder/DeleteQueryBuilder.mjs +0 -181
  313. package/browser/esm2022/lib/typeorm/query-builder/InsertOrUpdateOptions.mjs +0 -3
  314. package/browser/esm2022/lib/typeorm/query-builder/InsertQueryBuilder.mjs +0 -651
  315. package/browser/esm2022/lib/typeorm/query-builder/JoinAttribute.mjs +0 -153
  316. package/browser/esm2022/lib/typeorm/query-builder/NotBrackets.mjs +0 -14
  317. package/browser/esm2022/lib/typeorm/query-builder/QueryBuilder.mjs +0 -967
  318. package/browser/esm2022/lib/typeorm/query-builder/QueryBuilderCte.mjs +0 -4
  319. package/browser/esm2022/lib/typeorm/query-builder/QueryBuilderUtils.mjs +0 -22
  320. package/browser/esm2022/lib/typeorm/query-builder/QueryExpressionMap.mjs +0 -309
  321. package/browser/esm2022/lib/typeorm/query-builder/QueryPartialEntity.mjs +0 -3
  322. package/browser/esm2022/lib/typeorm/query-builder/RelationIdLoader.mjs +0 -452
  323. package/browser/esm2022/lib/typeorm/query-builder/RelationLoader.mjs +0 -262
  324. package/browser/esm2022/lib/typeorm/query-builder/RelationQueryBuilder.mjs +0 -147
  325. package/browser/esm2022/lib/typeorm/query-builder/RelationRemover.mjs +0 -130
  326. package/browser/esm2022/lib/typeorm/query-builder/RelationUpdater.mjs +0 -141
  327. package/browser/esm2022/lib/typeorm/query-builder/ReturningResultsEntityUpdator.mjs +0 -141
  328. package/browser/esm2022/lib/typeorm/query-builder/SelectQuery.mjs +0 -4
  329. package/browser/esm2022/lib/typeorm/query-builder/SelectQueryBuilder.mjs +0 -2278
  330. package/browser/esm2022/lib/typeorm/query-builder/SelectQueryBuilderOption.mjs +0 -3
  331. package/browser/esm2022/lib/typeorm/query-builder/SoftDeleteQueryBuilder.mjs +0 -348
  332. package/browser/esm2022/lib/typeorm/query-builder/UpdateQueryBuilder.mjs +0 -510
  333. package/browser/esm2022/lib/typeorm/query-builder/WhereClause.mjs +0 -3
  334. package/browser/esm2022/lib/typeorm/query-builder/WhereExpressionBuilder.mjs +0 -4
  335. package/browser/esm2022/lib/typeorm/query-builder/relation-count/RelationCountAttribute.mjs +0 -71
  336. package/browser/esm2022/lib/typeorm/query-builder/relation-count/RelationCountLoadResult.mjs +0 -4
  337. package/browser/esm2022/lib/typeorm/query-builder/relation-count/RelationCountLoader.mjs +0 -142
  338. package/browser/esm2022/lib/typeorm/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.mjs +0 -33
  339. package/browser/esm2022/lib/typeorm/query-builder/relation-id/RelationIdAttribute.mjs +0 -79
  340. package/browser/esm2022/lib/typeorm/query-builder/relation-id/RelationIdLoadResult.mjs +0 -4
  341. package/browser/esm2022/lib/typeorm/query-builder/relation-id/RelationIdLoader.mjs +0 -247
  342. package/browser/esm2022/lib/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.mjs +0 -33
  343. package/browser/esm2022/lib/typeorm/query-builder/result/DeleteResult.mjs +0 -14
  344. package/browser/esm2022/lib/typeorm/query-builder/result/InsertResult.mjs +0 -25
  345. package/browser/esm2022/lib/typeorm/query-builder/result/UpdateResult.mjs +0 -25
  346. package/browser/esm2022/lib/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.mjs +0 -101
  347. package/browser/esm2022/lib/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.mjs +0 -67
  348. package/browser/esm2022/lib/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.mjs +0 -366
  349. package/browser/esm2022/lib/typeorm/query-runner/BaseQueryRunner.mjs +0 -392
  350. package/browser/esm2022/lib/typeorm/query-runner/QueryResult.mjs +0 -14
  351. package/browser/esm2022/lib/typeorm/query-runner/QueryRunner.mjs +0 -4
  352. package/browser/esm2022/lib/typeorm/repository/AbstractRepository.mjs +0 -80
  353. package/browser/esm2022/lib/typeorm/repository/BaseEntity.mjs +0 -283
  354. package/browser/esm2022/lib/typeorm/repository/FindTreesOptions.mjs +0 -4
  355. package/browser/esm2022/lib/typeorm/repository/RemoveOptions.mjs +0 -4
  356. package/browser/esm2022/lib/typeorm/repository/Repository.mjs +0 -275
  357. package/browser/esm2022/lib/typeorm/repository/SaveOptions.mjs +0 -4
  358. package/browser/esm2022/lib/typeorm/repository/TreeRepository.mjs +0 -254
  359. package/browser/esm2022/lib/typeorm/repository/UpsertOptions.mjs +0 -7
  360. package/browser/esm2022/lib/typeorm/schema-builder/RdbmsSchemaBuilder.mjs +0 -770
  361. package/browser/esm2022/lib/typeorm/schema-builder/SchemaBuilder.mjs +0 -4
  362. package/browser/esm2022/lib/typeorm/schema-builder/options/TableCheckOptions.mjs +0 -4
  363. package/browser/esm2022/lib/typeorm/schema-builder/options/TableColumnOptions.mjs +0 -4
  364. package/browser/esm2022/lib/typeorm/schema-builder/options/TableExclusionOptions.mjs +0 -4
  365. package/browser/esm2022/lib/typeorm/schema-builder/options/TableForeignKeyOptions.mjs +0 -4
  366. package/browser/esm2022/lib/typeorm/schema-builder/options/TableIndexOptions.mjs +0 -4
  367. package/browser/esm2022/lib/typeorm/schema-builder/options/TableOptions.mjs +0 -4
  368. package/browser/esm2022/lib/typeorm/schema-builder/options/TableUniqueOptions.mjs +0 -4
  369. package/browser/esm2022/lib/typeorm/schema-builder/options/ViewOptions.mjs +0 -4
  370. package/browser/esm2022/lib/typeorm/schema-builder/table/Table.mjs +0 -274
  371. package/browser/esm2022/lib/typeorm/schema-builder/table/TableCheck.mjs +0 -37
  372. package/browser/esm2022/lib/typeorm/schema-builder/table/TableColumn.mjs +0 -108
  373. package/browser/esm2022/lib/typeorm/schema-builder/table/TableExclusion.mjs +0 -31
  374. package/browser/esm2022/lib/typeorm/schema-builder/table/TableForeignKey.mjs +0 -60
  375. package/browser/esm2022/lib/typeorm/schema-builder/table/TableIndex.mjs +0 -53
  376. package/browser/esm2022/lib/typeorm/schema-builder/table/TableUnique.mjs +0 -38
  377. package/browser/esm2022/lib/typeorm/schema-builder/util/TableUtils.mjs +0 -38
  378. package/browser/esm2022/lib/typeorm/schema-builder/util/ViewUtils.mjs +0 -24
  379. package/browser/esm2022/lib/typeorm/schema-builder/view/View.mjs +0 -43
  380. package/browser/esm2022/lib/typeorm/subscriber/Broadcaster.mjs +0 -596
  381. package/browser/esm2022/lib/typeorm/subscriber/BroadcasterResult.mjs +0 -27
  382. package/browser/esm2022/lib/typeorm/subscriber/EntitySubscriberInterface.mjs +0 -4
  383. package/browser/esm2022/lib/typeorm/subscriber/event/InsertEvent.mjs +0 -4
  384. package/browser/esm2022/lib/typeorm/subscriber/event/LoadEvent.mjs +0 -4
  385. package/browser/esm2022/lib/typeorm/subscriber/event/RecoverEvent.mjs +0 -4
  386. package/browser/esm2022/lib/typeorm/subscriber/event/RemoveEvent.mjs +0 -4
  387. package/browser/esm2022/lib/typeorm/subscriber/event/SoftRemoveEvent.mjs +0 -4
  388. package/browser/esm2022/lib/typeorm/subscriber/event/TransactionCommitEvent.mjs +0 -4
  389. package/browser/esm2022/lib/typeorm/subscriber/event/TransactionRollbackEvent.mjs +0 -4
  390. package/browser/esm2022/lib/typeorm/subscriber/event/TransactionStartEvent.mjs +0 -4
  391. package/browser/esm2022/lib/typeorm/subscriber/event/UpdateEvent.mjs +0 -4
  392. package/browser/esm2022/lib/typeorm/util/ApplyValueTransformers.mjs +0 -22
  393. package/browser/esm2022/lib/typeorm/util/DateUtils.mjs +0 -216
  394. package/browser/esm2022/lib/typeorm/util/DepGraph.mjs +0 -222
  395. package/browser/esm2022/lib/typeorm/util/DirectoryExportedClassesLoader.mjs +0 -76
  396. package/browser/esm2022/lib/typeorm/util/ImportUtils.mjs +0 -86
  397. package/browser/esm2022/lib/typeorm/util/InstanceChecker.mjs +0 -114
  398. package/browser/esm2022/lib/typeorm/util/ObjectUtils.mjs +0 -38
  399. package/browser/esm2022/lib/typeorm/util/OrmUtils.mjs +0 -310
  400. package/browser/esm2022/lib/typeorm/util/PathUtils.mjs +0 -38
  401. package/browser/esm2022/lib/typeorm/util/RandomGenerator.mjs +0 -150
  402. package/browser/esm2022/lib/typeorm/util/StringUtils.mjs +0 -108
  403. package/browser/esm2022/lib/typeorm/util/TreeRepositoryUtils.mjs +0 -53
  404. package/browser/esm2022/lib/typeorm/util/VersionUtils.mjs +0 -17
  405. package/browser/esm2022/lib/typeorm/util/escapeRegExp.mjs +0 -4
  406. package/browser/esm2022/public-api.mjs +0 -2
  407. package/browser/esm2022/taon-typeorm.mjs +0 -5
  408. package/client/esm2022/lib/index.mjs +0 -4
  409. package/client/esm2022/lib/typeorm/cache/DbQueryResultCache.mjs +0 -251
  410. package/client/esm2022/lib/typeorm/cache/QueryResultCache.mjs +0 -4
  411. package/client/esm2022/lib/typeorm/cache/QueryResultCacheFactory.mjs +0 -33
  412. package/client/esm2022/lib/typeorm/cache/QueryResultCacheOptions.mjs +0 -4
  413. package/client/esm2022/lib/typeorm/cache/RedisQueryResultCache.mjs +0 -185
  414. package/client/esm2022/lib/typeorm/common/DeepPartial.mjs +0 -3
  415. package/client/esm2022/lib/typeorm/common/EntityTarget.mjs +0 -3
  416. package/client/esm2022/lib/typeorm/common/MixedList.mjs +0 -3
  417. package/client/esm2022/lib/typeorm/common/ObjectLiteral.mjs +0 -4
  418. package/client/esm2022/lib/typeorm/common/ObjectType.mjs +0 -3
  419. package/client/esm2022/lib/typeorm/common/RelationType.mjs +0 -3
  420. package/client/esm2022/lib/typeorm/connection/Connection.mjs +0 -13
  421. package/client/esm2022/lib/typeorm/connection/ConnectionManager.mjs +0 -57
  422. package/client/esm2022/lib/typeorm/connection/ConnectionMetadataBuilder.mjs +0 -63
  423. package/client/esm2022/lib/typeorm/connection/ConnectionOptions.mjs +0 -3
  424. package/client/esm2022/lib/typeorm/connection/ConnectionOptionsReader.mjs +0 -237
  425. package/client/esm2022/lib/typeorm/constants.mjs +0 -4
  426. package/client/esm2022/lib/typeorm/container.mjs +0 -57
  427. package/client/esm2022/lib/typeorm/data-source/BaseDataSourceOptions.mjs +0 -4
  428. package/client/esm2022/lib/typeorm/data-source/DataSource.mjs +0 -458
  429. package/client/esm2022/lib/typeorm/data-source/DataSourceOptions.mjs +0 -11
  430. package/client/esm2022/lib/typeorm/data-source/index.mjs +0 -4
  431. package/client/esm2022/lib/typeorm/decorator/Check.mjs +0 -25
  432. package/client/esm2022/lib/typeorm/decorator/EntityRepository.mjs +0 -19
  433. package/client/esm2022/lib/typeorm/decorator/Exclusion.mjs +0 -25
  434. package/client/esm2022/lib/typeorm/decorator/Generated.mjs +0 -22
  435. package/client/esm2022/lib/typeorm/decorator/Index.mjs +0 -52
  436. package/client/esm2022/lib/typeorm/decorator/Unique.mjs +0 -48
  437. package/client/esm2022/lib/typeorm/decorator/columns/Column.mjs +0 -67
  438. package/client/esm2022/lib/typeorm/decorator/columns/CreateDateColumn.mjs +0 -19
  439. package/client/esm2022/lib/typeorm/decorator/columns/DeleteDateColumn.mjs +0 -18
  440. package/client/esm2022/lib/typeorm/decorator/columns/ObjectIdColumn.mjs +0 -23
  441. package/client/esm2022/lib/typeorm/decorator/columns/PrimaryColumn.mjs +0 -54
  442. package/client/esm2022/lib/typeorm/decorator/columns/PrimaryGeneratedColumn.mjs +0 -52
  443. package/client/esm2022/lib/typeorm/decorator/columns/UpdateDateColumn.mjs +0 -18
  444. package/client/esm2022/lib/typeorm/decorator/columns/VersionColumn.mjs +0 -19
  445. package/client/esm2022/lib/typeorm/decorator/columns/ViewColumn.mjs +0 -17
  446. package/client/esm2022/lib/typeorm/decorator/columns/VirtualColumn.mjs +0 -41
  447. package/client/esm2022/lib/typeorm/decorator/entity/ChildEntity.mjs +0 -21
  448. package/client/esm2022/lib/typeorm/decorator/entity/Entity.mjs +0 -28
  449. package/client/esm2022/lib/typeorm/decorator/entity/TableInheritance.mjs +0 -20
  450. package/client/esm2022/lib/typeorm/decorator/entity-view/ViewEntity.mjs +0 -30
  451. package/client/esm2022/lib/typeorm/decorator/listeners/AfterInsert.mjs +0 -17
  452. package/client/esm2022/lib/typeorm/decorator/listeners/AfterLoad.mjs +0 -17
  453. package/client/esm2022/lib/typeorm/decorator/listeners/AfterRecover.mjs +0 -17
  454. package/client/esm2022/lib/typeorm/decorator/listeners/AfterRemove.mjs +0 -17
  455. package/client/esm2022/lib/typeorm/decorator/listeners/AfterSoftRemove.mjs +0 -17
  456. package/client/esm2022/lib/typeorm/decorator/listeners/AfterUpdate.mjs +0 -17
  457. package/client/esm2022/lib/typeorm/decorator/listeners/BeforeInsert.mjs +0 -17
  458. package/client/esm2022/lib/typeorm/decorator/listeners/BeforeRecover.mjs +0 -17
  459. package/client/esm2022/lib/typeorm/decorator/listeners/BeforeRemove.mjs +0 -17
  460. package/client/esm2022/lib/typeorm/decorator/listeners/BeforeSoftRemove.mjs +0 -17
  461. package/client/esm2022/lib/typeorm/decorator/listeners/BeforeUpdate.mjs +0 -17
  462. package/client/esm2022/lib/typeorm/decorator/listeners/EventSubscriber.mjs +0 -15
  463. package/client/esm2022/lib/typeorm/decorator/options/ColumnCommonOptions.mjs +0 -4
  464. package/client/esm2022/lib/typeorm/decorator/options/ColumnEmbeddedOptions.mjs +0 -4
  465. package/client/esm2022/lib/typeorm/decorator/options/ColumnEnumOptions.mjs +0 -4
  466. package/client/esm2022/lib/typeorm/decorator/options/ColumnHstoreOptions.mjs +0 -4
  467. package/client/esm2022/lib/typeorm/decorator/options/ColumnNumericOptions.mjs +0 -4
  468. package/client/esm2022/lib/typeorm/decorator/options/ColumnOptions.mjs +0 -4
  469. package/client/esm2022/lib/typeorm/decorator/options/ColumnWithLengthOptions.mjs +0 -4
  470. package/client/esm2022/lib/typeorm/decorator/options/ColumnWithWidthOptions.mjs +0 -4
  471. package/client/esm2022/lib/typeorm/decorator/options/EntityOptions.mjs +0 -4
  472. package/client/esm2022/lib/typeorm/decorator/options/IndexOptions.mjs +0 -4
  473. package/client/esm2022/lib/typeorm/decorator/options/JoinColumnOptions.mjs +0 -4
  474. package/client/esm2022/lib/typeorm/decorator/options/JoinTableMultipleColumnsOptions.mjs +0 -4
  475. package/client/esm2022/lib/typeorm/decorator/options/JoinTableOptions.mjs +0 -4
  476. package/client/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnIdentityOptions.mjs +0 -4
  477. package/client/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnNumericOptions.mjs +0 -4
  478. package/client/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnUUIDOptions.mjs +0 -4
  479. package/client/esm2022/lib/typeorm/decorator/options/RelationOptions.mjs +0 -4
  480. package/client/esm2022/lib/typeorm/decorator/options/SpatialColumnOptions.mjs +0 -4
  481. package/client/esm2022/lib/typeorm/decorator/options/UniqueOptions.mjs +0 -4
  482. package/client/esm2022/lib/typeorm/decorator/options/ValueTransformer.mjs +0 -4
  483. package/client/esm2022/lib/typeorm/decorator/options/ViewColumnOptions.mjs +0 -4
  484. package/client/esm2022/lib/typeorm/decorator/options/ViewEntityOptions.mjs +0 -4
  485. package/client/esm2022/lib/typeorm/decorator/options/VirtualColumnOptions.mjs +0 -4
  486. package/client/esm2022/lib/typeorm/decorator/relations/JoinColumn.mjs +0 -25
  487. package/client/esm2022/lib/typeorm/decorator/relations/JoinTable.mjs +0 -31
  488. package/client/esm2022/lib/typeorm/decorator/relations/ManyToMany.mjs +0 -40
  489. package/client/esm2022/lib/typeorm/decorator/relations/ManyToOne.mjs +0 -40
  490. package/client/esm2022/lib/typeorm/decorator/relations/OneToMany.mjs +0 -32
  491. package/client/esm2022/lib/typeorm/decorator/relations/OneToOne.mjs +0 -39
  492. package/client/esm2022/lib/typeorm/decorator/relations/RelationCount.mjs +0 -20
  493. package/client/esm2022/lib/typeorm/decorator/relations/RelationId.mjs +0 -20
  494. package/client/esm2022/lib/typeorm/decorator/tree/Tree.mjs +0 -19
  495. package/client/esm2022/lib/typeorm/decorator/tree/TreeChildren.mjs +0 -34
  496. package/client/esm2022/lib/typeorm/decorator/tree/TreeLevelColumn.mjs +0 -17
  497. package/client/esm2022/lib/typeorm/decorator/tree/TreeParent.mjs +0 -34
  498. package/client/esm2022/lib/typeorm/driver/Driver.mjs +0 -4
  499. package/client/esm2022/lib/typeorm/driver/DriverFactory.mjs +0 -99
  500. package/client/esm2022/lib/typeorm/driver/DriverUtils.mjs +0 -213
  501. package/client/esm2022/lib/typeorm/driver/Query.mjs +0 -13
  502. package/client/esm2022/lib/typeorm/driver/SqlInMemory.mjs +0 -12
  503. package/client/esm2022/lib/typeorm/driver/cordova/CordovaConnectionOptions.mjs +0 -4
  504. package/client/esm2022/lib/typeorm/driver/cordova/CordovaDriver.mjs +0 -63
  505. package/client/esm2022/lib/typeorm/driver/cordova/CordovaQueryRunner.mjs +0 -152
  506. package/client/esm2022/lib/typeorm/driver/mongodb/typings.mjs +0 -6516
  507. package/client/esm2022/lib/typeorm/driver/nativescript/NativescriptConnectionOptions.mjs +0 -4
  508. package/client/esm2022/lib/typeorm/driver/nativescript/NativescriptDriver.mjs +0 -82
  509. package/client/esm2022/lib/typeorm/driver/nativescript/NativescriptQueryRunner.mjs +0 -82
  510. package/client/esm2022/lib/typeorm/driver/react-native/ReactNativeConnectionOptions.mjs +0 -4
  511. package/client/esm2022/lib/typeorm/driver/react-native/ReactNativeDriver.mjs +0 -69
  512. package/client/esm2022/lib/typeorm/driver/react-native/ReactNativeQueryRunner.mjs +0 -81
  513. package/client/esm2022/lib/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.mjs +0 -582
  514. package/client/esm2022/lib/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.mjs +0 -1421
  515. package/client/esm2022/lib/typeorm/driver/sqljs/SqljsConnectionOptions.mjs +0 -4
  516. package/client/esm2022/lib/typeorm/driver/sqljs/SqljsDriver.mjs +0 -249
  517. package/client/esm2022/lib/typeorm/driver/sqljs/SqljsQueryRunner.mjs +0 -107
  518. package/client/esm2022/lib/typeorm/driver/types/ColumnTypes.mjs +0 -3
  519. package/client/esm2022/lib/typeorm/driver/types/CteCapabilities.mjs +0 -4
  520. package/client/esm2022/lib/typeorm/driver/types/DataTypeDefaults.mjs +0 -4
  521. package/client/esm2022/lib/typeorm/driver/types/DatabaseType.mjs +0 -3
  522. package/client/esm2022/lib/typeorm/driver/types/IsolationLevel.mjs +0 -3
  523. package/client/esm2022/lib/typeorm/driver/types/MappedColumnTypes.mjs +0 -4
  524. package/client/esm2022/lib/typeorm/driver/types/MetadataTableType.mjs +0 -9
  525. package/client/esm2022/lib/typeorm/driver/types/ReplicationMode.mjs +0 -3
  526. package/client/esm2022/lib/typeorm/driver/types/UpsertType.mjs +0 -3
  527. package/client/esm2022/lib/typeorm/entity-manager/EntityManager.mjs +0 -743
  528. package/client/esm2022/lib/typeorm/entity-manager/EntityManagerFactory.mjs +0 -23
  529. package/client/esm2022/lib/typeorm/entity-manager/SqljsEntityManager.mjs +0 -35
  530. package/client/esm2022/lib/typeorm/entity-schema/EntitySchema.mjs +0 -12
  531. package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaCheckOptions.mjs +0 -4
  532. package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaColumnOptions.mjs +0 -4
  533. package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.mjs +0 -5
  534. package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaEmbeddedError.mjs +0 -15
  535. package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaExclusionOptions.mjs +0 -4
  536. package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaIndexOptions.mjs +0 -4
  537. package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaOptions.mjs +0 -8
  538. package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaRelationIdOptions.mjs +0 -4
  539. package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaRelationOptions.mjs +0 -4
  540. package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaTransformer.mjs +0 -268
  541. package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaUniqueOptions.mjs +0 -4
  542. package/client/esm2022/lib/typeorm/error/AlreadyHasActiveConnectionError.mjs +0 -13
  543. package/client/esm2022/lib/typeorm/error/CannotAttachTreeChildrenEntityError.mjs +0 -13
  544. package/client/esm2022/lib/typeorm/error/CannotConnectAlreadyConnectedError.mjs +0 -12
  545. package/client/esm2022/lib/typeorm/error/CannotCreateEntityIdMapError.mjs +0 -18
  546. package/client/esm2022/lib/typeorm/error/CannotDetermineEntityError.mjs +0 -13
  547. package/client/esm2022/lib/typeorm/error/CannotExecuteNotConnectedError.mjs +0 -12
  548. package/client/esm2022/lib/typeorm/error/CannotGetEntityManagerNotConnectedError.mjs +0 -12
  549. package/client/esm2022/lib/typeorm/error/CannotReflectMethodParameterTypeError.mjs +0 -15
  550. package/client/esm2022/lib/typeorm/error/CircularRelationsError.mjs +0 -13
  551. package/client/esm2022/lib/typeorm/error/ColumnTypeUndefinedError.mjs +0 -16
  552. package/client/esm2022/lib/typeorm/error/ConnectionIsNotSetError.mjs +0 -12
  553. package/client/esm2022/lib/typeorm/error/ConnectionNotFoundError.mjs +0 -12
  554. package/client/esm2022/lib/typeorm/error/CustomRepositoryCannotInheritRepositoryError.mjs +0 -15
  555. package/client/esm2022/lib/typeorm/error/CustomRepositoryDoesNotHaveEntityError.mjs +0 -15
  556. package/client/esm2022/lib/typeorm/error/CustomRepositoryNotFoundError.mjs +0 -15
  557. package/client/esm2022/lib/typeorm/error/DataTypeNotSupportedError.mjs +0 -11
  558. package/client/esm2022/lib/typeorm/error/DriverOptionNotSetError.mjs +0 -13
  559. package/client/esm2022/lib/typeorm/error/DriverPackageNotInstalledError.mjs +0 -13
  560. package/client/esm2022/lib/typeorm/error/EntityMetadataNotFoundError.mjs +0 -26
  561. package/client/esm2022/lib/typeorm/error/EntityNotFoundError.mjs +0 -37
  562. package/client/esm2022/lib/typeorm/error/EntityPropertyNotFoundError.mjs +0 -14
  563. package/client/esm2022/lib/typeorm/error/FindRelationsNotFoundError.mjs +0 -20
  564. package/client/esm2022/lib/typeorm/error/InitializedRelationError.mjs +0 -17
  565. package/client/esm2022/lib/typeorm/error/InsertValuesMissingError.mjs +0 -13
  566. package/client/esm2022/lib/typeorm/error/LimitOnUpdateNotSupportedError.mjs +0 -12
  567. package/client/esm2022/lib/typeorm/error/LockNotSupportedOnGivenDriverError.mjs +0 -12
  568. package/client/esm2022/lib/typeorm/error/MetadataAlreadyExistsError.mjs +0 -15
  569. package/client/esm2022/lib/typeorm/error/MetadataWithSuchNameAlreadyExistsError.mjs +0 -13
  570. package/client/esm2022/lib/typeorm/error/MissingDeleteDateColumnError.mjs +0 -9
  571. package/client/esm2022/lib/typeorm/error/MissingDriverError.mjs +0 -13
  572. package/client/esm2022/lib/typeorm/error/MissingJoinColumnError.mjs +0 -20
  573. package/client/esm2022/lib/typeorm/error/MissingJoinTableError.mjs +0 -20
  574. package/client/esm2022/lib/typeorm/error/MissingPrimaryColumnError.mjs +0 -10
  575. package/client/esm2022/lib/typeorm/error/MustBeEntityError.mjs +0 -12
  576. package/client/esm2022/lib/typeorm/error/NamingStrategyNotFoundError.mjs +0 -18
  577. package/client/esm2022/lib/typeorm/error/NestedSetMultipleRootError.mjs +0 -9
  578. package/client/esm2022/lib/typeorm/error/NoConnectionForRepositoryError.mjs +0 -13
  579. package/client/esm2022/lib/typeorm/error/NoConnectionOptionError.mjs +0 -13
  580. package/client/esm2022/lib/typeorm/error/NoNeedToReleaseEntityManagerError.mjs +0 -14
  581. package/client/esm2022/lib/typeorm/error/NoVersionOrUpdateDateColumnError.mjs +0 -12
  582. package/client/esm2022/lib/typeorm/error/OffsetWithoutLimitNotSupportedError.mjs +0 -14
  583. package/client/esm2022/lib/typeorm/error/OptimisticLockCanNotBeUsedError.mjs +0 -12
  584. package/client/esm2022/lib/typeorm/error/OptimisticLockVersionMismatchError.mjs +0 -12
  585. package/client/esm2022/lib/typeorm/error/PersistedEntityNotFoundError.mjs +0 -12
  586. package/client/esm2022/lib/typeorm/error/PessimisticLockTransactionRequiredError.mjs +0 -12
  587. package/client/esm2022/lib/typeorm/error/PrimaryColumnCannotBeNullableError.mjs +0 -10
  588. package/client/esm2022/lib/typeorm/error/QueryFailedError.mjs +0 -27
  589. package/client/esm2022/lib/typeorm/error/QueryRunnerAlreadyReleasedError.mjs +0 -9
  590. package/client/esm2022/lib/typeorm/error/QueryRunnerProviderAlreadyReleasedError.mjs +0 -13
  591. package/client/esm2022/lib/typeorm/error/RepositoryNotTreeError.mjs +0 -29
  592. package/client/esm2022/lib/typeorm/error/ReturningStatementNotSupportedError.mjs +0 -13
  593. package/client/esm2022/lib/typeorm/error/SubjectRemovedAndUpdatedError.mjs +0 -13
  594. package/client/esm2022/lib/typeorm/error/SubjectWithoutIdentifierError.mjs +0 -14
  595. package/client/esm2022/lib/typeorm/error/TransactionAlreadyStartedError.mjs +0 -12
  596. package/client/esm2022/lib/typeorm/error/TransactionNotStartedError.mjs +0 -12
  597. package/client/esm2022/lib/typeorm/error/TreeRepositoryNotSupportedError.mjs +0 -9
  598. package/client/esm2022/lib/typeorm/error/TypeORMError.mjs +0 -18
  599. package/client/esm2022/lib/typeorm/error/UpdateValuesMissingError.mjs +0 -9
  600. package/client/esm2022/lib/typeorm/error/UsingJoinColumnIsNotAllowedError.mjs +0 -10
  601. package/client/esm2022/lib/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.mjs +0 -11
  602. package/client/esm2022/lib/typeorm/error/UsingJoinTableIsNotAllowedError.mjs +0 -11
  603. package/client/esm2022/lib/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.mjs +0 -11
  604. package/client/esm2022/lib/typeorm/error/index.mjs +0 -63
  605. package/client/esm2022/lib/typeorm/find-options/EqualOperator.mjs +0 -10
  606. package/client/esm2022/lib/typeorm/find-options/FindManyOptions.mjs +0 -4
  607. package/client/esm2022/lib/typeorm/find-options/FindOneOptions.mjs +0 -4
  608. package/client/esm2022/lib/typeorm/find-options/FindOperator.mjs +0 -74
  609. package/client/esm2022/lib/typeorm/find-options/FindOperatorType.mjs +0 -3
  610. package/client/esm2022/lib/typeorm/find-options/FindOptionsOrder.mjs +0 -3
  611. package/client/esm2022/lib/typeorm/find-options/FindOptionsRelations.mjs +0 -3
  612. package/client/esm2022/lib/typeorm/find-options/FindOptionsSelect.mjs +0 -5
  613. package/client/esm2022/lib/typeorm/find-options/FindOptionsUtils.mjs +0 -293
  614. package/client/esm2022/lib/typeorm/find-options/FindOptionsWhere.mjs +0 -3
  615. package/client/esm2022/lib/typeorm/find-options/FindTreeOptions.mjs +0 -4
  616. package/client/esm2022/lib/typeorm/find-options/JoinOptions.mjs +0 -4
  617. package/client/esm2022/lib/typeorm/find-options/OrderByCondition.mjs +0 -3
  618. package/client/esm2022/lib/typeorm/find-options/operator/Any.mjs +0 -11
  619. package/client/esm2022/lib/typeorm/find-options/operator/ArrayContainedBy.mjs +0 -11
  620. package/client/esm2022/lib/typeorm/find-options/operator/ArrayContains.mjs +0 -11
  621. package/client/esm2022/lib/typeorm/find-options/operator/ArrayOverlap.mjs +0 -11
  622. package/client/esm2022/lib/typeorm/find-options/operator/Between.mjs +0 -11
  623. package/client/esm2022/lib/typeorm/find-options/operator/Equal.mjs +0 -15
  624. package/client/esm2022/lib/typeorm/find-options/operator/ILike.mjs +0 -11
  625. package/client/esm2022/lib/typeorm/find-options/operator/In.mjs +0 -11
  626. package/client/esm2022/lib/typeorm/find-options/operator/IsNull.mjs +0 -11
  627. package/client/esm2022/lib/typeorm/find-options/operator/LessThan.mjs +0 -11
  628. package/client/esm2022/lib/typeorm/find-options/operator/LessThanOrEqual.mjs +0 -11
  629. package/client/esm2022/lib/typeorm/find-options/operator/Like.mjs +0 -11
  630. package/client/esm2022/lib/typeorm/find-options/operator/MoreThan.mjs +0 -11
  631. package/client/esm2022/lib/typeorm/find-options/operator/MoreThanOrEqual.mjs +0 -11
  632. package/client/esm2022/lib/typeorm/find-options/operator/Not.mjs +0 -12
  633. package/client/esm2022/lib/typeorm/find-options/operator/Raw.mjs +0 -10
  634. package/client/esm2022/lib/typeorm/globals.mjs +0 -165
  635. package/client/esm2022/lib/typeorm/index.mjs +0 -157
  636. package/client/esm2022/lib/typeorm/logger/AdvancedConsoleLogger.mjs +0 -109
  637. package/client/esm2022/lib/typeorm/logger/DebugLogger.mjs +0 -94
  638. package/client/esm2022/lib/typeorm/logger/Logger.mjs +0 -4
  639. package/client/esm2022/lib/typeorm/logger/LoggerFactory.mjs +0 -36
  640. package/client/esm2022/lib/typeorm/logger/LoggerOptions.mjs +0 -3
  641. package/client/esm2022/lib/typeorm/logger/SimpleConsoleLogger.mjs +0 -108
  642. package/client/esm2022/lib/typeorm/metadata/CheckMetadata.mjs +0 -26
  643. package/client/esm2022/lib/typeorm/metadata/ColumnMetadata.mjs +0 -553
  644. package/client/esm2022/lib/typeorm/metadata/EmbeddedMetadata.mjs +0 -206
  645. package/client/esm2022/lib/typeorm/metadata/EntityListenerMetadata.mjs +0 -52
  646. package/client/esm2022/lib/typeorm/metadata/EntityMetadata.mjs +0 -636
  647. package/client/esm2022/lib/typeorm/metadata/ExclusionMetadata.mjs +0 -26
  648. package/client/esm2022/lib/typeorm/metadata/ForeignKeyMetadata.mjs +0 -48
  649. package/client/esm2022/lib/typeorm/metadata/IndexMetadata.mjs +0 -131
  650. package/client/esm2022/lib/typeorm/metadata/RelationCountMetadata.mjs +0 -30
  651. package/client/esm2022/lib/typeorm/metadata/RelationIdMetadata.mjs +0 -50
  652. package/client/esm2022/lib/typeorm/metadata/RelationMetadata.mjs +0 -398
  653. package/client/esm2022/lib/typeorm/metadata/UniqueMetadata.mjs +0 -90
  654. package/client/esm2022/lib/typeorm/metadata/types/ClosureTreeOptions.mjs +0 -4
  655. package/client/esm2022/lib/typeorm/metadata/types/DeferrableType.mjs +0 -3
  656. package/client/esm2022/lib/typeorm/metadata/types/EventListenerTypes.mjs +0 -19
  657. package/client/esm2022/lib/typeorm/metadata/types/OnDeleteType.mjs +0 -3
  658. package/client/esm2022/lib/typeorm/metadata/types/OnUpdateType.mjs +0 -3
  659. package/client/esm2022/lib/typeorm/metadata/types/PropertyTypeInFunction.mjs +0 -3
  660. package/client/esm2022/lib/typeorm/metadata/types/RelationTypeInFunction.mjs +0 -3
  661. package/client/esm2022/lib/typeorm/metadata/types/RelationTypes.mjs +0 -3
  662. package/client/esm2022/lib/typeorm/metadata/types/TableTypes.mjs +0 -3
  663. package/client/esm2022/lib/typeorm/metadata/types/TreeTypes.mjs +0 -3
  664. package/client/esm2022/lib/typeorm/metadata-args/CheckMetadataArgs.mjs +0 -4
  665. package/client/esm2022/lib/typeorm/metadata-args/ColumnMetadataArgs.mjs +0 -4
  666. package/client/esm2022/lib/typeorm/metadata-args/DiscriminatorValueMetadataArgs.mjs +0 -4
  667. package/client/esm2022/lib/typeorm/metadata-args/EmbeddedMetadataArgs.mjs +0 -4
  668. package/client/esm2022/lib/typeorm/metadata-args/EntityListenerMetadataArgs.mjs +0 -4
  669. package/client/esm2022/lib/typeorm/metadata-args/EntityRepositoryMetadataArgs.mjs +0 -4
  670. package/client/esm2022/lib/typeorm/metadata-args/EntitySubscriberMetadataArgs.mjs +0 -4
  671. package/client/esm2022/lib/typeorm/metadata-args/ExclusionMetadataArgs.mjs +0 -4
  672. package/client/esm2022/lib/typeorm/metadata-args/GeneratedMetadataArgs.mjs +0 -4
  673. package/client/esm2022/lib/typeorm/metadata-args/IndexMetadataArgs.mjs +0 -4
  674. package/client/esm2022/lib/typeorm/metadata-args/InheritanceMetadataArgs.mjs +0 -4
  675. package/client/esm2022/lib/typeorm/metadata-args/JoinColumnMetadataArgs.mjs +0 -4
  676. package/client/esm2022/lib/typeorm/metadata-args/JoinTableMetadataArgs.mjs +0 -4
  677. package/client/esm2022/lib/typeorm/metadata-args/MetadataArgsStorage.mjs +0 -217
  678. package/client/esm2022/lib/typeorm/metadata-args/NamingStrategyMetadataArgs.mjs +0 -4
  679. package/client/esm2022/lib/typeorm/metadata-args/RelationCountMetadataArgs.mjs +0 -4
  680. package/client/esm2022/lib/typeorm/metadata-args/RelationIdMetadataArgs.mjs +0 -4
  681. package/client/esm2022/lib/typeorm/metadata-args/RelationMetadataArgs.mjs +0 -4
  682. package/client/esm2022/lib/typeorm/metadata-args/TableMetadataArgs.mjs +0 -4
  683. package/client/esm2022/lib/typeorm/metadata-args/TransactionEntityMetadataArgs.mjs +0 -4
  684. package/client/esm2022/lib/typeorm/metadata-args/TransactionRepositoryMetadataArgs.mjs +0 -4
  685. package/client/esm2022/lib/typeorm/metadata-args/TreeMetadataArgs.mjs +0 -4
  686. package/client/esm2022/lib/typeorm/metadata-args/UniqueMetadataArgs.mjs +0 -4
  687. package/client/esm2022/lib/typeorm/metadata-args/types/ColumnMode.mjs +0 -3
  688. package/client/esm2022/lib/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.mjs +0 -131
  689. package/client/esm2022/lib/typeorm/metadata-builder/EntityMetadataBuilder.mjs +0 -678
  690. package/client/esm2022/lib/typeorm/metadata-builder/EntityMetadataValidator.mjs +0 -183
  691. package/client/esm2022/lib/typeorm/metadata-builder/JunctionEntityMetadataBuilder.mjs +0 -262
  692. package/client/esm2022/lib/typeorm/metadata-builder/MetadataUtils.mjs +0 -41
  693. package/client/esm2022/lib/typeorm/metadata-builder/RelationJoinColumnBuilder.mjs +0 -167
  694. package/client/esm2022/lib/typeorm/migration/Migration.mjs +0 -14
  695. package/client/esm2022/lib/typeorm/migration/MigrationExecutor.mjs +0 -454
  696. package/client/esm2022/lib/typeorm/migration/MigrationInterface.mjs +0 -4
  697. package/client/esm2022/lib/typeorm/naming-strategy/DefaultNamingStrategy.mjs +0 -140
  698. package/client/esm2022/lib/typeorm/naming-strategy/NamingStrategyInterface.mjs +0 -4
  699. package/client/esm2022/lib/typeorm/persistence/EntityPersistExecutor.mjs +0 -125
  700. package/client/esm2022/lib/typeorm/persistence/Subject.mjs +0 -212
  701. package/client/esm2022/lib/typeorm/persistence/SubjectChangeMap.mjs +0 -4
  702. package/client/esm2022/lib/typeorm/persistence/SubjectChangedColumnsComputer.mjs +0 -164
  703. package/client/esm2022/lib/typeorm/persistence/SubjectDatabaseEntityLoader.mjs +0 -125
  704. package/client/esm2022/lib/typeorm/persistence/SubjectExecutor.mjs +0 -721
  705. package/client/esm2022/lib/typeorm/persistence/SubjectTopoligicalSorter.mjs +0 -151
  706. package/client/esm2022/lib/typeorm/persistence/subject-builder/CascadesSubjectBuilder.mjs +0 -84
  707. package/client/esm2022/lib/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.mjs +0 -153
  708. package/client/esm2022/lib/typeorm/persistence/subject-builder/OneToManySubjectBuilder.mjs +0 -117
  709. package/client/esm2022/lib/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.mjs +0 -95
  710. package/client/esm2022/lib/typeorm/persistence/tree/ClosureSubjectExecutor.mjs +0 -220
  711. package/client/esm2022/lib/typeorm/persistence/tree/MaterializedPathSubjectExecutor.mjs +0 -97
  712. package/client/esm2022/lib/typeorm/persistence/tree/NestedSetSubjectExecutor.mjs +0 -250
  713. package/client/esm2022/lib/typeorm/platform/PlatformTools.mjs +0 -346
  714. package/client/esm2022/lib/typeorm/query-builder/Alias.mjs +0 -26
  715. package/client/esm2022/lib/typeorm/query-builder/Brackets.mjs +0 -16
  716. package/client/esm2022/lib/typeorm/query-builder/DeleteQueryBuilder.mjs +0 -181
  717. package/client/esm2022/lib/typeorm/query-builder/InsertOrUpdateOptions.mjs +0 -3
  718. package/client/esm2022/lib/typeorm/query-builder/InsertQueryBuilder.mjs +0 -651
  719. package/client/esm2022/lib/typeorm/query-builder/JoinAttribute.mjs +0 -153
  720. package/client/esm2022/lib/typeorm/query-builder/NotBrackets.mjs +0 -14
  721. package/client/esm2022/lib/typeorm/query-builder/QueryBuilder.mjs +0 -967
  722. package/client/esm2022/lib/typeorm/query-builder/QueryBuilderCte.mjs +0 -4
  723. package/client/esm2022/lib/typeorm/query-builder/QueryBuilderUtils.mjs +0 -22
  724. package/client/esm2022/lib/typeorm/query-builder/QueryExpressionMap.mjs +0 -309
  725. package/client/esm2022/lib/typeorm/query-builder/QueryPartialEntity.mjs +0 -3
  726. package/client/esm2022/lib/typeorm/query-builder/RelationIdLoader.mjs +0 -452
  727. package/client/esm2022/lib/typeorm/query-builder/RelationLoader.mjs +0 -262
  728. package/client/esm2022/lib/typeorm/query-builder/RelationQueryBuilder.mjs +0 -147
  729. package/client/esm2022/lib/typeorm/query-builder/RelationRemover.mjs +0 -130
  730. package/client/esm2022/lib/typeorm/query-builder/RelationUpdater.mjs +0 -141
  731. package/client/esm2022/lib/typeorm/query-builder/ReturningResultsEntityUpdator.mjs +0 -141
  732. package/client/esm2022/lib/typeorm/query-builder/SelectQuery.mjs +0 -4
  733. package/client/esm2022/lib/typeorm/query-builder/SelectQueryBuilder.mjs +0 -2278
  734. package/client/esm2022/lib/typeorm/query-builder/SelectQueryBuilderOption.mjs +0 -3
  735. package/client/esm2022/lib/typeorm/query-builder/SoftDeleteQueryBuilder.mjs +0 -348
  736. package/client/esm2022/lib/typeorm/query-builder/UpdateQueryBuilder.mjs +0 -510
  737. package/client/esm2022/lib/typeorm/query-builder/WhereClause.mjs +0 -3
  738. package/client/esm2022/lib/typeorm/query-builder/WhereExpressionBuilder.mjs +0 -4
  739. package/client/esm2022/lib/typeorm/query-builder/relation-count/RelationCountAttribute.mjs +0 -71
  740. package/client/esm2022/lib/typeorm/query-builder/relation-count/RelationCountLoadResult.mjs +0 -4
  741. package/client/esm2022/lib/typeorm/query-builder/relation-count/RelationCountLoader.mjs +0 -142
  742. package/client/esm2022/lib/typeorm/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.mjs +0 -33
  743. package/client/esm2022/lib/typeorm/query-builder/relation-id/RelationIdAttribute.mjs +0 -79
  744. package/client/esm2022/lib/typeorm/query-builder/relation-id/RelationIdLoadResult.mjs +0 -4
  745. package/client/esm2022/lib/typeorm/query-builder/relation-id/RelationIdLoader.mjs +0 -247
  746. package/client/esm2022/lib/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.mjs +0 -33
  747. package/client/esm2022/lib/typeorm/query-builder/result/DeleteResult.mjs +0 -14
  748. package/client/esm2022/lib/typeorm/query-builder/result/InsertResult.mjs +0 -25
  749. package/client/esm2022/lib/typeorm/query-builder/result/UpdateResult.mjs +0 -25
  750. package/client/esm2022/lib/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.mjs +0 -101
  751. package/client/esm2022/lib/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.mjs +0 -67
  752. package/client/esm2022/lib/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.mjs +0 -366
  753. package/client/esm2022/lib/typeorm/query-runner/BaseQueryRunner.mjs +0 -392
  754. package/client/esm2022/lib/typeorm/query-runner/QueryResult.mjs +0 -14
  755. package/client/esm2022/lib/typeorm/query-runner/QueryRunner.mjs +0 -4
  756. package/client/esm2022/lib/typeorm/repository/AbstractRepository.mjs +0 -80
  757. package/client/esm2022/lib/typeorm/repository/BaseEntity.mjs +0 -283
  758. package/client/esm2022/lib/typeorm/repository/FindTreesOptions.mjs +0 -4
  759. package/client/esm2022/lib/typeorm/repository/RemoveOptions.mjs +0 -4
  760. package/client/esm2022/lib/typeorm/repository/Repository.mjs +0 -275
  761. package/client/esm2022/lib/typeorm/repository/SaveOptions.mjs +0 -4
  762. package/client/esm2022/lib/typeorm/repository/TreeRepository.mjs +0 -254
  763. package/client/esm2022/lib/typeorm/repository/UpsertOptions.mjs +0 -7
  764. package/client/esm2022/lib/typeorm/schema-builder/RdbmsSchemaBuilder.mjs +0 -770
  765. package/client/esm2022/lib/typeorm/schema-builder/SchemaBuilder.mjs +0 -4
  766. package/client/esm2022/lib/typeorm/schema-builder/options/TableCheckOptions.mjs +0 -4
  767. package/client/esm2022/lib/typeorm/schema-builder/options/TableColumnOptions.mjs +0 -4
  768. package/client/esm2022/lib/typeorm/schema-builder/options/TableExclusionOptions.mjs +0 -4
  769. package/client/esm2022/lib/typeorm/schema-builder/options/TableForeignKeyOptions.mjs +0 -4
  770. package/client/esm2022/lib/typeorm/schema-builder/options/TableIndexOptions.mjs +0 -4
  771. package/client/esm2022/lib/typeorm/schema-builder/options/TableOptions.mjs +0 -4
  772. package/client/esm2022/lib/typeorm/schema-builder/options/TableUniqueOptions.mjs +0 -4
  773. package/client/esm2022/lib/typeorm/schema-builder/options/ViewOptions.mjs +0 -4
  774. package/client/esm2022/lib/typeorm/schema-builder/table/Table.mjs +0 -274
  775. package/client/esm2022/lib/typeorm/schema-builder/table/TableCheck.mjs +0 -37
  776. package/client/esm2022/lib/typeorm/schema-builder/table/TableColumn.mjs +0 -108
  777. package/client/esm2022/lib/typeorm/schema-builder/table/TableExclusion.mjs +0 -31
  778. package/client/esm2022/lib/typeorm/schema-builder/table/TableForeignKey.mjs +0 -60
  779. package/client/esm2022/lib/typeorm/schema-builder/table/TableIndex.mjs +0 -53
  780. package/client/esm2022/lib/typeorm/schema-builder/table/TableUnique.mjs +0 -38
  781. package/client/esm2022/lib/typeorm/schema-builder/util/TableUtils.mjs +0 -38
  782. package/client/esm2022/lib/typeorm/schema-builder/util/ViewUtils.mjs +0 -24
  783. package/client/esm2022/lib/typeorm/schema-builder/view/View.mjs +0 -43
  784. package/client/esm2022/lib/typeorm/subscriber/Broadcaster.mjs +0 -596
  785. package/client/esm2022/lib/typeorm/subscriber/BroadcasterResult.mjs +0 -27
  786. package/client/esm2022/lib/typeorm/subscriber/EntitySubscriberInterface.mjs +0 -4
  787. package/client/esm2022/lib/typeorm/subscriber/event/InsertEvent.mjs +0 -4
  788. package/client/esm2022/lib/typeorm/subscriber/event/LoadEvent.mjs +0 -4
  789. package/client/esm2022/lib/typeorm/subscriber/event/RecoverEvent.mjs +0 -4
  790. package/client/esm2022/lib/typeorm/subscriber/event/RemoveEvent.mjs +0 -4
  791. package/client/esm2022/lib/typeorm/subscriber/event/SoftRemoveEvent.mjs +0 -4
  792. package/client/esm2022/lib/typeorm/subscriber/event/TransactionCommitEvent.mjs +0 -4
  793. package/client/esm2022/lib/typeorm/subscriber/event/TransactionRollbackEvent.mjs +0 -4
  794. package/client/esm2022/lib/typeorm/subscriber/event/TransactionStartEvent.mjs +0 -4
  795. package/client/esm2022/lib/typeorm/subscriber/event/UpdateEvent.mjs +0 -4
  796. package/client/esm2022/lib/typeorm/util/ApplyValueTransformers.mjs +0 -22
  797. package/client/esm2022/lib/typeorm/util/DateUtils.mjs +0 -216
  798. package/client/esm2022/lib/typeorm/util/DepGraph.mjs +0 -222
  799. package/client/esm2022/lib/typeorm/util/DirectoryExportedClassesLoader.mjs +0 -76
  800. package/client/esm2022/lib/typeorm/util/ImportUtils.mjs +0 -86
  801. package/client/esm2022/lib/typeorm/util/InstanceChecker.mjs +0 -114
  802. package/client/esm2022/lib/typeorm/util/ObjectUtils.mjs +0 -38
  803. package/client/esm2022/lib/typeorm/util/OrmUtils.mjs +0 -310
  804. package/client/esm2022/lib/typeorm/util/PathUtils.mjs +0 -38
  805. package/client/esm2022/lib/typeorm/util/RandomGenerator.mjs +0 -150
  806. package/client/esm2022/lib/typeorm/util/StringUtils.mjs +0 -108
  807. package/client/esm2022/lib/typeorm/util/TreeRepositoryUtils.mjs +0 -53
  808. package/client/esm2022/lib/typeorm/util/VersionUtils.mjs +0 -17
  809. package/client/esm2022/lib/typeorm/util/escapeRegExp.mjs +0 -4
  810. package/client/esm2022/public-api.mjs +0 -2
  811. package/client/esm2022/taon-typeorm.mjs +0 -5
  812. package/taon.jsonc +0 -8
  813. package/websql/esm2022/lib/index.mjs +0 -4
  814. package/websql/esm2022/lib/typeorm/cache/DbQueryResultCache.mjs +0 -251
  815. package/websql/esm2022/lib/typeorm/cache/QueryResultCache.mjs +0 -4
  816. package/websql/esm2022/lib/typeorm/cache/QueryResultCacheFactory.mjs +0 -33
  817. package/websql/esm2022/lib/typeorm/cache/QueryResultCacheOptions.mjs +0 -4
  818. package/websql/esm2022/lib/typeorm/cache/RedisQueryResultCache.mjs +0 -185
  819. package/websql/esm2022/lib/typeorm/common/DeepPartial.mjs +0 -3
  820. package/websql/esm2022/lib/typeorm/common/EntityTarget.mjs +0 -3
  821. package/websql/esm2022/lib/typeorm/common/MixedList.mjs +0 -3
  822. package/websql/esm2022/lib/typeorm/common/ObjectLiteral.mjs +0 -4
  823. package/websql/esm2022/lib/typeorm/common/ObjectType.mjs +0 -3
  824. package/websql/esm2022/lib/typeorm/common/RelationType.mjs +0 -3
  825. package/websql/esm2022/lib/typeorm/connection/Connection.mjs +0 -13
  826. package/websql/esm2022/lib/typeorm/connection/ConnectionManager.mjs +0 -57
  827. package/websql/esm2022/lib/typeorm/connection/ConnectionMetadataBuilder.mjs +0 -63
  828. package/websql/esm2022/lib/typeorm/connection/ConnectionOptions.mjs +0 -3
  829. package/websql/esm2022/lib/typeorm/connection/ConnectionOptionsReader.mjs +0 -237
  830. package/websql/esm2022/lib/typeorm/constants.mjs +0 -4
  831. package/websql/esm2022/lib/typeorm/container.mjs +0 -57
  832. package/websql/esm2022/lib/typeorm/data-source/BaseDataSourceOptions.mjs +0 -4
  833. package/websql/esm2022/lib/typeorm/data-source/DataSource.mjs +0 -458
  834. package/websql/esm2022/lib/typeorm/data-source/DataSourceOptions.mjs +0 -11
  835. package/websql/esm2022/lib/typeorm/data-source/index.mjs +0 -4
  836. package/websql/esm2022/lib/typeorm/decorator/Check.mjs +0 -25
  837. package/websql/esm2022/lib/typeorm/decorator/EntityRepository.mjs +0 -19
  838. package/websql/esm2022/lib/typeorm/decorator/Exclusion.mjs +0 -25
  839. package/websql/esm2022/lib/typeorm/decorator/Generated.mjs +0 -22
  840. package/websql/esm2022/lib/typeorm/decorator/Index.mjs +0 -52
  841. package/websql/esm2022/lib/typeorm/decorator/Unique.mjs +0 -48
  842. package/websql/esm2022/lib/typeorm/decorator/columns/Column.mjs +0 -67
  843. package/websql/esm2022/lib/typeorm/decorator/columns/CreateDateColumn.mjs +0 -19
  844. package/websql/esm2022/lib/typeorm/decorator/columns/DeleteDateColumn.mjs +0 -18
  845. package/websql/esm2022/lib/typeorm/decorator/columns/ObjectIdColumn.mjs +0 -23
  846. package/websql/esm2022/lib/typeorm/decorator/columns/PrimaryColumn.mjs +0 -54
  847. package/websql/esm2022/lib/typeorm/decorator/columns/PrimaryGeneratedColumn.mjs +0 -52
  848. package/websql/esm2022/lib/typeorm/decorator/columns/UpdateDateColumn.mjs +0 -18
  849. package/websql/esm2022/lib/typeorm/decorator/columns/VersionColumn.mjs +0 -19
  850. package/websql/esm2022/lib/typeorm/decorator/columns/ViewColumn.mjs +0 -17
  851. package/websql/esm2022/lib/typeorm/decorator/columns/VirtualColumn.mjs +0 -41
  852. package/websql/esm2022/lib/typeorm/decorator/entity/ChildEntity.mjs +0 -21
  853. package/websql/esm2022/lib/typeorm/decorator/entity/Entity.mjs +0 -28
  854. package/websql/esm2022/lib/typeorm/decorator/entity/TableInheritance.mjs +0 -20
  855. package/websql/esm2022/lib/typeorm/decorator/entity-view/ViewEntity.mjs +0 -30
  856. package/websql/esm2022/lib/typeorm/decorator/listeners/AfterInsert.mjs +0 -17
  857. package/websql/esm2022/lib/typeorm/decorator/listeners/AfterLoad.mjs +0 -17
  858. package/websql/esm2022/lib/typeorm/decorator/listeners/AfterRecover.mjs +0 -17
  859. package/websql/esm2022/lib/typeorm/decorator/listeners/AfterRemove.mjs +0 -17
  860. package/websql/esm2022/lib/typeorm/decorator/listeners/AfterSoftRemove.mjs +0 -17
  861. package/websql/esm2022/lib/typeorm/decorator/listeners/AfterUpdate.mjs +0 -17
  862. package/websql/esm2022/lib/typeorm/decorator/listeners/BeforeInsert.mjs +0 -17
  863. package/websql/esm2022/lib/typeorm/decorator/listeners/BeforeRecover.mjs +0 -17
  864. package/websql/esm2022/lib/typeorm/decorator/listeners/BeforeRemove.mjs +0 -17
  865. package/websql/esm2022/lib/typeorm/decorator/listeners/BeforeSoftRemove.mjs +0 -17
  866. package/websql/esm2022/lib/typeorm/decorator/listeners/BeforeUpdate.mjs +0 -17
  867. package/websql/esm2022/lib/typeorm/decorator/listeners/EventSubscriber.mjs +0 -15
  868. package/websql/esm2022/lib/typeorm/decorator/options/ColumnCommonOptions.mjs +0 -4
  869. package/websql/esm2022/lib/typeorm/decorator/options/ColumnEmbeddedOptions.mjs +0 -4
  870. package/websql/esm2022/lib/typeorm/decorator/options/ColumnEnumOptions.mjs +0 -4
  871. package/websql/esm2022/lib/typeorm/decorator/options/ColumnHstoreOptions.mjs +0 -4
  872. package/websql/esm2022/lib/typeorm/decorator/options/ColumnNumericOptions.mjs +0 -4
  873. package/websql/esm2022/lib/typeorm/decorator/options/ColumnOptions.mjs +0 -4
  874. package/websql/esm2022/lib/typeorm/decorator/options/ColumnWithLengthOptions.mjs +0 -4
  875. package/websql/esm2022/lib/typeorm/decorator/options/ColumnWithWidthOptions.mjs +0 -4
  876. package/websql/esm2022/lib/typeorm/decorator/options/EntityOptions.mjs +0 -4
  877. package/websql/esm2022/lib/typeorm/decorator/options/IndexOptions.mjs +0 -4
  878. package/websql/esm2022/lib/typeorm/decorator/options/JoinColumnOptions.mjs +0 -4
  879. package/websql/esm2022/lib/typeorm/decorator/options/JoinTableMultipleColumnsOptions.mjs +0 -4
  880. package/websql/esm2022/lib/typeorm/decorator/options/JoinTableOptions.mjs +0 -4
  881. package/websql/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnIdentityOptions.mjs +0 -4
  882. package/websql/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnNumericOptions.mjs +0 -4
  883. package/websql/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnUUIDOptions.mjs +0 -4
  884. package/websql/esm2022/lib/typeorm/decorator/options/RelationOptions.mjs +0 -4
  885. package/websql/esm2022/lib/typeorm/decorator/options/SpatialColumnOptions.mjs +0 -4
  886. package/websql/esm2022/lib/typeorm/decorator/options/UniqueOptions.mjs +0 -4
  887. package/websql/esm2022/lib/typeorm/decorator/options/ValueTransformer.mjs +0 -4
  888. package/websql/esm2022/lib/typeorm/decorator/options/ViewColumnOptions.mjs +0 -4
  889. package/websql/esm2022/lib/typeorm/decorator/options/ViewEntityOptions.mjs +0 -4
  890. package/websql/esm2022/lib/typeorm/decorator/options/VirtualColumnOptions.mjs +0 -4
  891. package/websql/esm2022/lib/typeorm/decorator/relations/JoinColumn.mjs +0 -25
  892. package/websql/esm2022/lib/typeorm/decorator/relations/JoinTable.mjs +0 -31
  893. package/websql/esm2022/lib/typeorm/decorator/relations/ManyToMany.mjs +0 -40
  894. package/websql/esm2022/lib/typeorm/decorator/relations/ManyToOne.mjs +0 -40
  895. package/websql/esm2022/lib/typeorm/decorator/relations/OneToMany.mjs +0 -32
  896. package/websql/esm2022/lib/typeorm/decorator/relations/OneToOne.mjs +0 -39
  897. package/websql/esm2022/lib/typeorm/decorator/relations/RelationCount.mjs +0 -20
  898. package/websql/esm2022/lib/typeorm/decorator/relations/RelationId.mjs +0 -20
  899. package/websql/esm2022/lib/typeorm/decorator/tree/Tree.mjs +0 -19
  900. package/websql/esm2022/lib/typeorm/decorator/tree/TreeChildren.mjs +0 -34
  901. package/websql/esm2022/lib/typeorm/decorator/tree/TreeLevelColumn.mjs +0 -17
  902. package/websql/esm2022/lib/typeorm/decorator/tree/TreeParent.mjs +0 -34
  903. package/websql/esm2022/lib/typeorm/driver/Driver.mjs +0 -4
  904. package/websql/esm2022/lib/typeorm/driver/DriverFactory.mjs +0 -99
  905. package/websql/esm2022/lib/typeorm/driver/DriverUtils.mjs +0 -213
  906. package/websql/esm2022/lib/typeorm/driver/Query.mjs +0 -13
  907. package/websql/esm2022/lib/typeorm/driver/SqlInMemory.mjs +0 -12
  908. package/websql/esm2022/lib/typeorm/driver/cordova/CordovaConnectionOptions.mjs +0 -4
  909. package/websql/esm2022/lib/typeorm/driver/cordova/CordovaDriver.mjs +0 -63
  910. package/websql/esm2022/lib/typeorm/driver/cordova/CordovaQueryRunner.mjs +0 -152
  911. package/websql/esm2022/lib/typeorm/driver/mongodb/typings.mjs +0 -6516
  912. package/websql/esm2022/lib/typeorm/driver/nativescript/NativescriptConnectionOptions.mjs +0 -4
  913. package/websql/esm2022/lib/typeorm/driver/nativescript/NativescriptDriver.mjs +0 -82
  914. package/websql/esm2022/lib/typeorm/driver/nativescript/NativescriptQueryRunner.mjs +0 -82
  915. package/websql/esm2022/lib/typeorm/driver/react-native/ReactNativeConnectionOptions.mjs +0 -4
  916. package/websql/esm2022/lib/typeorm/driver/react-native/ReactNativeDriver.mjs +0 -69
  917. package/websql/esm2022/lib/typeorm/driver/react-native/ReactNativeQueryRunner.mjs +0 -81
  918. package/websql/esm2022/lib/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.mjs +0 -582
  919. package/websql/esm2022/lib/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.mjs +0 -1421
  920. package/websql/esm2022/lib/typeorm/driver/sqljs/SqljsConnectionOptions.mjs +0 -4
  921. package/websql/esm2022/lib/typeorm/driver/sqljs/SqljsDriver.mjs +0 -249
  922. package/websql/esm2022/lib/typeorm/driver/sqljs/SqljsQueryRunner.mjs +0 -107
  923. package/websql/esm2022/lib/typeorm/driver/types/ColumnTypes.mjs +0 -3
  924. package/websql/esm2022/lib/typeorm/driver/types/CteCapabilities.mjs +0 -4
  925. package/websql/esm2022/lib/typeorm/driver/types/DataTypeDefaults.mjs +0 -4
  926. package/websql/esm2022/lib/typeorm/driver/types/DatabaseType.mjs +0 -3
  927. package/websql/esm2022/lib/typeorm/driver/types/IsolationLevel.mjs +0 -3
  928. package/websql/esm2022/lib/typeorm/driver/types/MappedColumnTypes.mjs +0 -4
  929. package/websql/esm2022/lib/typeorm/driver/types/MetadataTableType.mjs +0 -9
  930. package/websql/esm2022/lib/typeorm/driver/types/ReplicationMode.mjs +0 -3
  931. package/websql/esm2022/lib/typeorm/driver/types/UpsertType.mjs +0 -3
  932. package/websql/esm2022/lib/typeorm/entity-manager/EntityManager.mjs +0 -743
  933. package/websql/esm2022/lib/typeorm/entity-manager/EntityManagerFactory.mjs +0 -23
  934. package/websql/esm2022/lib/typeorm/entity-manager/SqljsEntityManager.mjs +0 -35
  935. package/websql/esm2022/lib/typeorm/entity-schema/EntitySchema.mjs +0 -12
  936. package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaCheckOptions.mjs +0 -4
  937. package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaColumnOptions.mjs +0 -4
  938. package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.mjs +0 -5
  939. package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaEmbeddedError.mjs +0 -15
  940. package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaExclusionOptions.mjs +0 -4
  941. package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaIndexOptions.mjs +0 -4
  942. package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaOptions.mjs +0 -8
  943. package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaRelationIdOptions.mjs +0 -4
  944. package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaRelationOptions.mjs +0 -4
  945. package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaTransformer.mjs +0 -268
  946. package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaUniqueOptions.mjs +0 -4
  947. package/websql/esm2022/lib/typeorm/error/AlreadyHasActiveConnectionError.mjs +0 -13
  948. package/websql/esm2022/lib/typeorm/error/CannotAttachTreeChildrenEntityError.mjs +0 -13
  949. package/websql/esm2022/lib/typeorm/error/CannotConnectAlreadyConnectedError.mjs +0 -12
  950. package/websql/esm2022/lib/typeorm/error/CannotCreateEntityIdMapError.mjs +0 -18
  951. package/websql/esm2022/lib/typeorm/error/CannotDetermineEntityError.mjs +0 -13
  952. package/websql/esm2022/lib/typeorm/error/CannotExecuteNotConnectedError.mjs +0 -12
  953. package/websql/esm2022/lib/typeorm/error/CannotGetEntityManagerNotConnectedError.mjs +0 -12
  954. package/websql/esm2022/lib/typeorm/error/CannotReflectMethodParameterTypeError.mjs +0 -15
  955. package/websql/esm2022/lib/typeorm/error/CircularRelationsError.mjs +0 -13
  956. package/websql/esm2022/lib/typeorm/error/ColumnTypeUndefinedError.mjs +0 -16
  957. package/websql/esm2022/lib/typeorm/error/ConnectionIsNotSetError.mjs +0 -12
  958. package/websql/esm2022/lib/typeorm/error/ConnectionNotFoundError.mjs +0 -12
  959. package/websql/esm2022/lib/typeorm/error/CustomRepositoryCannotInheritRepositoryError.mjs +0 -15
  960. package/websql/esm2022/lib/typeorm/error/CustomRepositoryDoesNotHaveEntityError.mjs +0 -15
  961. package/websql/esm2022/lib/typeorm/error/CustomRepositoryNotFoundError.mjs +0 -15
  962. package/websql/esm2022/lib/typeorm/error/DataTypeNotSupportedError.mjs +0 -11
  963. package/websql/esm2022/lib/typeorm/error/DriverOptionNotSetError.mjs +0 -13
  964. package/websql/esm2022/lib/typeorm/error/DriverPackageNotInstalledError.mjs +0 -13
  965. package/websql/esm2022/lib/typeorm/error/EntityMetadataNotFoundError.mjs +0 -26
  966. package/websql/esm2022/lib/typeorm/error/EntityNotFoundError.mjs +0 -37
  967. package/websql/esm2022/lib/typeorm/error/EntityPropertyNotFoundError.mjs +0 -14
  968. package/websql/esm2022/lib/typeorm/error/FindRelationsNotFoundError.mjs +0 -20
  969. package/websql/esm2022/lib/typeorm/error/InitializedRelationError.mjs +0 -17
  970. package/websql/esm2022/lib/typeorm/error/InsertValuesMissingError.mjs +0 -13
  971. package/websql/esm2022/lib/typeorm/error/LimitOnUpdateNotSupportedError.mjs +0 -12
  972. package/websql/esm2022/lib/typeorm/error/LockNotSupportedOnGivenDriverError.mjs +0 -12
  973. package/websql/esm2022/lib/typeorm/error/MetadataAlreadyExistsError.mjs +0 -15
  974. package/websql/esm2022/lib/typeorm/error/MetadataWithSuchNameAlreadyExistsError.mjs +0 -13
  975. package/websql/esm2022/lib/typeorm/error/MissingDeleteDateColumnError.mjs +0 -9
  976. package/websql/esm2022/lib/typeorm/error/MissingDriverError.mjs +0 -13
  977. package/websql/esm2022/lib/typeorm/error/MissingJoinColumnError.mjs +0 -20
  978. package/websql/esm2022/lib/typeorm/error/MissingJoinTableError.mjs +0 -20
  979. package/websql/esm2022/lib/typeorm/error/MissingPrimaryColumnError.mjs +0 -10
  980. package/websql/esm2022/lib/typeorm/error/MustBeEntityError.mjs +0 -12
  981. package/websql/esm2022/lib/typeorm/error/NamingStrategyNotFoundError.mjs +0 -18
  982. package/websql/esm2022/lib/typeorm/error/NestedSetMultipleRootError.mjs +0 -9
  983. package/websql/esm2022/lib/typeorm/error/NoConnectionForRepositoryError.mjs +0 -13
  984. package/websql/esm2022/lib/typeorm/error/NoConnectionOptionError.mjs +0 -13
  985. package/websql/esm2022/lib/typeorm/error/NoNeedToReleaseEntityManagerError.mjs +0 -14
  986. package/websql/esm2022/lib/typeorm/error/NoVersionOrUpdateDateColumnError.mjs +0 -12
  987. package/websql/esm2022/lib/typeorm/error/OffsetWithoutLimitNotSupportedError.mjs +0 -14
  988. package/websql/esm2022/lib/typeorm/error/OptimisticLockCanNotBeUsedError.mjs +0 -12
  989. package/websql/esm2022/lib/typeorm/error/OptimisticLockVersionMismatchError.mjs +0 -12
  990. package/websql/esm2022/lib/typeorm/error/PersistedEntityNotFoundError.mjs +0 -12
  991. package/websql/esm2022/lib/typeorm/error/PessimisticLockTransactionRequiredError.mjs +0 -12
  992. package/websql/esm2022/lib/typeorm/error/PrimaryColumnCannotBeNullableError.mjs +0 -10
  993. package/websql/esm2022/lib/typeorm/error/QueryFailedError.mjs +0 -27
  994. package/websql/esm2022/lib/typeorm/error/QueryRunnerAlreadyReleasedError.mjs +0 -9
  995. package/websql/esm2022/lib/typeorm/error/QueryRunnerProviderAlreadyReleasedError.mjs +0 -13
  996. package/websql/esm2022/lib/typeorm/error/RepositoryNotTreeError.mjs +0 -29
  997. package/websql/esm2022/lib/typeorm/error/ReturningStatementNotSupportedError.mjs +0 -13
  998. package/websql/esm2022/lib/typeorm/error/SubjectRemovedAndUpdatedError.mjs +0 -13
  999. package/websql/esm2022/lib/typeorm/error/SubjectWithoutIdentifierError.mjs +0 -14
  1000. package/websql/esm2022/lib/typeorm/error/TransactionAlreadyStartedError.mjs +0 -12
  1001. package/websql/esm2022/lib/typeorm/error/TransactionNotStartedError.mjs +0 -12
  1002. package/websql/esm2022/lib/typeorm/error/TreeRepositoryNotSupportedError.mjs +0 -9
  1003. package/websql/esm2022/lib/typeorm/error/TypeORMError.mjs +0 -18
  1004. package/websql/esm2022/lib/typeorm/error/UpdateValuesMissingError.mjs +0 -9
  1005. package/websql/esm2022/lib/typeorm/error/UsingJoinColumnIsNotAllowedError.mjs +0 -10
  1006. package/websql/esm2022/lib/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.mjs +0 -11
  1007. package/websql/esm2022/lib/typeorm/error/UsingJoinTableIsNotAllowedError.mjs +0 -11
  1008. package/websql/esm2022/lib/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.mjs +0 -11
  1009. package/websql/esm2022/lib/typeorm/error/index.mjs +0 -63
  1010. package/websql/esm2022/lib/typeorm/find-options/EqualOperator.mjs +0 -10
  1011. package/websql/esm2022/lib/typeorm/find-options/FindManyOptions.mjs +0 -4
  1012. package/websql/esm2022/lib/typeorm/find-options/FindOneOptions.mjs +0 -4
  1013. package/websql/esm2022/lib/typeorm/find-options/FindOperator.mjs +0 -74
  1014. package/websql/esm2022/lib/typeorm/find-options/FindOperatorType.mjs +0 -3
  1015. package/websql/esm2022/lib/typeorm/find-options/FindOptionsOrder.mjs +0 -3
  1016. package/websql/esm2022/lib/typeorm/find-options/FindOptionsRelations.mjs +0 -3
  1017. package/websql/esm2022/lib/typeorm/find-options/FindOptionsSelect.mjs +0 -5
  1018. package/websql/esm2022/lib/typeorm/find-options/FindOptionsUtils.mjs +0 -293
  1019. package/websql/esm2022/lib/typeorm/find-options/FindOptionsWhere.mjs +0 -3
  1020. package/websql/esm2022/lib/typeorm/find-options/FindTreeOptions.mjs +0 -4
  1021. package/websql/esm2022/lib/typeorm/find-options/JoinOptions.mjs +0 -4
  1022. package/websql/esm2022/lib/typeorm/find-options/OrderByCondition.mjs +0 -3
  1023. package/websql/esm2022/lib/typeorm/find-options/operator/Any.mjs +0 -11
  1024. package/websql/esm2022/lib/typeorm/find-options/operator/ArrayContainedBy.mjs +0 -11
  1025. package/websql/esm2022/lib/typeorm/find-options/operator/ArrayContains.mjs +0 -11
  1026. package/websql/esm2022/lib/typeorm/find-options/operator/ArrayOverlap.mjs +0 -11
  1027. package/websql/esm2022/lib/typeorm/find-options/operator/Between.mjs +0 -11
  1028. package/websql/esm2022/lib/typeorm/find-options/operator/Equal.mjs +0 -15
  1029. package/websql/esm2022/lib/typeorm/find-options/operator/ILike.mjs +0 -11
  1030. package/websql/esm2022/lib/typeorm/find-options/operator/In.mjs +0 -11
  1031. package/websql/esm2022/lib/typeorm/find-options/operator/IsNull.mjs +0 -11
  1032. package/websql/esm2022/lib/typeorm/find-options/operator/LessThan.mjs +0 -11
  1033. package/websql/esm2022/lib/typeorm/find-options/operator/LessThanOrEqual.mjs +0 -11
  1034. package/websql/esm2022/lib/typeorm/find-options/operator/Like.mjs +0 -11
  1035. package/websql/esm2022/lib/typeorm/find-options/operator/MoreThan.mjs +0 -11
  1036. package/websql/esm2022/lib/typeorm/find-options/operator/MoreThanOrEqual.mjs +0 -11
  1037. package/websql/esm2022/lib/typeorm/find-options/operator/Not.mjs +0 -12
  1038. package/websql/esm2022/lib/typeorm/find-options/operator/Raw.mjs +0 -10
  1039. package/websql/esm2022/lib/typeorm/globals.mjs +0 -165
  1040. package/websql/esm2022/lib/typeorm/index.mjs +0 -157
  1041. package/websql/esm2022/lib/typeorm/logger/AdvancedConsoleLogger.mjs +0 -109
  1042. package/websql/esm2022/lib/typeorm/logger/DebugLogger.mjs +0 -94
  1043. package/websql/esm2022/lib/typeorm/logger/Logger.mjs +0 -4
  1044. package/websql/esm2022/lib/typeorm/logger/LoggerFactory.mjs +0 -36
  1045. package/websql/esm2022/lib/typeorm/logger/LoggerOptions.mjs +0 -3
  1046. package/websql/esm2022/lib/typeorm/logger/SimpleConsoleLogger.mjs +0 -108
  1047. package/websql/esm2022/lib/typeorm/metadata/CheckMetadata.mjs +0 -26
  1048. package/websql/esm2022/lib/typeorm/metadata/ColumnMetadata.mjs +0 -553
  1049. package/websql/esm2022/lib/typeorm/metadata/EmbeddedMetadata.mjs +0 -206
  1050. package/websql/esm2022/lib/typeorm/metadata/EntityListenerMetadata.mjs +0 -52
  1051. package/websql/esm2022/lib/typeorm/metadata/EntityMetadata.mjs +0 -636
  1052. package/websql/esm2022/lib/typeorm/metadata/ExclusionMetadata.mjs +0 -26
  1053. package/websql/esm2022/lib/typeorm/metadata/ForeignKeyMetadata.mjs +0 -48
  1054. package/websql/esm2022/lib/typeorm/metadata/IndexMetadata.mjs +0 -131
  1055. package/websql/esm2022/lib/typeorm/metadata/RelationCountMetadata.mjs +0 -30
  1056. package/websql/esm2022/lib/typeorm/metadata/RelationIdMetadata.mjs +0 -50
  1057. package/websql/esm2022/lib/typeorm/metadata/RelationMetadata.mjs +0 -398
  1058. package/websql/esm2022/lib/typeorm/metadata/UniqueMetadata.mjs +0 -90
  1059. package/websql/esm2022/lib/typeorm/metadata/types/ClosureTreeOptions.mjs +0 -4
  1060. package/websql/esm2022/lib/typeorm/metadata/types/DeferrableType.mjs +0 -3
  1061. package/websql/esm2022/lib/typeorm/metadata/types/EventListenerTypes.mjs +0 -19
  1062. package/websql/esm2022/lib/typeorm/metadata/types/OnDeleteType.mjs +0 -3
  1063. package/websql/esm2022/lib/typeorm/metadata/types/OnUpdateType.mjs +0 -3
  1064. package/websql/esm2022/lib/typeorm/metadata/types/PropertyTypeInFunction.mjs +0 -3
  1065. package/websql/esm2022/lib/typeorm/metadata/types/RelationTypeInFunction.mjs +0 -3
  1066. package/websql/esm2022/lib/typeorm/metadata/types/RelationTypes.mjs +0 -3
  1067. package/websql/esm2022/lib/typeorm/metadata/types/TableTypes.mjs +0 -3
  1068. package/websql/esm2022/lib/typeorm/metadata/types/TreeTypes.mjs +0 -3
  1069. package/websql/esm2022/lib/typeorm/metadata-args/CheckMetadataArgs.mjs +0 -4
  1070. package/websql/esm2022/lib/typeorm/metadata-args/ColumnMetadataArgs.mjs +0 -4
  1071. package/websql/esm2022/lib/typeorm/metadata-args/DiscriminatorValueMetadataArgs.mjs +0 -4
  1072. package/websql/esm2022/lib/typeorm/metadata-args/EmbeddedMetadataArgs.mjs +0 -4
  1073. package/websql/esm2022/lib/typeorm/metadata-args/EntityListenerMetadataArgs.mjs +0 -4
  1074. package/websql/esm2022/lib/typeorm/metadata-args/EntityRepositoryMetadataArgs.mjs +0 -4
  1075. package/websql/esm2022/lib/typeorm/metadata-args/EntitySubscriberMetadataArgs.mjs +0 -4
  1076. package/websql/esm2022/lib/typeorm/metadata-args/ExclusionMetadataArgs.mjs +0 -4
  1077. package/websql/esm2022/lib/typeorm/metadata-args/GeneratedMetadataArgs.mjs +0 -4
  1078. package/websql/esm2022/lib/typeorm/metadata-args/IndexMetadataArgs.mjs +0 -4
  1079. package/websql/esm2022/lib/typeorm/metadata-args/InheritanceMetadataArgs.mjs +0 -4
  1080. package/websql/esm2022/lib/typeorm/metadata-args/JoinColumnMetadataArgs.mjs +0 -4
  1081. package/websql/esm2022/lib/typeorm/metadata-args/JoinTableMetadataArgs.mjs +0 -4
  1082. package/websql/esm2022/lib/typeorm/metadata-args/MetadataArgsStorage.mjs +0 -217
  1083. package/websql/esm2022/lib/typeorm/metadata-args/NamingStrategyMetadataArgs.mjs +0 -4
  1084. package/websql/esm2022/lib/typeorm/metadata-args/RelationCountMetadataArgs.mjs +0 -4
  1085. package/websql/esm2022/lib/typeorm/metadata-args/RelationIdMetadataArgs.mjs +0 -4
  1086. package/websql/esm2022/lib/typeorm/metadata-args/RelationMetadataArgs.mjs +0 -4
  1087. package/websql/esm2022/lib/typeorm/metadata-args/TableMetadataArgs.mjs +0 -4
  1088. package/websql/esm2022/lib/typeorm/metadata-args/TransactionEntityMetadataArgs.mjs +0 -4
  1089. package/websql/esm2022/lib/typeorm/metadata-args/TransactionRepositoryMetadataArgs.mjs +0 -4
  1090. package/websql/esm2022/lib/typeorm/metadata-args/TreeMetadataArgs.mjs +0 -4
  1091. package/websql/esm2022/lib/typeorm/metadata-args/UniqueMetadataArgs.mjs +0 -4
  1092. package/websql/esm2022/lib/typeorm/metadata-args/types/ColumnMode.mjs +0 -3
  1093. package/websql/esm2022/lib/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.mjs +0 -131
  1094. package/websql/esm2022/lib/typeorm/metadata-builder/EntityMetadataBuilder.mjs +0 -678
  1095. package/websql/esm2022/lib/typeorm/metadata-builder/EntityMetadataValidator.mjs +0 -183
  1096. package/websql/esm2022/lib/typeorm/metadata-builder/JunctionEntityMetadataBuilder.mjs +0 -262
  1097. package/websql/esm2022/lib/typeorm/metadata-builder/MetadataUtils.mjs +0 -41
  1098. package/websql/esm2022/lib/typeorm/metadata-builder/RelationJoinColumnBuilder.mjs +0 -167
  1099. package/websql/esm2022/lib/typeorm/migration/Migration.mjs +0 -14
  1100. package/websql/esm2022/lib/typeorm/migration/MigrationExecutor.mjs +0 -454
  1101. package/websql/esm2022/lib/typeorm/migration/MigrationInterface.mjs +0 -4
  1102. package/websql/esm2022/lib/typeorm/naming-strategy/DefaultNamingStrategy.mjs +0 -140
  1103. package/websql/esm2022/lib/typeorm/naming-strategy/NamingStrategyInterface.mjs +0 -4
  1104. package/websql/esm2022/lib/typeorm/persistence/EntityPersistExecutor.mjs +0 -125
  1105. package/websql/esm2022/lib/typeorm/persistence/Subject.mjs +0 -212
  1106. package/websql/esm2022/lib/typeorm/persistence/SubjectChangeMap.mjs +0 -4
  1107. package/websql/esm2022/lib/typeorm/persistence/SubjectChangedColumnsComputer.mjs +0 -164
  1108. package/websql/esm2022/lib/typeorm/persistence/SubjectDatabaseEntityLoader.mjs +0 -125
  1109. package/websql/esm2022/lib/typeorm/persistence/SubjectExecutor.mjs +0 -721
  1110. package/websql/esm2022/lib/typeorm/persistence/SubjectTopoligicalSorter.mjs +0 -151
  1111. package/websql/esm2022/lib/typeorm/persistence/subject-builder/CascadesSubjectBuilder.mjs +0 -84
  1112. package/websql/esm2022/lib/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.mjs +0 -153
  1113. package/websql/esm2022/lib/typeorm/persistence/subject-builder/OneToManySubjectBuilder.mjs +0 -117
  1114. package/websql/esm2022/lib/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.mjs +0 -95
  1115. package/websql/esm2022/lib/typeorm/persistence/tree/ClosureSubjectExecutor.mjs +0 -220
  1116. package/websql/esm2022/lib/typeorm/persistence/tree/MaterializedPathSubjectExecutor.mjs +0 -97
  1117. package/websql/esm2022/lib/typeorm/persistence/tree/NestedSetSubjectExecutor.mjs +0 -250
  1118. package/websql/esm2022/lib/typeorm/platform/PlatformTools.mjs +0 -331
  1119. package/websql/esm2022/lib/typeorm/query-builder/Alias.mjs +0 -26
  1120. package/websql/esm2022/lib/typeorm/query-builder/Brackets.mjs +0 -16
  1121. package/websql/esm2022/lib/typeorm/query-builder/DeleteQueryBuilder.mjs +0 -181
  1122. package/websql/esm2022/lib/typeorm/query-builder/InsertOrUpdateOptions.mjs +0 -3
  1123. package/websql/esm2022/lib/typeorm/query-builder/InsertQueryBuilder.mjs +0 -651
  1124. package/websql/esm2022/lib/typeorm/query-builder/JoinAttribute.mjs +0 -153
  1125. package/websql/esm2022/lib/typeorm/query-builder/NotBrackets.mjs +0 -14
  1126. package/websql/esm2022/lib/typeorm/query-builder/QueryBuilder.mjs +0 -967
  1127. package/websql/esm2022/lib/typeorm/query-builder/QueryBuilderCte.mjs +0 -4
  1128. package/websql/esm2022/lib/typeorm/query-builder/QueryBuilderUtils.mjs +0 -22
  1129. package/websql/esm2022/lib/typeorm/query-builder/QueryExpressionMap.mjs +0 -309
  1130. package/websql/esm2022/lib/typeorm/query-builder/QueryPartialEntity.mjs +0 -3
  1131. package/websql/esm2022/lib/typeorm/query-builder/RelationIdLoader.mjs +0 -452
  1132. package/websql/esm2022/lib/typeorm/query-builder/RelationLoader.mjs +0 -262
  1133. package/websql/esm2022/lib/typeorm/query-builder/RelationQueryBuilder.mjs +0 -147
  1134. package/websql/esm2022/lib/typeorm/query-builder/RelationRemover.mjs +0 -130
  1135. package/websql/esm2022/lib/typeorm/query-builder/RelationUpdater.mjs +0 -141
  1136. package/websql/esm2022/lib/typeorm/query-builder/ReturningResultsEntityUpdator.mjs +0 -141
  1137. package/websql/esm2022/lib/typeorm/query-builder/SelectQuery.mjs +0 -4
  1138. package/websql/esm2022/lib/typeorm/query-builder/SelectQueryBuilder.mjs +0 -2278
  1139. package/websql/esm2022/lib/typeorm/query-builder/SelectQueryBuilderOption.mjs +0 -3
  1140. package/websql/esm2022/lib/typeorm/query-builder/SoftDeleteQueryBuilder.mjs +0 -348
  1141. package/websql/esm2022/lib/typeorm/query-builder/UpdateQueryBuilder.mjs +0 -510
  1142. package/websql/esm2022/lib/typeorm/query-builder/WhereClause.mjs +0 -3
  1143. package/websql/esm2022/lib/typeorm/query-builder/WhereExpressionBuilder.mjs +0 -4
  1144. package/websql/esm2022/lib/typeorm/query-builder/relation-count/RelationCountAttribute.mjs +0 -71
  1145. package/websql/esm2022/lib/typeorm/query-builder/relation-count/RelationCountLoadResult.mjs +0 -4
  1146. package/websql/esm2022/lib/typeorm/query-builder/relation-count/RelationCountLoader.mjs +0 -142
  1147. package/websql/esm2022/lib/typeorm/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.mjs +0 -33
  1148. package/websql/esm2022/lib/typeorm/query-builder/relation-id/RelationIdAttribute.mjs +0 -79
  1149. package/websql/esm2022/lib/typeorm/query-builder/relation-id/RelationIdLoadResult.mjs +0 -4
  1150. package/websql/esm2022/lib/typeorm/query-builder/relation-id/RelationIdLoader.mjs +0 -247
  1151. package/websql/esm2022/lib/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.mjs +0 -33
  1152. package/websql/esm2022/lib/typeorm/query-builder/result/DeleteResult.mjs +0 -14
  1153. package/websql/esm2022/lib/typeorm/query-builder/result/InsertResult.mjs +0 -25
  1154. package/websql/esm2022/lib/typeorm/query-builder/result/UpdateResult.mjs +0 -25
  1155. package/websql/esm2022/lib/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.mjs +0 -101
  1156. package/websql/esm2022/lib/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.mjs +0 -67
  1157. package/websql/esm2022/lib/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.mjs +0 -366
  1158. package/websql/esm2022/lib/typeorm/query-runner/BaseQueryRunner.mjs +0 -392
  1159. package/websql/esm2022/lib/typeorm/query-runner/QueryResult.mjs +0 -14
  1160. package/websql/esm2022/lib/typeorm/query-runner/QueryRunner.mjs +0 -4
  1161. package/websql/esm2022/lib/typeorm/repository/AbstractRepository.mjs +0 -80
  1162. package/websql/esm2022/lib/typeorm/repository/BaseEntity.mjs +0 -283
  1163. package/websql/esm2022/lib/typeorm/repository/FindTreesOptions.mjs +0 -4
  1164. package/websql/esm2022/lib/typeorm/repository/RemoveOptions.mjs +0 -4
  1165. package/websql/esm2022/lib/typeorm/repository/Repository.mjs +0 -275
  1166. package/websql/esm2022/lib/typeorm/repository/SaveOptions.mjs +0 -4
  1167. package/websql/esm2022/lib/typeorm/repository/TreeRepository.mjs +0 -254
  1168. package/websql/esm2022/lib/typeorm/repository/UpsertOptions.mjs +0 -7
  1169. package/websql/esm2022/lib/typeorm/schema-builder/RdbmsSchemaBuilder.mjs +0 -770
  1170. package/websql/esm2022/lib/typeorm/schema-builder/SchemaBuilder.mjs +0 -4
  1171. package/websql/esm2022/lib/typeorm/schema-builder/options/TableCheckOptions.mjs +0 -4
  1172. package/websql/esm2022/lib/typeorm/schema-builder/options/TableColumnOptions.mjs +0 -4
  1173. package/websql/esm2022/lib/typeorm/schema-builder/options/TableExclusionOptions.mjs +0 -4
  1174. package/websql/esm2022/lib/typeorm/schema-builder/options/TableForeignKeyOptions.mjs +0 -4
  1175. package/websql/esm2022/lib/typeorm/schema-builder/options/TableIndexOptions.mjs +0 -4
  1176. package/websql/esm2022/lib/typeorm/schema-builder/options/TableOptions.mjs +0 -4
  1177. package/websql/esm2022/lib/typeorm/schema-builder/options/TableUniqueOptions.mjs +0 -4
  1178. package/websql/esm2022/lib/typeorm/schema-builder/options/ViewOptions.mjs +0 -4
  1179. package/websql/esm2022/lib/typeorm/schema-builder/table/Table.mjs +0 -274
  1180. package/websql/esm2022/lib/typeorm/schema-builder/table/TableCheck.mjs +0 -37
  1181. package/websql/esm2022/lib/typeorm/schema-builder/table/TableColumn.mjs +0 -108
  1182. package/websql/esm2022/lib/typeorm/schema-builder/table/TableExclusion.mjs +0 -31
  1183. package/websql/esm2022/lib/typeorm/schema-builder/table/TableForeignKey.mjs +0 -60
  1184. package/websql/esm2022/lib/typeorm/schema-builder/table/TableIndex.mjs +0 -53
  1185. package/websql/esm2022/lib/typeorm/schema-builder/table/TableUnique.mjs +0 -38
  1186. package/websql/esm2022/lib/typeorm/schema-builder/util/TableUtils.mjs +0 -38
  1187. package/websql/esm2022/lib/typeorm/schema-builder/util/ViewUtils.mjs +0 -24
  1188. package/websql/esm2022/lib/typeorm/schema-builder/view/View.mjs +0 -43
  1189. package/websql/esm2022/lib/typeorm/subscriber/Broadcaster.mjs +0 -596
  1190. package/websql/esm2022/lib/typeorm/subscriber/BroadcasterResult.mjs +0 -27
  1191. package/websql/esm2022/lib/typeorm/subscriber/EntitySubscriberInterface.mjs +0 -4
  1192. package/websql/esm2022/lib/typeorm/subscriber/event/InsertEvent.mjs +0 -4
  1193. package/websql/esm2022/lib/typeorm/subscriber/event/LoadEvent.mjs +0 -4
  1194. package/websql/esm2022/lib/typeorm/subscriber/event/RecoverEvent.mjs +0 -4
  1195. package/websql/esm2022/lib/typeorm/subscriber/event/RemoveEvent.mjs +0 -4
  1196. package/websql/esm2022/lib/typeorm/subscriber/event/SoftRemoveEvent.mjs +0 -4
  1197. package/websql/esm2022/lib/typeorm/subscriber/event/TransactionCommitEvent.mjs +0 -4
  1198. package/websql/esm2022/lib/typeorm/subscriber/event/TransactionRollbackEvent.mjs +0 -4
  1199. package/websql/esm2022/lib/typeorm/subscriber/event/TransactionStartEvent.mjs +0 -4
  1200. package/websql/esm2022/lib/typeorm/subscriber/event/UpdateEvent.mjs +0 -4
  1201. package/websql/esm2022/lib/typeorm/util/ApplyValueTransformers.mjs +0 -22
  1202. package/websql/esm2022/lib/typeorm/util/DateUtils.mjs +0 -216
  1203. package/websql/esm2022/lib/typeorm/util/DepGraph.mjs +0 -222
  1204. package/websql/esm2022/lib/typeorm/util/DirectoryExportedClassesLoader.mjs +0 -76
  1205. package/websql/esm2022/lib/typeorm/util/ImportUtils.mjs +0 -86
  1206. package/websql/esm2022/lib/typeorm/util/InstanceChecker.mjs +0 -114
  1207. package/websql/esm2022/lib/typeorm/util/ObjectUtils.mjs +0 -38
  1208. package/websql/esm2022/lib/typeorm/util/OrmUtils.mjs +0 -310
  1209. package/websql/esm2022/lib/typeorm/util/PathUtils.mjs +0 -38
  1210. package/websql/esm2022/lib/typeorm/util/RandomGenerator.mjs +0 -150
  1211. package/websql/esm2022/lib/typeorm/util/StringUtils.mjs +0 -108
  1212. package/websql/esm2022/lib/typeorm/util/TreeRepositoryUtils.mjs +0 -53
  1213. package/websql/esm2022/lib/typeorm/util/VersionUtils.mjs +0 -17
  1214. package/websql/esm2022/lib/typeorm/util/escapeRegExp.mjs +0 -4
  1215. package/websql/esm2022/public-api.mjs +0 -2
  1216. package/websql/esm2022/taon-typeorm.mjs +0 -5
@@ -1,151 +0,0 @@
1
- import { TypeORMError } from "../error";
2
- /**
3
- * Orders insert or remove subjects in proper order (using topological sorting)
4
- * to make sure insert or remove operations are executed in a proper order.
5
- */
6
- export class SubjectTopoligicalSorter {
7
- constructor(subjects) {
8
- this.subjects = [...subjects]; // copy subjects to prevent changing of sent array
9
- this.metadatas = this.getUniqueMetadatas(this.subjects);
10
- }
11
- /**
12
- * Sorts (orders) subjects in their topological order.
13
- */
14
- sort(direction) {
15
- if (!this.metadatas.length)
16
- return this.subjects;
17
- const sortedSubjects = [];
18
- if (direction === "delete") {
19
- const junctionSubjects = this.subjects.filter((subject) => !subject.entity && !subject.databaseEntity);
20
- sortedSubjects.push(...junctionSubjects);
21
- this.removeAlreadySorted(junctionSubjects);
22
- }
23
- const nonNullableDependencies = this.getNonNullableDependencies();
24
- let sortedNonNullableEntityTargets = this.toposort(nonNullableDependencies);
25
- if (direction === "insert")
26
- sortedNonNullableEntityTargets =
27
- sortedNonNullableEntityTargets.reverse();
28
- sortedNonNullableEntityTargets.forEach((sortedEntityTarget) => {
29
- const entityTargetSubjects = this.subjects.filter((subject) => subject.metadata.targetName === sortedEntityTarget ||
30
- subject.metadata.parentEntityMetadata?.targetName ===
31
- sortedEntityTarget);
32
- sortedSubjects.push(...entityTargetSubjects);
33
- this.removeAlreadySorted(entityTargetSubjects);
34
- });
35
- const otherDependencies = this.getDependencies();
36
- let sortedOtherEntityTargets = this.toposort(otherDependencies);
37
- if (direction === "insert")
38
- sortedOtherEntityTargets = sortedOtherEntityTargets.reverse();
39
- sortedOtherEntityTargets.forEach((sortedEntityTarget) => {
40
- const entityTargetSubjects = this.subjects.filter((subject) => subject.metadata.targetName === sortedEntityTarget);
41
- sortedSubjects.push(...entityTargetSubjects);
42
- this.removeAlreadySorted(entityTargetSubjects);
43
- });
44
- sortedSubjects.push(...this.subjects);
45
- return sortedSubjects;
46
- }
47
- /**
48
- * Removes already sorted subjects from this.subjects list of subjects.
49
- */
50
- removeAlreadySorted(subjects) {
51
- subjects.forEach((subject) => {
52
- this.subjects.splice(this.subjects.indexOf(subject), 1);
53
- });
54
- }
55
- /**
56
- * Extracts all unique metadatas from the given subjects.
57
- */
58
- getUniqueMetadatas(subjects) {
59
- const metadatas = [];
60
- subjects.forEach((subject) => {
61
- if (metadatas.indexOf(subject.metadata) === -1)
62
- metadatas.push(subject.metadata);
63
- });
64
- return metadatas;
65
- }
66
- /**
67
- * Gets dependency tree for all entity metadatas with non-nullable relations.
68
- * We need to execute insertions first for entities which non-nullable relations.
69
- */
70
- getNonNullableDependencies() {
71
- return this.metadatas.reduce((dependencies, metadata) => {
72
- metadata.relationsWithJoinColumns.forEach((relation) => {
73
- if (relation.isNullable)
74
- return;
75
- dependencies.push([
76
- metadata.targetName,
77
- relation.inverseEntityMetadata.targetName,
78
- ]);
79
- });
80
- return dependencies;
81
- }, []);
82
- }
83
- /**
84
- * Gets dependency tree for all entity metadatas with non-nullable relations.
85
- * We need to execute insertions first for entities which non-nullable relations.
86
- */
87
- getDependencies() {
88
- return this.metadatas.reduce((dependencies, metadata) => {
89
- metadata.relationsWithJoinColumns.forEach((relation) => {
90
- if (relation.inverseEntityMetadata === metadata)
91
- return;
92
- dependencies.push([
93
- metadata.targetName,
94
- relation.inverseEntityMetadata.targetName,
95
- ]);
96
- });
97
- return dependencies;
98
- }, []);
99
- }
100
- /**
101
- * Sorts given graph using topological sorting algorithm.
102
- *
103
- * Algorithm is kindly taken from https://github.com/marcelklehr/toposort repository.
104
- */
105
- toposort(edges) {
106
- function uniqueNodes(arr) {
107
- let res = [];
108
- for (let i = 0, len = arr.length; i < len; i++) {
109
- let edge = arr[i];
110
- if (res.indexOf(edge[0]) < 0)
111
- res.push(edge[0]);
112
- if (res.indexOf(edge[1]) < 0)
113
- res.push(edge[1]);
114
- }
115
- return res;
116
- }
117
- const nodes = uniqueNodes(edges);
118
- let cursor = nodes.length, sorted = new Array(cursor), visited = {}, i = cursor;
119
- while (i--) {
120
- if (!visited[i])
121
- visit(nodes[i], i, []);
122
- }
123
- function visit(node, i, predecessors) {
124
- if (predecessors.indexOf(node) >= 0) {
125
- throw new TypeORMError("Cyclic dependency: " + JSON.stringify(node)); // todo: better error
126
- }
127
- if (!~nodes.indexOf(node)) {
128
- throw new TypeORMError("Found unknown node. Make sure to provided all involved nodes. Unknown node: " +
129
- JSON.stringify(node));
130
- }
131
- if (visited[i])
132
- return;
133
- visited[i] = true;
134
- let outgoing = edges.filter(function (edge) {
135
- return edge[0] === node;
136
- });
137
- if ((i = outgoing.length)) {
138
- let preds = predecessors.concat(node);
139
- do {
140
- let child = outgoing[--i][1];
141
- visit(child, nodes.indexOf(child), preds);
142
- } while (i);
143
- }
144
- sorted[--cursor] = node;
145
- }
146
- return sorted;
147
- }
148
- }
149
- ;
150
- ({}); // @--end-of-file-for-module=taon-typeorm lib/typeorm/persistence/SubjectTopoligicalSorter.ts
151
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3ViamVjdFRvcG9saWdpY2FsU29ydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdGFvbi10eXBlb3JtL3Byb2plY3RzL3Rhb24tdHlwZW9ybS9zcmMvbGliL3R5cGVvcm0vcGVyc2lzdGVuY2UvU3ViamVjdFRvcG9saWdpY2FsU29ydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxVQUFVLENBQUE7QUFFdkM7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLHdCQUF3QjtJQW1CakMsWUFBWSxRQUFtQjtRQUMzQixJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsR0FBRyxRQUFRLENBQUMsQ0FBQSxDQUFDLGtEQUFrRDtRQUNoRixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7SUFDM0QsQ0FBQztJQU1EOztPQUVHO0lBQ0gsSUFBSSxDQUFDLFNBQThCO1FBRS9CLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU07WUFBRSxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUE7UUFFaEQsTUFBTSxjQUFjLEdBQWMsRUFBRSxDQUFBO1FBSXBDLElBQUksU0FBUyxLQUFLLFFBQVEsRUFBRSxDQUFDO1lBQ3pCLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQ3pDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUMxRCxDQUFBO1lBQ0QsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLGdCQUFnQixDQUFDLENBQUE7WUFDeEMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGdCQUFnQixDQUFDLENBQUE7UUFDOUMsQ0FBQztRQUdELE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxDQUFDLDBCQUEwQixFQUFFLENBQUE7UUFDakUsSUFBSSw4QkFBOEIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUM5Qyx1QkFBdUIsQ0FDMUIsQ0FBQTtRQUNELElBQUksU0FBUyxLQUFLLFFBQVE7WUFDdEIsOEJBQThCO2dCQUMxQiw4QkFBOEIsQ0FBQyxPQUFPLEVBQUUsQ0FBQTtRQUtoRCw4QkFBOEIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxrQkFBa0IsRUFBRSxFQUFFO1lBQzFELE1BQU0sb0JBQW9CLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQzdDLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FDUixPQUFPLENBQUMsUUFBUSxDQUFDLFVBQVUsS0FBSyxrQkFBa0I7Z0JBQ2xELE9BQU8sQ0FBQyxRQUFRLENBQUMsb0JBQW9CLEVBQUUsVUFBVTtvQkFDN0Msa0JBQWtCLENBQzdCLENBQUE7WUFDRCxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsb0JBQW9CLENBQUMsQ0FBQTtZQUM1QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtRQUNsRCxDQUFDLENBQUMsQ0FBQTtRQUlGLE1BQU0saUJBQWlCLEdBQWUsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFBO1FBQzVELElBQUksd0JBQXdCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFBO1FBQy9ELElBQUksU0FBUyxLQUFLLFFBQVE7WUFDdEIsd0JBQXdCLEdBQUcsd0JBQXdCLENBQUMsT0FBTyxFQUFFLENBQUE7UUFFakUsd0JBQXdCLENBQUMsT0FBTyxDQUFDLENBQUMsa0JBQWtCLEVBQUUsRUFBRTtZQUNwRCxNQUFNLG9CQUFvQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUM3QyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxVQUFVLEtBQUssa0JBQWtCLENBQ2xFLENBQUE7WUFDRCxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsb0JBQW9CLENBQUMsQ0FBQTtZQUM1QyxJQUFJLENBQUMsbUJBQW1CLENBQUMsb0JBQW9CLENBQUMsQ0FBQTtRQUNsRCxDQUFDLENBQUMsQ0FBQTtRQUdGLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDckMsT0FBTyxjQUFjLENBQUE7SUFDekIsQ0FBQztJQU1EOztPQUVHO0lBQ08sbUJBQW1CLENBQUMsUUFBbUI7UUFDN0MsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ3pCLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFBO1FBQzNELENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQUVEOztPQUVHO0lBQ08sa0JBQWtCLENBQUMsUUFBbUI7UUFDNUMsTUFBTSxTQUFTLEdBQXFCLEVBQUUsQ0FBQTtRQUN0QyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDekIsSUFBSSxTQUFTLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQ3hDLENBQUMsQ0FBQyxDQUFBO1FBQ0YsT0FBTyxTQUFTLENBQUE7SUFDcEIsQ0FBQztJQUVEOzs7T0FHRztJQUNPLDBCQUEwQjtRQUNoQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsWUFBWSxFQUFFLFFBQVEsRUFBRSxFQUFFO1lBQ3BELFFBQVEsQ0FBQyx3QkFBd0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtnQkFDbkQsSUFBSSxRQUFRLENBQUMsVUFBVTtvQkFBRSxPQUFNO2dCQUUvQixZQUFZLENBQUMsSUFBSSxDQUFDO29CQUNkLFFBQVEsQ0FBQyxVQUFVO29CQUNuQixRQUFRLENBQUMscUJBQXFCLENBQUMsVUFBVTtpQkFDNUMsQ0FBQyxDQUFBO1lBQ04sQ0FBQyxDQUFDLENBQUE7WUFDRixPQUFPLFlBQVksQ0FBQTtRQUN2QixDQUFDLEVBQUUsRUFBZ0IsQ0FBQyxDQUFBO0lBQ3hCLENBQUM7SUFFRDs7O09BR0c7SUFDTyxlQUFlO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxZQUFZLEVBQUUsUUFBUSxFQUFFLEVBQUU7WUFDcEQsUUFBUSxDQUFDLHdCQUF3QixDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEsRUFBRSxFQUFFO2dCQUVuRCxJQUFJLFFBQVEsQ0FBQyxxQkFBcUIsS0FBSyxRQUFRO29CQUFFLE9BQU07Z0JBRXZELFlBQVksQ0FBQyxJQUFJLENBQUM7b0JBQ2QsUUFBUSxDQUFDLFVBQVU7b0JBQ25CLFFBQVEsQ0FBQyxxQkFBcUIsQ0FBQyxVQUFVO2lCQUM1QyxDQUFDLENBQUE7WUFDTixDQUFDLENBQUMsQ0FBQTtZQUNGLE9BQU8sWUFBWSxDQUFBO1FBQ3ZCLENBQUMsRUFBRSxFQUFnQixDQUFDLENBQUE7SUFDeEIsQ0FBQztJQUVEOzs7O09BSUc7SUFDTyxRQUFRLENBQUMsS0FBYztRQUM3QixTQUFTLFdBQVcsQ0FBQyxHQUFVO1lBQzNCLElBQUksR0FBRyxHQUFHLEVBQUUsQ0FBQTtZQUNaLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsR0FBRyxHQUFHLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztnQkFDN0MsSUFBSSxJQUFJLEdBQVEsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFBO2dCQUN0QixJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztvQkFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO2dCQUMvQyxJQUFJLEdBQUcsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztvQkFBRSxHQUFHLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQ25ELENBQUM7WUFDRCxPQUFPLEdBQUcsQ0FBQTtRQUNkLENBQUM7UUFFRCxNQUFNLEtBQUssR0FBRyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUE7UUFDaEMsSUFBSSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sRUFDckIsTUFBTSxHQUFHLElBQUksS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUMxQixPQUFPLEdBQVEsRUFBRSxFQUNqQixDQUFDLEdBQUcsTUFBTSxDQUFBO1FBRWQsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ1QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7UUFDM0MsQ0FBQztRQUVELFNBQVMsS0FBSyxDQUFDLElBQVMsRUFBRSxDQUFTLEVBQUUsWUFBbUI7WUFDcEQsSUFBSSxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUNsQyxNQUFNLElBQUksWUFBWSxDQUNsQixxQkFBcUIsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUMvQyxDQUFBLENBQUMscUJBQXFCO1lBQzNCLENBQUM7WUFFRCxJQUFJLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7Z0JBQ3hCLE1BQU0sSUFBSSxZQUFZLENBQ2xCLDhFQUE4RTtvQkFDMUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FDM0IsQ0FBQTtZQUNMLENBQUM7WUFFRCxJQUFJLE9BQU8sQ0FBQyxDQUFDLENBQUM7Z0JBQUUsT0FBTTtZQUN0QixPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFBO1lBR2pCLElBQUksUUFBUSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxJQUFJO2dCQUN0QyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUE7WUFDM0IsQ0FBQyxDQUFDLENBQUE7WUFDRixJQUFJLENBQUMsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO2dCQUN4QixJQUFJLEtBQUssR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFBO2dCQUNyQyxHQUFHLENBQUM7b0JBQ0EsSUFBSSxLQUFLLEdBQUcsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUE7b0JBQzVCLEtBQUssQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQTtnQkFDN0MsQ0FBQyxRQUFRLENBQUMsRUFBQztZQUNmLENBQUM7WUFFRCxNQUFNLENBQUMsRUFBRSxNQUFNLENBQUMsR0FBRyxJQUFJLENBQUE7UUFDM0IsQ0FBQztRQUVELE9BQU8sTUFBTSxDQUFBO0lBQ2pCLENBQUM7Q0FDSjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsNkZBQTZGIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwiLi9TdWJqZWN0XCJcbmltcG9ydCB7IEVudGl0eU1ldGFkYXRhIH0gZnJvbSBcIi4uL21ldGFkYXRhL0VudGl0eU1ldGFkYXRhXCJcbmltcG9ydCB7IFR5cGVPUk1FcnJvciB9IGZyb20gXCIuLi9lcnJvclwiXG5cbi8qKlxuICogT3JkZXJzIGluc2VydCBvciByZW1vdmUgc3ViamVjdHMgaW4gcHJvcGVyIG9yZGVyICh1c2luZyB0b3BvbG9naWNhbCBzb3J0aW5nKVxuICogdG8gbWFrZSBzdXJlIGluc2VydCBvciByZW1vdmUgb3BlcmF0aW9ucyBhcmUgZXhlY3V0ZWQgaW4gYSBwcm9wZXIgb3JkZXIuXG4gKi9cbmV4cG9ydCBjbGFzcyBTdWJqZWN0VG9wb2xpZ2ljYWxTb3J0ZXIge1xuXG5cblxuXG4gICAgLyoqXG4gICAgICogSW5zZXJ0IHN1YmplY3RzIG5lZWRzIHRvIGJlIHNvcnRlZC5cbiAgICAgKi9cbiAgICBzdWJqZWN0czogU3ViamVjdFtdXG5cbiAgICAvKipcbiAgICAgKiBVbmlxdWUgbGlzdCBvZiBlbnRpdHkgbWV0YWRhdGFzIG9mIHRoaXMgc3ViamVjdC5cbiAgICAgKi9cbiAgICBtZXRhZGF0YXM6IEVudGl0eU1ldGFkYXRhW11cblxuXG5cblxuXG4gICAgY29uc3RydWN0b3Ioc3ViamVjdHM6IFN1YmplY3RbXSkge1xuICAgICAgICB0aGlzLnN1YmplY3RzID0gWy4uLnN1YmplY3RzXSAvLyBjb3B5IHN1YmplY3RzIHRvIHByZXZlbnQgY2hhbmdpbmcgb2Ygc2VudCBhcnJheVxuICAgICAgICB0aGlzLm1ldGFkYXRhcyA9IHRoaXMuZ2V0VW5pcXVlTWV0YWRhdGFzKHRoaXMuc3ViamVjdHMpXG4gICAgfVxuXG5cblxuXG5cbiAgICAvKipcbiAgICAgKiBTb3J0cyAob3JkZXJzKSBzdWJqZWN0cyBpbiB0aGVpciB0b3BvbG9naWNhbCBvcmRlci5cbiAgICAgKi9cbiAgICBzb3J0KGRpcmVjdGlvbjogXCJpbnNlcnRcIiB8IFwiZGVsZXRlXCIpOiBTdWJqZWN0W10ge1xuXG4gICAgICAgIGlmICghdGhpcy5tZXRhZGF0YXMubGVuZ3RoKSByZXR1cm4gdGhpcy5zdWJqZWN0c1xuXG4gICAgICAgIGNvbnN0IHNvcnRlZFN1YmplY3RzOiBTdWJqZWN0W10gPSBbXVxuXG5cblxuICAgICAgICBpZiAoZGlyZWN0aW9uID09PSBcImRlbGV0ZVwiKSB7XG4gICAgICAgICAgICBjb25zdCBqdW5jdGlvblN1YmplY3RzID0gdGhpcy5zdWJqZWN0cy5maWx0ZXIoXG4gICAgICAgICAgICAgICAgKHN1YmplY3QpID0+ICFzdWJqZWN0LmVudGl0eSAmJiAhc3ViamVjdC5kYXRhYmFzZUVudGl0eSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIHNvcnRlZFN1YmplY3RzLnB1c2goLi4uanVuY3Rpb25TdWJqZWN0cylcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlQWxyZWFkeVNvcnRlZChqdW5jdGlvblN1YmplY3RzKVxuICAgICAgICB9XG5cblxuICAgICAgICBjb25zdCBub25OdWxsYWJsZURlcGVuZGVuY2llcyA9IHRoaXMuZ2V0Tm9uTnVsbGFibGVEZXBlbmRlbmNpZXMoKVxuICAgICAgICBsZXQgc29ydGVkTm9uTnVsbGFibGVFbnRpdHlUYXJnZXRzID0gdGhpcy50b3Bvc29ydChcbiAgICAgICAgICAgIG5vbk51bGxhYmxlRGVwZW5kZW5jaWVzLFxuICAgICAgICApXG4gICAgICAgIGlmIChkaXJlY3Rpb24gPT09IFwiaW5zZXJ0XCIpXG4gICAgICAgICAgICBzb3J0ZWROb25OdWxsYWJsZUVudGl0eVRhcmdldHMgPVxuICAgICAgICAgICAgICAgIHNvcnRlZE5vbk51bGxhYmxlRW50aXR5VGFyZ2V0cy5yZXZlcnNlKClcblxuXG5cblxuICAgICAgICBzb3J0ZWROb25OdWxsYWJsZUVudGl0eVRhcmdldHMuZm9yRWFjaCgoc29ydGVkRW50aXR5VGFyZ2V0KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBlbnRpdHlUYXJnZXRTdWJqZWN0cyA9IHRoaXMuc3ViamVjdHMuZmlsdGVyKFxuICAgICAgICAgICAgICAgIChzdWJqZWN0KSA9PlxuICAgICAgICAgICAgICAgICAgICBzdWJqZWN0Lm1ldGFkYXRhLnRhcmdldE5hbWUgPT09IHNvcnRlZEVudGl0eVRhcmdldCB8fFxuICAgICAgICAgICAgICAgICAgICBzdWJqZWN0Lm1ldGFkYXRhLnBhcmVudEVudGl0eU1ldGFkYXRhPy50YXJnZXROYW1lID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgc29ydGVkRW50aXR5VGFyZ2V0LFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgc29ydGVkU3ViamVjdHMucHVzaCguLi5lbnRpdHlUYXJnZXRTdWJqZWN0cylcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlQWxyZWFkeVNvcnRlZChlbnRpdHlUYXJnZXRTdWJqZWN0cylcbiAgICAgICAgfSlcblxuXG5cbiAgICAgICAgY29uc3Qgb3RoZXJEZXBlbmRlbmNpZXM6IHN0cmluZ1tdW10gPSB0aGlzLmdldERlcGVuZGVuY2llcygpXG4gICAgICAgIGxldCBzb3J0ZWRPdGhlckVudGl0eVRhcmdldHMgPSB0aGlzLnRvcG9zb3J0KG90aGVyRGVwZW5kZW5jaWVzKVxuICAgICAgICBpZiAoZGlyZWN0aW9uID09PSBcImluc2VydFwiKVxuICAgICAgICAgICAgc29ydGVkT3RoZXJFbnRpdHlUYXJnZXRzID0gc29ydGVkT3RoZXJFbnRpdHlUYXJnZXRzLnJldmVyc2UoKVxuXG4gICAgICAgIHNvcnRlZE90aGVyRW50aXR5VGFyZ2V0cy5mb3JFYWNoKChzb3J0ZWRFbnRpdHlUYXJnZXQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGVudGl0eVRhcmdldFN1YmplY3RzID0gdGhpcy5zdWJqZWN0cy5maWx0ZXIoXG4gICAgICAgICAgICAgICAgKHN1YmplY3QpID0+IHN1YmplY3QubWV0YWRhdGEudGFyZ2V0TmFtZSA9PT0gc29ydGVkRW50aXR5VGFyZ2V0LFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgc29ydGVkU3ViamVjdHMucHVzaCguLi5lbnRpdHlUYXJnZXRTdWJqZWN0cylcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlQWxyZWFkeVNvcnRlZChlbnRpdHlUYXJnZXRTdWJqZWN0cylcbiAgICAgICAgfSlcblxuXG4gICAgICAgIHNvcnRlZFN1YmplY3RzLnB1c2goLi4udGhpcy5zdWJqZWN0cylcbiAgICAgICAgcmV0dXJuIHNvcnRlZFN1YmplY3RzXG4gICAgfVxuXG5cblxuXG5cbiAgICAvKipcbiAgICAgKiBSZW1vdmVzIGFscmVhZHkgc29ydGVkIHN1YmplY3RzIGZyb20gdGhpcy5zdWJqZWN0cyBsaXN0IG9mIHN1YmplY3RzLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCByZW1vdmVBbHJlYWR5U29ydGVkKHN1YmplY3RzOiBTdWJqZWN0W10pIHtcbiAgICAgICAgc3ViamVjdHMuZm9yRWFjaCgoc3ViamVjdCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5zdWJqZWN0cy5zcGxpY2UodGhpcy5zdWJqZWN0cy5pbmRleE9mKHN1YmplY3QpLCAxKVxuICAgICAgICB9KVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEV4dHJhY3RzIGFsbCB1bmlxdWUgbWV0YWRhdGFzIGZyb20gdGhlIGdpdmVuIHN1YmplY3RzLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBnZXRVbmlxdWVNZXRhZGF0YXMoc3ViamVjdHM6IFN1YmplY3RbXSkge1xuICAgICAgICBjb25zdCBtZXRhZGF0YXM6IEVudGl0eU1ldGFkYXRhW10gPSBbXVxuICAgICAgICBzdWJqZWN0cy5mb3JFYWNoKChzdWJqZWN0KSA9PiB7XG4gICAgICAgICAgICBpZiAobWV0YWRhdGFzLmluZGV4T2Yoc3ViamVjdC5tZXRhZGF0YSkgPT09IC0xKVxuICAgICAgICAgICAgICAgIG1ldGFkYXRhcy5wdXNoKHN1YmplY3QubWV0YWRhdGEpXG4gICAgICAgIH0pXG4gICAgICAgIHJldHVybiBtZXRhZGF0YXNcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIGRlcGVuZGVuY3kgdHJlZSBmb3IgYWxsIGVudGl0eSBtZXRhZGF0YXMgd2l0aCBub24tbnVsbGFibGUgcmVsYXRpb25zLlxuICAgICAqIFdlIG5lZWQgdG8gZXhlY3V0ZSBpbnNlcnRpb25zIGZpcnN0IGZvciBlbnRpdGllcyB3aGljaCBub24tbnVsbGFibGUgcmVsYXRpb25zLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBnZXROb25OdWxsYWJsZURlcGVuZGVuY2llcygpOiBzdHJpbmdbXVtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubWV0YWRhdGFzLnJlZHVjZSgoZGVwZW5kZW5jaWVzLCBtZXRhZGF0YSkgPT4ge1xuICAgICAgICAgICAgbWV0YWRhdGEucmVsYXRpb25zV2l0aEpvaW5Db2x1bW5zLmZvckVhY2goKHJlbGF0aW9uKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHJlbGF0aW9uLmlzTnVsbGFibGUpIHJldHVyblxuXG4gICAgICAgICAgICAgICAgZGVwZW5kZW5jaWVzLnB1c2goW1xuICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YS50YXJnZXROYW1lLFxuICAgICAgICAgICAgICAgICAgICByZWxhdGlvbi5pbnZlcnNlRW50aXR5TWV0YWRhdGEudGFyZ2V0TmFtZSxcbiAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIHJldHVybiBkZXBlbmRlbmNpZXNcbiAgICAgICAgfSwgW10gYXMgc3RyaW5nW11bXSlcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIGRlcGVuZGVuY3kgdHJlZSBmb3IgYWxsIGVudGl0eSBtZXRhZGF0YXMgd2l0aCBub24tbnVsbGFibGUgcmVsYXRpb25zLlxuICAgICAqIFdlIG5lZWQgdG8gZXhlY3V0ZSBpbnNlcnRpb25zIGZpcnN0IGZvciBlbnRpdGllcyB3aGljaCBub24tbnVsbGFibGUgcmVsYXRpb25zLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBnZXREZXBlbmRlbmNpZXMoKTogc3RyaW5nW11bXSB7XG4gICAgICAgIHJldHVybiB0aGlzLm1ldGFkYXRhcy5yZWR1Y2UoKGRlcGVuZGVuY2llcywgbWV0YWRhdGEpID0+IHtcbiAgICAgICAgICAgIG1ldGFkYXRhLnJlbGF0aW9uc1dpdGhKb2luQ29sdW1ucy5mb3JFYWNoKChyZWxhdGlvbikgPT4ge1xuXG4gICAgICAgICAgICAgICAgaWYgKHJlbGF0aW9uLmludmVyc2VFbnRpdHlNZXRhZGF0YSA9PT0gbWV0YWRhdGEpIHJldHVyblxuXG4gICAgICAgICAgICAgICAgZGVwZW5kZW5jaWVzLnB1c2goW1xuICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YS50YXJnZXROYW1lLFxuICAgICAgICAgICAgICAgICAgICByZWxhdGlvbi5pbnZlcnNlRW50aXR5TWV0YWRhdGEudGFyZ2V0TmFtZSxcbiAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIHJldHVybiBkZXBlbmRlbmNpZXNcbiAgICAgICAgfSwgW10gYXMgc3RyaW5nW11bXSlcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTb3J0cyBnaXZlbiBncmFwaCB1c2luZyB0b3BvbG9naWNhbCBzb3J0aW5nIGFsZ29yaXRobS5cbiAgICAgKlxuICAgICAqIEFsZ29yaXRobSBpcyBraW5kbHkgdGFrZW4gZnJvbSBodHRwczovL2dpdGh1Yi5jb20vbWFyY2Vsa2xlaHIvdG9wb3NvcnQgcmVwb3NpdG9yeS5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgdG9wb3NvcnQoZWRnZXM6IGFueVtdW10pIHtcbiAgICAgICAgZnVuY3Rpb24gdW5pcXVlTm9kZXMoYXJyOiBhbnlbXSkge1xuICAgICAgICAgICAgbGV0IHJlcyA9IFtdXG4gICAgICAgICAgICBmb3IgKGxldCBpID0gMCwgbGVuID0gYXJyLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XG4gICAgICAgICAgICAgICAgbGV0IGVkZ2U6IGFueSA9IGFycltpXVxuICAgICAgICAgICAgICAgIGlmIChyZXMuaW5kZXhPZihlZGdlWzBdKSA8IDApIHJlcy5wdXNoKGVkZ2VbMF0pXG4gICAgICAgICAgICAgICAgaWYgKHJlcy5pbmRleE9mKGVkZ2VbMV0pIDwgMCkgcmVzLnB1c2goZWRnZVsxXSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiByZXNcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5vZGVzID0gdW5pcXVlTm9kZXMoZWRnZXMpXG4gICAgICAgIGxldCBjdXJzb3IgPSBub2Rlcy5sZW5ndGgsXG4gICAgICAgICAgICBzb3J0ZWQgPSBuZXcgQXJyYXkoY3Vyc29yKSxcbiAgICAgICAgICAgIHZpc2l0ZWQ6IGFueSA9IHt9LFxuICAgICAgICAgICAgaSA9IGN1cnNvclxuXG4gICAgICAgIHdoaWxlIChpLS0pIHtcbiAgICAgICAgICAgIGlmICghdmlzaXRlZFtpXSkgdmlzaXQobm9kZXNbaV0sIGksIFtdKVxuICAgICAgICB9XG5cbiAgICAgICAgZnVuY3Rpb24gdmlzaXQobm9kZTogYW55LCBpOiBudW1iZXIsIHByZWRlY2Vzc29yczogYW55W10pIHtcbiAgICAgICAgICAgIGlmIChwcmVkZWNlc3NvcnMuaW5kZXhPZihub2RlKSA+PSAwKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVPUk1FcnJvcihcbiAgICAgICAgICAgICAgICAgICAgXCJDeWNsaWMgZGVwZW5kZW5jeTogXCIgKyBKU09OLnN0cmluZ2lmeShub2RlKSxcbiAgICAgICAgICAgICAgICApIC8vIHRvZG86IGJldHRlciBlcnJvclxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIX5ub2Rlcy5pbmRleE9mKG5vZGUpKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IFR5cGVPUk1FcnJvcihcbiAgICAgICAgICAgICAgICAgICAgXCJGb3VuZCB1bmtub3duIG5vZGUuIE1ha2Ugc3VyZSB0byBwcm92aWRlZCBhbGwgaW52b2x2ZWQgbm9kZXMuIFVua25vd24gbm9kZTogXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgSlNPTi5zdHJpbmdpZnkobm9kZSksXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAodmlzaXRlZFtpXSkgcmV0dXJuXG4gICAgICAgICAgICB2aXNpdGVkW2ldID0gdHJ1ZVxuXG5cbiAgICAgICAgICAgIGxldCBvdXRnb2luZyA9IGVkZ2VzLmZpbHRlcihmdW5jdGlvbiAoZWRnZSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBlZGdlWzBdID09PSBub2RlXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgaWYgKChpID0gb3V0Z29pbmcubGVuZ3RoKSkge1xuICAgICAgICAgICAgICAgIGxldCBwcmVkcyA9IHByZWRlY2Vzc29ycy5jb25jYXQobm9kZSlcbiAgICAgICAgICAgICAgICBkbyB7XG4gICAgICAgICAgICAgICAgICAgIGxldCBjaGlsZCA9IG91dGdvaW5nWy0taV1bMV1cbiAgICAgICAgICAgICAgICAgICAgdmlzaXQoY2hpbGQsIG5vZGVzLmluZGV4T2YoY2hpbGQpLCBwcmVkcylcbiAgICAgICAgICAgICAgICB9IHdoaWxlIChpKVxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBzb3J0ZWRbLS1jdXJzb3JdID0gbm9kZVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHNvcnRlZFxuICAgIH1cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24tdHlwZW9ybSBsaWIvdHlwZW9ybS9wZXJzaXN0ZW5jZS9TdWJqZWN0VG9wb2xpZ2ljYWxTb3J0ZXIudHMiXX0=
@@ -1,84 +0,0 @@
1
- import { Subject } from "../Subject";
2
- import { ObjectUtils } from "../../util/ObjectUtils";
3
- /**
4
- * Finds all cascade operations of the given subject and cascade operations of the found cascaded subjects,
5
- * e.g. builds a cascade tree and creates a subjects for them.
6
- */
7
- export class CascadesSubjectBuilder {
8
- constructor(allSubjects) {
9
- this.allSubjects = allSubjects;
10
- }
11
- /**
12
- * Builds a cascade subjects tree and pushes them in into the given array of subjects.
13
- */
14
- build(subject, operationType) {
15
- subject.metadata
16
- .extractRelationValuesFromEntity(subject.entity, subject.metadata.relations) // todo: we can create EntityMetadata.cascadeRelations
17
- .forEach(([relation, relationEntity, relationEntityMetadata]) => {
18
- if (relationEntity === undefined ||
19
- relationEntity === null ||
20
- (!relation.isCascadeInsert &&
21
- !relation.isCascadeUpdate &&
22
- !relation.isCascadeSoftRemove &&
23
- !relation.isCascadeRecover))
24
- return;
25
- if (!ObjectUtils.isObject(relationEntity))
26
- return;
27
- const alreadyExistRelationEntitySubject = this.findByPersistEntityLike(relationEntityMetadata.target, relationEntity);
28
- if (alreadyExistRelationEntitySubject) {
29
- if (alreadyExistRelationEntitySubject.canBeInserted ===
30
- false)
31
- alreadyExistRelationEntitySubject.canBeInserted =
32
- relation.isCascadeInsert === true &&
33
- operationType === "save";
34
- if (alreadyExistRelationEntitySubject.canBeUpdated === false)
35
- alreadyExistRelationEntitySubject.canBeUpdated =
36
- relation.isCascadeUpdate === true &&
37
- operationType === "save";
38
- if (alreadyExistRelationEntitySubject.canBeSoftRemoved ===
39
- false)
40
- alreadyExistRelationEntitySubject.canBeSoftRemoved =
41
- relation.isCascadeSoftRemove === true &&
42
- operationType === "soft-remove";
43
- if (alreadyExistRelationEntitySubject.canBeRecovered ===
44
- false)
45
- alreadyExistRelationEntitySubject.canBeRecovered =
46
- relation.isCascadeRecover === true &&
47
- operationType === "recover";
48
- return;
49
- }
50
- const relationEntitySubject = new Subject({
51
- metadata: relationEntityMetadata,
52
- parentSubject: subject,
53
- entity: relationEntity,
54
- canBeInserted: relation.isCascadeInsert === true &&
55
- operationType === "save",
56
- canBeUpdated: relation.isCascadeUpdate === true &&
57
- operationType === "save",
58
- canBeSoftRemoved: relation.isCascadeSoftRemove === true &&
59
- operationType === "soft-remove",
60
- canBeRecovered: relation.isCascadeRecover === true &&
61
- operationType === "recover",
62
- });
63
- this.allSubjects.push(relationEntitySubject);
64
- this.build(relationEntitySubject, operationType);
65
- });
66
- }
67
- /**
68
- * Finds subject where entity like given subject's entity.
69
- * Comparison made by entity id.
70
- */
71
- findByPersistEntityLike(entityTarget, entity) {
72
- return this.allSubjects.find((subject) => {
73
- if (!subject.entity)
74
- return false;
75
- if (subject.entity === entity)
76
- return true;
77
- return (subject.metadata.target === entityTarget &&
78
- subject.metadata.compareEntities(subject.entityWithFulfilledIds, entity));
79
- });
80
- }
81
- }
82
- ;
83
- ({}); // @--end-of-file-for-module=taon-typeorm lib/typeorm/persistence/subject-builder/CascadesSubjectBuilder.ts
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FzY2FkZXNTdWJqZWN0QnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0L3Rhb24tdHlwZW9ybS9wcm9qZWN0cy90YW9uLXR5cGVvcm0vc3JjL2xpYi90eXBlb3JtL3BlcnNpc3RlbmNlL3N1YmplY3QtYnVpbGRlci9DYXNjYWRlc1N1YmplY3RCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFcEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHdCQUF3QixDQUFBO0FBRXBEOzs7R0FHRztBQUNILE1BQU0sT0FBTyxzQkFBc0I7SUFLL0IsWUFBc0IsV0FBc0I7UUFBdEIsZ0JBQVcsR0FBWCxXQUFXLENBQVc7SUFBRyxDQUFDO0lBTWhEOztPQUVHO0lBQ0gsS0FBSyxDQUNELE9BQWdCLEVBQ2hCLGFBQTREO1FBRTVELE9BQU8sQ0FBQyxRQUFRO2FBQ1gsK0JBQStCLENBQzVCLE9BQU8sQ0FBQyxNQUFPLEVBQ2YsT0FBTyxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQzdCLENBQUMsc0RBQXNEO2FBQ3ZELE9BQU8sQ0FBQyxDQUFDLENBQUMsUUFBUSxFQUFFLGNBQWMsRUFBRSxzQkFBc0IsQ0FBQyxFQUFFLEVBQUU7WUFFNUQsSUFDSSxjQUFjLEtBQUssU0FBUztnQkFDNUIsY0FBYyxLQUFLLElBQUk7Z0JBQ3ZCLENBQUMsQ0FBQyxRQUFRLENBQUMsZUFBZTtvQkFDdEIsQ0FBQyxRQUFRLENBQUMsZUFBZTtvQkFDekIsQ0FBQyxRQUFRLENBQUMsbUJBQW1CO29CQUM3QixDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFFL0IsT0FBTTtZQUlWLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLGNBQWMsQ0FBQztnQkFBRSxPQUFNO1lBR2pELE1BQU0saUNBQWlDLEdBQ25DLElBQUksQ0FBQyx1QkFBdUIsQ0FDeEIsc0JBQXNCLENBQUMsTUFBTSxFQUM3QixjQUFjLENBQ2pCLENBQUE7WUFDTCxJQUFJLGlDQUFpQyxFQUFFLENBQUM7Z0JBQ3BDLElBQ0ksaUNBQWlDLENBQUMsYUFBYTtvQkFDL0MsS0FBSztvQkFHTCxpQ0FBaUMsQ0FBQyxhQUFhO3dCQUMzQyxRQUFRLENBQUMsZUFBZSxLQUFLLElBQUk7NEJBQ2pDLGFBQWEsS0FBSyxNQUFNLENBQUE7Z0JBQ2hDLElBQ0ksaUNBQWlDLENBQUMsWUFBWSxLQUFLLEtBQUs7b0JBR3hELGlDQUFpQyxDQUFDLFlBQVk7d0JBQzFDLFFBQVEsQ0FBQyxlQUFlLEtBQUssSUFBSTs0QkFDakMsYUFBYSxLQUFLLE1BQU0sQ0FBQTtnQkFDaEMsSUFDSSxpQ0FBaUMsQ0FBQyxnQkFBZ0I7b0JBQ2xELEtBQUs7b0JBR0wsaUNBQWlDLENBQUMsZ0JBQWdCO3dCQUM5QyxRQUFRLENBQUMsbUJBQW1CLEtBQUssSUFBSTs0QkFDckMsYUFBYSxLQUFLLGFBQWEsQ0FBQTtnQkFDdkMsSUFDSSxpQ0FBaUMsQ0FBQyxjQUFjO29CQUNoRCxLQUFLO29CQUdMLGlDQUFpQyxDQUFDLGNBQWM7d0JBQzVDLFFBQVEsQ0FBQyxnQkFBZ0IsS0FBSyxJQUFJOzRCQUNsQyxhQUFhLEtBQUssU0FBUyxDQUFBO2dCQUNuQyxPQUFNO1lBQ1YsQ0FBQztZQUlELE1BQU0scUJBQXFCLEdBQUcsSUFBSSxPQUFPLENBQUM7Z0JBQ3RDLFFBQVEsRUFBRSxzQkFBc0I7Z0JBQ2hDLGFBQWEsRUFBRSxPQUFPO2dCQUN0QixNQUFNLEVBQUUsY0FBYztnQkFDdEIsYUFBYSxFQUNULFFBQVEsQ0FBQyxlQUFlLEtBQUssSUFBSTtvQkFDakMsYUFBYSxLQUFLLE1BQU07Z0JBQzVCLFlBQVksRUFDUixRQUFRLENBQUMsZUFBZSxLQUFLLElBQUk7b0JBQ2pDLGFBQWEsS0FBSyxNQUFNO2dCQUM1QixnQkFBZ0IsRUFDWixRQUFRLENBQUMsbUJBQW1CLEtBQUssSUFBSTtvQkFDckMsYUFBYSxLQUFLLGFBQWE7Z0JBQ25DLGNBQWMsRUFDVixRQUFRLENBQUMsZ0JBQWdCLEtBQUssSUFBSTtvQkFDbEMsYUFBYSxLQUFLLFNBQVM7YUFDbEMsQ0FBQyxDQUFBO1lBQ0YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQTtZQUc1QyxJQUFJLENBQUMsS0FBSyxDQUFDLHFCQUFxQixFQUFFLGFBQWEsQ0FBQyxDQUFBO1FBQ3BELENBQUMsQ0FBQyxDQUFBO0lBQ1YsQ0FBQztJQU1EOzs7T0FHRztJQUNPLHVCQUF1QixDQUM3QixZQUErQixFQUMvQixNQUFxQjtRQUVyQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDckMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNO2dCQUFFLE9BQU8sS0FBSyxDQUFBO1lBRWpDLElBQUksT0FBTyxDQUFDLE1BQU0sS0FBSyxNQUFNO2dCQUFFLE9BQU8sSUFBSSxDQUFBO1lBRTFDLE9BQU8sQ0FDSCxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sS0FBSyxZQUFZO2dCQUN4QyxPQUFPLENBQUMsUUFBUSxDQUFDLGVBQWUsQ0FDNUIsT0FBTyxDQUFDLHNCQUF1QixFQUMvQixNQUFNLENBQ1QsQ0FDSixDQUFBO1FBQ0wsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0NBQ0o7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDJHQUEyRyIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSBcIi4uL1N1YmplY3RcIlxuaW1wb3J0IHsgT2JqZWN0TGl0ZXJhbCB9IGZyb20gXCIuLi8uLi9jb21tb24vT2JqZWN0TGl0ZXJhbFwiXG5pbXBvcnQgeyBPYmplY3RVdGlscyB9IGZyb20gXCIuLi8uLi91dGlsL09iamVjdFV0aWxzXCJcblxuLyoqXG4gKiBGaW5kcyBhbGwgY2FzY2FkZSBvcGVyYXRpb25zIG9mIHRoZSBnaXZlbiBzdWJqZWN0IGFuZCBjYXNjYWRlIG9wZXJhdGlvbnMgb2YgdGhlIGZvdW5kIGNhc2NhZGVkIHN1YmplY3RzLFxuICogZS5nLiBidWlsZHMgYSBjYXNjYWRlIHRyZWUgYW5kIGNyZWF0ZXMgYSBzdWJqZWN0cyBmb3IgdGhlbS5cbiAqL1xuZXhwb3J0IGNsYXNzIENhc2NhZGVzU3ViamVjdEJ1aWxkZXIge1xuXG5cblxuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIGFsbFN1YmplY3RzOiBTdWJqZWN0W10pIHt9XG5cblxuXG5cblxuICAgIC8qKlxuICAgICAqIEJ1aWxkcyBhIGNhc2NhZGUgc3ViamVjdHMgdHJlZSBhbmQgcHVzaGVzIHRoZW0gaW4gaW50byB0aGUgZ2l2ZW4gYXJyYXkgb2Ygc3ViamVjdHMuXG4gICAgICovXG4gICAgYnVpbGQoXG4gICAgICAgIHN1YmplY3Q6IFN1YmplY3QsXG4gICAgICAgIG9wZXJhdGlvblR5cGU6IFwic2F2ZVwiIHwgXCJyZW1vdmVcIiB8IFwic29mdC1yZW1vdmVcIiB8IFwicmVjb3ZlclwiLFxuICAgICkge1xuICAgICAgICBzdWJqZWN0Lm1ldGFkYXRhXG4gICAgICAgICAgICAuZXh0cmFjdFJlbGF0aW9uVmFsdWVzRnJvbUVudGl0eShcbiAgICAgICAgICAgICAgICBzdWJqZWN0LmVudGl0eSEsXG4gICAgICAgICAgICAgICAgc3ViamVjdC5tZXRhZGF0YS5yZWxhdGlvbnMsXG4gICAgICAgICAgICApIC8vIHRvZG86IHdlIGNhbiBjcmVhdGUgRW50aXR5TWV0YWRhdGEuY2FzY2FkZVJlbGF0aW9uc1xuICAgICAgICAgICAgLmZvckVhY2goKFtyZWxhdGlvbiwgcmVsYXRpb25FbnRpdHksIHJlbGF0aW9uRW50aXR5TWV0YWRhdGFdKSA9PiB7XG5cbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uRW50aXR5ID09PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICAgICAgcmVsYXRpb25FbnRpdHkgPT09IG51bGwgfHxcbiAgICAgICAgICAgICAgICAgICAgKCFyZWxhdGlvbi5pc0Nhc2NhZGVJbnNlcnQgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICFyZWxhdGlvbi5pc0Nhc2NhZGVVcGRhdGUgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICFyZWxhdGlvbi5pc0Nhc2NhZGVTb2Z0UmVtb3ZlICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAhcmVsYXRpb24uaXNDYXNjYWRlUmVjb3ZlcilcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIHJldHVyblxuXG5cblxuICAgICAgICAgICAgICAgIGlmICghT2JqZWN0VXRpbHMuaXNPYmplY3QocmVsYXRpb25FbnRpdHkpKSByZXR1cm5cblxuXG4gICAgICAgICAgICAgICAgY29uc3QgYWxyZWFkeUV4aXN0UmVsYXRpb25FbnRpdHlTdWJqZWN0ID1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maW5kQnlQZXJzaXN0RW50aXR5TGlrZShcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uRW50aXR5TWV0YWRhdGEudGFyZ2V0LFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRpb25FbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICBpZiAoYWxyZWFkeUV4aXN0UmVsYXRpb25FbnRpdHlTdWJqZWN0KSB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgICAgIGFscmVhZHlFeGlzdFJlbGF0aW9uRW50aXR5U3ViamVjdC5jYW5CZUluc2VydGVkID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgKVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBhbHJlYWR5RXhpc3RSZWxhdGlvbkVudGl0eVN1YmplY3QuY2FuQmVJbnNlcnRlZCA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRpb24uaXNDYXNjYWRlSW5zZXJ0ID09PSB0cnVlICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0aW9uVHlwZSA9PT0gXCJzYXZlXCJcbiAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgYWxyZWFkeUV4aXN0UmVsYXRpb25FbnRpdHlTdWJqZWN0LmNhbkJlVXBkYXRlZCA9PT0gZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgKVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBhbHJlYWR5RXhpc3RSZWxhdGlvbkVudGl0eVN1YmplY3QuY2FuQmVVcGRhdGVkID1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxhdGlvbi5pc0Nhc2NhZGVVcGRhdGUgPT09IHRydWUgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVyYXRpb25UeXBlID09PSBcInNhdmVcIlxuICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICBhbHJlYWR5RXhpc3RSZWxhdGlvbkVudGl0eVN1YmplY3QuY2FuQmVTb2Z0UmVtb3ZlZCA9PT1cbiAgICAgICAgICAgICAgICAgICAgICAgIGZhbHNlXG4gICAgICAgICAgICAgICAgICAgIClcblxuICAgICAgICAgICAgICAgICAgICAgICAgYWxyZWFkeUV4aXN0UmVsYXRpb25FbnRpdHlTdWJqZWN0LmNhbkJlU29mdFJlbW92ZWQgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uLmlzQ2FzY2FkZVNvZnRSZW1vdmUgPT09IHRydWUgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVyYXRpb25UeXBlID09PSBcInNvZnQtcmVtb3ZlXCJcbiAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgYWxyZWFkeUV4aXN0UmVsYXRpb25FbnRpdHlTdWJqZWN0LmNhbkJlUmVjb3ZlcmVkID09PVxuICAgICAgICAgICAgICAgICAgICAgICAgZmFsc2VcbiAgICAgICAgICAgICAgICAgICAgKVxuXG4gICAgICAgICAgICAgICAgICAgICAgICBhbHJlYWR5RXhpc3RSZWxhdGlvbkVudGl0eVN1YmplY3QuY2FuQmVSZWNvdmVyZWQgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uLmlzQ2FzY2FkZVJlY292ZXIgPT09IHRydWUgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVyYXRpb25UeXBlID09PSBcInJlY292ZXJcIlxuICAgICAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgICAgICB9XG5cblxuXG4gICAgICAgICAgICAgICAgY29uc3QgcmVsYXRpb25FbnRpdHlTdWJqZWN0ID0gbmV3IFN1YmplY3Qoe1xuICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YTogcmVsYXRpb25FbnRpdHlNZXRhZGF0YSxcbiAgICAgICAgICAgICAgICAgICAgcGFyZW50U3ViamVjdDogc3ViamVjdCxcbiAgICAgICAgICAgICAgICAgICAgZW50aXR5OiByZWxhdGlvbkVudGl0eSxcbiAgICAgICAgICAgICAgICAgICAgY2FuQmVJbnNlcnRlZDpcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uLmlzQ2FzY2FkZUluc2VydCA9PT0gdHJ1ZSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0aW9uVHlwZSA9PT0gXCJzYXZlXCIsXG4gICAgICAgICAgICAgICAgICAgIGNhbkJlVXBkYXRlZDpcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uLmlzQ2FzY2FkZVVwZGF0ZSA9PT0gdHJ1ZSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0aW9uVHlwZSA9PT0gXCJzYXZlXCIsXG4gICAgICAgICAgICAgICAgICAgIGNhbkJlU29mdFJlbW92ZWQ6XG4gICAgICAgICAgICAgICAgICAgICAgICByZWxhdGlvbi5pc0Nhc2NhZGVTb2Z0UmVtb3ZlID09PSB0cnVlICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBvcGVyYXRpb25UeXBlID09PSBcInNvZnQtcmVtb3ZlXCIsXG4gICAgICAgICAgICAgICAgICAgIGNhbkJlUmVjb3ZlcmVkOlxuICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRpb24uaXNDYXNjYWRlUmVjb3ZlciA9PT0gdHJ1ZSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgb3BlcmF0aW9uVHlwZSA9PT0gXCJyZWNvdmVyXCIsXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICB0aGlzLmFsbFN1YmplY3RzLnB1c2gocmVsYXRpb25FbnRpdHlTdWJqZWN0KVxuXG5cbiAgICAgICAgICAgICAgICB0aGlzLmJ1aWxkKHJlbGF0aW9uRW50aXR5U3ViamVjdCwgb3BlcmF0aW9uVHlwZSlcbiAgICAgICAgICAgIH0pXG4gICAgfVxuXG5cblxuXG5cbiAgICAvKipcbiAgICAgKiBGaW5kcyBzdWJqZWN0IHdoZXJlIGVudGl0eSBsaWtlIGdpdmVuIHN1YmplY3QncyBlbnRpdHkuXG4gICAgICogQ29tcGFyaXNvbiBtYWRlIGJ5IGVudGl0eSBpZC5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgZmluZEJ5UGVyc2lzdEVudGl0eUxpa2UoXG4gICAgICAgIGVudGl0eVRhcmdldDogRnVuY3Rpb24gfCBzdHJpbmcsXG4gICAgICAgIGVudGl0eTogT2JqZWN0TGl0ZXJhbCxcbiAgICApOiBTdWJqZWN0IHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWxsU3ViamVjdHMuZmluZCgoc3ViamVjdCkgPT4ge1xuICAgICAgICAgICAgaWYgKCFzdWJqZWN0LmVudGl0eSkgcmV0dXJuIGZhbHNlXG5cbiAgICAgICAgICAgIGlmIChzdWJqZWN0LmVudGl0eSA9PT0gZW50aXR5KSByZXR1cm4gdHJ1ZVxuXG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIHN1YmplY3QubWV0YWRhdGEudGFyZ2V0ID09PSBlbnRpdHlUYXJnZXQgJiZcbiAgICAgICAgICAgICAgICBzdWJqZWN0Lm1ldGFkYXRhLmNvbXBhcmVFbnRpdGllcyhcbiAgICAgICAgICAgICAgICAgICAgc3ViamVjdC5lbnRpdHlXaXRoRnVsZmlsbGVkSWRzISxcbiAgICAgICAgICAgICAgICAgICAgZW50aXR5LFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgIClcbiAgICAgICAgfSlcbiAgICB9XG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10YW9uLXR5cGVvcm0gbGliL3R5cGVvcm0vcGVyc2lzdGVuY2Uvc3ViamVjdC1idWlsZGVyL0Nhc2NhZGVzU3ViamVjdEJ1aWxkZXIudHMiXX0=
@@ -1,153 +0,0 @@
1
- import { Subject } from "../Subject";
2
- import { OrmUtils } from "../../util/OrmUtils";
3
- /**
4
- * Builds operations needs to be executed for many-to-many relations of the given subjects.
5
- *
6
- * by example: post contains owner many-to-many relation with categories in the property called "categories", e.g.
7
- * @ManyToMany(type => Category, category => category.posts) categories: Category[]
8
- * If user adds categories into the post and saves post we need to bind them.
9
- * This operation requires updation of junction table.
10
- */
11
- export class ManyToManySubjectBuilder {
12
- constructor(subjects) {
13
- this.subjects = subjects;
14
- }
15
- /**
16
- * Builds operations for any changes in the many-to-many relations of the subjects.
17
- */
18
- build() {
19
- this.subjects.forEach((subject) => {
20
- if (!subject.entity)
21
- return;
22
- subject.metadata.manyToManyRelations.forEach((relation) => {
23
- if (relation.persistenceEnabled === false)
24
- return;
25
- this.buildForSubjectRelation(subject, relation);
26
- });
27
- });
28
- }
29
- /**
30
- * Builds operations for removal of all many-to-many records of all many-to-many relations of the given subject.
31
- */
32
- buildForAllRemoval(subject) {
33
- if (!subject.databaseEntity)
34
- return;
35
- subject.metadata.manyToManyRelations.forEach((relation) => {
36
- if (relation.persistenceEnabled === false)
37
- return;
38
- const relatedEntityRelationIdsInDatabase = relation.getEntityValue(subject.databaseEntity);
39
- relatedEntityRelationIdsInDatabase.forEach((relationId) => {
40
- const junctionSubject = new Subject({
41
- metadata: relation.junctionEntityMetadata,
42
- parentSubject: subject,
43
- mustBeRemoved: true,
44
- identifier: this.buildJunctionIdentifier(subject, relation, relationId),
45
- });
46
- this.subjects.push(junctionSubject);
47
- });
48
- });
49
- }
50
- /**
51
- * Builds operations for a given subject and relation.
52
- *
53
- * by example: subject is "post" entity we are saving here and relation is "categories" inside it here.
54
- */
55
- buildForSubjectRelation(subject, relation) {
56
- let databaseRelatedEntityIds = [];
57
- if (subject.databaseEntity)
58
- databaseRelatedEntityIds = relation.getEntityValue(subject.databaseEntity);
59
- let relatedEntities = relation.getEntityValue(subject.entity);
60
- if (relatedEntities === null)
61
- relatedEntities = [];
62
- if (!Array.isArray(relatedEntities))
63
- return;
64
- relatedEntities.forEach((relatedEntity) => {
65
- let relatedEntityRelationIdMap = relation.inverseEntityMetadata.getEntityIdMap(relatedEntity);
66
- const relatedEntitySubject = this.subjects.find((subject) => {
67
- return subject.entity === relatedEntity;
68
- });
69
- if (relatedEntitySubject)
70
- relatedEntityRelationIdMap = relatedEntitySubject.identifier;
71
- if (!relatedEntityRelationIdMap) {
72
- if (!relatedEntitySubject)
73
- return;
74
- }
75
- const relatedEntityExistInDatabase = databaseRelatedEntityIds.find((databaseRelatedEntityRelationId) => {
76
- return OrmUtils.compareIds(databaseRelatedEntityRelationId, relatedEntityRelationIdMap);
77
- });
78
- if (relatedEntityExistInDatabase)
79
- return;
80
- const ownerValue = relation.isOwning
81
- ? subject
82
- : relatedEntitySubject || relatedEntity; // by example: ownerEntityMap is post from subject here
83
- const inverseValue = relation.isOwning
84
- ? relatedEntitySubject || relatedEntity
85
- : subject; // by example: inverseEntityMap is category from categories array here
86
- const junctionSubject = new Subject({
87
- metadata: relation.junctionEntityMetadata,
88
- parentSubject: subject,
89
- canBeInserted: true,
90
- });
91
- this.subjects.push(junctionSubject);
92
- relation.junctionEntityMetadata.ownerColumns.forEach((column) => {
93
- junctionSubject.changeMaps.push({
94
- column: column,
95
- value: ownerValue,
96
- });
97
- });
98
- relation.junctionEntityMetadata.inverseColumns.forEach((column) => {
99
- junctionSubject.changeMaps.push({
100
- column: column,
101
- value: inverseValue,
102
- });
103
- });
104
- });
105
- const changedInverseEntityRelationIds = [];
106
- relatedEntities.forEach((relatedEntity) => {
107
- let relatedEntityRelationIdMap = relation.inverseEntityMetadata.getEntityIdMap(relatedEntity);
108
- const relatedEntitySubject = this.subjects.find((subject) => {
109
- return subject.entity === relatedEntity;
110
- });
111
- if (relatedEntitySubject)
112
- relatedEntityRelationIdMap = relatedEntitySubject.identifier;
113
- if (relatedEntityRelationIdMap !== undefined &&
114
- relatedEntityRelationIdMap !== null)
115
- changedInverseEntityRelationIds.push(relatedEntityRelationIdMap);
116
- });
117
- const removedJunctionEntityIds = databaseRelatedEntityIds.filter((existRelationId) => {
118
- return !changedInverseEntityRelationIds.find((changedRelationId) => {
119
- return OrmUtils.compareIds(changedRelationId, existRelationId);
120
- });
121
- });
122
- removedJunctionEntityIds.forEach((removedEntityRelationId) => {
123
- const junctionSubject = new Subject({
124
- metadata: relation.junctionEntityMetadata,
125
- parentSubject: subject,
126
- mustBeRemoved: true,
127
- identifier: this.buildJunctionIdentifier(subject, relation, removedEntityRelationId),
128
- });
129
- this.subjects.push(junctionSubject);
130
- });
131
- }
132
- /**
133
- * Creates identifiers for junction table.
134
- * Example: { postId: 1, categoryId: 2 }
135
- */
136
- buildJunctionIdentifier(subject, relation, relationId) {
137
- const ownerEntityMap = relation.isOwning ? subject.entity : relationId;
138
- const inverseEntityMap = relation.isOwning
139
- ? relationId
140
- : subject.entity;
141
- const identifier = {};
142
- relation.junctionEntityMetadata.ownerColumns.forEach((column) => {
143
- OrmUtils.mergeDeep(identifier, column.createValueMap(column.referencedColumn.getEntityValue(ownerEntityMap)));
144
- });
145
- relation.junctionEntityMetadata.inverseColumns.forEach((column) => {
146
- OrmUtils.mergeDeep(identifier, column.createValueMap(column.referencedColumn.getEntityValue(inverseEntityMap)));
147
- });
148
- return identifier;
149
- }
150
- }
151
- ;
152
- ({}); // @--end-of-file-for-module=taon-typeorm lib/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.ts
153
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWFueVRvTWFueVN1YmplY3RCdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdGFvbi10eXBlb3JtL3Byb2plY3RzL3Rhb24tdHlwZW9ybS9zcmMvbGliL3R5cGVvcm0vcGVyc2lzdGVuY2Uvc3ViamVjdC1idWlsZGVyL01hbnlUb01hbnlTdWJqZWN0QnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBQ3BDLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUk5Qzs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxPQUFPLHdCQUF3QjtJQUtqQyxZQUFzQixRQUFtQjtRQUFuQixhQUFRLEdBQVIsUUFBUSxDQUFXO0lBQUcsQ0FBQztJQU03Qzs7T0FFRztJQUNILEtBQUs7UUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBRTlCLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTTtnQkFBRSxPQUFNO1lBRzNCLE9BQU8sQ0FBQyxRQUFRLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUMsUUFBUSxFQUFFLEVBQUU7Z0JBRXRELElBQUksUUFBUSxDQUFDLGtCQUFrQixLQUFLLEtBQUs7b0JBQUUsT0FBTTtnQkFFakQsSUFBSSxDQUFDLHVCQUF1QixDQUFDLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQTtZQUNuRCxDQUFDLENBQUMsQ0FBQTtRQUNOLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQUVEOztPQUVHO0lBQ0gsa0JBQWtCLENBQUMsT0FBZ0I7UUFHL0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjO1lBQUUsT0FBTTtRQUduQyxPQUFPLENBQUMsUUFBUSxDQUFDLG1CQUFtQixDQUFDLE9BQU8sQ0FBQyxDQUFDLFFBQVEs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YyxDQUNqQixNQUFNLENBQUMsZ0JBQWlCLENBQUMsY0FBYyxDQUFDLGNBQWMsQ0FBQyxDQUMxRCxDQUNKLENBQUE7UUFDTCxDQUFDLENBQUMsQ0FBQTtRQUNGLFFBQVEsQ0FBQyxzQkFBdUIsQ0FBQyxjQUFjLENBQUMsT0FBTyxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7WUFDL0QsUUFBUSxDQUFDLFNBQVMsQ0FDZCxVQUFVLEVBQ1YsTUFBTSxDQUFDLGNBQWMsQ0FDakIsTUFBTSxDQUFDLGdCQUFpQixDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUM1RCxDQUNKLENBQUE7UUFDTCxDQUFDLENBQUMsQ0FBQTtRQUNGLE9BQU8sVUFBVSxDQUFBO0lBQ3JCLENBQUM7Q0FDSjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsNkdBQTZHIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tIFwiLi4vU3ViamVjdFwiXG5pbXBvcnQgeyBPcm1VdGlscyB9IGZyb20gXCIuLi8uLi91dGlsL09ybVV0aWxzXCJcbmltcG9ydCB7IE9iamVjdExpdGVyYWwgfSBmcm9tIFwiLi4vLi4vY29tbW9uL09iamVjdExpdGVyYWxcIlxuaW1wb3J0IHsgUmVsYXRpb25NZXRhZGF0YSB9IGZyb20gXCIuLi8uLi9tZXRhZGF0YS9SZWxhdGlvbk1ldGFkYXRhXCJcblxuLyoqXG4gKiBCdWlsZHMgb3BlcmF0aW9ucyBuZWVkcyB0byBiZSBleGVjdXRlZCBmb3IgbWFueS10by1tYW55IHJlbGF0aW9ucyBvZiB0aGUgZ2l2ZW4gc3ViamVjdHMuXG4gKlxuICogYnkgZXhhbXBsZTogcG9zdCBjb250YWlucyBvd25lciBtYW55LXRvLW1hbnkgcmVsYXRpb24gd2l0aCBjYXRlZ29yaWVzIGluIHRoZSBwcm9wZXJ0eSBjYWxsZWQgXCJjYXRlZ29yaWVzXCIsIGUuZy5cbiAqICAgICAgICAgICAgIEBNYW55VG9NYW55KHR5cGUgPT4gQ2F0ZWdvcnksIGNhdGVnb3J5ID0+IGNhdGVnb3J5LnBvc3RzKSBjYXRlZ29yaWVzOiBDYXRlZ29yeVtdXG4gKiAgICAgICAgICAgICBJZiB1c2VyIGFkZHMgY2F0ZWdvcmllcyBpbnRvIHRoZSBwb3N0IGFuZCBzYXZlcyBwb3N0IHdlIG5lZWQgdG8gYmluZCB0aGVtLlxuICogICAgICAgICAgICAgVGhpcyBvcGVyYXRpb24gcmVxdWlyZXMgdXBkYXRpb24gb2YganVuY3Rpb24gdGFibGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBNYW55VG9NYW55U3ViamVjdEJ1aWxkZXIge1xuXG5cblxuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIHN1YmplY3RzOiBTdWJqZWN0W10pIHt9XG5cblxuXG5cblxuICAgIC8qKlxuICAgICAqIEJ1aWxkcyBvcGVyYXRpb25zIGZvciBhbnkgY2hhbmdlcyBpbiB0aGUgbWFueS10by1tYW55IHJlbGF0aW9ucyBvZiB0aGUgc3ViamVjdHMuXG4gICAgICovXG4gICAgYnVpbGQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3ViamVjdHMuZm9yRWFjaCgoc3ViamVjdCkgPT4ge1xuXG4gICAgICAgICAgICBpZiAoIXN1YmplY3QuZW50aXR5KSByZXR1cm5cblxuXG4gICAgICAgICAgICBzdWJqZWN0Lm1ldGFkYXRhLm1hbnlUb01hbnlSZWxhdGlvbnMuZm9yRWFjaCgocmVsYXRpb24pID0+IHtcblxuICAgICAgICAgICAgICAgIGlmIChyZWxhdGlvbi5wZXJzaXN0ZW5jZUVuYWJsZWQgPT09IGZhbHNlKSByZXR1cm5cblxuICAgICAgICAgICAgICAgIHRoaXMuYnVpbGRGb3JTdWJqZWN0UmVsYXRpb24oc3ViamVjdCwgcmVsYXRpb24pXG4gICAgICAgICAgICB9KVxuICAgICAgICB9KVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEJ1aWxkcyBvcGVyYXRpb25zIGZvciByZW1vdmFsIG9mIGFsbCBtYW55LXRvLW1hbnkgcmVjb3JkcyBvZiBhbGwgbWFueS10by1tYW55IHJlbGF0aW9ucyBvZiB0aGUgZ2l2ZW4gc3ViamVjdC5cbiAgICAgKi9cbiAgICBidWlsZEZvckFsbFJlbW92YWwoc3ViamVjdDogU3ViamVjdCkge1xuXG5cbiAgICAgICAgaWYgKCFzdWJqZWN0LmRhdGFiYXNlRW50aXR5KSByZXR1cm5cblxuXG4gICAgICAgIHN1YmplY3QubWV0YWRhdGEubWFueVRvTWFueVJlbGF0aW9ucy5mb3JFYWNoKChyZWxhdGlvbikgPT4ge1xuXG4gICAgICAgICAgICBpZiAocmVsYXRpb24ucGVyc2lzdGVuY2VFbmFibGVkID09PSBmYWxzZSkgcmV0dXJuXG5cblxuXG4gICAgICAgICAgICBjb25zdCByZWxhdGVkRW50aXR5UmVsYXRpb25JZHNJbkRhdGFiYXNlOiBPYmplY3RMaXRlcmFsW10gPVxuICAgICAgICAgICAgICAgIHJlbGF0aW9uLmdldEVudGl0eVZhbHVlKHN1YmplY3QuZGF0YWJhc2VFbnRpdHkhKVxuXG5cbiAgICAgICAgICAgIHJlbGF0ZWRFbnRpdHlSZWxhdGlvbklkc0luRGF0YWJhc2UuZm9yRWFjaCgocmVsYXRpb25JZCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGp1bmN0aW9uU3ViamVjdCA9IG5ldyBTdWJqZWN0KHtcbiAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGE6IHJlbGF0aW9uLmp1bmN0aW9uRW50aXR5TWV0YWRhdGEhLFxuICAgICAgICAgICAgICAgICAgICBwYXJlbnRTdWJqZWN0OiBzdWJqZWN0LFxuICAgICAgICAgICAgICAgICAgICBtdXN0QmVSZW1vdmVkOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICBpZGVudGlmaWVyOiB0aGlzLmJ1aWxkSnVuY3Rpb25JZGVudGlmaWVyKFxuICAgICAgICAgICAgICAgICAgICAgICAgc3ViamVjdCxcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRpb25JZCxcbiAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICB9KVxuXG5cblxuXG4gICAgICAgICAgICAgICAgdGhpcy5zdWJqZWN0cy5wdXNoKGp1bmN0aW9uU3ViamVjdClcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH0pXG4gICAgfVxuXG5cblxuXG5cbiAgICAvKipcbiAgICAgKiBCdWlsZHMgb3BlcmF0aW9ucyBmb3IgYSBnaXZlbiBzdWJqZWN0IGFuZCByZWxhdGlvbi5cbiAgICAgKlxuICAgICAqIGJ5IGV4YW1wbGU6IHN1YmplY3QgaXMgXCJwb3N0XCIgZW50aXR5IHdlIGFyZSBzYXZpbmcgaGVyZSBhbmQgcmVsYXRpb24gaXMgXCJjYXRlZ29yaWVzXCIgaW5zaWRlIGl0IGhlcmUuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGJ1aWxkRm9yU3ViamVjdFJlbGF0aW9uKFxuICAgICAgICBzdWJqZWN0OiBTdWJqZWN0LFxuICAgICAgICByZWxhdGlvbjogUmVsYXRpb25NZXRhZGF0YSxcbiAgICApIHtcblxuXG4gICAgICAgIGxldCBkYXRhYmFzZVJlbGF0ZWRFbnRpdHlJZHM6IE9iamVjdExpdGVyYWxbXSA9IFtdXG5cblxuXG4gICAgICAgIGlmIChzdWJqZWN0LmRhdGFiYXNlRW50aXR5KVxuICAgICAgICAgICAgZGF0YWJhc2VSZWxhdGVkRW50aXR5SWRzID0gcmVsYXRpb24uZ2V0RW50aXR5VmFsdWUoXG4gICAgICAgICAgICAgICAgc3ViamVjdC5kYXRhYmFzZUVudGl0eSxcbiAgICAgICAgICAgIClcblxuXG5cbiAgICAgICAgbGV0IHJlbGF0ZWRFbnRpdGllczogT2JqZWN0TGl0ZXJhbFtdID0gcmVsYXRpb24uZ2V0RW50aXR5VmFsdWUoXG4gICAgICAgICAgICBzdWJqZWN0LmVudGl0eSEsXG4gICAgICAgIClcbiAgICAgICAgaWYgKHJlbGF0ZWRFbnRpdGllcyA9PT0gbnVsbClcblxuICAgICAgICAgICAgcmVsYXRlZEVudGl0aWVzID0gW11cbiAgICAgICAgaWYgKCFBcnJheS5pc0FycmF5KHJlbGF0ZWRFbnRpdGllcykpIHJldHVyblxuXG5cbiAgICAgICAgcmVsYXRlZEVudGl0aWVzLmZvckVhY2goKHJlbGF0ZWRFbnRpdHkpID0+IHtcblxuXG5cblxuXG5cbiAgICAgICAgICAgIGxldCByZWxhdGVkRW50aXR5UmVsYXRpb25JZE1hcCA9XG4gICAgICAgICAgICAgICAgcmVsYXRpb24uaW52ZXJzZUVudGl0eU1ldGFkYXRhIS5nZXRFbnRpdHlJZE1hcChyZWxhdGVkRW50aXR5KVxuXG5cbiAgICAgICAgICAgIGNvbnN0IHJlbGF0ZWRFbnRpdHlTdWJqZWN0ID0gdGhpcy5zdWJqZWN0cy5maW5kKChzdWJqZWN0KSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHN1YmplY3QuZW50aXR5ID09PSByZWxhdGVkRW50aXR5XG4gICAgICAgICAgICB9KVxuXG5cbiAgICAgICAgICAgIGlmIChyZWxhdGVkRW50aXR5U3ViamVjdClcbiAgICAgICAgICAgICAgICByZWxhdGVkRW50aXR5UmVsYXRpb25JZE1hcCA9IHJlbGF0ZWRFbnRpdHlTdWJqZWN0LmlkZW50aWZpZXJcblxuXG4gICAgICAgICAgICBpZiAoIXJlbGF0ZWRFbnRpdHlSZWxhdGlvbklkTWFwKSB7XG5cblxuXG5cblxuXG5cblxuXG4gICAgICAgICAgICAgICAgaWYgKCFyZWxhdGVkRW50aXR5U3ViamVjdCkgcmV0dXJuXG4gICAgICAgICAgICB9XG5cblxuXG4gICAgICAgICAgICBjb25zdCByZWxhdGVkRW50aXR5RXhpc3RJbkRhdGFiYXNlID0gZGF0YWJhc2VSZWxhdGVkRW50aXR5SWRzLmZpbmQoXG4gICAgICAgICAgICAgICAgKGRhdGFiYXNlUmVsYXRlZEVudGl0eVJlbGF0aW9uSWQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE9ybVV0aWxzLmNvbXBhcmVJZHMoXG4gICAgICAgICAgICAgICAgICAgICAgICBkYXRhYmFzZVJlbGF0ZWRFbnRpdHlSZWxhdGlvbklkLFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRlZEVudGl0eVJlbGF0aW9uSWRNYXAsXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgKVxuXG5cbiAgICAgICAgICAgIGlmIChyZWxhdGVkRW50aXR5RXhpc3RJbkRhdGFiYXNlKSByZXR1cm5cblxuICAgICAgICAgICAgY29uc3Qgb3duZXJWYWx1ZSA9IHJlbGF0aW9uLmlzT3duaW5nXG4gICAgICAgICAgICAgICAgPyBzdWJqZWN0XG4gICAgICAgICAgICAgICAgOiByZWxhdGVkRW50aXR5U3ViamVjdCB8fCByZWxhdGVkRW50aXR5IC8vIGJ5IGV4YW1wbGU6IG93bmVyRW50aXR5TWFwIGlzIHBvc3QgZnJvbSBzdWJqZWN0IGhlcmVcbiAgICAgICAgICAgIGNvbnN0IGludmVyc2VWYWx1ZSA9IHJlbGF0aW9uLmlzT3duaW5nXG4gICAgICAgICAgICAgICAgPyByZWxhdGVkRW50aXR5U3ViamVjdCB8fCByZWxhdGVkRW50aXR5XG4gICAgICAgICAgICAgICAgOiBzdWJqZWN0IC8vIGJ5IGV4YW1wbGU6IGludmVyc2VFbnRpdHlNYXAgaXMgY2F0ZWdvcnkgZnJvbSBjYXRlZ29yaWVzIGFycmF5IGhlcmVcblxuXG4gICAgICAgICAgICBjb25zdCBqdW5jdGlvblN1YmplY3QgPSBuZXcgU3ViamVjdCh7XG4gICAgICAgICAgICAgICAgbWV0YWRhdGE6IHJlbGF0aW9uLmp1bmN0aW9uRW50aXR5TWV0YWRhdGEhLFxuICAgICAgICAgICAgICAgIHBhcmVudFN1YmplY3Q6IHN1YmplY3QsXG4gICAgICAgICAgICAgICAgY2FuQmVJbnNlcnRlZDogdHJ1ZSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB0aGlzLnN1YmplY3RzLnB1c2goanVuY3Rpb25TdWJqZWN0KVxuXG4gICAgICAgICAgICByZWxhdGlvbi5qdW5jdGlvbkVudGl0eU1ldGFkYXRhIS5vd25lckNvbHVtbnMuZm9yRWFjaCgoY29sdW1uKSA9PiB7XG4gICAgICAgICAgICAgICAganVuY3Rpb25TdWJqZWN0LmNoYW5nZU1hcHMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbjogY29sdW1uLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogb3duZXJWYWx1ZSxcblxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KVxuXG4gICAgICAgICAgICByZWxhdGlvbi5qdW5jdGlvbkVudGl0eU1ldGFkYXRhIS5pbnZlcnNlQ29sdW1ucy5mb3JFYWNoKFxuICAgICAgICAgICAgICAgIChjb2x1bW4pID0+IHtcbiAgICAgICAgICAgICAgICAgICAganVuY3Rpb25TdWJqZWN0LmNoYW5nZU1hcHMucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW46IGNvbHVtbixcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlOiBpbnZlcnNlVmFsdWUsXG5cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgKVxuICAgICAgICB9KVxuXG5cbiAgICAgICAgY29uc3QgY2hhbmdlZEludmVyc2VFbnRpdHlSZWxhdGlvbklkczogT2JqZWN0TGl0ZXJhbFtdID0gW11cbiAgICAgICAgcmVsYXRlZEVudGl0aWVzLmZvckVhY2goKHJlbGF0ZWRFbnRpdHkpID0+IHtcblxuICAgICAgICAgICAgbGV0IHJlbGF0ZWRFbnRpdHlSZWxhdGlvbklkTWFwID1cbiAgICAgICAgICAgICAgICByZWxhdGlvbi5pbnZlcnNlRW50aXR5TWV0YWRhdGEhLmdldEVudGl0eUlkTWFwKHJlbGF0ZWRFbnRpdHkpXG5cblxuICAgICAgICAgICAgY29uc3QgcmVsYXRlZEVudGl0eVN1YmplY3QgPSB0aGlzLnN1YmplY3RzLmZpbmQoKHN1YmplY3QpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gc3ViamVjdC5lbnRpdHkgPT09IHJlbGF0ZWRFbnRpdHlcbiAgICAgICAgICAgIH0pXG5cblxuICAgICAgICAgICAgaWYgKHJlbGF0ZWRFbnRpdHlTdWJqZWN0KVxuICAgICAgICAgICAgICAgIHJlbGF0ZWRFbnRpdHlSZWxhdGlvbklkTWFwID0gcmVsYXRlZEVudGl0eVN1YmplY3QuaWRlbnRpZmllclxuXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgcmVsYXRlZEVudGl0eVJlbGF0aW9uSWRNYXAgIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgICAgIHJlbGF0ZWRFbnRpdHlSZWxhdGlvbklkTWFwICE9PSBudWxsXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgY2hhbmdlZEludmVyc2VFbnRpdHlSZWxhdGlvbklkcy5wdXNoKHJlbGF0ZWRFbnRpdHlSZWxhdGlvbklkTWFwKVxuICAgICAgICB9KVxuXG5cbiAgICAgICAgY29uc3QgcmVtb3ZlZEp1bmN0aW9uRW50aXR5SWRzID0gZGF0YWJhc2VSZWxhdGVkRW50aXR5SWRzLmZpbHRlcihcbiAgICAgICAgICAgIChleGlzdFJlbGF0aW9uSWQpID0+IHtcbiAgICAgICAgICAgICAgICByZXR1cm4gIWNoYW5nZWRJbnZlcnNlRW50aXR5UmVsYXRpb25JZHMuZmluZChcbiAgICAgICAgICAgICAgICAgICAgKGNoYW5nZWRSZWxhdGlvbklkKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gT3JtVXRpbHMuY29tcGFyZUlkcyhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjaGFuZ2VkUmVsYXRpb25JZCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBleGlzdFJlbGF0aW9uSWQsXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfSxcbiAgICAgICAgKVxuXG5cbiAgICAgICAgcmVtb3ZlZEp1bmN0aW9uRW50aXR5SWRzLmZvckVhY2goKHJlbW92ZWRFbnRpdHlSZWxhdGlvbklkKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBqdW5jdGlvblN1YmplY3QgPSBuZXcgU3ViamVjdCh7XG4gICAgICAgICAgICAgICAgbWV0YWRhdGE6IHJlbGF0aW9uLmp1bmN0aW9uRW50aXR5TWV0YWRhdGEhLFxuICAgICAgICAgICAgICAgIHBhcmVudFN1YmplY3Q6IHN1YmplY3QsXG4gICAgICAgICAgICAgICAgbXVzdEJlUmVtb3ZlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICBpZGVudGlmaWVyOiB0aGlzLmJ1aWxkSnVuY3Rpb25JZGVudGlmaWVyKFxuICAgICAgICAgICAgICAgICAgICBzdWJqZWN0LFxuICAgICAgICAgICAgICAgICAgICByZWxhdGlvbixcbiAgICAgICAgICAgICAgICAgICAgcmVtb3ZlZEVudGl0eVJlbGF0aW9uSWQsXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB0aGlzLnN1YmplY3RzLnB1c2goanVuY3Rpb25TdWJqZWN0KVxuICAgICAgICB9KVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgaWRlbnRpZmllcnMgZm9yIGp1bmN0aW9uIHRhYmxlLlxuICAgICAqIEV4YW1wbGU6IHsgcG9zdElkOiAxLCBjYXRlZ29yeUlkOiAyIH1cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgYnVpbGRKdW5jdGlvbklkZW50aWZpZXIoXG4gICAgICAgIHN1YmplY3Q6IFN1YmplY3QsXG4gICAgICAgIHJlbGF0aW9uOiBSZWxhdGlvbk1ldGFkYXRhLFxuICAgICAgICByZWxhdGlvbklkOiBPYmplY3RMaXRlcmFsLFxuICAgICkge1xuICAgICAgICBjb25zdCBvd25lckVudGl0eU1hcCA9IHJlbGF0aW9uLmlzT3duaW5nID8gc3ViamVjdC5lbnRpdHkhIDogcmVsYXRpb25JZFxuICAgICAgICBjb25zdCBpbnZlcnNlRW50aXR5TWFwID0gcmVsYXRpb24uaXNPd25pbmdcbiAgICAgICAgICAgID8gcmVsYXRpb25JZFxuICAgICAgICAgICAgOiBzdWJqZWN0LmVudGl0eSFcblxuICAgICAgICBjb25zdCBpZGVudGlmaWVyOiBPYmplY3RMaXRlcmFsID0ge31cbiAgICAgICAgcmVsYXRpb24uanVuY3Rpb25FbnRpdHlNZXRhZGF0YSEub3duZXJDb2x1bW5zLmZvckVhY2goKGNvbHVtbikgPT4ge1xuICAgICAgICAgICAgT3JtVXRpbHMubWVyZ2VEZWVwKFxuICAgICAgICAgICAgICAgIGlkZW50aWZpZXIsXG4gICAgICAgICAgICAgICAgY29sdW1uLmNyZWF0ZVZhbHVlTWFwKFxuICAgICAgICAgICAgICAgICAgICBjb2x1bW4ucmVmZXJlbmNlZENvbHVtbiEuZ2V0RW50aXR5VmFsdWUob3duZXJFbnRpdHlNYXApLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApXG4gICAgICAgIH0pXG4gICAgICAgIHJlbGF0aW9uLmp1bmN0aW9uRW50aXR5TWV0YWRhdGEhLmludmVyc2VDb2x1bW5zLmZvckVhY2goKGNvbHVtbikgPT4ge1xuICAgICAgICAgICAgT3JtVXRpbHMubWVyZ2VEZWVwKFxuICAgICAgICAgICAgICAgIGlkZW50aWZpZXIsXG4gICAgICAgICAgICAgICAgY29sdW1uLmNyZWF0ZVZhbHVlTWFwKFxuICAgICAgICAgICAgICAgICAgICBjb2x1bW4ucmVmZXJlbmNlZENvbHVtbiEuZ2V0RW50aXR5VmFsdWUoaW52ZXJzZUVudGl0eU1hcCksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuIGlkZW50aWZpZXJcbiAgICB9XG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10YW9uLXR5cGVvcm0gbGliL3R5cGVvcm0vcGVyc2lzdGVuY2Uvc3ViamVjdC1idWlsZGVyL01hbnlUb01hbnlTdWJqZWN0QnVpbGRlci50cyJdfQ==
@@ -1,117 +0,0 @@
1
- import { Subject } from "../Subject";
2
- import { OrmUtils } from "../../util/OrmUtils";
3
- import { EntityMetadata } from "../../metadata/EntityMetadata";
4
- /**
5
- * Builds operations needs to be executed for one-to-many relations of the given subjects.
6
- *
7
- * by example: post contains one-to-many relation with category in the property called "categories", e.g.
8
- * @OneToMany(type => Category, category => category.post) categories: Category[]
9
- * If user adds categories into the post and saves post we need to bind them.
10
- * This operation requires updation of category table since its owner of the relation and contains a join column.
11
- *
12
- * note: this class shares lot of things with OneToOneInverseSideOperationBuilder, so when you change this class
13
- * make sure to reflect changes there as well.
14
- */
15
- export class OneToManySubjectBuilder {
16
- constructor(subjects) {
17
- this.subjects = subjects;
18
- }
19
- /**
20
- * Builds all required operations.
21
- */
22
- build() {
23
- this.subjects.forEach((subject) => {
24
- subject.metadata.oneToManyRelations.forEach((relation) => {
25
- if (relation.persistenceEnabled === false)
26
- return;
27
- this.buildForSubjectRelation(subject, relation);
28
- });
29
- });
30
- }
31
- /**
32
- * Builds operations for a given subject and relation.
33
- *
34
- * by example: subject is "post" entity we are saving here and relation is "categories" inside it here.
35
- */
36
- buildForSubjectRelation(subject, relation) {
37
- let relatedEntityDatabaseRelationIds = [];
38
- if (subject.databaseEntity) {
39
- const relatedEntityDatabaseRelation = relation.getEntityValue(subject.databaseEntity);
40
- if (relatedEntityDatabaseRelation) {
41
- relatedEntityDatabaseRelationIds =
42
- relatedEntityDatabaseRelation.map((entity) => relation.inverseEntityMetadata.getEntityIdMap(entity));
43
- }
44
- }
45
- let relatedEntities = relation.getEntityValue(subject.entity);
46
- if (relatedEntities === null)
47
- relatedEntities = [];
48
- if (relatedEntities === undefined)
49
- return;
50
- const relatedPersistedEntityRelationIds = [];
51
- relatedEntities.forEach((relatedEntity) => {
52
- let relationIdMap = relation.inverseEntityMetadata.getEntityIdMap(relatedEntity); // by example: relationIdMap is category.id map here, e.g. { id: ... }
53
- let relatedEntitySubject = this.subjects.find((subject) => {
54
- return subject.entity === relatedEntity;
55
- });
56
- if (relatedEntitySubject)
57
- relationIdMap = relatedEntitySubject.identifier;
58
- if (!relationIdMap) {
59
- if (!relatedEntitySubject)
60
- return;
61
- relatedEntitySubject.changeMaps.push({
62
- relation: relation.inverseRelation,
63
- value: subject,
64
- });
65
- return;
66
- }
67
- const relationIdInDatabaseSubjectRelation = relatedEntityDatabaseRelationIds.find((relatedDatabaseEntityRelationId) => {
68
- return OrmUtils.compareIds(relationIdMap, relatedDatabaseEntityRelationId);
69
- });
70
- if (!relationIdInDatabaseSubjectRelation) {
71
- if (!relatedEntitySubject) {
72
- relatedEntitySubject = new Subject({
73
- metadata: relation.inverseEntityMetadata,
74
- parentSubject: subject,
75
- canBeUpdated: true,
76
- identifier: relationIdMap,
77
- });
78
- this.subjects.push(relatedEntitySubject);
79
- }
80
- relatedEntitySubject.changeMaps.push({
81
- relation: relation.inverseRelation,
82
- value: subject,
83
- });
84
- }
85
- relatedPersistedEntityRelationIds.push(relationIdMap);
86
- });
87
- if (relation.inverseRelation?.orphanedRowAction !== "disable") {
88
- EntityMetadata.difference(relatedEntityDatabaseRelationIds, relatedPersistedEntityRelationIds).forEach((removedRelatedEntityRelationId) => {
89
- const removedRelatedEntitySubject = new Subject({
90
- metadata: relation.inverseEntityMetadata,
91
- parentSubject: subject,
92
- identifier: removedRelatedEntityRelationId,
93
- });
94
- if (!relation.inverseRelation ||
95
- relation.inverseRelation.orphanedRowAction === "nullify") {
96
- removedRelatedEntitySubject.canBeUpdated = true;
97
- removedRelatedEntitySubject.changeMaps = [
98
- {
99
- relation: relation.inverseRelation,
100
- value: null,
101
- },
102
- ];
103
- }
104
- else if (relation.inverseRelation.orphanedRowAction === "delete") {
105
- removedRelatedEntitySubject.mustBeRemoved = true;
106
- }
107
- else if (relation.inverseRelation.orphanedRowAction === "soft-delete") {
108
- removedRelatedEntitySubject.canBeSoftRemoved = true;
109
- }
110
- this.subjects.push(removedRelatedEntitySubject);
111
- });
112
- }
113
- }
114
- }
115
- ;
116
- ({}); // @--end-of-file-for-module=taon-typeorm lib/typeorm/persistence/subject-builder/OneToManySubjectBuilder.ts
117
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT25lVG9NYW55U3ViamVjdEJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC90YW9uLXR5cGVvcm0vcHJvamVjdHMvdGFvbi10eXBlb3JtL3NyYy9saWIvdHlwZW9ybS9wZXJzaXN0ZW5jZS9zdWJqZWN0LWJ1aWxkZXIvT25lVG9NYW55U3ViamVjdEJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLFlBQVksQ0FBQTtBQUNwQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFFOUMsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLCtCQUErQixDQUFBO0FBRzlEOzs7Ozs7Ozs7O0dBVUc7QUFDSCxNQUFNLE9BQU8sdUJBQXVCO0lBS2hDLFlBQXNCLFFBQW1CO1FBQW5CLGFBQVEsR0FBUixRQUFRLENBQVc7SUFBRyxDQUFDO0lBTTdDOztPQUVHO0lBQ0gsS0FBSztRQUNELElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDOUIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQyxRQUFRLEVBQUUsRUFBRTtnQkFFckQsSUFBSSxRQUFRLENBQUMsa0JBQWtCLEtBQUssS0FBSztvQkFBRSxPQUFNO2dCQUVqRCxJQUFJLENBQUMsdUJBQXVCLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFBO1lBQ25ELENBQUMsQ0FBQyxDQUFBO1FBQ04sQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0lBTUQ7Ozs7T0FJRztJQUNPLHVCQUF1QixDQUM3QixPQUFnQixFQUNoQixRQUEwQjtRQVcxQixJQUFJLGdDQUFnQyxHQUFvQixFQUFFLENBQUE7UUFDMUQsSUFBSSxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUM7WUFFekIsTUFBTSw2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LEVBQUUsOEJBQThCO2lCQUM3QyxDQUFDLENBQUE7Z0JBRUYsSUFDSSxDQUFDLFFBQVEsQ0FBQyxlQUFlO29CQUN6QixRQUFRLENBQUMsZUFBZSxDQUFDLGlCQUFpQixLQUFLLFNBQVMsRUFDMUQsQ0FBQztvQkFDQywyQkFBMkIsQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFBO29CQUMvQywyQkFBMkIsQ0FBQyxVQUFVLEdBQUc7d0JBQ3JDOzRCQUNJLFFBQVEsRUFBRSxRQUFRLENBQUMsZUFBZ0I7NEJBQ25DLEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKLENBQUE7Z0JBQ0wsQ0FBQztxQkFBTSxJQUNILFFBQVEsQ0FBQyxlQUFlLENBQUMsaUJBQWlCLEtBQUssUUFBUSxFQUN6RCxDQUFDO29CQUNDLDJCQUEyQixDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUE7Z0JBQ3BELENBQUM7cUJBQU0sSUFDSCxRQUFRLENBQUMsZUFBZSxDQUFDLGlCQUFpQixLQUFLLGFBQWEsRUFDOUQsQ0FBQztvQkFDQywyQkFBMkIsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUE7Z0JBQ3ZELENBQUM7Z0JBRUQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsMkJBQTJCLENBQUMsQ0FBQTtZQUNuRCxDQUFDLENBQUMsQ0FBQTtRQUNOLENBQUM7SUFDTCxDQUFDO0NBQ0o7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDRHQUE0RyIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSBcIi4uL1N1YmplY3RcIlxuaW1wb3J0IHsgT3JtVXRpbHMgfSBmcm9tIFwiLi4vLi4vdXRpbC9Pcm1VdGlsc1wiXG5pbXBvcnQgeyBPYmplY3RMaXRlcmFsIH0gZnJvbSBcIi4uLy4uL2NvbW1vbi9PYmplY3RMaXRlcmFsXCJcbmltcG9ydCB7IEVudGl0eU1ldGFkYXRhIH0gZnJvbSBcIi4uLy4uL21ldGFkYXRhL0VudGl0eU1ldGFkYXRhXCJcbmltcG9ydCB7IFJlbGF0aW9uTWV0YWRhdGEgfSBmcm9tIFwiLi4vLi4vbWV0YWRhdGEvUmVsYXRpb25NZXRhZGF0YVwiXG5cbi8qKlxuICogQnVpbGRzIG9wZXJhdGlvbnMgbmVlZHMgdG8gYmUgZXhlY3V0ZWQgZm9yIG9uZS10by1tYW55IHJlbGF0aW9ucyBvZiB0aGUgZ2l2ZW4gc3ViamVjdHMuXG4gKlxuICogYnkgZXhhbXBsZTogcG9zdCBjb250YWlucyBvbmUtdG8tbWFueSByZWxhdGlvbiB3aXRoIGNhdGVnb3J5IGluIHRoZSBwcm9wZXJ0eSBjYWxsZWQgXCJjYXRlZ29yaWVzXCIsIGUuZy5cbiAqICAgICAgICAgICAgIEBPbmVUb01hbnkodHlwZSA9PiBDYXRlZ29yeSwgY2F0ZWdvcnkgPT4gY2F0ZWdvcnkucG9zdCkgY2F0ZWdvcmllczogQ2F0ZWdvcnlbXVxuICogICAgICAgICAgICAgSWYgdXNlciBhZGRzIGNhdGVnb3JpZXMgaW50byB0aGUgcG9zdCBhbmQgc2F2ZXMgcG9zdCB3ZSBuZWVkIHRvIGJpbmQgdGhlbS5cbiAqICAgICAgICAgICAgIFRoaXMgb3BlcmF0aW9uIHJlcXVpcmVzIHVwZGF0aW9uIG9mIGNhdGVnb3J5IHRhYmxlIHNpbmNlIGl0cyBvd25lciBvZiB0aGUgcmVsYXRpb24gYW5kIGNvbnRhaW5zIGEgam9pbiBjb2x1bW4uXG4gKlxuICogbm90ZTogdGhpcyBjbGFzcyBzaGFyZXMgbG90IG9mIHRoaW5ncyB3aXRoIE9uZVRvT25lSW52ZXJzZVNpZGVPcGVyYXRpb25CdWlsZGVyLCBzbyB3aGVuIHlvdSBjaGFuZ2UgdGhpcyBjbGFzc1xuICogICAgICAgbWFrZSBzdXJlIHRvIHJlZmxlY3QgY2hhbmdlcyB0aGVyZSBhcyB3ZWxsLlxuICovXG5leHBvcnQgY2xhc3MgT25lVG9NYW55U3ViamVjdEJ1aWxkZXIge1xuXG5cblxuXG4gICAgY29uc3RydWN0b3IocHJvdGVjdGVkIHN1YmplY3RzOiBTdWJqZWN0W10pIHt9XG5cblxuXG5cblxuICAgIC8qKlxuICAgICAqIEJ1aWxkcyBhbGwgcmVxdWlyZWQgb3BlcmF0aW9ucy5cbiAgICAgKi9cbiAgICBidWlsZCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdWJqZWN0cy5mb3JFYWNoKChzdWJqZWN0KSA9PiB7XG4gICAgICAgICAgICBzdWJqZWN0Lm1ldGFkYXRhLm9uZVRvTWFueVJlbGF0aW9ucy5mb3JFYWNoKChyZWxhdGlvbikgPT4ge1xuXG4gICAgICAgICAgICAgICAgaWYgKHJlbGF0aW9uLnBlcnNpc3RlbmNlRW5hYmxlZCA9PT0gZmFsc2UpIHJldHVyblxuXG4gICAgICAgICAgICAgICAgdGhpcy5idWlsZEZvclN1YmplY3RSZWxhdGlvbihzdWJqZWN0LCByZWxhdGlvbilcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH0pXG4gICAgfVxuXG5cblxuXG5cbiAgICAvKipcbiAgICAgKiBCdWlsZHMgb3BlcmF0aW9ucyBmb3IgYSBnaXZlbiBzdWJqZWN0IGFuZCByZWxhdGlvbi5cbiAgICAgKlxuICAgICAqIGJ5IGV4YW1wbGU6IHN1YmplY3QgaXMgXCJwb3N0XCIgZW50aXR5IHdlIGFyZSBzYXZpbmcgaGVyZSBhbmQgcmVsYXRpb24gaXMgXCJjYXRlZ29yaWVzXCIgaW5zaWRlIGl0IGhlcmUuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGJ1aWxkRm9yU3ViamVjdFJlbGF0aW9uKFxuICAgICAgICBzdWJqZWN0OiBTdWJqZWN0LFxuICAgICAgICByZWxhdGlvbjogUmVsYXRpb25NZXRhZGF0YSxcbiAgICApIHtcblxuXG5cblxuXG5cblxuXG5cbiAgICAgICAgbGV0IHJlbGF0ZWRFbnRpdHlEYXRhYmFzZVJlbGF0aW9uSWRzOiBPYmplY3RMaXRlcmFsW10gPSBbXVxuICAgICAgICBpZiAoc3ViamVjdC5kYXRhYmFzZUVudGl0eSkge1xuXG4gICAgICAgICAgICBjb25zdCByZWxhdGVkRW50aXR5RGF0YWJhc2VSZWxhdGlvbjogT2JqZWN0TGl0ZXJhbFtdIHwgdW5kZWZpbmVkID1cbiAgICAgICAgICAgICAgICByZWxhdGlvbi5nZXRFbnRpdHlWYWx1ZShzdWJqZWN0LmRhdGFiYXNlRW50aXR5KVxuICAgICAgICAgICAgaWYgKHJlbGF0ZWRFbnRpdHlEYXRhYmFzZVJlbGF0aW9uKSB7XG4gICAgICAgICAgICAgICAgcmVsYXRlZEVudGl0eURhdGFiYXNlUmVsYXRpb25JZHMgPVxuICAgICAgICAgICAgICAgICAgICByZWxhdGVkRW50aXR5RGF0YWJhc2VSZWxhdGlvbi5tYXAoXG4gICAgICAgICAgICAgICAgICAgICAgICAoZW50aXR5KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uLmludmVyc2VFbnRpdHlNZXRhZGF0YS5nZXRFbnRpdHlJZE1hcChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICkhLFxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuXG5cbiAgICAgICAgbGV0IHJlbGF0ZWRFbnRpdGllczogT2JqZWN0TGl0ZXJhbFtdID0gcmVsYXRpb24uZ2V0RW50aXR5VmFsdWUoXG4gICAgICAgICAgICBzdWJqZWN0LmVudGl0eSEsXG4gICAgICAgIClcbiAgICAgICAgaWYgKHJlbGF0ZWRFbnRpdGllcyA9PT0gbnVsbClcblxuICAgICAgICAgICAgcmVsYXRlZEVudGl0aWVzID0gW10gYXMgT2JqZWN0TGl0ZXJhbFtdXG4gICAgICAgIGlmIChyZWxhdGVkRW50aXRpZXMgPT09IHVuZGVmaW5lZClcblxuICAgICAgICAgICAgcmV0dXJuXG5cblxuXG4gICAgICAgIGNvbnN0IHJlbGF0ZWRQZXJzaXN0ZWRFbnRpdHlSZWxhdGlvbklkczogT2JqZWN0TGl0ZXJhbFtdID0gW11cbiAgICAgICAgcmVsYXRlZEVudGl0aWVzLmZvckVhY2goKHJlbGF0ZWRFbnRpdHkpID0+IHtcblxuICAgICAgICAgICAgbGV0IHJlbGF0aW9uSWRNYXAgPVxuICAgICAgICAgICAgICAgIHJlbGF0aW9uLmludmVyc2VFbnRpdHlNZXRhZGF0YSEuZ2V0RW50aXR5SWRNYXAocmVsYXRlZEVudGl0eSkgLy8gYnkgZXhhbXBsZTogcmVsYXRpb25JZE1hcCBpcyBjYXRlZ29yeS5pZCBtYXAgaGVyZSwgZS5nLiB7IGlkOiAuLi4gfVxuXG5cbiAgICAgICAgICAgIGxldCByZWxhdGVkRW50aXR5U3ViamVjdCA9IHRoaXMuc3ViamVjdHMuZmluZCgoc3ViamVjdCkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBzdWJqZWN0LmVudGl0eSA9PT0gcmVsYXRlZEVudGl0eVxuICAgICAgICAgICAgfSlcblxuXG4gICAgICAgICAgICBpZiAocmVsYXRlZEVudGl0eVN1YmplY3QpXG4gICAgICAgICAgICAgICAgcmVsYXRpb25JZE1hcCA9IHJlbGF0ZWRFbnRpdHlTdWJqZWN0LmlkZW50aWZpZXJcblxuXG5cblxuXG4gICAgICAgICAgICBpZiAoIXJlbGF0aW9uSWRNYXApIHtcblxuXG5cblxuXG4gICAgICAgICAgICAgICAgaWYgKCFyZWxhdGVkRW50aXR5U3ViamVjdCkgcmV0dXJuXG5cblxuXG5cblxuXG4gICAgICAgICAgICAgICAgcmVsYXRlZEVudGl0eVN1YmplY3QuY2hhbmdlTWFwcy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgcmVsYXRpb246IHJlbGF0aW9uLmludmVyc2VSZWxhdGlvbiEsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBzdWJqZWN0LFxuICAgICAgICAgICAgICAgIH0pXG5cbiAgICAgICAgICAgICAgICByZXR1cm5cbiAgICAgICAgICAgIH1cblxuXG5cbiAgICAgICAgICAgIGNvbnN0IHJlbGF0aW9uSWRJbkRhdGFiYXNlU3ViamVjdFJlbGF0aW9uID1cbiAgICAgICAgICAgICAgICByZWxhdGVkRW50aXR5RGF0YWJhc2VSZWxhdGlvbklkcy5maW5kKFxuICAgICAgICAgICAgICAgICAgICAocmVsYXRlZERhdGFiYXNlRW50aXR5UmVsYXRpb25JZCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIE9ybVV0aWxzLmNvbXBhcmVJZHMoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRpb25JZE1hcCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxhdGVkRGF0YWJhc2VFbnRpdHlSZWxhdGlvbklkLFxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIClcblxuXG5cblxuXG5cbiAgICAgICAgICAgIGlmICghcmVsYXRpb25JZEluRGF0YWJhc2VTdWJqZWN0UmVsYXRpb24pIHtcblxuXG5cbiAgICAgICAgICAgICAgICBpZiAoIXJlbGF0ZWRFbnRpdHlTdWJqZWN0KSB7XG4gICAgICAgICAgICAgICAgICAgIHJlbGF0ZWRFbnRpdHlTdWJqZWN0ID0gbmV3IFN1YmplY3Qoe1xuICAgICAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGE6IHJlbGF0aW9uLmludmVyc2VFbnRpdHlNZXRhZGF0YSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhcmVudFN1YmplY3Q6IHN1YmplY3QsXG4gICAgICAgICAgICAgICAgICAgICAgICBjYW5CZVVwZGF0ZWQ6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgICAgICBpZGVudGlmaWVyOiByZWxhdGlvbklkTWFwLFxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICB0aGlzLnN1YmplY3RzLnB1c2gocmVsYXRlZEVudGl0eVN1YmplY3QpXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgcmVsYXRlZEVudGl0eVN1YmplY3QuY2hhbmdlTWFwcy5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgcmVsYXRpb246IHJlbGF0aW9uLmludmVyc2VSZWxhdGlvbiEsXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlOiBzdWJqZWN0LFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9XG5cblxuXG5cblxuXG4gICAgICAgICAgICByZWxhdGVkUGVyc2lzdGVkRW50aXR5UmVsYXRpb25JZHMucHVzaChyZWxhdGlvbklkTWFwKVxuICAgICAgICB9KVxuXG5cbiAgICAgICAgaWYgKHJlbGF0aW9uLmludmVyc2VSZWxhdGlvbj8ub3JwaGFuZWRSb3dBY3Rpb24gIT09IFwiZGlzYWJsZVwiKSB7XG4gICAgICAgICAgICBFbnRpdHlNZXRhZGF0YS5kaWZmZXJlbmNlKFxuICAgICAgICAgICAgICAgIHJlbGF0ZWRFbnRpdHlEYXRhYmFzZVJlbGF0aW9uSWRzLFxuICAgICAgICAgICAgICAgIHJlbGF0ZWRQZXJzaXN0ZWRFbnRpdHlSZWxhdGlvbklkcyxcbiAgICAgICAgICAgICkuZm9yRWFjaCgocmVtb3ZlZFJlbGF0ZWRFbnRpdHlSZWxhdGlvbklkKSA9PiB7XG5cblxuXG5cblxuICAgICAgICAgICAgICAgIGNvbnN0IHJlbW92ZWRSZWxhdGVkRW50aXR5U3ViamVjdCA9IG5ldyBTdWJqZWN0KHtcbiAgICAgICAgICAgICAgICAgICAgbWV0YWRhdGE6IHJlbGF0aW9uLmludmVyc2VFbnRpdHlNZXRhZGF0YSxcbiAgICAgICAgICAgICAgICAgICAgcGFyZW50U3ViamVjdDogc3ViamVjdCxcbiAgICAgICAgICAgICAgICAgICAgaWRlbnRpZmllcjogcmVtb3ZlZFJlbGF0ZWRFbnRpdHlSZWxhdGlvbklkLFxuICAgICAgICAgICAgICAgIH0pXG5cbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICFyZWxhdGlvbi5pbnZlcnNlUmVsYXRpb24gfHxcbiAgICAgICAgICAgICAgICAgICAgcmVsYXRpb24uaW52ZXJzZVJlbGF0aW9uLm9ycGhhbmVkUm93QWN0aW9uID09PSBcIm51bGxpZnlcIlxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICByZW1vdmVkUmVsYXRlZEVudGl0eVN1YmplY3QuY2FuQmVVcGRhdGVkID0gdHJ1ZVxuICAgICAgICAgICAgICAgICAgICByZW1vdmVkUmVsYXRlZEVudGl0eVN1YmplY3QuY2hhbmdlTWFwcyA9IFtcbiAgICAgICAgICAgICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxhdGlvbjogcmVsYXRpb24uaW52ZXJzZVJlbGF0aW9uISxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZTogbnVsbCxcbiAgICAgICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgICAgICAgICByZWxhdGlvbi5pbnZlcnNlUmVsYXRpb24ub3JwaGFuZWRSb3dBY3Rpb24gPT09IFwiZGVsZXRlXCJcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgcmVtb3ZlZFJlbGF0ZWRFbnRpdHlTdWJqZWN0Lm11c3RCZVJlbW92ZWQgPSB0cnVlXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgICAgICAgICAgcmVsYXRpb24uaW52ZXJzZVJlbGF0aW9uLm9ycGhhbmVkUm93QWN0aW9uID09PSBcInNvZnQtZGVsZXRlXCJcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgcmVtb3ZlZFJlbGF0ZWRFbnRpdHlTdWJqZWN0LmNhbkJlU29mdFJlbW92ZWQgPSB0cnVlXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgdGhpcy5zdWJqZWN0cy5wdXNoKHJlbW92ZWRSZWxhdGVkRW50aXR5U3ViamVjdClcbiAgICAgICAgICAgIH0pXG4gICAgICAgIH1cbiAgICB9XG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10YW9uLXR5cGVvcm0gbGliL3R5cGVvcm0vcGVyc2lzdGVuY2Uvc3ViamVjdC1idWlsZGVyL09uZVRvTWFueVN1YmplY3RCdWlsZGVyLnRzIl19