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.
- package/assets/shared/shared_folder_info.txt +1 -1
- package/package.json +1 -1
- package/tmp-environment.json +24 -3
- package/browser/esm2022/lib/index.mjs +0 -4
- package/browser/esm2022/lib/typeorm/cache/DbQueryResultCache.mjs +0 -251
- package/browser/esm2022/lib/typeorm/cache/QueryResultCache.mjs +0 -4
- package/browser/esm2022/lib/typeorm/cache/QueryResultCacheFactory.mjs +0 -33
- package/browser/esm2022/lib/typeorm/cache/QueryResultCacheOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/cache/RedisQueryResultCache.mjs +0 -185
- package/browser/esm2022/lib/typeorm/common/DeepPartial.mjs +0 -3
- package/browser/esm2022/lib/typeorm/common/EntityTarget.mjs +0 -3
- package/browser/esm2022/lib/typeorm/common/MixedList.mjs +0 -3
- package/browser/esm2022/lib/typeorm/common/ObjectLiteral.mjs +0 -4
- package/browser/esm2022/lib/typeorm/common/ObjectType.mjs +0 -3
- package/browser/esm2022/lib/typeorm/common/RelationType.mjs +0 -3
- package/browser/esm2022/lib/typeorm/connection/Connection.mjs +0 -13
- package/browser/esm2022/lib/typeorm/connection/ConnectionManager.mjs +0 -57
- package/browser/esm2022/lib/typeorm/connection/ConnectionMetadataBuilder.mjs +0 -63
- package/browser/esm2022/lib/typeorm/connection/ConnectionOptions.mjs +0 -3
- package/browser/esm2022/lib/typeorm/connection/ConnectionOptionsReader.mjs +0 -237
- package/browser/esm2022/lib/typeorm/constants.mjs +0 -4
- package/browser/esm2022/lib/typeorm/container.mjs +0 -57
- package/browser/esm2022/lib/typeorm/data-source/BaseDataSourceOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/data-source/DataSource.mjs +0 -458
- package/browser/esm2022/lib/typeorm/data-source/DataSourceOptions.mjs +0 -11
- package/browser/esm2022/lib/typeorm/data-source/index.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/Check.mjs +0 -25
- package/browser/esm2022/lib/typeorm/decorator/EntityRepository.mjs +0 -19
- package/browser/esm2022/lib/typeorm/decorator/Exclusion.mjs +0 -25
- package/browser/esm2022/lib/typeorm/decorator/Generated.mjs +0 -22
- package/browser/esm2022/lib/typeorm/decorator/Index.mjs +0 -52
- package/browser/esm2022/lib/typeorm/decorator/Unique.mjs +0 -48
- package/browser/esm2022/lib/typeorm/decorator/columns/Column.mjs +0 -67
- package/browser/esm2022/lib/typeorm/decorator/columns/CreateDateColumn.mjs +0 -19
- package/browser/esm2022/lib/typeorm/decorator/columns/DeleteDateColumn.mjs +0 -18
- package/browser/esm2022/lib/typeorm/decorator/columns/ObjectIdColumn.mjs +0 -23
- package/browser/esm2022/lib/typeorm/decorator/columns/PrimaryColumn.mjs +0 -54
- package/browser/esm2022/lib/typeorm/decorator/columns/PrimaryGeneratedColumn.mjs +0 -52
- package/browser/esm2022/lib/typeorm/decorator/columns/UpdateDateColumn.mjs +0 -18
- package/browser/esm2022/lib/typeorm/decorator/columns/VersionColumn.mjs +0 -19
- package/browser/esm2022/lib/typeorm/decorator/columns/ViewColumn.mjs +0 -17
- package/browser/esm2022/lib/typeorm/decorator/columns/VirtualColumn.mjs +0 -41
- package/browser/esm2022/lib/typeorm/decorator/entity/ChildEntity.mjs +0 -21
- package/browser/esm2022/lib/typeorm/decorator/entity/Entity.mjs +0 -28
- package/browser/esm2022/lib/typeorm/decorator/entity/TableInheritance.mjs +0 -20
- package/browser/esm2022/lib/typeorm/decorator/entity-view/ViewEntity.mjs +0 -30
- package/browser/esm2022/lib/typeorm/decorator/listeners/AfterInsert.mjs +0 -17
- package/browser/esm2022/lib/typeorm/decorator/listeners/AfterLoad.mjs +0 -17
- package/browser/esm2022/lib/typeorm/decorator/listeners/AfterRecover.mjs +0 -17
- package/browser/esm2022/lib/typeorm/decorator/listeners/AfterRemove.mjs +0 -17
- package/browser/esm2022/lib/typeorm/decorator/listeners/AfterSoftRemove.mjs +0 -17
- package/browser/esm2022/lib/typeorm/decorator/listeners/AfterUpdate.mjs +0 -17
- package/browser/esm2022/lib/typeorm/decorator/listeners/BeforeInsert.mjs +0 -17
- package/browser/esm2022/lib/typeorm/decorator/listeners/BeforeRecover.mjs +0 -17
- package/browser/esm2022/lib/typeorm/decorator/listeners/BeforeRemove.mjs +0 -17
- package/browser/esm2022/lib/typeorm/decorator/listeners/BeforeSoftRemove.mjs +0 -17
- package/browser/esm2022/lib/typeorm/decorator/listeners/BeforeUpdate.mjs +0 -17
- package/browser/esm2022/lib/typeorm/decorator/listeners/EventSubscriber.mjs +0 -15
- package/browser/esm2022/lib/typeorm/decorator/options/ColumnCommonOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/ColumnEmbeddedOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/ColumnEnumOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/ColumnHstoreOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/ColumnNumericOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/ColumnOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/ColumnWithLengthOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/ColumnWithWidthOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/EntityOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/IndexOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/JoinColumnOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/JoinTableMultipleColumnsOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/JoinTableOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnIdentityOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnNumericOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnUUIDOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/RelationOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/SpatialColumnOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/UniqueOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/ValueTransformer.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/ViewColumnOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/ViewEntityOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/options/VirtualColumnOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/decorator/relations/JoinColumn.mjs +0 -25
- package/browser/esm2022/lib/typeorm/decorator/relations/JoinTable.mjs +0 -31
- package/browser/esm2022/lib/typeorm/decorator/relations/ManyToMany.mjs +0 -40
- package/browser/esm2022/lib/typeorm/decorator/relations/ManyToOne.mjs +0 -40
- package/browser/esm2022/lib/typeorm/decorator/relations/OneToMany.mjs +0 -32
- package/browser/esm2022/lib/typeorm/decorator/relations/OneToOne.mjs +0 -39
- package/browser/esm2022/lib/typeorm/decorator/relations/RelationCount.mjs +0 -20
- package/browser/esm2022/lib/typeorm/decorator/relations/RelationId.mjs +0 -20
- package/browser/esm2022/lib/typeorm/decorator/tree/Tree.mjs +0 -19
- package/browser/esm2022/lib/typeorm/decorator/tree/TreeChildren.mjs +0 -34
- package/browser/esm2022/lib/typeorm/decorator/tree/TreeLevelColumn.mjs +0 -17
- package/browser/esm2022/lib/typeorm/decorator/tree/TreeParent.mjs +0 -34
- package/browser/esm2022/lib/typeorm/driver/Driver.mjs +0 -4
- package/browser/esm2022/lib/typeorm/driver/DriverFactory.mjs +0 -99
- package/browser/esm2022/lib/typeorm/driver/DriverUtils.mjs +0 -213
- package/browser/esm2022/lib/typeorm/driver/Query.mjs +0 -13
- package/browser/esm2022/lib/typeorm/driver/SqlInMemory.mjs +0 -12
- package/browser/esm2022/lib/typeorm/driver/cordova/CordovaConnectionOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/driver/cordova/CordovaDriver.mjs +0 -63
- package/browser/esm2022/lib/typeorm/driver/cordova/CordovaQueryRunner.mjs +0 -152
- package/browser/esm2022/lib/typeorm/driver/mongodb/typings.mjs +0 -6516
- package/browser/esm2022/lib/typeorm/driver/nativescript/NativescriptConnectionOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/driver/nativescript/NativescriptDriver.mjs +0 -82
- package/browser/esm2022/lib/typeorm/driver/nativescript/NativescriptQueryRunner.mjs +0 -82
- package/browser/esm2022/lib/typeorm/driver/react-native/ReactNativeConnectionOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/driver/react-native/ReactNativeDriver.mjs +0 -69
- package/browser/esm2022/lib/typeorm/driver/react-native/ReactNativeQueryRunner.mjs +0 -81
- package/browser/esm2022/lib/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.mjs +0 -582
- package/browser/esm2022/lib/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.mjs +0 -1421
- package/browser/esm2022/lib/typeorm/driver/sqljs/SqljsConnectionOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/driver/sqljs/SqljsDriver.mjs +0 -249
- package/browser/esm2022/lib/typeorm/driver/sqljs/SqljsQueryRunner.mjs +0 -107
- package/browser/esm2022/lib/typeorm/driver/types/ColumnTypes.mjs +0 -3
- package/browser/esm2022/lib/typeorm/driver/types/CteCapabilities.mjs +0 -4
- package/browser/esm2022/lib/typeorm/driver/types/DataTypeDefaults.mjs +0 -4
- package/browser/esm2022/lib/typeorm/driver/types/DatabaseType.mjs +0 -3
- package/browser/esm2022/lib/typeorm/driver/types/IsolationLevel.mjs +0 -3
- package/browser/esm2022/lib/typeorm/driver/types/MappedColumnTypes.mjs +0 -4
- package/browser/esm2022/lib/typeorm/driver/types/MetadataTableType.mjs +0 -9
- package/browser/esm2022/lib/typeorm/driver/types/ReplicationMode.mjs +0 -3
- package/browser/esm2022/lib/typeorm/driver/types/UpsertType.mjs +0 -3
- package/browser/esm2022/lib/typeorm/entity-manager/EntityManager.mjs +0 -743
- package/browser/esm2022/lib/typeorm/entity-manager/EntityManagerFactory.mjs +0 -23
- package/browser/esm2022/lib/typeorm/entity-manager/SqljsEntityManager.mjs +0 -35
- package/browser/esm2022/lib/typeorm/entity-schema/EntitySchema.mjs +0 -12
- package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaCheckOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaColumnOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.mjs +0 -5
- package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaEmbeddedError.mjs +0 -15
- package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaExclusionOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaIndexOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaOptions.mjs +0 -8
- package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaRelationIdOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaRelationOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaTransformer.mjs +0 -268
- package/browser/esm2022/lib/typeorm/entity-schema/EntitySchemaUniqueOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/error/AlreadyHasActiveConnectionError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/CannotAttachTreeChildrenEntityError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/CannotConnectAlreadyConnectedError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/CannotCreateEntityIdMapError.mjs +0 -18
- package/browser/esm2022/lib/typeorm/error/CannotDetermineEntityError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/CannotExecuteNotConnectedError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/CannotGetEntityManagerNotConnectedError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/CannotReflectMethodParameterTypeError.mjs +0 -15
- package/browser/esm2022/lib/typeorm/error/CircularRelationsError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/ColumnTypeUndefinedError.mjs +0 -16
- package/browser/esm2022/lib/typeorm/error/ConnectionIsNotSetError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/ConnectionNotFoundError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/CustomRepositoryCannotInheritRepositoryError.mjs +0 -15
- package/browser/esm2022/lib/typeorm/error/CustomRepositoryDoesNotHaveEntityError.mjs +0 -15
- package/browser/esm2022/lib/typeorm/error/CustomRepositoryNotFoundError.mjs +0 -15
- package/browser/esm2022/lib/typeorm/error/DataTypeNotSupportedError.mjs +0 -11
- package/browser/esm2022/lib/typeorm/error/DriverOptionNotSetError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/DriverPackageNotInstalledError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/EntityMetadataNotFoundError.mjs +0 -26
- package/browser/esm2022/lib/typeorm/error/EntityNotFoundError.mjs +0 -37
- package/browser/esm2022/lib/typeorm/error/EntityPropertyNotFoundError.mjs +0 -14
- package/browser/esm2022/lib/typeorm/error/FindRelationsNotFoundError.mjs +0 -20
- package/browser/esm2022/lib/typeorm/error/InitializedRelationError.mjs +0 -17
- package/browser/esm2022/lib/typeorm/error/InsertValuesMissingError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/LimitOnUpdateNotSupportedError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/LockNotSupportedOnGivenDriverError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/MetadataAlreadyExistsError.mjs +0 -15
- package/browser/esm2022/lib/typeorm/error/MetadataWithSuchNameAlreadyExistsError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/MissingDeleteDateColumnError.mjs +0 -9
- package/browser/esm2022/lib/typeorm/error/MissingDriverError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/MissingJoinColumnError.mjs +0 -20
- package/browser/esm2022/lib/typeorm/error/MissingJoinTableError.mjs +0 -20
- package/browser/esm2022/lib/typeorm/error/MissingPrimaryColumnError.mjs +0 -10
- package/browser/esm2022/lib/typeorm/error/MustBeEntityError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/NamingStrategyNotFoundError.mjs +0 -18
- package/browser/esm2022/lib/typeorm/error/NestedSetMultipleRootError.mjs +0 -9
- package/browser/esm2022/lib/typeorm/error/NoConnectionForRepositoryError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/NoConnectionOptionError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/NoNeedToReleaseEntityManagerError.mjs +0 -14
- package/browser/esm2022/lib/typeorm/error/NoVersionOrUpdateDateColumnError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/OffsetWithoutLimitNotSupportedError.mjs +0 -14
- package/browser/esm2022/lib/typeorm/error/OptimisticLockCanNotBeUsedError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/OptimisticLockVersionMismatchError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/PersistedEntityNotFoundError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/PessimisticLockTransactionRequiredError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/PrimaryColumnCannotBeNullableError.mjs +0 -10
- package/browser/esm2022/lib/typeorm/error/QueryFailedError.mjs +0 -27
- package/browser/esm2022/lib/typeorm/error/QueryRunnerAlreadyReleasedError.mjs +0 -9
- package/browser/esm2022/lib/typeorm/error/QueryRunnerProviderAlreadyReleasedError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/RepositoryNotTreeError.mjs +0 -29
- package/browser/esm2022/lib/typeorm/error/ReturningStatementNotSupportedError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/SubjectRemovedAndUpdatedError.mjs +0 -13
- package/browser/esm2022/lib/typeorm/error/SubjectWithoutIdentifierError.mjs +0 -14
- package/browser/esm2022/lib/typeorm/error/TransactionAlreadyStartedError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/TransactionNotStartedError.mjs +0 -12
- package/browser/esm2022/lib/typeorm/error/TreeRepositoryNotSupportedError.mjs +0 -9
- package/browser/esm2022/lib/typeorm/error/TypeORMError.mjs +0 -18
- package/browser/esm2022/lib/typeorm/error/UpdateValuesMissingError.mjs +0 -9
- package/browser/esm2022/lib/typeorm/error/UsingJoinColumnIsNotAllowedError.mjs +0 -10
- package/browser/esm2022/lib/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.mjs +0 -11
- package/browser/esm2022/lib/typeorm/error/UsingJoinTableIsNotAllowedError.mjs +0 -11
- package/browser/esm2022/lib/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.mjs +0 -11
- package/browser/esm2022/lib/typeorm/error/index.mjs +0 -63
- package/browser/esm2022/lib/typeorm/find-options/EqualOperator.mjs +0 -10
- package/browser/esm2022/lib/typeorm/find-options/FindManyOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/find-options/FindOneOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/find-options/FindOperator.mjs +0 -74
- package/browser/esm2022/lib/typeorm/find-options/FindOperatorType.mjs +0 -3
- package/browser/esm2022/lib/typeorm/find-options/FindOptionsOrder.mjs +0 -3
- package/browser/esm2022/lib/typeorm/find-options/FindOptionsRelations.mjs +0 -3
- package/browser/esm2022/lib/typeorm/find-options/FindOptionsSelect.mjs +0 -5
- package/browser/esm2022/lib/typeorm/find-options/FindOptionsUtils.mjs +0 -293
- package/browser/esm2022/lib/typeorm/find-options/FindOptionsWhere.mjs +0 -3
- package/browser/esm2022/lib/typeorm/find-options/FindTreeOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/find-options/JoinOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/find-options/OrderByCondition.mjs +0 -3
- package/browser/esm2022/lib/typeorm/find-options/operator/Any.mjs +0 -11
- package/browser/esm2022/lib/typeorm/find-options/operator/ArrayContainedBy.mjs +0 -11
- package/browser/esm2022/lib/typeorm/find-options/operator/ArrayContains.mjs +0 -11
- package/browser/esm2022/lib/typeorm/find-options/operator/ArrayOverlap.mjs +0 -11
- package/browser/esm2022/lib/typeorm/find-options/operator/Between.mjs +0 -11
- package/browser/esm2022/lib/typeorm/find-options/operator/Equal.mjs +0 -15
- package/browser/esm2022/lib/typeorm/find-options/operator/ILike.mjs +0 -11
- package/browser/esm2022/lib/typeorm/find-options/operator/In.mjs +0 -11
- package/browser/esm2022/lib/typeorm/find-options/operator/IsNull.mjs +0 -11
- package/browser/esm2022/lib/typeorm/find-options/operator/LessThan.mjs +0 -11
- package/browser/esm2022/lib/typeorm/find-options/operator/LessThanOrEqual.mjs +0 -11
- package/browser/esm2022/lib/typeorm/find-options/operator/Like.mjs +0 -11
- package/browser/esm2022/lib/typeorm/find-options/operator/MoreThan.mjs +0 -11
- package/browser/esm2022/lib/typeorm/find-options/operator/MoreThanOrEqual.mjs +0 -11
- package/browser/esm2022/lib/typeorm/find-options/operator/Not.mjs +0 -12
- package/browser/esm2022/lib/typeorm/find-options/operator/Raw.mjs +0 -10
- package/browser/esm2022/lib/typeorm/globals.mjs +0 -165
- package/browser/esm2022/lib/typeorm/index.mjs +0 -157
- package/browser/esm2022/lib/typeorm/logger/AdvancedConsoleLogger.mjs +0 -109
- package/browser/esm2022/lib/typeorm/logger/DebugLogger.mjs +0 -94
- package/browser/esm2022/lib/typeorm/logger/Logger.mjs +0 -4
- package/browser/esm2022/lib/typeorm/logger/LoggerFactory.mjs +0 -36
- package/browser/esm2022/lib/typeorm/logger/LoggerOptions.mjs +0 -3
- package/browser/esm2022/lib/typeorm/logger/SimpleConsoleLogger.mjs +0 -108
- package/browser/esm2022/lib/typeorm/metadata/CheckMetadata.mjs +0 -26
- package/browser/esm2022/lib/typeorm/metadata/ColumnMetadata.mjs +0 -553
- package/browser/esm2022/lib/typeorm/metadata/EmbeddedMetadata.mjs +0 -206
- package/browser/esm2022/lib/typeorm/metadata/EntityListenerMetadata.mjs +0 -52
- package/browser/esm2022/lib/typeorm/metadata/EntityMetadata.mjs +0 -636
- package/browser/esm2022/lib/typeorm/metadata/ExclusionMetadata.mjs +0 -26
- package/browser/esm2022/lib/typeorm/metadata/ForeignKeyMetadata.mjs +0 -48
- package/browser/esm2022/lib/typeorm/metadata/IndexMetadata.mjs +0 -131
- package/browser/esm2022/lib/typeorm/metadata/RelationCountMetadata.mjs +0 -30
- package/browser/esm2022/lib/typeorm/metadata/RelationIdMetadata.mjs +0 -50
- package/browser/esm2022/lib/typeorm/metadata/RelationMetadata.mjs +0 -398
- package/browser/esm2022/lib/typeorm/metadata/UniqueMetadata.mjs +0 -90
- package/browser/esm2022/lib/typeorm/metadata/types/ClosureTreeOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata/types/DeferrableType.mjs +0 -3
- package/browser/esm2022/lib/typeorm/metadata/types/EventListenerTypes.mjs +0 -19
- package/browser/esm2022/lib/typeorm/metadata/types/OnDeleteType.mjs +0 -3
- package/browser/esm2022/lib/typeorm/metadata/types/OnUpdateType.mjs +0 -3
- package/browser/esm2022/lib/typeorm/metadata/types/PropertyTypeInFunction.mjs +0 -3
- package/browser/esm2022/lib/typeorm/metadata/types/RelationTypeInFunction.mjs +0 -3
- package/browser/esm2022/lib/typeorm/metadata/types/RelationTypes.mjs +0 -3
- package/browser/esm2022/lib/typeorm/metadata/types/TableTypes.mjs +0 -3
- package/browser/esm2022/lib/typeorm/metadata/types/TreeTypes.mjs +0 -3
- package/browser/esm2022/lib/typeorm/metadata-args/CheckMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/ColumnMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/DiscriminatorValueMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/EmbeddedMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/EntityListenerMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/EntityRepositoryMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/EntitySubscriberMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/ExclusionMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/GeneratedMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/IndexMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/InheritanceMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/JoinColumnMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/JoinTableMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/MetadataArgsStorage.mjs +0 -217
- package/browser/esm2022/lib/typeorm/metadata-args/NamingStrategyMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/RelationCountMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/RelationIdMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/RelationMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/TableMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/TransactionEntityMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/TransactionRepositoryMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/TreeMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/UniqueMetadataArgs.mjs +0 -4
- package/browser/esm2022/lib/typeorm/metadata-args/types/ColumnMode.mjs +0 -3
- package/browser/esm2022/lib/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.mjs +0 -131
- package/browser/esm2022/lib/typeorm/metadata-builder/EntityMetadataBuilder.mjs +0 -678
- package/browser/esm2022/lib/typeorm/metadata-builder/EntityMetadataValidator.mjs +0 -183
- package/browser/esm2022/lib/typeorm/metadata-builder/JunctionEntityMetadataBuilder.mjs +0 -262
- package/browser/esm2022/lib/typeorm/metadata-builder/MetadataUtils.mjs +0 -41
- package/browser/esm2022/lib/typeorm/metadata-builder/RelationJoinColumnBuilder.mjs +0 -167
- package/browser/esm2022/lib/typeorm/migration/Migration.mjs +0 -14
- package/browser/esm2022/lib/typeorm/migration/MigrationExecutor.mjs +0 -454
- package/browser/esm2022/lib/typeorm/migration/MigrationInterface.mjs +0 -4
- package/browser/esm2022/lib/typeorm/naming-strategy/DefaultNamingStrategy.mjs +0 -140
- package/browser/esm2022/lib/typeorm/naming-strategy/NamingStrategyInterface.mjs +0 -4
- package/browser/esm2022/lib/typeorm/persistence/EntityPersistExecutor.mjs +0 -125
- package/browser/esm2022/lib/typeorm/persistence/Subject.mjs +0 -212
- package/browser/esm2022/lib/typeorm/persistence/SubjectChangeMap.mjs +0 -4
- package/browser/esm2022/lib/typeorm/persistence/SubjectChangedColumnsComputer.mjs +0 -164
- package/browser/esm2022/lib/typeorm/persistence/SubjectDatabaseEntityLoader.mjs +0 -125
- package/browser/esm2022/lib/typeorm/persistence/SubjectExecutor.mjs +0 -721
- package/browser/esm2022/lib/typeorm/persistence/SubjectTopoligicalSorter.mjs +0 -151
- package/browser/esm2022/lib/typeorm/persistence/subject-builder/CascadesSubjectBuilder.mjs +0 -84
- package/browser/esm2022/lib/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.mjs +0 -153
- package/browser/esm2022/lib/typeorm/persistence/subject-builder/OneToManySubjectBuilder.mjs +0 -117
- package/browser/esm2022/lib/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.mjs +0 -95
- package/browser/esm2022/lib/typeorm/persistence/tree/ClosureSubjectExecutor.mjs +0 -220
- package/browser/esm2022/lib/typeorm/persistence/tree/MaterializedPathSubjectExecutor.mjs +0 -97
- package/browser/esm2022/lib/typeorm/persistence/tree/NestedSetSubjectExecutor.mjs +0 -250
- package/browser/esm2022/lib/typeorm/platform/PlatformTools.mjs +0 -346
- package/browser/esm2022/lib/typeorm/query-builder/Alias.mjs +0 -26
- package/browser/esm2022/lib/typeorm/query-builder/Brackets.mjs +0 -16
- package/browser/esm2022/lib/typeorm/query-builder/DeleteQueryBuilder.mjs +0 -181
- package/browser/esm2022/lib/typeorm/query-builder/InsertOrUpdateOptions.mjs +0 -3
- package/browser/esm2022/lib/typeorm/query-builder/InsertQueryBuilder.mjs +0 -651
- package/browser/esm2022/lib/typeorm/query-builder/JoinAttribute.mjs +0 -153
- package/browser/esm2022/lib/typeorm/query-builder/NotBrackets.mjs +0 -14
- package/browser/esm2022/lib/typeorm/query-builder/QueryBuilder.mjs +0 -967
- package/browser/esm2022/lib/typeorm/query-builder/QueryBuilderCte.mjs +0 -4
- package/browser/esm2022/lib/typeorm/query-builder/QueryBuilderUtils.mjs +0 -22
- package/browser/esm2022/lib/typeorm/query-builder/QueryExpressionMap.mjs +0 -309
- package/browser/esm2022/lib/typeorm/query-builder/QueryPartialEntity.mjs +0 -3
- package/browser/esm2022/lib/typeorm/query-builder/RelationIdLoader.mjs +0 -452
- package/browser/esm2022/lib/typeorm/query-builder/RelationLoader.mjs +0 -262
- package/browser/esm2022/lib/typeorm/query-builder/RelationQueryBuilder.mjs +0 -147
- package/browser/esm2022/lib/typeorm/query-builder/RelationRemover.mjs +0 -130
- package/browser/esm2022/lib/typeorm/query-builder/RelationUpdater.mjs +0 -141
- package/browser/esm2022/lib/typeorm/query-builder/ReturningResultsEntityUpdator.mjs +0 -141
- package/browser/esm2022/lib/typeorm/query-builder/SelectQuery.mjs +0 -4
- package/browser/esm2022/lib/typeorm/query-builder/SelectQueryBuilder.mjs +0 -2278
- package/browser/esm2022/lib/typeorm/query-builder/SelectQueryBuilderOption.mjs +0 -3
- package/browser/esm2022/lib/typeorm/query-builder/SoftDeleteQueryBuilder.mjs +0 -348
- package/browser/esm2022/lib/typeorm/query-builder/UpdateQueryBuilder.mjs +0 -510
- package/browser/esm2022/lib/typeorm/query-builder/WhereClause.mjs +0 -3
- package/browser/esm2022/lib/typeorm/query-builder/WhereExpressionBuilder.mjs +0 -4
- package/browser/esm2022/lib/typeorm/query-builder/relation-count/RelationCountAttribute.mjs +0 -71
- package/browser/esm2022/lib/typeorm/query-builder/relation-count/RelationCountLoadResult.mjs +0 -4
- package/browser/esm2022/lib/typeorm/query-builder/relation-count/RelationCountLoader.mjs +0 -142
- package/browser/esm2022/lib/typeorm/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.mjs +0 -33
- package/browser/esm2022/lib/typeorm/query-builder/relation-id/RelationIdAttribute.mjs +0 -79
- package/browser/esm2022/lib/typeorm/query-builder/relation-id/RelationIdLoadResult.mjs +0 -4
- package/browser/esm2022/lib/typeorm/query-builder/relation-id/RelationIdLoader.mjs +0 -247
- package/browser/esm2022/lib/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.mjs +0 -33
- package/browser/esm2022/lib/typeorm/query-builder/result/DeleteResult.mjs +0 -14
- package/browser/esm2022/lib/typeorm/query-builder/result/InsertResult.mjs +0 -25
- package/browser/esm2022/lib/typeorm/query-builder/result/UpdateResult.mjs +0 -25
- package/browser/esm2022/lib/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.mjs +0 -101
- package/browser/esm2022/lib/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.mjs +0 -67
- package/browser/esm2022/lib/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.mjs +0 -366
- package/browser/esm2022/lib/typeorm/query-runner/BaseQueryRunner.mjs +0 -392
- package/browser/esm2022/lib/typeorm/query-runner/QueryResult.mjs +0 -14
- package/browser/esm2022/lib/typeorm/query-runner/QueryRunner.mjs +0 -4
- package/browser/esm2022/lib/typeorm/repository/AbstractRepository.mjs +0 -80
- package/browser/esm2022/lib/typeorm/repository/BaseEntity.mjs +0 -283
- package/browser/esm2022/lib/typeorm/repository/FindTreesOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/repository/RemoveOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/repository/Repository.mjs +0 -275
- package/browser/esm2022/lib/typeorm/repository/SaveOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/repository/TreeRepository.mjs +0 -254
- package/browser/esm2022/lib/typeorm/repository/UpsertOptions.mjs +0 -7
- package/browser/esm2022/lib/typeorm/schema-builder/RdbmsSchemaBuilder.mjs +0 -770
- package/browser/esm2022/lib/typeorm/schema-builder/SchemaBuilder.mjs +0 -4
- package/browser/esm2022/lib/typeorm/schema-builder/options/TableCheckOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/schema-builder/options/TableColumnOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/schema-builder/options/TableExclusionOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/schema-builder/options/TableForeignKeyOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/schema-builder/options/TableIndexOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/schema-builder/options/TableOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/schema-builder/options/TableUniqueOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/schema-builder/options/ViewOptions.mjs +0 -4
- package/browser/esm2022/lib/typeorm/schema-builder/table/Table.mjs +0 -274
- package/browser/esm2022/lib/typeorm/schema-builder/table/TableCheck.mjs +0 -37
- package/browser/esm2022/lib/typeorm/schema-builder/table/TableColumn.mjs +0 -108
- package/browser/esm2022/lib/typeorm/schema-builder/table/TableExclusion.mjs +0 -31
- package/browser/esm2022/lib/typeorm/schema-builder/table/TableForeignKey.mjs +0 -60
- package/browser/esm2022/lib/typeorm/schema-builder/table/TableIndex.mjs +0 -53
- package/browser/esm2022/lib/typeorm/schema-builder/table/TableUnique.mjs +0 -38
- package/browser/esm2022/lib/typeorm/schema-builder/util/TableUtils.mjs +0 -38
- package/browser/esm2022/lib/typeorm/schema-builder/util/ViewUtils.mjs +0 -24
- package/browser/esm2022/lib/typeorm/schema-builder/view/View.mjs +0 -43
- package/browser/esm2022/lib/typeorm/subscriber/Broadcaster.mjs +0 -596
- package/browser/esm2022/lib/typeorm/subscriber/BroadcasterResult.mjs +0 -27
- package/browser/esm2022/lib/typeorm/subscriber/EntitySubscriberInterface.mjs +0 -4
- package/browser/esm2022/lib/typeorm/subscriber/event/InsertEvent.mjs +0 -4
- package/browser/esm2022/lib/typeorm/subscriber/event/LoadEvent.mjs +0 -4
- package/browser/esm2022/lib/typeorm/subscriber/event/RecoverEvent.mjs +0 -4
- package/browser/esm2022/lib/typeorm/subscriber/event/RemoveEvent.mjs +0 -4
- package/browser/esm2022/lib/typeorm/subscriber/event/SoftRemoveEvent.mjs +0 -4
- package/browser/esm2022/lib/typeorm/subscriber/event/TransactionCommitEvent.mjs +0 -4
- package/browser/esm2022/lib/typeorm/subscriber/event/TransactionRollbackEvent.mjs +0 -4
- package/browser/esm2022/lib/typeorm/subscriber/event/TransactionStartEvent.mjs +0 -4
- package/browser/esm2022/lib/typeorm/subscriber/event/UpdateEvent.mjs +0 -4
- package/browser/esm2022/lib/typeorm/util/ApplyValueTransformers.mjs +0 -22
- package/browser/esm2022/lib/typeorm/util/DateUtils.mjs +0 -216
- package/browser/esm2022/lib/typeorm/util/DepGraph.mjs +0 -222
- package/browser/esm2022/lib/typeorm/util/DirectoryExportedClassesLoader.mjs +0 -76
- package/browser/esm2022/lib/typeorm/util/ImportUtils.mjs +0 -86
- package/browser/esm2022/lib/typeorm/util/InstanceChecker.mjs +0 -114
- package/browser/esm2022/lib/typeorm/util/ObjectUtils.mjs +0 -38
- package/browser/esm2022/lib/typeorm/util/OrmUtils.mjs +0 -310
- package/browser/esm2022/lib/typeorm/util/PathUtils.mjs +0 -38
- package/browser/esm2022/lib/typeorm/util/RandomGenerator.mjs +0 -150
- package/browser/esm2022/lib/typeorm/util/StringUtils.mjs +0 -108
- package/browser/esm2022/lib/typeorm/util/TreeRepositoryUtils.mjs +0 -53
- package/browser/esm2022/lib/typeorm/util/VersionUtils.mjs +0 -17
- package/browser/esm2022/lib/typeorm/util/escapeRegExp.mjs +0 -4
- package/browser/esm2022/public-api.mjs +0 -2
- package/browser/esm2022/taon-typeorm.mjs +0 -5
- package/client/esm2022/lib/index.mjs +0 -4
- package/client/esm2022/lib/typeorm/cache/DbQueryResultCache.mjs +0 -251
- package/client/esm2022/lib/typeorm/cache/QueryResultCache.mjs +0 -4
- package/client/esm2022/lib/typeorm/cache/QueryResultCacheFactory.mjs +0 -33
- package/client/esm2022/lib/typeorm/cache/QueryResultCacheOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/cache/RedisQueryResultCache.mjs +0 -185
- package/client/esm2022/lib/typeorm/common/DeepPartial.mjs +0 -3
- package/client/esm2022/lib/typeorm/common/EntityTarget.mjs +0 -3
- package/client/esm2022/lib/typeorm/common/MixedList.mjs +0 -3
- package/client/esm2022/lib/typeorm/common/ObjectLiteral.mjs +0 -4
- package/client/esm2022/lib/typeorm/common/ObjectType.mjs +0 -3
- package/client/esm2022/lib/typeorm/common/RelationType.mjs +0 -3
- package/client/esm2022/lib/typeorm/connection/Connection.mjs +0 -13
- package/client/esm2022/lib/typeorm/connection/ConnectionManager.mjs +0 -57
- package/client/esm2022/lib/typeorm/connection/ConnectionMetadataBuilder.mjs +0 -63
- package/client/esm2022/lib/typeorm/connection/ConnectionOptions.mjs +0 -3
- package/client/esm2022/lib/typeorm/connection/ConnectionOptionsReader.mjs +0 -237
- package/client/esm2022/lib/typeorm/constants.mjs +0 -4
- package/client/esm2022/lib/typeorm/container.mjs +0 -57
- package/client/esm2022/lib/typeorm/data-source/BaseDataSourceOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/data-source/DataSource.mjs +0 -458
- package/client/esm2022/lib/typeorm/data-source/DataSourceOptions.mjs +0 -11
- package/client/esm2022/lib/typeorm/data-source/index.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/Check.mjs +0 -25
- package/client/esm2022/lib/typeorm/decorator/EntityRepository.mjs +0 -19
- package/client/esm2022/lib/typeorm/decorator/Exclusion.mjs +0 -25
- package/client/esm2022/lib/typeorm/decorator/Generated.mjs +0 -22
- package/client/esm2022/lib/typeorm/decorator/Index.mjs +0 -52
- package/client/esm2022/lib/typeorm/decorator/Unique.mjs +0 -48
- package/client/esm2022/lib/typeorm/decorator/columns/Column.mjs +0 -67
- package/client/esm2022/lib/typeorm/decorator/columns/CreateDateColumn.mjs +0 -19
- package/client/esm2022/lib/typeorm/decorator/columns/DeleteDateColumn.mjs +0 -18
- package/client/esm2022/lib/typeorm/decorator/columns/ObjectIdColumn.mjs +0 -23
- package/client/esm2022/lib/typeorm/decorator/columns/PrimaryColumn.mjs +0 -54
- package/client/esm2022/lib/typeorm/decorator/columns/PrimaryGeneratedColumn.mjs +0 -52
- package/client/esm2022/lib/typeorm/decorator/columns/UpdateDateColumn.mjs +0 -18
- package/client/esm2022/lib/typeorm/decorator/columns/VersionColumn.mjs +0 -19
- package/client/esm2022/lib/typeorm/decorator/columns/ViewColumn.mjs +0 -17
- package/client/esm2022/lib/typeorm/decorator/columns/VirtualColumn.mjs +0 -41
- package/client/esm2022/lib/typeorm/decorator/entity/ChildEntity.mjs +0 -21
- package/client/esm2022/lib/typeorm/decorator/entity/Entity.mjs +0 -28
- package/client/esm2022/lib/typeorm/decorator/entity/TableInheritance.mjs +0 -20
- package/client/esm2022/lib/typeorm/decorator/entity-view/ViewEntity.mjs +0 -30
- package/client/esm2022/lib/typeorm/decorator/listeners/AfterInsert.mjs +0 -17
- package/client/esm2022/lib/typeorm/decorator/listeners/AfterLoad.mjs +0 -17
- package/client/esm2022/lib/typeorm/decorator/listeners/AfterRecover.mjs +0 -17
- package/client/esm2022/lib/typeorm/decorator/listeners/AfterRemove.mjs +0 -17
- package/client/esm2022/lib/typeorm/decorator/listeners/AfterSoftRemove.mjs +0 -17
- package/client/esm2022/lib/typeorm/decorator/listeners/AfterUpdate.mjs +0 -17
- package/client/esm2022/lib/typeorm/decorator/listeners/BeforeInsert.mjs +0 -17
- package/client/esm2022/lib/typeorm/decorator/listeners/BeforeRecover.mjs +0 -17
- package/client/esm2022/lib/typeorm/decorator/listeners/BeforeRemove.mjs +0 -17
- package/client/esm2022/lib/typeorm/decorator/listeners/BeforeSoftRemove.mjs +0 -17
- package/client/esm2022/lib/typeorm/decorator/listeners/BeforeUpdate.mjs +0 -17
- package/client/esm2022/lib/typeorm/decorator/listeners/EventSubscriber.mjs +0 -15
- package/client/esm2022/lib/typeorm/decorator/options/ColumnCommonOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/ColumnEmbeddedOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/ColumnEnumOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/ColumnHstoreOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/ColumnNumericOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/ColumnOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/ColumnWithLengthOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/ColumnWithWidthOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/EntityOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/IndexOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/JoinColumnOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/JoinTableMultipleColumnsOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/JoinTableOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnIdentityOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnNumericOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnUUIDOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/RelationOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/SpatialColumnOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/UniqueOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/ValueTransformer.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/ViewColumnOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/ViewEntityOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/options/VirtualColumnOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/decorator/relations/JoinColumn.mjs +0 -25
- package/client/esm2022/lib/typeorm/decorator/relations/JoinTable.mjs +0 -31
- package/client/esm2022/lib/typeorm/decorator/relations/ManyToMany.mjs +0 -40
- package/client/esm2022/lib/typeorm/decorator/relations/ManyToOne.mjs +0 -40
- package/client/esm2022/lib/typeorm/decorator/relations/OneToMany.mjs +0 -32
- package/client/esm2022/lib/typeorm/decorator/relations/OneToOne.mjs +0 -39
- package/client/esm2022/lib/typeorm/decorator/relations/RelationCount.mjs +0 -20
- package/client/esm2022/lib/typeorm/decorator/relations/RelationId.mjs +0 -20
- package/client/esm2022/lib/typeorm/decorator/tree/Tree.mjs +0 -19
- package/client/esm2022/lib/typeorm/decorator/tree/TreeChildren.mjs +0 -34
- package/client/esm2022/lib/typeorm/decorator/tree/TreeLevelColumn.mjs +0 -17
- package/client/esm2022/lib/typeorm/decorator/tree/TreeParent.mjs +0 -34
- package/client/esm2022/lib/typeorm/driver/Driver.mjs +0 -4
- package/client/esm2022/lib/typeorm/driver/DriverFactory.mjs +0 -99
- package/client/esm2022/lib/typeorm/driver/DriverUtils.mjs +0 -213
- package/client/esm2022/lib/typeorm/driver/Query.mjs +0 -13
- package/client/esm2022/lib/typeorm/driver/SqlInMemory.mjs +0 -12
- package/client/esm2022/lib/typeorm/driver/cordova/CordovaConnectionOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/driver/cordova/CordovaDriver.mjs +0 -63
- package/client/esm2022/lib/typeorm/driver/cordova/CordovaQueryRunner.mjs +0 -152
- package/client/esm2022/lib/typeorm/driver/mongodb/typings.mjs +0 -6516
- package/client/esm2022/lib/typeorm/driver/nativescript/NativescriptConnectionOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/driver/nativescript/NativescriptDriver.mjs +0 -82
- package/client/esm2022/lib/typeorm/driver/nativescript/NativescriptQueryRunner.mjs +0 -82
- package/client/esm2022/lib/typeorm/driver/react-native/ReactNativeConnectionOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/driver/react-native/ReactNativeDriver.mjs +0 -69
- package/client/esm2022/lib/typeorm/driver/react-native/ReactNativeQueryRunner.mjs +0 -81
- package/client/esm2022/lib/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.mjs +0 -582
- package/client/esm2022/lib/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.mjs +0 -1421
- package/client/esm2022/lib/typeorm/driver/sqljs/SqljsConnectionOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/driver/sqljs/SqljsDriver.mjs +0 -249
- package/client/esm2022/lib/typeorm/driver/sqljs/SqljsQueryRunner.mjs +0 -107
- package/client/esm2022/lib/typeorm/driver/types/ColumnTypes.mjs +0 -3
- package/client/esm2022/lib/typeorm/driver/types/CteCapabilities.mjs +0 -4
- package/client/esm2022/lib/typeorm/driver/types/DataTypeDefaults.mjs +0 -4
- package/client/esm2022/lib/typeorm/driver/types/DatabaseType.mjs +0 -3
- package/client/esm2022/lib/typeorm/driver/types/IsolationLevel.mjs +0 -3
- package/client/esm2022/lib/typeorm/driver/types/MappedColumnTypes.mjs +0 -4
- package/client/esm2022/lib/typeorm/driver/types/MetadataTableType.mjs +0 -9
- package/client/esm2022/lib/typeorm/driver/types/ReplicationMode.mjs +0 -3
- package/client/esm2022/lib/typeorm/driver/types/UpsertType.mjs +0 -3
- package/client/esm2022/lib/typeorm/entity-manager/EntityManager.mjs +0 -743
- package/client/esm2022/lib/typeorm/entity-manager/EntityManagerFactory.mjs +0 -23
- package/client/esm2022/lib/typeorm/entity-manager/SqljsEntityManager.mjs +0 -35
- package/client/esm2022/lib/typeorm/entity-schema/EntitySchema.mjs +0 -12
- package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaCheckOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaColumnOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.mjs +0 -5
- package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaEmbeddedError.mjs +0 -15
- package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaExclusionOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaIndexOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaOptions.mjs +0 -8
- package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaRelationIdOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaRelationOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaTransformer.mjs +0 -268
- package/client/esm2022/lib/typeorm/entity-schema/EntitySchemaUniqueOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/error/AlreadyHasActiveConnectionError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/CannotAttachTreeChildrenEntityError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/CannotConnectAlreadyConnectedError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/CannotCreateEntityIdMapError.mjs +0 -18
- package/client/esm2022/lib/typeorm/error/CannotDetermineEntityError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/CannotExecuteNotConnectedError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/CannotGetEntityManagerNotConnectedError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/CannotReflectMethodParameterTypeError.mjs +0 -15
- package/client/esm2022/lib/typeorm/error/CircularRelationsError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/ColumnTypeUndefinedError.mjs +0 -16
- package/client/esm2022/lib/typeorm/error/ConnectionIsNotSetError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/ConnectionNotFoundError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/CustomRepositoryCannotInheritRepositoryError.mjs +0 -15
- package/client/esm2022/lib/typeorm/error/CustomRepositoryDoesNotHaveEntityError.mjs +0 -15
- package/client/esm2022/lib/typeorm/error/CustomRepositoryNotFoundError.mjs +0 -15
- package/client/esm2022/lib/typeorm/error/DataTypeNotSupportedError.mjs +0 -11
- package/client/esm2022/lib/typeorm/error/DriverOptionNotSetError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/DriverPackageNotInstalledError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/EntityMetadataNotFoundError.mjs +0 -26
- package/client/esm2022/lib/typeorm/error/EntityNotFoundError.mjs +0 -37
- package/client/esm2022/lib/typeorm/error/EntityPropertyNotFoundError.mjs +0 -14
- package/client/esm2022/lib/typeorm/error/FindRelationsNotFoundError.mjs +0 -20
- package/client/esm2022/lib/typeorm/error/InitializedRelationError.mjs +0 -17
- package/client/esm2022/lib/typeorm/error/InsertValuesMissingError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/LimitOnUpdateNotSupportedError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/LockNotSupportedOnGivenDriverError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/MetadataAlreadyExistsError.mjs +0 -15
- package/client/esm2022/lib/typeorm/error/MetadataWithSuchNameAlreadyExistsError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/MissingDeleteDateColumnError.mjs +0 -9
- package/client/esm2022/lib/typeorm/error/MissingDriverError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/MissingJoinColumnError.mjs +0 -20
- package/client/esm2022/lib/typeorm/error/MissingJoinTableError.mjs +0 -20
- package/client/esm2022/lib/typeorm/error/MissingPrimaryColumnError.mjs +0 -10
- package/client/esm2022/lib/typeorm/error/MustBeEntityError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/NamingStrategyNotFoundError.mjs +0 -18
- package/client/esm2022/lib/typeorm/error/NestedSetMultipleRootError.mjs +0 -9
- package/client/esm2022/lib/typeorm/error/NoConnectionForRepositoryError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/NoConnectionOptionError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/NoNeedToReleaseEntityManagerError.mjs +0 -14
- package/client/esm2022/lib/typeorm/error/NoVersionOrUpdateDateColumnError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/OffsetWithoutLimitNotSupportedError.mjs +0 -14
- package/client/esm2022/lib/typeorm/error/OptimisticLockCanNotBeUsedError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/OptimisticLockVersionMismatchError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/PersistedEntityNotFoundError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/PessimisticLockTransactionRequiredError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/PrimaryColumnCannotBeNullableError.mjs +0 -10
- package/client/esm2022/lib/typeorm/error/QueryFailedError.mjs +0 -27
- package/client/esm2022/lib/typeorm/error/QueryRunnerAlreadyReleasedError.mjs +0 -9
- package/client/esm2022/lib/typeorm/error/QueryRunnerProviderAlreadyReleasedError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/RepositoryNotTreeError.mjs +0 -29
- package/client/esm2022/lib/typeorm/error/ReturningStatementNotSupportedError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/SubjectRemovedAndUpdatedError.mjs +0 -13
- package/client/esm2022/lib/typeorm/error/SubjectWithoutIdentifierError.mjs +0 -14
- package/client/esm2022/lib/typeorm/error/TransactionAlreadyStartedError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/TransactionNotStartedError.mjs +0 -12
- package/client/esm2022/lib/typeorm/error/TreeRepositoryNotSupportedError.mjs +0 -9
- package/client/esm2022/lib/typeorm/error/TypeORMError.mjs +0 -18
- package/client/esm2022/lib/typeorm/error/UpdateValuesMissingError.mjs +0 -9
- package/client/esm2022/lib/typeorm/error/UsingJoinColumnIsNotAllowedError.mjs +0 -10
- package/client/esm2022/lib/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.mjs +0 -11
- package/client/esm2022/lib/typeorm/error/UsingJoinTableIsNotAllowedError.mjs +0 -11
- package/client/esm2022/lib/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.mjs +0 -11
- package/client/esm2022/lib/typeorm/error/index.mjs +0 -63
- package/client/esm2022/lib/typeorm/find-options/EqualOperator.mjs +0 -10
- package/client/esm2022/lib/typeorm/find-options/FindManyOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/find-options/FindOneOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/find-options/FindOperator.mjs +0 -74
- package/client/esm2022/lib/typeorm/find-options/FindOperatorType.mjs +0 -3
- package/client/esm2022/lib/typeorm/find-options/FindOptionsOrder.mjs +0 -3
- package/client/esm2022/lib/typeorm/find-options/FindOptionsRelations.mjs +0 -3
- package/client/esm2022/lib/typeorm/find-options/FindOptionsSelect.mjs +0 -5
- package/client/esm2022/lib/typeorm/find-options/FindOptionsUtils.mjs +0 -293
- package/client/esm2022/lib/typeorm/find-options/FindOptionsWhere.mjs +0 -3
- package/client/esm2022/lib/typeorm/find-options/FindTreeOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/find-options/JoinOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/find-options/OrderByCondition.mjs +0 -3
- package/client/esm2022/lib/typeorm/find-options/operator/Any.mjs +0 -11
- package/client/esm2022/lib/typeorm/find-options/operator/ArrayContainedBy.mjs +0 -11
- package/client/esm2022/lib/typeorm/find-options/operator/ArrayContains.mjs +0 -11
- package/client/esm2022/lib/typeorm/find-options/operator/ArrayOverlap.mjs +0 -11
- package/client/esm2022/lib/typeorm/find-options/operator/Between.mjs +0 -11
- package/client/esm2022/lib/typeorm/find-options/operator/Equal.mjs +0 -15
- package/client/esm2022/lib/typeorm/find-options/operator/ILike.mjs +0 -11
- package/client/esm2022/lib/typeorm/find-options/operator/In.mjs +0 -11
- package/client/esm2022/lib/typeorm/find-options/operator/IsNull.mjs +0 -11
- package/client/esm2022/lib/typeorm/find-options/operator/LessThan.mjs +0 -11
- package/client/esm2022/lib/typeorm/find-options/operator/LessThanOrEqual.mjs +0 -11
- package/client/esm2022/lib/typeorm/find-options/operator/Like.mjs +0 -11
- package/client/esm2022/lib/typeorm/find-options/operator/MoreThan.mjs +0 -11
- package/client/esm2022/lib/typeorm/find-options/operator/MoreThanOrEqual.mjs +0 -11
- package/client/esm2022/lib/typeorm/find-options/operator/Not.mjs +0 -12
- package/client/esm2022/lib/typeorm/find-options/operator/Raw.mjs +0 -10
- package/client/esm2022/lib/typeorm/globals.mjs +0 -165
- package/client/esm2022/lib/typeorm/index.mjs +0 -157
- package/client/esm2022/lib/typeorm/logger/AdvancedConsoleLogger.mjs +0 -109
- package/client/esm2022/lib/typeorm/logger/DebugLogger.mjs +0 -94
- package/client/esm2022/lib/typeorm/logger/Logger.mjs +0 -4
- package/client/esm2022/lib/typeorm/logger/LoggerFactory.mjs +0 -36
- package/client/esm2022/lib/typeorm/logger/LoggerOptions.mjs +0 -3
- package/client/esm2022/lib/typeorm/logger/SimpleConsoleLogger.mjs +0 -108
- package/client/esm2022/lib/typeorm/metadata/CheckMetadata.mjs +0 -26
- package/client/esm2022/lib/typeorm/metadata/ColumnMetadata.mjs +0 -553
- package/client/esm2022/lib/typeorm/metadata/EmbeddedMetadata.mjs +0 -206
- package/client/esm2022/lib/typeorm/metadata/EntityListenerMetadata.mjs +0 -52
- package/client/esm2022/lib/typeorm/metadata/EntityMetadata.mjs +0 -636
- package/client/esm2022/lib/typeorm/metadata/ExclusionMetadata.mjs +0 -26
- package/client/esm2022/lib/typeorm/metadata/ForeignKeyMetadata.mjs +0 -48
- package/client/esm2022/lib/typeorm/metadata/IndexMetadata.mjs +0 -131
- package/client/esm2022/lib/typeorm/metadata/RelationCountMetadata.mjs +0 -30
- package/client/esm2022/lib/typeorm/metadata/RelationIdMetadata.mjs +0 -50
- package/client/esm2022/lib/typeorm/metadata/RelationMetadata.mjs +0 -398
- package/client/esm2022/lib/typeorm/metadata/UniqueMetadata.mjs +0 -90
- package/client/esm2022/lib/typeorm/metadata/types/ClosureTreeOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata/types/DeferrableType.mjs +0 -3
- package/client/esm2022/lib/typeorm/metadata/types/EventListenerTypes.mjs +0 -19
- package/client/esm2022/lib/typeorm/metadata/types/OnDeleteType.mjs +0 -3
- package/client/esm2022/lib/typeorm/metadata/types/OnUpdateType.mjs +0 -3
- package/client/esm2022/lib/typeorm/metadata/types/PropertyTypeInFunction.mjs +0 -3
- package/client/esm2022/lib/typeorm/metadata/types/RelationTypeInFunction.mjs +0 -3
- package/client/esm2022/lib/typeorm/metadata/types/RelationTypes.mjs +0 -3
- package/client/esm2022/lib/typeorm/metadata/types/TableTypes.mjs +0 -3
- package/client/esm2022/lib/typeorm/metadata/types/TreeTypes.mjs +0 -3
- package/client/esm2022/lib/typeorm/metadata-args/CheckMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/ColumnMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/DiscriminatorValueMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/EmbeddedMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/EntityListenerMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/EntityRepositoryMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/EntitySubscriberMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/ExclusionMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/GeneratedMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/IndexMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/InheritanceMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/JoinColumnMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/JoinTableMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/MetadataArgsStorage.mjs +0 -217
- package/client/esm2022/lib/typeorm/metadata-args/NamingStrategyMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/RelationCountMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/RelationIdMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/RelationMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/TableMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/TransactionEntityMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/TransactionRepositoryMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/TreeMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/UniqueMetadataArgs.mjs +0 -4
- package/client/esm2022/lib/typeorm/metadata-args/types/ColumnMode.mjs +0 -3
- package/client/esm2022/lib/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.mjs +0 -131
- package/client/esm2022/lib/typeorm/metadata-builder/EntityMetadataBuilder.mjs +0 -678
- package/client/esm2022/lib/typeorm/metadata-builder/EntityMetadataValidator.mjs +0 -183
- package/client/esm2022/lib/typeorm/metadata-builder/JunctionEntityMetadataBuilder.mjs +0 -262
- package/client/esm2022/lib/typeorm/metadata-builder/MetadataUtils.mjs +0 -41
- package/client/esm2022/lib/typeorm/metadata-builder/RelationJoinColumnBuilder.mjs +0 -167
- package/client/esm2022/lib/typeorm/migration/Migration.mjs +0 -14
- package/client/esm2022/lib/typeorm/migration/MigrationExecutor.mjs +0 -454
- package/client/esm2022/lib/typeorm/migration/MigrationInterface.mjs +0 -4
- package/client/esm2022/lib/typeorm/naming-strategy/DefaultNamingStrategy.mjs +0 -140
- package/client/esm2022/lib/typeorm/naming-strategy/NamingStrategyInterface.mjs +0 -4
- package/client/esm2022/lib/typeorm/persistence/EntityPersistExecutor.mjs +0 -125
- package/client/esm2022/lib/typeorm/persistence/Subject.mjs +0 -212
- package/client/esm2022/lib/typeorm/persistence/SubjectChangeMap.mjs +0 -4
- package/client/esm2022/lib/typeorm/persistence/SubjectChangedColumnsComputer.mjs +0 -164
- package/client/esm2022/lib/typeorm/persistence/SubjectDatabaseEntityLoader.mjs +0 -125
- package/client/esm2022/lib/typeorm/persistence/SubjectExecutor.mjs +0 -721
- package/client/esm2022/lib/typeorm/persistence/SubjectTopoligicalSorter.mjs +0 -151
- package/client/esm2022/lib/typeorm/persistence/subject-builder/CascadesSubjectBuilder.mjs +0 -84
- package/client/esm2022/lib/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.mjs +0 -153
- package/client/esm2022/lib/typeorm/persistence/subject-builder/OneToManySubjectBuilder.mjs +0 -117
- package/client/esm2022/lib/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.mjs +0 -95
- package/client/esm2022/lib/typeorm/persistence/tree/ClosureSubjectExecutor.mjs +0 -220
- package/client/esm2022/lib/typeorm/persistence/tree/MaterializedPathSubjectExecutor.mjs +0 -97
- package/client/esm2022/lib/typeorm/persistence/tree/NestedSetSubjectExecutor.mjs +0 -250
- package/client/esm2022/lib/typeorm/platform/PlatformTools.mjs +0 -346
- package/client/esm2022/lib/typeorm/query-builder/Alias.mjs +0 -26
- package/client/esm2022/lib/typeorm/query-builder/Brackets.mjs +0 -16
- package/client/esm2022/lib/typeorm/query-builder/DeleteQueryBuilder.mjs +0 -181
- package/client/esm2022/lib/typeorm/query-builder/InsertOrUpdateOptions.mjs +0 -3
- package/client/esm2022/lib/typeorm/query-builder/InsertQueryBuilder.mjs +0 -651
- package/client/esm2022/lib/typeorm/query-builder/JoinAttribute.mjs +0 -153
- package/client/esm2022/lib/typeorm/query-builder/NotBrackets.mjs +0 -14
- package/client/esm2022/lib/typeorm/query-builder/QueryBuilder.mjs +0 -967
- package/client/esm2022/lib/typeorm/query-builder/QueryBuilderCte.mjs +0 -4
- package/client/esm2022/lib/typeorm/query-builder/QueryBuilderUtils.mjs +0 -22
- package/client/esm2022/lib/typeorm/query-builder/QueryExpressionMap.mjs +0 -309
- package/client/esm2022/lib/typeorm/query-builder/QueryPartialEntity.mjs +0 -3
- package/client/esm2022/lib/typeorm/query-builder/RelationIdLoader.mjs +0 -452
- package/client/esm2022/lib/typeorm/query-builder/RelationLoader.mjs +0 -262
- package/client/esm2022/lib/typeorm/query-builder/RelationQueryBuilder.mjs +0 -147
- package/client/esm2022/lib/typeorm/query-builder/RelationRemover.mjs +0 -130
- package/client/esm2022/lib/typeorm/query-builder/RelationUpdater.mjs +0 -141
- package/client/esm2022/lib/typeorm/query-builder/ReturningResultsEntityUpdator.mjs +0 -141
- package/client/esm2022/lib/typeorm/query-builder/SelectQuery.mjs +0 -4
- package/client/esm2022/lib/typeorm/query-builder/SelectQueryBuilder.mjs +0 -2278
- package/client/esm2022/lib/typeorm/query-builder/SelectQueryBuilderOption.mjs +0 -3
- package/client/esm2022/lib/typeorm/query-builder/SoftDeleteQueryBuilder.mjs +0 -348
- package/client/esm2022/lib/typeorm/query-builder/UpdateQueryBuilder.mjs +0 -510
- package/client/esm2022/lib/typeorm/query-builder/WhereClause.mjs +0 -3
- package/client/esm2022/lib/typeorm/query-builder/WhereExpressionBuilder.mjs +0 -4
- package/client/esm2022/lib/typeorm/query-builder/relation-count/RelationCountAttribute.mjs +0 -71
- package/client/esm2022/lib/typeorm/query-builder/relation-count/RelationCountLoadResult.mjs +0 -4
- package/client/esm2022/lib/typeorm/query-builder/relation-count/RelationCountLoader.mjs +0 -142
- package/client/esm2022/lib/typeorm/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.mjs +0 -33
- package/client/esm2022/lib/typeorm/query-builder/relation-id/RelationIdAttribute.mjs +0 -79
- package/client/esm2022/lib/typeorm/query-builder/relation-id/RelationIdLoadResult.mjs +0 -4
- package/client/esm2022/lib/typeorm/query-builder/relation-id/RelationIdLoader.mjs +0 -247
- package/client/esm2022/lib/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.mjs +0 -33
- package/client/esm2022/lib/typeorm/query-builder/result/DeleteResult.mjs +0 -14
- package/client/esm2022/lib/typeorm/query-builder/result/InsertResult.mjs +0 -25
- package/client/esm2022/lib/typeorm/query-builder/result/UpdateResult.mjs +0 -25
- package/client/esm2022/lib/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.mjs +0 -101
- package/client/esm2022/lib/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.mjs +0 -67
- package/client/esm2022/lib/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.mjs +0 -366
- package/client/esm2022/lib/typeorm/query-runner/BaseQueryRunner.mjs +0 -392
- package/client/esm2022/lib/typeorm/query-runner/QueryResult.mjs +0 -14
- package/client/esm2022/lib/typeorm/query-runner/QueryRunner.mjs +0 -4
- package/client/esm2022/lib/typeorm/repository/AbstractRepository.mjs +0 -80
- package/client/esm2022/lib/typeorm/repository/BaseEntity.mjs +0 -283
- package/client/esm2022/lib/typeorm/repository/FindTreesOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/repository/RemoveOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/repository/Repository.mjs +0 -275
- package/client/esm2022/lib/typeorm/repository/SaveOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/repository/TreeRepository.mjs +0 -254
- package/client/esm2022/lib/typeorm/repository/UpsertOptions.mjs +0 -7
- package/client/esm2022/lib/typeorm/schema-builder/RdbmsSchemaBuilder.mjs +0 -770
- package/client/esm2022/lib/typeorm/schema-builder/SchemaBuilder.mjs +0 -4
- package/client/esm2022/lib/typeorm/schema-builder/options/TableCheckOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/schema-builder/options/TableColumnOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/schema-builder/options/TableExclusionOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/schema-builder/options/TableForeignKeyOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/schema-builder/options/TableIndexOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/schema-builder/options/TableOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/schema-builder/options/TableUniqueOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/schema-builder/options/ViewOptions.mjs +0 -4
- package/client/esm2022/lib/typeorm/schema-builder/table/Table.mjs +0 -274
- package/client/esm2022/lib/typeorm/schema-builder/table/TableCheck.mjs +0 -37
- package/client/esm2022/lib/typeorm/schema-builder/table/TableColumn.mjs +0 -108
- package/client/esm2022/lib/typeorm/schema-builder/table/TableExclusion.mjs +0 -31
- package/client/esm2022/lib/typeorm/schema-builder/table/TableForeignKey.mjs +0 -60
- package/client/esm2022/lib/typeorm/schema-builder/table/TableIndex.mjs +0 -53
- package/client/esm2022/lib/typeorm/schema-builder/table/TableUnique.mjs +0 -38
- package/client/esm2022/lib/typeorm/schema-builder/util/TableUtils.mjs +0 -38
- package/client/esm2022/lib/typeorm/schema-builder/util/ViewUtils.mjs +0 -24
- package/client/esm2022/lib/typeorm/schema-builder/view/View.mjs +0 -43
- package/client/esm2022/lib/typeorm/subscriber/Broadcaster.mjs +0 -596
- package/client/esm2022/lib/typeorm/subscriber/BroadcasterResult.mjs +0 -27
- package/client/esm2022/lib/typeorm/subscriber/EntitySubscriberInterface.mjs +0 -4
- package/client/esm2022/lib/typeorm/subscriber/event/InsertEvent.mjs +0 -4
- package/client/esm2022/lib/typeorm/subscriber/event/LoadEvent.mjs +0 -4
- package/client/esm2022/lib/typeorm/subscriber/event/RecoverEvent.mjs +0 -4
- package/client/esm2022/lib/typeorm/subscriber/event/RemoveEvent.mjs +0 -4
- package/client/esm2022/lib/typeorm/subscriber/event/SoftRemoveEvent.mjs +0 -4
- package/client/esm2022/lib/typeorm/subscriber/event/TransactionCommitEvent.mjs +0 -4
- package/client/esm2022/lib/typeorm/subscriber/event/TransactionRollbackEvent.mjs +0 -4
- package/client/esm2022/lib/typeorm/subscriber/event/TransactionStartEvent.mjs +0 -4
- package/client/esm2022/lib/typeorm/subscriber/event/UpdateEvent.mjs +0 -4
- package/client/esm2022/lib/typeorm/util/ApplyValueTransformers.mjs +0 -22
- package/client/esm2022/lib/typeorm/util/DateUtils.mjs +0 -216
- package/client/esm2022/lib/typeorm/util/DepGraph.mjs +0 -222
- package/client/esm2022/lib/typeorm/util/DirectoryExportedClassesLoader.mjs +0 -76
- package/client/esm2022/lib/typeorm/util/ImportUtils.mjs +0 -86
- package/client/esm2022/lib/typeorm/util/InstanceChecker.mjs +0 -114
- package/client/esm2022/lib/typeorm/util/ObjectUtils.mjs +0 -38
- package/client/esm2022/lib/typeorm/util/OrmUtils.mjs +0 -310
- package/client/esm2022/lib/typeorm/util/PathUtils.mjs +0 -38
- package/client/esm2022/lib/typeorm/util/RandomGenerator.mjs +0 -150
- package/client/esm2022/lib/typeorm/util/StringUtils.mjs +0 -108
- package/client/esm2022/lib/typeorm/util/TreeRepositoryUtils.mjs +0 -53
- package/client/esm2022/lib/typeorm/util/VersionUtils.mjs +0 -17
- package/client/esm2022/lib/typeorm/util/escapeRegExp.mjs +0 -4
- package/client/esm2022/public-api.mjs +0 -2
- package/client/esm2022/taon-typeorm.mjs +0 -5
- package/taon.jsonc +0 -8
- package/websql/esm2022/lib/index.mjs +0 -4
- package/websql/esm2022/lib/typeorm/cache/DbQueryResultCache.mjs +0 -251
- package/websql/esm2022/lib/typeorm/cache/QueryResultCache.mjs +0 -4
- package/websql/esm2022/lib/typeorm/cache/QueryResultCacheFactory.mjs +0 -33
- package/websql/esm2022/lib/typeorm/cache/QueryResultCacheOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/cache/RedisQueryResultCache.mjs +0 -185
- package/websql/esm2022/lib/typeorm/common/DeepPartial.mjs +0 -3
- package/websql/esm2022/lib/typeorm/common/EntityTarget.mjs +0 -3
- package/websql/esm2022/lib/typeorm/common/MixedList.mjs +0 -3
- package/websql/esm2022/lib/typeorm/common/ObjectLiteral.mjs +0 -4
- package/websql/esm2022/lib/typeorm/common/ObjectType.mjs +0 -3
- package/websql/esm2022/lib/typeorm/common/RelationType.mjs +0 -3
- package/websql/esm2022/lib/typeorm/connection/Connection.mjs +0 -13
- package/websql/esm2022/lib/typeorm/connection/ConnectionManager.mjs +0 -57
- package/websql/esm2022/lib/typeorm/connection/ConnectionMetadataBuilder.mjs +0 -63
- package/websql/esm2022/lib/typeorm/connection/ConnectionOptions.mjs +0 -3
- package/websql/esm2022/lib/typeorm/connection/ConnectionOptionsReader.mjs +0 -237
- package/websql/esm2022/lib/typeorm/constants.mjs +0 -4
- package/websql/esm2022/lib/typeorm/container.mjs +0 -57
- package/websql/esm2022/lib/typeorm/data-source/BaseDataSourceOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/data-source/DataSource.mjs +0 -458
- package/websql/esm2022/lib/typeorm/data-source/DataSourceOptions.mjs +0 -11
- package/websql/esm2022/lib/typeorm/data-source/index.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/Check.mjs +0 -25
- package/websql/esm2022/lib/typeorm/decorator/EntityRepository.mjs +0 -19
- package/websql/esm2022/lib/typeorm/decorator/Exclusion.mjs +0 -25
- package/websql/esm2022/lib/typeorm/decorator/Generated.mjs +0 -22
- package/websql/esm2022/lib/typeorm/decorator/Index.mjs +0 -52
- package/websql/esm2022/lib/typeorm/decorator/Unique.mjs +0 -48
- package/websql/esm2022/lib/typeorm/decorator/columns/Column.mjs +0 -67
- package/websql/esm2022/lib/typeorm/decorator/columns/CreateDateColumn.mjs +0 -19
- package/websql/esm2022/lib/typeorm/decorator/columns/DeleteDateColumn.mjs +0 -18
- package/websql/esm2022/lib/typeorm/decorator/columns/ObjectIdColumn.mjs +0 -23
- package/websql/esm2022/lib/typeorm/decorator/columns/PrimaryColumn.mjs +0 -54
- package/websql/esm2022/lib/typeorm/decorator/columns/PrimaryGeneratedColumn.mjs +0 -52
- package/websql/esm2022/lib/typeorm/decorator/columns/UpdateDateColumn.mjs +0 -18
- package/websql/esm2022/lib/typeorm/decorator/columns/VersionColumn.mjs +0 -19
- package/websql/esm2022/lib/typeorm/decorator/columns/ViewColumn.mjs +0 -17
- package/websql/esm2022/lib/typeorm/decorator/columns/VirtualColumn.mjs +0 -41
- package/websql/esm2022/lib/typeorm/decorator/entity/ChildEntity.mjs +0 -21
- package/websql/esm2022/lib/typeorm/decorator/entity/Entity.mjs +0 -28
- package/websql/esm2022/lib/typeorm/decorator/entity/TableInheritance.mjs +0 -20
- package/websql/esm2022/lib/typeorm/decorator/entity-view/ViewEntity.mjs +0 -30
- package/websql/esm2022/lib/typeorm/decorator/listeners/AfterInsert.mjs +0 -17
- package/websql/esm2022/lib/typeorm/decorator/listeners/AfterLoad.mjs +0 -17
- package/websql/esm2022/lib/typeorm/decorator/listeners/AfterRecover.mjs +0 -17
- package/websql/esm2022/lib/typeorm/decorator/listeners/AfterRemove.mjs +0 -17
- package/websql/esm2022/lib/typeorm/decorator/listeners/AfterSoftRemove.mjs +0 -17
- package/websql/esm2022/lib/typeorm/decorator/listeners/AfterUpdate.mjs +0 -17
- package/websql/esm2022/lib/typeorm/decorator/listeners/BeforeInsert.mjs +0 -17
- package/websql/esm2022/lib/typeorm/decorator/listeners/BeforeRecover.mjs +0 -17
- package/websql/esm2022/lib/typeorm/decorator/listeners/BeforeRemove.mjs +0 -17
- package/websql/esm2022/lib/typeorm/decorator/listeners/BeforeSoftRemove.mjs +0 -17
- package/websql/esm2022/lib/typeorm/decorator/listeners/BeforeUpdate.mjs +0 -17
- package/websql/esm2022/lib/typeorm/decorator/listeners/EventSubscriber.mjs +0 -15
- package/websql/esm2022/lib/typeorm/decorator/options/ColumnCommonOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/ColumnEmbeddedOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/ColumnEnumOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/ColumnHstoreOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/ColumnNumericOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/ColumnOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/ColumnWithLengthOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/ColumnWithWidthOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/EntityOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/IndexOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/JoinColumnOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/JoinTableMultipleColumnsOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/JoinTableOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnIdentityOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnNumericOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/PrimaryGeneratedColumnUUIDOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/RelationOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/SpatialColumnOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/UniqueOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/ValueTransformer.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/ViewColumnOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/ViewEntityOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/options/VirtualColumnOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/decorator/relations/JoinColumn.mjs +0 -25
- package/websql/esm2022/lib/typeorm/decorator/relations/JoinTable.mjs +0 -31
- package/websql/esm2022/lib/typeorm/decorator/relations/ManyToMany.mjs +0 -40
- package/websql/esm2022/lib/typeorm/decorator/relations/ManyToOne.mjs +0 -40
- package/websql/esm2022/lib/typeorm/decorator/relations/OneToMany.mjs +0 -32
- package/websql/esm2022/lib/typeorm/decorator/relations/OneToOne.mjs +0 -39
- package/websql/esm2022/lib/typeorm/decorator/relations/RelationCount.mjs +0 -20
- package/websql/esm2022/lib/typeorm/decorator/relations/RelationId.mjs +0 -20
- package/websql/esm2022/lib/typeorm/decorator/tree/Tree.mjs +0 -19
- package/websql/esm2022/lib/typeorm/decorator/tree/TreeChildren.mjs +0 -34
- package/websql/esm2022/lib/typeorm/decorator/tree/TreeLevelColumn.mjs +0 -17
- package/websql/esm2022/lib/typeorm/decorator/tree/TreeParent.mjs +0 -34
- package/websql/esm2022/lib/typeorm/driver/Driver.mjs +0 -4
- package/websql/esm2022/lib/typeorm/driver/DriverFactory.mjs +0 -99
- package/websql/esm2022/lib/typeorm/driver/DriverUtils.mjs +0 -213
- package/websql/esm2022/lib/typeorm/driver/Query.mjs +0 -13
- package/websql/esm2022/lib/typeorm/driver/SqlInMemory.mjs +0 -12
- package/websql/esm2022/lib/typeorm/driver/cordova/CordovaConnectionOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/driver/cordova/CordovaDriver.mjs +0 -63
- package/websql/esm2022/lib/typeorm/driver/cordova/CordovaQueryRunner.mjs +0 -152
- package/websql/esm2022/lib/typeorm/driver/mongodb/typings.mjs +0 -6516
- package/websql/esm2022/lib/typeorm/driver/nativescript/NativescriptConnectionOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/driver/nativescript/NativescriptDriver.mjs +0 -82
- package/websql/esm2022/lib/typeorm/driver/nativescript/NativescriptQueryRunner.mjs +0 -82
- package/websql/esm2022/lib/typeorm/driver/react-native/ReactNativeConnectionOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/driver/react-native/ReactNativeDriver.mjs +0 -69
- package/websql/esm2022/lib/typeorm/driver/react-native/ReactNativeQueryRunner.mjs +0 -81
- package/websql/esm2022/lib/typeorm/driver/sqlite-abstract/AbstractSqliteDriver.mjs +0 -582
- package/websql/esm2022/lib/typeorm/driver/sqlite-abstract/AbstractSqliteQueryRunner.mjs +0 -1421
- package/websql/esm2022/lib/typeorm/driver/sqljs/SqljsConnectionOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/driver/sqljs/SqljsDriver.mjs +0 -249
- package/websql/esm2022/lib/typeorm/driver/sqljs/SqljsQueryRunner.mjs +0 -107
- package/websql/esm2022/lib/typeorm/driver/types/ColumnTypes.mjs +0 -3
- package/websql/esm2022/lib/typeorm/driver/types/CteCapabilities.mjs +0 -4
- package/websql/esm2022/lib/typeorm/driver/types/DataTypeDefaults.mjs +0 -4
- package/websql/esm2022/lib/typeorm/driver/types/DatabaseType.mjs +0 -3
- package/websql/esm2022/lib/typeorm/driver/types/IsolationLevel.mjs +0 -3
- package/websql/esm2022/lib/typeorm/driver/types/MappedColumnTypes.mjs +0 -4
- package/websql/esm2022/lib/typeorm/driver/types/MetadataTableType.mjs +0 -9
- package/websql/esm2022/lib/typeorm/driver/types/ReplicationMode.mjs +0 -3
- package/websql/esm2022/lib/typeorm/driver/types/UpsertType.mjs +0 -3
- package/websql/esm2022/lib/typeorm/entity-manager/EntityManager.mjs +0 -743
- package/websql/esm2022/lib/typeorm/entity-manager/EntityManagerFactory.mjs +0 -23
- package/websql/esm2022/lib/typeorm/entity-manager/SqljsEntityManager.mjs +0 -35
- package/websql/esm2022/lib/typeorm/entity-schema/EntitySchema.mjs +0 -12
- package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaCheckOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaColumnOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaEmbeddedColumnOptions.mjs +0 -5
- package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaEmbeddedError.mjs +0 -15
- package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaExclusionOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaIndexOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaOptions.mjs +0 -8
- package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaRelationIdOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaRelationOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaTransformer.mjs +0 -268
- package/websql/esm2022/lib/typeorm/entity-schema/EntitySchemaUniqueOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/error/AlreadyHasActiveConnectionError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/CannotAttachTreeChildrenEntityError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/CannotConnectAlreadyConnectedError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/CannotCreateEntityIdMapError.mjs +0 -18
- package/websql/esm2022/lib/typeorm/error/CannotDetermineEntityError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/CannotExecuteNotConnectedError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/CannotGetEntityManagerNotConnectedError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/CannotReflectMethodParameterTypeError.mjs +0 -15
- package/websql/esm2022/lib/typeorm/error/CircularRelationsError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/ColumnTypeUndefinedError.mjs +0 -16
- package/websql/esm2022/lib/typeorm/error/ConnectionIsNotSetError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/ConnectionNotFoundError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/CustomRepositoryCannotInheritRepositoryError.mjs +0 -15
- package/websql/esm2022/lib/typeorm/error/CustomRepositoryDoesNotHaveEntityError.mjs +0 -15
- package/websql/esm2022/lib/typeorm/error/CustomRepositoryNotFoundError.mjs +0 -15
- package/websql/esm2022/lib/typeorm/error/DataTypeNotSupportedError.mjs +0 -11
- package/websql/esm2022/lib/typeorm/error/DriverOptionNotSetError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/DriverPackageNotInstalledError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/EntityMetadataNotFoundError.mjs +0 -26
- package/websql/esm2022/lib/typeorm/error/EntityNotFoundError.mjs +0 -37
- package/websql/esm2022/lib/typeorm/error/EntityPropertyNotFoundError.mjs +0 -14
- package/websql/esm2022/lib/typeorm/error/FindRelationsNotFoundError.mjs +0 -20
- package/websql/esm2022/lib/typeorm/error/InitializedRelationError.mjs +0 -17
- package/websql/esm2022/lib/typeorm/error/InsertValuesMissingError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/LimitOnUpdateNotSupportedError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/LockNotSupportedOnGivenDriverError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/MetadataAlreadyExistsError.mjs +0 -15
- package/websql/esm2022/lib/typeorm/error/MetadataWithSuchNameAlreadyExistsError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/MissingDeleteDateColumnError.mjs +0 -9
- package/websql/esm2022/lib/typeorm/error/MissingDriverError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/MissingJoinColumnError.mjs +0 -20
- package/websql/esm2022/lib/typeorm/error/MissingJoinTableError.mjs +0 -20
- package/websql/esm2022/lib/typeorm/error/MissingPrimaryColumnError.mjs +0 -10
- package/websql/esm2022/lib/typeorm/error/MustBeEntityError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/NamingStrategyNotFoundError.mjs +0 -18
- package/websql/esm2022/lib/typeorm/error/NestedSetMultipleRootError.mjs +0 -9
- package/websql/esm2022/lib/typeorm/error/NoConnectionForRepositoryError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/NoConnectionOptionError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/NoNeedToReleaseEntityManagerError.mjs +0 -14
- package/websql/esm2022/lib/typeorm/error/NoVersionOrUpdateDateColumnError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/OffsetWithoutLimitNotSupportedError.mjs +0 -14
- package/websql/esm2022/lib/typeorm/error/OptimisticLockCanNotBeUsedError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/OptimisticLockVersionMismatchError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/PersistedEntityNotFoundError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/PessimisticLockTransactionRequiredError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/PrimaryColumnCannotBeNullableError.mjs +0 -10
- package/websql/esm2022/lib/typeorm/error/QueryFailedError.mjs +0 -27
- package/websql/esm2022/lib/typeorm/error/QueryRunnerAlreadyReleasedError.mjs +0 -9
- package/websql/esm2022/lib/typeorm/error/QueryRunnerProviderAlreadyReleasedError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/RepositoryNotTreeError.mjs +0 -29
- package/websql/esm2022/lib/typeorm/error/ReturningStatementNotSupportedError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/SubjectRemovedAndUpdatedError.mjs +0 -13
- package/websql/esm2022/lib/typeorm/error/SubjectWithoutIdentifierError.mjs +0 -14
- package/websql/esm2022/lib/typeorm/error/TransactionAlreadyStartedError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/TransactionNotStartedError.mjs +0 -12
- package/websql/esm2022/lib/typeorm/error/TreeRepositoryNotSupportedError.mjs +0 -9
- package/websql/esm2022/lib/typeorm/error/TypeORMError.mjs +0 -18
- package/websql/esm2022/lib/typeorm/error/UpdateValuesMissingError.mjs +0 -9
- package/websql/esm2022/lib/typeorm/error/UsingJoinColumnIsNotAllowedError.mjs +0 -10
- package/websql/esm2022/lib/typeorm/error/UsingJoinColumnOnlyOnOneSideAllowedError.mjs +0 -11
- package/websql/esm2022/lib/typeorm/error/UsingJoinTableIsNotAllowedError.mjs +0 -11
- package/websql/esm2022/lib/typeorm/error/UsingJoinTableOnlyOnOneSideAllowedError.mjs +0 -11
- package/websql/esm2022/lib/typeorm/error/index.mjs +0 -63
- package/websql/esm2022/lib/typeorm/find-options/EqualOperator.mjs +0 -10
- package/websql/esm2022/lib/typeorm/find-options/FindManyOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/find-options/FindOneOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/find-options/FindOperator.mjs +0 -74
- package/websql/esm2022/lib/typeorm/find-options/FindOperatorType.mjs +0 -3
- package/websql/esm2022/lib/typeorm/find-options/FindOptionsOrder.mjs +0 -3
- package/websql/esm2022/lib/typeorm/find-options/FindOptionsRelations.mjs +0 -3
- package/websql/esm2022/lib/typeorm/find-options/FindOptionsSelect.mjs +0 -5
- package/websql/esm2022/lib/typeorm/find-options/FindOptionsUtils.mjs +0 -293
- package/websql/esm2022/lib/typeorm/find-options/FindOptionsWhere.mjs +0 -3
- package/websql/esm2022/lib/typeorm/find-options/FindTreeOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/find-options/JoinOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/find-options/OrderByCondition.mjs +0 -3
- package/websql/esm2022/lib/typeorm/find-options/operator/Any.mjs +0 -11
- package/websql/esm2022/lib/typeorm/find-options/operator/ArrayContainedBy.mjs +0 -11
- package/websql/esm2022/lib/typeorm/find-options/operator/ArrayContains.mjs +0 -11
- package/websql/esm2022/lib/typeorm/find-options/operator/ArrayOverlap.mjs +0 -11
- package/websql/esm2022/lib/typeorm/find-options/operator/Between.mjs +0 -11
- package/websql/esm2022/lib/typeorm/find-options/operator/Equal.mjs +0 -15
- package/websql/esm2022/lib/typeorm/find-options/operator/ILike.mjs +0 -11
- package/websql/esm2022/lib/typeorm/find-options/operator/In.mjs +0 -11
- package/websql/esm2022/lib/typeorm/find-options/operator/IsNull.mjs +0 -11
- package/websql/esm2022/lib/typeorm/find-options/operator/LessThan.mjs +0 -11
- package/websql/esm2022/lib/typeorm/find-options/operator/LessThanOrEqual.mjs +0 -11
- package/websql/esm2022/lib/typeorm/find-options/operator/Like.mjs +0 -11
- package/websql/esm2022/lib/typeorm/find-options/operator/MoreThan.mjs +0 -11
- package/websql/esm2022/lib/typeorm/find-options/operator/MoreThanOrEqual.mjs +0 -11
- package/websql/esm2022/lib/typeorm/find-options/operator/Not.mjs +0 -12
- package/websql/esm2022/lib/typeorm/find-options/operator/Raw.mjs +0 -10
- package/websql/esm2022/lib/typeorm/globals.mjs +0 -165
- package/websql/esm2022/lib/typeorm/index.mjs +0 -157
- package/websql/esm2022/lib/typeorm/logger/AdvancedConsoleLogger.mjs +0 -109
- package/websql/esm2022/lib/typeorm/logger/DebugLogger.mjs +0 -94
- package/websql/esm2022/lib/typeorm/logger/Logger.mjs +0 -4
- package/websql/esm2022/lib/typeorm/logger/LoggerFactory.mjs +0 -36
- package/websql/esm2022/lib/typeorm/logger/LoggerOptions.mjs +0 -3
- package/websql/esm2022/lib/typeorm/logger/SimpleConsoleLogger.mjs +0 -108
- package/websql/esm2022/lib/typeorm/metadata/CheckMetadata.mjs +0 -26
- package/websql/esm2022/lib/typeorm/metadata/ColumnMetadata.mjs +0 -553
- package/websql/esm2022/lib/typeorm/metadata/EmbeddedMetadata.mjs +0 -206
- package/websql/esm2022/lib/typeorm/metadata/EntityListenerMetadata.mjs +0 -52
- package/websql/esm2022/lib/typeorm/metadata/EntityMetadata.mjs +0 -636
- package/websql/esm2022/lib/typeorm/metadata/ExclusionMetadata.mjs +0 -26
- package/websql/esm2022/lib/typeorm/metadata/ForeignKeyMetadata.mjs +0 -48
- package/websql/esm2022/lib/typeorm/metadata/IndexMetadata.mjs +0 -131
- package/websql/esm2022/lib/typeorm/metadata/RelationCountMetadata.mjs +0 -30
- package/websql/esm2022/lib/typeorm/metadata/RelationIdMetadata.mjs +0 -50
- package/websql/esm2022/lib/typeorm/metadata/RelationMetadata.mjs +0 -398
- package/websql/esm2022/lib/typeorm/metadata/UniqueMetadata.mjs +0 -90
- package/websql/esm2022/lib/typeorm/metadata/types/ClosureTreeOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata/types/DeferrableType.mjs +0 -3
- package/websql/esm2022/lib/typeorm/metadata/types/EventListenerTypes.mjs +0 -19
- package/websql/esm2022/lib/typeorm/metadata/types/OnDeleteType.mjs +0 -3
- package/websql/esm2022/lib/typeorm/metadata/types/OnUpdateType.mjs +0 -3
- package/websql/esm2022/lib/typeorm/metadata/types/PropertyTypeInFunction.mjs +0 -3
- package/websql/esm2022/lib/typeorm/metadata/types/RelationTypeInFunction.mjs +0 -3
- package/websql/esm2022/lib/typeorm/metadata/types/RelationTypes.mjs +0 -3
- package/websql/esm2022/lib/typeorm/metadata/types/TableTypes.mjs +0 -3
- package/websql/esm2022/lib/typeorm/metadata/types/TreeTypes.mjs +0 -3
- package/websql/esm2022/lib/typeorm/metadata-args/CheckMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/ColumnMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/DiscriminatorValueMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/EmbeddedMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/EntityListenerMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/EntityRepositoryMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/EntitySubscriberMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/ExclusionMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/GeneratedMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/IndexMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/InheritanceMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/JoinColumnMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/JoinTableMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/MetadataArgsStorage.mjs +0 -217
- package/websql/esm2022/lib/typeorm/metadata-args/NamingStrategyMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/RelationCountMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/RelationIdMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/RelationMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/TableMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/TransactionEntityMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/TransactionRepositoryMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/TreeMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/UniqueMetadataArgs.mjs +0 -4
- package/websql/esm2022/lib/typeorm/metadata-args/types/ColumnMode.mjs +0 -3
- package/websql/esm2022/lib/typeorm/metadata-builder/ClosureJunctionEntityMetadataBuilder.mjs +0 -131
- package/websql/esm2022/lib/typeorm/metadata-builder/EntityMetadataBuilder.mjs +0 -678
- package/websql/esm2022/lib/typeorm/metadata-builder/EntityMetadataValidator.mjs +0 -183
- package/websql/esm2022/lib/typeorm/metadata-builder/JunctionEntityMetadataBuilder.mjs +0 -262
- package/websql/esm2022/lib/typeorm/metadata-builder/MetadataUtils.mjs +0 -41
- package/websql/esm2022/lib/typeorm/metadata-builder/RelationJoinColumnBuilder.mjs +0 -167
- package/websql/esm2022/lib/typeorm/migration/Migration.mjs +0 -14
- package/websql/esm2022/lib/typeorm/migration/MigrationExecutor.mjs +0 -454
- package/websql/esm2022/lib/typeorm/migration/MigrationInterface.mjs +0 -4
- package/websql/esm2022/lib/typeorm/naming-strategy/DefaultNamingStrategy.mjs +0 -140
- package/websql/esm2022/lib/typeorm/naming-strategy/NamingStrategyInterface.mjs +0 -4
- package/websql/esm2022/lib/typeorm/persistence/EntityPersistExecutor.mjs +0 -125
- package/websql/esm2022/lib/typeorm/persistence/Subject.mjs +0 -212
- package/websql/esm2022/lib/typeorm/persistence/SubjectChangeMap.mjs +0 -4
- package/websql/esm2022/lib/typeorm/persistence/SubjectChangedColumnsComputer.mjs +0 -164
- package/websql/esm2022/lib/typeorm/persistence/SubjectDatabaseEntityLoader.mjs +0 -125
- package/websql/esm2022/lib/typeorm/persistence/SubjectExecutor.mjs +0 -721
- package/websql/esm2022/lib/typeorm/persistence/SubjectTopoligicalSorter.mjs +0 -151
- package/websql/esm2022/lib/typeorm/persistence/subject-builder/CascadesSubjectBuilder.mjs +0 -84
- package/websql/esm2022/lib/typeorm/persistence/subject-builder/ManyToManySubjectBuilder.mjs +0 -153
- package/websql/esm2022/lib/typeorm/persistence/subject-builder/OneToManySubjectBuilder.mjs +0 -117
- package/websql/esm2022/lib/typeorm/persistence/subject-builder/OneToOneInverseSideSubjectBuilder.mjs +0 -95
- package/websql/esm2022/lib/typeorm/persistence/tree/ClosureSubjectExecutor.mjs +0 -220
- package/websql/esm2022/lib/typeorm/persistence/tree/MaterializedPathSubjectExecutor.mjs +0 -97
- package/websql/esm2022/lib/typeorm/persistence/tree/NestedSetSubjectExecutor.mjs +0 -250
- package/websql/esm2022/lib/typeorm/platform/PlatformTools.mjs +0 -331
- package/websql/esm2022/lib/typeorm/query-builder/Alias.mjs +0 -26
- package/websql/esm2022/lib/typeorm/query-builder/Brackets.mjs +0 -16
- package/websql/esm2022/lib/typeorm/query-builder/DeleteQueryBuilder.mjs +0 -181
- package/websql/esm2022/lib/typeorm/query-builder/InsertOrUpdateOptions.mjs +0 -3
- package/websql/esm2022/lib/typeorm/query-builder/InsertQueryBuilder.mjs +0 -651
- package/websql/esm2022/lib/typeorm/query-builder/JoinAttribute.mjs +0 -153
- package/websql/esm2022/lib/typeorm/query-builder/NotBrackets.mjs +0 -14
- package/websql/esm2022/lib/typeorm/query-builder/QueryBuilder.mjs +0 -967
- package/websql/esm2022/lib/typeorm/query-builder/QueryBuilderCte.mjs +0 -4
- package/websql/esm2022/lib/typeorm/query-builder/QueryBuilderUtils.mjs +0 -22
- package/websql/esm2022/lib/typeorm/query-builder/QueryExpressionMap.mjs +0 -309
- package/websql/esm2022/lib/typeorm/query-builder/QueryPartialEntity.mjs +0 -3
- package/websql/esm2022/lib/typeorm/query-builder/RelationIdLoader.mjs +0 -452
- package/websql/esm2022/lib/typeorm/query-builder/RelationLoader.mjs +0 -262
- package/websql/esm2022/lib/typeorm/query-builder/RelationQueryBuilder.mjs +0 -147
- package/websql/esm2022/lib/typeorm/query-builder/RelationRemover.mjs +0 -130
- package/websql/esm2022/lib/typeorm/query-builder/RelationUpdater.mjs +0 -141
- package/websql/esm2022/lib/typeorm/query-builder/ReturningResultsEntityUpdator.mjs +0 -141
- package/websql/esm2022/lib/typeorm/query-builder/SelectQuery.mjs +0 -4
- package/websql/esm2022/lib/typeorm/query-builder/SelectQueryBuilder.mjs +0 -2278
- package/websql/esm2022/lib/typeorm/query-builder/SelectQueryBuilderOption.mjs +0 -3
- package/websql/esm2022/lib/typeorm/query-builder/SoftDeleteQueryBuilder.mjs +0 -348
- package/websql/esm2022/lib/typeorm/query-builder/UpdateQueryBuilder.mjs +0 -510
- package/websql/esm2022/lib/typeorm/query-builder/WhereClause.mjs +0 -3
- package/websql/esm2022/lib/typeorm/query-builder/WhereExpressionBuilder.mjs +0 -4
- package/websql/esm2022/lib/typeorm/query-builder/relation-count/RelationCountAttribute.mjs +0 -71
- package/websql/esm2022/lib/typeorm/query-builder/relation-count/RelationCountLoadResult.mjs +0 -4
- package/websql/esm2022/lib/typeorm/query-builder/relation-count/RelationCountLoader.mjs +0 -142
- package/websql/esm2022/lib/typeorm/query-builder/relation-count/RelationCountMetadataToAttributeTransformer.mjs +0 -33
- package/websql/esm2022/lib/typeorm/query-builder/relation-id/RelationIdAttribute.mjs +0 -79
- package/websql/esm2022/lib/typeorm/query-builder/relation-id/RelationIdLoadResult.mjs +0 -4
- package/websql/esm2022/lib/typeorm/query-builder/relation-id/RelationIdLoader.mjs +0 -247
- package/websql/esm2022/lib/typeorm/query-builder/relation-id/RelationIdMetadataToAttributeTransformer.mjs +0 -33
- package/websql/esm2022/lib/typeorm/query-builder/result/DeleteResult.mjs +0 -14
- package/websql/esm2022/lib/typeorm/query-builder/result/InsertResult.mjs +0 -25
- package/websql/esm2022/lib/typeorm/query-builder/result/UpdateResult.mjs +0 -25
- package/websql/esm2022/lib/typeorm/query-builder/transformer/PlainObjectToDatabaseEntityTransformer.mjs +0 -101
- package/websql/esm2022/lib/typeorm/query-builder/transformer/PlainObjectToNewEntityTransformer.mjs +0 -67
- package/websql/esm2022/lib/typeorm/query-builder/transformer/RawSqlResultsToEntityTransformer.mjs +0 -366
- package/websql/esm2022/lib/typeorm/query-runner/BaseQueryRunner.mjs +0 -392
- package/websql/esm2022/lib/typeorm/query-runner/QueryResult.mjs +0 -14
- package/websql/esm2022/lib/typeorm/query-runner/QueryRunner.mjs +0 -4
- package/websql/esm2022/lib/typeorm/repository/AbstractRepository.mjs +0 -80
- package/websql/esm2022/lib/typeorm/repository/BaseEntity.mjs +0 -283
- package/websql/esm2022/lib/typeorm/repository/FindTreesOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/repository/RemoveOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/repository/Repository.mjs +0 -275
- package/websql/esm2022/lib/typeorm/repository/SaveOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/repository/TreeRepository.mjs +0 -254
- package/websql/esm2022/lib/typeorm/repository/UpsertOptions.mjs +0 -7
- package/websql/esm2022/lib/typeorm/schema-builder/RdbmsSchemaBuilder.mjs +0 -770
- package/websql/esm2022/lib/typeorm/schema-builder/SchemaBuilder.mjs +0 -4
- package/websql/esm2022/lib/typeorm/schema-builder/options/TableCheckOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/schema-builder/options/TableColumnOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/schema-builder/options/TableExclusionOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/schema-builder/options/TableForeignKeyOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/schema-builder/options/TableIndexOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/schema-builder/options/TableOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/schema-builder/options/TableUniqueOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/schema-builder/options/ViewOptions.mjs +0 -4
- package/websql/esm2022/lib/typeorm/schema-builder/table/Table.mjs +0 -274
- package/websql/esm2022/lib/typeorm/schema-builder/table/TableCheck.mjs +0 -37
- package/websql/esm2022/lib/typeorm/schema-builder/table/TableColumn.mjs +0 -108
- package/websql/esm2022/lib/typeorm/schema-builder/table/TableExclusion.mjs +0 -31
- package/websql/esm2022/lib/typeorm/schema-builder/table/TableForeignKey.mjs +0 -60
- package/websql/esm2022/lib/typeorm/schema-builder/table/TableIndex.mjs +0 -53
- package/websql/esm2022/lib/typeorm/schema-builder/table/TableUnique.mjs +0 -38
- package/websql/esm2022/lib/typeorm/schema-builder/util/TableUtils.mjs +0 -38
- package/websql/esm2022/lib/typeorm/schema-builder/util/ViewUtils.mjs +0 -24
- package/websql/esm2022/lib/typeorm/schema-builder/view/View.mjs +0 -43
- package/websql/esm2022/lib/typeorm/subscriber/Broadcaster.mjs +0 -596
- package/websql/esm2022/lib/typeorm/subscriber/BroadcasterResult.mjs +0 -27
- package/websql/esm2022/lib/typeorm/subscriber/EntitySubscriberInterface.mjs +0 -4
- package/websql/esm2022/lib/typeorm/subscriber/event/InsertEvent.mjs +0 -4
- package/websql/esm2022/lib/typeorm/subscriber/event/LoadEvent.mjs +0 -4
- package/websql/esm2022/lib/typeorm/subscriber/event/RecoverEvent.mjs +0 -4
- package/websql/esm2022/lib/typeorm/subscriber/event/RemoveEvent.mjs +0 -4
- package/websql/esm2022/lib/typeorm/subscriber/event/SoftRemoveEvent.mjs +0 -4
- package/websql/esm2022/lib/typeorm/subscriber/event/TransactionCommitEvent.mjs +0 -4
- package/websql/esm2022/lib/typeorm/subscriber/event/TransactionRollbackEvent.mjs +0 -4
- package/websql/esm2022/lib/typeorm/subscriber/event/TransactionStartEvent.mjs +0 -4
- package/websql/esm2022/lib/typeorm/subscriber/event/UpdateEvent.mjs +0 -4
- package/websql/esm2022/lib/typeorm/util/ApplyValueTransformers.mjs +0 -22
- package/websql/esm2022/lib/typeorm/util/DateUtils.mjs +0 -216
- package/websql/esm2022/lib/typeorm/util/DepGraph.mjs +0 -222
- package/websql/esm2022/lib/typeorm/util/DirectoryExportedClassesLoader.mjs +0 -76
- package/websql/esm2022/lib/typeorm/util/ImportUtils.mjs +0 -86
- package/websql/esm2022/lib/typeorm/util/InstanceChecker.mjs +0 -114
- package/websql/esm2022/lib/typeorm/util/ObjectUtils.mjs +0 -38
- package/websql/esm2022/lib/typeorm/util/OrmUtils.mjs +0 -310
- package/websql/esm2022/lib/typeorm/util/PathUtils.mjs +0 -38
- package/websql/esm2022/lib/typeorm/util/RandomGenerator.mjs +0 -150
- package/websql/esm2022/lib/typeorm/util/StringUtils.mjs +0 -108
- package/websql/esm2022/lib/typeorm/util/TreeRepositoryUtils.mjs +0 -53
- package/websql/esm2022/lib/typeorm/util/VersionUtils.mjs +0 -17
- package/websql/esm2022/lib/typeorm/util/escapeRegExp.mjs +0 -4
- package/websql/esm2022/public-api.mjs +0 -2
- 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRW50aXR5TWV0YWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC13ZWJzcWwvdGFvbi10eXBlb3JtL3Byb2plY3RzL3Rhb24tdHlwZW9ybS9zcmMvbGliL3R5cGVvcm0vbWV0YWRhdGEvRW50aXR5TWV0YWRhdGEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBS0EsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sdUNBQXVDLENBQUE7QUFJcEYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGtCQUFrQixDQUFBO0FBZTNDLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHNDQUFzQyxDQUFBO0FBQ2xGLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQTtBQUNqRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFFN0M7O0dBRUc7QUFDSCxNQUFNLE9BQU8sY0FBYztJQTZldkIsWUFBWSxPQU9YO1FBbmZRLG1CQUFhLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO1FBK0JyRDs7V0FFRztRQUNILHlCQUFvQixHQUFxQixFQUFFLENBQUE7UUFFM0M7Ozs7V0FJRztRQUNILG9CQUFlLEdBQWUsRUFBRSxDQUFBO1FBRWhDOztXQUVHO1FBQ0gsY0FBUyxHQUFjLFNBQVMsQ0FBQTtRQWlDaEM7O1dBRUc7UUFDSCxpQkFBWSxHQUFhLEtBQUssQ0FBQTtRQThCOUI7O1dBRUc7UUFDSCxnQkFBVyxHQUFZLElBQUksQ0FBQTtRQTRCM0I7O1dBRUc7UUFDSCw0QkFBdUIsR0FBWSxLQUFLLENBQUE7UUFFeEM7Ozs7O1dBS0c7UUFDSCxlQUFVLEdBQVksS0FBSyxDQUFBO1FBRTNCOzs7V0FHRztRQUNILDZCQUF3QixHQUFZLElBQUksQ0FBQTtRQVl4Qzs7O1dBR0c7UUFDSCxzQkFBaUIsR0FBWSxLQUFLLENBQUE7UUFFbEM7O1dB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eyBRdWVyeVJ1bm5lciwgU2VsZWN0UXVlcnlCdWlsZGVyIH0gZnJvbSBcIi4uXCJcbmltcG9ydCB7IE9iamVjdExpdGVyYWwgfSBmcm9tIFwiLi4vY29tbW9uL09iamVjdExpdGVyYWxcIlxuaW1wb3J0IHsgRGF0YVNvdXJjZSB9IGZyb20gXCIuLi9kYXRhLXNvdXJjZS9EYXRhU291cmNlXCJcbmltcG9ydCB7IENhbm5vdENyZWF0ZUVudGl0eUlkTWFwRXJyb3IgfSBmcm9tIFwiLi4vZXJyb3IvQ2Fubm90Q3JlYXRlRW50aXR5SWRNYXBFcnJvclwiXG5pbXBvcnQgeyBPcmRlckJ5Q29uZGl0aW9uIH0gZnJvbSBcIi4uL2ZpbmQtb3B0aW9ucy9PcmRlckJ5Q29uZGl0aW9uXCJcbmltcG9ydCB7IFRhYmxlTWV0YWRhdGFBcmdzIH0gZnJvbSBcIi4uL21ldGFkYXRhLWFyZ3MvVGFibGVNZXRhZGF0YUFyZ3NcIlxuaW1wb3J0IHsgVHJlZU1ldGFkYXRhQXJncyB9IGZyb20gXCIuLi9tZXRhZGF0YS1hcmdzL1RyZWVNZXRhZGF0YUFyZ3NcIlxuaW1wb3J0IHsgT3JtVXRpbHMgfSBmcm9tIFwiLi4vdXRpbC9Pcm1VdGlsc1wiXG5pbXBvcnQgeyBDaGVja01ldGFkYXRhIH0gZnJvbSBcIi4vQ2hlY2tNZXRhZGF0YVwiXG5pbXBvcnQgeyBDb2x1bW5NZXRhZGF0YSB9IGZyb20gXCIuL0NvbHVtbk1ldGFkYXRhXCJcbmltcG9ydCB7IEVtYmVkZGVkTWV0YWRhdGEgfSBmcm9tIFwiLi9FbWJlZGRlZE1ldGFkYXRhXCJcbmltcG9ydCB7IEVudGl0eUxpc3RlbmVyTWV0YWRhdGEgfSBmcm9tIFwiLi9FbnRpdHlMaXN0ZW5lck1ldGFkYXRhXCJcbmltcG9ydCB7IEV4Y2x1c2lvbk1ldGFkYXRhIH0gZnJvbSBcIi4vRXhjbHVzaW9uTWV0YWRhdGFcIlxuaW1wb3J0IHsgRm9yZWlnbktleU1ldGFkYXRhIH0gZnJvbSBcIi4vRm9yZWlnbktleU1ldGFkYXRhXCJcbmltcG9ydCB7IEluZGV4TWV0YWRhdGEgfSBmcm9tIFwiLi9JbmRleE1ldGFkYXRhXCJcbmltcG9ydCB7IFJlbGF0aW9uQ291bnRNZXRhZGF0YSB9IGZyb20gXCIuL1JlbGF0aW9uQ291bnRNZXRhZGF0YVwiXG5pbXBvcnQgeyBSZWxhdGlvbklkTWV0YWRhdGEgfSBmcm9tIFwiLi9SZWxhdGlvbklkTWV0YWRhdGFcIlxuaW1wb3J0IHsgUmVsYXRpb25NZXRhZGF0YSB9IGZyb20gXCIuL1JlbGF0aW9uTWV0YWRhdGFcIlxuaW1wb3J0IHsgVGFibGVUeXBlIH0gZnJvbSBcIi4vdHlwZXMvVGFibGVUeXBlc1wiXG5pbXBvcnQgeyBUcmVlVHlwZSB9IGZyb20gXCIuL3R5cGVzL1RyZWVUeXBlc1wiXG5pbXBvcnQgeyBVbmlxdWVNZXRhZGF0YSB9IGZyb20gXCIuL1VuaXF1ZU1ldGFkYXRhXCJcbmltcG9ydCB7IENsb3N1cmVUcmVlT3B0aW9ucyB9IGZyb20gXCIuL3R5cGVzL0Nsb3N1cmVUcmVlT3B0aW9uc1wiXG5pbXBvcnQgeyBFbnRpdHlQcm9wZXJ0eU5vdEZvdW5kRXJyb3IgfSBmcm9tIFwiLi4vZXJyb3IvRW50aXR5UHJvcGVydHlOb3RGb3VuZEVycm9yXCJcbmltcG9ydCB7IE9iamVjdFV0aWxzIH0gZnJvbSBcIi4uL3V0aWwvT2JqZWN0VXRpbHNcIlxuaW1wb3J0IHsgc2hvcnRlbiB9IGZyb20gXCIuLi91dGlsL1N0cmluZ1V0aWxzXCJcblxuLyoqXG4gKiBDb250YWlucyBhbGwgZW50aXR5IG1ldGFkYXRhLlxuICovXG5leHBvcnQgY2xhc3MgRW50aXR5TWV0YWRhdGEge1xuICAgIHJlYWRvbmx5IFwiQGluc3RhbmNlb2ZcIiA9IFN5bWJvbC5mb3IoXCJFbnRpdHlNZXRhZGF0YVwiKVxuXG5cblxuXG5cbiAgICAvKipcbiAgICAgKiBDb25uZWN0aW9uIHdoZXJlIHRoaXMgZW50aXR5IG1ldGFkYXRhIGlzIGNyZWF0ZWQuXG4gICAgICovXG4gICAgY29ubmVjdGlvbjogRGF0YVNvdXJjZVxuXG4gICAgLyoqXG4gICAgICogTWV0YWRhdGEgYXJndW1lbnRzIHVzZWQgdG8gYnVpbGQgdGhpcyBlbnRpdHkgbWV0YWRhdGEuXG4gICAgICovXG4gICAgdGFibGVNZXRhZGF0YUFyZ3M6IFRhYmxlTWV0YWRhdGFBcmdzXG5cbiAgICAvKipcbiAgICAgKiBJZiBlbnRpdHkncyB0YWJsZSBpcyBhIGNsb3N1cmUtdHlwZWQgdGFibGUsIHRoZW4gdGhpcyBlbnRpdHkgd2lsbCBoYXZlIGEgY2xvc3VyZSBqdW5jdGlvbiB0YWJsZSBtZXRhZGF0YS5cbiAgICAgKi9cbiAgICBjbG9zdXJlSnVuY3Rpb25UYWJsZTogRW50aXR5TWV0YWRhdGFcblxuICAgIC8qKlxuICAgICAqIElmIHRoaXMgaXMgZW50aXR5IG1ldGFkYXRhIGZvciBhIGp1bmN0aW9uIGNsb3N1cmUgdGFibGUgdGhlbiBpdHMgb3duZXIgY2xvc3VyZSB0YWJsZSBtZXRhZGF0YSB3aWxsIGJlIHNldCBoZXJlLlxuICAgICAqL1xuICAgIHBhcmVudENsb3N1cmVFbnRpdHlNZXRhZGF0YTogRW50aXR5TWV0YWRhdGFcblxuICAgIC8qKlxuICAgICAqIFBhcmVudCdzIGVudGl0eSBtZXRhZGF0YS4gVXNlZCBpbiBpbmhlcml0YW5jZSBwYXR0ZXJucy5cbiAgICAgKi9cbiAgICBwYXJlbnRFbnRpdHlNZXRhZGF0YTogRW50aXR5TWV0YWRhdGFcblxuICAgIC8qKlxuICAgICAqIENoaWxkcmVuIGVudGl0eSBtZXRhZGF0YXMuIFVzZWQgaW4gaW5oZXJpdGFuY2UgcGF0dGVybnMuXG4gICAgICovXG4gICAgY2hpbGRFbnRpdHlNZXRhZGF0YXM6IEVudGl0eU1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogQWxsIFwiaW5oZXJpdGFuY2UgdHJlZVwiIGZyb20gYSB0YXJnZXQgZW50aXR5LlxuICAgICAqIEZvciBleGFtcGxlIGZvciB0YXJnZXQgUG9zdCA8IENvbnRlbnRNb2RlbCA8IFVuaXQgaXQgd2lsbCBiZSBhbiBhcnJheSBvZiBbUG9zdCwgQ29udGVudE1vZGVsLCBVbml0XS5cbiAgICAgKiBJdCBhbHNvIGNvbnRhaW5zIGNoaWxkIGVudGl0aWVzIGZvciBzaW5nbGUgdGFibGUgaW5oZXJpdGFuY2UuXG4gICAgICovXG4gICAgaW5oZXJpdGFuY2VUcmVlOiBGdW5jdGlvbltdID0gW11cblxuICAgIC8qKlxuICAgICAqIFRhYmxlIHR5cGUuIFRhYmxlcyBjYW4gYmUgY2xvc3VyZSwganVuY3Rpb24sIGV0Yy5cbiAgICAgKi9cbiAgICB0YWJsZVR5cGU6IFRhYmxlVHlwZSA9IFwicmVndWxhclwiXG5cbiAgICAvKipcbiAgICAgKiBUYXJnZXQgY2xhc3MgdG8gd2hpY2ggdGhpcyBlbnRpdHkgbWV0YWRhdGEgaXMgYmluZC5cbiAgICAgKiBOb3RlLCB0aGF0IHdoZW4gdXNpbmcgdGFibGUgaW5oZXJpdGFuY2UgcGF0dGVybnMgdGFyZ2V0IGNhbiBiZSBkaWZmZXJlbnQgcmF0aGVyIHRoZW4gdGFibGUncyB0YXJnZXQuXG4gICAgICogRm9yIHZpcnR1YWwgdGFibGVzIHdoaWNoIGxhY2sgb2YgcmVhbCBlbnRpdHkgKGxpa2UganVuY3Rpb24gdGFibGVzKSB0YXJnZXQgaXMgZXF1YWwgdG8gdGhlaXIgdGFibGUgbmFtZS5cbiAgICAgKi9cbiAgICB0YXJnZXQ6IEZ1bmN0aW9uIHwgc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBuYW1lIG9mIHRoZSB0YXJnZXQuXG4gICAgICovXG4gICAgdGFyZ2V0TmFtZTogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBFbnRpdHkncyBuYW1lLlxuICAgICAqIEVxdWFsIHRvIGVudGl0eSB0YXJnZXQgY2xhc3MncyBuYW1lIGlmIHRhcmdldCBpcyBzZXQgdG8gdGFibGUuXG4gICAgICogSWYgdGFyZ2V0IGNsYXNzIGlzIG5vdCB0aGVuIHRoZW4gaXQgZXF1YWxzIHRvIHRhYmxlIG5hbWUuXG4gICAgICovXG4gICAgbmFtZTogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBWaWV3J3MgZXhwcmVzc2lvbi5cbiAgICAgKiBVc2VkIGluIHZpZXdzXG4gICAgICovXG4gICAgZXhwcmVzc2lvbj86IHN0cmluZyB8ICgoY29ubmVjdGlvbjogRGF0YVNvdXJjZSkgPT4gU2VsZWN0UXVlcnlCdWlsZGVyPGFueT4pXG5cbiAgICAvKipcbiAgICAgKiBWaWV3J3MgZGVwZW5kZW5jaWVzLlxuICAgICAqIFVzZWQgaW4gdmlld3NcbiAgICAgKi9cbiAgICBkZXBlbmRzT24/OiBTZXQ8RnVuY3Rpb24gfCBzdHJpbmc+XG5cbiAgICAvKipcbiAgICAgKiBFbmFibGVzIFNxbGl0ZSBcIldJVEhPVVQgUk9XSURcIiBtb2RpZmllciBmb3IgdGhlIFwiQ1JFQVRFIFRBQkxFXCIgc3RhdGVtZW50XG4gICAgICovXG4gICAgd2l0aG91dFJvd2lkPzogYm9vbGVhbiA9IGZhbHNlXG5cbiAgICAvKipcbiAgICAgKiBPcmlnaW5hbCB1c2VyLWdpdmVuIHRhYmxlIG5hbWUgKHRha2VuIGZyb20gc2NoZW1hIG9yIEBFbnRpdHkodGFibGVOYW1lKSBkZWNvcmF0b3IpLlxuICAgICAqIElmIHVzZXIgaGF2ZW4ndCBzcGVjaWZpZWQgYSB0YWJsZSBuYW1lIHRoaXMgcHJvcGVydHkgd2lsbCBiZSB1bmRlZmluZWQuXG4gICAgICovXG4gICAgZ2l2ZW5UYWJsZU5hbWU/OiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIEVudGl0eSB0YWJsZSBuYW1lIGluIHRoZSBkYXRhYmFzZS5cbiAgICAgKiBUaGlzIGlzIGZpbmFsIHRhYmxlIG5hbWUgb2YgdGhlIGVudGl0eS5cbiAgICAgKiBUaGlzIG5hbWUgYWxyZWFkeSBwYXNzZWQgbmFtaW5nIHN0cmF0ZWd5LCBhbmQgZ2VuZXJhdGVkIGJhc2VkIG9uXG4gICAgICogbXVsdGlwbGUgY3JpdGVyaWEsIGluY2x1ZGluZyB1c2VyIHRhYmxlIG5hbWUgYW5kIGdsb2JhbCB0YWJsZSBwcmVmaXguXG4gICAgICovXG4gICAgdGFibGVOYW1lOiBzdHJpbmdcblxuICAgIC8qKlxuICAgICAqIEVudGl0eSB0YWJsZSBwYXRoLiBDb250YWlucyBkYXRhYmFzZSBuYW1lLCBzY2hlbWEgbmFtZSBhbmQgdGFibGUgbmFtZS5cbiAgICAgKiBFLmcuIG15REIubXlTY2hlbWEubXlUYWJsZVxuICAgICAqL1xuICAgIHRhYmxlUGF0aDogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSB0YWJsZSBuYW1lIHdpdGhvdXQgZ2xvYmFsIHRhYmxlIHByZWZpeC5cbiAgICAgKiBXaGVuIHF1ZXJ5aW5nIHRhYmxlIHlvdSBuZWVkIGEgdGFibGUgbmFtZSB3aXRoIHByZWZpeCwgYnV0IGluIHNvbWUgc2NlbmFyaW9zLFxuICAgICAqIGZvciBleGFtcGxlIHdoZW4geW91IHdhbnQgdG8gbmFtZSBhIGp1bmN0aW9uIHRhYmxlIHRoYXQgY29udGFpbnMgbmFtZXMgb2YgdHdvIG90aGVyIHRhYmxlcyxcbiAgICAgKiB5b3UgbWF5IHdhbnQgYSB0YWJsZSBuYW1lIHdpdGhvdXQgcHJlZml4LlxuICAgICAqL1xuICAgIHRhYmxlTmFtZVdpdGhvdXRQcmVmaXg6IHN0cmluZ1xuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIHNjaGVtYSB3aWxsIGJlIHN5bmNocm9uaXplZCBmb3IgdGhpcyBlbnRpdHkgb3Igbm90LlxuICAgICAqL1xuICAgIHN5bmNocm9uaXplOiBib29sZWFuID0gdHJ1ZVxuXG4gICAgLyoqXG4gICAgICogVGFibGUncyBkYXRhYmFzZSBlbmdpbmUgdHlwZSAobGlrZSBcIklubm9EQlwiLCBcIk15SVNBTVwiLCBldGMpLlxuICAgICAqL1xuICAgIGVuZ2luZT86IHN0cmluZ1xuXG4gICAgLyoqXG4gICAgICogRGF0YWJhc2UgbmFtZS5cbiAgICAgKi9cbiAgICBkYXRhYmFzZT86IHN0cmluZ1xuXG4gICAgLyoqXG4gICAgICogU2NoZW1hIG5hbWUuIFVzZWQgaW4gUG9zdGdyZXMgYW5kIFNxbCBTZXJ2ZXIuXG4gICAgICovXG4gICAgc2NoZW1hPzogc3RyaW5nXG5cbiAgICAvKipcbiAgICAgKiBTcGVjaWZpZXMgYSBkZWZhdWx0IG9yZGVyIGJ5IHVzZWQgZm9yIHF1ZXJpZXMgZnJvbSB0aGlzIHRhYmxlIHdoZW4gbm8gZXhwbGljaXQgb3JkZXIgYnkgaXMgc3BlY2lmaWVkLlxuICAgICAqL1xuICAgIG9yZGVyQnk/OiBPcmRlckJ5Q29uZGl0aW9uXG5cbiAgICAvKipcbiAgICAgKiBJZiB0aGlzIGVudGl0eSBtZXRhZGF0YSdzIHRhYmxlIHVzaW5nIG9uZSBvZiB0aGUgaW5oZXJpdGFuY2UgcGF0dGVybnMsXG4gICAgICogdGhlbiB0aGlzIHdpbGwgY29udGFpbiB3aGF0IHBhdHRlcm4gaXQgdXNlcy5cbiAgICAgKi9cbiAgICBpbmhlcml0YW5jZVBhdHRlcm4/OiBcIlNUSVwiIC8qfFwiQ1RJXCIqL1xuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIHRoZXJlIGFueSBub24tbnVsbGFibGUgY29sdW1uIGV4aXN0IGluIHRoaXMgZW50aXR5LlxuICAgICAqL1xuICAgIGhhc05vbk51bGxhYmxlUmVsYXRpb25zOiBib29sZWFuID0gZmFsc2VcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyBpZiB0aGlzIGVudGl0eSBtZXRhZGF0YSBvZiBhIGp1bmN0aW9uIHRhYmxlLCBvciBub3QuXG4gICAgICogSnVuY3Rpb24gdGFibGUgaXMgYSB0YWJsZSBjcmVhdGVkIGJ5IG1hbnktdG8tbWFueSByZWxhdGlvbnNoaXAuXG4gICAgICpcbiAgICAgKiBJdHMgYWxzbyBwb3NzaWJsZSB0byB1bmRlcnN0YW5kIGlmIGVudGl0eSBpcyBqdW5jdGlvbiB2aWEgdGFibGVUeXBlLlxuICAgICAqL1xuICAgIGlzSnVuY3Rpb246IGJvb2xlYW4gPSBmYWxzZVxuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIHRoZSBlbnRpdHkgc2hvdWxkIGJlIGluc3RhbnRpYXRlZCB1c2luZyB0aGUgY29uc3RydWN0b3JcbiAgICAgKiBvciB2aWEgYWxsb2NhdGluZyBhIG5ldyBvYmplY3QgdmlhIGBPYmplY3QuY3JlYXRlKClgLlxuICAgICAqL1xuICAgIGlzQWx3YXlzVXNpbmdDb25zdHJ1Y3RvcjogYm9vbGVhbiA9IHRydWVcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyBpZiB0aGlzIGVudGl0eSBpcyBhIHRyZWUsIHdoYXQgdHlwZSBvZiB0cmVlIGl0IGlzLlxuICAgICAqL1xuICAgIHRyZWVUeXBlPzogVHJlZVR5cGVcblxuICAgIC8qKlxuICAgICAqIEluZGljYXRlcyBpZiB0aGlzIGVudGl0eSBpcyBhIHRyZWUsIHdoYXQgb3B0aW9ucyBvZiB0cmVlIGl0IGhhcy5cbiAgICAgKi9cbiAgICB0cmVlT3B0aW9ucz86IENsb3N1cmVUcmVlT3B0aW9uc1xuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIHRoaXMgdGFibGUgaXMgYSBqdW5jdGlvbiB0YWJsZSBvZiB0aGUgY2xvc3VyZSB0YWJsZS5cbiAgICAgKiBUaGlzIHR5cGUgaXMgZm9yIHRhYmxlcyB0aGF0IGNvbnRhaW4ganVuY3Rpb24gbWV0YWRhdGEgb2YgdGhlIGNsb3N1cmUgdGFibGVzLlxuICAgICAqL1xuICAgIGlzQ2xvc3VyZUp1bmN0aW9uOiBib29sZWFuID0gZmFsc2VcblxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiBlbnRpdHkncyB0YWJsZSBoYXMgbXVsdGlwbGUgcHJpbWFyeSBjb2x1bW5zLlxuICAgICAqL1xuICAgIGhhc011bHRpcGxlUHJpbWFyeUtleXM6IGJvb2xlYW4gPSBmYWxzZVxuXG4gICAgLyoqXG4gICAgICogSW5kaWNhdGVzIGlmIHRoaXMgZW50aXR5IG1ldGFkYXRhIGhhcyB1dWlkIGdlbmVyYXRlZCBjb2x1bW5zLlxuICAgICAqL1xuICAgIGhhc1VVSURHZW5lcmF0ZWRDb2x1bW5zOiBib29sZWFuID0gZmFsc2VcblxuICAgIC8qKlxuICAgICAqIElmIHRoaXMgZW50aXR5IG1ldGFkYXRhIGlzIGEgY2hpbGQgdGFibGUgb2Ygc29tZSB0YWJsZSwgaXQgc2hvdWxkIGhhdmUgYSBkaXNjcmltaW5hdG9yIHZhbHVlLlxuICAgICAqIFVzZWQgdG8gc3RvcmUgYSB2YWx1ZSBpbiBhIGRpc2NyaW1pbmF0b3IgY29sdW1uLlxuICAgICAqL1xuICAgIGRpc2NyaW1pbmF0b3JWYWx1ZT86IHN0cmluZ1xuXG4gICAgLyoqXG4gICAgICogRW50aXR5J3MgY29sdW1uIG1ldGFkYXRhcyBkZWZpbmVkIGJ5IHVzZXIuXG4gICAgICovXG4gICAgb3duQ29sdW1uczogQ29sdW1uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBDb2x1bW5zIG9mIHRoZSBlbnRpdHksIGluY2x1ZGluZyBjb2x1bW5zIHRoYXQgYXJlIGNvbWluZyBmcm9tIHRoZSBlbWJlZGRlZHMgb2YgdGhpcyBlbnRpdHkuXG4gICAgICovXG4gICAgY29sdW1uczogQ29sdW1uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBBbmNlc3RvciBjb2x1bW5zIHVzZWQgb25seSBpbiBjbG9zdXJlIGp1bmN0aW9uIHRhYmxlcy5cbiAgICAgKi9cbiAgICBhbmNlc3RvckNvbHVtbnM6IENvbHVtbk1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogRGVzY2VuZGFudCBjb2x1bW5zIHVzZWQgb25seSBpbiBjbG9zdXJlIGp1bmN0aW9uIHRhYmxlcy5cbiAgICAgKi9cbiAgICBkZXNjZW5kYW50Q29sdW1uczogQ29sdW1uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBBbGwgY29sdW1ucyBleGNlcHQgZm9yIHZpcnR1YWwgY29sdW1ucy5cbiAgICAgKi9cbiAgICBub25WaXJ0dWFsQ29sdW1uczogQ29sdW1uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBJbiB0aGUgY2FzZSBpZiB0aGlzIGVudGl0eSBtZXRhZGF0YSBpcyBqdW5jdGlvbiB0YWJsZSdzIGVudGl0eSBtZXRhZGF0YSxcbiAgICAgKiB0aGlzIHdpbGwgY29udGFpbiBhbGwgcmVmZXJlbmNlZCBjb2x1bW5zIG9mIG93bmVyIGVudGl0eS5cbiAgICAgKi9cbiAgICBvd25lckNvbHVtbnM6IENvbHVtbk1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogSW4gdGhlIGNhc2UgaWYgdGhpcyBlbnRpdHkgbWV0YWRhdGEgaXMganVuY3Rpb24gdGFibGUncyBlbnRpdHkgbWV0YWRhdGEsXG4gICAgICogdGhpcyB3aWxsIGNvbnRhaW4gYWxsIHJlZmVyZW5jZWQgY29sdW1ucyBvZiBpbnZlcnNlIGVudGl0eS5cbiAgICAgKi9cbiAgICBpbnZlcnNlQ29sdW1uczogQ29sdW1uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBjb2x1bW4gd2l0aCBnZW5lcmF0ZWQgZmxhZy5cbiAgICAgKi9cbiAgICBnZW5lcmF0ZWRDb2x1bW5zOiBDb2x1bW5NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIG9iamVjdCBpZCBjb2x1bW4gdXNlZCB3aXRoIG1vbmdvZGIgZGF0YWJhc2UuXG4gICAgICovXG4gICAgb2JqZWN0SWRDb2x1bW4/OiBDb2x1bW5NZXRhZGF0YVxuXG4gICAgLyoqXG4gICAgICogR2V0cyBlbnRpdHkgY29sdW1uIHdoaWNoIGNvbnRhaW5zIGEgY3JlYXRlIGRhdGUgdmFsdWUuXG4gICAgICovXG4gICAgY3JlYXRlRGF0ZUNvbHVtbj86IENvbHVtbk1ldGFkYXRhXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIGVudGl0eSBjb2x1bW4gd2hpY2ggY29udGFpbnMgYW4gdXBkYXRlIGRhdGUgdmFsdWUuXG4gICAgICovXG4gICAgdXBkYXRlRGF0ZUNvbHVtbj86IENvbHVtbk1ldGFkYXRhXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIGVudGl0eSBjb2x1bW4gd2hpY2ggY29udGFpbnMgYSBkZWxldGUgZGF0ZSB2YWx1ZS5cbiAgICAgKi9cbiAgICBkZWxldGVEYXRlQ29sdW1uPzogQ29sdW1uTWV0YWRhdGFcblxuICAgIC8qKlxuICAgICAqIEdldHMgZW50aXR5IGNvbHVtbiB3aGljaCBjb250YWlucyBhbiBlbnRpdHkgdmVyc2lvbi5cbiAgICAgKi9cbiAgICB2ZXJzaW9uQ29sdW1uPzogQ29sdW1uTWV0YWRhdGFcblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIGRpc2NyaW1pbmF0b3IgY29sdW1uIHVzZWQgdG8gc3RvcmUgZW50aXR5IGlkZW50aWZpY2F0b3IgaW4gc2luZ2xlLXRhYmxlIGluaGVyaXRhbmNlIHRhYmxlcy5cbiAgICAgKi9cbiAgICBkaXNjcmltaW5hdG9yQ29sdW1uPzogQ29sdW1uTWV0YWRhdGFcblxuICAgIC8qKlxuICAgICAqIFNwZWNpYWwgY29sdW1uIHRoYXQgc3RvcmVzIHRyZWUgbGV2ZWwgaW4gdHJlZSBlbnRpdGllcy5cbiAgICAgKi9cbiAgICB0cmVlTGV2ZWxDb2x1bW4/OiBDb2x1bW5NZXRhZGF0YVxuXG4gICAgLyoqXG4gICAgICogTmVzdGVkIHNldCdzIGxlZnQgdmFsdWUgY29sdW1uLlxuICAgICAqIFVzZWQgb25seSBpbiB0cmVlIGVudGl0aWVzIHdpdGggbmVzdGVkIHNldCBwYXR0ZXJuIGFwcGxpZWQuXG4gICAgICovXG4gICAgbmVzdGVkU2V0TGVmdENvbHVtbj86IENvbHVtbk1ldGFkYXRhXG5cbiAgICAvKipcbiAgICAgKiBOZXN0ZWQgc2V0J3MgcmlnaHQgdmFsdWUgY29sdW1uLlxuICAgICAqIFVzZWQgb25seSBpbiB0cmVlIGVudGl0aWVzIHdpdGggbmVzdGVkIHNldCBwYXR0ZXJuIGFwcGxpZWQuXG4gICAgICovXG4gICAgbmVzdGVkU2V0UmlnaHRDb2x1bW4/OiBDb2x1bW5NZXRhZGF0YVxuXG4gICAgLyoqXG4gICAgICogTWF0ZXJpYWxpemVkIHBhdGggY29sdW1uLlxuICAgICAqIFVzZWQgb25seSBpbiB0cmVlIGVudGl0aWVzIHdpdGggbWF0ZXJpYWxpemVkIHBhdGggcGF0dGVybiBhcHBsaWVkLlxuICAgICAqL1xuICAgIG1hdGVyaWFsaXplZFBhdGhDb2x1bW4/OiBDb2x1bW5NZXRhZGF0YVxuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgcHJpbWFyeSBjb2x1bW5zLlxuICAgICAqL1xuICAgIHByaW1hcnlDb2x1bW5zOiBDb2x1bW5NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEVudGl0eSdzIHJlbGF0aW9uIG1ldGFkYXRhcy5cbiAgICAgKi9cbiAgICBvd25SZWxhdGlvbnM6IFJlbGF0aW9uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBSZWxhdGlvbnMgb2YgdGhlIGVudGl0eSwgaW5jbHVkaW5nIHJlbGF0aW9ucyB0aGF0IGFyZSBjb21pbmcgZnJvbSB0aGUgZW1iZWRkZWRzIG9mIHRoaXMgZW50aXR5LlxuICAgICAqL1xuICAgIHJlbGF0aW9uczogUmVsYXRpb25NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIExpc3Qgb2YgZWFnZXIgcmVsYXRpb25zIHRoaXMgbWV0YWRhdGEgaGFzLlxuICAgICAqL1xuICAgIGVhZ2VyUmVsYXRpb25zOiBSZWxhdGlvbk1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogTGlzdCBvZiBlYWdlciByZWxhdGlvbnMgdGhpcyBtZXRhZGF0YSBoYXMuXG4gICAgICovXG4gICAgbGF6eVJlbGF0aW9uczogUmVsYXRpb25NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEdldHMgb25seSBvbmUtdG8tb25lIHJlbGF0aW9ucyBvZiB0aGUgZW50aXR5LlxuICAgICAqL1xuICAgIG9uZVRvT25lUmVsYXRpb25zOiBSZWxhdGlvbk1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogR2V0cyBvbmx5IG93bmVyIG9uZS10by1vbmUgcmVsYXRpb25zIG9mIHRoZSBlbnRpdHkuXG4gICAgICovXG4gICAgb3duZXJPbmVUb09uZVJlbGF0aW9uczogUmVsYXRpb25NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEdldHMgb25seSBvbmUtdG8tbWFueSByZWxhdGlvbnMgb2YgdGhlIGVudGl0eS5cbiAgICAgKi9cbiAgICBvbmVUb01hbnlSZWxhdGlvbnM6IFJlbGF0aW9uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIG9ubHkgbWFueS10by1vbmUgcmVsYXRpb25zIG9mIHRoZSBlbnRpdHkuXG4gICAgICovXG4gICAgbWFueVRvT25lUmVsYXRpb25zOiBSZWxhdGlvbk1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogR2V0cyBvbmx5IG1hbnktdG8tbWFueSByZWxhdGlvbnMgb2YgdGhlIGVudGl0eS5cbiAgICAgKi9cbiAgICBtYW55VG9NYW55UmVsYXRpb25zOiBSZWxhdGlvbk1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogR2V0cyBvbmx5IG93bmVyIG1hbnktdG8tbWFueSByZWxhdGlvbnMgb2YgdGhlIGVudGl0eS5cbiAgICAgKi9cbiAgICBvd25lck1hbnlUb01hbnlSZWxhdGlvbnM6IFJlbGF0aW9uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBHZXRzIG9ubHkgb3duZXIgb25lLXRvLW9uZSBhbmQgbWFueS10by1vbmUgcmVsYXRpb25zLlxuICAgICAqL1xuICAgIHJlbGF0aW9uc1dpdGhKb2luQ29sdW1uczogUmVsYXRpb25NZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIFRyZWUgcGFyZW50IHJlbGF0aW9uLiBVc2VkIG9ubHkgaW4gdHJlZS10YWJsZXMuXG4gICAgICovXG4gICAgdHJlZVBhcmVudFJlbGF0aW9uPzogUmVsYXRpb25NZXRhZGF0YVxuXG4gICAgLyoqXG4gICAgICogVHJlZSBjaGlsZHJlbiByZWxhdGlvbi4gVXNlZCBvbmx5IGluIHRyZWUtdGFibGVzLlxuICAgICAqL1xuICAgIHRyZWVDaGlsZHJlblJlbGF0aW9uPzogUmVsYXRpb25NZXRhZGF0YVxuXG4gICAgLyoqXG4gICAgICogRW50aXR5J3MgcmVsYXRpb24gaWQgbWV0YWRhdGFzLlxuICAgICAqL1xuICAgIHJlbGF0aW9uSWRzOiBSZWxhdGlvbklkTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBFbnRpdHkncyByZWxhdGlvbiBpZCBtZXRhZGF0YXMuXG4gICAgICovXG4gICAgcmVsYXRpb25Db3VudHM6IFJlbGF0aW9uQ291bnRNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEVudGl0eSdzIGZvcmVpZ24ga2V5IG1ldGFkYXRhcy5cbiAgICAgKi9cbiAgICBmb3JlaWduS2V5czogRm9yZWlnbktleU1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogRW50aXR5J3MgZW1iZWRkZWQgbWV0YWRhdGFzLlxuICAgICAqL1xuICAgIGVtYmVkZGVkczogRW1iZWRkZWRNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEFsbCBlbWJlZGRlZHMgLSBlbWJlZGRlZHMgZnJvbSB0aGlzIGVudGl0eSBtZXRhZGF0YSBhbmQgZnJvbSBhbGwgY2hpbGQgZW1iZWRkZWRzLCBldGMuXG4gICAgICovXG4gICAgYWxsRW1iZWRkZWRzOiBFbWJlZGRlZE1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogRW50aXR5J3Mgb3duIGluZGljZXMuXG4gICAgICovXG4gICAgb3duSW5kaWNlczogSW5kZXhNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEVudGl0eSdzIGluZGV4IG1ldGFkYXRhcy5cbiAgICAgKi9cbiAgICBpbmRpY2VzOiBJbmRleE1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogRW50aXR5J3MgdW5pcXVlIG1ldGFkYXRhcy5cbiAgICAgKi9cbiAgICB1bmlxdWVzOiBVbmlxdWVNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEVudGl0eSdzIG93biB1bmlxdWVzLlxuICAgICAqL1xuICAgIG93blVuaXF1ZXM6IFVuaXF1ZU1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogRW50aXR5J3MgY2hlY2sgbWV0YWRhdGFzLlxuICAgICAqL1xuICAgIGNoZWNrczogQ2hlY2tNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEVudGl0eSdzIGV4Y2x1c2lvbiBtZXRhZGF0YXMuXG4gICAgICovXG4gICAgZXhjbHVzaW9uczogRXhjbHVzaW9uTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBFbnRpdHkncyBvd24gbGlzdGVuZXIgbWV0YWRhdGFzLlxuICAgICAqL1xuICAgIG93bkxpc3RlbmVyczogRW50aXR5TGlzdGVuZXJNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIEVudGl0eSBsaXN0ZW5lciBtZXRhZGF0YXMuXG4gICAgICovXG4gICAgbGlzdGVuZXJzOiBFbnRpdHlMaXN0ZW5lck1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogTGlzdGVuZXIgbWV0YWRhdGFzIHdpdGggXCJBRlRFUiBMT0FEXCIgdHlwZS5cbiAgICAgKi9cbiAgICBhZnRlckxvYWRMaXN0ZW5lcnM6IEVudGl0eUxpc3RlbmVyTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBMaXN0ZW5lciBtZXRhZGF0YXMgd2l0aCBcIkFGVEVSIElOU0VSVFwiIHR5cGUuXG4gICAgICovXG4gICAgYmVmb3JlSW5zZXJ0TGlzdGVuZXJzOiBFbnRpdHlMaXN0ZW5lck1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogTGlzdGVuZXIgbWV0YWRhdGFzIHdpdGggXCJBRlRFUiBJTlNFUlRcIiB0eXBlLlxuICAgICAqL1xuICAgIGFmdGVySW5zZXJ0TGlzdGVuZXJzOiBFbnRpdHlMaXN0ZW5lck1ldGFkYXRhW10gPSBbXVxuXG4gICAgLyoqXG4gICAgICogTGlzdGVuZXIgbWV0YWRhdGFzIHdpdGggXCJBRlRFUiBVUERBVEVcIiB0eXBlLlxuICAgICAqL1xuICAgIGJlZm9yZVVwZGF0ZUxpc3RlbmVyczogRW50aXR5TGlzdGVuZXJNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIExpc3RlbmVyIG1ldGFkYXRhcyB3aXRoIFwiQUZURVIgVVBEQVRFXCIgdHlwZS5cbiAgICAgKi9cbiAgICBhZnRlclVwZGF0ZUxpc3RlbmVyczogRW50aXR5TGlzdGVuZXJNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIExpc3RlbmVyIG1ldGFkYXRhcyB3aXRoIFwiQUZURVIgUkVNT1ZFXCIgdHlwZS5cbiAgICAgKi9cbiAgICBiZWZvcmVSZW1vdmVMaXN0ZW5lcnM6IEVudGl0eUxpc3RlbmVyTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBMaXN0ZW5lciBtZXRhZGF0YXMgd2l0aCBcIkJFRk9SRSBTT0ZUIFJFTU9WRVwiIHR5cGUuXG4gICAgICovXG4gICAgYmVmb3JlU29mdFJlbW92ZUxpc3RlbmVyczogRW50aXR5TGlzdGVuZXJNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIExpc3RlbmVyIG1ldGFkYXRhcyB3aXRoIFwiQkVGT1JFIFJFQ09WRVJcIiB0eXBlLlxuICAgICAqL1xuICAgIGJlZm9yZVJlY292ZXJMaXN0ZW5lcnM6IEVudGl0eUxpc3RlbmVyTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBMaXN0ZW5lciBtZXRhZGF0YXMgd2l0aCBcIkFGVEVSIFJFTU9WRVwiIHR5cGUuXG4gICAgICovXG4gICAgYWZ0ZXJSZW1vdmVMaXN0ZW5lcnM6IEVudGl0eUxpc3RlbmVyTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBMaXN0ZW5lciBtZXRhZGF0YXMgd2l0aCBcIkFGVEVSIFNPRlQgUkVNT1ZFXCIgdHlwZS5cbiAgICAgKi9cbiAgICBhZnRlclNvZnRSZW1vdmVMaXN0ZW5lcnM6IEVudGl0eUxpc3RlbmVyTWV0YWRhdGFbXSA9IFtdXG5cbiAgICAvKipcbiAgICAgKiBMaXN0ZW5lciBtZXRhZGF0YXMgd2l0aCBcIkFGVEVSIFJFQ09WRVJcIiB0eXBlLlxuICAgICAqL1xuICAgIGFmdGVyUmVjb3Zlckxpc3RlbmVyczogRW50aXR5TGlzdGVuZXJNZXRhZGF0YVtdID0gW11cblxuICAgIC8qKlxuICAgICAqIE1hcCBvZiBjb2x1bW5zIGFuZCByZWxhdGlvbnMgb2YgdGhlIGVudGl0eS5cbiAgICAgKlxuICAgICAqIGV4YW1wbGU6IFBvc3R7IGlkOiBudW1iZXIsIG5hbWU6IHN0cmluZywgY291bnRlckVtYmVkOiB7IGNvdW50OiBudW1iZXIgfSwgY2F0ZWdvcnk6IENhdGVnb3J5IH0uXG4gICAgICogVGhpcyBtZXRob2Qgd2lsbCBjcmVhdGUgZm9sbG93aW5nIG9iamVjdDpcbiAgICAgKiB7IGlkOiBcImlkXCIsIGNvdW50ZXJFbWJlZDogeyBjb3VudDogXCJjb3VudGVyRW1iZWQuY291bnRcIiB9LCBjYXRlZ29yeTogXCJjYXRlZ29yeVwiIH1cbiAgICAgKi9cbiAgICBwcm9wZXJ0aWVzTWFwOiBPYmplY3RMaXRlcmFsXG5cblxuXG5cblxuICAgIGNvbnN0cnVjdG9yKG9wdGlvbnM6IHtcbiAgICAgICAgY29ubmVjdGlvbjogRGF0YVNvdXJjZVxuICAgICAgICBpbmhlcml0YW5jZVRyZWU/OiBGdW5jdGlvbltdXG4gICAgICAgIGluaGVyaXRhbmNlUGF0dGVybj86IFwiU1RJXCIgLyp8XCJDVElcIiovXG4gICAgICAgIHRhYmxlVHJlZT86IFRyZWVNZXRhZGF0YUFyZ3NcbiAgICAgICAgcGFyZW50Q2xvc3VyZUVudGl0eU1ldGFkYXRhPzogRW50aXR5TWV0YWRhdGFcbiAgICAgICAgYXJnczogVGFibGVNZXRhZGF0YUFyZ3NcbiAgICB9KSB7XG4gICAgICAgIHRoaXMuY29ubmVjdGlvbiA9IG9wdGlvbnMuY29ubmVjdGlvblxuICAgICAgICB0aGlzLmluaGVyaXRhbmNlVHJlZSA9IG9wdGlvbnMuaW5oZXJpdGFuY2VUcmVlIHx8IFtdXG4gICAgICAgIHRoaXMuaW5oZXJpdGFuY2VQYXR0ZXJuID0gb3B0aW9ucy5pbmhlcml0YW5jZVBhdHRlcm5cbiAgICAgICAgdGhpcy50cmVlVHlwZSA9IG9wdGlvbnMudGFibGVUcmVlID8gb3B0aW9ucy50YWJsZVRyZWUudHlwZSA6IHVuZGVmaW5lZFxuICAgICAgICB0aGlzLnRyZWVPcHRpb25zID0gb3B0aW9ucy50YWJsZVRyZWVcbiAgICAgICAgICAgID8gb3B0aW9ucy50YWJsZVRyZWUub3B0aW9uc1xuICAgICAgICAgICAgOiB1bmRlZmluZWRcbiAgICAgICAgdGhpcy5wYXJlbnRDbG9zdXJlRW50aXR5TWV0YWRhdGEgPSBvcHRpb25zLnBhcmVudENsb3N1cmVFbnRpdHlNZXRhZGF0YSFcbiAgICAgICAgdGhpcy50YWJsZU1ldGFkYXRhQXJncyA9IG9wdGlvbnMuYXJnc1xuICAgICAgICB0aGlzLnRhcmdldCA9IHRoaXMudGFibGVNZXRhZGF0YUFyZ3MudGFyZ2V0XG4gICAgICAgIHRoaXMudGFibGVUeXBlID0gdGhpcy50YWJsZU1ldGFkYXRhQXJncy50eXBlXG4gICAgICAgIHRoaXMuZXhwcmVzc2lvbiA9IHRoaXMudGFibGVNZXRhZGF0YUFyZ3MuZXhwcmVzc2lvblxuICAgICAgICB0aGlzLndpdGhvdXRSb3dpZCA9IHRoaXMudGFibGVNZXRhZGF0YUFyZ3Mud2l0aG91dFJvd2lkXG4gICAgICAgIHRoaXMuZGVwZW5kc09uID0gdGhpcy50YWJsZU1ldGFkYXRhQXJncy5kZXBlbmRzT25cbiAgICB9XG5cblxuXG5cblxuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSBuZXcgZW50aXR5LlxuICAgICAqL1xuICAgIGNyZWF0ZShcbiAgICAgICAgcXVlcnlSdW5uZXI/OiBRdWVyeVJ1bm5lcixcbiAgICAgICAgb3B0aW9ucz86IHsgZnJvbURlc2VyaWFsaXplcj86IGJvb2xlYW47IHBvam8/OiBib29sZWFuIH0sXG4gICAgKTogYW55IHtcbiAgICAgICAgY29uc3QgcG9qbyA9IG9wdGlvbnMgJiYgb3B0aW9ucy5wb2pvID09PSB0cnVlID8gdHJ1ZSA6IGZhbHNlXG5cbiAgICAgICAgbGV0IHJldDogYW55XG4gICAgICAgIGlmICh0eXBlb2YgdGhpcy50YXJnZXQgPT09IFwiZnVuY3Rpb25cIiAmJiAhcG9qbykge1xuICAgICAgICAgICAgaWYgKCFvcHRpb25zPy5mcm9tRGVzZXJpYWxpemVyIHx8IHRoaXMuaXNBbHdheXNVc2luZ0NvbnN0cnVjdG9yKSB7XG4gICAgICAgICAgICAgICAgcmV0ID0gbmV3ICg8YW55PnRoaXMudGFyZ2V0KSgpXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHJldCA9IE9iamVjdC5jcmVhdGUodGhpcy50YXJnZXQucHJvdG90eXBlKVxuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuXG4gICAgICAgICAgICByZXQgPSB7fVxuICAgICAgICB9XG5cblxuICAgICAgICBpZiAodGhpcy5jb25uZWN0aW9uLm9wdGlvbnMudHlwZW5hbWUpIHtcbiAgICAgICAgICAgIHJldFt0aGlzLmNvbm5lY3Rpb24ub3B0aW9ucy50eXBlbmFtZV0gPSB0aGlzLnRhcmdldE5hbWVcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubGF6eVJlbGF0aW9ucy5mb3JFYWNoKChyZWxhdGlvbikgPT5cbiAgICAgICAgICAgIHRoaXMuY29ubmVjdGlvbi5yZWxhdGlvbkxvYWRlci5lbmFibGVMYXp5TG9hZChcbiAgICAgICAgICAgICAgICByZWxhdGlvbixcbiAgICAgICAgICAgICAgICByZXQsXG4gICAgICAgICAgICAgICAgcXVlcnlSdW5uZXIsXG4gICAgICAgICAgICApLFxuICAgICAgICApXG4gICAgICAgIHJldHVybiByZXRcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgZ2l2ZW4gZW50aXR5IGhhcyBhbiBpZC5cbiAgICAgKi9cbiAgICBoYXNJZChlbnRpdHk6IE9iamVjdExpdGVyYWwpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFlbnRpdHkpIHJldHVybiBmYWxzZVxuXG4gICAgICAgIHJldHVybiB0aGlzLnByaW1hcnlDb2x1bW5zLmV2ZXJ5KChwcmltYXJ5Q29sdW1uKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IHByaW1hcnlDb2x1bW4uZ2V0RW50aXR5VmFsdWUoZW50aXR5KVxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSB1bmRlZmluZWQgJiYgdmFsdWUgIT09IFwiXCJcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgZ2l2ZW4gZW50aXR5IC8gb2JqZWN0IGNvbnRhaW5zIEFMTCBwcmltYXJ5IGtleXMgZW50aXR5IG11c3QgaGF2ZS5cbiAgICAgKiBSZXR1cm5zIHRydWUgaWYgaXQgY29udGFpbnMgYWxsIG9mIHRoZW0sIGZhbHNlIGlmIGF0IGxlYXN0IG9uZSBvZiB0aGVtIGlzIG5vdCBkZWZpbmVkLlxuICAgICAqL1xuICAgIGhhc0FsbFByaW1hcnlLZXlzKGVudGl0eTogT2JqZWN0TGl0ZXJhbCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5wcmltYXJ5Q29sdW1ucy5ldmVyeSgocHJpbWFyeUNvbHVtbikgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBwcmltYXJ5Q29sdW1uLmdldEVudGl0eVZhbHVlKGVudGl0eSlcbiAgICAgICAgICAgIHJldHVybiB2YWx1ZSAhPT0gbnVsbCAmJiB2YWx1ZSAhPT0gdW5kZWZpbmVkXG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRW5zdXJlcyB0aGF0IGdpdmVuIG9iamVjdCBpcyBhbiBlbnRpdHkgaWQgbWFwLlxuICAgICAqIElmIGdpdmVuIGlkIGlzIGFuIG9iamVjdCB0aGVuIGl0IG1lYW5zIGl0cyBhbHJlYWR5IGlkIG1hcC5cbiAgICAgKiBJZiBnaXZlbiBpZCBpc24ndCBhbiBvYmplY3QgdGhlbiBpdCBtZWFucyBpdHMgYSB2YWx1ZSBvZiB0aGUgaWQgY29sdW1uXG4gICAgICogYW5kIGl0IGNyZWF0ZXMgYSBuZXcgaWQgbWFwIHdpdGggdGhpcyB2YWx1ZSBhbmQgbmFtZSBvZiB0aGUgcHJpbWFyeSBjb2x1bW4uXG4gICAgICovXG4gICAgZW5zdXJlRW50aXR5SWRNYXAoaWQ6IGFueSk6IE9iamVjdExpdGVyYWwge1xuICAgICAgICBpZiAoT2JqZWN0VXRpbHMuaXNPYmplY3QoaWQpKSByZXR1cm4gaWRcblxuICAgICAgICBpZiAodGhpcy5oYXNNdWx0aXBsZVByaW1hcnlLZXlzKVxuICAgICAgICAgICAgdGhyb3cgbmV3IENhbm5vdENyZWF0ZUVudGl0eUlkTWFwRXJyb3IodGhpcywgaWQpXG5cbiAgICAgICAgcmV0dXJuIHRoaXMucHJpbWFyeUNvbHVtbnNbMF0uY3JlYXRlVmFsdWVNYXAoaWQpXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogR2V0cyBwcmltYXJ5IGtleXMgb2YgdGhlIGVudGl0eSBhbmQgcmV0dXJucyB0aGVtIGluIGEgbGl0ZXJhbCBvYmplY3QuXG4gICAgICogRm9yIGV4YW1wbGUsIGZvciBQb3N0eyBpZDogMSwgdGl0bGU6IFwiaGVsbG9cIiB9IHdoZXJlIGlkIGlzIHByaW1hcnkgaXQgd2lsbCByZXR1cm4geyBpZDogMSB9XG4gICAgICogRm9yIG11bHRpcGxlIHByaW1hcnkga2V5cyBpdCByZXR1cm5zIG11bHRpcGxlIGtleXMgaW4gb2JqZWN0LlxuICAgICAqIEZvciBwcmltYXJ5IGtleXMgaW5zaWRlIGVtYmVkcyBpdCByZXR1cm5zIGNvbXBsZXggb2JqZWN0IGxpdGVyYWwgd2l0aCBrZXlzIGluIHRoZW0uXG4gICAgICovXG4gICAgZ2V0RW50aXR5SWRNYXAoXG4gICAgICAgIGVudGl0eTogT2JqZWN0TGl0ZXJhbCB8IHVuZGVmaW5lZCxcbiAgICApOiBPYmplY3RMaXRlcmFsIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgaWYgKCFlbnRpdHkpIHJldHVybiB1bmRlZmluZWRcblxuICAgICAgICByZXR1cm4gRW50aXR5TWV0YWRhdGEuZ2V0VmFsdWVNYXAoZW50aXR5LCB0aGlzLnByaW1hcnlDb2x1bW5zLCB7XG4gICAgICAgICAgICBza2lwTnVsbHM6IHRydWUsXG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIFwibWl4ZWQgaWQgbWFwXCIuXG4gICAgICogSWYgZW50aXR5IGhhcyBtdWx0aXBsZSBwcmltYXJ5IGtleXMgKGlkcykgdGhlbiBpdCB3aWxsIHJldHVybiBqdXN0IHJlZ3VsYXIgaWQgbWFwLCBsaWtlIHdoYXQgZ2V0RW50aXR5SWRNYXAgcmV0dXJucy5cbiAgICAgKiBCdXQgaWYgZW50aXR5IGhhcyBhIHNpbmdsZSBwcmltYXJ5IGtleSB0aGVuIGl0IHdpbGwgcmV0dXJuIGp1c3QgdmFsdWUgb2YgdGhlIGlkIGNvbHVtbiBvZiB0aGUgZW50aXR5LCBqdXN0IHZhbHVlLlxuICAgICAqIFRoaXMgaXMgY2FsbGVkIG1peGVkIGlkIG1hcC5cbiAgICAgKi9cbiAgICBnZXRFbnRpdHlJZE1peGVkTWFwKFxuICAgICAgICBlbnRpdHk6IE9iamVjdExpdGVyYWwgfCB1bmRlZmluZWQsXG4gICAgKTogT2JqZWN0TGl0ZXJhbCB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGlmICghZW50aXR5KSByZXR1cm4gZW50aXR5XG5cbiAgICAgICAgY29uc3QgaWRNYXAgPSB0aGlzLmdldEVudGl0eUlkTWFwKGVudGl0eSlcbiAgICAgICAgaWYgKHRoaXMuaGFzTXVsdGlwbGVQcmltYXJ5S2V5cykge1xuICAgICAgICAgICAgcmV0dXJuIGlkTWFwXG4gICAgICAgIH0gZWxzZSBpZiAoaWRNYXApIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLnByaW1hcnlDb2x1bW5zWzBdLmdldEVudGl0eVZhbHVlKGlkTWFwKSAvLyB0b2RvOiB3aGF0IGFib3V0IHBhcmVudCBwcmltYXJ5IGNvbHVtbj9cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBpZE1hcFxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbXBhcmVzIHR3byBkaWZmZXJlbnQgZW50aXRpZXMgYnkgdGhlaXIgaWRzLlxuICAgICAqIFJldHVybnMgdHJ1ZSBpZiB0aGV5IG1hdGNoLCBmYWxzZSBvdGhlcndpc2UuXG4gICAgICovXG4gICAgY29tcGFyZUVudGl0aWVzKFxuICAgICAgICBmaXJzdEVudGl0eTogT2JqZWN0TGl0ZXJhbCxcbiAgICAgICAgc2Vjb25kRW50aXR5OiBPYmplY3RMaXRlcmFsLFxuICAgICk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBmaXJzdEVudGl0eUlkTWFwID0gdGhpcy5nZXRFbnRpdHlJZE1hcChmaXJzdEVudGl0eSlcbiAgICAgICAgaWYgKCFmaXJzdEVudGl0eUlkTWFwKSByZXR1cm4gZmFsc2VcblxuICAgICAgICBjb25zdCBzZWNvbmRFbnRpdHlJZE1hcCA9IHRoaXMuZ2V0RW50aXR5SWRNYXAoc2Vjb25kRW50aXR5KVxuICAgICAgICBpZiAoIXNlY29uZEVudGl0eUlkTWFwKSByZXR1cm4gZmFsc2VcblxuICAgICAgICByZXR1cm4gT3JtVXRpbHMuY29tcGFyZUlkcyhmaXJzdEVudGl0eUlkTWFwLCBzZWNvbmRFbnRpdHlJZE1hcClcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGaW5kcyBjb2x1bW4gd2l0aCBhIGdpdmVuIHByb3BlcnR5IG5hbWUuXG4gICAgICovXG4gICAgZmluZENvbHVtbldpdGhQcm9wZXJ0eU5hbWUoXG4gICAgICAgIHByb3BlcnR5TmFtZTogc3RyaW5nLFxuICAgICk6IENvbHVtbk1ldGFkYXRhIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29sdW1ucy5maW5kKFxuICAgICAgICAgICAgKGNvbHVtbikgPT4gY29sdW1uLnByb3BlcnR5TmFtZSA9PT0gcHJvcGVydHlOYW1lLFxuICAgICAgICApXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRmluZHMgY29sdW1uIHdpdGggYSBnaXZlbiBkYXRhYmFzZSBuYW1lLlxuICAgICAqL1xuICAgIGZpbmRDb2x1bW5XaXRoRGF0YWJhc2VOYW1lKFxuICAgICAgICBkYXRhYmFzZU5hbWU6IHN0cmluZyxcbiAgICApOiBDb2x1bW5NZXRhZGF0YSB8IHVuZGVmaW5lZCB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbHVtbnMuZmluZChcbiAgICAgICAgICAgIChjb2x1bW4pID0+IGNvbHVtbi5kYXRhYmFzZU5hbWUgPT09IGRhdGFiYXNlTmFtZSxcbiAgICAgICAgKVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENoZWNrcyBpZiB0aGVyZSBpcyBhIGNvbHVtbiBvciByZWxhdGlvbnNoaXAgd2l0aCBhIGdpdmVuIHByb3BlcnR5IHBhdGguXG4gICAgICovXG4gICAgaGFzQ29sdW1uV2l0aFByb3BlcnR5UGF0aChwcm9wZXJ0eVBhdGg6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBoYXNDb2x1bW4gPSB0aGlzLmNvbHVtbnMuc29tZShcbiAgICAgICAgICAgIChjb2x1bW4pID0+IGNvbHVtbi5wcm9wZXJ0eVBhdGggPT09IHByb3BlcnR5UGF0aCxcbiAgICAgICAgKVxuICAgICAgICByZXR1cm4gaGFzQ29sdW1uIHx8IHRoaXMuaGFzUmVsYXRpb25XaXRoUHJvcGVydHlQYXRoKHByb3BlcnR5UGF0aClcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGaW5kcyBjb2x1bW4gd2l0aCBhIGdpdmVuIHByb3BlcnR5IHBhdGguXG4gICAgICovXG4gICAgZmluZENvbHVtbldpdGhQcm9wZXJ0eVBhdGgoXG4gICAgICAgIHByb3BlcnR5UGF0aDogc3RyaW5nLFxuICAgICk6IENvbHVtbk1ldGFkYXRhIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgY29uc3QgY29sdW1uID0gdGhpcy5jb2x1bW5zLmZpbmQoXG4gICAgICAgICAgICAoY29sdW1uKSA9PiBjb2x1bW4ucHJvcGVydHlQYXRoID09PSBwcm9wZXJ0eVBhdGgsXG4gICAgICAgIClcbiAgICAgICAgaWYgKGNvbHVtbikgcmV0dXJuIGNvbHVtblxuXG5cblxuICAgICAgICBjb25zdCByZWxhdGlvbiA9IHRoaXMucmVsYXRpb25zLmZpbmQoXG4gICAgICAgICAgICAocmVsYXRpb24pID0+IHJlbGF0aW9uLnByb3BlcnR5UGF0aCA9PT0gcHJvcGVydHlQYXRoLFxuICAgICAgICApXG4gICAgICAgIGlmIChyZWxhdGlvbiAmJiByZWxhdGlvbi5qb2luQ29sdW1ucy5sZW5ndGggPT09IDEpXG4gICAgICAgICAgICByZXR1cm4gcmVsYXRpb24uam9pbkNvbHVtbnNbMF1cblxuICAgICAgICByZXR1cm4gdW5kZWZpbmVkXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRmluZHMgY29sdW1uIHdpdGggYSBnaXZlbiBwcm9wZXJ0eSBwYXRoLlxuICAgICAqIERvZXMgbm90IHNlYXJjaCBpbiByZWxhdGlvbiB1bmxpa2UgZmluZENvbHVtbldpdGhQcm9wZXJ0eVBhdGguXG4gICAgICovXG4gICAgZmluZENvbHVtbldpdGhQcm9wZXJ0eVBhdGhTdHJpY3QoXG4gICAgICAgIHByb3BlcnR5UGF0aDogc3RyaW5nLFxuICAgICk6IENvbHVtbk1ldGFkYXRhIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29sdW1ucy5maW5kKFxuICAgICAgICAgICAgKGNvbHVtbikgPT4gY29sdW1uLnByb3BlcnR5UGF0aCA9PT0gcHJvcGVydHlQYXRoLFxuICAgICAgICApXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRmluZHMgY29sdW1ucyB3aXRoIGEgZ2l2ZW4gcHJvcGVydHkgcGF0aC5cbiAgICAgKiBQcm9wZXJ0eSBwYXRoIGNhbiBtYXRjaCBhIHJlbGF0aW9uLCBhbmQgcmVsYXRpb25zIGNhbiBjb250YWluIG11bHRpcGxlIGNvbHVtbnMuXG4gICAgICovXG4gICAgZmluZENvbHVtbnNXaXRoUHJvcGVydHlQYXRoKHByb3BlcnR5UGF0aDogc3RyaW5nKTogQ29sdW1uTWV0YWRhdGFbXSB7XG4gICAgICAgIGNvbnN0IGNvbHVtbiA9IHRoaXMuY29sdW1ucy5maW5kKFxuICAgICAgICAgICAgKGNvbHVtbikgPT4gY29sdW1uLnByb3BlcnR5UGF0aCA9PT0gcHJvcGVydHlQYXRoLFxuICAgICAgICApXG4gICAgICAgIGlmIChjb2x1bW4pIHJldHVybiBbY29sdW1uXVxuXG5cblxuICAgICAgICBjb25zdCByZWxhdGlvbiA9IHRoaXMuZmluZFJlbGF0aW9uV2l0aFByb3BlcnR5UGF0aChwcm9wZXJ0eVBhdGgpXG4gICAgICAgIGlmIChyZWxhdGlvbiAmJiByZWxhdGlvbi5qb2luQ29sdW1ucykgcmV0dXJuIHJlbGF0aW9uLmpvaW5Db2x1bW5zXG5cbiAgICAgICAgcmV0dXJuIFtdXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIHRoZXJlIGlzIGEgcmVsYXRpb24gd2l0aCB0aGUgZ2l2ZW4gcHJvcGVydHkgcGF0aC5cbiAgICAgKi9cbiAgICBoYXNSZWxhdGlvbldpdGhQcm9wZXJ0eVBhdGgocHJvcGVydHlQYXRoOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVsYXRpb25zLnNvbWUoXG4gICAgICAgICAgICAocmVsYXRpb24pID0+IHJlbGF0aW9uLnByb3BlcnR5UGF0aCA9PT0gcHJvcGVydHlQYXRoLFxuICAgICAgICApXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRmluZHMgcmVsYXRpb24gd2l0aCB0aGUgZ2l2ZW4gcHJvcGVydHkgcGF0aC5cbiAgICAgKi9cbiAgICBmaW5kUmVsYXRpb25XaXRoUHJvcGVydHlQYXRoKFxuICAgICAgICBwcm9wZXJ0eVBhdGg6IHN0cmluZyxcbiAgICApOiBSZWxhdGlvbk1ldGFkYXRhIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVsYXRpb25zLmZpbmQoXG4gICAgICAgICAgICAocmVsYXRpb24pID0+IHJlbGF0aW9uLnByb3BlcnR5UGF0aCA9PT0gcHJvcGVydHlQYXRoLFxuICAgICAgICApXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2hlY2tzIGlmIHRoZXJlIGlzIGFuIGVtYmVkZGVkIHdpdGggYSBnaXZlbiBwcm9wZXJ0eSBwYXRoLlxuICAgICAqL1xuICAgIGhhc0VtYmVkZGVkV2l0aFByb3BlcnR5UGF0aChwcm9wZXJ0eVBhdGg6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5hbGxFbWJlZGRlZHMuc29tZShcbiAgICAgICAgICAgIChlbWJlZGRlZCkgPT4gZW1iZWRkZWQucHJvcGVydHlQYXRoID09PSBwcm9wZXJ0eVBhdGgsXG4gICAgICAgIClcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGaW5kcyBlbWJlZGRlZCB3aXRoIGEgZ2l2ZW4gcHJvcGVydHkgcGF0aC5cbiAgICAgKi9cbiAgICBmaW5kRW1iZWRkZWRXaXRoUHJvcGVydHlQYXRoKFxuICAgICAgICBwcm9wZXJ0eVBhdGg6IHN0cmluZyxcbiAgICApOiBFbWJlZGRlZE1ldGFkYXRhIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYWxsRW1iZWRkZWRzLmZpbmQoXG4gICAgICAgICAgICAoZW1iZWRkZWQpID0+IGVtYmVkZGVkLnByb3BlcnR5UGF0aCA9PT0gcHJvcGVydHlQYXRoLFxuICAgICAgICApXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhbiBhcnJheSBvZiBkYXRhYmFzZU5hbWVzIG1hcHBlZCBmcm9tIHByb3ZpZGVkIHByb3BlcnR5UGF0aHNcbiAgICAgKi9cbiAgICBtYXBQcm9wZXJ0eVBhdGhzVG9Db2x1bW5zKHByb3BlcnR5UGF0aHM6IHN0cmluZ1tdKSB7XG4gICAgICAgIHJldHVybiBwcm9wZXJ0eVBhdGhzLm1hcCgocHJvcGVydHlQYXRoKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBjb2x1bW4gPSB0aGlzLmZpbmRDb2x1bW5XaXRoUHJvcGVydHlQYXRoKHByb3BlcnR5UGF0aClcbiAgICAgICAgICAgIGlmIChjb2x1bW4gPT0gbnVsbCkge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFbnRpdHlQcm9wZXJ0eU5vdEZvdW5kRXJyb3IocHJvcGVydHlQYXRoLCB0aGlzKVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGNvbHVtblxuICAgICAgICB9KVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEl0ZXJhdGVzIHRocm91Z2ggZW50aXR5IGFuZCBmaW5kcyBhbmQgZXh0cmFjdHMgYWxsIHZhbHVlcyBmcm9tIHJlbGF0aW9ucyBpbiB0aGUgZW50aXR5LlxuICAgICAqIElmIHJlbGF0aW9uIHZhbHVlIGlzIGFuIGFycmF5IGl0cyBiZWluZyBmbGF0dGVuZWQuXG4gICAgICovXG4gICAgZXh0cmFjdFJlbGF0aW9uVmFsdWVzRnJvbUVudGl0eShcbiAgICAgICAgZW50aXR5OiBPYmplY3RMaXRlcmFsLFxuICAgICAgICByZWxhdGlvbnM6IFJlbGF0aW9uTWV0YWRhdGFbXSxcbiAgICApOiBbUmVsYXRpb25NZXRhZGF0YSwgYW55LCBFbnRpdHlNZXRhZGF0YV1bXSB7XG4gICAgICAgIGNvbnN0IHJlbGF0aW9uc0FuZFZhbHVlczogW1JlbGF0aW9uTWV0YWRhdGEsIGFueSwgRW50aXR5TWV0YWRhdGFdW10gPSBbXVxuICAgICAgICByZWxhdGlvbnMuZm9yRWFjaCgocmVsYXRpb24pID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gcmVsYXRpb24uZ2V0RW50aXR5VmFsdWUoZW50aXR5KVxuICAgICAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgdmFsdWUuZm9yRWFjaCgoc3ViVmFsdWUpID0+XG4gICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uc0FuZFZhbHVlcy5wdXNoKFtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlbGF0aW9uLFxuICAgICAgICAgICAgICAgICAgICAgICAgc3ViVmFsdWUsXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmdldEludmVyc2VFbnRpdHlNZXRhZGF0YShzdWJWYWx1ZSwgcmVsYXRpb24pLFxuICAgICAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICB9IGVsc2UgaWYgKHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgcmVsYXRpb25zQW5kVmFsdWVzLnB1c2goW1xuICAgICAgICAgICAgICAgICAgICByZWxhdGlvbixcbiAgICAgICAgICAgICAgICAgICAgdmFsdWUsXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZ2V0SW52ZXJzZUVudGl0eU1ldGFkYXRhKHZhbHVlLCByZWxhdGlvbiksXG4gICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuIHJlbGF0aW9uc0FuZFZhbHVlc1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0SW52ZXJzZUVudGl0eU1ldGFkYXRhKFxuICAgICAgICB2YWx1ZTogYW55LFxuICAgICAgICByZWxhdGlvbjogUmVsYXRpb25NZXRhZGF0YSxcbiAgICApOiBFbnRpdHlNZXRhZGF0YSB7XG4gICAgICAgIGNvbnN0IGNoaWxkRW50aXR5TWV0YWRhdGEgPVxuICAgICAgICAgICAgcmVsYXRpb24uaW52ZXJzZUVudGl0eU1ldGFkYXRhLmNoaWxkRW50aXR5TWV0YWRhdGFzLmZpbmQoXG4gICAgICAgICAgICAgICAgKG1ldGFkYXRhKSA9PiBtZXRhZGF0YS50YXJnZXQgPT09IHZhbHVlLmNvbnN0cnVjdG9yLFxuICAgICAgICAgICAgKVxuICAgICAgICByZXR1cm4gY2hpbGRFbnRpdHlNZXRhZGF0YVxuICAgICAgICAgICAgPyBjaGlsZEVudGl0eU1ldGFkYXRhXG4gICAgICAgICAgICA6IHJlbGF0aW9uLmludmVyc2VFbnRpdHlNZXRhZGF0YVxuICAgIH1cblxuXG5cblxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIHByb3BlcnR5IHBhdGhzIGZvciBhIGdpdmVuIGVudGl0eS5cbiAgICAgKlxuICAgICAqIEBkZXByZWNhdGVkXG4gICAgICovXG4gICAgc3RhdGljIGNyZWF0ZVByb3BlcnR5UGF0aChcbiAgICAgICAgbWV0YWRhdGE6IEVudGl0eU1ldGFkYXRhLFxuICAgICAgICBlbnRpdHk6IE9iamVjdExpdGVyYWwsXG4gICAgICAgIHByZWZpeDogc3RyaW5nID0gXCJcIixcbiAgICApIHtcbiAgICAgICAgY29uc3QgcGF0aHM6IHN0cmluZ1tdID0gW11cbiAgICAgICAgT2JqZWN0LmtleXMoZW50aXR5KS5mb3JFYWNoKChrZXkpID0+IHtcblxuXG4gICAgICAgICAgICBjb25zdCBwYXJlbnRQYXRoID0gcHJlZml4ID8gcHJlZml4ICsgXCIuXCIgKyBrZXkgOiBrZXlcbiAgICAgICAgICAgIGlmIChtZXRhZGF0YS5oYXNFbWJlZGRlZFdpdGhQcm9wZXJ0eVBhdGgocGFyZW50UGF0aCkpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBzdWJQYXRocyA9IHRoaXMuY3JlYXRlUHJvcGVydHlQYXRoKFxuICAgICAgICAgICAgICAgICAgICBtZXRhZGF0YSxcbiAgICAgICAgICAgICAgICAgICAgZW50aXR5W2tleV0sXG4gICAgICAgICAgICAgICAgICAgIHBhcmVudFBhdGgsXG4gICAgICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIHBhdGhzLnB1c2goLi4uc3ViUGF0aHMpXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIGNvbnN0IHBhdGggPSBwcmVmaXggPyBwcmVmaXggKyBcIi5cIiArIGtleSA6IGtleVxuICAgICAgICAgICAgICAgIHBhdGhzLnB1c2gocGF0aClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICAgICAgcmV0dXJuIHBhdGhzXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRmluZHMgZGlmZmVyZW5jZSBiZXR3ZWVuIHR3byBlbnRpdHkgaWQgbWFwcy5cbiAgICAgKiBSZXR1cm5zIGl0ZW1zIHRoYXQgZXhpc3QgaW4gdGhlIGZpcnN0IGFycmF5IGFuZCBhYnNlbnQgaW4gdGhlIHNlY29uZCBhcnJheS5cbiAgICAgKi9cbiAgICBzdGF0aWMgZGlmZmVyZW5jZShcbiAgICAgICAgZmlyc3RJZE1hcHM6IE9iamVjdExpdGVyYWxbXSxcbiAgICAgICAgc2Vjb25kSWRNYXBzOiBPYmplY3RMaXRlcmFsW10sXG4gICAgKTogT2JqZWN0TGl0ZXJhbFtdIHtcbiAgICAgICAgcmV0dXJuIGZpcnN0SWRNYXBzLmZpbHRlcigoZmlyc3RJZE1hcCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuICFzZWNvbmRJZE1hcHMuZmluZCgoc2Vjb25kSWRNYXApID0+XG4gICAgICAgICAgICAgICAgT3JtVXRpbHMuY29tcGFyZUlkcyhmaXJzdElkTWFwLCBzZWNvbmRJZE1hcCksXG4gICAgICAgICAgICApXG4gICAgICAgIH0pXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyB2YWx1ZSBtYXAgZnJvbSB0aGUgZ2l2ZW4gdmFsdWVzIGFuZCBjb2x1bW5zLlxuICAgICAqIEV4YW1wbGVzIG9mIHVzYWdlcyBhcmUgcHJpbWFyeSBjb2x1bW5zIG1hcCBhbmQgam9pbiBjb2x1bW5zIG1hcC5cbiAgICAgKi9cbiAgICBzdGF0aWMgZ2V0VmFsdWVNYXAoXG4gICAgICAgIGVudGl0eTogT2JqZWN0TGl0ZXJhbCxcbiAgICAgICAgY29sdW1uczogQ29sdW1uTWV0YWRhdGFbXSxcbiAgICAgICAgb3B0aW9ucz86IHsgc2tpcE51bGxzPzogYm9vbGVhbiB9LFxuICAgICk6IE9iamVjdExpdGVyYWwgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gY29sdW1ucy5yZWR1Y2UoKG1hcCwgY29sdW1uKSA9PiB7XG4gICAgICAgICAgICBjb25zdCB2YWx1ZSA9IGNvbHVtbi5nZXRFbnRpdHlWYWx1ZU1hcChlbnRpdHksIG9wdGlvbnMpXG5cblxuICAgICAgICAgICAgaWYgKG1hcCA9PT0gdW5kZWZpbmVkIHx8IHZhbHVlID09PSBudWxsIHx8IHZhbHVlID09PSB1bmRlZmluZWQpXG4gICAgICAgICAgICAgICAgcmV0dXJuIHVuZGVmaW5lZFxuXG4gICAgICAgICAgICByZXR1cm4gT3JtVXRpbHMubWVyZ2VEZWVwKG1hcCwgdmFsdWUpXG4gICAgICAgIH0sIHt9IGFzIE9iamVjdExpdGVyYWwgfCB1bmRlZmluZWQpXG4gICAgfVxuXG5cblxuXG5cbiAgICBidWlsZCgpIHtcbiAgICAgICAgY29uc3QgbmFtaW5nU3RyYXRlZ3kgPSB0aGlzLmNvbm5lY3Rpb24ubmFtaW5nU3RyYXRlZ3lcbiAgICAgICAgY29uc3QgZW50aXR5UHJlZml4ID0gdGhpcy5jb25uZWN0aW9uLm9wdGlvbnMuZW50aXR5UHJlZml4XG4gICAgICAgIGNvbnN0IGVudGl0eVNraXBDb25zdHJ1Y3RvciA9XG4gICAgICAgICAgICB0aGlzLmNvbm5lY3Rpb24ub3B0aW9ucy5lbnRpdHlTa2lwQ29uc3RydWN0b3JcblxuICAgICAgICB0aGlzLmVuZ2luZSA9IHRoaXMudGFibGVNZXRhZGF0YUFyZ3MuZW5naW5lXG4gICAgICAgIHRoaXMuZGF0YWJhc2UgPVxuICAgICAgICAgICAgdGhpcy50YWJsZU1ldGFkYXRhQXJncy50eXBlID09PSBcImVudGl0eS1jaGlsZFwiICYmXG4gICAgICAgICAgICB0aGlzLnBhcmVudEVudGl0eU1ldGFkYXRhXG4gICAgICAgICAgICAgICAgPyB0aGlzLnBhcmVudEVudGl0eU1ldGFkYXRhLmRhdGFiYXNlXG4gICAgICAgICAgICAgICAgOiB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLmRhdGFiYXNlXG4gICAgICAgIGlmICh0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnNjaGVtYSkge1xuICAgICAgICAgICAgdGhpcy5zY2hlbWEgPSB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnNjaGVtYVxuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgdGhpcy50YWJsZU1ldGFkYXRhQXJncy50eXBlID09PSBcImVudGl0eS1jaGlsZFwiICYmXG4gICAgICAgICAgICB0aGlzLnBhcmVudEVudGl0eU1ldGFkYXRhXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5zY2hlbWEgPSB0aGlzLnBhcmVudEVudGl0eU1ldGFkYXRhLnNjaGVtYVxuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuY29ubmVjdGlvbi5vcHRpb25zPy5oYXNPd25Qcm9wZXJ0eShcInNjaGVtYVwiKSkge1xuICAgICAgICAgICAgdGhpcy5zY2hlbWEgPSAodGhpcy5jb25uZWN0aW9uLm9wdGlvbnMgYXMgYW55KS5zY2hlbWFcbiAgICAgICAgfVxuICAgICAgICB0aGlzLmdpdmVuVGFibGVOYW1lID1cbiAgICAgICAgICAgIHRoaXMudGFibGVNZXRhZGF0YUFyZ3MudHlwZSA9PT0gXCJlbnRpdHktY2hpbGRcIiAmJlxuICAgICAgICAgICAgdGhpcy5wYXJlbnRFbnRpdHlNZXRhZGF0YVxuICAgICAgICAgICAgICAgID8gdGhpcy5wYXJlbnRFbnRpdHlNZXRhZGF0YS5naXZlblRhYmxlTmFtZVxuICAgICAgICAgICAgICAgIDogdGhpcy50YWJsZU1ldGFkYXRhQXJncy5uYW1lXG4gICAgICAgIHRoaXMuc3luY2hyb25pemUgPVxuICAgICAgICAgICAgdGhpcy50YWJsZU1ldGFkYXRhQXJncy5zeW5jaHJvbml6ZSA9PT0gZmFsc2UgPyBmYWxzZSA6IHRydWVcbiAgICAgICAgdGhpcy50YXJnZXROYW1lID1cbiAgICAgICAgICAgIHR5cGVvZiB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnRhcmdldCA9PT0gXCJmdW5jdGlvblwiXG4gICAgICAgICAgICAgICAgPyAodGhpcy50YWJsZU1ldGFkYXRhQXJncy50YXJnZXQgYXMgYW55KS5uYW1lXG4gICAgICAgICAgICAgICAgOiB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnRhcmdldFxuICAgICAgICBpZiAodGhpcy50YWJsZU1ldGFkYXRhQXJncy50eXBlID09PSBcImNsb3N1cmUtanVuY3Rpb25cIikge1xuICAgICAgICAgICAgdGhpcy50YWJsZU5hbWVXaXRob3V0UHJlZml4ID1cbiAgICAgICAgICAgICAgICBuYW1pbmdTdHJhdGVneS5jbG9zdXJlSnVuY3Rpb25UYWJsZU5hbWUodGhpcy5naXZlblRhYmxlTmFtZSEpXG4gICAgICAgIH0gZWxzZSBpZiAoXG4gICAgICAgICAgICB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnR5cGUgPT09IFwiZW50aXR5LWNoaWxkXCIgJiZcbiAgICAgICAgICAgIHRoaXMucGFyZW50RW50aXR5TWV0YWRhdGFcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLnRhYmxlTmFtZVdpdGhvdXRQcmVmaXggPSBuYW1pbmdTdHJhdGVneS50YWJsZU5hbWUoXG4gICAgICAgICAgICAgICAgdGhpcy5wYXJlbnRFbnRpdHlNZXRhZGF0YS50YXJnZXROYW1lLFxuICAgICAgICAgICAgICAgIHRoaXMucGFyZW50RW50aXR5TWV0YWRhdGEuZ2l2ZW5UYWJsZU5hbWUsXG4gICAgICAgICAgICApXG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnRhYmxlTmFtZVdpdGhvdXRQcmVmaXggPSBuYW1pbmdTdHJhdGVneS50YWJsZU5hbWUoXG4gICAgICAgICAgICAgICAgdGhpcy50YXJnZXROYW1lLFxuICAgICAgICAgICAgICAgIHRoaXMuZ2l2ZW5UYWJsZU5hbWUsXG4gICAgICAgICAgICApXG5cbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnR5cGUgPT09IFwianVuY3Rpb25cIiAmJlxuICAgICAgICAgICAgICAgIHRoaXMuY29ubmVjdGlvbi5kcml2ZXIubWF4QWxpYXNMZW5ndGggJiZcbiAgICAgICAgICAgICAgICB0aGlzLmNvbm5lY3Rpb24uZHJpdmVyLm1heEFsaWFzTGVuZ3RoID4gMCAmJlxuICAgICAgICAgICAgICAgIHRoaXMudGFibGVOYW1lV2l0aG91dFByZWZpeC5sZW5ndGggPlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmNvbm5lY3Rpb24uZHJpdmVyLm1heEFsaWFzTGVuZ3RoXG4gICAgICAgICAgICApIHtcblxuXG5cbiAgICAgICAgICAgICAgICB0aGlzLnRhYmxlTmFtZVdpdGhvdXRQcmVmaXggPSBzaG9ydGVuKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLnRhYmxlTmFtZVdpdGhvdXRQcmVmaXgsXG4gICAgICAgICAgICAgICAgICAgIHsgc2VwYXJhdG9yOiBcIl9cIiwgc2VnbWVudExlbmd0aDogMyB9LFxuICAgICAgICAgICAgICAgIClcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLnRhYmxlTmFtZSA9IGVudGl0eVByZWZpeFxuICAgICAgICAgICAgPyBuYW1pbmdTdHJhdGVneS5wcmVmaXhUYWJsZU5hbWUoXG4gICAgICAgICAgICAgICAgICBlbnRpdHlQcmVmaXgsXG4gICAgICAgICAgICAgICAgICB0aGlzLnRhYmxlTmFtZVdpdGhvdXRQcmVmaXgsXG4gICAgICAgICAgICAgIClcbiAgICAgICAgICAgIDogdGhpcy50YWJsZU5hbWVXaXRob3V0UHJlZml4XG4gICAgICAgIHRoaXMudGFyZ2V0ID0gdGhpcy50YXJnZXQgPyB0aGlzLnRhcmdldCA6IHRoaXMudGFibGVOYW1lXG4gICAgICAgIHRoaXMubmFtZSA9IHRoaXMudGFyZ2V0TmFtZSA/IHRoaXMudGFyZ2V0TmFtZSA6IHRoaXMudGFibGVOYW1lXG4gICAgICAgIHRoaXMuZXhwcmVzc2lvbiA9IHRoaXMudGFibGVNZXRhZGF0YUFyZ3MuZXhwcmVzc2lvblxuICAgICAgICB0aGlzLndpdGhvdXRSb3dpZCA9XG4gICAgICAgICAgICB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLndpdGhvdXRSb3dpZCA9PT0gdHJ1ZSA/IHRydWUgOiBmYWxzZVxuICAgICAgICB0aGlzLnRhYmxlUGF0aCA9IHRoaXMuY29ubmVjdGlvbi5kcml2ZXIuYnVpbGRUYWJsZU5hbWUoXG4gICAgICAgICAgICB0aGlzLnRhYmxlTmFtZSxcbiAgICAgICAgICAgIHRoaXMuc2NoZW1hLFxuICAgICAgICAgICAgdGhpcy5kYXRhYmFzZSxcbiAgICAgICAgKVxuICAgICAgICB0aGlzLm9yZGVyQnkgPVxuICAgICAgICAgICAgdHlwZW9mIHRoaXMudGFibGVNZXRhZGF0YUFyZ3Mub3JkZXJCeSA9PT0gXCJmdW5jdGlvblwiXG4gICAgICAgICAgICAgICAgPyB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLm9yZGVyQnkodGhpcy5wcm9wZXJ0aWVzTWFwKVxuICAgICAgICAgICAgICAgIDogdGhpcy50YWJsZU1ldGFkYXRhQXJncy5vcmRlckJ5IC8vIHRvZG86IGlzIHByb3BlcnRpZXNNYXAgYXZhaWxhYmxlIGhlcmU/IExvb2tzIGxpa2UgaXRzIG5vdFxuXG4gICAgICAgIGlmIChlbnRpdHlTa2lwQ29uc3RydWN0b3IgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5pc0Fsd2F5c1VzaW5nQ29uc3RydWN0b3IgPSAhZW50aXR5U2tpcENvbnN0cnVjdG9yXG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmlzSnVuY3Rpb24gPVxuICAgICAgICAgICAgdGhpcy50YWJsZU1ldGFkYXRhQXJncy50eXBlID09PSBcImNsb3N1cmUtanVuY3Rpb25cIiB8fFxuICAgICAgICAgICAgdGhpcy50YWJsZU1ldGFkYXRhQXJncy50eXBlID09PSBcImp1bmN0aW9uXCJcbiAgICAgICAgdGhpcy5pc0Nsb3N1cmVKdW5jdGlvbiA9XG4gICAgICAgICAgICB0aGlzLnRhYmxlTWV0YWRhdGFBcmdzLnR5cGUgPT09IFwiY2xvc3VyZS1qdW5jdGlvblwiXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmVnaXN0ZXJzIGEgbmV3IGNvbHVtbiBpbiB0aGUgZW50aXR5IGFuZCByZWNvbXB1dGVzIGFsbCBkZXBlbmQgcHJvcGVydGllcy5cbiAgICAgKi9cbiAgICByZWdpc3RlckNvbHVtbihjb2x1bW46IENvbHVtbk1ldGFkYXRhKSB7XG4gICAgICAgIGlmICh0aGlzLm93bkNvbHVtbnMuaW5kZXhPZihjb2x1bW4pICE9PSAtMSkgcmV0dXJuXG5cbiAgICAgICAgdGhpcy5vd25Db2x1bW5zLnB1c2goY29sdW1uKVxuICAgICAgICB0aGlzLmNvbHVtbnMgPSB0aGlzLmVtYmVkZGVkcy5yZWR1Y2UoXG4gICAgICAgICAgICAoY29sdW1ucywgZW1iZWRkZWQpID0+IGNvbHVtbnMuY29uY2F0KGVtYmVkZGVkLmNvbHVtbnNGcm9tVHJlZSksXG4gICAgICAgICAgICB0aGlzLm93bkNvbHVtbnMsXG4gICAgICAgIClcbiAgICAgICAgdGhpcy5wcmltYXJ5Q29sdW1ucyA9IHRoaXMuY29sdW1ucy5maWx0ZXIoKGNvbHVtbikgPT4gY29sdW1uLmlzUHJpbWFyeSlcbiAgICAgICAgdGhpcy5oYXNNdWx0aXBsZVByaW1hcnlLZXlzID0gdGhpcy5wcmltYXJ5Q29sdW1ucy5sZW5ndGggPiAxXG4gICAgICAgIHRoaXMuaGFzVVVJREdlbmVyYXRlZENvbHVtbnMgPVxuICAgICAgICAgICAgdGhpcy5jb2x1bW5zLmZpbHRlcihcbiAgICAgICAgICAgICAgICAoY29sdW1uKSA9PlxuICAgICAgICAgICAgICAgICAgICBjb2x1bW4uaXNHZW5lcmF0ZWQgfHwgY29sdW1uLmdlbmVyYXRpb25TdHJhdGVneSA9PT0gXCJ1dWlkXCIsXG4gICAgICAgICAgICApLmxlbmd0aCA+IDBcbiAgICAgICAgdGhpcy5wcm9wZXJ0aWVzTWFwID0gdGhpcy5jcmVhdGVQcm9wZXJ0aWVzTWFwKClcbiAgICAgICAgaWYgKHRoaXMuY2hpbGRFbnRpdHlNZXRhZGF0YXMpXG4gICAgICAgICAgICB0aGlzLmNoaWxkRW50aXR5TWV0YWRhdGFzLmZvckVhY2goKGVudGl0eU1ldGFkYXRhKSA9PlxuICAgICAgICAgICAgICAgIGVudGl0eU1ldGFkYXRhLnJlZ2lzdGVyQ29sdW1uKGNvbHVtbiksXG4gICAgICAgICAgICApXG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBhIHNwZWNpYWwgb2JqZWN0IC0gYWxsIGNvbHVtbnMgYW5kIHJlbGF0aW9ucyBvZiB0aGUgb2JqZWN0IChwbHVzIGNvbHVtbnMgYW5kIHJlbGF0aW9ucyBmcm9tIGVtYmVkcylcbiAgICAgKiBpbiBhIHNwZWNpYWwgZm9ybWF0IC0geyBwcm9wZXJ0eU5hbWU6IHByb3BlcnR5TmFtZSB9LlxuICAgICAqXG4gICAgICogZXhhbXBsZTogUG9zdHsgaWQ6IG51bWJlciwgbmFtZTogc3RyaW5nLCBjb3VudGVyRW1iZWQ6IHsgY291bnQ6IG51bWJlciB9LCBjYXRlZ29yeTogQ2F0ZWdvcnkgfS5cbiAgICAgKiBUaGlzIG1ldGhvZCB3aWxsIGNyZWF0ZSBmb2xsb3dpbmcgb2JqZWN0OlxuICAgICAqIHsgaWQ6IFwiaWRcIiwgY291bnRlckVtYmVkOiB7IGNvdW50OiBcImNvdW50ZXJFbWJlZC5jb3VudFwiIH0sIGNhdGVnb3J5OiBcImNhdGVnb3J5XCIgfVxuICAgICAqL1xuICAgIGNyZWF0ZVByb3BlcnRpZXNNYXAoKTogeyBbbmFtZTogc3RyaW5nXTogc3RyaW5nIHwgYW55IH0ge1xuICAgICAgICBjb25zdCBtYXA6IHsgW25hbWU6IHN0cmluZ106IHN0cmluZyB8IGFueSB9ID0ge31cbiAgICAgICAgdGhpcy5jb2x1bW5zLmZvckVhY2goKGNvbHVtbikgPT5cbiAgICAgICAgICAgIE9ybVV0aWxzLm1lcmdlRGVlcChtYXAsIGNvbHVtbi5jcmVhdGVWYWx1ZU1hcChjb2x1bW4ucHJvcGVydHlQYXRoKSksXG4gICAgICAgIClcbiAgICAgICAgdGhpcy5yZWxhdGlvbnMuZm9yRWFjaCgocmVsYXRpb24pID0+XG4gICAgICAgICAgICBPcm1VdGlscy5tZXJnZURlZXAoXG4gICAgICAgICAgICAgICAgbWFwLFxuICAgICAgICAgICAgICAgIHJlbGF0aW9uLmNyZWF0ZVZhbHVlTWFwKHJlbGF0aW9uLnByb3BlcnR5UGF0aCksXG4gICAgICAgICAgICApLFxuICAgICAgICApXG4gICAgICAgIHJldHVybiBtYXBcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDaGVja3MgaWYgZW50aXR5IGhhcyBhbnkgY29sdW1uIHdoaWNoIHJlbHkgb24gcmV0dXJuaW5nIGRhdGEsXG4gICAgICogZS5nLiBjb2x1bW5zIHdpdGggYXV0byBnZW5lcmF0ZWQgdmFsdWUsIERFRkFVTFQgdmFsdWVzIGNvbnNpZGVyZWQgYXMgZGVwZW5kYW50IG9mIHJldHVybmluZyBkYXRhLlxuICAgICAqIEZvciBleGFtcGxlLCBpZiB3ZSBuZWVkIHRvIGhhdmUgUkVUVVJOSU5HIGFmdGVyIElOU0VSVCAob3Igd2UgbmVlZCByZXR1cm5lZCBpZCBmb3IgREJzIG5vdCBzdXBwb3J0aW5nIFJFVFVSTklORyksXG4gICAgICogaXQgbWVhbnMgd2UgY2Fubm90IGV4ZWN1dGUgYnVsayBpbnNlcnRzIGluIHNvbWUgY2FzZXMuXG4gICAgICovXG4gICAgZ2V0SW5zZXJ0aW9uUmV0dXJuaW5nQ29sdW1ucygpOiBDb2x1bW5NZXRhZGF0YVtdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29sdW1ucy5maWx0ZXIoKGNvbHVtbikgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIChcbiAgICAgICAgICAgICAgICBjb2x1bW4uZGVmYXVsdCAhPT0gdW5kZWZpbmVkIHx8XG4gICAgICAgICAgICAgICAgY29sdW1uLmlzR2VuZXJhdGVkIHx8XG4gICAgICAgICAgICAgICAgY29sdW1uLmlzQ3JlYXRlRGF0ZSB8fFxuICAgICAgICAgICAgICAgIGNvbHVtbi5pc1VwZGF0ZURhdGUgfHxcbiAgICAgICAgICAgICAgICBjb2x1bW4uaXNEZWxldGVEYXRlIHx8XG4gICAgICAgICAgICAgICAgY29sdW1uLmlzVmVyc2lvblxuICAgICAgICAgICAgKVxuICAgICAgICB9KVxuICAgIH1cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRhb24tdHlwZW9ybSBsaWIvdHlwZW9ybS9tZXRhZGF0YS9FbnRpdHlNZXRhZGF0YS50cyJdfQ==
|