@glassly/engine 0.1.0-dev.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.
- package/README.md +96 -0
- package/build/devtools.d.ts +11 -0
- package/build/devtools.d.ts.map +1 -0
- package/build/devtools.js +13 -0
- package/build/devtools.js.map +1 -0
- package/build/engine.d.ts +336 -0
- package/build/engine.d.ts.map +1 -0
- package/build/engine.js +198 -0
- package/build/engine.js.map +1 -0
- package/build/facades/dev.d.ts +69 -0
- package/build/facades/dev.d.ts.map +1 -0
- package/build/facades/dev.js +204 -0
- package/build/facades/dev.js.map +1 -0
- package/build/facades/display.d.ts +21 -0
- package/build/facades/display.d.ts.map +1 -0
- package/build/facades/display.js +17 -0
- package/build/facades/display.js.map +1 -0
- package/build/facades/displayMirror.d.ts +15 -0
- package/build/facades/displayMirror.d.ts.map +1 -0
- package/build/facades/displayMirror.js +29 -0
- package/build/facades/displayMirror.js.map +1 -0
- package/build/facades/gallery.d.ts +62 -0
- package/build/facades/gallery.d.ts.map +1 -0
- package/build/facades/gallery.js +61 -0
- package/build/facades/gallery.js.map +1 -0
- package/build/facades/glasses.d.ts +142 -0
- package/build/facades/glasses.d.ts.map +1 -0
- package/build/facades/glasses.js +214 -0
- package/build/facades/glasses.js.map +1 -0
- package/build/facades/glassesSettings.d.ts +13 -0
- package/build/facades/glassesSettings.d.ts.map +1 -0
- package/build/facades/glassesSettings.js +55 -0
- package/build/facades/glassesSettings.js.map +1 -0
- package/build/facades/glassesWifi.d.ts +25 -0
- package/build/facades/glassesWifi.d.ts.map +1 -0
- package/build/facades/glassesWifi.js +57 -0
- package/build/facades/glassesWifi.js.map +1 -0
- package/build/facades/maps.d.ts +18 -0
- package/build/facades/maps.d.ts.map +1 -0
- package/build/facades/maps.js +13 -0
- package/build/facades/maps.js.map +1 -0
- package/build/facades/memory.d.ts +38 -0
- package/build/facades/memory.d.ts.map +1 -0
- package/build/facades/memory.js +33 -0
- package/build/facades/memory.js.map +1 -0
- package/build/facades/miniapps.d.ts +47 -0
- package/build/facades/miniapps.d.ts.map +1 -0
- package/build/facades/miniapps.js +54 -0
- package/build/facades/miniapps.js.map +1 -0
- package/build/facades/notifications.d.ts +13 -0
- package/build/facades/notifications.d.ts.map +1 -0
- package/build/facades/notifications.js +12 -0
- package/build/facades/notifications.js.map +1 -0
- package/build/facades/ota.d.ts +106 -0
- package/build/facades/ota.d.ts.map +1 -0
- package/build/facades/ota.js +159 -0
- package/build/facades/ota.js.map +1 -0
- package/build/facades/pairing.d.ts +115 -0
- package/build/facades/pairing.d.ts.map +1 -0
- package/build/facades/pairing.js +275 -0
- package/build/facades/pairing.js.map +1 -0
- package/build/facades/permissions.d.ts +33 -0
- package/build/facades/permissions.d.ts.map +1 -0
- package/build/facades/permissions.js +155 -0
- package/build/facades/permissions.js.map +1 -0
- package/build/facades/phoneNotifications.d.ts +17 -0
- package/build/facades/phoneNotifications.d.ts.map +1 -0
- package/build/facades/phoneNotifications.js +41 -0
- package/build/facades/phoneNotifications.js.map +1 -0
- package/build/facades/providerKeys.d.ts +26 -0
- package/build/facades/providerKeys.d.ts.map +1 -0
- package/build/facades/providerKeys.js +26 -0
- package/build/facades/providerKeys.js.map +1 -0
- package/build/facades/reports.d.ts +36 -0
- package/build/facades/reports.d.ts.map +1 -0
- package/build/facades/reports.js +134 -0
- package/build/facades/reports.js.map +1 -0
- package/build/facades/session.d.ts +21 -0
- package/build/facades/session.d.ts.map +1 -0
- package/build/facades/session.js +52 -0
- package/build/facades/session.js.map +1 -0
- package/build/facades/settings.d.ts +37 -0
- package/build/facades/settings.d.ts.map +1 -0
- package/build/facades/settings.js +55 -0
- package/build/facades/settings.js.map +1 -0
- package/build/facades/speakers.d.ts +41 -0
- package/build/facades/speakers.d.ts.map +1 -0
- package/build/facades/speakers.js +139 -0
- package/build/facades/speakers.js.map +1 -0
- package/build/facades/speech.d.ts +44 -0
- package/build/facades/speech.d.ts.map +1 -0
- package/build/facades/speech.js +46 -0
- package/build/facades/speech.js.map +1 -0
- package/build/index.d.ts +48 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +49 -0
- package/build/index.js.map +1 -0
- package/build/internal.d.ts +67 -0
- package/build/internal.d.ts.map +1 -0
- package/build/internal.js +90 -0
- package/build/internal.js.map +1 -0
- package/build/runtime/bootstrap.d.ts +115 -0
- package/build/runtime/bootstrap.d.ts.map +1 -0
- package/build/runtime/bootstrap.js +73 -0
- package/build/runtime/bootstrap.js.map +1 -0
- package/build/runtime/config.d.ts +152 -0
- package/build/runtime/config.d.ts.map +1 -0
- package/build/runtime/config.js +19 -0
- package/build/runtime/config.js.map +1 -0
- package/build/runtime/scanQrSeam.d.ts +7 -0
- package/build/runtime/scanQrSeam.d.ts.map +1 -0
- package/build/runtime/scanQrSeam.js +16 -0
- package/build/runtime/scanQrSeam.js.map +1 -0
- package/build/runtime/streamConfig.d.ts +4 -0
- package/build/runtime/streamConfig.d.ts.map +1 -0
- package/build/runtime/streamConfig.js +38 -0
- package/build/runtime/streamConfig.js.map +1 -0
- package/build/services/AiTierResolution.d.ts +61 -0
- package/build/services/AiTierResolution.d.ts.map +1 -0
- package/build/services/AiTierResolution.js +83 -0
- package/build/services/AiTierResolution.js.map +1 -0
- package/build/services/AppRegistry.d.ts +303 -0
- package/build/services/AppRegistry.d.ts.map +1 -0
- package/build/services/AppRegistry.js +1108 -0
- package/build/services/AppRegistry.js.map +1 -0
- package/build/services/AudioCloudUplink.d.ts +15 -0
- package/build/services/AudioCloudUplink.d.ts.map +1 -0
- package/build/services/AudioCloudUplink.js +54 -0
- package/build/services/AudioCloudUplink.js.map +1 -0
- package/build/services/AudioPlaybackService.d.ts +183 -0
- package/build/services/AudioPlaybackService.d.ts.map +1 -0
- package/build/services/AudioPlaybackService.js +750 -0
- package/build/services/AudioPlaybackService.js.map +1 -0
- package/build/services/AutomaticReportResult.d.ts +20 -0
- package/build/services/AutomaticReportResult.d.ts.map +1 -0
- package/build/services/AutomaticReportResult.js +29 -0
- package/build/services/AutomaticReportResult.js.map +1 -0
- package/build/services/BlobStore.d.ts +106 -0
- package/build/services/BlobStore.d.ts.map +1 -0
- package/build/services/BlobStore.js +741 -0
- package/build/services/BlobStore.js.map +1 -0
- package/build/services/CaptionsTesterReportService.d.ts +4 -0
- package/build/services/CaptionsTesterReportService.d.ts.map +1 -0
- package/build/services/CaptionsTesterReportService.js +80 -0
- package/build/services/CaptionsTesterReportService.js.map +1 -0
- package/build/services/CloudAudioSubscriptionSync.d.ts +24 -0
- package/build/services/CloudAudioSubscriptionSync.d.ts.map +1 -0
- package/build/services/CloudAudioSubscriptionSync.js +51 -0
- package/build/services/CloudAudioSubscriptionSync.js.map +1 -0
- package/build/services/CloudClientService.d.ts +293 -0
- package/build/services/CloudClientService.d.ts.map +1 -0
- package/build/services/CloudClientService.js +965 -0
- package/build/services/CloudClientService.js.map +1 -0
- package/build/services/CloudTranscriptE2EMetrics.d.ts +4 -0
- package/build/services/CloudTranscriptE2EMetrics.d.ts.map +1 -0
- package/build/services/CloudTranscriptE2EMetrics.js +24 -0
- package/build/services/CloudTranscriptE2EMetrics.js.map +1 -0
- package/build/services/ConnectionCoordinator.d.ts +51 -0
- package/build/services/ConnectionCoordinator.d.ts.map +1 -0
- package/build/services/ConnectionCoordinator.js +34 -0
- package/build/services/ConnectionCoordinator.js.map +1 -0
- package/build/services/DevServerBridge.d.ts +63 -0
- package/build/services/DevServerBridge.d.ts.map +1 -0
- package/build/services/DevServerBridge.js +296 -0
- package/build/services/DevServerBridge.js.map +1 -0
- package/build/services/DeviceEventRouter.d.ts +3 -0
- package/build/services/DeviceEventRouter.d.ts.map +1 -0
- package/build/services/DeviceEventRouter.js +214 -0
- package/build/services/DeviceEventRouter.js.map +1 -0
- package/build/services/DeviceStoreHydration.d.ts +38 -0
- package/build/services/DeviceStoreHydration.d.ts.map +1 -0
- package/build/services/DeviceStoreHydration.js +124 -0
- package/build/services/DeviceStoreHydration.js.map +1 -0
- package/build/services/DisplayProcessor.d.ts +223 -0
- package/build/services/DisplayProcessor.d.ts.map +1 -0
- package/build/services/DisplayProcessor.js +552 -0
- package/build/services/DisplayProcessor.js.map +1 -0
- package/build/services/ForegroundLocationPermission.d.ts +13 -0
- package/build/services/ForegroundLocationPermission.d.ts.map +1 -0
- package/build/services/ForegroundLocationPermission.js +12 -0
- package/build/services/ForegroundLocationPermission.js.map +1 -0
- package/build/services/GlassesReadiness.d.ts +41 -0
- package/build/services/GlassesReadiness.d.ts.map +1 -0
- package/build/services/GlassesReadiness.js +82 -0
- package/build/services/GlassesReadiness.js.map +1 -0
- package/build/services/GlassesSettingsSync.d.ts +33 -0
- package/build/services/GlassesSettingsSync.d.ts.map +1 -0
- package/build/services/GlassesSettingsSync.js +127 -0
- package/build/services/GlassesSettingsSync.js.map +1 -0
- package/build/services/GlassesStatusProjection.d.ts +3 -0
- package/build/services/GlassesStatusProjection.d.ts.map +1 -0
- package/build/services/GlassesStatusProjection.js +65 -0
- package/build/services/GlassesStatusProjection.js.map +1 -0
- package/build/services/HeadingService.d.ts +33 -0
- package/build/services/HeadingService.d.ts.map +1 -0
- package/build/services/HeadingService.js +123 -0
- package/build/services/HeadingService.js.map +1 -0
- package/build/services/HotspotOtaTransport.d.ts +29 -0
- package/build/services/HotspotOtaTransport.d.ts.map +1 -0
- package/build/services/HotspotOtaTransport.js +146 -0
- package/build/services/HotspotOtaTransport.js.map +1 -0
- package/build/services/HotspotShutdown.d.ts +17 -0
- package/build/services/HotspotShutdown.d.ts.map +1 -0
- package/build/services/HotspotShutdown.js +29 -0
- package/build/services/HotspotShutdown.js.map +1 -0
- package/build/services/JSCrashController.d.ts +97 -0
- package/build/services/JSCrashController.d.ts.map +1 -0
- package/build/services/JSCrashController.js +138 -0
- package/build/services/JSCrashController.js.map +1 -0
- package/build/services/JSCrashloopReportService.d.ts +9 -0
- package/build/services/JSCrashloopReportService.d.ts.map +1 -0
- package/build/services/JSCrashloopReportService.js +54 -0
- package/build/services/JSCrashloopReportService.js.map +1 -0
- package/build/services/JSLogPipeline.d.ts +87 -0
- package/build/services/JSLogPipeline.d.ts.map +1 -0
- package/build/services/JSLogPipeline.js +137 -0
- package/build/services/JSLogPipeline.js.map +1 -0
- package/build/services/JSRouter.d.ts +203 -0
- package/build/services/JSRouter.d.ts.map +1 -0
- package/build/services/JSRouter.js +482 -0
- package/build/services/JSRouter.js.map +1 -0
- package/build/services/LocalDisplayManager.d.ts +162 -0
- package/build/services/LocalDisplayManager.d.ts.map +1 -0
- package/build/services/LocalDisplayManager.js +687 -0
- package/build/services/LocalDisplayManager.js.map +1 -0
- package/build/services/LocalMiniappDataMigration.d.ts +46 -0
- package/build/services/LocalMiniappDataMigration.d.ts.map +1 -0
- package/build/services/LocalMiniappDataMigration.js +78 -0
- package/build/services/LocalMiniappDataMigration.js.map +1 -0
- package/build/services/LocalMiniappRuntime.d.ts +677 -0
- package/build/services/LocalMiniappRuntime.d.ts.map +1 -0
- package/build/services/LocalMiniappRuntime.js +5068 -0
- package/build/services/LocalMiniappRuntime.js.map +1 -0
- package/build/services/LocalMiniappStorage.d.ts +32 -0
- package/build/services/LocalMiniappStorage.d.ts.map +1 -0
- package/build/services/LocalMiniappStorage.js +66 -0
- package/build/services/LocalMiniappStorage.js.map +1 -0
- package/build/services/LocalMiniappUserIdentity.d.ts +41 -0
- package/build/services/LocalMiniappUserIdentity.d.ts.map +1 -0
- package/build/services/LocalMiniappUserIdentity.js +73 -0
- package/build/services/LocalMiniappUserIdentity.js.map +1 -0
- package/build/services/LocalSttFallbackCoordinator.d.ts +101 -0
- package/build/services/LocalSttFallbackCoordinator.d.ts.map +1 -0
- package/build/services/LocalSttFallbackCoordinator.js +210 -0
- package/build/services/LocalSttFallbackCoordinator.js.map +1 -0
- package/build/services/MapboxTokenService.d.ts +33 -0
- package/build/services/MapboxTokenService.d.ts.map +1 -0
- package/build/services/MapboxTokenService.js +115 -0
- package/build/services/MapboxTokenService.js.map +1 -0
- package/build/services/MemoryCapture.d.ts +40 -0
- package/build/services/MemoryCapture.d.ts.map +1 -0
- package/build/services/MemoryCapture.js +42 -0
- package/build/services/MemoryCapture.js.map +1 -0
- package/build/services/MemoryStore.d.ts +184 -0
- package/build/services/MemoryStore.d.ts.map +1 -0
- package/build/services/MemoryStore.js +541 -0
- package/build/services/MemoryStore.js.map +1 -0
- package/build/services/MicStateCoordinator.d.ts +78 -0
- package/build/services/MicStateCoordinator.d.ts.map +1 -0
- package/build/services/MicStateCoordinator.js +219 -0
- package/build/services/MicStateCoordinator.js.map +1 -0
- package/build/services/MiniappEngine.d.ts +31 -0
- package/build/services/MiniappEngine.d.ts.map +1 -0
- package/build/services/MiniappEngine.js +119 -0
- package/build/services/MiniappEngine.js.map +1 -0
- package/build/services/MiniappLauncher.d.ts +127 -0
- package/build/services/MiniappLauncher.d.ts.map +1 -0
- package/build/services/MiniappLauncher.js +309 -0
- package/build/services/MiniappLauncher.js.map +1 -0
- package/build/services/MiniappLiveness.d.ts +12 -0
- package/build/services/MiniappLiveness.d.ts.map +1 -0
- package/build/services/MiniappLiveness.js +16 -0
- package/build/services/MiniappLiveness.js.map +1 -0
- package/build/services/MiniappRunningRegistry.d.ts +24 -0
- package/build/services/MiniappRunningRegistry.d.ts.map +1 -0
- package/build/services/MiniappRunningRegistry.js +52 -0
- package/build/services/MiniappRunningRegistry.js.map +1 -0
- package/build/services/NativeHttpResponse.d.ts +3 -0
- package/build/services/NativeHttpResponse.d.ts.map +1 -0
- package/build/services/NativeHttpResponse.js +6 -0
- package/build/services/NativeHttpResponse.js.map +1 -0
- package/build/services/NativeNavigationService.d.ts +51 -0
- package/build/services/NativeNavigationService.d.ts.map +1 -0
- package/build/services/NativeNavigationService.js +154 -0
- package/build/services/NativeNavigationService.js.map +1 -0
- package/build/services/NavigationHandlers.d.ts +107 -0
- package/build/services/NavigationHandlers.d.ts.map +1 -0
- package/build/services/NavigationHandlers.js +479 -0
- package/build/services/NavigationHandlers.js.map +1 -0
- package/build/services/NavigationService.d.ts +283 -0
- package/build/services/NavigationService.d.ts.map +1 -0
- package/build/services/NavigationService.js +696 -0
- package/build/services/NavigationService.js.map +1 -0
- package/build/services/NotificationsEmitter.d.ts +28 -0
- package/build/services/NotificationsEmitter.d.ts.map +1 -0
- package/build/services/NotificationsEmitter.js +22 -0
- package/build/services/NotificationsEmitter.js.map +1 -0
- package/build/services/OfflineSpeechModelService.d.ts +33 -0
- package/build/services/OfflineSpeechModelService.d.ts.map +1 -0
- package/build/services/OfflineSpeechModelService.js +136 -0
- package/build/services/OfflineSpeechModelService.js.map +1 -0
- package/build/services/OtaArtifactDownloader.d.ts +65 -0
- package/build/services/OtaArtifactDownloader.d.ts.map +1 -0
- package/build/services/OtaArtifactDownloader.js +226 -0
- package/build/services/OtaArtifactDownloader.js.map +1 -0
- package/build/services/OtaInstallCoordinator.d.ts +275 -0
- package/build/services/OtaInstallCoordinator.d.ts.map +1 -0
- package/build/services/OtaInstallCoordinator.js +1491 -0
- package/build/services/OtaInstallCoordinator.js.map +1 -0
- package/build/services/OtaService.d.ts +3 -0
- package/build/services/OtaService.d.ts.map +1 -0
- package/build/services/OtaService.js +72 -0
- package/build/services/OtaService.js.map +1 -0
- package/build/services/OtaUpdateCheckService.d.ts +100 -0
- package/build/services/OtaUpdateCheckService.d.ts.map +1 -0
- package/build/services/OtaUpdateCheckService.js +380 -0
- package/build/services/OtaUpdateCheckService.js.map +1 -0
- package/build/services/PairingIdentity.d.ts +80 -0
- package/build/services/PairingIdentity.d.ts.map +1 -0
- package/build/services/PairingIdentity.js +145 -0
- package/build/services/PairingIdentity.js.map +1 -0
- package/build/services/PhoneCalendarHelpers.d.ts +32 -0
- package/build/services/PhoneCalendarHelpers.d.ts.map +1 -0
- package/build/services/PhoneCalendarHelpers.js +157 -0
- package/build/services/PhoneCalendarHelpers.js.map +1 -0
- package/build/services/PhoneCalendarService.d.ts +5 -0
- package/build/services/PhoneCalendarService.d.ts.map +1 -0
- package/build/services/PhoneCalendarService.js +45 -0
- package/build/services/PhoneCalendarService.js.map +1 -0
- package/build/services/PhoneCameraFovCoordinator.d.ts +30 -0
- package/build/services/PhoneCameraFovCoordinator.d.ts.map +1 -0
- package/build/services/PhoneCameraFovCoordinator.js +194 -0
- package/build/services/PhoneCameraFovCoordinator.js.map +1 -0
- package/build/services/PhoneLocationService.d.ts +36 -0
- package/build/services/PhoneLocationService.d.ts.map +1 -0
- package/build/services/PhoneLocationService.js +115 -0
- package/build/services/PhoneLocationService.js.map +1 -0
- package/build/services/PhoneNotificationsSync.d.ts +3 -0
- package/build/services/PhoneNotificationsSync.d.ts.map +1 -0
- package/build/services/PhoneNotificationsSync.js +37 -0
- package/build/services/PhoneNotificationsSync.js.map +1 -0
- package/build/services/PhonePhotoCoordinator.d.ts +110 -0
- package/build/services/PhonePhotoCoordinator.d.ts.map +1 -0
- package/build/services/PhonePhotoCoordinator.js +344 -0
- package/build/services/PhonePhotoCoordinator.js.map +1 -0
- package/build/services/PhoneStreamCoordinator.d.ts +175 -0
- package/build/services/PhoneStreamCoordinator.d.ts.map +1 -0
- package/build/services/PhoneStreamCoordinator.js +740 -0
- package/build/services/PhoneStreamCoordinator.js.map +1 -0
- package/build/services/PhoneVideoCoordinator.d.ts +52 -0
- package/build/services/PhoneVideoCoordinator.d.ts.map +1 -0
- package/build/services/PhoneVideoCoordinator.js +157 -0
- package/build/services/PhoneVideoCoordinator.js.map +1 -0
- package/build/services/ProviderKeyValidation.d.ts +27 -0
- package/build/services/ProviderKeyValidation.d.ts.map +1 -0
- package/build/services/ProviderKeyValidation.js +42 -0
- package/build/services/ProviderKeyValidation.js.map +1 -0
- package/build/services/STTModelManager.d.ts +65 -0
- package/build/services/STTModelManager.d.ts.map +1 -0
- package/build/services/STTModelManager.js +366 -0
- package/build/services/STTModelManager.js.map +1 -0
- package/build/services/SceneRenderer.d.ts +90 -0
- package/build/services/SceneRenderer.d.ts.map +1 -0
- package/build/services/SceneRenderer.js +274 -0
- package/build/services/SceneRenderer.js.map +1 -0
- package/build/services/SentenceTtsPipeline.d.ts +31 -0
- package/build/services/SentenceTtsPipeline.d.ts.map +1 -0
- package/build/services/SentenceTtsPipeline.js +67 -0
- package/build/services/SentenceTtsPipeline.js.map +1 -0
- package/build/services/SpeakerIdModelManager.d.ts +36 -0
- package/build/services/SpeakerIdModelManager.d.ts.map +1 -0
- package/build/services/SpeakerIdModelManager.js +132 -0
- package/build/services/SpeakerIdModelManager.js.map +1 -0
- package/build/services/SpeakerIdSync.d.ts +14 -0
- package/build/services/SpeakerIdSync.d.ts.map +1 -0
- package/build/services/SpeakerIdSync.js +62 -0
- package/build/services/SpeakerIdSync.js.map +1 -0
- package/build/services/SpeakerLabelResolver.d.ts +80 -0
- package/build/services/SpeakerLabelResolver.d.ts.map +1 -0
- package/build/services/SpeakerLabelResolver.js +108 -0
- package/build/services/SpeakerLabelResolver.js.map +1 -0
- package/build/services/SpeakerProfileStore.d.ts +90 -0
- package/build/services/SpeakerProfileStore.d.ts.map +1 -0
- package/build/services/SpeakerProfileStore.js +213 -0
- package/build/services/SpeakerProfileStore.js.map +1 -0
- package/build/services/SpeakerSegmentResolver.d.ts +87 -0
- package/build/services/SpeakerSegmentResolver.d.ts.map +1 -0
- package/build/services/SpeakerSegmentResolver.js +137 -0
- package/build/services/SpeakerSegmentResolver.js.map +1 -0
- package/build/services/StreamLifecycleController.d.ts +63 -0
- package/build/services/StreamLifecycleController.d.ts.map +1 -0
- package/build/services/StreamLifecycleController.js +148 -0
- package/build/services/StreamLifecycleController.js.map +1 -0
- package/build/services/SupportProfileSync.d.ts +22 -0
- package/build/services/SupportProfileSync.d.ts.map +1 -0
- package/build/services/SupportProfileSync.js +213 -0
- package/build/services/SupportProfileSync.js.map +1 -0
- package/build/services/TTSModelManager.d.ts +90 -0
- package/build/services/TTSModelManager.d.ts.map +1 -0
- package/build/services/TTSModelManager.js +366 -0
- package/build/services/TTSModelManager.js.map +1 -0
- package/build/services/TranscriptionRouting.d.ts +22 -0
- package/build/services/TranscriptionRouting.d.ts.map +1 -0
- package/build/services/TranscriptionRouting.js +34 -0
- package/build/services/TranscriptionRouting.js.map +1 -0
- package/build/services/TtsTextSanitizer.d.ts +5 -0
- package/build/services/TtsTextSanitizer.d.ts.map +1 -0
- package/build/services/TtsTextSanitizer.js +61 -0
- package/build/services/TtsTextSanitizer.js.map +1 -0
- package/build/services/UIRouter.d.ts +137 -0
- package/build/services/UIRouter.d.ts.map +1 -0
- package/build/services/UIRouter.js +210 -0
- package/build/services/UIRouter.js.map +1 -0
- package/build/services/WebviewBridge.d.ts +22 -0
- package/build/services/WebviewBridge.d.ts.map +1 -0
- package/build/services/WebviewBridge.js +47 -0
- package/build/services/WebviewBridge.js.map +1 -0
- package/build/services/WifiAdbRequest.d.ts +17 -0
- package/build/services/WifiAdbRequest.d.ts.map +1 -0
- package/build/services/WifiAdbRequest.js +35 -0
- package/build/services/WifiAdbRequest.js.map +1 -0
- package/build/services/asg/GalleryMediaIntegrityReportService.d.ts +17 -0
- package/build/services/asg/GalleryMediaIntegrityReportService.d.ts.map +1 -0
- package/build/services/asg/GalleryMediaIntegrityReportService.js +43 -0
- package/build/services/asg/GalleryMediaIntegrityReportService.js.map +1 -0
- package/build/services/asg/asgCameraApi.d.ts +208 -0
- package/build/services/asg/asgCameraApi.d.ts.map +1 -0
- package/build/services/asg/asgCameraApi.js +1480 -0
- package/build/services/asg/asgCameraApi.js.map +1 -0
- package/build/services/asg/cameraRollExportCoordinator.d.ts +60 -0
- package/build/services/asg/cameraRollExportCoordinator.d.ts.map +1 -0
- package/build/services/asg/cameraRollExportCoordinator.js +618 -0
- package/build/services/asg/cameraRollExportCoordinator.js.map +1 -0
- package/build/services/asg/cameraRollExportLedger.d.ts +44 -0
- package/build/services/asg/cameraRollExportLedger.d.ts.map +1 -0
- package/build/services/asg/cameraRollExportLedger.js +78 -0
- package/build/services/asg/cameraRollExportLedger.js.map +1 -0
- package/build/services/asg/galleryMediaValidation.d.ts +29 -0
- package/build/services/asg/galleryMediaValidation.d.ts.map +1 -0
- package/build/services/asg/galleryMediaValidation.js +149 -0
- package/build/services/asg/galleryMediaValidation.js.map +1 -0
- package/build/services/asg/galleryNotices.d.ts +33 -0
- package/build/services/asg/galleryNotices.d.ts.map +1 -0
- package/build/services/asg/galleryNotices.js +29 -0
- package/build/services/asg/galleryNotices.js.map +1 -0
- package/build/services/asg/galleryPathMigration.d.ts +3 -0
- package/build/services/asg/galleryPathMigration.d.ts.map +1 -0
- package/build/services/asg/galleryPathMigration.js +26 -0
- package/build/services/asg/galleryPathMigration.js.map +1 -0
- package/build/services/asg/gallerySettingsService.d.ts +20 -0
- package/build/services/asg/gallerySettingsService.d.ts.map +1 -0
- package/build/services/asg/gallerySettingsService.js +53 -0
- package/build/services/asg/gallerySettingsService.js.map +1 -0
- package/build/services/asg/gallerySyncNotifications.d.ts +56 -0
- package/build/services/asg/gallerySyncNotifications.d.ts.map +1 -0
- package/build/services/asg/gallerySyncNotifications.js +198 -0
- package/build/services/asg/gallerySyncNotifications.js.map +1 -0
- package/build/services/asg/gallerySyncService.d.ts +137 -0
- package/build/services/asg/gallerySyncService.d.ts.map +1 -0
- package/build/services/asg/gallerySyncService.js +1945 -0
- package/build/services/asg/gallerySyncService.js.map +1 -0
- package/build/services/asg/galleryTransferLedger.d.ts +58 -0
- package/build/services/asg/galleryTransferLedger.d.ts.map +1 -0
- package/build/services/asg/galleryTransferLedger.js +225 -0
- package/build/services/asg/galleryTransferLedger.js.map +1 -0
- package/build/services/asg/localNetworkTransport.d.ts +15 -0
- package/build/services/asg/localNetworkTransport.d.ts.map +1 -0
- package/build/services/asg/localNetworkTransport.js +144 -0
- package/build/services/asg/localNetworkTransport.js.map +1 -0
- package/build/services/asg/localStorageService.d.ts +146 -0
- package/build/services/asg/localStorageService.d.ts.map +1 -0
- package/build/services/asg/localStorageService.js +572 -0
- package/build/services/asg/localStorageService.js.map +1 -0
- package/build/services/asg/mediaProcessingQueue.d.ts +70 -0
- package/build/services/asg/mediaProcessingQueue.d.ts.map +1 -0
- package/build/services/asg/mediaProcessingQueue.js +451 -0
- package/build/services/asg/mediaProcessingQueue.js.map +1 -0
- package/build/services/audioPlaybackAssets.d.ts +8 -0
- package/build/services/audioPlaybackAssets.d.ts.map +1 -0
- package/build/services/audioPlaybackAssets.js +7 -0
- package/build/services/audioPlaybackAssets.js.map +1 -0
- package/build/services/blobPaths.d.ts +31 -0
- package/build/services/blobPaths.d.ts.map +1 -0
- package/build/services/blobPaths.js +86 -0
- package/build/services/blobPaths.js.map +1 -0
- package/build/services/cloudStreamApi.d.ts +59 -0
- package/build/services/cloudStreamApi.d.ts.map +1 -0
- package/build/services/cloudStreamApi.js +81 -0
- package/build/services/cloudStreamApi.js.map +1 -0
- package/build/services/effectiveCapabilities.d.ts +8 -0
- package/build/services/effectiveCapabilities.d.ts.map +1 -0
- package/build/services/effectiveCapabilities.js +23 -0
- package/build/services/effectiveCapabilities.js.map +1 -0
- package/build/services/gallerySyncClock.d.ts +17 -0
- package/build/services/gallerySyncClock.d.ts.map +1 -0
- package/build/services/gallerySyncClock.js +21 -0
- package/build/services/gallerySyncClock.js.map +1 -0
- package/build/services/glassesClockSync.d.ts +20 -0
- package/build/services/glassesClockSync.d.ts.map +1 -0
- package/build/services/glassesClockSync.js +97 -0
- package/build/services/glassesClockSync.js.map +1 -0
- package/build/services/manifestActions.d.ts +31 -0
- package/build/services/manifestActions.d.ts.map +1 -0
- package/build/services/manifestActions.js +54 -0
- package/build/services/manifestActions.js.map +1 -0
- package/build/services/manifestVersionGate.d.ts +28 -0
- package/build/services/manifestVersionGate.d.ts.map +1 -0
- package/build/services/manifestVersionGate.js +41 -0
- package/build/services/manifestVersionGate.js.map +1 -0
- package/build/services/memoryStoreInstance.d.ts +19 -0
- package/build/services/memoryStoreInstance.d.ts.map +1 -0
- package/build/services/memoryStoreInstance.js +65 -0
- package/build/services/memoryStoreInstance.js.map +1 -0
- package/build/services/navigation/roadNameResolver.d.ts +67 -0
- package/build/services/navigation/roadNameResolver.d.ts.map +1 -0
- package/build/services/navigation/roadNameResolver.js +87 -0
- package/build/services/navigation/roadNameResolver.js.map +1 -0
- package/build/services/navigation/routesApiCodec.d.ts +38 -0
- package/build/services/navigation/routesApiCodec.d.ts.map +1 -0
- package/build/services/navigation/routesApiCodec.js +68 -0
- package/build/services/navigation/routesApiCodec.js.map +1 -0
- package/build/services/otaDisplayState.d.ts +53 -0
- package/build/services/otaDisplayState.d.ts.map +1 -0
- package/build/services/otaDisplayState.js +114 -0
- package/build/services/otaDisplayState.js.map +1 -0
- package/build/services/otaInstallPolicy.d.ts +93 -0
- package/build/services/otaInstallPolicy.d.ts.map +1 -0
- package/build/services/otaInstallPolicy.js +117 -0
- package/build/services/otaInstallPolicy.js.map +1 -0
- package/build/services/otaLegacyMapping.d.ts +22 -0
- package/build/services/otaLegacyMapping.d.ts.map +1 -0
- package/build/services/otaLegacyMapping.js +56 -0
- package/build/services/otaLegacyMapping.js.map +1 -0
- package/build/services/otaManifestUrl.d.ts +2 -0
- package/build/services/otaManifestUrl.d.ts.map +1 -0
- package/build/services/otaManifestUrl.js +46 -0
- package/build/services/otaManifestUrl.js.map +1 -0
- package/build/services/slimStreamStatus.d.ts +18 -0
- package/build/services/slimStreamStatus.d.ts.map +1 -0
- package/build/services/slimStreamStatus.js +36 -0
- package/build/services/slimStreamStatus.js.map +1 -0
- package/build/services/soniox/SonioxDirectService.d.ts +109 -0
- package/build/services/soniox/SonioxDirectService.d.ts.map +1 -0
- package/build/services/soniox/SonioxDirectService.js +449 -0
- package/build/services/soniox/SonioxDirectService.js.map +1 -0
- package/build/services/soniox/SonioxRealtimeClient.d.ts +121 -0
- package/build/services/soniox/SonioxRealtimeClient.d.ts.map +1 -0
- package/build/services/soniox/SonioxRealtimeClient.js +301 -0
- package/build/services/soniox/SonioxRealtimeClient.js.map +1 -0
- package/build/services/soniox/SonioxTokenAssembler.d.ts +98 -0
- package/build/services/soniox/SonioxTokenAssembler.d.ts.map +1 -0
- package/build/services/soniox/SonioxTokenAssembler.js +394 -0
- package/build/services/soniox/SonioxTokenAssembler.js.map +1 -0
- package/build/services/speakerProfileStoreInstance.d.ts +8 -0
- package/build/services/speakerProfileStoreInstance.d.ts.map +1 -0
- package/build/services/speakerProfileStoreInstance.js +24 -0
- package/build/services/speakerProfileStoreInstance.js.map +1 -0
- package/build/services/uiShim.d.ts +38 -0
- package/build/services/uiShim.d.ts.map +1 -0
- package/build/services/uiShim.js +369 -0
- package/build/services/uiShim.js.map +1 -0
- package/build/stores/apps.d.ts +104 -0
- package/build/stores/apps.d.ts.map +1 -0
- package/build/stores/apps.js +503 -0
- package/build/stores/apps.js.map +1 -0
- package/build/stores/bluetoothSettingKeys.d.ts +4 -0
- package/build/stores/bluetoothSettingKeys.d.ts.map +1 -0
- package/build/stores/bluetoothSettingKeys.js +33 -0
- package/build/stores/bluetoothSettingKeys.js.map +1 -0
- package/build/stores/cloudClientStatus.d.ts +9 -0
- package/build/stores/cloudClientStatus.d.ts.map +1 -0
- package/build/stores/cloudClientStatus.js +24 -0
- package/build/stores/cloudClientStatus.js.map +1 -0
- package/build/stores/connection.d.ts +22 -0
- package/build/stores/connection.d.ts.map +1 -0
- package/build/stores/connection.js +43 -0
- package/build/stores/connection.js.map +1 -0
- package/build/stores/core.d.ts +15 -0
- package/build/stores/core.d.ts.map +1 -0
- package/build/stores/core.js +21 -0
- package/build/stores/core.js.map +1 -0
- package/build/stores/display.d.ts +24 -0
- package/build/stores/display.d.ts.map +1 -0
- package/build/stores/display.js +96 -0
- package/build/stores/display.js.map +1 -0
- package/build/stores/gallerySync.d.ts +103 -0
- package/build/stores/gallerySync.d.ts.map +1 -0
- package/build/stores/gallerySync.js +219 -0
- package/build/stores/gallerySync.js.map +1 -0
- package/build/stores/glasses.d.ts +62 -0
- package/build/stores/glasses.d.ts.map +1 -0
- package/build/stores/glasses.js +208 -0
- package/build/stores/glasses.js.map +1 -0
- package/build/stores/settings.d.ts +54 -0
- package/build/stores/settings.d.ts.map +1 -0
- package/build/stores/settings.js +1200 -0
- package/build/stores/settings.js.map +1 -0
- package/build/stores/transcriptionDebug.d.ts +25 -0
- package/build/stores/transcriptionDebug.d.ts.map +1 -0
- package/build/stores/transcriptionDebug.js +0 -0
- package/build/stores/transcriptionDebug.js.map +1 -0
- package/build/types/applet.d.ts +101 -0
- package/build/types/applet.d.ts.map +1 -0
- package/build/types/applet.js +5 -0
- package/build/types/applet.js.map +1 -0
- package/build/types/asg.d.ts +53 -0
- package/build/types/asg.d.ts.map +1 -0
- package/build/types/asg.js +2 -0
- package/build/types/asg.js.map +1 -0
- package/build/types/capabilities/even-realities-g1.d.ts +12 -0
- package/build/types/capabilities/even-realities-g1.d.ts.map +1 -0
- package/build/types/capabilities/even-realities-g1.js +57 -0
- package/build/types/capabilities/even-realities-g1.js.map +1 -0
- package/build/types/capabilities/even-realities-g2.d.ts +12 -0
- package/build/types/capabilities/even-realities-g2.d.ts.map +1 -0
- package/build/types/capabilities/even-realities-g2.js +83 -0
- package/build/types/capabilities/even-realities-g2.js.map +1 -0
- package/build/types/capabilities/mentra-display.d.ts +12 -0
- package/build/types/capabilities/mentra-display.d.ts.map +1 -0
- package/build/types/capabilities/mentra-display.js +65 -0
- package/build/types/capabilities/mentra-display.js.map +1 -0
- package/build/types/capabilities/mentra-live.d.ts +12 -0
- package/build/types/capabilities/mentra-live.d.ts.map +1 -0
- package/build/types/capabilities/mentra-live.js +94 -0
- package/build/types/capabilities/mentra-live.js.map +1 -0
- package/build/types/capabilities/nimo.d.ts +13 -0
- package/build/types/capabilities/nimo.d.ts.map +1 -0
- package/build/types/capabilities/nimo.js +72 -0
- package/build/types/capabilities/nimo.js.map +1 -0
- package/build/types/capabilities/none.d.ts +13 -0
- package/build/types/capabilities/none.d.ts.map +1 -0
- package/build/types/capabilities/none.js +67 -0
- package/build/types/capabilities/none.js.map +1 -0
- package/build/types/capabilities/simulated-glasses.d.ts +13 -0
- package/build/types/capabilities/simulated-glasses.d.ts.map +1 -0
- package/build/types/capabilities/simulated-glasses.js +82 -0
- package/build/types/capabilities/simulated-glasses.js.map +1 -0
- package/build/types/capabilities/vuzix-z100.d.ts +12 -0
- package/build/types/capabilities/vuzix-z100.d.ts.map +1 -0
- package/build/types/capabilities/vuzix-z100.js +54 -0
- package/build/types/capabilities/vuzix-z100.js.map +1 -0
- package/build/types/enums.d.ts +22 -0
- package/build/types/enums.d.ts.map +1 -0
- package/build/types/enums.js +27 -0
- package/build/types/enums.js.map +1 -0
- package/build/types/hardware.d.ts +155 -0
- package/build/types/hardware.d.ts.map +1 -0
- package/build/types/hardware.js +52 -0
- package/build/types/hardware.js.map +1 -0
- package/build/types/index.d.ts +11 -0
- package/build/types/index.d.ts.map +1 -0
- package/build/types/index.js +10 -0
- package/build/types/index.js.map +1 -0
- package/build/utils/GlobalEventEmitter.d.ts +11 -0
- package/build/utils/GlobalEventEmitter.d.ts.map +1 -0
- package/build/utils/GlobalEventEmitter.js +14 -0
- package/build/utils/GlobalEventEmitter.js.map +1 -0
- package/build/utils/cloudClient/RnUdpAdapter.d.ts +3 -0
- package/build/utils/cloudClient/RnUdpAdapter.d.ts.map +1 -0
- package/build/utils/cloudClient/RnUdpAdapter.js +41 -0
- package/build/utils/cloudClient/RnUdpAdapter.js.map +1 -0
- package/build/utils/cloudClient/cloudSecureStore.d.ts +3 -0
- package/build/utils/cloudClient/cloudSecureStore.d.ts.map +1 -0
- package/build/utils/cloudClient/cloudSecureStore.js +26 -0
- package/build/utils/cloudClient/cloudSecureStore.js.map +1 -0
- package/build/utils/configuredDevHost.d.ts +6 -0
- package/build/utils/configuredDevHost.d.ts.map +1 -0
- package/build/utils/configuredDevHost.js +19 -0
- package/build/utils/configuredDevHost.js.map +1 -0
- package/build/utils/debouncedPatch.d.ts +6 -0
- package/build/utils/debouncedPatch.d.ts.map +1 -0
- package/build/utils/debouncedPatch.js +25 -0
- package/build/utils/debouncedPatch.js.map +1 -0
- package/build/utils/devLogging.d.ts +26 -0
- package/build/utils/devLogging.d.ts.map +1 -0
- package/build/utils/devLogging.js +116 -0
- package/build/utils/devLogging.js.map +1 -0
- package/build/utils/devMiniappLaunch.d.ts +55 -0
- package/build/utils/devMiniappLaunch.d.ts.map +1 -0
- package/build/utils/devMiniappLaunch.js +175 -0
- package/build/utils/devMiniappLaunch.js.map +1 -0
- package/build/utils/diagnosticContext.d.ts +3 -0
- package/build/utils/diagnosticContext.d.ts.map +1 -0
- package/build/utils/diagnosticContext.js +122 -0
- package/build/utils/diagnosticContext.js.map +1 -0
- package/build/utils/display/composer/ColumnComposer.d.ts +131 -0
- package/build/utils/display/composer/ColumnComposer.d.ts.map +1 -0
- package/build/utils/display/composer/ColumnComposer.js +204 -0
- package/build/utils/display/composer/ColumnComposer.js.map +1 -0
- package/build/utils/display/composer/index.d.ts +9 -0
- package/build/utils/display/composer/index.d.ts.map +1 -0
- package/build/utils/display/composer/index.js +9 -0
- package/build/utils/display/composer/index.js.map +1 -0
- package/build/utils/display/helpers/DisplayHelpers.d.ts +165 -0
- package/build/utils/display/helpers/DisplayHelpers.d.ts.map +1 -0
- package/build/utils/display/helpers/DisplayHelpers.js +312 -0
- package/build/utils/display/helpers/DisplayHelpers.js.map +1 -0
- package/build/utils/display/helpers/ScrollView.d.ts +183 -0
- package/build/utils/display/helpers/ScrollView.d.ts.map +1 -0
- package/build/utils/display/helpers/ScrollView.js +257 -0
- package/build/utils/display/helpers/ScrollView.js.map +1 -0
- package/build/utils/display/helpers/index.d.ts +11 -0
- package/build/utils/display/helpers/index.d.ts.map +1 -0
- package/build/utils/display/helpers/index.js +10 -0
- package/build/utils/display/helpers/index.js.map +1 -0
- package/build/utils/display/index.d.ts +174 -0
- package/build/utils/display/index.d.ts.map +1 -0
- package/build/utils/display/index.js +188 -0
- package/build/utils/display/index.js.map +1 -0
- package/build/utils/display/measurer/TextMeasurer.d.ts +160 -0
- package/build/utils/display/measurer/TextMeasurer.d.ts.map +1 -0
- package/build/utils/display/measurer/TextMeasurer.js +273 -0
- package/build/utils/display/measurer/TextMeasurer.js.map +1 -0
- package/build/utils/display/measurer/index.d.ts +10 -0
- package/build/utils/display/measurer/index.d.ts.map +1 -0
- package/build/utils/display/measurer/index.js +11 -0
- package/build/utils/display/measurer/index.js.map +1 -0
- package/build/utils/display/measurer/script-detection.d.ts +53 -0
- package/build/utils/display/measurer/script-detection.d.ts.map +1 -0
- package/build/utils/display/measurer/script-detection.js +184 -0
- package/build/utils/display/measurer/script-detection.js.map +1 -0
- package/build/utils/display/profiles/g1.d.ts +33 -0
- package/build/utils/display/profiles/g1.d.ts.map +1 -0
- package/build/utils/display/profiles/g1.js +213 -0
- package/build/utils/display/profiles/g1.js.map +1 -0
- package/build/utils/display/profiles/g2.d.ts +13 -0
- package/build/utils/display/profiles/g2.d.ts.map +1 -0
- package/build/utils/display/profiles/g2.js +34 -0
- package/build/utils/display/profiles/g2.js.map +1 -0
- package/build/utils/display/profiles/index.d.ts +12 -0
- package/build/utils/display/profiles/index.d.ts.map +1 -0
- package/build/utils/display/profiles/index.js +15 -0
- package/build/utils/display/profiles/index.js.map +1 -0
- package/build/utils/display/profiles/nex.d.ts +10 -0
- package/build/utils/display/profiles/nex.d.ts.map +1 -0
- package/build/utils/display/profiles/nex.js +150 -0
- package/build/utils/display/profiles/nex.js.map +1 -0
- package/build/utils/display/profiles/types.d.ts +103 -0
- package/build/utils/display/profiles/types.d.ts.map +1 -0
- package/build/utils/display/profiles/types.js +2 -0
- package/build/utils/display/profiles/types.js.map +1 -0
- package/build/utils/display/profiles/z100.d.ts +33 -0
- package/build/utils/display/profiles/z100.d.ts.map +1 -0
- package/build/utils/display/profiles/z100.js +182 -0
- package/build/utils/display/profiles/z100.js.map +1 -0
- package/build/utils/display/scene/anchor.d.ts +17 -0
- package/build/utils/display/scene/anchor.d.ts.map +1 -0
- package/build/utils/display/scene/anchor.js +33 -0
- package/build/utils/display/scene/anchor.js.map +1 -0
- package/build/utils/display/scene/degrade.d.ts +25 -0
- package/build/utils/display/scene/degrade.d.ts.map +1 -0
- package/build/utils/display/scene/degrade.js +64 -0
- package/build/utils/display/scene/degrade.js.map +1 -0
- package/build/utils/display/scene/differ.d.ts +38 -0
- package/build/utils/display/scene/differ.d.ts.map +1 -0
- package/build/utils/display/scene/differ.js +107 -0
- package/build/utils/display/scene/differ.js.map +1 -0
- package/build/utils/display/scene/index.d.ts +11 -0
- package/build/utils/display/scene/index.d.ts.map +1 -0
- package/build/utils/display/scene/index.js +7 -0
- package/build/utils/display/scene/index.js.map +1 -0
- package/build/utils/display/scene/process.d.ts +35 -0
- package/build/utils/display/scene/process.d.ts.map +1 -0
- package/build/utils/display/scene/process.js +201 -0
- package/build/utils/display/scene/process.js.map +1 -0
- package/build/utils/display/scene/store.d.ts +48 -0
- package/build/utils/display/scene/store.d.ts.map +1 -0
- package/build/utils/display/scene/store.js +0 -0
- package/build/utils/display/scene/store.js.map +1 -0
- package/build/utils/display/scene/types.d.ts +139 -0
- package/build/utils/display/scene/types.d.ts.map +1 -0
- package/build/utils/display/scene/types.js +0 -0
- package/build/utils/display/scene/types.js.map +1 -0
- package/build/utils/display/wrapper/TextWrapper.d.ts +102 -0
- package/build/utils/display/wrapper/TextWrapper.d.ts.map +1 -0
- package/build/utils/display/wrapper/TextWrapper.js +471 -0
- package/build/utils/display/wrapper/TextWrapper.js.map +1 -0
- package/build/utils/display/wrapper/index.d.ts +12 -0
- package/build/utils/display/wrapper/index.d.ts.map +1 -0
- package/build/utils/display/wrapper/index.js +12 -0
- package/build/utils/display/wrapper/index.js.map +1 -0
- package/build/utils/display/wrapper/types.d.ts +75 -0
- package/build/utils/display/wrapper/types.d.ts.map +1 -0
- package/build/utils/display/wrapper/types.js +11 -0
- package/build/utils/display/wrapper/types.js.map +1 -0
- package/build/utils/e2eMetrics.d.ts +6 -0
- package/build/utils/e2eMetrics.d.ts.map +1 -0
- package/build/utils/e2eMetrics.js +27 -0
- package/build/utils/e2eMetrics.js.map +1 -0
- package/build/utils/hardware/hardware.d.ts +42 -0
- package/build/utils/hardware/hardware.d.ts.map +1 -0
- package/build/utils/hardware/hardware.js +131 -0
- package/build/utils/hardware/hardware.js.map +1 -0
- package/build/utils/hardware/index.d.ts +2 -0
- package/build/utils/hardware/index.d.ts.map +1 -0
- package/build/utils/hardware/index.js +2 -0
- package/build/utils/hardware/index.js.map +1 -0
- package/build/utils/memory/search.d.ts +72 -0
- package/build/utils/memory/search.d.ts.map +1 -0
- package/build/utils/memory/search.js +178 -0
- package/build/utils/memory/search.js.map +1 -0
- package/build/utils/miniappDiagnostics.d.ts +64 -0
- package/build/utils/miniappDiagnostics.d.ts.map +1 -0
- package/build/utils/miniappDiagnostics.js +173 -0
- package/build/utils/miniappDiagnostics.js.map +1 -0
- package/build/utils/miniappGlobals.d.ts +59 -0
- package/build/utils/miniappGlobals.d.ts.map +1 -0
- package/build/utils/miniappGlobals.js +223 -0
- package/build/utils/miniappGlobals.js.map +1 -0
- package/build/utils/permissions/MediaLibraryPermissions.d.ts +45 -0
- package/build/utils/permissions/MediaLibraryPermissions.d.ts.map +1 -0
- package/build/utils/permissions/MediaLibraryPermissions.js +145 -0
- package/build/utils/permissions/MediaLibraryPermissions.js.map +1 -0
- package/build/utils/permissions/galleryDisplayName.d.ts +8 -0
- package/build/utils/permissions/galleryDisplayName.d.ts.map +1 -0
- package/build/utils/permissions/galleryDisplayName.js +25 -0
- package/build/utils/permissions/galleryDisplayName.js.map +1 -0
- package/build/utils/speakerEmbedding.d.ts +8 -0
- package/build/utils/speakerEmbedding.d.ts.map +1 -0
- package/build/utils/speakerEmbedding.js +63 -0
- package/build/utils/speakerEmbedding.js.map +1 -0
- package/build/utils/storage/index.d.ts +3 -0
- package/build/utils/storage/index.d.ts.map +1 -0
- package/build/utils/storage/index.js +3 -0
- package/build/utils/storage/index.js.map +1 -0
- package/build/utils/storage/storage.d.ts +24 -0
- package/build/utils/storage/storage.d.ts.map +1 -0
- package/build/utils/storage/storage.js +85 -0
- package/build/utils/storage/storage.js.map +1 -0
- package/build/utils/storage/zip.d.ts +3 -0
- package/build/utils/storage/zip.d.ts.map +1 -0
- package/build/utils/storage/zip.js +14 -0
- package/build/utils/storage/zip.js.map +1 -0
- package/build/utils/timers/index.d.ts +3 -0
- package/build/utils/timers/index.d.ts.map +1 -0
- package/build/utils/timers/index.js +3 -0
- package/build/utils/timers/index.js.map +1 -0
- package/build/utils/timers/timers.d.ts +9 -0
- package/build/utils/timers/timers.d.ts.map +1 -0
- package/build/utils/timers/timers.js +142 -0
- package/build/utils/timers/timers.js.map +1 -0
- package/package.json +122 -0
- package/src/assets/silence.wav +0 -0
- package/src/devtools.ts +13 -0
- package/src/engine.ts +198 -0
- package/src/facades/dev.ts +213 -0
- package/src/facades/display.ts +17 -0
- package/src/facades/displayMirror.ts +33 -0
- package/src/facades/gallery.ts +69 -0
- package/src/facades/glasses.ts +219 -0
- package/src/facades/glassesSettings.ts +57 -0
- package/src/facades/glassesWifi.ts +68 -0
- package/src/facades/maps.ts +13 -0
- package/src/facades/memory.ts +46 -0
- package/src/facades/miniapps.ts +62 -0
- package/src/facades/notifications.ts +14 -0
- package/src/facades/ota.ts +177 -0
- package/src/facades/pairing.ts +329 -0
- package/src/facades/permissions.ts +165 -0
- package/src/facades/phoneNotifications.ts +41 -0
- package/src/facades/providerKeys.ts +31 -0
- package/src/facades/reports.ts +180 -0
- package/src/facades/session.ts +54 -0
- package/src/facades/settings.ts +57 -0
- package/src/facades/speakers.ts +152 -0
- package/src/facades/speech.ts +49 -0
- package/src/index.ts +214 -0
- package/src/internal.ts +155 -0
- package/src/runtime/bootstrap.ts +159 -0
- package/src/runtime/config.ts +155 -0
- package/src/runtime/scanQrSeam.ts +20 -0
- package/src/runtime/streamConfig.ts +34 -0
- package/src/services/AiTierResolution.ts +106 -0
- package/src/services/AppRegistry.ts +1245 -0
- package/src/services/AudioCloudUplink.ts +56 -0
- package/src/services/AudioPlaybackService.ts +873 -0
- package/src/services/AutomaticReportResult.ts +50 -0
- package/src/services/BlobStore.ts +823 -0
- package/src/services/CaptionsTesterReportService.ts +107 -0
- package/src/services/CloudAudioSubscriptionSync.ts +53 -0
- package/src/services/CloudClientService.ts +1031 -0
- package/src/services/CloudTranscriptE2EMetrics.ts +27 -0
- package/src/services/ConnectionCoordinator.ts +65 -0
- package/src/services/DevServerBridge.ts +334 -0
- package/src/services/DeviceEventRouter.ts +266 -0
- package/src/services/DeviceStoreHydration.ts +130 -0
- package/src/services/DisplayProcessor.ts +775 -0
- package/src/services/ForegroundLocationPermission.ts +24 -0
- package/src/services/GlassesReadiness.ts +103 -0
- package/src/services/GlassesSettingsSync.ts +140 -0
- package/src/services/GlassesStatusProjection.ts +73 -0
- package/src/services/HeadingService.ts +122 -0
- package/src/services/HotspotOtaTransport.ts +184 -0
- package/src/services/HotspotShutdown.ts +41 -0
- package/src/services/JSCrashController.ts +189 -0
- package/src/services/JSCrashloopReportService.ts +66 -0
- package/src/services/JSLogPipeline.ts +166 -0
- package/src/services/JSRouter.ts +555 -0
- package/src/services/LocalDisplayManager.ts +815 -0
- package/src/services/LocalMiniappDataMigration.ts +102 -0
- package/src/services/LocalMiniappRuntime.ts +5747 -0
- package/src/services/LocalMiniappStorage.ts +82 -0
- package/src/services/LocalMiniappUserIdentity.ts +79 -0
- package/src/services/LocalSttFallbackCoordinator.ts +247 -0
- package/src/services/MapboxTokenService.ts +118 -0
- package/src/services/MemoryCapture.ts +61 -0
- package/src/services/MemoryStore.ts +633 -0
- package/src/services/MicStateCoordinator.ts +259 -0
- package/src/services/MiniappEngine.ts +143 -0
- package/src/services/MiniappLauncher.ts +365 -0
- package/src/services/MiniappLiveness.ts +24 -0
- package/src/services/MiniappRunningRegistry.ts +57 -0
- package/src/services/NativeHttpResponse.ts +6 -0
- package/src/services/NativeNavigationService.ts +176 -0
- package/src/services/NavigationHandlers.ts +527 -0
- package/src/services/NavigationService.ts +926 -0
- package/src/services/NotificationsEmitter.ts +49 -0
- package/src/services/OfflineSpeechModelService.ts +168 -0
- package/src/services/OtaArtifactDownloader.ts +312 -0
- package/src/services/OtaInstallCoordinator.ts +1707 -0
- package/src/services/OtaService.ts +89 -0
- package/src/services/OtaUpdateCheckService.ts +550 -0
- package/src/services/PairingIdentity.ts +154 -0
- package/src/services/PhoneCalendarHelpers.ts +212 -0
- package/src/services/PhoneCalendarService.ts +61 -0
- package/src/services/PhoneCameraFovCoordinator.ts +210 -0
- package/src/services/PhoneLocationService.ts +120 -0
- package/src/services/PhoneNotificationsSync.ts +46 -0
- package/src/services/PhonePhotoCoordinator.ts +435 -0
- package/src/services/PhoneStreamCoordinator.ts +874 -0
- package/src/services/PhoneVideoCoordinator.ts +203 -0
- package/src/services/ProviderKeyValidation.ts +57 -0
- package/src/services/STTModelManager.ts +434 -0
- package/src/services/SceneRenderer.ts +320 -0
- package/src/services/SentenceTtsPipeline.ts +106 -0
- package/src/services/SpeakerIdModelManager.ts +151 -0
- package/src/services/SpeakerIdSync.ts +79 -0
- package/src/services/SpeakerLabelResolver.ts +140 -0
- package/src/services/SpeakerProfileStore.ts +265 -0
- package/src/services/SpeakerSegmentResolver.ts +194 -0
- package/src/services/StreamLifecycleController.ts +203 -0
- package/src/services/SupportProfileSync.ts +218 -0
- package/src/services/TTSModelManager.ts +466 -0
- package/src/services/TranscriptionRouting.ts +47 -0
- package/src/services/TtsTextSanitizer.ts +66 -0
- package/src/services/UIRouter.ts +250 -0
- package/src/services/WebviewBridge.ts +50 -0
- package/src/services/WifiAdbRequest.ts +53 -0
- package/src/services/asg/GalleryMediaIntegrityReportService.ts +72 -0
- package/src/services/asg/asgCameraApi.ts +1786 -0
- package/src/services/asg/cameraRollExportCoordinator.ts +627 -0
- package/src/services/asg/cameraRollExportLedger.ts +122 -0
- package/src/services/asg/galleryMediaValidation.ts +185 -0
- package/src/services/asg/galleryNotices.ts +61 -0
- package/src/services/asg/galleryPathMigration.ts +22 -0
- package/src/services/asg/gallerySettingsService.ts +68 -0
- package/src/services/asg/gallerySyncNotifications.ts +235 -0
- package/src/services/asg/gallerySyncService.ts +2278 -0
- package/src/services/asg/galleryTransferLedger.ts +312 -0
- package/src/services/asg/localNetworkTransport.ts +169 -0
- package/src/services/asg/localStorageService.ts +652 -0
- package/src/services/asg/mediaProcessingQueue.ts +518 -0
- package/src/services/audioPlaybackAssets.ts +8 -0
- package/src/services/blobPaths.ts +86 -0
- package/src/services/cloudStreamApi.ts +142 -0
- package/src/services/effectiveCapabilities.ts +27 -0
- package/src/services/gallerySyncClock.ts +39 -0
- package/src/services/glassesClockSync.ts +115 -0
- package/src/services/manifestActions.ts +80 -0
- package/src/services/manifestVersionGate.ts +43 -0
- package/src/services/memoryStoreInstance.ts +70 -0
- package/src/services/navigation/roadNameResolver.ts +103 -0
- package/src/services/navigation/routesApiCodec.ts +69 -0
- package/src/services/otaDisplayState.ts +156 -0
- package/src/services/otaInstallPolicy.ts +132 -0
- package/src/services/otaLegacyMapping.ts +71 -0
- package/src/services/otaManifestUrl.ts +53 -0
- package/src/services/slimStreamStatus.ts +39 -0
- package/src/services/soniox/SonioxDirectService.ts +517 -0
- package/src/services/soniox/SonioxRealtimeClient.ts +349 -0
- package/src/services/soniox/SonioxTokenAssembler.ts +451 -0
- package/src/services/speakerProfileStoreInstance.ts +25 -0
- package/src/services/uiShim.ts +375 -0
- package/src/stores/apps.ts +626 -0
- package/src/stores/bluetoothSettingKeys.ts +35 -0
- package/src/stores/cloudClientStatus.ts +37 -0
- package/src/stores/connection.ts +69 -0
- package/src/stores/core.ts +32 -0
- package/src/stores/display.ts +121 -0
- package/src/stores/gallerySync.ts +384 -0
- package/src/stores/glasses.ts +314 -0
- package/src/stores/settings.ts +1299 -0
- package/src/stores/transcriptionDebug.ts +0 -0
- package/src/types/applet.ts +121 -0
- package/src/types/asg.ts +58 -0
- package/src/types/capabilities/even-realities-g1.ts +70 -0
- package/src/types/capabilities/even-realities-g2.ts +98 -0
- package/src/types/capabilities/mentra-display.ts +78 -0
- package/src/types/capabilities/mentra-live.ts +106 -0
- package/src/types/capabilities/nimo.ts +84 -0
- package/src/types/capabilities/none.ts +79 -0
- package/src/types/capabilities/simulated-glasses.ts +95 -0
- package/src/types/capabilities/vuzix-z100.ts +67 -0
- package/src/types/enums.ts +27 -0
- package/src/types/hardware.ts +220 -0
- package/src/types/index.ts +38 -0
- package/src/utils/GlobalEventEmitter.ts +15 -0
- package/src/utils/cloudClient/RnUdpAdapter.ts +47 -0
- package/src/utils/cloudClient/cloudSecureStore.ts +28 -0
- package/src/utils/configuredDevHost.ts +17 -0
- package/src/utils/debouncedPatch.ts +28 -0
- package/src/utils/devLogging.ts +140 -0
- package/src/utils/devMiniappLaunch.ts +196 -0
- package/src/utils/diagnosticContext.ts +159 -0
- package/src/utils/display/composer/ColumnComposer.ts +285 -0
- package/src/utils/display/composer/index.ts +15 -0
- package/src/utils/display/helpers/DisplayHelpers.ts +409 -0
- package/src/utils/display/helpers/ScrollView.ts +326 -0
- package/src/utils/display/helpers/index.ts +14 -0
- package/src/utils/display/index.ts +273 -0
- package/src/utils/display/measurer/TextMeasurer.ts +346 -0
- package/src/utils/display/measurer/index.ts +21 -0
- package/src/utils/display/measurer/script-detection.ts +218 -0
- package/src/utils/display/profiles/g1.ts +236 -0
- package/src/utils/display/profiles/g2.ts +39 -0
- package/src/utils/display/profiles/index.ts +28 -0
- package/src/utils/display/profiles/nex.ts +166 -0
- package/src/utils/display/profiles/types.ts +132 -0
- package/src/utils/display/profiles/z100.ts +198 -0
- package/src/utils/display/scene/anchor.ts +39 -0
- package/src/utils/display/scene/degrade.ts +80 -0
- package/src/utils/display/scene/differ.ts +128 -0
- package/src/utils/display/scene/index.ts +24 -0
- package/src/utils/display/scene/process.ts +228 -0
- package/src/utils/display/scene/store.ts +0 -0
- package/src/utils/display/scene/types.ts +0 -0
- package/src/utils/display/wrapper/TextWrapper.ts +546 -0
- package/src/utils/display/wrapper/index.ts +15 -0
- package/src/utils/display/wrapper/types.ts +102 -0
- package/src/utils/e2eMetrics.ts +30 -0
- package/src/utils/hardware/hardware.ts +171 -0
- package/src/utils/hardware/index.ts +1 -0
- package/src/utils/memory/search.ts +204 -0
- package/src/utils/miniappDiagnostics.ts +226 -0
- package/src/utils/miniappGlobals.ts +259 -0
- package/src/utils/permissions/MediaLibraryPermissions.ts +161 -0
- package/src/utils/permissions/galleryDisplayName.ts +28 -0
- package/src/utils/speakerEmbedding.ts +58 -0
- package/src/utils/storage/index.ts +2 -0
- package/src/utils/storage/storage.ts +101 -0
- package/src/utils/storage/zip.ts +13 -0
- package/src/utils/timers/index.ts +2 -0
- package/src/utils/timers/timers.ts +175 -0
|
@@ -0,0 +1,677 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LocalMiniappRuntime
|
|
3
|
+
*
|
|
4
|
+
* Singleton service that bridges local miniapps (running in WebViews) with
|
|
5
|
+
* phone capabilities: display, audio, storage, sensors, LED, etc.
|
|
6
|
+
*
|
|
7
|
+
* Each miniapp communicates via the @glassly/miniapp envelope protocol.
|
|
8
|
+
* This runtime handles request dispatch, stream fan-out, and lifecycle
|
|
9
|
+
* management (connect/disconnect/ping).
|
|
10
|
+
*/
|
|
11
|
+
import { type MiniappRuntimeDiagnosticSnapshot } from "../utils/miniappDiagnostics";
|
|
12
|
+
export interface InstalledMiniappManifest {
|
|
13
|
+
packageName?: string;
|
|
14
|
+
/** Human-facing app name (from miniapp.json `name`). Shown in the "Starting
|
|
15
|
+
* <name>…" boot message; falls back to the package name when absent. */
|
|
16
|
+
name?: string;
|
|
17
|
+
version?: string;
|
|
18
|
+
sdkVersion?: string;
|
|
19
|
+
minHostVersion?: string;
|
|
20
|
+
type?: string;
|
|
21
|
+
entry?: {
|
|
22
|
+
background?: string;
|
|
23
|
+
ui?: string;
|
|
24
|
+
};
|
|
25
|
+
permissions?: Array<{
|
|
26
|
+
type: string;
|
|
27
|
+
required?: boolean;
|
|
28
|
+
description?: string;
|
|
29
|
+
}>;
|
|
30
|
+
hardwareRequirements?: Array<{
|
|
31
|
+
type: string;
|
|
32
|
+
level: string;
|
|
33
|
+
description?: string;
|
|
34
|
+
}>;
|
|
35
|
+
actions?: Array<{
|
|
36
|
+
id?: unknown;
|
|
37
|
+
description?: unknown;
|
|
38
|
+
parameters?: unknown;
|
|
39
|
+
outputSchema?: unknown;
|
|
40
|
+
}>;
|
|
41
|
+
}
|
|
42
|
+
type TranscriptionEventSource = "cloud" | "local";
|
|
43
|
+
declare class LocalMiniappRuntime {
|
|
44
|
+
private static instance;
|
|
45
|
+
/**
|
|
46
|
+
* Host hook: a platform-funded feature was refused because the account's
|
|
47
|
+
* free-tier allowance is spent — "llm" for a refused ai.complete, and
|
|
48
|
+
* "transcription" when the cloud pushes an STT quota block. The app wires
|
|
49
|
+
* this to an upgrade prompt (see jsBootstrap); fires per refusal, so the
|
|
50
|
+
* host side owns any once-per-session throttling. For "transcription",
|
|
51
|
+
* `info.localSttActive` says whether on-device sherpa took over (model was
|
|
52
|
+
* downloaded) so the prompt can say captions continue vs stopped.
|
|
53
|
+
*/
|
|
54
|
+
onQuotaExceeded: ((feature: "llm" | "transcription", info?: {
|
|
55
|
+
localSttActive: boolean;
|
|
56
|
+
}) => void) | null;
|
|
57
|
+
/**
|
|
58
|
+
* Host hook: a previously-refused feature is available again — the cloud
|
|
59
|
+
* pushed an STT unblock, or a metered LLM call succeeded after a quota
|
|
60
|
+
* refusal (new month, upgrade). Lets the app re-arm its upgrade prompt so
|
|
61
|
+
* the NEXT refusal prompts again instead of staying silenced all session.
|
|
62
|
+
*/
|
|
63
|
+
onQuotaRestored: ((feature: "llm" | "transcription") => void) | null;
|
|
64
|
+
/** Last time the quota notice was drawn on the glasses; debounces re-shows. */
|
|
65
|
+
private lastSttQuotaNoticeAt;
|
|
66
|
+
/** True after a metered (platform-funded) LLM call was refused for quota. */
|
|
67
|
+
private llmQuotaBlocked;
|
|
68
|
+
/** Connected miniapps keyed by packageName. */
|
|
69
|
+
private connectedApps;
|
|
70
|
+
/**
|
|
71
|
+
* Packages that have completed their CONNECT handshake (sent
|
|
72
|
+
* `miniapp_connect`, got `CONNECT_ACK`). Distinct from `connectedApps`,
|
|
73
|
+
* which is populated at spawn/registration time — handshake is later.
|
|
74
|
+
* Drives {@link waitForConnect}.
|
|
75
|
+
*/
|
|
76
|
+
private handshookApps;
|
|
77
|
+
/** Pending {@link waitForConnect} resolvers, keyed by packageName. */
|
|
78
|
+
private connectWaiters;
|
|
79
|
+
/** Ref-counted stream subscriptions: stream → set of packageNames. */
|
|
80
|
+
private streamSubscribers;
|
|
81
|
+
/** Host observers for the Mentra Live button-capture policy. */
|
|
82
|
+
private buttonPressSubscriberListeners;
|
|
83
|
+
/** Guards one-time wiring of the cloud transcript/translation fan-out. */
|
|
84
|
+
private cloudResultsWired;
|
|
85
|
+
private cloudStatusWired;
|
|
86
|
+
private capabilitiesWired;
|
|
87
|
+
private cloudAudioSubscriptionSync;
|
|
88
|
+
/**
|
|
89
|
+
* Per-miniapp language hints from TRANSCRIPTION_CONFIG (issue 021 WP3).
|
|
90
|
+
* Bare ISO 639-1 codes, already registry-validated by the SDK and
|
|
91
|
+
* re-normalized here (defense in depth). Merged (union) into the auto-mode
|
|
92
|
+
* cloud transcription subscription in buildCloudAudioSubscriptions.
|
|
93
|
+
*/
|
|
94
|
+
private transcriptionHintsByApp;
|
|
95
|
+
/** Ping interval handle. */
|
|
96
|
+
private pingIntervalId;
|
|
97
|
+
private foregroundProbeTimers;
|
|
98
|
+
/**
|
|
99
|
+
* Notified when a miniapp is unregistered for missing liveness pings.
|
|
100
|
+
* JSRouter wires this into its crash-respawn machinery so a
|
|
101
|
+
* silently-stalled background script is restarted (with crash-loop
|
|
102
|
+
* protection) instead of staying dead — a dead background drops its
|
|
103
|
+
* subscriptions, which releases the mic while the webview still looks
|
|
104
|
+
* alive.
|
|
105
|
+
*/
|
|
106
|
+
onLivenessTimeout: ((packageName: string) => void) | null;
|
|
107
|
+
/** Pending cloud requests: requestId → packageName that originated the request. */
|
|
108
|
+
private pendingCloudRequests;
|
|
109
|
+
private speechRuns;
|
|
110
|
+
private localSecret;
|
|
111
|
+
private usedTokens;
|
|
112
|
+
private constructor();
|
|
113
|
+
/** Snapshot of miniapps actively subscribed to hardware button events. */
|
|
114
|
+
getButtonPressSubscribers(): string[];
|
|
115
|
+
/** Observe active hardware-button subscriptions. */
|
|
116
|
+
onButtonPressSubscribersChanged(listener: (packageNames: string[]) => void): () => void;
|
|
117
|
+
/** Report-safe live miniapp/subscription/resource snapshot. */
|
|
118
|
+
getDiagnosticSnapshot(nowMs?: number): MiniappRuntimeDiagnosticSnapshot;
|
|
119
|
+
private replaceStreamSubscribers;
|
|
120
|
+
/** Mirror the live transcription/translation subscriber sets into the debug store. */
|
|
121
|
+
private publishTranscriptionDebugSubscribers;
|
|
122
|
+
/**
|
|
123
|
+
* Generate an HMAC-signed local session token for browser fallback auth.
|
|
124
|
+
* Token format: base64(JSON({userId, packageName, exp})).base64(HMAC-SHA256(payload, secret))
|
|
125
|
+
* Single-use, 5-minute TTL.
|
|
126
|
+
*/
|
|
127
|
+
generateLocalToken(userId: string, packageName: string): string;
|
|
128
|
+
/**
|
|
129
|
+
* Validate and consume a local session token. Single-use.
|
|
130
|
+
*/
|
|
131
|
+
validateLocalToken(token: string): {
|
|
132
|
+
userId: string;
|
|
133
|
+
packageName: string;
|
|
134
|
+
} | null;
|
|
135
|
+
/**
|
|
136
|
+
* Simple HMAC-SHA256 using Web Crypto API (available in React Native).
|
|
137
|
+
* Returns base64url-encoded signature.
|
|
138
|
+
* Falls back to a simpler hash if crypto.subtle is not available.
|
|
139
|
+
*/
|
|
140
|
+
private hmacSign;
|
|
141
|
+
static getInstance(): LocalMiniappRuntime;
|
|
142
|
+
private initialized;
|
|
143
|
+
/**
|
|
144
|
+
* Initialize the runtime. Called from MantleManager.init().
|
|
145
|
+
* Idempotent — safe to call multiple times.
|
|
146
|
+
*/
|
|
147
|
+
initialize(): void;
|
|
148
|
+
/**
|
|
149
|
+
* Handle an incoming cloud message relayed from the v2 cloud session
|
|
150
|
+
* (phone_stream_status, phone_managed_stream_status).
|
|
151
|
+
*
|
|
152
|
+
* Routes the response back to the originating miniapp via the requestId
|
|
153
|
+
* that was stored when the miniapp first made the request.
|
|
154
|
+
*/
|
|
155
|
+
handleCloudMessage(msg: any): void;
|
|
156
|
+
/**
|
|
157
|
+
* Register a pending cloud request so we can route the response back.
|
|
158
|
+
*/
|
|
159
|
+
registerPendingCloudRequest(requestId: string, packageName: string, envelopeRequestId?: string): void;
|
|
160
|
+
registerApp(packageName: string, sendFn: (raw: string) => void, installedManifest?: InstalledMiniappManifest): void;
|
|
161
|
+
/**
|
|
162
|
+
* Resolve once `packageName` has completed its CONNECT handshake. If it has
|
|
163
|
+
* already connected, resolves immediately. Rejects if the timeout elapses
|
|
164
|
+
* first, or if the app is unregistered while waiting.
|
|
165
|
+
*
|
|
166
|
+
* Used by the launcher's `ensureConnected` (and thus the action broker) so a
|
|
167
|
+
* just-spawned target is known to be live before anything is delivered to it.
|
|
168
|
+
*/
|
|
169
|
+
waitForConnect(packageName: string, timeoutMs: number): Promise<void>;
|
|
170
|
+
/** Resolve/reject all pending {@link waitForConnect} waiters for a package. */
|
|
171
|
+
private flushConnectWaiters;
|
|
172
|
+
/**
|
|
173
|
+
* Invalidate the CONNECT handshake for a package whose native context is
|
|
174
|
+
* being replaced WITHOUT going through register/unregister — i.e. a crash
|
|
175
|
+
* respawn. Without this, {@link waitForConnect} would treat the dead/
|
|
176
|
+
* not-yet-initialized context as connected and deliver to it. Pending waiters
|
|
177
|
+
* are failed so a wake mid-respawn retries rather than hanging.
|
|
178
|
+
*/
|
|
179
|
+
resetHandshake(packageName: string): void;
|
|
180
|
+
/**
|
|
181
|
+
* Attach (or update) the installedManifest for an already-registered app.
|
|
182
|
+
* Used when the manifest is fetched asynchronously (dev miniapps) after the
|
|
183
|
+
* miniapp has already CONNECTed — preserves existing subscriptions.
|
|
184
|
+
*/
|
|
185
|
+
setInstalledManifest(packageName: string, installedManifest: InstalledMiniappManifest): void;
|
|
186
|
+
/**
|
|
187
|
+
* Graceful version of {@link unregisterApp}: notify the miniapp via
|
|
188
|
+
* `WILL_DISCONNECT`, wait ~50ms so its `beforeDisconnect` handlers can
|
|
189
|
+
* fire one last `sendOneShot` (e.g. `display.clear()`), then run the
|
|
190
|
+
* normal teardown. Use this for any disconnect path where the socket
|
|
191
|
+
* is still open. For ungraceful paths (transport already closed),
|
|
192
|
+
* call {@link unregisterApp} directly — the heads-up would be
|
|
193
|
+
* undeliverable anyway.
|
|
194
|
+
*/
|
|
195
|
+
gracefullyUnregisterApp(packageName: string, reason?: string): Promise<void>;
|
|
196
|
+
unregisterApp(packageName: string, opts?: {
|
|
197
|
+
endNavigation?: boolean;
|
|
198
|
+
}): void;
|
|
199
|
+
handleRawMessage(packageName: string, raw: string): void;
|
|
200
|
+
private handleConnect;
|
|
201
|
+
private requestMiniappAuth;
|
|
202
|
+
private handleAuthRefresh;
|
|
203
|
+
private refreshMiniappAuth;
|
|
204
|
+
private authRefreshOptions;
|
|
205
|
+
private scheduleMiniappAuthRefresh;
|
|
206
|
+
private clearMiniappAuthRefresh;
|
|
207
|
+
/**
|
|
208
|
+
* Deliver the miniapp's FIRST auth token, retrying until it lands. Called from
|
|
209
|
+
* {@link handleConnect} when the initial mint didn't resolve in the CONNECT_ACK
|
|
210
|
+
* window. `inFlight` lets attempt 0 reuse the mint the handshake already
|
|
211
|
+
* started (avoids a redundant duplicate request); later attempts mint fresh.
|
|
212
|
+
*
|
|
213
|
+
* A `null` result means auth is fundamentally unavailable (no miniappAuth hook)
|
|
214
|
+
* — permanent, so we do NOT retry. A REJECTION means a transient failure
|
|
215
|
+
* (typically the cloud client isn't connection-ready yet) — retry with backoff.
|
|
216
|
+
* Either way we bail if the app has since disconnected or already got a token
|
|
217
|
+
* (e.g. via {@link redriveMiniappAuthDelivery} on cloud-connect).
|
|
218
|
+
*/
|
|
219
|
+
private deliverInitialMiniappAuth;
|
|
220
|
+
private scheduleInitialMiniappAuthRetry;
|
|
221
|
+
private clearMiniappAuthDeliveryRetry;
|
|
222
|
+
/**
|
|
223
|
+
* When the cloud client (re)connects, immediately re-attempt the initial mint
|
|
224
|
+
* for any handshook app still missing its token, instead of waiting out the
|
|
225
|
+
* backoff. This is what turns "scan a dev app before the cloud is ready" from
|
|
226
|
+
* "dead until you manually reconnect Cloud V2" into "authenticates on its own
|
|
227
|
+
* the instant the connection comes up".
|
|
228
|
+
*/
|
|
229
|
+
private redriveMiniappAuthDelivery;
|
|
230
|
+
/**
|
|
231
|
+
* TRANSCRIPTION_CONFIG (issue 021 WP3): store the miniapp's language hints
|
|
232
|
+
* and rebuild the cloud subscription set so the auto-mode subscription
|
|
233
|
+
* carries them. Replies with a REQUEST_RESULT so the SDK's configure()
|
|
234
|
+
* promise settles: unknown hint values are an error, not a silent drop.
|
|
235
|
+
*/
|
|
236
|
+
private handleTranscriptionConfig;
|
|
237
|
+
private handleSubscribe;
|
|
238
|
+
private handleCalendarListEvents;
|
|
239
|
+
/**
|
|
240
|
+
* For state-bearing streams (battery, connection), deliver the current value
|
|
241
|
+
* immediately on subscribe. Other streams (button press, transcription, etc.)
|
|
242
|
+
* are pure event streams with no "current value" to snapshot.
|
|
243
|
+
*/
|
|
244
|
+
private emitInitialSnapshots;
|
|
245
|
+
/**
|
|
246
|
+
* Read the phone's battery state right now and emit it as the given stream.
|
|
247
|
+
* Used for both phone_battery snapshot on subscribe, and as a stand-in for
|
|
248
|
+
* glasses_battery when connected to Simulated Glasses.
|
|
249
|
+
*/
|
|
250
|
+
private emitPhoneBatteryAs;
|
|
251
|
+
private handleDisplay;
|
|
252
|
+
/**
|
|
253
|
+
* Scene render (session.display.render()). Same arbitration as DISPLAY, but
|
|
254
|
+
* the payload is a whole frame of positioned elements and the caller may be
|
|
255
|
+
* awaiting the outcome: LocalDisplayManager guarantees the resolver fires
|
|
256
|
+
* exactly once (displayed/blocked, with degraded/dropped reporting), and that
|
|
257
|
+
* becomes the REQUEST_RESULT data.
|
|
258
|
+
*/
|
|
259
|
+
private handleRender;
|
|
260
|
+
/**
|
|
261
|
+
* Native nav UI feed (display.sendNativeNav*). Gated on the device's nav
|
|
262
|
+
* mode being active (trip-scoped); the miniapp's first pushes can race the
|
|
263
|
+
* host-side trip start, so "unsupported" here is transient and the miniapp
|
|
264
|
+
* just retries on its next tick.
|
|
265
|
+
*/
|
|
266
|
+
private handleNativeNav;
|
|
267
|
+
/** Bring the glasses' native dashboard (OS idle screen) to the foreground. */
|
|
268
|
+
private handleShowNativeDashboard;
|
|
269
|
+
private handlePlayAudio;
|
|
270
|
+
private handleStopAudio;
|
|
271
|
+
/** Valid PCM sample rates for speaker streams. Mirrors the SDK contract. */
|
|
272
|
+
private static readonly SPEAKER_STREAM_SAMPLE_RATES;
|
|
273
|
+
private static readonly SPEAKER_STREAM_MAX_BASE64_CHARS;
|
|
274
|
+
private speakerStreamCounter;
|
|
275
|
+
private handleSpeakerStreamOpen;
|
|
276
|
+
/** Resolve + validate a stream id from a payload against the app's active stream. */
|
|
277
|
+
private activeSpeakerStream;
|
|
278
|
+
private handleSpeakerStreamWrite;
|
|
279
|
+
private handleSpeakerStreamClose;
|
|
280
|
+
private handleSpeakerStreamAbort;
|
|
281
|
+
private handleSpeak;
|
|
282
|
+
private cancelSpeech;
|
|
283
|
+
private handleRgbLed;
|
|
284
|
+
private handleLocationPoll;
|
|
285
|
+
/**
|
|
286
|
+
* All navigation handlers + their state live in NavigationHandlers. The
|
|
287
|
+
* dispatcher's NAVIGATION_* cases delegate here; the rest of the runtime
|
|
288
|
+
* cross-cuts navigation through {@link NavigationHandlers.onDisconnect}
|
|
289
|
+
* (mini-app disconnect) and {@link NavigationHandlers.isTripActive}
|
|
290
|
+
* (location-stream gating during a trip).
|
|
291
|
+
*/
|
|
292
|
+
private readonly navigationHandlers;
|
|
293
|
+
/**
|
|
294
|
+
* `session.blob` — persistent, per-app binary storage. Like NavigationHandlers,
|
|
295
|
+
* the BLOB_* dispatcher cases delegate here. It's a generic byte store; audio
|
|
296
|
+
* recording lives entirely in the miniapp (mic.onAudioChunk → chunked
|
|
297
|
+
* BLOB_WRITE), so nothing audio-specific runs in the host.
|
|
298
|
+
*/
|
|
299
|
+
private readonly blobStore;
|
|
300
|
+
private readonly blobRequestQueues;
|
|
301
|
+
private readonly simpleStorage;
|
|
302
|
+
/**
|
|
303
|
+
* BlobStore's file helpers are synchronous once a user namespace is selected,
|
|
304
|
+
* but first-boot Core auth is not. Queue requests per app behind stable
|
|
305
|
+
* identity resolution so CREATE/WRITE/COMMIT ordering survives that wait.
|
|
306
|
+
*/
|
|
307
|
+
private enqueueBlobRequest;
|
|
308
|
+
private handleBlobRequestError;
|
|
309
|
+
/**
|
|
310
|
+
* Heading is a sensor stream — start the native compass when any mini
|
|
311
|
+
* app is subscribed to "heading_update", stop it when none are.
|
|
312
|
+
*/
|
|
313
|
+
private headingUnsub;
|
|
314
|
+
private recomputeHeadingSubscription;
|
|
315
|
+
/**
|
|
316
|
+
* Accelerometer is a sensor stream — enable the glasses IMU when any mini
|
|
317
|
+
* app is subscribed to "accel_data", disable it when none are. Mirrors the
|
|
318
|
+
* heading pattern. Only G2 streams IMU today; on other devices the native
|
|
319
|
+
* call is a no-op so this is harmless.
|
|
320
|
+
*/
|
|
321
|
+
private imuEnabled;
|
|
322
|
+
private recomputeImuSubscription;
|
|
323
|
+
/**
|
|
324
|
+
* Last rate we asked the host for. Lets us skip the cross-process call
|
|
325
|
+
* when nothing actually changed (most SUBSCRIBE / unregister churn
|
|
326
|
+
* leaves the aggregate unchanged) and tracks state for the no-active-
|
|
327
|
+
* subscribers → tell host to back off case.
|
|
328
|
+
*/
|
|
329
|
+
private lastAppliedLocationRate;
|
|
330
|
+
/**
|
|
331
|
+
* Recompute the aggregate location tier across every connected
|
|
332
|
+
* miniapp and push the result to the host. The aggregate is the
|
|
333
|
+
* STRICTEST rate any single app has requested — see
|
|
334
|
+
* {@link LOCATION_RATE_PRIORITY} — because the GPS sample rate is a
|
|
335
|
+
* shared OS-level setting that we can't bias per-app.
|
|
336
|
+
*
|
|
337
|
+
* Called after every SUBSCRIBE and every unregister so that when a
|
|
338
|
+
* realtime-requesting app goes away the tier falls back down. If no
|
|
339
|
+
* connected app is asking for a location rate, we tell the host
|
|
340
|
+
* "off" so it can drop GPS power.
|
|
341
|
+
*/
|
|
342
|
+
private recomputeLocationTier;
|
|
343
|
+
private handleStorageGet;
|
|
344
|
+
private handleStorageSet;
|
|
345
|
+
private handleStorageDelete;
|
|
346
|
+
private handleStorageList;
|
|
347
|
+
private handleStorageClear;
|
|
348
|
+
private handleStorageHas;
|
|
349
|
+
private handleStorageGetAll;
|
|
350
|
+
private handleStorageSetMultiple;
|
|
351
|
+
private handleSetWifiAdbState;
|
|
352
|
+
/**
|
|
353
|
+
* Resolve an enrolled-speaker id (`spk_…`) to its display name. Gated on the
|
|
354
|
+
* SPEAKERS manifest permission: names are on-device PII — transcription
|
|
355
|
+
* events deliberately carry only opaque ids, and this explicit, user-visible
|
|
356
|
+
* declaration is the one gate that lets a miniapp turn an id into a name.
|
|
357
|
+
* Non-enrolled ids (anonymous diarization labels, deleted profiles) resolve
|
|
358
|
+
* to null.
|
|
359
|
+
*/
|
|
360
|
+
private handleSpeakersResolveName;
|
|
361
|
+
/**
|
|
362
|
+
* Serve every MEMORY_* request against the engine's user-scoped MemoryStore.
|
|
363
|
+
* Gated on the MEMORY manifest permission: the store is shared across
|
|
364
|
+
* miniapps (it is the user's timeline, not the app's), so access is an
|
|
365
|
+
* explicit declaration the user can see, like MICROPHONE.
|
|
366
|
+
*/
|
|
367
|
+
private handleMemoryRequest;
|
|
368
|
+
/**
|
|
369
|
+
* Serve session.keys.get(provider): read a user-supplied provider API key
|
|
370
|
+
* from the device-local settings store and hand it to the miniapp. Gated on
|
|
371
|
+
* the API_KEYS manifest permission and the MINIAPP_READABLE_API_KEYS
|
|
372
|
+
* allowlist. The key crosses only the local bridge — it is never sent to
|
|
373
|
+
* any server by this path. "mapbox" alone resolves further: with no user
|
|
374
|
+
* key saved it serves the public render token fetched from Glassly Cloud
|
|
375
|
+
* (the binary bakes none), and null when that's unavailable too — e.g.
|
|
376
|
+
* cloud disabled (see the allowlist note).
|
|
377
|
+
*/
|
|
378
|
+
private handleKeysGet;
|
|
379
|
+
/**
|
|
380
|
+
* Serve session.ai.complete(). Gated on the AI manifest permission.
|
|
381
|
+
*
|
|
382
|
+
* The request names a TIER; this handler resolves it to a provider+model
|
|
383
|
+
* (Settings > AI Models dropdowns, or auto from saved keys) and then picks
|
|
384
|
+
* one of two transport paths, decided by whether the user saved a key for
|
|
385
|
+
* the resolved provider (Settings > API Keys) — the phone is where both
|
|
386
|
+
* settings live, so this is the only place the choice can be made:
|
|
387
|
+
*
|
|
388
|
+
* - User key saved → the phone calls the vendor DIRECTLY via
|
|
389
|
+
* @glassly/llm-providers (the same implementations the cloud runtime
|
|
390
|
+
* uses). The request never transits Glassly Cloud, works with the cloud
|
|
391
|
+
* disabled, bills the user's own account, and is not metered — matching
|
|
392
|
+
* the Soniox and Mapbox user-key patterns.
|
|
393
|
+
* - No user key → relay to the cloud LLM service (platform key, metered).
|
|
394
|
+
*
|
|
395
|
+
* Either way the miniapp never sees a provider credential — the key is read
|
|
396
|
+
* host-side only, unlike session.keys.get() which deliberately exposes it.
|
|
397
|
+
*/
|
|
398
|
+
private handleAiComplete;
|
|
399
|
+
/**
|
|
400
|
+
* ai.generate — agentic visual generation. Always relayed to the cloud
|
|
401
|
+
* runtime (the server drives the provider's agentic loop; there is no
|
|
402
|
+
* phone-direct path — the beta tool surface only exists server-side). A
|
|
403
|
+
* saved Anthropic user key still rides along as the billing key so BYO
|
|
404
|
+
* users aren't metered, matching handleAiComplete's intent.
|
|
405
|
+
*/
|
|
406
|
+
private handleAiGenerate;
|
|
407
|
+
/**
|
|
408
|
+
* Drive one generate run through the cloud's pollable job surface, so the
|
|
409
|
+
* miniapp gets live activity ticks (via the internal `_ai_generate_progress`
|
|
410
|
+
* stream, correlated by the caller's `progressToken`) and an abandoned run
|
|
411
|
+
* is cancelled instead of billing to completion. Clouds that predate the
|
|
412
|
+
* surface answer 404 on job start — fall back to the sync route (one long
|
|
413
|
+
* POST, no ticks), which stays deployed for exactly this skew window.
|
|
414
|
+
*/
|
|
415
|
+
private runGenerateJob;
|
|
416
|
+
private handleCameraFov;
|
|
417
|
+
/**
|
|
418
|
+
* Explicit IMU enable/disable from a miniapp (session.imu.setEnabled).
|
|
419
|
+
*
|
|
420
|
+
* The accel stream already auto-toggles the native IMU on subscribe (see
|
|
421
|
+
* {@link recomputeImuSubscription}); this is a direct override. We sync
|
|
422
|
+
* `this.imuEnabled` to the requested state so a subsequent subscription
|
|
423
|
+
* recompute with the same aggregate doesn't issue a redundant native call.
|
|
424
|
+
* Note that a later subscribe/unsubscribe that changes the aggregate will
|
|
425
|
+
* still re-derive the sensor state from subscriptions.
|
|
426
|
+
*/
|
|
427
|
+
private handleImuSetEnabled;
|
|
428
|
+
/**
|
|
429
|
+
* Lifecycle-scoped glasses-side VAD override from a miniapp
|
|
430
|
+
* (session.mic.setVoiceActivityDetectionEnabled). Requires MICROPHONE in the
|
|
431
|
+
* miniapp manifest. Mentra Live only today — other models no-op via DeviceStore.
|
|
432
|
+
*/
|
|
433
|
+
private handleMicSetVadEnabled;
|
|
434
|
+
/**
|
|
435
|
+
* Lifecycle-scoped center-mic loudness gate ("Barrier") override from a miniapp
|
|
436
|
+
* (session.mic.setLoudnessGateEnabled). Requires MICROPHONE in the miniapp
|
|
437
|
+
* manifest. Mentra Live only today — other models no-op via DeviceStore.
|
|
438
|
+
*/
|
|
439
|
+
private handleMicSetLoudnessGateEnabled;
|
|
440
|
+
/**
|
|
441
|
+
* session.system.scanQr — host camera overlay. Must not clear miniapp
|
|
442
|
+
* foreground; the host seam is responsible for presenting a Modal on top.
|
|
443
|
+
*/
|
|
444
|
+
private handleScanQr;
|
|
445
|
+
private handleShare;
|
|
446
|
+
private handleOpenUrl;
|
|
447
|
+
private handleCopyClipboard;
|
|
448
|
+
private handleDownload;
|
|
449
|
+
private handlePhoto;
|
|
450
|
+
private handleCameraWarmUp;
|
|
451
|
+
private handleVideoRecordingStart;
|
|
452
|
+
private handleVideoRecordingStop;
|
|
453
|
+
/**
|
|
454
|
+
* Stream handlers — dispatched to the engine PhoneStreamCoordinator. For managed
|
|
455
|
+
* streams the coordinator additionally calls the v2 client REST route to
|
|
456
|
+
* provision Cloudflare. Cloud-SDK apps (third-party developers) use a
|
|
457
|
+
* separate cloud-side path that does not pass through here.
|
|
458
|
+
*/
|
|
459
|
+
private handleStreamStart;
|
|
460
|
+
private handleStreamStop;
|
|
461
|
+
private handleManagedStreamStart;
|
|
462
|
+
private handleManagedStreamStop;
|
|
463
|
+
/**
|
|
464
|
+
* session.glasses.requestWifiSetup — open the phone's glasses Wi-Fi setup
|
|
465
|
+
* flow. The host owns the actual UI via the `engine.configure({ui})` seam;
|
|
466
|
+
* this just forwards the request and reports success/failure.
|
|
467
|
+
*/
|
|
468
|
+
private handleRequestWifiSetup;
|
|
469
|
+
/**
|
|
470
|
+
* Wire the PhoneStreamCoordinator's status callback so coordinator-emitted
|
|
471
|
+
* updates become `EVENT { streamType: "stream_status" }` envelopes on the
|
|
472
|
+
* subscribing miniapp(s).
|
|
473
|
+
*/
|
|
474
|
+
wireStreamingStatusFanout(): void;
|
|
475
|
+
/**
|
|
476
|
+
* Standalone subscribe — lets external code subscribe a registered miniapp to
|
|
477
|
+
* streams without going through the envelope protocol.
|
|
478
|
+
*
|
|
479
|
+
* Returns `{ok: true}` on success, or `{ok: false, error}` on failure.
|
|
480
|
+
*/
|
|
481
|
+
subscribe(packageName: string, streams: string[]): {
|
|
482
|
+
ok: boolean;
|
|
483
|
+
error?: string;
|
|
484
|
+
};
|
|
485
|
+
private getConfiguredMicGates;
|
|
486
|
+
private recomputeMicRequirements;
|
|
487
|
+
/**
|
|
488
|
+
* Recompute the aggregated v2 cloud subscription list across all local miniapps.
|
|
489
|
+
*
|
|
490
|
+
* Cloud-dependent streams (transcription:*, translation:*) only flow if the
|
|
491
|
+
* v2 runtime knows the phone wants them. Local-only streams (button_press, etc.)
|
|
492
|
+
* are NOT sent — they come from the Bluetooth SDK, not from cloud.
|
|
493
|
+
*/
|
|
494
|
+
private updateCloudSubscriptions;
|
|
495
|
+
/**
|
|
496
|
+
* Build the cloud `AudioSubscription[]` from the miniapp cloud-stream key set.
|
|
497
|
+
*
|
|
498
|
+
* Stream keys: `transcription:<lang>` (lang may be `auto`, `en-US`, …) and
|
|
499
|
+
* `translation:<source>:<target>` (3 colon-parts; source/target may be `*`
|
|
500
|
+
* or `auto` wildcards, target may also be `*`). The cloud protocol requires a
|
|
501
|
+
* concrete `target: string` for translation, so wildcard-target translation
|
|
502
|
+
* keys (`translation:<source>:*`, `translation:*:*`, `translation:auto`) have
|
|
503
|
+
* no cloud equivalent and are skipped. Wildcard/`auto` SOURCE maps to
|
|
504
|
+
* `{mode: "auto"}`.
|
|
505
|
+
*/
|
|
506
|
+
private buildCloudAudioSubscriptions;
|
|
507
|
+
private audioSubscriptionKey;
|
|
508
|
+
/**
|
|
509
|
+
* Wire the cloud's transcription/translation results into the existing
|
|
510
|
+
* miniapp fan-out exactly once. Maps each cloud result back to the
|
|
511
|
+
* cloud-to-app data shape `forwardEvent` already forwards, keyed on the
|
|
512
|
+
* `transcription:<lang>` / `translation:<source>:<target>` stream strings, so
|
|
513
|
+
* subscribed miniapps receive identical envelopes.
|
|
514
|
+
*/
|
|
515
|
+
private ensureCloudResultsWired;
|
|
516
|
+
/**
|
|
517
|
+
* A platform-billed LLM call succeeded. If quota had been refused earlier,
|
|
518
|
+
* the allowance is back (new month, upgrade) — tell the host so its
|
|
519
|
+
* upgrade prompt re-arms for the next refusal.
|
|
520
|
+
*/
|
|
521
|
+
private noteMeteredLlmSuccess;
|
|
522
|
+
private handleTranscriptionData;
|
|
523
|
+
private handleTranslationData;
|
|
524
|
+
/** Re-partition audio routing after a Soniox-direct enable/disable flip. */
|
|
525
|
+
recomputeAudioRouting(): void;
|
|
526
|
+
/**
|
|
527
|
+
* Whether the primary transcription provider is up: Soniox-direct session
|
|
528
|
+
* health when a user API key is set, cloud connectivity otherwise. Drives
|
|
529
|
+
* the local/default delivery routing in forwardEvent — under Soniox-direct
|
|
530
|
+
* the cloud can be connected while transcription is down (and vice versa).
|
|
531
|
+
* A plan-quota block counts as down: the cloud stays connected but closes
|
|
532
|
+
* its STT streams, and local sherpa transcripts must reach default-route
|
|
533
|
+
* subscribers.
|
|
534
|
+
*/
|
|
535
|
+
private transcriptionPrimaryUp;
|
|
536
|
+
private ensureCloudStatusWired;
|
|
537
|
+
/** Model profile + runtime overrides (the G2 CFW scene canvas) for the default wearable. */
|
|
538
|
+
private currentCapabilities;
|
|
539
|
+
/**
|
|
540
|
+
* The scene canvas can change after a miniapp's CONNECT_ACK (CFW is
|
|
541
|
+
* detected from the glasses' settings response, which may land after the
|
|
542
|
+
* handshake) — push the new capabilities so render() boxes use the real
|
|
543
|
+
* canvas.
|
|
544
|
+
*/
|
|
545
|
+
private ensureCapabilitiesWired;
|
|
546
|
+
private currentCloudStatus;
|
|
547
|
+
private broadcastCloudStatus;
|
|
548
|
+
private sendCloudStatusToMiniapp;
|
|
549
|
+
/**
|
|
550
|
+
* Forward a streamed event to all miniapps subscribed to the given stream.
|
|
551
|
+
*
|
|
552
|
+
* Event name translation:
|
|
553
|
+
* - Cloud sends "head_up" → miniapp protocol uses "head_position" (HEAD_POSITION)
|
|
554
|
+
* - Cloud sends "VAD" (uppercase) → miniapp protocol uses "vad" (lowercase)
|
|
555
|
+
*/
|
|
556
|
+
forwardEvent(streamType: string, data: unknown, transcriptionSource?: TranscriptionEventSource): void;
|
|
557
|
+
/**
|
|
558
|
+
* Persist a final utterance into the shared memory timeline when the user
|
|
559
|
+
* has "remember conversations" on (Settings > Memory).
|
|
560
|
+
*
|
|
561
|
+
* Both transcription and translation streams feed this. For translation we
|
|
562
|
+
* store `originalText` — what was actually SPOKEN — not the translated
|
|
563
|
+
* `text`: the timeline records what happened around the user, and a
|
|
564
|
+
* translation-only session (a conversation across a language barrier) would
|
|
565
|
+
* otherwise leave no trace at all. MemoryEntry carries a single text +
|
|
566
|
+
* language, so the translated variant has nowhere to live; capturing the
|
|
567
|
+
* source keeps translation- and transcription-driven sessions consistent.
|
|
568
|
+
*
|
|
569
|
+
* Only finals are stored — interims are superseded within the same utterance
|
|
570
|
+
* and would bloat the timeline with partial text. Writes are fire-and-forget
|
|
571
|
+
* and debounced inside MemoryStore, so this stays off the fan-out hot path.
|
|
572
|
+
*
|
|
573
|
+
* Runs ONCE per produced event, above the per-subscriber fan-out loop — so
|
|
574
|
+
* route selection and wildcard stream matching (which live inside that loop)
|
|
575
|
+
* can't double-write. A miniapp subscribing to both transcription AND
|
|
576
|
+
* translation for the same speech would produce two events, but nothing does
|
|
577
|
+
* that today; if that changes, suppress it at the subscription level rather
|
|
578
|
+
* than filtering on text down here, which would also drop genuine repeats.
|
|
579
|
+
*/
|
|
580
|
+
private captureTranscriptToMemory;
|
|
581
|
+
private appTranscriptionRoutesForSubscription;
|
|
582
|
+
private appTranscriptionRoutesForEvent;
|
|
583
|
+
/**
|
|
584
|
+
* Translate cloud event names to miniapp stream type values.
|
|
585
|
+
*/
|
|
586
|
+
private normalizeStreamType;
|
|
587
|
+
/**
|
|
588
|
+
* Send a payload to a connected miniapp, wrapped in an envelope.
|
|
589
|
+
*/
|
|
590
|
+
/**
|
|
591
|
+
* Push a speaker-state transition to the owning miniapp. Idempotent: if
|
|
592
|
+
* the new state matches the cached one (and isn't an error), no envelope
|
|
593
|
+
* is sent. Error events are always sent — they're transient and the SDK
|
|
594
|
+
* settles back to a non-error state immediately after.
|
|
595
|
+
*/
|
|
596
|
+
private setSpeakerState;
|
|
597
|
+
private sendToMiniapp;
|
|
598
|
+
/**
|
|
599
|
+
* Send a REQUEST_RESULT response.
|
|
600
|
+
*/
|
|
601
|
+
/** Max serialized size of an action call's params / result (256 KB). */
|
|
602
|
+
private static readonly ACTION_PAYLOAD_CAP;
|
|
603
|
+
/** Outstanding action invocations, keyed by host-generated callId. */
|
|
604
|
+
private actionCalls;
|
|
605
|
+
private actionCallSeq;
|
|
606
|
+
private interopApps;
|
|
607
|
+
private isSystemPackage;
|
|
608
|
+
private startInteropApp;
|
|
609
|
+
private stopInteropApp;
|
|
610
|
+
private wakeInteropApp;
|
|
611
|
+
/** Emit an interop audit event (best-effort — never let telemetry break a call). */
|
|
612
|
+
private auditInterop;
|
|
613
|
+
/** Reject the request with NOT_PERMITTED unless the caller is a system app. */
|
|
614
|
+
private requireSystemCaller;
|
|
615
|
+
/** Project a host ClientApp into the SDK's MiniappInfo shape (JSON over the wire). */
|
|
616
|
+
private buildMiniappInfo;
|
|
617
|
+
private handleMiniappsList;
|
|
618
|
+
private handleMiniappsStart;
|
|
619
|
+
/**
|
|
620
|
+
* Self-stop (session.miniapps.stopSelf) — an app may always stop itself, so
|
|
621
|
+
* no system gate. One-shot: no reply, the caller's context is going away.
|
|
622
|
+
*/
|
|
623
|
+
private handleMiniappStopSelf;
|
|
624
|
+
private handleMiniappsStop;
|
|
625
|
+
/**
|
|
626
|
+
* session.actions.list → every action the caller may invoke across installed
|
|
627
|
+
* miniapps (the MCP tools/list analog). Open to all miniapps: rows are
|
|
628
|
+
* compatibility-filtered, exclude the caller's own actions, and only include
|
|
629
|
+
* `visibility: "system"` actions for system/dev callers.
|
|
630
|
+
*/
|
|
631
|
+
private handleActionsList;
|
|
632
|
+
/**
|
|
633
|
+
* session.system.exit → stop the calling miniapp itself. The result is sent
|
|
634
|
+
* before the stop so the SDK's pending request resolves rather than dying
|
|
635
|
+
* with the JS context (delivery is best-effort — the context is about to go).
|
|
636
|
+
*/
|
|
637
|
+
private handleSystemExit;
|
|
638
|
+
/** True iff `value` serializes larger than the action payload cap. */
|
|
639
|
+
private actionPayloadTooLarge;
|
|
640
|
+
/**
|
|
641
|
+
* session.actions.invoke → wake the target headlessly, deliver an ACTION_CALL,
|
|
642
|
+
* and correlate its ACTION_RESULT back to the caller's pending request.
|
|
643
|
+
*/
|
|
644
|
+
private handleActionInvoke;
|
|
645
|
+
/** Target → host: forward an ACTION_RESULT back to the caller's pending invoke. */
|
|
646
|
+
private handleActionResult;
|
|
647
|
+
private sendResult;
|
|
648
|
+
/**
|
|
649
|
+
* Send a VISIBILITY_CHANGE push to a miniapp.
|
|
650
|
+
*/
|
|
651
|
+
sendVisibilityChange(packageName: string, visibility: "foreground" | "background"): void;
|
|
652
|
+
/**
|
|
653
|
+
* Fast foreground liveness check used when a local miniapp UI is opened or
|
|
654
|
+
* resumed. The normal watchdog intentionally waits ~30s to avoid killing a
|
|
655
|
+
* healthy-but-busy background script. When the user is actively looking at a
|
|
656
|
+
* WebView, a stale JSContext reads as "cloud offline" / no captions, so probe
|
|
657
|
+
* immediately and reuse the crash-respawn path if no message comes back.
|
|
658
|
+
*/
|
|
659
|
+
probeForegroundLiveness(packageName: string, reason?: string, timeoutMs?: number): void;
|
|
660
|
+
private ensurePingLoop;
|
|
661
|
+
private stopPingLoop;
|
|
662
|
+
private doPingRound;
|
|
663
|
+
/**
|
|
664
|
+
* Called when a PONG is received from a miniapp (or any message, really).
|
|
665
|
+
* Updates lastPongAt to keep the app alive.
|
|
666
|
+
*/
|
|
667
|
+
handlePong(packageName: string): void;
|
|
668
|
+
private clearForegroundProbe;
|
|
669
|
+
cleanup(): void;
|
|
670
|
+
/**
|
|
671
|
+
* Number of currently connected miniapps (for diagnostics).
|
|
672
|
+
*/
|
|
673
|
+
get connectedAppCount(): number;
|
|
674
|
+
}
|
|
675
|
+
declare const localMiniappRuntime: LocalMiniappRuntime;
|
|
676
|
+
export default localMiniappRuntime;
|
|
677
|
+
//# sourceMappingURL=LocalMiniappRuntime.d.ts.map
|