angular-three-soba 2.0.0-beta.9 → 2.0.0
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/README.md +62 -4
- package/abstractions/README.md +279 -2
- package/abstractions/index.d.ts +13 -6
- package/abstractions/lib/billboard.d.ts +19 -0
- package/abstractions/lib/catmull-rom-line.d.ts +617 -0
- package/abstractions/lib/cubic-bezier-line.d.ts +19 -0
- package/abstractions/lib/edges.d.ts +800 -0
- package/abstractions/lib/gradient-texture.d.ts +24 -0
- package/abstractions/lib/grid.d.ts +315 -0
- package/abstractions/lib/helper.d.ts +25 -0
- package/abstractions/lib/line.d.ts +41 -0
- package/abstractions/lib/prism-geometry.d.ts +32 -0
- package/abstractions/lib/quadratic-bezier-line.d.ts +21 -0
- package/abstractions/lib/rounded-box.d.ts +41 -0
- package/abstractions/lib/text-3d.d.ts +314 -0
- package/abstractions/lib/text.d.ts +54 -0
- package/cameras/README.md +91 -2
- package/cameras/index.d.ts +4 -4
- package/cameras/lib/camera-content.d.ts +10 -0
- package/cameras/lib/cube-camera.d.ts +38 -0
- package/cameras/lib/orthographic-camera.d.ts +40 -0
- package/cameras/lib/perspective-camera.d.ts +36 -0
- package/controls/README.md +96 -2
- package/controls/index.d.ts +4 -1
- package/controls/lib/camera-controls.d.ts +31 -0
- package/controls/lib/orbit-controls.d.ts +38 -0
- package/controls/lib/pivot-controls/axis-arrow.d.ts +31 -0
- package/controls/lib/pivot-controls/axis-rotator.d.ts +30 -0
- package/controls/lib/pivot-controls/pivot-controls.d.ts +110 -0
- package/controls/lib/pivot-controls/plane-slider.d.ts +32 -0
- package/controls/lib/pivot-controls/scaling-sphere.d.ts +32 -0
- package/controls/lib/scroll-controls.d.ts +78 -0
- package/esm2022/abstractions/index.mjs +14 -7
- package/esm2022/abstractions/lib/billboard.mjs +69 -0
- package/esm2022/abstractions/lib/catmull-rom-line.mjs +76 -0
- package/esm2022/abstractions/lib/cubic-bezier-line.mjs +51 -0
- package/esm2022/abstractions/lib/edges.mjs +70 -0
- package/esm2022/abstractions/lib/gradient-texture.mjs +91 -0
- package/esm2022/abstractions/lib/grid.mjs +103 -0
- package/esm2022/abstractions/lib/helper.mjs +76 -0
- package/esm2022/abstractions/lib/line.mjs +126 -0
- package/esm2022/abstractions/lib/prism-geometry.mjs +46 -0
- package/esm2022/abstractions/lib/quadratic-bezier-line.mjs +73 -0
- package/esm2022/abstractions/lib/rounded-box.mjs +111 -0
- package/esm2022/abstractions/lib/text-3d.mjs +98 -0
- package/esm2022/abstractions/lib/text.mjs +91 -0
- package/esm2022/cameras/index.mjs +5 -5
- package/esm2022/cameras/lib/camera-content.mjs +14 -0
- package/esm2022/cameras/lib/cube-camera.mjs +111 -0
- package/esm2022/cameras/lib/orthographic-camera.mjs +131 -0
- package/esm2022/cameras/lib/perspective-camera.mjs +104 -0
- package/esm2022/controls/index.mjs +5 -2
- package/esm2022/controls/lib/camera-controls.mjs +127 -0
- package/esm2022/controls/lib/orbit-controls.mjs +132 -0
- package/esm2022/controls/lib/pivot-controls/axis-arrow.mjs +263 -0
- package/esm2022/controls/lib/pivot-controls/axis-rotator.mjs +264 -0
- package/esm2022/controls/lib/pivot-controls/pivot-controls.mjs +340 -0
- package/esm2022/controls/lib/pivot-controls/plane-slider.mjs +266 -0
- package/esm2022/controls/lib/pivot-controls/scaling-sphere.mjs +232 -0
- package/esm2022/controls/lib/scroll-controls.mjs +268 -0
- package/esm2022/loaders/index.mjs +6 -5
- package/esm2022/loaders/lib/font-loader.mjs +49 -0
- package/esm2022/loaders/lib/gltf-loader.mjs +51 -0
- package/esm2022/loaders/lib/loader.mjs +109 -0
- package/esm2022/loaders/lib/progress.mjs +51 -0
- package/esm2022/loaders/lib/texture-loader.mjs +32 -0
- package/esm2022/materials/index.mjs +8 -7
- package/esm2022/materials/lib/custom-shader-material.mjs +71 -0
- package/esm2022/materials/lib/mesh-distort-material.mjs +42 -0
- package/esm2022/materials/lib/mesh-reflector-material.mjs +278 -0
- package/esm2022/materials/lib/mesh-refraction-material.mjs +144 -0
- package/esm2022/materials/lib/mesh-transmission-material.mjs +188 -0
- package/esm2022/materials/lib/mesh-wobble-material.mjs +42 -0
- package/esm2022/materials/lib/point-material.mjs +33 -0
- package/esm2022/misc/index.mjs +14 -14
- package/esm2022/misc/lib/animations.mjs +71 -0
- package/esm2022/misc/lib/bake-shadows.mjs +26 -0
- package/esm2022/misc/lib/computed-attribute.mjs +55 -0
- package/esm2022/misc/lib/constants.mjs +5 -0
- package/esm2022/misc/lib/decal.mjs +139 -0
- package/esm2022/misc/lib/deprecated.mjs +15 -0
- package/esm2022/misc/lib/depth-buffer.mjs +39 -0
- package/esm2022/misc/lib/fbo.mjs +86 -0
- package/esm2022/misc/lib/html/html-content.mjs +327 -0
- package/esm2022/misc/lib/html/html.mjs +129 -0
- package/esm2022/misc/lib/html/utils.mjs +74 -0
- package/esm2022/misc/lib/intersect.mjs +52 -0
- package/esm2022/misc/lib/sampler.mjs +122 -0
- package/esm2022/misc/lib/scale-factor.mjs +29 -0
- package/esm2022/performances/index.mjs +7 -6
- package/esm2022/performances/lib/adaptive-dpr.mjs +52 -0
- package/esm2022/performances/lib/adaptive-events.mjs +28 -0
- package/esm2022/performances/lib/detailed.mjs +57 -0
- package/esm2022/performances/lib/instances/instances.mjs +183 -0
- package/esm2022/performances/lib/instances/position-mesh.mjs +51 -0
- package/esm2022/performances/lib/points/points.mjs +278 -0
- package/esm2022/performances/lib/points/position-point.mjs +53 -0
- package/esm2022/performances/lib/segments/segment-object.mjs +9 -0
- package/esm2022/performances/lib/segments/segments.mjs +129 -0
- package/esm2022/shaders/index.mjs +4 -18
- package/esm2022/shaders/lib/grid-material.mjs +81 -0
- package/esm2022/shaders/lib/mesh-refraction-material.mjs +163 -0
- package/esm2022/shaders/lib/point-material.mjs +24 -0
- package/esm2022/staging/index.mjs +19 -22
- package/esm2022/staging/lib/accumulative-shadows.mjs +182 -0
- package/esm2022/staging/lib/backdrop.mjs +73 -0
- package/esm2022/staging/lib/bb-anchor.mjs +58 -0
- package/esm2022/staging/lib/bounds.mjs +286 -0
- package/esm2022/staging/lib/camera-shake.mjs +69 -0
- package/esm2022/staging/lib/caustics.mjs +188 -0
- package/esm2022/staging/lib/center.mjs +118 -0
- package/esm2022/staging/lib/contact-shadows.mjs +214 -0
- package/esm2022/staging/lib/environment.mjs +481 -0
- package/esm2022/staging/lib/float.mjs +70 -0
- package/esm2022/staging/lib/lightformer.mjs +107 -0
- package/esm2022/staging/lib/matcap-texture.mjs +81 -0
- package/esm2022/staging/lib/normal-texture.mjs +81 -0
- package/esm2022/staging/lib/randomized-lights.mjs +104 -0
- package/esm2022/staging/lib/render-texture.mjs +203 -0
- package/esm2022/staging/lib/sky.mjs +86 -0
- package/esm2022/staging/lib/spot-light.mjs +453 -0
- package/esm2022/staging/lib/stage.mjs +236 -0
- package/esm2022/{utils/angular-three-soba-utils.mjs → stats/angular-three-soba-stats.mjs} +1 -1
- package/esm2022/stats/index.mjs +2 -0
- package/esm2022/stats/lib/stats.mjs +63 -0
- package/esm2022/vanilla-exports/angular-three-soba-vanilla-exports.mjs +5 -0
- package/esm2022/vanilla-exports/index.mjs +3 -0
- package/fesm2022/angular-three-soba-abstractions.mjs +884 -697
- package/fesm2022/angular-three-soba-abstractions.mjs.map +1 -1
- package/fesm2022/angular-three-soba-cameras.mjs +261 -308
- package/fesm2022/angular-three-soba-cameras.mjs.map +1 -1
- package/fesm2022/angular-three-soba-controls.mjs +1776 -109
- package/fesm2022/angular-three-soba-controls.mjs.map +1 -1
- package/fesm2022/angular-three-soba-loaders.mjs +191 -145
- package/fesm2022/angular-three-soba-loaders.mjs.map +1 -1
- package/fesm2022/angular-three-soba-materials.mjs +527 -748
- package/fesm2022/angular-three-soba-materials.mjs.map +1 -1
- package/fesm2022/angular-three-soba-misc.mjs +783 -1935
- package/fesm2022/angular-three-soba-misc.mjs.map +1 -1
- package/fesm2022/angular-three-soba-performances.mjs +591 -475
- package/fesm2022/angular-three-soba-performances.mjs.map +1 -1
- package/fesm2022/angular-three-soba-shaders.mjs +51 -1369
- package/fesm2022/angular-three-soba-shaders.mjs.map +1 -1
- package/fesm2022/angular-three-soba-staging.mjs +2350 -3521
- package/fesm2022/angular-three-soba-staging.mjs.map +1 -1
- package/fesm2022/angular-three-soba-stats.mjs +70 -0
- package/fesm2022/angular-three-soba-stats.mjs.map +1 -0
- package/fesm2022/angular-three-soba-vanilla-exports.mjs +6 -0
- package/fesm2022/angular-three-soba-vanilla-exports.mjs.map +1 -0
- package/loaders/README.md +130 -2
- package/loaders/index.d.ts +5 -4
- package/loaders/lib/font-loader.d.ts +27 -0
- package/loaders/lib/gltf-loader.d.ts +24 -0
- package/loaders/lib/loader.d.ts +29 -0
- package/loaders/lib/progress.d.ts +9 -0
- package/loaders/lib/texture-loader.d.ts +13 -0
- package/materials/README.md +160 -2
- package/materials/index.d.ts +7 -6
- package/materials/lib/custom-shader-material.d.ts +20 -0
- package/materials/lib/mesh-distort-material.d.ts +17 -0
- package/materials/lib/mesh-reflector-material.d.ts +51 -0
- package/materials/lib/mesh-refraction-material.d.ts +42 -0
- package/materials/lib/mesh-transmission-material.d.ts +77 -0
- package/materials/lib/mesh-wobble-material.d.ts +15 -0
- package/materials/lib/point-material.d.ts +11 -0
- package/metadata.json +1 -1
- package/misc/README.md +217 -2
- package/misc/index.d.ts +13 -13
- package/misc/lib/animations.d.ts +17 -0
- package/misc/lib/computed-attribute.d.ts +64 -0
- package/misc/lib/constants.d.ts +1 -0
- package/misc/lib/decal.d.ts +27 -0
- package/misc/lib/deprecated.d.ts +14 -0
- package/misc/lib/depth-buffer.d.ts +8 -0
- package/misc/lib/fbo.d.ts +46 -0
- package/misc/lib/html/html-content.d.ts +47 -0
- package/misc/lib/html/html.d.ts +30 -0
- package/misc/lib/html/utils.d.ts +14 -0
- package/misc/lib/intersect.d.ts +13 -0
- package/misc/lib/sampler.d.ts +73 -0
- package/misc/lib/scale-factor.d.ts +3 -0
- package/package.json +89 -49
- package/performances/index.d.ts +6 -5
- package/performances/lib/adaptive-dpr.d.ts +7 -0
- package/performances/{adaptive-events → lib}/adaptive-events.d.ts +0 -3
- package/performances/lib/detailed.d.ts +17 -0
- package/performances/lib/instances/instances.d.ts +122 -0
- package/performances/lib/instances/position-mesh.d.ts +20 -0
- package/performances/lib/points/points.d.ts +224 -0
- package/performances/lib/points/position-point.d.ts +21 -0
- package/performances/lib/segments/segment-object.d.ts +17 -0
- package/performances/lib/segments/segments.d.ts +97 -0
- package/shaders/index.d.ts +3 -17
- package/shaders/lib/grid-material.d.ts +69 -0
- package/shaders/lib/mesh-refraction-material.d.ts +11 -0
- package/shaders/lib/point-material.d.ts +14 -0
- package/staging/README.md +473 -2
- package/staging/index.d.ts +18 -21
- package/staging/lib/accumulative-shadows.d.ts +75 -0
- package/staging/lib/backdrop.d.ts +22 -0
- package/staging/lib/bb-anchor.d.ts +17 -0
- package/staging/lib/bounds.d.ts +47 -0
- package/staging/lib/camera-shake.d.ts +29 -0
- package/staging/lib/caustics.d.ts +53 -0
- package/staging/lib/center.d.ts +390 -0
- package/staging/lib/contact-shadows.d.ts +55 -0
- package/staging/lib/environment.d.ts +132 -0
- package/staging/lib/float.d.ts +20 -0
- package/staging/lib/lightformer.d.ts +310 -0
- package/staging/lib/matcap-texture.d.ts +32 -0
- package/staging/lib/normal-texture.d.ts +37 -0
- package/staging/lib/randomized-lights.d.ts +54 -0
- package/staging/lib/render-texture.d.ts +64 -0
- package/staging/lib/sky.d.ts +32 -0
- package/staging/lib/spot-light.d.ts +119 -0
- package/staging/lib/stage.d.ts +352 -0
- package/stats/README.md +3 -0
- package/stats/index.d.ts +1 -0
- package/stats/lib/stats.d.ts +14 -0
- package/vanilla-exports/README.md +3 -0
- package/vanilla-exports/index.d.ts +27 -0
- package/web-types.json +1 -1
- 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/text/text.d.ts +0 -82
- package/abstractions/text-3d/text-3d.d.ts +0 -81
- package/assets/distort.vert.glsl +0 -1
- 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/orthographic-camera/orthographic-camera.d.ts +0 -37
- package/cameras/perspective-camera/perspective-camera.d.ts +0 -18
- package/controls/orbit-controls/orbit-controls.d.ts +0 -54
- 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/text/text.mjs +0 -274
- package/esm2022/abstractions/text-3d/text-3d.mjs +0 -165
- package/esm2022/cameras/camera/camera-content.mjs +0 -20
- package/esm2022/cameras/camera/camera.mjs +0 -77
- package/esm2022/cameras/cube-camera/cube-camera.mjs +0 -161
- package/esm2022/cameras/orthographic-camera/orthographic-camera.mjs +0 -102
- package/esm2022/cameras/perspective-camera/perspective-camera.mjs +0 -46
- package/esm2022/controls/orbit-controls/orbit-controls.mjs +0 -181
- package/esm2022/loaders/gltf-loader/gltf-loader.mjs +0 -30
- package/esm2022/loaders/loader/loader.mjs +0 -138
- package/esm2022/loaders/progress/progress.mjs +0 -45
- package/esm2022/loaders/texture-loader/texture-loader.mjs +0 -28
- 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 -46
- 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/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/points/points-input.mjs +0 -64
- package/esm2022/performances/points/points.mjs +0 -329
- 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/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/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/backdrop/backdrop.mjs +0 -77
- package/esm2022/staging/bb-anchor/bb-anchor.mjs +0 -70
- 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 -163
- 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 -105
- package/esm2022/staging/float/float.mjs +0 -94
- 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 -388
- package/esm2022/staging/stars/stars.mjs +0 -147
- package/esm2022/staging/wireframe/wireframe-input.mjs +0 -191
- package/esm2022/staging/wireframe/wireframe.mjs +0 -224
- package/esm2022/utils/content/content.mjs +0 -15
- package/esm2022/utils/index.mjs +0 -2
- package/fesm2022/angular-three-soba-modifiers.mjs +0 -71
- package/fesm2022/angular-three-soba-modifiers.mjs.map +0 -1
- package/fesm2022/angular-three-soba-utils.mjs +0 -22
- package/fesm2022/angular-three-soba-utils.mjs.map +0 -1
- package/loaders/gltf-loader/gltf-loader.d.ts +0 -10
- package/loaders/loader/loader.d.ts +0 -33
- package/loaders/progress/progress.d.ts +0 -9
- package/loaders/texture-loader/texture-loader.d.ts +0 -7
- 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/animations/animations.d.ts +0 -15
- 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/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/adaptive-dpr/adaptive-dpr.d.ts +0 -14
- 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/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/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/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/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
- /package/misc/{bake-shadows → lib}/bake-shadows.d.ts +0 -0
|
@@ -1,165 +0,0 @@
|
|
|
1
|
-
import { Component, computed, CUSTOM_ELEMENTS_SCHEMA, Input } from '@angular/core';
|
|
2
|
-
import { toObservable, toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
-
import { extend, injectNgtRef, NgtArgs, signalStore } from 'angular-three';
|
|
4
|
-
import { map, of, switchMap } from 'rxjs';
|
|
5
|
-
import { Mesh } from 'three';
|
|
6
|
-
import { FontLoader, TextGeometry } from 'three-stdlib';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
extend({ Mesh, TextGeometry });
|
|
9
|
-
export class NgtsText3D {
|
|
10
|
-
constructor() {
|
|
11
|
-
this.inputs = signalStore({
|
|
12
|
-
lineHeight: 1,
|
|
13
|
-
letterSpacing: 0,
|
|
14
|
-
size: 1,
|
|
15
|
-
height: 0.2,
|
|
16
|
-
bevelThickness: 0.1,
|
|
17
|
-
bevelSize: 0.01,
|
|
18
|
-
bevelEnabled: false,
|
|
19
|
-
bevelOffset: 0,
|
|
20
|
-
bevelSegments: 4,
|
|
21
|
-
curveSegments: 8,
|
|
22
|
-
});
|
|
23
|
-
this.textRef = injectNgtRef();
|
|
24
|
-
this.fontData = toSignal(toObservable(this.inputs.select('font')).pipe(switchMap((font) => {
|
|
25
|
-
if (typeof font === 'string')
|
|
26
|
-
return fetch(font).then((res) => res.json());
|
|
27
|
-
return of(font);
|
|
28
|
-
}), map((fontData) => new FontLoader().parse(fontData))));
|
|
29
|
-
this.text = this.inputs.select('text');
|
|
30
|
-
this.size = this.inputs.select('size');
|
|
31
|
-
this.height = this.inputs.select('height');
|
|
32
|
-
this.bevelThickness = this.inputs.select('bevelThickness');
|
|
33
|
-
this.bevelSize = this.inputs.select('bevelSize');
|
|
34
|
-
this.bevelEnabled = this.inputs.select('bevelEnabled');
|
|
35
|
-
this.bevelSegments = this.inputs.select('bevelSegments');
|
|
36
|
-
this.bevelOffset = this.inputs.select('bevelOffset');
|
|
37
|
-
this.curveSegments = this.inputs.select('curveSegments');
|
|
38
|
-
this.letterSpacing = this.inputs.select('letterSpacing');
|
|
39
|
-
this.lineHeight = this.inputs.select('lineHeight');
|
|
40
|
-
this.geometryArgs = computed(() => {
|
|
41
|
-
const fontData = this.fontData();
|
|
42
|
-
if (!fontData || !fontData.data)
|
|
43
|
-
return null;
|
|
44
|
-
return [
|
|
45
|
-
this.text(),
|
|
46
|
-
{
|
|
47
|
-
font: fontData,
|
|
48
|
-
size: this.size(),
|
|
49
|
-
height: this.height(),
|
|
50
|
-
bevelThickness: this.bevelThickness(),
|
|
51
|
-
bevelSize: this.bevelSize(),
|
|
52
|
-
bevelSegments: this.bevelSegments(),
|
|
53
|
-
bevelEnabled: this.bevelEnabled(),
|
|
54
|
-
bevelOffset: this.bevelOffset(),
|
|
55
|
-
curveSegments: this.curveSegments(),
|
|
56
|
-
letterSpacing: this.letterSpacing(),
|
|
57
|
-
lineHeight: this.lineHeight(),
|
|
58
|
-
},
|
|
59
|
-
];
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
set _font(font) {
|
|
63
|
-
this.inputs.set({ font });
|
|
64
|
-
}
|
|
65
|
-
set _text(text) {
|
|
66
|
-
this.inputs.set({ text });
|
|
67
|
-
}
|
|
68
|
-
set _bevelEnabled(bevelEnabled) {
|
|
69
|
-
this.inputs.set({ bevelEnabled });
|
|
70
|
-
}
|
|
71
|
-
set _bevelOffset(bevelOffset) {
|
|
72
|
-
this.inputs.set({ bevelOffset });
|
|
73
|
-
}
|
|
74
|
-
set _bevelSize(bevelSize) {
|
|
75
|
-
this.inputs.set({ bevelSize });
|
|
76
|
-
}
|
|
77
|
-
set _bevelThickness(bevelThickness) {
|
|
78
|
-
this.inputs.set({ bevelThickness });
|
|
79
|
-
}
|
|
80
|
-
set _curveSegments(curveSegments) {
|
|
81
|
-
this.inputs.set({ curveSegments });
|
|
82
|
-
}
|
|
83
|
-
set _bevelSegments(bevelSegments) {
|
|
84
|
-
this.inputs.set({ bevelSegments });
|
|
85
|
-
}
|
|
86
|
-
set _height(height) {
|
|
87
|
-
this.inputs.set({ height });
|
|
88
|
-
}
|
|
89
|
-
set _size(size) {
|
|
90
|
-
this.inputs.set({ size });
|
|
91
|
-
}
|
|
92
|
-
set _lineHeight(lineHeight) {
|
|
93
|
-
this.inputs.set({ lineHeight });
|
|
94
|
-
}
|
|
95
|
-
set _letterSpacing(letterSpacing) {
|
|
96
|
-
this.inputs.set({ letterSpacing });
|
|
97
|
-
}
|
|
98
|
-
set _smooth(smooth) {
|
|
99
|
-
this.inputs.set({ smooth });
|
|
100
|
-
}
|
|
101
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgtsText3D, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
102
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: NgtsText3D, isStandalone: true, selector: "ngts-text-3d", inputs: { textRef: "textRef", _font: ["font", "_font"], _text: ["text", "_text"], _bevelEnabled: ["bevelEnabled", "_bevelEnabled"], _bevelOffset: ["bevelOffset", "_bevelOffset"], _bevelSize: ["bevelSize", "_bevelSize"], _bevelThickness: ["bevelThickness", "_bevelThickness"], _curveSegments: ["curveSegments", "_curveSegments"], _bevelSegments: ["bevelSegments", "_bevelSegments"], _height: ["height", "_height"], _size: ["size", "_size"], _lineHeight: ["lineHeight", "_lineHeight"], _letterSpacing: ["letterSpacing", "_letterSpacing"], _smooth: ["smooth", "_smooth"] }, ngImport: i0, template: `
|
|
103
|
-
<ngt-mesh ngtCompound [ref]="textRef">
|
|
104
|
-
<ngt-text-geometry *args="geometryArgs()" />
|
|
105
|
-
<ng-content />
|
|
106
|
-
</ngt-mesh>
|
|
107
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }] }); }
|
|
108
|
-
}
|
|
109
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgtsText3D, decorators: [{
|
|
110
|
-
type: Component,
|
|
111
|
-
args: [{
|
|
112
|
-
selector: 'ngts-text-3d',
|
|
113
|
-
standalone: true,
|
|
114
|
-
template: `
|
|
115
|
-
<ngt-mesh ngtCompound [ref]="textRef">
|
|
116
|
-
<ngt-text-geometry *args="geometryArgs()" />
|
|
117
|
-
<ng-content />
|
|
118
|
-
</ngt-mesh>
|
|
119
|
-
`,
|
|
120
|
-
imports: [NgtArgs],
|
|
121
|
-
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
122
|
-
}]
|
|
123
|
-
}], propDecorators: { textRef: [{
|
|
124
|
-
type: Input
|
|
125
|
-
}], _font: [{
|
|
126
|
-
type: Input,
|
|
127
|
-
args: [{ required: true, alias: 'font' }]
|
|
128
|
-
}], _text: [{
|
|
129
|
-
type: Input,
|
|
130
|
-
args: [{ required: true, alias: 'text' }]
|
|
131
|
-
}], _bevelEnabled: [{
|
|
132
|
-
type: Input,
|
|
133
|
-
args: [{ alias: 'bevelEnabled' }]
|
|
134
|
-
}], _bevelOffset: [{
|
|
135
|
-
type: Input,
|
|
136
|
-
args: [{ alias: 'bevelOffset' }]
|
|
137
|
-
}], _bevelSize: [{
|
|
138
|
-
type: Input,
|
|
139
|
-
args: [{ alias: 'bevelSize' }]
|
|
140
|
-
}], _bevelThickness: [{
|
|
141
|
-
type: Input,
|
|
142
|
-
args: [{ alias: 'bevelThickness' }]
|
|
143
|
-
}], _curveSegments: [{
|
|
144
|
-
type: Input,
|
|
145
|
-
args: [{ alias: 'curveSegments' }]
|
|
146
|
-
}], _bevelSegments: [{
|
|
147
|
-
type: Input,
|
|
148
|
-
args: [{ alias: 'bevelSegments' }]
|
|
149
|
-
}], _height: [{
|
|
150
|
-
type: Input,
|
|
151
|
-
args: [{ alias: 'height' }]
|
|
152
|
-
}], _size: [{
|
|
153
|
-
type: Input,
|
|
154
|
-
args: [{ alias: 'size' }]
|
|
155
|
-
}], _lineHeight: [{
|
|
156
|
-
type: Input,
|
|
157
|
-
args: [{ alias: 'lineHeight' }]
|
|
158
|
-
}], _letterSpacing: [{
|
|
159
|
-
type: Input,
|
|
160
|
-
args: [{ alias: 'letterSpacing' }]
|
|
161
|
-
}], _smooth: [{
|
|
162
|
-
type: Input,
|
|
163
|
-
args: [{ alias: 'smooth' }]
|
|
164
|
-
}] } });
|
|
165
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGV4dC0zZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc29iYS9hYnN0cmFjdGlvbnMvc3JjL3RleHQtM2QvdGV4dC0zZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxzQkFBc0IsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkYsT0FBTyxFQUFFLFlBQVksRUFBRSxRQUFRLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFnQixNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDMUMsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUM3QixPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBMEIsTUFBTSxjQUFjLENBQUM7O0FBWWhGLE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsQ0FBQyxDQUFDO0FBK0IvQixNQUFNLE9BQU8sVUFBVTtJQVp2QjtRQWFTLFdBQU0sR0FBRyxXQUFXLENBQWtCO1lBQzdDLFVBQVUsRUFBRSxDQUFDO1lBQ2IsYUFBYSxFQUFFLENBQUM7WUFDaEIsSUFBSSxFQUFFLENBQUM7WUFDUCxNQUFNLEVBQUUsR0FBRztZQUNYLGNBQWMsRUFBRSxHQUFHO1lBQ25CLFNBQVMsRUFBRSxJQUFJO1lBQ2YsWUFBWSxFQUFFLEtBQUs7WUFDbkIsV0FBVyxFQUFFLENBQUM7WUFDZCxhQUFhLEVBQUUsQ0FBQztZQUNoQixhQUFhLEVBQUUsQ0FBQztTQUNoQixDQUFDLENBQUM7UUFFTSxZQUFPLEdBQUcsWUFBWSxFQUFRLENBQUM7UUFzRGhDLGFBQVEsR0FBRyxRQUFRLENBQzFCLFlBQVksQ0FBQyxJQUFJ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RUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFO2dCQUlNLGNBQWM7c0JBQXBELEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFO2dCQUlELE9BQU87c0JBQXRDLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFO2dCQUlJLEtBQUs7c0JBQWxDLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFO2dCQUlZLFdBQVc7c0JBQTlDLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsWUFBWSxFQUFFO2dCQUlTLGNBQWM7c0JBQXBELEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFFO2dCQUlELE9BQU87c0JBQXRDLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvT2JzZXJ2YWJsZSwgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBleHRlbmQsIGluamVjdE5ndFJlZiwgTmd0QXJncywgc2lnbmFsU3RvcmUsIHR5cGUgTmd0TWVzaCB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgbWFwLCBvZiwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBNZXNoIH0gZnJvbSAndGhyZWUnO1xuaW1wb3J0IHsgRm9udExvYWRlciwgVGV4dEdlb21ldHJ5LCBUZXh0R2VvbWV0cnlQYXJhbWV0ZXJzIH0gZnJvbSAndGhyZWUtc3RkbGliJztcblxuZGVjbGFyZSB0eXBlIEdseXBoID0geyBfY2FjaGVkT3V0bGluZTogc3RyaW5nW107IGhhOiBudW1iZXI7IG86IHN0cmluZyB9O1xuXG5kZWNsYXJlIHR5cGUgRm9udERhdGEgPSB7XG5cdGJvdW5kaW5nQm94OiB7IHlNYXg6IG51bWJlcjsgeU1pbjogbnVtYmVyIH07XG5cdGZhbWlseU5hbWU6IHN0cmluZztcblx0Z2x5cGhzOiB7IFtrOiBzdHJpbmddOiBHbHlwaCB9O1xuXHRyZXNvbHV0aW9uOiBudW1iZXI7XG5cdHVuZGVybGluZVRoaWNrbmVzczogbnVtYmVyO1xufTtcblxuZXh0ZW5kKHsgTWVzaCwgVGV4dEdlb21ldHJ5IH0pO1xuXG5leHBvcnQgdHlwZSBOZ3RzVGV4dDNEU3RhdGUgPSB7XG5cdGZvbnQ6IEZvbnREYXRhIHwgc3RyaW5nO1xuXHR0ZXh0OiBzdHJpbmc7XG5cdGJldmVsU2VnbWVudHM/OiBudW1iZXI7XG5cdHNtb290aD86IG51bWJlcjtcbn0gJiBPbWl0PFRleHRHZW9tZXRyeVBhcmFtZXRlcnMsICdmb250Jz47XG5cbmRlY2xhcmUgZ2xvYmFsIHtcblx0aW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG5cdFx0LyoqXG5cdFx0ICogQGV4dGVuZHMgbmd0LW1lc2hcblx0XHQgKiBAZXh0ZW5kcyB0aHJlZS1zdGRsaWJ8VGV4dEdlb21ldHJ5UGFyYW1ldGVyc1xuXHRcdCAqL1xuXHRcdCduZ3RzLXRleHQtM2QnOiBOZ3RzVGV4dDNEU3RhdGUgJiBOZ3RNZXNoO1xuXHR9XG59XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25ndHMtdGV4dC0zZCcsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdHRlbXBsYXRlOiBgXG5cdFx0PG5ndC1tZXNoIG5ndENvbXBvdW5kIFtyZWZdPVwidGV4dFJlZlwiPlxuXHRcdFx0PG5ndC10ZXh0LWdlb21ldHJ5ICphcmdzPVwiZ2VvbWV0cnlBcmdzKClcIiAvPlxuXHRcdFx0PG5nLWNvbnRlbnQgLz5cblx0XHQ8L25ndC1tZXNoPlxuXHRgLFxuXHRpbXBvcnRzOiBbTmd0QXJnc10sXG5cdHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0c1RleHQzRCB7XG5cdHByaXZhdGUgaW5wdXRzID0gc2lnbmFsU3RvcmU8Tmd0c1RleHQzRFN0YXRlPih7XG5cdFx0bGluZUhlaWdodDogMSxcblx0XHRsZXR0ZXJTcGFjaW5nOiAwLFxuXHRcdHNpemU6IDEsXG5cdFx0aGVpZ2h0OiAwLjIsXG5cdFx0YmV2ZWxUaGlja25lc3M6IDAuMSxcblx0XHRiZXZlbFNpemU6IDAuMDEsXG5cdFx0YmV2ZWxFbmFibGVkOiBmYWxzZSxcblx0XHRiZXZlbE9mZnNldDogMCxcblx0XHRiZXZlbFNlZ21lbnRzOiA0LFxuXHRcdGN1cnZlU2VnbWVudHM6IDgsXG5cdH0pO1xuXG5cdEBJbnB1dCgpIHRleHRSZWYgPSBpbmplY3ROZ3RSZWY8TWVzaD4oKTtcblxuXHRASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSwgYWxpYXM6ICdmb250JyB9KSBzZXQgX2ZvbnQoZm9udDogRm9udERhdGEgfCBzdHJpbmcpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBmb250IH0pO1xuXHR9XG5cblx0QElucHV0KHsgcmVxdWlyZWQ6IHRydWUsIGFsaWFzOiAndGV4dCcgfSkgc2V0IF90ZXh0KHRleHQ6IHN0cmluZykge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IHRleHQgfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ2JldmVsRW5hYmxlZCcgfSkgc2V0IF9iZXZlbEVuYWJsZWQoYmV2ZWxFbmFibGVkOiBib29sZWFuKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgYmV2ZWxFbmFibGVkIH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdiZXZlbE9mZnNldCcgfSkgc2V0IF9iZXZlbE9mZnNldChiZXZlbE9mZnNldDogbnVtYmVyKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgYmV2ZWxPZmZzZXQgfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ2JldmVsU2l6ZScgfSkgc2V0IF9iZXZlbFNpemUoYmV2ZWxTaXplOiBudW1iZXIpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBiZXZlbFNpemUgfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ2JldmVsVGhpY2tuZXNzJyB9KSBzZXQgX2JldmVsVGhpY2tuZXNzKGJldmVsVGhpY2tuZXNzOiBudW1iZXIpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBiZXZlbFRoaWNrbmVzcyB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAnY3VydmVTZWdtZW50cycgfSkgc2V0IF9jdXJ2ZVNlZ21lbnRzKGN1cnZlU2VnbWVudHM6IG51bWJlcikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IGN1cnZlU2VnbWVudHMgfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ2JldmVsU2VnbWVudHMnIH0pIHNldCBfYmV2ZWxTZWdtZW50cyhiZXZlbFNlZ21lbnRzOiBudW1iZXIpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBiZXZlbFNlZ21lbnRzIH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdoZWlnaHQnIH0pIHNldCBfaGVpZ2h0KGhlaWdodDogbnVtYmVyKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgaGVpZ2h0IH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdzaXplJyB9KSBzZXQgX3NpemUoc2l6ZTogbnVtYmVyKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgc2l6ZSB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAnbGluZUhlaWdodCcgfSkgc2V0IF9saW5lSGVpZ2h0KGxpbmVIZWlnaHQ6IG51bWJlcikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IGxpbmVIZWlnaHQgfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ2xldHRlclNwYWNpbmcnIH0pIHNldCBfbGV0dGVyU3BhY2luZyhsZXR0ZXJTcGFjaW5nOiBudW1iZXIpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBsZXR0ZXJTcGFjaW5nIH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdzbW9vdGgnIH0pIHNldCBfc21vb3RoKHNtb290aDogbnVtYmVyKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgc21vb3RoIH0pO1xuXHR9XG5cblx0cHJpdmF0ZSBmb250RGF0YSA9IHRvU2lnbmFsKFxuXHRcdHRvT2JzZXJ2YWJsZSh0aGlzLmlucHV0cy5zZWxlY3QoJ2ZvbnQnKSkucGlwZShcblx0XHRcdHN3aXRjaE1hcCgoZm9udCkgPT4ge1xuXHRcdFx0XHRpZiAodHlwZW9mIGZvbnQgPT09ICdzdHJpbmcnKSByZXR1cm4gZmV0Y2goZm9udCkudGhlbigocmVzKSA9PiByZXMuanNvbigpKSBhcyBQcm9taXNlPEZvbnREYXRhPjtcblx0XHRcdFx0cmV0dXJuIG9mKGZvbnQgYXMgRm9udERhdGEpO1xuXHRcdFx0fSksXG5cdFx0XHRtYXAoKGZvbnREYXRhKSA9PiBuZXcgRm9udExvYWRlcigpLnBhcnNlKGZvbnREYXRhKSksXG5cdFx0KSxcblx0KTtcblxuXHRwcml2YXRlIHRleHQgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ3RleHQnKTtcblx0cHJpdmF0ZSBzaXplID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdzaXplJyk7XG5cdHByaXZhdGUgaGVpZ2h0ID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdoZWlnaHQnKTtcblx0cHJpdmF0ZSBiZXZlbFRoaWNrbmVzcyA9IHRoaXMuaW5wdXRzLnNlbGVjdCgnYmV2ZWxUaGlja25lc3MnKTtcblx0cHJpdmF0ZSBiZXZlbFNpemUgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2JldmVsU2l6ZScpO1xuXHRwcml2YXRlIGJldmVsRW5hYmxlZCA9IHRoaXMuaW5wdXRzLnNlbGVjdCgnYmV2ZWxFbmFibGVkJyk7XG5cdHByaXZhdGUgYmV2ZWxTZWdtZW50cyA9IHRoaXMuaW5wdXRzLnNlbGVjdCgnYmV2ZWxTZWdtZW50cycpO1xuXHRwcml2YXRlIGJldmVsT2Zmc2V0ID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdiZXZlbE9mZnNldCcpO1xuXHRwcml2YXRlIGN1cnZlU2VnbWVudHMgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2N1cnZlU2VnbWVudHMnKTtcblx0cHJpdmF0ZSBsZXR0ZXJTcGFjaW5nID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdsZXR0ZXJTcGFjaW5nJyk7XG5cdHByaXZhdGUgbGluZUhlaWdodCA9IHRoaXMuaW5wdXRzLnNlbGVjdCgnbGluZUhlaWdodCcpO1xuXG5cdGdlb21ldHJ5QXJncyA9IGNvbXB1dGVkKCgpID0+IHtcblx0XHRjb25zdCBmb250RGF0YSA9IHRoaXMuZm9udERhdGEoKTtcblx0XHRpZiAoIWZvbnREYXRhIHx8ICFmb250RGF0YS5kYXRhKSByZXR1cm4gbnVsbDtcblxuXHRcdHJldHVybiBbXG5cdFx0XHR0aGlzLnRleHQoKSxcblx0XHRcdHtcblx0XHRcdFx0Zm9udDogZm9udERhdGEsXG5cdFx0XHRcdHNpemU6IHRoaXMuc2l6ZSgpLFxuXHRcdFx0XHRoZWlnaHQ6IHRoaXMuaGVpZ2h0KCksXG5cdFx0XHRcdGJldmVsVGhpY2tuZXNzOiB0aGlzLmJldmVsVGhpY2tuZXNzKCksXG5cdFx0XHRcdGJldmVsU2l6ZTogdGhpcy5iZXZlbFNpemUoKSxcblx0XHRcdFx0YmV2ZWxTZWdtZW50czogdGhpcy5iZXZlbFNlZ21lbnRzKCksXG5cdFx0XHRcdGJldmVsRW5hYmxlZDogdGhpcy5iZXZlbEVuYWJsZWQoKSxcblx0XHRcdFx0YmV2ZWxPZmZzZXQ6IHRoaXMuYmV2ZWxPZmZzZXQoKSxcblx0XHRcdFx0Y3VydmVTZWdtZW50czogdGhpcy5jdXJ2ZVNlZ21lbnRzKCksXG5cdFx0XHRcdGxldHRlclNwYWNpbmc6IHRoaXMubGV0dGVyU3BhY2luZygpLFxuXHRcdFx0XHRsaW5lSGVpZ2h0OiB0aGlzLmxpbmVIZWlnaHQoKSxcblx0XHRcdH0sXG5cdFx0XTtcblx0fSk7XG59XG4iXX0=
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Directive, inject, Input, TemplateRef } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
export class NgtsCameraContent {
|
|
4
|
-
constructor() {
|
|
5
|
-
this.template = inject(TemplateRef);
|
|
6
|
-
this.ngtsCameraContent = '';
|
|
7
|
-
}
|
|
8
|
-
static ngTemplateContextGuard(_, ctx) {
|
|
9
|
-
return true;
|
|
10
|
-
}
|
|
11
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgtsCameraContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
12
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: NgtsCameraContent, isStandalone: true, selector: "ng-template[ngtsCameraContent]", inputs: { ngtsCameraContent: "ngtsCameraContent" }, ngImport: i0 }); }
|
|
13
|
-
}
|
|
14
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgtsCameraContent, decorators: [{
|
|
15
|
-
type: Directive,
|
|
16
|
-
args: [{ selector: 'ng-template[ngtsCameraContent]', standalone: true }]
|
|
17
|
-
}], propDecorators: { ngtsCameraContent: [{
|
|
18
|
-
type: Input
|
|
19
|
-
}] } });
|
|
20
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLWNvbnRlbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NvYmEvY2FtZXJhcy9zcmMvY2FtZXJhL2NhbWVyYS1jb250ZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSXRFLE1BQU0sT0FBTyxpQkFBaUI7SUFEOUI7UUFFQyxhQUFRLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3RCLHNCQUFpQixHQUFjLEVBQUUsQ0FBQztLQVEzQztJQU5BLE1BQU0sQ0FBQyxzQkFBc0IsQ0FDNUIsQ0FBb0IsRUFDcEIsR0FBWTtRQUVaLE9BQU8sSUFBSSxDQUFDO0lBQ2IsQ0FBQzs4R0FUVyxpQkFBaUI7a0dBQWpCLGlCQUFpQjs7MkZBQWpCLGlCQUFpQjtrQkFEN0IsU0FBUzttQkFBQyxFQUFFLFFBQVEsRUFBRSxnQ0FBZ0MsRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFOzhCQUdqRSxpQkFBaUI7c0JBQXpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGluamVjdCwgSW5wdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgKiBhcyBUSFJFRSBmcm9tICd0aHJlZSc7XG5cbkBEaXJlY3RpdmUoeyBzZWxlY3RvcjogJ25nLXRlbXBsYXRlW25ndHNDYW1lcmFDb250ZW50XScsIHN0YW5kYWxvbmU6IHRydWUgfSlcbmV4cG9ydCBjbGFzcyBOZ3RzQ2FtZXJhQ29udGVudCB7XG5cdHRlbXBsYXRlID0gaW5qZWN0KFRlbXBsYXRlUmVmKTtcblx0QElucHV0KCkgbmd0c0NhbWVyYUNvbnRlbnQ6IHRydWUgfCAnJyA9ICcnO1xuXG5cdHN0YXRpYyBuZ1RlbXBsYXRlQ29udGV4dEd1YXJkKFxuXHRcdF86IE5ndHNDYW1lcmFDb250ZW50LFxuXHRcdGN0eDogdW5rbm93bixcblx0KTogY3R4IGlzIHsgZmJvOiBUSFJFRS5XZWJHTFJlbmRlclRhcmdldDsgZ3JvdXA/OiBUSFJFRS5Hcm91cCB9IHtcblx0XHRyZXR1cm4gdHJ1ZTtcblx0fVxufVxuIl19
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
import { Directive, effect, Input } from '@angular/core';
|
|
2
|
-
import { injectNgtRef, injectNgtStore, signalStore } from 'angular-three';
|
|
3
|
-
import { injectNgtsFBO } from 'angular-three-soba/misc';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class NgtsCamera {
|
|
6
|
-
set _makeDefault(makeDefault) {
|
|
7
|
-
this.inputs.set({ makeDefault });
|
|
8
|
-
}
|
|
9
|
-
set _manual(manual) {
|
|
10
|
-
this.inputs.set({ manual });
|
|
11
|
-
}
|
|
12
|
-
set _frames(frames) {
|
|
13
|
-
this.inputs.set({ frames });
|
|
14
|
-
}
|
|
15
|
-
set _resolution(resolution) {
|
|
16
|
-
this.inputs.set({ resolution });
|
|
17
|
-
}
|
|
18
|
-
set _envMap(envMap) {
|
|
19
|
-
this.inputs.set({ envMap });
|
|
20
|
-
}
|
|
21
|
-
constructor() {
|
|
22
|
-
this.inputs = signalStore({
|
|
23
|
-
resolution: 256,
|
|
24
|
-
frames: Infinity,
|
|
25
|
-
makeDefault: false,
|
|
26
|
-
manual: false,
|
|
27
|
-
});
|
|
28
|
-
this.cameraRef = injectNgtRef();
|
|
29
|
-
this.cameraResolution = this.inputs.select('resolution');
|
|
30
|
-
this.store = injectNgtStore();
|
|
31
|
-
this.fboRef = injectNgtsFBO(() => ({ width: this.cameraResolution() }));
|
|
32
|
-
this.setDefaultCamera();
|
|
33
|
-
this.updateProjectionMatrix();
|
|
34
|
-
}
|
|
35
|
-
setDefaultCamera() {
|
|
36
|
-
const makeDefault = this.inputs.select('makeDefault');
|
|
37
|
-
effect((onCleanup) => {
|
|
38
|
-
const camera = this.cameraRef.nativeElement;
|
|
39
|
-
if (camera && makeDefault()) {
|
|
40
|
-
const { camera: oldCamera } = this.store.get();
|
|
41
|
-
this.store.set({ camera });
|
|
42
|
-
onCleanup(() => this.store.set({ camera: oldCamera }));
|
|
43
|
-
}
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
updateProjectionMatrix() {
|
|
47
|
-
const manual = this.inputs.select('manual');
|
|
48
|
-
effect(() => {
|
|
49
|
-
const camera = this.cameraRef.nativeElement;
|
|
50
|
-
if (!manual() && camera)
|
|
51
|
-
camera.updateProjectionMatrix();
|
|
52
|
-
});
|
|
53
|
-
}
|
|
54
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgtsCamera, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
55
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: NgtsCamera, inputs: { _makeDefault: ["makeDefault", "_makeDefault"], _manual: ["manual", "_manual"], _frames: ["frames", "_frames"], _resolution: ["resolution", "_resolution"], _envMap: ["envMap", "_envMap"], cameraRef: "cameraRef" }, ngImport: i0 }); }
|
|
56
|
-
}
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgtsCamera, decorators: [{
|
|
58
|
-
type: Directive
|
|
59
|
-
}], ctorParameters: function () { return []; }, propDecorators: { _makeDefault: [{
|
|
60
|
-
type: Input,
|
|
61
|
-
args: [{ alias: 'makeDefault' }]
|
|
62
|
-
}], _manual: [{
|
|
63
|
-
type: Input,
|
|
64
|
-
args: [{ alias: 'manual' }]
|
|
65
|
-
}], _frames: [{
|
|
66
|
-
type: Input,
|
|
67
|
-
args: [{ alias: 'frames' }]
|
|
68
|
-
}], _resolution: [{
|
|
69
|
-
type: Input,
|
|
70
|
-
args: [{ alias: 'resolution' }]
|
|
71
|
-
}], _envMap: [{
|
|
72
|
-
type: Input,
|
|
73
|
-
args: [{ alias: 'envMap' }]
|
|
74
|
-
}], cameraRef: [{
|
|
75
|
-
type: Input
|
|
76
|
-
}] } });
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zb2JhL2NhbWVyYXMvc3JjL2NhbWVyYS9jYW1lcmEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLFdBQVcsRUFBa0IsTUFBTSxlQUFlLENBQUM7QUFDMUYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDOztBQVd4RCxNQUFNLE9BQWdCLFVBQVU7SUFRL0IsSUFBcUMsWUFBWSxDQUFDLFdBQW9CO1FBQ3JFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBZ0MsT0FBTyxDQUFDLE1BQWU7UUFDdEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFnQyxPQUFPLENBQUMsTUFBYztRQUNyRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQW9DLFdBQVcsQ0FBQyxVQUFrQjtRQUNqRSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDakMsQ0FBQztJQUVELElBQWdDLE9BQU8sQ0FBQyxNQUFxQjtRQUM1RCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQVNEO1FBbENVLFdBQU0sR0FBRyxXQUFXLENBQWtCO1lBQy9DLFVBQVUsRUFBRSxHQUFHO1lBQ2YsTUFBTSxFQUFFLFFBQVE7WUFDaEIsV0FBVyxFQUFFLEtBQUs7WUFDbEIsTUFBTSxFQUFFLEtBQUs7U0FDYixDQUFDLENBQUM7UUFzQk0sY0FBUyxHQUFHLFlBQVksRUFBVyxDQUFDO1FBRXJDLHFCQUFnQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBRWxELFVBQUssR0FBRyxjQUFjLEVBQUUsQ0FBQztRQUN6QixXQUFNLEdBQUcsYUFBYSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFHNUUsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVPLGdCQUFnQjtRQUN2QixNQUFNLFdBQVcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0RCxNQUFNLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUNwQixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQztZQUM1QyxJQUFJLE1BQU0sSUFBSSxXQUFXLEVBQUUsRUFBRTtnQkFDNUIsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDO2dCQUMvQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7Z0JBQzNCLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDLENBQUM7YUFDdkQ7UUFDRixDQUFDLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFTyxzQkFBc0I7UUFDN0IsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDNUMsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNYLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDO1lBQzVDLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxNQUFNO2dCQUFFLE1BQU0sQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQzFELENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs4R0ExRG9CLFVBQVU7a0dBQVYsVUFBVTs7MkZBQVYsVUFBVTtrQkFEL0IsU0FBUzswRUFTNEIsWUFBWTtzQkFBaEQsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUU7Z0JBSUMsT0FBTztzQkFBdEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7Z0JBSU0sT0FBTztzQkFBdEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7Z0JBSVUsV0FBVztzQkFBOUMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUU7Z0JBSUUsT0FBTztzQkFBdEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7Z0JBSWpCLFNBQVM7c0JBQWpCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIGVmZmVjdCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGluamVjdE5ndFJlZiwgaW5qZWN0Tmd0U3RvcmUsIHNpZ25hbFN0b3JlLCB0eXBlIE5ndENhbWVyYSB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgaW5qZWN0Tmd0c0ZCTyB9IGZyb20gJ2FuZ3VsYXItdGhyZWUtc29iYS9taXNjJztcblxuZXhwb3J0IHR5cGUgTmd0c0NhbWVyYVN0YXRlID0ge1xuXHRtYWtlRGVmYXVsdDogYm9vbGVhbjtcblx0bWFudWFsOiBib29sZWFuO1xuXHRmcmFtZXM6IG51bWJlcjtcblx0cmVzb2x1dGlvbjogbnVtYmVyO1xuXHRlbnZNYXA/OiBUSFJFRS5UZXh0dXJlO1xufTtcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgTmd0c0NhbWVyYTxUQ2FtZXJhIGV4dGVuZHMgTmd0Q2FtZXJhPiB7XG5cdHByb3RlY3RlZCBpbnB1dHMgPSBzaWduYWxTdG9yZTxOZ3RzQ2FtZXJhU3RhdGU+KHtcblx0XHRyZXNvbHV0aW9uOiAyNTYsXG5cdFx0ZnJhbWVzOiBJbmZpbml0eSxcblx0XHRtYWtlRGVmYXVsdDogZmFsc2UsXG5cdFx0bWFudWFsOiBmYWxzZSxcblx0fSk7XG5cblx0QElucHV0KHsgYWxpYXM6ICdtYWtlRGVmYXVsdCcgfSkgc2V0IF9tYWtlRGVmYXVsdChtYWtlRGVmYXVsdDogYm9vbGVhbikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IG1ha2VEZWZhdWx0IH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdtYW51YWwnIH0pIHNldCBfbWFudWFsKG1hbnVhbDogYm9vbGVhbikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IG1hbnVhbCB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAnZnJhbWVzJyB9KSBzZXQgX2ZyYW1lcyhmcmFtZXM6IG51bWJlcikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IGZyYW1lcyB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAncmVzb2x1dGlvbicgfSkgc2V0IF9yZXNvbHV0aW9uKHJlc29sdXRpb246IG51bWJlcikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IHJlc29sdXRpb24gfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ2Vudk1hcCcgfSkgc2V0IF9lbnZNYXAoZW52TWFwOiBUSFJFRS5UZXh0dXJlKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgZW52TWFwIH0pO1xuXHR9XG5cblx0QElucHV0KCkgY2FtZXJhUmVmID0gaW5qZWN0Tmd0UmVmPFRDYW1lcmE+KCk7XG5cblx0cHJpdmF0ZSBjYW1lcmFSZXNvbHV0aW9uID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdyZXNvbHV0aW9uJyk7XG5cblx0cHJvdGVjdGVkIHN0b3JlID0gaW5qZWN0Tmd0U3RvcmUoKTtcblx0cHJvdGVjdGVkIGZib1JlZiA9IGluamVjdE5ndHNGQk8oKCkgPT4gKHsgd2lkdGg6IHRoaXMuY2FtZXJhUmVzb2x1dGlvbigpIH0pKTtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHR0aGlzLnNldERlZmF1bHRDYW1lcmEoKTtcblx0XHR0aGlzLnVwZGF0ZVByb2plY3Rpb25NYXRyaXgoKTtcblx0fVxuXG5cdHByaXZhdGUgc2V0RGVmYXVsdENhbWVyYSgpIHtcblx0XHRjb25zdCBtYWtlRGVmYXVsdCA9IHRoaXMuaW5wdXRzLnNlbGVjdCgnbWFrZURlZmF1bHQnKTtcblx0XHRlZmZlY3QoKG9uQ2xlYW51cCkgPT4ge1xuXHRcdFx0Y29uc3QgY2FtZXJhID0gdGhpcy5jYW1lcmFSZWYubmF0aXZlRWxlbWVudDtcblx0XHRcdGlmIChjYW1lcmEgJiYgbWFrZURlZmF1bHQoKSkge1xuXHRcdFx0XHRjb25zdCB7IGNhbWVyYTogb2xkQ2FtZXJhIH0gPSB0aGlzLnN0b3JlLmdldCgpO1xuXHRcdFx0XHR0aGlzLnN0b3JlLnNldCh7IGNhbWVyYSB9KTtcblx0XHRcdFx0b25DbGVhbnVwKCgpID0+IHRoaXMuc3RvcmUuc2V0KHsgY2FtZXJhOiBvbGRDYW1lcmEgfSkpO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG5cblx0cHJpdmF0ZSB1cGRhdGVQcm9qZWN0aW9uTWF0cml4KCkge1xuXHRcdGNvbnN0IG1hbnVhbCA9IHRoaXMuaW5wdXRzLnNlbGVjdCgnbWFudWFsJyk7XG5cdFx0ZWZmZWN0KCgpID0+IHtcblx0XHRcdGNvbnN0IGNhbWVyYSA9IHRoaXMuY2FtZXJhUmVmLm5hdGl2ZUVsZW1lbnQ7XG5cdFx0XHRpZiAoIW1hbnVhbCgpICYmIGNhbWVyYSkgY2FtZXJhLnVwZGF0ZVByb2plY3Rpb25NYXRyaXgoKTtcblx0XHR9KTtcblx0fVxufVxuIl19
|
|
@@ -1,161 +0,0 @@
|
|
|
1
|
-
import { NgTemplateOutlet } from '@angular/common';
|
|
2
|
-
import { CUSTOM_ELEMENTS_SCHEMA, Component, ContentChild, DestroyRef, Directive, Input, TemplateRef, ViewChild, ViewContainerRef, computed, effect, inject, runInInjectionContext, untracked, } from '@angular/core';
|
|
3
|
-
import { NgtArgs, assertInjectionContext, extend, injectBeforeRender, injectNgtRef, injectNgtStore, signalStore, } from 'angular-three';
|
|
4
|
-
import * as THREE from 'three';
|
|
5
|
-
import { Group } from 'three';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
const defaultCubeCameraState = {
|
|
8
|
-
resolution: 256,
|
|
9
|
-
near: 0.1,
|
|
10
|
-
far: 1000,
|
|
11
|
-
};
|
|
12
|
-
export function injectNgtsCubeCamera(cubeCameraState, { injector } = {}) {
|
|
13
|
-
injector = assertInjectionContext(injectNgtsCubeCamera, injector);
|
|
14
|
-
return runInInjectionContext(injector, () => {
|
|
15
|
-
const state = computed(() => ({ ...defaultCubeCameraState, ...cubeCameraState() }));
|
|
16
|
-
const resolution = computed(() => state().resolution);
|
|
17
|
-
const near = computed(() => state().near);
|
|
18
|
-
const far = computed(() => state().far);
|
|
19
|
-
const store = injectNgtStore();
|
|
20
|
-
const _gl = store.select('gl');
|
|
21
|
-
const _scene = store.select('scene');
|
|
22
|
-
const _fbo = computed(() => {
|
|
23
|
-
const renderTarget = new THREE.WebGLCubeRenderTarget(resolution());
|
|
24
|
-
renderTarget.texture.type = THREE.HalfFloatType;
|
|
25
|
-
return renderTarget;
|
|
26
|
-
});
|
|
27
|
-
effect((onCleanup) => {
|
|
28
|
-
const fbo = _fbo();
|
|
29
|
-
onCleanup(() => fbo.dispose());
|
|
30
|
-
});
|
|
31
|
-
const _camera = computed(() => new THREE.CubeCamera(near(), far(), _fbo()));
|
|
32
|
-
let originalFog;
|
|
33
|
-
let originalBackground;
|
|
34
|
-
const update = computed(() => {
|
|
35
|
-
const [scene, gl, camera, { envMap, fog }] = [_scene(), _gl(), _camera(), untracked(state)];
|
|
36
|
-
return () => {
|
|
37
|
-
originalFog = scene.fog;
|
|
38
|
-
originalBackground = scene.background;
|
|
39
|
-
scene.background = envMap || originalBackground;
|
|
40
|
-
scene.fog = fog || originalFog;
|
|
41
|
-
camera.update(gl, scene);
|
|
42
|
-
scene.fog = originalFog;
|
|
43
|
-
scene.background = originalBackground;
|
|
44
|
-
};
|
|
45
|
-
});
|
|
46
|
-
return { fbo: _fbo, camera: _camera, update };
|
|
47
|
-
});
|
|
48
|
-
}
|
|
49
|
-
extend({ Group });
|
|
50
|
-
export class NgtsCubeCameraContent {
|
|
51
|
-
static ngTemplateContextGuard(_, ctx) {
|
|
52
|
-
return true;
|
|
53
|
-
}
|
|
54
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgtsCubeCameraContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
55
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.1.7", type: NgtsCubeCameraContent, isStandalone: true, selector: "ng-template[ngtsCubeCameraContent]", ngImport: i0 }); }
|
|
56
|
-
}
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgtsCubeCameraContent, decorators: [{
|
|
58
|
-
type: Directive,
|
|
59
|
-
args: [{ selector: 'ng-template[ngtsCubeCameraContent]', standalone: true }]
|
|
60
|
-
}] });
|
|
61
|
-
export class NgtsCubeCamera {
|
|
62
|
-
/** Resolution of the FBO, 256 */
|
|
63
|
-
set _resolution(resolution) {
|
|
64
|
-
this.inputs.set({ resolution });
|
|
65
|
-
}
|
|
66
|
-
/** Camera near, 0.1 */
|
|
67
|
-
set _near(near) {
|
|
68
|
-
this.inputs.set({ near });
|
|
69
|
-
}
|
|
70
|
-
/** Camera far, 1000 */
|
|
71
|
-
set _far(far) {
|
|
72
|
-
this.inputs.set({ far });
|
|
73
|
-
}
|
|
74
|
-
/** Custom environment map that is temporarily set as the scenes background */
|
|
75
|
-
set _envMap(envMap) {
|
|
76
|
-
this.inputs.set({ envMap });
|
|
77
|
-
}
|
|
78
|
-
/** Custom fog that is temporarily set as the scenes fog */
|
|
79
|
-
set _fog(fog) {
|
|
80
|
-
this.inputs.set({ fog });
|
|
81
|
-
}
|
|
82
|
-
constructor() {
|
|
83
|
-
this.inputs = signalStore({ frames: Infinity });
|
|
84
|
-
this.cameraRef = injectNgtRef();
|
|
85
|
-
this.cubeCamera = injectNgtsCubeCamera(this.inputs.state);
|
|
86
|
-
this.texture = computed(() => this.cubeCamera.fbo().texture);
|
|
87
|
-
this.beforeRender();
|
|
88
|
-
inject(DestroyRef).onDestroy(() => {
|
|
89
|
-
this.contentRef?.destroy();
|
|
90
|
-
});
|
|
91
|
-
}
|
|
92
|
-
ngOnInit() {
|
|
93
|
-
this.contentRef = this.anchor.createEmbeddedView(this.cameraContent, { texture: this.texture });
|
|
94
|
-
}
|
|
95
|
-
beforeRender() {
|
|
96
|
-
let count = 0;
|
|
97
|
-
injectBeforeRender(() => {
|
|
98
|
-
const camera = this.cameraRef.nativeElement;
|
|
99
|
-
if (!camera)
|
|
100
|
-
return;
|
|
101
|
-
const update = this.cubeCamera.update();
|
|
102
|
-
const frames = this.inputs.get('frames');
|
|
103
|
-
if (frames === Infinity || count < frames) {
|
|
104
|
-
camera.visible = false;
|
|
105
|
-
update();
|
|
106
|
-
camera.visible = true;
|
|
107
|
-
count++;
|
|
108
|
-
}
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgtsCubeCamera, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
112
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: NgtsCubeCamera, isStandalone: true, selector: "ngts-cube-camera", inputs: { cameraRef: "cameraRef", _resolution: ["resolution", "_resolution"], _near: ["near", "_near"], _far: ["far", "_far"], _envMap: ["envMap", "_envMap"], _fog: ["fog", "_fog"] }, queries: [{ propertyName: "cameraContent", first: true, predicate: NgtsCubeCameraContent, descendants: true, read: TemplateRef, static: true }], viewQueries: [{ propertyName: "anchor", first: true, predicate: ["anchor"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: `
|
|
113
|
-
<ngt-group ngtCompound>
|
|
114
|
-
<ngt-primitive *args="[cubeCamera.camera()]" />
|
|
115
|
-
<ngt-group [ref]="cameraRef">
|
|
116
|
-
<ng-container #anchor />
|
|
117
|
-
</ngt-group>
|
|
118
|
-
</ngt-group>
|
|
119
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }] }); }
|
|
120
|
-
}
|
|
121
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgtsCubeCamera, decorators: [{
|
|
122
|
-
type: Component,
|
|
123
|
-
args: [{
|
|
124
|
-
selector: 'ngts-cube-camera',
|
|
125
|
-
standalone: true,
|
|
126
|
-
template: `
|
|
127
|
-
<ngt-group ngtCompound>
|
|
128
|
-
<ngt-primitive *args="[cubeCamera.camera()]" />
|
|
129
|
-
<ngt-group [ref]="cameraRef">
|
|
130
|
-
<ng-container #anchor />
|
|
131
|
-
</ngt-group>
|
|
132
|
-
</ngt-group>
|
|
133
|
-
`,
|
|
134
|
-
imports: [NgtArgs, NgTemplateOutlet],
|
|
135
|
-
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
136
|
-
}]
|
|
137
|
-
}], ctorParameters: function () { return []; }, propDecorators: { cameraRef: [{
|
|
138
|
-
type: Input
|
|
139
|
-
}], cameraContent: [{
|
|
140
|
-
type: ContentChild,
|
|
141
|
-
args: [NgtsCubeCameraContent, { static: true, read: TemplateRef }]
|
|
142
|
-
}], anchor: [{
|
|
143
|
-
type: ViewChild,
|
|
144
|
-
args: ['anchor', { static: true, read: ViewContainerRef }]
|
|
145
|
-
}], _resolution: [{
|
|
146
|
-
type: Input,
|
|
147
|
-
args: [{ alias: 'resolution' }]
|
|
148
|
-
}], _near: [{
|
|
149
|
-
type: Input,
|
|
150
|
-
args: [{ alias: 'near' }]
|
|
151
|
-
}], _far: [{
|
|
152
|
-
type: Input,
|
|
153
|
-
args: [{ alias: 'far' }]
|
|
154
|
-
}], _envMap: [{
|
|
155
|
-
type: Input,
|
|
156
|
-
args: [{ alias: 'envMap' }]
|
|
157
|
-
}], _fog: [{
|
|
158
|
-
type: Input,
|
|
159
|
-
args: [{ alias: 'fog' }]
|
|
160
|
-
}] } });
|
|
161
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3ViZS1jYW1lcmEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NvYmEvY2FtZXJhcy9zcmMvY3ViZS1jYW1lcmEvY3ViZS1jYW1lcmEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUNOLHNCQUFzQixFQUN0QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixTQUFTLEVBRVQsS0FBSyxFQUdMLFdBQVcsRUFDWCxTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLFFBQVEsRUFDUixNQUFNLEVBQ04sTUFBTSxFQUNOLHFCQUFxQixFQUNyQixTQUFTLEdBRVQsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNOLE9BQU8sRUFDUCxzQkFBc0IsRUFDdEIsTUFBTSxFQUNOLGtCQUFrQixFQUNsQixZQUFZLEVBQ1osY0FBYyxFQUNkLFdBQVcsR0FFWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEtBQUssS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMvQixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sT0FBTyxDQUFDOztBQWU5QixNQUFNLHNCQUFzQixHQUFHO0lBQzlCLFVBQVUsRUFBRSxHQUFHO0lBQ2YsSUFBSSxFQUFFLEdBQUc7SUFDVCxHQUFHLEVBQUUsSUFBSTtDQUNxQixDQUFDO0FBRWhDLE1BQU0sVUFBVSxvQkFBb0IsQ0FDbkMsZUFBbUQsRUFDbkQsRUFBRSxRQUFRLEtBQThCLEVBQUU7SUFFMUMsUUFBUSxHQUFHLHNCQUFzQixDQUFDLG9CQUFvQixFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2xFLE9BQU8scUJBQXFCLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtRQUMzQyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsc0JBQXNCLEVBQUUsR0FBRyxl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LFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7Ozs7Ozs7RUFPVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLENBQUM7b0JBQ3BDLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUNqQzswRUFJUyxTQUFTO3NCQUFqQixLQUFLO2dCQUdFLGFBQWE7c0JBRHBCLFlBQVk7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7Z0JBSWhFLE1BQU07c0JBRGIsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRTtnQkFJekIsV0FBVztzQkFBOUMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUU7Z0JBS0EsS0FBSztzQkFBbEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7Z0JBS0ssSUFBSTtzQkFBaEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUU7Z0JBS1MsT0FBTztzQkFBdEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7Z0JBS0csSUFBSTtzQkFBaEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG5cdENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsXG5cdENvbXBvbmVudCxcblx0Q29udGVudENoaWxkLFxuXHREZXN0cm95UmVmLFxuXHREaXJlY3RpdmUsXG5cdEVtYmVkZGVkVmlld1JlZixcblx0SW5wdXQsXG5cdE9uSW5pdCxcblx0U2lnbmFsLFxuXHRUZW1wbGF0ZVJlZixcblx0Vmlld0NoaWxkLFxuXHRWaWV3Q29udGFpbmVyUmVmLFxuXHRjb21wdXRlZCxcblx0ZWZmZWN0LFxuXHRpbmplY3QsXG5cdHJ1bkluSW5qZWN0aW9uQ29udGV4dCxcblx0dW50cmFja2VkLFxuXHR0eXBlIEluamVjdG9yLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG5cdE5ndEFyZ3MsXG5cdGFzc2VydEluamVjdGlvbkNvbnRleHQsXG5cdGV4dGVuZCxcblx0aW5qZWN0QmVmb3JlUmVuZGVyLFxuXHRpbmplY3ROZ3RSZWYsXG5cdGluamVjdE5ndFN0b3JlLFxuXHRzaWduYWxTdG9yZSxcblx0dHlwZSBOZ3RHcm91cCxcbn0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgKiBhcyBUSFJFRSBmcm9tICd0aHJlZSc7XG5pbXBvcnQgeyBHcm91cCB9IGZyb20gJ3RocmVlJztcblxuZXhwb3J0IHR5cGUgTmd0c0N1YmVDYW1lcmFTdGF0ZSA9IHtcblx0LyoqIFJlc29sdXRpb24gb2YgdGhlIEZCTywgMjU2ICovXG5cdHJlc29sdXRpb246IG51bWJlcjtcblx0LyoqIENhbWVyYSBuZWFyLCAwLjEgKi9cblx0bmVhcjogbnVtYmVyO1xuXHQvKiogQ2FtZXJhIGZhciwgMTAwMCAqL1xuXHRmYXI6IG51bWJlcjtcblx0LyoqIEN1c3RvbSBlbnZpcm9ubWVudCBtYXAgdGhhdCBpcyB0ZW1wb3JhcmlseSBzZXQgYXMgdGhlIHNjZW5lcyBiYWNrZ3JvdW5kICovXG5cdGVudk1hcD86IFRIUkVFLlRleHR1cmU7XG5cdC8qKiBDdXN0b20gZm9nIHRoYXQgaXMgdGVtcG9yYXJpbHkgc2V0IGFzIHRoZSBzY2VuZXMgZm9nICovXG5cdGZvZz86IFRIUkVFLkZvZyB8IFRIUkVFLkZvZ0V4cDI7XG59O1xuXG5jb25zdCBkZWZhdWx0Q3ViZUNhbWVyYVN0YXRlID0ge1xuXHRyZXNvbHV0aW9uOiAyNTYsXG5cdG5lYXI6IDAuMSxcblx0ZmFyOiAxMDAwLFxufSBzYXRpc2ZpZXMgTmd0c0N1YmVDYW1lcmFTdGF0ZTtcblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdE5ndHNDdWJlQ2FtZXJhKFxuXHRjdWJlQ2FtZXJhU3RhdGU6ICgpID0+IFBhcnRpYWw8Tmd0c0N1YmVDYW1lcmFTdGF0ZT4sXG5cdHsgaW5qZWN0b3IgfTogeyBpbmplY3Rvcj86IEluamVjdG9yIH0gPSB7fSxcbikge1xuXHRpbmplY3RvciA9IGFzc2VydEluamVjdGlvbkNvbnRleHQoaW5qZWN0Tmd0c0N1YmVDYW1lcmEsIGluamVjdG9yKTtcblx0cmV0dXJuIHJ1bkluSW5qZWN0aW9uQ29udGV4dChpbmplY3RvciwgKCkgPT4ge1xuXHRcdGNvbnN0IHN0YXRlID0gY29tcHV0ZWQoKCkgPT4gKHsgLi4uZGVmYXVsdEN1YmVDYW1lcmFTdGF0ZSwgLi4uY3ViZUNhbWVyYVN0YXRlKCkgfSkpO1xuXHRcdGNvbnN0IHJlc29sdXRpb24gPSBjb21wdXRlZCgoKSA9PiBzdGF0ZSgpLnJlc29sdXRpb24pO1xuXHRcdGNvbnN0IG5lYXIgPSBjb21wdXRlZCgoKSA9PiBzdGF0ZSgpLm5lYXIpO1xuXHRcdGNvbnN0IGZhciA9IGNvbXB1dGVkKCgpID0+IHN0YXRlKCkuZmFyKTtcblxuXHRcdGNvbnN0IHN0b3JlID0gaW5qZWN0Tmd0U3RvcmUoKTtcblxuXHRcdGNvbnN0IF9nbCA9IHN0b3JlLnNlbGVjdCgnZ2wnKTtcblx0XHRjb25zdCBfc2NlbmUgPSBzdG9yZS5zZWxlY3QoJ3NjZW5lJyk7XG5cblx0XHRjb25zdCBfZmJvID0gY29tcHV0ZWQoKCkgPT4ge1xuXHRcdFx0Y29uc3QgcmVuZGVyVGFyZ2V0ID0gbmV3IFRIUkVFLldlYkdMQ3ViZVJlbmRlclRhcmdldChyZXNvbHV0aW9uKCkpO1xuXHRcdFx0cmVuZGVyVGFyZ2V0LnRleHR1cmUudHlwZSA9IFRIUkVFLkhhbGZGbG9hdFR5cGU7XG5cdFx0XHRyZXR1cm4gcmVuZGVyVGFyZ2V0O1xuXHRcdH0pO1xuXG5cdFx0ZWZmZWN0KChvbkNsZWFudXApID0+IHtcblx0XHRcdGNvbnN0IGZibyA9IF9mYm8oKTtcblx0XHRcdG9uQ2xlYW51cCgoKSA9PiBmYm8uZGlzcG9zZSgpKTtcblx0XHR9KTtcblxuXHRcdGNvbnN0IF9jYW1lcmEgPSBjb21wdXRlZCgoKSA9PiBuZXcgVEhSRUUuQ3ViZUNhbWVyYShuZWFyKCksIGZhcigpLCBfZmJvKCkpKTtcblxuXHRcdGxldCBvcmlnaW5hbEZvZzogVEhSRUUuU2NlbmVbJ2ZvZyddO1xuXHRcdGxldCBvcmlnaW5hbEJhY2tncm91bmQ6IFRIUkVFLlNjZW5lWydiYWNrZ3JvdW5kJ107XG5cblx0XHRjb25zdCB1cGRhdGUgPSBjb21wdXRlZCgoKSA9PiB7XG5cdFx0XHRjb25zdCBbc2NlbmUsIGdsLCBjYW1lcmEsIHsgZW52TWFwLCBmb2cgfV0gPSBbX3NjZW5lKCksIF9nbCgpLCBfY2FtZXJhKCksIHVudHJhY2tlZChzdGF0ZSldO1xuXG5cdFx0XHRyZXR1cm4gKCkgPT4ge1xuXHRcdFx0XHRvcmlnaW5hbEZvZyA9IHNjZW5lLmZvZztcblx0XHRcdFx0b3JpZ2luYWxCYWNrZ3JvdW5kID0gc2NlbmUuYmFja2dyb3VuZDtcblx0XHRcdFx0c2NlbmUuYmFja2dyb3VuZCA9IGVudk1hcCB8fCBvcmlnaW5hbEJhY2tncm91bmQ7XG5cdFx0XHRcdHNjZW5lLmZvZyA9IGZvZyB8fCBvcmlnaW5hbEZvZztcblx0XHRcdFx0Y2FtZXJhLnVwZGF0ZShnbCwgc2NlbmUpO1xuXHRcdFx0XHRzY2VuZS5mb2cgPSBvcmlnaW5hbEZvZztcblx0XHRcdFx0c2NlbmUuYmFja2dyb3VuZCA9IG9yaWdpbmFsQmFja2dyb3VuZDtcblx0XHRcdH07XG5cdFx0fSk7XG5cblx0XHRyZXR1cm4geyBmYm86IF9mYm8sIGNhbWVyYTogX2NhbWVyYSwgdXBkYXRlIH07XG5cdH0pO1xufVxuXG5leHRlbmQoeyBHcm91cCB9KTtcblxuZXhwb3J0IHR5cGUgTmd0c0N1YmVDYW1lcmFDb21wb25lbnRTdGF0ZSA9IE5ndHNDdWJlQ2FtZXJhU3RhdGUgJiB7XG5cdGZyYW1lczogbnVtYmVyO1xufTtcblxuZGVjbGFyZSBnbG9iYWwge1xuXHRpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcblx0XHQvKipcblx0XHQgKiBAZXh0ZW5kcyBuZ3QtZ3JvdXBcblx0XHQgKi9cblx0XHQnbmd0cy1jdWJlLWNhbWVyYSc6IE5ndHNDdWJlQ2FtZXJhQ29tcG9uZW50U3RhdGUgJiBOZ3RHcm91cDtcblx0fVxufVxuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICduZy10ZW1wbGF0ZVtuZ3RzQ3ViZUNhbWVyYUNvbnRlbnRdJywgc3RhbmRhbG9uZTogdHJ1ZSB9KVxuZXhwb3J0IGNsYXNzIE5ndHNDdWJlQ2FtZXJhQ29udGVudCB7XG5cdHN0YXRpYyBuZ1RlbXBsYXRlQ29udGV4dEd1YXJkKFxuXHRcdF86IE5ndHNDdWJlQ2FtZXJhQ29udGVudCxcblx0XHRjdHg6IHVua25vd24sXG5cdCk6IGN0eCBpcyB7IHRleHR1cmU6IFNpZ25hbDxUSFJFRS5XZWJHTFJlbmRlclRhcmdldFsndGV4dHVyZSddPiB9IHtcblx0XHRyZXR1cm4gdHJ1ZTtcblx0fVxufVxuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZ3RzLWN1YmUtY2FtZXJhJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0dGVtcGxhdGU6IGBcblx0XHQ8bmd0LWdyb3VwIG5ndENvbXBvdW5kPlxuXHRcdFx0PG5ndC1wcmltaXRpdmUgKmFyZ3M9XCJbY3ViZUNhbWVyYS5jYW1lcmEoKV1cIiAvPlxuXHRcdFx0PG5ndC1ncm91cCBbcmVmXT1cImNhbWVyYVJlZlwiPlxuXHRcdFx0XHQ8bmctY29udGFpbmVyICNhbmNob3IgLz5cblx0XHRcdDwvbmd0LWdyb3VwPlxuXHRcdDwvbmd0LWdyb3VwPlxuXHRgLFxuXHRpbXBvcnRzOiBbTmd0QXJncywgTmdUZW1wbGF0ZU91dGxldF0sXG5cdHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0c0N1YmVDYW1lcmEgaW1wbGVtZW50cyBPbkluaXQge1xuXHRwcml2YXRlIGlucHV0cyA9IHNpZ25hbFN0b3JlPE5ndHNDdWJlQ2FtZXJhQ29tcG9uZW50U3RhdGU+KHsgZnJhbWVzOiBJbmZpbml0eSB9KTtcblxuXHRASW5wdXQoKSBjYW1lcmFSZWYgPSBpbmplY3ROZ3RSZWY8R3JvdXA+KCk7XG5cblx0QENvbnRlbnRDaGlsZChOZ3RzQ3ViZUNhbWVyYUNvbnRlbnQsIHsgc3RhdGljOiB0cnVlLCByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuXHRwcml2YXRlIGNhbWVyYUNvbnRlbnQhOiBUZW1wbGF0ZVJlZjx7IHRleHR1cmU6IFNpZ25hbDxUSFJFRS5XZWJHTFJlbmRlclRhcmdldFsndGV4dHVyZSddPiB9PjtcblxuXHRAVmlld0NoaWxkKCdhbmNob3InLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KVxuXHRwcml2YXRlIGFuY2hvciE6IFZpZXdDb250YWluZXJSZWY7XG5cblx0LyoqIFJlc29sdXRpb24gb2YgdGhlIEZCTywgMjU2ICovXG5cdEBJbnB1dCh7IGFsaWFzOiAncmVzb2x1dGlvbicgfSkgc2V0IF9yZXNvbHV0aW9uKHJlc29sdXRpb246IG51bWJlcikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IHJlc29sdXRpb24gfSk7XG5cdH1cblxuXHQvKiogQ2FtZXJhIG5lYXIsIDAuMSAqL1xuXHRASW5wdXQoeyBhbGlhczogJ25lYXInIH0pIHNldCBfbmVhcihuZWFyOiBudW1iZXIpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBuZWFyIH0pO1xuXHR9XG5cblx0LyoqIENhbWVyYSBmYXIsIDEwMDAgKi9cblx0QElucHV0KHsgYWxpYXM6ICdmYXInIH0pIHNldCBfZmFyKGZhcjogbnVtYmVyKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgZmFyIH0pO1xuXHR9XG5cblx0LyoqIEN1c3RvbSBlbnZpcm9ubWVudCBtYXAgdGhhdCBpcyB0ZW1wb3JhcmlseSBzZXQgYXMgdGhlIHNjZW5lcyBiYWNrZ3JvdW5kICovXG5cdEBJbnB1dCh7IGFsaWFzOiAnZW52TWFwJyB9KSBzZXQgX2Vudk1hcChlbnZNYXA6IFRIUkVFLlRleHR1cmUpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBlbnZNYXAgfSk7XG5cdH1cblxuXHQvKiogQ3VzdG9tIGZvZyB0aGF0IGlzIHRlbXBvcmFyaWx5IHNldCBhcyB0aGUgc2NlbmVzIGZvZyAqL1xuXHRASW5wdXQoeyBhbGlhczogJ2ZvZycgfSkgc2V0IF9mb2coZm9nOiBUSFJFRS5Gb2cgfCBUSFJFRS5Gb2dFeHAyKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgZm9nIH0pO1xuXHR9XG5cblx0Y3ViZUNhbWVyYSA9IGluamVjdE5ndHNDdWJlQ2FtZXJhKHRoaXMuaW5wdXRzLnN0YXRlKTtcblx0cHJpdmF0ZSB0ZXh0dXJlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5jdWJlQ2FtZXJhLmZibygpLnRleHR1cmUpO1xuXHRwcml2YXRlIGNvbnRlbnRSZWY/OiBFbWJlZGRlZFZpZXdSZWY8dW5rbm93bj47XG5cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0dGhpcy5iZWZvcmVSZW5kZXIoKTtcblx0XHRpbmplY3QoRGVzdHJveVJlZikub25EZXN0cm95KCgpID0+IHtcblx0XHRcdHRoaXMuY29udGVudFJlZj8uZGVzdHJveSgpO1xuXHRcdH0pO1xuXHR9XG5cblx0bmdPbkluaXQoKSB7XG5cdFx0dGhpcy5jb250ZW50UmVmID0gdGhpcy5hbmNob3IuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMuY2FtZXJhQ29udGVudCwgeyB0ZXh0dXJlOiB0aGlzLnRleHR1cmUgfSk7XG5cdH1cblxuXHRwcml2YXRlIGJlZm9yZVJlbmRlcigpIHtcblx0XHRsZXQgY291bnQgPSAwO1xuXHRcdGluamVjdEJlZm9yZVJlbmRlcigoKSA9PiB7XG5cdFx0XHRjb25zdCBjYW1lcmEgPSB0aGlzLmNhbWVyYVJlZi5uYXRpdmVFbGVtZW50O1xuXHRcdFx0aWYgKCFjYW1lcmEpIHJldHVybjtcblx0XHRcdGNvbnN0IHVwZGF0ZSA9IHRoaXMuY3ViZUNhbWVyYS51cGRhdGUoKTtcblx0XHRcdGNvbnN0IGZyYW1lcyA9IHRoaXMuaW5wdXRzLmdldCgnZnJhbWVzJyk7XG5cdFx0XHRpZiAoZnJhbWVzID09PSBJbmZpbml0eSB8fCBjb3VudCA8IGZyYW1lcykge1xuXHRcdFx0XHRjYW1lcmEudmlzaWJsZSA9IGZhbHNlO1xuXHRcdFx0XHR1cGRhdGUoKTtcblx0XHRcdFx0Y2FtZXJhLnZpc2libGUgPSB0cnVlO1xuXHRcdFx0XHRjb3VudCsrO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG59XG4iXX0=
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import { NgIf, NgTemplateOutlet } from '@angular/common';
|
|
2
|
-
import { CUSTOM_ELEMENTS_SCHEMA, Component, ContentChild, Input, computed } from '@angular/core';
|
|
3
|
-
import { extend, signalStore } from 'angular-three';
|
|
4
|
-
import { Group, OrthographicCamera } from 'three';
|
|
5
|
-
import { NgtsCamera } from '../camera/camera';
|
|
6
|
-
import { NgtsCameraContent } from '../camera/camera-content';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
extend({ OrthographicCamera, Group });
|
|
9
|
-
export class NgtsOrthographicCamera extends NgtsCamera {
|
|
10
|
-
constructor() {
|
|
11
|
-
super(...arguments);
|
|
12
|
-
this.orthographicInputs = signalStore({
|
|
13
|
-
left: 0,
|
|
14
|
-
right: 0,
|
|
15
|
-
top: 0,
|
|
16
|
-
bottom: 0,
|
|
17
|
-
});
|
|
18
|
-
this.left = this.orthographicInputs.select('left');
|
|
19
|
-
this.right = this.orthographicInputs.select('right');
|
|
20
|
-
this.top = this.orthographicInputs.select('top');
|
|
21
|
-
this.bottom = this.orthographicInputs.select('bottom');
|
|
22
|
-
this.size = this.store.select('size');
|
|
23
|
-
this.cameraLeft = computed(() => this.left() || this.size().width / -2);
|
|
24
|
-
this.cameraRight = computed(() => this.right() || this.size().width / 2);
|
|
25
|
-
this.cameraTop = computed(() => this.top() || this.size().height / 2);
|
|
26
|
-
this.cameraBottom = computed(() => this.bottom() || this.size().height / -2);
|
|
27
|
-
}
|
|
28
|
-
set _left(left) {
|
|
29
|
-
this.orthographicInputs.set({ left });
|
|
30
|
-
}
|
|
31
|
-
set _right(right) {
|
|
32
|
-
this.orthographicInputs.set({ right });
|
|
33
|
-
}
|
|
34
|
-
set _top(top) {
|
|
35
|
-
this.orthographicInputs.set({ top });
|
|
36
|
-
}
|
|
37
|
-
set _bottom(bottom) {
|
|
38
|
-
this.orthographicInputs.set({ bottom });
|
|
39
|
-
}
|
|
40
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgtsOrthographicCamera, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
|
|
41
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.1.7", type: NgtsOrthographicCamera, isStandalone: true, selector: "ngts-orthographic-camera", inputs: { _left: ["left", "_left"], _right: ["right", "_right"], _top: ["top", "_top"], _bottom: ["bottom", "_bottom"] }, queries: [{ propertyName: "cameraContent", first: true, predicate: NgtsCameraContent, descendants: true }], usesInheritance: true, ngImport: i0, template: `
|
|
42
|
-
<ngt-orthographic-camera
|
|
43
|
-
ngtCompound
|
|
44
|
-
[ref]="cameraRef"
|
|
45
|
-
[left]="cameraLeft()"
|
|
46
|
-
[right]="cameraRight()"
|
|
47
|
-
[top]="cameraTop()"
|
|
48
|
-
[bottom]="cameraBottom()"
|
|
49
|
-
>
|
|
50
|
-
<ng-container
|
|
51
|
-
*ngIf="cameraContent && !cameraContent.ngtsCameraContent"
|
|
52
|
-
[ngTemplateOutlet]="cameraContent.template"
|
|
53
|
-
/>
|
|
54
|
-
</ngt-orthographic-camera>
|
|
55
|
-
<ngt-group #group *ngIf="cameraContent && cameraContent.ngtsCameraContent">
|
|
56
|
-
<ng-container *ngTemplateOutlet="cameraContent.template; context: { fbo: fboRef.nativeElement, group }" />
|
|
57
|
-
</ngt-group>
|
|
58
|
-
`, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
|
|
59
|
-
}
|
|
60
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.1.7", ngImport: i0, type: NgtsOrthographicCamera, decorators: [{
|
|
61
|
-
type: Component,
|
|
62
|
-
args: [{
|
|
63
|
-
selector: 'ngts-orthographic-camera',
|
|
64
|
-
standalone: true,
|
|
65
|
-
template: `
|
|
66
|
-
<ngt-orthographic-camera
|
|
67
|
-
ngtCompound
|
|
68
|
-
[ref]="cameraRef"
|
|
69
|
-
[left]="cameraLeft()"
|
|
70
|
-
[right]="cameraRight()"
|
|
71
|
-
[top]="cameraTop()"
|
|
72
|
-
[bottom]="cameraBottom()"
|
|
73
|
-
>
|
|
74
|
-
<ng-container
|
|
75
|
-
*ngIf="cameraContent && !cameraContent.ngtsCameraContent"
|
|
76
|
-
[ngTemplateOutlet]="cameraContent.template"
|
|
77
|
-
/>
|
|
78
|
-
</ngt-orthographic-camera>
|
|
79
|
-
<ngt-group #group *ngIf="cameraContent && cameraContent.ngtsCameraContent">
|
|
80
|
-
<ng-container *ngTemplateOutlet="cameraContent.template; context: { fbo: fboRef.nativeElement, group }" />
|
|
81
|
-
</ngt-group>
|
|
82
|
-
`,
|
|
83
|
-
imports: [NgIf, NgTemplateOutlet],
|
|
84
|
-
schemas: [CUSTOM_ELEMENTS_SCHEMA],
|
|
85
|
-
}]
|
|
86
|
-
}], propDecorators: { cameraContent: [{
|
|
87
|
-
type: ContentChild,
|
|
88
|
-
args: [NgtsCameraContent]
|
|
89
|
-
}], _left: [{
|
|
90
|
-
type: Input,
|
|
91
|
-
args: [{ alias: 'left' }]
|
|
92
|
-
}], _right: [{
|
|
93
|
-
type: Input,
|
|
94
|
-
args: [{ alias: 'right' }]
|
|
95
|
-
}], _top: [{
|
|
96
|
-
type: Input,
|
|
97
|
-
args: [{ alias: 'top' }]
|
|
98
|
-
}], _bottom: [{
|
|
99
|
-
type: Input,
|
|
100
|
-
args: [{ alias: 'bottom' }]
|
|
101
|
-
}] } });
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3J0aG9ncmFwaGljLWNhbWVyYS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvc29iYS9jYW1lcmFzL3NyYy9vcnRob2dyYXBoaWMtY2FtZXJhL29ydGhvZ3JhcGhpYy1jYW1lcmEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDakcsT0FBTyxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQThCLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBd0IsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFFN0QsTUFBTSxDQUFDLEVBQUUsa0JBQWtCLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztBQTBDdEMsTUFBTSxPQUFPLHNCQUF1QixTQUFRLFVBQW9DO0lBeEJoRjs7UUF5QlMsdUJBQWtCLEdBQUcsV0FBVyxDQUE4QjtZQUNyRSxJQUFJLEVBQUUsQ0FBQztZQUNQLEtBQUssRUFBRSxDQUFDO1lBQ1IsR0FBRyxFQUFFLENBQUM7WUFDTixNQUFNLEVBQUUsQ0FBQztTQUNULENBQUMsQ0FBQztRQW9CSyxTQUFJLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5QyxVQUFLLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoRCxRQUFHLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QyxXQUFNLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNsRCxTQUFJLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFekMsZUFBVSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ25FLGdCQUFXLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ3BFLGNBQVMsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDakUsaUJBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUN4RTtJQTFCQSxJQUE4QixLQUFLLENBQUMsSUFBWTtRQUMvQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUN2QyxDQUFDO0lBRUQsSUFBK0IsTUFBTSxDQUFDLEtBQWE7UUFDbEQsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQTZCLElBQUksQ0FBQyxHQUFXO1FBQzVDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxJQUFnQyxPQUFPLENBQUMsTUFBYztRQUNyRCxJQUFJLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUN6QyxDQUFDOzhHQXhCVyxzQkFBc0I7a0dBQXRCLHNCQUFzQix5UEFRcEIsaUJBQWlCLHVFQTdCckI7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBaUJULDREQUNTLElBQUksNkZBQUUsZ0JBQWdCOzsyRkFHcEIsc0JBQXNCO2tCQXhCbEMsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUsMEJBQTBCO29CQUNwQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7OztFQWlCVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLEVBQUUsZ0JBQWdCLENBQUM7b0JBQ2pDLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUNqQzs4QkFTaUMsYUFBYTtzQkFBN0MsWUFBWTt1QkFBQyxpQkFBaUI7Z0JBRUQsS0FBSztzQkFBbEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7Z0JBSU8sTUFBTTtzQkFBcEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7Z0JBSUksSUFBSTtzQkFBaEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUU7Z0JBSVMsT0FBTztzQkFBdEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIENvbXBvbmVudCwgQ29udGVudENoaWxkLCBJbnB1dCwgY29tcHV0ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGV4dGVuZCwgc2lnbmFsU3RvcmUsIHR5cGUgTmd0T3J0aG9ncmFwaGljQ2FtZXJhIH0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBHcm91cCwgT3J0aG9ncmFwaGljQ2FtZXJhIH0gZnJvbSAndGhyZWUnO1xuaW1wb3J0IHsgTmd0c0NhbWVyYSwgdHlwZSBOZ3RzQ2FtZXJhU3RhdGUgfSBmcm9tICcuLi9jYW1lcmEvY2FtZXJhJztcbmltcG9ydCB7IE5ndHNDYW1lcmFDb250ZW50IH0gZnJvbSAnLi4vY2FtZXJhL2NhbWVyYS1jb250ZW50JztcblxuZXh0ZW5kKHsgT3J0aG9ncmFwaGljQ2FtZXJhLCBHcm91cCB9KTtcblxuZXhwb3J0IHR5cGUgTmd0c09ydGhvZ3JhcGhpY0NhbWVyYVN0YXRlID0ge1xuXHRsZWZ0OiBudW1iZXI7XG5cdHRvcDogbnVtYmVyO1xuXHRyaWdodDogbnVtYmVyO1xuXHRib3R0b206IG51bWJlcjtcbn07XG5cbmRlY2xhcmUgZ2xvYmFsIHtcblx0aW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG5cdFx0LyoqXG5cdFx0ICogQGV4dGVuZHMgbmd0LW9ydGhvZ3JhcGhpYy1jYW1lcmFcblx0XHQgKi9cblx0XHQnbmd0cy1vcnRob2dyYXBoaWMtY2FtZXJhJzogTmd0c0NhbWVyYVN0YXRlICYgTmd0c09ydGhvZ3JhcGhpY0NhbWVyYVN0YXRlICYgTmd0T3J0aG9ncmFwaGljQ2FtZXJhO1xuXHR9XG59XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25ndHMtb3J0aG9ncmFwaGljLWNhbWVyYScsXG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdHRlbXBsYXRlOiBgXG5cdFx0PG5ndC1vcnRob2dyYXBoaWMtY2FtZXJhXG5cdFx0XHRuZ3RDb21wb3VuZFxuXHRcdFx0W3JlZl09XCJjYW1lcmFSZWZcIlxuXHRcdFx0W2xlZnRdPVwiY2FtZXJhTGVmdCgpXCJcblx0XHRcdFtyaWdodF09XCJjYW1lcmFSaWdodCgpXCJcblx0XHRcdFt0b3BdPVwiY2FtZXJhVG9wKClcIlxuXHRcdFx0W2JvdHRvbV09XCJjYW1lcmFCb3R0b20oKVwiXG5cdFx0PlxuXHRcdFx0PG5nLWNvbnRhaW5lclxuXHRcdFx0XHQqbmdJZj1cImNhbWVyYUNvbnRlbnQgJiYgIWNhbWVyYUNvbnRlbnQubmd0c0NhbWVyYUNvbnRlbnRcIlxuXHRcdFx0XHRbbmdUZW1wbGF0ZU91dGxldF09XCJjYW1lcmFDb250ZW50LnRlbXBsYXRlXCJcblx0XHRcdC8+XG5cdFx0PC9uZ3Qtb3J0aG9ncmFwaGljLWNhbWVyYT5cblx0XHQ8bmd0LWdyb3VwICNncm91cCAqbmdJZj1cImNhbWVyYUNvbnRlbnQgJiYgY2FtZXJhQ29udGVudC5uZ3RzQ2FtZXJhQ29udGVudFwiPlxuXHRcdFx0PG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNhbWVyYUNvbnRlbnQudGVtcGxhdGU7IGNvbnRleHQ6IHsgZmJvOiBmYm9SZWYubmF0aXZlRWxlbWVudCwgZ3JvdXAgfVwiIC8+XG5cdFx0PC9uZ3QtZ3JvdXA+XG5cdGAsXG5cdGltcG9ydHM6IFtOZ0lmLCBOZ1RlbXBsYXRlT3V0bGV0XSxcblx0c2NoZW1hczogW0NVU1RPTV9FTEVNRU5UU19TQ0hFTUFdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3RzT3J0aG9ncmFwaGljQ2FtZXJhIGV4dGVuZHMgTmd0c0NhbWVyYTxUSFJFRS5PcnRob2dyYXBoaWNDYW1lcmE+IHtcblx0cHJpdmF0ZSBvcnRob2dyYXBoaWNJbnB1dHMgPSBzaWduYWxTdG9yZTxOZ3RzT3J0aG9ncmFwaGljQ2FtZXJhU3RhdGU+KHtcblx0XHRsZWZ0OiAwLFxuXHRcdHJpZ2h0OiAwLFxuXHRcdHRvcDogMCxcblx0XHRib3R0b206IDAsXG5cdH0pO1xuXG5cdEBDb250ZW50Q2hpbGQoTmd0c0NhbWVyYUNvbnRlbnQpIGNhbWVyYUNvbnRlbnQ/OiBOZ3RzQ2FtZXJhQ29udGVudDtcblxuXHRASW5wdXQoeyBhbGlhczogJ2xlZnQnIH0pIHNldCBfbGVmdChsZWZ0OiBudW1iZXIpIHtcblx0XHR0aGlzLm9ydGhvZ3JhcGhpY0lucHV0cy5zZXQoeyBsZWZ0IH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdyaWdodCcgfSkgc2V0IF9yaWdodChyaWdodDogbnVtYmVyKSB7XG5cdFx0dGhpcy5vcnRob2dyYXBoaWNJbnB1dHMuc2V0KHsgcmlnaHQgfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ3RvcCcgfSkgc2V0IF90b3AodG9wOiBudW1iZXIpIHtcblx0XHR0aGlzLm9ydGhvZ3JhcGhpY0lucHV0cy5zZXQoeyB0b3AgfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ2JvdHRvbScgfSkgc2V0IF9ib3R0b20oYm90dG9tOiBudW1iZXIpIHtcblx0XHR0aGlzLm9ydGhvZ3JhcGhpY0lucHV0cy5zZXQoeyBib3R0b20gfSk7XG5cdH1cblxuXHRwcml2YXRlIGxlZnQgPSB0aGlzLm9ydGhvZ3JhcGhpY0lucHV0cy5zZWxlY3QoJ2xlZnQnKTtcblx0cHJpdmF0ZSByaWdodCA9IHRoaXMub3J0aG9ncmFwaGljSW5wdXRzLnNlbGVjdCgncmlnaHQnKTtcblx0cHJpdmF0ZSB0b3AgPSB0aGlzLm9ydGhvZ3JhcGhpY0lucHV0cy5zZWxlY3QoJ3RvcCcpO1xuXHRwcml2YXRlIGJvdHRvbSA9IHRoaXMub3J0aG9ncmFwaGljSW5wdXRzLnNlbGVjdCgnYm90dG9tJyk7XG5cdHByaXZhdGUgc2l6ZSA9IHRoaXMuc3RvcmUuc2VsZWN0KCdzaXplJyk7XG5cblx0Y2FtZXJhTGVmdCA9IGNvbXB1dGVkKCgpID0+IHRoaXMubGVmdCgpIHx8IHRoaXMuc2l6ZSgpLndpZHRoIC8gLTIpO1xuXHRjYW1lcmFSaWdodCA9IGNvbXB1dGVkKCgpID0+IHRoaXMucmlnaHQoKSB8fCB0aGlzLnNpemUoKS53aWR0aCAvIDIpO1xuXHRjYW1lcmFUb3AgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnRvcCgpIHx8IHRoaXMuc2l6ZSgpLmhlaWdodCAvIDIpO1xuXHRjYW1lcmFCb3R0b20gPSBjb21wdXRlZCgoKSA9PiB0aGlzLmJvdHRvbSgpIHx8IHRoaXMuc2l6ZSgpLmhlaWdodCAvIC0yKTtcbn1cbiJdfQ==
|