@realsee/live 0.1.1 → 0.2.0-alpha.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.
- package/README.md +51 -56
- package/docs/.nojekyll +1 -0
- package/docs/assets/custom.css +43 -0
- package/docs/assets/highlight.css +127 -0
- package/docs/assets/icons.css +1043 -0
- package/docs/assets/{images/icons.png → icons.png} +0 -0
- package/docs/assets/{images/icons@2x.png → icons@2x.png} +0 -0
- package/docs/assets/main.js +52 -0
- package/docs/assets/search.js +1 -0
- package/docs/assets/style.css +1388 -0
- package/docs/assets/{images/widgets.png → widgets.png} +0 -0
- package/docs/assets/{images/widgets@2x.png → widgets@2x.png} +0 -0
- package/docs/classes/RTCProtocol.RTCExample.html +62 -814
- package/docs/classes/RTCProtocol.VRWebViewRTC.html +60 -0
- package/docs/classes/shared_utils.Subscribe.html +55 -596
- package/docs/enums/RTCProtocol.RTCJoinedInfoCodeEnum.html +9 -0
- package/docs/enums/RTCProtocol.RTCType.html +1 -185
- package/docs/enums/live.BuiltinActionType.html +15 -325
- package/docs/enums/live.BuiltinEventType.html +7 -268
- package/docs/enums/live.Command.html +7 -346
- package/docs/enums/live.MemUserStatus.html +1 -307
- package/docs/enums/live.MicroStatus.html +3 -258
- package/docs/enums/live.UserStatus.html +9 -287
- package/docs/enums/live.WebSocketCloseError.html +19 -382
- package/docs/enums/live.WebSocketErrorType.html +1 -307
- package/docs/enums/live.WebSocketState.html +13 -325
- package/docs/index.html +327 -512
- package/docs/interfaces/RTCProtocol.GetVoiceSignReturnType.html +1 -0
- package/docs/interfaces/RTCProtocol.RTCJoinedInfo.html +1 -0
- package/docs/interfaces/RTCProtocol.RTCProtocol-1.html +60 -765
- package/docs/interfaces/RTCProtocol.VRWebViewRTCOptions.html +1 -0
- package/docs/interfaces/live.Live.html +119 -1302
- package/docs/interfaces/live.LiveOptions.html +22 -499
- package/docs/interfaces/live.LiveReact.html +52 -984
- package/docs/modules/RTCProtocol.html +17 -361
- package/docs/modules/live.html +103 -1219
- package/docs/modules/shared_utils.html +10 -248
- package/docs/modules.html +1 -125
- package/lib/RTC/BrowserRTC.d.ts +30 -0
- package/lib/RTC/BrowserRTC.js +163 -0
- package/lib/RTC/BrowserRTC.js.map +1 -0
- package/lib/RTC/VRWebViewRTC.d.ts +23 -0
- package/lib/RTC/VRWebViewRTC.js +124 -0
- package/lib/RTC/VRWebViewRTC.js.map +1 -0
- package/lib/RTC/index.d.ts +22 -0
- package/lib/{RTCProtocol → RTC}/index.js +3 -7
- package/lib/RTC/index.js.map +1 -0
- package/lib/createLive.d.ts +1 -1
- package/lib/createLive.js +53 -24
- package/lib/createLive.js.map +1 -1
- package/lib/createLiveReact.d.ts +12 -11
- package/lib/createLiveReact.js +9 -15
- package/lib/createLiveReact.js.map +1 -1
- package/lib/shared-utils/Subscribe.d.ts +1 -1
- package/lib/shared-utils/appendUri.js +1 -1
- package/lib/shared-utils/appendUri.js.map +1 -1
- package/lib/typings/EventType.d.ts +10 -0
- package/lib/typings/GetVoiceSign.d.ts +11 -0
- package/lib/typings/GetVoiceSign.js +3 -0
- package/lib/typings/GetVoiceSign.js.map +1 -0
- package/lib/typings/Live.d.ts +6 -4
- package/lib/typings/LiveMsg.d.ts +4 -0
- package/lib/typings/LiveMsg.js +5 -1
- package/lib/typings/LiveMsg.js.map +1 -1
- package/lib/typings/LiveOptions.d.ts +3 -7
- package/lib/typings/RTCEventType.d.ts +2 -14
- package/lib/typings/RTCEventType.js +0 -7
- package/lib/typings/RTCEventType.js.map +1 -1
- package/lib/typings/RTCJoinedInfo.d.ts +28 -0
- package/lib/typings/RTCJoinedInfo.js +23 -0
- package/lib/typings/RTCJoinedInfo.js.map +1 -0
- package/lib/{RTCProtocol/index.d.ts → typings/RTCProtocol.d.ts} +1 -19
- package/lib/typings/RTCProtocol.js +9 -0
- package/lib/typings/RTCProtocol.js.map +1 -0
- package/lib/typings/VRWebViewRTCOptions.d.ts +6 -0
- package/lib/typings/VRWebViewRTCOptions.js +3 -0
- package/lib/typings/VRWebViewRTCOptions.js.map +1 -0
- package/lib/typings/WebSocket.d.ts +2 -1
- package/lib/typings/WebSocket.js +1 -0
- package/lib/typings/WebSocket.js.map +1 -1
- package/package.json +8 -4
- package/umd/{RTCProtocol.046933a5.js → RTCProtocol.543610f0.js} +1 -1
- package/umd/createLive.1ecf7dd4.js +1 -0
- package/umd/createLiveReact.9075a8fd.js +1 -0
- package/docs/assets/css/main.css +0 -2787
- package/docs/assets/js/main.js +0 -248
- package/docs/assets/js/search.js +0 -1
- package/lib/RTCProtocol/index.js.map +0 -1
- package/umd/createLive.6845145e.js +0 -1
- package/umd/createLiveReact.406cf5a3.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createLiveReact.js","sourceRoot":"","sources":["../resources/createLiveReact.tsx"],"names":[],"mappings":";;;;AAAA,wDAA8B;AAE9B,2CAAyC;AAezC;;GAEG;AACH,SAAgB,eAAe,
|
|
1
|
+
{"version":3,"file":"createLiveReact.js","sourceRoot":"","sources":["../resources/createLiveReact.tsx"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@ function appendUri(uri, query) {
|
|
|
5
5
|
if (query === void 0) { query = {}; }
|
|
6
6
|
var hasQuery = uri.indexOf('?') !== -1;
|
|
7
7
|
var newQuery = Object.keys(query).reduce(function (accu, curr, idx) {
|
|
8
|
-
return ""
|
|
8
|
+
return "".concat(accu).concat((idx === 0 && !hasQuery) ? '?' : '&').concat(curr, "=").concat(query[curr]);
|
|
9
9
|
}, '');
|
|
10
10
|
return uri + newQuery;
|
|
11
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"appendUri.js","sourceRoot":"","sources":["../../resources/shared-utils/appendUri.ts"],"names":[],"mappings":";;;AAAA,SAAgB,SAAS,CAAC,GAAW,EAAE,KAA2C;IAA3C,sBAAA,EAAA,UAA2C;IAChF,IAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;IACxC,IAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CACxC,UAAC,IAAI,EAAE,IAAI,EAAE,GAAG;QACd,OAAA,
|
|
1
|
+
{"version":3,"file":"appendUri.js","sourceRoot":"","sources":["../../resources/shared-utils/appendUri.ts"],"names":[],"mappings":";;;AAAA,SAAgB,SAAS,CAAC,GAAW,EAAE,KAA2C;IAA3C,sBAAA,EAAA,UAA2C;IAChF,IAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAA;IACxC,IAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CACxC,UAAC,IAAI,EAAE,IAAI,EAAE,GAAG;QACd,OAAA,UAAG,IAAI,SAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,SAAG,IAAI,cAAI,KAAK,CAAC,IAAI,CAAC,CAAE;IAAtE,CAAsE,EACxE,EAAE,CAAC,CAAA;IAEL,OAAO,GAAG,GAAG,QAAQ,CAAA;AACvB,CAAC;AARD,8BAQC"}
|
|
@@ -36,6 +36,16 @@ declare type LiveEventType<Snapshot> = {
|
|
|
36
36
|
* @param builtinMsg
|
|
37
37
|
*/
|
|
38
38
|
'builtinEvent'(builtinMsg: BuiltinMsg): void;
|
|
39
|
+
/**
|
|
40
|
+
* 内置消息事件: 用户信息改变
|
|
41
|
+
* @param builtinMsg
|
|
42
|
+
*/
|
|
43
|
+
'userChange'(builtinMsg: BuiltinMsg): void;
|
|
44
|
+
/**
|
|
45
|
+
* 内置消息事件:房间信息改变
|
|
46
|
+
* @param builtinMsg
|
|
47
|
+
*/
|
|
48
|
+
'roomChange'(builtinMsg: BuiltinMsg): void;
|
|
39
49
|
/**
|
|
40
50
|
* 收到其他用户的广播消息。
|
|
41
51
|
* @param evtMsg
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface GetVoiceSignReturnType {
|
|
2
|
+
sdkAppId: number;
|
|
3
|
+
userId: string;
|
|
4
|
+
roomId: string | number;
|
|
5
|
+
userSig: string;
|
|
6
|
+
}
|
|
7
|
+
export declare type GetVoiceSign = ({ voiceId, userId, roomId }: {
|
|
8
|
+
voiceId: string;
|
|
9
|
+
userId: string;
|
|
10
|
+
roomId: string | number;
|
|
11
|
+
}) => Promise<GetVoiceSignReturnType>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GetVoiceSign.js","sourceRoot":"","sources":["../../resources/typings/GetVoiceSign.ts"],"names":[],"mappings":""}
|
package/lib/typings/Live.d.ts
CHANGED
|
@@ -2,14 +2,14 @@ import { UserInfo } from './UserInfo';
|
|
|
2
2
|
import { LiveOptions } from './LiveOptions';
|
|
3
3
|
import { EventType, KeyframeTypes } from './EventType';
|
|
4
4
|
import { WebSocketState } from './WebSocket';
|
|
5
|
-
import { RTCProtocol } from '../RTCProtocol';
|
|
5
|
+
import { RTCProtocol } from '../typings/RTCProtocol';
|
|
6
6
|
import { Subscribe } from '../shared-utils/Subscribe';
|
|
7
7
|
import { BuiltinActionType, BuiltinEventType, MicroStatus } from './LiveMsg';
|
|
8
8
|
/**
|
|
9
9
|
* Live 实例。
|
|
10
10
|
*/
|
|
11
|
-
export interface Live<Snapshot extends Record<string, any
|
|
12
|
-
get options(): LiveOptions
|
|
11
|
+
export interface Live<Snapshot extends Record<string, any>> extends Subscribe<EventType<Snapshot>> {
|
|
12
|
+
get options(): LiveOptions;
|
|
13
13
|
/**
|
|
14
14
|
* 更新本地用户信息
|
|
15
15
|
* @param userInfo
|
|
@@ -98,7 +98,9 @@ export interface Live<Snapshot extends Record<string, any>, TicketArgs extends R
|
|
|
98
98
|
* 限制/开启某个或某些用户同步帧数据
|
|
99
99
|
* @param sync true 开启同步;false 限制同步
|
|
100
100
|
* @param toUserIds 希望限制/开启同步能力的用户,为空时则面向所有用户。
|
|
101
|
+
* @deprecated 暂不支持
|
|
101
102
|
* @returns
|
|
103
|
+
*
|
|
102
104
|
*/
|
|
103
105
|
forbidSync(sync: boolean, toUserIds?: string[] | string): Promise<boolean>;
|
|
104
106
|
/**
|
|
@@ -117,4 +119,4 @@ export interface Live<Snapshot extends Record<string, any>, TicketArgs extends R
|
|
|
117
119
|
*/
|
|
118
120
|
revoke(): Promise<boolean>;
|
|
119
121
|
}
|
|
120
|
-
export declare type LiveActionReactCallback<Snapshot extends Record<string, any
|
|
122
|
+
export declare type LiveActionReactCallback<Snapshot extends Record<string, any>> = Pick<Live<Snapshot>, 'broadcast' | 'exit' | 'kick' | 'toggleMicro' | 'forbidMicro' | 'sendKeyframe' | 'getFramesByKey' | 'setSelfInfo' | 'updateStatus'>;
|
package/lib/typings/LiveMsg.d.ts
CHANGED
package/lib/typings/LiveMsg.js
CHANGED
|
@@ -48,6 +48,10 @@ var BuiltinActionType;
|
|
|
48
48
|
* 修改麦克风状态。
|
|
49
49
|
*/
|
|
50
50
|
BuiltinActionType["UserMicroStatus"] = "change_micro_status";
|
|
51
|
+
/**
|
|
52
|
+
* 同步当前用户状态:客户端麦克风状态已经修改成功,通知服务端
|
|
53
|
+
*/
|
|
54
|
+
BuiltinActionType["UserMicroStatusSync"] = "sync_micro_status";
|
|
51
55
|
/**
|
|
52
56
|
* 调整某些用户的权限。
|
|
53
57
|
*/
|
|
@@ -94,7 +98,7 @@ function parseLiveMsg(jsonTxt) {
|
|
|
94
98
|
};
|
|
95
99
|
var undefinedKeys = Object.keys(resMsg_1).filter(function (key) { return resMsg_1[key] === undefined; });
|
|
96
100
|
if (undefinedKeys.length > 0) {
|
|
97
|
-
console.warn("\u63A8\u9001\u6570\u636E\u683C\u5F0F\u5F02\u5E38\uFF1A"
|
|
101
|
+
console.warn("\u63A8\u9001\u6570\u636E\u683C\u5F0F\u5F02\u5E38\uFF1A".concat(undefinedKeys.join(' '), " \u503C\u4E0D\u5B58\u5728\uFF01"));
|
|
98
102
|
}
|
|
99
103
|
return resMsg_1;
|
|
100
104
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LiveMsg.js","sourceRoot":"","sources":["../../resources/typings/LiveMsg.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,IAAY,OAiBX;AAjBD,WAAY,OAAO;IACjB,eAAe;IACf,0CAA+B,CAAA;IAC/B,aAAa;IACb,iCAAsB,CAAA;IACtB,cAAc;IACd,+BAAoB,CAAA;IACpB,aAAa;IACb,iCAAsB,CAAA;IACtB,gBAAgB;IAChB,qCAA0B,CAAA;IAC1B,qBAAqB;IACrB,uCAA4B,CAAA;IAC5B,iBAAiB;IACjB,yCAA8B,CAAA;IAC9B,cAAc;IACd,wCAA6B,CAAA;AAC/B,CAAC,EAjBW,OAAO,GAAP,eAAO,KAAP,eAAO,QAiBlB;AA0BD;;GAEG;AACH,IAAY,gBASX;AATD,WAAY,gBAAgB;IAC1B;;OAEG;IACH,8CAA0B,CAAA;IAC1B;;OAEG;IACH,8CAA0B,CAAA;AAC5B,CAAC,EATW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAS3B;AAED;;GAEG;AACH,IAAY,
|
|
1
|
+
{"version":3,"file":"LiveMsg.js","sourceRoot":"","sources":["../../resources/typings/LiveMsg.ts"],"names":[],"mappings":";;;AAAA;;;;GAIG;AACH,IAAY,OAiBX;AAjBD,WAAY,OAAO;IACjB,eAAe;IACf,0CAA+B,CAAA;IAC/B,aAAa;IACb,iCAAsB,CAAA;IACtB,cAAc;IACd,+BAAoB,CAAA;IACpB,aAAa;IACb,iCAAsB,CAAA;IACtB,gBAAgB;IAChB,qCAA0B,CAAA;IAC1B,qBAAqB;IACrB,uCAA4B,CAAA;IAC5B,iBAAiB;IACjB,yCAA8B,CAAA;IAC9B,cAAc;IACd,wCAA6B,CAAA;AAC/B,CAAC,EAjBW,OAAO,GAAP,eAAO,KAAP,eAAO,QAiBlB;AA0BD;;GAEG;AACH,IAAY,gBASX;AATD,WAAY,gBAAgB;IAC1B;;OAEG;IACH,8CAA0B,CAAA;IAC1B;;OAEG;IACH,8CAA0B,CAAA;AAC5B,CAAC,EATW,gBAAgB,GAAhB,wBAAgB,KAAhB,wBAAgB,QAS3B;AAED;;GAEG;AACH,IAAY,iBAyBX;AAzBD,WAAY,iBAAiB;IAC3B;;OAEG;IACH,4DAAuC,CAAA;IACvC;;OAEG;IACH,8DAAyC,CAAA;IACzC;;OAEG;IACH,yDAAoC,CAAA;IACpC;;OAEG;IACH,iDAA4B,CAAA;IAC5B;;OAEG;IACH,6CAAwB,CAAA;IACxB;;OAEG;IACH,wCAAmB,CAAA;AACrB,CAAC,EAzBW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAyB5B;AAiBD;;GAEG;AACH,IAAY,WAGX;AAHD,WAAY,WAAW;IACrB,4BAAa,CAAA;IACb,8BAAe,CAAA;AACjB,CAAC,EAHW,WAAW,GAAX,mBAAW,KAAX,mBAAW,QAGtB;AAgBD;;;;GAIG;AACH,SAAgB,YAAY,CAAC,OAAe;IAC1C,IAAI;QACF,IAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;QAC/B,IAAM,QAAM,GAAwB;YAClC,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,OAAO,EAAE,GAAG,CAAC,OAAO;YACpB,QAAQ,EAAE,GAAG,CAAC,SAAS;YACvB,KAAK,EAAE,GAAG,CAAC,MAAM;YACjB,SAAS,EAAE,GAAG,CAAC,UAAU;YACzB,cAAc,EAAE,GAAG,CAAC,gBAAgB;YACpC,aAAa,EAAE,GAAG,CAAC,eAAe;YAClC,IAAI,EAAE,GAAG,CAAC,IAAI,IAAI,EAAE;SACrB,CAAA;QAED,IAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,QAAM,CAAC,CAAC,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,QAAM,CAAC,GAAG,CAAC,KAAK,SAAS,EAAzB,CAAyB,CAAC,CAAA;QACpF,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;YAC5B,OAAO,CAAC,IAAI,CAAC,gEAAY,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,oCAAQ,CAAC,CAAA;SAC1D;QACD,OAAO,QAAiB,CAAA;KACzB;IAAC,OAAO,KAAK,EAAE;QACd,yBAAyB;QACzB,OAAO,KAAK,CAAA;KACb;AAEH,CAAC;AAzBD,oCAyBC"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { RTCProtocol } from '../RTCProtocol';
|
|
1
|
+
import { RTCProtocol } from '../typings/RTCProtocol';
|
|
2
2
|
/**
|
|
3
3
|
* 依赖配置。
|
|
4
4
|
*/
|
|
5
|
-
export interface LiveOptions
|
|
5
|
+
export interface LiveOptions {
|
|
6
6
|
/**
|
|
7
7
|
* 创建`WebSocket`所依赖的URL。
|
|
8
8
|
*/
|
|
@@ -14,11 +14,7 @@ export interface LiveOptions<TicketArgs extends Record<string, any>> {
|
|
|
14
14
|
/**
|
|
15
15
|
* 获取建立 WebSocket 连接的依赖Tick
|
|
16
16
|
*/
|
|
17
|
-
getTicket
|
|
18
|
-
/**
|
|
19
|
-
* getTicket 依赖的参数
|
|
20
|
-
*/
|
|
21
|
-
ticketArgs?: TicketArgs;
|
|
17
|
+
getTicket?: () => Promise<string>;
|
|
22
18
|
/**
|
|
23
19
|
* 初始化自动连接,false 需手动执行 live.connect() 方法
|
|
24
20
|
*/
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { RTCJoinedInfo } from "./RTCJoinedInfo";
|
|
1
2
|
/**
|
|
2
3
|
* 用户的音量信息。
|
|
3
4
|
*/
|
|
@@ -13,15 +14,7 @@ export declare type RTCEventType = {
|
|
|
13
14
|
* 错误\异常
|
|
14
15
|
* @param error
|
|
15
16
|
*/
|
|
16
|
-
'error'(error: Error): void;
|
|
17
|
-
/**
|
|
18
|
-
* 即将执行初始化工作。
|
|
19
|
-
*/
|
|
20
|
-
'initWillStart'(): void;
|
|
21
|
-
/**
|
|
22
|
-
* 完成初始化
|
|
23
|
-
*/
|
|
24
|
-
'inited'(): void;
|
|
17
|
+
'error'(error: Error | RTCJoinedInfo): void;
|
|
25
18
|
/**
|
|
26
19
|
* 即将加入房间。
|
|
27
20
|
*/
|
|
@@ -40,8 +33,3 @@ export declare type RTCEventType = {
|
|
|
40
33
|
*/
|
|
41
34
|
'userVolumes'(userVolumes: UserVolume[]): void;
|
|
42
35
|
};
|
|
43
|
-
/**
|
|
44
|
-
* 错误枚举
|
|
45
|
-
*/
|
|
46
|
-
export declare enum RTCErrorType {
|
|
47
|
-
}
|
|
@@ -1,10 +1,3 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.RTCErrorType = void 0;
|
|
4
|
-
/**
|
|
5
|
-
* 错误枚举
|
|
6
|
-
*/
|
|
7
|
-
var RTCErrorType;
|
|
8
|
-
(function (RTCErrorType) {
|
|
9
|
-
})(RTCErrorType = exports.RTCErrorType || (exports.RTCErrorType = {}));
|
|
10
3
|
//# sourceMappingURL=RTCEventType.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RTCEventType.js","sourceRoot":"","sources":["../../resources/typings/RTCEventType.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"RTCEventType.js","sourceRoot":"","sources":["../../resources/typings/RTCEventType.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
export declare enum RTCJoinedInfoCodeEnum {
|
|
2
|
+
/**
|
|
3
|
+
* 成功
|
|
4
|
+
*/
|
|
5
|
+
Success = 0,
|
|
6
|
+
/**
|
|
7
|
+
* 失败
|
|
8
|
+
*/
|
|
9
|
+
Failure = 1,
|
|
10
|
+
/**
|
|
11
|
+
* 重复加入
|
|
12
|
+
*/
|
|
13
|
+
ReJoin = 2,
|
|
14
|
+
/**
|
|
15
|
+
* 无麦克风权限
|
|
16
|
+
*/
|
|
17
|
+
NoMicroPermission = 3
|
|
18
|
+
}
|
|
19
|
+
export interface RTCJoinedInfo {
|
|
20
|
+
code: RTCJoinedInfoCodeEnum;
|
|
21
|
+
message: string;
|
|
22
|
+
userId?: string;
|
|
23
|
+
roomId?: number;
|
|
24
|
+
errInfo?: {
|
|
25
|
+
trtcErrCode: number;
|
|
26
|
+
trtcErrMsg: string;
|
|
27
|
+
};
|
|
28
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RTCJoinedInfoCodeEnum = void 0;
|
|
4
|
+
var RTCJoinedInfoCodeEnum;
|
|
5
|
+
(function (RTCJoinedInfoCodeEnum) {
|
|
6
|
+
/**
|
|
7
|
+
* 成功
|
|
8
|
+
*/
|
|
9
|
+
RTCJoinedInfoCodeEnum[RTCJoinedInfoCodeEnum["Success"] = 0] = "Success";
|
|
10
|
+
/**
|
|
11
|
+
* 失败
|
|
12
|
+
*/
|
|
13
|
+
RTCJoinedInfoCodeEnum[RTCJoinedInfoCodeEnum["Failure"] = 1] = "Failure";
|
|
14
|
+
/**
|
|
15
|
+
* 重复加入
|
|
16
|
+
*/
|
|
17
|
+
RTCJoinedInfoCodeEnum[RTCJoinedInfoCodeEnum["ReJoin"] = 2] = "ReJoin";
|
|
18
|
+
/**
|
|
19
|
+
* 无麦克风权限
|
|
20
|
+
*/
|
|
21
|
+
RTCJoinedInfoCodeEnum[RTCJoinedInfoCodeEnum["NoMicroPermission"] = 3] = "NoMicroPermission";
|
|
22
|
+
})(RTCJoinedInfoCodeEnum = exports.RTCJoinedInfoCodeEnum || (exports.RTCJoinedInfoCodeEnum = {}));
|
|
23
|
+
//# sourceMappingURL=RTCJoinedInfo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RTCJoinedInfo.js","sourceRoot":"","sources":["../../resources/typings/RTCJoinedInfo.ts"],"names":[],"mappings":";;;AACA,IAAY,qBAiBX;AAjBD,WAAY,qBAAqB;IAC/B;;OAEG;IACH,uEAAW,CAAA;IACX;;OAEG;IACH,uEAAW,CAAA;IACX;;OAEG;IACH,qEAAU,CAAA;IACV;;OAEG;IACH,2FAAqB,CAAA;AACvB,CAAC,EAjBW,qBAAqB,GAArB,6BAAqB,KAArB,6BAAqB,QAiBhC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { RTCEventType } from '../typings/RTCEventType';
|
|
2
1
|
import { Subscribe } from '../shared-utils/Subscribe';
|
|
2
|
+
import { RTCEventType } from './RTCEventType';
|
|
3
3
|
export declare enum RTCType {
|
|
4
4
|
realsee = "realsee",
|
|
5
5
|
custom = "custom"
|
|
@@ -39,22 +39,4 @@ export interface RTCProtocol extends Subscribe<RTCEventType> {
|
|
|
39
39
|
*/
|
|
40
40
|
shock(): void;
|
|
41
41
|
}
|
|
42
|
-
/**
|
|
43
|
-
* RTCExample。
|
|
44
|
-
*/
|
|
45
|
-
export declare class RTCExample extends Subscribe<RTCEventType> implements RTCProtocol {
|
|
46
|
-
join(options: {
|
|
47
|
-
voiceId: string;
|
|
48
|
-
userId: string;
|
|
49
|
-
type: RTCType;
|
|
50
|
-
}): Promise<boolean>;
|
|
51
|
-
joined: boolean;
|
|
52
|
-
micro: boolean;
|
|
53
|
-
voiceId: string;
|
|
54
|
-
type: RTCType;
|
|
55
|
-
quit(): Promise<boolean>;
|
|
56
|
-
detectMicro(): Promise<boolean>;
|
|
57
|
-
toggleMicro(flag?: boolean): Promise<boolean>;
|
|
58
|
-
shock(): void;
|
|
59
|
-
}
|
|
60
42
|
export declare type RTCActionReactCallback = Pick<RTCProtocol, 'join' | 'quit' | 'shock' | 'toggleMicro' | 'detectMicro'>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RTCType = void 0;
|
|
4
|
+
var RTCType;
|
|
5
|
+
(function (RTCType) {
|
|
6
|
+
RTCType["realsee"] = "realsee";
|
|
7
|
+
RTCType["custom"] = "custom";
|
|
8
|
+
})(RTCType = exports.RTCType || (exports.RTCType = {}));
|
|
9
|
+
//# sourceMappingURL=RTCProtocol.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RTCProtocol.js","sourceRoot":"","sources":["../../resources/typings/RTCProtocol.ts"],"names":[],"mappings":";;;AAGA,IAAY,OAGX;AAHD,WAAY,OAAO;IACjB,8BAAmB,CAAA;IACnB,4BAAiB,CAAA;AACnB,CAAC,EAHW,OAAO,GAAP,eAAO,KAAP,eAAO,QAGlB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"VRWebViewRTCOptions.js","sourceRoot":"","sources":["../../resources/typings/VRWebViewRTCOptions.ts"],"names":[],"mappings":""}
|
|
@@ -35,7 +35,8 @@ export declare enum WebSocketErrorType {
|
|
|
35
35
|
MicroAuth = "MicroAuth",
|
|
36
36
|
DuplicateConnect = "DuplicateConnect",
|
|
37
37
|
IllegalURL = "IllegalURL",
|
|
38
|
-
Unknown = "Unknown"
|
|
38
|
+
Unknown = "Unknown",
|
|
39
|
+
IllegalArgs = "IllegalArgs"
|
|
39
40
|
}
|
|
40
41
|
/**
|
|
41
42
|
* WebSocket 异常关闭枚举:https://developer.mozilla.org/zh-CN/docs/Web/API/CloseEvent。
|
package/lib/typings/WebSocket.js
CHANGED
|
@@ -35,6 +35,7 @@ var WebSocketErrorType;
|
|
|
35
35
|
WebSocketErrorType["DuplicateConnect"] = "DuplicateConnect";
|
|
36
36
|
WebSocketErrorType["IllegalURL"] = "IllegalURL";
|
|
37
37
|
WebSocketErrorType["Unknown"] = "Unknown";
|
|
38
|
+
WebSocketErrorType["IllegalArgs"] = "IllegalArgs";
|
|
38
39
|
})(WebSocketErrorType = exports.WebSocketErrorType || (exports.WebSocketErrorType = {}));
|
|
39
40
|
/**
|
|
40
41
|
* WebSocket 异常关闭枚举:https://developer.mozilla.org/zh-CN/docs/Web/API/CloseEvent。
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebSocket.js","sourceRoot":"","sources":["../../resources/typings/WebSocket.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,cAyBX;AAzBD,WAAY,cAAc;IACxB;;OAEG;IACH,wEAAmB,CAAA;IAEnB;;OAEG;IACH,+DAAc,CAAA;IAEd;;OAEG;IACH,mDAAQ,CAAA;IAER;;OAEG;IACH,yDAAW,CAAA;IAEX;;OAEG;IACH,uDAAU,CAAA;AACZ,CAAC,EAzBW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAyBzB;AASD,IAAY,
|
|
1
|
+
{"version":3,"file":"WebSocket.js","sourceRoot":"","sources":["../../resources/typings/WebSocket.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,IAAY,cAyBX;AAzBD,WAAY,cAAc;IACxB;;OAEG;IACH,wEAAmB,CAAA;IAEnB;;OAEG;IACH,+DAAc,CAAA;IAEd;;OAEG;IACH,mDAAQ,CAAA;IAER;;OAEG;IACH,yDAAW,CAAA;IAEX;;OAEG;IACH,uDAAU,CAAA;AACZ,CAAC,EAzBW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAyBzB;AASD,IAAY,kBAQX;AARD,WAAY,kBAAkB;IAC5B,qCAAe,CAAA;IACf,qCAAe,CAAA;IACf,6CAAuB,CAAA;IACvB,2DAAqC,CAAA;IACrC,+CAAyB,CAAA;IACzB,yCAAmB,CAAA;IACnB,iDAA2B,CAAA;AAC7B,CAAC,EARW,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAQ7B;AAED;;GAEG;AACH,IAAY,mBAsCX;AAtCD,WAAY,mBAAmB;IAC7B;;OAEG;IACH,oDAA6B,CAAA;IAE7B;;OAEG;IACH,wDAAiC,CAAA;IAEjC;;OAEG;IACH,qDAA8B,CAAA;IAE9B;;OAEG;IACH,kDAA2B,CAAA;IAE3B;;OAEG;IACH,oDAA6B,CAAA;IAC7B;;OAEG;IACH,oDAA6B,CAAA;IAC7B;;OAEG;IACH,mDAA4B,CAAA;IAC5B;;OAEG;IACH,8CAAuB,CAAA;AAEzB,CAAC,EAtCW,mBAAmB,GAAnB,2BAAmB,KAAnB,2BAAmB,QAsC9B;AAGD,SAAgB,aAAa,CAAC,IAAY;IACxC,QAAQ,IAAI,EAAE;QACZ,KAAK,IAAI,CAAC,CAAC;YACT,OAAO,mBAAmB,CAAC,QAAQ,CAAA;SACpC;QACD,KAAK,IAAI,CAAC,CAAC;YACT,OAAO,mBAAmB,CAAC,QAAQ,CAAA;SACpC;QACD,KAAK,IAAI,CAAC,CAAC;YACT,OAAO,mBAAmB,CAAC,QAAQ,CAAA;SACpC;QACD,KAAK,IAAI,CAAC,CAAC;YACT,OAAO,mBAAmB,CAAC,QAAQ,CAAA;SACpC;QACD,KAAK,IAAI,CAAC,CAAC;YACT,OAAO,mBAAmB,CAAC,QAAQ,CAAA;SACpC;QACD,KAAK,IAAI,CAAC,CAAC;YACT,OAAO,mBAAmB,CAAC,QAAQ,CAAA;SACpC;QACD,KAAK,IAAI,CAAC,CAAC;YACT,OAAO,mBAAmB,CAAC,QAAQ,CAAA;SACpC;QACD;YACE,MAAK;KACR;IAED,OAAO,mBAAmB,CAAC,WAAW,CAAA;AACxC,CAAC;AA5BD,sCA4BC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@realsee/live",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0-alpha.1",
|
|
4
4
|
"description": "如视 Live SDK:基于如视 WebSocket 长链双工通信能力的前端封装,借助此 SDK 您可以快捷地实现具备同屏连线、实时语音的 VR 带看业务能力。",
|
|
5
5
|
"main": "lib/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -19,16 +19,18 @@
|
|
|
19
19
|
"@babel/core": "^7.15.0",
|
|
20
20
|
"@babel/preset-react": "^7.14.5",
|
|
21
21
|
"@babel/preset-typescript": "^7.15.0",
|
|
22
|
+
"@realsee/jsbridge-x": "^0.1.1",
|
|
22
23
|
"@types/react": "^17.0.20",
|
|
23
24
|
"@types/react-dom": "^17.0.9",
|
|
25
|
+
"@types/trtc-js-sdk": "^4.8.2",
|
|
24
26
|
"babel-loader": "^8.2.2",
|
|
25
27
|
"del": "^6.0.0",
|
|
26
28
|
"html-webpack-plugin": "^5.3.2",
|
|
27
29
|
"react": "^17.0.2",
|
|
28
30
|
"react-dom": "^17.0.2",
|
|
29
31
|
"react-json-view": "^1.21.3",
|
|
30
|
-
"typedoc": "^0.
|
|
31
|
-
"typescript": "^4.4
|
|
32
|
+
"typedoc": "^0.22.9",
|
|
33
|
+
"typescript": "^4.5.4",
|
|
32
34
|
"webpack": "^5.52.0",
|
|
33
35
|
"webpack-cli": "^4.8.0",
|
|
34
36
|
"webpack-dev-server": "^4.2.1",
|
|
@@ -37,6 +39,8 @@
|
|
|
37
39
|
"author": "BEIKE REALSEE TECHNOLOGY (HK) LIMITED",
|
|
38
40
|
"license": "SEE LICENSE IN TERMS.txt",
|
|
39
41
|
"peerDependencies": {
|
|
42
|
+
"trtc-js-sdk": "^4.11.8",
|
|
40
43
|
"tslib": "^2.3.1"
|
|
41
|
-
}
|
|
44
|
+
},
|
|
45
|
+
"dependencies": {}
|
|
42
46
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.LiveSDK=t():e.LiveSDK=t()}(self,(function(){return(()=>{"use strict";var e={508:(e,t,o)=>{o.d(t,{x:()=>i});const r=Symbol("$$LIVE_EVENT$$");function n(e){return e[r]||(e[r]={}),e[r]}class i{hasListener(e){const t=n(this);return t&&t[e]&&t[e].length>0}on(e,t,o){const r=n(this);return r[e]||(r[e]=[]),r[e].push([t,o||!1]),()=>this.off(e,t)}once(e,t){return this.on(e,t,!0)}off(e,t){if(void 0===e)return void(this[r]||delete this[r]);const o=n(this);if(o[e]||(o[e]=[]),void 0===t)return void(o[e].length=0);let i=0;for(;i<o[e].length&&o[e][i][0]!==t;i++);i<o[e].length&&o[e].splice(i,1)}emit(e,...t){let o=!1;const r=n(this)[e]||[];for(let n of r.slice()){const[r,i=!1]=n,s=r(...t);i&&this.off(e,r),!1===s&&(o=!0)}return o}}let s;s||(s={})}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,o),i.exports}o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{o.r(r),o.d(r,{
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.LiveSDK=t():e.LiveSDK=t()}(self,(function(){return(()=>{"use strict";var e={508:(e,t,o)=>{o.d(t,{x:()=>i});const r=Symbol("$$LIVE_EVENT$$");function n(e){return e[r]||(e[r]={}),e[r]}class i{hasListener(e){const t=n(this);return t&&t[e]&&t[e].length>0}on(e,t,o){const r=n(this);return r[e]||(r[e]=[]),r[e].push([t,o||!1]),()=>this.off(e,t)}once(e,t){return this.on(e,t,!0)}off(e,t){if(void 0===e)return void(this[r]||delete this[r]);const o=n(this);if(o[e]||(o[e]=[]),void 0===t)return void(o[e].length=0);let i=0;for(;i<o[e].length&&o[e][i][0]!==t;i++);i<o[e].length&&o[e].splice(i,1)}emit(e,...t){let o=!1;const r=n(this)[e]||[];for(let n of r.slice()){const[r,i=!1]=n,s=r(...t);i&&this.off(e,r),!1===s&&(o=!0)}return o}}let s;s||(s={})}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,o),i.exports}o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{o.r(r),o.d(r,{RTCExample:()=>n});var e=o(508);let t;!function(e){e.realsee="realsee",e.custom="custom"}(t||(t={}));class n extends e.x{join(e){throw new Error("Method not implemented.")}joined=!1;micro=!1;voiceId="";type=t.realsee;async quit(){return!0}async detectMicro(){return!0}async toggleMicro(e){return!0}shock(){}}})(),r})()}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.LiveSDK=t():e.LiveSDK=t()}(self,(function(){return(()=>{"use strict";var e={900:(e,t,r)=>{r.d(t,{RTCExample:()=>o});var n=r(508);let s;!function(e){e.realsee="realsee",e.custom="custom"}(s||(s={}));class o extends n.x{join(e){throw new Error("Method not implemented.")}joined=!1;micro=!1;voiceId="";type=s.realsee;async quit(){return!0}async detectMicro(){return!0}async toggleMicro(e){return!0}shock(){}}},508:(e,t,r)=>{r.d(t,{x:()=>o});const n=Symbol("$$LIVE_EVENT$$");function s(e){return e[n]||(e[n]={}),e[n]}class o{hasListener(e){const t=s(this);return t&&t[e]&&t[e].length>0}on(e,t,r){const n=s(this);return n[e]||(n[e]=[]),n[e].push([t,r||!1]),()=>this.off(e,t)}once(e,t){return this.on(e,t,!0)}off(e,t){if(void 0===e)return void(this[n]||delete this[n]);const r=s(this);if(r[e]||(r[e]=[]),void 0===t)return void(r[e].length=0);let o=0;for(;o<r[e].length&&r[e][o][0]!==t;o++);o<r[e].length&&r[e].splice(o,1)}emit(e,...t){let r=!1;const n=s(this)[e]||[];for(let s of n.slice()){const[n,o=!1]=s,i=n(...t);o&&this.off(e,n),!1===i&&(r=!0)}return r}}let i;i||(i={})}},t={};function r(n){var s=t[n];if(void 0!==s)return s.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,r),o.exports}r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{function e(){return(65536*(1+Math.random())|0).toString(16).substring(1)}function t(e){return"[object Object]"===Object.prototype.toString.call(e)}function s(e,t){return e===t||typeof e==typeof t&&!(!Number.isNaN(e)||!Number.isNaN(t))}function o(e,r){return!!s(e,r)||(t(e)&&t(r)?function(e,t){const r=Object.getOwnPropertyNames(e),n=Object.getOwnPropertyNames(t);if(r.length!==n.length)return!1;for(let n=0,s=r.length;n<s;n++){const s=r[n];if(!o(e[s],t[s]))return!1}return!0}(e,r):!(!Array.isArray(e)||!Array.isArray(r))&&function(e,t){if(e.length!==t.length)return!1;for(let r=0,n=e.length;r<n;r++)if(!o(e[r],t[r]))return!1;return!0}(e,r))}function i(e,r,n={deep:!1}){return n.deep?o(e,r):function(e,r){return!!s(e,r)||(t(e)&&t(r)?function(e,t){const r=Object.getOwnPropertyNames(e),n=Object.getOwnPropertyNames(t);if(r.length!==n.length)return!1;for(let n=0,o=r.length;n<o;n++){const o=r[n];if(!s(e[o],t[o]))return!1}return!0}(e,r):!(!Array.isArray(e)||!Array.isArray(r))&&function(e,t){if(e.length!==t.length)return!1;for(let r=0,n=e.length;r<n;r++)if(!s(e[r],t[r]))return!1;return!0}(e,r))}(e,r)}r.r(n),r.d(n,{createLive:()=>E});var a=r(508);let c,u,h,d,f,l,y;!function(e){e[e.NOTINITIALIZED=-1]="NOTINITIALIZED",e[e.CONNECTING=0]="CONNECTING",e[e.OPEN=1]="OPEN",e[e.CLOSING=2]="CLOSING",e[e.CLOSED=3]="CLOSED"}(c||(c={})),function(e){e.Error="Error",e.Close="Close",e.MicroAuth="MicroAuth",e.DuplicateConnect="DuplicateConnect",e.IllegalURL="IllegalURL",e.Unknown="Unknown",e.IllegalArgs="IllegalArgs"}(u||(u={})),function(e){e.Err_1001="CLOSE_GOING_AWAY",e.Err_1002="CLOSE_PROTOCOL_ERROR",e.Err_1003="CLOSE_UNSUPPORTED",e.Err_1006="CLOSE_ABNORMAL",e.Err_1007="Unsupported Data",e.Err_1008="Policy Violation",e.Err_1009="CLOSE_TOO_LARGE",e.Err_unknown="unknown"}(h||(h={})),function(e){e.SelfUserInfo="SELF_USER_INFO",e.RoomInfo="ROOM_INFO",e.RTCInfo="RTC_INFO",e.UserList="USER_LIST",e.BuiltinMsg="BUILTIN_MSG",e.CustomEvent="CUSTOM_EVENT",e.KeyframeSync="KEYFRAME_SYNC",e.UserKickOut="USER_KICK_OUT"}(d||(d={})),function(e){e.UserChange="user_change",e.RoomChange="room_change"}(f||(f={})),function(e){e.UserMicroStatus="change_micro_status",e.UserMicroStatusSync="sync_micro_status",e.UserPermission="change_permission",e.UserStatus="change_status",e.UserInfo="change_info",e.RoomClose="close"}(l||(l={})),function(e){e.OPEN="OPEN",e.CLOSE="CLOSE"}(y||(y={}));var g=r(900);class m{readyState=c.NOTINITIALIZED;canSync=!0;connecting=!1;keyframes={};constructor(e){this.options=Object.assign({autoConnect:!0,healthCheck:3e3},e)}checkReadyState=e=>{do{if(!this.webSocket){this.readyState!==c.NOTINITIALIZED&&(this.readyState=c.NOTINITIALIZED,e.emit("ws.readyStateUpdate",this.readyState));break}const t=this.webSocket.readyState;t!==this.readyState&&(this.readyState=t,e.emit("ws.readyStateUpdate",this.readyState))}while(0);return this.readyState};dispose=()=>{console.log("dispose"),this.disposeWebSocket(),this.connecting=!1,this.healthCheckId&&(clearInterval(this.healthCheckId),this.healthCheckId=void 0)};disposeWebSocket=()=>{this.webSocket&&(this.onEvtOpnListener&&(this.webSocket.removeEventListener("open",this.onEvtOpnListener),this.onEvtOpnListener=void 0),this.onEvtMsgListener&&(this.webSocket.removeEventListener("message",this.onEvtMsgListener),this.onEvtMsgListener=void 0),this.onEvtErrListener&&(this.webSocket.removeEventListener("error",this.onEvtErrListener),this.onEvtErrListener=void 0),this.onEvtCLEListener&&(this.webSocket.removeEventListener("close",this.onEvtCLEListener),this.onEvtCLEListener=void 0),this.webSocket.close(),this.webSocket=void 0)};handleMessage(e,t){const{command:r,data:n,frontRequestId:s,code:o,message:a}=e;if("SUCCESS"!==o)return t.emit("error",e);switch(r){case d.SelfUserInfo:{const e=n;if(i(this.selfUserInfo,e,{deep:!0}))return;this.selfUserInfo=e,t.emit("selfInfoUpdate",this.selfUserInfo,s);break}case d.RoomInfo:{const e=n;this.roomInfo=Object.assign({},e),t.emit("readyKeyframeSync",e.last_frame||{});break}case d.RTCInfo:{const{voice_id:e,type:r}=n;if(t.$RTC.joined)break;t.$RTC.join({voiceId:e,userId:this.selfUserInfo?.id||"",roomId:this.roomInfo?.info.room_code,type:r}),t.updateStatus(f.UserChange,l.UserMicroStatus,{status:y.OPEN});break}case d.UserList:{const e=n;this.userList=e,t.emit("userListUpdate",this.userList,s);break}case d.CustomEvent:{const e=n;t.emit("broadcast",e,s);break}case d.KeyframeSync:{const e=n,r=Object.keys(e).reduce(((r,n)=>{if(i(e[n],this.keyframes[n],{deep:!0}))return r;const o=[e[n],this.keyframes[n],s],a=n;return t.keyframes.emit(a,...o),this.keyframes[n]=e[n],r[n]=e[n],r}),{});t.emit("keyframes",r,s);break}case d.BuiltinMsg:{const e=n;t.emit("builtinEvent",e),e.event_type===f.UserChange&&t.emit("userChange",e),e.event_type===f.RoomChange&&t.emit("roomChange",e),e.event_type===f.UserChange&&e.action===l.UserMicroStatus&&t.toggleMicro(e.data.status===y.OPEN),e.event_type===f.RoomChange&&e.action===l.RoomClose&&(this.options.rtc?.quit(),this.disposeWebSocket());break}case d.UserKickOut:t.emit("kickOut")}}sendMessage(e){return this.webSocket?e?void this.webSocket.send(JSON.stringify(e)):console.warn("WebSocket messages is empty!"):console.warn("WebSocket has not yet been initialized!")}}function E(t){const r=new m(t),n=(t,r={},n)=>((n=n?Array.isArray(n)?n:[n]:[])&&(r.to_user_ids=n),{command:t,front_request_id:(e()+e()+"-"+e()+"-4"+e().substr(0,3)+"-"+e()+"-"+e()+e()+e()).toLowerCase(),data:r});class s extends a.x{get options(){return Object.freeze(Object.assign({},r.options))}get readyState(){return r.checkReadyState(this),r.readyState}get url(){return r.webSocket?.url||""}get selfInfo(){return r.selfUserInfo}get userList(){return r.userList||[]}get snapshot(){return r.keyframes||{}}get $RTC(){return r.options.rtc}keyframes=new a.x;constructor(){super(),t.rtc||(r.options.rtc=new g.RTCExample),r.options.url&&r.options.getTicket&&this.connect();const e=(e=>{if(!e)return 0;if(!0===e)return 3e3;const t=Number(e);return t>0?t:3e3})(r.options.healthCheck);e&&(r.healthCheckId=setInterval((()=>r.checkReadyState(this)),e))}async setSelfInfo(e){if(this.readyState!==c.OPEN)return new Error("The connection is not open and ready to communicate.");try{return await this.updateStatus(f.UserChange,l.UserInfo,e)}catch(e){return e}}getFramesByKey(e){return r.keyframes[e]}sendKeyframe(e,t){if(this.readyState!==c.OPEN)return new Error("The connection is not open and ready to communicate.");r.keyframes[e]=t;const s=n(d.KeyframeSync,this.snapshot);return r.sendMessage(s),!0}broadcast(e,t,s){return this.readyState!==c.OPEN?new Error("The connection is not open and ready to communicate."):new Promise(((o,i)=>{const a=n(d.CustomEvent,e,t),c=a.front_request_id;r.sendMessage(a);const u=s?setTimeout((()=>{i(new Error("RESPONSE TIMEOUT")),this.off("broadcast",h)}),s):void 0,h=(e,t)=>{t===c&&(this.off("broadcast",h),o(e),u&&clearInterval(u))};this.on("broadcast",h)}))}async updateStatus(e,t,s,o){if(this.readyState!==c.OPEN)return!1;const i=Object.assign({event_type:e,action:t},{data:s}),a=n(d.BuiltinMsg,i,o);return r.sendMessage(a),!0}async toggleMicro(e){return!!this.selfInfo?.permission?.control_own_micro&&(await this.$RTC.toggleMicro(e),await this.updateStatus(f.UserChange,l.UserMicroStatus,{status:e?y.OPEN:y.CLOSE},[]))}async forbidMicro(e,t){return!(r.options.canForbidUserMicro&&!r.options.canForbidUserMicro(t))&&!!this.selfInfo?.permission?.control_other_micro&&await this.updateStatus(f.UserChange,l.UserMicroStatus,{status:e},t)}async forbidSync(e,t){return!(r.options.canForbidUserSync&&!r.options.canForbidUserSync(t))&&!!this.selfInfo?.permission?.control_other_sync&&await this.updateStatus(f.UserChange,l.UserPermission,{sync_frame:e},t)}async kick(e){return!(r.options.canForbidUserKick&&!r.options.canForbidUserKick(e))&&!!this.selfInfo?.permission?.change_other_status&&await this.updateStatus(f.UserChange,l.UserStatus,{status:"KICK_OUT"},e)}async exit(){return await this.$RTC.quit(),await this.updateStatus(f.RoomChange,l.RoomClose,{})}async connect(e={}){if(!await this.$RTC.detectMicro()){const e=new Error("系统监测麦克风未授权~");return this.emit("ws.error",{type:u.MicroAuth,error:e}),e}if(r.connecting){const e=new Error("WebSocket 正在连接中,请勿重复连接 ...");return this.emit("ws.error",{type:u.DuplicateConnect,error:e}),e}const{force:t}=e;if(!t&&(this.readyState===c.CONNECTING||this.readyState===c.OPEN))return!0;if(e.url&&(r.options.url=e.url),e.getTicket&&(r.options.getTicket=e.getTicket),!r.options.url||!r.options.url.startsWith("ws")){const e=new Error(`WebSocket URL 未配置或格式不合法:"${r.options.url}"`);return this.emit("ws.error",{type:u.IllegalURL,error:e}),e}if(!r.options.getTicket){const e=new Error("getTicket() 未配置!");return this.emit("ws.error",{type:u.IllegalArgs,error:e}),e}r.connecting=!0,r.disposeWebSocket(),this.emit("ws.beforeConnect");const n=t||e.url||!this.url?function(e,t={}){const r=-1!==e.indexOf("?");return e+Object.keys(t).reduce(((e,n,s)=>`${e}${0!==s||r?"&":"?"}${n}=${t[n]}`),"")}(r.options.url,{ticket:await r.options.getTicket(),force:Number(!!t)}):this.url;return r.webSocket=new WebSocket(n),r.onEvtOpnListener=()=>{r.checkReadyState(this),this.emit("ws.afterConnect")},r.onEvtMsgListener=e=>{r.checkReadyState(this);try{const t=function(e){try{const t=JSON.parse(e),r={code:t.code,message:t.message,command:t.command,roomCode:t.room_code,appID:t.app_id,requestId:t.request_id,frontRequestId:t.front_request_id,triggerUserID:t.trigger_user_id,data:t.data||{}},n=Object.keys(r).filter((e=>void 0===r[e]));return n.length>0&&console.warn(`推送数据格式异常:${n.join(" ")} 值不存在!`),r}catch(e){return!1}}(e.data);if(!1===t)return;r.handleMessage(t,this)}catch(t){this.emit("ws.error",{type:u.Unknown,error:t,target:e})}},r.onEvtErrListener=e=>{o.emit("ws.error",{type:u.Error,target:e}),r.checkReadyState(this)},r.onEvtCLEListener=e=>{r.checkReadyState(this);const t=Number(e.code);if(1e3===t)return;const n=function(e){switch(e){case 1001:return h.Err_1001;case 1002:return h.Err_1002;case 1003:return h.Err_1003;case 1006:return h.Err_1006;case 1007:return h.Err_1007;case 1008:return h.Err_1008;case 1009:return h.Err_1009}return h.Err_unknown}(t);o.emit("ws.error",{target:e,type:u.Close,closeError:n})},r.webSocket.addEventListener("open",r.onEvtOpnListener),r.webSocket.addEventListener("message",r.onEvtMsgListener),r.webSocket.addEventListener("error",r.onEvtErrListener),r.webSocket.addEventListener("close",r.onEvtCLEListener),await new Promise(((e,t)=>{const n=()=>{e(!0),r.connecting=!1,this.off("ws.error",s)},s=e=>{t(e.error?e.error:new Error("WebSocket connection failed!")),r.connecting=!1,this.off("ws.afterConnect",n)};this.once("ws.afterConnect",n),this.once("ws.error",s)}))}async revoke(){return!0}}const o=new s;return t.__debug__&&(Object.assign(o,{__controller__:r}),Object.assign(window,{$live:o})),o}})(),n})()}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.LiveSDK=t():e.LiveSDK=t()}(self,(function(){return(()=>{var e={206:e=>{if(!("React"in window))throw new Error('"React" is not available. Please include "react" in your HTML.');e.exports=window.React},900:(e,t,r)=>{"use strict";r.d(t,{RTCExample:()=>o});var n=r(508);let s;!function(e){e.realsee="realsee",e.custom="custom"}(s||(s={}));class o extends n.x{join(e){throw new Error("Method not implemented.")}joined=!1;micro=!1;voiceId="";type=s.realsee;async quit(){return!0}async detectMicro(){return!0}async toggleMicro(e){return!0}shock(){}}},431:(e,t,r)=>{"use strict";function n(){return(65536*(1+Math.random())|0).toString(16).substring(1)}function s(e){return"[object Object]"===Object.prototype.toString.call(e)}function o(e,t){return e===t||typeof e==typeof t&&!(!Number.isNaN(e)||!Number.isNaN(t))}function i(e,t){return!!o(e,t)||(s(e)&&s(t)?function(e,t){const r=Object.getOwnPropertyNames(e),n=Object.getOwnPropertyNames(t);if(r.length!==n.length)return!1;for(let n=0,s=r.length;n<s;n++){const s=r[n];if(!i(e[s],t[s]))return!1}return!0}(e,t):!(!Array.isArray(e)||!Array.isArray(t))&&function(e,t){if(e.length!==t.length)return!1;for(let r=0,n=e.length;r<n;r++)if(!i(e[r],t[r]))return!1;return!0}(e,t))}function a(e,t,r={deep:!1}){return r.deep?i(e,t):function(e,t){return!!o(e,t)||(s(e)&&s(t)?function(e,t){const r=Object.getOwnPropertyNames(e),n=Object.getOwnPropertyNames(t);if(r.length!==n.length)return!1;for(let n=0,s=r.length;n<s;n++){const s=r[n];if(!o(e[s],t[s]))return!1}return!0}(e,t):!(!Array.isArray(e)||!Array.isArray(t))&&function(e,t){if(e.length!==t.length)return!1;for(let r=0,n=e.length;r<n;r++)if(!o(e[r],t[r]))return!1;return!0}(e,t))}(e,t)}r.d(t,{createLive:()=>g});var c=r(508);let u,f,l,d,h,y,m;!function(e){e[e.NOTINITIALIZED=-1]="NOTINITIALIZED",e[e.CONNECTING=0]="CONNECTING",e[e.OPEN=1]="OPEN",e[e.CLOSING=2]="CLOSING",e[e.CLOSED=3]="CLOSED"}(u||(u={})),function(e){e.Error="Error",e.Close="Close",e.MicroAuth="MicroAuth",e.DuplicateConnect="DuplicateConnect",e.IllegalURL="IllegalURL",e.Unknown="Unknown",e.IllegalArgs="IllegalArgs"}(f||(f={})),function(e){e.Err_1001="CLOSE_GOING_AWAY",e.Err_1002="CLOSE_PROTOCOL_ERROR",e.Err_1003="CLOSE_UNSUPPORTED",e.Err_1006="CLOSE_ABNORMAL",e.Err_1007="Unsupported Data",e.Err_1008="Policy Violation",e.Err_1009="CLOSE_TOO_LARGE",e.Err_unknown="unknown"}(l||(l={})),function(e){e.SelfUserInfo="SELF_USER_INFO",e.RoomInfo="ROOM_INFO",e.RTCInfo="RTC_INFO",e.UserList="USER_LIST",e.BuiltinMsg="BUILTIN_MSG",e.CustomEvent="CUSTOM_EVENT",e.KeyframeSync="KEYFRAME_SYNC",e.UserKickOut="USER_KICK_OUT"}(d||(d={})),function(e){e.UserChange="user_change",e.RoomChange="room_change"}(h||(h={})),function(e){e.UserMicroStatus="change_micro_status",e.UserMicroStatusSync="sync_micro_status",e.UserPermission="change_permission",e.UserStatus="change_status",e.UserInfo="change_info",e.RoomClose="close"}(y||(y={})),function(e){e.OPEN="OPEN",e.CLOSE="CLOSE"}(m||(m={}));var S=r(900);class E{readyState=u.NOTINITIALIZED;canSync=!0;connecting=!1;keyframes={};constructor(e){this.options=Object.assign({autoConnect:!0,healthCheck:3e3},e)}checkReadyState=e=>{do{if(!this.webSocket){this.readyState!==u.NOTINITIALIZED&&(this.readyState=u.NOTINITIALIZED,e.emit("ws.readyStateUpdate",this.readyState));break}const t=this.webSocket.readyState;t!==this.readyState&&(this.readyState=t,e.emit("ws.readyStateUpdate",this.readyState))}while(0);return this.readyState};dispose=()=>{console.log("dispose"),this.disposeWebSocket(),this.connecting=!1,this.healthCheckId&&(clearInterval(this.healthCheckId),this.healthCheckId=void 0)};disposeWebSocket=()=>{this.webSocket&&(this.onEvtOpnListener&&(this.webSocket.removeEventListener("open",this.onEvtOpnListener),this.onEvtOpnListener=void 0),this.onEvtMsgListener&&(this.webSocket.removeEventListener("message",this.onEvtMsgListener),this.onEvtMsgListener=void 0),this.onEvtErrListener&&(this.webSocket.removeEventListener("error",this.onEvtErrListener),this.onEvtErrListener=void 0),this.onEvtCLEListener&&(this.webSocket.removeEventListener("close",this.onEvtCLEListener),this.onEvtCLEListener=void 0),this.webSocket.close(),this.webSocket=void 0)};handleMessage(e,t){const{command:r,data:n,frontRequestId:s,code:o,message:i}=e;if("SUCCESS"!==o)return t.emit("error",e);switch(r){case d.SelfUserInfo:{const e=n;if(a(this.selfUserInfo,e,{deep:!0}))return;this.selfUserInfo=e,t.emit("selfInfoUpdate",this.selfUserInfo,s);break}case d.RoomInfo:{const e=n;this.roomInfo=Object.assign({},e),t.emit("readyKeyframeSync",e.last_frame||{});break}case d.RTCInfo:{const{voice_id:e,type:r}=n;if(t.$RTC.joined)break;t.$RTC.join({voiceId:e,userId:this.selfUserInfo?.id||"",roomId:this.roomInfo?.info.room_code,type:r}),t.updateStatus(h.UserChange,y.UserMicroStatus,{status:m.OPEN});break}case d.UserList:{const e=n;this.userList=e,t.emit("userListUpdate",this.userList,s);break}case d.CustomEvent:{const e=n;t.emit("broadcast",e,s);break}case d.KeyframeSync:{const e=n,r=Object.keys(e).reduce(((r,n)=>{if(a(e[n],this.keyframes[n],{deep:!0}))return r;const o=[e[n],this.keyframes[n],s],i=n;return t.keyframes.emit(i,...o),this.keyframes[n]=e[n],r[n]=e[n],r}),{});t.emit("keyframes",r,s);break}case d.BuiltinMsg:{const e=n;t.emit("builtinEvent",e),e.event_type===h.UserChange&&t.emit("userChange",e),e.event_type===h.RoomChange&&t.emit("roomChange",e),e.event_type===h.UserChange&&e.action===y.UserMicroStatus&&t.toggleMicro(e.data.status===m.OPEN),e.event_type===h.RoomChange&&e.action===y.RoomClose&&(this.options.rtc?.quit(),this.disposeWebSocket());break}case d.UserKickOut:t.emit("kickOut")}}sendMessage(e){return this.webSocket?e?void this.webSocket.send(JSON.stringify(e)):console.warn("WebSocket messages is empty!"):console.warn("WebSocket has not yet been initialized!")}}function g(e){const t=new E(e),r=(e,t={},r)=>((r=r?Array.isArray(r)?r:[r]:[])&&(t.to_user_ids=r),{command:e,front_request_id:(n()+n()+"-"+n()+"-4"+n().substr(0,3)+"-"+n()+"-"+n()+n()+n()).toLowerCase(),data:t});class s extends c.x{get options(){return Object.freeze(Object.assign({},t.options))}get readyState(){return t.checkReadyState(this),t.readyState}get url(){return t.webSocket?.url||""}get selfInfo(){return t.selfUserInfo}get userList(){return t.userList||[]}get snapshot(){return t.keyframes||{}}get $RTC(){return t.options.rtc}keyframes=new c.x;constructor(){super(),e.rtc||(t.options.rtc=new S.RTCExample),t.options.url&&t.options.getTicket&&this.connect();const r=(e=>{if(!e)return 0;if(!0===e)return 3e3;const t=Number(e);return t>0?t:3e3})(t.options.healthCheck);r&&(t.healthCheckId=setInterval((()=>t.checkReadyState(this)),r))}async setSelfInfo(e){if(this.readyState!==u.OPEN)return new Error("The connection is not open and ready to communicate.");try{return await this.updateStatus(h.UserChange,y.UserInfo,e)}catch(e){return e}}getFramesByKey(e){return t.keyframes[e]}sendKeyframe(e,n){if(this.readyState!==u.OPEN)return new Error("The connection is not open and ready to communicate.");t.keyframes[e]=n;const s=r(d.KeyframeSync,this.snapshot);return t.sendMessage(s),!0}broadcast(e,n,s){return this.readyState!==u.OPEN?new Error("The connection is not open and ready to communicate."):new Promise(((o,i)=>{const a=r(d.CustomEvent,e,n),c=a.front_request_id;t.sendMessage(a);const u=s?setTimeout((()=>{i(new Error("RESPONSE TIMEOUT")),this.off("broadcast",f)}),s):void 0,f=(e,t)=>{t===c&&(this.off("broadcast",f),o(e),u&&clearInterval(u))};this.on("broadcast",f)}))}async updateStatus(e,n,s,o){if(this.readyState!==u.OPEN)return!1;const i=Object.assign({event_type:e,action:n},{data:s}),a=r(d.BuiltinMsg,i,o);return t.sendMessage(a),!0}async toggleMicro(e){return!!this.selfInfo?.permission?.control_own_micro&&(await this.$RTC.toggleMicro(e),await this.updateStatus(h.UserChange,y.UserMicroStatus,{status:e?m.OPEN:m.CLOSE},[]))}async forbidMicro(e,r){return!(t.options.canForbidUserMicro&&!t.options.canForbidUserMicro(r))&&!!this.selfInfo?.permission?.control_other_micro&&await this.updateStatus(h.UserChange,y.UserMicroStatus,{status:e},r)}async forbidSync(e,r){return!(t.options.canForbidUserSync&&!t.options.canForbidUserSync(r))&&!!this.selfInfo?.permission?.control_other_sync&&await this.updateStatus(h.UserChange,y.UserPermission,{sync_frame:e},r)}async kick(e){return!(t.options.canForbidUserKick&&!t.options.canForbidUserKick(e))&&!!this.selfInfo?.permission?.change_other_status&&await this.updateStatus(h.UserChange,y.UserStatus,{status:"KICK_OUT"},e)}async exit(){return await this.$RTC.quit(),await this.updateStatus(h.RoomChange,y.RoomClose,{})}async connect(e={}){if(!await this.$RTC.detectMicro()){const e=new Error("系统监测麦克风未授权~");return this.emit("ws.error",{type:f.MicroAuth,error:e}),e}if(t.connecting){const e=new Error("WebSocket 正在连接中,请勿重复连接 ...");return this.emit("ws.error",{type:f.DuplicateConnect,error:e}),e}const{force:r}=e;if(!r&&(this.readyState===u.CONNECTING||this.readyState===u.OPEN))return!0;if(e.url&&(t.options.url=e.url),e.getTicket&&(t.options.getTicket=e.getTicket),!t.options.url||!t.options.url.startsWith("ws")){const e=new Error(`WebSocket URL 未配置或格式不合法:"${t.options.url}"`);return this.emit("ws.error",{type:f.IllegalURL,error:e}),e}if(!t.options.getTicket){const e=new Error("getTicket() 未配置!");return this.emit("ws.error",{type:f.IllegalArgs,error:e}),e}t.connecting=!0,t.disposeWebSocket(),this.emit("ws.beforeConnect");const n=r||e.url||!this.url?function(e,t={}){const r=-1!==e.indexOf("?");return e+Object.keys(t).reduce(((e,n,s)=>`${e}${0!==s||r?"&":"?"}${n}=${t[n]}`),"")}(t.options.url,{ticket:await t.options.getTicket(),force:Number(!!r)}):this.url;return t.webSocket=new WebSocket(n),t.onEvtOpnListener=()=>{t.checkReadyState(this),this.emit("ws.afterConnect")},t.onEvtMsgListener=e=>{t.checkReadyState(this);try{const r=function(e){try{const t=JSON.parse(e),r={code:t.code,message:t.message,command:t.command,roomCode:t.room_code,appID:t.app_id,requestId:t.request_id,frontRequestId:t.front_request_id,triggerUserID:t.trigger_user_id,data:t.data||{}},n=Object.keys(r).filter((e=>void 0===r[e]));return n.length>0&&console.warn(`推送数据格式异常:${n.join(" ")} 值不存在!`),r}catch(e){return!1}}(e.data);if(!1===r)return;t.handleMessage(r,this)}catch(t){this.emit("ws.error",{type:f.Unknown,error:t,target:e})}},t.onEvtErrListener=e=>{o.emit("ws.error",{type:f.Error,target:e}),t.checkReadyState(this)},t.onEvtCLEListener=e=>{t.checkReadyState(this);const r=Number(e.code);if(1e3===r)return;const n=function(e){switch(e){case 1001:return l.Err_1001;case 1002:return l.Err_1002;case 1003:return l.Err_1003;case 1006:return l.Err_1006;case 1007:return l.Err_1007;case 1008:return l.Err_1008;case 1009:return l.Err_1009}return l.Err_unknown}(r);o.emit("ws.error",{target:e,type:f.Close,closeError:n})},t.webSocket.addEventListener("open",t.onEvtOpnListener),t.webSocket.addEventListener("message",t.onEvtMsgListener),t.webSocket.addEventListener("error",t.onEvtErrListener),t.webSocket.addEventListener("close",t.onEvtCLEListener),await new Promise(((e,r)=>{const n=()=>{e(!0),t.connecting=!1,this.off("ws.error",s)},s=e=>{r(e.error?e.error:new Error("WebSocket connection failed!")),t.connecting=!1,this.off("ws.afterConnect",n)};this.once("ws.afterConnect",n),this.once("ws.error",s)}))}async revoke(){return!0}}const o=new s;return e.__debug__&&(Object.assign(o,{__controller__:t}),Object.assign(window,{$live:o})),o}},508:(e,t,r)=>{"use strict";r.d(t,{x:()=>o});const n=Symbol("$$LIVE_EVENT$$");function s(e){return e[n]||(e[n]={}),e[n]}class o{hasListener(e){const t=s(this);return t&&t[e]&&t[e].length>0}on(e,t,r){const n=s(this);return n[e]||(n[e]=[]),n[e].push([t,r||!1]),()=>this.off(e,t)}once(e,t){return this.on(e,t,!0)}off(e,t){if(void 0===e)return void(this[n]||delete this[n]);const r=s(this);if(r[e]||(r[e]=[]),void 0===t)return void(r[e].length=0);let o=0;for(;o<r[e].length&&r[e][o][0]!==t;o++);o<r[e].length&&r[e].splice(o,1)}emit(e,...t){let r=!1;const n=s(this)[e]||[];for(let s of n.slice()){const[n,o=!1]=s,i=n(...t);o&&this.off(e,n),!1===i&&(r=!0)}return r}}let i;i||(i={})}},t={};function r(n){var s=t[n];if(void 0!==s)return s.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,r),o.exports}r.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return r.d(t,{a:t}),t},r.d=(e,t)=>{for(var n in t)r.o(t,n)&&!r.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},r.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var n={};return(()=>{"use strict";r.r(n),r.d(n,{createLiveReact:()=>s});var e=r(206),t=r(431);function s(r){const n=e.createContext(null),s=(0,t.createLive)(r);function o(){const t=e.useContext(n);if(!t)throw new Error("LiveProvider never found.");return t}return{live:s,LiveProvider:function(t){return e.createElement(n.Provider,{value:t.live||s},t.children)},unsafe__useLiveInstance:function(){return o()},unsafe__useRTCInstance:function(){return o().$RTC},useCurrentWebSocketUrl:function(){const t=o(),[r,n]=e.useState(void 0);return e.useEffect((()=>{const e=()=>n(t.url);return t.on("ws.beforeConnect",e),()=>t.off("ws.beforeConnect",e)}),[t]),r},useConnect:function(){const e=o();return async t=>await e.connect(t)},useKeyframe:function(t){const r=o(),[n,s]=e.useState(r.getFramesByKey(t));return e.useEffect((()=>{const e=t,n=e=>s(e);return r.keyframes.on(e,n),()=>r.keyframes.off(e,n)}),[r]),[n,e.useCallback((e=>r.sendKeyframe(t,e)),[r])]},useKeyframeUpdateCallback:function(t,r,n){const s=o(),i=n?[s,t].concat(n):[s,t],a=()=>s.keyframes.off(t,r);return e.useEffect((()=>(s.keyframes.on(t,r),a)),i),a},useLiveAction:function(){const t=o(),r=e.useCallback((e=>t.toggleMicro(e)),[t]),n=e.useCallback(((e,r,n=0)=>t.broadcast(e,r,n)),[t]),s=e.useCallback((()=>t.exit()),[t]),i=e.useCallback((e=>t.kick(e)),[t]),a=e.useCallback(((e,r)=>t.forbidMicro(e,r)),[t]),c=e.useCallback(((e,r)=>t.forbidSync(e,r)),[t]),u=e.useCallback((e=>t.getFramesByKey(e)),[t]);return{broadcast:n,exit:s,kick:i,toggleMicro:r,forbidMicro:a,forbidSync:c,sendKeyframe:e.useCallback(((e,r)=>t.sendKeyframe(e,r)),[t]),getFramesByKey:u,setSelfInfo:e.useCallback((e=>t.setSelfInfo(e)),[t]),updateStatus:e.useCallback(((e,r,n,s)=>t.updateStatus(e,r,n,s)),[t])}},useLiveEventCallback:function(t,r,n){const s=o(),i=()=>s.off(t,r),a=n?[s,t].concat(n):[s,t];return e.useEffect((()=>(s.on(t,r),i)),a),i},useReadyState:function(){const t=o(),[r,n]=e.useState(t.readyState);return e.useEffect((()=>{const e=e=>n(e);return t.on("ws.readyStateUpdate",e),()=>t.off("ws.readyStateUpdate",e)}),[t]),r},useRTCAction:function(){const t=o(),r=e.useCallback((e=>t.$RTC.join(e)),[t]);return{join:r,quit:e.useCallback((()=>t.$RTC.quit()),[t]),shock:e.useCallback((()=>t.$RTC.shock()),[t]),toggleMicro:e.useCallback((e=>t.$RTC.toggleMicro(e)),[t]),detectMicro:e.useCallback((()=>t.$RTC.detectMicro()),[t])}},useRTCEventCallback:function(t,r,n){const s=o(),i=()=>s.$RTC.off(t,r),a=n?[s,t].concat(n):[s,t];return e.useEffect((()=>(s.$RTC.on(t,r),i)),a),i},useSelfInfo:function(){const t=o(),[r,n]=e.useState(t.selfInfo||{}),s=e=>n(e);return e.useEffect((()=>(t.on("selfInfoUpdate",s),()=>t.off("selfInfoUpdate",s))),[t]),[r,e.useCallback((async e=>await t.setSelfInfo(e)),[t])]},useSnapshot:function(){const t=o(),[r,n]=e.useState(t.snapshot);return e.useEffect((()=>{const e=e=>n(e);return t.on("keyframes",e),()=>t.off("keyframes",e)})),r},useUserList:function(){const t=o(),[r,n]=e.useState(t.userList),s=e=>n(e);return e.useEffect((()=>(t.on("userListUpdate",s),()=>t.off("userListUpdate",s))),[t]),r},useWebSocketEventCallback:function(t,r,n){const s=o(),i=()=>s.off(t,r),a=n?[s,t].concat(n):[s,t];return e.useEffect((()=>(s.on(t,r),i)),a),i}}}})(),n})()}));
|