Vertaal 56 Engelse foutteksten in de Nederlandse interface

Deze verschenen zodra de backend geen eigen melding meegaf: de terugvalteksten
van formatError en de controles vóór een handeling. Een operator kreeg dan
"Failed to load exports" of "Select a project first" te zien, midden in een
verder Nederlandse werkbank.

Dit is geen meertaligheidsvraagstuk maar inconsistentie binnen de taal die het
product al spreekt. De teksten volgen nu de bestaande toon: benoemen wat er
misging of wat er eerst nodig is, in actieve vorm, zonder excuus.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
Jens
2026-08-23 15:10:07 +02:00
co-authored by Claude Opus 5
parent 7bf7caf56b
commit 596bbb0e8c
9 changed files with 56 additions and 56 deletions
@@ -38,7 +38,7 @@ export function useChangeDetectionWorkflow({
const targetDatasetId = const targetDatasetId =
changeTargetDatasetId || availableVectorDatasets.find((dataset) => dataset.id !== sourceDatasetId)?.id changeTargetDatasetId || availableVectorDatasets.find((dataset) => dataset.id !== sourceDatasetId)?.id
if (!sourceDatasetId || !targetDatasetId) { if (!sourceDatasetId || !targetDatasetId) {
setChangeDetectionError('Select two vector datasets') setChangeDetectionError('Kies twee vectorbronnen')
return return
} }
if (sourceDatasetId === targetDatasetId) { if (sourceDatasetId === targetDatasetId) {
+7 -7
View File
@@ -230,15 +230,15 @@ export function useDatasetWorkflow({
const uploadDataset = async (event: FormEvent) => { const uploadDataset = async (event: FormEvent) => {
event.preventDefault() event.preventDefault()
if (!selectedProjectId || !datasetForm.file) { if (!selectedProjectId || !datasetForm.file) {
setErrorMessage('Select project and upload a file') setErrorMessage('Kies een werkruimte en voeg een bestand toe')
return return
} }
if (!datasetForm.datasetRole) { if (!datasetForm.datasetRole) {
setErrorMessage('Select dataset role') setErrorMessage('Kies de rol van deze bron')
return return
} }
if (datasetForm.datasetRole === 'reference' && datasetForm.datasetType !== 'vector' && datasetForm.datasetType !== 'geojson') { if (datasetForm.datasetRole === 'reference' && datasetForm.datasetType !== 'vector' && datasetForm.datasetType !== 'geojson') {
setErrorMessage('Reference role requires vector dataset upload') setErrorMessage('Een referentierol vraagt om een vectorbestand')
return return
} }
if (datasetForm.sourceMetadataJson) { if (datasetForm.sourceMetadataJson) {
@@ -280,7 +280,7 @@ export function useDatasetWorkflow({
setDatasetForm((previous) => ({ ...previous, file: null })) setDatasetForm((previous) => ({ ...previous, file: null }))
await loadProjectData(selectedProjectId) await loadProjectData(selectedProjectId)
} catch (error) { } catch (error) {
setErrorMessage(error instanceof Error ? error.message : 'Failed to upload dataset') setErrorMessage(error instanceof Error ? error.message : 'De bron kon niet worden ingeladen')
} }
} }
@@ -300,7 +300,7 @@ export function useDatasetWorkflow({
return return
} }
if (!selectedClipAreaId) { if (!selectedClipAreaId) {
setDatasetDetailError('Select an area for clipping') setDatasetDetailError('Kies eerst een gebied om op bij te snijden')
return return
} }
setDatasetDetailError(null) setDatasetDetailError(null)
@@ -337,7 +337,7 @@ export function useDatasetWorkflow({
} }
const targetId = selectedIntersectTargetId || availableVectorTargets[0]?.id const targetId = selectedIntersectTargetId || availableVectorTargets[0]?.id
if (!targetId) { if (!targetId) {
setDatasetDetailError('Select an intersect target dataset') setDatasetDetailError('Kies eerst een bron om mee te doorsnijden')
return return
} }
setDatasetDetailError(null) setDatasetDetailError(null)
@@ -421,7 +421,7 @@ export function useDatasetWorkflow({
return return
} }
if (!selectedClipAreaId) { if (!selectedClipAreaId) {
setDatasetDetailError('Select an area for raster clip') setDatasetDetailError('Kies eerst een gebied om het raster op bij te snijden')
return return
} }
try { try {
+15 -15
View File
@@ -146,7 +146,7 @@ export function useDetectionWorkflow({
setSelectedDetectionModelId(configuredModel?.model_id ?? response.models[0].model_id) setSelectedDetectionModelId(configuredModel?.model_id ?? response.models[0].model_id)
} }
} catch (error) { } catch (error) {
setDetectionModelError(formatError(error, 'Failed to load detection models')) setDetectionModelError(formatError(error, 'De detectiemodellen konden niet worden geladen'))
} }
try { try {
const assetResponse = await detectionApi.listModelAssets() const assetResponse = await detectionApi.listModelAssets()
@@ -160,11 +160,11 @@ export function useDetectionWorkflow({
setYoloPreflight(preflight) setYoloPreflight(preflight)
setYoloPreflightError(null) setYoloPreflightError(null)
} catch (error) { } catch (error) {
setYoloPreflightError(formatError(error, 'Failed to load YOLO preflight status')) setYoloPreflightError(formatError(error, 'De modelcontrole kon niet worden opgehaald'))
} }
} catch (error) { } catch (error) {
setModelAssets([]) setModelAssets([])
setModelAssetError(formatError(error, 'Failed to load local model assets')) setModelAssetError(formatError(error, 'De lokale modelbestanden konden niet worden geladen'))
} finally { } finally {
setLoadingDetectionModels(false) setLoadingDetectionModels(false)
} }
@@ -180,7 +180,7 @@ export function useDetectionWorkflow({
}) })
setYoloPreflight(response) setYoloPreflight(response)
} catch (error) { } catch (error) {
setYoloPreflightError(formatError(error, 'Failed to load YOLO preflight status')) setYoloPreflightError(formatError(error, 'De modelcontrole kon niet worden opgehaald'))
} finally { } finally {
setLoadingYoloPreflight(false) setLoadingYoloPreflight(false)
} }
@@ -198,7 +198,7 @@ export function useDetectionWorkflow({
setSelectedDetectionRunId(response.items[0].id) setSelectedDetectionRunId(response.items[0].id)
} }
} catch (error) { } catch (error) {
setDetectionRunError(formatError(error, 'Failed to load detection runs')) setDetectionRunError(formatError(error, 'De detectieruns konden niet worden geladen'))
} }
} }
@@ -229,7 +229,7 @@ export function useDetectionWorkflow({
setDetectionTruncated(Boolean(detectionsResponse.truncated)) setDetectionTruncated(Boolean(detectionsResponse.truncated))
setDetectionGeoJson(geoJsonResponse) setDetectionGeoJson(geoJsonResponse)
} catch (error) { } catch (error) {
setDetectionRunError(formatError(error, 'Failed to load detection results')) setDetectionRunError(formatError(error, 'De detectieresultaten konden niet worden geladen'))
} finally { } finally {
setLoadingDetectionResults(false) setLoadingDetectionResults(false)
} }
@@ -262,12 +262,12 @@ export function useDetectionWorkflow({
const runDetection = async () => { const runDetection = async () => {
if (!selectedProjectId) { if (!selectedProjectId) {
setDetectionRunError('Select a project first') setDetectionRunError('Kies eerst een werkruimte')
return return
} }
const datasetId = selectedDetectionDatasetId const datasetId = selectedDetectionDatasetId
if (!datasetId) { if (!datasetId) {
setDetectionRunError('Select a raster dataset') setDetectionRunError('Kies eerst een rasterbron')
return return
} }
setDetectionRunError(null) setDetectionRunError(null)
@@ -414,11 +414,11 @@ export function useDetectionWorkflow({
iouThresholdOverride?: number, iouThresholdOverride?: number,
): Promise<DetectionQaResult | null> => { ): Promise<DetectionQaResult | null> => {
if (!analysisRunId) { if (!analysisRunId) {
setDetectionQaError('Select a detection run') setDetectionQaError('Kies eerst een detectierun')
return null return null
} }
if (!referenceDatasetId) { if (!referenceDatasetId) {
setDetectionQaError('Select a reference dataset') setDetectionQaError('Kies eerst een referentiebron')
return null return null
} }
setSelectedDetectionRunId(analysisRunId) setSelectedDetectionRunId(analysisRunId)
@@ -449,21 +449,21 @@ export function useDetectionWorkflow({
const runDetectionCalibration = async () => { const runDetectionCalibration = async () => {
if (!selectedProjectId) { if (!selectedProjectId) {
setDetectionCalibrationError('Select a project before calibration') setDetectionCalibrationError('Kies eerst een werkruimte om te kalibreren')
return return
} }
const datasetId = selectedDetectionDatasetId const datasetId = selectedDetectionDatasetId
if (!datasetId) { if (!datasetId) {
setDetectionCalibrationError('Select a raster dataset before calibration') setDetectionCalibrationError('Kies eerst een rasterbron om te kalibreren')
return return
} }
if (!detectionReferenceDatasetId) { if (!detectionReferenceDatasetId) {
setDetectionCalibrationError('Select a reference dataset before calibration') setDetectionCalibrationError('Kies eerst een referentiebron om te kalibreren')
return return
} }
const selectedModel = detectionModels.find((model) => model.model_id === selectedDetectionModelId) const selectedModel = detectionModels.find((model) => model.model_id === selectedDetectionModelId)
if (!selectedModel?.configured || selectedDetectionModelId === 'manual-fixture-detector') { if (!selectedModel?.configured || selectedDetectionModelId === 'manual-fixture-detector') {
setDetectionCalibrationError('Select a configured non-fixture detection model before calibration') setDetectionCalibrationError('Kies eerst een geconfigureerd detectiemodel; testgegevens kunnen niet gekalibreerd worden')
return return
} }
if (selectedDetectionModelId === 'yolo-configured' && !detectionTileManifestPath.trim()) { if (selectedDetectionModelId === 'yolo-configured' && !detectionTileManifestPath.trim()) {
@@ -471,7 +471,7 @@ export function useDetectionWorkflow({
return return
} }
if (selectedDetectionModelId === 'yolo-configured' && modelAssets.length > 0 && !selectedModelAssetId) { if (selectedDetectionModelId === 'yolo-configured' && modelAssets.length > 0 && !selectedModelAssetId) {
setDetectionCalibrationError('Select a local model asset before calibration') setDetectionCalibrationError('Kies eerst een lokaal modelbestand om te kalibreren')
return return
} }
const thresholds = parseCalibrationThresholds(calibrationThresholdText) const thresholds = parseCalibrationThresholds(calibrationThresholdText)
+14 -14
View File
@@ -45,7 +45,7 @@ export function useExportWorkflow({
const response = await exportsApi.listProjectExports(projectId) const response = await exportsApi.listProjectExports(projectId)
setExports(response.items) setExports(response.items)
} catch (error) { } catch (error) {
setExportError(formatError(error, 'Failed to load exports')) setExportError(formatError(error, 'De downloads konden niet worden geladen'))
} finally { } finally {
setLoadingExports(false) setLoadingExports(false)
} }
@@ -53,7 +53,7 @@ export function useExportWorkflow({
const exportSelectedDatasetGeoJson = async () => { const exportSelectedDatasetGeoJson = async () => {
if (!selectedDataset || !isVectorDatasetType(selectedDataset.dataset_type)) { if (!selectedDataset || !isVectorDatasetType(selectedDataset.dataset_type)) {
setExportError('Select a vector dataset before exporting GeoJSON.') setExportError('Kies eerst een vectorbron om als GeoJSON te bewaren.')
return return
} }
setExporting(true) setExporting(true)
@@ -67,7 +67,7 @@ export function useExportWorkflow({
setLatestExport(response) setLatestExport(response)
await loadExports(selectedDataset.project_id) await loadExports(selectedDataset.project_id)
} catch (error) { } catch (error) {
setExportError(formatError(error, 'Failed to export selected dataset')) setExportError(formatError(error, 'De gekozen bron kon niet worden geëxporteerd'))
} finally { } finally {
setExporting(false) setExporting(false)
} }
@@ -75,7 +75,7 @@ export function useExportWorkflow({
const exportSelectedDetectionRunGeoJson = async () => { const exportSelectedDetectionRunGeoJson = async () => {
if (!selectedDetectionRunId || !selectedProjectId) { if (!selectedDetectionRunId || !selectedProjectId) {
setExportError('Select a detection run before exporting GeoJSON.') setExportError('Kies eerst een detectierun om als GeoJSON te bewaren.')
return return
} }
setExporting(true) setExporting(true)
@@ -89,7 +89,7 @@ export function useExportWorkflow({
setLatestExport(response) setLatestExport(response)
await loadExports(selectedProjectId) await loadExports(selectedProjectId)
} catch (error) { } catch (error) {
setExportError(formatError(error, 'Failed to export detection run')) setExportError(formatError(error, 'De detectierun kon niet worden geëxporteerd'))
} finally { } finally {
setExporting(false) setExporting(false)
} }
@@ -97,7 +97,7 @@ export function useExportWorkflow({
const exportSelectedSegmentationRunGeoJson = async () => { const exportSelectedSegmentationRunGeoJson = async () => {
if (!selectedSegmentationRunId || !selectedProjectId) { if (!selectedSegmentationRunId || !selectedProjectId) {
setExportError('Select a segmentation run before exporting GeoJSON.') setExportError('Kies eerst een segmentatierun om als GeoJSON te bewaren.')
return return
} }
setExporting(true) setExporting(true)
@@ -110,7 +110,7 @@ export function useExportWorkflow({
setLatestExport(response) setLatestExport(response)
await loadExports(selectedProjectId) await loadExports(selectedProjectId)
} catch (error) { } catch (error) {
setExportError(formatError(error, 'Failed to export segmentation run')) setExportError(formatError(error, 'De segmentatierun kon niet worden geëxporteerd'))
} finally { } finally {
setExporting(false) setExporting(false)
} }
@@ -118,7 +118,7 @@ export function useExportWorkflow({
const exportMapSelectionGeoJson = async (bbox: VectorSelectionBBox, areaId?: string) => { const exportMapSelectionGeoJson = async (bbox: VectorSelectionBBox, areaId?: string) => {
if (!selectedDataset || !isVectorDatasetType(selectedDataset.dataset_type)) { if (!selectedDataset || !isVectorDatasetType(selectedDataset.dataset_type)) {
setSelectionExportError('Select a vector dataset before saving an area export.') setSelectionExportError('Kies eerst een vectorbron om het gebied mee te bewaren.')
return null return null
} }
setSelectionExporting(true) setSelectionExporting(true)
@@ -137,7 +137,7 @@ export function useExportWorkflow({
await loadExports(selectedDataset.project_id) await loadExports(selectedDataset.project_id)
return response return response
} catch (error) { } catch (error) {
setSelectionExportError(formatError(error, 'Failed to save area export')) setSelectionExportError(formatError(error, 'De gebiedsdownload kon niet worden bewaard'))
return null return null
} finally { } finally {
setSelectionExporting(false) setSelectionExporting(false)
@@ -146,7 +146,7 @@ export function useExportWorkflow({
const exportProjectMetadata = async () => { const exportProjectMetadata = async () => {
if (!selectedProjectId) { if (!selectedProjectId) {
setExportError('Select a project before exporting metadata.') setExportError('Kies eerst een werkruimte om de projectgegevens te bewaren.')
return return
} }
setExporting(true) setExporting(true)
@@ -156,7 +156,7 @@ export function useExportWorkflow({
setLatestExport(response) setLatestExport(response)
await loadExports(selectedProjectId) await loadExports(selectedProjectId)
} catch (error) { } catch (error) {
setExportError(formatError(error, 'Failed to export project metadata')) setExportError(formatError(error, 'De projectgegevens konden niet worden geëxporteerd'))
} finally { } finally {
setExporting(false) setExporting(false)
} }
@@ -164,7 +164,7 @@ export function useExportWorkflow({
const exportProjectReport = async () => { const exportProjectReport = async () => {
if (!selectedProjectId) { if (!selectedProjectId) {
setExportError('Select a project before exporting a report.') setExportError('Kies eerst een werkruimte om een rapport te maken.')
return return
} }
setExporting(true) setExporting(true)
@@ -174,7 +174,7 @@ export function useExportWorkflow({
setLatestExport(response) setLatestExport(response)
await loadExports(selectedProjectId) await loadExports(selectedProjectId)
} catch (error) { } catch (error) {
setExportError(formatError(error, 'Failed to export project report')) setExportError(formatError(error, 'Het projectrapport kon niet worden gemaakt'))
} finally { } finally {
setExporting(false) setExporting(false)
} }
@@ -204,7 +204,7 @@ export function useExportWorkflow({
const response = await exportsApi.getContent(selectedProjectId, exportId) const response = await exportsApi.getContent(selectedProjectId, exportId)
setExportPreview(response.content) setExportPreview(response.content)
} catch (error) { } catch (error) {
setExportError(formatError(error, 'Failed to load export content')) setExportError(formatError(error, 'De inhoud van de download kon niet worden geladen'))
} }
} }
+2 -2
View File
@@ -26,7 +26,7 @@ export function useMapSelectionDataset({
const deriveMapSelectionDataset = async (bbox: VectorSelectionBBox, areaId?: string) => { const deriveMapSelectionDataset = async (bbox: VectorSelectionBBox, areaId?: string) => {
if (!selectedProjectId || !selectedDataset || !isVectorDatasetType(selectedDataset.dataset_type)) { if (!selectedProjectId || !selectedDataset || !isVectorDatasetType(selectedDataset.dataset_type)) {
setSelectionDatasetError('Select a vector dataset before saving the area as a dataset.') setSelectionDatasetError('Kies eerst een vectorbron om het gebied als bron te bewaren.')
return null return null
} }
setSelectionDatasetSaving(true) setSelectionDatasetSaving(true)
@@ -44,7 +44,7 @@ export function useMapSelectionDataset({
setMapLayerVisible(true) setMapLayerVisible(true)
return derived return derived
} catch (error) { } catch (error) {
setSelectionDatasetError(formatError(error, 'Failed to save area as dataset')) setSelectionDatasetError(formatError(error, 'Het gebied kon niet als bron worden bewaard'))
return null return null
} finally { } finally {
setSelectionDatasetSaving(false) setSelectionDatasetSaving(false)
+2 -2
View File
@@ -24,7 +24,7 @@ export function useMapSelectionQa({
const runMapSelectionQa = async (candidateDataset = latestSelectionDataset) => { const runMapSelectionQa = async (candidateDataset = latestSelectionDataset) => {
if (!selectedProjectId) { if (!selectedProjectId) {
setMapSelectionQaError('Select a project before running QA/QC.') setMapSelectionQaError('Kies eerst een werkruimte om een kwaliteitscontrole te draaien.')
return null return null
} }
if (!candidateDataset) { if (!candidateDataset) {
@@ -32,7 +32,7 @@ export function useMapSelectionQa({
return null return null
} }
if (!selectedMapQaReferenceDatasetId) { if (!selectedMapQaReferenceDatasetId) {
setMapSelectionQaError('Select a reference dataset for QA/QC.') setMapSelectionQaError('Kies eerst een referentiebron voor de kwaliteitscontrole.')
return null return null
} }
if (candidateDataset.id === selectedMapQaReferenceDatasetId) { if (candidateDataset.id === selectedMapQaReferenceDatasetId) {
@@ -16,7 +16,7 @@ export function useProviderCapabilities() {
const providerResponse = await externalApi.listProviders() const providerResponse = await externalApi.listProviders()
setProviderCapabilities(providerResponse.providers) setProviderCapabilities(providerResponse.providers)
} catch (error) { } catch (error) {
setCapabilitiesError(error instanceof Error ? error.message : 'Failed to load external capabilities') setCapabilitiesError(error instanceof Error ? error.message : 'De bronkoppelingen konden niet worden geladen')
} finally { } finally {
setLoadingCapabilities(false) setLoadingCapabilities(false)
} }
+6 -6
View File
@@ -33,13 +33,13 @@ export function useQualityWorkflow({ selectedProjectId, loadProjectData }: Quali
setQualityChecks(response.items) setQualityChecks(response.items)
return response.items return response.items
} catch (error) { } catch (error) {
setQualityChecksError(formatError(error, 'Failed to load QA/QC results')) setQualityChecksError(formatError(error, 'De kwaliteitscontroles konden niet worden geladen'))
} }
} }
const loadQualityEvidenceGeoJson = async (qualityCheckId: string, projectId = selectedProjectId): Promise<QualityEvidenceGeoJsonResponse | null> => { const loadQualityEvidenceGeoJson = async (qualityCheckId: string, projectId = selectedProjectId): Promise<QualityEvidenceGeoJsonResponse | null> => {
if (!projectId) { if (!projectId) {
setQualityEvidenceError('Select a project first') setQualityEvidenceError('Kies eerst een werkruimte')
return null return null
} }
setQualityEvidenceLoading(true) setQualityEvidenceLoading(true)
@@ -49,7 +49,7 @@ export function useQualityWorkflow({ selectedProjectId, loadProjectData }: Quali
setQualityEvidenceGeoJson(response) setQualityEvidenceGeoJson(response)
return response return response
} catch (error) { } catch (error) {
setQualityEvidenceError(formatError(error, 'Failed to load QA/QC evidence overlay')) setQualityEvidenceError(formatError(error, 'De bewijslaag van de kwaliteitscontrole kon niet worden geladen'))
return null return null
} finally { } finally {
setQualityEvidenceLoading(false) setQualityEvidenceLoading(false)
@@ -63,15 +63,15 @@ export function useQualityWorkflow({ selectedProjectId, loadProjectData }: Quali
const runQaComparison = async () => { const runQaComparison = async () => {
if (!selectedProjectId) { if (!selectedProjectId) {
setQaError('Select a project first') setQaError('Kies eerst een werkruimte')
return return
} }
if (!qaCandidateDatasetId) { if (!qaCandidateDatasetId) {
setQaError('Select candidate dataset') setQaError('Kies eerst een kandidaatbron')
return return
} }
if (!qaReferenceDatasetId) { if (!qaReferenceDatasetId) {
setQaError('Select reference dataset') setQaError('Kies eerst een referentiebron')
return return
} }
if (qaCandidateDatasetId === qaReferenceDatasetId) { if (qaCandidateDatasetId === qaReferenceDatasetId) {
@@ -72,7 +72,7 @@ export function useSegmentationWorkflow({
) )
} }
} catch (error) { } catch (error) {
setSegmentationModelError(formatError(error, 'Failed to load segmentation models')) setSegmentationModelError(formatError(error, 'De segmentatiemodellen konden niet worden geladen'))
} finally { } finally {
setLoadingSegmentationModels(false) setLoadingSegmentationModels(false)
} }
@@ -90,7 +90,7 @@ export function useSegmentationWorkflow({
setSelectedSegmentationRunId(response.items[0].id) setSelectedSegmentationRunId(response.items[0].id)
} }
} catch (error) { } catch (error) {
setSegmentationRunError(formatError(error, 'Failed to load segmentation runs')) setSegmentationRunError(formatError(error, 'De segmentatieruns konden niet worden geladen'))
} }
} }
@@ -115,7 +115,7 @@ export function useSegmentationWorkflow({
setSegmentationItems(segmentationsResponse.items) setSegmentationItems(segmentationsResponse.items)
setSegmentationGeoJson(geoJsonResponse) setSegmentationGeoJson(geoJsonResponse)
} catch (error) { } catch (error) {
setSegmentationRunError(formatError(error, 'Failed to load segmentation results')) setSegmentationRunError(formatError(error, 'De segmentatieresultaten konden niet worden geladen'))
} finally { } finally {
setLoadingSegmentationResults(false) setLoadingSegmentationResults(false)
} }
@@ -123,16 +123,16 @@ export function useSegmentationWorkflow({
const runSegmentation = async () => { const runSegmentation = async () => {
if (!selectedProjectId) { if (!selectedProjectId) {
setSegmentationRunError('Select a project first') setSegmentationRunError('Kies eerst een werkruimte')
return return
} }
const datasetId = selectedSegmentationDatasetId || rasterDatasets[0]?.id const datasetId = selectedSegmentationDatasetId || rasterDatasets[0]?.id
if (!datasetId) { if (!datasetId) {
setSegmentationRunError('Select a raster dataset') setSegmentationRunError('Kies eerst een rasterbron')
return return
} }
if (!selectedSegmentationModel?.configured) { if (!selectedSegmentationModel?.configured) {
setSegmentationRunError('Selected segmentation model is not configured') setSegmentationRunError('Het gekozen segmentatiemodel is niet geconfigureerd')
return return
} }
setSegmentationRunError(null) setSegmentationRunError(null)
@@ -165,11 +165,11 @@ export function useSegmentationWorkflow({
const runSegmentationQa = async () => { const runSegmentationQa = async () => {
if (!selectedSegmentationRunId) { if (!selectedSegmentationRunId) {
setSegmentationQaError('Select a segmentation run') setSegmentationQaError('Kies eerst een segmentatierun')
return return
} }
if (!segmentationReferenceDatasetId) { if (!segmentationReferenceDatasetId) {
setSegmentationQaError('Select a reference dataset') setSegmentationQaError('Kies eerst een referentiebron')
return return
} }
setSegmentationQaError(null) setSegmentationQaError(null)