@honua/app-platform 0.0.20-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +11 -0
- package/app/index.d.ts +164 -0
- package/app/index.d.ts.map +1 -0
- package/app/index.js +424 -0
- package/app-controller/controller.d.ts +425 -0
- package/app-controller/controller.d.ts.map +1 -0
- package/app-controller/controller.js +1173 -0
- package/app-controller/index.d.ts +14 -0
- package/app-controller/index.d.ts.map +1 -0
- package/app-controller/index.js +12 -0
- package/app-workspace/index.d.ts +421 -0
- package/app-workspace/index.d.ts.map +1 -0
- package/app-workspace/index.js +722 -0
- package/collaboration/client.d.ts +40 -0
- package/collaboration/client.d.ts.map +1 -0
- package/collaboration/client.js +299 -0
- package/collaboration/errors.d.ts +15 -0
- package/collaboration/errors.d.ts.map +1 -0
- package/collaboration/errors.js +17 -0
- package/collaboration/fixture.d.ts +41 -0
- package/collaboration/fixture.d.ts.map +1 -0
- package/collaboration/fixture.js +362 -0
- package/collaboration/index.d.ts +18 -0
- package/collaboration/index.d.ts.map +1 -0
- package/collaboration/index.js +14 -0
- package/collaboration/types.d.ts +240 -0
- package/collaboration/types.d.ts.map +1 -0
- package/collaboration/types.js +1 -0
- package/contract/analytics-sources.d.ts +149 -0
- package/contract/analytics-sources.d.ts.map +1 -0
- package/contract/analytics-sources.js +235 -0
- package/contract/edit-session.d.ts +203 -0
- package/contract/edit-session.d.ts.map +1 -0
- package/contract/edit-session.js +760 -0
- package/contract/edit-sketch.d.ts +91 -0
- package/contract/edit-sketch.d.ts.map +1 -0
- package/contract/edit-sketch.js +281 -0
- package/contract/index.d.ts +63 -0
- package/contract/index.d.ts.map +1 -0
- package/contract/index.js +52 -0
- package/contract/jobs.d.ts +149 -0
- package/contract/jobs.d.ts.map +1 -0
- package/contract/jobs.js +40 -0
- package/contract/pmtiles.d.ts +162 -0
- package/contract/pmtiles.d.ts.map +1 -0
- package/contract/pmtiles.js +155 -0
- package/contract/source.d.ts +447 -0
- package/contract/source.d.ts.map +1 -0
- package/contract/source.js +3909 -0
- package/contract/spatial-aggregation.d.ts +336 -0
- package/contract/spatial-aggregation.d.ts.map +1 -0
- package/contract/spatial-aggregation.js +298 -0
- package/contract/temporal.d.ts +455 -0
- package/contract/temporal.d.ts.map +1 -0
- package/contract/temporal.js +146 -0
- package/contract/tiles.d.ts +370 -0
- package/contract/tiles.d.ts.map +1 -0
- package/contract/tiles.js +519 -0
- package/contract/types.d.ts +694 -0
- package/contract/types.d.ts.map +1 -0
- package/contract/types.js +183 -0
- package/contract/widget-source.d.ts +205 -0
- package/contract/widget-source.d.ts.map +1 -0
- package/contract/widget-source.js +1473 -0
- package/control-plane/client.d.ts +95 -0
- package/control-plane/client.d.ts.map +1 -0
- package/control-plane/client.js +374 -0
- package/control-plane/index.d.ts +18 -0
- package/control-plane/index.d.ts.map +1 -0
- package/control-plane/index.js +14 -0
- package/control-plane/types.d.ts +233 -0
- package/control-plane/types.d.ts.map +1 -0
- package/control-plane/types.js +7 -0
- package/controls/basemap-style-binding.d.ts +54 -0
- package/controls/basemap-style-binding.d.ts.map +1 -0
- package/controls/basemap-style-binding.js +199 -0
- package/controls/basemap-switcher.d.ts +95 -0
- package/controls/basemap-switcher.d.ts.map +1 -0
- package/controls/basemap-switcher.js +379 -0
- package/controls/element-utils.d.ts +48 -0
- package/controls/element-utils.d.ts.map +1 -0
- package/controls/element-utils.js +78 -0
- package/controls/index.d.ts +33 -0
- package/controls/index.d.ts.map +1 -0
- package/controls/index.js +30 -0
- package/controls/layer-list.d.ts +98 -0
- package/controls/layer-list.d.ts.map +1 -0
- package/controls/layer-list.js +375 -0
- package/controls/legend-derive.d.ts +53 -0
- package/controls/legend-derive.d.ts.map +1 -0
- package/controls/legend-derive.js +196 -0
- package/controls/legend.d.ts +104 -0
- package/controls/legend.d.ts.map +1 -0
- package/controls/legend.js +381 -0
- package/controls/swipe-control.d.ts +80 -0
- package/controls/swipe-control.d.ts.map +1 -0
- package/controls/swipe-control.js +368 -0
- package/controls/types.d.ts +227 -0
- package/controls/types.d.ts.map +1 -0
- package/controls/types.js +11 -0
- package/core/auth/client-credentials-provider.d.ts +51 -0
- package/core/auth/client-credentials-provider.d.ts.map +1 -0
- package/core/auth/client-credentials-provider.js +115 -0
- package/core/auth/credential-store.d.ts +52 -0
- package/core/auth/credential-store.d.ts.map +1 -0
- package/core/auth/credential-store.js +82 -0
- package/core/auth/index.d.ts +23 -0
- package/core/auth/index.d.ts.map +1 -0
- package/core/auth/index.js +20 -0
- package/core/auth/oauth2-provider.d.ts +114 -0
- package/core/auth/oauth2-provider.d.ts.map +1 -0
- package/core/auth/oauth2-provider.js +408 -0
- package/core/auth/pkce.d.ts +25 -0
- package/core/auth/pkce.d.ts.map +1 -0
- package/core/auth/pkce.js +46 -0
- package/core/auth/static-providers.d.ts +20 -0
- package/core/auth/static-providers.d.ts.map +1 -0
- package/core/auth/static-providers.js +26 -0
- package/core/auth/token-endpoint.d.ts +40 -0
- package/core/auth/token-endpoint.d.ts.map +1 -0
- package/core/auth/token-endpoint.js +133 -0
- package/core/auth/types.d.ts +144 -0
- package/core/auth/types.d.ts.map +1 -0
- package/core/auth/types.js +8 -0
- package/core/batch.d.ts +37 -0
- package/core/batch.d.ts.map +1 -0
- package/core/batch.js +79 -0
- package/core/cache-state.d.ts +79 -0
- package/core/cache-state.d.ts.map +1 -0
- package/core/cache-state.js +87 -0
- package/core/client.d.ts +607 -0
- package/core/client.d.ts.map +1 -0
- package/core/client.js +1716 -0
- package/core/compatibility.d.ts +18 -0
- package/core/compatibility.d.ts.map +1 -0
- package/core/compatibility.js +245 -0
- package/core/errors.d.ts +139 -0
- package/core/errors.d.ts.map +1 -0
- package/core/errors.js +176 -0
- package/core/esri-geojson.d.ts +66 -0
- package/core/esri-geojson.d.ts.map +1 -0
- package/core/esri-geojson.js +363 -0
- package/core/geoparquet-sql.d.ts +162 -0
- package/core/geoparquet-sql.d.ts.map +1 -0
- package/core/geoparquet-sql.js +333 -0
- package/core/geoservices.d.ts +34 -0
- package/core/geoservices.d.ts.map +1 -0
- package/core/geoservices.js +434 -0
- package/core/grpc-adapter.d.ts +23 -0
- package/core/grpc-adapter.d.ts.map +1 -0
- package/core/grpc-adapter.js +688 -0
- package/core/odata.d.ts +347 -0
- package/core/odata.d.ts.map +1 -0
- package/core/odata.js +913 -0
- package/core/ogc-conformance.d.ts +35 -0
- package/core/ogc-conformance.d.ts.map +1 -0
- package/core/ogc-conformance.js +134 -0
- package/core/ogc-endpoint-layout.d.ts +70 -0
- package/core/ogc-endpoint-layout.d.ts.map +1 -0
- package/core/ogc-endpoint-layout.js +173 -0
- package/core/ogc-features.d.ts +23 -0
- package/core/ogc-features.d.ts.map +1 -0
- package/core/ogc-features.js +129 -0
- package/core/ogc-maps.d.ts +49 -0
- package/core/ogc-maps.d.ts.map +1 -0
- package/core/ogc-maps.js +126 -0
- package/core/ogc-processes.d.ts +118 -0
- package/core/ogc-processes.d.ts.map +1 -0
- package/core/ogc-processes.js +423 -0
- package/core/ogc-records.d.ts +75 -0
- package/core/ogc-records.d.ts.map +1 -0
- package/core/ogc-records.js +251 -0
- package/core/ogc-tiles.d.ts +125 -0
- package/core/ogc-tiles.d.ts.map +1 -0
- package/core/ogc-tiles.js +183 -0
- package/core/path-utils.d.ts +69 -0
- package/core/path-utils.d.ts.map +1 -0
- package/core/path-utils.js +123 -0
- package/core/pbf-decoder.d.ts +39 -0
- package/core/pbf-decoder.d.ts.map +1 -0
- package/core/pbf-decoder.js +702 -0
- package/core/process-runner.d.ts +104 -0
- package/core/process-runner.d.ts.map +1 -0
- package/core/process-runner.js +315 -0
- package/core/protocol-transport.d.ts +76 -0
- package/core/protocol-transport.d.ts.map +1 -0
- package/core/protocol-transport.js +15 -0
- package/core/query-builder.d.ts +261 -0
- package/core/query-builder.d.ts.map +1 -0
- package/core/query-builder.js +538 -0
- package/core/request-pipeline.d.ts +88 -0
- package/core/request-pipeline.d.ts.map +1 -0
- package/core/request-pipeline.js +273 -0
- package/core/spatial-filter.d.ts +93 -0
- package/core/spatial-filter.d.ts.map +1 -0
- package/core/spatial-filter.js +153 -0
- package/core/stac-static.d.ts +51 -0
- package/core/stac-static.d.ts.map +1 -0
- package/core/stac-static.js +195 -0
- package/core/stac.d.ts +67 -0
- package/core/stac.d.ts.map +1 -0
- package/core/stac.js +259 -0
- package/core/surfaces.d.ts +540 -0
- package/core/surfaces.d.ts.map +1 -0
- package/core/surfaces.js +1964 -0
- package/core/terrain-elevation.d.ts +114 -0
- package/core/terrain-elevation.d.ts.map +1 -0
- package/core/terrain-elevation.js +150 -0
- package/core/types.d.ts +1404 -0
- package/core/types.d.ts.map +1 -0
- package/core/types.js +13 -0
- package/core/wfs-capabilities.d.ts +153 -0
- package/core/wfs-capabilities.d.ts.map +1 -0
- package/core/wfs-capabilities.js +490 -0
- package/core/wfs-filter.d.ts +118 -0
- package/core/wfs-filter.d.ts.map +1 -0
- package/core/wfs-filter.js +634 -0
- package/core/wfs.d.ts +232 -0
- package/core/wfs.d.ts.map +1 -0
- package/core/wfs.js +426 -0
- package/core/wire-shared.d.ts +32 -0
- package/core/wire-shared.d.ts.map +1 -0
- package/core/wire-shared.js +76 -0
- package/core/wms-axis.d.ts +36 -0
- package/core/wms-axis.d.ts.map +1 -0
- package/core/wms-axis.js +73 -0
- package/core/wms-capabilities.d.ts +110 -0
- package/core/wms-capabilities.d.ts.map +1 -0
- package/core/wms-capabilities.js +559 -0
- package/core/wms-types.d.ts +128 -0
- package/core/wms-types.d.ts.map +1 -0
- package/core/wms-types.js +32 -0
- package/core/wms.d.ts +144 -0
- package/core/wms.d.ts.map +1 -0
- package/core/wms.js +338 -0
- package/core/wmts-capabilities.d.ts +82 -0
- package/core/wmts-capabilities.d.ts.map +1 -0
- package/core/wmts-capabilities.js +402 -0
- package/core/wmts.d.ts +103 -0
- package/core/wmts.d.ts.map +1 -0
- package/core/wmts.js +332 -0
- package/core/xml-text.d.ts +20 -0
- package/core/xml-text.d.ts.map +1 -0
- package/core/xml-text.js +85 -0
- package/esri-compat/basemap-gallery.d.ts +38 -0
- package/esri-compat/basemap-gallery.d.ts.map +1 -0
- package/esri-compat/basemap-gallery.js +159 -0
- package/esri-compat/basemap-layer-list.d.ts +35 -0
- package/esri-compat/basemap-layer-list.d.ts.map +1 -0
- package/esri-compat/basemap-layer-list.js +139 -0
- package/esri-compat/basemap.d.ts +32 -0
- package/esri-compat/basemap.d.ts.map +1 -0
- package/esri-compat/basemap.js +84 -0
- package/esri-compat/bookmarks.d.ts +36 -0
- package/esri-compat/bookmarks.d.ts.map +1 -0
- package/esri-compat/bookmarks.js +108 -0
- package/esri-compat/class-breaks-renderer.d.ts +50 -0
- package/esri-compat/class-breaks-renderer.d.ts.map +1 -0
- package/esri-compat/class-breaks-renderer.js +164 -0
- package/esri-compat/color.d.ts +22 -0
- package/esri-compat/color.d.ts.map +1 -0
- package/esri-compat/color.js +106 -0
- package/esri-compat/controls.d.ts +174 -0
- package/esri-compat/controls.d.ts.map +1 -0
- package/esri-compat/controls.js +479 -0
- package/esri-compat/coordinate-conversion.d.ts +41 -0
- package/esri-compat/coordinate-conversion.d.ts.map +1 -0
- package/esri-compat/coordinate-conversion.js +125 -0
- package/esri-compat/directions.d.ts +45 -0
- package/esri-compat/directions.d.ts.map +1 -0
- package/esri-compat/directions.js +123 -0
- package/esri-compat/editor.d.ts +47 -0
- package/esri-compat/editor.d.ts.map +1 -0
- package/esri-compat/editor.js +170 -0
- package/esri-compat/esri-config.d.ts +16 -0
- package/esri-compat/esri-config.d.ts.map +1 -0
- package/esri-compat/esri-config.js +23 -0
- package/esri-compat/esri-request.d.ts +17 -0
- package/esri-compat/esri-request.d.ts.map +1 -0
- package/esri-compat/esri-request.js +127 -0
- package/esri-compat/event-bus.d.ts +106 -0
- package/esri-compat/event-bus.d.ts.map +1 -0
- package/esri-compat/event-bus.js +90 -0
- package/esri-compat/expand.d.ts +36 -0
- package/esri-compat/expand.d.ts.map +1 -0
- package/esri-compat/expand.js +97 -0
- package/esri-compat/extent.d.ts +43 -0
- package/esri-compat/extent.d.ts.map +1 -0
- package/esri-compat/extent.js +140 -0
- package/esri-compat/feature-filter.d.ts +55 -0
- package/esri-compat/feature-filter.d.ts.map +1 -0
- package/esri-compat/feature-filter.js +109 -0
- package/esri-compat/feature-form.d.ts +64 -0
- package/esri-compat/feature-form.d.ts.map +1 -0
- package/esri-compat/feature-form.js +137 -0
- package/esri-compat/feature-layer.d.ts +173 -0
- package/esri-compat/feature-layer.d.ts.map +1 -0
- package/esri-compat/feature-layer.js +661 -0
- package/esri-compat/feature-set.d.ts +32 -0
- package/esri-compat/feature-set.d.ts.map +1 -0
- package/esri-compat/feature-set.js +80 -0
- package/esri-compat/feature-table.d.ts +141 -0
- package/esri-compat/feature-table.d.ts.map +1 -0
- package/esri-compat/feature-table.js +500 -0
- package/esri-compat/feature-templates.d.ts +41 -0
- package/esri-compat/feature-templates.d.ts.map +1 -0
- package/esri-compat/feature-templates.js +97 -0
- package/esri-compat/feature.d.ts +33 -0
- package/esri-compat/feature.d.ts.map +1 -0
- package/esri-compat/feature.js +83 -0
- package/esri-compat/geojson-layer.d.ts +86 -0
- package/esri-compat/geojson-layer.d.ts.map +1 -0
- package/esri-compat/geojson-layer.js +191 -0
- package/esri-compat/geometry-engine.d.ts +107 -0
- package/esri-compat/geometry-engine.d.ts.map +1 -0
- package/esri-compat/geometry-engine.js +266 -0
- package/esri-compat/graphic.d.ts +46 -0
- package/esri-compat/graphic.d.ts.map +1 -0
- package/esri-compat/graphic.js +103 -0
- package/esri-compat/graphics-layer.d.ts +49 -0
- package/esri-compat/graphics-layer.d.ts.map +1 -0
- package/esri-compat/graphics-layer.js +185 -0
- package/esri-compat/group-layer.d.ts +48 -0
- package/esri-compat/group-layer.d.ts.map +1 -0
- package/esri-compat/group-layer.js +212 -0
- package/esri-compat/identify.d.ts +71 -0
- package/esri-compat/identify.d.ts.map +1 -0
- package/esri-compat/identify.js +299 -0
- package/esri-compat/identity-manager.d.ts +74 -0
- package/esri-compat/identity-manager.d.ts.map +1 -0
- package/esri-compat/identity-manager.js +245 -0
- package/esri-compat/imagery-layer.d.ts +78 -0
- package/esri-compat/imagery-layer.d.ts.map +1 -0
- package/esri-compat/imagery-layer.js +167 -0
- package/esri-compat/label-class.d.ts +31 -0
- package/esri-compat/label-class.d.ts.map +1 -0
- package/esri-compat/label-class.js +102 -0
- package/esri-compat/layer-list.d.ts +77 -0
- package/esri-compat/layer-list.d.ts.map +1 -0
- package/esri-compat/layer-list.js +342 -0
- package/esri-compat/legend.d.ts +53 -0
- package/esri-compat/legend.d.ts.map +1 -0
- package/esri-compat/legend.js +254 -0
- package/esri-compat/map-image-layer.d.ts +162 -0
- package/esri-compat/map-image-layer.d.ts.map +1 -0
- package/esri-compat/map-image-layer.js +709 -0
- package/esri-compat/map-view.d.ts +323 -0
- package/esri-compat/map-view.d.ts.map +1 -0
- package/esri-compat/map-view.js +1175 -0
- package/esri-compat/map.d.ts +47 -0
- package/esri-compat/map.d.ts.map +1 -0
- package/esri-compat/map.js +209 -0
- package/esri-compat/measurement-2d.d.ts +61 -0
- package/esri-compat/measurement-2d.d.ts.map +1 -0
- package/esri-compat/measurement-2d.js +184 -0
- package/esri-compat/measurement.d.ts +45 -0
- package/esri-compat/measurement.d.ts.map +1 -0
- package/esri-compat/measurement.js +193 -0
- package/esri-compat/oauth-info.d.ts +50 -0
- package/esri-compat/oauth-info.d.ts.map +1 -0
- package/esri-compat/oauth-info.js +142 -0
- package/esri-compat/picture-marker-symbol.d.ts +35 -0
- package/esri-compat/picture-marker-symbol.d.ts.map +1 -0
- package/esri-compat/picture-marker-symbol.js +126 -0
- package/esri-compat/point.d.ts +31 -0
- package/esri-compat/point.d.ts.map +1 -0
- package/esri-compat/point.js +102 -0
- package/esri-compat/polygon.d.ts +31 -0
- package/esri-compat/polygon.d.ts.map +1 -0
- package/esri-compat/polygon.js +107 -0
- package/esri-compat/polyline.d.ts +31 -0
- package/esri-compat/polyline.d.ts.map +1 -0
- package/esri-compat/polyline.js +107 -0
- package/esri-compat/popup-template.d.ts +55 -0
- package/esri-compat/popup-template.d.ts.map +1 -0
- package/esri-compat/popup-template.js +128 -0
- package/esri-compat/popup.d.ts +54 -0
- package/esri-compat/popup.d.ts.map +1 -0
- package/esri-compat/popup.js +312 -0
- package/esri-compat/print.d.ts +47 -0
- package/esri-compat/print.d.ts.map +1 -0
- package/esri-compat/print.js +105 -0
- package/esri-compat/query.d.ts +58 -0
- package/esri-compat/query.d.ts.map +1 -0
- package/esri-compat/query.js +128 -0
- package/esri-compat/reactive-utils.d.ts +24 -0
- package/esri-compat/reactive-utils.d.ts.map +1 -0
- package/esri-compat/reactive-utils.js +193 -0
- package/esri-compat/request.d.ts +41 -0
- package/esri-compat/request.d.ts.map +1 -0
- package/esri-compat/request.js +253 -0
- package/esri-compat/route-layer.d.ts +59 -0
- package/esri-compat/route-layer.d.ts.map +1 -0
- package/esri-compat/route-layer.js +223 -0
- package/esri-compat/route-task.d.ts +88 -0
- package/esri-compat/route-task.d.ts.map +1 -0
- package/esri-compat/route-task.js +225 -0
- package/esri-compat/scene-view.d.ts +41 -0
- package/esri-compat/scene-view.d.ts.map +1 -0
- package/esri-compat/scene-view.js +68 -0
- package/esri-compat/search.d.ts +112 -0
- package/esri-compat/search.d.ts.map +1 -0
- package/esri-compat/search.js +820 -0
- package/esri-compat/simple-fill-symbol.d.ts +27 -0
- package/esri-compat/simple-fill-symbol.d.ts.map +1 -0
- package/esri-compat/simple-fill-symbol.js +85 -0
- package/esri-compat/simple-line-symbol.d.ts +27 -0
- package/esri-compat/simple-line-symbol.d.ts.map +1 -0
- package/esri-compat/simple-line-symbol.js +85 -0
- package/esri-compat/simple-marker-symbol.d.ts +29 -0
- package/esri-compat/simple-marker-symbol.d.ts.map +1 -0
- package/esri-compat/simple-marker-symbol.js +92 -0
- package/esri-compat/simple-renderer.d.ts +29 -0
- package/esri-compat/simple-renderer.d.ts.map +1 -0
- package/esri-compat/simple-renderer.js +92 -0
- package/esri-compat/sketch.d.ts +64 -0
- package/esri-compat/sketch.d.ts.map +1 -0
- package/esri-compat/sketch.js +227 -0
- package/esri-compat/spatial-reference.d.ts +31 -0
- package/esri-compat/spatial-reference.d.ts.map +1 -0
- package/esri-compat/spatial-reference.js +102 -0
- package/esri-compat/swipe.d.ts +34 -0
- package/esri-compat/swipe.d.ts.map +1 -0
- package/esri-compat/swipe.js +93 -0
- package/esri-compat/table-list.d.ts +36 -0
- package/esri-compat/table-list.d.ts.map +1 -0
- package/esri-compat/table-list.js +126 -0
- package/esri-compat/text-symbol.d.ts +37 -0
- package/esri-compat/text-symbol.d.ts.map +1 -0
- package/esri-compat/text-symbol.js +123 -0
- package/esri-compat/tile-layer.d.ts +52 -0
- package/esri-compat/tile-layer.d.ts.map +1 -0
- package/esri-compat/tile-layer.js +168 -0
- package/esri-compat/time-slider.d.ts +70 -0
- package/esri-compat/time-slider.d.ts.map +1 -0
- package/esri-compat/time-slider.js +208 -0
- package/esri-compat/track.d.ts +51 -0
- package/esri-compat/track.d.ts.map +1 -0
- package/esri-compat/track.js +174 -0
- package/esri-compat/unique-value-renderer.d.ts +41 -0
- package/esri-compat/unique-value-renderer.d.ts.map +1 -0
- package/esri-compat/unique-value-renderer.js +127 -0
- package/esri-compat/url.d.ts +13 -0
- package/esri-compat/url.d.ts.map +1 -0
- package/esri-compat/url.js +68 -0
- package/esri-compat/vector-tile-layer.d.ts +47 -0
- package/esri-compat/vector-tile-layer.d.ts.map +1 -0
- package/esri-compat/vector-tile-layer.js +130 -0
- package/esri-compat/web-map.d.ts +14 -0
- package/esri-compat/web-map.d.ts.map +1 -0
- package/esri-compat/web-map.js +24 -0
- package/esri-compat/wfs-layer.d.ts +64 -0
- package/esri-compat/wfs-layer.d.ts.map +1 -0
- package/esri-compat/wfs-layer.js +145 -0
- package/esri-compat/wms-layer.d.ts +76 -0
- package/esri-compat/wms-layer.d.ts.map +1 -0
- package/esri-compat/wms-layer.js +157 -0
- package/exploration/context.d.ts +25 -0
- package/exploration/context.d.ts.map +1 -0
- package/exploration/context.js +396 -0
- package/exploration/index.d.ts +27 -0
- package/exploration/index.d.ts.map +1 -0
- package/exploration/index.js +24 -0
- package/exploration/presets.d.ts +27 -0
- package/exploration/presets.d.ts.map +1 -0
- package/exploration/presets.js +114 -0
- package/exploration/reducer.d.ts +23 -0
- package/exploration/reducer.d.ts.map +1 -0
- package/exploration/reducer.js +332 -0
- package/exploration/selection.d.ts +25 -0
- package/exploration/selection.d.ts.map +1 -0
- package/exploration/selection.js +34 -0
- package/exploration/selectors.d.ts +56 -0
- package/exploration/selectors.d.ts.map +1 -0
- package/exploration/selectors.js +110 -0
- package/exploration/types.d.ts +294 -0
- package/exploration/types.d.ts.map +1 -0
- package/exploration/types.js +33 -0
- package/expr/expression.d.ts +457 -0
- package/expr/expression.d.ts.map +1 -0
- package/expr/expression.js +663 -0
- package/expr/index.d.ts +32 -0
- package/expr/index.d.ts.map +1 -0
- package/expr/index.js +30 -0
- package/filter-registry/index.d.ts +145 -0
- package/filter-registry/index.d.ts.map +1 -0
- package/filter-registry/index.js +531 -0
- package/gen/honua/v1/feature_service_pb.d.ts +918 -0
- package/gen/honua/v1/feature_service_pb.d.ts.map +1 -0
- package/gen/honua/v1/feature_service_pb.js +375 -0
- package/generated-app/errors.d.ts +41 -0
- package/generated-app/errors.d.ts.map +1 -0
- package/generated-app/errors.js +41 -0
- package/generated-app/index.d.ts +17 -0
- package/generated-app/index.d.ts.map +1 -0
- package/generated-app/index.js +12 -0
- package/generated-app/manifest.d.ts +183 -0
- package/generated-app/manifest.d.ts.map +1 -0
- package/generated-app/manifest.js +14 -0
- package/generated-app/projection.d.ts +44 -0
- package/generated-app/projection.d.ts.map +1 -0
- package/generated-app/projection.js +234 -0
- package/generated-app/runtime.d.ts +215 -0
- package/generated-app/runtime.d.ts.map +1 -0
- package/generated-app/runtime.js +1196 -0
- package/geocoding/index.d.ts +106 -0
- package/geocoding/index.d.ts.map +1 -0
- package/geocoding/index.js +278 -0
- package/interactions/detail-model.d.ts +54 -0
- package/interactions/detail-model.d.ts.map +1 -0
- package/interactions/detail-model.js +105 -0
- package/interactions/exploration-bindings.d.ts +120 -0
- package/interactions/exploration-bindings.d.ts.map +1 -0
- package/interactions/exploration-bindings.js +218 -0
- package/interactions/feature-state.d.ts +144 -0
- package/interactions/feature-state.d.ts.map +1 -0
- package/interactions/feature-state.js +169 -0
- package/interactions/hit-test.d.ts +112 -0
- package/interactions/hit-test.d.ts.map +1 -0
- package/interactions/hit-test.js +291 -0
- package/interactions/index.d.ts +31 -0
- package/interactions/index.d.ts.map +1 -0
- package/interactions/index.js +24 -0
- package/interactions/share-state.d.ts +36 -0
- package/interactions/share-state.d.ts.map +1 -0
- package/interactions/share-state.js +123 -0
- package/map/feature-service-adapter.d.ts +138 -0
- package/map/feature-service-adapter.d.ts.map +1 -0
- package/map/feature-service-adapter.js +279 -0
- package/map/honua-map.d.ts +203 -0
- package/map/honua-map.d.ts.map +1 -0
- package/map/honua-map.js +347 -0
- package/map/index.d.ts +27 -0
- package/map/index.d.ts.map +1 -0
- package/map/index.js +22 -0
- package/map/maplibre-target.d.ts +103 -0
- package/map/maplibre-target.d.ts.map +1 -0
- package/map/maplibre-target.js +164 -0
- package/map/webmap-maplibre.d.ts +60 -0
- package/map/webmap-maplibre.d.ts.map +1 -0
- package/map/webmap-maplibre.js +212 -0
- package/operate/client.d.ts +94 -0
- package/operate/client.d.ts.map +1 -0
- package/operate/client.js +361 -0
- package/operate/index.d.ts +22 -0
- package/operate/index.d.ts.map +1 -0
- package/operate/index.js +19 -0
- package/operate/types.d.ts +397 -0
- package/operate/types.d.ts.map +1 -0
- package/operate/types.js +17 -0
- package/operator/client.d.ts +60 -0
- package/operator/client.d.ts.map +1 -0
- package/operator/client.js +20 -0
- package/operator/controllers/approval.d.ts +52 -0
- package/operator/controllers/approval.d.ts.map +1 -0
- package/operator/controllers/approval.js +123 -0
- package/operator/controllers/base.d.ts +27 -0
- package/operator/controllers/base.d.ts.map +1 -0
- package/operator/controllers/base.js +53 -0
- package/operator/controllers/builder-workspace.d.ts +55 -0
- package/operator/controllers/builder-workspace.d.ts.map +1 -0
- package/operator/controllers/builder-workspace.js +108 -0
- package/operator/controllers/chat.d.ts +61 -0
- package/operator/controllers/chat.d.ts.map +1 -0
- package/operator/controllers/chat.js +154 -0
- package/operator/controllers/clarification.d.ts +52 -0
- package/operator/controllers/clarification.d.ts.map +1 -0
- package/operator/controllers/clarification.js +121 -0
- package/operator/controllers/execution.d.ts +60 -0
- package/operator/controllers/execution.d.ts.map +1 -0
- package/operator/controllers/execution.js +286 -0
- package/operator/controllers/index.d.ts +23 -0
- package/operator/controllers/index.d.ts.map +1 -0
- package/operator/controllers/index.js +15 -0
- package/operator/controllers/map-workspace.d.ts +85 -0
- package/operator/controllers/map-workspace.d.ts.map +1 -0
- package/operator/controllers/map-workspace.js +296 -0
- package/operator/controllers/plan-review.d.ts +66 -0
- package/operator/controllers/plan-review.d.ts.map +1 -0
- package/operator/controllers/plan-review.js +124 -0
- package/operator/errors.d.ts +62 -0
- package/operator/errors.d.ts.map +1 -0
- package/operator/errors.js +75 -0
- package/operator/i18n/index.d.ts +10 -0
- package/operator/i18n/index.d.ts.map +1 -0
- package/operator/i18n/index.js +8 -0
- package/operator/i18n/messages.d.ts +19 -0
- package/operator/i18n/messages.d.ts.map +1 -0
- package/operator/i18n/messages.js +54 -0
- package/operator/index.d.ts +19 -0
- package/operator/index.d.ts.map +1 -0
- package/operator/index.js +15 -0
- package/operator/telemetry.d.ts +26 -0
- package/operator/telemetry.d.ts.map +1 -0
- package/operator/telemetry.js +9 -0
- package/operator/theming/index.d.ts +12 -0
- package/operator/theming/index.d.ts.map +1 -0
- package/operator/theming/index.js +9 -0
- package/operator/theming/provider.d.ts +27 -0
- package/operator/theming/provider.d.ts.map +1 -0
- package/operator/theming/provider.js +26 -0
- package/operator/theming/tokens.d.ts +28 -0
- package/operator/theming/tokens.d.ts.map +1 -0
- package/operator/theming/tokens.js +65 -0
- package/operator/workspace/events.d.ts +70 -0
- package/operator/workspace/events.d.ts.map +1 -0
- package/operator/workspace/events.js +9 -0
- package/operator/workspace/index.d.ts +12 -0
- package/operator/workspace/index.d.ts.map +1 -0
- package/operator/workspace/index.js +8 -0
- package/operator/workspace/types.d.ts +178 -0
- package/operator/workspace/types.d.ts.map +1 -0
- package/operator/workspace/types.js +47 -0
- package/operator/workspace/workspace.d.ts +58 -0
- package/operator/workspace/workspace.d.ts.map +1 -0
- package/operator/workspace/workspace.js +339 -0
- package/package.json +105 -0
- package/realtime/exploration.d.ts +16 -0
- package/realtime/exploration.d.ts.map +1 -0
- package/realtime/exploration.js +32 -0
- package/realtime/honua-server.d.ts +123 -0
- package/realtime/honua-server.d.ts.map +1 -0
- package/realtime/honua-server.js +188 -0
- package/realtime/index.d.ts +20 -0
- package/realtime/index.d.ts.map +1 -0
- package/realtime/index.js +14 -0
- package/realtime/projections.d.ts +30 -0
- package/realtime/projections.d.ts.map +1 -0
- package/realtime/projections.js +51 -0
- package/realtime/reducer.d.ts +14 -0
- package/realtime/reducer.d.ts.map +1 -0
- package/realtime/reducer.js +351 -0
- package/realtime/sse.d.ts +23 -0
- package/realtime/sse.d.ts.map +1 -0
- package/realtime/sse.js +143 -0
- package/realtime/store.d.ts +18 -0
- package/realtime/store.d.ts.map +1 -0
- package/realtime/store.js +63 -0
- package/realtime/types.d.ts +190 -0
- package/realtime/types.d.ts.map +1 -0
- package/realtime/types.js +10 -0
- package/replica-sync/client.d.ts +32 -0
- package/replica-sync/client.d.ts.map +1 -0
- package/replica-sync/client.js +52 -0
- package/replica-sync/errors.d.ts +22 -0
- package/replica-sync/errors.d.ts.map +1 -0
- package/replica-sync/errors.js +29 -0
- package/replica-sync/fixture.d.ts +40 -0
- package/replica-sync/fixture.d.ts.map +1 -0
- package/replica-sync/fixture.js +364 -0
- package/replica-sync/index.d.ts +22 -0
- package/replica-sync/index.d.ts.map +1 -0
- package/replica-sync/index.js +17 -0
- package/replica-sync/types.d.ts +270 -0
- package/replica-sync/types.d.ts.map +1 -0
- package/replica-sync/types.js +13 -0
- package/runtime/diff.d.ts +31 -0
- package/runtime/diff.d.ts.map +1 -0
- package/runtime/diff.js +143 -0
- package/runtime/errors.d.ts +40 -0
- package/runtime/errors.d.ts.map +1 -0
- package/runtime/errors.js +35 -0
- package/runtime/index.d.ts +59 -0
- package/runtime/index.d.ts.map +1 -0
- package/runtime/index.js +40 -0
- package/runtime/legend.d.ts +23 -0
- package/runtime/legend.d.ts.map +1 -0
- package/runtime/legend.js +38 -0
- package/runtime/load-package.d.ts +125 -0
- package/runtime/load-package.d.ts.map +1 -0
- package/runtime/load-package.js +272 -0
- package/runtime/map-package-fetch.d.ts +107 -0
- package/runtime/map-package-fetch.d.ts.map +1 -0
- package/runtime/map-package-fetch.js +336 -0
- package/runtime/map-package-realtime.d.ts +169 -0
- package/runtime/map-package-realtime.d.ts.map +1 -0
- package/runtime/map-package-realtime.js +350 -0
- package/runtime/map-package-validation.d.ts +30 -0
- package/runtime/map-package-validation.d.ts.map +1 -0
- package/runtime/map-package-validation.js +257 -0
- package/runtime/map-package-watch.d.ts +78 -0
- package/runtime/map-package-watch.d.ts.map +1 -0
- package/runtime/map-package-watch.js +695 -0
- package/runtime/map-package.d.ts +167 -0
- package/runtime/map-package.d.ts.map +1 -0
- package/runtime/map-package.js +15 -0
- package/runtime/ogc-styles.d.ts +110 -0
- package/runtime/ogc-styles.d.ts.map +1 -0
- package/runtime/ogc-styles.js +195 -0
- package/runtime/pmtiles-protocol.d.ts +77 -0
- package/runtime/pmtiles-protocol.d.ts.map +1 -0
- package/runtime/pmtiles-protocol.js +120 -0
- package/runtime/popups.d.ts +62 -0
- package/runtime/popups.d.ts.map +1 -0
- package/runtime/popups.js +95 -0
- package/runtime/query-tiles.d.ts +217 -0
- package/runtime/query-tiles.d.ts.map +1 -0
- package/runtime/query-tiles.js +801 -0
- package/runtime/runtime.d.ts +243 -0
- package/runtime/runtime.d.ts.map +1 -0
- package/runtime/runtime.js +1147 -0
- package/runtime/source-bridge.d.ts +99 -0
- package/runtime/source-bridge.d.ts.map +1 -0
- package/runtime/source-bridge.js +428 -0
- package/runtime/style-compose.d.ts +46 -0
- package/runtime/style-compose.d.ts.map +1 -0
- package/runtime/style-compose.js +144 -0
- package/runtime/style-interactions.d.ts +141 -0
- package/runtime/style-interactions.d.ts.map +1 -0
- package/runtime/style-interactions.js +574 -0
- package/runtime/style-spec-validation.d.ts +23 -0
- package/runtime/style-spec-validation.d.ts.map +1 -0
- package/runtime/style-spec-validation.js +357 -0
- package/scene-workspace/analysis-widgets.d.ts +334 -0
- package/scene-workspace/analysis-widgets.d.ts.map +1 -0
- package/scene-workspace/analysis-widgets.js +424 -0
- package/scene-workspace/cesium-adapter.d.ts +438 -0
- package/scene-workspace/cesium-adapter.d.ts.map +1 -0
- package/scene-workspace/cesium-adapter.js +493 -0
- package/scene-workspace/index.d.ts +21 -0
- package/scene-workspace/index.d.ts.map +1 -0
- package/scene-workspace/index.js +14 -0
- package/scene-workspace/primitives.d.ts +162 -0
- package/scene-workspace/primitives.d.ts.map +1 -0
- package/scene-workspace/primitives.js +255 -0
- package/scene-workspace/scene-discovery.d.ts +196 -0
- package/scene-workspace/scene-discovery.d.ts.map +1 -0
- package/scene-workspace/scene-discovery.js +228 -0
- package/scene-workspace/scene-view.d.ts +209 -0
- package/scene-workspace/scene-view.d.ts.map +1 -0
- package/scene-workspace/scene-view.js +267 -0
- package/scene-workspace/types.d.ts +229 -0
- package/scene-workspace/types.d.ts.map +1 -0
- package/scene-workspace/types.js +23 -0
- package/scene-workspace/workspace.d.ts +13 -0
- package/scene-workspace/workspace.d.ts.map +1 -0
- package/scene-workspace/workspace.js +391 -0
- package/share/denial.d.ts +78 -0
- package/share/denial.d.ts.map +1 -0
- package/share/denial.js +61 -0
- package/share/embed-token.d.ts +71 -0
- package/share/embed-token.d.ts.map +1 -0
- package/share/embed-token.js +99 -0
- package/share/index.d.ts +35 -0
- package/share/index.d.ts.map +1 -0
- package/share/index.js +30 -0
- package/share/open-data.d.ts +114 -0
- package/share/open-data.d.ts.map +1 -0
- package/share/open-data.js +81 -0
- package/share/types.d.ts +163 -0
- package/share/types.d.ts.map +1 -0
- package/share/types.js +17 -0
- package/studio/capability-manifest.d.ts +285 -0
- package/studio/capability-manifest.d.ts.map +1 -0
- package/studio/capability-manifest.js +59 -0
- package/studio/chart-spec.d.ts +85 -0
- package/studio/chart-spec.d.ts.map +1 -0
- package/studio/chart-spec.js +106 -0
- package/studio/index.d.ts +34 -0
- package/studio/index.d.ts.map +1 -0
- package/studio/index.js +27 -0
- package/studio/provenance.d.ts +131 -0
- package/studio/provenance.d.ts.map +1 -0
- package/studio/provenance.js +39 -0
- package/studio/publish.d.ts +64 -0
- package/studio/publish.d.ts.map +1 -0
- package/studio/publish.js +13 -0
- package/studio/types.d.ts +278 -0
- package/studio/types.d.ts.map +1 -0
- package/studio/types.js +71 -0
- package/studio/validate.d.ts +45 -0
- package/studio/validate.d.ts.map +1 -0
- package/studio/validate.js +255 -0
- package/studio/validation.d.ts +112 -0
- package/studio/validation.d.ts.map +1 -0
- package/studio/validation.js +42 -0
- package/style/factory.d.ts +30 -0
- package/style/factory.d.ts.map +1 -0
- package/style/factory.js +61 -0
- package/style/index.d.ts +25 -0
- package/style/index.d.ts.map +1 -0
- package/style/index.js +24 -0
- package/style/specification.d.ts +203 -0
- package/style/specification.d.ts.map +1 -0
- package/style/specification.js +178 -0
- package/style/wms-wmts-resolvers.d.ts +38 -0
- package/style/wms-wmts-resolvers.d.ts.map +1 -0
- package/style/wms-wmts-resolvers.js +92 -0
- package/web-components/controller.d.ts +39 -0
- package/web-components/controller.d.ts.map +1 -0
- package/web-components/controller.js +640 -0
- package/web-components/elements.d.ts +210 -0
- package/web-components/elements.d.ts.map +1 -0
- package/web-components/elements.js +1651 -0
- package/web-components/index.d.ts +24 -0
- package/web-components/index.d.ts.map +1 -0
- package/web-components/index.js +22 -0
- package/web-components/maplibre-renderer.d.ts +22 -0
- package/web-components/maplibre-renderer.d.ts.map +1 -0
- package/web-components/maplibre-renderer.js +474 -0
- package/web-components/types.d.ts +397 -0
- package/web-components/types.d.ts.map +1 -0
- package/web-components/types.js +1 -0
- package/webmap/contract.d.ts +28 -0
- package/webmap/contract.d.ts.map +1 -0
- package/webmap/contract.js +130 -0
- package/webmap/convert-basemap.d.ts +17 -0
- package/webmap/convert-basemap.d.ts.map +1 -0
- package/webmap/convert-basemap.js +78 -0
- package/webmap/convert-extent.d.ts +17 -0
- package/webmap/convert-extent.d.ts.map +1 -0
- package/webmap/convert-extent.js +114 -0
- package/webmap/convert-label.d.ts +13 -0
- package/webmap/convert-label.d.ts.map +1 -0
- package/webmap/convert-label.js +125 -0
- package/webmap/convert-layer.d.ts +22 -0
- package/webmap/convert-layer.d.ts.map +1 -0
- package/webmap/convert-layer.js +181 -0
- package/webmap/convert-popup.d.ts +34 -0
- package/webmap/convert-popup.d.ts.map +1 -0
- package/webmap/convert-popup.js +68 -0
- package/webmap/convert-renderer.d.ts +17 -0
- package/webmap/convert-renderer.d.ts.map +1 -0
- package/webmap/convert-renderer.js +161 -0
- package/webmap/convert-symbol.d.ts +17 -0
- package/webmap/convert-symbol.d.ts.map +1 -0
- package/webmap/convert-symbol.js +122 -0
- package/webmap/index.d.ts +44 -0
- package/webmap/index.d.ts.map +1 -0
- package/webmap/index.js +33 -0
- package/webmap/parse.d.ts +25 -0
- package/webmap/parse.d.ts.map +1 -0
- package/webmap/parse.js +83 -0
- package/webmap/types.d.ts +264 -0
- package/webmap/types.d.ts.map +1 -0
- package/webmap/types.js +13 -0
- package/webmap/warnings.d.ts +30 -0
- package/webmap/warnings.d.ts.map +1 -0
- package/webmap/warnings.js +37 -0
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auto-registration of the MapLibre `pmtiles://` protocol.
|
|
3
|
+
*
|
|
4
|
+
* MapLibre GL JS resolves a source `url` of `pmtiles://https://…` by calling a
|
|
5
|
+
* protocol handler registered through `maplibregl.addProtocol("pmtiles", …)`.
|
|
6
|
+
* The `pmtiles` package supplies that handler via its `Protocol` class. This
|
|
7
|
+
* module wires the two together **lazily and idempotently**: the `pmtiles` and
|
|
8
|
+
* `maplibre-gl` packages are only pulled in (`await import(...)`) the first time
|
|
9
|
+
* a PMTiles-backed map is loaded, and registration happens exactly once no
|
|
10
|
+
* matter how many maps attach (MapLibre's protocol registry is process-global,
|
|
11
|
+
* and the `pmtiles.Protocol` instance caches every archive it opens).
|
|
12
|
+
*
|
|
13
|
+
* `loadMapPackage` calls {@link ensurePmtilesProtocol} before `map.setStyle`
|
|
14
|
+
* whenever the composed style references a `pmtiles://` source, so consumers get
|
|
15
|
+
* PMTiles rendering out-of-the-box with no manual `addProtocol` wiring. Adding a
|
|
16
|
+
* PMTiles source to a live map through `runtime.addSource` is synchronous — call
|
|
17
|
+
* {@link ensurePmtilesProtocol} yourself beforehand in that case.
|
|
18
|
+
*
|
|
19
|
+
* The `maplibre-gl` / `pmtiles` slices are injectable so the wiring is
|
|
20
|
+
* unit-testable without either real package.
|
|
21
|
+
*
|
|
22
|
+
* @module
|
|
23
|
+
*/
|
|
24
|
+
/** The default MapLibre protocol scheme PMTiles archives are addressed under. */
|
|
25
|
+
export const PMTILES_PROTOCOL_SCHEME = "pmtiles";
|
|
26
|
+
let registration;
|
|
27
|
+
let inFlight;
|
|
28
|
+
/**
|
|
29
|
+
* Resolve the MapLibre `addProtocol` registrar from the lazily-imported module.
|
|
30
|
+
* MapLibre exposes it both as a named ESM export and off the default namespace;
|
|
31
|
+
* accept either so this works against any v5 packaging.
|
|
32
|
+
*/
|
|
33
|
+
async function loadMaplibreRegistrar() {
|
|
34
|
+
const mod = (await import("maplibre-gl"));
|
|
35
|
+
if (typeof mod.addProtocol === "function") {
|
|
36
|
+
return { addProtocol: mod.addProtocol, removeProtocol: mod.removeProtocol };
|
|
37
|
+
}
|
|
38
|
+
if (mod.default && typeof mod.default.addProtocol === "function") {
|
|
39
|
+
return mod.default;
|
|
40
|
+
}
|
|
41
|
+
throw new Error("maplibre-gl does not expose addProtocol(); ensure maplibre-gl >= 2 is installed.");
|
|
42
|
+
}
|
|
43
|
+
async function loadPmtilesModule() {
|
|
44
|
+
return (await import("pmtiles"));
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Register the `pmtiles://` protocol on MapLibre if it has not been registered
|
|
48
|
+
* already. Idempotent: repeated calls (including from multiple maps loading
|
|
49
|
+
* concurrently) share a single registration and a single in-flight import.
|
|
50
|
+
*
|
|
51
|
+
* Returns once the protocol is registered so callers can `await` it before
|
|
52
|
+
* handing a `pmtiles://`-referencing style to `map.setStyle`.
|
|
53
|
+
*/
|
|
54
|
+
export async function ensurePmtilesProtocol(deps = {}) {
|
|
55
|
+
const scheme = deps.scheme ?? PMTILES_PROTOCOL_SCHEME;
|
|
56
|
+
if (registration && registration.scheme === scheme)
|
|
57
|
+
return;
|
|
58
|
+
if (inFlight)
|
|
59
|
+
return inFlight;
|
|
60
|
+
inFlight = (async () => {
|
|
61
|
+
const registrar = deps.maplibre ?? (await loadMaplibreRegistrar());
|
|
62
|
+
const pmtilesModule = deps.pmtilesModule ?? (await loadPmtilesModule());
|
|
63
|
+
// `metadata: true` lets MapLibre auto-populate source attribution and the
|
|
64
|
+
// inspect surface from the archive header without a second wiring step.
|
|
65
|
+
const protocol = new pmtilesModule.Protocol({ metadata: true });
|
|
66
|
+
registrar.addProtocol(scheme, protocol.tile);
|
|
67
|
+
registration = { scheme, registrar, protocol };
|
|
68
|
+
})();
|
|
69
|
+
try {
|
|
70
|
+
await inFlight;
|
|
71
|
+
}
|
|
72
|
+
finally {
|
|
73
|
+
inFlight = undefined;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
/** Whether the `pmtiles://` protocol (or `scheme`) is currently registered. */
|
|
77
|
+
export function isPmtilesProtocolRegistered(scheme = PMTILES_PROTOCOL_SCHEME) {
|
|
78
|
+
return registration?.scheme === scheme;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Tear down a prior {@link ensurePmtilesProtocol} registration. Primarily a test
|
|
82
|
+
* seam so the module-global registration does not leak between cases; also
|
|
83
|
+
* useful if a host wants to fully release the protocol. Best-effort — a
|
|
84
|
+
* registrar without `removeProtocol` just clears the local record.
|
|
85
|
+
*/
|
|
86
|
+
export function resetPmtilesProtocol() {
|
|
87
|
+
if (registration) {
|
|
88
|
+
registration.registrar.removeProtocol?.(registration.scheme);
|
|
89
|
+
registration = undefined;
|
|
90
|
+
}
|
|
91
|
+
inFlight = undefined;
|
|
92
|
+
}
|
|
93
|
+
function sourceReferencesPmtiles(source, scheme) {
|
|
94
|
+
if (!source || typeof source !== "object")
|
|
95
|
+
return false;
|
|
96
|
+
const prefix = `${scheme}://`;
|
|
97
|
+
const url = source.url;
|
|
98
|
+
if (typeof url === "string" && url.startsWith(prefix))
|
|
99
|
+
return true;
|
|
100
|
+
const tiles = source.tiles;
|
|
101
|
+
if (Array.isArray(tiles) && tiles.some((tile) => typeof tile === "string" && tile.startsWith(prefix))) {
|
|
102
|
+
return true;
|
|
103
|
+
}
|
|
104
|
+
return false;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Whether a composed MapLibre style references at least one `pmtiles://` source.
|
|
108
|
+
* Used by `loadMapPackage` to decide whether the protocol must be registered
|
|
109
|
+
* before `map.setStyle`.
|
|
110
|
+
*/
|
|
111
|
+
export function styleUsesPmtiles(style, scheme = PMTILES_PROTOCOL_SCHEME) {
|
|
112
|
+
const sources = style?.sources;
|
|
113
|
+
if (!sources)
|
|
114
|
+
return false;
|
|
115
|
+
for (const source of Object.values(sources)) {
|
|
116
|
+
if (sourceReferencesPmtiles(source, scheme))
|
|
117
|
+
return true;
|
|
118
|
+
}
|
|
119
|
+
return false;
|
|
120
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Popup bindings. The runtime wires `MapPackage.popupBindings[]` into
|
|
3
|
+
* MapLibre `click` handlers using a duck-typed map interface (no runtime
|
|
4
|
+
* dependency on `maplibre-gl`). The default DOM renderer is intentionally
|
|
5
|
+
* unstyled — `#29` operator components replace it with richer popup UIs.
|
|
6
|
+
*
|
|
7
|
+
* @module
|
|
8
|
+
*/
|
|
9
|
+
import type { MapEventTarget } from "../interactions/feature-state.js";
|
|
10
|
+
import type { HonuaMapPackagePopupBinding } from "./map-package.js";
|
|
11
|
+
/**
|
|
12
|
+
* Minimal subset of `maplibre-gl.Popup` needed to open a popup at
|
|
13
|
+
* click coordinates. Any object implementing these methods works.
|
|
14
|
+
*/
|
|
15
|
+
export interface PopupHandle {
|
|
16
|
+
setLngLat(coord: [number, number]): this;
|
|
17
|
+
setDOMContent(node: Node): this;
|
|
18
|
+
setHTML(html: string): this;
|
|
19
|
+
addTo(map: unknown): this;
|
|
20
|
+
remove(): void;
|
|
21
|
+
}
|
|
22
|
+
/** Factory a host supplies so the runtime never imports `maplibre-gl` directly. */
|
|
23
|
+
export type PopupFactory = () => PopupHandle;
|
|
24
|
+
/** Custom popup renderer that receives the click event features. */
|
|
25
|
+
export type PopupRenderer = (context: PopupRenderContext) => Node | string | undefined;
|
|
26
|
+
export interface PopupRenderContext {
|
|
27
|
+
binding: HonuaMapPackagePopupBinding;
|
|
28
|
+
features: ReadonlyArray<PopupFeature>;
|
|
29
|
+
lngLat: [number, number];
|
|
30
|
+
}
|
|
31
|
+
export interface PopupFeature {
|
|
32
|
+
id?: string | number;
|
|
33
|
+
properties?: Record<string, unknown>;
|
|
34
|
+
geometry?: unknown;
|
|
35
|
+
}
|
|
36
|
+
export interface BindPopupOptions {
|
|
37
|
+
binding: HonuaMapPackagePopupBinding;
|
|
38
|
+
/** MapLibre layer id to listen to for clicks. */
|
|
39
|
+
layerId: string;
|
|
40
|
+
/** Create a new popup handle (usually `new maplibregl.Popup()`). */
|
|
41
|
+
popupFactory: PopupFactory;
|
|
42
|
+
/** Custom renderer; defaults to unstyled key/value list. */
|
|
43
|
+
render?: PopupRenderer;
|
|
44
|
+
}
|
|
45
|
+
/** Handle returned by {@link bindPopup} — call `remove()` on teardown. */
|
|
46
|
+
export interface PopupBindingHandle {
|
|
47
|
+
remove(): void;
|
|
48
|
+
readonly layerId: string;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Subscribe to `click` events on `layerId` and render a popup at the
|
|
52
|
+
* click point. Assumes the host passes a map that matches `MapEventTarget`
|
|
53
|
+
* (all MapLibre `Map` instances do).
|
|
54
|
+
*/
|
|
55
|
+
export declare function bindPopup(map: MapEventTarget & {}, options: BindPopupOptions): PopupBindingHandle;
|
|
56
|
+
/**
|
|
57
|
+
* Default renderer: an unstyled `<dl>` list of `binding.fieldName` (when
|
|
58
|
+
* set) or all properties on the first feature. Use a custom renderer for
|
|
59
|
+
* anything production-quality.
|
|
60
|
+
*/
|
|
61
|
+
export declare function defaultPopupRenderer(context: PopupRenderContext): Node | undefined;
|
|
62
|
+
//# sourceMappingURL=popups.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"popups.d.ts","sourceRoot":"","sources":["../../../src/runtime/popups.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AACvE,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,kBAAkB,CAAC;AAEpE;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IACzC,aAAa,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;IAChC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,KAAK,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IAC1B,MAAM,IAAI,IAAI,CAAC;CAChB;AAED,mFAAmF;AACnF,MAAM,MAAM,YAAY,GAAG,MAAM,WAAW,CAAC;AAE7C,oEAAoE;AACpE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,kBAAkB,KAAK,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC;AAEvF,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,2BAA2B,CAAC;IACrC,QAAQ,EAAE,aAAa,CAAC,YAAY,CAAC,CAAC;IACtC,MAAM,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1B;AAED,MAAM,WAAW,YAAY;IAC3B,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,2BAA2B,CAAC;IACrC,iDAAiD;IACjD,OAAO,EAAE,MAAM,CAAC;IAChB,oEAAoE;IACpE,YAAY,EAAE,YAAY,CAAC;IAC3B,4DAA4D;IAC5D,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAED,0EAA0E;AAC1E,MAAM,WAAW,kBAAkB;IACjC,MAAM,IAAI,IAAI,CAAC;IACf,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CACvB,GAAG,EAAE,cAAc,GAAG,EAErB,EACD,OAAO,EAAE,gBAAgB,GACxB,kBAAkB,CAkCpB;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,CAoClF"}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Popup bindings. The runtime wires `MapPackage.popupBindings[]` into
|
|
3
|
+
* MapLibre `click` handlers using a duck-typed map interface (no runtime
|
|
4
|
+
* dependency on `maplibre-gl`). The default DOM renderer is intentionally
|
|
5
|
+
* unstyled — `#29` operator components replace it with richer popup UIs.
|
|
6
|
+
*
|
|
7
|
+
* @module
|
|
8
|
+
*/
|
|
9
|
+
/**
|
|
10
|
+
* Subscribe to `click` events on `layerId` and render a popup at the
|
|
11
|
+
* click point. Assumes the host passes a map that matches `MapEventTarget`
|
|
12
|
+
* (all MapLibre `Map` instances do).
|
|
13
|
+
*/
|
|
14
|
+
export function bindPopup(map, options) {
|
|
15
|
+
const { binding, layerId, popupFactory, render = defaultPopupRenderer } = options;
|
|
16
|
+
let current;
|
|
17
|
+
function onClick(...args) {
|
|
18
|
+
const event = args[0];
|
|
19
|
+
if (!event?.lngLat || !event.features || event.features.length === 0)
|
|
20
|
+
return;
|
|
21
|
+
const lngLat = [event.lngLat.lng, event.lngLat.lat];
|
|
22
|
+
const rendered = render({ binding, features: event.features, lngLat });
|
|
23
|
+
if (!rendered)
|
|
24
|
+
return;
|
|
25
|
+
current?.remove();
|
|
26
|
+
current = popupFactory().setLngLat(lngLat);
|
|
27
|
+
if (typeof rendered === "string")
|
|
28
|
+
current.setHTML(rendered);
|
|
29
|
+
else
|
|
30
|
+
current.setDOMContent(rendered);
|
|
31
|
+
current.addTo(map);
|
|
32
|
+
}
|
|
33
|
+
map.on("click", layerId, onClick);
|
|
34
|
+
return {
|
|
35
|
+
layerId,
|
|
36
|
+
remove() {
|
|
37
|
+
current?.remove();
|
|
38
|
+
current = undefined;
|
|
39
|
+
map.off("click", layerId, onClick);
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Default renderer: an unstyled `<dl>` list of `binding.fieldName` (when
|
|
45
|
+
* set) or all properties on the first feature. Use a custom renderer for
|
|
46
|
+
* anything production-quality.
|
|
47
|
+
*/
|
|
48
|
+
export function defaultPopupRenderer(context) {
|
|
49
|
+
const doc = resolveDocument();
|
|
50
|
+
if (!doc)
|
|
51
|
+
return undefined;
|
|
52
|
+
const root = doc.createElement("div");
|
|
53
|
+
if (context.binding.title) {
|
|
54
|
+
const title = doc.createElement("h3");
|
|
55
|
+
title.textContent = context.binding.title;
|
|
56
|
+
root.appendChild(title);
|
|
57
|
+
}
|
|
58
|
+
const feature = context.features[0];
|
|
59
|
+
if (!feature || !feature.properties)
|
|
60
|
+
return root;
|
|
61
|
+
if (context.binding.template) {
|
|
62
|
+
const body = doc.createElement("div");
|
|
63
|
+
body.textContent = renderStringTemplate(context.binding.template, feature.properties);
|
|
64
|
+
root.appendChild(body);
|
|
65
|
+
return root;
|
|
66
|
+
}
|
|
67
|
+
const fields = context.binding.fieldName
|
|
68
|
+
? [context.binding.fieldName].filter((f) => Object.hasOwn(feature.properties ?? {}, f))
|
|
69
|
+
: Object.keys(feature.properties);
|
|
70
|
+
const dl = doc.createElement("dl");
|
|
71
|
+
for (const field of fields) {
|
|
72
|
+
const dt = doc.createElement("dt");
|
|
73
|
+
dt.textContent = field;
|
|
74
|
+
const dd = doc.createElement("dd");
|
|
75
|
+
dd.textContent = String(feature.properties[field]);
|
|
76
|
+
dl.appendChild(dt);
|
|
77
|
+
dl.appendChild(dd);
|
|
78
|
+
}
|
|
79
|
+
root.appendChild(dl);
|
|
80
|
+
return root;
|
|
81
|
+
}
|
|
82
|
+
function renderStringTemplate(template, properties) {
|
|
83
|
+
// [^{}] (not [^}]) keeps candidate matches non-overlapping so the scan stays
|
|
84
|
+
// linear on adversarial input like "{{{{…" (CodeQL js/polynomial-redos), and
|
|
85
|
+
// stops a stray "{" from being swallowed into the preceding placeholder key.
|
|
86
|
+
return template.replace(/\{([^{}]+)\}/g, (_, key) => {
|
|
87
|
+
const value = properties[key];
|
|
88
|
+
return value === undefined || value === null ? "" : String(value);
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
function resolveDocument() {
|
|
92
|
+
if (typeof document !== "undefined")
|
|
93
|
+
return document;
|
|
94
|
+
return undefined;
|
|
95
|
+
}
|
|
@@ -0,0 +1,217 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Runtime helpers for query-backed vector tile sources.
|
|
3
|
+
*
|
|
4
|
+
* This module is MapLibre-shaped but does not import `maplibre-gl`.
|
|
5
|
+
* Callers can use the pure source-spec helpers, or the request controller
|
|
6
|
+
* when they need explicit viewport/tile lifecycle management outside
|
|
7
|
+
* MapLibre's built-in source loader.
|
|
8
|
+
*
|
|
9
|
+
* @module
|
|
10
|
+
*/
|
|
11
|
+
import { type QueryTileCacheKeyOptions, type QueryTileCachePolicy, type QueryTileEndpointDescriptor, type QueryTileFeatureDetailResponse, type QueryTileFeatureIdentityTarget, type QueryTileJson, type QueryTileKey, type QueryTileKeyInput, type QueryTileServerCacheValidators, type QueryTileServerDegradation, type QueryTileServerErrorResponse, type QueryTileServerRequestParameters, type QueryTileSourceDescriptor } from "../contract/tiles.js";
|
|
12
|
+
import type { Capability, Protocol } from "../contract/types.js";
|
|
13
|
+
export interface MapLibreQueryTileSourceSpec {
|
|
14
|
+
type: "vector";
|
|
15
|
+
tiles?: string[];
|
|
16
|
+
url?: string;
|
|
17
|
+
scheme?: "xyz" | "tms";
|
|
18
|
+
tileSize?: number;
|
|
19
|
+
minzoom?: number;
|
|
20
|
+
maxzoom?: number;
|
|
21
|
+
bounds?: readonly [number, number, number, number];
|
|
22
|
+
attribution?: string;
|
|
23
|
+
promoteId?: string | Readonly<Record<string, string>>;
|
|
24
|
+
volatile?: boolean;
|
|
25
|
+
}
|
|
26
|
+
export interface QueryTileUrlTemplateOptions {
|
|
27
|
+
endpoint?: QueryTileEndpointDescriptor;
|
|
28
|
+
cache?: QueryTileCacheKeyOptions["cache"];
|
|
29
|
+
includeCacheKey?: boolean;
|
|
30
|
+
extraParams?: Readonly<Record<string, string | number | boolean | undefined>>;
|
|
31
|
+
}
|
|
32
|
+
export interface QueryTileSourceSpecOptions extends QueryTileUrlTemplateOptions {
|
|
33
|
+
useTileJsonUrl?: boolean;
|
|
34
|
+
volatile?: boolean;
|
|
35
|
+
}
|
|
36
|
+
export type QueryTileServerFetch = (input: string | URL | Request, init?: RequestInit) => Promise<Response>;
|
|
37
|
+
export interface QueryTileServerFetchOptions {
|
|
38
|
+
fetch?: QueryTileServerFetch;
|
|
39
|
+
headers?: HeadersInit;
|
|
40
|
+
signal?: AbortSignal;
|
|
41
|
+
credentials?: RequestCredentials;
|
|
42
|
+
validators?: QueryTileServerCacheValidators;
|
|
43
|
+
}
|
|
44
|
+
export interface FetchQueryTileJsonOptions extends QueryTileUrlTemplateOptions, QueryTileServerFetchOptions {
|
|
45
|
+
url?: string;
|
|
46
|
+
routePrefix?: string;
|
|
47
|
+
params?: QueryTileServerRequestParameters;
|
|
48
|
+
}
|
|
49
|
+
export interface FetchQueryTileFeatureDetailOptions extends QueryTileServerFetchOptions {
|
|
50
|
+
url?: string;
|
|
51
|
+
routePrefix?: string;
|
|
52
|
+
params?: QueryTileServerRequestParameters;
|
|
53
|
+
extraParams?: Readonly<Record<string, string | number | boolean | undefined>>;
|
|
54
|
+
}
|
|
55
|
+
export interface QueryTileJsonFetchResult {
|
|
56
|
+
url: string;
|
|
57
|
+
status: number;
|
|
58
|
+
notModified: boolean;
|
|
59
|
+
validators: QueryTileServerCacheValidators;
|
|
60
|
+
tilejson?: QueryTileJson;
|
|
61
|
+
degraded?: readonly QueryTileServerDegradation[];
|
|
62
|
+
}
|
|
63
|
+
export interface QueryTileFeatureDetailFetchResult<T = Record<string, unknown>> {
|
|
64
|
+
url: string;
|
|
65
|
+
status: number;
|
|
66
|
+
notModified: boolean;
|
|
67
|
+
validators: QueryTileServerCacheValidators;
|
|
68
|
+
detail?: QueryTileFeatureDetailResponse<T>;
|
|
69
|
+
degraded?: readonly QueryTileServerDegradation[];
|
|
70
|
+
}
|
|
71
|
+
export declare class QueryTileServerResponseError extends Error {
|
|
72
|
+
readonly status: number;
|
|
73
|
+
readonly url: string;
|
|
74
|
+
readonly response: QueryTileServerErrorResponse | undefined;
|
|
75
|
+
readonly body: unknown;
|
|
76
|
+
readonly validators: QueryTileServerCacheValidators;
|
|
77
|
+
constructor(options: {
|
|
78
|
+
status: number;
|
|
79
|
+
url: string;
|
|
80
|
+
message: string;
|
|
81
|
+
response?: QueryTileServerErrorResponse;
|
|
82
|
+
body?: unknown;
|
|
83
|
+
validators?: QueryTileServerCacheValidators;
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
export interface QueryTileViewport {
|
|
87
|
+
/** `[west, south, east, north]` in WGS84 degrees. */
|
|
88
|
+
bounds: readonly [number, number, number, number];
|
|
89
|
+
zoom: number;
|
|
90
|
+
minzoom?: number;
|
|
91
|
+
maxzoom?: number;
|
|
92
|
+
maxTiles?: number;
|
|
93
|
+
}
|
|
94
|
+
export type QueryTileDiagnosticSeverity = "info" | "warning" | "error";
|
|
95
|
+
export type QueryTileDiagnosticCode = "tile-pushdown-supported" | "tile-pushdown-unavailable" | "fallback-enabled" | "fallback-disabled" | "unsupported-protocol" | "analytics-tile-pushdown-supported" | "analytics-tile-pushdown-unavailable" | "client-materialization-disabled" | "missing-tile-endpoint" | "missing-cache-scope" | "unbounded-cache";
|
|
96
|
+
export interface QueryTileDiagnostic {
|
|
97
|
+
severity: QueryTileDiagnosticSeverity;
|
|
98
|
+
code: QueryTileDiagnosticCode;
|
|
99
|
+
message: string;
|
|
100
|
+
sourceId: string;
|
|
101
|
+
descriptorId: string;
|
|
102
|
+
protocol?: Protocol;
|
|
103
|
+
capability?: Capability;
|
|
104
|
+
}
|
|
105
|
+
export interface QueryTileRequest {
|
|
106
|
+
descriptor: QueryTileSourceDescriptor;
|
|
107
|
+
tileKey: QueryTileKey;
|
|
108
|
+
cacheKey: string;
|
|
109
|
+
url: string;
|
|
110
|
+
signal: AbortSignal;
|
|
111
|
+
}
|
|
112
|
+
export type QueryTileFetcher<T> = (request: QueryTileRequest) => Promise<T>;
|
|
113
|
+
export type QueryTileLifecycleEvent<T = unknown> = {
|
|
114
|
+
type: "tile-requested";
|
|
115
|
+
descriptorId: string;
|
|
116
|
+
sourceId: string;
|
|
117
|
+
tileKey: QueryTileKey;
|
|
118
|
+
cacheKey: string;
|
|
119
|
+
url: string;
|
|
120
|
+
} | {
|
|
121
|
+
type: "tile-cache-hit";
|
|
122
|
+
descriptorId: string;
|
|
123
|
+
sourceId: string;
|
|
124
|
+
tileKey: QueryTileKey;
|
|
125
|
+
cacheKey: string;
|
|
126
|
+
value: T;
|
|
127
|
+
} | {
|
|
128
|
+
type: "tile-loaded";
|
|
129
|
+
descriptorId: string;
|
|
130
|
+
sourceId: string;
|
|
131
|
+
tileKey: QueryTileKey;
|
|
132
|
+
cacheKey: string;
|
|
133
|
+
value: T;
|
|
134
|
+
} | {
|
|
135
|
+
type: "tile-aborted";
|
|
136
|
+
descriptorId: string;
|
|
137
|
+
sourceId: string;
|
|
138
|
+
tileKey: QueryTileKey;
|
|
139
|
+
cacheKey: string;
|
|
140
|
+
reason?: unknown;
|
|
141
|
+
} | {
|
|
142
|
+
type: "tile-error";
|
|
143
|
+
descriptorId: string;
|
|
144
|
+
sourceId: string;
|
|
145
|
+
tileKey: QueryTileKey;
|
|
146
|
+
cacheKey: string;
|
|
147
|
+
error: unknown;
|
|
148
|
+
} | {
|
|
149
|
+
type: "tile-evicted";
|
|
150
|
+
descriptorId: string;
|
|
151
|
+
sourceId: string;
|
|
152
|
+
tileKey: QueryTileKey;
|
|
153
|
+
cacheKey: string;
|
|
154
|
+
reason: "invalidate" | "lru" | "clear";
|
|
155
|
+
};
|
|
156
|
+
export type QueryTileLifecycleListener<T = unknown> = (event: QueryTileLifecycleEvent<T>) => void;
|
|
157
|
+
export interface QueryTileRequestControllerOptions<T> {
|
|
158
|
+
fetchTile: QueryTileFetcher<T>;
|
|
159
|
+
cache?: QueryTileCachePolicy;
|
|
160
|
+
onEvent?: QueryTileLifecycleListener<T>;
|
|
161
|
+
}
|
|
162
|
+
export interface QueryTileRequestTileOptions {
|
|
163
|
+
signal?: AbortSignal;
|
|
164
|
+
cache?: QueryTileCacheKeyOptions["cache"];
|
|
165
|
+
}
|
|
166
|
+
export interface QueryTileViewportRequestOptions extends QueryTileRequestTileOptions {
|
|
167
|
+
abortOutOfViewport?: boolean;
|
|
168
|
+
concurrency?: number;
|
|
169
|
+
}
|
|
170
|
+
export interface QueryTileViewportRequestResult<T> {
|
|
171
|
+
viewport: QueryTileViewport;
|
|
172
|
+
tiles: readonly QueryTileKey[];
|
|
173
|
+
results: readonly PromiseSettledResult<T>[];
|
|
174
|
+
diagnostics: readonly QueryTileDiagnostic[];
|
|
175
|
+
}
|
|
176
|
+
export interface QueryTileCacheSnapshot {
|
|
177
|
+
entries: number;
|
|
178
|
+
inflight: number;
|
|
179
|
+
maxEntries: number | undefined;
|
|
180
|
+
tileKeys: readonly string[];
|
|
181
|
+
}
|
|
182
|
+
/** Build a MapLibre-compatible TileJSON document from a query tile descriptor. */
|
|
183
|
+
export declare function buildQueryTileJson<T = Record<string, unknown>>(descriptor: QueryTileSourceDescriptor<T>, options?: QueryTileUrlTemplateOptions): QueryTileJson;
|
|
184
|
+
/** Build a MapLibre vector source spec using TileJSON URL or inline tile template metadata. */
|
|
185
|
+
export declare function buildMapLibreQueryTileSourceSpec<T = Record<string, unknown>>(descriptor: QueryTileSourceDescriptor<T>, options?: QueryTileSourceSpecOptions): MapLibreQueryTileSourceSpec;
|
|
186
|
+
/** Build a URL template with MapLibre `{z}` / `{x}` / `{y}` placeholders. */
|
|
187
|
+
export declare function buildQueryTileUrlTemplate<T = Record<string, unknown>>(descriptor: QueryTileSourceDescriptor<T>, options?: QueryTileUrlTemplateOptions): string;
|
|
188
|
+
/** Substitute one normalized tile key into a query tile URL template. */
|
|
189
|
+
export declare function buildQueryTileUrl<T = Record<string, unknown>>(descriptor: QueryTileSourceDescriptor<T>, tileKey: QueryTileKeyInput, options?: QueryTileUrlTemplateOptions): string;
|
|
190
|
+
/** Fetch and validate TileJSON from a dynamic query tile server. */
|
|
191
|
+
export declare function fetchQueryTileJson<T = Record<string, unknown>>(descriptor: QueryTileSourceDescriptor<T>, options?: FetchQueryTileJsonOptions): Promise<QueryTileJsonFetchResult>;
|
|
192
|
+
/** Fetch and validate a source-qualified feature-detail response from a query tile server. */
|
|
193
|
+
export declare function fetchQueryTileFeatureDetail<T = Record<string, unknown>>(descriptor: QueryTileSourceDescriptor<T>, target: QueryTileFeatureIdentityTarget, options?: FetchQueryTileFeatureDetailOptions): Promise<QueryTileFeatureDetailFetchResult<T>>;
|
|
194
|
+
/** Compute visible XYZ tiles for a WGS84 bounds + zoom viewport. */
|
|
195
|
+
export declare function queryTilesForViewport(viewport: QueryTileViewport): readonly QueryTileKey[];
|
|
196
|
+
/** Diagnose protocol support, fallback behavior, and cache observability gaps. */
|
|
197
|
+
export declare function diagnoseQueryTileSourceSupport<T = Record<string, unknown>>(descriptor: QueryTileSourceDescriptor<T>): readonly QueryTileDiagnostic[];
|
|
198
|
+
export declare function createQueryTileRequestController<T = unknown>(descriptor: QueryTileSourceDescriptor, options: QueryTileRequestControllerOptions<T>): QueryTileRequestController<T>;
|
|
199
|
+
/** Viewport-aware tile request manager with abortable inflight requests and bounded cache. */
|
|
200
|
+
export declare class QueryTileRequestController<T = unknown> {
|
|
201
|
+
#private;
|
|
202
|
+
readonly descriptor: QueryTileSourceDescriptor;
|
|
203
|
+
constructor(descriptor: QueryTileSourceDescriptor, options: QueryTileRequestControllerOptions<T>);
|
|
204
|
+
requestTile(tileKey: QueryTileKeyInput, options?: QueryTileRequestTileOptions): Promise<T>;
|
|
205
|
+
requestViewport(viewport: QueryTileViewport, options?: QueryTileViewportRequestOptions): Promise<QueryTileViewportRequestResult<T>>;
|
|
206
|
+
abort(tileKey?: QueryTileKeyInput, reason?: unknown): void;
|
|
207
|
+
invalidate(predicate?: (entry: {
|
|
208
|
+
cacheKey: string;
|
|
209
|
+
tileKey: QueryTileKey;
|
|
210
|
+
value: T;
|
|
211
|
+
}) => boolean): number;
|
|
212
|
+
clearCache(): void;
|
|
213
|
+
dispose(): void;
|
|
214
|
+
cacheSnapshot(): QueryTileCacheSnapshot;
|
|
215
|
+
diagnostics(): readonly QueryTileDiagnostic[];
|
|
216
|
+
}
|
|
217
|
+
//# sourceMappingURL=query-tiles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"query-tiles.d.ts","sourceRoot":"","sources":["../../../src/runtime/query-tiles.ts"],"names":[],"mappings":"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"}
|