feat: simplify regional workbench language
This commit is contained in:
@@ -1,4 +1,5 @@
|
||||
import type { AreaRead, DatasetCreateResponse, ExportRead, ProjectRead, QualityCheckRead } from '../types'
|
||||
import { REGIONAL_WORKSPACE_LABEL, REGIONAL_WORKSPACE_PROJECT_NAME } from '../config/primaryFocus'
|
||||
|
||||
interface StatusItem {
|
||||
key: string
|
||||
@@ -26,6 +27,17 @@ function countReferenceDatasets(datasets: DatasetCreateResponse[]): number {
|
||||
return datasets.filter((dataset) => dataset.dataset_role === 'reference').length
|
||||
}
|
||||
|
||||
function statusLabel(state: StatusItem['state']): string {
|
||||
if (state === 'ready') return 'gereed'
|
||||
if (state === 'warning') return 'aandacht'
|
||||
return 'nog open'
|
||||
}
|
||||
|
||||
function projectLabel(project: ProjectRead | null): string {
|
||||
if (!project) return 'Geen werkruimte'
|
||||
return project.name === REGIONAL_WORKSPACE_PROJECT_NAME ? REGIONAL_WORKSPACE_LABEL : project.name
|
||||
}
|
||||
|
||||
function nextAction(items: StatusItem[]): string {
|
||||
if (!items.some((item) => item.key === 'project' && item.state === 'ready')) {
|
||||
return 'De regionale werkruimte kon niet worden geopend.'
|
||||
@@ -65,7 +77,7 @@ export function WorkbenchStatusStrip({
|
||||
{
|
||||
key: 'project',
|
||||
label: 'Werkruimte',
|
||||
value: selectedProject ? selectedProject.name : 'Geen werkruimte',
|
||||
value: projectLabel(selectedProject),
|
||||
detail: selectedProject ? selectedProject.region : 'Niet geladen',
|
||||
state: selectedProject ? 'ready' : 'waiting',
|
||||
},
|
||||
@@ -114,12 +126,12 @@ export function WorkbenchStatusStrip({
|
||||
<div>
|
||||
<p className="eyebrow">Platformstatus</p>
|
||||
<h2>
|
||||
<span className="sr-only">Workbench status: </span>
|
||||
<span className="sr-only">Status werkruimte: </span>
|
||||
{coreReady ? 'Kaartwerkruimte is gebruiksklaar' : 'Kaartwerkruimte vraagt aandacht'}
|
||||
</h2>
|
||||
<p className="status-next-action">{nextAction(items)}</p>
|
||||
</div>
|
||||
<div className="status-readiness" aria-label={`${readyCount} of ${items.length} workbench stages ready`}>
|
||||
<div className="status-readiness" aria-label={`${readyCount} van ${items.length} onderdelen gereed`}>
|
||||
<strong>{readyCount}/{items.length}</strong>
|
||||
<span>onderdelen gereed</span>
|
||||
</div>
|
||||
@@ -129,7 +141,7 @@ export function WorkbenchStatusStrip({
|
||||
<div className={`status-tile status-tile-${item.state}`} key={item.key}>
|
||||
<div className="status-tile-topline">
|
||||
<span>{item.label}</span>
|
||||
<span className="status-pill">{item.state}</span>
|
||||
<span className="status-pill">{statusLabel(item.state)}</span>
|
||||
</div>
|
||||
<strong title={item.value}>{item.value}</strong>
|
||||
<p>{item.detail}</p>
|
||||
|
||||
Reference in New Issue
Block a user