@kepler.gl/reducers 3.0.0-alpha.0 → 3.0.0-alpha.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/dist/combined-updaters.d.ts +30 -1
- package/dist/combined-updaters.js +222 -4
- package/dist/composer-helpers.d.ts +7 -4
- package/dist/composer-helpers.js +18 -9
- package/dist/composers.d.ts +6 -0
- package/dist/composers.js +3 -3
- package/dist/core.d.ts +1 -1
- package/dist/core.js +16 -6
- package/dist/data-utils.js +2 -3
- package/dist/export-utils.js +2 -2
- package/dist/index.d.ts +2 -3
- package/dist/index.js +37 -16
- package/dist/interaction-utils.d.ts +1 -5
- package/dist/interaction-utils.js +5 -10
- package/dist/layer-utils.d.ts +39 -10
- package/dist/layer-utils.js +110 -35
- package/dist/map-state-updaters.d.ts +33 -2
- package/dist/map-state-updaters.js +278 -19
- package/dist/map-state.d.ts +74 -2
- package/dist/map-state.js +3 -3
- package/dist/map-style-updaters.d.ts +30 -17
- package/dist/map-style-updaters.js +303 -84
- package/dist/map-style.js +3 -3
- package/dist/merger-handler.d.ts +10 -0
- package/dist/merger-handler.js +143 -0
- package/dist/middleware.js +2 -2
- package/dist/provider-state-updaters.js +2 -2
- package/dist/provider-state.js +2 -2
- package/dist/root.d.ts +1 -8
- package/dist/root.js +25 -11
- package/dist/ui-state-updaters.d.ts +9 -2
- package/dist/ui-state-updaters.js +88 -63
- package/dist/ui-state.js +3 -3
- package/dist/vis-state-merger.d.ts +47 -13
- package/dist/vis-state-merger.js +393 -107
- package/dist/vis-state-selectors.js +2 -2
- package/dist/vis-state-updaters.d.ts +136 -10
- package/dist/vis-state-updaters.js +924 -262
- package/dist/vis-state.d.ts +210 -2
- package/dist/vis-state.js +3 -3
- package/package.json +20 -18
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { MapState, UiState, AddDataToMapPayload } from '@kepler.gl/types';
|
|
2
2
|
import { MapStyle } from './map-style-updaters';
|
|
3
3
|
import { ProviderState } from './provider-state-updaters';
|
|
4
|
-
import { loadFilesSuccessUpdaterAction } from '@kepler.gl/actions';
|
|
4
|
+
import { loadFilesSuccessUpdaterAction, MapStyleChangeUpdaterAction, LayerTypeChangeUpdaterAction, ToggleSplitMapUpdaterAction, ReplaceDataInMapPayload } from '@kepler.gl/actions';
|
|
5
5
|
import { VisState } from '@kepler.gl/schemas';
|
|
6
6
|
export declare type KeplerGlState = {
|
|
7
7
|
visState: VisState;
|
|
@@ -15,6 +15,7 @@ export declare const defaultAddDataToMapOptions: {
|
|
|
15
15
|
centerMap: boolean;
|
|
16
16
|
keepExistingConfig: boolean;
|
|
17
17
|
autoCreateLayers: boolean;
|
|
18
|
+
autoCreateTooltips: boolean;
|
|
18
19
|
};
|
|
19
20
|
/**
|
|
20
21
|
* Combine data and full configuration update in a single action
|
|
@@ -48,3 +49,31 @@ export declare const loadFilesSuccessUpdater: (state: KeplerGlState, action: loa
|
|
|
48
49
|
export declare const addDataToMapComposed: (state: KeplerGlState, { payload }: {
|
|
49
50
|
payload: AddDataToMapPayload;
|
|
50
51
|
}) => KeplerGlState;
|
|
52
|
+
/**
|
|
53
|
+
* Updater that changes the map style by calling mapStyleChangeUpdater on visState.
|
|
54
|
+
* In addition to that, it does the following:
|
|
55
|
+
*
|
|
56
|
+
* 1. Update map overlay blending mode in accordance with the colorMode of the
|
|
57
|
+
* base map, but only if it's not in the `normal` mode.
|
|
58
|
+
*
|
|
59
|
+
* 2. Update all the layers which have the `darkBaseMapEnabled` config setting
|
|
60
|
+
* adjusting it in accordance with the colorMode of the base map.
|
|
61
|
+
*
|
|
62
|
+
*/
|
|
63
|
+
export declare const combinedMapStyleChangeUpdater: (state: KeplerGlState, action: MapStyleChangeUpdaterAction) => KeplerGlState;
|
|
64
|
+
/**
|
|
65
|
+
* Updater that changes the layer type by calling `layerTypeChangeUpdater` on visState.
|
|
66
|
+
* In addition to that, if the new layer type has the `darkBaseMapEnabled` config
|
|
67
|
+
* setting, we adjust it in accordance with the colorMode of the base map.s
|
|
68
|
+
*/
|
|
69
|
+
export declare const combinedLayerTypeChangeUpdater: (state: KeplerGlState, action: LayerTypeChangeUpdaterAction) => KeplerGlState;
|
|
70
|
+
/**
|
|
71
|
+
* Make mapLegend active when toggleSplitMap action is called
|
|
72
|
+
*/
|
|
73
|
+
export declare const toggleSplitMapUpdater: (state: KeplerGlState, action: ToggleSplitMapUpdaterAction) => KeplerGlState;
|
|
74
|
+
/**
|
|
75
|
+
* Updater replace a dataset in state
|
|
76
|
+
*/
|
|
77
|
+
export declare const replaceDataInMapUpdater: (state: KeplerGlState, { payload }: {
|
|
78
|
+
payload: ReplaceDataInMapPayload;
|
|
79
|
+
}) => KeplerGlState;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright (c)
|
|
1
|
+
// Copyright (c) 2023 Uber Technologies, Inc.
|
|
2
2
|
//
|
|
3
3
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
4
|
// of this software and associated documentation files (the "Software"), to deal
|
|
@@ -25,7 +25,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
|
|
|
25
25
|
Object.defineProperty(exports, "__esModule", {
|
|
26
26
|
value: true
|
|
27
27
|
});
|
|
28
|
-
exports.addDataToMapComposed = exports.loadFilesSuccessUpdater = exports.addDataToMapUpdater = exports.defaultAddDataToMapOptions = exports.isValidConfig = void 0;
|
|
28
|
+
exports.replaceDataInMapUpdater = exports.toggleSplitMapUpdater = exports.combinedLayerTypeChangeUpdater = exports.combinedMapStyleChangeUpdater = exports.addDataToMapComposed = exports.loadFilesSuccessUpdater = exports.addDataToMapUpdater = exports.defaultAddDataToMapOptions = exports.isValidConfig = void 0;
|
|
29
29
|
|
|
30
30
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
31
31
|
|
|
@@ -45,6 +45,8 @@ var _utils = require("@kepler.gl/utils");
|
|
|
45
45
|
|
|
46
46
|
var _dataUtils = require("./data-utils");
|
|
47
47
|
|
|
48
|
+
var _constants = require("@kepler.gl/constants");
|
|
49
|
+
|
|
48
50
|
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; }
|
|
49
51
|
|
|
50
52
|
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; }
|
|
@@ -106,7 +108,8 @@ exports.isValidConfig = isValidConfig;
|
|
|
106
108
|
var defaultAddDataToMapOptions = {
|
|
107
109
|
centerMap: true,
|
|
108
110
|
keepExistingConfig: false,
|
|
109
|
-
autoCreateLayers: true
|
|
111
|
+
autoCreateLayers: true,
|
|
112
|
+
autoCreateTooltips: true
|
|
110
113
|
};
|
|
111
114
|
/**
|
|
112
115
|
* Combine data and full configuration update in a single action
|
|
@@ -208,5 +211,220 @@ var loadFilesSuccessUpdater = function loadFilesSuccessUpdater(state, action) {
|
|
|
208
211
|
|
|
209
212
|
exports.loadFilesSuccessUpdater = loadFilesSuccessUpdater;
|
|
210
213
|
var addDataToMapComposed = addDataToMapUpdater;
|
|
214
|
+
/**
|
|
215
|
+
* Helper which updates map overlay blending mode in visState,
|
|
216
|
+
* but only if it's not currently in the `normal` mode.
|
|
217
|
+
*/
|
|
218
|
+
|
|
211
219
|
exports.addDataToMapComposed = addDataToMapComposed;
|
|
212
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21iaW5lZC11cGRhdGVycy50cyJdLCJuYW1lcyI6WyJjb21iaW5lZFVwZGF0ZXJzIiwiaXNWYWxpZENvbmZpZyIsImNvbmZpZyIsInZlcnNpb24iLCJkZWZhdWx0QWRkRGF0YVRvTWFwT3B0aW9ucyIsImNlbnRlck1hcCIsImtlZXBFeGlzdGluZ0NvbmZpZyIsImF1dG9DcmVhdGVMYXllcnMiLCJhZGREYXRhVG9NYXBVcGRhdGVyIiwic3RhdGUiLCJwYXlsb2FkIiwiZGF0YXNldHMiLCJpbmZvIiwib3B0aW9ucyIsInBhcnNlZENvbmZpZyIsInZpc1N0YXRlIiwic2NoZW1hIiwicGFyc2VTYXZlZENvbmZpZyIsIm9sZExheWVycyIsImxheWVycyIsImZpbHRlck5ld2x5QWRkZWRMYXllcnMiLCJmaWx0ZXIiLCJubCIsImZpbmQiLCJvbCIsImZpbmRNYXBCb3VuZHNJZkNlbnRlcmVkIiwiYm91bmRzIiwidW5kZWZpbmVkIiwidmlzU3RhdGVVcGRhdGVWaXNEYXRhVXBkYXRlciIsIkJvb2xlYW4iLCJzZXRNYXBJbmZvVXBkYXRlciIsInN0YXRlTWFwQ29uZmlnVXBkYXRlciIsInN0eWxlTWFwQ29uZmlnVXBkYXRlciIsInVpU3RhdGVMb2FkRmlsZXNTdWNjZXNzVXBkYXRlciIsInRvZ2dsZU1vZGFsVXBkYXRlciIsImhhc093blByb3BlcnR5IiwicmVhZE9ubHkiLCJsb2FkRmlsZXNTdWNjZXNzVXBkYXRlciIsImFjdGlvbiIsInBheWxvYWRzIiwicmVzdWx0IiwibmV4dFN0YXRlIiwiZmlsZUxvYWRpbmciLCJmaWxlTG9hZGluZ1Byb2dyZXNzIiwic3RhdGVXaXRoRGF0YSIsIm1hcCIsInAiLCJhZGREYXRhVG9NYXBDb21wb3NlZCJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFvQkE7O0FBSUE7O0FBSUE7O0FBQ0E7O0FBQ0E7O0FBQ0E7O0FBT0E7O0FBQ0E7Ozs7OztBQVVBOztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNB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QyxJQUFBQSxXQUFXLEVBQUUsS0FEUjtBQUVMQyxJQUFBQSxtQkFBbUIsRUFBRTtBQUZoQixHQUFQLENBREYsQ0FEeUIsQ0FBVCxFQU9mbEMsS0FQZSxDQUFsQixDQUhrQixDQVdsQjs7QUFDQSxNQUFNbUMsYUFBYSxHQUFHLCtCQUFTTCxRQUFRLENBQUNNLEdBQVQsQ0FBYSxVQUFBQyxDQUFDO0FBQUEsV0FBSSw2QkFBT3RDLG1CQUFQLEVBQTRCLCtCQUFTc0MsQ0FBVCxDQUE1QixDQUFKO0FBQUEsR0FBZCxDQUFULEVBQ3BCTCxTQURvQixDQUF0QjtBQUdBLFNBQU9HLGFBQVA7QUFDRCxDQW5CTTs7O0FBcUJBLElBQU1HLG9CQUFvQixHQUFHdkMsbUJBQTdCIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIyIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IHtcbiAgdG9nZ2xlTW9kYWxVcGRhdGVyLFxuICBsb2FkRmlsZXNTdWNjZXNzVXBkYXRlciBhcyB1aVN0YXRlTG9hZEZpbGVzU3VjY2Vzc1VwZGF0ZXJcbn0gZnJvbSAnLi91aS1zdGF0ZS11cGRhdGVycyc7XG5pbXBvcnQge1xuICB1cGRhdGVWaXNEYXRhVXBkYXRlciBhcyB2aXNTdGF0ZVVwZGF0ZVZpc0RhdGFVcGRhdGVyLFxuICBzZXRNYXBJbmZvVXBkYXRlclxufSBmcm9tICcuL3Zpcy1zdGF0ZS11cGRhdGVycyc7XG5pbXBvcnQge3JlY2VpdmVNYXBDb25maWdVcGRhdGVyIGFzIHN0YXRlTWFwQ29uZmlnVXBkYXRlcn0gZnJvbSAnLi9tYXAtc3RhdGUtdXBkYXRlcnMnO1xuaW1wb3J0IHtyZWNlaXZlTWFwQ29uZmlnVXBkYXRlciBhcyBzdHlsZU1hcENvbmZpZ1VwZGF0ZXJ9IGZyb20gJy4vbWFwLXN0eWxlLXVwZGF0ZXJzJztcbmltcG9ydCB7ZmlsZXNUb0RhdGFQYXlsb2FkfSBmcm9tICdAa2VwbGVyLmdsL3Byb2Nlc3NvcnMnO1xuaW1wb3J0IHtwYXlsb2FkXywgYXBwbHlfLCB3aXRoXywgaWZfLCBjb21wb3NlXywgbWVyZ2VfLCBwaWNrX30gZnJvbSAnLi9jb21wb3Nlci1oZWxwZXJzJztcbmltcG9ydCB7TWFwU3RhdGUsIFVpU3RhdGUsIEFkZERhdGFUb01hcFBheWxvYWQsIFBhcnNlZENvbmZpZ30gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge01hcFN0eWxlfSBmcm9tICcuL21hcC1zdHlsZS11cGRhdGVycyc7XG5pbXBvcnQge1Byb3ZpZGVyU3RhdGV9IGZyb20gJy4vcHJvdmlkZXItc3RhdGUtdXBkYXRlcnMnO1xuaW1wb3J0IHtsb2FkRmlsZXNTdWNjZXNzVXBkYXRlckFjdGlvbn0gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcbmltcG9ydCB7VmlzU3RhdGV9IGZyb20gJ0BrZXBsZXIuZ2wvc2NoZW1hcyc7XG5pbXBvcnQge0xheWVyfSBmcm9tICdAa2VwbGVyLmdsL2xheWVycyc7XG5pbXBvcnQge2lzUGxhaW5PYmplY3R9IGZyb20gJ0BrZXBsZXIuZ2wvdXRpbHMnO1xuaW1wb3J0IHtmaW5kTWFwQm91bmRzfSBmcm9tICcuL2RhdGEtdXRpbHMnO1xuXG5leHBvcnQgdHlwZSBLZXBsZXJHbFN0YXRlID0ge1xuICB2aXNTdGF0ZTogVmlzU3RhdGU7XG4gIG1hcFN0YXRlOiBNYXBTdGF0ZTtcbiAgbWFwU3R5bGU6IE1hcFN0eWxlO1xuICB1aVN0YXRlOiBVaVN0YXRlO1xuICBwcm92aWRlclN0YXRlOiBQcm92aWRlclN0YXRlO1xufTtcblxuLy8gY29tcG9zZSBhY3Rpb24gdG8gYXBwbHkgcmVzdWx0IG11bHRpcGxlIHJlZHVjZXJzLCB3aXRoIHRoZSBvdXRwdXQgb2Ygb25lXG5cbi8qKlxuICogU29tZSBhY3Rpb25zIHdpbGwgYWZmZWN0IHRoZSBlbnRpcmUga2VwbGVyLmxnIGluc3RhbmNlIHN0YXRlLlxuICogVGhlIHVwZGF0ZXJzIGZvciB0aGVzZSBhY3Rpb25zIGlzIGV4cG9ydGVkIGFzIGBjb21iaW5lZFVwZGF0ZXJzYC4gVGhlc2UgdXBkYXRlciB0YWtlIHRoZSBlbnRpcmUgaW5zdGFuY2Ugc3RhdGVcbiAqIGFzIHRoZSBmaXJzdCBhcmd1bWVudC4gUmVhZCBtb3JlIGFib3V0IFtVc2luZyB1cGRhdGVyc10oLi4vYWR2YW5jZWQtdXNhZ2UvdXNpbmctdXBkYXRlcnMubWQpXG4gKiBAcHVibGljXG4gKiBAZXhhbXBsZVxuICpcbiAqIGltcG9ydCBrZXBsZXJHbFJlZHVjZXIsIHtjb21iaW5lZFVwZGF0ZXJzfSBmcm9tICdrZXBsZXIuZ2wvcmVkdWNlcnMnO1xuICogLy8gUm9vdCBSZWR1Y2VyXG4gKiBjb25zdCByZWR1Y2VycyA9IGNvbWJpbmVSZWR1Y2Vycyh7XG4gKiAga2VwbGVyR2w6IGtlcGxlckdsUmVkdWNlcixcbiAqICBhcHA6IGFwcFJlZHVjZXJcbiAqIH0pO1xuICpcbiAqIGNvbnN0IGNvbXBvc2VkUmVkdWNlciA9IChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gKiAgc3dpdGNoIChhY3Rpb24udHlwZSkge1xuICogICAgLy8gYWRkIGRhdGEgdG8gbWFwIGFmdGVyIHJlY2VpdmluZyBkYXRhIGZyb20gcmVtb3RlIHNvdXJjZXNcbiAqICAgIGNhc2UgJ0xPQURfUkVNT1RFX1JFU09VUkNFX1NVQ0NFU1MnOlxuICogICAgICByZXR1cm4ge1xuICogICAgICAgIC4uLnN0YXRlLFxuICogICAgICAgIGtlcGxlckdsOiB7XG4gKiAgICAgICAgICAuLi5zdGF0ZS5rZXBsZXJHbCxcbiAqICAgICAgICAgIC8vIHBhc3MgaW4ga2VwbGVyLmdsIGluc3RhbmNlIHN0YXRlIHRvIGNvbWJpbmVkVXBkYXRlcnNcbiAqICAgICAgICAgIG1hcDogIGNvbWJpbmVkVXBkYXRlcnMuYWRkRGF0YVRvTWFwVXBkYXRlcihcbiAqICAgICAgICAgICBzdGF0ZS5rZXBsZXJHbC5tYXAsXG4gKiAgICAgICAgICAge1xuICogICAgICAgICAgICAgcGF5bG9hZDoge1xuICogICAgICAgICAgICAgICBkYXRhc2V0czogYWN0aW9uLmRhdGFzZXRzLFxuICogICAgICAgICAgICAgICBvcHRpb25zOiB7cmVhZE9ubHk6IHRydWV9LFxuICogICAgICAgICAgICAgICBjb25maWc6IGFjdGlvbi5jb25maWdcbiAqICAgICAgICAgICAgICB9XG4gKiAgICAgICAgICAgIH1cbiAqICAgICAgICAgIClcbiAqICAgICAgICB9XG4gKiAgICAgIH07XG4gKiAgfVxuICogIHJldHVybiByZWR1Y2VycyhzdGF0ZSwgYWN0aW9uKTtcbiAqIH07XG4gKlxuICogZXhwb3J0IGRlZmF1bHQgY29tcG9zZWRSZWR1Y2VyO1xuICovXG5cbi8qIGVzbGludC1kaXNhYmxlIG5vLXVudXNlZC12YXJzICovXG4vLyBAdHMtaWdub3JlXG5jb25zdCBjb21iaW5lZFVwZGF0ZXJzID0gbnVsbDtcbi8qIGVzbGludC1lbmFibGUgbm8tdW51c2VkLXZhcnMgKi9cblxuZXhwb3J0IGNvbnN0IGlzVmFsaWRDb25maWcgPSBjb25maWcgPT5cbiAgaXNQbGFpbk9iamVjdChjb25maWcpICYmIGlzUGxhaW5PYmplY3QoY29uZmlnLmNvbmZpZykgJiYgY29uZmlnLnZlcnNpb247XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0QWRkRGF0YVRvTWFwT3B0aW9ucyA9IHtcbiAgY2VudGVyTWFwOiB0cnVlLFxuICBrZWVwRXhpc3RpbmdDb25maWc6IGZhbHNlLFxuICBhdXRvQ3JlYXRlTGF5ZXJzOiB0cnVlXG59O1xuXG4vKipcbiAqIENvbWJpbmUgZGF0YSBhbmQgZnVsbCBjb25maWd1cmF0aW9uIHVwZGF0ZSBpbiBhIHNpbmdsZSBhY3Rpb25cbiAqXG4gKiBAbWVtYmVyb2YgY29tYmluZWRVcGRhdGVyc1xuICogQHBhcmFtIHtPYmplY3R9IHN0YXRlIGtlcGxlci5nbCBpbnN0YW5jZSBzdGF0ZSwgY29udGFpbmluZyBhbGwgc3VicmVkdWNlciBzdGF0ZVxuICogQHBhcmFtIHtPYmplY3R9IGFjdGlvblxuICogQHBhcmFtIHtPYmplY3R9IGFjdGlvbi5wYXlsb2FkIGB7ZGF0YXNldHMsIG9wdGlvbnMsIGNvbmZpZ31gXG4gKiBAcGFyYW0gYWN0aW9uLnBheWxvYWQuZGF0YXNldHMgLSAqKipyZXF1aXJlZCoqIGRhdGFzZXRzIGNhbiBiZSBhIGRhdGFzZXQgb3IgYW4gYXJyYXkgb2YgZGF0YXNldHNcbiAqIEVhY2ggZGF0YXNldCBvYmplY3QgbmVlZHMgdG8gaGF2ZSBgaW5mb2AgYW5kIGBkYXRhYCBwcm9wZXJ0eS5cbiAqIEBwYXJhbSBbYWN0aW9uLnBheWxvYWQub3B0aW9uc10gb3B0aW9uIG9iamVjdCBge2NlbnRlck1hcDogdHJ1ZX1gXG4gKiBAcGFyYW0gW2FjdGlvbi5wYXlsb2FkLmNvbmZpZ10gbWFwIGNvbmZpZ1xuICogQHBhcmFtIFthY3Rpb24ucGF5bG9hZC5pbmZvXSBtYXAgaW5mbyBjb250YWlucyB0aXRsZSBhbmQgZGVzY3JpcHRpb25cbiAqIEByZXR1cm5zIG5leHRTdGF0ZVxuICpcbiAqIEB0eXBlZGVmIHtPYmplY3R9IERhdGFzZXRcbiAqIEBwcm9wZXJ0eSBpbmZvIC1pbmZvIG9mIGEgZGF0YXNldFxuICogQHByb3BlcnR5IGluZm8uaWQgLSBpZCBvZiB0aGlzIGRhdGFzZXQuIElmIGNvbmZpZyBpcyBkZWZpbmVkLCBgaWRgIHNob3VsZCBtYXRjaGVzIHRoZSBgZGF0YUlkYCBpbiBjb25maWcuXG4gKiBAcHJvcGVydHkgaW5mby5sYWJlbCAtIEEgZGlzcGxheSBuYW1lIG9mIHRoaXMgZGF0YXNldFxuICogQHByb3BlcnR5IGRhdGEgLSAqKipyZXF1aXJlZCoqIFRoZSBkYXRhIG9iamVjdCwgaW4gYSB0YWJ1bGFyIGZvcm1hdCB3aXRoIDIgcHJvcGVydGllcyBgZmllbGRzYCBhbmQgYHJvd3NgXG4gKiBAcHJvcGVydHkgZGF0YS5maWVsZHMgLSAqKipyZXF1aXJlZCoqIEFycmF5IG9mIGZpZWxkcyxcbiAqIEBwcm9wZXJ0eSBkYXRhLmZpZWxkcy5uYW1lIC0gKioqcmVxdWlyZWQqKiBOYW1lIG9mIHRoZSBmaWVsZCxcbiAqIEBwcm9wZXJ0eSBkYXRhLnJvd3MgLSAqKipyZXF1aXJlZCoqIEFycmF5IG9mIHJvd3MsIGluIGEgdGFidWxhciBmb3JtYXQgd2l0aCBgZmllbGRzYCBhbmQgYHJvd3NgXG4gKlxuICogQHB1YmxpY1xuICovXG5leHBvcnQgY29uc3QgYWRkRGF0YVRvTWFwVXBkYXRlciA9IChcbiAgc3RhdGU6IEtlcGxlckdsU3RhdGUsXG4gIHtwYXlsb2FkfToge3BheWxvYWQ6IEFkZERhdGFUb01hcFBheWxvYWR9XG4pOiBLZXBsZXJHbFN0YXRlID0+IHtcbiAgY29uc3Qge2RhdGFzZXRzLCBjb25maWcsIGluZm99ID0gcGF5bG9hZDtcblxuICBjb25zdCBvcHRpb25zID0ge1xuICAgIC4uLmRlZmF1bHRBZGREYXRhVG9NYXBPcHRpb25zLFxuICAgIC4uLnBheWxvYWQub3B0aW9uc1xuICB9O1xuXG4gIC8vIEB0cy1leHBlY3QtZXJyb3JcbiAgbGV0IHBhcnNlZENvbmZpZzogUGFyc2VkQ29uZmlnID0gY29uZmlnO1xuXG4gIGlmIChpc1ZhbGlkQ29uZmlnKGNvbmZpZykpIHtcbiAgICAvLyBpZiBwYXNzZWQgaW4gc2F2ZWQgY29uZmlnXG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgIHBhcnNlZENvbmZpZyA9IHN0YXRlLnZpc1N0YXRlLnNjaGVtYS5wYXJzZVNhdmVkQ29uZmlnKGNvbmZpZyk7XG4gIH1cbiAgY29uc3Qgb2xkTGF5ZXJzID0gc3RhdGUudmlzU3RhdGUubGF5ZXJzO1xuICBjb25zdCBmaWx0ZXJOZXdseUFkZGVkTGF5ZXJzID0gKGxheWVyczogTGF5ZXJbXSkgPT5cbiAgICBsYXllcnMuZmlsdGVyKG5sID0+ICFvbGRMYXllcnMuZmluZChvbCA9PiBvbCA9PT0gbmwpKTtcblxuICAvLyBSZXR1cm5zIHVuZGVmaW5lZCBpZiBub3QgZm91bmQsIHRvIG1ha2UgdHlwZXNjcmlwdCBoYXBweVxuICBjb25zdCBmaW5kTWFwQm91bmRzSWZDZW50ZXJlZCA9IChsYXllcnM6IExheWVyW10pID0+IHtcbiAgICBjb25zdCBib3VuZHMgPSBvcHRpb25zLmNlbnRlck1hcCAmJiBmaW5kTWFwQm91bmRzKGxheWVycyk7XG4gICAgcmV0dXJuIGJvdW5kcyA/IGJvdW5kcyA6IHVuZGVmaW5lZDtcbiAgfTtcblxuICByZXR1cm4gY29tcG9zZV88S2VwbGVyR2xTdGF0ZT4oW1xuICAgIHBpY2tfKCd2aXNTdGF0ZScpKFxuICAgICAgYXBwbHlfPFZpc1N0YXRlLCBhbnk+KHZpc1N0YXRlVXBkYXRlVmlzRGF0YVVwZGF0ZXIsIHtcbiAgICAgICAgZGF0YXNldHMsXG4gICAgICAgIG9wdGlvbnMsXG4gICAgICAgIGNvbmZpZzogcGFyc2VkQ29uZmlnXG4gICAgICB9KVxuICAgICksXG5cbiAgICBpZl8oXG4gICAgICBCb29sZWFuKGluZm8pLFxuICAgICAgcGlja18oJ3Zpc1N0YXRlJykoXG4gICAgICAgIGFwcGx5XzxWaXNTdGF0ZSwgYW55PihzZXRNYXBJbmZvVXBkYXRlciwge2luZm99KVxuICAgICAgKVxuICAgICksXG5cbiAgICB3aXRoXygoe3Zpc1N0YXRlfSkgPT5cbiAgICAgIHBpY2tfKCdtYXBTdGF0ZScpKFxuICAgICAgICBhcHBseV8oXG4gICAgICAgICAgc3RhdGVNYXBDb25maWdVcGRhdGVyLFxuICAgICAgICAgIHBheWxvYWRfKHtcbiAgICAgICAgICAgIGNvbmZpZzogcGFyc2VkQ29uZmlnLFxuICAgICAgICAgICAgb3B0aW9ucyxcbiAgICAgICAgICAgIGJvdW5kczogZmluZE1hcEJvdW5kc0lmQ2VudGVyZWQoZmlsdGVyTmV3bHlBZGRlZExheWVycyh2aXNTdGF0ZS5sYXllcnMpKVxuICAgICAgICAgIH0pXG4gICAgICAgIClcbiAgICAgIClcbiAgICApLFxuICAgIHBpY2tfKCdtYXBTdHlsZScpKGFwcGx5XyhzdHlsZU1hcENvbmZpZ1VwZGF0ZXIsIHBheWxvYWRfKHtjb25maWc6IHBhcnNlZENvbmZpZywgb3B0aW9uc30pKSksXG4gICAgcGlja18oJ3VpU3RhdGUnKShhcHBseV8odWlTdGF0ZUxvYWRGaWxlc1N1Y2Nlc3NVcGRhdGVyLCBwYXlsb2FkXyhudWxsKSkpLFxuICAgIHBpY2tfKCd1aVN0YXRlJykoYXBwbHlfKHRvZ2dsZU1vZGFsVXBkYXRlciwgcGF5bG9hZF8obnVsbCkpKSxcbiAgICBwaWNrXygndWlTdGF0ZScpKG1lcmdlXyhvcHRpb25zLmhhc093blByb3BlcnR5KCdyZWFkT25seScpID8ge3JlYWRPbmx5OiBvcHRpb25zLnJlYWRPbmx5fSA6IHt9KSlcbiAgXSkoc3RhdGUpO1xufTtcblxuZXhwb3J0IGNvbnN0IGxvYWRGaWxlc1N1Y2Nlc3NVcGRhdGVyID0gKFxuICBzdGF0ZTogS2VwbGVyR2xTdGF0ZSxcbiAgYWN0aW9uOiBsb2FkRmlsZXNTdWNjZXNzVXBkYXRlckFjdGlvblxuKTogS2VwbGVyR2xTdGF0ZSA9PiB7XG4gIC8vIHN0aWxsIG1vcmUgdG8gbG9hZFxuICBjb25zdCBwYXlsb2FkcyA9IGZpbGVzVG9EYXRhUGF5bG9hZChhY3Rpb24ucmVzdWx0KTtcbiAgY29uc3QgbmV4dFN0YXRlID0gY29tcG9zZV8oW1xuICAgIHBpY2tfKCd2aXNTdGF0ZScpKFxuICAgICAgbWVyZ2VfKHtcbiAgICAgICAgZmlsZUxvYWRpbmc6IGZhbHNlLFxuICAgICAgICBmaWxlTG9hZGluZ1Byb2dyZXNzOiB7fVxuICAgICAgfSlcbiAgICApXG4gIF0pKHN0YXRlKTtcbiAgLy8gbWFrZSBtdWx0aXBsZSBhZGQgZGF0YSB0byBtYXAgY2FsbHNcbiAgY29uc3Qgc3RhdGVXaXRoRGF0YSA9IGNvbXBvc2VfKHBheWxvYWRzLm1hcChwID0+IGFwcGx5XyhhZGREYXRhVG9NYXBVcGRhdGVyLCBwYXlsb2FkXyhwKSkpKShcbiAgICBuZXh0U3RhdGVcbiAgKTtcbiAgcmV0dXJuIHN0YXRlV2l0aERhdGEgYXMgS2VwbGVyR2xTdGF0ZTtcbn07XG5cbmV4cG9ydCBjb25zdCBhZGREYXRhVG9NYXBDb21wb3NlZCA9IGFkZERhdGFUb01hcFVwZGF0ZXI7XG4iXX0=
|
|
220
|
+
|
|
221
|
+
var updateOverlayBlending = function updateOverlayBlending(overlayBlending) {
|
|
222
|
+
return function (visState) {
|
|
223
|
+
if (visState.overlayBlending !== _constants.OVERLAY_BLENDINGS.normal.value) {
|
|
224
|
+
return _objectSpread(_objectSpread({}, visState), {}, {
|
|
225
|
+
overlayBlending: overlayBlending
|
|
226
|
+
});
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
return visState;
|
|
230
|
+
};
|
|
231
|
+
};
|
|
232
|
+
/**
|
|
233
|
+
* Helper which updates `darkBaseMapEnabled` in all the layers in visState which
|
|
234
|
+
* have this config setting (or in one specific layer if the `layerId` param is provided).
|
|
235
|
+
*/
|
|
236
|
+
|
|
237
|
+
|
|
238
|
+
var updateDarkBaseMapLayers = function updateDarkBaseMapLayers(darkBaseMapEnabled) {
|
|
239
|
+
var layerId = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;
|
|
240
|
+
return function (visState) {
|
|
241
|
+
return _objectSpread(_objectSpread({}, visState), {}, {
|
|
242
|
+
layers: visState.layers.map(function (layer) {
|
|
243
|
+
if (!layerId || layer.id === layerId) {
|
|
244
|
+
if (layer.visConfigSettings.hasOwnProperty('darkBaseMapEnabled')) {
|
|
245
|
+
var visConfig = layer.config.visConfig;
|
|
246
|
+
return layer.updateLayerConfig({
|
|
247
|
+
visConfig: _objectSpread(_objectSpread({}, visConfig), {}, {
|
|
248
|
+
darkBaseMapEnabled: darkBaseMapEnabled
|
|
249
|
+
})
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
return layer;
|
|
255
|
+
})
|
|
256
|
+
});
|
|
257
|
+
};
|
|
258
|
+
};
|
|
259
|
+
/**
|
|
260
|
+
* Updater that changes the map style by calling mapStyleChangeUpdater on visState.
|
|
261
|
+
* In addition to that, it does the following:
|
|
262
|
+
*
|
|
263
|
+
* 1. Update map overlay blending mode in accordance with the colorMode of the
|
|
264
|
+
* base map, but only if it's not in the `normal` mode.
|
|
265
|
+
*
|
|
266
|
+
* 2. Update all the layers which have the `darkBaseMapEnabled` config setting
|
|
267
|
+
* adjusting it in accordance with the colorMode of the base map.
|
|
268
|
+
*
|
|
269
|
+
*/
|
|
270
|
+
|
|
271
|
+
|
|
272
|
+
var combinedMapStyleChangeUpdater = function combinedMapStyleChangeUpdater(state, action) {
|
|
273
|
+
var payload = action.payload;
|
|
274
|
+
var mapStyle = state.mapStyle;
|
|
275
|
+
|
|
276
|
+
var getColorMode = function getColorMode(key) {
|
|
277
|
+
var _mapStyle$mapStyles$k;
|
|
278
|
+
|
|
279
|
+
return (_mapStyle$mapStyles$k = mapStyle.mapStyles[key]) === null || _mapStyle$mapStyles$k === void 0 ? void 0 : _mapStyle$mapStyles$k.colorMode;
|
|
280
|
+
};
|
|
281
|
+
|
|
282
|
+
var prevColorMode = getColorMode(mapStyle.styleType);
|
|
283
|
+
var nextColorMode = getColorMode(payload.styleType);
|
|
284
|
+
var visState = state.visState;
|
|
285
|
+
|
|
286
|
+
if (nextColorMode !== prevColorMode) {
|
|
287
|
+
switch (nextColorMode) {
|
|
288
|
+
case _constants.BASE_MAP_COLOR_MODES.DARK:
|
|
289
|
+
visState = (0, _composerHelpers.compose_)([updateOverlayBlending(_constants.OVERLAY_BLENDINGS.screen.value), updateDarkBaseMapLayers(true)])(visState);
|
|
290
|
+
break;
|
|
291
|
+
|
|
292
|
+
case _constants.BASE_MAP_COLOR_MODES.LIGHT:
|
|
293
|
+
visState = (0, _composerHelpers.compose_)([updateOverlayBlending(_constants.OVERLAY_BLENDINGS.darken.value), updateDarkBaseMapLayers(false)])(visState);
|
|
294
|
+
break;
|
|
295
|
+
|
|
296
|
+
default: // do nothing
|
|
297
|
+
|
|
298
|
+
}
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
return _objectSpread(_objectSpread({}, state), {}, {
|
|
302
|
+
visState: visState,
|
|
303
|
+
mapStyle: (0, _mapStyleUpdaters.mapStyleChangeUpdater)(mapStyle, {
|
|
304
|
+
payload: _objectSpread({}, payload)
|
|
305
|
+
})
|
|
306
|
+
});
|
|
307
|
+
};
|
|
308
|
+
/**
|
|
309
|
+
* Updater that changes the layer type by calling `layerTypeChangeUpdater` on visState.
|
|
310
|
+
* In addition to that, if the new layer type has the `darkBaseMapEnabled` config
|
|
311
|
+
* setting, we adjust it in accordance with the colorMode of the base map.s
|
|
312
|
+
*/
|
|
313
|
+
|
|
314
|
+
|
|
315
|
+
exports.combinedMapStyleChangeUpdater = combinedMapStyleChangeUpdater;
|
|
316
|
+
|
|
317
|
+
var combinedLayerTypeChangeUpdater = function combinedLayerTypeChangeUpdater(state, action) {
|
|
318
|
+
var visState = state.visState;
|
|
319
|
+
var oldLayerIndex = visState.layers.findIndex(function (layer) {
|
|
320
|
+
return layer === action.oldLayer;
|
|
321
|
+
});
|
|
322
|
+
visState = (0, _visStateUpdaters.layerTypeChangeUpdater)(visState, action);
|
|
323
|
+
var newLayer = visState.layers[oldLayerIndex];
|
|
324
|
+
|
|
325
|
+
if (newLayer !== null && newLayer !== void 0 && newLayer.visConfigSettings.hasOwnProperty('darkBaseMapEnabled')) {
|
|
326
|
+
var mapStyle = state.mapStyle;
|
|
327
|
+
var colorMode = mapStyle.mapStyles[mapStyle.styleType].colorMode;
|
|
328
|
+
var darkBaseMapEnabled = newLayer.config.visConfig.darkBaseMapEnabled;
|
|
329
|
+
|
|
330
|
+
switch (colorMode) {
|
|
331
|
+
case _constants.BASE_MAP_COLOR_MODES.DARK:
|
|
332
|
+
if (!darkBaseMapEnabled) {
|
|
333
|
+
visState = updateDarkBaseMapLayers(true, newLayer.id)(visState);
|
|
334
|
+
}
|
|
335
|
+
|
|
336
|
+
break;
|
|
337
|
+
|
|
338
|
+
case _constants.BASE_MAP_COLOR_MODES.LIGHT:
|
|
339
|
+
if (darkBaseMapEnabled) {
|
|
340
|
+
visState = updateDarkBaseMapLayers(false, newLayer.id)(visState);
|
|
341
|
+
}
|
|
342
|
+
|
|
343
|
+
break;
|
|
344
|
+
|
|
345
|
+
default: // do nothing
|
|
346
|
+
|
|
347
|
+
}
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
return _objectSpread(_objectSpread({}, state), {}, {
|
|
351
|
+
visState: visState
|
|
352
|
+
});
|
|
353
|
+
};
|
|
354
|
+
/**
|
|
355
|
+
* Make mapLegend active when toggleSplitMap action is called
|
|
356
|
+
*/
|
|
357
|
+
|
|
358
|
+
|
|
359
|
+
exports.combinedLayerTypeChangeUpdater = combinedLayerTypeChangeUpdater;
|
|
360
|
+
|
|
361
|
+
var toggleSplitMapUpdater = function toggleSplitMapUpdater(state, action) {
|
|
362
|
+
var _newState$uiState$map, _newState$uiState$map2;
|
|
363
|
+
|
|
364
|
+
var newState = _objectSpread(_objectSpread({}, state), {}, {
|
|
365
|
+
visState: (0, _visStateUpdaters.toggleSplitMapUpdater)(state.visState, action),
|
|
366
|
+
uiState: (0, _uiStateUpdaters.toggleSplitMapUpdater)(state.uiState),
|
|
367
|
+
mapState: (0, _mapStateUpdaters.toggleSplitMapUpdater)(state.mapState, action)
|
|
368
|
+
});
|
|
369
|
+
|
|
370
|
+
var isSplit = newState.visState.splitMaps.length !== 0;
|
|
371
|
+
var isLegendActive = (_newState$uiState$map = newState.uiState.mapControls) === null || _newState$uiState$map === void 0 ? void 0 : (_newState$uiState$map2 = _newState$uiState$map.mapLegend) === null || _newState$uiState$map2 === void 0 ? void 0 : _newState$uiState$map2.active;
|
|
372
|
+
|
|
373
|
+
if (isSplit && !isLegendActive) {
|
|
374
|
+
newState.uiState = (0, _uiStateUpdaters.toggleMapControlUpdater)(newState.uiState, {
|
|
375
|
+
payload: {
|
|
376
|
+
panelId: 'mapLegend',
|
|
377
|
+
index: action.payload
|
|
378
|
+
}
|
|
379
|
+
});
|
|
380
|
+
}
|
|
381
|
+
|
|
382
|
+
return newState;
|
|
383
|
+
};
|
|
384
|
+
|
|
385
|
+
exports.toggleSplitMapUpdater = toggleSplitMapUpdater;
|
|
386
|
+
var defaultReplaceDataToMapOptions = {
|
|
387
|
+
keepExistingConfig: true,
|
|
388
|
+
centerMap: true,
|
|
389
|
+
autoCreateLayers: false
|
|
390
|
+
};
|
|
391
|
+
/**
|
|
392
|
+
* Updater replace a dataset in state
|
|
393
|
+
*/
|
|
394
|
+
|
|
395
|
+
var replaceDataInMapUpdater = function replaceDataInMapUpdater(state, _ref3) {
|
|
396
|
+
var payload = _ref3.payload;
|
|
397
|
+
var datasetToReplaceId = payload.datasetToReplaceId,
|
|
398
|
+
datasetToUse = payload.datasetToUse,
|
|
399
|
+
_payload$options = payload.options,
|
|
400
|
+
options = _payload$options === void 0 ? {} : _payload$options;
|
|
401
|
+
|
|
402
|
+
var addDataToMapOptions = _objectSpread(_objectSpread({}, defaultReplaceDataToMapOptions), options); // check if dataset is there
|
|
403
|
+
|
|
404
|
+
|
|
405
|
+
if (!state.visState.datasets[datasetToReplaceId]) {
|
|
406
|
+
return state;
|
|
407
|
+
} // datasetToUse is ProtoDataset
|
|
408
|
+
|
|
409
|
+
|
|
410
|
+
var dataIdToUse = datasetToUse.info.id;
|
|
411
|
+
|
|
412
|
+
if (!dataIdToUse) {
|
|
413
|
+
return state;
|
|
414
|
+
} // remove dataset and put dependencies in toBeMerged
|
|
415
|
+
|
|
416
|
+
|
|
417
|
+
var preparedState = _objectSpread(_objectSpread({}, state), {}, {
|
|
418
|
+
visState: (0, _visStateUpdaters.prepareStateForDatasetReplace)(state.visState, datasetToReplaceId, dataIdToUse)
|
|
419
|
+
});
|
|
420
|
+
|
|
421
|
+
var nextState = addDataToMapUpdater(preparedState, (0, _composerHelpers.payload_)({
|
|
422
|
+
datasets: datasetToUse,
|
|
423
|
+
// should zoom to new dataset
|
|
424
|
+
options: addDataToMapOptions
|
|
425
|
+
}));
|
|
426
|
+
return nextState;
|
|
427
|
+
};
|
|
428
|
+
|
|
429
|
+
exports.replaceDataInMapUpdater = replaceDataInMapUpdater;
|
|
430
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21iaW5lZC11cGRhdGVycy50cyJdLCJuYW1lcyI6WyJjb21iaW5lZFVwZGF0ZXJzIiwiaXNWYWxpZENvbmZpZyIsImNvbmZpZyIsInZlcnNpb24iLCJkZWZhdWx0QWRkRGF0YVRvTWFwT3B0aW9ucyIsImNlbnRlck1hcCIsImtlZXBFeGlzdGluZ0NvbmZpZyIsImF1dG9DcmVhdGVMYXllcnMiLCJhdXRvQ3JlYXRlVG9vbHRpcHMiLCJhZGREYXRhVG9NYXBVcGRhdGVyIiwic3RhdGUiLCJwYXlsb2FkIiwiZGF0YXNldHMiLCJpbmZvIiwib3B0aW9ucyIsInBhcnNlZENvbmZpZyIsInZpc1N0YXRlIiwic2NoZW1hIiwicGFyc2VTYXZlZENvbmZpZyIsIm9sZExheWVycyIsImxheWVycyIsImZpbHRlck5ld2x5QWRkZWRMYXllcnMiLCJmaWx0ZXIiLCJubCIsImZpbmQiLCJvbCIsImZpbmRNYXBCb3VuZHNJZkNlbnRlcmVkIiwiYm91bmRzIiwidW5kZWZpbmVkIiwidmlzU3RhdGVVcGRhdGVWaXNEYXRhVXBkYXRlciIsIkJvb2xlYW4iLCJzZXRNYXBJbmZvVXBkYXRlciIsInN0YXRlTWFwQ29uZmlnVXBkYXRlciIsInN0eWxlTWFwQ29uZmlnVXBkYXRlciIsInVpU3RhdGVMb2FkRmlsZXNTdWNjZXNzVXBkYXRlciIsInRvZ2dsZU1vZGFsVXBkYXRlciIsImhhc093blByb3BlcnR5IiwicmVhZE9ubHkiLCJsb2FkRmlsZXNTdWNjZXNzVXBkYXRlciIsImFjdGlvbiIsInBheWxvYWRzIiwicmVzdWx0IiwibmV4dFN0YXRlIiwiZmlsZUxvYWRpbmciLCJmaWxlTG9hZGluZ1Byb2dyZXNzIiwic3RhdGVXaXRoRGF0YSIsIm1hcCIsInAiLCJhZGREYXRhVG9NYXBDb21wb3NlZCIsInVwZGF0ZU92ZXJsYXlCbGVuZGluZyIsIm92ZXJsYXlCbGVuZGluZyIsIk9WRVJMQVlfQkxFTkRJTkdTIiwibm9ybWFsIiwidmFsdWUiLCJ1cGRhdGVEYXJrQmFzZU1hcExheWVycyIsImRhcmtCYXNlTWFwRW5hYmxlZCIsImxheWVySWQiLCJsYXllciIsImlkIiwidmlzQ29uZmlnU2V0dGluZ3MiLCJ2aXNDb25maWciLCJ1cGRhdGVMYXllckNvbmZpZyIsImNvbWJpbmVkTWFwU3R5bGVDaGFuZ2VVcGRhdGVyIiwibWFwU3R5bGUiLCJnZXRDb2xvck1vZGUiLCJrZXkiLCJtYXBTdHlsZXMiLCJjb2xvck1vZGUiLCJwcmV2Q29sb3JNb2RlIiwic3R5bGVUeXBlIiwibmV4dENvbG9yTW9kZSIsIkJBU0VfTUFQX0NPTE9SX01PREVTIiwiREFSSyIsInNjcmVlbiIsIkxJR0hUIiwiZGFya2VuIiwiY29tYmluZWRMYXllclR5cGVDaGFuZ2VVcGRhdGVyIiwib2xkTGF5ZXJJbmRleCIsImZpbmRJbmRleCIsIm9sZExheWVyIiwibmV3TGF5ZXIiLCJ0b2dnbGVTcGxpdE1hcFVwZGF0ZXIiLCJuZXdTdGF0ZSIsInVpU3RhdGUiLCJtYXBTdGF0ZSIsImlzU3BsaXQiLCJzcGxpdE1hcHMiLCJsZW5ndGgiLCJpc0xlZ2VuZEFjdGl2ZSIsIm1hcENvbnRyb2xzIiwibWFwTGVnZW5kIiwiYWN0aXZlIiwicGFuZWxJZCIsImluZGV4IiwiZGVmYXVsdFJlcGxhY2VEYXRhVG9NYXBPcHRpb25zIiwicmVwbGFjZURhdGFJbk1hcFVwZGF0ZXIiLCJkYXRhc2V0VG9SZXBsYWNlSWQiLCJkYXRhc2V0VG9Vc2UiLCJhZGREYXRhVG9NYXBPcHRpb25zIiwiZGF0YUlkVG9Vc2UiLCJwcmVwYXJlZFN0YXRlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQW9CQTs7QUFNQTs7QUFPQTs7QUFJQTs7QUFJQTs7QUFDQTs7QUFhQTs7QUFDQTs7QUFDQTs7Ozs7O0FBVUE7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtB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LENBQUwsRUFBa0Q7QUFDaEQsV0FBT3RGLEtBQVA7QUFDRCxHQVBpQixDQVFsQjs7O0FBQ0EsTUFBTXlGLFdBQVcsR0FBR0YsWUFBWSxDQUFDcEYsSUFBYixDQUFrQjZDLEVBQXRDOztBQUNBLE1BQUksQ0FBQ3lDLFdBQUwsRUFBa0I7QUFDaEIsV0FBT3pGLEtBQVA7QUFDRCxHQVppQixDQWFsQjs7O0FBQ0EsTUFBTTBGLGFBQWEsbUNBQ2QxRixLQURjO0FBRWpCTSxJQUFBQSxRQUFRLEVBQUUscURBQThCTixLQUFLLENBQUNNLFFBQXBDLEVBQThDZ0Ysa0JBQTlDLEVBQWtFRyxXQUFsRTtBQUZPLElBQW5COztBQUtBLE1BQU16RCxTQUFTLEdBQUdqQyxtQkFBbUIsQ0FDbkMyRixhQURtQyxFQUVuQywrQkFBUztBQUNQeEYsSUFBQUEsUUFBUSxFQUFFcUYsWUFESDtBQUVQO0FBQ0FuRixJQUFBQSxPQUFPLEVBQUVvRjtBQUhGLEdBQVQsQ0FGbUMsQ0FBckM7QUFTQSxTQUFPeEQsU0FBUDtBQUNELENBaENNIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIzIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IHtcbiAgdG9nZ2xlTW9kYWxVcGRhdGVyLFxuICBsb2FkRmlsZXNTdWNjZXNzVXBkYXRlciBhcyB1aVN0YXRlTG9hZEZpbGVzU3VjY2Vzc1VwZGF0ZXIsXG4gIHRvZ2dsZU1hcENvbnRyb2xVcGRhdGVyLFxuICB0b2dnbGVTcGxpdE1hcFVwZGF0ZXIgYXMgdWlTdGF0ZVRvZ2dsZVNwbGl0TWFwVXBkYXRlclxufSBmcm9tICcuL3VpLXN0YXRlLXVwZGF0ZXJzJztcbmltcG9ydCB7XG4gIHVwZGF0ZVZpc0RhdGFVcGRhdGVyIGFzIHZpc1N0YXRlVXBkYXRlVmlzRGF0YVVwZGF0ZXIsXG4gIHNldE1hcEluZm9VcGRhdGVyLFxuICBsYXllclR5cGVDaGFuZ2VVcGRhdGVyLFxuICB0b2dnbGVTcGxpdE1hcFVwZGF0ZXIgYXMgdmlzU3RhdGVUb2dnbGVTcGxpdE1hcFVwZGF0ZXIsXG4gIHByZXBhcmVTdGF0ZUZvckRhdGFzZXRSZXBsYWNlXG59IGZyb20gJy4vdmlzLXN0YXRlLXVwZGF0ZXJzJztcbmltcG9ydCB7XG4gIHJlY2VpdmVNYXBDb25maWdVcGRhdGVyIGFzIHN0YXRlTWFwQ29uZmlnVXBkYXRlcixcbiAgdG9nZ2xlU3BsaXRNYXBVcGRhdGVyIGFzIG1hcFN0YXRlVG9nZ2xlU3BsaXRNYXBVcGRhdGVyXG59IGZyb20gJy4vbWFwLXN0YXRlLXVwZGF0ZXJzJztcbmltcG9ydCB7XG4gIG1hcFN0eWxlQ2hhbmdlVXBkYXRlcixcbiAgcmVjZWl2ZU1hcENvbmZpZ1VwZGF0ZXIgYXMgc3R5bGVNYXBDb25maWdVcGRhdGVyXG59IGZyb20gJy4vbWFwLXN0eWxlLXVwZGF0ZXJzJztcbmltcG9ydCB7ZmlsZXNUb0RhdGFQYXlsb2FkfSBmcm9tICdAa2VwbGVyLmdsL3Byb2Nlc3NvcnMnO1xuaW1wb3J0IHtwYXlsb2FkXywgYXBwbHlfLCB3aXRoXywgaWZfLCBjb21wb3NlXywgbWVyZ2VfLCBwaWNrX30gZnJvbSAnLi9jb21wb3Nlci1oZWxwZXJzJztcbmltcG9ydCB7TWFwU3RhdGUsIFVpU3RhdGUsIEFkZERhdGFUb01hcFBheWxvYWQsIFBhcnNlZENvbmZpZ30gZnJvbSAnQGtlcGxlci5nbC90eXBlcyc7XG5pbXBvcnQge01hcFN0eWxlfSBmcm9tICcuL21hcC1zdHlsZS11cGRhdGVycyc7XG5pbXBvcnQge1Byb3ZpZGVyU3RhdGV9IGZyb20gJy4vcHJvdmlkZXItc3RhdGUtdXBkYXRlcnMnO1xuaW1wb3J0IHtcbiAgbG9hZEZpbGVzU3VjY2Vzc1VwZGF0ZXJBY3Rpb24sXG4gIE1hcFN0eWxlQ2hhbmdlVXBkYXRlckFjdGlvbixcbiAgTGF5ZXJUeXBlQ2hhbmdlVXBkYXRlckFjdGlvbixcbiAgVG9nZ2xlU3BsaXRNYXBVcGRhdGVyQWN0aW9uLFxuICBSZXBsYWNlRGF0YUluTWFwUGF5bG9hZFxufSBmcm9tICdAa2VwbGVyLmdsL2FjdGlvbnMnO1xuaW1wb3J0IHtWaXNTdGF0ZX0gZnJvbSAnQGtlcGxlci5nbC9zY2hlbWFzJztcbmltcG9ydCB7TGF5ZXJ9IGZyb20gJ0BrZXBsZXIuZ2wvbGF5ZXJzJztcbmltcG9ydCB7aXNQbGFpbk9iamVjdH0gZnJvbSAnQGtlcGxlci5nbC91dGlscyc7XG5pbXBvcnQge2ZpbmRNYXBCb3VuZHN9IGZyb20gJy4vZGF0YS11dGlscyc7XG5pbXBvcnQge0JBU0VfTUFQX0NPTE9SX01PREVTLCBPVkVSTEFZX0JMRU5ESU5HU30gZnJvbSAnQGtlcGxlci5nbC9jb25zdGFudHMnO1xuXG5leHBvcnQgdHlwZSBLZXBsZXJHbFN0YXRlID0ge1xuICB2aXNTdGF0ZTogVmlzU3RhdGU7XG4gIG1hcFN0YXRlOiBNYXBTdGF0ZTtcbiAgbWFwU3R5bGU6IE1hcFN0eWxlO1xuICB1aVN0YXRlOiBVaVN0YXRlO1xuICBwcm92aWRlclN0YXRlOiBQcm92aWRlclN0YXRlO1xufTtcblxuLy8gY29tcG9zZSBhY3Rpb24gdG8gYXBwbHkgcmVzdWx0IG11bHRpcGxlIHJlZHVjZXJzLCB3aXRoIHRoZSBvdXRwdXQgb2Ygb25lXG5cbi8qKlxuICogU29tZSBhY3Rpb25zIHdpbGwgYWZmZWN0IHRoZSBlbnRpcmUga2VwbGVyLmxnIGluc3RhbmNlIHN0YXRlLlxuICogVGhlIHVwZGF0ZXJzIGZvciB0aGVzZSBhY3Rpb25zIGlzIGV4cG9ydGVkIGFzIGBjb21iaW5lZFVwZGF0ZXJzYC4gVGhlc2UgdXBkYXRlciB0YWtlIHRoZSBlbnRpcmUgaW5zdGFuY2Ugc3RhdGVcbiAqIGFzIHRoZSBmaXJzdCBhcmd1bWVudC4gUmVhZCBtb3JlIGFib3V0IFtVc2luZyB1cGRhdGVyc10oLi4vYWR2YW5jZWQtdXNhZ2UvdXNpbmctdXBkYXRlcnMubWQpXG4gKiBAcHVibGljXG4gKiBAZXhhbXBsZVxuICpcbiAqIGltcG9ydCBrZXBsZXJHbFJlZHVjZXIsIHtjb21iaW5lZFVwZGF0ZXJzfSBmcm9tICdrZXBsZXIuZ2wvcmVkdWNlcnMnO1xuICogLy8gUm9vdCBSZWR1Y2VyXG4gKiBjb25zdCByZWR1Y2VycyA9IGNvbWJpbmVSZWR1Y2Vycyh7XG4gKiAga2VwbGVyR2w6IGtlcGxlckdsUmVkdWNlcixcbiAqICBhcHA6IGFwcFJlZHVjZXJcbiAqIH0pO1xuICpcbiAqIGNvbnN0IGNvbXBvc2VkUmVkdWNlciA9IChzdGF0ZSwgYWN0aW9uKSA9PiB7XG4gKiAgc3dpdGNoIChhY3Rpb24udHlwZSkge1xuICogICAgLy8gYWRkIGRhdGEgdG8gbWFwIGFmdGVyIHJlY2VpdmluZyBkYXRhIGZyb20gcmVtb3RlIHNvdXJjZXNcbiAqICAgIGNhc2UgJ0xPQURfUkVNT1RFX1JFU09VUkNFX1NVQ0NFU1MnOlxuICogICAgICByZXR1cm4ge1xuICogICAgICAgIC4uLnN0YXRlLFxuICogICAgICAgIGtlcGxlckdsOiB7XG4gKiAgICAgICAgICAuLi5zdGF0ZS5rZXBsZXJHbCxcbiAqICAgICAgICAgIC8vIHBhc3MgaW4ga2VwbGVyLmdsIGluc3RhbmNlIHN0YXRlIHRvIGNvbWJpbmVkVXBkYXRlcnNcbiAqICAgICAgICAgIG1hcDogIGNvbWJpbmVkVXBkYXRlcnMuYWRkRGF0YVRvTWFwVXBkYXRlcihcbiAqICAgICAgICAgICBzdGF0ZS5rZXBsZXJHbC5tYXAsXG4gKiAgICAgICAgICAge1xuICogICAgICAgICAgICAgcGF5bG9hZDoge1xuICogICAgICAgICAgICAgICBkYXRhc2V0czogYWN0aW9uLmRhdGFzZXRzLFxuICogICAgICAgICAgICAgICBvcHRpb25zOiB7cmVhZE9ubHk6IHRydWV9LFxuICogICAgICAgICAgICAgICBjb25maWc6IGFjdGlvbi5jb25maWdcbiAqICAgICAgICAgICAgICB9XG4gKiAgICAgICAgICAgIH1cbiAqICAgICAgICAgIClcbiAqICAgICAgICB9XG4gKiAgICAgIH07XG4gKiAgfVxuICogIHJldHVybiByZWR1Y2VycyhzdGF0ZSwgYWN0aW9uKTtcbiAqIH07XG4gKlxuICogZXhwb3J0IGRlZmF1bHQgY29tcG9zZWRSZWR1Y2VyO1xuICovXG5cbi8qIGVzbGludC1kaXNhYmxlIG5vLXVudXNlZC12YXJzICovXG4vLyBAdHMtaWdub3JlXG5jb25zdCBjb21iaW5lZFVwZGF0ZXJzID0gbnVsbDtcbi8qIGVzbGludC1lbmFibGUgbm8tdW51c2VkLXZhcnMgKi9cblxuZXhwb3J0IGNvbnN0IGlzVmFsaWRDb25maWcgPSBjb25maWcgPT5cbiAgaXNQbGFpbk9iamVjdChjb25maWcpICYmIGlzUGxhaW5PYmplY3QoY29uZmlnLmNvbmZpZykgJiYgY29uZmlnLnZlcnNpb247XG5cbmV4cG9ydCBjb25zdCBkZWZhdWx0QWRkRGF0YVRvTWFwT3B0aW9ucyA9IHtcbiAgY2VudGVyTWFwOiB0cnVlLFxuICBrZWVwRXhpc3RpbmdDb25maWc6IGZhbHNlLFxuICBhdXRvQ3JlYXRlTGF5ZXJzOiB0cnVlLFxuICBhdXRvQ3JlYXRlVG9vbHRpcHM6IHRydWVcbn07XG5cbi8qKlxuICogQ29tYmluZSBkYXRhIGFuZCBmdWxsIGNvbmZpZ3VyYXRpb24gdXBkYXRlIGluIGEgc2luZ2xlIGFjdGlvblxuICpcbiAqIEBtZW1iZXJvZiBjb21iaW5lZFVwZGF0ZXJzXG4gKiBAcGFyYW0ge09iamVjdH0gc3RhdGUga2VwbGVyLmdsIGluc3RhbmNlIHN0YXRlLCBjb250YWluaW5nIGFsbCBzdWJyZWR1Y2VyIHN0YXRlXG4gKiBAcGFyYW0ge09iamVjdH0gYWN0aW9uXG4gKiBAcGFyYW0ge09iamVjdH0gYWN0aW9uLnBheWxvYWQgYHtkYXRhc2V0cywgb3B0aW9ucywgY29uZmlnfWBcbiAqIEBwYXJhbSBhY3Rpb24ucGF5bG9hZC5kYXRhc2V0cyAtICoqKnJlcXVpcmVkKiogZGF0YXNldHMgY2FuIGJlIGEgZGF0YXNldCBvciBhbiBhcnJheSBvZiBkYXRhc2V0c1xuICogRWFjaCBkYXRhc2V0IG9iamVjdCBuZWVkcyB0byBoYXZlIGBpbmZvYCBhbmQgYGRhdGFgIHByb3BlcnR5LlxuICogQHBhcmFtIFthY3Rpb24ucGF5bG9hZC5vcHRpb25zXSBvcHRpb24gb2JqZWN0IGB7Y2VudGVyTWFwOiB0cnVlfWBcbiAqIEBwYXJhbSBbYWN0aW9uLnBheWxvYWQuY29uZmlnXSBtYXAgY29uZmlnXG4gKiBAcGFyYW0gW2FjdGlvbi5wYXlsb2FkLmluZm9dIG1hcCBpbmZvIGNvbnRhaW5zIHRpdGxlIGFuZCBkZXNjcmlwdGlvblxuICogQHJldHVybnMgbmV4dFN0YXRlXG4gKlxuICogQHR5cGVkZWYge09iamVjdH0gRGF0YXNldFxuICogQHByb3BlcnR5IGluZm8gLWluZm8gb2YgYSBkYXRhc2V0XG4gKiBAcHJvcGVydHkgaW5mby5pZCAtIGlkIG9mIHRoaXMgZGF0YXNldC4gSWYgY29uZmlnIGlzIGRlZmluZWQsIGBpZGAgc2hvdWxkIG1hdGNoZXMgdGhlIGBkYXRhSWRgIGluIGNvbmZpZy5cbiAqIEBwcm9wZXJ0eSBpbmZvLmxhYmVsIC0gQSBkaXNwbGF5IG5hbWUgb2YgdGhpcyBkYXRhc2V0XG4gKiBAcHJvcGVydHkgZGF0YSAtICoqKnJlcXVpcmVkKiogVGhlIGRhdGEgb2JqZWN0LCBpbiBhIHRhYnVsYXIgZm9ybWF0IHdpdGggMiBwcm9wZXJ0aWVzIGBmaWVsZHNgIGFuZCBgcm93c2BcbiAqIEBwcm9wZXJ0eSBkYXRhLmZpZWxkcyAtICoqKnJlcXVpcmVkKiogQXJyYXkgb2YgZmllbGRzLFxuICogQHByb3BlcnR5IGRhdGEuZmllbGRzLm5hbWUgLSAqKipyZXF1aXJlZCoqIE5hbWUgb2YgdGhlIGZpZWxkLFxuICogQHByb3BlcnR5IGRhdGEucm93cyAtICoqKnJlcXVpcmVkKiogQXJyYXkgb2Ygcm93cywgaW4gYSB0YWJ1bGFyIGZvcm1hdCB3aXRoIGBmaWVsZHNgIGFuZCBgcm93c2BcbiAqXG4gKiBAcHVibGljXG4gKi9cbmV4cG9ydCBjb25zdCBhZGREYXRhVG9NYXBVcGRhdGVyID0gKFxuICBzdGF0ZTogS2VwbGVyR2xTdGF0ZSxcbiAge3BheWxvYWR9OiB7cGF5bG9hZDogQWRkRGF0YVRvTWFwUGF5bG9hZH1cbik6IEtlcGxlckdsU3RhdGUgPT4ge1xuICBjb25zdCB7ZGF0YXNldHMsIGNvbmZpZywgaW5mb30gPSBwYXlsb2FkO1xuXG4gIGNvbnN0IG9wdGlvbnMgPSB7XG4gICAgLi4uZGVmYXVsdEFkZERhdGFUb01hcE9wdGlvbnMsXG4gICAgLi4ucGF5bG9hZC5vcHRpb25zXG4gIH07XG5cbiAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICBsZXQgcGFyc2VkQ29uZmlnOiBQYXJzZWRDb25maWcgPSBjb25maWc7XG5cbiAgaWYgKGlzVmFsaWRDb25maWcoY29uZmlnKSkge1xuICAgIC8vIGlmIHBhc3NlZCBpbiBzYXZlZCBjb25maWdcbiAgICAvLyBAdHMtZXhwZWN0LWVycm9yXG4gICAgcGFyc2VkQ29uZmlnID0gc3RhdGUudmlzU3RhdGUuc2NoZW1hLnBhcnNlU2F2ZWRDb25maWcoY29uZmlnKTtcbiAgfVxuICBjb25zdCBvbGRMYXllcnMgPSBzdGF0ZS52aXNTdGF0ZS5sYXllcnM7XG4gIGNvbnN0IGZpbHRlck5ld2x5QWRkZWRMYXllcnMgPSAobGF5ZXJzOiBMYXllcltdKSA9PlxuICAgIGxheWVycy5maWx0ZXIobmwgPT4gIW9sZExheWVycy5maW5kKG9sID0+IG9sID09PSBubCkpO1xuXG4gIC8vIFJldHVybnMgdW5kZWZpbmVkIGlmIG5vdCBmb3VuZCwgdG8gbWFrZSB0eXBlc2NyaXB0IGhhcHB5XG4gIGNvbnN0IGZpbmRNYXBCb3VuZHNJZkNlbnRlcmVkID0gKGxheWVyczogTGF5ZXJbXSkgPT4ge1xuICAgIGNvbnN0IGJvdW5kcyA9IG9wdGlvbnMuY2VudGVyTWFwICYmIGZpbmRNYXBCb3VuZHMobGF5ZXJzKTtcbiAgICByZXR1cm4gYm91bmRzID8gYm91bmRzIDogdW5kZWZpbmVkO1xuICB9O1xuXG4gIHJldHVybiBjb21wb3NlXzxLZXBsZXJHbFN0YXRlPihbXG4gICAgcGlja18oJ3Zpc1N0YXRlJykoXG4gICAgICBhcHBseV88VmlzU3RhdGUsIGFueT4odmlzU3RhdGVVcGRhdGVWaXNEYXRhVXBkYXRlciwge1xuICAgICAgICBkYXRhc2V0cyxcbiAgICAgICAgb3B0aW9ucyxcbiAgICAgICAgY29uZmlnOiBwYXJzZWRDb25maWdcbiAgICAgIH0pXG4gICAgKSxcblxuICAgIGlmXyhcbiAgICAgIEJvb2xlYW4oaW5mbyksXG4gICAgICBwaWNrXygndmlzU3RhdGUnKShcbiAgICAgICAgYXBwbHlfPFZpc1N0YXRlLCBhbnk+KHNldE1hcEluZm9VcGRhdGVyLCB7aW5mb30pXG4gICAgICApXG4gICAgKSxcblxuICAgIHdpdGhfKCh7dmlzU3RhdGV9KSA9PlxuICAgICAgcGlja18oJ21hcFN0YXRlJykoXG4gICAgICAgIGFwcGx5XyhcbiAgICAgICAgICBzdGF0ZU1hcENvbmZpZ1VwZGF0ZXIsXG4gICAgICAgICAgcGF5bG9hZF8oe1xuICAgICAgICAgICAgY29uZmlnOiBwYXJzZWRDb25maWcsXG4gICAgICAgICAgICBvcHRpb25zLFxuICAgICAgICAgICAgYm91bmRzOiBmaW5kTWFwQm91bmRzSWZDZW50ZXJlZChmaWx0ZXJOZXdseUFkZGVkTGF5ZXJzKHZpc1N0YXRlLmxheWVycykpXG4gICAgICAgICAgfSlcbiAgICAgICAgKVxuICAgICAgKVxuICAgICksXG4gICAgcGlja18oJ21hcFN0eWxlJykoYXBwbHlfKHN0eWxlTWFwQ29uZmlnVXBkYXRlciwgcGF5bG9hZF8oe2NvbmZpZzogcGFyc2VkQ29uZmlnLCBvcHRpb25zfSkpKSxcbiAgICBwaWNrXygndWlTdGF0ZScpKGFwcGx5Xyh1aVN0YXRlTG9hZEZpbGVzU3VjY2Vzc1VwZGF0ZXIsIHBheWxvYWRfKG51bGwpKSksXG4gICAgcGlja18oJ3VpU3RhdGUnKShhcHBseV8odG9nZ2xlTW9kYWxVcGRhdGVyLCBwYXlsb2FkXyhudWxsKSkpLFxuICAgIHBpY2tfKCd1aVN0YXRlJykobWVyZ2VfKG9wdGlvbnMuaGFzT3duUHJvcGVydHkoJ3JlYWRPbmx5JykgPyB7cmVhZE9ubHk6IG9wdGlvbnMucmVhZE9ubHl9IDoge30pKVxuICBdKShzdGF0ZSk7XG59O1xuXG5leHBvcnQgY29uc3QgbG9hZEZpbGVzU3VjY2Vzc1VwZGF0ZXIgPSAoXG4gIHN0YXRlOiBLZXBsZXJHbFN0YXRlLFxuICBhY3Rpb246IGxvYWRGaWxlc1N1Y2Nlc3NVcGRhdGVyQWN0aW9uXG4pOiBLZXBsZXJHbFN0YXRlID0+IHtcbiAgLy8gc3RpbGwgbW9yZSB0byBsb2FkXG4gIGNvbnN0IHBheWxvYWRzID0gZmlsZXNUb0RhdGFQYXlsb2FkKGFjdGlvbi5yZXN1bHQpO1xuICBjb25zdCBuZXh0U3RhdGUgPSBjb21wb3NlXyhbXG4gICAgcGlja18oJ3Zpc1N0YXRlJykoXG4gICAgICBtZXJnZV8oe1xuICAgICAgICBmaWxlTG9hZGluZzogZmFsc2UsXG4gICAgICAgIGZpbGVMb2FkaW5nUHJvZ3Jlc3M6IHt9XG4gICAgICB9KVxuICAgIClcbiAgXSkoc3RhdGUpO1xuICAvLyBtYWtlIG11bHRpcGxlIGFkZCBkYXRhIHRvIG1hcCBjYWxsc1xuICBjb25zdCBzdGF0ZVdpdGhEYXRhID0gY29tcG9zZV8ocGF5bG9hZHMubWFwKHAgPT4gYXBwbHlfKGFkZERhdGFUb01hcFVwZGF0ZXIsIHBheWxvYWRfKHApKSkpKFxuICAgIG5leHRTdGF0ZVxuICApO1xuICByZXR1cm4gc3RhdGVXaXRoRGF0YSBhcyBLZXBsZXJHbFN0YXRlO1xufTtcblxuZXhwb3J0IGNvbnN0IGFkZERhdGFUb01hcENvbXBvc2VkID0gYWRkRGF0YVRvTWFwVXBkYXRlcjtcblxuLyoqXG4gKiBIZWxwZXIgd2hpY2ggdXBkYXRlcyBtYXAgb3ZlcmxheSBibGVuZGluZyBtb2RlIGluIHZpc1N0YXRlLFxuICogYnV0IG9ubHkgaWYgaXQncyBub3QgY3VycmVudGx5IGluIHRoZSBgbm9ybWFsYCBtb2RlLlxuICovXG5jb25zdCB1cGRhdGVPdmVybGF5QmxlbmRpbmcgPSBvdmVybGF5QmxlbmRpbmcgPT4gdmlzU3RhdGUgPT4ge1xuICBpZiAodmlzU3RhdGUub3ZlcmxheUJsZW5kaW5nICE9PSBPVkVSTEFZX0JMRU5ESU5HUy5ub3JtYWwudmFsdWUpIHtcbiAgICByZXR1cm4ge1xuICAgICAgLi4udmlzU3RhdGUsXG4gICAgICBvdmVybGF5QmxlbmRpbmdcbiAgICB9O1xuICB9XG4gIHJldHVybiB2aXNTdGF0ZTtcbn07XG5cbi8qKlxuICogSGVscGVyIHdoaWNoIHVwZGF0ZXMgYGRhcmtCYXNlTWFwRW5hYmxlZGAgaW4gYWxsIHRoZSBsYXllcnMgaW4gdmlzU3RhdGUgd2hpY2hcbiAqIGhhdmUgdGhpcyBjb25maWcgc2V0dGluZyAob3IgaW4gb25lIHNwZWNpZmljIGxheWVyIGlmIHRoZSBgbGF5ZXJJZGAgcGFyYW0gaXMgcHJvdmlkZWQpLlxuICovXG5jb25zdCB1cGRhdGVEYXJrQmFzZU1hcExheWVycyA9IChcbiAgZGFya0Jhc2VNYXBFbmFibGVkOiBib29sZWFuLFxuICBsYXllcklkOiBzdHJpbmcgfCBudWxsID0gbnVsbFxuKSA9PiB2aXNTdGF0ZSA9PiAoe1xuICAuLi52aXNTdGF0ZSxcbiAgbGF5ZXJzOiB2aXNTdGF0ZS5sYXllcnMubWFwKGxheWVyID0+IHtcbiAgICBpZiAoIWxheWVySWQgfHwgbGF5ZXIuaWQgPT09IGxheWVySWQpIHtcbiAgICAgIGlmIChsYXllci52aXNDb25maWdTZXR0aW5ncy5oYXNPd25Qcm9wZXJ0eSgnZGFya0Jhc2VNYXBFbmFibGVkJykpIHtcbiAgICAgICAgY29uc3Qge3Zpc0NvbmZpZ30gPSBsYXllci5jb25maWc7XG4gICAgICAgIHJldHVybiBsYXllci51cGRhdGVMYXllckNvbmZpZyh7XG4gICAgICAgICAgdmlzQ29uZmlnOiB7Li4udmlzQ29uZmlnLCBkYXJrQmFzZU1hcEVuYWJsZWR9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gbGF5ZXI7XG4gIH0pXG59KTtcblxuLyoqXG4gKiBVcGRhdGVyIHRoYXQgY2hhbmdlcyB0aGUgbWFwIHN0eWxlIGJ5IGNhbGxpbmcgbWFwU3R5bGVDaGFuZ2VVcGRhdGVyIG9uIHZpc1N0YXRlLlxuICogSW4gYWRkaXRpb24gdG8gdGhhdCwgaXQgZG9lcyB0aGUgZm9sbG93aW5nOlxuICpcbiAqICAgMS4gVXBkYXRlIG1hcCBvdmVybGF5IGJsZW5kaW5nIG1vZGUgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBjb2xvck1vZGUgb2YgdGhlXG4gKiAgICAgIGJhc2UgbWFwLCBidXQgb25seSBpZiBpdCdzIG5vdCBpbiB0aGUgYG5vcm1hbGAgbW9kZS5cbiAqXG4gKiAgIDIuIFVwZGF0ZSBhbGwgdGhlIGxheWVycyB3aGljaCBoYXZlIHRoZSBgZGFya0Jhc2VNYXBFbmFibGVkYCBjb25maWcgc2V0dGluZ1xuICogICAgICBhZGp1c3RpbmcgaXQgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBjb2xvck1vZGUgb2YgdGhlIGJhc2UgbWFwLlxuICpcbiAqL1xuZXhwb3J0IGNvbnN0IGNvbWJpbmVkTWFwU3R5bGVDaGFuZ2VVcGRhdGVyID0gKFxuICBzdGF0ZTogS2VwbGVyR2xTdGF0ZSxcbiAgYWN0aW9uOiBNYXBTdHlsZUNoYW5nZVVwZGF0ZXJBY3Rpb25cbik6IEtlcGxlckdsU3RhdGUgPT4ge1xuICBjb25zdCB7cGF5bG9hZH0gPSBhY3Rpb247XG4gIGNvbnN0IHttYXBTdHlsZX0gPSBzdGF0ZTtcbiAgY29uc3QgZ2V0Q29sb3JNb2RlID0ga2V5ID0+IG1hcFN0eWxlLm1hcFN0eWxlc1trZXldPy5jb2xvck1vZGU7XG4gIGNvbnN0IHByZXZDb2xvck1vZGUgPSBnZXRDb2xvck1vZGUobWFwU3R5bGUuc3R5bGVUeXBlKTtcbiAgY29uc3QgbmV4dENvbG9yTW9kZSA9IGdldENvbG9yTW9kZShwYXlsb2FkLnN0eWxlVHlwZSk7XG4gIGxldCB7dmlzU3RhdGV9ID0gc3RhdGU7XG4gIGlmIChuZXh0Q29sb3JNb2RlICE9PSBwcmV2Q29sb3JNb2RlKSB7XG4gICAgc3dpdGNoIChuZXh0Q29sb3JNb2RlKSB7XG4gICAgICBjYXNlIEJBU0VfTUFQX0NPTE9SX01PREVTLkRBUks6XG4gICAgICAgIHZpc1N0YXRlID0gY29tcG9zZV8oW1xuICAgICAgICAgIHVwZGF0ZU92ZXJsYXlCbGVuZGluZyhPVkVSTEFZX0JMRU5ESU5HUy5zY3JlZW4udmFsdWUpLFxuICAgICAgICAgIHVwZGF0ZURhcmtCYXNlTWFwTGF5ZXJzKHRydWUpXG4gICAgICAgIF0pKHZpc1N0YXRlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlIEJBU0VfTUFQX0NPTE9SX01PREVTLkxJR0hUOlxuICAgICAgICB2aXNTdGF0ZSA9IGNvbXBvc2VfKFtcbiAgICAgICAgICB1cGRhdGVPdmVybGF5QmxlbmRpbmcoT1ZFUkxBWV9CTEVORElOR1MuZGFya2VuLnZhbHVlKSxcbiAgICAgICAgICB1cGRhdGVEYXJrQmFzZU1hcExheWVycyhmYWxzZSlcbiAgICAgICAgXSkodmlzU3RhdGUpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAvLyBkbyBub3RoaW5nXG4gICAgfVxuICB9XG4gIHJldHVybiB7XG4gICAgLi4uc3RhdGUsXG4gICAgdmlzU3RhdGUsXG4gICAgbWFwU3R5bGU6IG1hcFN0eWxlQ2hhbmdlVXBkYXRlcihtYXBTdHlsZSwge3BheWxvYWQ6IHsuLi5wYXlsb2FkfX0pXG4gIH07XG59O1xuXG4vKipcbiAqIFVwZGF0ZXIgdGhhdCBjaGFuZ2VzIHRoZSBsYXllciB0eXBlIGJ5IGNhbGxpbmcgYGxheWVyVHlwZUNoYW5nZVVwZGF0ZXJgIG9uIHZpc1N0YXRlLlxuICogSW4gYWRkaXRpb24gdG8gdGhhdCwgaWYgdGhlIG5ldyBsYXllciB0eXBlIGhhcyB0aGUgYGRhcmtCYXNlTWFwRW5hYmxlZGAgY29uZmlnXG4gKiBzZXR0aW5nLCB3ZSBhZGp1c3QgaXQgaW4gYWNjb3JkYW5jZSB3aXRoIHRoZSBjb2xvck1vZGUgb2YgdGhlIGJhc2UgbWFwLnNcbiAqL1xuZXhwb3J0IGNvbnN0IGNvbWJpbmVkTGF5ZXJUeXBlQ2hhbmdlVXBkYXRlciA9IChcbiAgc3RhdGU6IEtlcGxlckdsU3RhdGUsXG4gIGFjdGlvbjogTGF5ZXJUeXBlQ2hhbmdlVXBkYXRlckFjdGlvblxuKTogS2VwbGVyR2xTdGF0ZSA9PiB7XG4gIGxldCB7dmlzU3RhdGV9ID0gc3RhdGU7XG4gIGNvbnN0IG9sZExheWVySW5kZXggPSB2aXNTdGF0ZS5sYXllcnMuZmluZEluZGV4KGxheWVyID0+IGxheWVyID09PSBhY3Rpb24ub2xkTGF5ZXIpO1xuICB2aXNTdGF0ZSA9IGxheWVyVHlwZUNoYW5nZVVwZGF0ZXIodmlzU3RhdGUsIGFjdGlvbik7XG4gIGNvbnN0IG5ld0xheWVyID0gdmlzU3RhdGUubGF5ZXJzW29sZExheWVySW5kZXhdO1xuICBpZiAobmV3TGF5ZXI/LnZpc0NvbmZpZ1NldHRpbmdzLmhhc093blByb3BlcnR5KCdkYXJrQmFzZU1hcEVuYWJsZWQnKSkge1xuICAgIGNvbnN0IHttYXBTdHlsZX0gPSBzdGF0ZTtcbiAgICBjb25zdCB7Y29sb3JNb2RlfSA9IG1hcFN0eWxlLm1hcFN0eWxlc1ttYXBTdHlsZS5zdHlsZVR5cGVdO1xuICAgIGNvbnN0IHtkYXJrQmFzZU1hcEVuYWJsZWR9ID0gbmV3TGF5ZXIuY29uZmlnLnZpc0NvbmZpZztcbiAgICBzd2l0Y2ggKGNvbG9yTW9kZSkge1xuICAgICAgY2FzZSBCQVNFX01BUF9DT0xPUl9NT0RFUy5EQVJLOlxuICAgICAgICBpZiAoIWRhcmtCYXNlTWFwRW5hYmxlZCkge1xuICAgICAgICAgIHZpc1N0YXRlID0gdXBkYXRlRGFya0Jhc2VNYXBMYXllcnModHJ1ZSwgbmV3TGF5ZXIuaWQpKHZpc1N0YXRlKTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgQkFTRV9NQVBfQ09MT1JfTU9ERVMuTElHSFQ6XG4gICAgICAgIGlmIChkYXJrQmFzZU1hcEVuYWJsZWQpIHtcbiAgICAgICAgICB2aXNTdGF0ZSA9IHVwZGF0ZURhcmtCYXNlTWFwTGF5ZXJzKGZhbHNlLCBuZXdMYXllci5pZCkodmlzU3RhdGUpO1xuICAgICAgICB9XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgIC8vIGRvIG5vdGhpbmdcbiAgICB9XG4gIH1cbiAgcmV0dXJuIHtcbiAgICAuLi5zdGF0ZSxcbiAgICB2aXNTdGF0ZVxuICB9O1xufTtcblxuLyoqXG4gKiBNYWtlIG1hcExlZ2VuZCBhY3RpdmUgd2hlbiB0b2dnbGVTcGxpdE1hcCBhY3Rpb24gaXMgY2FsbGVkXG4gKi9cbmV4cG9ydCBjb25zdCB0b2dnbGVTcGxpdE1hcFVwZGF0ZXIgPSAoXG4gIHN0YXRlOiBLZXBsZXJHbFN0YXRlLFxuICBhY3Rpb246IFRvZ2dsZVNwbGl0TWFwVXBkYXRlckFjdGlvblxuKTogS2VwbGVyR2xTdGF0ZSA9PiB7XG4gIGNvbnN0IG5ld1N0YXRlID0ge1xuICAgIC4uLnN0YXRlLFxuICAgIHZpc1N0YXRlOiB2aXNTdGF0ZVRvZ2dsZVNwbGl0TWFwVXBkYXRlcihzdGF0ZS52aXNTdGF0ZSwgYWN0aW9uKSxcbiAgICB1aVN0YXRlOiB1aVN0YXRlVG9nZ2xlU3BsaXRNYXBVcGRhdGVyKHN0YXRlLnVpU3RhdGUpLFxuICAgIG1hcFN0YXRlOiBtYXBTdGF0ZVRvZ2dsZVNwbGl0TWFwVXBkYXRlcihzdGF0ZS5tYXBTdGF0ZSwgYWN0aW9uKVxuICB9O1xuXG4gIGNvbnN0IGlzU3BsaXQgPSBuZXdTdGF0ZS52aXNTdGF0ZS5zcGxpdE1hcHMubGVuZ3RoICE9PSAwO1xuICBjb25zdCBpc0xlZ2VuZEFjdGl2ZSA9IG5ld1N0YXRlLnVpU3RhdGUubWFwQ29udHJvbHM/Lm1hcExlZ2VuZD8uYWN0aXZlO1xuICBpZiAoaXNTcGxpdCAmJiAhaXNMZWdlbmRBY3RpdmUpIHtcbiAgICBuZXdTdGF0ZS51aVN0YXRlID0gdG9nZ2xlTWFwQ29udHJvbFVwZGF0ZXIobmV3U3RhdGUudWlTdGF0ZSwge1xuICAgICAgcGF5bG9hZDoge3BhbmVsSWQ6ICdtYXBMZWdlbmQnLCBpbmRleDogYWN0aW9uLnBheWxvYWR9XG4gICAgfSk7XG4gIH1cblxuICByZXR1cm4gbmV3U3RhdGU7XG59O1xuXG5jb25zdCBkZWZhdWx0UmVwbGFjZURhdGFUb01hcE9wdGlvbnMgPSB7XG4gIGtlZXBFeGlzdGluZ0NvbmZpZzogdHJ1ZSxcbiAgY2VudGVyTWFwOiB0cnVlLFxuICBhdXRvQ3JlYXRlTGF5ZXJzOiBmYWxzZVxufTtcblxuLyoqXG4gKiBVcGRhdGVyIHJlcGxhY2UgYSBkYXRhc2V0IGluIHN0YXRlXG4gKi9cbmV4cG9ydCBjb25zdCByZXBsYWNlRGF0YUluTWFwVXBkYXRlciA9IChcbiAgc3RhdGU6IEtlcGxlckdsU3RhdGUsXG4gIHtwYXlsb2FkfToge3BheWxvYWQ6IFJlcGxhY2VEYXRhSW5NYXBQYXlsb2FkfVxuKTogS2VwbGVyR2xTdGF0ZSA9PiB7XG4gIGNvbnN0IHtkYXRhc2V0VG9SZXBsYWNlSWQsIGRhdGFzZXRUb1VzZSwgb3B0aW9ucyA9IHt9fSA9IHBheWxvYWQ7XG4gIGNvbnN0IGFkZERhdGFUb01hcE9wdGlvbnMgPSB7Li4uZGVmYXVsdFJlcGxhY2VEYXRhVG9NYXBPcHRpb25zLCAuLi5vcHRpb25zfTtcblxuICAvLyBjaGVjayBpZiBkYXRhc2V0IGlzIHRoZXJlXG4gIGlmICghc3RhdGUudmlzU3RhdGUuZGF0YXNldHNbZGF0YXNldFRvUmVwbGFjZUlkXSkge1xuICAgIHJldHVybiBzdGF0ZTtcbiAgfVxuICAvLyBkYXRhc2V0VG9Vc2UgaXMgUHJvdG9EYXRhc2V0XG4gIGNvbnN0IGRhdGFJZFRvVXNlID0gZGF0YXNldFRvVXNlLmluZm8uaWQ7XG4gIGlmICghZGF0YUlkVG9Vc2UpIHtcbiAgICByZXR1cm4gc3RhdGU7XG4gIH1cbiAgLy8gcmVtb3ZlIGRhdGFzZXQgYW5kIHB1dCBkZXBlbmRlbmNpZXMgaW4gdG9CZU1lcmdlZFxuICBjb25zdCBwcmVwYXJlZFN0YXRlID0ge1xuICAgIC4uLnN0YXRlLFxuICAgIHZpc1N0YXRlOiBwcmVwYXJlU3RhdGVGb3JEYXRhc2V0UmVwbGFjZShzdGF0ZS52aXNTdGF0ZSwgZGF0YXNldFRvUmVwbGFjZUlkLCBkYXRhSWRUb1VzZSlcbiAgfTtcblxuICBjb25zdCBuZXh0U3RhdGUgPSBhZGREYXRhVG9NYXBVcGRhdGVyKFxuICAgIHByZXBhcmVkU3RhdGUsXG4gICAgcGF5bG9hZF8oe1xuICAgICAgZGF0YXNldHM6IGRhdGFzZXRUb1VzZSxcbiAgICAgIC8vIHNob3VsZCB6b29tIHRvIG5ldyBkYXRhc2V0XG4gICAgICBvcHRpb25zOiBhZGREYXRhVG9NYXBPcHRpb25zXG4gICAgfSlcbiAgKTtcblxuICByZXR1cm4gbmV4dFN0YXRlO1xufTtcbiJdfQ==
|
|
@@ -6,7 +6,8 @@ export declare function payload_<P>(payload: P): {
|
|
|
6
6
|
};
|
|
7
7
|
/** Wraps a value in an object and stores it the `payload` field */
|
|
8
8
|
export declare function apply_<State, P>(updater: (state: State, nextPayload: P) => State, payload: P): (state: State) => State;
|
|
9
|
-
|
|
9
|
+
declare type Arg<State> = (state: State) => (nextState: State) => State;
|
|
10
|
+
export declare function with_<State>(fn: Arg<State>): (state: State) => State;
|
|
10
11
|
export declare function if_<State>(pred: boolean, fn: (state: State) => State): (state: State) => State;
|
|
11
12
|
export declare function compose_<State>(fns: Array<(s: State) => State>): (s: State) => State;
|
|
12
13
|
/** Returns a reducer function that merges props with state */
|
|
@@ -15,7 +16,9 @@ export declare function pick_<Prop extends string>(prop: Prop): <Value>(fn: (p:
|
|
|
15
16
|
export declare function swap_<X extends {
|
|
16
17
|
id: string;
|
|
17
18
|
}>(item: X): (arr: X[]) => X[];
|
|
18
|
-
export declare function
|
|
19
|
+
export declare function map_<X, T>(fn: (state: X) => T): (arr: X[]) => T[];
|
|
20
|
+
export declare function filterOutById<X extends {
|
|
19
21
|
id: string;
|
|
20
|
-
}>(id: string): (arr: X[]) => X
|
|
21
|
-
export declare function
|
|
22
|
+
}>(id: string): (arr: X[]) => X[];
|
|
23
|
+
export declare function removeElementAtIndex<X>(index: number): (arr: X[]) => X[];
|
|
24
|
+
export {};
|
package/dist/composer-helpers.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright (c)
|
|
1
|
+
// Copyright (c) 2023 Uber Technologies, Inc.
|
|
2
2
|
//
|
|
3
3
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
4
|
// of this software and associated documentation files (the "Software"), to deal
|
|
@@ -34,8 +34,11 @@ exports.compose_ = compose_;
|
|
|
34
34
|
exports.merge_ = merge_;
|
|
35
35
|
exports.pick_ = pick_;
|
|
36
36
|
exports.swap_ = swap_;
|
|
37
|
-
exports.findById = findById;
|
|
38
37
|
exports.map_ = map_;
|
|
38
|
+
exports.filterOutById = filterOutById;
|
|
39
|
+
exports.removeElementAtIndex = removeElementAtIndex;
|
|
40
|
+
|
|
41
|
+
var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
|
|
39
42
|
|
|
40
43
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
41
44
|
|
|
@@ -115,19 +118,25 @@ function swap_(item) {
|
|
|
115
118
|
};
|
|
116
119
|
}
|
|
117
120
|
|
|
118
|
-
function
|
|
121
|
+
function map_(fn) {
|
|
119
122
|
return function (arr) {
|
|
120
|
-
return arr.
|
|
121
|
-
return
|
|
123
|
+
return arr.map(function (e) {
|
|
124
|
+
return fn(e);
|
|
122
125
|
});
|
|
123
126
|
};
|
|
124
127
|
}
|
|
125
128
|
|
|
126
|
-
function
|
|
129
|
+
function filterOutById(id) {
|
|
127
130
|
return function (arr) {
|
|
128
|
-
return arr.
|
|
129
|
-
return
|
|
131
|
+
return arr.filter(function (e) {
|
|
132
|
+
return e.id !== id;
|
|
130
133
|
});
|
|
131
134
|
};
|
|
132
135
|
}
|
|
133
|
-
|
|
136
|
+
|
|
137
|
+
function removeElementAtIndex(index) {
|
|
138
|
+
return function (arr) {
|
|
139
|
+
return [].concat((0, _toConsumableArray2["default"])(arr.slice(0, index)), (0, _toConsumableArray2["default"])(arr.slice(index + 1, arr.length)));
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb3Nlci1oZWxwZXJzLnRzIl0sIm5hbWVzIjpbImlkZW50aXR5Iiwic3RhdGUiLCJsb2ciLCJ0ZXh0IiwidmFsdWUiLCJDb25zb2xlIiwicGF5bG9hZF8iLCJwYXlsb2FkIiwiYXBwbHlfIiwidXBkYXRlciIsIndpdGhfIiwiZm4iLCJpZl8iLCJwcmVkIiwiY29tcG9zZV8iLCJmbnMiLCJyZWR1Y2UiLCJzdGF0ZTIiLCJtZXJnZV8iLCJvYmoiLCJwaWNrXyIsInByb3AiLCJzd2FwXyIsIml0ZW0iLCJhcnIiLCJtYXAiLCJhIiwiaWQiLCJtYXBfIiwiZSIsImZpbHRlck91dEJ5SWQiLCJmaWx0ZXIiLCJyZW1vdmVFbGVtZW50QXRJbmRleCIsImluZGV4Iiwic2xpY2UiLCJsZW5ndGgiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW9CQTs7Ozs7O0FBRUEsSUFBTUEsUUFBUSxHQUFHLFNBQVhBLFFBQVcsQ0FBQUMsS0FBSztBQUFBLFNBQUlBLEtBQUo7QUFBQSxDQUF0QjtBQUVBOzs7QUFDTyxTQUFTQyxHQUFULENBQWFDLElBQWIsRUFBaUQ7QUFDdEQsU0FBTyxVQUFBQyxLQUFLO0FBQUEsV0FBSUMsb0JBQVFILEdBQVIsQ0FBWUMsSUFBWixFQUFrQkMsS0FBbEIsQ0FBSjtBQUFBLEdBQVo7QUFDRDtBQUNEOzs7QUFDTyxTQUFTRSxRQUFULENBQXFCQyxPQUFyQixFQUFpQztBQUN0QyxTQUFPO0FBQUNBLElBQUFBLE9BQU8sRUFBUEE7QUFBRCxHQUFQO0FBQ0Q7QUFDRDs7O0FBQ08sU0FBU0MsTUFBVCxDQUNMQyxPQURLLEVBRUxGLE9BRkssRUFHb0I7QUFDekIsU0FBTyxVQUFBTixLQUFLO0FBQUEsV0FBSVEsT0FBTyxDQUFDUixLQUFELEVBQVFNLE9BQVIsQ0FBWDtBQUFBLEdBQVo7QUFDRDs7QUFHTSxTQUFTRyxLQUFULENBQXNCQyxFQUF0QixFQUErRDtBQUNwRSxTQUFPLFVBQUFWLEtBQUs7QUFBQSxXQUFJVSxFQUFFLENBQUNWLEtBQUQsQ0FBRixDQUFVQSxLQUFWLENBQUo7QUFBQSxHQUFaO0FBQ0Q7O0FBRU0sU0FBU1csR0FBVCxDQUFvQkMsSUFBcEIsRUFBbUNGLEVBQW5DLEVBQXlGO0FBQzlGLFNBQU9FLElBQUksR0FBR0YsRUFBSCxHQUFRWCxRQUFuQjtBQUNEOztBQUVNLFNBQVNjLFFBQVQsQ0FBeUJDLEdBQXpCLEVBQStFO0FBQ3BGLFNBQU8sVUFBQWQsS0FBSztBQUFBLFdBQUljLEdBQUcsQ0FBQ0MsTUFBSixDQUFXLFVBQUNDLE1BQUQsRUFBU04sRUFBVDtBQUFBLGFBQWdCQSxFQUFFLENBQUNNLE1BQUQsQ0FBbEI7QUFBQSxLQUFYLEVBQXVDaEIsS0FBdkMsQ0FBSjtBQUFBLEdBQVo7QUFDRDtBQUNEOzs7QUFDTyxTQUFTaUIsTUFBVCxDQUF1QkMsR0FBdkIsRUFBbUU7QUFDeEUsU0FBTyxVQUFBbEIsS0FBSztBQUFBLDJDQUFTQSxLQUFULEdBQW1Ca0IsR0FBbkI7QUFBQSxHQUFaO0FBQ0Q7O0FBRU0sU0FBU0MsS0FBVCxDQUNMQyxJQURLLEVBRTJGO0FBQ2hHLFNBQU8sVUFBQVYsRUFBRTtBQUFBLFdBQUksVUFBQVYsS0FBSztBQUFBLDZDQUFTQSxLQUFULDRDQUFpQm9CLElBQWpCLEVBQXdCVixFQUFFLENBQUNWLEtBQUssQ0FBQ29CLElBQUQsQ0FBTixDQUExQjtBQUFBLEtBQVQ7QUFBQSxHQUFUO0FBQ0Q7O0FBRU0sU0FBU0MsS0FBVCxDQUF1Q0MsSUFBdkMsRUFBbUU7QUFDeEUsU0FBTyxVQUFBQyxHQUFHO0FBQUEsV0FBSUEsR0FBRyxDQUFDQyxHQUFKLENBQVEsVUFBQUMsQ0FBQztBQUFBLGFBQUtBLENBQUMsQ0FBQ0MsRUFBRixLQUFTSixJQUFJLENBQUNJLEVBQWQsR0FBbUJKLElBQW5CLEdBQTBCRyxDQUEvQjtBQUFBLEtBQVQsQ0FBSjtBQUFBLEdBQVY7QUFDRDs7QUFFTSxTQUFTRSxJQUFULENBQW9CakIsRUFBcEIsRUFBNEQ7QUFDakUsU0FBTyxVQUFBYSxHQUFHO0FBQUEsV0FBSUEsR0FBRyxDQUFDQyxHQUFKLENBQVEsVUFBQUksQ0FBQztBQUFBLGFBQUlsQixFQUFFLENBQUNrQixDQUFELENBQU47QUFBQSxLQUFULENBQUo7QUFBQSxHQUFWO0FBQ0Q7O0FBRU0sU0FBU0MsYUFBVCxDQUErQ0gsRUFBL0MsRUFBOEU7QUFDbkYsU0FBTyxVQUFBSCxHQUFHO0FBQUEsV0FBSUEsR0FBRyxDQUFDTyxNQUFKLENBQVcsVUFBQUYsQ0FBQztBQUFBLGFBQUlBLENBQUMsQ0FBQ0YsRUFBRixLQUFTQSxFQUFiO0FBQUEsS0FBWixDQUFKO0FBQUEsR0FBVjtBQUNEOztBQUVNLFNBQVNLLG9CQUFULENBQWlDQyxLQUFqQyxFQUFtRTtBQUN4RSxTQUFPLFVBQUFULEdBQUc7QUFBQSx5REFBUUEsR0FBRyxDQUFDVSxLQUFKLENBQVUsQ0FBVixFQUFhRCxLQUFiLENBQVIsdUNBQWdDVCxHQUFHLENBQUNVLEtBQUosQ0FBVUQsS0FBSyxHQUFHLENBQWxCLEVBQXFCVCxHQUFHLENBQUNXLE1BQXpCLENBQWhDO0FBQUEsR0FBVjtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIzIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IENvbnNvbGUgZnJvbSAnZ2xvYmFsL2NvbnNvbGUnO1xuXG5jb25zdCBpZGVudGl0eSA9IHN0YXRlID0+IHN0YXRlO1xuXG4vKiogUmV0dXJucyBhIGZ1bmN0aW9uIHRoYXQgbG9ncyBhIHZhbHVlIHdpdGggYSBnaXZlbiBtZXNzYWdlICovXG5leHBvcnQgZnVuY3Rpb24gbG9nKHRleHQ6IHN0cmluZyk6ICh2YWx1ZTogYW55KSA9PiB2b2lkIHtcbiAgcmV0dXJuIHZhbHVlID0+IENvbnNvbGUubG9nKHRleHQsIHZhbHVlKTtcbn1cbi8qKiBXcmFwcyBhIHZhbHVlIGluIGFuIG9iamVjdCBhbmQgc3RvcmVzIGl0IHRoZSBgcGF5bG9hZGAgZmllbGQgKi9cbmV4cG9ydCBmdW5jdGlvbiBwYXlsb2FkXzxQPihwYXlsb2FkOiBQKSB7XG4gIHJldHVybiB7cGF5bG9hZH07XG59XG4vKiogV3JhcHMgYSB2YWx1ZSBpbiBhbiBvYmplY3QgYW5kIHN0b3JlcyBpdCB0aGUgYHBheWxvYWRgIGZpZWxkICovXG5leHBvcnQgZnVuY3Rpb24gYXBwbHlfPFN0YXRlLCBQPihcbiAgdXBkYXRlcjogKHN0YXRlOiBTdGF0ZSwgbmV4dFBheWxvYWQ6IFApID0+IFN0YXRlLFxuICBwYXlsb2FkOiBQXG4pOiAoc3RhdGU6IFN0YXRlKSA9PiBTdGF0ZSB7XG4gIHJldHVybiBzdGF0ZSA9PiB1cGRhdGVyKHN0YXRlLCBwYXlsb2FkKTtcbn1cblxudHlwZSBBcmc8U3RhdGU+ID0gKHN0YXRlOiBTdGF0ZSkgPT4gKG5leHRTdGF0ZTogU3RhdGUpID0+IFN0YXRlO1xuZXhwb3J0IGZ1bmN0aW9uIHdpdGhfPFN0YXRlPihmbjogQXJnPFN0YXRlPik6IChzdGF0ZTogU3RhdGUpID0+IFN0YXRlIHtcbiAgcmV0dXJuIHN0YXRlID0+IGZuKHN0YXRlKShzdGF0ZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpZl88U3RhdGU+KHByZWQ6IGJvb2xlYW4sIGZuOiAoc3RhdGU6IFN0YXRlKSA9PiBTdGF0ZSk6IChzdGF0ZTogU3RhdGUpID0+IFN0YXRlIHtcbiAgcmV0dXJuIHByZWQgPyBmbiA6IGlkZW50aXR5O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY29tcG9zZV88U3RhdGU+KGZuczogQXJyYXk8KHM6IFN0YXRlKSA9PiBTdGF0ZT4pOiAoczogU3RhdGUpID0+IFN0YXRlIHtcbiAgcmV0dXJuIHN0YXRlID0+IGZucy5yZWR1Y2UoKHN0YXRlMiwgZm4pID0+IGZuKHN0YXRlMiksIHN0YXRlKTtcbn1cbi8qKiBSZXR1cm5zIGEgcmVkdWNlciBmdW5jdGlvbiB0aGF0IG1lcmdlcyBwcm9wcyB3aXRoIHN0YXRlICovXG5leHBvcnQgZnVuY3Rpb24gbWVyZ2VfPFByb3BzPihvYmo6IFByb3BzKTogPFN0YXRlPihzdGF0ZTogU3RhdGUpID0+IFN0YXRlIHtcbiAgcmV0dXJuIHN0YXRlID0+ICh7Li4uc3RhdGUsIC4uLm9ian0pO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gcGlja188UHJvcCBleHRlbmRzIHN0cmluZz4oXG4gIHByb3A6IFByb3Bcbik6IDxWYWx1ZT4oZm46IChwOiBWYWx1ZSkgPT4gVmFsdWUpID0+IDxTdGF0ZSBleHRlbmRzIFJlY29yZDxQcm9wLCBWYWx1ZT4+KHN0YXRlOiBTdGF0ZSkgPT4gU3RhdGUge1xuICByZXR1cm4gZm4gPT4gc3RhdGUgPT4gKHsuLi5zdGF0ZSwgW3Byb3BdOiBmbihzdGF0ZVtwcm9wXSl9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN3YXBfPFggZXh0ZW5kcyB7aWQ6IHN0cmluZ30+KGl0ZW06IFgpOiAoYXJyOiBYW10pID0+IFhbXSB7XG4gIHJldHVybiBhcnIgPT4gYXJyLm1hcChhID0+IChhLmlkID09PSBpdGVtLmlkID8gaXRlbSA6IGEpKTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIG1hcF88WCwgVD4oZm46IChzdGF0ZTogWCkgPT4gVCk6IChhcnI6IFhbXSkgPT4gVFtdIHtcbiAgcmV0dXJuIGFyciA9PiBhcnIubWFwKGUgPT4gZm4oZSkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZmlsdGVyT3V0QnlJZDxYIGV4dGVuZHMge2lkOiBzdHJpbmd9PihpZDogc3RyaW5nKTogKGFycjogWFtdKSA9PiBYW10ge1xuICByZXR1cm4gYXJyID0+IGFyci5maWx0ZXIoZSA9PiBlLmlkICE9PSBpZCk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiByZW1vdmVFbGVtZW50QXRJbmRleDxYPihpbmRleDogbnVtYmVyKTogKGFycjogWFtdKSA9PiBYW10ge1xuICByZXR1cm4gYXJyID0+IFsuLi5hcnIuc2xpY2UoMCwgaW5kZXgpLCAuLi5hcnIuc2xpY2UoaW5kZXggKyAxLCBhcnIubGVuZ3RoKV07XG59XG4iXX0=
|
package/dist/composers.d.ts
CHANGED
|
@@ -7,6 +7,12 @@ declare const actionHandler: {
|
|
|
7
7
|
"@@kepler.gl/ADD_DATA_TO_MAP": (state: combinedUpdaters.KeplerGlState, { payload }: {
|
|
8
8
|
payload: import("@kepler.gl/types").AddDataToMapPayload;
|
|
9
9
|
}) => combinedUpdaters.KeplerGlState;
|
|
10
|
+
"@@kepler.gl/MAP_STYLE_CHANGE": (state: combinedUpdaters.KeplerGlState, action: import("@kepler.gl/actions").MapStyleChangeUpdaterAction) => combinedUpdaters.KeplerGlState;
|
|
11
|
+
"@@kepler.gl/LAYER_TYPE_CHANGE": (state: combinedUpdaters.KeplerGlState, action: import("@kepler.gl/actions").LayerTypeChangeUpdaterAction) => combinedUpdaters.KeplerGlState;
|
|
10
12
|
"@@kepler.gl/LOAD_FILES_SUCCESS": (state: combinedUpdaters.KeplerGlState, action: import("@kepler.gl/actions").loadFilesSuccessUpdaterAction) => combinedUpdaters.KeplerGlState;
|
|
13
|
+
"@@kepler.gl/TOGGLE_SPLIT_MAP": (state: combinedUpdaters.KeplerGlState, action: import("@kepler.gl/actions").ToggleSplitMapUpdaterAction) => combinedUpdaters.KeplerGlState;
|
|
14
|
+
"@@kepler.gl/REPLACE_DATA_IN_MAP": (state: combinedUpdaters.KeplerGlState, { payload }: {
|
|
15
|
+
payload: import("@kepler.gl/actions").ReplaceDataInMapPayload;
|
|
16
|
+
}) => combinedUpdaters.KeplerGlState;
|
|
11
17
|
};
|
|
12
18
|
export default actionHandler;
|
package/dist/composers.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// Copyright (c)
|
|
1
|
+
// Copyright (c) 2023 Uber Technologies, Inc.
|
|
2
2
|
//
|
|
3
3
|
// Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
4
4
|
// of this software and associated documentation files (the "Software"), to deal
|
|
@@ -41,7 +41,7 @@ var _actionHandler;
|
|
|
41
41
|
* Important: Do not rename `actionHandler` or the assignment pattern of property value.
|
|
42
42
|
* It is used to generate documentation
|
|
43
43
|
*/
|
|
44
|
-
var actionHandler = (_actionHandler = {}, (0, _defineProperty2["default"])(_actionHandler, _actions.ActionTypes.ADD_DATA_TO_MAP, combinedUpdaters.addDataToMapUpdater), (0, _defineProperty2["default"])(_actionHandler, _actions.ActionTypes.LOAD_FILES_SUCCESS, combinedUpdaters.loadFilesSuccessUpdater), _actionHandler);
|
|
44
|
+
var actionHandler = (_actionHandler = {}, (0, _defineProperty2["default"])(_actionHandler, _actions.ActionTypes.ADD_DATA_TO_MAP, combinedUpdaters.addDataToMapUpdater), (0, _defineProperty2["default"])(_actionHandler, _actions.ActionTypes.MAP_STYLE_CHANGE, combinedUpdaters.combinedMapStyleChangeUpdater), (0, _defineProperty2["default"])(_actionHandler, _actions.ActionTypes.LAYER_TYPE_CHANGE, combinedUpdaters.combinedLayerTypeChangeUpdater), (0, _defineProperty2["default"])(_actionHandler, _actions.ActionTypes.LOAD_FILES_SUCCESS, combinedUpdaters.loadFilesSuccessUpdater), (0, _defineProperty2["default"])(_actionHandler, _actions.ActionTypes.TOGGLE_SPLIT_MAP, combinedUpdaters.toggleSplitMapUpdater), (0, _defineProperty2["default"])(_actionHandler, _actions.ActionTypes.REPLACE_DATA_IN_MAP, combinedUpdaters.replaceDataInMapUpdater), _actionHandler);
|
|
45
45
|
var _default = actionHandler;
|
|
46
46
|
exports["default"] = _default;
|
|
47
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9jb21wb3NlcnMudHMiXSwibmFtZXMiOlsiYWN0aW9uSGFuZGxlciIsIkFjdGlvblR5cGVzIiwiQUREX0RBVEFfVE9fTUFQIiwiY29tYmluZWRVcGRhdGVycyIsImFkZERhdGFUb01hcFVwZGF0ZXIiLCJNQVBfU1RZTEVfQ0hBTkdFIiwiY29tYmluZWRNYXBTdHlsZUNoYW5nZVVwZGF0ZXIiLCJMQVlFUl9UWVBFX0NIQU5HRSIsImNvbWJpbmVkTGF5ZXJUeXBlQ2hhbmdlVXBkYXRlciIsIkxPQURfRklMRVNfU1VDQ0VTUyIsImxvYWRGaWxlc1N1Y2Nlc3NVcGRhdGVyIiwiVE9HR0xFX1NQTElUX01BUCIsInRvZ2dsZVNwbGl0TWFwVXBkYXRlciIsIlJFUExBQ0VfREFUQV9JTl9NQVAiLCJyZXBsYWNlRGF0YUluTWFwVXBkYXRlciJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7OztBQUVBO0FBQ0E7QUFDQTtBQUNBO0FBQ0EsSUFBTUEsYUFBYSwwRUFDaEJDLHFCQUFZQyxlQURJLEVBQ2NDLGdCQUFnQixDQUFDQyxtQkFEL0Isb0RBRWhCSCxxQkFBWUksZ0JBRkksRUFFZUYsZ0JBQWdCLENBQUNHLDZCQUZoQyxvREFHaEJMLHFCQUFZTSxpQkFISSxFQUdnQkosZ0JBQWdCLENBQUNLLDhCQUhqQyxvREFJaEJQLHFCQUFZUSxrQkFKSSxFQUlpQk4sZ0JBQWdCLENBQUNPLHVCQUpsQyxvREFLaEJULHFCQUFZVSxnQkFMSSxFQUtlUixnQkFBZ0IsQ0FBQ1MscUJBTGhDLG9EQU1oQlgscUJBQVlZLG1CQU5JLEVBTWtCVixnQkFBZ0IsQ0FBQ1csdUJBTm5DLGtCQUFuQjtlQVNlZCxhIiwic291cmNlc0NvbnRlbnQiOlsiLy8gQ29weXJpZ2h0IChjKSAyMDIzIFViZXIgVGVjaG5vbG9naWVzLCBJbmMuXG4vL1xuLy8gUGVybWlzc2lvbiBpcyBoZXJlYnkgZ3JhbnRlZCwgZnJlZSBvZiBjaGFyZ2UsIHRvIGFueSBwZXJzb24gb2J0YWluaW5nIGEgY29weVxuLy8gb2YgdGhpcyBzb2Z0d2FyZSBhbmQgYXNzb2NpYXRlZCBkb2N1bWVudGF0aW9uIGZpbGVzICh0aGUgXCJTb2Z0d2FyZVwiKSwgdG8gZGVhbFxuLy8gaW4gdGhlIFNvZnR3YXJlIHdpdGhvdXQgcmVzdHJpY3Rpb24sIGluY2x1ZGluZyB3aXRob3V0IGxpbWl0YXRpb24gdGhlIHJpZ2h0c1xuLy8gdG8gdXNlLCBjb3B5LCBtb2RpZnksIG1lcmdlLCBwdWJsaXNoLCBkaXN0cmlidXRlLCBzdWJsaWNlbnNlLCBhbmQvb3Igc2VsbFxuLy8gY29waWVzIG9mIHRoZSBTb2Z0d2FyZSwgYW5kIHRvIHBlcm1pdCBwZXJzb25zIHRvIHdob20gdGhlIFNvZnR3YXJlIGlzXG4vLyBmdXJuaXNoZWQgdG8gZG8gc28sIHN1YmplY3QgdG8gdGhlIGZvbGxvd2luZyBjb25kaXRpb25zOlxuLy9cbi8vIFRoZSBhYm92ZSBjb3B5cmlnaHQgbm90aWNlIGFuZCB0aGlzIHBlcm1pc3Npb24gbm90aWNlIHNoYWxsIGJlIGluY2x1ZGVkIGluXG4vLyBhbGwgY29waWVzIG9yIHN1YnN0YW50aWFsIHBvcnRpb25zIG9mIHRoZSBTb2Z0d2FyZS5cbi8vXG4vLyBUSEUgU09GVFdBUkUgSVMgUFJPVklERUQgXCJBUyBJU1wiLCBXSVRIT1VUIFdBUlJBTlRZIE9GIEFOWSBLSU5ELCBFWFBSRVNTIE9SXG4vLyBJTVBMSUVELCBJTkNMVURJTkcgQlVUIE5PVCBMSU1JVEVEIFRPIFRIRSBXQVJSQU5USUVTIE9GIE1FUkNIQU5UQUJJTElUWSxcbi8vIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFIEFORCBOT05JTkZSSU5HRU1FTlQuIElOIE5PIEVWRU5UIFNIQUxMIFRIRVxuLy8gQVVUSE9SUyBPUiBDT1BZUklHSFQgSE9MREVSUyBCRSBMSUFCTEUgRk9SIEFOWSBDTEFJTSwgREFNQUdFUyBPUiBPVEhFUlxuLy8gTElBQklMSVRZLCBXSEVUSEVSIElOIEFOIEFDVElPTiBPRiBDT05UUkFDVCwgVE9SVCBPUiBPVEhFUldJU0UsIEFSSVNJTkcgRlJPTSxcbi8vIE9VVCBPRiBPUiBJTiBDT05ORUNUSU9OIFdJVEggVEhFIFNPRlRXQVJFIE9SIFRIRSBVU0UgT1IgT1RIRVIgREVBTElOR1MgSU5cbi8vIFRIRSBTT0ZUV0FSRS5cblxuaW1wb3J0IHtBY3Rpb25UeXBlc30gZnJvbSAnQGtlcGxlci5nbC9hY3Rpb25zJztcbmltcG9ydCAqIGFzIGNvbWJpbmVkVXBkYXRlcnMgZnJvbSAnLi9jb21iaW5lZC11cGRhdGVycyc7XG5cbi8qKlxuICogSW1wb3J0YW50OiBEbyBub3QgcmVuYW1lIGBhY3Rpb25IYW5kbGVyYCBvciB0aGUgYXNzaWdubWVudCBwYXR0ZXJuIG9mIHByb3BlcnR5IHZhbHVlLlxuICogSXQgaXMgdXNlZCB0byBnZW5lcmF0ZSBkb2N1bWVudGF0aW9uXG4gKi9cbmNvbnN0IGFjdGlvbkhhbmRsZXIgPSB7XG4gIFtBY3Rpb25UeXBlcy5BRERfREFUQV9UT19NQVBdOiBjb21iaW5lZFVwZGF0ZXJzLmFkZERhdGFUb01hcFVwZGF0ZXIsXG4gIFtBY3Rpb25UeXBlcy5NQVBfU1RZTEVfQ0hBTkdFXTogY29tYmluZWRVcGRhdGVycy5jb21iaW5lZE1hcFN0eWxlQ2hhbmdlVXBkYXRlcixcbiAgW0FjdGlvblR5cGVzLkxBWUVSX1RZUEVfQ0hBTkdFXTogY29tYmluZWRVcGRhdGVycy5jb21iaW5lZExheWVyVHlwZUNoYW5nZVVwZGF0ZXIsXG4gIFtBY3Rpb25UeXBlcy5MT0FEX0ZJTEVTX1NVQ0NFU1NdOiBjb21iaW5lZFVwZGF0ZXJzLmxvYWRGaWxlc1N1Y2Nlc3NVcGRhdGVyLFxuICBbQWN0aW9uVHlwZXMuVE9HR0xFX1NQTElUX01BUF06IGNvbWJpbmVkVXBkYXRlcnMudG9nZ2xlU3BsaXRNYXBVcGRhdGVyLFxuICBbQWN0aW9uVHlwZXMuUkVQTEFDRV9EQVRBX0lOX01BUF06IGNvbWJpbmVkVXBkYXRlcnMucmVwbGFjZURhdGFJbk1hcFVwZGF0ZXJcbn07XG5cbmV4cG9ydCBkZWZhdWx0IGFjdGlvbkhhbmRsZXI7XG4iXX0=
|
package/dist/core.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ export declare type KeplerGlState = {
|
|
|
9
9
|
uiState: UiState;
|
|
10
10
|
providerState: ProviderState;
|
|
11
11
|
};
|
|
12
|
-
export declare const coreReducerFactory: (initialState?: Partial<KeplerGlState
|
|
12
|
+
export declare const coreReducerFactory: (initialState?: Partial<KeplerGlState>, extraReducers?: {}) => (state: any, action: any) => any;
|
|
13
13
|
declare const _default: (state: any, action: any) => any;
|
|
14
14
|
export default _default;
|
|
15
15
|
/**
|