@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,327 @@
1
+ "use strict";
2
+ /**
3
+ * ComprehensiveExample
4
+ *
5
+ * A comprehensive example demonstrating the updated fabric-interop system with:
6
+ * - Multiple component types (3D primitives, lights, text, images)
7
+ * - Scene management and lifecycle
8
+ * - Property system with individual setters
9
+ * - Event system with JSI + fallback
10
+ * - Memory management integration
11
+ * - Material and animation management
12
+ */
13
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
14
+ if (k2 === undefined) k2 = k;
15
+ var desc = Object.getOwnPropertyDescriptor(m, k);
16
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
17
+ desc = { enumerable: true, get: function() { return m[k]; } };
18
+ }
19
+ Object.defineProperty(o, k2, desc);
20
+ }) : (function(o, m, k, k2) {
21
+ if (k2 === undefined) k2 = k;
22
+ o[k2] = m[k];
23
+ }));
24
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
25
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
26
+ }) : function(o, v) {
27
+ o["default"] = v;
28
+ });
29
+ var __importStar = (this && this.__importStar) || (function () {
30
+ var ownKeys = function(o) {
31
+ ownKeys = Object.getOwnPropertyNames || function (o) {
32
+ var ar = [];
33
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
34
+ return ar;
35
+ };
36
+ return ownKeys(o);
37
+ };
38
+ return function (mod) {
39
+ if (mod && mod.__esModule) return mod;
40
+ var result = {};
41
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
42
+ __setModuleDefault(result, mod);
43
+ return result;
44
+ };
45
+ })();
46
+ Object.defineProperty(exports, "__esModule", { value: true });
47
+ exports.ComprehensiveExample = void 0;
48
+ const react_1 = __importStar(require("react"));
49
+ const react_native_1 = require("react-native");
50
+ const index_1 = require("../index");
51
+ const ComprehensiveExample = () => {
52
+ const [sceneActive, setSceneActive] = (0, react_1.useState)(false);
53
+ const [memoryStats, setMemoryStats] = (0, react_1.useState)(null);
54
+ const [selectedObject, setSelectedObject] = (0, react_1.useState)(null);
55
+ // Initialize materials and animations when component mounts
56
+ (0, react_1.useEffect)(() => {
57
+ // Create materials for different objects
58
+ (0, index_1.createMaterial)("redMaterial", {
59
+ diffuseColor: "#FF0000",
60
+ shininess: 2.0,
61
+ lightingModel: "Lambert",
62
+ });
63
+ (0, index_1.createMaterial)("blueMaterial", {
64
+ diffuseColor: "#0000FF",
65
+ shininess: 2.0,
66
+ lightingModel: "Lambert",
67
+ });
68
+ (0, index_1.createMaterial)("greenMaterial", {
69
+ diffuseColor: "#00FF00",
70
+ shininess: 2.0,
71
+ lightingModel: "Lambert",
72
+ });
73
+ (0, index_1.createMaterial)("textMaterial", {
74
+ diffuseColor: "#FFFFFF",
75
+ shininess: 1.0,
76
+ lightingModel: "Lambert",
77
+ });
78
+ (0, index_1.createMaterial)("imageMaterial", {
79
+ diffuseTexture: {
80
+ uri: "https://via.placeholder.com/512x512/FF6B6B/FFFFFF?text=Viro",
81
+ },
82
+ lightingModel: "Lambert",
83
+ });
84
+ // Create animations
85
+ (0, index_1.createAnimation)("spinAnimation", {
86
+ properties: {
87
+ rotateY: "+=360",
88
+ },
89
+ duration: 2000,
90
+ easing: "Linear",
91
+ });
92
+ (0, index_1.createAnimation)("pulseAnimation", {
93
+ properties: {
94
+ scaleX: 1.5,
95
+ scaleY: 1.5,
96
+ scaleZ: 1.5,
97
+ },
98
+ duration: 1000,
99
+ easing: "EaseInEaseOut",
100
+ });
101
+ (0, index_1.createAnimation)("bounceAnimation", {
102
+ properties: {
103
+ positionY: "+=0.5",
104
+ },
105
+ duration: 800,
106
+ easing: "Bounce",
107
+ });
108
+ (0, index_1.createAnimation)("colorChangeAnimation", {
109
+ properties: {
110
+ materialDiffuseColor: "#FFFF00",
111
+ },
112
+ duration: 1500,
113
+ easing: "EaseInEaseOut",
114
+ });
115
+ }, []);
116
+ // Handle scene initialization
117
+ const handleSceneInitialized = (success) => {
118
+ console.log("Scene initialized:", success);
119
+ setSceneActive(success);
120
+ if (success) {
121
+ react_native_1.Alert.alert("Success", "Comprehensive Viro scene initialized!");
122
+ }
123
+ else {
124
+ react_native_1.Alert.alert("Error", "Failed to initialize Viro scene");
125
+ }
126
+ };
127
+ // Handle object interactions
128
+ const handleObjectClick = (objectName, objectType) => {
129
+ setSelectedObject(objectName);
130
+ react_native_1.Alert.alert("Object Clicked", `${objectType} "${objectName}" was clicked!`, [
131
+ {
132
+ text: "Spin",
133
+ onPress: () => (0, index_1.executeAnimation)(objectName, "spinAnimation", {
134
+ run: true,
135
+ loop: false,
136
+ }),
137
+ },
138
+ {
139
+ text: "Pulse",
140
+ onPress: () => (0, index_1.executeAnimation)(objectName, "pulseAnimation", {
141
+ run: true,
142
+ loop: false,
143
+ }),
144
+ },
145
+ {
146
+ text: "Bounce",
147
+ onPress: () => (0, index_1.executeAnimation)(objectName, "bounceAnimation", {
148
+ run: true,
149
+ loop: false,
150
+ }),
151
+ },
152
+ { text: "OK", style: "cancel" },
153
+ ]);
154
+ };
155
+ const handleObjectHover = (objectName, isHovering) => {
156
+ console.log(`${objectName} hover:`, isHovering);
157
+ if (isHovering) {
158
+ (0, index_1.executeAnimation)(objectName, "pulseAnimation", {
159
+ run: true,
160
+ loop: false,
161
+ });
162
+ }
163
+ };
164
+ // Memory management
165
+ const checkMemoryStats = () => {
166
+ const stats = (0, index_1.getMemoryStats)();
167
+ setMemoryStats(stats);
168
+ if (stats) {
169
+ react_native_1.Alert.alert("Memory Statistics", `Total Scenes: ${stats.totalScenes || 0}\n` +
170
+ `Active Scenes: ${stats.activeScenes || 0}\n` +
171
+ `Managed Nodes: ${stats.managedNodes || 0}\n` +
172
+ `Memory Usage: ${stats.usedMemoryMB?.toFixed(1) || "N/A"} MB\n` +
173
+ `Textures: ${stats.textureCount || 0}\n` +
174
+ `Materials: ${stats.materialCount || 0}`);
175
+ }
176
+ else {
177
+ react_native_1.Alert.alert("Memory Stats", "Memory statistics not available");
178
+ }
179
+ };
180
+ const cleanupMemory = () => {
181
+ (0, index_1.performMemoryCleanup)();
182
+ react_native_1.Alert.alert("Memory Cleanup", "Memory cleanup performed successfully");
183
+ };
184
+ return (<react_native_1.View style={styles.container}>
185
+ <react_native_1.Text style={styles.title}>Comprehensive Viro Example</react_native_1.Text>
186
+ <react_native_1.Text style={styles.subtitle}>
187
+ All Components • New Architecture • Complete Integration
188
+ </react_native_1.Text>
189
+
190
+ <react_native_1.View style={styles.controls}>
191
+ <react_native_1.Button title="Memory Stats" onPress={checkMemoryStats} disabled={!sceneActive}/>
192
+ <react_native_1.Button title="Cleanup" onPress={cleanupMemory} disabled={!sceneActive}/>
193
+ </react_native_1.View>
194
+
195
+ {selectedObject && (<react_native_1.View style={styles.selection}>
196
+ <react_native_1.Text style={styles.selectionText}>Selected: {selectedObject}</react_native_1.Text>
197
+ </react_native_1.View>)}
198
+
199
+ {memoryStats && (<react_native_1.View style={styles.stats}>
200
+ <react_native_1.Text style={styles.statsTitle}>Memory Stats:</react_native_1.Text>
201
+ <react_native_1.Text>
202
+ Scenes: {memoryStats.totalScenes || 0} | Nodes:{" "}
203
+ {memoryStats.managedNodes || 0}
204
+ </react_native_1.Text>
205
+ <react_native_1.Text>
206
+ Memory: {memoryStats.usedMemoryMB?.toFixed(1) || "N/A"} MB
207
+ </react_native_1.Text>
208
+ </react_native_1.View>)}
209
+
210
+ <index_1.ViroFabricContainer style={styles.viroContainer} debug={true} arEnabled={false} worldAlignment="Gravity" onInitialized={handleSceneInitialized} onMemoryWarning={(event) => {
211
+ react_native_1.Alert.alert("Memory Warning", `Usage: ${event.memoryStats.usedMemoryMB?.toFixed(1)} MB`);
212
+ }}>
213
+ <index_1.ViroScene onSceneLoadStart={() => console.log("Comprehensive scene loading...")} onSceneLoadEnd={() => console.log("Comprehensive scene loaded!")}>
214
+ {/* Lighting Setup */}
215
+ <index_1.ViroAmbientLight color="#404040" intensity={0.4}/>
216
+ <index_1.ViroDirectionalLight color="#FFFFFF" direction={[0, -1, -0.2]} intensity={1.0} castsShadow={true}/>
217
+
218
+ {/* 3D Primitives Row */}
219
+ <index_1.ViroBox position={[-2, 0, -4]} scale={[0.4, 0.4, 0.4]} materials={["redMaterial"]} onClick={() => handleObjectClick("redBox", "Box")} onHover={(isHovering) => handleObjectHover("redBox", isHovering)} canClick={true} canHover={true}/>
220
+
221
+ <index_1.ViroSphere position={[0, 0, -4]} radius={0.3} materials={["blueMaterial"]} onClick={() => handleObjectClick("blueSphere", "Sphere")} onHover={(isHovering) => handleObjectHover("blueSphere", isHovering)} canClick={true} canHover={true}/>
222
+
223
+ <index_1.ViroBox position={[2, 0, -4]} scale={[0.4, 0.4, 0.4]} materials={["greenMaterial"]} onClick={() => handleObjectClick("greenBox", "Box")} onHover={(isHovering) => handleObjectHover("greenBox", isHovering)} canClick={true} canHover={true}/>
224
+
225
+ {/* Text Elements */}
226
+ <index_1.ViroText text="Viro Fabric Interop" position={[0, 1.5, -3]} scale={[0.5, 0.5, 0.5]} materials={["textMaterial"]} fontSize={20} fontWeight="bold" textAlign="center" onClick={() => handleObjectClick("titleText", "Text")} canClick={true}/>
227
+
228
+ <index_1.ViroText text="Click objects to interact!" position={[0, -1.5, -3]} scale={[0.3, 0.3, 0.3]} materials={["textMaterial"]} fontSize={16} textAlign="center" onClick={() => handleObjectClick("instructionText", "Text")} canClick={true}/>
229
+
230
+ {/* Image and Quad */}
231
+ <index_1.ViroQuad position={[-1.5, 1, -3]} width={0.8} height={0.8} materials={["imageMaterial"]} onClick={() => handleObjectClick("imageQuad", "Image Quad")} canClick={true}/>
232
+
233
+ <index_1.ViroImage position={[1.5, 1, -3]} width={0.8} height={0.8} source={{
234
+ uri: "https://via.placeholder.com/512x512/4ECDC4/FFFFFF?text=Image",
235
+ }} onClick={() => handleObjectClick("viroImage", "Image")} canClick={true}/>
236
+
237
+ {/* Animated Objects */}
238
+ <index_1.ViroSphere position={[0, 0.8, -2]} radius={0.15} materials={["redMaterial"]} animation={{
239
+ name: "spinAnimation",
240
+ run: true,
241
+ loop: true,
242
+ }} onClick={() => handleObjectClick("spinningOrb", "Spinning Orb")} canClick={true}/>
243
+
244
+ {/* Sound (invisible but interactive) */}
245
+ <index_1.ViroSound position={[0, 0, -3]} source={{
246
+ uri: "https://www.soundjay.com/misc/sounds/bell-ringing-05.wav",
247
+ }} paused={true} volume={0.5} onClick={() => {
248
+ react_native_1.Alert.alert("Sound", "Sound component clicked!");
249
+ // Note: Sound playback would be controlled through native props
250
+ }} canClick={true}/>
251
+ </index_1.ViroScene>
252
+ </index_1.ViroFabricContainer>
253
+
254
+ <react_native_1.View style={styles.footer}>
255
+ <react_native_1.Text style={styles.footerText}>
256
+ Status: {sceneActive ? "Active" : "Loading..."}
257
+ </react_native_1.Text>
258
+ <react_native_1.Text style={styles.footerText}>
259
+ Components: Box • Sphere • Text • Image • Quad • Lights • Sound
260
+ </react_native_1.Text>
261
+ </react_native_1.View>
262
+ </react_native_1.View>);
263
+ };
264
+ exports.ComprehensiveExample = ComprehensiveExample;
265
+ const styles = react_native_1.StyleSheet.create({
266
+ container: {
267
+ flex: 1,
268
+ backgroundColor: "#f5f5f5",
269
+ },
270
+ title: {
271
+ fontSize: 22,
272
+ fontWeight: "bold",
273
+ textAlign: "center",
274
+ marginTop: 20,
275
+ marginBottom: 5,
276
+ color: "#333",
277
+ },
278
+ subtitle: {
279
+ fontSize: 14,
280
+ textAlign: "center",
281
+ color: "#666",
282
+ marginBottom: 15,
283
+ },
284
+ controls: {
285
+ flexDirection: "row",
286
+ justifyContent: "space-around",
287
+ paddingHorizontal: 20,
288
+ marginBottom: 10,
289
+ },
290
+ selection: {
291
+ backgroundColor: "#4ECDC4",
292
+ margin: 10,
293
+ padding: 8,
294
+ borderRadius: 5,
295
+ alignItems: "center",
296
+ },
297
+ selectionText: {
298
+ color: "#fff",
299
+ fontWeight: "bold",
300
+ },
301
+ stats: {
302
+ backgroundColor: "#fff",
303
+ margin: 10,
304
+ padding: 10,
305
+ borderRadius: 5,
306
+ borderWidth: 1,
307
+ borderColor: "#ddd",
308
+ },
309
+ statsTitle: {
310
+ fontWeight: "bold",
311
+ marginBottom: 5,
312
+ color: "#333",
313
+ },
314
+ viroContainer: {
315
+ flex: 1,
316
+ backgroundColor: "#000",
317
+ },
318
+ footer: {
319
+ backgroundColor: "#333",
320
+ padding: 10,
321
+ },
322
+ footerText: {
323
+ color: "#fff",
324
+ textAlign: "center",
325
+ fontSize: 12,
326
+ },
327
+ });
@@ -0,0 +1,8 @@
1
+ /**
2
+ * SimpleARExample
3
+ *
4
+ * A simple example of using the Viro Fabric interop layer for AR.
5
+ */
6
+ import React from "react";
7
+ export declare const SimpleARExample: () => React.JSX.Element;
8
+ export default SimpleARExample;
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ /**
3
+ * SimpleARExample
4
+ *
5
+ * A simple example of using the Viro Fabric interop layer for AR.
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.SimpleARExample = void 0;
12
+ const react_1 = __importDefault(require("react"));
13
+ const components_1 = require("../components");
14
+ // Register materials
15
+ components_1.ViroMaterials.registerMaterials({
16
+ grid: {
17
+ diffuseColor: "#0000FF",
18
+ diffuseTexture: require("./assets/grid_bg.jpg"),
19
+ },
20
+ text: {
21
+ diffuseColor: "#FFFFFF",
22
+ },
23
+ });
24
+ // Register AR tracking targets
25
+ components_1.ViroARTrackingTargets.registerTargets({
26
+ logo: {
27
+ source: require("./assets/viro_logo.png"),
28
+ orientation: "Up",
29
+ physicalWidth: 0.1, // 10cm
30
+ },
31
+ });
32
+ // Main AR scene component
33
+ const ARScene = () => {
34
+ // Handle tracking state updates
35
+ const onTrackingUpdated = (state) => {
36
+ console.log("Tracking state updated:", state);
37
+ };
38
+ // Handle anchor found event
39
+ const onAnchorFound = () => {
40
+ console.log("Anchor found!");
41
+ };
42
+ return (<components_1.ViroARScene onTrackingUpdated={onTrackingUpdated}>
43
+ {/* A simple 3D box floating 1 meter in front of the user */}
44
+ <components_1.ViroBox position={[0, 0, -1]} scale={[0.1, 0.1, 0.1]} materials={["grid"]}/>
45
+
46
+ {/* Text above the box */}
47
+ <components_1.ViroText text="Hello Viro!" position={[0, 0.1, -1]} scale={[0.1, 0.1, 0.1]} color="#FFFFFF" fontWeight="bold" materials={["text"]}/>
48
+
49
+ {/* Image marker that places content when detected */}
50
+ <components_1.ViroARImageMarker target="logo" onAnchorFound={onAnchorFound}>
51
+ <components_1.ViroBox position={[0, 0.1, 0]} scale={[0.05, 0.05, 0.05]} materials={["grid"]}/>
52
+ </components_1.ViroARImageMarker>
53
+ </components_1.ViroARScene>);
54
+ };
55
+ // Main app component
56
+ const SimpleARExample = () => {
57
+ return (<components_1.ViroARSceneNavigator initialScene={{
58
+ scene: ARScene,
59
+ }} style={{ flex: 1 }} worldAlignment="Gravity" planeDetection={{ horizontal: true, vertical: true }}/>);
60
+ };
61
+ exports.SimpleARExample = SimpleARExample;
62
+ exports.default = exports.SimpleARExample;
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Viro Fabric Interop Layer
3
+ *
4
+ * This module provides compatibility between React Native's New Architecture (Fabric)
5
+ * and the existing Viro implementation without requiring codegen.
6
+ */
7
+ export * from "./ViroFabricContainer";
8
+ export { ViroNode, ViroScene, ViroARScene, ViroFlexView, ViroBox, ViroSphere, Viro3DObject, ViroGeometry, ViroQuad, ViroPolygon, ViroPolyline, ViroSurface, ViroText, ViroImage, ViroVideo, ViroAnimatedImage, Viro360Image, Viro360Video, ViroSkyBox, ViroPortal, ViroPortalScene, ViroAmbientLight, ViroDirectionalLight, ViroSpotLight, ViroOmniLight, ViroLightingEnvironment, ViroCamera, ViroOrbitCamera, ViroSound, ViroSoundField, ViroSpatialSound, ViroButton, ViroController, ViroSpinner, ViroParticleEmitter, ViroAnimatedComponent, ViroMaterialVideo, ViroSceneNavigator, ViroVRSceneNavigator, ViroARSceneNavigator, Viro3DSceneNavigator, ViroARCamera, ViroARPlane, ViroARPlaneSelector, ViroARImageMarker, ViroARObjectMarker, ViroAnimations, ViroMaterials, ViroARTrackingTargets, } from "./components";
9
+ export * from "./components/ViroUtils";
10
+ export { generateNodeId, generateCallbackId, handleViroEvent, registerEventListener, unregisterEventListener, initializeViro, createScene, activateScene, deactivateScene, destroyScene, getSceneState, getMemoryStats, performMemoryCleanup, createNode, updateNode, deleteNode, addChild, removeChild, createMaterial, createAnimation, setARPlaneDetection, setARImageTargets, isViroJSIAvailable, type ViroNodeProps, type ViroNodeType, type ViroEventCallback, } from "./NativeViro";
11
+ export { executeAnimation as executeNativeAnimation, updateMaterial as updateNativeMaterial, } from "./NativeViro";
12
+ export { executeAnimation, updateMaterial } from "./NativeViro";
13
+ export { default as ViroEventsManager } from "./ViroEventsManager";
14
+ export type { Spec as ViroEventsTurboModuleSpec } from "./specs/ViroEventsTurboModule";
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ /**
3
+ * Viro Fabric Interop Layer
4
+ *
5
+ * This module provides compatibility between React Native's New Architecture (Fabric)
6
+ * and the existing Viro implementation without requiring codegen.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
20
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
21
+ };
22
+ var __importDefault = (this && this.__importDefault) || function (mod) {
23
+ return (mod && mod.__esModule) ? mod : { "default": mod };
24
+ };
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports.generateNodeId = exports.ViroARTrackingTargets = exports.ViroMaterials = exports.ViroAnimations = exports.ViroARObjectMarker = exports.ViroARImageMarker = exports.ViroARPlaneSelector = exports.ViroARPlane = exports.ViroARCamera = exports.Viro3DSceneNavigator = exports.ViroARSceneNavigator = exports.ViroVRSceneNavigator = exports.ViroSceneNavigator = exports.ViroMaterialVideo = exports.ViroAnimatedComponent = exports.ViroParticleEmitter = exports.ViroSpinner = exports.ViroController = exports.ViroButton = exports.ViroSpatialSound = exports.ViroSoundField = exports.ViroSound = exports.ViroOrbitCamera = exports.ViroCamera = exports.ViroLightingEnvironment = exports.ViroOmniLight = exports.ViroSpotLight = exports.ViroDirectionalLight = exports.ViroAmbientLight = exports.ViroPortalScene = exports.ViroPortal = exports.ViroSkyBox = exports.Viro360Video = exports.Viro360Image = exports.ViroAnimatedImage = exports.ViroVideo = exports.ViroImage = exports.ViroText = exports.ViroSurface = exports.ViroPolyline = exports.ViroPolygon = exports.ViroQuad = exports.ViroGeometry = exports.Viro3DObject = exports.ViroSphere = exports.ViroBox = exports.ViroFlexView = exports.ViroARScene = exports.ViroScene = exports.ViroNode = void 0;
27
+ exports.ViroEventsManager = exports.updateMaterial = exports.executeAnimation = exports.updateNativeMaterial = exports.executeNativeAnimation = exports.isViroJSIAvailable = exports.setARImageTargets = exports.setARPlaneDetection = exports.createAnimation = exports.createMaterial = exports.removeChild = exports.addChild = exports.deleteNode = exports.updateNode = exports.createNode = exports.performMemoryCleanup = exports.getMemoryStats = exports.getSceneState = exports.destroyScene = exports.deactivateScene = exports.activateScene = exports.createScene = exports.initializeViro = exports.unregisterEventListener = exports.registerEventListener = exports.handleViroEvent = exports.generateCallbackId = void 0;
28
+ __exportStar(require("./ViroFabricContainer"), exports);
29
+ // Export components explicitly to ensure they're found by validation
30
+ var components_1 = require("./components");
31
+ Object.defineProperty(exports, "ViroNode", { enumerable: true, get: function () { return components_1.ViroNode; } });
32
+ Object.defineProperty(exports, "ViroScene", { enumerable: true, get: function () { return components_1.ViroScene; } });
33
+ Object.defineProperty(exports, "ViroARScene", { enumerable: true, get: function () { return components_1.ViroARScene; } });
34
+ Object.defineProperty(exports, "ViroFlexView", { enumerable: true, get: function () { return components_1.ViroFlexView; } });
35
+ Object.defineProperty(exports, "ViroBox", { enumerable: true, get: function () { return components_1.ViroBox; } });
36
+ Object.defineProperty(exports, "ViroSphere", { enumerable: true, get: function () { return components_1.ViroSphere; } });
37
+ Object.defineProperty(exports, "Viro3DObject", { enumerable: true, get: function () { return components_1.Viro3DObject; } });
38
+ Object.defineProperty(exports, "ViroGeometry", { enumerable: true, get: function () { return components_1.ViroGeometry; } });
39
+ Object.defineProperty(exports, "ViroQuad", { enumerable: true, get: function () { return components_1.ViroQuad; } });
40
+ Object.defineProperty(exports, "ViroPolygon", { enumerable: true, get: function () { return components_1.ViroPolygon; } });
41
+ Object.defineProperty(exports, "ViroPolyline", { enumerable: true, get: function () { return components_1.ViroPolyline; } });
42
+ Object.defineProperty(exports, "ViroSurface", { enumerable: true, get: function () { return components_1.ViroSurface; } });
43
+ Object.defineProperty(exports, "ViroText", { enumerable: true, get: function () { return components_1.ViroText; } });
44
+ Object.defineProperty(exports, "ViroImage", { enumerable: true, get: function () { return components_1.ViroImage; } });
45
+ Object.defineProperty(exports, "ViroVideo", { enumerable: true, get: function () { return components_1.ViroVideo; } });
46
+ Object.defineProperty(exports, "ViroAnimatedImage", { enumerable: true, get: function () { return components_1.ViroAnimatedImage; } });
47
+ Object.defineProperty(exports, "Viro360Image", { enumerable: true, get: function () { return components_1.Viro360Image; } });
48
+ Object.defineProperty(exports, "Viro360Video", { enumerable: true, get: function () { return components_1.Viro360Video; } });
49
+ Object.defineProperty(exports, "ViroSkyBox", { enumerable: true, get: function () { return components_1.ViroSkyBox; } });
50
+ Object.defineProperty(exports, "ViroPortal", { enumerable: true, get: function () { return components_1.ViroPortal; } });
51
+ Object.defineProperty(exports, "ViroPortalScene", { enumerable: true, get: function () { return components_1.ViroPortalScene; } });
52
+ Object.defineProperty(exports, "ViroAmbientLight", { enumerable: true, get: function () { return components_1.ViroAmbientLight; } });
53
+ Object.defineProperty(exports, "ViroDirectionalLight", { enumerable: true, get: function () { return components_1.ViroDirectionalLight; } });
54
+ Object.defineProperty(exports, "ViroSpotLight", { enumerable: true, get: function () { return components_1.ViroSpotLight; } });
55
+ Object.defineProperty(exports, "ViroOmniLight", { enumerable: true, get: function () { return components_1.ViroOmniLight; } });
56
+ Object.defineProperty(exports, "ViroLightingEnvironment", { enumerable: true, get: function () { return components_1.ViroLightingEnvironment; } });
57
+ Object.defineProperty(exports, "ViroCamera", { enumerable: true, get: function () { return components_1.ViroCamera; } });
58
+ Object.defineProperty(exports, "ViroOrbitCamera", { enumerable: true, get: function () { return components_1.ViroOrbitCamera; } });
59
+ Object.defineProperty(exports, "ViroSound", { enumerable: true, get: function () { return components_1.ViroSound; } });
60
+ Object.defineProperty(exports, "ViroSoundField", { enumerable: true, get: function () { return components_1.ViroSoundField; } });
61
+ Object.defineProperty(exports, "ViroSpatialSound", { enumerable: true, get: function () { return components_1.ViroSpatialSound; } });
62
+ Object.defineProperty(exports, "ViroButton", { enumerable: true, get: function () { return components_1.ViroButton; } });
63
+ Object.defineProperty(exports, "ViroController", { enumerable: true, get: function () { return components_1.ViroController; } });
64
+ Object.defineProperty(exports, "ViroSpinner", { enumerable: true, get: function () { return components_1.ViroSpinner; } });
65
+ Object.defineProperty(exports, "ViroParticleEmitter", { enumerable: true, get: function () { return components_1.ViroParticleEmitter; } });
66
+ Object.defineProperty(exports, "ViroAnimatedComponent", { enumerable: true, get: function () { return components_1.ViroAnimatedComponent; } });
67
+ Object.defineProperty(exports, "ViroMaterialVideo", { enumerable: true, get: function () { return components_1.ViroMaterialVideo; } });
68
+ Object.defineProperty(exports, "ViroSceneNavigator", { enumerable: true, get: function () { return components_1.ViroSceneNavigator; } });
69
+ Object.defineProperty(exports, "ViroVRSceneNavigator", { enumerable: true, get: function () { return components_1.ViroVRSceneNavigator; } });
70
+ Object.defineProperty(exports, "ViroARSceneNavigator", { enumerable: true, get: function () { return components_1.ViroARSceneNavigator; } });
71
+ Object.defineProperty(exports, "Viro3DSceneNavigator", { enumerable: true, get: function () { return components_1.Viro3DSceneNavigator; } });
72
+ Object.defineProperty(exports, "ViroARCamera", { enumerable: true, get: function () { return components_1.ViroARCamera; } });
73
+ Object.defineProperty(exports, "ViroARPlane", { enumerable: true, get: function () { return components_1.ViroARPlane; } });
74
+ Object.defineProperty(exports, "ViroARPlaneSelector", { enumerable: true, get: function () { return components_1.ViroARPlaneSelector; } });
75
+ Object.defineProperty(exports, "ViroARImageMarker", { enumerable: true, get: function () { return components_1.ViroARImageMarker; } });
76
+ Object.defineProperty(exports, "ViroARObjectMarker", { enumerable: true, get: function () { return components_1.ViroARObjectMarker; } });
77
+ Object.defineProperty(exports, "ViroAnimations", { enumerable: true, get: function () { return components_1.ViroAnimations; } });
78
+ Object.defineProperty(exports, "ViroMaterials", { enumerable: true, get: function () { return components_1.ViroMaterials; } });
79
+ Object.defineProperty(exports, "ViroARTrackingTargets", { enumerable: true, get: function () { return components_1.ViroARTrackingTargets; } });
80
+ // Export utilities
81
+ __exportStar(require("./components/ViroUtils"), exports);
82
+ // Export specific functions from NativeViro to avoid conflicts
83
+ var NativeViro_1 = require("./NativeViro");
84
+ Object.defineProperty(exports, "generateNodeId", { enumerable: true, get: function () { return NativeViro_1.generateNodeId; } });
85
+ Object.defineProperty(exports, "generateCallbackId", { enumerable: true, get: function () { return NativeViro_1.generateCallbackId; } });
86
+ Object.defineProperty(exports, "handleViroEvent", { enumerable: true, get: function () { return NativeViro_1.handleViroEvent; } });
87
+ Object.defineProperty(exports, "registerEventListener", { enumerable: true, get: function () { return NativeViro_1.registerEventListener; } });
88
+ Object.defineProperty(exports, "unregisterEventListener", { enumerable: true, get: function () { return NativeViro_1.unregisterEventListener; } });
89
+ Object.defineProperty(exports, "initializeViro", { enumerable: true, get: function () { return NativeViro_1.initializeViro; } });
90
+ Object.defineProperty(exports, "createScene", { enumerable: true, get: function () { return NativeViro_1.createScene; } });
91
+ Object.defineProperty(exports, "activateScene", { enumerable: true, get: function () { return NativeViro_1.activateScene; } });
92
+ Object.defineProperty(exports, "deactivateScene", { enumerable: true, get: function () { return NativeViro_1.deactivateScene; } });
93
+ Object.defineProperty(exports, "destroyScene", { enumerable: true, get: function () { return NativeViro_1.destroyScene; } });
94
+ Object.defineProperty(exports, "getSceneState", { enumerable: true, get: function () { return NativeViro_1.getSceneState; } });
95
+ Object.defineProperty(exports, "getMemoryStats", { enumerable: true, get: function () { return NativeViro_1.getMemoryStats; } });
96
+ Object.defineProperty(exports, "performMemoryCleanup", { enumerable: true, get: function () { return NativeViro_1.performMemoryCleanup; } });
97
+ Object.defineProperty(exports, "createNode", { enumerable: true, get: function () { return NativeViro_1.createNode; } });
98
+ Object.defineProperty(exports, "updateNode", { enumerable: true, get: function () { return NativeViro_1.updateNode; } });
99
+ Object.defineProperty(exports, "deleteNode", { enumerable: true, get: function () { return NativeViro_1.deleteNode; } });
100
+ Object.defineProperty(exports, "addChild", { enumerable: true, get: function () { return NativeViro_1.addChild; } });
101
+ Object.defineProperty(exports, "removeChild", { enumerable: true, get: function () { return NativeViro_1.removeChild; } });
102
+ Object.defineProperty(exports, "createMaterial", { enumerable: true, get: function () { return NativeViro_1.createMaterial; } });
103
+ Object.defineProperty(exports, "createAnimation", { enumerable: true, get: function () { return NativeViro_1.createAnimation; } });
104
+ Object.defineProperty(exports, "setARPlaneDetection", { enumerable: true, get: function () { return NativeViro_1.setARPlaneDetection; } });
105
+ Object.defineProperty(exports, "setARImageTargets", { enumerable: true, get: function () { return NativeViro_1.setARImageTargets; } });
106
+ Object.defineProperty(exports, "isViroJSIAvailable", { enumerable: true, get: function () { return NativeViro_1.isViroJSIAvailable; } });
107
+ // Re-export executeAnimation and updateMaterial with different names to avoid conflicts
108
+ var NativeViro_2 = require("./NativeViro");
109
+ Object.defineProperty(exports, "executeNativeAnimation", { enumerable: true, get: function () { return NativeViro_2.executeAnimation; } });
110
+ Object.defineProperty(exports, "updateNativeMaterial", { enumerable: true, get: function () { return NativeViro_2.updateMaterial; } });
111
+ // Also export the original names for backward compatibility
112
+ var NativeViro_3 = require("./NativeViro");
113
+ Object.defineProperty(exports, "executeAnimation", { enumerable: true, get: function () { return NativeViro_3.executeAnimation; } });
114
+ Object.defineProperty(exports, "updateMaterial", { enumerable: true, get: function () { return NativeViro_3.updateMaterial; } });
115
+ // Export event management utilities
116
+ var ViroEventsManager_1 = require("./ViroEventsManager");
117
+ Object.defineProperty(exports, "ViroEventsManager", { enumerable: true, get: function () { return __importDefault(ViroEventsManager_1).default; } });
@@ -0,0 +1,19 @@
1
+ /**
2
+ * ViroEventsTurboModule.ts
3
+ * TurboModule specification for Viro event emission
4
+ *
5
+ * This module provides proper event emission for JSI callbacks
6
+ * in React Native's New Architecture (Fabric + TurboModules)
7
+ */
8
+ import type { TurboModule } from "react-native";
9
+ export interface Spec extends TurboModule {
10
+ addListener(eventName: string): void;
11
+ removeListeners(count: number): void;
12
+ emitJSICallback(callbackId: string, eventData: Object): void;
13
+ emitNodeEvent(nodeId: string, eventName: string, eventData: Object): void;
14
+ emitSceneEvent(sceneId: string, eventName: string, eventData: Object): void;
15
+ isEventSystemReady(): boolean;
16
+ getActiveListenerCount(): number;
17
+ }
18
+ declare const _default: Spec;
19
+ export default _default;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ /**
3
+ * ViroEventsTurboModule.ts
4
+ * TurboModule specification for Viro event emission
5
+ *
6
+ * This module provides proper event emission for JSI callbacks
7
+ * in React Native's New Architecture (Fabric + TurboModules)
8
+ */
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ const react_native_1 = require("react-native");
11
+ exports.default = react_native_1.TurboModuleRegistry.getEnforcing("ViroEvents");
@@ -0,0 +1,9 @@
1
+ /**
2
+ * BasicFunctionalityTest - Integration test for fabric-interop layer
3
+ *
4
+ * This test verifies the core functionality of the fabric-interop layer
5
+ * by testing basic operations like node creation, scene management, and events.
6
+ */
7
+ import React from "react";
8
+ export declare const BasicFunctionalityTest: React.FC;
9
+ export default BasicFunctionalityTest;