kepler.gl 3.1.0 → 3.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -132
- package/dist/src/common-utils/src/data-type.d.ts +9 -1
- package/dist/src/components/src/common/data-table/header-cell.d.ts +1 -0
- package/dist/src/components/src/common/data-table/index.d.ts +1 -0
- package/dist/src/components/src/common/file-uploader/file-drop.d.ts +1 -32
- package/dist/src/components/src/common/item-selector/dropdown-list.d.ts +2 -2
- package/dist/src/components/src/common/item-selector/item-selector.d.ts +1 -1
- package/dist/src/components/src/common/item-selector/typeahead.d.ts +1 -1
- package/dist/src/components/src/geocoder/geocoder.d.ts +7 -0
- package/dist/src/components/src/geocoder-panel.d.ts +2 -2
- package/dist/src/components/src/hooks/use-fetch-vector-tile-metadata.d.ts +4 -3
- package/dist/src/constants/src/default-settings.d.ts +14 -1
- package/dist/src/deckgl-arrow-layers/src/constants.d.ts +0 -12
- package/dist/src/deckgl-arrow-layers/src/index.d.ts +0 -1
- package/dist/src/deckgl-arrow-layers/src/utils/utils.d.ts +12 -1
- package/dist/src/duckdb/src/components/preview-data-panel.d.ts +7 -2
- package/dist/src/duckdb/src/components/schema-panel.d.ts +12 -3
- package/dist/src/duckdb/src/processors/data-processor.d.ts +1 -0
- package/dist/src/duckdb/src/table/duckdb-table-utils.d.ts +106 -0
- package/dist/src/duckdb/src/table/duckdb-table.d.ts +5 -3
- package/dist/src/processors/src/data-processor.d.ts +15 -1
- package/dist/src/reducers/src/provider-state-updaters.d.ts +1 -0
- package/dist/src/reducers/src/vis-state-updaters.d.ts +1 -1
- package/dist/src/table/src/dataset-utils.d.ts +1 -1
- package/dist/src/table/src/tileset/vector-tile-utils.d.ts +17 -1
- package/dist/src/utils/src/application-config.d.ts +4 -3
- package/dist/src/utils/src/data-utils.d.ts +9 -3
- package/dist/src/utils/src/indexed-data-container.d.ts +2 -2
- package/dist/src/utils/src/map-style-utils/mapbox-utils.d.ts +1 -1
- package/dist/src/utils/src/map-utils.d.ts +1 -1
- package/dist/src/utils/src/plot.d.ts +2 -2
- package/package.json +5 -5
- package/src/actions/package.json +8 -8
- package/src/ai-assistant/dist/components/ai-assistant-component.js +2 -1
- package/src/ai-assistant/package.json +7 -7
- package/src/ai-assistant/src/components/ai-assistant-component.tsx +1 -0
- package/src/cloud-providers/package.json +2 -2
- package/src/common-utils/dist/data-type.d.ts +9 -1
- package/src/common-utils/dist/data-type.js +50 -1
- package/src/common-utils/package.json +3 -3
- package/src/common-utils/src/data-type.ts +49 -1
- package/src/components/dist/common/data-table/header-cell.d.ts +1 -0
- package/src/components/dist/common/data-table/header-cell.js +2 -2
- package/src/components/dist/common/data-table/index.d.ts +1 -0
- package/src/components/dist/common/data-table/index.js +5 -1
- package/src/components/dist/common/file-uploader/file-drop.d.ts +1 -32
- package/src/components/dist/common/file-uploader/file-drop.js +152 -167
- package/src/components/dist/common/item-selector/dropdown-list.d.ts +2 -2
- package/src/components/dist/common/item-selector/dropdown-list.js +2 -3
- package/src/components/dist/common/item-selector/item-selector.d.ts +1 -1
- package/src/components/dist/common/item-selector/typeahead.d.ts +1 -1
- package/src/components/dist/common/range-brush.js +3 -3
- package/src/components/dist/geocoder/geocoder.d.ts +7 -0
- package/src/components/dist/geocoder/geocoder.js +19 -11
- package/src/components/dist/geocoder-panel.d.ts +2 -2
- package/src/components/dist/geocoder-panel.js +64 -91
- package/src/components/dist/hooks/use-fetch-vector-tile-metadata.d.ts +4 -3
- package/src/components/dist/hooks/use-fetch-vector-tile-metadata.js +35 -26
- package/src/components/dist/hooks/use-legend-position.js +8 -4
- package/src/components/dist/map/map-legend-panel.js +2 -3
- package/src/components/dist/modal-container.js +8 -8
- package/src/components/dist/modals/tilesets-modals/tileset-vector-form.js +31 -12
- package/src/components/dist/side-panel/layer-panel/color-palette-preset.js +2 -2
- package/src/components/dist/side-panel/layer-panel/color-range-selector.js +10 -11
- package/src/components/dist/side-panel/layer-panel/color-selector.js +3 -3
- package/src/components/dist/side-panel/layer-panel/custom-palette.js +1 -2
- package/src/components/dist/side-panel/layer-panel/layer-configurator.js +6 -8
- package/src/components/dist/side-panel/layer-panel/vector-tile-layer-configurator.js +1 -2
- package/src/components/package.json +16 -16
- package/src/components/src/common/data-table/header-cell.tsx +2 -1
- package/src/components/src/common/data-table/index.tsx +4 -0
- package/src/components/src/common/file-uploader/file-drop.tsx +186 -161
- package/src/components/src/common/item-selector/dropdown-list.tsx +1 -6
- package/src/components/src/common/range-brush.tsx +2 -2
- package/src/components/src/geocoder/geocoder.tsx +16 -8
- package/src/components/src/geocoder-panel.tsx +95 -85
- package/src/components/src/hooks/use-fetch-vector-tile-metadata.ts +27 -25
- package/src/components/src/hooks/use-legend-position.ts +5 -2
- package/src/components/src/map/map-legend-panel.tsx +1 -2
- package/src/components/src/modal-container.tsx +7 -7
- package/src/components/src/modals/tilesets-modals/tileset-vector-form.tsx +12 -3
- package/src/components/src/side-panel/layer-panel/color-palette-preset.tsx +1 -1
- package/src/components/src/side-panel/layer-panel/color-range-selector.tsx +6 -11
- package/src/components/src/side-panel/layer-panel/color-selector.tsx +2 -2
- package/src/components/src/side-panel/layer-panel/custom-palette.tsx +0 -1
- package/src/components/src/side-panel/layer-panel/layer-configurator.tsx +23 -33
- package/src/components/src/side-panel/layer-panel/vector-tile-layer-configurator.tsx +0 -1
- package/src/constants/dist/default-settings.d.ts +14 -1
- package/src/constants/dist/default-settings.js +20 -5
- package/src/constants/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/91/4f/6c65f3a1eba584ffd2d892cabc25ab5804d4a9ef53694c98707372a83e56343a274bec04f15927a6fe7602615f0f23f73ccf599f524ef97ad6c77c8832ea +1 -0
- package/src/constants/node_modules/.cache/terser-webpack-plugin/index-v5/a6/b2/5424aa4477192fb44cc90fd80892efdc96731f2ff0f48e8f28abf64243cc +2 -0
- package/src/constants/package.json +2 -2
- package/src/constants/src/default-settings.ts +16 -1
- package/src/constants/umd/keplergl.min.js +2 -2
- package/src/deckgl-arrow-layers/dist/constants.d.ts +0 -12
- package/src/deckgl-arrow-layers/dist/constants.js +4 -15
- package/src/deckgl-arrow-layers/dist/index.d.ts +0 -1
- package/src/deckgl-arrow-layers/dist/index.js +1 -8
- package/src/deckgl-arrow-layers/dist/layers/geo-arrow-scatterplot-layer.js +4 -4
- package/src/deckgl-arrow-layers/dist/layers/geo-arrow-text-layer.js +5 -5
- package/src/deckgl-arrow-layers/dist/utils/utils.d.ts +12 -1
- package/src/deckgl-arrow-layers/dist/utils/utils.js +7 -5
- package/src/deckgl-arrow-layers/package.json +2 -1
- package/src/deckgl-arrow-layers/src/constants.ts +0 -13
- package/src/deckgl-arrow-layers/src/index.ts +0 -2
- package/src/deckgl-arrow-layers/src/layers/geo-arrow-scatterplot-layer.ts +5 -3
- package/src/deckgl-arrow-layers/src/layers/geo-arrow-text-layer.ts +8 -4
- package/src/deckgl-arrow-layers/src/utils/utils.ts +7 -5
- package/src/deckgl-layers/dist/deckgl-extensions/filter-arrow-layer.d.ts +1 -1
- package/src/deckgl-layers/dist/deckgl-extensions/filter-shader-module.d.ts +1 -1
- package/src/deckgl-layers/dist/deckgl-extensions/filter-shader-module.js +3 -3
- package/src/deckgl-layers/package.json +5 -5
- package/src/deckgl-layers/src/deckgl-extensions/filter-shader-module.ts +4 -3
- package/src/duckdb/dist/components/monaco-editor.js +4 -5
- package/src/duckdb/dist/components/preview-data-panel.d.ts +7 -2
- package/src/duckdb/dist/components/preview-data-panel.js +7 -8
- package/src/duckdb/dist/components/schema-panel.d.ts +12 -3
- package/src/duckdb/dist/components/schema-panel.js +41 -24
- package/src/duckdb/dist/components/sql-panel.js +245 -56
- package/src/duckdb/dist/init.js +20 -14
- package/src/duckdb/dist/processors/data-processor.d.ts +1 -0
- package/src/duckdb/dist/processors/data-processor.js +4 -4
- package/src/duckdb/dist/table/duckdb-table-utils.d.ts +106 -0
- package/src/duckdb/dist/table/duckdb-table-utils.js +493 -2
- package/src/duckdb/dist/table/duckdb-table.d.ts +5 -3
- package/src/duckdb/dist/table/duckdb-table.js +153 -261
- package/src/duckdb/package.json +6 -6
- package/src/duckdb/src/components/monaco-editor.tsx +3 -3
- package/src/duckdb/src/components/preview-data-panel.tsx +15 -8
- package/src/duckdb/src/components/schema-panel.tsx +92 -21
- package/src/duckdb/src/components/sql-panel.tsx +160 -22
- package/src/duckdb/src/init.ts +4 -1
- package/src/duckdb/src/processors/data-processor.ts +2 -2
- package/src/duckdb/src/table/duckdb-table-utils.ts +407 -1
- package/src/duckdb/src/table/duckdb-table.ts +61 -92
- package/src/effects/package.json +5 -5
- package/src/layers/dist/arc-layer/arc-layer.d.ts +1 -1
- package/src/layers/dist/arc-layer/arc-layer.js +2 -3
- package/src/layers/dist/base-layer.d.ts +7 -6
- package/src/layers/dist/base-layer.js +36 -19
- package/src/layers/dist/geojson-layer/geojson-layer.js +4 -2
- package/src/layers/dist/geojson-layer/geojson-utils.js +10 -3
- package/src/layers/dist/heatmap-layer/heatmap-layer.d.ts +2 -0
- package/src/layers/dist/heatmap-layer/heatmap-layer.js +16 -9
- package/src/layers/dist/icon-layer/icon-layer.d.ts +6 -3
- package/src/layers/dist/icon-layer/icon-layer.js +19 -11
- package/src/layers/dist/index.d.ts +1 -1
- package/src/layers/dist/index.js +1 -1
- package/src/layers/dist/layer-text-label.d.ts +9 -0
- package/src/layers/dist/layer-text-label.js +51 -6
- package/src/layers/dist/layer-utils.d.ts +39 -30
- package/src/layers/dist/layer-utils.js +69 -9
- package/src/layers/dist/line-layer/line-layer.d.ts +1 -1
- package/src/layers/dist/line-layer/line-layer.js +2 -3
- package/src/layers/dist/point-layer/point-layer.d.ts +10 -7
- package/src/layers/dist/point-layer/point-layer.js +16 -8
- package/src/layers/dist/trip-layer/trip-layer.d.ts +2 -2
- package/src/layers/dist/trip-layer/trip-layer.js +4 -2
- package/src/layers/dist/vector-tile/abstract-tile-layer.d.ts +3 -7
- package/src/layers/dist/vector-tile/abstract-tile-layer.js +7 -6
- package/src/layers/dist/vector-tile/vector-tile-layer.d.ts +5 -7
- package/src/layers/dist/vector-tile/vector-tile-layer.js +23 -2
- package/src/layers/package.json +11 -10
- package/src/layers/src/arc-layer/arc-layer.ts +1 -1
- package/src/layers/src/base-layer.ts +50 -9
- package/src/layers/src/geojson-layer/geojson-layer.ts +3 -1
- package/src/layers/src/geojson-layer/geojson-utils.ts +4 -1
- package/src/layers/src/heatmap-layer/heatmap-layer.ts +17 -12
- package/src/layers/src/icon-layer/icon-layer.ts +7 -3
- package/src/layers/src/index.ts +1 -2
- package/src/layers/src/layer-text-label.ts +53 -4
- package/src/layers/src/layer-utils.ts +88 -9
- package/src/layers/src/line-layer/line-layer.ts +1 -1
- package/src/layers/src/point-layer/point-layer.ts +15 -11
- package/src/layers/src/trip-layer/trip-layer.ts +4 -2
- package/src/layers/src/vector-tile/abstract-tile-layer.ts +11 -5
- package/src/layers/src/vector-tile/vector-tile-layer.ts +33 -4
- package/src/localization/package.json +1 -1
- package/src/processors/dist/data-processor.d.ts +15 -1
- package/src/processors/dist/data-processor.js +104 -11
- package/src/processors/package.json +8 -7
- package/src/processors/src/data-processor.ts +116 -13
- package/src/reducers/dist/export-utils.js +2 -2
- package/src/reducers/dist/layer-utils.js +1 -1
- package/src/reducers/dist/provider-state-updaters.d.ts +1 -0
- package/src/reducers/dist/provider-state-updaters.js +5 -2
- package/src/reducers/dist/vis-state-updaters.d.ts +1 -1
- package/src/reducers/dist/vis-state-updaters.js +23 -12
- package/src/reducers/package.json +16 -16
- package/src/reducers/src/export-utils.ts +1 -1
- package/src/reducers/src/layer-utils.ts +2 -1
- package/src/reducers/src/provider-state-updaters.ts +4 -1
- package/src/reducers/src/vis-state-updaters.ts +45 -10
- package/src/schemas/dist/dataset-schema.js +35 -6
- package/src/schemas/package.json +7 -7
- package/src/schemas/src/dataset-schema.ts +36 -8
- package/src/styles/node_modules/.cache/terser-webpack-plugin/content-v2/sha512/a3/a9/7f26bbc52905b0e21e9366a30ef0ba98f4ccf9aa8dd8326d90ba90191ba2e305323f505bf134c825356156c793bf9386ed2cef2aeb48eb327c26d106f69a +1 -0
- package/src/styles/node_modules/.cache/terser-webpack-plugin/index-v5/7e/51/b8756555a0e2e696d944445ac23f7febf769006013fbc8419f39a701649d +2 -0
- package/src/styles/package.json +2 -2
- package/src/styles/umd/keplergl.min.js +2 -2
- package/src/table/dist/dataset-utils.js +23 -14
- package/src/table/dist/src/table/src/dataset-utils.d.ts +1 -1
- package/src/table/dist/src/table/src/tileset/vector-tile-utils.d.ts +17 -1
- package/src/table/dist/tileset/vector-tile-utils.js +122 -2
- package/src/table/package.json +5 -5
- package/src/table/src/dataset-utils.ts +16 -6
- package/src/table/src/tileset/vector-tile-utils.ts +131 -8
- package/src/tasks/package.json +2 -2
- package/src/types/actions.d.ts +1 -0
- package/src/types/layers.d.ts +1 -0
- package/src/types/package.json +1 -1
- package/src/types/types.d.ts +17 -0
- package/src/utils/dist/application-config.d.ts +4 -3
- package/src/utils/dist/application-config.js +3 -2
- package/src/utils/dist/data-scale-utils.js +4 -4
- package/src/utils/dist/data-utils.d.ts +9 -3
- package/src/utils/dist/data-utils.js +40 -7
- package/src/utils/dist/dataset-utils.js +23 -8
- package/src/utils/dist/indexed-data-container.d.ts +2 -2
- package/src/utils/dist/indexed-data-container.js +1 -1
- package/src/utils/dist/map-style-utils/mapbox-utils.d.ts +1 -1
- package/src/utils/dist/map-style-utils/mapbox-utils.js +3 -3
- package/src/utils/dist/plot.d.ts +2 -2
- package/src/utils/dist/plot.js +6 -6
- package/src/utils/map-utils.spec.js +1 -2
- package/src/utils/package.json +5 -4
- package/src/utils/src/application-config.ts +11 -8
- package/src/utils/src/data-scale-utils.ts +3 -3
- package/src/utils/src/data-utils.ts +36 -7
- package/src/utils/src/dataset-utils.ts +41 -9
- package/src/utils/src/indexed-data-container.ts +1 -1
- package/src/utils/src/map-style-utils/mapbox-utils.ts +2 -2
- package/src/utils/src/plot.ts +5 -5
- package/umd/keplergl.min.js +1279 -1295
|
@@ -59,7 +59,7 @@ function createNewDataEntry(_ref) {
|
|
|
59
59
|
}
|
|
60
60
|
var validatedData = dataValidator(data);
|
|
61
61
|
if (!validatedData) {
|
|
62
|
-
return
|
|
62
|
+
return null;
|
|
63
63
|
}
|
|
64
64
|
|
|
65
65
|
// check if dataset already exists, and update it when loading data by batches incrementally
|
|
@@ -158,7 +158,7 @@ function refreshRemoteData(_x3) {
|
|
|
158
158
|
}
|
|
159
159
|
function _refreshRemoteData() {
|
|
160
160
|
_refreshRemoteData = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(datasetInfo) {
|
|
161
|
-
var _ref3, remoteTileFormat, tilesetMetadataUrl, rawMetadata, tileSource;
|
|
161
|
+
var _ref3, remoteTileFormat, tilesetMetadataUrl, tilesetDataUrl, rawMetadata, tileSource, metadata;
|
|
162
162
|
return _regenerator["default"].wrap(function _callee3$(_context3) {
|
|
163
163
|
while (1) switch (_context3.prev = _context3.next) {
|
|
164
164
|
case 0:
|
|
@@ -168,8 +168,8 @@ function _refreshRemoteData() {
|
|
|
168
168
|
}
|
|
169
169
|
return _context3.abrupt("return", null);
|
|
170
170
|
case 2:
|
|
171
|
-
_ref3 = datasetInfo.opts.metadata || {}, remoteTileFormat = _ref3.remoteTileFormat, tilesetMetadataUrl = _ref3.tilesetMetadataUrl;
|
|
172
|
-
if (!(!(remoteTileFormat === _constants.RemoteTileFormat.PMTILES || remoteTileFormat === _constants.RemoteTileFormat.MVT) || typeof tilesetMetadataUrl !== 'string')) {
|
|
171
|
+
_ref3 = datasetInfo.opts.metadata || {}, remoteTileFormat = _ref3.remoteTileFormat, tilesetMetadataUrl = _ref3.tilesetMetadataUrl, tilesetDataUrl = _ref3.tilesetDataUrl;
|
|
172
|
+
if (!(!(remoteTileFormat === _constants.RemoteTileFormat.PMTILES || remoteTileFormat === _constants.RemoteTileFormat.MVT) || typeof tilesetMetadataUrl !== 'string' || typeof tilesetDataUrl !== 'string')) {
|
|
173
173
|
_context3.next = 5;
|
|
174
174
|
break;
|
|
175
175
|
}
|
|
@@ -195,24 +195,33 @@ function _refreshRemoteData() {
|
|
|
195
195
|
rawMetadata = _context3.sent;
|
|
196
196
|
case 17:
|
|
197
197
|
if (!rawMetadata) {
|
|
198
|
-
_context3.next =
|
|
198
|
+
_context3.next = 22;
|
|
199
199
|
break;
|
|
200
200
|
}
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
201
|
+
metadata = (0, _vectorTileUtils.parseVectorMetadata)(rawMetadata);
|
|
202
|
+
_context3.next = 21;
|
|
203
|
+
return (0, _vectorTileUtils.getFieldsFromTile)({
|
|
204
|
+
remoteTileFormat: remoteTileFormat,
|
|
205
|
+
tilesetUrl: tilesetDataUrl,
|
|
206
|
+
metadataUrl: tilesetMetadataUrl,
|
|
207
|
+
metadata: metadata
|
|
208
|
+
});
|
|
205
209
|
case 21:
|
|
206
|
-
_context3.
|
|
210
|
+
return _context3.abrupt("return", metadata);
|
|
211
|
+
case 22:
|
|
212
|
+
_context3.next = 26;
|
|
213
|
+
break;
|
|
214
|
+
case 24:
|
|
215
|
+
_context3.prev = 24;
|
|
207
216
|
_context3.t0 = _context3["catch"](5);
|
|
208
|
-
case
|
|
217
|
+
case 26:
|
|
209
218
|
return _context3.abrupt("return", null);
|
|
210
|
-
case
|
|
219
|
+
case 27:
|
|
211
220
|
case "end":
|
|
212
221
|
return _context3.stop();
|
|
213
222
|
}
|
|
214
|
-
}, _callee3, null, [[5,
|
|
223
|
+
}, _callee3, null, [[5, 24]]);
|
|
215
224
|
}));
|
|
216
225
|
return _refreshRemoteData.apply(this, arguments);
|
|
217
226
|
}
|
|
218
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfa2VwbGVyVGFibGUiLCJfdGFza3MiLCJfY29uc3RhbnRzIiwiX3V0aWxzIiwiX3BtdGlsZXMiLCJfdGlsZXNldFV0aWxzIiwiX3ZlY3RvclRpbGVVdGlscyIsIl9leGNsdWRlZCIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiZGF0YXNldENvbG9ycyIsIm1hcCIsImhleFRvUmdiIiwiZ2V0TmV3RGF0YXNldENvbG9yIiwiZGF0YXNldHMiLCJwcmVzZXRDb2xvcnMiLCJTdHJpbmciLCJ1c2VkQ29sb3JzIiwidW5pcSIsInZhbHVlcyIsImQiLCJjb2xvciIsImMiLCJpbmNsdWRlcyIsImRhdGFzZXRDb2xvck1ha2VyIiwibmV4dCIsInZhbHVlIiwiY3JlYXRlTmV3RGF0YUVudHJ5IiwiX3JlZiIsIl9nZXRBcHBsaWNhdGlvbkNvbmZpZyIsImluZm8iLCJkYXRhIiwib3B0cyIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllczIiLCJ1bmRlZmluZWQiLCJUYWJsZUNsYXNzIiwiZ2V0QXBwbGljYXRpb25Db25maWciLCJ0YWJsZSIsIktlcGxlclRhYmxlIiwiZGF0YVZhbGlkYXRvciIsInZhbGlkYXRlSW5wdXREYXRhIiwiZ2V0SW5wdXREYXRhVmFsaWRhdG9yIiwidmFsaWRhdGVkRGF0YSIsImlkIiwia2VwbGVyVGFibGUiLCJVUERBVEVfVEFCTEVfVEFTSyIsIkNSRUFURV9UQUJMRV9UQVNLIiwidXBkYXRlVGFibGUiLCJfeCIsIl91cGRhdGVUYWJsZSIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwiX3JlZjIiLCJ1cGRhdGVkIiwid3JhcCIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJwcmV2IiwidXBkYXRlIiwic2VudCIsImFicnVwdCIsInN0b3AiLCJjcmVhdGVUYWJsZSIsIl94MiIsIl9jcmVhdGVUYWJsZSIsIl9jYWxsZWUyIiwiZGF0YXNldEluZm8iLCJfZ2V0QXBwbGljYXRpb25Db25maWcyIiwicmVmcmVzaGVkTWV0YWRhdGEiLCJtZXRhZGF0YSIsIl9tZXRhZGF0YSIsIl9jYWxsZWUyJCIsIl9jb250ZXh0MiIsInJlZnJlc2hSZW1vdGVEYXRhIiwiZmllbGRzIiwiaW1wb3J0RGF0YSIsIlRhc2siLCJmcm9tUHJvbWlzZSIsIl94MyIsIl9yZWZyZXNoUmVtb3RlRGF0YSIsIl9jYWxsZWUzIiwiX3JlZjMiLCJyZW1vdGVUaWxlRm9ybWF0IiwidGlsZXNldE1ldGFkYXRhVXJsIiwicmF3TWV0YWRhdGEiLCJ0aWxlU291cmNlIiwiX2NhbGxlZTMkIiwiX2NvbnRleHQzIiwidHlwZSIsIkRhdGFzZXRUeXBlIiwiVkVDVE9SX1RJTEUiLCJSZW1vdGVUaWxlRm9ybWF0IiwiUE1USUxFUyIsIk1WVCIsImdldE1WVE1ldGFkYXRhIiwiUE1UaWxlc1NvdXJjZSIsImNyZWF0ZURhdGFTb3VyY2UiLCJwYXJzZVZlY3Rvck1ldGFkYXRhIiwidDAiXSwic291cmNlcyI6WyIuLi9zcmMvZGF0YXNldC11dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5pbXBvcnQgdW5pcSBmcm9tICdsb2Rhc2gudW5pcSc7XG5pbXBvcnQgS2VwbGVyVGFibGUsIHtEYXRhc2V0c30gZnJvbSAnLi9rZXBsZXItdGFibGUnO1xuaW1wb3J0IHtQcm90b0RhdGFzZXQsIFJHQkNvbG9yfSBmcm9tICdAa2VwbGVyLmdsL3R5cGVzJztcbmltcG9ydCBUYXNrIGZyb20gJ3JlYWN0LXBhbG0vdGFza3MnO1xuXG5pbXBvcnQge0RhdGFzZXRUeXBlLCBSZW1vdGVUaWxlRm9ybWF0LCBWZWN0b3JUaWxlRGF0YXNldE1ldGFkYXRhfSBmcm9tICdAa2VwbGVyLmdsL2NvbnN0YW50cyc7XG5pbXBvcnQge1xuICBoZXhUb1JnYixcbiAgdmFsaWRhdGVJbnB1dERhdGEsXG4gIGRhdGFzZXRDb2xvck1ha2VyLFxuICBnZXRBcHBsaWNhdGlvbkNvbmZpZ1xufSBmcm9tICdAa2VwbGVyLmdsL3V0aWxzJztcbmltcG9ydCB7UE1UaWxlc1NvdXJjZSwgUE1UaWxlc01ldGFkYXRhfSBmcm9tICdAbG9hZGVycy5nbC9wbXRpbGVzJztcbmltcG9ydCB7LyogTVZUU291cmNlLCovIFRpbGVKU09OfSBmcm9tICdAbG9hZGVycy5nbC9tdnQnO1xuXG5pbXBvcnQge2dldE1WVE1ldGFkYXRhfSBmcm9tICcuL3RpbGVzZXQvdGlsZXNldC11dGlscyc7XG5pbXBvcnQge3BhcnNlVmVjdG9yTWV0YWRhdGF9IGZyb20gJy4vdGlsZXNldC92ZWN0b3ItdGlsZS11dGlscyc7XG5cbi8vIGFwcGx5IGEgY29sb3IgZm9yIGVhY2ggZGF0YXNldFxuLy8gdG8gdXNlIGFzIGxhYmVsIGNvbG9yc1xuY29uc3QgZGF0YXNldENvbG9ycyA9IFtcbiAgJyM4RjJGQkYnLFxuICAnIzAwNUNGRicsXG4gICcjQzA2Qzg0JyxcbiAgJyNGOEIxOTUnLFxuICAnIzU0N0E4MicsXG4gICcjM0VBQ0E4JyxcbiAgJyNBMkQ0QUInXG5dLm1hcChoZXhUb1JnYik7XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXROZXdEYXRhc2V0Q29sb3IoZGF0YXNldHM6IERhdGFzZXRzKTogUkdCQ29sb3Ige1xuICBjb25zdCBwcmVzZXRDb2xvcnMgPSBkYXRhc2V0Q29sb3JzLm1hcChTdHJpbmcpO1xuICBjb25zdCB1c2VkQ29sb3JzID0gdW5pcShPYmplY3QudmFsdWVzKGRhdGFzZXRzKS5tYXAoZCA9PiBTdHJpbmcoZC5jb2xvcikpKS5maWx0ZXIoYyA9PlxuICAgIHByZXNldENvbG9ycy5pbmNsdWRlcyhjKVxuICApO1xuXG4gIGlmICh1c2VkQ29sb3JzLmxlbmd0aCA9PT0gcHJlc2V0Q29sb3JzLmxlbmd0aCkge1xuICAgIC8vIGlmIHdlIGFscmVhZHkgZGVwbGV0ZWQgdGhlIHBvb2wgb2YgY29sb3JcbiAgICByZXR1cm4gZGF0YXNldENvbG9yTWFrZXIubmV4dCgpLnZhbHVlO1xuICB9XG5cbiAgbGV0IGNvbG9yID0gZGF0YXNldENvbG9yTWFrZXIubmV4dCgpLnZhbHVlO1xuICB3aGlsZSAodXNlZENvbG9ycy5pbmNsdWRlcyhTdHJpbmcoY29sb3IpKSkge1xuICAgIGNvbG9yID0gZGF0YXNldENvbG9yTWFrZXIubmV4dCgpLnZhbHVlO1xuICB9XG5cbiAgcmV0dXJuIGNvbG9yO1xufVxuXG4vKipcbiAqIFRha2UgZGF0YXNldHMgcGF5bG9hZCBmcm9tIGFkZERhdGFUb01hcCwgY3JlYXRlIGRhdGFzZXRzIGVudHJ5IHNhdmUgdG8gdmlzU3RhdGVcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGNyZWF0ZU5ld0RhdGFFbnRyeShcbiAge2luZm8sIGRhdGEsIC4uLm9wdHN9OiBQcm90b0RhdGFzZXQsXG4gIGRhdGFzZXRzOiBEYXRhc2V0cyA9IHt9XG4pOiBEYXRhc2V0cyB7XG4gIGNvbnN0IFRhYmxlQ2xhc3MgPSBnZXRBcHBsaWNhdGlvbkNvbmZpZygpLnRhYmxlID8/IEtlcGxlclRhYmxlO1xuICBsZXQgZGF0YVZhbGlkYXRvciA9IHZhbGlkYXRlSW5wdXREYXRhO1xuICBpZiAodHlwZW9mIFRhYmxlQ2xhc3MuZ2V0SW5wdXREYXRhVmFsaWRhdG9yID09PSAnZnVuY3Rpb24nKSB7XG4gICAgZGF0YVZhbGlkYXRvciA9IFRhYmxlQ2xhc3MuZ2V0SW5wdXREYXRhVmFsaWRhdG9yKCk7XG4gIH1cblxuICBjb25zdCB2YWxpZGF0ZWREYXRhID0gZGF0YVZhbGlkYXRvcihkYXRhKTtcbiAgaWYgKCF2YWxpZGF0ZWREYXRhKSB7XG4gICAgcmV0dXJuIHt9O1xuICB9XG5cbiAgLy8gY2hlY2sgaWYgZGF0YXNldCBhbHJlYWR5IGV4aXN0cywgYW5kIHVwZGF0ZSBpdCB3aGVuIGxvYWRpbmcgZGF0YSBieSBiYXRjaGVzIGluY3JlbWVudGFsbHlcbiAgaWYgKGluZm8gJiYgaW5mby5pZCAmJiBkYXRhc2V0c1tpbmZvLmlkXSkge1xuICAgIC8vIGdldCBrZXBsZXJUYWJsZSBmcm9tIGRhdGFzZXRzXG4gICAgY29uc3Qga2VwbGVyVGFibGUgPSBkYXRhc2V0c1tpbmZvLmlkXTtcbiAgICAvLyB1cGRhdGUgdGhlIGRhdGEgaW4ga2VwbGVyVGFibGVcbiAgICByZXR1cm4gVVBEQVRFX1RBQkxFX1RBU0soe3RhYmxlOiBrZXBsZXJUYWJsZSwgZGF0YTogdmFsaWRhdGVkRGF0YX0pO1xuICB9XG5cbiAgaW5mbyA9IGluZm8gfHwge307XG4gIGNvbnN0IGNvbG9yID0gaW5mby5jb2xvciB8fCBnZXROZXdEYXRhc2V0Q29sb3IoZGF0YXNldHMpO1xuXG4gIHJldHVybiBDUkVBVEVfVEFCTEVfVEFTSyh7XG4gICAgaW5mbyxcbiAgICBjb2xvcixcbiAgICBvcHRzLFxuICAgIGRhdGE6IHZhbGlkYXRlZERhdGFcbiAgfSk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHVwZGF0ZVRhYmxlKHt0YWJsZSwgZGF0YX0pIHtcbiAgY29uc3QgdXBkYXRlZCA9IGF3YWl0IHRhYmxlLnVwZGF0ZShkYXRhKTsgLy8gQXNzdW1pbmcgYHRhYmxlYCBoYXMgYW4gYHVwZGF0ZWAgbWV0aG9kXG4gIHJldHVybiB1cGRhdGVkO1xufVxuXG50eXBlIENyZWF0ZVRhYmxlUHJvcHMgPSB7XG4gIGluZm86IGFueTtcbiAgY29sb3I6IFJHQkNvbG9yO1xuICBvcHRzOiB7XG4gICAgbWV0YWRhdGE/OiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcbiAgfTtcbiAgZGF0YTogYW55O1xufTtcblxuYXN5bmMgZnVuY3Rpb24gY3JlYXRlVGFibGUoZGF0YXNldEluZm86IENyZWF0ZVRhYmxlUHJvcHMpIHtcbiAgY29uc3Qge2luZm8sIGNvbG9yLCBvcHRzLCBkYXRhfSA9IGRhdGFzZXRJbmZvO1xuXG4gIC8vIHVwZGF0ZSBtZXRhZGF0YSBmb3IgcmVtb3RlIHRpbGVkIGRhdGFzZXRzXG4gIGNvbnN0IHJlZnJlc2hlZE1ldGFkYXRhID0gYXdhaXQgcmVmcmVzaFJlbW90ZURhdGEoZGF0YXNldEluZm8pO1xuICBsZXQgbWV0YWRhdGEgPSBvcHRzLm1ldGFkYXRhO1xuICBpZiAocmVmcmVzaGVkTWV0YWRhdGEpIHtcbiAgICBtZXRhZGF0YSA9IHsuLi5vcHRzLm1ldGFkYXRhLCAuLi5yZWZyZXNoZWRNZXRhZGF0YX07XG4gICAgZGF0YS5maWVsZHMgPSBtZXRhZGF0YT8uZmllbGRzO1xuICB9XG5cbiAgY29uc3QgVGFibGVDbGFzcyA9IGdldEFwcGxpY2F0aW9uQ29uZmlnKCkudGFibGUgPz8gS2VwbGVyVGFibGU7XG4gIGNvbnN0IHRhYmxlID0gbmV3IFRhYmxlQ2xhc3Moe1xuICAgIGluZm8sXG4gICAgY29sb3IsXG4gICAgLi4ub3B0cyxcbiAgICBtZXRhZGF0YVxuICB9KTtcbiAgYXdhaXQgdGFibGUuaW1wb3J0RGF0YSh7ZGF0YX0pO1xuXG4gIHJldHVybiB0YWJsZTtcbn1cbmNvbnN0IFVQREFURV9UQUJMRV9UQVNLID0gVGFzay5mcm9tUHJvbWlzZSh1cGRhdGVUYWJsZSwgJ1VQREFURV9UQUJMRV9UQVNLJyk7XG5jb25zdCBDUkVBVEVfVEFCTEVfVEFTSyA9IFRhc2suZnJvbVByb21pc2UoY3JlYXRlVGFibGUsICdDUkVBVEVfVEFCTEVfVEFTSycpO1xuXG4vKipcbiAqIEZldGNoIG1ldGFkYXRhIGZvciB2ZWN0b3IgdGlsZSBsYXllcnMgdXNpbmcgdGlsZXNldE1ldGFkYXRhVXJsIGZyb20gbWV0YWRhdGFcbiAqIEBwYXJhbSBkYXRhc2V0SW5mb1xuICogQHJldHVybnNcbiAqL1xuYXN5bmMgZnVuY3Rpb24gcmVmcmVzaFJlbW90ZURhdGEoZGF0YXNldEluZm86IENyZWF0ZVRhYmxlUHJvcHMpIHtcbiAgLy8gc28gZmFyIG9ubHkgdmVjdG9yIHRpbGUgbGF5ZXJzIHNob3VsZCByZWZyZXNoIG1ldGFkYXRhXG4gIGlmIChkYXRhc2V0SW5mby5pbmZvLnR5cGUgIT09IERhdGFzZXRUeXBlLlZFQ1RPUl9USUxFKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICBjb25zdCB7cmVtb3RlVGlsZUZvcm1hdCwgdGlsZXNldE1ldGFkYXRhVXJsfSA9XG4gICAgKGRhdGFzZXRJbmZvLm9wdHMubWV0YWRhdGEgYXMgVmVjdG9yVGlsZURhdGFzZXRNZXRhZGF0YSkgfHwge307XG5cbiAgaWYgKFxuICAgICEocmVtb3RlVGlsZUZvcm1hdCA9PT0gUmVtb3RlVGlsZUZvcm1hdC5QTVRJTEVTIHx8IHJlbW90ZVRpbGVGb3JtYXQgPT09IFJlbW90ZVRpbGVGb3JtYXQuTVZUKSB8fFxuICAgIHR5cGVvZiB0aWxlc2V0TWV0YWRhdGFVcmwgIT09ICdzdHJpbmcnXG4gICkge1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgdHJ5IHtcbiAgICBsZXQgcmF3TWV0YWRhdGE6IFBNVGlsZXNNZXRhZGF0YSB8IFRpbGVKU09OIHwgbnVsbCA9IG51bGw7XG4gICAgaWYgKHJlbW90ZVRpbGVGb3JtYXQgPT09IFJlbW90ZVRpbGVGb3JtYXQuTVZUKSB7XG4gICAgICByYXdNZXRhZGF0YSA9IGF3YWl0IGdldE1WVE1ldGFkYXRhKHRpbGVzZXRNZXRhZGF0YVVybCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IHRpbGVTb3VyY2UgPSBQTVRpbGVzU291cmNlLmNyZWF0ZURhdGFTb3VyY2UodGlsZXNldE1ldGFkYXRhVXJsLCB7fSk7XG4gICAgICByYXdNZXRhZGF0YSA9IGF3YWl0IHRpbGVTb3VyY2UubWV0YWRhdGE7XG4gICAgfVxuXG4gICAgaWYgKHJhd01ldGFkYXRhKSB7XG4gICAgICByZXR1cm4gcGFyc2VWZWN0b3JNZXRhZGF0YShyYXdNZXRhZGF0YSk7XG4gICAgfVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICAvLyBpZ25vcmUgZm9yIG5vdywgYW5kIHVzZSBvbGQgbWV0YWRhdGE/XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsT0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsWUFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUUsTUFBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUcsVUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBTUEsSUFBQUssUUFBQSxHQUFBTCxPQUFBO0FBR0EsSUFBQU0sYUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sZ0JBQUEsR0FBQVAsT0FBQTtBQUFnRSxJQUFBUSxTQUFBLHFCQW5CaEU7QUFDQTtBQUFBLFNBQUFDLFFBQUFDLENBQUEsRUFBQUMsQ0FBQSxRQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBSixDQUFBLE9BQUFHLE1BQUEsQ0FBQUUscUJBQUEsUUFBQUMsQ0FBQSxHQUFBSCxNQUFBLENBQUFFLHFCQUFBLENBQUFMLENBQUEsR0FBQUMsQ0FBQSxLQUFBSyxDQUFBLEdBQUFBLENBQUEsQ0FBQUMsTUFBQSxXQUFBTixDQUFBLFdBQUFFLE1BQUEsQ0FBQUssd0JBQUEsQ0FBQVIsQ0FBQSxFQUFBQyxDQUFBLEVBQUFRLFVBQUEsT0FBQVAsQ0FBQSxDQUFBUSxJQUFBLENBQUFDLEtBQUEsQ0FBQVQsQ0FBQSxFQUFBSSxDQUFBLFlBQUFKLENBQUE7QUFBQSxTQUFBVSxjQUFBWixDQUFBLGFBQUFDLENBQUEsTUFBQUEsQ0FBQSxHQUFBWSxTQUFBLENBQUFDLE1BQUEsRUFBQWIsQ0FBQSxVQUFBQyxDQUFBLFdBQUFXLFNBQUEsQ0FBQVos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
|
|
227
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9kYXNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfa2VwbGVyVGFibGUiLCJfdGFza3MiLCJfY29uc3RhbnRzIiwiX3V0aWxzIiwiX3BtdGlsZXMiLCJfdGlsZXNldFV0aWxzIiwiX3ZlY3RvclRpbGVVdGlscyIsIl9leGNsdWRlZCIsIm93bktleXMiLCJlIiwiciIsInQiLCJPYmplY3QiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwibyIsImZpbHRlciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImVudW1lcmFibGUiLCJwdXNoIiwiYXBwbHkiLCJfb2JqZWN0U3ByZWFkIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsImRlZmluZVByb3BlcnR5IiwiZGF0YXNldENvbG9ycyIsIm1hcCIsImhleFRvUmdiIiwiZ2V0TmV3RGF0YXNldENvbG9yIiwiZGF0YXNldHMiLCJwcmVzZXRDb2xvcnMiLCJTdHJpbmciLCJ1c2VkQ29sb3JzIiwidW5pcSIsInZhbHVlcyIsImQiLCJjb2xvciIsImMiLCJpbmNsdWRlcyIsImRhdGFzZXRDb2xvck1ha2VyIiwibmV4dCIsInZhbHVlIiwiY3JlYXRlTmV3RGF0YUVudHJ5IiwiX3JlZiIsIl9nZXRBcHBsaWNhdGlvbkNvbmZpZyIsImluZm8iLCJkYXRhIiwib3B0cyIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllczIiLCJ1bmRlZmluZWQiLCJUYWJsZUNsYXNzIiwiZ2V0QXBwbGljYXRpb25Db25maWciLCJ0YWJsZSIsIktlcGxlclRhYmxlIiwiZGF0YVZhbGlkYXRvciIsInZhbGlkYXRlSW5wdXREYXRhIiwiZ2V0SW5wdXREYXRhVmFsaWRhdG9yIiwidmFsaWRhdGVkRGF0YSIsImlkIiwia2VwbGVyVGFibGUiLCJVUERBVEVfVEFCTEVfVEFTSyIsIkNSRUFURV9UQUJMRV9UQVNLIiwidXBkYXRlVGFibGUiLCJfeCIsIl91cGRhdGVUYWJsZSIsIl9hc3luY1RvR2VuZXJhdG9yMiIsIl9yZWdlbmVyYXRvciIsIm1hcmsiLCJfY2FsbGVlIiwiX3JlZjIiLCJ1cGRhdGVkIiwid3JhcCIsIl9jYWxsZWUkIiwiX2NvbnRleHQiLCJwcmV2IiwidXBkYXRlIiwic2VudCIsImFicnVwdCIsInN0b3AiLCJjcmVhdGVUYWJsZSIsIl94MiIsIl9jcmVhdGVUYWJsZSIsIl9jYWxsZWUyIiwiZGF0YXNldEluZm8iLCJfZ2V0QXBwbGljYXRpb25Db25maWcyIiwicmVmcmVzaGVkTWV0YWRhdGEiLCJtZXRhZGF0YSIsIl9tZXRhZGF0YSIsIl9jYWxsZWUyJCIsIl9jb250ZXh0MiIsInJlZnJlc2hSZW1vdGVEYXRhIiwiZmllbGRzIiwiaW1wb3J0RGF0YSIsIlRhc2siLCJmcm9tUHJvbWlzZSIsIl94MyIsIl9yZWZyZXNoUmVtb3RlRGF0YSIsIl9jYWxsZWUzIiwiX3JlZjMiLCJyZW1vdGVUaWxlRm9ybWF0IiwidGlsZXNldE1ldGFkYXRhVXJsIiwidGlsZXNldERhdGFVcmwiLCJyYXdNZXRhZGF0YSIsInRpbGVTb3VyY2UiLCJfY2FsbGVlMyQiLCJfY29udGV4dDMiLCJ0eXBlIiwiRGF0YXNldFR5cGUiLCJWRUNUT1JfVElMRSIsIlJlbW90ZVRpbGVGb3JtYXQiLCJQTVRJTEVTIiwiTVZUIiwiZ2V0TVZUTWV0YWRhdGEiLCJQTVRpbGVzU291cmNlIiwiY3JlYXRlRGF0YVNvdXJjZSIsInBhcnNlVmVjdG9yTWV0YWRhdGEiLCJnZXRGaWVsZHNGcm9tVGlsZSIsInRpbGVzZXRVcmwiLCJtZXRhZGF0YVVybCIsInQwIl0sInNvdXJjZXMiOlsiLi4vc3JjL2RhdGFzZXQtdXRpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLy8gU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IE1JVFxuLy8gQ29weXJpZ2h0IGNvbnRyaWJ1dG9ycyB0byB0aGUga2VwbGVyLmdsIHByb2plY3RcblxuaW1wb3J0IHVuaXEgZnJvbSAnbG9kYXNoLnVuaXEnO1xuaW1wb3J0IEtlcGxlclRhYmxlLCB7RGF0YXNldHN9IGZyb20gJy4va2VwbGVyLXRhYmxlJztcbmltcG9ydCB7UHJvdG9EYXRhc2V0LCBSR0JDb2xvcn0gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQgVGFzayBmcm9tICdyZWFjdC1wYWxtL3Rhc2tzJztcblxuaW1wb3J0IHtEYXRhc2V0VHlwZSwgUmVtb3RlVGlsZUZvcm1hdCwgVmVjdG9yVGlsZURhdGFzZXRNZXRhZGF0YX0gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuaW1wb3J0IHtcbiAgaGV4VG9SZ2IsXG4gIHZhbGlkYXRlSW5wdXREYXRhLFxuICBkYXRhc2V0Q29sb3JNYWtlcixcbiAgZ2V0QXBwbGljYXRpb25Db25maWdcbn0gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5pbXBvcnQge1BNVGlsZXNTb3VyY2UsIFBNVGlsZXNNZXRhZGF0YX0gZnJvbSAnQGxvYWRlcnMuZ2wvcG10aWxlcyc7XG5pbXBvcnQgey8qIE1WVFNvdXJjZSwqLyBUaWxlSlNPTn0gZnJvbSAnQGxvYWRlcnMuZ2wvbXZ0JztcblxuaW1wb3J0IHtnZXRNVlRNZXRhZGF0YX0gZnJvbSAnLi90aWxlc2V0L3RpbGVzZXQtdXRpbHMnO1xuaW1wb3J0IHtwYXJzZVZlY3Rvck1ldGFkYXRhLCBnZXRGaWVsZHNGcm9tVGlsZX0gZnJvbSAnLi90aWxlc2V0L3ZlY3Rvci10aWxlLXV0aWxzJztcblxuLy8gYXBwbHkgYSBjb2xvciBmb3IgZWFjaCBkYXRhc2V0XG4vLyB0byB1c2UgYXMgbGFiZWwgY29sb3JzXG5jb25zdCBkYXRhc2V0Q29sb3JzID0gW1xuICAnIzhGMkZCRicsXG4gICcjMDA1Q0ZGJyxcbiAgJyNDMDZDODQnLFxuICAnI0Y4QjE5NScsXG4gICcjNTQ3QTgyJyxcbiAgJyMzRUFDQTgnLFxuICAnI0EyRDRBQidcbl0ubWFwKGhleFRvUmdiKTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldE5ld0RhdGFzZXRDb2xvcihkYXRhc2V0czogRGF0YXNldHMpOiBSR0JDb2xvciB7XG4gIGNvbnN0IHByZXNldENvbG9ycyA9IGRhdGFzZXRDb2xvcnMubWFwKFN0cmluZyk7XG4gIGNvbnN0IHVzZWRDb2xvcnMgPSB1bmlxKE9iamVjdC52YWx1ZXMoZGF0YXNldHMpLm1hcChkID0+IFN0cmluZyhkLmNvbG9yKSkpLmZpbHRlcihjID0+XG4gICAgcHJlc2V0Q29sb3JzLmluY2x1ZGVzKGMpXG4gICk7XG5cbiAgaWYgKHVzZWRDb2xvcnMubGVuZ3RoID09PSBwcmVzZXRDb2xvcnMubGVuZ3RoKSB7XG4gICAgLy8gaWYgd2UgYWxyZWFkeSBkZXBsZXRlZCB0aGUgcG9vbCBvZiBjb2xvclxuICAgIHJldHVybiBkYXRhc2V0Q29sb3JNYWtlci5uZXh0KCkudmFsdWU7XG4gIH1cblxuICBsZXQgY29sb3IgPSBkYXRhc2V0Q29sb3JNYWtlci5uZXh0KCkudmFsdWU7XG4gIHdoaWxlICh1c2VkQ29sb3JzLmluY2x1ZGVzKFN0cmluZyhjb2xvcikpKSB7XG4gICAgY29sb3IgPSBkYXRhc2V0Q29sb3JNYWtlci5uZXh0KCkudmFsdWU7XG4gIH1cblxuICByZXR1cm4gY29sb3I7XG59XG5cbi8qKlxuICogVGFrZSBkYXRhc2V0cyBwYXlsb2FkIGZyb20gYWRkRGF0YVRvTWFwLCBjcmVhdGUgZGF0YXNldHMgZW50cnkgc2F2ZSB0byB2aXNTdGF0ZVxuICovXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlTmV3RGF0YUVudHJ5KFxuICB7aW5mbywgZGF0YSwgLi4ub3B0c306IFByb3RvRGF0YXNldCxcbiAgZGF0YXNldHM6IERhdGFzZXRzID0ge31cbik6IERhdGFzZXRzIHwgbnVsbCB7XG4gIGNvbnN0IFRhYmxlQ2xhc3MgPSBnZXRBcHBsaWNhdGlvbkNvbmZpZygpLnRhYmxlID8/IEtlcGxlclRhYmxlO1xuICBsZXQgZGF0YVZhbGlkYXRvciA9IHZhbGlkYXRlSW5wdXREYXRhO1xuICBpZiAodHlwZW9mIFRhYmxlQ2xhc3MuZ2V0SW5wdXREYXRhVmFsaWRhdG9yID09PSAnZnVuY3Rpb24nKSB7XG4gICAgZGF0YVZhbGlkYXRvciA9IFRhYmxlQ2xhc3MuZ2V0SW5wdXREYXRhVmFsaWRhdG9yKCk7XG4gIH1cblxuICBjb25zdCB2YWxpZGF0ZWREYXRhID0gZGF0YVZhbGlkYXRvcihkYXRhKTtcbiAgaWYgKCF2YWxpZGF0ZWREYXRhKSB7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvLyBjaGVjayBpZiBkYXRhc2V0IGFscmVhZHkgZXhpc3RzLCBhbmQgdXBkYXRlIGl0IHdoZW4gbG9hZGluZyBkYXRhIGJ5IGJhdGNoZXMgaW5jcmVtZW50YWxseVxuICBpZiAoaW5mbyAmJiBpbmZvLmlkICYmIGRhdGFzZXRzW2luZm8uaWRdKSB7XG4gICAgLy8gZ2V0IGtlcGxlclRhYmxlIGZyb20gZGF0YXNldHNcbiAgICBjb25zdCBrZXBsZXJUYWJsZSA9IGRhdGFzZXRzW2luZm8uaWRdO1xuICAgIC8vIHVwZGF0ZSB0aGUgZGF0YSBpbiBrZXBsZXJUYWJsZVxuICAgIHJldHVybiBVUERBVEVfVEFCTEVfVEFTSyh7dGFibGU6IGtlcGxlclRhYmxlLCBkYXRhOiB2YWxpZGF0ZWREYXRhfSk7XG4gIH1cblxuICBpbmZvID0gaW5mbyB8fCB7fTtcbiAgY29uc3QgY29sb3IgPSBpbmZvLmNvbG9yIHx8IGdldE5ld0RhdGFzZXRDb2xvcihkYXRhc2V0cyk7XG5cbiAgcmV0dXJuIENSRUFURV9UQUJMRV9UQVNLKHtcbiAgICBpbmZvLFxuICAgIGNvbG9yLFxuICAgIG9wdHMsXG4gICAgZGF0YTogdmFsaWRhdGVkRGF0YVxuICB9KTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gdXBkYXRlVGFibGUoe3RhYmxlLCBkYXRhfSkge1xuICBjb25zdCB1cGRhdGVkID0gYXdhaXQgdGFibGUudXBkYXRlKGRhdGEpOyAvLyBBc3N1bWluZyBgdGFibGVgIGhhcyBhbiBgdXBkYXRlYCBtZXRob2RcbiAgcmV0dXJuIHVwZGF0ZWQ7XG59XG5cbnR5cGUgQ3JlYXRlVGFibGVQcm9wcyA9IHtcbiAgaW5mbzogYW55O1xuICBjb2xvcjogUkdCQ29sb3I7XG4gIG9wdHM6IHtcbiAgICBtZXRhZGF0YT86IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuICB9O1xuICBkYXRhOiBhbnk7XG59O1xuXG5hc3luYyBmdW5jdGlvbiBjcmVhdGVUYWJsZShkYXRhc2V0SW5mbzogQ3JlYXRlVGFibGVQcm9wcykge1xuICBjb25zdCB7aW5mbywgY29sb3IsIG9wdHMsIGRhdGF9ID0gZGF0YXNldEluZm87XG5cbiAgLy8gdXBkYXRlIG1ldGFkYXRhIGZvciByZW1vdGUgdGlsZWQgZGF0YXNldHNcbiAgY29uc3QgcmVmcmVzaGVkTWV0YWRhdGEgPSBhd2FpdCByZWZyZXNoUmVtb3RlRGF0YShkYXRhc2V0SW5mbyk7XG4gIGxldCBtZXRhZGF0YSA9IG9wdHMubWV0YWRhdGE7XG4gIGlmIChyZWZyZXNoZWRNZXRhZGF0YSkge1xuICAgIG1ldGFkYXRhID0gey4uLm9wdHMubWV0YWRhdGEsIC4uLnJlZnJlc2hlZE1ldGFkYXRhfTtcbiAgICBkYXRhLmZpZWxkcyA9IG1ldGFkYXRhPy5maWVsZHM7XG4gIH1cblxuICBjb25zdCBUYWJsZUNsYXNzID0gZ2V0QXBwbGljYXRpb25Db25maWcoKS50YWJsZSA/PyBLZXBsZXJUYWJsZTtcbiAgY29uc3QgdGFibGUgPSBuZXcgVGFibGVDbGFzcyh7XG4gICAgaW5mbyxcbiAgICBjb2xvcixcbiAgICAuLi5vcHRzLFxuICAgIG1ldGFkYXRhXG4gIH0pO1xuICBhd2FpdCB0YWJsZS5pbXBvcnREYXRhKHtkYXRhfSk7XG5cbiAgcmV0dXJuIHRhYmxlO1xufVxuY29uc3QgVVBEQVRFX1RBQkxFX1RBU0sgPSBUYXNrLmZyb21Qcm9taXNlKHVwZGF0ZVRhYmxlLCAnVVBEQVRFX1RBQkxFX1RBU0snKTtcbmNvbnN0IENSRUFURV9UQUJMRV9UQVNLID0gVGFzay5mcm9tUHJvbWlzZShjcmVhdGVUYWJsZSwgJ0NSRUFURV9UQUJMRV9UQVNLJyk7XG5cbi8qKlxuICogRmV0Y2ggbWV0YWRhdGEgZm9yIHZlY3RvciB0aWxlIGxheWVycyB1c2luZyB0aWxlc2V0TWV0YWRhdGFVcmwgZnJvbSBtZXRhZGF0YVxuICogQHBhcmFtIGRhdGFzZXRJbmZvXG4gKiBAcmV0dXJuc1xuICovXG5hc3luYyBmdW5jdGlvbiByZWZyZXNoUmVtb3RlRGF0YShkYXRhc2V0SW5mbzogQ3JlYXRlVGFibGVQcm9wcykge1xuICAvLyBzbyBmYXIgb25seSB2ZWN0b3IgdGlsZSBsYXllcnMgc2hvdWxkIHJlZnJlc2ggbWV0YWRhdGFcbiAgaWYgKGRhdGFzZXRJbmZvLmluZm8udHlwZSAhPT0gRGF0YXNldFR5cGUuVkVDVE9SX1RJTEUpIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIGNvbnN0IHtyZW1vdGVUaWxlRm9ybWF0LCB0aWxlc2V0TWV0YWRhdGFVcmwsIHRpbGVzZXREYXRhVXJsfSA9XG4gICAgKGRhdGFzZXRJbmZvLm9wdHMubWV0YWRhdGEgYXMgVmVjdG9yVGlsZURhdGFzZXRNZXRhZGF0YSkgfHwge307XG5cbiAgaWYgKFxuICAgICEocmVtb3RlVGlsZUZvcm1hdCA9PT0gUmVtb3RlVGlsZUZvcm1hdC5QTVRJTEVTIHx8IHJlbW90ZVRpbGVGb3JtYXQgPT09IFJlbW90ZVRpbGVGb3JtYXQuTVZUKSB8fFxuICAgIHR5cGVvZiB0aWxlc2V0TWV0YWRhdGFVcmwgIT09ICdzdHJpbmcnIHx8XG4gICAgdHlwZW9mIHRpbGVzZXREYXRhVXJsICE9PSAnc3RyaW5nJ1xuICApIHtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIHRyeSB7XG4gICAgbGV0IHJhd01ldGFkYXRhOiBQTVRpbGVzTWV0YWRhdGEgfCBUaWxlSlNPTiB8IG51bGwgPSBudWxsO1xuICAgIGlmIChyZW1vdGVUaWxlRm9ybWF0ID09PSBSZW1vdGVUaWxlRm9ybWF0Lk1WVCkge1xuICAgICAgcmF3TWV0YWRhdGEgPSBhd2FpdCBnZXRNVlRNZXRhZGF0YSh0aWxlc2V0TWV0YWRhdGFVcmwpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCB0aWxlU291cmNlID0gUE1UaWxlc1NvdXJjZS5jcmVhdGVEYXRhU291cmNlKHRpbGVzZXRNZXRhZGF0YVVybCwge30pO1xuICAgICAgcmF3TWV0YWRhdGEgPSBhd2FpdCB0aWxlU291cmNlLm1ldGFkYXRhO1xuICAgIH1cblxuICAgIGlmIChyYXdNZXRhZGF0YSkge1xuICAgICAgY29uc3QgbWV0YWRhdGEgPSBwYXJzZVZlY3Rvck1ldGFkYXRhKHJhd01ldGFkYXRhKTtcblxuICAgICAgYXdhaXQgZ2V0RmllbGRzRnJvbVRpbGUoe1xuICAgICAgICByZW1vdGVUaWxlRm9ybWF0LFxuICAgICAgICB0aWxlc2V0VXJsOiB0aWxlc2V0RGF0YVVybCxcbiAgICAgICAgbWV0YWRhdGFVcmw6IHRpbGVzZXRNZXRhZGF0YVVybCxcbiAgICAgICAgbWV0YWRhdGFcbiAgICAgIH0pO1xuXG4gICAgICByZXR1cm4gbWV0YWRhdGE7XG4gICAgfVxuICB9IGNhdGNoIChlcnIpIHtcbiAgICAvLyBpZ25vcmUgZm9yIG5vdywgYW5kIHVzZSBvbGQgbWV0YWRhdGE/XG4gIH1cblxuICByZXR1cm4gbnVsbDtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBR0EsSUFBQUEsT0FBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQ0EsSUFBQUMsWUFBQSxHQUFBRixzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUUsTUFBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUcsVUFBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksTUFBQSxHQUFBSixPQUFBO0FBTUEsSUFBQUssUUFBQSxHQUFBTCxPQUFBO0FBR0EsSUFBQU0sYUFBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sZ0JBQUEsR0FBQVAsT0FBQTtBQUFtRixJQUFBUSxTQUFBLHFCQW5CbkY7QUFDQTtBQUFBLFNBQUFDLFFBQUFDLENBQUEsRUFBQUMsQ0FBQSxRQUFBQyxDQUFBLEdBQUFDLE1BQUEsQ0FBQUMsSUFBQSxDQUFB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
|
|
@@ -4,4 +4,4 @@ export declare function getNewDatasetColor(datasets: Datasets): RGBColor;
|
|
|
4
4
|
/**
|
|
5
5
|
* Take datasets payload from addDataToMap, create datasets entry save to visState
|
|
6
6
|
*/
|
|
7
|
-
export declare function createNewDataEntry({ info, data, ...opts }: ProtoDataset, datasets?: Datasets): Datasets;
|
|
7
|
+
export declare function createNewDataEntry({ info, data, ...opts }: ProtoDataset, datasets?: Datasets): Datasets | null;
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { TileJSON } from '@loaders.gl/mvt';
|
|
2
2
|
import { PMTilesMetadata } from '@loaders.gl/pmtiles';
|
|
3
|
-
import {
|
|
3
|
+
import { RemoteTileFormat } from '@kepler.gl/constants';
|
|
4
4
|
import { KeplerLayer } from '@kepler.gl/types';
|
|
5
|
+
import { FilterProps, default as KeplerDataset } from '../kepler-table';
|
|
5
6
|
export declare const getLoaderOptions: () => {
|
|
6
7
|
mvt: {
|
|
7
8
|
workerUrl: string;
|
|
@@ -72,4 +73,19 @@ export declare function getFilterProps(fieldType: string, attribute: TippecanoeL
|
|
|
72
73
|
* @returns Returns true if a dataset can be used as source data for a layer.
|
|
73
74
|
*/
|
|
74
75
|
export declare function matchDatasetType(dataset: KeplerDataset, layer: KeplerLayer): boolean;
|
|
76
|
+
declare type GetFieldsFromTileProps = {
|
|
77
|
+
remoteTileFormat: RemoteTileFormat;
|
|
78
|
+
tilesetUrl: string | null;
|
|
79
|
+
metadataUrl: string | null;
|
|
80
|
+
metadata: VectorTileMetadata | null;
|
|
81
|
+
};
|
|
82
|
+
/**
|
|
83
|
+
* Extracts fields from a tile and updates the metadata object with found fields.
|
|
84
|
+
* Note: this function is for tilesets that don't include fields in metadata (most likely saved with older spec.).
|
|
85
|
+
* @param params.remoteTileFormat The format of the remote tile (MVT or PMTiles).
|
|
86
|
+
* @param params.tilesetUrl The URL of the tileset.
|
|
87
|
+
* @param params.metadataUrl The URL of the metadata.
|
|
88
|
+
* @param params.metadata The metadata object containing fields and tile properties.
|
|
89
|
+
*/
|
|
90
|
+
export declare const getFieldsFromTile: ({ remoteTileFormat, tilesetUrl, metadataUrl, metadata }: GetFieldsFromTileProps) => Promise<void>;
|
|
75
91
|
export {};
|