angular-three-soba 2.0.0-beta.21 → 2.0.0-beta.224
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/controls/orbit-controls/orbit-controls.d.ts +13 -19
- package/esm2022/controls/orbit-controls/orbit-controls.mjs +31 -75
- package/esm2022/loaders/gltf-loader/gltf-loader.mjs +14 -8
- package/esm2022/loaders/loader/loader.mjs +44 -92
- package/esm2022/loaders/progress/progress.mjs +8 -9
- package/esm2022/loaders/texture-loader/texture-loader.mjs +20 -16
- package/fesm2022/angular-three-soba-controls.mjs +30 -74
- package/fesm2022/angular-three-soba-controls.mjs.map +1 -1
- package/fesm2022/angular-three-soba-loaders.mjs +78 -117
- package/fesm2022/angular-three-soba-loaders.mjs.map +1 -1
- package/loaders/gltf-loader/gltf-loader.d.ts +12 -1
- package/loaders/loader/loader.d.ts +8 -21
- package/loaders/texture-loader/texture-loader.d.ts +9 -3
- package/metadata.json +1 -1
- package/package.json +4 -63
- package/web-types.json +1 -1
- package/abstractions/README.md +0 -3
- package/abstractions/billboard/billboard.d.ts +0 -28
- package/abstractions/detailed/detailed.d.ts +0 -26
- package/abstractions/edges/edges.d.ts +0 -34
- package/abstractions/grid/grid.d.ts +0 -50
- package/abstractions/index.d.ts +0 -6
- package/abstractions/text/text.d.ts +0 -82
- package/abstractions/text-3d/text-3d.d.ts +0 -84
- package/assets/distort.vert.glsl +0 -1
- package/cameras/README.md +0 -3
- package/cameras/camera/camera-content.d.ts +0 -13
- package/cameras/camera/camera.d.ts +0 -26
- package/cameras/cube-camera/cube-camera.d.ts +0 -69
- package/cameras/index.d.ts +0 -4
- package/cameras/orthographic-camera/orthographic-camera.d.ts +0 -37
- package/cameras/perspective-camera/perspective-camera.d.ts +0 -18
- package/esm2022/abstractions/angular-three-soba-abstractions.mjs +0 -5
- package/esm2022/abstractions/billboard/billboard.mjs +0 -74
- package/esm2022/abstractions/detailed/detailed.mjs +0 -64
- package/esm2022/abstractions/edges/edges.mjs +0 -88
- package/esm2022/abstractions/grid/grid.mjs +0 -180
- package/esm2022/abstractions/index.mjs +0 -7
- package/esm2022/abstractions/text/text.mjs +0 -274
- package/esm2022/abstractions/text-3d/text-3d.mjs +0 -172
- package/esm2022/cameras/angular-three-soba-cameras.mjs +0 -5
- package/esm2022/cameras/camera/camera-content.mjs +0 -21
- package/esm2022/cameras/camera/camera.mjs +0 -77
- package/esm2022/cameras/cube-camera/cube-camera.mjs +0 -161
- package/esm2022/cameras/index.mjs +0 -5
- package/esm2022/cameras/orthographic-camera/orthographic-camera.mjs +0 -102
- package/esm2022/cameras/perspective-camera/perspective-camera.mjs +0 -46
- package/esm2022/gizmos/angular-three-soba-gizmos.mjs +0 -5
- package/esm2022/gizmos/gizmo-helper/gizmo-helper.mjs +0 -197
- package/esm2022/gizmos/gizmo-helper/gizmo-viewcube/constants.mjs +0 -31
- package/esm2022/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube-edge.mjs +0 -93
- package/esm2022/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube-face.mjs +0 -150
- package/esm2022/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube-input.mjs +0 -66
- package/esm2022/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube.mjs +0 -71
- package/esm2022/gizmos/gizmo-helper/gizmo-viewport/gizmo-viewport-axis.mjs +0 -195
- package/esm2022/gizmos/gizmo-helper/gizmo-viewport/gizmo-viewport.mjs +0 -272
- package/esm2022/gizmos/index.mjs +0 -4
- package/esm2022/materials/angular-three-soba-materials.mjs +0 -5
- package/esm2022/materials/index.mjs +0 -7
- package/esm2022/materials/mesh-distort-material/mesh-distort-material.mjs +0 -82
- package/esm2022/materials/mesh-reflector-material/mesh-reflector-material.mjs +0 -367
- package/esm2022/materials/mesh-refraction-material/mesh-refraction-material.mjs +0 -171
- package/esm2022/materials/mesh-transmission-material/mesh-transmission-material.mjs +0 -278
- package/esm2022/materials/mesh-wobble-material/mesh-wobble-material.mjs +0 -68
- package/esm2022/materials/point-material/point-material.mjs +0 -50
- package/esm2022/misc/angular-three-soba-misc.mjs +0 -5
- package/esm2022/misc/animations/animations.mjs +0 -59
- package/esm2022/misc/bake-shadows/bake-shadows.mjs +0 -24
- package/esm2022/misc/caustics/caustics.mjs +0 -387
- package/esm2022/misc/decal/decal.mjs +0 -187
- package/esm2022/misc/depth-buffer/depth-buffer.mjs +0 -44
- package/esm2022/misc/example/example.mjs +0 -160
- package/esm2022/misc/fbo/fbo.mjs +0 -47
- package/esm2022/misc/html/html-wrapper.mjs +0 -478
- package/esm2022/misc/html/html.mjs +0 -304
- package/esm2022/misc/index.mjs +0 -14
- package/esm2022/misc/sampler/sampler.mjs +0 -142
- package/esm2022/misc/shadow/shadow.mjs +0 -111
- package/esm2022/misc/stats-gl/stats-gl.mjs +0 -61
- package/esm2022/misc/trail/trail.mjs +0 -209
- package/esm2022/misc/trail-texture/inject-trail-texture.mjs +0 -17
- package/esm2022/misc/trail-texture/trail-texture.mjs +0 -106
- package/esm2022/modifiers/angular-three-soba-modifiers.mjs +0 -5
- package/esm2022/modifiers/curve-modifier/curve-modifier.mjs +0 -64
- package/esm2022/modifiers/index.mjs +0 -2
- package/esm2022/performances/adaptive-dpr/adaptive-dpr.mjs +0 -44
- package/esm2022/performances/adaptive-events/adaptive-events.mjs +0 -27
- package/esm2022/performances/angular-three-soba-performances.mjs +0 -5
- package/esm2022/performances/index.mjs +0 -8
- package/esm2022/performances/instances/instances.mjs +0 -220
- package/esm2022/performances/instances/position-mesh.mjs +0 -52
- package/esm2022/performances/points/points-input.mjs +0 -64
- package/esm2022/performances/points/points.mjs +0 -326
- package/esm2022/performances/points/position-point.mjs +0 -54
- package/esm2022/performances/segments/segment-object.mjs +0 -9
- package/esm2022/performances/segments/segments.mjs +0 -182
- package/esm2022/shaders/angular-three-soba-shaders.mjs +0 -5
- package/esm2022/shaders/blur-pass/blur-pass.mjs +0 -61
- package/esm2022/shaders/caustics/caustics-material.mjs +0 -130
- package/esm2022/shaders/caustics/caustics-projection-material.mjs +0 -31
- package/esm2022/shaders/convolution-material/convolution-material.mjs +0 -94
- package/esm2022/shaders/discard-material/discard-material.mjs +0 -3
- package/esm2022/shaders/grid-material/grid-material.mjs +0 -77
- package/esm2022/shaders/index.mjs +0 -18
- package/esm2022/shaders/mesh-distort-material/mesh-distort-material.mjs +0 -56
- package/esm2022/shaders/mesh-reflector-material/mesh-reflector-material.mjs +0 -223
- package/esm2022/shaders/mesh-refraction-material/mesh-refraction-material.mjs +0 -170
- package/esm2022/shaders/mesh-transmission-material/mesh-transmission-material.mjs +0 -268
- package/esm2022/shaders/mesh-wobble-material/mesh-wobble-material.mjs +0 -37
- package/esm2022/shaders/shader-material/shader-material.mjs +0 -34
- package/esm2022/shaders/soft-shadow-material/soft-shadow-material.mjs +0 -25
- package/esm2022/shaders/sparkles-material/sparkles-material.mjs +0 -33
- package/esm2022/shaders/spot-light-material/spot-light-material.mjs +0 -86
- package/esm2022/shaders/star-field-material/star-field-material.mjs +0 -33
- package/esm2022/shaders/wireframe-material/wireframe-material.mjs +0 -247
- package/esm2022/staging/accumulative-shadows/accumulative-shadows.mjs +0 -267
- package/esm2022/staging/accumulative-shadows/progressive-light-map.mjs +0 -108
- package/esm2022/staging/accumulative-shadows/randomized-lights.mjs +0 -206
- package/esm2022/staging/angular-three-soba-staging.mjs +0 -5
- package/esm2022/staging/backdrop/backdrop.mjs +0 -77
- package/esm2022/staging/bb-anchor/bb-anchor.mjs +0 -69
- package/esm2022/staging/bounds/bounds.mjs +0 -308
- package/esm2022/staging/camera-shake/camera-shake.mjs +0 -123
- package/esm2022/staging/center/center.mjs +0 -165
- package/esm2022/staging/cloud/cloud.mjs +0 -158
- package/esm2022/staging/contact-shadows/contact-shadows.mjs +0 -246
- package/esm2022/staging/environment/assets.mjs +0 -13
- package/esm2022/staging/environment/environment-cube.mjs +0 -47
- package/esm2022/staging/environment/environment-ground.mjs +0 -41
- package/esm2022/staging/environment/environment-input.mjs +0 -119
- package/esm2022/staging/environment/environment-map.mjs +0 -53
- package/esm2022/staging/environment/environment-portal.mjs +0 -113
- package/esm2022/staging/environment/environment.mjs +0 -61
- package/esm2022/staging/environment/utils.mjs +0 -106
- package/esm2022/staging/float/float.mjs +0 -94
- package/esm2022/staging/index.mjs +0 -22
- package/esm2022/staging/matcap-texture/matcap-texture.mjs +0 -64
- package/esm2022/staging/normal-texture/normal-texture.mjs +0 -53
- package/esm2022/staging/sky/sky.mjs +0 -119
- package/esm2022/staging/sparkles/sparkles.mjs +0 -164
- package/esm2022/staging/spot-light/shadow-mesh-input.mjs +0 -63
- package/esm2022/staging/spot-light/shadow-mesh.mjs +0 -266
- package/esm2022/staging/spot-light/spot-light-input.mjs +0 -84
- package/esm2022/staging/spot-light/spot-light.mjs +0 -81
- package/esm2022/staging/spot-light/volumetric-mesh.mjs +0 -98
- package/esm2022/staging/stage/stage.mjs +0 -389
- package/esm2022/staging/stars/stars.mjs +0 -147
- package/esm2022/staging/wireframe/wireframe-input.mjs +0 -191
- package/esm2022/staging/wireframe/wireframe.mjs +0 -228
- package/esm2022/utils/angular-three-soba-utils.mjs +0 -5
- package/esm2022/utils/content/content.mjs +0 -15
- package/esm2022/utils/index.mjs +0 -2
- package/fesm2022/angular-three-soba-abstractions.mjs +0 -838
- package/fesm2022/angular-three-soba-abstractions.mjs.map +0 -1
- package/fesm2022/angular-three-soba-cameras.mjs +0 -394
- package/fesm2022/angular-three-soba-cameras.mjs.map +0 -1
- package/fesm2022/angular-three-soba-gizmos.mjs +0 -1043
- package/fesm2022/angular-three-soba-gizmos.mjs.map +0 -1
- package/fesm2022/angular-three-soba-materials.mjs +0 -1001
- package/fesm2022/angular-three-soba-materials.mjs.map +0 -1
- package/fesm2022/angular-three-soba-misc.mjs +0 -2278
- package/fesm2022/angular-three-soba-misc.mjs.map +0 -1
- package/fesm2022/angular-three-soba-modifiers.mjs +0 -71
- package/fesm2022/angular-three-soba-modifiers.mjs.map +0 -1
- package/fesm2022/angular-three-soba-performances.mjs +0 -956
- package/fesm2022/angular-three-soba-performances.mjs.map +0 -1
- package/fesm2022/angular-three-soba-shaders.mjs +0 -1589
- package/fesm2022/angular-three-soba-shaders.mjs.map +0 -1
- package/fesm2022/angular-three-soba-staging.mjs +0 -4162
- package/fesm2022/angular-three-soba-staging.mjs.map +0 -1
- package/fesm2022/angular-three-soba-utils.mjs +0 -22
- package/fesm2022/angular-three-soba-utils.mjs.map +0 -1
- package/gizmos/README.md +0 -3
- package/gizmos/gizmo-helper/gizmo-helper.d.ts +0 -69
- package/gizmos/gizmo-helper/gizmo-viewcube/constants.d.ts +0 -12
- package/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube-edge.d.ts +0 -22
- package/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube-face.d.ts +0 -29
- package/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube-input.d.ts +0 -33
- package/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube.d.ts +0 -10
- package/gizmos/gizmo-helper/gizmo-viewport/gizmo-viewport-axis.d.ts +0 -40
- package/gizmos/gizmo-helper/gizmo-viewport/gizmo-viewport.d.ts +0 -30
- package/gizmos/index.d.ts +0 -3
- package/materials/README.md +0 -3
- package/materials/index.d.ts +0 -6
- package/materials/mesh-distort-material/mesh-distort-material.d.ts +0 -40
- package/materials/mesh-reflector-material/mesh-reflector-material.d.ts +0 -99
- package/materials/mesh-refraction-material/mesh-refraction-material.d.ts +0 -62
- package/materials/mesh-transmission-material/mesh-transmission-material.d.ts +0 -107
- package/materials/mesh-wobble-material/mesh-wobble-material.d.ts +0 -29
- package/materials/point-material/point-material.d.ts +0 -24
- package/misc/README.md +0 -3
- package/misc/animations/animations.d.ts +0 -15
- package/misc/bake-shadows/bake-shadows.d.ts +0 -6
- package/misc/caustics/caustics.d.ts +0 -87
- package/misc/decal/decal.d.ts +0 -49
- package/misc/depth-buffer/depth-buffer.d.ts +0 -9
- package/misc/example/example.d.ts +0 -81
- package/misc/fbo/fbo.d.ts +0 -17
- package/misc/html/html-wrapper.d.ts +0 -559
- package/misc/html/html.d.ts +0 -214
- package/misc/index.d.ts +0 -13
- package/misc/sampler/sampler.d.ts +0 -67
- package/misc/shadow/shadow.d.ts +0 -37
- package/misc/stats-gl/stats-gl.d.ts +0 -24
- package/misc/trail/trail.d.ts +0 -57
- package/misc/trail-texture/inject-trail-texture.d.ts +0 -9
- package/misc/trail-texture/trail-texture.d.ts +0 -50
- package/modifiers/README.md +0 -3
- package/modifiers/curve-modifier/curve-modifier.d.ts +0 -23
- package/modifiers/index.d.ts +0 -1
- package/performances/README.md +0 -3
- package/performances/adaptive-dpr/adaptive-dpr.d.ts +0 -14
- package/performances/adaptive-events/adaptive-events.d.ts +0 -9
- package/performances/index.d.ts +0 -7
- package/performances/instances/instances.d.ts +0 -79
- package/performances/instances/position-mesh.d.ts +0 -10
- package/performances/points/points-input.d.ts +0 -32
- package/performances/points/points.d.ts +0 -92
- package/performances/points/position-point.d.ts +0 -11
- package/performances/segments/segment-object.d.ts +0 -7
- package/performances/segments/segments.d.ts +0 -124
- package/shaders/README.md +0 -3
- package/shaders/blur-pass/blur-pass.d.ts +0 -23
- package/shaders/caustics/caustics-material.d.ts +0 -4
- package/shaders/caustics/caustics-projection-material.d.ts +0 -4
- package/shaders/convolution-material/convolution-material.d.ts +0 -7
- package/shaders/discard-material/discard-material.d.ts +0 -3
- package/shaders/grid-material/grid-material.d.ts +0 -37
- package/shaders/index.d.ts +0 -17
- package/shaders/mesh-distort-material/mesh-distort-material.d.ts +0 -295
- package/shaders/mesh-reflector-material/mesh-reflector-material.d.ts +0 -50
- package/shaders/mesh-refraction-material/mesh-refraction-material.d.ts +0 -4
- package/shaders/mesh-transmission-material/mesh-transmission-material.d.ts +0 -25
- package/shaders/mesh-wobble-material/mesh-wobble-material.d.ts +0 -16
- package/shaders/shader-material/shader-material.d.ts +0 -6
- package/shaders/soft-shadow-material/soft-shadow-material.d.ts +0 -19
- package/shaders/sparkles-material/sparkles-material.d.ts +0 -17
- package/shaders/spot-light-material/spot-light-material.d.ts +0 -13
- package/shaders/star-field-material/star-field-material.d.ts +0 -13
- package/shaders/wireframe-material/wireframe-material.d.ts +0 -58
- package/staging/README.md +0 -3
- package/staging/accumulative-shadows/accumulative-shadows.d.ts +0 -146
- package/staging/accumulative-shadows/progressive-light-map.d.ts +0 -34
- package/staging/accumulative-shadows/randomized-lights.d.ts +0 -90
- package/staging/backdrop/backdrop.d.ts +0 -30
- package/staging/bb-anchor/bb-anchor.d.ts +0 -27
- package/staging/bounds/bounds.d.ts +0 -134
- package/staging/camera-shake/camera-shake.d.ts +0 -43
- package/staging/center/center.d.ts +0 -70
- package/staging/cloud/cloud.d.ts +0 -51
- package/staging/contact-shadows/contact-shadows.d.ts +0 -70
- package/staging/environment/assets.d.ts +0 -13
- package/staging/environment/environment-cube.d.ts +0 -15
- package/staging/environment/environment-ground.d.ts +0 -13
- package/staging/environment/environment-input.d.ts +0 -68
- package/staging/environment/environment-map.d.ts +0 -16
- package/staging/environment/environment-portal.d.ts +0 -18
- package/staging/environment/environment.d.ts +0 -8
- package/staging/environment/utils.d.ts +0 -7
- package/staging/float/float.d.ts +0 -31
- package/staging/index.d.ts +0 -21
- package/staging/matcap-texture/matcap-texture.d.ts +0 -13
- package/staging/normal-texture/normal-texture.d.ts +0 -16
- package/staging/sky/sky.d.ts +0 -48
- package/staging/sparkles/sparkles.d.ts +0 -63
- package/staging/spot-light/shadow-mesh-input.d.ts +0 -29
- package/staging/spot-light/shadow-mesh.d.ts +0 -37
- package/staging/spot-light/spot-light-input.d.ts +0 -38
- package/staging/spot-light/spot-light.d.ts +0 -39
- package/staging/spot-light/volumetric-mesh.d.ts +0 -24
- package/staging/stage/stage.d.ts +0 -130
- package/staging/stars/stars.d.ts +0 -45
- package/staging/wireframe/wireframe-input.d.ts +0 -65
- package/staging/wireframe/wireframe.d.ts +0 -28
- package/utils/README.md +0 -3
- package/utils/content/content.d.ts +0 -8
- package/utils/index.d.ts +0 -1
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { EventEmitter } from '@angular/core';
|
|
2
2
|
import { type NgtVector3 } from 'angular-three';
|
|
3
|
+
import type * as THREE from 'three';
|
|
3
4
|
import { OrbitControls } from 'three-stdlib';
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
5
|
-
export
|
|
6
|
+
export interface NgtsOrbitControlsState {
|
|
6
7
|
camera?: THREE.Camera;
|
|
7
8
|
domElement?: HTMLElement;
|
|
8
9
|
target?: NgtVector3;
|
|
@@ -10,7 +11,7 @@ export type NgtsOrbitControlsState = {
|
|
|
10
11
|
regress: boolean;
|
|
11
12
|
enableDamping: boolean;
|
|
12
13
|
keyEvents: boolean | HTMLElement;
|
|
13
|
-
}
|
|
14
|
+
}
|
|
14
15
|
declare global {
|
|
15
16
|
interface HTMLElementTagNameMap {
|
|
16
17
|
/**
|
|
@@ -20,35 +21,28 @@ declare global {
|
|
|
20
21
|
}
|
|
21
22
|
}
|
|
22
23
|
export declare class NgtsOrbitControls {
|
|
23
|
-
|
|
24
|
-
controlsRef: import("angular-three").NgtInjectedRef<OrbitControls
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
set _regress(regress: boolean);
|
|
29
|
-
set _target(target: THREE.Vector3 | Parameters<THREE.Vector3['set']>);
|
|
30
|
-
set _enableDamping(enableDamping: boolean);
|
|
31
|
-
set _keyEvents(keyEvents: boolean);
|
|
32
|
-
change: EventEmitter<import("three").Event>;
|
|
33
|
-
start: EventEmitter<import("three").Event>;
|
|
34
|
-
end: EventEmitter<import("three").Event>;
|
|
24
|
+
options: import("@angular/core").InputSignal<Partial<NgtsOrbitControlsState>>;
|
|
25
|
+
controlsRef: import("@angular/core").InputSignal<import("angular-three").NgtInjectedRef<OrbitControls>>;
|
|
26
|
+
change: EventEmitter<THREE.Event<string, unknown>>;
|
|
27
|
+
start: EventEmitter<THREE.Event<string, unknown>>;
|
|
28
|
+
end: EventEmitter<THREE.Event<string, unknown>>;
|
|
35
29
|
private store;
|
|
36
30
|
private invalidate;
|
|
37
31
|
private performanceRegress;
|
|
38
32
|
private defaultCamera;
|
|
39
33
|
private glDomElement;
|
|
40
|
-
private regress;
|
|
41
34
|
private camera;
|
|
42
|
-
private
|
|
35
|
+
private regress;
|
|
43
36
|
private keyEvents;
|
|
37
|
+
private domElement;
|
|
44
38
|
private makeDefault;
|
|
45
|
-
args: import("@angular/core").Signal<OrbitControls[]>;
|
|
46
|
-
enableDamping: import("@angular/core").Signal<boolean>;
|
|
39
|
+
protected args: import("@angular/core").Signal<OrbitControls[]>;
|
|
40
|
+
protected enableDamping: import("@angular/core").Signal<boolean | undefined>;
|
|
47
41
|
constructor();
|
|
48
42
|
private setControls;
|
|
49
43
|
private connectElement;
|
|
50
44
|
private makeControlsDefault;
|
|
51
45
|
private setEvents;
|
|
52
46
|
static ɵfac: i0.ɵɵFactoryDeclaration<NgtsOrbitControls, never>;
|
|
53
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<NgtsOrbitControls, "ngts-orbit-controls", never, { "
|
|
47
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgtsOrbitControls, "ngts-orbit-controls", never, { "options": { "alias": "options"; "required": false; "isSignal": true; }; "controlsRef": { "alias": "controlsRef"; "required": false; "isSignal": true; }; }, { "change": "change"; "start": "start"; "end": "end"; }, never, ["*"], true, never>;
|
|
54
48
|
}
|
|
@@ -1,37 +1,16 @@
|
|
|
1
|
-
import { Component, computed, CUSTOM_ELEMENTS_SCHEMA, effect, EventEmitter,
|
|
2
|
-
import { injectBeforeRender, injectNgtRef, injectNgtStore, NgtArgs,
|
|
1
|
+
import { Component, computed, CUSTOM_ELEMENTS_SCHEMA, effect, EventEmitter, input, Output } from '@angular/core';
|
|
2
|
+
import { injectBeforeRender, injectNgtRef, injectNgtStore, NgtArgs, } from 'angular-three';
|
|
3
3
|
import { OrbitControls } from 'three-stdlib';
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
export class NgtsOrbitControls {
|
|
6
|
-
set _camera(camera) {
|
|
7
|
-
this.inputs.set({ camera });
|
|
8
|
-
}
|
|
9
|
-
set _domElement(domElement) {
|
|
10
|
-
this.inputs.set({ domElement });
|
|
11
|
-
}
|
|
12
|
-
set _makeDefault(makeDefault) {
|
|
13
|
-
this.inputs.set({ makeDefault });
|
|
14
|
-
}
|
|
15
|
-
set _regress(regress) {
|
|
16
|
-
this.inputs.set({ regress });
|
|
17
|
-
}
|
|
18
|
-
set _target(target) {
|
|
19
|
-
this.inputs.set({ target });
|
|
20
|
-
}
|
|
21
|
-
set _enableDamping(enableDamping) {
|
|
22
|
-
this.inputs.set({ enableDamping });
|
|
23
|
-
}
|
|
24
|
-
set _keyEvents(keyEvents) {
|
|
25
|
-
this.inputs.set({ keyEvents });
|
|
26
|
-
}
|
|
27
6
|
constructor() {
|
|
28
|
-
this.
|
|
7
|
+
this.options = input({
|
|
29
8
|
enableDamping: true,
|
|
30
9
|
regress: false,
|
|
31
10
|
makeDefault: false,
|
|
32
11
|
keyEvents: false,
|
|
33
12
|
});
|
|
34
|
-
this.controlsRef = injectNgtRef();
|
|
13
|
+
this.controlsRef = input(injectNgtRef());
|
|
35
14
|
this.change = new EventEmitter();
|
|
36
15
|
this.start = new EventEmitter();
|
|
37
16
|
this.end = new EventEmitter();
|
|
@@ -40,16 +19,16 @@ export class NgtsOrbitControls {
|
|
|
40
19
|
this.performanceRegress = this.store.select('performance', 'regress');
|
|
41
20
|
this.defaultCamera = this.store.select('camera');
|
|
42
21
|
this.glDomElement = this.store.select('gl', 'domElement');
|
|
43
|
-
this.
|
|
44
|
-
this.
|
|
45
|
-
this.
|
|
46
|
-
this.
|
|
47
|
-
this.makeDefault = this.
|
|
48
|
-
this.args = computed(() => [this.controlsRef.nativeElement]);
|
|
49
|
-
this.enableDamping = this.
|
|
22
|
+
this.camera = computed(() => this.options().camera);
|
|
23
|
+
this.regress = computed(() => this.options().regress);
|
|
24
|
+
this.keyEvents = computed(() => this.options().keyEvents);
|
|
25
|
+
this.domElement = computed(() => this.options().domElement);
|
|
26
|
+
this.makeDefault = computed(() => this.options().makeDefault);
|
|
27
|
+
this.args = computed(() => [this.controlsRef().nativeElement]);
|
|
28
|
+
this.enableDamping = computed(() => this.options().enableDamping);
|
|
50
29
|
injectBeforeRender(() => {
|
|
51
|
-
const controls = this.controlsRef.nativeElement;
|
|
52
|
-
if (controls
|
|
30
|
+
const controls = this.controlsRef().nativeElement;
|
|
31
|
+
if (controls?.enabled) {
|
|
53
32
|
controls.update();
|
|
54
33
|
}
|
|
55
34
|
}, { priority: -1 });
|
|
@@ -60,14 +39,10 @@ export class NgtsOrbitControls {
|
|
|
60
39
|
}
|
|
61
40
|
setControls() {
|
|
62
41
|
effect(() => {
|
|
63
|
-
const [camera, defaultCamera, controls] = [
|
|
64
|
-
this.camera(),
|
|
65
|
-
this.defaultCamera(),
|
|
66
|
-
this.controlsRef.nativeElement,
|
|
67
|
-
];
|
|
42
|
+
const [camera, defaultCamera, controls] = [this.camera(), this.defaultCamera(), this.controlsRef().nativeElement];
|
|
68
43
|
const controlsCamera = camera || defaultCamera;
|
|
69
44
|
if (!controls || controls.object !== controlsCamera) {
|
|
70
|
-
this.controlsRef.nativeElement = new OrbitControls(controlsCamera);
|
|
45
|
+
this.controlsRef().nativeElement = new OrbitControls(controlsCamera);
|
|
71
46
|
}
|
|
72
47
|
});
|
|
73
48
|
}
|
|
@@ -76,7 +51,7 @@ export class NgtsOrbitControls {
|
|
|
76
51
|
const [keyEvents, domElement, controls] = [
|
|
77
52
|
this.keyEvents(),
|
|
78
53
|
this.domElement() || this.store.get('events', 'connected') || this.glDomElement(),
|
|
79
|
-
this.controlsRef.nativeElement,
|
|
54
|
+
this.controlsRef().nativeElement,
|
|
80
55
|
this.invalidate(),
|
|
81
56
|
this.regress(),
|
|
82
57
|
];
|
|
@@ -93,20 +68,20 @@ export class NgtsOrbitControls {
|
|
|
93
68
|
}
|
|
94
69
|
makeControlsDefault() {
|
|
95
70
|
effect((onCleanup) => {
|
|
96
|
-
const [controls, makeDefault] = [this.controlsRef.nativeElement, this.makeDefault()];
|
|
71
|
+
const [controls, makeDefault] = [this.controlsRef().nativeElement, this.makeDefault()];
|
|
97
72
|
if (!controls)
|
|
98
73
|
return;
|
|
99
74
|
if (makeDefault) {
|
|
100
75
|
const oldControls = this.store.get('controls');
|
|
101
|
-
this.store.
|
|
102
|
-
onCleanup(() => void this.store.
|
|
76
|
+
this.store.update({ controls });
|
|
77
|
+
onCleanup(() => void this.store.update({ controls: oldControls }));
|
|
103
78
|
}
|
|
104
79
|
});
|
|
105
80
|
}
|
|
106
81
|
setEvents() {
|
|
107
82
|
effect((onCleanup) => {
|
|
108
83
|
const [controls, invalidate, performanceRegress, regress] = [
|
|
109
|
-
this.controlsRef.nativeElement,
|
|
84
|
+
this.controlsRef().nativeElement,
|
|
110
85
|
this.invalidate(),
|
|
111
86
|
this.performanceRegress(),
|
|
112
87
|
this.regress(),
|
|
@@ -136,50 +111,31 @@ export class NgtsOrbitControls {
|
|
|
136
111
|
});
|
|
137
112
|
});
|
|
138
113
|
}
|
|
139
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
140
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
141
|
-
<ngt-primitive *args="args()"
|
|
114
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: NgtsOrbitControls, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
115
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "17.3.9", type: NgtsOrbitControls, isStandalone: true, selector: "ngts-orbit-controls", inputs: { options: { classPropertyName: "options", publicName: "options", isSignal: true, isRequired: false, transformFunction: null }, controlsRef: { classPropertyName: "controlsRef", publicName: "controlsRef", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { change: "change", start: "start", end: "end" }, ngImport: i0, template: `
|
|
116
|
+
<ngt-primitive ngtCompound *args="args()" [enableDamping]="enableDamping()">
|
|
117
|
+
<ng-content />
|
|
118
|
+
</ngt-primitive>
|
|
142
119
|
`, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }] }); }
|
|
143
120
|
}
|
|
144
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
121
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: NgtsOrbitControls, decorators: [{
|
|
145
122
|
type: Component,
|
|
146
123
|
args: [{
|
|
147
124
|
selector: 'ngts-orbit-controls',
|
|
148
125
|
standalone: true,
|
|
149
126
|
template: `
|
|
150
|
-
<ngt-primitive *args="args()"
|
|
127
|
+
<ngt-primitive ngtCompound *args="args()" [enableDamping]="enableDamping()">
|
|
128
|
+
<ng-content />
|
|
129
|
+
</ngt-primitive>
|
|
151
130
|
`,
|
|
152
131
|
imports: [NgtArgs],
|
|
153
132
|
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
154
133
|
}]
|
|
155
|
-
}], ctorParameters:
|
|
156
|
-
type: Input
|
|
157
|
-
}], _camera: [{
|
|
158
|
-
type: Input,
|
|
159
|
-
args: [{ alias: 'camera' }]
|
|
160
|
-
}], _domElement: [{
|
|
161
|
-
type: Input,
|
|
162
|
-
args: [{ alias: 'domElement' }]
|
|
163
|
-
}], _makeDefault: [{
|
|
164
|
-
type: Input,
|
|
165
|
-
args: [{ alias: 'makeDefault' }]
|
|
166
|
-
}], _regress: [{
|
|
167
|
-
type: Input,
|
|
168
|
-
args: [{ alias: 'regress' }]
|
|
169
|
-
}], _target: [{
|
|
170
|
-
type: Input,
|
|
171
|
-
args: [{ alias: 'target' }]
|
|
172
|
-
}], _enableDamping: [{
|
|
173
|
-
type: Input,
|
|
174
|
-
args: [{ alias: 'enableDamping' }]
|
|
175
|
-
}], _keyEvents: [{
|
|
176
|
-
type: Input,
|
|
177
|
-
args: [{ alias: 'keyEvents' }]
|
|
178
|
-
}], change: [{
|
|
134
|
+
}], ctorParameters: () => [], propDecorators: { change: [{
|
|
179
135
|
type: Output
|
|
180
136
|
}], start: [{
|
|
181
137
|
type: Output
|
|
182
138
|
}], end: [{
|
|
183
139
|
type: Output
|
|
184
140
|
}] } });
|
|
185
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JiaXQtY29udHJvbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NvYmEvY29udHJvbHMvc3JjL29yYml0LWNvbnRyb2xzL29yYml0LWNvbnRyb2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSCxPQUFPLEVBQ04sa0JBQWtCLEVBQ2xCLFlBQVksRUFDWixjQUFjLEVBQ2QsT0FBTyxFQUNQLFdBQVcsR0FHWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDOztBQThCN0MsTUFBTSxPQUFPLGlCQUFpQjtJQVU3QixJQUFnQyxPQUFPLENBQUMsTUFBb0I7UUFDM0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFvQyxXQUFXLENBQUMsVUFBdUI7UUFDdEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFxQyxZQUFZLENBQUMsV0FBb0I7UUFDckUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFpQyxRQUFRLENBQUMsT0FBZ0I7UUFDekQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFnQyxPQUFPLENBQUMsTUFBd0Q7UUFDL0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxD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QUFDLHNCQUFzQixDQUFDO2lCQUNqQzswRUFTUyxXQUFXO3NCQUFuQixLQUFLO2dCQUUwQixPQUFPO3NCQUF0QyxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTtnQkFJVSxXQUFXO3NCQUE5QyxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRTtnQkFJTyxZQUFZO3NCQUFoRCxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLGFBQWEsRUFBRTtnQkFJRSxRQUFRO3NCQUF4QyxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRTtnQkFJSyxPQUFPO3NCQUF0QyxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLFFBQVEsRUFBRTtnQkFJYSxjQUFjO3NCQUFwRCxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLGVBQWUsRUFBRTtnQkFJRSxVQUFVO3NCQUE1QyxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRTtnQkFJbkIsTUFBTTtzQkFBZixNQUFNO2dCQUNHLEtBQUs7c0JBQWQsTUFBTTtnQkFDRyxHQUFHO3NCQUFaLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGNvbXB1dGVkLCBDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBlZmZlY3QsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcblx0aW5qZWN0QmVmb3JlUmVuZGVyLFxuXHRpbmplY3ROZ3RSZWYsXG5cdGluamVjdE5ndFN0b3JlLFxuXHROZ3RBcmdzLFxuXHRzaWduYWxTdG9yZSxcblx0dHlwZSBOZ3RDYW1lcmEsXG5cdHR5cGUgTmd0VmVjdG9yMyxcbn0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBPcmJpdENvbnRyb2xzIH0gZnJvbSAndGhyZWUtc3RkbGliJztcblxuZXhwb3J0IHR5cGUgTmd0c09yYml0Q29udHJvbHNTdGF0ZSA9IHtcblx0Y2FtZXJhPzogVEhSRUUuQ2FtZXJhO1xuXHRkb21FbGVtZW50PzogSFRNTEVsZW1lbnQ7XG5cdHRhcmdldD86IE5ndFZlY3RvcjM7XG5cdG1ha2VEZWZhdWx0OiBib29sZWFuO1xuXHRyZWdyZXNzOiBib29sZWFuO1xuXHRlbmFibGVEYW1waW5nOiBib29sZWFuO1xuXHRrZXlFdmVudHM6IGJvb2xlYW4gfCBIVE1MRWxlbWVudDtcbn07XG5cbmRlY2xhcmUgZ2xvYmFsIHtcblx0aW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG5cdFx0LyoqXG5cdFx0ICogQGV4dGVuZHMgdGhyZWUtc3RkbGlifE9yYml0Q29udHJvbHNcblx0XHQgKi9cblx0XHQnbmd0cy1vcmJpdC1jb250cm9scyc6IE9yYml0Q29udHJvbHMgJiBOZ3RzT3JiaXRDb250cm9sc1N0YXRlO1xuXHR9XG59XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25ndHMtb3JiaXQtY29udHJvbHMnLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdDxuZ3QtcHJpbWl0aXZlICphcmdzPVwiYXJncygpXCIgbmd0Q29tcG91bmQgW2VuYWJsZURhbXBpbmddPVwiZW5hYmxlRGFtcGluZygpXCIgLz5cblx0YCxcblx0aW1wb3J0czogW05ndEFyZ3NdLFxuXHRzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG59KVxuZXhwb3J0IGNsYXNzIE5ndHNPcmJpdENvbnRyb2xzIHtcblx0cHJpdmF0ZSBpbnB1dHMgPSBzaWduYWxTdG9yZTxOZ3RzT3JiaXRDb250cm9sc1N0YXRlPih7XG5cdFx0ZW5hYmxlRGFtcGluZzogdHJ1ZSxcblx0XHRyZWdyZXNzOiBmYWxzZSxcblx0XHRtYWtlRGVmYXVsdDogZmFsc2UsXG5cdFx0a2V5RXZlbnRzOiBmYWxzZSxcblx0fSk7XG5cblx0QElucHV0KCkgY29udHJvbHNSZWYgPSBpbmplY3ROZ3RSZWY8T3JiaXRDb250cm9scz4oKTtcblxuXHRASW5wdXQoeyBhbGlhczogJ2NhbWVyYScgfSkgc2V0IF9jYW1lcmEoY2FtZXJhOiBUSFJFRS5DYW1lcmEpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBjYW1lcmEgfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ2RvbUVsZW1lbnQnIH0pIHNldCBfZG9tRWxlbWVudChkb21FbGVtZW50OiBIVE1MRWxlbWVudCkge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IGRvbUVsZW1lbnQgfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ21ha2VEZWZhdWx0JyB9KSBzZXQgX21ha2VEZWZhdWx0KG1ha2VEZWZhdWx0OiBib29sZWFuKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgbWFrZURlZmF1bHQgfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ3JlZ3Jlc3MnIH0pIHNldCBfcmVncmVzcyhyZWdyZXNzOiBib29sZWFuKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgcmVncmVzcyB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAndGFyZ2V0JyB9KSBzZXQgX3RhcmdldCh0YXJnZXQ6IFRIUkVFLlZlY3RvcjMgfCBQYXJhbWV0ZXJzPFRIUkVFLlZlY3RvcjNbJ3NldCddPikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IHRhcmdldCB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAnZW5hYmxlRGFtcGluZycgfSkgc2V0IF9lbmFibGVEYW1waW5nKGVuYWJsZURhbXBpbmc6IGJvb2xlYW4pIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBlbmFibGVEYW1waW5nIH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdrZXlFdmVudHMnIH0pIHNldCBfa2V5RXZlbnRzKGtleUV2ZW50czogYm9vbGVhbikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IGtleUV2ZW50cyB9KTtcblx0fVxuXG5cdEBPdXRwdXQoKSBjaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPFRIUkVFLkV2ZW50PigpO1xuXHRAT3V0cHV0KCkgc3RhcnQgPSBuZXcgRXZlbnRFbWl0dGVyPFRIUkVFLkV2ZW50PigpO1xuXHRAT3V0cHV0KCkgZW5kID0gbmV3IEV2ZW50RW1pdHRlcjxUSFJFRS5FdmVudD4oKTtcblxuXHRwcml2YXRlIHN0b3JlID0gaW5qZWN0Tmd0U3RvcmUoKTtcblx0cHJpdmF0ZSBpbnZhbGlkYXRlID0gdGhpcy5zdG9yZS5zZWxlY3QoJ2ludmFsaWRhdGUnKTtcblx0cHJpdmF0ZSBwZXJmb3JtYW5jZVJlZ3Jlc3MgPSB0aGlzLnN0b3JlLnNlbGVjdCgncGVyZm9ybWFuY2UnLCAncmVncmVzcycpO1xuXHRwcml2YXRlIGRlZmF1bHRDYW1lcmEgPSB0aGlzLnN0b3JlLnNlbGVjdCgnY2FtZXJhJyk7XG5cdHByaXZhdGUgZ2xEb21FbGVtZW50ID0gdGhpcy5zdG9yZS5zZWxlY3QoJ2dsJywgJ2RvbUVsZW1lbnQnKTtcblx0cHJpdmF0ZSByZWdyZXNzID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdyZWdyZXNzJyk7XG5cdHByaXZhdGUgY2FtZXJhID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdjYW1lcmEnKTtcblx0cHJpdmF0ZSBkb21FbGVtZW50ID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdkb21FbGVtZW50Jyk7XG5cdHByaXZhdGUga2V5RXZlbnRzID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdrZXlFdmVudHMnKTtcblx0cHJpdmF0ZSBtYWtlRGVmYXVsdCA9IHRoaXMuaW5wdXRzLnNlbGVjdCgnbWFrZURlZmF1bHQnKTtcblxuXHRhcmdzID0gY29tcHV0ZWQoKCkgPT4gW3RoaXMuY29udHJvbHNSZWYubmF0aXZlRWxlbWVudF0pO1xuXHRlbmFibGVEYW1waW5nID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdlbmFibGVEYW1waW5nJyk7XG5cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0aW5qZWN0QmVmb3JlUmVuZGVyKFxuXHRcdFx0KCkgPT4ge1xuXHRcdFx0XHRjb25zdCBjb250cm9scyA9IHRoaXMuY29udHJvbHNSZWYubmF0aXZlRWxlbWVudDtcblx0XHRcdFx0aWYgKGNvbnRyb2xzICYmIGNvbnRyb2xzLmVuYWJsZWQpIHtcblx0XHRcdFx0XHRjb250cm9scy51cGRhdGUoKTtcblx0XHRcdFx0fVxuXHRcdFx0fSxcblx0XHRcdHsgcHJpb3JpdHk6IC0xIH0sXG5cdFx0KTtcblxuXHRcdHRoaXMuc2V0Q29udHJvbHMoKTtcblx0XHR0aGlzLmNvbm5lY3RFbGVtZW50KCk7XG5cdFx0dGhpcy5tYWtlQ29udHJvbHNEZWZhdWx0KCk7XG5cdFx0dGhpcy5zZXRFdmVudHMoKTtcblx0fVxuXG5cdHByaXZhdGUgc2V0Q29udHJvbHMoKSB7XG5cdFx0ZWZmZWN0KCgpID0+IHtcblx0XHRcdGNvbnN0IFtjYW1lcmEsIGRlZmF1bHRDYW1lcmEsIGNvbnRyb2xzXSA9IFtcblx0XHRcdFx0dGhpcy5jYW1lcmEoKSxcblx0XHRcdFx0dGhpcy5kZWZhdWx0Q2FtZXJhKCksXG5cdFx0XHRcdHRoaXMuY29udHJvbHNSZWYubmF0aXZlRWxlbWVudCxcblx0XHRcdF07XG5cdFx0XHRjb25zdCBjb250cm9sc0NhbWVyYSA9IGNhbWVyYSB8fCBkZWZhdWx0Q2FtZXJhO1xuXHRcdFx0aWYgKCFjb250cm9scyB8fCBjb250cm9scy5vYmplY3QgIT09IGNvbnRyb2xzQ2FtZXJhKSB7XG5cdFx0XHRcdHRoaXMuY29udHJvbHNSZWYubmF0aXZlRWxlbWVudCA9IG5ldyBPcmJpdENvbnRyb2xzKGNvbnRyb2xzQ2FtZXJhIGFzIE5ndENhbWVyYSk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cblxuXHRwcml2YXRlIGNvbm5lY3RFbGVtZW50KCkge1xuXHRcdGVmZmVjdCgob25DbGVhbnVwKSA9PiB7XG5cdFx0XHRjb25zdCBba2V5RXZlbnRzLCBkb21FbGVtZW50LCBjb250cm9sc10gPSBbXG5cdFx0XHRcdHRoaXMua2V5RXZlbnRzKCksXG5cdFx0XHRcdHRoaXMuZG9tRWxlbWVudCgpIHx8IHRoaXMuc3RvcmUuZ2V0KCdldmVudHMnLCAnY29ubmVjdGVkJykgfHwgdGhpcy5nbERvbUVsZW1lbnQoKSxcblx0XHRcdFx0dGhpcy5jb250cm9sc1JlZi5uYXRpdmVFbGVtZW50LFxuXHRcdFx0XHR0aGlzLmludmFsaWRhdGUoKSxcblx0XHRcdFx0dGhpcy5yZWdyZXNzKCksXG5cdFx0XHRdO1xuXHRcdFx0aWYgKCFjb250cm9scykgcmV0dXJuO1xuXHRcdFx0aWYgKGtleUV2ZW50cykge1xuXHRcdFx0XHRjb250cm9scy5jb25uZWN0KGtleUV2ZW50cyA9PT0gdHJ1ZSA/IGRvbUVsZW1lbnQgOiBrZXlFdmVudHMpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0Y29udHJvbHMuY29ubmVjdChkb21FbGVtZW50KTtcblx0XHRcdH1cblx0XHRcdG9uQ2xlYW51cCgoKSA9PiB2b2lkIGNvbnRyb2xzLmRpc3Bvc2UoKSk7XG5cdFx0fSk7XG5cdH1cblxuXHRwcml2YXRlIG1ha2VDb250cm9sc0RlZmF1bHQoKSB7XG5cdFx0ZWZmZWN0KChvbkNsZWFudXApID0+IHtcblx0XHRcdGNvbnN0IFtjb250cm9scywgbWFrZURlZmF1bHRdID0gW3RoaXMuY29udHJvbHNSZWYubmF0aXZlRWxlbWVudCwgdGhpcy5tYWtlRGVmYXVsdCgpXTtcblx0XHRcdGlmICghY29udHJvbHMpIHJldHVybjtcblx0XHRcdGlmIChtYWtlRGVmYXVsdCkge1xuXHRcdFx0XHRjb25zdCBvbGRDb250cm9scyA9IHRoaXMuc3RvcmUuZ2V0KCdjb250cm9scycpO1xuXHRcdFx0XHR0aGlzLnN0b3JlLnNldCh7IGNvbnRyb2xzIH0pO1xuXHRcdFx0XHRvbkNsZWFudXAoKCkgPT4gdm9pZCB0aGlzLnN0b3JlLnNldCh7IGNvbnRyb2xzOiBvbGRDb250cm9scyB9KSk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdH1cblxuXHRwcml2YXRlIHNldEV2ZW50cygpIHtcblx0XHRlZmZlY3QoKG9uQ2xlYW51cCkgPT4ge1xuXHRcdFx0Y29uc3QgW2NvbnRyb2xzLCBpbnZhbGlkYXRlLCBwZXJmb3JtYW5jZVJlZ3Jlc3MsIHJlZ3Jlc3NdID0gW1xuXHRcdFx0XHR0aGlzLmNvbnRyb2xzUmVmLm5hdGl2ZUVsZW1lbnQsXG5cdFx0XHRcdHRoaXMuaW52YWxpZGF0ZSgpLFxuXHRcdFx0XHR0aGlzLnBlcmZvcm1hbmNlUmVncmVzcygpLFxuXHRcdFx0XHR0aGlzLnJlZ3Jlc3MoKSxcblx0XHRcdF07XG5cdFx0XHRpZiAoIWNvbnRyb2xzKSByZXR1cm47XG5cdFx0XHRjb25zdCBjaGFuZ2VDYWxsYmFjazogKGU6IFRIUkVFLkV2ZW50KSA9PiB2b2lkID0gKGUpID0+IHtcblx0XHRcdFx0aW52YWxpZGF0ZSgpO1xuXHRcdFx0XHRpZiAocmVncmVzcykgcGVyZm9ybWFuY2VSZWdyZXNzKCk7XG5cdFx0XHRcdGlmICh0aGlzLmNoYW5nZS5vYnNlcnZlZCkgdGhpcy5jaGFuZ2UuZW1pdChlKTtcblx0XHRcdH07XG5cblx0XHRcdGNvbnN0IHN0YXJ0Q2FsbGJhY2sgPSB0aGlzLnN0YXJ0Lm9ic2VydmVkID8gdGhpcy5zdGFydC5lbWl0LmJpbmQodGhpcy5zdGFydCkgOiBudWxsO1xuXHRcdFx0Y29uc3QgZW5kQ2FsbGJhY2sgPSB0aGlzLmVuZC5vYnNlcnZlZCA/IHRoaXMuZW5kLmVtaXQuYmluZCh0aGlzLmVuZCkgOiBudWxsO1xuXG5cdFx0XHRjb250cm9scy5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBjaGFuZ2VDYWxsYmFjayk7XG5cdFx0XHRpZiAoc3RhcnRDYWxsYmFjaykgY29udHJvbHMuYWRkRXZlbnRMaXN0ZW5lcignc3RhcnQnLCBzdGFydENhbGxiYWNrKTtcblx0XHRcdGlmIChlbmRDYWxsYmFjaykgY29udHJvbHMuYWRkRXZlbnRMaXN0ZW5lcignZW5kJywgZW5kQ2FsbGJhY2spO1xuXG5cdFx0XHRvbkNsZWFudXAoKCkgPT4ge1xuXHRcdFx0XHRjb250cm9scy5yZW1vdmVFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCBjaGFuZ2VDYWxsYmFjayk7XG5cdFx0XHRcdGlmIChzdGFydENhbGxiYWNrKSBjb250cm9scy5yZW1vdmVFdmVudExpc3RlbmVyKCdzdGFydCcsIHN0YXJ0Q2FsbGJhY2spO1xuXHRcdFx0XHRpZiAoZW5kQ2FsbGJhY2spIGNvbnRyb2xzLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2VuZCcsIGVuZENhbGxiYWNrKTtcblx0XHRcdH0pO1xuXHRcdH0pO1xuXHR9XG59XG4iXX0=
|
|
141
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JiaXQtY29udHJvbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NvYmEvY29udHJvbHMvc3JjL29yYml0LWNvbnRyb2xzL29yYml0LWNvbnRyb2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSCxPQUFPLEVBQ04sa0JBQWtCLEVBQ2xCLFlBQVksRUFDWixjQUFjLEVBQ2QsT0FBTyxHQUdQLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7O0FBZ0M3QyxNQUFNLE9BQU8saUJBQWlCO0lBNEI3QjtRQTNCQSxZQUFPLEdBQUcsS0FBSyxDQUFrQztZQUNoRCxhQUFhLEVBQUUsSUFBSTtZQUNuQixPQUFPLEVBQUUsS0FBSztZQUNkLFdBQVcsRUFBRSxLQUFLO1lBQ2xCLFNBQVMsRUFBRSxLQUFLO1NBQ2hCLENBQUMsQ0FBQztRQUNILGdCQUFXLEdBQUcsS0FBSyxDQUFDLFlBQVksRUFBaUIsQ0FBQyxDQUFDO1FBRXpDLFdBQU0sR0FBRyxJQUFJLFlBQVksRUFBZSxDQUFDO1FBQ3pDLFVBQUssR0FBRyxJQUFJLFlBQVksRUFBZSxDQUFDO1FBQ3hDLFFBQUcsR0FBRyxJQUFJLFlBQVksRUFBZSxDQUFDO1FBRXhDLFVBQUssR0FBRyxjQUFjLEVBQUUsQ0FBQztRQUN6QixlQUFVLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsWUFBWSxDQUFDLENBQUM7UUFDN0MsdUJBQWtCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsYUFBYSxFQUFFLFNBQVMsQ0FBQyxDQUFDO1FBQ2pFLGtCQUFhLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxN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QUFDLENBQUM7Z0JBQ3ZELElBQUksYUFBYTtvQkFBRSxRQUFRLENBQUMsbUJBQW1CLENBQUMsT0FBTyxFQUFFLGFBQWEsQ0FBQyxDQUFDO2dCQUN4RSxJQUFJLFdBQVc7b0JBQUUsUUFBUSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztZQUNuRSxDQUFDLENBQUMsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs4R0FsSFcsaUJBQWlCO2tHQUFqQixpQkFBaUIsOFpBUm5COzs7O0VBSVQsNERBQ1MsT0FBTzs7MkZBR0wsaUJBQWlCO2tCQVg3QixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxxQkFBcUI7b0JBQy9CLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7Ozs7RUFJVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7b0JBQ2xCLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUNqQzt3REFVVSxNQUFNO3NCQUFmLE1BQU07Z0JBQ0csS0FBSztzQkFBZCxNQUFNO2dCQUNHLEdBQUc7c0JBQVosTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIGVmZmVjdCwgRXZlbnRFbWl0dGVyLCBpbnB1dCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuXHRpbmplY3RCZWZvcmVSZW5kZXIsXG5cdGluamVjdE5ndFJlZixcblx0aW5qZWN0Tmd0U3RvcmUsXG5cdE5ndEFyZ3MsXG5cdHR5cGUgTmd0Q2FtZXJhLFxuXHR0eXBlIE5ndFZlY3RvcjMsXG59IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHR5cGUgKiBhcyBUSFJFRSBmcm9tICd0aHJlZSc7XG5pbXBvcnQgeyBPcmJpdENvbnRyb2xzIH0gZnJvbSAndGhyZWUtc3RkbGliJztcblxuZXhwb3J0IGludGVyZmFjZSBOZ3RzT3JiaXRDb250cm9sc1N0YXRlIHtcblx0Y2FtZXJhPzogVEhSRUUuQ2FtZXJhO1xuXHRkb21FbGVtZW50PzogSFRNTEVsZW1lbnQ7XG5cdHRhcmdldD86IE5ndFZlY3RvcjM7XG5cdG1ha2VEZWZhdWx0OiBib29sZWFuO1xuXHRyZWdyZXNzOiBib29sZWFuO1xuXHRlbmFibGVEYW1waW5nOiBib29sZWFuO1xuXHRrZXlFdmVudHM6IGJvb2xlYW4gfCBIVE1MRWxlbWVudDtcbn1cblxuZGVjbGFyZSBnbG9iYWwge1xuXHRpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcblx0XHQvKipcblx0XHQgKiBAZXh0ZW5kcyB0aHJlZS1zdGRsaWJ8T3JiaXRDb250cm9sc1xuXHRcdCAqL1xuXHRcdCduZ3RzLW9yYml0LWNvbnRyb2xzJzogT3JiaXRDb250cm9scyAmIE5ndHNPcmJpdENvbnRyb2xzU3RhdGU7XG5cdH1cbn1cblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmd0cy1vcmJpdC1jb250cm9scycsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdHRlbXBsYXRlOiBgXG5cdFx0PG5ndC1wcmltaXRpdmUgbmd0Q29tcG91bmQgKmFyZ3M9XCJhcmdzKClcIiBbZW5hYmxlRGFtcGluZ109XCJlbmFibGVEYW1waW5nKClcIj5cblx0XHRcdDxuZy1jb250ZW50IC8+XG5cdFx0PC9uZ3QtcHJpbWl0aXZlPlxuXHRgLFxuXHRpbXBvcnRzOiBbTmd0QXJnc10sXG5cdHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0c09yYml0Q29udHJvbHMge1xuXHRvcHRpb25zID0gaW5wdXQ8UGFydGlhbDxOZ3RzT3JiaXRDb250cm9sc1N0YXRlPj4oe1xuXHRcdGVuYWJsZURhbXBpbmc6IHRydWUsXG5cdFx0cmVncmVzczogZmFsc2UsXG5cdFx0bWFrZURlZmF1bHQ6IGZhbHNlLFxuXHRcdGtleUV2ZW50czogZmFsc2UsXG5cdH0pO1xuXHRjb250cm9sc1JlZiA9IGlucHV0KGluamVjdE5ndFJlZjxPcmJpdENvbnRyb2xzPigpKTtcblxuXHRAT3V0cHV0KCkgY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxUSFJFRS5FdmVudD4oKTtcblx0QE91dHB1dCgpIHN0YXJ0ID0gbmV3IEV2ZW50RW1pdHRlcjxUSFJFRS5FdmVudD4oKTtcblx0QE91dHB1dCgpIGVuZCA9IG5ldyBFdmVudEVtaXR0ZXI8VEhSRUUuRXZlbnQ+KCk7XG5cblx0cHJpdmF0ZSBzdG9yZSA9IGluamVjdE5ndFN0b3JlKCk7XG5cdHByaXZhdGUgaW52YWxpZGF0ZSA9IHRoaXMuc3RvcmUuc2VsZWN0KCdpbnZhbGlkYXRlJyk7XG5cdHByaXZhdGUgcGVyZm9ybWFuY2VSZWdyZXNzID0gdGhpcy5zdG9yZS5zZWxlY3QoJ3BlcmZvcm1hbmNlJywgJ3JlZ3Jlc3MnKTtcblx0cHJpdmF0ZSBkZWZhdWx0Q2FtZXJhID0gdGhpcy5zdG9yZS5zZWxlY3QoJ2NhbWVyYScpO1xuXHRwcml2YXRlIGdsRG9tRWxlbWVudCA9IHRoaXMuc3RvcmUuc2VsZWN0KCdnbCcsICdkb21FbGVtZW50Jyk7XG5cblx0cHJpdmF0ZSBjYW1lcmEgPSBjb21wdXRlZCgoKSA9PiB0aGlzLm9wdGlvbnMoKS5jYW1lcmEpO1xuXHRwcml2YXRlIHJlZ3Jlc3MgPSBjb21wdXRlZCgoKSA9PiB0aGlzLm9wdGlvbnMoKS5yZWdyZXNzKTtcblx0cHJpdmF0ZSBrZXlFdmVudHMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLm9wdGlvbnMoKS5rZXlFdmVudHMpO1xuXHRwcml2YXRlIGRvbUVsZW1lbnQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLm9wdGlvbnMoKS5kb21FbGVtZW50KTtcblx0cHJpdmF0ZSBtYWtlRGVmYXVsdCA9IGNvbXB1dGVkKCgpID0+IHRoaXMub3B0aW9ucygpLm1ha2VEZWZhdWx0KTtcblxuXHRwcm90ZWN0ZWQgYXJncyA9IGNvbXB1dGVkKCgpID0+IFt0aGlzLmNvbnRyb2xzUmVmKCkubmF0aXZlRWxlbWVudF0pO1xuXHRwcm90ZWN0ZWQgZW5hYmxlRGFtcGluZyA9IGNvbXB1dGVkKCgpID0+IHRoaXMub3B0aW9ucygpLmVuYWJsZURhbXBpbmcpO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdGluamVjdEJlZm9yZVJlbmRlcihcblx0XHRcdCgpID0+IHtcblx0XHRcdFx0Y29uc3QgY29udHJvbHMgPSB0aGlzLmNvbnRyb2xzUmVmKCkubmF0aXZlRWxlbWVudDtcblx0XHRcdFx0aWYgKGNvbnRyb2xzPy5lbmFibGVkKSB7XG5cdFx0XHRcdFx0Y29udHJvbHMudXBkYXRlKCk7XG5cdFx0XHRcdH1cblx0XHRcdH0sXG5cdFx0XHR7IHByaW9yaXR5OiAtMSB9LFxuXHRcdCk7XG5cblx0XHR0aGlzLnNldENvbnRyb2xzKCk7XG5cdFx0dGhpcy5jb25uZWN0RWxlbWVudCgpO1xuXHRcdHRoaXMubWFrZUNvbnRyb2xzRGVmYXVsdCgpO1xuXHRcdHRoaXMuc2V0RXZlbnRzKCk7XG5cdH1cblxuXHRwcml2YXRlIHNldENvbnRyb2xzKCkge1xuXHRcdGVmZmVjdCgoKSA9PiB7XG5cdFx0XHRjb25zdCBbY2FtZXJhLCBkZWZhdWx0Q2FtZXJhLCBjb250cm9sc10gPSBbdGhpcy5jYW1lcmEoKSwgdGhpcy5kZWZhdWx0Q2FtZXJhKCksIHRoaXMuY29udHJvbHNSZWYoKS5uYXRpdmVFbGVtZW50XTtcblx0XHRcdGNvbnN0IGNvbnRyb2xzQ2FtZXJhID0gY2FtZXJhIHx8IGRlZmF1bHRDYW1lcmE7XG5cdFx0XHRpZiAoIWNvbnRyb2xzIHx8IGNvbnRyb2xzLm9iamVjdCAhPT0gY29udHJvbHNDYW1lcmEpIHtcblx0XHRcdFx0dGhpcy5jb250cm9sc1JlZigpLm5hdGl2ZUVsZW1lbnQgPSBuZXcgT3JiaXRDb250cm9scyhjb250cm9sc0NhbWVyYSBhcyBOZ3RDYW1lcmEpO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG5cblx0cHJpdmF0ZSBjb25uZWN0RWxlbWVudCgpIHtcblx0XHRlZmZlY3QoKG9uQ2xlYW51cCkgPT4ge1xuXHRcdFx0Y29uc3QgW2tleUV2ZW50cywgZG9tRWxlbWVudCwgY29udHJvbHNdID0gW1xuXHRcdFx0XHR0aGlzLmtleUV2ZW50cygpLFxuXHRcdFx0XHR0aGlzLmRvbUVsZW1lbnQoKSB8fCB0aGlzLnN0b3JlLmdldCgnZXZlbnRzJywgJ2Nvbm5lY3RlZCcpIHx8IHRoaXMuZ2xEb21FbGVtZW50KCksXG5cdFx0XHRcdHRoaXMuY29udHJvbHNSZWYoKS5uYXRpdmVFbGVtZW50LFxuXHRcdFx0XHR0aGlzLmludmFsaWRhdGUoKSxcblx0XHRcdFx0dGhpcy5yZWdyZXNzKCksXG5cdFx0XHRdO1xuXHRcdFx0aWYgKCFjb250cm9scykgcmV0dXJuO1xuXHRcdFx0aWYgKGtleUV2ZW50cykge1xuXHRcdFx0XHRjb250cm9scy5jb25uZWN0KGtleUV2ZW50cyA9PT0gdHJ1ZSA/IGRvbUVsZW1lbnQgOiBrZXlFdmVudHMpO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0Y29udHJvbHMuY29ubmVjdChkb21FbGVtZW50KTtcblx0XHRcdH1cblx0XHRcdG9uQ2xlYW51cCgoKSA9PiB2b2lkIGNvbnRyb2xzLmRpc3Bvc2UoKSk7XG5cdFx0fSk7XG5cdH1cblxuXHRwcml2YXRlIG1ha2VDb250cm9sc0RlZmF1bHQoKSB7XG5cdFx0ZWZmZWN0KChvbkNsZWFudXApID0+IHtcblx0XHRcdGNvbnN0IFtjb250cm9scywgbWFrZURlZmF1bHRdID0gW3RoaXMuY29udHJvbHNSZWYoKS5uYXRpdmVFbGVtZW50LCB0aGlzLm1ha2VEZWZhdWx0KCldO1xuXHRcdFx0aWYgKCFjb250cm9scykgcmV0dXJuO1xuXHRcdFx0aWYgKG1ha2VEZWZhdWx0KSB7XG5cdFx0XHRcdGNvbnN0IG9sZENvbnRyb2xzID0gdGhpcy5zdG9yZS5nZXQoJ2NvbnRyb2xzJyk7XG5cdFx0XHRcdHRoaXMuc3RvcmUudXBkYXRlKHsgY29udHJvbHMgfSk7XG5cdFx0XHRcdG9uQ2xlYW51cCgoKSA9PiB2b2lkIHRoaXMuc3RvcmUudXBkYXRlKHsgY29udHJvbHM6IG9sZENvbnRyb2xzIH0pKTtcblx0XHRcdH1cblx0XHR9KTtcblx0fVxuXG5cdHByaXZhdGUgc2V0RXZlbnRzKCkge1xuXHRcdGVmZmVjdCgob25DbGVhbnVwKSA9PiB7XG5cdFx0XHRjb25zdCBbY29udHJvbHMsIGludmFsaWRhdGUsIHBlcmZvcm1hbmNlUmVncmVzcywgcmVncmVzc10gPSBbXG5cdFx0XHRcdHRoaXMuY29udHJvbHNSZWYoKS5uYXRpdmVFbGVtZW50LFxuXHRcdFx0XHR0aGlzLmludmFsaWRhdGUoKSxcblx0XHRcdFx0dGhpcy5wZXJmb3JtYW5jZVJlZ3Jlc3MoKSxcblx0XHRcdFx0dGhpcy5yZWdyZXNzKCksXG5cdFx0XHRdO1xuXHRcdFx0aWYgKCFjb250cm9scykgcmV0dXJuO1xuXHRcdFx0Y29uc3QgY2hhbmdlQ2FsbGJhY2s6IChlOiBUSFJFRS5FdmVudCkgPT4gdm9pZCA9IChlKSA9PiB7XG5cdFx0XHRcdGludmFsaWRhdGUoKTtcblx0XHRcdFx0aWYgKHJlZ3Jlc3MpIHBlcmZvcm1hbmNlUmVncmVzcygpO1xuXHRcdFx0XHRpZiAodGhpcy5jaGFuZ2Uub2JzZXJ2ZWQpIHRoaXMuY2hhbmdlLmVtaXQoZSk7XG5cdFx0XHR9O1xuXG5cdFx0XHRjb25zdCBzdGFydENhbGxiYWNrID0gdGhpcy5zdGFydC5vYnNlcnZlZCA/IHRoaXMuc3RhcnQuZW1pdC5iaW5kKHRoaXMuc3RhcnQpIDogbnVsbDtcblx0XHRcdGNvbnN0IGVuZENhbGxiYWNrID0gdGhpcy5lbmQub2JzZXJ2ZWQgPyB0aGlzLmVuZC5lbWl0LmJpbmQodGhpcy5lbmQpIDogbnVsbDtcblxuXHRcdFx0Y29udHJvbHMuYWRkRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgY2hhbmdlQ2FsbGJhY2spO1xuXHRcdFx0aWYgKHN0YXJ0Q2FsbGJhY2spIGNvbnRyb2xzLmFkZEV2ZW50TGlzdGVuZXIoJ3N0YXJ0Jywgc3RhcnRDYWxsYmFjayk7XG5cdFx0XHRpZiAoZW5kQ2FsbGJhY2spIGNvbnRyb2xzLmFkZEV2ZW50TGlzdGVuZXIoJ2VuZCcsIGVuZENhbGxiYWNrKTtcblxuXHRcdFx0b25DbGVhbnVwKCgpID0+IHtcblx0XHRcdFx0Y29udHJvbHMucmVtb3ZlRXZlbnRMaXN0ZW5lcignY2hhbmdlJywgY2hhbmdlQ2FsbGJhY2spO1xuXHRcdFx0XHRpZiAoc3RhcnRDYWxsYmFjaykgY29udHJvbHMucmVtb3ZlRXZlbnRMaXN0ZW5lcignc3RhcnQnLCBzdGFydENhbGxiYWNrKTtcblx0XHRcdFx0aWYgKGVuZENhbGxiYWNrKSBjb250cm9scy5yZW1vdmVFdmVudExpc3RlbmVyKCdlbmQnLCBlbmRDYWxsYmFjayk7XG5cdFx0XHR9KTtcblx0XHR9KTtcblx0fVxufVxuIl19
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { injectNgtLoader } from 'angular-three';
|
|
2
|
+
import { assertInjector } from 'ngxtension/assert-injector';
|
|
2
3
|
import { DRACOLoader, GLTFLoader, MeshoptDecoder } from 'three-stdlib';
|
|
3
4
|
let dracoLoader = null;
|
|
5
|
+
let decoderPath = 'https://www.gstatic.com/draco/versioned/decoders/1.5.5/';
|
|
4
6
|
function _extensions(useDraco, useMeshOpt, extensions) {
|
|
5
7
|
return (loader) => {
|
|
6
8
|
if (extensions) {
|
|
@@ -10,7 +12,7 @@ function _extensions(useDraco, useMeshOpt, extensions) {
|
|
|
10
12
|
if (!dracoLoader) {
|
|
11
13
|
dracoLoader = new DRACOLoader();
|
|
12
14
|
}
|
|
13
|
-
dracoLoader.setDecoderPath(typeof useDraco === 'string' ? useDraco :
|
|
15
|
+
dracoLoader.setDecoderPath(typeof useDraco === 'string' ? useDraco : decoderPath);
|
|
14
16
|
loader.setDRACOLoader(dracoLoader);
|
|
15
17
|
}
|
|
16
18
|
if (useMeshOpt) {
|
|
@@ -18,13 +20,17 @@ function _extensions(useDraco, useMeshOpt, extensions) {
|
|
|
18
20
|
}
|
|
19
21
|
};
|
|
20
22
|
}
|
|
21
|
-
|
|
22
|
-
return injectNgtLoader(() => GLTFLoader, path, {
|
|
23
|
+
function _injectNgtsGLTFLoader(path, { useDraco = true, useMeshOpt = true, injector, extensions, } = {}) {
|
|
24
|
+
return assertInjector(_injectNgtsGLTFLoader, injector, () => injectNgtLoader(() => GLTFLoader, path, {
|
|
25
|
+
// TODO: fix "as any" when three-stdlib is updated with THREE 0.156
|
|
23
26
|
extensions: _extensions(useDraco, useMeshOpt, extensions),
|
|
24
|
-
|
|
25
|
-
});
|
|
27
|
+
}));
|
|
26
28
|
}
|
|
27
|
-
|
|
28
|
-
injectNgtLoader
|
|
29
|
+
_injectNgtsGLTFLoader.preload = (path, { useDraco = true, useMeshOpt = true, extensions, } = {}) => {
|
|
30
|
+
injectNgtLoader.preload(() => GLTFLoader, path, _extensions(useDraco, useMeshOpt, extensions));
|
|
29
31
|
};
|
|
30
|
-
|
|
32
|
+
_injectNgtsGLTFLoader.setDecoderPath = (path) => {
|
|
33
|
+
decoderPath = path;
|
|
34
|
+
};
|
|
35
|
+
export const injectNgtsGLTFLoader = _injectNgtsGLTFLoader;
|
|
36
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2x0Zi1sb2FkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NvYmEvbG9hZGVycy9zcmMvZ2x0Zi1sb2FkZXIvZ2x0Zi1sb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLGVBQWUsRUFBNEMsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRTVELE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLGNBQWMsRUFBYSxNQUFNLGNBQWMsQ0FBQztBQUVsRixJQUFJLFdBQVcsR0FBdUIsSUFBSSxDQUFDO0FBQzNDLElBQUksV0FBVyxHQUFHLHlEQUF5RCxDQUFDO0FBRTVFLFNBQVMsV0FBVyxDQUFDLFFBQTBCLEVBQUUsVUFBbUIsRUFBRSxVQUF5QztJQUM5RyxPQUFPLENBQUMsTUFBb0IsRUFBRSxFQUFFO1FBQy9CLElBQUksVUFBVSxFQUFFLENBQUM7WUFDaEIsVUFBVSxDQUFDLE1BQW9CLENBQUMsQ0FBQztRQUNsQyxDQUFDO1FBRUQsSUFBSSxRQUFRLEVBQUUsQ0FBQztZQUNkLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztnQkFDbEIsV0FBVyxHQUFHLElBQUksV0FBVyxFQUFFLENBQUM7WUFDakMsQ0FBQztZQUVELFdBQVcsQ0FBQyxjQUFjLENBQUMsT0FBTyxRQUFRLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1lBQ2pGLE1BQXFCLENBQUMsY0FBYyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3BELENBQUM7UUFDRCxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2YsTUFBcUIsQ0FBQyxpQkFBaUIsQ0FDdkMsT0FBTyxjQUFjLEtBQUssVUFBVSxDQUFDLENBQUMsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUN4RSxDQUFDO1FBQ0gsQ0FBQztJQUNGLENBQUMsQ0FBQztBQUNILENBQUM7QUFJRCxTQUFTLHFCQUFxQixDQUM3QixJQUFnQixFQUNoQixFQUNDLFFBQVEsR0FBRyxJQUFJLEVBQ2YsVUFBVSxHQUFHLElBQUksRUFDakIsUUFBUSxFQUNSLFVBQVUsTUFNUCxFQUFFO0lBRU4sT0FBTyxjQUFjLENBQUMscUJBQXFCLEVBQUUsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUMzRCxlQUFlLENBQUMsR0FBRyxFQUFFLENBQUMsVUFBVSxFQUFFLElBQUksRUFBRTtRQUN2QyxtRUFBbUU7UUFDbkUsVUFBVSxFQUFFLFdBQVcsQ0FBQyxRQUFRLEVBQUUsVUFBVSxFQUFFLFVBQVUsQ0FBQztLQUN6RCxDQUFDLENBQzRELENBQUM7QUFDakUsQ0FBQztBQUVELHFCQUFxQixDQUFDLE9BQU8sR0FBRyxDQUMvQixJQUFnQixFQUNoQixFQUNDLFFBQVEsR0FBRyxJQUFJLEVBQ2YsVUFBVSxHQUFHLElBQUksRUFDakIsVUFBVSxNQUtQLEVBQUUsRUFDTCxFQUFFO0lBQ0gsZUFBZSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxVQUFVLEVBQUUsSUFBSSxFQUFFLFdBQVcsQ0FBQyxRQUFRLEVBQUUsVUFBVSxFQUFFLFVBQVUsQ0FBUSxDQUFDLENBQUM7QUFDdkcsQ0FBQyxDQUFDO0FBRUYscUJBQXFCLENBQUMsY0FBYyxHQUFHLENBQUMsSUFBWSxFQUFFLEVBQUU7SUFDdkQsV0FBVyxHQUFHLElBQUksQ0FBQztBQUNwQixDQUFDLENBQUM7QUFHRixNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBbUIscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgdHlwZSB7IEluamVjdG9yLCBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGluamVjdE5ndExvYWRlciwgdHlwZSBOZ3RMb2FkZXJSZXN1bHRzLCB0eXBlIE5ndE9iamVjdE1hcCB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgYXNzZXJ0SW5qZWN0b3IgfSBmcm9tICduZ3h0ZW5zaW9uL2Fzc2VydC1pbmplY3Rvcic7XG5pbXBvcnQgdHlwZSAqIGFzIFRIUkVFIGZyb20gJ3RocmVlJztcbmltcG9ydCB7IERSQUNPTG9hZGVyLCBHTFRGTG9hZGVyLCBNZXNob3B0RGVjb2RlciwgdHlwZSBHTFRGIH0gZnJvbSAndGhyZWUtc3RkbGliJztcblxubGV0IGRyYWNvTG9hZGVyOiBEUkFDT0xvYWRlciB8IG51bGwgPSBudWxsO1xubGV0IGRlY29kZXJQYXRoID0gJ2h0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2RyYWNvL3ZlcnNpb25lZC9kZWNvZGVycy8xLjUuNS8nO1xuXG5mdW5jdGlvbiBfZXh0ZW5zaW9ucyh1c2VEcmFjbzogYm9vbGVhbiB8IHN0cmluZywgdXNlTWVzaE9wdDogYm9vbGVhbiwgZXh0ZW5zaW9ucz86IChsb2FkZXI6IEdMVEZMb2FkZXIpID0+IHZvaWQpIHtcblx0cmV0dXJuIChsb2FkZXI6IFRIUkVFLkxvYWRlcikgPT4ge1xuXHRcdGlmIChleHRlbnNpb25zKSB7XG5cdFx0XHRleHRlbnNpb25zKGxvYWRlciBhcyBHTFRGTG9hZGVyKTtcblx0XHR9XG5cblx0XHRpZiAodXNlRHJhY28pIHtcblx0XHRcdGlmICghZHJhY29Mb2FkZXIpIHtcblx0XHRcdFx0ZHJhY29Mb2FkZXIgPSBuZXcgRFJBQ09Mb2FkZXIoKTtcblx0XHRcdH1cblxuXHRcdFx0ZHJhY29Mb2FkZXIuc2V0RGVjb2RlclBhdGgodHlwZW9mIHVzZURyYWNvID09PSAnc3RyaW5nJyA/IHVzZURyYWNvIDogZGVjb2RlclBhdGgpO1xuXHRcdFx0KGxvYWRlciBhcyBHTFRGTG9hZGVyKS5zZXREUkFDT0xvYWRlcihkcmFjb0xvYWRlcik7XG5cdFx0fVxuXHRcdGlmICh1c2VNZXNoT3B0KSB7XG5cdFx0XHQobG9hZGVyIGFzIEdMVEZMb2FkZXIpLnNldE1lc2hvcHREZWNvZGVyKFxuXHRcdFx0XHR0eXBlb2YgTWVzaG9wdERlY29kZXIgPT09ICdmdW5jdGlvbicgPyBNZXNob3B0RGVjb2RlcigpIDogTWVzaG9wdERlY29kZXIsXG5cdFx0XHQpO1xuXHRcdH1cblx0fTtcbn1cblxuZXhwb3J0IHR5cGUgTmd0c0dMVEY8VCBleHRlbmRzIFBhcnRpYWw8Tmd0T2JqZWN0TWFwPj4gPSBHTFRGICYgTmd0T2JqZWN0TWFwICYgVDtcblxuZnVuY3Rpb24gX2luamVjdE5ndHNHTFRGTG9hZGVyPFRVcmwgZXh0ZW5kcyBzdHJpbmcgfCBzdHJpbmdbXSB8IFJlY29yZDxzdHJpbmcsIHN0cmluZz4+KFxuXHRwYXRoOiAoKSA9PiBUVXJsLFxuXHR7XG5cdFx0dXNlRHJhY28gPSB0cnVlLFxuXHRcdHVzZU1lc2hPcHQgPSB0cnVlLFxuXHRcdGluamVjdG9yLFxuXHRcdGV4dGVuc2lvbnMsXG5cdH06IHtcblx0XHR1c2VEcmFjbz86IGJvb2xlYW4gfCBzdHJpbmc7XG5cdFx0dXNlTWVzaE9wdD86IGJvb2xlYW47XG5cdFx0aW5qZWN0b3I/OiBJbmplY3Rvcjtcblx0XHRleHRlbnNpb25zPzogKGxvYWRlcjogR0xURkxvYWRlcikgPT4gdm9pZDtcblx0fSA9IHt9LFxuKTogU2lnbmFsPE5ndExvYWRlclJlc3VsdHM8VFVybCwgR0xURiAmIE5ndE9iamVjdE1hcD4gfCBudWxsPiB7XG5cdHJldHVybiBhc3NlcnRJbmplY3RvcihfaW5qZWN0Tmd0c0dMVEZMb2FkZXIsIGluamVjdG9yLCAoKSA9PlxuXHRcdGluamVjdE5ndExvYWRlcigoKSA9PiBHTFRGTG9hZGVyLCBwYXRoLCB7XG5cdFx0XHQvLyBUT0RPOiBmaXggXCJhcyBhbnlcIiB3aGVuIHRocmVlLXN0ZGxpYiBpcyB1cGRhdGVkIHdpdGggVEhSRUUgMC4xNTZcblx0XHRcdGV4dGVuc2lvbnM6IF9leHRlbnNpb25zKHVzZURyYWNvLCB1c2VNZXNoT3B0LCBleHRlbnNpb25zKSxcblx0XHR9KSxcblx0KSBhcyBTaWduYWw8Tmd0TG9hZGVyUmVzdWx0czxUVXJsLCBHTFRGICYgTmd0T2JqZWN0TWFwPiB8IG51bGw+O1xufVxuXG5faW5qZWN0Tmd0c0dMVEZMb2FkZXIucHJlbG9hZCA9IDxUVXJsIGV4dGVuZHMgc3RyaW5nIHwgc3RyaW5nW10gfCBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+Pihcblx0cGF0aDogKCkgPT4gVFVybCxcblx0e1xuXHRcdHVzZURyYWNvID0gdHJ1ZSxcblx0XHR1c2VNZXNoT3B0ID0gdHJ1ZSxcblx0XHRleHRlbnNpb25zLFxuXHR9OiB7XG5cdFx0dXNlRHJhY28/OiBib29sZWFuIHwgc3RyaW5nO1xuXHRcdHVzZU1lc2hPcHQ/OiBib29sZWFuO1xuXHRcdGV4dGVuc2lvbnM/OiAobG9hZGVyOiBHTFRGTG9hZGVyKSA9PiB2b2lkO1xuXHR9ID0ge30sXG4pID0+IHtcblx0aW5qZWN0Tmd0TG9hZGVyLnByZWxvYWQoKCkgPT4gR0xURkxvYWRlciwgcGF0aCwgX2V4dGVuc2lvbnModXNlRHJhY28sIHVzZU1lc2hPcHQsIGV4dGVuc2lvbnMpIGFzIGFueSk7XG59O1xuXG5faW5qZWN0Tmd0c0dMVEZMb2FkZXIuc2V0RGVjb2RlclBhdGggPSAocGF0aDogc3RyaW5nKSA9PiB7XG5cdGRlY29kZXJQYXRoID0gcGF0aDtcbn07XG5cbmV4cG9ydCB0eXBlIE5ndHNHTFRGTG9hZGVyID0gdHlwZW9mIF9pbmplY3ROZ3RzR0xURkxvYWRlcjtcbmV4cG9ydCBjb25zdCBpbmplY3ROZ3RzR0xURkxvYWRlcjogTmd0c0dMVEZMb2FkZXIgPSBfaW5qZWN0Tmd0c0dMVEZMb2FkZXI7XG4iXX0=
|
|
@@ -1,41 +1,20 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { ChangeDetectionStrategy, Component, ElementRef, Input, ViewChild, computed, effect, signal, untracked, } from '@angular/core';
|
|
3
|
-
import { signalStore } from 'angular-three';
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ElementRef, computed, effect, input, signal, untracked, viewChild, } from '@angular/core';
|
|
4
2
|
import { injectNgtsProgress } from '../progress/progress';
|
|
5
3
|
import * as i0 from "@angular/core";
|
|
6
4
|
const defaultDataInterpolation = (p) => `Loading ${p.toFixed(2)}%`;
|
|
7
5
|
export class NgtsLoader {
|
|
8
|
-
set _containerClass(containerClass) {
|
|
9
|
-
this.inputs.set({ containerClass });
|
|
10
|
-
}
|
|
11
|
-
set _innerClass(innerClass) {
|
|
12
|
-
this.inputs.set({ innerClass });
|
|
13
|
-
}
|
|
14
|
-
set _barClass(barClass) {
|
|
15
|
-
this.inputs.set({ barClass });
|
|
16
|
-
}
|
|
17
|
-
set _dataClass(dataClass) {
|
|
18
|
-
this.inputs.set({ dataClass });
|
|
19
|
-
}
|
|
20
|
-
set _dataInterpolation(dataInterpolation) {
|
|
21
|
-
this.inputs.set({ dataInterpolation });
|
|
22
|
-
}
|
|
23
|
-
set _initialState(initialState) {
|
|
24
|
-
this.inputs.set({ initialState });
|
|
25
|
-
}
|
|
26
6
|
constructor() {
|
|
27
|
-
this.inputs = signalStore({
|
|
28
|
-
dataInterpolation: defaultDataInterpolation,
|
|
29
|
-
initialState: (active) => active,
|
|
30
|
-
});
|
|
31
7
|
this.progressState = injectNgtsProgress();
|
|
32
8
|
this.active = computed(() => this.progressState().active);
|
|
33
9
|
this.progress = computed(() => this.progressState().progress);
|
|
34
|
-
this.
|
|
35
|
-
this.
|
|
36
|
-
this.
|
|
37
|
-
this.
|
|
38
|
-
this.
|
|
10
|
+
this.containerClass = input('');
|
|
11
|
+
this.innerClass = input('');
|
|
12
|
+
this.barClass = input('');
|
|
13
|
+
this.dataClass = input('');
|
|
14
|
+
this.dataInterpolation = input(defaultDataInterpolation);
|
|
15
|
+
this.initialState = input((active) => active);
|
|
16
|
+
this.progressSpanRef = viewChild('progressSpanRef');
|
|
17
|
+
this.shown = signal(this.initialState()(this.active()));
|
|
39
18
|
this.setShown();
|
|
40
19
|
this.updateProgress();
|
|
41
20
|
}
|
|
@@ -53,16 +32,16 @@ export class NgtsLoader {
|
|
|
53
32
|
updateProgress() {
|
|
54
33
|
let progressRef = 0;
|
|
55
34
|
let rafId;
|
|
56
|
-
const _dataInterpolation = this.inputs.select('dataInterpolation');
|
|
57
35
|
effect((onCleanup) => {
|
|
58
|
-
const [dataInterpolation, progress] = [
|
|
36
|
+
const [dataInterpolation, progress] = [this.dataInterpolation(), this.progress()];
|
|
59
37
|
const updateProgress = () => {
|
|
60
|
-
|
|
38
|
+
const progressSpan = this.progressSpanRef()?.nativeElement;
|
|
39
|
+
if (!progressSpan)
|
|
61
40
|
return;
|
|
62
41
|
progressRef += (progress - progressRef) / 2;
|
|
63
42
|
if (progressRef > 0.95 * progress || progress === 100)
|
|
64
43
|
progressRef = progress;
|
|
65
|
-
|
|
44
|
+
progressSpan.innerText = dataInterpolation(progressRef);
|
|
66
45
|
if (progressRef < progress) {
|
|
67
46
|
rafId = requestAnimationFrame(updateProgress);
|
|
68
47
|
}
|
|
@@ -71,68 +50,41 @@ export class NgtsLoader {
|
|
|
71
50
|
onCleanup(() => cancelAnimationFrame(rafId));
|
|
72
51
|
});
|
|
73
52
|
}
|
|
74
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
75
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
class="ngts-loader-
|
|
86
|
-
|
|
87
|
-
[style.--ngts-loader-bar-scale]="progress() / 100"
|
|
88
|
-
></div>
|
|
89
|
-
<span #progressSpanRef class="ngts-loader-data" [class]="data() || ''"></span>
|
|
53
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: NgtsLoader, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
54
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.9", type: NgtsLoader, isStandalone: true, selector: "ngts-loader", inputs: { containerClass: { classPropertyName: "containerClass", publicName: "containerClass", isSignal: true, isRequired: false, transformFunction: null }, innerClass: { classPropertyName: "innerClass", publicName: "innerClass", isSignal: true, isRequired: false, transformFunction: null }, barClass: { classPropertyName: "barClass", publicName: "barClass", isSignal: true, isRequired: false, transformFunction: null }, dataClass: { classPropertyName: "dataClass", publicName: "dataClass", isSignal: true, isRequired: false, transformFunction: null }, dataInterpolation: { classPropertyName: "dataInterpolation", publicName: "dataInterpolation", isSignal: true, isRequired: false, transformFunction: null }, initialState: { classPropertyName: "initialState", publicName: "initialState", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "progressSpanRef", first: true, predicate: ["progressSpanRef"], descendants: true, isSignal: true }], ngImport: i0, template: `
|
|
55
|
+
@if (shown()) {
|
|
56
|
+
<div
|
|
57
|
+
class="ngts-loader-container"
|
|
58
|
+
[class]="containerClass()"
|
|
59
|
+
[style.--ngts-loader-container-opacity]="active() ? 1 : 0"
|
|
60
|
+
>
|
|
61
|
+
<div>
|
|
62
|
+
<div class="ngts-loader-inner" [class]="innerClass()">
|
|
63
|
+
<div class="ngts-loader-bar" [class]="barClass()" [style.--ngts-loader-bar-scale]="progress() / 100"></div>
|
|
64
|
+
<span #progressSpanRef class="ngts-loader-data" [class]="dataClass()"></span>
|
|
65
|
+
</div>
|
|
90
66
|
</div>
|
|
91
67
|
</div>
|
|
92
|
-
|
|
93
|
-
`, isInline: true, styles: [".ngts-loader-container{--ngts-loader-container-opacity: 0;position:absolute;top:0;left:0;width:100%;height:100%;background:#171717;display:flex;align-items:center;justify-content:center;transition:opacity .3s ease;z-index:1000;opacity:var(--ngts-loader-container-opacity)}.ngts-loader-inner{width:100px;height:3px;background:#272727;text-align:center}.ngts-loader-bar{--ngts-loader-bar-scale: 0;height:3px;width:100px;background
|
|
68
|
+
}
|
|
69
|
+
`, isInline: true, styles: [".ngts-loader-container{--ngts-loader-container-opacity: 0;position:absolute;top:0;left:0;width:100%;height:100%;background:#171717;display:flex;align-items:center;justify-content:center;transition:opacity .3s ease;z-index:1000;opacity:var(--ngts-loader-container-opacity)}.ngts-loader-inner{width:100px;height:3px;background:#272727;text-align:center}.ngts-loader-bar{--ngts-loader-bar-scale: 0;height:3px;width:100px;background:#fff;transition:transform .2s;transform-origin:left center;transform:scaleX(var(--ngts-loader-bar-scale))}.ngts-loader-data{display:inline-block;position:relative;font-variant-numeric:tabular-nums;margin-top:.8em;color:#f0f0f0;font-size:.6em;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Helvetica Neue,Helvetica,Arial,Roboto,Ubuntu,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol;white-space:nowrap}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
94
70
|
}
|
|
95
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
71
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.9", ngImport: i0, type: NgtsLoader, decorators: [{
|
|
96
72
|
type: Component,
|
|
97
73
|
args: [{ selector: 'ngts-loader', standalone: true, template: `
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
class="ngts-loader-
|
|
108
|
-
|
|
109
|
-
[style.--ngts-loader-bar-scale]="progress() / 100"
|
|
110
|
-
></div>
|
|
111
|
-
<span #progressSpanRef class="ngts-loader-data" [class]="data() || ''"></span>
|
|
74
|
+
@if (shown()) {
|
|
75
|
+
<div
|
|
76
|
+
class="ngts-loader-container"
|
|
77
|
+
[class]="containerClass()"
|
|
78
|
+
[style.--ngts-loader-container-opacity]="active() ? 1 : 0"
|
|
79
|
+
>
|
|
80
|
+
<div>
|
|
81
|
+
<div class="ngts-loader-inner" [class]="innerClass()">
|
|
82
|
+
<div class="ngts-loader-bar" [class]="barClass()" [style.--ngts-loader-bar-scale]="progress() / 100"></div>
|
|
83
|
+
<span #progressSpanRef class="ngts-loader-data" [class]="dataClass()"></span>
|
|
84
|
+
</div>
|
|
112
85
|
</div>
|
|
113
86
|
</div>
|
|
114
|
-
|
|
115
|
-
`,
|
|
116
|
-
}], ctorParameters:
|
|
117
|
-
|
|
118
|
-
args: [{ alias: 'containerClass' }]
|
|
119
|
-
}], _innerClass: [{
|
|
120
|
-
type: Input,
|
|
121
|
-
args: [{ alias: 'innerClass' }]
|
|
122
|
-
}], _barClass: [{
|
|
123
|
-
type: Input,
|
|
124
|
-
args: [{ alias: 'barClass' }]
|
|
125
|
-
}], _dataClass: [{
|
|
126
|
-
type: Input,
|
|
127
|
-
args: [{ alias: 'dataClass' }]
|
|
128
|
-
}], _dataInterpolation: [{
|
|
129
|
-
type: Input,
|
|
130
|
-
args: [{ alias: 'dataInterpolation' }]
|
|
131
|
-
}], _initialState: [{
|
|
132
|
-
type: Input,
|
|
133
|
-
args: [{ alias: 'initialState' }]
|
|
134
|
-
}], progressSpanRef: [{
|
|
135
|
-
type: ViewChild,
|
|
136
|
-
args: ['progressSpanRef']
|
|
137
|
-
}] } });
|
|
138
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zb2JhL2xvYWRlcnMvc3JjL2xvYWRlci9sb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3ZDLE9BQU8sRUFDTix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFDVixLQUFLLEVBQ0wsU0FBUyxFQUNULFFBQVEsRUFDUixNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUUxRCxNQUFNLHdCQUF3QixHQUFHLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztBQXFDM0UsTUFBTSxPQUFPLFVBQVU7SUFnQnRCLElBQXdDLGVBQWUsQ0FBQyxjQUFzQjtRQUM3RSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLGNBQWMsRUFBRSxDQUFDLENBQUM7SUFDckMsQ0FBQztJQUVELElBQW9DLFdBQVcsQ0FBQyxVQUFrQjtRQUNqRSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELElBQWtDLFNBQVMsQ0FBQyxRQUFnQjtRQUMzRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELElBQW1DLFVBQVUsQ0FBQyxTQUFpQjtRQUM5RCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLFNBQVMsRUFBRSxDQUFDLENBQUM7SUFD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IjpbImltcG9ydCB7IE5nSWYgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcblx0Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG5cdENvbXBvbmVudCxcblx0RWxlbWVudFJlZixcblx0SW5wdXQsXG5cdFZpZXdDaGlsZCxcblx0Y29tcHV0ZWQsXG5cdGVmZmVjdCxcblx0c2lnbmFsLFxuXHR1bnRyYWNrZWQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgc2lnbmFsU3RvcmUgfSBmcm9tICdhbmd1bGFyLXRocmVlJztcbmltcG9ydCB7IGluamVjdE5ndHNQcm9ncmVzcyB9IGZyb20gJy4uL3Byb2dyZXNzL3Byb2dyZXNzJztcblxuY29uc3QgZGVmYXVsdERhdGFJbnRlcnBvbGF0aW9uID0gKHA6IG51bWJlcikgPT4gYExvYWRpbmcgJHtwLnRvRml4ZWQoMil9JWA7XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmd0c0xvYWRlclN0YXRlIHtcblx0Y29udGFpbmVyQ2xhc3M/OiBzdHJpbmc7XG5cdGlubmVyQ2xhc3M/OiBzdHJpbmc7XG5cdGJhckNsYXNzPzogc3RyaW5nO1xuXHRkYXRhQ2xhc3M/OiBzdHJpbmc7XG5cdGRhdGFJbnRlcnBvbGF0aW9uOiAodmFsdWU6IG51bWJlcikgPT4gc3RyaW5nO1xuXHRpbml0aWFsU3RhdGU6ICh2YWx1ZTogYm9vbGVhbikgPT4gYm9vbGVhbjtcbn1cblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmd0cy1sb2FkZXInLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdDxkaXZcblx0XHRcdCpuZ0lmPVwic2hvd24oKVwiXG5cdFx0XHRjbGFzcz1cIm5ndHMtbG9hZGVyLWNvbnRhaW5lclwiXG5cdFx0XHRbY2xhc3NdPVwiY29udGFpbmVyKCkgfHwgJydcIlxuXHRcdFx0W3N0eWxlLi0tbmd0cy1sb2FkZXItY29udGFpbmVyLW9wYWNpdHldPVwiYWN0aXZlKCkgPyAxIDogMFwiXG5cdFx0PlxuXHRcdFx0PGRpdj5cblx0XHRcdFx0PGRpdiBjbGFzcz1cIm5ndHMtbG9hZGVyLWlubmVyXCIgW2NsYXNzXT1cImlubmVyKCkgfHwgJydcIj5cblx0XHRcdFx0XHQ8ZGl2XG5cdFx0XHRcdFx0XHRjbGFzcz1cIm5ndHMtbG9hZGVyLWJhclwiXG5cdFx0XHRcdFx0XHRbY2xhc3NdPVwiYmFyKCkgfHwgJydcIlxuXHRcdFx0XHRcdFx0W3N0eWxlLi0tbmd0cy1sb2FkZXItYmFyLXNjYWxlXT1cInByb2dyZXNzKCkgLyAxMDBcIlxuXHRcdFx0XHRcdD48L2Rpdj5cblx0XHRcdFx0XHQ8c3BhbiAjcHJvZ3Jlc3NTcGFuUmVmIGNsYXNzPVwibmd0cy1sb2FkZXItZGF0YVwiIFtjbGFzc109XCJkYXRhKCkgfHwgJydcIj48L3NwYW4+XG5cdFx0XHRcdDwvZGl2PlxuXHRcdFx0PC9kaXY+XG5cdFx0PC9kaXY+XG5cdGAsXG5cdHN0eWxlVXJsczogWycuL2xvYWRlci5jc3MnXSxcblx0aW1wb3J0czogW05nSWZdLFxuXHRjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgTmd0c0xvYWRlciB7XG5cdHByaXZhdGUgaW5wdXRzID0gc2lnbmFsU3RvcmU8Tmd0c0xvYWRlclN0YXRlPih7XG5cdFx0ZGF0YUludGVycG9sYXRpb246IGRlZmF1bHREYXRhSW50ZXJwb2xhdGlvbixcblx0XHRpbml0aWFsU3RhdGU6IChhY3RpdmUpID0+IGFjdGl2ZSxcblx0fSk7XG5cblx0cHJpdmF0ZSBwcm9ncmVzc1N0YXRlID0gaW5qZWN0Tmd0c1Byb2dyZXNzKCk7XG5cblx0YWN0aXZlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5wcm9ncmVzc1N0YXRlKCkuYWN0aXZlKTtcblx0cHJvZ3Jlc3MgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnByb2dyZXNzU3RhdGUoKS5wcm9ncmVzcyk7XG5cblx0Y29udGFpbmVyID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdjb250YWluZXJDbGFzcycpO1xuXHRpbm5lciA9IHRoaXMuaW5wdXRzLnNlbGVjdCgnaW5uZXJDbGFzcycpO1xuXHRiYXIgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2JhckNsYXNzJyk7XG5cdGRhdGEgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2RhdGFDbGFzcycpO1xuXG5cdEBJbnB1dCh7IGFsaWFzOiAnY29udGFpbmVyQ2xhc3MnIH0pIHNldCBfY29udGFpbmVyQ2xhc3MoY29udGFpbmVyQ2xhc3M6IHN0cmluZykge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IGNvbnRhaW5lckNsYXNzIH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdpbm5lckNsYXNzJyB9KSBzZXQgX2lubmVyQ2xhc3MoaW5uZXJDbGFzczogc3RyaW5nKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgaW5uZXJDbGFzcyB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAnYmFyQ2xhc3MnIH0pIHNldCBfYmFyQ2xhc3MoYmFyQ2xhc3M6IHN0cmluZykge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IGJhckNsYXNzIH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdkYXRhQ2xhc3MnIH0pIHNldCBfZGF0YUNsYXNzKGRhdGFDbGFzczogc3RyaW5nKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgZGF0YUNsYXNzIH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdkYXRhSW50ZXJwb2xhdGlvbicgfSkgc2V0IF9kYXRhSW50ZXJwb2xhdGlvbihkYXRhSW50ZXJwb2xhdGlvbjogKHZhbHVlOiBudW1iZXIpID0+IHN0cmluZykge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IGRhdGFJbnRlcnBvbGF0aW9uIH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdpbml0aWFsU3RhdGUnIH0pIHNldCBfaW5pdGlhbFN0YXRlKGluaXRpYWxTdGF0ZTogKHZhbHVlOiBib29sZWFuKSA9PiBib29sZWFuKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgaW5pdGlhbFN0YXRlIH0pO1xuXHR9XG5cblx0QFZpZXdDaGlsZCgncHJvZ3Jlc3NTcGFuUmVmJykgcHJvZ3Jlc3NTcGFuUmVmPzogRWxlbWVudFJlZjxIVE1MU3BhbkVsZW1lbnQ+O1xuXG5cdHNob3duID0gc2lnbmFsKHRoaXMuaW5wdXRzLmdldCgnaW5pdGlhbFN0YXRlJykodGhpcy5hY3RpdmUoKSkpO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdHRoaXMuc2V0U2hvd24oKTtcblx0XHR0aGlzLnVwZGF0ZVByb2dyZXNzKCk7XG5cdH1cblxuXHRwcml2YXRlIHNldFNob3duKCkge1xuXHRcdGVmZmVjdCgob25DbGVhbnVwKSA9PiB7XG5cdFx0XHRjb25zdCBbYWN0aXZlLCBsYXN0U2hvd25dID0gW3RoaXMuYWN0aXZlKCksIHVudHJhY2tlZCh0aGlzLnNob3duKV07XG5cdFx0XHRpZiAobGFzdFNob3duICE9PSBhY3RpdmUpIHtcblx0XHRcdFx0Y29uc3QgdGltZW91dElkID0gc2V0VGltZW91dCgoKSA9PiB7XG5cdFx0XHRcdFx0dGhpcy5zaG93bi5zZXQoYWN0aXZlKTtcblx0XHRcdFx0fSwgMzAwKTtcblx0XHRcdFx0b25DbGVhbnVwKCgpID0+IGNsZWFyVGltZW91dCh0aW1lb3V0SWQpKTtcblx0XHRcdH1cblx0XHR9KTtcblx0fVxuXG5cdHByaXZhdGUgdXBkYXRlUHJvZ3Jlc3MoKSB7XG5cdFx0bGV0IHByb2dyZXNzUmVmID0gMDtcblx0XHRsZXQgcmFmSWQ6IFJldHVyblR5cGU8dHlwZW9mIHJlcXVlc3RBbmltYXRpb25GcmFtZT47XG5cblx0XHRjb25zdCBfZGF0YUludGVycG9sYXRpb24gPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2RhdGFJbnRlcnBvbGF0aW9uJyk7XG5cblx0XHRlZmZlY3QoKG9uQ2xlYW51cCkgPT4ge1xuXHRcdFx0Y29uc3QgW2RhdGFJbnRlcnBvbGF0aW9uLCBwcm9ncmVzc10gPSBbX2RhdGFJbnRlcnBvbGF0aW9uKCksIHRoaXMucHJvZ3Jlc3MoKV07XG5cdFx0XHRjb25zdCB1cGRhdGVQcm9ncmVzcyA9ICgpID0+IHtcblx0XHRcdFx0aWYgKCF0aGlzLnByb2dyZXNzU3BhblJlZj8ubmF0aXZlRWxlbWVudCkgcmV0dXJuO1xuXHRcdFx0XHRwcm9ncmVzc1JlZiArPSAocHJvZ3Jlc3MgLSBwcm9ncmVzc1JlZikgLyAyO1xuXHRcdFx0XHRpZiAocHJvZ3Jlc3NSZWYgPiAwLjk1ICogcHJvZ3Jlc3MgfHwgcHJvZ3Jlc3MgPT09IDEwMCkgcHJvZ3Jlc3NSZWYgPSBwcm9ncmVzcztcblx0XHRcdFx0dGhpcy5wcm9ncmVzc1NwYW5SZWYubmF0aXZlRWxlbWVudC5pbm5lclRleHQgPSBkYXRhSW50ZXJwb2xhdGlvbihwcm9ncmVzc1JlZik7XG5cdFx0XHRcdGlmIChwcm9ncmVzc1JlZiA8IHByb2dyZXNzKSB7XG5cdFx0XHRcdFx0cmFmSWQgPSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUodXBkYXRlUHJvZ3Jlc3MpO1xuXHRcdFx0XHR9XG5cdFx0XHR9O1xuXHRcdFx0dXBkYXRlUHJvZ3Jlc3MoKTtcblx0XHRcdG9uQ2xlYW51cCgoKSA9PiBjYW5jZWxBbmltYXRpb25GcmFtZShyYWZJZCkpO1xuXHRcdH0pO1xuXHR9XG59XG4iXX0=
|
|
87
|
+
}
|
|
88
|
+
`, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".ngts-loader-container{--ngts-loader-container-opacity: 0;position:absolute;top:0;left:0;width:100%;height:100%;background:#171717;display:flex;align-items:center;justify-content:center;transition:opacity .3s ease;z-index:1000;opacity:var(--ngts-loader-container-opacity)}.ngts-loader-inner{width:100px;height:3px;background:#272727;text-align:center}.ngts-loader-bar{--ngts-loader-bar-scale: 0;height:3px;width:100px;background:#fff;transition:transform .2s;transform-origin:left center;transform:scaleX(var(--ngts-loader-bar-scale))}.ngts-loader-data{display:inline-block;position:relative;font-variant-numeric:tabular-nums;margin-top:.8em;color:#f0f0f0;font-size:.6em;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Helvetica Neue,Helvetica,Arial,Roboto,Ubuntu,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol;white-space:nowrap}\n"] }]
|
|
89
|
+
}], ctorParameters: () => [] });
|
|
90
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zb2JhL2xvYWRlcnMvc3JjL2xvYWRlci9sb2FkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNOLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsVUFBVSxFQUNWLFFBQVEsRUFDUixNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEVBQ1QsU0FBUyxHQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQUUxRCxNQUFNLHdCQUF3QixHQUFHLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQztBQXdCM0UsTUFBTSxPQUFPLFVBQVU7SUFpQnRCO1FBaEJRLGtCQUFhLEdBQUcsa0JBQWtCLEVBQUUsQ0FBQztRQUU3QyxXQUFNLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNyRCxhQUFRLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUV6RCxtQkFBYyxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUNuQyxlQUFVLEdBQUcsS0FBSyxDQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQy9CLGFBQVEsR0FBRyxLQUFLLENBQVMsRUFBRSxDQUFDLENBQUM7UUFDN0IsY0FBUyxHQUFHLEtBQUssQ0FBUyxFQUFFLENBQUMsQ0FBQztRQUM5QixzQkFBaUIsR0FBRyxLQUFLLENBQTRCLHdCQUF3QixDQUFDLENBQUM7UUFDL0UsaUJBQVksR0FBRyxLQUFLLENBQThCLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUV0RSxvQkFBZSxHQUFHLFNBQVMsQ0FBOEIsaUJBQWlCLENBQUMsQ0FBQztRQUU1RSxVQUFLLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBR2xELElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNoQixJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVPLFFBQVE7UUFDZixNQUFNLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUNwQixNQUFNLENBQUMsTUFBTSxFQUFFLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztZQUNuRSxJQUFJLFNBQVMsS0FBSyxNQUFNLEVBQUUsQ0FBQztnQkFDMUIsTUFBTSxTQUFTLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRTtvQkFDakMsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQ3hCLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQztnQkFDUixTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7WUFDMUMsQ0FBQztRQUNGLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVPLGNBQWM7UUFDckIsSUFBSSxXQUFXLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLElBQUksS0FBK0MsQ0FBQztRQUVwRCxNQUFNLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUNwQixNQUFNLENBQUMsaUJBQWlCLEVBQUUsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztZQUNsRixNQUFNLGNBQWMsR0FBRyxHQUFHLEVBQUU7Z0JBQzNCLE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxlQUFlLEVBQUUsRUFBRSxhQUFhLENBQUM7Z0JBQzNELElBQUksQ0FBQyxZQUFZO29CQUFFLE9BQU87Z0JBQzFCLFdBQVcsSUFBSSxDQUFDLFFBQVEsR0FBRyxXQUFXLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzVDLElBQUksV0FBVyxHQUFHLElBQUksR0FBRyxRQUFRLElBQUksUUFBUSxLQUFLLEdBQUc7b0JBQUUsV0FBVyxHQUFHLFFBQVEsQ0FBQztnQkFDOUUsWUFBWSxDQUFDLFNBQVMsR0FBRyxpQkFBaUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDeEQsSUFBSSxXQUFXLEdBQUcsUUFBUSxFQUFFLENBQUM7b0JBQzVCLEtBQUssR0FBRyxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsQ0FBQztnQkFDL0MsQ0FBQztZQUNGLENBQUMsQ0FBQztZQUNGLGNBQWMsRUFBRSxDQUFDO1lBQ2pCLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO1FBQzlDLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs4R0FyRFcsVUFBVTtrR0FBVixVQUFVLCtoQ0FuQlo7Ozs7Ozs7Ozs7Ozs7OztFQWVUOzsyRkFJVyxVQUFVO2tCQXRCdEIsU0FBUzsrQkFDQyxhQUFhLGNBQ1gsSUFBSSxZQUNOOzs7Ozs7Ozs7Ozs7Ozs7RUFlVCxtQkFFZ0IsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG5cdENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuXHRDb21wb25lbnQsXG5cdEVsZW1lbnRSZWYsXG5cdGNvbXB1dGVkLFxuXHRlZmZlY3QsXG5cdGlucHV0LFxuXHRzaWduYWwsXG5cdHVudHJhY2tlZCxcblx0dmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGluamVjdE5ndHNQcm9ncmVzcyB9IGZyb20gJy4uL3Byb2dyZXNzL3Byb2dyZXNzJztcblxuY29uc3QgZGVmYXVsdERhdGFJbnRlcnBvbGF0aW9uID0gKHA6IG51bWJlcikgPT4gYExvYWRpbmcgJHtwLnRvRml4ZWQoMil9JWA7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25ndHMtbG9hZGVyJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0dGVtcGxhdGU6IGBcblx0XHRAaWYgKHNob3duKCkpIHtcblx0XHRcdDxkaXZcblx0XHRcdFx0Y2xhc3M9XCJuZ3RzLWxvYWRlci1jb250YWluZXJcIlxuXHRcdFx0XHRbY2xhc3NdPVwiY29udGFpbmVyQ2xhc3MoKVwiXG5cdFx0XHRcdFtzdHlsZS4tLW5ndHMtbG9hZGVyLWNvbnRhaW5lci1vcGFjaXR5XT1cImFjdGl2ZSgpID8gMSA6IDBcIlxuXHRcdFx0PlxuXHRcdFx0XHQ8ZGl2PlxuXHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJuZ3RzLWxvYWRlci1pbm5lclwiIFtjbGFzc109XCJpbm5lckNsYXNzKClcIj5cblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJuZ3RzLWxvYWRlci1iYXJcIiBbY2xhc3NdPVwiYmFyQ2xhc3MoKVwiIFtzdHlsZS4tLW5ndHMtbG9hZGVyLWJhci1zY2FsZV09XCJwcm9ncmVzcygpIC8gMTAwXCI+PC9kaXY+XG5cdFx0XHRcdFx0XHQ8c3BhbiAjcHJvZ3Jlc3NTcGFuUmVmIGNsYXNzPVwibmd0cy1sb2FkZXItZGF0YVwiIFtjbGFzc109XCJkYXRhQ2xhc3MoKVwiPjwvc3Bhbj5cblx0XHRcdFx0XHQ8L2Rpdj5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L2Rpdj5cblx0XHR9XG5cdGAsXG5cdHN0eWxlVXJsczogWycuL2xvYWRlci5jc3MnXSxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE5ndHNMb2FkZXIge1xuXHRwcml2YXRlIHByb2dyZXNzU3RhdGUgPSBpbmplY3ROZ3RzUHJvZ3Jlc3MoKTtcblxuXHRhY3RpdmUgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnByb2dyZXNzU3RhdGUoKS5hY3RpdmUpO1xuXHRwcm9ncmVzcyA9IGNvbXB1dGVkKCgpID0+IHRoaXMucHJvZ3Jlc3NTdGF0ZSgpLnByb2dyZXNzKTtcblxuXHRjb250YWluZXJDbGFzcyA9IGlucHV0PHN0cmluZz4oJycpO1xuXHRpbm5lckNsYXNzID0gaW5wdXQ8c3RyaW5nPignJyk7XG5cdGJhckNsYXNzID0gaW5wdXQ8c3RyaW5nPignJyk7XG5cdGRhdGFDbGFzcyA9IGlucHV0PHN0cmluZz4oJycpO1xuXHRkYXRhSW50ZXJwb2xhdGlvbiA9IGlucHV0PCh2YWx1ZTogbnVtYmVyKSA9PiBzdHJpbmc+KGRlZmF1bHREYXRhSW50ZXJwb2xhdGlvbik7XG5cdGluaXRpYWxTdGF0ZSA9IGlucHV0PCh2YWx1ZTogYm9vbGVhbikgPT4gYm9vbGVhbj4oKGFjdGl2ZSkgPT4gYWN0aXZlKTtcblxuXHRwcm9ncmVzc1NwYW5SZWYgPSB2aWV3Q2hpbGQ8RWxlbWVudFJlZjxIVE1MU3BhbkVsZW1lbnQ+PigncHJvZ3Jlc3NTcGFuUmVmJyk7XG5cblx0c2hvd24gPSBzaWduYWwodGhpcy5pbml0aWFsU3RhdGUoKSh0aGlzLmFjdGl2ZSgpKSk7XG5cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0dGhpcy5zZXRTaG93bigpO1xuXHRcdHRoaXMudXBkYXRlUHJvZ3Jlc3MoKTtcblx0fVxuXG5cdHByaXZhdGUgc2V0U2hvd24oKSB7XG5cdFx0ZWZmZWN0KChvbkNsZWFudXApID0+IHtcblx0XHRcdGNvbnN0IFthY3RpdmUsIGxhc3RTaG93bl0gPSBbdGhpcy5hY3RpdmUoKSwgdW50cmFja2VkKHRoaXMuc2hvd24pXTtcblx0XHRcdGlmIChsYXN0U2hvd24gIT09IGFjdGl2ZSkge1xuXHRcdFx0XHRjb25zdCB0aW1lb3V0SWQgPSBzZXRUaW1lb3V0KCgpID0+IHtcblx0XHRcdFx0XHR0aGlzLnNob3duLnNldChhY3RpdmUpO1xuXHRcdFx0XHR9LCAzMDApO1xuXHRcdFx0XHRvbkNsZWFudXAoKCkgPT4gY2xlYXJUaW1lb3V0KHRpbWVvdXRJZCkpO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG5cblx0cHJpdmF0ZSB1cGRhdGVQcm9ncmVzcygpIHtcblx0XHRsZXQgcHJvZ3Jlc3NSZWYgPSAwO1xuXHRcdGxldCByYWZJZDogUmV0dXJuVHlwZTx0eXBlb2YgcmVxdWVzdEFuaW1hdGlvbkZyYW1lPjtcblxuXHRcdGVmZmVjdCgob25DbGVhbnVwKSA9PiB7XG5cdFx0XHRjb25zdCBbZGF0YUludGVycG9sYXRpb24sIHByb2dyZXNzXSA9IFt0aGlzLmRhdGFJbnRlcnBvbGF0aW9uKCksIHRoaXMucHJvZ3Jlc3MoKV07XG5cdFx0XHRjb25zdCB1cGRhdGVQcm9ncmVzcyA9ICgpID0+IHtcblx0XHRcdFx0Y29uc3QgcHJvZ3Jlc3NTcGFuID0gdGhpcy5wcm9ncmVzc1NwYW5SZWYoKT8ubmF0aXZlRWxlbWVudDtcblx0XHRcdFx0aWYgKCFwcm9ncmVzc1NwYW4pIHJldHVybjtcblx0XHRcdFx0cHJvZ3Jlc3NSZWYgKz0gKHByb2dyZXNzIC0gcHJvZ3Jlc3NSZWYpIC8gMjtcblx0XHRcdFx0aWYgKHByb2dyZXNzUmVmID4gMC45NSAqIHByb2dyZXNzIHx8IHByb2dyZXNzID09PSAxMDApIHByb2dyZXNzUmVmID0gcHJvZ3Jlc3M7XG5cdFx0XHRcdHByb2dyZXNzU3Bhbi5pbm5lclRleHQgPSBkYXRhSW50ZXJwb2xhdGlvbihwcm9ncmVzc1JlZik7XG5cdFx0XHRcdGlmIChwcm9ncmVzc1JlZiA8IHByb2dyZXNzKSB7XG5cdFx0XHRcdFx0cmFmSWQgPSByZXF1ZXN0QW5pbWF0aW9uRnJhbWUodXBkYXRlUHJvZ3Jlc3MpO1xuXHRcdFx0XHR9XG5cdFx0XHR9O1xuXHRcdFx0dXBkYXRlUHJvZ3Jlc3MoKTtcblx0XHRcdG9uQ2xlYW51cCgoKSA9PiBjYW5jZWxBbmltYXRpb25GcmFtZShyYWZJZCkpO1xuXHRcdH0pO1xuXHR9XG59XG4iXX0=
|