@100mslive/react-native-hms 1.10.4 → 1.10.5
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/android/build.gradle +9 -2
- package/android/src/main/java/com/reactnativehmssdk/HMSDecoder.kt +8 -0
- package/android/src/main/java/com/reactnativehmssdk/HMSManager.kt +38 -0
- package/android/src/main/java/com/reactnativehmssdk/HMSRNSDK.kt +6 -4
- package/android/src/main/java/com/reactnativehmssdk/Interactivity/HMSInteractivityDecoder.kt +50 -25
- package/android/src/main/java/com/reactnativehmssdk/Interactivity/HMSRNInteractivityCenter.kt +69 -1
- package/ios/HMSConstants.swift +1 -0
- package/ios/HMSDecoder.swift +10 -2
- package/ios/HMSHLSPlayerManager.swift +4 -1
- package/ios/HMSInteractivityDecoder.swift +41 -0
- package/ios/HMSManager.m +12 -0
- package/ios/HMSManager.swift +20 -1
- package/ios/HMSRNInteractivityCenter.swift +41 -0
- package/lib/commonjs/classes/HMSInteractivityCenter.js +58 -4
- package/lib/commonjs/classes/HMSInteractivityCenter.js.map +1 -1
- package/lib/commonjs/classes/HMSInteractivityEncoder.js +6 -0
- package/lib/commonjs/classes/HMSInteractivityEncoder.js.map +1 -1
- package/lib/commonjs/classes/HMSPermissions.js +2 -0
- package/lib/commonjs/classes/HMSPermissions.js.map +1 -1
- package/lib/commonjs/classes/whiteboard/HMSWhiteboard.js +6 -0
- package/lib/commonjs/classes/whiteboard/HMSWhiteboard.js.map +1 -0
- package/lib/commonjs/classes/whiteboard/HMSWhiteboardListenerActions.js +11 -0
- package/lib/commonjs/classes/whiteboard/HMSWhiteboardListenerActions.js.map +1 -0
- package/lib/commonjs/classes/whiteboard/HMSWhiteboardState.js +12 -0
- package/lib/commonjs/classes/whiteboard/HMSWhiteboardState.js.map +1 -0
- package/lib/commonjs/classes/whiteboard/HMSWhiteboardUpdateType.js +12 -0
- package/lib/commonjs/classes/whiteboard/HMSWhiteboardUpdateType.js.map +1 -0
- package/lib/commonjs/classes/whiteboard/index.js +39 -0
- package/lib/commonjs/classes/whiteboard/index.js.map +1 -0
- package/lib/commonjs/classes/whiteboard/registerCallbacks.js +26 -0
- package/lib/commonjs/classes/whiteboard/registerCallbacks.js.map +1 -0
- package/lib/commonjs/index.js +12 -0
- package/lib/commonjs/index.js.map +1 -1
- package/lib/module/classes/HMSInteractivityCenter.js +58 -4
- package/lib/module/classes/HMSInteractivityCenter.js.map +1 -1
- package/lib/module/classes/HMSInteractivityEncoder.js +6 -0
- package/lib/module/classes/HMSInteractivityEncoder.js.map +1 -1
- package/lib/module/classes/HMSPermissions.js +2 -0
- package/lib/module/classes/HMSPermissions.js.map +1 -1
- package/lib/module/classes/whiteboard/HMSWhiteboard.js +2 -0
- package/lib/module/classes/whiteboard/HMSWhiteboard.js.map +1 -0
- package/lib/module/classes/whiteboard/HMSWhiteboardListenerActions.js +5 -0
- package/lib/module/classes/whiteboard/HMSWhiteboardListenerActions.js.map +1 -0
- package/lib/module/classes/whiteboard/HMSWhiteboardState.js +6 -0
- package/lib/module/classes/whiteboard/HMSWhiteboardState.js.map +1 -0
- package/lib/module/classes/whiteboard/HMSWhiteboardUpdateType.js +6 -0
- package/lib/module/classes/whiteboard/HMSWhiteboardUpdateType.js.map +1 -0
- package/lib/module/classes/whiteboard/index.js +4 -0
- package/lib/module/classes/whiteboard/index.js.map +1 -0
- package/lib/module/classes/whiteboard/registerCallbacks.js +18 -0
- package/lib/module/classes/whiteboard/registerCallbacks.js.map +1 -0
- package/lib/module/index.js +1 -0
- package/lib/module/index.js.map +1 -1
- package/lib/typescript/classes/HMSInteractivityCenter.d.ts +19 -2
- package/lib/typescript/classes/HMSInteractivityEncoder.d.ts +2 -0
- package/lib/typescript/classes/HMSPermissions.d.ts +7 -0
- package/lib/typescript/classes/whiteboard/HMSWhiteboard.d.ts +10 -0
- package/lib/typescript/classes/whiteboard/HMSWhiteboardListenerActions.d.ts +3 -0
- package/lib/typescript/classes/whiteboard/HMSWhiteboardState.d.ts +4 -0
- package/lib/typescript/classes/whiteboard/HMSWhiteboardUpdateType.d.ts +4 -0
- package/lib/typescript/classes/whiteboard/index.d.ts +3 -0
- package/lib/typescript/classes/whiteboard/registerCallbacks.d.ts +8 -0
- package/lib/typescript/index.d.ts +1 -0
- package/package.json +1 -1
- package/sdk-versions.json +2 -2
- package/src/classes/HMSInteractivityCenter.ts +89 -10
- package/src/classes/HMSInteractivityEncoder.ts +8 -0
- package/src/classes/HMSPermissions.ts +9 -0
- package/src/classes/whiteboard/HMSWhiteboard.tsx +16 -0
- package/src/classes/whiteboard/HMSWhiteboardListenerActions.ts +3 -0
- package/src/classes/whiteboard/HMSWhiteboardState.tsx +4 -0
- package/src/classes/whiteboard/HMSWhiteboardUpdateType.tsx +4 -0
- package/src/classes/whiteboard/index.ts +3 -0
- package/src/classes/whiteboard/registerCallbacks.ts +34 -0
- package/src/index.ts +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["EventEmitter","HMSManager","HMSConstants","logger","HMSPollsListenerActions","HMSNativeEventListener","HMSInteractivityEncoder","HMSHelper","pollUpdateSubscription","registerPollUpdateListener","listener","addListener","DEFAULT_SDK_ID","ON_POLL_UPDATE","unregisterPollUpdateListener","remove","HMSInteractivityCenter","constructor","_defineProperty","args","updatedPoll","update","verbose","_eventEmitter","emit","transformPoll","registerOnAllListenersRemoved","_onAllPollUpdateListenerRemoved","addPollUpdateListener","_pollUpdateListener","startPoll","pollParams","transformedPollParams","rolesThatCanVote","getRoleNames","undefined","rolesThatCanViewResponses","data","id","JSON","stringify","quickStartPoll","add","pollQuestionResponseParams","addResponseOnPollQuestion","stop","pollId","stopPoll","fetchLeaderboard","count","startIndex","includeCurrentPeer","response","transformPollLeaderboardResponse"],"sources":["HMSInteractivityCenter.ts"],"sourcesContent":["import { EventEmitter } from '../utils';\nimport HMSManager from '../modules/HMSManagerModule';\nimport { HMSConstants } from './HMSConstants';\nimport { logger } from './HMSLogger';\nimport type { HMSPoll } from './polls/HMSPoll';\nimport type { HMSPollCreateParams } from './polls/HMSPollCreateParams';\nimport type { HMSPollUpdateType } from './polls/HMSPollUpdateType';\nimport { HMSPollsListenerActions } from './HMSPollsListenerActions';\nimport HMSNativeEventListener from './HMSNativeEventListener';\nimport type { HMSEventSubscription } from './HMSNativeEventEmitter';\nimport { HMSInteractivityEncoder } from './HMSInteractivityEncoder';\nimport { HMSHelper } from './HMSHelper';\nimport type { PollLeaderboardResponse } from './polls/PollLeaderboardResponse';\nimport type { DecodedPollLeaderboardResponse } from './polls/DecodedPollLeaderboardResponse';\n\ntype PollUpdateListener = (data: {\n updatedPoll: HMSPoll;\n update: HMSPollUpdateType;\n}) => void;\n\ntype PollQuestionResponseCreateParams = {\n pollId: string;\n pollQuestionIndex: number;\n responses:\n | {\n text: string;\n duration?: number;\n }\n | {\n options: number[];\n duration?: number;\n };\n};\n\nlet pollUpdateSubscription: null | HMSEventSubscription = null;\n\nfunction registerPollUpdateListener(listener: PollUpdateListener) {\n if (pollUpdateSubscription !== null) {\n return;\n }\n pollUpdateSubscription = HMSNativeEventListener.addListener(\n HMSConstants.DEFAULT_SDK_ID,\n HMSPollsListenerActions.ON_POLL_UPDATE,\n listener\n );\n}\n\nfunction unregisterPollUpdateListener() {\n if (pollUpdateSubscription === null) {\n return;\n }\n pollUpdateSubscription.remove();\n pollUpdateSubscription = null;\n}\n\nexport class HMSInteractivityCenter {\n private _eventEmitter = new EventEmitter();\n\n private _pollUpdateListener = (...args: Parameters<PollUpdateListener>) => {\n const { updatedPoll, update } = args[0];\n logger?.verbose('#Listener ON_POLL_UPDATE', {\n update,\n updatedPoll,\n });\n this._eventEmitter.emit(\n HMSPollsListenerActions.ON_POLL_UPDATE,\n HMSInteractivityEncoder.transformPoll(updatedPoll),\n update\n );\n };\n\n private _onAllPollUpdateListenerRemoved = () => {\n unregisterPollUpdateListener();\n };\n\n constructor() {\n this._eventEmitter.registerOnAllListenersRemoved(\n this._onAllPollUpdateListenerRemoved\n );\n }\n\n /**\n * Adds a listener for poll updates\n * @param listener - Callback to be called when a poll is updated\n * @returns HMSEventSubscription\n */\n addPollUpdateListener(\n listener: (updatedPoll: HMSPoll, update: HMSPollUpdateType) => void\n ) {\n registerPollUpdateListener(this._pollUpdateListener);\n return this._eventEmitter.addListener(\n HMSPollsListenerActions.ON_POLL_UPDATE,\n listener,\n null\n );\n }\n\n /**\n * Starts a poll\n *\n * @param pollParams\n */\n async startPoll(pollParams: HMSPollCreateParams) {\n const transformedPollParams = {\n ...pollParams,\n rolesThatCanVote: pollParams.rolesThatCanVote\n ? HMSHelper.getRoleNames(pollParams.rolesThatCanVote)\n : undefined,\n rolesThatCanViewResponses: pollParams.rolesThatCanViewResponses\n ? HMSHelper.getRoleNames(pollParams.rolesThatCanViewResponses)\n : undefined,\n };\n\n const data = {\n ...transformedPollParams,\n id: HMSConstants.DEFAULT_SDK_ID,\n };\n logger?.verbose('#Function startPoll', JSON.stringify(data));\n return HMSManager.quickStartPoll(data);\n }\n\n async add(pollQuestionResponseParams: PollQuestionResponseCreateParams) {\n const data = {\n ...pollQuestionResponseParams,\n id: HMSConstants.DEFAULT_SDK_ID,\n };\n logger?.verbose('#Function add', JSON.stringify(data));\n return HMSManager.addResponseOnPollQuestion(data);\n }\n\n async stop(pollId: string) {\n const data = {\n id: HMSConstants.DEFAULT_SDK_ID,\n pollId,\n };\n logger?.verbose('#Function stop', JSON.stringify(data));\n return HMSManager.stopPoll(data);\n }\n\n /**\n * Fetches the leaderboard for a poll\n * @param pollId - The id of the poll\n * @param count - The number of entries to fetch\n * @param startIndex - The index to start fetching from\n * @param includeCurrentPeer - Whether to include the current peer in the fetched leaderboard entries\n * @returns Promise<PollLeaderboardResponse>\n */\n async fetchLeaderboard(\n pollId: string,\n count: number,\n startIndex: number,\n includeCurrentPeer: boolean\n ): Promise<PollLeaderboardResponse> {\n const data = {\n id: HMSConstants.DEFAULT_SDK_ID,\n pollId,\n count,\n startIndex,\n includeCurrentPeer,\n };\n logger?.verbose('#Function fetchLeaderboard', data);\n\n const response: DecodedPollLeaderboardResponse =\n await HMSManager.fetchLeaderboard(data);\n return HMSInteractivityEncoder.transformPollLeaderboardResponse(response);\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["EventEmitter","HMSManager","HMSConstants","logger","HMSPollsListenerActions","HMSNativeEventListener","HMSInteractivityEncoder","HMSHelper","HMSWhiteboardListenerActions","registerWhiteboardUpdateListener","unregisterWhiteboardUpdateListener","pollUpdateSubscription","registerPollUpdateListener","listener","addListener","DEFAULT_SDK_ID","ON_POLL_UPDATE","unregisterPollUpdateListener","remove","HMSInteractivityCenter","onUpdateListenerRemoved","eventType","ON_WHITEBOARD_UPDATE","console","warn","constructor","_defineProperty","args","updatedPoll","update","verbose","_eventEmitter","emit","transformPoll","hmsWhiteboard","updateType","transformHMSWhiteboard","registerOnAllListenersRemoved","addPollUpdateListener","_pollUpdateListener","startPoll","pollParams","transformedPollParams","rolesThatCanVote","getRoleNames","undefined","rolesThatCanViewResponses","data","id","JSON","stringify","quickStartPoll","add","pollQuestionResponseParams","addResponseOnPollQuestion","stop","pollId","stopPoll","fetchLeaderboard","count","startIndex","includeCurrentPeer","response","transformPollLeaderboardResponse","addWhiteboardUpdateListener","_whiteboardUpdateListener","startWhiteboard","title","stopWhiteboard"],"sources":["HMSInteractivityCenter.ts"],"sourcesContent":["import { EventEmitter } from '../utils';\nimport HMSManager from '../modules/HMSManagerModule';\nimport { HMSConstants } from './HMSConstants';\nimport { logger } from './HMSLogger';\nimport type { HMSPoll } from './polls/HMSPoll';\nimport type { HMSPollCreateParams } from './polls/HMSPollCreateParams';\nimport type { HMSPollUpdateType } from './polls/HMSPollUpdateType';\nimport { HMSPollsListenerActions } from './HMSPollsListenerActions';\nimport HMSNativeEventListener from './HMSNativeEventListener';\nimport type { HMSEventSubscription } from './HMSNativeEventEmitter';\nimport { HMSInteractivityEncoder } from './HMSInteractivityEncoder';\nimport { HMSHelper } from './HMSHelper';\nimport type { PollLeaderboardResponse } from './polls/PollLeaderboardResponse';\nimport type { DecodedPollLeaderboardResponse } from './polls/DecodedPollLeaderboardResponse';\nimport type { HMSWhiteboardUpdateType } from './whiteboard/HMSWhiteboardUpdateType';\nimport type { HMSWhiteboard } from './whiteboard/HMSWhiteboard';\nimport { HMSWhiteboardListenerActions } from './whiteboard/HMSWhiteboardListenerActions';\nimport {\n WhiteboardUpdateListener,\n registerWhiteboardUpdateListener,\n unregisterWhiteboardUpdateListener,\n} from './whiteboard/registerCallbacks';\n\ntype PollUpdateListener = (data: {\n updatedPoll: HMSPoll;\n update: HMSPollUpdateType;\n}) => void;\n\ntype PollQuestionResponseCreateParams = {\n pollId: string;\n pollQuestionIndex: number;\n responses:\n | {\n text: string;\n duration?: number;\n }\n | {\n options: number[];\n duration?: number;\n };\n};\n\nlet pollUpdateSubscription: null | HMSEventSubscription = null;\n\nfunction registerPollUpdateListener(listener: PollUpdateListener) {\n if (pollUpdateSubscription !== null) {\n return;\n }\n pollUpdateSubscription = HMSNativeEventListener.addListener(\n HMSConstants.DEFAULT_SDK_ID,\n HMSPollsListenerActions.ON_POLL_UPDATE,\n listener\n );\n}\n\nfunction unregisterPollUpdateListener() {\n if (pollUpdateSubscription === null) {\n return;\n }\n pollUpdateSubscription.remove();\n pollUpdateSubscription = null;\n}\n\nexport class HMSInteractivityCenter {\n private _eventEmitter = new EventEmitter();\n\n private onUpdateListenerRemoved(eventType: string) {\n if (eventType === HMSPollsListenerActions.ON_POLL_UPDATE) {\n unregisterPollUpdateListener();\n } else if (\n eventType === HMSWhiteboardListenerActions.ON_WHITEBOARD_UPDATE\n ) {\n unregisterWhiteboardUpdateListener();\n } else {\n console.warn('Unknown update listener removed: ', eventType);\n }\n }\n\n constructor() {\n this._eventEmitter.registerOnAllListenersRemoved(\n this.onUpdateListenerRemoved\n );\n }\n\n //#region Poll Methods & Listeners\n\n private _pollUpdateListener = (...args: Parameters<PollUpdateListener>) => {\n const { updatedPoll, update } = args[0];\n logger?.verbose('#Listener ON_POLL_UPDATE', {\n update,\n updatedPoll,\n });\n this._eventEmitter.emit(\n HMSPollsListenerActions.ON_POLL_UPDATE,\n HMSInteractivityEncoder.transformPoll(updatedPoll),\n update\n );\n };\n\n /**\n * Adds a listener for poll updates\n * @param listener - Callback to be called when a poll is updated\n * @returns HMSEventSubscription\n */\n addPollUpdateListener(\n listener: (updatedPoll: HMSPoll, update: HMSPollUpdateType) => void\n ) {\n registerPollUpdateListener(this._pollUpdateListener);\n return this._eventEmitter.addListener(\n HMSPollsListenerActions.ON_POLL_UPDATE,\n listener,\n null\n );\n }\n\n /**\n * Starts a poll\n *\n * @param pollParams\n */\n async startPoll(pollParams: HMSPollCreateParams) {\n const transformedPollParams = {\n ...pollParams,\n rolesThatCanVote: pollParams.rolesThatCanVote\n ? HMSHelper.getRoleNames(pollParams.rolesThatCanVote)\n : undefined,\n rolesThatCanViewResponses: pollParams.rolesThatCanViewResponses\n ? HMSHelper.getRoleNames(pollParams.rolesThatCanViewResponses)\n : undefined,\n };\n\n const data = {\n ...transformedPollParams,\n id: HMSConstants.DEFAULT_SDK_ID,\n };\n logger?.verbose('#Function startPoll', JSON.stringify(data));\n return HMSManager.quickStartPoll(data);\n }\n\n async add(pollQuestionResponseParams: PollQuestionResponseCreateParams) {\n const data = {\n ...pollQuestionResponseParams,\n id: HMSConstants.DEFAULT_SDK_ID,\n };\n logger?.verbose('#Function add', JSON.stringify(data));\n return HMSManager.addResponseOnPollQuestion(data);\n }\n\n async stop(pollId: string) {\n const data = {\n id: HMSConstants.DEFAULT_SDK_ID,\n pollId,\n };\n logger?.verbose('#Function stop', JSON.stringify(data));\n return HMSManager.stopPoll(data);\n }\n\n /**\n * Fetches the leaderboard for a poll\n * @param pollId - The id of the poll\n * @param count - The number of entries to fetch\n * @param startIndex - The index to start fetching from\n * @param includeCurrentPeer - Whether to include the current peer in the fetched leaderboard entries\n * @returns Promise<PollLeaderboardResponse>\n */\n async fetchLeaderboard(\n pollId: string,\n count: number,\n startIndex: number,\n includeCurrentPeer: boolean\n ): Promise<PollLeaderboardResponse> {\n const data = {\n id: HMSConstants.DEFAULT_SDK_ID,\n pollId,\n count,\n startIndex,\n includeCurrentPeer,\n };\n logger?.verbose('#Function fetchLeaderboard', data);\n\n const response: DecodedPollLeaderboardResponse =\n await HMSManager.fetchLeaderboard(data);\n return HMSInteractivityEncoder.transformPollLeaderboardResponse(response);\n }\n //#endregion Poll Methods & Listeners\n\n //#region Whiteboard Methods & Listeners\n\n private _whiteboardUpdateListener = (\n ...args: Parameters<WhiteboardUpdateListener>\n ) => {\n const { hmsWhiteboard, updateType } = args[0];\n logger?.verbose('#Listener ON_WHITEBOARD_UPDATE', {\n updateType,\n hmsWhiteboard,\n });\n this._eventEmitter.emit(\n HMSWhiteboardListenerActions.ON_WHITEBOARD_UPDATE,\n HMSInteractivityEncoder.transformHMSWhiteboard(hmsWhiteboard),\n updateType\n );\n };\n\n /**\n * Adds a listener for Whiteboard updates\n * @param listener - Callback to be called when whiteboard is updated\n * @returns HMSEventSubscription\n */\n addWhiteboardUpdateListener(\n listener: (\n hmsWhiteboard: HMSWhiteboard,\n updateType: HMSWhiteboardUpdateType\n ) => void\n ) {\n registerWhiteboardUpdateListener(this._whiteboardUpdateListener);\n return this._eventEmitter.addListener(\n HMSWhiteboardListenerActions.ON_WHITEBOARD_UPDATE,\n listener,\n null\n );\n }\n\n /**\n * Starts Whiteboard\n */\n async startWhiteboard(title: string) {\n const data = {\n id: HMSConstants.DEFAULT_SDK_ID,\n title,\n };\n logger?.verbose('#Function startWhiteboard', data);\n return HMSManager.startWhiteboard(data);\n }\n\n /**\n * Stops Whiteboard\n */\n async stopWhiteboard() {\n const data = {\n id: HMSConstants.DEFAULT_SDK_ID,\n };\n logger?.verbose('#Function stopWhiteboard', data);\n return HMSManager.stopWhiteboard(data);\n }\n //#endregion Whiteboard Methods & Listeners\n}\n"],"mappings":";;;AAAA,SAASA,YAAY,QAAQ,UAAU;AACvC,OAAOC,UAAU,MAAM,6BAA6B;AACpD,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,MAAM,QAAQ,aAAa;AAIpC,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,OAAOC,sBAAsB,MAAM,0BAA0B;AAE7D,SAASC,uBAAuB,QAAQ,2BAA2B;AACnE,SAASC,SAAS,QAAQ,aAAa;AAKvC,SAASC,4BAA4B,QAAQ,2CAA2C;AACxF,SAEEC,gCAAgC,EAChCC,kCAAkC,QAC7B,gCAAgC;AAqBvC,IAAIC,sBAAmD,GAAG,IAAI;AAE9D,SAASC,0BAA0BA,CAACC,QAA4B,EAAE;EAChE,IAAIF,sBAAsB,KAAK,IAAI,EAAE;IACnC;EACF;EACAA,sBAAsB,GAAGN,sBAAsB,CAACS,WAAW,CACzDZ,YAAY,CAACa,cAAc,EAC3BX,uBAAuB,CAACY,cAAc,EACtCH,QACF,CAAC;AACH;AAEA,SAASI,4BAA4BA,CAAA,EAAG;EACtC,IAAIN,sBAAsB,KAAK,IAAI,EAAE;IACnC;EACF;EACAA,sBAAsB,CAACO,MAAM,CAAC,CAAC;EAC/BP,sBAAsB,GAAG,IAAI;AAC/B;AAEA,OAAO,MAAMQ,sBAAsB,CAAC;EAG1BC,uBAAuBA,CAACC,SAAiB,EAAE;IACjD,IAAIA,SAAS,KAAKjB,uBAAuB,CAACY,cAAc,EAAE;MACxDC,4BAA4B,CAAC,CAAC;IAChC,CAAC,MAAM,IACLI,SAAS,KAAKb,4BAA4B,CAACc,oBAAoB,EAC/D;MACAZ,kCAAkC,CAAC,CAAC;IACtC,CAAC,MAAM;MACLa,OAAO,CAACC,IAAI,CAAC,mCAAmC,EAAEH,SAAS,CAAC;IAC9D;EACF;EAEAI,WAAWA,CAAA,EAAG;IAAAC,eAAA,wBAdU,IAAI1B,YAAY,CAAC,CAAC;IAoB1C;IAAA0B,eAAA,8BAE8B,CAAC,GAAGC,IAAoC,KAAK;MACzE,MAAM;QAAEC,WAAW;QAAEC;MAAO,CAAC,GAAGF,IAAI,CAAC,CAAC,CAAC;MACvCxB,MAAM,aAANA,MAAM,eAANA,MAAM,CAAE2B,OAAO,CAAC,0BAA0B,EAAE;QAC1CD,MAAM;QACND;MACF,CAAC,CAAC;MACF,IAAI,CAACG,aAAa,CAACC,IAAI,CACrB5B,uBAAuB,CAACY,cAAc,EACtCV,uBAAuB,CAAC2B,aAAa,CAACL,WAAW,CAAC,EAClDC,MACF,CAAC;IACH,CAAC;IAuFD;IAEA;IAAAH,eAAA,oCAEoC,CAClC,GAAGC,IAA0C,KAC1C;MACH,MAAM;QAAEO,aAAa;QAAEC;MAAW,CAAC,GAAGR,IAAI,CAAC,CAAC,CAAC;MAC7CxB,MAAM,aAANA,MAAM,eAANA,MAAM,CAAE2B,OAAO,CAAC,gCAAgC,EAAE;QAChDK,UAAU;QACVD;MACF,CAAC,CAAC;MACF,IAAI,CAACH,aAAa,CAACC,IAAI,CACrBxB,4BAA4B,CAACc,oBAAoB,EACjDhB,uBAAuB,CAAC8B,sBAAsB,CAACF,aAAa,CAAC,EAC7DC,UACF,CAAC;IACH,CAAC;IA1HC,IAAI,CAACJ,aAAa,CAACM,6BAA6B,CAC9C,IAAI,CAACjB,uBACP,CAAC;EACH;EAiBA;AACF;AACA;AACA;AACA;EACEkB,qBAAqBA,CACnBzB,QAAmE,EACnE;IACAD,0BAA0B,CAAC,IAAI,CAAC2B,mBAAmB,CAAC;IACpD,OAAO,IAAI,CAACR,aAAa,CAACjB,WAAW,CACnCV,uBAAuB,CAACY,cAAc,EACtCH,QAAQ,EACR,IACF,CAAC;EACH;;EAEA;AACF;AACA;AACA;AACA;EACE,MAAM2B,SAASA,CAACC,UAA+B,EAAE;IAC/C,MAAMC,qBAAqB,GAAG;MAC5B,GAAGD,UAAU;MACbE,gBAAgB,EAAEF,UAAU,CAACE,gBAAgB,GACzCpC,SAAS,CAACqC,YAAY,CAACH,UAAU,CAACE,gBAAgB,CAAC,GACnDE,SAAS;MACbC,yBAAyB,EAAEL,UAAU,CAACK,yBAAyB,GAC3DvC,SAAS,CAACqC,YAAY,CAACH,UAAU,CAACK,yBAAyB,CAAC,GAC5DD;IACN,CAAC;IAED,MAAME,IAAI,GAAG;MACX,GAAGL,qBAAqB;MACxBM,EAAE,EAAE9C,YAAY,CAACa;IACnB,CAAC;IACDZ,MAAM,aAANA,MAAM,eAANA,MAAM,CAAE2B,OAAO,CAAC,qBAAqB,EAAEmB,IAAI,CAACC,SAAS,CAACH,IAAI,CAAC,CAAC;IAC5D,OAAO9C,UAAU,CAACkD,cAAc,CAACJ,IAAI,CAAC;EACxC;EAEA,MAAMK,GAAGA,CAACC,0BAA4D,EAAE;IACtE,MAAMN,IAAI,GAAG;MACX,GAAGM,0BAA0B;MAC7BL,EAAE,EAAE9C,YAAY,CAACa;IACnB,CAAC;IACDZ,MAAM,aAANA,MAAM,eAANA,MAAM,CAAE2B,OAAO,CAAC,eAAe,EAAEmB,IAAI,CAACC,SAAS,CAACH,IAAI,CAAC,CAAC;IACtD,OAAO9C,UAAU,CAACqD,yBAAyB,CAACP,IAAI,CAAC;EACnD;EAEA,MAAMQ,IAAIA,CAACC,MAAc,EAAE;IACzB,MAAMT,IAAI,GAAG;MACXC,EAAE,EAAE9C,YAAY,CAACa,cAAc;MAC/ByC;IACF,CAAC;IACDrD,MAAM,aAANA,MAAM,eAANA,MAAM,CAAE2B,OAAO,CAAC,gBAAgB,EAAEmB,IAAI,CAACC,SAAS,CAACH,IAAI,CAAC,CAAC;IACvD,OAAO9C,UAAU,CAACwD,QAAQ,CAACV,IAAI,CAAC;EAClC;;EAEA;AACF;AACA;AACA;AACA;AACA;AACA;AACA;EACE,MAAMW,gBAAgBA,CACpBF,MAAc,EACdG,KAAa,EACbC,UAAkB,EAClBC,kBAA2B,EACO;IAClC,MAAMd,IAAI,GAAG;MACXC,EAAE,EAAE9C,YAAY,CAACa,cAAc;MAC/ByC,MAAM;MACNG,KAAK;MACLC,UAAU;MACVC;IACF,CAAC;IACD1D,MAAM,aAANA,MAAM,eAANA,MAAM,CAAE2B,OAAO,CAAC,4BAA4B,EAAEiB,IAAI,CAAC;IAEnD,MAAMe,QAAwC,GAC5C,MAAM7D,UAAU,CAACyD,gBAAgB,CAACX,IAAI,CAAC;IACzC,OAAOzC,uBAAuB,CAACyD,gCAAgC,CAACD,QAAQ,CAAC;EAC3E;EAoBA;AACF;AACA;AACA;AACA;EACEE,2BAA2BA,CACzBnD,QAGS,EACT;IACAJ,gCAAgC,CAAC,IAAI,CAACwD,yBAAyB,CAAC;IAChE,OAAO,IAAI,CAAClC,aAAa,CAACjB,WAAW,CACnCN,4BAA4B,CAACc,oBAAoB,EACjDT,QAAQ,EACR,IACF,CAAC;EACH;;EAEA;AACF;AACA;EACE,MAAMqD,eAAeA,CAACC,KAAa,EAAE;IACnC,MAAMpB,IAAI,GAAG;MACXC,EAAE,EAAE9C,YAAY,CAACa,cAAc;MAC/BoD;IACF,CAAC;IACDhE,MAAM,aAANA,MAAM,eAANA,MAAM,CAAE2B,OAAO,CAAC,2BAA2B,EAAEiB,IAAI,CAAC;IAClD,OAAO9C,UAAU,CAACiE,eAAe,CAACnB,IAAI,CAAC;EACzC;;EAEA;AACF;AACA;EACE,MAAMqB,cAAcA,CAAA,EAAG;IACrB,MAAMrB,IAAI,GAAG;MACXC,EAAE,EAAE9C,YAAY,CAACa;IACnB,CAAC;IACDZ,MAAM,aAANA,MAAM,eAANA,MAAM,CAAE2B,OAAO,CAAC,0BAA0B,EAAEiB,IAAI,CAAC;IACjD,OAAO9C,UAAU,CAACmE,cAAc,CAACrB,IAAI,CAAC;EACxC;EACA;AACF","ignoreList":[]}
|
|
@@ -66,5 +66,11 @@ export class HMSInteractivityEncoder {
|
|
|
66
66
|
}
|
|
67
67
|
return decodedPollLeaderboardResponse;
|
|
68
68
|
}
|
|
69
|
+
static transformHMSWhiteboard(hmsWhiteboard) {
|
|
70
|
+
if (hmsWhiteboard.owner) {
|
|
71
|
+
hmsWhiteboard.owner = HMSEncoder.encodeHmsPeer(hmsWhiteboard.owner);
|
|
72
|
+
}
|
|
73
|
+
return hmsWhiteboard;
|
|
74
|
+
}
|
|
69
75
|
}
|
|
70
76
|
//# sourceMappingURL=HMSInteractivityEncoder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["HMSEncoder","HMSInteractivityEncoder","transformPoll","poll","startedAt","dateNum","parseInt","isNaN","undefined","Date","stoppedAt","createdBy","encodeHmsPeer","startedBy","stoppedBy","rolesThatCanVote","map","role","encodeHmsRole","rolesThatCanViewResponses","transformPollLeaderboardResponse","decodedPollLeaderboardResponse","summary","averageTime","entries","forEach","entry","duration","totalResponses","correctResponses","position","score"],"sources":["HMSInteractivityEncoder.ts"],"sourcesContent":["import { HMSEncoder } from './HMSEncoder';\nimport type { DecodedPollLeaderboardResponse } from './polls/DecodedPollLeaderboardResponse';\nimport type { HMSPoll } from './polls/HMSPoll';\nimport type { PollLeaderboardResponse } from './polls/PollLeaderboardResponse';\n\nexport class HMSInteractivityEncoder {\n static transformPoll(poll: HMSPoll): HMSPoll {\n if (poll.startedAt) {\n const dateNum = parseInt(poll.startedAt as unknown as string);\n\n if (isNaN(dateNum)) {\n poll.startedAt = undefined;\n } else {\n poll.startedAt = new Date(dateNum);\n }\n }\n if (poll.stoppedAt) {\n const dateNum = parseInt(poll.stoppedAt as unknown as string);\n\n if (isNaN(dateNum)) {\n poll.stoppedAt = undefined;\n } else {\n poll.stoppedAt = new Date(dateNum);\n }\n }\n if (poll.createdBy) {\n poll.createdBy = HMSEncoder.encodeHmsPeer(poll.createdBy);\n }\n if (poll.startedBy) {\n poll.startedBy = HMSEncoder.encodeHmsPeer(poll.startedBy);\n }\n if (poll.stoppedBy) {\n poll.stoppedBy = HMSEncoder.encodeHmsPeer(poll.stoppedBy);\n }\n if (poll.rolesThatCanVote) {\n poll.rolesThatCanVote = poll.rolesThatCanVote.map((role) =>\n HMSEncoder.encodeHmsRole(role)\n );\n }\n if (poll.rolesThatCanViewResponses) {\n poll.rolesThatCanViewResponses = poll.rolesThatCanViewResponses.map(\n (role) => HMSEncoder.encodeHmsRole(role)\n );\n }\n\n // --- poll.questions: HMSPollQuestion[]\n // --- poll.result: HMSPollResult\n return poll;\n }\n\n static transformPollLeaderboardResponse(\n decodedPollLeaderboardResponse: DecodedPollLeaderboardResponse\n ): PollLeaderboardResponse {\n const summary = decodedPollLeaderboardResponse.summary;\n if (summary) {\n if (typeof summary.averageTime === 'string') {\n summary.averageTime = parseInt(summary.averageTime);\n }\n }\n\n const entries = decodedPollLeaderboardResponse.entries;\n if (entries) {\n entries.forEach((entry) => {\n if (typeof entry.duration === 'string') {\n entry.duration = parseInt(entry.duration);\n }\n if (typeof entry.totalResponses === 'string') {\n entry.totalResponses = parseInt(entry.totalResponses);\n }\n if (typeof entry.correctResponses === 'string') {\n entry.correctResponses = parseInt(entry.correctResponses);\n }\n if (typeof entry.position === 'string') {\n entry.position = parseInt(entry.position);\n }\n if (typeof entry.score === 'string') {\n entry.score = parseInt(entry.score);\n }\n });\n }\n\n return decodedPollLeaderboardResponse as PollLeaderboardResponse;\n }\n}\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,cAAc;
|
|
1
|
+
{"version":3,"names":["HMSEncoder","HMSInteractivityEncoder","transformPoll","poll","startedAt","dateNum","parseInt","isNaN","undefined","Date","stoppedAt","createdBy","encodeHmsPeer","startedBy","stoppedBy","rolesThatCanVote","map","role","encodeHmsRole","rolesThatCanViewResponses","transformPollLeaderboardResponse","decodedPollLeaderboardResponse","summary","averageTime","entries","forEach","entry","duration","totalResponses","correctResponses","position","score","transformHMSWhiteboard","hmsWhiteboard","owner"],"sources":["HMSInteractivityEncoder.ts"],"sourcesContent":["import { HMSEncoder } from './HMSEncoder';\nimport type { DecodedPollLeaderboardResponse } from './polls/DecodedPollLeaderboardResponse';\nimport type { HMSPoll } from './polls/HMSPoll';\nimport type { PollLeaderboardResponse } from './polls/PollLeaderboardResponse';\nimport type { HMSWhiteboard } from './whiteboard/HMSWhiteboard';\n\nexport class HMSInteractivityEncoder {\n static transformPoll(poll: HMSPoll): HMSPoll {\n if (poll.startedAt) {\n const dateNum = parseInt(poll.startedAt as unknown as string);\n\n if (isNaN(dateNum)) {\n poll.startedAt = undefined;\n } else {\n poll.startedAt = new Date(dateNum);\n }\n }\n if (poll.stoppedAt) {\n const dateNum = parseInt(poll.stoppedAt as unknown as string);\n\n if (isNaN(dateNum)) {\n poll.stoppedAt = undefined;\n } else {\n poll.stoppedAt = new Date(dateNum);\n }\n }\n if (poll.createdBy) {\n poll.createdBy = HMSEncoder.encodeHmsPeer(poll.createdBy);\n }\n if (poll.startedBy) {\n poll.startedBy = HMSEncoder.encodeHmsPeer(poll.startedBy);\n }\n if (poll.stoppedBy) {\n poll.stoppedBy = HMSEncoder.encodeHmsPeer(poll.stoppedBy);\n }\n if (poll.rolesThatCanVote) {\n poll.rolesThatCanVote = poll.rolesThatCanVote.map((role) =>\n HMSEncoder.encodeHmsRole(role)\n );\n }\n if (poll.rolesThatCanViewResponses) {\n poll.rolesThatCanViewResponses = poll.rolesThatCanViewResponses.map(\n (role) => HMSEncoder.encodeHmsRole(role)\n );\n }\n\n // --- poll.questions: HMSPollQuestion[]\n // --- poll.result: HMSPollResult\n return poll;\n }\n\n static transformPollLeaderboardResponse(\n decodedPollLeaderboardResponse: DecodedPollLeaderboardResponse\n ): PollLeaderboardResponse {\n const summary = decodedPollLeaderboardResponse.summary;\n if (summary) {\n if (typeof summary.averageTime === 'string') {\n summary.averageTime = parseInt(summary.averageTime);\n }\n }\n\n const entries = decodedPollLeaderboardResponse.entries;\n if (entries) {\n entries.forEach((entry) => {\n if (typeof entry.duration === 'string') {\n entry.duration = parseInt(entry.duration);\n }\n if (typeof entry.totalResponses === 'string') {\n entry.totalResponses = parseInt(entry.totalResponses);\n }\n if (typeof entry.correctResponses === 'string') {\n entry.correctResponses = parseInt(entry.correctResponses);\n }\n if (typeof entry.position === 'string') {\n entry.position = parseInt(entry.position);\n }\n if (typeof entry.score === 'string') {\n entry.score = parseInt(entry.score);\n }\n });\n }\n\n return decodedPollLeaderboardResponse as PollLeaderboardResponse;\n }\n\n static transformHMSWhiteboard(hmsWhiteboard: HMSWhiteboard): HMSWhiteboard {\n if (hmsWhiteboard.owner) {\n hmsWhiteboard.owner = HMSEncoder.encodeHmsPeer(hmsWhiteboard.owner);\n }\n return hmsWhiteboard;\n }\n}\n"],"mappings":"AAAA,SAASA,UAAU,QAAQ,cAAc;AAMzC,OAAO,MAAMC,uBAAuB,CAAC;EACnC,OAAOC,aAAaA,CAACC,IAAa,EAAW;IAC3C,IAAIA,IAAI,CAACC,SAAS,EAAE;MAClB,MAAMC,OAAO,GAAGC,QAAQ,CAACH,IAAI,CAACC,SAA8B,CAAC;MAE7D,IAAIG,KAAK,CAACF,OAAO,CAAC,EAAE;QAClBF,IAAI,CAACC,SAAS,GAAGI,SAAS;MAC5B,CAAC,MAAM;QACLL,IAAI,CAACC,SAAS,GAAG,IAAIK,IAAI,CAACJ,OAAO,CAAC;MACpC;IACF;IACA,IAAIF,IAAI,CAACO,SAAS,EAAE;MAClB,MAAML,OAAO,GAAGC,QAAQ,CAACH,IAAI,CAACO,SAA8B,CAAC;MAE7D,IAAIH,KAAK,CAACF,OAAO,CAAC,EAAE;QAClBF,IAAI,CAACO,SAAS,GAAGF,SAAS;MAC5B,CAAC,MAAM;QACLL,IAAI,CAACO,SAAS,GAAG,IAAID,IAAI,CAACJ,OAAO,CAAC;MACpC;IACF;IACA,IAAIF,IAAI,CAACQ,SAAS,EAAE;MAClBR,IAAI,CAACQ,SAAS,GAAGX,UAAU,CAACY,aAAa,CAACT,IAAI,CAACQ,SAAS,CAAC;IAC3D;IACA,IAAIR,IAAI,CAACU,SAAS,EAAE;MAClBV,IAAI,CAACU,SAAS,GAAGb,UAAU,CAACY,aAAa,CAACT,IAAI,CAACU,SAAS,CAAC;IAC3D;IACA,IAAIV,IAAI,CAACW,SAAS,EAAE;MAClBX,IAAI,CAACW,SAAS,GAAGd,UAAU,CAACY,aAAa,CAACT,IAAI,CAACW,SAAS,CAAC;IAC3D;IACA,IAAIX,IAAI,CAACY,gBAAgB,EAAE;MACzBZ,IAAI,CAACY,gBAAgB,GAAGZ,IAAI,CAACY,gBAAgB,CAACC,GAAG,CAAEC,IAAI,IACrDjB,UAAU,CAACkB,aAAa,CAACD,IAAI,CAC/B,CAAC;IACH;IACA,IAAId,IAAI,CAACgB,yBAAyB,EAAE;MAClChB,IAAI,CAACgB,yBAAyB,GAAGhB,IAAI,CAACgB,yBAAyB,CAACH,GAAG,CAChEC,IAAI,IAAKjB,UAAU,CAACkB,aAAa,CAACD,IAAI,CACzC,CAAC;IACH;;IAEA;IACA;IACA,OAAOd,IAAI;EACb;EAEA,OAAOiB,gCAAgCA,CACrCC,8BAA8D,EACrC;IACzB,MAAMC,OAAO,GAAGD,8BAA8B,CAACC,OAAO;IACtD,IAAIA,OAAO,EAAE;MACX,IAAI,OAAOA,OAAO,CAACC,WAAW,KAAK,QAAQ,EAAE;QAC3CD,OAAO,CAACC,WAAW,GAAGjB,QAAQ,CAACgB,OAAO,CAACC,WAAW,CAAC;MACrD;IACF;IAEA,MAAMC,OAAO,GAAGH,8BAA8B,CAACG,OAAO;IACtD,IAAIA,OAAO,EAAE;MACXA,OAAO,CAACC,OAAO,CAAEC,KAAK,IAAK;QACzB,IAAI,OAAOA,KAAK,CAACC,QAAQ,KAAK,QAAQ,EAAE;UACtCD,KAAK,CAACC,QAAQ,GAAGrB,QAAQ,CAACoB,KAAK,CAACC,QAAQ,CAAC;QAC3C;QACA,IAAI,OAAOD,KAAK,CAACE,cAAc,KAAK,QAAQ,EAAE;UAC5CF,KAAK,CAACE,cAAc,GAAGtB,QAAQ,CAACoB,KAAK,CAACE,cAAc,CAAC;QACvD;QACA,IAAI,OAAOF,KAAK,CAACG,gBAAgB,KAAK,QAAQ,EAAE;UAC9CH,KAAK,CAACG,gBAAgB,GAAGvB,QAAQ,CAACoB,KAAK,CAACG,gBAAgB,CAAC;QAC3D;QACA,IAAI,OAAOH,KAAK,CAACI,QAAQ,KAAK,QAAQ,EAAE;UACtCJ,KAAK,CAACI,QAAQ,GAAGxB,QAAQ,CAACoB,KAAK,CAACI,QAAQ,CAAC;QAC3C;QACA,IAAI,OAAOJ,KAAK,CAACK,KAAK,KAAK,QAAQ,EAAE;UACnCL,KAAK,CAACK,KAAK,GAAGzB,QAAQ,CAACoB,KAAK,CAACK,KAAK,CAAC;QACrC;MACF,CAAC,CAAC;IACJ;IAEA,OAAOV,8BAA8B;EACvC;EAEA,OAAOW,sBAAsBA,CAACC,aAA4B,EAAiB;IACzE,IAAIA,aAAa,CAACC,KAAK,EAAE;MACvBD,aAAa,CAACC,KAAK,GAAGlC,UAAU,CAACY,aAAa,CAACqB,aAAa,CAACC,KAAK,CAAC;IACrE;IACA,OAAOD,aAAa;EACtB;AACF","ignoreList":[]}
|
|
@@ -13,6 +13,7 @@ export class HMSPermissions {
|
|
|
13
13
|
_defineProperty(this, "rtmpStreaming", void 0);
|
|
14
14
|
_defineProperty(this, "pollRead", void 0);
|
|
15
15
|
_defineProperty(this, "pollWrite", void 0);
|
|
16
|
+
_defineProperty(this, "whiteboard", void 0);
|
|
16
17
|
if (params) {
|
|
17
18
|
this.endRoom = params.endRoom;
|
|
18
19
|
this.removeOthers = params.removeOthers;
|
|
@@ -24,6 +25,7 @@ export class HMSPermissions {
|
|
|
24
25
|
this.rtmpStreaming = params.rtmpStreaming;
|
|
25
26
|
this.pollRead = params.pollRead;
|
|
26
27
|
this.pollWrite = params.pollWrite;
|
|
28
|
+
this.whiteboard = params.whiteboard;
|
|
27
29
|
}
|
|
28
30
|
}
|
|
29
31
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["HMSPermissions","constructor","params","_defineProperty","endRoom","removeOthers","unmute","mute","changeRole","browserRecording","hlsStreaming","rtmpStreaming","pollRead","pollWrite"],"sources":["HMSPermissions.ts"],"sourcesContent":["export class HMSPermissions {\n endRoom?: boolean;\n removeOthers?: boolean;\n unmute?: boolean;\n mute?: boolean;\n changeRole?: boolean;\n browserRecording?: boolean;\n hlsStreaming?: boolean;\n rtmpStreaming?: boolean;\n pollRead?: boolean;\n pollWrite?: boolean;\n\n constructor(params?: {\n endRoom?: boolean;\n removeOthers?: boolean;\n unmute?: boolean;\n mute?: boolean;\n changeRole?: boolean;\n browserRecording?: boolean;\n hlsStreaming?: boolean;\n rtmpStreaming?: boolean;\n pollRead?: boolean;\n pollWrite?: boolean;\n }) {\n if (params) {\n this.endRoom = params.endRoom;\n this.removeOthers = params.removeOthers;\n this.unmute = params.unmute;\n this.mute = params.mute;\n this.changeRole = params.changeRole;\n this.browserRecording = params.browserRecording;\n this.hlsStreaming = params.hlsStreaming;\n this.rtmpStreaming = params.rtmpStreaming;\n this.pollRead = params.pollRead;\n this.pollWrite = params.pollWrite;\n }\n }\n}\n"],"mappings":";;;
|
|
1
|
+
{"version":3,"names":["HMSPermissions","constructor","params","_defineProperty","endRoom","removeOthers","unmute","mute","changeRole","browserRecording","hlsStreaming","rtmpStreaming","pollRead","pollWrite","whiteboard"],"sources":["HMSPermissions.ts"],"sourcesContent":["export interface HMSWhiteboardPermission {\n admin?: boolean;\n write?: boolean;\n read?: boolean;\n}\n\nexport class HMSPermissions {\n endRoom?: boolean;\n removeOthers?: boolean;\n unmute?: boolean;\n mute?: boolean;\n changeRole?: boolean;\n browserRecording?: boolean;\n hlsStreaming?: boolean;\n rtmpStreaming?: boolean;\n pollRead?: boolean;\n pollWrite?: boolean;\n whiteboard?: HMSWhiteboardPermission;\n\n constructor(params?: {\n endRoom?: boolean;\n removeOthers?: boolean;\n unmute?: boolean;\n mute?: boolean;\n changeRole?: boolean;\n browserRecording?: boolean;\n hlsStreaming?: boolean;\n rtmpStreaming?: boolean;\n pollRead?: boolean;\n pollWrite?: boolean;\n whiteboard?: HMSWhiteboardPermission;\n }) {\n if (params) {\n this.endRoom = params.endRoom;\n this.removeOthers = params.removeOthers;\n this.unmute = params.unmute;\n this.mute = params.mute;\n this.changeRole = params.changeRole;\n this.browserRecording = params.browserRecording;\n this.hlsStreaming = params.hlsStreaming;\n this.rtmpStreaming = params.rtmpStreaming;\n this.pollRead = params.pollRead;\n this.pollWrite = params.pollWrite;\n this.whiteboard = params.whiteboard;\n }\n }\n}\n"],"mappings":";;;AAMA,OAAO,MAAMA,cAAc,CAAC;EAa1BC,WAAWA,CAACC,MAYX,EAAE;IAAAC,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IAAAA,eAAA;IACD,IAAID,MAAM,EAAE;MACV,IAAI,CAACE,OAAO,GAAGF,MAAM,CAACE,OAAO;MAC7B,IAAI,CAACC,YAAY,GAAGH,MAAM,CAACG,YAAY;MACvC,IAAI,CAACC,MAAM,GAAGJ,MAAM,CAACI,MAAM;MAC3B,IAAI,CAACC,IAAI,GAAGL,MAAM,CAACK,IAAI;MACvB,IAAI,CAACC,UAAU,GAAGN,MAAM,CAACM,UAAU;MACnC,IAAI,CAACC,gBAAgB,GAAGP,MAAM,CAACO,gBAAgB;MAC/C,IAAI,CAACC,YAAY,GAAGR,MAAM,CAACQ,YAAY;MACvC,IAAI,CAACC,aAAa,GAAGT,MAAM,CAACS,aAAa;MACzC,IAAI,CAACC,QAAQ,GAAGV,MAAM,CAACU,QAAQ;MAC/B,IAAI,CAACC,SAAS,GAAGX,MAAM,CAACW,SAAS;MACjC,IAAI,CAACC,UAAU,GAAGZ,MAAM,CAACY,UAAU;IACrC;EACF;AACF","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["HMSWhiteboard.tsx"],"sourcesContent":["import type { HMSPeer } from '../HMSPeer';\nimport type { HMSWhiteboardState } from './HMSWhiteboardState';\n\nexport interface HMSWhiteboard {\n id: string;\n\n title?: string;\n\n state: HMSWhiteboardState;\n\n isOwner: boolean;\n\n owner?: HMSPeer;\n\n url?: string;\n}\n"],"mappings":"","ignoreList":[]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export let HMSWhiteboardListenerActions = /*#__PURE__*/function (HMSWhiteboardListenerActions) {
|
|
2
|
+
HMSWhiteboardListenerActions["ON_WHITEBOARD_UPDATE"] = "ON_WHITEBOARD_UPDATE";
|
|
3
|
+
return HMSWhiteboardListenerActions;
|
|
4
|
+
}({});
|
|
5
|
+
//# sourceMappingURL=HMSWhiteboardListenerActions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["HMSWhiteboardListenerActions"],"sources":["HMSWhiteboardListenerActions.ts"],"sourcesContent":["export enum HMSWhiteboardListenerActions {\n ON_WHITEBOARD_UPDATE = 'ON_WHITEBOARD_UPDATE',\n}\n"],"mappings":"AAAA,WAAYA,4BAA4B,0BAA5BA,4BAA4B;EAA5BA,4BAA4B;EAAA,OAA5BA,4BAA4B;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["HMSWhiteboardState"],"sources":["HMSWhiteboardState.tsx"],"sourcesContent":["export enum HMSWhiteboardState {\n STARTED = 'STARTED',\n STOPPED = 'STOPPED',\n}\n"],"mappings":"AAAA,WAAYA,kBAAkB,0BAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAlBA,kBAAkB;EAAA,OAAlBA,kBAAkB;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export let HMSWhiteboardUpdateType = /*#__PURE__*/function (HMSWhiteboardUpdateType) {
|
|
2
|
+
HMSWhiteboardUpdateType["STARTED"] = "STARTED";
|
|
3
|
+
HMSWhiteboardUpdateType["STOPPED"] = "STOPPED";
|
|
4
|
+
return HMSWhiteboardUpdateType;
|
|
5
|
+
}({});
|
|
6
|
+
//# sourceMappingURL=HMSWhiteboardUpdateType.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["HMSWhiteboardUpdateType"],"sources":["HMSWhiteboardUpdateType.tsx"],"sourcesContent":["export enum HMSWhiteboardUpdateType {\n STARTED = 'STARTED',\n STOPPED = 'STOPPED',\n}\n"],"mappings":"AAAA,WAAYA,uBAAuB,0BAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAvBA,uBAAuB;EAAA,OAAvBA,uBAAuB;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from './HMSWhiteboard';\nexport * from './HMSWhiteboardUpdateType';\nexport * from './HMSWhiteboardListenerActions';\n"],"mappings":"AAAA,cAAc,iBAAiB;AAC/B,cAAc,2BAA2B;AACzC,cAAc,gCAAgC","ignoreList":[]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { HMSConstants } from '../HMSConstants';
|
|
2
|
+
import HMSNativeEventListener from '../HMSNativeEventListener';
|
|
3
|
+
import { HMSWhiteboardListenerActions } from './HMSWhiteboardListenerActions';
|
|
4
|
+
let whiteboardUpdateSubscription = null;
|
|
5
|
+
export function registerWhiteboardUpdateListener(listener) {
|
|
6
|
+
if (whiteboardUpdateSubscription !== null) {
|
|
7
|
+
return;
|
|
8
|
+
}
|
|
9
|
+
whiteboardUpdateSubscription = HMSNativeEventListener.addListener(HMSConstants.DEFAULT_SDK_ID, HMSWhiteboardListenerActions.ON_WHITEBOARD_UPDATE, listener);
|
|
10
|
+
}
|
|
11
|
+
export function unregisterWhiteboardUpdateListener() {
|
|
12
|
+
if (whiteboardUpdateSubscription === null) {
|
|
13
|
+
return;
|
|
14
|
+
}
|
|
15
|
+
whiteboardUpdateSubscription.remove();
|
|
16
|
+
whiteboardUpdateSubscription = null;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=registerCallbacks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["HMSConstants","HMSNativeEventListener","HMSWhiteboardListenerActions","whiteboardUpdateSubscription","registerWhiteboardUpdateListener","listener","addListener","DEFAULT_SDK_ID","ON_WHITEBOARD_UPDATE","unregisterWhiteboardUpdateListener","remove"],"sources":["registerCallbacks.ts"],"sourcesContent":["import { HMSConstants } from '../HMSConstants';\nimport type { HMSEventSubscription } from '../HMSNativeEventEmitter';\nimport HMSNativeEventListener from '../HMSNativeEventListener';\nimport type { HMSWhiteboard } from './HMSWhiteboard';\nimport { HMSWhiteboardListenerActions } from './HMSWhiteboardListenerActions';\nimport type { HMSWhiteboardUpdateType } from './HMSWhiteboardUpdateType';\n\nexport type WhiteboardUpdateListener = (data: {\n hmsWhiteboard: HMSWhiteboard;\n updateType: HMSWhiteboardUpdateType;\n}) => void;\n\nlet whiteboardUpdateSubscription: null | HMSEventSubscription = null;\n\nexport function registerWhiteboardUpdateListener(\n listener: WhiteboardUpdateListener\n) {\n if (whiteboardUpdateSubscription !== null) {\n return;\n }\n whiteboardUpdateSubscription = HMSNativeEventListener.addListener(\n HMSConstants.DEFAULT_SDK_ID,\n HMSWhiteboardListenerActions.ON_WHITEBOARD_UPDATE,\n listener\n );\n}\n\nexport function unregisterWhiteboardUpdateListener() {\n if (whiteboardUpdateSubscription === null) {\n return;\n }\n whiteboardUpdateSubscription.remove();\n whiteboardUpdateSubscription = null;\n}\n"],"mappings":"AAAA,SAASA,YAAY,QAAQ,iBAAiB;AAE9C,OAAOC,sBAAsB,MAAM,2BAA2B;AAE9D,SAASC,4BAA4B,QAAQ,gCAAgC;AAQ7E,IAAIC,4BAAyD,GAAG,IAAI;AAEpE,OAAO,SAASC,gCAAgCA,CAC9CC,QAAkC,EAClC;EACA,IAAIF,4BAA4B,KAAK,IAAI,EAAE;IACzC;EACF;EACAA,4BAA4B,GAAGF,sBAAsB,CAACK,WAAW,CAC/DN,YAAY,CAACO,cAAc,EAC3BL,4BAA4B,CAACM,oBAAoB,EACjDH,QACF,CAAC;AACH;AAEA,OAAO,SAASI,kCAAkCA,CAAA,EAAG;EACnD,IAAIN,4BAA4B,KAAK,IAAI,EAAE;IACzC;EACF;EACAA,4BAA4B,CAACO,MAAM,CAAC,CAAC;EACrCP,4BAA4B,GAAG,IAAI;AACrC","ignoreList":[]}
|
package/lib/module/index.js
CHANGED
|
@@ -86,6 +86,7 @@ export * from './classes/HMSStreamingState';
|
|
|
86
86
|
export * from './classes/HMSHLSPlaylistType';
|
|
87
87
|
export { HMSRecordingState } from './classes/HMSRecordingState';
|
|
88
88
|
export * from './classes/HMSNoiseCancellationPlugin';
|
|
89
|
+
export * from './classes/whiteboard';
|
|
89
90
|
export { HMSPollQuestionType } from './classes/polls/HMSPollQuestionType';
|
|
90
91
|
export { HMSPollType } from './classes/polls/HMSPollType';
|
|
91
92
|
export { HMSPollUserTrackingMode } from './classes/polls/HMSPollUserTrackingMode';
|
package/lib/module/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["HMSRecordingState","HMSPollQuestionType","HMSPollType","HMSPollUserTrackingMode","HMSPollUpdateType","HMSPollState","HMSPollQuestion","HMSPollQuestionOption","HMSPollQuestionAnswer","HMSPollQuestionResponse","PollLeaderboardResponse","HMSPollLeaderboardEntry","HMSPollLeaderboardSummary","HMSSDK","HmsManager","default","HMSManagerModule","useHmsViewsResolutionsState","checkNotifications"],"sources":["index.ts"],"sourcesContent":["export * from './classes/HMSConfig';\nexport * from './classes/HMSUpdateListenerActions';\nexport * from './classes/HMSMessage';\nexport * from './classes/HMSVideoTrackSettings';\nexport * from './classes/HMSVideoTrack';\nexport * from './classes/HMSVideoSettings';\nexport * from './classes/HMSVideoCodec';\nexport * from './classes/HMSTrackSettings';\nexport * from './classes/HMSTrack';\nexport * from './classes/HMSTrackType';\nexport * from './classes/HMSTrackSource';\nexport * from './classes/HMSSubscribeSettings';\nexport * from './classes/HMSSimulcastSettings';\nexport * from './classes/HMSSimulcastLayerSettings';\nexport * from './classes/HMSSDK';\nexport * from './classes/HMSRoom';\nexport * from './classes/HMSRoleChangeRequest';\nexport * from './classes/HMSRole';\nexport * from './classes/HMSRemoteVideoTrack';\nexport * from './classes/HMSRemotePeer';\nexport * from './classes/HMSRemoteAudioTrack';\nexport * from './classes/HMSPublishSettings';\nexport * from './classes/HMSPermissions';\nexport * from './classes/HMSPeer';\nexport * from './classes/HMSPeerType';\nexport * from './classes/HMSLocalVideoTrack';\nexport * from './classes/HMSLocalPeer';\nexport * from './classes/HMSLocalAudioTrack';\nexport * from './classes/HMSHelper';\nexport * from './classes/HMSEncoder';\nexport * from './classes/HMSAudioTrackSettings';\nexport * from './classes/HMSAudioTrack';\nexport * from './classes/HMSAudioSettings';\nexport * from './classes/HMSAudioCodec';\nexport * from './classes/HMSPeerUpdate';\nexport * from './classes/HMSRoomUpdate';\nexport * from './classes/HMSTrackUpdate';\nexport * from './classes/HMSLogger';\nexport * from './classes/HMSLogLevel';\nexport * from './classes/HMSVideoViewMode';\nexport * from './classes/HMSChangeTrackStateRequest';\nexport * from './classes/HMSSpeaker';\nexport * from './classes/HMSCameraFacing';\nexport * from './classes/HMSException';\nexport * from './classes/HMSRtmpStreamingState';\nexport * from './classes/HMSServerRecordingState';\nexport * from './classes/HMSBrowserRecordingState';\nexport * from './classes/HMSRTMPConfig';\nexport * from './classes/HMSHLSConfig';\nexport * from './classes/HMSHLSMeetingURLVariant';\nexport * from './classes/HMSHLSVariant';\nexport * from './classes/HMSHLSStreamingState';\nexport * from './classes/HMSVideoResolution';\nexport * from './classes/HMSLocalAudioStats';\nexport * from './classes/HMSLocalVideoStats';\nexport * from './classes/HMSRTCStats';\nexport * from './classes/HMSRTCStatsReport';\nexport * from './classes/HMSRemoteAudioStats';\nexport * from './classes/HMSRemoteVideoStats';\nexport * from './classes/HMSHLSRecordingConfig';\nexport * from './classes/HMSHLSRecordingState';\nexport * from './classes/HMSMessageRecipient';\nexport * from './classes/HMSMessageRecipientType';\nexport * from './classes/HMSNetworkQuality';\nexport * from './classes/HMSRtmpVideoResolution';\nexport * from './classes/HMSAudioDevice';\nexport * from './classes/HMSAudioMode';\nexport * from './classes/HMSAudioMixingMode';\nexport * from './classes/HMSAudioNode';\nexport * from './classes/HMSMicNode';\nexport * from './classes/HMSScreenBroadcastAudioReceiverNode';\nexport * from './classes/HMSAudioFilePlayerNode';\nexport * from './classes/HMSAudioMixerSource';\nexport * from './classes/HMSTrackSettingsInitState';\nexport * from './classes/HMSLogSettings';\nexport * from './classes/HMSLogAlarmManager';\nexport * from './classes/HMSPIPListenerActions';\nexport * from './classes/HMSLayer';\nexport * from './classes/HMSSimulcastLayerDefinition';\nexport * from './classes/HMSQualityLimitationReasons';\nexport * from './classes/HMSQualityLimitationReason';\nexport * from './classes/HMSCameraControl';\nexport * from './classes/HMSIOSAudioMode';\nexport * from './classes/HMSRecordingState';\nexport * from './classes/HMSStreamingState';\nexport * from './classes/HMSHLSPlaylistType';\nexport type {\n HMSSessionStore,\n JsonArray,\n JsonMap,\n JsonPrimitive,\n JsonValue,\n} from './classes/HMSSessionStore';\nexport type {\n HmsViewComponent as HMSView,\n HmsComponentProps as HMSViewProps,\n} from './classes/HmsView';\nexport type { HMSPIPConfig } from './classes/HMSPIPConfig';\nexport { HMSRecordingState } from './classes/HMSRecordingState';\nexport type { HMSPoll } from './classes/polls/HMSPoll';\nexport * from './classes/HMSNoiseCancellationPlugin';\n\nexport { HMSPollQuestionType } from './classes/polls/HMSPollQuestionType';\nexport { HMSPollType } from './classes/polls/HMSPollType';\nexport { HMSPollUserTrackingMode } from './classes/polls/HMSPollUserTrackingMode';\nexport { HMSPollUpdateType } from './classes/polls/HMSPollUpdateType';\nexport { HMSPollState } from './classes/polls/HMSPollState';\nexport { HMSPollQuestion } from './classes/polls/HMSPollQuestion';\nexport { HMSPollQuestionOption } from './classes/polls/HMSPollQuestionOption';\nexport { HMSPollQuestionAnswer } from './classes/polls/HMSPollQuestionAnswer';\nexport { HMSPollQuestionResponse } from './classes/polls/HMSPollQuestionResponse';\nexport { PollLeaderboardResponse } from './classes/polls/PollLeaderboardResponse';\nexport { HMSPollLeaderboardEntry } from './classes/polls/HMSPollLeaderboardEntry';\nexport { HMSPollLeaderboardSummary } from './classes/polls/HMSPollLeaderboardSummary';\n\nimport { HMSSDK as HmsManager } from './classes/HMSSDK';\n\n// 100ms React Native Module\nexport { default as HMSManagerModule } from './modules/HMSManagerModule';\n\n// 100ms Components\nexport * from './components/HMSHLSPlayer';\n\n// 100ms Hooks\nexport * from './hooks/useHMSPeerUpdates';\nexport { useHmsViewsResolutionsState } from './hooks/hmsviews';\n\n// 100ms Utilities\nexport type { NotificationResult } from './utils/notification';\nexport { checkNotifications } from './utils/notification';\n\nexport * from './utils/windowController';\nexport * from './utils/keyboard';\n\n// 100ms types\nexport * from './types';\nexport * from './stores/types';\n\nexport default HmsManager;\n"],"mappings":"AAAA,cAAc,qBAAqB;AACnC,cAAc,oCAAoC;AAClD,cAAc,sBAAsB;AACpC,cAAc,iCAAiC;AAC/C,cAAc,yBAAyB;AACvC,cAAc,4BAA4B;AAC1C,cAAc,yBAAyB;AACvC,cAAc,4BAA4B;AAC1C,cAAc,oBAAoB;AAClC,cAAc,wBAAwB;AACtC,cAAc,0BAA0B;AACxC,cAAc,gCAAgC;AAC9C,cAAc,gCAAgC;AAC9C,cAAc,qCAAqC;AACnD,cAAc,kBAAkB;AAChC,cAAc,mBAAmB;AACjC,cAAc,gCAAgC;AAC9C,cAAc,mBAAmB;AACjC,cAAc,+BAA+B;AAC7C,cAAc,yBAAyB;AACvC,cAAc,+BAA+B;AAC7C,cAAc,8BAA8B;AAC5C,cAAc,0BAA0B;AACxC,cAAc,mBAAmB;AACjC,cAAc,uBAAuB;AACrC,cAAc,8BAA8B;AAC5C,cAAc,wBAAwB;AACtC,cAAc,8BAA8B;AAC5C,cAAc,qBAAqB;AACnC,cAAc,sBAAsB;AACpC,cAAc,iCAAiC;AAC/C,cAAc,yBAAyB;AACvC,cAAc,4BAA4B;AAC1C,cAAc,yBAAyB;AACvC,cAAc,yBAAyB;AACvC,cAAc,yBAAyB;AACvC,cAAc,0BAA0B;AACxC,cAAc,qBAAqB;AACnC,cAAc,uBAAuB;AACrC,cAAc,4BAA4B;AAC1C,cAAc,sCAAsC;AACpD,cAAc,sBAAsB;AACpC,cAAc,2BAA2B;AACzC,cAAc,wBAAwB;AACtC,cAAc,iCAAiC;AAC/C,cAAc,mCAAmC;AACjD,cAAc,oCAAoC;AAClD,cAAc,yBAAyB;AACvC,cAAc,wBAAwB;AACtC,cAAc,mCAAmC;AACjD,cAAc,yBAAyB;AACvC,cAAc,gCAAgC;AAC9C,cAAc,8BAA8B;AAC5C,cAAc,8BAA8B;AAC5C,cAAc,8BAA8B;AAC5C,cAAc,uBAAuB;AACrC,cAAc,6BAA6B;AAC3C,cAAc,+BAA+B;AAC7C,cAAc,+BAA+B;AAC7C,cAAc,iCAAiC;AAC/C,cAAc,gCAAgC;AAC9C,cAAc,+BAA+B;AAC7C,cAAc,mCAAmC;AACjD,cAAc,6BAA6B;AAC3C,cAAc,kCAAkC;AAChD,cAAc,0BAA0B;AACxC,cAAc,wBAAwB;AACtC,cAAc,8BAA8B;AAC5C,cAAc,wBAAwB;AACtC,cAAc,sBAAsB;AACpC,cAAc,+CAA+C;AAC7D,cAAc,kCAAkC;AAChD,cAAc,+BAA+B;AAC7C,cAAc,qCAAqC;AACnD,cAAc,0BAA0B;AACxC,cAAc,8BAA8B;AAC5C,cAAc,iCAAiC;AAC/C,cAAc,oBAAoB;AAClC,cAAc,uCAAuC;AACrD,cAAc,uCAAuC;AACrD,cAAc,sCAAsC;AACpD,cAAc,4BAA4B;AAC1C,cAAc,2BAA2B;AACzC,cAAc,6BAA6B;AAC3C,cAAc,6BAA6B;AAC3C,cAAc,8BAA8B;AAa5C,SAASA,iBAAiB,QAAQ,6BAA6B;AAE/D,cAAc,sCAAsC;
|
|
1
|
+
{"version":3,"names":["HMSRecordingState","HMSPollQuestionType","HMSPollType","HMSPollUserTrackingMode","HMSPollUpdateType","HMSPollState","HMSPollQuestion","HMSPollQuestionOption","HMSPollQuestionAnswer","HMSPollQuestionResponse","PollLeaderboardResponse","HMSPollLeaderboardEntry","HMSPollLeaderboardSummary","HMSSDK","HmsManager","default","HMSManagerModule","useHmsViewsResolutionsState","checkNotifications"],"sources":["index.ts"],"sourcesContent":["export * from './classes/HMSConfig';\nexport * from './classes/HMSUpdateListenerActions';\nexport * from './classes/HMSMessage';\nexport * from './classes/HMSVideoTrackSettings';\nexport * from './classes/HMSVideoTrack';\nexport * from './classes/HMSVideoSettings';\nexport * from './classes/HMSVideoCodec';\nexport * from './classes/HMSTrackSettings';\nexport * from './classes/HMSTrack';\nexport * from './classes/HMSTrackType';\nexport * from './classes/HMSTrackSource';\nexport * from './classes/HMSSubscribeSettings';\nexport * from './classes/HMSSimulcastSettings';\nexport * from './classes/HMSSimulcastLayerSettings';\nexport * from './classes/HMSSDK';\nexport * from './classes/HMSRoom';\nexport * from './classes/HMSRoleChangeRequest';\nexport * from './classes/HMSRole';\nexport * from './classes/HMSRemoteVideoTrack';\nexport * from './classes/HMSRemotePeer';\nexport * from './classes/HMSRemoteAudioTrack';\nexport * from './classes/HMSPublishSettings';\nexport * from './classes/HMSPermissions';\nexport * from './classes/HMSPeer';\nexport * from './classes/HMSPeerType';\nexport * from './classes/HMSLocalVideoTrack';\nexport * from './classes/HMSLocalPeer';\nexport * from './classes/HMSLocalAudioTrack';\nexport * from './classes/HMSHelper';\nexport * from './classes/HMSEncoder';\nexport * from './classes/HMSAudioTrackSettings';\nexport * from './classes/HMSAudioTrack';\nexport * from './classes/HMSAudioSettings';\nexport * from './classes/HMSAudioCodec';\nexport * from './classes/HMSPeerUpdate';\nexport * from './classes/HMSRoomUpdate';\nexport * from './classes/HMSTrackUpdate';\nexport * from './classes/HMSLogger';\nexport * from './classes/HMSLogLevel';\nexport * from './classes/HMSVideoViewMode';\nexport * from './classes/HMSChangeTrackStateRequest';\nexport * from './classes/HMSSpeaker';\nexport * from './classes/HMSCameraFacing';\nexport * from './classes/HMSException';\nexport * from './classes/HMSRtmpStreamingState';\nexport * from './classes/HMSServerRecordingState';\nexport * from './classes/HMSBrowserRecordingState';\nexport * from './classes/HMSRTMPConfig';\nexport * from './classes/HMSHLSConfig';\nexport * from './classes/HMSHLSMeetingURLVariant';\nexport * from './classes/HMSHLSVariant';\nexport * from './classes/HMSHLSStreamingState';\nexport * from './classes/HMSVideoResolution';\nexport * from './classes/HMSLocalAudioStats';\nexport * from './classes/HMSLocalVideoStats';\nexport * from './classes/HMSRTCStats';\nexport * from './classes/HMSRTCStatsReport';\nexport * from './classes/HMSRemoteAudioStats';\nexport * from './classes/HMSRemoteVideoStats';\nexport * from './classes/HMSHLSRecordingConfig';\nexport * from './classes/HMSHLSRecordingState';\nexport * from './classes/HMSMessageRecipient';\nexport * from './classes/HMSMessageRecipientType';\nexport * from './classes/HMSNetworkQuality';\nexport * from './classes/HMSRtmpVideoResolution';\nexport * from './classes/HMSAudioDevice';\nexport * from './classes/HMSAudioMode';\nexport * from './classes/HMSAudioMixingMode';\nexport * from './classes/HMSAudioNode';\nexport * from './classes/HMSMicNode';\nexport * from './classes/HMSScreenBroadcastAudioReceiverNode';\nexport * from './classes/HMSAudioFilePlayerNode';\nexport * from './classes/HMSAudioMixerSource';\nexport * from './classes/HMSTrackSettingsInitState';\nexport * from './classes/HMSLogSettings';\nexport * from './classes/HMSLogAlarmManager';\nexport * from './classes/HMSPIPListenerActions';\nexport * from './classes/HMSLayer';\nexport * from './classes/HMSSimulcastLayerDefinition';\nexport * from './classes/HMSQualityLimitationReasons';\nexport * from './classes/HMSQualityLimitationReason';\nexport * from './classes/HMSCameraControl';\nexport * from './classes/HMSIOSAudioMode';\nexport * from './classes/HMSRecordingState';\nexport * from './classes/HMSStreamingState';\nexport * from './classes/HMSHLSPlaylistType';\nexport type {\n HMSSessionStore,\n JsonArray,\n JsonMap,\n JsonPrimitive,\n JsonValue,\n} from './classes/HMSSessionStore';\nexport type {\n HmsViewComponent as HMSView,\n HmsComponentProps as HMSViewProps,\n} from './classes/HmsView';\nexport type { HMSPIPConfig } from './classes/HMSPIPConfig';\nexport { HMSRecordingState } from './classes/HMSRecordingState';\nexport type { HMSPoll } from './classes/polls/HMSPoll';\nexport * from './classes/HMSNoiseCancellationPlugin';\nexport * from './classes/whiteboard';\n\nexport { HMSPollQuestionType } from './classes/polls/HMSPollQuestionType';\nexport { HMSPollType } from './classes/polls/HMSPollType';\nexport { HMSPollUserTrackingMode } from './classes/polls/HMSPollUserTrackingMode';\nexport { HMSPollUpdateType } from './classes/polls/HMSPollUpdateType';\nexport { HMSPollState } from './classes/polls/HMSPollState';\nexport { HMSPollQuestion } from './classes/polls/HMSPollQuestion';\nexport { HMSPollQuestionOption } from './classes/polls/HMSPollQuestionOption';\nexport { HMSPollQuestionAnswer } from './classes/polls/HMSPollQuestionAnswer';\nexport { HMSPollQuestionResponse } from './classes/polls/HMSPollQuestionResponse';\nexport { PollLeaderboardResponse } from './classes/polls/PollLeaderboardResponse';\nexport { HMSPollLeaderboardEntry } from './classes/polls/HMSPollLeaderboardEntry';\nexport { HMSPollLeaderboardSummary } from './classes/polls/HMSPollLeaderboardSummary';\n\nimport { HMSSDK as HmsManager } from './classes/HMSSDK';\n\n// 100ms React Native Module\nexport { default as HMSManagerModule } from './modules/HMSManagerModule';\n\n// 100ms Components\nexport * from './components/HMSHLSPlayer';\n\n// 100ms Hooks\nexport * from './hooks/useHMSPeerUpdates';\nexport { useHmsViewsResolutionsState } from './hooks/hmsviews';\n\n// 100ms Utilities\nexport type { NotificationResult } from './utils/notification';\nexport { checkNotifications } from './utils/notification';\n\nexport * from './utils/windowController';\nexport * from './utils/keyboard';\n\n// 100ms types\nexport * from './types';\nexport * from './stores/types';\n\nexport default HmsManager;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -2,6 +2,8 @@ import type { HMSPoll } from './polls/HMSPoll';
|
|
|
2
2
|
import type { HMSPollCreateParams } from './polls/HMSPollCreateParams';
|
|
3
3
|
import type { HMSPollUpdateType } from './polls/HMSPollUpdateType';
|
|
4
4
|
import type { PollLeaderboardResponse } from './polls/PollLeaderboardResponse';
|
|
5
|
+
import type { HMSWhiteboardUpdateType } from './whiteboard/HMSWhiteboardUpdateType';
|
|
6
|
+
import type { HMSWhiteboard } from './whiteboard/HMSWhiteboard';
|
|
5
7
|
type PollQuestionResponseCreateParams = {
|
|
6
8
|
pollId: string;
|
|
7
9
|
pollQuestionIndex: number;
|
|
@@ -15,9 +17,9 @@ type PollQuestionResponseCreateParams = {
|
|
|
15
17
|
};
|
|
16
18
|
export declare class HMSInteractivityCenter {
|
|
17
19
|
private _eventEmitter;
|
|
18
|
-
private
|
|
19
|
-
private _onAllPollUpdateListenerRemoved;
|
|
20
|
+
private onUpdateListenerRemoved;
|
|
20
21
|
constructor();
|
|
22
|
+
private _pollUpdateListener;
|
|
21
23
|
/**
|
|
22
24
|
* Adds a listener for poll updates
|
|
23
25
|
* @param listener - Callback to be called when a poll is updated
|
|
@@ -41,5 +43,20 @@ export declare class HMSInteractivityCenter {
|
|
|
41
43
|
* @returns Promise<PollLeaderboardResponse>
|
|
42
44
|
*/
|
|
43
45
|
fetchLeaderboard(pollId: string, count: number, startIndex: number, includeCurrentPeer: boolean): Promise<PollLeaderboardResponse>;
|
|
46
|
+
private _whiteboardUpdateListener;
|
|
47
|
+
/**
|
|
48
|
+
* Adds a listener for Whiteboard updates
|
|
49
|
+
* @param listener - Callback to be called when whiteboard is updated
|
|
50
|
+
* @returns HMSEventSubscription
|
|
51
|
+
*/
|
|
52
|
+
addWhiteboardUpdateListener(listener: (hmsWhiteboard: HMSWhiteboard, updateType: HMSWhiteboardUpdateType) => void): import("../utils").EmitterSubscription;
|
|
53
|
+
/**
|
|
54
|
+
* Starts Whiteboard
|
|
55
|
+
*/
|
|
56
|
+
startWhiteboard(title: string): Promise<any>;
|
|
57
|
+
/**
|
|
58
|
+
* Stops Whiteboard
|
|
59
|
+
*/
|
|
60
|
+
stopWhiteboard(): Promise<any>;
|
|
44
61
|
}
|
|
45
62
|
export {};
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import type { DecodedPollLeaderboardResponse } from './polls/DecodedPollLeaderboardResponse';
|
|
2
2
|
import type { HMSPoll } from './polls/HMSPoll';
|
|
3
3
|
import type { PollLeaderboardResponse } from './polls/PollLeaderboardResponse';
|
|
4
|
+
import type { HMSWhiteboard } from './whiteboard/HMSWhiteboard';
|
|
4
5
|
export declare class HMSInteractivityEncoder {
|
|
5
6
|
static transformPoll(poll: HMSPoll): HMSPoll;
|
|
6
7
|
static transformPollLeaderboardResponse(decodedPollLeaderboardResponse: DecodedPollLeaderboardResponse): PollLeaderboardResponse;
|
|
8
|
+
static transformHMSWhiteboard(hmsWhiteboard: HMSWhiteboard): HMSWhiteboard;
|
|
7
9
|
}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
export interface HMSWhiteboardPermission {
|
|
2
|
+
admin?: boolean;
|
|
3
|
+
write?: boolean;
|
|
4
|
+
read?: boolean;
|
|
5
|
+
}
|
|
1
6
|
export declare class HMSPermissions {
|
|
2
7
|
endRoom?: boolean;
|
|
3
8
|
removeOthers?: boolean;
|
|
@@ -9,6 +14,7 @@ export declare class HMSPermissions {
|
|
|
9
14
|
rtmpStreaming?: boolean;
|
|
10
15
|
pollRead?: boolean;
|
|
11
16
|
pollWrite?: boolean;
|
|
17
|
+
whiteboard?: HMSWhiteboardPermission;
|
|
12
18
|
constructor(params?: {
|
|
13
19
|
endRoom?: boolean;
|
|
14
20
|
removeOthers?: boolean;
|
|
@@ -20,5 +26,6 @@ export declare class HMSPermissions {
|
|
|
20
26
|
rtmpStreaming?: boolean;
|
|
21
27
|
pollRead?: boolean;
|
|
22
28
|
pollWrite?: boolean;
|
|
29
|
+
whiteboard?: HMSWhiteboardPermission;
|
|
23
30
|
});
|
|
24
31
|
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { HMSPeer } from '../HMSPeer';
|
|
2
|
+
import type { HMSWhiteboardState } from './HMSWhiteboardState';
|
|
3
|
+
export interface HMSWhiteboard {
|
|
4
|
+
id: string;
|
|
5
|
+
title?: string;
|
|
6
|
+
state: HMSWhiteboardState;
|
|
7
|
+
isOwner: boolean;
|
|
8
|
+
owner?: HMSPeer;
|
|
9
|
+
url?: string;
|
|
10
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { HMSWhiteboard } from './HMSWhiteboard';
|
|
2
|
+
import type { HMSWhiteboardUpdateType } from './HMSWhiteboardUpdateType';
|
|
3
|
+
export type WhiteboardUpdateListener = (data: {
|
|
4
|
+
hmsWhiteboard: HMSWhiteboard;
|
|
5
|
+
updateType: HMSWhiteboardUpdateType;
|
|
6
|
+
}) => void;
|
|
7
|
+
export declare function registerWhiteboardUpdateListener(listener: WhiteboardUpdateListener): void;
|
|
8
|
+
export declare function unregisterWhiteboardUpdateListener(): void;
|
|
@@ -90,6 +90,7 @@ export type { HMSPIPConfig } from './classes/HMSPIPConfig';
|
|
|
90
90
|
export { HMSRecordingState } from './classes/HMSRecordingState';
|
|
91
91
|
export type { HMSPoll } from './classes/polls/HMSPoll';
|
|
92
92
|
export * from './classes/HMSNoiseCancellationPlugin';
|
|
93
|
+
export * from './classes/whiteboard';
|
|
93
94
|
export { HMSPollQuestionType } from './classes/polls/HMSPollQuestionType';
|
|
94
95
|
export { HMSPollType } from './classes/polls/HMSPollType';
|
|
95
96
|
export { HMSPollUserTrackingMode } from './classes/polls/HMSPollUserTrackingMode';
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@100mslive/react-native-hms",
|
|
3
|
-
"version": "1.10.
|
|
3
|
+
"version": "1.10.5",
|
|
4
4
|
"description": "Integrate Real Time Audio and Video conferencing, Interactive Live Streaming, and Chat in your apps with 100ms React Native SDK. With support for HLS and RTMP Live Streaming and Recording, Picture-in-Picture (PiP), one-to-one Video Call Modes, Audio Rooms, Video Player and much more, add immersive real-time communications to your apps.",
|
|
5
5
|
"main": "lib/commonjs/index",
|
|
6
6
|
"module": "lib/module/index",
|
package/sdk-versions.json
CHANGED
|
@@ -12,6 +12,14 @@ import { HMSInteractivityEncoder } from './HMSInteractivityEncoder';
|
|
|
12
12
|
import { HMSHelper } from './HMSHelper';
|
|
13
13
|
import type { PollLeaderboardResponse } from './polls/PollLeaderboardResponse';
|
|
14
14
|
import type { DecodedPollLeaderboardResponse } from './polls/DecodedPollLeaderboardResponse';
|
|
15
|
+
import type { HMSWhiteboardUpdateType } from './whiteboard/HMSWhiteboardUpdateType';
|
|
16
|
+
import type { HMSWhiteboard } from './whiteboard/HMSWhiteboard';
|
|
17
|
+
import { HMSWhiteboardListenerActions } from './whiteboard/HMSWhiteboardListenerActions';
|
|
18
|
+
import {
|
|
19
|
+
WhiteboardUpdateListener,
|
|
20
|
+
registerWhiteboardUpdateListener,
|
|
21
|
+
unregisterWhiteboardUpdateListener,
|
|
22
|
+
} from './whiteboard/registerCallbacks';
|
|
15
23
|
|
|
16
24
|
type PollUpdateListener = (data: {
|
|
17
25
|
updatedPoll: HMSPoll;
|
|
@@ -56,6 +64,26 @@ function unregisterPollUpdateListener() {
|
|
|
56
64
|
export class HMSInteractivityCenter {
|
|
57
65
|
private _eventEmitter = new EventEmitter();
|
|
58
66
|
|
|
67
|
+
private onUpdateListenerRemoved(eventType: string) {
|
|
68
|
+
if (eventType === HMSPollsListenerActions.ON_POLL_UPDATE) {
|
|
69
|
+
unregisterPollUpdateListener();
|
|
70
|
+
} else if (
|
|
71
|
+
eventType === HMSWhiteboardListenerActions.ON_WHITEBOARD_UPDATE
|
|
72
|
+
) {
|
|
73
|
+
unregisterWhiteboardUpdateListener();
|
|
74
|
+
} else {
|
|
75
|
+
console.warn('Unknown update listener removed: ', eventType);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
constructor() {
|
|
80
|
+
this._eventEmitter.registerOnAllListenersRemoved(
|
|
81
|
+
this.onUpdateListenerRemoved
|
|
82
|
+
);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
//#region Poll Methods & Listeners
|
|
86
|
+
|
|
59
87
|
private _pollUpdateListener = (...args: Parameters<PollUpdateListener>) => {
|
|
60
88
|
const { updatedPoll, update } = args[0];
|
|
61
89
|
logger?.verbose('#Listener ON_POLL_UPDATE', {
|
|
@@ -69,16 +97,6 @@ export class HMSInteractivityCenter {
|
|
|
69
97
|
);
|
|
70
98
|
};
|
|
71
99
|
|
|
72
|
-
private _onAllPollUpdateListenerRemoved = () => {
|
|
73
|
-
unregisterPollUpdateListener();
|
|
74
|
-
};
|
|
75
|
-
|
|
76
|
-
constructor() {
|
|
77
|
-
this._eventEmitter.registerOnAllListenersRemoved(
|
|
78
|
-
this._onAllPollUpdateListenerRemoved
|
|
79
|
-
);
|
|
80
|
-
}
|
|
81
|
-
|
|
82
100
|
/**
|
|
83
101
|
* Adds a listener for poll updates
|
|
84
102
|
* @param listener - Callback to be called when a poll is updated
|
|
@@ -164,4 +182,65 @@ export class HMSInteractivityCenter {
|
|
|
164
182
|
await HMSManager.fetchLeaderboard(data);
|
|
165
183
|
return HMSInteractivityEncoder.transformPollLeaderboardResponse(response);
|
|
166
184
|
}
|
|
185
|
+
//#endregion Poll Methods & Listeners
|
|
186
|
+
|
|
187
|
+
//#region Whiteboard Methods & Listeners
|
|
188
|
+
|
|
189
|
+
private _whiteboardUpdateListener = (
|
|
190
|
+
...args: Parameters<WhiteboardUpdateListener>
|
|
191
|
+
) => {
|
|
192
|
+
const { hmsWhiteboard, updateType } = args[0];
|
|
193
|
+
logger?.verbose('#Listener ON_WHITEBOARD_UPDATE', {
|
|
194
|
+
updateType,
|
|
195
|
+
hmsWhiteboard,
|
|
196
|
+
});
|
|
197
|
+
this._eventEmitter.emit(
|
|
198
|
+
HMSWhiteboardListenerActions.ON_WHITEBOARD_UPDATE,
|
|
199
|
+
HMSInteractivityEncoder.transformHMSWhiteboard(hmsWhiteboard),
|
|
200
|
+
updateType
|
|
201
|
+
);
|
|
202
|
+
};
|
|
203
|
+
|
|
204
|
+
/**
|
|
205
|
+
* Adds a listener for Whiteboard updates
|
|
206
|
+
* @param listener - Callback to be called when whiteboard is updated
|
|
207
|
+
* @returns HMSEventSubscription
|
|
208
|
+
*/
|
|
209
|
+
addWhiteboardUpdateListener(
|
|
210
|
+
listener: (
|
|
211
|
+
hmsWhiteboard: HMSWhiteboard,
|
|
212
|
+
updateType: HMSWhiteboardUpdateType
|
|
213
|
+
) => void
|
|
214
|
+
) {
|
|
215
|
+
registerWhiteboardUpdateListener(this._whiteboardUpdateListener);
|
|
216
|
+
return this._eventEmitter.addListener(
|
|
217
|
+
HMSWhiteboardListenerActions.ON_WHITEBOARD_UPDATE,
|
|
218
|
+
listener,
|
|
219
|
+
null
|
|
220
|
+
);
|
|
221
|
+
}
|
|
222
|
+
|
|
223
|
+
/**
|
|
224
|
+
* Starts Whiteboard
|
|
225
|
+
*/
|
|
226
|
+
async startWhiteboard(title: string) {
|
|
227
|
+
const data = {
|
|
228
|
+
id: HMSConstants.DEFAULT_SDK_ID,
|
|
229
|
+
title,
|
|
230
|
+
};
|
|
231
|
+
logger?.verbose('#Function startWhiteboard', data);
|
|
232
|
+
return HMSManager.startWhiteboard(data);
|
|
233
|
+
}
|
|
234
|
+
|
|
235
|
+
/**
|
|
236
|
+
* Stops Whiteboard
|
|
237
|
+
*/
|
|
238
|
+
async stopWhiteboard() {
|
|
239
|
+
const data = {
|
|
240
|
+
id: HMSConstants.DEFAULT_SDK_ID,
|
|
241
|
+
};
|
|
242
|
+
logger?.verbose('#Function stopWhiteboard', data);
|
|
243
|
+
return HMSManager.stopWhiteboard(data);
|
|
244
|
+
}
|
|
245
|
+
//#endregion Whiteboard Methods & Listeners
|
|
167
246
|
}
|
|
@@ -2,6 +2,7 @@ import { HMSEncoder } from './HMSEncoder';
|
|
|
2
2
|
import type { DecodedPollLeaderboardResponse } from './polls/DecodedPollLeaderboardResponse';
|
|
3
3
|
import type { HMSPoll } from './polls/HMSPoll';
|
|
4
4
|
import type { PollLeaderboardResponse } from './polls/PollLeaderboardResponse';
|
|
5
|
+
import type { HMSWhiteboard } from './whiteboard/HMSWhiteboard';
|
|
5
6
|
|
|
6
7
|
export class HMSInteractivityEncoder {
|
|
7
8
|
static transformPoll(poll: HMSPoll): HMSPoll {
|
|
@@ -81,4 +82,11 @@ export class HMSInteractivityEncoder {
|
|
|
81
82
|
|
|
82
83
|
return decodedPollLeaderboardResponse as PollLeaderboardResponse;
|
|
83
84
|
}
|
|
85
|
+
|
|
86
|
+
static transformHMSWhiteboard(hmsWhiteboard: HMSWhiteboard): HMSWhiteboard {
|
|
87
|
+
if (hmsWhiteboard.owner) {
|
|
88
|
+
hmsWhiteboard.owner = HMSEncoder.encodeHmsPeer(hmsWhiteboard.owner);
|
|
89
|
+
}
|
|
90
|
+
return hmsWhiteboard;
|
|
91
|
+
}
|
|
84
92
|
}
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
export interface HMSWhiteboardPermission {
|
|
2
|
+
admin?: boolean;
|
|
3
|
+
write?: boolean;
|
|
4
|
+
read?: boolean;
|
|
5
|
+
}
|
|
6
|
+
|
|
1
7
|
export class HMSPermissions {
|
|
2
8
|
endRoom?: boolean;
|
|
3
9
|
removeOthers?: boolean;
|
|
@@ -9,6 +15,7 @@ export class HMSPermissions {
|
|
|
9
15
|
rtmpStreaming?: boolean;
|
|
10
16
|
pollRead?: boolean;
|
|
11
17
|
pollWrite?: boolean;
|
|
18
|
+
whiteboard?: HMSWhiteboardPermission;
|
|
12
19
|
|
|
13
20
|
constructor(params?: {
|
|
14
21
|
endRoom?: boolean;
|
|
@@ -21,6 +28,7 @@ export class HMSPermissions {
|
|
|
21
28
|
rtmpStreaming?: boolean;
|
|
22
29
|
pollRead?: boolean;
|
|
23
30
|
pollWrite?: boolean;
|
|
31
|
+
whiteboard?: HMSWhiteboardPermission;
|
|
24
32
|
}) {
|
|
25
33
|
if (params) {
|
|
26
34
|
this.endRoom = params.endRoom;
|
|
@@ -33,6 +41,7 @@ export class HMSPermissions {
|
|
|
33
41
|
this.rtmpStreaming = params.rtmpStreaming;
|
|
34
42
|
this.pollRead = params.pollRead;
|
|
35
43
|
this.pollWrite = params.pollWrite;
|
|
44
|
+
this.whiteboard = params.whiteboard;
|
|
36
45
|
}
|
|
37
46
|
}
|
|
38
47
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { HMSPeer } from '../HMSPeer';
|
|
2
|
+
import type { HMSWhiteboardState } from './HMSWhiteboardState';
|
|
3
|
+
|
|
4
|
+
export interface HMSWhiteboard {
|
|
5
|
+
id: string;
|
|
6
|
+
|
|
7
|
+
title?: string;
|
|
8
|
+
|
|
9
|
+
state: HMSWhiteboardState;
|
|
10
|
+
|
|
11
|
+
isOwner: boolean;
|
|
12
|
+
|
|
13
|
+
owner?: HMSPeer;
|
|
14
|
+
|
|
15
|
+
url?: string;
|
|
16
|
+
}
|