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,452 +0,0 @@
1
- import { DriverUtils } from "../driver/DriverUtils";
2
- /**
3
- * Loads relation ids for the given entities.
4
- */
5
- export class RelationIdLoader {
6
- constructor(connection) {
7
- this.connection = connection;
8
- }
9
- /**
10
- * Loads relation ids of the given entity or entities.
11
- */
12
- load(relation, entityOrEntities, relatedEntityOrRelatedEntities) {
13
- const entities = Array.isArray(entityOrEntities)
14
- ? entityOrEntities
15
- : [entityOrEntities];
16
- const relatedEntities = Array.isArray(relatedEntityOrRelatedEntities)
17
- ? relatedEntityOrRelatedEntities
18
- : relatedEntityOrRelatedEntities
19
- ? [relatedEntityOrRelatedEntities]
20
- : undefined;
21
- if (relation.isManyToMany) {
22
- return this.loadForManyToMany(relation, entities, relatedEntities);
23
- }
24
- else if (relation.isManyToOne || relation.isOneToOneOwner) {
25
- return this.loadForManyToOneAndOneToOneOwner(relation, entities, relatedEntities);
26
- }
27
- else {
28
- return this.loadForOneToManyAndOneToOneNotOwner(relation, entities, relatedEntities);
29
- }
30
- }
31
- /**
32
- * Loads relation ids of the given entities and groups them into the object with parent and children.
33
- *
34
- * todo: extract this method?
35
- */
36
- async loadManyToManyRelationIdsAndGroup(relation, entitiesOrEntities, relatedEntityOrEntities, queryBuilder) {
37
- const isMany = relation.isManyToMany || relation.isOneToMany;
38
- const entities = Array.isArray(entitiesOrEntities)
39
- ? entitiesOrEntities
40
- : [entitiesOrEntities];
41
- if (!relatedEntityOrEntities) {
42
- relatedEntityOrEntities = await this.connection.relationLoader.load(relation, entitiesOrEntities, undefined, queryBuilder);
43
- if (!relatedEntityOrEntities.length)
44
- return entities.map((entity) => ({
45
- entity: entity,
46
- related: isMany ? [] : undefined,
47
- }));
48
- }
49
- const relationIds = await this.load(relation, entitiesOrEntities, relatedEntityOrEntities);
50
- const relatedEntities = Array.isArray(relatedEntityOrEntities)
51
- ? relatedEntityOrEntities
52
- : [relatedEntityOrEntities];
53
- let columns = [], inverseColumns = [];
54
- if (relation.isManyToManyOwner) {
55
- columns = relation.junctionEntityMetadata.inverseColumns.map((column) => column.referencedColumn);
56
- inverseColumns = relation.junctionEntityMetadata.ownerColumns.map((column) => column.referencedColumn);
57
- }
58
- else if (relation.isManyToManyNotOwner) {
59
- columns = relation.junctionEntityMetadata.ownerColumns.map((column) => column.referencedColumn);
60
- inverseColumns =
61
- relation.junctionEntityMetadata.inverseColumns.map((column) => column.referencedColumn);
62
- }
63
- else if (relation.isManyToOne || relation.isOneToOneOwner) {
64
- columns = relation.joinColumns.map((column) => column.referencedColumn);
65
- inverseColumns = relation.entityMetadata.primaryColumns;
66
- }
67
- else if (relation.isOneToMany || relation.isOneToOneNotOwner) {
68
- columns = relation.inverseRelation.entityMetadata.primaryColumns;
69
- inverseColumns = relation.inverseRelation.joinColumns.map((column) => column.referencedColumn);
70
- }
71
- else {
72
- }
73
- return entities.map((entity) => {
74
- const group = {
75
- entity: entity,
76
- related: isMany ? [] : undefined,
77
- };
78
- const entityRelationIds = relationIds.filter((relationId) => {
79
- return inverseColumns.every((column) => {
80
- return column.compareEntityValue(entity, relationId[column.entityMetadata.name +
81
- "_" +
82
- column.propertyAliasName]);
83
- });
84
- });
85
- if (!entityRelationIds.length)
86
- return group;
87
- relatedEntities.forEach((relatedEntity) => {
88
- entityRelationIds.forEach((relationId) => {
89
- const relatedEntityMatched = columns.every((column) => {
90
- return column.compareEntityValue(relatedEntity, relationId[DriverUtils.buildAlias(this.connection.driver, column.entityMetadata.name +
91
- "_" +
92
- relation.propertyPath.replace(".", "_") +
93
- "_" +
94
- column.propertyPath.replace(".", "_"))]);
95
- });
96
- if (relatedEntityMatched) {
97
- if (isMany) {
98
- ;
99
- group.related.push(relatedEntity);
100
- }
101
- else {
102
- group.related = relatedEntity;
103
- }
104
- }
105
- });
106
- });
107
- return group;
108
- });
109
- }
110
- /**
111
- * Loads relation ids of the given entities and maps them into the given entity property.
112
- async loadManyToManyRelationIdsAndMap(
113
- relation: RelationMetadata,
114
- entityOrEntities: ObjectLiteral|ObjectLiteral[],
115
- mapToEntityOrEntities: ObjectLiteral|ObjectLiteral[],
116
- propertyName: string
117
- ): Promise<void> {
118
- const relationIds = await this.loadManyToManyRelationIds(relation, entityOrEntities, mapToEntityOrEntities);
119
- const mapToEntities = mapToEntityOrEntities instanceof Array ? mapToEntityOrEntities : [mapToEntityOrEntities];
120
- const junctionMetadata = relation.junctionEntityMetadata!;
121
- const mainAlias = junctionMetadata.name;
122
- const columns = relation.isOwning ? junctionMetadata.inverseColumns : junctionMetadata.ownerColumns;
123
- const inverseColumns = relation.isOwning ? junctionMetadata.ownerColumns : junctionMetadata.inverseColumns;
124
- mapToEntities.forEach(mapToEntity => {
125
- mapToEntity[propertyName] = [];
126
- relationIds.forEach(relationId => {
127
- const match = inverseColumns.every(column => {
128
- return column.referencedColumn!.getEntityValue(mapToEntity) === relationId[mainAlias + "_" + column.propertyName];
129
- });
130
- if (match) {
131
- if (columns.length === 1) {
132
- mapToEntity[propertyName].push(relationId[mainAlias + "_" + columns[0].propertyName]);
133
- } else {
134
- const value = {};
135
- columns.forEach(column => {
136
- column.referencedColumn!.setEntityValue(value, relationId[mainAlias + "_" + column.propertyName]);
137
- });
138
- mapToEntity[propertyName].push(value);
139
- }
140
- }
141
- });
142
- });
143
- }*/
144
- /**
145
- * Loads relation ids for the many-to-many relation.
146
- */
147
- loadForManyToMany(relation, entities, relatedEntities) {
148
- const junctionMetadata = relation.junctionEntityMetadata;
149
- const mainAlias = junctionMetadata.name;
150
- const columns = relation.isOwning
151
- ? junctionMetadata.ownerColumns
152
- : junctionMetadata.inverseColumns;
153
- const inverseColumns = relation.isOwning
154
- ? junctionMetadata.inverseColumns
155
- : junctionMetadata.ownerColumns;
156
- const qb = this.connection.createQueryBuilder();
157
- columns.forEach((column) => {
158
- const columnName = DriverUtils.buildAlias(this.connection.driver, column.referencedColumn.entityMetadata.name +
159
- "_" +
160
- column.referencedColumn.propertyPath.replace(".", "_"));
161
- qb.addSelect(mainAlias + "." + column.propertyPath, columnName);
162
- });
163
- inverseColumns.forEach((column) => {
164
- const columnName = DriverUtils.buildAlias(this.connection.driver, column.referencedColumn.entityMetadata.name +
165
- "_" +
166
- relation.propertyPath.replace(".", "_") +
167
- "_" +
168
- column.referencedColumn.propertyPath.replace(".", "_"));
169
- qb.addSelect(mainAlias + "." + column.propertyPath, columnName);
170
- });
171
- let condition1 = "";
172
- if (columns.length === 1) {
173
- const values = entities.map((entity) => columns[0].referencedColumn.getEntityValue(entity));
174
- const areAllNumbers = values.every((value) => typeof value === "number");
175
- if (areAllNumbers) {
176
- condition1 = `${mainAlias}.${columns[0].propertyPath} IN (${values.join(", ")})`;
177
- }
178
- else {
179
- qb.setParameter("values1", values);
180
- condition1 =
181
- mainAlias +
182
- "." +
183
- columns[0].propertyPath +
184
- " IN (:...values1)"; // todo: use ANY for postgres
185
- }
186
- }
187
- else {
188
- condition1 =
189
- "(" +
190
- entities
191
- .map((entity, entityIndex) => {
192
- return columns
193
- .map((column) => {
194
- const paramName = "entity1_" +
195
- entityIndex +
196
- "_" +
197
- column.propertyName;
198
- qb.setParameter(paramName, column.referencedColumn.getEntityValue(entity));
199
- return (mainAlias +
200
- "." +
201
- column.propertyPath +
202
- " = :" +
203
- paramName);
204
- })
205
- .join(" AND ");
206
- })
207
- .map((condition) => "(" + condition + ")")
208
- .join(" OR ") +
209
- ")";
210
- }
211
- let condition2 = "";
212
- if (relatedEntities) {
213
- if (inverseColumns.length === 1) {
214
- const values = relatedEntities.map((entity) => inverseColumns[0].referencedColumn.getEntityValue(entity));
215
- const areAllNumbers = values.every((value) => typeof value === "number");
216
- if (areAllNumbers) {
217
- condition2 = `${mainAlias}.${inverseColumns[0].propertyPath} IN (${values.join(", ")})`;
218
- }
219
- else {
220
- qb.setParameter("values2", values);
221
- condition2 =
222
- mainAlias +
223
- "." +
224
- inverseColumns[0].propertyPath +
225
- " IN (:...values2)"; // todo: use ANY for postgres
226
- }
227
- }
228
- else {
229
- condition2 =
230
- "(" +
231
- relatedEntities
232
- .map((entity, entityIndex) => {
233
- return inverseColumns
234
- .map((column) => {
235
- const paramName = "entity2_" +
236
- entityIndex +
237
- "_" +
238
- column.propertyName;
239
- qb.setParameter(paramName, column.referencedColumn.getEntityValue(entity));
240
- return (mainAlias +
241
- "." +
242
- column.propertyPath +
243
- " = :" +
244
- paramName);
245
- })
246
- .join(" AND ");
247
- })
248
- .map((condition) => "(" + condition + ")")
249
- .join(" OR ") +
250
- ")";
251
- }
252
- }
253
- //
254
- //
255
- const condition = [condition1, condition2]
256
- .filter((v) => v.length > 0)
257
- .join(" AND ");
258
- return qb
259
- .from(junctionMetadata.target, mainAlias)
260
- .where(condition)
261
- .getRawMany();
262
- }
263
- /**
264
- * Loads relation ids for the many-to-one and one-to-one owner relations.
265
- */
266
- loadForManyToOneAndOneToOneOwner(relation, entities, relatedEntities) {
267
- const mainAlias = relation.entityMetadata.targetName;
268
- const hasAllJoinColumnsInEntity = relation.joinColumns.every((joinColumn) => {
269
- return !!relation.entityMetadata.nonVirtualColumns.find((column) => column === joinColumn);
270
- });
271
- if (relatedEntities && hasAllJoinColumnsInEntity) {
272
- let relationIdMaps = [];
273
- entities.forEach((entity) => {
274
- let relationIdMap = {};
275
- relation.entityMetadata.primaryColumns.forEach((primaryColumn) => {
276
- const key = primaryColumn.entityMetadata.name +
277
- "_" +
278
- primaryColumn.propertyPath.replace(".", "_");
279
- relationIdMap[key] =
280
- primaryColumn.getEntityValue(entity);
281
- });
282
- relatedEntities.forEach((relatedEntity) => {
283
- relation.joinColumns.forEach((joinColumn) => {
284
- const entityColumnValue = joinColumn.getEntityValue(entity);
285
- const relatedEntityColumnValue = joinColumn.referencedColumn.getEntityValue(relatedEntity);
286
- if (entityColumnValue === undefined ||
287
- relatedEntityColumnValue === undefined)
288
- return;
289
- if (entityColumnValue === relatedEntityColumnValue) {
290
- const key = joinColumn.referencedColumn.entityMetadata
291
- .name +
292
- "_" +
293
- relation.propertyPath.replace(".", "_") +
294
- "_" +
295
- joinColumn.referencedColumn.propertyPath.replace(".", "_");
296
- relationIdMap[key] = relatedEntityColumnValue;
297
- }
298
- });
299
- });
300
- if (Object.keys(relationIdMap).length ===
301
- relation.entityMetadata.primaryColumns.length +
302
- relation.joinColumns.length) {
303
- relationIdMaps.push(relationIdMap);
304
- }
305
- });
306
- if (relationIdMaps.length === entities.length)
307
- return Promise.resolve(relationIdMaps);
308
- }
309
- const qb = this.connection.createQueryBuilder();
310
- relation.entityMetadata.primaryColumns.forEach((primaryColumn) => {
311
- const columnName = DriverUtils.buildAlias(this.connection.driver, primaryColumn.entityMetadata.name +
312
- "_" +
313
- primaryColumn.propertyPath.replace(".", "_"));
314
- qb.addSelect(mainAlias + "." + primaryColumn.propertyPath, columnName);
315
- });
316
- relation.joinColumns.forEach((column) => {
317
- const columnName = DriverUtils.buildAlias(this.connection.driver, column.referencedColumn.entityMetadata.name +
318
- "_" +
319
- relation.propertyPath.replace(".", "_") +
320
- "_" +
321
- column.referencedColumn.propertyPath.replace(".", "_"));
322
- qb.addSelect(mainAlias + "." + column.propertyPath, columnName);
323
- });
324
- let condition = "";
325
- if (relation.entityMetadata.primaryColumns.length === 1) {
326
- const values = entities.map((entity) => relation.entityMetadata.primaryColumns[0].getEntityValue(entity));
327
- const areAllNumbers = values.every((value) => typeof value === "number");
328
- if (areAllNumbers) {
329
- condition = `${mainAlias}.${relation.entityMetadata.primaryColumns[0].propertyPath} IN (${values.join(", ")})`;
330
- }
331
- else {
332
- qb.setParameter("values", values);
333
- condition =
334
- mainAlias +
335
- "." +
336
- relation.entityMetadata.primaryColumns[0].propertyPath +
337
- " IN (:...values)"; // todo: use ANY for postgres
338
- }
339
- }
340
- else {
341
- condition = entities
342
- .map((entity, entityIndex) => {
343
- return relation.entityMetadata.primaryColumns
344
- .map((column, columnIndex) => {
345
- const paramName = "entity" + entityIndex + "_" + columnIndex;
346
- qb.setParameter(paramName, column.getEntityValue(entity));
347
- return (mainAlias +
348
- "." +
349
- column.propertyPath +
350
- " = :" +
351
- paramName);
352
- })
353
- .join(" AND ");
354
- })
355
- .map((condition) => "(" + condition + ")")
356
- .join(" OR ");
357
- }
358
- return qb
359
- .from(relation.entityMetadata.target, mainAlias)
360
- .where(condition)
361
- .getRawMany();
362
- }
363
- /**
364
- * Loads relation ids for the one-to-many and one-to-one not owner relations.
365
- */
366
- loadForOneToManyAndOneToOneNotOwner(relation, entities, relatedEntities) {
367
- relation = relation.inverseRelation;
368
- if (relation.entityMetadata.primaryColumns.length ===
369
- relation.joinColumns.length) {
370
- const sameReferencedColumns = relation.entityMetadata.primaryColumns.every((column) => {
371
- return relation.joinColumns.indexOf(column) !== -1;
372
- });
373
- if (sameReferencedColumns) {
374
- return Promise.resolve(entities.map((entity) => {
375
- const result = {};
376
- relation.joinColumns.forEach(function (joinColumn) {
377
- const value = joinColumn.referencedColumn.getEntityValue(entity);
378
- const joinColumnName = joinColumn.referencedColumn.entityMetadata
379
- .name +
380
- "_" +
381
- joinColumn.referencedColumn.propertyPath.replace(".", "_");
382
- const primaryColumnName = joinColumn.entityMetadata.name +
383
- "_" +
384
- relation.inverseRelation.propertyPath.replace(".", "_") +
385
- "_" +
386
- joinColumn.propertyPath.replace(".", "_");
387
- result[joinColumnName] = value;
388
- result[primaryColumnName] = value;
389
- });
390
- return result;
391
- }));
392
- }
393
- }
394
- const mainAlias = relation.entityMetadata.targetName;
395
- const qb = this.connection.createQueryBuilder();
396
- relation.entityMetadata.primaryColumns.forEach((primaryColumn) => {
397
- const columnName = DriverUtils.buildAlias(this.connection.driver, primaryColumn.entityMetadata.name +
398
- "_" +
399
- relation.inverseRelation.propertyPath.replace(".", "_") +
400
- "_" +
401
- primaryColumn.propertyPath.replace(".", "_"));
402
- qb.addSelect(mainAlias + "." + primaryColumn.propertyPath, columnName);
403
- });
404
- relation.joinColumns.forEach((column) => {
405
- const columnName = DriverUtils.buildAlias(this.connection.driver, column.referencedColumn.entityMetadata.name +
406
- "_" +
407
- column.referencedColumn.propertyPath.replace(".", "_"));
408
- qb.addSelect(mainAlias + "." + column.propertyPath, columnName);
409
- });
410
- let condition = "";
411
- if (relation.joinColumns.length === 1) {
412
- const values = entities.map((entity) => relation.joinColumns[0].referencedColumn.getEntityValue(entity));
413
- const areAllNumbers = values.every((value) => typeof value === "number");
414
- if (areAllNumbers) {
415
- condition = `${mainAlias}.${relation.joinColumns[0].propertyPath} IN (${values.join(", ")})`;
416
- }
417
- else {
418
- qb.setParameter("values", values);
419
- condition =
420
- mainAlias +
421
- "." +
422
- relation.joinColumns[0].propertyPath +
423
- " IN (:...values)"; // todo: use ANY for postgres
424
- }
425
- }
426
- else {
427
- condition = entities
428
- .map((entity, entityIndex) => {
429
- return relation.joinColumns
430
- .map((joinColumn, joinColumnIndex) => {
431
- const paramName = "entity" + entityIndex + "_" + joinColumnIndex;
432
- qb.setParameter(paramName, joinColumn.referencedColumn.getEntityValue(entity));
433
- return (mainAlias +
434
- "." +
435
- joinColumn.propertyPath +
436
- " = :" +
437
- paramName);
438
- })
439
- .join(" AND ");
440
- })
441
- .map((condition) => "(" + condition + ")")
442
- .join(" OR ");
443
- }
444
- return qb
445
- .from(relation.entityMetadata.target, mainAlias)
446
- .where(condition)
447
- .getRawMany();
448
- }
449
- }
450
- ;
451
- ({}); // @--end-of-file-for-module=taon-typeorm lib/typeorm/query-builder/RelationIdLoader.ts
452
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVsYXRpb25JZExvYWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3RtcC1saWJzLWZvci1kaXN0LXdlYnNxbC90YW9uLXR5cGVvcm0vcHJvamVjdHMvdGFvbi10eXBlb3JtL3NyYy9saWIvdHlwZW9ybS9xdWVyeS1idWlsZGVyL1JlbGF0aW9uSWRMb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHVCQUF1QixDQUFBO0FBRW5EOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGdCQUFnQjtJQUt6QixZQUFvQixVQUFzQjtRQUF0QixlQUFVLEdBQVYsVUFBVSxDQUFZO0lBQUcsQ0FBQztJQU05Qzs7T0FFRztJQUNILElBQUksQ0FDQSxRQUEwQixFQUMxQixnQkFBaUQsRUFDakQsOEJBQWdFO1FBRWhFLE1BQU0sUUFBUSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLENBQUM7WUFDNUMsQ0FBQyxDQUFDLGdCQUFnQjtZQUNsQixDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO1FBQ3hCLE1BQU0sZUFBZSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUMsOEJBQThCLENBQUM7WUFDakUsQ0FBQyxDQUFDLDhCQUE4QjtZQUNoQyxDQUFDLENBQUMsOEJBQThCO2dCQUNoQyxDQUFDLENBQUMsQ0FBQyw4QkFBOEIsQ0FBQztnQkFDbEMsQ0FBQyxDQUFDLFNBQVMsQ0FBQTtRQUdmLElBQUksUUFBUSxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ3hCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxRQUFRLEVBQUUsZUFBZSxDQUFDLENBQUE7UUFDdEUsQ0FBQzthQUFNLElBQUksUUFBUSxDQUFDLFdBQVcsSUFBSSxRQUFRLENBQUMsZUFBZSxFQUFFLENBQUM7WUFDMUQsT0FBTyxJQUFJLENBQUMsZ0NBQWdDLENBQ3hDLFFBQVEsRUFDUixR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R0FBRyxHQUFHLENBQUM7aUJBQ3pDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtRQUNyQixDQUFDO1FBR0QsT0FBTyxFQUFFO2FBQ0osSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQzthQUMvQyxLQUFLLENBQUMsU0FBUyxDQUFDO2FBQ2hCLFVBQVUsRUFBRSxDQUFBO0lBQ3JCLENBQUM7Q0FDSjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsdUZBQXVGIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IFJlbGF0aW9uTWV0YWRhdGEgfSBmcm9tIFwiLi4vbWV0YWRhdGEvUmVsYXRpb25NZXRhZGF0YVwiXG5pbXBvcnQgeyBDb2x1bW5NZXRhZGF0YSB9IGZyb20gXCIuLi9tZXRhZGF0YS9Db2x1bW5NZXRhZGF0YVwiXG5pbXBvcnQgeyBEYXRhU291cmNlIH0gZnJvbSBcIi4uL2RhdGEtc291cmNlL0RhdGFTb3VyY2VcIlxuaW1wb3J0IHsgT2JqZWN0TGl0ZXJhbCB9IGZyb20gXCIuLi9jb21tb24vT2JqZWN0TGl0ZXJhbFwiXG5pbXBvcnQgeyBTZWxlY3RRdWVyeUJ1aWxkZXIgfSBmcm9tIFwiLi9TZWxlY3RRdWVyeUJ1aWxkZXJcIlxuaW1wb3J0IHsgRHJpdmVyVXRpbHMgfSBmcm9tIFwiLi4vZHJpdmVyL0RyaXZlclV0aWxzXCJcblxuLyoqXG4gKiBMb2FkcyByZWxhdGlvbiBpZHMgZm9yIHRoZSBnaXZlbiBlbnRpdGllcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFJlbGF0aW9uSWRMb2FkZXIge1xuXG5cblxuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBjb25uZWN0aW9uOiBEYXRhU291cmNlKSB7fVxuXG5cblxuXG5cbiAgICAvKipcbiAgICAgKiBMb2FkcyByZWxhdGlvbiBpZHMgb2YgdGhlIGdpdmVuIGVudGl0eSBvciBlbnRpdGllcy5cbiAgICAgKi9cbiAgICBsb2FkKFxuICAgICAgICByZWxhdGlvbjogUmVsYXRpb25NZXRhZGF0YSxcbiAgICAgICAgZW50aXR5T3JFbnRpdGllczogT2JqZWN0TGl0ZXJhbCB8IE9iamVjdExpdGVyYWxbXSxcbiAgICAgICAgcmVsYXRlZEVudGl0eU9yUmVsYXRlZEVudGl0aWVzPzogT2JqZWN0TGl0ZXJhbCB8IE9iamVjdExpdGVyYWxbXSxcbiAgICApOiBQcm9taXNlPGFueVtdPiB7XG4gICAgICAgIGNvbnN0IGVudGl0aWVzID0gQXJyYXkuaXNBcnJheShlbnRpdHlPckVudGl0aWVzKVxuICAgICAgICAgICAgPyBlbnRpdHlPckVudGl0aWVzXG4gICAgICAgICAgICA6IFtlbnRpdHlPckVudGl0aWVzXVxuICAgICAgICBjb25zdCByZWxhdGVkRW50aXRpZXMgPSBBcnJheS5pc0FycmF5KHJlbGF0ZWRFbnRpdHlPclJlbGF0ZWRFbnRpdGllcylcbiAgICAgICAgICAgID8gcmVsYXRlZEVudGl0eU9yUmVsYXRlZEVudGl0aWVzXG4gICAgICAgICAgICA6IHJlbGF0ZWRFbnRpdHlPclJlbGF0ZWRFbnRpdGllc1xuICAgICAgICAgICAgPyBbcmVsYXRlZEVudGl0eU9yUmVsYXRlZEVudGl0aWVzXVxuICAgICAgICAgICAgOiB1bmRlZmluZWRcblxuXG4gICAgICAgIGlmIChyZWxhdGlvbi5pc01hbnlUb01hbnkpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmxvYWRGb3JNYW55VG9NYW55KHJlbGF0aW9uLCBlbnRpdGllcywgcmVsYXRlZEVudGl0aWVzKVxuICAgICAgICB9IGVsc2UgaWYgKHJlbGF0aW9uLmlzTWFueVRvT25lIHx8IHJlbGF0aW9uLmlzT25lVG9PbmVPd25lcikge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMubG9hZEZvck1hbnlUb09uZUFuZE9uZVRvT25lT3duZXIoXG4gICAgICAgICAgICAgICAgcmVsYXRpb24sXG4gICAgICAgICAgICAgICAgZW50aXRpZXMsXG4gICAgICAgICAgICAgICAgcmVsYXRlZEVudGl0aWVzLFxuICAgICAgICAgICAgKVxuICAgICAgICB9IGVsc2Uge1xuXG4gICAgICAgICAgICByZXR1cm4gdGhpcy5sb2FkRm9yT25lVG9NYW55QW5kT25lVG9PbmVOb3RPd25lcihcbiAgICAgICAgICAgICAgICByZWxhdGlvbixcbiAgICAgICAgICAgICAgICBlbnRpdGllcyxcbiAgICAgICAgICAgICAgICByZWxhdGVkRW50aXRpZXMsXG4gICAgICAgICAgICApXG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBMb2FkcyByZWxhdGlvbiBpZHMgb2YgdGhlIGdpdmVuIGVudGl0aWVzIGFuZCBncm91cHMgdGhlbSBpbnRvIHRoZSBvYmplY3Qgd2l0aCBwYXJlbnQgYW5kIGNoaWxkcmVuLlxuICAgICAqXG4gICAgICogdG9kbzogZXh0cmFjdCB0aGlzIG1ldGhvZD9cbiAgICAgKi9cbiAgICBhc3luYyBsb2FkTWFueVRvTWFueVJlbGF0aW9uSWRzQW5kR3JvdXA8XG4gICAgICAgIEUxIGV4dGVuZHMgT2JqZWN0TGl0ZXJhbCxcbiAgICAgICAgRTIgZXh0ZW5kcyBPYmplY3RMaXRlcmFsLFxuICAgID4oXG4gICAgICAgIHJlbGF0aW9uOiBSZWxhdGlvbk1ldGFkYXRhLFxuICAgICAgICBlbnRpdGllc09yRW50aXRpZXM6IEUxIHwgRTFbXSxcbiAgICAgICAgcmVsYXRlZEVudGl0eU9yRW50aXRpZXM/OiBFMiB8IEUyW10sXG4gICAgICAgIHF1ZXJ5QnVpbGRlcj86IFNlbGVjdFF1ZXJ5QnVpbGRlcjxhbnk+LFxuICAgICk6IFByb21pc2U8eyBlbnRpdHk6IEUxOyByZWxhdGVkPzogRTIgfCBFMltdIH1bXT4ge1xuXG5cbiAgICAgICAgY29uc3QgaXNNYW55ID0gcmVsYXRpb24uaXNNYW55VG9NYW55IHx8IHJlbGF0aW9uLmlzT25lVG9NYW55XG4gICAgICAgIGNvbnN0IGVudGl0aWVzOiBFMVtdID0gQXJyYXkuaXNBcnJheShlbnRpdGllc09yRW50aXRpZXMpXG4gICAgICAgICAgICA/IGVudGl0aWVzT3JFbnRpdGllc1xuICAgICAgICAgICAgOiBbZW50aXRpZXNPckVudGl0aWVzXVxuXG4gICAgICAgIGlmICghcmVsYXRlZEVudGl0eU9yRW50aXRpZXMpIHtcbiAgICAgICAgICAgIHJlbGF0ZWRFbnRpdHlPckVudGl0aWVzID0gYXdhaXQgdGhpcy5jb25uZWN0aW9uLnJlbGF0aW9uTG9hZGVyLmxvYWQoXG4gICAgICAgICAgICAgICAgcmVsYXRpb24sXG4gICAgICAgICAgICAgICAgZW50aXRpZXNPckVudGl0aWVzLFxuICAgICAgICAgICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICBxdWVyeUJ1aWxkZXIsXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBpZiAoIXJlbGF0ZWRFbnRpdHlPckVudGl0aWVzLmxlbmd0aClcbiAgICAgICAgICAgICAgICByZXR1cm4gZW50aXRpZXMubWFwKChlbnRpdHkpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgIGVudGl0eTogZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICByZWxhdGVkOiBpc01hbnkgPyBbXSA6IHVuZGVmaW5lZCxcbiAgICAgICAgICAgICAgICB9KSlcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlbGF0aW9uSWRzID0gYXdhaXQgdGhpcy5sb2FkKFxuICAgICAgICAgICAgcmVsYXRpb24sXG4gICAgICAgICAgICBlbnRpdGllc09yRW50aXRpZXMsXG4gICAgICAgICAgICByZWxhdGVkRW50aXR5T3JFbnRpdGllcyxcbiAgICAgICAgKVxuXG5cblxuXG4gICAgICAgIGNvbnN0IHJlbGF0ZWRFbnRpdGllczogRTJbXSA9IEFycmF5LmlzQXJyYXkocmVsYXRlZEVudGl0eU9yRW50aXRpZXMpXG4gICAgICAgICAgICA/IHJlbGF0ZWRFbnRpdHlPckVudGl0aWVzXG4gICAgICAgICAgICA6IFtyZWxhdGVkRW50aXR5T3JFbnRpdGllcyFdXG5cbiAgICAgICAgbGV0IGNvbHVtbnM6IENvbHVtbk1ldGFkYXRhW10gPSBbXSxcbiAgICAgICAgICAgIGludmVyc2VDb2x1bW5zOiBDb2x1bW5NZXRhZGF0YVtdID0gW11cbiAgICAgICAgaWYgKHJlbGF0aW9uLmlzTWFueVRvTWFueU93bmVyKSB7XG4gICAgICAgICAgICBjb2x1bW5zID0gcmVsYXRpb24uanVuY3Rpb25FbnRpdHlNZXRhZGF0YSEuaW52ZXJzZUNvbHVtbnMubWFwKFxuICAgICAgICAgICAgICAgIChjb2x1bW4pID0+IGNvbHVtbi5yZWZlcmVuY2VkQ29sdW1uISxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIGludmVyc2VDb2x1bW5zID0gcmVsYXRpb24uanVuY3Rpb25FbnRpdHlNZXRhZGF0YSEub3duZXJDb2x1bW5zLm1hcChcbiAgICAgICAgICAgICAgICAoY29sdW1uKSA9PiBjb2x1bW4ucmVmZXJlbmNlZENvbHVtbiEsXG4gICAgICAgICAgICApXG4gICAgICAgIH0gZWxzZSBpZiAocmVsYXRpb24uaXNNYW55VG9NYW55Tm90T3duZXIpIHtcbiAgICAgICAgICAgIGNvbHVtbnMgPSByZWxhdGlvbi5qdW5jdGlvbkVudGl0eU1ldGFkYXRhIS5vd25lckNvbHVtbnMubWFwKFxuICAgICAgICAgICAgICAgIChjb2x1bW4pID0+IGNvbHVtbi5yZWZlcmVuY2VkQ29sdW1uISxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIGludmVyc2VDb2x1bW5zID1cbiAgICAgICAgICAgICAgICByZWxhdGlvbi5qdW5jdGlvbkVudGl0eU1ldGFkYXRhIS5pbnZlcnNlQ29sdW1ucy5tYXAoXG4gICAgICAgICAgICAgICAgICAgIChjb2x1bW4pID0+IGNvbHVtbi5yZWZlcmVuY2VkQ29sdW1uISxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgIH0gZWxzZSBpZiAocmVsYXRpb24uaXNNYW55VG9PbmUgfHwgcmVsYXRpb24uaXNPbmVUb09uZU93bmVyKSB7XG4gICAgICAgICAgICBjb2x1bW5zID0gcmVsYXRpb24uam9pbkNvbHVtbnMubWFwKFxuICAgICAgICAgICAgICAgIChjb2x1bW4pID0+IGNvbHVtbi5yZWZlcmVuY2VkQ29sdW1uISxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIGludmVyc2VDb2x1bW5zID0gcmVsYXRpb24uZW50aXR5TWV0YWRhdGEucHJpbWFyeUNvbHVtbnNcbiAgICAgICAgfSBlbHNlIGlmIChyZWxhdGlvbi5pc09uZVRvTWFueSB8fCByZWxhdGlvbi5pc09uZVRvT25lTm90T3duZXIpIHtcbiAgICAgICAgICAgIGNvbHVtbnMgPSByZWxhdGlvbi5pbnZlcnNlUmVsYXRpb24hLmVudGl0eU1ldGFkYXRhLnByaW1hcnlDb2x1bW5zXG4gICAgICAgICAgICBpbnZlcnNlQ29sdW1ucyA9IHJlbGF0aW9uLmludmVyc2VSZWxhdGlvbiEuam9pbkNvbHVtbnMubWFwKFxuICAgICAgICAgICAgICAgIChjb2x1bW4pID0+IGNvbHVtbi5yZWZlcmVuY2VkQ29sdW1uISxcbiAgICAgICAgICAgIClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBlbnRpdGllcy5tYXAoKGVudGl0eSkgPT4ge1xuICAgICAgICAgICAgY29uc3QgZ3JvdXA6IHsgZW50aXR5OiBFMTsgcmVsYXRlZD86IEUyIHwgRTJbXSB9ID0ge1xuICAgICAgICAgICAgICAgIGVudGl0eTogZW50aXR5LFxuICAgICAgICAgICAgICAgIHJlbGF0ZWQ6IGlzTWFueSA/IFtdIDogdW5kZWZpbmVkLFxuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBlbnRpdHlSZWxhdGlvbklkcyA9IHJlbGF0aW9uSWRzLmZpbHRlcigocmVsYXRpb25JZCkgPT4ge1xuICAgICAgICAgICAgICAgIHJldHVybiBpbnZlcnNlQ29sdW1ucy5ldmVyeSgoY29sdW1uKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBjb2x1bW4uY29tcGFyZUVudGl0eVZhbHVlKFxuICAgICAgICAgICAgICAgICAgICAgICAgZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRpb25JZFtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW4uZW50aXR5TWV0YWRhdGEubmFtZSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiX1wiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLnByb3BlcnR5QWxpYXNOYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBpZiAoIWVudGl0eVJlbGF0aW9uSWRzLmxlbmd0aCkgcmV0dXJuIGdyb3VwXG5cbiAgICAgICAgICAgIHJlbGF0ZWRFbnRpdGllcy5mb3JFYWNoKChyZWxhdGVkRW50aXR5KSA9PiB7XG4gICAgICAgICAgICAgICAgZW50aXR5UmVsYXRpb25JZHMuZm9yRWFjaCgocmVsYXRpb25JZCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZWxhdGVkRW50aXR5TWF0Y2hlZCA9IGNvbHVtbnMuZXZlcnkoKGNvbHVtbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbHVtbi5jb21wYXJlRW50aXR5VmFsdWUoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRlZEVudGl0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxhdGlvbklkW1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBEcml2ZXJVdGlscy5idWlsZEFsaWFzKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jb25uZWN0aW9uLmRyaXZlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi5lbnRpdHlNZXRhZGF0YS5uYW1lICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIl9cIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRpb24ucHJvcGVydHlQYXRoLnJlcGxhY2UoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiLlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIl9cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIl9cIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLnByb3BlcnR5UGF0aC5yZXBsYWNlKFwiLlwiLCBcIl9cIiksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICBpZiAocmVsYXRlZEVudGl0eU1hdGNoZWQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpc01hbnkpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA7KGdyb3VwLnJlbGF0ZWQgYXMgRTJbXSkucHVzaChyZWxhdGVkRW50aXR5KVxuICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBncm91cC5yZWxhdGVkID0gcmVsYXRlZEVudGl0eVxuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICByZXR1cm4gZ3JvdXBcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBMb2FkcyByZWxhdGlvbiBpZHMgb2YgdGhlIGdpdmVuIGVudGl0aWVzIGFuZCBtYXBzIHRoZW0gaW50byB0aGUgZ2l2ZW4gZW50aXR5IHByb3BlcnR5LlxuICAgICBhc3luYyBsb2FkTWFueVRvTWFueVJlbGF0aW9uSWRzQW5kTWFwKFxuICAgICByZWxhdGlvbjogUmVsYXRpb25NZXRhZGF0YSxcbiAgICAgZW50aXR5T3JFbnRpdGllczogT2JqZWN0TGl0ZXJhbHxPYmplY3RMaXRlcmFsW10sXG4gICAgIG1hcFRvRW50aXR5T3JFbnRpdGllczogT2JqZWN0TGl0ZXJhbHxPYmplY3RMaXRlcmFsW10sXG4gICAgIHByb3BlcnR5TmFtZTogc3RyaW5nXG4gICAgICk6IFByb21pc2U8dm9pZD4ge1xuICAgICAgICBjb25zdCByZWxhdGlvbklkcyA9IGF3YWl0IHRoaXMubG9hZE1hbnlUb01hbnlSZWxhdGlvbklkcyhyZWxhdGlvbiwgZW50aXR5T3JFbnRpdGllcywgbWFwVG9FbnRpdHlPckVudGl0aWVzKTtcbiAgICAgICAgY29uc3QgbWFwVG9FbnRpdGllcyA9IG1hcFRvRW50aXR5T3JFbnRpdGllcyBpbnN0YW5jZW9mIEFycmF5ID8gbWFwVG9FbnRpdHlPckVudGl0aWVzIDogW21hcFRvRW50aXR5T3JFbnRpdGllc107XG4gICAgICAgIGNvbnN0IGp1bmN0aW9uTWV0YWRhdGEgPSByZWxhdGlvbi5qdW5jdGlvbkVudGl0eU1ldGFkYXRhITtcbiAgICAgICAgY29uc3QgbWFpbkFsaWFzID0ganVuY3Rpb25NZXRhZGF0YS5uYW1lO1xuICAgICAgICBjb25zdCBjb2x1bW5zID0gcmVsYXRpb24uaXNPd25pbmcgPyBqdW5jdGlvbk1ldGFkYXRhLmludmVyc2VDb2x1bW5zIDoganVuY3Rpb25NZXRhZGF0YS5vd25lckNvbHVtbnM7XG4gICAgICAgIGNvbnN0IGludmVyc2VDb2x1bW5zID0gcmVsYXRpb24uaXNPd25pbmcgPyBqdW5jdGlvbk1ldGFkYXRhLm93bmVyQ29sdW1ucyA6IGp1bmN0aW9uTWV0YWRhdGEuaW52ZXJzZUNvbHVtbnM7XG4gICAgICAgIG1hcFRvRW50aXRpZXMuZm9yRWFjaChtYXBUb0VudGl0eSA9PiB7XG4gICAgICAgICAgICBtYXBUb0VudGl0eVtwcm9wZXJ0eU5hbWVdID0gW107XG4gICAgICAgICAgICByZWxhdGlvbklkcy5mb3JFYWNoKHJlbGF0aW9uSWQgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1hdGNoID0gaW52ZXJzZUNvbHVtbnMuZXZlcnkoY29sdW1uID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbHVtbi5yZWZlcmVuY2VkQ29sdW1uIS5nZXRFbnRpdHlWYWx1ZShtYXBUb0VudGl0eSkgPT09IHJlbGF0aW9uSWRbbWFpbkFsaWFzICsgXCJfXCIgKyBjb2x1bW4ucHJvcGVydHlOYW1lXTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICBpZiAobWF0Y2gpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGNvbHVtbnMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXBUb0VudGl0eVtwcm9wZXJ0eU5hbWVdLnB1c2gocmVsYXRpb25JZFttYWluQWxpYXMgKyBcIl9cIiArIGNvbHVtbnNbMF0ucHJvcGVydHlOYW1lXSk7XG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHt9O1xuICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1ucy5mb3JFYWNoKGNvbHVtbiA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLnJlZmVyZW5jZWRDb2x1bW4hLnNldEVudGl0eVZhbHVlKHZhbHVlLCByZWxhdGlvbklkW21haW5BbGlhcyArIFwiX1wiICsgY29sdW1uLnByb3BlcnR5TmFtZV0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBtYXBUb0VudGl0eVtwcm9wZXJ0eU5hbWVdLnB1c2godmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH0qL1xuXG5cblxuXG5cbiAgICAvKipcbiAgICAgKiBMb2FkcyByZWxhdGlvbiBpZHMgZm9yIHRoZSBtYW55LXRvLW1hbnkgcmVsYXRpb24uXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGxvYWRGb3JNYW55VG9NYW55KFxuICAgICAgICByZWxhdGlvbjogUmVsYXRpb25NZXRhZGF0YSxcbiAgICAgICAgZW50aXRpZXM6IE9iamVjdExpdGVyYWxbXSxcbiAgICAgICAgcmVsYXRlZEVudGl0aWVzPzogT2JqZWN0TGl0ZXJhbFtdLFxuICAgICkge1xuICAgICAgICBjb25zdCBqdW5jdGlvbk1ldGFkYXRhID0gcmVsYXRpb24uanVuY3Rpb25FbnRpdHlNZXRhZGF0YSFcbiAgICAgICAgY29uc3QgbWFpbkFsaWFzID0ganVuY3Rpb25NZXRhZGF0YS5uYW1lXG4gICAgICAgIGNvbnN0IGNvbHVtbnMgPSByZWxhdGlvbi5pc093bmluZ1xuICAgICAgICAgICAgPyBqdW5jdGlvbk1ldGFkYXRhLm93bmVyQ29sdW1uc1xuICAgICAgICAgICAgOiBqdW5jdGlvbk1ldGFkYXRhLmludmVyc2VDb2x1bW5zXG4gICAgICAgIGNvbnN0IGludmVyc2VDb2x1bW5zID0gcmVsYXRpb24uaXNPd25pbmdcbiAgICAgICAgICAgID8ganVuY3Rpb25NZXRhZGF0YS5pbnZlcnNlQ29sdW1uc1xuICAgICAgICAgICAgOiBqdW5jdGlvbk1ldGFkYXRhLm93bmVyQ29sdW1uc1xuICAgICAgICBjb25zdCBxYiA9IHRoaXMuY29ubmVjdGlvbi5jcmVhdGVRdWVyeUJ1aWxkZXIoKVxuXG5cbiAgICAgICAgY29sdW1ucy5mb3JFYWNoKChjb2x1bW4pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbHVtbk5hbWUgPSBEcml2ZXJVdGlscy5idWlsZEFsaWFzKFxuICAgICAgICAgICAgICAgIHRoaXMuY29ubmVjdGlvbi5kcml2ZXIsXG4gICAgICAgICAgICAgICAgY29sdW1uLnJlZmVyZW5jZWRDb2x1bW4hLmVudGl0eU1ldGFkYXRhLm5hbWUgK1xuICAgICAgICAgICAgICAgICAgICBcIl9cIiArXG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbi5yZWZlcmVuY2VkQ29sdW1uIS5wcm9wZXJ0eVBhdGgucmVwbGFjZShcIi5cIiwgXCJfXCIpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgcWIuYWRkU2VsZWN0KG1haW5BbGlhcyArIFwiLlwiICsgY29sdW1uLnByb3BlcnR5UGF0aCwgY29sdW1uTmFtZSlcbiAgICAgICAgfSlcbiAgICAgICAgaW52ZXJzZUNvbHVtbnMuZm9yRWFjaCgoY29sdW1uKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb2x1bW5OYW1lID0gRHJpdmVyVXRpbHMuYnVpbGRBbGlhcyhcbiAgICAgICAgICAgICAgICB0aGlzLmNvbm5lY3Rpb24uZHJpdmVyLFxuICAgICAgICAgICAgICAgIGNvbHVtbi5yZWZlcmVuY2VkQ29sdW1uIS5lbnRpdHlNZXRhZGF0YS5uYW1lICtcbiAgICAgICAgICAgICAgICAgICAgXCJfXCIgK1xuICAgICAgICAgICAgICAgICAgICByZWxhdGlvbi5wcm9wZXJ0eVBhdGgucmVwbGFjZShcIi5cIiwgXCJfXCIpICtcbiAgICAgICAgICAgICAgICAgICAgXCJfXCIgK1xuICAgICAgICAgICAgICAgICAgICBjb2x1bW4ucmVmZXJlbmNlZENvbHVtbiEucHJvcGVydHlQYXRoLnJlcGxhY2UoXCIuXCIsIFwiX1wiKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIHFiLmFkZFNlbGVjdChtYWluQWxpYXMgKyBcIi5cIiArIGNvbHVtbi5wcm9wZXJ0eVBhdGgsIGNvbHVtbk5hbWUpXG4gICAgICAgIH0pXG5cblxuICAgICAgICBsZXQgY29uZGl0aW9uMSA9IFwiXCJcbiAgICAgICAgaWYgKGNvbHVtbnMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZXMgPSBlbnRpdGllcy5tYXAoKGVudGl0eSkgPT5cbiAgICAgICAgICAgICAgICBjb2x1bW5zWzBdLnJlZmVyZW5jZWRDb2x1bW4hLmdldEVudGl0eVZhbHVlKGVudGl0eSksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBjb25zdCBhcmVBbGxOdW1iZXJzID0gdmFsdWVzLmV2ZXJ5KFxuICAgICAgICAgICAgICAgICh2YWx1ZSkgPT4gdHlwZW9mIHZhbHVlID09PSBcIm51bWJlclwiLFxuICAgICAgICAgICAgKVxuXG4gICAgICAgICAgICBpZiAoYXJlQWxsTnVtYmVycykge1xuICAgICAgICAgICAgICAgIGNvbmRpdGlvbjEgPSBgJHttYWluQWxpYXN9LiR7XG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbnNbMF0ucHJvcGVydHlQYXRoXG4gICAgICAgICAgICAgICAgfSBJTiAoJHt2YWx1ZXMuam9pbihcIiwgXCIpfSlgXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHFiLnNldFBhcmFtZXRlcihcInZhbHVlczFcIiwgdmFsdWVzKVxuICAgICAgICAgICAgICAgIGNvbmRpdGlvbjEgPVxuICAgICAgICAgICAgICAgICAgICBtYWluQWxpYXMgK1xuICAgICAgICAgICAgICAgICAgICBcIi5cIiArXG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbnNbMF0ucHJvcGVydHlQYXRoICtcbiAgICAgICAgICAgICAgICAgICAgXCIgSU4gKDouLi52YWx1ZXMxKVwiIC8vIHRvZG86IHVzZSBBTlkgZm9yIHBvc3RncmVzXG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25kaXRpb24xID1cbiAgICAgICAgICAgICAgICBcIihcIiArXG4gICAgICAgICAgICAgICAgZW50aXRpZXNcbiAgICAgICAgICAgICAgICAgICAgLm1hcCgoZW50aXR5LCBlbnRpdHlJbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGNvbHVtbnNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKChjb2x1bW4pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgcGFyYW1OYW1lID1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50aXR5MV9cIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRpdHlJbmRleCArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIl9cIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2x1bW4ucHJvcGVydHlOYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHFiLnNldFBhcmFtZXRlcihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi5yZWZlcmVuY2VkQ29sdW1uIS5nZXRFbnRpdHlWYWx1ZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRpdHksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWluQWxpYXMgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIuXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLnByb3BlcnR5UGF0aCArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIiA9IDpcIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbU5hbWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgLmpvaW4oXCIgQU5EIFwiKVxuICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAubWFwKChjb25kaXRpb24pID0+IFwiKFwiICsgY29uZGl0aW9uICsgXCIpXCIpXG4gICAgICAgICAgICAgICAgICAgIC5qb2luKFwiIE9SIFwiKSArXG4gICAgICAgICAgICAgICAgXCIpXCJcbiAgICAgICAgfVxuXG5cbiAgICAgICAgbGV0IGNvbmRpdGlvbjIgPSBcIlwiXG4gICAgICAgIGlmIChyZWxhdGVkRW50aXRpZXMpIHtcbiAgICAgICAgICAgIGlmIChpbnZlcnNlQ29sdW1ucy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZXMgPSByZWxhdGVkRW50aXRpZXMubWFwKChlbnRpdHkpID0+XG4gICAgICAgICAgICAgICAgICAgIGludmVyc2VDb2x1bW5zWzBdLnJlZmVyZW5jZWRDb2x1bW4hLmdldEVudGl0eVZhbHVlKGVudGl0eSksXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIGNvbnN0IGFyZUFsbE51bWJlcnMgPSB2YWx1ZXMuZXZlcnkoXG4gICAgICAgICAgICAgICAgICAgICh2YWx1ZSkgPT4gdHlwZW9mIHZhbHVlID09PSBcIm51bWJlclwiLFxuICAgICAgICAgICAgICAgIClcblxuICAgICAgICAgICAgICAgIGlmIChhcmVBbGxOdW1iZXJzKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbmRpdGlvbjIgPSBgJHttYWluQWxpYXN9LiR7XG4gICAgICAgICAgICAgICAgICAgICAgICBpbnZlcnNlQ29sdW1uc1swXS5wcm9wZXJ0eVBhdGhcbiAgICAgICAgICAgICAgICAgICAgfSBJTiAoJHt2YWx1ZXMuam9pbihcIiwgXCIpfSlgXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgcWIuc2V0UGFyYW1ldGVyKFwidmFsdWVzMlwiLCB2YWx1ZXMpXG4gICAgICAgICAgICAgICAgICAgIGNvbmRpdGlvbjIgPVxuICAgICAgICAgICAgICAgICAgICAgICAgbWFpbkFsaWFzICtcbiAgICAgICAgICAgICAgICAgICAgICAgIFwiLlwiICtcbiAgICAgICAgICAgICAgICAgICAgICAgIGludmVyc2VDb2x1bW5zWzBdLnByb3BlcnR5UGF0aCArXG4gICAgICAgICAgICAgICAgICAgICAgICBcIiBJTiAoOi4uLnZhbHVlczIpXCIgLy8gdG9kbzogdXNlIEFOWSBmb3IgcG9zdGdyZXNcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbmRpdGlvbjIgPVxuICAgICAgICAgICAgICAgICAgICBcIihcIiArXG4gICAgICAgICAgICAgICAgICAgIHJlbGF0ZWRFbnRpdGllc1xuICAgICAgICAgICAgICAgICAgICAgICAgLm1hcCgoZW50aXR5LCBlbnRpdHlJbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpbnZlcnNlQ29sdW1uc1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubWFwKChjb2x1bW4pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhcmFtTmFtZSA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJlbnRpdHkyX1wiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRpdHlJbmRleCArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJfXCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbHVtbi5wcm9wZXJ0eU5hbWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHFiLnNldFBhcmFtZXRlcihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbU5hbWUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLnJlZmVyZW5jZWRDb2x1bW4hLmdldEVudGl0eVZhbHVlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbnRpdHksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbWFpbkFsaWFzICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIi5cIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLnByb3BlcnR5UGF0aCArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgPSA6XCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtTmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAuam9pbihcIiBBTkQgXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLm1hcCgoY29uZGl0aW9uKSA9PiBcIihcIiArIGNvbmRpdGlvbiArIFwiKVwiKVxuICAgICAgICAgICAgICAgICAgICAgICAgLmpvaW4oXCIgT1IgXCIpICtcbiAgICAgICAgICAgICAgICAgICAgXCIpXCJcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG5cblxuICAgICAgICAvL1xuXG5cblxuXG5cblxuXG5cblxuXG4gICAgICAgIC8vXG5cblxuXG5cblxuICAgICAgICBjb25zdCBjb25kaXRpb24gPSBbY29uZGl0aW9uMSwgY29uZGl0aW9uMl1cbiAgICAgICAgICAgIC5maWx0ZXIoKHYpID0+IHYubGVuZ3RoID4gMClcbiAgICAgICAgICAgIC5qb2luKFwiIEFORCBcIilcbiAgICAgICAgcmV0dXJuIHFiXG4gICAgICAgICAgICAuZnJvbShqdW5jdGlvbk1ldGFkYXRhLnRhcmdldCwgbWFpbkFsaWFzKVxuICAgICAgICAgICAgLndoZXJlKGNvbmRpdGlvbilcbiAgICAgICAgICAgIC5nZXRSYXdNYW55KClcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBMb2FkcyByZWxhdGlvbiBpZHMgZm9yIHRoZSBtYW55LXRvLW9uZSBhbmQgb25lLXRvLW9uZSBvd25lciByZWxhdGlvbnMuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGxvYWRGb3JNYW55VG9PbmVBbmRPbmVUb09uZU93bmVyKFxuICAgICAgICByZWxhdGlvbjogUmVsYXRpb25NZXRhZGF0YSxcbiAgICAgICAgZW50aXRpZXM6IE9iamVjdExpdGVyYWxbXSxcbiAgICAgICAgcmVsYXRlZEVudGl0aWVzPzogT2JqZWN0TGl0ZXJhbFtdLFxuICAgICkge1xuICAgICAgICBjb25zdCBtYWluQWxpYXMgPSByZWxhdGlvbi5lbnRpdHlNZXRhZGF0YS50YXJnZXROYW1lXG5cblxuXG4gICAgICAgIGNvbnN0IGhhc0FsbEpvaW5Db2x1bW5zSW5FbnRpdHkgPSByZWxhdGlvbi5qb2luQ29sdW1ucy5ldmVyeShcbiAgICAgICAgICAgIChqb2luQ29sdW1uKSA9PiB7XG4gICAgICAgICAgICAgICAgcmV0dXJuICEhcmVsYXRpb24uZW50aXR5TWV0YWRhdGEubm9uVmlydHVhbENvbHVtbnMuZmluZChcbiAgICAgICAgICAgICAgICAgICAgKGNvbHVtbikgPT4gY29sdW1uID09PSBqb2luQ29sdW1uLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH0sXG4gICAgICAgIClcbiAgICAgICAgaWYgKHJlbGF0ZWRFbnRpdGllcyAmJiBoYXNBbGxKb2luQ29sdW1uc0luRW50aXR5KSB7XG4gICAgICAgICAgICBsZXQgcmVsYXRpb25JZE1hcHM6IE9iamVjdExpdGVyYWxbXSA9IFtdXG4gICAgICAgICAgICBlbnRpdGllcy5mb3JFYWNoKChlbnRpdHkpID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgcmVsYXRpb25JZE1hcDogT2JqZWN0TGl0ZXJhbCA9IHt9XG4gICAgICAgICAgICAgICAgcmVsYXRpb24uZW50aXR5TWV0YWRhdGEucHJpbWFyeUNvbHVtbnMuZm9yRWFjaChcbiAgICAgICAgICAgICAgICAgICAgKHByaW1hcnlDb2x1bW4pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGtleSA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpbWFyeUNvbHVtbi5lbnRpdHlNZXRhZGF0YS5uYW1lICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIl9cIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpbWFyeUNvbHVtbi5wcm9wZXJ0eVBhdGgucmVwbGFjZShcIi5cIiwgXCJfXCIpXG4gICAgICAgICAgICAgICAgICAgICAgICByZWxhdGlvbklkTWFwW2tleV0gPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByaW1hcnlDb2x1bW4uZ2V0RW50aXR5VmFsdWUoZW50aXR5KVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIClcblxuICAgICAgICAgICAgICAgIHJlbGF0ZWRFbnRpdGllcy5mb3JFYWNoKChyZWxhdGVkRW50aXR5KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uLmpvaW5Db2x1bW5zLmZvckVhY2goKGpvaW5Db2x1bW4pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGVudGl0eUNvbHVtblZhbHVlID1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBqb2luQ29sdW1uLmdldEVudGl0eVZhbHVlKGVudGl0eSlcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlbGF0ZWRFbnRpdHlDb2x1bW5WYWx1ZSA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgam9pbkNvbHVtbi5yZWZlcmVuY2VkQ29sdW1uIS5nZXRFbnRpdHlWYWx1ZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRlZEVudGl0eSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50aXR5Q29sdW1uVmFsdWUgPT09IHVuZGVmaW5lZCB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0ZWRFbnRpdHlDb2x1bW5WYWx1ZSA9PT0gdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuXG5cbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChlbnRpdHlDb2x1bW5WYWx1ZSA9PT0gcmVsYXRlZEVudGl0eUNvbHVtblZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qga2V5ID1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgam9pbkNvbHVtbi5yZWZlcmVuY2VkQ29sdW1uIS5lbnRpdHlNZXRhZGF0YVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLm5hbWUgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIl9cIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uLnByb3BlcnR5UGF0aC5yZXBsYWNlKFwiLlwiLCBcIl9cIikgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIl9cIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpvaW5Db2x1bW4ucmVmZXJlbmNlZENvbHVtbiEucHJvcGVydHlQYXRoLnJlcGxhY2UoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIi5cIixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiX1wiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRpb25JZE1hcFtrZXldID0gcmVsYXRlZEVudGl0eUNvbHVtblZhbHVlXG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgIE9iamVjdC5rZXlzKHJlbGF0aW9uSWRNYXApLmxlbmd0aCA9PT1cbiAgICAgICAgICAgICAgICAgICAgcmVsYXRpb24uZW50aXR5TWV0YWRhdGEucHJpbWFyeUNvbHVtbnMubGVuZ3RoICtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uLmpvaW5Db2x1bW5zLmxlbmd0aFxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICByZWxhdGlvbklkTWFwcy5wdXNoKHJlbGF0aW9uSWRNYXApXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcblxuXG4gICAgICAgICAgICBpZiAocmVsYXRpb25JZE1hcHMubGVuZ3RoID09PSBlbnRpdGllcy5sZW5ndGgpXG4gICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShyZWxhdGlvbklkTWFwcylcbiAgICAgICAgfVxuXG5cbiAgICAgICAgY29uc3QgcWIgPSB0aGlzLmNvbm5lY3Rpb24uY3JlYXRlUXVlcnlCdWlsZGVyKClcbiAgICAgICAgcmVsYXRpb24uZW50aXR5TWV0YWRhdGEucHJpbWFyeUNvbHVtbnMuZm9yRWFjaCgocHJpbWFyeUNvbHVtbikgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29sdW1uTmFtZSA9IERyaXZlclV0aWxzLmJ1aWxkQWxpYXMoXG4gICAgICAgICAgICAgICAgdGhpcy5jb25uZWN0aW9uLmRyaXZlcixcbiAgICAgICAgICAgICAgICBwcmltYXJ5Q29sdW1uLmVudGl0eU1ldGFkYXRhLm5hbWUgK1xuICAgICAgICAgICAgICAgICAgICBcIl9cIiArXG4gICAgICAgICAgICAgICAgICAgIHByaW1hcnlDb2x1bW4ucHJvcGVydHlQYXRoLnJlcGxhY2UoXCIuXCIsIFwiX1wiKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIHFiLmFkZFNlbGVjdChcbiAgICAgICAgICAgICAgICBtYWluQWxpYXMgKyBcIi5cIiArIHByaW1hcnlDb2x1bW4ucHJvcGVydHlQYXRoLFxuICAgICAgICAgICAgICAgIGNvbHVtbk5hbWUsXG4gICAgICAgICAgICApXG4gICAgICAgIH0pXG4gICAgICAgIHJlbGF0aW9uLmpvaW5Db2x1bW5zLmZvckVhY2goKGNvbHVtbikgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29sdW1uTmFtZSA9IERyaXZlclV0aWxzLmJ1aWxkQWxpYXMoXG4gICAgICAgICAgICAgICAgdGhpcy5jb25uZWN0aW9uLmRyaXZlcixcbiAgICAgICAgICAgICAgICBjb2x1bW4ucmVmZXJlbmNlZENvbHVtbiEuZW50aXR5TWV0YWRhdGEubmFtZSArXG4gICAgICAgICAgICAgICAgICAgIFwiX1wiICtcbiAgICAgICAgICAgICAgICAgICAgcmVsYXRpb24ucHJvcGVydHlQYXRoLnJlcGxhY2UoXCIuXCIsIFwiX1wiKSArXG4gICAgICAgICAgICAgICAgICAgIFwiX1wiICtcbiAgICAgICAgICAgICAgICAgICAgY29sdW1uLnJlZmVyZW5jZWRDb2x1bW4hLnByb3BlcnR5UGF0aC5yZXBsYWNlKFwiLlwiLCBcIl9cIiksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBxYi5hZGRTZWxlY3QobWFpbkFsaWFzICsgXCIuXCIgKyBjb2x1bW4ucHJvcGVydHlQYXRoLCBjb2x1bW5OYW1lKVxuICAgICAgICB9KVxuXG5cbiAgICAgICAgbGV0IGNvbmRpdGlvbjogc3RyaW5nID0gXCJcIlxuICAgICAgICBpZiAocmVsYXRpb24uZW50aXR5TWV0YWRhdGEucHJpbWFyeUNvbHVtbnMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZXMgPSBlbnRpdGllcy5tYXAoKGVudGl0eSkgPT5cbiAgICAgICAgICAgICAgICByZWxhdGlvbi5lbnRpdHlNZXRhZGF0YS5wcmltYXJ5Q29sdW1uc1swXS5nZXRFbnRpdHlWYWx1ZShcbiAgICAgICAgICAgICAgICAgICAgZW50aXR5LFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBjb25zdCBhcmVBbGxOdW1iZXJzID0gdmFsdWVzLmV2ZXJ5KFxuICAgICAgICAgICAgICAgICh2YWx1ZSkgPT4gdHlwZW9mIHZhbHVlID09PSBcIm51bWJlclwiLFxuICAgICAgICAgICAgKVxuXG4gICAgICAgICAgICBpZiAoYXJlQWxsTnVtYmVycykge1xuICAgICAgICAgICAgICAgIGNvbmRpdGlvbiA9IGAke21haW5BbGlhc30uJHtcbiAgICAgICAgICAgICAgICAgICAgcmVsYXRpb24uZW50aXR5TWV0YWRhdGEucHJpbWFyeUNvbHVtbnNbMF0ucHJvcGVydHlQYXRoXG4gICAgICAgICAgICAgICAgfSBJTiAoJHt2YWx1ZXMuam9pbihcIiwgXCIpfSlgXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHFiLnNldFBhcmFtZXRlcihcInZhbHVlc1wiLCB2YWx1ZXMpXG4gICAgICAgICAgICAgICAgY29uZGl0aW9uID1cbiAgICAgICAgICAgICAgICAgICAgbWFpbkFsaWFzICtcbiAgICAgICAgICAgICAgICAgICAgXCIuXCIgK1xuICAgICAgICAgICAgICAgICAgICByZWxhdGlvbi5lbnRpdHlNZXRhZGF0YS5wcmltYXJ5Q29sdW1uc1swXS5wcm9wZXJ0eVBhdGggK1xuICAgICAgICAgICAgICAgICAgICBcIiBJTiAoOi4uLnZhbHVlcylcIiAvLyB0b2RvOiB1c2UgQU5ZIGZvciBwb3N0Z3Jlc1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgY29uZGl0aW9uID0gZW50aXRpZXNcbiAgICAgICAgICAgICAgICAubWFwKChlbnRpdHksIGVudGl0eUluZGV4KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiByZWxhdGlvbi5lbnRpdHlNZXRhZGF0YS5wcmltYXJ5Q29sdW1uc1xuICAgICAgICAgICAgICAgICAgICAgICAgLm1hcCgoY29sdW1uLCBjb2x1bW5JbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhcmFtTmFtZSA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiZW50aXR5XCIgKyBlbnRpdHlJbmRleCArIFwiX1wiICsgY29sdW1uSW5kZXhcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBxYi5zZXRQYXJhbWV0ZXIoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtTmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLmdldEVudGl0eVZhbHVlKGVudGl0eSksXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1haW5BbGlhcyArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiLlwiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29sdW1uLnByb3BlcnR5UGF0aCArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiID0gOlwiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1OYW1lXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIC5qb2luKFwiIEFORCBcIilcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgIC5tYXAoKGNvbmRpdGlvbikgPT4gXCIoXCIgKyBjb25kaXRpb24gKyBcIilcIilcbiAgICAgICAgICAgICAgICAuam9pbihcIiBPUiBcIilcbiAgICAgICAgfVxuXG5cbiAgICAgICAgcmV0dXJuIHFiXG4gICAgICAgICAgICAuZnJvbShyZWxhdGlvbi5lbnRpdHlNZXRhZGF0YS50YXJnZXQsIG1haW5BbGlhcylcbiAgICAgICAgICAgIC53aGVyZShjb25kaXRpb24pXG4gICAgICAgICAgICAuZ2V0UmF3TWFueSgpXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTG9hZHMgcmVsYXRpb24gaWRzIGZvciB0aGUgb25lLXRvLW1hbnkgYW5kIG9uZS10by1vbmUgbm90IG93bmVyIHJlbGF0aW9ucy5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgbG9hZEZvck9uZVRvTWFueUFuZE9uZVRvT25lTm90T3duZXIoXG4gICAgICAgIHJlbGF0aW9uOiBSZWxhdGlvbk1ldGFkYXRhLFxuICAgICAgICBlbnRpdGllczogT2JqZWN0TGl0ZXJhbFtdLFxuICAgICAgICByZWxhdGVkRW50aXRpZXM/OiBPYmplY3RMaXRlcmFsW10sXG4gICAgKSB7XG4gICAgICAgIHJlbGF0aW9uID0gcmVsYXRpb24uaW52ZXJzZVJlbGF0aW9uIVxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHJlbGF0aW9uLmVudGl0eU1ldGFkYXRhLnByaW1hcnlDb2x1bW5zLmxlbmd0aCA9PT1cbiAgICAgICAgICAgIHJlbGF0aW9uLmpvaW5Db2x1bW5zLmxlbmd0aFxuICAgICAgICApIHtcbiAgICAgICAgICAgIGNvbnN0IHNhbWVSZWZlcmVuY2VkQ29sdW1ucyA9XG4gICAgICAgICAgICAgICAgcmVsYXRpb24uZW50aXR5TWV0YWRhdGEucHJpbWFyeUNvbHVtbnMuZXZlcnkoKGNvbHVtbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gcmVsYXRpb24uam9pbkNvbHVtbnMuaW5kZXhPZihjb2x1bW4pICE9PSAtMVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICBpZiAoc2FtZVJlZmVyZW5jZWRDb2x1bW5zKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShcbiAgICAgICAgICAgICAgICAgICAgZW50aXRpZXMubWFwKChlbnRpdHkpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlc3VsdDogT2JqZWN0TGl0ZXJhbCA9IHt9XG4gICAgICAgICAgICAgICAgICAgICAgICByZWxhdGlvbi5qb2luQ29sdW1ucy5mb3JFYWNoKGZ1bmN0aW9uIChqb2luQ29sdW1uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqb2luQ29sdW1uLnJlZmVyZW5jZWRDb2x1bW4hLmdldEVudGl0eVZhbHVlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgam9pbkNvbHVtbk5hbWUgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqb2luQ29sdW1uLnJlZmVyZW5jZWRDb2x1bW4hLmVudGl0eU1ldGFkYXRhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAubmFtZSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiX1wiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgam9pbkNvbHVtbi5yZWZlcmVuY2VkQ29sdW1uIS5wcm9wZXJ0eVBhdGgucmVwbGFjZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiLlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJfXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwcmltYXJ5Q29sdW1uTmFtZSA9XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpvaW5Db2x1bW4uZW50aXR5TWV0YWRhdGEubmFtZSArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiX1wiICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRpb24uaW52ZXJzZVJlbGF0aW9uIS5wcm9wZXJ0eVBhdGgucmVwbGFjZShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFwiLlwiLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCJfXCIsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICkgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIl9cIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpvaW5Db2x1bW4ucHJvcGVydHlQYXRoLnJlcGxhY2UoXCIuXCIsIFwiX1wiKVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdFtqb2luQ29sdW1uTmFtZV0gPSB2YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdFtwcmltYXJ5Q29sdW1uTmFtZV0gPSB2YWx1ZVxuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiByZXN1bHRcbiAgICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgbWFpbkFsaWFzID0gcmVsYXRpb24uZW50aXR5TWV0YWRhdGEudGFyZ2V0TmFtZVxuXG5cbiAgICAgICAgY29uc3QgcWIgPSB0aGlzLmNvbm5lY3Rpb24uY3JlYXRlUXVlcnlCdWlsZGVyKClcbiAgICAgICAgcmVsYXRpb24uZW50aXR5TWV0YWRhdGEucHJpbWFyeUNvbHVtbnMuZm9yRWFjaCgocHJpbWFyeUNvbHVtbikgPT4ge1xuICAgICAgICAgICAgY29uc3QgY29sdW1uTmFtZSA9IERyaXZlclV0aWxzLmJ1aWxkQWxpYXMoXG4gICAgICAgICAgICAgICAgdGhpcy5jb25uZWN0aW9uLmRyaXZlcixcbiAgICAgICAgICAgICAgICBwcmltYXJ5Q29sdW1uLmVudGl0eU1ldGFkYXRhLm5hbWUgK1xuICAgICAgICAgICAgICAgICAgICBcIl9cIiArXG4gICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uLmludmVyc2VSZWxhdGlvbiEucHJvcGVydHlQYXRoLnJlcGxhY2UoXCIuXCIsIFwiX1wiKSArXG4gICAgICAgICAgICAgICAgICAgIFwiX1wiICtcbiAgICAgICAgICAgICAgICAgICAgcHJpbWFyeUNvbHVtbi5wcm9wZXJ0eVBhdGgucmVwbGFjZShcIi5cIiwgXCJfXCIpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgcWIuYWRkU2VsZWN0KFxuICAgICAgICAgICAgICAgIG1haW5BbGlhcyArIFwiLlwiICsgcHJpbWFyeUNvbHVtbi5wcm9wZXJ0eVBhdGgsXG4gICAgICAgICAgICAgICAgY29sdW1uTmFtZSxcbiAgICAgICAgICAgIClcbiAgICAgICAgfSlcbiAgICAgICAgcmVsYXRpb24uam9pbkNvbHVtbnMuZm9yRWFjaCgoY29sdW1uKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb2x1bW5OYW1lID0gRHJpdmVyVXRpbHMuYnVpbGRBbGlhcyhcbiAgICAgICAgICAgICAgICB0aGlzLmNvbm5lY3Rpb24uZHJpdmVyLFxuICAgICAgICAgICAgICAgIGNvbHVtbi5yZWZlcmVuY2VkQ29sdW1uIS5lbnRpdHlNZXRhZGF0YS5uYW1lICtcbiAgICAgICAgICAgICAgICAgICAgXCJfXCIgK1xuICAgICAgICAgICAgICAgICAgICBjb2x1bW4ucmVmZXJlbmNlZENvbHVtbiEucHJvcGVydHlQYXRoLnJlcGxhY2UoXCIuXCIsIFwiX1wiKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIHFiLmFkZFNlbGVjdChtYWluQWxpYXMgKyBcIi5cIiArIGNvbHVtbi5wcm9wZXJ0eVBhdGgsIGNvbHVtbk5hbWUpXG4gICAgICAgIH0pXG5cblxuICAgICAgICBsZXQgY29uZGl0aW9uOiBzdHJpbmcgPSBcIlwiXG4gICAgICAgIGlmIChyZWxhdGlvbi5qb2luQ29sdW1ucy5sZW5ndGggPT09IDEpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlcyA9IGVudGl0aWVzLm1hcCgoZW50aXR5KSA9PlxuICAgICAgICAgICAgICAgIHJlbGF0aW9uLmpvaW5Db2x1bW5zWzBdLnJlZmVyZW5jZWRDb2x1bW4hLmdldEVudGl0eVZhbHVlKFxuICAgICAgICAgICAgICAgICAgICBlbnRpdHksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIGNvbnN0IGFyZUFsbE51bWJlcnMgPSB2YWx1ZXMuZXZlcnkoXG4gICAgICAgICAgICAgICAgKHZhbHVlKSA9PiB0eXBlb2YgdmFsdWUgPT09IFwibnVtYmVyXCIsXG4gICAgICAgICAgICApXG5cbiAgICAgICAgICAgIGlmIChhcmVBbGxOdW1iZXJzKSB7XG4gICAgICAgICAgICAgICAgY29uZGl0aW9uID0gYCR7bWFpbkFsaWFzfS4ke1xuICAgICAgICAgICAgICAgICAgICByZWxhdGlvbi5qb2luQ29sdW1uc1swXS5wcm9wZXJ0eVBhdGhcbiAgICAgICAgICAgICAgICB9IElOICgke3ZhbHVlcy5qb2luKFwiLCBcIil9KWBcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcWIuc2V0UGFyYW1ldGVyKFwidmFsdWVzXCIsIHZhbHVlcylcbiAgICAgICAgICAgICAgICBjb25kaXRpb24gPVxuICAgICAgICAgICAgICAgICAgICBtYWluQWxpYXMgK1xuICAgICAgICAgICAgICAgICAgICBcIi5cIiArXG4gICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uLmpvaW5Db2x1bW5zWzBdLnByb3BlcnR5UGF0aCArXG4gICAgICAgICAgICAgICAgICAgIFwiIElOICg6Li4udmFsdWVzKVwiIC8vIHRvZG86IHVzZSBBTlkgZm9yIHBvc3RncmVzXG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBjb25kaXRpb24gPSBlbnRpdGllc1xuICAgICAgICAgICAgICAgIC5tYXAoKGVudGl0eSwgZW50aXR5SW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHJlbGF0aW9uLmpvaW5Db2x1bW5zXG4gICAgICAgICAgICAgICAgICAgICAgICAubWFwKChqb2luQ29sdW1uLCBqb2luQ29sdW1uSW5kZXgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBwYXJhbU5hbWUgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcImVudGl0eVwiICsgZW50aXR5SW5kZXggKyBcIl9cIiArIGpvaW5Db2x1bW5JbmRleFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHFiLnNldFBhcmFtZXRlcihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1OYW1lLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqb2luQ29sdW1uLnJlZmVyZW5jZWRDb2x1bW4hLmdldEVudGl0eVZhbHVlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZW50aXR5LFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtYWluQWxpYXMgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcIi5cIiArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpvaW5Db2x1bW4ucHJvcGVydHlQYXRoICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXCIgPSA6XCIgK1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbU5hbWVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAgICAgICAgICAgLmpvaW4oXCIgQU5EIFwiKVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgLm1hcCgoY29uZGl0aW9uKSA9PiBcIihcIiArIGNvbmRpdGlvbiArIFwiKVwiKVxuICAgICAgICAgICAgICAgIC5qb2luKFwiIE9SIFwiKVxuICAgICAgICB9XG5cblxuICAgICAgICByZXR1cm4gcWJcbiAgICAgICAgICAgIC5mcm9tKHJlbGF0aW9uLmVudGl0eU1ldGFkYXRhLnRhcmdldCwgbWFpbkFsaWFzKVxuICAgICAgICAgICAgLndoZXJlKGNvbmRpdGlvbilcbiAgICAgICAgICAgIC5nZXRSYXdNYW55KClcbiAgICB9XG59XG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10YW9uLXR5cGVvcm0gbGliL3R5cGVvcm0vcXVlcnktYnVpbGRlci9SZWxhdGlvbklkTG9hZGVyLnRzIl19