refactor geojson filter and start filtering data in the client