@deck.gl/carto 9.0.0-beta.2 → 9.0.0-beta.4

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.
Files changed (476) hide show
  1. package/{typed → dist}/api/carto-api-error.d.ts +1 -1
  2. package/dist/api/carto-api-error.d.ts.map +1 -0
  3. package/dist/api/carto-api-error.js +47 -0
  4. package/dist/{esm/api → api}/common.js +4 -5
  5. package/{typed → dist}/api/endpoints.d.ts +1 -1
  6. package/dist/api/endpoints.d.ts.map +1 -0
  7. package/dist/api/endpoints.js +22 -0
  8. package/dist/api/fetch-map.js +187 -0
  9. package/dist/api/index.d.ts +7 -0
  10. package/dist/api/index.d.ts.map +1 -0
  11. package/dist/api/index.js +3 -0
  12. package/{typed → dist}/api/layer-map.d.ts +6 -6
  13. package/dist/api/layer-map.d.ts.map +1 -0
  14. package/dist/api/layer-map.js +373 -0
  15. package/dist/api/parse-map.js +250 -0
  16. package/{typed → dist}/api/query.d.ts +1 -1
  17. package/dist/api/query.d.ts.map +1 -0
  18. package/dist/api/query.js +24 -0
  19. package/{typed → dist}/api/request-with-parameters.d.ts +1 -1
  20. package/dist/api/request-with-parameters.d.ts.map +1 -0
  21. package/dist/api/request-with-parameters.js +53 -0
  22. package/{typed → dist}/api/types.d.ts +18 -1
  23. package/dist/api/types.d.ts.map +1 -0
  24. package/dist/api/types.js +20 -0
  25. package/dist/basemap.js +9 -0
  26. package/dist/cartoRasterTile-worker.js +2 -2
  27. package/dist/cartoSpatialTile-worker.js +7 -7
  28. package/dist/cartoVectorTile-worker.js +3 -3
  29. package/dist/dist.dev.js +1252 -1073
  30. package/dist/index.cjs +2708 -0
  31. package/dist/index.cjs.map +7 -0
  32. package/dist/index.d.ts +37 -0
  33. package/dist/index.d.ts.map +1 -0
  34. package/dist/index.js +34 -0
  35. package/{typed → dist}/layers/h3-tile-layer.d.ts +2 -2
  36. package/dist/layers/h3-tile-layer.d.ts.map +1 -0
  37. package/dist/layers/h3-tile-layer.js +64 -0
  38. package/dist/layers/h3-tileset-2d.js +99 -0
  39. package/dist/layers/point-label-layer.js +150 -0
  40. package/dist/layers/quadbin-layer.js +21 -0
  41. package/{typed → dist}/layers/quadbin-tile-layer.d.ts +3 -3
  42. package/dist/layers/quadbin-tile-layer.d.ts.map +1 -0
  43. package/dist/layers/quadbin-tile-layer.js +47 -0
  44. package/dist/layers/quadbin-tileset-2d.js +27 -0
  45. package/dist/layers/quadbin-utils.js +21 -0
  46. package/dist/layers/raster-layer-vertex.glsl.d.ts +3 -0
  47. package/dist/{esm/layers → layers}/raster-layer-vertex.glsl.js +2 -3
  48. package/{typed → dist}/layers/raster-layer.d.ts.map +1 -1
  49. package/dist/layers/raster-layer.js +99 -0
  50. package/{typed → dist}/layers/raster-tile-layer.d.ts +3 -3
  51. package/dist/layers/raster-tile-layer.d.ts.map +1 -0
  52. package/dist/layers/raster-tile-layer.js +43 -0
  53. package/dist/layers/schema/carto-properties-tile-loader.js +21 -0
  54. package/{typed → dist}/layers/schema/carto-properties-tile.d.ts +1 -1
  55. package/dist/layers/schema/carto-properties-tile.d.ts.map +1 -0
  56. package/dist/layers/schema/carto-properties-tile.js +14 -0
  57. package/{typed → dist}/layers/schema/carto-raster-tile-loader.d.ts +1 -1
  58. package/dist/layers/schema/carto-raster-tile-loader.d.ts.map +1 -0
  59. package/dist/layers/schema/carto-raster-tile-loader.js +36 -0
  60. package/dist/layers/schema/carto-raster-tile.js +46 -0
  61. package/dist/layers/schema/carto-spatial-tile-loader.js +35 -0
  62. package/{typed → dist}/layers/schema/carto-spatial-tile.d.ts +2 -2
  63. package/dist/layers/schema/carto-spatial-tile.d.ts.map +1 -0
  64. package/dist/layers/schema/carto-spatial-tile.js +38 -0
  65. package/dist/layers/schema/carto-tile.js +187 -0
  66. package/dist/layers/schema/carto-vector-tile-loader.js +65 -0
  67. package/dist/layers/schema/fast-pbf.js +7 -0
  68. package/dist/layers/schema/spatialjson-utils.js +15 -0
  69. package/dist/layers/schema/tile-loader-utils.js +6 -0
  70. package/{typed → dist}/layers/spatial-index-tile-layer.d.ts +1 -1
  71. package/{typed → dist}/layers/spatial-index-tile-layer.d.ts.map +1 -1
  72. package/dist/layers/spatial-index-tile-layer.js +64 -0
  73. package/{typed → dist}/layers/utils.d.ts +3 -3
  74. package/dist/layers/utils.d.ts.map +1 -0
  75. package/dist/layers/utils.js +74 -0
  76. package/{typed → dist}/layers/vector-tile-layer.d.ts +2 -1
  77. package/dist/layers/vector-tile-layer.d.ts.map +1 -0
  78. package/dist/layers/vector-tile-layer.js +102 -0
  79. package/{typed → dist}/sources/base-source.d.ts +2 -2
  80. package/dist/sources/base-source.d.ts.map +1 -0
  81. package/dist/sources/base-source.js +52 -0
  82. package/dist/sources/boundary-query-source.d.ts +11 -0
  83. package/dist/sources/boundary-query-source.d.ts.map +1 -0
  84. package/dist/sources/boundary-query-source.js +19 -0
  85. package/{typed → dist}/sources/boundary-table-source.d.ts +2 -2
  86. package/dist/sources/boundary-table-source.d.ts.map +1 -0
  87. package/dist/sources/boundary-table-source.js +16 -0
  88. package/{typed → dist}/sources/h3-query-source.d.ts +1 -1
  89. package/{typed → dist}/sources/h3-query-source.d.ts.map +1 -1
  90. package/dist/sources/h3-query-source.js +18 -0
  91. package/{typed → dist}/sources/h3-table-source.d.ts +1 -1
  92. package/{typed → dist}/sources/h3-table-source.d.ts.map +1 -1
  93. package/dist/sources/h3-table-source.js +18 -0
  94. package/{typed → dist}/sources/h3-tileset-source.d.ts +1 -1
  95. package/dist/sources/h3-tileset-source.d.ts.map +1 -0
  96. package/dist/sources/h3-tileset-source.js +6 -0
  97. package/dist/sources/index.d.ts +27 -0
  98. package/dist/sources/index.d.ts.map +1 -0
  99. package/dist/sources/index.js +13 -0
  100. package/{typed → dist}/sources/quadbin-query-source.d.ts +1 -1
  101. package/{typed → dist}/sources/quadbin-query-source.d.ts.map +1 -1
  102. package/dist/sources/quadbin-query-source.js +18 -0
  103. package/{typed → dist}/sources/quadbin-table-source.d.ts +1 -1
  104. package/{typed → dist}/sources/quadbin-table-source.d.ts.map +1 -1
  105. package/dist/sources/quadbin-table-source.js +18 -0
  106. package/{typed → dist}/sources/quadbin-tileset-source.d.ts +1 -1
  107. package/{typed → dist}/sources/quadbin-tileset-source.d.ts.map +1 -1
  108. package/dist/sources/quadbin-tileset-source.js +6 -0
  109. package/{typed → dist}/sources/raster-source.d.ts +1 -1
  110. package/dist/sources/raster-source.d.ts.map +1 -0
  111. package/dist/sources/raster-source.js +6 -0
  112. package/{typed → dist}/sources/types.d.ts +7 -1
  113. package/dist/sources/types.d.ts.map +1 -0
  114. package/dist/sources/types.js +1 -0
  115. package/dist/sources/vector-query-source.d.ts +6 -0
  116. package/dist/sources/vector-query-source.d.ts.map +1 -0
  117. package/dist/sources/vector-query-source.js +16 -0
  118. package/dist/sources/vector-table-source.d.ts +4 -0
  119. package/dist/sources/vector-table-source.d.ts.map +1 -0
  120. package/dist/sources/vector-table-source.js +13 -0
  121. package/{typed → dist}/sources/vector-tileset-source.d.ts +1 -1
  122. package/{typed → dist}/sources/vector-tileset-source.d.ts.map +1 -1
  123. package/dist/sources/vector-tileset-source.js +6 -0
  124. package/{typed → dist}/style/color-bins-style.d.ts +2 -2
  125. package/dist/style/color-bins-style.d.ts.map +1 -0
  126. package/dist/style/color-bins-style.js +21 -0
  127. package/{typed → dist}/style/color-categories-style.d.ts +2 -2
  128. package/dist/style/color-categories-style.d.ts.map +1 -0
  129. package/dist/style/color-categories-style.js +25 -0
  130. package/{typed → dist}/style/color-continuous-style.d.ts +2 -2
  131. package/dist/style/color-continuous-style.d.ts.map +1 -0
  132. package/dist/style/color-continuous-style.js +21 -0
  133. package/dist/style/palette.js +62 -0
  134. package/dist/style/utils.js +11 -0
  135. package/{typed → dist}/utils.d.ts +1 -1
  136. package/dist/utils.d.ts.map +1 -0
  137. package/dist/utils.js +41 -0
  138. package/dist/workers/cartoRasterTile.js +3 -0
  139. package/dist/workers/cartoSpatialTile.js +3 -0
  140. package/dist/workers/cartoVectorTile.js +3 -0
  141. package/dist.min.js +30 -44
  142. package/package.json +21 -14
  143. package/src/api/fetch-map.ts +1 -1
  144. package/src/api/query.ts +1 -1
  145. package/src/api/types.ts +20 -0
  146. package/src/index.ts +4 -4
  147. package/src/layers/raster-layer-vertex.glsl.ts +2 -2
  148. package/src/layers/raster-layer.ts +3 -1
  149. package/src/layers/spatial-index-tile-layer.ts +3 -2
  150. package/src/layers/vector-tile-layer.ts +6 -1
  151. package/src/sources/boundary-query-source.ts +27 -9
  152. package/src/sources/boundary-table-source.ts +13 -8
  153. package/src/sources/types.ts +8 -1
  154. package/src/sources/vector-query-source.ts +21 -3
  155. package/src/sources/vector-table-source.ts +13 -3
  156. package/dist/es5/api/carto-api-error.js +0 -83
  157. package/dist/es5/api/carto-api-error.js.map +0 -1
  158. package/dist/es5/api/common.js +0 -25
  159. package/dist/es5/api/common.js.map +0 -1
  160. package/dist/es5/api/endpoints.js +0 -61
  161. package/dist/es5/api/endpoints.js.map +0 -1
  162. package/dist/es5/api/fetch-map.js +0 -566
  163. package/dist/es5/api/fetch-map.js.map +0 -1
  164. package/dist/es5/api/index.js +0 -30
  165. package/dist/es5/api/index.js.map +0 -1
  166. package/dist/es5/api/layer-map.js +0 -634
  167. package/dist/es5/api/layer-map.js.map +0 -1
  168. package/dist/es5/api/parse-map.js +0 -347
  169. package/dist/es5/api/parse-map.js.map +0 -1
  170. package/dist/es5/api/query.js +0 -81
  171. package/dist/es5/api/query.js.map +0 -1
  172. package/dist/es5/api/request-with-parameters.js +0 -150
  173. package/dist/es5/api/request-with-parameters.js.map +0 -1
  174. package/dist/es5/api/types.js +0 -21
  175. package/dist/es5/api/types.js.map +0 -1
  176. package/dist/es5/basemap.js +0 -17
  177. package/dist/es5/basemap.js.map +0 -1
  178. package/dist/es5/index.js +0 -205
  179. package/dist/es5/index.js.map +0 -1
  180. package/dist/es5/layers/h3-tile-layer.js +0 -128
  181. package/dist/es5/layers/h3-tile-layer.js.map +0 -1
  182. package/dist/es5/layers/h3-tileset-2d.js +0 -172
  183. package/dist/es5/layers/h3-tileset-2d.js.map +0 -1
  184. package/dist/es5/layers/point-label-layer.js +0 -263
  185. package/dist/es5/layers/point-label-layer.js.map +0 -1
  186. package/dist/es5/layers/quadbin-layer.js +0 -72
  187. package/dist/es5/layers/quadbin-layer.js.map +0 -1
  188. package/dist/es5/layers/quadbin-tile-layer.js +0 -103
  189. package/dist/es5/layers/quadbin-tile-layer.js.map +0 -1
  190. package/dist/es5/layers/quadbin-tileset-2d.js +0 -76
  191. package/dist/es5/layers/quadbin-tileset-2d.js.map +0 -1
  192. package/dist/es5/layers/quadbin-utils.js +0 -60
  193. package/dist/es5/layers/quadbin-utils.js.map +0 -1
  194. package/dist/es5/layers/raster-layer-vertex.glsl.js +0 -9
  195. package/dist/es5/layers/raster-layer-vertex.glsl.js.map +0 -1
  196. package/dist/es5/layers/raster-layer.js +0 -174
  197. package/dist/es5/layers/raster-layer.js.map +0 -1
  198. package/dist/es5/layers/raster-tile-layer.js +0 -91
  199. package/dist/es5/layers/raster-tile-layer.js.map +0 -1
  200. package/dist/es5/layers/schema/carto-properties-tile-loader.js +0 -60
  201. package/dist/es5/layers/schema/carto-properties-tile-loader.js.map +0 -1
  202. package/dist/es5/layers/schema/carto-properties-tile.js +0 -38
  203. package/dist/es5/layers/schema/carto-properties-tile.js.map +0 -1
  204. package/dist/es5/layers/schema/carto-raster-tile-loader.js +0 -89
  205. package/dist/es5/layers/schema/carto-raster-tile-loader.js.map +0 -1
  206. package/dist/es5/layers/schema/carto-raster-tile.js +0 -79
  207. package/dist/es5/layers/schema/carto-raster-tile.js.map +0 -1
  208. package/dist/es5/layers/schema/carto-spatial-tile-loader.js +0 -81
  209. package/dist/es5/layers/schema/carto-spatial-tile-loader.js.map +0 -1
  210. package/dist/es5/layers/schema/carto-spatial-tile.js +0 -80
  211. package/dist/es5/layers/schema/carto-spatial-tile.js.map +0 -1
  212. package/dist/es5/layers/schema/carto-tile.js +0 -269
  213. package/dist/es5/layers/schema/carto-tile.js.map +0 -1
  214. package/dist/es5/layers/schema/carto-vector-tile-loader.js +0 -120
  215. package/dist/es5/layers/schema/carto-vector-tile-loader.js.map +0 -1
  216. package/dist/es5/layers/schema/fast-pbf.js +0 -14
  217. package/dist/es5/layers/schema/fast-pbf.js.map +0 -1
  218. package/dist/es5/layers/schema/spatialjson-utils.js +0 -42
  219. package/dist/es5/layers/schema/spatialjson-utils.js.map +0 -1
  220. package/dist/es5/layers/schema/tile-loader-utils.js +0 -17
  221. package/dist/es5/layers/schema/tile-loader-utils.js.map +0 -1
  222. package/dist/es5/layers/spatial-index-tile-layer.js +0 -126
  223. package/dist/es5/layers/spatial-index-tile-layer.js.map +0 -1
  224. package/dist/es5/layers/utils.js +0 -131
  225. package/dist/es5/layers/utils.js.map +0 -1
  226. package/dist/es5/layers/vector-tile-layer.js +0 -248
  227. package/dist/es5/layers/vector-tile-layer.js.map +0 -1
  228. package/dist/es5/sources/base-source.js +0 -128
  229. package/dist/es5/sources/base-source.js.map +0 -1
  230. package/dist/es5/sources/boundary-query-source.js +0 -51
  231. package/dist/es5/sources/boundary-query-source.js.map +0 -1
  232. package/dist/es5/sources/boundary-table-source.js +0 -51
  233. package/dist/es5/sources/boundary-table-source.js.map +0 -1
  234. package/dist/es5/sources/h3-query-source.js +0 -56
  235. package/dist/es5/sources/h3-query-source.js.map +0 -1
  236. package/dist/es5/sources/h3-table-source.js +0 -56
  237. package/dist/es5/sources/h3-table-source.js.map +0 -1
  238. package/dist/es5/sources/h3-tileset-source.js +0 -43
  239. package/dist/es5/sources/h3-tileset-source.js.map +0 -1
  240. package/dist/es5/sources/index.js +0 -110
  241. package/dist/es5/sources/index.js.map +0 -1
  242. package/dist/es5/sources/quadbin-query-source.js +0 -56
  243. package/dist/es5/sources/quadbin-query-source.js.map +0 -1
  244. package/dist/es5/sources/quadbin-table-source.js +0 -56
  245. package/dist/es5/sources/quadbin-table-source.js.map +0 -1
  246. package/dist/es5/sources/quadbin-tileset-source.js +0 -43
  247. package/dist/es5/sources/quadbin-tileset-source.js.map +0 -1
  248. package/dist/es5/sources/raster-source.js +0 -43
  249. package/dist/es5/sources/raster-source.js.map +0 -1
  250. package/dist/es5/sources/types.js +0 -2
  251. package/dist/es5/sources/types.js.map +0 -1
  252. package/dist/es5/sources/vector-query-source.js +0 -51
  253. package/dist/es5/sources/vector-query-source.js.map +0 -1
  254. package/dist/es5/sources/vector-table-source.js +0 -51
  255. package/dist/es5/sources/vector-table-source.js.map +0 -1
  256. package/dist/es5/sources/vector-tileset-source.js +0 -43
  257. package/dist/es5/sources/vector-tileset-source.js.map +0 -1
  258. package/dist/es5/style/color-bins-style.js +0 -37
  259. package/dist/es5/style/color-bins-style.js.map +0 -1
  260. package/dist/es5/style/color-categories-style.js +0 -65
  261. package/dist/es5/style/color-categories-style.js.map +0 -1
  262. package/dist/es5/style/color-continuous-style.js +0 -37
  263. package/dist/es5/style/color-continuous-style.js.map +0 -1
  264. package/dist/es5/style/palette.js +0 -81
  265. package/dist/es5/style/palette.js.map +0 -1
  266. package/dist/es5/style/utils.js +0 -28
  267. package/dist/es5/style/utils.js.map +0 -1
  268. package/dist/es5/utils.js +0 -65
  269. package/dist/es5/utils.js.map +0 -1
  270. package/dist/es5/workers/cartoRasterTile.js +0 -10
  271. package/dist/es5/workers/cartoRasterTile.js.map +0 -1
  272. package/dist/es5/workers/cartoSpatialTile.js +0 -10
  273. package/dist/es5/workers/cartoSpatialTile.js.map +0 -1
  274. package/dist/es5/workers/cartoVectorTile.js +0 -10
  275. package/dist/es5/workers/cartoVectorTile.js.map +0 -1
  276. package/dist/esm/api/carto-api-error.js +0 -46
  277. package/dist/esm/api/carto-api-error.js.map +0 -1
  278. package/dist/esm/api/common.js.map +0 -1
  279. package/dist/esm/api/endpoints.js +0 -41
  280. package/dist/esm/api/endpoints.js.map +0 -1
  281. package/dist/esm/api/fetch-map.js +0 -298
  282. package/dist/esm/api/fetch-map.js.map +0 -1
  283. package/dist/esm/api/index.js +0 -4
  284. package/dist/esm/api/index.js.map +0 -1
  285. package/dist/esm/api/layer-map.js +0 -520
  286. package/dist/esm/api/layer-map.js.map +0 -1
  287. package/dist/esm/api/parse-map.js +0 -343
  288. package/dist/esm/api/parse-map.js.map +0 -1
  289. package/dist/esm/api/query.js +0 -40
  290. package/dist/esm/api/query.js.map +0 -1
  291. package/dist/esm/api/request-with-parameters.js +0 -82
  292. package/dist/esm/api/request-with-parameters.js.map +0 -1
  293. package/dist/esm/api/types.js +0 -14
  294. package/dist/esm/api/types.js.map +0 -1
  295. package/dist/esm/basemap.js +0 -10
  296. package/dist/esm/basemap.js.map +0 -1
  297. package/dist/esm/index.js +0 -35
  298. package/dist/esm/index.js.map +0 -1
  299. package/dist/esm/layers/h3-tile-layer.js +0 -77
  300. package/dist/esm/layers/h3-tile-layer.js.map +0 -1
  301. package/dist/esm/layers/h3-tileset-2d.js +0 -119
  302. package/dist/esm/layers/h3-tileset-2d.js.map +0 -1
  303. package/dist/esm/layers/point-label-layer.js +0 -194
  304. package/dist/esm/layers/point-label-layer.js.map +0 -1
  305. package/dist/esm/layers/quadbin-layer.js +0 -31
  306. package/dist/esm/layers/quadbin-layer.js.map +0 -1
  307. package/dist/esm/layers/quadbin-tile-layer.js +0 -51
  308. package/dist/esm/layers/quadbin-tile-layer.js.map +0 -1
  309. package/dist/esm/layers/quadbin-tileset-2d.js +0 -39
  310. package/dist/esm/layers/quadbin-tileset-2d.js.map +0 -1
  311. package/dist/esm/layers/quadbin-utils.js +0 -23
  312. package/dist/esm/layers/quadbin-utils.js.map +0 -1
  313. package/dist/esm/layers/raster-layer-vertex.glsl.js.map +0 -1
  314. package/dist/esm/layers/raster-layer.js +0 -108
  315. package/dist/esm/layers/raster-layer.js.map +0 -1
  316. package/dist/esm/layers/raster-tile-layer.js +0 -48
  317. package/dist/esm/layers/raster-tile-layer.js.map +0 -1
  318. package/dist/esm/layers/schema/carto-properties-tile-loader.js +0 -23
  319. package/dist/esm/layers/schema/carto-properties-tile-loader.js.map +0 -1
  320. package/dist/esm/layers/schema/carto-properties-tile.js +0 -18
  321. package/dist/esm/layers/schema/carto-properties-tile.js.map +0 -1
  322. package/dist/esm/layers/schema/carto-raster-tile-loader.js +0 -54
  323. package/dist/esm/layers/schema/carto-raster-tile-loader.js.map +0 -1
  324. package/dist/esm/layers/schema/carto-raster-tile.js +0 -51
  325. package/dist/esm/layers/schema/carto-raster-tile.js.map +0 -1
  326. package/dist/esm/layers/schema/carto-spatial-tile-loader.js +0 -44
  327. package/dist/esm/layers/schema/carto-spatial-tile-loader.js.map +0 -1
  328. package/dist/esm/layers/schema/carto-spatial-tile.js +0 -47
  329. package/dist/esm/layers/schema/carto-spatial-tile.js.map +0 -1
  330. package/dist/esm/layers/schema/carto-tile.js +0 -197
  331. package/dist/esm/layers/schema/carto-tile.js.map +0 -1
  332. package/dist/esm/layers/schema/carto-vector-tile-loader.js +0 -82
  333. package/dist/esm/layers/schema/carto-vector-tile-loader.js.map +0 -1
  334. package/dist/esm/layers/schema/fast-pbf.js +0 -7
  335. package/dist/esm/layers/schema/fast-pbf.js.map +0 -1
  336. package/dist/esm/layers/schema/spatialjson-utils.js +0 -27
  337. package/dist/esm/layers/schema/spatialjson-utils.js.map +0 -1
  338. package/dist/esm/layers/schema/tile-loader-utils.js +0 -7
  339. package/dist/esm/layers/schema/tile-loader-utils.js.map +0 -1
  340. package/dist/esm/layers/spatial-index-tile-layer.js +0 -86
  341. package/dist/esm/layers/spatial-index-tile-layer.js.map +0 -1
  342. package/dist/esm/layers/utils.js +0 -85
  343. package/dist/esm/layers/utils.js.map +0 -1
  344. package/dist/esm/layers/vector-tile-layer.js +0 -143
  345. package/dist/esm/layers/vector-tile-layer.js.map +0 -1
  346. package/dist/esm/sources/base-source.js +0 -72
  347. package/dist/esm/sources/base-source.js.map +0 -1
  348. package/dist/esm/sources/boundary-query-source.js +0 -21
  349. package/dist/esm/sources/boundary-query-source.js.map +0 -1
  350. package/dist/esm/sources/boundary-table-source.js +0 -21
  351. package/dist/esm/sources/boundary-table-source.js.map +0 -1
  352. package/dist/esm/sources/h3-query-source.js +0 -27
  353. package/dist/esm/sources/h3-query-source.js.map +0 -1
  354. package/dist/esm/sources/h3-table-source.js +0 -27
  355. package/dist/esm/sources/h3-table-source.js.map +0 -1
  356. package/dist/esm/sources/h3-tileset-source.js +0 -11
  357. package/dist/esm/sources/h3-tileset-source.js.map +0 -1
  358. package/dist/esm/sources/index.js +0 -14
  359. package/dist/esm/sources/index.js.map +0 -1
  360. package/dist/esm/sources/quadbin-query-source.js +0 -27
  361. package/dist/esm/sources/quadbin-query-source.js.map +0 -1
  362. package/dist/esm/sources/quadbin-table-source.js +0 -27
  363. package/dist/esm/sources/quadbin-table-source.js.map +0 -1
  364. package/dist/esm/sources/quadbin-tileset-source.js +0 -11
  365. package/dist/esm/sources/quadbin-tileset-source.js.map +0 -1
  366. package/dist/esm/sources/raster-source.js +0 -11
  367. package/dist/esm/sources/raster-source.js.map +0 -1
  368. package/dist/esm/sources/types.js +0 -2
  369. package/dist/esm/sources/types.js.map +0 -1
  370. package/dist/esm/sources/vector-query-source.js +0 -20
  371. package/dist/esm/sources/vector-query-source.js.map +0 -1
  372. package/dist/esm/sources/vector-table-source.js +0 -20
  373. package/dist/esm/sources/vector-table-source.js.map +0 -1
  374. package/dist/esm/sources/vector-tileset-source.js +0 -11
  375. package/dist/esm/sources/vector-tileset-source.js.map +0 -1
  376. package/dist/esm/style/color-bins-style.js +0 -19
  377. package/dist/esm/style/color-bins-style.js.map +0 -1
  378. package/dist/esm/style/color-categories-style.js +0 -24
  379. package/dist/esm/style/color-categories-style.js.map +0 -1
  380. package/dist/esm/style/color-continuous-style.js +0 -19
  381. package/dist/esm/style/color-continuous-style.js.map +0 -1
  382. package/dist/esm/style/palette.js +0 -51
  383. package/dist/esm/style/palette.js.map +0 -1
  384. package/dist/esm/style/utils.js +0 -15
  385. package/dist/esm/style/utils.js.map +0 -1
  386. package/dist/esm/utils.js +0 -51
  387. package/dist/esm/utils.js.map +0 -1
  388. package/dist/esm/workers/cartoRasterTile.js +0 -4
  389. package/dist/esm/workers/cartoRasterTile.js.map +0 -1
  390. package/dist/esm/workers/cartoSpatialTile.js +0 -4
  391. package/dist/esm/workers/cartoSpatialTile.js.map +0 -1
  392. package/dist/esm/workers/cartoVectorTile.js +0 -4
  393. package/dist/esm/workers/cartoVectorTile.js.map +0 -1
  394. package/src/.DS_Store +0 -0
  395. package/typed/api/carto-api-error.d.ts.map +0 -1
  396. package/typed/api/endpoints.d.ts.map +0 -1
  397. package/typed/api/index.d.ts +0 -7
  398. package/typed/api/index.d.ts.map +0 -1
  399. package/typed/api/layer-map.d.ts.map +0 -1
  400. package/typed/api/query.d.ts.map +0 -1
  401. package/typed/api/request-with-parameters.d.ts.map +0 -1
  402. package/typed/api/types.d.ts.map +0 -1
  403. package/typed/index.d.ts +0 -37
  404. package/typed/index.d.ts.map +0 -1
  405. package/typed/layers/h3-tile-layer.d.ts.map +0 -1
  406. package/typed/layers/quadbin-tile-layer.d.ts.map +0 -1
  407. package/typed/layers/raster-layer-vertex.glsl.d.ts +0 -3
  408. package/typed/layers/raster-tile-layer.d.ts.map +0 -1
  409. package/typed/layers/schema/carto-properties-tile.d.ts.map +0 -1
  410. package/typed/layers/schema/carto-raster-tile-loader.d.ts.map +0 -1
  411. package/typed/layers/schema/carto-spatial-tile.d.ts.map +0 -1
  412. package/typed/layers/utils.d.ts.map +0 -1
  413. package/typed/layers/vector-tile-layer.d.ts.map +0 -1
  414. package/typed/sources/base-source.d.ts.map +0 -1
  415. package/typed/sources/boundary-query-source.d.ts +0 -10
  416. package/typed/sources/boundary-query-source.d.ts.map +0 -1
  417. package/typed/sources/boundary-table-source.d.ts.map +0 -1
  418. package/typed/sources/h3-tileset-source.d.ts.map +0 -1
  419. package/typed/sources/index.d.ts +0 -27
  420. package/typed/sources/index.d.ts.map +0 -1
  421. package/typed/sources/raster-source.d.ts.map +0 -1
  422. package/typed/sources/types.d.ts.map +0 -1
  423. package/typed/sources/vector-query-source.d.ts +0 -4
  424. package/typed/sources/vector-query-source.d.ts.map +0 -1
  425. package/typed/sources/vector-table-source.d.ts +0 -4
  426. package/typed/sources/vector-table-source.d.ts.map +0 -1
  427. package/typed/style/color-bins-style.d.ts.map +0 -1
  428. package/typed/style/color-categories-style.d.ts.map +0 -1
  429. package/typed/style/color-continuous-style.d.ts.map +0 -1
  430. package/typed/utils.d.ts.map +0 -1
  431. /package/{typed → dist}/api/common.d.ts +0 -0
  432. /package/{typed → dist}/api/common.d.ts.map +0 -0
  433. /package/{typed → dist}/api/fetch-map.d.ts +0 -0
  434. /package/{typed → dist}/api/fetch-map.d.ts.map +0 -0
  435. /package/{typed → dist}/api/parse-map.d.ts +0 -0
  436. /package/{typed → dist}/api/parse-map.d.ts.map +0 -0
  437. /package/{typed → dist}/basemap.d.ts +0 -0
  438. /package/{typed → dist}/basemap.d.ts.map +0 -0
  439. /package/{typed → dist}/layers/h3-tileset-2d.d.ts +0 -0
  440. /package/{typed → dist}/layers/h3-tileset-2d.d.ts.map +0 -0
  441. /package/{typed → dist}/layers/point-label-layer.d.ts +0 -0
  442. /package/{typed → dist}/layers/point-label-layer.d.ts.map +0 -0
  443. /package/{typed → dist}/layers/quadbin-layer.d.ts +0 -0
  444. /package/{typed → dist}/layers/quadbin-layer.d.ts.map +0 -0
  445. /package/{typed → dist}/layers/quadbin-tileset-2d.d.ts +0 -0
  446. /package/{typed → dist}/layers/quadbin-tileset-2d.d.ts.map +0 -0
  447. /package/{typed → dist}/layers/quadbin-utils.d.ts +0 -0
  448. /package/{typed → dist}/layers/quadbin-utils.d.ts.map +0 -0
  449. /package/{typed → dist}/layers/raster-layer-vertex.glsl.d.ts.map +0 -0
  450. /package/{typed → dist}/layers/raster-layer.d.ts +0 -0
  451. /package/{typed → dist}/layers/schema/carto-properties-tile-loader.d.ts +0 -0
  452. /package/{typed → dist}/layers/schema/carto-properties-tile-loader.d.ts.map +0 -0
  453. /package/{typed → dist}/layers/schema/carto-raster-tile.d.ts +0 -0
  454. /package/{typed → dist}/layers/schema/carto-raster-tile.d.ts.map +0 -0
  455. /package/{typed → dist}/layers/schema/carto-spatial-tile-loader.d.ts +0 -0
  456. /package/{typed → dist}/layers/schema/carto-spatial-tile-loader.d.ts.map +0 -0
  457. /package/{typed → dist}/layers/schema/carto-tile.d.ts +0 -0
  458. /package/{typed → dist}/layers/schema/carto-tile.d.ts.map +0 -0
  459. /package/{typed → dist}/layers/schema/carto-vector-tile-loader.d.ts +0 -0
  460. /package/{typed → dist}/layers/schema/carto-vector-tile-loader.d.ts.map +0 -0
  461. /package/{typed → dist}/layers/schema/fast-pbf.d.ts +0 -0
  462. /package/{typed → dist}/layers/schema/fast-pbf.d.ts.map +0 -0
  463. /package/{typed → dist}/layers/schema/spatialjson-utils.d.ts +0 -0
  464. /package/{typed → dist}/layers/schema/spatialjson-utils.d.ts.map +0 -0
  465. /package/{typed → dist}/layers/schema/tile-loader-utils.d.ts +0 -0
  466. /package/{typed → dist}/layers/schema/tile-loader-utils.d.ts.map +0 -0
  467. /package/{typed → dist}/style/palette.d.ts +0 -0
  468. /package/{typed → dist}/style/palette.d.ts.map +0 -0
  469. /package/{typed → dist}/style/utils.d.ts +0 -0
  470. /package/{typed → dist}/style/utils.d.ts.map +0 -0
  471. /package/{typed → dist}/workers/cartoRasterTile.d.ts +0 -0
  472. /package/{typed → dist}/workers/cartoRasterTile.d.ts.map +0 -0
  473. /package/{typed → dist}/workers/cartoSpatialTile.d.ts +0 -0
  474. /package/{typed → dist}/workers/cartoSpatialTile.d.ts.map +0 -0
  475. /package/{typed → dist}/workers/cartoVectorTile.d.ts +0 -0
  476. /package/{typed → dist}/workers/cartoVectorTile.d.ts.map +0 -0
package/package.json CHANGED
@@ -2,7 +2,8 @@
2
2
  "name": "@deck.gl/carto",
3
3
  "description": "CARTO official integration with Deck.gl. Build geospatial applications using CARTO and Deck.gl.",
4
4
  "license": "MIT",
5
- "version": "9.0.0-beta.2",
5
+ "type": "module",
6
+ "version": "9.0.0-beta.4",
6
7
  "publishConfig": {
7
8
  "access": "public"
8
9
  },
@@ -18,13 +19,19 @@
18
19
  "type": "git",
19
20
  "url": "https://github.com/visgl/deck.gl.git"
20
21
  },
21
- "main": "dist/es5/index.js",
22
- "module": "dist/esm/index.js",
23
- "types": "typed/index.d.ts",
22
+ "types": "dist/index.d.ts",
23
+ "main": "dist/index.cjs",
24
+ "module": "dist/index.js",
25
+ "exports": {
26
+ ".": {
27
+ "types": "./dist/index.d.ts",
28
+ "import": "./dist/index.js",
29
+ "require": "./dist/index.cjs"
30
+ }
31
+ },
24
32
  "files": [
25
33
  "dist",
26
34
  "src",
27
- "typed",
28
35
  "dist.min.js"
29
36
  ],
30
37
  "sideEffects": false,
@@ -36,12 +43,12 @@
36
43
  },
37
44
  "dependencies": {
38
45
  "@babel/runtime": "^7.0.0",
39
- "@loaders.gl/gis": "4.1.0-alpha.9",
40
- "@loaders.gl/loader-utils": "4.1.0-alpha.9",
41
- "@loaders.gl/mvt": "4.1.0-alpha.9",
42
- "@loaders.gl/tiles": "4.1.0-alpha.9",
43
- "@luma.gl/constants": "9.0.0-beta.1",
44
- "@luma.gl/core": "9.0.0-beta.1",
46
+ "@loaders.gl/gis": "^4.1.0",
47
+ "@loaders.gl/loader-utils": "^4.1.0",
48
+ "@loaders.gl/mvt": "^4.1.0",
49
+ "@loaders.gl/tiles": "^4.1.0",
50
+ "@luma.gl/constants": "9.0.0-beta.4",
51
+ "@luma.gl/core": "9.0.0-beta.4",
45
52
  "@math.gl/web-mercator": "^4.0.0",
46
53
  "cartocolor": "^4.0.2",
47
54
  "d3-array": "^3.2.0",
@@ -54,7 +61,7 @@
54
61
  "quadbin": "^0.2.0"
55
62
  },
56
63
  "devDependencies": {
57
- "@loaders.gl/schema": "4.1.0-alpha.9",
64
+ "@loaders.gl/schema": "^4.1.0",
58
65
  "@types/d3-array": "^3.0.2",
59
66
  "@types/d3-color": "^1.4.2",
60
67
  "@types/d3-scale": "^3.0.0"
@@ -65,7 +72,7 @@
65
72
  "@deck.gl/extensions": "^9.0.0-alpha",
66
73
  "@deck.gl/geo-layers": "^9.0.0-alpha",
67
74
  "@deck.gl/layers": "^9.0.0-alpha",
68
- "@loaders.gl/core": "4.1.0-alpha.9"
75
+ "@loaders.gl/core": "^4.1.0"
69
76
  },
70
- "gitHead": "ed132efaf84a75ea71c89dd8555b6ffc1fe839d5"
77
+ "gitHead": "7063cbec75a5fbcefc51f33f6e2488134533d34a"
71
78
  }
@@ -16,7 +16,7 @@ import {
16
16
  vectorQuerySource,
17
17
  vectorTableSource,
18
18
  vectorTilesetSource
19
- } from '../sources';
19
+ } from '../sources/index';
20
20
  import {parseMap} from './parse-map';
21
21
  import {requestWithParameters} from './request-with-parameters';
22
22
  import {assert} from '../utils';
package/src/api/query.ts CHANGED
@@ -1,4 +1,4 @@
1
- import {SOURCE_DEFAULTS} from '../sources';
1
+ import {SOURCE_DEFAULTS} from '../sources/index';
2
2
  import type {SourceOptions, QuerySourceOptions, QueryResult} from '../sources/types';
3
3
  import {buildQueryUrl} from './endpoints';
4
4
  import {requestWithParameters} from './request-with-parameters';
package/src/api/types.ts CHANGED
@@ -54,6 +54,26 @@ export type VisualChannelField = {
54
54
  colorColumn?: string;
55
55
  };
56
56
 
57
+ export interface Filters {
58
+ [column: string]: Filter;
59
+ }
60
+
61
+ interface Filter {
62
+ [FilterTypes.In]: number[];
63
+ [FilterTypes.Between]: number[][];
64
+ [FilterTypes.ClosedOpen]: number[][];
65
+ [FilterTypes.Time]: number[][];
66
+ [FilterTypes.StringSearch]: string[];
67
+ }
68
+
69
+ export enum FilterTypes {
70
+ In = 'in',
71
+ Between = 'between', // [a, b] both are included
72
+ ClosedOpen = 'closed_open', // [a, b) a is included, b is not
73
+ Time = 'time',
74
+ StringSearch = 'stringSearch'
75
+ }
76
+
57
77
  export type VisualChannels = {
58
78
  colorField?: VisualChannelField;
59
79
  colorScale?: SCALE_TYPE;
package/src/index.ts CHANGED
@@ -23,7 +23,7 @@ export {default as BASEMAP} from './basemap';
23
23
  export {default as colorBins} from './style/color-bins-style';
24
24
  export {default as colorCategories} from './style/color-categories-style';
25
25
  export {default as colorContinuous} from './style/color-continuous-style';
26
- export {CartoAPIError, fetchMap, query} from './api';
26
+ export {CartoAPIError, fetchMap, query} from './api/index';
27
27
  export type {
28
28
  APIErrorContext,
29
29
  FetchMapOptions,
@@ -32,7 +32,7 @@ export type {
32
32
  RequestType,
33
33
  QueryParameters,
34
34
  QueryOptions
35
- } from './api';
35
+ } from './api/index';
36
36
 
37
37
  import {
38
38
  boundaryQuerySource,
@@ -48,7 +48,7 @@ import {
48
48
  vectorTableSource,
49
49
  vectorTilesetSource,
50
50
  SOURCE_DEFAULTS
51
- } from './sources';
51
+ } from './sources/index';
52
52
 
53
53
  const CARTO_SOURCES = {
54
54
  boundaryQuerySource,
@@ -98,4 +98,4 @@ export type {
98
98
  VectorTilesetSourceOptions,
99
99
  GeojsonResult,
100
100
  JsonResult
101
- } from './sources';
101
+ } from './sources/index';
@@ -32,8 +32,8 @@ void main(void) {
32
32
  vec2 common_position = offset.xy;
33
33
  float scale = offset.z;
34
34
 
35
- int yIndex = - (gl_InstanceID / 256);
36
- int xIndex = gl_InstanceID + (yIndex * 256);
35
+ int yIndex = - (gl_InstanceID / BLOCK_WIDTH);
36
+ int xIndex = gl_InstanceID + (yIndex * BLOCK_WIDTH);
37
37
  common_position += scale * vec2(float(xIndex), float(yIndex));
38
38
 
39
39
  vec4 color = isStroke ? instanceLineColors : instanceFillColors;
@@ -31,7 +31,9 @@ class RasterColumnLayer extends ColumnLayer {
31
31
 
32
32
  getShaders() {
33
33
  const shaders = super.getShaders();
34
- return {...shaders, vs};
34
+ const data = this.props.data as unknown as Raster & {length: number};
35
+ const BLOCK_WIDTH = data.blockWidth || Math.sqrt(data.length);
36
+ return {...shaders, defines: {...shaders.defines, BLOCK_WIDTH}, vs};
35
37
  }
36
38
 
37
39
  initializeState() {
@@ -28,14 +28,14 @@ export default class SpatialIndexTileLayer<
28
28
  static defaultProps = defaultProps;
29
29
 
30
30
  state!: TileLayer<DataT>['state'] & {
31
- hoveredFeatureId: number | null;
31
+ hoveredFeatureId: BigInt | number | null;
32
32
  highlightColor: number[];
33
33
  };
34
34
 
35
35
  protected _updateAutoHighlight(info: PickingInfo): void {
36
36
  const {hoveredFeatureId} = this.state;
37
37
  const hoveredFeature = info.object;
38
- let newHoveredFeatureId;
38
+ let newHoveredFeatureId: BigInt | number | null = null;
39
39
 
40
40
  if (hoveredFeature) {
41
41
  newHoveredFeatureId = hoveredFeature.id;
@@ -79,6 +79,7 @@ export default class SpatialIndexTileLayer<
79
79
  }
80
80
 
81
81
  _featureInTile(tile: Tile2DHeader, featureId: BigInt | number) {
82
+ // TODO: Tile2DHeader index should be generic for H3TileIndex or QuadbinTileIndex
82
83
  const tileset = this.state.tileset!;
83
84
  const tileZoom = tileset.getTileZoom(tile.index);
84
85
  // @ts-ignore
@@ -35,7 +35,6 @@ type _VectorTileLayerProps = {
35
35
  data: null | TilejsonResult | Promise<TilejsonResult>;
36
36
  };
37
37
 
38
- // TODO Perhaps we can't subclass MVTLayer and keep types. Better to subclass TileLayer instead?
39
38
  // @ts-ignore
40
39
  export default class VectorTileLayer<ExtraProps extends {} = {}> extends MVTLayer<
41
40
  Required<_VectorTileLayerProps> & ExtraProps
@@ -47,6 +46,12 @@ export default class VectorTileLayer<ExtraProps extends {} = {}> extends MVTLaye
47
46
  mvt: boolean;
48
47
  };
49
48
 
49
+ constructor(...propObjects: VectorTileLayerProps[]) {
50
+ // Force externally visible props type, as it is not possible modify via extension
51
+ // @ts-ignore
52
+ super(...propObjects);
53
+ }
54
+
50
55
  initializeState(): void {
51
56
  super.initializeState();
52
57
  this.setState({binary: true});
@@ -1,14 +1,18 @@
1
- import {QueryParameters} from '../api';
1
+ import {QueryParameters} from '../api/index';
2
2
  import {baseSource} from './base-source';
3
- import type {SourceOptions, TilejsonResult} from './types';
3
+ import type {FilterOptions, SourceOptions, TilejsonResult} from './types';
4
4
 
5
- export type BoundaryQuerySourceOptions = SourceOptions & {
6
- tilesetTableName: string;
7
- matchingColumn?: string;
8
- propertiesSqlQuery: string;
9
- queryParameters?: QueryParameters;
10
- };
5
+ export type BoundaryQuerySourceOptions = SourceOptions &
6
+ FilterOptions & {
7
+ columns?: string[];
8
+ tilesetTableName: string;
9
+ matchingColumn?: string;
10
+ propertiesSqlQuery: string;
11
+ queryParameters?: QueryParameters;
12
+ };
11
13
  type UrlParameters = {
14
+ columns?: string;
15
+ filters?: string;
12
16
  tilesetTableName: string;
13
17
  matchingColumn: string;
14
18
  propertiesSqlQuery: string;
@@ -18,12 +22,26 @@ type UrlParameters = {
18
22
  export const boundaryQuerySource = async function (
19
23
  options: BoundaryQuerySourceOptions
20
24
  ): Promise<TilejsonResult> {
21
- const {tilesetTableName, matchingColumn = 'id', propertiesSqlQuery, queryParameters} = options;
25
+ const {
26
+ columns,
27
+ filters,
28
+ tilesetTableName,
29
+ matchingColumn = 'id',
30
+ propertiesSqlQuery,
31
+ queryParameters
32
+ } = options;
22
33
  const urlParameters: UrlParameters = {
23
34
  tilesetTableName,
24
35
  matchingColumn,
25
36
  propertiesSqlQuery
26
37
  };
38
+
39
+ if (columns) {
40
+ urlParameters.columns = columns.join(',');
41
+ }
42
+ if (filters) {
43
+ urlParameters.filters = JSON.stringify(filters);
44
+ }
27
45
  if (queryParameters) {
28
46
  urlParameters.queryParameters = JSON.stringify(queryParameters);
29
47
  }
@@ -1,13 +1,15 @@
1
1
  import {baseSource} from './base-source';
2
- import type {SourceOptions, TilejsonResult} from './types';
2
+ import type {FilterOptions, SourceOptions, TilejsonResult} from './types';
3
3
 
4
- export type BoundaryTableSourceOptions = SourceOptions & {
5
- tilesetTableName: string;
6
- columns?: string[];
7
- matchingColumn?: string;
8
- propertiesTableName: string;
9
- };
4
+ export type BoundaryTableSourceOptions = SourceOptions &
5
+ FilterOptions & {
6
+ tilesetTableName: string;
7
+ columns?: string[];
8
+ matchingColumn?: string;
9
+ propertiesTableName: string;
10
+ };
10
11
  type UrlParameters = {
12
+ filters?: string;
11
13
  tilesetTableName: string;
12
14
  columns?: string;
13
15
  matchingColumn: string;
@@ -17,7 +19,7 @@ type UrlParameters = {
17
19
  export const boundaryTableSource = async function (
18
20
  options: BoundaryTableSourceOptions
19
21
  ): Promise<TilejsonResult> {
20
- const {tilesetTableName, columns, matchingColumn = 'id', propertiesTableName} = options;
22
+ const {filters, tilesetTableName, columns, matchingColumn = 'id', propertiesTableName} = options;
21
23
  const urlParameters: UrlParameters = {
22
24
  tilesetTableName,
23
25
  matchingColumn,
@@ -27,5 +29,8 @@ export const boundaryTableSource = async function (
27
29
  if (columns) {
28
30
  urlParameters.columns = columns.join(',');
29
31
  }
32
+ if (filters) {
33
+ urlParameters.filters = JSON.stringify(filters);
34
+ }
30
35
  return baseSource<UrlParameters>('boundary', options, urlParameters) as Promise<TilejsonResult>;
31
36
  };
@@ -1,5 +1,5 @@
1
1
  import type {Feature} from 'geojson';
2
- import type {Format, MapInstantiation, QueryParameters} from '../api/types';
2
+ import type {Filters, Format, MapInstantiation, QueryParameters} from '../api/types';
3
3
 
4
4
  export type SourceRequiredOptions = {
5
5
  /** Carto platform access token. */
@@ -57,6 +57,13 @@ export type AggregationOptions = {
57
57
  aggregationResLevel?: number;
58
58
  };
59
59
 
60
+ export type FilterOptions = {
61
+ /**
62
+ * Filters to apply to the data source on the server
63
+ */
64
+ filters: Filters;
65
+ };
66
+
60
67
  export type QuerySourceOptions = {
61
68
  /**
62
69
  * The column name and the type of geospatial support.
@@ -1,9 +1,21 @@
1
1
  /* eslint-disable camelcase */
2
2
  import {baseSource} from './base-source';
3
- import type {SourceOptions, QuerySourceOptions, SpatialDataType, TilejsonResult} from './types';
3
+ import type {
4
+ FilterOptions,
5
+ SourceOptions,
6
+ QuerySourceOptions,
7
+ SpatialDataType,
8
+ TilejsonResult
9
+ } from './types';
4
10
 
5
- export type VectorQuerySourceOptions = SourceOptions & QuerySourceOptions;
11
+ export type VectorQuerySourceOptions = SourceOptions &
12
+ QuerySourceOptions &
13
+ FilterOptions & {
14
+ columns?: string[];
15
+ };
6
16
  type UrlParameters = {
17
+ columns?: string;
18
+ filters?: string;
7
19
  spatialDataType: SpatialDataType;
8
20
  spatialDataColumn?: string;
9
21
  q: string;
@@ -13,9 +25,15 @@ type UrlParameters = {
13
25
  export const vectorQuerySource = async function (
14
26
  options: VectorQuerySourceOptions
15
27
  ): Promise<TilejsonResult> {
16
- const {spatialDataColumn = 'geom', sqlQuery, queryParameters} = options;
28
+ const {columns, filters, spatialDataColumn = 'geom', sqlQuery, queryParameters} = options;
17
29
  const urlParameters: UrlParameters = {spatialDataColumn, spatialDataType: 'geo', q: sqlQuery};
18
30
 
31
+ if (columns) {
32
+ urlParameters.columns = columns.join(',');
33
+ }
34
+ if (filters) {
35
+ urlParameters.filters = JSON.stringify(filters);
36
+ }
19
37
  if (queryParameters) {
20
38
  urlParameters.queryParameters = JSON.stringify(queryParameters);
21
39
  }
@@ -1,10 +1,17 @@
1
1
  /* eslint-disable camelcase */
2
2
  import {baseSource} from './base-source';
3
- import type {SourceOptions, SpatialDataType, TableSourceOptions, TilejsonResult} from './types';
3
+ import type {
4
+ FilterOptions,
5
+ SourceOptions,
6
+ SpatialDataType,
7
+ TableSourceOptions,
8
+ TilejsonResult
9
+ } from './types';
4
10
 
5
- export type VectorTableSourceOptions = SourceOptions & TableSourceOptions;
11
+ export type VectorTableSourceOptions = SourceOptions & TableSourceOptions & FilterOptions;
6
12
  type UrlParameters = {
7
13
  columns?: string;
14
+ filters?: string;
8
15
  spatialDataType: SpatialDataType;
9
16
  spatialDataColumn?: string;
10
17
  name: string;
@@ -13,11 +20,14 @@ type UrlParameters = {
13
20
  export const vectorTableSource = async function (
14
21
  options: VectorTableSourceOptions
15
22
  ): Promise<TilejsonResult> {
16
- const {columns, spatialDataColumn = 'geom', tableName} = options;
23
+ const {columns, filters, spatialDataColumn = 'geom', tableName} = options;
17
24
  const urlParameters: UrlParameters = {name: tableName, spatialDataColumn, spatialDataType: 'geo'};
18
25
 
19
26
  if (columns) {
20
27
  urlParameters.columns = columns.join(',');
21
28
  }
29
+ if (filters) {
30
+ urlParameters.filters = JSON.stringify(filters);
31
+ }
22
32
  return baseSource<UrlParameters>('table', options, urlParameters) as Promise<TilejsonResult>;
23
33
  };
@@ -1,83 +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.CartoAPIError = void 0;
9
-
10
- var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
-
12
- var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
13
-
14
- var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
15
-
16
- var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
17
-
18
- var _wrapNativeSuper2 = _interopRequireDefault(require("@babel/runtime/helpers/wrapNativeSuper"));
19
-
20
- 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); }; }
21
-
22
- 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; } }
23
-
24
- var CartoAPIError = function (_Error) {
25
- (0, _inherits2.default)(CartoAPIError, _Error);
26
-
27
- var _super = _createSuper(CartoAPIError);
28
-
29
- function CartoAPIError(error, errorContext, response) {
30
- var _this;
31
-
32
- (0, _classCallCheck2.default)(this, CartoAPIError);
33
- var responseString = 'Failed to connect';
34
-
35
- if (response) {
36
- responseString = 'Server returned: ';
37
-
38
- if (response.status === 400) {
39
- responseString += 'Bad request';
40
- } else if (response.status === 401 || response.status === 403) {
41
- responseString += 'Unauthorized access';
42
- } else if (response.status === 404) {
43
- responseString += 'Not found';
44
- } else {
45
- responseString += 'Error';
46
- }
47
-
48
- responseString += " (".concat(response.status, "):");
49
- }
50
-
51
- responseString += " ".concat(error.message || error);
52
- var message = "".concat(errorContext.requestType, " API request failed");
53
- message += "\n".concat(responseString);
54
-
55
- for (var _i = 0, _Object$keys = Object.keys(errorContext); _i < _Object$keys.length; _i++) {
56
- var key = _Object$keys[_i];
57
- if (key === 'requestType') continue;
58
- message += "\n".concat(formatErrorKey(key), ": ").concat(errorContext[key]);
59
- }
60
-
61
- message += '\n';
62
- _this = _super.call(this, message);
63
- _this.error = void 0;
64
- _this.errorContext = void 0;
65
- _this.response = void 0;
66
- _this.name = 'CartoAPIError';
67
- _this.response = response;
68
- _this.error = error;
69
- _this.errorContext = errorContext;
70
- return _this;
71
- }
72
-
73
- return CartoAPIError;
74
- }((0, _wrapNativeSuper2.default)(Error));
75
-
76
- exports.CartoAPIError = CartoAPIError;
77
-
78
- function formatErrorKey(key) {
79
- return key.replace(/([A-Z])/g, ' $1').replace(/^./, function (s) {
80
- return s.toUpperCase();
81
- });
82
- }
83
- //# sourceMappingURL=carto-api-error.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/api/carto-api-error.ts"],"names":["CartoAPIError","error","errorContext","response","responseString","status","message","requestType","Object","keys","key","formatErrorKey","name","Error","replace","s","toUpperCase"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;IAQaA,a;;;;;AAUX,yBAAYC,KAAZ,EAA0BC,YAA1B,EAAyDC,QAAzD,EAA8E;AAAA;;AAAA;AAC5E,QAAIC,cAAc,GAAG,mBAArB;;AACA,QAAID,QAAJ,EAAc;AACZC,MAAAA,cAAc,GAAG,mBAAjB;;AACA,UAAID,QAAQ,CAACE,MAAT,KAAoB,GAAxB,EAA6B;AAC3BD,QAAAA,cAAc,IAAI,aAAlB;AACD,OAFD,MAEO,IAAID,QAAQ,CAACE,MAAT,KAAoB,GAApB,IAA2BF,QAAQ,CAACE,MAAT,KAAoB,GAAnD,EAAwD;AAC7DD,QAAAA,cAAc,IAAI,qBAAlB;AACD,OAFM,MAEA,IAAID,QAAQ,CAACE,MAAT,KAAoB,GAAxB,EAA6B;AAClCD,QAAAA,cAAc,IAAI,WAAlB;AACD,OAFM,MAEA;AACLA,QAAAA,cAAc,IAAI,OAAlB;AACD;;AAEDA,MAAAA,cAAc,gBAASD,QAAQ,CAACE,MAAlB,OAAd;AACD;;AACDD,IAAAA,cAAc,eAAQH,KAAK,CAACK,OAAN,IAAiBL,KAAzB,CAAd;AAEA,QAAIK,OAAO,aAAMJ,YAAY,CAACK,WAAnB,wBAAX;AACAD,IAAAA,OAAO,gBAASF,cAAT,CAAP;;AACA,oCAAkBI,MAAM,CAACC,IAAP,CAAYP,YAAZ,CAAlB,kCAA6C;AAAxC,UAAMQ,GAAG,mBAAT;AACH,UAAIA,GAAG,KAAK,aAAZ,EAA2B;AAC3BJ,MAAAA,OAAO,gBAASK,cAAc,CAACD,GAAD,CAAvB,eAAiCR,YAAY,CAACQ,GAAD,CAA7C,CAAP;AACD;;AACDJ,IAAAA,OAAO,IAAI,IAAX;AAEA,8BAAMA,OAAN;AA1B4E,UAR9EL,KAQ8E;AAAA,UAL9EC,YAK8E;AAAA,UAF9EC,QAE8E;AA4B5E,UAAKS,IAAL,GAAY,eAAZ;AACA,UAAKT,QAAL,GAAgBA,QAAhB;AACA,UAAKF,KAAL,GAAaA,KAAb;AACA,UAAKC,YAAL,GAAoBA,YAApB;AA/B4E;AAgC7E;;;iCA1CgCW,K;;;;AAgDnC,SAASF,cAAT,CAAwBD,GAAxB,EAA6B;AAC3B,SAAOA,GAAG,CAACI,OAAJ,CAAY,UAAZ,EAAwB,KAAxB,EAA+BA,OAA/B,CAAuC,IAAvC,EAA6C,UAAAC,CAAC;AAAA,WAAIA,CAAC,CAACC,WAAF,EAAJ;AAAA,GAA9C,CAAP;AACD","sourcesContent":["import type {APIErrorContext} from './types';\n\n/**\n *\n * Custom error for reported errors in CARTO Maps API.\n * Provides useful debugging information in console and context for applications.\n *\n */\nexport class CartoAPIError extends Error {\n /** Source error from server */\n error: Error;\n\n /** Context (API call & parameters) in which error occured */\n errorContext: APIErrorContext;\n\n /** Response from server */\n response?: Response;\n\n constructor(error: Error, errorContext: APIErrorContext, response?: Response) {\n let responseString = 'Failed to connect';\n if (response) {\n responseString = 'Server returned: ';\n if (response.status === 400) {\n responseString += 'Bad request';\n } else if (response.status === 401 || response.status === 403) {\n responseString += 'Unauthorized access';\n } else if (response.status === 404) {\n responseString += 'Not found';\n } else {\n responseString += 'Error';\n }\n\n responseString += ` (${response.status}):`;\n }\n responseString += ` ${error.message || error}`;\n\n let message = `${errorContext.requestType} API request failed`;\n message += `\\n${responseString}`;\n for (const key of Object.keys(errorContext)) {\n if (key === 'requestType') continue; // eslint-disable-line no-continue\n message += `\\n${formatErrorKey(key)}: ${errorContext[key]}`;\n }\n message += '\\n';\n\n super(message);\n\n this.name = 'CartoAPIError';\n this.response = response;\n this.error = error;\n this.errorContext = errorContext;\n }\n}\n\n/**\n * Converts camelCase to Camel Case\n */\nfunction formatErrorKey(key) {\n return key.replace(/([A-Z])/g, ' $1').replace(/^./, s => s.toUpperCase());\n}\n"],"file":"carto-api-error.js"}
@@ -1,25 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.DEFAULT_HEADERS = exports.DEFAULT_PARAMETERS = exports.MAX_GET_LENGTH = exports.V3_MINOR_VERSION = exports.DEFAULT_CLIENT = exports.DEFAULT_API_BASE_URL = void 0;
7
- var DEFAULT_API_BASE_URL = 'https://gcp-us-east1.api.carto.com';
8
- exports.DEFAULT_API_BASE_URL = DEFAULT_API_BASE_URL;
9
- var DEFAULT_CLIENT = 'deck-gl-carto';
10
- exports.DEFAULT_CLIENT = DEFAULT_CLIENT;
11
- var V3_MINOR_VERSION = '3.3';
12
- exports.V3_MINOR_VERSION = V3_MINOR_VERSION;
13
- var MAX_GET_LENGTH = 8192;
14
- exports.MAX_GET_LENGTH = MAX_GET_LENGTH;
15
- var DEFAULT_PARAMETERS = {
16
- client: DEFAULT_CLIENT,
17
- v: V3_MINOR_VERSION
18
- };
19
- exports.DEFAULT_PARAMETERS = DEFAULT_PARAMETERS;
20
- var DEFAULT_HEADERS = {
21
- Accept: 'application/json',
22
- 'Content-Type': 'application/json'
23
- };
24
- exports.DEFAULT_HEADERS = DEFAULT_HEADERS;
25
- //# sourceMappingURL=common.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/api/common.ts"],"names":["DEFAULT_API_BASE_URL","DEFAULT_CLIENT","V3_MINOR_VERSION","MAX_GET_LENGTH","DEFAULT_PARAMETERS","client","v","DEFAULT_HEADERS","Accept"],"mappings":";;;;;;AAAO,IAAMA,oBAAoB,GAAG,oCAA7B;;AACA,IAAMC,cAAc,GAAG,eAAvB;;AACA,IAAMC,gBAAgB,GAAG,KAAzB;;AACA,IAAMC,cAAc,GAAG,IAAvB;;AAEA,IAAMC,kBAAkB,GAAG;AAChCC,EAAAA,MAAM,EAAEJ,cADwB;AAEhCK,EAAAA,CAAC,EAAEJ;AAF6B,CAA3B;;AAKA,IAAMK,eAAe,GAAG;AAC7BC,EAAAA,MAAM,EAAE,kBADqB;AAE7B,kBAAgB;AAFa,CAAxB","sourcesContent":["export const DEFAULT_API_BASE_URL = 'https://gcp-us-east1.api.carto.com';\nexport const DEFAULT_CLIENT = 'deck-gl-carto';\nexport const V3_MINOR_VERSION = '3.3';\nexport const MAX_GET_LENGTH = 8192;\n\nexport const DEFAULT_PARAMETERS = {\n client: DEFAULT_CLIENT,\n v: V3_MINOR_VERSION\n};\n\nexport const DEFAULT_HEADERS = {\n Accept: 'application/json',\n 'Content-Type': 'application/json'\n};\n"],"file":"common.js"}
@@ -1,61 +0,0 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.buildPublicMapUrl = buildPublicMapUrl;
7
- exports.buildStatsUrl = buildStatsUrl;
8
- exports.buildSourceUrl = buildSourceUrl;
9
- exports.buildQueryUrl = buildQueryUrl;
10
-
11
- function joinPath() {
12
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
13
- args[_key] = arguments[_key];
14
- }
15
-
16
- return args.map(function (part) {
17
- return part.endsWith('/') ? part.slice(0, -1) : part;
18
- }).join('/');
19
- }
20
-
21
- function buildV3Path(apiBaseUrl, version, endpoint) {
22
- for (var _len2 = arguments.length, rest = new Array(_len2 > 3 ? _len2 - 3 : 0), _key2 = 3; _key2 < _len2; _key2++) {
23
- rest[_key2 - 3] = arguments[_key2];
24
- }
25
-
26
- return joinPath.apply(void 0, [apiBaseUrl, version, endpoint].concat(rest));
27
- }
28
-
29
- function buildPublicMapUrl(_ref) {
30
- var apiBaseUrl = _ref.apiBaseUrl,
31
- cartoMapId = _ref.cartoMapId;
32
- return buildV3Path(apiBaseUrl, 'v3', 'maps', 'public', cartoMapId);
33
- }
34
-
35
- function buildStatsUrl(_ref2) {
36
- var attribute = _ref2.attribute,
37
- apiBaseUrl = _ref2.apiBaseUrl,
38
- connectionName = _ref2.connectionName,
39
- source = _ref2.source,
40
- type = _ref2.type;
41
-
42
- if (type === 'query') {
43
- return buildV3Path(apiBaseUrl, 'v3', 'stats', connectionName, attribute);
44
- }
45
-
46
- return buildV3Path(apiBaseUrl, 'v3', 'stats', connectionName, source, attribute);
47
- }
48
-
49
- function buildSourceUrl(_ref3) {
50
- var apiBaseUrl = _ref3.apiBaseUrl,
51
- connectionName = _ref3.connectionName,
52
- endpoint = _ref3.endpoint;
53
- return buildV3Path(apiBaseUrl, 'v3', 'maps', connectionName, endpoint);
54
- }
55
-
56
- function buildQueryUrl(_ref4) {
57
- var apiBaseUrl = _ref4.apiBaseUrl,
58
- connectionName = _ref4.connectionName;
59
- return buildV3Path(apiBaseUrl, 'v3', 'sql', connectionName, 'query');
60
- }
61
- //# sourceMappingURL=endpoints.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/api/endpoints.ts"],"names":["joinPath","args","map","part","endsWith","slice","join","buildV3Path","apiBaseUrl","version","endpoint","rest","buildPublicMapUrl","cartoMapId","buildStatsUrl","attribute","connectionName","source","type","buildSourceUrl","buildQueryUrl"],"mappings":";;;;;;;;;;AAIA,SAASA,QAAT,GAA6C;AAAA,oCAAxBC,IAAwB;AAAxBA,IAAAA,IAAwB;AAAA;;AAC3C,SAAOA,IAAI,CAACC,GAAL,CAAS,UAAAC,IAAI;AAAA,WAAKA,IAAI,CAACC,QAAL,CAAc,GAAd,IAAqBD,IAAI,CAACE,KAAL,CAAW,CAAX,EAAc,CAAC,CAAf,CAArB,GAAyCF,IAA9C;AAAA,GAAb,EAAkEG,IAAlE,CAAuE,GAAvE,CAAP;AACD;;AAED,SAASC,WAAT,CACEC,UADF,EAEEC,OAFF,EAGEC,QAHF,EAKU;AAAA,qCADLC,IACK;AADLA,IAAAA,IACK;AAAA;;AACR,SAAOX,QAAQ,MAAR,UAASQ,UAAT,EAAqBC,OAArB,EAA8BC,QAA9B,SAA2CC,IAA3C,EAAP;AACD;;AAEM,SAASC,iBAAT,OAMI;AAAA,MALTJ,UAKS,QALTA,UAKS;AAAA,MAJTK,UAIS,QAJTA,UAIS;AACT,SAAON,WAAW,CAACC,UAAD,EAAa,IAAb,EAAmB,MAAnB,EAA2B,QAA3B,EAAqCK,UAArC,CAAlB;AACD;;AAEM,SAASC,aAAT,QAYI;AAAA,MAXTC,SAWS,SAXTA,SAWS;AAAA,MAVTP,UAUS,SAVTA,UAUS;AAAA,MATTQ,cASS,SATTA,cASS;AAAA,MARTC,MAQS,SARTA,MAQS;AAAA,MAPTC,IAOS,SAPTA,IAOS;;AACT,MAAIA,IAAI,KAAK,OAAb,EAAsB;AACpB,WAAOX,WAAW,CAACC,UAAD,EAAa,IAAb,EAAmB,OAAnB,EAA4BQ,cAA5B,EAA4CD,SAA5C,CAAlB;AACD;;AAGD,SAAOR,WAAW,CAACC,UAAD,EAAa,IAAb,EAAmB,OAAnB,EAA4BQ,cAA5B,EAA4CC,MAA5C,EAAoDF,SAApD,CAAlB;AACD;;AAEM,SAASI,cAAT,QAQI;AAAA,MAPTX,UAOS,SAPTA,UAOS;AAAA,MANTQ,cAMS,SANTA,cAMS;AAAA,MALTN,QAKS,SALTA,QAKS;AACT,SAAOH,WAAW,CAACC,UAAD,EAAa,IAAb,EAAmB,MAAnB,EAA2BQ,cAA3B,EAA2CN,QAA3C,CAAlB;AACD;;AAEM,SAASU,aAAT,QAMI;AAAA,MALTZ,UAKS,SALTA,UAKS;AAAA,MAJTQ,cAIS,SAJTA,cAIS;AACT,SAAOT,WAAW,CAACC,UAAD,EAAa,IAAb,EAAmB,KAAnB,EAA0BQ,cAA1B,EAA0C,OAA1C,CAAlB;AACD","sourcesContent":["import {MapType} from './types';\n\nexport type V3Endpoint = 'maps' | 'stats' | 'sql';\n\nfunction joinPath(...args: string[]): string {\n return args.map(part => (part.endsWith('/') ? part.slice(0, -1) : part)).join('/');\n}\n\nfunction buildV3Path(\n apiBaseUrl: string,\n version: 'v3',\n endpoint: V3Endpoint,\n ...rest: string[]\n): string {\n return joinPath(apiBaseUrl, version, endpoint, ...rest);\n}\n\nexport function buildPublicMapUrl({\n apiBaseUrl,\n cartoMapId\n}: {\n apiBaseUrl: string;\n cartoMapId: string;\n}): string {\n return buildV3Path(apiBaseUrl, 'v3', 'maps', 'public', cartoMapId);\n}\n\nexport function buildStatsUrl({\n attribute,\n apiBaseUrl,\n connectionName,\n source,\n type\n}: {\n attribute: string;\n apiBaseUrl: string;\n connectionName: string;\n source: string;\n type: MapType;\n}): string {\n if (type === 'query') {\n return buildV3Path(apiBaseUrl, 'v3', 'stats', connectionName, attribute);\n }\n\n // type === 'table'\n return buildV3Path(apiBaseUrl, 'v3', 'stats', connectionName, source, attribute);\n}\n\nexport function buildSourceUrl({\n apiBaseUrl,\n connectionName,\n endpoint\n}: {\n apiBaseUrl: string;\n connectionName: string;\n endpoint: MapType;\n}): string {\n return buildV3Path(apiBaseUrl, 'v3', 'maps', connectionName, endpoint);\n}\n\nexport function buildQueryUrl({\n apiBaseUrl,\n connectionName\n}: {\n apiBaseUrl: string;\n connectionName: string;\n}): string {\n return buildV3Path(apiBaseUrl, 'v3', 'sql', connectionName, 'query');\n}\n"],"file":"endpoints.js"}