Skip to content

Commit e2bc716

Browse files
committed
fix: fix readonly issues
1 parent 047e63d commit e2bc716

5 files changed

Lines changed: 36 additions & 7 deletions

File tree

src/lib/components/ReadOnly/DisplayFieldSnippets.svelte

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,15 @@
7575
search: 'Suche'
7676
};
7777
78+
const spatialRepresentationTypeMap: Record<string, string> = {
79+
vector: 'Vektor',
80+
grid: 'Raster',
81+
textTable: 'Text/Tabelle',
82+
tin: 'TIN',
83+
stereoModel: 'Stereomodell',
84+
video: 'Video'
85+
};
86+
7887
const getAutoKeywords = async () => {
7988
const metadata = getFormContext()?.formState?.metadata;
8089
const metadataId = metadata?.metadataId;
@@ -192,6 +201,14 @@
192201
{/if}
193202
{/snippet}
194203

204+
{#snippet spatialRepresentationTypes(value: string[])}
205+
{#if !value?.length}
206+
{DEFAULT_NULL_STRING}
207+
{:else}
208+
{value.map((type) => spatialRepresentationTypeMap[type] || type).join(', ')}
209+
{/if}
210+
{/snippet}
211+
195212
{#snippet isoMetadataPreview(value: string)}
196213
{#await replaceVariable(value)}
197214
{t('general.loading')}
@@ -742,6 +759,8 @@
742759
{@render isoMetadataQualityReportCheck(value as string)}
743760
{:else if key === 'isoMetadata.resolutions'}
744761
{@render isoMetadataResolutions(value as string)}
762+
{:else if key === 'isoMetadata.spatialRepresentationTypes'}
763+
{@render spatialRepresentationTypes(value as string[])}
745764
{:else if key === 'isoMetadata.services'}
746765
{@render isoMetadataServices(value as Service[], metadata)}
747766
{:else if key === 'isoMetadata.technicalDescription'}

src/lib/components/ReadOnly/MetadataDisplay.svelte

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@
1212
const highValueDataset = $derived(
1313
MetadataService.getValue('isoMetadata.highValueDataset', metadata)
1414
);
15+
const privacy = $derived(MetadataService.getValue('isoMetadata.privacy', metadata));
16+
const termsOfUseId = $derived(MetadataService.getValue('isoMetadata.termsOfUseId', metadata));
1517
1618
const t = $derived(page.data.t);
1719
</script>
@@ -51,10 +53,12 @@
5153
{/if}
5254
<DisplayField key="isoMetadata.privacy" label={t('04_PrivacyField.label')} />
5355
<DisplayField key="isoMetadata.termsOfUseId" label={t('25_TermsOfUseField.label')} />
54-
<DisplayField
55-
key="isoMetadata.termsOfUseSource"
56-
label={t('26_TermsOfUseSourceField.label')}
57-
/>
56+
{#if privacy === 'NONE' && termsOfUseId && termsOfUseId !== 1}
57+
<DisplayField
58+
key="isoMetadata.termsOfUseSource"
59+
label={t('26_TermsOfUseSourceField.label')}
60+
/>
61+
{/if}
5862
<DisplayField
5963
key="isoMetadata.highValueDataset"
6064
label={t('06_HighValueDatasetField.label')}
@@ -86,6 +90,10 @@
8690
<DisplayField key="isoMetadata.extent" label={t('18_ExtentField.label')} />
8791
<DisplayField key="isoMetadata.resolutions" label={t('28_ResolutionField.label')} />
8892
<DisplayField key="isoMetadata.scale" label={t('28_ResolutionField.label_scale')} />
93+
<DisplayField
94+
key="isoMetadata.spatialRepresentationTypes"
95+
label={t('39_SpatialRepresentationField.label')}
96+
/>
8997
</section>
9098
<section id="additional">
9199
<h2>{t('metadatadisplay.sectionAdditional')}</h2>

tests/fixtures/metadata1.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -156,7 +156,8 @@ export default {
156156
],
157157
valid: false,
158158
topicCategory: ['location'],
159-
termsOfUseId: 1,
159+
termsOfUseId: 2,
160+
termsOfUseSource: 'Test Terms',
160161
spatialRepresentationTypes: ['vector']
161162
},
162163
technicalMetadata: {

tests/fixtures/metadata2.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,8 @@ export default {
7575
],
7676
valid: false,
7777
topicCategory: ['location'],
78-
termsOfUseId: 1,
78+
termsOfUseId: 2,
79+
termsOfUseSource: 'Test Terms',
7980
spatialRepresentationTypes: ['vector']
8081
},
8182
technicalMetadata: {

tests/integration/ReadOnly.integration.spec.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -746,7 +746,7 @@ describe('MetadataDisplay - Integration test', () => {
746746
testFieldVisibility(
747747
role,
748748
'26_TermsOfUseSourceField.label',
749-
'displayfield.noValue',
749+
'Test Terms',
750750
'#classification',
751751
true
752752
);

0 commit comments

Comments
 (0)