@flowmap.gl/data 8.0.0-alpha.13 → 8.0.0-alpha.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (63) hide show
  1. package/dist/FlowmapSelectors.d.ts +21 -21
  2. package/dist/FlowmapSelectors.d.ts.map +1 -1
  3. package/dist/FlowmapSelectors.js +55 -31
  4. package/dist/cluster/cluster.d.ts +6 -5
  5. package/dist/cluster/cluster.d.ts.map +1 -1
  6. package/dist/cluster/cluster.js +11 -9
  7. package/dist/getViewStateForLocations.d.ts +1 -1
  8. package/dist/getViewStateForLocations.d.ts.map +1 -1
  9. package/dist/getViewStateForLocations.js +16 -5
  10. package/dist/provider/FlowmapDataProvider.d.ts.map +1 -1
  11. package/dist/provider/FlowmapDataProvider.js +6 -6
  12. package/dist/provider/LocalFlowmapDataProvider.d.ts.map +1 -1
  13. package/dist/provider/LocalFlowmapDataProvider.js +2 -1
  14. package/dist/types.d.ts +2 -2
  15. package/dist/types.d.ts.map +1 -1
  16. package/dist/types.js +4 -4
  17. package/package.json +13 -16
  18. package/src/FlowmapSelectors.ts +78 -59
  19. package/src/cluster/cluster.ts +23 -20
  20. package/src/getViewStateForLocations.ts +17 -7
  21. package/src/provider/FlowmapDataProvider.ts +4 -5
  22. package/src/provider/LocalFlowmapDataProvider.ts +1 -0
  23. package/src/types.ts +5 -5
  24. package/dist-es5/FlowmapAggregateAccessors.d.ts +0 -16
  25. package/dist-es5/FlowmapAggregateAccessors.d.ts.map +0 -1
  26. package/dist-es5/FlowmapAggregateAccessors.js +0 -57
  27. package/dist-es5/FlowmapSelectors.d.ts +0 -188
  28. package/dist-es5/FlowmapSelectors.d.ts.map +0 -1
  29. package/dist-es5/FlowmapSelectors.js +0 -1507
  30. package/dist-es5/FlowmapState.d.ts +0 -27
  31. package/dist-es5/FlowmapState.d.ts.map +0 -1
  32. package/dist-es5/FlowmapState.js +0 -3
  33. package/dist-es5/cluster/ClusterIndex.d.ts +0 -42
  34. package/dist-es5/cluster/ClusterIndex.d.ts.map +0 -1
  35. package/dist-es5/cluster/ClusterIndex.js +0 -297
  36. package/dist-es5/cluster/cluster.d.ts +0 -31
  37. package/dist-es5/cluster/cluster.d.ts.map +0 -1
  38. package/dist-es5/cluster/cluster.js +0 -266
  39. package/dist-es5/colors.d.ts +0 -103
  40. package/dist-es5/colors.d.ts.map +0 -1
  41. package/dist-es5/colors.js +0 -510
  42. package/dist-es5/getViewStateForLocations.d.ts +0 -23
  43. package/dist-es5/getViewStateForLocations.d.ts.map +0 -1
  44. package/dist-es5/getViewStateForLocations.js +0 -64
  45. package/dist-es5/index.d.ts +0 -11
  46. package/dist-es5/index.d.ts.map +0 -1
  47. package/dist-es5/index.js +0 -28
  48. package/dist-es5/provider/FlowmapDataProvider.d.ts +0 -16
  49. package/dist-es5/provider/FlowmapDataProvider.d.ts.map +0 -1
  50. package/dist-es5/provider/FlowmapDataProvider.js +0 -22
  51. package/dist-es5/provider/LocalFlowmapDataProvider.d.ts +0 -20
  52. package/dist-es5/provider/LocalFlowmapDataProvider.d.ts.map +0 -1
  53. package/dist-es5/provider/LocalFlowmapDataProvider.js +0 -154
  54. package/dist-es5/time.d.ts +0 -24
  55. package/dist-es5/time.d.ts.map +0 -1
  56. package/dist-es5/time.js +0 -168
  57. package/dist-es5/types.d.ts +0 -118
  58. package/dist-es5/types.d.ts.map +0 -1
  59. package/dist-es5/types.js +0 -29
  60. package/dist-es5/util.d.ts +0 -5
  61. package/dist-es5/util.d.ts.map +0 -1
  62. package/dist-es5/util.js +0 -14
  63. package/tsconfig.es5.json +0 -11
@@ -1,27 +0,0 @@
1
- import { LocationFilterMode, ViewportProps } from './types';
2
- export interface FilterState {
3
- selectedLocations: string[] | undefined;
4
- selectedTimeRange: [Date, Date] | undefined;
5
- locationFilterMode: LocationFilterMode;
6
- }
7
- export interface SettingsState {
8
- animationEnabled: boolean;
9
- fadeEnabled: boolean;
10
- fadeOpacityEnabled: boolean;
11
- locationTotalsEnabled: boolean;
12
- adaptiveScalesEnabled: boolean;
13
- clusteringEnabled: boolean;
14
- clusteringAuto: boolean;
15
- clusteringLevel?: number;
16
- darkMode: boolean;
17
- fadeAmount: number;
18
- colorScheme: string | string[] | undefined;
19
- highlightColor: string;
20
- maxTopFlowsDisplayNum: number;
21
- }
22
- export interface FlowmapState {
23
- filterState: FilterState;
24
- settingsState: SettingsState;
25
- viewport: ViewportProps;
26
- }
27
- //# sourceMappingURL=FlowmapState.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"FlowmapState.d.ts","sourceRoot":"","sources":["../src/FlowmapState.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,kBAAkB,EAAE,aAAa,EAAC,MAAM,SAAS,CAAC;AAE1D,MAAM,WAAW,WAAW;IAC1B,iBAAiB,EAAE,MAAM,EAAE,GAAG,SAAS,CAAC;IACxC,iBAAiB,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,SAAS,CAAC;IAC5C,kBAAkB,EAAE,kBAAkB,CAAC;CACxC;AAED,MAAM,WAAW,aAAa;IAC5B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,kBAAkB,EAAE,OAAO,CAAC;IAC5B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,qBAAqB,EAAE,OAAO,CAAC;IAC/B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,cAAc,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;IAC3C,cAAc,EAAE,MAAM,CAAC;IACvB,qBAAqB,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,WAAW,CAAC;IACzB,aAAa,EAAE,aAAa,CAAC;IAC7B,QAAQ,EAAE,aAAa,CAAC;CACzB"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmxvd21hcFN0YXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0Zsb3dtYXBTdGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtMb2NhdGlvbkZpbHRlck1vZGUsIFZpZXdwb3J0UHJvcHN9IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEZpbHRlclN0YXRlIHtcbiAgc2VsZWN0ZWRMb2NhdGlvbnM6IHN0cmluZ1tdIHwgdW5kZWZpbmVkO1xuICBzZWxlY3RlZFRpbWVSYW5nZTogW0RhdGUsIERhdGVdIHwgdW5kZWZpbmVkO1xuICBsb2NhdGlvbkZpbHRlck1vZGU6IExvY2F0aW9uRmlsdGVyTW9kZTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBTZXR0aW5nc1N0YXRlIHtcbiAgYW5pbWF0aW9uRW5hYmxlZDogYm9vbGVhbjtcbiAgZmFkZUVuYWJsZWQ6IGJvb2xlYW47XG4gIGZhZGVPcGFjaXR5RW5hYmxlZDogYm9vbGVhbjtcbiAgbG9jYXRpb25Ub3RhbHNFbmFibGVkOiBib29sZWFuO1xuICBhZGFwdGl2ZVNjYWxlc0VuYWJsZWQ6IGJvb2xlYW47XG4gIGNsdXN0ZXJpbmdFbmFibGVkOiBib29sZWFuO1xuICBjbHVzdGVyaW5nQXV0bzogYm9vbGVhbjtcbiAgY2x1c3RlcmluZ0xldmVsPzogbnVtYmVyO1xuICBkYXJrTW9kZTogYm9vbGVhbjtcbiAgZmFkZUFtb3VudDogbnVtYmVyO1xuICBjb2xvclNjaGVtZTogc3RyaW5nIHwgc3RyaW5nW10gfCB1bmRlZmluZWQ7XG4gIGhpZ2hsaWdodENvbG9yOiBzdHJpbmc7XG4gIG1heFRvcEZsb3dzRGlzcGxheU51bTogbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEZsb3dtYXBTdGF0ZSB7XG4gIGZpbHRlclN0YXRlOiBGaWx0ZXJTdGF0ZTtcbiAgc2V0dGluZ3NTdGF0ZTogU2V0dGluZ3NTdGF0ZTtcbiAgdmlld3BvcnQ6IFZpZXdwb3J0UHJvcHM7XG59XG4iXX0=
@@ -1,42 +0,0 @@
1
- import { AggregateFlow, Cluster, ClusterLevels, ClusterNode, FlowAccessors, FlowCountsMapReduce } from './../types';
2
- export declare type LocationWeightGetter = (id: string) => number;
3
- /**
4
- * A data structure representing the cluster levels for efficient flow aggregation.
5
- */
6
- export interface ClusterIndex<F> {
7
- availableZoomLevels: number[];
8
- getClusterById: (clusterId: string) => Cluster | undefined;
9
- /**
10
- * List the nodes on the given zoom level.
11
- */
12
- getClusterNodesFor: (zoom: number | undefined) => ClusterNode[] | undefined;
13
- /**
14
- * Get the min zoom level on which the location is not clustered.
15
- */
16
- getMinZoomForLocation: (locationId: string) => number;
17
- /**
18
- * List the IDs of all locations in the cluster (leaves of the subtree starting in the cluster).
19
- */
20
- expandCluster: (cluster: Cluster, targetZoom?: number) => string[];
21
- /**
22
- * Find the cluster the given location is residing in on the specified zoom level.
23
- */
24
- findClusterFor: (locationId: string, zoom: number) => string | undefined;
25
- /**
26
- * Aggregate flows for the specified zoom level.
27
- */
28
- aggregateFlows: (flows: F[], zoom: number, { getFlowOriginId, getFlowDestId, getFlowMagnitude }: FlowAccessors<F>, options?: {
29
- flowCountsMapReduce?: FlowCountsMapReduce<F>;
30
- }) => (F | AggregateFlow)[];
31
- }
32
- /**
33
- * Build ClusterIndex from the given cluster hierarchy
34
- */
35
- export declare function buildIndex<F>(clusterLevels: ClusterLevels): ClusterIndex<F>;
36
- export declare function makeLocationWeightGetter<F>(flows: F[], { getFlowOriginId, getFlowDestId, getFlowMagnitude }: FlowAccessors<F>): LocationWeightGetter;
37
- /**
38
- * @param availableZoomLevels Must be sorted in ascending order
39
- * @param targetZoom
40
- */
41
- export declare function findAppropriateZoomLevel(availableZoomLevels: number[], targetZoom: number): number;
42
- //# sourceMappingURL=ClusterIndex.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ClusterIndex.d.ts","sourceRoot":"","sources":["../../src/cluster/ClusterIndex.ts"],"names":[],"mappings":"AAkBA,OAAO,EACL,aAAa,EACb,OAAO,EACP,aAAa,EACb,WAAW,EACX,aAAa,EACb,mBAAmB,EAEpB,MAAM,YAAY,CAAC;AAGpB,oBAAY,oBAAoB,GAAG,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC7B,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAC9B,cAAc,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,GAAG,SAAS,CAAC;IAC3D;;OAEG;IACH,kBAAkB,EAAE,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,KAAK,WAAW,EAAE,GAAG,SAAS,CAAC;IAC5E;;OAEG;IACH,qBAAqB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,CAAC;IACtD;;OAEG;IACH,aAAa,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;IACnE;;OAEG;IACH,cAAc,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACzE;;OAEG;IACH,cAAc,EAAE,CACd,KAAK,EAAE,CAAC,EAAE,EACV,IAAI,EAAE,MAAM,EACZ,EAAC,eAAe,EAAE,aAAa,EAAE,gBAAgB,EAAC,EAAE,aAAa,CAAC,CAAC,CAAC,EACpE,OAAO,CAAC,EAAE;QACR,mBAAmB,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC,CAAC;KAC9C,KACE,CAAC,CAAC,GAAG,aAAa,CAAC,EAAE,CAAC;CAC5B;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,aAAa,EAAE,aAAa,GAAG,YAAY,CAAC,CAAC,CAAC,CAqJ3E;AAED,wBAAgB,wBAAwB,CAAC,CAAC,EACxC,KAAK,EAAE,CAAC,EAAE,EACV,EAAC,eAAe,EAAE,aAAa,EAAE,gBAAgB,EAAC,EAAE,aAAa,CAAC,CAAC,CAAC,GACnE,oBAAoB,CAuBtB;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CACtC,mBAAmB,EAAE,MAAM,EAAE,EAC7B,UAAU,EAAE,MAAM,UAWnB"}
@@ -1,297 +0,0 @@
1
- "use strict";
2
- /*
3
- * Copyright 2022 FlowmapBlue
4
- * Copyright 2018-2020 Teralytics, modified by FlowmapBlue
5
- *
6
- * Licensed under the Apache License, Version 2.0 (the "License");
7
- * you may not use this file except in compliance with the License.
8
- * You may obtain a copy of the License at
9
- *
10
- * http://www.apache.org/licenses/LICENSE-2.0
11
- *
12
- * Unless required by applicable law or agreed to in writing, software
13
- * distributed under the License is distributed on an "AS IS" BASIS,
14
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
- * See the License for the specific language governing permissions and
16
- * limitations under the License.
17
- *
18
- */
19
- var __values = (this && this.__values) || function(o) {
20
- var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
21
- if (m) return m.call(o);
22
- if (o && typeof o.length === "number") return {
23
- next: function () {
24
- if (o && i >= o.length) o = void 0;
25
- return { value: o && o[i++], done: !o };
26
- }
27
- };
28
- throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
29
- };
30
- var __read = (this && this.__read) || function (o, n) {
31
- var m = typeof Symbol === "function" && o[Symbol.iterator];
32
- if (!m) return o;
33
- var i = m.call(o), r, ar = [], e;
34
- try {
35
- while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
36
- }
37
- catch (error) { e = { error: error }; }
38
- finally {
39
- try {
40
- if (r && !r.done && (m = i["return"])) m.call(i);
41
- }
42
- finally { if (e) throw e.error; }
43
- }
44
- return ar;
45
- };
46
- Object.defineProperty(exports, "__esModule", { value: true });
47
- exports.findAppropriateZoomLevel = exports.makeLocationWeightGetter = exports.buildIndex = void 0;
48
- var types_1 = require("./../types");
49
- var d3_array_1 = require("d3-array");
50
- /**
51
- * Build ClusterIndex from the given cluster hierarchy
52
- */
53
- function buildIndex(clusterLevels) {
54
- var e_1, _a, e_2, _b, e_3, _c;
55
- var nodesByZoom = new Map();
56
- var clustersById = new Map();
57
- var minZoomByLocationId = new Map();
58
- try {
59
- for (var clusterLevels_1 = __values(clusterLevels), clusterLevels_1_1 = clusterLevels_1.next(); !clusterLevels_1_1.done; clusterLevels_1_1 = clusterLevels_1.next()) {
60
- var _d = clusterLevels_1_1.value, zoom = _d.zoom, nodes = _d.nodes;
61
- nodesByZoom.set(zoom, nodes);
62
- try {
63
- for (var nodes_1 = (e_2 = void 0, __values(nodes)), nodes_1_1 = nodes_1.next(); !nodes_1_1.done; nodes_1_1 = nodes_1.next()) {
64
- var node = nodes_1_1.value;
65
- if ((0, types_1.isCluster)(node)) {
66
- clustersById.set(node.id, node);
67
- }
68
- else {
69
- var id = node.id;
70
- var mz = minZoomByLocationId.get(id);
71
- if (mz == null || mz > zoom) {
72
- minZoomByLocationId.set(id, zoom);
73
- }
74
- }
75
- }
76
- }
77
- catch (e_2_1) { e_2 = { error: e_2_1 }; }
78
- finally {
79
- try {
80
- if (nodes_1_1 && !nodes_1_1.done && (_b = nodes_1.return)) _b.call(nodes_1);
81
- }
82
- finally { if (e_2) throw e_2.error; }
83
- }
84
- }
85
- }
86
- catch (e_1_1) { e_1 = { error: e_1_1 }; }
87
- finally {
88
- try {
89
- if (clusterLevels_1_1 && !clusterLevels_1_1.done && (_a = clusterLevels_1.return)) _a.call(clusterLevels_1);
90
- }
91
- finally { if (e_1) throw e_1.error; }
92
- }
93
- var _e = __read((0, d3_array_1.extent)(clusterLevels, function (cl) { return cl.zoom; }), 2), minZoom = _e[0], maxZoom = _e[1];
94
- if (minZoom == null || maxZoom == null) {
95
- throw new Error('Could not determine minZoom or maxZoom');
96
- }
97
- var leavesToClustersByZoom = new Map();
98
- var _loop_1 = function (cluster) {
99
- var zoom = cluster.zoom;
100
- var leavesToClusters = leavesToClustersByZoom.get(zoom);
101
- if (!leavesToClusters) {
102
- leavesToClusters = new Map();
103
- leavesToClustersByZoom.set(zoom, leavesToClusters);
104
- }
105
- visitClusterLeaves(cluster, function (leafId) {
106
- leavesToClusters === null || leavesToClusters === void 0 ? void 0 : leavesToClusters.set(leafId, cluster);
107
- });
108
- };
109
- try {
110
- for (var _f = __values(clustersById.values()), _g = _f.next(); !_g.done; _g = _f.next()) {
111
- var cluster = _g.value;
112
- _loop_1(cluster);
113
- }
114
- }
115
- catch (e_3_1) { e_3 = { error: e_3_1 }; }
116
- finally {
117
- try {
118
- if (_g && !_g.done && (_c = _f.return)) _c.call(_f);
119
- }
120
- finally { if (e_3) throw e_3.error; }
121
- }
122
- function visitClusterLeaves(cluster, visit) {
123
- var e_4, _a;
124
- try {
125
- for (var _b = __values(cluster.children), _c = _b.next(); !_c.done; _c = _b.next()) {
126
- var childId = _c.value;
127
- var child = clustersById.get(childId);
128
- if (child) {
129
- visitClusterLeaves(child, visit);
130
- }
131
- else {
132
- visit(childId);
133
- }
134
- }
135
- }
136
- catch (e_4_1) { e_4 = { error: e_4_1 }; }
137
- finally {
138
- try {
139
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
140
- }
141
- finally { if (e_4) throw e_4.error; }
142
- }
143
- }
144
- var expandCluster = function (cluster, targetZoom) {
145
- if (targetZoom === void 0) { targetZoom = maxZoom; }
146
- var ids = [];
147
- var visit = function (c, expandedIds) {
148
- var e_5, _a;
149
- if (targetZoom > c.zoom) {
150
- try {
151
- for (var _b = __values(c.children), _c = _b.next(); !_c.done; _c = _b.next()) {
152
- var childId = _c.value;
153
- var child = clustersById.get(childId);
154
- if (child) {
155
- visit(child, expandedIds);
156
- }
157
- else {
158
- expandedIds.push(childId);
159
- }
160
- }
161
- }
162
- catch (e_5_1) { e_5 = { error: e_5_1 }; }
163
- finally {
164
- try {
165
- if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
166
- }
167
- finally { if (e_5) throw e_5.error; }
168
- }
169
- }
170
- else {
171
- expandedIds.push(c.id);
172
- }
173
- };
174
- visit(cluster, ids);
175
- return ids;
176
- };
177
- function findClusterFor(locationId, zoom) {
178
- var leavesToClusters = leavesToClustersByZoom.get(zoom);
179
- if (!leavesToClusters) {
180
- return undefined;
181
- }
182
- var cluster = leavesToClusters.get(locationId);
183
- return cluster ? cluster.id : undefined;
184
- }
185
- var availableZoomLevels = clusterLevels
186
- .map(function (cl) { return +cl.zoom; })
187
- .sort(function (a, b) { return (0, d3_array_1.ascending)(a, b); });
188
- return {
189
- availableZoomLevels: availableZoomLevels,
190
- getClusterNodesFor: function (zoom) {
191
- if (zoom === undefined) {
192
- return undefined;
193
- }
194
- return nodesByZoom.get(zoom);
195
- },
196
- getClusterById: function (clusterId) { return clustersById.get(clusterId); },
197
- getMinZoomForLocation: function (locationId) {
198
- return minZoomByLocationId.get(locationId) || minZoom;
199
- },
200
- expandCluster: expandCluster,
201
- findClusterFor: findClusterFor,
202
- aggregateFlows: function (flows, zoom, _a, options) {
203
- var e_6, _b;
204
- var getFlowOriginId = _a.getFlowOriginId, getFlowDestId = _a.getFlowDestId, getFlowMagnitude = _a.getFlowMagnitude;
205
- if (options === void 0) { options = {}; }
206
- if (zoom > maxZoom) {
207
- return flows;
208
- }
209
- var result = [];
210
- var aggFlowsByKey = new Map();
211
- var makeKey = function (origin, dest) { return "".concat(origin, ":").concat(dest); };
212
- var _c = options.flowCountsMapReduce, flowCountsMapReduce = _c === void 0 ? {
213
- map: getFlowMagnitude,
214
- reduce: function (acc, count) { return (acc || 0) + count; },
215
- } : _c;
216
- try {
217
- for (var flows_1 = __values(flows), flows_1_1 = flows_1.next(); !flows_1_1.done; flows_1_1 = flows_1.next()) {
218
- var flow = flows_1_1.value;
219
- var origin_1 = getFlowOriginId(flow);
220
- var dest = getFlowDestId(flow);
221
- var originCluster = findClusterFor(origin_1, zoom) || origin_1;
222
- var destCluster = findClusterFor(dest, zoom) || dest;
223
- var key = makeKey(originCluster, destCluster);
224
- if (originCluster === origin_1 && destCluster === dest) {
225
- result.push(flow);
226
- }
227
- else {
228
- var aggregateFlow = aggFlowsByKey.get(key);
229
- if (!aggregateFlow) {
230
- aggregateFlow = {
231
- origin: originCluster,
232
- dest: destCluster,
233
- count: flowCountsMapReduce.map(flow),
234
- aggregate: true,
235
- };
236
- result.push(aggregateFlow);
237
- aggFlowsByKey.set(key, aggregateFlow);
238
- }
239
- else {
240
- aggregateFlow.count = flowCountsMapReduce.reduce(aggregateFlow.count, flowCountsMapReduce.map(flow));
241
- }
242
- }
243
- }
244
- }
245
- catch (e_6_1) { e_6 = { error: e_6_1 }; }
246
- finally {
247
- try {
248
- if (flows_1_1 && !flows_1_1.done && (_b = flows_1.return)) _b.call(flows_1);
249
- }
250
- finally { if (e_6) throw e_6.error; }
251
- }
252
- return result;
253
- },
254
- };
255
- }
256
- exports.buildIndex = buildIndex;
257
- function makeLocationWeightGetter(flows, _a) {
258
- var e_7, _b;
259
- var getFlowOriginId = _a.getFlowOriginId, getFlowDestId = _a.getFlowDestId, getFlowMagnitude = _a.getFlowMagnitude;
260
- var locationTotals = {
261
- incoming: new Map(),
262
- outgoing: new Map(),
263
- };
264
- try {
265
- for (var flows_2 = __values(flows), flows_2_1 = flows_2.next(); !flows_2_1.done; flows_2_1 = flows_2.next()) {
266
- var flow = flows_2_1.value;
267
- var origin_2 = getFlowOriginId(flow);
268
- var dest = getFlowDestId(flow);
269
- var count = getFlowMagnitude(flow);
270
- locationTotals.incoming.set(dest, (locationTotals.incoming.get(dest) || 0) + count);
271
- locationTotals.outgoing.set(origin_2, (locationTotals.outgoing.get(origin_2) || 0) + count);
272
- }
273
- }
274
- catch (e_7_1) { e_7 = { error: e_7_1 }; }
275
- finally {
276
- try {
277
- if (flows_2_1 && !flows_2_1.done && (_b = flows_2.return)) _b.call(flows_2);
278
- }
279
- finally { if (e_7) throw e_7.error; }
280
- }
281
- return function (id) {
282
- return Math.max(Math.abs(locationTotals.incoming.get(id) || 0), Math.abs(locationTotals.outgoing.get(id) || 0));
283
- };
284
- }
285
- exports.makeLocationWeightGetter = makeLocationWeightGetter;
286
- /**
287
- * @param availableZoomLevels Must be sorted in ascending order
288
- * @param targetZoom
289
- */
290
- function findAppropriateZoomLevel(availableZoomLevels, targetZoom) {
291
- if (!availableZoomLevels.length) {
292
- throw new Error('No available zoom levels');
293
- }
294
- return availableZoomLevels[Math.min((0, d3_array_1.bisectLeft)(availableZoomLevels, Math.floor(targetZoom)), availableZoomLevels.length - 1)];
295
- }
296
- exports.findAppropriateZoomLevel = findAppropriateZoomLevel;
297
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2x1c3RlckluZGV4LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2NsdXN0ZXIvQ2x1c3RlckluZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQTs7Ozs7Ozs7Ozs7Ozs7OztHQWdCRzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUgsb0NBUW9CO0FBQ3BCLHFDQUF1RDtBQXVDdkQ7O0dBRUc7QUFDSCxTQUFnQixVQUFVLENBQUksYUFBNEI7O0lBQ3hELElBQU0sV0FBVyxHQUFHLElBQUksR0FBRyxFQUF5QixDQUFDO0lBQ3JELElBQU0sWUFBWSxHQUFHLElBQUksR0FBRyxFQUFtQixDQUFDO0lBQ2hELElBQU0sbUJBQW1CLEdBQUcsSUFBSSxHQUFHLEVBQWtCLENBQUM7O1FBQ3RELEtBQTRCLElBQUEsa0JBQUEsU0FBQSxhQUFhLENBQUEsNENBQUEsdUVBQUU7WUFBaEMsSUFBQSw0QkFBYSxFQUFaLElBQUksVUFBQSxFQUFFLEtBQUssV0FBQTtZQUNyQixXQUFXLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxLQUFLLENBQUMsQ0FBQzs7Z0JBQzdCLEtBQW1CLElBQUEseUJBQUEsU0FBQSxLQUFLLENBQUEsQ0FBQSw0QkFBQSwrQ0FBRTtvQkFBckIsSUFBTSxJQUFJLGtCQUFBO29CQUNiLElBQUksSUFBQSxpQkFBUyxFQUFDLElBQUksQ0FBQyxFQUFFO3dCQUNuQixZQUFZLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUUsSUFBSSxDQUFDLENBQUM7cUJBQ2pDO3lCQUFNO3dCQUNFLElBQUEsRUFBRSxHQUFJLElBQUksR0FBUixDQUFTO3dCQUNsQixJQUFNLEVBQUUsR0FBRyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLENBQUM7d0JBQ3ZDLElBQUksRUFBRSxJQUFJLElBQUksSUFBSSxFQUFFLEdBQUcsSUFBSSxFQUFFOzRCQUMzQixtQkFBbUIsQ0FBQyxHQUFHLENBQUMsRUFB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bnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDIyIEZsb3dtYXBCbHVlXG4gKiBDb3B5cmlnaHQgMjAxOC0yMDIwIFRlcmFseXRpY3MsIG1vZGlmaWVkIGJ5IEZsb3dtYXBCbHVlXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKlxuICovXG5cbmltcG9ydCB7XG4gIEFnZ3JlZ2F0ZUZsb3csXG4gIENsdXN0ZXIsXG4gIENsdXN0ZXJMZXZlbHMsXG4gIENsdXN0ZXJOb2RlLFxuICBGbG93QWNjZXNzb3JzLFxuICBGbG93Q291bnRzTWFwUmVkdWNlLFxuICBpc0NsdXN0ZXIsXG59IGZyb20gJy4vLi4vdHlwZXMnO1xuaW1wb3J0IHthc2NlbmRpbmcsIGJpc2VjdExlZnQsIGV4dGVudH0gZnJvbSAnZDMtYXJyYXknO1xuXG5leHBvcnQgdHlwZSBMb2NhdGlvbldlaWdodEdldHRlciA9IChpZDogc3RyaW5nKSA9PiBudW1iZXI7XG5cbi8qKlxuICogQSBkYXRhIHN0cnVjdHVyZSByZXByZXNlbnRpbmcgdGhlIGNsdXN0ZXIgbGV2ZWxzIGZvciBlZmZpY2llbnQgZmxvdyBhZ2dyZWdhdGlvbi5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDbHVzdGVySW5kZXg8Rj4ge1xuICBhdmFpbGFibGVab29tTGV2ZWxzOiBudW1iZXJbXTtcbiAgZ2V0Q2x1c3RlckJ5SWQ6IChjbHVzdGVySWQ6IHN0cmluZykgPT4gQ2x1c3RlciB8IHVuZGVmaW5lZDtcbiAgLyoqXG4gICAqIExpc3QgdGhlIG5vZGVzIG9uIHRoZSBnaXZlbiB6b29tIGxldmVsLlxuICAgKi9cbiAgZ2V0Q2x1c3Rlck5vZGVzRm9yOiAoem9vbTogbnVtYmVyIHwgdW5kZWZpbmVkKSA9PiBDbHVzdGVyTm9kZVtdIHwgdW5kZWZpbmVkO1xuICAvKipcbiAgICogR2V0IHRoZSBtaW4gem9vbSBsZXZlbCBvbiB3aGljaCB0aGUgbG9jYXRpb24gaXMgbm90IGNsdXN0ZXJlZC5cbiAgICovXG4gIGdldE1pblpvb21Gb3JMb2NhdGlvbjogKGxvY2F0aW9uSWQ6IHN0cmluZykgPT4gbnVtYmVyO1xuICAvKipcbiAgICogTGlzdCB0aGUgSURzIG9mIGFsbCBsb2NhdGlvbnMgaW4gdGhlIGNsdXN0ZXIgKGxlYXZlcyBvZiB0aGUgc3VidHJlZSBzdGFydGluZyBpbiB0aGUgY2x1c3RlcikuXG4gICAqL1xuICBleHBhbmRDbHVzdGVyOiAoY2x1c3RlcjogQ2x1c3RlciwgdGFyZ2V0Wm9vbT86IG51bWJlcikgPT4gc3RyaW5nW107XG4gIC8qKlxuICAgKiBGaW5kIHRoZSBjbHVzdGVyIHRoZSBnaXZlbiBsb2NhdGlvbiBpcyByZXNpZGluZyBpbiBvbiB0aGUgc3BlY2lmaWVkIHpvb20gbGV2ZWwuXG4gICAqL1xuICBmaW5kQ2x1c3RlckZvcjogKGxvY2F0aW9uSWQ6IHN0cmluZywgem9vbTogbnVtYmVyKSA9PiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gIC8qKlxuICAgKiBBZ2dyZWdhdGUgZmxvd3MgZm9yIHRoZSBzcGVjaWZpZWQgem9vbSBsZXZlbC5cbiAgICovXG4gIGFnZ3JlZ2F0ZUZsb3dzOiAoXG4gICAgZmxvd3M6IEZbXSxcbiAgICB6b29tOiBudW1iZXIsXG4gICAge2dldEZsb3dPcmlnaW5JZCwgZ2V0Rmxvd0Rlc3RJZCwgZ2V0Rmxvd01hZ25pdHVkZX06IEZsb3dBY2Nlc3NvcnM8Rj4sXG4gICAgb3B0aW9ucz86IHtcbiAgICAgIGZsb3dDb3VudHNNYXBSZWR1Y2U/OiBGbG93Q291bnRzTWFwUmVkdWNlPEY+O1xuICAgIH0sXG4gICkgPT4gKEYgfCBBZ2dyZWdhdGVGbG93KVtdO1xufVxuXG4vKipcbiAqIEJ1aWxkIENsdXN0ZXJJbmRleCBmcm9tIHRoZSBnaXZlbiBjbHVzdGVyIGhpZXJhcmNoeVxuICovXG5leHBvcnQgZnVuY3Rpb24gYnVpbGRJbmRleDxGPihjbHVzdGVyTGV2ZWxzOiBDbHVzdGVyTGV2ZWxzKTogQ2x1c3RlckluZGV4PEY+IHtcbiAgY29uc3Qgbm9kZXNCeVpvb20gPSBuZXcgTWFwPG51bWJlciwgQ2x1c3Rlck5vZGVbXT4oKTtcbiAgY29uc3QgY2x1c3RlcnNCeUlkID0gbmV3IE1hcDxzdHJpbmcsIENsdXN0ZXI+KCk7XG4gIGNvbnN0IG1pblpvb21CeUxvY2F0aW9uSWQgPSBuZXcgTWFwPHN0cmluZywgbnVtYmVyPigpO1xuICBmb3IgKGNvbnN0IHt6b29tLCBub2Rlc30gb2YgY2x1c3RlckxldmVscykge1xuICAgIG5vZGVzQnlab29tLnNldCh6b29tLCBub2Rlcyk7XG4gICAgZm9yIChjb25zdCBub2RlIG9mIG5vZGVzKSB7XG4gICAgICBpZiAoaXNDbHVzdGVyKG5vZGUpKSB7XG4gICAgICAgIGNsdXN0ZXJzQnlJZC5zZXQobm9kZS5pZCwgbm9kZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCB7aWR9ID0gbm9kZTtcbiAgICAgICAgY29uc3QgbXogPSBtaW5ab29tQnlMb2NhdGlvbklkLmdldChpZCk7XG4gICAgICAgIGlmIChteiA9PSBudWxsIHx8IG16ID4gem9vbSkge1xuICAgICAgICAgIG1pblpvb21CeUxvY2F0aW9uSWQuc2V0KGlkLCB6b29tKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IFttaW5ab29tLCBtYXhab29tXSA9IGV4dGVudChjbHVzdGVyTGV2ZWxzLCAoY2wpID0+IGNsLnpvb20pO1xuICBpZiAobWluWm9vbSA9PSBudWxsIHx8IG1heFpvb20gPT0gbnVsbCkge1xuICAgIHRocm93IG5ldyBFcnJvcignQ291bGQgbm90IGRldGVybWluZSBtaW5ab29tIG9yIG1heFpvb20nKTtcbiAgfVxuXG4gIGNvbnN0IGxlYXZlc1RvQ2x1c3RlcnNCeVpvb20gPSBuZXcgTWFwPG51bWJlciwgTWFwPHN0cmluZywgQ2x1c3Rlcj4+KCk7XG5cbiAgZm9yIChjb25zdCBjbHVzdGVyIG9mIGNsdXN0ZXJzQnlJZC52YWx1ZXMoKSkge1xuICAgIGNvbnN0IHt6b29tfSA9IGNsdXN0ZXI7XG4gICAgbGV0IGxlYXZlc1RvQ2x1c3RlcnMgPSBsZWF2ZXNUb0NsdXN0ZXJzQnlab29tLmdldCh6b29tKTtcbiAgICBpZiAoIWxlYXZlc1RvQ2x1c3RlcnMpIHtcbiAgICAgIGxlYXZlc1RvQ2x1c3RlcnMgPSBuZXcgTWFwPHN0cmluZywgQ2x1c3Rlcj4oKTtcbiAgICAgIGxlYXZlc1RvQ2x1c3RlcnNCeVpvb20uc2V0KHpvb20sIGxlYXZlc1RvQ2x1c3RlcnMpO1xuICAgIH1cbiAgICB2aXNpdENsdXN0ZXJMZWF2ZXMoY2x1c3RlciwgKGxlYWZJZCkgPT4ge1xuICAgICAgbGVhdmVzVG9DbHVzdGVycz8uc2V0KGxlYWZJZCwgY2x1c3Rlcik7XG4gICAgfSk7XG4gIH1cblxuICBmdW5jdGlvbiB2aXNpdENsdXN0ZXJMZWF2ZXMoY2x1c3RlcjogQ2x1c3RlciwgdmlzaXQ6IChpZDogc3RyaW5nKSA9PiB2b2lkKSB7XG4gICAgZm9yIChjb25zdCBjaGlsZElkIG9mIGNsdXN0ZXIuY2hpbGRyZW4pIHtcbiAgICAgIGNvbnN0IGNoaWxkID0gY2x1c3RlcnNCeUlkLmdldChjaGlsZElkKTtcbiAgICAgIGlmIChjaGlsZCkge1xuICAgICAgICB2aXNpdENsdXN0ZXJMZWF2ZXMoY2hpbGQsIHZpc2l0KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHZpc2l0KGNoaWxkSWQpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNvbnN0IGV4cGFuZENsdXN0ZXIgPSAoY2x1c3RlcjogQ2x1c3RlciwgdGFyZ2V0Wm9vbTogbnVtYmVyID0gbWF4Wm9vbSkgPT4ge1xuICAgIGNvbnN0IGlkczogc3RyaW5nW10gPSBbXTtcbiAgICBjb25zdCB2aXNpdCA9IChjOiBDbHVzdGVyLCBleHBhbmRlZElkczogc3RyaW5nW10pID0+IHtcbiAgICAgIGlmICh0YXJnZXRab29tID4gYy56b29tKSB7XG4gICAgICAgIGZvciAoY29uc3QgY2hpbGRJZCBvZiBjLmNoaWxkcmVuKSB7XG4gICAgICAgICAgY29uc3QgY2hpbGQgPSBjbHVzdGVyc0J5SWQuZ2V0KGNoaWxkSWQpO1xuICAgICAgICAgIGlmIChjaGlsZCkge1xuICAgICAgICAgICAgdmlzaXQoY2hpbGQsIGV4cGFuZGVkSWRzKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZXhwYW5kZWRJZHMucHVzaChjaGlsZElkKTtcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGV4cGFuZGVkSWRzLnB1c2goYy5pZCk7XG4gICAgICB9XG4gICAgfTtcbiAgICB2aXNpdChjbHVzdGVyLCBpZHMpO1xuICAgIHJldHVybiBpZHM7XG4gIH07XG5cbiAgZnVuY3Rpb24gZmluZENsdXN0ZXJGb3IobG9jYXRpb25JZDogc3RyaW5nLCB6b29tOiBudW1iZXIpIHtcbiAgICBjb25zdCBsZWF2ZXNUb0NsdXN0ZXJzID0gbGVhdmVzVG9DbHVzdGVyc0J5Wm9vbS5nZXQoem9vbSk7XG4gICAgaWYgKCFsZWF2ZXNUb0NsdXN0ZXJzKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBjb25zdCBjbHVzdGVyID0gbGVhdmVzVG9DbHVzdGVycy5nZXQobG9jYXRpb25JZCk7XG4gICAgcmV0dXJuIGNsdXN0ZXIgPyBjbHVzdGVyLmlkIDogdW5kZWZpbmVkO1xuICB9XG5cbiAgY29uc3QgYXZhaWxhYmxlWm9vbUxldmVscyA9IGNsdXN0ZXJMZXZlbHNcbiAgICAubWFwKChjbCkgPT4gK2NsLnpvb20pXG4gICAgLnNvcnQoKGEsIGIpID0+IGFzY2VuZGluZyhhLCBiKSk7XG5cbiAgcmV0dXJuIHtcbiAgICBhdmFpbGFibGVab29tTGV2ZWxzLFxuXG4gICAgZ2V0Q2x1c3Rlck5vZGVzRm9yOiAoem9vbSkgPT4ge1xuICAgICAgaWYgKHpvb20gPT09IHVuZGVmaW5lZCkge1xuICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgICAgcmV0dXJuIG5vZGVzQnlab29tLmdldCh6b29tKTtcbiAgICB9LFxuXG4gICAgZ2V0Q2x1c3RlckJ5SWQ6IChjbHVzdGVySWQpID0+IGNsdXN0ZXJzQnlJZC5nZXQoY2x1c3RlcklkKSxcblxuICAgIGdldE1pblpvb21Gb3JMb2NhdGlvbjogKGxvY2F0aW9uSWQpID0+XG4gICAgICBtaW5ab29tQnlMb2NhdGlvbklkLmdldChsb2NhdGlvbklkKSB8fCBtaW5ab29tLFxuXG4gICAgZXhwYW5kQ2x1c3RlcixcblxuICAgIGZpbmRDbHVzdGVyRm9yLFxuXG4gICAgYWdncmVnYXRlRmxvd3M6IChcbiAgICAgIGZsb3dzLFxuICAgICAgem9vbSxcbiAgICAgIHtnZXRGbG93T3JpZ2luSWQsIGdldEZsb3dEZXN0SWQsIGdldEZsb3dNYWduaXR1ZGV9LFxuICAgICAgb3B0aW9ucyA9IHt9LFxuICAgICkgPT4ge1xuICAgICAgaWYgKHpvb20gPiBtYXhab29tKSB7XG4gICAgICAgIHJldHVybiBmbG93cztcbiAgICAgIH1cbiAgICAgIGNvbnN0IHJlc3VsdDogKEYgfCBBZ2dyZWdhdGVGbG93KVtdID0gW107XG4gICAgICBjb25zdCBhZ2dGbG93c0J5S2V5ID0gbmV3IE1hcDxzdHJpbmcsIEFnZ3JlZ2F0ZUZsb3c+KCk7XG4gICAgICBjb25zdCBtYWtlS2V5ID0gKG9yaWdpbjogc3RyaW5nLCBkZXN0OiBzdHJpbmcpID0+IGAke29yaWdpbn06JHtkZXN0fWA7XG4gICAgICBjb25zdCB7XG4gICAgICAgIGZsb3dDb3VudHNNYXBSZWR1Y2UgPSB7XG4gICAgICAgICAgbWFwOiBnZXRGbG93TWFnbml0dWRlLFxuICAgICAgICAgIHJlZHVjZTogKGFjYzogYW55LCBjb3VudDogbnVtYmVyKSA9PiAoYWNjIHx8IDApICsgY291bnQsXG4gICAgICAgIH0sXG4gICAgICB9ID0gb3B0aW9ucztcbiAgICAgIGZvciAoY29uc3QgZmxvdyBvZiBmbG93cykge1xuICAgICAgICBjb25zdCBvcmlnaW4gPSBnZXRGbG93T3JpZ2luSWQoZmxvdyk7XG4gICAgICAgIGNvbnN0IGRlc3QgPSBnZXRGbG93RGVzdElkKGZsb3cpO1xuICAgICAgICBjb25zdCBvcmlnaW5DbHVzdGVyID0gZmluZENsdXN0ZXJGb3Iob3JpZ2luLCB6b29tKSB8fCBvcmlnaW47XG4gICAgICAgIGNvbnN0IGRlc3RDbHVzdGVyID0gZmluZENsdXN0ZXJGb3IoZGVzdCwgem9vbSkgfHwgZGVzdDtcbiAgICAgICAgY29uc3Qga2V5ID0gbWFrZUtleShvcmlnaW5DbHVzdGVyLCBkZXN0Q2x1c3Rlcik7XG4gICAgICAgIGlmIChvcmlnaW5DbHVzdGVyID09PSBvcmlnaW4gJiYgZGVzdENsdXN0ZXIgPT09IGRlc3QpIHtcbiAgICAgICAgICByZXN1bHQucHVzaChmbG93KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBsZXQgYWdncmVnYXRlRmxvdyA9IGFnZ0Zsb3dzQnlLZXkuZ2V0KGtleSk7XG4gICAgICAgICAgaWYgKCFhZ2dyZWdhdGVGbG93KSB7XG4gICAgICAgICAgICBhZ2dyZWdhdGVGbG93ID0ge1xuICAgICAgICAgICAgICBvcmlnaW46IG9yaWdpbkNsdXN0ZXIsXG4gICAgICAgICAgICAgIGRlc3Q6IGRlc3RDbHVzdGVyLFxuICAgICAgICAgICAgICBjb3VudDogZmxvd0NvdW50c01hcFJlZHVjZS5tYXAoZmxvdyksXG4gICAgICAgICAgICAgIGFnZ3JlZ2F0ZTogdHJ1ZSxcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICByZXN1bHQucHVzaChhZ2dyZWdhdGVGbG93KTtcbiAgICAgICAgICAgIGFnZ0Zsb3dzQnlLZXkuc2V0KGtleSwgYWdncmVnYXRlRmxvdyk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGFnZ3JlZ2F0ZUZsb3cuY291bnQgPSBmbG93Q291bnRzTWFwUmVkdWNlLnJlZHVjZShcbiAgICAgICAgICAgICAgYWdncmVnYXRlRmxvdy5jb3VudCxcbiAgICAgICAgICAgICAgZmxvd0NvdW50c01hcFJlZHVjZS5tYXAoZmxvdyksXG4gICAgICAgICAgICApO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9LFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gbWFrZUxvY2F0aW9uV2VpZ2h0R2V0dGVyPEY+KFxuICBmbG93czogRltdLFxuICB7Z2V0Rmxvd09yaWdpbklkLCBnZXRGbG93RGVzdElkLCBnZXRGbG93TWFnbml0dWRlfTogRmxvd0FjY2Vzc29yczxGPixcbik6IExvY2F0aW9uV2VpZ2h0R2V0dGVyIHtcbiAgY29uc3QgbG9jYXRpb25Ub3RhbHMgPSB7XG4gICAgaW5jb21pbmc6IG5ldyBNYXA8c3RyaW5nLCBudW1iZXI+KCksXG4gICAgb3V0Z29pbmc6IG5ldyBNYXA8c3RyaW5nLCBudW1iZXI+KCksXG4gIH07XG4gIGZvciAoY29uc3QgZmxvdyBvZiBmbG93cykge1xuICAgIGNvbnN0IG9yaWdpbiA9IGdldEZsb3dPcmlnaW5JZChmbG93KTtcbiAgICBjb25zdCBkZXN0ID0gZ2V0Rmxvd0Rlc3RJZChmbG93KTtcbiAgICBjb25zdCBjb3VudCA9IGdldEZsb3dNYWduaXR1ZGUoZmxvdyk7XG4gICAgbG9jYXRpb25Ub3RhbHMuaW5jb21pbmcuc2V0KFxuICAgICAgZGVzdCxcbiAgICAgIChsb2NhdGlvblRvdGFscy5pbmNvbWluZy5nZXQoZGVzdCkgfHwgMCkgKyBjb3VudCxcbiAgICApO1xuICAgIGxvY2F0aW9uVG90YWxzLm91dGdvaW5nLnNldChcbiAgICAgIG9yaWdpbixcbiAgICAgIChsb2NhdGlvblRvdGFscy5vdXRnb2luZy5nZXQob3JpZ2luKSB8fCAwKSArIGNvdW50LFxuICAgICk7XG4gIH1cbiAgcmV0dXJuIChpZDogc3RyaW5nKSA9PlxuICAgIE1hdGgubWF4KFxuICAgICAgTWF0aC5hYnMobG9jYXRpb25Ub3RhbHMuaW5jb21pbmcuZ2V0KGlkKSB8fCAwKSxcbiAgICAgIE1hdGguYWJzKGxvY2F0aW9uVG90YWxzLm91dGdvaW5nLmdldChpZCkgfHwgMCksXG4gICAgKTtcbn1cblxuLyoqXG4gKiBAcGFyYW0gYXZhaWxhYmxlWm9vbUxldmVscyBNdXN0IGJlIHNvcnRlZCBpbiBhc2NlbmRpbmcgb3JkZXJcbiAqIEBwYXJhbSB0YXJnZXRab29tXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaW5kQXBwcm9wcmlhdGVab29tTGV2ZWwoXG4gIGF2YWlsYWJsZVpvb21MZXZlbHM6IG51bWJlcltdLFxuICB0YXJnZXRab29tOiBudW1iZXIsXG4pIHtcbiAgaWYgKCFhdmFpbGFibGVab29tTGV2ZWxzLmxlbmd0aCkge1xuICAgIHRocm93IG5ldyBFcnJvcignTm8gYXZhaWxhYmxlIHpvb20gbGV2ZWxzJyk7XG4gIH1cbiAgcmV0dXJuIGF2YWlsYWJsZVpvb21MZXZlbHNbXG4gICAgTWF0aC5taW4oXG4gICAgICBiaXNlY3RMZWZ0KGF2YWlsYWJsZVpvb21MZXZlbHMsIE1hdGguZmxvb3IodGFyZ2V0Wm9vbSkpLFxuICAgICAgYXZhaWxhYmxlWm9vbUxldmVscy5sZW5ndGggLSAxLFxuICAgIClcbiAgXTtcbn1cbiJdfQ==
@@ -1,31 +0,0 @@
1
- import { LocationWeightGetter } from './ClusterIndex';
2
- import { ClusterLevel, LocationAccessors } from '../types';
3
- export interface Options {
4
- minZoom: number;
5
- maxZoom: number;
6
- radius: number;
7
- extent: number;
8
- nodeSize: number;
9
- makeClusterName: (id: number, numPoints: number) => string | undefined;
10
- makeClusterId: (id: number) => string;
11
- }
12
- interface BasePoint {
13
- x: number;
14
- y: number;
15
- weight: number;
16
- zoom: number;
17
- parentId: number;
18
- }
19
- interface LeafPoint extends BasePoint {
20
- index: number;
21
- }
22
- interface ClusterPoint extends BasePoint {
23
- id: number;
24
- numPoints: number;
25
- }
26
- declare type Point = LeafPoint | ClusterPoint;
27
- export declare function isLeafPoint(p: Point): p is LeafPoint;
28
- export declare function isClusterPoint(p: Point): p is ClusterPoint;
29
- export declare function clusterLocations<L>(locations: L[], locationAccessors: LocationAccessors<L>, getLocationWeight: LocationWeightGetter, options?: Partial<Options>): ClusterLevel[];
30
- export {};
31
- //# sourceMappingURL=cluster.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cluster.d.ts","sourceRoot":"","sources":["../../src/cluster/cluster.ts"],"names":[],"mappings":"AAwCA,OAAO,EAAC,oBAAoB,EAAC,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAU,YAAY,EAAe,iBAAiB,EAAC,MAAM,UAAU,CAAC;AAE/E,MAAM,WAAW,OAAO;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACvE,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,CAAC;CACvC;AAYD,UAAU,SAAS;IACjB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,UAAU,SAAU,SAAQ,SAAS;IACnC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,YAAa,SAAQ,SAAS;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,aAAK,KAAK,GAAG,SAAS,GAAG,YAAY,CAAC;AAEtC,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,SAAS,CAGpD;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,IAAI,YAAY,CAG1D;AAID,wBAAgB,gBAAgB,CAAC,CAAC,EAChC,SAAS,EAAE,CAAC,EAAE,EACd,iBAAiB,EAAE,iBAAiB,CAAC,CAAC,CAAC,EACvC,iBAAiB,EAAE,oBAAoB,EACvC,OAAO,CAAC,EAAE,OAAO,CAAC,OAAO,CAAC,GACzB,YAAY,EAAE,CA8FhB"}