angular-three-soba 2.0.0-beta.26 → 2.0.0-beta.261

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 (397) hide show
  1. package/README.md +62 -4
  2. package/abstractions/README.md +278 -2
  3. package/abstractions/index.d.ts +11 -6
  4. package/abstractions/lib/catmull-rom-line.d.ts +648 -0
  5. package/abstractions/lib/cubic-bezier-line.d.ts +19 -0
  6. package/abstractions/lib/edges.d.ts +850 -0
  7. package/abstractions/lib/gradient-texture.d.ts +24 -0
  8. package/abstractions/lib/grid.d.ts +339 -0
  9. package/abstractions/lib/helper.d.ts +25 -0
  10. package/abstractions/lib/line.d.ts +41 -0
  11. package/abstractions/lib/prism-geometry.d.ts +30 -0
  12. package/abstractions/lib/quadratic-bezier-line.d.ts +21 -0
  13. package/abstractions/lib/text-3d.d.ts +338 -0
  14. package/abstractions/lib/text.d.ts +55 -0
  15. package/cameras/README.md +91 -2
  16. package/cameras/index.d.ts +4 -4
  17. package/cameras/lib/camera-content.d.ts +10 -0
  18. package/cameras/lib/cube-camera.d.ts +38 -0
  19. package/cameras/lib/orthographic-camera.d.ts +40 -0
  20. package/cameras/lib/perspective-camera.d.ts +36 -0
  21. package/controls/README.md +95 -2
  22. package/controls/index.d.ts +2 -1
  23. package/controls/lib/camera-controls.d.ts +31 -0
  24. package/controls/lib/orbit-controls.d.ts +38 -0
  25. package/esm2022/abstractions/index.mjs +12 -7
  26. package/esm2022/abstractions/lib/catmull-rom-line.mjs +76 -0
  27. package/esm2022/abstractions/lib/cubic-bezier-line.mjs +51 -0
  28. package/esm2022/abstractions/lib/edges.mjs +70 -0
  29. package/esm2022/abstractions/lib/gradient-texture.mjs +91 -0
  30. package/esm2022/abstractions/lib/grid.mjs +103 -0
  31. package/esm2022/abstractions/lib/helper.mjs +80 -0
  32. package/esm2022/abstractions/lib/line.mjs +123 -0
  33. package/esm2022/abstractions/lib/prism-geometry.mjs +55 -0
  34. package/esm2022/abstractions/lib/quadratic-bezier-line.mjs +73 -0
  35. package/esm2022/abstractions/lib/text-3d.mjs +98 -0
  36. package/esm2022/abstractions/lib/text.mjs +92 -0
  37. package/esm2022/cameras/index.mjs +5 -5
  38. package/esm2022/cameras/lib/camera-content.mjs +14 -0
  39. package/esm2022/cameras/lib/cube-camera.mjs +111 -0
  40. package/esm2022/cameras/lib/orthographic-camera.mjs +131 -0
  41. package/esm2022/cameras/lib/perspective-camera.mjs +104 -0
  42. package/esm2022/controls/index.mjs +3 -2
  43. package/esm2022/controls/lib/camera-controls.mjs +127 -0
  44. package/esm2022/controls/lib/orbit-controls.mjs +126 -0
  45. package/esm2022/loaders/index.mjs +6 -5
  46. package/esm2022/loaders/lib/font-loader.mjs +49 -0
  47. package/esm2022/loaders/lib/gltf-loader.mjs +33 -0
  48. package/esm2022/loaders/lib/loader.mjs +109 -0
  49. package/esm2022/loaders/lib/progress.mjs +51 -0
  50. package/esm2022/loaders/lib/texture-loader.mjs +32 -0
  51. package/esm2022/materials/index.mjs +7 -7
  52. package/esm2022/materials/lib/custom-shader-material.mjs +71 -0
  53. package/esm2022/materials/lib/mesh-distort-material.mjs +42 -0
  54. package/esm2022/materials/lib/mesh-reflector-material.mjs +278 -0
  55. package/esm2022/materials/lib/mesh-refraction-material.mjs +144 -0
  56. package/esm2022/materials/lib/mesh-transmission-material.mjs +188 -0
  57. package/esm2022/materials/lib/mesh-wobble-material.mjs +42 -0
  58. package/esm2022/misc/index.mjs +10 -14
  59. package/esm2022/misc/lib/animations.mjs +74 -0
  60. package/esm2022/misc/lib/bake-shadows.mjs +26 -0
  61. package/esm2022/misc/lib/computed-attribute.mjs +56 -0
  62. package/esm2022/misc/lib/constants.mjs +5 -0
  63. package/esm2022/misc/lib/decal.mjs +135 -0
  64. package/esm2022/misc/lib/deprecated.mjs +15 -0
  65. package/esm2022/misc/lib/depth-buffer.mjs +39 -0
  66. package/esm2022/misc/lib/fbo.mjs +89 -0
  67. package/esm2022/misc/lib/sampler.mjs +121 -0
  68. package/esm2022/shaders/index.mjs +3 -18
  69. package/esm2022/shaders/lib/grid-material.mjs +81 -0
  70. package/esm2022/shaders/lib/mesh-refraction-material.mjs +163 -0
  71. package/esm2022/staging/index.mjs +19 -22
  72. package/esm2022/staging/lib/accumulative-shadows.mjs +182 -0
  73. package/esm2022/staging/lib/backdrop.mjs +73 -0
  74. package/esm2022/staging/lib/bb-anchor.mjs +58 -0
  75. package/esm2022/staging/lib/bounds.mjs +286 -0
  76. package/esm2022/staging/lib/camera-shake.mjs +69 -0
  77. package/esm2022/staging/lib/caustics.mjs +188 -0
  78. package/esm2022/staging/lib/center.mjs +113 -0
  79. package/esm2022/staging/lib/contact-shadows.mjs +201 -0
  80. package/esm2022/staging/lib/environment.mjs +465 -0
  81. package/esm2022/staging/lib/float.mjs +60 -0
  82. package/esm2022/staging/lib/lightformer.mjs +107 -0
  83. package/esm2022/staging/lib/matcap-texture.mjs +81 -0
  84. package/esm2022/staging/lib/normal-texture.mjs +85 -0
  85. package/esm2022/staging/lib/randomized-lights.mjs +104 -0
  86. package/esm2022/staging/lib/render-texture.mjs +213 -0
  87. package/esm2022/staging/lib/sky.mjs +86 -0
  88. package/esm2022/staging/lib/spot-light.mjs +450 -0
  89. package/esm2022/staging/lib/stage.mjs +236 -0
  90. package/esm2022/vanilla-exports/angular-three-soba-vanilla-exports.mjs +5 -0
  91. package/esm2022/vanilla-exports/index.mjs +3 -0
  92. package/fesm2022/angular-three-soba-abstractions.mjs +739 -718
  93. package/fesm2022/angular-three-soba-abstractions.mjs.map +1 -1
  94. package/fesm2022/angular-three-soba-cameras.mjs +260 -307
  95. package/fesm2022/angular-three-soba-cameras.mjs.map +1 -1
  96. package/fesm2022/angular-three-soba-controls.mjs +174 -110
  97. package/fesm2022/angular-three-soba-controls.mjs.map +1 -1
  98. package/fesm2022/angular-three-soba-loaders.mjs +151 -129
  99. package/fesm2022/angular-three-soba-loaders.mjs.map +1 -1
  100. package/fesm2022/angular-three-soba-materials.mjs +511 -764
  101. package/fesm2022/angular-three-soba-materials.mjs.map +1 -1
  102. package/fesm2022/angular-three-soba-misc.mjs +405 -2149
  103. package/fesm2022/angular-three-soba-misc.mjs.map +1 -1
  104. package/fesm2022/angular-three-soba-shaders.mjs +33 -1373
  105. package/fesm2022/angular-three-soba-shaders.mjs.map +1 -1
  106. package/fesm2022/angular-three-soba-staging.mjs +2329 -3538
  107. package/fesm2022/angular-three-soba-staging.mjs.map +1 -1
  108. package/fesm2022/angular-three-soba-vanilla-exports.mjs +6 -0
  109. package/fesm2022/angular-three-soba-vanilla-exports.mjs.map +1 -0
  110. package/loaders/README.md +130 -2
  111. package/loaders/index.d.ts +5 -4
  112. package/loaders/lib/font-loader.d.ts +27 -0
  113. package/loaders/lib/gltf-loader.d.ts +21 -0
  114. package/loaders/lib/loader.d.ts +29 -0
  115. package/loaders/lib/progress.d.ts +9 -0
  116. package/loaders/lib/texture-loader.d.ts +13 -0
  117. package/materials/README.md +160 -2
  118. package/materials/index.d.ts +6 -6
  119. package/materials/lib/custom-shader-material.d.ts +19 -0
  120. package/materials/lib/mesh-distort-material.d.ts +18 -0
  121. package/materials/lib/mesh-reflector-material.d.ts +50 -0
  122. package/materials/lib/mesh-refraction-material.d.ts +42 -0
  123. package/materials/lib/mesh-transmission-material.d.ts +77 -0
  124. package/materials/lib/mesh-wobble-material.d.ts +15 -0
  125. package/metadata.json +1 -1
  126. package/misc/README.md +217 -2
  127. package/misc/index.d.ts +9 -13
  128. package/misc/lib/animations.d.ts +14 -0
  129. package/misc/lib/computed-attribute.d.ts +69 -0
  130. package/misc/lib/constants.d.ts +1 -0
  131. package/misc/lib/decal.d.ts +27 -0
  132. package/misc/lib/deprecated.d.ts +14 -0
  133. package/misc/lib/depth-buffer.d.ts +8 -0
  134. package/misc/lib/fbo.d.ts +47 -0
  135. package/misc/lib/sampler.d.ts +73 -0
  136. package/package.json +60 -38
  137. package/shaders/index.d.ts +2 -17
  138. package/shaders/lib/grid-material.d.ts +69 -0
  139. package/shaders/lib/mesh-refraction-material.d.ts +11 -0
  140. package/staging/README.md +472 -2
  141. package/staging/index.d.ts +18 -21
  142. package/staging/lib/accumulative-shadows.d.ts +75 -0
  143. package/staging/lib/backdrop.d.ts +22 -0
  144. package/staging/lib/bb-anchor.d.ts +17 -0
  145. package/staging/lib/bounds.d.ts +47 -0
  146. package/staging/lib/camera-shake.d.ts +29 -0
  147. package/staging/lib/caustics.d.ts +53 -0
  148. package/staging/lib/center.d.ts +422 -0
  149. package/staging/lib/contact-shadows.d.ts +45 -0
  150. package/staging/lib/environment.d.ts +159 -0
  151. package/staging/lib/float.d.ts +19 -0
  152. package/staging/lib/lightformer.d.ts +334 -0
  153. package/staging/lib/matcap-texture.d.ts +32 -0
  154. package/staging/lib/normal-texture.d.ts +37 -0
  155. package/staging/lib/randomized-lights.d.ts +54 -0
  156. package/staging/lib/render-texture.d.ts +64 -0
  157. package/staging/lib/sky.d.ts +32 -0
  158. package/staging/lib/spot-light.d.ts +120 -0
  159. package/staging/lib/stage.d.ts +376 -0
  160. package/vanilla-exports/README.md +3 -0
  161. package/vanilla-exports/index.d.ts +27 -0
  162. package/web-types.json +1 -1
  163. package/abstractions/billboard/billboard.d.ts +0 -28
  164. package/abstractions/detailed/detailed.d.ts +0 -26
  165. package/abstractions/edges/edges.d.ts +0 -34
  166. package/abstractions/grid/grid.d.ts +0 -50
  167. package/abstractions/text/text.d.ts +0 -82
  168. package/abstractions/text-3d/text-3d.d.ts +0 -84
  169. package/assets/distort.vert.glsl +0 -1
  170. package/cameras/camera/camera-content.d.ts +0 -13
  171. package/cameras/camera/camera.d.ts +0 -26
  172. package/cameras/cube-camera/cube-camera.d.ts +0 -69
  173. package/cameras/orthographic-camera/orthographic-camera.d.ts +0 -37
  174. package/cameras/perspective-camera/perspective-camera.d.ts +0 -18
  175. package/controls/orbit-controls/orbit-controls.d.ts +0 -54
  176. package/esm2022/abstractions/billboard/billboard.mjs +0 -74
  177. package/esm2022/abstractions/detailed/detailed.mjs +0 -64
  178. package/esm2022/abstractions/edges/edges.mjs +0 -88
  179. package/esm2022/abstractions/grid/grid.mjs +0 -180
  180. package/esm2022/abstractions/text/text.mjs +0 -274
  181. package/esm2022/abstractions/text-3d/text-3d.mjs +0 -172
  182. package/esm2022/cameras/camera/camera-content.mjs +0 -21
  183. package/esm2022/cameras/camera/camera.mjs +0 -77
  184. package/esm2022/cameras/cube-camera/cube-camera.mjs +0 -161
  185. package/esm2022/cameras/orthographic-camera/orthographic-camera.mjs +0 -102
  186. package/esm2022/cameras/perspective-camera/perspective-camera.mjs +0 -46
  187. package/esm2022/controls/orbit-controls/orbit-controls.mjs +0 -185
  188. package/esm2022/gizmos/angular-three-soba-gizmos.mjs +0 -5
  189. package/esm2022/gizmos/gizmo-helper/gizmo-helper.mjs +0 -197
  190. package/esm2022/gizmos/gizmo-helper/gizmo-viewcube/constants.mjs +0 -31
  191. package/esm2022/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube-edge.mjs +0 -93
  192. package/esm2022/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube-face.mjs +0 -150
  193. package/esm2022/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube-input.mjs +0 -66
  194. package/esm2022/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube.mjs +0 -71
  195. package/esm2022/gizmos/gizmo-helper/gizmo-viewport/gizmo-viewport-axis.mjs +0 -195
  196. package/esm2022/gizmos/gizmo-helper/gizmo-viewport/gizmo-viewport.mjs +0 -272
  197. package/esm2022/gizmos/index.mjs +0 -4
  198. package/esm2022/loaders/gltf-loader/gltf-loader.mjs +0 -30
  199. package/esm2022/loaders/loader/loader.mjs +0 -138
  200. package/esm2022/loaders/progress/progress.mjs +0 -52
  201. package/esm2022/loaders/texture-loader/texture-loader.mjs +0 -28
  202. package/esm2022/materials/mesh-distort-material/mesh-distort-material.mjs +0 -82
  203. package/esm2022/materials/mesh-reflector-material/mesh-reflector-material.mjs +0 -367
  204. package/esm2022/materials/mesh-refraction-material/mesh-refraction-material.mjs +0 -171
  205. package/esm2022/materials/mesh-transmission-material/mesh-transmission-material.mjs +0 -278
  206. package/esm2022/materials/mesh-wobble-material/mesh-wobble-material.mjs +0 -68
  207. package/esm2022/materials/point-material/point-material.mjs +0 -50
  208. package/esm2022/misc/animations/animations.mjs +0 -59
  209. package/esm2022/misc/bake-shadows/bake-shadows.mjs +0 -24
  210. package/esm2022/misc/caustics/caustics.mjs +0 -387
  211. package/esm2022/misc/decal/decal.mjs +0 -187
  212. package/esm2022/misc/depth-buffer/depth-buffer.mjs +0 -44
  213. package/esm2022/misc/example/example.mjs +0 -160
  214. package/esm2022/misc/fbo/fbo.mjs +0 -47
  215. package/esm2022/misc/html/html-wrapper.mjs +0 -478
  216. package/esm2022/misc/html/html.mjs +0 -304
  217. package/esm2022/misc/sampler/sampler.mjs +0 -142
  218. package/esm2022/misc/shadow/shadow.mjs +0 -111
  219. package/esm2022/misc/stats-gl/stats-gl.mjs +0 -61
  220. package/esm2022/misc/trail/trail.mjs +0 -209
  221. package/esm2022/misc/trail-texture/inject-trail-texture.mjs +0 -17
  222. package/esm2022/misc/trail-texture/trail-texture.mjs +0 -106
  223. package/esm2022/modifiers/angular-three-soba-modifiers.mjs +0 -5
  224. package/esm2022/modifiers/curve-modifier/curve-modifier.mjs +0 -64
  225. package/esm2022/modifiers/index.mjs +0 -2
  226. package/esm2022/performances/adaptive-dpr/adaptive-dpr.mjs +0 -44
  227. package/esm2022/performances/adaptive-events/adaptive-events.mjs +0 -27
  228. package/esm2022/performances/angular-three-soba-performances.mjs +0 -5
  229. package/esm2022/performances/index.mjs +0 -8
  230. package/esm2022/performances/instances/instances.mjs +0 -220
  231. package/esm2022/performances/instances/position-mesh.mjs +0 -52
  232. package/esm2022/performances/points/points-input.mjs +0 -64
  233. package/esm2022/performances/points/points.mjs +0 -326
  234. package/esm2022/performances/points/position-point.mjs +0 -54
  235. package/esm2022/performances/segments/segment-object.mjs +0 -9
  236. package/esm2022/performances/segments/segments.mjs +0 -182
  237. package/esm2022/shaders/blur-pass/blur-pass.mjs +0 -61
  238. package/esm2022/shaders/caustics/caustics-material.mjs +0 -130
  239. package/esm2022/shaders/caustics/caustics-projection-material.mjs +0 -31
  240. package/esm2022/shaders/convolution-material/convolution-material.mjs +0 -94
  241. package/esm2022/shaders/discard-material/discard-material.mjs +0 -3
  242. package/esm2022/shaders/grid-material/grid-material.mjs +0 -77
  243. package/esm2022/shaders/mesh-distort-material/mesh-distort-material.mjs +0 -56
  244. package/esm2022/shaders/mesh-reflector-material/mesh-reflector-material.mjs +0 -223
  245. package/esm2022/shaders/mesh-refraction-material/mesh-refraction-material.mjs +0 -170
  246. package/esm2022/shaders/mesh-transmission-material/mesh-transmission-material.mjs +0 -268
  247. package/esm2022/shaders/mesh-wobble-material/mesh-wobble-material.mjs +0 -37
  248. package/esm2022/shaders/shader-material/shader-material.mjs +0 -34
  249. package/esm2022/shaders/soft-shadow-material/soft-shadow-material.mjs +0 -25
  250. package/esm2022/shaders/sparkles-material/sparkles-material.mjs +0 -33
  251. package/esm2022/shaders/spot-light-material/spot-light-material.mjs +0 -86
  252. package/esm2022/shaders/star-field-material/star-field-material.mjs +0 -33
  253. package/esm2022/shaders/wireframe-material/wireframe-material.mjs +0 -247
  254. package/esm2022/staging/accumulative-shadows/accumulative-shadows.mjs +0 -267
  255. package/esm2022/staging/accumulative-shadows/progressive-light-map.mjs +0 -108
  256. package/esm2022/staging/accumulative-shadows/randomized-lights.mjs +0 -206
  257. package/esm2022/staging/backdrop/backdrop.mjs +0 -77
  258. package/esm2022/staging/bb-anchor/bb-anchor.mjs +0 -69
  259. package/esm2022/staging/bounds/bounds.mjs +0 -308
  260. package/esm2022/staging/camera-shake/camera-shake.mjs +0 -123
  261. package/esm2022/staging/center/center.mjs +0 -165
  262. package/esm2022/staging/cloud/cloud.mjs +0 -158
  263. package/esm2022/staging/contact-shadows/contact-shadows.mjs +0 -246
  264. package/esm2022/staging/environment/assets.mjs +0 -13
  265. package/esm2022/staging/environment/environment-cube.mjs +0 -47
  266. package/esm2022/staging/environment/environment-ground.mjs +0 -41
  267. package/esm2022/staging/environment/environment-input.mjs +0 -119
  268. package/esm2022/staging/environment/environment-map.mjs +0 -53
  269. package/esm2022/staging/environment/environment-portal.mjs +0 -113
  270. package/esm2022/staging/environment/environment.mjs +0 -61
  271. package/esm2022/staging/environment/utils.mjs +0 -106
  272. package/esm2022/staging/float/float.mjs +0 -94
  273. package/esm2022/staging/matcap-texture/matcap-texture.mjs +0 -64
  274. package/esm2022/staging/normal-texture/normal-texture.mjs +0 -53
  275. package/esm2022/staging/sky/sky.mjs +0 -119
  276. package/esm2022/staging/sparkles/sparkles.mjs +0 -164
  277. package/esm2022/staging/spot-light/shadow-mesh-input.mjs +0 -63
  278. package/esm2022/staging/spot-light/shadow-mesh.mjs +0 -266
  279. package/esm2022/staging/spot-light/spot-light-input.mjs +0 -84
  280. package/esm2022/staging/spot-light/spot-light.mjs +0 -81
  281. package/esm2022/staging/spot-light/volumetric-mesh.mjs +0 -98
  282. package/esm2022/staging/stage/stage.mjs +0 -389
  283. package/esm2022/staging/stars/stars.mjs +0 -147
  284. package/esm2022/staging/wireframe/wireframe-input.mjs +0 -191
  285. package/esm2022/staging/wireframe/wireframe.mjs +0 -228
  286. package/esm2022/utils/angular-three-soba-utils.mjs +0 -5
  287. package/esm2022/utils/content/content.mjs +0 -15
  288. package/esm2022/utils/index.mjs +0 -2
  289. package/fesm2022/angular-three-soba-gizmos.mjs +0 -1043
  290. package/fesm2022/angular-three-soba-gizmos.mjs.map +0 -1
  291. package/fesm2022/angular-three-soba-modifiers.mjs +0 -71
  292. package/fesm2022/angular-three-soba-modifiers.mjs.map +0 -1
  293. package/fesm2022/angular-three-soba-performances.mjs +0 -956
  294. package/fesm2022/angular-three-soba-performances.mjs.map +0 -1
  295. package/fesm2022/angular-three-soba-utils.mjs +0 -22
  296. package/fesm2022/angular-three-soba-utils.mjs.map +0 -1
  297. package/gizmos/README.md +0 -3
  298. package/gizmos/gizmo-helper/gizmo-helper.d.ts +0 -69
  299. package/gizmos/gizmo-helper/gizmo-viewcube/constants.d.ts +0 -12
  300. package/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube-edge.d.ts +0 -22
  301. package/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube-face.d.ts +0 -29
  302. package/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube-input.d.ts +0 -33
  303. package/gizmos/gizmo-helper/gizmo-viewcube/gizmo-viewcube.d.ts +0 -10
  304. package/gizmos/gizmo-helper/gizmo-viewport/gizmo-viewport-axis.d.ts +0 -40
  305. package/gizmos/gizmo-helper/gizmo-viewport/gizmo-viewport.d.ts +0 -30
  306. package/gizmos/index.d.ts +0 -3
  307. package/loaders/gltf-loader/gltf-loader.d.ts +0 -10
  308. package/loaders/loader/loader.d.ts +0 -33
  309. package/loaders/progress/progress.d.ts +0 -9
  310. package/loaders/texture-loader/texture-loader.d.ts +0 -7
  311. package/materials/mesh-distort-material/mesh-distort-material.d.ts +0 -40
  312. package/materials/mesh-reflector-material/mesh-reflector-material.d.ts +0 -99
  313. package/materials/mesh-refraction-material/mesh-refraction-material.d.ts +0 -62
  314. package/materials/mesh-transmission-material/mesh-transmission-material.d.ts +0 -107
  315. package/materials/mesh-wobble-material/mesh-wobble-material.d.ts +0 -29
  316. package/materials/point-material/point-material.d.ts +0 -24
  317. package/misc/animations/animations.d.ts +0 -15
  318. package/misc/caustics/caustics.d.ts +0 -87
  319. package/misc/decal/decal.d.ts +0 -49
  320. package/misc/depth-buffer/depth-buffer.d.ts +0 -9
  321. package/misc/example/example.d.ts +0 -81
  322. package/misc/fbo/fbo.d.ts +0 -17
  323. package/misc/html/html-wrapper.d.ts +0 -559
  324. package/misc/html/html.d.ts +0 -214
  325. package/misc/sampler/sampler.d.ts +0 -67
  326. package/misc/shadow/shadow.d.ts +0 -37
  327. package/misc/stats-gl/stats-gl.d.ts +0 -24
  328. package/misc/trail/trail.d.ts +0 -57
  329. package/misc/trail-texture/inject-trail-texture.d.ts +0 -9
  330. package/misc/trail-texture/trail-texture.d.ts +0 -50
  331. package/modifiers/README.md +0 -3
  332. package/modifiers/curve-modifier/curve-modifier.d.ts +0 -23
  333. package/modifiers/index.d.ts +0 -1
  334. package/performances/README.md +0 -3
  335. package/performances/adaptive-dpr/adaptive-dpr.d.ts +0 -14
  336. package/performances/adaptive-events/adaptive-events.d.ts +0 -9
  337. package/performances/index.d.ts +0 -7
  338. package/performances/instances/instances.d.ts +0 -79
  339. package/performances/instances/position-mesh.d.ts +0 -10
  340. package/performances/points/points-input.d.ts +0 -32
  341. package/performances/points/points.d.ts +0 -92
  342. package/performances/points/position-point.d.ts +0 -11
  343. package/performances/segments/segment-object.d.ts +0 -7
  344. package/performances/segments/segments.d.ts +0 -124
  345. package/shaders/blur-pass/blur-pass.d.ts +0 -23
  346. package/shaders/caustics/caustics-material.d.ts +0 -4
  347. package/shaders/caustics/caustics-projection-material.d.ts +0 -4
  348. package/shaders/convolution-material/convolution-material.d.ts +0 -7
  349. package/shaders/discard-material/discard-material.d.ts +0 -3
  350. package/shaders/grid-material/grid-material.d.ts +0 -37
  351. package/shaders/mesh-distort-material/mesh-distort-material.d.ts +0 -295
  352. package/shaders/mesh-reflector-material/mesh-reflector-material.d.ts +0 -50
  353. package/shaders/mesh-refraction-material/mesh-refraction-material.d.ts +0 -4
  354. package/shaders/mesh-transmission-material/mesh-transmission-material.d.ts +0 -25
  355. package/shaders/mesh-wobble-material/mesh-wobble-material.d.ts +0 -16
  356. package/shaders/shader-material/shader-material.d.ts +0 -6
  357. package/shaders/soft-shadow-material/soft-shadow-material.d.ts +0 -19
  358. package/shaders/sparkles-material/sparkles-material.d.ts +0 -17
  359. package/shaders/spot-light-material/spot-light-material.d.ts +0 -13
  360. package/shaders/star-field-material/star-field-material.d.ts +0 -13
  361. package/shaders/wireframe-material/wireframe-material.d.ts +0 -58
  362. package/staging/accumulative-shadows/accumulative-shadows.d.ts +0 -146
  363. package/staging/accumulative-shadows/progressive-light-map.d.ts +0 -34
  364. package/staging/accumulative-shadows/randomized-lights.d.ts +0 -90
  365. package/staging/backdrop/backdrop.d.ts +0 -30
  366. package/staging/bb-anchor/bb-anchor.d.ts +0 -27
  367. package/staging/bounds/bounds.d.ts +0 -134
  368. package/staging/camera-shake/camera-shake.d.ts +0 -43
  369. package/staging/center/center.d.ts +0 -70
  370. package/staging/cloud/cloud.d.ts +0 -51
  371. package/staging/contact-shadows/contact-shadows.d.ts +0 -70
  372. package/staging/environment/assets.d.ts +0 -13
  373. package/staging/environment/environment-cube.d.ts +0 -15
  374. package/staging/environment/environment-ground.d.ts +0 -13
  375. package/staging/environment/environment-input.d.ts +0 -68
  376. package/staging/environment/environment-map.d.ts +0 -16
  377. package/staging/environment/environment-portal.d.ts +0 -18
  378. package/staging/environment/environment.d.ts +0 -8
  379. package/staging/environment/utils.d.ts +0 -7
  380. package/staging/float/float.d.ts +0 -31
  381. package/staging/matcap-texture/matcap-texture.d.ts +0 -13
  382. package/staging/normal-texture/normal-texture.d.ts +0 -16
  383. package/staging/sky/sky.d.ts +0 -48
  384. package/staging/sparkles/sparkles.d.ts +0 -63
  385. package/staging/spot-light/shadow-mesh-input.d.ts +0 -29
  386. package/staging/spot-light/shadow-mesh.d.ts +0 -37
  387. package/staging/spot-light/spot-light-input.d.ts +0 -38
  388. package/staging/spot-light/spot-light.d.ts +0 -39
  389. package/staging/spot-light/volumetric-mesh.d.ts +0 -24
  390. package/staging/stage/stage.d.ts +0 -130
  391. package/staging/stars/stars.d.ts +0 -45
  392. package/staging/wireframe/wireframe-input.d.ts +0 -65
  393. package/staging/wireframe/wireframe.d.ts +0 -28
  394. package/utils/README.md +0 -3
  395. package/utils/content/content.d.ts +0 -8
  396. package/utils/index.d.ts +0 -1
  397. /package/misc/{bake-shadows → lib}/bake-shadows.d.ts +0 -0
@@ -1,119 +0,0 @@
1
- import { CUSTOM_ELEMENTS_SCHEMA, Component, Input, computed } from '@angular/core';
2
- import { NgtArgs, injectNgtRef, signalStore } from 'angular-three';
3
- import * as THREE from 'three';
4
- import { Sky } from 'three-stdlib';
5
- import * as i0 from "@angular/core";
6
- function calcPosFromAngles(inclination, azimuth, vector = new THREE.Vector3()) {
7
- const theta = Math.PI * (inclination - 0.5);
8
- const phi = 2 * Math.PI * (azimuth - 0.5);
9
- vector.x = Math.cos(phi);
10
- vector.y = Math.sin(theta);
11
- vector.z = Math.sin(phi);
12
- return vector;
13
- }
14
- export class NgtsSky {
15
- constructor() {
16
- this.inputs = signalStore({
17
- inclination: 0.6,
18
- azimuth: 0.1,
19
- distance: 1000,
20
- mieCoefficient: 0.005,
21
- mieDirectionalG: 0.8,
22
- rayleigh: 0.5,
23
- turbidity: 10,
24
- });
25
- this.skyRef = injectNgtRef();
26
- this.inclination = this.inputs.select('inclination');
27
- this.azimuth = this.inputs.select('azimuth');
28
- this.sunPos = this.inputs.select('sunPosition');
29
- this.distance = this.inputs.select('distance');
30
- this.sunPosition = computed(() => this.sunPos() || calcPosFromAngles(this.inclination(), this.azimuth()));
31
- this.scale = computed(() => new THREE.Vector3().setScalar(this.distance()));
32
- this.mieCoefficient = this.inputs.select('mieCoefficient');
33
- this.mieDirectionalG = this.inputs.select('mieDirectionalG');
34
- this.rayleigh = this.inputs.select('rayleigh');
35
- this.turbidity = this.inputs.select('turbidity');
36
- this.sky = new Sky();
37
- }
38
- set _distance(distance) {
39
- this.inputs.set({ distance });
40
- }
41
- set _sunPosition(sunPosition) {
42
- this.inputs.set({ sunPosition });
43
- }
44
- set _inclination(inclination) {
45
- this.inputs.set({ inclination });
46
- }
47
- set _azimuth(azimuth) {
48
- this.inputs.set({ azimuth });
49
- }
50
- set _mieCoefficient(mieCoefficient) {
51
- this.inputs.set({ mieCoefficient });
52
- }
53
- set _mieDirectionalG(mieDirectionalG) {
54
- this.inputs.set({ mieDirectionalG });
55
- }
56
- set _rayleigh(rayleigh) {
57
- this.inputs.set({ rayleigh });
58
- }
59
- set _turbidity(turbidity) {
60
- this.inputs.set({ turbidity });
61
- }
62
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: NgtsSky, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
63
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: NgtsSky, isStandalone: true, selector: "ngts-sky", inputs: { skyRef: "skyRef", _distance: ["distance", "_distance"], _sunPosition: ["sunPosition", "_sunPosition"], _inclination: ["inclination", "_inclination"], _azimuth: ["azimuth", "_azimuth"], _mieCoefficient: ["mieCoefficient", "_mieCoefficient"], _mieDirectionalG: ["mieDirectionalG", "_mieDirectionalG"], _rayleigh: ["rayleigh", "_rayleigh"], _turbidity: ["turbidity", "_turbidity"] }, ngImport: i0, template: `
64
- <ngt-primitive *args="[sky]" [ref]="skyRef" [scale]="scale()" ngtCompound>
65
- <ngt-value [rawValue]="mieCoefficient()" attach="material.uniforms.mieCoefficient.value" />
66
- <ngt-value [rawValue]="mieDirectionalG()" attach="material.uniforms.mieDirectionalG.value" />
67
- <ngt-value [rawValue]="rayleigh()" attach="material.uniforms.rayleigh.value" />
68
- <ngt-value [rawValue]="sunPosition()" attach="material.uniforms.sunPosition.value" />
69
- <ngt-value [rawValue]="turbidity()" attach="material.uniforms.turbidity.value" />
70
- <ng-content />
71
- </ngt-primitive>
72
- `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }] }); }
73
- }
74
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: NgtsSky, decorators: [{
75
- type: Component,
76
- args: [{
77
- selector: 'ngts-sky',
78
- standalone: true,
79
- template: `
80
- <ngt-primitive *args="[sky]" [ref]="skyRef" [scale]="scale()" ngtCompound>
81
- <ngt-value [rawValue]="mieCoefficient()" attach="material.uniforms.mieCoefficient.value" />
82
- <ngt-value [rawValue]="mieDirectionalG()" attach="material.uniforms.mieDirectionalG.value" />
83
- <ngt-value [rawValue]="rayleigh()" attach="material.uniforms.rayleigh.value" />
84
- <ngt-value [rawValue]="sunPosition()" attach="material.uniforms.sunPosition.value" />
85
- <ngt-value [rawValue]="turbidity()" attach="material.uniforms.turbidity.value" />
86
- <ng-content />
87
- </ngt-primitive>
88
- `,
89
- imports: [NgtArgs],
90
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
91
- }]
92
- }], propDecorators: { skyRef: [{
93
- type: Input
94
- }], _distance: [{
95
- type: Input,
96
- args: [{ alias: 'distance' }]
97
- }], _sunPosition: [{
98
- type: Input,
99
- args: [{ alias: 'sunPosition' }]
100
- }], _inclination: [{
101
- type: Input,
102
- args: [{ alias: 'inclination' }]
103
- }], _azimuth: [{
104
- type: Input,
105
- args: [{ alias: 'azimuth' }]
106
- }], _mieCoefficient: [{
107
- type: Input,
108
- args: [{ alias: 'mieCoefficient' }]
109
- }], _mieDirectionalG: [{
110
- type: Input,
111
- args: [{ alias: 'mieDirectionalG' }]
112
- }], _rayleigh: [{
113
- type: Input,
114
- args: [{ alias: 'rayleigh' }]
115
- }], _turbidity: [{
116
- type: Input,
117
- args: [{ alias: 'turbidity' }]
118
- }] } });
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2t5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9zb2JhL3N0YWdpbmcvc3JjL3NreS9za3kudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25GLE9BQU8sRUFBRSxPQUFPLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDakYsT0FBTyxLQUFLLEtBQUssTUFBTSxPQUFPLENBQUM7QUFDL0IsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7QUFFbkMsU0FBUyxpQkFBaUIsQ0FBQyxXQUFtQixFQUFFLE9BQWUsRUFBRSxNQUFNLEdBQUcsSUFBSSxLQUFLLENBQUMsT0FBTyxFQUFFO0lBQzVGLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxXQUFXLEdBQUcsR0FBRyxDQUFDLENBQUM7SUFDNUMsTUFBTSxHQUFHLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxPQUFPLEdBQUcsR0FBRyxDQUFDLENBQUM7SUFFMUMsTUFBTSxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3pCLE1BQU0sQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixNQUFNLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7SUFFekIsT0FBTyxNQUFNLENBQUM7QUFDZixDQUFDO0FBdUNELE1BQU0sT0FBTyxPQUFPO0lBaEJwQjtRQWlCUyxXQUFNLEdBQUcsV0FBVyxDQUFlO1lBQzFDLFdBQVcsRUFBRSxHQUFHO1lBQ2hCLE9BQU8sRUFBRSxHQUFHO1lBQ1osUUFBUSxFQUFF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QUFDO29CQUNWLFFBQVEsRUFBRSxVQUFVO29CQUNwQixVQUFVLEVBQUUsSUFBSTtvQkFDaEIsUUFBUSxFQUFFOzs7Ozs7Ozs7RUFTVDtvQkFDRCxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7b0JBQ2xCLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUNqQzs4QkFZUyxNQUFNO3NCQUFkLEtBQUs7Z0JBRTRCLFNBQVM7c0JBQTFDLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFO2dCQUlTLFlBQVk7c0JBQWhELEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFO2dCQUlNLFlBQVk7c0JBQWhELEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsYUFBYSxFQUFFO2dCQUlFLFFBQVE7c0JBQXhDLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFO2dCQUlhLGVBQWU7c0JBQXRELEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBSU8sZ0JBQWdCO3NCQUF4RCxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFO2dCQUlELFNBQVM7c0JBQTFDLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFO2dCQUlPLFVBQVU7c0JBQTVDLEtBQUs7dUJBQUMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQSwgQ29tcG9uZW50LCBJbnB1dCwgY29tcHV0ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5ndEFyZ3MsIGluamVjdE5ndFJlZiwgc2lnbmFsU3RvcmUsIHR5cGUgTmd0TWVzaCB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuaW1wb3J0ICogYXMgVEhSRUUgZnJvbSAndGhyZWUnO1xuaW1wb3J0IHsgU2t5IH0gZnJvbSAndGhyZWUtc3RkbGliJztcblxuZnVuY3Rpb24gY2FsY1Bvc0Zyb21BbmdsZXMoaW5jbGluYXRpb246IG51bWJlciwgYXppbXV0aDogbnVtYmVyLCB2ZWN0b3IgPSBuZXcgVEhSRUUuVmVjdG9yMygpKSB7XG5cdGNvbnN0IHRoZXRhID0gTWF0aC5QSSAqIChpbmNsaW5hdGlvbiAtIDAuNSk7XG5cdGNvbnN0IHBoaSA9IDIgKiBNYXRoLlBJICogKGF6aW11dGggLSAwLjUpO1xuXG5cdHZlY3Rvci54ID0gTWF0aC5jb3MocGhpKTtcblx0dmVjdG9yLnkgPSBNYXRoLnNpbih0aGV0YSk7XG5cdHZlY3Rvci56ID0gTWF0aC5zaW4ocGhpKTtcblxuXHRyZXR1cm4gdmVjdG9yO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIE5ndHNTa3lTdGF0ZSB7XG5cdGRpc3RhbmNlOiBudW1iZXI7XG5cdHN1blBvc2l0aW9uOiBUSFJFRS5WZWN0b3IzIHwgUGFyYW1ldGVyczxUSFJFRS5WZWN0b3IzWydzZXQnXT47XG5cdGluY2xpbmF0aW9uOiBudW1iZXI7XG5cdGF6aW11dGg6IG51bWJlcjtcblx0bWllQ29lZmZpY2llbnQ6IG51bWJlcjtcblx0bWllRGlyZWN0aW9uYWxHOiBudW1iZXI7XG5cdHJheWxlaWdoOiBudW1iZXI7XG5cdHR1cmJpZGl0eTogbnVtYmVyO1xufVxuXG5kZWNsYXJlIGdsb2JhbCB7XG5cdGludGVyZmFjZSBIVE1MRWxlbWVudFRhZ05hbWVNYXAge1xuXHRcdC8qKlxuXHRcdCAqIEBleHRlbmRzIHRocmVlLXN0ZGxpYnxTa3lcblx0XHQgKiBAZXh0ZW5kcyBuZ3QtbWVzaFxuXHRcdCAqL1xuXHRcdCduZ3RzLXNreSc6IE5ndHNTa3lTdGF0ZSAmIFNreSAmIE5ndE1lc2g7XG5cdH1cbn1cblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnbmd0cy1za3knLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHR0ZW1wbGF0ZTogYFxuXHRcdDxuZ3QtcHJpbWl0aXZlICphcmdzPVwiW3NreV1cIiBbcmVmXT1cInNreVJlZlwiIFtzY2FsZV09XCJzY2FsZSgpXCIgbmd0Q29tcG91bmQ+XG5cdFx0XHQ8bmd0LXZhbHVlIFtyYXdWYWx1ZV09XCJtaWVDb2VmZmljaWVudCgpXCIgYXR0YWNoPVwibWF0ZXJpYWwudW5pZm9ybXMubWllQ29lZmZpY2llbnQudmFsdWVcIiAvPlxuXHRcdFx0PG5ndC12YWx1ZSBbcmF3VmFsdWVdPVwibWllRGlyZWN0aW9uYWxHKClcIiBhdHRhY2g9XCJtYXRlcmlhbC51bmlmb3Jtcy5taWVEaXJlY3Rpb25hbEcudmFsdWVcIiAvPlxuXHRcdFx0PG5ndC12YWx1ZSBbcmF3VmFsdWVdPVwicmF5bGVpZ2goKVwiIGF0dGFjaD1cIm1hdGVyaWFsLnVuaWZvcm1zLnJheWxlaWdoLnZhbHVlXCIgLz5cblx0XHRcdDxuZ3QtdmFsdWUgW3Jhd1ZhbHVlXT1cInN1blBvc2l0aW9uKClcIiBhdHRhY2g9XCJtYXRlcmlhbC51bmlmb3Jtcy5zdW5Qb3NpdGlvbi52YWx1ZVwiIC8+XG5cdFx0XHQ8bmd0LXZhbHVlIFtyYXdWYWx1ZV09XCJ0dXJiaWRpdHkoKVwiIGF0dGFjaD1cIm1hdGVyaWFsLnVuaWZvcm1zLnR1cmJpZGl0eS52YWx1ZVwiIC8+XG5cdFx0XHQ8bmctY29udGVudCAvPlxuXHRcdDwvbmd0LXByaW1pdGl2ZT5cblx0YCxcblx0aW1wb3J0czogW05ndEFyZ3NdLFxuXHRzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG59KVxuZXhwb3J0IGNsYXNzIE5ndHNTa3kge1xuXHRwcml2YXRlIGlucHV0cyA9IHNpZ25hbFN0b3JlPE5ndHNTa3lTdGF0ZT4oe1xuXHRcdGluY2xpbmF0aW9uOiAwLjYsXG5cdFx0YXppbXV0aDogMC4xLFxuXHRcdGRpc3RhbmNlOiAxMDAwLFxuXHRcdG1pZUNvZWZmaWNpZW50OiAwLjAwNSxcblx0XHRtaWVEaXJlY3Rpb25hbEc6IDAuOCxcblx0XHRyYXlsZWlnaDogMC41LFxuXHRcdHR1cmJpZGl0eTogMTAsXG5cdH0pO1xuXG5cdEBJbnB1dCgpIHNreVJlZiA9IGluamVjdE5ndFJlZjxTa3k+KCk7XG5cblx0QElucHV0KHsgYWxpYXM6ICdkaXN0YW5jZScgfSkgc2V0IF9kaXN0YW5jZShkaXN0YW5jZTogbnVtYmVyKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgZGlzdGFuY2UgfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ3N1blBvc2l0aW9uJyB9KSBzZXQgX3N1blBvc2l0aW9uKHN1blBvc2l0aW9uOiBUSFJFRS5WZWN0b3IzIHwgUGFyYW1ldGVyczxUSFJFRS5WZWN0b3IzWydzZXQnXT4pIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBzdW5Qb3NpdGlvbiB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAnaW5jbGluYXRpb24nIH0pIHNldCBfaW5jbGluYXRpb24oaW5jbGluYXRpb246IG51bWJlcikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IGluY2xpbmF0aW9uIH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdhemltdXRoJyB9KSBzZXQgX2F6aW11dGgoYXppbXV0aDogbnVtYmVyKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgYXppbXV0aCB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAnbWllQ29lZmZpY2llbnQnIH0pIHNldCBfbWllQ29lZmZpY2llbnQobWllQ29lZmZpY2llbnQ6IG51bWJlcikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IG1pZUNvZWZmaWNpZW50IH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdtaWVEaXJlY3Rpb25hbEcnIH0pIHNldCBfbWllRGlyZWN0aW9uYWxHKG1pZURpcmVjdGlvbmFsRzogbnVtYmVyKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgbWllRGlyZWN0aW9uYWxHIH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdyYXlsZWlnaCcgfSkgc2V0IF9yYXlsZWlnaChyYXlsZWlnaDogbnVtYmVyKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgcmF5bGVpZ2ggfSk7XG5cdH1cblxuXHRASW5wdXQoeyBhbGlhczogJ3R1cmJpZGl0eScgfSkgc2V0IF90dXJiaWRpdHkodHVyYmlkaXR5OiBudW1iZXIpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyB0dXJiaWRpdHkgfSk7XG5cdH1cblxuXHRwcml2YXRlIGluY2xpbmF0aW9uID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdpbmNsaW5hdGlvbicpO1xuXHRwcml2YXRlIGF6aW11dGggPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2F6aW11dGgnKTtcblx0cHJpdmF0ZSBzdW5Qb3MgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ3N1blBvc2l0aW9uJyk7XG5cdHByaXZhdGUgZGlzdGFuY2UgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2Rpc3RhbmNlJyk7XG5cblx0c3VuUG9zaXRpb24gPSBjb21wdXRlZCgoKSA9PiB0aGlzLnN1blBvcygpIHx8IGNhbGNQb3NGcm9tQW5nbGVzKHRoaXMuaW5jbGluYXRpb24oKSwgdGhpcy5hemltdXRoKCkpKTtcblx0c2NhbGUgPSBjb21wdXRlZCgoKSA9PiBuZXcgVEhSRUUuVmVjdG9yMygpLnNldFNjYWxhcih0aGlzLmRpc3RhbmNlKCkpKTtcblx0bWllQ29lZmZpY2llbnQgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ21pZUNvZWZmaWNpZW50Jyk7XG5cdG1pZURpcmVjdGlvbmFsRyA9IHRoaXMuaW5wdXRzLnNlbGVjdCgnbWllRGlyZWN0aW9uYWxHJyk7XG5cdHJheWxlaWdoID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdyYXlsZWlnaCcpO1xuXHR0dXJiaWRpdHkgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ3R1cmJpZGl0eScpO1xuXG5cdHNreSA9IG5ldyBTa3koKTtcbn1cbiJdfQ==
@@ -1,164 +0,0 @@
1
- import { CUSTOM_ELEMENTS_SCHEMA, Component, Input, computed, isSignal } from '@angular/core';
2
- import { NgtArgs, NgtKey, extend, injectBeforeRender, injectNgtRef, injectNgtStore, signalStore, } from 'angular-three';
3
- import { SparklesMaterial } from 'angular-three-soba/shaders';
4
- import * as THREE from 'three';
5
- import { BufferAttribute, BufferGeometry, Points } from 'three';
6
- import * as i0 from "@angular/core";
7
- extend({ SparklesMaterial, Points, BufferGeometry, BufferAttribute });
8
- const isFloat32Array = (def) => def && def.constructor === Float32Array;
9
- const expandColor = (v) => [v.r, v.g, v.b];
10
- const isVector = (v) => v instanceof THREE.Vector2 || v instanceof THREE.Vector3 || v instanceof THREE.Vector4;
11
- const normalizeVector = (v) => {
12
- if (Array.isArray(v))
13
- return v;
14
- else if (isVector(v))
15
- return v.toArray();
16
- return [v, v, v];
17
- };
18
- function usePropAsIsOrAsAttribute(count, prop, setDefault) {
19
- if (prop !== undefined) {
20
- if (isFloat32Array(prop)) {
21
- return prop;
22
- }
23
- if (prop instanceof THREE.Color) {
24
- const a = Array.from({ length: count * 3 }, () => expandColor(prop)).flat();
25
- return Float32Array.from(a);
26
- }
27
- if (isVector(prop) || Array.isArray(prop)) {
28
- const a = Array.from({ length: count * 3 }, () => normalizeVector(prop)).flat();
29
- return Float32Array.from(a);
30
- }
31
- return Float32Array.from({ length: count }, () => prop);
32
- }
33
- return Float32Array.from({ length: count }, setDefault);
34
- }
35
- export class NgtsSparkles {
36
- /** Number of particles (default: 100) */
37
- set _count(count) {
38
- this.inputs.set({ count });
39
- }
40
- /** Speed of particles (default: 1) */
41
- set _speed(speed) {
42
- this.inputs.set({ speed });
43
- }
44
- /** Opacity of particles (default: 1) */
45
- set _opacity(opacity) {
46
- this.inputs.set({ opacity });
47
- }
48
- /** Color of particles (default: 100) */
49
- set _color(color) {
50
- this.inputs.set({ color });
51
- }
52
- /** Size of particles (default: randomized between 0 and 1) */
53
- set _size(size) {
54
- this.inputs.set({ size });
55
- }
56
- /** The space the particles occupy (default: 1) */
57
- set _scale(scale) {
58
- this.inputs.set({ scale });
59
- }
60
- /** Movement factor (default: 1) */
61
- set _noise(noise) {
62
- this.inputs.set({ noise });
63
- }
64
- constructor() {
65
- this.inputs = signalStore({
66
- noise: 1,
67
- count: 100,
68
- speed: 1,
69
- opacity: 1,
70
- scale: 1,
71
- });
72
- this.sparklesRef = injectNgtRef();
73
- this.store = injectNgtStore();
74
- this.dpr = this.store.select('viewport', 'dpr');
75
- this.scale = this.inputs.select('scale');
76
- this.count = this.inputs.select('count');
77
- this.color = this.inputs.select('color');
78
- this.positions = computed(() => Float32Array.from(Array.from({ length: this.count() }, () => normalizeVector(this.scale()).map(THREE.MathUtils.randFloatSpread)).flat()));
79
- this.sizes = this.getComputed('size', this.count, Math.random);
80
- this.opacities = this.getComputed('opacity', this.count);
81
- this.speeds = this.getComputed('speed', this.count);
82
- this.noises = this.getComputed('noise', () => this.count() * 3);
83
- this.colors = this.getComputed(computed(() => {
84
- const color = this.color();
85
- return !isFloat32Array(color) ? new THREE.Color(color) : color;
86
- }), () => (this.color() === undefined ? this.count() * 3 : this.count()), () => 1);
87
- this.key = computed(() => `particle-${this.count()}-${JSON.stringify(this.scale())}`);
88
- this.beforeRender();
89
- }
90
- beforeRender() {
91
- injectBeforeRender(({ clock }) => {
92
- const sparkles = this.sparklesRef.nativeElement;
93
- if (!sparkles || !sparkles.material)
94
- return;
95
- sparkles.material.time = clock.elapsedTime;
96
- });
97
- }
98
- getComputed(nameOrComputed, count, setDefault) {
99
- const value = typeof nameOrComputed !== 'string' && isSignal(nameOrComputed)
100
- ? nameOrComputed
101
- : this.inputs.select(nameOrComputed);
102
- return computed(() => usePropAsIsOrAsAttribute(count(), value(), setDefault));
103
- }
104
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: NgtsSparkles, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
105
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: NgtsSparkles, isStandalone: true, selector: "ngts-sparkles", inputs: { sparklesRef: "sparklesRef", _count: ["count", "_count"], _speed: ["speed", "_speed"], _opacity: ["opacity", "_opacity"], _color: ["color", "_color"], _size: ["size", "_size"], _scale: ["scale", "_scale"], _noise: ["noise", "_noise"] }, ngImport: i0, template: `
106
- <ngt-points *key="key()" ngtCompound [ref]="sparklesRef">
107
- <ngt-buffer-geometry>
108
- <ngt-buffer-attribute attach="attributes.position" *args="[positions(), 3]" />
109
- <ngt-buffer-attribute attach="attributes.size" *args="[sizes(), 1]" />
110
- <ngt-buffer-attribute attach="attributes.opacity" *args="[opacities(), 1]" />
111
- <ngt-buffer-attribute attach="attributes.speed" *args="[speeds(), 1]" />
112
- <ngt-buffer-attribute attach="attributes.color" *args="[colors(), 3]" />
113
- <ngt-buffer-attribute attach="attributes.noise" *args="[noises(), 3]" />
114
- </ngt-buffer-geometry>
115
- <ngt-sparkles-material [transparent]="true" [depthWrite]="false" [pixelRatio]="dpr()" />
116
- </ngt-points>
117
- `, isInline: true, dependencies: [{ kind: "directive", type: NgtArgs, selector: "ng-template[args]", inputs: ["args"] }, { kind: "directive", type: NgtKey, selector: "ng-template[key]", inputs: ["key"] }] }); }
118
- }
119
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: NgtsSparkles, decorators: [{
120
- type: Component,
121
- args: [{
122
- selector: 'ngts-sparkles',
123
- standalone: true,
124
- template: `
125
- <ngt-points *key="key()" ngtCompound [ref]="sparklesRef">
126
- <ngt-buffer-geometry>
127
- <ngt-buffer-attribute attach="attributes.position" *args="[positions(), 3]" />
128
- <ngt-buffer-attribute attach="attributes.size" *args="[sizes(), 1]" />
129
- <ngt-buffer-attribute attach="attributes.opacity" *args="[opacities(), 1]" />
130
- <ngt-buffer-attribute attach="attributes.speed" *args="[speeds(), 1]" />
131
- <ngt-buffer-attribute attach="attributes.color" *args="[colors(), 3]" />
132
- <ngt-buffer-attribute attach="attributes.noise" *args="[noises(), 3]" />
133
- </ngt-buffer-geometry>
134
- <ngt-sparkles-material [transparent]="true" [depthWrite]="false" [pixelRatio]="dpr()" />
135
- </ngt-points>
136
- `,
137
- imports: [NgtArgs, NgtKey],
138
- schemas: [CUSTOM_ELEMENTS_SCHEMA],
139
- }]
140
- }], ctorParameters: function () { return []; }, propDecorators: { sparklesRef: [{
141
- type: Input
142
- }], _count: [{
143
- type: Input,
144
- args: [{ alias: 'count' }]
145
- }], _speed: [{
146
- type: Input,
147
- args: [{ alias: 'speed' }]
148
- }], _opacity: [{
149
- type: Input,
150
- args: [{ alias: 'opacity' }]
151
- }], _color: [{
152
- type: Input,
153
- args: [{ alias: 'color' }]
154
- }], _size: [{
155
- type: Input,
156
- args: [{ alias: 'size' }]
157
- }], _scale: [{
158
- type: Input,
159
- args: [{ alias: 'scale' }]
160
- }], _noise: [{
161
- type: Input,
162
- args: [{ alias: 'noise' }]
163
- }] } });
164
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BhcmtsZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NvYmEvc3RhZ2luZy9zcmMvc3BhcmtsZXMvc3BhcmtsZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBZSxNQUFNLGVBQWUsQ0FBQztBQUMxRyxPQUFPLEVBQ04sT0FBTyxFQUNQLE1BQU0sRUFDTixNQUFNLEVBQ04sa0JBQWtCLEVBQ2xCLFlBQVksRUFDWixjQUFjLEVBQ2QsV0FBVyxHQUVYLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBaUMsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RixPQUFPLEtBQUssS0FBSyxNQUFNLE9BQU8sQ0FBQztBQUMvQixPQUFPLEVBQUUsZUFBZSxFQUFFLGNBQWMsRUFBRSxNQUFNLEVBQUUsTUFBTSxPQUFPLENBQUM7O0FBRWhFLE1BQU0sQ0FBQyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxjQUFjLEVBQUUsZUFBZSxFQUFFLENBQUMsQ0FBQztBQUV0RSxNQUFNLGNBQWMsR0FBRyxDQUFDLEdBQVEsRUFBdUIsRUFBRSxDQUFDLEdBQUcsSUFBSyxHQUFvQixDQUFDLFdBQVcsS0FBSyxZQUFZLENBQUM7QUFFcEgsTUFBTSxXQUFXLEdBQUcsQ0FBQyxDQUFjLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztBQUN4RCxNQUFNLFFBQVEsR0FBRyxDQUFDLENBQU0sRUFBc0QsRUFBRSxDQUMvRSxDQUFDLFlBQVksS0FBSyxDQUFDLE9BQU8sSUFBSSxDQUFDLFlBQVksS0FBSyxDQUFDLE9BQU8sSUFBSSxDQUFDLFlBQVksS0FBSyxDQUFDLE9BQU8sQ0FBQztBQUV4RixNQUFNLGVBQWUsR0FBRyxDQUFDLENBQU0sRUFBWSxFQUFFO0lBQzVDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFBRSxPQUFPLENBQUMsQ0FBQztTQUMxQixJQUFJLFFBQVEsQ0FBQyxDQUFDLENBQUM7UUFBRSxPQUFPLENBQUMsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUN6QyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQWEsQ0FBQztBQUM5QixDQUFDLENBQUM7QUFFRixTQUFTLHdCQUF3QixDQUNoQyxLQUFhLEVBQ2IsSUFBdUIsRUFDdkIsVUFBNkI7SUFFN0IsSUFBSSxJQUFJLEtBQUssU0FBUyxFQUFFO1FBQ3ZCLElBQUksY0FBYyxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ3pCLE9BQU8sSUFBb0IsQ0FBQztTQUM1QjtRQUVELElBQUksSUFBSSxZQUFZLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFDaEMsTUFBTSxDQUFDLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLEdBQUcsQ0FBQyxFQUFFLEVBQUUsR0FBRyxFQUFFLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDNUUsT0FBTyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQzVCO1FBRUQsSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRTtZQUMxQyxNQUFNLENBQUMsR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsTUFBTSxFQUFFLEtBQUssR0FBRyxDQUFDLEVBQUUsRUFBRSxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNoRixPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDNUI7UUFFRCxPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBYyxDQUFDLENBQUM7S0FDbEU7SUFFRCxPQUFPLFlBQVksQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsVUFBVyxDQUFDLENBQUM7QUFDMUQsQ0FBQztBQStDRCxNQUFNLE9BQU8sWUFBWTtJQVd4Qix5Q0FBeUM7SUFDekMsSUFBK0IsTUFBTSxDQUFDLEtBQWE7UUFDbEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxzQ0FBc0M7SUFDdEMsSUFBK0IsTUFBTSxDQUFDLEtBQTRCO1FBQ2pFLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsd0NBQXdDO0lBQ3hDLElBQWlDLFFBQVEsQ0FBQyxPQUE4QjtRQUN2RSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVELHdDQUF3QztJQUN4QyxJQUErQixNQUFNLENBQUMsS0FBK0M7UUFDcEYsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCw4REFBOEQ7SUFDOUQsSUFBOEIsS0FBSyxDQUFDLElBQTJCO1FBQzlELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRUQsa0RBQWtEO0lBQ2xELElBQStCLE1BQU0sQ0FBQyxLQUF3RDtRQUM3RixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVELG1DQUFtQztJQUNuQyxJQUErQixNQUFNLENBQUMsS0FBdUU7UUFDNUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUErQkQ7UUExRVEsV0FBTSxHQUFHLFdBQVcsQ0FBb0I7WUFDL0MsS0FBSyxFQUFFLENBQUM7WUFDUixLQUFLLEVBQUUsR0FBRztZQUNWLEtBQUssRUFBRSxDQUFDO1lBQ1IsT0FBTyxFQUFFLENBQUM7WUFDVixLQUFLLEVBQUUsQ0FBQztTQUNSLENBQUMsQ0FBQztRQUVNLGdCQUFXLEdBQUcsWUFBWSxFQUFVLENBQUM7UUFxQ3RDLFVBQUssR0FBRyxjQUFjLEVBQUUsQ0FBQztRQUVqQyxRQUFHLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsVUFBVSxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBRW5DLFVBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwQyxVQUFLLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDcEMsVUFBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTVDLGNBQVMsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQ3pCLFlBQVksQ0FBQyxJQUFJLENBQ2hCLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxFQUFFLEVBQUUsR0FBRyxFQUFFLENBQ3pDLGVBQWUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLFNBQVMsQ0FBQyxlQUFlLENBQUMsQ0FDbEUsQ0FBQyxJQUFJLEVBQUUsQ0FDUixDQUNELENBQUM7UUFDRixVQUFLLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDMUQsY0FBUyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwRCxXQUFNLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQy9DLFdBQU0sR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDM0QsV0FBTSxHQUFHLElBQUksQ0FBQyxXQUFXLENBQ3hCLFFBQVEsQ0FBQyxHQUFHLEVBQUU7WUFDYixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDM0IsT0FBTyxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDaEUsQ0FBQyxDQUFDLEVBQ0YsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsRUFDcEUsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUNQLENBQUM7UUFDRixRQUFHLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLFlBQVksSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBR2hGLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRU8sWUFBWTtRQUNuQixrQkFBa0IsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNoQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztZQUNoRCxJQUFJLENBQUMsUUFBUSxJQUFJLENBQUMsUUFBUSxDQUFDLFFBQVE7Z0JBQUUsT0FBTztZQUMzQyxRQUFRLENBQUMsUUFBcUMsQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDLFdBQVcsQ0FBQztRQUMxRSxDQUFDLENBQUMsQ0FBQztJQUNKLENBQUM7SUFFTyxXQUFXLENBQ2xCLGNBQXNELEVBQ3RELEtBQW1CLEVBQ25CLFVBQXVEO1FBRXZELE1BQU0sS0FBSyxHQUNWLE9BQU8sY0FBYyxLQUFLLFFBQVEsSUFBSSxRQUFRLENBQUMsY0FBYyxDQUFDO1lBQzdELENBQUMsQ0FBQyxjQUFjO1lBQ2hCLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUN2QyxPQUFPLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQy9FLENBQUM7OEdBakdXLFlBQVk7a0dBQVosWUFBWSwrVEFoQmQ7Ozs7Ozs7Ozs7OztFQVlULDREQUNTLE9BQU8sZ0ZBQUUsTUFBTTs7MkZBR2IsWUFBWTtrQkFuQnhCLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUU7Ozs7Ozs7Ozs7OztFQVlUO29CQUNELE9BQU8sRUFBRSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUM7b0JBQzFCLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUNqQzswRUFVUyxXQUFXO3NCQUFuQixLQUFLO2dCQUd5QixNQUFNO3NCQUFwQyxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtnQkFLTSxNQUFNO3NCQUFwQyxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtnQkFLUSxRQUFRO3NCQUF4QyxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRTtnQkFLSSxNQUFNO3NCQUFwQyxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtnQkFLSyxLQUFLO3NCQUFsQyxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRTtnQkFLTyxNQUFNO3NCQUFwQyxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRTtnQkFLTSxNQUFNO3NCQUFwQyxLQUFLO3VCQUFDLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsIENvbXBvbmVudCwgSW5wdXQsIGNvbXB1dGVkLCBpc1NpZ25hbCwgdHlwZSBTaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7XG5cdE5ndEFyZ3MsXG5cdE5ndEtleSxcblx0ZXh0ZW5kLFxuXHRpbmplY3RCZWZvcmVSZW5kZXIsXG5cdGluamVjdE5ndFJlZixcblx0aW5qZWN0Tmd0U3RvcmUsXG5cdHNpZ25hbFN0b3JlLFxuXHR0eXBlIE5ndFBvaW50cyxcbn0gZnJvbSAnYW5ndWxhci10aHJlZSc7XG5pbXBvcnQgeyBTcGFya2xlc01hdGVyaWFsLCB0eXBlIE5ndFNwYXJrbGVzTWF0ZXJpYWxTdGF0ZSB9IGZyb20gJ2FuZ3VsYXItdGhyZWUtc29iYS9zaGFkZXJzJztcbmltcG9ydCAqIGFzIFRIUkVFIGZyb20gJ3RocmVlJztcbmltcG9ydCB7IEJ1ZmZlckF0dHJpYnV0ZSwgQnVmZmVyR2VvbWV0cnksIFBvaW50cyB9IGZyb20gJ3RocmVlJztcblxuZXh0ZW5kKHsgU3BhcmtsZXNNYXRlcmlhbCwgUG9pbnRzLCBCdWZmZXJHZW9tZXRyeSwgQnVmZmVyQXR0cmlidXRlIH0pO1xuXG5jb25zdCBpc0Zsb2F0MzJBcnJheSA9IChkZWY6IGFueSk6IGRlZiBpcyBGbG9hdDMyQXJyYXkgPT4gZGVmICYmIChkZWYgYXMgRmxvYXQzMkFycmF5KS5jb25zdHJ1Y3RvciA9PT0gRmxvYXQzMkFycmF5O1xuXG5jb25zdCBleHBhbmRDb2xvciA9ICh2OiBUSFJFRS5Db2xvcikgPT4gW3Yuciwgdi5nLCB2LmJdO1xuY29uc3QgaXNWZWN0b3IgPSAodjogYW55KTogdiBpcyBUSFJFRS5WZWN0b3IyIHwgVEhSRUUuVmVjdG9yMyB8IFRIUkVFLlZlY3RvcjQgPT5cblx0diBpbnN0YW5jZW9mIFRIUkVFLlZlY3RvcjIgfHwgdiBpbnN0YW5jZW9mIFRIUkVFLlZlY3RvcjMgfHwgdiBpbnN0YW5jZW9mIFRIUkVFLlZlY3RvcjQ7XG5cbmNvbnN0IG5vcm1hbGl6ZVZlY3RvciA9ICh2OiBhbnkpOiBudW1iZXJbXSA9PiB7XG5cdGlmIChBcnJheS5pc0FycmF5KHYpKSByZXR1cm4gdjtcblx0ZWxzZSBpZiAoaXNWZWN0b3IodikpIHJldHVybiB2LnRvQXJyYXkoKTtcblx0cmV0dXJuIFt2LCB2LCB2XSBhcyBudW1iZXJbXTtcbn07XG5cbmZ1bmN0aW9uIHVzZVByb3BBc0lzT3JBc0F0dHJpYnV0ZTxUIGV4dGVuZHMgYW55Pihcblx0Y291bnQ6IG51bWJlcixcblx0cHJvcD86IFQgfCBGbG9hdDMyQXJyYXksXG5cdHNldERlZmF1bHQ/OiAodjogVCkgPT4gbnVtYmVyLFxuKSB7XG5cdGlmIChwcm9wICE9PSB1bmRlZmluZWQpIHtcblx0XHRpZiAoaXNGbG9hdDMyQXJyYXkocHJvcCkpIHtcblx0XHRcdHJldHVybiBwcm9wIGFzIEZsb2F0MzJBcnJheTtcblx0XHR9XG5cblx0XHRpZiAocHJvcCBpbnN0YW5jZW9mIFRIUkVFLkNvbG9yKSB7XG5cdFx0XHRjb25zdCBhID0gQXJyYXkuZnJvbSh7IGxlbmd0aDogY291bnQgKiAzIH0sICgpID0+IGV4cGFuZENvbG9yKHByb3ApKS5mbGF0KCk7XG5cdFx0XHRyZXR1cm4gRmxvYXQzMkFycmF5LmZyb20oYSk7XG5cdFx0fVxuXG5cdFx0aWYgKGlzVmVjdG9yKHByb3ApIHx8IEFycmF5LmlzQXJyYXkocHJvcCkpIHtcblx0XHRcdGNvbnN0IGEgPSBBcnJheS5mcm9tKHsgbGVuZ3RoOiBjb3VudCAqIDMgfSwgKCkgPT4gbm9ybWFsaXplVmVjdG9yKHByb3ApKS5mbGF0KCk7XG5cdFx0XHRyZXR1cm4gRmxvYXQzMkFycmF5LmZyb20oYSk7XG5cdFx0fVxuXG5cdFx0cmV0dXJuIEZsb2F0MzJBcnJheS5mcm9tKHsgbGVuZ3RoOiBjb3VudCB9LCAoKSA9PiBwcm9wIGFzIG51bWJlcik7XG5cdH1cblxuXHRyZXR1cm4gRmxvYXQzMkFycmF5LmZyb20oeyBsZW5ndGg6IGNvdW50IH0sIHNldERlZmF1bHQhKTtcbn1cblxuZXhwb3J0IHR5cGUgTmd0c1NwYXJrbGVzU3RhdGUgPSB7XG5cdC8qKiBOdW1iZXIgb2YgcGFydGljbGVzIChkZWZhdWx0OiAxMDApICovXG5cdGNvdW50OiBudW1iZXI7XG5cdC8qKiBTcGVlZCBvZiBwYXJ0aWNsZXMgKGRlZmF1bHQ6IDEpICovXG5cdHNwZWVkOiBudW1iZXIgfCBGbG9hdDMyQXJyYXk7XG5cdC8qKiBPcGFjaXR5IG9mIHBhcnRpY2xlcyAoZGVmYXVsdDogMSkgKi9cblx0b3BhY2l0eTogbnVtYmVyIHwgRmxvYXQzMkFycmF5O1xuXHQvKiogQ29sb3Igb2YgcGFydGljbGVzIChkZWZhdWx0OiAxMDApICovXG5cdGNvbG9yPzogVEhSRUUuQ29sb3JSZXByZXNlbnRhdGlvbiB8IEZsb2F0MzJBcnJheTtcblx0LyoqIFNpemUgb2YgcGFydGljbGVzIChkZWZhdWx0OiByYW5kb21pemVkIGJldHdlZW4gMCBhbmQgMSkgKi9cblx0c2l6ZT86IG51bWJlciB8IEZsb2F0MzJBcnJheTtcblx0LyoqIFRoZSBzcGFjZSB0aGUgcGFydGljbGVzIG9jY3VweSAoZGVmYXVsdDogMSkgKi9cblx0c2NhbGU6IG51bWJlciB8IFtudW1iZXIsIG51bWJlciwgbnVtYmVyXSB8IFRIUkVFLlZlY3RvcjM7XG5cdC8qKiBNb3ZlbWVudCBmYWN0b3IgKGRlZmF1bHQ6IDEpICovXG5cdG5vaXNlOiBudW1iZXIgfCBbbnVtYmVyLCBudW1iZXIsIG51bWJlcl0gfCBUSFJFRS5WZWN0b3IzIHwgRmxvYXQzMkFycmF5O1xufTtcblxuZGVjbGFyZSBnbG9iYWwge1xuXHRpbnRlcmZhY2UgSFRNTEVsZW1lbnRUYWdOYW1lTWFwIHtcblx0XHQvKipcblx0XHQgKiBAZXh0ZW5kcyBuZ3QtcG9pbnRzXG5cdFx0ICovXG5cdFx0J25ndHMtc3BhcmtsZXMnOiBOZ3RzU3BhcmtsZXNTdGF0ZSAmIE5ndFBvaW50cztcblx0fVxufVxuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICduZ3RzLXNwYXJrbGVzJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0dGVtcGxhdGU6IGBcblx0XHQ8bmd0LXBvaW50cyAqa2V5PVwia2V5KClcIiBuZ3RDb21wb3VuZCBbcmVmXT1cInNwYXJrbGVzUmVmXCI+XG5cdFx0XHQ8bmd0LWJ1ZmZlci1nZW9tZXRyeT5cblx0XHRcdFx0PG5ndC1idWZmZXItYXR0cmlidXRlIGF0dGFjaD1cImF0dHJpYnV0ZXMucG9zaXRpb25cIiAqYXJncz1cIltwb3NpdGlvbnMoKSwgM11cIiAvPlxuXHRcdFx0XHQ8bmd0LWJ1ZmZlci1hdHRyaWJ1dGUgYXR0YWNoPVwiYXR0cmlidXRlcy5zaXplXCIgKmFyZ3M9XCJbc2l6ZXMoKSwgMV1cIiAvPlxuXHRcdFx0XHQ8bmd0LWJ1ZmZlci1hdHRyaWJ1dGUgYXR0YWNoPVwiYXR0cmlidXRlcy5vcGFjaXR5XCIgKmFyZ3M9XCJbb3BhY2l0aWVzKCksIDFdXCIgLz5cblx0XHRcdFx0PG5ndC1idWZmZXItYXR0cmlidXRlIGF0dGFjaD1cImF0dHJpYnV0ZXMuc3BlZWRcIiAqYXJncz1cIltzcGVlZHMoKSwgMV1cIiAvPlxuXHRcdFx0XHQ8bmd0LWJ1ZmZlci1hdHRyaWJ1dGUgYXR0YWNoPVwiYXR0cmlidXRlcy5jb2xvclwiICphcmdzPVwiW2NvbG9ycygpLCAzXVwiIC8+XG5cdFx0XHRcdDxuZ3QtYnVmZmVyLWF0dHJpYnV0ZSBhdHRhY2g9XCJhdHRyaWJ1dGVzLm5vaXNlXCIgKmFyZ3M9XCJbbm9pc2VzKCksIDNdXCIgLz5cblx0XHRcdDwvbmd0LWJ1ZmZlci1nZW9tZXRyeT5cblx0XHRcdDxuZ3Qtc3BhcmtsZXMtbWF0ZXJpYWwgW3RyYW5zcGFyZW50XT1cInRydWVcIiBbZGVwdGhXcml0ZV09XCJmYWxzZVwiIFtwaXhlbFJhdGlvXT1cImRwcigpXCIgLz5cblx0XHQ8L25ndC1wb2ludHM+XG5cdGAsXG5cdGltcG9ydHM6IFtOZ3RBcmdzLCBOZ3RLZXldLFxuXHRzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG59KVxuZXhwb3J0IGNsYXNzIE5ndHNTcGFya2xlcyB7XG5cdHByaXZhdGUgaW5wdXRzID0gc2lnbmFsU3RvcmU8Tmd0c1NwYXJrbGVzU3RhdGU+KHtcblx0XHRub2lzZTogMSxcblx0XHRjb3VudDogMTAwLFxuXHRcdHNwZWVkOiAxLFxuXHRcdG9wYWNpdHk6IDEsXG5cdFx0c2NhbGU6IDEsXG5cdH0pO1xuXG5cdEBJbnB1dCgpIHNwYXJrbGVzUmVmID0gaW5qZWN0Tmd0UmVmPFBvaW50cz4oKTtcblxuXHQvKiogTnVtYmVyIG9mIHBhcnRpY2xlcyAoZGVmYXVsdDogMTAwKSAqL1xuXHRASW5wdXQoeyBhbGlhczogJ2NvdW50JyB9KSBzZXQgX2NvdW50KGNvdW50OiBudW1iZXIpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBjb3VudCB9KTtcblx0fVxuXG5cdC8qKiBTcGVlZCBvZiBwYXJ0aWNsZXMgKGRlZmF1bHQ6IDEpICovXG5cdEBJbnB1dCh7IGFsaWFzOiAnc3BlZWQnIH0pIHNldCBfc3BlZWQoc3BlZWQ6IG51bWJlciB8IEZsb2F0MzJBcnJheSkge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IHNwZWVkIH0pO1xuXHR9XG5cblx0LyoqIE9wYWNpdHkgb2YgcGFydGljbGVzIChkZWZhdWx0OiAxKSAqL1xuXHRASW5wdXQoeyBhbGlhczogJ29wYWNpdHknIH0pIHNldCBfb3BhY2l0eShvcGFjaXR5OiBudW1iZXIgfCBGbG9hdDMyQXJyYXkpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBvcGFjaXR5IH0pO1xuXHR9XG5cblx0LyoqIENvbG9yIG9mIHBhcnRpY2xlcyAoZGVmYXVsdDogMTAwKSAqL1xuXHRASW5wdXQoeyBhbGlhczogJ2NvbG9yJyB9KSBzZXQgX2NvbG9yKGNvbG9yOiBUSFJFRS5Db2xvclJlcHJlc2VudGF0aW9uIHwgRmxvYXQzMkFycmF5KSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgY29sb3IgfSk7XG5cdH1cblxuXHQvKiogU2l6ZSBvZiBwYXJ0aWNsZXMgKGRlZmF1bHQ6IHJhbmRvbWl6ZWQgYmV0d2VlbiAwIGFuZCAxKSAqL1xuXHRASW5wdXQoeyBhbGlhczogJ3NpemUnIH0pIHNldCBfc2l6ZShzaXplOiBudW1iZXIgfCBGbG9hdDMyQXJyYXkpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBzaXplIH0pO1xuXHR9XG5cblx0LyoqIFRoZSBzcGFjZSB0aGUgcGFydGljbGVzIG9jY3VweSAoZGVmYXVsdDogMSkgKi9cblx0QElucHV0KHsgYWxpYXM6ICdzY2FsZScgfSkgc2V0IF9zY2FsZShzY2FsZTogbnVtYmVyIHwgW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHwgVEhSRUUuVmVjdG9yMykge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IHNjYWxlIH0pO1xuXHR9XG5cblx0LyoqIE1vdmVtZW50IGZhY3RvciAoZGVmYXVsdDogMSkgKi9cblx0QElucHV0KHsgYWxpYXM6ICdub2lzZScgfSkgc2V0IF9ub2lzZShub2lzZTogbnVtYmVyIHwgW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHwgVEhSRUUuVmVjdG9yMyB8IEZsb2F0MzJBcnJheSkge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IG5vaXNlIH0pO1xuXHR9XG5cblx0cHJpdmF0ZSBzdG9yZSA9IGluamVjdE5ndFN0b3JlKCk7XG5cblx0ZHByID0gdGhpcy5zdG9yZS5zZWxlY3QoJ3ZpZXdwb3J0JywgJ2RwcicpO1xuXG5cdHByaXZhdGUgc2NhbGUgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ3NjYWxlJyk7XG5cdHByaXZhdGUgY291bnQgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2NvdW50Jyk7XG5cdHByaXZhdGUgY29sb3IgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2NvbG9yJyk7XG5cblx0cG9zaXRpb25zID0gY29tcHV0ZWQoKCkgPT5cblx0XHRGbG9hdDMyQXJyYXkuZnJvbShcblx0XHRcdEFycmF5LmZyb20oeyBsZW5ndGg6IHRoaXMuY291bnQoKSB9LCAoKSA9PlxuXHRcdFx0XHRub3JtYWxpemVWZWN0b3IodGhpcy5zY2FsZSgpKS5tYXAoVEhSRUUuTWF0aFV0aWxzLnJhbmRGbG9hdFNwcmVhZCksXG5cdFx0XHQpLmZsYXQoKSxcblx0XHQpLFxuXHQpO1xuXHRzaXplcyA9IHRoaXMuZ2V0Q29tcHV0ZWQoJ3NpemUnLCB0aGlzLmNvdW50LCBNYXRoLnJhbmRvbSk7XG5cdG9wYWNpdGllcyA9IHRoaXMuZ2V0Q29tcHV0ZWQoJ29wYWNpdHknLCB0aGlzLmNvdW50KTtcblx0c3BlZWRzID0gdGhpcy5nZXRDb21wdXRlZCgnc3BlZWQnLCB0aGlzLmNvdW50KTtcblx0bm9pc2VzID0gdGhpcy5nZXRDb21wdXRlZCgnbm9pc2UnLCAoKSA9PiB0aGlzLmNvdW50KCkgKiAzKTtcblx0Y29sb3JzID0gdGhpcy5nZXRDb21wdXRlZChcblx0XHRjb21wdXRlZCgoKSA9PiB7XG5cdFx0XHRjb25zdCBjb2xvciA9IHRoaXMuY29sb3IoKTtcblx0XHRcdHJldHVybiAhaXNGbG9hdDMyQXJyYXkoY29sb3IpID8gbmV3IFRIUkVFLkNvbG9yKGNvbG9yKSA6IGNvbG9yO1xuXHRcdH0pLFxuXHRcdCgpID0+ICh0aGlzLmNvbG9yKCkgPT09IHVuZGVmaW5lZCA/IHRoaXMuY291bnQoKSAqIDMgOiB0aGlzLmNvdW50KCkpLFxuXHRcdCgpID0+IDEsXG5cdCk7XG5cdGtleSA9IGNvbXB1dGVkKCgpID0+IGBwYXJ0aWNsZS0ke3RoaXMuY291bnQoKX0tJHtKU09OLnN0cmluZ2lmeSh0aGlzLnNjYWxlKCkpfWApO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdHRoaXMuYmVmb3JlUmVuZGVyKCk7XG5cdH1cblxuXHRwcml2YXRlIGJlZm9yZVJlbmRlcigpIHtcblx0XHRpbmplY3RCZWZvcmVSZW5kZXIoKHsgY2xvY2sgfSkgPT4ge1xuXHRcdFx0Y29uc3Qgc3BhcmtsZXMgPSB0aGlzLnNwYXJrbGVzUmVmLm5hdGl2ZUVsZW1lbnQ7XG5cdFx0XHRpZiAoIXNwYXJrbGVzIHx8ICFzcGFya2xlcy5tYXRlcmlhbCkgcmV0dXJuO1xuXHRcdFx0KHNwYXJrbGVzLm1hdGVyaWFsIGFzIE5ndFNwYXJrbGVzTWF0ZXJpYWxTdGF0ZSkudGltZSA9IGNsb2NrLmVsYXBzZWRUaW1lO1xuXHRcdH0pO1xuXHR9XG5cblx0cHJpdmF0ZSBnZXRDb21wdXRlZDxUS2V5IGV4dGVuZHMga2V5b2YgTmd0c1NwYXJrbGVzU3RhdGU+KFxuXHRcdG5hbWVPckNvbXB1dGVkOiBUS2V5IHwgU2lnbmFsPE5ndHNTcGFya2xlc1N0YXRlW1RLZXldPixcblx0XHRjb3VudDogKCkgPT4gbnVtYmVyLFxuXHRcdHNldERlZmF1bHQ/OiAodmFsdWU6IE5ndHNTcGFya2xlc1N0YXRlW1RLZXldKSA9PiBudW1iZXIsXG5cdCkge1xuXHRcdGNvbnN0IHZhbHVlID1cblx0XHRcdHR5cGVvZiBuYW1lT3JDb21wdXRlZCAhPT0gJ3N0cmluZycgJiYgaXNTaWduYWwobmFtZU9yQ29tcHV0ZWQpXG5cdFx0XHRcdD8gbmFtZU9yQ29tcHV0ZWRcblx0XHRcdFx0OiB0aGlzLmlucHV0cy5zZWxlY3QobmFtZU9yQ29tcHV0ZWQpO1xuXHRcdHJldHVybiBjb21wdXRlZCgoKSA9PiB1c2VQcm9wQXNJc09yQXNBdHRyaWJ1dGUoY291bnQoKSwgdmFsdWUoKSwgc2V0RGVmYXVsdCkpO1xuXHR9XG59XG4iXX0=
@@ -1,63 +0,0 @@
1
- import { Directive, Input } from '@angular/core';
2
- import { signalStore } from 'angular-three';
3
- import * as i0 from "@angular/core";
4
- export class NgtsSpotLightShadowMeshInput {
5
- constructor() {
6
- this.inputs = signalStore({});
7
- this.distance = this.inputs.select('distance');
8
- this.alphaTest = this.inputs.select('alphaTest');
9
- this.scale = this.inputs.select('scale');
10
- this.map = this.inputs.select('map');
11
- this.shader = this.inputs.select('shader');
12
- this.width = this.inputs.select('width');
13
- this.height = this.inputs.select('height');
14
- }
15
- set _distance(distance) {
16
- this.inputs.set({ distance });
17
- }
18
- set _alphaTest(alphaTest) {
19
- this.inputs.set({ alphaTest });
20
- }
21
- set _scale(scale) {
22
- this.inputs.set({ scale });
23
- }
24
- set _map(map) {
25
- this.inputs.set({ map });
26
- }
27
- set _shader(shader) {
28
- this.inputs.set({ shader });
29
- }
30
- set _width(width) {
31
- this.inputs.set({ width });
32
- }
33
- set _height(height) {
34
- this.inputs.set({ height });
35
- }
36
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: NgtsSpotLightShadowMeshInput, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
37
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.2", type: NgtsSpotLightShadowMeshInput, inputs: { _distance: ["distance", "_distance"], _alphaTest: ["alphaTest", "_alphaTest"], _scale: ["scale", "_scale"], _map: ["map", "_map"], _shader: ["shader", "_shader"], _width: ["width", "_width"], _height: ["height", "_height"] }, ngImport: i0 }); }
38
- }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: NgtsSpotLightShadowMeshInput, decorators: [{
40
- type: Directive
41
- }], propDecorators: { _distance: [{
42
- type: Input,
43
- args: [{ alias: 'distance' }]
44
- }], _alphaTest: [{
45
- type: Input,
46
- args: [{ alias: 'alphaTest' }]
47
- }], _scale: [{
48
- type: Input,
49
- args: [{ alias: 'scale' }]
50
- }], _map: [{
51
- type: Input,
52
- args: [{ alias: 'map' }]
53
- }], _shader: [{
54
- type: Input,
55
- args: [{ alias: 'shader' }]
56
- }], _width: [{
57
- type: Input,
58
- args: [{ alias: 'width' }]
59
- }], _height: [{
60
- type: Input,
61
- args: [{ alias: 'height' }]
62
- }] } });
63
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2hhZG93LW1lc2gtaW5wdXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL3NvYmEvc3RhZ2luZy9zcmMvc3BvdC1saWdodC9zaGFkb3ctbWVzaC1pbnB1dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNqRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQWE1QyxNQUFNLE9BQWdCLDRCQUE0QjtJQURsRDtRQUVDLFdBQU0sR0FBRyxXQUFXLENBQW9DLEVBQUUsQ0FBQyxDQUFDO1FBOEI1RCxhQUFRLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDMUMsY0FBUyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzVDLFVBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwQyxRQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDaEMsV0FBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3RDLFVBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwQyxXQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7S0FDdEM7SUFuQ0EsSUFBa0MsU0FBUyxDQUFDLFFBQWdCO1FBQzNELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBbUMsVUFBVSxDQUFDLFNBQWlCO1FBQzlELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRUQsSUFBK0IsTUFBTSxDQUFDLEtBQWE7UUFDbEQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUE2QixJQUFJLENBQUMsR0FBa0I7UUFDbkQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDO0lBQzFCLENBQUM7SUFFRCxJQUFnQyxPQUFPLENBQUMsTUFBYztRQUNyRCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDN0IsQ0FBQztJQUVELElBQStCLE1BQU0sQ0FBQyxLQUFhO1FBQ2xELElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUM1QixDQUFDO0lBRUQsSUFBZ0MsT0FBTyxDQUFDLE1BQWM7UUFDckQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzdCLENBQUM7OEdBN0JvQiw0QkFBNEI7a0dBQTVCLDRCQUE0Qjs7MkZBQTVCLDRCQUE0QjtrQkFEakQsU0FBUzs4QkFJeUIsU0FBUztzQkFBMUMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxVQUFVLEVBQUU7Z0JBSU8sVUFBVTtzQkFBNUMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUU7Z0JBSUUsTUFBTTtzQkFBcEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7Z0JBSUksSUFBSTtzQkFBaEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUU7Z0JBSVMsT0FBTztzQkFBdEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUU7Z0JBSUssTUFBTTtzQkFBcEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUU7Z0JBSU8sT0FBTztzQkFBdEMsS0FBSzt1QkFBQyxFQUFFLEtBQUssRUFBRSxRQUFRLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBzaWduYWxTdG9yZSB9IGZyb20gJ2FuZ3VsYXItdGhyZWUnO1xuXG5leHBvcnQgdHlwZSBOZ3RzU3BvdExpZ2h0U2hhZG93TWVzaElucHV0U3RhdGUgPSB7XG5cdGRpc3RhbmNlOiBudW1iZXI7XG5cdGFscGhhVGVzdDogbnVtYmVyO1xuXHRzY2FsZTogbnVtYmVyO1xuXHRtYXA6IFRIUkVFLlRleHR1cmU7XG5cdHNoYWRlcjogc3RyaW5nO1xuXHR3aWR0aDogbnVtYmVyO1xuXHRoZWlnaHQ6IG51bWJlcjtcbn07XG5cbkBEaXJlY3RpdmUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIE5ndHNTcG90TGlnaHRTaGFkb3dNZXNoSW5wdXQge1xuXHRpbnB1dHMgPSBzaWduYWxTdG9yZTxOZ3RzU3BvdExpZ2h0U2hhZG93TWVzaElucHV0U3RhdGU+KHt9KTtcblxuXHRASW5wdXQoeyBhbGlhczogJ2Rpc3RhbmNlJyB9KSBzZXQgX2Rpc3RhbmNlKGRpc3RhbmNlOiBudW1iZXIpIHtcblx0XHR0aGlzLmlucHV0cy5zZXQoeyBkaXN0YW5jZSB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAnYWxwaGFUZXN0JyB9KSBzZXQgX2FscGhhVGVzdChhbHBoYVRlc3Q6IG51bWJlcikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IGFscGhhVGVzdCB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAnc2NhbGUnIH0pIHNldCBfc2NhbGUoc2NhbGU6IG51bWJlcikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IHNjYWxlIH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdtYXAnIH0pIHNldCBfbWFwKG1hcDogVEhSRUUuVGV4dHVyZSkge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IG1hcCB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAnc2hhZGVyJyB9KSBzZXQgX3NoYWRlcihzaGFkZXI6IHN0cmluZykge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IHNoYWRlciB9KTtcblx0fVxuXG5cdEBJbnB1dCh7IGFsaWFzOiAnd2lkdGgnIH0pIHNldCBfd2lkdGgod2lkdGg6IG51bWJlcikge1xuXHRcdHRoaXMuaW5wdXRzLnNldCh7IHdpZHRoIH0pO1xuXHR9XG5cblx0QElucHV0KHsgYWxpYXM6ICdoZWlnaHQnIH0pIHNldCBfaGVpZ2h0KGhlaWdodDogbnVtYmVyKSB7XG5cdFx0dGhpcy5pbnB1dHMuc2V0KHsgaGVpZ2h0IH0pO1xuXHR9XG5cblx0ZGlzdGFuY2UgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ2Rpc3RhbmNlJyk7XG5cdGFscGhhVGVzdCA9IHRoaXMuaW5wdXRzLnNlbGVjdCgnYWxwaGFUZXN0Jyk7XG5cdHNjYWxlID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdzY2FsZScpO1xuXHRtYXAgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ21hcCcpO1xuXHRzaGFkZXIgPSB0aGlzLmlucHV0cy5zZWxlY3QoJ3NoYWRlcicpO1xuXHR3aWR0aCA9IHRoaXMuaW5wdXRzLnNlbGVjdCgnd2lkdGgnKTtcblx0aGVpZ2h0ID0gdGhpcy5pbnB1dHMuc2VsZWN0KCdoZWlnaHQnKTtcbn1cbiJdfQ==