From b5ab5845a9976c0424321d312043fe3e9ca2be77 Mon Sep 17 00:00:00 2001 From: lotte Date: Thu, 4 Apr 2019 09:38:39 +0200 Subject: [PATCH] Fixed bug where the metadata field type got lost when first loading the edit item metadata page --- src/app/core/registry/registry.service.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/app/core/registry/registry.service.ts b/src/app/core/registry/registry.service.ts index 8fa1ca893a..137b4c3a87 100644 --- a/src/app/core/registry/registry.service.ts +++ b/src/app/core/registry/registry.service.ts @@ -196,7 +196,8 @@ export class RegistryService { const metadatafieldsObs: Observable = rmrObs.pipe( map((rmr: RegistryMetadatafieldsResponse) => rmr.metadatafields), - map((metadataFields: MetadataField[]) => metadataFields) + /* Make sure to explicitly cast this into a MetadataField object, on first page loads this object comes from the object cache created by the server and its prototype is unknown */ + map((metadataFields: MetadataField[]) => metadataFields.map((metadataField: MetadataField) => Object.assign(new MetadataField(), metadataField))) ); const pageInfoObs: Observable = requestEntryObs.pipe(