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,553 +0,0 @@
1
- import { OrmUtils } from "../util/OrmUtils";
2
- import { ApplyValueTransformers } from "../util/ApplyValueTransformers";
3
- import { ObjectUtils } from "../util/ObjectUtils";
4
- import { InstanceChecker } from "../util/InstanceChecker";
5
- /**
6
- * This metadata contains all information about entity's column.
7
- */
8
- export class ColumnMetadata {
9
- constructor(options) {
10
- this["@instanceof"] = Symbol.for("ColumnMetadata");
11
- /**
12
- * Type's length in the database.
13
- */
14
- this.length = "";
15
- /**
16
- * Indicates if this column is a primary key.
17
- */
18
- this.isPrimary = false;
19
- /**
20
- * Indicates if this column is generated (auto increment or generated other way).
21
- */
22
- this.isGenerated = false;
23
- /**
24
- * Indicates if column can contain nulls or not.
25
- */
26
- this.isNullable = false;
27
- /**
28
- * Indicates if column is selected by query builder or not.
29
- */
30
- this.isSelect = true;
31
- /**
32
- * Indicates if column is inserted by default or not.
33
- */
34
- this.isInsert = true;
35
- /**
36
- * Indicates if column allows updates or not.
37
- */
38
- this.isUpdate = true;
39
- /**
40
- * Puts ZEROFILL attribute on to numeric column. Works only for MySQL.
41
- * If you specify ZEROFILL for a numeric column, MySQL automatically adds the UNSIGNED attribute to the column
42
- */
43
- this.zerofill = false;
44
- /**
45
- * Puts UNSIGNED attribute on to numeric column. Works only for MySQL.
46
- */
47
- this.unsigned = false;
48
- /**
49
- * Indicates if this column is an array.
50
- */
51
- this.isArray = false;
52
- /**
53
- * Indicates if column is virtual. Virtual columns are not mapped to the entity.
54
- */
55
- this.isVirtual = false;
56
- /**
57
- * Indicates if column is a virtual property. Virtual properties are not mapped to the entity.
58
- * This property is used in tandem the virtual column decorator.
59
- * @See https://typeorm.io/decorator-reference#virtualcolumn for more details.
60
- */
61
- this.isVirtualProperty = false;
62
- /**
63
- * Indicates if column is discriminator. Discriminator columns are not mapped to the entity.
64
- */
65
- this.isDiscriminator = false;
66
- /**
67
- * Indicates if column is tree-level column. Tree-level columns are used in closure entities.
68
- */
69
- this.isTreeLevel = false;
70
- /**
71
- * Indicates if this column contains an entity creation date.
72
- */
73
- this.isCreateDate = false;
74
- /**
75
- * Indicates if this column contains an entity update date.
76
- */
77
- this.isUpdateDate = false;
78
- /**
79
- * Indicates if this column contains an entity delete date.
80
- */
81
- this.isDeleteDate = false;
82
- /**
83
- * Indicates if this column contains an entity version.
84
- */
85
- this.isVersion = false;
86
- /**
87
- * Indicates if this column contains an object id.
88
- */
89
- this.isObjectId = false;
90
- /**
91
- * Indicates if this column is nested set's left column.
92
- * Used only in tree entities with nested-set type.
93
- */
94
- this.isNestedSetLeft = false;
95
- /**
96
- * Indicates if this column is nested set's right column.
97
- * Used only in tree entities with nested-set type.
98
- */
99
- this.isNestedSetRight = false;
100
- /**
101
- * Indicates if this column is materialized path's path column.
102
- * Used only in tree entities with materialized path type.
103
- */
104
- this.isMaterializedPath = false;
105
- this.entityMetadata = options.entityMetadata;
106
- this.embeddedMetadata = options.embeddedMetadata;
107
- this.referencedColumn = options.referencedColumn;
108
- if (options.args.target)
109
- this.target = options.args.target;
110
- if (options.args.propertyName)
111
- this.propertyName = options.args.propertyName;
112
- if (options.args.options.name)
113
- this.givenDatabaseName = options.args.options.name;
114
- if (options.args.options.type)
115
- this.type = options.args.options.type;
116
- if (options.args.options.length)
117
- this.length = options.args.options.length
118
- ? options.args.options.length.toString()
119
- : "";
120
- if (options.args.options.width)
121
- this.width = options.args.options.width;
122
- if (options.args.options.charset)
123
- this.charset = options.args.options.charset;
124
- if (options.args.options.collation)
125
- this.collation = options.args.options.collation;
126
- if (options.args.options.primary)
127
- this.isPrimary = options.args.options.primary;
128
- if (options.args.options.default === null)
129
- this.isNullable = true;
130
- if (options.args.options.nullable !== undefined)
131
- this.isNullable = options.args.options.nullable;
132
- if (options.args.options.select !== undefined)
133
- this.isSelect = options.args.options.select;
134
- if (options.args.options.insert !== undefined)
135
- this.isInsert = options.args.options.insert;
136
- if (options.args.options.update !== undefined)
137
- this.isUpdate = options.args.options.update;
138
- if (options.args.options.readonly !== undefined)
139
- this.isUpdate = !options.args.options.readonly;
140
- if (options.args.options.comment)
141
- this.comment = options.args.options.comment;
142
- if (options.args.options.default !== undefined)
143
- this.default = options.args.options.default;
144
- if (options.args.options.onUpdate)
145
- this.onUpdate = options.args.options.onUpdate;
146
- if (options.args.options.generatedIdentity)
147
- this.generatedIdentity = options.args.options.generatedIdentity;
148
- if (options.args.options.scale !== null &&
149
- options.args.options.scale !== undefined)
150
- this.scale = options.args.options.scale;
151
- if (options.args.options.zerofill) {
152
- this.zerofill = options.args.options.zerofill;
153
- this.unsigned = true; // if you specify ZEROFILL for a numeric column, MySQL automatically adds the UNSIGNED attribute to the column
154
- }
155
- if (options.args.options.unsigned)
156
- this.unsigned = options.args.options.unsigned;
157
- if (options.args.options.precision !== null)
158
- this.precision = options.args.options.precision;
159
- if (options.args.options.enum) {
160
- if (ObjectUtils.isObject(options.args.options.enum) &&
161
- !Array.isArray(options.args.options.enum)) {
162
- this.enum = Object.keys(options.args.options.enum)
163
- .filter((key) => isNaN(+key) &&
164
- typeof options.args.options.enum[key] !== "function")
165
- .map((key) => options.args.options.enum[key]);
166
- }
167
- else {
168
- this.enum = options.args.options.enum;
169
- }
170
- }
171
- if (options.args.options.enumName) {
172
- this.enumName = options.args.options.enumName;
173
- }
174
- if (options.args.options.primaryKeyConstraintName) {
175
- this.primaryKeyConstraintName =
176
- options.args.options.primaryKeyConstraintName;
177
- }
178
- if (options.args.options.foreignKeyConstraintName) {
179
- this.foreignKeyConstraintName =
180
- options.args.options.foreignKeyConstraintName;
181
- }
182
- if (options.args.options.asExpression) {
183
- this.asExpression = options.args.options.asExpression;
184
- this.generatedType = options.args.options.generatedType
185
- ? options.args.options.generatedType
186
- : "VIRTUAL";
187
- }
188
- if (options.args.options.hstoreType)
189
- this.hstoreType = options.args.options.hstoreType;
190
- if (options.args.options.array)
191
- this.isArray = options.args.options.array;
192
- if (options.args.mode) {
193
- this.isVirtualProperty = options.args.mode === "virtual-property";
194
- this.isVirtual = options.args.mode === "virtual";
195
- this.isTreeLevel = options.args.mode === "treeLevel";
196
- this.isCreateDate = options.args.mode === "createDate";
197
- this.isUpdateDate = options.args.mode === "updateDate";
198
- this.isDeleteDate = options.args.mode === "deleteDate";
199
- this.isVersion = options.args.mode === "version";
200
- this.isObjectId = options.args.mode === "objectId";
201
- }
202
- if (this.isVirtualProperty) {
203
- this.isInsert = false;
204
- this.isUpdate = false;
205
- }
206
- if (options.args.options.transformer)
207
- this.transformer = options.args.options.transformer;
208
- if (options.args.options.spatialFeatureType)
209
- this.spatialFeatureType = options.args.options.spatialFeatureType;
210
- if (options.args.options.srid !== undefined)
211
- this.srid = options.args.options.srid;
212
- if (options.args.options.query)
213
- this.query = options.args.options.query;
214
- if (this.isTreeLevel)
215
- this.type = options.connection.driver.mappedDataTypes.treeLevel;
216
- if (this.isCreateDate) {
217
- if (!this.type)
218
- this.type = options.connection.driver.mappedDataTypes.createDate;
219
- if (!this.default)
220
- this.default = () => options.connection.driver.mappedDataTypes.createDateDefault;
221
- if (this.precision === undefined &&
222
- options.args.options.precision === undefined &&
223
- options.connection.driver.mappedDataTypes.createDatePrecision)
224
- this.precision =
225
- options.connection.driver.mappedDataTypes.createDatePrecision;
226
- }
227
- if (this.isUpdateDate) {
228
- if (!this.type)
229
- this.type = options.connection.driver.mappedDataTypes.updateDate;
230
- if (!this.default)
231
- this.default = () => options.connection.driver.mappedDataTypes.updateDateDefault;
232
- if (!this.onUpdate)
233
- this.onUpdate =
234
- options.connection.driver.mappedDataTypes.updateDateDefault;
235
- if (this.precision === undefined &&
236
- options.args.options.precision === undefined &&
237
- options.connection.driver.mappedDataTypes.updateDatePrecision)
238
- this.precision =
239
- options.connection.driver.mappedDataTypes.updateDatePrecision;
240
- }
241
- if (this.isDeleteDate) {
242
- if (!this.type)
243
- this.type = options.connection.driver.mappedDataTypes.deleteDate;
244
- if (!this.isNullable)
245
- this.isNullable =
246
- options.connection.driver.mappedDataTypes.deleteDateNullable;
247
- if (this.precision === undefined &&
248
- options.args.options.precision === undefined &&
249
- options.connection.driver.mappedDataTypes.deleteDatePrecision)
250
- this.precision =
251
- options.connection.driver.mappedDataTypes.deleteDatePrecision;
252
- }
253
- if (this.isVersion)
254
- this.type = options.connection.driver.mappedDataTypes.version;
255
- if (options.closureType)
256
- this.closureType = options.closureType;
257
- if (options.nestedSetLeft)
258
- this.isNestedSetLeft = options.nestedSetLeft;
259
- if (options.nestedSetRight)
260
- this.isNestedSetRight = options.nestedSetRight;
261
- if (options.materializedPath)
262
- this.isMaterializedPath = options.materializedPath;
263
- }
264
- /**
265
- * Creates entity id map from the given entity ids array.
266
- */
267
- createValueMap(value, useDatabaseName = false) {
268
- if (this.embeddedMetadata) {
269
- const propertyNames = [...this.embeddedMetadata.parentPropertyNames];
270
- const extractEmbeddedColumnValue = (propertyNames, map) => {
271
- const propertyName = propertyNames.shift();
272
- if (propertyName) {
273
- map[propertyName] = {};
274
- extractEmbeddedColumnValue(propertyNames, map[propertyName]);
275
- return map;
276
- }
277
- if ((this.generationStrategy === "increment" ||
278
- this.generationStrategy === "rowid") &&
279
- this.type === "bigint" &&
280
- value !== null)
281
- value = String(value);
282
- map[useDatabaseName ? this.databaseName : this.propertyName] =
283
- value;
284
- return map;
285
- };
286
- return extractEmbeddedColumnValue(propertyNames, {});
287
- }
288
- else {
289
- if ((this.generationStrategy === "increment" ||
290
- this.generationStrategy === "rowid") &&
291
- this.type === "bigint" &&
292
- value !== null)
293
- value = String(value);
294
- return {
295
- [useDatabaseName ? this.databaseName : this.propertyName]: value,
296
- };
297
- }
298
- }
299
- /**
300
- * Extracts column value and returns its column name with this value in a literal object.
301
- * If column is in embedded (or recursive embedded) it returns complex literal object.
302
- *
303
- * Examples what this method can return depend if this column is in embeds.
304
- * { id: 1 } or { title: "hello" }, { counters: { code: 1 } }, { data: { information: { counters: { code: 1 } } } }
305
- */
306
- getEntityValueMap(entity, options) {
307
- const returnNulls = false; // options && options.skipNulls === false ? false : true; // todo: remove if current will not bring problems, uncomment if it will.
308
- if (this.embeddedMetadata) {
309
- const propertyNames = [...this.embeddedMetadata.parentPropertyNames];
310
- const isEmbeddedArray = this.embeddedMetadata.isArray;
311
- const extractEmbeddedColumnValue = (propertyNames, value) => {
312
- if (value === undefined) {
313
- return {};
314
- }
315
- const propertyName = propertyNames.shift();
316
- if (propertyName) {
317
- const submap = extractEmbeddedColumnValue(propertyNames, value[propertyName]);
318
- if (Object.keys(submap).length > 0) {
319
- return { [propertyName]: submap };
320
- }
321
- return {};
322
- }
323
- if (isEmbeddedArray && Array.isArray(value)) {
324
- return value.map((v) => ({
325
- [this.propertyName]: v[this.propertyName],
326
- }));
327
- }
328
- if (value[this.propertyName] !== undefined &&
329
- (returnNulls === false || value[this.propertyName] !== null)) {
330
- return { [this.propertyName]: value[this.propertyName] };
331
- }
332
- return {};
333
- };
334
- const map = extractEmbeddedColumnValue(propertyNames, entity);
335
- return Object.keys(map).length > 0 ? map : undefined;
336
- }
337
- else {
338
- /**
339
- * Object.getOwnPropertyDescriptor checks if the relation is lazy, in which case value is a Promise
340
- * DO NOT use `entity[
341
- this.relationMetadata.propertyName] instanceof Promise`, which will invoke property getter and make unwanted DB request
342
- * refer: https://github.com/typeorm/typeorm/pull/8676#issuecomment-1049906331
343
- */
344
- if (this.relationMetadata &&
345
- !Object.getOwnPropertyDescriptor(entity, this.relationMetadata.propertyName)?.get &&
346
- entity[this.relationMetadata.propertyName] &&
347
- ObjectUtils.isObject(entity[this.relationMetadata.propertyName])) {
348
- const map = this.relationMetadata.joinColumns.reduce((map, joinColumn) => {
349
- const value = joinColumn.referencedColumn.getEntityValueMap(entity[this.relationMetadata.propertyName]);
350
- if (value === undefined)
351
- return map;
352
- return OrmUtils.mergeDeep(map, value);
353
- }, {});
354
- if (Object.keys(map).length > 0)
355
- return { [this.propertyName]: map };
356
- return undefined;
357
- }
358
- else {
359
- if (entity[this.propertyName] !== undefined &&
360
- (returnNulls === false ||
361
- entity[this.propertyName] !== null))
362
- return { [this.propertyName]: entity[this.propertyName] };
363
- return undefined;
364
- }
365
- }
366
- }
367
- /**
368
- * Extracts column value from the given entity.
369
- * If column is in embedded (or recursive embedded) it extracts its value from there.
370
- */
371
- getEntityValue(entity, transform = false) {
372
- if (entity === undefined || entity === null)
373
- return undefined;
374
- let value = undefined;
375
- if (this.embeddedMetadata) {
376
- const propertyNames = [...this.embeddedMetadata.parentPropertyNames];
377
- const isEmbeddedArray = this.embeddedMetadata.isArray;
378
- const extractEmbeddedColumnValue = (propertyNames, value) => {
379
- const propertyName = propertyNames.shift();
380
- return propertyName && value
381
- ? extractEmbeddedColumnValue(propertyNames, value[propertyName])
382
- : value;
383
- };
384
- const embeddedObject = extractEmbeddedColumnValue(propertyNames, entity);
385
- if (embeddedObject) {
386
- if (this.relationMetadata && this.referencedColumn) {
387
- const relatedEntity = this.relationMetadata.getEntityValue(embeddedObject);
388
- if (relatedEntity &&
389
- ObjectUtils.isObject(relatedEntity) &&
390
- !InstanceChecker.isFindOperator(relatedEntity)
391
- /* */
392
- /* */
393
- /* */
394
- ) {
395
- value =
396
- this.referencedColumn.getEntityValue(relatedEntity);
397
- }
398
- else if (embeddedObject[this.propertyName] &&
399
- ObjectUtils.isObject(embeddedObject[this.propertyName]) &&
400
- !InstanceChecker.isFindOperator(embeddedObject[this.propertyName])
401
- /* */
402
- /* */
403
- /* */
404
- &&
405
- !(embeddedObject[this.propertyName] instanceof Date)) {
406
- value = this.referencedColumn.getEntityValue(embeddedObject[this.propertyName]);
407
- }
408
- else {
409
- value = embeddedObject[this.propertyName];
410
- }
411
- }
412
- else if (this.referencedColumn) {
413
- value = this.referencedColumn.getEntityValue(embeddedObject[this.propertyName]);
414
- }
415
- else if (isEmbeddedArray && Array.isArray(embeddedObject)) {
416
- value = embeddedObject.map((o) => o[this.propertyName]);
417
- }
418
- else {
419
- value = embeddedObject[this.propertyName];
420
- }
421
- }
422
- }
423
- else {
424
- if (this.relationMetadata && this.referencedColumn) {
425
- const relatedEntity = this.relationMetadata.getEntityValue(entity);
426
- if (relatedEntity &&
427
- ObjectUtils.isObject(relatedEntity) &&
428
- !InstanceChecker.isFindOperator(relatedEntity) &&
429
- !(typeof relatedEntity === "function")
430
- /* */
431
- /* */
432
- /* */
433
- ) {
434
- value = this.referencedColumn.getEntityValue(relatedEntity);
435
- }
436
- else if (entity[this.propertyName] &&
437
- ObjectUtils.isObject(entity[this.propertyName]) &&
438
- !InstanceChecker.isFindOperator(entity[this.propertyName]) &&
439
- !(typeof entity[this.propertyName] === "function")
440
- /* */
441
- /* */
442
- /* */
443
- &&
444
- !(entity[this.propertyName] instanceof Date)) {
445
- value = this.referencedColumn.getEntityValue(entity[this.propertyName]);
446
- }
447
- else {
448
- value = entity[this.propertyName];
449
- }
450
- }
451
- else if (this.referencedColumn) {
452
- value = this.referencedColumn.getEntityValue(entity[this.propertyName]);
453
- }
454
- else {
455
- value = entity[this.propertyName];
456
- }
457
- }
458
- if (transform && this.transformer)
459
- value = ApplyValueTransformers.transformTo(this.transformer, value);
460
- return value;
461
- }
462
- /**
463
- * Sets given entity's column value.
464
- * Using of this method helps to set entity relation's value of the lazy and non-lazy relations.
465
- */
466
- setEntityValue(entity, value) {
467
- if (this.embeddedMetadata) {
468
- const extractEmbeddedColumnValue = (embeddedMetadatas, map) => {
469
- const embeddedMetadata = embeddedMetadatas.shift();
470
- if (embeddedMetadata) {
471
- if (!map[embeddedMetadata.propertyName])
472
- map[embeddedMetadata.propertyName] =
473
- embeddedMetadata.create();
474
- extractEmbeddedColumnValue(embeddedMetadatas, map[embeddedMetadata.propertyName]);
475
- return map;
476
- }
477
- map[this.propertyName] = value;
478
- return map;
479
- };
480
- return extractEmbeddedColumnValue([...this.embeddedMetadata.embeddedMetadataTree], entity);
481
- }
482
- else {
483
- if (!this.entityMetadata.isJunction &&
484
- this.isVirtual &&
485
- this.referencedColumn &&
486
- this.referencedColumn.propertyName !== this.propertyName) {
487
- if (!(this.propertyName in entity)) {
488
- entity[this.propertyName] = {};
489
- }
490
- entity[this.propertyName][this.referencedColumn.propertyName] =
491
- value;
492
- }
493
- else {
494
- entity[this.propertyName] = value;
495
- }
496
- }
497
- }
498
- /**
499
- * Compares given entity's column value with a given value.
500
- */
501
- compareEntityValue(entity, valueToCompareWith) {
502
- const columnValue = this.getEntityValue(entity);
503
- if (ObjectUtils.isObject(columnValue)) {
504
- return columnValue.equals(valueToCompareWith);
505
- }
506
- return columnValue === valueToCompareWith;
507
- }
508
- build(connection) {
509
- this.propertyPath = this.buildPropertyPath();
510
- this.propertyAliasName = this.propertyPath.replace(".", "_");
511
- this.databaseName = this.buildDatabaseName(connection);
512
- this.databasePath = this.buildDatabasePath();
513
- this.databaseNameWithoutPrefixes = connection.namingStrategy.columnName(this.propertyName, this.givenDatabaseName, []);
514
- return this;
515
- }
516
- buildPropertyPath() {
517
- let path = "";
518
- if (this.embeddedMetadata &&
519
- this.embeddedMetadata.parentPropertyNames.length)
520
- path = this.embeddedMetadata.parentPropertyNames.join(".") + ".";
521
- path += this.propertyName;
522
- if (!this.entityMetadata.isJunction &&
523
- this.isVirtual &&
524
- this.referencedColumn &&
525
- this.referencedColumn.propertyName !== this.propertyName)
526
- path += "." + this.referencedColumn.propertyName;
527
- return path;
528
- }
529
- buildDatabasePath() {
530
- let path = "";
531
- if (this.embeddedMetadata &&
532
- this.embeddedMetadata.parentPropertyNames.length)
533
- path = this.embeddedMetadata.parentPropertyNames.join(".") + ".";
534
- path += this.databaseName;
535
- if (!this.entityMetadata.isJunction &&
536
- this.isVirtual &&
537
- this.referencedColumn &&
538
- this.referencedColumn.databaseName !== this.databaseName)
539
- path += "." + this.referencedColumn.databaseName;
540
- return path;
541
- }
542
- buildDatabaseName(connection) {
543
- let propertyNames = this.embeddedMetadata
544
- ? this.embeddedMetadata.parentPrefixes
545
- : [];
546
- if (connection.driver.options.type === "mongodb")
547
- propertyNames = [];
548
- return connection.namingStrategy.columnName(this.propertyName, this.givenDatabaseName, propertyNames);
549
- }
550
- }
551
- ;
552
- ({}); // @--end-of-file-for-module=taon-typeorm lib/typeorm/metadata/ColumnMetadata.ts
553
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29sdW1uTWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC90YW9uLXR5cGVvcm0vcHJvamVjdHMvdGFvbi10eXBlb3JtL3NyYy9saWIvdHlwZW9ybS9tZXRhZGF0YS9Db2x1bW5NZXRhZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFFM0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sZ0NBQWdDLENBQUE7QUFDdkUsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ2pELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQTtBQUd6RDs7R0FFRztBQUNILE1BQU0sT0FBTyxjQUFjO0lBNlV2QixZQUFZLE9BVVg7UUF0VlEsbUJBQWEsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUE7UUF5Q3JEOztXQUVHO1FBQ0gsV0FBTSxHQUFXLEVBQUUsQ0FBQTtRQWlCbkI7O1dBRUc7UUFDSCxjQUFTLEdBQVksS0FBSyxDQUFBO1FBRTFCOztXQUVHO1FBQ0gsZ0JBQVcsR0FBWSxLQUFLLENBQUE7UUFFNUI7O1dBRUc7UUFDSCxlQUFVLEdBQVksS0FBSyxDQUFBO1FBRTNCOztXQUVHO1FBQ0gsYUFBUSxHQUFZLElBQUksQ0FBQTtRQUV4Qjs7V0FFRztRQUNILGFBQVEsR0FBWSxJQUFJLENBQUE7UUFFeEI7O1dBRUc7UUFDSCxhQUFRLEdBQVksSUFBSSxDQUFBO1FBK0N4Qjs7O1dBR0c7UUFDSCxhQUFRLEdBQVksS0FBSyxDQUFBO1FBRXpCOztXQUVHO1FBQ0gsYUFBUSxHQUFZLEtBQUssQ0FBQTtRQStCekI7O1dBRUc7UUFDSCxZQUFPLEdBQVksS0FBSyxDQUFBO1FBdUN4Qjs7V0FFRztRQUNILGNBQVMsR0FBWSxLQUFLLENBQUE7UUFF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bXBvcnQgeyBDb2x1bW5UeXBlIH0gZnJvbSBcIi4uL2RyaXZlci90eXBlcy9Db2x1bW5UeXBlc1wiXG5pbXBvcnQgeyBFbnRpdHlNZXRhZGF0YSB9IGZyb20gXCIuL0VudGl0eU1ldGFkYXRhXCJcbmltcG9ydCB7IEVtYmVkZGVkTWV0YWRhdGEgfSBmcm9tIFwiLi9FbWJlZGRlZE1ldGFkYXRhXCJcbmltcG9ydCB7IFJlbGF0aW9uTWV0YWRhdGEgfSBmcm9tIFwiLi9SZWxhdGlvbk1ldGFkYXRhXCJcbmltcG9ydCB7IE9iamVjdExpdGVyYWwgfSBmcm9tIFwiLi4vY29tbW9uL09iamVjdExpdGVyYWxcIlxuaW1wb3J0IHsgQ29sdW1uTWV0YWRhdGFBcmdzIH0gZnJvbSBcIi4uL21ldGFkYXRhLWFyZ3MvQ29sdW1uTWV0YWRhdGFBcmdzXCJcbmltcG9ydCB7IERhdGFTb3VyY2UgfSBmcm9tIFwiLi4vZGF0YS1zb3VyY2UvRGF0YVNvdXJjZVwiXG5pbXBvcnQgeyBPcm1VdGlscyB9IGZyb20gXCIuLi91dGlsL09ybVV0aWxzXCJcbmltcG9ydCB7IFZhbHVlVHJhbnNmb3JtZXIgfSBmcm9tIFwiLi4vZGVjb3JhdG9yL29wdGlvbnMvVmFsdWVUcmFuc2Zvcm1lclwiXG5pbXBvcnQgeyBBcHBseVZhbHVlVHJhbnNmb3JtZXJzIH0gZnJvbSBcIi4uL3V0aWwvQXBwbHlWYWx1ZVRyYW5zZm9ybWVyc1wiXG5pbXBvcnQgeyBPYmplY3RVdGlscyB9IGZyb20gXCIuLi91dGlsL09iamVjdFV0aWxzXCJcbmltcG9ydCB7IEluc3RhbmNlQ2hlY2tlciB9IGZyb20gXCIuLi91dGlsL0luc3RhbmNlQ2hlY2tlclwiXG5pbXBvcnQgeyBWaXJ0dWFsQ29sdW1uT3B0aW9ucyB9IGZyb20gXCIuLi9kZWNvcmF0b3Ivb3B0aW9ucy9WaXJ0dWFsQ29sdW1uT3B0aW9uc1wiXG5cbi8qKlxuICogVGhpcyBtZXRhZGF0YSBjb250YWlucyBhbGwgaW5mb3JtYXRpb24gYWJvdXQgZW50aXR5J3MgY29sdW1uLlxuICovXG5leHBvcnQgY2xhc3MgQ29sdW1uTWV0YWRhdGEge1xuICAgIHJlYWRvbmx5IFwiQGluc3RhbmNlb2ZcIiA9IFN5bWJvbC5mb3IoXCJDb2x1bW5NZXRhZGF0YVwiKVxuXG5cblxuXG5cbiAgICAvKipcbiAgICAgKiBUYXJnZXQgY2xhc3Mgd2hlcmUgY29sdW1uIGRlY29yYXRvciBpcyB1c2VkLlxuICAgICAqIFRoaXMgbWF5IG5vdCBiZSBhbHdheXMgZXF1YWwgdG8gZW50aXR5IG1ldGFkYXRhIChmb3IgZXhhbXBsZSBlbWJlZHMgb3IgaW5oZXJpdGFuY2UgY2FzZXMpLlxuICAgICAqL1xuICAgIHRhcmdldDogRnVuY3Rpb24gfCBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIEVudGl0eSBtZXRhZGF0YSB3aGVyZSB0aGlzIGNvbHVtbiBtZXRhZGF0YSBpcy5cbiAgICAgKlxuICAgICAqIEZvciBleGFtcGxlIGZvciBAQ29sdW1uKCkgbmFtZTogc3RyaW5nIGluIFBvc3QsIGVudGl0eU1ldGFkYXRhIHdpbGwgYmUgbWV0YWRhdGEgb2YgUG9zdCBlbnRpdHkuXG4gICAgICovXG4gICAgZW50aXR5TWV0YWRhdGE6IEVudGl0eU1ldGFkYXRhXG5cbiAgICAvKipcbiAgICAgKiBFbWJlZGRlZCBtZXRhZGF0YSB3aGVyZSB0aGlzIGNvbHVtbiBtZXRhZGF0YSBpcy5cbiAgICAgKiBJZiB0aGlzIGNvbHVtbiBpcyBub3QgaW4gZW1iZWQgdGhlbiB0aGlzIHByb3BlcnR5IHZhbHVlIGlzIHVuZGVmaW5lZC5cbiAgICAgKi9cbiAgICBlbWJlZGRlZE1ldGFkYXRhPzogRW1iZWRkZWRNZXRhZGF0YVxuXG4gICAgLyoqXG4gICAgICogSWYgY29sdW1uIGlzIGEgZm9yZWlnbiBrZXkgb2Ygc29tZSByZWxhdGlvbiB0aGVuIHRoaXMgcmVsYXRpb24ncyBtZXRhZGF0YSB3aWxsIGJlIHRoZXJlLlxuICAgICAqIElmIHRoaXMgY29sdW1uIGRvZXMgbm90IGhhdmUgYSBmb3JlaWduIGtleSB0aGVuIHRoaXMgcHJvcGVydHkgdmFsdWUgaXMgdW5kZWZpbmVkLlxuICAgICAqL1xuICAgIHJlbGF0aW9uTWV0YWRhdGE/OiBSZWxhdGlvbk1ldGFkYXRhXG5cbiAgICAvKipcbiAgICAgKiBDbGFzcydzIHByb3BlcnR5IG5hbWUgb24gd2hpY2ggdGhpcyBjb2x1bW4gaXMgYXBwbGllZC5cbiAgICAgKi9cbiAgICBwcm9wZXJ0eU5hbWU6IHN0cmluZ1xuXG4gICAgLyoqXG4gICAgICogVGhlIGRhdGFiYXNlIHR5cGUgb2YgdGhlIGNvbHVtbi5cbiAgICAgKi9cbiAgICB0eXBlOiBDb2x1bW5UeXBlXG5cbiAgICAvKipcbiAgICAgKiBUeXBlJ3MgbGVuZ3RoIGluIHRoZSBkYXRhYmFzZS5cbiAgICAgKi9cbiAgICBsZW5ndGg6IHN0cmluZyA9IFwiXCJcblxuICAgIC8qKlxuICAgICAqIFR5cGUncyBkaXNwbGF5IHdpZHRoIGluIHRoZSBkYXRhYmFzZS5cbiAgICAgKi9cbiAgICB3aWR0aD86IG51bWJlclxuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyBjb2x1bW4gY2hhcmFjdGVyIHNldC5cbiAgICAgKi9cbiAgICBjaGFyc2V0Pzogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmVzIGNvbHVtbiBjb2xsYXRpb24uXG4gICAgICovXG4gICAgY29sbGF0aW9uPzogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgaWYgdGhpcyBjb2x1bW4gaXMgYSBwcmltYXJ5IGtleS5cbiAgICAgKi9cbiAgICBpc1ByaW1hcnk6IGJvb2xlYW4gPSBmYWxzZVxuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIHRoaXMgY29sdW1uIGlzIGdlbmVyYXRlZCAoYXV0byBpbmNyZW1lbnQgb3IgZ2VuZXJhdGVkIG90aGVyIHdheSkuXG4gICAgICovXG4gICAgaXNHZW5lcmF0ZWQ6IGJvb2xlYW4gPSBmYWxzZVxuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIGNvbHVtbiBjYW4gY29udGFpbiBudWxscyBvciBub3QuXG4gICAgICovXG4gICAgaXNOdWxsYWJsZTogYm9vbGVhbiA9IGZhbHNlXG5cbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgaWYgY29sdW1uIGlzIHNlbGVjdGVkIGJ5IHF1ZXJ5IGJ1aWxkZXIgb3Igbm90LlxuICAgICAqL1xuICAgIGlzU2VsZWN0OiBib29sZWFuID0gdHJ1ZVxuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIGNvbHVtbiBpcyBpbnNlcnRlZCBieSBkZWZhdWx0IG9yIG5vdC5cbiAgICAgKi9cbiAgICBpc0luc2VydDogYm9vbGVhbiA9IHRydWVcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyBpZiBjb2x1bW4gYWxsb3dzIHVwZGF0ZXMgb3Igbm90LlxuICAgICAqL1xuICAgIGlzVXBkYXRlOiBib29sZWFuID0gdHJ1ZVxuXG4gICAgLyoqXG4gICAgICogU3BlY2lmaWVzIGdlbmVyYXRpb24gc3RyYXRlZ3kgaWYgdGhpcyBjb2x1bW4gd2lsbCB1c2UgYXV0byBpbmNyZW1lbnQuXG4gICAgICovXG4gICAgZ2VuZXJhdGlvblN0cmF0ZWd5PzogXCJ1dWlkXCIgfCBcImluY3JlbWVudFwiIHwgXCJyb3dpZFwiXG5cbiAgICAvKipcbiAgICAgKiBJZGVudGl0eSBjb2x1bW4gdHlwZS4gU3VwcG9ydHMgb25seSBpbiBQb3N0Z3JlcyAxMCsuXG4gICAgICovXG4gICAgZ2VuZXJhdGVkSWRlbnRpdHk/OiBcIkFMV0FZU1wiIHwgXCJCWSBERUZBVUxUXCJcblxuICAgIC8qKlxuICAgICAqIENvbHVtbiBjb21tZW50LlxuICAgICAqIFRoaXMgZmVhdHVyZSBpcyBub3Qgc3VwcG9ydGVkIGJ5IGFsbCBkYXRhYmFzZXMuXG4gICAgICovXG4gICAgY29tbWVudD86IHN0cmluZ1xuXG4gICAgLyoqXG4gICAgICogRGVmYXVsdCBkYXRhYmFzZSB2YWx1ZS5cbiAgICAgKi9cbiAgICBkZWZhdWx0PzpcbiAgICAgICAgfCBudW1iZXJcbiAgICAgICAgfCBib29sZWFuXG4gICAgICAgIHwgc3RyaW5nXG4gICAgICAgIHwgbnVsbFxuICAgICAgICB8IChudW1iZXIgfCBib29sZWFuIHwgc3RyaW5nKVtdXG4gICAgICAgIHwgUmVjb3JkPHN0cmluZywgb2JqZWN0PlxuICAgICAgICB8ICgoKSA9PiBzdHJpbmcpXG5cbiAgICAvKipcbiAgICAgKiBPTiBVUERBVEUgdHJpZ2dlci4gV29ya3Mgb25seSBmb3IgTXlTUUwuXG4gICAgICovXG4gICAgb25VcGRhdGU/OiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIFRoZSBwcmVjaXNpb24gZm9yIGEgZGVjaW1hbCAoZXhhY3QgbnVtZXJpYykgY29sdW1uIChhcHBsaWVzIG9ubHkgZm9yIGRlY2ltYWwgY29sdW1uKSxcbiAgICAgKiB3aGljaCBpcyB0aGUgbWF4aW11bSBudW1iZXIgb2YgZGlnaXRzIHRoYXQgYXJlIHN0b3JlZCBmb3IgdGhlIHZhbHVlcy5cbiAgICAgKi9cbiAgICBwcmVjaXNpb24/OiBudW1iZXIgfCBudWxsXG5cbiAgICAvKipcbiAgICAgKiBUaGUgc2NhbGUgZm9yIGEgZGVjaW1hbCAoZXhhY3QgbnVtZXJpYykgY29sdW1uIChhcHBsaWVzIG9ubHkgZm9yIGRlY2ltYWwgY29sdW1uKSxcbiAgICAgKiB3aGljaCByZXByZXNlbnRzIHRoZSBudW1iZXIgb2YgZGlnaXRzIHRvIHRoZSByaWdodCBvZiB0aGUgZGVjaW1hbCBwb2ludCBhbmQgbXVzdCBub3QgYmUgZ3JlYXRlciB0aGFuIHByZWNpc2lvbi5cbiAgICAgKi9cbiAgICBzY2FsZT86IG51bWJlclxuXG4gICAgLyoqXG4gICAgICogUHV0cyBaRVJPRklMTCBhdHRyaWJ1dGUgb24gdG8gbnVtZXJpYyBjb2x1bW4uIFdvcmtzIG9ubHkgZm9yIE15U1FMLlxuICAgICAqIElmIHlvdSBzcGVjaWZ5IFpFUk9GSUxMIGZvciBhIG51bWVyaWMgY29sdW1uLCBNeVNRTCBhdXRvbWF0aWNhbGx5IGFkZHMgdGhlIFVOU0lHTkVEIGF0dHJpYnV0ZSB0byB0aGUgY29sdW1uXG4gICAgICovXG4gICAgemVyb2ZpbGw6IGJvb2xlYW4gPSBmYWxzZVxuXG4gICAgLyoqXG4gICAgICogUHV0cyBVTlNJR05FRCBhdHRyaWJ1dGUgb24gdG8gbnVtZXJpYyBjb2x1bW4uIFdvcmtzIG9ubHkgZm9yIE15U1FMLlxuICAgICAqL1xuICAgIHVuc2lnbmVkOiBib29sZWFuID0gZmFsc2VcblxuICAgIC8qKlxuICAgICAqIEFycmF5IG9mIHBvc3NpYmxlIGVudW1lcmF0ZWQgdmFsdWVzLlxuICAgICAqXG4gICAgICogYHBvc3RncmVzYCBhbmQgYG15c3FsYCBzdG9yZSBlbnVtIHZhbHVlcyBhcyBzdHJpbmdzIGJ1dCB3ZSB3YW50IHRvIGtlZXAgc3VwcG9ydFxuICAgICAqIGZvciBudW1lcmljIGFuZCBoZXRlcm9nZW5lb3VzIGJhc2VkIHR5cGVzY3JpcHQgZW51bXMsIHNvIHdlIG5lZWQgKHN0cmluZ3xudW1iZXIpW11cbiAgICAgKi9cbiAgICBlbnVtPzogKHN0cmluZyB8IG51bWJlcilbXVxuXG4gICAgLyoqXG4gICAgICogRXhhY3QgbmFtZSBvZiBlbnVtXG4gICAgICovXG4gICAgZW51bU5hbWU/OiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIEdlbmVyYXRlZCBjb2x1bW4gZXhwcmVzc2lvbi5cbiAgICAgKi9cbiAgICBhc0V4cHJlc3Npb24/OiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIEdlbmVyYXRlZCBjb2x1bW4gdHlwZS5cbiAgICAgKi9cbiAgICBnZW5lcmF0ZWRUeXBlPzogXCJWSVJUVUFMXCIgfCBcIlNUT1JFRFwiXG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm4gdHlwZSBvZiBIU1RPUkUgY29sdW1uLlxuICAgICAqIFJldHVybnMgdmFsdWUgYXMgc3RyaW5nIG9yIGFzIG9iamVjdC5cbiAgICAgKi9cbiAgICBoc3RvcmVUeXBlPzogXCJvYmplY3RcIiB8IFwic3RyaW5nXCJcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyBpZiB0aGlzIGNvbHVtbiBpcyBhbiBhcnJheS5cbiAgICAgKi9cbiAgICBpc0FycmF5OiBib29sZWFuID0gZmFsc2VcblxuICAgIC8qKlxuICAgICAqIEdldHMgZnVsbCBwYXRoIHRvIHRoaXMgY29sdW1uIHByb3BlcnR5IChpbmNsdWRpbmcgY29sdW1uIHByb3BlcnR5IG5hbWUpLlxuICAgICAqIEZ1bGwgcGF0aCBpcyByZWxldmFudCB3aGVuIGNvbHVtbiBpcyB1c2VkIGluIGVtYmVkcyAob25lIG9yIG11bHRpcGxlIG5lc3RlZCkuXG4gICAgICogRm9yIGV4YW1wbGUgaXQgd2lsbCByZXR1cm4gXCJjb3VudGVycy5zdWJjb3VudGVycy5saWtlc1wiLlxuICAgICAqIElmIHByb3BlcnR5IGlzIG5vdCBpbiBlbWJlZHMgdGhlbiBpdCByZXR1cm5zIGp1c3QgcHJvcGVydHkgbmFtZSBvZiB0aGUgY29sdW1uLlxuICAgICAqL1xuICAgIHByb3BlcnR5UGF0aDogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBTYW1lIGFzIHByb3BlcnR5IHBhdGgsIGJ1dCBkb3RzIGFyZSByZXBsYWNlZCB3aXRoICdfJy5cbiAgICAgKiBVc2VkIGluIHF1ZXJ5IGJ1aWxkZXIgc3RhdGVtZW50cy5cbiAgICAgKi9cbiAgICBwcm9wZXJ0eUFsaWFzTmFtZTogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIGZ1bGwgcGF0aCB0byB0aGlzIGNvbHVtbiBkYXRhYmFzZSBuYW1lIChpbmNsdWRpbmcgY29sdW1uIGRhdGFiYXNlIG5hbWUpLlxuICAgICAqIEZ1bGwgcGF0aCBpcyByZWxldmFudCB3aGVuIGNvbHVtbiBpcyB1c2VkIGluIGVtYmVkcyAob25lIG9yIG11bHRpcGxlIG5lc3RlZCkuXG4gICAgICogRm9yIGV4YW1wbGUgaXQgd2lsbCByZXR1cm4gXCJjb3VudGVycy5zdWJjb3VudGVycy5saWtlc1wiLlxuICAgICAqIElmIHByb3BlcnR5IGlzIG5vdCBpbiBlbWJlZHMgdGhlbiBpdCByZXR1cm5zIGp1c3QgZGF0YWJhc2UgbmFtZSBvZiB0aGUgY29sdW1uLlxuICAgICAqL1xuICAgIGRhdGFiYXNlUGF0aDogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBDb21wbGV0ZSBjb2x1bW4gbmFtZSBpbiB0aGUgZGF0YWJhc2UgaW5jbHVkaW5nIGl0cyBlbWJlZGRlZCBwcmVmaXhlcy5cbiAgICAgKi9cbiAgICBkYXRhYmFzZU5hbWU6IHN0cmluZ1xuXG4gICAgLyoqXG4gICAgICogRGF0YWJhc2UgbmFtZSBpbiB0aGUgZGF0YWJhc2Ugd2l0aG91dCBlbWJlZGRlZCBwcmVmaXhlcyBhcHBsaWVkLlxuICAgICAqL1xuICAgIGRhdGFiYXNlTmFtZVdpdGhvdXRQcmVmaXhlczogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBEYXRhYmFzZSBuYW1lIHNldCBieSBlbnRpdHkgbWV0YWRhdGEgYnVpbGRlciwgbm90IHlldCBwYXNzZWQgbmFtaW5nIHN0cmF0ZWd5IHByb2Nlc3MgYW5kIHdpdGhvdXQgZW1iZWRkZWQgcHJlZml4ZXMuXG4gICAgICovXG4gICAgZ2l2ZW5EYXRhYmFzZU5hbWU/OiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyBpZiBjb2x1bW4gaXMgdmlydHVhbC4gVmlydHVhbCBjb2x1bW5zIGFyZSBub3QgbWFwcGVkIHRvIHRoZSBlbnRpdHkuXG4gICAgICovXG4gICAgaXNWaXJ0dWFsOiBib29sZWFuID0gZmFsc2VcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyBpZiBjb2x1bW4gaXMgYSB2aXJ0dWFsIHByb3BlcnR5LiBWaXJ0dWFsIHByb3BlcnRpZXMgYXJlIG5vdCBtYXBwZWQgdG8gdGhlIGVudGl0eS5cbiAgICAgKiBUaGlzIHByb3BlcnR5IGlzIHVzZWQgaW4gdGFuZGVtIHRoZSB2aXJ0dWFsIGNvbHVtbiBkZWNvcmF0b3IuXG4gICAgICogQFNlZSBodHRwczovL3R5cGVvcm0uaW8vZGVjb3JhdG9yLXJlZmVyZW5jZSN2aXJ0dWFsY29sdW1uIGZvciBtb3JlIGRldGFpbHMuXG4gICAgICovXG4gICAgaXNWaXJ0dWFsUHJvcGVydHk6IGJvb2xlYW4gPSBmYWxzZVxuXG4gICAgLyoqXG4gICAgICogUXVlcnkgdG8gYmUgdXNlZCB0byBwb3B1bGF0ZSB0aGUgY29sdW1uIGRhdGEuIFRoaXMgcXVlcnkgaXMgdXNlZCB3aGVuIGdlbmVyYXRpbmcgdGhlIHJlbGF0aW9uYWwgZGIgc2NyaXB0LlxuICAgICAqIFRoZSBxdWVyeSBmdW5jdGlvbiBpcyBjYWxsZWQgd2l0aCB0aGUgY3VycmVudCBlbnRpdGllcyBhbGlhcyBlaXRoZXIgZGVmaW5lZCBieSB0aGUgRW50aXR5IERlY29yYXRvciBvciBhdXRvbWF0aWNhbGx5XG4gICAgICogQFNlZSBodHRwczovL3R5cGVvcm0uaW8vZGVjb3JhdG9yLXJlZmVyZW5jZSN2aXJ0dWFsY29sdW1uIGZvciBtb3JlIGRldGFpbHMuXG4gICAgICovXG4gICAgcXVlcnk/OiAoYWxpYXM6IHN0cmluZykgPT4gc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgaWYgY29sdW1uIGlzIGRpc2NyaW1pbmF0b3IuIERpc2NyaW1pbmF0b3IgY29sdW1ucyBhcmUgbm90IG1hcHBlZCB0byB0aGUgZW50aXR5LlxuICAgICAqL1xuICAgIGlzRGlzY3JpbWluYXRvcjogYm9vbGVhbiA9IGZhbHNlXG5cbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgaWYgY29sdW1uIGlzIHRyZWUtbGV2ZWwgY29sdW1uLiBUcmVlLWxldmVsIGNvbHVtbnMgYXJlIHVzZWQgaW4gY2xvc3VyZSBlbnRpdGllcy5cbiAgICAgKi9cbiAgICBpc1RyZWVMZXZlbDogYm9vbGVhbiA9IGZhbHNlXG5cbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgaWYgdGhpcyBjb2x1bW4gY29udGFpbnMgYW4gZW50aXR5IGNyZWF0aW9uIGRhdGUuXG4gICAgICovXG4gICAgaXNDcmVhdGVEYXRlOiBib29sZWFuID0gZmFsc2VcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyBpZiB0aGlzIGNvbHVtbiBjb250YWlucyBhbiBlbnRpdHkgdXBkYXRlIGRhdGUuXG4gICAgICovXG4gICAgaXNVcGRhdGVEYXRlOiBib29sZWFuID0gZmFsc2VcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyBpZiB0aGlzIGNvbHVtbiBjb250YWlucyBhbiBlbnRpdHkgZGVsZXRlIGRhdGUuXG4gICAgICovXG4gICAgaXNEZWxldGVEYXRlOiBib29sZWFuID0gZmFsc2VcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyBpZiB0aGlzIGNvbHVtbiBjb250YWlucyBhbiBlbnRpdHkgdmVyc2lvbi5cbiAgICAgKi9cbiAgICBpc1ZlcnNpb246IGJvb2xlYW4gPSBmYWxzZVxuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIHRoaXMgY29sdW1uIGNvbnRhaW5zIGFuIG9iamVjdCBpZC5cbiAgICAgKi9cbiAgICBpc09iamVjdElkOiBib29sZWFuID0gZmFsc2VcblxuICAgIC8qKlxuICAgICAqIElmIHRoaXMgY29sdW1uIGlzIGZvcmVpZ24ga2V5IHRoZW4gaXQgcmVmZXJlbmNlcyBzb21lIG90aGVyIGNvbHVtbixcbiAgICAgKiBhbmQgdGhpcyBwcm9wZXJ0eSB3aWxsIGNvbnRhaW4gcmVmZXJlbmNlIHRvIHRoaXMgY29sdW1uLlxuICAgICAqL1xuICAgIHJlZmVyZW5jZWRDb2x1bW46IENvbHVtbk1ldGFkYXRhIHwgdW5kZWZpbmVkXG5cbiAgICAvKipcbiAgICAgKiBJZiB0aGlzIGNvbHVtbiBpcyBwcmltYXJ5IGtleSB0aGVuIHRoaXMgc3BlY2lmaWVzIHRoZSBuYW1lIGZvciBpdC5cbiAgICAgKi9cbiAgICBwcmltYXJ5S2V5Q29uc3RyYWludE5hbWU/OiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIElmIHRoaXMgY29sdW1uIGlzIGZvcmVpZ24ga2V5IHRoZW4gdGhpcyBzcGVjaWZpZXMgdGhlIG5hbWUgZm9yIGl0LlxuICAgICAqL1xuICAgIGZvcmVpZ25LZXlDb25zdHJhaW50TmFtZT86IHN0cmluZ1xuXG4gICAgLyoqXG4gICAgICogU3BlY2lmaWVzIGEgdmFsdWUgdHJhbnNmb3JtZXIgdGhhdCBpcyB0byBiZSB1c2VkIHRvICh1biltYXJzaGFsXG4gICAgICogdGhpcyBjb2x1bW4gd2hlbiByZWFkaW5nIG9yIHdyaXRpbmcgdG8gdGhlIGRhdGFiYXNlLlxuICAgICAqL1xuICAgIHRyYW5zZm9ybWVyPzogVmFsdWVUcmFuc2Zvcm1lciB8IFZhbHVlVHJhbnNmb3JtZXJbXVxuXG4gICAgLyoqXG4gICAgICogQ29sdW1uIHR5cGUgaW4gdGhlIGNhc2UgaWYgdGhpcyBjb2x1bW4gaXMgaW4gdGhlIGNsb3N1cmUgdGFibGUuXG4gICAgICogQ29sdW1uIGNhbiBiZSBhbmNlc3RvciBvciBkZXNjZW5kYW50IGluIHRoZSBjbG9zdXJlIHRhYmxlcy5cbiAgICAgKi9cbiAgICBjbG9zdXJlVHlwZT86IFwiYW5jZXN0b3JcIiB8IFwiZGVzY2VuZGFudFwiXG5cbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgaWYgdGhpcyBjb2x1bW4gaXMgbmVzdGVkIHNldCdzIGxlZnQgY29sdW1uLlxuICAgICAqIFVzZWQgb25seSBpbiB0cmVlIGVudGl0aWVzIHdpdGggbmVzdGVkLXNldCB0eXBlLlxuICAgICAqL1xuICAgIGlzTmVzdGVkU2V0TGVmdDogYm9vbGVhbiA9IGZhbHNlXG5cbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgaWYgdGhpcyBjb2x1bW4gaXMgbmVzdGVkIHNldCdzIHJpZ2h0IGNvbHVtbi5cbiAgICAgKiBVc2VkIG9ubHkgaW4gdHJlZSBlbnRpdGllcyB3aXRoIG5lc3RlZC1zZXQgdHlwZS5cbiAgICAgKi9cbiAgICBpc05lc3RlZFNldFJpZ2h0OiBib29sZWFuID0gZmFsc2VcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyBpZiB0aGlzIGNvbHVtbiBpcyBtYXRlcmlhbGl6ZWQgcGF0aCdzIHBhdGggY29sdW1uLlxuICAgICAqIFVzZWQgb25seSBpbiB0cmVlIGVudGl0aWVzIHdpdGggbWF0ZXJpYWxpemVkIHBhdGggdHlwZS5cbiAgICAgKi9cbiAgICBpc01hdGVyaWFsaXplZFBhdGg6IGJvb2xlYW4gPSBmYWxzZVxuXG4gICAgLyoqXG4gICAgICogU3BhdGlhbCBGZWF0dXJlIFR5cGUgKEdlb21ldHJ5LCBQb2ludCwgUG9seWdvbiwgZXRjLilcbiAgICAgKi9cbiAgICBzcGF0aWFsRmVhdHVyZVR5cGU/OiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIFNSSUQgKFNwYXRpYWwgUmVmZXJlbmNlIElEIChFUFNHIGNvZGUpKVxuICAgICAqL1xuICAgIHNyaWQ/OiBudW1iZXJcblxuXG5cblxuXG4gICAgY29uc3RydWN0b3Iob3B0aW9uczoge1xuICAgICAgICBjb25uZWN0aW9uOiBEYXRhU291cmNlXG4gICAgICAgIGVudGl0eU1ldGFkYXRhOiBFbnRpdHlNZXRhZGF0YVxuICAgICAgICBlbWJlZGRlZE1ldGFkYXRhPzogRW1iZWRkZWRNZXRhZGF0YVxuICAgICAgICByZWZlcmVuY2VkQ29sdW1uPzogQ29sdW1uTWV0YWRhdGFcbiAgICAgICAgYXJnczogQ29sdW1uTWV0YWRhdGFBcmdzXG4gICAgICAgIGNsb3N1cmVUeXBlPzogXCJhbmNlc3RvclwiIHwgXCJkZXNjZW5kYW50XCJcbiAgICAgICAgbmVzdGVkU2V0TGVmdD86IGJvb2xlYW5cbiAgICAgICAgbmVzdGVkU2V0UmlnaHQ/OiBib29sZWFuXG4gICAgICAgIG1hdGVyaWFsaXplZFBhdGg/OiBib29sZWFuXG4gICAgfSkge1xuICAgICAgICB0aGlzLmVudGl0eU1ldGFkYXRhID0gb3B0aW9ucy5lbnRpdHlNZXRhZGF0YVxuICAgICAgICB0aGlzLmVtYmVkZGVkTWV0YWRhdGEgPSBvcHRpb25zLmVtYmVkZGVkTWV0YWRhdGEhXG4gICAgICAgIHRoaXMucmVmZXJlbmNlZENvbHVtbiA9IG9wdGlvbnMucmVmZXJlbmNlZENvbHVtblxuICAgICAgICBpZiAob3B0aW9ucy5hcmdzLnRhcmdldCkgdGhpcy50YXJnZXQgPSBvcHRpb25zLmFyZ3MudGFyZ2V0XG4gICAgICAgIGlmIChvcHRpb25zLmFyZ3MucHJvcGVydHlOYW1lKVxuICAgICAgICAgICAgdGhpcy5wcm9wZXJ0eU5hbWUgPSBvcHRpb25zLmFyZ3MucHJvcGVydHlOYW1lXG4gICAgICAgIGlmIChvcHRpb25zLmFyZ3Mub3B0aW9ucy5uYW1lKVxuICAgICAgICAgICAgdGhpcy5naXZlbkRhdGFiYXNlTmFtZSA9IG9wdGlvbnMuYXJncy5vcHRpb25zLm5hbWVcbiAgICAgICAgaWYgKG9wdGlvbnMuYXJncy5vcHRpb25zLnR5cGUpIHRoaXMudHlwZSA9IG9wdGlvbnMuYXJncy5vcHRpb25zLnR5cGVcbiAgICAgICAgaWYgKG9wdGlvbnMuYXJncy5vcHRpb25zLmxlbmd0aClcbiAgICAgICAgICAgIHRoaXMubGVuZ3RoID0gb3B0aW9ucy5hcmdzLm9wdGlvbnMubGVuZ3RoXG4gICAgICAgICAgICAgICAgPyBvcHRpb25zLmFyZ3Mub3B0aW9ucy5sZW5ndGgudG9TdHJpbmcoKVxuICAgICAgICAgICAgICAgIDogXCJcIlxuICAgICAgICBpZiAob3B0aW9ucy5hcmdzLm9wdGlvbnMud2lkdGgpIHRoaXMud2lkdGggPSBvcHRpb25zLmFyZ3Mub3B0aW9ucy53aWR0aFxuICAgICAgICBpZiAob3B0aW9ucy5hcmdzLm9wdGlvbnMuY2hhcnNldClcbiAgICAgICAgICAgIHRoaXMuY2hhcnNldCA9IG9wdGlvbnMuYXJncy5vcHRpb25zLmNoYXJzZXRcbiAgICAgICAgaWYgKG9wdGlvbnMuYXJncy5vcHRpb25zLmNvbGxhdGlvbilcbiAgICAgICAgICAgIHRoaXMuY29sbGF0aW9uID0gb3B0aW9ucy5hcmdzLm9wdGlvbnMuY29sbGF0aW9uXG4gICAgICAgIGlmIChvcHRpb25zLmFyZ3Mub3B0aW9ucy5wcmltYXJ5KVxuICAgICAgICAgICAgdGhpcy5pc1ByaW1hcnkgPSBvcHRpb25zLmFyZ3Mub3B0aW9ucy5wcmltYXJ5XG4gICAgICAgIGlmIChvcHRpb25zLmFyZ3Mub3B0aW9ucy5kZWZhdWx0ID09PSBudWxsKVxuXG4gICAgICAgICAgICB0aGlzLmlzTnVsbGFibGUgPSB0cnVlXG4gICAgICAgIGlmIChvcHRpb25zLmFyZ3Mub3B0aW9ucy5udWxsYWJsZSAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgdGhpcy5pc051bGxhYmxlID0gb3B0aW9ucy5hcmdzLm9wdGlvbnMubnVsbGFibGVcbiAgICAgICAgaWYgKG9wdGlvbnMuYXJncy5vcHRpb25zLnNlbGVjdCAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgdGhpcy5pc1NlbGVjdCA9IG9wdGlvbnMuYXJncy5vcHRpb25zLnNlbGVjdFxuICAgICAgICBpZiAob3B0aW9ucy5hcmdzLm9wdGlvbnMuaW5zZXJ0ICE9PSB1bmRlZmluZWQpXG4gICAgICAgICAgICB0aGlzLmlzSW5zZXJ0ID0gb3B0aW9ucy5hcmdzLm9wdGlvbnMuaW5zZXJ0XG4gICAgICAgIGlmIChvcHRpb25zLmFyZ3Mub3B0aW9ucy51cGRhdGUgIT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgIHRoaXMuaXNVcGRhdGUgPSBvcHRpb25zLmFyZ3Mub3B0aW9ucy51cGRhdGVcbiAgICAgICAgaWYgKG9wdGlvbnMuYXJncy5vcHRpb25zLnJlYWRvbmx5ICE9PSB1bmRlZmluZWQpXG4gICAgICAgICAgICB0aGlzLmlzVXBkYXRlID0gIW9wdGlvbnMuYXJncy5vcHRpb25zLnJlYWRvbmx5XG4gICAgICAgIGlmIChvcHRpb25zLmFyZ3Mub3B0aW9ucy5jb21tZW50KVxuICAgICAgICAgICAgdGhpcy5jb21tZW50ID0gb3B0aW9ucy5hcmdzLm9wdGlvbnMuY29tbWVudFxuICAgICAgICBpZiAob3B0aW9ucy5hcmdzLm9wdGlvbnMuZGVmYXVsdCAhPT0gdW5kZWZpbmVkKVxuICAgICAgICAgICAgdGhpcy5kZWZhdWx0ID0gb3B0aW9ucy5hcmdzLm9wdGlvbnMuZGVmYXVsdFxuICAgICAgICBpZiAob3B0aW9ucy5hcmdzLm9wdGlvbnMub25VcGRhdGUpXG4gICAgICAgICAgICB0aGlzLm9uVXBkYXRlID0gb3B0aW9ucy5hcmdzLm9wdGlvbnMub25VcGRhdGVcbiAgICAgICAgaWYgKG9wdGlvbnMuYXJncy5vcHRpb25zLmdlbmVyYXRlZElkZW50aXR5KVxuICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRJZGVudGl0eSA9IG9wdGlvbnMuYXJncy5vcHRpb25zLmdlbmVyYXRlZElkZW50aXR5XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIG9wdGlvbnMuYXJncy5vcHRpb25zLnNjYWxlICE9PSBudWxsICYmXG4gICAgICAgICAgICBvcHRpb25zLmFyZ3Mub3B0aW9ucy5zY2FsZSAhPT0gdW5kZWZpbmVkXG4gICAgICAgIClcbiAgICAgICAgICAgIHRoaXMuc2NhbGUgPSBvcHRpb25zLmFyZ3Mub3B0aW9ucy5zY2FsZVxuICAgICAgICBpZiAob3B0aW9ucy5hcmdzLm9wdGlvbnMuemVyb2ZpbGwpIHtcbiAgICAgICAgICAgIHRoaXMuemVyb2ZpbGwgPSBvcHRpb25zLmFyZ3Mub3B0aW9ucy56ZXJvZmlsbFxuICAgICAgICAgICAgdGhpcy51bnNpZ25lZCA9IHRydWUgLy8gaWYgeW91IHNwZWNpZnkgWkVST0ZJTEwgZm9yIGEgbnVtZXJpYyBjb2x1bW4sIE15U1FMIGF1dG9tYXRpY2FsbHkgYWRkcyB0aGUgVU5TSUdORUQgYXR0cmlidXRlIHRvIHRoZSBjb2x1bW5cbiAgICAgICAgfVxuICAgICAgICBpZiAob3B0aW9ucy5hcmdzLm9wdGlvbnMudW5zaWduZWQpXG4gICAgICAgICAgICB0aGlzLnVuc2lnbmVkID0gb3B0aW9ucy5hcmdzLm9wdGlvbnMudW5zaWduZWRcbiAgICAgICAgaWYgKG9wdGlvbnMuYXJncy5vcHRpb25zLnByZWNpc2lvbiAhPT0gbnVsbClcbiAgICAgICAgICAgIHRoaXMucHJlY2lzaW9uID0gb3B0aW9ucy5hcmdzLm9wdGlvbnMucHJlY2lzaW9uXG4gICAgICAgIGlmIChvcHRpb25zLmFyZ3Mub3B0aW9ucy5lbnVtKSB7XG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgT2JqZWN0VXRpbHMuaXNPYmplY3Qob3B0aW9ucy5hcmdzLm9wdGlvbnMuZW51bSkgJiZcbiAgICAgICAgICAgICAgICAhQXJyYXkuaXNBcnJheShvcHRpb25zLmFyZ3Mub3B0aW9ucy5lbnVtKVxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5lbnVtID0gT2JqZWN0LmtleXMob3B0aW9ucy5hcmdzLm9wdGlvbnMuZW51bSlcblxuXG5cblxuXG5cblxuICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKFxuICAgICAgICAgICAgICAgICAgICAgICAgKGtleSkgPT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpc05hTigra2V5KSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVvZiAob3B0aW9ucy5hcmdzLm9wdGlvbnMuZW51bSBhcyBPYmplY3RMaXRlcmFsKVtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAga2V5XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgXSAhPT0gXCJmdW5jdGlvblwiLFxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgICAgIC5tYXAoXG4gICAgICAgICAgICAgICAgICAgICAgICAoa2V5KSA9PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIChvcHRpb25zLmFyZ3Mub3B0aW9ucy5lbnVtIGFzIE9iamVjdExpdGVyYWwpW2tleV0sXG4gICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5lbnVtID0gb3B0aW9ucy5hcmdzLm9wdGlvbnMuZW51bVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmIChvcHRpb25zLmFyZ3Mub3B0aW9ucy5lbnVtTmFtZSkge1xuICAgICAgICAgICAgdGhpcy5lbnVtTmFtZSA9IG9wdGlvbnMuYXJncy5vcHRpb25zLmVudW1OYW1lXG4gICAgICAgIH1cbiAgICAgICAgaWYgKG9wdGlvbnMuYXJncy5vcHRpb25zLnByaW1hcnlLZXlDb25zdHJhaW50TmFtZSkge1xuICAgICAgICAgICAgdGhpcy5wcmltYXJ5S2V5Q29uc3RyYWludE5hbWUgPVxuICAgICAgICAgICAgICAgIG9wdGlvbnMuYXJncy5vcHRpb25zLnByaW1hcnlLZXlDb25zdHJhaW50TmFtZVxuICAgICAgICB9XG4gICAgICAgIGlmIChvcHRpb25zLmFyZ3Mub3B0aW9ucy5mb3JlaWduS2V5Q29uc3RyYWludE5hbWUpIHtcbiAgICAgICAgICAgIHRoaXMuZm9yZWlnbktleUNvbnN0cmFpbnROYW1lID1cbiAgICAgICAgICAgICAgICBvcHRpb25zLmFyZ3Mub3B0aW9ucy5mb3JlaWduS2V5Q29uc3RyYWludE5hbWVcbiAgICAgICAgfVxuICAgICAgICBpZiAob3B0aW9ucy5hcmdzLm9wdGlvbnMuYXNFeHByZXNzaW9uKSB7XG4gICAgICAgICAgICB0aGlzLmFzRXhwcmVzc2lvbiA9IG9wdGlvbnMuYXJncy5vcHRpb25zLmFzRXhwcmVzc2lvblxuICAgICAgICAgICAgdGhpcy5nZW5lcmF0ZWRUeXBlID0gb3B0aW9ucy5hcmdzLm9wdGlvbnMuZ2VuZXJhdGVkVHlwZVxuICAgICAgICAgICAgICAgID8gb3B0aW9ucy5hcmdzLm9wdGlvbnMuZ2VuZXJhdGVkVHlwZVxuICAgICAgICAgICAgICAgIDogXCJWSVJUVUFMXCJcbiAgICAgICAgfVxuICAgICAgICBpZiAob3B0aW9ucy5hcmdzLm9wdGlvbnMuaHN0b3JlVHlwZSlcbiAgICAgICAgICAgIHRoaXMuaHN0b3JlVHlwZSA9IG9wdGlvbnMuYXJncy5vcHRpb25zLmhzdG9yZVR5cGVcbiAgICAgICAgaWYgKG9wdGlvbnMuYXJncy5vcHRpb25zLmFycmF5KVxuICAgICAgICAgICAgdGhpcy5pc0FycmF5ID0gb3B0aW9ucy5hcmdzLm9wdGlvbnMuYXJyYXlcbiAgICAgICAgaWYgKG9wdGlvbnMuYXJncy5tb2RlKSB7XG4gICAgICAgICAgICB0aGlzLmlzVmlydHVhbFByb3BlcnR5ID0gb3B0aW9ucy5hcmdzLm1vZGUgPT09IFwidmlydHVhbC1wcm9wZXJ0eVwiXG4gICAgICAgICAgICB0aGlzLmlzVmlydHVhbCA9IG9wdGlvbnMuYXJncy5tb2RlID09PSBcInZpcnR1YWxcIlxuICAgICAgICAgICAgdGhpcy5pc1RyZWVMZXZlbCA9IG9wdGlvbnMuYXJncy5tb2RlID09PSBcInRyZWVMZXZlbFwiXG4gICAgICAgICAgICB0aGlzLmlzQ3JlYXRlRGF0ZSA9IG9wdGlvbnMuYXJncy5tb2RlID09PSBcImNyZWF0ZURhdGVcIlxuICAgICAgICAgICAgdGhpcy5pc1VwZGF0ZURhdGUgPSBvcHRpb25zLmFyZ3MubW9kZSA9PT0gXCJ1cGRhdGVEYXRlXCJcbiAgICAgICAgICAgIHRoaXMuaXNEZWxldGVEYXRlID0gb3B0aW9ucy5hcmdzLm1vZGUgPT09IFwiZGVsZXRlRGF0ZVwiXG4gICAgICAgICAgICB0aGlzLmlzVmVyc2lvbiA9IG9wdGlvbnMuYXJncy5tb2RlID09PSBcInZlcnNpb25cIlxuICAgICAgICAgICAgdGhpcy5pc09iamVjdElkID0gb3B0aW9ucy5hcmdzLm1vZGUgPT09IFwib2JqZWN0SWRcIlxuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmlzVmlydHVhbFByb3BlcnR5KSB7XG4gICAgICAgICAgICB0aGlzLmlzSW5zZXJ0ID0gZmFsc2VcbiAgICAgICAgICAgIHRoaXMuaXNVcGRhdGUgPSBmYWxzZVxuICAgICAgICB9XG4gICAgICAgIGlmIChvcHRpb25zLmFyZ3Mub3B0aW9ucy50cmFuc2Zvcm1lcilcbiAgICAgICAgICAgIHRoaXMudHJhbnNmb3JtZXIgPSBvcHRpb25zLmFyZ3Mub3B0aW9ucy50cmFuc2Zvcm1lclxuICAgICAgICBpZiAob3B0aW9ucy5hcmdzLm9wdGlvbnMuc3BhdGlhbEZlYXR1cmVUeXBlKVxuICAgICAgICAgICAgdGhpcy5zcGF0aWFsRmVhdHVyZVR5cGUgPSBvcHRpb25zLmFyZ3Mub3B0aW9ucy5zcGF0aWFsRmVhdHVyZVR5cGVcbiAgICAgICAgaWYgKG9wdGlvbnMuYXJncy5vcHRpb25zLnNyaWQgIT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgIHRoaXMuc3JpZCA9IG9wdGlvbnMuYXJncy5vcHRpb25zLnNyaWRcbiAgICAgICAgaWYgKChvcHRpb25zLmFyZ3Mub3B0aW9ucyBhcyBWaXJ0dWFsQ29sdW1uT3B0aW9ucykucXVlcnkpXG4gICAgICAgICAgICB0aGlzLnF1ZXJ5ID0gKG9wdGlvbnMuYXJncy5vcHRpb25zIGFzIFZpcnR1YWxDb2x1bW5PcHRpb25zKS5xdWVyeVxuICAgICAgICBpZiAodGhpcy5pc1RyZWVMZXZlbClcbiAgICAgICAgICAgIHRoaXMudHlwZSA9IG9wdGlvbnMuY29ubmVjdGlvbi5kcml2ZXIubWFwcGVkRGF0YVR5cGVzLnRyZWVMZXZlbFxuICAgICAgICBpZiAodGhpcy5pc0NyZWF0ZURhdGUpIHtcbiAgICAgICAgICAgIGlmICghdGhpcy50eXBlKVxuICAgICAgICAgICAgICAgIHRoaXMudHlwZSA9IG9wdGlvbnMuY29ubmVjdGlvbi5kcml2ZXIubWFwcGVkRGF0YVR5cGVzLmNyZWF0ZURhdGVcbiAgICAgICAgICAgIGlmICghdGhpcy5kZWZhdWx0KVxuICAgICAgICAgICAgICAgIHRoaXMuZGVmYXVsdCA9ICgpID0+XG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbnMuY29ubmVjdGlvbi5kcml2ZXIubWFwcGVkRGF0YVR5cGVzLmNyZWF0ZURhdGVEZWZhdWx0XG5cbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICB0aGlzLnByZWNpc2lvbiA9PT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICAgICAgb3B0aW9ucy5hcmdzLm9wdGlvbnMucHJlY2lzaW9uID09PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgICAgICBvcHRpb25zLmNvbm5lY3Rpb24uZHJpdmVyLm1hcHBlZERhdGFUeXBlcy5jcmVhdGVEYXRlUHJlY2lzaW9uXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgdGhpcy5wcmVjaXNpb24gPVxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmNvbm5lY3Rpb24uZHJpdmVyLm1hcHBlZERhdGFUeXBlcy5jcmVhdGVEYXRlUHJlY2lzaW9uXG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuaXNVcGRhdGVEYXRlKSB7XG4gICAgICAgICAgICBpZiAoIXRoaXMudHlwZSlcbiAgICAgICAgICAgICAgICB0aGlzLnR5cGUgPSBvcHRpb25zLmNvbm5lY3Rpb24uZHJpdmVyLm1hcHBlZERhdGFUeXBlcy51cGRhdGVEYXRlXG4gICAgICAgICAgICBpZiAoIXRoaXMuZGVmYXVsdClcbiAgICAgICAgICAgICAgICB0aGlzLmRlZmF1bHQgPSAoKSA9PlxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmNvbm5lY3Rpb24uZHJpdmVyLm1hcHBlZERhdGFUeXBlcy51cGRhdGVEYXRlRGVmYXVsdFxuICAgICAgICAgICAgaWYgKCF0aGlzLm9uVXBkYXRlKVxuICAgICAgICAgICAgICAgIHRoaXMub25VcGRhdGUgPVxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmNvbm5lY3Rpb24uZHJpdmVyLm1hcHBlZERhdGFUeXBlcy51cGRhdGVEYXRlRGVmYXVsdFxuXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgdGhpcy5wcmVjaXNpb24gPT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgICAgIG9wdGlvbnMuYXJncy5vcHRpb25zLnByZWNpc2lvbiA9PT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICAgICAgb3B0aW9ucy5jb25uZWN0aW9uLmRyaXZlci5tYXBwZWREYXRhVHlwZXMudXBkYXRlRGF0ZVByZWNpc2lvblxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIHRoaXMucHJlY2lzaW9uID1cbiAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5jb25uZWN0aW9uLmRyaXZlci5tYXBwZWREYXRhVHlwZXMudXBkYXRlRGF0ZVByZWNpc2lvblxuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLmlzRGVsZXRlRGF0ZSkge1xuICAgICAgICAgICAgaWYgKCF0aGlzLnR5cGUpXG4gICAgICAgICAgICAgICAgdGhpcy50eXBlID0gb3B0aW9ucy5jb25uZWN0aW9uLmRyaXZlci5tYXBwZWREYXRhVHlwZXMuZGVsZXRlRGF0ZVxuICAgICAgICAgICAgaWYgKCF0aGlzLmlzTnVsbGFibGUpXG4gICAgICAgICAgICAgICAgdGhpcy5pc051bGxhYmxlID1cbiAgICAgICAgICAgICAgICAgICAgb3B0aW9ucy5jb25uZWN0aW9uLmRyaXZlci5tYXBwZWREYXRhVHlwZXMuZGVsZXRlRGF0ZU51bGxhYmxlXG5cbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICB0aGlzLnByZWNpc2lvbiA9PT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICAgICAgb3B0aW9ucy5hcmdzLm9wdGlvbnMucHJlY2lzaW9uID09PSB1bmRlZmluZWQgJiZcbiAgICAgICAgICAgICAgICBvcHRpb25zLmNvbm5lY3Rpb24uZHJpdmVyLm1hcHBlZERhdGFUeXBlcy5kZWxldGVEYXRlUHJlY2lzaW9uXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgdGhpcy5wcmVjaXNpb24gPVxuICAgICAgICAgICAgICAgICAgICBvcHRpb25zLmNvbm5lY3Rpb24uZHJpdmVyLm1hcHBlZERhdGFUeXBlcy5kZWxldGVEYXRlUHJlY2lzaW9uXG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuaXNWZXJzaW9uKVxuICAgICAgICAgICAgdGhpcy50eXBlID0gb3B0aW9ucy5jb25uZWN0aW9uLmRyaXZlci5tYXBwZWREYXRhVHlwZXMudmVyc2lvblxuICAgICAgICBpZiAob3B0aW9ucy5jbG9zdXJlVHlwZSkgdGhpcy5jbG9zdXJlVHlwZSA9IG9wdGlvbnMuY2xvc3VyZVR5cGVcbiAgICAgICAgaWYgKG9wdGlvbnMubmVzdGVkU2V0TGVmdCkgdGhpcy5pc05lc3RlZFNldExlZnQgPSBvcHRpb25zLm5lc3RlZFNldExlZnRcbiAgICAgICAgaWYgKG9wdGlvbnMubmVzdGVkU2V0UmlnaHQpXG4gICAgICAgICAgICB0aGlzLmlzTmVzdGVkU2V0UmlnaHQgPSBvcHRpb25zLm5lc3RlZFNldFJpZ2h0XG4gICAgICAgIGlmIChvcHRpb25zLm1hdGVyaWFsaXplZFBhdGgpXG4gICAgICAgICAgICB0aGlzLmlzTWF0ZXJpYWxpemVkUGF0aCA9IG9wdGlvbnMubWF0ZXJpYWxpemVkUGF0aFxuICAgIH1cblxuXG5cblxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBlbnRpdHkgaWQgbWFwIGZyb20gdGhlIGdpdmVuIGVudGl0eSBpZHMgYXJyYXkuXG4gICAgICovXG4gICAgY3JlYXRlVmFsdWVNYXAodmFsdWU6IGFueSwgdXNlRGF0YWJhc2VOYW1lID0gZmFsc2UpIHtcblxuICAgICAgICBpZiAodGhpcy5lbWJlZGRlZE1ldGFkYXRhKSB7XG5cblxuXG5cblxuICAgICAgICAgICAgY29uc3QgcHJvcGVydHlOYW1lcyA9IFsuLi50aGlzLmVtYmVkZGVkTWV0YWRhdGEucGFyZW50UHJvcGVydHlOYW1lc11cblxuXG5cblxuXG5cbiAgICAgICAgICAgIGNvbnN0IGV4dHJhY3RFbWJlZGRlZENvbHVtblZhbHVlID0gKFxuICAgICAgICAgICAgICAgIHByb3BlcnR5TmFtZXM6IHN0cmluZ1tdLFxuICAgICAgICAgICAgICAgIG1hcDogT2JqZWN0TGl0ZXJhbCxcbiAgICAgICAgICAgICk6IGFueSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcHJvcGVydHlOYW1lID0gcHJvcGVydHlOYW1lcy5zaGlmdCgpXG4gICAgICAgICAgICAgICAgaWYgKHByb3BlcnR5TmFtZSkge1xuICAgICAgICAgICAgICAgICAgICBtYXBbcHJvcGVydHlOYW1lXSA9IHt9XG4gICAgICAgICAgICAgICAgICAgIGV4dHJhY3RFbWJlZGRlZENvbHVtblZhbHVlKHByb3BlcnR5TmFtZXMsIG1hcFtwcm9wZXJ0eU5hbWVdKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbWFwXG4gICAgICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgICh0aGlzLmdlbmVyYXRpb25TdHJhdGVneSA9PT0gXCJpbmNyZW1lbnRcIiB8fFxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5nZW5lcmF0aW9uU3RyYXRlZ3kgPT09IFwicm93aWRcIikgJiZcbiAgICAgICAgICAgICAgICAgICAgdGhpcy50eXBlID09PSBcImJpZ2ludFwiICYmXG4gICAgICAgICAgICAgICAgICAgIHZhbHVlICE9PSBudWxsXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IFN0cmluZyh2YWx1ZSlcblxuICAgICAgICAgICAgICAgIG1hcFt1c2VEYXRhYmFzZU5hbWUgPyB0aGlzLmRhdGFiYXNlTmFtZSA6IHRoaXMucHJvcGVydHlOYW1lXSA9XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlXG4gICAgICAgICAgICAgICAgcmV0dXJuIG1hcFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGV4dHJhY3RFbWJlZGRlZENvbHVtblZhbHVlKHByb3BlcnR5TmFtZXMsIHt9KVxuICAgICAgICB9IGVsc2Uge1xuXG5cblxuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICh0aGlzLmdlbmVyYXRpb25TdHJhdGVneSA9PT0gXCJpbmNyZW1lbnRcIiB8fFxuICAgICAgICAgICAgICAgICAgICB0aGlzLmdlbmVyYXRpb25TdHJhdGVneSA9PT0gXCJyb3dpZFwiKSAmJlxuICAgICAgICAgICAgICAgIHRoaXMudHlwZSA9PT0gXCJiaWdpbnRcIiAmJlxuICAgICAgICAgICAgICAgIHZhbHVlICE9PSBudWxsXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgdmFsdWUgPSBTdHJpbmcodmFsdWUpXG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgW3VzZURhdGFiYXNlTmFtZSA/IHRoaXMuZGF0YWJhc2VOYW1lIDogdGhpcy5wcm9wZXJ0eU5hbWVdOlxuICAgICAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEV4dHJhY3RzIGNvbHVtbiB2YWx1ZSBhbmQgcmV0dXJucyBpdHMgY29sdW1uIG5hbWUgd2l0aCB0aGlzIHZhbHVlIGluIGEgbGl0ZXJhbCBvYmplY3QuXG4gICAgICogSWYgY29sdW1uIGlzIGluIGVtYmVkZGVkIChvciByZWN1cnNpdmUgZW1iZWRkZWQpIGl0IHJldHVybnMgY29tcGxleCBsaXRlcmFsIG9iamVjdC5cbiAgICAgKlxuICAgICAqIEV4YW1wbGVzIHdoYXQgdGhpcyBtZXRob2QgY2FuIHJldHVybiBkZXBlbmQgaWYgdGhpcyBjb2x1bW4gaXMgaW4gZW1iZWRzLlxuICAgICAqIHsgaWQ6IDEgfSBvciB7IHRpdGxlOiBcImhlbGxvXCIgfSwgeyBjb3VudGVyczogeyBjb2RlOiAxIH0gfSwgeyBkYXRhOiB7IGluZm9ybWF0aW9uOiB7IGNvdW50ZXJzOiB7IGNvZGU6IDEgfSB9IH0gfVxuICAgICAqL1xuICAgIGdldEVudGl0eVZhbHVlTWFwKFxuICAgICAgICBlbnRpdHk6IE9iamVjdExpdGVyYWwsXG4gICAgICAgIG9wdGlvbnM/OiB7IHNraXBOdWxscz86IGJvb2xlYW4gfSxcbiAgICApOiBPYmplY3RMaXRlcmFsIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgY29uc3QgcmV0dXJuTnVsbHMgPSBmYWxzZSAvLyBvcHRpb25zICYmIG9wdGlvbnMuc2tpcE51bGxzID09PSBmYWxzZSA/IGZhbHNlIDogdHJ1ZTsgLy8gdG9kbzogcmVtb3ZlIGlmIGN1cnJlbnQgd2lsbCBub3QgYnJpbmcgcHJvYmxlbXMsIHVuY29tbWVudCBpZiBpdCB3aWxsLlxuXG5cbiAgICAgICAgaWYgKHRoaXMuZW1iZWRkZWRNZXRhZGF0YSkge1xuXG5cblxuXG5cbiAgICAgICAgICAgIGNvbnN0IHByb3BlcnR5TmFtZXMgPSBbLi4udGhpcy5lbWJlZGRlZE1ldGFkYXRhLnBhcmVudFByb3BlcnR5TmFtZXNdXG4gICAgICAgICAgICBjb25zdCBpc0VtYmVkZGVkQXJyYXkgPSB0aGlzLmVtYmVkZGVkTWV0YWRhdGEuaXNBcnJheVxuXG5cblxuXG5cblxuICAgICAgICAgICAgY29uc3QgZXh0cmFjdEVtYmVkZGVkQ29sdW1uVmFsdWUgPSAoXG4gICAgICAgICAgICAgICAgcHJvcGVydHlOYW1lczogc3RyaW5nW10sXG4gICAgICAgICAgICAgICAgdmFsdWU6IE9iamVjdExpdGVyYWwsXG4gICAgICAgICAgICApOiBPYmplY3RMaXRlcmFsID0+IHtcbiAgICAgICAgICAgICAgICBpZiAodmFsdWUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge31cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBjb25zdCBwcm9wZXJ0eU5hbWUgPSBwcm9wZXJ0eU5hbWVzLnNoaWZ0KClcblxuICAgICAgICAgICAgICAgIGlmIChwcm9wZXJ0eU5hbWUpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgc3VibWFwID0gZXh0cmFjdEVtYmVkZGVkQ29sdW1uVmFsdWUoXG4gICAgICAgICAgICAgICAgICAgICAgICBwcm9wZXJ0eU5hbWVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWVbcHJvcGVydHlOYW1lXSxcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICBpZiAoT2JqZWN0LmtleXMoc3VibWFwKS5sZW5ndGggPiAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4geyBbcHJvcGVydHlOYW1lXTogc3VibWFwIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge31cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICBpZiAoaXNFbWJlZGRlZEFycmF5ICYmIEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB2YWx1ZS5tYXAoKHYpID0+ICh7XG4gICAgICAgICAgICAgICAgICAgICAgICBbdGhpcy5wcm9wZXJ0eU5hbWVdOiB2W3RoaXMucHJvcGVydHlOYW1lXSxcbiAgICAgICAgICAgICAgICAgICAgfSkpXG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZVt0aGlzLnByb3BlcnR5TmFtZV0gIT09IHVuZGVmaW5lZCAmJlxuICAgICAgICAgICAgICAgICAgICAocmV0dXJuTnVsbHMgPT09IGZhbHNlIHx8IHZhbHVlW3RoaXMucHJvcGVydHlOYW1lXSAhPT0gbnVsbClcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsgW3RoaXMucHJvcGVydHlOYW1lXTogdmFsdWVbdGhpcy5wcm9wZXJ0eU5hbWVdIH1cbiAgICAgICAgICAgICAgICB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4ge31cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IG1hcCA9IGV4dHJhY3RFbWJlZGRlZENvbHVtblZhbHVlKHByb3BlcnR5TmFtZXMsIGVudGl0eSlcblxuICAgICAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKG1hcCkubGVuZ3RoID4gMCA/IG1hcCA6IHVuZGVmaW5lZFxuICAgICAgICB9IGVsc2Uge1xuXG4gICAgICAgICAgICAvKipcbiAgICAgICAgICAgICAqIE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IgY2hlY2tzIGlmIHRoZSByZWxhdGlvbiBpcyBsYXp5LCBpbiB3aGljaCBjYXNlIHZhbHVlIGlzIGEgUHJvbWlzZVxuICAgICAgICAgICAgICogRE8gTk9UIHVzZSBgZW50aXR5W1xuICAgICAgICAgICAgICAgIHRoaXMucmVsYXRpb25NZXRhZGF0YS5wcm9wZXJ0eU5hbWVdIGluc3RhbmNlb2YgUHJvbWlzZWAsIHdoaWNoIHdpbGwgaW52b2tlIHByb3BlcnR5IGdldHRlciBhbmQgbWFrZSB1bndhbnRlZCBEQiByZXF1ZXN0XG4gICAgICAgICAgICAgKiByZWZlcjogaHR0cHM6Ly9naXRodWIuY29tL3R5cGVvcm0vdHlwZW9ybS9wdWxsLzg2NzYjaXNzdWVjb21tZW50LTEwNDk5MDYzMzFcbiAgICAgICAgICAgICAqL1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIHRoaXMucmVsYXRpb25NZXRhZGF0YSAmJlxuICAgICAgICAgICAgICAgICFPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKFxuICAgICAgICAgICAgICAgICAgICBlbnRpdHksXG4gICAgICAgICAgICAgICAgICAgIHRoaXMucmVsYXRpb25NZXRhZGF0YS5wcm9wZXJ0eU5hbWUsXG4gICAgICAgICAgICAgICAgKT8uZ2V0ICYmXG4gICAgICAgICAgICAgICAgZW50aXR5W3RoaXMucmVsYXRpb25NZXRhZGF0YS5wcm9wZXJ0eU5hbWVdICYmXG4gICAgICAgICAgICAgICAgT2JqZWN0VXRpbHMuaXNPYmplY3QoZW50aXR5W3RoaXMucmVsYXRpb25NZXRhZGF0YS5wcm9wZXJ0eU5hbWVdKVxuICAgICAgICAgICAgKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWFwID0gdGhpcy5yZWxhdGlvbk1ldGFkYXRhLmpvaW5Db2x1bW5zLnJlZHVjZShcbiAgICAgICAgICAgICAgICAgICAgKG1hcCwgam9pbkNvbHVtbikgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdmFsdWUgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpvaW5Db2x1bW4ucmVmZXJlbmNlZENvbHVtbiEuZ2V0RW50aXR5VmFsdWVNYXAoXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVudGl0eVt0aGlzLnJlbGF0aW9uTWV0YWRhdGEhLnByb3BlcnR5TmFtZV0sXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHJldHVybiBtYXBcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBPcm1VdGlscy5tZXJnZURlZXAobWFwLCB2YWx1ZSlcbiAgICAgICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgICAgICAge30sXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIGlmIChPYmplY3Qua2V5cyhtYXApLmxlbmd0aCA+IDApXG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB7IFt0aGlzLnByb3BlcnR5TmFtZV06IG1hcCB9XG5cbiAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAgICAgZW50aXR5W3RoaXMucHJvcGVydHlOYW1lXSAhPT0gdW5kZWZpbmVkICYmXG4gICAgICAgICAgICAgICAgICAgIChyZXR1cm5OdWxscyA9PT0gZmFsc2UgfHxcbiAgICAgICAgICAgICAgICAgICAgICAgIGVudGl0eVt0aGlzLnByb3BlcnR5TmFtZV0gIT09IG51bGwpXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4geyBbdGhpcy5wcm9wZXJ0eU5hbWVdOiBlbnRpdHlbdGhpcy5wcm9wZXJ0eU5hbWVdIH1cblxuICAgICAgICAgICAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEV4dHJhY3RzIGNvbHVtbiB2YWx1ZSBmcm9tIHRoZSBnaXZlbiBlbnRpdHkuXG4gICAgICogSWYgY29sdW1uIGlzIGluIGVtYmVkZGVkIChvciByZWN1cnNpdmUgZW1iZWRkZWQpIGl0IGV4dHJhY3RzIGl0cyB2YWx1ZSBmcm9tIHRoZXJlLlxuICAgICAqL1xuICAgIGdldEVudGl0eVZhbHVlKFxuICAgICAgICBlbnRpdHk6IE9iamVjdExpdGVyYWwsXG4gICAgICAgIHRyYW5zZm9ybTogYm9vbGVhbiA9IGZhbHNlLFxuICAgICk6IGFueSB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmIChlbnRpdHkgPT09IHVuZGVmaW5lZCB8fCBlbnRpdHkgPT09IG51bGwpIHJldHVybiB1bmRlZmluZWRcblxuXG4gICAgICAgIGxldCB2YWx1ZTogYW55ID0gdW5kZWZpbmVkXG4gICAgICAgIGlmICh0aGlzLmVtYmVkZGVkTWV0YWRhdGEpIHtcblxuXG5cblxuICAgICAgICAgICAgY29uc3QgcHJvcGVydHlOYW1lcyA9IFsuLi50aGlzLmVtYmVkZGVkTWV0YWRhdGEucGFyZW50UHJvcGVydHlOYW1lc11cbiAgICAgICAgICAgIGNvbnN0IGlzRW1iZWRkZWRBcnJheSA9IHRoaXMuZW1iZWRkZWRNZXRhZGF0YS5pc0FycmF5XG5cblxuXG4gICAgICAgICAgICBjb25zdCBleHRyYWN0RW1iZWRkZWRDb2x1bW5WYWx1ZSA9IChcbiAgICAgICAgICAgICAgICBwcm9wZXJ0eU5hbWVzOiBzdHJpbmdbXSxcbiAgICAgICAgICAgICAgICB2YWx1ZTogT2JqZWN0TGl0ZXJhbCxcbiAgICAgICAgICAgICk6IGFueSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcHJvcGVydHlOYW1lID0gcHJvcGVydHlOYW1lcy5zaGlmdCgpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHByb3BlcnR5TmFtZSAmJiB2YWx1ZVxuICAgICAgICAgICAgICAgICAgICA/IGV4dHJhY3RFbWJlZGRlZENvbHVtblZhbHVlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm9wZXJ0eU5hbWVzLFxuICAgICAgICAgICAgICAgICAgICAgICAgICB2YWx1ZVtwcm9wZXJ0eU5hbWVdLFxuICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgOiB2YWx1ZVxuICAgICAgICAgICAgfVxuXG5cbiAgICAgICAgICAgIGNvbnN0IGVtYmVkZGVkT2JqZWN0ID0gZXh0cmFjdEVtYmVkZGVkQ29sdW1uVmFsdWUoXG4gICAgICAgICAgICAgICAgcHJvcGVydHlOYW1lcyxcbiAgICAgICAgICAgICAgICBlbnRpdHksXG4gICAgICAgICAgICApXG4gICAgICAgICAgICBpZiAoZW1iZWRkZWRPYmplY3QpIHtcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5yZWxhdGlvbk1ldGFkYXRhICYmIHRoaXMucmVmZXJlbmNlZENvbHVtbikge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCByZWxhdGVkRW50aXR5ID1cbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVsYXRpb25NZXRhZGF0YS5nZXRFbnRpdHlWYWx1ZShlbWJlZGRlZE9iamVjdClcbiAgICAgICAgICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRlZEVudGl0eSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgT2JqZWN0VXRpbHMuaXNPYmplY3QocmVsYXRlZEVudGl0eSkgJiZcbiAgICAgICAgICAgICAgICAgICAgICAgICFJbnN0YW5jZUNoZWNrZXIuaXNGaW5kT3BlcmF0b3IocmVsYXRlZEVudGl0eSlcbi8qICovXG4vKiAqL1xuLyogKi9cbiAgXG4gICAgICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWUgPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMucmVmZXJlbmNlZENvbHVtbi5nZXRFbnRpdHlWYWx1ZShyZWxhdGVkRW50aXR5KVxuICAgICAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgICAgICAgICAgICAgZW1iZWRkZWRPYmplY3RbdGhpcy5wcm9wZXJ0eU5hbWVdICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBPYmplY3RVdGlscy5pc09iamVjdChcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbWJlZGRlZE9iamVjdFt0aGlzLnByb3BlcnR5TmFtZV0sXG4gICAgICAgICAgICAgICAgICAgICAgICApICYmXG4gICAgICAgICAgICAgICAgICAgICAgICAhSW5zdGFuY2VDaGVja2VyLmlzRmluZE9wZXJhdG9yKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVtYmVkZGVkT2JqZWN0W3RoaXMucHJvcGVydHlOYW1lXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbi8qICovXG4vKiAqL1xuLyogKi9cbiAgXG4gICAgICAgICAgICAgICAgICAgICAgICAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgIShlbWJlZGRlZE9iamVjdFt0aGlzLnByb3BlcnR5TmFtZV0gaW5zdGFuY2VvZiBEYXRlKVxuICAgICAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlID0gdGhpcy5yZWZlcmVuY2VkQ29sdW1uLmdldEVudGl0eVZhbHVlKFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVtYmVkZGVkT2JqZWN0W3RoaXMucHJvcGVydHlOYW1lXSxcbiAgICAgICAgICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlID0gZW1iZWRkZWRPYmplY3RbdGhpcy5wcm9wZXJ0eU5hbWVdXG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9IGVsc2UgaWYgKHRoaXMucmVmZXJlbmNlZENvbHVtbikge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IHRoaXMucmVmZXJlbmNlZENvbHVtbi5nZXRFbnRpdHlWYWx1ZShcbiAgICAgICAgICAgICAgICAgICAgICAgIGVtYmVkZGVkT2JqZWN0W3RoaXMucHJvcGVydHlOYW1lXSxcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoaXNFbWJlZGRlZEFycmF5ICYmIEFycmF5LmlzQXJyYXkoZW1iZWRkZWRPYmplY3QpKSB7XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlID0gZW1iZWRkZWRPYmplY3QubWFwKChvKSA9PiBvW3RoaXMucHJvcGVydHlOYW1lXSlcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IGVtYmVkZGVkT2JqZWN0W3RoaXMucHJvcGVydHlOYW1lXVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcblxuICAgICAgICAgICAgaWYgKHRoaXMucmVsYXRpb25NZXRhZGF0YSAmJiB0aGlzLnJlZmVyZW5jZWRDb2x1bW4pIHtcbiAgICAgICAgICAgICAgICBjb25zdCByZWxhdGVkRW50aXR5ID1cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5yZWxhdGlvbk1ldGFkYXRhLmdldEVudGl0eVZhbHVlKGVudGl0eSlcbiAgICAgICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgICAgIHJlbGF0ZWRFbnRpdHkgJiZcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0VXRpbHMuaXNPYmplY3QocmVsYXRlZEVudGl0eSkgJiZcbiAgICAgICAgICAgICAgICAgICAgIUluc3RhbmNlQ2hlY2tlci5pc0ZpbmRPcGVyYXRvcihyZWxhdGVkRW50aXR5KSAmJlxuICAgICAgICAgICAgICAgICAgICAhKHR5cGVvZiByZWxhdGVkRW50aXR5ID09PSBcImZ1bmN0aW9uXCIpXG4vKiAqL1xuLyogKi9cbi8qICovXG4gIFxuICAgICAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZSA9IHRoaXMucmVmZXJlbmNlZENvbHVtbi5nZXRFbnRpdHlWYWx1ZShyZWxhdGVkRW50aXR5KVxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgICAgICAgICAgIGVudGl0eVt0aGlzLnByb3BlcnR5TmFtZV0gJiZcbiAgICAgICAgICAgICAgICAgICAgT2JqZWN0VXRpbHMuaXNPYmplY3QoZW50aXR5W3RoaXMucHJvcGVydHlOYW1lXSkgJiZcbiAgICAgICAgICAgICAgICAgICAgIUluc3RhbmNlQ2hlY2tlci5pc0ZpbmRPcGVyYXRvcihcbiAgICAgICAgICAgICAgICAgICAgICAgIGVudGl0eVt0aGlzLnByb3BlcnR5TmFtZV0sXG4gICAgICAgICAgICAgICAgICAgICkgJiZcbiAgICAgICAgICAgICAgICAgICAgISh0eXBlb2YgZW50aXR5W3RoaXMucHJvcGVydHlOYW1lXSA9PT0gXCJmdW5jdGlvblwiKVxuLyogKi9cbi8qICovXG4vKiAqL1xuICBcbiAgICAgICAgICAgICAgICAgICAgJiZcbiAgICAgICAgICAgICAgICAgICAgIShlbnRpdHlbdGhpcy5wcm9wZXJ0eU5hbWVdIGluc3RhbmNlb2YgRGF0ZSlcbiAgICAgICAgICAgICAgICApIHtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSB0aGlzLnJlZmVyZW5jZWRDb2x1bW4uZ2V0RW50aXR5VmFsdWUoXG4gICAgICAgICAgICAgICAgICAgICAgICBlbnRpdHlbdGhpcy5wcm9wZXJ0eU5hbWVdLFxuICAgICAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgdmFsdWUgPSBlbnRpdHlbdGhpcy5wcm9wZXJ0eU5hbWVdXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLnJlZmVyZW5jZWRDb2x1bW4pIHtcbiAgICAgICAgICAgICAgICB2YWx1ZSA9IHRoaXMucmVmZXJlbmNlZENvbHVtbi5nZXRFbnRpdHlWYWx1ZShcbiAgICAgICAgICAgICAgICAgICAgZW50aXR5W3RoaXMucHJvcGVydHlOYW1lXSxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHZhbHVlID0gZW50aXR5W3RoaXMucHJvcGVydHlOYW1lXVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRyYW5zZm9ybSAmJiB0aGlzLnRyYW5zZm9ybWVyKVxuICAgICAgICAgICAgdmFsdWUgPSBBcHBseVZhbHVlVHJhbnNmb3JtZXJzLnRyYW5zZm9ybVRvKHRoaXMudHJhbnNmb3JtZXIsIHZhbHVlKVxuXG4gICAgICAgIHJldHVybiB2YWx1ZVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFNldHMgZ2l2ZW4gZW50aXR5J3MgY29sdW1uIHZhbHVlLlxuICAgICAqIFVzaW5nIG9mIHRoaXMgbWV0aG9kIGhlbHBzIHRvIHNldCBlbnRpdHkgcmVsYXRpb24ncyB2YWx1ZSBvZiB0aGUgbGF6eSBhbmQgbm9uLWxhenkgcmVsYXRpb25zLlxuICAgICAqL1xuICAgIHNldEVudGl0eVZhbHVlKGVudGl0eTogT2JqZWN0TGl0ZXJhbCwgdmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5lbWJlZGRlZE1ldGFkYXRhKSB7XG5cbiAgICAgICAgICAgIGNvbnN0IGV4dHJhY3RFbWJlZGRlZENvbHVtblZhbHVlID0gKFxuICAgICAgICAgICAgICAgIGVtYmVkZGVkTWV0YWRhdGFzOiBFbWJlZGRlZE1ldGFkYXRhW10sXG4gICAgICAgICAgICAgICAgbWFwOiBPYmplY3RMaXRlcmFsLFxuICAgICAgICAgICAgKTogYW55ID0+IHtcblxuXG5cbiAgICAgICAgICAgICAgICBjb25zdCBlbWJlZGRlZE1ldGFkYXRhID0gZW1iZWRkZWRNZXRhZGF0YXMuc2hpZnQoKVxuICAgICAgICAgICAgICAgIGlmIChlbWJlZGRlZE1ldGFkYXRhKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICghbWFwW2VtYmVkZGVkTWV0YWRhdGEucHJvcGVydHlOYW1lXSlcbiAgICAgICAgICAgICAgICAgICAgICAgIG1hcFtlbWJlZGRlZE1ldGFkYXRhLnByb3BlcnR5TmFtZV0gPVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVtYmVkZGVkTWV0YWRhdGEuY3JlYXRlKClcblxuICAgICAgICAgICAgICAgICAgICBleHRyYWN0RW1iZWRkZWRDb2x1bW5WYWx1ZShcbiAgICAgICAgICAgICAgICAgICAgICAgIGVtYmVkZGVkTWV0YWRhdGFzLFxuICAgICAgICAgICAgICAgICAgICAgICAgbWFwW2VtYmVkZGVkTWV0YWRhdGEucHJvcGVydHlOYW1lXSxcbiAgICAgICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gbWFwXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIG1hcFt0aGlzLnByb3BlcnR5TmFtZV0gPSB2YWx1ZVxuICAgICAgICAgICAgICAgIHJldHVybiBtYXBcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiBleHRyYWN0RW1iZWRkZWRDb2x1bW5WYWx1ZShcbiAgICAgICAgICAgICAgICBbLi4udGhpcy5lbWJlZGRlZE1ldGFkYXRhLmVtYmVkZGVkTWV0YWRhdGFUcmVlXSxcbiAgICAgICAgICAgICAgICBlbnRpdHksXG4gICAgICAgICAgICApXG4gICAgICAgIH0gZWxzZSB7XG5cblxuXG4gICAgICAgICAgICBpZiAoXG4gICAgICAgICAgICAgICAgIXRoaXMuZW50aXR5TWV0YWRhdGEuaXNKdW5jdGlvbiAmJlxuICAgICAgICAgICAgICAgIHRoaXMuaXNWaXJ0dWFsICYmXG4gICAgICAgICAgICAgICAgdGhpcy5yZWZlcmVuY2VkQ29sdW1uICYmXG4gICAgICAgICAgICAgICAgdGhpcy5yZWZlcmVuY2VkQ29sdW1uLnByb3BlcnR5TmFtZSAhPT0gdGhpcy5wcm9wZXJ0eU5hbWVcbiAgICAgICAgICAgICkge1xuICAgICAgICAgICAgICAgIGlmICghKHRoaXMucHJvcGVydHlOYW1lIGluIGVudGl0eSkpIHtcbiAgICAgICAgICAgICAgICAgICAgZW50aXR5W3RoaXMucHJvcGVydHlOYW1lXSA9IHt9XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgZW50aXR5W3RoaXMucHJvcGVydHlOYW1lXVt0aGlzLnJlZmVyZW5jZWRDb2x1bW4ucHJvcGVydHlOYW1lXSA9XG4gICAgICAgICAgICAgICAgICAgIHZhbHVlXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGVudGl0eVt0aGlzLnByb3BlcnR5TmFtZV0gPSB2YWx1ZVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29tcGFyZXMgZ2l2ZW4gZW50aXR5J3MgY29sdW1uIHZhbHVlIHdpdGggYSBnaXZlbiB2YWx1ZS5cbiAgICAgKi9cbiAgICBjb21wYXJlRW50aXR5VmFsdWUoZW50aXR5OiBhbnksIHZhbHVlVG9Db21wYXJlV2l0aDogYW55KSB7XG4gICAgICAgIGNvbnN0IGNvbHVtblZhbHVlID0gdGhpcy5nZXRFbnRpdHlWYWx1ZShlbnRpdHkpXG4gICAgICAgIGlmIChPYmplY3RVdGlscy5pc09iamVjdChjb2x1bW5WYWx1ZSkpIHtcbiAgICAgICAgICAgIHJldHVybiBjb2x1bW5WYWx1ZS5lcXVhbHModmFsdWVUb0NvbXBhcmVXaXRoKVxuICAgICAgICB9XG4gICAgICAgIHJldHVybiBjb2x1bW5WYWx1ZSA9PT0gdmFsdWVUb0NvbXBhcmVXaXRoXG4gICAgfVxuXG5cblxuXG5cbiAgICBidWlsZChjb25uZWN0aW9uOiBEYXRhU291cmNlKTogdGhpcyB7XG4gICAgICAgIHRoaXMucHJvcGVydHlQYXRoID0gdGhpcy5idWlsZFByb3BlcnR5UGF0aCgpXG4gICAgICAgIHRoaXMucHJvcGVydHlBbGlhc05hbWUgPSB0aGlzLnByb3BlcnR5UGF0aC5yZXBsYWNlKFwiLlwiLCBcIl9cIilcbiAgICAgICAgdGhpcy5kYXRhYmFzZU5hbWUgPSB0aGlzLmJ1aWxkRGF0YWJhc2VOYW1lKGNvbm5lY3Rpb24pXG4gICAgICAgIHRoaXMuZGF0YWJhc2VQYXRoID0gdGhpcy5idWlsZERhdGFiYXNlUGF0aCgpXG4gICAgICAgIHRoaXMuZGF0YWJhc2VOYW1lV2l0aG91dFByZWZpeGVzID0gY29ubmVjdGlvbi5uYW1pbmdTdHJhdGVneS5jb2x1bW5OYW1lKFxuICAgICAgICAgICAgdGhpcy5wcm9wZXJ0eU5hbWUsXG4gICAgICAgICAgICB0aGlzLmdpdmVuRGF0YWJhc2VOYW1lLFxuICAgICAgICAgICAgW10sXG4gICAgICAgIClcbiAgICAgICAgcmV0dXJuIHRoaXNcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYnVpbGRQcm9wZXJ0eVBhdGgoKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IHBhdGggPSBcIlwiXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHRoaXMuZW1iZWRkZWRNZXRhZGF0YSAmJlxuICAgICAgICAgICAgdGhpcy5lbWJlZGRlZE1ldGFkYXRhLnBhcmVudFByb3BlcnR5TmFtZXMubGVuZ3RoXG4gICAgICAgIClcbiAgICAgICAgICAgIHBhdGggPSB0aGlzLmVtYmVkZGVkTWV0YWRhdGEucGFyZW50UHJvcGVydHlOYW1lcy5qb2luKFwiLlwiKSArIFwiLlwiXG5cbiAgICAgICAgcGF0aCArPSB0aGlzLnByb3BlcnR5TmFtZVxuXG5cblxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICF0aGlzLmVudGl0eU1ldGFkYXRhLmlzSnVuY3Rpb24gJiZcbiAgICAgICAgICAgIHRoaXMuaXNWaXJ0dWFsICYmXG4gICAgICAgICAgICB0aGlzLnJlZmVyZW5jZWRDb2x1bW4gJiZcbiAgICAgICAgICAgIHRoaXMucmVmZXJlbmNlZENvbHVtbi5wcm9wZXJ0eU5hbWUgIT09IHRoaXMucHJvcGVydHlOYW1lXG4gICAgICAgIClcbiAgICAgICAgICAgIHBhdGggKz0gXCIuXCIgKyB0aGlzLnJlZmVyZW5jZWRDb2x1bW4ucHJvcGVydHlOYW1lXG5cbiAgICAgICAgcmV0dXJuIHBhdGhcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYnVpbGREYXRhYmFzZVBhdGgoKTogc3RyaW5nIHtcbiAgICAgICAgbGV0IHBhdGggPSBcIlwiXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIHRoaXMuZW1iZWRkZWRNZXRhZGF0YSAmJlxuICAgICAgICAgICAgdGhpcy5lbWJlZGRlZE1ldGFkYXRhLnBhcmVudFByb3BlcnR5TmFtZXMubGVuZ3RoXG4gICAgICAgIClcbiAgICAgICAgICAgIHBhdGggPSB0aGlzLmVtYmVkZGVkTWV0YWRhdGEucGFyZW50UHJvcGVydHlOYW1lcy5qb2luKFwiLlwiKSArIFwiLlwiXG5cbiAgICAgICAgcGF0aCArPSB0aGlzLmRhdGFiYXNlTmFtZVxuXG5cblxuXG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICF0aGlzLmVudGl0eU1ldGFkYXRhLmlzSnVuY3Rpb24gJiZcbiAgICAgICAgICAgIHRoaXMuaXNWaXJ0dWFsICYmXG4gICAgICAgICAgICB0aGlzLnJlZmVyZW5jZWRDb2x1bW4gJiZcbiAgICAgICAgICAgIHRoaXMucmVmZXJlbmNlZENvbHVtbi5kYXRhYmFzZU5hbWUgIT09IHRoaXMuZGF0YWJhc2VOYW1lXG4gICAgICAgIClcbiAgICAgICAgICAgIHBhdGggKz0gXCIuXCIgKyB0aGlzLnJlZmVyZW5jZWRDb2x1bW4uZGF0YWJhc2VOYW1lXG5cbiAgICAgICAgcmV0dXJuIHBhdGhcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgYnVpbGREYXRhYmFzZU5hbWUoY29ubmVjdGlvbjogRGF0YVNvdXJjZSk6IHN0cmluZyB7XG4gICAgICAgIGxldCBwcm9wZXJ0eU5hbWVzID0gdGhpcy5lbWJlZGRlZE1ldGFkYXRhXG4gICAgICAgICAgICA/IHRoaXMuZW1iZWRkZWRNZXRhZGF0YS5wYXJlbnRQcmVmaXhlc1xuICAgICAgICAgICAgOiBbXVxuICAgICAgICBpZiAoY29ubmVjdGlvbi5kcml2ZXIub3B0aW9ucy50eXBlID09PSBcIm1vbmdvZGJcIilcblxuICAgICAgICAgICAgcHJvcGVydHlOYW1lcyA9IFtdXG4gICAgICAgIHJldHVybiBjb25uZWN0aW9uLm5hbWluZ1N0cmF0ZWd5LmNvbHVtbk5hbWUoXG4gICAgICAgICAgICB0aGlzLnByb3BlcnR5TmFtZSxcbiAgICAgICAgICAgIHRoaXMuZ2l2ZW5EYXRhYmFzZU5hbWUsXG4gICAgICAgICAgICBwcm9wZXJ0eU5hbWVzLFxuICAgICAgICApXG4gICAgfVxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dGFvbi10eXBlb3JtIGxpYi90eXBlb3JtL21ldGFkYXRhL0NvbHVtbk1ldGFkYXRhLnRzIl19