diff --git a/apps/fishing-map/features/map/map.slice.ts b/apps/fishing-map/features/map/map.slice.ts index 25e5c9d124..e2d8bc4dad 100644 --- a/apps/fishing-map/features/map/map.slice.ts +++ b/apps/fishing-map/features/map/map.slice.ts @@ -1,5 +1,6 @@ import { createSlice, PayloadAction, createAsyncThunk } from '@reduxjs/toolkit' import { uniqBy } from 'es-toolkit' +import { RootState } from 'reducers' import { GFWAPI } from '@globalfishingwatch/api-client' import { getDataviewSqlFiltersResolved, @@ -366,13 +367,13 @@ export const fetchClusterEventThunk = createAsyncThunk< dispatch: AppDispatch } >('map/fetchEncounterEvent', async (eventFeature, { signal, getState }) => { - const state = getState() as any + const state = getState() as RootState const eventDataviews = selectEventsDataviews(state) || [] const dataview = eventDataviews.find((d) => d.id === eventFeature.layerId) const eventsDataset = dataview?.datasets?.find((d) => d.type === DatasetTypes.Events) let interactionId = eventFeature.id - let eventId: string | undefined - if (interactionId && eventsDataset) { + let eventId: string | undefined = eventFeature.eventId + if (!eventId && interactionId && eventsDataset) { const start = getUTCDate(eventFeature?.startTime).toISOString() const end = getUTCDate(eventFeature?.endTime).toISOString() const datasetConfig: DataviewDatasetConfig = { diff --git a/libs/deck-layers/src/layers/fourwings/clusters/FourwingsClustersLayer.ts b/libs/deck-layers/src/layers/fourwings/clusters/FourwingsClustersLayer.ts index 52175f726c..cf1dcc7c54 100644 --- a/libs/deck-layers/src/layers/fourwings/clusters/FourwingsClustersLayer.ts +++ b/libs/deck-layers/src/layers/fourwings/clusters/FourwingsClustersLayer.ts @@ -121,6 +121,10 @@ export class FourwingsClustersLayer extends CompositeLayer< const object = { ...(info.object || ({} as FourwingsClusterFeature)), id: info.object?.properties.id || `${(info.object?.geometry?.coordinates || []).join('-')}`, + ...(this.isInPositionsMode && + info.object?.properties.id && { + eventId: info.object?.properties.id, + }), color: this.props.color, layerId: this.root.id, datasetId: this.props.datasetId, diff --git a/libs/deck-layers/src/layers/fourwings/clusters/fourwings-clusters.types.ts b/libs/deck-layers/src/layers/fourwings/clusters/fourwings-clusters.types.ts index 51b6a4def8..075742f3e5 100644 --- a/libs/deck-layers/src/layers/fourwings/clusters/fourwings-clusters.types.ts +++ b/libs/deck-layers/src/layers/fourwings/clusters/fourwings-clusters.types.ts @@ -36,6 +36,7 @@ export type FourwingsClusterPickingObject = FourwingsClusterFeature & endTime: number expansionZoom?: number datasetId?: string + eventId?: string }> export type FourwingsClusterPickingInfo = PickingInfo<