From 371ac841d2136ab8c2c623d60e13bf64e1704d6a Mon Sep 17 00:00:00 2001 From: Jack Reed <phillipjreed@gmail.com> Date: Wed, 1 Jul 2020 10:32:43 -0600 Subject: [PATCH] Support multivalued metadata fields fixes #2591 --- __tests__/src/components/LabelValueMetadata.test.js | 8 ++++---- __tests__/src/selectors/manifests.test.js | 4 ++-- src/components/LabelValueMetadata.js | 2 +- src/state/selectors/manifests.js | 2 +- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/__tests__/src/components/LabelValueMetadata.test.js b/__tests__/src/components/LabelValueMetadata.test.js index 0e80dbde5..23c279ff1 100644 --- a/__tests__/src/components/LabelValueMetadata.test.js +++ b/__tests__/src/components/LabelValueMetadata.test.js @@ -13,11 +13,11 @@ describe('LabelValueMetadata', () => { labelValuePair = [ { label: 'Label 1', - value: 'Value 1', + values: ['Value 1'], }, { label: 'Label 2', - value: 'Value 2', + values: ['Value 2'], }, ]; wrapper = shallow( @@ -67,11 +67,11 @@ describe('LabelValueMetadata', () => { beforeEach(() => { labelValuePair = [ { - value: 'Value 1', + values: ['Value 1'], }, { label: 'Label 2', - value: 'Value 2', + values: ['Value 2'], }, ]; wrapper = shallow( diff --git a/__tests__/src/selectors/manifests.test.js b/__tests__/src/selectors/manifests.test.js index a459e3c8a..17d9db6c0 100644 --- a/__tests__/src/selectors/manifests.test.js +++ b/__tests__/src/selectors/manifests.test.js @@ -247,7 +247,7 @@ describe('getDestructuredMetadata', () => { const received = getDestructuredMetadata(iiifResource); const expected = [{ label: 'date', - value: 'some date', + values: ['some date'], }]; expect(received).toEqual(expected); @@ -267,7 +267,7 @@ describe('getManifestMetadata', () => { const received = getManifestMetadata(state, { manifestId: 'x' }); const expected = [{ label: 'date', - value: 'some date', + values: ['some date'], }]; expect(received).toEqual(expected); diff --git a/src/components/LabelValueMetadata.js b/src/components/LabelValueMetadata.js index d89e50352..a003b9a40 100644 --- a/src/components/LabelValueMetadata.js +++ b/src/components/LabelValueMetadata.js @@ -29,7 +29,7 @@ export class LabelValueMetadata extends Component { {labelValuePairs.reduce((acc, labelValuePair, i) => acc.concat([ <Typography component="dt" key={`label-${i}`} variant="subtitle2">{labelValuePair.label || defaultLabel}</Typography>, <Typography style={{ marginBottom: '.5em', marginLeft: '0px' }} component="dd" key={`value-${i}`} variant="body1"> - <SanitizedHtml htmlString={labelValuePair.value} ruleSet="iiif" /> + <SanitizedHtml htmlString={labelValuePair.values.join(', ')} ruleSet="iiif" /> </Typography>, ]), [])} </dl> diff --git a/src/state/selectors/manifests.js b/src/state/selectors/manifests.js index 8b8d02bce..e54d14077 100644 --- a/src/state/selectors/manifests.js +++ b/src/state/selectors/manifests.js @@ -288,7 +288,7 @@ export function getDestructuredMetadata(iiifResource) { return (iiifResource && iiifResource.getMetadata().map(labelValuePair => ({ label: labelValuePair.getLabel(), - value: labelValuePair.getValue(), + values: labelValuePair.getValues(), })) ); } -- GitLab