@flowmap.gl/layers 8.0.0-alpha.18 → 8.0.0-alpha.21
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/AnimatedFlowLinesLayer/AnimatedFlowLinesLayer.d.ts.map +1 -1
- package/dist/AnimatedFlowLinesLayer/AnimatedFlowLinesLayer.js +6 -5
- package/dist/FlowmapLayer.d.ts +2 -2
- package/dist/FlowmapLayer.d.ts.map +1 -1
- package/dist/FlowmapLayer.js +18 -22
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -1
- package/package.json +2 -2
- package/src/AnimatedFlowLinesLayer/AnimatedFlowLinesLayer.ts +4 -4
- package/src/FlowmapLayer.ts +19 -21
- package/src/types.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnimatedFlowLinesLayer.d.ts","sourceRoot":"","sources":["../../src/AnimatedFlowLinesLayer/AnimatedFlowLinesLayer.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAC,KAAK,EAAqB,MAAM,eAAe,CAAC;AAKxD,OAAO,EAAC,wBAAwB,EAAE,IAAI,EAAC,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AACpC,MAAM,WAAW,KAAK,CAAC,CAAC,CAAE,SAAQ,UAAU;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAC,CAAC;IAC1D,IAAI,EAAE,CAAC,EAAE,GAAG,wBAAwB,CAAC;IACrC,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,iBAAiB,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,KAAK,MAAM,CAAC;IAC3D,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAC,KAAK,EAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,KAAK,MAAM,CAAC;IACzD,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC;IAChC,kBAAkB,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjD;AAGD,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,GAAG,CAAC;IACV,MAAM,EAAE,GAAG,CAAC;CACb;AAOD,MAAM,CAAC,OAAO,OAAO,sBAAsB,CAAC,CAAC,CAAE,SAAQ,KAAK;IAC1D,MAAM,CAAC,YAAY;;;;;uBAGgC,GAAG;;;;uBACH,GAAG;;;;uBACT,GAAG;;;;uBAGjC,GAAG;uBAAmB,MAAM;;;;;;;;;;;;;;;MAQzC;gBAEU,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAI3B,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IASrC,eAAe,IAAI,IAAI;
|
|
1
|
+
{"version":3,"file":"AnimatedFlowLinesLayer.d.ts","sourceRoot":"","sources":["../../src/AnimatedFlowLinesLayer/AnimatedFlowLinesLayer.ts"],"names":[],"mappings":"AAkBA,OAAO,EAAC,KAAK,EAAqB,MAAM,eAAe,CAAC;AAKxD,OAAO,EAAC,wBAAwB,EAAE,IAAI,EAAC,MAAM,kBAAkB,CAAC;AAChE,OAAO,EAAC,UAAU,EAAC,MAAM,UAAU,CAAC;AACpC,MAAM,WAAW,KAAK,CAAC,CAAC,CAAE,SAAQ,UAAU;IAC1C,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAC,CAAC;IAC1D,IAAI,EAAE,CAAC,EAAE,GAAG,wBAAwB,CAAC;IACrC,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,iBAAiB,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,iBAAiB,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,kBAAkB,KAAK,MAAM,CAAC;IAC3D,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAC,KAAK,EAAC,EAAE;QAAC,KAAK,EAAE,MAAM,CAAA;KAAC,KAAK,MAAM,CAAC;IACzD,QAAQ,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC;IAC1B,YAAY,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,MAAM,CAAC;IAChC,kBAAkB,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjD;AAGD,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,GAAG,CAAC;IACV,MAAM,EAAE,GAAG,CAAC;CACb;AAOD,MAAM,CAAC,OAAO,OAAO,sBAAsB,CAAC,CAAC,CAAE,SAAQ,KAAK;IAC1D,MAAM,CAAC,YAAY;;;;;uBAGgC,GAAG;;;;uBACH,GAAG;;;;uBACT,GAAG;;;;uBAGjC,GAAG;uBAAmB,MAAM;;;;;;;;;;;;;;;MAQzC;gBAEU,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAI3B,UAAU,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IASrC,eAAe,IAAI,IAAI;IA4CvB,cAAc,IAAI,OAAO;IAIzB,WAAW,CAAC,EAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAWtE,IAAI,CAAC,EAAC,QAAQ,EAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI;IAe3C,SAAS,CAAC,EAAE,EAAE,qBAAqB,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAwB9D"}
|
|
@@ -42,11 +42,13 @@ export default class AnimatedFlowLinesLayer extends Layer {
|
|
|
42
42
|
attributeManager.addInstanced({
|
|
43
43
|
instanceSourcePositions: {
|
|
44
44
|
size: 3,
|
|
45
|
+
type: GL.DOUBLE,
|
|
45
46
|
transition: true,
|
|
46
47
|
accessor: 'getSourcePosition',
|
|
47
48
|
},
|
|
48
49
|
instanceTargetPositions: {
|
|
49
50
|
size: 3,
|
|
51
|
+
type: GL.DOUBLE,
|
|
50
52
|
transition: true,
|
|
51
53
|
accessor: 'getTargetPosition',
|
|
52
54
|
},
|
|
@@ -80,13 +82,12 @@ export default class AnimatedFlowLinesLayer extends Layer {
|
|
|
80
82
|
return true;
|
|
81
83
|
}
|
|
82
84
|
updateState({ props, oldProps, changeFlags }) {
|
|
85
|
+
var _a;
|
|
83
86
|
super.updateState({ props, oldProps, changeFlags });
|
|
84
87
|
if (changeFlags.extensionsChanged) {
|
|
85
88
|
const { gl } = this.context;
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
}
|
|
89
|
-
this.setState({ model: this._getModel(gl) });
|
|
89
|
+
(_a = this.state.model) === null || _a === void 0 ? void 0 : _a.delete();
|
|
90
|
+
this.state.model = this._getModel(gl);
|
|
90
91
|
this.getAttributeManager().invalidateAll();
|
|
91
92
|
}
|
|
92
93
|
}
|
|
@@ -136,4 +137,4 @@ AnimatedFlowLinesLayer.defaultProps = {
|
|
|
136
137
|
depthTest: false,
|
|
137
138
|
},
|
|
138
139
|
};
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQW5pbWF0ZWRGbG93TGluZXNMYXllci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9BbmltYXRlZEZsb3dMaW5lc0xheWVyL0FuaW1hdGVkRmxvd0xpbmVzTGF5ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkc7QUFFSCxPQUFPLEVBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEMsT0FBTyxFQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDOUMsT0FBTyxjQUFjLE1BQU0sdUNBQXVDLENBQUM7QUFDbkUsT0FBTyxZQUFZLE1BQU0scUNBQXFDLENBQUM7QUErQi9ELE1BQU0sYUFBYSxHQUFTLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDL0MsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDO0FBQ3hCLE1BQU0sY0FBYyxHQUFHLEVBQUUsQ0FBQztBQUMxQixNQUFNLFFBQVEsR0FBRyxVQUFVLEdBQUcsY0FBYyxDQUFDO0FBRTdDLE1BQU0sQ0FBQyxPQUFPLE9BQU8sc0JBQTBCLFNBQVEsS0FBSztJQW1CMUQsWUFBWSxLQUFlO1FBQ3pCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNmLENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxLQUFLLENBQUMsVUFBVSxDQUFDO1lBQ3RCLEVBQUUsRUFBRSxZQUFZO1lBQ2hCLEVBQUUsRUFBRSxjQUFjO1lBQ2xCLE9BQU8sRUFBRSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUM7WUFDN0IsV0FBVyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVztTQUN0QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZUFBZTtRQUNiLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxD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LEVBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFDO0lBQzFDLGFBQWEsRUFBRSxFQUFFLEdBQUcsQ0FBQztJQUNyQixVQUFVLEVBQUU7UUFDVixTQUFTLEVBQUUsS0FBSztLQUNqQjtDQUNGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMjIgRmxvd21hcEJsdWVcbiAqIENvcHlyaWdodCAyMDE4LTIwMjAgVGVyYWx5dGljcywgbW9kaWZpZWQgYnkgRmxvd21hcEJsdWVcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqXG4gKi9cblxuaW1wb3J0IHtMYXllciwgcGlja2luZywgcHJvamVjdDMyfSBmcm9tICdAZGVjay5nbC9jb3JlJztcbmltcG9ydCBHTCBmcm9tICdAbHVtYS5nbC9jb25zdGFudHMnO1xuaW1wb3J0IHtHZW9tZXRyeSwgTW9kZWx9IGZyb20gJ0BsdW1hLmdsL2NvcmUnO1xuaW1wb3J0IEZyYWdtZW50U2hhZGVyIGZyb20gJy4vQW5pbWF0ZWRGbG93TGluZXNMYXllckZyYWdtZW50Lmdsc2wnO1xuaW1wb3J0IFZlcnRleFNoYWRlciBmcm9tICcuL0FuaW1hdGVkRmxvd0xpbmVzTGF5ZXJWZXJ0ZXguZ2xzbCc7XG5pbXBvcnQge0Zsb3dMaW5lc0xheWVyQXR0cmlidXRlcywgUkdCQX0gZnJvbSAnQGZsb3dtYXAuZ2wvZGF0YSc7XG5pbXBvcnQge0xheWVyUHJvcHN9IGZyb20gJy4uL3R5cGVzJztcbmV4cG9ydCBpbnRlcmZhY2UgUHJvcHM8Rj4gZXh0ZW5kcyBMYXllclByb3BzIHtcbiAgaWQ6IHN0cmluZztcbiAgb3BhY2l0eT86IG51bWJlcjtcbiAgcGlja2FibGU/OiBib29sZWFuO1xuICB1cGRhdGVUcmlnZ2Vycz86IHtba2V5OiBzdHJpbmddOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPn07XG4gIGRhdGE6IEZbXSB8IEZsb3dMaW5lc0xheWVyQXR0cmlidXRlcztcbiAgZHJhd091dGxpbmU6IGJvb2xlYW47XG4gIG91dGxpbmVDb2xvcj86IFJHQkE7XG4gIG91dGxpbmVUaGlja25lc3M/OiBudW1iZXI7XG4gIGN1cnJlbnRUaW1lPzogbnVtYmVyO1xuICB0aGlja25lc3NVbml0PzogbnVtYmVyO1xuICBhbmltYXRpb25UYWlsTGVuZ3RoPzogbnVtYmVyO1xuICBnZXRTb3VyY2VQb3NpdGlvbj86IChkOiBGKSA9PiBbbnVtYmVyLCBudW1iZXJdO1xuICBnZXRUYXJnZXRQb3NpdGlvbj86IChkOiBGKSA9PiBbbnVtYmVyLCBudW1iZXJdO1xuICBnZXRTdGFnZ2VyaW5nPzogKGQ6IEYsIGluZm86IEFjY2Vzc29yT2JqZWN0SW5mbykgPT4gbnVtYmVyO1xuICBnZXRQaWNrYWJsZT86IChkOiBGLCB7aW5kZXh9OiB7aW5kZXg6IG51bWJlcn0pID0+IG51bWJlcjsgLy8gPj0gMS4wIC0+IHRydWVcbiAgZ2V0Q29sb3I/OiAoZDogRikgPT4gUkdCQTtcbiAgZ2V0VGhpY2tuZXNzPzogKGQ6IEYpID0+IG51bWJlcjtcbiAgZ2V0RW5kcG9pbnRPZmZzZXRzPzogKGQ6IEYpID0+IFtudW1iZXIsIG51bWJlcl07XG59XG5cbi8vIGh0dHBzOi8vZGVjay5nbC8jL2RvY3VtZW50YXRpb24vZGV2ZWxvcGVyLWd1aWRlL3VzaW5nLWxheWVycz9zZWN0aW9uPWFjY2Vzc29yc1xuZXhwb3J0IGludGVyZmFjZSBBY2Nlc3Nvck9iamVjdEluZm8ge1xuICBpbmRleDogbnVtYmVyO1xuICBkYXRhOiBhbnk7XG4gIHRhcmdldDogYW55O1xufVxuXG5jb25zdCBERUZBVUxUX0NPTE9SOiBSR0JBID0gWzAsIDEzMiwgMTkzLCAyNTVdO1xuY29uc3QgbG9vcExlbmd0aCA9IDE4MDA7XG5jb25zdCBhbmltYXRpb25TcGVlZCA9IDIwO1xuY29uc3QgbG9vcFRpbWUgPSBsb29wTGVuZ3RoIC8gYW5pbWF0aW9uU3BlZWQ7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEFuaW1hdGVkRmxvd0xpbmVzTGF5ZXI8Rj4gZXh0ZW5kcyBMYXllciB7XG4gIHN0YXRpYyBkZWZhdWx0UHJvcHMgPSB7XG4gICAgY3VycmVudFRpbWU6IDAsXG4gICAgYW5pbWF0aW9uVGFpbExlbmd0aDogMC43LFxuICAgIGdldFNvdXJjZVBvc2l0aW9uOiB7dHlwZTogJ2FjY2Vzc29yJywgdmFsdWU6IChkOiBhbnkpID0+IFswLCAwXX0sXG4gICAgZ2V0VGFyZ2V0UG9zaXRpb246IHt0eXBlOiAnYWNjZXNzb3InLCB2YWx1ZTogKGQ6IGFueSkgPT4gWzAsIDBdfSxcbiAgICBnZXRQaWNrYWJsZToge3R5cGU6ICdhY2Nlc3NvcicsIHZhbHVlOiAoZDogYW55KSA9PiAxLjB9LFxuICAgIGdldFN0YWdnZXJpbmc6IHtcbiAgICAgIHR5cGU6ICdhY2Nlc3NvcicsXG4gICAgICB2YWx1ZTogKGQ6IGFueSwge2luZGV4fToge2luZGV4OiBudW1iZXJ9KSA9PiBNYXRoLnJhbmRvbSgpLFxuICAgIH0sXG4gICAgZ2V0Q29sb3I6IHt0eXBlOiAnYWNjZXNzb3InLCB2YWx1ZTogREVGQVVMVF9DT0xPUn0sXG4gICAgZ2V0VGhpY2tuZXNzOiB7dHlwZTogJ2FjY2Vzc29yJywgdmFsdWU6IDF9LFxuICAgIHRoaWNrbmVzc1VuaXQ6IDE1ICogMixcbiAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICBkZXB0aFRlc3Q6IGZhbHNlLFxuICAgIH0sXG4gIH07XG5cbiAgY29uc3RydWN0b3IocHJvcHM6IFByb3BzPEY+KSB7XG4gICAgc3VwZXIocHJvcHMpO1xuICB9XG5cbiAgZ2V0U2hhZGVycygpOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB7XG4gICAgcmV0dXJuIHN1cGVyLmdldFNoYWRlcnMoe1xuICAgICAgdnM6IFZlcnRleFNoYWRlcixcbiAgICAgIGZzOiBGcmFnbWVudFNoYWRlcixcbiAgICAgIG1vZHVsZXM6IFtwcm9qZWN0MzIsIHBpY2tpbmddLFxuICAgICAgc2hhZGVyQ2FjaGU6IHRoaXMuY29udGV4dC5zaGFkZXJDYWNoZSxcbiAgICB9KTtcbiAgfVxuXG4gIGluaXRpYWxpemVTdGF0ZSgpOiB2b2lkIHtcbiAgICBjb25zdCBhdHRyaWJ1dGVNYW5hZ2VyID0gdGhpcy5nZXRBdHRyaWJ1dGVNYW5hZ2VyKCk7XG5cbiAgICAvKiBlc2xpbnQtZGlzYWJsZSBtYXgtbGVuICovXG4gICAgYXR0cmlidXRlTWFuYWdlci5hZGRJbnN0YW5jZWQoe1xuICAgICAgaW5zdGFuY2VTb3VyY2VQb3NpdGlvbnM6IHtcbiAgICAgICAgc2l6ZTogMyxcbiAgICAgICAgdHJhbnNpdGlvbjogdHJ1ZSxcbiAgICAgICAgYWNjZXNzb3I6ICdnZXRTb3VyY2VQb3NpdGlvbicsXG4gICAgICB9LFxuICAgICAgaW5zdGFuY2VUYXJnZXRQb3NpdGlvbnM6IHtcbiAgICAgICAgc2l6ZTogMyxcbiAgICAgICAgdHJhbnNpdGlvbjogdHJ1ZSxcbiAgICAgICAgYWNjZXNzb3I6ICdnZXRUYXJnZXRQb3NpdGlvbicsXG4gICAgICB9LFxuICAgICAgaW5zdGFuY2VDb2xvcnM6IHtcbiAgICAgICAgc2l6ZTogNCxcbiAgICAgICAgdHlwZTogR0wuVU5TSUdORURfQllURSxcbiAgICAgICAgdHJhbnNpdGlvbjogdHJ1ZSxcbiAgICAgICAgYWNjZXNzb3I6ICdnZXRDb2xvcicsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogWzAsIDAsIDAsIDI1NV0sXG4gICAgICB9LFxuICAgICAgaW5zdGFuY2VXaWR0aHM6IHtcbiAgICAgICAgc2l6ZTogMSxcbiAgICAgICAgdHJhbnNpdGlvbjogdHJ1ZSxcbiAgICAgICAgYWNjZXNzb3I6ICdnZXRUaGlja25lc3MnLFxuICAgICAgICBkZWZhdWx0VmFsdWU6IDEsXG4gICAgICB9LFxuICAgICAgaW5zdGFuY2VTdGFnZ2VyaW5nOiB7XG4gICAgICAgIGFjY2Vzc29yOiAnZ2V0U3RhZ2dlcmluZycsXG4gICAgICAgIHNpemU6IDEsXG4gICAgICAgIHRyYW5zaXRpb246IGZhbHNlLFxuICAgICAgfSxcbiAgICAgIGluc3RhbmNlUGlja2FibGU6IHtcbiAgICAgICAgYWNjZXNzb3I6ICdnZXRQaWNrYWJsZScsXG4gICAgICAgIHNpemU6IDEsXG4gICAgICAgIHRyYW5zaXRpb246IGZhbHNlLFxuICAgICAgfSxcbiAgICB9KTtcbiAgICAvKiBlc2xpbnQtZW5hYmxlIG1heC1sZW4gKi9cbiAgfVxuXG4gIGdldE5lZWRzUmVkcmF3KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgdXBkYXRlU3RhdGUoe3Byb3BzLCBvbGRQcm9wcywgY2hhbmdlRmxhZ3N9OiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogdm9pZCB7XG4gICAgc3VwZXIudXBkYXRlU3RhdGUoe3Byb3BzLCBvbGRQcm9wcywgY2hhbmdlRmxhZ3N9KTtcblxuICAgIGlmIChjaGFuZ2VGbGFncy5leHRlbnNpb25zQ2hhbmdlZCkge1xuICAgICAgY29uc3Qge2dsfSA9IHRoaXMuY29udGV4dDtcbiAgICAgIGlmICh0aGlzLnN0YXRlLm1vZGVsKSB7XG4gICAgICAgIHRoaXMuc3RhdGUubW9kZWwuZGVsZXRlKCk7XG4gICAgICB9XG4gICAgICB0aGlzLnNldFN0YXRlKHttb2RlbDogdGhpcy5fZ2V0TW9kZWwoZ2wpfSk7XG4gICAgICB0aGlzLmdldEF0dHJpYnV0ZU1hbmFnZXIoKS5pbnZhbGlkYXRlQWxsKCk7XG4gICAgfVxuICB9XG5cbiAgZHJhdyh7dW5pZm9ybXN9OiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogdm9pZCB7XG4gICAgY29uc3Qge3RoaWNrbmVzc1VuaXQsIGFuaW1hdGlvblRhaWxMZW5ndGh9ID0gdGhpcy5wcm9wcztcbiAgICBjb25zdCB0aW1lc3RhbXAgPSBEYXRlLm5vdygpIC8gMTAwMDtcbiAgICBjb25zdCBhbmltYXRpb25UaW1lID0gKCh0aW1lc3RhbXAgJSBsb29wVGltZSkgLyBsb29wVGltZSkgKiBsb29wTGVuZ3RoO1xuXG4gICAgdGhpcy5zdGF0ZS5tb2RlbFxuICAgICAgLnNldFVuaWZvcm1zKHtcbiAgICAgICAgLi4udW5pZm9ybXMsXG4gICAgICAgIHRoaWNrbmVzc1VuaXQ6IHRoaWNrbmVzc1VuaXQgKiA0LFxuICAgICAgICBhbmltYXRpb25UYWlsTGVuZ3RoLFxuICAgICAgICBjdXJyZW50VGltZTogYW5pbWF0aW9uVGltZSxcbiAgICAgIH0pXG4gICAgICAuZHJhdygpO1xuICB9XG5cbiAgX2dldE1vZGVsKGdsOiBXZWJHTFJlbmRlcmluZ0NvbnRleHQpOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiB7XG4gICAgLypcbiAgICAgKiAgKDAsIC0xKS0tLS0tLS0tLS0tLS1fKDEsIC0xKVxuICAgICAqICAgICAgIHwgICAgICAgICAgXywtXCIgIHxcbiAgICAgKiAgICAgICBvICAgICAgXywtXCIgICAgICBvXG4gICAgICogICAgICAgfCAgXywtXCIgICAgICAgICAgfFxuICAgICAqICAgKDAsIDEpXCItLS0tLS0tLS0tLS0tKDEsIDEpXG4gICAgICovXG4gICAgY29uc3QgcG9zaXRpb25zID0gWzAsIC0xLCAwLCAwLCAxLCAwLCAxLCAtMSwgMCwgMSwgMSwgMF07XG5cbiAgICByZXR1cm4gbmV3IE1vZGVsKFxuICAgICAgZ2wsXG4gICAgICBPYmplY3QuYXNzaWduKHt9LCB0aGlzLmdldFNoYWRlcnMoKSwge1xuICAgICAgICBpZDogdGhpcy5wcm9wcy5pZCxcbiAgICAgICAgZ2VvbWV0cnk6IG5ldyBHZW9tZXRyeSh7XG4gICAgICAgICAgZHJhd01vZGU6IEdMLlRSSUFOR0xFX1NUUklQLFxuICAgICAgICAgIGF0dHJpYnV0ZXM6IHtcbiAgICAgICAgICAgIHBvc2l0aW9uczogbmV3IEZsb2F0MzJBcnJheShwb3NpdGlvbnMpLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0pLFxuICAgICAgICBpc0luc3RhbmNlZDogdHJ1ZSxcbiAgICAgIH0pLFxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQW5pbWF0ZWRGbG93TGluZXNMYXllci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9BbmltYXRlZEZsb3dMaW5lc0xheWVyL0FuaW1hdGVkRmxvd0xpbmVzTGF5ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7R0FnQkc7QUFFSCxPQUFPLEVBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEQsT0FBTyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDcEMsT0FBTyxFQUFDLFFBQVEsRUFBRSxLQUFLLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDOUMsT0FBTyxjQUFjLE1BQU0sdUNBQXVDLENBQUM7QUFDbkUsT0FBTyxZQUFZLE1BQU0scUNBQXFDLENBQUM7QUErQi9ELE1BQU0sYUFBYSxHQUFTLENBQUMsQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsR0FBRyxDQUFDLENBQUM7QUFDL0MsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDO0FBQ3hCLE1BQU0sY0FBYyxHQUFHLEVBQUUsQ0FBQztBQUMxQixNQUFNLFFBQVEsR0FBRyxVQUFVLEdBQUcsY0FBYyxDQUFDO0FBRTdDLE1BQU0sQ0FBQyxPQUFPLE9BQU8sc0JBQTBCLFNBQVEsS0FBSztJQW1CMUQsWUFBWSxLQUFlO1FBQ3pCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNmLENBQUM7SUFFRCxVQUFVO1FBQ1IsT0FBTyxLQUFLLENBQUMsVUFBVSxDQUFDO1lBQ3RCLEVBQUUsRUFBRSxZQUFZO1lBQ2hCLEVBQUUsRUFBRSxjQUFjO1lBQ2xCLE9BQU8sRUFBRSxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUM7WUFDN0IsV0FBVyxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVztTQUN0QyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsZUFBZTtRQUNiLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxD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QVksRUFBRSxFQUFDLElBQUksRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBQztJQUMxQyxhQUFhLEVBQUUsRUFBRSxHQUFHLENBQUM7SUFDckIsVUFBVSxFQUFFO1FBQ1YsU0FBUyxFQUFFLEtBQUs7S0FDakI7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDIyIEZsb3dtYXBCbHVlXG4gKiBDb3B5cmlnaHQgMjAxOC0yMDIwIFRlcmFseXRpY3MsIG1vZGlmaWVkIGJ5IEZsb3dtYXBCbHVlXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKlxuICovXG5cbmltcG9ydCB7TGF5ZXIsIHBpY2tpbmcsIHByb2plY3QzMn0gZnJvbSAnQGRlY2suZ2wvY29yZSc7XG5pbXBvcnQgR0wgZnJvbSAnQGx1bWEuZ2wvY29uc3RhbnRzJztcbmltcG9ydCB7R2VvbWV0cnksIE1vZGVsfSBmcm9tICdAbHVtYS5nbC9jb3JlJztcbmltcG9ydCBGcmFnbWVudFNoYWRlciBmcm9tICcuL0FuaW1hdGVkRmxvd0xpbmVzTGF5ZXJGcmFnbWVudC5nbHNsJztcbmltcG9ydCBWZXJ0ZXhTaGFkZXIgZnJvbSAnLi9BbmltYXRlZEZsb3dMaW5lc0xheWVyVmVydGV4Lmdsc2wnO1xuaW1wb3J0IHtGbG93TGluZXNMYXllckF0dHJpYnV0ZXMsIFJHQkF9IGZyb20gJ0BmbG93bWFwLmdsL2RhdGEnO1xuaW1wb3J0IHtMYXllclByb3BzfSBmcm9tICcuLi90eXBlcyc7XG5leHBvcnQgaW50ZXJmYWNlIFByb3BzPEY+IGV4dGVuZHMgTGF5ZXJQcm9wcyB7XG4gIGlkOiBzdHJpbmc7XG4gIG9wYWNpdHk/OiBudW1iZXI7XG4gIHBpY2thYmxlPzogYm9vbGVhbjtcbiAgdXBkYXRlVHJpZ2dlcnM/OiB7W2tleTogc3RyaW5nXTogUmVjb3JkPHN0cmluZywgdW5rbm93bj59O1xuICBkYXRhOiBGW10gfCBGbG93TGluZXNMYXllckF0dHJpYnV0ZXM7XG4gIGRyYXdPdXRsaW5lOiBib29sZWFuO1xuICBvdXRsaW5lQ29sb3I/OiBSR0JBO1xuICBvdXRsaW5lVGhpY2tuZXNzPzogbnVtYmVyO1xuICBjdXJyZW50VGltZT86IG51bWJlcjtcbiAgdGhpY2tuZXNzVW5pdD86IG51bWJlcjtcbiAgYW5pbWF0aW9uVGFpbExlbmd0aD86IG51bWJlcjtcbiAgZ2V0U291cmNlUG9zaXRpb24/OiAoZDogRikgPT4gW251bWJlciwgbnVtYmVyXTtcbiAgZ2V0VGFyZ2V0UG9zaXRpb24/OiAoZDogRikgPT4gW251bWJlciwgbnVtYmVyXTtcbiAgZ2V0U3RhZ2dlcmluZz86IChkOiBGLCBpbmZvOiBBY2Nlc3Nvck9iamVjdEluZm8pID0+IG51bWJlcjtcbiAgZ2V0UGlja2FibGU/OiAoZDogRiwge2luZGV4fToge2luZGV4OiBudW1iZXJ9KSA9PiBudW1iZXI7IC8vID49IDEuMCAtPiB0cnVlXG4gIGdldENvbG9yPzogKGQ6IEYpID0+IFJHQkE7XG4gIGdldFRoaWNrbmVzcz86IChkOiBGKSA9PiBudW1iZXI7XG4gIGdldEVuZHBvaW50T2Zmc2V0cz86IChkOiBGKSA9PiBbbnVtYmVyLCBudW1iZXJdO1xufVxuXG4vLyBodHRwczovL2RlY2suZ2wvIy9kb2N1bWVudGF0aW9uL2RldmVsb3Blci1ndWlkZS91c2luZy1sYXllcnM/c2VjdGlvbj1hY2Nlc3NvcnNcbmV4cG9ydCBpbnRlcmZhY2UgQWNjZXNzb3JPYmplY3RJbmZvIHtcbiAgaW5kZXg6IG51bWJlcjtcbiAgZGF0YTogYW55O1xuICB0YXJnZXQ6IGFueTtcbn1cblxuY29uc3QgREVGQVVMVF9DT0xPUjogUkdCQSA9IFswLCAxMzIsIDE5MywgMjU1XTtcbmNvbnN0IGxvb3BMZW5ndGggPSAxODAwO1xuY29uc3QgYW5pbWF0aW9uU3BlZWQgPSAyMDtcbmNvbnN0IGxvb3BUaW1lID0gbG9vcExlbmd0aCAvIGFuaW1hdGlvblNwZWVkO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBBbmltYXRlZEZsb3dMaW5lc0xheWVyPEY+IGV4dGVuZHMgTGF5ZXIge1xuICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgIGN1cnJlbnRUaW1lOiAwLFxuICAgIGFuaW1hdGlvblRhaWxMZW5ndGg6IDAuNyxcbiAgICBnZXRTb3VyY2VQb3NpdGlvbjoge3R5cGU6ICdhY2Nlc3NvcicsIHZhbHVlOiAoZDogYW55KSA9PiBbMCwgMF19LFxuICAgIGdldFRhcmdldFBvc2l0aW9uOiB7dHlwZTogJ2FjY2Vzc29yJywgdmFsdWU6IChkOiBhbnkpID0+IFswLCAwXX0sXG4gICAgZ2V0UGlja2FibGU6IHt0eXBlOiAnYWNjZXNzb3InLCB2YWx1ZTogKGQ6IGFueSkgPT4gMS4wfSxcbiAgICBnZXRTdGFnZ2VyaW5nOiB7XG4gICAgICB0eXBlOiAnYWNjZXNzb3InLFxuICAgICAgdmFsdWU6IChkOiBhbnksIHtpbmRleH06IHtpbmRleDogbnVtYmVyfSkgPT4gTWF0aC5yYW5kb20oKSxcbiAgICB9LFxuICAgIGdldENvbG9yOiB7dHlwZTogJ2FjY2Vzc29yJywgdmFsdWU6IERFRkFVTFRfQ09MT1J9LFxuICAgIGdldFRoaWNrbmVzczoge3R5cGU6ICdhY2Nlc3NvcicsIHZhbHVlOiAxfSxcbiAgICB0aGlja25lc3NVbml0OiAxNSAqIDIsXG4gICAgcGFyYW1ldGVyczoge1xuICAgICAgZGVwdGhUZXN0OiBmYWxzZSxcbiAgICB9LFxuICB9O1xuXG4gIGNvbnN0cnVjdG9yKHByb3BzOiBQcm9wczxGPikge1xuICAgIHN1cGVyKHByb3BzKTtcbiAgfVxuXG4gIGdldFNoYWRlcnMoKTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuICAgIHJldHVybiBzdXBlci5nZXRTaGFkZXJzKHtcbiAgICAgIHZzOiBWZXJ0ZXhTaGFkZXIsXG4gICAgICBmczogRnJhZ21lbnRTaGFkZXIsXG4gICAgICBtb2R1bGVzOiBbcHJvamVjdDMyLCBwaWNraW5nXSxcbiAgICAgIHNoYWRlckNhY2hlOiB0aGlzLmNvbnRleHQuc2hhZGVyQ2FjaGUsXG4gICAgfSk7XG4gIH1cblxuICBpbml0aWFsaXplU3RhdGUoKTogdm9pZCB7XG4gICAgY29uc3QgYXR0cmlidXRlTWFuYWdlciA9IHRoaXMuZ2V0QXR0cmlidXRlTWFuYWdlcigpO1xuXG4gICAgLyogZXNsaW50LWRpc2FibGUgbWF4LWxlbiAqL1xuICAgIGF0dHJpYnV0ZU1hbmFnZXIuYWRkSW5zdGFuY2VkKHtcbiAgICAgIGluc3RhbmNlU291cmNlUG9zaXRpb25zOiB7XG4gICAgICAgIHNpemU6IDMsXG4gICAgICAgIHR5cGU6IEdMLkRPVUJMRSxcbiAgICAgICAgdHJhbnNpdGlvbjogdHJ1ZSxcbiAgICAgICAgYWNjZXNzb3I6ICdnZXRTb3VyY2VQb3NpdGlvbicsXG4gICAgICB9LFxuICAgICAgaW5zdGFuY2VUYXJnZXRQb3NpdGlvbnM6IHtcbiAgICAgICAgc2l6ZTogMyxcbiAgICAgICAgdHlwZTogR0wuRE9VQkxFLFxuICAgICAgICB0cmFuc2l0aW9uOiB0cnVlLFxuICAgICAgICBhY2Nlc3NvcjogJ2dldFRhcmdldFBvc2l0aW9uJyxcbiAgICAgIH0sXG4gICAgICBpbnN0YW5jZUNvbG9yczoge1xuICAgICAgICBzaXplOiA0LFxuICAgICAgICB0eXBlOiBHTC5VTlNJR05FRF9CWVRFLFxuICAgICAgICB0cmFuc2l0aW9uOiB0cnVlLFxuICAgICAgICBhY2Nlc3NvcjogJ2dldENvbG9yJyxcbiAgICAgICAgZGVmYXVsdFZhbHVlOiBbMCwgMCwgMCwgMjU1XSxcbiAgICAgIH0sXG4gICAgICBpbnN0YW5jZVdpZHRoczoge1xuICAgICAgICBzaXplOiAxLFxuICAgICAgICB0cmFuc2l0aW9uOiB0cnVlLFxuICAgICAgICBhY2Nlc3NvcjogJ2dldFRoaWNrbmVzcycsXG4gICAgICAgIGRlZmF1bHRWYWx1ZTogMSxcbiAgICAgIH0sXG4gICAgICBpbnN0YW5jZVN0YWdnZXJpbmc6IHtcbiAgICAgICAgYWNjZXNzb3I6ICdnZXRTdGFnZ2VyaW5nJyxcbiAgICAgICAgc2l6ZTogMSxcbiAgICAgICAgdHJhbnNpdGlvbjogZmFsc2UsXG4gICAgICB9LFxuICAgICAgaW5zdGFuY2VQaWNrYWJsZToge1xuICAgICAgICBhY2Nlc3NvcjogJ2dldFBpY2thYmxlJyxcbiAgICAgICAgc2l6ZTogMSxcbiAgICAgICAgdHJhbnNpdGlvbjogZmFsc2UsXG4gICAgICB9LFxuICAgIH0pO1xuICAgIC8qIGVzbGludC1lbmFibGUgbWF4LWxlbiAqL1xuICB9XG5cbiAgZ2V0TmVlZHNSZWRyYXcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICB1cGRhdGVTdGF0ZSh7cHJvcHMsIG9sZFByb3BzLCBjaGFuZ2VGbGFnc306IFJlY29yZDxzdHJpbmcsIGFueT4pOiB2b2lkIHtcbiAgICBzdXBlci51cGRhdGVTdGF0ZSh7cHJvcHMsIG9sZFByb3BzLCBjaGFuZ2VGbGFnc30pO1xuXG4gICAgaWYgKGNoYW5nZUZsYWdzLmV4dGVuc2lvbnNDaGFuZ2VkKSB7XG4gICAgICBjb25zdCB7Z2x9ID0gdGhpcy5jb250ZXh0O1xuICAgICAgdGhpcy5zdGF0ZS5tb2RlbD8uZGVsZXRlKCk7XG4gICAgICB0aGlzLnN0YXRlLm1vZGVsID0gdGhpcy5fZ2V0TW9kZWwoZ2wpO1xuICAgICAgdGhpcy5nZXRBdHRyaWJ1dGVNYW5hZ2VyKCkuaW52YWxpZGF0ZUFsbCgpO1xuICAgIH1cbiAgfVxuXG4gIGRyYXcoe3VuaWZvcm1zfTogUmVjb3JkPHN0cmluZywgYW55Pik6IHZvaWQge1xuICAgIGNvbnN0IHt0aGlja25lc3NVbml0LCBhbmltYXRpb25UYWlsTGVuZ3RofSA9IHRoaXMucHJvcHM7XG4gICAgY29uc3QgdGltZXN0YW1wID0gRGF0ZS5ub3coKSAvIDEwMDA7XG4gICAgY29uc3QgYW5pbWF0aW9uVGltZSA9ICgodGltZXN0YW1wICUgbG9vcFRpbWUpIC8gbG9vcFRpbWUpICogbG9vcExlbmd0aDtcblxuICAgIHRoaXMuc3RhdGUubW9kZWxcbiAgICAgIC5zZXRVbmlmb3Jtcyh7XG4gICAgICAgIC4uLnVuaWZvcm1zLFxuICAgICAgICB0aGlja25lc3NVbml0OiB0aGlja25lc3NVbml0ICogNCxcbiAgICAgICAgYW5pbWF0aW9uVGFpbExlbmd0aCxcbiAgICAgICAgY3VycmVudFRpbWU6IGFuaW1hdGlvblRpbWUsXG4gICAgICB9KVxuICAgICAgLmRyYXcoKTtcbiAgfVxuXG4gIF9nZXRNb2RlbChnbDogV2ViR0xSZW5kZXJpbmdDb250ZXh0KTogUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuICAgIC8qXG4gICAgICogICgwLCAtMSktLS0tLS0tLS0tLS0tXygxLCAtMSlcbiAgICAgKiAgICAgICB8ICAgICAgICAgIF8sLVwiICB8XG4gICAgICogICAgICAgbyAgICAgIF8sLVwiICAgICAgb1xuICAgICAqICAgICAgIHwgIF8sLVwiICAgICAgICAgIHxcbiAgICAgKiAgICgwLCAxKVwiLS0tLS0tLS0tLS0tLSgxLCAxKVxuICAgICAqL1xuICAgIGNvbnN0IHBvc2l0aW9ucyA9IFswLCAtMSwgMCwgMCwgMSwgMCwgMSwgLTEsIDAsIDEsIDEsIDBdO1xuXG4gICAgcmV0dXJuIG5ldyBNb2RlbChcbiAgICAgIGdsLFxuICAgICAgT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5nZXRTaGFkZXJzKCksIHtcbiAgICAgICAgaWQ6IHRoaXMucHJvcHMuaWQsXG4gICAgICAgIGdlb21ldHJ5OiBuZXcgR2VvbWV0cnkoe1xuICAgICAgICAgIGRyYXdNb2RlOiBHTC5UUklBTkdMRV9TVFJJUCxcbiAgICAgICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgICBwb3NpdGlvbnM6IG5ldyBGbG9hdDMyQXJyYXkocG9zaXRpb25zKSxcbiAgICAgICAgICB9LFxuICAgICAgICB9KSxcbiAgICAgICAgaXNJbnN0YW5jZWQ6IHRydWUsXG4gICAgICB9KSxcbiAgICApO1xuICB9XG59XG4iXX0=
|
package/dist/FlowmapLayer.d.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
import { CompositeLayer } from '@deck.gl/core';
|
|
2
|
-
import { FlowLinesLayerAttributes, FlowmapData, FlowmapDataAccessors, FlowmapDataProvider, LayersData, FlowmapAggregateAccessors } from '@flowmap.gl/data';
|
|
2
|
+
import { FlowLinesLayerAttributes, FlowmapData, FlowmapDataAccessors, FlowmapDataProvider, LayersData, FlowmapAggregateAccessors, FilterState } from '@flowmap.gl/data';
|
|
3
3
|
import { FlowmapLayerPickingInfo, LayerProps } from './types';
|
|
4
4
|
export declare type FlowmapLayerProps<L, F> = {
|
|
5
5
|
data?: FlowmapData<L, F>;
|
|
6
6
|
dataProvider?: FlowmapDataProvider<L, F>;
|
|
7
|
+
filter?: FilterState;
|
|
7
8
|
locationTotalsEnabled?: boolean;
|
|
8
9
|
adaptiveScalesEnabled?: boolean;
|
|
9
10
|
animationEnabled?: boolean;
|
|
@@ -64,7 +65,6 @@ export default class FlowmapLayer<L, F> extends CompositeLayer {
|
|
|
64
65
|
constructor(props: FlowmapLayerProps<L, F>);
|
|
65
66
|
initializeState(): void;
|
|
66
67
|
getPickingInfo({ info }: Record<string, any>): any;
|
|
67
|
-
private _updateAccessors;
|
|
68
68
|
private _getOrMakeDataProvider;
|
|
69
69
|
private _updateDataProvider;
|
|
70
70
|
shouldUpdateState(params: Record<string, any>): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowmapLayer.d.ts","sourceRoot":"","sources":["../src/FlowmapLayer.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAC;AAE7C,OAAO,EAEL,wBAAwB,EACxB,WAAW,EACX,oBAAoB,EACpB,mBAAmB,EAOnB,UAAU,
|
|
1
|
+
{"version":3,"file":"FlowmapLayer.d.ts","sourceRoot":"","sources":["../src/FlowmapLayer.ts"],"names":[],"mappings":"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"}
|
package/dist/FlowmapLayer.js
CHANGED
|
@@ -25,7 +25,7 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
25
25
|
*/
|
|
26
26
|
import { CompositeLayer } from '@deck.gl/core';
|
|
27
27
|
import { ScatterplotLayer } from '@deck.gl/layers';
|
|
28
|
-
import { colorAsRgba, getFlowLineAttributesByIndex, getFlowmapColors, getOuterCircleRadiusByIndex, getLocationCoordsByIndex, isFlowmapData, isFlowmapDataProvider, LocalFlowmapDataProvider,
|
|
28
|
+
import { colorAsRgba, getFlowLineAttributesByIndex, getFlowmapColors, getOuterCircleRadiusByIndex, getLocationCoordsByIndex, isFlowmapData, isFlowmapDataProvider, LocalFlowmapDataProvider, FlowmapAggregateAccessors, } from '@flowmap.gl/data';
|
|
29
29
|
import AnimatedFlowLinesLayer from './AnimatedFlowLinesLayer';
|
|
30
30
|
import FlowCirclesLayer from './FlowCirclesLayer';
|
|
31
31
|
import FlowLinesLayer from './FlowLinesLayer';
|
|
@@ -85,11 +85,10 @@ export default class FlowmapLayer extends CompositeLayer {
|
|
|
85
85
|
}
|
|
86
86
|
return info;
|
|
87
87
|
}
|
|
88
|
-
_updateAccessors() {
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
}
|
|
88
|
+
// private _updateAccessors() {
|
|
89
|
+
// this.state?.dataProvider?.setAccessors(this.props);
|
|
90
|
+
// this.setState({accessors: new FlowmapAggregateAccessors(this.props)});
|
|
91
|
+
// }
|
|
93
92
|
_getOrMakeDataProvider() {
|
|
94
93
|
const { data, dataProvider } = this.props;
|
|
95
94
|
if (isFlowmapDataProvider(dataProvider === null || dataProvider === void 0 ? void 0 : dataProvider.dataProvider)) {
|
|
@@ -118,10 +117,6 @@ export default class FlowmapLayer extends CompositeLayer {
|
|
|
118
117
|
// (e.g. ignore viewport changes when adaptiveScalesEnabled and clustering are false)
|
|
119
118
|
}
|
|
120
119
|
updateState({ oldProps, props, changeFlags }) {
|
|
121
|
-
const { dataProvider, highlightedObject } = this.state || {};
|
|
122
|
-
if (!dataProvider) {
|
|
123
|
-
return;
|
|
124
|
-
}
|
|
125
120
|
if (changeFlags.propsChanged) {
|
|
126
121
|
// this._updateAccessors();
|
|
127
122
|
}
|
|
@@ -136,11 +131,13 @@ export default class FlowmapLayer extends CompositeLayer {
|
|
|
136
131
|
if (changeFlags.viewportChanged ||
|
|
137
132
|
changeFlags.propsOrDataChanged // TODO can we ignore accessor props changes?
|
|
138
133
|
) {
|
|
139
|
-
dataProvider
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
134
|
+
const { dataProvider } = this.state || {};
|
|
135
|
+
if (dataProvider) {
|
|
136
|
+
dataProvider.setFlowmapState(this._getFlowmapState());
|
|
137
|
+
dataProvider.updateLayersData((layersData) => {
|
|
138
|
+
this.setState({ layersData });
|
|
139
|
+
}, changeFlags);
|
|
140
|
+
}
|
|
144
141
|
}
|
|
145
142
|
}
|
|
146
143
|
_getSettingsState() {
|
|
@@ -164,12 +161,8 @@ export default class FlowmapLayer extends CompositeLayer {
|
|
|
164
161
|
_getFlowmapState() {
|
|
165
162
|
return {
|
|
166
163
|
viewport: pickViewportProps(this.context.viewport),
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
locationFilterMode: LocationFilterMode.ALL,
|
|
170
|
-
selectedTimeRange: undefined,
|
|
171
|
-
},
|
|
172
|
-
settingsState: this._getSettingsState(),
|
|
164
|
+
filter: this.props.filter,
|
|
165
|
+
settings: this._getSettingsState(),
|
|
173
166
|
};
|
|
174
167
|
}
|
|
175
168
|
_getFlowmapLayerPickingInfo(info) {
|
|
@@ -318,6 +311,9 @@ export default class FlowmapLayer extends CompositeLayer {
|
|
|
318
311
|
}
|
|
319
312
|
}
|
|
320
313
|
}
|
|
314
|
+
if (this.props.renderLocationLabels) {
|
|
315
|
+
// const labels = this.props.renderLocationLabels(this.state.locations)
|
|
316
|
+
}
|
|
321
317
|
return layers;
|
|
322
318
|
}
|
|
323
319
|
}
|
|
@@ -348,4 +344,4 @@ function pickViewportProps(viewport) {
|
|
|
348
344
|
bearing,
|
|
349
345
|
};
|
|
350
346
|
}
|
|
351
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmxvd21hcExheWVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0Zsb3dtYXBMYXllci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFDSCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFDTCxXQUFXLEVBS1gsNEJBQTRCLEVBQzVCLGdCQUFnQixFQUNoQiwyQkFBMkIsRUFDM0Isd0JBQXdCLEVBQ3hCLGFBQWEsRUFDYixxQkFBcUIsRUFFckIsd0JBQXdCLEVBQ3hCLGtCQUFrQixFQUVsQix5QkFBeUIsR0FDMUIsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLHNCQUFzQixNQUFNLDBCQUEwQixDQUFDO0FBQzlELE9BQU8sZ0JBQWdCLE1BQU0sb0JBQW9CLENBQUM7QUFDbEQsT0FBTyxjQUFjLE1BQU0sa0JBQWtCLENBQUM7QUFDOUMsT0FBTyxFQUlMLFdBQVcsR0FDWixNQUFNLFNBQVMsQ0FBQztBQTBCakIsSUFBSyxhQUdKO0FBSEQsV0FBSyxhQUFhO0lBQ2hCLHNDQUFxQixDQUFBO0lBQ3JCLDhCQUFhLENBQUE7QUFDZixDQUFDLEVBSEksYUFBYSxLQUFiLGFBQWEsUUFHakI7QUF5QkQsTUFBTSxDQUFDLE9BQU8sT0FBTyxZQUFtQixTQUFRLGNBQWM7SUFrQjVELFlBQW1CLEtBQThCO1FBQy9DLEtBQUssaUNBQ0EsS0FBSyxLQUNSLFlBQVksRUFBRTtnQkFDWiw4RUFBOEU7Z0JBQzlFLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWTthQUNqQyxFQUNELE9BQU8sRUFBRSxDQUFDLElBQXNCLEVBQUUsS0FBa0IsRUFBRSxFQUFFO2dCQUN0RCxzREFBc0Q7Z0JBQ3RELDREQUE0RDtnQkFDNUQsWUFBWTtnQkFDWixJQUFJO2dCQUNKLElBQUksQ0FBQyxR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USxDQUFDO0lBQzVFLE9BQU87UUFDTCxLQUFLO1FBQ0wsTUFBTTtRQUNOLFNBQVM7UUFDVCxRQUFRO1FBQ1IsSUFBSTtRQUNKLEtBQUs7UUFDTCxPQUFPO0tBQ1IsQ0FBQztBQUNKLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMjIgRmxvd21hcEJsdWVcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogaHR0cDovL3d3dy5hcGFjaGUub3JnL2xpY2Vuc2VzL0xJQ0VOU0UtMi4wXG4gKlxuICogVW5sZXNzIHJlcXVpcmVkIGJ5IGFwcGxpY2FibGUgbGF3IG9yIGFncmVlZCB0byBpbiB3cml0aW5nLCBzb2Z0d2FyZVxuICogZGlzdHJpYnV0ZWQgdW5kZXIgdGhlIExpY2Vuc2UgaXMgZGlzdHJpYnV0ZWQgb24gYW4gXCJBUyBJU1wiIEJBU0lTLFxuICogV0lUSE9VVCBXQVJSQU5USUVTIE9SIENPTkRJVElPTlMgT0YgQU5ZIEtJTkQsIGVpdGhlciBleHByZXNzIG9yIGltcGxpZWQuXG4gKiBTZWUgdGhlIExpY2Vuc2UgZm9yIHRoZSBzcGVjaWZpYyBsYW5ndWFnZSBnb3Zlcm5pbmcgcGVybWlzc2lvbnMgYW5kXG4gKiBsaW1pdGF0aW9ucyB1bmRlciB0aGUgTGljZW5zZS5cbiAqXG4gKi9cbmltcG9ydCB7Q29tcG9zaXRlTGF5ZXJ9IGZyb20gJ0BkZWNrLmdsL2NvcmUnO1xuaW1wb3J0IHtTY2F0dGVycGxvdExheWVyfSBmcm9tICdAZGVjay5nbC9sYXllcnMnO1xuaW1wb3J0IHtcbiAgY29sb3JBc1JnYmEsXG4gIEZsb3dMaW5lc0xheWVyQXR0cmlidXRlcyxcbiAgRmxvd21hcERhdGEsXG4gIEZsb3dtYXBEYXRhQWNjZXNzb3JzLFxuICBGbG93bWFwRGF0YVByb3ZpZGVyLFxuICBnZXRGbG93TGluZUF0dHJpYnV0ZXNCeUluZGV4LFxuICBnZXRGbG93bWFwQ29sb3JzLFxuICBnZXRPdXRlckNpcmNsZVJhZGl1c0J5SW5kZXgsXG4gIGdldExvY2F0aW9uQ29vcmRzQnlJbmRleCxcbiAgaXNGbG93bWFwRGF0YSxcbiAgaXNGbG93bWFwRGF0YVByb3ZpZGVyLFxuICBMYXllcnNEYXRhLFxuICBMb2NhbEZsb3dtYXBEYXRhUHJvdmlkZXIsXG4gIExvY2F0aW9uRmlsdGVyTW9kZSxcbiAgVmlld3BvcnRQcm9wcyxcbiAgRmxvd21hcEFnZ3JlZ2F0ZUFjY2Vzc29ycyxcbn0gZnJvbSAnQGZsb3dtYXAuZ2wvZGF0YSc7XG5pbXBvcnQgQW5pbWF0ZWRGbG93TGluZXNMYXllciBmcm9tICcuL0FuaW1hdGVkRmxvd0xpbmVzTGF5ZXInO1xuaW1wb3J0IEZsb3dDaXJjbGVzTGF5ZXIgZnJvbSAnLi9GbG93Q2lyY2xlc0xheWVyJztcbmltcG9ydCBGbG93TGluZXNMYXllciBmcm9tICcuL0Zsb3dMaW5lc0xheWVyJztcbmltcG9ydCB7XG4gIEZsb3dtYXBMYXllclBpY2tpbmdJbmZvLFxuICBMYXllclByb3BzLFxuICBQaWNraW5nSW5mbyxcbiAgUGlja2luZ1R5cGUsXG59IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgdHlwZSBGbG93bWFwTGF5ZXJQcm9wczxMLCBGPiA9IHtcbiAgZGF0YT86IEZsb3dtYXBEYXRhPEwsIEY+O1xuICBkYXRhUHJvdmlkZXI/OiBGbG93bWFwRGF0YVByb3ZpZGVyPEwsIEY+O1xuICBsb2NhdGlvblRvdGFsc0VuYWJsZWQ/OiBib29sZWFuO1xuICBhZGFwdGl2ZVNjYWxlc0VuYWJsZWQ/OiBib29sZWFuO1xuICBhbmltYXRpb25FbmFibGVkPzogYm9vbGVhbjtcbiAgY2x1c3RlcmluZ0VuYWJsZWQ/OiBib29sZWFuO1xuICBjbHVzdGVyaW5nTGV2ZWw/OiBudW1iZXI7XG4gIGZhZGVFbmFibGVkPzogYm9vbGVhbjtcbiAgZmFkZU9wYWNpdHlFbmFibGVkPzogYm9vbGVhbjtcbiAgY2x1c3RlcmluZ0F1dG8/OiBib29sZWFuO1xuICBkYXJrTW9kZT86IGJvb2xlYW47XG4gIGZhZGVBbW91bnQ/OiBudW1iZXI7XG4gIGNvbG9yU2NoZW1lPzogc3RyaW5nIHwgc3RyaW5nW107XG4gIGhpZ2hsaWdodENvbG9yPzogc3RyaW5nIHwgbnVtYmVyW107XG4gIG1heFRvcEZsb3dzRGlzcGxheU51bT86IG51bWJlcjtcbiAgb25Ib3Zlcj86IChcbiAgICBpbmZvOiBGbG93bWFwTGF5ZXJQaWNraW5nSW5mbzxMLCBGPiB8IHVuZGVmaW5lZCxcbiAgICBldmVudDogU291cmNlRXZlbnQsXG4gICkgPT4gdm9pZDtcbiAgb25DbGljaz86IChpbmZvOiBGbG93bWFwTGF5ZXJQaWNraW5nSW5mbzxMLCBGPiwgZXZlbnQ6IFNvdXJjZUV2ZW50KSA9PiB2b2lkO1xufSAmIFBhcnRpYWw8Rmxvd21hcERhdGFBY2Nlc3NvcnM8TCwgRj4+ICZcbiAgTGF5ZXJQcm9wcztcblxuZW51bSBIaWdobGlnaHRUeXBlIHtcbiAgTE9DQVRJT04gPSAnbG9jYXRpb24nLFxuICBGTE9XID0gJ2Zsb3cnLFxufVxuXG50eXBlIEhpZ2hsaWdodGVkTG9jYXRpb25PYmplY3QgPSB7XG4gIHR5cGU6IEhpZ2hsaWdodFR5cGUuTE9DQVRJT047XG4gIGNvb3JkczogW251bWJlciwgbnVtYmVyXTtcbiAgcmFkaXVzOiBudW1iZXI7XG59O1xuXG50eXBlIEhpZ2hsaWdodGVkRmxvd09iamVjdCA9IHtcbiAgdHlwZTogSGlnaGxpZ2h0VHlwZS5GTE9XO1xuICBsaW5lQXR0cmlidXRlczogRmxvd0xpbmVzTGF5ZXJBdHRyaWJ1dGVzO1xufTtcblxudHlwZSBIaWdobGlnaHRlZE9iamVjdCA9IEhpZ2hsaWdodGVkTG9jYXRpb25PYmplY3QgfCBIaWdobGlnaHRlZEZsb3dPYmplY3Q7XG5cbnR5cGUgU3RhdGU8TCwgRj4gPSB7XG4gIGFjY2Vzc29yczogRmxvd21hcEFnZ3JlZ2F0ZUFjY2Vzc29yczxMLCBGPjtcbiAgZGF0YVByb3ZpZGVyOiBGbG93bWFwRGF0YVByb3ZpZGVyPEwsIEY+O1xuICBsYXllcnNEYXRhOiBMYXllcnNEYXRhIHwgdW5kZWZpbmVkO1xuICBoaWdobGlnaHRlZE9iamVjdDogSGlnaGxpZ2h0ZWRPYmplY3QgfCB1bmRlZmluZWQ7XG4gIHBpY2tpbmdJbmZvOiBGbG93bWFwTGF5ZXJQaWNraW5nSW5mbzxMLCBGPiB8IHVuZGVmaW5lZDtcbn07XG5cbmV4cG9ydCB0eXBlIFNvdXJjZUV2ZW50ID0ge3NyY0V2ZW50OiBNb3VzZUV2ZW50fTtcblxuZXhwb3J0IGRlZmF1bHQgY2xhc3MgRmxvd21hcExheWVyPEwsIEY+IGV4dGVuZHMgQ29tcG9zaXRlTGF5ZXIge1xuICBzdGF0aWMgZGVmYXVsdFByb3BzID0ge1xuICAgIGRhcmtNb2RlOiB0cnVlLFxuICAgIGZhZGVBbW91bnQ6IDUwLFxuICAgIGxvY2F0aW9uVG90YWxzRW5hYmxlZDogdHJ1ZSxcbiAgICBhbmltYXRpb25FbmFibGVkOiBmYWxzZSxcbiAgICBjbHVzdGVyaW5nRW5hYmxlZDogdHJ1ZSxcbiAgICBmYWRlRW5hYmxlZDogdHJ1ZSxcbiAgICBmYWRlT3BhY2l0eUVuYWJsZWQ6IGZhbHNlLFxuICAgIGNsdXN0ZXJpbmdBdXRvOiB0cnVlLFxuICAgIGNsdXN0ZXJpbmdMZXZlbDogdW5kZWZpbmVkLFxuICAgIGFkYXB0aXZlU2NhbGVzRW5hYmxlZDogdHJ1ZSxcbiAgICBjb2xvclNjaGVtZTogJ1RlYWwnLFxuICAgIGhpZ2hsaWdodENvbG9yOiAnb3JhbmdlJyxcbiAgICBtYXhUb3BGbG93c0Rpc3BsYXlOdW06IDUwMDAsXG4gIH07XG4gIHN0YXRlOiBTdGF0ZTxMLCBGPiB8IHVuZGVmaW5lZDtcblxuICBwdWJsaWMgY29uc3RydWN0b3IocHJvcHM6IEZsb3dtYXBMYXllclByb3BzPEwsIEY+KSB7XG4gICAgc3VwZXIoe1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBkYXRhUHJvdmlkZXI6IHtcbiAgICAgICAgLy8gVG8gYXZvaWQgZGVjay5nbCBwcm9wcyBkaWZmaW5nIG9uIGNvbWxpbmsgd29ya2VyIHByb3h5IGNhdXNpbmcgYW4gZXhjZXB0aW9uXG4gICAgICAgIGRhdGFQcm92aWRlcjogcHJvcHMuZGF0YVByb3ZpZGVyLFxuICAgICAgfSxcbiAgICAgIG9uSG92ZXI6IChpbmZvOiBQaWNraW5nSW5mbzxhbnk+LCBldmVudDogU291cmNlRXZlbnQpID0+IHtcbiAgICAgICAgLy8gVE9ETzogaWYgKGxhc3RIb3ZlckV2ZW50U3RhcnRUaW1lUmVmID4gc3RhcnRUaW1lKSB7XG4gICAgICAgIC8vICAgLy8gU2tpcHBpbmcsIGJlY2F1c2UgdGhpcyBpcyBub3QgdGhlIGxhdGVzdCBob3ZlciBldmVudFxuICAgICAgICAvLyAgIHJldHVybjtcbiAgICAgICAgLy8gfVxuICAgICAgICB0aGlzLnNldFN0YXRlKHtoaWdobGlnaHRlZE9iamVjdDogdGhpcy5fZ2V0SGlnaGxpZ2h0ZWRPYmplY3QoaW5mbyl9KTtcbiAgICAgICAgY29uc3Qge29uSG92ZXJ9ID0gcHJvcHM7XG4gICAgICAgIGlmIChvbkhvdmVyKSB7XG4gICAgICAgICAgdGhpcy5fZ2V0Rmxvd21hcExheWVyUGlja2luZ0luZm8oaW5mbykudGhlbigoaW5mbykgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7cGlja2luZ0luZm86IGluZm99KTtcbiAgICAgICAgICAgIG9uSG92ZXIoaW5mbywgZXZlbnQpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgb25DbGljazogKGluZm86IFBpY2tpbmdJbmZvPGFueT4sIGV2ZW50OiBTb3VyY2VFdmVudCkgPT4ge1xuICAgICAgICBjb25zdCB7b25DbGlja30gPSBwcm9wcztcbiAgICAgICAgaWYgKG9uQ2xpY2spIHtcbiAgICAgICAgICB0aGlzLl9nZXRGbG93bWFwTGF5ZXJQaWNraW5nSW5mbyhpbmZvKS50aGVuKChpbmZvKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNldFN0YXRlKHtwaWNraW5nSW5mbzogaW5mb30pO1xuICAgICAgICAgICAgaWYgKGluZm8pIHtcbiAgICAgICAgICAgICAgb25DbGljayhpbmZvLCBldmVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBpbml0aWFsaXplU3RhdGUoKSB7XG4gICAgdGhpcy5zdGF0ZSA9IHtcbiAgICAgIGFjY2Vzc29yczogbmV3IEZsb3dtYXBBZ2dyZWdhdGVBY2Nlc3NvcnM8TCwgRj4odGhpcy5wcm9wcyksXG4gICAgICBkYXRhUHJvdmlkZXI6IHRoaXMuX2dldE9yTWFrZURhdGFQcm92aWRlcigpLFxuICAgICAgbGF5ZXJzRGF0YTogdW5kZWZpbmVkLFxuICAgICAgaGlnaGxpZ2h0ZWRPYmplY3Q6IHVuZGVmaW5lZCxcbiAgICAgIHBpY2tpbmdJbmZvOiB1bmRlZmluZWQsXG4gICAgfTtcbiAgfVxuXG4gIGdldFBpY2tpbmdJbmZvKHtpbmZvfTogUmVjb3JkPHN0cmluZywgYW55Pikge1xuICAgIC8vIFRoaXMgaXMgZm9yIG9uSG92ZXIgZXZlbnQgaGFuZGxlcnMgc2V0IG9uIHRoZSA8RGVja0dMPiBjb21wb25lbnRcbiAgICBpZiAoIWluZm8ub2JqZWN0KSB7XG4gICAgICBjb25zdCBvYmplY3QgPSB0aGlzLnN0YXRlPy5waWNraW5nSW5mbz8ub2JqZWN0O1xuICAgICAgaWYgKG9iamVjdCkge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLmluZm8sXG4gICAgICAgICAgb2JqZWN0LFxuICAgICAgICAgIHBpY2tlZDogdHJ1ZSxcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIGluZm87XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVBY2Nlc3NvcnMoKSB7XG4gICAgdGhpcy5zdGF0ZT8uZGF0YVByb3ZpZGVyPy5zZXRBY2Nlc3NvcnModGhpcy5wcm9wcyk7XG4gICAgdGhpcy5zZXRTdGF0ZSh7YWNjZXNzb3JzOiBuZXcgRmxvd21hcEFnZ3JlZ2F0ZUFjY2Vzc29ycyh0aGlzLnByb3BzKX0pO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0T3JNYWtlRGF0YVByb3ZpZGVyKCkge1xuICAgIGNvbnN0IHtkYXRhLCBkYXRhUHJvdmlkZXJ9ID0gdGhpcy5wcm9wcztcbiAgICBpZiAoaXNGbG93bWFwRGF0YVByb3ZpZGVyPEwsIEY+KGRhdGFQcm92aWRlcj8uZGF0YVByb3ZpZGVyKSkge1xuICAgICAgcmV0dXJuIGRhdGFQcm92aWRlci5kYXRhUHJvdmlkZXI7XG4gICAgfSBlbHNlIGlmIChpc0Zsb3dtYXBEYXRhPEwsIEY+KGRhdGEpKSB7XG4gICAgICBjb25zdCBkYXRhUHJvdmlkZXIgPSBuZXcgTG9jYWxGbG93bWFwRGF0YVByb3ZpZGVyPEwsIEY+KHRoaXMucHJvcHMpO1xuICAgICAgZGF0YVByb3ZpZGVyLnNldEZsb3dtYXBEYXRhKGRhdGEpO1xuICAgICAgcmV0dXJuIGRhdGFQcm92aWRlcjtcbiAgICB9XG4gICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgJ0Zsb3dtYXBMYXllcjogZGF0YSBtdXN0IGJlIGEgRmxvd21hcERhdGFQcm92aWRlciBvciBGbG93bWFwRGF0YScsXG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgX3VwZGF0ZURhdGFQcm92aWRlcigpIHtcbiAgICB0aGlzLnNldFN0YXRlKHtkYXRhUHJvdmlkZXI6IHRoaXMuX2dldE9yTWFrZURhdGFQcm92aWRlcigpfSk7XG4gIH1cblxuICBzaG91bGRVcGRhdGVTdGF0ZShwYXJhbXM6IFJlY29yZDxzdHJpbmcsIGFueT4pOiBib29sZWFuIHtcbiAgICBjb25zdCB7Y2hhbmdlRmxhZ3N9ID0gcGFyYW1zO1xuICAgIC8vIGlmICh0aGlzLl92aWV3cG9ydENoYW5nZWQoKSkge1xuICAgIC8vICAgcmV0dXJuIHRydWU7XG4gICAgLy8gfVxuICAgIGlmIChjaGFuZ2VGbGFncy52aWV3cG9ydENoYW5nZWQpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICByZXR1cm4gc3VwZXIuc2hvdWxkVXBkYXRlU3RhdGUocGFyYW1zKTtcbiAgICAvLyBUT0RPOiBiZSBzbWFydGVyIG9uIHdoZW4gdG8gdXBkYXRlXG4gICAgLy8gKGUuZy4gaWdub3JlIHZpZXdwb3J0IGNoYW5nZXMgd2hlbiBhZGFwdGl2ZVNjYWxlc0VuYWJsZWQgYW5kIGNsdXN0ZXJpbmcgYXJlIGZhbHNlKVxuICB9XG5cbiAgdXBkYXRlU3RhdGUoe29sZFByb3BzLCBwcm9wcywgY2hhbmdlRmxhZ3N9OiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogdm9pZCB7XG4gICAgY29uc3Qge2RhdGFQcm92aWRlciwgaGlnaGxpZ2h0ZWRPYmplY3R9ID0gdGhpcy5zdGF0ZSB8fCB7fTtcbiAgICBpZiAoIWRhdGFQcm92aWRlcikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGlmIChjaGFuZ2VGbGFncy5wcm9wc0NoYW5nZWQpIHtcbiAgICAgIC8vIHRoaXMuX3VwZGF0ZUFjY2Vzc29ycygpO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlRmxhZ3MuZGF0YUNoYW5nZWQpIHtcbiAgICAgIHRoaXMuX3VwZGF0ZURhdGFQcm92aWRlcigpO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlRmxhZ3Mudmlld3BvcnRDaGFuZ2VkIHx8IGNoYW5nZUZsYWdzLmRhdGFDaGFuZ2VkKSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgaGlnaGxpZ2h0ZWRPYmplY3Q6IHVuZGVmaW5lZCxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIGNoYW5nZUZsYWdzLnZpZXdwb3J0Q2hhbmdlZCB8fFxuICAgICAgY2hhbmdlRmxhZ3MucHJvcHNPckRhdGFDaGFuZ2VkIC8vIFRPRE8gY2FuIHdlIGlnbm9yZSBhY2Nlc3NvciBwcm9wcyBjaGFuZ2VzP1xuICAgICkge1xuICAgICAgZGF0YVByb3ZpZGVyLnNldEZsb3dtYXBTdGF0ZSh0aGlzLl9nZXRGbG93bWFwU3RhdGUoKSk7XG4gICAgICAoYXN5bmMgKCkgPT4ge1xuICAgICAgICBjb25zdCBsYXllcnNEYXRhID0gYXdhaXQgZGF0YVByb3ZpZGVyLmdldExheWVyc0RhdGEoKTtcbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7bGF5ZXJzRGF0YX0pO1xuICAgICAgfSkoKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9nZXRTZXR0aW5nc1N0YXRlKCkge1xuICAgIGNvbnN0IHtcbiAgICAgIGxvY2F0aW9uVG90YWxzRW5hYmxlZCxcbiAgICAgIGFkYXB0aXZlU2NhbGVzRW5hYmxlZCxcbiAgICAgIGFuaW1hdGlvbkVuYWJsZWQsXG4gICAgICBjbHVzdGVyaW5nRW5hYmxlZCxcbiAgICAgIGNsdXN0ZXJpbmdMZXZlbCxcbiAgICAgIGZhZGVFbmFibGVkLFxuICAgICAgZmFkZU9wYWNpdHlFbmFibGVkLFxuICAgICAgY2x1c3RlcmluZ0F1dG8sXG4gICAgICBkYXJrTW9kZSxcbiAgICAgIGZhZGVBbW91bnQsXG4gICAgICBjb2xvclNjaGVtZSxcbiAgICAgIGhpZ2hsaWdodENvbG9yLFxuICAgICAgbWF4VG9wRmxvd3NEaXNwbGF5TnVtLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuICAgIHJldHVybiB7XG4gICAgICBsb2NhdGlvblRvdGFsc0VuYWJsZWQsXG4gICAgICBhZGFwdGl2ZVNjYWxlc0VuYWJsZWQsXG4gICAgICBhbmltYXRpb25FbmFibGVkLFxuICAgICAgY2x1c3RlcmluZ0VuYWJsZWQsXG4gICAgICBjbHVzdGVyaW5nTGV2ZWwsXG4gICAgICBmYWRlRW5hYmxlZCxcbiAgICAgIGZhZGVPcGFjaXR5RW5hYmxlZCxcbiAgICAgIGNsdXN0ZXJpbmdBdXRvLFxuICAgICAgZGFya01vZGUsXG4gICAgICBmYWRlQW1vdW50LFxuICAgICAgY29sb3JTY2hlbWUsXG4gICAgICBoaWdobGlnaHRDb2xvcixcbiAgICAgIG1heFRvcEZsb3dzRGlzcGxheU51bSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Rmxvd21hcFN0YXRlKCkge1xuICAgIHJldHVybiB7XG4gICAgICB2aWV3cG9ydDogcGlja1ZpZXdwb3J0UHJvcHModGhpcy5jb250ZXh0LnZpZXdwb3J0KSxcbiAgICAgIGZpbHRlclN0YXRlOiB7XG4gICAgICAgIHNlbGVjdGVkTG9jYXRpb25zOiB1bmRlZmluZWQsXG4gICAgICAgIGxvY2F0aW9uRmlsdGVyTW9kZTogTG9jYXRpb25GaWx0ZXJNb2RlLkFMTCxcbiAgICAgICAgc2VsZWN0ZWRUaW1lUmFuZ2U6IHVuZGVmaW5lZCxcbiAgICAgIH0sXG4gICAgICBzZXR0aW5nc1N0YXRlOiB0aGlzLl9nZXRTZXR0aW5nc1N0YXRlKCksXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX2dldEZsb3dtYXBMYXllclBpY2tpbmdJbmZvKFxuICAgIGluZm86IFJlY29yZDxzdHJpbmcsIGFueT4sXG4gICk6IFByb21pc2U8Rmxvd21hcExheWVyUGlja2luZ0luZm88TCwgRj4gfCB1bmRlZmluZWQ+IHtcbiAgICBjb25zdCB7aW5kZXgsIHNvdXJjZUxheWVyfSA9IGluZm87XG4gICAgY29uc3Qge2RhdGFQcm92aWRlciwgYWNjZXNzb3JzfSA9IHRoaXMuc3RhdGUgfHwge307XG4gICAgaWYgKCFkYXRhUHJvdmlkZXIgfHwgIWFjY2Vzc29ycykge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgY29uc3QgY29tbW9uSW5mbyA9IHtcbiAgICAgIC4uLmluZm8sXG4gICAgICBwaWNrZWQ6IGluZm8ucGlja2VkLFxuICAgICAgbGF5ZXI6IGluZm8ubGF5ZXIsXG4gICAgICBpbmRleDogaW5mby5pbmRleCxcbiAgICAgIHg6IGluZm8ueCxcbiAgICAgIHk6IGluZm8ueSxcbiAgICAgIGNvb3JkaW5hdGU6IGluZm8uY29vcmRpbmF0ZSxcbiAgICAgIGV2ZW50OiBpbmZvLmV2ZW50LFxuICAgIH07XG4gICAgaWYgKFxuICAgICAgc291cmNlTGF5ZXIgaW5zdGFuY2VvZiBGbG93TGluZXNMYXllciB8fFxuICAgICAgc291cmNlTGF5ZXIgaW5zdGFuY2VvZiBBbmltYXRlZEZsb3dMaW5lc0xheWVyXG4gICAgKSB7XG4gICAgICBjb25zdCBmbG93ID1cbiAgICAgICAgaW5kZXggPT09IC0xID8gdW5kZWZpbmVkIDogYXdhaXQgZGF0YVByb3ZpZGVyLmdldEZsb3dCeUluZGV4KGluZGV4KTtcbiAgICAgIGlmIChmbG93KSB7XG4gICAgICAgIGNvbnN0IG9yaWdpbiA9IGF3YWl0IGRhdGFQcm92aWRlci5nZXRMb2NhdGlvbkJ5SWQoXG4gICAgICAgICAgYWNjZXNzb3JzLmdldEZsb3dPcmlnaW5JZChmbG93KSxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgZGVzdCA9IGF3YWl0IGRhdGFQcm92aWRlci5nZXRMb2NhdGlvbkJ5SWQoXG4gICAgICAgICAgYWNjZXNzb3JzLmdldEZsb3dEZXN0SWQoZmxvdyksXG4gICAgICAgICk7XG4gICAgICAgIGlmIChvcmlnaW4gJiYgZGVzdCkge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5jb21tb25JbmZvLFxuICAgICAgICAgICAgb2JqZWN0OiB7XG4gICAgICAgICAgICAgIHR5cGU6IFBpY2tpbmdUeXBlLkZMT1csXG4gICAgICAgICAgICAgIGZsb3csXG4gICAgICAgICAgICAgIG9yaWdpbjogb3JpZ2luLFxuICAgICAgICAgICAgICBkZXN0OiBkZXN0LFxuICAgICAgICAgICAgICBjb3VudDogYWNjZXNzb3JzLmdldEZsb3dNYWduaXR1ZGUoZmxvdyksXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHNvdXJjZUxheWVyIGluc3RhbmNlb2YgRmxvd0NpcmNsZXNMYXllcikge1xuICAgICAgY29uc3QgbG9jYXRpb24gPVxuICAgICAgICBpbmRleCA9PT0gLTEgPyB1bmRlZmluZWQgOiBhd2FpdCBkYXRhUHJvdmlkZXIuZ2V0TG9jYXRpb25CeUluZGV4KGluZGV4KTtcblxuICAgICAgaWYgKGxvY2F0aW9uKSB7XG4gICAgICAgIGNvbnN0IGlkID0gYWNjZXNzb3JzLmdldExvY2F0aW9uSWQobG9jYXRpb24pO1xuICAgICAgICBjb25zdCBuYW1lID0gYWNjZXNzb3JzLmdldExvY2F0aW9uTmFtZShsb2NhdGlvbik7XG4gICAgICAgIGNvbnN0IHRvdGFscyA9IGF3YWl0IGRhdGFQcm92aWRlci5nZXRUb3RhbHNGb3JMb2NhdGlvbihpZCk7XG4gICAgICAgIGNvbnN0IHtjaXJjbGVBdHRyaWJ1dGVzfSA9IHRoaXMuc3RhdGU/LmxheWVyc0RhdGEgfHwge307XG4gICAgICAgIGlmICh0b3RhbHMgJiYgY2lyY2xlQXR0cmlidXRlcykge1xuICAgICAgICAgIGNvbnN0IGNpcmNsZVJhZGl1cyA9IGdldE91dGVyQ2lyY2xlUmFkaXVzQnlJbmRleChcbiAgICAgICAgICAgIGNpcmNsZUF0dHJpYnV0ZXMsXG4gICAgICAgICAgICBpbmZvLmluZGV4LFxuICAgICAgICAgICk7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLmNvbW1vbkluZm8sXG4gICAgICAgICAgICBvYmplY3Q6IHtcbiAgICAgICAgICAgICAgdHlwZTogUGlja2luZ1R5cGUuTE9DQVRJT04sXG4gICAgICAgICAgICAgIGxvY2F0aW9uLFxuICAgICAgICAgICAgICBpZCxcbiAgICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgICAgdG90YWxzLFxuICAgICAgICAgICAgICBjaXJjbGVSYWRpdXM6IGNpcmNsZVJhZGl1cyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cblxuICBwcml2YXRlIF9nZXRIaWdobGlnaHRlZE9iamVjdChcbiAgICBpbmZvOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuICApOiBIaWdobGlnaHRlZE9iamVjdCB8IHVuZGVmaW5lZCB7XG4gICAgY29uc3Qge2luZGV4LCBzb3VyY2VMYXllcn0gPSBpbmZvO1xuICAgIGlmIChpbmRleCA8IDApIHJldHVybiB1bmRlZmluZWQ7XG4gICAgaWYgKFxuICAgICAgc291cmNlTGF5ZXIgaW5zdGFuY2VvZiBGbG93TGluZXNMYXllciB8fFxuICAgICAgc291cmNlTGF5ZXIgaW5zdGFuY2VvZiBBbmltYXRlZEZsb3dMaW5lc0xheWVyXG4gICAgKSB7XG4gICAgICBjb25zdCB7bGluZUF0dHJpYnV0ZXN9ID0gdGhpcy5zdGF0ZT8ubGF5ZXJzRGF0YSB8fCB7fTtcbiAgICAgIGlmIChsaW5lQXR0cmlidXRlcykge1xuICAgICAgICBsZXQgYXR0cnMgPSBnZXRGbG93TGluZUF0dHJpYnV0ZXNCeUluZGV4KGxpbmVBdHRyaWJ1dGVzLCBpbmRleCk7XG4gICAgICAgIGlmICh0aGlzLnByb3BzLmZhZGVPcGFjaXR5RW5hYmxlZCkge1xuICAgICAgICAgIGF0dHJzID0ge1xuICAgICAgICAgICAgLi4uYXR0cnMsXG4gICAgICAgICAgICBhdHRyaWJ1dGVzOiB7XG4gICAgICAgICAgICAgIC4uLmF0dHJzLmF0dHJpYnV0ZXMsXG4gICAgICAgICAgICAgIGdldENvbG9yOiB7XG4gICAgICAgICAgICAgICAgLi4uYXR0cnMuYXR0cmlidXRlcy5nZXRDb2xvcixcbiAgICAgICAgICAgICAgICB2YWx1ZTogbmV3IFVpbnQ4QXJyYXkoW1xuICAgICAgICAgICAgICAgICAgLi4uYXR0cnMuYXR0cmlidXRlcy5nZXRDb2xvci52YWx1ZS5zbGljZSgwLCAzKSxcbiAgICAgICAgICAgICAgICAgIDI1NSwgLy8gdGhlIGhpZ2hsaWdodCBjb2xvciBzaG91bGQgYmUgYWx3YXlzIG9wYXF1ZVxuICAgICAgICAgICAgICAgIF0pLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgdHlwZTogSGlnaGxpZ2h0VHlwZS5GTE9XLFxuICAgICAgICAgIGxpbmVBdHRyaWJ1dGVzOiBhdHRycyxcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHNvdXJjZUxheWVyIGluc3RhbmNlb2YgRmxvd0NpcmNsZXNMYXllcikge1xuICAgICAgY29uc3Qge2NpcmNsZUF0dHJpYnV0ZXN9ID0gdGhpcy5zdGF0ZT8ubGF5ZXJzRGF0YSB8fCB7fTtcbiAgICAgIGlmIChjaXJjbGVBdHRyaWJ1dGVzKSB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgdHlwZTogSGlnaGxpZ2h0VHlwZS5MT0NBVElPTixcbiAgICAgICAgICBjb29yZHM6IGdldExvY2F0aW9uQ29vcmRzQnlJbmRleChjaXJjbGVBdHRyaWJ1dGVzLCBpbmRleCksXG4gICAgICAgICAgcmFkaXVzOiBnZXRPdXRlckNpcmNsZVJhZGl1c0J5SW5kZXgoY2lyY2xlQXR0cmlidXRlcywgaW5kZXgpLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcmVuZGVyTGF5ZXJzKCk6IEFycmF5PGFueT4ge1xuICAgIGNvbnN0IGxheWVycyA9IFtdO1xuICAgIGlmICh0aGlzLnN0YXRlPy5sYXllcnNEYXRhKSB7XG4gICAgICBjb25zdCB7bGF5ZXJzRGF0YSwgaGlnaGxpZ2h0ZWRPYmplY3R9ID0gdGhpcy5zdGF0ZTtcbiAgICAgIGNvbnN0IHtjaXJjbGVBdHRyaWJ1dGVzLCBsaW5lQXR0cmlidXRlc30gPSBsYXllcnNEYXRhIHx8IHt9O1xuICAgICAgaWYgKGNpcmNsZUF0dHJpYnV0ZXMgJiYgbGluZUF0dHJpYnV0ZXMpIHtcbiAgICAgICAgY29uc3QgZmxvd21hcENvbG9ycyA9IGdldEZsb3dtYXBDb2xvcnModGhpcy5fZ2V0U2V0dGluZ3NTdGF0ZSgpKTtcbiAgICAgICAgY29uc3Qgb3V0bGluZUNvbG9yID0gY29sb3JBc1JnYmEoXG4gICAgICAgICAgZmxvd21hcENvbG9ycy5vdXRsaW5lQ29sb3IgfHwgKHRoaXMucHJvcHMuZGFya01vZGUgPyAnIzAwMCcgOiAnI2ZmZicpLFxuICAgICAgICApO1xuICAgICAgICBjb25zdCBjb21tb25MaW5lTGF5ZXJQcm9wcyA9IHtcbiAgICAgICAgICBkYXRhOiBsaW5lQXR0cmlidXRlcyxcbiAgICAgICAgICBwYXJhbWV0ZXJzOiB7XG4gICAgICAgICAgICAuLi50aGlzLnByb3BzLnBhcmFtZXRlcnMsXG4gICAgICAgICAgICAvLyBwcmV2ZW50IHotZmlnaHRpbmcgYXQgbm9uLXplcm8gYmVhcmluZy9waXRjaFxuICAgICAgICAgICAgZGVwdGhUZXN0OiBmYWxzZSxcbiAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgICAgICBpZiAodGhpcy5wcm9wcy5hbmltYXRpb25FbmFibGVkKSB7XG4gICAgICAgICAgbGF5ZXJzLnB1c2goXG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICBuZXcgQW5pbWF0ZWRGbG93TGluZXNMYXllcih7XG4gICAgICAgICAgICAgIC4uLnRoaXMuZ2V0U3ViTGF5ZXJQcm9wcyh7XG4gICAgICAgICAgICAgICAgLi4uY29tbW9uTGluZUxheWVyUHJvcHMsXG4gICAgICAgICAgICAgICAgaWQ6ICdhbmltYXRlZC1mbG93LWxpbmVzJyxcbiAgICAgICAgICAgICAgICBkcmF3T3V0bGluZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgdGhpY2tuZXNzVW5pdDogMjAsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBsYXllcnMucHVzaChcbiAgICAgICAgICAgIG5ldyBGbG93TGluZXNMYXllcih7XG4gICAgICAgICAgICAgIC4uLnRoaXMuZ2V0U3ViTGF5ZXJQcm9wcyh7XG4gICAgICAgICAgICAgICAgLi4uY29tbW9uTGluZUxheWVyUHJvcHMsXG4gICAgICAgICAgICAgICAgaWQ6ICdmbG93LWxpbmVzJyxcbiAgICAgICAgICAgICAgICBkcmF3T3V0bGluZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICBvdXRsaW5lQ29sb3I6IG91dGxpbmVDb2xvcixcbiAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICAgIGxheWVycy5wdXNoKFxuICAgICAgICAgIG5ldyBGbG93Q2lyY2xlc0xheWVyKFxuICAgICAgICAgICAgdGhpcy5nZXRTdWJMYXllclByb3BzKHtcbiAgICAgICAgICAgICAgaWQ6ICdjaXJjbGVzJyxcbiAgICAgICAgICAgICAgZGF0YTogY2lyY2xlQXR0cmlidXRlcyxcbiAgICAgICAgICAgICAgZW1wdHlDb2xvcjogdGhpcy5wcm9wcy5kYXJrTW9kZVxuICAgICAgICAgICAgICAgID8gWzAsIDAsIDAsIDI1NV1cbiAgICAgICAgICAgICAgICA6IFsyNTUsIDI1NSwgMjU1LCAyNTVdLFxuICAgICAgICAgICAgICBvdXRsaW5lRW1wdHlNaXg6IDAuNCxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICksXG4gICAgICAgICk7XG4gICAgICAgIGlmIChoaWdobGlnaHRlZE9iamVjdCkge1xuICAgICAgICAgIHN3aXRjaCAoaGlnaGxpZ2h0ZWRPYmplY3QudHlwZSkge1xuICAgICAgICAgICAgY2FzZSBIaWdobGlnaHRUeXBlLkxPQ0FUSU9OOlxuICAgICAgICAgICAgICBsYXllcnMucHVzaChcbiAgICAgICAgICAgICAgICBuZXcgU2NhdHRlcnBsb3RMYXllcih7XG4gICAgICAgICAgICAgICAgICAuLi50aGlzLmdldFN1YkxheWVyUHJvcHMoe1xuICAgICAgICAgICAgICAgICAgICBpZDogJ2xvY2F0aW9uLWhpZ2hsaWdodCcsXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IFtoaWdobGlnaHRlZE9iamVjdF0sXG4gICAgICAgICAgICAgICAgICAgIHBpY2thYmxlOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgYW50aWFsaWFzaW5nOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICBzdHJva2VkOiB0cnVlLFxuICAgICAgICAgICAgICAgICAgICBmaWxsZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICBsaW5lV2lkdGhVbml0czogJ3BpeGVscycsXG4gICAgICAgICAgICAgICAgICAgIGdldExpbmVXaWR0aDogMixcbiAgICAgICAgICAgICAgICAgICAgcmFkaXVzVW5pdHM6ICdwaXhlbHMnLFxuICAgICAgICAgICAgICAgICAgICBnZXRSYWRpdXM6IChkOiBIaWdobGlnaHRlZExvY2F0aW9uT2JqZWN0KSA9PiBkLnJhZGl1cyxcbiAgICAgICAgICAgICAgICAgICAgZ2V0TGluZUNvbG9yOiBjb2xvckFzUmdiYSh0aGlzLnByb3BzLmhpZ2hsaWdodENvbG9yKSxcbiAgICAgICAgICAgICAgICAgICAgZ2V0UG9zaXRpb246IChkOiBIaWdobGlnaHRlZExvY2F0aW9uT2JqZWN0KSA9PiBkLmNvb3JkcyxcbiAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIGNhc2UgSGlnaGxpZ2h0VHlwZS5GTE9XOlxuICAgICAgICAgICAgICBsYXllcnMucHVzaChcbiAgICAgICAgICAgICAgICBuZXcgRmxvd0xpbmVzTGF5ZXIoe1xuICAgICAgICAgICAgICAgICAgLi4udGhpcy5nZXRTdWJMYXllclByb3BzKHtcbiAgICAgICAgICAgICAgICAgICAgaWQ6ICdmbG93LWhpZ2hsaWdodCcsXG4gICAgICAgICAgICAgICAgICAgIGRhdGE6IGhpZ2hsaWdodGVkT2JqZWN0LmxpbmVBdHRyaWJ1dGVzLFxuICAgICAgICAgICAgICAgICAgICBkcmF3T3V0bGluZTogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgcGlja2FibGU6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lQ29sb3I6IGNvbG9yQXNSZ2JhKHRoaXMucHJvcHMuaGlnaGxpZ2h0Q29sb3IpLFxuICAgICAgICAgICAgICAgICAgICBvdXRsaW5lVGhpY2tuZXNzOiAxLFxuICAgICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBsYXllcnM7XG4gIH1cbn1cblxuZnVuY3Rpb24gcGlja1ZpZXdwb3J0UHJvcHModmlld3BvcnQ6IFJlY29yZDxzdHJpbmcsIGFueT4pOiBWaWV3cG9ydFByb3BzIHtcbiAgY29uc3Qge3dpZHRoLCBoZWlnaHQsIGxvbmdpdHVkZSwgbGF0aXR1ZGUsIHpvb20sIHBpdGNoLCBiZWFyaW5nfSA9IHZpZXdwb3J0O1xuICByZXR1cm4ge1xuICAgIHdpZHRoLFxuICAgIGhlaWdodCxcbiAgICBsb25naXR1ZGUsXG4gICAgbGF0aXR1ZGUsXG4gICAgem9vbSxcbiAgICBwaXRjaCxcbiAgICBiZWFyaW5nLFxuICB9O1xufVxuIl19
|
|
347
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRmxvd21hcExheWVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0Zsb3dtYXBMYXllci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQTs7Ozs7Ozs7Ozs7Ozs7O0dBZUc7QUFDSCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzdDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFDTCxXQUFXLEVBS1gsNEJBQTRCLEVBQzVCLGdCQUFnQixFQUNoQiwyQkFBMkIsRUFDM0Isd0JBQXdCLEVBQ3hCLGFBQWEsRUFDYixxQkFBcUIsRUFFckIsd0JBQXdCLEVBRXhCLHlCQUF5QixHQUUxQixNQUFNLGtCQUFrQixDQUFDO0FBQzFCLE9BQU8sc0JBQXNCLE1BQU0sMEJBQTBCLENBQUM7QUFDOUQsT0FBTyxnQkFBZ0IsTUFBTSxvQkFBb0IsQ0FBQztBQUNsRCxPQUFPLGNBQWMsTUFBTSxrQkFBa0IsQ0FBQztBQUM5QyxPQUFPLEVBSUwsV0FBVyxHQUNaLE1BQU0sU0FBUyxDQUFDO0FBMkJqQixJQUFLLGFBR0o7QUFIRCxXQUFLLGFBQWE7SUFDaEIsc0NBQXFCLENBQUE7SUFDckIsOEJBQWEsQ0FBQTtBQUNmLENBQUMsRUFISSxhQUFhLEtBQWIsYUFBYSxRQUdqQjtBQXlCRCxNQUFNLENBQUMsT0FBTyxPQUFPLFlBQW1CLFNBQVEsY0FBYztJQWtCNUQsWUFBbUIsS0FBOEI7UUFDL0MsS0FBSyxpQ0FDQSxLQUFLLEtBQ1IsWUFBWSxFQUFFO2dCQUNaLDhFQUE4RTtnQkFDOUUsWUFBWSxFQUFFLEtBQUssQ0FBQyxZQUFZO2FBQ2pDLEVBQ0QsT0FBTyxFQUFFLENBQUMsSUFBc0IsRUFBRSxLQUFrQixFQUFFLEVBQUU7Z0JBQ3RELHNEQUFzRDtnQkFDdEQsNERBQTREO2dCQUM1RCxZQUFZO2dCQUNaLElBQUk7Z0JBQ0osSUFBSSxDQUFDLFFBQVEsQ0FBQyxFQUFD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Q0FDakIsUUFBUSxFQUFFLEtBQUs7Z0NBQ2YsWUFBWSxFQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGNBQWMsQ0FBQztnQ0FDcEQsZ0JBQWdCLEVBQUUsQ0FBQzs2QkFDcEIsQ0FBQyxFQUNGLENBQ0gsQ0FBQzs0QkFDRixNQUFNO3FCQUNUO2lCQUNGO2FBQ0Y7U0FDRjtRQUVELElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsRUFBRTtZQUNuQyx1RUFBdUU7U0FDeEU7UUFFRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDOztBQWxaTSx5QkFBWSxHQUFHO0lBQ3BCLFFBQVEsRUFBRSxJQUFJO0lBQ2QsVUFBVSxFQUFFLEVBQUU7SUFDZCxxQkFBcUIsRUFBRSxJQUFJO0lBQzNCLGdCQUFnQixFQUFFLEtBQUs7SUFDdkIsaUJBQWlCLEVBQUUsSUFBSTtJQUN2QixXQUFXLEVBQUUsSUFBSTtJQUNqQixrQkFBa0IsRUFBRSxLQUFLO0lBQ3pCLGNBQWMsRUFBRSxJQUFJO0lBQ3BCLGVBQWUsRUFBRSxTQUFTO0lBQzFCLHFCQUFxQixFQUFFLElBQUk7SUFDM0IsV0FBVyxFQUFFLE1BQU07SUFDbkIsY0FBYyxFQUFFLFFBQVE7SUFDeEIscUJBQXFCLEVBQUUsSUFBSTtDQUM1QixDQUFDO0FBdVlKLFNBQVMsaUJBQWlCLENBQUMsUUFBNkI7SUFDdEQsTUFBTSxFQUFDLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBQyxHQUFHLFFBQVEsQ0FBQztJQUM1RSxPQUFPO1FBQ0wsS0FBSztRQUNMLE1BQU07UUFDTixTQUFTO1FBQ1QsUUFBUTtRQUNSLElBQUk7UUFDSixLQUFLO1FBQ0wsT0FBTztLQUNSLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIENvcHlyaWdodCAyMDIyIEZsb3dtYXBCbHVlXG4gKlxuICogTGljZW5zZWQgdW5kZXIgdGhlIEFwYWNoZSBMaWNlbnNlLCBWZXJzaW9uIDIuMCAodGhlIFwiTGljZW5zZVwiKTtcbiAqIHlvdSBtYXkgbm90IHVzZSB0aGlzIGZpbGUgZXhjZXB0IGluIGNvbXBsaWFuY2Ugd2l0aCB0aGUgTGljZW5zZS5cbiAqIFlvdSBtYXkgb2J0YWluIGEgY29weSBvZiB0aGUgTGljZW5zZSBhdFxuICpcbiAqIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKlxuICovXG5pbXBvcnQge0NvbXBvc2l0ZUxheWVyfSBmcm9tICdAZGVjay5nbC9jb3JlJztcbmltcG9ydCB7U2NhdHRlcnBsb3RMYXllcn0gZnJvbSAnQGRlY2suZ2wvbGF5ZXJzJztcbmltcG9ydCB7XG4gIGNvbG9yQXNSZ2JhLFxuICBGbG93TGluZXNMYXllckF0dHJpYnV0ZXMsXG4gIEZsb3dtYXBEYXRhLFxuICBGbG93bWFwRGF0YUFjY2Vzc29ycyxcbiAgRmxvd21hcERhdGFQcm92aWRlcixcbiAgZ2V0Rmxvd0xpbmVBdHRyaWJ1dGVzQnlJbmRleCxcbiAgZ2V0Rmxvd21hcENvbG9ycyxcbiAgZ2V0T3V0ZXJDaXJjbGVSYWRpdXNCeUluZGV4LFxuICBnZXRMb2NhdGlvbkNvb3Jkc0J5SW5kZXgsXG4gIGlzRmxvd21hcERhdGEsXG4gIGlzRmxvd21hcERhdGFQcm92aWRlcixcbiAgTGF5ZXJzRGF0YSxcbiAgTG9jYWxGbG93bWFwRGF0YVByb3ZpZGVyLFxuICBWaWV3cG9ydFByb3BzLFxuICBGbG93bWFwQWdncmVnYXRlQWNjZXNzb3JzLFxuICBGaWx0ZXJTdGF0ZSxcbn0gZnJvbSAnQGZsb3dtYXAuZ2wvZGF0YSc7XG5pbXBvcnQgQW5pbWF0ZWRGbG93TGluZXNMYXllciBmcm9tICcuL0FuaW1hdGVkRmxvd0xpbmVzTGF5ZXInO1xuaW1wb3J0IEZsb3dDaXJjbGVzTGF5ZXIgZnJvbSAnLi9GbG93Q2lyY2xlc0xheWVyJztcbmltcG9ydCBGbG93TGluZXNMYXllciBmcm9tICcuL0Zsb3dMaW5lc0xheWVyJztcbmltcG9ydCB7XG4gIEZsb3dtYXBMYXllclBpY2tpbmdJbmZvLFxuICBMYXllclByb3BzLFxuICBQaWNraW5nSW5mbyxcbiAgUGlja2luZ1R5cGUsXG59IGZyb20gJy4vdHlwZXMnO1xuXG5leHBvcnQgdHlwZSBGbG93bWFwTGF5ZXJQcm9wczxMLCBGPiA9IHtcbiAgZGF0YT86IEZsb3dtYXBEYXRhPEwsIEY+O1xuICBkYXRhUHJvdmlkZXI/OiBGbG93bWFwRGF0YVByb3ZpZGVyPEwsIEY+O1xuICBmaWx0ZXI/OiBGaWx0ZXJTdGF0ZTtcbiAgbG9jYXRpb25Ub3RhbHNFbmFibGVkPzogYm9vbGVhbjtcbiAgYWRhcHRpdmVTY2FsZXNFbmFibGVkPzogYm9vbGVhbjtcbiAgYW5pbWF0aW9uRW5hYmxlZD86IGJvb2xlYW47XG4gIGNsdXN0ZXJpbmdFbmFibGVkPzogYm9vbGVhbjtcbiAgY2x1c3RlcmluZ0xldmVsPzogbnVtYmVyO1xuICBmYWRlRW5hYmxlZD86IGJvb2xlYW47XG4gIGZhZGVPcGFjaXR5RW5hYmxlZD86IGJvb2xlYW47XG4gIGNsdXN0ZXJpbmdBdXRvPzogYm9vbGVhbjtcbiAgZGFya01vZGU/OiBib29sZWFuO1xuICBmYWRlQW1vdW50PzogbnVtYmVyO1xuICBjb2xvclNjaGVtZT86IHN0cmluZyB8IHN0cmluZ1tdO1xuICBoaWdobGlnaHRDb2xvcj86IHN0cmluZyB8IG51bWJlcltdO1xuICBtYXhUb3BGbG93c0Rpc3BsYXlOdW0/OiBudW1iZXI7XG4gIG9uSG92ZXI/OiAoXG4gICAgaW5mbzogRmxvd21hcExheWVyUGlja2luZ0luZm88TCwgRj4gfCB1bmRlZmluZWQsXG4gICAgZXZlbnQ6IFNvdXJjZUV2ZW50LFxuICApID0+IHZvaWQ7XG4gIG9uQ2xpY2s/OiAoaW5mbzogRmxvd21hcExheWVyUGlja2luZ0luZm88TCwgRj4sIGV2ZW50OiBTb3VyY2VFdmVudCkgPT4gdm9pZDtcbn0gJiBQYXJ0aWFsPEZsb3dtYXBEYXRhQWNjZXNzb3JzPEwsIEY+PiAmXG4gIExheWVyUHJvcHM7XG5cbmVudW0gSGlnaGxpZ2h0VHlwZSB7XG4gIExPQ0FUSU9OID0gJ2xvY2F0aW9uJyxcbiAgRkxPVyA9ICdmbG93Jyxcbn1cblxudHlwZSBIaWdobGlnaHRlZExvY2F0aW9uT2JqZWN0ID0ge1xuICB0eXBlOiBIaWdobGlnaHRUeXBlLkxPQ0FUSU9OO1xuICBjb29yZHM6IFtudW1iZXIsIG51bWJlcl07XG4gIHJhZGl1czogbnVtYmVyO1xufTtcblxudHlwZSBIaWdobGlnaHRlZEZsb3dPYmplY3QgPSB7XG4gIHR5cGU6IEhpZ2hsaWdodFR5cGUuRkxPVztcbiAgbGluZUF0dHJpYnV0ZXM6IEZsb3dMaW5lc0xheWVyQXR0cmlidXRlcztcbn07XG5cbnR5cGUgSGlnaGxpZ2h0ZWRPYmplY3QgPSBIaWdobGlnaHRlZExvY2F0aW9uT2JqZWN0IHwgSGlnaGxpZ2h0ZWRGbG93T2JqZWN0O1xuXG50eXBlIFN0YXRlPEwsIEY+ID0ge1xuICBhY2Nlc3NvcnM6IEZsb3dtYXBBZ2dyZWdhdGVBY2Nlc3NvcnM8TCwgRj47XG4gIGRhdGFQcm92aWRlcjogRmxvd21hcERhdGFQcm92aWRlcjxMLCBGPjtcbiAgbGF5ZXJzRGF0YTogTGF5ZXJzRGF0YSB8IHVuZGVmaW5lZDtcbiAgaGlnaGxpZ2h0ZWRPYmplY3Q6IEhpZ2hsaWdodGVkT2JqZWN0IHwgdW5kZWZpbmVkO1xuICBwaWNraW5nSW5mbzogRmxvd21hcExheWVyUGlja2luZ0luZm88TCwgRj4gfCB1bmRlZmluZWQ7XG59O1xuXG5leHBvcnQgdHlwZSBTb3VyY2VFdmVudCA9IHtzcmNFdmVudDogTW91c2VFdmVudH07XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIEZsb3dtYXBMYXllcjxMLCBGPiBleHRlbmRzIENvbXBvc2l0ZUxheWVyIHtcbiAgc3RhdGljIGRlZmF1bHRQcm9wcyA9IHtcbiAgICBkYXJrTW9kZTogdHJ1ZSxcbiAgICBmYWRlQW1vdW50OiA1MCxcbiAgICBsb2NhdGlvblRvdGFsc0VuYWJsZWQ6IHRydWUsXG4gICAgYW5pbWF0aW9uRW5hYmxlZDogZmFsc2UsXG4gICAgY2x1c3RlcmluZ0VuYWJsZWQ6IHRydWUsXG4gICAgZmFkZUVuYWJsZWQ6IHRydWUsXG4gICAgZmFkZU9wYWNpdHlFbmFibGVkOiBmYWxzZSxcbiAgICBjbHVzdGVyaW5nQXV0bzogdHJ1ZSxcbiAgICBjbHVzdGVyaW5nTGV2ZWw6IHVuZGVmaW5lZCxcbiAgICBhZGFwdGl2ZVNjYWxlc0VuYWJsZWQ6IHRydWUsXG4gICAgY29sb3JTY2hlbWU6ICdUZWFsJyxcbiAgICBoaWdobGlnaHRDb2xvcjogJ29yYW5nZScsXG4gICAgbWF4VG9wRmxvd3NEaXNwbGF5TnVtOiA1MDAwLFxuICB9O1xuICBzdGF0ZTogU3RhdGU8TCwgRj4gfCB1bmRlZmluZWQ7XG5cbiAgcHVibGljIGNvbnN0cnVjdG9yKHByb3BzOiBGbG93bWFwTGF5ZXJQcm9wczxMLCBGPikge1xuICAgIHN1cGVyKHtcbiAgICAgIC4uLnByb3BzLFxuICAgICAgZGF0YVByb3ZpZGVyOiB7XG4gICAgICAgIC8vIFRvIGF2b2lkIGRlY2suZ2wgcHJvcHMgZGlmZmluZyBvbiBjb21saW5rIHdvcmtlciBwcm94eSBjYXVzaW5nIGFuIGV4Y2VwdGlvblxuICAgICAgICBkYXRhUHJvdmlkZXI6IHByb3BzLmRhdGFQcm92aWRlcixcbiAgICAgIH0sXG4gICAgICBvbkhvdmVyOiAoaW5mbzogUGlja2luZ0luZm88YW55PiwgZXZlbnQ6IFNvdXJjZUV2ZW50KSA9PiB7XG4gICAgICAgIC8vIFRPRE86IGlmIChsYXN0SG92ZXJFdmVudFN0YXJ0VGltZVJlZiA+IHN0YXJ0VGltZSkge1xuICAgICAgICAvLyAgIC8vIFNraXBwaW5nLCBiZWNhdXNlIHRoaXMgaXMgbm90IHRoZSBsYXRlc3QgaG92ZXIgZXZlbnRcbiAgICAgICAgLy8gICByZXR1cm47XG4gICAgICAgIC8vIH1cbiAgICAgICAgdGhpcy5zZXRTdGF0ZSh7aGlnaGxpZ2h0ZWRPYmplY3Q6IHRoaXMuX2dldEhpZ2hsaWdodGVkT2JqZWN0KGluZm8pfSk7XG4gICAgICAgIGNvbnN0IHtvbkhvdmVyfSA9IHByb3BzO1xuICAgICAgICBpZiAob25Ib3Zlcikge1xuICAgICAgICAgIHRoaXMuX2dldEZsb3dtYXBMYXllclBpY2tpbmdJbmZvKGluZm8pLnRoZW4oKGluZm8pID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoe3BpY2tpbmdJbmZvOiBpbmZvfSk7XG4gICAgICAgICAgICBvbkhvdmVyKGluZm8sIGV2ZW50KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfSxcbiAgICAgIG9uQ2xpY2s6IChpbmZvOiBQaWNraW5nSW5mbzxhbnk+LCBldmVudDogU291cmNlRXZlbnQpID0+IHtcbiAgICAgICAgY29uc3Qge29uQ2xpY2t9ID0gcHJvcHM7XG4gICAgICAgIGlmIChvbkNsaWNrKSB7XG4gICAgICAgICAgdGhpcy5fZ2V0Rmxvd21hcExheWVyUGlja2luZ0luZm8oaW5mbykudGhlbigoaW5mbykgPT4ge1xuICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7cGlja2luZ0luZm86IGluZm99KTtcbiAgICAgICAgICAgIGlmIChpbmZvKSB7XG4gICAgICAgICAgICAgIG9uQ2xpY2soaW5mbywgZXZlbnQpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgIH0pO1xuICB9XG5cbiAgaW5pdGlhbGl6ZVN0YXRlKCkge1xuICAgIHRoaXMuc3RhdGUgPSB7XG4gICAgICBhY2Nlc3NvcnM6IG5ldyBGbG93bWFwQWdncmVnYXRlQWNjZXNzb3JzPEwsIEY+KHRoaXMucHJvcHMpLFxuICAgICAgZGF0YVByb3ZpZGVyOiB0aGlzLl9nZXRPck1ha2VEYXRhUHJvdmlkZXIoKSxcbiAgICAgIGxheWVyc0RhdGE6IHVuZGVmaW5lZCxcbiAgICAgIGhpZ2hsaWdodGVkT2JqZWN0OiB1bmRlZmluZWQsXG4gICAgICBwaWNraW5nSW5mbzogdW5kZWZpbmVkLFxuICAgIH07XG4gIH1cblxuICBnZXRQaWNraW5nSW5mbyh7aW5mb306IFJlY29yZDxzdHJpbmcsIGFueT4pIHtcbiAgICAvLyBUaGlzIGlzIGZvciBvbkhvdmVyIGV2ZW50IGhhbmRsZXJzIHNldCBvbiB0aGUgPERlY2tHTD4gY29tcG9uZW50XG4gICAgaWYgKCFpbmZvLm9iamVjdCkge1xuICAgICAgY29uc3Qgb2JqZWN0ID0gdGhpcy5zdGF0ZT8ucGlja2luZ0luZm8/Lm9iamVjdDtcbiAgICAgIGlmIChvYmplY3QpIHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAuLi5pbmZvLFxuICAgICAgICAgIG9iamVjdCxcbiAgICAgICAgICBwaWNrZWQ6IHRydWUsXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBpbmZvO1xuICB9XG5cbiAgLy8gcHJpdmF0ZSBfdXBkYXRlQWNjZXNzb3JzKCkge1xuICAvLyAgIHRoaXMuc3RhdGU/LmRhdGFQcm92aWRlcj8uc2V0QWNjZXNzb3JzKHRoaXMucHJvcHMpO1xuICAvLyAgIHRoaXMuc2V0U3RhdGUoe2FjY2Vzc29yczogbmV3IEZsb3dtYXBBZ2dyZWdhdGVBY2Nlc3NvcnModGhpcy5wcm9wcyl9KTtcbiAgLy8gfVxuXG4gIHByaXZhdGUgX2dldE9yTWFrZURhdGFQcm92aWRlcigpIHtcbiAgICBjb25zdCB7ZGF0YSwgZGF0YVByb3ZpZGVyfSA9IHRoaXMucHJvcHM7XG4gICAgaWYgKGlzRmxvd21hcERhdGFQcm92aWRlcjxMLCBGPihkYXRhUHJvdmlkZXI/LmRhdGFQcm92aWRlcikpIHtcbiAgICAgIHJldHVybiBkYXRhUHJvdmlkZXIuZGF0YVByb3ZpZGVyO1xuICAgIH0gZWxzZSBpZiAoaXNGbG93bWFwRGF0YTxMLCBGPihkYXRhKSkge1xuICAgICAgY29uc3QgZGF0YVByb3ZpZGVyID0gbmV3IExvY2FsRmxvd21hcERhdGFQcm92aWRlcjxMLCBGPih0aGlzLnByb3BzKTtcbiAgICAgIGRhdGFQcm92aWRlci5zZXRGbG93bWFwRGF0YShkYXRhKTtcbiAgICAgIHJldHVybiBkYXRhUHJvdmlkZXI7XG4gICAgfVxuICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICdGbG93bWFwTGF5ZXI6IGRhdGEgbXVzdCBiZSBhIEZsb3dtYXBEYXRhUHJvdmlkZXIgb3IgRmxvd21hcERhdGEnLFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIF91cGRhdGVEYXRhUHJvdmlkZXIoKSB7XG4gICAgdGhpcy5zZXRTdGF0ZSh7ZGF0YVByb3ZpZGVyOiB0aGlzLl9nZXRPck1ha2VEYXRhUHJvdmlkZXIoKX0pO1xuICB9XG5cbiAgc2hvdWxkVXBkYXRlU3RhdGUocGFyYW1zOiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogYm9vbGVhbiB7XG4gICAgY29uc3Qge2NoYW5nZUZsYWdzfSA9IHBhcmFtcztcbiAgICAvLyBpZiAodGhpcy5fdmlld3BvcnRDaGFuZ2VkKCkpIHtcbiAgICAvLyAgIHJldHVybiB0cnVlO1xuICAgIC8vIH1cbiAgICBpZiAoY2hhbmdlRmxhZ3Mudmlld3BvcnRDaGFuZ2VkKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgcmV0dXJuIHN1cGVyLnNob3VsZFVwZGF0ZVN0YXRlKHBhcmFtcyk7XG4gICAgLy8gVE9ETzogYmUgc21hcnRlciBvbiB3aGVuIHRvIHVwZGF0ZVxuICAgIC8vIChlLmcuIGlnbm9yZSB2aWV3cG9ydCBjaGFuZ2VzIHdoZW4gYWRhcHRpdmVTY2FsZXNFbmFibGVkIGFuZCBjbHVzdGVyaW5nIGFyZSBmYWxzZSlcbiAgfVxuXG4gIHVwZGF0ZVN0YXRlKHtvbGRQcm9wcywgcHJvcHMsIGNoYW5nZUZsYWdzfTogUmVjb3JkPHN0cmluZywgYW55Pik6IHZvaWQge1xuICAgIGlmIChjaGFuZ2VGbGFncy5wcm9wc0NoYW5nZWQpIHtcbiAgICAgIC8vIHRoaXMuX3VwZGF0ZUFjY2Vzc29ycygpO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlRmxhZ3MuZGF0YUNoYW5nZWQpIHtcbiAgICAgIHRoaXMuX3VwZGF0ZURhdGFQcm92aWRlcigpO1xuICAgIH1cbiAgICBpZiAoY2hhbmdlRmxhZ3Mudmlld3BvcnRDaGFuZ2VkIHx8IGNoYW5nZUZsYWdzLmRhdGFDaGFuZ2VkKSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHtcbiAgICAgICAgaGlnaGxpZ2h0ZWRPYmplY3Q6IHVuZGVmaW5lZCxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIGlmIChcbiAgICAgIGNoYW5nZUZsYWdzLnZpZXdwb3J0Q2hhbmdlZCB8fFxuICAgICAgY2hhbmdlRmxhZ3MucHJvcHNPckRhdGFDaGFuZ2VkIC8vIFRPRE8gY2FuIHdlIGlnbm9yZSBhY2Nlc3NvciBwcm9wcyBjaGFuZ2VzP1xuICAgICkge1xuICAgICAgY29uc3Qge2RhdGFQcm92aWRlcn0gPSB0aGlzLnN0YXRlIHx8IHt9O1xuICAgICAgaWYgKGRhdGFQcm92aWRlcikge1xuICAgICAgICBkYXRhUHJvdmlkZXIuc2V0Rmxvd21hcFN0YXRlKHRoaXMuX2dldEZsb3dtYXBTdGF0ZSgpKTtcbiAgICAgICAgZGF0YVByb3ZpZGVyLnVwZGF0ZUxheWVyc0RhdGEoKGxheWVyc0RhdGE6IExheWVyc0RhdGEgfCB1bmRlZmluZWQpID0+IHtcbiAgICAgICAgICB0aGlzLnNldFN0YXRlKHtsYXllcnNEYXRhfSk7XG4gICAgICAgIH0sIGNoYW5nZUZsYWdzKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIF9nZXRTZXR0aW5nc1N0YXRlKCkge1xuICAgIGNvbnN0IHtcbiAgICAgIGxvY2F0aW9uVG90YWxzRW5hYmxlZCxcbiAgICAgIGFkYXB0aXZlU2NhbGVzRW5hYmxlZCxcbiAgICAgIGFuaW1hdGlvbkVuYWJsZWQsXG4gICAgICBjbHVzdGVyaW5nRW5hYmxlZCxcbiAgICAgIGNsdXN0ZXJpbmdMZXZlbCxcbiAgICAgIGZhZGVFbmFibGVkLFxuICAgICAgZmFkZU9wYWNpdHlFbmFibGVkLFxuICAgICAgY2x1c3RlcmluZ0F1dG8sXG4gICAgICBkYXJrTW9kZSxcbiAgICAgIGZhZGVBbW91bnQsXG4gICAgICBjb2xvclNjaGVtZSxcbiAgICAgIGhpZ2hsaWdodENvbG9yLFxuICAgICAgbWF4VG9wRmxvd3NEaXNwbGF5TnVtLFxuICAgIH0gPSB0aGlzLnByb3BzO1xuICAgIHJldHVybiB7XG4gICAgICBsb2NhdGlvblRvdGFsc0VuYWJsZWQsXG4gICAgICBhZGFwdGl2ZVNjYWxlc0VuYWJsZWQsXG4gICAgICBhbmltYXRpb25FbmFibGVkLFxuICAgICAgY2x1c3RlcmluZ0VuYWJsZWQsXG4gICAgICBjbHVzdGVyaW5nTGV2ZWwsXG4gICAgICBmYWRlRW5hYmxlZCxcbiAgICAgIGZhZGVPcGFjaXR5RW5hYmxlZCxcbiAgICAgIGNsdXN0ZXJpbmdBdXRvLFxuICAgICAgZGFya01vZGUsXG4gICAgICBmYWRlQW1vdW50LFxuICAgICAgY29sb3JTY2hlbWUsXG4gICAgICBoaWdobGlnaHRDb2xvcixcbiAgICAgIG1heFRvcEZsb3dzRGlzcGxheU51bSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0Rmxvd21hcFN0YXRlKCkge1xuICAgIHJldHVybiB7XG4gICAgICB2aWV3cG9ydDogcGlja1ZpZXdwb3J0UHJvcHModGhpcy5jb250ZXh0LnZpZXdwb3J0KSxcbiAgICAgIGZpbHRlcjogdGhpcy5wcm9wcy5maWx0ZXIsXG4gICAgICBzZXR0aW5nczogdGhpcy5fZ2V0U2V0dGluZ3NTdGF0ZSgpLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9nZXRGbG93bWFwTGF5ZXJQaWNraW5nSW5mbyhcbiAgICBpbmZvOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuICApOiBQcm9taXNlPEZsb3dtYXBMYXllclBpY2tpbmdJbmZvPEwsIEY+IHwgdW5kZWZpbmVkPiB7XG4gICAgY29uc3Qge2luZGV4LCBzb3VyY2VMYXllcn0gPSBpbmZvO1xuICAgIGNvbnN0IHtkYXRhUHJvdmlkZXIsIGFjY2Vzc29yc30gPSB0aGlzLnN0YXRlIHx8IHt9O1xuICAgIGlmICghZGF0YVByb3ZpZGVyIHx8ICFhY2Nlc3NvcnMpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuICAgIGNvbnN0IGNvbW1vbkluZm8gPSB7XG4gICAgICAuLi5pbmZvLFxuICAgICAgcGlja2VkOiBpbmZvLnBpY2tlZCxcbiAgICAgIGxheWVyOiBpbmZvLmxheWVyLFxuICAgICAgaW5kZXg6IGluZm8uaW5kZXgsXG4gICAgICB4OiBpbmZvLngsXG4gICAgICB5OiBpbmZvLnksXG4gICAgICBjb29yZGluYXRlOiBpbmZvLmNvb3JkaW5hdGUsXG4gICAgICBldmVudDogaW5mby5ldmVudCxcbiAgICB9O1xuICAgIGlmIChcbiAgICAgIHNvdXJjZUxheWVyIGluc3RhbmNlb2YgRmxvd0xpbmVzTGF5ZXIgfHxcbiAgICAgIHNvdXJjZUxheWVyIGluc3RhbmNlb2YgQW5pbWF0ZWRGbG93TGluZXNMYXllclxuICAgICkge1xuICAgICAgY29uc3QgZmxvdyA9XG4gICAgICAgIGluZGV4ID09PSAtMSA/IHVuZGVmaW5lZCA6IGF3YWl0IGRhdGFQcm92aWRlci5nZXRGbG93QnlJbmRleChpbmRleCk7XG4gICAgICBpZiAoZmxvdykge1xuICAgICAgICBjb25zdCBvcmlnaW4gPSBhd2FpdCBkYXRhUHJvdmlkZXIuZ2V0TG9jYXRpb25CeUlkKFxuICAgICAgICAgIGFjY2Vzc29ycy5nZXRGbG93T3JpZ2luSWQoZmxvdyksXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGRlc3QgPSBhd2FpdCBkYXRhUHJvdmlkZXIuZ2V0TG9jYXRpb25CeUlkKFxuICAgICAgICAgIGFjY2Vzc29ycy5nZXRGbG93RGVzdElkKGZsb3cpLFxuICAgICAgICApO1xuICAgICAgICBpZiAob3JpZ2luICYmIGRlc3QpIHtcbiAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgLi4uY29tbW9uSW5mbyxcbiAgICAgICAgICAgIG9iamVjdDoge1xuICAgICAgICAgICAgICB0eXBlOiBQaWNraW5nVHlwZS5GTE9XLFxuICAgICAgICAgICAgICBmbG93LFxuICAgICAgICAgICAgICBvcmlnaW46IG9yaWdpbixcbiAgICAgICAgICAgICAgZGVzdDogZGVzdCxcbiAgICAgICAgICAgICAgY291bnQ6IGFjY2Vzc29ycy5nZXRGbG93TWFnbml0dWRlKGZsb3cpLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9O1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChzb3VyY2VMYXllciBpbnN0YW5jZW9mIEZsb3dDaXJjbGVzTGF5ZXIpIHtcbiAgICAgIGNvbnN0IGxvY2F0aW9uID1cbiAgICAgICAgaW5kZXggPT09IC0xID8gdW5kZWZpbmVkIDogYXdhaXQgZGF0YVByb3ZpZGVyLmdldExvY2F0aW9uQnlJbmRleChpbmRleCk7XG5cbiAgICAgIGlmIChsb2NhdGlvbikge1xuICAgICAgICBjb25zdCBpZCA9IGFjY2Vzc29ycy5nZXRMb2NhdGlvbklkKGxvY2F0aW9uKTtcbiAgICAgICAgY29uc3QgbmFtZSA9IGFjY2Vzc29ycy5nZXRMb2NhdGlvbk5hbWUobG9jYXRpb24pO1xuICAgICAgICBjb25zdCB0b3RhbHMgPSBhd2FpdCBkYXRhUHJvdmlkZXIuZ2V0VG90YWxzRm9yTG9jYXRpb24oaWQpO1xuICAgICAgICBjb25zdCB7Y2lyY2xlQXR0cmlidXRlc30gPSB0aGlzLnN0YXRlPy5sYXllcnNEYXRhIHx8IHt9O1xuICAgICAgICBpZiAodG90YWxzICYmIGNpcmNsZUF0dHJpYnV0ZXMpIHtcbiAgICAgICAgICBjb25zdCBjaXJjbGVSYWRpdXMgPSBnZXRPdXRlckNpcmNsZVJhZGl1c0J5SW5kZXgoXG4gICAgICAgICAgICBjaXJjbGVBdHRyaWJ1dGVzLFxuICAgICAgICAgICAgaW5mby5pbmRleCxcbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAuLi5jb21tb25JbmZvLFxuICAgICAgICAgICAgb2JqZWN0OiB7XG4gICAgICAgICAgICAgIHR5cGU6IFBpY2tpbmdUeXBlLkxPQ0FUSU9OLFxuICAgICAgICAgICAgICBsb2NhdGlvbixcbiAgICAgICAgICAgICAgaWQsXG4gICAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICAgIHRvdGFscyxcbiAgICAgICAgICAgICAgY2lyY2xlUmFkaXVzOiBjaXJjbGVSYWRpdXMsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG5cbiAgcHJpdmF0ZSBfZ2V0SGlnaGxpZ2h0ZWRPYmplY3QoXG4gICAgaW5mbzogUmVjb3JkPHN0cmluZywgYW55PixcbiAgKTogSGlnaGxpZ2h0ZWRPYmplY3QgfCB1bmRlZmluZWQge1xuICAgIGNvbnN0IHtpbmRleCwgc291cmNlTGF5ZXJ9ID0gaW5mbztcbiAgICBpZiAoaW5kZXggPCAwKSByZXR1cm4gdW5kZWZpbmVkO1xuICAgIGlmIChcbiAgICAgIHNvdXJjZUxheWVyIGluc3RhbmNlb2YgRmxvd0xpbmVzTGF5ZXIgfHxcbiAgICAgIHNvdXJjZUxheWVyIGluc3RhbmNlb2YgQW5pbWF0ZWRGbG93TGluZXNMYXllclxuICAgICkge1xuICAgICAgY29uc3Qge2xpbmVBdHRyaWJ1dGVzfSA9IHRoaXMuc3RhdGU/LmxheWVyc0RhdGEgfHwge307XG4gICAgICBpZiAobGluZUF0dHJpYnV0ZXMpIHtcbiAgICAgICAgbGV0IGF0dHJzID0gZ2V0Rmxvd0xpbmVBdHRyaWJ1dGVzQnlJbmRleChsaW5lQXR0cmlidXRlcywgaW5kZXgpO1xuICAgICAgICBpZiAodGhpcy5wcm9wcy5mYWRlT3BhY2l0eUVuYWJsZWQpIHtcbiAgICAgICAgICBhdHRycyA9IHtcbiAgICAgICAgICAgIC4uLmF0dHJzLFxuICAgICAgICAgICAgYXR0cmlidXRlczoge1xuICAgICAgICAgICAgICAuLi5hdHRycy5hdHRyaWJ1dGVzLFxuICAgICAgICAgICAgICBnZXRDb2xvcjoge1xuICAgICAgICAgICAgICAgIC4uLmF0dHJzLmF0dHJpYnV0ZXMuZ2V0Q29sb3IsXG4gICAgICAgICAgICAgICAgdmFsdWU6IG5ldyBVaW50OEFycmF5KFtcbiAgICAgICAgICAgICAgICAgIC4uLmF0dHJzLmF0dHJpYnV0ZXMuZ2V0Q29sb3IudmFsdWUuc2xpY2UoMCwgMyksXG4gICAgICAgICAgICAgICAgICAyNTUsIC8vIHRoZSBoaWdobGlnaHQgY29sb3Igc2hvdWxkIGJlIGFsd2F5cyBvcGFxdWVcbiAgICAgICAgICAgICAgICBdKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHR5cGU6IEhpZ2hsaWdodFR5cGUuRkxPVyxcbiAgICAgICAgICBsaW5lQXR0cmlidXRlczogYXR0cnMsXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgfSBlbHNlIGlmIChzb3VyY2VMYXllciBpbnN0YW5jZW9mIEZsb3dDaXJjbGVzTGF5ZXIpIHtcbiAgICAgIGNvbnN0IHtjaXJjbGVBdHRyaWJ1dGVzfSA9IHRoaXMuc3RhdGU/LmxheWVyc0RhdGEgfHwge307XG4gICAgICBpZiAoY2lyY2xlQXR0cmlidXRlcykge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHR5cGU6IEhpZ2hsaWdodFR5cGUuTE9DQVRJT04sXG4gICAgICAgICAgY29vcmRzOiBnZXRMb2NhdGlvbkNvb3Jkc0J5SW5kZXgoY2lyY2xlQXR0cmlidXRlcywgaW5kZXgpLFxuICAgICAgICAgIHJhZGl1czogZ2V0T3V0ZXJDaXJjbGVSYWRpdXNCeUluZGV4KGNpcmNsZUF0dHJpYnV0ZXMsIGluZGV4KSxcbiAgICAgICAgfTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuXG4gIHJlbmRlckxheWVycygpOiBBcnJheTxhbnk+IHtcbiAgICBjb25zdCBsYXllcnMgPSBbXTtcbiAgICBpZiAodGhpcy5zdGF0ZT8ubGF5ZXJzRGF0YSkge1xuICAgICAgY29uc3Qge2xheWVyc0RhdGEsIGhpZ2hsaWdodGVkT2JqZWN0fSA9IHRoaXMuc3RhdGU7XG4gICAgICBjb25zdCB7Y2lyY2xlQXR0cmlidXRlcywgbGluZUF0dHJpYnV0ZXN9ID0gbGF5ZXJzRGF0YSB8fCB7fTtcbiAgICAgIGlmIChjaXJjbGVBdHRyaWJ1dGVzICYmIGxpbmVBdHRyaWJ1dGVzKSB7XG4gICAgICAgIGNvbnN0IGZsb3dtYXBDb2xvcnMgPSBnZXRGbG93bWFwQ29sb3JzKHRoaXMuX2dldFNldHRpbmdzU3RhdGUoKSk7XG4gICAgICAgIGNvbnN0IG91dGxpbmVDb2xvciA9IGNvbG9yQXNSZ2JhKFxuICAgICAgICAgIGZsb3dtYXBDb2xvcnMub3V0bGluZUNvbG9yIHx8ICh0aGlzLnByb3BzLmRhcmtNb2RlID8gJyMwMDAnIDogJyNmZmYnKSxcbiAgICAgICAgKTtcbiAgICAgICAgY29uc3QgY29tbW9uTGluZUxheWVyUHJvcHMgPSB7XG4gICAgICAgICAgZGF0YTogbGluZUF0dHJpYnV0ZXMsXG4gICAgICAgICAgcGFyYW1ldGVyczoge1xuICAgICAgICAgICAgLi4udGhpcy5wcm9wcy5wYXJhbWV0ZXJzLFxuICAgICAgICAgICAgLy8gcHJldmVudCB6LWZpZ2h0aW5nIGF0IG5vbi16ZXJvIGJlYXJpbmcvcGl0Y2hcbiAgICAgICAgICAgIGRlcHRoVGVzdDogZmFsc2UsXG4gICAgICAgICAgfSxcbiAgICAgICAgfTtcbiAgICAgICAgaWYgKHRoaXMucHJvcHMuYW5pbWF0aW9uRW5hYmxlZCkge1xuICAgICAgICAgIGxheWVycy5wdXNoKFxuICAgICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgICAgbmV3IEFuaW1hdGVkRmxvd0xpbmVzTGF5ZXIoe1xuICAgICAgICAgICAgICAuLi50aGlzLmdldFN1YkxheWVyUHJvcHMoe1xuICAgICAgICAgICAgICAgIC4uLmNvbW1vbkxpbmVMYXllclByb3BzLFxuICAgICAgICAgICAgICAgIGlkOiAnYW5pbWF0ZWQtZmxvdy1saW5lcycsXG4gICAgICAgICAgICAgICAgZHJhd091dGxpbmU6IGZhbHNlLFxuICAgICAgICAgICAgICAgIHRoaWNrbmVzc1VuaXQ6IDIwLFxuICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgbGF5ZXJzLnB1c2goXG4gICAgICAgICAgICBuZXcgRmxvd0xpbmVzTGF5ZXIoe1xuICAgICAgICAgICAgICAuLi50aGlzLmdldFN1YkxheWVyUHJvcHMoe1xuICAgICAgICAgICAgICAgIC4uLmNvbW1vbkxpbmVMYXllclByb3BzLFxuICAgICAgICAgICAgICAgIGlkOiAnZmxvdy1saW5lcycsXG4gICAgICAgICAgICAgICAgZHJhd091dGxpbmU6IHRydWUsXG4gICAgICAgICAgICAgICAgb3V0bGluZUNvbG9yOiBvdXRsaW5lQ29sb3IsXG4gICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICBsYXllcnMucHVzaChcbiAgICAgICAgICBuZXcgRmxvd0NpcmNsZXNMYXllcihcbiAgICAgICAgICAgIHRoaXMuZ2V0U3ViTGF5ZXJQcm9wcyh7XG4gICAgICAgICAgICAgIGlkOiAnY2lyY2xlcycsXG4gICAgICAgICAgICAgIGRhdGE6IGNpcmNsZUF0dHJpYnV0ZXMsXG4gICAgICAgICAgICAgIGVtcHR5Q29sb3I6IHRoaXMucHJvcHMuZGFya01vZGVcbiAgICAgICAgICAgICAgICA/IFswLCAwLCAwLCAyNTVdXG4gICAgICAgICAgICAgICAgOiBbMjU1LCAyNTUsIDI1NSwgMjU1XSxcbiAgICAgICAgICAgICAgb3V0bGluZUVtcHR5TWl4OiAwLjQsXG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICApLFxuICAgICAgICApO1xuICAgICAgICBpZiAoaGlnaGxpZ2h0ZWRPYmplY3QpIHtcbiAgICAgICAgICBzd2l0Y2ggKGhpZ2hsaWdodGVkT2JqZWN0LnR5cGUpIHtcbiAgICAgICAgICAgIGNhc2UgSGlnaGxpZ2h0VHlwZS5MT0NBVElPTjpcbiAgICAgICAgICAgICAgbGF5ZXJzLnB1c2goXG4gICAgICAgICAgICAgICAgbmV3IFNjYXR0ZXJwbG90TGF5ZXIoe1xuICAgICAgICAgICAgICAgICAgLi4udGhpcy5nZXRTdWJMYXllclByb3BzKHtcbiAgICAgICAgICAgICAgICAgICAgaWQ6ICdsb2NhdGlvbi1oaWdobGlnaHQnLFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiBbaGlnaGxpZ2h0ZWRPYmplY3RdLFxuICAgICAgICAgICAgICAgICAgICBwaWNrYWJsZTogZmFsc2UsXG4gICAgICAgICAgICAgICAgICAgIGFudGlhbGlhc2luZzogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgc3Ryb2tlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgICAgICAgZmlsbGVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgbGluZVdpZHRoVW5pdHM6ICdwaXhlbHMnLFxuICAgICAgICAgICAgICAgICAgICBnZXRMaW5lV2lkdGg6IDIsXG4gICAgICAgICAgICAgICAgICAgIHJhZGl1c1VuaXRzOiAncGl4ZWxzJyxcbiAgICAgICAgICAgICAgICAgICAgZ2V0UmFkaXVzOiAoZDogSGlnaGxpZ2h0ZWRMb2NhdGlvbk9iamVjdCkgPT4gZC5yYWRpdXMsXG4gICAgICAgICAgICAgICAgICAgIGdldExpbmVDb2xvcjogY29sb3JBc1JnYmEodGhpcy5wcm9wcy5oaWdobGlnaHRDb2xvciksXG4gICAgICAgICAgICAgICAgICAgIGdldFBvc2l0aW9uOiAoZDogSGlnaGxpZ2h0ZWRMb2NhdGlvbk9iamVjdCkgPT4gZC5jb29yZHMsXG4gICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICBjYXNlIEhpZ2hsaWdodFR5cGUuRkxPVzpcbiAgICAgICAgICAgICAgbGF5ZXJzLnB1c2goXG4gICAgICAgICAgICAgICAgbmV3IEZsb3dMaW5lc0xheWVyKHtcbiAgICAgICAgICAgICAgICAgIC4uLnRoaXMuZ2V0U3ViTGF5ZXJQcm9wcyh7XG4gICAgICAgICAgICAgICAgICAgIGlkOiAnZmxvdy1oaWdobGlnaHQnLFxuICAgICAgICAgICAgICAgICAgICBkYXRhOiBoaWdobGlnaHRlZE9iamVjdC5saW5lQXR0cmlidXRlcyxcbiAgICAgICAgICAgICAgICAgICAgZHJhd091dGxpbmU6IHRydWUsXG4gICAgICAgICAgICAgICAgICAgIHBpY2thYmxlOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZUNvbG9yOiBjb2xvckFzUmdiYSh0aGlzLnByb3BzLmhpZ2hsaWdodENvbG9yKSxcbiAgICAgICAgICAgICAgICAgICAgb3V0bGluZVRoaWNrbmVzczogMSxcbiAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG5cbiAgICBpZiAodGhpcy5wcm9wcy5yZW5kZXJMb2NhdGlvbkxhYmVscykge1xuICAgICAgLy8gY29uc3QgbGFiZWxzID0gdGhpcy5wcm9wcy5yZW5kZXJMb2NhdGlvbkxhYmVscyh0aGlzLnN0YXRlLmxvY2F0aW9ucylcbiAgICB9XG5cbiAgICByZXR1cm4gbGF5ZXJzO1xuICB9XG59XG5cbmZ1bmN0aW9uIHBpY2tWaWV3cG9ydFByb3BzKHZpZXdwb3J0OiBSZWNvcmQ8c3RyaW5nLCBhbnk+KTogVmlld3BvcnRQcm9wcyB7XG4gIGNvbnN0IHt3aWR0aCwgaGVpZ2h0LCBsb25naXR1ZGUsIGxhdGl0dWRlLCB6b29tLCBwaXRjaCwgYmVhcmluZ30gPSB2aWV3cG9ydDtcbiAgcmV0dXJuIHtcbiAgICB3aWR0aCxcbiAgICBoZWlnaHQsXG4gICAgbG9uZ2l0dWRlLFxuICAgIGxhdGl0dWRlLFxuICAgIHpvb20sXG4gICAgcGl0Y2gsXG4gICAgYmVhcmluZyxcbiAgfTtcbn1cbiJdfQ==
|
package/dist/types.d.ts
CHANGED
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAEb,WAAW,EACX,cAAc,EACf,MAAM,kBAAkB,CAAC;AAE1B,oBAAY,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEjD,oBAAY,WAAW;IACrB,QAAQ,aAAa;IACrB,IAAI,SAAS;CAEd;AAED,oBAAY,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAE9C,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC;IACtB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,yBAAyB,CAAC,CAAC;IAC1C,EAAE,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EAEb,WAAW,EACX,cAAc,EACf,MAAM,kBAAkB,CAAC;AAE1B,oBAAY,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEjD,oBAAY,WAAW;IACrB,QAAQ,aAAa;IACrB,IAAI,SAAS;CAEd;AAED,oBAAY,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAE9C,MAAM,WAAW,WAAW,CAAC,CAAC;IAC5B,KAAK,EAAE,WAAW,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,MAAM,EAAE,CAAC,GAAG,SAAS,CAAC;IACtB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,UAAU,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,KAAK,EAAE,UAAU,GAAG,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,yBAAyB,CAAC,CAAC;IAC1C,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,IAAI,EAAE,WAAW,CAAC,QAAQ,CAAC;IAC3B,QAAQ,EAAE,CAAC,GAAG,WAAW,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,oBAAY,mBAAmB,CAAC,CAAC,IAAI,WAAW,CAAC,yBAAyB,CAAC,CAAC,CAAC,CAAC,CAAC;AAE/E,MAAM,WAAW,qBAAqB,CAAC,CAAC,EAAE,CAAC;IACzC,IAAI,EAAE,WAAW,CAAC,IAAI,CAAC;IACvB,IAAI,EAAE,CAAC,GAAG,aAAa,CAAC;IACxB,MAAM,EAAE,CAAC,GAAG,WAAW,CAAC;IACxB,IAAI,EAAE,CAAC,GAAG,WAAW,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,oBAAY,eAAe,CAAC,CAAC,EAAE,CAAC,IAAI,WAAW,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAO7E,oBAAY,uBAAuB,CAAC,CAAC,EAAE,CAAC,IACpC,mBAAmB,CAAC,CAAC,CAAC,GAEtB,eAAe,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC"}
|
package/dist/types.js
CHANGED
|
@@ -17,4 +17,4 @@ export var PickingType;
|
|
|
17
17
|
// .type === 'FeatureCollection'
|
|
18
18
|
// );
|
|
19
19
|
// }
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBU0EsTUFBTSxDQUFOLElBQVksV0FJWDtBQUpELFdBQVksV0FBVztJQUNyQixvQ0FBcUIsQ0FBQTtJQUNyQiw0QkFBYSxDQUFBO0lBQ2IsbUNBQW1DO0FBQ3JDLENBQUMsRUFKVyxXQUFXLEtBQVgsV0FBVyxRQUl0QjtBQThDRCw2REFBNkQ7QUFDN0QsNERBQTREO0FBRTVELDBCQUEwQjtBQUMxQiw0REFBNEQ7QUFDNUQsc0JBQXNCO0FBRXRCLHVDQUF1QztBQUN2QywwQkFBMEI7QUFDMUIsMEVBQTBFO0FBQzFFLGFBQWE7QUFDYiwyRUFBMkU7QUFDM0Usc0NBQXNDO0FBQ3RDLE9BQU87QUFDUCxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWdncmVnYXRlRmxvdyxcbiAgQ2x1c3RlcixcbiAgQ2x1c3Rlck5vZGUsXG4gIExvY2F0aW9uVG90YWxzLFxufSBmcm9tICdAZmxvd21hcC5nbC9kYXRhJztcblxuZXhwb3J0IHR5cGUgTGF5ZXJQcm9wcyA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG5leHBvcnQgZW51bSBQaWNraW5nVHlwZSB7XG4gIExPQ0FUSU9OID0gJ2xvY2F0aW9uJyxcbiAgRkxPVyA9ICdmbG93JyxcbiAgLy8gTE9DQVRJT05fQVJFQSA9ICdsb2NhdGlvbi1hcmVhJyxcbn1cblxuZXhwb3J0IHR5cGUgRGVja0dMTGF5ZXIgPSBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tpbmdJbmZvPFQ+
|
|
20
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBU0EsTUFBTSxDQUFOLElBQVksV0FJWDtBQUpELFdBQVksV0FBVztJQUNyQixvQ0FBcUIsQ0FBQTtJQUNyQiw0QkFBYSxDQUFBO0lBQ2IsbUNBQW1DO0FBQ3JDLENBQUMsRUFKVyxXQUFXLEtBQVgsV0FBVyxRQUl0QjtBQThDRCw2REFBNkQ7QUFDN0QsNERBQTREO0FBRTVELDBCQUEwQjtBQUMxQiw0REFBNEQ7QUFDNUQsc0JBQXNCO0FBRXRCLHVDQUF1QztBQUN2QywwQkFBMEI7QUFDMUIsMEVBQTBFO0FBQzFFLGFBQWE7QUFDYiwyRUFBMkU7QUFDM0Usc0NBQXNDO0FBQ3RDLE9BQU87QUFDUCxJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWdncmVnYXRlRmxvdyxcbiAgQ2x1c3RlcixcbiAgQ2x1c3Rlck5vZGUsXG4gIExvY2F0aW9uVG90YWxzLFxufSBmcm9tICdAZmxvd21hcC5nbC9kYXRhJztcblxuZXhwb3J0IHR5cGUgTGF5ZXJQcm9wcyA9IFJlY29yZDxzdHJpbmcsIHVua25vd24+O1xuXG5leHBvcnQgZW51bSBQaWNraW5nVHlwZSB7XG4gIExPQ0FUSU9OID0gJ2xvY2F0aW9uJyxcbiAgRkxPVyA9ICdmbG93JyxcbiAgLy8gTE9DQVRJT05fQVJFQSA9ICdsb2NhdGlvbi1hcmVhJyxcbn1cblxuZXhwb3J0IHR5cGUgRGVja0dMTGF5ZXIgPSBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xuXG5leHBvcnQgaW50ZXJmYWNlIFBpY2tpbmdJbmZvPFQ+IHtcbiAgbGF5ZXI6IERlY2tHTExheWVyO1xuICBpbmRleDogbnVtYmVyO1xuICBwaWNrZWQ6IGJvb2xlYW47XG4gIG9iamVjdDogVCB8IHVuZGVmaW5lZDtcbiAgeDogbnVtYmVyO1xuICB5OiBudW1iZXI7XG4gIGNvb3JkaW5hdGU6IFtudW1iZXIsIG51bWJlcl07XG4gIGV2ZW50OiBNb3VzZUV2ZW50IHwgdW5kZWZpbmVkO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIExvY2F0aW9uUGlja2luZ0luZm9PYmplY3Q8TD4ge1xuICBpZDogc3RyaW5nIHwgbnVtYmVyO1xuICB0eXBlOiBQaWNraW5nVHlwZS5MT0NBVElPTjtcbiAgbG9jYXRpb246IEwgfCBDbHVzdGVyTm9kZTtcbiAgbmFtZTogc3RyaW5nO1xuICB0b3RhbHM6IExvY2F0aW9uVG90YWxzO1xuICBjaXJjbGVSYWRpdXM6IG51bWJlcjtcbn1cblxuZXhwb3J0IHR5cGUgTG9jYXRpb25QaWNraW5nSW5mbzxMPiA9IFBpY2tpbmdJbmZvPExvY2F0aW9uUGlja2luZ0luZm9PYmplY3Q8TD4+O1xuXG5leHBvcnQgaW50ZXJmYWNlIEZsb3dQaWNraW5nSW5mb09iamVjdDxMLCBGPiB7XG4gIHR5cGU6IFBpY2tpbmdUeXBlLkZMT1c7XG4gIGZsb3c6IEYgfCBBZ2dyZWdhdGVGbG93O1xuICBvcmlnaW46IEwgfCBDbHVzdGVyTm9kZTtcbiAgZGVzdDogTCB8IENsdXN0ZXJOb2RlO1xuICBjb3VudDogbnVtYmVyO1xufVxuXG5leHBvcnQgdHlwZSBGbG93UGlja2luZ0luZm88TCwgRj4gPSBQaWNraW5nSW5mbzxGbG93UGlja2luZ0luZm9PYmplY3Q8TCwgRj4+O1xuXG4vLyBleHBvcnQgaW50ZXJmYWNlIExvY2F0aW9uQXJlYVBpY2tpbmdJbmZvIGV4dGVuZHMgUGlja2luZ0luZm88UGlja2luZ0luZm9EYXRhPiB7XG4vLyAgIHR5cGU6IFBpY2tpbmdUeXBlLkxPQ0FUSU9OX0FSRUE7XG4vLyAgIG9iamVjdDogRmxvd0xvY2F0aW9uO1xuLy8gfVxuXG5leHBvcnQgdHlwZSBGbG93bWFwTGF5ZXJQaWNraW5nSW5mbzxMLCBGPiA9XG4gIHwgTG9jYXRpb25QaWNraW5nSW5mbzxMPlxuICAvLyB8IExvY2F0aW9uQXJlYVBpY2tpbmdJbmZvXG4gIHwgRmxvd1BpY2tpbmdJbmZvPEwsIEY+O1xuXG4vLyBpbXBvcnQge0ZlYXR1cmVDb2xsZWN0aW9uLCBHZW9tZXRyeU9iamVjdH0gZnJvbSAnZ2VvanNvbic7XG4vLyBleHBvcnQgdHlwZSBMb2NhdGlvblByb3BlcnRpZXMgPSBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPjtcblxuLy8gZXhwb3J0IHR5cGUgTG9jYXRpb25zID1cbi8vICAgfCBGZWF0dXJlQ29sbGVjdGlvbjxHZW9tZXRyeU9iamVjdCwgTG9jYXRpb25Qcm9wZXJ0aWVzPlxuLy8gICB8IEZsb3dMb2NhdGlvbltdO1xuXG4vLyBleHBvcnQgZnVuY3Rpb24gaXNGZWF0dXJlQ29sbGVjdGlvbihcbi8vICAgbG9jYXRpb25zOiBMb2NhdGlvbnMsXG4vLyApOiBsb2NhdGlvbnMgaXMgRmVhdHVyZUNvbGxlY3Rpb248R2VvbWV0cnlPYmplY3QsIExvY2F0aW9uUHJvcGVydGllcz4ge1xuLy8gICByZXR1cm4gKFxuLy8gICAgIChsb2NhdGlvbnMgYXMgRmVhdHVyZUNvbGxlY3Rpb248R2VvbWV0cnlPYmplY3QsIExvY2F0aW9uUHJvcGVydGllcz4pXG4vLyAgICAgICAudHlwZSA9PT0gJ0ZlYXR1cmVDb2xsZWN0aW9uJ1xuLy8gICApO1xuLy8gfVxuIl19
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@flowmap.gl/layers",
|
|
3
|
-
"version": "8.0.0-alpha.
|
|
3
|
+
"version": "8.0.0-alpha.21",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"module": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"@luma.gl/constants": "^8.5.10",
|
|
19
19
|
"@luma.gl/core": "^8.5.10"
|
|
20
20
|
},
|
|
21
|
-
"gitHead": "
|
|
21
|
+
"gitHead": "8ad02bb96982874e70c452a3607477bce184e91e",
|
|
22
22
|
"publishConfig": {
|
|
23
23
|
"access": "public"
|
|
24
24
|
}
|
|
@@ -95,11 +95,13 @@ export default class AnimatedFlowLinesLayer<F> extends Layer {
|
|
|
95
95
|
attributeManager.addInstanced({
|
|
96
96
|
instanceSourcePositions: {
|
|
97
97
|
size: 3,
|
|
98
|
+
type: GL.DOUBLE,
|
|
98
99
|
transition: true,
|
|
99
100
|
accessor: 'getSourcePosition',
|
|
100
101
|
},
|
|
101
102
|
instanceTargetPositions: {
|
|
102
103
|
size: 3,
|
|
104
|
+
type: GL.DOUBLE,
|
|
103
105
|
transition: true,
|
|
104
106
|
accessor: 'getTargetPosition',
|
|
105
107
|
},
|
|
@@ -139,10 +141,8 @@ export default class AnimatedFlowLinesLayer<F> extends Layer {
|
|
|
139
141
|
|
|
140
142
|
if (changeFlags.extensionsChanged) {
|
|
141
143
|
const {gl} = this.context;
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
}
|
|
145
|
-
this.setState({model: this._getModel(gl)});
|
|
144
|
+
this.state.model?.delete();
|
|
145
|
+
this.state.model = this._getModel(gl);
|
|
146
146
|
this.getAttributeManager().invalidateAll();
|
|
147
147
|
}
|
|
148
148
|
}
|
package/src/FlowmapLayer.ts
CHANGED
|
@@ -30,9 +30,9 @@ import {
|
|
|
30
30
|
isFlowmapDataProvider,
|
|
31
31
|
LayersData,
|
|
32
32
|
LocalFlowmapDataProvider,
|
|
33
|
-
LocationFilterMode,
|
|
34
33
|
ViewportProps,
|
|
35
34
|
FlowmapAggregateAccessors,
|
|
35
|
+
FilterState,
|
|
36
36
|
} from '@flowmap.gl/data';
|
|
37
37
|
import AnimatedFlowLinesLayer from './AnimatedFlowLinesLayer';
|
|
38
38
|
import FlowCirclesLayer from './FlowCirclesLayer';
|
|
@@ -47,6 +47,7 @@ import {
|
|
|
47
47
|
export type FlowmapLayerProps<L, F> = {
|
|
48
48
|
data?: FlowmapData<L, F>;
|
|
49
49
|
dataProvider?: FlowmapDataProvider<L, F>;
|
|
50
|
+
filter?: FilterState;
|
|
50
51
|
locationTotalsEnabled?: boolean;
|
|
51
52
|
adaptiveScalesEnabled?: boolean;
|
|
52
53
|
animationEnabled?: boolean;
|
|
@@ -174,10 +175,10 @@ export default class FlowmapLayer<L, F> extends CompositeLayer {
|
|
|
174
175
|
return info;
|
|
175
176
|
}
|
|
176
177
|
|
|
177
|
-
private _updateAccessors() {
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
}
|
|
178
|
+
// private _updateAccessors() {
|
|
179
|
+
// this.state?.dataProvider?.setAccessors(this.props);
|
|
180
|
+
// this.setState({accessors: new FlowmapAggregateAccessors(this.props)});
|
|
181
|
+
// }
|
|
181
182
|
|
|
182
183
|
private _getOrMakeDataProvider() {
|
|
183
184
|
const {data, dataProvider} = this.props;
|
|
@@ -211,11 +212,6 @@ export default class FlowmapLayer<L, F> extends CompositeLayer {
|
|
|
211
212
|
}
|
|
212
213
|
|
|
213
214
|
updateState({oldProps, props, changeFlags}: Record<string, any>): void {
|
|
214
|
-
const {dataProvider, highlightedObject} = this.state || {};
|
|
215
|
-
if (!dataProvider) {
|
|
216
|
-
return;
|
|
217
|
-
}
|
|
218
|
-
|
|
219
215
|
if (changeFlags.propsChanged) {
|
|
220
216
|
// this._updateAccessors();
|
|
221
217
|
}
|
|
@@ -232,11 +228,13 @@ export default class FlowmapLayer<L, F> extends CompositeLayer {
|
|
|
232
228
|
changeFlags.viewportChanged ||
|
|
233
229
|
changeFlags.propsOrDataChanged // TODO can we ignore accessor props changes?
|
|
234
230
|
) {
|
|
235
|
-
dataProvider
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
231
|
+
const {dataProvider} = this.state || {};
|
|
232
|
+
if (dataProvider) {
|
|
233
|
+
dataProvider.setFlowmapState(this._getFlowmapState());
|
|
234
|
+
dataProvider.updateLayersData((layersData: LayersData | undefined) => {
|
|
235
|
+
this.setState({layersData});
|
|
236
|
+
}, changeFlags);
|
|
237
|
+
}
|
|
240
238
|
}
|
|
241
239
|
}
|
|
242
240
|
|
|
@@ -276,12 +274,8 @@ export default class FlowmapLayer<L, F> extends CompositeLayer {
|
|
|
276
274
|
private _getFlowmapState() {
|
|
277
275
|
return {
|
|
278
276
|
viewport: pickViewportProps(this.context.viewport),
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
locationFilterMode: LocationFilterMode.ALL,
|
|
282
|
-
selectedTimeRange: undefined,
|
|
283
|
-
},
|
|
284
|
-
settingsState: this._getSettingsState(),
|
|
277
|
+
filter: this.props.filter,
|
|
278
|
+
settings: this._getSettingsState(),
|
|
285
279
|
};
|
|
286
280
|
}
|
|
287
281
|
|
|
@@ -501,6 +495,10 @@ export default class FlowmapLayer<L, F> extends CompositeLayer {
|
|
|
501
495
|
}
|
|
502
496
|
}
|
|
503
497
|
|
|
498
|
+
if (this.props.renderLocationLabels) {
|
|
499
|
+
// const labels = this.props.renderLocationLabels(this.state.locations)
|
|
500
|
+
}
|
|
501
|
+
|
|
504
502
|
return layers;
|
|
505
503
|
}
|
|
506
504
|
}
|