feat: support tilingMode: cog for raster data type to allow visualization from external stac#1982
Open
slesaad wants to merge 10 commits into
Open
feat: support tilingMode: cog for raster data type to allow visualization from external stac#1982slesaad wants to merge 10 commits into
tilingMode: cog for raster data type to allow visualization from external stac#1982slesaad wants to merge 10 commits into
Conversation
✅ Deploy Preview for veda-ui ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
tilingMode: cog for raster data type to allow visualization from external stac
dzole0311
reviewed
May 8, 2026
| import { S_FAILED, S_LOADING, S_SUCCEEDED } from '$utils/status'; | ||
|
|
||
| // Whether or not to print the request logs. | ||
| const LOG = process.env.NODE_ENV !== 'production' ? true : false; |
Collaborator
There was a problem hiding this comment.
Suggested change
| const LOG = process.env.NODE_ENV !== 'production' ? true : false; | |
| const LOG = process.env.NODE_ENV !== 'production'; |
| assetHref: string; | ||
| } | ||
|
|
||
| interface StacLink { |
Collaborator
There was a problem hiding this comment.
Looks like we could reuse StacLink, PaginationState and the loadMore callback between the two timeseries files
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Support external STAC servers via
tilingMode: cogSummary
Adds a new
tilingModeoption torasterdatasets so they can be tiledeither via VEDA's mosaic register endpoint (the existing default) or via
titiler's per-item
/cog/tilesendpoint. The latter unlocks consumption ofexternal STAC servers (Element84 Earth Search, GHG Center, NASA CMR
CloudSTAC, etc.) that don't expose a mosaic register endpoint.
Dataset config
tilingMode: 'mosaic'(default): unchanged behavior./searches/registerproduces one tilejson for the whole CQL filter.tilingMode: 'cog': per-item COG tiling. For each STAC item, theselected asset's
href(preferringalternate.s3.hrefwhen present)is passed to
/cog/tiles?url=.... Multiple items render as separatelayers stacked on the map.
What's also new
searchLimit: configurable per-dataset cap on items per/search.Some external servers (e.g. Element84) error out with
limit: 1000.Works in both tiling modes.
nextlink now power a"Showing N of M items — Load More" overlay. Handles both GET and
POST next-link methods.
FootprintsLayer: replaces the marker-basedPointsLayerfor bothraster modes. Renders STAC item geometry when the response includes it
(cog mode), bbox polygons otherwise (mosaic mode). Respects parent
layer's
hidden/opacity/generatorOrder.File-level changes
types/veda.ts,parcel-resolver-veda/index.d.tstilingMode,searchLimittoDatasetLayer; remove unusedexternal-stacfromDatasetLayerType.style-generators/raster-cog-timeseries.tsx(new)style-generators/raster-timeseries.tsxsearchLimit+ pagination. Mosaic register guarded against re-registration on pagination.style-generators/footprints-layer.tsx(new)style-generators/pagination-overlay.tsx(new)exploration/components/map/layer.tsxcase 'raster'branches ontilingMode === 'cog'.exploration/hooks/use-stac-metadata-datasets.tstype === 'raster' && tilingMode === 'cog'to handle external STAC metadata structures.mock/datasets/*-external.data.mdx,*-element84.data.mdxBackwards compatibility
tilingModedefaults to'mosaic'. All existingrasterdatasetscontinue to work without any config change.
Test plan
searchLimit/tilingModein MDX).is selected.
reveals additional footprints without yanking the map.
toggles its footprints alongside its tiles.
and layers from the map style.
loadMoreis in flight aborts cleanly (noconsole warnings about state-after-unmount).