angular-three-soba 1.14.1 → 2.0.0-beta.11

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.
Files changed (426) hide show
  1. package/README.md +2 -2
  2. package/abstractions/billboard/billboard.d.ts +28 -0
  3. package/abstractions/detailed/detailed.d.ts +26 -0
  4. package/abstractions/edges/edges.d.ts +34 -0
  5. package/abstractions/grid/grid.d.ts +50 -0
  6. package/abstractions/index.d.ts +6 -11
  7. package/abstractions/text/text.d.ts +82 -0
  8. package/abstractions/text-3d/text-3d.d.ts +81 -0
  9. package/cameras/{lib/camera → camera}/camera-content.d.ts +2 -2
  10. package/cameras/camera/camera.d.ts +26 -0
  11. package/cameras/cube-camera/cube-camera.d.ts +69 -0
  12. package/cameras/index.d.ts +4 -4
  13. package/cameras/orthographic-camera/orthographic-camera.d.ts +37 -0
  14. package/cameras/{lib/perspective-camera → perspective-camera}/perspective-camera.d.ts +10 -1
  15. package/controls/index.d.ts +1 -1
  16. package/controls/orbit-controls/orbit-controls.d.ts +54 -0
  17. package/esm2022/abstractions/angular-three-soba-abstractions.mjs +1 -1
  18. package/esm2022/abstractions/billboard/billboard.mjs +74 -0
  19. package/esm2022/abstractions/detailed/detailed.mjs +64 -0
  20. package/esm2022/abstractions/edges/edges.mjs +88 -0
  21. package/esm2022/abstractions/grid/grid.mjs +180 -0
  22. package/esm2022/abstractions/index.mjs +7 -12
  23. package/esm2022/abstractions/text/text.mjs +274 -0
  24. package/esm2022/abstractions/text-3d/text-3d.mjs +165 -0
  25. package/esm2022/angular-three-soba.mjs +1 -1
  26. package/esm2022/cameras/angular-three-soba-cameras.mjs +1 -1
  27. package/esm2022/cameras/camera/camera-content.mjs +20 -0
  28. package/esm2022/cameras/camera/camera.mjs +77 -0
  29. package/esm2022/cameras/cube-camera/cube-camera.mjs +161 -0
  30. package/esm2022/cameras/index.mjs +5 -5
  31. package/esm2022/cameras/orthographic-camera/orthographic-camera.mjs +102 -0
  32. package/esm2022/cameras/perspective-camera/perspective-camera.mjs +46 -0
  33. package/esm2022/controls/angular-three-soba-controls.mjs +1 -1
  34. package/esm2022/controls/index.mjs +2 -2
  35. package/esm2022/controls/orbit-controls/orbit-controls.mjs +181 -0
  36. package/esm2022/index.mjs +1 -1
  37. package/esm2022/loaders/angular-three-soba-loaders.mjs +1 -1
  38. package/esm2022/loaders/gltf-loader/gltf-loader.mjs +30 -0
  39. package/esm2022/loaders/index.mjs +5 -6
  40. package/esm2022/loaders/loader/loader.mjs +138 -0
  41. package/esm2022/loaders/progress/progress.mjs +45 -0
  42. package/esm2022/loaders/texture-loader/texture-loader.mjs +28 -0
  43. package/esm2022/materials/angular-three-soba-materials.mjs +1 -1
  44. package/esm2022/materials/index.mjs +7 -6
  45. package/esm2022/materials/mesh-distort-material/mesh-distort-material.mjs +82 -0
  46. package/esm2022/materials/mesh-reflector-material/mesh-reflector-material.mjs +367 -0
  47. package/esm2022/materials/mesh-refraction-material/mesh-refraction-material.mjs +171 -0
  48. package/esm2022/materials/mesh-transmission-material/mesh-transmission-material.mjs +278 -0
  49. package/esm2022/materials/mesh-wobble-material/mesh-wobble-material.mjs +68 -0
  50. package/esm2022/materials/point-material/point-material.mjs +46 -0
  51. package/esm2022/misc/angular-three-soba-misc.mjs +1 -1
  52. package/esm2022/misc/animations/animations.mjs +59 -0
  53. package/esm2022/misc/bake-shadows/bake-shadows.mjs +24 -0
  54. package/esm2022/misc/caustics/caustics.mjs +387 -0
  55. package/esm2022/misc/decal/decal.mjs +187 -0
  56. package/esm2022/misc/depth-buffer/depth-buffer.mjs +44 -0
  57. package/esm2022/misc/example/example.mjs +160 -0
  58. package/esm2022/misc/fbo/fbo.mjs +47 -0
  59. package/esm2022/misc/html/html-wrapper.mjs +478 -0
  60. package/esm2022/misc/html/html.mjs +304 -0
  61. package/esm2022/misc/index.mjs +14 -5
  62. package/esm2022/misc/sampler/sampler.mjs +142 -0
  63. package/esm2022/misc/shadow/shadow.mjs +111 -0
  64. package/esm2022/misc/stats-gl/stats-gl.mjs +61 -0
  65. package/esm2022/misc/trail/trail.mjs +209 -0
  66. package/esm2022/misc/trail-texture/inject-trail-texture.mjs +17 -0
  67. package/esm2022/misc/trail-texture/trail-texture.mjs +106 -0
  68. package/esm2022/modifiers/angular-three-soba-modifiers.mjs +5 -0
  69. package/esm2022/modifiers/curve-modifier/curve-modifier.mjs +64 -0
  70. package/esm2022/modifiers/index.mjs +2 -0
  71. package/esm2022/performances/adaptive-dpr/adaptive-dpr.mjs +44 -0
  72. package/esm2022/performances/adaptive-events/adaptive-events.mjs +27 -0
  73. package/esm2022/performances/angular-three-soba-performances.mjs +5 -0
  74. package/esm2022/performances/index.mjs +6 -0
  75. package/esm2022/performances/points/points-input.mjs +64 -0
  76. package/esm2022/performances/points/points.mjs +329 -0
  77. package/esm2022/performances/points/position-point.mjs +54 -0
  78. package/esm2022/performances/segments/segment-object.mjs +9 -0
  79. package/esm2022/performances/segments/segments.mjs +182 -0
  80. package/esm2022/shaders/angular-three-soba-shaders.mjs +1 -1
  81. package/esm2022/shaders/blur-pass/blur-pass.mjs +61 -0
  82. package/esm2022/shaders/caustics/caustics-material.mjs +130 -0
  83. package/esm2022/shaders/caustics/caustics-projection-material.mjs +31 -0
  84. package/esm2022/shaders/convolution-material/convolution-material.mjs +94 -0
  85. package/esm2022/shaders/discard-material/discard-material.mjs +3 -0
  86. package/esm2022/shaders/grid-material/grid-material.mjs +77 -0
  87. package/esm2022/shaders/index.mjs +18 -15
  88. package/esm2022/shaders/mesh-distort-material/mesh-distort-material.mjs +56 -0
  89. package/esm2022/shaders/mesh-reflector-material/mesh-reflector-material.mjs +223 -0
  90. package/esm2022/shaders/mesh-refraction-material/mesh-refraction-material.mjs +170 -0
  91. package/esm2022/shaders/mesh-transmission-material/mesh-transmission-material.mjs +268 -0
  92. package/esm2022/shaders/mesh-wobble-material/mesh-wobble-material.mjs +37 -0
  93. package/esm2022/shaders/shader-material/shader-material.mjs +34 -0
  94. package/esm2022/shaders/soft-shadow-material/soft-shadow-material.mjs +25 -0
  95. package/esm2022/shaders/sparkles-material/sparkles-material.mjs +33 -0
  96. package/esm2022/shaders/spot-light-material/spot-light-material.mjs +86 -0
  97. package/esm2022/shaders/star-field-material/star-field-material.mjs +33 -0
  98. package/esm2022/shaders/wireframe-material/wireframe-material.mjs +247 -0
  99. package/esm2022/staging/accumulative-shadows/accumulative-shadows.mjs +267 -0
  100. package/esm2022/staging/accumulative-shadows/progressive-light-map.mjs +108 -0
  101. package/esm2022/staging/accumulative-shadows/randomized-lights.mjs +206 -0
  102. package/esm2022/staging/angular-three-soba-staging.mjs +1 -1
  103. package/esm2022/staging/backdrop/backdrop.mjs +77 -0
  104. package/esm2022/staging/bb-anchor/bb-anchor.mjs +69 -0
  105. package/esm2022/staging/bounds/bounds.mjs +308 -0
  106. package/esm2022/staging/camera-shake/camera-shake.mjs +123 -0
  107. package/esm2022/staging/center/center.mjs +163 -0
  108. package/esm2022/staging/cloud/cloud.mjs +158 -0
  109. package/esm2022/staging/contact-shadows/contact-shadows.mjs +246 -0
  110. package/esm2022/staging/environment/assets.mjs +13 -0
  111. package/esm2022/staging/environment/environment-cube.mjs +47 -0
  112. package/esm2022/staging/environment/environment-ground.mjs +41 -0
  113. package/esm2022/staging/environment/environment-input.mjs +119 -0
  114. package/esm2022/staging/environment/environment-map.mjs +53 -0
  115. package/esm2022/staging/environment/environment-portal.mjs +113 -0
  116. package/esm2022/staging/environment/environment.mjs +61 -0
  117. package/esm2022/staging/environment/utils.mjs +105 -0
  118. package/esm2022/staging/float/float.mjs +94 -0
  119. package/esm2022/staging/index.mjs +22 -18
  120. package/esm2022/staging/matcap-texture/matcap-texture.mjs +64 -0
  121. package/esm2022/staging/normal-texture/normal-texture.mjs +53 -0
  122. package/esm2022/staging/sky/sky.mjs +119 -0
  123. package/esm2022/staging/sparkles/sparkles.mjs +164 -0
  124. package/esm2022/staging/spot-light/shadow-mesh-input.mjs +63 -0
  125. package/esm2022/staging/spot-light/shadow-mesh.mjs +266 -0
  126. package/esm2022/staging/spot-light/spot-light-input.mjs +84 -0
  127. package/esm2022/staging/spot-light/spot-light.mjs +81 -0
  128. package/esm2022/staging/spot-light/volumetric-mesh.mjs +98 -0
  129. package/esm2022/staging/stage/stage.mjs +388 -0
  130. package/esm2022/staging/stars/stars.mjs +147 -0
  131. package/esm2022/staging/wireframe/wireframe-input.mjs +191 -0
  132. package/esm2022/staging/wireframe/wireframe.mjs +224 -0
  133. package/esm2022/utils/angular-three-soba-utils.mjs +5 -0
  134. package/esm2022/utils/content/content.mjs +15 -0
  135. package/esm2022/utils/index.mjs +2 -0
  136. package/fesm2022/angular-three-soba-abstractions.mjs +668 -1882
  137. package/fesm2022/angular-three-soba-abstractions.mjs.map +1 -1
  138. package/fesm2022/angular-three-soba-cameras.mjs +279 -232
  139. package/fesm2022/angular-three-soba-cameras.mjs.map +1 -1
  140. package/fesm2022/angular-three-soba-controls.mjs +104 -69
  141. package/fesm2022/angular-three-soba-controls.mjs.map +1 -1
  142. package/fesm2022/angular-three-soba-loaders.mjs +177 -164
  143. package/fesm2022/angular-three-soba-loaders.mjs.map +1 -1
  144. package/fesm2022/angular-three-soba-materials.mjs +630 -482
  145. package/fesm2022/angular-three-soba-materials.mjs.map +1 -1
  146. package/fesm2022/angular-three-soba-misc.mjs +2248 -122
  147. package/fesm2022/angular-three-soba-misc.mjs.map +1 -1
  148. package/fesm2022/angular-three-soba-modifiers.mjs +71 -0
  149. package/fesm2022/angular-three-soba-modifiers.mjs.map +1 -0
  150. package/fesm2022/angular-three-soba-performances.mjs +697 -0
  151. package/fesm2022/angular-three-soba-performances.mjs.map +1 -0
  152. package/fesm2022/angular-three-soba-shaders.mjs +554 -209
  153. package/fesm2022/angular-three-soba-shaders.mjs.map +1 -1
  154. package/fesm2022/angular-three-soba-staging.mjs +3230 -2852
  155. package/fesm2022/angular-three-soba-staging.mjs.map +1 -1
  156. package/fesm2022/angular-three-soba-utils.mjs +22 -0
  157. package/fesm2022/angular-three-soba-utils.mjs.map +1 -0
  158. package/fesm2022/angular-three-soba.mjs.map +1 -1
  159. package/loaders/gltf-loader/gltf-loader.d.ts +10 -0
  160. package/loaders/index.d.ts +4 -5
  161. package/loaders/loader/loader.d.ts +33 -0
  162. package/loaders/progress/progress.d.ts +9 -0
  163. package/loaders/texture-loader/texture-loader.d.ts +7 -0
  164. package/materials/index.d.ts +6 -5
  165. package/materials/mesh-distort-material/mesh-distort-material.d.ts +40 -0
  166. package/materials/mesh-reflector-material/mesh-reflector-material.d.ts +99 -0
  167. package/materials/mesh-refraction-material/mesh-refraction-material.d.ts +62 -0
  168. package/materials/mesh-transmission-material/mesh-transmission-material.d.ts +107 -0
  169. package/materials/mesh-wobble-material/mesh-wobble-material.d.ts +29 -0
  170. package/materials/point-material/point-material.d.ts +24 -0
  171. package/metadata.json +1 -0
  172. package/misc/animations/animations.d.ts +15 -0
  173. package/misc/{lib/bake-shadows → bake-shadows}/bake-shadows.d.ts +2 -5
  174. package/misc/caustics/caustics.d.ts +87 -0
  175. package/misc/decal/decal.d.ts +49 -0
  176. package/misc/depth-buffer/depth-buffer.d.ts +9 -0
  177. package/misc/example/example.d.ts +81 -0
  178. package/misc/{lib/fbo → fbo}/fbo.d.ts +4 -2
  179. package/misc/html/html-wrapper.d.ts +559 -0
  180. package/misc/html/html.d.ts +214 -0
  181. package/misc/index.d.ts +13 -4
  182. package/misc/sampler/sampler.d.ts +67 -0
  183. package/misc/shadow/shadow.d.ts +37 -0
  184. package/misc/stats-gl/stats-gl.d.ts +24 -0
  185. package/misc/trail/trail.d.ts +57 -0
  186. package/misc/trail-texture/inject-trail-texture.d.ts +9 -0
  187. package/misc/trail-texture/trail-texture.d.ts +50 -0
  188. package/modifiers/README.md +3 -0
  189. package/modifiers/curve-modifier/curve-modifier.d.ts +23 -0
  190. package/modifiers/index.d.ts +1 -0
  191. package/package.json +43 -32
  192. package/performances/README.md +3 -0
  193. package/performances/adaptive-dpr/adaptive-dpr.d.ts +14 -0
  194. package/{performance/lib/adaptive → performances/adaptive-events}/adaptive-events.d.ts +5 -6
  195. package/performances/index.d.ts +5 -0
  196. package/performances/points/points-input.d.ts +32 -0
  197. package/performances/points/points.d.ts +92 -0
  198. package/performances/points/position-point.d.ts +11 -0
  199. package/performances/segments/segment-object.d.ts +7 -0
  200. package/performances/segments/segments.d.ts +124 -0
  201. package/shaders/{lib/blur-pass → blur-pass}/blur-pass.d.ts +2 -2
  202. package/shaders/grid-material/grid-material.d.ts +37 -0
  203. package/shaders/index.d.ts +17 -14
  204. package/shaders/{lib/mesh-distort-material → mesh-distort-material}/mesh-distort-material.d.ts +147 -2
  205. package/shaders/{lib/mesh-transmission-material → mesh-transmission-material}/mesh-transmission-material.d.ts +1 -1
  206. package/shaders/{lib/mesh-wobble-material → mesh-wobble-material}/mesh-wobble-material.d.ts +1 -0
  207. package/shaders/{lib/shader-material → shader-material}/shader-material.d.ts +2 -2
  208. package/shaders/soft-shadow-material/soft-shadow-material.d.ts +19 -0
  209. package/shaders/sparkles-material/sparkles-material.d.ts +17 -0
  210. package/shaders/spot-light-material/spot-light-material.d.ts +13 -0
  211. package/shaders/star-field-material/star-field-material.d.ts +13 -0
  212. package/shaders/wireframe-material/wireframe-material.d.ts +58 -0
  213. package/staging/accumulative-shadows/accumulative-shadows.d.ts +146 -0
  214. package/staging/{lib/accumulative-shadows → accumulative-shadows}/progressive-light-map.d.ts +2 -2
  215. package/staging/accumulative-shadows/randomized-lights.d.ts +90 -0
  216. package/staging/backdrop/backdrop.d.ts +30 -0
  217. package/staging/bb-anchor/bb-anchor.d.ts +27 -0
  218. package/staging/bounds/bounds.d.ts +134 -0
  219. package/staging/camera-shake/camera-shake.d.ts +43 -0
  220. package/staging/center/center.d.ts +70 -0
  221. package/staging/cloud/cloud.d.ts +51 -0
  222. package/staging/contact-shadows/contact-shadows.d.ts +70 -0
  223. package/staging/{lib/environment → environment}/assets.d.ts +9 -9
  224. package/staging/environment/environment-cube.d.ts +15 -0
  225. package/staging/environment/environment-ground.d.ts +13 -0
  226. package/staging/environment/environment-input.d.ts +68 -0
  227. package/staging/environment/environment-map.d.ts +16 -0
  228. package/staging/environment/environment-portal.d.ts +18 -0
  229. package/staging/{lib/environment → environment}/environment.d.ts +2 -6
  230. package/staging/environment/utils.d.ts +7 -0
  231. package/staging/float/float.d.ts +31 -0
  232. package/staging/index.d.ts +21 -17
  233. package/staging/matcap-texture/matcap-texture.d.ts +13 -0
  234. package/staging/normal-texture/normal-texture.d.ts +16 -0
  235. package/staging/sky/sky.d.ts +48 -0
  236. package/staging/sparkles/sparkles.d.ts +63 -0
  237. package/staging/spot-light/shadow-mesh-input.d.ts +29 -0
  238. package/staging/spot-light/shadow-mesh.d.ts +37 -0
  239. package/staging/spot-light/spot-light-input.d.ts +38 -0
  240. package/staging/spot-light/spot-light.d.ts +39 -0
  241. package/staging/spot-light/volumetric-mesh.d.ts +24 -0
  242. package/staging/stage/stage.d.ts +130 -0
  243. package/staging/stars/stars.d.ts +45 -0
  244. package/staging/wireframe/wireframe-input.d.ts +65 -0
  245. package/staging/wireframe/wireframe.d.ts +28 -0
  246. package/utils/README.md +3 -0
  247. package/utils/content/content.d.ts +8 -0
  248. package/utils/index.d.ts +1 -0
  249. package/web-types.json +1 -0
  250. package/abstractions/lib/billboard/billboard.d.ts +0 -14
  251. package/abstractions/lib/catmull-rom-line/catmull-rom-line.d.ts +0 -15
  252. package/abstractions/lib/cubic-bezier-line/cubic-bezier-line.d.ts +0 -15
  253. package/abstractions/lib/edges/edges.d.ts +0 -18
  254. package/abstractions/lib/gizmo-helper/gizmo-helper.d.ts +0 -41
  255. package/abstractions/lib/gizmo-helper/gizmo-viewcube/constants.d.ts +0 -12
  256. package/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube-edge.d.ts +0 -16
  257. package/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube-face.d.ts +0 -24
  258. package/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube-inputs.d.ts +0 -14
  259. package/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube.d.ts +0 -15
  260. package/abstractions/lib/gizmo-helper/gizmo-viewport/gizmo-viewport-axis.d.ts +0 -28
  261. package/abstractions/lib/gizmo-helper/gizmo-viewport/gizmo-viewport.d.ts +0 -21
  262. package/abstractions/lib/line/line-input.d.ts +0 -19
  263. package/abstractions/lib/line/line.d.ts +0 -21
  264. package/abstractions/lib/quadratic-bezier-line/quadratic-bezier-line.d.ts +0 -19
  265. package/abstractions/lib/text/text.d.ts +0 -21
  266. package/abstractions/lib/text-3d/text-3d.d.ts +0 -39
  267. package/assets/default-spot-light-shadow.glsl +0 -10
  268. package/cameras/lib/camera/camera.d.ts +0 -19
  269. package/cameras/lib/cube-camera/cube-camera.d.ts +0 -27
  270. package/cameras/lib/orthographic-camera/orthographic-camera.d.ts +0 -17
  271. package/controls/lib/orbit-controls/orbit-controls.d.ts +0 -27
  272. package/esm2022/abstractions/lib/billboard/billboard.mjs +0 -74
  273. package/esm2022/abstractions/lib/catmull-rom-line/catmull-rom-line.mjs +0 -120
  274. package/esm2022/abstractions/lib/cubic-bezier-line/cubic-bezier-line.mjs +0 -99
  275. package/esm2022/abstractions/lib/edges/edges.mjs +0 -96
  276. package/esm2022/abstractions/lib/gizmo-helper/gizmo-helper.mjs +0 -213
  277. package/esm2022/abstractions/lib/gizmo-helper/gizmo-viewcube/constants.mjs +0 -31
  278. package/esm2022/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube-edge.mjs +0 -92
  279. package/esm2022/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube-face.mjs +0 -184
  280. package/esm2022/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube-inputs.mjs +0 -46
  281. package/esm2022/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube.mjs +0 -134
  282. package/esm2022/abstractions/lib/gizmo-helper/gizmo-viewport/gizmo-viewport-axis.mjs +0 -195
  283. package/esm2022/abstractions/lib/gizmo-helper/gizmo-viewport/gizmo-viewport.mjs +0 -267
  284. package/esm2022/abstractions/lib/line/line-input.mjs +0 -76
  285. package/esm2022/abstractions/lib/line/line.mjs +0 -133
  286. package/esm2022/abstractions/lib/quadratic-bezier-line/quadratic-bezier-line.mjs +0 -128
  287. package/esm2022/abstractions/lib/text/text.mjs +0 -115
  288. package/esm2022/abstractions/lib/text-3d/text-3d.mjs +0 -145
  289. package/esm2022/cameras/lib/camera/camera-content.mjs +0 -21
  290. package/esm2022/cameras/lib/camera/camera.mjs +0 -75
  291. package/esm2022/cameras/lib/cube-camera/cube-camera.mjs +0 -131
  292. package/esm2022/cameras/lib/orthographic-camera/orthographic-camera.mjs +0 -93
  293. package/esm2022/cameras/lib/perspective-camera/perspective-camera.mjs +0 -47
  294. package/esm2022/controls/lib/orbit-controls/orbit-controls.mjs +0 -147
  295. package/esm2022/loaders/lib/cube-texture-loader/cube-texture-loader.mjs +0 -10
  296. package/esm2022/loaders/lib/gltf-loader/gltf-loader.mjs +0 -32
  297. package/esm2022/loaders/lib/loader/loader.mjs +0 -134
  298. package/esm2022/loaders/lib/progress/progress.mjs +0 -39
  299. package/esm2022/loaders/lib/texture-loader/texture-loader.mjs +0 -19
  300. package/esm2022/materials/lib/mesh-distort-material/mesh-distort-material.mjs +0 -75
  301. package/esm2022/materials/lib/mesh-reflector-material/mesh-reflector-material.mjs +0 -328
  302. package/esm2022/materials/lib/mesh-refraction-material/mesh-refraction-material.mjs +0 -158
  303. package/esm2022/materials/lib/mesh-transmission-material/mesh-transmission-material.mjs +0 -238
  304. package/esm2022/materials/lib/mesh-wobble-material/mesh-wobble-material.mjs +0 -68
  305. package/esm2022/misc/lib/animations/animations.mjs +0 -52
  306. package/esm2022/misc/lib/bake-shadows/bake-shadows.mjs +0 -26
  307. package/esm2022/misc/lib/depth-buffer/depth-buffer.mjs +0 -39
  308. package/esm2022/misc/lib/fbo/fbo.mjs +0 -39
  309. package/esm2022/performance/angular-three-soba-performance.mjs +0 -5
  310. package/esm2022/performance/index.mjs +0 -5
  311. package/esm2022/performance/lib/adaptive/adaptive-dpr.mjs +0 -47
  312. package/esm2022/performance/lib/adaptive/adaptive-events.mjs +0 -37
  313. package/esm2022/performance/lib/detailed/detailed.mjs +0 -54
  314. package/esm2022/performance/lib/stats/stats.mjs +0 -80
  315. package/esm2022/shaders/lib/blur-pass/blur-pass.mjs +0 -61
  316. package/esm2022/shaders/lib/caustics-material/caustics-material.mjs +0 -128
  317. package/esm2022/shaders/lib/caustics-projection-material/caustics-projection-material.mjs +0 -33
  318. package/esm2022/shaders/lib/convolution-material/convolution-material.mjs +0 -94
  319. package/esm2022/shaders/lib/discard-material/discard-material.mjs +0 -3
  320. package/esm2022/shaders/lib/mesh-distort-material/mesh-distort-material.mjs +0 -55
  321. package/esm2022/shaders/lib/mesh-reflector-material/mesh-reflector-material.mjs +0 -223
  322. package/esm2022/shaders/lib/mesh-refraction-material/mesh-refraction-material.mjs +0 -169
  323. package/esm2022/shaders/lib/mesh-transmission-material/mesh-transmission-material.mjs +0 -268
  324. package/esm2022/shaders/lib/mesh-wobble-material/mesh-wobble-material.mjs +0 -37
  325. package/esm2022/shaders/lib/shader-material/shader-material.mjs +0 -34
  326. package/esm2022/shaders/lib/soft-shadow-material/soft-shadow-material.mjs +0 -33
  327. package/esm2022/shaders/lib/spot-light-material/spot-light-material.mjs +0 -86
  328. package/esm2022/shaders/lib/star-field-material/star-field-material.mjs +0 -32
  329. package/esm2022/staging/lib/accumulative-shadows/accumulative-shadows.mjs +0 -249
  330. package/esm2022/staging/lib/accumulative-shadows/progressive-light-map.mjs +0 -108
  331. package/esm2022/staging/lib/accumulative-shadows/randomized-lights.mjs +0 -201
  332. package/esm2022/staging/lib/bounds/bounds.mjs +0 -284
  333. package/esm2022/staging/lib/camera-shake/camera-shake.mjs +0 -122
  334. package/esm2022/staging/lib/caustics/caustics.mjs +0 -364
  335. package/esm2022/staging/lib/center/center.mjs +0 -143
  336. package/esm2022/staging/lib/cloud/cloud.mjs +0 -160
  337. package/esm2022/staging/lib/contact-shadows/contact-shadows.mjs +0 -228
  338. package/esm2022/staging/lib/environment/assets.mjs +0 -13
  339. package/esm2022/staging/lib/environment/environment-cube.mjs +0 -41
  340. package/esm2022/staging/lib/environment/environment-ground.mjs +0 -67
  341. package/esm2022/staging/lib/environment/environment-inputs.mjs +0 -87
  342. package/esm2022/staging/lib/environment/environment-map.mjs +0 -39
  343. package/esm2022/staging/lib/environment/environment-portal.mjs +0 -111
  344. package/esm2022/staging/lib/environment/environment.mjs +0 -165
  345. package/esm2022/staging/lib/environment/utils.mjs +0 -70
  346. package/esm2022/staging/lib/float/float.mjs +0 -77
  347. package/esm2022/staging/lib/sky/sky.mjs +0 -109
  348. package/esm2022/staging/lib/sparkles/sparkles.mjs +0 -210
  349. package/esm2022/staging/lib/spot-light/common.mjs +0 -42
  350. package/esm2022/staging/lib/spot-light/shadow-mesh-input.mjs +0 -51
  351. package/esm2022/staging/lib/spot-light/spot-light-input.mjs +0 -62
  352. package/esm2022/staging/lib/spot-light/spot-light-shadow-no-shader.mjs +0 -74
  353. package/esm2022/staging/lib/spot-light/spot-light-shadow-shader.mjs +0 -126
  354. package/esm2022/staging/lib/spot-light/spot-light-shadow.mjs +0 -63
  355. package/esm2022/staging/lib/spot-light/spot-light.mjs +0 -117
  356. package/esm2022/staging/lib/spot-light/volumetric-mesh.mjs +0 -86
  357. package/esm2022/staging/lib/stage/stage.mjs +0 -368
  358. package/esm2022/staging/lib/stars/stars.mjs +0 -140
  359. package/fesm2022/angular-three-soba-performance.mjs +0 -210
  360. package/fesm2022/angular-three-soba-performance.mjs.map +0 -1
  361. package/loaders/lib/cube-texture-loader/cube-texture-loader.d.ts +0 -3
  362. package/loaders/lib/gltf-loader/gltf-loader.d.ts +0 -8
  363. package/loaders/lib/loader/loader.d.ts +0 -26
  364. package/loaders/lib/progress/progress.d.ts +0 -16
  365. package/loaders/lib/texture-loader/texture-loader.d.ts +0 -5
  366. package/materials/lib/mesh-distort-material/mesh-distort-material.d.ts +0 -24
  367. package/materials/lib/mesh-reflector-material/mesh-reflector-material.d.ts +0 -41
  368. package/materials/lib/mesh-refraction-material/mesh-refraction-material.d.ts +0 -28
  369. package/materials/lib/mesh-transmission-material/mesh-transmission-material.d.ts +0 -46
  370. package/materials/lib/mesh-wobble-material/mesh-wobble-material.d.ts +0 -14
  371. package/misc/lib/animations/animations.d.ts +0 -13
  372. package/misc/lib/depth-buffer/depth-buffer.d.ts +0 -7
  373. package/performance/README.md +0 -3
  374. package/performance/index.d.ts +0 -4
  375. package/performance/lib/adaptive/adaptive-dpr.d.ts +0 -11
  376. package/performance/lib/detailed/detailed.d.ts +0 -13
  377. package/performance/lib/stats/stats.d.ts +0 -15
  378. package/plugin/README.md +0 -11
  379. package/plugin/generators.json +0 -19
  380. package/plugin/package.json +0 -9
  381. package/plugin/src/generators/init/compat.d.ts +0 -2
  382. package/plugin/src/generators/init/compat.js +0 -6
  383. package/plugin/src/generators/init/compat.js.map +0 -1
  384. package/plugin/src/generators/init/init.d.ts +0 -4
  385. package/plugin/src/generators/init/init.js +0 -22
  386. package/plugin/src/generators/init/init.js.map +0 -1
  387. package/plugin/src/generators/init/schema.json +0 -6
  388. package/plugin/src/index.d.ts +0 -1
  389. package/plugin/src/index.js +0 -6
  390. package/plugin/src/index.js.map +0 -1
  391. package/shaders/lib/soft-shadow-material/soft-shadow-material.d.ts +0 -10
  392. package/shaders/lib/spot-light-material/spot-light-material.d.ts +0 -4
  393. package/shaders/lib/star-field-material/star-field-material.d.ts +0 -3
  394. package/staging/lib/accumulative-shadows/accumulative-shadows.d.ts +0 -58
  395. package/staging/lib/accumulative-shadows/randomized-lights.d.ts +0 -42
  396. package/staging/lib/bounds/bounds.d.ts +0 -48
  397. package/staging/lib/camera-shake/camera-shake.d.ts +0 -28
  398. package/staging/lib/caustics/caustics.d.ts +0 -47
  399. package/staging/lib/center/center.d.ts +0 -40
  400. package/staging/lib/cloud/cloud.d.ts +0 -23
  401. package/staging/lib/contact-shadows/contact-shadows.d.ts +0 -29
  402. package/staging/lib/environment/environment-cube.d.ts +0 -11
  403. package/staging/lib/environment/environment-ground.d.ts +0 -9
  404. package/staging/lib/environment/environment-inputs.d.ts +0 -28
  405. package/staging/lib/environment/environment-map.d.ts +0 -10
  406. package/staging/lib/environment/environment-portal.d.ts +0 -15
  407. package/staging/lib/environment/utils.d.ts +0 -8
  408. package/staging/lib/float/float.d.ts +0 -16
  409. package/staging/lib/sky/sky.d.ts +0 -20
  410. package/staging/lib/sparkles/sparkles.d.ts +0 -29
  411. package/staging/lib/spot-light/common.d.ts +0 -3
  412. package/staging/lib/spot-light/shadow-mesh-input.d.ts +0 -14
  413. package/staging/lib/spot-light/spot-light-input.d.ts +0 -16
  414. package/staging/lib/spot-light/spot-light-shadow-no-shader.d.ts +0 -14
  415. package/staging/lib/spot-light/spot-light-shadow-shader.d.ts +0 -25
  416. package/staging/lib/spot-light/spot-light-shadow.d.ts +0 -6
  417. package/staging/lib/spot-light/spot-light.d.ts +0 -17
  418. package/staging/lib/spot-light/volumetric-mesh.d.ts +0 -15
  419. package/staging/lib/stage/stage.d.ts +0 -87
  420. package/staging/lib/stars/stars.d.ts +0 -20
  421. /package/shaders/{lib/caustics-material → caustics}/caustics-material.d.ts +0 -0
  422. /package/shaders/{lib/caustics-projection-material → caustics}/caustics-projection-material.d.ts +0 -0
  423. /package/shaders/{lib/convolution-material → convolution-material}/convolution-material.d.ts +0 -0
  424. /package/shaders/{lib/discard-material → discard-material}/discard-material.d.ts +0 -0
  425. /package/shaders/{lib/mesh-reflector-material → mesh-reflector-material}/mesh-reflector-material.d.ts +0 -0
  426. /package/shaders/{lib/mesh-refraction-material → mesh-refraction-material}/mesh-refraction-material.d.ts +0 -0
@@ -0,0 +1,161 @@
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.2.0", ngImport: i0, type: NgtsCubeCameraContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
55
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.0", type: NgtsCubeCameraContent, isStandalone: true, selector: "ng-template[ngtsCubeCameraContent]", ngImport: i0 }); }
56
+ }
57
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", 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.2.0", ngImport: i0, type: NgtsCubeCamera, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
112
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", 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.2.0", 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3ViZS1jYW1lcmEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NvYmEvY2FtZXJhcy9zcmMvY3ViZS1jYW1lcmEvY3ViZS1jYW1lcmEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUNOLHNCQUFzQixFQUN0QixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixTQUFTLEVBRVQsS0FBSyxFQUdMLFdBQVcsRUFDWCxTQUFTLEVBQ1QsZ0JBQWdCLEVBQ2hCLFFBQVEsRUFDUixNQUFNLEVBQ04sTUFBTSxFQUNOLHFCQUFxQixFQUNyQixTQUFTLEdBRVQsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUNOLE9BQU8sRUFDUCxzQkFBc0IsRUFDdEIsTUFBTSxFQUNOLGtCQUFrQixFQUNsQixZQUFZLEVBQ1osY0FBYyxFQUNkLFdBQVcsR0FFWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEtBQUssS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMvQixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sT0FBTyxDQUFDOztBQWU5QixNQUFNLHNCQUFzQixHQUFHO0lBQzlCLFVBQVUsRUFBRSxHQUFHO0lBQ2YsSUFBSSxFQUFFLEdBQUc7SUFDVCxHQUFHLEVBQUUsSUFBSTtDQUNxQixDQUFDO0FBRWhDLE1BQU0sVUFBVSxvQkFBb0IsQ0FDbkMsZUFBbUQsRUFDbkQsRUFBRSxRQUFRLEtBQThCLEVBQUU7SUFFMUMsUUFBUSxHQUFHLHNCQUFzQixDQUFDLG9CQUFvQixFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2xFLE9BQU8scUJBQXFCLENBQUMsUUFBUSxFQUFFLEdBQUcsRUFBRTtRQUMzQyxNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxFQUFFLEdBQUcsc0JBQXNCLEVBQUUsR0FBRyxlQUFlLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUNwRixNQUFNLFVBQVUsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDdEQsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzFDLE1BQU0sR0FBRyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUV4QyxNQUFNLEtBQUssR0FBRyxjQUFjLEVBQUUsQ0FBQztRQUUvQixNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9CLE1BQU0sTUFBTSxHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFckMsTUFBTSxJQUFJLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRTtZQUMxQixNQUFNLFlBQVksR0FBRyxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDO1lBQ25FLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxhQUFhLENBQUM7WUFDaEQsT0FBTyxZQUFZLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUNwQixNQUFNLEdBQUcsR0FBRyxJQUFJLEVBQUUsQ0FBQztZQUNuQixTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7UUFDaEMsQ0FBQyxDQUFDLENBQUM7UUFFSCxNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU1RSxJQUFJLFdBQStCLENBQUM7UUFDcEMsSUFBSSxrQkFBNkMsQ0FBQztRQUVsRCxNQUFNLE1BQU0sR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzVCLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUsT0FBTyxFQUFFLEVBQUUsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFFNUYsT0FBTyxHQUFHLEVBQUU7Z0JBQ1gsV0FBVyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7Z0JBQ3hCLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUM7Z0JBQ3RDLEtBQUssQ0FBQyxVQUFVLEdBQUcsTUFBTSxJQUFJLGtCQUFrQixDQUFDO2dCQUNoRCxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxXQUFXLENBQUM7Z0JBQy9CLE1BQU0sQ0FBQyxNQUFNLENBQUMsRUFBRSxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUN6QixLQUFLLENBQUMsR0FBRyxHQUFHLFdBQVcsQ0FBQztnQkFDeEIsS0FBSyxDQUFDLFVBQVUsR0FBRyxrQkFBa0IsQ0FBQztZQUN2QyxDQUFDLENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLENBQUM7SUFDL0MsQ0FBQyxDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztBQWdCbEIsTUFBTSxPQUFPLHFCQUFxQjtJQUNqQyxNQUFNLENBQUMsc0JBQXNCLENBQzVCLENBQXdCLEVBQ3hCLEdBQVk7UUFFWixPQUFPLElBQUksQ0FBQztJQUNiLENBQUM7OEdBTlcscUJBQXFCO2tHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBRGpDLFNBQVM7bUJBQUMsRUFBRSxRQUFRLEVBQUUsb0NBQW9DLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRTs7QUF3Qi9FLE1BQU0sT0FBTyxjQUFjO0lBVzFCLGlDQUFpQztJQUNqQyxJQUFvQyxXQUFXLENBQUMsVUFBa0I7UUFDakUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCx1QkFBdUI7SUFDdkIsSUFBOEIsS0FBSyxDQUFDLElBQVk7UUFDL0MsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzNCLENBQUM7SUFFRCx1QkFBdUI7SUFDdkIsSUFBNkIsSUFBSSxDQUFDLEdBQVc7UUFDNUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCw4RUFBOEU7SUFDOUUsSUFBZ0MsT0FBTyxDQUFDLE1BQXFCO1FBQzVELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUM3QixDQUFDO0lBRUQsMkRBQTJEO0lBQzNELElBQTZCLElBQUksQ0FBQyxHQUE4QjtRQUMvRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUM7SUFDMUIsQ0FBQztJQU1EO1FBdkNRLFdBQU0sR0FBRyxXQUFXLENBQStCLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxDQUFDLENBQUM7UUFFeEUsY0FBUyxHQUFHLFlBQVksRUFBUyxDQUFDO1FBaUMzQyxlQUFVLEdBQUcsb0JBQW9CLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM3QyxZQUFPLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsT0FBTyxDQUFDLENBQUM7UUFJL0QsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ2pDLElBQUksQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDSixDQUFDO0lBRUQsUUFBUTtRQUNQLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsT0FBTyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQ2pHLENBQUM7SUFFTyxZQUFZO1FBQ25CLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQztRQUNkLGtCQUFrQixDQUFDLEdBQUcsRUFBRTtZQUN2QixNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsQ0FBQztZQUM1QyxJQUFJLENBQUMsTUFBTTtnQkFBRSxPQUFPO1lBQ3BCLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDeEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDekMsSUFBSSxNQUFNLEtBQUssUUFBUSxJQUFJLEtBQUssR0FBRyxNQUFNLEVBQUU7Z0JBQzFDLE1BQU0sQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO2dCQUN2QixNQUFNLEVBQUUsQ0FBQztnQkFDVCxNQUFNLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztnQkFDdEIsS0FBSyxFQUFFLENBQUM7YUFDUjtRQUNGLENBQUMsQ0FBQyxDQUFDO0lBQ0osQ0FBQzs4R0FqRVcsY0FBYztrR0FBZCxjQUFjLCtTQUtaLHFCQUFxQiwyQkFBd0IsV0FBVyx3SEFHM0IsZ0JBQWdCLDJDQW5CakQ7Ozs7Ozs7RUFPVCw0REFDUyxPQUFPOzsyRkFHTCxjQUFjO2tCQWQxQixTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxrQkFBa0I7b0JBQzVCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7Ozs7Ozs7RUFPVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLENBQUM7b0JBQ3BDLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUNqQzswRUFJUyxTQUFTO3NCQUFqQixLQUFLO2dCQUdFLGFBQWE7c0JBRHBCLFlBQVk7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7Z0JBSWhFLE1BQU07c0JBRGIsU0FBUzt1QkFBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRTtnQkFJekIsV0FBVztzQkFBOUMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUU7Z0JBS0EsS0FBSztzQkFBbEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUU7Z0JBS0ssSUFBSTtzQkFBaEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUU7Z0JBS1MsT0FBTztzQkFBdEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7Z0JBS0csSUFBSTtzQkFBaEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG5cdENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsXG5cdENvbXBvbmVudCxcblx0Q29udGVudENoaWxkLFxuXHREZXN0cm95UmVmLFxuXHREaXJlY3RpdmUsXG5cdEVtYmVkZGVkVmlld1JlZixcblx0SW5wdXQsXG5cdE9uSW5pdCxcblx0U2lnbmFsLFxuXHRUZW1wbGF0ZVJlZixcblx0Vmlld0NoaWxkLFxuXHRWaWV3Q29udGFpbmVyUmVmLFxuXHRjb21wdXRlZCxcblx0ZWZmZWN0LFxuXHRpbmplY3QsXG5cdHJ1bkluSW5qZWN0aW9uQ29udGV4dCxcblx0dW50cmFja2VkLFxuXHR0eXBlIEluamVjdG9yLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG5cdE5ndEFyZ3MsXG5cdGFzc2VydEluamVjdGlvbkNvbnRleHQsXG5cdGV4dGVuZCxcblx0aW5qZWN0QmVmb3JlUmVuZGVyLFxuXHRpbmplY3ROZ3RSZWYsXG5cdGluamVjdE5ndFN0b3JlLFxuXHRzaWduYWxTdG9yZSxcblx0dHlwZSBOZ3RHcm91cCxcbn0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgKiBhcyBUSFJFRSBmcm9tICd0aHJlZSc7XG5pbXBvcnQgeyBHcm91cCB9IGZyb20gJ3RocmVlJztcblxuZXhwb3J0IHR5cGUgTmd0c0N1YmVDYW1lcmFTdGF0ZSA9IHtcblx0LyoqIFJlc29sdXRpb24gb2YgdGhlIEZCTywgMjU2ICovXG5cdHJlc29sdXRpb246IG51bWJlcjtcblx0LyoqIENhbWVyYSBuZWFyLCAwLjEgKi9cblx0bmVhcjogbnVtYmVyO1xuXHQvKiogQ2FtZXJhIGZhciwgMTAwMCAqL1xuXHRmYXI6IG51bWJlcjtcblx0LyoqIEN1c3RvbSBlbnZpcm9ubWVudCBtYXAgdGhhdCBpcyB0ZW1wb3JhcmlseSBzZXQgYXMgdGhlIHNjZW5lcyBiYWNrZ3JvdW5kICovXG5cdGVudk1hcD86IFRIUkVFLlRleHR1cmU7XG5cdC8qKiBDdXN0b20gZm9nIHRoYXQgaXMgdGVtcG9yYXJpbHkgc2V0IGFzIHRoZSBzY2VuZXMgZm9nICovXG5cdGZvZz86IFRIUkVFLkZvZyB8IFRIUkVFLkZvZ0V4cDI7XG59O1xuXG5jb25zdCBkZWZhdWx0Q3ViZUNhbWVyYVN0YXRlID0ge1xuXHRyZXNvbHV0aW9uOiAyNTYsXG5cdG5lYXI6IDAuMSxcblx0ZmFyOiAxMDAwLFxufSBzYXRpc2ZpZXMgTmd0c0N1YmVDYW1lcmFTdGF0ZTtcblxuZXhwb3J0IGZ1bmN0aW9uIGluamVjdE5ndHNDdWJlQ2FtZXJhKFxuXHRjdWJlQ2FtZXJhU3RhdGU6ICgpID0+IFBhcnRpYWw8Tmd0c0N1YmVDYW1lcmFTdGF0ZT4sXG5cdHsgaW5qZWN0b3IgfTogeyBpbmplY3Rvcj86IEluamVjdG9yIH0gPSB7fSxcbikge1xuXHRpbmplY3RvciA9IGFzc2VydEluamVjdGlvbkNvbnRleHQoaW5qZWN0Tmd0c0N1YmVDYW1lcmEsIGluamVjdG9yKTtcblx0cmV0dXJuIHJ1bkluSW5qZWN0aW9uQ29udGV4dChpbmplY3RvciwgKCkgPT4ge1xuXHRcdGNvbnN0IHN0YXRlID0gY29tcHV0ZWQoKCkgPT4gKHsgLi4uZGVmYXVsdEN1YmVDYW1lcmFTdGF0ZSwgLi4uY3ViZUNhbWVyYVN0YXRlKCkgfSkpO1xuXHRcdGNvbnN0IHJlc29sdXRpb24gPSBjb21wdXRlZCgoKSA9PiBzdGF0ZSgpLnJlc29sdXRpb24pO1xuXHRcdGNvbnN0IG5lYXIgPSBjb21wdXRlZCgoKSA9PiBzdGF0ZSgpLm5lYXIpO1xuXHRcdGNvbnN0IGZhciA9IGNvbXB1dGVkKCgpID0+IHN0YXRlKCkuZmFyKTtcblxuXHRcdGNvbnN0IHN0b3JlID0gaW5qZWN0Tmd0U3RvcmUoKTtcblxuXHRcdGNvbnN0IF9nbCA9IHN0b3JlLnNlbGVjdCgnZ2wnKTtcblx0XHRjb25zdCBfc2NlbmUgPSBzdG9yZS5zZWxlY3QoJ3NjZW5lJyk7XG5cblx0XHRjb25zdCBfZmJvID0gY29tcHV0ZWQoKCkgPT4ge1xuXHRcdFx0Y29uc3QgcmVuZGVyVGFyZ2V0ID0gbmV3IFRIUkVFLldlYkdMQ3ViZVJlbmRlclRhcmdldChyZXNvbHV0aW9uKCkpO1xuXHRcdFx0cmVuZGVyVGFyZ2V0LnRleHR1cmUudHlwZSA9IFRIUkVFLkhhbGZGbG9hdFR5cGU7XG5cdFx0XHRyZXR1cm4gcmVuZGVyVGFyZ2V0O1xuXHRcdH0pO1xuXG5cdFx0ZWZmZWN0KChvbkNsZWFudXApID0+IHtcblx0XHRcdGNvbnN0IGZibyA9IF9mYm8oKTtcblx0XHRcdG9uQ2xlYW51cCgoKSA9PiBmYm8uZGlzcG9zZSgpKTtcblx0XHR9KTtcblxuXHRcdGNvbnN0IF9jYW1lcmEgPSBjb21wdXRlZCgoKSA9PiBuZXcgVEhSRUUuQ3ViZUNhbWVyYShuZWFyKCksIGZhcigpLCBfZmJvKCkpKTtcblxuXHRcdGxldCBvcmlnaW5hbEZvZzogVEhSRUUuU2NlbmVbJ2ZvZyddO1xuXHRcdGxldCBvcmlnaW5hbEJhY2tncm91bmQ6IFRIUkVFLlNjZW5lWydiYWNrZ3JvdW5kJ107XG5cblx0XHRjb25zdCB1cGRhdGUgPSBjb21wdXRlZCgoKSA9PiB7XG5cdFx0XHRjb25zdCBbc2NlbmUsIGdsLCBjYW1lcmEsIHsgZW52TWFwLCBmb2cgfV0gPSBbX3NjZW5lKCksIF9nbCgpLCBfY2FtZXJhKCksIHVudHJhY2tlZChzdGF0ZSldO1xuXG5cdFx0XHRyZXR1cm4gKCkgPT4ge1xuXHRcdFx0XHRvcmlnaW5hbEZvZyA9IHNjZW5lLmZvZztcblx0XHRcdFx0b3JpZ2luYWxCYWNrZ3JvdW5kID0gc2NlbmUuYmFja2dyb3VuZDtcblx0XHRcdFx0c2NlbmUuYmFja2dyb3VuZCA9IGVudk1hcCB8fCBvcmlnaW5hbEJhY2tncm91bmQ7XG5cdFx0XHRcdHNjZW5lLmZvZyA9IGZvZyB8fCBvcmlnaW5hbEZvZztcblx0XHRcdFx0Y2FtZXJhLnVwZGF0ZShnbCwgc2NlbmUpO1xuXHRcdFx0XHRzY2VuZS5mb2cgPSBvcmlnaW5hbEZvZztcblx0XHRcdFx0c2NlbmUuYmFja2dyb3VuZCA9IG9yaWdpbmFsQmFja2dyb3VuZDtcblx0XHRcdH07XG5cdFx0fSk7XG5cblx0XHRyZXR1cm4geyBmYm86IF9mYm8sIGNhbWVyYTogX2NhbWVyYSwgdXBkYXRlIH07XG5cdH0pO1xufVxuXG5leHRlbmQoeyBHcm91cCB9KTtcblxuZXhwb3J0IHR5cGUgTmd0c0N1YmVDYW1lcmFDb21wb25lbnRTdGF0ZSA9IE5ndHNDdWJlQ2FtZXJhU3RhdGUgJiB7XG5cdGZyYW1lczogbnVtYmVyO1xufTtcblxuZGVjbGFyZSBnbG9iYWwge1xuXHRpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcblx0XHQvKipcblx0XHQgKiBAZXh0ZW5kcyBuZ3QtZ3JvdXBcblx0XHQgKi9cblx0XHQnbmd0cy1jdWJlLWNhbWVyYSc6IE5ndHNDdWJlQ2FtZXJhQ29tcG9uZW50U3RhdGUgJiBOZ3RHcm91cDtcblx0fVxufVxuXG5ARGlyZWN0aXZlKHsgc2VsZWN0b3I6ICduZy10ZW1wbGF0ZVtuZ3RzQ3ViZUNhbWVyYUNvbnRlbnRdJywgc3RhbmRhbG9uZTogdHJ1ZSB9KVxuZXhwb3J0IGNsYXNzIE5ndHNDdWJlQ2FtZXJhQ29udGVudCB7XG5cdHN0YXRpYyBuZ1RlbXBsYXRlQ29udGV4dEd1YXJkKFxuXHRcdF86IE5ndHNDdWJlQ2FtZXJhQ29udGVudCxcblx0XHRjdHg6IHVua25vd24sXG5cdCk6IGN0eCBpcyB7IHRleHR1cmU6IFNpZ25hbDxUSFJFRS5XZWJHTFJlbmRlclRhcmdldFsndGV4dHVyZSddPiB9IHtcblx0XHRyZXR1cm4gdHJ1ZTtcblx0fVxufVxuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZ3RzLWN1YmUtY2FtZXJhJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0dGVtcGxhdGU6IGBcblx0XHQ8bmd0LWdyb3VwIG5ndENvbXBvdW5kPlxuXHRcdFx0PG5ndC1wcmltaXRpdmUgKmFyZ3M9XCJbY3ViZUNhbWVyYS5jYW1lcmEoKV1cIiAvPlxuXHRcdFx0PG5ndC1ncm91cCBbcmVmXT1cImNhbWVyYVJlZlwiPlxuXHRcdFx0XHQ8bmctY29udGFpbmVyICNhbmNob3IgLz5cblx0XHRcdDwvbmd0LWdyb3VwPlxuXHRcdDwvbmd0LWdyb3VwPlxuXHRgLFxuXHRpbXBvcnRzOiBbTmd0QXJncywgTmdUZW1wbGF0ZU91dGxldF0sXG5cdHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0c0N1YmVDYW1lcmEgaW1wbGVtZW50cyBPbkluaXQge1xuXHRwcml2YXRlIGlucHV0cyA9IHNpZ25hbFN0b3JlPE5ndHNDdWJlQ2FtZXJhQ29tcG9uZW50U3RhdGU+KHsgZnJhbWVzOiBJbmZpbml0eSB9KTtcblxuXHRASW5wdXQoKSBjYW1lcmFSZWYgPSBpbmplY3ROZ3RSZWY8R3JvdXA+KCk7XG5cblx0QENvbnRlbnRDaGlsZChOZ3RzQ3ViZUNhbWVyYUNvbnRlbnQsIHsgc3RhdGljOiB0cnVlLCByZWFkOiBUZW1wbGF0ZVJlZiB9KVxuXHRwcml2YXRlIGNhbWVyYUNvbnRlbnQhOiBUZW1wbGF0ZVJlZjx7IHRleHR1cmU6IFNpZ25hbDxUSFJFRS5XZWJHTFJlbmRlclRhcmdldFsndGV4dHVyZSddPiB9PjtcblxuXHRAVmlld0NoaWxkKCdhbmNob3InLCB7IHN0YXRpYzogdHJ1ZSwgcmVhZDogVmlld0NvbnRhaW5lclJlZiB9KVxuXHRwcml2YXRlIGFuY2hvciE6IFZpZXdDb250YWluZXJSZWY7XG5cblx0LyoqIFJlc29sdXRpb24gb2YgdGhlIEZCTywgMjU2ICovXG5cdEBJbnB1dCh7IGFsaWFzOiAncmVzb2x1dGlvbicgfSkgc2V0IF9yZXNvbHV0aW9uKHJlc29sdXRpb246IG51bWJlcikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IHJlc29sdXRpb24gfSk7XG5cdH1cblxuXHQvKiogQ2FtZXJhIG5lYXIsIDAuMSAqL1xuXHRASW5wdXQoeyBhbGlhczogJ25lYXInIH0pIHNldCBfbmVhcihuZWFyOiBudW1iZXIpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBuZWFyIH0pO1xuXHR9XG5cblx0LyoqIENhbWVyYSBmYXIsIDEwMDAgKi9cblx0QElucHV0KHsgYWxpYXM6ICdmYXInIH0pIHNldCBfZmFyKGZhcjogbnVtYmVyKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgZmFyIH0pO1xuXHR9XG5cblx0LyoqIEN1c3RvbSBlbnZpcm9ubWVudCBtYXAgdGhhdCBpcyB0ZW1wb3JhcmlseSBzZXQgYXMgdGhlIHNjZW5lcyBiYWNrZ3JvdW5kICovXG5cdEBJbnB1dCh7IGFsaWFzOiAnZW52TWFwJyB9KSBzZXQgX2Vudk1hcChlbnZNYXA6IFRIUkVFLlRleHR1cmUpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBlbnZNYXAgfSk7XG5cdH1cblxuXHQvKiogQ3VzdG9tIGZvZyB0aGF0IGlzIHRlbXBvcmFyaWx5IHNldCBhcyB0aGUgc2NlbmVzIGZvZyAqL1xuXHRASW5wdXQoeyBhbGlhczogJ2ZvZycgfSkgc2V0IF9mb2coZm9nOiBUSFJFRS5Gb2cgfCBUSFJFRS5Gb2dFeHAyKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgZm9nIH0pO1xuXHR9XG5cblx0Y3ViZUNhbWVyYSA9IGluamVjdE5ndHNDdWJlQ2FtZXJhKHRoaXMuaW5wdXRzLnN0YXRlKTtcblx0cHJpdmF0ZSB0ZXh0dXJlID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5jdWJlQ2FtZXJhLmZibygpLnRleHR1cmUpO1xuXHRwcml2YXRlIGNvbnRlbnRSZWY/OiBFbWJlZGRlZFZpZXdSZWY8dW5rbm93bj47XG5cblx0Y29uc3RydWN0b3IoKSB7XG5cdFx0dGhpcy5iZWZvcmVSZW5kZXIoKTtcblx0XHRpbmplY3QoRGVzdHJveVJlZikub25EZXN0cm95KCgpID0+IHtcblx0XHRcdHRoaXMuY29udGVudFJlZj8uZGVzdHJveSgpO1xuXHRcdH0pO1xuXHR9XG5cblx0bmdPbkluaXQoKSB7XG5cdFx0dGhpcy5jb250ZW50UmVmID0gdGhpcy5hbmNob3IuY3JlYXRlRW1iZWRkZWRWaWV3KHRoaXMuY2FtZXJhQ29udGVudCwgeyB0ZXh0dXJlOiB0aGlzLnRleHR1cmUgfSk7XG5cdH1cblxuXHRwcml2YXRlIGJlZm9yZVJlbmRlcigpIHtcblx0XHRsZXQgY291bnQgPSAwO1xuXHRcdGluamVjdEJlZm9yZVJlbmRlcigoKSA9PiB7XG5cdFx0XHRjb25zdCBjYW1lcmEgPSB0aGlzLmNhbWVyYVJlZi5uYXRpdmVFbGVtZW50O1xuXHRcdFx0aWYgKCFjYW1lcmEpIHJldHVybjtcblx0XHRcdGNvbnN0IHVwZGF0ZSA9IHRoaXMuY3ViZUNhbWVyYS51cGRhdGUoKTtcblx0XHRcdGNvbnN0IGZyYW1lcyA9IHRoaXMuaW5wdXRzLmdldCgnZnJhbWVzJyk7XG5cdFx0XHRpZiAoZnJhbWVzID09PSBJbmZpbml0eSB8fCBjb3VudCA8IGZyYW1lcykge1xuXHRcdFx0XHRjYW1lcmEudmlzaWJsZSA9IGZhbHNlO1xuXHRcdFx0XHR1cGRhdGUoKTtcblx0XHRcdFx0Y2FtZXJhLnZpc2libGUgPSB0cnVlO1xuXHRcdFx0XHRjb3VudCsrO1xuXHRcdFx0fVxuXHRcdH0pO1xuXHR9XG59XG4iXX0=
@@ -1,5 +1,5 @@
1
- export * from './lib/camera/camera-content';
2
- export * from './lib/cube-camera/cube-camera';
3
- export * from './lib/orthographic-camera/orthographic-camera';
4
- export * from './lib/perspective-camera/perspective-camera';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtc29iYS9jYW1lcmFzL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYywrQ0FBK0MsQ0FBQztBQUM5RCxjQUFjLDZDQUE2QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvY2FtZXJhL2NhbWVyYS1jb250ZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2N1YmUtY2FtZXJhL2N1YmUtY2FtZXJhJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL29ydGhvZ3JhcGhpYy1jYW1lcmEvb3J0aG9ncmFwaGljLWNhbWVyYSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9wZXJzcGVjdGl2ZS1jYW1lcmEvcGVyc3BlY3RpdmUtY2FtZXJhJztcbiJdfQ==
1
+ export * from './camera/camera-content';
2
+ export * from './cube-camera/cube-camera';
3
+ export * from './orthographic-camera/orthographic-camera';
4
+ export * from './perspective-camera/perspective-camera';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3NvYmEvY2FtZXJhcy9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyx5Q0FBeUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vY2FtZXJhL2NhbWVyYS1jb250ZW50JztcbmV4cG9ydCAqIGZyb20gJy4vY3ViZS1jYW1lcmEvY3ViZS1jYW1lcmEnO1xuZXhwb3J0ICogZnJvbSAnLi9vcnRob2dyYXBoaWMtY2FtZXJhL29ydGhvZ3JhcGhpYy1jYW1lcmEnO1xuZXhwb3J0ICogZnJvbSAnLi9wZXJzcGVjdGl2ZS1jYW1lcmEvcGVyc3BlY3RpdmUtY2FtZXJhJztcbiJdfQ==
@@ -0,0 +1,102 @@
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.2.0", ngImport: i0, type: NgtsOrthographicCamera, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", 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.2.0", 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==
@@ -0,0 +1,46 @@
1
+ import { NgIf, NgTemplateOutlet } from '@angular/common';
2
+ import { CUSTOM_ELEMENTS_SCHEMA, Component, ContentChild } from '@angular/core';
3
+ import { extend } from 'angular-three';
4
+ import { Group, PerspectiveCamera } from 'three';
5
+ import { NgtsCamera } from '../camera/camera';
6
+ import { NgtsCameraContent } from '../camera/camera-content';
7
+ import * as i0 from "@angular/core";
8
+ extend({ PerspectiveCamera, Group });
9
+ export class NgtsPerspectiveCamera extends NgtsCamera {
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: NgtsPerspectiveCamera, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: NgtsPerspectiveCamera, isStandalone: true, selector: "ngts-perspective-camera", queries: [{ propertyName: "cameraContent", first: true, predicate: NgtsCameraContent, descendants: true }], usesInheritance: true, ngImport: i0, template: `
12
+ <ngt-perspective-camera [ref]="cameraRef" ngtCompound>
13
+ <ng-container
14
+ *ngIf="cameraContent && !cameraContent.ngtsCameraContent"
15
+ [ngTemplateOutlet]="cameraContent.template"
16
+ />
17
+ </ngt-perspective-camera>
18
+ <ngt-group #group *ngIf="cameraContent && cameraContent.ngtsCameraContent">
19
+ <ng-container *ngTemplateOutlet="cameraContent.template; context: { fbo: fboRef.nativeElement, group }" />
20
+ </ngt-group>
21
+ `, isInline: true, dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
22
+ }
23
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: NgtsPerspectiveCamera, decorators: [{
24
+ type: Component,
25
+ args: [{
26
+ selector: 'ngts-perspective-camera',
27
+ standalone: true,
28
+ template: `
29
+ <ngt-perspective-camera [ref]="cameraRef" ngtCompound>
30
+ <ng-container
31
+ *ngIf="cameraContent && !cameraContent.ngtsCameraContent"
32
+ [ngTemplateOutlet]="cameraContent.template"
33
+ />
34
+ </ngt-perspective-camera>
35
+ <ngt-group #group *ngIf="cameraContent && cameraContent.ngtsCameraContent">
36
+ <ng-container *ngTemplateOutlet="cameraContent.template; context: { fbo: fboRef.nativeElement, group }" />
37
+ </ngt-group>
38
+ `,
39
+ imports: [NgIf, NgTemplateOutlet],
40
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
41
+ }]
42
+ }], propDecorators: { cameraContent: [{
43
+ type: ContentChild,
44
+ args: [NgtsCameraContent]
45
+ }] } });
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVyc3BlY3RpdmUtY2FtZXJhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zb2JhL2NhbWVyYXMvc3JjL3BlcnNwZWN0aXZlLWNhbWVyYS9wZXJzcGVjdGl2ZS1jYW1lcmEudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxNQUFNLEVBQTZCLE1BQU0sZUFBZSxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDakQsT0FBTyxFQUFFLFVBQVUsRUFBd0IsTUFBTSxrQkFBa0IsQ0FBQztBQUNwRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFFN0QsTUFBTSxDQUFDLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztBQTRCckMsTUFBTSxPQUFPLHFCQUFzQixTQUFRLFVBQTZCOzhHQUEzRCxxQkFBcUI7a0dBQXJCLHFCQUFxQiw4SEFDbkIsaUJBQWlCLHVFQWZyQjs7Ozs7Ozs7OztFQVVULDREQUNTLElBQUksNkZBQUUsZ0JBQWdCOzsyRkFHcEIscUJBQXFCO2tCQWpCakMsU0FBUzttQkFBQztvQkFDVixRQUFRLEVBQUUseUJBQXlCO29CQUNuQyxVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFOzs7Ozs7Ozs7O0VBVVQ7b0JBQ0QsT0FBTyxFQUFFLENBQUMsSUFBSSxFQUFFLGdCQUFnQixDQUFDO29CQUNqQyxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDakM7OEJBRWlDLGFBQWE7c0JBQTdDLFlBQVk7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdJZiwgTmdUZW1wbGF0ZU91dGxldCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBDVVNUT01fRUxFTUVOVFNfU0NIRU1BLCBDb21wb25lbnQsIENvbnRlbnRDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgZXh0ZW5kLCB0eXBlIE5ndFBlcnNwZWN0aXZlQ2FtZXJhIH0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBHcm91cCwgUGVyc3BlY3RpdmVDYW1lcmEgfSBmcm9tICd0aHJlZSc7XG5pbXBvcnQgeyBOZ3RzQ2FtZXJhLCB0eXBlIE5ndHNDYW1lcmFTdGF0ZSB9IGZyb20gJy4uL2NhbWVyYS9jYW1lcmEnO1xuaW1wb3J0IHsgTmd0c0NhbWVyYUNvbnRlbnQgfSBmcm9tICcuLi9jYW1lcmEvY2FtZXJhLWNvbnRlbnQnO1xuXG5leHRlbmQoeyBQZXJzcGVjdGl2ZUNhbWVyYSwgR3JvdXAgfSk7XG5cbmRlY2xhcmUgZ2xvYmFsIHtcblx0aW50ZXJmYWNlIEhUTUxFbGVtZW50VGFnTmFtZU1hcCB7XG5cdFx0LyoqXG5cdFx0ICogQGV4dGVuZHMgbmd0LXBlcnNwZWN0aXZlLWNhbWVyYVxuXHRcdCAqL1xuXHRcdCduZ3RzLXBlcnNwZWN0aXZlLWNhbWVyYSc6IE5ndHNDYW1lcmFTdGF0ZSAmIE5ndFBlcnNwZWN0aXZlQ2FtZXJhO1xuXHR9XG59XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ25ndHMtcGVyc3BlY3RpdmUtY2FtZXJhJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0dGVtcGxhdGU6IGBcblx0XHQ8bmd0LXBlcnNwZWN0aXZlLWNhbWVyYSBbcmVmXT1cImNhbWVyYVJlZlwiIG5ndENvbXBvdW5kPlxuXHRcdFx0PG5nLWNvbnRhaW5lclxuXHRcdFx0XHQqbmdJZj1cImNhbWVyYUNvbnRlbnQgJiYgIWNhbWVyYUNvbnRlbnQubmd0c0NhbWVyYUNvbnRlbnRcIlxuXHRcdFx0XHRbbmdUZW1wbGF0ZU91dGxldF09XCJjYW1lcmFDb250ZW50LnRlbXBsYXRlXCJcblx0XHRcdC8+XG5cdFx0PC9uZ3QtcGVyc3BlY3RpdmUtY2FtZXJhPlxuXHRcdDxuZ3QtZ3JvdXAgI2dyb3VwICpuZ0lmPVwiY2FtZXJhQ29udGVudCAmJiBjYW1lcmFDb250ZW50Lm5ndHNDYW1lcmFDb250ZW50XCI+XG5cdFx0XHQ8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY2FtZXJhQ29udGVudC50ZW1wbGF0ZTsgY29udGV4dDogeyBmYm86IGZib1JlZi5uYXRpdmVFbGVtZW50LCBncm91cCB9XCIgLz5cblx0XHQ8L25ndC1ncm91cD5cblx0YCxcblx0aW1wb3J0czogW05nSWYsIE5nVGVtcGxhdGVPdXRsZXRdLFxuXHRzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG59KVxuZXhwb3J0IGNsYXNzIE5ndHNQZXJzcGVjdGl2ZUNhbWVyYSBleHRlbmRzIE5ndHNDYW1lcmE8UGVyc3BlY3RpdmVDYW1lcmE+IHtcblx0QENvbnRlbnRDaGlsZChOZ3RzQ2FtZXJhQ29udGVudCkgY2FtZXJhQ29udGVudD86IE5ndHNDYW1lcmFDb250ZW50O1xufVxuIl19
@@ -2,4 +2,4 @@
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
4
  export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci10aHJlZS1zb2JhLWNvbnRyb2xzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXRocmVlLXNvYmEvY29udHJvbHMvc3JjL2FuZ3VsYXItdGhyZWUtc29iYS1jb250cm9scy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci10aHJlZS1zb2JhLWNvbnRyb2xzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9zb2JhL2NvbnRyb2xzL3NyYy9hbmd1bGFyLXRocmVlLXNvYmEtY29udHJvbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
@@ -1,2 +1,2 @@
1
- export * from './lib/orbit-controls/orbit-controls';
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtc29iYS9jb250cm9scy9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxxQ0FBcUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL29yYml0LWNvbnRyb2xzL29yYml0LWNvbnRyb2xzJztcbiJdfQ==
1
+ export * from './orbit-controls/orbit-controls';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3NvYmEvY29udHJvbHMvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUNBQWlDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL29yYml0LWNvbnRyb2xzL29yYml0LWNvbnRyb2xzJztcbiJdfQ==
@@ -0,0 +1,181 @@
1
+ import { Component, computed, CUSTOM_ELEMENTS_SCHEMA, effect, EventEmitter, Input, Output } from '@angular/core';
2
+ import { injectBeforeRender, injectNgtRef, injectNgtStore, NgtArgs, signalStore, } from 'angular-three';
3
+ import { OrbitControls } from 'three-stdlib';
4
+ import * as i0 from "@angular/core";
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
+ constructor() {
28
+ this.inputs = signalStore({
29
+ enableDamping: true,
30
+ regress: false,
31
+ makeDefault: false,
32
+ keyEvents: false,
33
+ });
34
+ this.controlsRef = injectNgtRef();
35
+ this.change = new EventEmitter();
36
+ this.start = new EventEmitter();
37
+ this.end = new EventEmitter();
38
+ this.store = injectNgtStore();
39
+ this.invalidate = this.store.select('invalidate');
40
+ this.performanceRegress = this.store.select('performance', 'regress');
41
+ this.defaultCamera = this.store.select('camera');
42
+ this.glDomElement = this.store.select('gl', 'domElement');
43
+ this.regress = this.inputs.select('regress');
44
+ this.camera = this.inputs.select('camera');
45
+ this.domElement = this.inputs.select('domElement');
46
+ this.keyEvents = this.inputs.select('keyEvents');
47
+ this.makeDefault = this.inputs.select('makeDefault');
48
+ this.args = computed(() => [this.controlsRef.nativeElement]);
49
+ this.enableDamping = this.inputs.select('enableDamping');
50
+ injectBeforeRender(() => {
51
+ const controls = this.controlsRef.nativeElement;
52
+ if (controls && controls.enabled) {
53
+ controls.update();
54
+ }
55
+ }, { priority: -1 });
56
+ this.setControls();
57
+ this.connectElement();
58
+ this.makeControlsDefault();
59
+ this.setEvents();
60
+ }
61
+ setControls() {
62
+ effect(() => {
63
+ const [camera, defaultCamera, controls] = [
64
+ this.camera(),
65
+ this.defaultCamera(),
66
+ this.controlsRef.nativeElement,
67
+ ];
68
+ const controlsCamera = camera || defaultCamera;
69
+ if (!controls || controls.object !== controlsCamera) {
70
+ this.controlsRef.nativeElement = new OrbitControls(controlsCamera);
71
+ }
72
+ });
73
+ }
74
+ connectElement() {
75
+ effect((onCleanup) => {
76
+ const [keyEvents, domElement, controls] = [
77
+ this.keyEvents(),
78
+ this.domElement() || this.store.get('events', 'connected') || this.glDomElement(),
79
+ this.controlsRef.nativeElement,
80
+ this.invalidate(),
81
+ this.regress(),
82
+ ];
83
+ if (!controls)
84
+ return;
85
+ if (keyEvents) {
86
+ controls.connect(keyEvents === true ? domElement : keyEvents);
87
+ }
88
+ else {
89
+ controls.connect(domElement);
90
+ }
91
+ onCleanup(() => void controls.dispose());
92
+ });
93
+ }
94
+ makeControlsDefault() {
95
+ effect((onCleanup) => {
96
+ const [controls, makeDefault] = [this.controlsRef.nativeElement, this.makeDefault()];
97
+ if (!controls)
98
+ return;
99
+ if (makeDefault) {
100
+ const oldControls = this.store.get('controls');
101
+ this.store.set({ controls });
102
+ onCleanup(() => void this.store.set({ controls: oldControls }));
103
+ }
104
+ });
105
+ }
106
+ setEvents() {
107
+ effect((onCleanup) => {
108
+ const [controls, invalidate, performanceRegress, regress] = [
109
+ this.controlsRef.nativeElement,
110
+ this.invalidate(),
111
+ this.performanceRegress(),
112
+ this.regress(),
113
+ ];
114
+ if (!controls)
115
+ return;
116
+ const changeCallback = (e) => {
117
+ invalidate();
118
+ if (regress)
119
+ performanceRegress();
120
+ if (this.change.observed)
121
+ this.change.emit(e);
122
+ };
123
+ const startCallback = this.start.observed ? this.start.emit.bind(this.start) : null;
124
+ const endCallback = this.end.observed ? this.end.emit.bind(this.end) : null;
125
+ controls.addEventListener('change', changeCallback);
126
+ if (startCallback)
127
+ controls.addEventListener('start', startCallback);
128
+ if (endCallback)
129
+ controls.addEventListener('end', endCallback);
130
+ onCleanup(() => {
131
+ controls.removeEventListener('change', changeCallback);
132
+ if (startCallback)
133
+ controls.removeEventListener('start', startCallback);
134
+ if (endCallback)
135
+ controls.removeEventListener('end', endCallback);
136
+ });
137
+ });
138
+ }
139
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: NgtsOrbitControls, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
140
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.0", type: NgtsOrbitControls, isStandalone: true, selector: "ngts-orbit-controls", inputs: { controlsRef: "controlsRef", _camera: ["camera", "_camera"], _domElement: ["domElement", "_domElement"], _makeDefault: ["makeDefault", "_makeDefault"], _regress: ["regress", "_regress"], _target: ["target", "_target"], _enableDamping: ["enableDamping", "_enableDamping"], _keyEvents: ["keyEvents", "_keyEvents"] }, outputs: { change: "change", start: "start", end: "end" }, ngImport: i0, template: ` <ngt-primitive *args="args()" ngtCompound [enableDamping]="enableDamping()" /> `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }] }); }
141
+ }
142
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.0", ngImport: i0, type: NgtsOrbitControls, decorators: [{
143
+ type: Component,
144
+ args: [{
145
+ selector: 'ngts-orbit-controls',
146
+ standalone: true,
147
+ template: ` <ngt-primitive *args="args()" ngtCompound [enableDamping]="enableDamping()" /> `,
148
+ imports: [NgtArgs],
149
+ schemas: [CUSTOM_ELEMENTS_SCHEMA],
150
+ }]
151
+ }], ctorParameters: function () { return []; }, propDecorators: { controlsRef: [{
152
+ type: Input
153
+ }], _camera: [{
154
+ type: Input,
155
+ args: [{ alias: 'camera' }]
156
+ }], _domElement: [{
157
+ type: Input,
158
+ args: [{ alias: 'domElement' }]
159
+ }], _makeDefault: [{
160
+ type: Input,
161
+ args: [{ alias: 'makeDefault' }]
162
+ }], _regress: [{
163
+ type: Input,
164
+ args: [{ alias: 'regress' }]
165
+ }], _target: [{
166
+ type: Input,
167
+ args: [{ alias: 'target' }]
168
+ }], _enableDamping: [{
169
+ type: Input,
170
+ args: [{ alias: 'enableDamping' }]
171
+ }], _keyEvents: [{
172
+ type: Input,
173
+ args: [{ alias: 'keyEvents' }]
174
+ }], change: [{
175
+ type: Output
176
+ }], start: [{
177
+ type: Output
178
+ }], end: [{
179
+ type: Output
180
+ }] } });
181
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JiaXQtY29udHJvbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NvYmEvY29udHJvbHMvc3JjL29yYml0LWNvbnRyb2xzL29yYml0LWNvbnRyb2xzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLHNCQUFzQixFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqSCxPQUFPLEVBQ04sa0JBQWtCLEVBQ2xCLFlBQVksRUFDWixjQUFjLEVBQ2QsT0FBTyxFQUNQLFdBQVcsR0FHWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDOztBQTRCN0MsTUFBTSxPQUFPLGlCQUFpQjtJQVU3QixJQUFnQyxPQUFPLENBQUMsTUFBb0I7UUFDM0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFvQyxXQUFXLENBQUMsVUFBdUI7UUFDdEUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxJQUFxQyxZQUFZLENBQUMsV0FBb0I7UUFDckUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxJQUFpQyxRQUFRLENBQUMsT0FBZ0I7UUFDekQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFnQyxPQUFPLENBQUMsTUFBd0Q7UUFDL0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxD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QUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDakM7MEVBU1MsV0FBVztzQkFBbkIsS0FBSztnQkFFMEIsT0FBTztzQkFBdEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7Z0JBSVUsV0FBVztzQkFBOUMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxZQUFZLEVBQUU7Z0JBSU8sWUFBWTtzQkFBaEQsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUU7Z0JBSUUsUUFBUTtzQkFBeEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUU7Z0JBSUssT0FBTztzQkFBdEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7Z0JBSWEsY0FBYztzQkFBcEQsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxlQUFlLEVBQUU7Z0JBSUUsVUFBVTtzQkFBNUMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUU7Z0JBSW5CLE1BQU07c0JBQWYsTUFBTTtnQkFDRyxLQUFLO3NCQUFkLE1BQU07Z0JBQ0csR0FBRztzQkFBWixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBjb21wdXRlZCwgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgZWZmZWN0LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG5cdGluamVjdEJlZm9yZVJlbmRlcixcblx0aW5qZWN0Tmd0UmVmLFxuXHRpbmplY3ROZ3RTdG9yZSxcblx0Tmd0QXJncyxcblx0c2lnbmFsU3RvcmUsXG5cdHR5cGUgTmd0Q2FtZXJhLFxuXHR0eXBlIE5ndFZlY3RvcjMsXG59IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0IHsgT3JiaXRDb250cm9scyB9IGZyb20gJ3RocmVlLXN0ZGxpYic7XG5cbmV4cG9ydCB0eXBlIE5ndHNPcmJpdENvbnRyb2xzU3RhdGUgPSB7XG5cdGNhbWVyYT86IFRIUkVFLkNhbWVyYTtcblx0ZG9tRWxlbWVudD86IEhUTUxFbGVtZW50O1xuXHR0YXJnZXQ/OiBOZ3RWZWN0b3IzO1xuXHRtYWtlRGVmYXVsdDogYm9vbGVhbjtcblx0cmVncmVzczogYm9vbGVhbjtcblx0ZW5hYmxlRGFtcGluZzogYm9vbGVhbjtcblx0a2V5RXZlbnRzOiBib29sZWFuIHwgSFRNTEVsZW1lbnQ7XG59O1xuXG5kZWNsYXJlIGdsb2JhbCB7XG5cdGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuXHRcdC8qKlxuXHRcdCAqIEBleHRlbmRzIHRocmVlLXN0ZGxpYnxPcmJpdENvbnRyb2xzXG5cdFx0ICovXG5cdFx0J25ndHMtb3JiaXQtY29udHJvbHMnOiBPcmJpdENvbnRyb2xzICYgTmd0c09yYml0Q29udHJvbHNTdGF0ZTtcblx0fVxufVxuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZ3RzLW9yYml0LWNvbnRyb2xzJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0dGVtcGxhdGU6IGAgPG5ndC1wcmltaXRpdmUgKmFyZ3M9XCJhcmdzKClcIiBuZ3RDb21wb3VuZCBbZW5hYmxlRGFtcGluZ109XCJlbmFibGVEYW1waW5nKClcIiAvPiBgLFxuXHRpbXBvcnRzOiBbTmd0QXJnc10sXG5cdHNjaGVtYXM6IFtDVVNUT01fRUxFTUVOVFNfU0NIRU1BXSxcbn0pXG5leHBvcnQgY2xhc3MgTmd0c09yYml0Q29udHJvbHMge1xuXHRwcml2YXRlIGlucHV0cyA9IHNpZ25hbFN0b3JlPE5ndHNPcmJpdENvbnRyb2xzU3RhdGU+KHtcblx0XHRlbmFibGVEYW1waW5nOiB0cnVlLFxuXHRcdHJlZ3Jlc3M6IGZhbHNlLFxuXHRcdG1ha2VEZWZhdWx0OiBmYWxzZSxcblx0XHRrZXlFdmVudHM6IGZhbHNlLFxuXHR9KTtcblxuXHRASW5wdXQoKSBjb250cm9sc1JlZiA9IGluamVjdE5ndFJlZjxPcmJpdENvbnRyb2xzPigpO1xuXG5cdEBJbnB1dCh7IGFsaWFzOiAnY2FtZXJhJyB9KSBzZXQgX2NhbWVyYShjYW1lcmE6IFRIUkVFLkNhbWVyYSkge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IGNhbWVyYSB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAnZG9tRWxlbWVudCcgfSkgc2V0IF9kb21FbGVtZW50KGRvbUVsZW1lbnQ6IEhUTUxFbGVtZW50KSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgZG9tRWxlbWVudCB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAnbWFrZURlZmF1bHQnIH0pIHNldCBfbWFrZURlZmF1bHQobWFrZURlZmF1bHQ6IGJvb2xlYW4pIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBtYWtlRGVmYXVsdCB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAncmVncmVzcycgfSkgc2V0IF9yZWdyZXNzKHJlZ3Jlc3M6IGJvb2xlYW4pIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyByZWdyZXNzIH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICd0YXJnZXQnIH0pIHNldCBfdGFyZ2V0KHRhcmdldDogVEhSRUUuVmVjdG9yMyB8IFBhcmFtZXRlcnM8VEhSRUUuVmVjdG9yM1snc2V0J10+KSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgdGFyZ2V0IH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdlbmFibGVEYW1waW5nJyB9KSBzZXQgX2VuYWJsZURhbXBpbmcoZW5hYmxlRGFtcGluZzogYm9vbGVhbikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IGVuYWJsZURhbXBpbmcgfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ2tleUV2ZW50cycgfSkgc2V0IF9rZXlFdmVudHMoa2V5RXZlbnRzOiBib29sZWFuKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsga2V5RXZlbnRzIH0pO1xuXHR9XG5cblx0QE91dHB1dCgpIGNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8VEhSRUUuRXZlbnQ+KCk7XG5cdEBPdXRwdXQoKSBzdGFydCA9IG5ldyBFdmVudEVtaXR0ZXI8VEhSRUUuRXZlbnQ+KCk7XG5cdEBPdXRwdXQoKSBlbmQgPSBuZXcgRXZlbnRFbWl0dGVyPFRIUkVFLkV2ZW50PigpO1xuXG5cdHByaXZhdGUgc3RvcmUgPSBpbmplY3ROZ3RTdG9yZSgpO1xuXHRwcml2YXRlIGludmFsaWRhdGUgPSB0aGlzLnN0b3JlLnNlbGVjdCgnaW52YWxpZGF0ZScpO1xuXHRwcml2YXRlIHBlcmZvcm1hbmNlUmVncmVzcyA9IHRoaXMuc3RvcmUuc2VsZWN0KCdwZXJmb3JtYW5jZScsICdyZWdyZXNzJyk7XG5cdHByaXZhdGUgZGVmYXVsdENhbWVyYSA9IHRoaXMuc3RvcmUuc2VsZWN0KCdjYW1lcmEnKTtcblx0cHJpdmF0ZSBnbERvbUVsZW1lbnQgPSB0aGlzLnN0b3JlLnNlbGVjdCgnZ2wnLCAnZG9tRWxlbWVudCcpO1xuXHRwcml2YXRlIHJlZ3Jlc3MgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ3JlZ3Jlc3MnKTtcblx0cHJpdmF0ZSBjYW1lcmEgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2NhbWVyYScpO1xuXHRwcml2YXRlIGRvbUVsZW1lbnQgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2RvbUVsZW1lbnQnKTtcblx0cHJpdmF0ZSBrZXlFdmVudHMgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2tleUV2ZW50cycpO1xuXHRwcml2YXRlIG1ha2VEZWZhdWx0ID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdtYWtlRGVmYXVsdCcpO1xuXG5cdGFyZ3MgPSBjb21wdXRlZCgoKSA9PiBbdGhpcy5jb250cm9sc1JlZi5uYXRpdmVFbGVtZW50XSk7XG5cdGVuYWJsZURhbXBpbmcgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2VuYWJsZURhbXBpbmcnKTtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRpbmplY3RCZWZvcmVSZW5kZXIoXG5cdFx0XHQoKSA9PiB7XG5cdFx0XHRcdGNvbnN0IGNvbnRyb2xzID0gdGhpcy5jb250cm9sc1JlZi5uYXRpdmVFbGVtZW50O1xuXHRcdFx0XHRpZiAoY29udHJvbHMgJiYgY29udHJvbHMuZW5hYmxlZCkge1xuXHRcdFx0XHRcdGNvbnRyb2xzLnVwZGF0ZSgpO1xuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0eyBwcmlvcml0eTogLTEgfSxcblx0XHQpO1xuXG5cdFx0dGhpcy5zZXRDb250cm9scygpO1xuXHRcdHRoaXMuY29ubmVjdEVsZW1lbnQoKTtcblx0XHR0aGlzLm1ha2VDb250cm9sc0RlZmF1bHQoKTtcblx0XHR0aGlzLnNldEV2ZW50cygpO1xuXHR9XG5cblx0cHJpdmF0ZSBzZXRDb250cm9scygpIHtcblx0XHRlZmZlY3QoKCkgPT4ge1xuXHRcdFx0Y29uc3QgW2NhbWVyYSwgZGVmYXVsdENhbWVyYSwgY29udHJvbHNdID0gW1xuXHRcdFx0XHR0aGlzLmNhbWVyYSgpLFxuXHRcdFx0XHR0aGlzLmRlZmF1bHRDYW1lcmEoKSxcblx0XHRcdFx0dGhpcy5jb250cm9sc1JlZi5uYXRpdmVFbGVtZW50LFxuXHRcdFx0XTtcblx0XHRcdGNvbnN0IGNvbnRyb2xzQ2FtZXJhID0gY2FtZXJhIHx8IGRlZmF1bHRDYW1lcmE7XG5cdFx0XHRpZiAoIWNvbnRyb2xzIHx8IGNvbnRyb2xzLm9iamVjdCAhPT0gY29udHJvbHNDYW1lcmEpIHtcblx0XHRcdFx0dGhpcy5jb250cm9sc1JlZi5uYXRpdmVFbGVtZW50ID0gbmV3IE9yYml0Q29udHJvbHMoY29udHJvbHNDYW1lcmEgYXMgTmd0Q2FtZXJhKTtcblx0XHRcdH1cblx0XHR9KTtcblx0fVxuXG5cdHByaXZhdGUgY29ubmVjdEVsZW1lbnQoKSB7XG5cdFx0ZWZmZWN0KChvbkNsZWFudXApID0+IHtcblx0XHRcdGNvbnN0IFtrZXlFdmVudHMsIGRvbUVsZW1lbnQsIGNvbnRyb2xzXSA9IFtcblx0XHRcdFx0dGhpcy5rZXlFdmVudHMoKSxcblx0XHRcdFx0dGhpcy5kb21FbGVtZW50KCkgfHwgdGhpcy5zdG9yZS5nZXQoJ2V2ZW50cycsICdjb25uZWN0ZWQnKSB8fCB0aGlzLmdsRG9tRWxlbWVudCgpLFxuXHRcdFx0XHR0aGlzLmNvbnRyb2xzUmVmLm5hdGl2ZUVsZW1lbnQsXG5cdFx0XHRcdHRoaXMuaW52YWxpZGF0ZSgpLFxuXHRcdFx0XHR0aGlzLnJlZ3Jlc3MoKSxcblx0XHRcdF07XG5cdFx0XHRpZiAoIWNvbnRyb2xzKSByZXR1cm47XG5cdFx0XHRpZiAoa2V5RXZlbnRzKSB7XG5cdFx0XHRcdGNvbnRyb2xzLmNvbm5lY3Qoa2V5RXZlbnRzID09PSB0cnVlID8gZG9tRWxlbWVudCA6IGtleUV2ZW50cyk7XG5cdFx0XHR9IGVsc2Uge1xuXHRcdFx0XHRjb250cm9scy5jb25uZWN0KGRvbUVsZW1lbnQpO1xuXHRcdFx0fVxuXHRcdFx0b25DbGVhbnVwKCgpID0+IHZvaWQgY29udHJvbHMuZGlzcG9zZSgpKTtcblx0XHR9KTtcblx0fVxuXG5cdHByaXZhdGUgbWFrZUNvbnRyb2xzRGVmYXVsdCgpIHtcblx0XHRlZmZlY3QoKG9uQ2xlYW51cCkgPT4ge1xuXHRcdFx0Y29uc3QgW2NvbnRyb2xzLCBtYWtlRGVmYXVsdF0gPSBbdGhpcy5jb250cm9sc1JlZi5uYXRpdmVFbGVtZW50LCB0aGlzLm1ha2VEZWZhdWx0KCldO1xuXHRcdFx0aWYgKCFjb250cm9scykgcmV0dXJuO1xuXHRcdFx0aWYgKG1ha2VEZWZhdWx0KSB7XG5cdFx0XHRcdGNvbnN0IG9sZENvbnRyb2xzID0gdGhpcy5zdG9yZS5nZXQoJ2NvbnRyb2xzJyk7XG5cdFx0XHRcdHRoaXMuc3RvcmUuc2V0KHsgY29udHJvbHMgfSk7XG5cdFx0XHRcdG9uQ2xlYW51cCgoKSA9PiB2b2lkIHRoaXMuc3RvcmUuc2V0KHsgY29udHJvbHM6IG9sZENvbnRyb2xzIH0pKTtcblx0XHRcdH1cblx0XHR9KTtcblx0fVxuXG5cdHByaXZhdGUgc2V0RXZlbnRzKCkge1xuXHRcdGVmZmVjdCgob25DbGVhbnVwKSA9PiB7XG5cdFx0XHRjb25zdCBbY29udHJvbHMsIGludmFsaWRhdGUsIHBlcmZvcm1hbmNlUmVncmVzcywgcmVncmVzc10gPSBbXG5cdFx0XHRcdHRoaXMuY29udHJvbHNSZWYubmF0aXZlRWxlbWVudCxcblx0XHRcdFx0dGhpcy5pbnZhbGlkYXRlKCksXG5cdFx0XHRcdHRoaXMucGVyZm9ybWFuY2VSZWdyZXNzKCksXG5cdFx0XHRcdHRoaXMucmVncmVzcygpLFxuXHRcdFx0XTtcblx0XHRcdGlmICghY29udHJvbHMpIHJldHVybjtcblx0XHRcdGNvbnN0IGNoYW5nZUNhbGxiYWNrOiAoZTogVEhSRUUuRXZlbnQpID0+IHZvaWQgPSAoZSkgPT4ge1xuXHRcdFx0XHRpbnZhbGlkYXRlKCk7XG5cdFx0XHRcdGlmIChyZWdyZXNzKSBwZXJmb3JtYW5jZVJlZ3Jlc3MoKTtcblx0XHRcdFx0aWYgKHRoaXMuY2hhbmdlLm9ic2VydmVkKSB0aGlzLmNoYW5nZS5lbWl0KGUpO1xuXHRcdFx0fTtcblxuXHRcdFx0Y29uc3Qgc3RhcnRDYWxsYmFjayA9IHRoaXMuc3RhcnQub2JzZXJ2ZWQgPyB0aGlzLnN0YXJ0LmVtaXQuYmluZCh0aGlzLnN0YXJ0KSA6IG51bGw7XG5cdFx0XHRjb25zdCBlbmRDYWxsYmFjayA9IHRoaXMuZW5kLm9ic2VydmVkID8gdGhpcy5lbmQuZW1pdC5iaW5kKHRoaXMuZW5kKSA6IG51bGw7XG5cblx0XHRcdGNvbnRyb2xzLmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIGNoYW5nZUNhbGxiYWNrKTtcblx0XHRcdGlmIChzdGFydENhbGxiYWNrKSBjb250cm9scy5hZGRFdmVudExpc3RlbmVyKCdzdGFydCcsIHN0YXJ0Q2FsbGJhY2spO1xuXHRcdFx0aWYgKGVuZENhbGxiYWNrKSBjb250cm9scy5hZGRFdmVudExpc3RlbmVyKCdlbmQnLCBlbmRDYWxsYmFjayk7XG5cblx0XHRcdG9uQ2xlYW51cCgoKSA9PiB7XG5cdFx0XHRcdGNvbnRyb2xzLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIGNoYW5nZUNhbGxiYWNrKTtcblx0XHRcdFx0aWYgKHN0YXJ0Q2FsbGJhY2spIGNvbnRyb2xzLnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3N0YXJ0Jywgc3RhcnRDYWxsYmFjayk7XG5cdFx0XHRcdGlmIChlbmRDYWxsYmFjaykgY29udHJvbHMucmVtb3ZlRXZlbnRMaXN0ZW5lcignZW5kJywgZW5kQ2FsbGJhY2spO1xuXHRcdFx0fSk7XG5cdFx0fSk7XG5cdH1cbn1cbiJdfQ==
package/esm2022/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
1
  export default void 0;
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtc29iYS9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsZUFBZSxLQUFLLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBkZWZhdWx0IHZvaWQgMDtcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9saWJzL3NvYmEvc3JjL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGVBQWUsS0FBSyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCB2b2lkIDA7XG4iXX0=
@@ -2,4 +2,4 @@
2
2
  * Generated bundle index. Do not edit.
3
3
  */
4
4
  export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci10aHJlZS1zb2JhLWxvYWRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2FuZ3VsYXItdGhyZWUtc29iYS9sb2FkZXJzL3NyYy9hbmd1bGFyLXRocmVlLXNvYmEtbG9hZGVycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ==
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYW5ndWxhci10aHJlZS1zb2JhLWxvYWRlcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL3NvYmEvbG9hZGVycy9zcmMvYW5ndWxhci10aHJlZS1zb2JhLWxvYWRlcnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=