@mentra/engine 0.1.0-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (842) hide show
  1. package/README.md +79 -0
  2. package/build/devtools.d.ts +11 -0
  3. package/build/devtools.d.ts.map +1 -0
  4. package/build/devtools.js +13 -0
  5. package/build/devtools.js.map +1 -0
  6. package/build/engine.d.ts +261 -0
  7. package/build/engine.d.ts.map +1 -0
  8. package/build/engine.js +170 -0
  9. package/build/engine.js.map +1 -0
  10. package/build/facades/dev.d.ts +58 -0
  11. package/build/facades/dev.d.ts.map +1 -0
  12. package/build/facades/dev.js +189 -0
  13. package/build/facades/dev.js.map +1 -0
  14. package/build/facades/display.d.ts +21 -0
  15. package/build/facades/display.d.ts.map +1 -0
  16. package/build/facades/display.js +17 -0
  17. package/build/facades/display.js.map +1 -0
  18. package/build/facades/displayMirror.d.ts +15 -0
  19. package/build/facades/displayMirror.d.ts.map +1 -0
  20. package/build/facades/displayMirror.js +29 -0
  21. package/build/facades/displayMirror.js.map +1 -0
  22. package/build/facades/gallery.d.ts +62 -0
  23. package/build/facades/gallery.d.ts.map +1 -0
  24. package/build/facades/gallery.js +61 -0
  25. package/build/facades/gallery.js.map +1 -0
  26. package/build/facades/glasses.d.ts +141 -0
  27. package/build/facades/glasses.d.ts.map +1 -0
  28. package/build/facades/glasses.js +199 -0
  29. package/build/facades/glasses.js.map +1 -0
  30. package/build/facades/glassesSettings.d.ts +13 -0
  31. package/build/facades/glassesSettings.d.ts.map +1 -0
  32. package/build/facades/glassesSettings.js +54 -0
  33. package/build/facades/glassesSettings.js.map +1 -0
  34. package/build/facades/glassesWifi.d.ts +25 -0
  35. package/build/facades/glassesWifi.d.ts.map +1 -0
  36. package/build/facades/glassesWifi.js +57 -0
  37. package/build/facades/glassesWifi.js.map +1 -0
  38. package/build/facades/miniapps.d.ts +43 -0
  39. package/build/facades/miniapps.d.ts.map +1 -0
  40. package/build/facades/miniapps.js +49 -0
  41. package/build/facades/miniapps.js.map +1 -0
  42. package/build/facades/notifications.d.ts +13 -0
  43. package/build/facades/notifications.d.ts.map +1 -0
  44. package/build/facades/notifications.js +12 -0
  45. package/build/facades/notifications.js.map +1 -0
  46. package/build/facades/ota.d.ts +103 -0
  47. package/build/facades/ota.d.ts.map +1 -0
  48. package/build/facades/ota.js +156 -0
  49. package/build/facades/ota.js.map +1 -0
  50. package/build/facades/pairing.d.ts +114 -0
  51. package/build/facades/pairing.d.ts.map +1 -0
  52. package/build/facades/pairing.js +275 -0
  53. package/build/facades/pairing.js.map +1 -0
  54. package/build/facades/permissions.d.ts +33 -0
  55. package/build/facades/permissions.d.ts.map +1 -0
  56. package/build/facades/permissions.js +155 -0
  57. package/build/facades/permissions.js.map +1 -0
  58. package/build/facades/phoneNotifications.d.ts +21 -0
  59. package/build/facades/phoneNotifications.d.ts.map +1 -0
  60. package/build/facades/phoneNotifications.js +51 -0
  61. package/build/facades/phoneNotifications.js.map +1 -0
  62. package/build/facades/reports.d.ts +36 -0
  63. package/build/facades/reports.d.ts.map +1 -0
  64. package/build/facades/reports.js +134 -0
  65. package/build/facades/reports.js.map +1 -0
  66. package/build/facades/session.d.ts +21 -0
  67. package/build/facades/session.d.ts.map +1 -0
  68. package/build/facades/session.js +52 -0
  69. package/build/facades/session.js.map +1 -0
  70. package/build/facades/settings.d.ts +37 -0
  71. package/build/facades/settings.d.ts.map +1 -0
  72. package/build/facades/settings.js +55 -0
  73. package/build/facades/settings.js.map +1 -0
  74. package/build/facades/speech.d.ts +30 -0
  75. package/build/facades/speech.d.ts.map +1 -0
  76. package/build/facades/speech.js +37 -0
  77. package/build/facades/speech.js.map +1 -0
  78. package/build/index.d.ts +43 -0
  79. package/build/index.d.ts.map +1 -0
  80. package/build/index.js +45 -0
  81. package/build/index.js.map +1 -0
  82. package/build/internal.d.ts +67 -0
  83. package/build/internal.d.ts.map +1 -0
  84. package/build/internal.js +90 -0
  85. package/build/internal.js.map +1 -0
  86. package/build/runtime/bootstrap.d.ts +83 -0
  87. package/build/runtime/bootstrap.d.ts.map +1 -0
  88. package/build/runtime/bootstrap.js +56 -0
  89. package/build/runtime/bootstrap.js.map +1 -0
  90. package/build/runtime/config.d.ts +146 -0
  91. package/build/runtime/config.d.ts.map +1 -0
  92. package/build/runtime/config.js +18 -0
  93. package/build/runtime/config.js.map +1 -0
  94. package/build/runtime/streamConfig.d.ts +4 -0
  95. package/build/runtime/streamConfig.d.ts.map +1 -0
  96. package/build/runtime/streamConfig.js +38 -0
  97. package/build/runtime/streamConfig.js.map +1 -0
  98. package/build/services/AppRegistry.d.ts +269 -0
  99. package/build/services/AppRegistry.d.ts.map +1 -0
  100. package/build/services/AppRegistry.js +1079 -0
  101. package/build/services/AppRegistry.js.map +1 -0
  102. package/build/services/AudioCloudUplink.d.ts +9 -0
  103. package/build/services/AudioCloudUplink.d.ts.map +1 -0
  104. package/build/services/AudioCloudUplink.js +48 -0
  105. package/build/services/AudioCloudUplink.js.map +1 -0
  106. package/build/services/AudioPlaybackService.d.ts +175 -0
  107. package/build/services/AudioPlaybackService.d.ts.map +1 -0
  108. package/build/services/AudioPlaybackService.js +705 -0
  109. package/build/services/AudioPlaybackService.js.map +1 -0
  110. package/build/services/AutomaticReportResult.d.ts +20 -0
  111. package/build/services/AutomaticReportResult.d.ts.map +1 -0
  112. package/build/services/AutomaticReportResult.js +29 -0
  113. package/build/services/AutomaticReportResult.js.map +1 -0
  114. package/build/services/BlobStore.d.ts +91 -0
  115. package/build/services/BlobStore.d.ts.map +1 -0
  116. package/build/services/BlobStore.js +668 -0
  117. package/build/services/BlobStore.js.map +1 -0
  118. package/build/services/CaptionsTesterReportService.d.ts +4 -0
  119. package/build/services/CaptionsTesterReportService.d.ts.map +1 -0
  120. package/build/services/CaptionsTesterReportService.js +80 -0
  121. package/build/services/CaptionsTesterReportService.js.map +1 -0
  122. package/build/services/CloudAudioSubscriptionSync.d.ts +24 -0
  123. package/build/services/CloudAudioSubscriptionSync.d.ts.map +1 -0
  124. package/build/services/CloudAudioSubscriptionSync.js +39 -0
  125. package/build/services/CloudAudioSubscriptionSync.js.map +1 -0
  126. package/build/services/CloudClientService.d.ts +143 -0
  127. package/build/services/CloudClientService.d.ts.map +1 -0
  128. package/build/services/CloudClientService.js +644 -0
  129. package/build/services/CloudClientService.js.map +1 -0
  130. package/build/services/CloudTranscriptE2EMetrics.d.ts +4 -0
  131. package/build/services/CloudTranscriptE2EMetrics.d.ts.map +1 -0
  132. package/build/services/CloudTranscriptE2EMetrics.js +24 -0
  133. package/build/services/CloudTranscriptE2EMetrics.js.map +1 -0
  134. package/build/services/ConnectionCoordinator.d.ts +51 -0
  135. package/build/services/ConnectionCoordinator.d.ts.map +1 -0
  136. package/build/services/ConnectionCoordinator.js +34 -0
  137. package/build/services/ConnectionCoordinator.js.map +1 -0
  138. package/build/services/DevServerBridge.d.ts +63 -0
  139. package/build/services/DevServerBridge.d.ts.map +1 -0
  140. package/build/services/DevServerBridge.js +294 -0
  141. package/build/services/DevServerBridge.js.map +1 -0
  142. package/build/services/DeviceEventRouter.d.ts +3 -0
  143. package/build/services/DeviceEventRouter.d.ts.map +1 -0
  144. package/build/services/DeviceEventRouter.js +190 -0
  145. package/build/services/DeviceEventRouter.js.map +1 -0
  146. package/build/services/DeviceStoreHydration.d.ts +38 -0
  147. package/build/services/DeviceStoreHydration.d.ts.map +1 -0
  148. package/build/services/DeviceStoreHydration.js +124 -0
  149. package/build/services/DeviceStoreHydration.js.map +1 -0
  150. package/build/services/DisplayProcessor.d.ts +223 -0
  151. package/build/services/DisplayProcessor.d.ts.map +1 -0
  152. package/build/services/DisplayProcessor.js +552 -0
  153. package/build/services/DisplayProcessor.js.map +1 -0
  154. package/build/services/GlassesReadiness.d.ts +41 -0
  155. package/build/services/GlassesReadiness.d.ts.map +1 -0
  156. package/build/services/GlassesReadiness.js +82 -0
  157. package/build/services/GlassesReadiness.js.map +1 -0
  158. package/build/services/GlassesSettingsSync.d.ts +33 -0
  159. package/build/services/GlassesSettingsSync.d.ts.map +1 -0
  160. package/build/services/GlassesSettingsSync.js +121 -0
  161. package/build/services/GlassesSettingsSync.js.map +1 -0
  162. package/build/services/GlassesStatusProjection.d.ts +3 -0
  163. package/build/services/GlassesStatusProjection.d.ts.map +1 -0
  164. package/build/services/GlassesStatusProjection.js +65 -0
  165. package/build/services/GlassesStatusProjection.js.map +1 -0
  166. package/build/services/HeadingService.d.ts +27 -0
  167. package/build/services/HeadingService.d.ts.map +1 -0
  168. package/build/services/HeadingService.js +96 -0
  169. package/build/services/HeadingService.js.map +1 -0
  170. package/build/services/LocalDisplayManager.d.ts +139 -0
  171. package/build/services/LocalDisplayManager.d.ts.map +1 -0
  172. package/build/services/LocalDisplayManager.js +579 -0
  173. package/build/services/LocalDisplayManager.js.map +1 -0
  174. package/build/services/LocalMiniappRuntime.d.ts +439 -0
  175. package/build/services/LocalMiniappRuntime.d.ts.map +1 -0
  176. package/build/services/LocalMiniappRuntime.js +3695 -0
  177. package/build/services/LocalMiniappRuntime.js.map +1 -0
  178. package/build/services/LocalSttFallbackCoordinator.d.ts +57 -0
  179. package/build/services/LocalSttFallbackCoordinator.d.ts.map +1 -0
  180. package/build/services/LocalSttFallbackCoordinator.js +137 -0
  181. package/build/services/LocalSttFallbackCoordinator.js.map +1 -0
  182. package/build/services/MentraJSCrashController.d.ts +97 -0
  183. package/build/services/MentraJSCrashController.d.ts.map +1 -0
  184. package/build/services/MentraJSCrashController.js +138 -0
  185. package/build/services/MentraJSCrashController.js.map +1 -0
  186. package/build/services/MentraJSCrashloopReportService.d.ts +9 -0
  187. package/build/services/MentraJSCrashloopReportService.d.ts.map +1 -0
  188. package/build/services/MentraJSCrashloopReportService.js +54 -0
  189. package/build/services/MentraJSCrashloopReportService.js.map +1 -0
  190. package/build/services/MentraJSLogPipeline.d.ts +87 -0
  191. package/build/services/MentraJSLogPipeline.d.ts.map +1 -0
  192. package/build/services/MentraJSLogPipeline.js +137 -0
  193. package/build/services/MentraJSLogPipeline.js.map +1 -0
  194. package/build/services/MentraJSRouter.d.ts +203 -0
  195. package/build/services/MentraJSRouter.d.ts.map +1 -0
  196. package/build/services/MentraJSRouter.js +480 -0
  197. package/build/services/MentraJSRouter.js.map +1 -0
  198. package/build/services/MentraUIRouter.d.ts +137 -0
  199. package/build/services/MentraUIRouter.d.ts.map +1 -0
  200. package/build/services/MentraUIRouter.js +210 -0
  201. package/build/services/MentraUIRouter.js.map +1 -0
  202. package/build/services/MicStateCoordinator.d.ts +37 -0
  203. package/build/services/MicStateCoordinator.d.ts.map +1 -0
  204. package/build/services/MicStateCoordinator.js +81 -0
  205. package/build/services/MicStateCoordinator.js.map +1 -0
  206. package/build/services/MiniappEngine.d.ts +31 -0
  207. package/build/services/MiniappEngine.d.ts.map +1 -0
  208. package/build/services/MiniappEngine.js +119 -0
  209. package/build/services/MiniappEngine.js.map +1 -0
  210. package/build/services/MiniappLauncher.d.ts +129 -0
  211. package/build/services/MiniappLauncher.d.ts.map +1 -0
  212. package/build/services/MiniappLauncher.js +291 -0
  213. package/build/services/MiniappLauncher.js.map +1 -0
  214. package/build/services/MiniappRunningRegistry.d.ts +24 -0
  215. package/build/services/MiniappRunningRegistry.d.ts.map +1 -0
  216. package/build/services/MiniappRunningRegistry.js +52 -0
  217. package/build/services/MiniappRunningRegistry.js.map +1 -0
  218. package/build/services/NativeHttpResponse.d.ts +3 -0
  219. package/build/services/NativeHttpResponse.d.ts.map +1 -0
  220. package/build/services/NativeHttpResponse.js +6 -0
  221. package/build/services/NativeHttpResponse.js.map +1 -0
  222. package/build/services/NavigationHandlers.d.ts +90 -0
  223. package/build/services/NavigationHandlers.d.ts.map +1 -0
  224. package/build/services/NavigationHandlers.js +379 -0
  225. package/build/services/NavigationHandlers.js.map +1 -0
  226. package/build/services/NavigationService.d.ts +254 -0
  227. package/build/services/NavigationService.d.ts.map +1 -0
  228. package/build/services/NavigationService.js +553 -0
  229. package/build/services/NavigationService.js.map +1 -0
  230. package/build/services/NotificationsEmitter.d.ts +28 -0
  231. package/build/services/NotificationsEmitter.d.ts.map +1 -0
  232. package/build/services/NotificationsEmitter.js +22 -0
  233. package/build/services/NotificationsEmitter.js.map +1 -0
  234. package/build/services/OfflineSpeechModelService.d.ts +33 -0
  235. package/build/services/OfflineSpeechModelService.d.ts.map +1 -0
  236. package/build/services/OfflineSpeechModelService.js +136 -0
  237. package/build/services/OfflineSpeechModelService.js.map +1 -0
  238. package/build/services/OtaInstallCoordinator.d.ts +195 -0
  239. package/build/services/OtaInstallCoordinator.d.ts.map +1 -0
  240. package/build/services/OtaInstallCoordinator.js +1047 -0
  241. package/build/services/OtaInstallCoordinator.js.map +1 -0
  242. package/build/services/OtaService.d.ts +3 -0
  243. package/build/services/OtaService.d.ts.map +1 -0
  244. package/build/services/OtaService.js +65 -0
  245. package/build/services/OtaService.js.map +1 -0
  246. package/build/services/OtaUpdateCheckService.d.ts +65 -0
  247. package/build/services/OtaUpdateCheckService.d.ts.map +1 -0
  248. package/build/services/OtaUpdateCheckService.js +260 -0
  249. package/build/services/OtaUpdateCheckService.js.map +1 -0
  250. package/build/services/PairingIdentity.d.ts +80 -0
  251. package/build/services/PairingIdentity.d.ts.map +1 -0
  252. package/build/services/PairingIdentity.js +145 -0
  253. package/build/services/PairingIdentity.js.map +1 -0
  254. package/build/services/PhoneCalendarHelpers.d.ts +32 -0
  255. package/build/services/PhoneCalendarHelpers.d.ts.map +1 -0
  256. package/build/services/PhoneCalendarHelpers.js +157 -0
  257. package/build/services/PhoneCalendarHelpers.js.map +1 -0
  258. package/build/services/PhoneCalendarService.d.ts +5 -0
  259. package/build/services/PhoneCalendarService.d.ts.map +1 -0
  260. package/build/services/PhoneCalendarService.js +24 -0
  261. package/build/services/PhoneCalendarService.js.map +1 -0
  262. package/build/services/PhoneCameraFovCoordinator.d.ts +28 -0
  263. package/build/services/PhoneCameraFovCoordinator.d.ts.map +1 -0
  264. package/build/services/PhoneCameraFovCoordinator.js +180 -0
  265. package/build/services/PhoneCameraFovCoordinator.js.map +1 -0
  266. package/build/services/PhoneLocationService.d.ts +36 -0
  267. package/build/services/PhoneLocationService.d.ts.map +1 -0
  268. package/build/services/PhoneLocationService.js +115 -0
  269. package/build/services/PhoneLocationService.js.map +1 -0
  270. package/build/services/PhoneNotificationsSync.d.ts +3 -0
  271. package/build/services/PhoneNotificationsSync.d.ts.map +1 -0
  272. package/build/services/PhoneNotificationsSync.js +35 -0
  273. package/build/services/PhoneNotificationsSync.js.map +1 -0
  274. package/build/services/PhonePhotoCoordinator.d.ts +103 -0
  275. package/build/services/PhonePhotoCoordinator.d.ts.map +1 -0
  276. package/build/services/PhonePhotoCoordinator.js +326 -0
  277. package/build/services/PhonePhotoCoordinator.js.map +1 -0
  278. package/build/services/PhoneStreamCoordinator.d.ts +168 -0
  279. package/build/services/PhoneStreamCoordinator.d.ts.map +1 -0
  280. package/build/services/PhoneStreamCoordinator.js +632 -0
  281. package/build/services/PhoneStreamCoordinator.js.map +1 -0
  282. package/build/services/PhoneVideoCoordinator.d.ts +50 -0
  283. package/build/services/PhoneVideoCoordinator.d.ts.map +1 -0
  284. package/build/services/PhoneVideoCoordinator.js +147 -0
  285. package/build/services/PhoneVideoCoordinator.js.map +1 -0
  286. package/build/services/STTModelManager.d.ts +65 -0
  287. package/build/services/STTModelManager.d.ts.map +1 -0
  288. package/build/services/STTModelManager.js +292 -0
  289. package/build/services/STTModelManager.js.map +1 -0
  290. package/build/services/SceneRenderer.d.ts +90 -0
  291. package/build/services/SceneRenderer.d.ts.map +1 -0
  292. package/build/services/SceneRenderer.js +248 -0
  293. package/build/services/SceneRenderer.js.map +1 -0
  294. package/build/services/SentenceTtsPipeline.d.ts +31 -0
  295. package/build/services/SentenceTtsPipeline.d.ts.map +1 -0
  296. package/build/services/SentenceTtsPipeline.js +67 -0
  297. package/build/services/SentenceTtsPipeline.js.map +1 -0
  298. package/build/services/StreamLifecycleController.d.ts +67 -0
  299. package/build/services/StreamLifecycleController.d.ts.map +1 -0
  300. package/build/services/StreamLifecycleController.js +152 -0
  301. package/build/services/StreamLifecycleController.js.map +1 -0
  302. package/build/services/TTSModelManager.d.ts +90 -0
  303. package/build/services/TTSModelManager.d.ts.map +1 -0
  304. package/build/services/TTSModelManager.js +366 -0
  305. package/build/services/TTSModelManager.js.map +1 -0
  306. package/build/services/TranscriptionRouting.d.ts +12 -0
  307. package/build/services/TranscriptionRouting.d.ts.map +1 -0
  308. package/build/services/TranscriptionRouting.js +24 -0
  309. package/build/services/TranscriptionRouting.js.map +1 -0
  310. package/build/services/WebviewBridge.d.ts +22 -0
  311. package/build/services/WebviewBridge.d.ts.map +1 -0
  312. package/build/services/WebviewBridge.js +47 -0
  313. package/build/services/WebviewBridge.js.map +1 -0
  314. package/build/services/asg/GalleryMediaIntegrityReportService.d.ts +17 -0
  315. package/build/services/asg/GalleryMediaIntegrityReportService.d.ts.map +1 -0
  316. package/build/services/asg/GalleryMediaIntegrityReportService.js +43 -0
  317. package/build/services/asg/GalleryMediaIntegrityReportService.js.map +1 -0
  318. package/build/services/asg/asgCameraApi.d.ts +205 -0
  319. package/build/services/asg/asgCameraApi.d.ts.map +1 -0
  320. package/build/services/asg/asgCameraApi.js +1410 -0
  321. package/build/services/asg/asgCameraApi.js.map +1 -0
  322. package/build/services/asg/cameraRollExportCoordinator.d.ts +60 -0
  323. package/build/services/asg/cameraRollExportCoordinator.d.ts.map +1 -0
  324. package/build/services/asg/cameraRollExportCoordinator.js +618 -0
  325. package/build/services/asg/cameraRollExportCoordinator.js.map +1 -0
  326. package/build/services/asg/cameraRollExportLedger.d.ts +44 -0
  327. package/build/services/asg/cameraRollExportLedger.d.ts.map +1 -0
  328. package/build/services/asg/cameraRollExportLedger.js +78 -0
  329. package/build/services/asg/cameraRollExportLedger.js.map +1 -0
  330. package/build/services/asg/galleryMediaValidation.d.ts +29 -0
  331. package/build/services/asg/galleryMediaValidation.d.ts.map +1 -0
  332. package/build/services/asg/galleryMediaValidation.js +149 -0
  333. package/build/services/asg/galleryMediaValidation.js.map +1 -0
  334. package/build/services/asg/galleryNotices.d.ts +33 -0
  335. package/build/services/asg/galleryNotices.d.ts.map +1 -0
  336. package/build/services/asg/galleryNotices.js +29 -0
  337. package/build/services/asg/galleryNotices.js.map +1 -0
  338. package/build/services/asg/galleryPathMigration.d.ts +3 -0
  339. package/build/services/asg/galleryPathMigration.d.ts.map +1 -0
  340. package/build/services/asg/galleryPathMigration.js +26 -0
  341. package/build/services/asg/galleryPathMigration.js.map +1 -0
  342. package/build/services/asg/gallerySettingsService.d.ts +20 -0
  343. package/build/services/asg/gallerySettingsService.d.ts.map +1 -0
  344. package/build/services/asg/gallerySettingsService.js +53 -0
  345. package/build/services/asg/gallerySettingsService.js.map +1 -0
  346. package/build/services/asg/gallerySyncNotifications.d.ts +56 -0
  347. package/build/services/asg/gallerySyncNotifications.d.ts.map +1 -0
  348. package/build/services/asg/gallerySyncNotifications.js +198 -0
  349. package/build/services/asg/gallerySyncNotifications.js.map +1 -0
  350. package/build/services/asg/gallerySyncService.d.ts +137 -0
  351. package/build/services/asg/gallerySyncService.d.ts.map +1 -0
  352. package/build/services/asg/gallerySyncService.js +1933 -0
  353. package/build/services/asg/gallerySyncService.js.map +1 -0
  354. package/build/services/asg/galleryTransferLedger.d.ts +58 -0
  355. package/build/services/asg/galleryTransferLedger.d.ts.map +1 -0
  356. package/build/services/asg/galleryTransferLedger.js +225 -0
  357. package/build/services/asg/galleryTransferLedger.js.map +1 -0
  358. package/build/services/asg/localNetworkTransport.d.ts +15 -0
  359. package/build/services/asg/localNetworkTransport.d.ts.map +1 -0
  360. package/build/services/asg/localNetworkTransport.js +144 -0
  361. package/build/services/asg/localNetworkTransport.js.map +1 -0
  362. package/build/services/asg/localStorageService.d.ts +146 -0
  363. package/build/services/asg/localStorageService.d.ts.map +1 -0
  364. package/build/services/asg/localStorageService.js +572 -0
  365. package/build/services/asg/localStorageService.js.map +1 -0
  366. package/build/services/asg/mediaProcessingQueue.d.ts +70 -0
  367. package/build/services/asg/mediaProcessingQueue.d.ts.map +1 -0
  368. package/build/services/asg/mediaProcessingQueue.js +451 -0
  369. package/build/services/asg/mediaProcessingQueue.js.map +1 -0
  370. package/build/services/asgOtaVersionUrl.d.ts +2 -0
  371. package/build/services/asgOtaVersionUrl.d.ts.map +1 -0
  372. package/build/services/asgOtaVersionUrl.js +36 -0
  373. package/build/services/asgOtaVersionUrl.js.map +1 -0
  374. package/build/services/blobPaths.d.ts +31 -0
  375. package/build/services/blobPaths.d.ts.map +1 -0
  376. package/build/services/blobPaths.js +86 -0
  377. package/build/services/blobPaths.js.map +1 -0
  378. package/build/services/cloudStreamApi.d.ts +59 -0
  379. package/build/services/cloudStreamApi.d.ts.map +1 -0
  380. package/build/services/cloudStreamApi.js +81 -0
  381. package/build/services/cloudStreamApi.js.map +1 -0
  382. package/build/services/gallerySyncClock.d.ts +17 -0
  383. package/build/services/gallerySyncClock.d.ts.map +1 -0
  384. package/build/services/gallerySyncClock.js +21 -0
  385. package/build/services/gallerySyncClock.js.map +1 -0
  386. package/build/services/glassesClockSync.d.ts +20 -0
  387. package/build/services/glassesClockSync.d.ts.map +1 -0
  388. package/build/services/glassesClockSync.js +97 -0
  389. package/build/services/glassesClockSync.js.map +1 -0
  390. package/build/services/manifestVersionGate.d.ts +28 -0
  391. package/build/services/manifestVersionGate.d.ts.map +1 -0
  392. package/build/services/manifestVersionGate.js +41 -0
  393. package/build/services/manifestVersionGate.js.map +1 -0
  394. package/build/services/mentraUiShim.d.ts +38 -0
  395. package/build/services/mentraUiShim.d.ts.map +1 -0
  396. package/build/services/mentraUiShim.js +360 -0
  397. package/build/services/mentraUiShim.js.map +1 -0
  398. package/build/services/navigation/roadNameResolver.d.ts +67 -0
  399. package/build/services/navigation/roadNameResolver.d.ts.map +1 -0
  400. package/build/services/navigation/roadNameResolver.js +96 -0
  401. package/build/services/navigation/roadNameResolver.js.map +1 -0
  402. package/build/services/navigation/routesApiCodec.d.ts +38 -0
  403. package/build/services/navigation/routesApiCodec.d.ts.map +1 -0
  404. package/build/services/navigation/routesApiCodec.js +68 -0
  405. package/build/services/navigation/routesApiCodec.js.map +1 -0
  406. package/build/services/otaDisplayState.d.ts +42 -0
  407. package/build/services/otaDisplayState.d.ts.map +1 -0
  408. package/build/services/otaDisplayState.js +92 -0
  409. package/build/services/otaDisplayState.js.map +1 -0
  410. package/build/services/otaInstallPolicy.d.ts +81 -0
  411. package/build/services/otaInstallPolicy.d.ts.map +1 -0
  412. package/build/services/otaInstallPolicy.js +96 -0
  413. package/build/services/otaInstallPolicy.js.map +1 -0
  414. package/build/services/otaLegacyMapping.d.ts +22 -0
  415. package/build/services/otaLegacyMapping.d.ts.map +1 -0
  416. package/build/services/otaLegacyMapping.js +56 -0
  417. package/build/services/otaLegacyMapping.js.map +1 -0
  418. package/build/services/slimStreamStatus.d.ts +7 -0
  419. package/build/services/slimStreamStatus.d.ts.map +1 -0
  420. package/build/services/slimStreamStatus.js +26 -0
  421. package/build/services/slimStreamStatus.js.map +1 -0
  422. package/build/stores/apps.d.ts +104 -0
  423. package/build/stores/apps.d.ts.map +1 -0
  424. package/build/stores/apps.js +492 -0
  425. package/build/stores/apps.js.map +1 -0
  426. package/build/stores/bluetoothSettingKeys.d.ts +4 -0
  427. package/build/stores/bluetoothSettingKeys.d.ts.map +1 -0
  428. package/build/stores/bluetoothSettingKeys.js +31 -0
  429. package/build/stores/bluetoothSettingKeys.js.map +1 -0
  430. package/build/stores/cloudClientStatus.d.ts +9 -0
  431. package/build/stores/cloudClientStatus.d.ts.map +1 -0
  432. package/build/stores/cloudClientStatus.js +24 -0
  433. package/build/stores/cloudClientStatus.js.map +1 -0
  434. package/build/stores/connection.d.ts +22 -0
  435. package/build/stores/connection.d.ts.map +1 -0
  436. package/build/stores/connection.js +43 -0
  437. package/build/stores/connection.js.map +1 -0
  438. package/build/stores/core.d.ts +15 -0
  439. package/build/stores/core.d.ts.map +1 -0
  440. package/build/stores/core.js +21 -0
  441. package/build/stores/core.js.map +1 -0
  442. package/build/stores/display.d.ts +24 -0
  443. package/build/stores/display.d.ts.map +1 -0
  444. package/build/stores/display.js +96 -0
  445. package/build/stores/display.js.map +1 -0
  446. package/build/stores/gallerySync.d.ts +101 -0
  447. package/build/stores/gallerySync.d.ts.map +1 -0
  448. package/build/stores/gallerySync.js +217 -0
  449. package/build/stores/gallerySync.js.map +1 -0
  450. package/build/stores/glasses.d.ts +62 -0
  451. package/build/stores/glasses.d.ts.map +1 -0
  452. package/build/stores/glasses.js +203 -0
  453. package/build/stores/glasses.js.map +1 -0
  454. package/build/stores/settings.d.ts +37 -0
  455. package/build/stores/settings.d.ts.map +1 -0
  456. package/build/stores/settings.js +922 -0
  457. package/build/stores/settings.js.map +1 -0
  458. package/build/types/applet.d.ts +96 -0
  459. package/build/types/applet.d.ts.map +1 -0
  460. package/build/types/applet.js +5 -0
  461. package/build/types/applet.js.map +1 -0
  462. package/build/types/asg.d.ts +53 -0
  463. package/build/types/asg.d.ts.map +1 -0
  464. package/build/types/asg.js +2 -0
  465. package/build/types/asg.js.map +1 -0
  466. package/build/types/capabilities/even-realities-g1.d.ts +12 -0
  467. package/build/types/capabilities/even-realities-g1.d.ts.map +1 -0
  468. package/build/types/capabilities/even-realities-g1.js +55 -0
  469. package/build/types/capabilities/even-realities-g1.js.map +1 -0
  470. package/build/types/capabilities/even-realities-g2.d.ts +12 -0
  471. package/build/types/capabilities/even-realities-g2.d.ts.map +1 -0
  472. package/build/types/capabilities/even-realities-g2.js +75 -0
  473. package/build/types/capabilities/even-realities-g2.js.map +1 -0
  474. package/build/types/capabilities/mentra-display.d.ts +12 -0
  475. package/build/types/capabilities/mentra-display.d.ts.map +1 -0
  476. package/build/types/capabilities/mentra-display.js +63 -0
  477. package/build/types/capabilities/mentra-display.js.map +1 -0
  478. package/build/types/capabilities/mentra-live.d.ts +12 -0
  479. package/build/types/capabilities/mentra-live.d.ts.map +1 -0
  480. package/build/types/capabilities/mentra-live.js +92 -0
  481. package/build/types/capabilities/mentra-live.js.map +1 -0
  482. package/build/types/capabilities/none.d.ts +13 -0
  483. package/build/types/capabilities/none.d.ts.map +1 -0
  484. package/build/types/capabilities/none.js +65 -0
  485. package/build/types/capabilities/none.js.map +1 -0
  486. package/build/types/capabilities/simulated-glasses.d.ts +13 -0
  487. package/build/types/capabilities/simulated-glasses.d.ts.map +1 -0
  488. package/build/types/capabilities/simulated-glasses.js +65 -0
  489. package/build/types/capabilities/simulated-glasses.js.map +1 -0
  490. package/build/types/capabilities/vuzix-z100.d.ts +12 -0
  491. package/build/types/capabilities/vuzix-z100.d.ts.map +1 -0
  492. package/build/types/capabilities/vuzix-z100.js +52 -0
  493. package/build/types/capabilities/vuzix-z100.js.map +1 -0
  494. package/build/types/enums.d.ts +40 -0
  495. package/build/types/enums.d.ts.map +1 -0
  496. package/build/types/enums.js +44 -0
  497. package/build/types/enums.js.map +1 -0
  498. package/build/types/hardware.d.ts +160 -0
  499. package/build/types/hardware.d.ts.map +1 -0
  500. package/build/types/hardware.js +36 -0
  501. package/build/types/hardware.js.map +1 -0
  502. package/build/types/index.d.ts +11 -0
  503. package/build/types/index.d.ts.map +1 -0
  504. package/build/types/index.js +10 -0
  505. package/build/types/index.js.map +1 -0
  506. package/build/utils/GlobalEventEmitter.d.ts +10 -0
  507. package/build/utils/GlobalEventEmitter.d.ts.map +1 -0
  508. package/build/utils/GlobalEventEmitter.js +13 -0
  509. package/build/utils/GlobalEventEmitter.js.map +1 -0
  510. package/build/utils/cloudClient/RnUdpAdapter.d.ts +3 -0
  511. package/build/utils/cloudClient/RnUdpAdapter.d.ts.map +1 -0
  512. package/build/utils/cloudClient/RnUdpAdapter.js +41 -0
  513. package/build/utils/cloudClient/RnUdpAdapter.js.map +1 -0
  514. package/build/utils/cloudClient/cloudSecureStore.d.ts +3 -0
  515. package/build/utils/cloudClient/cloudSecureStore.d.ts.map +1 -0
  516. package/build/utils/cloudClient/cloudSecureStore.js +26 -0
  517. package/build/utils/cloudClient/cloudSecureStore.js.map +1 -0
  518. package/build/utils/debouncedPatch.d.ts +6 -0
  519. package/build/utils/debouncedPatch.d.ts.map +1 -0
  520. package/build/utils/debouncedPatch.js +25 -0
  521. package/build/utils/debouncedPatch.js.map +1 -0
  522. package/build/utils/devLogging.d.ts +26 -0
  523. package/build/utils/devLogging.d.ts.map +1 -0
  524. package/build/utils/devLogging.js +116 -0
  525. package/build/utils/devLogging.js.map +1 -0
  526. package/build/utils/devMiniappLaunch.d.ts +44 -0
  527. package/build/utils/devMiniappLaunch.d.ts.map +1 -0
  528. package/build/utils/devMiniappLaunch.js +52 -0
  529. package/build/utils/devMiniappLaunch.js.map +1 -0
  530. package/build/utils/diagnosticContext.d.ts +3 -0
  531. package/build/utils/diagnosticContext.d.ts.map +1 -0
  532. package/build/utils/diagnosticContext.js +119 -0
  533. package/build/utils/diagnosticContext.js.map +1 -0
  534. package/build/utils/display/composer/ColumnComposer.d.ts +131 -0
  535. package/build/utils/display/composer/ColumnComposer.d.ts.map +1 -0
  536. package/build/utils/display/composer/ColumnComposer.js +204 -0
  537. package/build/utils/display/composer/ColumnComposer.js.map +1 -0
  538. package/build/utils/display/composer/index.d.ts +9 -0
  539. package/build/utils/display/composer/index.d.ts.map +1 -0
  540. package/build/utils/display/composer/index.js +9 -0
  541. package/build/utils/display/composer/index.js.map +1 -0
  542. package/build/utils/display/helpers/DisplayHelpers.d.ts +165 -0
  543. package/build/utils/display/helpers/DisplayHelpers.d.ts.map +1 -0
  544. package/build/utils/display/helpers/DisplayHelpers.js +312 -0
  545. package/build/utils/display/helpers/DisplayHelpers.js.map +1 -0
  546. package/build/utils/display/helpers/ScrollView.d.ts +183 -0
  547. package/build/utils/display/helpers/ScrollView.d.ts.map +1 -0
  548. package/build/utils/display/helpers/ScrollView.js +257 -0
  549. package/build/utils/display/helpers/ScrollView.js.map +1 -0
  550. package/build/utils/display/helpers/index.d.ts +11 -0
  551. package/build/utils/display/helpers/index.d.ts.map +1 -0
  552. package/build/utils/display/helpers/index.js +10 -0
  553. package/build/utils/display/helpers/index.js.map +1 -0
  554. package/build/utils/display/index.d.ts +174 -0
  555. package/build/utils/display/index.d.ts.map +1 -0
  556. package/build/utils/display/index.js +185 -0
  557. package/build/utils/display/index.js.map +1 -0
  558. package/build/utils/display/measurer/TextMeasurer.d.ts +160 -0
  559. package/build/utils/display/measurer/TextMeasurer.d.ts.map +1 -0
  560. package/build/utils/display/measurer/TextMeasurer.js +273 -0
  561. package/build/utils/display/measurer/TextMeasurer.js.map +1 -0
  562. package/build/utils/display/measurer/index.d.ts +10 -0
  563. package/build/utils/display/measurer/index.d.ts.map +1 -0
  564. package/build/utils/display/measurer/index.js +11 -0
  565. package/build/utils/display/measurer/index.js.map +1 -0
  566. package/build/utils/display/measurer/script-detection.d.ts +53 -0
  567. package/build/utils/display/measurer/script-detection.d.ts.map +1 -0
  568. package/build/utils/display/measurer/script-detection.js +184 -0
  569. package/build/utils/display/measurer/script-detection.js.map +1 -0
  570. package/build/utils/display/profiles/g1.d.ts +33 -0
  571. package/build/utils/display/profiles/g1.d.ts.map +1 -0
  572. package/build/utils/display/profiles/g1.js +213 -0
  573. package/build/utils/display/profiles/g1.js.map +1 -0
  574. package/build/utils/display/profiles/g2.d.ts +13 -0
  575. package/build/utils/display/profiles/g2.d.ts.map +1 -0
  576. package/build/utils/display/profiles/g2.js +34 -0
  577. package/build/utils/display/profiles/g2.js.map +1 -0
  578. package/build/utils/display/profiles/index.d.ts +12 -0
  579. package/build/utils/display/profiles/index.d.ts.map +1 -0
  580. package/build/utils/display/profiles/index.js +15 -0
  581. package/build/utils/display/profiles/index.js.map +1 -0
  582. package/build/utils/display/profiles/nex.d.ts +10 -0
  583. package/build/utils/display/profiles/nex.d.ts.map +1 -0
  584. package/build/utils/display/profiles/nex.js +150 -0
  585. package/build/utils/display/profiles/nex.js.map +1 -0
  586. package/build/utils/display/profiles/types.d.ts +103 -0
  587. package/build/utils/display/profiles/types.d.ts.map +1 -0
  588. package/build/utils/display/profiles/types.js +2 -0
  589. package/build/utils/display/profiles/types.js.map +1 -0
  590. package/build/utils/display/profiles/z100.d.ts +33 -0
  591. package/build/utils/display/profiles/z100.d.ts.map +1 -0
  592. package/build/utils/display/profiles/z100.js +182 -0
  593. package/build/utils/display/profiles/z100.js.map +1 -0
  594. package/build/utils/display/scene/degrade.d.ts +25 -0
  595. package/build/utils/display/scene/degrade.d.ts.map +1 -0
  596. package/build/utils/display/scene/degrade.js +64 -0
  597. package/build/utils/display/scene/degrade.js.map +1 -0
  598. package/build/utils/display/scene/differ.d.ts +38 -0
  599. package/build/utils/display/scene/differ.d.ts.map +1 -0
  600. package/build/utils/display/scene/differ.js +107 -0
  601. package/build/utils/display/scene/differ.js.map +1 -0
  602. package/build/utils/display/scene/index.d.ts +10 -0
  603. package/build/utils/display/scene/index.d.ts.map +1 -0
  604. package/build/utils/display/scene/index.js +6 -0
  605. package/build/utils/display/scene/index.js.map +1 -0
  606. package/build/utils/display/scene/process.d.ts +35 -0
  607. package/build/utils/display/scene/process.d.ts.map +1 -0
  608. package/build/utils/display/scene/process.js +187 -0
  609. package/build/utils/display/scene/process.js.map +1 -0
  610. package/build/utils/display/scene/store.d.ts +48 -0
  611. package/build/utils/display/scene/store.d.ts.map +1 -0
  612. package/build/utils/display/scene/store.js +0 -0
  613. package/build/utils/display/scene/store.js.map +1 -0
  614. package/build/utils/display/scene/types.d.ts +120 -0
  615. package/build/utils/display/scene/types.d.ts.map +1 -0
  616. package/build/utils/display/scene/types.js +0 -0
  617. package/build/utils/display/scene/types.js.map +1 -0
  618. package/build/utils/display/wrapper/TextWrapper.d.ts +102 -0
  619. package/build/utils/display/wrapper/TextWrapper.d.ts.map +1 -0
  620. package/build/utils/display/wrapper/TextWrapper.js +471 -0
  621. package/build/utils/display/wrapper/TextWrapper.js.map +1 -0
  622. package/build/utils/display/wrapper/index.d.ts +12 -0
  623. package/build/utils/display/wrapper/index.d.ts.map +1 -0
  624. package/build/utils/display/wrapper/index.js +12 -0
  625. package/build/utils/display/wrapper/index.js.map +1 -0
  626. package/build/utils/display/wrapper/types.d.ts +75 -0
  627. package/build/utils/display/wrapper/types.d.ts.map +1 -0
  628. package/build/utils/display/wrapper/types.js +11 -0
  629. package/build/utils/display/wrapper/types.js.map +1 -0
  630. package/build/utils/e2eMetrics.d.ts +6 -0
  631. package/build/utils/e2eMetrics.d.ts.map +1 -0
  632. package/build/utils/e2eMetrics.js +27 -0
  633. package/build/utils/e2eMetrics.js.map +1 -0
  634. package/build/utils/hardware/hardware.d.ts +42 -0
  635. package/build/utils/hardware/hardware.d.ts.map +1 -0
  636. package/build/utils/hardware/hardware.js +127 -0
  637. package/build/utils/hardware/hardware.js.map +1 -0
  638. package/build/utils/hardware/index.d.ts +2 -0
  639. package/build/utils/hardware/index.d.ts.map +1 -0
  640. package/build/utils/hardware/index.js +2 -0
  641. package/build/utils/hardware/index.js.map +1 -0
  642. package/build/utils/miniappGlobals.d.ts +60 -0
  643. package/build/utils/miniappGlobals.d.ts.map +1 -0
  644. package/build/utils/miniappGlobals.js +224 -0
  645. package/build/utils/miniappGlobals.js.map +1 -0
  646. package/build/utils/permissions/MediaLibraryPermissions.d.ts +45 -0
  647. package/build/utils/permissions/MediaLibraryPermissions.d.ts.map +1 -0
  648. package/build/utils/permissions/MediaLibraryPermissions.js +145 -0
  649. package/build/utils/permissions/MediaLibraryPermissions.js.map +1 -0
  650. package/build/utils/permissions/galleryDisplayName.d.ts +8 -0
  651. package/build/utils/permissions/galleryDisplayName.d.ts.map +1 -0
  652. package/build/utils/permissions/galleryDisplayName.js +25 -0
  653. package/build/utils/permissions/galleryDisplayName.js.map +1 -0
  654. package/build/utils/storage/index.d.ts +3 -0
  655. package/build/utils/storage/index.d.ts.map +1 -0
  656. package/build/utils/storage/index.js +3 -0
  657. package/build/utils/storage/index.js.map +1 -0
  658. package/build/utils/storage/storage.d.ts +24 -0
  659. package/build/utils/storage/storage.d.ts.map +1 -0
  660. package/build/utils/storage/storage.js +85 -0
  661. package/build/utils/storage/storage.js.map +1 -0
  662. package/build/utils/storage/zip.d.ts +3 -0
  663. package/build/utils/storage/zip.d.ts.map +1 -0
  664. package/build/utils/storage/zip.js +14 -0
  665. package/build/utils/storage/zip.js.map +1 -0
  666. package/build/utils/timers/index.d.ts +3 -0
  667. package/build/utils/timers/index.d.ts.map +1 -0
  668. package/build/utils/timers/index.js +3 -0
  669. package/build/utils/timers/index.js.map +1 -0
  670. package/build/utils/timers/timers.d.ts +9 -0
  671. package/build/utils/timers/timers.d.ts.map +1 -0
  672. package/build/utils/timers/timers.js +105 -0
  673. package/build/utils/timers/timers.js.map +1 -0
  674. package/package.json +120 -0
  675. package/src/devtools.ts +13 -0
  676. package/src/engine.ts +173 -0
  677. package/src/facades/dev.ts +198 -0
  678. package/src/facades/display.ts +17 -0
  679. package/src/facades/displayMirror.ts +33 -0
  680. package/src/facades/gallery.ts +69 -0
  681. package/src/facades/glasses.ts +206 -0
  682. package/src/facades/glassesSettings.ts +56 -0
  683. package/src/facades/glassesWifi.ts +68 -0
  684. package/src/facades/miniapps.ts +55 -0
  685. package/src/facades/notifications.ts +15 -0
  686. package/src/facades/ota.ts +174 -0
  687. package/src/facades/pairing.ts +329 -0
  688. package/src/facades/permissions.ts +165 -0
  689. package/src/facades/phoneNotifications.ts +50 -0
  690. package/src/facades/reports.ts +185 -0
  691. package/src/facades/session.ts +55 -0
  692. package/src/facades/settings.ts +57 -0
  693. package/src/facades/speech.ts +38 -0
  694. package/src/index.ts +191 -0
  695. package/src/internal.ts +159 -0
  696. package/src/runtime/bootstrap.ts +118 -0
  697. package/src/runtime/config.ts +147 -0
  698. package/src/runtime/streamConfig.ts +34 -0
  699. package/src/services/AppRegistry.ts +1190 -0
  700. package/src/services/AudioCloudUplink.ts +50 -0
  701. package/src/services/AudioPlaybackService.ts +813 -0
  702. package/src/services/AutomaticReportResult.ts +48 -0
  703. package/src/services/BlobStore.ts +746 -0
  704. package/src/services/CaptionsTesterReportService.ts +107 -0
  705. package/src/services/CloudAudioSubscriptionSync.ts +41 -0
  706. package/src/services/CloudClientService.ts +689 -0
  707. package/src/services/CloudTranscriptE2EMetrics.ts +27 -0
  708. package/src/services/ConnectionCoordinator.ts +65 -0
  709. package/src/services/DevServerBridge.ts +332 -0
  710. package/src/services/DeviceEventRouter.ts +238 -0
  711. package/src/services/DeviceStoreHydration.ts +130 -0
  712. package/src/services/DisplayProcessor.ts +775 -0
  713. package/src/services/GlassesReadiness.ts +103 -0
  714. package/src/services/GlassesSettingsSync.ts +134 -0
  715. package/src/services/GlassesStatusProjection.ts +73 -0
  716. package/src/services/HeadingService.ts +98 -0
  717. package/src/services/LocalDisplayManager.ts +703 -0
  718. package/src/services/LocalMiniappRuntime.ts +4213 -0
  719. package/src/services/LocalSttFallbackCoordinator.ts +147 -0
  720. package/src/services/MentraJSCrashController.ts +189 -0
  721. package/src/services/MentraJSCrashloopReportService.ts +66 -0
  722. package/src/services/MentraJSLogPipeline.ts +166 -0
  723. package/src/services/MentraJSRouter.ts +557 -0
  724. package/src/services/MentraUIRouter.ts +244 -0
  725. package/src/services/MicStateCoordinator.ts +94 -0
  726. package/src/services/MiniappEngine.ts +143 -0
  727. package/src/services/MiniappLauncher.ts +340 -0
  728. package/src/services/MiniappRunningRegistry.ts +57 -0
  729. package/src/services/NativeHttpResponse.ts +6 -0
  730. package/src/services/NavigationHandlers.ts +423 -0
  731. package/src/services/NavigationService.ts +731 -0
  732. package/src/services/NotificationsEmitter.ts +48 -0
  733. package/src/services/OfflineSpeechModelService.ts +168 -0
  734. package/src/services/OtaInstallCoordinator.ts +1205 -0
  735. package/src/services/OtaService.ts +83 -0
  736. package/src/services/OtaUpdateCheckService.ts +386 -0
  737. package/src/services/PairingIdentity.ts +154 -0
  738. package/src/services/PhoneCalendarHelpers.ts +212 -0
  739. package/src/services/PhoneCalendarService.ts +42 -0
  740. package/src/services/PhoneCameraFovCoordinator.ts +195 -0
  741. package/src/services/PhoneLocationService.ts +122 -0
  742. package/src/services/PhoneNotificationsSync.ts +44 -0
  743. package/src/services/PhonePhotoCoordinator.ts +409 -0
  744. package/src/services/PhoneStreamCoordinator.ts +777 -0
  745. package/src/services/PhoneVideoCoordinator.ts +189 -0
  746. package/src/services/STTModelManager.ts +360 -0
  747. package/src/services/SceneRenderer.ts +292 -0
  748. package/src/services/SentenceTtsPipeline.ts +106 -0
  749. package/src/services/StreamLifecycleController.ts +213 -0
  750. package/src/services/TTSModelManager.ts +466 -0
  751. package/src/services/TranscriptionRouting.ts +37 -0
  752. package/src/services/WebviewBridge.ts +50 -0
  753. package/src/services/asg/GalleryMediaIntegrityReportService.ts +70 -0
  754. package/src/services/asg/asgCameraApi.ts +1695 -0
  755. package/src/services/asg/cameraRollExportCoordinator.ts +627 -0
  756. package/src/services/asg/cameraRollExportLedger.ts +122 -0
  757. package/src/services/asg/galleryMediaValidation.ts +183 -0
  758. package/src/services/asg/galleryNotices.ts +61 -0
  759. package/src/services/asg/galleryPathMigration.ts +22 -0
  760. package/src/services/asg/gallerySettingsService.ts +68 -0
  761. package/src/services/asg/gallerySyncNotifications.ts +236 -0
  762. package/src/services/asg/gallerySyncService.ts +2269 -0
  763. package/src/services/asg/galleryTransferLedger.ts +312 -0
  764. package/src/services/asg/localNetworkTransport.ts +173 -0
  765. package/src/services/asg/localStorageService.ts +652 -0
  766. package/src/services/asg/mediaProcessingQueue.ts +518 -0
  767. package/src/services/asgOtaVersionUrl.ts +41 -0
  768. package/src/services/blobPaths.ts +86 -0
  769. package/src/services/cloudStreamApi.ts +154 -0
  770. package/src/services/gallerySyncClock.ts +39 -0
  771. package/src/services/glassesClockSync.ts +115 -0
  772. package/src/services/manifestVersionGate.ts +43 -0
  773. package/src/services/mentraUiShim.ts +366 -0
  774. package/src/services/navigation/roadNameResolver.ts +112 -0
  775. package/src/services/navigation/routesApiCodec.ts +69 -0
  776. package/src/services/otaDisplayState.ts +115 -0
  777. package/src/services/otaInstallPolicy.ts +106 -0
  778. package/src/services/otaLegacyMapping.ts +71 -0
  779. package/src/services/slimStreamStatus.ts +28 -0
  780. package/src/stores/apps.ts +614 -0
  781. package/src/stores/bluetoothSettingKeys.ts +36 -0
  782. package/src/stores/cloudClientStatus.ts +37 -0
  783. package/src/stores/connection.ts +69 -0
  784. package/src/stores/core.ts +32 -0
  785. package/src/stores/display.ts +121 -0
  786. package/src/stores/gallerySync.ts +380 -0
  787. package/src/stores/glasses.ts +309 -0
  788. package/src/stores/settings.ts +1001 -0
  789. package/src/types/applet.ts +112 -0
  790. package/src/types/asg.ts +58 -0
  791. package/src/types/capabilities/even-realities-g1.ts +67 -0
  792. package/src/types/capabilities/even-realities-g2.ts +88 -0
  793. package/src/types/capabilities/mentra-display.ts +75 -0
  794. package/src/types/capabilities/mentra-live.ts +103 -0
  795. package/src/types/capabilities/none.ts +76 -0
  796. package/src/types/capabilities/simulated-glasses.ts +76 -0
  797. package/src/types/capabilities/vuzix-z100.ts +64 -0
  798. package/src/types/enums.ts +43 -0
  799. package/src/types/hardware.ts +203 -0
  800. package/src/types/index.ts +37 -0
  801. package/src/utils/GlobalEventEmitter.ts +14 -0
  802. package/src/utils/cloudClient/RnUdpAdapter.ts +47 -0
  803. package/src/utils/cloudClient/cloudSecureStore.ts +28 -0
  804. package/src/utils/debouncedPatch.ts +28 -0
  805. package/src/utils/devLogging.ts +140 -0
  806. package/src/utils/devMiniappLaunch.ts +68 -0
  807. package/src/utils/diagnosticContext.ts +155 -0
  808. package/src/utils/display/composer/ColumnComposer.ts +285 -0
  809. package/src/utils/display/composer/index.ts +15 -0
  810. package/src/utils/display/helpers/DisplayHelpers.ts +413 -0
  811. package/src/utils/display/helpers/ScrollView.ts +337 -0
  812. package/src/utils/display/helpers/index.ts +14 -0
  813. package/src/utils/display/index.ts +273 -0
  814. package/src/utils/display/measurer/TextMeasurer.ts +346 -0
  815. package/src/utils/display/measurer/index.ts +21 -0
  816. package/src/utils/display/measurer/script-detection.ts +218 -0
  817. package/src/utils/display/profiles/g1.ts +236 -0
  818. package/src/utils/display/profiles/g2.ts +39 -0
  819. package/src/utils/display/profiles/index.ts +28 -0
  820. package/src/utils/display/profiles/nex.ts +166 -0
  821. package/src/utils/display/profiles/types.ts +132 -0
  822. package/src/utils/display/profiles/z100.ts +198 -0
  823. package/src/utils/display/scene/degrade.ts +80 -0
  824. package/src/utils/display/scene/differ.ts +128 -0
  825. package/src/utils/display/scene/index.ts +21 -0
  826. package/src/utils/display/scene/process.ts +214 -0
  827. package/src/utils/display/scene/store.ts +0 -0
  828. package/src/utils/display/scene/types.ts +0 -0
  829. package/src/utils/display/wrapper/TextWrapper.ts +546 -0
  830. package/src/utils/display/wrapper/index.ts +15 -0
  831. package/src/utils/display/wrapper/types.ts +102 -0
  832. package/src/utils/e2eMetrics.ts +30 -0
  833. package/src/utils/hardware/hardware.ts +166 -0
  834. package/src/utils/hardware/index.ts +1 -0
  835. package/src/utils/miniappGlobals.ts +260 -0
  836. package/src/utils/permissions/MediaLibraryPermissions.ts +161 -0
  837. package/src/utils/permissions/galleryDisplayName.ts +28 -0
  838. package/src/utils/storage/index.ts +2 -0
  839. package/src/utils/storage/storage.ts +101 -0
  840. package/src/utils/storage/zip.ts +13 -0
  841. package/src/utils/timers/index.ts +2 -0
  842. package/src/utils/timers/timers.ts +139 -0
@@ -0,0 +1,185 @@
1
+ /**
2
+ * reports facade — `engine.reports`: user/system report submission over the
3
+ * Cloud V2 core client.
4
+ *
5
+ * Host/OEM code owns UI and wording. Engine owns MentraOS mechanics: context
6
+ * collection, recent phone logs, Cloud V2 calls, local automatic throttling,
7
+ * screenshots, and notifying connected glasses.
8
+ */
9
+ import BluetoothSdk from "@mentra/bluetooth-sdk/internal"
10
+ import type {
11
+ ReportAttachmentInput,
12
+ ReportContext,
13
+ ReportStatus,
14
+ SubmitReportInput,
15
+ } from "@mentra/cloud-client"
16
+ import {useGlassesStore} from "../stores/glasses"
17
+ import {isGlassesConnected} from "../services/GlassesReadiness"
18
+ import {cloudClientService} from "../services/CloudClientService"
19
+ import {collectDiagnosticContext} from "../utils/diagnosticContext"
20
+ import {logBuffer} from "../utils/devLogging"
21
+
22
+ export type {
23
+ ReportAttachmentInput,
24
+ ReportContext,
25
+ ReportDetails,
26
+ ReportStatus,
27
+ ReportTrigger,
28
+ } from "@mentra/cloud-client"
29
+
30
+ export type EngineSubmitReportInput =
31
+ | (Omit<Extract<SubmitReportInput, {kind: "bug"}>, "context"> & {
32
+ context?: Partial<ReportContext>
33
+ screenshots?: ReportAttachmentInput[]
34
+ })
35
+ | (Omit<Extract<SubmitReportInput, {kind: "feedback"}>, "context"> & {
36
+ context?: Partial<ReportContext>
37
+ })
38
+
39
+ export type EngineSubmitAutomaticReportInput = Omit<Extract<SubmitReportInput, {kind: "automatic"}>, "context"> & {
40
+ context?: Partial<ReportContext>
41
+ screenshots?: ReportAttachmentInput[]
42
+ throttleKey?: string
43
+ throttleWindowMs?: number
44
+ }
45
+
46
+ type InternalSubmitReportInput = EngineSubmitReportInput | EngineSubmitAutomaticReportInput
47
+
48
+ export type ReportSubmitResult =
49
+ | {status: "submitted"; reportId: string; reportStatus: ReportStatus}
50
+ | {status: "skipped"; reason: "throttled_within_window"}
51
+ | {status: "failed"; error: string}
52
+
53
+ const DEFAULT_AUTOMATIC_REPORT_THROTTLE_MS = 90_000
54
+ const automaticReportThrottleRegistry = new Map<string, number>()
55
+
56
+ function automaticThrottleShouldSkip(key: string, nowMs: number, windowMs: number): boolean {
57
+ const previous = automaticReportThrottleRegistry.get(key)
58
+ if (previous !== undefined && nowMs - previous < windowMs) {
59
+ return true
60
+ }
61
+ pruneAutomaticThrottleRegistry(nowMs, windowMs)
62
+ return false
63
+ }
64
+
65
+ function markAutomaticThrottleSuccess(key: string, nowMs: number, windowMs: number): void {
66
+ automaticReportThrottleRegistry.set(key, nowMs)
67
+ pruneAutomaticThrottleRegistry(nowMs, windowMs)
68
+ }
69
+
70
+ function pruneAutomaticThrottleRegistry(nowMs: number, windowMs: number): void {
71
+ for (const [entryKey, entryTime] of automaticReportThrottleRegistry) {
72
+ if (nowMs - entryTime > windowMs * 3) {
73
+ automaticReportThrottleRegistry.delete(entryKey)
74
+ }
75
+ }
76
+ }
77
+
78
+ function notifyGlasses(reportId: string, apiBaseUrl?: string | null): void {
79
+ if (!isGlassesConnected(useGlassesStore.getState().connection)) return
80
+ void (async () => {
81
+ try {
82
+ await cloudClientService.syncCoreTokenToBluetooth()
83
+ await BluetoothSdk.sendIncidentId(reportId, apiBaseUrl ?? cloudClientService.getCoreUrl())
84
+ } catch (error) {
85
+ console.warn("reports.submit: notify glasses failed:", error instanceof Error ? error.message : error)
86
+ }
87
+ })()
88
+ }
89
+
90
+ async function submitReportInternal(input: InternalSubmitReportInput): Promise<ReportSubmitResult> {
91
+ const throttle =
92
+ input.kind === "automatic" && input.throttleKey
93
+ ? {
94
+ key: input.throttleKey,
95
+ windowMs: input.throttleWindowMs ?? DEFAULT_AUTOMATIC_REPORT_THROTTLE_MS,
96
+ }
97
+ : null
98
+
99
+ if (input.kind === "automatic" && input.throttleKey) {
100
+ const shouldSkip = automaticThrottleShouldSkip(
101
+ input.throttleKey,
102
+ Date.now(),
103
+ throttle?.windowMs ?? DEFAULT_AUTOMATIC_REPORT_THROTTLE_MS,
104
+ )
105
+ if (shouldSkip) return {status: "skipped", reason: "throttled_within_window"}
106
+ }
107
+
108
+ const context = await collectDiagnosticContext(input.context)
109
+ let reportId: string
110
+ let reportStatus: ReportStatus
111
+ let artifactsComplete = true
112
+ try {
113
+ const res =
114
+ input.kind === "feedback"
115
+ ? await cloudClientService.core.reports.submit({
116
+ kind: "feedback",
117
+ feedback: input.feedback,
118
+ context,
119
+ })
120
+ : input.kind === "bug"
121
+ ? await cloudClientService.core.reports.submit({
122
+ kind: "bug",
123
+ trigger: input.trigger,
124
+ report: input.report,
125
+ context,
126
+ })
127
+ : await cloudClientService.core.reports.submit({
128
+ kind: "automatic",
129
+ trigger: input.trigger,
130
+ report: input.report,
131
+ context,
132
+ })
133
+ reportId = res.reportId
134
+ reportStatus = res.status
135
+ } catch (error) {
136
+ return {status: "failed", error: error instanceof Error ? error.message : String(error)}
137
+ }
138
+
139
+ if (input.kind !== "feedback") {
140
+ const logs = logBuffer.getRecentLogs()
141
+ if (logs.length > 0) {
142
+ try {
143
+ await cloudClientService.core.reports.addLogs(reportId, "phone", logs)
144
+ } catch (error) {
145
+ artifactsComplete = false
146
+ console.warn("reports.submit: add phone logs failed:", error instanceof Error ? error.message : error)
147
+ }
148
+ }
149
+
150
+ notifyGlasses(reportId, cloudClientService.getCoreUrl())
151
+
152
+ if (input.screenshots && input.screenshots.length > 0) {
153
+ try {
154
+ await cloudClientService.core.reports.addScreenshots(reportId, input.screenshots)
155
+ } catch (error) {
156
+ artifactsComplete = false
157
+ console.warn("reports.submit: add screenshots failed:", error instanceof Error ? error.message : error)
158
+ }
159
+ }
160
+
161
+ try {
162
+ const completed = await cloudClientService.core.reports.complete(reportId)
163
+ reportStatus = completed.status
164
+ } catch (error) {
165
+ artifactsComplete = false
166
+ console.warn("reports.submit: complete report failed:", error instanceof Error ? error.message : error)
167
+ }
168
+ }
169
+
170
+ if (throttle && artifactsComplete) {
171
+ markAutomaticThrottleSuccess(throttle.key, Date.now(), throttle.windowMs)
172
+ }
173
+
174
+ return {status: "submitted", reportId, reportStatus}
175
+ }
176
+
177
+ export const reports = {
178
+ submit(input: EngineSubmitReportInput): Promise<ReportSubmitResult> {
179
+ return submitReportInternal(input)
180
+ },
181
+ }
182
+
183
+ export function submitAutomaticReport(input: EngineSubmitAutomaticReportInput): Promise<ReportSubmitResult> {
184
+ return submitReportInternal(input)
185
+ }
@@ -0,0 +1,55 @@
1
+ /**
2
+ * session facade — `engine.session`: the cloud-v2 live-session surface engine
3
+ * now owns (keystone #5). Exposes the connection status read-model (status +
4
+ * audio transport, projected from the engine-owned cloud-status store) and the
5
+ * liveness flag.
6
+ *
7
+ */
8
+ import {cloudClientService} from "../services/CloudClientService"
9
+ import {useCloudClientStatusStore} from "../stores/cloudClientStatus"
10
+ import {useConnectionStore} from "../stores/connection"
11
+ import type {WebSocketStatus} from "../stores/connection"
12
+ import type {CloudClientStatusSnapshot} from "../runtime/config"
13
+
14
+ function project(): CloudClientStatusSnapshot {
15
+ const s = useCloudClientStatusStore.getState()
16
+ return {status: s.status, audioTransport: s.audioTransport}
17
+ }
18
+
19
+ export const session = {
20
+ /** Current cloud live-session status (connection state + audio transport). */
21
+ status: (): CloudClientStatusSnapshot => project(),
22
+ /** Subscribe to cloud session-status changes; returns an unsubscribe. */
23
+ onStatus: (cb: (status: CloudClientStatusSnapshot) => void): (() => void) => {
24
+ // Dedupe: fire only when the projected {status, audioTransport} changes.
25
+ let last = JSON.stringify(project())
26
+ return useCloudClientStatusStore.subscribe(() => {
27
+ const snap = project()
28
+ const key = JSON.stringify(snap)
29
+ if (key === last) return
30
+ last = key
31
+ cb(snap)
32
+ })
33
+ },
34
+ /** Whether the live-session handshake has completed. */
35
+ isConnected: (): boolean => cloudClientService.isConnected(),
36
+
37
+ /**
38
+ * Legacy Cloud-V1 websocket status. The socket's writer (the host
39
+ * WebSocketManager) was deleted in the Cloud V1 ripout, so this now always
40
+ * reports the store's initial DISCONNECTED; the host connection banners
41
+ * render `status()` (the cloud-v2 runtime) instead. Kept, with the backing
42
+ * connection store, for the engine-side legacy-surface removal (issue #3392).
43
+ */
44
+ legacyWebsocketStatus: (): WebSocketStatus => useConnectionStore.getState().status,
45
+ /** Subscribe to legacy websocket status changes; fires only when it changes. Returns an unsubscribe. */
46
+ onLegacyWebsocketStatus: (cb: (status: WebSocketStatus) => void): (() => void) => {
47
+ let last = useConnectionStore.getState().status
48
+ return useConnectionStore.subscribe((state) => {
49
+ if (state.status === last) return
50
+ last = state.status
51
+ cb(state.status)
52
+ })
53
+ },
54
+
55
+ }
@@ -0,0 +1,57 @@
1
+ /**
2
+ * settings facade — `engine.settings`: the typed keyed user-settings surface over
3
+ * the engine-owned settings store. This is the (A) OEM contract; the raw store at
4
+ * `engine.stores.settings` is the Mentra-app escape hatch.
5
+ *
6
+ * Keys + their schema live in `SETTINGS` (theme, devMode, metric/twelveHourTime,
7
+ * notifications, onboarding flags, …); `descriptor(key)`/`keys()` expose them.
8
+ */
9
+ import {useSettingsStore, SETTINGS} from "../stores/settings"
10
+
11
+ // Copy: object/array-valued settings must not hand callers a mutable reference
12
+ // into the store (mutations would silently corrupt store state, bypassing set()).
13
+ function copySettingValue<T>(value: T): T {
14
+ if (Array.isArray(value)) return [...value] as T
15
+ if (value && typeof value === "object") return {...(value as object)} as T
16
+ return value
17
+ }
18
+
19
+ export const settings = {
20
+ /** Read a setting by key (the current value, or its default; object/array values
21
+ * are shallow copies). */
22
+ get: <T = unknown>(key: string): T | undefined =>
23
+ copySettingValue(useSettingsStore.getState().getSetting(key) as T | undefined),
24
+ /**
25
+ * Write a setting. `syncToServer` (default true) also pushes the change to the
26
+ * backend; pass false for device-local-only writes.
27
+ */
28
+ set: <T = unknown>(key: string, value: T, syncToServer = true) =>
29
+ useSettingsStore.getState().setSetting(key, value, syncToServer),
30
+ /** Subscribe to changes for one key; returns an unsubscribe. */
31
+ onChanged: <T = unknown>(key: string, cb: (value: T | undefined) => void): (() => void) =>
32
+ useSettingsStore.subscribe((s) => s.getSetting(key) as T | undefined, cb),
33
+ /** The schema descriptor for a key (type, default, options…), or undefined. */
34
+ descriptor: (key: string) => SETTINGS[key],
35
+ /** All known setting keys. */
36
+ keys: (): string[] => Object.keys(SETTINGS),
37
+ /**
38
+ * Reset every setting to its default on THIS device only (no server sync) —
39
+ * the logout path. Server-side settings are untouched.
40
+ */
41
+ resetAllLocal: (): void => useSettingsStore.getState().resetAllSettingsLocally(),
42
+ /**
43
+ * Hydrate the settings store from device storage — the host-boot step (fire
44
+ * once at app start, before UI reads settings). Single-flighted internally.
45
+ */
46
+ loadAll: () => useSettingsStore.getState().loadAllSettings(),
47
+ /**
48
+ * Every EXPLICITLY-SET setting (shallow copy; keys never written are absent —
49
+ * use get() for default-resolved reads). The data-export surface.
50
+ */
51
+ getAll: (): Record<string, unknown> => ({...useSettingsStore.getState().settings}),
52
+ /**
53
+ * Bulk device-local write without server sync — seeding the store from a
54
+ * backend settings payload.
55
+ */
56
+ setManyLocal: (values: Record<string, unknown>) => useSettingsStore.getState().setManyLocally(values),
57
+ }
@@ -0,0 +1,38 @@
1
+ /**
2
+ * speech facade — `engine.speech.{stt,tts}`: on-device STT/TTS model management,
3
+ * wrapping the in-engine model managers. Thin passthrough (args forwarded with
4
+ * exact types via Parameters<>), so the facade never drifts from the managers.
5
+ * STT additionally exposes the auto-download status stream (the TTS path has none).
6
+ */
7
+ import BluetoothSdk from "@mentra/bluetooth-sdk/internal"
8
+ import sttModelManager from "../services/STTModelManager"
9
+ import ttsModelManager from "../services/TTSModelManager"
10
+ import offlineSpeechModelService from "../services/OfflineSpeechModelService"
11
+
12
+ export const speech = {
13
+ /** Restart the glasses' on-device transcriber (e.g. after switching STT language). */
14
+ restartTranscriber: (): Promise<void> => BluetoothSdk.restartTranscriber(),
15
+ stt: {
16
+ currentLanguage: () => sttModelManager.getCurrentLanguage(),
17
+ languages: () => sttModelManager.getAvailableLanguages(),
18
+ languageInfo: () => sttModelManager.getAllLanguageInfo(),
19
+ download: (...args: Parameters<typeof sttModelManager.downloadModel>) => sttModelManager.downloadModel(...args),
20
+ activate: (code: string) => sttModelManager.setCurrentLanguage(code),
21
+ cancelDownload: () => sttModelManager.cancelDownload(),
22
+ deleteModel: (...args: Parameters<typeof sttModelManager.deleteModel>) => sttModelManager.deleteModel(...args),
23
+ /** Current auto-download status of the offline STT model. */
24
+ status: () => offlineSpeechModelService.getStatus(),
25
+ /** Subscribe to auto-download status changes; returns an unsubscribe. */
26
+ onStatusChanged: (...args: Parameters<typeof offlineSpeechModelService.subscribe>) =>
27
+ offlineSpeechModelService.subscribe(...args),
28
+ },
29
+ tts: {
30
+ currentLanguage: () => ttsModelManager.getCurrentLanguage(),
31
+ languages: () => ttsModelManager.getAvailableLanguages(),
32
+ languageInfo: () => ttsModelManager.getAllLanguageInfo(),
33
+ download: (...args: Parameters<typeof ttsModelManager.downloadModel>) => ttsModelManager.downloadModel(...args),
34
+ activate: (code: string) => ttsModelManager.setCurrentLanguage(code),
35
+ cancelDownload: () => ttsModelManager.cancelDownload(),
36
+ deleteModel: (...args: Parameters<typeof ttsModelManager.deleteModel>) => ttsModelManager.deleteModel(...args),
37
+ },
38
+ }
package/src/index.ts ADDED
@@ -0,0 +1,191 @@
1
+ /**
2
+ * `@mentra/engine` — the OEM-facing main entry.
3
+ *
4
+ * The `engine` namespace (configure/start/stop + typed domain facades), the
5
+ * public contract/read-model types, and the pure helpers host UI legitimately
6
+ * renders with (decision functions, sort/order helpers, policy constants,
7
+ * capability tables, timers). Judgment rule: read models, commands, pure
8
+ * functions and types belong here; anything that mutates runtime state or
9
+ * exposes a raw store/service lives on `@mentra/engine/internal`
10
+ * (migration-era surface) or `@mentra/engine/devtools` (debug-only) instead.
11
+ * See cloud-v2/docs/issues/020-glasses-status-boundary/integration-review.md §D.
12
+ */
13
+
14
+ // The namespaced OEM-facing engine API (the "(A) host API"). See ./engine.
15
+ export {engine} from "./engine"
16
+ export type {
17
+ ReportAttachmentInput,
18
+ ReportContext,
19
+ ReportDetails,
20
+ ReportStatus,
21
+ ReportTrigger,
22
+ ReportSubmitResult,
23
+ EngineSubmitReportInput,
24
+ } from "./facades/reports"
25
+ export type {IslandNotification, IslandNotificationKind} from "./facades/notifications"
26
+ export type {WifiSearchResult} from "./facades/glassesWifi"
27
+ export type {IdentitySnapshot} from "./services/PairingIdentity"
28
+ export type {DisplayMirrorEvent} from "./facades/displayMirror"
29
+ export type {
30
+ IslandConfigureOptions,
31
+ IslandAuth,
32
+ IslandConfigValues,
33
+ IslandAnalytics,
34
+ IslandUiSeams,
35
+ SubjectTokenType,
36
+ } from "./runtime/bootstrap"
37
+
38
+ // Settings contract: the typed key registry (schema descriptors — the same
39
+ // surface engine.settings.descriptor()/keys() reads), the per-key React hook
40
+ // (the hook layer, same precedent as the apps hooks below), and the pure
41
+ // device-model key helpers. The raw useSettingsStore stays internal;
42
+ // imperative access goes through engine.settings.
43
+ export {SETTINGS, useSetting} from "./stores/settings"
44
+ export {MENTRA_LIVE_SETTING_KEYS, getBluetoothSettingKeysForDevice} from "./stores/bluetoothSettingKeys"
45
+
46
+ // Runtime-shared constants and contract DTOs.
47
+ export {ISLAND_SETTINGS_KEYS} from "./runtime/config"
48
+ export type {
49
+ CloudClientStatusSnapshot,
50
+ MiniappAuthToken,
51
+ InteropAuditEvent,
52
+ TtsSynthesisResult,
53
+ } from "./runtime/config"
54
+
55
+ // Pure readiness predicates over glasses connection state.
56
+ export {
57
+ isGlassesConnected,
58
+ isGlassesReady,
59
+ isGlassesLinkLayerBusy,
60
+ waitForGlassesReady,
61
+ type GlassesConnectionStatus,
62
+ type WaitForGlassesReadyOptions,
63
+ } from "./services/GlassesReadiness"
64
+ // Pure connect/reconnect decision helpers (host UI renders the outcome).
65
+ export {
66
+ decideReconnect,
67
+ decideConnectButtonAction,
68
+ type ReconnectDecision,
69
+ type ReconnectDecisionInput,
70
+ type ConnectButtonAction,
71
+ } from "./services/ConnectionCoordinator"
72
+
73
+ // OTA read-model types for host OTA UI (progress screen, error mapping,
74
+ // progress section) — the check/install machinery itself is internal.
75
+ export type {
76
+ VersionInfo,
77
+ MtkPatch,
78
+ BesFirmware,
79
+ VersionJson,
80
+ OtaCheckResult,
81
+ OtaCheckCurrentGlassesResult,
82
+ OtaCheckCurrentGlassesOptions,
83
+ } from "./services/OtaUpdateCheckService"
84
+ // OTA install policy (watchdog timings + failure copy) + display-state
85
+ // derivation, consumed by the OTA screens and their tests.
86
+ export {
87
+ MINIMUM_OTA_STATUS_BUILD,
88
+ MAX_RETRIES,
89
+ RETRY_INTERVAL_MS,
90
+ PROGRESS_TIMEOUT_MS,
91
+ DOWNLOAD_STUCK_TIMEOUT_MS,
92
+ MTK_INSTALL_TIMEOUT_MS,
93
+ GLOBAL_OTA_TIMEOUT_MS,
94
+ POST_APK_OTA_START_DELAY_MS,
95
+ PING_INTERVAL_MS,
96
+ QUERY_REPLY_TIMEOUT_MS,
97
+ OtaProgressMessages,
98
+ } from "./services/otaInstallPolicy"
99
+ export {deriveDisplayState} from "./services/otaDisplayState"
100
+ export type {DisplayState} from "./services/otaDisplayState"
101
+ export type {
102
+ OtaProgress,
103
+ OtaProgressStatus,
104
+ OtaStatus,
105
+ OtaUpdateInfo,
106
+ OtaSnapshot,
107
+ OtaInstallSnapshot,
108
+ } from "./facades/ota"
109
+
110
+ // Gallery read models: engine.gallery.onNotice payload types, the media
111
+ // permission helper + display-name derivation host gallery UI uses, and the
112
+ // glasses-camera DTO types (re-exported through the host @/types/asg shim).
113
+ export type {GalleryNotice, GalleryNoticeCode} from "./services/asg/galleryNotices"
114
+ export {MediaLibraryPermissions} from "./utils/permissions/MediaLibraryPermissions"
115
+ export {deriveGalleryDisplayName} from "./utils/permissions/galleryDisplayName"
116
+ export type {PhotoInfo, CaptureFile, CaptureGroup, GalleryResponse, ServerStatus, HealthResponse, GalleryEvent} from "./types/asg"
117
+
118
+ // Bluetooth SDK event types host UI subscribes to via engine facades (the
119
+ // BluetoothSdk singleton passthrough itself is internal).
120
+ export type {PairFailureEvent, GlassesNotReadyEvent} from "@mentra/bluetooth-sdk/internal"
121
+
122
+ // Cloud connection status enum (read model; the connection store is internal).
123
+ export {WebSocketStatus} from "./stores/connection"
124
+
125
+ // App-list hook layer + pure list helpers (the raw useAppStatusStore and
126
+ // installAppStoreHooks wiring are internal).
127
+ export {
128
+ DUMMY_APPLET,
129
+ saveAppsOrder,
130
+ getAppsOrder,
131
+ sortAppsByPackageNamePriority,
132
+ saveLastOpenTime,
133
+ getLastOpenTime,
134
+ sortAppsByLastOpenTime,
135
+ useApps,
136
+ useStart,
137
+ useStop,
138
+ useSetForeground,
139
+ useClearForeground,
140
+ useRefresh,
141
+ useStopAll,
142
+ useInstall,
143
+ useUninstall,
144
+ useActiveApps,
145
+ useActiveBackgroundApps,
146
+ useBackgroundApps,
147
+ useActiveForegroundApp,
148
+ useForegroundApp,
149
+ useActiveBackgroundAppsCount,
150
+ useLocalMiniApps,
151
+ type StartOptions,
152
+ type OrderMap,
153
+ } from "./stores/apps"
154
+
155
+ // Pure dev-miniapp launch-route decision (registration itself is internal).
156
+ export {decideDevLaunchRoute, type DevLaunchResult, type DevManifest} from "./utils/devMiniappLaunch"
157
+ export {HardwareCompatibility, type CompatibilityResult} from "./utils/hardware"
158
+ export {BgTimer, throttle, debounce} from "./utils/timers"
159
+
160
+ // Types (copied from @mentra/types — keep in sync with cloud/packages/types/src)
161
+ export {
162
+ HardwareType,
163
+ HardwareRequirementLevel,
164
+ DeviceTypes,
165
+ ControllerTypes,
166
+ HARDWARE_CAPABILITIES,
167
+ getModelCapabilities,
168
+ simulatedGlasses,
169
+ evenRealitiesG1,
170
+ evenRealitiesG2,
171
+ mentraLive,
172
+ vuzixZ100,
173
+ mentraDisplay,
174
+ } from "./types"
175
+ export type {
176
+ HardwareRequirement,
177
+ CameraCapabilities,
178
+ DisplayCapabilities,
179
+ MicrophoneCapabilities,
180
+ SpeakerCapabilities,
181
+ IMUCapabilities,
182
+ ButtonCapabilities,
183
+ LightCapabilities,
184
+ PowerCapabilities,
185
+ Capabilities,
186
+ AppletType,
187
+ AppPermissionType,
188
+ AppletPermission,
189
+ AppletInterface,
190
+ ClientApp,
191
+ } from "./types"
@@ -0,0 +1,159 @@
1
+ /**
2
+ * `@mentra/engine/internal` — the migration-era runtime surface.
3
+ *
4
+ * Raw zustand stores and service singletons that the Mentra app's host-side
5
+ * services (and the `@/stores/*` / `@/utils/*` shims) still reach into while
6
+ * the typed `engine` facades grow. Everything here either mutates runtime
7
+ * state or exposes a store/service directly, so none of it belongs on the
8
+ * OEM-facing `@mentra/engine` main entry: new host code should read/act
9
+ * through `engine.*` instead.
10
+ *
11
+ * Every `/internal` import in mobile/src is counted (report-only) by
12
+ * scripts/check-mobile-runtime-boundary.sh; the burn-down plan is
13
+ * cloud-v2/docs/issues/020-glasses-status-boundary/integration-review.md §D.
14
+ * Types that only describe these internal surfaces live here with them;
15
+ * types host UI renders with stay on the main entry.
16
+ */
17
+
18
+ // Miniapp runtime plumbing: WebView bridge, registry, launcher, engine.
19
+ export {default as webviewBridge} from "./services/WebviewBridge"
20
+ export {
21
+ default as appRegistry,
22
+ normalizeManifestPermissions,
23
+ normalizeManifestActions,
24
+ buildHardwareRequirements,
25
+ saveLocalAppRunningState,
26
+ registerDevApp,
27
+ unregisterDevApp,
28
+ getDevAppRecords,
29
+ getDevAppSourcePackage,
30
+ getDevAppAttestation,
31
+ DEV_APP_PACKAGE_NAME,
32
+ type DevAppRecord,
33
+ } from "./services/AppRegistry"
34
+ export {default as displayProcessor} from "./services/DisplayProcessor"
35
+ export {default as localDisplayManager, type DisplayPayload} from "./services/LocalDisplayManager"
36
+ export {default as localMiniappRuntime, type InstalledMiniappManifest} from "./services/LocalMiniappRuntime"
37
+ export {miniappLauncher, type LaunchHints, type LaunchResult, type ResolvedBundle} from "./services/MiniappLauncher"
38
+ export {
39
+ MentraJSRouter,
40
+ type MentraJSCrustBinding,
41
+ type OutboundMessagePayload as MentraJSOutboundMessage,
42
+ type RouterLogger as MentraJSRouterLogger,
43
+ } from "./services/MentraJSRouter"
44
+ export {buildMentraUiShim, type MentraUiShimOptions} from "./services/mentraUiShim"
45
+ export {MentraUIRouter, type MentraUICrustBinding} from "./services/MentraUIRouter"
46
+ export {
47
+ MentraJSCrashController,
48
+ type CrashState,
49
+ type CrashOutcome,
50
+ type CrashControllerOptions,
51
+ } from "./services/MentraJSCrashController"
52
+ export {ensureMiniappEngine, getMiniappEngine, type MiniappEngine} from "./services/MiniappEngine"
53
+ export {
54
+ redactSecrets,
55
+ MentraJSLogThrottle,
56
+ MentraJSLogRingBuffer,
57
+ type ThrottleOptions,
58
+ } from "./services/MentraJSLogPipeline"
59
+ // WebView-injection script builders (miniapp globals + mentra-ui shim).
60
+ export {
61
+ buildMiniappGlobalsScript,
62
+ getCapsuleMenuRect,
63
+ type BuildMiniappGlobalsOptions,
64
+ type CapsuleMenuRect,
65
+ type MiniappColorScheme,
66
+ type MiniappSafeArea,
67
+ } from "./utils/miniappGlobals"
68
+
69
+ // Speech/audio coordinators and model managers.
70
+ export {default as localSttFallbackCoordinator} from "./services/LocalSttFallbackCoordinator"
71
+ export {default as micStateCoordinator} from "./services/MicStateCoordinator"
72
+ export {default as audioPlaybackService} from "./services/AudioPlaybackService"
73
+ export {
74
+ default as sttModelManager,
75
+ STTModelManager,
76
+ type LanguageInfo as SttLanguageInfo,
77
+ type LanguageConfig as SttLanguageConfig,
78
+ type DownloadProgress as SttDownloadProgress,
79
+ type ExtractionProgress as SttExtractionProgress,
80
+ } from "./services/STTModelManager"
81
+ export {default as ttsModelManager, TTSModelManager} from "./services/TTSModelManager"
82
+ export {
83
+ default as offlineSpeechModelService,
84
+ type DownloadStatus as OfflineModelDownloadStatus,
85
+ type DownloadStage as OfflineModelDownloadStage,
86
+ } from "./services/OfflineSpeechModelService"
87
+
88
+ export {default as navigationService} from "./services/NavigationService"
89
+ // Phone GPS — the background location task + tier control. Importing this
90
+ // module registers the background task, so the entry that MantleManager loads
91
+ // must keep re-exporting it (was: the main barrel).
92
+ export {phoneLocationService, stopPhoneLocation} from "./services/PhoneLocationService"
93
+ // Clock-skew fix commands (BLE writes) used by OTA + gallery sync.
94
+ export {fixGlassesClockIfSkewed, maybeFixGlassesClockFromVersionInfo} from "./services/glassesClockSync"
95
+ // OTA manifest-URL resolution (dev-override/legacy-build/env/prod).
96
+ export {getAsgOtaVersionUrl} from "./services/asgOtaVersionUrl"
97
+ // Flat OTA check helpers (network + BLE state). Host usage is a tracked
98
+ // burn-down surface (§F); the sanctioned path is engine.ota.checkForUpdates().
99
+ export {
100
+ fetchVersionInfo,
101
+ checkVersionUpdateAvailable,
102
+ getLatestVersionInfo,
103
+ findMatchingMtkPatch,
104
+ checkBesUpdate,
105
+ checkForOtaUpdate,
106
+ checkCurrentGlassesForUpdate,
107
+ } from "./services/OtaUpdateCheckService"
108
+
109
+ // Gallery cluster — sync orchestrator, glasses-camera HTTP API, media/storage,
110
+ // settings, validation and the service-to-service notice bus. Host gallery UI
111
+ // renders engine.gallery; these are the underlying services.
112
+ export {detectClockSkew, isSyncManifestEmpty, CLOCK_SKEW_TOLERANCE_MS} from "./services/gallerySyncClock"
113
+ export {gallerySyncService} from "./services/asg/gallerySyncService"
114
+ export {asgCameraApi} from "./services/asg/asgCameraApi"
115
+ export {localStorageService} from "./services/asg/localStorageService"
116
+ export {mediaProcessingQueue} from "./services/asg/mediaProcessingQueue"
117
+ export {gallerySettingsService} from "./services/asg/gallerySettingsService"
118
+ export {cameraRollExportCoordinator, type CameraRollExportSummary} from "./services/asg/cameraRollExportCoordinator"
119
+ export {
120
+ INVALID_DOWNLOADED_MEDIA,
121
+ validateCaptureMetadataForDownload,
122
+ validateDownloadedMediaFile,
123
+ } from "./services/asg/galleryMediaValidation"
124
+ export {emitGalleryNotice, onGalleryNotice} from "./services/asg/galleryNotices"
125
+
126
+ // Phone-side capture coordinators.
127
+ export {phonePhotoCoordinator} from "./services/PhonePhotoCoordinator"
128
+ export {phoneStreamCoordinator} from "./services/PhoneStreamCoordinator"
129
+
130
+ // Raw runtime stores (re-exported via the host @/stores/* shims). Read models
131
+ // live on the engine facades; these are the migration escape hatch.
132
+ export {useDisplayStore, flushDisplayCoalesceForTests} from "./stores/display"
133
+ export {useCoreStore} from "./stores/core"
134
+ export {useConnectionStore} from "./stores/connection"
135
+ export {useCloudClientStatusStore} from "./stores/cloudClientStatus"
136
+ export type {RuntimeAudioTransport, RuntimeSnapshot, RuntimeStatus} from "./stores/cloudClientStatus"
137
+ export {SETTINGS, OFFLINE_APPLETS, useSettingsStore, useSetting} from "./stores/settings"
138
+ export {MENTRA_LIVE_SETTING_KEYS, getBluetoothSettingKeysForDevice} from "./stores/bluetoothSettingKeys"
139
+ export {useAppStatusStore, installAppStoreHooks, type AppStoreHooks} from "./stores/apps"
140
+
141
+ // Cloud client + credentials + v1 comms.
142
+ export {cloudSecureStore} from "./utils/cloudClient/cloudSecureStore"
143
+ export {cloudClientService} from "./services/CloudClientService"
144
+ export {createCloudUdpSocket} from "./utils/cloudClient/RnUdpAdapter"
145
+
146
+ // Log ring buffer + console interception (bug-report attachments).
147
+ export {logBuffer, type LogEntry} from "./utils/devLogging"
148
+
149
+ // Bluetooth SDK internal compatibility passthrough. Prefer an engine facade
150
+ // when one exists; this remains an escape hatch for app-only compatibility
151
+ // needs (its event TYPES stay on the main entry).
152
+ export {default as BluetoothSdk} from "@mentra/bluetooth-sdk/internal"
153
+
154
+
155
+ // Engine-owned MMKV instance + debug helper.
156
+ export {storage, printDirectory} from "./utils/storage"
157
+ // Process-wide event bus — one shared instance for engine services + host
158
+ // (re-exported via the @/utils/GlobalEventEmitter shim).
159
+ export {default as GlobalEventEmitter} from "./utils/GlobalEventEmitter"