@wix/legends-platform-sdk 1.0.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 +186 -0
- package/components/package.json +5 -0
- package/dist/cjs/components/Audio/Audio.js +31 -0
- package/dist/cjs/components/Audio/Audio.js.map +1 -0
- package/dist/cjs/components/Audio/index.js +10 -0
- package/dist/cjs/components/Audio/index.js.map +1 -0
- package/dist/cjs/components/ChromaKey/ChromaKey.js +127 -0
- package/dist/cjs/components/ChromaKey/ChromaKey.js.map +1 -0
- package/dist/cjs/components/ChromaKey/chroma-key.js +99 -0
- package/dist/cjs/components/ChromaKey/chroma-key.js.map +1 -0
- package/dist/cjs/components/ChromaKey/index.js +10 -0
- package/dist/cjs/components/ChromaKey/index.js.map +1 -0
- package/dist/cjs/components/ChromaKey/shaders/chroma-key.shader.js +44 -0
- package/dist/cjs/components/ChromaKey/shaders/chroma-key.shader.js.map +1 -0
- package/dist/cjs/components/ChromaKey/shaders/index.js +10 -0
- package/dist/cjs/components/ChromaKey/shaders/index.js.map +1 -0
- package/dist/cjs/components/ChromaKey/shaders/vertex-align.shader.js +12 -0
- package/dist/cjs/components/ChromaKey/shaders/vertex-align.shader.js.map +1 -0
- package/dist/cjs/components/ChromaKey/types.js +4 -0
- package/dist/cjs/components/ChromaKey/types.js.map +1 -0
- package/dist/cjs/components/LegendsPlatform/LegendsPlatform.js +91 -0
- package/dist/cjs/components/LegendsPlatform/LegendsPlatform.js.map +1 -0
- package/dist/cjs/components/LegendsPlatform/index.js +10 -0
- package/dist/cjs/components/LegendsPlatform/index.js.map +1 -0
- package/dist/cjs/components/LegendsPlatformQLess/LegendsPlatform.js +69 -0
- package/dist/cjs/components/LegendsPlatformQLess/LegendsPlatform.js.map +1 -0
- package/dist/cjs/components/LegendsPlatformQLess/index.js +10 -0
- package/dist/cjs/components/LegendsPlatformQLess/index.js.map +1 -0
- package/dist/cjs/components/Video/Video.js +88 -0
- package/dist/cjs/components/Video/Video.js.map +1 -0
- package/dist/cjs/components/Video/index.js +16 -0
- package/dist/cjs/components/Video/index.js.map +1 -0
- package/dist/cjs/components/Video/types.js +4 -0
- package/dist/cjs/components/Video/types.js.map +1 -0
- package/dist/cjs/components/Video/useAttachVideo.js +33 -0
- package/dist/cjs/components/Video/useAttachVideo.js.map +1 -0
- package/dist/cjs/components/VideoPostProcessor/VideoPostProcessor.js +61 -0
- package/dist/cjs/components/VideoPostProcessor/VideoPostProcessor.js.map +1 -0
- package/dist/cjs/components/VideoPostProcessor/effects.js +30 -0
- package/dist/cjs/components/VideoPostProcessor/effects.js.map +1 -0
- package/dist/cjs/components/VideoPostProcessor/index.js +10 -0
- package/dist/cjs/components/VideoPostProcessor/index.js.map +1 -0
- package/dist/cjs/components/VideoPreview/VideoPreview.js +68 -0
- package/dist/cjs/components/VideoPreview/VideoPreview.js.map +1 -0
- package/dist/cjs/components/VideoPreview/index.js +16 -0
- package/dist/cjs/components/VideoPreview/index.js.map +1 -0
- package/dist/cjs/components/VideoPreview/types.js +4 -0
- package/dist/cjs/components/VideoPreview/types.js.map +1 -0
- package/dist/cjs/components/VideoPreview/useVideoPreviewStream.js +85 -0
- package/dist/cjs/components/VideoPreview/useVideoPreviewStream.js.map +1 -0
- package/dist/cjs/components.js +34 -0
- package/dist/cjs/components.js.map +1 -0
- package/dist/cjs/conversation/index.js +18 -0
- package/dist/cjs/conversation/index.js.map +1 -0
- package/dist/cjs/conversation/state.js +24 -0
- package/dist/cjs/conversation/state.js.map +1 -0
- package/dist/cjs/conversation/types.js +4 -0
- package/dist/cjs/conversation/types.js.map +1 -0
- package/dist/cjs/conversation/utils.js +25 -0
- package/dist/cjs/conversation/utils.js.map +1 -0
- package/dist/cjs/external-types.d.js +2 -0
- package/dist/cjs/external-types.d.js.map +1 -0
- package/dist/cjs/hooks/index.js +58 -0
- package/dist/cjs/hooks/index.js.map +1 -0
- package/dist/cjs/hooks/useActivityState/index.js +10 -0
- package/dist/cjs/hooks/useActivityState/index.js.map +1 -0
- package/dist/cjs/hooks/useActivityState/useActivityState.js +15 -0
- package/dist/cjs/hooks/useActivityState/useActivityState.js.map +1 -0
- package/dist/cjs/hooks/useAudio/index.js +10 -0
- package/dist/cjs/hooks/useAudio/index.js.map +1 -0
- package/dist/cjs/hooks/useAudio/useAudio.js +28 -0
- package/dist/cjs/hooks/useAudio/useAudio.js.map +1 -0
- package/dist/cjs/hooks/useAudioLevel/helpers.js +28 -0
- package/dist/cjs/hooks/useAudioLevel/helpers.js.map +1 -0
- package/dist/cjs/hooks/useAudioLevel/index.js +10 -0
- package/dist/cjs/hooks/useAudioLevel/index.js.map +1 -0
- package/dist/cjs/hooks/useAudioLevel/types.js +4 -0
- package/dist/cjs/hooks/useAudioLevel/types.js.map +1 -0
- package/dist/cjs/hooks/useAudioLevel/useAudioLevel.js +49 -0
- package/dist/cjs/hooks/useAudioLevel/useAudioLevel.js.map +1 -0
- package/dist/cjs/hooks/useCamera/index.js +10 -0
- package/dist/cjs/hooks/useCamera/index.js.map +1 -0
- package/dist/cjs/hooks/useCamera/useCamera.js +32 -0
- package/dist/cjs/hooks/useCamera/useCamera.js.map +1 -0
- package/dist/cjs/hooks/useConnectionState/index.js +10 -0
- package/dist/cjs/hooks/useConnectionState/index.js.map +1 -0
- package/dist/cjs/hooks/useConnectionState/useConnectionState.js +15 -0
- package/dist/cjs/hooks/useConnectionState/useConnectionState.js.map +1 -0
- package/dist/cjs/hooks/useConversation/index.js +16 -0
- package/dist/cjs/hooks/useConversation/index.js.map +1 -0
- package/dist/cjs/hooks/useConversation/livekit/constants.js +15 -0
- package/dist/cjs/hooks/useConversation/livekit/constants.js.map +1 -0
- package/dist/cjs/hooks/useConversation/livekit/types.js +4 -0
- package/dist/cjs/hooks/useConversation/livekit/types.js.map +1 -0
- package/dist/cjs/hooks/useConversation/livekit/useConversation.js +371 -0
- package/dist/cjs/hooks/useConversation/livekit/useConversation.js.map +1 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/dataChannel.js +25 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/dataChannel.js.map +1 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/index.js +40 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/index.js.map +1 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/messaging.js +11 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/messaging.js.map +1 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/participants.js +34 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/participants.js.map +1 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/serialization.js +13 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/serialization.js.map +1 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/toolAdapter.js +18 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/toolAdapter.js.map +1 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/transcriptions.js +15 -0
- package/dist/cjs/hooks/useConversation/livekit/utils/transcriptions.js.map +1 -0
- package/dist/cjs/hooks/useConversation/types.js +4 -0
- package/dist/cjs/hooks/useConversation/types.js.map +1 -0
- package/dist/cjs/hooks/useConversation/useConversation.js +99 -0
- package/dist/cjs/hooks/useConversation/useConversation.js.map +1 -0
- package/dist/cjs/hooks/useConversationEvents/index.js +22 -0
- package/dist/cjs/hooks/useConversationEvents/index.js.map +1 -0
- package/dist/cjs/hooks/useConversationEvents/types.js +4 -0
- package/dist/cjs/hooks/useConversationEvents/types.js.map +1 -0
- package/dist/cjs/hooks/useConversationEvents/useConversationEvent.js +11 -0
- package/dist/cjs/hooks/useConversationEvents/useConversationEvent.js.map +1 -0
- package/dist/cjs/hooks/useConversationEvents/useConversationEvents.js +20 -0
- package/dist/cjs/hooks/useConversationEvents/useConversationEvents.js.map +1 -0
- package/dist/cjs/hooks/useConversationEvents/useEmitConversationEvent.js +13 -0
- package/dist/cjs/hooks/useConversationEvents/useEmitConversationEvent.js.map +1 -0
- package/dist/cjs/hooks/useConversationStatus/index.js +10 -0
- package/dist/cjs/hooks/useConversationStatus/index.js.map +1 -0
- package/dist/cjs/hooks/useConversationStatus/useConversationStatus.js +10 -0
- package/dist/cjs/hooks/useConversationStatus/useConversationStatus.js.map +1 -0
- package/dist/cjs/hooks/useConversationTimer/index.js +10 -0
- package/dist/cjs/hooks/useConversationTimer/index.js.map +1 -0
- package/dist/cjs/hooks/useConversationTimer/useConversationTimer.js +45 -0
- package/dist/cjs/hooks/useConversationTimer/useConversationTimer.js.map +1 -0
- package/dist/cjs/hooks/useCreateConversation/helpers.js +8 -0
- package/dist/cjs/hooks/useCreateConversation/helpers.js.map +1 -0
- package/dist/cjs/hooks/useCreateConversation/index.js +10 -0
- package/dist/cjs/hooks/useCreateConversation/index.js.map +1 -0
- package/dist/cjs/hooks/useCreateConversation/useCreateConversation.js +104 -0
- package/dist/cjs/hooks/useCreateConversation/useCreateConversation.js.map +1 -0
- package/dist/cjs/hooks/useDeviceSwitcher/index.js +10 -0
- package/dist/cjs/hooks/useDeviceSwitcher/index.js.map +1 -0
- package/dist/cjs/hooks/useDeviceSwitcher/useDeviceSwitcher.js +31 -0
- package/dist/cjs/hooks/useDeviceSwitcher/useDeviceSwitcher.js.map +1 -0
- package/dist/cjs/hooks/useDevices/index.js +10 -0
- package/dist/cjs/hooks/useDevices/index.js.map +1 -0
- package/dist/cjs/hooks/useDevices/useDevices.js +49 -0
- package/dist/cjs/hooks/useDevices/useDevices.js.map +1 -0
- package/dist/cjs/hooks/useMediaPermissions/index.js +10 -0
- package/dist/cjs/hooks/useMediaPermissions/index.js.map +1 -0
- package/dist/cjs/hooks/useMediaPermissions/types.js +4 -0
- package/dist/cjs/hooks/useMediaPermissions/types.js.map +1 -0
- package/dist/cjs/hooks/useMediaPermissions/useMediaPermissions.js +46 -0
- package/dist/cjs/hooks/useMediaPermissions/useMediaPermissions.js.map +1 -0
- package/dist/cjs/hooks/useMediaRecorder/index.js +10 -0
- package/dist/cjs/hooks/useMediaRecorder/index.js.map +1 -0
- package/dist/cjs/hooks/useMediaRecorder/useMediaRecorder.js +229 -0
- package/dist/cjs/hooks/useMediaRecorder/useMediaRecorder.js.map +1 -0
- package/dist/cjs/hooks/useMediaRecorder/useReactRecorder.js +298 -0
- package/dist/cjs/hooks/useMediaRecorder/useReactRecorder.js.map +1 -0
- package/dist/cjs/hooks/useMicrophone/index.js +10 -0
- package/dist/cjs/hooks/useMicrophone/index.js.map +1 -0
- package/dist/cjs/hooks/useMicrophone/useMicrophone.js +38 -0
- package/dist/cjs/hooks/useMicrophone/useMicrophone.js.map +1 -0
- package/dist/cjs/hooks/useParticipantTrack/index.js +10 -0
- package/dist/cjs/hooks/useParticipantTrack/index.js.map +1 -0
- package/dist/cjs/hooks/useParticipantTrack/useParticipantTrack.js +32 -0
- package/dist/cjs/hooks/useParticipantTrack/useParticipantTrack.js.map +1 -0
- package/dist/cjs/hooks/usePictureInPicture/index.js +13 -0
- package/dist/cjs/hooks/usePictureInPicture/index.js.map +1 -0
- package/dist/cjs/hooks/usePictureInPicture/state.js +14 -0
- package/dist/cjs/hooks/usePictureInPicture/state.js.map +1 -0
- package/dist/cjs/hooks/usePictureInPicture/types.js +4 -0
- package/dist/cjs/hooks/usePictureInPicture/types.js.map +1 -0
- package/dist/cjs/hooks/usePictureInPicture/usePictureInPicture.js +45 -0
- package/dist/cjs/hooks/usePictureInPicture/usePictureInPicture.js.map +1 -0
- package/dist/cjs/hooks/usePictureInPicture/usePictureInPictureAuto.js +116 -0
- package/dist/cjs/hooks/usePictureInPicture/usePictureInPictureAuto.js.map +1 -0
- package/dist/cjs/hooks/useScreenShare/index.js +10 -0
- package/dist/cjs/hooks/useScreenShare/index.js.map +1 -0
- package/dist/cjs/hooks/useScreenShare/useScreenShare.js +45 -0
- package/dist/cjs/hooks/useScreenShare/useScreenShare.js.map +1 -0
- package/dist/cjs/hooks/useSpeaker/index.js +10 -0
- package/dist/cjs/hooks/useSpeaker/index.js.map +1 -0
- package/dist/cjs/hooks/useSpeaker/useSpeaker.js +31 -0
- package/dist/cjs/hooks/useSpeaker/useSpeaker.js.map +1 -0
- package/dist/cjs/hooks/useTextChat/index.js +10 -0
- package/dist/cjs/hooks/useTextChat/index.js.map +1 -0
- package/dist/cjs/hooks/useTextChat/usePendingMessages.js +23 -0
- package/dist/cjs/hooks/useTextChat/usePendingMessages.js.map +1 -0
- package/dist/cjs/hooks/useTextChat/useTextChat.js +62 -0
- package/dist/cjs/hooks/useTextChat/useTextChat.js.map +1 -0
- package/dist/cjs/hooks/useTextChat/useToolAwareSend.js +33 -0
- package/dist/cjs/hooks/useTextChat/useToolAwareSend.js.map +1 -0
- package/dist/cjs/hooks/useTools/index.js +9 -0
- package/dist/cjs/hooks/useTools/index.js.map +1 -0
- package/dist/cjs/hooks/useTools/model/errors.js +12 -0
- package/dist/cjs/hooks/useTools/model/errors.js.map +1 -0
- package/dist/cjs/hooks/useTools/model/types.js +4 -0
- package/dist/cjs/hooks/useTools/model/types.js.map +1 -0
- package/dist/cjs/hooks/useTools/public/useTools.js +11 -0
- package/dist/cjs/hooks/useTools/public/useTools.js.map +1 -0
- package/dist/cjs/hooks/useTools/runtime/createToolRuntimeSession.js +74 -0
- package/dist/cjs/hooks/useTools/runtime/createToolRuntimeSession.js.map +1 -0
- package/dist/cjs/hooks/useTools/runtime/executeToolCall.js +33 -0
- package/dist/cjs/hooks/useTools/runtime/executeToolCall.js.map +1 -0
- package/dist/cjs/hooks/useTools/runtime/executeToolCallBatch.js +41 -0
- package/dist/cjs/hooks/useTools/runtime/executeToolCallBatch.js.map +1 -0
- package/dist/cjs/hooks/useTools/runtime/types.js +4 -0
- package/dist/cjs/hooks/useTools/runtime/types.js.map +1 -0
- package/dist/cjs/hooks/useTools/runtime/useToolCallingRuntime.js +59 -0
- package/dist/cjs/hooks/useTools/runtime/useToolCallingRuntime.js.map +1 -0
- package/dist/cjs/hooks/useTools/store/state.js +30 -0
- package/dist/cjs/hooks/useTools/store/state.js.map +1 -0
- package/dist/cjs/hooks/useTools/utils/normalizeFunctionCall.js +22 -0
- package/dist/cjs/hooks/useTools/utils/normalizeFunctionCall.js.map +1 -0
- package/dist/cjs/hooks/useTools/utils/serialize.js +28 -0
- package/dist/cjs/hooks/useTools/utils/serialize.js.map +1 -0
- package/dist/cjs/hooks/useTranscriptions/index.js +16 -0
- package/dist/cjs/hooks/useTranscriptions/index.js.map +1 -0
- package/dist/cjs/hooks/useTranscriptions/types.js +4 -0
- package/dist/cjs/hooks/useTranscriptions/types.js.map +1 -0
- package/dist/cjs/hooks/useTranscriptions/useTranscription.js +16 -0
- package/dist/cjs/hooks/useTranscriptions/useTranscription.js.map +1 -0
- package/dist/cjs/hooks/useTranscriptions/useTranscriptions.js +18 -0
- package/dist/cjs/hooks/useTranscriptions/useTranscriptions.js.map +1 -0
- package/dist/cjs/hooks/useUserActivity/index.js +10 -0
- package/dist/cjs/hooks/useUserActivity/index.js.map +1 -0
- package/dist/cjs/hooks/useUserActivity/useUserActivity.js +23 -0
- package/dist/cjs/hooks/useUserActivity/useUserActivity.js.map +1 -0
- package/dist/cjs/livekit/components.js +10 -0
- package/dist/cjs/livekit/components.js.map +1 -0
- package/dist/cjs/livekit/sdk.js +10 -0
- package/dist/cjs/livekit/sdk.js.map +1 -0
- package/dist/cjs/sdk-consumer/context.js +15 -0
- package/dist/cjs/sdk-consumer/context.js.map +1 -0
- package/dist/cjs/sdk-consumer/index.js +10 -0
- package/dist/cjs/sdk-consumer/index.js.map +1 -0
- package/dist/cjs/sdk.js +148 -0
- package/dist/cjs/sdk.js.map +1 -0
- package/dist/cjs/services/FetchPersonaChatService.js +139 -0
- package/dist/cjs/services/FetchPersonaChatService.js.map +1 -0
- package/dist/cjs/test-types.d.js +2 -0
- package/dist/cjs/test-types.d.js.map +1 -0
- package/dist/cjs/types/http.js +14 -0
- package/dist/cjs/types/http.js.map +1 -0
- package/dist/cjs/types/index.js +7 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/service.js +4 -0
- package/dist/cjs/types/service.js.map +1 -0
- package/dist/cjs/utils/captureImage/captureImage.js +29 -0
- package/dist/cjs/utils/captureImage/captureImage.js.map +1 -0
- package/dist/cjs/utils/captureImage/helpers.js +74 -0
- package/dist/cjs/utils/captureImage/helpers.js.map +1 -0
- package/dist/cjs/utils/captureImage/index.js +16 -0
- package/dist/cjs/utils/captureImage/index.js.map +1 -0
- package/dist/cjs/utils/captureImage/types.js +4 -0
- package/dist/cjs/utils/captureImage/types.js.map +1 -0
- package/dist/cjs/utils/compatibility/compatibility.js +17 -0
- package/dist/cjs/utils/compatibility/compatibility.js.map +1 -0
- package/dist/cjs/utils/compatibility/index.js +10 -0
- package/dist/cjs/utils/compatibility/index.js.map +1 -0
- package/dist/cjs/utils.js +10 -0
- package/dist/cjs/utils.js.map +1 -0
- package/dist/esm/components/Audio/Audio.js +18 -0
- package/dist/esm/components/Audio/Audio.js.map +1 -0
- package/dist/esm/components/Audio/index.js +2 -0
- package/dist/esm/components/Audio/index.js.map +1 -0
- package/dist/esm/components/ChromaKey/ChromaKey.js +115 -0
- package/dist/esm/components/ChromaKey/ChromaKey.js.map +1 -0
- package/dist/esm/components/ChromaKey/chroma-key.js +91 -0
- package/dist/esm/components/ChromaKey/chroma-key.js.map +1 -0
- package/dist/esm/components/ChromaKey/index.js +2 -0
- package/dist/esm/components/ChromaKey/index.js.map +1 -0
- package/dist/esm/components/ChromaKey/shaders/chroma-key.shader.js +40 -0
- package/dist/esm/components/ChromaKey/shaders/chroma-key.shader.js.map +1 -0
- package/dist/esm/components/ChromaKey/shaders/index.js +3 -0
- package/dist/esm/components/ChromaKey/shaders/index.js.map +1 -0
- package/dist/esm/components/ChromaKey/shaders/vertex-align.shader.js +8 -0
- package/dist/esm/components/ChromaKey/shaders/vertex-align.shader.js.map +1 -0
- package/dist/esm/components/ChromaKey/types.js +2 -0
- package/dist/esm/components/ChromaKey/types.js.map +1 -0
- package/dist/esm/components/LegendsPlatform/LegendsPlatform.js +53 -0
- package/dist/esm/components/LegendsPlatform/LegendsPlatform.js.map +1 -0
- package/dist/esm/components/LegendsPlatform/index.js +2 -0
- package/dist/esm/components/LegendsPlatform/index.js.map +1 -0
- package/dist/esm/components/LegendsPlatformQLess/LegendsPlatform.js +30 -0
- package/dist/esm/components/LegendsPlatformQLess/LegendsPlatform.js.map +1 -0
- package/dist/esm/components/LegendsPlatformQLess/index.js +2 -0
- package/dist/esm/components/LegendsPlatformQLess/index.js.map +1 -0
- package/dist/esm/components/Video/Video.js +73 -0
- package/dist/esm/components/Video/Video.js.map +1 -0
- package/dist/esm/components/Video/index.js +3 -0
- package/dist/esm/components/Video/index.js.map +1 -0
- package/dist/esm/components/Video/types.js +2 -0
- package/dist/esm/components/Video/types.js.map +1 -0
- package/dist/esm/components/Video/useAttachVideo.js +27 -0
- package/dist/esm/components/Video/useAttachVideo.js.map +1 -0
- package/dist/esm/components/VideoPostProcessor/VideoPostProcessor.js +47 -0
- package/dist/esm/components/VideoPostProcessor/VideoPostProcessor.js.map +1 -0
- package/dist/esm/components/VideoPostProcessor/effects.js +25 -0
- package/dist/esm/components/VideoPostProcessor/effects.js.map +1 -0
- package/dist/esm/components/VideoPostProcessor/index.js +2 -0
- package/dist/esm/components/VideoPostProcessor/index.js.map +1 -0
- package/dist/esm/components/VideoPreview/VideoPreview.js +48 -0
- package/dist/esm/components/VideoPreview/VideoPreview.js.map +1 -0
- package/dist/esm/components/VideoPreview/index.js +3 -0
- package/dist/esm/components/VideoPreview/index.js.map +1 -0
- package/dist/esm/components/VideoPreview/types.js +2 -0
- package/dist/esm/components/VideoPreview/types.js.map +1 -0
- package/dist/esm/components/VideoPreview/useVideoPreviewStream.js +85 -0
- package/dist/esm/components/VideoPreview/useVideoPreviewStream.js.map +1 -0
- package/dist/esm/components.js +6 -0
- package/dist/esm/components.js.map +1 -0
- package/dist/esm/conversation/index.js +4 -0
- package/dist/esm/conversation/index.js.map +1 -0
- package/dist/esm/conversation/state.js +20 -0
- package/dist/esm/conversation/state.js.map +1 -0
- package/dist/esm/conversation/types.js +2 -0
- package/dist/esm/conversation/types.js.map +1 -0
- package/dist/esm/conversation/utils.js +21 -0
- package/dist/esm/conversation/utils.js.map +1 -0
- package/dist/esm/external-types.d.js +2 -0
- package/dist/esm/external-types.d.js.map +1 -0
- package/dist/esm/hooks/index.js +10 -0
- package/dist/esm/hooks/index.js.map +1 -0
- package/dist/esm/hooks/useActivityState/index.js +2 -0
- package/dist/esm/hooks/useActivityState/index.js.map +1 -0
- package/dist/esm/hooks/useActivityState/useActivityState.js +11 -0
- package/dist/esm/hooks/useActivityState/useActivityState.js.map +1 -0
- package/dist/esm/hooks/useAudio/index.js +2 -0
- package/dist/esm/hooks/useAudio/index.js.map +1 -0
- package/dist/esm/hooks/useAudio/useAudio.js +26 -0
- package/dist/esm/hooks/useAudio/useAudio.js.map +1 -0
- package/dist/esm/hooks/useAudioLevel/helpers.js +23 -0
- package/dist/esm/hooks/useAudioLevel/helpers.js.map +1 -0
- package/dist/esm/hooks/useAudioLevel/index.js +2 -0
- package/dist/esm/hooks/useAudioLevel/index.js.map +1 -0
- package/dist/esm/hooks/useAudioLevel/types.js +2 -0
- package/dist/esm/hooks/useAudioLevel/types.js.map +1 -0
- package/dist/esm/hooks/useAudioLevel/useAudioLevel.js +43 -0
- package/dist/esm/hooks/useAudioLevel/useAudioLevel.js.map +1 -0
- package/dist/esm/hooks/useCamera/index.js +2 -0
- package/dist/esm/hooks/useCamera/index.js.map +1 -0
- package/dist/esm/hooks/useCamera/useCamera.js +29 -0
- package/dist/esm/hooks/useCamera/useCamera.js.map +1 -0
- package/dist/esm/hooks/useConnectionState/index.js +2 -0
- package/dist/esm/hooks/useConnectionState/index.js.map +1 -0
- package/dist/esm/hooks/useConnectionState/useConnectionState.js +11 -0
- package/dist/esm/hooks/useConnectionState/useConnectionState.js.map +1 -0
- package/dist/esm/hooks/useConversation/index.js +3 -0
- package/dist/esm/hooks/useConversation/index.js.map +1 -0
- package/dist/esm/hooks/useConversation/livekit/constants.js +11 -0
- package/dist/esm/hooks/useConversation/livekit/constants.js.map +1 -0
- package/dist/esm/hooks/useConversation/livekit/types.js +2 -0
- package/dist/esm/hooks/useConversation/livekit/types.js.map +1 -0
- package/dist/esm/hooks/useConversation/livekit/useConversation.js +377 -0
- package/dist/esm/hooks/useConversation/livekit/useConversation.js.map +1 -0
- package/dist/esm/hooks/useConversation/livekit/utils/dataChannel.js +18 -0
- package/dist/esm/hooks/useConversation/livekit/utils/dataChannel.js.map +1 -0
- package/dist/esm/hooks/useConversation/livekit/utils/index.js +7 -0
- package/dist/esm/hooks/useConversation/livekit/utils/index.js.map +1 -0
- package/dist/esm/hooks/useConversation/livekit/utils/messaging.js +7 -0
- package/dist/esm/hooks/useConversation/livekit/utils/messaging.js.map +1 -0
- package/dist/esm/hooks/useConversation/livekit/utils/participants.js +28 -0
- package/dist/esm/hooks/useConversation/livekit/utils/participants.js.map +1 -0
- package/dist/esm/hooks/useConversation/livekit/utils/serialization.js +9 -0
- package/dist/esm/hooks/useConversation/livekit/utils/serialization.js.map +1 -0
- package/dist/esm/hooks/useConversation/livekit/utils/toolAdapter.js +14 -0
- package/dist/esm/hooks/useConversation/livekit/utils/toolAdapter.js.map +1 -0
- package/dist/esm/hooks/useConversation/livekit/utils/transcriptions.js +11 -0
- package/dist/esm/hooks/useConversation/livekit/utils/transcriptions.js.map +1 -0
- package/dist/esm/hooks/useConversation/types.js +2 -0
- package/dist/esm/hooks/useConversation/types.js.map +1 -0
- package/dist/esm/hooks/useConversation/useConversation.js +93 -0
- package/dist/esm/hooks/useConversation/useConversation.js.map +1 -0
- package/dist/esm/hooks/useConversationEvents/index.js +4 -0
- package/dist/esm/hooks/useConversationEvents/index.js.map +1 -0
- package/dist/esm/hooks/useConversationEvents/types.js +2 -0
- package/dist/esm/hooks/useConversationEvents/types.js.map +1 -0
- package/dist/esm/hooks/useConversationEvents/useConversationEvent.js +7 -0
- package/dist/esm/hooks/useConversationEvents/useConversationEvent.js.map +1 -0
- package/dist/esm/hooks/useConversationEvents/useConversationEvents.js +20 -0
- package/dist/esm/hooks/useConversationEvents/useConversationEvents.js.map +1 -0
- package/dist/esm/hooks/useConversationEvents/useEmitConversationEvent.js +9 -0
- package/dist/esm/hooks/useConversationEvents/useEmitConversationEvent.js.map +1 -0
- package/dist/esm/hooks/useConversationStatus/index.js +2 -0
- package/dist/esm/hooks/useConversationStatus/index.js.map +1 -0
- package/dist/esm/hooks/useConversationStatus/useConversationStatus.js +6 -0
- package/dist/esm/hooks/useConversationStatus/useConversationStatus.js.map +1 -0
- package/dist/esm/hooks/useConversationTimer/index.js +2 -0
- package/dist/esm/hooks/useConversationTimer/index.js.map +1 -0
- package/dist/esm/hooks/useConversationTimer/useConversationTimer.js +44 -0
- package/dist/esm/hooks/useConversationTimer/useConversationTimer.js.map +1 -0
- package/dist/esm/hooks/useCreateConversation/helpers.js +4 -0
- package/dist/esm/hooks/useCreateConversation/helpers.js.map +1 -0
- package/dist/esm/hooks/useCreateConversation/index.js +2 -0
- package/dist/esm/hooks/useCreateConversation/index.js.map +1 -0
- package/dist/esm/hooks/useCreateConversation/useCreateConversation.js +98 -0
- package/dist/esm/hooks/useCreateConversation/useCreateConversation.js.map +1 -0
- package/dist/esm/hooks/useDeviceSwitcher/index.js +2 -0
- package/dist/esm/hooks/useDeviceSwitcher/index.js.map +1 -0
- package/dist/esm/hooks/useDeviceSwitcher/useDeviceSwitcher.js +26 -0
- package/dist/esm/hooks/useDeviceSwitcher/useDeviceSwitcher.js.map +1 -0
- package/dist/esm/hooks/useDevices/index.js +2 -0
- package/dist/esm/hooks/useDevices/index.js.map +1 -0
- package/dist/esm/hooks/useDevices/useDevices.js +45 -0
- package/dist/esm/hooks/useDevices/useDevices.js.map +1 -0
- package/dist/esm/hooks/useMediaPermissions/index.js +3 -0
- package/dist/esm/hooks/useMediaPermissions/index.js.map +1 -0
- package/dist/esm/hooks/useMediaPermissions/types.js +2 -0
- package/dist/esm/hooks/useMediaPermissions/types.js.map +1 -0
- package/dist/esm/hooks/useMediaPermissions/useMediaPermissions.js +42 -0
- package/dist/esm/hooks/useMediaPermissions/useMediaPermissions.js.map +1 -0
- package/dist/esm/hooks/useMediaRecorder/index.js +2 -0
- package/dist/esm/hooks/useMediaRecorder/index.js.map +1 -0
- package/dist/esm/hooks/useMediaRecorder/useMediaRecorder.js +227 -0
- package/dist/esm/hooks/useMediaRecorder/useMediaRecorder.js.map +1 -0
- package/dist/esm/hooks/useMediaRecorder/useReactRecorder.js +315 -0
- package/dist/esm/hooks/useMediaRecorder/useReactRecorder.js.map +1 -0
- package/dist/esm/hooks/useMicrophone/index.js +2 -0
- package/dist/esm/hooks/useMicrophone/index.js.map +1 -0
- package/dist/esm/hooks/useMicrophone/useMicrophone.js +35 -0
- package/dist/esm/hooks/useMicrophone/useMicrophone.js.map +1 -0
- package/dist/esm/hooks/useParticipantTrack/index.js +2 -0
- package/dist/esm/hooks/useParticipantTrack/index.js.map +1 -0
- package/dist/esm/hooks/useParticipantTrack/useParticipantTrack.js +26 -0
- package/dist/esm/hooks/useParticipantTrack/useParticipantTrack.js.map +1 -0
- package/dist/esm/hooks/usePictureInPicture/index.js +5 -0
- package/dist/esm/hooks/usePictureInPicture/index.js.map +1 -0
- package/dist/esm/hooks/usePictureInPicture/state.js +10 -0
- package/dist/esm/hooks/usePictureInPicture/state.js.map +1 -0
- package/dist/esm/hooks/usePictureInPicture/types.js +2 -0
- package/dist/esm/hooks/usePictureInPicture/types.js.map +1 -0
- package/dist/esm/hooks/usePictureInPicture/usePictureInPicture.js +41 -0
- package/dist/esm/hooks/usePictureInPicture/usePictureInPicture.js.map +1 -0
- package/dist/esm/hooks/usePictureInPicture/usePictureInPictureAuto.js +111 -0
- package/dist/esm/hooks/usePictureInPicture/usePictureInPictureAuto.js.map +1 -0
- package/dist/esm/hooks/useScreenShare/index.js +2 -0
- package/dist/esm/hooks/useScreenShare/index.js.map +1 -0
- package/dist/esm/hooks/useScreenShare/useScreenShare.js +42 -0
- package/dist/esm/hooks/useScreenShare/useScreenShare.js.map +1 -0
- package/dist/esm/hooks/useSpeaker/index.js +2 -0
- package/dist/esm/hooks/useSpeaker/index.js.map +1 -0
- package/dist/esm/hooks/useSpeaker/useSpeaker.js +28 -0
- package/dist/esm/hooks/useSpeaker/useSpeaker.js.map +1 -0
- package/dist/esm/hooks/useTextChat/index.js +2 -0
- package/dist/esm/hooks/useTextChat/index.js.map +1 -0
- package/dist/esm/hooks/useTextChat/usePendingMessages.js +19 -0
- package/dist/esm/hooks/useTextChat/usePendingMessages.js.map +1 -0
- package/dist/esm/hooks/useTextChat/useTextChat.js +59 -0
- package/dist/esm/hooks/useTextChat/useTextChat.js.map +1 -0
- package/dist/esm/hooks/useTextChat/useToolAwareSend.js +28 -0
- package/dist/esm/hooks/useTextChat/useToolAwareSend.js.map +1 -0
- package/dist/esm/hooks/useTools/index.js +3 -0
- package/dist/esm/hooks/useTools/index.js.map +1 -0
- package/dist/esm/hooks/useTools/model/errors.js +7 -0
- package/dist/esm/hooks/useTools/model/errors.js.map +1 -0
- package/dist/esm/hooks/useTools/model/types.js +2 -0
- package/dist/esm/hooks/useTools/model/types.js.map +1 -0
- package/dist/esm/hooks/useTools/public/useTools.js +7 -0
- package/dist/esm/hooks/useTools/public/useTools.js.map +1 -0
- package/dist/esm/hooks/useTools/runtime/createToolRuntimeSession.js +66 -0
- package/dist/esm/hooks/useTools/runtime/createToolRuntimeSession.js.map +1 -0
- package/dist/esm/hooks/useTools/runtime/executeToolCall.js +29 -0
- package/dist/esm/hooks/useTools/runtime/executeToolCall.js.map +1 -0
- package/dist/esm/hooks/useTools/runtime/executeToolCallBatch.js +36 -0
- package/dist/esm/hooks/useTools/runtime/executeToolCallBatch.js.map +1 -0
- package/dist/esm/hooks/useTools/runtime/types.js +2 -0
- package/dist/esm/hooks/useTools/runtime/types.js.map +1 -0
- package/dist/esm/hooks/useTools/runtime/useToolCallingRuntime.js +58 -0
- package/dist/esm/hooks/useTools/runtime/useToolCallingRuntime.js.map +1 -0
- package/dist/esm/hooks/useTools/store/state.js +26 -0
- package/dist/esm/hooks/useTools/store/state.js.map +1 -0
- package/dist/esm/hooks/useTools/utils/normalizeFunctionCall.js +18 -0
- package/dist/esm/hooks/useTools/utils/normalizeFunctionCall.js.map +1 -0
- package/dist/esm/hooks/useTools/utils/serialize.js +23 -0
- package/dist/esm/hooks/useTools/utils/serialize.js.map +1 -0
- package/dist/esm/hooks/useTranscriptions/index.js +3 -0
- package/dist/esm/hooks/useTranscriptions/index.js.map +1 -0
- package/dist/esm/hooks/useTranscriptions/types.js +2 -0
- package/dist/esm/hooks/useTranscriptions/types.js.map +1 -0
- package/dist/esm/hooks/useTranscriptions/useTranscription.js +15 -0
- package/dist/esm/hooks/useTranscriptions/useTranscription.js.map +1 -0
- package/dist/esm/hooks/useTranscriptions/useTranscriptions.js +15 -0
- package/dist/esm/hooks/useTranscriptions/useTranscriptions.js.map +1 -0
- package/dist/esm/hooks/useUserActivity/index.js +2 -0
- package/dist/esm/hooks/useUserActivity/index.js.map +1 -0
- package/dist/esm/hooks/useUserActivity/useUserActivity.js +22 -0
- package/dist/esm/hooks/useUserActivity/useUserActivity.js.map +1 -0
- package/dist/esm/livekit/components.js +2 -0
- package/dist/esm/livekit/components.js.map +1 -0
- package/dist/esm/livekit/sdk.js +2 -0
- package/dist/esm/livekit/sdk.js.map +1 -0
- package/dist/esm/sdk-consumer/context.js +10 -0
- package/dist/esm/sdk-consumer/context.js.map +1 -0
- package/dist/esm/sdk-consumer/index.js +2 -0
- package/dist/esm/sdk-consumer/index.js.map +1 -0
- package/dist/esm/sdk.js +25 -0
- package/dist/esm/sdk.js.map +1 -0
- package/dist/esm/services/FetchPersonaChatService.js +124 -0
- package/dist/esm/services/FetchPersonaChatService.js.map +1 -0
- package/dist/esm/test-types.d.js +2 -0
- package/dist/esm/test-types.d.js.map +1 -0
- package/dist/esm/types/http.js +9 -0
- package/dist/esm/types/http.js.map +1 -0
- package/dist/esm/types/index.js +2 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/service.js +2 -0
- package/dist/esm/types/service.js.map +1 -0
- package/dist/esm/utils/captureImage/captureImage.js +29 -0
- package/dist/esm/utils/captureImage/captureImage.js.map +1 -0
- package/dist/esm/utils/captureImage/helpers.js +69 -0
- package/dist/esm/utils/captureImage/helpers.js.map +1 -0
- package/dist/esm/utils/captureImage/index.js +3 -0
- package/dist/esm/utils/captureImage/index.js.map +1 -0
- package/dist/esm/utils/captureImage/types.js +2 -0
- package/dist/esm/utils/captureImage/types.js.map +1 -0
- package/dist/esm/utils/compatibility/compatibility.js +12 -0
- package/dist/esm/utils/compatibility/compatibility.js.map +1 -0
- package/dist/esm/utils/compatibility/index.js +2 -0
- package/dist/esm/utils/compatibility/index.js.map +1 -0
- package/dist/esm/utils.js +2 -0
- package/dist/esm/utils.js.map +1 -0
- package/dist/types/components/Audio/Audio.d.ts +3 -0
- package/dist/types/components/Audio/Audio.d.ts.map +1 -0
- package/dist/types/components/Audio/index.d.ts +2 -0
- package/dist/types/components/Audio/index.d.ts.map +1 -0
- package/dist/types/components/ChromaKey/ChromaKey.d.ts +20 -0
- package/dist/types/components/ChromaKey/ChromaKey.d.ts.map +1 -0
- package/dist/types/components/ChromaKey/chroma-key.d.ts +9 -0
- package/dist/types/components/ChromaKey/chroma-key.d.ts.map +1 -0
- package/dist/types/components/ChromaKey/index.d.ts +2 -0
- package/dist/types/components/ChromaKey/index.d.ts.map +1 -0
- package/dist/types/components/ChromaKey/shaders/chroma-key.shader.d.ts +3 -0
- package/dist/types/components/ChromaKey/shaders/chroma-key.shader.d.ts.map +1 -0
- package/dist/types/components/ChromaKey/shaders/index.d.ts +3 -0
- package/dist/types/components/ChromaKey/shaders/index.d.ts.map +1 -0
- package/dist/types/components/ChromaKey/shaders/vertex-align.shader.d.ts +3 -0
- package/dist/types/components/ChromaKey/shaders/vertex-align.shader.d.ts.map +1 -0
- package/dist/types/components/ChromaKey/types.d.ts +3 -0
- package/dist/types/components/ChromaKey/types.d.ts.map +1 -0
- package/dist/types/components/LegendsPlatform/LegendsPlatform.d.ts +18 -0
- package/dist/types/components/LegendsPlatform/LegendsPlatform.d.ts.map +1 -0
- package/dist/types/components/LegendsPlatform/index.d.ts +2 -0
- package/dist/types/components/LegendsPlatform/index.d.ts.map +1 -0
- package/dist/types/components/LegendsPlatformQLess/LegendsPlatform.d.ts +15 -0
- package/dist/types/components/LegendsPlatformQLess/LegendsPlatform.d.ts.map +1 -0
- package/dist/types/components/LegendsPlatformQLess/index.d.ts +2 -0
- package/dist/types/components/LegendsPlatformQLess/index.d.ts.map +1 -0
- package/dist/types/components/Video/Video.d.ts +14 -0
- package/dist/types/components/Video/Video.d.ts.map +1 -0
- package/dist/types/components/Video/index.d.ts +3 -0
- package/dist/types/components/Video/index.d.ts.map +1 -0
- package/dist/types/components/Video/types.d.ts +22 -0
- package/dist/types/components/Video/types.d.ts.map +1 -0
- package/dist/types/components/Video/useAttachVideo.d.ts +10 -0
- package/dist/types/components/Video/useAttachVideo.d.ts.map +1 -0
- package/dist/types/components/VideoPostProcessor/VideoPostProcessor.d.ts +11 -0
- package/dist/types/components/VideoPostProcessor/VideoPostProcessor.d.ts.map +1 -0
- package/dist/types/components/VideoPostProcessor/effects.d.ts +3 -0
- package/dist/types/components/VideoPostProcessor/effects.d.ts.map +1 -0
- package/dist/types/components/VideoPostProcessor/index.d.ts +2 -0
- package/dist/types/components/VideoPostProcessor/index.d.ts.map +1 -0
- package/dist/types/components/VideoPreview/VideoPreview.d.ts +4 -0
- package/dist/types/components/VideoPreview/VideoPreview.d.ts.map +1 -0
- package/dist/types/components/VideoPreview/index.d.ts +3 -0
- package/dist/types/components/VideoPreview/index.d.ts.map +1 -0
- package/dist/types/components/VideoPreview/types.d.ts +11 -0
- package/dist/types/components/VideoPreview/types.d.ts.map +1 -0
- package/dist/types/components/VideoPreview/useVideoPreviewStream.d.ts +13 -0
- package/dist/types/components/VideoPreview/useVideoPreviewStream.d.ts.map +1 -0
- package/dist/types/components.d.ts +6 -0
- package/dist/types/components.d.ts.map +1 -0
- package/dist/types/conversation/index.d.ts +3 -0
- package/dist/types/conversation/index.d.ts.map +1 -0
- package/dist/types/conversation/state.d.ts +47 -0
- package/dist/types/conversation/state.d.ts.map +1 -0
- package/dist/types/conversation/types.d.ts +27 -0
- package/dist/types/conversation/types.d.ts.map +1 -0
- package/dist/types/conversation/utils.d.ts +6 -0
- package/dist/types/conversation/utils.d.ts.map +1 -0
- package/dist/types/hooks/index.d.ts +10 -0
- package/dist/types/hooks/index.d.ts.map +1 -0
- package/dist/types/hooks/useActivityState/index.d.ts +2 -0
- package/dist/types/hooks/useActivityState/index.d.ts.map +1 -0
- package/dist/types/hooks/useActivityState/useActivityState.d.ts +2 -0
- package/dist/types/hooks/useActivityState/useActivityState.d.ts.map +1 -0
- package/dist/types/hooks/useAudio/index.d.ts +2 -0
- package/dist/types/hooks/useAudio/index.d.ts.map +1 -0
- package/dist/types/hooks/useAudio/useAudio.d.ts +7 -0
- package/dist/types/hooks/useAudio/useAudio.d.ts.map +1 -0
- package/dist/types/hooks/useAudioLevel/helpers.d.ts +11 -0
- package/dist/types/hooks/useAudioLevel/helpers.d.ts.map +1 -0
- package/dist/types/hooks/useAudioLevel/index.d.ts +2 -0
- package/dist/types/hooks/useAudioLevel/index.d.ts.map +1 -0
- package/dist/types/hooks/useAudioLevel/types.d.ts +8 -0
- package/dist/types/hooks/useAudioLevel/types.d.ts.map +1 -0
- package/dist/types/hooks/useAudioLevel/useAudioLevel.d.ts +3 -0
- package/dist/types/hooks/useAudioLevel/useAudioLevel.d.ts.map +1 -0
- package/dist/types/hooks/useCamera/index.d.ts +2 -0
- package/dist/types/hooks/useCamera/index.d.ts.map +1 -0
- package/dist/types/hooks/useCamera/useCamera.d.ts +8 -0
- package/dist/types/hooks/useCamera/useCamera.d.ts.map +1 -0
- package/dist/types/hooks/useConnectionState/index.d.ts +2 -0
- package/dist/types/hooks/useConnectionState/index.d.ts.map +1 -0
- package/dist/types/hooks/useConnectionState/useConnectionState.d.ts +2 -0
- package/dist/types/hooks/useConnectionState/useConnectionState.d.ts.map +1 -0
- package/dist/types/hooks/useConversation/index.d.ts +3 -0
- package/dist/types/hooks/useConversation/index.d.ts.map +1 -0
- package/dist/types/hooks/useConversation/livekit/constants.d.ts +4 -0
- package/dist/types/hooks/useConversation/livekit/constants.d.ts.map +1 -0
- package/dist/types/hooks/useConversation/livekit/types.d.ts +32 -0
- package/dist/types/hooks/useConversation/livekit/types.d.ts.map +1 -0
- package/dist/types/hooks/useConversation/livekit/useConversation.d.ts +3 -0
- package/dist/types/hooks/useConversation/livekit/useConversation.d.ts.map +1 -0
- package/dist/types/hooks/useConversation/livekit/utils/dataChannel.d.ts +6 -0
- package/dist/types/hooks/useConversation/livekit/utils/dataChannel.d.ts.map +1 -0
- package/dist/types/hooks/useConversation/livekit/utils/index.d.ts +7 -0
- package/dist/types/hooks/useConversation/livekit/utils/index.d.ts.map +1 -0
- package/dist/types/hooks/useConversation/livekit/utils/messaging.d.ts +3 -0
- package/dist/types/hooks/useConversation/livekit/utils/messaging.d.ts.map +1 -0
- package/dist/types/hooks/useConversation/livekit/utils/participants.d.ts +6 -0
- package/dist/types/hooks/useConversation/livekit/utils/participants.d.ts.map +1 -0
- package/dist/types/hooks/useConversation/livekit/utils/serialization.d.ts +2 -0
- package/dist/types/hooks/useConversation/livekit/utils/serialization.d.ts.map +1 -0
- package/dist/types/hooks/useConversation/livekit/utils/toolAdapter.d.ts +4 -0
- package/dist/types/hooks/useConversation/livekit/utils/toolAdapter.d.ts.map +1 -0
- package/dist/types/hooks/useConversation/livekit/utils/transcriptions.d.ts +3 -0
- package/dist/types/hooks/useConversation/livekit/utils/transcriptions.d.ts.map +1 -0
- package/dist/types/hooks/useConversation/types.d.ts +23 -0
- package/dist/types/hooks/useConversation/types.d.ts.map +1 -0
- package/dist/types/hooks/useConversation/useConversation.d.ts +3 -0
- package/dist/types/hooks/useConversation/useConversation.d.ts.map +1 -0
- package/dist/types/hooks/useConversationEvents/index.d.ts +4 -0
- package/dist/types/hooks/useConversationEvents/index.d.ts.map +1 -0
- package/dist/types/hooks/useConversationEvents/types.d.ts +72 -0
- package/dist/types/hooks/useConversationEvents/types.d.ts.map +1 -0
- package/dist/types/hooks/useConversationEvents/useConversationEvent.d.ts +3 -0
- package/dist/types/hooks/useConversationEvents/useConversationEvent.d.ts.map +1 -0
- package/dist/types/hooks/useConversationEvents/useConversationEvents.d.ts +5 -0
- package/dist/types/hooks/useConversationEvents/useConversationEvents.d.ts.map +1 -0
- package/dist/types/hooks/useConversationEvents/useEmitConversationEvent.d.ts +3 -0
- package/dist/types/hooks/useConversationEvents/useEmitConversationEvent.d.ts.map +1 -0
- package/dist/types/hooks/useConversationStatus/index.d.ts +2 -0
- package/dist/types/hooks/useConversationStatus/index.d.ts.map +1 -0
- package/dist/types/hooks/useConversationStatus/useConversationStatus.d.ts +2 -0
- package/dist/types/hooks/useConversationStatus/useConversationStatus.d.ts.map +1 -0
- package/dist/types/hooks/useConversationTimer/index.d.ts +2 -0
- package/dist/types/hooks/useConversationTimer/index.d.ts.map +1 -0
- package/dist/types/hooks/useConversationTimer/useConversationTimer.d.ts +17 -0
- package/dist/types/hooks/useConversationTimer/useConversationTimer.d.ts.map +1 -0
- package/dist/types/hooks/useCreateConversation/helpers.d.ts +8 -0
- package/dist/types/hooks/useCreateConversation/helpers.d.ts.map +1 -0
- package/dist/types/hooks/useCreateConversation/index.d.ts +2 -0
- package/dist/types/hooks/useCreateConversation/index.d.ts.map +1 -0
- package/dist/types/hooks/useCreateConversation/useCreateConversation.d.ts +11 -0
- package/dist/types/hooks/useCreateConversation/useCreateConversation.d.ts.map +1 -0
- package/dist/types/hooks/useDeviceSwitcher/index.d.ts +2 -0
- package/dist/types/hooks/useDeviceSwitcher/index.d.ts.map +1 -0
- package/dist/types/hooks/useDeviceSwitcher/useDeviceSwitcher.d.ts +9 -0
- package/dist/types/hooks/useDeviceSwitcher/useDeviceSwitcher.d.ts.map +1 -0
- package/dist/types/hooks/useDevices/index.d.ts +2 -0
- package/dist/types/hooks/useDevices/index.d.ts.map +1 -0
- package/dist/types/hooks/useDevices/useDevices.d.ts +6 -0
- package/dist/types/hooks/useDevices/useDevices.d.ts.map +1 -0
- package/dist/types/hooks/useMediaPermissions/index.d.ts +3 -0
- package/dist/types/hooks/useMediaPermissions/index.d.ts.map +1 -0
- package/dist/types/hooks/useMediaPermissions/types.d.ts +3 -0
- package/dist/types/hooks/useMediaPermissions/types.d.ts.map +1 -0
- package/dist/types/hooks/useMediaPermissions/useMediaPermissions.d.ts +7 -0
- package/dist/types/hooks/useMediaPermissions/useMediaPermissions.d.ts.map +1 -0
- package/dist/types/hooks/useMediaRecorder/index.d.ts +2 -0
- package/dist/types/hooks/useMediaRecorder/index.d.ts.map +1 -0
- package/dist/types/hooks/useMediaRecorder/useMediaRecorder.d.ts +39 -0
- package/dist/types/hooks/useMediaRecorder/useMediaRecorder.d.ts.map +1 -0
- package/dist/types/hooks/useMediaRecorder/useReactRecorder.d.ts +70 -0
- package/dist/types/hooks/useMediaRecorder/useReactRecorder.d.ts.map +1 -0
- package/dist/types/hooks/useMicrophone/index.d.ts +2 -0
- package/dist/types/hooks/useMicrophone/index.d.ts.map +1 -0
- package/dist/types/hooks/useMicrophone/useMicrophone.d.ts +8 -0
- package/dist/types/hooks/useMicrophone/useMicrophone.d.ts.map +1 -0
- package/dist/types/hooks/useParticipantTrack/index.d.ts +2 -0
- package/dist/types/hooks/useParticipantTrack/index.d.ts.map +1 -0
- package/dist/types/hooks/useParticipantTrack/useParticipantTrack.d.ts +11 -0
- package/dist/types/hooks/useParticipantTrack/useParticipantTrack.d.ts.map +1 -0
- package/dist/types/hooks/usePictureInPicture/index.d.ts +6 -0
- package/dist/types/hooks/usePictureInPicture/index.d.ts.map +1 -0
- package/dist/types/hooks/usePictureInPicture/state.d.ts +8 -0
- package/dist/types/hooks/usePictureInPicture/state.d.ts.map +1 -0
- package/dist/types/hooks/usePictureInPicture/types.d.ts +25 -0
- package/dist/types/hooks/usePictureInPicture/types.d.ts.map +1 -0
- package/dist/types/hooks/usePictureInPicture/usePictureInPicture.d.ts +3 -0
- package/dist/types/hooks/usePictureInPicture/usePictureInPicture.d.ts.map +1 -0
- package/dist/types/hooks/usePictureInPicture/usePictureInPictureAuto.d.ts +3 -0
- package/dist/types/hooks/usePictureInPicture/usePictureInPictureAuto.d.ts.map +1 -0
- package/dist/types/hooks/useScreenShare/index.d.ts +2 -0
- package/dist/types/hooks/useScreenShare/index.d.ts.map +1 -0
- package/dist/types/hooks/useScreenShare/useScreenShare.d.ts +13 -0
- package/dist/types/hooks/useScreenShare/useScreenShare.d.ts.map +1 -0
- package/dist/types/hooks/useSpeaker/index.d.ts +2 -0
- package/dist/types/hooks/useSpeaker/index.d.ts.map +1 -0
- package/dist/types/hooks/useSpeaker/useSpeaker.d.ts +6 -0
- package/dist/types/hooks/useSpeaker/useSpeaker.d.ts.map +1 -0
- package/dist/types/hooks/useTextChat/index.d.ts +2 -0
- package/dist/types/hooks/useTextChat/index.d.ts.map +1 -0
- package/dist/types/hooks/useTextChat/usePendingMessages.d.ts +11 -0
- package/dist/types/hooks/useTextChat/usePendingMessages.d.ts.map +1 -0
- package/dist/types/hooks/useTextChat/useTextChat.d.ts +21 -0
- package/dist/types/hooks/useTextChat/useTextChat.d.ts.map +1 -0
- package/dist/types/hooks/useTextChat/useToolAwareSend.d.ts +8 -0
- package/dist/types/hooks/useTextChat/useToolAwareSend.d.ts.map +1 -0
- package/dist/types/hooks/useTools/index.d.ts +4 -0
- package/dist/types/hooks/useTools/index.d.ts.map +1 -0
- package/dist/types/hooks/useTools/model/errors.d.ts +4 -0
- package/dist/types/hooks/useTools/model/errors.d.ts.map +1 -0
- package/dist/types/hooks/useTools/model/types.d.ts +27 -0
- package/dist/types/hooks/useTools/model/types.d.ts.map +1 -0
- package/dist/types/hooks/useTools/public/useTools.d.ts +2 -0
- package/dist/types/hooks/useTools/public/useTools.d.ts.map +1 -0
- package/dist/types/hooks/useTools/runtime/createToolRuntimeSession.d.ts +9 -0
- package/dist/types/hooks/useTools/runtime/createToolRuntimeSession.d.ts.map +1 -0
- package/dist/types/hooks/useTools/runtime/executeToolCall.d.ts +3 -0
- package/dist/types/hooks/useTools/runtime/executeToolCall.d.ts.map +1 -0
- package/dist/types/hooks/useTools/runtime/executeToolCallBatch.d.ts +11 -0
- package/dist/types/hooks/useTools/runtime/executeToolCallBatch.d.ts.map +1 -0
- package/dist/types/hooks/useTools/runtime/types.d.ts +35 -0
- package/dist/types/hooks/useTools/runtime/types.d.ts.map +1 -0
- package/dist/types/hooks/useTools/runtime/useToolCallingRuntime.d.ts +9 -0
- package/dist/types/hooks/useTools/runtime/useToolCallingRuntime.d.ts.map +1 -0
- package/dist/types/hooks/useTools/store/state.d.ts +17 -0
- package/dist/types/hooks/useTools/store/state.d.ts.map +1 -0
- package/dist/types/hooks/useTools/utils/normalizeFunctionCall.d.ts +4 -0
- package/dist/types/hooks/useTools/utils/normalizeFunctionCall.d.ts.map +1 -0
- package/dist/types/hooks/useTools/utils/serialize.d.ts +3 -0
- package/dist/types/hooks/useTools/utils/serialize.d.ts.map +1 -0
- package/dist/types/hooks/useTranscriptions/index.d.ts +3 -0
- package/dist/types/hooks/useTranscriptions/index.d.ts.map +1 -0
- package/dist/types/hooks/useTranscriptions/types.d.ts +5 -0
- package/dist/types/hooks/useTranscriptions/types.d.ts.map +1 -0
- package/dist/types/hooks/useTranscriptions/useTranscription.d.ts +3 -0
- package/dist/types/hooks/useTranscriptions/useTranscription.d.ts.map +1 -0
- package/dist/types/hooks/useTranscriptions/useTranscriptions.d.ts +3 -0
- package/dist/types/hooks/useTranscriptions/useTranscriptions.d.ts.map +1 -0
- package/dist/types/hooks/useUserActivity/index.d.ts +2 -0
- package/dist/types/hooks/useUserActivity/index.d.ts.map +1 -0
- package/dist/types/hooks/useUserActivity/useUserActivity.d.ts +8 -0
- package/dist/types/hooks/useUserActivity/useUserActivity.d.ts.map +1 -0
- package/dist/types/livekit/components.d.ts +2 -0
- package/dist/types/livekit/components.d.ts.map +1 -0
- package/dist/types/livekit/sdk.d.ts +2 -0
- package/dist/types/livekit/sdk.d.ts.map +1 -0
- package/dist/types/sdk-consumer/context.d.ts +12 -0
- package/dist/types/sdk-consumer/context.d.ts.map +1 -0
- package/dist/types/sdk-consumer/index.d.ts +2 -0
- package/dist/types/sdk-consumer/index.d.ts.map +1 -0
- package/dist/types/sdk.d.ts +25 -0
- package/dist/types/sdk.d.ts.map +1 -0
- package/dist/types/services/FetchPersonaChatService.d.ts +15 -0
- package/dist/types/services/FetchPersonaChatService.d.ts.map +1 -0
- package/dist/types/types/http.d.ts +15 -0
- package/dist/types/types/http.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +4 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/types/service.d.ts +62 -0
- package/dist/types/types/service.d.ts.map +1 -0
- package/dist/types/utils/captureImage/captureImage.d.ts +3 -0
- package/dist/types/utils/captureImage/captureImage.d.ts.map +1 -0
- package/dist/types/utils/captureImage/helpers.d.ts +4 -0
- package/dist/types/utils/captureImage/helpers.d.ts.map +1 -0
- package/dist/types/utils/captureImage/index.d.ts +3 -0
- package/dist/types/utils/captureImage/index.d.ts.map +1 -0
- package/dist/types/utils/captureImage/types.d.ts +9 -0
- package/dist/types/utils/captureImage/types.d.ts.map +1 -0
- package/dist/types/utils/compatibility/compatibility.d.ts +3 -0
- package/dist/types/utils/compatibility/compatibility.d.ts.map +1 -0
- package/dist/types/utils/compatibility/index.d.ts +2 -0
- package/dist/types/utils/compatibility/index.d.ts.map +1 -0
- package/dist/types/utils.d.ts +2 -0
- package/dist/types/utils.d.ts.map +1 -0
- package/livekit/components/package.json +5 -0
- package/livekit/sdk/package.json +5 -0
- package/livekit-client.patch +19 -0
- package/package.json +108 -0
- package/sdk/package.json +5 -0
- package/tpa/package.json +5 -0
- package/utils/package.json +5 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useEffect","useRef","useVideoPreviewStream","useCamera","VideoPreview","props","_props$fallback","fallback","Fallback","style","constraints","_props$automirror","automirror","videoProps","_objectWithoutPropertiesLoose","_excluded","videoRef","_useCamera","deviceId","enabled","_useVideoPreviewStrea","stream","status","videoElement","current","srcObject","isVideoPlayable","createElement","Fragment","_extends","ref","muted","playsInline","autoPlay","display","transform"],"sources":["../../../../src/components/VideoPreview/VideoPreview.tsx"],"sourcesContent":["import React, { useEffect, useRef } from 'react';\nimport { useVideoPreviewStream } from './useVideoPreviewStream';\nimport { useCamera } from '../../hooks/useCamera';\nimport { type VideoPreviewProps } from './types';\n\nexport function VideoPreview(props: VideoPreviewProps) {\n const {\n fallback: Fallback = () => null,\n style,\n constraints,\n automirror = true,\n ...videoProps\n } = props;\n\n const videoRef = useRef<HTMLVideoElement>(null);\n const { deviceId, enabled } = useCamera();\n const { stream, status } = useVideoPreviewStream({\n deviceId,\n constraints,\n enabled,\n });\n\n useEffect(() => {\n const videoElement = videoRef.current;\n if (!videoElement) {\n return;\n }\n\n videoElement.srcObject = stream;\n }, [stream]);\n\n const isVideoPlayable = status === 'ready' && stream !== null;\n\n return (\n <>\n <video\n ref={videoRef}\n muted\n playsInline\n autoPlay\n style={{\n ...style,\n display: isVideoPlayable ? 'block' : 'none',\n transform: automirror ? 'scaleX(-1)' : 'none',\n }}\n {...videoProps}\n />\n {!isVideoPlayable && <Fallback style={style} />}\n </>\n );\n}\n"],"mappings":";;;AAAA,OAAOA,KAAK,IAAIC,SAAS,EAAEC,MAAM,QAAQ,OAAO;AAChD,SAASC,qBAAqB,QAAQ,yBAAyB;AAC/D,SAASC,SAAS,QAAQ,uBAAuB;AAGjD,OAAO,SAASC,YAAYA,CAACC,KAAwB,EAAE;EACrD,MAAAC,eAAA,GAMID,KAAK,CALPE,QAAQ;IAAEC,QAAQ,GAAAF,eAAA,cAAG,MAAM,IAAI,GAAAA,eAAA;IAC/BG,KAAK,GAIHJ,KAAK,CAJPI,KAAK;IACLC,WAAW,GAGTL,KAAK,CAHPK,WAAW;IAAAC,iBAAA,GAGTN,KAAK,CAFPO,UAAU;IAAVA,UAAU,GAAAD,iBAAA,cAAG,IAAI,GAAAA,iBAAA;IACdE,UAAU,GAAAC,6BAAA,CACXT,KAAK,EAAAU,SAAA;EAET,MAAMC,QAAQ,GAAGf,MAAM,CAAmB,IAAI,CAAC;EAC/C,MAAAgB,UAAA,GAA8Bd,SAAS,CAAC,CAAC;IAAjCe,QAAQ,GAAAD,UAAA,CAARC,QAAQ;IAAEC,OAAO,GAAAF,UAAA,CAAPE,OAAO;EACzB,MAAAC,qBAAA,GAA2BlB,qBAAqB,CAAC;MAC/CgB,QAAQ;MACRR,WAAW;MACXS;IACF,CAAC,CAAC;IAJME,MAAM,GAAAD,qBAAA,CAANC,MAAM;IAAEC,MAAM,GAAAF,qBAAA,CAANE,MAAM;EAMtBtB,SAAS,CAAC,MAAM;IACd,MAAMuB,YAAY,GAAGP,QAAQ,CAACQ,OAAO;IACrC,IAAI,CAACD,YAAY,EAAE;MACjB;IACF;IAEAA,YAAY,CAACE,SAAS,GAAGJ,MAAM;EACjC,CAAC,EAAE,CAACA,MAAM,CAAC,CAAC;EAEZ,MAAMK,eAAe,GAAGJ,MAAM,KAAK,OAAO,IAAID,MAAM,KAAK,IAAI;EAE7D,oBACEtB,KAAA,CAAA4B,aAAA,CAAA5B,KAAA,CAAA6B,QAAA,qBACE7B,KAAA,CAAA4B,aAAA,UAAAE,QAAA;IACEC,GAAG,EAAEd,QAAS;IACde,KAAK;IACLC,WAAW;IACXC,QAAQ;IACRxB,KAAK,EAAE;MACL,GAAGA,KAAK;MACRyB,OAAO,EAAER,eAAe,GAAG,OAAO,GAAG,MAAM;MAC3CS,SAAS,EAAEvB,UAAU,GAAG,YAAY,GAAG;IACzC;EAAE,GACEC,UAAU,CACf,CAAC,EACD,CAACa,eAAe,iBAAI3B,KAAA,CAAA4B,aAAA,CAACnB,QAAQ;IAACC,KAAK,EAAEA;EAAM,CAAE,CAC9C,CAAC;AAEP","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/components/VideoPreview/index.ts"],"sourcesContent":["export * from './VideoPreview';\nexport * from './types';\n"],"mappings":"AAAA,cAAc,gBAAgB;AAC9B,cAAc,SAAS","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/components/VideoPreview/types.ts"],"sourcesContent":["import React from 'react';\n\ntype FallbackProps = {\n style?: React.CSSProperties;\n};\n\nexport type VideoPreviewProps = {\n // eslint-disable-next-line no-undef\n constraints?: Omit<MediaTrackConstraints, 'deviceId'>;\n automirror?: boolean;\n fallback?: React.ComponentType<FallbackProps>;\n} & Omit<React.VideoHTMLAttributes<HTMLVideoElement>, 'onResize'>;\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
import { useEffect, useMemo, useRef, useState } from 'react';
|
|
2
|
+
import { useConversationEvent } from '../../sdk';
|
|
3
|
+
import { isIosDevice } from '../../utils/compatibility';
|
|
4
|
+
export function useVideoPreviewStream(options) {
|
|
5
|
+
const deviceId = options.deviceId,
|
|
6
|
+
constraints = options.constraints,
|
|
7
|
+
enabled = options.enabled;
|
|
8
|
+
const _useState = useState(null),
|
|
9
|
+
stream = _useState[0],
|
|
10
|
+
setStream = _useState[1];
|
|
11
|
+
const _useState2 = useState('idle'),
|
|
12
|
+
status = _useState2[0],
|
|
13
|
+
setStatus = _useState2[1];
|
|
14
|
+
const _useState3 = useState(null),
|
|
15
|
+
error = _useState3[0],
|
|
16
|
+
setError = _useState3[1];
|
|
17
|
+
const streamRef = useRef(null);
|
|
18
|
+
|
|
19
|
+
// eslint-disable-next-line no-undef
|
|
20
|
+
const videoConstraint = useMemo(() => {
|
|
21
|
+
if (deviceId === 'default') {
|
|
22
|
+
return constraints || true;
|
|
23
|
+
}
|
|
24
|
+
if (constraints) {
|
|
25
|
+
return {
|
|
26
|
+
deviceId: isIosDevice() ? {
|
|
27
|
+
ideal: deviceId
|
|
28
|
+
} : {
|
|
29
|
+
exact: deviceId
|
|
30
|
+
},
|
|
31
|
+
...constraints
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
deviceId: isIosDevice() ? {
|
|
36
|
+
ideal: deviceId
|
|
37
|
+
} : {
|
|
38
|
+
exact: deviceId
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
}, [deviceId, constraints]);
|
|
42
|
+
useConversationEvent('callStarted', stopPreview);
|
|
43
|
+
useEffect(() => {
|
|
44
|
+
if (enabled === false || !deviceId) {
|
|
45
|
+
stopPreview();
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
getStream(videoConstraint);
|
|
49
|
+
return () => stopPreview();
|
|
50
|
+
}, [videoConstraint, enabled]);
|
|
51
|
+
return {
|
|
52
|
+
stream,
|
|
53
|
+
status,
|
|
54
|
+
error
|
|
55
|
+
};
|
|
56
|
+
function stopPreview() {
|
|
57
|
+
if (streamRef.current) {
|
|
58
|
+
streamRef.current.getTracks().forEach(track => track.stop());
|
|
59
|
+
streamRef.current = null;
|
|
60
|
+
}
|
|
61
|
+
setStream(null);
|
|
62
|
+
setStatus('idle');
|
|
63
|
+
setError(null);
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
// eslint-disable-next-line no-undef
|
|
67
|
+
async function getStream(constraints) {
|
|
68
|
+
setStatus('acquiring_media');
|
|
69
|
+
setError(null);
|
|
70
|
+
try {
|
|
71
|
+
const mediaStream = await window.navigator.mediaDevices.getUserMedia({
|
|
72
|
+
video: constraints
|
|
73
|
+
});
|
|
74
|
+
streamRef.current = mediaStream;
|
|
75
|
+
setStream(mediaStream);
|
|
76
|
+
setStatus('ready');
|
|
77
|
+
} catch (err) {
|
|
78
|
+
setError(err instanceof Error ? err.message : String(err));
|
|
79
|
+
setStatus('error');
|
|
80
|
+
setStream(null);
|
|
81
|
+
streamRef.current = null;
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
//# sourceMappingURL=useVideoPreviewStream.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useEffect","useMemo","useRef","useState","useConversationEvent","isIosDevice","useVideoPreviewStream","options","deviceId","constraints","enabled","_useState","stream","setStream","_useState2","status","setStatus","_useState3","error","setError","streamRef","videoConstraint","ideal","exact","stopPreview","getStream","current","getTracks","forEach","track","stop","mediaStream","window","navigator","mediaDevices","getUserMedia","video","err","Error","message","String"],"sources":["../../../../src/components/VideoPreview/useVideoPreviewStream.ts"],"sourcesContent":["import { useEffect, useMemo, useRef, useState } from 'react';\nimport { useConversationEvent } from '../../sdk';\nimport { isIosDevice } from '../../utils/compatibility';\n\nexport type VideoPreviewStreamStatus =\n | 'idle'\n | 'acquiring_media'\n | 'ready'\n | 'error';\n\ntype UseVideoPreviewStreamOptions = {\n deviceId: string;\n // eslint-disable-next-line no-undef\n constraints?: Omit<MediaTrackConstraints, 'deviceId'>;\n enabled?: boolean;\n};\n\nexport function useVideoPreviewStream(options: UseVideoPreviewStreamOptions) {\n const { deviceId, constraints, enabled } = options;\n const [stream, setStream] = useState<MediaStream | null>(null);\n const [status, setStatus] = useState<VideoPreviewStreamStatus>('idle');\n const [error, setError] = useState<string | null>(null);\n const streamRef = useRef<MediaStream | null>(null);\n\n // eslint-disable-next-line no-undef\n const videoConstraint = useMemo<boolean | MediaTrackConstraints>(() => {\n if (deviceId === 'default') {\n return constraints || true;\n }\n\n if (constraints) {\n return {\n deviceId: isIosDevice() ? { ideal: deviceId } : { exact: deviceId },\n ...constraints,\n };\n }\n return {\n deviceId: isIosDevice() ? { ideal: deviceId } : { exact: deviceId },\n };\n }, [deviceId, constraints]);\n\n useConversationEvent('callStarted', stopPreview);\n\n useEffect(() => {\n if (enabled === false || !deviceId) {\n stopPreview();\n return;\n }\n\n getStream(videoConstraint);\n\n return () => stopPreview();\n }, [videoConstraint, enabled]);\n\n return { stream, status, error };\n\n function stopPreview() {\n if (streamRef.current) {\n streamRef.current.getTracks().forEach((track) => track.stop());\n streamRef.current = null;\n }\n setStream(null);\n setStatus('idle');\n setError(null);\n }\n\n // eslint-disable-next-line no-undef\n async function getStream(constraints: boolean | MediaTrackConstraints) {\n setStatus('acquiring_media');\n setError(null);\n\n try {\n const mediaStream = await window.navigator.mediaDevices.getUserMedia({\n video: constraints,\n });\n streamRef.current = mediaStream;\n setStream(mediaStream);\n setStatus('ready');\n } catch (err: unknown) {\n setError(err instanceof Error ? err.message : String(err));\n setStatus('error');\n setStream(null);\n streamRef.current = null;\n }\n }\n}\n"],"mappings":"AAAA,SAASA,SAAS,EAAEC,OAAO,EAAEC,MAAM,EAAEC,QAAQ,QAAQ,OAAO;AAC5D,SAASC,oBAAoB,QAAQ,WAAW;AAChD,SAASC,WAAW,QAAQ,2BAA2B;AAevD,OAAO,SAASC,qBAAqBA,CAACC,OAAqC,EAAE;EAC3E,MAAQC,QAAQ,GAA2BD,OAAO,CAA1CC,QAAQ;IAAEC,WAAW,GAAcF,OAAO,CAAhCE,WAAW;IAAEC,OAAO,GAAKH,OAAO,CAAnBG,OAAO;EACtC,MAAAC,SAAA,GAA4BR,QAAQ,CAAqB,IAAI,CAAC;IAAvDS,MAAM,GAAAD,SAAA;IAAEE,SAAS,GAAAF,SAAA;EACxB,MAAAG,UAAA,GAA4BX,QAAQ,CAA2B,MAAM,CAAC;IAA/DY,MAAM,GAAAD,UAAA;IAAEE,SAAS,GAAAF,UAAA;EACxB,MAAAG,UAAA,GAA0Bd,QAAQ,CAAgB,IAAI,CAAC;IAAhDe,KAAK,GAAAD,UAAA;IAAEE,QAAQ,GAAAF,UAAA;EACtB,MAAMG,SAAS,GAAGlB,MAAM,CAAqB,IAAI,CAAC;;EAElD;EACA,MAAMmB,eAAe,GAAGpB,OAAO,CAAkC,MAAM;IACrE,IAAIO,QAAQ,KAAK,SAAS,EAAE;MAC1B,OAAOC,WAAW,IAAI,IAAI;IAC5B;IAEA,IAAIA,WAAW,EAAE;MACf,OAAO;QACLD,QAAQ,EAAEH,WAAW,CAAC,CAAC,GAAG;UAAEiB,KAAK,EAAEd;QAAS,CAAC,GAAG;UAAEe,KAAK,EAAEf;QAAS,CAAC;QACnE,GAAGC;MACL,CAAC;IACH;IACA,OAAO;MACLD,QAAQ,EAAEH,WAAW,CAAC,CAAC,GAAG;QAAEiB,KAAK,EAAEd;MAAS,CAAC,GAAG;QAAEe,KAAK,EAAEf;MAAS;IACpE,CAAC;EACH,CAAC,EAAE,CAACA,QAAQ,EAAEC,WAAW,CAAC,CAAC;EAE3BL,oBAAoB,CAAC,aAAa,EAAEoB,WAAW,CAAC;EAEhDxB,SAAS,CAAC,MAAM;IACd,IAAIU,OAAO,KAAK,KAAK,IAAI,CAACF,QAAQ,EAAE;MAClCgB,WAAW,CAAC,CAAC;MACb;IACF;IAEAC,SAAS,CAACJ,eAAe,CAAC;IAE1B,OAAO,MAAMG,WAAW,CAAC,CAAC;EAC5B,CAAC,EAAE,CAACH,eAAe,EAAEX,OAAO,CAAC,CAAC;EAE9B,OAAO;IAAEE,MAAM;IAAEG,MAAM;IAAEG;EAAM,CAAC;EAEhC,SAASM,WAAWA,CAAA,EAAG;IACrB,IAAIJ,SAAS,CAACM,OAAO,EAAE;MACrBN,SAAS,CAACM,OAAO,CAACC,SAAS,CAAC,CAAC,CAACC,OAAO,CAAEC,KAAK,IAAKA,KAAK,CAACC,IAAI,CAAC,CAAC,CAAC;MAC9DV,SAAS,CAACM,OAAO,GAAG,IAAI;IAC1B;IACAb,SAAS,CAAC,IAAI,CAAC;IACfG,SAAS,CAAC,MAAM,CAAC;IACjBG,QAAQ,CAAC,IAAI,CAAC;EAChB;;EAEA;EACA,eAAeM,SAASA,CAAChB,WAA4C,EAAE;IACrEO,SAAS,CAAC,iBAAiB,CAAC;IAC5BG,QAAQ,CAAC,IAAI,CAAC;IAEd,IAAI;MACF,MAAMY,WAAW,GAAG,MAAMC,MAAM,CAACC,SAAS,CAACC,YAAY,CAACC,YAAY,CAAC;QACnEC,KAAK,EAAE3B;MACT,CAAC,CAAC;MACFW,SAAS,CAACM,OAAO,GAAGK,WAAW;MAC/BlB,SAAS,CAACkB,WAAW,CAAC;MACtBf,SAAS,CAAC,OAAO,CAAC;IACpB,CAAC,CAAC,OAAOqB,GAAY,EAAE;MACrBlB,QAAQ,CAACkB,GAAG,YAAYC,KAAK,GAAGD,GAAG,CAACE,OAAO,GAAGC,MAAM,CAACH,GAAG,CAAC,CAAC;MAC1DrB,SAAS,CAAC,OAAO,CAAC;MAClBH,SAAS,CAAC,IAAI,CAAC;MACfO,SAAS,CAACM,OAAO,GAAG,IAAI;IAC1B;EACF;AACF","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../src/components.ts"],"sourcesContent":["export * from './components/VideoPostProcessor';\nexport * from './components/Video';\nexport * from './components/ChromaKey';\nexport * from './components/Audio';\nexport * from './components/VideoPreview';\n"],"mappings":"AAAA,cAAc,iCAAiC;AAC/C,cAAc,oBAAoB;AAClC,cAAc,wBAAwB;AACtC,cAAc,oBAAoB;AAClC,cAAc,2BAA2B","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_state","state"],"sources":["../../../src/conversation/index.ts"],"sourcesContent":["export * as state from './state';\nexport * from './types';\n"],"mappings":"wBAAuB,SAAS;AAAA,SAAAA,MAAA,IAApBC,KAAK;AACjB,cAAc,SAAS","ignoreList":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { atom } from 'jotai';
|
|
2
|
+
import { createDeviceAtom } from './utils';
|
|
3
|
+
export const microphone = createDeviceAtom('microphone');
|
|
4
|
+
export const camera = createDeviceAtom('camera');
|
|
5
|
+
export const speaker = createDeviceAtom('speaker');
|
|
6
|
+
export const userLastActivity = atom(null);
|
|
7
|
+
export const userInactivityDuration = atom(0);
|
|
8
|
+
export const conversation = atom();
|
|
9
|
+
export const conversationStatus = atom('pending');
|
|
10
|
+
export const agentActivityState = atom('idle');
|
|
11
|
+
export const agentConnectionState = atom('idle');
|
|
12
|
+
export const userConnectionState = atom('idle');
|
|
13
|
+
export const userActivityState = atom('idle');
|
|
14
|
+
export const transcriptions = atom([]);
|
|
15
|
+
export const joinedAt = atom();
|
|
16
|
+
export const audio = atom({
|
|
17
|
+
muted: false,
|
|
18
|
+
volume: 1
|
|
19
|
+
});
|
|
20
|
+
//# sourceMappingURL=state.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["atom","createDeviceAtom","microphone","camera","speaker","userLastActivity","userInactivityDuration","conversation","conversationStatus","agentActivityState","agentConnectionState","userConnectionState","userActivityState","transcriptions","joinedAt","audio","muted","volume"],"sources":["../../../src/conversation/state.ts"],"sourcesContent":["import { atom } from 'jotai';\n\nimport {\n type Conversation,\n type ConversationStatus,\n type AgentConnectionState,\n type ConversationTranscription,\n type ConversationAudio,\n type UserConnectionState,\n type ActivityState,\n} from './types';\n\nimport { createDeviceAtom } from './utils';\n\nexport const microphone = createDeviceAtom('microphone');\nexport const camera = createDeviceAtom('camera');\nexport const speaker = createDeviceAtom('speaker');\n\nexport const userLastActivity = atom<number | null>(null);\nexport const userInactivityDuration = atom<number>(0);\n\nexport const conversation = atom<Conversation>();\n\nexport const conversationStatus = atom<ConversationStatus>('pending');\n\nexport const agentActivityState = atom<ActivityState>('idle');\nexport const agentConnectionState = atom<AgentConnectionState>('idle');\n\nexport const userConnectionState = atom<UserConnectionState>('idle');\nexport const userActivityState = atom<ActivityState>('idle');\n\nexport const transcriptions = atom<ConversationTranscription[]>([]);\n\nexport const joinedAt = atom<Date>();\n\nexport const audio = atom<ConversationAudio>({\n muted: false,\n volume: 1,\n});\n"],"mappings":"AAAA,SAASA,IAAI,QAAQ,OAAO;AAY5B,SAASC,gBAAgB,QAAQ,SAAS;AAE1C,OAAO,MAAMC,UAAU,GAAGD,gBAAgB,CAAC,YAAY,CAAC;AACxD,OAAO,MAAME,MAAM,GAAGF,gBAAgB,CAAC,QAAQ,CAAC;AAChD,OAAO,MAAMG,OAAO,GAAGH,gBAAgB,CAAC,SAAS,CAAC;AAElD,OAAO,MAAMI,gBAAgB,GAAGL,IAAI,CAAgB,IAAI,CAAC;AACzD,OAAO,MAAMM,sBAAsB,GAAGN,IAAI,CAAS,CAAC,CAAC;AAErD,OAAO,MAAMO,YAAY,GAAGP,IAAI,CAAe,CAAC;AAEhD,OAAO,MAAMQ,kBAAkB,GAAGR,IAAI,CAAqB,SAAS,CAAC;AAErE,OAAO,MAAMS,kBAAkB,GAAGT,IAAI,CAAgB,MAAM,CAAC;AAC7D,OAAO,MAAMU,oBAAoB,GAAGV,IAAI,CAAuB,MAAM,CAAC;AAEtE,OAAO,MAAMW,mBAAmB,GAAGX,IAAI,CAAsB,MAAM,CAAC;AACpE,OAAO,MAAMY,iBAAiB,GAAGZ,IAAI,CAAgB,MAAM,CAAC;AAE5D,OAAO,MAAMa,cAAc,GAAGb,IAAI,CAA8B,EAAE,CAAC;AAEnE,OAAO,MAAMc,QAAQ,GAAGd,IAAI,CAAO,CAAC;AAEpC,OAAO,MAAMe,KAAK,GAAGf,IAAI,CAAoB;EAC3CgB,KAAK,EAAE,KAAK;EACZC,MAAM,EAAE;AACV,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../src/conversation/types.ts"],"sourcesContent":["export type ConversationType = 'video' | 'audio';\n\nexport type ConversationParticipantRole = 'user' | 'agent';\n\nexport type ConversationVendor =\n | 'LIVEKIT'\n | 'DAILY'\n | 'HUME'\n | 'ELEVEN_LABS'\n | 'UNKNOWN_VENDOR';\n\nexport type AgentConnectionState =\n | 'joined' // agent is connected to the conversation\n | 'joining' // agent is connecting to the conversation\n | 'left' // agent left the conversation\n | 'idle'; // agent is not connected to the conversation\n\nexport type UserConnectionState =\n | 'joined' // user is connected to the conversation\n | 'joining' // user is connecting to the conversation\n | 'idle' // user is not connected to the conversation\n | 'leaving' // user is leaving the conversation\n | 'join-error'; // failed to join the conversation\n\nexport type ActivityState = 'idle' | 'speaking' | 'listening';\n\nexport type ConversationStatus =\n // Initial state\n | 'pending' // conversation is not created yet\n // States\n | 'created' // conversation was created\n | 'destroying' // destroying the conversation\n | 'destroyed' // conversation was destroyed\n | 'exceeded' // conversation limit is exceeded\n // Errors\n | 'voice-not-found' // failed to find a voice\n | 'initialization-error' // failed to create conversation\n | 'error'; // unknown error\n\nexport type Conversation = {\n id: string;\n url: string;\n limit?: number;\n type: ConversationType;\n};\n\nexport type ConversationTranscription = {\n message: string;\n source: ConversationParticipantRole;\n id: string;\n};\n\nexport type ConversationDevice = {\n enabled: boolean;\n deviceId: string;\n};\n\nexport type ConversationAudio = {\n // Range between `0.0` and `1.0`.\n volume: number;\n muted: boolean;\n};\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { atom } from 'jotai';
|
|
2
|
+
import { atomWithStorage } from 'jotai/utils';
|
|
3
|
+
export function createDeviceAtom(deviceName) {
|
|
4
|
+
const deviceIdAtom = atomWithStorage(`legends-platform:device-${deviceName}`, 'default', undefined, {
|
|
5
|
+
getOnInit: true
|
|
6
|
+
});
|
|
7
|
+
const enabledAtom = atom(false);
|
|
8
|
+
const deviceAtom = atom(get => ({
|
|
9
|
+
deviceId: get(deviceIdAtom),
|
|
10
|
+
enabled: get(enabledAtom)
|
|
11
|
+
}), (_get, set, update) => {
|
|
12
|
+
if (update.deviceId !== undefined) {
|
|
13
|
+
set(deviceIdAtom, update.deviceId);
|
|
14
|
+
}
|
|
15
|
+
if (update.enabled !== undefined) {
|
|
16
|
+
set(enabledAtom, update.enabled);
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
return deviceAtom;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["atom","atomWithStorage","createDeviceAtom","deviceName","deviceIdAtom","undefined","getOnInit","enabledAtom","deviceAtom","get","deviceId","enabled","_get","set","update"],"sources":["../../../src/conversation/utils.ts"],"sourcesContent":["import { atom } from 'jotai';\nimport { atomWithStorage } from 'jotai/utils';\n\nimport { ConversationDevice } from './types';\n\nexport function createDeviceAtom(deviceName: string) {\n const deviceIdAtom = atomWithStorage<string>(\n `legends-platform:device-${deviceName}`,\n 'default',\n undefined,\n { getOnInit: true },\n );\n\n const enabledAtom = atom<boolean>(false);\n\n const deviceAtom = atom(\n (get) => ({\n deviceId: get(deviceIdAtom),\n enabled: get(enabledAtom),\n }),\n (_get, set, update: Partial<ConversationDevice>) => {\n if (update.deviceId !== undefined) {\n set(deviceIdAtom, update.deviceId);\n }\n if (update.enabled !== undefined) {\n set(enabledAtom, update.enabled);\n }\n },\n );\n\n return deviceAtom;\n}\n"],"mappings":"AAAA,SAASA,IAAI,QAAQ,OAAO;AAC5B,SAASC,eAAe,QAAQ,aAAa;AAI7C,OAAO,SAASC,gBAAgBA,CAACC,UAAkB,EAAE;EACnD,MAAMC,YAAY,GAAGH,eAAe,CAClC,2BAA2BE,UAAU,EAAE,EACvC,SAAS,EACTE,SAAS,EACT;IAAEC,SAAS,EAAE;EAAK,CACpB,CAAC;EAED,MAAMC,WAAW,GAAGP,IAAI,CAAU,KAAK,CAAC;EAExC,MAAMQ,UAAU,GAAGR,IAAI,CACpBS,GAAG,KAAM;IACRC,QAAQ,EAAED,GAAG,CAACL,YAAY,CAAC;IAC3BO,OAAO,EAAEF,GAAG,CAACF,WAAW;EAC1B,CAAC,CAAC,EACF,CAACK,IAAI,EAAEC,GAAG,EAAEC,MAAmC,KAAK;IAClD,IAAIA,MAAM,CAACJ,QAAQ,KAAKL,SAAS,EAAE;MACjCQ,GAAG,CAACT,YAAY,EAAEU,MAAM,CAACJ,QAAQ,CAAC;IACpC;IACA,IAAII,MAAM,CAACH,OAAO,KAAKN,SAAS,EAAE;MAChCQ,GAAG,CAACN,WAAW,EAAEO,MAAM,CAACH,OAAO,CAAC;IAClC;EACF,CACF,CAAC;EAED,OAAOH,UAAU;AACnB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../src/external-types.d.ts"],"sourcesContent":["/// <reference types=\"@wix/yoshi-flow-library/types\" />\n"],"mappings":"AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export * from './useConversation';
|
|
2
|
+
export * from './useCreateConversation';
|
|
3
|
+
export * from './useConversationStatus';
|
|
4
|
+
export * from './useTextChat';
|
|
5
|
+
export * from './useConversationEvents';
|
|
6
|
+
export * from './useUserActivity';
|
|
7
|
+
export * from './useScreenShare';
|
|
8
|
+
export * from './usePictureInPicture';
|
|
9
|
+
export * from './useTools';
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../src/hooks/index.ts"],"sourcesContent":["export * from './useConversation';\nexport * from './useCreateConversation';\nexport * from './useConversationStatus';\nexport * from './useTextChat';\nexport * from './useConversationEvents';\nexport * from './useUserActivity';\nexport * from './useScreenShare';\nexport * from './usePictureInPicture';\nexport * from './useTools';\n"],"mappings":"AAAA,cAAc,mBAAmB;AACjC,cAAc,yBAAyB;AACvC,cAAc,yBAAyB;AACvC,cAAc,eAAe;AAC7B,cAAc,yBAAyB;AACvC,cAAc,mBAAmB;AACjC,cAAc,kBAAkB;AAChC,cAAc,uBAAuB;AACrC,cAAc,YAAY","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/hooks/useActivityState/index.ts"],"sourcesContent":["export * from './useActivityState';\n"],"mappings":"AAAA,cAAc,oBAAoB","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { useAtomValue } from 'jotai';
|
|
2
|
+
import { state } from '../../conversation';
|
|
3
|
+
export function useActivityState(type) {
|
|
4
|
+
switch (type) {
|
|
5
|
+
case 'user':
|
|
6
|
+
return useAtomValue(state.userActivityState);
|
|
7
|
+
case 'agent':
|
|
8
|
+
return useAtomValue(state.agentActivityState);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=useActivityState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useAtomValue","state","useActivityState","type","userActivityState","agentActivityState"],"sources":["../../../../src/hooks/useActivityState/useActivityState.ts"],"sourcesContent":["import { useAtomValue } from 'jotai';\n\nimport { state } from '../../conversation';\n\nexport function useActivityState(type: 'user' | 'agent') {\n switch (type) {\n case 'user':\n return useAtomValue(state.userActivityState);\n case 'agent':\n return useAtomValue(state.agentActivityState);\n }\n}\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,OAAO;AAEpC,SAASC,KAAK,QAAQ,oBAAoB;AAE1C,OAAO,SAASC,gBAAgBA,CAACC,IAAsB,EAAE;EACvD,QAAQA,IAAI;IACV,KAAK,MAAM;MACT,OAAOH,YAAY,CAACC,KAAK,CAACG,iBAAiB,CAAC;IAC9C,KAAK,OAAO;MACV,OAAOJ,YAAY,CAACC,KAAK,CAACI,kBAAkB,CAAC;EACjD;AACF","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/hooks/useAudio/index.ts"],"sourcesContent":["export * from './useAudio';\n"],"mappings":"AAAA,cAAc,YAAY","ignoreList":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { useAtom } from 'jotai';
|
|
2
|
+
import { state } from '../../conversation';
|
|
3
|
+
export function useAudio() {
|
|
4
|
+
const _useAtom = useAtom(state.audio),
|
|
5
|
+
audio = _useAtom[0],
|
|
6
|
+
setAudio = _useAtom[1];
|
|
7
|
+
return {
|
|
8
|
+
muted: audio.muted,
|
|
9
|
+
volume: audio.volume,
|
|
10
|
+
setMuted,
|
|
11
|
+
setVolume
|
|
12
|
+
};
|
|
13
|
+
function setMuted(muted) {
|
|
14
|
+
setAudio({
|
|
15
|
+
...audio,
|
|
16
|
+
muted
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
function setVolume(volume) {
|
|
20
|
+
setAudio({
|
|
21
|
+
...audio,
|
|
22
|
+
volume
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=useAudio.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useAtom","state","useAudio","_useAtom","audio","setAudio","muted","volume","setMuted","setVolume"],"sources":["../../../../src/hooks/useAudio/useAudio.tsx"],"sourcesContent":["import { useAtom } from 'jotai';\nimport { state } from '../../conversation';\n\nexport function useAudio() {\n const [audio, setAudio] = useAtom(state.audio);\n\n return {\n muted: audio.muted,\n volume: audio.volume,\n setMuted,\n setVolume,\n };\n\n function setMuted(muted: boolean) {\n setAudio({ ...audio, muted });\n }\n\n function setVolume(volume: number) {\n setAudio({ ...audio, volume });\n }\n}\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAASC,KAAK,QAAQ,oBAAoB;AAE1C,OAAO,SAASC,QAAQA,CAAA,EAAG;EACzB,MAAAC,QAAA,GAA0BH,OAAO,CAACC,KAAK,CAACG,KAAK,CAAC;IAAvCA,KAAK,GAAAD,QAAA;IAAEE,QAAQ,GAAAF,QAAA;EAEtB,OAAO;IACLG,KAAK,EAAEF,KAAK,CAACE,KAAK;IAClBC,MAAM,EAAEH,KAAK,CAACG,MAAM;IACpBC,QAAQ;IACRC;EACF,CAAC;EAED,SAASD,QAAQA,CAACF,KAAc,EAAE;IAChCD,QAAQ,CAAC;MAAE,GAAGD,KAAK;MAAEE;IAAM,CAAC,CAAC;EAC/B;EAEA,SAASG,SAASA,CAACF,MAAc,EAAE;IACjCF,QAAQ,CAAC;MAAE,GAAGD,KAAK;MAAEG;IAAO,CAAC,CAAC;EAChC;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { createAudioAnalyser } from 'livekit-client';
|
|
2
|
+
export function createAnalyser(track) {
|
|
3
|
+
if (!track) {
|
|
4
|
+
return {
|
|
5
|
+
cleanup: () => {},
|
|
6
|
+
analyser: null
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
return createAudioAnalyser(track, {
|
|
10
|
+
fftSize: 32,
|
|
11
|
+
smoothingTimeConstant: 0
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
export function getFrequencyData(analyser) {
|
|
15
|
+
if (!analyser) {
|
|
16
|
+
return null;
|
|
17
|
+
}
|
|
18
|
+
const bufferLength = analyser.frequencyBinCount;
|
|
19
|
+
const dataArray = new Uint8Array(bufferLength);
|
|
20
|
+
analyser.getByteFrequencyData(dataArray);
|
|
21
|
+
return dataArray;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createAudioAnalyser","createAnalyser","track","cleanup","analyser","fftSize","smoothingTimeConstant","getFrequencyData","bufferLength","frequencyBinCount","dataArray","Uint8Array","getByteFrequencyData"],"sources":["../../../../src/hooks/useAudioLevel/helpers.ts"],"sourcesContent":["import {\n createAudioAnalyser,\n LocalAudioTrack,\n Track,\n RemoteAudioTrack,\n} from 'livekit-client';\n\nexport function createAnalyser(track?: Track) {\n if (!track) {\n return {\n cleanup: () => {},\n analyser: null,\n };\n }\n return createAudioAnalyser(track as LocalAudioTrack | RemoteAudioTrack, {\n fftSize: 32,\n smoothingTimeConstant: 0,\n });\n}\n\nexport function getFrequencyData(\n analyser: AnalyserNode | null,\n): Uint8Array | null {\n if (!analyser) {\n return null;\n }\n const bufferLength = analyser.frequencyBinCount;\n const dataArray = new Uint8Array(bufferLength);\n analyser.getByteFrequencyData(dataArray);\n return dataArray;\n}\n"],"mappings":"AAAA,SACEA,mBAAmB,QAId,gBAAgB;AAEvB,OAAO,SAASC,cAAcA,CAACC,KAAa,EAAE;EAC5C,IAAI,CAACA,KAAK,EAAE;IACV,OAAO;MACLC,OAAO,EAAEA,CAAA,KAAM,CAAC,CAAC;MACjBC,QAAQ,EAAE;IACZ,CAAC;EACH;EACA,OAAOJ,mBAAmB,CAACE,KAAK,EAAwC;IACtEG,OAAO,EAAE,EAAE;IACXC,qBAAqB,EAAE;EACzB,CAAC,CAAC;AACJ;AAEA,OAAO,SAASC,gBAAgBA,CAC9BH,QAA6B,EACV;EACnB,IAAI,CAACA,QAAQ,EAAE;IACb,OAAO,IAAI;EACb;EACA,MAAMI,YAAY,GAAGJ,QAAQ,CAACK,iBAAiB;EAC/C,MAAMC,SAAS,GAAG,IAAIC,UAAU,CAACH,YAAY,CAAC;EAC9CJ,QAAQ,CAACQ,oBAAoB,CAACF,SAAS,CAAC;EACxC,OAAOA,SAAS;AAClB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/hooks/useAudioLevel/index.ts"],"sourcesContent":["export * from './useAudioLevel';\n"],"mappings":"AAAA,cAAc,iBAAiB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/hooks/useAudioLevel/types.ts"],"sourcesContent":["export interface UseAudioLevelOptions {\n interval?: number;\n source: 'user' | 'agent';\n}\n\nexport type UseAudioLevelResult = {\n data: Uint8Array;\n};\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { useState, useEffect, useRef } from 'react';
|
|
2
|
+
import invariant from 'invariant';
|
|
3
|
+
import { useAtomValue } from 'jotai';
|
|
4
|
+
import { useInterval } from 'react-use';
|
|
5
|
+
import { state } from '../../conversation';
|
|
6
|
+
import { useParticipantTrack, Source } from '../useParticipantTrack';
|
|
7
|
+
import { createAnalyser, getFrequencyData } from './helpers';
|
|
8
|
+
export function useAudioLevel(options) {
|
|
9
|
+
const source = options.source,
|
|
10
|
+
_options$interval = options.interval,
|
|
11
|
+
interval = _options$interval === void 0 ? 200 : _options$interval;
|
|
12
|
+
const conversation = useAtomValue(state.conversation);
|
|
13
|
+
invariant(conversation, 'Conversation is not initialized');
|
|
14
|
+
const _useState = useState(new Uint8Array()),
|
|
15
|
+
data = _useState[0],
|
|
16
|
+
setData = _useState[1];
|
|
17
|
+
const analyserRef = useRef(null);
|
|
18
|
+
const _useParticipantTrack = useParticipantTrack({
|
|
19
|
+
type: source,
|
|
20
|
+
source: Source.Microphone
|
|
21
|
+
}),
|
|
22
|
+
track = _useParticipantTrack.track;
|
|
23
|
+
useEffect(() => {
|
|
24
|
+
const _createAnalyser = createAnalyser(track),
|
|
25
|
+
cleanup = _createAnalyser.cleanup,
|
|
26
|
+
analyser = _createAnalyser.analyser;
|
|
27
|
+
analyserRef.current = analyser;
|
|
28
|
+
return () => {
|
|
29
|
+
cleanup();
|
|
30
|
+
analyserRef.current = null;
|
|
31
|
+
};
|
|
32
|
+
}, [track == null ? void 0 : track.mediaStreamTrack]);
|
|
33
|
+
useInterval(() => {
|
|
34
|
+
const frequencyData = getFrequencyData(analyserRef.current);
|
|
35
|
+
if (frequencyData) {
|
|
36
|
+
setData(frequencyData);
|
|
37
|
+
}
|
|
38
|
+
}, interval);
|
|
39
|
+
return {
|
|
40
|
+
data
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=useAudioLevel.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useState","useEffect","useRef","invariant","useAtomValue","useInterval","state","useParticipantTrack","Source","createAnalyser","getFrequencyData","useAudioLevel","options","source","_options$interval","interval","conversation","_useState","Uint8Array","data","setData","analyserRef","_useParticipantTrack","type","Microphone","track","_createAnalyser","cleanup","analyser","current","mediaStreamTrack","frequencyData"],"sources":["../../../../src/hooks/useAudioLevel/useAudioLevel.ts"],"sourcesContent":["import { useState, useEffect, useRef } from 'react';\nimport invariant from 'invariant';\nimport { useAtomValue } from 'jotai';\nimport { useInterval } from 'react-use';\nimport { state } from '../../conversation';\nimport { useParticipantTrack, Source } from '../useParticipantTrack';\nimport { createAnalyser, getFrequencyData } from './helpers';\n\nimport { type UseAudioLevelOptions, type UseAudioLevelResult } from './types';\n\nexport function useAudioLevel(\n options: UseAudioLevelOptions,\n): UseAudioLevelResult {\n const { source, interval = 200 } = options;\n const conversation = useAtomValue(state.conversation);\n\n invariant(conversation, 'Conversation is not initialized');\n\n const [data, setData] = useState<Uint8Array>(new Uint8Array());\n const analyserRef = useRef<AnalyserNode | null>(null);\n\n const { track } = useParticipantTrack({\n type: source,\n source: Source.Microphone,\n });\n\n useEffect(() => {\n const { cleanup, analyser } = createAnalyser(track);\n analyserRef.current = analyser;\n\n return () => {\n cleanup();\n analyserRef.current = null;\n };\n }, [track?.mediaStreamTrack]);\n\n useInterval(() => {\n const frequencyData = getFrequencyData(analyserRef.current);\n if (frequencyData) {\n setData(frequencyData);\n }\n }, interval);\n\n return { data };\n}\n"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,SAAS,EAAEC,MAAM,QAAQ,OAAO;AACnD,OAAOC,SAAS,MAAM,WAAW;AACjC,SAASC,YAAY,QAAQ,OAAO;AACpC,SAASC,WAAW,QAAQ,WAAW;AACvC,SAASC,KAAK,QAAQ,oBAAoB;AAC1C,SAASC,mBAAmB,EAAEC,MAAM,QAAQ,wBAAwB;AACpE,SAASC,cAAc,EAAEC,gBAAgB,QAAQ,WAAW;AAI5D,OAAO,SAASC,aAAaA,CAC3BC,OAA6B,EACR;EACrB,MAAQC,MAAM,GAAqBD,OAAO,CAAlCC,MAAM;IAAAC,iBAAA,GAAqBF,OAAO,CAA1BG,QAAQ;IAARA,QAAQ,GAAAD,iBAAA,cAAG,GAAG,GAAAA,iBAAA;EAC9B,MAAME,YAAY,GAAGZ,YAAY,CAACE,KAAK,CAACU,YAAY,CAAC;EAErDb,SAAS,CAACa,YAAY,EAAE,iCAAiC,CAAC;EAE1D,MAAAC,SAAA,GAAwBjB,QAAQ,CAAa,IAAIkB,UAAU,CAAC,CAAC,CAAC;IAAvDC,IAAI,GAAAF,SAAA;IAAEG,OAAO,GAAAH,SAAA;EACpB,MAAMI,WAAW,GAAGnB,MAAM,CAAsB,IAAI,CAAC;EAErD,MAAAoB,oBAAA,GAAkBf,mBAAmB,CAAC;MACpCgB,IAAI,EAAEV,MAAM;MACZA,MAAM,EAAEL,MAAM,CAACgB;IACjB,CAAC,CAAC;IAHMC,KAAK,GAAAH,oBAAA,CAALG,KAAK;EAKbxB,SAAS,CAAC,MAAM;IACd,MAAAyB,eAAA,GAA8BjB,cAAc,CAACgB,KAAK,CAAC;MAA3CE,OAAO,GAAAD,eAAA,CAAPC,OAAO;MAAEC,QAAQ,GAAAF,eAAA,CAARE,QAAQ;IACzBP,WAAW,CAACQ,OAAO,GAAGD,QAAQ;IAE9B,OAAO,MAAM;MACXD,OAAO,CAAC,CAAC;MACTN,WAAW,CAACQ,OAAO,GAAG,IAAI;IAC5B,CAAC;EACH,CAAC,EAAE,CAACJ,KAAK,oBAALA,KAAK,CAAEK,gBAAgB,CAAC,CAAC;EAE7BzB,WAAW,CAAC,MAAM;IAChB,MAAM0B,aAAa,GAAGrB,gBAAgB,CAACW,WAAW,CAACQ,OAAO,CAAC;IAC3D,IAAIE,aAAa,EAAE;MACjBX,OAAO,CAACW,aAAa,CAAC;IACxB;EACF,CAAC,EAAEhB,QAAQ,CAAC;EAEZ,OAAO;IAAEI;EAAK,CAAC;AACjB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/hooks/useCamera/index.ts"],"sourcesContent":["export * from './useCamera';\n"],"mappings":"AAAA,cAAc,aAAa","ignoreList":[]}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { useAtom } from 'jotai';
|
|
2
|
+
import { useDevices } from '../useDevices';
|
|
3
|
+
import * as state from '../../conversation/state';
|
|
4
|
+
export function useCamera() {
|
|
5
|
+
const devices = useDevices({
|
|
6
|
+
type: 'videoinput'
|
|
7
|
+
});
|
|
8
|
+
const _useAtom = useAtom(state.camera),
|
|
9
|
+
device = _useAtom[0],
|
|
10
|
+
setDevice = _useAtom[1];
|
|
11
|
+
return {
|
|
12
|
+
devices,
|
|
13
|
+
enabled: device.enabled,
|
|
14
|
+
deviceId: device.deviceId,
|
|
15
|
+
setEnabled(enabled) {
|
|
16
|
+
setDevice({
|
|
17
|
+
...device,
|
|
18
|
+
enabled
|
|
19
|
+
});
|
|
20
|
+
},
|
|
21
|
+
setDeviceId(deviceId) {
|
|
22
|
+
setDevice({
|
|
23
|
+
...device,
|
|
24
|
+
deviceId
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=useCamera.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useAtom","useDevices","state","useCamera","devices","type","_useAtom","camera","device","setDevice","enabled","deviceId","setEnabled","setDeviceId"],"sources":["../../../../src/hooks/useCamera/useCamera.ts"],"sourcesContent":["import { useAtom } from 'jotai';\nimport { useDevices } from '../useDevices';\n\nimport * as state from '../../conversation/state';\n\nexport function useCamera() {\n const devices = useDevices({ type: 'videoinput' });\n const [device, setDevice] = useAtom(state.camera);\n\n return {\n devices,\n enabled: device.enabled,\n deviceId: device.deviceId,\n setEnabled(enabled: boolean) {\n setDevice({ ...device, enabled });\n },\n setDeviceId(deviceId: string) {\n setDevice({ ...device, deviceId });\n },\n };\n}\n"],"mappings":"AAAA,SAASA,OAAO,QAAQ,OAAO;AAC/B,SAASC,UAAU,QAAQ,eAAe;AAE1C,OAAO,KAAKC,KAAK,MAAM,0BAA0B;AAEjD,OAAO,SAASC,SAASA,CAAA,EAAG;EAC1B,MAAMC,OAAO,GAAGH,UAAU,CAAC;IAAEI,IAAI,EAAE;EAAa,CAAC,CAAC;EAClD,MAAAC,QAAA,GAA4BN,OAAO,CAACE,KAAK,CAACK,MAAM,CAAC;IAA1CC,MAAM,GAAAF,QAAA;IAAEG,SAAS,GAAAH,QAAA;EAExB,OAAO;IACLF,OAAO;IACPM,OAAO,EAAEF,MAAM,CAACE,OAAO;IACvBC,QAAQ,EAAEH,MAAM,CAACG,QAAQ;IACzBC,UAAUA,CAACF,OAAgB,EAAE;MAC3BD,SAAS,CAAC;QAAE,GAAGD,MAAM;QAAEE;MAAQ,CAAC,CAAC;IACnC,CAAC;IACDG,WAAWA,CAACF,QAAgB,EAAE;MAC5BF,SAAS,CAAC;QAAE,GAAGD,MAAM;QAAEG;MAAS,CAAC,CAAC;IACpC;EACF,CAAC;AACH","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/hooks/useConnectionState/index.ts"],"sourcesContent":["export * from './useConnectionState';\n"],"mappings":"AAAA,cAAc,sBAAsB","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { useAtomValue } from 'jotai';
|
|
2
|
+
import { state } from '../../conversation';
|
|
3
|
+
export function useConnectionState(type) {
|
|
4
|
+
switch (type) {
|
|
5
|
+
case 'user':
|
|
6
|
+
return useAtomValue(state.userConnectionState);
|
|
7
|
+
case 'agent':
|
|
8
|
+
return useAtomValue(state.agentConnectionState);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=useConnectionState.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["useAtomValue","state","useConnectionState","type","userConnectionState","agentConnectionState"],"sources":["../../../../src/hooks/useConnectionState/useConnectionState.ts"],"sourcesContent":["import { useAtomValue } from 'jotai';\n\nimport { state } from '../../conversation';\n\nexport function useConnectionState(type: 'user' | 'agent') {\n switch (type) {\n case 'user':\n return useAtomValue(state.userConnectionState);\n case 'agent':\n return useAtomValue(state.agentConnectionState);\n }\n}\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,OAAO;AAEpC,SAASC,KAAK,QAAQ,oBAAoB;AAE1C,OAAO,SAASC,kBAAkBA,CAACC,IAAsB,EAAE;EACzD,QAAQA,IAAI;IACV,KAAK,MAAM;MACT,OAAOH,YAAY,CAACC,KAAK,CAACG,mBAAmB,CAAC;IAChD,KAAK,OAAO;MACV,OAAOJ,YAAY,CAACC,KAAK,CAACI,oBAAoB,CAAC;EACnD;AACF","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/hooks/useConversation/index.ts"],"sourcesContent":["export * from './useConversation';\nexport * from './types';\n"],"mappings":"AAAA,cAAc,mBAAmB;AACjC,cAAc,SAAS","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["SPEAKING_STATE_EVENT_MAP","STANDARD","speaking","listening","AGENT"],"sources":["../../../../../src/hooks/useConversation/livekit/constants.ts"],"sourcesContent":["import type { TurnDetectionData } from './types';\nimport type { ConversationEvent } from '../../useConversationEvents';\n\nexport const SPEAKING_STATE_EVENT_MAP: Record<\n TurnDetectionData['participantKind'],\n Record<TurnDetectionData['state'], ConversationEvent>\n> = {\n STANDARD: {\n speaking: 'userSpeakStart',\n listening: 'userSpeakStop',\n },\n AGENT: {\n speaking: 'agentSpeakStart',\n listening: 'agentSpeakStop',\n },\n};\n"],"mappings":"AAGA,OAAO,MAAMA,wBAGZ,GAAG;EACFC,QAAQ,EAAE;IACRC,QAAQ,EAAE,gBAAgB;IAC1BC,SAAS,EAAE;EACb,CAAC;EACDC,KAAK,EAAE;IACLF,QAAQ,EAAE,iBAAiB;IAC3BC,SAAS,EAAE;EACb;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../../src/hooks/useConversation/livekit/types.ts"],"sourcesContent":["import type { FunctionCall, FunctionCallResult } from '../../../types/service';\nimport type {\n ToolCallEnvelope,\n ToolRuntimeAdapter,\n} from '../../useTools/runtime/types';\n\nexport type InactivityWarningData = {\n type: 'inactivity_warning';\n grace_period_sec: number;\n};\n\nexport type ToolRuntimeLike = {\n handleIncoming(\n envelope: ToolCallEnvelope,\n adapter: ToolRuntimeAdapter,\n ): Promise<void>;\n};\n\nexport type TurnDetectionData = {\n createdAt: number;\n participantIdentity: string;\n sequence: number;\n source: string;\n state: 'listening' | 'speaking';\n turnDetectionStrategy: 'livekit_turn_detector' | 'silero_vad';\n type: string;\n version: number;\n participantKind: 'STANDARD' | 'AGENT';\n speechId?: string;\n};\n\nexport type ToolCallsData = {\n type: 'tool_calls';\n requestId: string;\n functionCalls: FunctionCall[];\n};\n\nexport type ToolResultsData = {\n type: 'tool_results';\n requestId: string;\n functionCallResults: FunctionCallResult[];\n};\n"],"mappings":"","ignoreList":[]}
|