angular-three 0.0.7 → 1.0.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (441) hide show
  1. package/esm2020/angular-three.mjs +1 -1
  2. package/esm2020/index.mjs +2 -35
  3. package/esm2020/lib/canvas.mjs +141 -128
  4. package/esm2020/lib/di/catalogue.mjs +7 -0
  5. package/esm2020/lib/directives/args.mjs +37 -17
  6. package/esm2020/lib/directives/repeat.mjs +5 -8
  7. package/esm2020/lib/events.mjs +341 -52
  8. package/esm2020/lib/loader.mjs +55 -0
  9. package/esm2020/lib/loop.mjs +137 -0
  10. package/esm2020/lib/renderer/di.mjs +3 -0
  11. package/esm2020/lib/renderer/enums.mjs +2 -0
  12. package/esm2020/lib/renderer/provider.mjs +19 -0
  13. package/esm2020/lib/renderer/renderer.mjs +293 -0
  14. package/esm2020/lib/renderer/state.mjs +350 -0
  15. package/esm2020/lib/renderer/utils.mjs +177 -0
  16. package/esm2020/lib/stores/rx-store.mjs +99 -0
  17. package/esm2020/lib/stores/store.mjs +190 -239
  18. package/esm2020/lib/types.mjs +1 -1
  19. package/esm2020/lib/utils/apply-props.mjs +37 -80
  20. package/esm2020/lib/utils/attach.mjs +29 -0
  21. package/esm2020/lib/utils/instance.mjs +43 -28
  22. package/esm2020/lib/utils/is.mjs +7 -11
  23. package/esm2020/lib/utils/make.mjs +30 -10
  24. package/esm2020/lib/utils/update.mjs +37 -0
  25. package/esm2020/lib/web/events.mjs +68 -0
  26. package/fesm2015/angular-three.mjs +2053 -2046
  27. package/fesm2015/angular-three.mjs.map +1 -1
  28. package/fesm2020/angular-three.mjs +2003 -1990
  29. package/fesm2020/angular-three.mjs.map +1 -1
  30. package/index.d.ts +1 -34
  31. package/lib/canvas.d.ts +29 -28
  32. package/lib/di/catalogue.d.ts +3 -0
  33. package/lib/directives/args.d.ts +8 -12
  34. package/lib/events.d.ts +7 -2
  35. package/lib/loader.d.ts +15 -0
  36. package/lib/{utils/loop.d.ts → loop.d.ts} +7 -6
  37. package/lib/renderer/di.d.ts +2 -0
  38. package/lib/renderer/enums.d.ts +25 -0
  39. package/lib/renderer/provider.d.ts +25 -0
  40. package/lib/renderer/renderer.d.ts +49 -0
  41. package/lib/renderer/state.d.ts +59 -0
  42. package/lib/renderer/utils.d.ts +20 -0
  43. package/lib/stores/rx-store.d.ts +17 -0
  44. package/lib/stores/store.d.ts +6 -23
  45. package/lib/types.d.ts +182 -191
  46. package/lib/utils/apply-props.d.ts +2 -6
  47. package/lib/utils/attach.d.ts +3 -0
  48. package/lib/utils/instance.d.ts +3 -3
  49. package/lib/utils/is.d.ts +6 -10
  50. package/lib/utils/make.d.ts +5 -2
  51. package/lib/utils/update.d.ts +4 -0
  52. package/lib/web/events.d.ts +4 -0
  53. package/package.json +30 -99
  54. package/attributes/README.md +0 -3
  55. package/attributes/index.d.ts +0 -22
  56. package/attributes/lib/buffer-attribute/buffer-attribute.d.ts +0 -8
  57. package/attributes/lib/color-attribute/color-attribute.d.ts +0 -8
  58. package/attributes/lib/common.d.ts +0 -1
  59. package/attributes/lib/float16-buffer-attribute/float16-buffer-attribute.d.ts +0 -8
  60. package/attributes/lib/float32-buffer-attribute/float32-buffer-attribute.d.ts +0 -8
  61. package/attributes/lib/float64-buffer-attribute/float64-buffer-attribute.d.ts +0 -8
  62. package/attributes/lib/fog-attribute/fog-attribute.d.ts +0 -8
  63. package/attributes/lib/fog-exp2-attribute/fog-exp2-attribute.d.ts +0 -8
  64. package/attributes/lib/instanced-buffer-attribute/instanced-buffer-attribute.d.ts +0 -8
  65. package/attributes/lib/int16-buffer-attribute/int16-buffer-attribute.d.ts +0 -8
  66. package/attributes/lib/int32-buffer-attribute/int32-buffer-attribute.d.ts +0 -8
  67. package/attributes/lib/int8-buffer-attribute/int8-buffer-attribute.d.ts +0 -8
  68. package/attributes/lib/interleaved-buffer-attribute/interleaved-buffer-attribute.d.ts +0 -8
  69. package/attributes/lib/matrix3-attribute/matrix3-attribute.d.ts +0 -8
  70. package/attributes/lib/matrix4-attribute/matrix4-attribute.d.ts +0 -8
  71. package/attributes/lib/uint16-buffer-attribute/uint16-buffer-attribute.d.ts +0 -8
  72. package/attributes/lib/uint32-buffer-attribute/uint32-buffer-attribute.d.ts +0 -8
  73. package/attributes/lib/uint8-buffer-attribute/uint8-buffer-attribute.d.ts +0 -8
  74. package/attributes/lib/uint8-clamped-buffer-attribute/uint8-clamped-buffer-attribute.d.ts +0 -8
  75. package/attributes/lib/value-attribute/value-attribute.d.ts +0 -8
  76. package/attributes/lib/vector2-attribute/vector2-attribute.d.ts +0 -8
  77. package/attributes/lib/vector3-attribute/vector3-attribute.d.ts +0 -8
  78. package/attributes/lib/vector4-attribute/vector4-attribute.d.ts +0 -8
  79. package/audios/README.md +0 -3
  80. package/audios/index.d.ts +0 -3
  81. package/audios/lib/audio/audio.d.ts +0 -49
  82. package/audios/lib/audio-listener/audio-listener.d.ts +0 -35
  83. package/audios/lib/common.d.ts +0 -3
  84. package/audios/lib/positional-audio/positional-audio.d.ts +0 -49
  85. package/cameras/README.md +0 -3
  86. package/cameras/index.d.ts +0 -5
  87. package/cameras/lib/array-camera/array-camera.d.ts +0 -56
  88. package/cameras/lib/common.d.ts +0 -3
  89. package/cameras/lib/cube-camera/cube-camera.d.ts +0 -36
  90. package/cameras/lib/orthographic-camera/orthographic-camera.d.ts +0 -54
  91. package/cameras/lib/perspective-camera/perspective-camera.d.ts +0 -55
  92. package/cameras/lib/stereo-camera/stereo-camera.d.ts +0 -42
  93. package/esm2020/attributes/angular-three-attributes.mjs +0 -5
  94. package/esm2020/attributes/index.mjs +0 -24
  95. package/esm2020/attributes/lib/buffer-attribute/buffer-attribute.mjs +0 -26
  96. package/esm2020/attributes/lib/color-attribute/color-attribute.mjs +0 -26
  97. package/esm2020/attributes/lib/common.mjs +0 -13
  98. package/esm2020/attributes/lib/float16-buffer-attribute/float16-buffer-attribute.mjs +0 -26
  99. package/esm2020/attributes/lib/float32-buffer-attribute/float32-buffer-attribute.mjs +0 -26
  100. package/esm2020/attributes/lib/float64-buffer-attribute/float64-buffer-attribute.mjs +0 -26
  101. package/esm2020/attributes/lib/fog-attribute/fog-attribute.mjs +0 -26
  102. package/esm2020/attributes/lib/fog-exp2-attribute/fog-exp2-attribute.mjs +0 -26
  103. package/esm2020/attributes/lib/instanced-buffer-attribute/instanced-buffer-attribute.mjs +0 -26
  104. package/esm2020/attributes/lib/int16-buffer-attribute/int16-buffer-attribute.mjs +0 -26
  105. package/esm2020/attributes/lib/int32-buffer-attribute/int32-buffer-attribute.mjs +0 -26
  106. package/esm2020/attributes/lib/int8-buffer-attribute/int8-buffer-attribute.mjs +0 -26
  107. package/esm2020/attributes/lib/interleaved-buffer-attribute/interleaved-buffer-attribute.mjs +0 -30
  108. package/esm2020/attributes/lib/matrix3-attribute/matrix3-attribute.mjs +0 -26
  109. package/esm2020/attributes/lib/matrix4-attribute/matrix4-attribute.mjs +0 -26
  110. package/esm2020/attributes/lib/uint16-buffer-attribute/uint16-buffer-attribute.mjs +0 -26
  111. package/esm2020/attributes/lib/uint32-buffer-attribute/uint32-buffer-attribute.mjs +0 -26
  112. package/esm2020/attributes/lib/uint8-buffer-attribute/uint8-buffer-attribute.mjs +0 -26
  113. package/esm2020/attributes/lib/uint8-clamped-buffer-attribute/uint8-clamped-buffer-attribute.mjs +0 -26
  114. package/esm2020/attributes/lib/value-attribute/value-attribute.mjs +0 -28
  115. package/esm2020/attributes/lib/vector2-attribute/vector2-attribute.mjs +0 -26
  116. package/esm2020/attributes/lib/vector3-attribute/vector3-attribute.mjs +0 -26
  117. package/esm2020/attributes/lib/vector4-attribute/vector4-attribute.mjs +0 -26
  118. package/esm2020/audios/angular-three-audios.mjs +0 -5
  119. package/esm2020/audios/index.mjs +0 -5
  120. package/esm2020/audios/lib/audio/audio.mjs +0 -45
  121. package/esm2020/audios/lib/audio-listener/audio-listener.mjs +0 -38
  122. package/esm2020/audios/lib/common.mjs +0 -54
  123. package/esm2020/audios/lib/positional-audio/positional-audio.mjs +0 -45
  124. package/esm2020/cameras/angular-three-cameras.mjs +0 -5
  125. package/esm2020/cameras/index.mjs +0 -7
  126. package/esm2020/cameras/lib/array-camera/array-camera.mjs +0 -44
  127. package/esm2020/cameras/lib/common.mjs +0 -54
  128. package/esm2020/cameras/lib/cube-camera/cube-camera.mjs +0 -30
  129. package/esm2020/cameras/lib/orthographic-camera/orthographic-camera.mjs +0 -42
  130. package/esm2020/cameras/lib/perspective-camera/perspective-camera.mjs +0 -43
  131. package/esm2020/cameras/lib/stereo-camera/stereo-camera.mjs +0 -38
  132. package/esm2020/geometries/angular-three-geometries.mjs +0 -5
  133. package/esm2020/geometries/index.mjs +0 -25
  134. package/esm2020/geometries/lib/box-geometry/box-geometry.mjs +0 -26
  135. package/esm2020/geometries/lib/buffer-geometry/buffer-geometry.mjs +0 -26
  136. package/esm2020/geometries/lib/capsule-geometry/capsule-geometry.mjs +0 -26
  137. package/esm2020/geometries/lib/circle-geometry/circle-geometry.mjs +0 -26
  138. package/esm2020/geometries/lib/common.mjs +0 -13
  139. package/esm2020/geometries/lib/cone-geometry/cone-geometry.mjs +0 -26
  140. package/esm2020/geometries/lib/cylinder-geometry/cylinder-geometry.mjs +0 -26
  141. package/esm2020/geometries/lib/dodecahedron-geometry/dodecahedron-geometry.mjs +0 -26
  142. package/esm2020/geometries/lib/edges-geometry/edges-geometry.mjs +0 -26
  143. package/esm2020/geometries/lib/extrude-geometry/extrude-geometry.mjs +0 -26
  144. package/esm2020/geometries/lib/icosahedron-geometry/icosahedron-geometry.mjs +0 -26
  145. package/esm2020/geometries/lib/instanced-buffer-geometry/instanced-buffer-geometry.mjs +0 -26
  146. package/esm2020/geometries/lib/lathe-geometry/lathe-geometry.mjs +0 -26
  147. package/esm2020/geometries/lib/octahedron-geometry/octahedron-geometry.mjs +0 -26
  148. package/esm2020/geometries/lib/plane-geometry/plane-geometry.mjs +0 -26
  149. package/esm2020/geometries/lib/polyhedron-geometry/polyhedron-geometry.mjs +0 -26
  150. package/esm2020/geometries/lib/ring-geometry/ring-geometry.mjs +0 -26
  151. package/esm2020/geometries/lib/shape-geometry/shape-geometry.mjs +0 -26
  152. package/esm2020/geometries/lib/sphere-geometry/sphere-geometry.mjs +0 -26
  153. package/esm2020/geometries/lib/tetrahedron-geometry/tetrahedron-geometry.mjs +0 -26
  154. package/esm2020/geometries/lib/torus-geometry/torus-geometry.mjs +0 -26
  155. package/esm2020/geometries/lib/torus-knot-geometry/torus-knot-geometry.mjs +0 -26
  156. package/esm2020/geometries/lib/tube-geometry/tube-geometry.mjs +0 -26
  157. package/esm2020/geometries/lib/wireframe-geometry/wireframe-geometry.mjs +0 -26
  158. package/esm2020/helpers/angular-three-helpers.mjs +0 -5
  159. package/esm2020/helpers/index.mjs +0 -15
  160. package/esm2020/helpers/lib/arrow-helper/arrow-helper.mjs +0 -26
  161. package/esm2020/helpers/lib/axes-helper/axes-helper.mjs +0 -26
  162. package/esm2020/helpers/lib/box-helper/box-helper.mjs +0 -36
  163. package/esm2020/helpers/lib/box3-helper/box3-helper.mjs +0 -36
  164. package/esm2020/helpers/lib/camera-helper/camera-helper.mjs +0 -36
  165. package/esm2020/helpers/lib/common.mjs +0 -13
  166. package/esm2020/helpers/lib/directional-light-helper/directional-light-helper.mjs +0 -36
  167. package/esm2020/helpers/lib/grid-helper/grid-helper.mjs +0 -26
  168. package/esm2020/helpers/lib/hemisphere-light-helper/hemisphere-light-helper.mjs +0 -36
  169. package/esm2020/helpers/lib/plane-helper/plane-helper.mjs +0 -36
  170. package/esm2020/helpers/lib/point-light-helper/point-light-helper.mjs +0 -36
  171. package/esm2020/helpers/lib/polar-grid-helper/polar-grid-helper.mjs +0 -26
  172. package/esm2020/helpers/lib/skeleton-helper/skeleton-helper.mjs +0 -36
  173. package/esm2020/helpers/lib/spot-light-helper/spot-light-helper.mjs +0 -36
  174. package/esm2020/lib/di/resize.mjs +0 -19
  175. package/esm2020/lib/di/window.mjs +0 -13
  176. package/esm2020/lib/directives/cursor.mjs +0 -35
  177. package/esm2020/lib/instance.mjs +0 -368
  178. package/esm2020/lib/pipes/math.mjs +0 -15
  179. package/esm2020/lib/pipes/pi.mjs +0 -14
  180. package/esm2020/lib/pipes/radian.mjs +0 -14
  181. package/esm2020/lib/pipes/side.mjs +0 -22
  182. package/esm2020/lib/ref.mjs +0 -15
  183. package/esm2020/lib/services/loader.mjs +0 -45
  184. package/esm2020/lib/services/resize.mjs +0 -127
  185. package/esm2020/lib/stores/component-store.mjs +0 -137
  186. package/esm2020/lib/utils/build-graph.mjs +0 -15
  187. package/esm2020/lib/utils/camera.mjs +0 -28
  188. package/esm2020/lib/utils/capitalize.mjs +0 -4
  189. package/esm2020/lib/utils/check-update.mjs +0 -22
  190. package/esm2020/lib/utils/events.mjs +0 -353
  191. package/esm2020/lib/utils/get-instance-local-state.mjs +0 -6
  192. package/esm2020/lib/utils/inject.mjs +0 -18
  193. package/esm2020/lib/utils/loop.mjs +0 -139
  194. package/esm2020/lib/utils/mutate.mjs +0 -24
  195. package/esm2020/lib/utils/proxy.mjs +0 -99
  196. package/esm2020/lib/utils/renderer.mjs +0 -15
  197. package/esm2020/lights/angular-three-lights.mjs +0 -5
  198. package/esm2020/lights/index.mjs +0 -11
  199. package/esm2020/lights/lib/ambient-light/ambient-light.mjs +0 -30
  200. package/esm2020/lights/lib/ambient-light-probe/ambient-light-probe.mjs +0 -30
  201. package/esm2020/lights/lib/common.mjs +0 -54
  202. package/esm2020/lights/lib/directional-light/directional-light.mjs +0 -30
  203. package/esm2020/lights/lib/hemisphere-light/hemisphere-light.mjs +0 -30
  204. package/esm2020/lights/lib/hemisphere-light-probe/hemisphere-light-probe.mjs +0 -30
  205. package/esm2020/lights/lib/light-probe/light-probe.mjs +0 -30
  206. package/esm2020/lights/lib/point-light/point-light.mjs +0 -30
  207. package/esm2020/lights/lib/rect-area-light/rect-area-light.mjs +0 -30
  208. package/esm2020/lights/lib/spot-light/spot-light.mjs +0 -42
  209. package/esm2020/materials/angular-three-materials.mjs +0 -5
  210. package/esm2020/materials/index.mjs +0 -19
  211. package/esm2020/materials/lib/common.mjs +0 -13
  212. package/esm2020/materials/lib/line-basic-material/line-basic-material.mjs +0 -77
  213. package/esm2020/materials/lib/line-dashed-material/line-dashed-material.mjs +0 -80
  214. package/esm2020/materials/lib/mesh-basic-material/mesh-basic-material.mjs +0 -89
  215. package/esm2020/materials/lib/mesh-depth-material/mesh-depth-material.mjs +0 -80
  216. package/esm2020/materials/lib/mesh-distance-material/mesh-distance-material.mjs +0 -80
  217. package/esm2020/materials/lib/mesh-lambert-material/mesh-lambert-material.mjs +0 -100
  218. package/esm2020/materials/lib/mesh-matcap-material/mesh-matcap-material.mjs +0 -86
  219. package/esm2020/materials/lib/mesh-normal-material/mesh-normal-material.mjs +0 -83
  220. package/esm2020/materials/lib/mesh-phong-material/mesh-phong-material.mjs +0 -103
  221. package/esm2020/materials/lib/mesh-physical-material/mesh-physical-material.mjs +0 -119
  222. package/esm2020/materials/lib/mesh-standard-material/mesh-standard-material.mjs +0 -100
  223. package/esm2020/materials/lib/mesh-toon-material/mesh-toon-material.mjs +0 -96
  224. package/esm2020/materials/lib/points-material/points-material.mjs +0 -78
  225. package/esm2020/materials/lib/raw-shader-material/raw-shader-material.mjs +0 -83
  226. package/esm2020/materials/lib/shader-material/shader-material.mjs +0 -83
  227. package/esm2020/materials/lib/shadow-material/shadow-material.mjs +0 -74
  228. package/esm2020/materials/lib/sprite-material/sprite-material.mjs +0 -78
  229. package/esm2020/objects/angular-three-objects.mjs +0 -5
  230. package/esm2020/objects/index.mjs +0 -14
  231. package/esm2020/objects/lib/bone/bone.mjs +0 -27
  232. package/esm2020/objects/lib/common.mjs +0 -54
  233. package/esm2020/objects/lib/group/group.mjs +0 -27
  234. package/esm2020/objects/lib/instanced-mesh/instanced-mesh.mjs +0 -40
  235. package/esm2020/objects/lib/line/line.mjs +0 -30
  236. package/esm2020/objects/lib/line-loop/line-loop.mjs +0 -30
  237. package/esm2020/objects/lib/line-segments/line-segments.mjs +0 -30
  238. package/esm2020/objects/lib/lod/lod.mjs +0 -30
  239. package/esm2020/objects/lib/mesh/mesh.mjs +0 -30
  240. package/esm2020/objects/lib/points/points.mjs +0 -30
  241. package/esm2020/objects/lib/skeleton/skeleton.mjs +0 -41
  242. package/esm2020/objects/lib/skinned-mesh/skinned-mesh.mjs +0 -39
  243. package/esm2020/objects/lib/sprite/sprite.mjs +0 -30
  244. package/esm2020/primitives/angular-three-primitives.mjs +0 -5
  245. package/esm2020/primitives/index.mjs +0 -3
  246. package/esm2020/primitives/lib/common.mjs +0 -54
  247. package/esm2020/primitives/lib/object-primitive/object-primitive.mjs +0 -27
  248. package/esm2020/primitives/lib/primitive/primitive.mjs +0 -38
  249. package/esm2020/stats/angular-three-stats.mjs +0 -5
  250. package/esm2020/stats/index.mjs +0 -2
  251. package/esm2020/stats/lib/stats/stats.mjs +0 -54
  252. package/esm2020/textures/angular-three-textures.mjs +0 -5
  253. package/esm2020/textures/index.mjs +0 -12
  254. package/esm2020/textures/lib/canvas-texture/canvas-texture.mjs +0 -26
  255. package/esm2020/textures/lib/common.mjs +0 -13
  256. package/esm2020/textures/lib/compressed-array-texture/compressed-array-texture.mjs +0 -26
  257. package/esm2020/textures/lib/compressed-texture/compressed-texture.mjs +0 -26
  258. package/esm2020/textures/lib/cube-texture/cube-texture.mjs +0 -26
  259. package/esm2020/textures/lib/data-array-texture/data-array-texture.mjs +0 -26
  260. package/esm2020/textures/lib/data-texture/data-texture.mjs +0 -26
  261. package/esm2020/textures/lib/data3-dtexture/data3-dtexture.mjs +0 -26
  262. package/esm2020/textures/lib/depth-texture/depth-texture.mjs +0 -26
  263. package/esm2020/textures/lib/framebuffer-texture/framebuffer-texture.mjs +0 -26
  264. package/esm2020/textures/lib/video-texture/video-texture.mjs +0 -26
  265. package/fesm2015/angular-three-attributes.mjs +0 -475
  266. package/fesm2015/angular-three-attributes.mjs.map +0 -1
  267. package/fesm2015/angular-three-audios.mjs +0 -179
  268. package/fesm2015/angular-three-audios.mjs.map +0 -1
  269. package/fesm2015/angular-three-cameras.mjs +0 -236
  270. package/fesm2015/angular-three-cameras.mjs.map +0 -1
  271. package/fesm2015/angular-three-geometries.mjs +0 -488
  272. package/fesm2015/angular-three-geometries.mjs.map +0 -1
  273. package/fesm2015/angular-three-helpers.mjs +0 -378
  274. package/fesm2015/angular-three-helpers.mjs.map +0 -1
  275. package/fesm2015/angular-three-lights.mjs +0 -297
  276. package/fesm2015/angular-three-lights.mjs.map +0 -1
  277. package/fesm2015/angular-three-materials.mjs +0 -1415
  278. package/fesm2015/angular-three-materials.mjs.map +0 -1
  279. package/fesm2015/angular-three-objects.mjs +0 -381
  280. package/fesm2015/angular-three-objects.mjs.map +0 -1
  281. package/fesm2015/angular-three-primitives.mjs +0 -120
  282. package/fesm2015/angular-three-primitives.mjs.map +0 -1
  283. package/fesm2015/angular-three-stats.mjs +0 -62
  284. package/fesm2015/angular-three-stats.mjs.map +0 -1
  285. package/fesm2015/angular-three-textures.mjs +0 -228
  286. package/fesm2015/angular-three-textures.mjs.map +0 -1
  287. package/fesm2020/angular-three-attributes.mjs +0 -475
  288. package/fesm2020/angular-three-attributes.mjs.map +0 -1
  289. package/fesm2020/angular-three-audios.mjs +0 -179
  290. package/fesm2020/angular-three-audios.mjs.map +0 -1
  291. package/fesm2020/angular-three-cameras.mjs +0 -236
  292. package/fesm2020/angular-three-cameras.mjs.map +0 -1
  293. package/fesm2020/angular-three-geometries.mjs +0 -488
  294. package/fesm2020/angular-three-geometries.mjs.map +0 -1
  295. package/fesm2020/angular-three-helpers.mjs +0 -378
  296. package/fesm2020/angular-three-helpers.mjs.map +0 -1
  297. package/fesm2020/angular-three-lights.mjs +0 -297
  298. package/fesm2020/angular-three-lights.mjs.map +0 -1
  299. package/fesm2020/angular-three-materials.mjs +0 -1415
  300. package/fesm2020/angular-three-materials.mjs.map +0 -1
  301. package/fesm2020/angular-three-objects.mjs +0 -381
  302. package/fesm2020/angular-three-objects.mjs.map +0 -1
  303. package/fesm2020/angular-three-primitives.mjs +0 -120
  304. package/fesm2020/angular-three-primitives.mjs.map +0 -1
  305. package/fesm2020/angular-three-stats.mjs +0 -62
  306. package/fesm2020/angular-three-stats.mjs.map +0 -1
  307. package/fesm2020/angular-three-textures.mjs +0 -228
  308. package/fesm2020/angular-three-textures.mjs.map +0 -1
  309. package/geometries/README.md +0 -3
  310. package/geometries/index.d.ts +0 -23
  311. package/geometries/lib/box-geometry/box-geometry.d.ts +0 -8
  312. package/geometries/lib/buffer-geometry/buffer-geometry.d.ts +0 -8
  313. package/geometries/lib/capsule-geometry/capsule-geometry.d.ts +0 -8
  314. package/geometries/lib/circle-geometry/circle-geometry.d.ts +0 -8
  315. package/geometries/lib/common.d.ts +0 -1
  316. package/geometries/lib/cone-geometry/cone-geometry.d.ts +0 -8
  317. package/geometries/lib/cylinder-geometry/cylinder-geometry.d.ts +0 -8
  318. package/geometries/lib/dodecahedron-geometry/dodecahedron-geometry.d.ts +0 -8
  319. package/geometries/lib/edges-geometry/edges-geometry.d.ts +0 -8
  320. package/geometries/lib/extrude-geometry/extrude-geometry.d.ts +0 -8
  321. package/geometries/lib/icosahedron-geometry/icosahedron-geometry.d.ts +0 -8
  322. package/geometries/lib/instanced-buffer-geometry/instanced-buffer-geometry.d.ts +0 -8
  323. package/geometries/lib/lathe-geometry/lathe-geometry.d.ts +0 -8
  324. package/geometries/lib/octahedron-geometry/octahedron-geometry.d.ts +0 -8
  325. package/geometries/lib/plane-geometry/plane-geometry.d.ts +0 -8
  326. package/geometries/lib/polyhedron-geometry/polyhedron-geometry.d.ts +0 -8
  327. package/geometries/lib/ring-geometry/ring-geometry.d.ts +0 -8
  328. package/geometries/lib/shape-geometry/shape-geometry.d.ts +0 -8
  329. package/geometries/lib/sphere-geometry/sphere-geometry.d.ts +0 -8
  330. package/geometries/lib/tetrahedron-geometry/tetrahedron-geometry.d.ts +0 -8
  331. package/geometries/lib/torus-geometry/torus-geometry.d.ts +0 -8
  332. package/geometries/lib/torus-knot-geometry/torus-knot-geometry.d.ts +0 -8
  333. package/geometries/lib/tube-geometry/tube-geometry.d.ts +0 -8
  334. package/geometries/lib/wireframe-geometry/wireframe-geometry.d.ts +0 -8
  335. package/helpers/README.md +0 -3
  336. package/helpers/index.d.ts +0 -13
  337. package/helpers/lib/arrow-helper/arrow-helper.d.ts +0 -8
  338. package/helpers/lib/axes-helper/axes-helper.d.ts +0 -8
  339. package/helpers/lib/box-helper/box-helper.d.ts +0 -8
  340. package/helpers/lib/box3-helper/box3-helper.d.ts +0 -8
  341. package/helpers/lib/camera-helper/camera-helper.d.ts +0 -8
  342. package/helpers/lib/common.d.ts +0 -1
  343. package/helpers/lib/directional-light-helper/directional-light-helper.d.ts +0 -8
  344. package/helpers/lib/grid-helper/grid-helper.d.ts +0 -8
  345. package/helpers/lib/hemisphere-light-helper/hemisphere-light-helper.d.ts +0 -8
  346. package/helpers/lib/plane-helper/plane-helper.d.ts +0 -8
  347. package/helpers/lib/point-light-helper/point-light-helper.d.ts +0 -8
  348. package/helpers/lib/polar-grid-helper/polar-grid-helper.d.ts +0 -8
  349. package/helpers/lib/skeleton-helper/skeleton-helper.d.ts +0 -8
  350. package/helpers/lib/spot-light-helper/spot-light-helper.d.ts +0 -8
  351. package/lib/di/resize.d.ts +0 -12
  352. package/lib/di/window.d.ts +0 -1
  353. package/lib/directives/cursor.d.ts +0 -7
  354. package/lib/instance.d.ts +0 -81
  355. package/lib/pipes/math.d.ts +0 -7
  356. package/lib/pipes/pi.d.ts +0 -7
  357. package/lib/pipes/radian.d.ts +0 -7
  358. package/lib/pipes/side.d.ts +0 -8
  359. package/lib/ref.d.ts +0 -5
  360. package/lib/services/loader.d.ts +0 -11
  361. package/lib/services/resize.d.ts +0 -19
  362. package/lib/stores/component-store.d.ts +0 -69
  363. package/lib/utils/build-graph.d.ts +0 -3
  364. package/lib/utils/camera.d.ts +0 -4
  365. package/lib/utils/capitalize.d.ts +0 -1
  366. package/lib/utils/check-update.d.ts +0 -2
  367. package/lib/utils/events.d.ts +0 -6
  368. package/lib/utils/get-instance-local-state.d.ts +0 -2
  369. package/lib/utils/inject.d.ts +0 -9
  370. package/lib/utils/mutate.d.ts +0 -2
  371. package/lib/utils/proxy.d.ts +0 -7
  372. package/lib/utils/renderer.d.ts +0 -3
  373. package/lights/README.md +0 -3
  374. package/lights/index.d.ts +0 -9
  375. package/lights/lib/ambient-light/ambient-light.d.ts +0 -39
  376. package/lights/lib/ambient-light-probe/ambient-light-probe.d.ts +0 -40
  377. package/lights/lib/common.d.ts +0 -3
  378. package/lights/lib/directional-light/directional-light.d.ts +0 -40
  379. package/lights/lib/hemisphere-light/hemisphere-light.d.ts +0 -41
  380. package/lights/lib/hemisphere-light-probe/hemisphere-light-probe.d.ts +0 -42
  381. package/lights/lib/light-probe/light-probe.d.ts +0 -40
  382. package/lights/lib/point-light/point-light.d.ts +0 -42
  383. package/lights/lib/rect-area-light/rect-area-light.d.ts +0 -42
  384. package/lights/lib/spot-light/spot-light.d.ts +0 -45
  385. package/materials/README.md +0 -3
  386. package/materials/index.d.ts +0 -17
  387. package/materials/lib/common.d.ts +0 -1
  388. package/materials/lib/line-basic-material/line-basic-material.d.ts +0 -55
  389. package/materials/lib/line-dashed-material/line-dashed-material.d.ts +0 -58
  390. package/materials/lib/mesh-basic-material/mesh-basic-material.d.ts +0 -67
  391. package/materials/lib/mesh-depth-material/mesh-depth-material.d.ts +0 -58
  392. package/materials/lib/mesh-distance-material/mesh-distance-material.d.ts +0 -58
  393. package/materials/lib/mesh-lambert-material/mesh-lambert-material.d.ts +0 -78
  394. package/materials/lib/mesh-matcap-material/mesh-matcap-material.d.ts +0 -64
  395. package/materials/lib/mesh-normal-material/mesh-normal-material.d.ts +0 -61
  396. package/materials/lib/mesh-phong-material/mesh-phong-material.d.ts +0 -81
  397. package/materials/lib/mesh-physical-material/mesh-physical-material.d.ts +0 -97
  398. package/materials/lib/mesh-standard-material/mesh-standard-material.d.ts +0 -78
  399. package/materials/lib/mesh-toon-material/mesh-toon-material.d.ts +0 -74
  400. package/materials/lib/points-material/points-material.d.ts +0 -56
  401. package/materials/lib/raw-shader-material/raw-shader-material.d.ts +0 -68
  402. package/materials/lib/shader-material/shader-material.d.ts +0 -68
  403. package/materials/lib/shadow-material/shadow-material.d.ts +0 -52
  404. package/materials/lib/sprite-material/sprite-material.d.ts +0 -56
  405. package/objects/README.md +0 -3
  406. package/objects/index.d.ts +0 -12
  407. package/objects/lib/bone/bone.d.ts +0 -35
  408. package/objects/lib/common.d.ts +0 -3
  409. package/objects/lib/group/group.d.ts +0 -35
  410. package/objects/lib/instanced-mesh/instanced-mesh.d.ts +0 -44
  411. package/objects/lib/line/line.d.ts +0 -41
  412. package/objects/lib/line-loop/line-loop.d.ts +0 -41
  413. package/objects/lib/line-segments/line-segments.d.ts +0 -41
  414. package/objects/lib/lod/lod.d.ts +0 -40
  415. package/objects/lib/mesh/mesh.d.ts +0 -41
  416. package/objects/lib/points/points.d.ts +0 -41
  417. package/objects/lib/skeleton/skeleton.d.ts +0 -16
  418. package/objects/lib/skinned-mesh/skinned-mesh.d.ts +0 -45
  419. package/objects/lib/sprite/sprite.d.ts +0 -38
  420. package/primitives/README.md +0 -3
  421. package/primitives/index.d.ts +0 -2
  422. package/primitives/lib/common.d.ts +0 -3
  423. package/primitives/lib/object-primitive/object-primitive.d.ts +0 -35
  424. package/primitives/lib/primitive/primitive.d.ts +0 -10
  425. package/schematics/README.md +0 -11
  426. package/stats/README.md +0 -3
  427. package/stats/index.d.ts +0 -1
  428. package/stats/lib/stats/stats.d.ts +0 -16
  429. package/textures/README.md +0 -3
  430. package/textures/index.d.ts +0 -10
  431. package/textures/lib/canvas-texture/canvas-texture.d.ts +0 -8
  432. package/textures/lib/common.d.ts +0 -1
  433. package/textures/lib/compressed-array-texture/compressed-array-texture.d.ts +0 -8
  434. package/textures/lib/compressed-texture/compressed-texture.d.ts +0 -8
  435. package/textures/lib/cube-texture/cube-texture.d.ts +0 -8
  436. package/textures/lib/data-array-texture/data-array-texture.d.ts +0 -8
  437. package/textures/lib/data-texture/data-texture.d.ts +0 -8
  438. package/textures/lib/data3-dtexture/data3-dtexture.d.ts +0 -8
  439. package/textures/lib/depth-texture/depth-texture.d.ts +0 -8
  440. package/textures/lib/framebuffer-texture/framebuffer-texture.d.ts +0 -8
  441. package/textures/lib/video-texture/video-texture.d.ts +0 -8
package/index.d.ts CHANGED
@@ -1,38 +1,5 @@
1
- /**
2
- * main exports
3
- */
4
1
  export * from './lib/canvas';
5
2
  export * from './lib/types';
6
- export * from './lib/instance';
7
- /**
8
- * services
9
- */
10
- export * from './lib/services/loader';
11
- export * from './lib/services/resize';
12
- /**
13
- * stores
14
- */
15
- export * from './lib/stores/store';
16
- export * from './lib/stores/component-store';
17
- /**
18
- * directives
19
- */
3
+ export * from './lib/di/catalogue';
20
4
  export * from './lib/directives/args';
21
- export * from './lib/directives/cursor';
22
5
  export * from './lib/directives/repeat';
23
- /**
24
- * pipes
25
- */
26
- export * from './lib/pipes/pi';
27
- export * from './lib/pipes/math';
28
- export * from './lib/pipes/radian';
29
- export * from './lib/pipes/side';
30
- /**
31
- * utilities
32
- */
33
- export * from './lib/utils/proxy';
34
- export * from './lib/utils/loop';
35
- /**
36
- * resize
37
- */
38
- export * from './lib/di/resize';
package/lib/canvas.d.ts CHANGED
@@ -1,46 +1,47 @@
1
- import { ElementRef, EventEmitter, OnDestroy, OnInit, TemplateRef } from '@angular/core';
2
- import { Observable } from 'rxjs';
3
- import * as THREE from 'three';
4
- import { NgtResizeResult } from './services/resize';
5
- import { NgtComponentStore } from './stores/component-store';
6
- import type { NgtCanvasInputs, NgtDpr, NgtObservableInput, NgtState, NgtVector3 } from './types';
1
+ import { ElementRef, EventEmitter, OnDestroy, OnInit, Type, ViewContainerRef } from '@angular/core';
2
+ import { NgxResizeResult } from 'ngx-resize';
3
+ import { NgtRxStore } from './stores/rx-store';
4
+ import type { NgtCanvasInputs, NgtDpr, NgtState } from './types';
7
5
  import * as i0 from "@angular/core";
8
6
  export declare class NgtCanvasContainer {
9
- resize: Observable<NgtResizeResult>;
7
+ canvasResize: import("rxjs").Observable<NgxResizeResult>;
10
8
  static ɵfac: i0.ɵɵFactoryDeclaration<NgtCanvasContainer, never>;
11
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtCanvasContainer, "ngt-canvas-container", never, {}, { "resize": "resize"; }, never, ["*"], true, never>;
9
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtCanvasContainer, "ngt-canvas-container", never, {}, { "canvasResize": "canvasResize"; }, never, ["*"], true, never>;
12
10
  }
13
- export declare class NgtCanvas extends NgtComponentStore<NgtCanvasInputs> implements OnInit, OnDestroy {
11
+ export declare class NgtCanvas extends NgtRxStore<NgtCanvasInputs> implements OnInit, OnDestroy {
12
+ private readonly cdr;
13
+ private readonly envInjector;
14
+ private readonly host;
15
+ private readonly store;
16
+ initialize(): void;
14
17
  readonly hostClass = true;
15
- get pointerEvents(): "auto" | "none";
16
- set linear(linear: NgtObservableInput<boolean>);
17
- set legacy(legacy: NgtObservableInput<boolean>);
18
- set flat(flat: NgtObservableInput<boolean>);
19
- set orthographic(orthographic: NgtObservableInput<boolean>);
20
- set frameloop(frameloop: NgtObservableInput<'always' | 'demand' | 'never'>);
21
- set dpr(dpr: NgtObservableInput<NgtDpr>);
18
+ get pointerEvents(): "none" | "auto";
19
+ scene: Type<any>;
20
+ compoundPrefixes: string[];
21
+ set linear(linear: boolean);
22
+ set legacy(legacy: boolean);
23
+ set flat(flat: boolean);
24
+ set orthographic(orthographic: boolean);
25
+ set frameloop(frameloop: NgtCanvasInputs['frameloop']);
26
+ set dpr(dpr: NgtDpr);
22
27
  set raycaster(raycaster: Partial<THREE.Raycaster>);
23
28
  set shadows(shadows: boolean | Partial<THREE.WebGLShadowMap>);
24
29
  set camera(camera: NgtCanvasInputs['camera']);
25
30
  set gl(gl: NgtCanvasInputs['gl']);
26
31
  set eventSource(eventSource: NgtCanvasInputs['eventSource']);
27
32
  set eventPrefix(eventPrefix: NgtCanvasInputs['eventPrefix']);
28
- set lookAt(lookAt: NgtObservableInput<NgtVector3>);
33
+ set lookAt(lookAt: NgtCanvasInputs['lookAt']);
29
34
  set performance(performance: NgtCanvasInputs['performance']);
30
35
  created: EventEmitter<NgtState>;
31
- canvasPointerMissed: EventEmitter<any>;
36
+ pointerMissed: EventEmitter<MouseEvent>;
32
37
  glCanvas: ElementRef<HTMLCanvasElement>;
33
- canvasContent: TemplateRef<unknown>;
34
- private readonly zone;
35
- private readonly loader;
36
- private readonly store;
37
- private readonly host;
38
- get sceneRef(): import("./ref").NgtRef<THREE.Scene>;
39
- get isConfigured(): boolean;
40
- initialize(): void;
38
+ glAnchor: ViewContainerRef;
39
+ private glRef?;
40
+ private glEnvInjector?;
41
41
  ngOnInit(): void;
42
- onResize(resizeResult: NgtResizeResult): void;
42
+ onResize({ width, height }: NgxResizeResult): void;
43
+ private storeReady;
43
44
  ngOnDestroy(): void;
44
45
  static ɵfac: i0.ɵɵFactoryDeclaration<NgtCanvas, never>;
45
- static ɵcmp: i0.ɵɵComponentDeclaration<NgtCanvas, "ngt-canvas", never, { "linear": "linear"; "legacy": "legacy"; "flat": "flat"; "orthographic": "orthographic"; "frameloop": "frameloop"; "dpr": "dpr"; "raycaster": "raycaster"; "shadows": "shadows"; "camera": "camera"; "gl": "gl"; "eventSource": "eventSource"; "eventPrefix": "eventPrefix"; "lookAt": "lookAt"; "performance": "performance"; }, { "created": "created"; "canvasPointerMissed": "canvasPointerMissed"; }, ["canvasContent"], ["*"], true, never>;
46
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgtCanvas, "ngt-canvas", never, { "scene": "scene"; "compoundPrefixes": "compoundPrefixes"; "linear": "linear"; "legacy": "legacy"; "flat": "flat"; "orthographic": "orthographic"; "frameloop": "frameloop"; "dpr": "dpr"; "raycaster": "raycaster"; "shadows": "shadows"; "camera": "camera"; "gl": "gl"; "eventSource": "eventSource"; "eventPrefix": "eventPrefix"; "lookAt": "lookAt"; "performance": "performance"; }, { "created": "created"; "pointerMissed": "pointerMissed"; }, never, never, true, never>;
46
47
  }
@@ -0,0 +1,3 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export declare function extend(objects: object): void;
3
+ export declare const NGT_CATALOGUE: InjectionToken<Record<string, new (...args: any[]) => any>>;
@@ -1,19 +1,15 @@
1
- import { InjectionToken, InjectOptions } from '@angular/core';
2
- import { NgtAnyCtor } from '../types';
3
1
  import * as i0 from "@angular/core";
4
- export declare const NGT_ARGS: InjectionToken<unknown[]>;
5
- export declare function injectArgs<TCtor extends NgtAnyCtor = NgtAnyCtor>(): ConstructorParameters<TCtor>;
6
- export declare function injectArgs<TCtor extends NgtAnyCtor = NgtAnyCtor>(options: InjectOptions & {
7
- optional?: false;
8
- }): ConstructorParameters<TCtor>;
9
- export declare function injectArgs<TCtor extends NgtAnyCtor = NgtAnyCtor>(options: InjectOptions & {
10
- optional?: true;
11
- }): ConstructorParameters<TCtor> | null;
12
2
  export declare class NgtArgs {
13
- private readonly templateRef;
14
3
  private readonly vcr;
4
+ private readonly template;
5
+ constructor();
6
+ private injectedArgs;
7
+ private injected;
15
8
  private view?;
16
- set args(args: unknown[]);
9
+ set args(args: any[] | null);
10
+ get args(): any[] | null;
11
+ validate(): boolean;
12
+ private createView;
17
13
  static ɵfac: i0.ɵɵFactoryDeclaration<NgtArgs, never>;
18
14
  static ɵdir: i0.ɵɵDirectiveDeclaration<NgtArgs, "[args]", never, { "args": "args"; }, {}, never, never, true, never>;
19
15
  }
package/lib/events.d.ts CHANGED
@@ -1,2 +1,7 @@
1
- import type { NgtEventManager, NgtStateFactory } from './types';
2
- export declare function createPointerEvents(stateFactory: NgtStateFactory): NgtEventManager<HTMLElement>;
1
+ import * as THREE from 'three';
2
+ import type { NgtRxStore } from './stores/rx-store';
3
+ import type { NgtDomEvent, NgtState } from './types';
4
+ export declare function removeInteractivity(store: NgtRxStore<NgtState>, object: THREE.Object3D): void;
5
+ export declare function createEvents(store: NgtRxStore<NgtState>): {
6
+ handlePointer: (name: string) => (event: NgtDomEvent) => void;
7
+ };
@@ -0,0 +1,15 @@
1
+ import { Observable } from 'rxjs';
2
+ import type { GLTF } from 'three-stdlib';
3
+ import type { NgtBranchingReturn, NgtLoaderExtensions, NgtLoaderResult, NgtObjectMap } from './types';
4
+ interface NgtLoader {
5
+ <TReturnType, TUrl extends string | string[] | Record<string, string>>(loaderConstructorFactory: (inputs: TUrl) => new (...args: any[]) => NgtLoaderResult<TReturnType>, input: TUrl | Observable<TUrl>, extensions?: NgtLoaderExtensions, onProgress?: (event: ProgressEvent) => void): Observable<TUrl extends string[] ? Array<NgtBranchingReturn<TReturnType, GLTF, GLTF & NgtObjectMap>> : TUrl extends object ? {
6
+ [key in keyof TUrl]: NgtBranchingReturn<TReturnType, GLTF, GLTF & NgtObjectMap>;
7
+ } : NgtBranchingReturn<TReturnType, GLTF, GLTF & NgtObjectMap>>;
8
+ destroy: () => void;
9
+ preLoad: <TReturnType, TUrl extends string | string[] | Record<string, string>>(loaderConstructorFactory: (inputs: TUrl) => new (...args: any[]) => NgtLoaderResult<TReturnType>, inputs: TUrl | Observable<TUrl>, extensions?: NgtLoaderExtensions) => void;
10
+ }
11
+ export type NgtLoaderResults<TInput extends string | string[] | Record<string, string>, TReturn> = TInput extends string[] ? TReturn[] : TInput extends object ? {
12
+ [key in keyof TInput]: TReturn;
13
+ } : TReturn;
14
+ export declare const injectNgtLoader: NgtLoader;
15
+ export {};
@@ -1,5 +1,6 @@
1
- import type { NgtStateFactory } from '../types';
2
- export declare type NgtGlobalRenderCallback = (timeStamp: number) => void;
1
+ import { NgtRxStore } from './stores/rx-store';
2
+ import type { NgtState } from './types';
3
+ export type NgtGlobalRenderCallback = (timestamp: number) => void;
3
4
  /**
4
5
  * Adds a global render callback which is called each frame.
5
6
  * @see https://docs.pmnd.rs/react-three-fiber/api/additional-exports#addEffect
@@ -15,18 +16,18 @@ export declare const addAfterEffect: (callback: NgtGlobalRenderCallback) => () =
15
16
  * @see https://docs.pmnd.rs/react-three-fiber/api/additional-exports#addTail
16
17
  */
17
18
  export declare const addTail: (callback: NgtGlobalRenderCallback) => () => void;
18
- export declare type GlobalEffectType = 'before' | 'after' | 'tail';
19
+ export type GlobalEffectType = 'before' | 'after' | 'tail';
19
20
  export declare function flushGlobalEffects(type: GlobalEffectType, timestamp: number): void;
20
- export declare function createLoop<TCanvas>(roots: Map<TCanvas, NgtStateFactory>): {
21
+ export declare function createLoop<TCanvas>(roots: Map<TCanvas, NgtRxStore<NgtState>>): {
21
22
  loop: (timestamp: number) => void;
22
23
  /**
23
24
  * Invalidates the view, requesting a frame to be rendered. Will globally invalidate unless passed a root's state.
24
25
  * @see https://docs.pmnd.rs/react-three-fiber/api/additional-exports#invalidate
25
26
  */
26
- invalidate: (stateFactory?: NgtStateFactory, frames?: number) => void;
27
+ invalidate: (store?: NgtRxStore<NgtState>, frames?: number) => void;
27
28
  /**
28
29
  * Advances the frameloop and runs render effects, useful for when manually rendering via `frameloop="never"`.
29
30
  * @see https://docs.pmnd.rs/react-three-fiber/api/additional-exports#advance
30
31
  */
31
- advance: (timestamp: number, runGlobalEffects?: boolean, stateFactory?: NgtStateFactory, frame?: XRFrame) => void;
32
+ advance: (timestamp: number, runGlobalEffects?: boolean, store?: NgtRxStore<NgtState>, frame?: XRFrame) => void;
32
33
  };
@@ -0,0 +1,2 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export declare const NGT_COMPOUND_PREFIXES: InjectionToken<string[]>;
@@ -0,0 +1,25 @@
1
+ export declare const enum NgtRendererClassId {
2
+ type = 0,
3
+ parent = 1,
4
+ children = 2,
5
+ destroyed = 3,
6
+ compound = 4,
7
+ compoundParent = 5,
8
+ compounded = 6,
9
+ queueOps = 7,
10
+ attributes = 8,
11
+ properties = 9,
12
+ rawValue = 10,
13
+ ref = 11,
14
+ portalContainer = 12,
15
+ injectorFactory = 13
16
+ }
17
+ export declare const enum NgtCompoundClassId {
18
+ applyFirst = 0,
19
+ props = 1
20
+ }
21
+ export declare const enum NgtQueueOpClassId {
22
+ type = 0,
23
+ op = 1,
24
+ done = 2
25
+ }
@@ -0,0 +1,25 @@
1
+ import { ChangeDetectorRef, RendererFactory2 } from '@angular/core';
2
+ import { NgtStore } from '../stores/store';
3
+ import { NgtRendererFactory } from './renderer';
4
+ export type NgtRendererProviderOptions = {
5
+ store: NgtStore;
6
+ changeDetectorRef: ChangeDetectorRef;
7
+ compoundPrefixes?: string[];
8
+ };
9
+ export declare function provideNgtRenderer({ store, changeDetectorRef, compoundPrefixes }: NgtRendererProviderOptions): ({
10
+ provide: typeof RendererFactory2;
11
+ useClass: typeof NgtRendererFactory;
12
+ useValue?: undefined;
13
+ } | {
14
+ provide: typeof NgtStore;
15
+ useValue: NgtStore;
16
+ useClass?: undefined;
17
+ } | {
18
+ provide: typeof ChangeDetectorRef;
19
+ useValue: ChangeDetectorRef;
20
+ useClass?: undefined;
21
+ } | {
22
+ provide: import("@angular/core").InjectionToken<string[]>;
23
+ useValue: string[];
24
+ useClass?: undefined;
25
+ })[];
@@ -0,0 +1,49 @@
1
+ import { Renderer2, RendererFactory2, RendererType2 } from '@angular/core';
2
+ import { NgtRendererNode, NgtRendererStore } from './state';
3
+ import * as i0 from "@angular/core";
4
+ export declare class NgtRendererFactory implements RendererFactory2 {
5
+ private readonly domRendererFactory;
6
+ private readonly cdr;
7
+ private readonly store;
8
+ private readonly catalogue;
9
+ private readonly compoundPrefixes;
10
+ private readonly rendererStore;
11
+ private renderer?;
12
+ createRenderer(hostElement: any, type: RendererType2 | null): Renderer2;
13
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtRendererFactory, never>;
14
+ static ɵprov: i0.ɵɵInjectableDeclaration<NgtRendererFactory>;
15
+ }
16
+ export declare class NgtRenderer implements Renderer2 {
17
+ private readonly domRenderer;
18
+ private readonly store;
19
+ private readonly catalogue;
20
+ private first;
21
+ constructor(domRenderer: Renderer2, store: NgtRendererStore, catalogue: Record<string, new (...args: any[]) => any>);
22
+ createElement(name: string, namespace?: string | null | undefined): import("angular-three").NgtAnyRecord & {
23
+ __ngt_renderer__: import("./state").NgtRendererState;
24
+ };
25
+ createComment(value: string): import("angular-three").NgtAnyRecord & {
26
+ __ngt_renderer__: import("./state").NgtRendererState;
27
+ };
28
+ appendChild(parent: NgtRendererNode, newChild: NgtRendererNode): void;
29
+ insertBefore(parent: NgtRendererNode, newChild: NgtRendererNode): void;
30
+ removeChild(parent: NgtRendererNode, oldChild: NgtRendererNode, isHostElement?: boolean | undefined): void;
31
+ parentNode(node: NgtRendererNode): any;
32
+ setAttribute(el: NgtRendererNode, name: string, value: string, namespace?: string | null | undefined): void;
33
+ setProperty(el: NgtRendererNode, name: string, value: any): void;
34
+ listen(target: NgtRendererNode, eventName: string, callback: (event: any) => boolean | void): () => void;
35
+ get data(): {
36
+ [key: string]: any;
37
+ };
38
+ createText: (value: string) => any;
39
+ destroy: () => void;
40
+ destroyNode: ((node: any) => void) | null;
41
+ selectRootElement: (selectorOrNode: any, preserveContent?: boolean | undefined) => any;
42
+ nextSibling: (node: any) => any;
43
+ removeAttribute: (el: any, name: string, namespace?: string | null | undefined) => void;
44
+ addClass: (el: any, name: string) => void;
45
+ removeClass: (el: any, name: string) => void;
46
+ setStyle: (el: any, style: string, value: any, flags?: import("@angular/core").RendererStyleFlags2 | undefined) => void;
47
+ removeStyle: (el: any, style: string, flags?: import("@angular/core").RendererStyleFlags2 | undefined) => void;
48
+ setValue: (node: any, value: string) => void;
49
+ }
@@ -0,0 +1,59 @@
1
+ import { ChangeDetectorRef, Injector } from '@angular/core';
2
+ import { NgtStore } from '../stores/store';
3
+ import type { NgtAnyRecord } from '../types';
4
+ import { NgtQueueOpClassId, NgtRendererClassId } from './enums';
5
+ export type NgtRendererRootState = {
6
+ store: NgtStore;
7
+ cdr: ChangeDetectorRef;
8
+ compoundPrefixes: string[];
9
+ };
10
+ export type NgtQueueOp = [type: 'op' | 'cleanUp', op: () => void, done?: true];
11
+ export type NgtRendererState = [
12
+ type: 'three' | 'compound' | 'portal' | 'comment' | 'dom',
13
+ parent: NgtRendererNode | null,
14
+ children: NgtRendererNode[],
15
+ destroyed: boolean,
16
+ compound: [applyFirst: boolean, props: Record<string, any>],
17
+ compoundParent: NgtRendererNode,
18
+ compounded: NgtRendererNode,
19
+ queueOps: Set<NgtQueueOp>,
20
+ attributes: Record<string, any>,
21
+ properties: Record<string, any>,
22
+ rawValue: any,
23
+ ref: any,
24
+ portalContainer: NgtRendererNode,
25
+ injectorFactory: () => Injector
26
+ ];
27
+ export type NgtRendererNode = {
28
+ __ngt_renderer__: NgtRendererState;
29
+ };
30
+ export declare class NgtRendererStore {
31
+ private readonly root;
32
+ private readonly comments;
33
+ private readonly portals;
34
+ constructor(root: NgtRendererRootState);
35
+ createNode(type: NgtRendererState[NgtRendererClassId.type], node: NgtAnyRecord): NgtAnyRecord & {
36
+ __ngt_renderer__: NgtRendererState;
37
+ };
38
+ setParent(node: NgtRendererNode, parent: NgtRendererNode): void;
39
+ addChild(node: NgtRendererNode, child: NgtRendererNode): void;
40
+ removeChild(node: NgtRendererNode, child: NgtRendererNode): void;
41
+ setCompound(compound: NgtRendererNode, instance: NgtRendererNode): void;
42
+ queueOperation(node: NgtRendererNode, op: NgtQueueOp): void;
43
+ executeOperation(node: NgtRendererNode, type?: NgtQueueOp[NgtQueueOpClassId.type]): void;
44
+ processPortalContainer(portal: NgtRendererNode): void;
45
+ applyAttribute(node: NgtRendererNode, name: string, value: string): void;
46
+ applyProperty(node: NgtRendererNode, name: string, value: any): void;
47
+ isCompound(name: string): boolean;
48
+ get rootScene(): import("three").Scene;
49
+ get rootCdr(): ChangeDetectorRef;
50
+ getClosestParentWithInstance(node: NgtRendererNode): NgtRendererNode | null;
51
+ getClosestParentWithCompound(node: NgtRendererNode): NgtRendererNode | null | undefined;
52
+ getCreationState(): {
53
+ injectedArgs: any[];
54
+ store: NgtStore;
55
+ };
56
+ destroy(node: NgtRendererNode, parent?: NgtRendererNode): void;
57
+ private firstNonInjectedDirective;
58
+ tryGetPortalStore(): NgtStore;
59
+ }
@@ -0,0 +1,20 @@
1
+ import { ChangeDetectorRef } from '@angular/core';
2
+ import type { NgtEventHandlers, NgtInstanceNode } from '../types';
3
+ import { supportedEvents } from '../web/events';
4
+ export declare const SPECIAL_DOM_TAG: {
5
+ readonly NGT_PORTAL: "ngt-portal";
6
+ readonly NGT_PRIMITIVE: "ngt-primitive";
7
+ readonly NGT_VALUE: "ngt-value";
8
+ };
9
+ export declare const SPECIAL_PROPERTIES: {
10
+ readonly COMPOUND: "ngtCompound";
11
+ readonly RENDER_PRIORITY: "priority";
12
+ readonly ATTACH: "attach";
13
+ readonly VALUE: "rawValue";
14
+ readonly REF: "ref";
15
+ };
16
+ export declare function attachThreeChild(parent: NgtInstanceNode, child: NgtInstanceNode): void;
17
+ export declare function removeThreeChild(parent: NgtInstanceNode, child: NgtInstanceNode, dispose?: boolean): void;
18
+ export declare function processThreeEvent(instance: NgtInstanceNode, priority: number, eventName: string, callback: (event: any) => void, cdr: ChangeDetectorRef): () => void;
19
+ export declare function eventToHandler(callback: (event: any) => void, cdr: ChangeDetectorRef): (event: Parameters<Exclude<NgtEventHandlers[(typeof supportedEvents)[number]], undefined>>[0]) => void;
20
+ export declare function kebabToPascal(str: string): string;
@@ -0,0 +1,17 @@
1
+ import { RxState } from '@rx-angular/state';
2
+ import { MonoTypeOperatorFunction, Observable } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ export declare const startWithUndefined: <T>() => MonoTypeOperatorFunction<T>;
5
+ type EffectFn<TValue> = (value: TValue) => void | undefined | ((cleanUpParams: {
6
+ prev: TValue | undefined;
7
+ complete: boolean;
8
+ error: boolean;
9
+ }) => void);
10
+ export declare class NgtRxStore<TState extends object = any, TRxState extends object = TState & Record<string, any>> extends RxState<TRxState> {
11
+ constructor();
12
+ protected initialize(): void;
13
+ effect<S>(obs: Observable<S>, sideEffectFn: EffectFn<S>): void;
14
+ static ɵfac: i0.ɵɵFactoryDeclaration<NgtRxStore<any, any>, never>;
15
+ static ɵprov: i0.ɵɵInjectableDeclaration<NgtRxStore<any, any>>;
16
+ }
17
+ export {};
@@ -1,32 +1,15 @@
1
- import { Subscription } from 'rxjs';
2
- import type { NgtCanvasInputs, NgtState, NgtStateFactory } from '../types';
3
- import { NgtComponentStore, tapEffect } from './component-store';
1
+ import type { NgtCanvasInputs, NgtState } from '../types';
2
+ import { NgtRxStore } from './rx-store';
4
3
  import * as i0 from "@angular/core";
5
- export declare const rootStateMap: Map<Element, NgtStateFactory>;
6
- export declare class NgtStore extends NgtComponentStore<NgtState> {
4
+ export declare const rootStateMap: Map<Element, NgtRxStore<NgtState, NgtState & Record<string, any>>>;
5
+ export declare class NgtStore extends NgtRxStore<NgtState> {
7
6
  private readonly parentStore;
8
- private readonly zone;
9
7
  private readonly window;
10
- private readonly position;
11
- private readonly defaultTarget;
12
- private readonly tempTarget;
13
- get rootStateFactory(): NgtStateFactory;
14
- private readonly resize;
15
- private readonly invalidate;
16
8
  isInit: boolean;
17
- isConfigured: boolean;
18
9
  init(): void;
19
- private readonly addInteraction;
20
- private readonly removeInteraction;
21
- private readonly setPerformanceCurrent;
22
- private readonly setEvents;
23
- private readonly setSize;
24
- private readonly setCamera;
25
- private readonly setDpr;
26
- private readonly setFrameloop;
27
- private readonly getCurrentViewport;
28
10
  configure(inputs: NgtCanvasInputs, canvasElement: HTMLCanvasElement): void;
29
- onReady(cb: Parameters<typeof tapEffect>[0]): Subscription;
11
+ private resize;
12
+ private invalidate;
30
13
  static ɵfac: i0.ɵɵFactoryDeclaration<NgtStore, never>;
31
14
  static ɵprov: i0.ɵɵInjectableDeclaration<NgtStore>;
32
15
  }