UNPKG

19.9 kBSource Map (JSON)View Raw
1{"version":3,"sources":["../../src/metadata-args/MetadataArgsStorage.ts"],"names":[],"mappings":"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","file":"MetadataArgsStorage.js","sourcesContent":["import {RelationMetadataArgs} from \"./RelationMetadataArgs\";\nimport {ColumnMetadataArgs} from \"./ColumnMetadataArgs\";\nimport {RelationCountMetadataArgs} from \"./RelationCountMetadataArgs\";\nimport {IndexMetadataArgs} from \"./IndexMetadataArgs\";\nimport {EntityListenerMetadataArgs} from \"./EntityListenerMetadataArgs\";\nimport {TableMetadataArgs} from \"./TableMetadataArgs\";\nimport {NamingStrategyMetadataArgs} from \"./NamingStrategyMetadataArgs\";\nimport {JoinTableMetadataArgs} from \"./JoinTableMetadataArgs\";\nimport {JoinColumnMetadataArgs} from \"./JoinColumnMetadataArgs\";\nimport {EmbeddedMetadataArgs} from \"./EmbeddedMetadataArgs\";\nimport {EntitySubscriberMetadataArgs} from \"./EntitySubscriberMetadataArgs\";\nimport {RelationIdMetadataArgs} from \"./RelationIdMetadataArgs\";\nimport {InheritanceMetadataArgs} from \"./InheritanceMetadataArgs\";\nimport {DiscriminatorValueMetadataArgs} from \"./DiscriminatorValueMetadataArgs\";\nimport {EntityRepositoryMetadataArgs} from \"./EntityRepositoryMetadataArgs\";\nimport {TransactionEntityMetadataArgs} from \"./TransactionEntityMetadataArgs\";\nimport {TransactionRepositoryMetadataArgs} from \"./TransactionRepositoryMetadataArgs\";\nimport {MetadataUtils} from \"../metadata-builder/MetadataUtils\";\nimport {GeneratedMetadataArgs} from \"./GeneratedMetadataArgs\";\nimport {TreeMetadataArgs} from \"./TreeMetadataArgs\";\nimport {UniqueMetadataArgs} from \"./UniqueMetadataArgs\";\nimport {CheckMetadataArgs} from \"./CheckMetadataArgs\";\nimport {ExclusionMetadataArgs} from \"./ExclusionMetadataArgs\";\n\n/**\n * Storage all metadatas args of all available types: tables, columns, subscribers, relations, etc.\n * Each metadata args represents some specifications of what it represents.\n * MetadataArgs used to create a real Metadata objects.\n */\nexport class MetadataArgsStorage {\n\n // -------------------------------------------------------------------------\n // Properties\n // -------------------------------------------------------------------------\n\n readonly tables: TableMetadataArgs[] = [];\n readonly trees: TreeMetadataArgs[] = [];\n readonly entityRepositories: EntityRepositoryMetadataArgs[] = [];\n readonly transactionEntityManagers: TransactionEntityMetadataArgs[] = [];\n readonly transactionRepositories: TransactionRepositoryMetadataArgs[] = [];\n readonly namingStrategies: NamingStrategyMetadataArgs[] = [];\n readonly entitySubscribers: EntitySubscriberMetadataArgs[] = [];\n readonly indices: IndexMetadataArgs[] = [];\n readonly uniques: UniqueMetadataArgs[] = [];\n readonly checks: CheckMetadataArgs[] = [];\n readonly exclusions: ExclusionMetadataArgs[] = [];\n readonly columns: ColumnMetadataArgs[] = [];\n readonly generations: GeneratedMetadataArgs[] = [];\n readonly relations: RelationMetadataArgs[] = [];\n readonly joinColumns: JoinColumnMetadataArgs[] = [];\n readonly joinTables: JoinTableMetadataArgs[] = [];\n readonly entityListeners: EntityListenerMetadataArgs[] = [];\n readonly relationCounts: RelationCountMetadataArgs[] = [];\n readonly relationIds: RelationIdMetadataArgs[] = [];\n readonly embeddeds: EmbeddedMetadataArgs[] = [];\n readonly inheritances: InheritanceMetadataArgs[] = [];\n readonly discriminatorValues: DiscriminatorValueMetadataArgs[] = [];\n\n // -------------------------------------------------------------------------\n // Public Methods\n // -------------------------------------------------------------------------\n\n filterTables(target: Function|string): TableMetadataArgs[];\n filterTables(target: (Function|string)[]): TableMetadataArgs[];\n filterTables(target: (Function|string)|(Function|string)[]): TableMetadataArgs[] {\n return this.filterByTarget(this.tables, target);\n }\n\n filterColumns(target: Function|string): ColumnMetadataArgs[];\n filterColumns(target: (Function|string)[]): ColumnMetadataArgs[];\n filterColumns(target: (Function|string)|(Function|string)[]): ColumnMetadataArgs[] {\n return this.filterByTargetAndWithoutDuplicateProperties(this.columns, target);\n }\n\n findGenerated(target: Function|string, propertyName: string): GeneratedMetadataArgs|undefined;\n findGenerated(target: (Function|string)[], propertyName: string): GeneratedMetadataArgs|undefined;\n findGenerated(target: (Function|string)|(Function|string)[], propertyName: string): GeneratedMetadataArgs|undefined {\n return this.generations.find(generated => {\n return (target instanceof Array ? target.indexOf(generated.target) !== -1 : generated.target === target) && generated.propertyName === propertyName;\n });\n }\n\n findTree(target: (Function|string)|(Function|string)[]): TreeMetadataArgs|undefined {\n return this.trees.find(tree => {\n return (target instanceof Array ? target.indexOf(tree.target) !== -1 : tree.target === target);\n });\n }\n\n filterRelations(target: Function|string): RelationMetadataArgs[];\n filterRelations(target: (Function|string)[]): RelationMetadataArgs[];\n filterRelations(target: (Function|string)|(Function|string)[]): RelationMetadataArgs[] {\n return this.filterByTargetAndWithoutDuplicateProperties(this.relations, target);\n }\n\n filterRelationIds(target: Function|string): RelationIdMetadataArgs[];\n filterRelationIds(target: (Function|string)[]): RelationIdMetadataArgs[];\n filterRelationIds(target: (Function|string)|(Function|string)[]): RelationIdMetadataArgs[] {\n return this.filterByTargetAndWithoutDuplicateProperties(this.relationIds, target);\n }\n\n filterRelationCounts(target: Function|string): RelationCountMetadataArgs[];\n filterRelationCounts(target: (Function|string)[]): RelationCountMetadataArgs[];\n filterRelationCounts(target: (Function|string)|(Function|string)[]): RelationCountMetadataArgs[] {\n return this.filterByTargetAndWithoutDuplicateProperties(this.relationCounts, target);\n }\n\n filterIndices(target: Function|string): IndexMetadataArgs[];\n filterIndices(target: (Function|string)[]): IndexMetadataArgs[];\n filterIndices(target: (Function|string)|(Function|string)[]): IndexMetadataArgs[] {\n // todo: implement parent-entity overrides?\n return this.indices.filter(index => {\n return target instanceof Array ? target.indexOf(index.target) !== -1 : index.target === target;\n });\n }\n\n filterUniques(target: Function|string): UniqueMetadataArgs[];\n filterUniques(target: (Function|string)[]): UniqueMetadataArgs[];\n filterUniques(target: (Function|string)|(Function|string)[]): UniqueMetadataArgs[] {\n return this.uniques.filter(unique => {\n return target instanceof Array ? target.indexOf(unique.target) !== -1 : unique.target === target;\n });\n }\n\n filterChecks(target: Function|string): CheckMetadataArgs[];\n filterChecks(target: (Function|string)[]): CheckMetadataArgs[];\n filterChecks(target: (Function|string)|(Function|string)[]): CheckMetadataArgs[] {\n return this.checks.filter(check => {\n return target instanceof Array ? target.indexOf(check.target) !== -1 : check.target === target;\n });\n }\n\n filterExclusions(target: Function|string): ExclusionMetadataArgs[];\n filterExclusions(target: (Function|string)[]): ExclusionMetadataArgs[];\n filterExclusions(target: (Function|string)|(Function|string)[]): ExclusionMetadataArgs[] {\n return this.exclusions.filter(exclusion => {\n return target instanceof Array ? target.indexOf(exclusion.target) !== -1 : exclusion.target === target;\n });\n }\n\n filterListeners(target: Function|string): EntityListenerMetadataArgs[];\n filterListeners(target: (Function|string)[]): EntityListenerMetadataArgs[];\n filterListeners(target: (Function|string)|(Function|string)[]): EntityListenerMetadataArgs[] {\n return this.filterByTarget(this.entityListeners, target);\n }\n\n filterEmbeddeds(target: Function|string): EmbeddedMetadataArgs[];\n filterEmbeddeds(target: (Function|string)[]): EmbeddedMetadataArgs[];\n filterEmbeddeds(target: (Function|string)|(Function|string)[]): EmbeddedMetadataArgs[] {\n return this.filterByTargetAndWithoutDuplicateEmbeddedProperties(this.embeddeds, target);\n }\n\n findJoinTable(target: Function|string, propertyName: string): JoinTableMetadataArgs|undefined {\n return this.joinTables.find(joinTable => {\n return joinTable.target === target && joinTable.propertyName === propertyName;\n });\n }\n\n filterJoinColumns(target: Function|string, propertyName: string): JoinColumnMetadataArgs[] {\n // todo: implement parent-entity overrides?\n return this.joinColumns.filter(joinColumn => {\n return joinColumn.target === target && joinColumn.propertyName === propertyName;\n });\n }\n\n filterSubscribers(target: Function|string): EntitySubscriberMetadataArgs[];\n filterSubscribers(target: (Function|string)[]): EntitySubscriberMetadataArgs[];\n filterSubscribers(target: (Function|string)|(Function|string)[]): EntitySubscriberMetadataArgs[] {\n return this.filterByTarget(this.entitySubscribers, target);\n }\n\n filterNamingStrategies(target: Function|string): NamingStrategyMetadataArgs[];\n filterNamingStrategies(target: (Function|string)[]): NamingStrategyMetadataArgs[];\n filterNamingStrategies(target: (Function|string)|(Function|string)[]): NamingStrategyMetadataArgs[] {\n return this.filterByTarget(this.namingStrategies, target);\n }\n\n filterTransactionEntityManagers(target: Function|string, propertyName: string): TransactionEntityMetadataArgs[] {\n return this.transactionEntityManagers.filter(transactionEm => {\n return (target instanceof Array ? target.indexOf(transactionEm.target) !== -1 : transactionEm.target === target) && transactionEm.methodName === propertyName;\n });\n }\n\n filterTransactionRepository(target: Function|string, propertyName: string): TransactionRepositoryMetadataArgs[] {\n return this.transactionRepositories.filter(transactionEm => {\n return (target instanceof Array ? target.indexOf(transactionEm.target) !== -1 : transactionEm.target === target) && transactionEm.methodName === propertyName;\n });\n }\n\n filterSingleTableChildren(target: Function|string): TableMetadataArgs[] {\n return this.tables.filter(table => {\n return table.target instanceof Function\n && target instanceof Function\n && MetadataUtils.isInherited(table.target, target)\n && table.type === \"entity-child\";\n });\n }\n\n findInheritanceType(target: Function|string): InheritanceMetadataArgs|undefined {\n return this.inheritances.find(inheritance => inheritance.target === target);\n }\n\n findDiscriminatorValue(target: Function|string): DiscriminatorValueMetadataArgs|undefined {\n return this.discriminatorValues.find(discriminatorValue => discriminatorValue.target === target);\n }\n\n // -------------------------------------------------------------------------\n // Protected Methods\n // -------------------------------------------------------------------------\n\n /**\n * Filters given array by a given target or targets.\n */\n protected filterByTarget<T extends { target: Function|string }>(array: T[], target: (Function|string)|(Function|string)[]): T[] {\n return array.filter(table => {\n return target instanceof Array ? target.indexOf(table.target) !== -1 : table.target === target;\n });\n }\n\n /**\n * Filters given array by a given target or targets and prevents duplicate property names.\n */\n protected filterByTargetAndWithoutDuplicateProperties<T extends { target: Function|string, propertyName: string }>(array: T[], target: (Function|string)|(Function|string)[]): T[] {\n const newArray: T[] = [];\n array.forEach(item => {\n const sameTarget = target instanceof Array ? target.indexOf(item.target) !== -1 : item.target === target;\n if (sameTarget) {\n if (!newArray.find(newItem => newItem.propertyName === item.propertyName))\n newArray.push(item);\n }\n });\n return newArray;\n }\n\n /**\n * Filters given array by a given target or targets and prevents duplicate embedded property names.\n */\n protected filterByTargetAndWithoutDuplicateEmbeddedProperties<T extends EmbeddedMetadataArgs>(array: T[], target: (Function|string)|(Function|string)[]): T[] {\n const newArray: T[] = [];\n array.forEach(item => {\n const sameTarget = target instanceof Array ? target.indexOf(item.target) !== -1 : item.target === target;\n if (sameTarget) {\n const isDuplicateEmbeddedProperty = newArray.find((newItem: EmbeddedMetadataArgs): boolean =>\n newItem.prefix === item.prefix && newItem.propertyName === item.propertyName\n );\n if (!isDuplicateEmbeddedProperty)\n newArray.push(item);\n }\n });\n return newArray;\n }\n\n}\n"],"sourceRoot":".."}
\No newline at end of file