@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,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
exports.__esModule = true;
|
|
5
|
+
exports.FetchPersonaChatService = void 0;
|
|
6
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
7
|
+
var _http = require("../types/http");
|
|
8
|
+
const BASE_URL = 'https://www.wixapis.com';
|
|
9
|
+
function resolveLimitMs(limitation) {
|
|
10
|
+
if (!limitation) {
|
|
11
|
+
return undefined;
|
|
12
|
+
}
|
|
13
|
+
switch (limitation.type) {
|
|
14
|
+
case 'MINUTES':
|
|
15
|
+
return (limitation.limit ?? 0) * 60 * 1000;
|
|
16
|
+
case 'SECONDS':
|
|
17
|
+
return (limitation.limit ?? 0) * 1000;
|
|
18
|
+
case 'TOKENS':
|
|
19
|
+
default:
|
|
20
|
+
return 0;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
class FetchPersonaChatService {
|
|
24
|
+
constructor(apiKey) {
|
|
25
|
+
(0, _defineProperty2.default)(this, "apiKey", void 0);
|
|
26
|
+
this.apiKey = apiKey;
|
|
27
|
+
}
|
|
28
|
+
headers() {
|
|
29
|
+
return {
|
|
30
|
+
'Content-Type': 'application/json',
|
|
31
|
+
Authorization: this.apiKey
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
async post(path, body) {
|
|
35
|
+
const response = await fetch(`${BASE_URL}${path}`, {
|
|
36
|
+
method: 'POST',
|
|
37
|
+
headers: this.headers(),
|
|
38
|
+
body: JSON.stringify(body)
|
|
39
|
+
});
|
|
40
|
+
if (!response.ok) {
|
|
41
|
+
const text = await response.text().catch(() => '');
|
|
42
|
+
throw new _http.HttpError(response.status, `Request failed: ${response.status} ${text}`);
|
|
43
|
+
}
|
|
44
|
+
return response.json();
|
|
45
|
+
}
|
|
46
|
+
async createVoiceConversation(params) {
|
|
47
|
+
const {
|
|
48
|
+
chatId,
|
|
49
|
+
namespace,
|
|
50
|
+
chatConfig
|
|
51
|
+
} = params;
|
|
52
|
+
const data = await this.post(`/_api/persona-chat-service/v1/chats/${chatId}/create-voice-conversation`, {
|
|
53
|
+
namespace,
|
|
54
|
+
...(chatConfig ? {
|
|
55
|
+
chatConfig
|
|
56
|
+
} : {})
|
|
57
|
+
});
|
|
58
|
+
return {
|
|
59
|
+
url: data.conversationUrl ?? '',
|
|
60
|
+
id: data.interactiveConversationId ?? '',
|
|
61
|
+
limit: resolveLimitMs(data.limitation)
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
async createInteractiveConversation(params) {
|
|
65
|
+
const {
|
|
66
|
+
chatId,
|
|
67
|
+
namespace,
|
|
68
|
+
chatConfig
|
|
69
|
+
} = params;
|
|
70
|
+
const data = await this.post(`/_api/persona-chat-service/v1/chats/${chatId}/create-interactive-conversation`, {
|
|
71
|
+
namespace,
|
|
72
|
+
...(chatConfig ? {
|
|
73
|
+
chatConfig
|
|
74
|
+
} : {})
|
|
75
|
+
});
|
|
76
|
+
return {
|
|
77
|
+
url: data.conversationUrl ?? '',
|
|
78
|
+
id: data.interactiveConversationId ?? '',
|
|
79
|
+
limit: resolveLimitMs(data.limitation)
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
async endInteractiveConversation(params) {
|
|
83
|
+
const {
|
|
84
|
+
chatId,
|
|
85
|
+
conversationId,
|
|
86
|
+
namespace
|
|
87
|
+
} = params;
|
|
88
|
+
await this.post(`/_api/persona-chat-service/v1/chats/${chatId}/end-interactive-conversation`, {
|
|
89
|
+
namespace,
|
|
90
|
+
interactiveConversationId: conversationId
|
|
91
|
+
}).catch(() => {
|
|
92
|
+
// best-effort
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
async sendChatMessage(params) {
|
|
96
|
+
const {
|
|
97
|
+
chatId,
|
|
98
|
+
namespace,
|
|
99
|
+
message,
|
|
100
|
+
functionCallResults
|
|
101
|
+
} = params;
|
|
102
|
+
return this.post(`/_api/persona-chat-service/v1/chats/${chatId}/messages`, {
|
|
103
|
+
namespace,
|
|
104
|
+
message,
|
|
105
|
+
functionCallResults
|
|
106
|
+
});
|
|
107
|
+
}
|
|
108
|
+
async queryChatMessages(params) {
|
|
109
|
+
var _data$pagingMetadata;
|
|
110
|
+
const {
|
|
111
|
+
chatId,
|
|
112
|
+
namespace,
|
|
113
|
+
limit = 100,
|
|
114
|
+
cursor
|
|
115
|
+
} = params;
|
|
116
|
+
const data = await this.post(`/_api/persona-chat-service/v1/chats/${chatId}/messages/query`, {
|
|
117
|
+
namespace,
|
|
118
|
+
query: {
|
|
119
|
+
cursorPaging: {
|
|
120
|
+
limit,
|
|
121
|
+
...(cursor ? {
|
|
122
|
+
cursor
|
|
123
|
+
} : {})
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
});
|
|
127
|
+
return {
|
|
128
|
+
messages: (data.chatMessages ?? []).map(m => ({
|
|
129
|
+
id: m.id,
|
|
130
|
+
content: m.content,
|
|
131
|
+
role: m.role,
|
|
132
|
+
createdAt: m.createdAt
|
|
133
|
+
})),
|
|
134
|
+
nextCursor: (_data$pagingMetadata = data.pagingMetadata) == null || (_data$pagingMetadata = _data$pagingMetadata.cursors) == null ? void 0 : _data$pagingMetadata.next
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
exports.FetchPersonaChatService = FetchPersonaChatService;
|
|
139
|
+
//# sourceMappingURL=FetchPersonaChatService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_http","require","BASE_URL","resolveLimitMs","limitation","undefined","type","limit","FetchPersonaChatService","constructor","apiKey","_defineProperty2","default","headers","Authorization","post","path","body","response","fetch","method","JSON","stringify","ok","text","catch","HttpError","status","json","createVoiceConversation","params","chatId","namespace","chatConfig","data","url","conversationUrl","id","interactiveConversationId","createInteractiveConversation","endInteractiveConversation","conversationId","sendChatMessage","message","functionCallResults","queryChatMessages","_data$pagingMetadata","cursor","query","cursorPaging","messages","chatMessages","map","m","content","role","createdAt","nextCursor","pagingMetadata","cursors","next","exports"],"sources":["../../../src/services/FetchPersonaChatService.ts"],"sourcesContent":["import { HttpError } from '../types/http';\nimport type {\n IPersonaChatService,\n CreateConversationParams,\n ConversationResult,\n EndConversationParams,\n SendMessageParams,\n QueryMessagesParams,\n QueryMessagesResult,\n FunctionCall,\n Limitation,\n} from '../types/service';\n\nconst BASE_URL = 'https://www.wixapis.com';\n\nfunction resolveLimitMs(limitation?: Limitation): number | undefined {\n if (!limitation) {\n return undefined;\n }\n switch (limitation.type) {\n case 'MINUTES':\n return (limitation.limit ?? 0) * 60 * 1000;\n case 'SECONDS':\n return (limitation.limit ?? 0) * 1000;\n case 'TOKENS':\n default:\n return 0;\n }\n}\n\nexport class FetchPersonaChatService implements IPersonaChatService {\n private readonly apiKey: string;\n\n constructor(apiKey: string) {\n this.apiKey = apiKey;\n }\n\n private headers(): Record<string, string> {\n return {\n 'Content-Type': 'application/json',\n Authorization: this.apiKey,\n };\n }\n\n private async post<T>(path: string, body: unknown): Promise<T> {\n const response = await fetch(`${BASE_URL}${path}`, {\n method: 'POST',\n headers: this.headers(),\n body: JSON.stringify(body),\n });\n\n if (!response.ok) {\n const text = await response.text().catch(() => '');\n throw new HttpError(\n response.status,\n `Request failed: ${response.status} ${text}`,\n );\n }\n\n return response.json() as Promise<T>;\n }\n\n async createVoiceConversation(\n params: CreateConversationParams,\n ): Promise<ConversationResult> {\n const { chatId, namespace, chatConfig } = params;\n\n const data = await this.post<{\n conversationUrl?: string;\n interactiveConversationId?: string;\n limitation?: Limitation;\n }>(\n `/_api/persona-chat-service/v1/chats/${chatId}/create-voice-conversation`,\n {\n namespace,\n ...(chatConfig ? { chatConfig } : {}),\n },\n );\n\n return {\n url: data.conversationUrl ?? '',\n id: data.interactiveConversationId ?? '',\n limit: resolveLimitMs(data.limitation),\n };\n }\n\n async createInteractiveConversation(\n params: CreateConversationParams,\n ): Promise<ConversationResult> {\n const { chatId, namespace, chatConfig } = params;\n\n const data = await this.post<{\n conversationUrl?: string;\n interactiveConversationId?: string;\n limitation?: Limitation;\n }>(\n `/_api/persona-chat-service/v1/chats/${chatId}/create-interactive-conversation`,\n {\n namespace,\n ...(chatConfig ? { chatConfig } : {}),\n },\n );\n\n return {\n url: data.conversationUrl ?? '',\n id: data.interactiveConversationId ?? '',\n limit: resolveLimitMs(data.limitation),\n };\n }\n\n async endInteractiveConversation(\n params: EndConversationParams,\n ): Promise<void> {\n const { chatId, conversationId, namespace } = params;\n\n await this.post(\n `/_api/persona-chat-service/v1/chats/${chatId}/end-interactive-conversation`,\n { namespace, interactiveConversationId: conversationId },\n ).catch(() => {\n // best-effort\n });\n }\n\n async sendChatMessage(\n params: SendMessageParams,\n ): Promise<{ functionCalls?: FunctionCall[] }> {\n const { chatId, namespace, message, functionCallResults } = params;\n\n return this.post<{ functionCalls?: FunctionCall[] }>(\n `/_api/persona-chat-service/v1/chats/${chatId}/messages`,\n { namespace, message, functionCallResults },\n );\n }\n\n async queryChatMessages(\n params: QueryMessagesParams,\n ): Promise<QueryMessagesResult> {\n const { chatId, namespace, limit = 100, cursor } = params;\n\n const data = await this.post<{\n chatMessages?: {\n id: string;\n content: string;\n role: string;\n createdAt?: string;\n }[];\n pagingMetadata?: { cursors?: { next?: string } };\n }>(`/_api/persona-chat-service/v1/chats/${chatId}/messages/query`, {\n namespace,\n query: { cursorPaging: { limit, ...(cursor ? { cursor } : {}) } },\n });\n\n return {\n messages: (data.chatMessages ?? []).map((m) => ({\n id: m.id,\n content: m.content,\n role: m.role as 'user' | 'assistant',\n createdAt: m.createdAt,\n })),\n nextCursor: data.pagingMetadata?.cursors?.next,\n };\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../src/test-types.d.ts"],"sourcesContent":["/// <reference types=\"@wix/jest-yoshi-preset/types\" />\n"],"mappings":"AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.HttpError = void 0;
|
|
5
|
+
class HttpError extends Error {
|
|
6
|
+
constructor(status, message, data) {
|
|
7
|
+
super(message);
|
|
8
|
+
this.status = status;
|
|
9
|
+
this.data = data;
|
|
10
|
+
this.name = 'HttpError';
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.HttpError = HttpError;
|
|
14
|
+
//# sourceMappingURL=http.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["HttpError","Error","constructor","status","message","data","name","exports"],"sources":["../../../src/types/http.ts"],"sourcesContent":["export interface HttpRequestConfig {\n url: string;\n method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';\n data?: unknown;\n headers?: Record<string, string>;\n}\n\nexport interface IHttpClient {\n request<T>(config: HttpRequestConfig): Promise<T>;\n}\n\nexport class HttpError extends Error {\n constructor(\n public readonly status: number,\n message: string,\n public readonly data?: unknown,\n ) {\n super(message);\n this.name = 'HttpError';\n }\n}\n"],"mappings":";;;;AAWO,MAAMA,SAAS,SAASC,KAAK,CAAC;EACnCC,WAAWA,CACOC,MAAc,EAC9BC,OAAe,EACCC,IAAc,EAC9B;IACA,KAAK,CAACD,OAAO,CAAC;IAAC,KAJCD,MAAc,GAAdA,MAAc;IAAA,KAEdE,IAAc,GAAdA,IAAc;IAG9B,IAAI,CAACC,IAAI,GAAG,WAAW;EACzB;AACF;AAACC,OAAA,CAAAP,SAAA,GAAAA,SAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_http","require","exports","HttpError"],"sources":["../../../src/types/index.ts"],"sourcesContent":["export type { IHttpClient, HttpRequestConfig } from './http';\nexport { HttpError } from './http';\nexport type {\n IPersonaChatService,\n ConversationResult,\n CreateConversationParams,\n EndConversationParams,\n SendMessageParams,\n ChatMessage,\n QueryMessagesParams,\n QueryMessagesResult,\n FunctionCall,\n FunctionCallResult,\n Limitation,\n LimitationType,\n} from './service';\n"],"mappings":";;;;AACA,IAAAA,KAAA,GAAAC,OAAA;AAAmCC,OAAA,CAAAC,SAAA,GAAAH,KAAA,CAAAG,SAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../src/types/service.ts"],"sourcesContent":["export type FunctionCall = {\n functionCallId: string;\n name: string;\n arguments: string;\n};\n\nexport type FunctionCallResult = {\n functionCallId: string;\n result: string;\n error?: string;\n};\n\nexport type LimitationType = 'MINUTES' | 'SECONDS' | 'TOKENS';\n\nexport interface Limitation {\n type?: LimitationType;\n limit?: number;\n}\n\nexport interface ConversationResult {\n url: string;\n id: string;\n limit?: number;\n}\n\nexport interface CreateConversationParams {\n chatId: string;\n namespace: string;\n chatConfig?: Record<string, unknown>;\n}\n\nexport interface EndConversationParams {\n chatId: string;\n conversationId: string;\n namespace: string;\n}\n\nexport interface SendMessageParams {\n chatId: string;\n namespace: string;\n message: string;\n functionCallResults?: FunctionCallResult[];\n}\n\nexport interface ChatMessage {\n id: string;\n content: string;\n role: 'user' | 'assistant';\n createdAt?: string;\n}\n\nexport interface QueryMessagesParams {\n chatId: string;\n namespace: string;\n limit?: number;\n cursor?: string;\n}\n\nexport interface QueryMessagesResult {\n messages: ChatMessage[];\n nextCursor?: string;\n}\n\nexport interface IPersonaChatService {\n createVoiceConversation(\n params: CreateConversationParams,\n ): Promise<ConversationResult>;\n createInteractiveConversation(\n params: CreateConversationParams,\n ): Promise<ConversationResult>;\n endInteractiveConversation(params: EndConversationParams): Promise<void>;\n sendChatMessage(\n params: SendMessageParams,\n ): Promise<{ functionCalls?: FunctionCall[] }>;\n queryChatMessages(params: QueryMessagesParams): Promise<QueryMessagesResult>;\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.captureImage = captureImage;
|
|
5
|
+
var _helpers = require("./helpers");
|
|
6
|
+
async function captureImage(video, options = {}) {
|
|
7
|
+
const {
|
|
8
|
+
targetWidth,
|
|
9
|
+
targetHeight,
|
|
10
|
+
fit = 'contain',
|
|
11
|
+
quality,
|
|
12
|
+
imageType = 'image/png'
|
|
13
|
+
} = options;
|
|
14
|
+
try {
|
|
15
|
+
const tw = targetWidth ?? video.videoWidth;
|
|
16
|
+
const th = targetHeight ?? video.videoHeight;
|
|
17
|
+
const canvas = new OffscreenCanvas(tw, th);
|
|
18
|
+
const ctx = canvas.getContext('2d');
|
|
19
|
+
(0, _helpers.drawFitted)(ctx, video, tw, th, fit);
|
|
20
|
+
const blob = await canvas.convertToBlob({
|
|
21
|
+
type: imageType,
|
|
22
|
+
quality: (0, _helpers.getQuality)(imageType, quality)
|
|
23
|
+
});
|
|
24
|
+
return blob;
|
|
25
|
+
} catch (error) {
|
|
26
|
+
return Promise.reject(error);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=captureImage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_helpers","require","captureImage","video","options","targetWidth","targetHeight","fit","quality","imageType","tw","videoWidth","th","videoHeight","canvas","OffscreenCanvas","ctx","getContext","drawFitted","blob","convertToBlob","type","getQuality","error","Promise","reject"],"sources":["../../../../src/utils/captureImage/captureImage.ts"],"sourcesContent":["import type { CaptureOptions } from './types';\nimport { drawFitted, getQuality } from './helpers';\n\nexport async function captureImage(\n video: HTMLVideoElement,\n options: CaptureOptions = {},\n): Promise<Blob> {\n const {\n targetWidth,\n targetHeight,\n fit = 'contain',\n quality,\n imageType = 'image/png',\n } = options;\n\n try {\n const tw = targetWidth ?? video.videoWidth;\n const th = targetHeight ?? video.videoHeight;\n\n const canvas = new OffscreenCanvas(tw, th);\n const ctx = canvas.getContext('2d')!;\n drawFitted(ctx, video, tw, th, fit);\n\n const blob = await canvas.convertToBlob({\n type: imageType,\n quality: getQuality(imageType, quality),\n });\n\n return blob;\n } catch (error) {\n return Promise.reject(error);\n }\n}\n"],"mappings":";;;;AACA,IAAAA,QAAA,GAAAC,OAAA;AAEO,eAAeC,YAAYA,CAChCC,KAAuB,EACvBC,OAAuB,GAAG,CAAC,CAAC,EACb;EACf,MAAM;IACJC,WAAW;IACXC,YAAY;IACZC,GAAG,GAAG,SAAS;IACfC,OAAO;IACPC,SAAS,GAAG;EACd,CAAC,GAAGL,OAAO;EAEX,IAAI;IACF,MAAMM,EAAE,GAAGL,WAAW,IAAIF,KAAK,CAACQ,UAAU;IAC1C,MAAMC,EAAE,GAAGN,YAAY,IAAIH,KAAK,CAACU,WAAW;IAE5C,MAAMC,MAAM,GAAG,IAAIC,eAAe,CAACL,EAAE,EAAEE,EAAE,CAAC;IAC1C,MAAMI,GAAG,GAAGF,MAAM,CAACG,UAAU,CAAC,IAAI,CAAE;IACpC,IAAAC,mBAAU,EAACF,GAAG,EAAEb,KAAK,EAAEO,EAAE,EAAEE,EAAE,EAAEL,GAAG,CAAC;IAEnC,MAAMY,IAAI,GAAG,MAAML,MAAM,CAACM,aAAa,CAAC;MACtCC,IAAI,EAAEZ,SAAS;MACfD,OAAO,EAAE,IAAAc,mBAAU,EAACb,SAAS,EAAED,OAAO;IACxC,CAAC,CAAC;IAEF,OAAOW,IAAI;EACb,CAAC,CAAC,OAAOI,KAAK,EAAE;IACd,OAAOC,OAAO,CAACC,MAAM,CAACF,KAAK,CAAC;EAC9B;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.drawFitted = drawFitted;
|
|
5
|
+
exports.getQuality = getQuality;
|
|
6
|
+
function getQuality(type, quality) {
|
|
7
|
+
const mime = (type || '').toLowerCase();
|
|
8
|
+
if (mime === 'image/jpeg' || mime === 'image/webp') {
|
|
9
|
+
if (quality == null) {
|
|
10
|
+
return undefined;
|
|
11
|
+
}
|
|
12
|
+
return Math.min(1, Math.max(0, quality));
|
|
13
|
+
}
|
|
14
|
+
return undefined;
|
|
15
|
+
}
|
|
16
|
+
function drawFitted(ctx, source, tw, th, fit) {
|
|
17
|
+
const sw = source.videoWidth || source.width;
|
|
18
|
+
const sh = source.videoHeight || source.height;
|
|
19
|
+
const srcRatio = sw / sh;
|
|
20
|
+
const dstRatio = tw / th;
|
|
21
|
+
let dw = tw;
|
|
22
|
+
let dh = th;
|
|
23
|
+
let dx = 0;
|
|
24
|
+
let dy = 0;
|
|
25
|
+
switch (fit) {
|
|
26
|
+
case 'fill':
|
|
27
|
+
ctx.drawImage(source, 0, 0, tw, th);
|
|
28
|
+
return;
|
|
29
|
+
case 'none':
|
|
30
|
+
dx = (tw - sw) / 2;
|
|
31
|
+
dy = (th - sh) / 2;
|
|
32
|
+
ctx.drawImage(source, dx, dy);
|
|
33
|
+
return;
|
|
34
|
+
case 'contain':
|
|
35
|
+
if (srcRatio > dstRatio) {
|
|
36
|
+
dh = tw / srcRatio;
|
|
37
|
+
} else {
|
|
38
|
+
dw = th * srcRatio;
|
|
39
|
+
}
|
|
40
|
+
break;
|
|
41
|
+
case 'cover':
|
|
42
|
+
if (srcRatio > dstRatio) {
|
|
43
|
+
dw = th * srcRatio;
|
|
44
|
+
} else {
|
|
45
|
+
dh = tw / srcRatio;
|
|
46
|
+
}
|
|
47
|
+
break;
|
|
48
|
+
case 'scale-down':
|
|
49
|
+
{
|
|
50
|
+
const maxW = Math.min(tw, sw);
|
|
51
|
+
const maxH = Math.min(th, sh);
|
|
52
|
+
const limitRatio = maxW / maxH;
|
|
53
|
+
if (srcRatio > limitRatio) {
|
|
54
|
+
dh = maxW / srcRatio;
|
|
55
|
+
dw = maxW;
|
|
56
|
+
} else {
|
|
57
|
+
dw = maxH * srcRatio;
|
|
58
|
+
dh = maxH;
|
|
59
|
+
}
|
|
60
|
+
break;
|
|
61
|
+
}
|
|
62
|
+
default:
|
|
63
|
+
if (srcRatio > dstRatio) {
|
|
64
|
+
dh = tw / srcRatio;
|
|
65
|
+
} else {
|
|
66
|
+
dw = th * srcRatio;
|
|
67
|
+
}
|
|
68
|
+
break;
|
|
69
|
+
}
|
|
70
|
+
dx = (tw - dw) / 2;
|
|
71
|
+
dy = (th - dh) / 2;
|
|
72
|
+
ctx.drawImage(source, dx, dy, dw, dh);
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=helpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getQuality","type","quality","mime","toLowerCase","undefined","Math","min","max","drawFitted","ctx","source","tw","th","fit","sw","videoWidth","width","sh","videoHeight","height","srcRatio","dstRatio","dw","dh","dx","dy","drawImage","maxW","maxH","limitRatio"],"sources":["../../../../src/utils/captureImage/helpers.ts"],"sourcesContent":["import type { Fit } from './types';\n\nexport function getQuality(type: string, quality?: number): number | undefined {\n const mime = (type || '').toLowerCase();\n\n if (mime === 'image/jpeg' || mime === 'image/webp') {\n if (quality == null) {\n return undefined;\n }\n\n return Math.min(1, Math.max(0, quality));\n }\n\n return undefined;\n}\n\nexport function drawFitted(\n ctx: OffscreenCanvasRenderingContext2D,\n source: HTMLVideoElement,\n tw: number,\n th: number,\n fit: Fit,\n) {\n const sw = source.videoWidth || source.width;\n const sh = source.videoHeight || source.height;\n\n const srcRatio = sw / sh;\n const dstRatio = tw / th;\n\n let dw = tw;\n let dh = th;\n let dx = 0;\n let dy = 0;\n\n switch (fit) {\n case 'fill':\n ctx.drawImage(source, 0, 0, tw, th);\n return;\n\n case 'none':\n dx = (tw - sw) / 2;\n dy = (th - sh) / 2;\n ctx.drawImage(source, dx, dy);\n return;\n\n case 'contain':\n if (srcRatio > dstRatio) {\n dh = tw / srcRatio;\n } else {\n dw = th * srcRatio;\n }\n break;\n\n case 'cover':\n if (srcRatio > dstRatio) {\n dw = th * srcRatio;\n } else {\n dh = tw / srcRatio;\n }\n break;\n\n case 'scale-down': {\n const maxW = Math.min(tw, sw);\n const maxH = Math.min(th, sh);\n const limitRatio = maxW / maxH;\n if (srcRatio > limitRatio) {\n dh = maxW / srcRatio;\n dw = maxW;\n } else {\n dw = maxH * srcRatio;\n dh = maxH;\n }\n break;\n }\n\n default:\n if (srcRatio > dstRatio) {\n dh = tw / srcRatio;\n } else {\n dw = th * srcRatio;\n }\n break;\n }\n\n dx = (tw - dw) / 2;\n dy = (th - dh) / 2;\n\n ctx.drawImage(source, dx, dy, dw, dh);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
var _captureImage = require("./captureImage");
|
|
5
|
+
Object.keys(_captureImage).forEach(function (key) {
|
|
6
|
+
if (key === "default" || key === "__esModule") return;
|
|
7
|
+
if (key in exports && exports[key] === _captureImage[key]) return;
|
|
8
|
+
exports[key] = _captureImage[key];
|
|
9
|
+
});
|
|
10
|
+
var _types = require("./types");
|
|
11
|
+
Object.keys(_types).forEach(function (key) {
|
|
12
|
+
if (key === "default" || key === "__esModule") return;
|
|
13
|
+
if (key in exports && exports[key] === _types[key]) return;
|
|
14
|
+
exports[key] = _types[key];
|
|
15
|
+
});
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_captureImage","require","Object","keys","forEach","key","exports","_types"],"sources":["../../../../src/utils/captureImage/index.ts"],"sourcesContent":["export * from './captureImage';\nexport * from './types';\n"],"mappings":";;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,aAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,aAAA,CAAAK,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAL,aAAA,CAAAK,GAAA;AAAA;AACA,IAAAE,MAAA,GAAAN,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAI,MAAA,EAAAH,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAE,MAAA,CAAAF,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAE,MAAA,CAAAF,GAAA;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/utils/captureImage/types.ts"],"sourcesContent":["export type Fit = 'cover' | 'contain' | 'fill' | 'none' | 'scale-down';\nexport interface CaptureOptions {\n targetWidth?: number;\n targetHeight?: number;\n fit?: Fit;\n quality?: number;\n imageType?: string;\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.detectBrowser = detectBrowser;
|
|
5
|
+
exports.isIosDevice = isIosDevice;
|
|
6
|
+
var _detectBrowser = require("detect-browser");
|
|
7
|
+
// https://github.com/elevenlabs/packages/pull/391/files
|
|
8
|
+
function isIosDevice() {
|
|
9
|
+
return ['iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod'].includes(navigator.platform) ||
|
|
10
|
+
// iPad on iOS 13 detection
|
|
11
|
+
navigator.userAgent.includes('Mac') && 'ontouchend' in document;
|
|
12
|
+
}
|
|
13
|
+
function detectBrowser() {
|
|
14
|
+
const browser = (0, _detectBrowser.detect)();
|
|
15
|
+
return browser == null ? void 0 : browser.name;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=compatibility.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_detectBrowser","require","isIosDevice","includes","navigator","platform","userAgent","document","detectBrowser","browser","detect","name"],"sources":["../../../../src/utils/compatibility/compatibility.ts"],"sourcesContent":["import { detect } from 'detect-browser';\n// https://github.com/elevenlabs/packages/pull/391/files\nexport function isIosDevice() {\n return (\n [\n 'iPad Simulator',\n 'iPhone Simulator',\n 'iPod Simulator',\n 'iPad',\n 'iPhone',\n 'iPod',\n ].includes(navigator.platform) ||\n // iPad on iOS 13 detection\n (navigator.userAgent.includes('Mac') && 'ontouchend' in document)\n );\n}\n\nexport function detectBrowser() {\n const browser = detect();\n return browser?.name;\n}\n"],"mappings":";;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AACA;AACO,SAASC,WAAWA,CAAA,EAAG;EAC5B,OACE,CACE,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAChB,MAAM,EACN,QAAQ,EACR,MAAM,CACP,CAACC,QAAQ,CAACC,SAAS,CAACC,QAAQ,CAAC;EAC9B;EACCD,SAAS,CAACE,SAAS,CAACH,QAAQ,CAAC,KAAK,CAAC,IAAI,YAAY,IAAII,QAAS;AAErE;AAEO,SAASC,aAAaA,CAAA,EAAG;EAC9B,MAAMC,OAAO,GAAG,IAAAC,qBAAM,EAAC,CAAC;EACxB,OAAOD,OAAO,oBAAPA,OAAO,CAAEE,IAAI;AACtB","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
var _compatibility = require("./compatibility");
|
|
5
|
+
Object.keys(_compatibility).forEach(function (key) {
|
|
6
|
+
if (key === "default" || key === "__esModule") return;
|
|
7
|
+
if (key in exports && exports[key] === _compatibility[key]) return;
|
|
8
|
+
exports[key] = _compatibility[key];
|
|
9
|
+
});
|
|
10
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_compatibility","require","Object","keys","forEach","key","exports"],"sources":["../../../../src/utils/compatibility/index.ts"],"sourcesContent":["export * from './compatibility';\n"],"mappings":";;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,cAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,cAAA,CAAAK,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAL,cAAA,CAAAK,GAAA;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
var _captureImage = require("./utils/captureImage");
|
|
5
|
+
Object.keys(_captureImage).forEach(function (key) {
|
|
6
|
+
if (key === "default" || key === "__esModule") return;
|
|
7
|
+
if (key in exports && exports[key] === _captureImage[key]) return;
|
|
8
|
+
exports[key] = _captureImage[key];
|
|
9
|
+
});
|
|
10
|
+
//# sourceMappingURL=utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_captureImage","require","Object","keys","forEach","key","exports"],"sources":["../../src/utils.ts"],"sourcesContent":["export * from './utils/captureImage';\n"],"mappings":";;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,aAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,aAAA,CAAAK,GAAA;EAAAC,OAAA,CAAAD,GAAA,IAAAL,aAAA,CAAAK,GAAA;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import invariant from 'invariant';
|
|
3
|
+
import { useAtomValue } from 'jotai';
|
|
4
|
+
import { RoomAudioRenderer } from '@livekit/components-react';
|
|
5
|
+
import { useAudio } from '../../hooks/useAudio';
|
|
6
|
+
import { state } from '../../conversation';
|
|
7
|
+
export function Audio() {
|
|
8
|
+
const conversation = useAtomValue(state.conversation);
|
|
9
|
+
const _useAudio = useAudio(),
|
|
10
|
+
muted = _useAudio.muted,
|
|
11
|
+
volume = _useAudio.volume;
|
|
12
|
+
invariant(conversation, 'Conversation is not initialized');
|
|
13
|
+
return /*#__PURE__*/React.createElement(RoomAudioRenderer, {
|
|
14
|
+
muted: muted,
|
|
15
|
+
volume: volume
|
|
16
|
+
});
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=Audio.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","invariant","useAtomValue","RoomAudioRenderer","useAudio","state","Audio","conversation","_useAudio","muted","volume","createElement"],"sources":["../../../../src/components/Audio/Audio.tsx"],"sourcesContent":["import React from 'react';\nimport invariant from 'invariant';\nimport { useAtomValue } from 'jotai';\nimport { RoomAudioRenderer } from '@livekit/components-react';\nimport { useAudio } from '../../hooks/useAudio';\n\nimport { state } from '../../conversation';\n\nexport function Audio() {\n const conversation = useAtomValue(state.conversation);\n const { muted, volume } = useAudio();\n\n invariant(conversation, 'Conversation is not initialized');\n return <RoomAudioRenderer muted={muted} volume={volume} />;\n}\n"],"mappings":"AAAA,OAAOA,KAAK,MAAM,OAAO;AACzB,OAAOC,SAAS,MAAM,WAAW;AACjC,SAASC,YAAY,QAAQ,OAAO;AACpC,SAASC,iBAAiB,QAAQ,2BAA2B;AAC7D,SAASC,QAAQ,QAAQ,sBAAsB;AAE/C,SAASC,KAAK,QAAQ,oBAAoB;AAE1C,OAAO,SAASC,KAAKA,CAAA,EAAG;EACtB,MAAMC,YAAY,GAAGL,YAAY,CAACG,KAAK,CAACE,YAAY,CAAC;EACrD,MAAAC,SAAA,GAA0BJ,QAAQ,CAAC,CAAC;IAA5BK,KAAK,GAAAD,SAAA,CAALC,KAAK;IAAEC,MAAM,GAAAF,SAAA,CAANE,MAAM;EAErBT,SAAS,CAACM,YAAY,EAAE,iCAAiC,CAAC;EAC1D,oBAAOP,KAAA,CAAAW,aAAA,CAACR,iBAAiB;IAACM,KAAK,EAAEA,KAAM;IAACC,MAAM,EAAEA;EAAO,CAAE,CAAC;AAC5D","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["../../../../src/components/Audio/index.ts"],"sourcesContent":["export * from './Audio';\n"],"mappings":"AAAA,cAAc,SAAS","ignoreList":[]}
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/objectWithoutPropertiesLoose";
|
|
2
|
+
const _excluded = ["className", "style", "width", "height", "pip", "onPiPEnter", "onPiPExit", "onPiPError"];
|
|
3
|
+
import React, { useEffect, useRef, useState } from 'react';
|
|
4
|
+
import { chromaKey } from './chroma-key';
|
|
5
|
+
import { pipActiveAtom, usePictureInPictureAuto } from '../../hooks/usePictureInPicture';
|
|
6
|
+
import { useAtomValue } from 'jotai';
|
|
7
|
+
export function ChromaKey(props) {
|
|
8
|
+
const _props$debug = props.debug,
|
|
9
|
+
debug = _props$debug === void 0 ? false : _props$debug,
|
|
10
|
+
children = props.children,
|
|
11
|
+
_props$color = props.color,
|
|
12
|
+
color = _props$color === void 0 ? '#03ff9c' : _props$color,
|
|
13
|
+
_props$spill = props.spill,
|
|
14
|
+
spill = _props$spill === void 0 ? 0.1 : _props$spill,
|
|
15
|
+
_props$smoothness = props.smoothness,
|
|
16
|
+
smoothness = _props$smoothness === void 0 ? 0.15 : _props$smoothness,
|
|
17
|
+
_props$similarity = props.similarity,
|
|
18
|
+
similarity = _props$similarity === void 0 ? 0.3 : _props$similarity,
|
|
19
|
+
fallback = props.fallback,
|
|
20
|
+
background = props.background;
|
|
21
|
+
const _children$props = children.props,
|
|
22
|
+
className = _children$props.className,
|
|
23
|
+
style = _children$props.style,
|
|
24
|
+
width = _children$props.width,
|
|
25
|
+
height = _children$props.height,
|
|
26
|
+
pip = _children$props.pip,
|
|
27
|
+
onPiPEnter = _children$props.onPiPEnter,
|
|
28
|
+
onPiPExit = _children$props.onPiPExit,
|
|
29
|
+
onPiPError = _children$props.onPiPError,
|
|
30
|
+
restVideoProps = _objectWithoutPropertiesLoose(_children$props, _excluded);
|
|
31
|
+
const _useState = useState(false),
|
|
32
|
+
isPlayable = _useState[0],
|
|
33
|
+
setIsPlayable = _useState[1];
|
|
34
|
+
const $video = useRef(null);
|
|
35
|
+
const $canvas = useRef(null);
|
|
36
|
+
const isPiPActive = useAtomValue(pipActiveAtom);
|
|
37
|
+
|
|
38
|
+
// Setup PiP - hook handles canvas → video conversion internally
|
|
39
|
+
usePictureInPictureAuto({
|
|
40
|
+
element: pip && isPlayable ? $canvas.current : null,
|
|
41
|
+
onEnter: onPiPEnter,
|
|
42
|
+
onExit: onPiPExit,
|
|
43
|
+
onError: onPiPError
|
|
44
|
+
});
|
|
45
|
+
const showPipFallback = pip && isPiPActive;
|
|
46
|
+
useEffect(() => {
|
|
47
|
+
if (!$video.current || !$canvas.current || !isPlayable) {
|
|
48
|
+
debug && console.warn('Video or canvas is not initialized');
|
|
49
|
+
return;
|
|
50
|
+
}
|
|
51
|
+
const process = chromaKey($video.current, $canvas.current, {
|
|
52
|
+
color,
|
|
53
|
+
spill,
|
|
54
|
+
similarity,
|
|
55
|
+
smoothness,
|
|
56
|
+
background
|
|
57
|
+
});
|
|
58
|
+
debug && console.log('Chroma key initialized', $video.current, $canvas.current, {
|
|
59
|
+
color,
|
|
60
|
+
spill,
|
|
61
|
+
similarity,
|
|
62
|
+
smoothness
|
|
63
|
+
});
|
|
64
|
+
let rafId;
|
|
65
|
+
let isActive = true;
|
|
66
|
+
function loop() {
|
|
67
|
+
if (!isActive) {
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
process == null || process();
|
|
71
|
+
rafId = requestAnimationFrame(loop);
|
|
72
|
+
}
|
|
73
|
+
rafId = requestAnimationFrame(loop);
|
|
74
|
+
return () => {
|
|
75
|
+
debug && console.log('Chroma key process cleanup');
|
|
76
|
+
isActive = false;
|
|
77
|
+
cancelAnimationFrame(rafId);
|
|
78
|
+
};
|
|
79
|
+
}, [color, spill, similarity, smoothness, isPlayable, debug, background]);
|
|
80
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
81
|
+
className: className,
|
|
82
|
+
style: {
|
|
83
|
+
...style,
|
|
84
|
+
width,
|
|
85
|
+
height
|
|
86
|
+
}
|
|
87
|
+
}, /*#__PURE__*/React.createElement("canvas", {
|
|
88
|
+
ref: $canvas,
|
|
89
|
+
style: {
|
|
90
|
+
width: '100%',
|
|
91
|
+
height: '100%',
|
|
92
|
+
display: showPipFallback ? 'none' : 'block',
|
|
93
|
+
...(isPlayable ? {} : {
|
|
94
|
+
position: 'absolute',
|
|
95
|
+
opacity: 0,
|
|
96
|
+
pointerEvents: 'none',
|
|
97
|
+
visibility: 'hidden',
|
|
98
|
+
zIndex: -1
|
|
99
|
+
})
|
|
100
|
+
}
|
|
101
|
+
}), !isPlayable && fallback, /*#__PURE__*/React.cloneElement(children, {
|
|
102
|
+
...restVideoProps,
|
|
103
|
+
ref: $video,
|
|
104
|
+
style: {
|
|
105
|
+
display: 'none'
|
|
106
|
+
},
|
|
107
|
+
onCanPlay: checkPlayable,
|
|
108
|
+
onLoadedMetadata: checkPlayable
|
|
109
|
+
}));
|
|
110
|
+
function checkPlayable(event) {
|
|
111
|
+
const readyState = event.currentTarget.readyState;
|
|
112
|
+
setIsPlayable(readyState >= HTMLMediaElement.HAVE_FUTURE_DATA);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
//# sourceMappingURL=ChromaKey.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["React","useEffect","useRef","useState","chromaKey","pipActiveAtom","usePictureInPictureAuto","useAtomValue","ChromaKey","props","_props$debug","debug","children","_props$color","color","_props$spill","spill","_props$smoothness","smoothness","_props$similarity","similarity","fallback","background","_children$props","className","style","width","height","pip","onPiPEnter","onPiPExit","onPiPError","restVideoProps","_objectWithoutPropertiesLoose","_excluded","_useState","isPlayable","setIsPlayable","$video","$canvas","isPiPActive","element","current","onEnter","onExit","onError","showPipFallback","console","warn","process","log","rafId","isActive","loop","requestAnimationFrame","cancelAnimationFrame","createElement","ref","display","position","opacity","pointerEvents","visibility","zIndex","cloneElement","onCanPlay","checkPlayable","onLoadedMetadata","event","readyState","currentTarget","HTMLMediaElement","HAVE_FUTURE_DATA"],"sources":["../../../../src/components/ChromaKey/ChromaKey.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\n\nimport { chromaKey } from './chroma-key';\nimport {\n pipActiveAtom,\n usePictureInPictureAuto,\n} from '../../hooks/usePictureInPicture';\nimport { useAtomValue } from 'jotai';\n\ninterface ChromaKeyProps extends React.HTMLAttributes<HTMLCanvasElement> {\n debug?: boolean;\n color?: string;\n spill?: number;\n similarity?: number;\n smoothness?: number;\n fallback?: React.ReactNode;\n background?: string | null;\n children: React.ReactElement<\n React.VideoHTMLAttributes<HTMLVideoElement> & {\n ref?: React.Ref<HTMLVideoElement>;\n pip?: boolean;\n onPiPEnter?: () => void;\n onPiPExit?: () => void;\n onPiPError?: (error: Error) => void;\n }\n >;\n}\n\nexport function ChromaKey(props: ChromaKeyProps) {\n const {\n debug = false,\n children,\n color = '#03ff9c',\n spill = 0.1,\n smoothness = 0.15,\n similarity = 0.3,\n fallback,\n background,\n } = props;\n\n const {\n className,\n style,\n width,\n height,\n pip,\n onPiPEnter,\n onPiPExit,\n onPiPError,\n ...restVideoProps\n } = children.props;\n const [isPlayable, setIsPlayable] = useState(false);\n\n const $video = useRef<HTMLVideoElement>(null);\n const $canvas = useRef<HTMLCanvasElement>(null);\n const isPiPActive = useAtomValue(pipActiveAtom);\n\n // Setup PiP - hook handles canvas → video conversion internally\n usePictureInPictureAuto({\n element: pip && isPlayable ? $canvas.current : null,\n onEnter: onPiPEnter,\n onExit: onPiPExit,\n onError: onPiPError,\n });\n\n const showPipFallback = pip && isPiPActive;\n\n useEffect(() => {\n if (!$video.current || !$canvas.current || !isPlayable) {\n debug && console.warn('Video or canvas is not initialized');\n\n return;\n }\n\n const process = chromaKey($video.current, $canvas.current, {\n color,\n spill,\n similarity,\n smoothness,\n background,\n });\n\n debug &&\n console.log('Chroma key initialized', $video.current, $canvas.current, {\n color,\n spill,\n similarity,\n smoothness,\n });\n\n let rafId: number;\n let isActive = true;\n\n function loop() {\n if (!isActive) {\n return;\n }\n process?.();\n rafId = requestAnimationFrame(loop);\n }\n\n rafId = requestAnimationFrame(loop);\n\n return () => {\n debug && console.log('Chroma key process cleanup');\n isActive = false;\n cancelAnimationFrame(rafId);\n };\n }, [color, spill, similarity, smoothness, isPlayable, debug, background]);\n\n return (\n <div\n className={className}\n style={{\n ...style,\n width,\n height,\n }}\n >\n <canvas\n ref={$canvas}\n style={{\n width: '100%',\n height: '100%',\n display: showPipFallback ? 'none' : 'block',\n ...(isPlayable\n ? {}\n : {\n position: 'absolute',\n opacity: 0,\n pointerEvents: 'none',\n visibility: 'hidden',\n zIndex: -1,\n }),\n }}\n />\n {!isPlayable && fallback}\n\n {React.cloneElement(children, {\n ...restVideoProps,\n ref: $video,\n style: { display: 'none' },\n onCanPlay: checkPlayable,\n onLoadedMetadata: checkPlayable,\n })}\n </div>\n );\n\n function checkPlayable(event: React.SyntheticEvent<HTMLVideoElement>) {\n const readyState = event.currentTarget.readyState;\n\n setIsPlayable(readyState >= HTMLMediaElement.HAVE_FUTURE_DATA);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|