@deck.gl/carto 9.0.0-alpha.7 → 9.0.0-beta.10
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/{typed → dist}/api/carto-api-error.d.ts +1 -1
- package/dist/api/carto-api-error.d.ts.map +1 -0
- package/dist/api/carto-api-error.js +47 -0
- package/{typed → dist}/api/common.d.ts +1 -2
- package/{typed → dist}/api/common.d.ts.map +1 -1
- package/dist/{esm/api → api}/common.js +4 -6
- package/{typed → dist}/api/endpoints.d.ts +1 -1
- package/dist/api/endpoints.d.ts.map +1 -0
- package/dist/api/endpoints.js +22 -0
- package/{typed → dist}/api/fetch-map.d.ts.map +1 -1
- package/dist/api/fetch-map.js +196 -0
- package/dist/api/index.d.ts +7 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +3 -0
- package/{typed → dist}/api/layer-map.d.ts +6 -6
- package/dist/api/layer-map.d.ts.map +1 -0
- package/dist/api/layer-map.js +373 -0
- package/dist/api/parse-map.js +250 -0
- package/{typed → dist}/api/query.d.ts +1 -1
- package/dist/api/query.d.ts.map +1 -0
- package/dist/api/query.js +24 -0
- package/{typed → dist}/api/request-with-parameters.d.ts +1 -1
- package/dist/api/request-with-parameters.d.ts.map +1 -0
- package/dist/api/request-with-parameters.js +53 -0
- package/{typed → dist}/api/types.d.ts +18 -1
- package/dist/api/types.d.ts.map +1 -0
- package/dist/api/types.js +20 -0
- package/dist/basemap.js +9 -0
- package/dist/cartoRasterTile-worker.js +6 -9
- package/dist/cartoSpatialTile-worker.js +3 -3
- package/dist/cartoVectorTile-worker.js +3 -3
- package/dist/constants.d.ts +5 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +4 -0
- package/dist/dist.dev.js +1297 -1101
- package/dist/index.cjs +2700 -0
- package/dist/index.cjs.map +7 -0
- package/dist/index.d.ts +37 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +34 -0
- package/{typed → dist}/layers/h3-tile-layer.d.ts +2 -2
- package/dist/layers/h3-tile-layer.d.ts.map +1 -0
- package/dist/layers/h3-tile-layer.js +66 -0
- package/dist/layers/h3-tileset-2d.js +99 -0
- package/dist/layers/point-label-layer.js +150 -0
- package/dist/layers/quadbin-layer.js +21 -0
- package/{typed → dist}/layers/quadbin-tile-layer.d.ts +3 -3
- package/dist/layers/quadbin-tile-layer.d.ts.map +1 -0
- package/dist/layers/quadbin-tile-layer.js +49 -0
- package/dist/layers/quadbin-tileset-2d.js +27 -0
- package/dist/layers/quadbin-utils.js +21 -0
- package/dist/layers/raster-layer-vertex.glsl.d.ts +3 -0
- package/dist/layers/raster-layer-vertex.glsl.js +68 -0
- package/{typed → dist}/layers/raster-layer.d.ts.map +1 -1
- package/dist/layers/raster-layer.js +95 -0
- package/{typed → dist}/layers/raster-tile-layer.d.ts +3 -3
- package/dist/layers/raster-tile-layer.d.ts.map +1 -0
- package/dist/layers/raster-tile-layer.js +45 -0
- package/dist/layers/schema/carto-properties-tile-loader.js +21 -0
- package/{typed → dist}/layers/schema/carto-properties-tile.d.ts +1 -1
- package/dist/layers/schema/carto-properties-tile.d.ts.map +1 -0
- package/dist/layers/schema/carto-properties-tile.js +14 -0
- package/{typed → dist}/layers/schema/carto-raster-tile-loader.d.ts +3 -3
- package/dist/layers/schema/carto-raster-tile-loader.d.ts.map +1 -0
- package/dist/layers/schema/carto-raster-tile-loader.js +35 -0
- package/{typed → dist}/layers/schema/carto-raster-tile.d.ts.map +1 -1
- package/dist/layers/schema/carto-raster-tile.js +44 -0
- package/dist/layers/schema/carto-spatial-tile-loader.js +35 -0
- package/{typed → dist}/layers/schema/carto-spatial-tile.d.ts +2 -2
- package/dist/layers/schema/carto-spatial-tile.d.ts.map +1 -0
- package/dist/layers/schema/carto-spatial-tile.js +38 -0
- package/dist/layers/schema/carto-tile.js +187 -0
- package/dist/layers/schema/carto-vector-tile-loader.js +65 -0
- package/dist/layers/schema/fast-pbf.js +7 -0
- package/dist/layers/schema/spatialjson-utils.js +15 -0
- package/dist/layers/schema/tile-loader-utils.js +6 -0
- package/{typed → dist}/layers/spatial-index-tile-layer.d.ts +1 -1
- package/{typed → dist}/layers/spatial-index-tile-layer.d.ts.map +1 -1
- package/dist/layers/spatial-index-tile-layer.js +67 -0
- package/{typed → dist}/layers/utils.d.ts +3 -3
- package/dist/layers/utils.d.ts.map +1 -0
- package/dist/layers/utils.js +74 -0
- package/{typed → dist}/layers/vector-tile-layer.d.ts +6 -5
- package/dist/layers/vector-tile-layer.d.ts.map +1 -0
- package/dist/layers/vector-tile-layer.js +104 -0
- package/{typed → dist}/sources/base-source.d.ts +2 -2
- package/dist/sources/base-source.d.ts.map +1 -0
- package/dist/sources/base-source.js +53 -0
- package/dist/sources/boundary-query-source.d.ts +11 -0
- package/dist/sources/boundary-query-source.d.ts.map +1 -0
- package/dist/sources/boundary-query-source.js +19 -0
- package/{typed → dist}/sources/boundary-table-source.d.ts +2 -2
- package/dist/sources/boundary-table-source.d.ts.map +1 -0
- package/dist/sources/boundary-table-source.js +16 -0
- package/{typed → dist}/sources/h3-query-source.d.ts +1 -1
- package/dist/sources/h3-query-source.d.ts.map +1 -0
- package/dist/sources/h3-query-source.js +19 -0
- package/{typed → dist}/sources/h3-table-source.d.ts +1 -1
- package/dist/sources/h3-table-source.d.ts.map +1 -0
- package/dist/sources/h3-table-source.js +16 -0
- package/{typed → dist}/sources/h3-tileset-source.d.ts +1 -1
- package/dist/sources/h3-tileset-source.d.ts.map +1 -0
- package/dist/sources/h3-tileset-source.js +6 -0
- package/dist/sources/index.d.ts +28 -0
- package/dist/sources/index.d.ts.map +1 -0
- package/dist/sources/index.js +13 -0
- package/{typed → dist}/sources/quadbin-query-source.d.ts +1 -1
- package/dist/sources/quadbin-query-source.d.ts.map +1 -0
- package/dist/sources/quadbin-query-source.js +19 -0
- package/{typed → dist}/sources/quadbin-table-source.d.ts +1 -1
- package/dist/sources/quadbin-table-source.d.ts.map +1 -0
- package/dist/sources/quadbin-table-source.js +16 -0
- package/{typed → dist}/sources/quadbin-tileset-source.d.ts +1 -1
- package/{typed → dist}/sources/quadbin-tileset-source.d.ts.map +1 -1
- package/dist/sources/quadbin-tileset-source.js +6 -0
- package/{typed → dist}/sources/raster-source.d.ts +1 -1
- package/dist/sources/raster-source.d.ts.map +1 -0
- package/dist/sources/raster-source.js +6 -0
- package/{typed → dist}/sources/types.d.ts +45 -7
- package/dist/sources/types.d.ts.map +1 -0
- package/dist/sources/types.js +1 -0
- package/dist/sources/vector-query-source.d.ts +4 -0
- package/dist/sources/vector-query-source.d.ts.map +1 -0
- package/dist/sources/vector-query-source.js +22 -0
- package/dist/sources/vector-table-source.d.ts +4 -0
- package/dist/sources/vector-table-source.d.ts.map +1 -0
- package/dist/sources/vector-table-source.js +19 -0
- package/{typed → dist}/sources/vector-tileset-source.d.ts +1 -1
- package/{typed → dist}/sources/vector-tileset-source.d.ts.map +1 -1
- package/dist/sources/vector-tileset-source.js +6 -0
- package/{typed → dist}/style/color-bins-style.d.ts +2 -2
- package/dist/style/color-bins-style.d.ts.map +1 -0
- package/dist/style/color-bins-style.js +21 -0
- package/{typed → dist}/style/color-categories-style.d.ts +2 -2
- package/dist/style/color-categories-style.d.ts.map +1 -0
- package/dist/style/color-categories-style.js +25 -0
- package/{typed → dist}/style/color-continuous-style.d.ts +2 -2
- package/dist/style/color-continuous-style.d.ts.map +1 -0
- package/dist/style/color-continuous-style.js +21 -0
- package/dist/style/palette.js +62 -0
- package/dist/style/utils.js +11 -0
- package/{typed → dist}/utils.d.ts +1 -1
- package/dist/utils.d.ts.map +1 -0
- package/dist/utils.js +45 -0
- package/dist/workers/cartoRasterTile.js +3 -0
- package/dist/workers/cartoSpatialTile.js +3 -0
- package/dist/workers/cartoVectorTile.js +3 -0
- package/dist.min.js +49 -93
- package/package.json +31 -26
- package/src/api/common.ts +1 -2
- package/src/api/fetch-map.ts +13 -4
- package/src/api/query.ts +1 -1
- package/src/api/request-with-parameters.ts +47 -34
- package/src/api/types.ts +20 -0
- package/src/constants.ts +5 -0
- package/src/index.ts +11 -7
- package/src/layers/h3-tile-layer.ts +3 -1
- package/src/layers/quadbin-tile-layer.ts +3 -1
- package/src/layers/raster-layer-vertex.glsl.ts +2 -2
- package/src/layers/raster-layer.ts +10 -16
- package/src/layers/raster-tile-layer.ts +3 -1
- package/src/layers/schema/carto-raster-tile-loader.ts +5 -5
- package/src/layers/schema/carto-raster-tile.ts +3 -4
- package/src/layers/spatial-index-tile-layer.ts +7 -3
- package/src/layers/vector-tile-layer.ts +17 -8
- package/src/sources/base-source.ts +4 -3
- package/src/sources/boundary-query-source.ts +27 -9
- package/src/sources/boundary-table-source.ts +13 -8
- package/src/sources/h3-query-source.ts +2 -1
- package/src/sources/h3-table-source.ts +2 -6
- package/src/sources/index.ts +7 -0
- package/src/sources/quadbin-query-source.ts +2 -1
- package/src/sources/quadbin-table-source.ts +2 -6
- package/src/sources/types.ts +49 -7
- package/src/sources/vector-query-source.ts +38 -4
- package/src/sources/vector-table-source.ts +32 -4
- package/src/utils.ts +5 -1
- package/dist/es5/api/carto-api-error.js +0 -83
- package/dist/es5/api/carto-api-error.js.map +0 -1
- package/dist/es5/api/common.js +0 -25
- package/dist/es5/api/common.js.map +0 -1
- package/dist/es5/api/endpoints.js +0 -61
- package/dist/es5/api/endpoints.js.map +0 -1
- package/dist/es5/api/fetch-map.js +0 -566
- package/dist/es5/api/fetch-map.js.map +0 -1
- package/dist/es5/api/index.js +0 -30
- package/dist/es5/api/index.js.map +0 -1
- package/dist/es5/api/layer-map.js +0 -634
- package/dist/es5/api/layer-map.js.map +0 -1
- package/dist/es5/api/parse-map.js +0 -347
- package/dist/es5/api/parse-map.js.map +0 -1
- package/dist/es5/api/query.js +0 -81
- package/dist/es5/api/query.js.map +0 -1
- package/dist/es5/api/request-with-parameters.js +0 -150
- package/dist/es5/api/request-with-parameters.js.map +0 -1
- package/dist/es5/api/types.js +0 -21
- package/dist/es5/api/types.js.map +0 -1
- package/dist/es5/basemap.js +0 -17
- package/dist/es5/basemap.js.map +0 -1
- package/dist/es5/index.js +0 -205
- package/dist/es5/index.js.map +0 -1
- package/dist/es5/layers/h3-tile-layer.js +0 -128
- package/dist/es5/layers/h3-tile-layer.js.map +0 -1
- package/dist/es5/layers/h3-tileset-2d.js +0 -172
- package/dist/es5/layers/h3-tileset-2d.js.map +0 -1
- package/dist/es5/layers/point-label-layer.js +0 -263
- package/dist/es5/layers/point-label-layer.js.map +0 -1
- package/dist/es5/layers/quadbin-layer.js +0 -72
- package/dist/es5/layers/quadbin-layer.js.map +0 -1
- package/dist/es5/layers/quadbin-tile-layer.js +0 -103
- package/dist/es5/layers/quadbin-tile-layer.js.map +0 -1
- package/dist/es5/layers/quadbin-tileset-2d.js +0 -76
- package/dist/es5/layers/quadbin-tileset-2d.js.map +0 -1
- package/dist/es5/layers/quadbin-utils.js +0 -60
- package/dist/es5/layers/quadbin-utils.js.map +0 -1
- package/dist/es5/layers/raster-layer-vertex.glsl.js +0 -9
- package/dist/es5/layers/raster-layer-vertex.glsl.js.map +0 -1
- package/dist/es5/layers/raster-layer.js +0 -174
- package/dist/es5/layers/raster-layer.js.map +0 -1
- package/dist/es5/layers/raster-tile-layer.js +0 -91
- package/dist/es5/layers/raster-tile-layer.js.map +0 -1
- package/dist/es5/layers/schema/carto-properties-tile-loader.js +0 -60
- package/dist/es5/layers/schema/carto-properties-tile-loader.js.map +0 -1
- package/dist/es5/layers/schema/carto-properties-tile.js +0 -38
- package/dist/es5/layers/schema/carto-properties-tile.js.map +0 -1
- package/dist/es5/layers/schema/carto-raster-tile-loader.js +0 -89
- package/dist/es5/layers/schema/carto-raster-tile-loader.js.map +0 -1
- package/dist/es5/layers/schema/carto-raster-tile.js +0 -79
- package/dist/es5/layers/schema/carto-raster-tile.js.map +0 -1
- package/dist/es5/layers/schema/carto-spatial-tile-loader.js +0 -81
- package/dist/es5/layers/schema/carto-spatial-tile-loader.js.map +0 -1
- package/dist/es5/layers/schema/carto-spatial-tile.js +0 -80
- package/dist/es5/layers/schema/carto-spatial-tile.js.map +0 -1
- package/dist/es5/layers/schema/carto-tile.js +0 -269
- package/dist/es5/layers/schema/carto-tile.js.map +0 -1
- package/dist/es5/layers/schema/carto-vector-tile-loader.js +0 -120
- package/dist/es5/layers/schema/carto-vector-tile-loader.js.map +0 -1
- package/dist/es5/layers/schema/fast-pbf.js +0 -14
- package/dist/es5/layers/schema/fast-pbf.js.map +0 -1
- package/dist/es5/layers/schema/spatialjson-utils.js +0 -42
- package/dist/es5/layers/schema/spatialjson-utils.js.map +0 -1
- package/dist/es5/layers/schema/tile-loader-utils.js +0 -17
- package/dist/es5/layers/schema/tile-loader-utils.js.map +0 -1
- package/dist/es5/layers/spatial-index-tile-layer.js +0 -126
- package/dist/es5/layers/spatial-index-tile-layer.js.map +0 -1
- package/dist/es5/layers/utils.js +0 -131
- package/dist/es5/layers/utils.js.map +0 -1
- package/dist/es5/layers/vector-tile-layer.js +0 -248
- package/dist/es5/layers/vector-tile-layer.js.map +0 -1
- package/dist/es5/sources/base-source.js +0 -128
- package/dist/es5/sources/base-source.js.map +0 -1
- package/dist/es5/sources/boundary-query-source.js +0 -51
- package/dist/es5/sources/boundary-query-source.js.map +0 -1
- package/dist/es5/sources/boundary-table-source.js +0 -51
- package/dist/es5/sources/boundary-table-source.js.map +0 -1
- package/dist/es5/sources/h3-query-source.js +0 -56
- package/dist/es5/sources/h3-query-source.js.map +0 -1
- package/dist/es5/sources/h3-table-source.js +0 -56
- package/dist/es5/sources/h3-table-source.js.map +0 -1
- package/dist/es5/sources/h3-tileset-source.js +0 -43
- package/dist/es5/sources/h3-tileset-source.js.map +0 -1
- package/dist/es5/sources/index.js +0 -110
- package/dist/es5/sources/index.js.map +0 -1
- package/dist/es5/sources/quadbin-query-source.js +0 -56
- package/dist/es5/sources/quadbin-query-source.js.map +0 -1
- package/dist/es5/sources/quadbin-table-source.js +0 -56
- package/dist/es5/sources/quadbin-table-source.js.map +0 -1
- package/dist/es5/sources/quadbin-tileset-source.js +0 -43
- package/dist/es5/sources/quadbin-tileset-source.js.map +0 -1
- package/dist/es5/sources/raster-source.js +0 -43
- package/dist/es5/sources/raster-source.js.map +0 -1
- package/dist/es5/sources/types.js +0 -2
- package/dist/es5/sources/types.js.map +0 -1
- package/dist/es5/sources/vector-query-source.js +0 -51
- package/dist/es5/sources/vector-query-source.js.map +0 -1
- package/dist/es5/sources/vector-table-source.js +0 -51
- package/dist/es5/sources/vector-table-source.js.map +0 -1
- package/dist/es5/sources/vector-tileset-source.js +0 -43
- package/dist/es5/sources/vector-tileset-source.js.map +0 -1
- package/dist/es5/style/color-bins-style.js +0 -37
- package/dist/es5/style/color-bins-style.js.map +0 -1
- package/dist/es5/style/color-categories-style.js +0 -65
- package/dist/es5/style/color-categories-style.js.map +0 -1
- package/dist/es5/style/color-continuous-style.js +0 -37
- package/dist/es5/style/color-continuous-style.js.map +0 -1
- package/dist/es5/style/palette.js +0 -81
- package/dist/es5/style/palette.js.map +0 -1
- package/dist/es5/style/utils.js +0 -28
- package/dist/es5/style/utils.js.map +0 -1
- package/dist/es5/utils.js +0 -65
- package/dist/es5/utils.js.map +0 -1
- package/dist/es5/workers/cartoRasterTile.js +0 -10
- package/dist/es5/workers/cartoRasterTile.js.map +0 -1
- package/dist/es5/workers/cartoSpatialTile.js +0 -10
- package/dist/es5/workers/cartoSpatialTile.js.map +0 -1
- package/dist/es5/workers/cartoVectorTile.js +0 -10
- package/dist/es5/workers/cartoVectorTile.js.map +0 -1
- package/dist/esm/api/carto-api-error.js +0 -46
- package/dist/esm/api/carto-api-error.js.map +0 -1
- package/dist/esm/api/common.js.map +0 -1
- package/dist/esm/api/endpoints.js +0 -41
- package/dist/esm/api/endpoints.js.map +0 -1
- package/dist/esm/api/fetch-map.js +0 -298
- package/dist/esm/api/fetch-map.js.map +0 -1
- package/dist/esm/api/index.js +0 -4
- package/dist/esm/api/index.js.map +0 -1
- package/dist/esm/api/layer-map.js +0 -520
- package/dist/esm/api/layer-map.js.map +0 -1
- package/dist/esm/api/parse-map.js +0 -343
- package/dist/esm/api/parse-map.js.map +0 -1
- package/dist/esm/api/query.js +0 -40
- package/dist/esm/api/query.js.map +0 -1
- package/dist/esm/api/request-with-parameters.js +0 -82
- package/dist/esm/api/request-with-parameters.js.map +0 -1
- package/dist/esm/api/types.js +0 -14
- package/dist/esm/api/types.js.map +0 -1
- package/dist/esm/basemap.js +0 -10
- package/dist/esm/basemap.js.map +0 -1
- package/dist/esm/index.js +0 -35
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/layers/h3-tile-layer.js +0 -77
- package/dist/esm/layers/h3-tile-layer.js.map +0 -1
- package/dist/esm/layers/h3-tileset-2d.js +0 -119
- package/dist/esm/layers/h3-tileset-2d.js.map +0 -1
- package/dist/esm/layers/point-label-layer.js +0 -194
- package/dist/esm/layers/point-label-layer.js.map +0 -1
- package/dist/esm/layers/quadbin-layer.js +0 -31
- package/dist/esm/layers/quadbin-layer.js.map +0 -1
- package/dist/esm/layers/quadbin-tile-layer.js +0 -51
- package/dist/esm/layers/quadbin-tile-layer.js.map +0 -1
- package/dist/esm/layers/quadbin-tileset-2d.js +0 -39
- package/dist/esm/layers/quadbin-tileset-2d.js.map +0 -1
- package/dist/esm/layers/quadbin-utils.js +0 -23
- package/dist/esm/layers/quadbin-utils.js.map +0 -1
- package/dist/esm/layers/raster-layer-vertex.glsl.js +0 -99
- package/dist/esm/layers/raster-layer-vertex.glsl.js.map +0 -1
- package/dist/esm/layers/raster-layer.js +0 -108
- package/dist/esm/layers/raster-layer.js.map +0 -1
- package/dist/esm/layers/raster-tile-layer.js +0 -48
- package/dist/esm/layers/raster-tile-layer.js.map +0 -1
- package/dist/esm/layers/schema/carto-properties-tile-loader.js +0 -23
- package/dist/esm/layers/schema/carto-properties-tile-loader.js.map +0 -1
- package/dist/esm/layers/schema/carto-properties-tile.js +0 -18
- package/dist/esm/layers/schema/carto-properties-tile.js.map +0 -1
- package/dist/esm/layers/schema/carto-raster-tile-loader.js +0 -54
- package/dist/esm/layers/schema/carto-raster-tile-loader.js.map +0 -1
- package/dist/esm/layers/schema/carto-raster-tile.js +0 -51
- package/dist/esm/layers/schema/carto-raster-tile.js.map +0 -1
- package/dist/esm/layers/schema/carto-spatial-tile-loader.js +0 -44
- package/dist/esm/layers/schema/carto-spatial-tile-loader.js.map +0 -1
- package/dist/esm/layers/schema/carto-spatial-tile.js +0 -47
- package/dist/esm/layers/schema/carto-spatial-tile.js.map +0 -1
- package/dist/esm/layers/schema/carto-tile.js +0 -197
- package/dist/esm/layers/schema/carto-tile.js.map +0 -1
- package/dist/esm/layers/schema/carto-vector-tile-loader.js +0 -82
- package/dist/esm/layers/schema/carto-vector-tile-loader.js.map +0 -1
- package/dist/esm/layers/schema/fast-pbf.js +0 -7
- package/dist/esm/layers/schema/fast-pbf.js.map +0 -1
- package/dist/esm/layers/schema/spatialjson-utils.js +0 -27
- package/dist/esm/layers/schema/spatialjson-utils.js.map +0 -1
- package/dist/esm/layers/schema/tile-loader-utils.js +0 -7
- package/dist/esm/layers/schema/tile-loader-utils.js.map +0 -1
- package/dist/esm/layers/spatial-index-tile-layer.js +0 -86
- package/dist/esm/layers/spatial-index-tile-layer.js.map +0 -1
- package/dist/esm/layers/utils.js +0 -85
- package/dist/esm/layers/utils.js.map +0 -1
- package/dist/esm/layers/vector-tile-layer.js +0 -143
- package/dist/esm/layers/vector-tile-layer.js.map +0 -1
- package/dist/esm/sources/base-source.js +0 -72
- package/dist/esm/sources/base-source.js.map +0 -1
- package/dist/esm/sources/boundary-query-source.js +0 -21
- package/dist/esm/sources/boundary-query-source.js.map +0 -1
- package/dist/esm/sources/boundary-table-source.js +0 -21
- package/dist/esm/sources/boundary-table-source.js.map +0 -1
- package/dist/esm/sources/h3-query-source.js +0 -27
- package/dist/esm/sources/h3-query-source.js.map +0 -1
- package/dist/esm/sources/h3-table-source.js +0 -27
- package/dist/esm/sources/h3-table-source.js.map +0 -1
- package/dist/esm/sources/h3-tileset-source.js +0 -11
- package/dist/esm/sources/h3-tileset-source.js.map +0 -1
- package/dist/esm/sources/index.js +0 -14
- package/dist/esm/sources/index.js.map +0 -1
- package/dist/esm/sources/quadbin-query-source.js +0 -27
- package/dist/esm/sources/quadbin-query-source.js.map +0 -1
- package/dist/esm/sources/quadbin-table-source.js +0 -27
- package/dist/esm/sources/quadbin-table-source.js.map +0 -1
- package/dist/esm/sources/quadbin-tileset-source.js +0 -11
- package/dist/esm/sources/quadbin-tileset-source.js.map +0 -1
- package/dist/esm/sources/raster-source.js +0 -11
- package/dist/esm/sources/raster-source.js.map +0 -1
- package/dist/esm/sources/types.js +0 -2
- package/dist/esm/sources/types.js.map +0 -1
- package/dist/esm/sources/vector-query-source.js +0 -20
- package/dist/esm/sources/vector-query-source.js.map +0 -1
- package/dist/esm/sources/vector-table-source.js +0 -20
- package/dist/esm/sources/vector-table-source.js.map +0 -1
- package/dist/esm/sources/vector-tileset-source.js +0 -11
- package/dist/esm/sources/vector-tileset-source.js.map +0 -1
- package/dist/esm/style/color-bins-style.js +0 -19
- package/dist/esm/style/color-bins-style.js.map +0 -1
- package/dist/esm/style/color-categories-style.js +0 -24
- package/dist/esm/style/color-categories-style.js.map +0 -1
- package/dist/esm/style/color-continuous-style.js +0 -19
- package/dist/esm/style/color-continuous-style.js.map +0 -1
- package/dist/esm/style/palette.js +0 -51
- package/dist/esm/style/palette.js.map +0 -1
- package/dist/esm/style/utils.js +0 -15
- package/dist/esm/style/utils.js.map +0 -1
- package/dist/esm/utils.js +0 -51
- package/dist/esm/utils.js.map +0 -1
- package/dist/esm/workers/cartoRasterTile.js +0 -4
- package/dist/esm/workers/cartoRasterTile.js.map +0 -1
- package/dist/esm/workers/cartoSpatialTile.js +0 -4
- package/dist/esm/workers/cartoSpatialTile.js.map +0 -1
- package/dist/esm/workers/cartoVectorTile.js +0 -4
- package/dist/esm/workers/cartoVectorTile.js.map +0 -1
- package/src/.DS_Store +0 -0
- package/typed/api/carto-api-error.d.ts.map +0 -1
- package/typed/api/endpoints.d.ts.map +0 -1
- package/typed/api/index.d.ts +0 -7
- package/typed/api/index.d.ts.map +0 -1
- package/typed/api/layer-map.d.ts.map +0 -1
- package/typed/api/query.d.ts.map +0 -1
- package/typed/api/request-with-parameters.d.ts.map +0 -1
- package/typed/api/types.d.ts.map +0 -1
- package/typed/index.d.ts +0 -37
- package/typed/index.d.ts.map +0 -1
- package/typed/layers/h3-tile-layer.d.ts.map +0 -1
- package/typed/layers/quadbin-tile-layer.d.ts.map +0 -1
- package/typed/layers/raster-layer-vertex.glsl.d.ts +0 -3
- package/typed/layers/raster-tile-layer.d.ts.map +0 -1
- package/typed/layers/schema/carto-properties-tile.d.ts.map +0 -1
- package/typed/layers/schema/carto-raster-tile-loader.d.ts.map +0 -1
- package/typed/layers/schema/carto-spatial-tile.d.ts.map +0 -1
- package/typed/layers/utils.d.ts.map +0 -1
- package/typed/layers/vector-tile-layer.d.ts.map +0 -1
- package/typed/sources/base-source.d.ts.map +0 -1
- package/typed/sources/boundary-query-source.d.ts +0 -10
- package/typed/sources/boundary-query-source.d.ts.map +0 -1
- package/typed/sources/boundary-table-source.d.ts.map +0 -1
- package/typed/sources/h3-query-source.d.ts.map +0 -1
- package/typed/sources/h3-table-source.d.ts.map +0 -1
- package/typed/sources/h3-tileset-source.d.ts.map +0 -1
- package/typed/sources/index.d.ts +0 -27
- package/typed/sources/index.d.ts.map +0 -1
- package/typed/sources/quadbin-query-source.d.ts.map +0 -1
- package/typed/sources/quadbin-table-source.d.ts.map +0 -1
- package/typed/sources/raster-source.d.ts.map +0 -1
- package/typed/sources/types.d.ts.map +0 -1
- package/typed/sources/vector-query-source.d.ts +0 -4
- package/typed/sources/vector-query-source.d.ts.map +0 -1
- package/typed/sources/vector-table-source.d.ts +0 -4
- package/typed/sources/vector-table-source.d.ts.map +0 -1
- package/typed/style/color-bins-style.d.ts.map +0 -1
- package/typed/style/color-categories-style.d.ts.map +0 -1
- package/typed/style/color-continuous-style.d.ts.map +0 -1
- package/typed/utils.d.ts.map +0 -1
- /package/{typed → dist}/api/fetch-map.d.ts +0 -0
- /package/{typed → dist}/api/parse-map.d.ts +0 -0
- /package/{typed → dist}/api/parse-map.d.ts.map +0 -0
- /package/{typed → dist}/basemap.d.ts +0 -0
- /package/{typed → dist}/basemap.d.ts.map +0 -0
- /package/{typed → dist}/layers/h3-tileset-2d.d.ts +0 -0
- /package/{typed → dist}/layers/h3-tileset-2d.d.ts.map +0 -0
- /package/{typed → dist}/layers/point-label-layer.d.ts +0 -0
- /package/{typed → dist}/layers/point-label-layer.d.ts.map +0 -0
- /package/{typed → dist}/layers/quadbin-layer.d.ts +0 -0
- /package/{typed → dist}/layers/quadbin-layer.d.ts.map +0 -0
- /package/{typed → dist}/layers/quadbin-tileset-2d.d.ts +0 -0
- /package/{typed → dist}/layers/quadbin-tileset-2d.d.ts.map +0 -0
- /package/{typed → dist}/layers/quadbin-utils.d.ts +0 -0
- /package/{typed → dist}/layers/quadbin-utils.d.ts.map +0 -0
- /package/{typed → dist}/layers/raster-layer-vertex.glsl.d.ts.map +0 -0
- /package/{typed → dist}/layers/raster-layer.d.ts +0 -0
- /package/{typed → dist}/layers/schema/carto-properties-tile-loader.d.ts +0 -0
- /package/{typed → dist}/layers/schema/carto-properties-tile-loader.d.ts.map +0 -0
- /package/{typed → dist}/layers/schema/carto-raster-tile.d.ts +0 -0
- /package/{typed → dist}/layers/schema/carto-spatial-tile-loader.d.ts +0 -0
- /package/{typed → dist}/layers/schema/carto-spatial-tile-loader.d.ts.map +0 -0
- /package/{typed → dist}/layers/schema/carto-tile.d.ts +0 -0
- /package/{typed → dist}/layers/schema/carto-tile.d.ts.map +0 -0
- /package/{typed → dist}/layers/schema/carto-vector-tile-loader.d.ts +0 -0
- /package/{typed → dist}/layers/schema/carto-vector-tile-loader.d.ts.map +0 -0
- /package/{typed → dist}/layers/schema/fast-pbf.d.ts +0 -0
- /package/{typed → dist}/layers/schema/fast-pbf.d.ts.map +0 -0
- /package/{typed → dist}/layers/schema/spatialjson-utils.d.ts +0 -0
- /package/{typed → dist}/layers/schema/spatialjson-utils.d.ts.map +0 -0
- /package/{typed → dist}/layers/schema/tile-loader-utils.d.ts +0 -0
- /package/{typed → dist}/layers/schema/tile-loader-utils.d.ts.map +0 -0
- /package/{typed → dist}/style/palette.d.ts +0 -0
- /package/{typed → dist}/style/palette.d.ts.map +0 -0
- /package/{typed → dist}/style/utils.d.ts +0 -0
- /package/{typed → dist}/style/utils.d.ts.map +0 -0
- /package/{typed → dist}/workers/cartoRasterTile.d.ts +0 -0
- /package/{typed → dist}/workers/cartoRasterTile.d.ts.map +0 -0
- /package/{typed → dist}/workers/cartoSpatialTile.d.ts +0 -0
- /package/{typed → dist}/workers/cartoSpatialTile.d.ts.map +0 -0
- /package/{typed → dist}/workers/cartoVectorTile.d.ts +0 -0
- /package/{typed → dist}/workers/cartoVectorTile.d.ts.map +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"carto-properties-tile.d.ts","sourceRoot":"","sources":["../../../src/layers/schema/carto-properties-tile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAA8C,wBAAqB;AAItF,MAAM,WAAW,IAAI;IACnB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IACrC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CAC3C;AAED,qBAAa,UAAU;IACrB,MAAM,CAAC,IAAI,CAAC,GAAG,KAAA,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAGpC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,KAAA;CAO1D"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { NumericPropKeyValueReader, PropertiesReader } from "./carto-tile.js";
|
|
2
|
+
export class TileReader {
|
|
3
|
+
static read(pbf, end) {
|
|
4
|
+
return pbf.readFields(TileReader._readField, { properties: [], numericProps: {} }, end);
|
|
5
|
+
}
|
|
6
|
+
static _readField(tag, obj, pbf) {
|
|
7
|
+
if (tag === 1)
|
|
8
|
+
obj.properties.push(PropertiesReader.read(pbf, pbf.readVarint() + pbf.pos));
|
|
9
|
+
else if (tag === 2) {
|
|
10
|
+
const entry = NumericPropKeyValueReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
11
|
+
obj.numericProps[entry.key] = entry.value;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { LoaderWithParser } from '@loaders.gl/loader-utils';
|
|
2
|
-
import { NumericProps, Properties } from
|
|
2
|
+
import { NumericProps, Properties } from "./spatialjson-utils.js";
|
|
3
3
|
declare const CartoRasterTileLoader: LoaderWithParser;
|
|
4
4
|
export type Raster = {
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
/** Raster tiles are square, with 'blockSize' width and height in pixels. */
|
|
6
|
+
blockSize: number;
|
|
7
7
|
cells: {
|
|
8
8
|
numericProps: NumericProps;
|
|
9
9
|
properties: Properties[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"carto-raster-tile-loader.d.ts","sourceRoot":"","sources":["../../../src/layers/schema/carto-raster-tile-loader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAKzE,OAAO,EAAC,YAAY,EAAE,UAAU,EAAC,+BAA4B;AAiB7D,QAAA,MAAM,qBAAqB,EAAE,gBAa5B,CAAC;AAEF,MAAM,MAAM,MAAM,GAAG;IACnB,4EAA4E;IAC5E,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE;QACL,YAAY,EAAE,YAAY,CAAC;QAC3B,UAAU,EAAE,UAAU,EAAE,CAAC;KAC1B,CAAC;CACH,CAAC;AAiBF,eAAe,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { TileReader } from "./carto-raster-tile.js";
|
|
2
|
+
import { parsePbf } from "./tile-loader-utils.js";
|
|
3
|
+
import { getWorkerUrl } from "../../utils.js";
|
|
4
|
+
const VERSION = typeof "9.0.0-beta.9" !== 'undefined' ? "9.0.0-beta.9" : 'latest';
|
|
5
|
+
const id = 'cartoRasterTile';
|
|
6
|
+
const DEFAULT_OPTIONS = {
|
|
7
|
+
cartoRasterTile: {
|
|
8
|
+
workerUrl: getWorkerUrl(id, VERSION)
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
const CartoRasterTileLoader = {
|
|
12
|
+
name: 'CARTO Raster Tile',
|
|
13
|
+
version: VERSION,
|
|
14
|
+
id,
|
|
15
|
+
module: 'carto',
|
|
16
|
+
extensions: ['pbf'],
|
|
17
|
+
mimeTypes: ['application/vnd.carto-raster-tile'],
|
|
18
|
+
category: 'geometry',
|
|
19
|
+
parse: async (arrayBuffer, options) => parseCartoRasterTile(arrayBuffer, options),
|
|
20
|
+
parseSync: parseCartoRasterTile,
|
|
21
|
+
worker: true,
|
|
22
|
+
options: DEFAULT_OPTIONS
|
|
23
|
+
};
|
|
24
|
+
function parseCartoRasterTile(arrayBuffer, options) {
|
|
25
|
+
if (!arrayBuffer)
|
|
26
|
+
return null;
|
|
27
|
+
const { bands, blockSize } = parsePbf(arrayBuffer, TileReader);
|
|
28
|
+
const numericProps = {};
|
|
29
|
+
for (let i = 0; i < bands.length; i++) {
|
|
30
|
+
const { name, data } = bands[i];
|
|
31
|
+
numericProps[name] = data;
|
|
32
|
+
}
|
|
33
|
+
return { blockSize, cells: { numericProps, properties: [] } };
|
|
34
|
+
}
|
|
35
|
+
export default CartoRasterTileLoader;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"carto-raster-tile.d.ts","sourceRoot":"","sources":["../../../src/layers/schema/carto-raster-tile.ts"],"names":[],"mappings":"AAiBA,qBAAa,UAAU;IACrB,MAAM,CAAC,IAAI,CAAC,GAAG,KAAA,EAAE,GAAG,CAAC,EAAE,MAAM;IAI7B,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,KAAA,EAAE,GAAG,KAAA,EAAE,GAAG,KAAA;CAY5C;AAED,qBAAa,UAAU;IACrB,MAAM,CAAC,IAAI,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA;IAGpB,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,KAAA,EAAE,GAAG,KAAA,EAAE,GAAG,KAAA;
|
|
1
|
+
{"version":3,"file":"carto-raster-tile.d.ts","sourceRoot":"","sources":["../../../src/layers/schema/carto-raster-tile.ts"],"names":[],"mappings":"AAiBA,qBAAa,UAAU;IACrB,MAAM,CAAC,IAAI,CAAC,GAAG,KAAA,EAAE,GAAG,CAAC,EAAE,MAAM;IAI7B,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,KAAA,EAAE,GAAG,KAAA,EAAE,GAAG,KAAA;CAY5C;AAED,qBAAa,UAAU;IACrB,MAAM,CAAC,IAAI,CAAC,GAAG,KAAA,EAAE,GAAG,KAAA;IAGpB,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,KAAA,EAAE,GAAG,KAAA,EAAE,GAAG,KAAA;CAI5C"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import { readPackedTypedArray } from "./fast-pbf.js";
|
|
2
|
+
const ARRAY_TYPES = {
|
|
3
|
+
uint8: Uint8Array,
|
|
4
|
+
uint16: Uint16Array,
|
|
5
|
+
uint32: Uint32Array,
|
|
6
|
+
uint64: BigUint64Array,
|
|
7
|
+
int8: Int8Array,
|
|
8
|
+
int16: Int16Array,
|
|
9
|
+
int32: Int32Array,
|
|
10
|
+
int64: BigInt64Array,
|
|
11
|
+
float32: Float32Array,
|
|
12
|
+
float64: Float64Array
|
|
13
|
+
};
|
|
14
|
+
// Band ========================================
|
|
15
|
+
export class BandReader {
|
|
16
|
+
static read(pbf, end) {
|
|
17
|
+
return pbf.readFields(BandReader._readField, { name: '', type: '', data: null }, end);
|
|
18
|
+
}
|
|
19
|
+
static _readField(tag, obj, pbf) {
|
|
20
|
+
if (tag === 1)
|
|
21
|
+
obj.name = pbf.readString();
|
|
22
|
+
else if (tag === 2)
|
|
23
|
+
obj.type = pbf.readString();
|
|
24
|
+
else if (tag === 3) {
|
|
25
|
+
const TypedArray = ARRAY_TYPES[obj.type];
|
|
26
|
+
if (!TypedArray) {
|
|
27
|
+
throw Error(`Invalid data type: ${obj.type}`);
|
|
28
|
+
}
|
|
29
|
+
obj.data = {};
|
|
30
|
+
readPackedTypedArray(TypedArray, pbf, obj.data);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
export class TileReader {
|
|
35
|
+
static read(pbf, end) {
|
|
36
|
+
return pbf.readFields(TileReader._readField, { blockSize: 0, bands: [] }, end);
|
|
37
|
+
}
|
|
38
|
+
static _readField(tag, obj, pbf) {
|
|
39
|
+
if (tag === 1)
|
|
40
|
+
obj.blockSize = pbf.readVarint();
|
|
41
|
+
else if (tag === 2)
|
|
42
|
+
obj.bands.push(BandReader.read(pbf, pbf.readVarint() + pbf.pos));
|
|
43
|
+
}
|
|
44
|
+
}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { TileReader } from "./carto-spatial-tile.js";
|
|
2
|
+
import { parsePbf } from "./tile-loader-utils.js";
|
|
3
|
+
import { getWorkerUrl } from "../../utils.js";
|
|
4
|
+
import { binaryToSpatialjson } from "./spatialjson-utils.js";
|
|
5
|
+
const VERSION = typeof "9.0.0-beta.9" !== 'undefined' ? "9.0.0-beta.9" : 'latest';
|
|
6
|
+
const id = 'cartoSpatialTile';
|
|
7
|
+
const DEFAULT_OPTIONS = {
|
|
8
|
+
cartoSpatialTile: {
|
|
9
|
+
scheme: 'quadbin',
|
|
10
|
+
workerUrl: getWorkerUrl(id, VERSION)
|
|
11
|
+
}
|
|
12
|
+
};
|
|
13
|
+
const CartoSpatialTileLoader = {
|
|
14
|
+
name: 'CARTO Spatial Tile',
|
|
15
|
+
version: VERSION,
|
|
16
|
+
id,
|
|
17
|
+
module: 'carto',
|
|
18
|
+
extensions: ['pbf'],
|
|
19
|
+
mimeTypes: ['application/vnd.carto-spatial-tile'],
|
|
20
|
+
category: 'geometry',
|
|
21
|
+
parse: async (arrayBuffer, options) => parseCartoSpatialTile(arrayBuffer, options),
|
|
22
|
+
parseSync: parseCartoSpatialTile,
|
|
23
|
+
worker: true,
|
|
24
|
+
options: DEFAULT_OPTIONS
|
|
25
|
+
};
|
|
26
|
+
function parseCartoSpatialTile(arrayBuffer, options) {
|
|
27
|
+
if (!arrayBuffer)
|
|
28
|
+
return null;
|
|
29
|
+
const tile = parsePbf(arrayBuffer, TileReader);
|
|
30
|
+
const { cells } = tile;
|
|
31
|
+
const scheme = options?.cartoSpatialTile?.scheme;
|
|
32
|
+
const data = { cells, scheme };
|
|
33
|
+
return binaryToSpatialjson(data);
|
|
34
|
+
}
|
|
35
|
+
export default CartoSpatialTileLoader;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { Indices, IndexScheme } from
|
|
2
|
-
import { NumericProp } from
|
|
1
|
+
import { Indices, IndexScheme } from "./spatialjson-utils.js";
|
|
2
|
+
import { NumericProp } from "./carto-tile.js";
|
|
3
3
|
export declare class IndicesReader {
|
|
4
4
|
static read(pbf: any, end?: number): Indices;
|
|
5
5
|
static _readField(this: void, tag: number, obj: any, pbf: any): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"carto-spatial-tile.d.ts","sourceRoot":"","sources":["../../../src/layers/schema/carto-spatial-tile.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,OAAO,EAAE,WAAW,EAAC,+BAA4B;AACzD,OAAO,EAAC,WAAW,EAA8C,wBAAqB;AAItF,qBAAa,aAAa;IACxB,MAAM,CAAC,IAAI,CAAC,GAAG,KAAA,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO;IAGvC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,KAAA,EAAE,GAAG,KAAA;CAGpD;AAID,UAAU,KAAK;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAAC;IACrC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;CAC3C;AAuBD,MAAM,WAAW,IAAI;IACnB,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,KAAK,CAAC;CACd;AAED,qBAAa,UAAU;IACrB,MAAM,CAAC,IAAI,CAAC,GAAG,KAAA,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI;IAGpC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,KAAA;CAI1D"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import { readPackedTypedArray } from "./fast-pbf.js";
|
|
2
|
+
import { NumericPropKeyValueReader, PropertiesReader } from "./carto-tile.js";
|
|
3
|
+
// Indices =====================================
|
|
4
|
+
export class IndicesReader {
|
|
5
|
+
static read(pbf, end) {
|
|
6
|
+
return pbf.readFields(IndicesReader._readField, { value: [] }, end);
|
|
7
|
+
}
|
|
8
|
+
static _readField(tag, obj, pbf) {
|
|
9
|
+
if (tag === 1)
|
|
10
|
+
readPackedTypedArray(BigUint64Array, pbf, obj);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
class CellsReader {
|
|
14
|
+
static read(pbf, end) {
|
|
15
|
+
return pbf.readFields(CellsReader._readField, { indices: null, properties: [], numericProps: {} }, end);
|
|
16
|
+
}
|
|
17
|
+
static _readField(tag, obj, pbf) {
|
|
18
|
+
if (tag === 1)
|
|
19
|
+
obj.indices = IndicesReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
20
|
+
else if (tag === 2)
|
|
21
|
+
obj.properties.push(PropertiesReader.read(pbf, pbf.readVarint() + pbf.pos));
|
|
22
|
+
else if (tag === 3) {
|
|
23
|
+
const entry = NumericPropKeyValueReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
24
|
+
obj.numericProps[entry.key] = entry.value;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
export class TileReader {
|
|
29
|
+
static read(pbf, end) {
|
|
30
|
+
return pbf.readFields(TileReader._readField, { scheme: 0, cells: null }, end);
|
|
31
|
+
}
|
|
32
|
+
static _readField(tag, obj, pbf) {
|
|
33
|
+
if (tag === 1)
|
|
34
|
+
obj.scheme = pbf.readVarint();
|
|
35
|
+
else if (tag === 2)
|
|
36
|
+
obj.cells = CellsReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
@@ -0,0 +1,187 @@
|
|
|
1
|
+
import { readPackedTypedArray } from "./fast-pbf.js";
|
|
2
|
+
class KeyValueObjectReader {
|
|
3
|
+
static read(pbf, end) {
|
|
4
|
+
return pbf.readFields(KeyValueObjectReader._readField, { key: '', value: null }, end);
|
|
5
|
+
}
|
|
6
|
+
static _readField(tag, obj, pbf) {
|
|
7
|
+
if (tag === 1)
|
|
8
|
+
obj.key = pbf.readString();
|
|
9
|
+
else if (tag === 2)
|
|
10
|
+
obj.value = pbf.readString();
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
// Properties ========================================
|
|
14
|
+
export class PropertiesReader {
|
|
15
|
+
static read(pbf, end) {
|
|
16
|
+
return pbf.readFields(PropertiesReader._readField, {}, end);
|
|
17
|
+
}
|
|
18
|
+
static _readField(tag, obj, pbf) {
|
|
19
|
+
if (tag === 1) {
|
|
20
|
+
const { key, value } = KeyValueObjectReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
21
|
+
obj[key] = value;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
class DoublesReader {
|
|
26
|
+
static read(pbf, end) {
|
|
27
|
+
const { value, size } = pbf.readFields(DoublesReader._readField, { value: [], size: 0 }, end);
|
|
28
|
+
return { value: new Float32Array(value), size };
|
|
29
|
+
}
|
|
30
|
+
static _readField(tag, obj, pbf) {
|
|
31
|
+
if (tag === 1)
|
|
32
|
+
readPackedTypedArray(Float64Array, pbf, obj);
|
|
33
|
+
else if (tag === 2)
|
|
34
|
+
obj.size = pbf.readVarint(true);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
class IntsReader {
|
|
38
|
+
static read(pbf, end) {
|
|
39
|
+
const { value, size } = pbf.readFields(IntsReader._readField, { value: [], size: 0 }, end);
|
|
40
|
+
return { value: new Uint32Array(value), size };
|
|
41
|
+
}
|
|
42
|
+
static _readField(tag, obj, pbf) {
|
|
43
|
+
if (tag === 1)
|
|
44
|
+
pbf.readPackedVarint(obj.value);
|
|
45
|
+
else if (tag === 2)
|
|
46
|
+
obj.size = pbf.readVarint(true);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
class FieldsReader {
|
|
50
|
+
static read(pbf, end) {
|
|
51
|
+
return pbf.readFields(FieldsReader._readField, { id: 0 }, end);
|
|
52
|
+
}
|
|
53
|
+
static _readField(tag, obj, pbf) {
|
|
54
|
+
if (tag === 1)
|
|
55
|
+
obj.id = pbf.readVarint();
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
class NumericPropReader {
|
|
59
|
+
static read(pbf, end) {
|
|
60
|
+
return pbf.readFields(NumericPropReader._readField, { value: [] }, end);
|
|
61
|
+
}
|
|
62
|
+
static _readField(tag, obj, pbf) {
|
|
63
|
+
if (tag === 1)
|
|
64
|
+
readPackedTypedArray(Float64Array, pbf, obj);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
export class NumericPropKeyValueReader {
|
|
68
|
+
static read(pbf, end) {
|
|
69
|
+
return pbf.readFields(NumericPropKeyValueReader._readField, { key: '', value: null }, end);
|
|
70
|
+
}
|
|
71
|
+
static _readField(tag, obj, pbf) {
|
|
72
|
+
if (tag === 1)
|
|
73
|
+
obj.key = pbf.readString();
|
|
74
|
+
else if (tag === 2)
|
|
75
|
+
obj.value = NumericPropReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
class PointsReader {
|
|
79
|
+
static read(pbf, end) {
|
|
80
|
+
return pbf.readFields(PointsReader._readField, {
|
|
81
|
+
positions: null,
|
|
82
|
+
globalFeatureIds: null,
|
|
83
|
+
featureIds: null,
|
|
84
|
+
properties: [],
|
|
85
|
+
numericProps: {},
|
|
86
|
+
fields: []
|
|
87
|
+
}, end);
|
|
88
|
+
}
|
|
89
|
+
static _readField(tag, obj, pbf) {
|
|
90
|
+
if (tag === 1)
|
|
91
|
+
obj.positions = DoublesReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
92
|
+
else if (tag === 2)
|
|
93
|
+
obj.globalFeatureIds = IntsReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
94
|
+
else if (tag === 3)
|
|
95
|
+
obj.featureIds = IntsReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
96
|
+
else if (tag === 4)
|
|
97
|
+
obj.properties.push(PropertiesReader.read(pbf, pbf.readVarint() + pbf.pos));
|
|
98
|
+
else if (tag === 5) {
|
|
99
|
+
const entry = NumericPropKeyValueReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
100
|
+
obj.numericProps[entry.key] = entry.value;
|
|
101
|
+
}
|
|
102
|
+
else if (tag === 6)
|
|
103
|
+
obj.fields.push(FieldsReader.read(pbf, pbf.readVarint() + pbf.pos));
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
// Lines ========================================
|
|
107
|
+
class LinesReader {
|
|
108
|
+
static read(pbf, end) {
|
|
109
|
+
return pbf.readFields(LinesReader._readField, {
|
|
110
|
+
positions: null,
|
|
111
|
+
pathIndices: null,
|
|
112
|
+
globalFeatureIds: null,
|
|
113
|
+
featureIds: null,
|
|
114
|
+
properties: [],
|
|
115
|
+
numericProps: {},
|
|
116
|
+
fields: []
|
|
117
|
+
}, end);
|
|
118
|
+
}
|
|
119
|
+
static _readField(tag, obj, pbf) {
|
|
120
|
+
if (tag === 1)
|
|
121
|
+
obj.positions = DoublesReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
122
|
+
else if (tag === 2)
|
|
123
|
+
obj.pathIndices = IntsReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
124
|
+
else if (tag === 3)
|
|
125
|
+
obj.globalFeatureIds = IntsReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
126
|
+
else if (tag === 4)
|
|
127
|
+
obj.featureIds = IntsReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
128
|
+
else if (tag === 5)
|
|
129
|
+
obj.properties.push(PropertiesReader.read(pbf, pbf.readVarint() + pbf.pos));
|
|
130
|
+
else if (tag === 6) {
|
|
131
|
+
const entry = NumericPropKeyValueReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
132
|
+
obj.numericProps[entry.key] = entry.value;
|
|
133
|
+
}
|
|
134
|
+
else if (tag === 7)
|
|
135
|
+
obj.fields.push(FieldsReader.read(pbf, pbf.readVarint() + pbf.pos));
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
class PolygonsReader {
|
|
139
|
+
static read(pbf, end) {
|
|
140
|
+
return pbf.readFields(PolygonsReader._readField, {
|
|
141
|
+
positions: null,
|
|
142
|
+
polygonIndices: null,
|
|
143
|
+
globalFeatureIds: null,
|
|
144
|
+
featureIds: null,
|
|
145
|
+
primitivePolygonIndices: null,
|
|
146
|
+
triangles: null,
|
|
147
|
+
properties: [],
|
|
148
|
+
numericProps: {},
|
|
149
|
+
fields: []
|
|
150
|
+
}, end);
|
|
151
|
+
}
|
|
152
|
+
static _readField(tag, obj, pbf) {
|
|
153
|
+
if (tag === 1)
|
|
154
|
+
obj.positions = DoublesReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
155
|
+
else if (tag === 2)
|
|
156
|
+
obj.polygonIndices = IntsReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
157
|
+
else if (tag === 3)
|
|
158
|
+
obj.globalFeatureIds = IntsReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
159
|
+
else if (tag === 4)
|
|
160
|
+
obj.featureIds = IntsReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
161
|
+
else if (tag === 5)
|
|
162
|
+
obj.primitivePolygonIndices = IntsReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
163
|
+
else if (tag === 6)
|
|
164
|
+
obj.triangles = IntsReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
165
|
+
else if (tag === 7)
|
|
166
|
+
obj.properties.push(PropertiesReader.read(pbf, pbf.readVarint() + pbf.pos));
|
|
167
|
+
else if (tag === 8) {
|
|
168
|
+
const entry = NumericPropKeyValueReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
169
|
+
obj.numericProps[entry.key] = entry.value;
|
|
170
|
+
}
|
|
171
|
+
else if (tag === 9)
|
|
172
|
+
obj.fields.push(FieldsReader.read(pbf, pbf.readVarint() + pbf.pos));
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
export class TileReader {
|
|
176
|
+
static read(pbf, end) {
|
|
177
|
+
return pbf.readFields(TileReader._readField, { points: null, lines: null, polygons: null }, end);
|
|
178
|
+
}
|
|
179
|
+
static _readField(tag, obj, pbf) {
|
|
180
|
+
if (tag === 1)
|
|
181
|
+
obj.points = PointsReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
182
|
+
else if (tag === 2)
|
|
183
|
+
obj.lines = LinesReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
184
|
+
else if (tag === 3)
|
|
185
|
+
obj.polygons = PolygonsReader.read(pbf, pbf.readVarint() + pbf.pos);
|
|
186
|
+
}
|
|
187
|
+
}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import earcut from 'earcut';
|
|
2
|
+
import { TileReader } from "./carto-tile.js";
|
|
3
|
+
import { parsePbf } from "./tile-loader-utils.js";
|
|
4
|
+
import { getWorkerUrl } from "../../utils.js";
|
|
5
|
+
const VERSION = typeof "9.0.0-beta.9" !== 'undefined' ? "9.0.0-beta.9" : 'latest';
|
|
6
|
+
const id = 'cartoVectorTile';
|
|
7
|
+
const DEFAULT_OPTIONS = {
|
|
8
|
+
cartoVectorTile: {
|
|
9
|
+
workerUrl: getWorkerUrl(id, VERSION)
|
|
10
|
+
}
|
|
11
|
+
};
|
|
12
|
+
const CartoVectorTileLoader = {
|
|
13
|
+
name: 'CARTO Vector Tile',
|
|
14
|
+
version: VERSION,
|
|
15
|
+
id,
|
|
16
|
+
module: 'carto',
|
|
17
|
+
extensions: ['pbf'],
|
|
18
|
+
mimeTypes: ['application/vnd.carto-vector-tile'],
|
|
19
|
+
category: 'geometry',
|
|
20
|
+
parse: async (arrayBuffer, options) => parseCartoVectorTile(arrayBuffer, options),
|
|
21
|
+
parseSync: parseCartoVectorTile,
|
|
22
|
+
worker: true,
|
|
23
|
+
options: DEFAULT_OPTIONS
|
|
24
|
+
};
|
|
25
|
+
function triangulatePolygon(polygons, target, { startPosition, endPosition, indices }) {
|
|
26
|
+
const coordLength = polygons.positions.size;
|
|
27
|
+
const start = startPosition * coordLength;
|
|
28
|
+
const end = endPosition * coordLength;
|
|
29
|
+
// Extract positions and holes for just this polygon
|
|
30
|
+
const polygonPositions = polygons.positions.value.subarray(start, end);
|
|
31
|
+
// Holes are referenced relative to outer polygon
|
|
32
|
+
const holes = indices.slice(1).map((n) => n - startPosition);
|
|
33
|
+
// Compute triangulation
|
|
34
|
+
const triangles = earcut(polygonPositions, holes, coordLength);
|
|
35
|
+
// Indices returned by triangulation are relative to start
|
|
36
|
+
// of polygon, so we need to offset
|
|
37
|
+
for (let t = 0, tl = triangles.length; t < tl; ++t) {
|
|
38
|
+
target.push(startPosition + triangles[t]);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
function triangulate(polygons) {
|
|
42
|
+
const { polygonIndices, primitivePolygonIndices } = polygons;
|
|
43
|
+
const triangles = [];
|
|
44
|
+
let rangeStart = 0;
|
|
45
|
+
for (let i = 0; i < polygonIndices.value.length - 1; i++) {
|
|
46
|
+
const startPosition = polygonIndices.value[i];
|
|
47
|
+
const endPosition = polygonIndices.value[i + 1];
|
|
48
|
+
// Extract hole indices between start & end position
|
|
49
|
+
const rangeEnd = primitivePolygonIndices.value.indexOf(endPosition);
|
|
50
|
+
const indices = primitivePolygonIndices.value.subarray(rangeStart, rangeEnd);
|
|
51
|
+
rangeStart = rangeEnd;
|
|
52
|
+
triangulatePolygon(polygons, triangles, { startPosition, endPosition, indices });
|
|
53
|
+
}
|
|
54
|
+
polygons.triangles = { value: new Uint32Array(triangles), size: 1 };
|
|
55
|
+
}
|
|
56
|
+
function parseCartoVectorTile(arrayBuffer, options) {
|
|
57
|
+
if (!arrayBuffer)
|
|
58
|
+
return null;
|
|
59
|
+
const tile = parsePbf(arrayBuffer, TileReader);
|
|
60
|
+
if (tile.polygons && !tile.polygons.triangles) {
|
|
61
|
+
triangulate(tile.polygons);
|
|
62
|
+
}
|
|
63
|
+
return tile;
|
|
64
|
+
}
|
|
65
|
+
export default CartoVectorTileLoader;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
// Optimized (100X speed improvement) reading function for binary data
|
|
2
|
+
export function readPackedTypedArray(TypedArray, pbf, obj) {
|
|
3
|
+
const end = pbf.type === 2 ? pbf.readVarint() + pbf.pos : pbf.pos + 1;
|
|
4
|
+
obj.value = new TypedArray(pbf.buf.buffer.slice(pbf.pos, end));
|
|
5
|
+
pbf.pos = end;
|
|
6
|
+
return obj.value;
|
|
7
|
+
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { bigIntToHex } from 'quadbin';
|
|
2
|
+
export function binaryToSpatialjson(binary) {
|
|
3
|
+
const { cells, scheme } = binary;
|
|
4
|
+
const count = cells.indices.value.length;
|
|
5
|
+
const spatial = [];
|
|
6
|
+
for (let i = 0; i < count; i++) {
|
|
7
|
+
const id = scheme === 'h3' ? bigIntToHex(cells.indices.value[i]) : cells.indices.value[i];
|
|
8
|
+
const properties = { ...cells.properties[i] };
|
|
9
|
+
for (const key of Object.keys(cells.numericProps)) {
|
|
10
|
+
properties[key] = cells.numericProps[key].value[i];
|
|
11
|
+
}
|
|
12
|
+
spatial.push({ id, properties });
|
|
13
|
+
}
|
|
14
|
+
return spatial;
|
|
15
|
+
}
|
|
@@ -9,7 +9,7 @@ export default class SpatialIndexTileLayer<DataT = any, ExtraProps extends {} =
|
|
|
9
9
|
static layerName: string;
|
|
10
10
|
static defaultProps: DefaultProps<SpatialIndexTileLayerProps<unknown>>;
|
|
11
11
|
state: TileLayer<DataT>['state'] & {
|
|
12
|
-
hoveredFeatureId: number | null;
|
|
12
|
+
hoveredFeatureId: BigInt | number | null;
|
|
13
13
|
highlightColor: number[];
|
|
14
14
|
};
|
|
15
15
|
protected _updateAutoHighlight(info: PickingInfo): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spatial-index-tile-layer.d.ts","sourceRoot":"","sources":["../../src/layers/spatial-index-tile-layer.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAK3C,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAC,SAAS,EAAE,aAAa,IAAI,YAAY,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"spatial-index-tile-layer.d.ts","sourceRoot":"","sources":["../../src/layers/spatial-index-tile-layer.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,YAAY,EAAC,MAAM,eAAe,CAAC;AAK3C,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAC;AAC1C,OAAO,EAAC,SAAS,EAAE,aAAa,IAAI,YAAY,EAAE,cAAc,EAAC,MAAM,qBAAqB,CAAC;AAW7F,yDAAyD;AACzD,MAAM,MAAM,0BAA0B,CAAC,KAAK,GAAG,OAAO,IAAI,2BAA2B,GACnF,cAAc,CAAC,KAAK,CAAC,CAAC;AAExB,iDAAiD;AACjD,KAAK,2BAA2B,GAAG,EAAE,CAAC;AAEtC,MAAM,CAAC,OAAO,OAAO,qBAAqB,CACxC,KAAK,GAAG,GAAG,EACX,UAAU,SAAS,EAAE,GAAG,EAAE,CAC1B,SAAQ,SAAS,CAAC,KAAK,EAAE,UAAU,GAAG,QAAQ,CAAC,2BAA2B,CAAC,CAAC;IAC5E,MAAM,CAAC,SAAS,SAA2B;IAC3C,MAAM,CAAC,YAAY,oDAAgB;IAEnC,KAAK,EAAG,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG;QAClC,gBAAgB,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;QACzC,cAAc,EAAE,MAAM,EAAE,CAAC;KAC1B,CAAC;IAEF,SAAS,CAAC,oBAAoB,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI;IAsBvD,sBAAsB,CAAC,IAAI,EAAE,YAAY;;;;IAOzC,yBAAyB,CAAC,IAAI,EAAE,YAAY;IAiB5C,cAAc,CAAC,IAAI,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;CAgB9D"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { registerLoaders } from '@loaders.gl/core';
|
|
2
|
+
import CartoRasterTileLoader from "./schema/carto-raster-tile-loader.js";
|
|
3
|
+
import CartoSpatialTileLoader from "./schema/carto-spatial-tile-loader.js";
|
|
4
|
+
registerLoaders([CartoRasterTileLoader, CartoSpatialTileLoader]);
|
|
5
|
+
import { TileLayer } from '@deck.gl/geo-layers';
|
|
6
|
+
import { DEFAULT_TILE_SIZE } from "../constants.js";
|
|
7
|
+
function isFeatureIdDefined(value) {
|
|
8
|
+
return value !== undefined && value !== null && value !== '';
|
|
9
|
+
}
|
|
10
|
+
const defaultProps = {
|
|
11
|
+
tileSize: DEFAULT_TILE_SIZE
|
|
12
|
+
};
|
|
13
|
+
export default class SpatialIndexTileLayer extends TileLayer {
|
|
14
|
+
static { this.layerName = 'SpatialIndexTileLayer'; }
|
|
15
|
+
static { this.defaultProps = defaultProps; }
|
|
16
|
+
_updateAutoHighlight(info) {
|
|
17
|
+
const { hoveredFeatureId } = this.state;
|
|
18
|
+
const hoveredFeature = info.object;
|
|
19
|
+
let newHoveredFeatureId = null;
|
|
20
|
+
if (hoveredFeature) {
|
|
21
|
+
newHoveredFeatureId = hoveredFeature.id;
|
|
22
|
+
}
|
|
23
|
+
if (hoveredFeatureId !== newHoveredFeatureId) {
|
|
24
|
+
let { highlightColor } = this.props;
|
|
25
|
+
if (typeof highlightColor === 'function') {
|
|
26
|
+
highlightColor = highlightColor(info);
|
|
27
|
+
}
|
|
28
|
+
this.setState({
|
|
29
|
+
highlightColor,
|
|
30
|
+
hoveredFeatureId: newHoveredFeatureId
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
getSubLayerPropsByTile(tile) {
|
|
35
|
+
return {
|
|
36
|
+
highlightedObjectIndex: this.getHighlightedObjectIndex(tile),
|
|
37
|
+
highlightColor: this.state.highlightColor
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
getHighlightedObjectIndex(tile) {
|
|
41
|
+
const { hoveredFeatureId } = this.state;
|
|
42
|
+
const data = tile.content;
|
|
43
|
+
const isFeatureIdPresent = isFeatureIdDefined(hoveredFeatureId);
|
|
44
|
+
if (!isFeatureIdPresent ||
|
|
45
|
+
!Array.isArray(data) ||
|
|
46
|
+
// Quick check for whether id is within tile. data.findIndex is expensive
|
|
47
|
+
!this._featureInTile(tile, hoveredFeatureId)) {
|
|
48
|
+
return -1;
|
|
49
|
+
}
|
|
50
|
+
return data.findIndex(feature => feature.id === hoveredFeatureId);
|
|
51
|
+
}
|
|
52
|
+
_featureInTile(tile, featureId) {
|
|
53
|
+
// TODO: Tile2DHeader index should be generic for H3TileIndex or QuadbinTileIndex
|
|
54
|
+
const tileset = this.state.tileset;
|
|
55
|
+
const tileZoom = tileset.getTileZoom(tile.index);
|
|
56
|
+
// @ts-ignore
|
|
57
|
+
const KEY = tile.index.q ? 'q' : 'i';
|
|
58
|
+
// TODO - Tileset2D methods expect tile index in the shape of {x, y, z}
|
|
59
|
+
let featureIndex = { [KEY]: featureId };
|
|
60
|
+
let featureZoom = tileset.getTileZoom(featureIndex);
|
|
61
|
+
while (!(featureZoom <= tileZoom)) {
|
|
62
|
+
featureIndex = tileset.getParentIndex(featureIndex);
|
|
63
|
+
featureZoom = tileset.getTileZoom(featureIndex);
|
|
64
|
+
}
|
|
65
|
+
return featureIndex[KEY] === tile.index[KEY];
|
|
66
|
+
}
|
|
67
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Tile as PropertiesTile } from
|
|
2
|
-
import { Tile as VectorTile } from
|
|
3
|
-
import type { TilejsonResult } from
|
|
1
|
+
import { Tile as PropertiesTile } from "./schema/carto-properties-tile.js";
|
|
2
|
+
import { Tile as VectorTile } from "./schema/carto-tile.js";
|
|
3
|
+
import type { TilejsonResult } from "../sources/types.js";
|
|
4
4
|
/**
|
|
5
5
|
* Adds access token to Authorization header in loadOptions
|
|
6
6
|
*/
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/layers/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAC,IAAI,IAAI,cAAc,EAAC,0CAAuC;AACtE,OAAO,EAAC,IAAI,IAAI,UAAU,EAAC,+BAA4B;AAEvD,OAAO,KAAK,EAAC,cAAc,EAAC,4BAAyB;AAErD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,GAAG,IAAI,CAO7E;AAED,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,cAAc,GAAG,UAAU,CAmD9F;AAED,eAAO,MAAM,gBAAgB;;;sBAGT,cAAc;;;CASjC,CAAC"}
|