diff --git a/content/pages/edit.json b/content/pages/edit.json index ac8e21e0d..895b0f68e 100644 --- a/content/pages/edit.json +++ b/content/pages/edit.json @@ -44,6 +44,13 @@ "options": ["Forever", "1 day", "1 week", "1 month", "1 year"], "sortOptions": false, "required": true + }, + { + "name": "author", + "label": "New Author", + "placeholder": "e.g. Mrs McJellyfish", + "help": "Give proper attribution for your data set.", + "required": false } ] } diff --git a/src/@types/MetaData.d.ts b/src/@types/MetaData.d.ts index 2481338b5..1eeddc054 100644 --- a/src/@types/MetaData.d.ts +++ b/src/@types/MetaData.d.ts @@ -64,6 +64,7 @@ export interface MetadataEditForm { timeout: string price?: number links?: string | EditableMetadataLinks[] + author?: string } export interface ServiceMetadataMarket extends ServiceMetadata { diff --git a/src/components/organisms/AssetActions/Edit/index.tsx b/src/components/organisms/AssetActions/Edit/index.tsx index cea8e903b..62ee2b4a4 100644 --- a/src/components/organisms/AssetActions/Edit/index.tsx +++ b/src/components/organisms/AssetActions/Edit/index.tsx @@ -105,7 +105,8 @@ export default function Edit({ const ddoEditedMetdata = await ocean.assets.editMetadata(ddo, { title: values.name, description: values.description, - links: typeof values.links !== 'string' ? values.links : [] + links: typeof values.links !== 'string' ? values.links : [], + author: values.author === '' ? ' ' : values.author }) price.type === 'exchange' && diff --git a/src/models/FormEditMetadata.ts b/src/models/FormEditMetadata.ts index 0df3831d7..d16ca3a8d 100644 --- a/src/models/FormEditMetadata.ts +++ b/src/models/FormEditMetadata.ts @@ -10,7 +10,8 @@ export const validationSchema = Yup.object().shape({ description: Yup.string().required('Required').min(10), price: Yup.number().required('Required'), links: Yup.array().nullable(), - timeout: Yup.string().required('Required') + timeout: Yup.string().required('Required'), + author: Yup.string().nullable() }) export function getInitialValues( @@ -23,6 +24,7 @@ export function getInitialValues( description: metadata.additionalInformation.description, price, links: metadata.additionalInformation.links, - timeout: secondsToString(timeout) + timeout: secondsToString(timeout), + author: metadata.main.author } }