@reactvision/react-viro 2.42.0 → 2.43.1

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 (475) hide show
  1. package/README.md +12 -6
  2. package/android/react_viro/react_viro-release.aar +0 -0
  3. package/components/AR/ViroARPlaneSelector.tsx +76 -37
  4. package/components/Utilities/ViroVersion.ts +1 -1
  5. package/dist/components/AR/ViroARPlaneSelector.d.ts +1 -1
  6. package/dist/components/AR/ViroARPlaneSelector.js +46 -18
  7. package/dist/components/Utilities/ViroVersion.d.ts +1 -1
  8. package/dist/components/Utilities/ViroVersion.js +1 -1
  9. package/dist/dynamic-index.d.ts +11 -0
  10. package/dist/dynamic-index.js +28 -0
  11. package/dist/examples/AutoDetectionExample.d.ts +10 -0
  12. package/dist/examples/AutoDetectionExample.js +91 -0
  13. package/dist/fabric-interop/NativeViro.d.ts +42 -0
  14. package/dist/fabric-interop/NativeViro.js +262 -0
  15. package/dist/fabric-interop/ViroEventsManager.d.ts +83 -0
  16. package/dist/fabric-interop/ViroEventsManager.js +222 -0
  17. package/dist/fabric-interop/ViroFabricContainer.d.ts +34 -0
  18. package/dist/fabric-interop/ViroFabricContainer.js +200 -0
  19. package/dist/fabric-interop/android/src/main/js/specs/ViroFabricContainerViewNativeComponent.d.ts +35 -0
  20. package/dist/fabric-interop/android/src/main/js/specs/ViroFabricContainerViewNativeComponent.js +20 -0
  21. package/dist/fabric-interop/components/AR/ViroARPlane.d.ts +22 -0
  22. package/dist/fabric-interop/components/AR/ViroARPlane.js +95 -0
  23. package/dist/fabric-interop/components/AR/ViroARPlaneSelector.d.ts +43 -0
  24. package/dist/fabric-interop/components/AR/ViroARPlaneSelector.js +152 -0
  25. package/dist/fabric-interop/components/AR/ViroARTrackingTargets.d.ts +55 -0
  26. package/dist/fabric-interop/components/AR/ViroARTrackingTargets.js +85 -0
  27. package/dist/fabric-interop/components/AR/ViroCommonProps.d.ts +91 -0
  28. package/dist/fabric-interop/components/AR/ViroCommonProps.js +7 -0
  29. package/dist/fabric-interop/components/Animation/ViroAnimations.d.ts +48 -0
  30. package/dist/fabric-interop/components/Animation/ViroAnimations.js +64 -0
  31. package/dist/fabric-interop/components/Material/ViroMaterials.d.ts +66 -0
  32. package/dist/fabric-interop/components/Material/ViroMaterials.js +85 -0
  33. package/dist/fabric-interop/components/Types/ViroEvents.d.ts +202 -0
  34. package/dist/fabric-interop/components/Types/ViroEvents.js +53 -0
  35. package/dist/fabric-interop/components/Types/ViroUtils.d.ts +137 -0
  36. package/dist/fabric-interop/components/Types/ViroUtils.js +7 -0
  37. package/dist/fabric-interop/components/Viro360Image.d.ts +23 -0
  38. package/dist/fabric-interop/components/Viro360Image.js +45 -0
  39. package/dist/fabric-interop/components/Viro360Video.d.ts +29 -0
  40. package/dist/fabric-interop/components/Viro360Video.js +47 -0
  41. package/dist/fabric-interop/components/Viro3DObject.d.ts +60 -0
  42. package/dist/fabric-interop/components/Viro3DObject.js +49 -0
  43. package/dist/fabric-interop/components/Viro3DSceneNavigator.d.ts +49 -0
  44. package/dist/fabric-interop/components/Viro3DSceneNavigator.js +388 -0
  45. package/dist/fabric-interop/components/ViroARCamera.d.ts +29 -0
  46. package/dist/fabric-interop/components/ViroARCamera.js +64 -0
  47. package/dist/fabric-interop/components/ViroARImageMarker.d.ts +21 -0
  48. package/dist/fabric-interop/components/ViroARImageMarker.js +71 -0
  49. package/dist/fabric-interop/components/ViroARObjectMarker.d.ts +21 -0
  50. package/dist/fabric-interop/components/ViroARObjectMarker.js +71 -0
  51. package/dist/fabric-interop/components/ViroARPlane.d.ts +24 -0
  52. package/dist/fabric-interop/components/ViroARPlane.js +88 -0
  53. package/dist/fabric-interop/components/ViroARScene.d.ts +29 -0
  54. package/dist/fabric-interop/components/ViroARScene.js +89 -0
  55. package/dist/fabric-interop/components/ViroARSceneNavigator.d.ts +29 -0
  56. package/dist/fabric-interop/components/ViroARSceneNavigator.js +76 -0
  57. package/dist/fabric-interop/components/ViroAmbientLight.d.ts +19 -0
  58. package/dist/fabric-interop/components/ViroAmbientLight.js +46 -0
  59. package/dist/fabric-interop/components/ViroAnimatedComponent.d.ts +24 -0
  60. package/dist/fabric-interop/components/ViroAnimatedComponent.js +63 -0
  61. package/dist/fabric-interop/components/ViroAnimatedImage.d.ts +28 -0
  62. package/dist/fabric-interop/components/ViroAnimatedImage.js +49 -0
  63. package/dist/fabric-interop/components/ViroBox.d.ts +20 -0
  64. package/dist/fabric-interop/components/ViroBox.js +47 -0
  65. package/dist/fabric-interop/components/ViroButton.d.ts +32 -0
  66. package/dist/fabric-interop/components/ViroButton.js +92 -0
  67. package/dist/fabric-interop/components/ViroCamera.d.ts +17 -0
  68. package/dist/fabric-interop/components/ViroCamera.js +30 -0
  69. package/dist/fabric-interop/components/ViroController.d.ts +19 -0
  70. package/dist/fabric-interop/components/ViroController.js +64 -0
  71. package/dist/fabric-interop/components/ViroDirectionalLight.d.ts +28 -0
  72. package/dist/fabric-interop/components/ViroDirectionalLight.js +55 -0
  73. package/dist/fabric-interop/components/ViroFlexView.d.ts +36 -0
  74. package/dist/fabric-interop/components/ViroFlexView.js +97 -0
  75. package/dist/fabric-interop/components/ViroGeometry.d.ts +23 -0
  76. package/dist/fabric-interop/components/ViroGeometry.js +50 -0
  77. package/dist/fabric-interop/components/ViroGlobal.d.ts +45 -0
  78. package/dist/fabric-interop/components/ViroGlobal.js +20 -0
  79. package/dist/fabric-interop/components/ViroImage.d.ts +29 -0
  80. package/dist/fabric-interop/components/ViroImage.js +52 -0
  81. package/dist/fabric-interop/components/ViroLightingEnvironment.d.ts +19 -0
  82. package/dist/fabric-interop/components/ViroLightingEnvironment.js +44 -0
  83. package/dist/fabric-interop/components/ViroMaterialVideo.d.ts +30 -0
  84. package/dist/fabric-interop/components/ViroMaterialVideo.js +48 -0
  85. package/dist/fabric-interop/components/ViroNode.d.ts +36 -0
  86. package/dist/fabric-interop/components/ViroNode.js +28 -0
  87. package/dist/fabric-interop/components/ViroOmniLight.d.ts +21 -0
  88. package/dist/fabric-interop/components/ViroOmniLight.js +48 -0
  89. package/dist/fabric-interop/components/ViroOrbitCamera.d.ts +17 -0
  90. package/dist/fabric-interop/components/ViroOrbitCamera.js +30 -0
  91. package/dist/fabric-interop/components/ViroParticleEmitter.d.ts +51 -0
  92. package/dist/fabric-interop/components/ViroParticleEmitter.js +50 -0
  93. package/dist/fabric-interop/components/ViroPolygon.d.ts +20 -0
  94. package/dist/fabric-interop/components/ViroPolygon.js +47 -0
  95. package/dist/fabric-interop/components/ViroPolyline.d.ts +19 -0
  96. package/dist/fabric-interop/components/ViroPolyline.js +46 -0
  97. package/dist/fabric-interop/components/ViroPortal.d.ts +16 -0
  98. package/dist/fabric-interop/components/ViroPortal.js +73 -0
  99. package/dist/fabric-interop/components/ViroPortalScene.d.ts +16 -0
  100. package/dist/fabric-interop/components/ViroPortalScene.js +29 -0
  101. package/dist/fabric-interop/components/ViroQuad.d.ts +39 -0
  102. package/dist/fabric-interop/components/ViroQuad.js +49 -0
  103. package/dist/fabric-interop/components/ViroScene.d.ts +29 -0
  104. package/dist/fabric-interop/components/ViroScene.js +103 -0
  105. package/dist/fabric-interop/components/ViroSceneNavigator.d.ts +23 -0
  106. package/dist/fabric-interop/components/ViroSceneNavigator.js +73 -0
  107. package/dist/fabric-interop/components/ViroSkyBox.d.ts +39 -0
  108. package/dist/fabric-interop/components/ViroSkyBox.js +44 -0
  109. package/dist/fabric-interop/components/ViroSound.d.ts +23 -0
  110. package/dist/fabric-interop/components/ViroSound.js +46 -0
  111. package/dist/fabric-interop/components/ViroSoundField.d.ts +24 -0
  112. package/dist/fabric-interop/components/ViroSoundField.js +47 -0
  113. package/dist/fabric-interop/components/ViroSpatialSound.d.ts +27 -0
  114. package/dist/fabric-interop/components/ViroSpatialSound.js +50 -0
  115. package/dist/fabric-interop/components/ViroSphere.d.ts +22 -0
  116. package/dist/fabric-interop/components/ViroSphere.js +49 -0
  117. package/dist/fabric-interop/components/ViroSpinner.d.ts +18 -0
  118. package/dist/fabric-interop/components/ViroSpinner.js +45 -0
  119. package/dist/fabric-interop/components/ViroSpotLight.d.ts +30 -0
  120. package/dist/fabric-interop/components/ViroSpotLight.js +57 -0
  121. package/dist/fabric-interop/components/ViroSurface.d.ts +38 -0
  122. package/dist/fabric-interop/components/ViroSurface.js +48 -0
  123. package/dist/fabric-interop/components/ViroText.d.ts +36 -0
  124. package/dist/fabric-interop/components/ViroText.js +59 -0
  125. package/dist/fabric-interop/components/ViroUtils.d.ts +63 -0
  126. package/dist/fabric-interop/components/ViroUtils.js +140 -0
  127. package/dist/fabric-interop/components/ViroVRSceneNavigator.d.ts +25 -0
  128. package/dist/fabric-interop/components/ViroVRSceneNavigator.js +73 -0
  129. package/dist/fabric-interop/components/ViroVideo.d.ts +32 -0
  130. package/dist/fabric-interop/components/ViroVideo.js +52 -0
  131. package/dist/fabric-interop/components/index.d.ts +62 -0
  132. package/dist/fabric-interop/components/index.js +144 -0
  133. package/dist/fabric-interop/examples/BasicSceneExample.d.ts +11 -0
  134. package/dist/fabric-interop/examples/BasicSceneExample.js +244 -0
  135. package/dist/fabric-interop/examples/ComprehensiveExample.d.ts +13 -0
  136. package/dist/fabric-interop/examples/ComprehensiveExample.js +327 -0
  137. package/dist/fabric-interop/examples/SimpleARExample.d.ts +8 -0
  138. package/dist/fabric-interop/examples/SimpleARExample.js +62 -0
  139. package/dist/fabric-interop/index.d.ts +14 -0
  140. package/dist/fabric-interop/index.js +117 -0
  141. package/dist/fabric-interop/specs/ViroEventsTurboModule.d.ts +19 -0
  142. package/dist/fabric-interop/specs/ViroEventsTurboModule.js +11 -0
  143. package/dist/fabric-interop/test/BasicFunctionalityTest.d.ts +9 -0
  144. package/dist/fabric-interop/test/BasicFunctionalityTest.js +222 -0
  145. package/dist/fabric.d.ts +13 -0
  146. package/dist/fabric.js +29 -0
  147. package/dist/plugins/withViro.d.ts +3 -0
  148. package/dist/plugins/withViro.js +19 -0
  149. package/dist/plugins/withViroAndroid.js +24 -20
  150. package/dist/plugins/withViroIos.js +20 -2
  151. package/dynamic-index-source.d.ts +77 -0
  152. package/dynamic-index.ts +41 -0
  153. package/fabric-interop/NativeViro.ts +335 -0
  154. package/fabric-interop/README.md +282 -0
  155. package/fabric-interop/ViroEventsManager.js +257 -0
  156. package/fabric-interop/ViroFabricContainer.tsx +273 -0
  157. package/fabric-interop/components/AR/ViroARPlane.tsx +108 -0
  158. package/fabric-interop/components/AR/ViroARPlaneSelector.tsx +185 -0
  159. package/fabric-interop/components/AR/ViroARTrackingTargets.ts +108 -0
  160. package/fabric-interop/components/AR/ViroCommonProps.ts +140 -0
  161. package/fabric-interop/components/Animation/ViroAnimations.ts +96 -0
  162. package/fabric-interop/components/Material/ViroMaterials.ts +127 -0
  163. package/fabric-interop/components/Resources/viro_spinner_1.png +0 -0
  164. package/fabric-interop/components/Resources/viro_spinner_1_w.png +0 -0
  165. package/fabric-interop/components/Resources/viro_spinner_1a.png +0 -0
  166. package/fabric-interop/components/Resources/viro_spinner_1a_w.png +0 -0
  167. package/fabric-interop/components/Types/ViroEvents.ts +285 -0
  168. package/fabric-interop/components/Types/ViroUtils.ts +160 -0
  169. package/fabric-interop/components/Viro360Image.tsx +70 -0
  170. package/fabric-interop/components/Viro360Video.tsx +78 -0
  171. package/fabric-interop/components/Viro3DObject.tsx +122 -0
  172. package/fabric-interop/components/Viro3DSceneNavigator.tsx +503 -0
  173. package/fabric-interop/components/ViroARCamera.tsx +105 -0
  174. package/fabric-interop/components/ViroARImageMarker.tsx +98 -0
  175. package/fabric-interop/components/ViroARObjectMarker.tsx +100 -0
  176. package/fabric-interop/components/ViroARPlane.tsx +120 -0
  177. package/fabric-interop/components/ViroARScene.tsx +127 -0
  178. package/fabric-interop/components/ViroARSceneNavigator.tsx +82 -0
  179. package/fabric-interop/components/ViroAmbientLight.tsx +62 -0
  180. package/fabric-interop/components/ViroAnimatedComponent.tsx +91 -0
  181. package/fabric-interop/components/ViroAnimatedImage.tsx +81 -0
  182. package/fabric-interop/components/ViroBox.tsx +72 -0
  183. package/fabric-interop/components/ViroButton.tsx +125 -0
  184. package/fabric-interop/components/ViroCamera.tsx +45 -0
  185. package/fabric-interop/components/ViroController.tsx +87 -0
  186. package/fabric-interop/components/ViroDirectionalLight.tsx +84 -0
  187. package/fabric-interop/components/ViroFlexView.tsx +146 -0
  188. package/fabric-interop/components/ViroGeometry.tsx +78 -0
  189. package/fabric-interop/components/ViroGlobal.ts +114 -0
  190. package/fabric-interop/components/ViroImage.tsx +85 -0
  191. package/fabric-interop/components/ViroLightingEnvironment.tsx +63 -0
  192. package/fabric-interop/components/ViroMaterialVideo.tsx +82 -0
  193. package/fabric-interop/components/ViroNode.tsx +62 -0
  194. package/fabric-interop/components/ViroOmniLight.tsx +66 -0
  195. package/fabric-interop/components/ViroOrbitCamera.tsx +45 -0
  196. package/fabric-interop/components/ViroParticleEmitter.tsx +111 -0
  197. package/fabric-interop/components/ViroPolygon.tsx +72 -0
  198. package/fabric-interop/components/ViroPolyline.tsx +71 -0
  199. package/fabric-interop/components/ViroPortal.tsx +91 -0
  200. package/fabric-interop/components/ViroPortalScene.tsx +43 -0
  201. package/fabric-interop/components/ViroQuad.tsx +82 -0
  202. package/fabric-interop/components/ViroScene.tsx +117 -0
  203. package/fabric-interop/components/ViroSceneNavigator.tsx +71 -0
  204. package/fabric-interop/components/ViroSkyBox.tsx +75 -0
  205. package/fabric-interop/components/ViroSound.tsx +71 -0
  206. package/fabric-interop/components/ViroSoundField.tsx +75 -0
  207. package/fabric-interop/components/ViroSpatialSound.tsx +81 -0
  208. package/fabric-interop/components/ViroSphere.tsx +75 -0
  209. package/fabric-interop/components/ViroSpinner.tsx +63 -0
  210. package/fabric-interop/components/ViroSpotLight.tsx +86 -0
  211. package/fabric-interop/components/ViroSurface.tsx +80 -0
  212. package/fabric-interop/components/ViroText.tsx +114 -0
  213. package/fabric-interop/components/ViroUtils.ts +208 -0
  214. package/fabric-interop/components/ViroVRSceneNavigator.tsx +75 -0
  215. package/fabric-interop/components/ViroVideo.tsx +91 -0
  216. package/fabric-interop/components/index.ts +94 -0
  217. package/fabric-interop/dist/NativeViro.d.ts +43 -0
  218. package/fabric-interop/dist/NativeViro.d.ts.map +1 -0
  219. package/fabric-interop/dist/NativeViro.js +263 -0
  220. package/fabric-interop/dist/NativeViro.js.map +1 -0
  221. package/fabric-interop/dist/ViroFabricContainer.d.ts +35 -0
  222. package/fabric-interop/dist/ViroFabricContainer.d.ts.map +1 -0
  223. package/fabric-interop/dist/ViroFabricContainer.js +201 -0
  224. package/fabric-interop/dist/ViroFabricContainer.js.map +1 -0
  225. package/fabric-interop/dist/components/AR/ViroARPlane.d.ts +23 -0
  226. package/fabric-interop/dist/components/AR/ViroARPlane.d.ts.map +1 -0
  227. package/fabric-interop/dist/components/AR/ViroARPlane.js +96 -0
  228. package/fabric-interop/dist/components/AR/ViroARPlane.js.map +1 -0
  229. package/fabric-interop/dist/components/AR/ViroARPlaneSelector.d.ts +44 -0
  230. package/fabric-interop/dist/components/AR/ViroARPlaneSelector.d.ts.map +1 -0
  231. package/fabric-interop/dist/components/AR/ViroARPlaneSelector.js +156 -0
  232. package/fabric-interop/dist/components/AR/ViroARPlaneSelector.js.map +1 -0
  233. package/fabric-interop/dist/components/AR/ViroARTrackingTargets.d.ts +56 -0
  234. package/fabric-interop/dist/components/AR/ViroARTrackingTargets.d.ts.map +1 -0
  235. package/fabric-interop/dist/components/AR/ViroARTrackingTargets.js +86 -0
  236. package/fabric-interop/dist/components/AR/ViroARTrackingTargets.js.map +1 -0
  237. package/fabric-interop/dist/components/AR/ViroCommonProps.d.ts +92 -0
  238. package/fabric-interop/dist/components/AR/ViroCommonProps.d.ts.map +1 -0
  239. package/fabric-interop/dist/components/AR/ViroCommonProps.js +8 -0
  240. package/fabric-interop/dist/components/AR/ViroCommonProps.js.map +1 -0
  241. package/fabric-interop/dist/components/Animation/ViroAnimations.d.ts +49 -0
  242. package/fabric-interop/dist/components/Animation/ViroAnimations.d.ts.map +1 -0
  243. package/fabric-interop/dist/components/Animation/ViroAnimations.js +65 -0
  244. package/fabric-interop/dist/components/Animation/ViroAnimations.js.map +1 -0
  245. package/fabric-interop/dist/components/Material/ViroMaterials.d.ts +67 -0
  246. package/fabric-interop/dist/components/Material/ViroMaterials.d.ts.map +1 -0
  247. package/fabric-interop/dist/components/Material/ViroMaterials.js +86 -0
  248. package/fabric-interop/dist/components/Material/ViroMaterials.js.map +1 -0
  249. package/fabric-interop/dist/components/Types/ViroEvents.d.ts +203 -0
  250. package/fabric-interop/dist/components/Types/ViroEvents.d.ts.map +1 -0
  251. package/fabric-interop/dist/components/Types/ViroEvents.js +54 -0
  252. package/fabric-interop/dist/components/Types/ViroEvents.js.map +1 -0
  253. package/fabric-interop/dist/components/Types/ViroUtils.d.ts +138 -0
  254. package/fabric-interop/dist/components/Types/ViroUtils.d.ts.map +1 -0
  255. package/fabric-interop/dist/components/Types/ViroUtils.js +8 -0
  256. package/fabric-interop/dist/components/Types/ViroUtils.js.map +1 -0
  257. package/fabric-interop/dist/components/Viro360Image.d.ts +24 -0
  258. package/fabric-interop/dist/components/Viro360Image.d.ts.map +1 -0
  259. package/fabric-interop/dist/components/Viro360Image.js +47 -0
  260. package/fabric-interop/dist/components/Viro360Image.js.map +1 -0
  261. package/fabric-interop/dist/components/Viro360Video.d.ts +30 -0
  262. package/fabric-interop/dist/components/Viro360Video.d.ts.map +1 -0
  263. package/fabric-interop/dist/components/Viro360Video.js +49 -0
  264. package/fabric-interop/dist/components/Viro360Video.js.map +1 -0
  265. package/fabric-interop/dist/components/Viro3DObject.d.ts +61 -0
  266. package/fabric-interop/dist/components/Viro3DObject.d.ts.map +1 -0
  267. package/fabric-interop/dist/components/Viro3DObject.js +51 -0
  268. package/fabric-interop/dist/components/Viro3DObject.js.map +1 -0
  269. package/fabric-interop/dist/components/Viro3DSceneNavigator.d.ts +50 -0
  270. package/fabric-interop/dist/components/Viro3DSceneNavigator.d.ts.map +1 -0
  271. package/fabric-interop/dist/components/Viro3DSceneNavigator.js +389 -0
  272. package/fabric-interop/dist/components/Viro3DSceneNavigator.js.map +1 -0
  273. package/fabric-interop/dist/components/ViroARCamera.d.ts +30 -0
  274. package/fabric-interop/dist/components/ViroARCamera.d.ts.map +1 -0
  275. package/fabric-interop/dist/components/ViroARCamera.js +65 -0
  276. package/fabric-interop/dist/components/ViroARCamera.js.map +1 -0
  277. package/fabric-interop/dist/components/ViroARImageMarker.d.ts +22 -0
  278. package/fabric-interop/dist/components/ViroARImageMarker.d.ts.map +1 -0
  279. package/fabric-interop/dist/components/ViroARImageMarker.js +72 -0
  280. package/fabric-interop/dist/components/ViroARImageMarker.js.map +1 -0
  281. package/fabric-interop/dist/components/ViroARObjectMarker.d.ts +22 -0
  282. package/fabric-interop/dist/components/ViroARObjectMarker.d.ts.map +1 -0
  283. package/fabric-interop/dist/components/ViroARObjectMarker.js +72 -0
  284. package/fabric-interop/dist/components/ViroARObjectMarker.js.map +1 -0
  285. package/fabric-interop/dist/components/ViroARPlane.d.ts +25 -0
  286. package/fabric-interop/dist/components/ViroARPlane.d.ts.map +1 -0
  287. package/fabric-interop/dist/components/ViroARPlane.js +89 -0
  288. package/fabric-interop/dist/components/ViroARPlane.js.map +1 -0
  289. package/fabric-interop/dist/components/ViroARScene.d.ts +30 -0
  290. package/fabric-interop/dist/components/ViroARScene.d.ts.map +1 -0
  291. package/fabric-interop/dist/components/ViroARScene.js +90 -0
  292. package/fabric-interop/dist/components/ViroARScene.js.map +1 -0
  293. package/fabric-interop/dist/components/ViroARSceneNavigator.d.ts +30 -0
  294. package/fabric-interop/dist/components/ViroARSceneNavigator.d.ts.map +1 -0
  295. package/fabric-interop/dist/components/ViroARSceneNavigator.js +78 -0
  296. package/fabric-interop/dist/components/ViroARSceneNavigator.js.map +1 -0
  297. package/fabric-interop/dist/components/ViroAmbientLight.d.ts +20 -0
  298. package/fabric-interop/dist/components/ViroAmbientLight.d.ts.map +1 -0
  299. package/fabric-interop/dist/components/ViroAmbientLight.js +48 -0
  300. package/fabric-interop/dist/components/ViroAmbientLight.js.map +1 -0
  301. package/fabric-interop/dist/components/ViroAnimatedComponent.d.ts +25 -0
  302. package/fabric-interop/dist/components/ViroAnimatedComponent.d.ts.map +1 -0
  303. package/fabric-interop/dist/components/ViroAnimatedComponent.js +65 -0
  304. package/fabric-interop/dist/components/ViroAnimatedComponent.js.map +1 -0
  305. package/fabric-interop/dist/components/ViroAnimatedImage.d.ts +29 -0
  306. package/fabric-interop/dist/components/ViroAnimatedImage.d.ts.map +1 -0
  307. package/fabric-interop/dist/components/ViroAnimatedImage.js +51 -0
  308. package/fabric-interop/dist/components/ViroAnimatedImage.js.map +1 -0
  309. package/fabric-interop/dist/components/ViroBox.d.ts +21 -0
  310. package/fabric-interop/dist/components/ViroBox.d.ts.map +1 -0
  311. package/fabric-interop/dist/components/ViroBox.js +49 -0
  312. package/fabric-interop/dist/components/ViroBox.js.map +1 -0
  313. package/fabric-interop/dist/components/ViroButton.d.ts +33 -0
  314. package/fabric-interop/dist/components/ViroButton.d.ts.map +1 -0
  315. package/fabric-interop/dist/components/ViroButton.js +94 -0
  316. package/fabric-interop/dist/components/ViroButton.js.map +1 -0
  317. package/fabric-interop/dist/components/ViroCamera.d.ts +18 -0
  318. package/fabric-interop/dist/components/ViroCamera.d.ts.map +1 -0
  319. package/fabric-interop/dist/components/ViroCamera.js +31 -0
  320. package/fabric-interop/dist/components/ViroCamera.js.map +1 -0
  321. package/fabric-interop/dist/components/ViroController.d.ts +20 -0
  322. package/fabric-interop/dist/components/ViroController.d.ts.map +1 -0
  323. package/fabric-interop/dist/components/ViroController.js +65 -0
  324. package/fabric-interop/dist/components/ViroController.js.map +1 -0
  325. package/fabric-interop/dist/components/ViroDirectionalLight.d.ts +29 -0
  326. package/fabric-interop/dist/components/ViroDirectionalLight.d.ts.map +1 -0
  327. package/fabric-interop/dist/components/ViroDirectionalLight.js +57 -0
  328. package/fabric-interop/dist/components/ViroDirectionalLight.js.map +1 -0
  329. package/fabric-interop/dist/components/ViroFlexView.d.ts +37 -0
  330. package/fabric-interop/dist/components/ViroFlexView.d.ts.map +1 -0
  331. package/fabric-interop/dist/components/ViroFlexView.js +98 -0
  332. package/fabric-interop/dist/components/ViroFlexView.js.map +1 -0
  333. package/fabric-interop/dist/components/ViroGeometry.d.ts +24 -0
  334. package/fabric-interop/dist/components/ViroGeometry.d.ts.map +1 -0
  335. package/fabric-interop/dist/components/ViroGeometry.js +52 -0
  336. package/fabric-interop/dist/components/ViroGeometry.js.map +1 -0
  337. package/fabric-interop/dist/components/ViroGlobal.d.ts +46 -0
  338. package/fabric-interop/dist/components/ViroGlobal.d.ts.map +1 -0
  339. package/fabric-interop/dist/components/ViroGlobal.js +21 -0
  340. package/fabric-interop/dist/components/ViroGlobal.js.map +1 -0
  341. package/fabric-interop/dist/components/ViroImage.d.ts +30 -0
  342. package/fabric-interop/dist/components/ViroImage.d.ts.map +1 -0
  343. package/fabric-interop/dist/components/ViroImage.js +54 -0
  344. package/fabric-interop/dist/components/ViroImage.js.map +1 -0
  345. package/fabric-interop/dist/components/ViroLightingEnvironment.d.ts +20 -0
  346. package/fabric-interop/dist/components/ViroLightingEnvironment.d.ts.map +1 -0
  347. package/fabric-interop/dist/components/ViroLightingEnvironment.js +46 -0
  348. package/fabric-interop/dist/components/ViroLightingEnvironment.js.map +1 -0
  349. package/fabric-interop/dist/components/ViroMaterialVideo.d.ts +31 -0
  350. package/fabric-interop/dist/components/ViroMaterialVideo.d.ts.map +1 -0
  351. package/fabric-interop/dist/components/ViroMaterialVideo.js +50 -0
  352. package/fabric-interop/dist/components/ViroMaterialVideo.js.map +1 -0
  353. package/fabric-interop/dist/components/ViroNode.d.ts +37 -0
  354. package/fabric-interop/dist/components/ViroNode.d.ts.map +1 -0
  355. package/fabric-interop/dist/components/ViroNode.js +29 -0
  356. package/fabric-interop/dist/components/ViroNode.js.map +1 -0
  357. package/fabric-interop/dist/components/ViroOmniLight.d.ts +22 -0
  358. package/fabric-interop/dist/components/ViroOmniLight.d.ts.map +1 -0
  359. package/fabric-interop/dist/components/ViroOmniLight.js +50 -0
  360. package/fabric-interop/dist/components/ViroOmniLight.js.map +1 -0
  361. package/fabric-interop/dist/components/ViroOrbitCamera.d.ts +18 -0
  362. package/fabric-interop/dist/components/ViroOrbitCamera.d.ts.map +1 -0
  363. package/fabric-interop/dist/components/ViroOrbitCamera.js +31 -0
  364. package/fabric-interop/dist/components/ViroOrbitCamera.js.map +1 -0
  365. package/fabric-interop/dist/components/ViroParticleEmitter.d.ts +52 -0
  366. package/fabric-interop/dist/components/ViroParticleEmitter.d.ts.map +1 -0
  367. package/fabric-interop/dist/components/ViroParticleEmitter.js +52 -0
  368. package/fabric-interop/dist/components/ViroParticleEmitter.js.map +1 -0
  369. package/fabric-interop/dist/components/ViroPolygon.d.ts +21 -0
  370. package/fabric-interop/dist/components/ViroPolygon.d.ts.map +1 -0
  371. package/fabric-interop/dist/components/ViroPolygon.js +49 -0
  372. package/fabric-interop/dist/components/ViroPolygon.js.map +1 -0
  373. package/fabric-interop/dist/components/ViroPolyline.d.ts +20 -0
  374. package/fabric-interop/dist/components/ViroPolyline.d.ts.map +1 -0
  375. package/fabric-interop/dist/components/ViroPolyline.js +48 -0
  376. package/fabric-interop/dist/components/ViroPolyline.js.map +1 -0
  377. package/fabric-interop/dist/components/ViroPortal.d.ts +17 -0
  378. package/fabric-interop/dist/components/ViroPortal.d.ts.map +1 -0
  379. package/fabric-interop/dist/components/ViroPortal.js +74 -0
  380. package/fabric-interop/dist/components/ViroPortal.js.map +1 -0
  381. package/fabric-interop/dist/components/ViroPortalScene.d.ts +17 -0
  382. package/fabric-interop/dist/components/ViroPortalScene.d.ts.map +1 -0
  383. package/fabric-interop/dist/components/ViroPortalScene.js +30 -0
  384. package/fabric-interop/dist/components/ViroPortalScene.js.map +1 -0
  385. package/fabric-interop/dist/components/ViroQuad.d.ts +40 -0
  386. package/fabric-interop/dist/components/ViroQuad.d.ts.map +1 -0
  387. package/fabric-interop/dist/components/ViroQuad.js +51 -0
  388. package/fabric-interop/dist/components/ViroQuad.js.map +1 -0
  389. package/fabric-interop/dist/components/ViroScene.d.ts +30 -0
  390. package/fabric-interop/dist/components/ViroScene.d.ts.map +1 -0
  391. package/fabric-interop/dist/components/ViroScene.js +105 -0
  392. package/fabric-interop/dist/components/ViroScene.js.map +1 -0
  393. package/fabric-interop/dist/components/ViroSceneNavigator.d.ts +24 -0
  394. package/fabric-interop/dist/components/ViroSceneNavigator.d.ts.map +1 -0
  395. package/fabric-interop/dist/components/ViroSceneNavigator.js +74 -0
  396. package/fabric-interop/dist/components/ViroSceneNavigator.js.map +1 -0
  397. package/fabric-interop/dist/components/ViroSkyBox.d.ts +40 -0
  398. package/fabric-interop/dist/components/ViroSkyBox.d.ts.map +1 -0
  399. package/fabric-interop/dist/components/ViroSkyBox.js +46 -0
  400. package/fabric-interop/dist/components/ViroSkyBox.js.map +1 -0
  401. package/fabric-interop/dist/components/ViroSound.d.ts +24 -0
  402. package/fabric-interop/dist/components/ViroSound.d.ts.map +1 -0
  403. package/fabric-interop/dist/components/ViroSound.js +48 -0
  404. package/fabric-interop/dist/components/ViroSound.js.map +1 -0
  405. package/fabric-interop/dist/components/ViroSoundField.d.ts +25 -0
  406. package/fabric-interop/dist/components/ViroSoundField.d.ts.map +1 -0
  407. package/fabric-interop/dist/components/ViroSoundField.js +49 -0
  408. package/fabric-interop/dist/components/ViroSoundField.js.map +1 -0
  409. package/fabric-interop/dist/components/ViroSpatialSound.d.ts +28 -0
  410. package/fabric-interop/dist/components/ViroSpatialSound.d.ts.map +1 -0
  411. package/fabric-interop/dist/components/ViroSpatialSound.js +52 -0
  412. package/fabric-interop/dist/components/ViroSpatialSound.js.map +1 -0
  413. package/fabric-interop/dist/components/ViroSphere.d.ts +23 -0
  414. package/fabric-interop/dist/components/ViroSphere.d.ts.map +1 -0
  415. package/fabric-interop/dist/components/ViroSphere.js +51 -0
  416. package/fabric-interop/dist/components/ViroSphere.js.map +1 -0
  417. package/fabric-interop/dist/components/ViroSpinner.d.ts +19 -0
  418. package/fabric-interop/dist/components/ViroSpinner.d.ts.map +1 -0
  419. package/fabric-interop/dist/components/ViroSpinner.js +47 -0
  420. package/fabric-interop/dist/components/ViroSpinner.js.map +1 -0
  421. package/fabric-interop/dist/components/ViroSpotLight.d.ts +31 -0
  422. package/fabric-interop/dist/components/ViroSpotLight.d.ts.map +1 -0
  423. package/fabric-interop/dist/components/ViroSpotLight.js +59 -0
  424. package/fabric-interop/dist/components/ViroSpotLight.js.map +1 -0
  425. package/fabric-interop/dist/components/ViroSurface.d.ts +39 -0
  426. package/fabric-interop/dist/components/ViroSurface.d.ts.map +1 -0
  427. package/fabric-interop/dist/components/ViroSurface.js +50 -0
  428. package/fabric-interop/dist/components/ViroSurface.js.map +1 -0
  429. package/fabric-interop/dist/components/ViroText.d.ts +37 -0
  430. package/fabric-interop/dist/components/ViroText.d.ts.map +1 -0
  431. package/fabric-interop/dist/components/ViroText.js +61 -0
  432. package/fabric-interop/dist/components/ViroText.js.map +1 -0
  433. package/fabric-interop/dist/components/ViroUtils.d.ts +64 -0
  434. package/fabric-interop/dist/components/ViroUtils.d.ts.map +1 -0
  435. package/fabric-interop/dist/components/ViroUtils.js +141 -0
  436. package/fabric-interop/dist/components/ViroUtils.js.map +1 -0
  437. package/fabric-interop/dist/components/ViroVRSceneNavigator.d.ts +26 -0
  438. package/fabric-interop/dist/components/ViroVRSceneNavigator.d.ts.map +1 -0
  439. package/fabric-interop/dist/components/ViroVRSceneNavigator.js +74 -0
  440. package/fabric-interop/dist/components/ViroVRSceneNavigator.js.map +1 -0
  441. package/fabric-interop/dist/components/ViroVideo.d.ts +33 -0
  442. package/fabric-interop/dist/components/ViroVideo.d.ts.map +1 -0
  443. package/fabric-interop/dist/components/ViroVideo.js +54 -0
  444. package/fabric-interop/dist/components/ViroVideo.js.map +1 -0
  445. package/fabric-interop/dist/components/index.d.ts +63 -0
  446. package/fabric-interop/dist/components/index.d.ts.map +1 -0
  447. package/fabric-interop/dist/components/index.js +145 -0
  448. package/fabric-interop/dist/components/index.js.map +1 -0
  449. package/fabric-interop/dist/index.d.ts +15 -0
  450. package/fabric-interop/dist/index.d.ts.map +1 -0
  451. package/fabric-interop/dist/index.js +118 -0
  452. package/fabric-interop/dist/index.js.map +1 -0
  453. package/fabric-interop/dist/specs/ViroEventsTurboModule.d.ts +20 -0
  454. package/fabric-interop/dist/specs/ViroEventsTurboModule.d.ts.map +1 -0
  455. package/fabric-interop/dist/specs/ViroEventsTurboModule.js +12 -0
  456. package/fabric-interop/dist/specs/ViroEventsTurboModule.js.map +1 -0
  457. package/fabric-interop/examples/BasicSceneExample.tsx +287 -0
  458. package/fabric-interop/examples/ComprehensiveExample.tsx +441 -0
  459. package/fabric-interop/examples/SimpleARExample.tsx +95 -0
  460. package/fabric-interop/global.d.ts +14 -0
  461. package/fabric-interop/index.ts +107 -0
  462. package/fabric-interop/metro.config.js +12 -0
  463. package/fabric-interop/package.json +40 -0
  464. package/fabric-interop/react-native.config.js +22 -0
  465. package/fabric-interop/scripts/validate-build.js +393 -0
  466. package/fabric-interop/scripts/validate-implementation.js +272 -0
  467. package/fabric-interop/specs/README.md +22 -0
  468. package/fabric-interop/specs/ViroEventsTurboModule.ts +27 -0
  469. package/fabric-interop/test/BasicFunctionalityTest.tsx +243 -0
  470. package/fabric-interop/tsconfig.json +38 -0
  471. package/fabric.d.ts +5 -0
  472. package/fabric.ts +14 -0
  473. package/ios/ViroReact.podspec +51 -11
  474. package/package.json +33 -20
  475. package/scripts/copy-types.js +46 -0
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ /**
3
+ * ViroARImageMarker
4
+ *
5
+ * A component for detecting and tracking images in the real world.
6
+ */
7
+ var __importDefault = (this && this.__importDefault) || function (mod) {
8
+ return (mod && mod.__esModule) ? mod : { "default": mod };
9
+ };
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.ViroARImageMarker = void 0;
12
+ const react_1 = __importDefault(require("react"));
13
+ const ViroUtils_1 = require("./ViroUtils");
14
+ const ViroGlobal_1 = require("./ViroGlobal");
15
+ /**
16
+ * ViroARImageMarker is a component for detecting and tracking images in the real world.
17
+ * It allows you to attach virtual content to real-world images, such as posters, book covers, or logos.
18
+ */
19
+ const ViroARImageMarker = (props) => {
20
+ // Convert common props to the format expected by the native code
21
+ const nativeProps = {
22
+ ...(0, ViroUtils_1.convertCommonProps)(props),
23
+ target: props.target,
24
+ visible: props.visible,
25
+ opacity: props.opacity,
26
+ };
27
+ // Create the node (parent will be determined by context)
28
+ const nodeId = (0, ViroUtils_1.useViroNode)("arImageMarker", nativeProps);
29
+ // Register event handlers
30
+ react_1.default.useEffect(() => {
31
+ const nativeViro = (0, ViroGlobal_1.getNativeViro)();
32
+ if (!nativeViro)
33
+ return;
34
+ const eventHandlers = [
35
+ { name: "onAnchorFound", handler: props.onAnchorFound },
36
+ { name: "onAnchorUpdated", handler: props.onAnchorUpdated },
37
+ { name: "onAnchorRemoved", handler: props.onAnchorRemoved },
38
+ ];
39
+ // Register all event handlers and store callback IDs for cleanup
40
+ const registeredCallbacks = eventHandlers
41
+ .filter(({ handler }) => !!handler)
42
+ .map(({ name, handler }) => {
43
+ const callbackId = `${nodeId}_${name}`;
44
+ // Register the callback in the global registry
45
+ if (typeof global !== "undefined" && global.registerViroEventCallback) {
46
+ global.registerViroEventCallback(callbackId, handler);
47
+ }
48
+ // Register with native code
49
+ nativeViro.registerEventCallback(nodeId, name, callbackId);
50
+ return { name, callbackId };
51
+ });
52
+ // Cleanup when unmounting
53
+ return () => {
54
+ const nativeViro = (0, ViroGlobal_1.getNativeViro)();
55
+ if (!nativeViro)
56
+ return;
57
+ // Unregister all event handlers
58
+ registeredCallbacks.forEach(({ name, callbackId }) => {
59
+ nativeViro.unregisterEventCallback(nodeId, name, callbackId);
60
+ });
61
+ };
62
+ }, [
63
+ nodeId,
64
+ props.onAnchorFound,
65
+ props.onAnchorUpdated,
66
+ props.onAnchorRemoved,
67
+ ]);
68
+ // Render children with this AR image marker as their parent
69
+ return (<ViroUtils_1.ViroContextProvider value={nodeId}>{props.children}</ViroUtils_1.ViroContextProvider>);
70
+ };
71
+ exports.ViroARImageMarker = ViroARImageMarker;
72
+ //# sourceMappingURL=ViroARImageMarker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViroARImageMarker.js","sourceRoot":"","sources":["../../components/ViroARImageMarker.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;AAEH,kDAA0B;AAC1B,2CAMqB;AACrB,6CAA6C;AAmB7C;;;GAGG;AACI,MAAM,iBAAiB,GAAqC,CAAC,KAAK,EAAE,EAAE;IAC3E,iEAAiE;IACjE,MAAM,WAAW,GAAG;QAClB,GAAG,IAAA,8BAAkB,EAAC,KAAK,CAAC;QAC5B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;IAEF,yDAAyD;IACzD,MAAM,MAAM,GAAG,IAAA,uBAAW,EAAC,eAAe,EAAE,WAAW,CAAC,CAAC;IAEzD,0BAA0B;IAC1B,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,UAAU,GAAG,IAAA,0BAAa,GAAE,CAAC;QACnC,IAAI,CAAC,UAAU;YAAE,OAAO;QAExB,MAAM,aAAa,GAAG;YACpB,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,CAAC,aAAa,EAAE;YACvD,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,KAAK,CAAC,eAAe,EAAE;YAC3D,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,KAAK,CAAC,eAAe,EAAE;SAC5D,CAAC;QAEF,iEAAiE;QACjE,MAAM,mBAAmB,GAAG,aAAa;aACtC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;aAClC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;YACzB,MAAM,UAAU,GAAG,GAAG,MAAM,IAAI,IAAI,EAAE,CAAC;YAEvC,+CAA+C;YAC/C,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,yBAAyB,EAAE,CAAC;gBACtE,MAAM,CAAC,yBAAyB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACxD,CAAC;YAED,4BAA4B;YAC5B,UAAU,CAAC,qBAAqB,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;YAC3D,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEL,0BAA0B;QAC1B,OAAO,GAAG,EAAE;YACV,MAAM,UAAU,GAAG,IAAA,0BAAa,GAAE,CAAC;YACnC,IAAI,CAAC,UAAU;gBAAE,OAAO;YAExB,gCAAgC;YAChC,mBAAmB,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE;gBACnD,UAAU,CAAC,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;IACJ,CAAC,EAAE;QACD,MAAM;QACN,KAAK,CAAC,aAAa;QACnB,KAAK,CAAC,eAAe;QACrB,KAAK,CAAC,eAAe;KACtB,CAAC,CAAC;IAEH,4DAA4D;IAC5D,OAAO,CACL,CAAC,+BAAmB,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,+BAAmB,CAAC,CAC3E,CAAC;AACJ,CAAC,CAAC;AA5DW,QAAA,iBAAiB,qBA4D5B"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * ViroARObjectMarker
3
+ *
4
+ * A component for detecting and tracking 3D objects in the real world.
5
+ */
6
+ import React from "react";
7
+ import { ViroCommonProps } from "./ViroUtils";
8
+ export interface ViroARObjectMarkerProps extends ViroCommonProps {
9
+ target: string;
10
+ visible?: boolean;
11
+ opacity?: number;
12
+ onAnchorFound?: () => void;
13
+ onAnchorUpdated?: () => void;
14
+ onAnchorRemoved?: () => void;
15
+ children?: React.ReactNode;
16
+ }
17
+ /**
18
+ * ViroARObjectMarker is a component for detecting and tracking 3D objects in the real world.
19
+ * It allows you to attach virtual content to real-world objects, such as toys, furniture, or other physical items.
20
+ */
21
+ export declare const ViroARObjectMarker: React.FC<ViroARObjectMarkerProps>;
22
+ //# sourceMappingURL=ViroARObjectMarker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViroARObjectMarker.d.ts","sourceRoot":"","sources":["../../components/ViroARObjectMarker.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,eAAe,EAKhB,MAAM,aAAa,CAAC;AAGrB,MAAM,WAAW,uBAAwB,SAAQ,eAAe;IAE9D,MAAM,EAAE,MAAM,CAAC;IAGf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAG7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CA8DhE,CAAC"}
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ /**
3
+ * ViroARObjectMarker
4
+ *
5
+ * A component for detecting and tracking 3D objects in the real world.
6
+ */
7
+ var __importDefault = (this && this.__importDefault) || function (mod) {
8
+ return (mod && mod.__esModule) ? mod : { "default": mod };
9
+ };
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.ViroARObjectMarker = void 0;
12
+ const react_1 = __importDefault(require("react"));
13
+ const ViroUtils_1 = require("./ViroUtils");
14
+ const ViroGlobal_1 = require("./ViroGlobal");
15
+ /**
16
+ * ViroARObjectMarker is a component for detecting and tracking 3D objects in the real world.
17
+ * It allows you to attach virtual content to real-world objects, such as toys, furniture, or other physical items.
18
+ */
19
+ const ViroARObjectMarker = (props) => {
20
+ // Convert common props to the format expected by the native code
21
+ const nativeProps = {
22
+ ...(0, ViroUtils_1.convertCommonProps)(props),
23
+ target: props.target,
24
+ visible: props.visible,
25
+ opacity: props.opacity,
26
+ };
27
+ // Create the node (parent will be determined by context)
28
+ const nodeId = (0, ViroUtils_1.useViroNode)("arObjectMarker", nativeProps);
29
+ // Register event handlers
30
+ react_1.default.useEffect(() => {
31
+ const nativeViro = (0, ViroGlobal_1.getNativeViro)();
32
+ if (!nativeViro)
33
+ return;
34
+ const eventHandlers = [
35
+ { name: "onAnchorFound", handler: props.onAnchorFound },
36
+ { name: "onAnchorUpdated", handler: props.onAnchorUpdated },
37
+ { name: "onAnchorRemoved", handler: props.onAnchorRemoved },
38
+ ];
39
+ // Register all event handlers and store callback IDs for cleanup
40
+ const registeredCallbacks = eventHandlers
41
+ .filter(({ handler }) => !!handler)
42
+ .map(({ name, handler }) => {
43
+ const callbackId = `${nodeId}_${name}`;
44
+ // Register the callback in the global registry
45
+ if (typeof global !== "undefined" && global.registerViroEventCallback) {
46
+ global.registerViroEventCallback(callbackId, handler);
47
+ }
48
+ // Register with native code
49
+ nativeViro.registerEventCallback(nodeId, name, callbackId);
50
+ return { name, callbackId };
51
+ });
52
+ // Cleanup when unmounting
53
+ return () => {
54
+ const nativeViro = (0, ViroGlobal_1.getNativeViro)();
55
+ if (!nativeViro)
56
+ return;
57
+ // Unregister all event handlers
58
+ registeredCallbacks.forEach(({ name, callbackId }) => {
59
+ nativeViro.unregisterEventCallback(nodeId, name, callbackId);
60
+ });
61
+ };
62
+ }, [
63
+ nodeId,
64
+ props.onAnchorFound,
65
+ props.onAnchorUpdated,
66
+ props.onAnchorRemoved,
67
+ ]);
68
+ // Render children with this AR object marker as their parent
69
+ return (<ViroUtils_1.ViroContextProvider value={nodeId}>{props.children}</ViroUtils_1.ViroContextProvider>);
70
+ };
71
+ exports.ViroARObjectMarker = ViroARObjectMarker;
72
+ //# sourceMappingURL=ViroARObjectMarker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViroARObjectMarker.js","sourceRoot":"","sources":["../../components/ViroARObjectMarker.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;AAEH,kDAA0B;AAC1B,2CAMqB;AACrB,6CAA6C;AAmB7C;;;GAGG;AACI,MAAM,kBAAkB,GAAsC,CACnE,KAAK,EACL,EAAE;IACF,iEAAiE;IACjE,MAAM,WAAW,GAAG;QAClB,GAAG,IAAA,8BAAkB,EAAC,KAAK,CAAC;QAC5B,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,OAAO,EAAE,KAAK,CAAC,OAAO;KACvB,CAAC;IAEF,yDAAyD;IACzD,MAAM,MAAM,GAAG,IAAA,uBAAW,EAAC,gBAAgB,EAAE,WAAW,CAAC,CAAC;IAE1D,0BAA0B;IAC1B,eAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,MAAM,UAAU,GAAG,IAAA,0BAAa,GAAE,CAAC;QACnC,IAAI,CAAC,UAAU;YAAE,OAAO;QAExB,MAAM,aAAa,GAAG;YACpB,EAAE,IAAI,EAAE,eAAe,EAAE,OAAO,EAAE,KAAK,CAAC,aAAa,EAAE;YACvD,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,KAAK,CAAC,eAAe,EAAE;YAC3D,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,KAAK,CAAC,eAAe,EAAE;SAC5D,CAAC;QAEF,iEAAiE;QACjE,MAAM,mBAAmB,GAAG,aAAa;aACtC,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;aAClC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;YACzB,MAAM,UAAU,GAAG,GAAG,MAAM,IAAI,IAAI,EAAE,CAAC;YAEvC,+CAA+C;YAC/C,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,yBAAyB,EAAE,CAAC;gBACtE,MAAM,CAAC,yBAAyB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACxD,CAAC;YAED,4BAA4B;YAC5B,UAAU,CAAC,qBAAqB,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;YAC3D,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;QAC9B,CAAC,CAAC,CAAC;QAEL,0BAA0B;QAC1B,OAAO,GAAG,EAAE;YACV,MAAM,UAAU,GAAG,IAAA,0BAAa,GAAE,CAAC;YACnC,IAAI,CAAC,UAAU;gBAAE,OAAO;YAExB,gCAAgC;YAChC,mBAAmB,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE;gBACnD,UAAU,CAAC,uBAAuB,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;YAC/D,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;IACJ,CAAC,EAAE;QACD,MAAM;QACN,KAAK,CAAC,aAAa;QACnB,KAAK,CAAC,eAAe;QACrB,KAAK,CAAC,eAAe;KACtB,CAAC,CAAC;IAEH,6DAA6D;IAC7D,OAAO,CACL,CAAC,+BAAmB,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,+BAAmB,CAAC,CAC3E,CAAC;AACJ,CAAC,CAAC;AA9DW,QAAA,kBAAkB,sBA8D7B"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * ViroARPlane
3
+ *
4
+ * A component for rendering AR planes detected by the AR system.
5
+ */
6
+ import React from "react";
7
+ import { ViroCommonProps } from "./ViroUtils";
8
+ export interface ViroARPlaneProps extends ViroCommonProps {
9
+ alignment?: "Horizontal" | "Vertical";
10
+ minHeight?: number;
11
+ minWidth?: number;
12
+ visible?: boolean;
13
+ opacity?: number;
14
+ materials?: string | string[];
15
+ onAnchorFound?: () => void;
16
+ onAnchorUpdated?: () => void;
17
+ onAnchorRemoved?: () => void;
18
+ children?: React.ReactNode;
19
+ }
20
+ /**
21
+ * ViroARPlane is a component for rendering AR planes detected by the AR system.
22
+ * It represents a real-world surface detected by the AR system, such as a floor, table, or wall.
23
+ */
24
+ export declare const ViroARPlane: React.FC<ViroARPlaneProps>;
25
+ //# sourceMappingURL=ViroARPlane.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViroARPlane.d.ts","sourceRoot":"","sources":["../../components/ViroARPlane.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,eAAe,EAKhB,MAAM,aAAa,CAAC;AAGrB,MAAM,WAAW,gBAAiB,SAAQ,eAAe;IAEvD,SAAS,CAAC,EAAE,YAAY,GAAG,UAAU,CAAC;IACtC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAGlB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAG9B,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAG7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA6ElD,CAAC"}
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+ /**
3
+ * ViroARPlane
4
+ *
5
+ * A component for rendering AR planes detected by the AR system.
6
+ */
7
+ var __importDefault = (this && this.__importDefault) || function (mod) {
8
+ return (mod && mod.__esModule) ? mod : { "default": mod };
9
+ };
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.ViroARPlane = void 0;
12
+ const react_1 = __importDefault(require("react"));
13
+ const ViroUtils_1 = require("./ViroUtils");
14
+ const ViroGlobal_1 = require("./ViroGlobal");
15
+ /**
16
+ * ViroARPlane is a component for rendering AR planes detected by the AR system.
17
+ * It represents a real-world surface detected by the AR system, such as a floor, table, or wall.
18
+ */
19
+ const ViroARPlane = (props) => {
20
+ // Convert common props to the format expected by the native code
21
+ const nativeProps = {
22
+ ...(0, ViroUtils_1.convertCommonProps)(props),
23
+ alignment: props.alignment,
24
+ minHeight: props.minHeight,
25
+ minWidth: props.minWidth,
26
+ visible: props.visible,
27
+ opacity: props.opacity,
28
+ materials: props.materials,
29
+ };
30
+ // Create the node (parent will be determined by context)
31
+ const nodeId = (0, ViroUtils_1.useViroNode)("arPlane", nativeProps);
32
+ // Register event handlers
33
+ react_1.default.useEffect(() => {
34
+ const nativeViro = (0, ViroGlobal_1.getNativeViro)();
35
+ if (!nativeViro)
36
+ return;
37
+ const eventHandlers = [
38
+ { name: "onAnchorFound", handler: props.onAnchorFound },
39
+ { name: "onAnchorUpdated", handler: props.onAnchorUpdated },
40
+ { name: "onAnchorRemoved", handler: props.onAnchorRemoved },
41
+ { name: "onHover", handler: props.onHover },
42
+ { name: "onClick", handler: props.onClick },
43
+ { name: "onClickState", handler: props.onClickState },
44
+ { name: "onTouch", handler: props.onTouch },
45
+ { name: "onDrag", handler: props.onDrag },
46
+ { name: "onPinch", handler: props.onPinch },
47
+ { name: "onRotate", handler: props.onRotate },
48
+ ];
49
+ // Register all event handlers and store callback IDs for cleanup
50
+ const registeredCallbacks = eventHandlers
51
+ .filter(({ handler }) => !!handler)
52
+ .map(({ name, handler }) => {
53
+ const callbackId = `${nodeId}_${name}`;
54
+ // Register the callback in the global registry
55
+ if (typeof global !== "undefined" && global.registerViroEventCallback) {
56
+ global.registerViroEventCallback(callbackId, handler);
57
+ }
58
+ // Register with native code
59
+ nativeViro.registerEventCallback(nodeId, name, callbackId);
60
+ return { name, callbackId };
61
+ });
62
+ // Cleanup when unmounting
63
+ return () => {
64
+ const nativeViro = (0, ViroGlobal_1.getNativeViro)();
65
+ if (!nativeViro)
66
+ return;
67
+ // Unregister all event handlers
68
+ registeredCallbacks.forEach(({ name, callbackId }) => {
69
+ nativeViro.unregisterEventCallback(nodeId, name, callbackId);
70
+ });
71
+ };
72
+ }, [
73
+ nodeId,
74
+ props.onAnchorFound,
75
+ props.onAnchorUpdated,
76
+ props.onAnchorRemoved,
77
+ props.onHover,
78
+ props.onClick,
79
+ props.onClickState,
80
+ props.onTouch,
81
+ props.onDrag,
82
+ props.onPinch,
83
+ props.onRotate,
84
+ ]);
85
+ // Render children with this AR plane as their parent
86
+ return (<ViroUtils_1.ViroContextProvider value={nodeId}>{props.children}</ViroUtils_1.ViroContextProvider>);
87
+ };
88
+ exports.ViroARPlane = ViroARPlane;
89
+ //# sourceMappingURL=ViroARPlane.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViroARPlane.js","sourceRoot":"","sources":["../../components/ViroARPlane.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * ViroARScene
3
+ *
4
+ * A specialized scene for AR content that uses the device's camera as a background.
5
+ */
6
+ import React from "react";
7
+ import { ViroCommonProps } from "./ViroUtils";
8
+ export interface ViroARSceneProps extends ViroCommonProps {
9
+ anchorDetectionTypes?: ("PlanesHorizontal" | "PlanesVertical" | "Faces")[];
10
+ planeDetectionEnabled?: boolean;
11
+ lightReceivingBitMask?: number;
12
+ shadowCastingBitMask?: number;
13
+ physicsWorld?: {
14
+ gravity?: [number, number, number];
15
+ };
16
+ postProcessEffects?: string[];
17
+ onTrackingUpdated?: (event: any) => void;
18
+ onAmbientLightUpdate?: (event: any) => void;
19
+ onPlatformUpdate?: (event: any) => void;
20
+ onCameraTransformUpdate?: (event: any) => void;
21
+ onAnchorFound?: (event: any) => void;
22
+ onAnchorUpdated?: (event: any) => void;
23
+ onAnchorRemoved?: (event: any) => void;
24
+ children?: React.ReactNode;
25
+ }
26
+ /**
27
+ * ViroARScene is a specialized scene for AR content that uses the device's camera as a background.
28
+ */
29
+ export declare const ViroARScene: React.FC<ViroARSceneProps>;
30
+ //# sourceMappingURL=ViroARScene.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViroARScene.d.ts","sourceRoot":"","sources":["../../components/ViroARScene.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,eAAe,EAIhB,MAAM,aAAa,CAAC;AAGrB,MAAM,WAAW,gBAAiB,SAAQ,eAAe;IAEvD,oBAAoB,CAAC,EAAE,CAAC,kBAAkB,GAAG,gBAAgB,GAAG,OAAO,CAAC,EAAE,CAAC;IAC3E,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAGhC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAG9B,YAAY,CAAC,EAAE;QACb,OAAO,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;KACpC,CAAC;IAGF,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAG9B,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACzC,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC5C,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACxC,uBAAuB,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAC/C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACrC,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IACvC,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,IAAI,CAAC;IAGvC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CA2ElD,CAAC"}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ /**
3
+ * ViroARScene
4
+ *
5
+ * A specialized scene for AR content that uses the device's camera as a background.
6
+ */
7
+ var __importDefault = (this && this.__importDefault) || function (mod) {
8
+ return (mod && mod.__esModule) ? mod : { "default": mod };
9
+ };
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ exports.ViroARScene = void 0;
12
+ const react_1 = __importDefault(require("react"));
13
+ const ViroUtils_1 = require("./ViroUtils");
14
+ const ViroGlobal_1 = require("./ViroGlobal");
15
+ /**
16
+ * ViroARScene is a specialized scene for AR content that uses the device's camera as a background.
17
+ */
18
+ const ViroARScene = (props) => {
19
+ // Convert common props to the format expected by the native code
20
+ const nativeProps = {
21
+ ...(0, ViroUtils_1.convertCommonProps)(props),
22
+ anchorDetectionTypes: props.anchorDetectionTypes,
23
+ planeDetectionEnabled: props.planeDetectionEnabled,
24
+ lightReceivingBitMask: props.lightReceivingBitMask,
25
+ shadowCastingBitMask: props.shadowCastingBitMask,
26
+ physicsWorld: props.physicsWorld,
27
+ postProcessEffects: props.postProcessEffects,
28
+ onTrackingUpdated: props.onTrackingUpdated ? true : undefined,
29
+ onAmbientLightUpdate: props.onAmbientLightUpdate ? true : undefined,
30
+ onPlatformUpdate: props.onPlatformUpdate ? true : undefined,
31
+ onCameraTransformUpdate: props.onCameraTransformUpdate ? true : undefined,
32
+ onAnchorFound: props.onAnchorFound ? true : undefined,
33
+ onAnchorUpdated: props.onAnchorUpdated ? true : undefined,
34
+ onAnchorRemoved: props.onAnchorRemoved ? true : undefined,
35
+ };
36
+ // Create the AR scene node - this is a root node, so no parent
37
+ const nodeId = (0, ViroUtils_1.useViroNode)("arScene", nativeProps);
38
+ // Register event handlers
39
+ react_1.default.useEffect(() => {
40
+ const nativeViro = (0, ViroGlobal_1.getNativeViro)();
41
+ if (!nativeViro)
42
+ return;
43
+ // Register event handlers if provided
44
+ const eventHandlers = [
45
+ { name: "onTrackingUpdated", handler: props.onTrackingUpdated },
46
+ { name: "onAmbientLightUpdate", handler: props.onAmbientLightUpdate },
47
+ { name: "onPlatformUpdate", handler: props.onPlatformUpdate },
48
+ {
49
+ name: "onCameraTransformUpdate",
50
+ handler: props.onCameraTransformUpdate,
51
+ },
52
+ { name: "onAnchorFound", handler: props.onAnchorFound },
53
+ { name: "onAnchorUpdated", handler: props.onAnchorUpdated },
54
+ { name: "onAnchorRemoved", handler: props.onAnchorRemoved },
55
+ ];
56
+ // Register all event handlers
57
+ const registeredCallbacks = eventHandlers
58
+ .filter(({ handler }) => !!handler)
59
+ .map(({ name, handler }) => {
60
+ const callbackId = `${nodeId}_${name}`;
61
+ nativeViro.registerEventCallback(nodeId, name, callbackId);
62
+ return { name, callbackId };
63
+ });
64
+ // Cleanup when unmounting
65
+ return () => {
66
+ const nativeViro = (0, ViroGlobal_1.getNativeViro)();
67
+ if (!nativeViro)
68
+ return;
69
+ // Unregister all event handlers
70
+ registeredCallbacks.forEach(({ name, callbackId }) => {
71
+ nativeViro.unregisterEventCallback(nodeId, name, callbackId);
72
+ });
73
+ };
74
+ }, [
75
+ nodeId,
76
+ props.onTrackingUpdated,
77
+ props.onAmbientLightUpdate,
78
+ props.onPlatformUpdate,
79
+ props.onCameraTransformUpdate,
80
+ props.onAnchorFound,
81
+ props.onAnchorUpdated,
82
+ props.onAnchorRemoved,
83
+ ]);
84
+ // Render children with this scene as their parent
85
+ return (<ViroUtils_2.ViroContextProvider value={nodeId}>{props.children}</ViroUtils_2.ViroContextProvider>);
86
+ };
87
+ exports.ViroARScene = ViroARScene;
88
+ // Import ViroContextProvider at the top level to avoid circular dependencies
89
+ const ViroUtils_2 = require("./ViroUtils");
90
+ //# sourceMappingURL=ViroARScene.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViroARScene.js","sourceRoot":"","sources":["../../components/ViroARScene.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * ViroARSceneNavigator
3
+ *
4
+ * A component for rendering AR scenes.
5
+ */
6
+ import React from "react";
7
+ export interface ViroARSceneNavigatorProps {
8
+ initialScene: {
9
+ scene: React.ComponentType<any>;
10
+ };
11
+ autofocus?: boolean;
12
+ worldAlignment?: "Gravity" | "GravityAndHeading" | "Camera";
13
+ videoQuality?: "High" | "Low";
14
+ planeDetection?: {
15
+ horizontal?: boolean;
16
+ vertical?: boolean;
17
+ };
18
+ onTrackingUpdated?: (event: {
19
+ state: string;
20
+ reason?: string;
21
+ }) => void;
22
+ onARSessionFailed?: (error: string) => void;
23
+ style?: React.CSSProperties;
24
+ }
25
+ /**
26
+ * ViroARSceneNavigator is a component for rendering AR scenes.
27
+ * It provides a container for AR scenes and handles the AR session lifecycle.
28
+ */
29
+ export declare const ViroARSceneNavigator: React.FC<ViroARSceneNavigatorProps>;
30
+ //# sourceMappingURL=ViroARSceneNavigator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViroARSceneNavigator.d.ts","sourceRoot":"","sources":["../../components/ViroARSceneNavigator.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAA8B,MAAM,OAAO,CAAC;AAInD,MAAM,WAAW,yBAAyB;IAExC,YAAY,EAAE;QACZ,KAAK,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;KACjC,CAAC;IAGF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,SAAS,GAAG,mBAAmB,GAAG,QAAQ,CAAC;IAC5D,YAAY,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;IAG9B,cAAc,CAAC,EAAE;QACf,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;KACpB,CAAC;IAGF,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACxE,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAG5C,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CA0CpE,CAAC"}
@@ -0,0 +1,78 @@
1
+ "use strict";
2
+ /**
3
+ * ViroARSceneNavigator
4
+ *
5
+ * A component for rendering AR scenes.
6
+ */
7
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
+ if (k2 === undefined) k2 = k;
9
+ var desc = Object.getOwnPropertyDescriptor(m, k);
10
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
+ desc = { enumerable: true, get: function() { return m[k]; } };
12
+ }
13
+ Object.defineProperty(o, k2, desc);
14
+ }) : (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ o[k2] = m[k];
17
+ }));
18
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
19
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
20
+ }) : function(o, v) {
21
+ o["default"] = v;
22
+ });
23
+ var __importStar = (this && this.__importStar) || (function () {
24
+ var ownKeys = function(o) {
25
+ ownKeys = Object.getOwnPropertyNames || function (o) {
26
+ var ar = [];
27
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
28
+ return ar;
29
+ };
30
+ return ownKeys(o);
31
+ };
32
+ return function (mod) {
33
+ if (mod && mod.__esModule) return mod;
34
+ var result = {};
35
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
36
+ __setModuleDefault(result, mod);
37
+ return result;
38
+ };
39
+ })();
40
+ Object.defineProperty(exports, "__esModule", { value: true });
41
+ exports.ViroARSceneNavigator = void 0;
42
+ const react_1 = __importStar(require("react"));
43
+ const ViroFabricContainer_1 = require("../ViroFabricContainer");
44
+ const ViroGlobal_1 = require("./ViroGlobal");
45
+ /**
46
+ * ViroARSceneNavigator is a component for rendering AR scenes.
47
+ * It provides a container for AR scenes and handles the AR session lifecycle.
48
+ */
49
+ const ViroARSceneNavigator = (props) => {
50
+ // Initialize AR session
51
+ (0, react_1.useEffect)(() => {
52
+ var _a, _b;
53
+ const nativeViro = (0, ViroGlobal_1.getNativeViro)();
54
+ if (!nativeViro)
55
+ return;
56
+ // Initialize Viro (no API key needed)
57
+ nativeViro.initialize();
58
+ // Set plane detection
59
+ if (props.planeDetection) {
60
+ nativeViro.setViroARPlaneDetection({
61
+ horizontal: (_a = props.planeDetection.horizontal) !== null && _a !== void 0 ? _a : false,
62
+ vertical: (_b = props.planeDetection.vertical) !== null && _b !== void 0 ? _b : false,
63
+ });
64
+ }
65
+ // Cleanup when unmounting
66
+ return () => {
67
+ // Cleanup code here
68
+ };
69
+ }, [props.planeDetection]);
70
+ // Create the scene component
71
+ const SceneComponent = props.initialScene.scene;
72
+ // Render the AR scene
73
+ return (<ViroFabricContainer_1.ViroFabricContainer style={props.style} arEnabled={true} autofocus={props.autofocus} worldAlignment={props.worldAlignment} videoQuality={props.videoQuality} onTrackingUpdated={props.onTrackingUpdated} onARSessionFailed={props.onARSessionFailed}>
74
+ <SceneComponent />
75
+ </ViroFabricContainer_1.ViroFabricContainer>);
76
+ };
77
+ exports.ViroARSceneNavigator = ViroARSceneNavigator;
78
+ //# sourceMappingURL=ViroARSceneNavigator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViroARSceneNavigator.js","sourceRoot":"","sources":["../../components/ViroARSceneNavigator.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,+CAAmD;AACnD,gEAA6D;AAC7D,6CAA6C;AA2B7C;;;GAGG;AACI,MAAM,oBAAoB,GAAwC,CACvE,KAAK,EACL,EAAE;IACF,wBAAwB;IACxB,IAAA,iBAAS,EAAC,GAAG,EAAE;;QACb,MAAM,UAAU,GAAG,IAAA,0BAAa,GAAE,CAAC;QACnC,IAAI,CAAC,UAAU;YAAE,OAAO;QAExB,sCAAsC;QACtC,UAAU,CAAC,UAAU,EAAE,CAAC;QAExB,sBAAsB;QACtB,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;YACzB,UAAU,CAAC,uBAAuB,CAAC;gBACjC,UAAU,EAAE,MAAA,KAAK,CAAC,cAAc,CAAC,UAAU,mCAAI,KAAK;gBACpD,QAAQ,EAAE,MAAA,KAAK,CAAC,cAAc,CAAC,QAAQ,mCAAI,KAAK;aACjD,CAAC,CAAC;QACL,CAAC;QAED,0BAA0B;QAC1B,OAAO,GAAG,EAAE;YACV,oBAAoB;QACtB,CAAC,CAAC;IACJ,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC;IAE3B,6BAA6B;IAC7B,MAAM,cAAc,GAAG,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC;IAEhD,sBAAsB;IACtB,OAAO,CACL,CAAC,yCAAmB,CAClB,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CACnB,SAAS,CAAC,CAAC,IAAI,CAAC,CAChB,SAAS,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAC3B,cAAc,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CACrC,YAAY,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CACjC,iBAAiB,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAC3C,iBAAiB,CAAC,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAE3C;MAAA,CAAC,cAAc,CAAC,AAAD,EACjB;IAAA,EAAE,yCAAmB,CAAC,CACvB,CAAC;AACJ,CAAC,CAAC;AA1CW,QAAA,oBAAoB,wBA0C/B"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * ViroAmbientLight
3
+ *
4
+ * A component for adding ambient lighting to a scene.
5
+ */
6
+ import React from "react";
7
+ import { ViroCommonProps } from "./ViroUtils";
8
+ export interface ViroAmbientLightProps extends ViroCommonProps {
9
+ color?: string;
10
+ intensity?: number;
11
+ temperature?: number;
12
+ influenceBitMask?: number;
13
+ }
14
+ /**
15
+ * ViroAmbientLight is a component for adding ambient lighting to a scene.
16
+ * Ambient light is a type of light that illuminates all objects in the scene equally,
17
+ * regardless of their position or orientation.
18
+ */
19
+ export declare const ViroAmbientLight: React.FC<ViroAmbientLightProps>;
20
+ //# sourceMappingURL=ViroAmbientLight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViroAmbientLight.d.ts","sourceRoot":"","sources":["../../components/ViroAmbientLight.tsx"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EACL,eAAe,EAIhB,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,qBAAsB,SAAQ,eAAe;IAE5D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,qBAAqB,CAkC5D,CAAC"}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ /**
3
+ * ViroAmbientLight
4
+ *
5
+ * A component for adding ambient lighting to a scene.
6
+ */
7
+ Object.defineProperty(exports, "__esModule", { value: true });
8
+ exports.ViroAmbientLight = void 0;
9
+ const ViroUtils_1 = require("./ViroUtils");
10
+ /**
11
+ * ViroAmbientLight is a component for adding ambient lighting to a scene.
12
+ * Ambient light is a type of light that illuminates all objects in the scene equally,
13
+ * regardless of their position or orientation.
14
+ */
15
+ const ViroAmbientLight = (props) => {
16
+ var _a;
17
+ // Convert common props to the format expected by the native code
18
+ const nativeProps = {
19
+ ...(0, ViroUtils_1.convertCommonProps)(props),
20
+ color: props.color,
21
+ intensity: props.intensity,
22
+ temperature: props.temperature,
23
+ influenceBitMask: props.influenceBitMask,
24
+ };
25
+ // Create the node (parent will be determined by context)
26
+ const nodeId = (0, ViroUtils_1.useViroNode)("ambientLight", nativeProps);
27
+ // Register event handlers using our new event system
28
+ (0, ViroUtils_1.useViroEventListeners)(nodeId, {
29
+ onHover: props.onHover,
30
+ onClick: props.onClick,
31
+ onClickState: props.onClickState,
32
+ onTouch: props.onTouch,
33
+ onScroll: props.onScroll,
34
+ onSwipe: props.onSwipe,
35
+ onDrag: props.onDrag,
36
+ onPinch: props.onPinch,
37
+ onRotate: props.onRotate,
38
+ onFuse: typeof props.onFuse === "function"
39
+ ? props.onFuse
40
+ : (_a = props.onFuse) === null || _a === void 0 ? void 0 : _a.callback,
41
+ onCollision: props.onCollision,
42
+ onTransformUpdate: props.onTransformUpdate,
43
+ });
44
+ // Ambient light doesn't have children, so just return null
45
+ return null;
46
+ };
47
+ exports.ViroAmbientLight = ViroAmbientLight;
48
+ //# sourceMappingURL=ViroAmbientLight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ViroAmbientLight.js","sourceRoot":"","sources":["../../components/ViroAmbientLight.tsx"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAGH,2CAKqB;AAUrB;;;;GAIG;AACI,MAAM,gBAAgB,GAAoC,CAAC,KAAK,EAAE,EAAE;;IACzE,iEAAiE;IACjE,MAAM,WAAW,GAAG;QAClB,GAAG,IAAA,8BAAkB,EAAC,KAAK,CAAC;QAC5B,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;KACzC,CAAC;IAEF,yDAAyD;IACzD,MAAM,MAAM,GAAG,IAAA,uBAAW,EAAC,cAAc,EAAE,WAAW,CAAC,CAAC;IAExD,qDAAqD;IACrD,IAAA,iCAAqB,EAAC,MAAM,EAAE;QAC5B,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,YAAY,EAAE,KAAK,CAAC,YAAY;QAChC,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,MAAM,EACJ,OAAO,KAAK,CAAC,MAAM,KAAK,UAAU;YAChC,CAAC,CAAC,KAAK,CAAC,MAAM;YACd,CAAC,CAAC,MAAA,KAAK,CAAC,MAAM,0CAAE,QAAQ;QAC5B,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;KAC3C,CAAC,CAAC;IAEH,2DAA2D;IAC3D,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAlCW,QAAA,gBAAgB,oBAkC3B"}