@rqmii_immersive/agent-react-sdk 2.0.0 → 4.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (126) hide show
  1. package/README.md +103 -357
  2. package/dist/{RqmiiCloudAvatarPlayer-BnsY8xIR.js → RqmiiCloudAvatarPlayer-CESlcAGy.js} +6095 -6108
  3. package/dist/RqmiiCloudAvatarPlayer-CESlcAGy.js.map +1 -0
  4. package/dist/RqmiiCloudAvatarPlayer-D5npgPcs.cjs +2939 -0
  5. package/dist/RqmiiCloudAvatarPlayer-D5npgPcs.cjs.map +1 -0
  6. package/dist/agent-react-sdk.css +1 -1
  7. package/dist/components/RqmiiAgentRoom.d.ts +3 -0
  8. package/dist/components/RqmiiAgentRoom.d.ts.map +1 -0
  9. package/dist/components/RqmiiCloudAvatarPlayer.d.ts +3 -0
  10. package/dist/components/RqmiiCloudAvatarPlayer.d.ts.map +1 -0
  11. package/dist/components/RqmiiErrorBoundary.d.ts +19 -0
  12. package/dist/components/RqmiiErrorBoundary.d.ts.map +1 -0
  13. package/dist/components/pxs/EpicPixelStreamingPlayer.d.ts +5 -0
  14. package/dist/components/pxs/EpicPixelStreamingPlayer.d.ts.map +1 -0
  15. package/dist/core/constants.d.ts +81 -0
  16. package/dist/core/constants.d.ts.map +1 -0
  17. package/dist/core/events/emitter.d.ts +10 -0
  18. package/dist/core/events/emitter.d.ts.map +1 -0
  19. package/dist/core/managers/audio.d.ts +24 -0
  20. package/dist/core/managers/audio.d.ts.map +1 -0
  21. package/dist/core/managers/heartbeat.d.ts +13 -0
  22. package/dist/core/managers/heartbeat.d.ts.map +1 -0
  23. package/dist/core/managers/reconnect.d.ts +29 -0
  24. package/dist/core/managers/reconnect.d.ts.map +1 -0
  25. package/dist/core/managers/session.d.ts +20 -0
  26. package/dist/core/managers/session.d.ts.map +1 -0
  27. package/dist/core/managers/socket.d.ts +15 -0
  28. package/dist/core/managers/socket.d.ts.map +1 -0
  29. package/dist/core/state/reducer.d.ts +4 -0
  30. package/dist/core/state/reducer.d.ts.map +1 -0
  31. package/dist/core/state/selectors.d.ts +24 -0
  32. package/dist/core/state/selectors.d.ts.map +1 -0
  33. package/dist/core/state/types.d.ts +60 -0
  34. package/dist/core/state/types.d.ts.map +1 -0
  35. package/dist/core/utils/accumulator.d.ts +11 -0
  36. package/dist/core/utils/accumulator.d.ts.map +1 -0
  37. package/dist/core/utils/agent-type.d.ts +2 -0
  38. package/dist/core/utils/agent-type.d.ts.map +1 -0
  39. package/dist/core/utils/bytes.d.ts +2 -0
  40. package/dist/core/utils/bytes.d.ts.map +1 -0
  41. package/dist/core/utils/sleep.d.ts +2 -0
  42. package/dist/core/utils/sleep.d.ts.map +1 -0
  43. package/dist/hooks/index.d.ts +12 -0
  44. package/dist/hooks/index.d.ts.map +1 -0
  45. package/dist/hooks/use-rqmii-agent.d.ts +2 -0
  46. package/dist/hooks/use-rqmii-agent.d.ts.map +1 -0
  47. package/dist/hooks/use-rqmii-audio-element.d.ts +2 -0
  48. package/dist/hooks/use-rqmii-audio-element.d.ts.map +1 -0
  49. package/dist/hooks/use-rqmii-avatar.d.ts +13 -0
  50. package/dist/hooks/use-rqmii-avatar.d.ts.map +1 -0
  51. package/dist/hooks/use-rqmii-connection.d.ts +27 -0
  52. package/dist/hooks/use-rqmii-connection.d.ts.map +1 -0
  53. package/dist/hooks/use-rqmii-events.d.ts +3 -0
  54. package/dist/hooks/use-rqmii-events.d.ts.map +1 -0
  55. package/dist/hooks/use-rqmii-messages.d.ts +6 -0
  56. package/dist/hooks/use-rqmii-messages.d.ts.map +1 -0
  57. package/dist/hooks/use-rqmii-press-to-talk.d.ts +3 -0
  58. package/dist/hooks/use-rqmii-press-to-talk.d.ts.map +1 -0
  59. package/dist/hooks/use-rqmii-sdk.d.ts +81 -0
  60. package/dist/hooks/use-rqmii-sdk.d.ts.map +1 -0
  61. package/dist/hooks/use-rqmii-session.d.ts +9 -0
  62. package/dist/hooks/use-rqmii-session.d.ts.map +1 -0
  63. package/dist/hooks/use-rqmii-vad.d.ts +3 -0
  64. package/dist/hooks/use-rqmii-vad.d.ts.map +1 -0
  65. package/dist/hooks/use-rqmii-voice.d.ts +12 -0
  66. package/dist/hooks/use-rqmii-voice.d.ts.map +1 -0
  67. package/dist/index.cjs +1 -1
  68. package/dist/index.cjs.map +1 -1
  69. package/dist/index.d.ts +10 -340
  70. package/dist/index.d.ts.map +1 -0
  71. package/dist/index.js +270 -20
  72. package/dist/index.js.map +1 -1
  73. package/dist/provider/RqmiiAgentProvider.d.ts +4 -0
  74. package/dist/provider/RqmiiAgentProvider.d.ts.map +1 -0
  75. package/dist/provider/socket-handlers.d.ts +77 -0
  76. package/dist/provider/socket-handlers.d.ts.map +1 -0
  77. package/dist/provider/use-manager-lifecycle.d.ts +76 -0
  78. package/dist/provider/use-manager-lifecycle.d.ts.map +1 -0
  79. package/dist/types/index.d.ts +385 -0
  80. package/dist/types/index.d.ts.map +1 -0
  81. package/dist/ui/Orb.d.ts +19 -0
  82. package/dist/ui/Orb.d.ts.map +1 -0
  83. package/dist/ui/RqmiiAgentChat.d.ts +4 -0
  84. package/dist/ui/RqmiiAgentChat.d.ts.map +1 -0
  85. package/dist/ui/agent-data.d.ts +17 -0
  86. package/dist/ui/agent-data.d.ts.map +1 -0
  87. package/dist/ui/chat/ChatBox.d.ts +22 -0
  88. package/dist/ui/chat/ChatBox.d.ts.map +1 -0
  89. package/dist/ui/chat/CreditsExhaustedPanel.d.ts +6 -0
  90. package/dist/ui/chat/CreditsExhaustedPanel.d.ts.map +1 -0
  91. package/dist/ui/chat/chat-box-avatar.d.ts +3 -0
  92. package/dist/ui/chat/chat-box-avatar.d.ts.map +1 -0
  93. package/dist/ui/chat/chat-box-content.d.ts +26 -0
  94. package/dist/ui/chat/chat-box-content.d.ts.map +1 -0
  95. package/dist/ui/chat/chat-box-shared.d.ts +24 -0
  96. package/dist/ui/chat/chat-box-shared.d.ts.map +1 -0
  97. package/dist/ui/chat/chat-box-text-and-voice.d.ts +3 -0
  98. package/dist/ui/chat/chat-box-text-and-voice.d.ts.map +1 -0
  99. package/dist/ui/chat/chat-box-text.d.ts +3 -0
  100. package/dist/ui/chat/chat-box-text.d.ts.map +1 -0
  101. package/dist/ui/chat/chat-box-types.d.ts +83 -0
  102. package/dist/ui/chat/chat-box-types.d.ts.map +1 -0
  103. package/dist/ui/chat/chat-box-voice.d.ts +3 -0
  104. package/dist/ui/chat/chat-box-voice.d.ts.map +1 -0
  105. package/dist/ui/chat/components.d.ts +4 -0
  106. package/dist/ui/chat/components.d.ts.map +1 -0
  107. package/dist/ui/chat/panels.d.ts +78 -0
  108. package/dist/ui/chat/panels.d.ts.map +1 -0
  109. package/dist/ui/chat/primitives.d.ts +47 -0
  110. package/dist/ui/chat/primitives.d.ts.map +1 -0
  111. package/dist/ui/chat/utils.d.ts +7 -0
  112. package/dist/ui/chat/utils.d.ts.map +1 -0
  113. package/dist/ui/faces.d.ts +3 -0
  114. package/dist/ui/faces.d.ts.map +1 -0
  115. package/dist/ui/languages.d.ts +10 -0
  116. package/dist/ui/languages.d.ts.map +1 -0
  117. package/dist/ui.cjs +122 -1
  118. package/dist/ui.cjs.map +1 -1
  119. package/dist/ui.d.ts +11 -10
  120. package/dist/ui.d.ts.map +1 -0
  121. package/dist/ui.js +1771 -4
  122. package/dist/ui.js.map +1 -1
  123. package/package.json +33 -5
  124. package/dist/RqmiiCloudAvatarPlayer-BnsY8xIR.js.map +0 -1
  125. package/dist/RqmiiCloudAvatarPlayer-lqCz2xlU.cjs +0 -2938
  126. package/dist/RqmiiCloudAvatarPlayer-lqCz2xlU.cjs.map +0 -1
@@ -1 +1 @@
1
- .pixel-streaming-container{position:relative;width:100%;height:100%;background-color:#000;overflow:hidden;margin:0;padding:0}.player-container{position:absolute;top:0;left:0;width:100%;height:100%;margin:0;padding:0;overflow:hidden}.pixel-streaming-container video,.player-container video,#videoElementParent,#videoElementParent video{width:100%!important;height:100%!important;object-fit:cover}.freezeframeBackground{background-color:#00000080}.loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:#000000b3;z-index:50}.loading-spinner{width:50px;height:50px;border:5px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{color:#fff;margin-top:20px;font-size:18px}.connection-overlay{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:#000c;z-index:50}.error-message{color:#f55;margin-bottom:20px;font-size:16px;text-align:center;max-width:80%}.connect-button{padding:12px 24px;background-color:#2196f3;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}.connect-button:hover{background-color:#0b7dda}.playButton{padding:12px 24px;background-color:#2196f3;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}.playButton:hover{background-color:#0b7dda}.playButtonContainer{background-color:#000000b3}@media(max-width:768px){.pixel-streaming-container{position:fixed;inset:0;height:100vh;height:100dvh;width:100vw;width:100dvw}.player-container{touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.pixel-streaming-container,.player-container{overscroll-behavior:none;-webkit-overflow-scrolling:touch}}
1
+ .pixel-streaming-container{position:relative;width:100%;height:100%;background-color:#000;overflow:hidden;margin:0;padding:0}.player-container{position:absolute;top:0;left:0;width:100%;height:100%;margin:0;padding:0;overflow:hidden}.pixel-streaming-container video,.player-container video,#videoElementParent,#videoElementParent video{width:100%!important;height:100%!important;object-fit:cover}.freezeframeBackground{background-color:#00000080}.loading-overlay{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:#000000b3;z-index:50}.loading-spinner{width:50px;height:50px;border:5px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-text{color:#fff;margin-top:20px;font-size:18px}.connection-overlay{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;background-color:#000c;z-index:50}.error-message{color:#f55;margin-bottom:20px;font-size:16px;text-align:center;max-width:80%}.connect-button{padding:12px 24px;background-color:#2196f3;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}.connect-button:hover{background-color:#0b7dda}.playButton{padding:12px 24px;background-color:#2196f3;color:#fff;border:none;border-radius:4px;font-size:16px;cursor:pointer;transition:background-color .3s}.playButton:hover{background-color:#0b7dda}.playButtonContainer{background-color:#000000b3}@media(max-width:768px){.pixel-streaming-container{position:fixed;inset:0;height:100vh;height:100dvh;width:100vw;width:100dvw}.player-container{touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.pixel-streaming-container,.player-container{overscroll-behavior:none;-webkit-overflow-scrolling:touch}}:root,.rqmii-chat-surface{--rqmii-bg: #1f1f1f;--rqmii-bg-soft: #2a2a2a;--rqmii-bg-hover: #3a3a3a;--rqmii-border: #3c3c3c;--rqmii-text: #fff;--rqmii-muted: #b4b4b4;--rqmii-primary: #0b5cff;--rqmii-action: #0b5cff;--rqmii-danger: #ef1717;--rqmii-font-latin: var( --font-montserrat, var(--font-family-base, "Montserrat", sans-serif) );--rqmii-font-arabic: var( --font-arabic, var(--font-family-arabic, "Arabic", sans-serif) );color:var(--rqmii-text);font-family:var(--rqmii-font-latin)}.rqmii-chat-surface *,.rqmii-chat-surface *:before,.rqmii-chat-surface *:after{box-sizing:border-box}.rqmii-chat-surface button,.rqmii-chat-surface textarea{font:inherit}.rqmii-chat-surface .rqmii-chat-font-latin{font-family:var(--rqmii-font-latin)}.rqmii-chat-surface .rqmii-chat-font-ar{font-family:var(--rqmii-font-arabic)}.rqmii-chat-open-button{border:0;padding:0;border-radius:999px;background:transparent;cursor:pointer;transition:opacity .16s ease,transform .16s ease}.rqmii-chat-open-button:hover{transform:translateY(-1px)}.rqmii-chat-open-button.is-fixed{position:fixed;right:32px;bottom:32px;z-index:50}.rqmii-agent-avatar{position:relative;display:grid;place-items:center;overflow:hidden;flex:none;border-radius:999px;background:#0b0b0b;box-shadow:inset 0 0 0 1px #ffffff24}.rqmii-agent-avatar.is-orb{background:transparent;box-shadow:none;overflow:hidden}.rqmii-agent-avatar.is-active{box-shadow:0 0 0 2px var(--rqmii-primary),inset 0 0 0 1px #ffffff24}.rqmii-agent-avatar img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;object-position:center center}.rqmii-agent-avatar-orb{position:absolute;inset:-10%;width:120%;height:120%;display:block}.rqmii-orb{width:100%;height:100%;display:block;border-radius:999px;overflow:hidden}.rqmii-agent-avatar--button{width:68px;height:68px;box-shadow:0 0 0 3px var(--rqmii-primary)}.rqmii-agent-avatar--header{width:42px;height:42px}.rqmii-agent-avatar--minimized{width:60px;height:60px}.rqmii-agent-avatar--hero{width:170px;height:170px}.rqmii-chat-panel{width:min(100vw - 24px,350px);min-height:566px;max-height:min(620px,calc(100vh - 32px));display:flex;flex-direction:column;border:1px solid var(--rqmii-border);border-radius:10px;background:var(--rqmii-bg);box-shadow:0 24px 64px #00000052;overflow:hidden}.rqmii-chat-surface:not(.is-preview) .rqmii-chat-panel{position:fixed;right:32px;bottom:32px;z-index:50}.rqmii-chat-panel--conversation,.rqmii-chat-panel--start,.rqmii-chat-panel--voice-start{height:min(566px,calc(100vh - 32px))}.rqmii-chat-panel--voice-call{width:min(100vw - 24px,350px);height:min(566px,calc(100vh - 32px));padding:18px;justify-content:space-between}.rqmii-chat-panel--error{min-height:120px;justify-content:center;align-items:center;gap:14px;padding:20px;text-align:center;color:var(--rqmii-muted);position:relative}.rqmii-error-close{position:absolute;top:12px;right:12px;background:none;border:none;color:var(--rqmii-muted);font-size:24px;cursor:pointer;padding:8px;line-height:1;z-index:1}.rqmii-error-close:hover{color:var(--rqmii-text)}.rqmii-chat-topbar,.rqmii-chat-header{display:flex;align-items:center;gap:8px;padding:16px}.rqmii-chat-topbar{justify-content:space-between}.rqmii-chat-topbar-actions{display:flex;align-items:center;gap:8px}.rqmii-chat-header-spacer{flex:1 1 0;min-width:0}.rqmii-chat-header-status{flex:0 0 112px;min-width:0;max-width:112px;height:42px;min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:0 10px;border:1px solid var(--rqmii-border);border-radius:999px;color:var(--rqmii-text);background:transparent;font-size:10px;line-height:1.2;text-align:center}.rqmii-chat-header-actions{flex:none;display:inline-flex;align-items:center;gap:5px}.rqmii-chat-header .rqmii-chat-circle-button{width:42px;height:42px}.rqmii-chat-header-status span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rqmii-chat-pill,.rqmii-chat-circle-button{border:0;color:var(--rqmii-text);background:var(--rqmii-bg-hover);cursor:pointer;transition:opacity .16s ease,background-color .16s ease,box-shadow .16s ease}.rqmii-chat-pill:hover,.rqmii-chat-circle-button:hover{opacity:.88}.rqmii-chat-pill{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px;border-radius:999px;font-size:15px}.rqmii-chat-circle-button{width:48px;height:48px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:999px}.rqmii-chat-circle-button.is-active{box-shadow:0 0 0 2px var(--rqmii-primary)}.rqmii-chat-circle-button.is-danger{background:var(--rqmii-danger)}.rqmii-chat-language{position:relative}.rqmii-chat-language-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:4;width:176px;max-height:240px;padding:6px;overflow-y:auto;border:1px solid var(--rqmii-border);border-radius:10px;background:#2a2a2a;scrollbar-width:thin;scrollbar-color:#707070 transparent}.rqmii-chat-language-item{width:100%;min-height:30px;padding:0 10px;border:0;border-radius:7px;background:transparent;color:var(--rqmii-text);text-align:left;cursor:pointer}.rqmii-chat-language-item+.rqmii-chat-language-item{margin-top:2px}.rqmii-chat-language-item:hover,.rqmii-chat-language-item.is-selected{background:var(--rqmii-bg-hover)}.rqmii-chat-start-body,.rqmii-chat-call-body{flex:1;min-height:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:20px;padding:44px 24px 12px}.rqmii-chat-call-body{padding-top:74px}.rqmii-chat-call-avatar-wrap{position:relative;margin-bottom:22px}.rqmii-chat-agent-name{font-size:14px;line-height:1.4;color:var(--rqmii-text)}.rqmii-chat-call-button{position:absolute;left:50%;bottom:-18px;width:50px;height:50px;display:grid;place-items:center;border:0;border-radius:999px;color:#fff;background:var(--rqmii-action);transform:translate(-50%);cursor:pointer;box-shadow:0 0 0 6px var(--rqmii-bg)}.rqmii-chat-call-button:disabled{cursor:not-allowed;color:#fff;background:var(--rqmii-action)}.rqmii-chat-spin{animation:rqmii-chat-spin .9s linear infinite}@keyframes rqmii-chat-spin{to{transform:rotate(360deg)}}.rqmii-chat-input{position:relative;flex:none;margin:0 16px;border:1px solid var(--rqmii-border);border-radius:16px;background:var(--rqmii-bg-soft);transition:border-color .16s ease}.rqmii-chat-input:focus-within{border-color:var(--rqmii-action)}.rqmii-chat-input textarea{width:100%;min-height:96px;max-height:168px;resize:none;display:block;padding:16px;border:0;outline:0;color:var(--rqmii-text);background:transparent;font-size:13px;line-height:1.5;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#707070 transparent}.rqmii-chat-input textarea::-webkit-scrollbar{width:6px}.rqmii-chat-input textarea::-webkit-scrollbar-track{background:transparent}.rqmii-chat-input textarea::-webkit-scrollbar-thumb{border-radius:999px;background:#707070}.rqmii-chat-input textarea[dir=rtl]{direction:rtl;text-align:right}.rqmii-chat-input textarea::placeholder{color:var(--rqmii-muted)}.rqmii-chat-input button{position:absolute;right:8px;bottom:8px;z-index:1;width:40px;height:40px;display:grid;place-items:center;border:0;border-radius:999px;color:#fff;background:var(--rqmii-action);cursor:pointer}.rqmii-chat-input button:disabled{cursor:not-allowed;opacity:.45}.rqmii-chat-footer{flex:none;padding:14px 16px 16px;color:var(--rqmii-muted);text-align:center;font-size:10px;line-height:1.35}.rqmii-chat-footer p{margin:0}.rqmii-chat-footer p+p{margin-top:2px}.rqmii-chat-messages{flex:1;min-height:0;padding:0 12px 12px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#707070 transparent}.rqmii-chat-messages::-webkit-scrollbar{width:6px}.rqmii-chat-messages::-webkit-scrollbar-track{background:transparent}.rqmii-chat-messages::-webkit-scrollbar-thumb{border-radius:999px;background:#707070}.rqmii-chat-message-row{display:flex;justify-content:flex-start;margin:0 0 16px}.rqmii-chat-message-row.is-user{justify-content:flex-end}.rqmii-chat-message{max-width:80%;padding:12px;border-radius:12px;color:var(--rqmii-text);background:#0a0a0a;font-size:13px;line-height:1.4;text-align:start}.rqmii-chat-message[dir=rtl]{direction:rtl}.rqmii-chat-message-row.is-user .rqmii-chat-message{color:#0a0a0a;background:#dfdfdf}.rqmii-chat-message-row.is-partial .rqmii-chat-message{opacity:.6;font-style:italic}.rqmii-chat-session-counter{margin:8px 0 14px;color:var(--rqmii-muted);text-align:center;font-size:14px;line-height:1;font-variant-numeric:tabular-nums}.rqmii-chat-call-status{height:34px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;color:var(--rqmii-muted);font-size:12px}.rqmii-chat-call-status .rqmii-chat-circle-button{justify-self:end;width:40px;height:40px}.rqmii-chat-live-dot{justify-self:end;width:8px;height:8px;border-radius:999px;background:#12c976}.rqmii-chat-live-dot.is-live{background:#12c976}.rqmii-chat-voice-frame{min-height:315px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:28px 18px}.rqmii-chat-status-pill{min-width:96px;min-height:34px;display:inline-flex;align-items:center;justify-content:center;padding:8px 16px;border:1px solid var(--rqmii-border);border-radius:999px;color:var(--rqmii-muted);text-align:center;font-size:12px}.rqmii-chat-status-pill.is-empty{visibility:hidden}.rqmii-chat-voice-actions{display:flex;align-items:center;gap:10px}.rqmii-chat-voice-actions .rqmii-chat-circle-button{width:44px;height:44px}.rqmii-chat-minimized{height:76px;display:inline-flex;align-items:center;gap:16px;padding:8px 16px 8px 8px;border-radius:999px;color:var(--rqmii-text);background:var(--rqmii-bg);box-shadow:0 24px 64px #00000052}.rqmii-chat-surface:not(.is-preview) .rqmii-chat-minimized{position:fixed;right:32px;bottom:32px;z-index:50}.rqmii-chat-minimized-time{color:var(--rqmii-muted);font-size:13px;font-variant-numeric:tabular-nums;white-space:nowrap}.rqmii-chat-minimized-actions{display:inline-flex;align-items:center;gap:8px}.rqmii-chat-minimized .rqmii-chat-circle-button{width:44px;height:44px}.rqmii-avatar-panel{width:min(100vw - 24px,760px);height:min(560px,calc(100vh - 32px));display:flex;overflow:hidden;border:1px solid var(--rqmii-border);border-radius:16px;background:var(--rqmii-bg)}.rqmii-chat-surface:not(.is-preview) .rqmii-avatar-panel{position:fixed;right:32px;bottom:32px;z-index:50}.rqmii-avatar-stream{position:relative;flex:1;min-width:0;background:#050505}.rqmii-avatar-overlay{position:absolute;inset:0;display:grid;place-items:center;background:#0000008c;color:var(--rqmii-muted)}.rqmii-avatar-controls{position:absolute;top:14px;left:14px;right:14px;display:flex;align-items:center;gap:8px}.rqmii-avatar-sidebar{width:300px;display:flex;flex-direction:column;border-left:1px solid var(--rqmii-border);padding-top:12px}.rqmii-chat-retry{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border:0;border-radius:999px;color:#fff;background:var(--rqmii-primary);cursor:pointer}@media(max-width:767px){.rqmii-chat-open-button.is-fixed,.rqmii-chat-surface:not(.is-preview) .rqmii-chat-panel,.rqmii-chat-surface:not(.is-preview) .rqmii-avatar-panel{right:12px;bottom:12px}.rqmii-chat-surface:not(.is-preview) .rqmii-chat-minimized{left:50%;right:auto;bottom:24px;transform:translate(-50%)}.rqmii-chat-surface:not(.is-preview) .rqmii-chat-panel,.rqmii-chat-surface:not(.is-preview) .rqmii-avatar-panel{width:calc(100vw - 24px);max-height:calc(100vh - 24px)}.rqmii-avatar-panel{flex-direction:column}.rqmii-avatar-sidebar{width:100%;height:45%;border-left:0;border-top:1px solid var(--rqmii-border)}}
@@ -0,0 +1,3 @@
1
+ import type { RqmiiAgentRoomProps } from '../types';
2
+ export declare function RqmiiAgentRoom({ children, wsUrl, restUrl, session, connect, reconnectOptions, enableAudio, pcmOptions, debug, withCredentials, onError, onInitialized, }: RqmiiAgentRoomProps): import("react/jsx-runtime").JSX.Element;
3
+ //# sourceMappingURL=RqmiiAgentRoom.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RqmiiAgentRoom.d.ts","sourceRoot":"","sources":["../../src/components/RqmiiAgentRoom.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,mBAAmB,EAAsC,MAAM,UAAU,CAAC;AA0ExF,wBAAgB,cAAc,CAAC,EAC7B,QAAQ,EACR,KAAK,EACL,OAAO,EACP,OAAO,EACP,OAAc,EACd,gBAAgB,EAChB,WAAkB,EAClB,UAAU,EACV,KAAa,EACb,eAAuB,EACvB,OAAO,EACP,aAAa,GACd,EAAE,mBAAmB,2CAqBrB"}
@@ -0,0 +1,3 @@
1
+ import type { RqmiiCloudAvatarPlayerProps } from '../types';
2
+ export declare function RqmiiCloudAvatarPlayer({ className, style, autoConnect, muted, onConnected, onDisconnected, onError, }: RqmiiCloudAvatarPlayerProps): import("react/jsx-runtime").JSX.Element | null;
3
+ //# sourceMappingURL=RqmiiCloudAvatarPlayer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RqmiiCloudAvatarPlayer.d.ts","sourceRoot":"","sources":["../../src/components/RqmiiCloudAvatarPlayer.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,UAAU,CAAC;AAE5D,wBAAgB,sBAAsB,CAAC,EACrC,SAAS,EACT,KAAK,EACL,WAAkB,EAClB,KAAa,EACb,WAAW,EACX,cAAc,EACd,OAAO,GACR,EAAE,2BAA2B,kDA4C7B"}
@@ -0,0 +1,19 @@
1
+ import { Component, type ErrorInfo, type ReactNode } from 'react';
2
+ interface RqmiiErrorBoundaryProps {
3
+ children: ReactNode;
4
+ fallback?: ReactNode | ((error: Error, reset: () => void) => ReactNode);
5
+ onError?: (error: Error, info: ErrorInfo) => void;
6
+ }
7
+ interface RqmiiErrorBoundaryState {
8
+ hasError: boolean;
9
+ error: Error | null;
10
+ }
11
+ export declare class RqmiiErrorBoundary extends Component<RqmiiErrorBoundaryProps, RqmiiErrorBoundaryState> {
12
+ constructor(props: RqmiiErrorBoundaryProps);
13
+ static getDerivedStateFromError(error: Error): RqmiiErrorBoundaryState;
14
+ componentDidCatch(error: Error, info: ErrorInfo): void;
15
+ reset: () => void;
16
+ render(): ReactNode;
17
+ }
18
+ export {};
19
+ //# sourceMappingURL=RqmiiErrorBoundary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RqmiiErrorBoundary.d.ts","sourceRoot":"","sources":["../../src/components/RqmiiErrorBoundary.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,SAAS,EAAE,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEzE,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,SAAS,CAAC;IACpB,QAAQ,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,IAAI,KAAK,SAAS,CAAC,CAAC;IACxE,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;CACnD;AAED,UAAU,uBAAuB;IAC/B,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;CACrB;AAED,qBAAa,kBAAmB,SAAQ,SAAS,CAAC,uBAAuB,EAAE,uBAAuB,CAAC;gBACrF,KAAK,EAAE,uBAAuB;IAK1C,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,uBAAuB;IAItE,iBAAiB,CAAC,KAAK,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS;IAI/C,KAAK,aAEH;IAEF,MAAM,IAAI,SAAS;CAqBpB"}
@@ -0,0 +1,5 @@
1
+ import './PixelStreamingPlayer.css';
2
+ import type { EpicPixelStreamingPlayerProps } from '../../types';
3
+ declare const EpicPixelStreamingPlayer: ({ signallingUrl, autoConnect, width, height, onConnecting, onLoading, onConnected, onDisconnected, onError, muted, }: EpicPixelStreamingPlayerProps) => import("react/jsx-runtime").JSX.Element;
4
+ export default EpicPixelStreamingPlayer;
5
+ //# sourceMappingURL=EpicPixelStreamingPlayer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EpicPixelStreamingPlayer.d.ts","sourceRoot":"","sources":["../../../src/components/pxs/EpicPixelStreamingPlayer.tsx"],"names":[],"mappings":"AAEA,OAAO,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,aAAa,CAAC;AAEjE,QAAA,MAAM,wBAAwB,GAAI,sHAW/B,6BAA6B,4CA4M/B,CAAC;AAEF,eAAe,wBAAwB,CAAC"}
@@ -0,0 +1,81 @@
1
+ export declare const AGENT_TYPES: {
2
+ readonly TEXT: "text";
3
+ readonly VOICE: "voice";
4
+ readonly TEXT_AND_VOICE: "text_and_voice";
5
+ readonly CLOUD_AVATAR: "cloud_avatar";
6
+ readonly DESKTOP_AVATAR: "desktop_avatar";
7
+ };
8
+ export declare const SOCKET_EVENTS: {
9
+ readonly CONNECT: "connect";
10
+ readonly DISCONNECT: "disconnect";
11
+ readonly CONNECT_ERROR: "connect_error";
12
+ readonly SESSION_READY: "session_ready";
13
+ readonly SESSION_JOINED: "session_joined";
14
+ readonly SESSION_TERMINATED: "session_terminated";
15
+ readonly USER_MESSAGE: "user_message";
16
+ readonly AUDIO_CHUNK: "audio_chunk";
17
+ readonly AUDIO_END: "audio_end";
18
+ readonly INTERRUPT: "interrupt";
19
+ readonly CHANGE_SESSION_LANGUAGE: "change_session_language";
20
+ readonly CLIENT_READY: "client_ready";
21
+ readonly HEARTBEAT: "heartbeat";
22
+ readonly HEARTBEAT_ACK: "heartbeat_ack";
23
+ readonly CLEAR_SESSION_HISTORY: "clear_session_history";
24
+ readonly TRANSCRIPT: "transcript";
25
+ readonly PARTIAL_TRANSCRIPT: "partial_transcript";
26
+ readonly AGENT_RESPONSE_CHUNK: "agent_response_chunk";
27
+ readonly AGENT_RESPONSE: "agent_response";
28
+ readonly AGENT_AUDIO_CHUNK: "agent_audio_chunk";
29
+ readonly AGENT_AUDIO_COMPLETE: "agent_audio_complete";
30
+ readonly AVATAR_SPEAKING: "avatar_speaking";
31
+ readonly AVATAR_SPEAKING_DONE: "avatar_speaking_done";
32
+ readonly INTERRUPTED: "interrupted";
33
+ readonly ERROR: "error";
34
+ readonly AUTH_ERROR: "auth_error";
35
+ readonly RECONNECT_CREDENTIAL: "reconnect_credential";
36
+ readonly RECONNECT_SUCCESS: "reconnect_success";
37
+ readonly RECONNECT_FAILED: "reconnect_failed";
38
+ readonly SESSION_EXPIRED: "session_expired";
39
+ readonly CREDITS_EXHAUSTED: "credits_exhausted";
40
+ readonly SESSION_STATE_CHANGED: "session:state_changed";
41
+ readonly AUDIO_PLAYBACK_COMPLETE: "audio:playback_complete";
42
+ };
43
+ export declare const CONNECTION_STATE: {
44
+ readonly IDLE: "idle";
45
+ readonly INITIALIZING: "initializing";
46
+ readonly CONNECTING: "connecting";
47
+ readonly CONNECTED: "connected";
48
+ readonly RECONNECTING: "reconnecting";
49
+ readonly FAILED: "failed";
50
+ readonly ENDED: "ended";
51
+ };
52
+ export declare const CLOUD_STREAM_STATE: {
53
+ readonly IDLE: "idle";
54
+ readonly CONNECTING: "connecting";
55
+ readonly LOADING: "loading";
56
+ readonly CONNECTED: "connected";
57
+ readonly DISCONNECTED: "disconnected";
58
+ readonly ERROR: "error";
59
+ };
60
+ export declare const SESSION_STATE: {
61
+ readonly IDLE: "idle";
62
+ readonly USER_SPEAKING: "user_speaking";
63
+ readonly AGENT_THINKING: "agent_thinking";
64
+ readonly AGENT_SPEAKING: "agent_speaking";
65
+ readonly TOOL_EXECUTING: "tool_executing";
66
+ readonly TERMINATING: "terminating";
67
+ readonly TERMINATED: "terminated";
68
+ };
69
+ export declare const DEFAULT_RECONNECT_OPTIONS: {
70
+ readonly enabled: true;
71
+ readonly maxAttempts: 8;
72
+ readonly initialDelayMs: 500;
73
+ readonly maxDelayMs: 5000;
74
+ readonly timeoutMs: 8000;
75
+ };
76
+ export declare const DEFAULT_PCM_OPTIONS: {
77
+ readonly encoding: "16bitInt";
78
+ readonly channels: 1;
79
+ readonly sampleRate: 16000;
80
+ };
81
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/core/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;;;;CAMd,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6ChB,CAAC;AAEX,eAAO,MAAM,gBAAgB;;;;;;;;CAQnB,CAAC;AAEX,eAAO,MAAM,kBAAkB;;;;;;;CAOrB,CAAC;AAEX,eAAO,MAAM,aAAa;;;;;;;;CAQhB,CAAC;AAEX,eAAO,MAAM,yBAAyB;;;;;;CAM5B,CAAC;AAEX,eAAO,MAAM,mBAAmB;;;;CAItB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { EventType, EventHandlerMap } from '../../types';
2
+ export declare class EventEmitter {
3
+ private listeners;
4
+ on<T extends EventType>(event: T, handler: EventHandlerMap[T]): () => void;
5
+ once<T extends EventType>(event: T, handler: EventHandlerMap[T]): () => void;
6
+ off<T extends EventType>(event: T, handler: EventHandlerMap[T]): void;
7
+ emit<T extends EventType>(event: T, payload?: Parameters<EventHandlerMap[T]>[0]): void;
8
+ removeAllListeners(): void;
9
+ }
10
+ //# sourceMappingURL=emitter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"emitter.d.ts","sourceRoot":"","sources":["../../../src/core/events/emitter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAI9D,qBAAa,YAAY;IACvB,OAAO,CAAC,SAAS,CAAmC;IAEpD,EAAE,CAAC,CAAC,SAAS,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI;IAQ1E,IAAI,CAAC,CAAC,SAAS,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI;IAQ5E,GAAG,CAAC,CAAC,SAAS,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,GAAG,IAAI;IAIrE,IAAI,CAAC,CAAC,SAAS,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,CAAC,EAAE,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI;IAYtF,kBAAkB,IAAI,IAAI;CAG3B"}
@@ -0,0 +1,24 @@
1
+ import { FUPCMPlayer } from 'pcm-stream-player';
2
+ import type { RqmiiPCMOptions } from '../../types';
3
+ interface AudioManagerOptions {
4
+ enableAudio: boolean;
5
+ pcmOptions?: RqmiiPCMOptions;
6
+ log: (...args: unknown[]) => void;
7
+ onPlaybackComplete: () => void;
8
+ }
9
+ export declare function createAudioManager({ enableAudio, pcmOptions, log, onPlaybackComplete }: AudioManagerOptions): {
10
+ ensurePcmPlayer: () => (FUPCMPlayer & {
11
+ _isDestroyed: () => boolean;
12
+ }) | null;
13
+ destroyPcmPlayer: () => void;
14
+ feedAudio: (audioData: Uint8Array) => void;
15
+ requestStop: () => void;
16
+ interruptPlayback: () => void;
17
+ pauseAudioPlayback: () => void;
18
+ resumeAudioPlayback: () => Promise<void>;
19
+ attachAudioElement: (element: HTMLAudioElement | null) => void;
20
+ getAudioElement: () => HTMLAudioElement | null;
21
+ isDestroyed: () => boolean;
22
+ };
23
+ export {};
24
+ //# sourceMappingURL=audio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audio.d.ts","sourceRoot":"","sources":["../../../src/core/managers/audio.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAEhD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,UAAU,mBAAmB;IAC3B,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAClC,kBAAkB,EAAE,MAAM,IAAI,CAAC;CAChC;AA8BD,wBAAgB,kBAAkB,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,EAAE,kBAAkB,EAAE,EAAE,mBAAmB;;sBAC5D,MAAM,OAAO;;4BAa9B,IAAI;2BAWH,UAAU,KAAG,IAAI;uBAWvB,IAAI;6BAmBE,IAAI;8BAIH,IAAI;+BAYG,OAAO,CAAC,IAAI,CAAC;kCAad,gBAAgB,GAAG,IAAI,KAAG,IAAI;2BAIvC,gBAAgB,GAAG,IAAI;uBAI3B,OAAO;EAiBhC"}
@@ -0,0 +1,13 @@
1
+ interface HeartbeatManagerOptions {
2
+ intervalMs: number;
3
+ log: (...args: unknown[]) => void;
4
+ }
5
+ export declare function createHeartbeatManager({ intervalMs, log }: HeartbeatManagerOptions): {
6
+ start: (socket: {
7
+ emit: (event: string, payload: unknown) => void;
8
+ }) => void;
9
+ stop: () => void;
10
+ isRunning: () => boolean;
11
+ };
12
+ export {};
13
+ //# sourceMappingURL=heartbeat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"heartbeat.d.ts","sourceRoot":"","sources":["../../../src/core/managers/heartbeat.ts"],"names":[],"mappings":"AAEA,UAAU,uBAAuB;IAC/B,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CACnC;AAED,wBAAgB,sBAAsB,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,EAAE,uBAAuB;oBAG1D;QAAE,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,KAAG,IAAI;gBAehE,IAAI;qBAQC,OAAO;EAK9B"}
@@ -0,0 +1,29 @@
1
+ import type { RqmiiReconnectOptions } from '../../types';
2
+ export interface ReconnectCredential {
3
+ sessionId: string;
4
+ reconnectToken: string;
5
+ role: string;
6
+ }
7
+ interface ReconnectManagerOptions {
8
+ log: (...args: unknown[]) => void;
9
+ reconnectOptions?: RqmiiReconnectOptions;
10
+ }
11
+ export declare function createReconnectionManager({ log, reconnectOptions }: ReconnectManagerOptions): {
12
+ storeCredential: (payload: unknown) => void;
13
+ getCredential: () => ReconnectCredential | null;
14
+ clearCredential: () => void;
15
+ tryReconnect: ({ connectSocket, onAttempt, onSuccess, onFailure, isAborted, }: {
16
+ connectSocket: (args: {
17
+ authPayload: Record<string, unknown>;
18
+ expectReconnectSuccess: boolean;
19
+ }) => Promise<unknown>;
20
+ onAttempt?: (attempt: number) => void;
21
+ onSuccess?: () => void;
22
+ onFailure?: (msg: string) => void;
23
+ isAborted?: () => boolean;
24
+ }) => Promise<void>;
25
+ abortReconnect: () => void;
26
+ isReconnecting: () => boolean;
27
+ };
28
+ export {};
29
+ //# sourceMappingURL=reconnect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reconnect.d.ts","sourceRoot":"","sources":["../../../src/core/managers/reconnect.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEzD,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,uBAAuB;IAC/B,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAClC,gBAAgB,CAAC,EAAE,qBAAqB,CAAC;CAC1C;AAED,wBAAgB,yBAAyB,CAAC,EAAE,GAAG,EAAE,gBAAgB,EAAE,EAAE,uBAAuB;+BAUxD,OAAO,KAAG,IAAI;yBAUtB,mBAAmB,GAAG,IAAI;2BAIxB,IAAI;mFAU7B;QACD,aAAa,EAAE,CAAC,IAAI,EAAE;YAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAAC,sBAAsB,EAAE,OAAO,CAAA;SAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;QACrH,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;QACtC,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;QACvB,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;QAClC,SAAS,CAAC,EAAE,MAAM,OAAO,CAAC;KAC3B,KAAG,OAAO,CAAC,IAAI,CAAC;0BA8CU,IAAI;0BAIJ,OAAO;EAYnC"}
@@ -0,0 +1,20 @@
1
+ interface SessionManagerOptions {
2
+ restUrl: string;
3
+ log: (...args: unknown[]) => void;
4
+ withCredentials: boolean;
5
+ }
6
+ export declare function detectClientTimezone(): string | undefined;
7
+ export declare function createSessionManager({ restUrl, log, withCredentials }: SessionManagerOptions): {
8
+ initializeSession: ({ apiKey, publicChatId, agentId, userId, language, }?: {
9
+ apiKey?: string;
10
+ publicChatId?: string;
11
+ agentId?: string;
12
+ userId?: string;
13
+ language?: string;
14
+ }) => Promise<Record<string, unknown>>;
15
+ joinDesktopSession: ({ uniqueId, }: {
16
+ uniqueId: string;
17
+ }) => Promise<Record<string, unknown>>;
18
+ };
19
+ export {};
20
+ //# sourceMappingURL=session.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../src/core/managers/session.ts"],"names":[],"mappings":"AAAA,UAAU,qBAAqB;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;IAClC,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,oBAAoB,IAAI,MAAM,GAAG,SAAS,CAOzD;AAmBD,wBAAgB,oBAAoB,CAAC,EAAE,OAAO,EAAE,GAAG,EAAE,eAAe,EAAE,EAAE,qBAAqB;+EAaxF;QACD,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,KAAQ,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;wCA+BtC;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,KAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;EAsB3D"}
@@ -0,0 +1,15 @@
1
+ import { Socket } from 'socket.io-client';
2
+ interface SocketManagerOptions {
3
+ wsUrl: string;
4
+ log: (...args: unknown[]) => void;
5
+ }
6
+ export declare function createSocketManager({ wsUrl, log }: SocketManagerOptions): {
7
+ connectSocketRaw: ({ authPayload, queryToken }: {
8
+ authPayload: Record<string, unknown>;
9
+ queryToken?: string | null;
10
+ }) => Socket;
11
+ cleanupSocket: () => void;
12
+ getSocket: () => Socket | null;
13
+ };
14
+ export {};
15
+ //# sourceMappingURL=socket.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"socket.d.ts","sourceRoot":"","sources":["../../../src/core/managers/socket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAM,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE9C,UAAU,oBAAoB;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CACnC;AAED,wBAAgB,mBAAmB,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE,oBAAoB;oDAGf;QAAE,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,KAAG,MAAM;yBAa1G,IAAI;qBAeR,MAAM,GAAG,IAAI;EAKpC"}
@@ -0,0 +1,4 @@
1
+ import type { RqmiiState } from '../../types';
2
+ import { type StateAction } from './types';
3
+ export declare function rqmiiReducer(state: RqmiiState, action: StateAction): RqmiiState;
4
+ //# sourceMappingURL=reducer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reducer.d.ts","sourceRoot":"","sources":["../../../src/core/state/reducer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,SAAS,CAAC;AAE1D,wBAAgB,YAAY,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,GAAG,UAAU,CAmE/E"}
@@ -0,0 +1,24 @@
1
+ import type { RqmiiState, SessionState } from '../../types';
2
+ export declare function deriveSessionBooleans(sessionState: SessionState): {
3
+ isSessionTerminated: boolean;
4
+ isSessionTerminating: boolean;
5
+ isAgentThinking: boolean;
6
+ isAgentSpeaking: boolean;
7
+ isToolExecuting: boolean;
8
+ };
9
+ export declare function selectSessionBooleans(state: RqmiiState): {
10
+ isSessionTerminated: boolean;
11
+ isSessionTerminating: boolean;
12
+ isAgentThinking: boolean;
13
+ isAgentSpeaking: boolean;
14
+ isToolExecuting: boolean;
15
+ };
16
+ export declare function selectIsConnected(state: RqmiiState): boolean;
17
+ export declare function selectIsSessionReady(state: RqmiiState): boolean;
18
+ export declare function selectMessages(state: RqmiiState): import("../..").RqmiiMessage[];
19
+ export declare function selectSession(state: RqmiiState): import("../..").RqmiiSessionInfo;
20
+ export declare function selectCloudStream(state: RqmiiState): {
21
+ state: import("../..").CloudStreamState;
22
+ error: string | null;
23
+ };
24
+ //# sourceMappingURL=selectors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"selectors.d.ts","sourceRoot":"","sources":["../../../src/core/state/selectors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG5D,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,YAAY;;;;;;EAQ/D;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,UAAU;;;;;;EAEtD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAE5D;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAE/D;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,UAAU,kCAE/C;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,UAAU,oCAE9C;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,UAAU;;;EAElD"}
@@ -0,0 +1,60 @@
1
+ import type { ConnectionState, SessionState, CloudStreamState, RqmiiSessionInfo, RqmiiMessage, TranscriptPayload, PartialTranscriptPayload, RqmiiState } from '../../types';
2
+ export declare const DEFAULT_STATE: RqmiiState;
3
+ export type StateAction = {
4
+ type: 'SET_CONNECTION_STATE';
5
+ payload: ConnectionState;
6
+ } | {
7
+ type: 'SET_ERROR';
8
+ payload: string | null;
9
+ } | {
10
+ type: 'SET_CLOUD_STREAM_STATE';
11
+ payload: {
12
+ state: CloudStreamState;
13
+ error: string | null;
14
+ };
15
+ } | {
16
+ type: 'SET_SESSION_STATE';
17
+ payload: SessionState;
18
+ } | {
19
+ type: 'UPDATE_SESSION';
20
+ payload: Partial<RqmiiSessionInfo>;
21
+ } | {
22
+ type: 'ADD_MESSAGE';
23
+ payload: RqmiiMessage;
24
+ } | {
25
+ type: 'SET_AUDIO_PLAYING';
26
+ payload: boolean;
27
+ } | {
28
+ type: 'SET_AVATAR_SPEAKING';
29
+ payload: boolean;
30
+ } | {
31
+ type: 'SET_CREDIT_EXHAUSTED';
32
+ payload: {
33
+ exhausted: boolean;
34
+ error: string | null;
35
+ };
36
+ } | {
37
+ type: 'SET_TRANSCRIPT';
38
+ payload: TranscriptPayload | null;
39
+ } | {
40
+ type: 'SET_PARTIAL_TRANSCRIPT';
41
+ payload: PartialTranscriptPayload | null;
42
+ } | {
43
+ type: 'SET_MESSAGES';
44
+ payload: RqmiiMessage[];
45
+ } | {
46
+ type: 'SET_RECONNECT_ATTEMPT';
47
+ payload: number;
48
+ } | {
49
+ type: 'SET_HEARTBEAT_ACK';
50
+ payload: string | null;
51
+ } | {
52
+ type: 'SET_SESSION_READY';
53
+ payload: boolean;
54
+ } | {
55
+ type: 'HARD_RESET';
56
+ } | {
57
+ type: 'REPLACE_STATE';
58
+ payload: RqmiiState;
59
+ };
60
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/core/state/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,gBAAgB,EAChB,YAAY,EACZ,iBAAiB,EACjB,wBAAwB,EACxB,UAAU,EACX,MAAM,aAAa,CAAC;AAGrB,eAAO,MAAM,aAAa,EAAE,UA0B3B,CAAC;AAEF,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,OAAO,EAAE,eAAe,CAAA;CAAE,GAC1D;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC7C;IAAE,IAAI,EAAE,wBAAwB,CAAC;IAAC,OAAO,EAAE;QAAE,KAAK,EAAE,gBAAgB,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAA;CAAE,GAC9F;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,GACpD;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAA;CAAE,GAC9D;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,OAAO,EAAE,YAAY,CAAA;CAAE,GAC9C;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,qBAAqB,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,OAAO,EAAE;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAA;CAAE,GACvF;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAA;CAAE,GAC7D;IAAE,IAAI,EAAE,wBAAwB,CAAC;IAAC,OAAO,EAAE,wBAAwB,GAAG,IAAI,CAAA;CAAE,GAC5E;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,OAAO,EAAE,YAAY,EAAE,CAAA;CAAE,GACjD;IAAE,IAAI,EAAE,uBAAuB,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAClD;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GACrD;IAAE,IAAI,EAAE,mBAAmB,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAC/C;IAAE,IAAI,EAAE,YAAY,CAAA;CAAE,GACtB;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,UAAU,CAAA;CAAE,CAAC"}
@@ -0,0 +1,11 @@
1
+ interface ChunkEntry {
2
+ id: string;
3
+ text: string;
4
+ }
5
+ export declare function createResponseChunkAccumulator(): {
6
+ addChunk(requestId: string | undefined, chunk: string | undefined): ChunkEntry;
7
+ consume(requestId: string | undefined, fallbackText?: string): ChunkEntry;
8
+ clear(): void;
9
+ };
10
+ export {};
11
+ //# sourceMappingURL=accumulator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accumulator.d.ts","sourceRoot":"","sources":["../../../src/core/utils/accumulator.ts"],"names":[],"mappings":"AAAA,UAAU,UAAU;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,8BAA8B;wBAItB,MAAM,GAAG,SAAS,SAAS,MAAM,GAAG,SAAS,GAAG,UAAU;uBAQ3D,MAAM,GAAG,SAAS,0BAAsB,UAAU;aAO5D,IAAI;EAIhB"}
@@ -0,0 +1,2 @@
1
+ export declare function sanitizeAgentType(value: unknown): string;
2
+ //# sourceMappingURL=agent-type.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-type.d.ts","sourceRoot":"","sources":["../../../src/core/utils/agent-type.ts"],"names":[],"mappings":"AAAA,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAExD"}
@@ -0,0 +1,2 @@
1
+ export declare function toUint8Array(audio: unknown): Uint8Array | null;
2
+ //# sourceMappingURL=bytes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bytes.d.ts","sourceRoot":"","sources":["../../../src/core/utils/bytes.ts"],"names":[],"mappings":"AAAA,wBAAgB,YAAY,CAAC,KAAK,EAAE,OAAO,GAAG,UAAU,GAAG,IAAI,CAqB9D"}
@@ -0,0 +1,2 @@
1
+ export declare const sleep: (ms: number) => Promise<void>;
2
+ //# sourceMappingURL=sleep.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sleep.d.ts","sourceRoot":"","sources":["../../../src/core/utils/sleep.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,KAAK,GAAI,IAAI,MAAM,KAAG,OAAO,CAAC,IAAI,CACI,CAAC"}
@@ -0,0 +1,12 @@
1
+ export { useRqmiiAgent } from './use-rqmii-agent';
2
+ export { useRqmiiConnection } from './use-rqmii-connection';
3
+ export { useRqmiiSession } from './use-rqmii-session';
4
+ export { useRqmiiMessages } from './use-rqmii-messages';
5
+ export { useRqmiiVoice } from './use-rqmii-voice';
6
+ export { useRqmiiAvatar } from './use-rqmii-avatar';
7
+ export { useRqmiiAudioElement } from './use-rqmii-audio-element';
8
+ export { useRqmiiPressToTalk } from './use-rqmii-press-to-talk';
9
+ export { useRqmiiVAD } from './use-rqmii-vad';
10
+ export { useRqmiiEvents } from './use-rqmii-events';
11
+ export { useRqmiiSDK, type RqmiiSDKHandle, type RqmiiEventListeners } from './use-rqmii-sdk';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,WAAW,EAAE,KAAK,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function useRqmiiAgent(): import("..").RqmiiAgentContextValue;
2
+ //# sourceMappingURL=use-rqmii-agent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-rqmii-agent.d.ts","sourceRoot":"","sources":["../../src/hooks/use-rqmii-agent.ts"],"names":[],"mappings":"AAEA,wBAAgB,aAAa,wCAE5B"}
@@ -0,0 +1,2 @@
1
+ export declare function useRqmiiAudioElement(audioRef: React.RefObject<HTMLAudioElement | null>): void;
2
+ //# sourceMappingURL=use-rqmii-audio-element.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-rqmii-audio-element.d.ts","sourceRoot":"","sources":["../../src/hooks/use-rqmii-audio-element.ts"],"names":[],"mappings":"AAGA,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,QAqBtF"}
@@ -0,0 +1,13 @@
1
+ export declare function useRqmiiAvatar(): {
2
+ streamingUrl: string | null;
3
+ isAvatarSpeaking: boolean;
4
+ speakingSource: "avatar_events";
5
+ isCloudAvatar: boolean;
6
+ isDesktopAvatar: boolean;
7
+ cloudStreamState: import("..").CloudStreamState;
8
+ cloudStreamError: string | null;
9
+ isCloudStreamConnected: boolean;
10
+ isCloudStreamLoading: boolean;
11
+ setCloudStreamState: (state: import("..").CloudStreamState, error?: unknown) => void;
12
+ };
13
+ //# sourceMappingURL=use-rqmii-avatar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-rqmii-avatar.d.ts","sourceRoot":"","sources":["../../src/hooks/use-rqmii-avatar.ts"],"names":[],"mappings":"AAGA,wBAAgB,cAAc;;;;;;;;;;;EAgB7B"}
@@ -0,0 +1,27 @@
1
+ export declare function useRqmiiConnection(): {
2
+ connectionState: import("..").ConnectionState;
3
+ isConnected: boolean;
4
+ isSessionReady: boolean;
5
+ error: string | null;
6
+ reconnectAttempt: number;
7
+ session: import("..").RqmiiSessionInfo;
8
+ creditExhausted: boolean;
9
+ creditError: string | null;
10
+ sessionState: import("..").SessionState;
11
+ isSessionTerminated: boolean;
12
+ isSessionTerminating: boolean;
13
+ isAgentThinking: boolean;
14
+ isAgentSpeaking: boolean;
15
+ isToolExecuting: boolean;
16
+ initializeSession: (args?: import("..").InitializeSessionArgs) => Promise<import("..").SessionData>;
17
+ joinDesktopSession: (args: import("..").JoinDesktopSessionArgs) => Promise<import("..").SessionData>;
18
+ disconnect: () => void;
19
+ terminateSession: () => Promise<{
20
+ success: boolean;
21
+ }>;
22
+ interrupt: () => boolean;
23
+ clearSessionHistory: () => boolean;
24
+ changeSessionLanguage: (language: string) => boolean;
25
+ signalClientReady: (payload?: Record<string, unknown>) => boolean;
26
+ };
27
+ //# sourceMappingURL=use-rqmii-connection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-rqmii-connection.d.ts","sourceRoot":"","sources":["../../src/hooks/use-rqmii-connection.ts"],"names":[],"mappings":"AAEA,wBAAgB,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;EA0BjC"}
@@ -0,0 +1,3 @@
1
+ import type { EventType, EventHandlerMap } from '../types';
2
+ export declare function useRqmiiEvents<T extends EventType>(event: T, handler: EventHandlerMap[T], deps?: unknown[]): void;
3
+ //# sourceMappingURL=use-rqmii-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-rqmii-events.d.ts","sourceRoot":"","sources":["../../src/hooks/use-rqmii-events.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAG3D,wBAAgB,cAAc,CAAC,CAAC,SAAS,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,IAAI,GAAE,OAAO,EAAO,QAM9G"}
@@ -0,0 +1,6 @@
1
+ export declare function useRqmiiMessages(): {
2
+ messages: import("..").RqmiiMessage[];
3
+ sendTextMessage: (text: string) => boolean;
4
+ clearMessages: () => void;
5
+ };
6
+ //# sourceMappingURL=use-rqmii-messages.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-rqmii-messages.d.ts","sourceRoot":"","sources":["../../src/hooks/use-rqmii-messages.ts"],"names":[],"mappings":"AAEA,wBAAgB,gBAAgB;;;;EAO/B"}
@@ -0,0 +1,3 @@
1
+ import type { UseRqmiiPressToTalkOptions, UseRqmiiPressToTalkReturn } from '../types';
2
+ export declare function useRqmiiPressToTalk(options?: UseRqmiiPressToTalkOptions): UseRqmiiPressToTalkReturn;
3
+ //# sourceMappingURL=use-rqmii-press-to-talk.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-rqmii-press-to-talk.d.ts","sourceRoot":"","sources":["../../src/hooks/use-rqmii-press-to-talk.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAqBtF,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,0BAA+B,GAAG,yBAAyB,CA8NvG"}