@@ -247,6 +247,7 @@ router.get('/feature', async (req, res) => {
247247 const contextFilters = JSON . parse (
248248 decodeURIComponent ( get ( req , 'query.contextFilters' , null ) )
249249 ) ;
250+ const at = get ( req , 'query.at' ) as string | undefined ;
250251 // const tolerance = get(req, 'query.tolerance', 1);
251252 // const highQuality = get(req, 'query.highquality', true);
252253 // turf.simplify(geoJsonData, {
@@ -319,14 +320,15 @@ router.get('/feature', async (req, res) => {
319320 // const filterPolygon = getFilterPolygon(req.query);
320321
321322 if ( aggregation ) {
322- query = `query recordsAggregation($resource: ID!, $aggregation: ID!, $contextFilters: JSON, $first: Int) {
323- recordsAggregation(resource: $resource, aggregation: $aggregation, contextFilters: $contextFilters, first: $first)
323+ query = `query recordsAggregation($resource: ID!, $aggregation: ID!, $contextFilters: JSON, $first: Int, $at: Date ) {
324+ recordsAggregation(resource: $resource, aggregation: $aggregation, contextFilters: $contextFilters, first: $first, at: $at )
324325 }` ;
325326 variables = {
326327 resource : resourceData . _id ,
327328 aggregation : aggregation . _id ,
328329 contextFilters,
329330 first : 1000 ,
331+ at : at ? new Date ( at ) : undefined ,
330332 } ;
331333 } else if ( layout ) {
332334 query = buildQuery ( layout . query ) ;
@@ -338,6 +340,7 @@ router.get('/feature', async (req, res) => {
338340 ? [ layout . query . filter , contextFilters ]
339341 : [ layout . query . filter ] ,
340342 } ,
343+ at : at ? new Date ( at ) : undefined ,
341344 } ;
342345 } else {
343346 return res . status ( 404 ) . send ( i18next . t ( 'common.errors.dataNotFound' ) ) ;
0 commit comments