@deck.gl/carto 8.10.0-alpha.2 → 8.10.0-alpha.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 (249) hide show
  1. package/LICENSE +1 -1
  2. package/dist/cartoRasterTile-worker.js +1084 -0
  3. package/dist/cartoSpatialTile-worker.js +1469 -0
  4. package/dist/cartoVectorTile-worker.js +1727 -0
  5. package/dist/dist.dev.js +1733 -881
  6. package/dist/es5/api/layer-map.js +3 -7
  7. package/dist/es5/api/layer-map.js.map +1 -1
  8. package/dist/es5/api/maps-api-common.js +0 -1
  9. package/dist/es5/api/maps-api-common.js.map +1 -1
  10. package/dist/es5/api/maps-v3-client.js +5 -20
  11. package/dist/es5/api/maps-v3-client.js.map +1 -1
  12. package/dist/es5/index.js +74 -6
  13. package/dist/es5/index.js.map +1 -1
  14. package/dist/es5/layers/h3-tile-layer.js +23 -41
  15. package/dist/es5/layers/h3-tile-layer.js.map +1 -1
  16. package/dist/es5/layers/quadbin-tile-layer.js +21 -42
  17. package/dist/es5/layers/quadbin-tile-layer.js.map +1 -1
  18. package/dist/es5/layers/raster-tile-layer.js +23 -39
  19. package/dist/es5/layers/raster-tile-layer.js.map +1 -1
  20. package/dist/es5/layers/schema/carto-raster-tile-loader.js +13 -4
  21. package/dist/es5/layers/schema/carto-raster-tile-loader.js.map +1 -1
  22. package/dist/es5/layers/schema/carto-spatial-tile-loader.js +14 -8
  23. package/dist/es5/layers/schema/carto-spatial-tile-loader.js.map +1 -1
  24. package/dist/es5/layers/schema/carto-tile.js +1 -1
  25. package/dist/es5/layers/schema/carto-tile.js.map +1 -1
  26. package/dist/es5/layers/schema/carto-vector-tile-loader.js +64 -4
  27. package/dist/es5/layers/schema/carto-vector-tile-loader.js.map +1 -1
  28. package/dist/es5/layers/utils.js +29 -0
  29. package/dist/es5/layers/utils.js.map +1 -0
  30. package/dist/es5/layers/{carto-tile-layer.js → vector-tile-layer.js} +49 -24
  31. package/dist/es5/layers/vector-tile-layer.js.map +1 -0
  32. package/dist/es5/sources/base-source.js +100 -0
  33. package/dist/es5/sources/base-source.js.map +1 -0
  34. package/dist/es5/sources/common.js +48 -0
  35. package/dist/es5/sources/common.js.map +1 -0
  36. package/dist/es5/sources/h3-query-source.js +58 -0
  37. package/dist/es5/sources/h3-query-source.js.map +1 -0
  38. package/dist/es5/sources/h3-table-source.js +58 -0
  39. package/dist/es5/sources/h3-table-source.js.map +1 -0
  40. package/dist/es5/sources/h3-tileset-source.js +43 -0
  41. package/dist/es5/sources/h3-tileset-source.js.map +1 -0
  42. package/dist/es5/sources/index.js +94 -0
  43. package/dist/es5/sources/index.js.map +1 -0
  44. package/dist/es5/sources/quadbin-query-source.js +58 -0
  45. package/dist/es5/sources/quadbin-query-source.js.map +1 -0
  46. package/dist/es5/sources/quadbin-table-source.js +58 -0
  47. package/dist/es5/sources/quadbin-table-source.js.map +1 -0
  48. package/dist/es5/sources/quadbin-tileset-source.js +43 -0
  49. package/dist/es5/sources/quadbin-tileset-source.js.map +1 -0
  50. package/dist/es5/sources/raster-source.js +43 -0
  51. package/dist/es5/sources/raster-source.js.map +1 -0
  52. package/dist/es5/sources/utils.js +136 -0
  53. package/dist/es5/sources/utils.js.map +1 -0
  54. package/dist/es5/sources/vector-query-source.js +52 -0
  55. package/dist/es5/sources/vector-query-source.js.map +1 -0
  56. package/dist/es5/sources/vector-table-source.js +52 -0
  57. package/dist/es5/sources/vector-table-source.js.map +1 -0
  58. package/dist/es5/sources/vector-tileset-source.js +43 -0
  59. package/dist/es5/sources/vector-tileset-source.js.map +1 -0
  60. package/dist/es5/utils.js +5 -0
  61. package/dist/es5/utils.js.map +1 -1
  62. package/dist/es5/workers/cartoRasterTile.js +10 -0
  63. package/dist/es5/workers/cartoRasterTile.js.map +1 -0
  64. package/dist/es5/workers/cartoSpatialTile.js +10 -0
  65. package/dist/es5/workers/cartoSpatialTile.js.map +1 -0
  66. package/dist/es5/workers/cartoVectorTile.js +10 -0
  67. package/dist/es5/workers/cartoVectorTile.js.map +1 -0
  68. package/dist/esm/api/layer-map.js +3 -7
  69. package/dist/esm/api/layer-map.js.map +1 -1
  70. package/dist/esm/api/maps-api-common.js +0 -1
  71. package/dist/esm/api/maps-api-common.js.map +1 -1
  72. package/dist/esm/api/maps-v3-client.js +2 -12
  73. package/dist/esm/api/maps-v3-client.js.map +1 -1
  74. package/dist/esm/index.js +5 -4
  75. package/dist/esm/index.js.map +1 -1
  76. package/dist/esm/layers/h3-tile-layer.js +21 -37
  77. package/dist/esm/layers/h3-tile-layer.js.map +1 -1
  78. package/dist/esm/layers/quadbin-tile-layer.js +18 -38
  79. package/dist/esm/layers/quadbin-tile-layer.js.map +1 -1
  80. package/dist/esm/layers/raster-tile-layer.js +19 -34
  81. package/dist/esm/layers/raster-tile-layer.js.map +1 -1
  82. package/dist/esm/layers/schema/carto-raster-tile-loader.js +12 -4
  83. package/dist/esm/layers/schema/carto-raster-tile-loader.js.map +1 -1
  84. package/dist/esm/layers/schema/carto-spatial-tile-loader.js +13 -8
  85. package/dist/esm/layers/schema/carto-spatial-tile-loader.js.map +1 -1
  86. package/dist/esm/layers/schema/carto-tile.js +1 -1
  87. package/dist/esm/layers/schema/carto-tile.js.map +1 -1
  88. package/dist/esm/layers/schema/carto-vector-tile-loader.js +63 -4
  89. package/dist/esm/layers/schema/carto-vector-tile-loader.js.map +1 -1
  90. package/dist/esm/layers/utils.js +14 -0
  91. package/dist/esm/layers/utils.js.map +1 -0
  92. package/dist/esm/layers/{carto-tile-layer.js → vector-tile-layer.js} +39 -15
  93. package/dist/esm/layers/vector-tile-layer.js.map +1 -0
  94. package/dist/esm/sources/base-source.js +49 -0
  95. package/dist/esm/sources/base-source.js.map +1 -0
  96. package/dist/esm/sources/common.js +26 -0
  97. package/dist/esm/sources/common.js.map +1 -0
  98. package/dist/esm/sources/h3-query-source.js +32 -0
  99. package/dist/esm/sources/h3-query-source.js.map +1 -0
  100. package/dist/esm/sources/h3-table-source.js +32 -0
  101. package/dist/esm/sources/h3-table-source.js.map +1 -0
  102. package/dist/esm/sources/h3-tileset-source.js +14 -0
  103. package/dist/esm/sources/h3-tileset-source.js.map +1 -0
  104. package/dist/esm/sources/index.js +12 -0
  105. package/dist/esm/sources/index.js.map +1 -0
  106. package/dist/esm/sources/quadbin-query-source.js +32 -0
  107. package/dist/esm/sources/quadbin-query-source.js.map +1 -0
  108. package/dist/esm/sources/quadbin-table-source.js +32 -0
  109. package/dist/esm/sources/quadbin-table-source.js.map +1 -0
  110. package/dist/esm/sources/quadbin-tileset-source.js +14 -0
  111. package/dist/esm/sources/quadbin-tileset-source.js.map +1 -0
  112. package/dist/esm/sources/raster-source.js +14 -0
  113. package/dist/esm/sources/raster-source.js.map +1 -0
  114. package/dist/esm/sources/utils.js +69 -0
  115. package/dist/esm/sources/utils.js.map +1 -0
  116. package/dist/esm/sources/vector-query-source.js +25 -0
  117. package/dist/esm/sources/vector-query-source.js.map +1 -0
  118. package/dist/esm/sources/vector-table-source.js +25 -0
  119. package/dist/esm/sources/vector-table-source.js.map +1 -0
  120. package/dist/esm/sources/vector-tileset-source.js +14 -0
  121. package/dist/esm/sources/vector-tileset-source.js.map +1 -0
  122. package/dist/esm/utils.js +3 -0
  123. package/dist/esm/utils.js.map +1 -1
  124. package/dist/esm/workers/cartoRasterTile.js +4 -0
  125. package/dist/esm/workers/cartoRasterTile.js.map +1 -0
  126. package/dist/esm/workers/cartoSpatialTile.js +4 -0
  127. package/dist/esm/workers/cartoSpatialTile.js.map +1 -0
  128. package/dist/esm/workers/cartoVectorTile.js +4 -0
  129. package/dist/esm/workers/cartoVectorTile.js.map +1 -0
  130. package/dist.min.js +25 -25
  131. package/package.json +11 -9
  132. package/src/api/layer-map.ts +4 -8
  133. package/src/api/maps-api-common.ts +0 -1
  134. package/src/api/maps-v3-client.ts +6 -5
  135. package/src/index.ts +34 -5
  136. package/src/layers/h3-tile-layer.ts +22 -35
  137. package/src/layers/quadbin-tile-layer.ts +19 -33
  138. package/src/layers/raster-tile-layer.ts +22 -26
  139. package/src/layers/schema/carto-raster-tile-loader.ts +26 -6
  140. package/src/layers/schema/carto-spatial-tile-loader.ts +25 -11
  141. package/src/layers/schema/carto-tile.ts +1 -1
  142. package/src/layers/schema/carto-vector-tile-loader.ts +79 -9
  143. package/src/layers/utils.ts +11 -0
  144. package/src/layers/{carto-tile-layer.ts → vector-tile-layer.ts} +40 -21
  145. package/src/sources/base-source.ts +55 -0
  146. package/src/sources/common.ts +132 -0
  147. package/src/sources/h3-query-source.ts +45 -0
  148. package/src/sources/h3-table-source.ts +46 -0
  149. package/src/sources/h3-tileset-source.ts +16 -0
  150. package/src/sources/index.ts +32 -0
  151. package/src/sources/quadbin-query-source.ts +46 -0
  152. package/src/sources/quadbin-table-source.ts +46 -0
  153. package/src/sources/quadbin-tileset-source.ts +16 -0
  154. package/src/sources/raster-source.ts +16 -0
  155. package/src/sources/utils.ts +63 -0
  156. package/src/sources/vector-query-source.ts +23 -0
  157. package/src/sources/vector-table-source.ts +23 -0
  158. package/src/sources/vector-tileset-source.ts +16 -0
  159. package/src/utils.ts +6 -0
  160. package/src/workers/cartoRasterTile.ts +4 -0
  161. package/src/workers/cartoSpatialTile.ts +4 -0
  162. package/src/workers/cartoVectorTile.ts +4 -0
  163. package/typed/api/layer-map.d.ts +2 -3
  164. package/typed/api/layer-map.d.ts.map +1 -1
  165. package/typed/api/maps-api-common.d.ts +0 -1
  166. package/typed/api/maps-api-common.d.ts.map +1 -1
  167. package/typed/api/maps-v3-client.d.ts +0 -3
  168. package/typed/api/maps-v3-client.d.ts.map +1 -1
  169. package/typed/index.d.ts +6 -4
  170. package/typed/index.d.ts.map +1 -1
  171. package/typed/layers/h3-tile-layer.d.ts +5 -8
  172. package/typed/layers/h3-tile-layer.d.ts.map +1 -1
  173. package/typed/layers/quadbin-tile-layer.d.ts +5 -9
  174. package/typed/layers/quadbin-tile-layer.d.ts.map +1 -1
  175. package/typed/layers/raster-tile-layer.d.ts +6 -10
  176. package/typed/layers/raster-tile-layer.d.ts.map +1 -1
  177. package/typed/layers/schema/carto-raster-tile-loader.d.ts.map +1 -1
  178. package/typed/layers/schema/carto-spatial-tile-loader.d.ts.map +1 -1
  179. package/typed/layers/schema/carto-vector-tile-loader.d.ts.map +1 -1
  180. package/typed/layers/utils.d.ts +5 -0
  181. package/typed/layers/utils.d.ts.map +1 -0
  182. package/typed/layers/{carto-tile-layer.d.ts → vector-tile-layer.d.ts} +11 -7
  183. package/typed/layers/vector-tile-layer.d.ts.map +1 -0
  184. package/typed/sources/base-source.d.ts +4 -0
  185. package/typed/sources/base-source.d.ts.map +1 -0
  186. package/typed/sources/common.d.ts +116 -0
  187. package/typed/sources/common.d.ts.map +1 -0
  188. package/typed/sources/h3-query-source.d.ts +5 -0
  189. package/typed/sources/h3-query-source.d.ts.map +1 -0
  190. package/typed/sources/h3-table-source.d.ts +5 -0
  191. package/typed/sources/h3-table-source.d.ts.map +1 -0
  192. package/typed/sources/h3-tileset-source.d.ts +5 -0
  193. package/typed/sources/h3-tileset-source.d.ts.map +1 -0
  194. package/typed/sources/index.d.ts +23 -0
  195. package/typed/sources/index.d.ts.map +1 -0
  196. package/typed/sources/quadbin-query-source.d.ts +5 -0
  197. package/typed/sources/quadbin-query-source.d.ts.map +1 -0
  198. package/typed/sources/quadbin-table-source.d.ts +5 -0
  199. package/typed/sources/quadbin-table-source.d.ts.map +1 -0
  200. package/typed/sources/quadbin-tileset-source.d.ts +5 -0
  201. package/typed/sources/quadbin-tileset-source.d.ts.map +1 -0
  202. package/typed/sources/raster-source.d.ts +5 -0
  203. package/typed/sources/raster-source.d.ts.map +1 -0
  204. package/typed/sources/utils.d.ts +15 -0
  205. package/typed/sources/utils.d.ts.map +1 -0
  206. package/typed/sources/vector-query-source.d.ts +5 -0
  207. package/typed/sources/vector-query-source.d.ts.map +1 -0
  208. package/typed/sources/vector-table-source.d.ts +5 -0
  209. package/typed/sources/vector-table-source.d.ts.map +1 -0
  210. package/typed/sources/vector-tileset-source.d.ts +5 -0
  211. package/typed/sources/vector-tileset-source.d.ts.map +1 -0
  212. package/typed/utils.d.ts +1 -0
  213. package/typed/utils.d.ts.map +1 -1
  214. package/typed/workers/cartoRasterTile.d.ts +2 -0
  215. package/typed/workers/cartoRasterTile.d.ts.map +1 -0
  216. package/typed/workers/cartoSpatialTile.d.ts +2 -0
  217. package/typed/workers/cartoSpatialTile.d.ts.map +1 -0
  218. package/typed/workers/cartoVectorTile.d.ts +2 -0
  219. package/typed/workers/cartoVectorTile.d.ts.map +1 -0
  220. package/dist/es5/layers/carto-tile-layer.js.map +0 -1
  221. package/dist/esm/layers/carto-tile-layer.js.map +0 -1
  222. package/typed/api/index.js +0 -3
  223. package/typed/api/layer-map.js +0 -264
  224. package/typed/api/maps-api-common.js +0 -50
  225. package/typed/api/maps-client.js +0 -125
  226. package/typed/api/maps-v3-client.js +0 -304
  227. package/typed/api/parseMap.js +0 -178
  228. package/typed/basemap.js +0 -9
  229. package/typed/config.js +0 -35
  230. package/typed/index.js +0 -10
  231. package/typed/layers/carto-layer.js +0 -173
  232. package/typed/layers/carto-tile-layer.d.ts.map +0 -1
  233. package/typed/layers/carto-tile-layer.js +0 -105
  234. package/typed/layers/h3-tile-layer.js +0 -47
  235. package/typed/layers/h3-tileset-2d.js +0 -85
  236. package/typed/layers/quadkey-tile-layer.d.ts +0 -21
  237. package/typed/layers/quadkey-tile-layer.d.ts.map +0 -1
  238. package/typed/layers/quadkey-tile-layer.js +0 -42
  239. package/typed/layers/quadkey-tileset-2d.d.ts +0 -15
  240. package/typed/layers/quadkey-tileset-2d.d.ts.map +0 -1
  241. package/typed/layers/quadkey-tileset-2d.js +0 -36
  242. package/typed/layers/schema/carto-tile.js +0 -161
  243. package/typed/layers/spatial-index-tile-layer.js +0 -40
  244. package/typed/style/color-bins-style.js +0 -12
  245. package/typed/style/color-categories-style.js +0 -16
  246. package/typed/style/color-continuous-style.js +0 -12
  247. package/typed/style/palette.js +0 -62
  248. package/typed/style/utils.js +0 -15
  249. package/typed/utils.js +0 -4
@@ -13,7 +13,7 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/cl
13
13
 
14
14
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
15
15
 
16
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
16
+ var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
17
17
 
18
18
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
19
19
 
@@ -31,6 +31,10 @@ var _h3Tileset2d = _interopRequireWildcard(require("./h3-tileset-2d"));
31
31
 
32
32
  var _spatialIndexTileLayer = _interopRequireDefault(require("./spatial-index-tile-layer"));
33
33
 
34
+ var _common = require("../sources/common");
35
+
36
+ var _utils = require("./utils");
37
+
34
38
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
35
39
 
36
40
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -57,7 +61,8 @@ var renderSubLayers = function renderSubLayers(props) {
57
61
  };
58
62
 
59
63
  var defaultProps = {
60
- aggregationResLevel: 4
64
+ aggregationResLevel: 4,
65
+ data: _common.TilejsonPropType
61
66
  };
62
67
 
63
68
  var H3TileLayer = function (_CompositeLayer) {
@@ -66,52 +71,34 @@ var H3TileLayer = function (_CompositeLayer) {
66
71
  var _super = _createSuper(H3TileLayer);
67
72
 
68
73
  function H3TileLayer() {
69
- var _this;
70
-
71
74
  (0, _classCallCheck2.default)(this, H3TileLayer);
72
-
73
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
74
- args[_key] = arguments[_key];
75
- }
76
-
77
- _this = _super.call.apply(_super, [this].concat(args));
78
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", void 0);
79
- return _this;
75
+ return _super.apply(this, arguments);
80
76
  }
81
77
 
82
78
  (0, _createClass2.default)(H3TileLayer, [{
83
79
  key: "initializeState",
84
80
  value: function initializeState() {
85
81
  _geoLayers.H3HexagonLayer._checkH3Lib();
86
-
87
- this.setState({
88
- data: null,
89
- tileJSON: null
90
- });
91
82
  }
92
83
  }, {
93
- key: "updateState",
94
- value: function updateState(_ref) {
95
- var changeFlags = _ref.changeFlags;
96
-
97
- if (changeFlags.dataChanged) {
98
- var data = this.props.data;
99
- var tileJSON = data;
100
- data = tileJSON.tiles;
101
- this.setState({
102
- data: data,
103
- tileJSON: tileJSON
104
- });
105
- }
84
+ key: "getLoadOptions",
85
+ value: function getLoadOptions() {
86
+ var loadOptions = (0, _get2.default)((0, _getPrototypeOf2.default)(H3TileLayer.prototype), "getLoadOptions", this).call(this) || {};
87
+ var tileJSON = this.props.data;
88
+ (0, _utils.injectAccessToken)(loadOptions, tileJSON.accessToken);
89
+ loadOptions.cartoSpatialTile = _objectSpread(_objectSpread({}, loadOptions.cartoSpatialTile), {}, {
90
+ scheme: 'h3'
91
+ });
92
+ return loadOptions;
106
93
  }
107
94
  }, {
108
95
  key: "renderLayers",
109
96
  value: function renderLayers() {
110
- var _this$state = this.state,
111
- data = _this$state.data,
112
- tileJSON = _this$state.tileJSON;
113
- var minresolution = parseInt(tileJSON.minresolution);
114
- var maxresolution = parseInt(tileJSON.maxresolution);
97
+ var tileJSON = this.props.data;
98
+ if (!tileJSON) return null;
99
+ var data = tileJSON.tiles;
100
+ var minresolution = tileJSON.minresolution,
101
+ maxresolution = tileJSON.maxresolution;
115
102
 
116
103
  if (this.props.minZoom) {
117
104
  minresolution = Math.max(minresolution, (0, _h3Tileset2d.getHexagonResolution)({
@@ -134,12 +121,7 @@ var H3TileLayer = function (_CompositeLayer) {
134
121
  renderSubLayers: renderSubLayers,
135
122
  minZoom: minresolution,
136
123
  maxZoom: maxresolution,
137
- loadOptions: _objectSpread(_objectSpread({}, this.getLoadOptions()), {}, {
138
- cartoSpatialTile: {
139
- scheme: 'h3'
140
- },
141
- mimeType: 'application/vnd.carto-spatial-tile'
142
- })
124
+ loadOptions: this.getLoadOptions()
143
125
  })];
144
126
  }
145
127
  }]);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/layers/h3-tile-layer.ts"],"names":["renderSubLayers","props","data","index","tile","length","H3HexagonLayer","getHexagon","d","id","centerHexagon","highPrecision","defaultProps","aggregationResLevel","H3TileLayer","_checkH3Lib","setState","tileJSON","changeFlags","dataChanged","tiles","state","minresolution","parseInt","maxresolution","minZoom","Math","max","zoom","latitude","maxZoom","min","SpatialIndexTileLayer","TilesetClass","H3Tileset2D","loadOptions","getLoadOptions","cartoSpatialTile","scheme","mimeType","CompositeLayer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAQA;;AACA;;AACA;;;;;;;;;;;;;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,KAAK,EAAI;AAC/B,MAAOC,IAAP,GAAeD,KAAf,CAAOC,IAAP;AACA,MAAOC,KAAP,GAAgBF,KAAK,CAACG,IAAtB,CAAOD,KAAP;AACA,MAAI,CAACD,IAAD,IAAS,CAACA,IAAI,CAACG,MAAnB,EAA2B,OAAO,IAAP;AAE3B,SAAO,IAAIC,yBAAJ,CAAmBL,KAAnB,EAA0B;AAC/BM,IAAAA,UAAU,EAAE,oBAAAC,CAAC;AAAA,aAAIA,CAAC,CAACC,EAAN;AAAA,KADkB;AAE/BC,IAAAA,aAAa,EAAEP,KAFgB;AAG/BQ,IAAAA,aAAa,EAAE;AAHgB,GAA1B,CAAP;AAKD,CAVD;;AAYA,IAAMC,YAA+C,GAAG;AACtDC,EAAAA,mBAAmB,EAAE;AADiC,CAAxD;;IAiBqBC,W;;;;;;;;;;;;;;;;;;;;;WAWnB,2BAAwB;AACtBR,gCAAeS,WAAf;;AACA,WAAKC,QAAL,CAAc;AAACd,QAAAA,IAAI,EAAE,IAAP;AAAae,QAAAA,QAAQ,EAAE;AAAvB,OAAd;AACD;;;WAED,2BAAyD;AAAA,UAA5CC,WAA4C,QAA5CA,WAA4C;;AACvD,UAAIA,WAAW,CAACC,WAAhB,EAA6B;AAC3B,YAAKjB,IAAL,GAAa,KAAKD,KAAlB,CAAKC,IAAL;AACA,YAAMe,QAAQ,GAAGf,IAAjB;AACAA,QAAAA,IAAI,GAAIe,QAAD,CAAkBG,KAAzB;AACA,aAAKJ,QAAL,CAAc;AAACd,UAAAA,IAAI,EAAJA,IAAD;AAAOe,UAAAA,QAAQ,EAARA;AAAP,SAAd;AACD;AACF;;;WAED,wBAA0C;AACxC,wBAAyB,KAAKI,KAA9B;AAAA,UAAOnB,IAAP,eAAOA,IAAP;AAAA,UAAae,QAAb,eAAaA,QAAb;AACA,UAAIK,aAAa,GAAGC,QAAQ,CAACN,QAAQ,CAACK,aAAV,CAA5B;AACA,UAAIE,aAAa,GAAGD,QAAQ,CAACN,QAAQ,CAACO,aAAV,CAA5B;;AAIA,UAAI,KAAKvB,KAAL,CAAWwB,OAAf,EAAwB;AACtBH,QAAAA,aAAa,GAAGI,IAAI,CAACC,GAAL,CACdL,aADc,EAEd,uCAAqB;AAACM,UAAAA,IAAI,EAAE,KAAK3B,KAAL,CAAWwB,OAAlB;AAA2BI,UAAAA,QAAQ,EAAE;AAArC,SAArB,CAFc,CAAhB;AAID;;AACD,UAAI,KAAK5B,KAAL,CAAW6B,OAAf,EAAwB;AACtBN,QAAAA,aAAa,GAAGE,IAAI,CAACK,GAAL,CACdP,aADc,EAEd,uCAAqB;AAACI,UAAAA,IAAI,EAAE,KAAK3B,KAAL,CAAW6B,OAAlB;AAA2BD,UAAAA,QAAQ,EAAE;AAArC,SAArB,CAFc,CAAhB;AAID;;AAID,aAAO,CACL,IAAIG,8BAAJ,CAA0B,KAAK/B,KAA/B,EAAsC;AACpCQ,QAAAA,EAAE,0BAAmB,KAAKR,KAAL,CAAWQ,EAA9B,CADkC;AAEpCP,QAAAA,IAAI,EAAJA,IAFoC;AAIpC+B,QAAAA,YAAY,EAAEC,oBAJsB;AAKpClC,QAAAA,eAAe,EAAfA,eALoC;AAOpCyB,QAAAA,OAAO,EAAEH,aAP2B;AAQpCQ,QAAAA,OAAO,EAAEN,aAR2B;AASpCW,QAAAA,WAAW,kCACN,KAAKC,cAAL,EADM;AAETC,UAAAA,gBAAgB,EAAE;AAACC,YAAAA,MAAM,EAAE;AAAT,WAFT;AAGTC,UAAAA,QAAQ,EAAE;AAHD;AATyB,OAAtC,CADK,CAAP;AAiBD;;;EAhEgFC,oB;;;8BAA9D1B,W,eAGA,a;8BAHAA,W,kBAIGF,Y","sourcesContent":["import {\n CompositeLayer,\n CompositeLayerProps,\n Layer,\n LayersList,\n UpdateParameters,\n DefaultProps\n} from '@deck.gl/core';\nimport {H3HexagonLayer} from '@deck.gl/geo-layers';\nimport H3Tileset2D, {getHexagonResolution} from './h3-tileset-2d';\nimport SpatialIndexTileLayer from './spatial-index-tile-layer';\n\nconst renderSubLayers = props => {\n const {data} = props;\n const {index} = props.tile;\n if (!data || !data.length) return null;\n\n return new H3HexagonLayer(props, {\n getHexagon: d => d.id,\n centerHexagon: index,\n highPrecision: true\n });\n};\n\nconst defaultProps: DefaultProps<H3HexagonLayerProps> = {\n aggregationResLevel: 4\n};\n\n/** All properties supported by H3TileLayer. */\nexport type H3TileLayerProps<DataT = any> = _H3TileLayerProps<DataT> & CompositeLayerProps;\n\n// TODO: use type from h3-hexagon-layer when available\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\ntype H3HexagonLayerProps<DataT = any> = Record<string, any>;\n\n/** Properties added by H3TileLayer. */\ntype _H3TileLayerProps<DataT> = H3HexagonLayerProps<DataT> & {\n data: string;\n aggregationResLevel?: number;\n};\n\nexport default class H3TileLayer<DataT = any, ExtraPropsT extends {} = {}> extends CompositeLayer<\n ExtraPropsT & Required<_H3TileLayerProps<DataT>>\n> {\n static layerName = 'H3TileLayer';\n static defaultProps = defaultProps;\n\n state!: {\n tileJSON: any;\n data: any;\n };\n\n initializeState(): void {\n H3HexagonLayer._checkH3Lib();\n this.setState({data: null, tileJSON: null});\n }\n\n updateState({changeFlags}: UpdateParameters<this>): void {\n if (changeFlags.dataChanged) {\n let {data} = this.props;\n const tileJSON = data;\n data = (tileJSON as any).tiles;\n this.setState({data, tileJSON});\n }\n }\n\n renderLayers(): Layer | null | LayersList {\n const {data, tileJSON} = this.state;\n let minresolution = parseInt(tileJSON.minresolution);\n let maxresolution = parseInt(tileJSON.maxresolution);\n\n // Convert Mercator zooms provided in props into H3 res levels\n // and clip into valid range provided from the tilejson\n if (this.props.minZoom) {\n minresolution = Math.max(\n minresolution,\n getHexagonResolution({zoom: this.props.minZoom, latitude: 0})\n );\n }\n if (this.props.maxZoom) {\n maxresolution = Math.min(\n maxresolution,\n getHexagonResolution({zoom: this.props.maxZoom, latitude: 0})\n );\n }\n\n // The naming is unfortunate, but minZoom & maxZoom in the context\n // of a Tileset2D refer to the resolution levels, not the Mercator zooms\n return [\n new SpatialIndexTileLayer(this.props, {\n id: `h3-tile-layer-${this.props.id}`,\n data,\n // @ts-expect-error Tileset2D should be generic over TileIndex\n TilesetClass: H3Tileset2D,\n renderSubLayers,\n // minZoom and maxZoom are H3 resolutions, however we must use this naming as that is what the Tileset2D class expects\n minZoom: minresolution,\n maxZoom: maxresolution,\n loadOptions: {\n ...this.getLoadOptions(),\n cartoSpatialTile: {scheme: 'h3'},\n mimeType: 'application/vnd.carto-spatial-tile'\n }\n })\n ];\n }\n}\n"],"file":"h3-tile-layer.js"}
1
+ {"version":3,"sources":["../../../src/layers/h3-tile-layer.ts"],"names":["renderSubLayers","props","data","index","tile","length","H3HexagonLayer","getHexagon","d","id","centerHexagon","highPrecision","defaultProps","aggregationResLevel","TilejsonPropType","H3TileLayer","_checkH3Lib","loadOptions","tileJSON","accessToken","cartoSpatialTile","scheme","tiles","minresolution","maxresolution","minZoom","Math","max","zoom","latitude","maxZoom","min","SpatialIndexTileLayer","TilesetClass","H3Tileset2D","getLoadOptions","CompositeLayer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;AAEA,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAACC,KAAD,EAAgC;AACtD,MAAOC,IAAP,GAAeD,KAAf,CAAOC,IAAP;AACA,MAAOC,KAAP,GAAgBF,KAAK,CAACG,IAAtB,CAAOD,KAAP;AACA,MAAI,CAACD,IAAD,IAAS,CAACA,IAAI,CAACG,MAAnB,EAA2B,OAAO,IAAP;AAE3B,SAAO,IAAIC,yBAAJ,CAAmBL,KAAnB,EAA0B;AAC/BM,IAAAA,UAAU,EAAE,oBAAAC,CAAC;AAAA,aAAIA,CAAC,CAACC,EAAN;AAAA,KADkB;AAE/BC,IAAAA,aAAa,EAAEP,KAFgB;AAG/BQ,IAAAA,aAAa,EAAE;AAHgB,GAA1B,CAAP;AAKD,CAVD;;AAYA,IAAMC,YAA+C,GAAG;AACtDC,EAAAA,mBAAmB,EAAE,CADiC;AAEtDX,EAAAA,IAAI,EAAEY;AAFgD,CAAxD;;IAkBqBC,W;;;;;;;;;;;;WAMnB,2BAAwB;AACtBT,gCAAeU,WAAf;AACD;;;WAED,0BAAsB;AACpB,UAAMC,WAAW,GAAG,+GAA0B,EAA9C;AACA,UAAMC,QAAQ,GAAG,KAAKjB,KAAL,CAAWC,IAA5B;AACA,oCAAkBe,WAAlB,EAA+BC,QAAQ,CAACC,WAAxC;AACAF,MAAAA,WAAW,CAACG,gBAAZ,mCAAmCH,WAAW,CAACG,gBAA/C;AAAiEC,QAAAA,MAAM,EAAE;AAAzE;AACA,aAAOJ,WAAP;AACD;;;WAED,wBAA0C;AACxC,UAAMC,QAAQ,GAAG,KAAKjB,KAAL,CAAWC,IAA5B;AACA,UAAI,CAACgB,QAAL,EAAe,OAAO,IAAP;AAEf,UAAchB,IAAd,GAAsBgB,QAAtB,CAAOI,KAAP;AACA,UAAKC,aAAL,GAAqCL,QAArC,CAAKK,aAAL;AAAA,UAAoBC,aAApB,GAAqCN,QAArC,CAAoBM,aAApB;;AAGA,UAAI,KAAKvB,KAAL,CAAWwB,OAAf,EAAwB;AACtBF,QAAAA,aAAa,GAAGG,IAAI,CAACC,GAAL,CACdJ,aADc,EAEd,uCAAqB;AAACK,UAAAA,IAAI,EAAE,KAAK3B,KAAL,CAAWwB,OAAlB;AAA2BI,UAAAA,QAAQ,EAAE;AAArC,SAArB,CAFc,CAAhB;AAID;;AACD,UAAI,KAAK5B,KAAL,CAAW6B,OAAf,EAAwB;AACtBN,QAAAA,aAAa,GAAGE,IAAI,CAACK,GAAL,CACdP,aADc,EAEd,uCAAqB;AAACI,UAAAA,IAAI,EAAE,KAAK3B,KAAL,CAAW6B,OAAlB;AAA2BD,UAAAA,QAAQ,EAAE;AAArC,SAArB,CAFc,CAAhB;AAID;;AAID,aAAO,CAEL,IAAIG,8BAAJ,CAA0B,KAAK/B,KAA/B,EAAsC;AACpCQ,QAAAA,EAAE,0BAAmB,KAAKR,KAAL,CAAWQ,EAA9B,CADkC;AAEpCP,QAAAA,IAAI,EAAJA,IAFoC;AAIpC+B,QAAAA,YAAY,EAAEC,oBAJsB;AAKpClC,QAAAA,eAAe,EAAfA,eALoC;AAOpCyB,QAAAA,OAAO,EAAEF,aAP2B;AAQpCO,QAAAA,OAAO,EAAEN,aAR2B;AASpCP,QAAAA,WAAW,EAAE,KAAKkB,cAAL;AATuB,OAAtC,CAFK,CAAP;AAcD;;;EAvDgFC,oB;;;8BAA9DrB,W,eAGA,a;8BAHAA,W,kBAIGH,Y","sourcesContent":["import {CompositeLayer, CompositeLayerProps, Layer, LayersList, DefaultProps} from '@deck.gl/core';\nimport {H3HexagonLayer} from '@deck.gl/geo-layers';\nimport H3Tileset2D, {getHexagonResolution} from './h3-tileset-2d';\nimport SpatialIndexTileLayer from './spatial-index-tile-layer';\nimport {TilejsonPropType, CartoTilejsonResult} from '../sources/common';\nimport {injectAccessToken} from './utils';\n\nconst renderSubLayers = (props: H3HexagonLayerProps) => {\n const {data} = props;\n const {index} = props.tile;\n if (!data || !data.length) return null;\n\n return new H3HexagonLayer(props, {\n getHexagon: d => d.id,\n centerHexagon: index,\n highPrecision: true\n });\n};\n\nconst defaultProps: DefaultProps<H3HexagonLayerProps> = {\n aggregationResLevel: 4,\n data: TilejsonPropType\n};\n\n/** All properties supported by H3TileLayer. */\nexport type H3TileLayerProps<DataT = any> = _H3TileLayerProps<DataT> & CompositeLayerProps;\n\n// TODO: use type from h3-hexagon-layer when available\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\ntype H3HexagonLayerProps<DataT = any> = Record<string, any>;\n\n/** Properties added by H3TileLayer. */\ntype _H3TileLayerProps<DataT> = Omit<H3HexagonLayerProps<DataT>, 'data'> & {\n data: null | CartoTilejsonResult | Promise<CartoTilejsonResult>;\n aggregationResLevel?: number;\n};\n\nexport default class H3TileLayer<DataT = any, ExtraPropsT extends {} = {}> extends CompositeLayer<\n ExtraPropsT & Required<_H3TileLayerProps<DataT>>\n> {\n static layerName = 'H3TileLayer';\n static defaultProps = defaultProps;\n\n initializeState(): void {\n H3HexagonLayer._checkH3Lib();\n }\n\n getLoadOptions(): any {\n const loadOptions = super.getLoadOptions() || {};\n const tileJSON = this.props.data as CartoTilejsonResult;\n injectAccessToken(loadOptions, tileJSON.accessToken);\n loadOptions.cartoSpatialTile = {...loadOptions.cartoSpatialTile, scheme: 'h3'};\n return loadOptions;\n }\n\n renderLayers(): Layer | null | LayersList {\n const tileJSON = this.props.data as CartoTilejsonResult;\n if (!tileJSON) return null;\n\n const {tiles: data} = tileJSON;\n let {minresolution, maxresolution} = tileJSON;\n // Convert Mercator zooms provided in props into H3 res levels\n // and clip into valid range provided from the tilejson\n if (this.props.minZoom) {\n minresolution = Math.max(\n minresolution,\n getHexagonResolution({zoom: this.props.minZoom, latitude: 0})\n );\n }\n if (this.props.maxZoom) {\n maxresolution = Math.min(\n maxresolution,\n getHexagonResolution({zoom: this.props.maxZoom, latitude: 0})\n );\n }\n\n // The naming is unfortunate, but minZoom & maxZoom in the context\n // of a Tileset2D refer to the resolution levels, not the Mercator zooms\n return [\n // @ts-ignore\n new SpatialIndexTileLayer(this.props, {\n id: `h3-tile-layer-${this.props.id}`,\n data,\n // TODO: Tileset2D should be generic over TileIndex type\n TilesetClass: H3Tileset2D as any,\n renderSubLayers,\n // minZoom and maxZoom are H3 resolutions, however we must use this naming as that is what the Tileset2D class expects\n minZoom: minresolution,\n maxZoom: maxresolution,\n loadOptions: this.getLoadOptions()\n })\n ];\n }\n}\n"],"file":"h3-tile-layer.js"}
@@ -11,7 +11,7 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/cl
11
11
 
12
12
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
13
 
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
14
+ var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
15
15
 
16
16
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
17
 
@@ -31,6 +31,10 @@ var _spatialIndexTileLayer = _interopRequireDefault(require("./spatial-index-til
31
31
 
32
32
  var _quadbin = require("quadbin");
33
33
 
34
+ var _common = require("../sources/common");
35
+
36
+ var _utils = require("./utils");
37
+
34
38
  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; }
35
39
 
36
40
  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; }
@@ -54,7 +58,8 @@ var renderSubLayers = function renderSubLayers(props) {
54
58
 
55
59
  exports.renderSubLayers = renderSubLayers;
56
60
  var defaultProps = {
57
- aggregationResLevel: 6
61
+ aggregationResLevel: 6,
62
+ data: _common.TilejsonPropType
58
63
  };
59
64
 
60
65
  var QuadbinTileLayer = function (_CompositeLayer) {
@@ -63,61 +68,35 @@ var QuadbinTileLayer = function (_CompositeLayer) {
63
68
  var _super = _createSuper(QuadbinTileLayer);
64
69
 
65
70
  function QuadbinTileLayer() {
66
- var _this;
67
-
68
71
  (0, _classCallCheck2.default)(this, QuadbinTileLayer);
69
-
70
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
71
- args[_key] = arguments[_key];
72
- }
73
-
74
- _this = _super.call.apply(_super, [this].concat(args));
75
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", void 0);
76
- return _this;
72
+ return _super.apply(this, arguments);
77
73
  }
78
74
 
79
75
  (0, _createClass2.default)(QuadbinTileLayer, [{
80
- key: "initializeState",
81
- value: function initializeState() {
82
- this.setState({
83
- data: null,
84
- tileJSON: null
76
+ key: "getLoadOptions",
77
+ value: function getLoadOptions() {
78
+ var loadOptions = (0, _get2.default)((0, _getPrototypeOf2.default)(QuadbinTileLayer.prototype), "getLoadOptions", this).call(this) || {};
79
+ var tileJSON = this.props.data;
80
+ (0, _utils.injectAccessToken)(loadOptions, tileJSON.accessToken);
81
+ loadOptions.cartoSpatialTile = _objectSpread(_objectSpread({}, loadOptions.cartoSpatialTile), {}, {
82
+ scheme: 'quadbin'
85
83
  });
86
- }
87
- }, {
88
- key: "updateState",
89
- value: function updateState(_ref) {
90
- var changeFlags = _ref.changeFlags;
91
-
92
- if (changeFlags.dataChanged) {
93
- var data = this.props.data;
94
- var tileJSON = data;
95
- data = tileJSON.tiles;
96
- this.setState({
97
- data: data,
98
- tileJSON: tileJSON
99
- });
100
- }
84
+ return loadOptions;
101
85
  }
102
86
  }, {
103
87
  key: "renderLayers",
104
88
  value: function renderLayers() {
105
- var _this$state = this.state,
106
- data = _this$state.data,
107
- tileJSON = _this$state.tileJSON;
108
- var maxZoom = parseInt(tileJSON === null || tileJSON === void 0 ? void 0 : tileJSON.maxresolution);
89
+ var tileJSON = this.props.data;
90
+ if (!tileJSON) return null;
91
+ var data = tileJSON.tiles,
92
+ maxZoom = tileJSON.maxresolution;
109
93
  return [new _spatialIndexTileLayer.default(this.props, {
110
94
  id: "quadbin-tile-layer-".concat(this.props.id),
111
95
  data: data,
112
96
  TilesetClass: _quadbinTileset2d.default,
113
97
  renderSubLayers: renderSubLayers,
114
98
  maxZoom: maxZoom,
115
- loadOptions: _objectSpread(_objectSpread({}, this.getLoadOptions()), {}, {
116
- cartoSpatialTile: {
117
- scheme: 'quadbin'
118
- },
119
- mimeType: 'application/vnd.carto-spatial-tile'
120
- })
99
+ loadOptions: this.getLoadOptions()
121
100
  })];
122
101
  }
123
102
  }]);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/layers/quadbin-tile-layer.ts"],"names":["renderSubLayers","props","data","length","isBigInt","id","QuadbinLayer","getQuadbin","d","defaultProps","aggregationResLevel","QuadbinTileLayer","setState","tileJSON","changeFlags","dataChanged","tiles","state","maxZoom","parseInt","maxresolution","SpatialIndexTileLayer","TilesetClass","QuadbinTileset2D","loadOptions","getLoadOptions","cartoSpatialTile","scheme","mimeType","CompositeLayer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAQA;;AACA;;AACA;;AACA;;;;;;;;;;AAEO,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,KAAK,EAAI;AACtC,MAAOC,IAAP,GAAeD,KAAf,CAAOC,IAAP;AACA,MAAI,CAACA,IAAD,IAAS,CAACA,IAAI,CAACC,MAAnB,EAA2B,OAAO,IAAP;AAC3B,MAAMC,QAAQ,GAAG,OAAOF,IAAI,CAAC,CAAD,CAAJ,CAAQG,EAAf,KAAsB,QAAvC;AACA,SAAO,IAAIC,qBAAJ,CAAiBL,KAAjB,EAAwB;AAC7BM,IAAAA,UAAU,EAAEH,QAAQ,GAAG,UAAAI,CAAC;AAAA,aAAIA,CAAC,CAACH,EAAN;AAAA,KAAJ,GAAe,UAAAG,CAAC;AAAA,aAAI,0BAAYA,CAAC,CAACH,EAAd,CAAJ;AAAA;AADP,GAAxB,CAAP;AAGD,CAPM;;;AASP,IAAMI,YAAiD,GAAG;AACxDC,EAAAA,mBAAmB,EAAE;AADmC,CAA1D;;IAcqBC,gB;;;;;;;;;;;;;;;;;;;;;WAWnB,2BAAwB;AACtB,WAAKC,QAAL,CAAc;AAACV,QAAAA,IAAI,EAAE,IAAP;AAAaW,QAAAA,QAAQ,EAAE;AAAvB,OAAd;AACD;;;WAED,2BAAyD;AAAA,UAA5CC,WAA4C,QAA5CA,WAA4C;;AACvD,UAAIA,WAAW,CAACC,WAAhB,EAA6B;AAC3B,YAAKb,IAAL,GAAa,KAAKD,KAAlB,CAAKC,IAAL;AACA,YAAMW,QAAQ,GAAGX,IAAjB;AACAA,QAAAA,IAAI,GAAIW,QAAD,CAAkBG,KAAzB;AACA,aAAKJ,QAAL,CAAc;AAACV,UAAAA,IAAI,EAAJA,IAAD;AAAOW,UAAAA,QAAQ,EAARA;AAAP,SAAd;AACD;AACF;;;WAED,wBAA0C;AACxC,wBAAyB,KAAKI,KAA9B;AAAA,UAAOf,IAAP,eAAOA,IAAP;AAAA,UAAaW,QAAb,eAAaA,QAAb;AACA,UAAMK,OAAO,GAAGC,QAAQ,CAACN,QAAD,aAACA,QAAD,uBAACA,QAAQ,CAAEO,aAAX,CAAxB;AACA,aAAO,CACL,IAAIC,8BAAJ,CAA0B,KAAKpB,KAA/B,EAAsC;AACpCI,QAAAA,EAAE,+BAAwB,KAAKJ,KAAL,CAAWI,EAAnC,CADkC;AAEpCH,QAAAA,IAAI,EAAJA,IAFoC;AAIpCoB,QAAAA,YAAY,EAAEC,yBAJsB;AAKpCvB,QAAAA,eAAe,EAAfA,eALoC;AAMpCkB,QAAAA,OAAO,EAAPA,OANoC;AAOpCM,QAAAA,WAAW,kCACN,KAAKC,cAAL,EADM;AAETC,UAAAA,gBAAgB,EAAE;AAACC,YAAAA,MAAM,EAAE;AAAT,WAFT;AAGTC,UAAAA,QAAQ,EAAE;AAHD;AAPyB,OAAtC,CADK,CAAP;AAeD;;;EAvCOC,oB;;;8BAHWlB,gB,eAIA,kB;8BAJAA,gB,kBAKGF,Y","sourcesContent":["import {\n CompositeLayer,\n CompositeLayerProps,\n Layer,\n LayersList,\n UpdateParameters,\n DefaultProps\n} from '@deck.gl/core';\nimport QuadbinLayer, {QuadbinLayerProps} from './quadbin-layer';\nimport QuadbinTileset2D from './quadbin-tileset-2d';\nimport SpatialIndexTileLayer from './spatial-index-tile-layer';\nimport {hexToBigInt} from 'quadbin';\n\nexport const renderSubLayers = props => {\n const {data} = props;\n if (!data || !data.length) return null;\n const isBigInt = typeof data[0].id === 'bigint';\n return new QuadbinLayer(props, {\n getQuadbin: isBigInt ? d => d.id : d => hexToBigInt(d.id)\n });\n};\n\nconst defaultProps: DefaultProps<QuadbinTileLayerProps> = {\n aggregationResLevel: 6\n};\n\n/** All properties supported by QuadbinTileLayer. */\nexport type QuadbinTileLayerProps<DataT = any> = _QuadbinTileLayerProps<DataT> &\n CompositeLayerProps;\n\n/** Properties added by QuadbinTileLayer. */\ntype _QuadbinTileLayerProps<DataT> = QuadbinLayerProps<DataT> & {\n data: string;\n aggregationResLevel?: number;\n};\n\nexport default class QuadbinTileLayer<\n DataT = any,\n ExtraProps extends {} = {}\n> extends CompositeLayer<ExtraProps & Required<_QuadbinTileLayerProps<DataT>>> {\n static layerName = 'QuadbinTileLayer';\n static defaultProps = defaultProps;\n\n state!: {\n tileJSON: any;\n data: any;\n };\n initializeState(): void {\n this.setState({data: null, tileJSON: null});\n }\n\n updateState({changeFlags}: UpdateParameters<this>): void {\n if (changeFlags.dataChanged) {\n let {data} = this.props;\n const tileJSON = data;\n data = (tileJSON as any).tiles;\n this.setState({data, tileJSON});\n }\n }\n\n renderLayers(): Layer | null | LayersList {\n const {data, tileJSON} = this.state;\n const maxZoom = parseInt(tileJSON?.maxresolution);\n return [\n new SpatialIndexTileLayer(this.props, {\n id: `quadbin-tile-layer-${this.props.id}`,\n data,\n // TODO: Tileset2D should be generic over TileIndex type\n TilesetClass: QuadbinTileset2D as any,\n renderSubLayers,\n maxZoom,\n loadOptions: {\n ...this.getLoadOptions(),\n cartoSpatialTile: {scheme: 'quadbin'},\n mimeType: 'application/vnd.carto-spatial-tile'\n }\n })\n ];\n }\n}\n"],"file":"quadbin-tile-layer.js"}
1
+ {"version":3,"sources":["../../../src/layers/quadbin-tile-layer.ts"],"names":["renderSubLayers","props","data","length","isBigInt","id","QuadbinLayer","getQuadbin","d","defaultProps","aggregationResLevel","TilejsonPropType","QuadbinTileLayer","loadOptions","tileJSON","accessToken","cartoSpatialTile","scheme","tiles","maxZoom","maxresolution","SpatialIndexTileLayer","TilesetClass","QuadbinTileset2D","getLoadOptions","CompositeLayer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;;;;;AAEO,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,KAAK,EAAI;AACtC,MAAOC,IAAP,GAAeD,KAAf,CAAOC,IAAP;AACA,MAAI,CAACA,IAAD,IAAS,CAACA,IAAI,CAACC,MAAnB,EAA2B,OAAO,IAAP;AAC3B,MAAMC,QAAQ,GAAG,OAAOF,IAAI,CAAC,CAAD,CAAJ,CAAQG,EAAf,KAAsB,QAAvC;AACA,SAAO,IAAIC,qBAAJ,CAAiBL,KAAjB,EAAwB;AAC7BM,IAAAA,UAAU,EAAEH,QAAQ,GAAG,UAAAI,CAAC;AAAA,aAAIA,CAAC,CAACH,EAAN;AAAA,KAAJ,GAAe,UAAAG,CAAC;AAAA,aAAI,0BAAYA,CAAC,CAACH,EAAd,CAAJ;AAAA;AADP,GAAxB,CAAP;AAGD,CAPM;;;AASP,IAAMI,YAAiD,GAAG;AACxDC,EAAAA,mBAAmB,EAAE,CADmC;AAExDR,EAAAA,IAAI,EAAES;AAFkD,CAA1D;;IAeqBC,gB;;;;;;;;;;;;WAOnB,0BAAsB;AACpB,UAAMC,WAAW,GAAG,oHAA0B,EAA9C;AACA,UAAMC,QAAQ,GAAG,KAAKb,KAAL,CAAWC,IAA5B;AACA,oCAAkBW,WAAlB,EAA+BC,QAAQ,CAACC,WAAxC;AACAF,MAAAA,WAAW,CAACG,gBAAZ,mCAAmCH,WAAW,CAACG,gBAA/C;AAAiEC,QAAAA,MAAM,EAAE;AAAzE;AACA,aAAOJ,WAAP;AACD;;;WAED,wBAA0C;AACxC,UAAMC,QAAQ,GAAG,KAAKb,KAAL,CAAWC,IAA5B;AACA,UAAI,CAACY,QAAL,EAAe,OAAO,IAAP;AAEf,UAAcZ,IAAd,GAA8CY,QAA9C,CAAOI,KAAP;AAAA,UAAmCC,OAAnC,GAA8CL,QAA9C,CAAoBM,aAApB;AACA,aAAO,CAEL,IAAIC,8BAAJ,CAA0B,KAAKpB,KAA/B,EAAsC;AACpCI,QAAAA,EAAE,+BAAwB,KAAKJ,KAAL,CAAWI,EAAnC,CADkC;AAEpCH,QAAAA,IAAI,EAAJA,IAFoC;AAIpCoB,QAAAA,YAAY,EAAEC,yBAJsB;AAKpCvB,QAAAA,eAAe,EAAfA,eALoC;AAMpCmB,QAAAA,OAAO,EAAPA,OANoC;AAOpCN,QAAAA,WAAW,EAAE,KAAKW,cAAL;AAPuB,OAAtC,CAFK,CAAP;AAYD;;;EA7BOC,oB;;;8BAHWb,gB,eAIA,kB;8BAJAA,gB,kBAKGH,Y","sourcesContent":["import {CompositeLayer, CompositeLayerProps, Layer, LayersList, DefaultProps} from '@deck.gl/core';\nimport QuadbinLayer, {QuadbinLayerProps} from './quadbin-layer';\nimport QuadbinTileset2D from './quadbin-tileset-2d';\nimport SpatialIndexTileLayer from './spatial-index-tile-layer';\nimport {hexToBigInt} from 'quadbin';\nimport {TilejsonPropType, CartoTilejsonResult} from '../sources/common';\nimport {injectAccessToken} from './utils';\n\nexport const renderSubLayers = props => {\n const {data} = props;\n if (!data || !data.length) return null;\n const isBigInt = typeof data[0].id === 'bigint';\n return new QuadbinLayer(props, {\n getQuadbin: isBigInt ? d => d.id : d => hexToBigInt(d.id)\n });\n};\n\nconst defaultProps: DefaultProps<QuadbinTileLayerProps> = {\n aggregationResLevel: 6,\n data: TilejsonPropType\n};\n\n/** All properties supported by QuadbinTileLayer. */\nexport type QuadbinTileLayerProps<DataT = any> = _QuadbinTileLayerProps<DataT> &\n CompositeLayerProps;\n\n/** Properties added by QuadbinTileLayer. */\ntype _QuadbinTileLayerProps<DataT> = Omit<QuadbinLayerProps<DataT>, 'data'> & {\n data: null | CartoTilejsonResult | Promise<CartoTilejsonResult>;\n aggregationResLevel?: number;\n};\n\nexport default class QuadbinTileLayer<\n DataT = any,\n ExtraProps extends {} = {}\n> extends CompositeLayer<ExtraProps & Required<_QuadbinTileLayerProps<DataT>>> {\n static layerName = 'QuadbinTileLayer';\n static defaultProps = defaultProps;\n\n getLoadOptions(): any {\n const loadOptions = super.getLoadOptions() || {};\n const tileJSON = this.props.data as CartoTilejsonResult;\n injectAccessToken(loadOptions, tileJSON.accessToken);\n loadOptions.cartoSpatialTile = {...loadOptions.cartoSpatialTile, scheme: 'quadbin'};\n return loadOptions;\n }\n\n renderLayers(): Layer | null | LayersList {\n const tileJSON = this.props.data as CartoTilejsonResult;\n if (!tileJSON) return null;\n\n const {tiles: data, maxresolution: maxZoom} = tileJSON;\n return [\n // @ts-ignore\n new SpatialIndexTileLayer(this.props, {\n id: `quadbin-tile-layer-${this.props.id}`,\n data,\n // TODO: Tileset2D should be generic over TileIndex type\n TilesetClass: QuadbinTileset2D as any,\n renderSubLayers,\n maxZoom,\n loadOptions: this.getLoadOptions()\n })\n ];\n }\n}\n"],"file":"quadbin-tile-layer.js"}
@@ -11,7 +11,7 @@ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/cl
11
11
 
12
12
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
13
 
14
- var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
14
+ var _get2 = _interopRequireDefault(require("@babel/runtime/helpers/get"));
15
15
 
16
16
  var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
17
17
 
@@ -29,6 +29,10 @@ var _quadbinTileset2d = _interopRequireDefault(require("./quadbin-tileset-2d"));
29
29
 
30
30
  var _spatialIndexTileLayer = _interopRequireDefault(require("./spatial-index-tile-layer"));
31
31
 
32
+ var _common = require("../sources/common");
33
+
34
+ var _utils = require("./utils");
35
+
32
36
  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); }; }
33
37
 
34
38
  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; } }
@@ -44,6 +48,9 @@ var renderSubLayers = function renderSubLayers(props) {
44
48
  };
45
49
 
46
50
  exports.renderSubLayers = renderSubLayers;
51
+ var defaultProps = {
52
+ data: _common.TilejsonPropType
53
+ };
47
54
 
48
55
  var RasterTileLayer = function (_CompositeLayer) {
49
56
  (0, _inherits2.default)(RasterTileLayer, _CompositeLayer);
@@ -51,57 +58,34 @@ var RasterTileLayer = function (_CompositeLayer) {
51
58
  var _super = _createSuper(RasterTileLayer);
52
59
 
53
60
  function RasterTileLayer() {
54
- var _this;
55
-
56
61
  (0, _classCallCheck2.default)(this, RasterTileLayer);
57
-
58
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
59
- args[_key] = arguments[_key];
60
- }
61
-
62
- _this = _super.call.apply(_super, [this].concat(args));
63
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "state", void 0);
64
- return _this;
62
+ return _super.apply(this, arguments);
65
63
  }
66
64
 
67
65
  (0, _createClass2.default)(RasterTileLayer, [{
68
- key: "initializeState",
69
- value: function initializeState() {
70
- this.setState({
71
- data: null,
72
- tileJSON: null
73
- });
74
- }
75
- }, {
76
- key: "updateState",
77
- value: function updateState(_ref) {
78
- var changeFlags = _ref.changeFlags;
79
-
80
- if (changeFlags.dataChanged) {
81
- var data = this.props.data;
82
- var tileJSON = data;
83
- data = tileJSON.tiles;
84
- this.setState({
85
- data: data,
86
- tileJSON: tileJSON
87
- });
88
- }
66
+ key: "getLoadOptions",
67
+ value: function getLoadOptions() {
68
+ var loadOptions = (0, _get2.default)((0, _getPrototypeOf2.default)(RasterTileLayer.prototype), "getLoadOptions", this).call(this) || {};
69
+ var tileJSON = this.props.data;
70
+ (0, _utils.injectAccessToken)(loadOptions, tileJSON.accessToken);
71
+ return loadOptions;
89
72
  }
90
73
  }, {
91
74
  key: "renderLayers",
92
75
  value: function renderLayers() {
93
- var _this$state = this.state,
94
- data = _this$state.data,
95
- tileJSON = _this$state.tileJSON;
96
- var minZoom = parseInt(tileJSON === null || tileJSON === void 0 ? void 0 : tileJSON.minzoom);
97
- var maxZoom = parseInt(tileJSON === null || tileJSON === void 0 ? void 0 : tileJSON.maxzoom);
76
+ var tileJSON = this.props.data;
77
+ if (!tileJSON) return null;
78
+ var data = tileJSON.tiles,
79
+ minZoom = tileJSON.minzoom,
80
+ maxZoom = tileJSON.maxzoom;
98
81
  return [new _spatialIndexTileLayer.default(this.props, {
99
82
  id: "raster-tile-layer-".concat(this.props.id),
100
83
  data: data,
101
84
  TilesetClass: _quadbinTileset2d.default,
102
85
  renderSubLayers: renderSubLayers,
103
86
  minZoom: minZoom,
104
- maxZoom: maxZoom
87
+ maxZoom: maxZoom,
88
+ loadOptions: this.getLoadOptions()
105
89
  })];
106
90
  }
107
91
  }]);
@@ -110,5 +94,5 @@ var RasterTileLayer = function (_CompositeLayer) {
110
94
 
111
95
  exports.default = RasterTileLayer;
112
96
  (0, _defineProperty2.default)(RasterTileLayer, "layerName", 'RasterTileLayer');
113
- (0, _defineProperty2.default)(RasterTileLayer, "defaultProps", {});
97
+ (0, _defineProperty2.default)(RasterTileLayer, "defaultProps", defaultProps);
114
98
  //# sourceMappingURL=raster-tile-layer.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/layers/raster-tile-layer.ts"],"names":["renderSubLayers","props","tileIndex","tile","index","q","RasterLayer","RasterTileLayer","setState","data","tileJSON","changeFlags","dataChanged","tiles","state","minZoom","parseInt","minzoom","maxZoom","maxzoom","SpatialIndexTileLayer","id","TilesetClass","QuadbinTileset2D","CompositeLayer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AAOA;;AACA;;AACA;;;;;;AAEO,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,KAAK,EAAI;AAAA;;AACtC,MAAMC,SAAS,kBAAGD,KAAK,CAACE,IAAT,qEAAG,YAAYC,KAAf,sDAAG,kBAAmBC,CAArC;AACA,MAAI,CAACH,SAAL,EAAgB,OAAO,IAAP;AAChB,SAAO,IAAII,oBAAJ,CAAgBL,KAAhB,EAAuB;AAACC,IAAAA,SAAS,EAATA;AAAD,GAAvB,CAAP;AACD,CAJM;;;;IAccK,e;;;;;;;;;;;;;;;;;;;;;WAQnB,2BAAwB;AACtB,WAAKC,QAAL,CAAc;AAACC,QAAAA,IAAI,EAAE,IAAP;AAAaC,QAAAA,QAAQ,EAAE;AAAvB,OAAd;AACD;;;WAED,2BAAyD;AAAA,UAA5CC,WAA4C,QAA5CA,WAA4C;;AACvD,UAAIA,WAAW,CAACC,WAAhB,EAA6B;AAC3B,YAAKH,IAAL,GAAa,KAAKR,KAAlB,CAAKQ,IAAL;AACA,YAAMC,QAAQ,GAAGD,IAAjB;AACAA,QAAAA,IAAI,GAAIC,QAAD,CAAkBG,KAAzB;AACA,aAAKL,QAAL,CAAc;AAACC,UAAAA,IAAI,EAAJA,IAAD;AAAOC,UAAAA,QAAQ,EAARA;AAAP,SAAd;AACD;AACF;;;WAED,wBAA0C;AACxC,wBAAyB,KAAKI,KAA9B;AAAA,UAAOL,IAAP,eAAOA,IAAP;AAAA,UAAaC,QAAb,eAAaA,QAAb;AACA,UAAMK,OAAO,GAAGC,QAAQ,CAACN,QAAD,aAACA,QAAD,uBAACA,QAAQ,CAAEO,OAAX,CAAxB;AACA,UAAMC,OAAO,GAAGF,QAAQ,CAACN,QAAD,aAACA,QAAD,uBAACA,QAAQ,CAAES,OAAX,CAAxB;AACA,aAAO,CACL,IAAIC,8BAAJ,CAA0B,KAAKnB,KAA/B,EAAsC;AACpCoB,QAAAA,EAAE,8BAAuB,KAAKpB,KAAL,CAAWoB,EAAlC,CADkC;AAEpCZ,QAAAA,IAAI,EAAJA,IAFoC;AAIpCa,QAAAA,YAAY,EAAEC,yBAJsB;AAKpCvB,QAAAA,eAAe,EAAfA,eALoC;AAMpCe,QAAAA,OAAO,EAAPA,OANoC;AAOpCG,QAAAA,OAAO,EAAPA;AAPoC,OAAtC,CADK,CAAP;AAWD;;;EAjCOM,oB;;;8BAHWjB,e,eAIA,iB;8BAJAA,e,kBAKG,E","sourcesContent":["import {\n CompositeLayer,\n CompositeLayerProps,\n Layer,\n LayersList,\n UpdateParameters\n} from '@deck.gl/core';\nimport RasterLayer, {RasterLayerProps} from './raster-layer';\nimport QuadbinTileset2D from './quadbin-tileset-2d';\nimport SpatialIndexTileLayer from './spatial-index-tile-layer';\n\nexport const renderSubLayers = props => {\n const tileIndex = props.tile?.index?.q;\n if (!tileIndex) return null;\n return new RasterLayer(props, {tileIndex});\n};\n\n/** All properties supported by RasterTileLayer. */\nexport type RasterTileLayerProps<DataT = any> = _RasterTileLayerProps<DataT> & CompositeLayerProps;\n\n/** Properties added by RasterTileLayer. */\ntype _RasterTileLayerProps<DataT> = RasterLayerProps<DataT> & {\n data: string;\n};\n\nexport default class RasterTileLayer<\n DataT = any,\n ExtraProps extends {} = {}\n> extends CompositeLayer<ExtraProps & Required<_RasterTileLayerProps<DataT>>> {\n static layerName = 'RasterTileLayer';\n static defaultProps = {};\n\n state!: {tileJSON: any; data: any};\n initializeState(): void {\n this.setState({data: null, tileJSON: null});\n }\n\n updateState({changeFlags}: UpdateParameters<this>): void {\n if (changeFlags.dataChanged) {\n let {data} = this.props;\n const tileJSON = data;\n data = (tileJSON as any).tiles;\n this.setState({data, tileJSON});\n }\n }\n\n renderLayers(): Layer | null | LayersList {\n const {data, tileJSON} = this.state;\n const minZoom = parseInt(tileJSON?.minzoom);\n const maxZoom = parseInt(tileJSON?.maxzoom);\n return [\n new SpatialIndexTileLayer(this.props, {\n id: `raster-tile-layer-${this.props.id}`,\n data,\n // TODO: Tileset2D should be generic over TileIndex type\n TilesetClass: QuadbinTileset2D as any,\n renderSubLayers,\n minZoom,\n maxZoom\n })\n ];\n }\n}\n"],"file":"raster-tile-layer.js"}
1
+ {"version":3,"sources":["../../../src/layers/raster-tile-layer.ts"],"names":["renderSubLayers","props","tileIndex","tile","index","q","RasterLayer","defaultProps","data","TilejsonPropType","RasterTileLayer","loadOptions","tileJSON","accessToken","tiles","minZoom","minzoom","maxZoom","maxzoom","SpatialIndexTileLayer","id","TilesetClass","QuadbinTileset2D","getLoadOptions","CompositeLayer"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;;;AAEO,IAAMA,eAAe,GAAG,SAAlBA,eAAkB,CAAAC,KAAK,EAAI;AAAA;;AACtC,MAAMC,SAAS,kBAAGD,KAAK,CAACE,IAAT,qEAAG,YAAYC,KAAf,sDAAG,kBAAmBC,CAArC;AACA,MAAI,CAACH,SAAL,EAAgB,OAAO,IAAP;AAChB,SAAO,IAAII,oBAAJ,CAAgBL,KAAhB,EAAuB;AAACC,IAAAA,SAAS,EAATA;AAAD,GAAvB,CAAP;AACD,CAJM;;;AAMP,IAAMK,YAAgD,GAAG;AACvDC,EAAAA,IAAI,EAAEC;AADiD,CAAzD;;IAYqBC,e;;;;;;;;;;;;WAOnB,0BAAsB;AACpB,UAAMC,WAAW,GAAG,mHAA0B,EAA9C;AACA,UAAMC,QAAQ,GAAG,KAAKX,KAAL,CAAWO,IAA5B;AACA,oCAAkBG,WAAlB,EAA+BC,QAAQ,CAACC,WAAxC;AACA,aAAOF,WAAP;AACD;;;WAED,wBAA0C;AACxC,UAAMC,QAAQ,GAAG,KAAKX,KAAL,CAAWO,IAA5B;AACA,UAAI,CAACI,QAAL,EAAe,OAAO,IAAP;AAEf,UAAcJ,IAAd,GAA0DI,QAA1D,CAAOE,KAAP;AAAA,UAA6BC,OAA7B,GAA0DH,QAA1D,CAAoBI,OAApB;AAAA,UAA+CC,OAA/C,GAA0DL,QAA1D,CAAsCM,OAAtC;AACA,aAAO,CAEL,IAAIC,8BAAJ,CAA0B,KAAKlB,KAA/B,EAAsC;AACpCmB,QAAAA,EAAE,8BAAuB,KAAKnB,KAAL,CAAWmB,EAAlC,CADkC;AAEpCZ,QAAAA,IAAI,EAAJA,IAFoC;AAIpCa,QAAAA,YAAY,EAAEC,yBAJsB;AAKpCtB,QAAAA,eAAe,EAAfA,eALoC;AAMpCe,QAAAA,OAAO,EAAPA,OANoC;AAOpCE,QAAAA,OAAO,EAAPA,OAPoC;AAQpCN,QAAAA,WAAW,EAAE,KAAKY,cAAL;AARuB,OAAtC,CAFK,CAAP;AAaD;;;EA7BOC,oB;;;8BAHWd,e,eAIA,iB;8BAJAA,e,kBAKGH,Y","sourcesContent":["import {CompositeLayer, CompositeLayerProps, DefaultProps, Layer, LayersList} from '@deck.gl/core';\nimport RasterLayer, {RasterLayerProps} from './raster-layer';\nimport QuadbinTileset2D from './quadbin-tileset-2d';\nimport SpatialIndexTileLayer from './spatial-index-tile-layer';\nimport {TilejsonPropType, CartoTilejsonResult} from '../sources/common';\nimport {injectAccessToken} from './utils';\n\nexport const renderSubLayers = props => {\n const tileIndex = props.tile?.index?.q;\n if (!tileIndex) return null;\n return new RasterLayer(props, {tileIndex});\n};\n\nconst defaultProps: DefaultProps<RasterTileLayerProps> = {\n data: TilejsonPropType\n};\n\n/** All properties supported by RasterTileLayer. */\nexport type RasterTileLayerProps<DataT = any> = _RasterTileLayerProps<DataT> & CompositeLayerProps;\n\n/** Properties added by RasterTileLayer. */\ntype _RasterTileLayerProps<DataT> = Omit<RasterLayerProps<DataT>, 'data'> & {\n data: null | CartoTilejsonResult | Promise<CartoTilejsonResult>;\n};\n\nexport default class RasterTileLayer<\n DataT = any,\n ExtraProps extends {} = {}\n> extends CompositeLayer<ExtraProps & Required<_RasterTileLayerProps<DataT>>> {\n static layerName = 'RasterTileLayer';\n static defaultProps = defaultProps;\n\n getLoadOptions(): any {\n const loadOptions = super.getLoadOptions() || {};\n const tileJSON = this.props.data as CartoTilejsonResult;\n injectAccessToken(loadOptions, tileJSON.accessToken);\n return loadOptions;\n }\n\n renderLayers(): Layer | null | LayersList {\n const tileJSON = this.props.data as CartoTilejsonResult;\n if (!tileJSON) return null;\n\n const {tiles: data, minzoom: minZoom, maxzoom: maxZoom} = tileJSON;\n return [\n // @ts-ignore\n new SpatialIndexTileLayer(this.props, {\n id: `raster-tile-layer-${this.props.id}`,\n data,\n // TODO: Tileset2D should be generic over TileIndex type\n TilesetClass: QuadbinTileset2D as any,\n renderSubLayers,\n minZoom,\n maxZoom,\n loadOptions: this.getLoadOptions()\n })\n ];\n }\n}\n"],"file":"raster-tile-layer.js"}
@@ -15,15 +15,23 @@ var _cartoRasterTile = require("./carto-raster-tile");
15
15
 
16
16
  var _tileLoaderUtils = require("./tile-loader-utils");
17
17
 
18
+ var _utils = require("../../utils");
19
+
20
+ var VERSION = typeof "8.10.0-alpha.4" !== 'undefined' ? "8.10.0-alpha.4" : 'latest';
21
+ var id = 'cartoRasterTile';
22
+ var DEFAULT_OPTIONS = {
23
+ cartoRasterTile: {
24
+ workerUrl: (0, _utils.getWorkerUrl)(id, VERSION)
25
+ }
26
+ };
18
27
  var CartoRasterTileLoader = {
19
28
  name: 'CARTO Raster Tile',
20
- version: '1',
21
- id: 'cartoRasterTile',
29
+ version: VERSION,
30
+ id: id,
22
31
  module: 'carto',
23
32
  extensions: ['pbf'],
24
33
  mimeTypes: ['application/vnd.carto-raster-tile'],
25
34
  category: 'geometry',
26
- worker: false,
27
35
  parse: function () {
28
36
  var _parse = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(arrayBuffer, options) {
29
37
  return _regenerator.default.wrap(function _callee$(_context) {
@@ -47,7 +55,8 @@ var CartoRasterTileLoader = {
47
55
  return parse;
48
56
  }(),
49
57
  parseSync: parseCartoRasterTile,
50
- options: {}
58
+ worker: true,
59
+ options: DEFAULT_OPTIONS
51
60
  };
52
61
 
53
62
  function parseCartoRasterTile(arrayBuffer, options) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/layers/schema/carto-raster-tile-loader.ts"],"names":["CartoRasterTileLoader","name","version","id","module","extensions","mimeTypes","category","worker","parse","arrayBuffer","options","parseCartoRasterTile","parseSync","tile","TileReader","bands","blockHeight","blockWidth","numericProps","i","length","data","cells","properties"],"mappings":";;;;;;;;;;;;;AAEA;;AACA;;AAGA,IAAMA,qBAAuC,GAAG;AAC9CC,EAAAA,IAAI,EAAE,mBADwC;AAE9CC,EAAAA,OAAO,EAAE,GAFqC;AAG9CC,EAAAA,EAAE,EAAE,iBAH0C;AAI9CC,EAAAA,MAAM,EAAE,OAJsC;AAK9CC,EAAAA,UAAU,EAAE,CAAC,KAAD,CALkC;AAM9CC,EAAAA,SAAS,EAAE,CAAC,mCAAD,CANmC;AAO9CC,EAAAA,QAAQ,EAAE,UAPoC;AAQ9CC,EAAAA,MAAM,EAAE,KARsC;AAS9CC,EAAAA,KAAK;AAAA,2EAAE,iBAAOC,WAAP,EAAoBC,OAApB;AAAA;AAAA;AAAA;AAAA;AAAA,+CAAgCC,oBAAoB,CAACF,WAAD,EAAcC,OAAd,CAApD;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAF;;AAAA;AAAA;AAAA;;AAAA;AAAA,KATyC;AAU9CE,EAAAA,SAAS,EAAED,oBAVmC;AAW9CD,EAAAA,OAAO,EAAE;AAXqC,CAAhD;;AAuBA,SAASC,oBAAT,CAA8BF,WAA9B,EAAwDC,OAAxD,EAAgG;AAC9F,MAAI,CAACD,WAAL,EAAkB,OAAO,IAAP;AAClB,MAAMI,IAAI,GAAG,+BAASJ,WAAT,EAAsBK,2BAAtB,CAAb;AACA,MAAOC,KAAP,GAAyCF,IAAzC,CAAOE,KAAP;AAAA,MAAcC,WAAd,GAAyCH,IAAzC,CAAcG,WAAd;AAAA,MAA2BC,UAA3B,GAAyCJ,IAAzC,CAA2BI,UAA3B;AACA,MAAMC,YAAY,GAAG,EAArB;;AACA,OAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGJ,KAAK,CAACK,MAA1B,EAAkCD,CAAC,EAAnC,EAAuC;AACrC,mBAAqBJ,KAAK,CAACI,CAAD,CAA1B;AAAA,QAAOnB,IAAP,YAAOA,IAAP;AAAA,QAAaqB,IAAb,YAAaA,IAAb;AACAH,IAAAA,YAAY,CAAClB,IAAD,CAAZ,GAAqBqB,IAArB;AACD;;AACD,SAAO;AAACJ,IAAAA,UAAU,EAAVA,UAAD;AAAaD,IAAAA,WAAW,EAAXA,WAAb;AAA0BM,IAAAA,KAAK,EAAE;AAACJ,MAAAA,YAAY,EAAZA,YAAD;AAAeK,MAAAA,UAAU,EAAE;AAA3B;AAAjC,GAAP;AACD;;eAEcxB,qB","sourcesContent":["import {LoaderOptions, LoaderWithParser} from '@loaders.gl/loader-utils';\n\nimport {TileReader} from './carto-raster-tile';\nimport {parsePbf} from './tile-loader-utils';\nimport {NumericProps, Properties} from './spatialjson-utils';\n\nconst CartoRasterTileLoader: LoaderWithParser = {\n name: 'CARTO Raster Tile',\n version: '1',\n id: 'cartoRasterTile',\n module: 'carto',\n extensions: ['pbf'],\n mimeTypes: ['application/vnd.carto-raster-tile'],\n category: 'geometry',\n worker: false,\n parse: async (arrayBuffer, options) => parseCartoRasterTile(arrayBuffer, options),\n parseSync: parseCartoRasterTile,\n options: {}\n};\n\nexport type Raster = {\n blockWidth: number;\n blockHeight: number;\n cells: {\n numericProps: NumericProps;\n properties: Properties[];\n };\n};\n\nfunction parseCartoRasterTile(arrayBuffer: ArrayBuffer, options?: LoaderOptions): Raster | null {\n if (!arrayBuffer) return null;\n const tile = parsePbf(arrayBuffer, TileReader);\n const {bands, blockHeight, blockWidth} = tile;\n const numericProps = {};\n for (let i = 0; i < bands.length; i++) {\n const {name, data} = bands[i];\n numericProps[name] = data;\n }\n return {blockWidth, blockHeight, cells: {numericProps, properties: []}};\n}\n\nexport default CartoRasterTileLoader;\n"],"file":"carto-raster-tile-loader.js"}
1
+ {"version":3,"sources":["../../../../src/layers/schema/carto-raster-tile-loader.ts"],"names":["VERSION","id","DEFAULT_OPTIONS","cartoRasterTile","workerUrl","CartoRasterTileLoader","name","version","module","extensions","mimeTypes","category","parse","arrayBuffer","options","parseCartoRasterTile","parseSync","worker","tile","TileReader","bands","blockHeight","blockWidth","numericProps","i","length","data","cells","properties"],"mappings":";;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAGA,IAAMA,OAAO,GAAG,4BAAuB,WAAvB,sBAAmD,QAAnE;AACA,IAAMC,EAAE,GAAG,iBAAX;AAQA,IAAMC,eAA6C,GAAG;AACpDC,EAAAA,eAAe,EAAE;AACfC,IAAAA,SAAS,EAAE,yBAAaH,EAAb,EAAiBD,OAAjB;AADI;AADmC,CAAtD;AAMA,IAAMK,qBAAuC,GAAG;AAC9CC,EAAAA,IAAI,EAAE,mBADwC;AAE9CC,EAAAA,OAAO,EAAEP,OAFqC;AAG9CC,EAAAA,EAAE,EAAFA,EAH8C;AAI9CO,EAAAA,MAAM,EAAE,OAJsC;AAK9CC,EAAAA,UAAU,EAAE,CAAC,KAAD,CALkC;AAM9CC,EAAAA,SAAS,EAAE,CAAC,mCAAD,CANmC;AAO9CC,EAAAA,QAAQ,EAAE,UAPoC;AAQ9CC,EAAAA,KAAK;AAAA,2EAAE,iBAAOC,WAAP,EAAoBC,OAApB;AAAA;AAAA;AAAA;AAAA;AAAA,+CACLC,oBAAoB,CAACF,WAAD,EAAcC,OAAd,CADf;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAF;;AAAA;AAAA;AAAA;;AAAA;AAAA,KARyC;AAU9CE,EAAAA,SAAS,EAAED,oBAVmC;AAW9CE,EAAAA,MAAM,EAAE,IAXsC;AAY9CH,EAAAA,OAAO,EAAEZ;AAZqC,CAAhD;;AAwBA,SAASa,oBAAT,CACEF,WADF,EAEEC,OAFF,EAGiB;AACf,MAAI,CAACD,WAAL,EAAkB,OAAO,IAAP;AAClB,MAAMK,IAAI,GAAG,+BAASL,WAAT,EAAsBM,2BAAtB,CAAb;AACA,MAAOC,KAAP,GAAyCF,IAAzC,CAAOE,KAAP;AAAA,MAAcC,WAAd,GAAyCH,IAAzC,CAAcG,WAAd;AAAA,MAA2BC,UAA3B,GAAyCJ,IAAzC,CAA2BI,UAA3B;AACA,MAAMC,YAAY,GAAG,EAArB;;AACA,OAAK,IAAIC,CAAC,GAAG,CAAb,EAAgBA,CAAC,GAAGJ,KAAK,CAACK,MAA1B,EAAkCD,CAAC,EAAnC,EAAuC;AACrC,mBAAqBJ,KAAK,CAACI,CAAD,CAA1B;AAAA,QAAOlB,IAAP,YAAOA,IAAP;AAAA,QAAaoB,IAAb,YAAaA,IAAb;AACAH,IAAAA,YAAY,CAACjB,IAAD,CAAZ,GAAqBoB,IAArB;AACD;;AACD,SAAO;AAACJ,IAAAA,UAAU,EAAVA,UAAD;AAAaD,IAAAA,WAAW,EAAXA,WAAb;AAA0BM,IAAAA,KAAK,EAAE;AAACJ,MAAAA,YAAY,EAAZA,YAAD;AAAeK,MAAAA,UAAU,EAAE;AAA3B;AAAjC,GAAP;AACD;;eAEcvB,qB","sourcesContent":["import {LoaderOptions, LoaderWithParser} from '@loaders.gl/loader-utils';\n\nimport {TileReader} from './carto-raster-tile';\nimport {parsePbf} from './tile-loader-utils';\nimport {getWorkerUrl} from '../../utils';\nimport {NumericProps, Properties} from './spatialjson-utils';\n\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\nconst id = 'cartoRasterTile';\n\ntype CartoRasterTileLoaderOptions = LoaderOptions & {\n cartoRasterTile?: {\n workerUrl: string;\n };\n};\n\nconst DEFAULT_OPTIONS: CartoRasterTileLoaderOptions = {\n cartoRasterTile: {\n workerUrl: getWorkerUrl(id, VERSION)\n }\n};\n\nconst CartoRasterTileLoader: LoaderWithParser = {\n name: 'CARTO Raster Tile',\n version: VERSION,\n id,\n module: 'carto',\n extensions: ['pbf'],\n mimeTypes: ['application/vnd.carto-raster-tile'],\n category: 'geometry',\n parse: async (arrayBuffer, options?: CartoRasterTileLoaderOptions) =>\n parseCartoRasterTile(arrayBuffer, options),\n parseSync: parseCartoRasterTile,\n worker: true,\n options: DEFAULT_OPTIONS\n};\n\nexport type Raster = {\n blockWidth: number;\n blockHeight: number;\n cells: {\n numericProps: NumericProps;\n properties: Properties[];\n };\n};\n\nfunction parseCartoRasterTile(\n arrayBuffer: ArrayBuffer,\n options?: CartoRasterTileLoaderOptions\n): Raster | null {\n if (!arrayBuffer) return null;\n const tile = parsePbf(arrayBuffer, TileReader);\n const {bands, blockHeight, blockWidth} = tile;\n const numericProps = {};\n for (let i = 0; i < bands.length; i++) {\n const {name, data} = bands[i];\n numericProps[name] = data;\n }\n return {blockWidth, blockHeight, cells: {numericProps, properties: []}};\n}\n\nexport default CartoRasterTileLoader;\n"],"file":"carto-raster-tile-loader.js"}
@@ -15,17 +15,26 @@ var _cartoSpatialTile = require("./carto-spatial-tile");
15
15
 
16
16
  var _tileLoaderUtils = require("./tile-loader-utils");
17
17
 
18
+ var _utils = require("../../utils");
19
+
18
20
  var _spatialjsonUtils = require("./spatialjson-utils");
19
21
 
22
+ var VERSION = typeof "8.10.0-alpha.4" !== 'undefined' ? "8.10.0-alpha.4" : 'latest';
23
+ var id = 'cartoSpatialTile';
24
+ var DEFAULT_OPTIONS = {
25
+ cartoSpatialTile: {
26
+ scheme: 'quadbin',
27
+ workerUrl: (0, _utils.getWorkerUrl)(id, VERSION)
28
+ }
29
+ };
20
30
  var CartoSpatialTileLoader = {
21
31
  name: 'CARTO Spatial Tile',
22
- version: '1',
23
- id: 'cartoSpatialTile',
32
+ version: VERSION,
33
+ id: id,
24
34
  module: 'carto',
25
35
  extensions: ['pbf'],
26
36
  mimeTypes: ['application/vnd.carto-spatial-tile'],
27
37
  category: 'geometry',
28
- worker: false,
29
38
  parse: function () {
30
39
  var _parse = (0, _asyncToGenerator2.default)(_regenerator.default.mark(function _callee(arrayBuffer, options) {
31
40
  return _regenerator.default.wrap(function _callee$(_context) {
@@ -49,11 +58,8 @@ var CartoSpatialTileLoader = {
49
58
  return parse;
50
59
  }(),
51
60
  parseSync: parseCartoSpatialTile,
52
- options: {
53
- cartoSpatialTile: {
54
- scheme: 'quadbin'
55
- }
56
- }
61
+ worker: true,
62
+ options: DEFAULT_OPTIONS
57
63
  };
58
64
 
59
65
  function parseCartoSpatialTile(arrayBuffer, options) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/layers/schema/carto-spatial-tile-loader.ts"],"names":["CartoSpatialTileLoader","name","version","id","module","extensions","mimeTypes","category","worker","parse","arrayBuffer","options","parseCartoSpatialTile","parseSync","cartoSpatialTile","scheme","tile","TileReader","cells","data"],"mappings":";;;;;;;;;;;;;AAEA;;AACA;;AACA;;AAEA,IAAMA,sBAAwC,GAAG;AAC/CC,EAAAA,IAAI,EAAE,oBADyC;AAE/CC,EAAAA,OAAO,EAAE,GAFsC;AAG/CC,EAAAA,EAAE,EAAE,kBAH2C;AAI/CC,EAAAA,MAAM,EAAE,OAJuC;AAK/CC,EAAAA,UAAU,EAAE,CAAC,KAAD,CALmC;AAM/CC,EAAAA,SAAS,EAAE,CAAC,oCAAD,CANoC;AAO/CC,EAAAA,QAAQ,EAAE,UAPqC;AAQ/CC,EAAAA,MAAM,EAAE,KARuC;AAS/CC,EAAAA,KAAK;AAAA,2EAAE,iBAAOC,WAAP,EAAoBC,OAApB;AAAA;AAAA;AAAA;AAAA;AAAA,+CAAgCC,qBAAqB,CAACF,WAAD,EAAcC,OAAd,CAArD;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAF;;AAAA;AAAA;AAAA;;AAAA;AAAA,KAT0C;AAU/CE,EAAAA,SAAS,EAAED,qBAVoC;AAW/CD,EAAAA,OAAO,EAAE;AACPG,IAAAA,gBAAgB,EAAE;AAChBC,MAAAA,MAAM,EAAE;AADQ;AADX;AAXsC,CAAjD;;AAkBA,SAASH,qBAAT,CACEF,WADF,EAEEC,OAFF,EAGsB;AAAA;;AACpB,MAAI,CAACD,WAAL,EAAkB,OAAO,IAAP;AAClB,MAAMM,IAAU,GAAG,+BAASN,WAAT,EAAsBO,4BAAtB,CAAnB;AAEA,MAAOC,KAAP,GAAgBF,IAAhB,CAAOE,KAAP;AAEA,MAAMH,MAAM,GAAGJ,OAAH,aAAGA,OAAH,gDAAGA,OAAO,CAAEG,gBAAZ,0DAAG,sBAA2BC,MAA1C;AACA,MAAMI,IAAI,GAAG;AAACD,IAAAA,KAAK,EAALA,KAAD;AAAQH,IAAAA,MAAM,EAANA;AAAR,GAAb;AAEA,SAAO,2CAAoBI,IAApB,CAAP;AACD;;eAEcnB,sB","sourcesContent":["import {LoaderOptions, LoaderWithParser} from '@loaders.gl/loader-utils';\n\nimport {Tile, TileReader} from './carto-spatial-tile';\nimport {parsePbf} from './tile-loader-utils';\nimport {IndexScheme, binaryToSpatialjson, SpatialJson} from './spatialjson-utils';\n\nconst CartoSpatialTileLoader: LoaderWithParser = {\n name: 'CARTO Spatial Tile',\n version: '1',\n id: 'cartoSpatialTile',\n module: 'carto',\n extensions: ['pbf'],\n mimeTypes: ['application/vnd.carto-spatial-tile'],\n category: 'geometry',\n worker: false,\n parse: async (arrayBuffer, options) => parseCartoSpatialTile(arrayBuffer, options),\n parseSync: parseCartoSpatialTile,\n options: {\n cartoSpatialTile: {\n scheme: 'quadbin'\n } as {scheme: IndexScheme}\n }\n};\n\nfunction parseCartoSpatialTile(\n arrayBuffer: ArrayBuffer,\n options?: LoaderOptions\n): SpatialJson | null {\n if (!arrayBuffer) return null;\n const tile: Tile = parsePbf(arrayBuffer, TileReader);\n\n const {cells} = tile;\n // @ts-expect-error\n const scheme = options?.cartoSpatialTile?.scheme;\n const data = {cells, scheme};\n\n return binaryToSpatialjson(data);\n}\n\nexport default CartoSpatialTileLoader;\n"],"file":"carto-spatial-tile-loader.js"}
1
+ {"version":3,"sources":["../../../../src/layers/schema/carto-spatial-tile-loader.ts"],"names":["VERSION","id","DEFAULT_OPTIONS","cartoSpatialTile","scheme","workerUrl","CartoSpatialTileLoader","name","version","module","extensions","mimeTypes","category","parse","arrayBuffer","options","parseCartoSpatialTile","parseSync","worker","tile","TileReader","cells","data"],"mappings":";;;;;;;;;;;;;AAEA;;AACA;;AACA;;AACA;;AAEA,IAAMA,OAAO,GAAG,4BAAuB,WAAvB,sBAAmD,QAAnE;AACA,IAAMC,EAAE,GAAG,kBAAX;AASA,IAAMC,eAA8C,GAAG;AACrDC,EAAAA,gBAAgB,EAAE;AAChBC,IAAAA,MAAM,EAAE,SADQ;AAEhBC,IAAAA,SAAS,EAAE,yBAAaJ,EAAb,EAAiBD,OAAjB;AAFK;AADmC,CAAvD;AAOA,IAAMM,sBAAwC,GAAG;AAC/CC,EAAAA,IAAI,EAAE,oBADyC;AAE/CC,EAAAA,OAAO,EAAER,OAFsC;AAG/CC,EAAAA,EAAE,EAAFA,EAH+C;AAI/CQ,EAAAA,MAAM,EAAE,OAJuC;AAK/CC,EAAAA,UAAU,EAAE,CAAC,KAAD,CALmC;AAM/CC,EAAAA,SAAS,EAAE,CAAC,oCAAD,CANoC;AAO/CC,EAAAA,QAAQ,EAAE,UAPqC;AAQ/CC,EAAAA,KAAK;AAAA,2EAAE,iBAAOC,WAAP,EAAoBC,OAApB;AAAA;AAAA;AAAA;AAAA;AAAA,+CACLC,qBAAqB,CAACF,WAAD,EAAcC,OAAd,CADhB;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAF;;AAAA;AAAA;AAAA;;AAAA;AAAA,KAR0C;AAU/CE,EAAAA,SAAS,EAAED,qBAVoC;AAW/CE,EAAAA,MAAM,EAAE,IAXuC;AAY/CH,EAAAA,OAAO,EAAEb;AAZsC,CAAjD;;AAeA,SAASc,qBAAT,CACEF,WADF,EAEEC,OAFF,EAGsB;AAAA;;AACpB,MAAI,CAACD,WAAL,EAAkB,OAAO,IAAP;AAClB,MAAMK,IAAU,GAAG,+BAASL,WAAT,EAAsBM,4BAAtB,CAAnB;AAEA,MAAOC,KAAP,GAAgBF,IAAhB,CAAOE,KAAP;AACA,MAAMjB,MAAM,GAAGW,OAAH,aAAGA,OAAH,gDAAGA,OAAO,CAAEZ,gBAAZ,0DAAG,sBAA2BC,MAA1C;AACA,MAAMkB,IAAI,GAAG;AAACD,IAAAA,KAAK,EAALA,KAAD;AAAQjB,IAAAA,MAAM,EAANA;AAAR,GAAb;AAEA,SAAO,2CAAoBkB,IAApB,CAAP;AACD;;eAEchB,sB","sourcesContent":["import {LoaderOptions, LoaderWithParser} from '@loaders.gl/loader-utils';\n\nimport {Tile, TileReader} from './carto-spatial-tile';\nimport {parsePbf} from './tile-loader-utils';\nimport {getWorkerUrl} from '../../utils';\nimport {IndexScheme, binaryToSpatialjson, SpatialJson} from './spatialjson-utils';\n\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\nconst id = 'cartoSpatialTile';\n\ntype CartoSpatialTileLoaderOptions = LoaderOptions & {\n cartoSpatialTile?: {\n scheme: IndexScheme;\n workerUrl: string;\n };\n};\n\nconst DEFAULT_OPTIONS: CartoSpatialTileLoaderOptions = {\n cartoSpatialTile: {\n scheme: 'quadbin',\n workerUrl: getWorkerUrl(id, VERSION)\n }\n};\n\nconst CartoSpatialTileLoader: LoaderWithParser = {\n name: 'CARTO Spatial Tile',\n version: VERSION,\n id,\n module: 'carto',\n extensions: ['pbf'],\n mimeTypes: ['application/vnd.carto-spatial-tile'],\n category: 'geometry',\n parse: async (arrayBuffer, options?: CartoSpatialTileLoaderOptions) =>\n parseCartoSpatialTile(arrayBuffer, options),\n parseSync: parseCartoSpatialTile,\n worker: true,\n options: DEFAULT_OPTIONS\n};\n\nfunction parseCartoSpatialTile(\n arrayBuffer: ArrayBuffer,\n options?: CartoSpatialTileLoaderOptions\n): SpatialJson | null {\n if (!arrayBuffer) return null;\n const tile: Tile = parsePbf(arrayBuffer, TileReader);\n\n const {cells} = tile;\n const scheme = options?.cartoSpatialTile?.scheme;\n const data = {cells, scheme};\n\n return binaryToSpatialjson(data);\n}\n\nexport default CartoSpatialTileLoader;\n"],"file":"carto-spatial-tile-loader.js"}
@@ -23,7 +23,7 @@ var KeyValueObjectReader = function () {
23
23
  value: function read(pbf, end) {
24
24
  return pbf.readFields(KeyValueObjectReader._readField, {
25
25
  key: '',
26
- value: ''
26
+ value: null
27
27
  }, end);
28
28
  }
29
29
  }, {