mirror of
https://github.com/datahub-project/datahub.git
synced 2025-07-27 19:39:52 +00:00
41 lines
1.4 KiB
TypeScript
41 lines
1.4 KiB
TypeScript
![]() |
import { Dataset, DatasetUpdateInput } from '../../types.generated';
|
||
|
import { findDatasetByURN } from '../fixtures/searchResult/datasetSearchResult';
|
||
|
import { updateEntityLink, updateEntityOwners, updateEntityTag } from '../mutationHelper';
|
||
|
|
||
|
type UpdateDataset = {
|
||
|
data: { updateDataset: Dataset };
|
||
|
};
|
||
|
|
||
|
export const updateDatasetResolver = {
|
||
|
updateDataset({ variables: { input } }): UpdateDataset {
|
||
|
const { urn, ownership, globalTags, institutionalMemory }: DatasetUpdateInput = input;
|
||
|
const dataset = findDatasetByURN(urn);
|
||
|
|
||
|
if (ownership) {
|
||
|
updateEntityOwners({ entity: dataset, owners: ownership.owners });
|
||
|
} else if (globalTags) {
|
||
|
updateEntityTag({ entity: dataset, globalTags });
|
||
|
} else if (institutionalMemory) {
|
||
|
updateEntityLink({ entity: dataset, institutionalMemory });
|
||
|
}
|
||
|
|
||
|
return {
|
||
|
data: {
|
||
|
updateDataset: Object.assign(dataset, {
|
||
|
schema: null,
|
||
|
editableSchemaMetadata: null,
|
||
|
deprecation: null,
|
||
|
downstreamLineage: {
|
||
|
entities: [],
|
||
|
__typename: 'DownstreamEntityRelationships',
|
||
|
},
|
||
|
upstreamLineage: {
|
||
|
entities: [],
|
||
|
__typename: 'UpstreamEntityRelationships',
|
||
|
},
|
||
|
}),
|
||
|
},
|
||
|
};
|
||
|
},
|
||
|
};
|