UNPKG

mediasfu-reactnative-expo

Version:

mediasfu-reactnative-expo – Expo-managed React Native WebRTC SDK for video conferencing, webinars, live streaming, broadcast, screen sharing, whiteboard, chat, recording, live subtitles, translation, and AI agent rooms on iOS, Android, and web. Prebuilt r

66 lines 2.07 kB
import { updateParticipantPermission as sharedUpdateParticipantPermission, bulkUpdateParticipantPermissions as sharedBulkUpdateParticipantPermissions, } from 'mediasfu-shared'; /** * Updates a single participant's permission level. * Only hosts (islevel === "2") can update permissions. * Cannot change a host's permission level. * * @param {UpdateParticipantPermissionOptions} options - Options for updating permission. * * @example * ```typescript * await updateParticipantPermission({ * socket, * participant: { id: "123", name: "John", islevel: "0" }, * newLevel: "1", * member: "currentUser", * islevel: "2", * roomName: "room123", * showAlert: (alert) => console.log(alert.message), * }); * ``` */ export const updateParticipantPermission = async ({ socket, participant, newLevel, member, islevel, roomName, showAlert, }) => { await sharedUpdateParticipantPermission({ socket, participant, newLevel, member, islevel, roomName, showAlert, }); }; /** * Updates multiple participants' permission levels in bulk. * Only hosts (islevel === "2") can update permissions. * Processes in batches (default max 50 at a time). * * @param {BulkUpdateParticipantPermissionsOptions} options - Options for bulk updating permissions. * * @example * ```typescript * await bulkUpdateParticipantPermissions({ * socket, * participants: [participant1, participant2], * newLevel: "0", * member: "currentUser", * islevel: "2", * roomName: "room123", * showAlert: (alert) => console.log(alert.message), * maxBatchSize: 50, * }); * ``` */ export const bulkUpdateParticipantPermissions = async ({ socket, participants, newLevel, member, islevel, roomName, showAlert, maxBatchSize = 50, }) => { await sharedBulkUpdateParticipantPermissions({ socket, participants, newLevel, member, islevel, roomName, showAlert, maxBatchSize, }); }; //# sourceMappingURL=updateParticipantPermission.js.map