import type { DatasetCreateResponse, ProjectRead } from '../types' export const PRIMARY_FOCUS_LABEL = 'Mol' export const PRIMARY_FOCUS_REGION = 'Mol, Kempen' export const NATIONAL_WORKSPACE_PROJECT_NAME = 'Belgium and North Sea Workbench' export const NATIONAL_WORKSPACE_LABEL = 'Belgiƫ en Belgische Noordzee' export const NATIONAL_WORKSPACE_REGION = 'Belgiƫ en Belgische Noordzee' export const NATIONAL_MAP_CENTER: [number, number] = [4.62, 50.72] export const NATIONAL_MAP_ZOOM = 7.25 export const REGIONAL_WORKSPACE_PROJECT_NAME = 'Kempen Regional Workbench' export const REGIONAL_WORKSPACE_LABEL = 'Kempen (28 gemeenten)' export const FLANDERS_WORKSPACE_PROJECT_NAME = 'Flanders Regional Workbench' export const FLANDERS_WORKSPACE_LABEL = 'Vlaanderen (285 gemeenten)' export const PRIMARY_FOCUS_CENTER: [number, number] = [5.1167, 51.1919] export const PRIMARY_FOCUS_AREA_NAME = 'Mol primary AOI' export const PRIMARY_FOCUS_MUNICIPALITY_PROJECT_NAME = 'Mol Municipality Workbench' export const PRIMARY_FOCUS_AREA_GEOJSON = '{"type":"MultiPolygon","coordinates":[[[[5.109476746222376,51.18745107550715],[5.123924622861509,51.18745107550715],[5.123924622861509,51.19634848029239],[5.109476746222376,51.19634848029239],[5.109476746222376,51.18745107550715]]]]}' const PRIMARY_FOCUS_TOKEN = /(^|[^a-z0-9])mol([^a-z0-9]|$)/i function containsPrimaryFocus(values: Array): boolean { return values.some((value) => Boolean(value && PRIMARY_FOCUS_TOKEN.test(value))) } export function isPrimaryFocusProject(project: ProjectRead): boolean { return containsPrimaryFocus([project.name, project.description, project.region]) } export function isPrimaryFocusMunicipalityProject(project: ProjectRead): boolean { return project.name === PRIMARY_FOCUS_MUNICIPALITY_PROJECT_NAME } export function isPrimaryFocusMunicipalityBoundaryDataset(dataset: DatasetCreateResponse): boolean { return ( dataset.status === 'ready' && (dataset.dataset_type === 'vector' || dataset.dataset_type === 'geojson') && dataset.source_name === 'vrbg' && dataset.source_metadata?.coverage_scope === 'municipality' && dataset.source_metadata?.nis_code === '13025' ) } export function isPrimaryFocusProjectData( project: ProjectRead, datasets: DatasetCreateResponse[], ): boolean { if (isPrimaryFocusProject(project)) { return true } return datasets.some((dataset) => containsPrimaryFocus([ dataset.name, dataset.original_filename, dataset.stored_filename, dataset.storage_path, dataset.source_name, dataset.reference_layer_name, ]), ) }