angular-three-soba 1.13.0 → 2.0.0-beta.2

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 (428) hide show
  1. package/README.md +2 -2
  2. package/abstractions/billboard/billboard.d.ts +24 -0
  3. package/abstractions/catmull-rom-line/catmull-rom-line.d.ts +25 -0
  4. package/abstractions/cubic-bezier-line/cubic-bezier-line.d.ts +25 -0
  5. package/abstractions/edges/edges.d.ts +22 -0
  6. package/abstractions/gizmo-helper/gizmo-helper.d.ts +34 -0
  7. package/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube-edge.d.ts +22 -0
  8. package/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube-face.d.ts +30 -0
  9. package/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube-inputs.d.ts +32 -0
  10. package/abstractions/{lib/gizmo-helper → gizmo-helper}/gizmo-viewcube/gizmo-viewcube.d.ts +2 -3
  11. package/abstractions/gizmo-helper/gizmo-viewport/gizmo-viewport-axis.d.ts +47 -0
  12. package/abstractions/gizmo-helper/gizmo-viewport/gizmo-viewport.d.ts +40 -0
  13. package/abstractions/index.d.ts +11 -11
  14. package/abstractions/line/line-input.d.ts +42 -0
  15. package/abstractions/line/line.d.ts +35 -0
  16. package/abstractions/quadratic-bezier-line/quadratic-bezier-line.d.ts +23 -0
  17. package/abstractions/text/text.d.ts +77 -0
  18. package/abstractions/text-3d/text-3d.d.ts +74 -0
  19. package/cameras/{lib/camera → camera}/camera-content.d.ts +2 -2
  20. package/cameras/camera/camera.d.ts +23 -0
  21. package/cameras/cube-camera/cube-camera.d.ts +42 -0
  22. package/cameras/index.d.ts +5 -4
  23. package/cameras/orthographic-camera/orthographic-camera.d.ts +26 -0
  24. package/controls/index.d.ts +1 -1
  25. package/controls/orbit-controls/orbit-controls.d.ts +35 -0
  26. package/esm2022/abstractions/angular-three-soba-abstractions.mjs +5 -0
  27. package/esm2022/abstractions/billboard/billboard.mjs +71 -0
  28. package/esm2022/abstractions/catmull-rom-line/catmull-rom-line.mjs +131 -0
  29. package/esm2022/abstractions/cubic-bezier-line/cubic-bezier-line.mjs +113 -0
  30. package/esm2022/abstractions/edges/edges.mjs +93 -0
  31. package/esm2022/abstractions/gizmo-helper/gizmo-helper.mjs +210 -0
  32. package/esm2022/abstractions/gizmo-helper/gizmo-viewcube/constants.mjs +31 -0
  33. package/esm2022/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube-edge.mjs +95 -0
  34. package/esm2022/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube-face.mjs +155 -0
  35. package/esm2022/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube-inputs.mjs +62 -0
  36. package/esm2022/abstractions/gizmo-helper/gizmo-viewcube/gizmo-viewcube.mjs +80 -0
  37. package/esm2022/abstractions/gizmo-helper/gizmo-viewport/gizmo-viewport-axis.mjs +206 -0
  38. package/esm2022/abstractions/gizmo-helper/gizmo-viewport/gizmo-viewport.mjs +273 -0
  39. package/esm2022/abstractions/index.mjs +12 -0
  40. package/esm2022/abstractions/line/line-input.mjs +113 -0
  41. package/esm2022/abstractions/line/line.mjs +165 -0
  42. package/esm2022/abstractions/quadratic-bezier-line/quadratic-bezier-line.mjs +128 -0
  43. package/esm2022/abstractions/text/text.mjs +275 -0
  44. package/esm2022/abstractions/text-3d/text-3d.mjs +167 -0
  45. package/esm2022/angular-three-soba.mjs +5 -0
  46. package/esm2022/cameras/angular-three-soba-cameras.mjs +5 -0
  47. package/esm2022/cameras/camera/camera-content.mjs +21 -0
  48. package/esm2022/cameras/camera/camera.mjs +71 -0
  49. package/esm2022/cameras/cube-camera/cube-camera.mjs +131 -0
  50. package/esm2022/cameras/index.mjs +6 -0
  51. package/esm2022/cameras/orthographic-camera/orthographic-camera.mjs +99 -0
  52. package/esm2022/cameras/perspective-camera/perspective-camera.mjs +47 -0
  53. package/esm2022/controls/angular-three-soba-controls.mjs +5 -0
  54. package/esm2022/controls/index.mjs +2 -0
  55. package/esm2022/controls/orbit-controls/orbit-controls.mjs +165 -0
  56. package/esm2022/index.mjs +2 -0
  57. package/esm2022/loaders/angular-three-soba-loaders.mjs +5 -0
  58. package/esm2022/loaders/gltf-loader/gltf-loader.mjs +33 -0
  59. package/esm2022/loaders/index.mjs +5 -0
  60. package/esm2022/loaders/loader/loader.mjs +133 -0
  61. package/esm2022/loaders/progress/progress.mjs +52 -0
  62. package/esm2022/loaders/texture-loader/texture-loader.mjs +28 -0
  63. package/esm2022/materials/angular-three-soba-materials.mjs +5 -0
  64. package/esm2022/materials/index.mjs +6 -0
  65. package/esm2022/materials/mesh-distort-material/mesh-distort-material.mjs +73 -0
  66. package/esm2022/materials/mesh-reflector-material/mesh-reflector-material.mjs +383 -0
  67. package/esm2022/materials/mesh-refraction-material/mesh-refraction-material.mjs +168 -0
  68. package/esm2022/materials/mesh-transmission-material/mesh-transmission-material.mjs +257 -0
  69. package/esm2022/materials/mesh-wobble-material/mesh-wobble-material.mjs +66 -0
  70. package/esm2022/misc/angular-three-soba-misc.mjs +5 -0
  71. package/esm2022/misc/animations/animations.mjs +55 -0
  72. package/esm2022/misc/bake-shadows/bake-shadows.mjs +24 -0
  73. package/esm2022/misc/depth-buffer/depth-buffer.mjs +46 -0
  74. package/esm2022/misc/fbo/fbo.mjs +47 -0
  75. package/esm2022/misc/index.mjs +5 -0
  76. package/esm2022/performance/adaptive/adaptive-dpr.mjs +46 -0
  77. package/esm2022/performance/adaptive/adaptive-events.mjs +31 -0
  78. package/esm2022/performance/angular-three-soba-performance.mjs +5 -0
  79. package/esm2022/performance/detailed/detailed.mjs +61 -0
  80. package/esm2022/performance/index.mjs +7 -0
  81. package/esm2022/performance/instances/instance.mjs +48 -0
  82. package/esm2022/performance/instances/instances.mjs +189 -0
  83. package/esm2022/performance/instances/position-mesh.mjs +52 -0
  84. package/esm2022/performance/stats/stats.mjs +79 -0
  85. package/esm2022/shaders/angular-three-soba-shaders.mjs +5 -0
  86. package/esm2022/shaders/blur-pass/blur-pass.mjs +61 -0
  87. package/esm2022/shaders/caustics-material/caustics-material.mjs +128 -0
  88. package/esm2022/shaders/caustics-material/caustics-projection-material.mjs +33 -0
  89. package/esm2022/shaders/convolution-material/convolution-material.mjs +94 -0
  90. package/esm2022/shaders/discard-material/discard-material.mjs +3 -0
  91. package/esm2022/shaders/index.mjs +15 -0
  92. package/esm2022/shaders/mesh-distort-material/mesh-distort-material.mjs +55 -0
  93. package/esm2022/shaders/mesh-reflector-material/mesh-reflector-material.mjs +223 -0
  94. package/esm2022/shaders/mesh-refraction-material/mesh-refraction-material.mjs +170 -0
  95. package/esm2022/shaders/mesh-transmission-material/mesh-transmission-material.mjs +268 -0
  96. package/esm2022/shaders/mesh-wobble-material/mesh-wobble-material.mjs +37 -0
  97. package/esm2022/shaders/shader-material/shader-material.mjs +34 -0
  98. package/esm2022/shaders/soft-shadow-material/soft-shadow-material.mjs +33 -0
  99. package/esm2022/shaders/sparkles-material/sparkles-material.mjs +47 -0
  100. package/esm2022/shaders/spot-light-material/spot-light-material.mjs +86 -0
  101. package/esm2022/shaders/star-field-material/star-field-material.mjs +32 -0
  102. package/esm2022/staging/accumulative-shadows/accumulative-shadows.mjs +283 -0
  103. package/esm2022/staging/accumulative-shadows/progressive-light-map.mjs +108 -0
  104. package/esm2022/staging/accumulative-shadows/randomized-lights.mjs +208 -0
  105. package/esm2022/staging/angular-three-soba-staging.mjs +5 -0
  106. package/esm2022/staging/bounds/bounds.mjs +307 -0
  107. package/esm2022/staging/camera-shake/camera-shake.mjs +117 -0
  108. package/esm2022/staging/caustics/caustisc.mjs +384 -0
  109. package/esm2022/staging/center/center.mjs +148 -0
  110. package/esm2022/staging/cloud/cloud.mjs +164 -0
  111. package/esm2022/staging/contact-shadows/contact-shadows.mjs +249 -0
  112. package/esm2022/staging/environment/assets.mjs +13 -0
  113. package/esm2022/staging/environment/environment-cube.mjs +49 -0
  114. package/esm2022/staging/environment/environment-ground.mjs +43 -0
  115. package/esm2022/staging/environment/environment-input.mjs +106 -0
  116. package/esm2022/staging/environment/environment-map.mjs +53 -0
  117. package/esm2022/staging/environment/environment-portal.mjs +135 -0
  118. package/esm2022/staging/environment/environment.mjs +78 -0
  119. package/esm2022/staging/environment/utils.mjs +84 -0
  120. package/esm2022/staging/float/float.mjs +82 -0
  121. package/esm2022/staging/index.mjs +18 -0
  122. package/esm2022/staging/sky/sky.mjs +114 -0
  123. package/esm2022/staging/sparkles/sparkles.mjs +161 -0
  124. package/esm2022/staging/spot-light/spot-light-input.mjs +75 -0
  125. package/esm2022/staging/spot-light/spot-light-shadow-mesh-input.mjs +57 -0
  126. package/esm2022/staging/spot-light/spot-light-shadow-mesh.mjs +256 -0
  127. package/esm2022/staging/spot-light/spot-light.mjs +94 -0
  128. package/esm2022/staging/spot-light/volumetric-mesh.mjs +101 -0
  129. package/esm2022/staging/stage/stage.mjs +374 -0
  130. package/esm2022/staging/stars/stars.mjs +148 -0
  131. package/fesm2022/angular-three-soba-abstractions.mjs +2271 -0
  132. package/fesm2022/angular-three-soba-abstractions.mjs.map +1 -0
  133. package/{fesm2015 → fesm2022}/angular-three-soba-cameras.mjs +141 -137
  134. package/fesm2022/angular-three-soba-cameras.mjs.map +1 -0
  135. package/fesm2022/angular-three-soba-controls.mjs +171 -0
  136. package/fesm2022/angular-three-soba-controls.mjs.map +1 -0
  137. package/fesm2022/angular-three-soba-loaders.mjs +244 -0
  138. package/fesm2022/angular-three-soba-loaders.mjs.map +1 -0
  139. package/{fesm2020 → fesm2022}/angular-three-soba-materials.mjs +363 -281
  140. package/fesm2022/angular-three-soba-materials.mjs.map +1 -0
  141. package/fesm2022/angular-three-soba-misc.mjs +169 -0
  142. package/fesm2022/angular-three-soba-misc.mjs.map +1 -0
  143. package/fesm2022/angular-three-soba-performance.mjs +487 -0
  144. package/fesm2022/angular-three-soba-performance.mjs.map +1 -0
  145. package/{fesm2020 → fesm2022}/angular-three-soba-shaders.mjs +58 -10
  146. package/fesm2022/angular-three-soba-shaders.mjs.map +1 -0
  147. package/fesm2022/angular-three-soba-staging.mjs +3826 -0
  148. package/fesm2022/angular-three-soba-staging.mjs.map +1 -0
  149. package/fesm2022/angular-three-soba.mjs.map +1 -0
  150. package/loaders/gltf-loader/gltf-loader.d.ts +9 -0
  151. package/loaders/index.d.ts +4 -5
  152. package/loaders/loader/loader.d.ts +31 -0
  153. package/loaders/progress/progress.d.ts +9 -0
  154. package/loaders/texture-loader/texture-loader.d.ts +7 -0
  155. package/materials/index.d.ts +5 -5
  156. package/materials/mesh-distort-material/mesh-distort-material.d.ts +30 -0
  157. package/materials/mesh-reflector-material/mesh-reflector-material.d.ts +81 -0
  158. package/materials/mesh-refraction-material/mesh-refraction-material.d.ts +50 -0
  159. package/materials/mesh-transmission-material/mesh-transmission-material.d.ts +91 -0
  160. package/materials/mesh-wobble-material/mesh-wobble-material.d.ts +20 -0
  161. package/misc/animations/animations.d.ts +13 -0
  162. package/misc/{lib/bake-shadows → bake-shadows}/bake-shadows.d.ts +2 -5
  163. package/misc/depth-buffer/depth-buffer.d.ts +9 -0
  164. package/misc/{lib/fbo → fbo}/fbo.d.ts +4 -2
  165. package/misc/index.d.ts +4 -4
  166. package/package.json +45 -68
  167. package/performance/adaptive/adaptive-dpr.d.ts +8 -0
  168. package/performance/{lib/adaptive → adaptive}/adaptive-events.d.ts +2 -6
  169. package/performance/detailed/detailed.d.ts +20 -0
  170. package/performance/index.d.ts +6 -4
  171. package/performance/instances/instance.d.ts +9 -0
  172. package/performance/instances/instances.d.ts +35 -0
  173. package/performance/instances/position-mesh.d.ts +10 -0
  174. package/performance/stats/stats.d.ts +18 -0
  175. package/plugin/package.json +1 -1
  176. package/plugin/src/generators/init/compat.js +1 -1
  177. package/plugin/src/generators/init/compat.js.map +1 -1
  178. package/plugin/src/generators/init/init.d.ts +2 -2
  179. package/plugin/src/generators/init/init.js +2 -2
  180. package/plugin/src/generators/init/init.js.map +1 -1
  181. package/plugin/src/index.js.map +1 -1
  182. package/shaders/{lib/blur-pass → blur-pass}/blur-pass.d.ts +2 -2
  183. package/shaders/index.d.ts +14 -14
  184. package/shaders/{lib/mesh-distort-material → mesh-distort-material}/mesh-distort-material.d.ts +1 -1
  185. package/shaders/{lib/mesh-wobble-material → mesh-wobble-material}/mesh-wobble-material.d.ts +1 -0
  186. package/shaders/{lib/soft-shadow-material → soft-shadow-material}/soft-shadow-material.d.ts +2 -2
  187. package/shaders/sparkles-material/sparkles-material.d.ts +3 -0
  188. package/staging/accumulative-shadows/accumulative-shadows.d.ts +96 -0
  189. package/staging/{lib/accumulative-shadows → accumulative-shadows}/progressive-light-map.d.ts +2 -2
  190. package/staging/accumulative-shadows/randomized-lights.d.ts +77 -0
  191. package/staging/bounds/bounds.d.ts +58 -0
  192. package/staging/camera-shake/camera-shake.d.ts +32 -0
  193. package/staging/caustics/caustisc.d.ts +70 -0
  194. package/staging/center/center.d.ts +62 -0
  195. package/staging/cloud/cloud.d.ts +48 -0
  196. package/staging/contact-shadows/contact-shadows.d.ts +57 -0
  197. package/staging/environment/environment-cube.d.ts +11 -0
  198. package/staging/environment/environment-ground.d.ts +13 -0
  199. package/staging/environment/environment-input.d.ts +68 -0
  200. package/staging/environment/environment-map.d.ts +11 -0
  201. package/staging/{lib/environment → environment}/environment-portal.d.ts +5 -7
  202. package/staging/{lib/environment → environment}/environment.d.ts +2 -2
  203. package/staging/environment/utils.d.ts +7 -0
  204. package/staging/float/float.d.ts +27 -0
  205. package/staging/index.d.ts +17 -17
  206. package/staging/sky/sky.d.ts +41 -0
  207. package/staging/sparkles/sparkles.d.ts +49 -0
  208. package/staging/spot-light/spot-light-input.d.ts +38 -0
  209. package/staging/spot-light/spot-light-shadow-mesh-input.d.ts +29 -0
  210. package/staging/spot-light/spot-light-shadow-mesh.d.ts +38 -0
  211. package/staging/{lib/spot-light → spot-light}/spot-light.d.ts +12 -6
  212. package/staging/{lib/spot-light → spot-light}/volumetric-mesh.d.ts +7 -4
  213. package/staging/{lib/stage → stage}/stage.d.ts +35 -16
  214. package/staging/stars/stars.d.ts +34 -0
  215. package/abstractions/lib/billboard/billboard.d.ts +0 -14
  216. package/abstractions/lib/catmull-rom-line/catmull-rom-line.d.ts +0 -15
  217. package/abstractions/lib/cubic-bezier-line/cubic-bezier-line.d.ts +0 -15
  218. package/abstractions/lib/edges/edges.d.ts +0 -18
  219. package/abstractions/lib/gizmo-helper/gizmo-helper.d.ts +0 -41
  220. package/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube-edge.d.ts +0 -16
  221. package/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube-face.d.ts +0 -24
  222. package/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube-inputs.d.ts +0 -14
  223. package/abstractions/lib/gizmo-helper/gizmo-viewport/gizmo-viewport-axis.d.ts +0 -28
  224. package/abstractions/lib/gizmo-helper/gizmo-viewport/gizmo-viewport.d.ts +0 -21
  225. package/abstractions/lib/line/line-input.d.ts +0 -19
  226. package/abstractions/lib/line/line.d.ts +0 -21
  227. package/abstractions/lib/quadratic-bezier-line/quadratic-bezier-line.d.ts +0 -19
  228. package/abstractions/lib/text/text.d.ts +0 -21
  229. package/abstractions/lib/text-3d/text-3d.d.ts +0 -39
  230. package/assets/default-spot-light-shadow.glsl +0 -10
  231. package/cameras/lib/camera/camera.d.ts +0 -19
  232. package/cameras/lib/cube-camera/cube-camera.d.ts +0 -27
  233. package/cameras/lib/orthographic-camera/orthographic-camera.d.ts +0 -17
  234. package/controls/lib/orbit-controls/orbit-controls.d.ts +0 -27
  235. package/esm2020/abstractions/angular-three-soba-abstractions.mjs +0 -5
  236. package/esm2020/abstractions/index.mjs +0 -12
  237. package/esm2020/abstractions/lib/billboard/billboard.mjs +0 -73
  238. package/esm2020/abstractions/lib/catmull-rom-line/catmull-rom-line.mjs +0 -119
  239. package/esm2020/abstractions/lib/cubic-bezier-line/cubic-bezier-line.mjs +0 -98
  240. package/esm2020/abstractions/lib/edges/edges.mjs +0 -95
  241. package/esm2020/abstractions/lib/gizmo-helper/gizmo-helper.mjs +0 -211
  242. package/esm2020/abstractions/lib/gizmo-helper/gizmo-viewcube/constants.mjs +0 -31
  243. package/esm2020/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube-edge.mjs +0 -91
  244. package/esm2020/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube-face.mjs +0 -182
  245. package/esm2020/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube-inputs.mjs +0 -45
  246. package/esm2020/abstractions/lib/gizmo-helper/gizmo-viewcube/gizmo-viewcube.mjs +0 -133
  247. package/esm2020/abstractions/lib/gizmo-helper/gizmo-viewport/gizmo-viewport-axis.mjs +0 -193
  248. package/esm2020/abstractions/lib/gizmo-helper/gizmo-viewport/gizmo-viewport.mjs +0 -266
  249. package/esm2020/abstractions/lib/line/line-input.mjs +0 -75
  250. package/esm2020/abstractions/lib/line/line.mjs +0 -132
  251. package/esm2020/abstractions/lib/quadratic-bezier-line/quadratic-bezier-line.mjs +0 -127
  252. package/esm2020/abstractions/lib/text/text.mjs +0 -114
  253. package/esm2020/abstractions/lib/text-3d/text-3d.mjs +0 -144
  254. package/esm2020/angular-three-soba.mjs +0 -5
  255. package/esm2020/cameras/angular-three-soba-cameras.mjs +0 -5
  256. package/esm2020/cameras/index.mjs +0 -5
  257. package/esm2020/cameras/lib/camera/camera-content.mjs +0 -20
  258. package/esm2020/cameras/lib/camera/camera.mjs +0 -74
  259. package/esm2020/cameras/lib/cube-camera/cube-camera.mjs +0 -130
  260. package/esm2020/cameras/lib/orthographic-camera/orthographic-camera.mjs +0 -92
  261. package/esm2020/cameras/lib/perspective-camera/perspective-camera.mjs +0 -46
  262. package/esm2020/controls/angular-three-soba-controls.mjs +0 -5
  263. package/esm2020/controls/index.mjs +0 -2
  264. package/esm2020/controls/lib/orbit-controls/orbit-controls.mjs +0 -146
  265. package/esm2020/index.mjs +0 -2
  266. package/esm2020/loaders/angular-three-soba-loaders.mjs +0 -5
  267. package/esm2020/loaders/index.mjs +0 -6
  268. package/esm2020/loaders/lib/cube-texture-loader/cube-texture-loader.mjs +0 -10
  269. package/esm2020/loaders/lib/gltf-loader/gltf-loader.mjs +0 -32
  270. package/esm2020/loaders/lib/loader/loader.mjs +0 -133
  271. package/esm2020/loaders/lib/progress/progress.mjs +0 -39
  272. package/esm2020/loaders/lib/texture-loader/texture-loader.mjs +0 -19
  273. package/esm2020/materials/angular-three-soba-materials.mjs +0 -5
  274. package/esm2020/materials/index.mjs +0 -6
  275. package/esm2020/materials/lib/mesh-distort-material/mesh-distort-material.mjs +0 -74
  276. package/esm2020/materials/lib/mesh-reflector-material/mesh-reflector-material.mjs +0 -327
  277. package/esm2020/materials/lib/mesh-refraction-material/mesh-refraction-material.mjs +0 -157
  278. package/esm2020/materials/lib/mesh-transmission-material/mesh-transmission-material.mjs +0 -237
  279. package/esm2020/materials/lib/mesh-wobble-material/mesh-wobble-material.mjs +0 -67
  280. package/esm2020/misc/angular-three-soba-misc.mjs +0 -5
  281. package/esm2020/misc/index.mjs +0 -5
  282. package/esm2020/misc/lib/animations/animations.mjs +0 -52
  283. package/esm2020/misc/lib/bake-shadows/bake-shadows.mjs +0 -25
  284. package/esm2020/misc/lib/depth-buffer/depth-buffer.mjs +0 -39
  285. package/esm2020/misc/lib/fbo/fbo.mjs +0 -39
  286. package/esm2020/performance/angular-three-soba-performance.mjs +0 -5
  287. package/esm2020/performance/index.mjs +0 -5
  288. package/esm2020/performance/lib/adaptive/adaptive-dpr.mjs +0 -46
  289. package/esm2020/performance/lib/adaptive/adaptive-events.mjs +0 -36
  290. package/esm2020/performance/lib/detailed/detailed.mjs +0 -53
  291. package/esm2020/performance/lib/stats/stats.mjs +0 -79
  292. package/esm2020/shaders/angular-three-soba-shaders.mjs +0 -5
  293. package/esm2020/shaders/index.mjs +0 -15
  294. package/esm2020/shaders/lib/blur-pass/blur-pass.mjs +0 -61
  295. package/esm2020/shaders/lib/caustics-material/caustics-material.mjs +0 -128
  296. package/esm2020/shaders/lib/caustics-projection-material/caustics-projection-material.mjs +0 -33
  297. package/esm2020/shaders/lib/convolution-material/convolution-material.mjs +0 -94
  298. package/esm2020/shaders/lib/discard-material/discard-material.mjs +0 -3
  299. package/esm2020/shaders/lib/mesh-distort-material/mesh-distort-material.mjs +0 -55
  300. package/esm2020/shaders/lib/mesh-reflector-material/mesh-reflector-material.mjs +0 -223
  301. package/esm2020/shaders/lib/mesh-refraction-material/mesh-refraction-material.mjs +0 -169
  302. package/esm2020/shaders/lib/mesh-transmission-material/mesh-transmission-material.mjs +0 -268
  303. package/esm2020/shaders/lib/mesh-wobble-material/mesh-wobble-material.mjs +0 -37
  304. package/esm2020/shaders/lib/shader-material/shader-material.mjs +0 -34
  305. package/esm2020/shaders/lib/soft-shadow-material/soft-shadow-material.mjs +0 -33
  306. package/esm2020/shaders/lib/spot-light-material/spot-light-material.mjs +0 -86
  307. package/esm2020/shaders/lib/star-field-material/star-field-material.mjs +0 -32
  308. package/esm2020/staging/angular-three-soba-staging.mjs +0 -5
  309. package/esm2020/staging/index.mjs +0 -18
  310. package/esm2020/staging/lib/accumulative-shadows/accumulative-shadows.mjs +0 -247
  311. package/esm2020/staging/lib/accumulative-shadows/progressive-light-map.mjs +0 -108
  312. package/esm2020/staging/lib/accumulative-shadows/randomized-lights.mjs +0 -199
  313. package/esm2020/staging/lib/bounds/bounds.mjs +0 -283
  314. package/esm2020/staging/lib/camera-shake/camera-shake.mjs +0 -121
  315. package/esm2020/staging/lib/caustics/caustics.mjs +0 -363
  316. package/esm2020/staging/lib/center/center.mjs +0 -142
  317. package/esm2020/staging/lib/cloud/cloud.mjs +0 -159
  318. package/esm2020/staging/lib/contact-shadows/contact-shadows.mjs +0 -227
  319. package/esm2020/staging/lib/environment/assets.mjs +0 -13
  320. package/esm2020/staging/lib/environment/environment-cube.mjs +0 -40
  321. package/esm2020/staging/lib/environment/environment-ground.mjs +0 -66
  322. package/esm2020/staging/lib/environment/environment-inputs.mjs +0 -86
  323. package/esm2020/staging/lib/environment/environment-map.mjs +0 -38
  324. package/esm2020/staging/lib/environment/environment-portal.mjs +0 -110
  325. package/esm2020/staging/lib/environment/environment.mjs +0 -163
  326. package/esm2020/staging/lib/environment/utils.mjs +0 -70
  327. package/esm2020/staging/lib/float/float.mjs +0 -76
  328. package/esm2020/staging/lib/sky/sky.mjs +0 -108
  329. package/esm2020/staging/lib/sparkles/sparkles.mjs +0 -209
  330. package/esm2020/staging/lib/spot-light/common.mjs +0 -42
  331. package/esm2020/staging/lib/spot-light/shadow-mesh-input.mjs +0 -50
  332. package/esm2020/staging/lib/spot-light/spot-light-input.mjs +0 -61
  333. package/esm2020/staging/lib/spot-light/spot-light-shadow-no-shader.mjs +0 -73
  334. package/esm2020/staging/lib/spot-light/spot-light-shadow-shader.mjs +0 -125
  335. package/esm2020/staging/lib/spot-light/spot-light-shadow.mjs +0 -62
  336. package/esm2020/staging/lib/spot-light/spot-light.mjs +0 -116
  337. package/esm2020/staging/lib/spot-light/volumetric-mesh.mjs +0 -85
  338. package/esm2020/staging/lib/stage/stage.mjs +0 -366
  339. package/esm2020/staging/lib/stars/stars.mjs +0 -139
  340. package/fesm2015/angular-three-soba-abstractions.mjs +0 -2048
  341. package/fesm2015/angular-three-soba-abstractions.mjs.map +0 -1
  342. package/fesm2015/angular-three-soba-cameras.mjs.map +0 -1
  343. package/fesm2015/angular-three-soba-controls.mjs +0 -153
  344. package/fesm2015/angular-three-soba-controls.mjs.map +0 -1
  345. package/fesm2015/angular-three-soba-loaders.mjs +0 -229
  346. package/fesm2015/angular-three-soba-loaders.mjs.map +0 -1
  347. package/fesm2015/angular-three-soba-materials.mjs +0 -851
  348. package/fesm2015/angular-three-soba-materials.mjs.map +0 -1
  349. package/fesm2015/angular-three-soba-misc.mjs +0 -148
  350. package/fesm2015/angular-three-soba-misc.mjs.map +0 -1
  351. package/fesm2015/angular-three-soba-performance.mjs +0 -210
  352. package/fesm2015/angular-three-soba-performance.mjs.map +0 -1
  353. package/fesm2015/angular-three-soba-shaders.mjs +0 -1239
  354. package/fesm2015/angular-three-soba-shaders.mjs.map +0 -1
  355. package/fesm2015/angular-three-soba-staging.mjs +0 -3772
  356. package/fesm2015/angular-three-soba-staging.mjs.map +0 -1
  357. package/fesm2015/angular-three-soba.mjs.map +0 -1
  358. package/fesm2020/angular-three-soba-abstractions.mjs +0 -2045
  359. package/fesm2020/angular-three-soba-abstractions.mjs.map +0 -1
  360. package/fesm2020/angular-three-soba-cameras.mjs +0 -347
  361. package/fesm2020/angular-three-soba-cameras.mjs.map +0 -1
  362. package/fesm2020/angular-three-soba-controls.mjs +0 -153
  363. package/fesm2020/angular-three-soba-controls.mjs.map +0 -1
  364. package/fesm2020/angular-three-soba-loaders.mjs +0 -228
  365. package/fesm2020/angular-three-soba-loaders.mjs.map +0 -1
  366. package/fesm2020/angular-three-soba-materials.mjs.map +0 -1
  367. package/fesm2020/angular-three-soba-misc.mjs +0 -152
  368. package/fesm2020/angular-three-soba-misc.mjs.map +0 -1
  369. package/fesm2020/angular-three-soba-performance.mjs +0 -210
  370. package/fesm2020/angular-three-soba-performance.mjs.map +0 -1
  371. package/fesm2020/angular-three-soba-shaders.mjs.map +0 -1
  372. package/fesm2020/angular-three-soba-staging.mjs +0 -3778
  373. package/fesm2020/angular-three-soba-staging.mjs.map +0 -1
  374. package/fesm2020/angular-three-soba.mjs +0 -6
  375. package/fesm2020/angular-three-soba.mjs.map +0 -1
  376. package/loaders/lib/cube-texture-loader/cube-texture-loader.d.ts +0 -3
  377. package/loaders/lib/gltf-loader/gltf-loader.d.ts +0 -8
  378. package/loaders/lib/loader/loader.d.ts +0 -26
  379. package/loaders/lib/progress/progress.d.ts +0 -16
  380. package/loaders/lib/texture-loader/texture-loader.d.ts +0 -5
  381. package/materials/lib/mesh-distort-material/mesh-distort-material.d.ts +0 -24
  382. package/materials/lib/mesh-reflector-material/mesh-reflector-material.d.ts +0 -41
  383. package/materials/lib/mesh-refraction-material/mesh-refraction-material.d.ts +0 -28
  384. package/materials/lib/mesh-transmission-material/mesh-transmission-material.d.ts +0 -46
  385. package/materials/lib/mesh-wobble-material/mesh-wobble-material.d.ts +0 -14
  386. package/misc/lib/animations/animations.d.ts +0 -13
  387. package/misc/lib/depth-buffer/depth-buffer.d.ts +0 -7
  388. package/performance/lib/adaptive/adaptive-dpr.d.ts +0 -11
  389. package/performance/lib/detailed/detailed.d.ts +0 -13
  390. package/performance/lib/stats/stats.d.ts +0 -15
  391. package/staging/lib/accumulative-shadows/accumulative-shadows.d.ts +0 -58
  392. package/staging/lib/accumulative-shadows/randomized-lights.d.ts +0 -42
  393. package/staging/lib/bounds/bounds.d.ts +0 -48
  394. package/staging/lib/camera-shake/camera-shake.d.ts +0 -28
  395. package/staging/lib/caustics/caustics.d.ts +0 -47
  396. package/staging/lib/center/center.d.ts +0 -40
  397. package/staging/lib/cloud/cloud.d.ts +0 -23
  398. package/staging/lib/contact-shadows/contact-shadows.d.ts +0 -29
  399. package/staging/lib/environment/environment-cube.d.ts +0 -11
  400. package/staging/lib/environment/environment-ground.d.ts +0 -9
  401. package/staging/lib/environment/environment-inputs.d.ts +0 -28
  402. package/staging/lib/environment/environment-map.d.ts +0 -10
  403. package/staging/lib/environment/utils.d.ts +0 -8
  404. package/staging/lib/float/float.d.ts +0 -16
  405. package/staging/lib/sky/sky.d.ts +0 -20
  406. package/staging/lib/sparkles/sparkles.d.ts +0 -29
  407. package/staging/lib/spot-light/common.d.ts +0 -3
  408. package/staging/lib/spot-light/shadow-mesh-input.d.ts +0 -14
  409. package/staging/lib/spot-light/spot-light-input.d.ts +0 -16
  410. package/staging/lib/spot-light/spot-light-shadow-no-shader.d.ts +0 -14
  411. package/staging/lib/spot-light/spot-light-shadow-shader.d.ts +0 -25
  412. package/staging/lib/spot-light/spot-light-shadow.d.ts +0 -6
  413. package/staging/lib/stars/stars.d.ts +0 -20
  414. /package/abstractions/{lib/gizmo-helper → gizmo-helper}/gizmo-viewcube/constants.d.ts +0 -0
  415. /package/cameras/{lib/perspective-camera → perspective-camera}/perspective-camera.d.ts +0 -0
  416. /package/{fesm2015 → fesm2022}/angular-three-soba.mjs +0 -0
  417. /package/plugin/{README.md → libs/plugin/README.md} +0 -0
  418. /package/shaders/{lib/caustics-material → caustics-material}/caustics-material.d.ts +0 -0
  419. /package/shaders/{lib/caustics-projection-material → caustics-material}/caustics-projection-material.d.ts +0 -0
  420. /package/shaders/{lib/convolution-material → convolution-material}/convolution-material.d.ts +0 -0
  421. /package/shaders/{lib/discard-material → discard-material}/discard-material.d.ts +0 -0
  422. /package/shaders/{lib/mesh-reflector-material → mesh-reflector-material}/mesh-reflector-material.d.ts +0 -0
  423. /package/shaders/{lib/mesh-refraction-material → mesh-refraction-material}/mesh-refraction-material.d.ts +0 -0
  424. /package/shaders/{lib/mesh-transmission-material → mesh-transmission-material}/mesh-transmission-material.d.ts +0 -0
  425. /package/shaders/{lib/shader-material → shader-material}/shader-material.d.ts +0 -0
  426. /package/shaders/{lib/spot-light-material → spot-light-material}/spot-light-material.d.ts +0 -0
  427. /package/shaders/{lib/star-field-material → star-field-material}/star-field-material.d.ts +0 -0
  428. /package/staging/{lib/environment → environment}/assets.d.ts +0 -0
@@ -1,229 +0,0 @@
1
- import { injectNgtLoader, NgtRxStore, injectNgtDestroy, startWithUndefined, NgtPush, NgtStore } from 'angular-three';
2
- import { isObservable, map, of, take, combineLatest, withLatestFrom, switchMap, timer, tap } from 'rxjs';
3
- import * as THREE from 'three';
4
- import { MeshoptDecoder } from 'three-stdlib';
5
- import { DRACOLoader } from 'three-stdlib/loaders/DRACOLoader';
6
- import { GLTFLoader } from 'three-stdlib/loaders/GLTFLoader';
7
- import { NgIf, AsyncPipe } from '@angular/common';
8
- import * as i0 from '@angular/core';
9
- import { Component, ChangeDetectionStrategy, Input, ViewChild, inject } from '@angular/core';
10
-
11
- function injectCubeTextureLoader(files, path) {
12
- const inputs$ = isObservable(files) ? files.pipe(map((f) => [f])) : of([files]);
13
- return injectNgtLoader(() => THREE.CubeTextureLoader,
14
- // @ts-expect-error CubeTexture accepts a string[] and pass into loader as [[...]]
15
- inputs$, (loader) => loader.setPath(path)).pipe(map((textures) => textures[0]));
16
- }
17
-
18
- let dracoLoader = null;
19
- function _extensions(useDraco, useMeshOpt, extensions) {
20
- return (loader) => {
21
- if (extensions) {
22
- extensions(loader);
23
- }
24
- if (useDraco) {
25
- if (!dracoLoader) {
26
- dracoLoader = new DRACOLoader();
27
- }
28
- dracoLoader.setDecoderPath(typeof useDraco === 'string' ? useDraco : 'https://www.gstatic.com/draco/versioned/decoders/1.4.3/');
29
- loader.setDRACOLoader(dracoLoader);
30
- }
31
- if (useMeshOpt) {
32
- loader.setMeshoptDecoder(typeof MeshoptDecoder === 'function' ? MeshoptDecoder() : MeshoptDecoder);
33
- }
34
- };
35
- }
36
- function injectGLTFLoader(path, useDraco = true, useMeshOpt = true, extensions) {
37
- return injectNgtLoader(() => GLTFLoader, path, _extensions(useDraco, useMeshOpt, extensions));
38
- }
39
- injectGLTFLoader.preload = (path, useDraco = true, useMeshOpt = true, extensions) => {
40
- injectGLTFLoader(path, useDraco, useMeshOpt, extensions).pipe(take(1)).subscribe();
41
- };
42
- const injectNgtsGLTFLoader = injectGLTFLoader;
43
-
44
- function injectNgtsProgress() {
45
- const progress = new NgtRxStore();
46
- progress.set({ errors: [], active: false, progress: 0, item: '', loaded: 0, total: 0 });
47
- const { cdr } = injectNgtDestroy(() => progress.ngOnDestroy());
48
- let saveLastTotalLoaded = 0;
49
- THREE.DefaultLoadingManager.onStart = (item, loaded, total) => {
50
- progress.set({
51
- active: true,
52
- item,
53
- loaded,
54
- total,
55
- progress: ((loaded - saveLastTotalLoaded) / (total - saveLastTotalLoaded)) * 100,
56
- });
57
- cdr.detectChanges();
58
- };
59
- THREE.DefaultLoadingManager.onLoad = () => {
60
- progress.set({ active: false });
61
- cdr.detectChanges();
62
- };
63
- THREE.DefaultLoadingManager.onError = (url) => {
64
- progress.set({ errors: [...progress.get('errors'), url] });
65
- cdr.detectChanges();
66
- };
67
- THREE.DefaultLoadingManager.onProgress = (item, loaded, total) => {
68
- if (loaded === total)
69
- saveLastTotalLoaded = total;
70
- progress.set({
71
- item,
72
- loaded,
73
- total,
74
- progress: ((loaded - saveLastTotalLoaded) / (total - saveLastTotalLoaded)) * 100 || 100,
75
- });
76
- cdr.detectChanges();
77
- };
78
- return progress;
79
- }
80
-
81
- const defaultDataInterpolation = (p) => `Loading ${p.toFixed(2)}%`;
82
- class NgtsLoader extends NgtRxStore {
83
- constructor() {
84
- super(...arguments);
85
- this.progress = injectNgtsProgress();
86
- this.vm$ = combineLatest([
87
- this.select('shown'),
88
- this.select('containerClass').pipe(startWithUndefined()),
89
- this.select('innerClass').pipe(startWithUndefined()),
90
- this.select('barClass').pipe(startWithUndefined()),
91
- this.select('dataClass').pipe(startWithUndefined()),
92
- this.progress.select('progress'),
93
- this.progress.select('active'),
94
- ]).pipe(map(([shown, containerClass, innerClass, barClass, dataClass, progress, active]) => {
95
- return { shown, containerClass, innerClass, barClass, dataClass, progress, active };
96
- }));
97
- }
98
- set containerClass(containerClass) {
99
- this.set({ containerClass });
100
- }
101
- set innerClass(innerClass) {
102
- this.set({ innerClass });
103
- }
104
- set barClass(barClass) {
105
- this.set({ barClass });
106
- }
107
- set dataClass(dataClass) {
108
- this.set({ dataClass });
109
- }
110
- set dataInterpolation(dataInterpolation) {
111
- this.set({ dataInterpolation });
112
- }
113
- set initialState(initialState) {
114
- this.set({ initialState });
115
- }
116
- initialize() {
117
- super.initialize();
118
- this.set({ dataInterpolation: defaultDataInterpolation, initialState: (active) => active });
119
- }
120
- ngOnInit() {
121
- this.set({ shown: this.get('initialState')(this.progress.get('active')) });
122
- this.connect('shown', this.progress.select('active').pipe(withLatestFrom(this.select('shown')), switchMap(([active, shown]) => {
123
- if (shown !== active)
124
- return timer(300).pipe(map(() => active));
125
- return of(shown);
126
- })));
127
- let progressRef = 0;
128
- let rafId;
129
- this.effect(combineLatest([this.select('dataInterpolation'), this.progress.select('progress')]), ([dataInterpolation, progress]) => {
130
- const updateProgress = () => {
131
- var _a;
132
- if (!((_a = this.progressSpanRef) === null || _a === void 0 ? void 0 : _a.nativeElement))
133
- return;
134
- progressRef += (progress - progressRef) / 2;
135
- if (progressRef > 0.95 * progress || progress === 100)
136
- progressRef = progress;
137
- this.progressSpanRef.nativeElement.innerText = dataInterpolation(progressRef);
138
- if (progressRef < progress) {
139
- rafId = requestAnimationFrame(updateProgress);
140
- }
141
- };
142
- updateProgress();
143
- return () => cancelAnimationFrame(rafId);
144
- });
145
- }
146
- }
147
- NgtsLoader.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: NgtsLoader, deps: null, target: i0.ɵɵFactoryTarget.Component });
148
- NgtsLoader.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.5", type: NgtsLoader, isStandalone: true, selector: "ngts-loader", inputs: { containerClass: "containerClass", innerClass: "innerClass", barClass: "barClass", dataClass: "dataClass", dataInterpolation: "dataInterpolation", initialState: "initialState" }, viewQueries: [{ propertyName: "progressSpanRef", first: true, predicate: ["progressSpanRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: `
149
- <ng-container *ngIf="vm$ | ngtPush as vm">
150
- <div
151
- *ngIf="vm.shown"
152
- class="ngts-loader-container"
153
- [class]="vm.containerClass"
154
- [style.--ngts-loader-container-opacity]="vm.active ? 1 : 0"
155
- >
156
- <div>
157
- <div class="ngts-loader-inner" [class]="vm.innerClass">
158
- <div
159
- class="ngts-loader-bar"
160
- [class]="vm.barClass"
161
- [style.--ngts-loader-bar-scale]="vm.progress / 100"
162
- ></div>
163
- <span #progressSpanRef class="ngts-loader-data" [class]="vm.dataClass"></span>
164
- </div>
165
- </div>
166
- </div>
167
- </ng-container>
168
- `, isInline: true, styles: [".ngts-loader-container{--ngts-loader-container-opacity: 0;position:absolute;top:0;left:0;width:100%;height:100%;background:#171717;display:flex;align-items:center;justify-content:center;transition:opacity .3s ease;z-index:1000;opacity:var(--ngts-loader-container-opacity)}.ngts-loader-inner{width:100px;height:3px;background:#272727;text-align:center}.ngts-loader-bar{--ngts-loader-bar-scale: 0;height:3px;width:100px;background:white;transition:transform .2s;transform-origin:left center;transform:scaleX(var(--ngts-loader-bar-scale))}.ngts-loader-data{display:inline-block;position:relative;font-feature-settings:\"tnum\";font-variant-numeric:tabular-nums;margin-top:.8em;color:#f0f0f0;font-size:.6em;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Helvetica Neue,Helvetica,Arial,Roboto,Ubuntu,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol;white-space:nowrap}\n"], dependencies: [{ kind: "directive", type: NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: NgtPush, name: "ngtPush" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
169
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.5", ngImport: i0, type: NgtsLoader, decorators: [{
170
- type: Component,
171
- args: [{ selector: 'ngts-loader', standalone: true, template: `
172
- <ng-container *ngIf="vm$ | ngtPush as vm">
173
- <div
174
- *ngIf="vm.shown"
175
- class="ngts-loader-container"
176
- [class]="vm.containerClass"
177
- [style.--ngts-loader-container-opacity]="vm.active ? 1 : 0"
178
- >
179
- <div>
180
- <div class="ngts-loader-inner" [class]="vm.innerClass">
181
- <div
182
- class="ngts-loader-bar"
183
- [class]="vm.barClass"
184
- [style.--ngts-loader-bar-scale]="vm.progress / 100"
185
- ></div>
186
- <span #progressSpanRef class="ngts-loader-data" [class]="vm.dataClass"></span>
187
- </div>
188
- </div>
189
- </div>
190
- </ng-container>
191
- `, imports: [NgIf, AsyncPipe, NgtPush], changeDetection: ChangeDetectionStrategy.OnPush, styles: [".ngts-loader-container{--ngts-loader-container-opacity: 0;position:absolute;top:0;left:0;width:100%;height:100%;background:#171717;display:flex;align-items:center;justify-content:center;transition:opacity .3s ease;z-index:1000;opacity:var(--ngts-loader-container-opacity)}.ngts-loader-inner{width:100px;height:3px;background:#272727;text-align:center}.ngts-loader-bar{--ngts-loader-bar-scale: 0;height:3px;width:100px;background:white;transition:transform .2s;transform-origin:left center;transform:scaleX(var(--ngts-loader-bar-scale))}.ngts-loader-data{display:inline-block;position:relative;font-feature-settings:\"tnum\";font-variant-numeric:tabular-nums;margin-top:.8em;color:#f0f0f0;font-size:.6em;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Helvetica Neue,Helvetica,Arial,Roboto,Ubuntu,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",Segoe UI Symbol;white-space:nowrap}\n"] }]
192
- }], propDecorators: { containerClass: [{
193
- type: Input
194
- }], innerClass: [{
195
- type: Input
196
- }], barClass: [{
197
- type: Input
198
- }], dataClass: [{
199
- type: Input
200
- }], dataInterpolation: [{
201
- type: Input
202
- }], initialState: [{
203
- type: Input
204
- }], progressSpanRef: [{
205
- type: ViewChild,
206
- args: ['progressSpanRef']
207
- }] } });
208
-
209
- const IsObject = (url) => url === Object(url) && !Array.isArray(url) && typeof url !== 'function';
210
- function injectNgtsTextureLoader(input, onLoad) {
211
- const store = inject(NgtStore);
212
- return injectNgtLoader(() => THREE.TextureLoader, input).pipe(tap((textures) => {
213
- const array = Array.isArray(textures)
214
- ? textures
215
- : textures instanceof THREE.Texture
216
- ? [textures]
217
- : Object.values(textures);
218
- if (onLoad)
219
- onLoad(array);
220
- array.forEach(store.get('gl').initTexture);
221
- }));
222
- }
223
-
224
- /**
225
- * Generated bundle index. Do not edit.
226
- */
227
-
228
- export { IsObject, NgtsLoader, injectCubeTextureLoader, injectNgtsGLTFLoader, injectNgtsProgress, injectNgtsTextureLoader };
229
- //# sourceMappingURL=angular-three-soba-loaders.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"angular-three-soba-loaders.mjs","sources":["../../../../libs/angular-three-soba/loaders/src/lib/cube-texture-loader/cube-texture-loader.ts","../../../../libs/angular-three-soba/loaders/src/lib/gltf-loader/gltf-loader.ts","../../../../libs/angular-three-soba/loaders/src/lib/progress/progress.ts","../../../../libs/angular-three-soba/loaders/src/lib/loader/loader.ts","../../../../libs/angular-three-soba/loaders/src/lib/texture-loader/texture-loader.ts","../../../../libs/angular-three-soba/loaders/src/angular-three-soba-loaders.ts"],"sourcesContent":["import { injectNgtLoader } from 'angular-three';\nimport { isObservable, map, Observable, of } from 'rxjs';\nimport * as THREE from 'three';\n\nexport function injectCubeTextureLoader(\n files: string[] | Observable<string[]>,\n path: string\n): Observable<THREE.CubeTexture> {\n const inputs$ = isObservable(files) ? files.pipe(map((f) => [f])) : of([files]);\n return injectNgtLoader(\n () => THREE.CubeTextureLoader,\n // @ts-expect-error CubeTexture accepts a string[] and pass into loader as [[...]]\n inputs$,\n (loader) => loader.setPath(path)\n ).pipe(map((textures) => (textures as THREE.CubeTexture[])[0]));\n}\n","import { injectNgtLoader, NgtLoaderResults, NgtObjectMap } from 'angular-three';\nimport { Observable, take } from 'rxjs';\n// @ts-ignore\nimport { MeshoptDecoder } from 'three-stdlib';\nimport { DRACOLoader } from 'three-stdlib/loaders/DRACOLoader';\nimport { GLTF, GLTFLoader } from 'three-stdlib/loaders/GLTFLoader';\n\nlet dracoLoader: DRACOLoader | null = null;\n\nfunction _extensions(useDraco: boolean | string, useMeshOpt: boolean, extensions?: (loader: GLTFLoader) => void) {\n return (loader: THREE.Loader) => {\n if (extensions) {\n extensions(loader as GLTFLoader);\n }\n\n if (useDraco) {\n if (!dracoLoader) {\n dracoLoader = new DRACOLoader();\n }\n\n dracoLoader.setDecoderPath(\n typeof useDraco === 'string' ? useDraco : 'https://www.gstatic.com/draco/versioned/decoders/1.4.3/'\n );\n (loader as GLTFLoader).setDRACOLoader(dracoLoader);\n }\n\n if (useMeshOpt) {\n (loader as GLTFLoader).setMeshoptDecoder(\n typeof MeshoptDecoder === 'function' ? MeshoptDecoder() : MeshoptDecoder\n );\n }\n };\n}\n\nexport interface NgtsGLTFLoader {\n <TInput extends string | string[] | Record<string, string>>(\n path: TInput | Observable<TInput>,\n useDraco?: boolean | string,\n useMeshOpt?: boolean,\n extensions?: (loader: GLTFLoader) => void\n ): Observable<NgtLoaderResults<TInput, GLTF & NgtObjectMap>>;\n preload: <TInput extends string | string[] | Record<string, string>>(\n path: TInput | Observable<TInput>,\n useDraco?: boolean | string,\n useMeshOpt?: boolean,\n extensions?: (loader: GLTFLoader) => void\n ) => void;\n}\n\nfunction injectGLTFLoader<TInput extends string | string[] | Record<string, string>>(\n path: TInput | Observable<TInput>,\n useDraco: boolean | string = true,\n useMeshOpt = true,\n extensions?: (loader: GLTFLoader) => void\n): Observable<NgtLoaderResults<TInput, GLTF & NgtObjectMap>> {\n return injectNgtLoader(() => GLTFLoader, path, _extensions(useDraco, useMeshOpt, extensions)) as Observable<\n NgtLoaderResults<TInput, GLTF & NgtObjectMap>\n >;\n}\n\n(injectGLTFLoader as NgtsGLTFLoader).preload = (path, useDraco = true, useMeshOpt = true, extensions) => {\n injectGLTFLoader(path, useDraco, useMeshOpt, extensions).pipe(take(1)).subscribe();\n};\n\nexport const injectNgtsGLTFLoader = injectGLTFLoader as NgtsGLTFLoader;\n","import { injectNgtDestroy, NgtRxStore } from 'angular-three';\nimport * as THREE from 'three';\n\nexport function injectNgtsProgress() {\n const progress = new NgtRxStore<{\n errors: string[];\n active: boolean;\n progress: number;\n item: string;\n loaded: number;\n total: number;\n }>();\n progress.set({ errors: [], active: false, progress: 0, item: '', loaded: 0, total: 0 });\n const { cdr } = injectNgtDestroy(() => progress.ngOnDestroy());\n let saveLastTotalLoaded = 0;\n\n THREE.DefaultLoadingManager.onStart = (item, loaded, total) => {\n progress.set({\n active: true,\n item,\n loaded,\n total,\n progress: ((loaded - saveLastTotalLoaded) / (total - saveLastTotalLoaded)) * 100,\n });\n cdr.detectChanges();\n };\n\n THREE.DefaultLoadingManager.onLoad = () => {\n progress.set({ active: false });\n cdr.detectChanges();\n };\n\n THREE.DefaultLoadingManager.onError = (url) => {\n progress.set({ errors: [...progress.get('errors'), url] });\n cdr.detectChanges();\n };\n\n THREE.DefaultLoadingManager.onProgress = (item, loaded, total) => {\n if (loaded === total) saveLastTotalLoaded = total;\n progress.set({\n item,\n loaded,\n total,\n progress: ((loaded - saveLastTotalLoaded) / (total - saveLastTotalLoaded)) * 100 || 100,\n });\n cdr.detectChanges();\n };\n\n return progress;\n}\n","import { AsyncPipe, NgIf } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ElementRef, Input, OnInit, ViewChild } from '@angular/core';\nimport { NgtPush, NgtRxStore, startWithUndefined } from 'angular-three';\nimport { combineLatest, map, of, switchMap, timer, withLatestFrom } from 'rxjs';\nimport { injectNgtsProgress } from '../progress/progress';\n\nconst defaultDataInterpolation = (p: number) => `Loading ${p.toFixed(2)}%`;\n\n@Component({\n selector: 'ngts-loader',\n standalone: true,\n template: `\n <ng-container *ngIf=\"vm$ | ngtPush as vm\">\n <div\n *ngIf=\"vm.shown\"\n class=\"ngts-loader-container\"\n [class]=\"vm.containerClass\"\n [style.--ngts-loader-container-opacity]=\"vm.active ? 1 : 0\"\n >\n <div>\n <div class=\"ngts-loader-inner\" [class]=\"vm.innerClass\">\n <div\n class=\"ngts-loader-bar\"\n [class]=\"vm.barClass\"\n [style.--ngts-loader-bar-scale]=\"vm.progress / 100\"\n ></div>\n <span #progressSpanRef class=\"ngts-loader-data\" [class]=\"vm.dataClass\"></span>\n </div>\n </div>\n </div>\n </ng-container>\n `,\n styleUrls: ['loader.css'],\n imports: [NgIf, AsyncPipe, NgtPush],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgtsLoader extends NgtRxStore implements OnInit {\n private readonly progress = injectNgtsProgress();\n\n readonly vm$ = combineLatest([\n this.select('shown'),\n this.select('containerClass').pipe(startWithUndefined()),\n this.select('innerClass').pipe(startWithUndefined()),\n this.select('barClass').pipe(startWithUndefined()),\n this.select('dataClass').pipe(startWithUndefined()),\n this.progress.select('progress'),\n this.progress.select('active'),\n ]).pipe(\n map(([shown, containerClass, innerClass, barClass, dataClass, progress, active]) => {\n return { shown, containerClass, innerClass, barClass, dataClass, progress, active };\n })\n );\n\n @Input() set containerClass(containerClass: string) {\n this.set({ containerClass });\n }\n\n @Input() set innerClass(innerClass: string) {\n this.set({ innerClass });\n }\n\n @Input() set barClass(barClass: string) {\n this.set({ barClass });\n }\n\n @Input() set dataClass(dataClass: string) {\n this.set({ dataClass });\n }\n\n @Input() set dataInterpolation(dataInterpolation: (value: number) => string) {\n this.set({ dataInterpolation });\n }\n\n @Input() set initialState(initialState: (value: boolean) => boolean) {\n this.set({ initialState });\n }\n\n @ViewChild('progressSpanRef') progressSpanRef?: ElementRef<HTMLSpanElement>;\n\n override initialize(): void {\n super.initialize();\n this.set({ dataInterpolation: defaultDataInterpolation, initialState: (active: boolean) => active });\n }\n\n ngOnInit() {\n this.set({ shown: this.get('initialState')(this.progress.get('active')) });\n this.connect(\n 'shown',\n this.progress.select('active').pipe(\n withLatestFrom(this.select('shown')),\n switchMap(([active, shown]) => {\n if (shown !== active) return timer(300).pipe(map(() => active));\n return of(shown);\n })\n )\n );\n\n let progressRef = 0;\n let rafId: ReturnType<typeof requestAnimationFrame>;\n\n this.effect(\n combineLatest([this.select('dataInterpolation'), this.progress.select('progress')]),\n ([dataInterpolation, progress]) => {\n const updateProgress = () => {\n if (!this.progressSpanRef?.nativeElement) return;\n progressRef += (progress - progressRef) / 2;\n if (progressRef > 0.95 * progress || progress === 100) progressRef = progress;\n this.progressSpanRef.nativeElement.innerText = dataInterpolation(progressRef);\n if (progressRef < progress) {\n rafId = requestAnimationFrame(updateProgress);\n }\n };\n\n updateProgress();\n\n return () => cancelAnimationFrame(rafId);\n }\n );\n }\n}\n","import { inject } from '@angular/core';\nimport { injectNgtLoader, NgtLoaderResults, NgtStore } from 'angular-three';\nimport { Observable, tap } from 'rxjs';\nimport * as THREE from 'three';\n\nexport const IsObject = (url: any): url is Record<string, string> =>\n url === Object(url) && !Array.isArray(url) && typeof url !== 'function';\n\nexport function injectNgtsTextureLoader<TInput extends string[] | string | Record<string, string>>(\n input: TInput | Observable<TInput>,\n onLoad?: (texture: THREE.Texture | THREE.Texture[]) => void\n): Observable<NgtLoaderResults<TInput, THREE.Texture>> {\n const store = inject(NgtStore);\n return injectNgtLoader(() => THREE.TextureLoader, input).pipe(\n tap((textures) => {\n const array = Array.isArray(textures)\n ? textures\n : textures instanceof THREE.Texture\n ? [textures]\n : Object.values(textures);\n if (onLoad) onLoad(array);\n array.forEach(store.get('gl').initTexture);\n })\n ) as Observable<NgtLoaderResults<TInput, THREE.Texture>>;\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}