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