@deck.gl/carto 8.10.0-alpha.7 → 9.0.0-alpha.3
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/dist/cartoRasterTile-worker.js +32 -24
- package/dist/cartoSpatialTile-worker.js +32 -24
- package/dist/cartoVectorTile-worker.js +69 -63
- package/dist/dist.dev.js +12055 -12562
- package/dist/es5/api/carto-api-error.js.map +1 -1
- package/dist/es5/api/common.js +25 -0
- package/dist/es5/api/common.js.map +1 -0
- package/dist/es5/api/endpoints.js +40 -0
- package/dist/es5/api/endpoints.js.map +1 -0
- package/dist/es5/api/fetch-map.js +560 -0
- package/dist/es5/api/fetch-map.js.map +1 -0
- package/dist/es5/api/index.js +5 -49
- package/dist/es5/api/index.js.map +1 -1
- package/dist/es5/api/layer-map.js +43 -45
- package/dist/es5/api/layer-map.js.map +1 -1
- package/dist/es5/api/{parseMap.js → parse-map.js} +5 -3
- package/dist/es5/api/parse-map.js.map +1 -0
- package/dist/es5/api/query.js +78 -0
- package/dist/es5/api/query.js.map +1 -0
- package/dist/es5/{sources/utils.js → api/request-with-parameters.js} +60 -46
- package/dist/es5/api/request-with-parameters.js.map +1 -0
- package/dist/es5/api/types.js +19 -0
- package/dist/es5/api/types.js.map +1 -1
- package/dist/es5/index.js +66 -80
- package/dist/es5/index.js.map +1 -1
- package/dist/es5/layers/h3-tile-layer.js +3 -5
- package/dist/es5/layers/h3-tile-layer.js.map +1 -1
- package/dist/es5/layers/point-label-layer.js.map +1 -1
- package/dist/es5/layers/quadbin-layer.js.map +1 -1
- package/dist/es5/layers/quadbin-tile-layer.js +1 -4
- package/dist/es5/layers/quadbin-tile-layer.js.map +1 -1
- package/dist/es5/layers/raster-layer.js +2 -0
- package/dist/es5/layers/raster-layer.js.map +1 -1
- package/dist/es5/layers/raster-tile-layer.js +1 -3
- package/dist/es5/layers/raster-tile-layer.js.map +1 -1
- package/dist/es5/layers/schema/carto-properties-tile-loader.js +60 -0
- package/dist/es5/layers/schema/carto-properties-tile-loader.js.map +1 -0
- package/dist/es5/layers/schema/carto-properties-tile.js +38 -0
- package/dist/es5/layers/schema/carto-properties-tile.js.map +1 -0
- package/dist/es5/layers/schema/carto-raster-tile-loader.js +1 -1
- package/dist/es5/layers/schema/carto-raster-tile-loader.js.map +1 -1
- package/dist/es5/layers/schema/carto-spatial-tile-loader.js +1 -1
- package/dist/es5/layers/schema/carto-spatial-tile-loader.js.map +1 -1
- package/dist/es5/layers/schema/carto-vector-tile-loader.js +1 -2
- package/dist/es5/layers/schema/carto-vector-tile-loader.js.map +1 -1
- package/dist/es5/layers/spatial-index-tile-layer.js +16 -26
- package/dist/es5/layers/spatial-index-tile-layer.js.map +1 -1
- package/dist/es5/layers/utils.js +102 -0
- package/dist/es5/layers/utils.js.map +1 -1
- package/dist/es5/layers/vector-tile-layer.js +112 -27
- package/dist/es5/layers/vector-tile-layer.js.map +1 -1
- package/dist/es5/sources/base-source.js +56 -28
- package/dist/es5/sources/base-source.js.map +1 -1
- package/dist/es5/sources/boundary-query-source.js +51 -0
- package/dist/es5/sources/boundary-query-source.js.map +1 -0
- package/dist/es5/sources/boundary-table-source.js +51 -0
- package/dist/es5/sources/boundary-table-source.js.map +1 -0
- package/dist/es5/sources/boundary-tileset-source.js +43 -0
- package/dist/es5/sources/boundary-tileset-source.js.map +1 -0
- package/dist/es5/sources/h3-query-source.js +9 -11
- package/dist/es5/sources/h3-query-source.js.map +1 -1
- package/dist/es5/sources/h3-table-source.js +10 -12
- package/dist/es5/sources/h3-table-source.js.map +1 -1
- package/dist/es5/sources/h3-tileset-source.js +5 -5
- package/dist/es5/sources/h3-tileset-source.js.map +1 -1
- package/dist/es5/sources/index.js +46 -22
- package/dist/es5/sources/index.js.map +1 -1
- package/dist/es5/sources/quadbin-query-source.js +10 -12
- package/dist/es5/sources/quadbin-query-source.js.map +1 -1
- package/dist/es5/sources/quadbin-table-source.js +10 -12
- package/dist/es5/sources/quadbin-table-source.js.map +1 -1
- package/dist/es5/sources/quadbin-tileset-source.js +5 -5
- package/dist/es5/sources/quadbin-tileset-source.js.map +1 -1
- package/dist/es5/sources/raster-source.js +5 -5
- package/dist/es5/sources/raster-source.js.map +1 -1
- package/dist/es5/sources/types.js +2 -0
- package/dist/es5/sources/types.js.map +1 -0
- package/dist/es5/sources/vector-query-source.js +11 -12
- package/dist/es5/sources/vector-query-source.js.map +1 -1
- package/dist/es5/sources/vector-table-source.js +12 -13
- package/dist/es5/sources/vector-table-source.js.map +1 -1
- package/dist/es5/sources/vector-tileset-source.js +5 -5
- package/dist/es5/sources/vector-tileset-source.js.map +1 -1
- package/dist/es5/style/color-bins-style.js +4 -2
- package/dist/es5/style/color-bins-style.js.map +1 -1
- package/dist/es5/style/color-categories-style.js +4 -2
- package/dist/es5/style/color-categories-style.js.map +1 -1
- package/dist/es5/style/color-continuous-style.js +4 -2
- package/dist/es5/style/color-continuous-style.js.map +1 -1
- package/dist/es5/style/palette.js +1 -1
- package/dist/es5/style/palette.js.map +1 -1
- package/dist/es5/style/utils.js +4 -11
- package/dist/es5/style/utils.js.map +1 -1
- package/dist/es5/utils.js +30 -1
- package/dist/es5/utils.js.map +1 -1
- package/dist/esm/api/carto-api-error.js.map +1 -1
- package/dist/esm/api/common.js +13 -0
- package/dist/esm/api/common.js.map +1 -0
- package/dist/esm/api/endpoints.js +28 -0
- package/dist/esm/api/endpoints.js.map +1 -0
- package/dist/esm/api/fetch-map.js +291 -0
- package/dist/esm/api/fetch-map.js.map +1 -0
- package/dist/esm/api/index.js +2 -3
- package/dist/esm/api/index.js.map +1 -1
- package/dist/esm/api/layer-map.js +43 -35
- package/dist/esm/api/layer-map.js.map +1 -1
- package/dist/esm/api/{parseMap.js → parse-map.js} +3 -2
- package/dist/esm/api/parse-map.js.map +1 -0
- package/dist/esm/api/query.js +38 -0
- package/dist/esm/api/query.js.map +1 -0
- package/dist/esm/{sources/utils.js → api/request-with-parameters.js} +25 -12
- package/dist/esm/api/request-with-parameters.js.map +1 -0
- package/dist/esm/api/types.js +13 -1
- package/dist/esm/api/types.js.map +1 -1
- package/dist/esm/index.js +31 -9
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/layers/h3-tile-layer.js +2 -6
- package/dist/esm/layers/h3-tile-layer.js.map +1 -1
- package/dist/esm/layers/point-label-layer.js.map +1 -1
- package/dist/esm/layers/quadbin-layer.js.map +1 -1
- package/dist/esm/layers/quadbin-tile-layer.js +1 -3
- package/dist/esm/layers/quadbin-tile-layer.js.map +1 -1
- package/dist/esm/layers/raster-layer.js +1 -0
- package/dist/esm/layers/raster-layer.js.map +1 -1
- package/dist/esm/layers/raster-tile-layer.js +1 -2
- package/dist/esm/layers/raster-tile-layer.js.map +1 -1
- package/dist/esm/layers/schema/carto-properties-tile-loader.js +23 -0
- package/dist/esm/layers/schema/carto-properties-tile-loader.js.map +1 -0
- package/dist/esm/layers/schema/carto-properties-tile.js +18 -0
- package/dist/esm/layers/schema/carto-properties-tile.js.map +1 -0
- package/dist/esm/layers/schema/carto-raster-tile-loader.js +1 -1
- package/dist/esm/layers/schema/carto-raster-tile-loader.js.map +1 -1
- package/dist/esm/layers/schema/carto-spatial-tile-loader.js +1 -1
- package/dist/esm/layers/schema/carto-spatial-tile-loader.js.map +1 -1
- package/dist/esm/layers/schema/carto-vector-tile-loader.js +1 -2
- package/dist/esm/layers/schema/carto-vector-tile-loader.js.map +1 -1
- package/dist/esm/layers/spatial-index-tile-layer.js +9 -24
- package/dist/esm/layers/spatial-index-tile-layer.js.map +1 -1
- package/dist/esm/layers/utils.js +70 -0
- package/dist/esm/layers/utils.js.map +1 -1
- package/dist/esm/layers/vector-tile-layer.js +40 -12
- package/dist/esm/layers/vector-tile-layer.js.map +1 -1
- package/dist/esm/sources/base-source.js +33 -10
- package/dist/esm/sources/base-source.js.map +1 -1
- package/dist/esm/sources/boundary-query-source.js +21 -0
- package/dist/esm/sources/boundary-query-source.js.map +1 -0
- package/dist/esm/sources/boundary-table-source.js +21 -0
- package/dist/esm/sources/boundary-table-source.js.map +1 -0
- package/dist/esm/sources/boundary-tileset-source.js +11 -0
- package/dist/esm/sources/boundary-tileset-source.js.map +1 -0
- package/dist/esm/sources/h3-query-source.js +6 -11
- package/dist/esm/sources/h3-query-source.js.map +1 -1
- package/dist/esm/sources/h3-table-source.js +7 -12
- package/dist/esm/sources/h3-table-source.js.map +1 -1
- package/dist/esm/sources/h3-tileset-source.js +3 -6
- package/dist/esm/sources/h3-tileset-source.js.map +1 -1
- package/dist/esm/sources/index.js +14 -11
- package/dist/esm/sources/index.js.map +1 -1
- package/dist/esm/sources/quadbin-query-source.js +7 -12
- package/dist/esm/sources/quadbin-query-source.js.map +1 -1
- package/dist/esm/sources/quadbin-table-source.js +7 -12
- package/dist/esm/sources/quadbin-table-source.js.map +1 -1
- package/dist/esm/sources/quadbin-tileset-source.js +3 -6
- package/dist/esm/sources/quadbin-tileset-source.js.map +1 -1
- package/dist/esm/sources/raster-source.js +3 -6
- package/dist/esm/sources/raster-source.js.map +1 -1
- package/dist/esm/sources/types.js +2 -0
- package/dist/esm/sources/types.js.map +1 -0
- package/dist/esm/sources/vector-query-source.js +6 -11
- package/dist/esm/sources/vector-query-source.js.map +1 -1
- package/dist/esm/sources/vector-table-source.js +7 -12
- package/dist/esm/sources/vector-table-source.js.map +1 -1
- package/dist/esm/sources/vector-tileset-source.js +3 -6
- package/dist/esm/sources/vector-tileset-source.js.map +1 -1
- package/dist/esm/style/color-bins-style.js +2 -1
- package/dist/esm/style/color-bins-style.js.map +1 -1
- package/dist/esm/style/color-categories-style.js +2 -1
- package/dist/esm/style/color-categories-style.js.map +1 -1
- package/dist/esm/style/color-continuous-style.js +2 -1
- package/dist/esm/style/color-continuous-style.js.map +1 -1
- package/dist/esm/style/palette.js +1 -1
- package/dist/esm/style/palette.js.map +1 -1
- package/dist/esm/style/utils.js +1 -5
- package/dist/esm/style/utils.js.map +1 -1
- package/dist/esm/utils.js +24 -1
- package/dist/esm/utils.js.map +1 -1
- package/dist.min.js +42 -41
- package/package.json +10 -9
- package/src/.DS_Store +0 -0
- package/src/api/carto-api-error.ts +1 -9
- package/src/api/common.ts +14 -0
- package/src/api/endpoints.ts +38 -0
- package/src/api/fetch-map.ts +287 -0
- package/src/api/index.ts +5 -5
- package/src/api/layer-map.ts +40 -36
- package/src/api/{parseMap.ts → parse-map.ts} +2 -2
- package/src/api/query.ts +34 -0
- package/src/{sources/utils.ts → api/request-with-parameters.ts} +22 -17
- package/src/api/types.ts +49 -0
- package/src/index.ts +93 -41
- package/src/layers/h3-tile-layer.ts +13 -18
- package/src/layers/point-label-layer.ts +1 -1
- package/src/layers/quadbin-layer.ts +3 -2
- package/src/layers/quadbin-tile-layer.ts +10 -11
- package/src/layers/raster-layer.ts +2 -2
- package/src/layers/raster-tile-layer.ts +11 -9
- package/src/layers/schema/carto-properties-tile-loader.ts +25 -0
- package/src/layers/schema/carto-properties-tile.ts +21 -0
- package/src/layers/schema/carto-vector-tile-loader.ts +1 -1
- package/src/layers/spatial-index-tile-layer.ts +18 -26
- package/src/layers/utils.ts +71 -0
- package/src/layers/vector-tile-layer.ts +40 -21
- package/src/sources/base-source.ts +35 -18
- package/src/sources/boundary-query-source.ts +31 -0
- package/src/sources/boundary-table-source.ts +31 -0
- package/src/sources/boundary-tileset-source.ts +14 -0
- package/src/sources/h3-query-source.ts +22 -22
- package/src/sources/h3-table-source.ts +22 -22
- package/src/sources/h3-tileset-source.ts +7 -9
- package/src/sources/index.ts +31 -22
- package/src/sources/quadbin-query-source.ts +22 -22
- package/src/sources/quadbin-table-source.ts +23 -22
- package/src/sources/quadbin-tileset-source.ts +7 -9
- package/src/sources/raster-source.ts +5 -9
- package/src/sources/types.ts +98 -0
- package/src/sources/vector-query-source.ts +15 -15
- package/src/sources/vector-table-source.ts +15 -15
- package/src/sources/vector-tileset-source.ts +7 -9
- package/src/style/color-bins-style.ts +2 -1
- package/src/style/color-categories-style.ts +2 -1
- package/src/style/color-continuous-style.ts +2 -1
- package/src/style/palette.ts +1 -1
- package/src/style/utils.ts +1 -6
- package/src/utils.ts +25 -1
- package/typed/api/carto-api-error.d.ts +1 -8
- package/typed/api/carto-api-error.d.ts.map +1 -1
- package/typed/api/common.d.ts +13 -0
- package/typed/api/common.d.ts.map +1 -0
- package/typed/api/endpoints.d.ts +12 -0
- package/typed/api/endpoints.d.ts.map +1 -0
- package/typed/api/fetch-map.d.ts +22 -0
- package/typed/api/fetch-map.d.ts.map +1 -0
- package/typed/api/index.d.ts +5 -5
- package/typed/api/index.d.ts.map +1 -1
- package/typed/api/layer-map.d.ts +6 -9
- package/typed/api/layer-map.d.ts.map +1 -1
- package/typed/api/{parseMap.d.ts → parse-map.d.ts} +1 -1
- package/typed/api/parse-map.d.ts.map +1 -0
- package/typed/api/query.d.ts +4 -0
- package/typed/api/query.d.ts.map +1 -0
- package/typed/api/request-with-parameters.d.ts +9 -0
- package/typed/api/request-with-parameters.d.ts.map +1 -0
- package/typed/api/types.d.ts +40 -0
- package/typed/api/types.d.ts.map +1 -1
- package/typed/index.d.ts +33 -12
- package/typed/index.d.ts.map +1 -1
- package/typed/layers/h3-tile-layer.d.ts +12 -7
- package/typed/layers/h3-tile-layer.d.ts.map +1 -1
- package/typed/layers/point-label-layer.d.ts +2 -2
- package/typed/layers/point-label-layer.d.ts.map +1 -1
- package/typed/layers/quadbin-layer.d.ts +2 -2
- package/typed/layers/quadbin-layer.d.ts.map +1 -1
- package/typed/layers/quadbin-tile-layer.d.ts +6 -6
- package/typed/layers/quadbin-tile-layer.d.ts.map +1 -1
- package/typed/layers/raster-layer.d.ts +2 -2
- package/typed/layers/raster-layer.d.ts.map +1 -1
- package/typed/layers/raster-tile-layer.d.ts +6 -5
- package/typed/layers/raster-tile-layer.d.ts.map +1 -1
- package/typed/layers/schema/carto-properties-tile-loader.d.ts +4 -0
- package/typed/layers/schema/carto-properties-tile-loader.d.ts.map +1 -0
- package/typed/layers/schema/carto-properties-tile.d.ts +10 -0
- package/typed/layers/schema/carto-properties-tile.d.ts.map +1 -0
- package/typed/layers/spatial-index-tile-layer.d.ts +10 -9
- package/typed/layers/spatial-index-tile-layer.d.ts.map +1 -1
- package/typed/layers/utils.d.ts +11 -0
- package/typed/layers/utils.d.ts.map +1 -1
- package/typed/layers/vector-tile-layer.d.ts +6 -11
- package/typed/layers/vector-tile-layer.d.ts.map +1 -1
- package/typed/sources/base-source.d.ts +4 -3
- package/typed/sources/base-source.d.ts.map +1 -1
- package/typed/sources/boundary-query-source.d.ts +10 -0
- package/typed/sources/boundary-query-source.d.ts.map +1 -0
- package/typed/sources/boundary-table-source.d.ts +9 -0
- package/typed/sources/boundary-table-source.d.ts.map +1 -0
- package/typed/sources/boundary-tileset-source.d.ts +6 -0
- package/typed/sources/boundary-tileset-source.d.ts.map +1 -0
- package/typed/sources/h3-query-source.d.ts +3 -4
- package/typed/sources/h3-query-source.d.ts.map +1 -1
- package/typed/sources/h3-table-source.d.ts +3 -4
- package/typed/sources/h3-table-source.d.ts.map +1 -1
- package/typed/sources/h3-tileset-source.d.ts +3 -4
- package/typed/sources/h3-tileset-source.d.ts.map +1 -1
- package/typed/sources/index.d.ts +28 -22
- package/typed/sources/index.d.ts.map +1 -1
- package/typed/sources/quadbin-query-source.d.ts +3 -4
- package/typed/sources/quadbin-query-source.d.ts.map +1 -1
- package/typed/sources/quadbin-table-source.d.ts +3 -4
- package/typed/sources/quadbin-table-source.d.ts.map +1 -1
- package/typed/sources/quadbin-tileset-source.d.ts +3 -4
- package/typed/sources/quadbin-tileset-source.d.ts.map +1 -1
- package/typed/sources/raster-source.d.ts +3 -4
- package/typed/sources/raster-source.d.ts.map +1 -1
- package/typed/sources/{common.d.ts → types.d.ts} +26 -42
- package/typed/sources/types.d.ts.map +1 -0
- package/typed/sources/vector-query-source.d.ts +3 -4
- package/typed/sources/vector-query-source.d.ts.map +1 -1
- package/typed/sources/vector-table-source.d.ts +3 -4
- package/typed/sources/vector-table-source.d.ts.map +1 -1
- package/typed/sources/vector-tileset-source.d.ts +3 -4
- package/typed/sources/vector-tileset-source.d.ts.map +1 -1
- package/typed/style/color-bins-style.d.ts.map +1 -1
- package/typed/style/color-categories-style.d.ts.map +1 -1
- package/typed/style/color-continuous-style.d.ts.map +1 -1
- package/typed/style/utils.d.ts +0 -1
- package/typed/style/utils.d.ts.map +1 -1
- package/typed/utils.d.ts +8 -0
- package/typed/utils.d.ts.map +1 -1
- package/dist/es5/api/maps-api-common.js +0 -77
- package/dist/es5/api/maps-api-common.js.map +0 -1
- package/dist/es5/api/maps-client.js +0 -220
- package/dist/es5/api/maps-client.js.map +0 -1
- package/dist/es5/api/maps-v3-client.js +0 -959
- package/dist/es5/api/maps-v3-client.js.map +0 -1
- package/dist/es5/api/parseMap.js.map +0 -1
- package/dist/es5/config.js +0 -84
- package/dist/es5/config.js.map +0 -1
- package/dist/es5/layers/carto-layer.js +0 -329
- package/dist/es5/layers/carto-layer.js.map +0 -1
- package/dist/es5/sources/common.js +0 -48
- package/dist/es5/sources/common.js.map +0 -1
- package/dist/es5/sources/utils.js.map +0 -1
- package/dist/esm/api/maps-api-common.js +0 -54
- package/dist/esm/api/maps-api-common.js.map +0 -1
- package/dist/esm/api/maps-client.js +0 -148
- package/dist/esm/api/maps-client.js.map +0 -1
- package/dist/esm/api/maps-v3-client.js +0 -638
- package/dist/esm/api/maps-v3-client.js.map +0 -1
- package/dist/esm/api/parseMap.js.map +0 -1
- package/dist/esm/config.js +0 -60
- package/dist/esm/config.js.map +0 -1
- package/dist/esm/layers/carto-layer.js +0 -233
- package/dist/esm/layers/carto-layer.js.map +0 -1
- package/dist/esm/sources/common.js +0 -26
- package/dist/esm/sources/common.js.map +0 -1
- package/dist/esm/sources/utils.js.map +0 -1
- package/src/api/maps-api-common.ts +0 -95
- package/src/api/maps-client.ts +0 -196
- package/src/api/maps-v3-client.ts +0 -659
- package/src/config.ts +0 -70
- package/src/layers/carto-layer.ts +0 -340
- package/src/sources/common.ts +0 -132
- package/typed/api/maps-api-common.d.ts +0 -76
- package/typed/api/maps-api-common.d.ts.map +0 -1
- package/typed/api/maps-client.d.ts +0 -18
- package/typed/api/maps-client.d.ts.map +0 -1
- package/typed/api/maps-v3-client.d.ts +0 -49
- package/typed/api/maps-v3-client.d.ts.map +0 -1
- package/typed/api/parseMap.d.ts.map +0 -1
- package/typed/config.d.ts +0 -28
- package/typed/config.d.ts.map +0 -1
- package/typed/layers/carto-layer.d.ts +0 -126
- package/typed/layers/carto-layer.d.ts.map +0 -1
- package/typed/sources/common.d.ts.map +0 -1
- package/typed/sources/utils.d.ts +0 -15
- package/typed/sources/utils.d.ts.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/api/maps-v3-client.ts"],"names":["MAX_GET_LENGTH","DEFAULT_CLIENT","V3_MINOR_VERSION","request","method","url","customHeaders","headers","accessToken","body","errorContext","Accept","Authorization","fetch","CartoAPIError","requestJson","response","json","error","ok","requestData","format","data","rows","getParameters","type","source","geoColumn","columns","clientId","aggregationExp","aggregationResLevel","queryParameters","parameters","client","v","sourceName","MAP_TYPES","QUERY","geo_column","join","isSpatialIndexGeoColumn","spatialIndex","split","mapInstantiation","connection","credentials","baseUrl","mapsUrl","encodedParameters","Object","entries","map","key","value","JSON","stringify","requestType","REQUEST_TYPES","INSTANTIATION","length","getUrlFromMetadata","metadata","m","checkFetchLayerDataParameters","apiVersion","API_VERSIONS","V3","apiBaseUrl","COLUMNS_SUPPORT","includes","GEO_COLUMN_SUPPORT","fetchLayerData","formatTiles","_fetchDataUrl","mapFormat","DATA","result","schema","defaultCredentials","localCreds","prioritizedFormats","FORMATS","GEOJSON","TILEJSON","f","log","assert","values","TILE_FORMATS","_fetchMapDataset","dataset","connectionName","cache","parseInt","URL","searchParams","get","_fetchTilestats","attribute","statsUrl","TILE_STATS","q","stats","attributes","tilestats","layers","index","findIndex","d","fillInMapDatasets","datasets","token","promises","Promise","all","fillInTileStats","keplerMapConfig","config","visState","layer","keys","visualChannels","channel","name","find","id","dataId","TILESET","push","filteredAttributes","a","fetchMap","cartoMapId","autoRefresh","onNewData","PUBLIC_MAP","mapId","intervalId","setInterval","changed","some","stopAutoRefresh","clearInterval","geojsonLayers","filter","geojsonDatasetIds","forEach","geojson","out","textLayers","pointType","props","window","FontFace","document","fonts","check","font","load","then","add"],"mappings":"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","sourcesContent":["/* eslint-disable camelcase */\n/**\n * Maps API Client for Carto 3\n */\nimport {\n getDefaultCredentials,\n buildMapsUrlFromBase,\n buildStatsUrlFromBase,\n CloudNativeCredentials\n} from '../config';\nimport {\n API_VERSIONS,\n COLUMNS_SUPPORT,\n encodeParameter,\n Format,\n FORMATS,\n GEO_COLUMN_SUPPORT,\n MapInstantiation,\n MapType,\n MAP_TYPES,\n QueryParameters,\n REQUEST_TYPES,\n SchemaField,\n TileFormat,\n TILE_FORMATS\n} from './maps-api-common';\n\nimport {APIErrorContext, CartoAPIError} from './carto-api-error';\n\nimport {parseMap} from './parseMap';\nimport {log} from '@deck.gl/core';\nimport {assert} from '../utils';\n\nconst MAX_GET_LENGTH = 8192;\nconst DEFAULT_CLIENT = 'deck-gl-carto';\nconst V3_MINOR_VERSION = '3.2';\n\nexport type Headers = Record<string, string>;\ninterface RequestParams {\n method?: string;\n url: string;\n headers?: Headers;\n accessToken?: string;\n body?: any;\n errorContext: APIErrorContext;\n}\n\n/**\n * Request against Maps API\n */\nasync function request({\n method,\n url,\n headers: customHeaders,\n accessToken,\n body,\n errorContext\n}: RequestParams): Promise<Response> {\n const headers: Headers = {\n ...customHeaders,\n Accept: 'application/json'\n };\n\n if (accessToken) {\n headers.Authorization = `Bearer ${accessToken}`;\n }\n\n if (method === 'POST') {\n headers['Content-Type'] = 'application/json';\n }\n\n try {\n /* global fetch */\n return await fetch(url, {\n method,\n headers,\n body\n });\n } catch (error) {\n throw new CartoAPIError(error as Error, errorContext);\n }\n}\n\nasync function requestJson<T = unknown>({\n method,\n url,\n headers,\n accessToken,\n body,\n errorContext\n}: RequestParams): Promise<T> {\n const response = await request({method, url, headers, accessToken, body, errorContext});\n let json;\n try {\n json = await response.json();\n } catch (error) {\n json = {error: ''};\n }\n\n if (!response.ok) {\n throw new CartoAPIError(json.error, errorContext, response);\n }\n return json as T;\n}\n\nasync function requestData({\n method,\n url,\n accessToken,\n format,\n body,\n errorContext\n}: RequestParams & {\n format: Format;\n}): Promise<Response | unknown> {\n // if (format === FORMATS.NDJSON) {\n // return request({method, url, accessToken, body, errorContext});\n // }\n\n const data = await requestJson<any>({method, url, accessToken, body, errorContext});\n return data.rows ? data.rows : data;\n}\n\ntype FetchLayerDataParams = {\n type: MapType;\n source: string;\n connection: string;\n credentials: CloudNativeCredentials;\n geoColumn?: string;\n columns?: string[];\n clientId?: string;\n format?: Format;\n formatTiles?: TileFormat;\n headers?: Headers;\n aggregationExp?: string;\n aggregationResLevel?: number;\n queryParameters?: QueryParameters;\n};\n\ntype MapsAPIParameters = {\n client: string;\n v: string;\n q?: string;\n name?: string;\n queryParameters?: QueryParameters;\n /* eslint-disable-next-line camelcase */\n geo_column?: string;\n columns?: string;\n aggregationExp?: string;\n aggregationResLevel?: number;\n};\n\n/**\n * Build a URL with all required parameters\n */\nfunction getParameters({\n type,\n source,\n geoColumn,\n columns,\n clientId,\n aggregationExp,\n aggregationResLevel,\n queryParameters\n}: Omit<FetchLayerDataParams, 'connection' | 'credentials'>): MapsAPIParameters {\n const parameters: MapsAPIParameters = {\n client: clientId || DEFAULT_CLIENT,\n v: V3_MINOR_VERSION\n };\n\n const sourceName = type === MAP_TYPES.QUERY ? 'q' : 'name';\n parameters[sourceName] = source;\n\n if (queryParameters) {\n parameters.queryParameters = queryParameters;\n }\n\n if (geoColumn) {\n /* eslint-disable-next-line camelcase */\n parameters.geo_column = geoColumn;\n }\n if (columns) {\n parameters.columns = columns.join(',');\n }\n if (aggregationExp) {\n parameters.aggregationExp = aggregationExp;\n } else if (isSpatialIndexGeoColumn(geoColumn)) {\n // Default aggregationExp required for spatial index layers\n parameters.aggregationExp = '1 AS value';\n }\n if (aggregationResLevel) {\n parameters.aggregationResLevel = aggregationResLevel;\n }\n\n return parameters;\n}\n\nfunction isSpatialIndexGeoColumn(geoColumn: string | undefined) {\n const spatialIndex = geoColumn?.split(':')[0];\n return spatialIndex === 'h3' || spatialIndex === 'quadbin';\n}\n\nexport async function mapInstantiation({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n clientId,\n headers,\n aggregationExp,\n aggregationResLevel,\n queryParameters\n}: FetchLayerDataParams): Promise<MapInstantiation> {\n const baseUrl = `${credentials.mapsUrl}/${connection}/${type}`;\n const parameters = getParameters({\n type,\n source,\n geoColumn,\n columns,\n clientId,\n aggregationResLevel,\n aggregationExp,\n queryParameters\n });\n const encodedParameters = Object.entries(parameters).map(([key, value]) => {\n if (typeof value !== 'string') {\n value = JSON.stringify(value);\n }\n return encodeParameter(key, value);\n });\n const url = `${baseUrl}?${encodedParameters.join('&')}`;\n const {accessToken} = credentials;\n\n const errorContext = {requestType: REQUEST_TYPES.INSTANTIATION, connection, type, source};\n if (url.length > MAX_GET_LENGTH && type === MAP_TYPES.QUERY) {\n return await requestJson({\n method: 'POST',\n url: baseUrl,\n headers,\n accessToken,\n body: JSON.stringify(parameters),\n errorContext\n });\n }\n\n return await requestJson({url, headers, accessToken, errorContext});\n}\n\nfunction getUrlFromMetadata(metadata: MapInstantiation, format: Format): string | null {\n const m = metadata[format];\n\n if (m && !m.error && m.url) {\n return m.url[0];\n }\n\n return null;\n}\n\nfunction checkFetchLayerDataParameters({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n aggregationExp,\n aggregationResLevel\n}: FetchLayerDataParams) {\n assert(connection, 'Must define connection');\n assert(type, 'Must define a type');\n assert(source, 'Must define a source');\n\n assert(credentials.apiVersion === API_VERSIONS.V3, 'Method only available for v3');\n assert(credentials.apiBaseUrl, 'Must define apiBaseUrl');\n assert(credentials.accessToken, 'Must define an accessToken');\n\n if (columns) {\n assert(\n COLUMNS_SUPPORT.includes(type),\n `The columns parameter is not supported by type ${type}`\n );\n }\n if (geoColumn) {\n assert(\n GEO_COLUMN_SUPPORT.includes(type),\n `The geoColumn parameter is not supported by type ${type}`\n );\n } else {\n assert(!aggregationExp, 'Have aggregationExp, but geoColumn parameter is missing');\n assert(!aggregationResLevel, 'Have aggregationResLevel, but geoColumn parameter is missing');\n }\n}\n\nexport interface FetchLayerDataResult {\n data: any;\n format?: Format;\n schema: SchemaField[];\n}\nexport async function fetchLayerData({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n format,\n formatTiles,\n clientId,\n headers,\n aggregationExp,\n aggregationResLevel,\n queryParameters\n}: FetchLayerDataParams): Promise<FetchLayerDataResult> {\n // Internally we split data fetching into two parts to allow us to\n // conditionally fetch the actual data, depending on the metadata state\n const {url, accessToken, mapFormat, metadata} = await _fetchDataUrl({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n format,\n formatTiles,\n clientId,\n headers,\n aggregationExp,\n aggregationResLevel,\n queryParameters\n });\n\n const errorContext = {requestType: REQUEST_TYPES.DATA, connection, type, source};\n const data = await requestData({url, format: mapFormat, accessToken, errorContext});\n const result: FetchLayerDataResult = {data, format: mapFormat, schema: metadata.schema};\n return result;\n}\n\nasync function _fetchDataUrl({\n type,\n source,\n connection,\n credentials,\n geoColumn,\n columns,\n format,\n formatTiles,\n clientId,\n headers,\n aggregationExp,\n aggregationResLevel,\n queryParameters\n}: FetchLayerDataParams) {\n const defaultCredentials = getDefaultCredentials();\n // Only pick up default credentials if they have been defined for\n // correct API version\n const localCreds = {\n ...(defaultCredentials.apiVersion === API_VERSIONS.V3 && defaultCredentials),\n ...credentials\n };\n checkFetchLayerDataParameters({\n type,\n source,\n connection,\n credentials: localCreds,\n geoColumn,\n columns,\n aggregationExp,\n aggregationResLevel\n });\n\n if (!localCreds.mapsUrl) {\n localCreds.mapsUrl = buildMapsUrlFromBase(localCreds.apiBaseUrl);\n }\n\n const metadata = await mapInstantiation({\n type,\n source,\n connection,\n credentials: localCreds,\n geoColumn,\n columns,\n clientId,\n headers,\n aggregationExp,\n aggregationResLevel,\n queryParameters\n });\n let url: string | null = null;\n let mapFormat: Format | undefined;\n\n if (format) {\n mapFormat = format;\n url = getUrlFromMetadata(metadata, format);\n assert(url, `Format ${format} not available`);\n } else {\n // guess map format\n const prioritizedFormats = [FORMATS.GEOJSON, FORMATS.JSON, FORMATS.TILEJSON];\n for (const f of prioritizedFormats) {\n url = getUrlFromMetadata(metadata, f);\n if (url) {\n mapFormat = f;\n break;\n }\n }\n assert(url && mapFormat, 'Unsupported data formats received from backend.');\n }\n\n if (format === FORMATS.TILEJSON && formatTiles) {\n log.assert(\n Object.values(TILE_FORMATS).includes(formatTiles),\n `Invalid value for formatTiles: ${formatTiles}. Use value from TILE_FORMATS`\n );\n url += `&${encodeParameter('formatTiles', formatTiles)}`;\n }\n\n const {accessToken} = localCreds;\n return {url, accessToken, mapFormat, metadata};\n}\n\n/* global clearInterval, setInterval, URL */\nasync function _fetchMapDataset(\n dataset,\n accessToken: string,\n credentials: CloudNativeCredentials,\n clientId?: string,\n headers?: Headers\n) {\n const {\n aggregationExp,\n aggregationResLevel,\n connectionName: connection,\n columns,\n format,\n geoColumn,\n source,\n type,\n queryParameters\n } = dataset;\n // First fetch metadata\n const {url, mapFormat} = await _fetchDataUrl({\n aggregationExp,\n aggregationResLevel,\n clientId,\n credentials: {...credentials, accessToken},\n connection,\n columns,\n format,\n geoColumn,\n headers,\n source,\n type,\n queryParameters\n });\n\n // Extract the last time the data changed\n const cache = parseInt(new URL(url).searchParams.get('cache') || '', 10);\n if (cache && dataset.cache === cache) {\n return false;\n }\n dataset.cache = cache;\n\n // Only fetch if the data has changed\n const errorContext = {requestType: REQUEST_TYPES.DATA, connection, type, source};\n dataset.data = await requestData({url, format: mapFormat, accessToken, errorContext});\n\n return true;\n}\n\nasync function _fetchTilestats(\n attribute,\n dataset,\n accessToken: string,\n credentials: CloudNativeCredentials\n) {\n const {connectionName: connection, source, type} = dataset;\n\n const statsUrl = buildStatsUrlFromBase(credentials.apiBaseUrl);\n let baseUrl = `${statsUrl}/${connection}/`;\n if (type === MAP_TYPES.QUERY) {\n baseUrl += attribute;\n } else {\n // MAP_TYPE.TABLE\n baseUrl += `${source}/${attribute}`;\n }\n\n const errorContext = {requestType: REQUEST_TYPES.TILE_STATS, connection, type, source};\n let url = baseUrl;\n if (type === MAP_TYPES.QUERY) {\n url += `?${encodeParameter('q', source)}`;\n }\n let stats;\n if (url.length > MAX_GET_LENGTH && type === MAP_TYPES.QUERY) {\n stats = await requestJson({\n method: 'POST',\n url: baseUrl,\n accessToken,\n body: JSON.stringify({q: source}),\n errorContext\n });\n } else {\n stats = await requestJson({url, accessToken, errorContext});\n }\n\n // Replace tilestats for attribute with value from API\n const {attributes} = dataset.data.tilestats.layers[0];\n const index = attributes.findIndex(d => d.attribute === attribute);\n attributes[index] = stats;\n return true;\n}\n\nasync function fillInMapDatasets(\n {datasets, token},\n clientId: string,\n credentials: CloudNativeCredentials,\n headers?: Headers\n) {\n const promises = datasets.map(dataset =>\n _fetchMapDataset(dataset, token, credentials, clientId, headers)\n );\n return await Promise.all(promises);\n}\n\nasync function fillInTileStats(\n {datasets, keplerMapConfig, token},\n credentials: CloudNativeCredentials\n) {\n const attributes: {attribute?: string; dataset?: any}[] = [];\n const {layers} = keplerMapConfig.config.visState;\n for (const layer of layers) {\n for (const channel of Object.keys(layer.visualChannels)) {\n const attribute = layer.visualChannels[channel]?.name;\n if (attribute) {\n const dataset = datasets.find(d => d.id === layer.config.dataId);\n if (dataset.data.tilestats && dataset.type !== MAP_TYPES.TILESET) {\n // Only fetch stats for QUERY & TABLE map types\n attributes.push({attribute, dataset});\n }\n }\n }\n }\n // Remove duplicates to avoid repeated requests\n const filteredAttributes: {attribute?: string; dataset?: any}[] = [];\n for (const a of attributes) {\n if (\n !filteredAttributes.find(\n ({attribute, dataset}) => attribute === a.attribute && dataset === a.dataset\n )\n ) {\n filteredAttributes.push(a);\n }\n }\n\n const promises = filteredAttributes.map(({attribute, dataset}) =>\n _fetchTilestats(attribute, dataset, token, credentials)\n );\n return await Promise.all(promises);\n}\n\n/* eslint-disable max-statements */\nexport async function fetchMap({\n cartoMapId,\n clientId,\n credentials,\n headers,\n autoRefresh,\n onNewData\n}: {\n cartoMapId: string;\n clientId: string;\n credentials?: CloudNativeCredentials;\n headers?: Headers;\n autoRefresh?: number;\n onNewData?: (map: any) => void;\n}) {\n const defaultCredentials = getDefaultCredentials();\n const localCreds = {\n ...(defaultCredentials.apiVersion === API_VERSIONS.V3 && defaultCredentials),\n ...credentials\n } as CloudNativeCredentials;\n const {accessToken} = localCreds;\n\n assert(cartoMapId, 'Must define CARTO map id: fetchMap({cartoMapId: \"XXXX-XXXX-XXXX\"})');\n\n assert(localCreds.apiVersion === API_VERSIONS.V3, 'Method only available for v3');\n assert(localCreds.apiBaseUrl, 'Must define apiBaseUrl');\n if (!localCreds.mapsUrl) {\n localCreds.mapsUrl = buildMapsUrlFromBase(localCreds.apiBaseUrl);\n }\n\n if (autoRefresh || onNewData) {\n assert(onNewData, 'Must define `onNewData` when using autoRefresh');\n assert(typeof onNewData === 'function', '`onNewData` must be a function');\n assert(\n typeof autoRefresh === 'number' && autoRefresh > 0,\n '`autoRefresh` must be a positive number'\n );\n }\n\n const url = `${localCreds.mapsUrl}/public/${cartoMapId}`;\n const errorContext = {requestType: REQUEST_TYPES.PUBLIC_MAP, mapId: cartoMapId};\n const map = await requestJson<any>({url, headers, accessToken, errorContext});\n\n // Periodically check if the data has changed. Note that this\n // will not update when a map is published.\n let stopAutoRefresh: (() => void) | undefined;\n if (autoRefresh) {\n // eslint-disable-next-line @typescript-eslint/no-misused-promises\n const intervalId = setInterval(async () => {\n const changed = await fillInMapDatasets(map, clientId, localCreds, headers);\n if (onNewData && changed.some(v => v === true)) {\n onNewData(parseMap(map));\n }\n }, autoRefresh * 1000);\n stopAutoRefresh = () => {\n clearInterval(intervalId);\n };\n }\n\n const geojsonLayers = map.keplerMapConfig.config.visState.layers.filter(\n ({type}) => type === 'geojson' || type === 'point'\n );\n const geojsonDatasetIds = geojsonLayers.map(({config}) => config.dataId);\n map.datasets.forEach(dataset => {\n if (geojsonDatasetIds.includes(dataset.id)) {\n const {config} = geojsonLayers.find(({config}) => config.dataId === dataset.id);\n dataset.format = 'geojson';\n // Support for very old maps. geoColumn was not stored in the past\n if (!dataset.geoColumn && config.columns.geojson) {\n dataset.geoColumn = config.columns.geojson;\n }\n }\n });\n\n // Mutates map.datasets so that dataset.data contains data\n await fillInMapDatasets(map, clientId, localCreds, headers);\n\n // Mutates attributes in visualChannels to contain tile stats\n await fillInTileStats(map, localCreds);\n const out = {...parseMap(map), ...{stopAutoRefresh}};\n\n const textLayers = out.layers.filter(layer => {\n const pointType = layer.props.pointType || '';\n return pointType.includes('text');\n });\n\n /* global FontFace, window, document */\n if (textLayers.length && window.FontFace && !document.fonts.check('12px Inter')) {\n // Fetch font needed for labels\n const font = new FontFace(\n 'Inter',\n 'url(https://fonts.gstatic.com/s/inter/v12/UcC73FwrK3iLTeHuS_fvQtMwCp50KnMa1ZL7W0Q5nw.woff2)'\n );\n await font.load().then(f => document.fonts.add(f));\n }\n\n return out;\n}\n"],"file":"maps-v3-client.js"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/api/parseMap.ts"],"names":["collisionFilterExtension","CollisionFilterExtension","parseMap","json","keplerMapConfig","datasets","token","version","config","mapState","mapStyle","visState","layers","layerBlending","interactionConfig","id","title","description","createdAt","updatedAt","initialViewState","reverse","map","type","visualChannels","dataId","dataset","find","d","data","Layer","propMap","defaultProps","styleProps","createStyleProps","createInteractionProps","createChannelProps","createParametersProp","parameters","createLoadOptions","e","log","error","message","undefined","blendFunc","blendEquation","Object","keys","length","pickable","tooltip","enabled","autoHighlight","mapProps","source","target","mapping","sourceKey","sourceValue","targetKey","entries","key","value","result","stroked","getLineColor","getFillColor","colorAccessor","OPACITY_MAP","Array","isArray","color","opacityKey","opacity","visConfig","highlightColor","enable3d","colorField","colorScale","radiusField","radiusScale","sizeField","sizeScale","strokeColorField","strokeColorScale","heightField","heightScale","textLabel","colorScaleType","colorAggregation","AGGREGATION","getColorValue","getColorWeight","name","aggregation","range","colorRange","altitude","columns","dataTransform","features","forEach","geometry","properties","coordinates","getPointRadius","sizeAggregation","radiusRange","sizeRange","fallbackOpacity","strokeOpacity","strokeColorAggregation","strokeColorRange","getElevation","heightAggregation","heightRange","customMarkers","maxIconSize","customMarkersUrl","customMarkersRange","useMaskedIcons","filled","pointType","getIcon","customMarkersField","fallbackUrl","_subLayerProps","loadOptions","image","imagebitmap","resizeWidth","resizeHeight","resizeQuality","getIconColor","getIconSize","rotationField","getIconAngle","field","mainLabel","secondaryLabel","collisionGroup","getTextAlignmentBaseline","alignment","getTextAnchor","anchor","getTextColor","textOutlineColor","outlineColor","textSizeScale","size","getSecondaryColor","secondaryField","secondaryOutlineColor","secondarySizeScale","getText","getSecondaryText","textCharacterSet","textFontFamily","textFontSettings","sdf","textFontWeight","textOutlineWidth","PointLabelLayer","extensions","collisionEnabled","getRadius","radius","accessToken","fetch","headers","Authorization"],"mappings":"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","sourcesContent":["import GL from '@luma.gl/constants';\nimport {\n AGGREGATION,\n getLayer,\n getColorAccessor,\n getColorValueAccessor,\n getSizeAccessor,\n getTextAccessor,\n OPACITY_MAP,\n opacityToAlpha,\n getIconUrlAccessor,\n negateAccessor,\n getMaxMarkerSize\n} from './layer-map';\nimport PointLabelLayer from '../layers/point-label-layer';\nimport {log} from '@deck.gl/core';\nimport {CollisionFilterExtension} from '@deck.gl/extensions';\nimport {assert} from '../utils';\nimport {MapDataset, MapLayerConfig, VisualChannels} from './types';\n\nconst collisionFilterExtension = new CollisionFilterExtension();\n\nexport function parseMap(json) {\n const {keplerMapConfig, datasets, token} = json;\n assert(keplerMapConfig.version === 'v1', 'Only support Kepler v1');\n const {mapState, mapStyle} = keplerMapConfig.config;\n const {layers, layerBlending, interactionConfig} = keplerMapConfig.config.visState;\n\n return {\n id: json.id,\n title: json.title,\n description: json.description,\n createdAt: json.createdAt,\n updatedAt: json.updatedAt,\n initialViewState: mapState,\n mapStyle,\n token,\n layers: layers.reverse().map(({id, type, config, visualChannels}) => {\n try {\n const {dataId} = config;\n const dataset: MapDataset | null = datasets.find(d => d.id === dataId);\n assert(dataset, `No dataset matching dataId: ${dataId}`);\n const {data} = dataset;\n assert(data, `No data loaded for dataId: ${dataId}`);\n const {Layer, propMap, defaultProps} = getLayer(type, config, dataset);\n const styleProps = createStyleProps(config, propMap);\n return new Layer({\n id,\n data,\n ...defaultProps,\n ...createInteractionProps(interactionConfig),\n ...styleProps,\n ...createChannelProps(id, type, config, visualChannels, data), // Must come after style\n ...createParametersProp(layerBlending, styleProps.parameters || {}), // Must come after style\n ...createLoadOptions(token)\n });\n } catch (e: any) {\n log.error(e.message)();\n return undefined;\n }\n })\n };\n}\n\nfunction createParametersProp(layerBlending, parameters: Record<string, any>) {\n if (layerBlending === 'additive') {\n parameters.blendFunc = [GL.SRC_ALPHA, GL.DST_ALPHA];\n parameters.blendEquation = GL.FUNC_ADD;\n } else if (layerBlending === 'subtractive') {\n parameters.blendFunc = [GL.ONE, GL.ONE_MINUS_DST_COLOR, GL.SRC_ALPHA, GL.DST_ALPHA];\n parameters.blendEquation = [GL.FUNC_SUBTRACT, GL.FUNC_ADD];\n }\n\n return Object.keys(parameters).length ? {parameters} : {};\n}\n\nfunction createInteractionProps(interactionConfig) {\n const pickable = interactionConfig && interactionConfig.tooltip.enabled;\n return {\n autoHighlight: pickable,\n pickable\n };\n}\n\nfunction mapProps(source, target, mapping) {\n for (const sourceKey in mapping) {\n const sourceValue = source[sourceKey];\n const targetKey = mapping[sourceKey];\n if (sourceValue === undefined) {\n // eslint-disable-next-line no-continue\n continue;\n }\n if (typeof targetKey === 'string') {\n target[targetKey] = sourceValue;\n } else if (typeof targetKey === 'function') {\n const [key, value] = Object.entries(targetKey(sourceValue))[0];\n target[key] = value;\n } else if (typeof targetKey === 'object') {\n // Nested definition, recurse down one level (also handles arrays)\n mapProps(sourceValue, target, targetKey);\n }\n }\n}\n\nfunction createStyleProps(config: MapLayerConfig, mapping) {\n const result: Record<string, any> = {};\n mapProps(config, result, mapping);\n\n // Kepler format sometimes omits strokeColor. TODO: remove once we can rely on\n // `strokeColor` always being set when `stroke: true`.\n if (result.stroked && !result.getLineColor) {\n result.getLineColor = result.getFillColor;\n }\n\n for (const colorAccessor in OPACITY_MAP) {\n if (Array.isArray(result[colorAccessor])) {\n const color = [...result[colorAccessor]];\n const opacityKey = OPACITY_MAP[colorAccessor];\n const opacity = config.visConfig[opacityKey];\n color[3] = opacityToAlpha(opacity);\n result[colorAccessor] = color;\n }\n }\n\n result.highlightColor = config.visConfig.enable3d ? [255, 255, 255, 60] : [252, 242, 26, 255];\n return result;\n}\n\n/* eslint-disable complexity, max-statements */\nfunction createChannelProps(\n id: string,\n type: string,\n config: MapLayerConfig,\n visualChannels: VisualChannels,\n data\n) {\n const {\n colorField,\n colorScale,\n radiusField,\n radiusScale,\n sizeField,\n sizeScale,\n strokeColorField,\n strokeColorScale\n } = visualChannels;\n let {heightField, heightScale} = visualChannels;\n if (type === 'hexagonId') {\n heightField = sizeField;\n heightScale = sizeScale;\n }\n const {textLabel, visConfig} = config;\n const result: Record<string, any> = {};\n\n if (type === 'grid' || type === 'hexagon') {\n result.colorScaleType = colorScale;\n if (colorField) {\n const {colorAggregation} = config.visConfig;\n if (!AGGREGATION[colorAggregation]) {\n result.getColorValue = getColorValueAccessor(colorField, colorAggregation, data);\n } else {\n result.getColorWeight = d => d[colorField.name];\n }\n }\n } else if (colorField) {\n const {colorAggregation: aggregation, colorRange: range} = visConfig;\n result.getFillColor = getColorAccessor(\n colorField,\n // @ts-ignore\n colorScale,\n {aggregation, range},\n visConfig.opacity,\n data\n );\n }\n\n if (type === 'point') {\n const altitude = config.columns?.altitude;\n if (altitude) {\n result.dataTransform = data => {\n data.features.forEach(({geometry, properties}) => {\n const {type, coordinates} = geometry;\n if (type === 'Point') {\n coordinates[2] = properties[altitude];\n }\n });\n return data;\n };\n }\n }\n\n if (radiusField || sizeField) {\n result.getPointRadius = getSizeAccessor(\n // @ts-ignore\n radiusField || sizeField,\n // @ts-ignore\n radiusScale || sizeScale,\n visConfig.sizeAggregation,\n visConfig.radiusRange || visConfig.sizeRange,\n data\n );\n }\n\n if (strokeColorField) {\n const fallbackOpacity = type === 'point' ? visConfig.opacity : 1;\n const opacity =\n visConfig.strokeOpacity !== undefined ? visConfig.strokeOpacity : fallbackOpacity;\n const {strokeColorAggregation: aggregation, strokeColorRange: range} = visConfig;\n result.getLineColor = getColorAccessor(\n strokeColorField,\n // @ts-ignore\n strokeColorScale,\n // @ts-ignore\n {aggregation, range},\n opacity,\n data\n );\n }\n\n if (heightField && visConfig.enable3d) {\n result.getElevation = getSizeAccessor(\n heightField,\n // @ts-ignore\n heightScale,\n visConfig.heightAggregation,\n visConfig.heightRange || visConfig.sizeRange,\n data\n );\n }\n\n if (visConfig.customMarkers) {\n const maxIconSize = getMaxMarkerSize(visConfig, visualChannels);\n const {getPointRadius, getFillColor} = result;\n const {customMarkersUrl, customMarkersRange, filled: useMaskedIcons} = visConfig;\n\n result.pointType = 'icon';\n result.getIcon = getIconUrlAccessor(\n visualChannels.customMarkersField,\n customMarkersRange,\n {fallbackUrl: customMarkersUrl, maxIconSize, useMaskedIcons},\n data\n );\n result._subLayerProps = {\n 'points-icon': {\n loadOptions: {\n image: {\n type: 'imagebitmap'\n },\n imagebitmap: {\n resizeWidth: maxIconSize,\n resizeHeight: maxIconSize,\n resizeQuality: 'high'\n }\n }\n }\n };\n\n if (getFillColor && useMaskedIcons) {\n result.getIconColor = getFillColor;\n }\n\n if (getPointRadius) {\n result.getIconSize = getPointRadius;\n }\n\n if (visualChannels.rotationField) {\n result.getIconAngle = negateAccessor(\n getSizeAccessor(visualChannels.rotationField, undefined, null, undefined, data)\n );\n }\n } else if (type === 'point' || type === 'tileset') {\n result.pointType = 'circle';\n }\n\n if (textLabel && textLabel.length && textLabel[0].field) {\n const [mainLabel, secondaryLabel] = textLabel;\n const collisionGroup = id;\n\n ({\n alignment: result.getTextAlignmentBaseline,\n anchor: result.getTextAnchor,\n color: result.getTextColor,\n outlineColor: result.textOutlineColor,\n size: result.textSizeScale\n } = mainLabel);\n const {\n color: getSecondaryColor,\n field: secondaryField,\n outlineColor: secondaryOutlineColor,\n size: secondarySizeScale\n } = secondaryLabel || {};\n\n result.getText = mainLabel.field && getTextAccessor(mainLabel.field, data);\n const getSecondaryText = secondaryField && getTextAccessor(secondaryField, data);\n\n result.pointType = `${result.pointType}+text`;\n result.textCharacterSet = 'auto';\n result.textFontFamily = 'Inter, sans';\n result.textFontSettings = {sdf: true};\n result.textFontWeight = 600;\n result.textOutlineWidth = 3;\n\n result._subLayerProps = {\n ...result._subLayerProps,\n 'points-text': {\n type: PointLabelLayer,\n extensions: [collisionFilterExtension],\n collisionEnabled: true,\n collisionGroup,\n\n // getPointRadius already has radiusScale baked in, so only pass one or the other\n ...(result.getPointRadius\n ? {getRadius: result.getPointRadius}\n : {radiusScale: visConfig.radius}),\n\n ...(secondaryField && {\n getSecondaryText,\n getSecondaryColor,\n secondarySizeScale,\n secondaryOutlineColor\n })\n }\n };\n }\n\n return result;\n}\n\nfunction createLoadOptions(accessToken: string) {\n return {\n loadOptions: {fetch: {headers: {Authorization: `Bearer ${accessToken}`}}}\n };\n}\n"],"file":"parseMap.js"}
|
package/dist/es5/config.js
DELETED
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.setDefaultCredentials = setDefaultCredentials;
|
|
9
|
-
exports.getDefaultCredentials = getDefaultCredentials;
|
|
10
|
-
exports.buildMapsUrlFromBase = buildMapsUrlFromBase;
|
|
11
|
-
exports.buildStatsUrlFromBase = buildStatsUrlFromBase;
|
|
12
|
-
exports.defaultCloudNativeCredentials = exports.defaultClassicCredentials = void 0;
|
|
13
|
-
|
|
14
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
15
|
-
|
|
16
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
17
|
-
|
|
18
|
-
var _mapsApiCommon = require("./api/maps-api-common");
|
|
19
|
-
|
|
20
|
-
var _excluded = ["apiVersion"];
|
|
21
|
-
|
|
22
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
23
|
-
|
|
24
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
25
|
-
|
|
26
|
-
var defaultClassicCredentials = {
|
|
27
|
-
apiKey: 'default_public',
|
|
28
|
-
region: 'us',
|
|
29
|
-
username: 'public'
|
|
30
|
-
};
|
|
31
|
-
exports.defaultClassicCredentials = defaultClassicCredentials;
|
|
32
|
-
var defaultCloudNativeCredentials = {
|
|
33
|
-
apiBaseUrl: 'https://gcp-us-east1.api.carto.com'
|
|
34
|
-
};
|
|
35
|
-
exports.defaultCloudNativeCredentials = defaultCloudNativeCredentials;
|
|
36
|
-
var credentials = {};
|
|
37
|
-
setDefaultCredentials({});
|
|
38
|
-
|
|
39
|
-
function setDefaultCredentials(_ref) {
|
|
40
|
-
var apiVersion = _ref.apiVersion,
|
|
41
|
-
rest = (0, _objectWithoutProperties2.default)(_ref, _excluded);
|
|
42
|
-
apiVersion = apiVersion || _mapsApiCommon.API_VERSIONS.V3;
|
|
43
|
-
|
|
44
|
-
switch (apiVersion) {
|
|
45
|
-
case _mapsApiCommon.API_VERSIONS.V1:
|
|
46
|
-
case _mapsApiCommon.API_VERSIONS.V2:
|
|
47
|
-
credentials = _objectSpread(_objectSpread({
|
|
48
|
-
apiVersion: apiVersion
|
|
49
|
-
}, defaultClassicCredentials), rest);
|
|
50
|
-
break;
|
|
51
|
-
|
|
52
|
-
case _mapsApiCommon.API_VERSIONS.V3:
|
|
53
|
-
credentials = _objectSpread(_objectSpread({
|
|
54
|
-
apiVersion: apiVersion
|
|
55
|
-
}, defaultCloudNativeCredentials), rest);
|
|
56
|
-
break;
|
|
57
|
-
|
|
58
|
-
default:
|
|
59
|
-
throw new Error("Invalid API version ".concat(apiVersion, ". Use API_VERSIONS enum."));
|
|
60
|
-
}
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
function getDefaultCredentials() {
|
|
64
|
-
return credentials;
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
function buildUrlFromBase(apiBaseUrl, endpoint) {
|
|
68
|
-
var suffix = "/v3/".concat(endpoint);
|
|
69
|
-
|
|
70
|
-
if (apiBaseUrl.endsWith('/')) {
|
|
71
|
-
suffix = suffix.substring(1);
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
return "".concat(apiBaseUrl).concat(suffix);
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
function buildMapsUrlFromBase(apiBaseUrl) {
|
|
78
|
-
return buildUrlFromBase(apiBaseUrl, 'maps');
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
function buildStatsUrlFromBase(apiBaseUrl) {
|
|
82
|
-
return buildUrlFromBase(apiBaseUrl, 'stats');
|
|
83
|
-
}
|
|
84
|
-
//# sourceMappingURL=config.js.map
|
package/dist/es5/config.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/config.ts"],"names":["defaultClassicCredentials","apiKey","region","username","defaultCloudNativeCredentials","apiBaseUrl","credentials","setDefaultCredentials","apiVersion","rest","API_VERSIONS","V3","V1","V2","Error","getDefaultCredentials","buildUrlFromBase","endpoint","suffix","endsWith","substring","buildMapsUrlFromBase","buildStatsUrlFromBase"],"mappings":";;;;;;;;;;;;;;;;;AAAA;;;;;;;;AAEO,IAAMA,yBAAyB,GAAG;AACvCC,EAAAA,MAAM,EAAE,gBAD+B;AAEvCC,EAAAA,MAAM,EAAE,IAF+B;AAGvCC,EAAAA,QAAQ,EAAE;AAH6B,CAAlC;;AAMA,IAAMC,6BAA6B,GAAG;AAC3CC,EAAAA,UAAU,EAAE;AAD+B,CAAtC;;AAoBP,IAAIC,WAAwB,GAAG,EAA/B;AAEAC,qBAAqB,CAAC,EAAD,CAArB;;AAEO,SAASA,qBAAT,OAA4E;AAAA,MAA5CC,UAA4C,QAA5CA,UAA4C;AAAA,MAA7BC,IAA6B;AACjFD,EAAAA,UAAU,GAAGA,UAAU,IAAIE,4BAAaC,EAAxC;;AAEA,UAAQH,UAAR;AACE,SAAKE,4BAAaE,EAAlB;AACA,SAAKF,4BAAaG,EAAlB;AACEP,MAAAA,WAAW;AAAIE,QAAAA,UAAU,EAAVA;AAAJ,SAAmBR,yBAAnB,GAAiDS,IAAjD,CAAX;AACA;;AACF,SAAKC,4BAAaC,EAAlB;AACEL,MAAAA,WAAW;AAAIE,QAAAA,UAAU,EAAVA;AAAJ,SAAmBJ,6BAAnB,GAAqDK,IAArD,CAAX;AACA;;AACF;AACE,YAAM,IAAIK,KAAJ,+BAAiCN,UAAjC,8BAAN;AATJ;AAWD;;AAEM,SAASO,qBAAT,GAA8C;AACnD,SAAOT,WAAP;AACD;;AAID,SAASU,gBAAT,CAA0BX,UAA1B,EAA8CY,QAA9C,EAAoE;AAClE,MAAIC,MAAM,iBAAUD,QAAV,CAAV;;AACA,MAAIZ,UAAU,CAACc,QAAX,CAAoB,GAApB,CAAJ,EAA8B;AAC5BD,IAAAA,MAAM,GAAGA,MAAM,CAACE,SAAP,CAAiB,CAAjB,CAAT;AACD;;AAED,mBAAUf,UAAV,SAAuBa,MAAvB;AACD;;AAEM,SAASG,oBAAT,CAA8BhB,UAA9B,EAA0D;AAC/D,SAAOW,gBAAgB,CAACX,UAAD,EAAa,MAAb,CAAvB;AACD;;AAEM,SAASiB,qBAAT,CAA+BjB,UAA/B,EAA2D;AAChE,SAAOW,gBAAgB,CAACX,UAAD,EAAa,OAAb,CAAvB;AACD","sourcesContent":["import {API_VERSIONS} from './api/maps-api-common';\n\nexport const defaultClassicCredentials = {\n apiKey: 'default_public',\n region: 'us',\n username: 'public'\n} as const;\n\nexport const defaultCloudNativeCredentials = {\n apiBaseUrl: 'https://gcp-us-east1.api.carto.com'\n} as const;\n\nexport interface ClassicCredentials {\n apiVersion: 'v1' | 'v2';\n apiKey: string;\n region: string;\n username: string;\n mapsUrl?: string;\n}\n\nexport interface CloudNativeCredentials {\n apiVersion: 'v3';\n apiBaseUrl: string;\n accessToken?: string;\n mapsUrl?: string;\n}\n\nexport type Credentials = ClassicCredentials | CloudNativeCredentials;\nlet credentials: Credentials = {} as Credentials;\n\nsetDefaultCredentials({});\n\nexport function setDefaultCredentials({apiVersion, ...rest}: Partial<Credentials>) {\n apiVersion = apiVersion || API_VERSIONS.V3;\n\n switch (apiVersion) {\n case API_VERSIONS.V1:\n case API_VERSIONS.V2:\n credentials = {apiVersion, ...defaultClassicCredentials, ...rest};\n break;\n case API_VERSIONS.V3:\n credentials = {apiVersion, ...defaultCloudNativeCredentials, ...rest};\n break;\n default:\n throw new Error(`Invalid API version ${apiVersion}. Use API_VERSIONS enum.`);\n }\n}\n\nexport function getDefaultCredentials(): Credentials {\n return credentials;\n}\n\nexport type V3Endpoint = 'maps' | 'stats';\n\nfunction buildUrlFromBase(apiBaseUrl: string, endpoint: V3Endpoint) {\n let suffix = `/v3/${endpoint}`;\n if (apiBaseUrl.endsWith('/')) {\n suffix = suffix.substring(1);\n }\n\n return `${apiBaseUrl}${suffix}`;\n}\n\nexport function buildMapsUrlFromBase(apiBaseUrl: string): string {\n return buildUrlFromBase(apiBaseUrl, 'maps');\n}\n\nexport function buildStatsUrlFromBase(apiBaseUrl: string): string {\n return buildUrlFromBase(apiBaseUrl, 'stats');\n}\n"],"file":"config.js"}
|
|
@@ -1,329 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports.default = void 0;
|
|
9
|
-
|
|
10
|
-
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
-
|
|
12
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
13
|
-
|
|
14
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
15
|
-
|
|
16
|
-
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
17
|
-
|
|
18
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
19
|
-
|
|
20
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
21
|
-
|
|
22
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
23
|
-
|
|
24
|
-
var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
|
|
25
|
-
|
|
26
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
27
|
-
|
|
28
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
29
|
-
|
|
30
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
31
|
-
|
|
32
|
-
var _core = require("@deck.gl/core");
|
|
33
|
-
|
|
34
|
-
var _geoLayers = require("@deck.gl/geo-layers");
|
|
35
|
-
|
|
36
|
-
var _api = require("../api");
|
|
37
|
-
|
|
38
|
-
var _layerMap = require("../api/layer-map");
|
|
39
|
-
|
|
40
|
-
var _mapsApiCommon = require("../api/maps-api-common");
|
|
41
|
-
|
|
42
|
-
var _config = require("../config");
|
|
43
|
-
|
|
44
|
-
var _utils = require("../utils");
|
|
45
|
-
|
|
46
|
-
var _excluded = ["type", "data", "credentials", "connection"],
|
|
47
|
-
_excluded2 = ["data"];
|
|
48
|
-
|
|
49
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
|
|
50
|
-
|
|
51
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
52
|
-
|
|
53
|
-
function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }
|
|
54
|
-
|
|
55
|
-
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
|
56
|
-
|
|
57
|
-
var defaultProps = {
|
|
58
|
-
data: null,
|
|
59
|
-
type: null,
|
|
60
|
-
onDataLoad: {
|
|
61
|
-
type: 'function',
|
|
62
|
-
value: function value(data) {}
|
|
63
|
-
},
|
|
64
|
-
onDataError: {
|
|
65
|
-
type: 'function',
|
|
66
|
-
value: null,
|
|
67
|
-
optional: true
|
|
68
|
-
},
|
|
69
|
-
uniqueIdProperty: 'cartodb_id',
|
|
70
|
-
credentials: null,
|
|
71
|
-
connection: null,
|
|
72
|
-
format: null,
|
|
73
|
-
formatTiles: null,
|
|
74
|
-
clientId: null,
|
|
75
|
-
geoColumn: null,
|
|
76
|
-
columns: {
|
|
77
|
-
type: 'array',
|
|
78
|
-
value: null
|
|
79
|
-
},
|
|
80
|
-
headers: {
|
|
81
|
-
type: 'object',
|
|
82
|
-
value: {},
|
|
83
|
-
optional: true
|
|
84
|
-
},
|
|
85
|
-
aggregationExp: null,
|
|
86
|
-
aggregationResLevel: null,
|
|
87
|
-
queryParameters: null
|
|
88
|
-
};
|
|
89
|
-
|
|
90
|
-
var CartoLayer = function (_CompositeLayer) {
|
|
91
|
-
(0, _inherits2.default)(CartoLayer, _CompositeLayer);
|
|
92
|
-
|
|
93
|
-
var _super = _createSuper(CartoLayer);
|
|
94
|
-
|
|
95
|
-
function CartoLayer() {
|
|
96
|
-
(0, _classCallCheck2.default)(this, CartoLayer);
|
|
97
|
-
return _super.apply(this, arguments);
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
var _proto = CartoLayer.prototype;
|
|
101
|
-
|
|
102
|
-
_proto.initializeState = function initializeState() {
|
|
103
|
-
this.state = {
|
|
104
|
-
data: null,
|
|
105
|
-
apiVersion: null
|
|
106
|
-
};
|
|
107
|
-
};
|
|
108
|
-
|
|
109
|
-
_proto._checkProps = function _checkProps(props) {
|
|
110
|
-
var type = props.type,
|
|
111
|
-
credentials = props.credentials,
|
|
112
|
-
connection = props.connection,
|
|
113
|
-
geoColumn = props.geoColumn,
|
|
114
|
-
columns = props.columns;
|
|
115
|
-
|
|
116
|
-
var localCreds = _objectSpread(_objectSpread({}, (0, _config.getDefaultCredentials)()), credentials);
|
|
117
|
-
|
|
118
|
-
var apiVersion = localCreds.apiVersion;
|
|
119
|
-
|
|
120
|
-
_core.log.assert(Object.values(_api.API_VERSIONS).includes(apiVersion), "Invalid apiVersion ".concat(apiVersion, ". Use API_VERSIONS enum."));
|
|
121
|
-
|
|
122
|
-
if (apiVersion === _api.API_VERSIONS.V1 || apiVersion === _api.API_VERSIONS.V2) {
|
|
123
|
-
_core.log.assert(type === _mapsApiCommon.MAP_TYPES.QUERY || type === _mapsApiCommon.MAP_TYPES.TILESET, "Invalid type ".concat(type, ". Use type MAP_TYPES.QUERY or MAP_TYPES.TILESET for apiVersion ").concat(apiVersion));
|
|
124
|
-
|
|
125
|
-
_core.log.assert(!connection, "Connection prop is not supported for apiVersion ".concat(apiVersion));
|
|
126
|
-
|
|
127
|
-
_core.log.assert(!geoColumn, "geoColumn prop is not supported for apiVersion ".concat(apiVersion));
|
|
128
|
-
|
|
129
|
-
_core.log.assert(!columns, "columns prop is not supported for apiVersion ".concat(apiVersion));
|
|
130
|
-
} else if (apiVersion === _api.API_VERSIONS.V3) {
|
|
131
|
-
_core.log.assert(connection, 'Missing mandatory connection parameter');
|
|
132
|
-
|
|
133
|
-
_core.log.assert(Object.values(_mapsApiCommon.MAP_TYPES).includes(type), "Invalid type ".concat(type, ". Use MAP_TYPES enum."));
|
|
134
|
-
|
|
135
|
-
if (!_mapsApiCommon.COLUMNS_SUPPORT.includes(type)) {
|
|
136
|
-
_core.log.assert(!columns, "columns prop is only supported for types: ".concat(_mapsApiCommon.COLUMNS_SUPPORT.join()));
|
|
137
|
-
}
|
|
138
|
-
|
|
139
|
-
if (!_mapsApiCommon.GEO_COLUMN_SUPPORT.includes(type)) {
|
|
140
|
-
_core.log.assert(!geoColumn, "geoColumn prop is only supported for types: ".concat(_mapsApiCommon.GEO_COLUMN_SUPPORT.join()));
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
if (columns) {
|
|
144
|
-
_core.log.assert(Array.isArray(columns), 'columns prop must be an Array');
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
};
|
|
148
|
-
|
|
149
|
-
_proto.updateState = function updateState(_ref) {
|
|
150
|
-
var props = _ref.props,
|
|
151
|
-
oldProps = _ref.oldProps,
|
|
152
|
-
changeFlags = _ref.changeFlags;
|
|
153
|
-
|
|
154
|
-
this._checkProps(props);
|
|
155
|
-
|
|
156
|
-
var shouldUpdateData = changeFlags.dataChanged || props.aggregationExp !== oldProps.aggregationExp || props.aggregationResLevel !== oldProps.aggregationResLevel || props.connection !== oldProps.connection || props.geoColumn !== oldProps.geoColumn || props.formatTiles !== oldProps.formatTiles || props.type !== oldProps.type || JSON.stringify(props.columns) !== JSON.stringify(oldProps.columns) || JSON.stringify(props.credentials) !== JSON.stringify(oldProps.credentials) || JSON.stringify(props.queryParameters) !== JSON.stringify(oldProps.queryParameters);
|
|
157
|
-
|
|
158
|
-
if (shouldUpdateData) {
|
|
159
|
-
this.setState({
|
|
160
|
-
data: null,
|
|
161
|
-
apiVersion: null
|
|
162
|
-
});
|
|
163
|
-
|
|
164
|
-
this._updateData();
|
|
165
|
-
}
|
|
166
|
-
};
|
|
167
|
-
|
|
168
|
-
_proto._updateData = function () {
|
|
169
|
-
var _updateData2 = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee() {
|
|
170
|
-
var _this$props$onDataLoa, _this$props2, _this$props, type, source, credentials, connection, rest, localConfig, apiVersion, result;
|
|
171
|
-
|
|
172
|
-
return _regenerator.default.wrap(function _callee$(_context) {
|
|
173
|
-
while (1) {
|
|
174
|
-
switch (_context.prev = _context.next) {
|
|
175
|
-
case 0:
|
|
176
|
-
_context.prev = 0;
|
|
177
|
-
_this$props = this.props, type = _this$props.type, source = _this$props.data, credentials = _this$props.credentials, connection = _this$props.connection, rest = (0, _objectWithoutProperties2.default)(_this$props, _excluded);
|
|
178
|
-
localConfig = _objectSpread(_objectSpread({}, (0, _config.getDefaultCredentials)()), credentials);
|
|
179
|
-
apiVersion = localConfig.apiVersion;
|
|
180
|
-
|
|
181
|
-
if (!(apiVersion === _api.API_VERSIONS.V1 || apiVersion === _api.API_VERSIONS.V2)) {
|
|
182
|
-
_context.next = 11;
|
|
183
|
-
break;
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
_context.next = 7;
|
|
187
|
-
return (0, _api.getDataV2)({
|
|
188
|
-
type: type,
|
|
189
|
-
source: source,
|
|
190
|
-
credentials: credentials
|
|
191
|
-
});
|
|
192
|
-
|
|
193
|
-
case 7:
|
|
194
|
-
_context.t0 = _context.sent;
|
|
195
|
-
result = {
|
|
196
|
-
data: _context.t0
|
|
197
|
-
};
|
|
198
|
-
_context.next = 14;
|
|
199
|
-
break;
|
|
200
|
-
|
|
201
|
-
case 11:
|
|
202
|
-
_context.next = 13;
|
|
203
|
-
return (0, _api.fetchLayerData)(_objectSpread(_objectSpread({
|
|
204
|
-
type: type,
|
|
205
|
-
source: source,
|
|
206
|
-
credentials: credentials,
|
|
207
|
-
connection: connection
|
|
208
|
-
}, rest), {}, {
|
|
209
|
-
format: _mapsApiCommon.FORMATS.TILEJSON
|
|
210
|
-
}));
|
|
211
|
-
|
|
212
|
-
case 13:
|
|
213
|
-
result = _context.sent;
|
|
214
|
-
|
|
215
|
-
case 14:
|
|
216
|
-
this.setState(_objectSpread(_objectSpread({}, result), {}, {
|
|
217
|
-
apiVersion: apiVersion
|
|
218
|
-
}));
|
|
219
|
-
(_this$props$onDataLoa = (_this$props2 = this.props).onDataLoad) === null || _this$props$onDataLoa === void 0 ? void 0 : _this$props$onDataLoa.call(_this$props2, result.data, {
|
|
220
|
-
propName: 'data',
|
|
221
|
-
layer: this
|
|
222
|
-
});
|
|
223
|
-
_context.next = 25;
|
|
224
|
-
break;
|
|
225
|
-
|
|
226
|
-
case 18:
|
|
227
|
-
_context.prev = 18;
|
|
228
|
-
_context.t1 = _context["catch"](0);
|
|
229
|
-
|
|
230
|
-
if (!this.props.onDataError) {
|
|
231
|
-
_context.next = 24;
|
|
232
|
-
break;
|
|
233
|
-
}
|
|
234
|
-
|
|
235
|
-
this.props.onDataError(_context.t1);
|
|
236
|
-
_context.next = 25;
|
|
237
|
-
break;
|
|
238
|
-
|
|
239
|
-
case 24:
|
|
240
|
-
throw _context.t1;
|
|
241
|
-
|
|
242
|
-
case 25:
|
|
243
|
-
case "end":
|
|
244
|
-
return _context.stop();
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
}, _callee, this, [[0, 18]]);
|
|
248
|
-
}));
|
|
249
|
-
|
|
250
|
-
function _updateData() {
|
|
251
|
-
return _updateData2.apply(this, arguments);
|
|
252
|
-
}
|
|
253
|
-
|
|
254
|
-
return _updateData;
|
|
255
|
-
}();
|
|
256
|
-
|
|
257
|
-
_proto._getSubLayerAndProps = function _getSubLayerAndProps() {
|
|
258
|
-
(0, _utils.assert)(this.state);
|
|
259
|
-
var _this$state = this.state,
|
|
260
|
-
data = _this$state.data,
|
|
261
|
-
apiVersion = _this$state.apiVersion;
|
|
262
|
-
var uniqueIdProperty = defaultProps.uniqueIdProperty;
|
|
263
|
-
var _this$props3 = this.props,
|
|
264
|
-
_notUsed = _this$props3.data,
|
|
265
|
-
propsNoData = (0, _objectWithoutProperties2.default)(_this$props3, _excluded2);
|
|
266
|
-
|
|
267
|
-
var props = _objectSpread({
|
|
268
|
-
uniqueIdProperty: uniqueIdProperty
|
|
269
|
-
}, propsNoData);
|
|
270
|
-
|
|
271
|
-
if (apiVersion === _api.API_VERSIONS.V1 || apiVersion === _api.API_VERSIONS.V2) {
|
|
272
|
-
return [_geoLayers.MVTLayer, props];
|
|
273
|
-
}
|
|
274
|
-
|
|
275
|
-
var tileUrl = new URL(data.tiles[0]);
|
|
276
|
-
props.formatTiles = props.formatTiles || tileUrl.searchParams.get('formatTiles');
|
|
277
|
-
return [(0, _layerMap.layerFromTileDataset)(props.formatTiles, data.scheme, props.type), props];
|
|
278
|
-
};
|
|
279
|
-
|
|
280
|
-
_proto.renderLayers = function renderLayers() {
|
|
281
|
-
(0, _utils.assert)(this.state);
|
|
282
|
-
var _this$state2 = this.state,
|
|
283
|
-
apiVersion = _this$state2.apiVersion,
|
|
284
|
-
data = _this$state2.data;
|
|
285
|
-
if (!data) return null;
|
|
286
|
-
var _this$props4 = this.props,
|
|
287
|
-
credentials = _this$props4.credentials,
|
|
288
|
-
updateTriggers = _this$props4.updateTriggers;
|
|
289
|
-
var loadOptions = this.getLoadOptions() || {};
|
|
290
|
-
|
|
291
|
-
if (apiVersion === _api.API_VERSIONS.V3) {
|
|
292
|
-
var _loadOptions$fetch;
|
|
293
|
-
|
|
294
|
-
var localConfig = _objectSpread(_objectSpread({}, (0, _config.getDefaultCredentials)()), credentials);
|
|
295
|
-
|
|
296
|
-
var accessToken = localConfig.accessToken;
|
|
297
|
-
loadOptions.fetch = _objectSpread(_objectSpread({}, loadOptions.fetch), {}, {
|
|
298
|
-
headers: _objectSpread(_objectSpread({}, (_loadOptions$fetch = loadOptions.fetch) === null || _loadOptions$fetch === void 0 ? void 0 : _loadOptions$fetch.headers), {}, {
|
|
299
|
-
Authorization: "Bearer ".concat(accessToken)
|
|
300
|
-
})
|
|
301
|
-
});
|
|
302
|
-
}
|
|
303
|
-
|
|
304
|
-
var _this$_getSubLayerAnd = this._getSubLayerAndProps(),
|
|
305
|
-
_this$_getSubLayerAnd2 = (0, _slicedToArray2.default)(_this$_getSubLayerAnd, 2),
|
|
306
|
-
layer = _this$_getSubLayerAnd2[0],
|
|
307
|
-
props = _this$_getSubLayerAnd2[1];
|
|
308
|
-
|
|
309
|
-
return new layer(props, this.getSubLayerProps({
|
|
310
|
-
id: "carto-".concat(layer.layerName),
|
|
311
|
-
data: data,
|
|
312
|
-
loadOptions: loadOptions,
|
|
313
|
-
updateTriggers: updateTriggers
|
|
314
|
-
}));
|
|
315
|
-
};
|
|
316
|
-
|
|
317
|
-
(0, _createClass2.default)(CartoLayer, [{
|
|
318
|
-
key: "isLoaded",
|
|
319
|
-
get: function get() {
|
|
320
|
-
return this.getSubLayers().length > 0 && (0, _get2.default)((0, _getPrototypeOf2.default)(CartoLayer.prototype), "isLoaded", this);
|
|
321
|
-
}
|
|
322
|
-
}]);
|
|
323
|
-
return CartoLayer;
|
|
324
|
-
}(_core.CompositeLayer);
|
|
325
|
-
|
|
326
|
-
exports.default = CartoLayer;
|
|
327
|
-
CartoLayer.layerName = 'CartoLayer';
|
|
328
|
-
CartoLayer.defaultProps = defaultProps;
|
|
329
|
-
//# sourceMappingURL=carto-layer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/layers/carto-layer.ts"],"names":["defaultProps","data","type","onDataLoad","value","onDataError","optional","uniqueIdProperty","credentials","connection","format","formatTiles","clientId","geoColumn","columns","headers","aggregationExp","aggregationResLevel","queryParameters","CartoLayer","initializeState","state","apiVersion","_checkProps","props","localCreds","log","assert","Object","values","API_VERSIONS","includes","V1","V2","MAP_TYPES","QUERY","TILESET","V3","COLUMNS_SUPPORT","join","GEO_COLUMN_SUPPORT","Array","isArray","updateState","oldProps","changeFlags","shouldUpdateData","dataChanged","JSON","stringify","setState","_updateData","source","rest","localConfig","result","FORMATS","TILEJSON","propName","layer","_getSubLayerAndProps","_notUsed","propsNoData","MVTLayer","tileUrl","URL","tiles","searchParams","get","scheme","renderLayers","updateTriggers","loadOptions","getLoadOptions","accessToken","fetch","Authorization","getSubLayerProps","id","layerName","getSubLayers","length","CompositeLayer"],"mappings":"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","sourcesContent":["import {\n CompositeLayer,\n CompositeLayerProps,\n Layer,\n LayerProps,\n log,\n UpdateParameters\n} from '@deck.gl/core';\n\nimport {MVTLayer} from '@deck.gl/geo-layers';\nimport {fetchLayerData, getDataV2, API_VERSIONS} from '../api';\nimport {CartoAPIError} from '../api/carto-api-error';\nimport {layerFromTileDataset} from '../api/layer-map';\nimport {\n COLUMNS_SUPPORT,\n FORMATS,\n GEO_COLUMN_SUPPORT,\n MapType,\n MAP_TYPES,\n TileFormat,\n QueryParameters\n} from '../api/maps-api-common';\nimport {\n ClassicCredentials,\n CloudNativeCredentials,\n Credentials,\n getDefaultCredentials\n} from '../config';\nimport {FetchLayerDataResult, Headers} from '../api/maps-v3-client';\nimport {assert} from '../utils';\n\nconst defaultProps = {\n // (String, required): data resource to load. table name, sql query or tileset name.\n data: null,\n // (Enum (MAP_TYPES), required)\n type: null,\n onDataLoad: {type: 'function', value: data => {}},\n onDataError: {type: 'function', value: null, optional: true},\n uniqueIdProperty: 'cartodb_id',\n\n // override carto credentials for the layer, set to null to read from default\n credentials: null,\n\n /*********************/\n /* API v3 PARAMETERS */\n /**********************/\n // (String, required): connection name at CARTO platform\n connection: null,\n\n // (String, optional): format of data\n format: null,\n\n // (String, optional): force format of data for tiles\n formatTiles: null,\n\n // (String, optional): clientId identifier used for internal tracing, place here a string to identify the client who is doing the request.\n clientId: null,\n\n // (String, optional): name of the `geo_column` in the CARTO platform. Use this override the default column ('geom'), from which the geometry information should be fetched.\n geoColumn: null,\n\n // (Array<String>, optional): names of columns to fetch. By default, all columns are fetched.\n columns: {type: 'array', value: null},\n\n // (Headers, optional): Custom headers to include in the map instantiation request.\n headers: {type: 'object', value: {}, optional: true},\n\n // (String, optional): aggregation SQL expression. Only used for spatial index datasets\n aggregationExp: null,\n\n // (Number, optional): aggregation resolution level. Only used for spatial index datasets, defaults to 6 for quadbins, 4 for h3\n aggregationResLevel: null,\n\n // (QueryParameters, optional): query parameters to be sent to the server.\n queryParameters: null\n};\n\n/** All properties supported by CartoLayer. */\nexport type CartoLayerProps = _CartoLayerProps & CompositeLayerProps;\n\n/** Properties added by CartoLayer. */\ntype _CartoLayerProps = {\n /**\n * Either a SQL query or a name of dataset/tileset.\n */\n data: string;\n\n /**\n * Data type.\n *\n * Possible values are:\n * * `MAP_TYPES.QUERY`, if data is a SQL query.\n * * `MAP_TYPES.TILESET`, if data is a tileset name.\n * * `MAP_TYPES.TABLE`, if data is a dataset name. Only supported with API v3.\n */\n type: MapType;\n\n /**\n * Name of the connection registered in the CARTO workspace.\n *\n * Required when apiVersion is `API_VERSIONS.V3`.\n */\n connection?: string;\n\n /**\n * Use to override the default tile data format.\n *\n * Only supported when apiVersion is `API_VERSIONS.V3`.\n *\n * Possible values are: `TILE_FORMATS.BINARY`, `TILE_FORMATS.GEOJSON` and `TILE_FORMATS.MVT`.\n */\n formatTiles?: TileFormat;\n\n /**\n * Name of the geo_column in the CARTO platform.\n *\n * Use this override the default column (`'geom'`), from which the geometry information should be fetched.\n *\n * Only supported when apiVersion is `API_VERSIONS.V3` and type is `MAP_TYPES.TABLE`.\n */\n geoColumn?: string;\n\n /**\n * Names of columns to fetch.\n *\n * By default, all columns are fetched\n *\n * Only supported when apiVersion is `API_VERSIONS.V3` and type is `MAP_TYPES.TABLE`.\n */\n columns?: string[];\n\n /**\n * A string pointing to a unique attribute at the result of the query.\n *\n * A unique attribute is needed for highlighting with vector tiles when a feature is split across two or more tiles.\n */\n uniqueIdProperty?: string;\n\n /**\n * Optional. Overrides the configuration to connect with CARTO.\n *\n * @see Credentials\n */\n credentials?: Credentials;\n\n /**\n * Called when the request to the CARTO Maps API failed.\n *\n * By default the CartoAPIError is thrown.\n */\n onDataError?: (err: CartoAPIError) => void;\n\n clientId?: string;\n\n /** Custom headers to include in the map instantiation request **/\n headers?: Headers;\n\n /** Aggregation SQL expression. Only used for spatial index datasets **/\n aggregationExp?: string;\n\n /** Aggregation resolution level. Only used for spatial index datasets, defaults to 6 for quadbins, 4 for h3. **/\n aggregationResLevel?: number;\n\n /** Query parameters to be sent to the server. **/\n queryParameters?: QueryParameters;\n};\n\nexport default class CartoLayer<ExtraProps extends {} = {}> extends CompositeLayer<\n Required<_CartoLayerProps> & ExtraProps\n> {\n static layerName = 'CartoLayer';\n static defaultProps = defaultProps;\n\n initializeState(): void {\n this.state = {\n data: null,\n apiVersion: null\n };\n }\n\n get isLoaded(): boolean {\n return this.getSubLayers().length > 0 && super.isLoaded;\n }\n\n _checkProps(props: CartoLayerProps): void {\n const {type, credentials, connection, geoColumn, columns} = props;\n const localCreds = {...getDefaultCredentials(), ...credentials};\n const {apiVersion} = localCreds;\n\n log.assert(\n Object.values(API_VERSIONS).includes(apiVersion),\n `Invalid apiVersion ${apiVersion}. Use API_VERSIONS enum.`\n );\n\n if (apiVersion === API_VERSIONS.V1 || apiVersion === API_VERSIONS.V2) {\n log.assert(\n type === MAP_TYPES.QUERY || type === MAP_TYPES.TILESET,\n `Invalid type ${type}. Use type MAP_TYPES.QUERY or MAP_TYPES.TILESET for apiVersion ${apiVersion}`\n );\n log.assert(!connection, `Connection prop is not supported for apiVersion ${apiVersion}`);\n log.assert(!geoColumn, `geoColumn prop is not supported for apiVersion ${apiVersion}`);\n log.assert(!columns, `columns prop is not supported for apiVersion ${apiVersion}`);\n } else if (apiVersion === API_VERSIONS.V3) {\n log.assert(connection, 'Missing mandatory connection parameter');\n log.assert(\n Object.values(MAP_TYPES).includes(type),\n `Invalid type ${type}. Use MAP_TYPES enum.`\n );\n if (!COLUMNS_SUPPORT.includes(type)) {\n log.assert(!columns, `columns prop is only supported for types: ${COLUMNS_SUPPORT.join()}`);\n }\n if (!GEO_COLUMN_SUPPORT.includes(type)) {\n log.assert(\n !geoColumn,\n `geoColumn prop is only supported for types: ${GEO_COLUMN_SUPPORT.join()}`\n );\n }\n if (columns) {\n log.assert(Array.isArray(columns), 'columns prop must be an Array');\n }\n }\n }\n\n updateState({props, oldProps, changeFlags}: UpdateParameters<this>) {\n this._checkProps(props);\n const shouldUpdateData =\n changeFlags.dataChanged ||\n props.aggregationExp !== oldProps.aggregationExp ||\n props.aggregationResLevel !== oldProps.aggregationResLevel ||\n props.connection !== oldProps.connection ||\n props.geoColumn !== oldProps.geoColumn ||\n props.formatTiles !== oldProps.formatTiles ||\n props.type !== oldProps.type ||\n JSON.stringify(props.columns) !== JSON.stringify(oldProps.columns) ||\n JSON.stringify(props.credentials) !== JSON.stringify(oldProps.credentials) ||\n JSON.stringify(props.queryParameters) !== JSON.stringify(oldProps.queryParameters);\n\n if (shouldUpdateData) {\n this.setState({data: null, apiVersion: null});\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n this._updateData();\n }\n }\n\n async _updateData(): Promise<void> {\n try {\n const {type, data: source, credentials, connection, ...rest} = this.props;\n const localConfig = {...getDefaultCredentials(), ...credentials};\n const {apiVersion} = localConfig;\n\n let result: Partial<FetchLayerDataResult>;\n if (apiVersion === API_VERSIONS.V1 || apiVersion === API_VERSIONS.V2) {\n result = {\n data: await getDataV2({type, source, credentials: credentials as ClassicCredentials})\n };\n } else {\n result = await fetchLayerData({\n type,\n source,\n credentials: credentials as CloudNativeCredentials,\n connection,\n ...rest,\n // CartoLayer only supports tiled output from v8.8, force data format\n format: FORMATS.TILEJSON\n });\n }\n\n this.setState({...result, apiVersion});\n\n this.props.onDataLoad?.(result.data, {\n propName: 'data',\n layer: this\n });\n } catch (err) {\n if (this.props.onDataError) {\n this.props.onDataError(err as CartoAPIError);\n } else {\n throw err;\n }\n }\n }\n\n _getSubLayerAndProps(): [any, LayerProps] {\n assert(this.state);\n\n const {data, apiVersion} = this.state;\n\n const {uniqueIdProperty} = defaultProps;\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const {data: _notUsed, ...propsNoData} = this.props;\n // @ts-expect-error 'uniqueIdProperty' is specified more than once, so this usage will be overwritten.\n const props = {uniqueIdProperty, ...propsNoData};\n\n if (apiVersion === API_VERSIONS.V1 || apiVersion === API_VERSIONS.V2) {\n return [MVTLayer, props];\n }\n\n /* global URL */\n const tileUrl = new URL(data.tiles[0]);\n props.formatTiles =\n props.formatTiles || (tileUrl.searchParams.get('formatTiles') as TileFormat);\n\n return [layerFromTileDataset(props.formatTiles, data.scheme, props.type), props];\n }\n\n renderLayers(): Layer | null {\n assert(this.state);\n\n const {apiVersion, data} = this.state;\n\n if (!data) return null;\n\n const {credentials, updateTriggers} = this.props;\n const loadOptions: any = this.getLoadOptions() || {};\n if (apiVersion === API_VERSIONS.V3) {\n const localConfig = {...getDefaultCredentials(), ...credentials} as CloudNativeCredentials;\n const {accessToken} = localConfig;\n loadOptions.fetch = {\n ...loadOptions.fetch,\n headers: {\n ...loadOptions.fetch?.headers,\n Authorization: `Bearer ${accessToken}`\n }\n };\n }\n\n const [layer, props] = this._getSubLayerAndProps();\n\n // eslint-disable-next-line new-cap\n return new layer(\n props,\n this.getSubLayerProps({\n id: `carto-${layer.layerName}`,\n data,\n loadOptions,\n updateTriggers\n })\n );\n }\n}\n"],"file":"carto-layer.js"}
|