@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.
- package/dist/FlowmapSelectors.d.ts +21 -21
- package/dist/FlowmapSelectors.d.ts.map +1 -1
- package/dist/FlowmapSelectors.js +55 -31
- package/dist/cluster/cluster.d.ts +6 -5
- package/dist/cluster/cluster.d.ts.map +1 -1
- package/dist/cluster/cluster.js +11 -9
- package/dist/getViewStateForLocations.d.ts +1 -1
- package/dist/getViewStateForLocations.d.ts.map +1 -1
- package/dist/getViewStateForLocations.js +16 -5
- package/dist/provider/FlowmapDataProvider.d.ts.map +1 -1
- package/dist/provider/FlowmapDataProvider.js +6 -6
- package/dist/provider/LocalFlowmapDataProvider.d.ts.map +1 -1
- package/dist/provider/LocalFlowmapDataProvider.js +2 -1
- package/dist/types.d.ts +2 -2
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +4 -4
- package/package.json +13 -16
- package/src/FlowmapSelectors.ts +78 -59
- package/src/cluster/cluster.ts +23 -20
- package/src/getViewStateForLocations.ts +17 -7
- package/src/provider/FlowmapDataProvider.ts +4 -5
- package/src/provider/LocalFlowmapDataProvider.ts +1 -0
- package/src/types.ts +5 -5
- package/dist-es5/FlowmapAggregateAccessors.d.ts +0 -16
- package/dist-es5/FlowmapAggregateAccessors.d.ts.map +0 -1
- package/dist-es5/FlowmapAggregateAccessors.js +0 -57
- package/dist-es5/FlowmapSelectors.d.ts +0 -188
- package/dist-es5/FlowmapSelectors.d.ts.map +0 -1
- package/dist-es5/FlowmapSelectors.js +0 -1507
- package/dist-es5/FlowmapState.d.ts +0 -27
- package/dist-es5/FlowmapState.d.ts.map +0 -1
- package/dist-es5/FlowmapState.js +0 -3
- package/dist-es5/cluster/ClusterIndex.d.ts +0 -42
- package/dist-es5/cluster/ClusterIndex.d.ts.map +0 -1
- package/dist-es5/cluster/ClusterIndex.js +0 -297
- package/dist-es5/cluster/cluster.d.ts +0 -31
- package/dist-es5/cluster/cluster.d.ts.map +0 -1
- package/dist-es5/cluster/cluster.js +0 -266
- package/dist-es5/colors.d.ts +0 -103
- package/dist-es5/colors.d.ts.map +0 -1
- package/dist-es5/colors.js +0 -510
- package/dist-es5/getViewStateForLocations.d.ts +0 -23
- package/dist-es5/getViewStateForLocations.d.ts.map +0 -1
- package/dist-es5/getViewStateForLocations.js +0 -64
- package/dist-es5/index.d.ts +0 -11
- package/dist-es5/index.d.ts.map +0 -1
- package/dist-es5/index.js +0 -28
- package/dist-es5/provider/FlowmapDataProvider.d.ts +0 -16
- package/dist-es5/provider/FlowmapDataProvider.d.ts.map +0 -1
- package/dist-es5/provider/FlowmapDataProvider.js +0 -22
- package/dist-es5/provider/LocalFlowmapDataProvider.d.ts +0 -20
- package/dist-es5/provider/LocalFlowmapDataProvider.d.ts.map +0 -1
- package/dist-es5/provider/LocalFlowmapDataProvider.js +0 -154
- package/dist-es5/time.d.ts +0 -24
- package/dist-es5/time.d.ts.map +0 -1
- package/dist-es5/time.js +0 -168
- package/dist-es5/types.d.ts +0 -118
- package/dist-es5/types.d.ts.map +0 -1
- package/dist-es5/types.js +0 -29
- package/dist-es5/util.d.ts +0 -5
- package/dist-es5/util.d.ts.map +0 -1
- package/dist-es5/util.js +0 -14
- package/tsconfig.es5.json +0 -11
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
14
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
15
|
-
if (!m) return o;
|
|
16
|
-
var i = m.call(o), r, ar = [], e;
|
|
17
|
-
try {
|
|
18
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
19
|
-
}
|
|
20
|
-
catch (error) { e = { error: error }; }
|
|
21
|
-
finally {
|
|
22
|
-
try {
|
|
23
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
24
|
-
}
|
|
25
|
-
finally { if (e) throw e.error; }
|
|
26
|
-
}
|
|
27
|
-
return ar;
|
|
28
|
-
};
|
|
29
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
|
-
exports.getViewStateForLocations = exports.getViewStateForFeatures = void 0;
|
|
31
|
-
var d3_geo_1 = require("d3-geo");
|
|
32
|
-
var web_mercator_1 = require("@math.gl/web-mercator");
|
|
33
|
-
function getViewStateForFeatures(featureCollection, size, opts) {
|
|
34
|
-
var _a = opts || {}, _b = _a.pad, pad = _b === void 0 ? 0.05 : _b, _c = _a.maxZoom, maxZoom = _c === void 0 ? 100 : _c;
|
|
35
|
-
var bounds = (0, d3_geo_1.geoBounds)(featureCollection);
|
|
36
|
-
var _d = __read(bounds, 2), _e = __read(_d[0], 2), x1 = _e[0], y1 = _e[1], _f = __read(_d[1], 2), x2 = _f[0], y2 = _f[1];
|
|
37
|
-
var paddedBounds = pad
|
|
38
|
-
? [
|
|
39
|
-
[x1 - pad * (x2 - x1), y1 - pad * (y2 - y1)],
|
|
40
|
-
[x2 + pad * (x2 - x1), y2 + pad * (y2 - y1)],
|
|
41
|
-
]
|
|
42
|
-
: bounds;
|
|
43
|
-
var _g = __read(size, 2), width = _g[0], height = _g[1];
|
|
44
|
-
return __assign(__assign({}, (0, web_mercator_1.fitBounds)({
|
|
45
|
-
width: width,
|
|
46
|
-
height: height,
|
|
47
|
-
bounds: paddedBounds,
|
|
48
|
-
padding: opts === null || opts === void 0 ? void 0 : opts.padding,
|
|
49
|
-
// minZoom,
|
|
50
|
-
maxZoom: maxZoom,
|
|
51
|
-
})), { width: width, height: height, bearing: 0, pitch: 0 });
|
|
52
|
-
}
|
|
53
|
-
exports.getViewStateForFeatures = getViewStateForFeatures;
|
|
54
|
-
function getViewStateForLocations(locations, getLocationCoords, size, opts) {
|
|
55
|
-
return getViewStateForFeatures({
|
|
56
|
-
type: 'GeometryCollection',
|
|
57
|
-
geometries: locations.map(function (location) { return ({
|
|
58
|
-
type: 'Point',
|
|
59
|
-
coordinates: getLocationCoords(location),
|
|
60
|
-
}); }),
|
|
61
|
-
}, size, opts);
|
|
62
|
-
}
|
|
63
|
-
exports.getViewStateForLocations = getViewStateForLocations;
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2V0Vmlld1N0YXRlRm9yTG9jYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL2dldFZpZXdTdGF0ZUZvckxvY2F0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxpQ0FBaUM7QUFDakMsc0RBQWdEO0FBa0JoRCxTQUFnQix1QkFBdUIsQ0FDckMsaUJBRXNCLEVBQ3RCLElBQXNCLEVBQ3RCLElBQTBCO0lBRXBCLElBQUEsS0FBOEIsSUFBSSxJQUFJLEVBQUUsRUFBdkMsV0FBVSxFQUFWLEdBQUcsbUJBQUcsSUFBSSxLQUFBLEVBQUUsZUFBYSxFQUFiLE9BQU8sbUJBQUcsR0FBRyxLQUFjLENBQUM7SUFDL0MsSUFBTSxNQUFNLEdBQUcsSUFBQSxrQkFBUyxFQUFDLGlCQUF3QixDQUFDLENBQUM7SUFDN0MsSUFBQSxLQUFBLE9BQXVCLE1BQU0sSUFBQSxFQUE1QixLQUFBLGdCQUFRLEVBQVAsRUFBRSxRQUFBLEVBQUUsRUFBRSxRQUFBLEVBQUcsS0FBQSxnQkFBUSxFQUFQLEVBQUUsUUFBQSxFQUFFLEVBQUUsUUFBVyxDQUFDO0lBQ3BDLElBQU0sWUFBWSxHQUF5QyxHQUFHO1FBQzVELENBQUMsQ0FBQztZQUNFLENBQUMsRUFBRSxHQUFHLEdBQUcsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLEdBQUcsR0FBRyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1lBQzVDLENBQUMsRUFBRSxHQUFHLEdBQUcsR0FBRyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxFQUFFLEdBQUcsR0FBRyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO1NBQzdDO1FBQ0gsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUNMLElBQUEsS0FBQSxPQUFrQixJQUFJLElBQUEsRUFBckIsS0FBSyxRQUFBLEVBQUUsTUFBTSxRQUFRLENBQUM7SUFDN0IsNkJBQ0ssSUFBQSx3QkFBUyxFQUFDO1FBQ1gsS0FBSyxPQUFBO1FBQ0wsTUFBTSxRQUFBO1FBQ04sTUFBTSxFQUFFLFlBQVk7UUFDcEIsT0FBTyxFQUFFLElBQUksYUFBSixJQUFJLHVCQUFKLElBQUksQ0FBRSxPQUFPO1FBQ3RCLFdBQVc7UUFDWCxPQUFPLFNBQUE7S0FDUixDQUFDLEtBQ0YsS0FBSyxPQUFBLEVBQ0wsTUFBTSxRQUFBLEVBQ04sT0FBTyxFQUFFLENBQUMsRUFDVixLQUFLLEVBQUUsQ0FBQyxJQUNSO0FBQ0osQ0FBQztBQS9CRCwwREErQkM7QUFFRCxTQUFnQix3QkFBd0IsQ0FDdEMsU0FBZ0IsRUFDaEIsaUJBQXNELEVBQ3RELElBQXNCLEVBQ3RCLElBQTBCO0lBRTFCLE9BQU8sdUJBQXVCLENBQzVCO1FBQ0UsSUFBSSxFQUFFLG9CQUFvQjtRQUMxQixVQUFVLEVBQUUsU0FBUyxDQUFDLEdBQUcsQ0FBQyxVQUFDLFFBQVEsSUFBSyxPQUFBLENBQUM7WUFDdkMsSUFBSSxFQUFFLE9BQU87WUFDYixXQUFXLEVBQUUsaUJBQWlCLENBQUMsUUFBUSxDQUFDO1NBQ3pDLENBQUMsRUFIc0MsQ0FHdEMsQ0FBQztLQUNHLEVBQ1IsSUFBSSxFQUNKLElBQUksQ0FDTCxDQUFDO0FBQ0osQ0FBQztBQWpCRCw0REFpQkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge2dlb0JvdW5kc30gZnJvbSAnZDMtZ2VvJztcbmltcG9ydCB7Zml0Qm91bmRzfSBmcm9tICdAbWF0aC5nbC93ZWItbWVyY2F0b3InO1xuaW1wb3J0IHR5cGUge1xuICBGZWF0dXJlQ29sbGVjdGlvbixcbiAgR2VvbWV0cnlDb2xsZWN0aW9uLFxuICBHZW9tZXRyeU9iamVjdCxcbn0gZnJvbSAnZ2VvanNvbic7XG5pbXBvcnQgdHlwZSB7Vmlld1N0YXRlfSBmcm9tICcuL3R5cGVzJztcblxuZXhwb3J0IHR5cGUgTG9jYXRpb25Qcm9wZXJ0aWVzID0gYW55O1xuXG5leHBvcnQgdHlwZSBHZXRWaWV3U3RhdGVPcHRpb25zID0ge1xuICBwYWQ/OiBudW1iZXI7IC8vIHNpemUgcmF0aW9cbiAgcGFkZGluZz86IHt0b3A6IG51bWJlcjsgYm90dG9tOiBudW1iZXI7IGxlZnQ6IG51bWJlcjsgcmlnaHQ6IG51bWJlcn07XG4gIHRpbGVTaXplPzogbnVtYmVyO1xuICAvLyBtaW5ab29tPzogbnVtYmVyOyAgLy8gbm90IHN1cHBvcnRlZCBieSBmaXRCb3VuZHNcbiAgbWF4Wm9vbT86IG51bWJlcjtcbn07XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRWaWV3U3RhdGVGb3JGZWF0dXJlcyhcbiAgZmVhdHVyZUNvbGxlY3Rpb246XG4gICAgfCBGZWF0dXJlQ29sbGVjdGlvbjxHZW9tZXRyeU9iamVjdCwgTG9jYXRpb25Qcm9wZXJ0aWVzPlxuICAgIHwgR2VvbWV0cnlDb2xsZWN0aW9uLFxuICBzaXplOiBbbnVtYmVyLCBudW1iZXJdLFxuICBvcHRzPzogR2V0Vmlld1N0YXRlT3B0aW9ucyxcbik6IFZpZXdTdGF0ZSAmIHt3aWR0aDogbnVtYmVyOyBoZWlnaHQ6IG51bWJlcn0ge1xuICBjb25zdCB7cGFkID0gMC4wNSwgbWF4Wm9vbSA9IDEwMH0gPSBvcHRzIHx8IHt9O1xuICBjb25zdCBib3VuZHMgPSBnZW9Cb3VuZHMoZmVhdHVyZUNvbGxlY3Rpb24gYXMgYW55KTtcbiAgY29uc3QgW1t4MSwgeTFdLCBbeDIsIHkyXV0gPSBib3VuZHM7XG4gIGNvbnN0IHBhZGRlZEJvdW5kczogW1tudW1iZXIsIG51bWJlcl0sIFtudW1iZXIsIG51bWJlcl1dID0gcGFkXG4gICAgPyBbXG4gICAgICAgIFt4MSAtIHBhZCAqICh4MiAtIHgxKSwgeTEgLSBwYWQgKiAoeTIgLSB5MSldLFxuICAgICAgICBbeDIgKyBwYWQgKiAoeDIgLSB4MSksIHkyICsgcGFkICogKHkyIC0geTEpXSxcbiAgICAgIF1cbiAgICA6IGJvdW5kcztcbiAgY29uc3QgW3dpZHRoLCBoZWlnaHRdID0gc2l6ZTtcbiAgcmV0dXJuIHtcbiAgICAuLi5maXRCb3VuZHMoe1xuICAgICAgd2lkdGgsXG4gICAgICBoZWlnaHQsXG4gICAgICBib3VuZHM6IHBhZGRlZEJvdW5kcyxcbiAgICAgIHBhZGRpbmc6IG9wdHM/LnBhZGRpbmcsXG4gICAgICAvLyBtaW5ab29tLFxuICAgICAgbWF4Wm9vbSxcbiAgICB9KSxcbiAgICB3aWR0aCxcbiAgICBoZWlnaHQsXG4gICAgYmVhcmluZzogMCxcbiAgICBwaXRjaDogMCxcbiAgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldFZpZXdTdGF0ZUZvckxvY2F0aW9ucyhcbiAgbG9jYXRpb25zOiBhbnlbXSxcbiAgZ2V0TG9jYXRpb25Db29yZHM6IChsb2NhdGlvbjogYW55KSA9PiBbbnVtYmVyLCBudW1iZXJdLFxuICBzaXplOiBbbnVtYmVyLCBudW1iZXJdLFxuICBvcHRzPzogR2V0Vmlld1N0YXRlT3B0aW9ucyxcbik6IFZpZXdTdGF0ZSAmIHt3aWR0aDogbnVtYmVyOyBoZWlnaHQ6IG51bWJlcn0ge1xuICByZXR1cm4gZ2V0Vmlld1N0YXRlRm9yRmVhdHVyZXMoXG4gICAge1xuICAgICAgdHlwZTogJ0dlb21ldHJ5Q29sbGVjdGlvbicsXG4gICAgICBnZW9tZXRyaWVzOiBsb2NhdGlvbnMubWFwKChsb2NhdGlvbikgPT4gKHtcbiAgICAgICAgdHlwZTogJ1BvaW50JyxcbiAgICAgICAgY29vcmRpbmF0ZXM6IGdldExvY2F0aW9uQ29vcmRzKGxvY2F0aW9uKSxcbiAgICAgIH0pKSxcbiAgICB9IGFzIGFueSxcbiAgICBzaXplLFxuICAgIG9wdHMsXG4gICk7XG59XG4iXX0=
|
package/dist-es5/index.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export * from './types';
|
|
2
|
-
export * from './colors';
|
|
3
|
-
export * from './FlowmapState';
|
|
4
|
-
export * from './FlowmapSelectors';
|
|
5
|
-
export * from './time';
|
|
6
|
-
export * from './getViewStateForLocations';
|
|
7
|
-
export * from './provider/FlowmapDataProvider';
|
|
8
|
-
export { default as FlowmapAggregateAccessors } from './FlowmapAggregateAccessors';
|
|
9
|
-
export type { default as FlowmapDataProvider } from './provider/FlowmapDataProvider';
|
|
10
|
-
export { default as LocalFlowmapDataProvider } from './provider/LocalFlowmapDataProvider';
|
|
11
|
-
//# sourceMappingURL=index.d.ts.map
|
package/dist-es5/index.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,oBAAoB,CAAC;AACnC,cAAc,QAAQ,CAAC;AACvB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,OAAO,EAAC,OAAO,IAAI,yBAAyB,EAAC,MAAM,6BAA6B,CAAC;AACjF,YAAY,EAAC,OAAO,IAAI,mBAAmB,EAAC,MAAM,gCAAgC,CAAC;AACnF,OAAO,EAAC,OAAO,IAAI,wBAAwB,EAAC,MAAM,qCAAqC,CAAC"}
|
package/dist-es5/index.js
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
|
-
};
|
|
12
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
13
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
14
|
-
};
|
|
15
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
-
exports.LocalFlowmapDataProvider = exports.FlowmapAggregateAccessors = void 0;
|
|
17
|
-
__exportStar(require("./types"), exports);
|
|
18
|
-
__exportStar(require("./colors"), exports);
|
|
19
|
-
__exportStar(require("./FlowmapState"), exports);
|
|
20
|
-
__exportStar(require("./FlowmapSelectors"), exports);
|
|
21
|
-
__exportStar(require("./time"), exports);
|
|
22
|
-
__exportStar(require("./getViewStateForLocations"), exports);
|
|
23
|
-
__exportStar(require("./provider/FlowmapDataProvider"), exports);
|
|
24
|
-
var FlowmapAggregateAccessors_1 = require("./FlowmapAggregateAccessors");
|
|
25
|
-
Object.defineProperty(exports, "FlowmapAggregateAccessors", { enumerable: true, get: function () { return __importDefault(FlowmapAggregateAccessors_1).default; } });
|
|
26
|
-
var LocalFlowmapDataProvider_1 = require("./provider/LocalFlowmapDataProvider");
|
|
27
|
-
Object.defineProperty(exports, "LocalFlowmapDataProvider", { enumerable: true, get: function () { return __importDefault(LocalFlowmapDataProvider_1).default; } });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDBDQUF3QjtBQUN4QiwyQ0FBeUI7QUFDekIsaURBQStCO0FBQy9CLHFEQUFtQztBQUNuQyx5Q0FBdUI7QUFDdkIsNkRBQTJDO0FBQzNDLGlFQUErQztBQUMvQyx5RUFBaUY7QUFBekUsdUpBQUEsT0FBTyxPQUE2QjtBQUU1QyxnRkFBd0Y7QUFBaEYscUpBQUEsT0FBTyxPQUE0QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9jb2xvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9GbG93bWFwU3RhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi9GbG93bWFwU2VsZWN0b3JzJztcbmV4cG9ydCAqIGZyb20gJy4vdGltZSc7XG5leHBvcnQgKiBmcm9tICcuL2dldFZpZXdTdGF0ZUZvckxvY2F0aW9ucyc7XG5leHBvcnQgKiBmcm9tICcuL3Byb3ZpZGVyL0Zsb3dtYXBEYXRhUHJvdmlkZXInO1xuZXhwb3J0IHtkZWZhdWx0IGFzIEZsb3dtYXBBZ2dyZWdhdGVBY2Nlc3NvcnN9IGZyb20gJy4vRmxvd21hcEFnZ3JlZ2F0ZUFjY2Vzc29ycyc7XG5leHBvcnQgdHlwZSB7ZGVmYXVsdCBhcyBGbG93bWFwRGF0YVByb3ZpZGVyfSBmcm9tICcuL3Byb3ZpZGVyL0Zsb3dtYXBEYXRhUHJvdmlkZXInO1xuZXhwb3J0IHtkZWZhdWx0IGFzIExvY2FsRmxvd21hcERhdGFQcm92aWRlcn0gZnJvbSAnLi9wcm92aWRlci9Mb2NhbEZsb3dtYXBEYXRhUHJvdmlkZXInO1xuIl19
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { AggregateFlow, Cluster, LocationTotals } from '..';
|
|
2
|
-
import { FlowmapState } from '../FlowmapState';
|
|
3
|
-
import { ClusterNode, FlowmapData, FlowmapDataAccessors, LayersData, ViewportProps } from '../types';
|
|
4
|
-
export default interface FlowmapDataProvider<L, F> {
|
|
5
|
-
setAccessors(accessors: FlowmapDataAccessors<L, F>): void;
|
|
6
|
-
setFlowmapState(flowmapState: FlowmapState): Promise<void>;
|
|
7
|
-
getViewportForLocations(dims: [number, number]): Promise<ViewportProps | undefined>;
|
|
8
|
-
getFlowByIndex(index: number): Promise<F | AggregateFlow | undefined>;
|
|
9
|
-
getLocationById(id: string): Promise<L | Cluster | undefined>;
|
|
10
|
-
getLocationByIndex(idx: number): Promise<L | ClusterNode | undefined>;
|
|
11
|
-
getTotalsForLocation(id: string): Promise<LocationTotals | undefined>;
|
|
12
|
-
getLayersData(): Promise<LayersData | undefined>;
|
|
13
|
-
}
|
|
14
|
-
export declare function isFlowmapData<L, F>(data: Record<string, any>): data is FlowmapData<L, F>;
|
|
15
|
-
export declare function isFlowmapDataProvider<L, F>(dataProvider: Record<string, any>): dataProvider is FlowmapDataProvider<L, F>;
|
|
16
|
-
//# sourceMappingURL=FlowmapDataProvider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"FlowmapDataProvider.d.ts","sourceRoot":"","sources":["../../src/provider/FlowmapDataProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAE,OAAO,EAAqB,cAAc,EAAC,MAAM,IAAI,CAAC;AAC7E,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EACL,WAAW,EACX,WAAW,EACX,oBAAoB,EACpB,UAAU,EACV,aAAa,EACd,MAAM,UAAU,CAAC;AAElB,MAAM,CAAC,OAAO,WAAW,mBAAmB,CAAC,CAAC,EAAE,CAAC;IAC/C,YAAY,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC;IAE1D,eAAe,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAI3D,uBAAuB,CACrB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,GACrB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAAC;IAItC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,aAAa,GAAG,SAAS,CAAC,CAAC;IAEtE,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,OAAO,GAAG,SAAS,CAAC,CAAC;IAE9D,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,WAAW,GAAG,SAAS,CAAC,CAAC;IAEtE,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAAC;IAQtE,aAAa,IAAI,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAAC;CAClD;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,CAAC,EAChC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACxB,IAAI,IAAI,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,CAQ3B;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,CAAC,EACxC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAChC,YAAY,IAAI,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC,CAU3C"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isFlowmapDataProvider = exports.isFlowmapData = void 0;
|
|
4
|
-
function isFlowmapData(data) {
|
|
5
|
-
return (data &&
|
|
6
|
-
data.locations &&
|
|
7
|
-
data.flows &&
|
|
8
|
-
Array.isArray(data.locations) &&
|
|
9
|
-
Array.isArray(data.flows));
|
|
10
|
-
}
|
|
11
|
-
exports.isFlowmapData = isFlowmapData;
|
|
12
|
-
function isFlowmapDataProvider(dataProvider) {
|
|
13
|
-
return (dataProvider &&
|
|
14
|
-
typeof dataProvider.setFlowmapState === 'function' &&
|
|
15
|
-
typeof dataProvider.getViewportForLocations === 'function' &&
|
|
16
|
-
typeof dataProvider.getFlowByIndex === 'function' &&
|
|
17
|
-
typeof dataProvider.getLocationById === 'function' &&
|
|
18
|
-
typeof dataProvider.getLocationByIndex === 'function' &&
|
|
19
|
-
typeof dataProvider.getLayersData === 'function');
|
|
20
|
-
}
|
|
21
|
-
exports.isFlowmapDataProvider = isFlowmapDataProvider;
|
|
22
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmxvd21hcERhdGFQcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wcm92aWRlci9GbG93bWFwRGF0YVByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQXdDQSxTQUFnQixhQUFhLENBQzNCLElBQXlCO0lBRXpCLE9BQU8sQ0FDTCxJQUFJO1FBQ0osSUFBSSxDQUFDLFNBQVM7UUFDZCxJQUFJLENBQUMsS0FBSztRQUNWLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQztRQUM3QixLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FDMUIsQ0FBQztBQUNKLENBQUM7QUFWRCxzQ0FVQztBQUVELFNBQWdCLHFCQUFxQixDQUNuQyxZQUFpQztJQUVqQyxPQUFPLENBQ0wsWUFBWTtRQUNaLE9BQU8sWUFBWSxDQUFDLGVBQWUsS0FBSyxVQUFVO1FBQ2xELE9BQU8sWUFBWSxDQUFDLHVCQUF1QixLQUFLLFVBQVU7UUFDMUQsT0FBTyxZQUFZLENBQUMsY0FBYyxLQUFLLFVBQVU7UUFDakQsT0FBTyxZQUFZLENBQUMsZUFBZSxLQUFLLFVBQVU7UUFDbEQsT0FBTyxZQUFZLENBQUMsa0JBQWtCLEtBQUssVUFBVTtRQUNyRCxPQUFPLFlBQVksQ0FBQyxhQUFhLEtBQUssVUFBVSxDQUNqRCxDQUFDO0FBQ0osQ0FBQztBQVpELHNEQVlDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZ2dyZWdhdGVGbG93LCBDbHVzdGVyLCBMb2NhdGlvbkFjY2Vzc29ycywgTG9jYXRpb25Ub3RhbHN9IGZyb20gJy4uJztcbmltcG9ydCB7Rmxvd21hcFN0YXRlfSBmcm9tICcuLi9GbG93bWFwU3RhdGUnO1xuaW1wb3J0IHtcbiAgQ2x1c3Rlck5vZGUsXG4gIEZsb3dtYXBEYXRhLFxuICBGbG93bWFwRGF0YUFjY2Vzc29ycyxcbiAgTGF5ZXJzRGF0YSxcbiAgVmlld3BvcnRQcm9wcyxcbn0gZnJvbSAnLi4vdHlwZXMnO1xuXG5leHBvcnQgZGVmYXVsdCBpbnRlcmZhY2UgRmxvd21hcERhdGFQcm92aWRlcjxMLCBGPiB7XG4gIHNldEFjY2Vzc29ycyhhY2Nlc3NvcnM6IEZsb3dtYXBEYXRhQWNjZXNzb3JzPEwsIEY+KTogdm9pZDtcblxuICBzZXRGbG93bWFwU3RhdGUoZmxvd21hcFN0YXRlOiBGbG93bWFwU3RhdGUpOiBQcm9taXNlPHZvaWQ+O1xuXG4gIC8vIGNsZWFyRGF0YSgpOiB2b2lkO1xuXG4gIGdldFZpZXdwb3J0Rm9yTG9jYXRpb25zKFxuICAgIGRpbXM6IFtudW1iZXIsIG51bWJlcl0sXG4gICk6IFByb21pc2U8Vmlld3BvcnRQcm9wcyB8IHVuZGVmaW5lZD47XG5cbiAgLy8gZ2V0Rmxvd1RvdGFscygpOiBQcm9taXNlPEZsb3dUb3RhbHM+O1xuXG4gIGdldEZsb3dCeUluZGV4KGluZGV4OiBudW1iZXIpOiBQcm9taXNlPEYgfCBBZ2dyZWdhdGVGbG93IHwgdW5kZWZpbmVkPjtcblxuICBnZXRMb2NhdGlvbkJ5SWQoaWQ6IHN0cmluZyk6IFByb21pc2U8TCB8IENsdXN0ZXIgfCB1bmRlZmluZWQ+O1xuXG4gIGdldExvY2F0aW9uQnlJbmRleChpZHg6IG51bWJlcik6IFByb21pc2U8TCB8IENsdXN0ZXJOb2RlIHwgdW5kZWZpbmVkPjtcblxuICBnZXRUb3RhbHNGb3JMb2NhdGlvbihpZDogc3RyaW5nKTogUHJvbWlzZTxMb2NhdGlvblRvdGFscyB8IHVuZGVmaW5lZD47XG5cbiAgLy8gZ2V0TG9jYXRpb25zSW5CYm94KFxuICAvLyAgIGJib3g6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyLCBudW1iZXJdLFxuICAvLyApOiBQcm9taXNlPEFycmF5PEZsb3dMb2NhdGlvbiB8IENsdXN0ZXJOb2RlPiB8IHVuZGVmaW5lZD47XG5cbiAgLy8gZ2V0TG9jYXRpb25zRm9yU2VhcmNoQm94KCk6IFByb21pc2U8KEZsb3dMb2NhdGlvbiB8IENsdXN0ZXJOb2RlKVtdIHwgdW5kZWZpbmVkPjtcblxuICBnZXRMYXllcnNEYXRhKCk6IFByb21pc2U8TGF5ZXJzRGF0YSB8IHVuZGVmaW5lZD47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0Zsb3dtYXBEYXRhPEwsIEY+KFxuICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuKTogZGF0YSBpcyBGbG93bWFwRGF0YTxMLCBGPiB7XG4gIHJldHVybiAoXG4gICAgZGF0YSAmJlxuICAgIGRhdGEubG9jYXRpb25zICYmXG4gICAgZGF0YS5mbG93cyAmJlxuICAgIEFycmF5LmlzQXJyYXkoZGF0YS5sb2NhdGlvbnMpICYmXG4gICAgQXJyYXkuaXNBcnJheShkYXRhLmZsb3dzKVxuICApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNGbG93bWFwRGF0YVByb3ZpZGVyPEwsIEY+KFxuICBkYXRhUHJvdmlkZXI6IFJlY29yZDxzdHJpbmcsIGFueT4sXG4pOiBkYXRhUHJvdmlkZXIgaXMgRmxvd21hcERhdGFQcm92aWRlcjxMLCBGPiB7XG4gIHJldHVybiAoXG4gICAgZGF0YVByb3ZpZGVyICYmXG4gICAgdHlwZW9mIGRhdGFQcm92aWRlci5zZXRGbG93bWFwU3RhdGUgPT09ICdmdW5jdGlvbicgJiZcbiAgICB0eXBlb2YgZGF0YVByb3ZpZGVyLmdldFZpZXdwb3J0Rm9yTG9jYXRpb25zID09PSAnZnVuY3Rpb24nICYmXG4gICAgdHlwZW9mIGRhdGFQcm92aWRlci5nZXRGbG93QnlJbmRleCA9PT0gJ2Z1bmN0aW9uJyAmJlxuICAgIHR5cGVvZiBkYXRhUHJvdmlkZXIuZ2V0TG9jYXRpb25CeUlkID09PSAnZnVuY3Rpb24nICYmXG4gICAgdHlwZW9mIGRhdGFQcm92aWRlci5nZXRMb2NhdGlvbkJ5SW5kZXggPT09ICdmdW5jdGlvbicgJiZcbiAgICB0eXBlb2YgZGF0YVByb3ZpZGVyLmdldExheWVyc0RhdGEgPT09ICdmdW5jdGlvbidcbiAgKTtcbn1cbiJdfQ==
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import type FlowmapDataProvider from './FlowmapDataProvider';
|
|
2
|
-
import type { Cluster, ClusterNode, FlowmapData, FlowmapDataAccessors, LayersData, LocationTotals, ViewportProps, AggregateFlow } from '../types';
|
|
3
|
-
import { FlowmapState } from '../FlowmapState';
|
|
4
|
-
import { GetViewStateOptions } from '../getViewStateForLocations';
|
|
5
|
-
export default class LocalFlowmapDataProvider<L, F> implements FlowmapDataProvider<L, F> {
|
|
6
|
-
private selectors;
|
|
7
|
-
private flowmapData;
|
|
8
|
-
private flowmapState;
|
|
9
|
-
constructor(accessors: FlowmapDataAccessors<L, F>);
|
|
10
|
-
setAccessors(accessors: FlowmapDataAccessors<L, F>): void;
|
|
11
|
-
setFlowmapData(flowmapData: FlowmapData<L, F>): Promise<void>;
|
|
12
|
-
setFlowmapState(flowmapState: FlowmapState): Promise<void>;
|
|
13
|
-
getFlowByIndex(idx: number): Promise<F | AggregateFlow | undefined>;
|
|
14
|
-
getLocationByIndex(idx: number): Promise<L | ClusterNode | undefined>;
|
|
15
|
-
getLayersData(): Promise<LayersData | undefined>;
|
|
16
|
-
getLocationById(id: string): Promise<L | Cluster | undefined>;
|
|
17
|
-
getTotalsForLocation(id: string): Promise<LocationTotals | undefined>;
|
|
18
|
-
getViewportForLocations(dims: [number, number], opts?: GetViewStateOptions): Promise<ViewportProps | undefined>;
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=LocalFlowmapDataProvider.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LocalFlowmapDataProvider.d.ts","sourceRoot":"","sources":["../../src/provider/LocalFlowmapDataProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,mBAAmB,MAAM,uBAAuB,CAAC;AAC7D,OAAO,KAAK,EACV,OAAO,EACP,WAAW,EACX,WAAW,EACX,oBAAoB,EACpB,UAAU,EACV,cAAc,EACd,aAAa,EACb,aAAa,EACd,MAAM,UAAU,CAAC;AAClB,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAE7C,OAAO,EACL,mBAAmB,EAEpB,MAAM,6BAA6B,CAAC;AAErC,MAAM,CAAC,OAAO,OAAO,wBAAwB,CAAC,CAAC,EAAE,CAAC,CAChD,YAAW,mBAAmB,CAAC,CAAC,EAAE,CAAC,CAAC;IAEpC,OAAO,CAAC,SAAS,CAAyB;IAC1C,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,YAAY,CAA2B;gBAEnC,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC;IAOjD,YAAY,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC,EAAE,CAAC,CAAC;IAI5C,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7D,eAAe,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1D,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,aAAa,GAAG,SAAS,CAAC;IAWnE,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,WAAW,GAAG,SAAS,CAAC;IAWrE,aAAa,IAAI,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;IAOhD,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,OAAO,GAAG,SAAS,CAAC;IAqB7D,oBAAoB,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC;IASrE,uBAAuB,CAC3B,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EACtB,IAAI,CAAC,EAAE,mBAAmB,GACzB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC;CAetC"}
|
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (_) try {
|
|
18
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
39
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
40
|
-
};
|
|
41
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
-
var FlowmapSelectors_1 = __importDefault(require("../FlowmapSelectors"));
|
|
43
|
-
var getViewStateForLocations_1 = require("../getViewStateForLocations");
|
|
44
|
-
var LocalFlowmapDataProvider = /** @class */ (function () {
|
|
45
|
-
function LocalFlowmapDataProvider(accessors) {
|
|
46
|
-
// scope selectors to the concrete instance of FlowmapDataProvider
|
|
47
|
-
this.selectors = new FlowmapSelectors_1.default(accessors);
|
|
48
|
-
this.flowmapData = undefined;
|
|
49
|
-
this.flowmapState = undefined;
|
|
50
|
-
}
|
|
51
|
-
LocalFlowmapDataProvider.prototype.setAccessors = function (accessors) {
|
|
52
|
-
this.selectors.setAccessors(accessors);
|
|
53
|
-
};
|
|
54
|
-
LocalFlowmapDataProvider.prototype.setFlowmapData = function (flowmapData) {
|
|
55
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
56
|
-
return __generator(this, function (_a) {
|
|
57
|
-
this.flowmapData = flowmapData;
|
|
58
|
-
return [2 /*return*/];
|
|
59
|
-
});
|
|
60
|
-
});
|
|
61
|
-
};
|
|
62
|
-
LocalFlowmapDataProvider.prototype.setFlowmapState = function (flowmapState) {
|
|
63
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
64
|
-
return __generator(this, function (_a) {
|
|
65
|
-
this.flowmapState = flowmapState;
|
|
66
|
-
return [2 /*return*/];
|
|
67
|
-
});
|
|
68
|
-
});
|
|
69
|
-
};
|
|
70
|
-
LocalFlowmapDataProvider.prototype.getFlowByIndex = function (idx) {
|
|
71
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
72
|
-
var flows;
|
|
73
|
-
return __generator(this, function (_a) {
|
|
74
|
-
if (!this.flowmapState || !this.flowmapData) {
|
|
75
|
-
return [2 /*return*/, undefined];
|
|
76
|
-
}
|
|
77
|
-
flows = this.selectors.getFlowsForFlowmapLayer(this.flowmapState, this.flowmapData);
|
|
78
|
-
return [2 /*return*/, flows === null || flows === void 0 ? void 0 : flows[idx]];
|
|
79
|
-
});
|
|
80
|
-
});
|
|
81
|
-
};
|
|
82
|
-
LocalFlowmapDataProvider.prototype.getLocationByIndex = function (idx) {
|
|
83
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
84
|
-
var locations;
|
|
85
|
-
return __generator(this, function (_a) {
|
|
86
|
-
if (!this.flowmapState || !this.flowmapData) {
|
|
87
|
-
return [2 /*return*/, undefined];
|
|
88
|
-
}
|
|
89
|
-
locations = this.selectors.getLocationsForFlowmapLayer(this.flowmapState, this.flowmapData);
|
|
90
|
-
return [2 /*return*/, locations === null || locations === void 0 ? void 0 : locations[idx]];
|
|
91
|
-
});
|
|
92
|
-
});
|
|
93
|
-
};
|
|
94
|
-
LocalFlowmapDataProvider.prototype.getLayersData = function () {
|
|
95
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
96
|
-
return __generator(this, function (_a) {
|
|
97
|
-
if (!this.flowmapState || !this.flowmapData) {
|
|
98
|
-
return [2 /*return*/, undefined];
|
|
99
|
-
}
|
|
100
|
-
return [2 /*return*/, this.selectors.getLayersData(this.flowmapState, this.flowmapData)];
|
|
101
|
-
});
|
|
102
|
-
});
|
|
103
|
-
};
|
|
104
|
-
LocalFlowmapDataProvider.prototype.getLocationById = function (id) {
|
|
105
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
106
|
-
var clusterIndex, cluster, locationsById;
|
|
107
|
-
return __generator(this, function (_a) {
|
|
108
|
-
if (!this.flowmapState || !this.flowmapData) {
|
|
109
|
-
return [2 /*return*/, undefined];
|
|
110
|
-
}
|
|
111
|
-
clusterIndex = this.selectors.getClusterIndex(this.flowmapState, this.flowmapData);
|
|
112
|
-
if (clusterIndex) {
|
|
113
|
-
cluster = clusterIndex.getClusterById(id);
|
|
114
|
-
if (cluster) {
|
|
115
|
-
return [2 /*return*/, cluster];
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
locationsById = this.selectors.getLocationsById(this.flowmapState, this.flowmapData);
|
|
119
|
-
return [2 /*return*/, locationsById === null || locationsById === void 0 ? void 0 : locationsById.get(id)];
|
|
120
|
-
});
|
|
121
|
-
});
|
|
122
|
-
};
|
|
123
|
-
LocalFlowmapDataProvider.prototype.getTotalsForLocation = function (id) {
|
|
124
|
-
var _a;
|
|
125
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
126
|
-
return __generator(this, function (_b) {
|
|
127
|
-
if (!this.flowmapState || !this.flowmapData) {
|
|
128
|
-
return [2 /*return*/, undefined];
|
|
129
|
-
}
|
|
130
|
-
return [2 /*return*/, (_a = this.selectors
|
|
131
|
-
.getLocationTotals(this.flowmapState, this.flowmapData)) === null || _a === void 0 ? void 0 : _a.get(id)];
|
|
132
|
-
});
|
|
133
|
-
});
|
|
134
|
-
};
|
|
135
|
-
LocalFlowmapDataProvider.prototype.getViewportForLocations = function (dims, opts) {
|
|
136
|
-
var _a;
|
|
137
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
138
|
-
var _this = this;
|
|
139
|
-
return __generator(this, function (_b) {
|
|
140
|
-
if (!((_a = this.flowmapData) === null || _a === void 0 ? void 0 : _a.locations)) {
|
|
141
|
-
return [2 /*return*/, undefined];
|
|
142
|
-
}
|
|
143
|
-
// @ts-ignore
|
|
144
|
-
return [2 /*return*/, (0, getViewStateForLocations_1.getViewStateForLocations)(this.flowmapData.locations, function (loc) { return [
|
|
145
|
-
_this.selectors.accessors.getLocationLon(loc),
|
|
146
|
-
_this.selectors.accessors.getLocationLat(loc),
|
|
147
|
-
]; }, dims, opts)];
|
|
148
|
-
});
|
|
149
|
-
});
|
|
150
|
-
};
|
|
151
|
-
return LocalFlowmapDataProvider;
|
|
152
|
-
}());
|
|
153
|
-
exports.default = LocalFlowmapDataProvider;
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG9jYWxGbG93bWFwRGF0YVByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3Byb3ZpZGVyL0xvY2FsRmxvd21hcERhdGFQcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVlBLHlFQUFtRDtBQUNuRCx3RUFHcUM7QUFFckM7SUFPRSxrQ0FBWSxTQUFxQztRQUMvQyxrRUFBa0U7UUFDbEUsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLDBCQUFnQixDQUFPLFNBQVMsQ0FBQyxDQUFDO1FBQ3ZELElBQUksQ0FBQyxXQUFXLEdBQUcsU0FBUyxDQUFDO1FBQzdCLElBQUksQ0FBQyxZQUFZLEdBQUcsU0FBUyxDQUFDO0lBQ2hDLENBQUM7SUFFRCwrQ0FBWSxHQUFaLFVBQWEsU0FBcUM7UUFDaEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUVLLGlEQUFjLEdBQXBCLFVBQXFCLFdBQThCOzs7Z0JBQ2pELElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDOzs7O0tBQ2hDO0lBRUssa0RBQWUsR0FBckIsVUFBc0IsWUFBMEI7OztnQkFDOUMsSUFBSSxDQUFDLFlBQVksR0FBRyxZQUFZLENBQUM7Ozs7S0FDbEM7SUFFSyxpREFBYyxHQUFwQixVQUFxQixHQUFXOzs7O2dCQUM5QixJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7b0JBQzNDLHNCQUFPLFNBQVMsRUFBQztpQkFDbEI7Z0JBQ0ssS0FBSyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsdUJBQXVCLENBQ2xELElBQUksQ0FBQyxZQUFZLEVBQ2pCLElBQUksQ0FBQyxXQUFXLENBQ2pCLENBQUM7Z0JBQ0Ysc0JBQU8sS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFHLEdBQUcsQ0FBQyxFQUFDOzs7S0FDckI7SUFFSyxxREFBa0IsR0FBeEIsVUFBeUIsR0FBVzs7OztnQkFDbEMsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFO29CQUMzQyxzQkFBTyxTQUFTLEVBQUM7aUJBQ2xCO2dCQUNLLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLDJCQUEyQixDQUMxRCxJQUFJLENBQUMsWUFBWSxFQUNqQixJQUFJLENBQUMsV0FBVyxDQUNqQixDQUFDO2dCQUNGLHNCQUFPLFNBQVMsYUFBVCxTQUFTLHVCQUFULFNBQVMsQ0FBRyxHQUFHLENBQUMsRUFBQzs7O0tBQ3pCO0lBRUssZ0RBQWEsR0FBbkI7OztnQkFDRSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7b0JBQzNDLHNCQUFPLFNBQVMsRUFBQztpQkFDbEI7Z0JBQ0Qsc0JBQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUM7OztLQUMxRTtJQUVLLGtEQUFlLEdBQXJCLFVBQXNCLEVBQVU7Ozs7Z0JBQzlCLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtvQkFDM0Msc0JBQU8sU0FBUyxFQUFDO2lCQUNsQjtnQkFDSyxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQ2pELElBQUksQ0FBQyxZQUFZLEVBQ2pCLElBQUksQ0FBQyxXQUFXLENBQ2pCLENBQUM7Z0JBQ0YsSUFBSSxZQUFZLEVBQUU7b0JBQ1YsT0FBTyxHQUFHLFlBQVksQ0FBQyxjQUFjLENBQUMsRUFBRSxDQUFDLENBQUM7b0JBQ2hELElBQUksT0FBTyxFQUFFO3dCQUNYLHNCQUFPLE9BQU8sRUFBQztxQkFDaEI7aUJBQ0Y7Z0JBQ0ssYUFBYSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLENBQ25ELElBQUksQ0FBQyxZQUFZLEVBQ2pCLElBQUksQ0FBQyxXQUFXLENBQ2pCLENBQUM7Z0JBQ0Ysc0JBQU8sYUFBYSxhQUFiLGFBQWEsdUJBQWIsYUFBYSxDQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBQzs7O0tBQy9CO0lBRUssdURBQW9CLEdBQTFCLFVBQTJCLEVBQVU7Ozs7Z0JBQ25DLElBQUksQ0FBQyxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtvQkFDM0Msc0JBQU8sU0FBUyxFQUFDO2lCQUNsQjtnQkFDRCxzQkFBTyxNQUFBLElBQUksQ0FBQyxTQUFTO3lCQUNsQixpQkFBaUIsQ0FBQyxJQUFJLENBQUMsWUFBWSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsMENBQ3JELEdBQUcsQ0FBQyxFQUFFLENBQUMsRUFBQzs7O0tBQ2I7SUFFSywwREFBdUIsR0FBN0IsVUFDRSxJQUFzQixFQUN0QixJQUEwQjs7Ozs7Z0JBRTFCLElBQUksQ0FBQyxDQUFBLE1BQUEsSUFBSSxDQUFDLFdBQVcsMENBQUUsU0FBUyxDQUFBLEVBQUU7b0JBQ2hDLHNCQUFPLFNBQVMsRUFBQztpQkFDbEI7Z0JBQ0QsYUFBYTtnQkFDYixzQkFBTyxJQUFBLG1EQUF3QixFQUM3QixJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFDMUIsVUFBQyxHQUFHLElBQUssT0FBQTt3QkFDUCxLQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDO3dCQUM1QyxLQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDO3FCQUM3QyxFQUhRLENBR1IsRUFDRCxJQUFJLEVBQ0osSUFBSSxDQUNMLEVBQUM7OztLQUNIO0lBQ0gsK0JBQUM7QUFBRCxDQUFDLEFBdkdELElBdUdDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgRmxvd21hcERhdGFQcm92aWRlciBmcm9tICcuL0Zsb3dtYXBEYXRhUHJvdmlkZXInO1xuaW1wb3J0IHR5cGUge1xuICBDbHVzdGVyLFxuICBDbHVzdGVyTm9kZSxcbiAgRmxvd21hcERhdGEsXG4gIEZsb3dtYXBEYXRhQWNjZXNzb3JzLFxuICBMYXllcnNEYXRhLFxuICBMb2NhdGlvblRvdGFscyxcbiAgVmlld3BvcnRQcm9wcyxcbiAgQWdncmVnYXRlRmxvdyxcbn0gZnJvbSAnLi4vdHlwZXMnO1xuaW1wb3J0IHtGbG93bWFwU3RhdGV9IGZyb20gJy4uL0Zsb3dtYXBTdGF0ZSc7XG5pbXBvcnQgRmxvd21hcFNlbGVjdG9ycyBmcm9tICcuLi9GbG93bWFwU2VsZWN0b3JzJztcbmltcG9ydCB7XG4gIEdldFZpZXdTdGF0ZU9wdGlvbnMsXG4gIGdldFZpZXdTdGF0ZUZvckxvY2F0aW9ucyxcbn0gZnJvbSAnLi4vZ2V0Vmlld1N0YXRlRm9yTG9jYXRpb25zJztcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgTG9jYWxGbG93bWFwRGF0YVByb3ZpZGVyPEwsIEY+XG4gIGltcGxlbWVudHMgRmxvd21hcERhdGFQcm92aWRlcjxMLCBGPlxue1xuICBwcml2YXRlIHNlbGVjdG9yczogRmxvd21hcFNlbGVjdG9yczxMLCBGPjtcbiAgcHJpdmF0ZSBmbG93bWFwRGF0YTogRmxvd21hcERhdGE8TCwgRj4gfCB1bmRlZmluZWQ7XG4gIHByaXZhdGUgZmxvd21hcFN0YXRlOiBGbG93bWFwU3RhdGUgfCB1bmRlZmluZWQ7XG5cbiAgY29uc3RydWN0b3IoYWNjZXNzb3JzOiBGbG93bWFwRGF0YUFjY2Vzc29yczxMLCBGPikge1xuICAgIC8vIHNjb3BlIHNlbGVjdG9ycyB0byB0aGUgY29uY3JldGUgaW5zdGFuY2Ugb2YgRmxvd21hcERhdGFQcm92aWRlclxuICAgIHRoaXMuc2VsZWN0b3JzID0gbmV3IEZsb3dtYXBTZWxlY3RvcnM8TCwgRj4oYWNjZXNzb3JzKTtcbiAgICB0aGlzLmZsb3dtYXBEYXRhID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuZmxvd21hcFN0YXRlID0gdW5kZWZpbmVkO1xuICB9XG5cbiAgc2V0QWNjZXNzb3JzKGFjY2Vzc29yczogRmxvd21hcERhdGFBY2Nlc3NvcnM8TCwgRj4pIHtcbiAgICB0aGlzLnNlbGVjdG9ycy5zZXRBY2Nlc3NvcnMoYWNjZXNzb3JzKTtcbiAgfVxuXG4gIGFzeW5jIHNldEZsb3dtYXBEYXRhKGZsb3dtYXBEYXRhOiBGbG93bWFwRGF0YTxMLCBGPik6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMuZmxvd21hcERhdGEgPSBmbG93bWFwRGF0YTtcbiAgfVxuXG4gIGFzeW5jIHNldEZsb3dtYXBTdGF0ZShmbG93bWFwU3RhdGU6IEZsb3dtYXBTdGF0ZSk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRoaXMuZmxvd21hcFN0YXRlID0gZmxvd21hcFN0YXRlO1xuICB9XG5cbiAgYXN5bmMgZ2V0Rmxvd0J5SW5kZXgoaWR4OiBudW1iZXIpOiBQcm9taXNlPEYgfCBBZ2dyZWdhdGVGbG93IHwgdW5kZWZpbmVkPiB7XG4gICAgaWYgKCF0aGlzLmZsb3dtYXBTdGF0ZSB8fCAhdGhpcy5mbG93bWFwRGF0YSkge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgY29uc3QgZmxvd3MgPSB0aGlzLnNlbGVjdG9ycy5nZXRGbG93c0ZvckZsb3dtYXBMYXllcihcbiAgICAgIHRoaXMuZmxvd21hcFN0YXRlLFxuICAgICAgdGhpcy5mbG93bWFwRGF0YSxcbiAgICApO1xuICAgIHJldHVybiBmbG93cz8uW2lkeF07XG4gIH1cblxuICBhc3luYyBnZXRMb2NhdGlvbkJ5SW5kZXgoaWR4OiBudW1iZXIpOiBQcm9taXNlPEwgfCBDbHVzdGVyTm9kZSB8IHVuZGVmaW5lZD4ge1xuICAgIGlmICghdGhpcy5mbG93bWFwU3RhdGUgfHwgIXRoaXMuZmxvd21hcERhdGEpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIGNvbnN0IGxvY2F0aW9ucyA9IHRoaXMuc2VsZWN0b3JzLmdldExvY2F0aW9uc0ZvckZsb3dtYXBMYXllcihcbiAgICAgIHRoaXMuZmxvd21hcFN0YXRlLFxuICAgICAgdGhpcy5mbG93bWFwRGF0YSxcbiAgICApO1xuICAgIHJldHVybiBsb2NhdGlvbnM/LltpZHhdO1xuICB9XG5cbiAgYXN5bmMgZ2V0TGF5ZXJzRGF0YSgpOiBQcm9taXNlPExheWVyc0RhdGEgfCB1bmRlZmluZWQ+IHtcbiAgICBpZiAoIXRoaXMuZmxvd21hcFN0YXRlIHx8ICF0aGlzLmZsb3dtYXBEYXRhKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zZWxlY3RvcnMuZ2V0TGF5ZXJzRGF0YSh0aGlzLmZsb3dtYXBTdGF0ZSwgdGhpcy5mbG93bWFwRGF0YSk7XG4gIH1cblxuICBhc3luYyBnZXRMb2NhdGlvbkJ5SWQoaWQ6IHN0cmluZyk6IFByb21pc2U8TCB8IENsdXN0ZXIgfCB1bmRlZmluZWQ+IHtcbiAgICBpZiAoIXRoaXMuZmxvd21hcFN0YXRlIHx8ICF0aGlzLmZsb3dtYXBEYXRhKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICBjb25zdCBjbHVzdGVySW5kZXggPSB0aGlzLnNlbGVjdG9ycy5nZXRDbHVzdGVySW5kZXgoXG4gICAgICB0aGlzLmZsb3dtYXBTdGF0ZSxcbiAgICAgIHRoaXMuZmxvd21hcERhdGEsXG4gICAgKTtcbiAgICBpZiAoY2x1c3RlckluZGV4KSB7XG4gICAgICBjb25zdCBjbHVzdGVyID0gY2x1c3RlckluZGV4LmdldENsdXN0ZXJCeUlkKGlkKTtcbiAgICAgIGlmIChjbHVzdGVyKSB7XG4gICAgICAgIHJldHVybiBjbHVzdGVyO1xuICAgICAgfVxuICAgIH1cbiAgICBjb25zdCBsb2NhdGlvbnNCeUlkID0gdGhpcy5zZWxlY3RvcnMuZ2V0TG9jYXRpb25zQnlJZChcbiAgICAgIHRoaXMuZmxvd21hcFN0YXRlLFxuICAgICAgdGhpcy5mbG93bWFwRGF0YSxcbiAgICApO1xuICAgIHJldHVybiBsb2NhdGlvbnNCeUlkPy5nZXQoaWQpO1xuICB9XG5cbiAgYXN5bmMgZ2V0VG90YWxzRm9yTG9jYXRpb24oaWQ6IHN0cmluZyk6IFByb21pc2U8TG9jYXRpb25Ub3RhbHMgfCB1bmRlZmluZWQ+IHtcbiAgICBpZiAoIXRoaXMuZmxvd21hcFN0YXRlIHx8ICF0aGlzLmZsb3dtYXBEYXRhKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5zZWxlY3RvcnNcbiAgICAgIC5nZXRMb2NhdGlvblRvdGFscyh0aGlzLmZsb3dtYXBTdGF0ZSwgdGhpcy5mbG93bWFwRGF0YSlcbiAgICAgID8uZ2V0KGlkKTtcbiAgfVxuXG4gIGFzeW5jIGdldFZpZXdwb3J0Rm9yTG9jYXRpb25zKFxuICAgIGRpbXM6IFtudW1iZXIsIG51bWJlcl0sXG4gICAgb3B0cz86IEdldFZpZXdTdGF0ZU9wdGlvbnMsXG4gICk6IFByb21pc2U8Vmlld3BvcnRQcm9wcyB8IHVuZGVmaW5lZD4ge1xuICAgIGlmICghdGhpcy5mbG93bWFwRGF0YT8ubG9jYXRpb25zKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICAvLyBAdHMtaWdub3JlXG4gICAgcmV0dXJuIGdldFZpZXdTdGF0ZUZvckxvY2F0aW9ucyhcbiAgICAgIHRoaXMuZmxvd21hcERhdGEubG9jYXRpb25zLFxuICAgICAgKGxvYykgPT4gW1xuICAgICAgICB0aGlzLnNlbGVjdG9ycy5hY2Nlc3NvcnMuZ2V0TG9jYXRpb25Mb24obG9jKSxcbiAgICAgICAgdGhpcy5zZWxlY3RvcnMuYWNjZXNzb3JzLmdldExvY2F0aW9uTGF0KGxvYyksXG4gICAgICBdLFxuICAgICAgZGltcyxcbiAgICAgIG9wdHMsXG4gICAgKTtcbiAgfVxufVxuIl19
|
package/dist-es5/time.d.ts
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import { TimeInterval } from 'd3-time';
|
|
2
|
-
export declare function parseTime(input: string | Date | undefined): Date | undefined;
|
|
3
|
-
export declare enum TimeGranularityKey {
|
|
4
|
-
SECOND = "SECOND",
|
|
5
|
-
MINUTE = "MINUTE",
|
|
6
|
-
HOUR = "HOUR",
|
|
7
|
-
DAY = "DAY",
|
|
8
|
-
MONTH = "MONTH",
|
|
9
|
-
YEAR = "YEAR"
|
|
10
|
-
}
|
|
11
|
-
export interface TimeGranularity {
|
|
12
|
-
key: TimeGranularityKey;
|
|
13
|
-
order: number;
|
|
14
|
-
interval: TimeInterval;
|
|
15
|
-
format: (date: Date) => string;
|
|
16
|
-
formatFull: (date: Date) => string;
|
|
17
|
-
}
|
|
18
|
-
export declare function tickMultiFormat(date: Date): string;
|
|
19
|
-
export declare const TIME_GRANULARITIES: TimeGranularity[];
|
|
20
|
-
export declare function getTimeGranularityByKey(key: TimeGranularityKey): TimeGranularity | undefined;
|
|
21
|
-
export declare function getTimeGranularityByOrder(order: number): TimeGranularity | undefined;
|
|
22
|
-
export declare function getTimeGranularityForDate(date: Date): TimeGranularity;
|
|
23
|
-
export declare function areRangesEqual(a: [Date, Date] | undefined, b: [Date, Date] | undefined): boolean;
|
|
24
|
-
//# sourceMappingURL=time.d.ts.map
|
package/dist-es5/time.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"time.d.ts","sourceRoot":"","sources":["../src/time.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,YAAY,EAMb,MAAM,SAAS,CAAC;AAUjB,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,IAAI,GAAG,SAAS,CAa5E;AAED,oBAAY,kBAAkB;IAC5B,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,GAAG,QAAQ;IACX,KAAK,UAAU;IACf,IAAI,SAAS;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,kBAAkB,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,YAAY,CAAC;IACvB,MAAM,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC;IAC/B,UAAU,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,CAAC;CACpC;AAcD,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,UAkBzC;AAED,eAAO,MAAM,kBAAkB,EAAE,eAAe,EA4C/C,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,kBAAkB,+BAE9D;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,+BAEtD;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,IAAI,GAAG,eAAe,CAYrE;AAED,wBAAgB,cAAc,CAC5B,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,SAAS,EAC3B,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,SAAS,GAC1B,OAAO,CAIT"}
|
package/dist-es5/time.js
DELETED
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __values = (this && this.__values) || function(o) {
|
|
3
|
-
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
4
|
-
if (m) return m.call(o);
|
|
5
|
-
if (o && typeof o.length === "number") return {
|
|
6
|
-
next: function () {
|
|
7
|
-
if (o && i >= o.length) o = void 0;
|
|
8
|
-
return { value: o && o[i++], done: !o };
|
|
9
|
-
}
|
|
10
|
-
};
|
|
11
|
-
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
12
|
-
};
|
|
13
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
|
-
exports.areRangesEqual = exports.getTimeGranularityForDate = exports.getTimeGranularityByOrder = exports.getTimeGranularityByKey = exports.TIME_GRANULARITIES = exports.tickMultiFormat = exports.TimeGranularityKey = exports.parseTime = void 0;
|
|
15
|
-
var d3_time_format_1 = require("d3-time-format");
|
|
16
|
-
var d3_time_1 = require("d3-time");
|
|
17
|
-
var dateParsers = [
|
|
18
|
-
(0, d3_time_format_1.timeParse)('%Y-%m-%d'),
|
|
19
|
-
(0, d3_time_format_1.timeParse)('%Y-%m-%d %H:%M'),
|
|
20
|
-
(0, d3_time_format_1.timeParse)('%Y-%m-%d %H:%M:%S'),
|
|
21
|
-
(0, d3_time_format_1.timeParse)('%Y'),
|
|
22
|
-
(0, d3_time_format_1.timeParse)('%Y-%m'),
|
|
23
|
-
];
|
|
24
|
-
function parseTime(input) {
|
|
25
|
-
var e_1, _a;
|
|
26
|
-
if (input != null) {
|
|
27
|
-
if (input instanceof Date) {
|
|
28
|
-
return input;
|
|
29
|
-
}
|
|
30
|
-
try {
|
|
31
|
-
for (var dateParsers_1 = __values(dateParsers), dateParsers_1_1 = dateParsers_1.next(); !dateParsers_1_1.done; dateParsers_1_1 = dateParsers_1.next()) {
|
|
32
|
-
var parse = dateParsers_1_1.value;
|
|
33
|
-
var date = parse(input);
|
|
34
|
-
if (date) {
|
|
35
|
-
return date;
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
40
|
-
finally {
|
|
41
|
-
try {
|
|
42
|
-
if (dateParsers_1_1 && !dateParsers_1_1.done && (_a = dateParsers_1.return)) _a.call(dateParsers_1);
|
|
43
|
-
}
|
|
44
|
-
finally { if (e_1) throw e_1.error; }
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
return undefined;
|
|
48
|
-
}
|
|
49
|
-
exports.parseTime = parseTime;
|
|
50
|
-
var TimeGranularityKey;
|
|
51
|
-
(function (TimeGranularityKey) {
|
|
52
|
-
TimeGranularityKey["SECOND"] = "SECOND";
|
|
53
|
-
TimeGranularityKey["MINUTE"] = "MINUTE";
|
|
54
|
-
TimeGranularityKey["HOUR"] = "HOUR";
|
|
55
|
-
TimeGranularityKey["DAY"] = "DAY";
|
|
56
|
-
TimeGranularityKey["MONTH"] = "MONTH";
|
|
57
|
-
TimeGranularityKey["YEAR"] = "YEAR";
|
|
58
|
-
})(TimeGranularityKey = exports.TimeGranularityKey || (exports.TimeGranularityKey = {}));
|
|
59
|
-
// const preferredLocale = navigator.languages ? navigator.languages[0] : 'en';
|
|
60
|
-
var formatMillisecond = (0, d3_time_format_1.timeFormat)('.%L'), formatSecond = (0, d3_time_format_1.timeFormat)(':%S'), formatMinute = (0, d3_time_format_1.timeFormat)('%I:%M'),
|
|
61
|
-
// formatHour = (d: Date) => d.toLocaleString(preferredLocale, { hour: 'numeric' }),
|
|
62
|
-
formatHour = (0, d3_time_format_1.timeFormat)('%I %p'), formatDay = (0, d3_time_format_1.timeFormat)('%a %d'), formatWeek = (0, d3_time_format_1.timeFormat)('%b %d'), formatMonth = (0, d3_time_format_1.timeFormat)('%b'), formatYear = (0, d3_time_format_1.timeFormat)('%Y');
|
|
63
|
-
function tickMultiFormat(date) {
|
|
64
|
-
return ((0, d3_time_1.timeSecond)(date) < date
|
|
65
|
-
? formatMillisecond
|
|
66
|
-
: (0, d3_time_1.timeMinute)(date) < date
|
|
67
|
-
? formatSecond
|
|
68
|
-
: (0, d3_time_1.timeHour)(date) < date
|
|
69
|
-
? formatMinute
|
|
70
|
-
: (0, d3_time_1.timeDay)(date) < date
|
|
71
|
-
? formatHour
|
|
72
|
-
: (0, d3_time_1.timeMonth)(date) < date
|
|
73
|
-
? (0, d3_time_1.timeWeek)(date) < date
|
|
74
|
-
? formatDay
|
|
75
|
-
: formatWeek
|
|
76
|
-
: (0, d3_time_1.timeYear)(date) < date
|
|
77
|
-
? formatMonth
|
|
78
|
-
: formatYear)(date);
|
|
79
|
-
}
|
|
80
|
-
exports.tickMultiFormat = tickMultiFormat;
|
|
81
|
-
exports.TIME_GRANULARITIES = [
|
|
82
|
-
{
|
|
83
|
-
order: 0,
|
|
84
|
-
key: TimeGranularityKey.SECOND,
|
|
85
|
-
interval: d3_time_1.timeSecond,
|
|
86
|
-
format: formatSecond,
|
|
87
|
-
formatFull: (0, d3_time_format_1.timeFormat)('%Y-%m-%d %H:%M:%S'),
|
|
88
|
-
},
|
|
89
|
-
{
|
|
90
|
-
order: 1,
|
|
91
|
-
key: TimeGranularityKey.MINUTE,
|
|
92
|
-
interval: d3_time_1.timeMinute,
|
|
93
|
-
format: formatMinute,
|
|
94
|
-
formatFull: (0, d3_time_format_1.timeFormat)('%Y-%m-%d %H:%M'),
|
|
95
|
-
},
|
|
96
|
-
{
|
|
97
|
-
order: 2,
|
|
98
|
-
key: TimeGranularityKey.HOUR,
|
|
99
|
-
interval: d3_time_1.timeHour,
|
|
100
|
-
// format: (d: Date) => d.toLocaleString(preferredLocale, { hour: 'numeric', minute: '2-digit' }),
|
|
101
|
-
format: formatHour,
|
|
102
|
-
formatFull: (0, d3_time_format_1.timeFormat)('%a %d %b %Y, %I %p'),
|
|
103
|
-
},
|
|
104
|
-
{
|
|
105
|
-
order: 3,
|
|
106
|
-
key: TimeGranularityKey.DAY,
|
|
107
|
-
interval: d3_time_1.timeDay,
|
|
108
|
-
format: formatDay,
|
|
109
|
-
formatFull: (0, d3_time_format_1.timeFormat)('%a %d %b %Y'),
|
|
110
|
-
},
|
|
111
|
-
{
|
|
112
|
-
order: 4,
|
|
113
|
-
key: TimeGranularityKey.MONTH,
|
|
114
|
-
interval: d3_time_1.timeMonth,
|
|
115
|
-
format: formatMonth,
|
|
116
|
-
formatFull: (0, d3_time_format_1.timeFormat)('%b %Y'),
|
|
117
|
-
},
|
|
118
|
-
{
|
|
119
|
-
order: 5,
|
|
120
|
-
key: TimeGranularityKey.YEAR,
|
|
121
|
-
interval: d3_time_1.timeYear,
|
|
122
|
-
format: formatYear,
|
|
123
|
-
formatFull: (0, d3_time_format_1.timeFormat)('%Y'),
|
|
124
|
-
},
|
|
125
|
-
];
|
|
126
|
-
function getTimeGranularityByKey(key) {
|
|
127
|
-
return exports.TIME_GRANULARITIES.find(function (s) { return s.key === key; });
|
|
128
|
-
}
|
|
129
|
-
exports.getTimeGranularityByKey = getTimeGranularityByKey;
|
|
130
|
-
function getTimeGranularityByOrder(order) {
|
|
131
|
-
return exports.TIME_GRANULARITIES.find(function (s) { return s.order === order; });
|
|
132
|
-
}
|
|
133
|
-
exports.getTimeGranularityByOrder = getTimeGranularityByOrder;
|
|
134
|
-
function getTimeGranularityForDate(date) {
|
|
135
|
-
var e_2, _a;
|
|
136
|
-
var prev = undefined;
|
|
137
|
-
try {
|
|
138
|
-
for (var TIME_GRANULARITIES_1 = __values(exports.TIME_GRANULARITIES), TIME_GRANULARITIES_1_1 = TIME_GRANULARITIES_1.next(); !TIME_GRANULARITIES_1_1.done; TIME_GRANULARITIES_1_1 = TIME_GRANULARITIES_1.next()) {
|
|
139
|
-
var current = TIME_GRANULARITIES_1_1.value;
|
|
140
|
-
var interval = current.interval;
|
|
141
|
-
var floored = interval(date);
|
|
142
|
-
if (floored < date) {
|
|
143
|
-
if (!prev)
|
|
144
|
-
return current;
|
|
145
|
-
return prev;
|
|
146
|
-
}
|
|
147
|
-
prev = current;
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
|
-
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
151
|
-
finally {
|
|
152
|
-
try {
|
|
153
|
-
if (TIME_GRANULARITIES_1_1 && !TIME_GRANULARITIES_1_1.done && (_a = TIME_GRANULARITIES_1.return)) _a.call(TIME_GRANULARITIES_1);
|
|
154
|
-
}
|
|
155
|
-
finally { if (e_2) throw e_2.error; }
|
|
156
|
-
}
|
|
157
|
-
return exports.TIME_GRANULARITIES[exports.TIME_GRANULARITIES.length - 1];
|
|
158
|
-
}
|
|
159
|
-
exports.getTimeGranularityForDate = getTimeGranularityForDate;
|
|
160
|
-
function areRangesEqual(a, b) {
|
|
161
|
-
if (!a && !b)
|
|
162
|
-
return true;
|
|
163
|
-
if (!a || !b)
|
|
164
|
-
return false;
|
|
165
|
-
return a[0] === b[0] && a[1] === b[1];
|
|
166
|
-
}
|
|
167
|
-
exports.areRangesEqual = areRangesEqual;
|
|
168
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy90aW1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQUEsaURBQXFEO0FBQ3JELG1DQVNpQjtBQUVqQixJQUFNLFdBQVcsR0FBRztJQUNsQixJQUFBLDBCQUFTLEVBQUMsVUFBVSxDQUFDO0lBQ3JCLElBQUEsMEJBQVMsRUFBQyxnQkFBZ0IsQ0FBQztJQUMzQixJQUFBLDBCQUFTLEVBQUMsbUJBQW1CLENBQUM7SUFDOUIsSUFBQSwwQkFBUyxFQUFDLElBQUksQ0FBQztJQUNmLElBQUEsMEJBQVMsRUFBQyxPQUFPLENBQUM7Q0FDbkIsQ0FBQztBQUVGLFNBQWdCLFNBQVMsQ0FBQyxLQUFnQzs7SUFDeEQsSUFBSSxLQUFLLElBQUksSUFBSSxFQUFFO1FBQ2pCLElBQUksS0FBSyxZQUFZLElBQUksRUFBRTtZQUN6QixPQUFPLEtBQUssQ0FBQztTQUNkOztZQUNELEtBQW9CLElBQUEsZ0JBQUEsU0FBQSxXQUFXLENBQUEsd0NBQUEsaUVBQUU7Z0JBQTVCLElBQU0sS0FBSyx3QkFBQTtnQkFDZCxJQUFNLElBQUksR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7Z0JBQzFCLElBQUksSUFBSSxFQUFFO29CQUNSLE9BQU8sSUFBSSxDQUFDO2lCQUNiO2FBQ0Y7Ozs7Ozs7OztLQUNGO0lBQ0QsT0FBTyxTQUFTLENBQUM7QUFDbkIsQ0FBQztBQWJELDhCQWFDO0FBRUQsSUFBWSxrQkFPWDtBQVBELFdBQVksa0JBQWtCO0lBQzVCLHVDQUFpQixDQUFBO0lBQ2pCLHVDQUFpQixDQUFBO0lBQ2pCLG1DQUFhLENBQUE7SUFDYixpQ0FBVyxDQUFBO0lBQ1gscUNBQWUsQ0FBQTtJQUNmLG1DQUFhLENBQUE7QUFDZixDQUFDLEVBUFcsa0JBQWtCLEdBQWxCLDBCQUFrQixLQUFsQiwwQkFBa0IsUUFPN0I7QUFVRCwrRUFBK0U7QUFFL0UsSUFBTSxpQkFBaUIsR0FBRyxJ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QUM7UUFBRSxPQUFPLElBQUksQ0FBQztJQUMxQixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUFFLE9BQU8sS0FBSyxDQUFDO0lBQzNCLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ3hDLENBQUM7QUFQRCx3Q0FPQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7dGltZUZvcm1hdCwgdGltZVBhcnNlfSBmcm9tICdkMy10aW1lLWZvcm1hdCc7XG5pbXBvcnQge1xuICB0aW1lRGF5LFxuICB0aW1lSG91cixcbiAgVGltZUludGVydmFsLFxuICB0aW1lTWludXRlLFxuICB0aW1lTW9udGgsXG4gIHRpbWVTZWNvbmQsXG4gIHRpbWVXZWVrLFxuICB0aW1lWWVhcixcbn0gZnJvbSAnZDMtdGltZSc7XG5cbmNvbnN0IGRhdGVQYXJzZXJzID0gW1xuICB0aW1lUGFyc2UoJyVZLSVtLSVkJyksXG4gIHRpbWVQYXJzZSgnJVktJW0tJWQgJUg6JU0nKSxcbiAgdGltZVBhcnNlKCclWS0lbS0lZCAlSDolTTolUycpLFxuICB0aW1lUGFyc2UoJyVZJyksXG4gIHRpbWVQYXJzZSgnJVktJW0nKSxcbl07XG5cbmV4cG9ydCBmdW5jdGlvbiBwYXJzZVRpbWUoaW5wdXQ6IHN0cmluZyB8IERhdGUgfCB1bmRlZmluZWQpOiBEYXRlIHwgdW5kZWZpbmVkIHtcbiAgaWYgKGlucHV0ICE9IG51bGwpIHtcbiAgICBpZiAoaW5wdXQgaW5zdGFuY2VvZiBEYXRlKSB7XG4gICAgICByZXR1cm4gaW5wdXQ7XG4gICAgfVxuICAgIGZvciAoY29uc3QgcGFyc2Ugb2YgZGF0ZVBhcnNlcnMpIHtcbiAgICAgIGNvbnN0IGRhdGUgPSBwYXJzZShpbnB1dCk7XG4gICAgICBpZiAoZGF0ZSkge1xuICAgICAgICByZXR1cm4gZGF0ZTtcbiAgICAgIH1cbiAgICB9XG4gIH1cbiAgcmV0dXJuIHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGVudW0gVGltZUdyYW51bGFyaXR5S2V5IHtcbiAgU0VDT05EID0gJ1NFQ09ORCcsXG4gIE1JTlVURSA9ICdNSU5VVEUnLFxuICBIT1VSID0gJ0hPVVInLFxuICBEQVkgPSAnREFZJyxcbiAgTU9OVEggPSAnTU9OVEgnLFxuICBZRUFSID0gJ1lFQVInLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRpbWVHcmFudWxhcml0eSB7XG4gIGtleTogVGltZUdyYW51bGFyaXR5S2V5O1xuICBvcmRlcjogbnVtYmVyO1xuICBpbnRlcnZhbDogVGltZUludGVydmFsO1xuICBmb3JtYXQ6IChkYXRlOiBEYXRlKSA9PiBzdHJpbmc7XG4gIGZvcm1hdEZ1bGw6IChkYXRlOiBEYXRlKSA9PiBzdHJpbmc7XG59XG5cbi8vIGNvbnN0IHByZWZlcnJlZExvY2FsZSA9IG5hdmlnYXRvci5sYW5ndWFnZXMgPyBuYXZpZ2F0b3IubGFuZ3VhZ2VzWzBdIDogJ2VuJztcblxuY29uc3QgZm9ybWF0TWlsbGlzZWNvbmQgPSB0aW1lRm9ybWF0KCcuJUwnKSxcbiAgZm9ybWF0U2Vjb25kID0gdGltZUZvcm1hdCgnOiVTJyksXG4gIGZvcm1hdE1pbnV0ZSA9IHRpbWVGb3JtYXQoJyVJOiVNJyksXG4gIC8vIGZvcm1hdEhvdXIgPSAoZDogRGF0ZSkgPT4gZC50b0xvY2FsZVN0cmluZyhwcmVmZXJyZWRMb2NhbGUsIHsgaG91cjogJ251bWVyaWMnIH0pLFxuICBmb3JtYXRIb3VyID0gdGltZUZvcm1hdCgnJUkgJXAnKSxcbiAgZm9ybWF0RGF5ID0gdGltZUZvcm1hdCgnJWEgJWQnKSxcbiAgZm9ybWF0V2VlayA9IHRpbWVGb3JtYXQoJyViICVkJyksXG4gIGZvcm1hdE1vbnRoID0gdGltZUZvcm1hdCgnJWInKSxcbiAgZm9ybWF0WWVhciA9IHRpbWVGb3JtYXQoJyVZJyk7XG5cbmV4cG9ydCBmdW5jdGlvbiB0aWNrTXVsdGlGb3JtYXQoZGF0ZTogRGF0ZSkge1xuICByZXR1cm4gKFxuICAgIHRpbWVTZWNvbmQoZGF0ZSkgPCBkYXRlXG4gICAgICA/IGZvcm1hdE1pbGxpc2Vjb25kXG4gICAgICA6IHRpbWVNaW51dGUoZGF0ZSkgPCBkYXRlXG4gICAgICA/IGZvcm1hdFNlY29uZFxuICAgICAgOiB0aW1lSG91cihkYXRlKSA8IGRhdGVcbiAgICAgID8gZm9ybWF0TWludXRlXG4gICAgICA6IHRpbWVEYXkoZGF0ZSkgPCBkYXRlXG4gICAgICA/IGZvcm1hdEhvdXJcbiAgICAgIDogdGltZU1vbnRoKGRhdGUpIDwgZGF0ZVxuICAgICAgPyB0aW1lV2VlayhkYXRlKSA8IGRhdGVcbiAgICAgICAgPyBmb3JtYXREYXlcbiAgICAgICAgOiBmb3JtYXRXZWVrXG4gICAgICA6IHRpbWVZZWFyKGRhdGUpIDwgZGF0ZVxuICAgICAgPyBmb3JtYXRNb250aFxuICAgICAgOiBmb3JtYXRZZWFyXG4gICkoZGF0ZSk7XG59XG5cbmV4cG9ydCBjb25zdCBUSU1FX0dSQU5VTEFSSVRJRVM6IFRpbWVHcmFudWxhcml0eVtdID0gW1xuICB7XG4gICAgb3JkZXI6IDAsXG4gICAga2V5OiBUaW1lR3JhbnVsYXJpdHlLZXkuU0VDT05ELFxuICAgIGludGVydmFsOiB0aW1lU2Vjb25kLFxuICAgIGZvcm1hdDogZm9ybWF0U2Vjb25kLFxuICAgIGZvcm1hdEZ1bGw6IHRpbWVGb3JtYXQoJyVZLSVtLSVkICVIOiVNOiVTJyksXG4gIH0sXG4gIHtcbiAgICBvcmRlcjogMSxcbiAgICBrZXk6IFRpbWVHcmFudWxhcml0eUtleS5NSU5VVEUsXG4gICAgaW50ZXJ2YWw6IHRpbWVNaW51dGUsXG4gICAgZm9ybWF0OiBmb3JtYXRNaW51dGUsXG4gICAgZm9ybWF0RnVsbDogdGltZUZvcm1hdCgnJVktJW0tJWQgJUg6JU0nKSxcbiAgfSxcbiAge1xuICAgIG9yZGVyOiAyLFxuICAgIGtleTogVGltZUdyYW51bGFyaXR5S2V5LkhPVVIsXG4gICAgaW50ZXJ2YWw6IHRpbWVIb3VyLFxuICAgIC8vIGZvcm1hdDogKGQ6IERhdGUpID0+IGQudG9Mb2NhbGVTdHJpbmcocHJlZmVycmVkTG9jYWxlLCB7IGhvdXI6ICdudW1lcmljJywgbWludXRlOiAnMi1kaWdpdCcgfSksXG4gICAgZm9ybWF0OiBmb3JtYXRIb3VyLFxuICAgIGZvcm1hdEZ1bGw6IHRpbWVGb3JtYXQoJyVhICVkICViICVZLCAlSSAlcCcpLFxuICB9LFxuICB7XG4gICAgb3JkZXI6IDMsXG4gICAga2V5OiBUaW1lR3JhbnVsYXJpdHlLZXkuREFZLFxuICAgIGludGVydmFsOiB0aW1lRGF5LFxuICAgIGZvcm1hdDogZm9ybWF0RGF5LFxuICAgIGZvcm1hdEZ1bGw6IHRpbWVGb3JtYXQoJyVhICVkICViICVZJyksXG4gIH0sXG4gIHtcbiAgICBvcmRlcjogNCxcbiAgICBrZXk6IFRpbWVHcmFudWxhcml0eUtleS5NT05USCxcbiAgICBpbnRlcnZhbDogdGltZU1vbnRoLFxuICAgIGZvcm1hdDogZm9ybWF0TW9udGgsXG4gICAgZm9ybWF0RnVsbDogdGltZUZvcm1hdCgnJWIgJVknKSxcbiAgfSxcbiAge1xuICAgIG9yZGVyOiA1LFxuICAgIGtleTogVGltZUdyYW51bGFyaXR5S2V5LllFQVIsXG4gICAgaW50ZXJ2YWw6IHRpbWVZZWFyLFxuICAgIGZvcm1hdDogZm9ybWF0WWVhcixcbiAgICBmb3JtYXRGdWxsOiB0aW1lRm9ybWF0KCclWScpLFxuICB9LFxuXTtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFRpbWVHcmFudWxhcml0eUJ5S2V5KGtleTogVGltZUdyYW51bGFyaXR5S2V5KSB7XG4gIHJldHVybiBUSU1FX0dSQU5VTEFSSVRJRVMuZmluZCgocykgPT4gcy5rZXkgPT09IGtleSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRUaW1lR3JhbnVsYXJpdHlCeU9yZGVyKG9yZGVyOiBudW1iZXIpIHtcbiAgcmV0dXJuIFRJTUVfR1JBTlVMQVJJVElFUy5maW5kKChzKSA9PiBzLm9yZGVyID09PSBvcmRlcik7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRUaW1lR3JhbnVsYXJpdHlGb3JEYXRlKGRhdGU6IERhdGUpOiBUaW1lR3JhbnVsYXJpdHkge1xuICBsZXQgcHJldiA9IHVuZGVmaW5lZDtcbiAgZm9yIChjb25zdCBjdXJyZW50IG9mIFRJTUVfR1JBTlVMQVJJVElFUykge1xuICAgIGNvbnN0IHtpbnRlcnZhbH0gPSBjdXJyZW50O1xuICAgIGNvbnN0IGZsb29yZWQgPSBpbnRlcnZhbChkYXRlKTtcbiAgICBpZiAoZmxvb3JlZCA8IGRhdGUpIHtcbiAgICAgIGlmICghcHJldikgcmV0dXJuIGN1cnJlbnQ7XG4gICAgICByZXR1cm4gcHJldjtcbiAgICB9XG4gICAgcHJldiA9IGN1cnJlbnQ7XG4gIH1cbiAgcmV0dXJuIFRJTUVfR1JBTlVMQVJJVElFU1tUSU1FX0dSQU5VTEFSSVRJRVMubGVuZ3RoIC0gMV07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhcmVSYW5nZXNFcXVhbChcbiAgYTogW0RhdGUsIERhdGVdIHwgdW5kZWZpbmVkLFxuICBiOiBbRGF0ZSwgRGF0ZV0gfCB1bmRlZmluZWQsXG4pOiBib29sZWFuIHtcbiAgaWYgKCFhICYmICFiKSByZXR1cm4gdHJ1ZTtcbiAgaWYgKCFhIHx8ICFiKSByZXR1cm4gZmFsc2U7XG4gIHJldHVybiBhWzBdID09PSBiWzBdICYmIGFbMV0gPT09IGJbMV07XG59XG4iXX0=
|