angular-three-soba 2.2.0 → 2.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/abstractions/lib/catmull-rom-line.d.ts +117 -117
- package/abstractions/lib/edges.d.ts +126 -126
- package/abstractions/lib/grid.d.ts +15 -15
- package/abstractions/lib/line.d.ts +9 -8
- package/abstractions/lib/prism-geometry.d.ts +2 -2
- package/abstractions/lib/rounded-box.d.ts +3 -3
- package/abstractions/lib/text-3d.d.ts +22 -22
- package/abstractions/lib/text.d.ts +0 -1
- package/cameras/lib/cube-camera.d.ts +2 -2
- package/cameras/lib/orthographic-camera.d.ts +7 -8
- package/cameras/lib/perspective-camera.d.ts +2 -3
- package/controls/lib/camera-controls.d.ts +1 -1
- package/controls/lib/orbit-controls.d.ts +1 -1
- package/esm2022/abstractions/lib/billboard.mjs +3 -3
- package/esm2022/abstractions/lib/catmull-rom-line.mjs +3 -3
- package/esm2022/abstractions/lib/cubic-bezier-line.mjs +3 -3
- package/esm2022/abstractions/lib/edges.mjs +30 -34
- package/esm2022/abstractions/lib/gradient-texture.mjs +3 -3
- package/esm2022/abstractions/lib/grid.mjs +3 -3
- package/esm2022/abstractions/lib/helper.mjs +18 -20
- package/esm2022/abstractions/lib/line.mjs +25 -28
- package/esm2022/abstractions/lib/prism-geometry.mjs +3 -3
- package/esm2022/abstractions/lib/quadratic-bezier-line.mjs +3 -3
- package/esm2022/abstractions/lib/rounded-box.mjs +11 -17
- package/esm2022/abstractions/lib/text-3d.mjs +14 -17
- package/esm2022/abstractions/lib/text.mjs +11 -16
- package/esm2022/cameras/lib/camera-content.mjs +3 -3
- package/esm2022/cameras/lib/cube-camera.mjs +18 -27
- package/esm2022/cameras/lib/orthographic-camera.mjs +20 -20
- package/esm2022/cameras/lib/perspective-camera.mjs +21 -21
- package/esm2022/controls/lib/camera-controls.mjs +3 -3
- package/esm2022/controls/lib/orbit-controls.mjs +3 -3
- package/esm2022/controls/lib/scroll-controls.mjs +124 -130
- package/esm2022/gizmos/lib/gizmo-helper/gizmo-helper.mjs +6 -6
- package/esm2022/gizmos/lib/gizmo-helper/gizmo-viewcube.mjs +12 -12
- package/esm2022/gizmos/lib/gizmo-helper/gizmo-viewport.mjs +9 -9
- package/esm2022/gizmos/lib/pivot-controls/axis-arrow.mjs +6 -4
- package/esm2022/gizmos/lib/pivot-controls/axis-rotator.mjs +3 -3
- package/esm2022/gizmos/lib/pivot-controls/pivot-controls.mjs +44 -47
- package/esm2022/gizmos/lib/pivot-controls/plane-slider.mjs +3 -3
- package/esm2022/gizmos/lib/pivot-controls/scaling-sphere.mjs +3 -3
- package/esm2022/gizmos/lib/transform-controls.mjs +3 -3
- package/esm2022/loaders/lib/loader.mjs +3 -3
- package/esm2022/materials/lib/custom-shader-material.mjs +8 -12
- package/esm2022/materials/lib/mesh-distort-material.mjs +3 -3
- package/esm2022/materials/lib/mesh-reflector-material.mjs +11 -15
- package/esm2022/materials/lib/mesh-refraction-material.mjs +26 -30
- package/esm2022/materials/lib/mesh-transmission-material.mjs +3 -3
- package/esm2022/materials/lib/mesh-wobble-material.mjs +3 -3
- package/esm2022/materials/lib/point-material.mjs +3 -3
- package/esm2022/misc/lib/bake-shadows.mjs +8 -10
- package/esm2022/misc/lib/computed-attribute.mjs +15 -19
- package/esm2022/misc/lib/decal.mjs +56 -53
- package/esm2022/misc/lib/fbo.mjs +10 -10
- package/esm2022/misc/lib/html/html-content.mjs +62 -67
- package/esm2022/misc/lib/html/html.mjs +3 -3
- package/esm2022/misc/lib/intersect.mjs +6 -9
- package/esm2022/misc/lib/sampler.mjs +48 -42
- package/esm2022/performances/lib/adaptive-dpr.mjs +29 -35
- package/esm2022/performances/lib/adaptive-events.mjs +12 -16
- package/esm2022/performances/lib/detailed.mjs +14 -18
- package/esm2022/performances/lib/instances/instances.mjs +16 -22
- package/esm2022/performances/lib/points/points.mjs +19 -25
- package/esm2022/performances/lib/segments/segments.mjs +11 -14
- package/esm2022/shaders/lib/mesh-refraction-material.mjs +1 -1
- package/esm2022/staging/index.mjs +3 -2
- package/esm2022/staging/lib/accumulative-shadows.mjs +19 -21
- package/esm2022/staging/lib/backdrop.mjs +19 -23
- package/esm2022/staging/lib/bb-anchor.mjs +3 -3
- package/esm2022/staging/lib/bounds.mjs +39 -43
- package/esm2022/staging/lib/camera-shake.mjs +14 -18
- package/esm2022/staging/lib/caustics.mjs +24 -28
- package/esm2022/staging/lib/center.mjs +28 -32
- package/esm2022/staging/lib/contact-shadows.mjs +3 -3
- package/esm2022/staging/lib/environment/environment.mjs +338 -0
- package/esm2022/staging/lib/environment/inject-environment.mjs +184 -0
- package/esm2022/staging/lib/float.mjs +3 -3
- package/esm2022/staging/lib/lightformer.mjs +18 -22
- package/esm2022/staging/lib/mask.mjs +8 -12
- package/esm2022/staging/lib/matcap-texture.mjs +9 -11
- package/esm2022/staging/lib/normal-texture.mjs +9 -11
- package/esm2022/staging/lib/randomized-lights.mjs +9 -13
- package/esm2022/staging/lib/render-texture.mjs +19 -20
- package/esm2022/staging/lib/sky.mjs +3 -3
- package/esm2022/staging/lib/spot-light.mjs +32 -40
- package/esm2022/staging/lib/stage.mjs +13 -17
- package/esm2022/stats/lib/stats.mjs +21 -27
- package/fesm2022/angular-three-soba-abstractions.mjs +119 -138
- package/fesm2022/angular-three-soba-abstractions.mjs.map +1 -1
- package/fesm2022/angular-three-soba-cameras.mjs +57 -64
- package/fesm2022/angular-three-soba-cameras.mjs.map +1 -1
- package/fesm2022/angular-three-soba-controls.mjs +129 -135
- package/fesm2022/angular-three-soba-controls.mjs.map +1 -1
- package/fesm2022/angular-three-soba-gizmos.mjs +87 -88
- package/fesm2022/angular-three-soba-gizmos.mjs.map +1 -1
- package/fesm2022/angular-three-soba-loaders.mjs +3 -3
- package/fesm2022/angular-three-soba-materials.mjs +52 -62
- package/fesm2022/angular-three-soba-materials.mjs.map +1 -1
- package/fesm2022/angular-three-soba-misc.mjs +194 -195
- package/fesm2022/angular-three-soba-misc.mjs.map +1 -1
- package/fesm2022/angular-three-soba-performances.mjs +90 -114
- package/fesm2022/angular-three-soba-performances.mjs.map +1 -1
- package/fesm2022/angular-three-soba-shaders.mjs.map +1 -1
- package/fesm2022/angular-three-soba-staging.mjs +427 -430
- package/fesm2022/angular-three-soba-staging.mjs.map +1 -1
- package/fesm2022/angular-three-soba-stats.mjs +20 -26
- package/fesm2022/angular-three-soba-stats.mjs.map +1 -1
- package/gizmos/lib/gizmo-helper/gizmo-viewport.d.ts +1 -1
- package/gizmos/lib/pivot-controls/pivot-controls.d.ts +1 -1
- package/gizmos/lib/transform-controls.d.ts +2 -2
- package/materials/lib/custom-shader-material.d.ts +3 -3
- package/materials/lib/mesh-refraction-material.d.ts +2 -2
- package/materials/lib/mesh-transmission-material.d.ts +1 -1
- package/misc/lib/computed-attribute.d.ts +6 -6
- package/misc/lib/decal.d.ts +4 -4
- package/misc/lib/html/html-content.d.ts +6 -6
- package/misc/lib/sampler.d.ts +2 -4
- package/package.json +8 -8
- package/performances/lib/instances/instances.d.ts +11 -11
- package/performances/lib/points/points.d.ts +19 -19
- package/performances/lib/segments/segments.d.ts +4 -4
- package/shaders/lib/mesh-refraction-material.d.ts +2 -5
- package/staging/index.d.ts +2 -1
- package/staging/lib/accumulative-shadows.d.ts +1 -1
- package/staging/lib/camera-shake.d.ts +0 -1
- package/staging/lib/caustics.d.ts +1 -1
- package/staging/lib/contact-shadows.d.ts +1 -1
- package/staging/lib/{environment.d.ts → environment/environment.d.ts} +20 -49
- package/staging/lib/environment/inject-environment.d.ts +33 -0
- package/staging/lib/lightformer.d.ts +1 -1
- package/staging/lib/matcap-texture.d.ts +0 -1
- package/staging/lib/normal-texture.d.ts +0 -1
- package/staging/lib/render-texture.d.ts +1 -1
- package/staging/lib/sky.d.ts +1 -1
- package/staging/lib/spot-light.d.ts +2 -2
- package/staging/lib/stage.d.ts +2 -1
- package/esm2022/staging/lib/environment.mjs +0 -481
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DestroyRef, Directive, effect, inject, input, untracked } from '@angular/core';
|
|
2
2
|
import { injectStore } from 'angular-three';
|
|
3
|
-
import { injectAutoEffect } from 'ngxtension/auto-effect';
|
|
4
3
|
import * as i0 from "@angular/core";
|
|
5
4
|
export class NgtsAdaptiveDpr {
|
|
6
5
|
constructor() {
|
|
@@ -11,42 +10,37 @@ export class NgtsAdaptiveDpr {
|
|
|
11
10
|
const current = store.select('performance', 'current');
|
|
12
11
|
const initialDpr = store.select('viewport', 'initialDpr');
|
|
13
12
|
const setDpr = store.select('setDpr');
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
];
|
|
39
|
-
_setDpr(_current * _initialDpr);
|
|
40
|
-
if (pixelated && domElement)
|
|
41
|
-
domElement.style.imageRendering = _current === 1 ? 'auto' : 'pixelated';
|
|
42
|
-
});
|
|
13
|
+
effect(() => {
|
|
14
|
+
const [_current, pixelated, domElement, _setDpr, _initialDpr] = [
|
|
15
|
+
current(),
|
|
16
|
+
untracked(this.pixelated),
|
|
17
|
+
untracked(gl).domElement,
|
|
18
|
+
untracked(setDpr),
|
|
19
|
+
untracked(initialDpr),
|
|
20
|
+
];
|
|
21
|
+
_setDpr(_current * _initialDpr);
|
|
22
|
+
if (pixelated && domElement)
|
|
23
|
+
domElement.style.imageRendering = _current === 1 ? 'auto' : 'pixelated';
|
|
24
|
+
});
|
|
25
|
+
inject(DestroyRef).onDestroy(() => {
|
|
26
|
+
const [domElement, _active, _setDpr, _initialDpr, pixelated] = [
|
|
27
|
+
untracked(gl).domElement,
|
|
28
|
+
untracked(active),
|
|
29
|
+
untracked(setDpr),
|
|
30
|
+
untracked(initialDpr),
|
|
31
|
+
untracked(this.pixelated),
|
|
32
|
+
];
|
|
33
|
+
if (_active)
|
|
34
|
+
_setDpr(_initialDpr);
|
|
35
|
+
if (pixelated && domElement)
|
|
36
|
+
domElement.style.imageRendering = 'auto';
|
|
43
37
|
});
|
|
44
38
|
}
|
|
45
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
46
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.
|
|
39
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsAdaptiveDpr, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
40
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.4", type: NgtsAdaptiveDpr, isStandalone: true, selector: "ngts-adaptive-dpr", inputs: { pixelated: { classPropertyName: "pixelated", publicName: "pixelated", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0 }); }
|
|
47
41
|
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
42
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsAdaptiveDpr, decorators: [{
|
|
49
43
|
type: Directive,
|
|
50
44
|
args: [{ selector: 'ngts-adaptive-dpr', standalone: true }]
|
|
51
45
|
}], ctorParameters: () => [] });
|
|
52
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
46
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRpdmUtZHByLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zb2JhL3BlcmZvcm1hbmNlcy9zcmMvbGliL2FkYXB0aXZlLWRwci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHNUMsTUFBTSxPQUFPLGVBQWU7SUFHM0I7UUFGQSxjQUFTLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBR3hCLE1BQU0sS0FBSyxHQUFHLFdBQVcsRUFBRSxDQUFDO1FBQzVCLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDOUIsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFDbEQsTUFBTSxPQUFPLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxhQUFhLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDdkQsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxVQUFVLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFDMUQsTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV0QyxNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1gsTUFBTSxDQUFDLFFBQVEsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxXQUFXLENBQUMsR0FBRztnQkFDL0QsT0FBTyxFQUFFO2dCQUNULFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2dCQUN6QixTQUFTLENBQUMsRUFBRSxDQUFDLENBQUMsVUFBVTtnQkFDeEIsU0FBUyxDQUFDLE1BQU0sQ0FBQztnQkFDakIsU0FBUyxDQUFDLFVBQVUsQ0FBQzthQUNyQixDQUFDO1lBRUYsT0FBTyxDQUFDLFFBQVEsR0FBRyxXQUFXLENBQUMsQ0FBQztZQUNoQyxJQUFJLFNBQVMsSUFBSSxVQUFVO2dCQUFFLFVBQVUsQ0FBQyxLQUFLLENBQUMsY0FBYyxHQUFHLFFBQVEsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO1FBQ3RHLENBQUMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDakMsTUFBTSxDQUFDLFVBQVUsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLENBQUMsR0FBRztnQkFDOUQsU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDLFVBQVU7Z0JBQ3hCLFNBQVMsQ0FBQyxNQUFNLENBQUM7Z0JBQ2pCLFNBQVMsQ0FBQyxNQUFNLENBQUM7Z0JBQ2pCLFNBQVMsQ0FBQyxVQUFVLENBQUM7Z0JBQ3JCLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2FBQ3pCLENBQUM7WUFFRixJQUFJLE9BQU87Z0JBQUUsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ2xDLElBQUksU0FBUyxJQUFJLFVBQVU7Z0JBQUUsVUFBVSxDQUFDLEtBQUssQ0FBQyxjQUFjLEdBQUcsTUFBTSxDQUFDO1FBQ3ZFLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs4R0FwQ1csZUFBZTtrR0FBZixlQUFlOzsyRkFBZixlQUFlO2tCQUQzQixTQUFTO21CQUFDLEVBQUUsUUFBUSxFQUFFLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEZXN0cm95UmVmLCBEaXJlY3RpdmUsIGVmZmVjdCwgaW5qZWN0LCBpbnB1dCwgdW50cmFja2VkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBpbmplY3RTdG9yZSB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICduZ3RzLWFkYXB0aXZlLWRwcicsIHN0YW5kYWxvbmU6IHRydWUgfSlcbmV4cG9ydCBjbGFzcyBOZ3RzQWRhcHRpdmVEcHIge1xuXHRwaXhlbGF0ZWQgPSBpbnB1dChmYWxzZSk7XG5cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0Y29uc3Qgc3RvcmUgPSBpbmplY3RTdG9yZSgpO1xuXHRcdGNvbnN0IGdsID0gc3RvcmUuc2VsZWN0KCdnbCcpO1xuXHRcdGNvbnN0IGFjdGl2ZSA9IHN0b3JlLnNlbGVjdCgnaW50ZXJuYWwnLCAnYWN0aXZlJyk7XG5cdFx0Y29uc3QgY3VycmVudCA9IHN0b3JlLnNlbGVjdCgncGVyZm9ybWFuY2UnLCAnY3VycmVudCcpO1xuXHRcdGNvbnN0IGluaXRpYWxEcHIgPSBzdG9yZS5zZWxlY3QoJ3ZpZXdwb3J0JywgJ2luaXRpYWxEcHInKTtcblx0XHRjb25zdCBzZXREcHIgPSBzdG9yZS5zZWxlY3QoJ3NldERwcicpO1xuXG5cdFx0ZWZmZWN0KCgpID0+IHtcblx0XHRcdGNvbnN0IFtfY3VycmVudCwgcGl4ZWxhdGVkLCBkb21FbGVtZW50LCBfc2V0RHByLCBfaW5pdGlhbERwcl0gPSBbXG5cdFx0XHRcdGN1cnJlbnQoKSxcblx0XHRcdFx0dW50cmFja2VkKHRoaXMucGl4ZWxhdGVkKSxcblx0XHRcdFx0dW50cmFja2VkKGdsKS5kb21FbGVtZW50LFxuXHRcdFx0XHR1bnRyYWNrZWQoc2V0RHByKSxcblx0XHRcdFx0dW50cmFja2VkKGluaXRpYWxEcHIpLFxuXHRcdFx0XTtcblxuXHRcdFx0X3NldERwcihfY3VycmVudCAqIF9pbml0aWFsRHByKTtcblx0XHRcdGlmIChwaXhlbGF0ZWQgJiYgZG9tRWxlbWVudCkgZG9tRWxlbWVudC5zdHlsZS5pbWFnZVJlbmRlcmluZyA9IF9jdXJyZW50ID09PSAxID8gJ2F1dG8nIDogJ3BpeGVsYXRlZCc7XG5cdFx0fSk7XG5cblx0XHRpbmplY3QoRGVzdHJveVJlZikub25EZXN0cm95KCgpID0+IHtcblx0XHRcdGNvbnN0IFtkb21FbGVtZW50LCBfYWN0aXZlLCBfc2V0RHByLCBfaW5pdGlhbERwciwgcGl4ZWxhdGVkXSA9IFtcblx0XHRcdFx0dW50cmFja2VkKGdsKS5kb21FbGVtZW50LFxuXHRcdFx0XHR1bnRyYWNrZWQoYWN0aXZlKSxcblx0XHRcdFx0dW50cmFja2VkKHNldERwciksXG5cdFx0XHRcdHVudHJhY2tlZChpbml0aWFsRHByKSxcblx0XHRcdFx0dW50cmFja2VkKHRoaXMucGl4ZWxhdGVkKSxcblx0XHRcdF07XG5cblx0XHRcdGlmIChfYWN0aXZlKSBfc2V0RHByKF9pbml0aWFsRHByKTtcblx0XHRcdGlmIChwaXhlbGF0ZWQgJiYgZG9tRWxlbWVudCkgZG9tRWxlbWVudC5zdHlsZS5pbWFnZVJlbmRlcmluZyA9ICdhdXRvJztcblx0XHR9KTtcblx0fVxufVxuIl19
|
|
@@ -1,28 +1,24 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { DestroyRef, Directive, effect, inject } from '@angular/core';
|
|
2
2
|
import { injectStore } from 'angular-three';
|
|
3
|
-
import { injectAutoEffect } from 'ngxtension/auto-effect';
|
|
4
3
|
import * as i0 from "@angular/core";
|
|
5
4
|
export class NgtsAdaptiveEvents {
|
|
6
5
|
constructor() {
|
|
7
|
-
const autoEffect = injectAutoEffect();
|
|
8
6
|
const store = injectStore();
|
|
9
7
|
const current = store.select('performance', 'current');
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
return () => store.snapshot.setEvents({ enabled: _current === 1 });
|
|
18
|
-
});
|
|
8
|
+
const currentEnabled = store.snapshot.events.enabled;
|
|
9
|
+
effect((onCleanup) => {
|
|
10
|
+
const _current = current();
|
|
11
|
+
onCleanup(() => store.snapshot.setEvents({ enabled: _current === 1 }));
|
|
12
|
+
});
|
|
13
|
+
inject(DestroyRef).onDestroy(() => {
|
|
14
|
+
store.snapshot.setEvents({ enabled: currentEnabled });
|
|
19
15
|
});
|
|
20
16
|
}
|
|
21
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
22
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.
|
|
17
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsAdaptiveEvents, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
18
|
+
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.4", type: NgtsAdaptiveEvents, isStandalone: true, selector: "ngts-adaptive-events", ngImport: i0 }); }
|
|
23
19
|
}
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
20
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsAdaptiveEvents, decorators: [{
|
|
25
21
|
type: Directive,
|
|
26
22
|
args: [{ standalone: true, selector: 'ngts-adaptive-events' }]
|
|
27
23
|
}], ctorParameters: () => [] });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRpdmUtZXZlbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zb2JhL3BlcmZvcm1hbmNlcy9zcmMvbGliL2FkYXB0aXZlLWV2ZW50cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRzVDLE1BQU0sT0FBTyxrQkFBa0I7SUFDOUI7UUFDQyxNQUFNLEtBQUssR0FBRyxXQUFXLEVBQUUsQ0FBQztRQUM1QixNQUFNLE9BQU8sR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLGFBQWEsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUN2RCxNQUFNLGNBQWMsR0FBRyxLQUFLLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFFckQsTUFBTSxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDcEIsTUFBTSxRQUFRLEdBQUcsT0FBTyxFQUFFLENBQUM7WUFDM0IsU0FBUyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUUsT0FBTyxFQUFFLFFBQVEsS0FBSyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDeEUsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNqQyxLQUFLLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs4R0FkVyxrQkFBa0I7a0dBQWxCLGtCQUFrQjs7MkZBQWxCLGtCQUFrQjtrQkFEOUIsU0FBUzttQkFBQyxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGVzdHJveVJlZiwgRGlyZWN0aXZlLCBlZmZlY3QsIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgaW5qZWN0U3RvcmUgfSBmcm9tICdhbmd1bGFyLXRocmVlJztcblxuQERpcmVjdGl2ZSh7IHN0YW5kYWxvbmU6IHRydWUsIHNlbGVjdG9yOiAnbmd0cy1hZGFwdGl2ZS1ldmVudHMnIH0pXG5leHBvcnQgY2xhc3MgTmd0c0FkYXB0aXZlRXZlbnRzIHtcblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0Y29uc3Qgc3RvcmUgPSBpbmplY3RTdG9yZSgpO1xuXHRcdGNvbnN0IGN1cnJlbnQgPSBzdG9yZS5zZWxlY3QoJ3BlcmZvcm1hbmNlJywgJ2N1cnJlbnQnKTtcblx0XHRjb25zdCBjdXJyZW50RW5hYmxlZCA9IHN0b3JlLnNuYXBzaG90LmV2ZW50cy5lbmFibGVkO1xuXG5cdFx0ZWZmZWN0KChvbkNsZWFudXApID0+IHtcblx0XHRcdGNvbnN0IF9jdXJyZW50ID0gY3VycmVudCgpO1xuXHRcdFx0b25DbGVhbnVwKCgpID0+IHN0b3JlLnNuYXBzaG90LnNldEV2ZW50cyh7IGVuYWJsZWQ6IF9jdXJyZW50ID09PSAxIH0pKTtcblx0XHR9KTtcblxuXHRcdGluamVjdChEZXN0cm95UmVmKS5vbkRlc3Ryb3koKCkgPT4ge1xuXHRcdFx0c3RvcmUuc25hcHNob3Quc2V0RXZlbnRzKHsgZW5hYmxlZDogY3VycmVudEVuYWJsZWQgfSk7XG5cdFx0fSk7XG5cdH1cbn1cbiJdfQ==
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ChangeDetectionStrategy, Component, CUSTOM_ELEMENTS_SCHEMA, effect, input, viewChild, } from '@angular/core';
|
|
2
2
|
import { extend, getLocalState, injectBeforeRender, omit, pick } from 'angular-three';
|
|
3
|
-
import { injectAutoEffect } from 'ngxtension/auto-effect';
|
|
4
3
|
import { mergeInputs } from 'ngxtension/inject-inputs';
|
|
5
4
|
import { LOD } from 'three';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
@@ -15,32 +14,29 @@ export class NgtsDetailed {
|
|
|
15
14
|
this.lodRef = viewChild.required('lod');
|
|
16
15
|
this.hysteresis = pick(this.options, 'hysteresis');
|
|
17
16
|
extend({ LOD });
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
lod.levels.
|
|
27
|
-
lod.children.forEach((object, index) => {
|
|
28
|
-
lod.levels.push({ object, distance: distances[index], hysteresis });
|
|
29
|
-
});
|
|
17
|
+
effect(() => {
|
|
18
|
+
const lod = this.lodRef().nativeElement;
|
|
19
|
+
const localState = getLocalState(lod);
|
|
20
|
+
if (!localState)
|
|
21
|
+
return;
|
|
22
|
+
const [, distances, hysteresis] = [localState.objects(), this.distances(), this.hysteresis()];
|
|
23
|
+
lod.levels.length = 0;
|
|
24
|
+
lod.children.forEach((object, index) => {
|
|
25
|
+
lod.levels.push({ object, distance: distances[index], hysteresis });
|
|
30
26
|
});
|
|
31
27
|
});
|
|
32
28
|
injectBeforeRender(({ camera }) => {
|
|
33
29
|
this.lodRef().nativeElement.update(camera);
|
|
34
30
|
});
|
|
35
31
|
}
|
|
36
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
37
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.
|
|
32
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsDetailed, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
33
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.4", type: NgtsDetailed, isStandalone: true, selector: "ngts-detailed", inputs: { distances: { classPropertyName: "distances", publicName: "distances", isSignal: true, isRequired: true, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "lodRef", first: true, predicate: ["lod"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
38
34
|
<ngt-lOD #lod [parameters]="parameters()">
|
|
39
35
|
<ng-content />
|
|
40
36
|
</ngt-lOD>
|
|
41
37
|
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
42
38
|
}
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
39
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsDetailed, decorators: [{
|
|
44
40
|
type: Component,
|
|
45
41
|
args: [{
|
|
46
42
|
selector: 'ngts-detailed',
|
|
@@ -54,4 +50,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
54
50
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
55
51
|
}]
|
|
56
52
|
}], ctorParameters: () => [] });
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGV0YWlsZWQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NvYmEvcGVyZm9ybWFuY2VzL3NyYy9saWIvZGV0YWlsZWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLHVCQUF1QixFQUN2QixTQUFTLEVBQ1Qsc0JBQXNCLEVBQ3RCLE1BQU0sRUFFTixLQUFLLEVBQ0wsU0FBUyxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsYUFBYSxFQUFFLGtCQUFrQixFQUFVLElBQUksRUFBRSxJQUFJLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUYsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxPQUFPLENBQUM7O0FBTTVCLE1BQU0sY0FBYyxHQUF3QjtJQUMzQyxVQUFVLEVBQUUsQ0FBQztDQUNiLENBQUM7QUFhRixNQUFNLE9BQU8sWUFBWTtJQVF4QjtRQVBBLGNBQVMsR0FBRyxLQUFLLENBQUMsUUFBUSxFQUFZLENBQUM7UUFDdkMsWUFBTyxHQUFHLEtBQUssQ0FBQyxjQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsV0FBVyxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM1RSxlQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDO1FBRWhELFdBQU0sR0FBRyxTQUFTLENBQUMsUUFBUSxDQUFrQixLQUFLLENBQUMsQ0FBQztRQUM1QyxlQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUM7UUFHckQsTUFBTSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUVoQixNQUFNLENBQUMsR0FBRyxFQUFFO1lBQ1gsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLGFBQWEsQ0FBQztZQUN4QyxNQUFNLFVBQVUsR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDdEMsSUFBSSxDQUFDLFVBQVU7Z0JBQUUsT0FBTztZQUN4QixNQUFNLENBQUMsRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDLEdBQUcsQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLEVBQUUsSUFBSSxDQUFDLFNBQVMsRUFBRSxFQUFFLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1lBQzlGLEdBQUcsQ0FBQyxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztZQUN0QixHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRTtnQkFDdEMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO1lBQ3JFLENBQUMsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSCxrQkFBa0IsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRTtZQUNqQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUMsQ0FBQztJQUNKLENBQUM7OEdBekJXLFlBQVk7a0dBQVosWUFBWSxxY0FSZDs7OztFQUlUOzsyRkFJVyxZQUFZO2tCQVh4QixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxlQUFlO29CQUN6QixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFOzs7O0VBSVQ7b0JBQ0QsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ2pDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUMvQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuXHRDb21wb25lbnQsXG5cdENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsXG5cdGVmZmVjdCxcblx0RWxlbWVudFJlZixcblx0aW5wdXQsXG5cdHZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBleHRlbmQsIGdldExvY2FsU3RhdGUsIGluamVjdEJlZm9yZVJlbmRlciwgTmd0TE9ELCBvbWl0LCBwaWNrIH0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBtZXJnZUlucHV0cyB9IGZyb20gJ25neHRlbnNpb24vaW5qZWN0LWlucHV0cyc7XG5pbXBvcnQgeyBMT0QgfSBmcm9tICd0aHJlZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmd0c0RldGFpbGVkT3B0aW9ucyBleHRlbmRzIFBhcnRpYWw8Tmd0TE9EPiB7XG5cdGh5c3RlcmVzaXM6IG51bWJlcjtcbn1cblxuY29uc3QgZGVmYXVsdE9wdGlvbnM6IE5ndHNEZXRhaWxlZE9wdGlvbnMgPSB7XG5cdGh5c3RlcmVzaXM6IDAsXG59O1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZ3RzLWRldGFpbGVkJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0dGVtcGxhdGU6IGBcblx0XHQ8bmd0LWxPRCAjbG9kIFtwYXJhbWV0ZXJzXT1cInBhcmFtZXRlcnMoKVwiPlxuXHRcdFx0PG5nLWNvbnRlbnQgLz5cblx0XHQ8L25ndC1sT0Q+XG5cdGAsXG5cdHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE5ndHNEZXRhaWxlZCB7XG5cdGRpc3RhbmNlcyA9IGlucHV0LnJlcXVpcmVkPG51bWJlcltdPigpO1xuXHRvcHRpb25zID0gaW5wdXQoZGVmYXVsdE9wdGlvbnMsIHsgdHJhbnNmb3JtOiBtZXJnZUlucHV0cyhkZWZhdWx0T3B0aW9ucykgfSk7XG5cdHBhcmFtZXRlcnMgPSBvbWl0KHRoaXMub3B0aW9ucywgWydoeXN0ZXJlc2lzJ10pO1xuXG5cdGxvZFJlZiA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPExPRD4+KCdsb2QnKTtcblx0cHJpdmF0ZSBoeXN0ZXJlc2lzID0gcGljayh0aGlzLm9wdGlvbnMsICdoeXN0ZXJlc2lzJyk7XG5cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0ZXh0ZW5kKHsgTE9EIH0pO1xuXG5cdFx0ZWZmZWN0KCgpID0+IHtcblx0XHRcdGNvbnN0IGxvZCA9IHRoaXMubG9kUmVmKCkubmF0aXZlRWxlbWVudDtcblx0XHRcdGNvbnN0IGxvY2FsU3RhdGUgPSBnZXRMb2NhbFN0YXRlKGxvZCk7XG5cdFx0XHRpZiAoIWxvY2FsU3RhdGUpIHJldHVybjtcblx0XHRcdGNvbnN0IFssIGRpc3RhbmNlcywgaHlzdGVyZXNpc10gPSBbbG9jYWxTdGF0ZS5vYmplY3RzKCksIHRoaXMuZGlzdGFuY2VzKCksIHRoaXMuaHlzdGVyZXNpcygpXTtcblx0XHRcdGxvZC5sZXZlbHMubGVuZ3RoID0gMDtcblx0XHRcdGxvZC5jaGlsZHJlbi5mb3JFYWNoKChvYmplY3QsIGluZGV4KSA9PiB7XG5cdFx0XHRcdGxvZC5sZXZlbHMucHVzaCh7IG9iamVjdCwgZGlzdGFuY2U6IGRpc3RhbmNlc1tpbmRleF0sIGh5c3RlcmVzaXMgfSk7XG5cdFx0XHR9KTtcblx0XHR9KTtcblxuXHRcdGluamVjdEJlZm9yZVJlbmRlcigoeyBjYW1lcmEgfSkgPT4ge1xuXHRcdFx0dGhpcy5sb2RSZWYoKS5uYXRpdmVFbGVtZW50LnVwZGF0ZShjYW1lcmEpO1xuXHRcdH0pO1xuXHR9XG59XG4iXX0=
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, CUSTOM_ELEMENTS_SCHEMA, effect, inject, input, viewChild, } from '@angular/core';
|
|
2
2
|
import { checkUpdate, extend, injectBeforeRender, NgtArgs, omit, pick, resolveRef, } from 'angular-three';
|
|
3
3
|
import { setUpdateRange } from 'angular-three-soba/misc';
|
|
4
|
-
import { injectAutoEffect } from 'ngxtension/auto-effect';
|
|
5
4
|
import { mergeInputs } from 'ngxtension/inject-inputs';
|
|
6
5
|
import { DynamicDrawUsage, InstancedBufferAttribute, InstancedMesh, Matrix4, Quaternion, Vector3 } from 'three';
|
|
7
6
|
import { PositionMesh } from './position-mesh';
|
|
@@ -18,21 +17,19 @@ export class NgtsInstance {
|
|
|
18
17
|
this.instances = inject(NgtsInstances);
|
|
19
18
|
this.positionMeshRef = viewChild.required('positionMesh');
|
|
20
19
|
extend({ PositionMesh });
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
return this.instances.subscribe(this.positionMeshRef().nativeElement);
|
|
25
|
-
});
|
|
20
|
+
effect((onCleanup) => {
|
|
21
|
+
const cleanup = this.instances.subscribe(this.positionMeshRef().nativeElement);
|
|
22
|
+
onCleanup(() => cleanup());
|
|
26
23
|
});
|
|
27
24
|
}
|
|
28
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
29
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.
|
|
25
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsInstance, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
26
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.4", type: NgtsInstance, isStandalone: true, selector: "ngts-instance", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "positionMeshRef", first: true, predicate: ["positionMesh"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
30
27
|
<ngt-position-mesh #positionMesh [instance]="instances.instancedMeshRef()" [parameters]="options()">
|
|
31
28
|
<ng-content />
|
|
32
29
|
</ngt-position-mesh>
|
|
33
30
|
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
34
31
|
}
|
|
35
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsInstance, decorators: [{
|
|
36
33
|
type: Component,
|
|
37
34
|
args: [{
|
|
38
35
|
selector: 'ngts-instance',
|
|
@@ -68,14 +65,11 @@ export class NgtsInstances {
|
|
|
68
65
|
});
|
|
69
66
|
this.instances = [];
|
|
70
67
|
extend({ InstancedMesh, InstancedBufferAttribute });
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
return;
|
|
77
|
-
checkUpdate(instancedMesh.instanceMatrix);
|
|
78
|
-
});
|
|
68
|
+
effect(() => {
|
|
69
|
+
const instancedMesh = this.instancedMeshRef()?.nativeElement;
|
|
70
|
+
if (!instancedMesh)
|
|
71
|
+
return;
|
|
72
|
+
checkUpdate(instancedMesh.instanceMatrix);
|
|
79
73
|
});
|
|
80
74
|
let iterations = 0;
|
|
81
75
|
let count = 0;
|
|
@@ -118,8 +112,8 @@ export class NgtsInstances {
|
|
|
118
112
|
this.instances = this.instances.filter((i) => i !== ref);
|
|
119
113
|
};
|
|
120
114
|
}
|
|
121
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
122
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.
|
|
115
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsInstances, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
116
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.4", type: NgtsInstances, isStandalone: true, selector: "ngts-instances", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "instancedMeshRef", first: true, predicate: ["instancedMesh"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
123
117
|
<ngt-instanced-mesh
|
|
124
118
|
#instancedMesh
|
|
125
119
|
[userData]="{ instances }"
|
|
@@ -145,7 +139,7 @@ export class NgtsInstances {
|
|
|
145
139
|
</ngt-instanced-mesh>
|
|
146
140
|
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
147
141
|
}
|
|
148
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
142
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsInstances, decorators: [{
|
|
149
143
|
type: Component,
|
|
150
144
|
args: [{
|
|
151
145
|
selector: 'ngts-instances',
|
|
@@ -180,4 +174,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
180
174
|
imports: [NgtArgs],
|
|
181
175
|
}]
|
|
182
176
|
}], ctorParameters: () => [] });
|
|
183
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFuY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zb2JhL3BlcmZvcm1hbmNlcy9zcmMvbGliL2luc3RhbmNlcy9pbnN0YW5jZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLGVBQWUsRUFDZix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixzQkFBc0IsRUFFdEIsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNOLFdBQVcsRUFDWCxNQUFNLEVBQ04sa0JBQWtCLEVBQ2xCLE9BQU8sRUFFUCxJQUFJLEVBQ0osSUFBSSxFQUNKLFVBQVUsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx3QkFBd0IsRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDaEgsT0FBTyxFQUFtQixZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFaEUsTUFBTSxZQUFZLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztBQUNuQyxNQUFNLGNBQWMsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0FBQ3JDLE1BQU0sVUFBVSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7QUFDakMsTUFBTSxXQUFXLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztBQUNsQyxNQUFNLFFBQVEsR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO0FBQ2xDLE1BQU0sS0FBSyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7QUFhNUIsTUFBTSxPQUFPLFlBQVk7SUFPeEI7UUFOQSxZQUFPLEdBQUcsS0FBSyxDQUFDLEVBQThCLENBQUMsQ0FBQztRQUVoRCxjQUFTLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRWxDLG9CQUFlLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBMkIsY0FBYyxDQUFDLENBQUM7UUFHOUUsTUFBTSxDQUFDLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUV6QixNQUFNLFVBQVUsR0FBRyxnQkFBZ0IsRUFBRSxDQUFDO1FBRXRDLGVBQWUsQ0FBQyxHQUFHLEVBQUU7WUFDcEIsVUFBVSxDQUFDLEdBQUcsRUFBRTtnQkFDZixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUN2RSxDQUFDLENBQUMsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs4R0FqQlcsWUFBWTtrR0FBWixZQUFZLG9WQVJkOzs7O0VBSVQ7OzJGQUlXLFlBQVk7a0JBWHhCLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7Ozs7RUFJVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07aUJBQy9DOztBQTJCRCxNQUFNLGNBQWMsR0FBeUI7SUFDNUMsS0FBSyxFQUFFLElBQUk7SUFDWCxNQUFNLEVBQUUsUUFBUTtDQUNoQixDQUFDO0FBa0NGLE1BQU0sT0FBTyxhQUFhO0lBd0J6QjtRQXZCbUIscUJBQWdCLEdBQUcsZ0JBQWdCLENBQUM7UUFFdkQsWUFBTyxHQUFHLEtBQUssQ0FBQyxjQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsV0FBVyxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUM1RSxlQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFFOUQscUJBQWdCLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBNEIsZUFBZSxDQUFDLENBQUM7UUFFbEYsVUFBSyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBRXBDLFlBQU8sR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQ3ZCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUMzQixNQUFNLFFBQVEsR0FBRyxJQUFJLFlBQVksQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFFOUMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO2dCQUNoQyxVQUFVLENBQUMsUUFBUSxFQUFFLENBQUMsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7WUFDakQsQ0FBQztZQUVELE1BQU0sTUFBTSxHQUFHLElBQUksWUFBWSxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDakYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLEVBQUUsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FBQztRQUVILGNBQVMsR0FBbUQsRUFBRSxDQUFDO1FBRzlELE1BQU0sQ0FBQyxFQUFFLGFBQWEsRUFBRSx3QkFBd0IsRUFBRSxDQUFDLENBQUM7UUFFcEQsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUV0QyxlQUFlLENBQUMsR0FBRyxFQUFFO1lBQ3BCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2YsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsYUFBYSxDQUFDO2dCQUM3RCxJQUFJLENBQUMsYUFBYTtvQkFBRSxPQUFPO2dCQUMzQixXQUFXLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxDQUFDO1lBQzNDLENBQUMsQ0FBQyxDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFFSCxJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUM7UUFDbkIsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBRWQsa0JBQWtCLENBQUMsR0FBRyxFQUFFO1lBQ3ZCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxFQUFFLGFBQWEsQ0FBQztZQUM3RCxJQUFJLENBQUMsYUFBYTtnQkFBRSxPQUFPO1lBQzNCLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNoRCxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUM1QyxJQUFJLE1BQU0sS0FBSyxRQUFRLElBQUksVUFBVSxHQUFHLE1BQU0sRUFBRSxDQUFDO2dCQUNoRCxhQUFhLENBQUMsWUFBWSxFQUFFLENBQUM7Z0JBQzdCLGFBQWEsQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO2dCQUNsQyxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztnQkFFdEQsS0FBSyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3BGLGFBQWEsQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO2dCQUM1QixjQUFjLENBQUMsYUFBYSxDQUFDLGNBQWMsRUFBRSxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLEtBQUssR0FBRyxFQUFFLEVBQUUsQ0FBQyxDQUFDO2dCQUMvRSxJQUFJLGFBQWEsQ0FBQyxhQUFhLEVBQUUsQ0FBQztvQkFDakMsY0FBYyxDQUFDLGFBQWEsQ0FBQyxhQUFhLEVBQUUsRUFBRSxNQUFNLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEdBQUcsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDOUUsQ0FBQztnQkFFRCxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztvQkFDaEQsTUFBTSxRQUFRLEdBQUcsVUFBVSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztvQkFDL0MsSUFBSSxRQUFRLEVBQUUsQ0FBQzt3QkFDZCxpRUFBaUU7d0JBQ2pFLHdFQUF3RTt3QkFDeEUsUUFBUSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLFFBQVEsRUFBRSxLQUFLLENBQUMsQ0FBQzt3QkFDN0QsY0FBYyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLEtBQUssQ0FBQyxDQUFDLFdBQVcsQ0FBQyxZQUFZLENBQUMsQ0FBQzt3QkFDL0UsY0FBYyxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDO3dCQUN6QyxXQUFXLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxDQUFDO3dCQUMxQyxRQUFRLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO3dCQUN0QyxXQUFXLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxDQUFDO29CQUMxQyxDQUFDO2dCQUNGLENBQUM7Z0JBQ0QsVUFBVSxFQUFFLENBQUM7WUFDZCxDQUFDO1FBQ0YsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQTRDO1FBQ3JELElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3pCLE9BQU8sR0FBRyxFQUFFO1lBQ1gsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQzFELENBQUMsQ0FBQztJQUNILENBQUM7OEdBaEZXLGFBQWE7a0dBQWIsYUFBYSx1VkE3QmY7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQXdCVDs7MkZBS1csYUFBYTtrQkFoQ3pCLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBd0JUO29CQUNELE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUNqQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsT0FBTyxFQUFFLENBQUMsT0FBTyxDQUFDO2lCQUNsQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdGFmdGVyTmV4dFJlbmRlcixcblx0Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG5cdENvbXBvbmVudCxcblx0Y29tcHV0ZWQsXG5cdENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsXG5cdEVsZW1lbnRSZWYsXG5cdGluamVjdCxcblx0aW5wdXQsXG5cdHZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuXHRjaGVja1VwZGF0ZSxcblx0ZXh0ZW5kLFxuXHRpbmplY3RCZWZvcmVSZW5kZXIsXG5cdE5ndEFyZ3MsXG5cdE5ndEluc3RhbmNlZE1lc2gsXG5cdG9taXQsXG5cdHBpY2ssXG5cdHJlc29sdmVSZWYsXG59IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgc2V0VXBkYXRlUmFuZ2UgfSBmcm9tICdhbmd1bGFyLXRocmVlLXNvYmEvbWlzYyc7XG5pbXBvcnQgeyBpbmplY3RBdXRvRWZmZWN0IH0gZnJvbSAnbmd4dGVuc2lvbi9hdXRvLWVmZmVjdCc7XG5pbXBvcnQgeyBtZXJnZUlucHV0cyB9IGZyb20gJ25neHRlbnNpb24vaW5qZWN0LWlucHV0cyc7XG5pbXBvcnQgeyBEeW5hbWljRHJhd1VzYWdlLCBJbnN0YW5jZWRCdWZmZXJBdHRyaWJ1dGUsIEluc3RhbmNlZE1lc2gsIE1hdHJpeDQsIFF1YXRlcm5pb24sIFZlY3RvcjMgfSBmcm9tICd0aHJlZSc7XG5pbXBvcnQgeyBOZ3RQb3NpdGlvbk1lc2gsIFBvc2l0aW9uTWVzaCB9IGZyb20gJy4vcG9zaXRpb24tbWVzaCc7XG5cbmNvbnN0IHBhcmVudE1hdHJpeCA9IG5ldyBNYXRyaXg0KCk7XG5jb25zdCBpbnN0YW5jZU1hdHJpeCA9IG5ldyBNYXRyaXg0KCk7XG5jb25zdCB0ZW1wTWF0cml4ID0gbmV3IE1hdHJpeDQoKTtcbmNvbnN0IHRyYW5zbGF0aW9uID0gbmV3IFZlY3RvcjMoKTtcbmNvbnN0IHJvdGF0aW9uID0gbmV3IFF1YXRlcm5pb24oKTtcbmNvbnN0IHNjYWxlID0gbmV3IFZlY3RvcjMoKTtcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmd0cy1pbnN0YW5jZScsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdHRlbXBsYXRlOiBgXG5cdFx0PG5ndC1wb3NpdGlvbi1tZXNoICNwb3NpdGlvbk1lc2ggW2luc3RhbmNlXT1cImluc3RhbmNlcy5pbnN0YW5jZWRNZXNoUmVmKClcIiBbcGFyYW1ldGVyc109XCJvcHRpb25zKClcIj5cblx0XHRcdDxuZy1jb250ZW50IC8+XG5cdFx0PC9uZ3QtcG9zaXRpb24tbWVzaD5cblx0YCxcblx0c2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTmd0c0luc3RhbmNlIHtcblx0b3B0aW9ucyA9IGlucHV0KHt9IGFzIFBhcnRpYWw8Tmd0UG9zaXRpb25NZXNoPik7XG5cblx0aW5zdGFuY2VzID0gaW5qZWN0KE5ndHNJbnN0YW5jZXMpO1xuXG5cdHBvc2l0aW9uTWVzaFJlZiA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPFBvc2l0aW9uTWVzaD4+KCdwb3NpdGlvbk1lc2gnKTtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRleHRlbmQoeyBQb3NpdGlvbk1lc2ggfSk7XG5cblx0XHRjb25zdCBhdXRvRWZmZWN0ID0gaW5qZWN0QXV0b0VmZmVjdCgpO1xuXG5cdFx0YWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcblx0XHRcdGF1dG9FZmZlY3QoKCkgPT4ge1xuXHRcdFx0XHRyZXR1cm4gdGhpcy5pbnN0YW5jZXMuc3Vic2NyaWJlKHRoaXMucG9zaXRpb25NZXNoUmVmKCkubmF0aXZlRWxlbWVudCk7XG5cdFx0XHR9KTtcblx0XHR9KTtcblx0fVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5ndHNJbnN0YW5jZXNPcHRpb25zIGV4dGVuZHMgUGFydGlhbDxOZ3RJbnN0YW5jZWRNZXNoPiB7XG5cdHJhbmdlPzogbnVtYmVyO1xuXHRsaW1pdDogbnVtYmVyO1xuXHRmcmFtZXM6IG51bWJlcjtcbn1cblxuY29uc3QgZGVmYXVsdE9wdGlvbnM6IE5ndHNJbnN0YW5jZXNPcHRpb25zID0ge1xuXHRsaW1pdDogMTAwMCxcblx0ZnJhbWVzOiBJbmZpbml0eSxcbn07XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25ndHMtaW5zdGFuY2VzJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0dGVtcGxhdGU6IGBcblx0XHQ8bmd0LWluc3RhbmNlZC1tZXNoXG5cdFx0XHQjaW5zdGFuY2VkTWVzaFxuXHRcdFx0W3VzZXJEYXRhXT1cInsgaW5zdGFuY2VzIH1cIlxuXHRcdFx0W21hdHJpeEF1dG9VcGRhdGVdPVwiZmFsc2VcIlxuXHRcdFx0W3JheWNhc3RdPVwibnVsbFwiXG5cdFx0XHRbcGFyYW1ldGVyc109XCJwYXJhbWV0ZXJzKClcIlxuXHRcdD5cblx0XHRcdDxuZ3QtaW5zdGFuY2VkLWJ1ZmZlci1hdHRyaWJ1dGVcblx0XHRcdFx0YXR0YWNoPVwiaW5zdGFuY2VNYXRyaXhcIlxuXHRcdFx0XHRbdXNhZ2VdPVwiRHluYW1pY0RyYXdVc2FnZVwiXG5cdFx0XHRcdFtjb3VudF09XCJidWZmZXJzKCkubWF0cmljZXMubGVuZ3RoIC8gMTZcIlxuXHRcdFx0XHRbYXJyYXldPVwiYnVmZmVycygpLm1hdHJpY2VzXCJcblx0XHRcdFx0W2l0ZW1TaXplXT1cIjE2XCJcblx0XHRcdC8+XG5cdFx0XHQ8bmd0LWluc3RhbmNlZC1idWZmZXItYXR0cmlidXRlXG5cdFx0XHRcdGF0dGFjaD1cImluc3RhbmNlQ29sb3JcIlxuXHRcdFx0XHRbdXNhZ2VdPVwiRHluYW1pY0RyYXdVc2FnZVwiXG5cdFx0XHRcdFtjb3VudF09XCJidWZmZXJzKCkuY29sb3JzLmxlbmd0aCAvIDNcIlxuXHRcdFx0XHRbYXJyYXldPVwiYnVmZmVycygpLmNvbG9yc1wiXG5cdFx0XHRcdFtpdGVtU2l6ZV09XCIzXCJcblx0XHRcdC8+XG5cdFx0XHQ8bmctY29udGVudCAvPlxuXHRcdDwvbmd0LWluc3RhbmNlZC1tZXNoPlxuXHRgLFxuXHRzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRpbXBvcnRzOiBbTmd0QXJnc10sXG59KVxuZXhwb3J0IGNsYXNzIE5ndHNJbnN0YW5jZXMge1xuXHRwcm90ZWN0ZWQgcmVhZG9ubHkgRHluYW1pY0RyYXdVc2FnZSA9IER5bmFtaWNEcmF3VXNhZ2U7XG5cblx0b3B0aW9ucyA9IGlucHV0KGRlZmF1bHRPcHRpb25zLCB7IHRyYW5zZm9ybTogbWVyZ2VJbnB1dHMoZGVmYXVsdE9wdGlvbnMpIH0pO1xuXHRwYXJhbWV0ZXJzID0gb21pdCh0aGlzLm9wdGlvbnMsIFsnbGltaXQnLCAnZnJhbWVzJywgJ3JhbmdlJ10pO1xuXG5cdGluc3RhbmNlZE1lc2hSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxJbnN0YW5jZWRNZXNoPj4oJ2luc3RhbmNlZE1lc2gnKTtcblxuXHRsaW1pdCA9IHBpY2sodGhpcy5vcHRpb25zLCAnbGltaXQnKTtcblxuXHRidWZmZXJzID0gY29tcHV0ZWQoKCkgPT4ge1xuXHRcdGNvbnN0IGxpbWl0ID0gdGhpcy5saW1pdCgpO1xuXHRcdGNvbnN0IG1hdHJpY2VzID0gbmV3IEZsb2F0MzJBcnJheShsaW1pdCAqIDE2KTtcblxuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgbGltaXQ7IGkrKykge1xuXHRcdFx0dGVtcE1hdHJpeC5pZGVudGl0eSgpLnRvQXJyYXkobWF0cmljZXMsIGkgKiAxNik7XG5cdFx0fVxuXG5cdFx0Y29uc3QgY29sb3JzID0gbmV3IEZsb2F0MzJBcnJheShbLi4uQXJyYXkuZnJvbSh7IGxlbmd0aDogbGltaXQgKiAzIH0sICgpID0+IDEpXSk7XG5cdFx0cmV0dXJuIHsgbWF0cmljZXMsIGNvbG9ycyB9O1xuXHR9KTtcblxuXHRpbnN0YW5jZXM6IEFycmF5PEVsZW1lbnRSZWY8UG9zaXRpb25NZXNoPiB8IFBvc2l0aW9uTWVzaD4gPSBbXTtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRleHRlbmQoeyBJbnN0YW5jZWRNZXNoLCBJbnN0YW5jZWRCdWZmZXJBdHRyaWJ1dGUgfSk7XG5cblx0XHRjb25zdCBhdXRvRWZmZWN0ID0gaW5qZWN0QXV0b0VmZmVjdCgpO1xuXG5cdFx0YWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcblx0XHRcdGF1dG9FZmZlY3QoKCkgPT4ge1xuXHRcdFx0XHRjb25zdCBpbnN0YW5jZWRNZXNoID0gdGhpcy5pbnN0YW5jZWRNZXNoUmVmKCk/Lm5hdGl2ZUVsZW1lbnQ7XG5cdFx0XHRcdGlmICghaW5zdGFuY2VkTWVzaCkgcmV0dXJuO1xuXHRcdFx0XHRjaGVja1VwZGF0ZShpbnN0YW5jZWRNZXNoLmluc3RhbmNlTWF0cml4KTtcblx0XHRcdH0pO1xuXHRcdH0pO1xuXG5cdFx0bGV0IGl0ZXJhdGlvbnMgPSAwO1xuXHRcdGxldCBjb3VudCA9IDA7XG5cblx0XHRpbmplY3RCZWZvcmVSZW5kZXIoKCkgPT4ge1xuXHRcdFx0Y29uc3QgaW5zdGFuY2VkTWVzaCA9IHRoaXMuaW5zdGFuY2VkTWVzaFJlZigpPy5uYXRpdmVFbGVtZW50O1xuXHRcdFx0aWYgKCFpbnN0YW5jZWRNZXNoKSByZXR1cm47XG5cdFx0XHRjb25zdCB7IGZyYW1lcywgbGltaXQsIHJhbmdlIH0gPSB0aGlzLm9wdGlvbnMoKTtcblx0XHRcdGNvbnN0IHsgbWF0cmljZXMsIGNvbG9ycyB9ID0gdGhpcy5idWZmZXJzKCk7XG5cdFx0XHRpZiAoZnJhbWVzID09PSBJbmZpbml0eSB8fCBpdGVyYXRpb25zIDwgZnJhbWVzKSB7XG5cdFx0XHRcdGluc3RhbmNlZE1lc2gudXBkYXRlTWF0cml4KCk7XG5cdFx0XHRcdGluc3RhbmNlZE1lc2gudXBkYXRlTWF0cml4V29ybGQoKTtcblx0XHRcdFx0cGFyZW50TWF0cml4LmNvcHkoaW5zdGFuY2VkTWVzaC5tYXRyaXhXb3JsZCkuaW52ZXJ0KCk7XG5cblx0XHRcdFx0Y291bnQgPSBNYXRoLm1pbihsaW1pdCwgcmFuZ2UgIT09IHVuZGVmaW5lZCA/IHJhbmdlIDogbGltaXQsIHRoaXMuaW5zdGFuY2VzLmxlbmd0aCk7XG5cdFx0XHRcdGluc3RhbmNlZE1lc2guY291bnQgPSBjb3VudDtcblx0XHRcdFx0c2V0VXBkYXRlUmFuZ2UoaW5zdGFuY2VkTWVzaC5pbnN0YW5jZU1hdHJpeCwgeyBvZmZzZXQ6IDAsIGNvdW50OiBjb3VudCAqIDE2IH0pO1xuXHRcdFx0XHRpZiAoaW5zdGFuY2VkTWVzaC5pbnN0YW5jZUNvbG9yKSB7XG5cdFx0XHRcdFx0c2V0VXBkYXRlUmFuZ2UoaW5zdGFuY2VkTWVzaC5pbnN0YW5jZUNvbG9yLCB7IG9mZnNldDogMCwgY291bnQ6IGNvdW50ICogMyB9KTtcblx0XHRcdFx0fVxuXG5cdFx0XHRcdGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5pbnN0YW5jZXMubGVuZ3RoOyBpKyspIHtcblx0XHRcdFx0XHRjb25zdCBpbnN0YW5jZSA9IHJlc29sdmVSZWYodGhpcy5pbnN0YW5jZXNbaV0pO1xuXHRcdFx0XHRcdGlmIChpbnN0YW5jZSkge1xuXHRcdFx0XHRcdFx0Ly8gTXVsdGlwbHkgdGhlIGludmVyc2Ugb2YgdGhlIEluc3RhbmNlZE1lc2ggd29ybGQgbWF0cml4IG9yIGVsc2Vcblx0XHRcdFx0XHRcdC8vIEluc3RhbmNlcyB3aWxsIGJlIGRvdWJsZS10cmFuc2Zvcm1lZCBpZiA8SW5zdGFuY2VzPiBpc24ndCBhdCBpZGVudGl0eVxuXHRcdFx0XHRcdFx0aW5zdGFuY2UubWF0cml4V29ybGQuZGVjb21wb3NlKHRyYW5zbGF0aW9uLCByb3RhdGlvbiwgc2NhbGUpO1xuXHRcdFx0XHRcdFx0aW5zdGFuY2VNYXRyaXguY29tcG9zZSh0cmFuc2xhdGlvbiwgcm90YXRpb24sIHNjYWxlKS5wcmVtdWx0aXBseShwYXJlbnRNYXRyaXgpO1xuXHRcdFx0XHRcdFx0aW5zdGFuY2VNYXRyaXgudG9BcnJheShtYXRyaWNlcywgaSAqIDE2KTtcblx0XHRcdFx0XHRcdGNoZWNrVXBkYXRlKGluc3RhbmNlZE1lc2guaW5zdGFuY2VNYXRyaXgpO1xuXHRcdFx0XHRcdFx0aW5zdGFuY2UuY29sb3IudG9BcnJheShjb2xvcnMsIGkgKiAzKTtcblx0XHRcdFx0XHRcdGNoZWNrVXBkYXRlKGluc3RhbmNlZE1lc2guaW5zdGFuY2VDb2xvcik7XG5cdFx0XHRcdFx0fVxuXHRcdFx0XHR9XG5cdFx0XHRcdGl0ZXJhdGlvbnMrKztcblx0XHRcdH1cblx0XHR9KTtcblx0fVxuXG5cdHN1YnNjcmliZShyZWY6IEVsZW1lbnRSZWY8UG9zaXRpb25NZXNoPiB8IFBvc2l0aW9uTWVzaCkge1xuXHRcdHRoaXMuaW5zdGFuY2VzLnB1c2gocmVmKTtcblx0XHRyZXR1cm4gKCkgPT4ge1xuXHRcdFx0dGhpcy5pbnN0YW5jZXMgPSB0aGlzLmluc3RhbmNlcy5maWx0ZXIoKGkpID0+IGkgIT09IHJlZik7XG5cdFx0fTtcblx0fVxufVxuIl19
|
|
177
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zdGFuY2VzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zb2JhL3BlcmZvcm1hbmNlcy9zcmMvbGliL2luc3RhbmNlcy9pbnN0YW5jZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLHNCQUFzQixFQUN0QixNQUFNLEVBRU4sTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNOLFdBQVcsRUFDWCxNQUFNLEVBQ04sa0JBQWtCLEVBQ2xCLE9BQU8sRUFFUCxJQUFJLEVBQ0osSUFBSSxFQUNKLFVBQVUsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSx3QkFBd0IsRUFBRSxhQUFhLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDaEgsT0FBTyxFQUFtQixZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFFaEUsTUFBTSxZQUFZLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztBQUNuQyxNQUFNLGNBQWMsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO0FBQ3JDLE1BQU0sVUFBVSxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7QUFDakMsTUFBTSxXQUFXLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztBQUNsQyxNQUFNLFFBQVEsR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO0FBQ2xDLE1BQU0sS0FBSyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7QUFhNUIsTUFBTSxPQUFPLFlBQVk7SUFPeEI7UUFOQSxZQUFPLEdBQUcsS0FB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QUFDLENBQUM7SUFDSCxDQUFDOzhHQTVFVyxhQUFhO2tHQUFiLGFBQWEsdVZBN0JmOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUF3QlQ7OzJGQUtXLGFBQWE7a0JBaEN6QixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQXdCVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztvQkFDakMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLE9BQU8sRUFBRSxDQUFDLE9BQU8sQ0FBQztpQkFDbEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcblx0Q29tcG9uZW50LFxuXHRjb21wdXRlZCxcblx0Q1VTVE9NX0VMRU1FTlRTX1NDSEVNQSxcblx0ZWZmZWN0LFxuXHRFbGVtZW50UmVmLFxuXHRpbmplY3QsXG5cdGlucHV0LFxuXHR2aWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcblx0Y2hlY2tVcGRhdGUsXG5cdGV4dGVuZCxcblx0aW5qZWN0QmVmb3JlUmVuZGVyLFxuXHROZ3RBcmdzLFxuXHROZ3RJbnN0YW5jZWRNZXNoLFxuXHRvbWl0LFxuXHRwaWNrLFxuXHRyZXNvbHZlUmVmLFxufSBmcm9tICdhbmd1bGFyLXRocmVlJztcbmltcG9ydCB7IHNldFVwZGF0ZVJhbmdlIH0gZnJvbSAnYW5ndWxhci10aHJlZS1zb2JhL21pc2MnO1xuaW1wb3J0IHsgbWVyZ2VJbnB1dHMgfSBmcm9tICduZ3h0ZW5zaW9uL2luamVjdC1pbnB1dHMnO1xuaW1wb3J0IHsgRHluYW1pY0RyYXdVc2FnZSwgSW5zdGFuY2VkQnVmZmVyQXR0cmlidXRlLCBJbnN0YW5jZWRNZXNoLCBNYXRyaXg0LCBRdWF0ZXJuaW9uLCBWZWN0b3IzIH0gZnJvbSAndGhyZWUnO1xuaW1wb3J0IHsgTmd0UG9zaXRpb25NZXNoLCBQb3NpdGlvbk1lc2ggfSBmcm9tICcuL3Bvc2l0aW9uLW1lc2gnO1xuXG5jb25zdCBwYXJlbnRNYXRyaXggPSBuZXcgTWF0cml4NCgpO1xuY29uc3QgaW5zdGFuY2VNYXRyaXggPSBuZXcgTWF0cml4NCgpO1xuY29uc3QgdGVtcE1hdHJpeCA9IG5ldyBNYXRyaXg0KCk7XG5jb25zdCB0cmFuc2xhdGlvbiA9IG5ldyBWZWN0b3IzKCk7XG5jb25zdCByb3RhdGlvbiA9IG5ldyBRdWF0ZXJuaW9uKCk7XG5jb25zdCBzY2FsZSA9IG5ldyBWZWN0b3IzKCk7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25ndHMtaW5zdGFuY2UnLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdDxuZ3QtcG9zaXRpb24tbWVzaCAjcG9zaXRpb25NZXNoIFtpbnN0YW5jZV09XCJpbnN0YW5jZXMuaW5zdGFuY2VkTWVzaFJlZigpXCIgW3BhcmFtZXRlcnNdPVwib3B0aW9ucygpXCI+XG5cdFx0XHQ8bmctY29udGVudCAvPlxuXHRcdDwvbmd0LXBvc2l0aW9uLW1lc2g+XG5cdGAsXG5cdHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE5ndHNJbnN0YW5jZSB7XG5cdG9wdGlvbnMgPSBpbnB1dCh7fSBhcyBQYXJ0aWFsPE5ndFBvc2l0aW9uTWVzaD4pO1xuXG5cdGluc3RhbmNlcyA9IGluamVjdChOZ3RzSW5zdGFuY2VzKTtcblxuXHRwb3NpdGlvbk1lc2hSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxQb3NpdGlvbk1lc2g+PigncG9zaXRpb25NZXNoJyk7XG5cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0ZXh0ZW5kKHsgUG9zaXRpb25NZXNoIH0pO1xuXG5cdFx0ZWZmZWN0KChvbkNsZWFudXApID0+IHtcblx0XHRcdGNvbnN0IGNsZWFudXAgPSB0aGlzLmluc3RhbmNlcy5zdWJzY3JpYmUodGhpcy5wb3NpdGlvbk1lc2hSZWYoKS5uYXRpdmVFbGVtZW50KTtcblx0XHRcdG9uQ2xlYW51cCgoKSA9PiBjbGVhbnVwKCkpO1xuXHRcdH0pO1xuXHR9XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmd0c0luc3RhbmNlc09wdGlvbnMgZXh0ZW5kcyBQYXJ0aWFsPE5ndEluc3RhbmNlZE1lc2g+IHtcblx0cmFuZ2U/OiBudW1iZXI7XG5cdGxpbWl0OiBudW1iZXI7XG5cdGZyYW1lczogbnVtYmVyO1xufVxuXG5jb25zdCBkZWZhdWx0T3B0aW9uczogTmd0c0luc3RhbmNlc09wdGlvbnMgPSB7XG5cdGxpbWl0OiAxMDAwLFxuXHRmcmFtZXM6IEluZmluaXR5LFxufTtcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmd0cy1pbnN0YW5jZXMnLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdDxuZ3QtaW5zdGFuY2VkLW1lc2hcblx0XHRcdCNpbnN0YW5jZWRNZXNoXG5cdFx0XHRbdXNlckRhdGFdPVwieyBpbnN0YW5jZXMgfVwiXG5cdFx0XHRbbWF0cml4QXV0b1VwZGF0ZV09XCJmYWxzZVwiXG5cdFx0XHRbcmF5Y2FzdF09XCJudWxsXCJcblx0XHRcdFtwYXJhbWV0ZXJzXT1cInBhcmFtZXRlcnMoKVwiXG5cdFx0PlxuXHRcdFx0PG5ndC1pbnN0YW5jZWQtYnVmZmVyLWF0dHJpYnV0ZVxuXHRcdFx0XHRhdHRhY2g9XCJpbnN0YW5jZU1hdHJpeFwiXG5cdFx0XHRcdFt1c2FnZV09XCJEeW5hbWljRHJhd1VzYWdlXCJcblx0XHRcdFx0W2NvdW50XT1cImJ1ZmZlcnMoKS5tYXRyaWNlcy5sZW5ndGggLyAxNlwiXG5cdFx0XHRcdFthcnJheV09XCJidWZmZXJzKCkubWF0cmljZXNcIlxuXHRcdFx0XHRbaXRlbVNpemVdPVwiMTZcIlxuXHRcdFx0Lz5cblx0XHRcdDxuZ3QtaW5zdGFuY2VkLWJ1ZmZlci1hdHRyaWJ1dGVcblx0XHRcdFx0YXR0YWNoPVwiaW5zdGFuY2VDb2xvclwiXG5cdFx0XHRcdFt1c2FnZV09XCJEeW5hbWljRHJhd1VzYWdlXCJcblx0XHRcdFx0W2NvdW50XT1cImJ1ZmZlcnMoKS5jb2xvcnMubGVuZ3RoIC8gM1wiXG5cdFx0XHRcdFthcnJheV09XCJidWZmZXJzKCkuY29sb3JzXCJcblx0XHRcdFx0W2l0ZW1TaXplXT1cIjNcIlxuXHRcdFx0Lz5cblx0XHRcdDxuZy1jb250ZW50IC8+XG5cdFx0PC9uZ3QtaW5zdGFuY2VkLW1lc2g+XG5cdGAsXG5cdHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdGltcG9ydHM6IFtOZ3RBcmdzXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0c0luc3RhbmNlcyB7XG5cdHByb3RlY3RlZCByZWFkb25seSBEeW5hbWljRHJhd1VzYWdlID0gRHluYW1pY0RyYXdVc2FnZTtcblxuXHRvcHRpb25zID0gaW5wdXQoZGVmYXVsdE9wdGlvbnMsIHsgdHJhbnNmb3JtOiBtZXJnZUlucHV0cyhkZWZhdWx0T3B0aW9ucykgfSk7XG5cdHByb3RlY3RlZCBwYXJhbWV0ZXJzID0gb21pdCh0aGlzLm9wdGlvbnMsIFsnbGltaXQnLCAnZnJhbWVzJywgJ3JhbmdlJ10pO1xuXG5cdGluc3RhbmNlZE1lc2hSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxJbnN0YW5jZWRNZXNoPj4oJ2luc3RhbmNlZE1lc2gnKTtcblxuXHRwcml2YXRlIGxpbWl0ID0gcGljayh0aGlzLm9wdGlvbnMsICdsaW1pdCcpO1xuXG5cdHByb3RlY3RlZCBidWZmZXJzID0gY29tcHV0ZWQoKCkgPT4ge1xuXHRcdGNvbnN0IGxpbWl0ID0gdGhpcy5saW1pdCgpO1xuXHRcdGNvbnN0IG1hdHJpY2VzID0gbmV3IEZsb2F0MzJBcnJheShsaW1pdCAqIDE2KTtcblxuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgbGltaXQ7IGkrKykge1xuXHRcdFx0dGVtcE1hdHJpeC5pZGVudGl0eSgpLnRvQXJyYXkobWF0cmljZXMsIGkgKiAxNik7XG5cdFx0fVxuXG5cdFx0Y29uc3QgY29sb3JzID0gbmV3IEZsb2F0MzJBcnJheShbLi4uQXJyYXkuZnJvbSh7IGxlbmd0aDogbGltaXQgKiAzIH0sICgpID0+IDEpXSk7XG5cdFx0cmV0dXJuIHsgbWF0cmljZXMsIGNvbG9ycyB9O1xuXHR9KTtcblxuXHRpbnN0YW5jZXM6IEFycmF5PEVsZW1lbnRSZWY8UG9zaXRpb25NZXNoPiB8IFBvc2l0aW9uTWVzaD4gPSBbXTtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRleHRlbmQoeyBJbnN0YW5jZWRNZXNoLCBJbnN0YW5jZWRCdWZmZXJBdHRyaWJ1dGUgfSk7XG5cblx0XHRlZmZlY3QoKCkgPT4ge1xuXHRcdFx0Y29uc3QgaW5zdGFuY2VkTWVzaCA9IHRoaXMuaW5zdGFuY2VkTWVzaFJlZigpPy5uYXRpdmVFbGVtZW50O1xuXHRcdFx0aWYgKCFpbnN0YW5jZWRNZXNoKSByZXR1cm47XG5cdFx0XHRjaGVja1VwZGF0ZShpbnN0YW5jZWRNZXNoLmluc3RhbmNlTWF0cml4KTtcblx0XHR9KTtcblxuXHRcdGxldCBpdGVyYXRpb25zID0gMDtcblx0XHRsZXQgY291bnQgPSAwO1xuXG5cdFx0aW5qZWN0QmVmb3JlUmVuZGVyKCgpID0+IHtcblx0XHRcdGNvbnN0IGluc3RhbmNlZE1lc2ggPSB0aGlzLmluc3RhbmNlZE1lc2hSZWYoKT8ubmF0aXZlRWxlbWVudDtcblx0XHRcdGlmICghaW5zdGFuY2VkTWVzaCkgcmV0dXJuO1xuXHRcdFx0Y29uc3QgeyBmcmFtZXMsIGxpbWl0LCByYW5nZSB9ID0gdGhpcy5vcHRpb25zKCk7XG5cdFx0XHRjb25zdCB7IG1hdHJpY2VzLCBjb2xvcnMgfSA9IHRoaXMuYnVmZmVycygpO1xuXHRcdFx0aWYgKGZyYW1lcyA9PT0gSW5maW5pdHkgfHwgaXRlcmF0aW9ucyA8IGZyYW1lcykge1xuXHRcdFx0XHRpbnN0YW5jZWRNZXNoLnVwZGF0ZU1hdHJpeCgpO1xuXHRcdFx0XHRpbnN0YW5jZWRNZXNoLnVwZGF0ZU1hdHJpeFdvcmxkKCk7XG5cdFx0XHRcdHBhcmVudE1hdHJpeC5jb3B5KGluc3RhbmNlZE1lc2gubWF0cml4V29ybGQpLmludmVydCgpO1xuXG5cdFx0XHRcdGNvdW50ID0gTWF0aC5taW4obGltaXQsIHJhbmdlICE9PSB1bmRlZmluZWQgPyByYW5nZSA6IGxpbWl0LCB0aGlzLmluc3RhbmNlcy5sZW5ndGgpO1xuXHRcdFx0XHRpbnN0YW5jZWRNZXNoLmNvdW50ID0gY291bnQ7XG5cdFx0XHRcdHNldFVwZGF0ZVJhbmdlKGluc3RhbmNlZE1lc2guaW5zdGFuY2VNYXRyaXgsIHsgb2Zmc2V0OiAwLCBjb3VudDogY291bnQgKiAxNiB9KTtcblx0XHRcdFx0aWYgKGluc3RhbmNlZE1lc2guaW5zdGFuY2VDb2xvcikge1xuXHRcdFx0XHRcdHNldFVwZGF0ZVJhbmdlKGluc3RhbmNlZE1lc2guaW5zdGFuY2VDb2xvciwgeyBvZmZzZXQ6IDAsIGNvdW50OiBjb3VudCAqIDMgfSk7XG5cdFx0XHRcdH1cblxuXHRcdFx0XHRmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMuaW5zdGFuY2VzLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRcdFx0Y29uc3QgaW5zdGFuY2UgPSByZXNvbHZlUmVmKHRoaXMuaW5zdGFuY2VzW2ldKTtcblx0XHRcdFx0XHRpZiAoaW5zdGFuY2UpIHtcblx0XHRcdFx0XHRcdC8vIE11bHRpcGx5IHRoZSBpbnZlcnNlIG9mIHRoZSBJbnN0YW5jZWRNZXNoIHdvcmxkIG1hdHJpeCBvciBlbHNlXG5cdFx0XHRcdFx0XHQvLyBJbnN0YW5jZXMgd2lsbCBiZSBkb3VibGUtdHJhbnNmb3JtZWQgaWYgPEluc3RhbmNlcz4gaXNuJ3QgYXQgaWRlbnRpdHlcblx0XHRcdFx0XHRcdGluc3RhbmNlLm1hdHJpeFdvcmxkLmRlY29tcG9zZSh0cmFuc2xhdGlvbiwgcm90YXRpb24sIHNjYWxlKTtcblx0XHRcdFx0XHRcdGluc3RhbmNlTWF0cml4LmNvbXBvc2UodHJhbnNsYXRpb24sIHJvdGF0aW9uLCBzY2FsZSkucHJlbXVsdGlwbHkocGFyZW50TWF0cml4KTtcblx0XHRcdFx0XHRcdGluc3RhbmNlTWF0cml4LnRvQXJyYXkobWF0cmljZXMsIGkgKiAxNik7XG5cdFx0XHRcdFx0XHRjaGVja1VwZGF0ZShpbnN0YW5jZWRNZXNoLmluc3RhbmNlTWF0cml4KTtcblx0XHRcdFx0XHRcdGluc3RhbmNlLmNvbG9yLnRvQXJyYXkoY29sb3JzLCBpICogMyk7XG5cdFx0XHRcdFx0XHRjaGVja1VwZGF0ZShpbnN0YW5jZWRNZXNoLmluc3RhbmNlQ29sb3IpO1xuXHRcdFx0XHRcdH1cblx0XHRcdFx0fVxuXHRcdFx0XHRpdGVyYXRpb25zKys7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cblxuXHRzdWJzY3JpYmUocmVmOiBFbGVtZW50UmVmPFBvc2l0aW9uTWVzaD4gfCBQb3NpdGlvbk1lc2gpIHtcblx0XHR0aGlzLmluc3RhbmNlcy5wdXNoKHJlZik7XG5cdFx0cmV0dXJuICgpID0+IHtcblx0XHRcdHRoaXMuaW5zdGFuY2VzID0gdGhpcy5pbnN0YW5jZXMuZmlsdGVyKChpKSA9PiBpICE9PSByZWYpO1xuXHRcdH07XG5cdH1cbn1cbiJdfQ==
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ChangeDetectionStrategy, Component, computed, CUSTOM_ELEMENTS_SCHEMA, effect, inject, input, viewChild, } from '@angular/core';
|
|
2
2
|
import { checkUpdate, extend, injectBeforeRender, omit, pick, resolveRef } from 'angular-three';
|
|
3
|
-
import { injectAutoEffect } from 'ngxtension/auto-effect';
|
|
4
3
|
import { mergeInputs } from 'ngxtension/inject-inputs';
|
|
5
4
|
import { BufferAttribute, BufferGeometry, DynamicDrawUsage, Matrix4, Points, Vector3 } from 'three';
|
|
6
5
|
import { PositionPoint } from './position-point';
|
|
@@ -11,21 +10,19 @@ export class NgtsPoint {
|
|
|
11
10
|
this.positionPointRef = viewChild.required('positionPoint');
|
|
12
11
|
this.points = inject(NgtsPointsInstances);
|
|
13
12
|
extend({ PositionPoint });
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
return this.points.subscribe(this.positionPointRef().nativeElement);
|
|
18
|
-
});
|
|
13
|
+
effect((onCleanup) => {
|
|
14
|
+
const cleanUp = this.points.subscribe(this.positionPointRef().nativeElement);
|
|
15
|
+
onCleanup(() => cleanUp());
|
|
19
16
|
});
|
|
20
17
|
}
|
|
21
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
22
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.
|
|
18
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsPoint, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
19
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.4", type: NgtsPoint, isStandalone: true, selector: "ngts-point", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "positionPointRef", first: true, predicate: ["positionPoint"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
23
20
|
<ngt-position-point #positionPoint [parameters]="options()" [instance]="points.pointsRef()">
|
|
24
21
|
<ng-content />
|
|
25
22
|
</ngt-position-point>
|
|
26
23
|
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
27
24
|
}
|
|
28
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsPoint, decorators: [{
|
|
29
26
|
type: Component,
|
|
30
27
|
args: [{
|
|
31
28
|
selector: 'ngts-point',
|
|
@@ -61,8 +58,8 @@ export class NgtsPointsBuffer {
|
|
|
61
58
|
checkUpdate(attributes['size']);
|
|
62
59
|
});
|
|
63
60
|
}
|
|
64
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
65
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.
|
|
61
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsPointsBuffer, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
62
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.4", type: NgtsPointsBuffer, isStandalone: true, selector: "ngts-points-buffer", inputs: { positions: { classPropertyName: "positions", publicName: "positions", isSignal: true, isRequired: true, transformFunction: null }, colors: { classPropertyName: "colors", publicName: "colors", isSignal: true, isRequired: false, transformFunction: null }, sizes: { classPropertyName: "sizes", publicName: "sizes", isSignal: true, isRequired: false, transformFunction: null }, stride: { classPropertyName: "stride", publicName: "stride", isSignal: true, isRequired: false, transformFunction: null }, options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "pointsRef", first: true, predicate: ["points"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
66
63
|
<ngt-points #points [parameters]="options()">
|
|
67
64
|
<ngt-buffer-geometry>
|
|
68
65
|
<ngt-buffer-attribute
|
|
@@ -95,7 +92,7 @@ export class NgtsPointsBuffer {
|
|
|
95
92
|
</ngt-points>
|
|
96
93
|
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
97
94
|
}
|
|
98
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
95
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsPointsBuffer, decorators: [{
|
|
99
96
|
type: Component,
|
|
100
97
|
args: [{
|
|
101
98
|
selector: 'ngts-points-buffer',
|
|
@@ -156,14 +153,11 @@ export class NgtsPointsInstances {
|
|
|
156
153
|
this.positionPoints = [];
|
|
157
154
|
this.DynamicDrawUsage = DynamicDrawUsage;
|
|
158
155
|
extend({ Points, BufferAttribute, BufferGeometry });
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
return;
|
|
165
|
-
checkUpdate(points.geometry.attributes['position']);
|
|
166
|
-
});
|
|
156
|
+
effect(() => {
|
|
157
|
+
const points = this.pointsRef()?.nativeElement;
|
|
158
|
+
if (!points)
|
|
159
|
+
return;
|
|
160
|
+
checkUpdate(points.geometry.attributes['position']);
|
|
167
161
|
});
|
|
168
162
|
injectBeforeRender(() => {
|
|
169
163
|
const points = this.pointsRef()?.nativeElement;
|
|
@@ -196,8 +190,8 @@ export class NgtsPointsInstances {
|
|
|
196
190
|
this.positionPoints = this.positionPoints.filter((p) => p !== ref);
|
|
197
191
|
};
|
|
198
192
|
}
|
|
199
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
200
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.
|
|
193
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsPointsInstances, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
194
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.4", type: NgtsPointsInstances, isStandalone: true, selector: "ngts-points-instances", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "pointsRef", first: true, predicate: ["points"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
201
195
|
<ngt-points
|
|
202
196
|
#points
|
|
203
197
|
[userData]="{ instances: positionPoints }"
|
|
@@ -232,7 +226,7 @@ export class NgtsPointsInstances {
|
|
|
232
226
|
</ngt-points>
|
|
233
227
|
`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
234
228
|
}
|
|
235
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
229
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: NgtsPointsInstances, decorators: [{
|
|
236
230
|
type: Component,
|
|
237
231
|
args: [{
|
|
238
232
|
selector: 'ngts-points-instances',
|
|
@@ -275,4 +269,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImpor
|
|
|
275
269
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
276
270
|
}]
|
|
277
271
|
}], ctorParameters: () => [] });
|
|
278
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zb2JhL3BlcmZvcm1hbmNlcy9zcmMvbGliL3BvaW50cy9wb2ludHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLGVBQWUsRUFDZix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixzQkFBc0IsRUFFdEIsTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsa0JBQWtCLEVBQWEsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDMUQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3BHLE9BQU8sRUFBb0IsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBYW5FLE1BQU0sT0FBTyxTQUFTO0lBT3JCO1FBTkEsWUFBTyxHQUFHLEtBQUssQ0FBQyxFQUErQixDQUFDLENBQUM7UUFFakQscUJBQWdCLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBNEIsZUFBZSxDQUFDLENBQUM7UUFFbEYsV0FBTSxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBR3BDLE1BQU0sQ0FBQyxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7UUFFMUIsTUFBTSxVQUFVLEdBQUcsZ0JBQWdCLEVBQUUsQ0FBQztRQUV0QyxlQUFlLENBQUMsR0FBRyxFQUFFO1lBQ3BCLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2YsT0FBTyxJQUFJ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QUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO29CQUMzQyxXQUFXLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztvQkFFakQsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDbkMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7Z0JBQ2pELENBQUM7WUFDRixDQUFDO1FBQ0YsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDO0lBRUQsU0FBUyxDQUFDLEdBQThDO1FBQ3ZELElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzlCLE9BQU8sR0FBRyxFQUFFO1lBQ1gsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ3BFLENBQUMsQ0FBQztJQUNILENBQUM7OEdBeEVXLG1CQUFtQjtrR0FBbkIsbUJBQW1CLGdWQXJDckI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztFQWlDVDs7MkZBSVcsbUJBQW1CO2tCQXhDL0IsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsdUJBQXVCO29CQUNqQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFpQ1Q7b0JBQ0QsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ2pDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2lCQUMvQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdGFmdGVyTmV4dFJlbmRlcixcblx0Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG5cdENvbXBvbmVudCxcblx0Y29tcHV0ZWQsXG5cdENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsXG5cdEVsZW1lbnRSZWYsXG5cdGluamVjdCxcblx0aW5wdXQsXG5cdHZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjaGVja1VwZGF0ZSwgZXh0ZW5kLCBpbmplY3RCZWZvcmVSZW5kZXIsIE5ndFBvaW50cywgb21pdCwgcGljaywgcmVzb2x2ZVJlZiB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgaW5qZWN0QXV0b0VmZmVjdCB9IGZyb20gJ25neHRlbnNpb24vYXV0by1lZmZlY3QnO1xuaW1wb3J0IHsgbWVyZ2VJbnB1dHMgfSBmcm9tICduZ3h0ZW5zaW9uL2luamVjdC1pbnB1dHMnO1xuaW1wb3J0IHsgQnVmZmVyQXR0cmlidXRlLCBCdWZmZXJHZW9tZXRyeSwgRHluYW1pY0RyYXdVc2FnZSwgTWF0cml4NCwgUG9pbnRzLCBWZWN0b3IzIH0gZnJvbSAndGhyZWUnO1xuaW1wb3J0IHsgTmd0UG9zaXRpb25Qb2ludCwgUG9zaXRpb25Qb2ludCB9IGZyb20gJy4vcG9zaXRpb24tcG9pbnQnO1xuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZ3RzLXBvaW50Jyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0dGVtcGxhdGU6IGBcblx0XHQ8bmd0LXBvc2l0aW9uLXBvaW50ICNwb3NpdGlvblBvaW50IFtwYXJhbWV0ZXJzXT1cIm9wdGlvbnMoKVwiIFtpbnN0YW5jZV09XCJwb2ludHMucG9pbnRzUmVmKClcIj5cblx0XHRcdDxuZy1jb250ZW50IC8+XG5cdFx0PC9uZ3QtcG9zaXRpb24tcG9pbnQ+XG5cdGAsXG5cdHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE5ndHNQb2ludCB7XG5cdG9wdGlvbnMgPSBpbnB1dCh7fSBhcyBQYXJ0aWFsPE5ndFBvc2l0aW9uUG9pbnQ+KTtcblxuXHRwb3NpdGlvblBvaW50UmVmID0gdmlld0NoaWxkLnJlcXVpcmVkPEVsZW1lbnRSZWY8UG9zaXRpb25Qb2ludD4+KCdwb3NpdGlvblBvaW50Jyk7XG5cblx0cG9pbnRzID0gaW5qZWN0KE5ndHNQb2ludHNJbnN0YW5jZXMpO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdGV4dGVuZCh7IFBvc2l0aW9uUG9pbnQgfSk7XG5cblx0XHRjb25zdCBhdXRvRWZmZWN0ID0gaW5qZWN0QXV0b0VmZmVjdCgpO1xuXG5cdFx0YWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcblx0XHRcdGF1dG9FZmZlY3QoKCkgPT4ge1xuXHRcdFx0XHRyZXR1cm4gdGhpcy5wb2ludHMuc3Vic2NyaWJlKHRoaXMucG9zaXRpb25Qb2ludFJlZigpLm5hdGl2ZUVsZW1lbnQpO1xuXHRcdFx0fSk7XG5cdFx0fSk7XG5cdH1cbn1cblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmd0cy1wb2ludHMtYnVmZmVyJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0dGVtcGxhdGU6IGBcblx0XHQ8bmd0LXBvaW50cyAjcG9pbnRzIFtwYXJhbWV0ZXJzXT1cIm9wdGlvbnMoKVwiPlxuXHRcdFx0PG5ndC1idWZmZXItZ2VvbWV0cnk+XG5cdFx0XHRcdDxuZ3QtYnVmZmVyLWF0dHJpYnV0ZVxuXHRcdFx0XHRcdGF0dGFjaD1cImF0dHJpYnV0ZXMucG9zaXRpb25cIlxuXHRcdFx0XHRcdFtjb3VudF09XCJwb3NpdGlvbnMoKS5sZW5ndGggLyBzdHJpZGUoKVwiXG5cdFx0XHRcdFx0W2FycmF5XT1cInBvc2l0aW9ucygpXCJcblx0XHRcdFx0XHRbaXRlbVNpemVdPVwic3RyaWRlKClcIlxuXHRcdFx0XHRcdFt1c2FnZV09XCJEeW5hbWljRHJhd1VzYWdlXCJcblx0XHRcdFx0Lz5cblx0XHRcdFx0QGlmIChjb2xvcnMoKTsgYXMgY29sb3JzKSB7XG5cdFx0XHRcdFx0PG5ndC1idWZmZXItYXR0cmlidXRlXG5cdFx0XHRcdFx0XHRhdHRhY2g9XCJhdHRyaWJ1dGVzLmNvbG9yXCJcblx0XHRcdFx0XHRcdFtjb3VudF09XCJjb2xvcnMubGVuZ3RoIC8gc3RyaWRlKClcIlxuXHRcdFx0XHRcdFx0W2FycmF5XT1cImNvbG9yc1wiXG5cdFx0XHRcdFx0XHRbaXRlbVNpemVdPVwiM1wiXG5cdFx0XHRcdFx0XHRbdXNhZ2VdPVwiRHluYW1pY0RyYXdVc2FnZVwiXG5cdFx0XHRcdFx0Lz5cblx0XHRcdFx0fVxuXHRcdFx0XHRAaWYgKHNpemVzKCk7IGFzIHNpemVzKSB7XG5cdFx0XHRcdFx0PG5ndC1idWZmZXItYXR0cmlidXRlXG5cdFx0XHRcdFx0XHRhdHRhY2g9XCJhdHRyaWJ1dGVzLnNpemVcIlxuXHRcdFx0XHRcdFx0W2NvdW50XT1cInNpemVzLmxlbmd0aCAvIHN0cmlkZSgpXCJcblx0XHRcdFx0XHRcdFthcnJheV09XCJzaXplc1wiXG5cdFx0XHRcdFx0XHRbaXRlbVNpemVdPVwiMVwiXG5cdFx0XHRcdFx0XHRbdXNhZ2VdPVwiRHluYW1pY0RyYXdVc2FnZVwiXG5cdFx0XHRcdFx0Lz5cblx0XHRcdFx0fVxuXHRcdFx0PC9uZ3QtYnVmZmVyLWdlb21ldHJ5PlxuXHRcdFx0PG5nLWNvbnRlbnQgLz5cblx0XHQ8L25ndC1wb2ludHM+XG5cdGAsXG5cdHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE5ndHNQb2ludHNCdWZmZXIge1xuXHRwb3NpdGlvbnMgPSBpbnB1dC5yZXF1aXJlZDxGbG9hdDMyQXJyYXk+KCk7XG5cdGNvbG9ycyA9IGlucHV0PEZsb2F0MzJBcnJheT4oKTtcblx0c2l6ZXMgPSBpbnB1dDxGbG9hdDMyQXJyYXk+KCk7XG5cdHN0cmlkZSA9IGlucHV0PDIgfCAzPigzKTtcblx0b3B0aW9ucyA9IGlucHV0KHt9IGFzIFBhcnRpYWw8Tmd0UG9zaXRpb25Qb2ludD4pO1xuXG5cdHBvaW50c1JlZiA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPFBvaW50cz4+KCdwb2ludHMnKTtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRleHRlbmQoeyBQb2ludHMsIEJ1ZmZlckF0dHJpYnV0ZSwgQnVmZmVyR2VvbWV0cnkgfSk7XG5cblx0XHRpbmplY3RCZWZvcmVSZW5kZXIoKCkgPT4ge1xuXHRcdFx0Y29uc3QgcG9pbnRzID0gdGhpcy5wb2ludHNSZWYoKT8ubmF0aXZlRWxlbWVudDtcblx0XHRcdGlmICghcG9pbnRzKSByZXR1cm47XG5cblx0XHRcdGNvbnN0IGF0dHJpYnV0ZXMgPSBwb2ludHMuZ2VvbWV0cnkuYXR0cmlidXRlcztcblx0XHRcdGNoZWNrVXBkYXRlKGF0dHJpYnV0ZXNbJ3Bvc2l0aW9uJ10pO1xuXHRcdFx0aWYgKHRoaXMuY29sb3JzKCkpIGNoZWNrVXBkYXRlKGF0dHJpYnV0ZXNbJ2NvbG9yJ10pO1xuXHRcdFx0aWYgKHRoaXMuc2l6ZXMoKSkgY2hlY2tVcGRhdGUoYXR0cmlidXRlc1snc2l6ZSddKTtcblx0XHR9KTtcblx0fVxuXG5cdHByb3RlY3RlZCByZWFkb25seSBEeW5hbWljRHJhd1VzYWdlID0gRHluYW1pY0RyYXdVc2FnZTtcbn1cblxuY29uc3QgcGFyZW50TWF0cml4ID0gbmV3IE1hdHJpeDQoKTtcbmNvbnN0IHBvc2l0aW9uID0gbmV3IFZlY3RvcjMoKTtcblxuZXhwb3J0IGludGVyZmFjZSBOZ3RzUG9pbnRzSW5zdGFuY2VzT3B0aW9ucyBleHRlbmRzIFBhcnRpYWw8Tmd0UG9pbnRzPiB7XG5cdHJhbmdlPzogbnVtYmVyO1xuXHRsaW1pdDogbnVtYmVyO1xufVxuXG5jb25zdCBkZWZhdWx0SW5zdGFuY2VzT3B0aW9uczogTmd0c1BvaW50c0luc3RhbmNlc09wdGlvbnMgPSB7IGxpbWl0OiAxMDAwIH07XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25ndHMtcG9pbnRzLWluc3RhbmNlcycsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdHRlbXBsYXRlOiBgXG5cdFx0PG5ndC1wb2ludHNcblx0XHRcdCNwb2ludHNcblx0XHRcdFt1c2VyRGF0YV09XCJ7IGluc3RhbmNlczogcG9zaXRpb25Qb2ludHMgfVwiXG5cdFx0XHRbbWF0cml4QXV0b1VwZGF0ZV09XCJmYWxzZVwiXG5cdFx0XHRbcmF5Y2FzdF09XCJudWxsXCJcblx0XHRcdFtwYXJhbWV0ZXJzXT1cInBhcmFtZXRlcnMoKVwiXG5cdFx0PlxuXHRcdFx0PG5ndC1idWZmZXItZ2VvbWV0cnk+XG5cdFx0XHRcdDxuZ3QtYnVmZmVyLWF0dHJpYnV0ZVxuXHRcdFx0XHRcdGF0dGFjaD1cImF0dHJpYnV0ZXMucG9zaXRpb25cIlxuXHRcdFx0XHRcdFtjb3VudF09XCJidWZmZXJzKCkucG9zaXRpb25zLmxlbmd0aCAvIDNcIlxuXHRcdFx0XHRcdFthcnJheV09XCJidWZmZXJzKCkucG9zaXRpb25zXCJcblx0XHRcdFx0XHRbaXRlbVNpemVdPVwiM1wiXG5cdFx0XHRcdFx0W3VzYWdlXT1cIkR5bmFtaWNEcmF3VXNhZ2VcIlxuXHRcdFx0XHQvPlxuXHRcdFx0XHQ8bmd0LWJ1ZmZlci1hdHRyaWJ1dGVcblx0XHRcdFx0XHRhdHRhY2g9XCJhdHRyaWJ1dGVzLmNvbG9yXCJcblx0XHRcdFx0XHRbY291bnRdPVwiYnVmZmVycygpLmNvbG9ycy5sZW5ndGggLyAzXCJcblx0XHRcdFx0XHRbYXJyYXldPVwiYnVmZmVycygpLmNvbG9yc1wiXG5cdFx0XHRcdFx0W2l0ZW1TaXplXT1cIjNcIlxuXHRcdFx0XHRcdFt1c2FnZV09XCJEeW5hbWljRHJhd1VzYWdlXCJcblx0XHRcdFx0Lz5cblx0XHRcdFx0PG5ndC1idWZmZXItYXR0cmlidXRlXG5cdFx0XHRcdFx0YXR0YWNoPVwiYXR0cmlidXRlcy5zaXplXCJcblx0XHRcdFx0XHRbY291bnRdPVwiYnVmZmVycygpLnNpemVzLmxlbmd0aFwiXG5cdFx0XHRcdFx0W2FycmF5XT1cImJ1ZmZlcnMoKS5zaXplc1wiXG5cdFx0XHRcdFx0W2l0ZW1TaXplXT1cIjFcIlxuXHRcdFx0XHRcdFt1c2FnZV09XCJEeW5hbWljRHJhd1VzYWdlXCJcblx0XHRcdFx0Lz5cblx0XHRcdDwvbmd0LWJ1ZmZlci1nZW9tZXRyeT5cblx0XHRcdDxuZy1jb250ZW50IC8+XG5cdFx0PC9uZ3QtcG9pbnRzPlxuXHRgLFxuXHRzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3RzUG9pbnRzSW5zdGFuY2VzIHtcblx0b3B0aW9ucyA9IGlucHV0KGRlZmF1bHRJbnN0YW5jZXNPcHRpb25zLCB7IHRyYW5zZm9ybTogbWVyZ2VJbnB1dHMoZGVmYXVsdEluc3RhbmNlc09wdGlvbnMpIH0pO1xuXHRwYXJhbWV0ZXJzID0gb21pdCh0aGlzLm9wdGlvbnMsIFsnbGltaXQnLCAncmFuZ2UnXSk7XG5cblx0cG9pbnRzUmVmID0gdmlld0NoaWxkLnJlcXVpcmVkPEVsZW1lbnRSZWY8UG9pbnRzPj4oJ3BvaW50cycpO1xuXG5cdHByaXZhdGUgbGltaXQgPSBwaWNrKHRoaXMub3B0aW9ucywgJ2xpbWl0Jyk7XG5cblx0YnVmZmVycyA9IGNvbXB1dGVkKCgpID0+IHtcblx0XHRjb25zdCBsaW1pdCA9IHRoaXMubGltaXQoKTtcblxuXHRcdHJldHVybiB7XG5cdFx0XHRwb3NpdGlvbnM6IG5ldyBGbG9hdDMyQXJyYXkobGltaXQgKiAzKSxcblx0XHRcdGNvbG9yczogRmxvYXQzMkFycmF5LmZyb20oeyBsZW5ndGg6IGxpbWl0ICogMyB9LCAoKSA9PiAxKSxcblx0XHRcdHNpemVzOiBGbG9hdDMyQXJyYXkuZnJvbSh7IGxlbmd0aDogbGltaXQgfSwgKCkgPT4gMSksXG5cdFx0fTtcblx0fSk7XG5cblx0cG9zaXRpb25Qb2ludHM6IEFycmF5PEVsZW1lbnRSZWY8UG9zaXRpb25Qb2ludD4gfCBQb3NpdGlvblBvaW50PiA9IFtdO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdGV4dGVuZCh7IFBvaW50cywgQnVmZmVyQXR0cmlidXRlLCBCdWZmZXJHZW9tZXRyeSB9KTtcblx0XHRjb25zdCBhdXRvRWZmZWN0ID0gaW5qZWN0QXV0b0VmZmVjdCgpO1xuXG5cdFx0YWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcblx0XHRcdGF1dG9FZmZlY3QoKCkgPT4ge1xuXHRcdFx0XHRjb25zdCBwb2ludHMgPSB0aGlzLnBvaW50c1JlZigpPy5uYXRpdmVFbGVtZW50O1xuXHRcdFx0XHRpZiAoIXBvaW50cykgcmV0dXJuO1xuXHRcdFx0XHRjaGVja1VwZGF0ZShwb2ludHMuZ2VvbWV0cnkuYXR0cmlidXRlc1sncG9zaXRpb24nXSk7XG5cdFx0XHR9KTtcblx0XHR9KTtcblxuXHRcdGluamVjdEJlZm9yZVJlbmRlcigoKSA9PiB7XG5cdFx0XHRjb25zdCBwb2ludHMgPSB0aGlzLnBvaW50c1JlZigpPy5uYXRpdmVFbGVtZW50O1xuXHRcdFx0aWYgKCFwb2ludHMpIHJldHVybjtcblxuXHRcdFx0Y29uc3QgeyBsaW1pdCwgcmFuZ2UgfSA9IHRoaXMub3B0aW9ucygpO1xuXHRcdFx0Y29uc3QgeyBwb3NpdGlvbnMsIHNpemVzLCBjb2xvcnMgfSA9IHRoaXMuYnVmZmVycygpO1xuXG5cdFx0XHRwb2ludHMudXBkYXRlTWF0cml4KCk7XG5cdFx0XHRwb2ludHMudXBkYXRlTWF0cml4V29ybGQoKTtcblx0XHRcdHBhcmVudE1hdHJpeC5jb3B5KHBvaW50cy5tYXRyaXhXb3JsZCkuaW52ZXJ0KCk7XG5cblx0XHRcdHBvaW50cy5nZW9tZXRyeS5kcmF3UmFuZ2UuY291bnQgPSBNYXRoLm1pbihcblx0XHRcdFx0bGltaXQsXG5cdFx0XHRcdHJhbmdlICE9PSB1bmRlZmluZWQgPyByYW5nZSA6IGxpbWl0LFxuXHRcdFx0XHR0aGlzLnBvc2l0aW9uUG9pbnRzLmxlbmd0aCxcblx0XHRcdCk7XG5cblx0XHRcdGZvciAobGV0IGkgPSAwOyBpIDwgdGhpcy5wb3NpdGlvblBvaW50cy5sZW5ndGg7IGkrKykge1xuXHRcdFx0XHRjb25zdCBwb3NpdGlvblBvaW50ID0gcmVzb2x2ZVJlZih0aGlzLnBvc2l0aW9uUG9pbnRzW2ldKTtcblx0XHRcdFx0aWYgKHBvc2l0aW9uUG9pbnQpIHtcblx0XHRcdFx0XHRwb3NpdGlvblBvaW50LmdldFdvcmxkUG9zaXRpb24ocG9zaXRpb24pLmFwcGx5TWF0cml4NChwYXJlbnRNYXRyaXgpO1xuXHRcdFx0XHRcdHBvc2l0aW9uLnRvQXJyYXkocG9zaXRpb25zLCBpICogMyk7XG5cdFx0XHRcdFx0Y2hlY2tVcGRhdGUocG9pbnRzLmdlb21ldHJ5LmF0dHJpYnV0ZXNbJ3Bvc2l0aW9uJ10pO1xuXG5cdFx0XHRcdFx0cG9zaXRpb25Qb2ludC5tYXRyaXhXb3JsZE5lZWRzVXBkYXRlID0gdHJ1ZTtcblx0XHRcdFx0XHRwb3NpdGlvblBvaW50LmNvbG9yLnRvQXJyYXkoY29sb3JzLCBpICogMyk7XG5cdFx0XHRcdFx0Y2hlY2tVcGRhdGUocG9pbnRzLmdlb21ldHJ5LmF0dHJpYnV0ZXNbJ2NvbG9yJ10pO1xuXG5cdFx0XHRcdFx0c2l6ZXMuc2V0KFtwb3NpdGlvblBvaW50LnNpemVdLCBpKTtcblx0XHRcdFx0XHRjaGVja1VwZGF0ZShwb2ludHMuZ2VvbWV0cnkuYXR0cmlidXRlc1snc2l6ZSddKTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG5cblx0c3Vic2NyaWJlKHJlZjogRWxlbWVudFJlZjxQb3NpdGlvblBvaW50PiB8IFBvc2l0aW9uUG9pbnQpIHtcblx0XHR0aGlzLnBvc2l0aW9uUG9pbnRzLnB1c2gocmVmKTtcblx0XHRyZXR1cm4gKCkgPT4ge1xuXHRcdFx0dGhpcy5wb3NpdGlvblBvaW50cyA9IHRoaXMucG9zaXRpb25Qb2ludHMuZmlsdGVyKChwKSA9PiBwICE9PSByZWYpO1xuXHRcdH07XG5cdH1cblxuXHRwcm90ZWN0ZWQgcmVhZG9ubHkgRHluYW1pY0RyYXdVc2FnZSA9IER5bmFtaWNEcmF3VXNhZ2U7XG59XG4iXX0=
|
|
272
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9pbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zb2JhL3BlcmZvcm1hbmNlcy9zcmMvbGliL3BvaW50cy9wb2ludHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsUUFBUSxFQUNSLHNCQUFzQixFQUN0QixNQUFNLEVBRU4sTUFBTSxFQUNOLEtBQUssRUFDTCxTQUFTLEdBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsa0JBQWtCLEVBQWEsSUFBSSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0csT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLGdCQUFnQixFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3BHLE9BQU8sRUFBb0IsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7O0FBYW5FLE1BQU0sT0FBTyxTQUFTO0lBT3JCO1FBTkEsWUFBTyxHQUFHLEtBQUssQ0FBQyxFQUErQixDQUFDLENBQUM7UUFFakQscUJBQWdCLEdBQUcsU0FBUyxDQUFDLFFBQVEsQ0FBNEIsZUFBZSxDQUFDLENBQUM7UUFFbEYsV0FBTSxHQUFHLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBR3BDLE1BQU0sQ0FBQyxFQUFFLGFBQWEsRUFBRSxDQUFDLENBQUM7UUFFMUIsTUFBTSxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDcEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDN0UsU0FBUyxDQUFDLEdBQUcs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LENBQUMsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7b0JBQ25DLFdBQVcsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO2dCQUNqRCxDQUFDO1lBQ0YsQ0FBQztRQUNGLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVELFNBQVMsQ0FBQyxHQUE4QztRQUN2RCxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUM5QixPQUFPLEdBQUcsRUFBRTtZQUNYLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNwRSxDQUFDLENBQUM7SUFDSCxDQUFDOzhHQXJFVyxtQkFBbUI7a0dBQW5CLG1CQUFtQixnVkFyQ3JCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7RUFpQ1Q7OzJGQUlXLG1CQUFtQjtrQkF4Qy9CLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLHVCQUF1QjtvQkFDakMsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUNUO29CQUNELE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO29CQUNqQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDL0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcblx0Q29tcG9uZW50LFxuXHRjb21wdXRlZCxcblx0Q1VTVE9NX0VMRU1FTlRTX1NDSEVNQSxcblx0ZWZmZWN0LFxuXHRFbGVtZW50UmVmLFxuXHRpbmplY3QsXG5cdGlucHV0LFxuXHR2aWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY2hlY2tVcGRhdGUsIGV4dGVuZCwgaW5qZWN0QmVmb3JlUmVuZGVyLCBOZ3RQb2ludHMsIG9taXQsIHBpY2ssIHJlc29sdmVSZWYgfSBmcm9tICdhbmd1bGFyLXRocmVlJztcbmltcG9ydCB7IG1lcmdlSW5wdXRzIH0gZnJvbSAnbmd4dGVuc2lvbi9pbmplY3QtaW5wdXRzJztcbmltcG9ydCB7IEJ1ZmZlckF0dHJpYnV0ZSwgQnVmZmVyR2VvbWV0cnksIER5bmFtaWNEcmF3VXNhZ2UsIE1hdHJpeDQsIFBvaW50cywgVmVjdG9yMyB9IGZyb20gJ3RocmVlJztcbmltcG9ydCB7IE5ndFBvc2l0aW9uUG9pbnQsIFBvc2l0aW9uUG9pbnQgfSBmcm9tICcuL3Bvc2l0aW9uLXBvaW50JztcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmd0cy1wb2ludCcsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdHRlbXBsYXRlOiBgXG5cdFx0PG5ndC1wb3NpdGlvbi1wb2ludCAjcG9zaXRpb25Qb2ludCBbcGFyYW1ldGVyc109XCJvcHRpb25zKClcIiBbaW5zdGFuY2VdPVwicG9pbnRzLnBvaW50c1JlZigpXCI+XG5cdFx0XHQ8bmctY29udGVudCAvPlxuXHRcdDwvbmd0LXBvc2l0aW9uLXBvaW50PlxuXHRgLFxuXHRzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3RzUG9pbnQge1xuXHRvcHRpb25zID0gaW5wdXQoe30gYXMgUGFydGlhbDxOZ3RQb3NpdGlvblBvaW50Pik7XG5cblx0cG9zaXRpb25Qb2ludFJlZiA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPFBvc2l0aW9uUG9pbnQ+PigncG9zaXRpb25Qb2ludCcpO1xuXG5cdHBvaW50cyA9IGluamVjdChOZ3RzUG9pbnRzSW5zdGFuY2VzKTtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRleHRlbmQoeyBQb3NpdGlvblBvaW50IH0pO1xuXG5cdFx0ZWZmZWN0KChvbkNsZWFudXApID0+IHtcblx0XHRcdGNvbnN0IGNsZWFuVXAgPSB0aGlzLnBvaW50cy5zdWJzY3JpYmUodGhpcy5wb3NpdGlvblBvaW50UmVmKCkubmF0aXZlRWxlbWVudCk7XG5cdFx0XHRvbkNsZWFudXAoKCkgPT4gY2xlYW5VcCgpKTtcblx0XHR9KTtcblx0fVxufVxuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZ3RzLXBvaW50cy1idWZmZXInLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdDxuZ3QtcG9pbnRzICNwb2ludHMgW3BhcmFtZXRlcnNdPVwib3B0aW9ucygpXCI+XG5cdFx0XHQ8bmd0LWJ1ZmZlci1nZW9tZXRyeT5cblx0XHRcdFx0PG5ndC1idWZmZXItYXR0cmlidXRlXG5cdFx0XHRcdFx0YXR0YWNoPVwiYXR0cmlidXRlcy5wb3NpdGlvblwiXG5cdFx0XHRcdFx0W2NvdW50XT1cInBvc2l0aW9ucygpLmxlbmd0aCAvIHN0cmlkZSgpXCJcblx0XHRcdFx0XHRbYXJyYXldPVwicG9zaXRpb25zKClcIlxuXHRcdFx0XHRcdFtpdGVtU2l6ZV09XCJzdHJpZGUoKVwiXG5cdFx0XHRcdFx0W3VzYWdlXT1cIkR5bmFtaWNEcmF3VXNhZ2VcIlxuXHRcdFx0XHQvPlxuXHRcdFx0XHRAaWYgKGNvbG9ycygpOyBhcyBjb2xvcnMpIHtcblx0XHRcdFx0XHQ8bmd0LWJ1ZmZlci1hdHRyaWJ1dGVcblx0XHRcdFx0XHRcdGF0dGFjaD1cImF0dHJpYnV0ZXMuY29sb3JcIlxuXHRcdFx0XHRcdFx0W2NvdW50XT1cImNvbG9ycy5sZW5ndGggLyBzdHJpZGUoKVwiXG5cdFx0XHRcdFx0XHRbYXJyYXldPVwiY29sb3JzXCJcblx0XHRcdFx0XHRcdFtpdGVtU2l6ZV09XCIzXCJcblx0XHRcdFx0XHRcdFt1c2FnZV09XCJEeW5hbWljRHJhd1VzYWdlXCJcblx0XHRcdFx0XHQvPlxuXHRcdFx0XHR9XG5cdFx0XHRcdEBpZiAoc2l6ZXMoKTsgYXMgc2l6ZXMpIHtcblx0XHRcdFx0XHQ8bmd0LWJ1ZmZlci1hdHRyaWJ1dGVcblx0XHRcdFx0XHRcdGF0dGFjaD1cImF0dHJpYnV0ZXMuc2l6ZVwiXG5cdFx0XHRcdFx0XHRbY291bnRdPVwic2l6ZXMubGVuZ3RoIC8gc3RyaWRlKClcIlxuXHRcdFx0XHRcdFx0W2FycmF5XT1cInNpemVzXCJcblx0XHRcdFx0XHRcdFtpdGVtU2l6ZV09XCIxXCJcblx0XHRcdFx0XHRcdFt1c2FnZV09XCJEeW5hbWljRHJhd1VzYWdlXCJcblx0XHRcdFx0XHQvPlxuXHRcdFx0XHR9XG5cdFx0XHQ8L25ndC1idWZmZXItZ2VvbWV0cnk+XG5cdFx0XHQ8bmctY29udGVudCAvPlxuXHRcdDwvbmd0LXBvaW50cz5cblx0YCxcblx0c2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTmd0c1BvaW50c0J1ZmZlciB7XG5cdHBvc2l0aW9ucyA9IGlucHV0LnJlcXVpcmVkPEZsb2F0MzJBcnJheT4oKTtcblx0Y29sb3JzID0gaW5wdXQ8RmxvYXQzMkFycmF5PigpO1xuXHRzaXplcyA9IGlucHV0PEZsb2F0MzJBcnJheT4oKTtcblx0c3RyaWRlID0gaW5wdXQ8MiB8IDM+KDMpO1xuXHRvcHRpb25zID0gaW5wdXQoe30gYXMgUGFydGlhbDxOZ3RQb3NpdGlvblBvaW50Pik7XG5cblx0cG9pbnRzUmVmID0gdmlld0NoaWxkLnJlcXVpcmVkPEVsZW1lbnRSZWY8UG9pbnRzPj4oJ3BvaW50cycpO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdGV4dGVuZCh7IFBvaW50cywgQnVmZmVyQXR0cmlidXRlLCBCdWZmZXJHZW9tZXRyeSB9KTtcblxuXHRcdGluamVjdEJlZm9yZVJlbmRlcigoKSA9PiB7XG5cdFx0XHRjb25zdCBwb2ludHMgPSB0aGlzLnBvaW50c1JlZigpPy5uYXRpdmVFbGVtZW50O1xuXHRcdFx0aWYgKCFwb2ludHMpIHJldHVybjtcblxuXHRcdFx0Y29uc3QgYXR0cmlidXRlcyA9IHBvaW50cy5nZW9tZXRyeS5hdHRyaWJ1dGVzO1xuXHRcdFx0Y2hlY2tVcGRhdGUoYXR0cmlidXRlc1sncG9zaXRpb24nXSk7XG5cdFx0XHRpZiAodGhpcy5jb2xvcnMoKSkgY2hlY2tVcGRhdGUoYXR0cmlidXRlc1snY29sb3InXSk7XG5cdFx0XHRpZiAodGhpcy5zaXplcygpKSBjaGVja1VwZGF0ZShhdHRyaWJ1dGVzWydzaXplJ10pO1xuXHRcdH0pO1xuXHR9XG5cblx0cHJvdGVjdGVkIHJlYWRvbmx5IER5bmFtaWNEcmF3VXNhZ2UgPSBEeW5hbWljRHJhd1VzYWdlO1xufVxuXG5jb25zdCBwYXJlbnRNYXRyaXggPSBuZXcgTWF0cml4NCgpO1xuY29uc3QgcG9zaXRpb24gPSBuZXcgVmVjdG9yMygpO1xuXG5leHBvcnQgaW50ZXJmYWNlIE5ndHNQb2ludHNJbnN0YW5jZXNPcHRpb25zIGV4dGVuZHMgUGFydGlhbDxOZ3RQb2ludHM+IHtcblx0cmFuZ2U/OiBudW1iZXI7XG5cdGxpbWl0OiBudW1iZXI7XG59XG5cbmNvbnN0IGRlZmF1bHRJbnN0YW5jZXNPcHRpb25zOiBOZ3RzUG9pbnRzSW5zdGFuY2VzT3B0aW9ucyA9IHsgbGltaXQ6IDEwMDAgfTtcblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmd0cy1wb2ludHMtaW5zdGFuY2VzJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0dGVtcGxhdGU6IGBcblx0XHQ8bmd0LXBvaW50c1xuXHRcdFx0I3BvaW50c1xuXHRcdFx0W3VzZXJEYXRhXT1cInsgaW5zdGFuY2VzOiBwb3NpdGlvblBvaW50cyB9XCJcblx0XHRcdFttYXRyaXhBdXRvVXBkYXRlXT1cImZhbHNlXCJcblx0XHRcdFtyYXljYXN0XT1cIm51bGxcIlxuXHRcdFx0W3BhcmFtZXRlcnNdPVwicGFyYW1ldGVycygpXCJcblx0XHQ+XG5cdFx0XHQ8bmd0LWJ1ZmZlci1nZW9tZXRyeT5cblx0XHRcdFx0PG5ndC1idWZmZXItYXR0cmlidXRlXG5cdFx0XHRcdFx0YXR0YWNoPVwiYXR0cmlidXRlcy5wb3NpdGlvblwiXG5cdFx0XHRcdFx0W2NvdW50XT1cImJ1ZmZlcnMoKS5wb3NpdGlvbnMubGVuZ3RoIC8gM1wiXG5cdFx0XHRcdFx0W2FycmF5XT1cImJ1ZmZlcnMoKS5wb3NpdGlvbnNcIlxuXHRcdFx0XHRcdFtpdGVtU2l6ZV09XCIzXCJcblx0XHRcdFx0XHRbdXNhZ2VdPVwiRHluYW1pY0RyYXdVc2FnZVwiXG5cdFx0XHRcdC8+XG5cdFx0XHRcdDxuZ3QtYnVmZmVyLWF0dHJpYnV0ZVxuXHRcdFx0XHRcdGF0dGFjaD1cImF0dHJpYnV0ZXMuY29sb3JcIlxuXHRcdFx0XHRcdFtjb3VudF09XCJidWZmZXJzKCkuY29sb3JzLmxlbmd0aCAvIDNcIlxuXHRcdFx0XHRcdFthcnJheV09XCJidWZmZXJzKCkuY29sb3JzXCJcblx0XHRcdFx0XHRbaXRlbVNpemVdPVwiM1wiXG5cdFx0XHRcdFx0W3VzYWdlXT1cIkR5bmFtaWNEcmF3VXNhZ2VcIlxuXHRcdFx0XHQvPlxuXHRcdFx0XHQ8bmd0LWJ1ZmZlci1hdHRyaWJ1dGVcblx0XHRcdFx0XHRhdHRhY2g9XCJhdHRyaWJ1dGVzLnNpemVcIlxuXHRcdFx0XHRcdFtjb3VudF09XCJidWZmZXJzKCkuc2l6ZXMubGVuZ3RoXCJcblx0XHRcdFx0XHRbYXJyYXldPVwiYnVmZmVycygpLnNpemVzXCJcblx0XHRcdFx0XHRbaXRlbVNpemVdPVwiMVwiXG5cdFx0XHRcdFx0W3VzYWdlXT1cIkR5bmFtaWNEcmF3VXNhZ2VcIlxuXHRcdFx0XHQvPlxuXHRcdFx0PC9uZ3QtYnVmZmVyLWdlb21ldHJ5PlxuXHRcdFx0PG5nLWNvbnRlbnQgLz5cblx0XHQ8L25ndC1wb2ludHM+XG5cdGAsXG5cdHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE5ndHNQb2ludHNJbnN0YW5jZXMge1xuXHRvcHRpb25zID0gaW5wdXQoZGVmYXVsdEluc3RhbmNlc09wdGlvbnMsIHsgdHJhbnNmb3JtOiBtZXJnZUlucHV0cyhkZWZhdWx0SW5zdGFuY2VzT3B0aW9ucykgfSk7XG5cdHBhcmFtZXRlcnMgPSBvbWl0KHRoaXMub3B0aW9ucywgWydsaW1pdCcsICdyYW5nZSddKTtcblxuXHRwb2ludHNSZWYgPSB2aWV3Q2hpbGQucmVxdWlyZWQ8RWxlbWVudFJlZjxQb2ludHM+PigncG9pbnRzJyk7XG5cblx0cHJpdmF0ZSBsaW1pdCA9IHBpY2sodGhpcy5vcHRpb25zLCAnbGltaXQnKTtcblxuXHRidWZmZXJzID0gY29tcHV0ZWQoKCkgPT4ge1xuXHRcdGNvbnN0IGxpbWl0ID0gdGhpcy5saW1pdCgpO1xuXG5cdFx0cmV0dXJuIHtcblx0XHRcdHBvc2l0aW9uczogbmV3IEZsb2F0MzJBcnJheShsaW1pdCAqIDMpLFxuXHRcdFx0Y29sb3JzOiBGbG9hdDMyQXJyYXkuZnJvbSh7IGxlbmd0aDogbGltaXQgKiAzIH0sICgpID0+IDEpLFxuXHRcdFx0c2l6ZXM6IEZsb2F0MzJBcnJheS5mcm9tKHsgbGVuZ3RoOiBsaW1pdCB9LCAoKSA9PiAxKSxcblx0XHR9O1xuXHR9KTtcblxuXHRwb3NpdGlvblBvaW50czogQXJyYXk8RWxlbWVudFJlZjxQb3NpdGlvblBvaW50PiB8IFBvc2l0aW9uUG9pbnQ+ID0gW107XG5cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0ZXh0ZW5kKHsgUG9pbnRzLCBCdWZmZXJBdHRyaWJ1dGUsIEJ1ZmZlckdlb21ldHJ5IH0pO1xuXG5cdFx0ZWZmZWN0KCgpID0+IHtcblx0XHRcdGNvbnN0IHBvaW50cyA9IHRoaXMucG9pbnRzUmVmKCk/Lm5hdGl2ZUVsZW1lbnQ7XG5cdFx0XHRpZiAoIXBvaW50cykgcmV0dXJuO1xuXHRcdFx0Y2hlY2tVcGRhdGUocG9pbnRzLmdlb21ldHJ5LmF0dHJpYnV0ZXNbJ3Bvc2l0aW9uJ10pO1xuXHRcdH0pO1xuXG5cdFx0aW5qZWN0QmVmb3JlUmVuZGVyKCgpID0+IHtcblx0XHRcdGNvbnN0IHBvaW50cyA9IHRoaXMucG9pbnRzUmVmKCk/Lm5hdGl2ZUVsZW1lbnQ7XG5cdFx0XHRpZiAoIXBvaW50cykgcmV0dXJuO1xuXG5cdFx0XHRjb25zdCB7IGxpbWl0LCByYW5nZSB9ID0gdGhpcy5vcHRpb25zKCk7XG5cdFx0XHRjb25zdCB7IHBvc2l0aW9ucywgc2l6ZXMsIGNvbG9ycyB9ID0gdGhpcy5idWZmZXJzKCk7XG5cblx0XHRcdHBvaW50cy51cGRhdGVNYXRyaXgoKTtcblx0XHRcdHBvaW50cy51cGRhdGVNYXRyaXhXb3JsZCgpO1xuXHRcdFx0cGFyZW50TWF0cml4LmNvcHkocG9pbnRzLm1hdHJpeFdvcmxkKS5pbnZlcnQoKTtcblxuXHRcdFx0cG9pbnRzLmdlb21ldHJ5LmRyYXdSYW5nZS5jb3VudCA9IE1hdGgubWluKFxuXHRcdFx0XHRsaW1pdCxcblx0XHRcdFx0cmFuZ2UgIT09IHVuZGVmaW5lZCA/IHJhbmdlIDogbGltaXQsXG5cdFx0XHRcdHRoaXMucG9zaXRpb25Qb2ludHMubGVuZ3RoLFxuXHRcdFx0KTtcblxuXHRcdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCB0aGlzLnBvc2l0aW9uUG9pbnRzLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRcdGNvbnN0IHBvc2l0aW9uUG9pbnQgPSByZXNvbHZlUmVmKHRoaXMucG9zaXRpb25Qb2ludHNbaV0pO1xuXHRcdFx0XHRpZiAocG9zaXRpb25Qb2ludCkge1xuXHRcdFx0XHRcdHBvc2l0aW9uUG9pbnQuZ2V0V29ybGRQb3NpdGlvbihwb3NpdGlvbikuYXBwbHlNYXRyaXg0KHBhcmVudE1hdHJpeCk7XG5cdFx0XHRcdFx0cG9zaXRpb24udG9BcnJheShwb3NpdGlvbnMsIGkgKiAzKTtcblx0XHRcdFx0XHRjaGVja1VwZGF0ZShwb2ludHMuZ2VvbWV0cnkuYXR0cmlidXRlc1sncG9zaXRpb24nXSk7XG5cblx0XHRcdFx0XHRwb3NpdGlvblBvaW50Lm1hdHJpeFdvcmxkTmVlZHNVcGRhdGUgPSB0cnVlO1xuXHRcdFx0XHRcdHBvc2l0aW9uUG9pbnQuY29sb3IudG9BcnJheShjb2xvcnMsIGkgKiAzKTtcblx0XHRcdFx0XHRjaGVja1VwZGF0ZShwb2ludHMuZ2VvbWV0cnkuYXR0cmlidXRlc1snY29sb3InXSk7XG5cblx0XHRcdFx0XHRzaXplcy5zZXQoW3Bvc2l0aW9uUG9pbnQuc2l6ZV0sIGkpO1xuXHRcdFx0XHRcdGNoZWNrVXBkYXRlKHBvaW50cy5nZW9tZXRyeS5hdHRyaWJ1dGVzWydzaXplJ10pO1xuXHRcdFx0XHR9XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cblxuXHRzdWJzY3JpYmUocmVmOiBFbGVtZW50UmVmPFBvc2l0aW9uUG9pbnQ+IHwgUG9zaXRpb25Qb2ludCkge1xuXHRcdHRoaXMucG9zaXRpb25Qb2ludHMucHVzaChyZWYpO1xuXHRcdHJldHVybiAoKSA9PiB7XG5cdFx0XHR0aGlzLnBvc2l0aW9uUG9pbnRzID0gdGhpcy5wb3NpdGlvblBvaW50cy5maWx0ZXIoKHApID0+IHAgIT09IHJlZik7XG5cdFx0fTtcblx0fVxuXG5cdHByb3RlY3RlZCByZWFkb25seSBEeW5hbWljRHJhd1VzYWdlID0gRHluYW1pY0RyYXdVc2FnZTtcbn1cbiJdfQ==
|