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,636 +0,0 @@
1
- import { CannotCreateEntityIdMapError } from "../error/CannotCreateEntityIdMapError";
2
- import { OrmUtils } from "../util/OrmUtils";
3
- import { EntityPropertyNotFoundError } from "../error/EntityPropertyNotFoundError";
4
- import { ObjectUtils } from "../util/ObjectUtils";
5
- import { shorten } from "../util/StringUtils";
6
- /**
7
- * Contains all entity metadata.
8
- */
9
- export class EntityMetadata {
10
- constructor(options) {
11
- this["@instanceof"] = Symbol.for("EntityMetadata");
12
- /**
13
- * Children entity metadatas. Used in inheritance patterns.
14
- */
15
- this.childEntityMetadatas = [];
16
- /**
17
- * All "inheritance tree" from a target entity.
18
- * For example for target Post < ContentModel < Unit it will be an array of [Post, ContentModel, Unit].
19
- * It also contains child entities for single table inheritance.
20
- */
21
- this.inheritanceTree = [];
22
- /**
23
- * Table type. Tables can be closure, junction, etc.
24
- */
25
- this.tableType = "regular";
26
- /**
27
- * Enables Sqlite "WITHOUT ROWID" modifier for the "CREATE TABLE" statement
28
- */
29
- this.withoutRowid = false;
30
- /**
31
- * Indicates if schema will be synchronized for this entity or not.
32
- */
33
- this.synchronize = true;
34
- /**
35
- * Checks if there any non-nullable column exist in this entity.
36
- */
37
- this.hasNonNullableRelations = false;
38
- /**
39
- * Indicates if this entity metadata of a junction table, or not.
40
- * Junction table is a table created by many-to-many relationship.
41
- *
42
- * Its also possible to understand if entity is junction via tableType.
43
- */
44
- this.isJunction = false;
45
- /**
46
- * Indicates if the entity should be instantiated using the constructor
47
- * or via allocating a new object via `Object.create()`.
48
- */
49
- this.isAlwaysUsingConstructor = true;
50
- /**
51
- * Checks if this table is a junction table of the closure table.
52
- * This type is for tables that contain junction metadata of the closure tables.
53
- */
54
- this.isClosureJunction = false;
55
- /**
56
- * Checks if entity's table has multiple primary columns.
57
- */
58
- this.hasMultiplePrimaryKeys = false;
59
- /**
60
- * Indicates if this entity metadata has uuid generated columns.
61
- */
62
- this.hasUUIDGeneratedColumns = false;
63
- /**
64
- * Entity's column metadatas defined by user.
65
- */
66
- this.ownColumns = [];
67
- /**
68
- * Columns of the entity, including columns that are coming from the embeddeds of this entity.
69
- */
70
- this.columns = [];
71
- /**
72
- * Ancestor columns used only in closure junction tables.
73
- */
74
- this.ancestorColumns = [];
75
- /**
76
- * Descendant columns used only in closure junction tables.
77
- */
78
- this.descendantColumns = [];
79
- /**
80
- * All columns except for virtual columns.
81
- */
82
- this.nonVirtualColumns = [];
83
- /**
84
- * In the case if this entity metadata is junction table's entity metadata,
85
- * this will contain all referenced columns of owner entity.
86
- */
87
- this.ownerColumns = [];
88
- /**
89
- * In the case if this entity metadata is junction table's entity metadata,
90
- * this will contain all referenced columns of inverse entity.
91
- */
92
- this.inverseColumns = [];
93
- /**
94
- * Gets the column with generated flag.
95
- */
96
- this.generatedColumns = [];
97
- /**
98
- * Gets the primary columns.
99
- */
100
- this.primaryColumns = [];
101
- /**
102
- * Entity's relation metadatas.
103
- */
104
- this.ownRelations = [];
105
- /**
106
- * Relations of the entity, including relations that are coming from the embeddeds of this entity.
107
- */
108
- this.relations = [];
109
- /**
110
- * List of eager relations this metadata has.
111
- */
112
- this.eagerRelations = [];
113
- /**
114
- * List of eager relations this metadata has.
115
- */
116
- this.lazyRelations = [];
117
- /**
118
- * Gets only one-to-one relations of the entity.
119
- */
120
- this.oneToOneRelations = [];
121
- /**
122
- * Gets only owner one-to-one relations of the entity.
123
- */
124
- this.ownerOneToOneRelations = [];
125
- /**
126
- * Gets only one-to-many relations of the entity.
127
- */
128
- this.oneToManyRelations = [];
129
- /**
130
- * Gets only many-to-one relations of the entity.
131
- */
132
- this.manyToOneRelations = [];
133
- /**
134
- * Gets only many-to-many relations of the entity.
135
- */
136
- this.manyToManyRelations = [];
137
- /**
138
- * Gets only owner many-to-many relations of the entity.
139
- */
140
- this.ownerManyToManyRelations = [];
141
- /**
142
- * Gets only owner one-to-one and many-to-one relations.
143
- */
144
- this.relationsWithJoinColumns = [];
145
- /**
146
- * Entity's relation id metadatas.
147
- */
148
- this.relationIds = [];
149
- /**
150
- * Entity's relation id metadatas.
151
- */
152
- this.relationCounts = [];
153
- /**
154
- * Entity's foreign key metadatas.
155
- */
156
- this.foreignKeys = [];
157
- /**
158
- * Entity's embedded metadatas.
159
- */
160
- this.embeddeds = [];
161
- /**
162
- * All embeddeds - embeddeds from this entity metadata and from all child embeddeds, etc.
163
- */
164
- this.allEmbeddeds = [];
165
- /**
166
- * Entity's own indices.
167
- */
168
- this.ownIndices = [];
169
- /**
170
- * Entity's index metadatas.
171
- */
172
- this.indices = [];
173
- /**
174
- * Entity's unique metadatas.
175
- */
176
- this.uniques = [];
177
- /**
178
- * Entity's own uniques.
179
- */
180
- this.ownUniques = [];
181
- /**
182
- * Entity's check metadatas.
183
- */
184
- this.checks = [];
185
- /**
186
- * Entity's exclusion metadatas.
187
- */
188
- this.exclusions = [];
189
- /**
190
- * Entity's own listener metadatas.
191
- */
192
- this.ownListeners = [];
193
- /**
194
- * Entity listener metadatas.
195
- */
196
- this.listeners = [];
197
- /**
198
- * Listener metadatas with "AFTER LOAD" type.
199
- */
200
- this.afterLoadListeners = [];
201
- /**
202
- * Listener metadatas with "AFTER INSERT" type.
203
- */
204
- this.beforeInsertListeners = [];
205
- /**
206
- * Listener metadatas with "AFTER INSERT" type.
207
- */
208
- this.afterInsertListeners = [];
209
- /**
210
- * Listener metadatas with "AFTER UPDATE" type.
211
- */
212
- this.beforeUpdateListeners = [];
213
- /**
214
- * Listener metadatas with "AFTER UPDATE" type.
215
- */
216
- this.afterUpdateListeners = [];
217
- /**
218
- * Listener metadatas with "AFTER REMOVE" type.
219
- */
220
- this.beforeRemoveListeners = [];
221
- /**
222
- * Listener metadatas with "BEFORE SOFT REMOVE" type.
223
- */
224
- this.beforeSoftRemoveListeners = [];
225
- /**
226
- * Listener metadatas with "BEFORE RECOVER" type.
227
- */
228
- this.beforeRecoverListeners = [];
229
- /**
230
- * Listener metadatas with "AFTER REMOVE" type.
231
- */
232
- this.afterRemoveListeners = [];
233
- /**
234
- * Listener metadatas with "AFTER SOFT REMOVE" type.
235
- */
236
- this.afterSoftRemoveListeners = [];
237
- /**
238
- * Listener metadatas with "AFTER RECOVER" type.
239
- */
240
- this.afterRecoverListeners = [];
241
- this.connection = options.connection;
242
- this.inheritanceTree = options.inheritanceTree || [];
243
- this.inheritancePattern = options.inheritancePattern;
244
- this.treeType = options.tableTree ? options.tableTree.type : undefined;
245
- this.treeOptions = options.tableTree
246
- ? options.tableTree.options
247
- : undefined;
248
- this.parentClosureEntityMetadata = options.parentClosureEntityMetadata;
249
- this.tableMetadataArgs = options.args;
250
- this.target = this.tableMetadataArgs.target;
251
- this.tableType = this.tableMetadataArgs.type;
252
- this.expression = this.tableMetadataArgs.expression;
253
- this.withoutRowid = this.tableMetadataArgs.withoutRowid;
254
- this.dependsOn = this.tableMetadataArgs.dependsOn;
255
- }
256
- /**
257
- * Creates a new entity.
258
- */
259
- create(queryRunner, options) {
260
- const pojo = options && options.pojo === true ? true : false;
261
- let ret;
262
- if (typeof this.target === "function" && !pojo) {
263
- if (!options?.fromDeserializer || this.isAlwaysUsingConstructor) {
264
- ret = new this.target();
265
- }
266
- else {
267
- ret = Object.create(this.target.prototype);
268
- }
269
- }
270
- else {
271
- ret = {};
272
- }
273
- if (this.connection.options.typename) {
274
- ret[this.connection.options.typename] = this.targetName;
275
- }
276
- this.lazyRelations.forEach((relation) => this.connection.relationLoader.enableLazyLoad(relation, ret, queryRunner));
277
- return ret;
278
- }
279
- /**
280
- * Checks if given entity has an id.
281
- */
282
- hasId(entity) {
283
- if (!entity)
284
- return false;
285
- return this.primaryColumns.every((primaryColumn) => {
286
- const value = primaryColumn.getEntityValue(entity);
287
- return value !== null && value !== undefined && value !== "";
288
- });
289
- }
290
- /**
291
- * Checks if given entity / object contains ALL primary keys entity must have.
292
- * Returns true if it contains all of them, false if at least one of them is not defined.
293
- */
294
- hasAllPrimaryKeys(entity) {
295
- return this.primaryColumns.every((primaryColumn) => {
296
- const value = primaryColumn.getEntityValue(entity);
297
- return value !== null && value !== undefined;
298
- });
299
- }
300
- /**
301
- * Ensures that given object is an entity id map.
302
- * If given id is an object then it means its already id map.
303
- * If given id isn't an object then it means its a value of the id column
304
- * and it creates a new id map with this value and name of the primary column.
305
- */
306
- ensureEntityIdMap(id) {
307
- if (ObjectUtils.isObject(id))
308
- return id;
309
- if (this.hasMultiplePrimaryKeys)
310
- throw new CannotCreateEntityIdMapError(this, id);
311
- return this.primaryColumns[0].createValueMap(id);
312
- }
313
- /**
314
- * Gets primary keys of the entity and returns them in a literal object.
315
- * For example, for Post{ id: 1, title: "hello" } where id is primary it will return { id: 1 }
316
- * For multiple primary keys it returns multiple keys in object.
317
- * For primary keys inside embeds it returns complex object literal with keys in them.
318
- */
319
- getEntityIdMap(entity) {
320
- if (!entity)
321
- return undefined;
322
- return EntityMetadata.getValueMap(entity, this.primaryColumns, {
323
- skipNulls: true,
324
- });
325
- }
326
- /**
327
- * Creates a "mixed id map".
328
- * If entity has multiple primary keys (ids) then it will return just regular id map, like what getEntityIdMap returns.
329
- * But if entity has a single primary key then it will return just value of the id column of the entity, just value.
330
- * This is called mixed id map.
331
- */
332
- getEntityIdMixedMap(entity) {
333
- if (!entity)
334
- return entity;
335
- const idMap = this.getEntityIdMap(entity);
336
- if (this.hasMultiplePrimaryKeys) {
337
- return idMap;
338
- }
339
- else if (idMap) {
340
- return this.primaryColumns[0].getEntityValue(idMap); // todo: what about parent primary column?
341
- }
342
- return idMap;
343
- }
344
- /**
345
- * Compares two different entities by their ids.
346
- * Returns true if they match, false otherwise.
347
- */
348
- compareEntities(firstEntity, secondEntity) {
349
- const firstEntityIdMap = this.getEntityIdMap(firstEntity);
350
- if (!firstEntityIdMap)
351
- return false;
352
- const secondEntityIdMap = this.getEntityIdMap(secondEntity);
353
- if (!secondEntityIdMap)
354
- return false;
355
- return OrmUtils.compareIds(firstEntityIdMap, secondEntityIdMap);
356
- }
357
- /**
358
- * Finds column with a given property name.
359
- */
360
- findColumnWithPropertyName(propertyName) {
361
- return this.columns.find((column) => column.propertyName === propertyName);
362
- }
363
- /**
364
- * Finds column with a given database name.
365
- */
366
- findColumnWithDatabaseName(databaseName) {
367
- return this.columns.find((column) => column.databaseName === databaseName);
368
- }
369
- /**
370
- * Checks if there is a column or relationship with a given property path.
371
- */
372
- hasColumnWithPropertyPath(propertyPath) {
373
- const hasColumn = this.columns.some((column) => column.propertyPath === propertyPath);
374
- return hasColumn || this.hasRelationWithPropertyPath(propertyPath);
375
- }
376
- /**
377
- * Finds column with a given property path.
378
- */
379
- findColumnWithPropertyPath(propertyPath) {
380
- const column = this.columns.find((column) => column.propertyPath === propertyPath);
381
- if (column)
382
- return column;
383
- const relation = this.relations.find((relation) => relation.propertyPath === propertyPath);
384
- if (relation && relation.joinColumns.length === 1)
385
- return relation.joinColumns[0];
386
- return undefined;
387
- }
388
- /**
389
- * Finds column with a given property path.
390
- * Does not search in relation unlike findColumnWithPropertyPath.
391
- */
392
- findColumnWithPropertyPathStrict(propertyPath) {
393
- return this.columns.find((column) => column.propertyPath === propertyPath);
394
- }
395
- /**
396
- * Finds columns with a given property path.
397
- * Property path can match a relation, and relations can contain multiple columns.
398
- */
399
- findColumnsWithPropertyPath(propertyPath) {
400
- const column = this.columns.find((column) => column.propertyPath === propertyPath);
401
- if (column)
402
- return [column];
403
- const relation = this.findRelationWithPropertyPath(propertyPath);
404
- if (relation && relation.joinColumns)
405
- return relation.joinColumns;
406
- return [];
407
- }
408
- /**
409
- * Checks if there is a relation with the given property path.
410
- */
411
- hasRelationWithPropertyPath(propertyPath) {
412
- return this.relations.some((relation) => relation.propertyPath === propertyPath);
413
- }
414
- /**
415
- * Finds relation with the given property path.
416
- */
417
- findRelationWithPropertyPath(propertyPath) {
418
- return this.relations.find((relation) => relation.propertyPath === propertyPath);
419
- }
420
- /**
421
- * Checks if there is an embedded with a given property path.
422
- */
423
- hasEmbeddedWithPropertyPath(propertyPath) {
424
- return this.allEmbeddeds.some((embedded) => embedded.propertyPath === propertyPath);
425
- }
426
- /**
427
- * Finds embedded with a given property path.
428
- */
429
- findEmbeddedWithPropertyPath(propertyPath) {
430
- return this.allEmbeddeds.find((embedded) => embedded.propertyPath === propertyPath);
431
- }
432
- /**
433
- * Returns an array of databaseNames mapped from provided propertyPaths
434
- */
435
- mapPropertyPathsToColumns(propertyPaths) {
436
- return propertyPaths.map((propertyPath) => {
437
- const column = this.findColumnWithPropertyPath(propertyPath);
438
- if (column == null) {
439
- throw new EntityPropertyNotFoundError(propertyPath, this);
440
- }
441
- return column;
442
- });
443
- }
444
- /**
445
- * Iterates through entity and finds and extracts all values from relations in the entity.
446
- * If relation value is an array its being flattened.
447
- */
448
- extractRelationValuesFromEntity(entity, relations) {
449
- const relationsAndValues = [];
450
- relations.forEach((relation) => {
451
- const value = relation.getEntityValue(entity);
452
- if (Array.isArray(value)) {
453
- value.forEach((subValue) => relationsAndValues.push([
454
- relation,
455
- subValue,
456
- this.getInverseEntityMetadata(subValue, relation),
457
- ]));
458
- }
459
- else if (value) {
460
- relationsAndValues.push([
461
- relation,
462
- value,
463
- this.getInverseEntityMetadata(value, relation),
464
- ]);
465
- }
466
- });
467
- return relationsAndValues;
468
- }
469
- getInverseEntityMetadata(value, relation) {
470
- const childEntityMetadata = relation.inverseEntityMetadata.childEntityMetadatas.find((metadata) => metadata.target === value.constructor);
471
- return childEntityMetadata
472
- ? childEntityMetadata
473
- : relation.inverseEntityMetadata;
474
- }
475
- /**
476
- * Creates a property paths for a given entity.
477
- *
478
- * @deprecated
479
- */
480
- static createPropertyPath(metadata, entity, prefix = "") {
481
- const paths = [];
482
- Object.keys(entity).forEach((key) => {
483
- const parentPath = prefix ? prefix + "." + key : key;
484
- if (metadata.hasEmbeddedWithPropertyPath(parentPath)) {
485
- const subPaths = this.createPropertyPath(metadata, entity[key], parentPath);
486
- paths.push(...subPaths);
487
- }
488
- else {
489
- const path = prefix ? prefix + "." + key : key;
490
- paths.push(path);
491
- }
492
- });
493
- return paths;
494
- }
495
- /**
496
- * Finds difference between two entity id maps.
497
- * Returns items that exist in the first array and absent in the second array.
498
- */
499
- static difference(firstIdMaps, secondIdMaps) {
500
- return firstIdMaps.filter((firstIdMap) => {
501
- return !secondIdMaps.find((secondIdMap) => OrmUtils.compareIds(firstIdMap, secondIdMap));
502
- });
503
- }
504
- /**
505
- * Creates value map from the given values and columns.
506
- * Examples of usages are primary columns map and join columns map.
507
- */
508
- static getValueMap(entity, columns, options) {
509
- return columns.reduce((map, column) => {
510
- const value = column.getEntityValueMap(entity, options);
511
- if (map === undefined || value === null || value === undefined)
512
- return undefined;
513
- return OrmUtils.mergeDeep(map, value);
514
- }, {});
515
- }
516
- build() {
517
- const namingStrategy = this.connection.namingStrategy;
518
- const entityPrefix = this.connection.options.entityPrefix;
519
- const entitySkipConstructor = this.connection.options.entitySkipConstructor;
520
- this.engine = this.tableMetadataArgs.engine;
521
- this.database =
522
- this.tableMetadataArgs.type === "entity-child" &&
523
- this.parentEntityMetadata
524
- ? this.parentEntityMetadata.database
525
- : this.tableMetadataArgs.database;
526
- if (this.tableMetadataArgs.schema) {
527
- this.schema = this.tableMetadataArgs.schema;
528
- }
529
- else if (this.tableMetadataArgs.type === "entity-child" &&
530
- this.parentEntityMetadata) {
531
- this.schema = this.parentEntityMetadata.schema;
532
- }
533
- else if (this.connection.options?.hasOwnProperty("schema")) {
534
- this.schema = this.connection.options.schema;
535
- }
536
- this.givenTableName =
537
- this.tableMetadataArgs.type === "entity-child" &&
538
- this.parentEntityMetadata
539
- ? this.parentEntityMetadata.givenTableName
540
- : this.tableMetadataArgs.name;
541
- this.synchronize =
542
- this.tableMetadataArgs.synchronize === false ? false : true;
543
- this.targetName =
544
- typeof this.tableMetadataArgs.target === "function"
545
- ? this.tableMetadataArgs.target.name
546
- : this.tableMetadataArgs.target;
547
- if (this.tableMetadataArgs.type === "closure-junction") {
548
- this.tableNameWithoutPrefix =
549
- namingStrategy.closureJunctionTableName(this.givenTableName);
550
- }
551
- else if (this.tableMetadataArgs.type === "entity-child" &&
552
- this.parentEntityMetadata) {
553
- this.tableNameWithoutPrefix = namingStrategy.tableName(this.parentEntityMetadata.targetName, this.parentEntityMetadata.givenTableName);
554
- }
555
- else {
556
- this.tableNameWithoutPrefix = namingStrategy.tableName(this.targetName, this.givenTableName);
557
- if (this.tableMetadataArgs.type === "junction" &&
558
- this.connection.driver.maxAliasLength &&
559
- this.connection.driver.maxAliasLength > 0 &&
560
- this.tableNameWithoutPrefix.length >
561
- this.connection.driver.maxAliasLength) {
562
- this.tableNameWithoutPrefix = shorten(this.tableNameWithoutPrefix, { separator: "_", segmentLength: 3 });
563
- }
564
- }
565
- this.tableName = entityPrefix
566
- ? namingStrategy.prefixTableName(entityPrefix, this.tableNameWithoutPrefix)
567
- : this.tableNameWithoutPrefix;
568
- this.target = this.target ? this.target : this.tableName;
569
- this.name = this.targetName ? this.targetName : this.tableName;
570
- this.expression = this.tableMetadataArgs.expression;
571
- this.withoutRowid =
572
- this.tableMetadataArgs.withoutRowid === true ? true : false;
573
- this.tablePath = this.connection.driver.buildTableName(this.tableName, this.schema, this.database);
574
- this.orderBy =
575
- typeof this.tableMetadataArgs.orderBy === "function"
576
- ? this.tableMetadataArgs.orderBy(this.propertiesMap)
577
- : this.tableMetadataArgs.orderBy; // todo: is propertiesMap available here? Looks like its not
578
- if (entitySkipConstructor !== undefined) {
579
- this.isAlwaysUsingConstructor = !entitySkipConstructor;
580
- }
581
- this.isJunction =
582
- this.tableMetadataArgs.type === "closure-junction" ||
583
- this.tableMetadataArgs.type === "junction";
584
- this.isClosureJunction =
585
- this.tableMetadataArgs.type === "closure-junction";
586
- }
587
- /**
588
- * Registers a new column in the entity and recomputes all depend properties.
589
- */
590
- registerColumn(column) {
591
- if (this.ownColumns.indexOf(column) !== -1)
592
- return;
593
- this.ownColumns.push(column);
594
- this.columns = this.embeddeds.reduce((columns, embedded) => columns.concat(embedded.columnsFromTree), this.ownColumns);
595
- this.primaryColumns = this.columns.filter((column) => column.isPrimary);
596
- this.hasMultiplePrimaryKeys = this.primaryColumns.length > 1;
597
- this.hasUUIDGeneratedColumns =
598
- this.columns.filter((column) => column.isGenerated || column.generationStrategy === "uuid").length > 0;
599
- this.propertiesMap = this.createPropertiesMap();
600
- if (this.childEntityMetadatas)
601
- this.childEntityMetadatas.forEach((entityMetadata) => entityMetadata.registerColumn(column));
602
- }
603
- /**
604
- * Creates a special object - all columns and relations of the object (plus columns and relations from embeds)
605
- * in a special format - { propertyName: propertyName }.
606
- *
607
- * example: Post{ id: number, name: string, counterEmbed: { count: number }, category: Category }.
608
- * This method will create following object:
609
- * { id: "id", counterEmbed: { count: "counterEmbed.count" }, category: "category" }
610
- */
611
- createPropertiesMap() {
612
- const map = {};
613
- this.columns.forEach((column) => OrmUtils.mergeDeep(map, column.createValueMap(column.propertyPath)));
614
- this.relations.forEach((relation) => OrmUtils.mergeDeep(map, relation.createValueMap(relation.propertyPath)));
615
- return map;
616
- }
617
- /**
618
- * Checks if entity has any column which rely on returning data,
619
- * e.g. columns with auto generated value, DEFAULT values considered as dependant of returning data.
620
- * For example, if we need to have RETURNING after INSERT (or we need returned id for DBs not supporting RETURNING),
621
- * it means we cannot execute bulk inserts in some cases.
622
- */
623
- getInsertionReturningColumns() {
624
- return this.columns.filter((column) => {
625
- return (column.default !== undefined ||
626
- column.isGenerated ||
627
- column.isCreateDate ||
628
- column.isUpdateDate ||
629
- column.isDeleteDate ||
630
- column.isVersion);
631
- });
632
- }
633
- }
634
- ;
635
- ({}); // @--end-of-file-for-module=taon-typeorm lib/typeorm/metadata/EntityMetadata.ts
636
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW50aXR5TWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC90YW9uLXR5cGVvcm0vcHJvamVjdHMvdGFvbi10eXBlb3JtL3NyYy9saWIvdHlwZW9ybS9tZXRhZGF0YS9FbnRpdHlNZXRhZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFLQSxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSx1Q0FBdUMsQ0FBQTtBQUlwRixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sa0JBQWtCLENBQUE7QUFlM0MsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sc0NBQXNDLENBQUE7QUFDbEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHFCQUFxQixDQUFBO0FBQ2pELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUU3Qzs7R0FFRztBQUNILE1BQU0sT0FBTyxjQUFjO0lBNmV2QixZQUFZLE9BT1g7UUFuZlEsbUJBQWEsR0FBRyxNQUFNLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUE7UUErQnJEOztXQUVHO1FBQ0gseUJBQW9CLEdBQXFCLEVBQUUsQ0FBQTtRQUUzQzs7OztXQUlHO1FBQ0gsb0JBQWUsR0FBZSxFQUFFLENBQUE7UUFFaEM7O1dBRUc7UUFDSCxjQUFTLEdBQWMsU0FBUyxDQUFBO1FBaUNoQzs7V0FFRztRQUNILGlCQUFZLEdBQWEsS0FBSyxDQUFBO1FBOEI5Qjs7V0FFRztRQUNILGdCQUFXLEdBQVksSUFBSSxDQUFBO1FBNEIzQjs7V0FFRztRQUNILDRCQUF1QixHQUFZLEtBQUssQ0FBQTtRQUV4Qzs7Ozs7V0FLRztRQUNILGVBQVUsR0FBWSxLQUFLLENBQUE7UUFFM0I7OztXQUdHO1FBQ0gsNkJBQXdCLEdBQVksSUFBSSxDQUFBO1FBWXhDOzs7V0FHRztRQUNILHNCQUFpQixHQUFZLEtBQUssQ0FBQTtRQUVsQzs7V0FFRztRQUNI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UnVubmVyLCBTZWxlY3RRdWVyeUJ1aWxkZXIgfSBmcm9tIFwiLi5cIlxuaW1wb3J0IHsgT2JqZWN0TGl0ZXJhbCB9IGZyb20gXCIuLi9jb21tb24vT2JqZWN0TGl0ZXJhbFwiXG5pbXBvcnQgeyBEYXRhU291cmNlIH0gZnJvbSBcIi4uL2RhdGEtc291cmNlL0RhdGFTb3VyY2VcIlxuaW1wb3J0IHsgQ2Fubm90Q3JlYXRlRW50aXR5SWRNYXBFcnJvciB9IGZyb20gXCIuLi9lcnJvci9DYW5ub3RDcmVhdGVFbnRpdHlJZE1hcEVycm9yXCJcbmltcG9ydCB7IE9yZGVyQnlDb25kaXRpb24gfSBmcm9tIFwiLi4vZmluZC1vcHRpb25zL09yZGVyQnlDb25kaXRpb25cIlxuaW1wb3J0IHsgVGFibGVNZXRhZGF0YUFyZ3MgfSBmcm9tIFwiLi4vbWV0YWRhdGEtYXJncy9UYWJsZU1ldGFkYXRhQXJnc1wiXG5pbXBvcnQgeyBUcmVlTWV0YWRhdGFBcmdzIH0gZnJvbSBcIi4uL21ldGFkYXRhLWFyZ3MvVHJlZU1ldGFkYXRhQXJnc1wiXG5pbXBvcnQgeyBPcm1VdGlscyB9IGZyb20gXCIuLi91dGlsL09ybVV0aWxzXCJcbmltcG9ydCB7IENoZWNrTWV0YWRhdGEgfSBmcm9tIFwiLi9DaGVja01ldGFkYXRhXCJcbmltcG9ydCB7IENvbHVtbk1ldGFkYXRhIH0gZnJvbSBcIi4vQ29sdW1uTWV0YWRhdGFcIlxuaW1wb3J0IHsgRW1iZWRkZWRNZXRhZGF0YSB9IGZyb20gXCIuL0VtYmVkZGVkTWV0YWRhdGFcIlxuaW1wb3J0IHsgRW50aXR5TGlzdGVuZXJNZXRhZGF0YSB9IGZyb20gXCIuL0VudGl0eUxpc3RlbmVyTWV0YWRhdGFcIlxuaW1wb3J0IHsgRXhjbHVzaW9uTWV0YWRhdGEgfSBmcm9tIFwiLi9FeGNsdXNpb25NZXRhZGF0YVwiXG5pbXBvcnQgeyBGb3JlaWduS2V5TWV0YWRhdGEgfSBmcm9tIFwiLi9Gb3JlaWduS2V5TWV0YWRhdGFcIlxuaW1wb3J0IHsgSW5kZXhNZXRhZGF0YSB9IGZyb20gXCIuL0luZGV4TWV0YWRhdGFcIlxuaW1wb3J0IHsgUmVsYXRpb25Db3VudE1ldGFkYXRhIH0gZnJvbSBcIi4vUmVsYXRpb25Db3VudE1ldGFkYXRhXCJcbmltcG9ydCB7IFJlbGF0aW9uSWRNZXRhZGF0YSB9IGZyb20gXCIuL1JlbGF0aW9uSWRNZXRhZGF0YVwiXG5pbXBvcnQgeyBSZWxhdGlvbk1ldGFkYXRhIH0gZnJvbSBcIi4vUmVsYXRpb25NZXRhZGF0YVwiXG5pbXBvcnQgeyBUYWJsZVR5cGUgfSBmcm9tIFwiLi90eXBlcy9UYWJsZVR5cGVzXCJcbmltcG9ydCB7IFRyZWVUeXBlIH0gZnJvbSBcIi4vdHlwZXMvVHJlZVR5cGVzXCJcbmltcG9ydCB7IFVuaXF1ZU1ldGFkYXRhIH0gZnJvbSBcIi4vVW5pcXVlTWV0YWRhdGFcIlxuaW1wb3J0IHsgQ2xvc3VyZVRyZWVPcHRpb25zIH0gZnJvbSBcIi4vdHlwZXMvQ2xvc3VyZVRyZWVPcHRpb25zXCJcbmltcG9ydCB7IEVudGl0eVByb3BlcnR5Tm90Rm91bmRFcnJvciB9IGZyb20gXCIuLi9lcnJvci9FbnRpdHlQcm9wZXJ0eU5vdEZvdW5kRXJyb3JcIlxuaW1wb3J0IHsgT2JqZWN0VXRpbHMgfSBmcm9tIFwiLi4vdXRpbC9PYmplY3RVdGlsc1wiXG5pbXBvcnQgeyBzaG9ydGVuIH0gZnJvbSBcIi4uL3V0aWwvU3RyaW5nVXRpbHNcIlxuXG4vKipcbiAqIENvbnRhaW5zIGFsbCBlbnRpdHkgbWV0YWRhdGEuXG4gKi9cbmV4cG9ydCBjbGFzcyBFbnRpdHlNZXRhZGF0YSB7XG4gICAgcmVhZG9ubHkgXCJAaW5zdGFuY2VvZlwiID0gU3ltYm9sLmZvcihcIkVudGl0eU1ldGFkYXRhXCIpXG5cblxuXG5cblxuICAgIC8qKlxuICAgICAqIENvbm5lY3Rpb24gd2hlcmUgdGhpcyBlbnRpdHkgbWV0YWRhdGEgaXMgY3JlYXRlZC5cbiAgICAgKi9cbiAgICBjb25uZWN0aW9uOiBEYXRhU291cmNlXG5cbiAgICAvKipcbiAgICAgKiBNZXRhZGF0YSBhcmd1bWVudHMgdXNlZCB0byBidWlsZCB0aGlzIGVudGl0eSBtZXRhZGF0YS5cbiAgICAgKi9cbiAgICB0YWJsZU1ldGFkYXRhQXJnczogVGFibGVNZXRhZGF0YUFyZ3NcblxuICAgIC8qKlxuICAgICAqIElmIGVudGl0eSdzIHRhYmxlIGlzIGEgY2xvc3VyZS10eXBlZCB0YWJsZSwgdGhlbiB0aGlzIGVudGl0eSB3aWxsIGhhdmUgYSBjbG9zdXJlIGp1bmN0aW9uIHRhYmxlIG1ldGFkYXRhLlxuICAgICAqL1xuICAgIGNsb3N1cmVKdW5jdGlvblRhYmxlOiBFbnRpdHlNZXRhZGF0YVxuXG4gICAgLyoqXG4gICAgICogSWYgdGhpcyBpcyBlbnRpdHkgbWV0YWRhdGEgZm9yIGEganVuY3Rpb24gY2xvc3VyZSB0YWJsZSB0aGVuIGl0cyBvd25lciBjbG9zdXJlIHRhYmxlIG1ldGFkYXRhIHdpbGwgYmUgc2V0IGhlcmUuXG4gICAgICovXG4gICAgcGFyZW50Q2xvc3VyZUVudGl0eU1ldGFkYXRhOiBFbnRpdHlNZXRhZGF0YVxuXG4gICAgLyoqXG4gICAgICogUGFyZW50J3MgZW50aXR5IG1ldGFkYXRhLiBVc2VkIGluIGluaGVyaXRhbmNlIHBhdHRlcm5zLlxuICAgICAqL1xuICAgIHBhcmVudEVudGl0eU1ldGFkYXRhOiBFbnRpdHlNZXRhZGF0YVxuXG4gICAgLyoqXG4gICAgICogQ2hpbGRyZW4gZW50aXR5IG1ldGFkYXRhcy4gVXNlZCBpbiBpbmhlcml0YW5jZSBwYXR0ZXJucy5cbiAgICAgKi9cbiAgICBjaGlsZEVudGl0eU1ldGFkYXRhczogRW50aXR5TWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBBbGwgXCJpbmhlcml0YW5jZSB0cmVlXCIgZnJvbSBhIHRhcmdldCBlbnRpdHkuXG4gICAgICogRm9yIGV4YW1wbGUgZm9yIHRhcmdldCBQb3N0IDwgQ29udGVudE1vZGVsIDwgVW5pdCBpdCB3aWxsIGJlIGFuIGFycmF5IG9mIFtQb3N0LCBDb250ZW50TW9kZWwsIFVuaXRdLlxuICAgICAqIEl0IGFsc28gY29udGFpbnMgY2hpbGQgZW50aXRpZXMgZm9yIHNpbmdsZSB0YWJsZSBpbmhlcml0YW5jZS5cbiAgICAgKi9cbiAgICBpbmhlcml0YW5jZVRyZWU6IEZ1bmN0aW9uW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogVGFibGUgdHlwZS4gVGFibGVzIGNhbiBiZSBjbG9zdXJlLCBqdW5jdGlvbiwgZXRjLlxuICAgICAqL1xuICAgIHRhYmxlVHlwZTogVGFibGVUeXBlID0gXCJyZWd1bGFyXCJcblxuICAgIC8qKlxuICAgICAqIFRhcmdldCBjbGFzcyB0byB3aGljaCB0aGlzIGVudGl0eSBtZXRhZGF0YSBpcyBiaW5kLlxuICAgICAqIE5vdGUsIHRoYXQgd2hlbiB1c2luZyB0YWJsZSBpbmhlcml0YW5jZSBwYXR0ZXJucyB0YXJnZXQgY2FuIGJlIGRpZmZlcmVudCByYXRoZXIgdGhlbiB0YWJsZSdzIHRhcmdldC5cbiAgICAgKiBGb3IgdmlydHVhbCB0YWJsZXMgd2hpY2ggbGFjayBvZiByZWFsIGVudGl0eSAobGlrZSBqdW5jdGlvbiB0YWJsZXMpIHRhcmdldCBpcyBlcXVhbCB0byB0aGVpciB0YWJsZSBuYW1lLlxuICAgICAqL1xuICAgIHRhcmdldDogRnVuY3Rpb24gfCBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIG5hbWUgb2YgdGhlIHRhcmdldC5cbiAgICAgKi9cbiAgICB0YXJnZXROYW1lOiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIEVudGl0eSdzIG5hbWUuXG4gICAgICogRXF1YWwgdG8gZW50aXR5IHRhcmdldCBjbGFzcydzIG5hbWUgaWYgdGFyZ2V0IGlzIHNldCB0byB0YWJsZS5cbiAgICAgKiBJZiB0YXJnZXQgY2xhc3MgaXMgbm90IHRoZW4gdGhlbiBpdCBlcXVhbHMgdG8gdGFibGUgbmFtZS5cbiAgICAgKi9cbiAgICBuYW1lOiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIFZpZXcncyBleHByZXNzaW9uLlxuICAgICAqIFVzZWQgaW4gdmlld3NcbiAgICAgKi9cbiAgICBleHByZXNzaW9uPzogc3RyaW5nIHwgKChjb25uZWN0aW9uOiBEYXRhU291cmNlKSA9PiBTZWxlY3RRdWVyeUJ1aWxkZXI8YW55PilcblxuICAgIC8qKlxuICAgICAqIFZpZXcncyBkZXBlbmRlbmNpZXMuXG4gICAgICogVXNlZCBpbiB2aWV3c1xuICAgICAqL1xuICAgIGRlcGVuZHNPbj86IFNldDxGdW5jdGlvbiB8IHN0cmluZz5cblxuICAgIC8qKlxuICAgICAqIEVuYWJsZXMgU3FsaXRlIFwiV0lUSE9VVCBST1dJRFwiIG1vZGlmaWVyIGZvciB0aGUgXCJDUkVBVEUgVEFCTEVcIiBzdGF0ZW1lbnRcbiAgICAgKi9cbiAgICB3aXRob3V0Um93aWQ/OiBib29sZWFuID0gZmFsc2VcblxuICAgIC8qKlxuICAgICAqIE9yaWdpbmFsIHVzZXItZ2l2ZW4gdGFibGUgbmFtZSAodGFrZW4gZnJvbSBzY2hlbWEgb3IgQEVudGl0eSh0YWJsZU5hbWUpIGRlY29yYXRvcikuXG4gICAgICogSWYgdXNlciBoYXZlbid0IHNwZWNpZmllZCBhIHRhYmxlIG5hbWUgdGhpcyBwcm9wZXJ0eSB3aWxsIGJlIHVuZGVmaW5lZC5cbiAgICAgKi9cbiAgICBnaXZlblRhYmxlTmFtZT86IHN0cmluZ1xuXG4gICAgLyoqXG4gICAgICogRW50aXR5IHRhYmxlIG5hbWUgaW4gdGhlIGRhdGFiYXNlLlxuICAgICAqIFRoaXMgaXMgZmluYWwgdGFibGUgbmFtZSBvZiB0aGUgZW50aXR5LlxuICAgICAqIFRoaXMgbmFtZSBhbHJlYWR5IHBhc3NlZCBuYW1pbmcgc3RyYXRlZ3ksIGFuZCBnZW5lcmF0ZWQgYmFzZWQgb25cbiAgICAgKiBtdWx0aXBsZSBjcml0ZXJpYSwgaW5jbHVkaW5nIHVzZXIgdGFibGUgbmFtZSBhbmQgZ2xvYmFsIHRhYmxlIHByZWZpeC5cbiAgICAgKi9cbiAgICB0YWJsZU5hbWU6IHN0cmluZ1xuXG4gICAgLyoqXG4gICAgICogRW50aXR5IHRhYmxlIHBhdGguIENvbnRhaW5zIGRhdGFiYXNlIG5hbWUsIHNjaGVtYSBuYW1lIGFuZCB0YWJsZSBuYW1lLlxuICAgICAqIEUuZy4gbXlEQi5teVNjaGVtYS5teVRhYmxlXG4gICAgICovXG4gICAgdGFibGVQYXRoOiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIHRhYmxlIG5hbWUgd2l0aG91dCBnbG9iYWwgdGFibGUgcHJlZml4LlxuICAgICAqIFdoZW4gcXVlcnlpbmcgdGFibGUgeW91IG5lZWQgYSB0YWJsZSBuYW1lIHdpdGggcHJlZml4LCBidXQgaW4gc29tZSBzY2VuYXJpb3MsXG4gICAgICogZm9yIGV4YW1wbGUgd2hlbiB5b3Ugd2FudCB0byBuYW1lIGEganVuY3Rpb24gdGFibGUgdGhhdCBjb250YWlucyBuYW1lcyBvZiB0d28gb3RoZXIgdGFibGVzLFxuICAgICAqIHlvdSBtYXkgd2FudCBhIHRhYmxlIG5hbWUgd2l0aG91dCBwcmVmaXguXG4gICAgICovXG4gICAgdGFibGVOYW1lV2l0aG91dFByZWZpeDogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgaWYgc2NoZW1hIHdpbGwgYmUgc3luY2hyb25pemVkIGZvciB0aGlzIGVudGl0eSBvciBub3QuXG4gICAgICovXG4gICAgc3luY2hyb25pemU6IGJvb2xlYW4gPSB0cnVlXG5cbiAgICAvKipcbiAgICAgKiBUYWJsZSdzIGRhdGFiYXNlIGVuZ2luZSB0eXBlIChsaWtlIFwiSW5ub0RCXCIsIFwiTXlJU0FNXCIsIGV0YykuXG4gICAgICovXG4gICAgZW5naW5lPzogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBEYXRhYmFzZSBuYW1lLlxuICAgICAqL1xuICAgIGRhdGFiYXNlPzogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBTY2hlbWEgbmFtZS4gVXNlZCBpbiBQb3N0Z3JlcyBhbmQgU3FsIFNlcnZlci5cbiAgICAgKi9cbiAgICBzY2hlbWE/OiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIFNwZWNpZmllcyBhIGRlZmF1bHQgb3JkZXIgYnkgdXNlZCBmb3IgcXVlcmllcyBmcm9tIHRoaXMgdGFibGUgd2hlbiBubyBleHBsaWNpdCBvcmRlciBieSBpcyBzcGVjaWZpZWQuXG4gICAgICovXG4gICAgb3JkZXJCeT86IE9yZGVyQnlDb25kaXRpb25cblxuICAgIC8qKlxuICAgICAqIElmIHRoaXMgZW50aXR5IG1ldGFkYXRhJ3MgdGFibGUgdXNpbmcgb25lIG9mIHRoZSBpbmhlcml0YW5jZSBwYXR0ZXJucyxcbiAgICAgKiB0aGVuIHRoaXMgd2lsbCBjb250YWluIHdoYXQgcGF0dGVybiBpdCB1c2VzLlxuICAgICAqL1xuICAgIGluaGVyaXRhbmNlUGF0dGVybj86IFwiU1RJXCIgLyp8XCJDVElcIiovXG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgdGhlcmUgYW55IG5vbi1udWxsYWJsZSBjb2x1bW4gZXhpc3QgaW4gdGhpcyBlbnRpdHkuXG4gICAgICovXG4gICAgaGFzTm9uTnVsbGFibGVSZWxhdGlvbnM6IGJvb2xlYW4gPSBmYWxzZVxuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIHRoaXMgZW50aXR5IG1ldGFkYXRhIG9mIGEganVuY3Rpb24gdGFibGUsIG9yIG5vdC5cbiAgICAgKiBKdW5jdGlvbiB0YWJsZSBpcyBhIHRhYmxlIGNyZWF0ZWQgYnkgbWFueS10by1tYW55IHJlbGF0aW9uc2hpcC5cbiAgICAgKlxuICAgICAqIEl0cyBhbHNvIHBvc3NpYmxlIHRvIHVuZGVyc3RhbmQgaWYgZW50aXR5IGlzIGp1bmN0aW9uIHZpYSB0YWJsZVR5cGUuXG4gICAgICovXG4gICAgaXNKdW5jdGlvbjogYm9vbGVhbiA9IGZhbHNlXG5cbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGVudGl0eSBzaG91bGQgYmUgaW5zdGFudGlhdGVkIHVzaW5nIHRoZSBjb25zdHJ1Y3RvclxuICAgICAqIG9yIHZpYSBhbGxvY2F0aW5nIGEgbmV3IG9iamVjdCB2aWEgYE9iamVjdC5jcmVhdGUoKWAuXG4gICAgICovXG4gICAgaXNBbHdheXNVc2luZ0NvbnN0cnVjdG9yOiBib29sZWFuID0gdHJ1ZVxuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIHRoaXMgZW50aXR5IGlzIGEgdHJlZSwgd2hhdCB0eXBlIG9mIHRyZWUgaXQgaXMuXG4gICAgICovXG4gICAgdHJlZVR5cGU/OiBUcmVlVHlwZVxuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIHRoaXMgZW50aXR5IGlzIGEgdHJlZSwgd2hhdCBvcHRpb25zIG9mIHRyZWUgaXQgaGFzLlxuICAgICAqL1xuICAgIHRyZWVPcHRpb25zPzogQ2xvc3VyZVRyZWVPcHRpb25zXG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgdGhpcyB0YWJsZSBpcyBhIGp1bmN0aW9uIHRhYmxlIG9mIHRoZSBjbG9zdXJlIHRhYmxlLlxuICAgICAqIFRoaXMgdHlwZSBpcyBmb3IgdGFibGVzIHRoYXQgY29udGFpbiBqdW5jdGlvbiBtZXRhZGF0YSBvZiB0aGUgY2xvc3VyZSB0YWJsZXMuXG4gICAgICovXG4gICAgaXNDbG9zdXJlSnVuY3Rpb246IGJvb2xlYW4gPSBmYWxzZVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIGVudGl0eSdzIHRhYmxlIGhhcyBtdWx0aXBsZSBwcmltYXJ5IGNvbHVtbnMuXG4gICAgICovXG4gICAgaGFzTXVsdGlwbGVQcmltYXJ5S2V5czogYm9vbGVhbiA9IGZhbHNlXG5cbiAgICAvKipcbiAgICAgKiBJbmRpY2F0ZXMgaWYgdGhpcyBlbnRpdHkgbWV0YWRhdGEgaGFzIHV1aWQgZ2VuZXJhdGVkIGNvbHVtbnMuXG4gICAgICovXG4gICAgaGFzVVVJREdlbmVyYXRlZENvbHVtbnM6IGJvb2xlYW4gPSBmYWxzZVxuXG4gICAgLyoqXG4gICAgICogSWYgdGhpcyBlbnRpdHkgbWV0YWRhdGEgaXMgYSBjaGlsZCB0YWJsZSBvZiBzb21lIHRhYmxlLCBpdCBzaG91bGQgaGF2ZSBhIGRpc2NyaW1pbmF0b3IgdmFsdWUuXG4gICAgICogVXNlZCB0byBzdG9yZSBhIHZhbHVlIGluIGEgZGlzY3JpbWluYXRvciBjb2x1bW4uXG4gICAgICovXG4gICAgZGlzY3JpbWluYXRvclZhbHVlPzogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBFbnRpdHkncyBjb2x1bW4gbWV0YWRhdGFzIGRlZmluZWQgYnkgdXNlci5cbiAgICAgKi9cbiAgICBvd25Db2x1bW5zOiBDb2x1bW5NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIENvbHVtbnMgb2YgdGhlIGVudGl0eSwgaW5jbHVkaW5nIGNvbHVtbnMgdGhhdCBhcmUgY29taW5nIGZyb20gdGhlIGVtYmVkZGVkcyBvZiB0aGlzIGVudGl0eS5cbiAgICAgKi9cbiAgICBjb2x1bW5zOiBDb2x1bW5NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEFuY2VzdG9yIGNvbHVtbnMgdXNlZCBvbmx5IGluIGNsb3N1cmUganVuY3Rpb24gdGFibGVzLlxuICAgICAqL1xuICAgIGFuY2VzdG9yQ29sdW1uczogQ29sdW1uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBEZXNjZW5kYW50IGNvbHVtbnMgdXNlZCBvbmx5IGluIGNsb3N1cmUganVuY3Rpb24gdGFibGVzLlxuICAgICAqL1xuICAgIGRlc2NlbmRhbnRDb2x1bW5zOiBDb2x1bW5NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEFsbCBjb2x1bW5zIGV4Y2VwdCBmb3IgdmlydHVhbCBjb2x1bW5zLlxuICAgICAqL1xuICAgIG5vblZpcnR1YWxDb2x1bW5zOiBDb2x1bW5NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEluIHRoZSBjYXNlIGlmIHRoaXMgZW50aXR5IG1ldGFkYXRhIGlzIGp1bmN0aW9uIHRhYmxlJ3MgZW50aXR5IG1ldGFkYXRhLFxuICAgICAqIHRoaXMgd2lsbCBjb250YWluIGFsbCByZWZlcmVuY2VkIGNvbHVtbnMgb2Ygb3duZXIgZW50aXR5LlxuICAgICAqL1xuICAgIG93bmVyQ29sdW1uczogQ29sdW1uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBJbiB0aGUgY2FzZSBpZiB0aGlzIGVudGl0eSBtZXRhZGF0YSBpcyBqdW5jdGlvbiB0YWJsZSdzIGVudGl0eSBtZXRhZGF0YSxcbiAgICAgKiB0aGlzIHdpbGwgY29udGFpbiBhbGwgcmVmZXJlbmNlZCBjb2x1bW5zIG9mIGludmVyc2UgZW50aXR5LlxuICAgICAqL1xuICAgIGludmVyc2VDb2x1bW5zOiBDb2x1bW5NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGNvbHVtbiB3aXRoIGdlbmVyYXRlZCBmbGFnLlxuICAgICAqL1xuICAgIGdlbmVyYXRlZENvbHVtbnM6IENvbHVtbk1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgb2JqZWN0IGlkIGNvbHVtbiB1c2VkIHdpdGggbW9uZ29kYiBkYXRhYmFzZS5cbiAgICAgKi9cbiAgICBvYmplY3RJZENvbHVtbj86IENvbHVtbk1ldGFkYXRhXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIGVudGl0eSBjb2x1bW4gd2hpY2ggY29udGFpbnMgYSBjcmVhdGUgZGF0ZSB2YWx1ZS5cbiAgICAgKi9cbiAgICBjcmVhdGVEYXRlQ29sdW1uPzogQ29sdW1uTWV0YWRhdGFcblxuICAgIC8qKlxuICAgICAqIEdldHMgZW50aXR5IGNvbHVtbiB3aGljaCBjb250YWlucyBhbiB1cGRhdGUgZGF0ZSB2YWx1ZS5cbiAgICAgKi9cbiAgICB1cGRhdGVEYXRlQ29sdW1uPzogQ29sdW1uTWV0YWRhdGFcblxuICAgIC8qKlxuICAgICAqIEdldHMgZW50aXR5IGNvbHVtbiB3aGljaCBjb250YWlucyBhIGRlbGV0ZSBkYXRlIHZhbHVlLlxuICAgICAqL1xuICAgIGRlbGV0ZURhdGVDb2x1bW4/OiBDb2x1bW5NZXRhZGF0YVxuXG4gICAgLyoqXG4gICAgICogR2V0cyBlbnRpdHkgY29sdW1uIHdoaWNoIGNvbnRhaW5zIGFuIGVudGl0eSB2ZXJzaW9uLlxuICAgICAqL1xuICAgIHZlcnNpb25Db2x1bW4/OiBDb2x1bW5NZXRhZGF0YVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgZGlzY3JpbWluYXRvciBjb2x1bW4gdXNlZCB0byBzdG9yZSBlbnRpdHkgaWRlbnRpZmljYXRvciBpbiBzaW5nbGUtdGFibGUgaW5oZXJpdGFuY2UgdGFibGVzLlxuICAgICAqL1xuICAgIGRpc2NyaW1pbmF0b3JDb2x1bW4/OiBDb2x1bW5NZXRhZGF0YVxuXG4gICAgLyoqXG4gICAgICogU3BlY2lhbCBjb2x1bW4gdGhhdCBzdG9yZXMgdHJlZSBsZXZlbCBpbiB0cmVlIGVudGl0aWVzLlxuICAgICAqL1xuICAgIHRyZWVMZXZlbENvbHVtbj86IENvbHVtbk1ldGFkYXRhXG5cbiAgICAvKipcbiAgICAgKiBOZXN0ZWQgc2V0J3MgbGVmdCB2YWx1ZSBjb2x1bW4uXG4gICAgICogVXNlZCBvbmx5IGluIHRyZWUgZW50aXRpZXMgd2l0aCBuZXN0ZWQgc2V0IHBhdHRlcm4gYXBwbGllZC5cbiAgICAgKi9cbiAgICBuZXN0ZWRTZXRMZWZ0Q29sdW1uPzogQ29sdW1uTWV0YWRhdGFcblxuICAgIC8qKlxuICAgICAqIE5lc3RlZCBzZXQncyByaWdodCB2YWx1ZSBjb2x1bW4uXG4gICAgICogVXNlZCBvbmx5IGluIHRyZWUgZW50aXRpZXMgd2l0aCBuZXN0ZWQgc2V0IHBhdHRlcm4gYXBwbGllZC5cbiAgICAgKi9cbiAgICBuZXN0ZWRTZXRSaWdodENvbHVtbj86IENvbHVtbk1ldGFkYXRhXG5cbiAgICAvKipcbiAgICAgKiBNYXRlcmlhbGl6ZWQgcGF0aCBjb2x1bW4uXG4gICAgICogVXNlZCBvbmx5IGluIHRyZWUgZW50aXRpZXMgd2l0aCBtYXRlcmlhbGl6ZWQgcGF0aCBwYXR0ZXJuIGFwcGxpZWQuXG4gICAgICovXG4gICAgbWF0ZXJpYWxpemVkUGF0aENvbHVtbj86IENvbHVtbk1ldGFkYXRhXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBwcmltYXJ5IGNvbHVtbnMuXG4gICAgICovXG4gICAgcHJpbWFyeUNvbHVtbnM6IENvbHVtbk1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogRW50aXR5J3MgcmVsYXRpb24gbWV0YWRhdGFzLlxuICAgICAqL1xuICAgIG93blJlbGF0aW9uczogUmVsYXRpb25NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIFJlbGF0aW9ucyBvZiB0aGUgZW50aXR5LCBpbmNsdWRpbmcgcmVsYXRpb25zIHRoYXQgYXJlIGNvbWluZyBmcm9tIHRoZSBlbWJlZGRlZHMgb2YgdGhpcyBlbnRpdHkuXG4gICAgICovXG4gICAgcmVsYXRpb25zOiBSZWxhdGlvbk1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogTGlzdCBvZiBlYWdlciByZWxhdGlvbnMgdGhpcyBtZXRhZGF0YSBoYXMuXG4gICAgICovXG4gICAgZWFnZXJSZWxhdGlvbnM6IFJlbGF0aW9uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBMaXN0IG9mIGVhZ2VyIHJlbGF0aW9ucyB0aGlzIG1ldGFkYXRhIGhhcy5cbiAgICAgKi9cbiAgICBsYXp5UmVsYXRpb25zOiBSZWxhdGlvbk1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogR2V0cyBvbmx5IG9uZS10by1vbmUgcmVsYXRpb25zIG9mIHRoZSBlbnRpdHkuXG4gICAgICovXG4gICAgb25lVG9PbmVSZWxhdGlvbnM6IFJlbGF0aW9uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIG9ubHkgb3duZXIgb25lLXRvLW9uZSByZWxhdGlvbnMgb2YgdGhlIGVudGl0eS5cbiAgICAgKi9cbiAgICBvd25lck9uZVRvT25lUmVsYXRpb25zOiBSZWxhdGlvbk1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogR2V0cyBvbmx5IG9uZS10by1tYW55IHJlbGF0aW9ucyBvZiB0aGUgZW50aXR5LlxuICAgICAqL1xuICAgIG9uZVRvTWFueVJlbGF0aW9uczogUmVsYXRpb25NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEdldHMgb25seSBtYW55LXRvLW9uZSByZWxhdGlvbnMgb2YgdGhlIGVudGl0eS5cbiAgICAgKi9cbiAgICBtYW55VG9PbmVSZWxhdGlvbnM6IFJlbGF0aW9uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIG9ubHkgbWFueS10by1tYW55IHJlbGF0aW9ucyBvZiB0aGUgZW50aXR5LlxuICAgICAqL1xuICAgIG1hbnlUb01hbnlSZWxhdGlvbnM6IFJlbGF0aW9uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIG9ubHkgb3duZXIgbWFueS10by1tYW55IHJlbGF0aW9ucyBvZiB0aGUgZW50aXR5LlxuICAgICAqL1xuICAgIG93bmVyTWFueVRvTWFueVJlbGF0aW9uczogUmVsYXRpb25NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEdldHMgb25seSBvd25lciBvbmUtdG8tb25lIGFuZCBtYW55LXRvLW9uZSByZWxhdGlvbnMuXG4gICAgICovXG4gICAgcmVsYXRpb25zV2l0aEpvaW5Db2x1bW5zOiBSZWxhdGlvbk1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogVHJlZSBwYXJlbnQgcmVsYXRpb24uIFVzZWQgb25seSBpbiB0cmVlLXRhYmxlcy5cbiAgICAgKi9cbiAgICB0cmVlUGFyZW50UmVsYXRpb24/OiBSZWxhdGlvbk1ldGFkYXRhXG5cbiAgICAvKipcbiAgICAgKiBUcmVlIGNoaWxkcmVuIHJlbGF0aW9uLiBVc2VkIG9ubHkgaW4gdHJlZS10YWJsZXMuXG4gICAgICovXG4gICAgdHJlZUNoaWxkcmVuUmVsYXRpb24/OiBSZWxhdGlvbk1ldGFkYXRhXG5cbiAgICAvKipcbiAgICAgKiBFbnRpdHkncyByZWxhdGlvbiBpZCBtZXRhZGF0YXMuXG4gICAgICovXG4gICAgcmVsYXRpb25JZHM6IFJlbGF0aW9uSWRNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEVudGl0eSdzIHJlbGF0aW9uIGlkIG1ldGFkYXRhcy5cbiAgICAgKi9cbiAgICByZWxhdGlvbkNvdW50czogUmVsYXRpb25Db3VudE1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogRW50aXR5J3MgZm9yZWlnbiBrZXkgbWV0YWRhdGFzLlxuICAgICAqL1xuICAgIGZvcmVpZ25LZXlzOiBGb3JlaWduS2V5TWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBFbnRpdHkncyBlbWJlZGRlZCBtZXRhZGF0YXMuXG4gICAgICovXG4gICAgZW1iZWRkZWRzOiBFbWJlZGRlZE1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogQWxsIGVtYmVkZGVkcyAtIGVtYmVkZGVkcyBmcm9tIHRoaXMgZW50aXR5IG1ldGFkYXRhIGFuZCBmcm9tIGFsbCBjaGlsZCBlbWJlZGRlZHMsIGV0Yy5cbiAgICAgKi9cbiAgICBhbGxFbWJlZGRlZHM6IEVtYmVkZGVkTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBFbnRpdHkncyBvd24gaW5kaWNlcy5cbiAgICAgKi9cbiAgICBvd25JbmRpY2VzOiBJbmRleE1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogRW50aXR5J3MgaW5kZXggbWV0YWRhdGFzLlxuICAgICAqL1xuICAgIGluZGljZXM6IEluZGV4TWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBFbnRpdHkncyB1bmlxdWUgbWV0YWRhdGFzLlxuICAgICAqL1xuICAgIHVuaXF1ZXM6IFVuaXF1ZU1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogRW50aXR5J3Mgb3duIHVuaXF1ZXMuXG4gICAgICovXG4gICAgb3duVW5pcXVlczogVW5pcXVlTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBFbnRpdHkncyBjaGVjayBtZXRhZGF0YXMuXG4gICAgICovXG4gICAgY2hlY2tzOiBDaGVja01ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogRW50aXR5J3MgZXhjbHVzaW9uIG1ldGFkYXRhcy5cbiAgICAgKi9cbiAgICBleGNsdXNpb25zOiBFeGNsdXNpb25NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEVudGl0eSdzIG93biBsaXN0ZW5lciBtZXRhZGF0YXMuXG4gICAgICovXG4gICAgb3duTGlzdGVuZXJzOiBFbnRpdHlMaXN0ZW5lck1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogRW50aXR5IGxpc3RlbmVyIG1ldGFkYXRhcy5cbiAgICAgKi9cbiAgICBsaXN0ZW5lcnM6IEVudGl0eUxpc3RlbmVyTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBMaXN0ZW5lciBtZXRhZGF0YXMgd2l0aCBcIkFGVEVSIExPQURcIiB0eXBlLlxuICAgICAqL1xuICAgIGFmdGVyTG9hZExpc3RlbmVyczogRW50aXR5TGlzdGVuZXJNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIExpc3RlbmVyIG1ldGFkYXRhcyB3aXRoIFwiQUZURVIgSU5TRVJUXCIgdHlwZS5cbiAgICAgKi9cbiAgICBiZWZvcmVJbnNlcnRMaXN0ZW5lcnM6IEVudGl0eUxpc3RlbmVyTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBMaXN0ZW5lciBtZXRhZGF0YXMgd2l0aCBcIkFGVEVSIElOU0VSVFwiIHR5cGUuXG4gICAgICovXG4gICAgYWZ0ZXJJbnNlcnRMaXN0ZW5lcnM6IEVudGl0eUxpc3RlbmVyTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBMaXN0ZW5lciBtZXRhZGF0YXMgd2l0aCBcIkFGVEVSIFVQREFURVwiIHR5cGUuXG4gICAgICovXG4gICAgYmVmb3JlVXBkYXRlTGlzdGVuZXJzOiBFbnRpdHlMaXN0ZW5lck1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogTGlzdGVuZXIgbWV0YWRhdGFzIHdpdGggXCJBRlRFUiBVUERBVEVcIiB0eXBlLlxuICAgICAqL1xuICAgIGFmdGVyVXBkYXRlTGlzdGVuZXJzOiBFbnRpdHlMaXN0ZW5lck1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogTGlzdGVuZXIgbWV0YWRhdGFzIHdpdGggXCJBRlRFUiBSRU1PVkVcIiB0eXBlLlxuICAgICAqL1xuICAgIGJlZm9yZVJlbW92ZUxpc3RlbmVyczogRW50aXR5TGlzdGVuZXJNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIExpc3RlbmVyIG1ldGFkYXRhcyB3aXRoIFwiQkVGT1JFIFNPRlQgUkVNT1ZFXCIgdHlwZS5cbiAgICAgKi9cbiAgICBiZWZvcmVTb2Z0UmVtb3ZlTGlzdGVuZXJzOiBFbnRpdHlMaXN0ZW5lck1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogTGlzdGVuZXIgbWV0YWRhdGFzIHdpdGggXCJCRUZPUkUgUkVDT1ZFUlwiIHR5cGUuXG4gICAgICovXG4gICAgYmVmb3JlUmVjb3Zlckxpc3RlbmVyczogRW50aXR5TGlzdGVuZXJNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIExpc3RlbmVyIG1ldGFkYXRhcyB3aXRoIFwiQUZURVIgUkVNT1ZFXCIgdHlwZS5cbiAgICAgKi9cbiAgICBhZnRlclJlbW92ZUxpc3RlbmVyczogRW50aXR5TGlzdGVuZXJNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIExpc3RlbmVyIG1ldGFkYXRhcyB3aXRoIFwiQUZURVIgU09GVCBSRU1PVkVcIiB0eXBlLlxuICAgICAqL1xuICAgIGFmdGVyU29mdFJlbW92ZUxpc3RlbmVyczogRW50aXR5TGlzdGVuZXJNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIExpc3RlbmVyIG1ldGFkYXRhcyB3aXRoIFwiQUZURVIgUkVDT1ZFUlwiIHR5cGUuXG4gICAgICovXG4gICAgYWZ0ZXJSZWNvdmVyTGlzdGVuZXJzOiBFbnRpdHlMaXN0ZW5lck1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogTWFwIG9mIGNvbHVtbnMgYW5kIHJlbGF0aW9ucyBvZiB0aGUgZW50aXR5LlxuICAgICAqXG4gICAgICogZXhhbXBsZTogUG9zdHsgaWQ6IG51bWJlciwgbmFtZTogc3RyaW5nLCBjb3VudGVyRW1iZWQ6IHsgY291bnQ6IG51bWJlciB9LCBjYXRlZ29yeTogQ2F0ZWdvcnkgfS5cbiAgICAgKiBUaGlzIG1ldGhvZCB3aWxsIGNyZWF0ZSBmb2xsb3dpbmcgb2JqZWN0OlxuICAgICAqIHsgaWQ6IFwiaWRcIiwgY291bnRlckVtYmVkOiB7IGNvdW50OiBcImNvdW50ZXJFbWJlZC5jb3VudFwiIH0sIGNhdGVnb3J5OiBcImNhdGVnb3J5XCIgfVxuICAgICAqL1xuICAgIHByb3BlcnRpZXNNYXA6IE9iamVjdExpdGVyYWxcblxuXG5cblxuXG4gICAgY29uc3RydWN0b3Iob3B0aW9uczoge1xuICAgICAgICBjb25uZWN0aW9uOiBEYXRhU291cmNlXG4gICAgICAgIGluaGVyaXRhbmNlVHJlZT86IEZ1bmN0aW9uW11cbiAgICAgICAgaW5oZXJpdGFuY2VQYXR0ZXJuPzogXCJTVElcIiAvKnxcIkNUSVwiKi9cbiAgICAgICAgdGFibGVUcmVlPzogVHJlZU1ldGFkYXRhQXJnc1xuICAgICAgICBwYXJlbnRDbG9zdXJlRW50aXR5TWV0YWRhdGE/OiBFbnRpdHlNZXRhZGF0YVxuICAgICAgICBhcmdzOiBUYWJsZU1ldGFkYXRhQXJnc1xuICAgIH0pIHtcbiAgICAgICAgdGhpcy5jb25uZWN0aW9uID0gb3B0aW9ucy5jb25uZWN0aW9uXG4gICAgICAgIHRoaXMuaW5oZXJpdGFuY2VUcmVlID0gb3B0aW9ucy5pbmhlcml0YW5jZVRyZWUgfHwgW11cbiAgICAgICAgdGhpcy5pbmhlcml0YW5jZVBhdHRlcm4gPSBvcHRpb25zLmluaGVyaXRhbmNlUGF0dGVyblxuICAgICAgICB0aGlzLnRyZWVUeXBlID0gb3B0aW9ucy50YWJsZVRyZWUgPyBvcHRpb25zLnRhYmxlVHJlZS50eXBlIDogdW5kZWZpbmVkXG4gICAgICAgIHRoaXMudHJlZU9wdGlvbnMgPSBvcHRpb25zLnRhYmxlVHJlZVxuICAgICAgICAgICAgPyBvcHRpb25zLnRhYmxlVHJlZS5vcHRpb25zXG4gICAgICAgICAgICA6IHVuZGVmaW5lZFxuICAgICAgICB0aGlzLnBhcmVudENsb3N1cmVFbnRpdHlNZXRhZGF0YSA9IG9wdGlvbnMucGFyZW50Q2xvc3VyZUVudGl0eU1ldGFkYXRhIVxuICAgICAgICB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzID0gb3B0aW9ucy5hcmdzXG4gICAgICAgIHRoaXMudGFyZ2V0ID0gdGhpcy50YWJsZU1ldGFkYXRhQXJncy50YXJnZXRcbiAgICAgICAgdGhpcy50YWJsZVR5cGUgPSB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnR5cGVcbiAgICAgICAgdGhpcy5leHByZXNzaW9uID0gdGhpcy50YWJsZU1ldGFkYXRhQXJncy5leHByZXNzaW9uXG4gICAgICAgIHRoaXMud2l0aG91dFJvd2lkID0gdGhpcy50YWJsZU1ldGFkYXRhQXJncy53aXRob3V0Um93aWRcbiAgICAgICAgdGhpcy5kZXBlbmRzT24gPSB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLmRlcGVuZHNPblxuICAgIH1cblxuXG5cblxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIG5ldyBlbnRpdHkuXG4gICAgICovXG4gICAgY3JlYXRlKFxuICAgICAgICBxdWVyeVJ1bm5lcj86IFF1ZXJ5UnVubmVyLFxuICAgICAgICBvcHRpb25zPzogeyBmcm9tRGVzZXJpYWxpemVyPzogYm9vbGVhbjsgcG9qbz86IGJvb2xlYW4gfSxcbiAgICApOiBhbnkge1xuICAgICAgICBjb25zdCBwb2pvID0gb3B0aW9ucyAmJiBvcHRpb25zLnBvam8gPT09IHRydWUgPyB0cnVlIDogZmFsc2VcblxuICAgICAgICBsZXQgcmV0OiBhbnlcbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLnRhcmdldCA9PT0gXCJmdW5jdGlvblwiICYmICFwb2pvKSB7XG4gICAgICAgICAgICBpZiAoIW9wdGlvbnM/LmZyb21EZXNlcmlhbGl6ZXIgfHwgdGhpcy5pc0Fsd2F5c1VzaW5nQ29uc3RydWN0b3IpIHtcbiAgICAgICAgICAgICAgICByZXQgPSBuZXcgKDxhbnk+dGhpcy50YXJnZXQpKClcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgcmV0ID0gT2JqZWN0LmNyZWF0ZSh0aGlzLnRhcmdldC5wcm90b3R5cGUpXG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG5cbiAgICAgICAgICAgIHJldCA9IHt9XG4gICAgICAgIH1cblxuXG4gICAgICAgIGlmICh0aGlzLmNvbm5lY3Rpb24ub3B0aW9ucy50eXBlbmFtZSkge1xuICAgICAgICAgICAgcmV0W3RoaXMuY29ubmVjdGlvbi5vcHRpb25zLnR5cGVuYW1lXSA9IHRoaXMudGFyZ2V0TmFtZVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5sYXp5UmVsYXRpb25zLmZvckVhY2goKHJlbGF0aW9uKSA9PlxuICAgICAgICAgICAgdGhpcy5jb25uZWN0aW9uLnJlbGF0aW9uTG9hZGVyLmVuYWJsZUxhenlMb2FkKFxuICAgICAgICAgICAgICAgIHJlbGF0aW9uLFxuICAgICAgICAgICAgICAgIHJldCxcbiAgICAgICAgICAgICAgICBxdWVyeVJ1bm5lcixcbiAgICAgICAgICAgICksXG4gICAgICAgIClcbiAgICAgICAgcmV0dXJuIHJldFxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiBnaXZlbiBlbnRpdHkgaGFzIGFuIGlkLlxuICAgICAqL1xuICAgIGhhc0lkKGVudGl0eTogT2JqZWN0TGl0ZXJhbCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIWVudGl0eSkgcmV0dXJuIGZhbHNlXG5cbiAgICAgICAgcmV0dXJuIHRoaXMucHJpbWFyeUNvbHVtbnMuZXZlcnkoKHByaW1hcnlDb2x1bW4pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gcHJpbWFyeUNvbHVtbi5nZXRFbnRpdHlWYWx1ZShlbnRpdHkpXG4gICAgICAgICAgICByZXR1cm4gdmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09IHVuZGVmaW5lZCAmJiB2YWx1ZSAhPT0gXCJcIlxuICAgICAgICB9KVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiBnaXZlbiBlbnRpdHkgLyBvYmplY3QgY29udGFpbnMgQUxMIHByaW1hcnkga2V5cyBlbnRpdHkgbXVzdCBoYXZlLlxuICAgICAqIFJldHVybnMgdHJ1ZSBpZiBpdCBjb250YWlucyBhbGwgb2YgdGhlbSwgZmFsc2UgaWYgYXQgbGVhc3Qgb25lIG9mIHRoZW0gaXMgbm90IGRlZmluZWQuXG4gICAgICovXG4gICAgaGFzQWxsUHJpbWFyeUtleXMoZW50aXR5OiBPYmplY3RMaXRlcmFsKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnByaW1hcnlDb2x1bW5zLmV2ZXJ5KChwcmltYXJ5Q29sdW1uKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHByaW1hcnlDb2x1bW4uZ2V0RW50aXR5VmFsdWUoZW50aXR5KVxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSB1bmRlZmluZWRcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBFbnN1cmVzIHRoYXQgZ2l2ZW4gb2JqZWN0IGlzIGFuIGVudGl0eSBpZCBtYXAuXG4gICAgICogSWYgZ2l2ZW4gaWQgaXMgYW4gb2JqZWN0IHRoZW4gaXQgbWVhbnMgaXRzIGFscmVhZHkgaWQgbWFwLlxuICAgICAqIElmIGdpdmVuIGlkIGlzbid0IGFuIG9iamVjdCB0aGVuIGl0IG1lYW5zIGl0cyBhIHZhbHVlIG9mIHRoZSBpZCBjb2x1bW5cbiAgICAgKiBhbmQgaXQgY3JlYXRlcyBhIG5ldyBpZCBtYXAgd2l0aCB0aGlzIHZhbHVlIGFuZCBuYW1lIG9mIHRoZSBwcmltYXJ5IGNvbHVtbi5cbiAgICAgKi9cbiAgICBlbnN1cmVFbnRpdHlJZE1hcChpZDogYW55KTogT2JqZWN0TGl0ZXJhbCB7XG4gICAgICAgIGlmIChPYmplY3RVdGlscy5pc09iamVjdChpZCkpIHJldHVybiBpZFxuXG4gICAgICAgIGlmICh0aGlzLmhhc011bHRpcGxlUHJpbWFyeUtleXMpXG4gICAgICAgICAgICB0aHJvdyBuZXcgQ2Fubm90Q3JlYXRlRW50aXR5SWRNYXBFcnJvcih0aGlzLCBpZClcblxuICAgICAgICByZXR1cm4gdGhpcy5wcmltYXJ5Q29sdW1uc1swXS5jcmVhdGVWYWx1ZU1hcChpZClcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHByaW1hcnkga2V5cyBvZiB0aGUgZW50aXR5IGFuZCByZXR1cm5zIHRoZW0gaW4gYSBsaXRlcmFsIG9iamVjdC5cbiAgICAgKiBGb3IgZXhhbXBsZSwgZm9yIFBvc3R7IGlkOiAxLCB0aXRsZTogXCJoZWxsb1wiIH0gd2hlcmUgaWQgaXMgcHJpbWFyeSBpdCB3aWxsIHJldHVybiB7IGlkOiAxIH1cbiAgICAgKiBGb3IgbXVsdGlwbGUgcHJpbWFyeSBrZXlzIGl0IHJldHVybnMgbXVsdGlwbGUga2V5cyBpbiBvYmplY3QuXG4gICAgICogRm9yIHByaW1hcnkga2V5cyBpbnNpZGUgZW1iZWRzIGl0IHJldHVybnMgY29tcGxleCBvYmplY3QgbGl0ZXJhbCB3aXRoIGtleXMgaW4gdGhlbS5cbiAgICAgKi9cbiAgICBnZXRFbnRpdHlJZE1hcChcbiAgICAgICAgZW50aXR5OiBPYmplY3RMaXRlcmFsIHwgdW5kZWZpbmVkLFxuICAgICk6IE9iamVjdExpdGVyYWwgfCB1bmRlZmluZWQge1xuICAgICAgICBpZiAoIWVudGl0eSkgcmV0dXJuIHVuZGVmaW5lZFxuXG4gICAgICAgIHJldHVybiBFbnRpdHlNZXRhZGF0YS5nZXRWYWx1ZU1hcChlbnRpdHksIHRoaXMucHJpbWFyeUNvbHVtbnMsIHtcbiAgICAgICAgICAgIHNraXBOdWxsczogdHJ1ZSxcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgXCJtaXhlZCBpZCBtYXBcIi5cbiAgICAgKiBJZiBlbnRpdHkgaGFzIG11bHRpcGxlIHByaW1hcnkga2V5cyAoaWRzKSB0aGVuIGl0IHdpbGwgcmV0dXJuIGp1c3QgcmVndWxhciBpZCBtYXAsIGxpa2Ugd2hhdCBnZXRFbnRpdHlJZE1hcCByZXR1cm5zLlxuICAgICAqIEJ1dCBpZiBlbnRpdHkgaGFzIGEgc2luZ2xlIHByaW1hcnkga2V5IHRoZW4gaXQgd2lsbCByZXR1cm4ganVzdCB2YWx1ZSBvZiB0aGUgaWQgY29sdW1uIG9mIHRoZSBlbnRpdHksIGp1c3QgdmFsdWUuXG4gICAgICogVGhpcyBpcyBjYWxsZWQgbWl4ZWQgaWQgbWFwLlxuICAgICAqL1xuICAgIGdldEVudGl0eUlkTWl4ZWRNYXAoXG4gICAgICAgIGVudGl0eTogT2JqZWN0TGl0ZXJhbCB8IHVuZGVmaW5lZCxcbiAgICApOiBPYmplY3RMaXRlcmFsIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKCFlbnRpdHkpIHJldHVybiBlbnRpdHlcblxuICAgICAgICBjb25zdCBpZE1hcCA9IHRoaXMuZ2V0RW50aXR5SWRNYXAoZW50aXR5KVxuICAgICAgICBpZiAodGhpcy5oYXNNdWx0aXBsZVByaW1hcnlLZXlzKSB7XG4gICAgICAgICAgICByZXR1cm4gaWRNYXBcbiAgICAgICAgfSBlbHNlIGlmIChpZE1hcCkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMucHJpbWFyeUNvbHVtbnNbMF0uZ2V0RW50aXR5VmFsdWUoaWRNYXApIC8vIHRvZG86IHdoYXQgYWJvdXQgcGFyZW50IHByaW1hcnkgY29sdW1uP1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGlkTWFwXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ29tcGFyZXMgdHdvIGRpZmZlcmVudCBlbnRpdGllcyBieSB0aGVpciBpZHMuXG4gICAgICogUmV0dXJucyB0cnVlIGlmIHRoZXkgbWF0Y2gsIGZhbHNlIG90aGVyd2lzZS5cbiAgICAgKi9cbiAgICBjb21wYXJlRW50aXRpZXMoXG4gICAgICAgIGZpcnN0RW50aXR5OiBPYmplY3RMaXRlcmFsLFxuICAgICAgICBzZWNvbmRFbnRpdHk6IE9iamVjdExpdGVyYWwsXG4gICAgKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IGZpcnN0RW50aXR5SWRNYXAgPSB0aGlzLmdldEVudGl0eUlkTWFwKGZpcnN0RW50aXR5KVxuICAgICAgICBpZiAoIWZpcnN0RW50aXR5SWRNYXApIHJldHVybiBmYWxzZVxuXG4gICAgICAgIGNvbnN0IHNlY29uZEVudGl0eUlkTWFwID0gdGhpcy5nZXRFbnRpdHlJZE1hcChzZWNvbmRFbnRpdHkpXG4gICAgICAgIGlmICghc2Vjb25kRW50aXR5SWRNYXApIHJldHVybiBmYWxzZVxuXG4gICAgICAgIHJldHVybiBPcm1VdGlscy5jb21wYXJlSWRzKGZpcnN0RW50aXR5SWRNYXAsIHNlY29uZEVudGl0eUlkTWFwKVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEZpbmRzIGNvbHVtbiB3aXRoIGEgZ2l2ZW4gcHJvcGVydHkgbmFtZS5cbiAgICAgKi9cbiAgICBmaW5kQ29sdW1uV2l0aFByb3BlcnR5TmFtZShcbiAgICAgICAgcHJvcGVydHlOYW1lOiBzdHJpbmcsXG4gICAgKTogQ29sdW1uTWV0YWRhdGEgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5jb2x1bW5zLmZpbmQoXG4gICAgICAgICAgICAoY29sdW1uKSA9PiBjb2x1bW4ucHJvcGVydHlOYW1lID09PSBwcm9wZXJ0eU5hbWUsXG4gICAgICAgIClcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGaW5kcyBjb2x1bW4gd2l0aCBhIGdpdmVuIGRhdGFiYXNlIG5hbWUuXG4gICAgICovXG4gICAgZmluZENvbHVtbldpdGhEYXRhYmFzZU5hbWUoXG4gICAgICAgIGRhdGFiYXNlTmFtZTogc3RyaW5nLFxuICAgICk6IENvbHVtbk1ldGFkYXRhIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29sdW1ucy5maW5kKFxuICAgICAgICAgICAgKGNvbHVtbikgPT4gY29sdW1uLmRhdGFiYXNlTmFtZSA9PT0gZGF0YWJhc2VOYW1lLFxuICAgICAgICApXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIHRoZXJlIGlzIGEgY29sdW1uIG9yIHJlbGF0aW9uc2hpcCB3aXRoIGEgZ2l2ZW4gcHJvcGVydHkgcGF0aC5cbiAgICAgKi9cbiAgICBoYXNDb2x1bW5XaXRoUHJvcGVydHlQYXRoKHByb3BlcnR5UGF0aDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IGhhc0NvbHVtbiA9IHRoaXMuY29sdW1ucy5zb21lKFxuICAgICAgICAgICAgKGNvbHVtbikgPT4gY29sdW1uLnByb3BlcnR5UGF0aCA9PT0gcHJvcGVydHlQYXRoLFxuICAgICAgICApXG4gICAgICAgIHJldHVybiBoYXNDb2x1bW4gfHwgdGhpcy5oYXNSZWxhdGlvbldpdGhQcm9wZXJ0eVBhdGgocHJvcGVydHlQYXRoKVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEZpbmRzIGNvbHVtbiB3aXRoIGEgZ2l2ZW4gcHJvcGVydHkgcGF0aC5cbiAgICAgKi9cbiAgICBmaW5kQ29sdW1uV2l0aFByb3BlcnR5UGF0aChcbiAgICAgICAgcHJvcGVydHlQYXRoOiBzdHJpbmcsXG4gICAgKTogQ29sdW1uTWV0YWRhdGEgfCB1bmRlZmluZWQge1xuICAgICAgICBjb25zdCBjb2x1bW4gPSB0aGlzLmNvbHVtbnMuZmluZChcbiAgICAgICAgICAgIChjb2x1bW4pID0+IGNvbHVtbi5wcm9wZXJ0eVBhdGggPT09IHByb3BlcnR5UGF0aCxcbiAgICAgICAgKVxuICAgICAgICBpZiAoY29sdW1uKSByZXR1cm4gY29sdW1uXG5cblxuXG4gICAgICAgIGNvbnN0IHJlbGF0aW9uID0gdGhpcy5yZWxhdGlvbnMuZmluZChcbiAgICAgICAgICAgIChyZWxhdGlvbikgPT4gcmVsYXRpb24ucHJvcGVydHlQYXRoID09PSBwcm9wZXJ0eVBhdGgsXG4gICAgICAgIClcbiAgICAgICAgaWYgKHJlbGF0aW9uICYmIHJlbGF0aW9uLmpvaW5Db2x1bW5zLmxlbmd0aCA9PT0gMSlcbiAgICAgICAgICAgIHJldHVybiByZWxhdGlvbi5qb2luQ29sdW1uc1swXVxuXG4gICAgICAgIHJldHVybiB1bmRlZmluZWRcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGaW5kcyBjb2x1bW4gd2l0aCBhIGdpdmVuIHByb3BlcnR5IHBhdGguXG4gICAgICogRG9lcyBub3Qgc2VhcmNoIGluIHJlbGF0aW9uIHVubGlrZSBmaW5kQ29sdW1uV2l0aFByb3BlcnR5UGF0aC5cbiAgICAgKi9cbiAgICBmaW5kQ29sdW1uV2l0aFByb3BlcnR5UGF0aFN0cmljdChcbiAgICAgICAgcHJvcGVydHlQYXRoOiBzdHJpbmcsXG4gICAgKTogQ29sdW1uTWV0YWRhdGEgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5jb2x1bW5zLmZpbmQoXG4gICAgICAgICAgICAoY29sdW1uKSA9PiBjb2x1bW4ucHJvcGVydHlQYXRoID09PSBwcm9wZXJ0eVBhdGgsXG4gICAgICAgIClcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGaW5kcyBjb2x1bW5zIHdpdGggYSBnaXZlbiBwcm9wZXJ0eSBwYXRoLlxuICAgICAqIFByb3BlcnR5IHBhdGggY2FuIG1hdGNoIGEgcmVsYXRpb24sIGFuZCByZWxhdGlvbnMgY2FuIGNvbnRhaW4gbXVsdGlwbGUgY29sdW1ucy5cbiAgICAgKi9cbiAgICBmaW5kQ29sdW1uc1dpdGhQcm9wZXJ0eVBhdGgocHJvcGVydHlQYXRoOiBzdHJpbmcpOiBDb2x1bW5NZXRhZGF0YVtdIHtcbiAgICAgICAgY29uc3QgY29sdW1uID0gdGhpcy5jb2x1bW5zLmZpbmQoXG4gICAgICAgICAgICAoY29sdW1uKSA9PiBjb2x1bW4ucHJvcGVydHlQYXRoID09PSBwcm9wZXJ0eVBhdGgsXG4gICAgICAgIClcbiAgICAgICAgaWYgKGNvbHVtbikgcmV0dXJuIFtjb2x1bW5dXG5cblxuXG4gICAgICAgIGNvbnN0IHJlbGF0aW9uID0gdGhpcy5maW5kUmVsYXRpb25XaXRoUHJvcGVydHlQYXRoKHByb3BlcnR5UGF0aClcbiAgICAgICAgaWYgKHJlbGF0aW9uICYmIHJlbGF0aW9uLmpvaW5Db2x1bW5zKSByZXR1cm4gcmVsYXRpb24uam9pbkNvbHVtbnNcblxuICAgICAgICByZXR1cm4gW11cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgdGhlcmUgaXMgYSByZWxhdGlvbiB3aXRoIHRoZSBnaXZlbiBwcm9wZXJ0eSBwYXRoLlxuICAgICAqL1xuICAgIGhhc1JlbGF0aW9uV2l0aFByb3BlcnR5UGF0aChwcm9wZXJ0eVBhdGg6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5yZWxhdGlvbnMuc29tZShcbiAgICAgICAgICAgIChyZWxhdGlvbikgPT4gcmVsYXRpb24ucHJvcGVydHlQYXRoID09PSBwcm9wZXJ0eVBhdGgsXG4gICAgICAgIClcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGaW5kcyByZWxhdGlvbiB3aXRoIHRoZSBnaXZlbiBwcm9wZXJ0eSBwYXRoLlxuICAgICAqL1xuICAgIGZpbmRSZWxhdGlvbldpdGhQcm9wZXJ0eVBhdGgoXG4gICAgICAgIHByb3BlcnR5UGF0aDogc3RyaW5nLFxuICAgICk6IFJlbGF0aW9uTWV0YWRhdGEgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5yZWxhdGlvbnMuZmluZChcbiAgICAgICAgICAgIChyZWxhdGlvbikgPT4gcmVsYXRpb24ucHJvcGVydHlQYXRoID09PSBwcm9wZXJ0eVBhdGgsXG4gICAgICAgIClcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgdGhlcmUgaXMgYW4gZW1iZWRkZWQgd2l0aCBhIGdpdmVuIHByb3BlcnR5IHBhdGguXG4gICAgICovXG4gICAgaGFzRW1iZWRkZWRXaXRoUHJvcGVydHlQYXRoKHByb3BlcnR5UGF0aDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmFsbEVtYmVkZGVkcy5zb21lKFxuICAgICAgICAgICAgKGVtYmVkZGVkKSA9PiBlbWJlZGRlZC5wcm9wZXJ0eVBhdGggPT09IHByb3BlcnR5UGF0aCxcbiAgICAgICAgKVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEZpbmRzIGVtYmVkZGVkIHdpdGggYSBnaXZlbiBwcm9wZXJ0eSBwYXRoLlxuICAgICAqL1xuICAgIGZpbmRFbWJlZGRlZFdpdGhQcm9wZXJ0eVBhdGgoXG4gICAgICAgIHByb3BlcnR5UGF0aDogc3RyaW5nLFxuICAgICk6IEVtYmVkZGVkTWV0YWRhdGEgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5hbGxFbWJlZGRlZHMuZmluZChcbiAgICAgICAgICAgIChlbWJlZGRlZCkgPT4gZW1iZWRkZWQucHJvcGVydHlQYXRoID09PSBwcm9wZXJ0eVBhdGgsXG4gICAgICAgIClcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGFuIGFycmF5IG9mIGRhdGFiYXNlTmFtZXMgbWFwcGVkIGZyb20gcHJvdmlkZWQgcHJvcGVydHlQYXRoc1xuICAgICAqL1xuICAgIG1hcFByb3BlcnR5UGF0aHNUb0NvbHVtbnMocHJvcGVydHlQYXRoczogc3RyaW5nW10pIHtcbiAgICAgICAgcmV0dXJuIHByb3BlcnR5UGF0aHMubWFwKChwcm9wZXJ0eVBhdGgpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGNvbHVtbiA9IHRoaXMuZmluZENvbHVtbldpdGhQcm9wZXJ0eVBhdGgocHJvcGVydHlQYXRoKVxuICAgICAgICAgICAgaWYgKGNvbHVtbiA9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVudGl0eVByb3BlcnR5Tm90Rm91bmRFcnJvcihwcm9wZXJ0eVBhdGgsIHRoaXMpXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gY29sdW1uXG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogSXRlcmF0ZXMgdGhyb3VnaCBlbnRpdHkgYW5kIGZpbmRzIGFuZCBleHRyYWN0cyBhbGwgdmFsdWVzIGZyb20gcmVsYXRpb25zIGluIHRoZSBlbnRpdHkuXG4gICAgICogSWYgcmVsYXRpb24gdmFsdWUgaXMgYW4gYXJyYXkgaXRzIGJlaW5nIGZsYXR0ZW5lZC5cbiAgICAgKi9cbiAgICBleHRyYWN0UmVsYXRpb25WYWx1ZXNGcm9tRW50aXR5KFxuICAgICAgICBlbnRpdHk6IE9iamVjdExpdGVyYWwsXG4gICAgICAgIHJlbGF0aW9uczogUmVsYXRpb25NZXRhZGF0YVtdLFxuICAgICk6IFtSZWxhdGlvbk1ldGFkYXRhLCBhbnksIEVudGl0eU1ldGFkYXRhXVtdIHtcbiAgICAgICAgY29uc3QgcmVsYXRpb25zQW5kVmFsdWVzOiBbUmVsYXRpb25NZXRhZGF0YSwgYW55LCBFbnRpdHlNZXRhZGF0YV1bXSA9IFtdXG4gICAgICAgIHJlbGF0aW9ucy5mb3JFYWNoKChyZWxhdGlvbikgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSByZWxhdGlvbi5nZXRFbnRpdHlWYWx1ZShlbnRpdHkpXG4gICAgICAgICAgICBpZiAoQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcbiAgICAgICAgICAgICAgICB2YWx1ZS5mb3JFYWNoKChzdWJWYWx1ZSkgPT5cbiAgICAgICAgICAgICAgICAgICAgcmVsYXRpb25zQW5kVmFsdWVzLnB1c2goW1xuICAgICAgICAgICAgICAgICAgICAgICAgcmVsYXRpb24sXG4gICAgICAgICAgICAgICAgICAgICAgICBzdWJWYWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0SW52ZXJzZUVudGl0eU1ldGFkYXRhKHN1YlZhbHVlLCByZWxhdGlvbiksXG4gICAgICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH0gZWxzZSBpZiAodmFsdWUpIHtcbiAgICAgICAgICAgICAgICByZWxhdGlvbnNBbmRWYWx1ZXMucHVzaChbXG4gICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uLFxuICAgICAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5nZXRJbnZlcnNlRW50aXR5TWV0YWRhdGEodmFsdWUsIHJlbGF0aW9uKSxcbiAgICAgICAgICAgICAgICBdKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICByZXR1cm4gcmVsYXRpb25zQW5kVmFsdWVzXG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRJbnZlcnNlRW50aXR5TWV0YWRhdGEoXG4gICAgICAgIHZhbHVlOiBhbnksXG4gICAgICAgIHJlbGF0aW9uOiBSZWxhdGlvbk1ldGFkYXRhLFxuICAgICk6IEVudGl0eU1ldGFkYXRhIHtcbiAgICAgICAgY29uc3QgY2hpbGRFbnRpdHlNZXRhZGF0YSA9XG4gICAgICAgICAgICByZWxhdGlvbi5pbnZlcnNlRW50aXR5TWV0YWRhdGEuY2hpbGRFbnRpdHlNZXRhZGF0YXMuZmluZChcbiAgICAgICAgICAgICAgICAobWV0YWRhdGEpID0+IG1ldGFkYXRhLnRhcmdldCA9PT0gdmFsdWUuY29uc3RydWN0b3IsXG4gICAgICAgICAgICApXG4gICAgICAgIHJldHVybiBjaGlsZEVudGl0eU1ldGFkYXRhXG4gICAgICAgICAgICA/IGNoaWxkRW50aXR5TWV0YWRhdGFcbiAgICAgICAgICAgIDogcmVsYXRpb24uaW52ZXJzZUVudGl0eU1ldGFkYXRhXG4gICAgfVxuXG5cblxuXG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgcHJvcGVydHkgcGF0aHMgZm9yIGEgZ2l2ZW4gZW50aXR5LlxuICAgICAqXG4gICAgICogQGRlcHJlY2F0ZWRcbiAgICAgKi9cbiAgICBzdGF0aWMgY3JlYXRlUHJvcGVydHlQYXRoKFxuICAgICAgICBtZXRhZGF0YTogRW50aXR5TWV0YWRhdGEsXG4gICAgICAgIGVudGl0eTogT2JqZWN0TGl0ZXJhbCxcbiAgICAgICAgcHJlZml4OiBzdHJpbmcgPSBcIlwiLFxuICAgICkge1xuICAgICAgICBjb25zdCBwYXRoczogc3RyaW5nW10gPSBbXVxuICAgICAgICBPYmplY3Qua2V5cyhlbnRpdHkpLmZvckVhY2goKGtleSkgPT4ge1xuXG5cbiAgICAgICAgICAgIGNvbnN0IHBhcmVudFBhdGggPSBwcmVmaXggPyBwcmVmaXggKyBcIi5cIiArIGtleSA6IGtleVxuICAgICAgICAgICAgaWYgKG1ldGFkYXRhLmhhc0VtYmVkZGVkV2l0aFByb3BlcnR5UGF0aChwYXJlbnRQYXRoKSkge1xuICAgICAgICAgICAgICAgIGNvbnN0IHN1YlBhdGhzID0gdGhpcy5jcmVhdGVQcm9wZXJ0eVBhdGgoXG4gICAgICAgICAgICAgICAgICAgIG1ldGFkYXRhLFxuICAgICAgICAgICAgICAgICAgICBlbnRpdHlba2V5XSxcbiAgICAgICAgICAgICAgICAgICAgcGFyZW50UGF0aCxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgcGF0aHMucHVzaCguLi5zdWJQYXRocylcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgY29uc3QgcGF0aCA9IHByZWZpeCA/IHByZWZpeCArIFwiLlwiICsga2V5IDoga2V5XG4gICAgICAgICAgICAgICAgcGF0aHMucHVzaChwYXRoKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KVxuICAgICAgICByZXR1cm4gcGF0aHNcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGaW5kcyBkaWZmZXJlbmNlIGJldHdlZW4gdHdvIGVudGl0eSBpZCBtYXBzLlxuICAgICAqIFJldHVybnMgaXRlbXMgdGhhdCBleGlzdCBpbiB0aGUgZmlyc3QgYXJyYXkgYW5kIGFic2VudCBpbiB0aGUgc2Vjb25kIGFycmF5LlxuICAgICAqL1xuICAgIHN0YXRpYyBkaWZmZXJlbmNlKFxuICAgICAgICBmaXJzdElkTWFwczogT2JqZWN0TGl0ZXJhbFtdLFxuICAgICAgICBzZWNvbmRJZE1hcHM6IE9iamVjdExpdGVyYWxbXSxcbiAgICApOiBPYmplY3RMaXRlcmFsW10ge1xuICAgICAgICByZXR1cm4gZmlyc3RJZE1hcHMuZmlsdGVyKChmaXJzdElkTWFwKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gIXNlY29uZElkTWFwcy5maW5kKChzZWNvbmRJZE1hcCkgPT5cbiAgICAgICAgICAgICAgICBPcm1VdGlscy5jb21wYXJlSWRzKGZpcnN0SWRNYXAsIHNlY29uZElkTWFwKSxcbiAgICAgICAgICAgIClcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIHZhbHVlIG1hcCBmcm9tIHRoZSBnaXZlbiB2YWx1ZXMgYW5kIGNvbHVtbnMuXG4gICAgICogRXhhbXBsZXMgb2YgdXNhZ2VzIGFyZSBwcmltYXJ5IGNvbHVtbnMgbWFwIGFuZCBqb2luIGNvbHVtbnMgbWFwLlxuICAgICAqL1xuICAgIHN0YXRpYyBnZXRWYWx1ZU1hcChcbiAgICAgICAgZW50aXR5OiBPYmplY3RMaXRlcmFsLFxuICAgICAgICBjb2x1bW5zOiBDb2x1bW5NZXRhZGF0YVtdLFxuICAgICAgICBvcHRpb25zPzogeyBza2lwTnVsbHM/OiBib29sZWFuIH0sXG4gICAgKTogT2JqZWN0TGl0ZXJhbCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiBjb2x1bW5zLnJlZHVjZSgobWFwLCBjb2x1bW4pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gY29sdW1uLmdldEVudGl0eVZhbHVlTWFwKGVudGl0eSwgb3B0aW9ucylcblxuXG4gICAgICAgICAgICBpZiAobWFwID09PSB1bmRlZmluZWQgfHwgdmFsdWUgPT09IG51bGwgfHwgdmFsdWUgPT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkXG5cbiAgICAgICAgICAgIHJldHVybiBPcm1VdGlscy5tZXJnZURlZXAobWFwLCB2YWx1ZSlcbiAgICAgICAgfSwge30gYXMgT2JqZWN0TGl0ZXJhbCB8IHVuZGVmaW5lZClcbiAgICB9XG5cblxuXG5cblxuICAgIGJ1aWxkKCkge1xuICAgICAgICBjb25zdCBuYW1pbmdTdHJhdGVneSA9IHRoaXMuY29ubmVjdGlvbi5uYW1pbmdTdHJhdGVneVxuICAgICAgICBjb25zdCBlbnRpdHlQcmVmaXggPSB0aGlzLmNvbm5lY3Rpb24ub3B0aW9ucy5lbnRpdHlQcmVmaXhcbiAgICAgICAgY29uc3QgZW50aXR5U2tpcENvbnN0cnVjdG9yID1cbiAgICAgICAgICAgIHRoaXMuY29ubmVjdGlvbi5vcHRpb25zLmVudGl0eVNraXBDb25zdHJ1Y3RvclxuXG4gICAgICAgIHRoaXMuZW5naW5lID0gdGhpcy50YWJsZU1ldGFkYXRhQXJncy5lbmdpbmVcbiAgICAgICAgdGhpcy5kYXRhYmFzZSA9XG4gICAgICAgICAgICB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnR5cGUgPT09IFwiZW50aXR5LWNoaWxkXCIgJiZcbiAgICAgICAgICAgIHRoaXMucGFyZW50RW50aXR5TWV0YWRhdGFcbiAgICAgICAgICAgICAgICA/IHRoaXMucGFyZW50RW50aXR5TWV0YWRhdGEuZGF0YWJhc2VcbiAgICAgICAgICAgICAgICA6IHRoaXMudGFibGVNZXRhZGF0YUFyZ3MuZGF0YWJhc2VcbiAgICAgICAgaWYgKHRoaXMudGFibGVNZXRhZGF0YUFyZ3Muc2NoZW1hKSB7XG4gICAgICAgICAgICB0aGlzLnNjaGVtYSA9IHRoaXMudGFibGVNZXRhZGF0YUFyZ3Muc2NoZW1hXG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgICB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnR5cGUgPT09IFwiZW50aXR5LWNoaWxkXCIgJiZcbiAgICAgICAgICAgIHRoaXMucGFyZW50RW50aXR5TWV0YWRhdGFcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLnNjaGVtYSA9IHRoaXMucGFyZW50RW50aXR5TWV0YWRhdGEuc2NoZW1hXG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5jb25uZWN0aW9uLm9wdGlvbnM/Lmhhc093blByb3BlcnR5KFwic2NoZW1hXCIpKSB7XG4gICAgICAgICAgICB0aGlzLnNjaGVtYSA9ICh0aGlzLmNvbm5lY3Rpb24ub3B0aW9ucyBhcyBhbnkpLnNjaGVtYVxuICAgICAgICB9XG4gICAgICAgIHRoaXMuZ2l2ZW5UYWJsZU5hbWUgPVxuICAgICAgICAgICAgdGhpcy50YWJsZU1ldGFkYXRhQXJncy50eXBlID09PSBcImVudGl0eS1jaGlsZFwiICYmXG4gICAgICAgICAgICB0aGlzLnBhcmVudEVudGl0eU1ldGFkYXRhXG4gICAgICAgICAgICAgICAgPyB0aGlzLnBhcmVudEVudGl0eU1ldGFkYXRhLmdpdmVuVGFibGVOYW1lXG4gICAgICAgICAgICAgICAgOiB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLm5hbWVcbiAgICAgICAgdGhpcy5zeW5jaHJvbml6ZSA9XG4gICAgICAgICAgICB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnN5bmNocm9uaXplID09PSBmYWxzZSA/IGZhbHNlIDogdHJ1ZVxuICAgICAgICB0aGlzLnRhcmdldE5hbWUgPVxuICAgICAgICAgICAgdHlwZW9mIHRoaXMudGFibGVNZXRhZGF0YUFyZ3MudGFyZ2V0ID09PSBcImZ1bmN0aW9uXCJcbiAgICAgICAgICAgICAgICA/ICh0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnRhcmdldCBhcyBhbnkpLm5hbWVcbiAgICAgICAgICAgICAgICA6IHRoaXMudGFibGVNZXRhZGF0YUFyZ3MudGFyZ2V0XG4gICAgICAgIGlmICh0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnR5cGUgPT09IFwiY2xvc3VyZS1qdW5jdGlvblwiKSB7XG4gICAgICAgICAgICB0aGlzLnRhYmxlTmFtZVdpdGhvdXRQcmVmaXggPVxuICAgICAgICAgICAgICAgIG5hbWluZ1N0cmF0ZWd5LmNsb3N1cmVKdW5jdGlvblRhYmxlTmFtZSh0aGlzLmdpdmVuVGFibGVOYW1lISlcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgIHRoaXMudGFibGVNZXRhZGF0YUFyZ3MudHlwZSA9PT0gXCJlbnRpdHktY2hpbGRcIiAmJlxuICAgICAgICAgICAgdGhpcy5wYXJlbnRFbnRpdHlNZXRhZGF0YVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMudGFibGVOYW1lV2l0aG91dFByZWZpeCA9IG5hbWluZ1N0cmF0ZWd5LnRhYmxlTmFtZShcbiAgICAgICAgICAgICAgICB0aGlzLnBhcmVudEVudGl0eU1ldGFkYXRhLnRhcmdldE5hbWUsXG4gICAgICAgICAgICAgICAgdGhpcy5wYXJlbnRFbnRpdHlNZXRhZGF0YS5naXZlblRhYmxlTmFtZSxcbiAgICAgICAgICAgIClcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMudGFibGVOYW1lV2l0aG91dFByZWZpeCA9IG5hbWluZ1N0cmF0ZWd5LnRhYmxlTmFtZShcbiAgICAgICAgICAgICAgICB0aGlzLnRhcmdldE5hbWUsXG4gICAgICAgICAgICAgICAgdGhpcy5naXZlblRhYmxlTmFtZSxcbiAgICAgICAgICAgIClcblxuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgIHRoaXMudGFibGVNZXRhZGF0YUFyZ3MudHlwZSA9PT0gXCJqdW5jdGlvblwiICYmXG4gICAgICAgICAgICAgICAgdGhpcy5jb25uZWN0aW9uLmRyaXZlci5tYXhBbGlhc0xlbmd0aCAmJlxuICAgICAgICAgICAgICAgIHRoaXMuY29ubmVjdGlvbi5kcml2ZXIubWF4QWxpYXNMZW5ndGggPiAwICYmXG4gICAgICAgICAgICAgICAgdGhpcy50YWJsZU5hbWVXaXRob3V0UHJlZml4Lmxlbmd0aCA+XG4gICAgICAgICAgICAgICAgICAgIHRoaXMuY29ubmVjdGlvbi5kcml2ZXIubWF4QWxpYXNMZW5ndGhcbiAgICAgICAgICAgICkge1xuXG5cblxuICAgICAgICAgICAgICAgIHRoaXMudGFibGVOYW1lV2l0aG91dFByZWZpeCA9IHNob3J0ZW4oXG4gICAgICAgICAgICAgICAgICAgIHRoaXMudGFibGVOYW1lV2l0aG91dFByZWZpeCxcbiAgICAgICAgICAgICAgICAgICAgeyBzZXBhcmF0b3I6IFwiX1wiLCBzZWdtZW50TGVuZ3RoOiAzIH0sXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIHRoaXMudGFibGVOYW1lID0gZW50aXR5UHJlZml4XG4gICAgICAgICAgICA/IG5hbWluZ1N0cmF0ZWd5LnByZWZpeFRhYmxlTmFtZShcbiAgICAgICAgICAgICAgICAgIGVudGl0eVByZWZpeCxcbiAgICAgICAgICAgICAgICAgIHRoaXMudGFibGVOYW1lV2l0aG91dFByZWZpeCxcbiAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgOiB0aGlzLnRhYmxlTmFtZVdpdGhvdXRQcmVmaXhcbiAgICAgICAgdGhpcy50YXJnZXQgPSB0aGlzLnRhcmdldCA/IHRoaXMudGFyZ2V0IDogdGhpcy50YWJsZU5hbWVcbiAgICAgICAgdGhpcy5uYW1lID0gdGhpcy50YXJnZXROYW1lID8gdGhpcy50YXJnZXROYW1lIDogdGhpcy50YWJsZU5hbWVcbiAgICAgICAgdGhpcy5leHByZXNzaW9uID0gdGhpcy50YWJsZU1ldGFkYXRhQXJncy5leHByZXNzaW9uXG4gICAgICAgIHRoaXMud2l0aG91dFJvd2lkID1cbiAgICAgICAgICAgIHRoaXMudGFibGVNZXRhZGF0YUFyZ3Mud2l0aG91dFJvd2lkID09PSB0cnVlID8gdHJ1ZSA6IGZhbHNlXG4gICAgICAgIHRoaXMudGFibGVQYXRoID0gdGhpcy5jb25uZWN0aW9uLmRyaXZlci5idWlsZFRhYmxlTmFtZShcbiAgICAgICAgICAgIHRoaXMudGFibGVOYW1lLFxuICAgICAgICAgICAgdGhpcy5zY2hlbWEsXG4gICAgICAgICAgICB0aGlzLmRhdGFiYXNlLFxuICAgICAgICApXG4gICAgICAgIHRoaXMub3JkZXJCeSA9XG4gICAgICAgICAgICB0eXBlb2YgdGhpcy50YWJsZU1ldGFkYXRhQXJncy5vcmRlckJ5ID09PSBcImZ1bmN0aW9uXCJcbiAgICAgICAgICAgICAgICA/IHRoaXMudGFibGVNZXRhZGF0YUFyZ3Mub3JkZXJCeSh0aGlzLnByb3BlcnRpZXNNYXApXG4gICAgICAgICAgICAgICAgOiB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLm9yZGVyQnkgLy8gdG9kbzogaXMgcHJvcGVydGllc01hcCBhdmFpbGFibGUgaGVyZT8gTG9va3MgbGlrZSBpdHMgbm90XG5cbiAgICAgICAgaWYgKGVudGl0eVNraXBDb25zdHJ1Y3RvciAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLmlzQWx3YXlzVXNpbmdDb25zdHJ1Y3RvciA9ICFlbnRpdHlTa2lwQ29uc3RydWN0b3JcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuaXNKdW5jdGlvbiA9XG4gICAgICAgICAgICB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnR5cGUgPT09IFwiY2xvc3VyZS1qdW5jdGlvblwiIHx8XG4gICAgICAgICAgICB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnR5cGUgPT09IFwianVuY3Rpb25cIlxuICAgICAgICB0aGlzLmlzQ2xvc3VyZUp1bmN0aW9uID1cbiAgICAgICAgICAgIHRoaXMudGFibGVNZXRhZGF0YUFyZ3MudHlwZSA9PT0gXCJjbG9zdXJlLWp1bmN0aW9uXCJcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZWdpc3RlcnMgYSBuZXcgY29sdW1uIGluIHRoZSBlbnRpdHkgYW5kIHJlY29tcHV0ZXMgYWxsIGRlcGVuZCBwcm9wZXJ0aWVzLlxuICAgICAqL1xuICAgIHJlZ2lzdGVyQ29sdW1uKGNvbHVtbjogQ29sdW1uTWV0YWRhdGEpIHtcbiAgICAgICAgaWYgKHRoaXMub3duQ29sdW1ucy5pbmRleE9mKGNvbHVtbikgIT09IC0xKSByZXR1cm5cblxuICAgICAgICB0aGlzLm93bkNvbHVtbnMucHVzaChjb2x1bW4pXG4gICAgICAgIHRoaXMuY29sdW1ucyA9IHRoaXMuZW1iZWRkZWRzLnJlZHVjZShcbiAgICAgICAgICAgIChjb2x1bW5zLCBlbWJlZGRlZCkgPT4gY29sdW1ucy5jb25jYXQoZW1iZWRkZWQuY29sdW1uc0Zyb21UcmVlKSxcbiAgICAgICAgICAgIHRoaXMub3duQ29sdW1ucyxcbiAgICAgICAgKVxuICAgICAgICB0aGlzLnByaW1hcnlDb2x1bW5zID0gdGhpcy5jb2x1bW5zLmZpbHRlcigoY29sdW1uKSA9PiBjb2x1bW4uaXNQcmltYXJ5KVxuICAgICAgICB0aGlzLmhhc011bHRpcGxlUHJpbWFyeUtleXMgPSB0aGlzLnByaW1hcnlDb2x1bW5zLmxlbmd0aCA+IDFcbiAgICAgICAgdGhpcy5oYXNVVUlER2VuZXJhdGVkQ29sdW1ucyA9XG4gICAgICAgICAgICB0aGlzLmNvbHVtbnMuZmlsdGVyKFxuICAgICAgICAgICAgICAgIChjb2x1bW4pID0+XG4gICAgICAgICAgICAgICAgICAgIGNvbHVtbi5pc0dlbmVyYXRlZCB8fCBjb2x1bW4uZ2VuZXJhdGlvblN0cmF0ZWd5ID09PSBcInV1aWRcIixcbiAgICAgICAgICAgICkubGVuZ3RoID4gMFxuICAgICAgICB0aGlzLnByb3BlcnRpZXNNYXAgPSB0aGlzLmNyZWF0ZVByb3BlcnRpZXNNYXAoKVxuICAgICAgICBpZiAodGhpcy5jaGlsZEVudGl0eU1ldGFkYXRhcylcbiAgICAgICAgICAgIHRoaXMuY2hpbGRFbnRpdHlNZXRhZGF0YXMuZm9yRWFjaCgoZW50aXR5TWV0YWRhdGEpID0+XG4gICAgICAgICAgICAgICAgZW50aXR5TWV0YWRhdGEucmVnaXN0ZXJDb2x1bW4oY29sdW1uKSxcbiAgICAgICAgICAgIClcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGEgc3BlY2lhbCBvYmplY3QgLSBhbGwgY29sdW1ucyBhbmQgcmVsYXRpb25zIG9mIHRoZSBvYmplY3QgKHBsdXMgY29sdW1ucyBhbmQgcmVsYXRpb25zIGZyb20gZW1iZWRzKVxuICAgICAqIGluIGEgc3BlY2lhbCBmb3JtYXQgLSB7IHByb3BlcnR5TmFtZTogcHJvcGVydHlOYW1lIH0uXG4gICAgICpcbiAgICAgKiBleGFtcGxlOiBQb3N0eyBpZDogbnVtYmVyLCBuYW1lOiBzdHJpbmcsIGNvdW50ZXJFbWJlZDogeyBjb3VudDogbnVtYmVyIH0sIGNhdGVnb3J5OiBDYXRlZ29yeSB9LlxuICAgICAqIFRoaXMgbWV0aG9kIHdpbGwgY3JlYXRlIGZvbGxvd2luZyBvYmplY3Q6XG4gICAgICogeyBpZDogXCJpZFwiLCBjb3VudGVyRW1iZWQ6IHsgY291bnQ6IFwiY291bnRlckVtYmVkLmNvdW50XCIgfSwgY2F0ZWdvcnk6IFwiY2F0ZWdvcnlcIiB9XG4gICAgICovXG4gICAgY3JlYXRlUHJvcGVydGllc01hcCgpOiB7IFtuYW1lOiBzdHJpbmddOiBzdHJpbmcgfCBhbnkgfSB7XG4gICAgICAgIGNvbnN0IG1hcDogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIHwgYW55IH0gPSB7fVxuICAgICAgICB0aGlzLmNvbHVtbnMuZm9yRWFjaCgoY29sdW1uKSA9PlxuICAgICAgICAgICAgT3JtVXRpbHMubWVyZ2VEZWVwKG1hcCwgY29sdW1uLmNyZWF0ZVZhbHVlTWFwKGNvbHVtbi5wcm9wZXJ0eVBhdGgpKSxcbiAgICAgICAgKVxuICAgICAgICB0aGlzLnJlbGF0aW9ucy5mb3JFYWNoKChyZWxhdGlvbikgPT5cbiAgICAgICAgICAgIE9ybVV0aWxzLm1lcmdlRGVlcChcbiAgICAgICAgICAgICAgICBtYXAsXG4gICAgICAgICAgICAgICAgcmVsYXRpb24uY3JlYXRlVmFsdWVNYXAocmVsYXRpb24ucHJvcGVydHlQYXRoKSxcbiAgICAgICAgICAgICksXG4gICAgICAgIClcbiAgICAgICAgcmV0dXJuIG1hcFxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiBlbnRpdHkgaGFzIGFueSBjb2x1bW4gd2hpY2ggcmVseSBvbiByZXR1cm5pbmcgZGF0YSxcbiAgICAgKiBlLmcuIGNvbHVtbnMgd2l0aCBhdXRvIGdlbmVyYXRlZCB2YWx1ZSwgREVGQVVMVCB2YWx1ZXMgY29uc2lkZXJlZCBhcyBkZXBlbmRhbnQgb2YgcmV0dXJuaW5nIGRhdGEuXG4gICAgICogRm9yIGV4YW1wbGUsIGlmIHdlIG5lZWQgdG8gaGF2ZSBSRVRVUk5JTkcgYWZ0ZXIgSU5TRVJUIChvciB3ZSBuZWVkIHJldHVybmVkIGlkIGZvciBEQnMgbm90IHN1cHBvcnRpbmcgUkVUVVJOSU5HKSxcbiAgICAgKiBpdCBtZWFucyB3ZSBjYW5ub3QgZXhlY3V0ZSBidWxrIGluc2VydHMgaW4gc29tZSBjYXNlcy5cbiAgICAgKi9cbiAgICBnZXRJbnNlcnRpb25SZXR1cm5pbmdDb2x1bW5zKCk6IENvbHVtbk1ldGFkYXRhW10ge1xuICAgICAgICByZXR1cm4gdGhpcy5jb2x1bW5zLmZpbHRlcigoY29sdW1uKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgICAgIGNvbHVtbi5kZWZhdWx0ICE9PSB1bmRlZmluZWQgfHxcbiAgICAgICAgICAgICAgICBjb2x1bW4uaXNHZW5lcmF0ZWQgfHxcbiAgICAgICAgICAgICAgICBjb2x1bW4uaXNDcmVhdGVEYXRlIHx8XG4gICAgICAgICAgICAgICAgY29sdW1uLmlzVXBkYXRlRGF0ZSB8fFxuICAgICAgICAgICAgICAgIGNvbHVtbi5pc0RlbGV0ZURhdGUgfHxcbiAgICAgICAgICAgICAgICBjb2x1bW4uaXNWZXJzaW9uXG4gICAgICAgICAgICApXG4gICAgICAgIH0pXG4gICAgfVxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dGFvbi10eXBlb3JtIGxpYi90eXBlb3JtL21ldGFkYXRhL0VudGl0eU1ldGFkYXRhLnRzIl19