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 +0,0 @@
1
- {"version":3,"file":"angular-three-soba-performances.mjs","sources":["../../../../libs/soba/performances/src/adaptive-dpr/adaptive-dpr.ts","../../../../libs/soba/performances/src/adaptive-events/adaptive-events.ts","../../../../libs/soba/performances/src/instances/position-mesh.ts","../../../../libs/soba/performances/src/instances/instances.ts","../../../../libs/soba/performances/src/points/points-input.ts","../../../../libs/soba/performances/src/points/position-point.ts","../../../../libs/soba/performances/src/points/points.ts","../../../../libs/soba/performances/src/segments/segment-object.ts","../../../../libs/soba/performances/src/segments/segments.ts","../../../../libs/soba/performances/src/angular-three-soba-performances.ts"],"sourcesContent":["import { Directive, Input, effect, signal, untracked } from '@angular/core';\nimport { injectNgtStore } from 'angular-three';\n\n@Directive({ selector: 'ngts-adaptive-dpr', standalone: true })\nexport class NgtsAdaptiveDpr {\n\tprivate pixelated = signal(false);\n\t@Input({ alias: 'pixelated' }) set _pixelated(pixelated: boolean) {\n\t\tthis.pixelated.set(pixelated);\n\t}\n\n\tprivate store = injectNgtStore();\n\tprivate current = this.store.select('performance', 'current');\n\tprivate active = this.store.get('internal', 'active');\n\tprivate setDpr = this.store.get('setDpr');\n\tprivate initialDpr = this.store.get('viewport', 'initialDpr');\n\tprivate domElement = this.store.get('gl', 'domElement');\n\n\tconstructor() {\n\t\teffect((onCleanup) => {\n\t\t\tonCleanup(() => {\n\t\t\t\tif (this.active) {\n\t\t\t\t\tthis.setDpr(this.initialDpr);\n\t\t\t\t}\n\t\t\t\tif (this.pixelated() && this.domElement) {\n\t\t\t\t\tthis.domElement.style.imageRendering = 'auto';\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\n\t\teffect(() => {\n\t\t\tconst current = this.current();\n\t\t\tthis.setDpr(current * this.initialDpr);\n\t\t\tif (untracked(this.pixelated) && this.domElement) {\n\t\t\t\tthis.domElement.style.imageRendering = current === 1 ? 'auto' : 'pixelated';\n\t\t\t}\n\t\t});\n\t}\n}\n","import { Directive, effect } from '@angular/core';\nimport { injectNgtStore } from 'angular-three';\n\n@Directive({ selector: 'ngts-adaptive-events', standalone: true })\nexport class NgtsAdaptiveEvents {\n\tprivate store = injectNgtStore();\n\tprivate setEvents = this.store.get('setEvents');\n\tprivate current = this.store.select('performance', 'current');\n\n\tconstructor() {\n\t\teffect((onCleanup) => {\n\t\t\tconst enabled = this.store.get('events', 'enabled');\n\t\t\tonCleanup(() => {\n\t\t\t\tthis.setEvents({ enabled });\n\t\t\t});\n\t\t});\n\n\t\teffect(() => {\n\t\t\tconst current = this.current();\n\t\t\tthis.setEvents({ enabled: current === 1 });\n\t\t});\n\t}\n}\n","import { ElementRef } from '@angular/core';\nimport * as THREE from 'three';\n\nconst _instanceLocalMatrix = /*@__PURE__*/ new THREE.Matrix4();\nconst _instanceWorldMatrix = /*@__PURE__*/ new THREE.Matrix4();\nconst _instanceIntersects: THREE.Intersection[] = /*@__PURE__*/ [];\nconst _mesh = /*@__PURE__*/ new THREE.Mesh<THREE.BufferGeometry, THREE.MeshBasicMaterial>();\n\nexport class PositionMesh extends THREE.Group {\n\tcolor: THREE.Color;\n\tinstance: ElementRef<THREE.InstancedMesh | undefined>;\n\tinstanceKey: ElementRef<PositionMesh | undefined>;\n\tconstructor() {\n\t\tsuper();\n\t\tthis.color = new THREE.Color('white');\n\t\tthis.instance = new ElementRef(undefined);\n\t\tthis.instanceKey = new ElementRef(undefined);\n\t}\n\n\t// This will allow the virtual instance have bounds\n\tget geometry() {\n\t\treturn this.instance.nativeElement?.geometry;\n\t}\n\n\t// And this will allow the virtual instance to receive events\n\toverride raycast(raycaster: THREE.Raycaster, intersects: THREE.Intersection[]) {\n\t\tconst parent = this.instance.nativeElement;\n\t\tif (!parent) return;\n\t\tif (!parent.geometry || !parent.material) return;\n\t\t_mesh.geometry = parent.geometry;\n\t\tconst matrixWorld = parent.matrixWorld;\n\t\tconst instanceId = parent.userData['instances'].indexOf(this.instanceKey);\n\t\t// If the instance wasn't found or exceeds the parents draw range, bail out\n\t\tif (instanceId === -1 || instanceId > parent.count) return;\n\t\t// calculate the world matrix for each instance\n\t\tparent.getMatrixAt(instanceId, _instanceLocalMatrix);\n\t\t_instanceWorldMatrix.multiplyMatrices(matrixWorld, _instanceLocalMatrix);\n\t\t// the mesh represents this single instance\n\t\t_mesh.matrixWorld = _instanceWorldMatrix;\n\t\t// raycast side according to instance material\n\t\tif (parent.material instanceof THREE.Material) _mesh.material.side = parent.material.side;\n\t\telse _mesh.material.side = parent.material[0].side;\n\t\t_mesh.raycast(raycaster, _instanceIntersects);\n\t\t// process the result of raycast\n\t\tfor (let i = 0, l = _instanceIntersects.length; i < l; i++) {\n\t\t\tconst intersect = _instanceIntersects[i];\n\t\t\tintersect.instanceId = instanceId;\n\t\t\tintersect.object = this;\n\t\t\tintersects.push(intersect);\n\t\t}\n\t\t_instanceIntersects.length = 0;\n\t}\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n\tComponent,\n\tcomputed,\n\tContentChild,\n\tCUSTOM_ELEMENTS_SCHEMA,\n\teffect,\n\tforwardRef,\n\tinject,\n\tInjector,\n\tInput,\n\tNgZone,\n\tsignal,\n\tTemplateRef,\n\tuntracked,\n} from '@angular/core';\nimport {\n\tcheckUpdate,\n\tcreateInjectionToken,\n\textend,\n\tinjectBeforeRender,\n\tinjectNgtRef,\n\tis,\n\tNgtArgs,\n\tsignalStore,\n\ttype NgtGroup,\n\ttype NgtInstancedMesh,\n\ttype NgtRef,\n} from 'angular-three';\nimport { NgtsSobaContent } from 'angular-three-soba/utils';\nimport * as THREE from 'three';\nimport { InstancedBufferAttribute, InstancedMesh } from 'three';\nimport { PositionMesh } from './position-mesh';\n\nextend({ PositionMesh, InstancedMesh, InstancedBufferAttribute });\n\nexport type NgtsInstancesState = {\n\trange?: number;\n\tlimit: number;\n\tframes: number;\n};\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t/**\n\t\t * @extends ngt-group\n\t\t */\n\t\t'ngt-position-mesh': PositionMesh & NgtGroup;\n\t\t/**\n\t\t * @extends ngt-instanced-mesh\n\t\t */\n\t\t'ngts-instances': NgtsInstancesState & NgtInstancedMesh;\n\t}\n}\n\nconst parentMatrix = /*@__PURE__*/ new THREE.Matrix4();\nconst instanceMatrix = /*@__PURE__*/ new THREE.Matrix4();\nconst tempMatrix = /*@__PURE__*/ new THREE.Matrix4();\nconst translation = /*@__PURE__*/ new THREE.Vector3();\nconst rotation = /*@__PURE__*/ new THREE.Quaternion();\nconst scale = /*@__PURE__*/ new THREE.Vector3();\n\nexport const [injectNgtsInstancesApi, provideNgtsInstancesApi] = createInjectionToken(\n\t(instances: NgtsInstances) => instances.api,\n\t{ isRoot: false, deps: [forwardRef(() => NgtsInstances)] },\n);\n\n@Component({\n\tselector: 'ngts-instance',\n\tstandalone: true,\n\ttemplate: `\n\t\t<ngt-position-mesh\n\t\t\t[ref]=\"instanceRef\"\n\t\t\t[instance]=\"instancesApi.getParent()\"\n\t\t\t[instanceKey]=\"instanceRef\"\n\t\t\tngtCompound\n\t\t>\n\t\t\t<ng-content />\n\t\t</ngt-position-mesh>\n\t`,\n\tschemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class NgtsInstance {\n\t@Input() instanceRef = injectNgtRef<PositionMesh>();\n\n\tprivate zone = inject(NgZone);\n\tprivate injector = inject(Injector);\n\tinstancesApi = injectNgtsInstancesApi();\n\n\tngOnInit() {\n\t\teffect(\n\t\t\t(onCleanup) => {\n\t\t\t\tconst cleanup = this.zone.runOutsideAngular(() => this.instancesApi.subscribe(this.instanceRef));\n\t\t\t\tonCleanup(cleanup);\n\t\t\t},\n\t\t\t{ injector: this.injector },\n\t\t);\n\t}\n}\n\n@Component({\n\tselector: 'ngts-instances',\n\tstandalone: true,\n\ttemplate: `\n\t\t<ngt-instanced-mesh\n\t\t\t[userData]=\"{ instances: meshes() }\"\n\t\t\t[ref]=\"instancesRef\"\n\t\t\t[matrixAutoUpdate]=\"false\"\n\t\t\t[raycast]=\"nullRaycast\"\n\t\t\tngtCompound\n\t\t>\n\t\t\t<ngt-instanced-buffer-attribute\n\t\t\t\t*args=\"[buffers().matrices, 16]\"\n\t\t\t\tattach=\"instanceMatrix\"\n\t\t\t\t[usage]=\"DynamicDrawUsage\"\n\t\t\t/>\n\t\t\t<ngt-instanced-buffer-attribute\n\t\t\t\t*args=\"[buffers().colors, 3]\"\n\t\t\t\tattach=\"instanceColor\"\n\t\t\t\t[usage]=\"DynamicDrawUsage\"\n\t\t\t/>\n\t\t\t<ng-container *ngTemplateOutlet=\"content\" />\n\t\t</ngt-instanced-mesh>\n\t`,\n\timports: [NgtArgs, NgTemplateOutlet],\n\tproviders: [provideNgtsInstancesApi()],\n\tschemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class NgtsInstances {\n\tDynamicDrawUsage = THREE.DynamicDrawUsage;\n\tnullRaycast = () => null;\n\n\tprivate inputs = signalStore<NgtsInstancesState>({ limit: 1000, frames: Infinity });\n\n\t@Input() instancesRef = injectNgtRef<InstancedMesh>();\n\n\t@Input({ alias: 'range' }) set _range(range: number) {\n\t\tthis.inputs.set({ range });\n\t}\n\n\t@Input({ alias: 'limit' }) set _limit(limit: number) {\n\t\tthis.inputs.set({ limit });\n\t}\n\n\t@Input({ alias: 'frames' }) set _frames(frames: number) {\n\t\tthis.inputs.set({ frames });\n\t}\n\n\t@ContentChild(NgtsSobaContent, { static: true, read: TemplateRef }) content!: TemplateRef<unknown>;\n\n\tprivate limit = this.inputs.select('limit');\n\n\tprivate positionMeshes = signal<NgtRef<PositionMesh>[]>([]);\n\tmeshes = this.positionMeshes.asReadonly();\n\n\tbuffers = computed(() => {\n\t\tconst limit = this.limit();\n\t\tconst matrices = new Float32Array(limit * 16);\n\n\t\tfor (let i = 0; i < limit; i++) {\n\t\t\ttempMatrix.identity().toArray(matrices, i * 16);\n\t\t}\n\n\t\tconst colors = new Float32Array([...Array.from({ length: limit * 3 }, () => 1)]);\n\t\treturn { matrices, colors };\n\t});\n\n\tapi = {\n\t\tgetParent: () => this.instancesRef,\n\t\tsubscribe: (meshRef: NgtRef<PositionMesh>) => {\n\t\t\tuntracked(() => {\n\t\t\t\tthis.positionMeshes.update((s) => [...s, meshRef]);\n\t\t\t});\n\t\t\treturn () => {\n\t\t\t\tuntracked(() => {\n\t\t\t\t\tthis.positionMeshes.update((s) => s.filter((positionMesh) => positionMesh !== meshRef));\n\t\t\t\t});\n\t\t\t};\n\t\t},\n\t};\n\n\tconstructor() {\n\t\tthis.checkUpdate();\n\t\tthis.beforeRender();\n\t}\n\n\tprivate checkUpdate() {\n\t\teffect(() => {\n\t\t\tconst instancedMesh = this.instancesRef.nativeElement;\n\t\t\tif (!instancedMesh) return;\n\t\t\t// NOTE: not sure why matrices ends up a different instance than array\n\t\t\t// we reassign it here\n\t\t\tinstancedMesh.instanceMatrix.array = untracked(this.buffers).matrices;\n\t\t\tcheckUpdate(instancedMesh.instanceMatrix);\n\t\t});\n\t}\n\n\tprivate beforeRender() {\n\t\tlet count = 0;\n\t\tlet updateRange = 0;\n\t\tinjectBeforeRender(() => {\n\t\t\tconst [{ frames, limit, range }, instancedMesh, instances, { matrices, colors }] = [\n\t\t\t\tthis.inputs.get(),\n\t\t\t\tthis.instancesRef.nativeElement,\n\t\t\t\tthis.meshes(),\n\t\t\t\tthis.buffers(),\n\t\t\t];\n\t\t\tif ((frames === Infinity || count < frames) && instancedMesh) {\n\t\t\t\tinstancedMesh.updateMatrix();\n\t\t\t\tinstancedMesh.updateMatrixWorld();\n\t\t\t\tparentMatrix.copy(instancedMesh.matrixWorld).invert();\n\n\t\t\t\tupdateRange = Math.min(limit, range !== undefined ? range : limit, instances.length);\n\t\t\t\tinstancedMesh.count = updateRange;\n\t\t\t\tinstancedMesh.instanceMatrix.updateRange.count = updateRange * 16;\n\t\t\t\tif (instancedMesh.instanceColor) {\n\t\t\t\t\tinstancedMesh.instanceColor.updateRange.count = updateRange * 3;\n\t\t\t\t}\n\n\t\t\t\tfor (let i = 0; i < instances.length; i++) {\n\t\t\t\t\tconst instanceRef = instances[i];\n\t\t\t\t\tconst instance = is.ref(instanceRef) ? instanceRef.nativeElement : instanceRef;\n\t\t\t\t\t// Multiply the inverse of the InstancedMesh world matrix or else\n\t\t\t\t\t// Instances will be double-transformed if <Instances> isn't at identity\n\t\t\t\t\tinstance.matrixWorld.decompose(translation, rotation, scale);\n\t\t\t\t\tinstanceMatrix.compose(translation, rotation, scale).premultiply(parentMatrix);\n\t\t\t\t\tinstanceMatrix.toArray(matrices, i * 16);\n\t\t\t\t\tcheckUpdate(instancedMesh.instanceMatrix);\n\t\t\t\t\tinstance.color.toArray(colors, i * 3);\n\t\t\t\t\tcheckUpdate(instancedMesh.instanceColor);\n\t\t\t\t}\n\t\t\t\tcount++;\n\t\t\t}\n\t\t});\n\t}\n}\n","import { Directive, Input, computed } from '@angular/core';\nimport { injectNgtRef, signalStore } from 'angular-three';\nimport type { Points } from 'three';\n\nexport type NgtsPointsInstancesState = {\n\tlimit: number;\n\trange?: number;\n};\n\nexport type NgtsPointsBuffersState = {\n\t// a buffer containing all points position\n\tpositions: Float32Array;\n\tcolors?: Float32Array;\n\tsizes?: Float32Array;\n\t// The size of the points in the buffer\n\tstride: 2 | 3;\n};\n\n@Directive()\nexport abstract class NgtsPointsInput {\n\tprotected inputs = signalStore<NgtsPointsBuffersState & NgtsPointsInstancesState>({\n\t\tstride: 3,\n\t\tlimit: 1000,\n\t});\n\n\t@Input() pointsRef = injectNgtRef<Points>();\n\n\t@Input({ alias: 'range' }) set _range(range: number) {\n\t\tthis.inputs.set({ range });\n\t}\n\n\t@Input({ alias: 'limit' }) set _limit(limit: number) {\n\t\tthis.inputs.set({ limit });\n\t}\n\n\t@Input({ alias: 'positions' }) set _positions(positions: Float32Array) {\n\t\tthis.inputs.set({ positions });\n\t}\n\n\t@Input({ alias: 'colors' }) set _colors(colors: Float32Array) {\n\t\tthis.inputs.set({ colors });\n\t}\n\n\t@Input({ alias: 'sizes' }) set _sizes(sizes: Float32Array) {\n\t\tthis.inputs.set({ sizes });\n\t}\n\n\t@Input({ alias: 'stride' }) set _stride(stride: 2 | 3) {\n\t\tthis.inputs.set({ stride });\n\t}\n\n\tlimit = this.inputs.select('limit');\n\trange = this.inputs.select('range');\n\tpositions = this.inputs.select('positions');\n\tcolors = this.inputs.select('colors');\n\tcolorsLength = computed(() => this.colors()?.length || 0);\n\tsizes = this.inputs.select('sizes');\n\tsizesLength = computed(() => this.sizes()?.length || 0);\n\tstride = this.inputs.select('stride');\n}\n","import { ElementRef } from '@angular/core';\nimport * as THREE from 'three';\n\nconst _inverseMatrix = /*@__PURE__*/ new THREE.Matrix4();\nconst _ray = /*@__PURE__*/ new THREE.Ray();\nconst _sphere = /*@__PURE__*/ new THREE.Sphere();\nconst _position = /*@__PURE__*/ new THREE.Vector3();\n\nexport class PositionPoint extends THREE.Group {\n\tsize: number;\n\tcolor: THREE.Color;\n\tinstance: ElementRef<THREE.Points | undefined>;\n\tinstanceKey: ElementRef<PositionPoint | undefined>;\n\n\tconstructor() {\n\t\tsuper();\n\t\tthis.size = 0;\n\t\tthis.color = new THREE.Color('white');\n\t\tthis.instance = new ElementRef(undefined);\n\t\tthis.instanceKey = new ElementRef(undefined);\n\t}\n\n\t// This will allow the virtual instance have bounds\n\tget geometry() {\n\t\treturn this.instance.nativeElement?.geometry;\n\t}\n\n\toverride raycast(raycaster: THREE.Raycaster, intersects: THREE.Intersection[]) {\n\t\tconst parent = this.instance.nativeElement;\n\t\tif (!parent || !parent.geometry) return;\n\t\tconst instanceId = parent.userData['instances'].indexOf(this.instanceKey);\n\t\t// If the instance wasn't found or exceeds the parents draw range, bail out\n\t\tif (instanceId === -1 || instanceId > parent.geometry.drawRange.count) return;\n\n\t\tconst threshold = raycaster.params.Points?.threshold ?? 1;\n\t\t_sphere.set(this.getWorldPosition(_position), threshold);\n\t\tif (raycaster.ray.intersectsSphere(_sphere) === false) return;\n\n\t\t_inverseMatrix.copy(parent.matrixWorld).invert();\n\t\t_ray.copy(raycaster.ray).applyMatrix4(_inverseMatrix);\n\n\t\tconst localThreshold = threshold / ((this.scale.x + this.scale.y + this.scale.z) / 3);\n\t\tconst localThresholdSq = localThreshold * localThreshold;\n\t\tconst rayPointDistanceSq = _ray.distanceSqToPoint(this.position);\n\n\t\tif (rayPointDistanceSq < localThresholdSq) {\n\t\t\tconst intersectPoint = new THREE.Vector3();\n\t\t\t_ray.closestPointToPoint(this.position, intersectPoint);\n\t\t\tintersectPoint.applyMatrix4(this.matrixWorld);\n\t\t\tconst distance = raycaster.ray.origin.distanceTo(intersectPoint);\n\t\t\tif (distance < raycaster.near || distance > raycaster.far) return;\n\t\t\tintersects.push({\n\t\t\t\tdistance: distance,\n\t\t\t\tdistanceToRay: Math.sqrt(rayPointDistanceSq),\n\t\t\t\tpoint: intersectPoint,\n\t\t\t\tindex: instanceId,\n\t\t\t\tface: null,\n\t\t\t\tobject: this,\n\t\t\t});\n\t\t}\n\t}\n}\n","import { NgIf, NgTemplateOutlet } from '@angular/common';\nimport {\n\tCUSTOM_ELEMENTS_SCHEMA,\n\tComponent,\n\tContentChild,\n\tInjector,\n\tInput,\n\tNgZone,\n\tTemplateRef,\n\tcomputed,\n\teffect,\n\tforwardRef,\n\tinject,\n\tsignal,\n\tuntracked,\n\ttype OnInit,\n} from '@angular/core';\nimport {\n\tcheckUpdate,\n\tcreateInjectionToken,\n\textend,\n\tinjectBeforeRender,\n\tinjectNgtRef,\n\tinjectNgtStore,\n\tis,\n\ttype NgtGroup,\n\ttype NgtPoints,\n\ttype NgtRef,\n} from 'angular-three';\nimport { NgtsSobaContent } from 'angular-three-soba/utils';\nimport * as THREE from 'three';\nimport { BufferAttribute, BufferGeometry, Points } from 'three';\nimport { NgtsPointsInput, type NgtsPointsBuffersState, type NgtsPointsInstancesState } from './points-input';\nimport { PositionPoint } from './position-point';\n\nextend({ Points, BufferGeometry, BufferAttribute, PositionPoint });\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t/**\n\t\t * @extends ngt-points\n\t\t */\n\t\t'ngts-points-instances': NgtsPointsInstancesState & NgtPoints;\n\t\t/**\n\t\t * @extends ngt-points\n\t\t */\n\t\t'ngts-points-buffers': NgtsPointsBuffersState & NgtPoints;\n\t\t/**\n\t\t * @extends ngt-points\n\t\t */\n\t\t'ngts-points': (NgtsPointsBuffersState | NgtsPointsInstancesState) & NgtsPoints;\n\t\t/**\n\t\t * @extends ngt-group\n\t\t */\n\t\t'ngt-position-point': PositionPoint & NgtGroup;\n\t}\n}\n\nexport const [injectNgtsPointsInstanceApi, provideNgtsPointsInstancesApi] = createInjectionToken(\n\tfunction pointsInstancesApi(instances: NgtsPointsInstances) {\n\t\treturn instances.api;\n\t},\n\t{ isRoot: false, deps: [forwardRef(() => NgtsPointsInstances)] },\n);\n\n@Component({\n\tselector: 'ngts-points-instances',\n\tstandalone: true,\n\ttemplate: `\n\t\t<ngt-points\n\t\t\t[ref]=\"pointsInput.pointsRef\"\n\t\t\t[userData]=\"{ instances: points() }\"\n\t\t\t[matrixAutoUpdate]=\"false\"\n\t\t\t[raycast]=\"nullRaycast\"\n\t\t\tngtCompound\n\t\t>\n\t\t\t<ngt-buffer-geometry>\n\t\t\t\t<ngt-buffer-attribute\n\t\t\t\t\tattach=\"attributes.position\"\n\t\t\t\t\t[count]=\"positions().length / 3\"\n\t\t\t\t\t[array]=\"positions()\"\n\t\t\t\t\t[itemSize]=\"3\"\n\t\t\t\t\t[usage]=\"DynamicDrawUsage\"\n\t\t\t\t/>\n\t\t\t\t<ngt-buffer-attribute\n\t\t\t\t\tattach=\"attributes.color\"\n\t\t\t\t\t[count]=\"colors().length / 3\"\n\t\t\t\t\t[array]=\"colors()\"\n\t\t\t\t\t[itemSize]=\"3\"\n\t\t\t\t\t[usage]=\"DynamicDrawUsage\"\n\t\t\t\t/>\n\t\t\t\t<ngt-buffer-attribute\n\t\t\t\t\tattach=\"attributes.size\"\n\t\t\t\t\t[count]=\"sizes().length\"\n\t\t\t\t\t[array]=\"sizes()\"\n\t\t\t\t\t[itemSize]=\"1\"\n\t\t\t\t\t[usage]=\"DynamicDrawUsage\"\n\t\t\t\t/>\n\t\t\t</ngt-buffer-geometry>\n\t\t\t<ng-content />\n\t\t</ngt-points>\n\t`,\n\tproviders: [provideNgtsPointsInstancesApi()],\n\tschemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class NgtsPointsInstances {\n\tnullRaycast = () => null;\n\tDynamicDrawUsage = THREE.DynamicDrawUsage;\n\n\tpointsInput = inject(NgtsPointsInput);\n\n\tprivate positionPoints = signal<NgtRef<PositionPoint>[]>([]);\n\tprivate parentMatrix = new THREE.Matrix4();\n\tprivate position = new THREE.Vector3();\n\n\tpoints = this.positionPoints.asReadonly();\n\tpositions = computed(() => new Float32Array(this.pointsInput.limit() * 3));\n\tcolors = computed(() => Float32Array.from({ length: this.pointsInput.limit() * 3 }, () => 1));\n\tsizes = computed(() => Float32Array.from({ length: this.pointsInput.limit() }, () => 1));\n\n\tinjector = inject(Injector);\n\n\tapi = {\n\t\tgetParent: () => this.pointsInput.pointsRef,\n\t\tsubscribe: (pointRef: NgtRef<PositionPoint>) => {\n\t\t\tuntracked(() => {\n\t\t\t\tthis.positionPoints.update((s) => [...s, pointRef]);\n\t\t\t});\n\t\t\treturn () => {\n\t\t\t\tuntracked(() => {\n\t\t\t\t\tthis.positionPoints.update((s) => s.filter((positionPoint) => positionPoint !== pointRef));\n\t\t\t\t});\n\t\t\t};\n\t\t},\n\t};\n\n\tconstructor() {\n\t\tthis.checkUpdatePositionAttribute();\n\t\tthis.beforeRender();\n\t}\n\n\tprivate checkUpdatePositionAttribute() {\n\t\teffect(() => {\n\t\t\tconst points = this.pointsInput.pointsRef.nativeElement;\n\t\t\tif (!points) return;\n\t\t\tcheckUpdate(points.geometry.attributes['position']);\n\t\t});\n\t}\n\n\tprivate beforeRender() {\n\t\tinjectBeforeRender(() => {\n\t\t\tconst points = this.pointsInput.pointsRef.nativeElement;\n\t\t\tif (!points) return;\n\t\t\tconst [limit, range, positionPoints, positions, colors, sizes] = [\n\t\t\t\tthis.pointsInput.limit(),\n\t\t\t\tthis.pointsInput.range(),\n\t\t\t\tthis.positionPoints(),\n\t\t\t\tthis.positions(),\n\t\t\t\tthis.colors(),\n\t\t\t\tthis.sizes(),\n\t\t\t];\n\n\t\t\tpoints.updateMatrix();\n\t\t\tpoints.updateMatrixWorld();\n\t\t\tthis.parentMatrix.copy(points.matrixWorld).invert();\n\n\t\t\tpoints.geometry.drawRange.count = Math.min(\n\t\t\t\tlimit,\n\t\t\t\trange !== undefined ? range : limit,\n\t\t\t\tpositionPoints.length,\n\t\t\t);\n\n\t\t\tfor (let i = 0; i < positionPoints.length; i++) {\n\t\t\t\tconst positionPointRef = positionPoints[i];\n\t\t\t\tconst positionPoint = is.ref(positionPointRef) ? positionPointRef.nativeElement : positionPointRef;\n\t\t\t\tif (!positionPoint) continue;\n\t\t\t\tpositionPoint.getWorldPosition(this.position).applyMatrix4(this.parentMatrix);\n\t\t\t\tthis.position.toArray(positions, i * 3);\n\t\t\t\tcheckUpdate(points.geometry.attributes['position']);\n\t\t\t\tpositionPoint.matrixWorldNeedsUpdate = true;\n\n\t\t\t\tpositionPoint.color.toArray(colors, i * 3);\n\t\t\t\tcheckUpdate(points.geometry.attributes['color']);\n\n\t\t\t\tsizes.set([positionPoint.size], i);\n\t\t\t\tcheckUpdate(points.geometry.attributes['size']);\n\t\t\t}\n\t\t});\n\t}\n}\n\n@Component({\n\tselector: 'ngts-point',\n\tstandalone: true,\n\ttemplate: `\n\t\t<ngt-position-point\n\t\t\t[instance]=\"pointsInstancesApi.getParent()\"\n\t\t\t[ref]=\"pointRef\"\n\t\t\t[instanceKey]=\"pointRef\"\n\t\t\tngtCompound\n\t\t>\n\t\t\t<ng-content />\n\t\t</ngt-position-point>\n\t`,\n\tschemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class NgtsPoint implements OnInit {\n\t@Input() pointRef = injectNgtRef<PositionPoint>();\n\n\tprivate zone = inject(NgZone);\n\tprivate injector = inject(Injector);\n\tpointsInstancesApi = injectNgtsPointsInstanceApi();\n\n\tngOnInit() {\n\t\teffect(\n\t\t\t(onCleanup) => {\n\t\t\t\tconst cleanup = this.zone.runOutsideAngular(() => this.pointsInstancesApi.subscribe(this.pointRef));\n\t\t\t\tonCleanup(cleanup);\n\t\t\t},\n\t\t\t{ injector: this.injector },\n\t\t);\n\t}\n}\n\n@Component({\n\tselector: 'ngts-points-buffers',\n\tstandalone: true,\n\ttemplate: `\n\t\t<ngt-points [ref]=\"pointsInput.pointsRef\" ngtCompound>\n\t\t\t<ngt-buffer-geometry>\n\t\t\t\t<ngt-buffer-attribute\n\t\t\t\t\tattach=\"attributes.position\"\n\t\t\t\t\t[count]=\"pointsInput.positions().length / pointsInput.stride()\"\n\t\t\t\t\t[array]=\"pointsInput.positions()\"\n\t\t\t\t\t[itemSize]=\"pointsInput.stride()\"\n\t\t\t\t\t[usage]=\"DynamicDrawUsage\"\n\t\t\t\t/>\n\t\t\t\t<ngt-buffer-attribute\n\t\t\t\t\tattach=\"attributes.color\"\n\t\t\t\t\t[count]=\"pointsInput.colorsLength() / pointsInput.stride()\"\n\t\t\t\t\t[array]=\"pointsInput.colors()\"\n\t\t\t\t\t[itemSize]=\"pointsInput.stride()\"\n\t\t\t\t\t[usage]=\"DynamicDrawUsage\"\n\t\t\t\t/>\n\t\t\t\t<ngt-buffer-attribute\n\t\t\t\t\tattach=\"attributes.size\"\n\t\t\t\t\t[count]=\"pointsInput.sizesLength() / pointsInput.stride()\"\n\t\t\t\t\t[array]=\"pointsInput.sizes()\"\n\t\t\t\t\t[itemSize]=\"1\"\n\t\t\t\t\t[usage]=\"DynamicDrawUsage\"\n\t\t\t\t/>\n\t\t\t</ngt-buffer-geometry>\n\t\t\t<ng-content />\n\t\t</ngt-points>\n\t`,\n\tschemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class NgtsPointsBuffers {\n\tDynamicDrawUsage = THREE.DynamicDrawUsage;\n\n\tpointsInput = inject(NgtsPointsInput);\n\n\tstore = injectNgtStore();\n\n\tconstructor() {\n\t\tinjectBeforeRender(() => {\n\t\t\tconst points = this.pointsInput.pointsRef.nativeElement;\n\t\t\tif (!points) return;\n\t\t\tconst [sizes, colors] = [this.pointsInput.sizes(), this.pointsInput.colors()];\n\t\t\tconst attr = points.geometry.attributes;\n\t\t\tcheckUpdate(attr['position']);\n\t\t\tif (colors) checkUpdate(attr['color']);\n\t\t\tif (sizes) checkUpdate(attr['size']);\n\t\t});\n\t}\n}\n\n@Component({\n\tselector: 'ngts-points',\n\tstandalone: true,\n\ttemplate: `\n\t\t<ngts-points-buffers *ngIf=\"positions()\">\n\t\t\t<ng-container *ngTemplateOutlet=\"content\" />\n\t\t</ngts-points-buffers>\n\t\t<ngts-points-instances *ngIf=\"!positions()\" #pointsInstances>\n\t\t\t<!-- NOTE: passing in the injector to templateOutlet allow the consumers to abstract ngts-point -->\n\t\t\t<ng-container *ngTemplateOutlet=\"content; injector: pointsInstances.injector\" />\n\t\t</ngts-points-instances>\n\t`,\n\timports: [NgIf, NgtsPointsBuffers, NgtsPointsInstances, NgTemplateOutlet],\n\tproviders: [{ provide: NgtsPointsInput, useExisting: NgtsPoints }],\n\tschemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class NgtsPoints extends NgtsPointsInput {\n\t@ContentChild(NgtsSobaContent, { static: true, read: TemplateRef }) content!: TemplateRef<unknown>;\n}\n","import * as THREE from 'three';\n\nexport class SegmentObject {\n\tcolor: THREE.Color;\n\tstart: THREE.Vector3;\n\tend: THREE.Vector3;\n\tconstructor() {\n\t\tthis.color = new THREE.Color('white');\n\t\tthis.start = new THREE.Vector3(0, 0, 0);\n\t\tthis.end = new THREE.Vector3(0, 0, 0);\n\t}\n}\n","import {\n\tCUSTOM_ELEMENTS_SCHEMA,\n\tComponent,\n\tInjector,\n\tInput,\n\tNgZone,\n\tcomputed,\n\teffect,\n\tforwardRef,\n\tinject,\n\tsignal,\n\tuntracked,\n\ttype OnInit,\n} from '@angular/core';\nimport {\n\tNgtArgs,\n\tcreateInjectionToken,\n\textend,\n\tinjectBeforeRender,\n\tinjectNgtRef,\n\tis,\n\tsignalStore,\n\ttype NgtColor,\n\ttype NgtRef,\n\ttype NgtVector3,\n} from 'angular-three';\nimport * as THREE from 'three';\nimport { Line2, LineMaterial, LineSegmentsGeometry } from 'three-stdlib';\nimport { SegmentObject } from './segment-object';\n\nexport type NgtsSegmentState = {\n\tstart?: NgtVector3;\n\tend?: NgtVector3;\n\tcolor?: NgtColor;\n};\n\nexport type NgtsSegmentsState = {\n\tlimit: number;\n\tlineWidth: number;\n};\n\ndeclare global {\n\tinterface HTMLElementTagNameMap {\n\t\t'ngt-segment-object': SegmentObject;\n\t\t'ngts-segment': NgtsSegmentState;\n\t\t'ngts-segments': NgtsSegmentsState;\n\t}\n}\n\nconst normPos = (pos: NgtsSegmentState['start']): SegmentObject['start'] =>\n\tpos instanceof THREE.Vector3\n\t\t? pos\n\t\t: new THREE.Vector3(...((typeof pos === 'number' ? [pos, pos, pos] : pos) as [number, number, number]));\n\nextend({ SegmentObject });\n\nexport const [injectNgtsSegmentsApi, provideNgtsSegmentsApi] = createInjectionToken(\n\t(segments: NgtsSegments) => segments.api,\n\t{ isRoot: false, deps: [forwardRef(() => NgtsSegments)] },\n);\n\n@Component({\n\tselector: 'ngts-segment',\n\tstandalone: true,\n\ttemplate: `\n\t\t<ngt-segment-object [ref]=\"segmentRef\" [color]=\"color()\" [start]=\"normalizedStart()\" [end]=\"normalizedEnd()\" />\n\t`,\n\tschemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class NgtsSegment implements OnInit {\n\tprivate inputs = signalStore<NgtsSegmentState>({});\n\n\t@Input() segmentRef = injectNgtRef<SegmentObject>();\n\n\t@Input({ alias: 'start' }) set _start(start: NgtVector3) {\n\t\tthis.inputs.set({ start });\n\t}\n\n\t@Input({ alias: 'end' }) set _end(end: NgtVector3) {\n\t\tthis.inputs.set({ end });\n\t}\n\n\t@Input({ alias: 'color' }) set _color(color: NgtColor) {\n\t\tthis.inputs.set({ color });\n\t}\n\n\tprivate segmentsApi = injectNgtsSegmentsApi();\n\tprivate injector = inject(Injector);\n\tprivate zone = inject(NgZone);\n\n\tprivate start = this.inputs.select('start');\n\tprivate end = this.inputs.select('end');\n\n\tnormalizedStart = computed(() => normPos(this.start()));\n\tnormalizedEnd = computed(() => normPos(this.end()));\n\tcolor = this.inputs.select('color');\n\n\tngOnInit() {\n\t\teffect(\n\t\t\t(onCleanup) => {\n\t\t\t\tconst cleanup = this.zone.runOutsideAngular(() => {\n\t\t\t\t\tconst api = this.segmentsApi();\n\t\t\t\t\treturn api.subscribe(this.segmentRef);\n\t\t\t\t});\n\t\t\t\tonCleanup(cleanup);\n\t\t\t},\n\t\t\t{ injector: this.injector },\n\t\t);\n\t}\n}\n\n@Component({\n\tselector: 'ngts-segments',\n\tstandalone: true,\n\ttemplate: `\n\t\t<ngt-primitive *args=\"[line]\" [ref]=\"segmentsRef\">\n\t\t\t<ngt-primitive *args=\"[geometry]\" attach=\"geometry\" />\n\t\t\t<ngt-primitive\n\t\t\t\t*args=\"[material]\"\n\t\t\t\tattach=\"material\"\n\t\t\t\tngtCompound\n\t\t\t\t[vertexColors]=\"true\"\n\t\t\t\t[resolution]=\"resolution\"\n\t\t\t\t[linewidth]=\"lineWidth()\"\n\t\t\t/>\n\t\t\t<ng-content />\n\t\t</ngt-primitive>\n\t`,\n\timports: [NgtArgs],\n\tproviders: [provideNgtsSegmentsApi()],\n\tschemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class NgtsSegments {\n\tprivate inputs = signalStore<NgtsSegmentsState>({ limit: 1000, lineWidth: 1 });\n\n\t@Input() segmentsRef = injectNgtRef<Line2>();\n\n\t@Input({ alias: 'limit' }) set _limit(limit: number) {\n\t\tthis.inputs.set({ limit });\n\t}\n\n\t@Input({ alias: 'lineWidth' }) set _lineWidth(lineWidth: number) {\n\t\tthis.inputs.set({ lineWidth });\n\t}\n\n\tprivate segments = signal<NgtRef<SegmentObject>[]>([]);\n\tprivate limit = this.inputs.select('limit');\n\n\tprivate positions = computed(() => Array(this.limit() * 6).fill(0));\n\tprivate colors = computed(() => Array(this.limit() * 6).fill(0));\n\n\tresolution = new THREE.Vector2(512, 512);\n\tlineWidth = this.inputs.select('lineWidth');\n\tline = new Line2();\n\tmaterial = new LineMaterial();\n\tgeometry = new LineSegmentsGeometry();\n\n\tapi = computed(() => ({\n\t\tsubscribe: (segmentRef: NgtRef<SegmentObject>) => {\n\t\t\tuntracked(() => {\n\t\t\t\tthis.segments.update((s) => [...s, segmentRef]);\n\t\t\t});\n\n\t\t\treturn () => {\n\t\t\t\tuntracked(() => {\n\t\t\t\t\tthis.segments.update((s) => s.filter((segment) => segment !== segmentRef));\n\t\t\t\t});\n\t\t\t};\n\t\t},\n\t}));\n\n\tconstructor() {\n\t\tthis.beforeRender();\n\t}\n\n\tprivate beforeRender() {\n\t\tinjectBeforeRender(() => {\n\t\t\tconst [segments, limit, positions, colors] = [\n\t\t\t\tthis.segments(),\n\t\t\t\tthis.limit(),\n\t\t\t\tthis.positions(),\n\t\t\t\tthis.colors(),\n\t\t\t];\n\t\t\tfor (let i = 0; i < limit; i++) {\n\t\t\t\tconst segmentRef = segments[i];\n\t\t\t\tconst segment = is.ref(segmentRef) ? segmentRef.nativeElement : segmentRef;\n\t\t\t\tif (segment) {\n\t\t\t\t\tpositions[i * 6 + 0] = segment.start.x;\n\t\t\t\t\tpositions[i * 6 + 1] = segment.start.y;\n\t\t\t\t\tpositions[i * 6 + 2] = segment.start.z;\n\n\t\t\t\t\tpositions[i * 6 + 3] = segment.end.x;\n\t\t\t\t\tpositions[i * 6 + 4] = segment.end.y;\n\t\t\t\t\tpositions[i * 6 + 5] = segment.end.z;\n\n\t\t\t\t\tcolors[i * 6 + 0] = segment.color.r;\n\t\t\t\t\tcolors[i * 6 + 1] = segment.color.g;\n\t\t\t\t\tcolors[i * 6 + 2] = segment.color.b;\n\n\t\t\t\t\tcolors[i * 6 + 3] = segment.color.r;\n\t\t\t\t\tcolors[i * 6 + 4] = segment.color.g;\n\t\t\t\t\tcolors[i * 6 + 5] = segment.color.b;\n\t\t\t\t}\n\t\t\t}\n\t\t\tthis.geometry.setColors(colors);\n\t\t\tthis.geometry.setPositions(positions);\n\t\t\tthis.line.computeLineDistances();\n\t\t});\n\t}\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,22 +0,0 @@
1
- import * as i0 from '@angular/core';
2
- import { inject, Injector, TemplateRef, Directive } from '@angular/core';
3
-
4
- class NgtsSobaContent {
5
- constructor() {
6
- this.injector = inject(Injector);
7
- this.template = inject(TemplateRef);
8
- }
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: NgtsSobaContent, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
10
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.2", type: NgtsSobaContent, isStandalone: true, selector: "ng-template[ngtsSobaContent]", exportAs: ["sobaContent"], ngImport: i0 }); }
11
- }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: NgtsSobaContent, decorators: [{
13
- type: Directive,
14
- args: [{ selector: 'ng-template[ngtsSobaContent]', standalone: true, exportAs: 'sobaContent' }]
15
- }] });
16
-
17
- /**
18
- * Generated bundle index. Do not edit.
19
- */
20
-
21
- export { NgtsSobaContent };
22
- //# sourceMappingURL=angular-three-soba-utils.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"angular-three-soba-utils.mjs","sources":["../../../../libs/soba/utils/src/content/content.ts","../../../../libs/soba/utils/src/angular-three-soba-utils.ts"],"sourcesContent":["import { Directive, Injector, TemplateRef, inject } from '@angular/core';\n\n@Directive({ selector: 'ng-template[ngtsSobaContent]', standalone: true, exportAs: 'sobaContent' })\nexport class NgtsSobaContent {\n\tinjector = inject(Injector);\n\ttemplate = inject(TemplateRef);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAGa,eAAe,CAAA;AAD5B,IAAA,WAAA,GAAA;AAEC,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC;AAC5B,QAAA,IAAA,CAAA,QAAQ,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC;AAC/B,KAAA;8GAHY,eAAe,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA,EAAA;kGAAf,eAAe,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA,EAAA;;2FAAf,eAAe,EAAA,UAAA,EAAA,CAAA;kBAD3B,SAAS;mBAAC,EAAE,QAAQ,EAAE,8BAA8B,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAA;;;ACFlG;;AAEG;;;;"}
package/gizmos/README.md DELETED
@@ -1,3 +0,0 @@
1
- # angular-three-soba/gizmos
2
-
3
- Secondary entry point of `angular-three-soba`. It can be used by importing from `angular-three-soba/gizmos`.
@@ -1,69 +0,0 @@
1
- import { EventEmitter, TemplateRef, type Signal } from '@angular/core';
2
- import { type NgtGroup } from 'angular-three';
3
- import { Group, OrthographicCamera, Vector3 } from 'three';
4
- import * as i0 from "@angular/core";
5
- export type NgtsGizmoHelperState = {
6
- alignment: 'top-left' | 'top-right' | 'bottom-right' | 'bottom-left' | 'bottom-center' | 'center-right' | 'center-left' | 'center-center' | 'top-center';
7
- margin: [number, number];
8
- renderPriority: number;
9
- autoClear?: boolean;
10
- };
11
- declare global {
12
- interface HTMLElementTagNameMap {
13
- 'ngts-gizmo-helper': NgtsGizmoHelperState & NgtGroup;
14
- }
15
- }
16
- export declare const injectNgtsGizmoHelperApi: {
17
- (): {
18
- tweenCamera: (direction: Vector3) => void;
19
- };
20
- (injectOptions: import("@angular/core").InjectOptions & {
21
- optional?: false | undefined;
22
- }): {
23
- tweenCamera: (direction: Vector3) => void;
24
- };
25
- (injectOptions: import("@angular/core").InjectOptions): {
26
- tweenCamera: (direction: Vector3) => void;
27
- } | null;
28
- }, provideNgtsGizmoHelperApi: (value?: {
29
- tweenCamera: (direction: Vector3) => void;
30
- } | undefined) => import("@angular/core").Provider;
31
- export declare class NgtsGizmoHelper {
32
- private inputs;
33
- gizmoRef: import("angular-three").NgtInjectedRef<Group>;
34
- set _alignment(alignment: 'top-left' | 'top-right' | 'bottom-right' | 'bottom-left' | 'bottom-center' | 'center-right' | 'center-left' | 'center-center' | 'top-center');
35
- set _margin(margin: [number, number]);
36
- set _renderPriority(renderPriority: number);
37
- set _autoClear(autoClear: boolean);
38
- update: EventEmitter<any>;
39
- content: TemplateRef<unknown>;
40
- private store;
41
- private mainCamera;
42
- private defaultControls;
43
- private invalidate;
44
- private size;
45
- private animating;
46
- private q1;
47
- private q2;
48
- private turnRate;
49
- private matrix;
50
- private radius;
51
- private focusPoint;
52
- private defaultUp;
53
- private target;
54
- private targetPosition;
55
- private dummy;
56
- private margin;
57
- private alignment;
58
- virtualCamRef: import("angular-three").NgtInjectedRef<OrthographicCamera>;
59
- renderPriority: Signal<number>;
60
- gizmoPosition: Signal<number[]>;
61
- api: {
62
- tweenCamera: (direction: Vector3) => void;
63
- };
64
- constructor();
65
- private trackMainCameraUp;
66
- private beforeRender;
67
- static ɵfac: i0.ɵɵFactoryDeclaration<NgtsGizmoHelper, never>;
68
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtsGizmoHelper, "ngts-gizmo-helper", never, { "gizmoRef": { "alias": "gizmoRef"; "required": false; }; "_alignment": { "alias": "alignment"; "required": false; }; "_margin": { "alias": "margin"; "required": false; }; "_renderPriority": { "alias": "renderPriority"; "required": false; }; "_autoClear": { "alias": "autoClear"; "required": false; }; }, { "update": "update"; }, ["content"], never, true, never>;
69
- }
@@ -1,12 +0,0 @@
1
- import * as THREE from 'three';
2
- export declare const colors: {
3
- bg: string;
4
- hover: string;
5
- text: string;
6
- stroke: string;
7
- };
8
- export declare const defaultFaces: string[];
9
- export declare const corners: THREE.Vector3[];
10
- export declare const cornerDimensions: [number, number, number];
11
- export declare const edges: THREE.Vector3[];
12
- export declare const edgeDimensions: [number, number, number][];
@@ -1,22 +0,0 @@
1
- import { type NgtThreeEvent } from 'angular-three';
2
- import { Vector3 } from 'three';
3
- import { NgtsGizmoViewcubeInput } from './gizmo-viewcube-input';
4
- import * as i0 from "@angular/core";
5
- export declare class NgtsGizmoViewcubeEdgeCube {
6
- private inputs;
7
- gizmoApi: {
8
- tweenCamera: (direction: Vector3) => void;
9
- };
10
- viewcubeInput: NgtsGizmoViewcubeInput;
11
- hover: import("@angular/core").WritableSignal<boolean>;
12
- set _dimensions(dimensions: [number, number, number]);
13
- set _position(position: Vector3);
14
- position: import("@angular/core").Signal<Vector3>;
15
- dimensions: import("@angular/core").Signal<[number, number, number]>;
16
- constructor();
17
- onPointerMove(event: NgtThreeEvent<PointerEvent>): void;
18
- onPointerOut(event: NgtThreeEvent<PointerEvent>): void;
19
- onClick(event: NgtThreeEvent<MouseEvent>): void;
20
- static ɵfac: i0.ɵɵFactoryDeclaration<NgtsGizmoViewcubeEdgeCube, never>;
21
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtsGizmoViewcubeEdgeCube, "ngts-gizmo-viewcube-edge-cube", never, { "_dimensions": { "alias": "dimensions"; "required": true; }; "_position": { "alias": "position"; "required": true; }; }, {}, never, never, true, never>;
22
- }
@@ -1,29 +0,0 @@
1
- import { type NgtThreeEvent } from 'angular-three';
2
- import { CanvasTexture } from 'three';
3
- import { NgtsGizmoViewcubeInput } from './gizmo-viewcube-input';
4
- import * as i0 from "@angular/core";
5
- export declare class NgtsGizmoViewcubeFaceMaterial {
6
- private inputs;
7
- private document;
8
- private store;
9
- gl: import("@angular/core").Signal<import("three").WebGLRenderer>;
10
- viewcubeInput: NgtsGizmoViewcubeInput;
11
- set _index(index: number);
12
- set _hover(hover: boolean);
13
- index: import("@angular/core").Signal<number>;
14
- hover: import("@angular/core").Signal<boolean>;
15
- texture: import("@angular/core").Signal<CanvasTexture>;
16
- constructor();
17
- static ɵfac: i0.ɵɵFactoryDeclaration<NgtsGizmoViewcubeFaceMaterial, never>;
18
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtsGizmoViewcubeFaceMaterial, "ngts-gizmo-viewcube-face-material", never, { "_index": { "alias": "index"; "required": true; }; "_hover": { "alias": "hover"; "required": true; }; }, {}, never, never, true, never>;
19
- }
20
- export declare class NgtsGizmoViewcubeFaceCube {
21
- private gizmoApi;
22
- private viewcubeInput;
23
- hover: import("@angular/core").WritableSignal<number>;
24
- onPointerMove(event: NgtThreeEvent<PointerEvent>): void;
25
- onPointerOut(event: NgtThreeEvent<PointerEvent>): void;
26
- onClick(event: NgtThreeEvent<MouseEvent>): void;
27
- static ɵfac: i0.ɵɵFactoryDeclaration<NgtsGizmoViewcubeFaceCube, never>;
28
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtsGizmoViewcubeFaceCube, "ngts-gizmo-viewcube-face-cube", never, {}, {}, never, never, true, never>;
29
- }
@@ -1,33 +0,0 @@
1
- import { EventEmitter } from '@angular/core';
2
- import { type NgtThreeEvent } from 'angular-three';
3
- import * as i0 from "@angular/core";
4
- export type NgtsGizmoViewCubeInputState = {
5
- opacity: number;
6
- hoverColor: string;
7
- textColor: string;
8
- strokeColor: string;
9
- faces: string[];
10
- font?: string;
11
- color?: string;
12
- clickEmitter: EventEmitter<NgtThreeEvent<MouseEvent>>;
13
- };
14
- export declare abstract class NgtsGizmoViewcubeInput {
15
- inputs: import("angular-three").NgtSignalStore<NgtsGizmoViewCubeInputState>;
16
- set _opacity(opacity: number);
17
- set _hoverColor(hoverColor: string);
18
- set _textColor(textColor: string);
19
- set _strokeColor(strokeColor: string);
20
- set _faces(faces: string[]);
21
- set _font(font: string);
22
- set _color(color: string);
23
- viewcubeClick: EventEmitter<NgtThreeEvent<MouseEvent>>;
24
- hoverColor: import("@angular/core").Signal<string>;
25
- opacity: import("@angular/core").Signal<number>;
26
- textColor: import("@angular/core").Signal<string>;
27
- strokeColor: import("@angular/core").Signal<string>;
28
- faces: import("@angular/core").Signal<string[]>;
29
- font: import("@angular/core").Signal<string | undefined>;
30
- color: import("@angular/core").Signal<string | undefined>;
31
- static ɵfac: i0.ɵɵFactoryDeclaration<NgtsGizmoViewcubeInput, never>;
32
- static ɵdir: i0.ɵɵDirectiveDeclaration<NgtsGizmoViewcubeInput, never, never, { "_opacity": { "alias": "opacity"; "required": false; }; "_hoverColor": { "alias": "hoverColor"; "required": false; }; "_textColor": { "alias": "textColor"; "required": false; }; "_strokeColor": { "alias": "strokeColor"; "required": false; }; "_faces": { "alias": "faces"; "required": false; }; "_font": { "alias": "font"; "required": false; }; "_color": { "alias": "color"; "required": false; }; }, { "viewcubeClick": "viewcubeClick"; }, never, never, false, never>;
33
- }
@@ -1,10 +0,0 @@
1
- import { NgtsGizmoViewcubeInput } from './gizmo-viewcube-input';
2
- import * as i0 from "@angular/core";
3
- export declare class NgtsGizmoViewcube extends NgtsGizmoViewcubeInput {
4
- edges: import("three").Vector3[];
5
- edgeDimensions: [number, number, number][];
6
- corners: import("three").Vector3[];
7
- cornerDimensions: [number, number, number];
8
- static ɵfac: i0.ɵɵFactoryDeclaration<NgtsGizmoViewcube, never>;
9
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtsGizmoViewcube, "ngts-gizmo-viewcube", never, {}, {}, never, never, true, never>;
10
- }
@@ -1,40 +0,0 @@
1
- import { EventEmitter } from '@angular/core';
2
- import { type NgtThreeEvent } from 'angular-three';
3
- import { CanvasTexture } from 'three';
4
- import * as i0 from "@angular/core";
5
- export declare class NgtsGizmoViewportAxis {
6
- private inputs;
7
- set _color(color: string);
8
- set _rotation(rotation: [number, number, number]);
9
- set _scale(scale: [number, number, number]);
10
- rotation: import("@angular/core").Signal<[number, number, number]>;
11
- color: import("@angular/core").Signal<string>;
12
- scale: import("@angular/core").Signal<[number, number, number]>;
13
- static ɵfac: i0.ɵɵFactoryDeclaration<NgtsGizmoViewportAxis, never>;
14
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtsGizmoViewportAxis, "ngts-gizmo-viewport-axis", never, { "_color": { "alias": "color"; "required": true; }; "_rotation": { "alias": "rotation"; "required": true; }; "_scale": { "alias": "scale"; "required": false; }; }, {}, never, never, true, never>;
15
- }
16
- export declare class NgtsGizmoViewportAxisHead {
17
- private inputs;
18
- private document;
19
- private store;
20
- capabilities: import("@angular/core").Signal<import("three").WebGLCapabilities>;
21
- set _arcStyle(arcStyle: string);
22
- set _label(label: string);
23
- set _labelColor(labelColor: string);
24
- set _axisHeadScale(axisHeadScale: number);
25
- set _disabled(disabled: boolean);
26
- set _font(font: string);
27
- viewportClickEmitter?: EventEmitter<NgtThreeEvent<MouseEvent>>;
28
- active: import("@angular/core").WritableSignal<boolean>;
29
- private arcStyle;
30
- private labelColor;
31
- private font;
32
- private axisHeadScale;
33
- label: import("@angular/core").Signal<string>;
34
- texture: import("@angular/core").Signal<CanvasTexture>;
35
- scale: import("@angular/core").Signal<number>;
36
- onPointerOver(event: NgtThreeEvent<PointerEvent>): void;
37
- onPointerOut(event: NgtThreeEvent<PointerEvent>): void;
38
- static ɵfac: i0.ɵɵFactoryDeclaration<NgtsGizmoViewportAxisHead, never>;
39
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtsGizmoViewportAxisHead, "ngts-gizmo-viewport-axis-head", never, { "_arcStyle": { "alias": "arcStyle"; "required": false; }; "_label": { "alias": "label"; "required": false; }; "_labelColor": { "alias": "labelColor"; "required": false; }; "_axisHeadScale": { "alias": "axisHeadScale"; "required": false; }; "_disabled": { "alias": "disabled"; "required": false; }; "_font": { "alias": "font"; "required": false; }; "viewportClickEmitter": { "alias": "viewportClickEmitter"; "required": false; }; }, {}, never, never, true, never>;
40
- }
@@ -1,30 +0,0 @@
1
- import { EventEmitter } from '@angular/core';
2
- import { type NgtThreeEvent } from 'angular-three';
3
- import * as i0 from "@angular/core";
4
- export declare class NgtsGizmoViewport {
5
- private inputs;
6
- private gizmoApi;
7
- Math: Math;
8
- set _axisColors(axisColors: [string, string, string]);
9
- set _axisScale(axisScale: [number, number, number]);
10
- set _labels(labels: [string, string, string]);
11
- set _axisHeadScale(axisHeadScale: number);
12
- set _labelColor(labelColor: string);
13
- set _hideNegativeAxes(hideNegativeAxes: boolean);
14
- set _hideAxisHeads(hideAxisHeads: boolean);
15
- set _disabled(disabled: boolean);
16
- set _font(font: string);
17
- viewportClick: EventEmitter<NgtThreeEvent<MouseEvent>>;
18
- axisColors: import("@angular/core").Signal<[string, string, string]>;
19
- axisScale: import("@angular/core").Signal<[number, number, number]>;
20
- labels: import("@angular/core").Signal<[string, string, string]>;
21
- axisHeadScale: import("@angular/core").Signal<number>;
22
- labelColor: import("@angular/core").Signal<string>;
23
- hideNegativeAxes: import("@angular/core").Signal<boolean>;
24
- hideAxisHeads: import("@angular/core").Signal<boolean>;
25
- disabled: import("@angular/core").Signal<boolean>;
26
- font: import("@angular/core").Signal<string>;
27
- onPointerDown(event: NgtThreeEvent<PointerEvent>): void;
28
- static ɵfac: i0.ɵɵFactoryDeclaration<NgtsGizmoViewport, never>;
29
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtsGizmoViewport, "ngts-gizmo-viewport", never, { "_axisColors": { "alias": "axisColors"; "required": false; }; "_axisScale": { "alias": "axisScale"; "required": false; }; "_labels": { "alias": "labels"; "required": false; }; "_axisHeadScale": { "alias": "axisHeadScale"; "required": false; }; "_labelColor": { "alias": "labelColor"; "required": false; }; "_hideNegativeAxes": { "alias": "hideNegativeAxes"; "required": false; }; "_hideAxisHeads": { "alias": "hideAxisHeads"; "required": false; }; "_disabled": { "alias": "disabled"; "required": false; }; "_font": { "alias": "font"; "required": false; }; }, { "viewportClick": "viewportClick"; }, never, never, true, never>;
30
- }
package/gizmos/index.d.ts DELETED
@@ -1,3 +0,0 @@
1
- export * from './gizmo-helper/gizmo-helper';
2
- export * from './gizmo-helper/gizmo-viewcube/gizmo-viewcube';
3
- export * from './gizmo-helper/gizmo-viewport/gizmo-viewport';
@@ -1,10 +0,0 @@
1
- import type { Injector, Signal } from '@angular/core';
2
- import { type NgtLoaderResults, type NgtObjectMap } from 'angular-three';
3
- import { GLTFLoader, type GLTF } from 'three-stdlib';
4
- export type NgtsGLTF<T extends Partial<NgtObjectMap>> = GLTF & NgtObjectMap & T;
5
- export declare function injectNgtsGLTFLoader<TUrl extends string | string[] | Record<string, string>>(path: () => TUrl, { useDraco, useMeshOpt, injector, extensions, }?: {
6
- useDraco?: boolean | string;
7
- useMeshOpt?: boolean;
8
- injector?: Injector;
9
- extensions?: (loader: GLTFLoader) => void;
10
- }): Signal<NgtLoaderResults<TUrl, GLTF & NgtObjectMap> | null>;
@@ -1,33 +0,0 @@
1
- import { ElementRef } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export interface NgtsLoaderState {
4
- containerClass?: string;
5
- innerClass?: string;
6
- barClass?: string;
7
- dataClass?: string;
8
- dataInterpolation: (value: number) => string;
9
- initialState: (value: boolean) => boolean;
10
- }
11
- export declare class NgtsLoader {
12
- private inputs;
13
- private progressState;
14
- active: import("@angular/core").Signal<boolean>;
15
- progress: import("@angular/core").Signal<number>;
16
- container: import("@angular/core").Signal<string | undefined>;
17
- inner: import("@angular/core").Signal<string | undefined>;
18
- bar: import("@angular/core").Signal<string | undefined>;
19
- data: import("@angular/core").Signal<string | undefined>;
20
- set _containerClass(containerClass: string);
21
- set _innerClass(innerClass: string);
22
- set _barClass(barClass: string);
23
- set _dataClass(dataClass: string);
24
- set _dataInterpolation(dataInterpolation: (value: number) => string);
25
- set _initialState(initialState: (value: boolean) => boolean);
26
- progressSpanRef?: ElementRef<HTMLSpanElement>;
27
- shown: import("@angular/core").WritableSignal<boolean>;
28
- constructor();
29
- private setShown;
30
- private updateProgress;
31
- static ɵfac: i0.ɵɵFactoryDeclaration<NgtsLoader, never>;
32
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtsLoader, "ngts-loader", never, { "_containerClass": { "alias": "containerClass"; "required": false; }; "_innerClass": { "alias": "innerClass"; "required": false; }; "_barClass": { "alias": "barClass"; "required": false; }; "_dataClass": { "alias": "dataClass"; "required": false; }; "_dataInterpolation": { "alias": "dataInterpolation"; "required": false; }; "_initialState": { "alias": "initialState"; "required": false; }; }, {}, never, never, true, never>;
33
- }
@@ -1,9 +0,0 @@
1
- import { type Injector } from '@angular/core';
2
- export declare function injectNgtsProgress(injector?: Injector): import("@angular/core").Signal<{
3
- errors: string[];
4
- active: boolean;
5
- progress: number;
6
- item: string;
7
- loaded: number;
8
- total: number;
9
- }>;
@@ -1,7 +0,0 @@
1
- import { type Injector, type Signal } from '@angular/core';
2
- import { type NgtLoaderResults } from 'angular-three';
3
- import * as THREE from 'three';
4
- export declare function injectNgtsTextureLoader<TInput extends string[] | string | Record<string, string>>(input: () => TInput, { onLoad, injector, }?: {
5
- onLoad?: (texture: THREE.Texture | THREE.Texture[]) => void;
6
- injector?: Injector;
7
- }): Signal<NgtLoaderResults<TInput, THREE.Texture> | null>;
@@ -1,40 +0,0 @@
1
- import { type NgtMeshPhysicalMaterial } from 'angular-three';
2
- import * as i0 from "@angular/core";
3
- export type NgtsMeshDistortMaterialState = {
4
- time: number;
5
- distort: number;
6
- radius: number;
7
- speed: number;
8
- };
9
- declare global {
10
- interface HTMLElementTagNameMap {
11
- /**
12
- * @extends ngt-mesh-physical-material
13
- */
14
- 'ngts-mesh-distort-material': NgtsMeshDistortMaterialState & NgtMeshPhysicalMaterial;
15
- }
16
- }
17
- export declare class NgtsMeshDistortMaterial {
18
- private inputs;
19
- materialRef: import("angular-three").NgtInjectedRef<{
20
- time: number;
21
- distort: number;
22
- radius: number;
23
- } & import("three").MeshPhysicalMaterial>;
24
- set _time(time: number);
25
- set _distort(distort: number);
26
- set _radius(radius: number);
27
- set _speed(speed: number);
28
- private MeshDistortMaterial;
29
- material: {
30
- time: number;
31
- distort: number;
32
- radius: number;
33
- } & import("three").MeshPhysicalMaterial;
34
- time: import("@angular/core").Signal<number>;
35
- distort: import("@angular/core").Signal<number>;
36
- radius: import("@angular/core").Signal<number>;
37
- constructor();
38
- static ɵfac: i0.ɵɵFactoryDeclaration<NgtsMeshDistortMaterial, never>;
39
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtsMeshDistortMaterial, "ngts-mesh-distort-material", never, { "materialRef": { "alias": "materialRef"; "required": false; }; "_time": { "alias": "time"; "required": false; }; "_distort": { "alias": "distort"; "required": false; }; "_radius": { "alias": "radius"; "required": false; }; "_speed": { "alias": "speed"; "required": false; }; }, {}, never, never, true, never>;
40
- }