@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,28 @@
1
+ /**
2
+ * Engine notifications emitter — the engine→host alert channel behind
3
+ * `engine.notifications`. Engine-detected conditions the host should surface
4
+ * (miniapp crashloop, version-incompatible miniapp, persistent connection loss)
5
+ * are pushed here; the facade fans them out to host subscribers.
6
+ *
7
+ * A plain listener set (not Node's EventEmitter) to avoid the `events` typings
8
+ * gap in engine's standalone build.
9
+ */
10
+ export type IslandNotificationKind = "miniapp_crashloop" | "version_incompatible" | "missing_speech_model" | "connection_failed_persistent";
11
+ export interface IslandNotification {
12
+ kind: IslandNotificationKind;
13
+ /** The miniapp this concerns, when applicable. */
14
+ packageName?: string;
15
+ /** Epoch millis when raised. */
16
+ timestamp: number;
17
+ /** Human-readable summary the host can show. */
18
+ reason: string;
19
+ /** Kind-specific extras (versions, attempt counts, …). */
20
+ metadata?: Record<string, unknown>;
21
+ }
22
+ export declare const islandNotifications: {
23
+ /** Raise a notification to all host subscribers. */
24
+ emit(notification: IslandNotification): void;
25
+ /** Subscribe to engine notifications; returns an unsubscribe. */
26
+ subscribe(cb: (n: IslandNotification) => void): () => void;
27
+ };
28
+ //# sourceMappingURL=NotificationsEmitter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotificationsEmitter.d.ts","sourceRoot":"","sources":["../../src/services/NotificationsEmitter.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,MAAM,MAAM,sBAAsB,GAC9B,mBAAmB,GACnB,sBAAsB,GACtB,sBAAsB,GACtB,8BAA8B,CAAA;AAElC,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,sBAAsB,CAAA;IAC5B,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,gCAAgC;IAChC,SAAS,EAAE,MAAM,CAAA;IACjB,gDAAgD;IAChD,MAAM,EAAE,MAAM,CAAA;IACd,0DAA0D;IAC1D,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CACnC;AAID,eAAO,MAAM,mBAAmB;IAC9B,oDAAoD;uBACjC,kBAAkB,GAAG,IAAI;IAS5C,iEAAiE;kBACnD,CAAC,CAAC,EAAE,kBAAkB,KAAK,IAAI,GAAG,MAAM,IAAI;CAM3D,CAAA"}
@@ -0,0 +1,22 @@
1
+ const listeners = new Set();
2
+ export const islandNotifications = {
3
+ /** Raise a notification to all host subscribers. */
4
+ emit(notification) {
5
+ for (const l of listeners) {
6
+ try {
7
+ l(notification);
8
+ }
9
+ catch (err) {
10
+ console.warn(`islandNotifications: listener threw: ${err?.message ?? err}`);
11
+ }
12
+ }
13
+ },
14
+ /** Subscribe to engine notifications; returns an unsubscribe. */
15
+ subscribe(cb) {
16
+ listeners.add(cb);
17
+ return () => {
18
+ listeners.delete(cb);
19
+ };
20
+ },
21
+ };
22
+ //# sourceMappingURL=NotificationsEmitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NotificationsEmitter.js","sourceRoot":"","sources":["../../src/services/NotificationsEmitter.ts"],"names":[],"mappings":"AA2BA,MAAM,SAAS,GAAG,IAAI,GAAG,EAAmC,CAAA;AAE5D,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,oDAAoD;IACpD,IAAI,CAAC,YAAgC;QACnC,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;YAC1B,IAAI,CAAC;gBACH,CAAC,CAAC,YAAY,CAAC,CAAA;YACjB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,CAAC,IAAI,CAAC,wCAAyC,GAAa,EAAE,OAAO,IAAI,GAAG,EAAE,CAAC,CAAA;YACxF,CAAC;QACH,CAAC;IACH,CAAC;IACD,iEAAiE;IACjE,SAAS,CAAC,EAAmC;QAC3C,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;QACjB,OAAO,GAAG,EAAE;YACV,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;QACtB,CAAC,CAAA;IACH,CAAC;CACF,CAAA","sourcesContent":["/**\n * Engine notifications emitter — the engine→host alert channel behind\n * `engine.notifications`. Engine-detected conditions the host should surface\n * (miniapp crashloop, version-incompatible miniapp, persistent connection loss)\n * are pushed here; the facade fans them out to host subscribers.\n *\n * A plain listener set (not Node's EventEmitter) to avoid the `events` typings\n * gap in engine's standalone build.\n */\nexport type IslandNotificationKind =\n | \"miniapp_crashloop\"\n | \"version_incompatible\"\n | \"missing_speech_model\"\n | \"connection_failed_persistent\"\n\nexport interface IslandNotification {\n kind: IslandNotificationKind\n /** The miniapp this concerns, when applicable. */\n packageName?: string\n /** Epoch millis when raised. */\n timestamp: number\n /** Human-readable summary the host can show. */\n reason: string\n /** Kind-specific extras (versions, attempt counts, …). */\n metadata?: Record<string, unknown>\n}\n\nconst listeners = new Set<(n: IslandNotification) => void>()\n\nexport const islandNotifications = {\n /** Raise a notification to all host subscribers. */\n emit(notification: IslandNotification): void {\n for (const l of listeners) {\n try {\n l(notification)\n } catch (err) {\n console.warn(`islandNotifications: listener threw: ${(err as Error)?.message ?? err}`)\n }\n }\n },\n /** Subscribe to engine notifications; returns an unsubscribe. */\n subscribe(cb: (n: IslandNotification) => void): () => void {\n listeners.add(cb)\n return () => {\n listeners.delete(cb)\n }\n },\n}\n"]}
@@ -0,0 +1,33 @@
1
+ export type DownloadStage = "idle" | "downloading" | "extracting" | "complete" | "failed";
2
+ export interface DownloadStatus {
3
+ kind: "stt" | "tts";
4
+ languageCode: string;
5
+ stage: DownloadStage;
6
+ /** 0–100, only meaningful while stage is "downloading" or "extracting". */
7
+ percent: number;
8
+ }
9
+ type StatusListener = (status: DownloadStatus | null) => void;
10
+ declare class OfflineSpeechModelService {
11
+ private static instance;
12
+ private started;
13
+ private sttPromise;
14
+ private ttsPromise;
15
+ private currentStatus;
16
+ private listeners;
17
+ private constructor();
18
+ static getInstance(): OfflineSpeechModelService;
19
+ startBackgroundDownloads(): void;
20
+ /** Subscribe to background-download status changes. Fires immediately with current status. */
21
+ subscribe(listener: StatusListener): () => void;
22
+ getStatus(): DownloadStatus | null;
23
+ private setStatus;
24
+ ensureDefaultModels(): Promise<void>;
25
+ ensureSttModel(): Promise<void>;
26
+ ensureTtsModel(): Promise<void>;
27
+ private ensureSttModelInner;
28
+ private ensureTtsModelInner;
29
+ }
30
+ declare const offlineSpeechModelService: OfflineSpeechModelService;
31
+ export { OfflineSpeechModelService };
32
+ export default offlineSpeechModelService;
33
+ //# sourceMappingURL=OfflineSpeechModelService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OfflineSpeechModelService.d.ts","sourceRoot":"","sources":["../../src/services/OfflineSpeechModelService.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,aAAa,GAAG,YAAY,GAAG,UAAU,GAAG,QAAQ,CAAA;AAEzF,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,KAAK,GAAG,KAAK,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,aAAa,CAAA;IACpB,2EAA2E;IAC3E,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,KAAK,cAAc,GAAG,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,KAAK,IAAI,CAAA;AAE7D,cAAM,yBAAyB;IAC7B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAA2B;IAClD,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,UAAU,CAA6B;IAC/C,OAAO,CAAC,UAAU,CAA6B;IAE/C,OAAO,CAAC,aAAa,CAA8B;IACnD,OAAO,CAAC,SAAS,CAA4B;IAE7C,OAAO;IAEP,MAAM,CAAC,WAAW,IAAI,yBAAyB;IAO/C,wBAAwB,IAAI,IAAI;IAoBhC,8FAA8F;IAC9F,SAAS,CAAC,QAAQ,EAAE,cAAc,GAAG,MAAM,IAAI;IAQ/C,SAAS,IAAI,cAAc,GAAG,IAAI;IAIlC,OAAO,CAAC,SAAS;IAWX,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAepC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ/B,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;YAQvB,mBAAmB;YA2BnB,mBAAmB;CA0BlC;AAED,QAAA,MAAM,yBAAyB,2BAA0C,CAAA;AACzE,OAAO,EAAC,yBAAyB,EAAC,CAAA;AAClC,eAAe,yBAAyB,CAAA"}
@@ -0,0 +1,136 @@
1
+ // import NetInfo from "@react-native-community/netinfo"
2
+ import STTModelManager from "./STTModelManager";
3
+ import TTSModelManager from "./TTSModelManager";
4
+ class OfflineSpeechModelService {
5
+ static instance;
6
+ started = false;
7
+ sttPromise = null;
8
+ ttsPromise = null;
9
+ currentStatus = null;
10
+ listeners = new Set();
11
+ constructor() { }
12
+ static getInstance() {
13
+ if (!OfflineSpeechModelService.instance) {
14
+ OfflineSpeechModelService.instance = new OfflineSpeechModelService();
15
+ }
16
+ return OfflineSpeechModelService.instance;
17
+ }
18
+ startBackgroundDownloads() {
19
+ if (this.started)
20
+ return;
21
+ this.started = true;
22
+ // Wi-Fi gate (currently disabled — uncomment to skip background downloads on cellular):
23
+ // NetInfo.fetch().then((state) => {
24
+ // if (state.type !== "wifi") {
25
+ // console.log("OFFLINE_MODELS: skipping background download — not on Wi-Fi")
26
+ // return
27
+ // }
28
+ // void this.ensureDefaultModels().catch((error) => {
29
+ // console.warn("OFFLINE_MODELS: background model setup failed:", error)
30
+ // })
31
+ // })
32
+ void this.ensureDefaultModels().catch((error) => {
33
+ console.warn("OFFLINE_MODELS: background model setup failed:", error);
34
+ });
35
+ }
36
+ /** Subscribe to background-download status changes. Fires immediately with current status. */
37
+ subscribe(listener) {
38
+ this.listeners.add(listener);
39
+ listener(this.currentStatus);
40
+ return () => {
41
+ this.listeners.delete(listener);
42
+ };
43
+ }
44
+ getStatus() {
45
+ return this.currentStatus;
46
+ }
47
+ setStatus(status) {
48
+ this.currentStatus = status;
49
+ for (const listener of this.listeners) {
50
+ try {
51
+ listener(status);
52
+ }
53
+ catch (e) {
54
+ console.warn("OFFLINE_MODELS: status listener threw:", e);
55
+ }
56
+ }
57
+ }
58
+ async ensureDefaultModels() {
59
+ // Sequence STT then TTS so the home-screen banner shows one coherent
60
+ // progress at a time. STT first because it's the primary use case.
61
+ try {
62
+ await this.ensureSttModel();
63
+ }
64
+ catch (error) {
65
+ console.warn("OFFLINE_MODELS: STT model setup failed:", error);
66
+ }
67
+ try {
68
+ await this.ensureTtsModel();
69
+ }
70
+ catch (error) {
71
+ console.warn("OFFLINE_MODELS: TTS model setup failed:", error);
72
+ }
73
+ }
74
+ async ensureSttModel() {
75
+ if (this.sttPromise)
76
+ return this.sttPromise;
77
+ this.sttPromise = this.ensureSttModelInner().finally(() => {
78
+ this.sttPromise = null;
79
+ });
80
+ return this.sttPromise;
81
+ }
82
+ async ensureTtsModel() {
83
+ if (this.ttsPromise)
84
+ return this.ttsPromise;
85
+ this.ttsPromise = this.ensureTtsModelInner().finally(() => {
86
+ this.ttsPromise = null;
87
+ });
88
+ return this.ttsPromise;
89
+ }
90
+ async ensureSttModelInner() {
91
+ const preferred = await STTModelManager.getCurrentLanguageFromPreferences();
92
+ const code = preferred || STTModelManager.getCurrentLanguage();
93
+ if (await STTModelManager.isModelAvailable(code)) {
94
+ await STTModelManager.activateLanguage(code);
95
+ console.log(`OFFLINE_MODELS: STT model ready: ${code}`);
96
+ return;
97
+ }
98
+ console.log(`OFFLINE_MODELS: downloading STT model in background: ${code}`);
99
+ this.setStatus({ kind: "stt", languageCode: code, stage: "downloading", percent: 0 });
100
+ try {
101
+ await STTModelManager.downloadModel(code, (p) => this.setStatus({ kind: "stt", languageCode: code, stage: "downloading", percent: p.percentage }), (p) => this.setStatus({ kind: "stt", languageCode: code, stage: "extracting", percent: p.percentage }));
102
+ await STTModelManager.activateLanguage(code);
103
+ this.setStatus({ kind: "stt", languageCode: code, stage: "complete", percent: 100 });
104
+ console.log(`OFFLINE_MODELS: STT model downloaded: ${code}`);
105
+ }
106
+ catch (error) {
107
+ this.setStatus({ kind: "stt", languageCode: code, stage: "failed", percent: 0 });
108
+ throw error;
109
+ }
110
+ }
111
+ async ensureTtsModelInner() {
112
+ const preferred = await TTSModelManager.getCurrentLanguageFromPreferences();
113
+ const code = preferred || TTSModelManager.getCurrentLanguage();
114
+ if (await TTSModelManager.isModelAvailable(code)) {
115
+ await TTSModelManager.activateLanguage(code);
116
+ console.log(`OFFLINE_MODELS: TTS model ready: ${code}`);
117
+ return;
118
+ }
119
+ console.log(`OFFLINE_MODELS: downloading TTS model in background: ${code}`);
120
+ this.setStatus({ kind: "tts", languageCode: code, stage: "downloading", percent: 0 });
121
+ try {
122
+ await TTSModelManager.downloadModel(code, (p) => this.setStatus({ kind: "tts", languageCode: code, stage: "downloading", percent: p.percentage }), (p) => this.setStatus({ kind: "tts", languageCode: code, stage: "extracting", percent: p.percentage }));
123
+ await TTSModelManager.activateLanguage(code);
124
+ this.setStatus({ kind: "tts", languageCode: code, stage: "complete", percent: 100 });
125
+ console.log(`OFFLINE_MODELS: TTS model downloaded: ${code}`);
126
+ }
127
+ catch (error) {
128
+ this.setStatus({ kind: "tts", languageCode: code, stage: "failed", percent: 0 });
129
+ throw error;
130
+ }
131
+ }
132
+ }
133
+ const offlineSpeechModelService = OfflineSpeechModelService.getInstance();
134
+ export { OfflineSpeechModelService };
135
+ export default offlineSpeechModelService;
136
+ //# sourceMappingURL=OfflineSpeechModelService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OfflineSpeechModelService.js","sourceRoot":"","sources":["../../src/services/OfflineSpeechModelService.ts"],"names":[],"mappings":"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","sourcesContent":["// import NetInfo from \"@react-native-community/netinfo\"\n\nimport STTModelManager from \"./STTModelManager\"\nimport TTSModelManager from \"./TTSModelManager\"\n\nexport type DownloadStage = \"idle\" | \"downloading\" | \"extracting\" | \"complete\" | \"failed\"\n\nexport interface DownloadStatus {\n kind: \"stt\" | \"tts\"\n languageCode: string\n stage: DownloadStage\n /** 0–100, only meaningful while stage is \"downloading\" or \"extracting\". */\n percent: number\n}\n\ntype StatusListener = (status: DownloadStatus | null) => void\n\nclass OfflineSpeechModelService {\n private static instance: OfflineSpeechModelService\n private started = false\n private sttPromise: Promise<void> | null = null\n private ttsPromise: Promise<void> | null = null\n\n private currentStatus: DownloadStatus | null = null\n private listeners = new Set<StatusListener>()\n\n private constructor() {}\n\n static getInstance(): OfflineSpeechModelService {\n if (!OfflineSpeechModelService.instance) {\n OfflineSpeechModelService.instance = new OfflineSpeechModelService()\n }\n return OfflineSpeechModelService.instance\n }\n\n startBackgroundDownloads(): void {\n if (this.started) return\n this.started = true\n\n // Wi-Fi gate (currently disabled — uncomment to skip background downloads on cellular):\n // NetInfo.fetch().then((state) => {\n // if (state.type !== \"wifi\") {\n // console.log(\"OFFLINE_MODELS: skipping background download — not on Wi-Fi\")\n // return\n // }\n // void this.ensureDefaultModels().catch((error) => {\n // console.warn(\"OFFLINE_MODELS: background model setup failed:\", error)\n // })\n // })\n\n void this.ensureDefaultModels().catch((error) => {\n console.warn(\"OFFLINE_MODELS: background model setup failed:\", error)\n })\n }\n\n /** Subscribe to background-download status changes. Fires immediately with current status. */\n subscribe(listener: StatusListener): () => void {\n this.listeners.add(listener)\n listener(this.currentStatus)\n return () => {\n this.listeners.delete(listener)\n }\n }\n\n getStatus(): DownloadStatus | null {\n return this.currentStatus\n }\n\n private setStatus(status: DownloadStatus | null): void {\n this.currentStatus = status\n for (const listener of this.listeners) {\n try {\n listener(status)\n } catch (e) {\n console.warn(\"OFFLINE_MODELS: status listener threw:\", e)\n }\n }\n }\n\n async ensureDefaultModels(): Promise<void> {\n // Sequence STT then TTS so the home-screen banner shows one coherent\n // progress at a time. STT first because it's the primary use case.\n try {\n await this.ensureSttModel()\n } catch (error) {\n console.warn(\"OFFLINE_MODELS: STT model setup failed:\", error)\n }\n try {\n await this.ensureTtsModel()\n } catch (error) {\n console.warn(\"OFFLINE_MODELS: TTS model setup failed:\", error)\n }\n }\n\n async ensureSttModel(): Promise<void> {\n if (this.sttPromise) return this.sttPromise\n this.sttPromise = this.ensureSttModelInner().finally(() => {\n this.sttPromise = null\n })\n return this.sttPromise\n }\n\n async ensureTtsModel(): Promise<void> {\n if (this.ttsPromise) return this.ttsPromise\n this.ttsPromise = this.ensureTtsModelInner().finally(() => {\n this.ttsPromise = null\n })\n return this.ttsPromise\n }\n\n private async ensureSttModelInner(): Promise<void> {\n const preferred = await STTModelManager.getCurrentLanguageFromPreferences()\n const code = preferred || STTModelManager.getCurrentLanguage()\n\n if (await STTModelManager.isModelAvailable(code)) {\n await STTModelManager.activateLanguage(code)\n console.log(`OFFLINE_MODELS: STT model ready: ${code}`)\n return\n }\n\n console.log(`OFFLINE_MODELS: downloading STT model in background: ${code}`)\n this.setStatus({kind: \"stt\", languageCode: code, stage: \"downloading\", percent: 0})\n try {\n await STTModelManager.downloadModel(\n code,\n (p) => this.setStatus({kind: \"stt\", languageCode: code, stage: \"downloading\", percent: p.percentage}),\n (p) => this.setStatus({kind: \"stt\", languageCode: code, stage: \"extracting\", percent: p.percentage}),\n )\n await STTModelManager.activateLanguage(code)\n this.setStatus({kind: \"stt\", languageCode: code, stage: \"complete\", percent: 100})\n console.log(`OFFLINE_MODELS: STT model downloaded: ${code}`)\n } catch (error) {\n this.setStatus({kind: \"stt\", languageCode: code, stage: \"failed\", percent: 0})\n throw error\n }\n }\n\n private async ensureTtsModelInner(): Promise<void> {\n const preferred = await TTSModelManager.getCurrentLanguageFromPreferences()\n const code = preferred || TTSModelManager.getCurrentLanguage()\n\n if (await TTSModelManager.isModelAvailable(code)) {\n await TTSModelManager.activateLanguage(code)\n console.log(`OFFLINE_MODELS: TTS model ready: ${code}`)\n return\n }\n\n console.log(`OFFLINE_MODELS: downloading TTS model in background: ${code}`)\n this.setStatus({kind: \"tts\", languageCode: code, stage: \"downloading\", percent: 0})\n try {\n await TTSModelManager.downloadModel(\n code,\n (p) => this.setStatus({kind: \"tts\", languageCode: code, stage: \"downloading\", percent: p.percentage}),\n (p) => this.setStatus({kind: \"tts\", languageCode: code, stage: \"extracting\", percent: p.percentage}),\n )\n await TTSModelManager.activateLanguage(code)\n this.setStatus({kind: \"tts\", languageCode: code, stage: \"complete\", percent: 100})\n console.log(`OFFLINE_MODELS: TTS model downloaded: ${code}`)\n } catch (error) {\n this.setStatus({kind: \"tts\", languageCode: code, stage: \"failed\", percent: 0})\n throw error\n }\n }\n}\n\nconst offlineSpeechModelService = OfflineSpeechModelService.getInstance()\nexport {OfflineSpeechModelService}\nexport default offlineSpeechModelService\n"]}
@@ -0,0 +1,195 @@
1
+ import type { OtaProgress, OtaStatus } from "@mentra/bluetooth-sdk/internal";
2
+ import { type DisplayState } from "./otaDisplayState";
3
+ /** Read model the host progress screen renders from. */
4
+ export interface OtaInstallSnapshot {
5
+ displayState: DisplayState;
6
+ errorMsg: string;
7
+ continueButtonDisabled: boolean;
8
+ connected: boolean;
9
+ otaStatus: OtaStatus | null;
10
+ otaProgress: OtaProgress | null;
11
+ /**
12
+ * Display-only simulated percent for legacy (< 37) MTK install stalls (WP 8C-e), or
13
+ * null. The MTK system install goes quiet around 49-50%; the legacy screen simulated
14
+ * +1% ticks up to 60% purely to reassure the user. Render max(real, simulated).
15
+ */
16
+ mtkInstallStallSimulatedPercent: number | null;
17
+ }
18
+ declare class OtaInstallCoordinator {
19
+ private attached;
20
+ private errorMsg;
21
+ private sawReconnectEdge;
22
+ private continueButtonDisabled;
23
+ private apkStepSeen;
24
+ private prevConnected;
25
+ private initialBuildNumber;
26
+ private apkExpectedInSession;
27
+ private apkCompletedViaBuildIncrease;
28
+ private legacyApkSettleHold;
29
+ private mtkSimulatedPercent;
30
+ private lastRealMtkProgress;
31
+ private globalTimeout;
32
+ private globalTimeoutStarted;
33
+ private retryTimeout;
34
+ private stuckTimeout;
35
+ private progressTimeout;
36
+ private postApkDelay;
37
+ private pingInterval;
38
+ private queryReplyTimeout;
39
+ private continueLockoutTimer;
40
+ private legacyApkSettleTimer;
41
+ private mtkStallDetectTimer;
42
+ private mtkSimTickTimer;
43
+ private hasReceivedAck;
44
+ private hasFirstActivity;
45
+ private hasFirstNonZeroProgress;
46
+ private retryCount;
47
+ private prevDisplayState;
48
+ private lastConnected;
49
+ private lastOtaStatus;
50
+ private lastOtaProgress;
51
+ private lastBuildNumber;
52
+ private lastDisplayState;
53
+ private lastStallSig;
54
+ private reacting;
55
+ private reactQueued;
56
+ private storeUnsubscribe;
57
+ private snapshotCheckers;
58
+ /**
59
+ * Bind the state machine to a mounted progress screen. Idempotent per
60
+ * attach/detach cycle. Runs the initial-mount arbitration (send ota_start
61
+ * when connected with no session; otherwise ota_query_status + reply
62
+ * fallback) and starts reacting to store changes + BLE OTA events.
63
+ */
64
+ attach(): void;
65
+ /**
66
+ * Unbind on screen unmount: clears ALL timers/subscriptions/listeners and
67
+ * resets the session-local state (the old component state died with the
68
+ * component) so a re-attach is a fresh session.
69
+ */
70
+ detach(): void;
71
+ /** Retry after a failure: clear state and re-send ota_start (if connected). */
72
+ retry(): void;
73
+ /**
74
+ * Terminal-state cleanup half of the old Continue/Done handlers (navigation
75
+ * stays in the screen): clear the selected update, and after an APK step
76
+ * clear the stale build number so the next check re-reads version_info.
77
+ */
78
+ finish(): void;
79
+ /**
80
+ * Abandon an interrupted session (the super-mode skip): terminal cleanup
81
+ * plus dropping the session's status/progress read-state, so
82
+ * deriveDisplayState doesn't resurrect the stale install when the host
83
+ * navigates away and back through /ota routes.
84
+ */
85
+ discard(): void;
86
+ snapshot(): OtaInstallSnapshot;
87
+ /**
88
+ * Subscribe to install snapshot changes, deduped on the projected JSON.
89
+ * Fires on glasses-store changes AND coordinator-internal state changes
90
+ * (errorMsg / reconnect edge / continue lockout). Returns an unsubscribe.
91
+ */
92
+ onSnapshot(cb: (snapshot: OtaInstallSnapshot) => void): () => void;
93
+ private resetSessionState;
94
+ /** Notify snapshot subscribers of a coordinator-internal state change. */
95
+ private emitInternalChange;
96
+ private setErrorMsg;
97
+ private setSawReconnectEdge;
98
+ private setContinueButtonDisabled;
99
+ private setApkCompletedViaBuildIncrease;
100
+ private setLegacyApkSettleHold;
101
+ /** Display-only (WP 8C-e): notifies snapshot subscribers but never queues a reaction pass. */
102
+ private setMtkSimulatedPercent;
103
+ /**
104
+ * Legacy-session shape (WP 8C): event shape wins once events exist; before any event
105
+ * only the session-start build number can tell (falls back to the live build number
106
+ * until it is captured). Old builds get the LEGACY_* padded policy durations.
107
+ */
108
+ private isLegacySessionShapeNow;
109
+ private react;
110
+ /**
111
+ * One reaction pass = one render + its changed-dep effects of the old
112
+ * component, in the old declaration order.
113
+ */
114
+ private runPass;
115
+ private runConnectEdge;
116
+ private readonly handleAck;
117
+ private readonly handleMtkComplete;
118
+ /**
119
+ * Reacts to a NEW legacy-shaped install-phase "complete" (an old build's
120
+ * `install FINISHED`). Two ports from the legacy screen:
121
+ * - last-write-wins: completion arriving after a watchdog failure overrides it
122
+ * (the old screen completed from "failed" too);
123
+ * - apk settle window: an apk install FINISHED observed in flight is held out of
124
+ * "complete" for LEGACY_APK_COMPLETION_SETTLE_MS so the ASG process restart
125
+ * settles (and fresh version_info lands) before the user can continue. From
126
+ * starting/failed (post-reboot explicit signal) completion is immediate.
127
+ */
128
+ private handleLegacyInstallCompleteEdge;
129
+ /**
130
+ * Legacy MTK install stall simulation (WP 8C-e), ported verbatim: the MTK system
131
+ * install typically stalls around 49-50%. Every real event restarts stall detection;
132
+ * after LEGACY_MTK_STALL_DETECT_MS of silence inside the [45, 55) zone, simulate +1%
133
+ * every LEGACY_MTK_SIM_TICK_MS from max(stall+1, 51), capped at 60. Real progress
134
+ * beyond the simulated value clears it. Display-only by construction: the timers call
135
+ * only {@link setMtkSimulatedPercent}, which never queues a reaction pass.
136
+ */
137
+ private runMtkStallSimulationPass;
138
+ /**
139
+ * Read the current derived display state from the store + internal state
140
+ * synchronously — used inside setTimeout callbacks.
141
+ */
142
+ private computeDisplayStateNow;
143
+ /**
144
+ * "Glasses are talking to us" — clears the no-ack retry watchdog only.
145
+ * Important: this does NOT clear the stuck-at-zero watchdog; that one fires
146
+ * on real progress > 0% (see {@link onFirstNonZeroProgress}).
147
+ */
148
+ private onFirstActivity;
149
+ /**
150
+ * "Real download progress arrived" — clears the stuck-at-zero watchdog. We
151
+ * deliberately wait for non-zero progress before clearing this so that an
152
+ * ota_status reply with stepPercent: 0 (which is "first activity" but not
153
+ * "real progress") doesn't disable the only watchdog that catches a wedged
154
+ * download.
155
+ */
156
+ private onFirstNonZeroProgress;
157
+ private maybeStartGlobalTimeout;
158
+ private armAckAndStuckWatchdogsOnly;
159
+ private sendOtaStartWithWatchdogs;
160
+ /**
161
+ * After sending ota_query_status, wait QUERY_REPLY_TIMEOUT_MS for the glasses
162
+ * to reply with a useful ota_status. If nothing arrives (e.g. the glasses'
163
+ * OTA session was wiped between mount and reconnect), or the glasses reply
164
+ * with an explicit "idle" status (no session), fall back to ota_start so the
165
+ * user doesn't sit on a spinner forever.
166
+ *
167
+ * Cleared as soon as a non-idle otaStatus or any otaProgress lands in the
168
+ * store (see the reaction block above). An idle reply intentionally does NOT
169
+ * cancel the fallback, so reconnects against a wiped/lost session still recover.
170
+ */
171
+ private armQueryReplyFallback;
172
+ private clearProgressTimeout;
173
+ private clearRetryTimeout;
174
+ private clearStuckTimeout;
175
+ private clearGlobalTimeout;
176
+ private clearPostApkDelay;
177
+ private clearPingInterval;
178
+ private clearQueryReplyTimeout;
179
+ private clearContinueLockoutTimer;
180
+ private clearLegacyApkSettleTimer;
181
+ private clearMtkSimulationTimers;
182
+ /**
183
+ * NOTE (WP 8C): the legacy apk settle timer and the MTK stall simulation timers are
184
+ * deliberately NOT per-step watchdogs — a per-step failure must not kill them (the
185
+ * legacy screen kept the simulation ticking through a watchdog failure, and the
186
+ * settle latch resolves completion, not liveness). They are cleared on detach,
187
+ * retry(), global timeout, and their own supersession paths.
188
+ */
189
+ private clearPerStepTimers;
190
+ private clearAllOtaTimers;
191
+ }
192
+ /** Singleton — one install session machine per app process (matches the single progress screen). */
193
+ export declare const otaInstallCoordinator: OtaInstallCoordinator;
194
+ export {};
195
+ //# sourceMappingURL=OtaInstallCoordinator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"OtaInstallCoordinator.d.ts","sourceRoot":"","sources":["../../src/services/OtaInstallCoordinator.ts"],"names":[],"mappings":"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"}