@cloudflare/realtimekit-react-native 0.1.3 → 0.1.4-staging.10
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/lib/commonjs/AudioSampleHandler.js +61 -0
- package/lib/commonjs/AudioSampleHandler.js.map +1 -0
- package/lib/commonjs/BackgroundHandler.js +109 -0
- package/lib/commonjs/BackgroundHandler.js.map +1 -0
- package/lib/commonjs/DeviceInfo.js +37 -0
- package/lib/commonjs/DeviceInfo.js.map +1 -0
- package/lib/commonjs/LocalMediaError.js +18 -0
- package/lib/commonjs/LocalMediaError.js.map +1 -0
- package/lib/commonjs/LocalMediaHandler.js +791 -0
- package/lib/commonjs/LocalMediaHandler.js.map +1 -0
- package/lib/commonjs/LocalMediaInterfaces.js +2 -0
- package/lib/commonjs/LocalMediaInterfaces.js.map +1 -0
- package/lib/commonjs/LocalMediaUtils.js +298 -0
- package/lib/commonjs/LocalMediaUtils.js.map +1 -0
- package/lib/commonjs/NativeAudioManager.js +72 -0
- package/lib/commonjs/NativeAudioManager.js.map +1 -0
- package/lib/commonjs/PermissionHandler.js +157 -0
- package/lib/commonjs/PermissionHandler.js.map +1 -0
- package/lib/commonjs/ReactContext.js +116 -0
- package/lib/commonjs/ReactContext.js.map +1 -0
- package/lib/commonjs/ReactHooks.js +99 -0
- package/lib/commonjs/ReactHooks.js.map +1 -0
- package/lib/commonjs/index.js +95 -0
- package/lib/commonjs/index.js.map +1 -0
- package/lib/commonjs/utils/constants.js +7 -0
- package/lib/commonjs/utils/constants.js.map +1 -0
- package/lib/commonjs/utils/crypto.js +76 -0
- package/lib/commonjs/utils/crypto.js.map +1 -0
- package/lib/commonjs/utils/version.js +8 -0
- package/lib/commonjs/utils/version.js.map +1 -0
- package/lib/module/AudioSampleHandler.js +54 -0
- package/lib/module/AudioSampleHandler.js.map +1 -0
- package/lib/module/BackgroundHandler.js +103 -0
- package/lib/module/BackgroundHandler.js.map +1 -0
- package/lib/module/DeviceInfo.js +31 -0
- package/lib/module/DeviceInfo.js.map +1 -0
- package/lib/module/LocalMediaError.js +11 -0
- package/lib/module/LocalMediaError.js.map +1 -0
- package/lib/module/LocalMediaHandler.js +784 -0
- package/lib/module/LocalMediaHandler.js.map +1 -0
- package/lib/module/LocalMediaInterfaces.js +2 -0
- package/lib/module/LocalMediaInterfaces.js.map +1 -0
- package/lib/module/LocalMediaUtils.js +290 -0
- package/lib/module/LocalMediaUtils.js.map +1 -0
- package/lib/module/NativeAudioManager.js +65 -0
- package/lib/module/NativeAudioManager.js.map +1 -0
- package/lib/module/PermissionHandler.js +149 -0
- package/lib/module/PermissionHandler.js.map +1 -0
- package/lib/module/ReactContext.js +107 -0
- package/lib/module/ReactContext.js.map +1 -0
- package/lib/module/ReactHooks.js +75 -0
- package/lib/module/ReactHooks.js.map +1 -0
- package/lib/module/index.js +58 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/utils/constants.js +5 -0
- package/lib/module/utils/constants.js.map +1 -0
- package/lib/module/utils/crypto.js +74 -0
- package/lib/module/utils/crypto.js.map +1 -0
- package/lib/module/utils/version.js +2 -0
- package/lib/module/utils/version.js.map +1 -0
- package/lib/typescript/DeviceInfo.d.ts +9 -0
- package/lib/{LocalMediaHandler.d.ts → typescript/LocalMediaHandler.d.ts} +0 -4
- package/lib/{ReactHooks.d.ts → typescript/ReactHooks.d.ts} +2 -2
- package/lib/typescript/utils/constants.d.ts +1 -0
- package/lib/typescript/utils/version.d.ts +1 -0
- package/package.json +6 -7
- package/plugin/build/withRTK.js +43 -17
- package/plugin/src/withRTK.ts +55 -25
- package/android/src/main/res/values/strings.xml +0 -3
- package/lib/AudioSampleHandler.js +0 -57
- package/lib/BackgroundHandler.js +0 -100
- package/lib/LocalMediaError.js +0 -6
- package/lib/LocalMediaHandler.js +0 -860
- package/lib/LocalMediaInterfaces.js +0 -1
- package/lib/LocalMediaUtils.js +0 -288
- package/lib/NativeAudioManager.js +0 -93
- package/lib/PermissionHandler.js +0 -179
- package/lib/ReactContext.js +0 -90
- package/lib/ReactHooks.js +0 -80
- package/lib/index.js +0 -52
- package/lib/utils/crypto.js +0 -82
- /package/lib/{AudioSampleHandler.d.ts → typescript/AudioSampleHandler.d.ts} +0 -0
- /package/lib/{BackgroundHandler.d.ts → typescript/BackgroundHandler.d.ts} +0 -0
- /package/lib/{LocalMediaError.d.ts → typescript/LocalMediaError.d.ts} +0 -0
- /package/lib/{LocalMediaInterfaces.d.ts → typescript/LocalMediaInterfaces.d.ts} +0 -0
- /package/lib/{LocalMediaUtils.d.ts → typescript/LocalMediaUtils.d.ts} +0 -0
- /package/lib/{NativeAudioManager.d.ts → typescript/NativeAudioManager.d.ts} +0 -0
- /package/lib/{PermissionHandler.d.ts → typescript/PermissionHandler.d.ts} +0 -0
- /package/lib/{ReactContext.d.ts → typescript/ReactContext.d.ts} +0 -0
- /package/lib/{index.d.ts → typescript/index.d.ts} +0 -0
- /package/lib/{utils → typescript/utils}/crypto.d.ts +0 -0
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.setupPermissions = exports.RESULTS = exports.PERMISSIONS = void 0;
|
|
7
|
+
exports.uniq = uniq;
|
|
8
|
+
var _reactNative = require("react-native");
|
|
9
|
+
const ANDROID = Object.freeze({
|
|
10
|
+
CAMERA: 'android.permission.CAMERA',
|
|
11
|
+
BLUETOOTH: 'android.permission.BLUETOOTH_CONNECT',
|
|
12
|
+
RECORD_AUDIO: 'android.permission.RECORD_AUDIO',
|
|
13
|
+
LOCATION: 'android.permission.ACCESS_FINE_LOCATION'
|
|
14
|
+
});
|
|
15
|
+
const IOS = Object.freeze({
|
|
16
|
+
APP_TRACKING_TRANSPARENCY: 'ios.permission.APP_TRACKING_TRANSPARENCY',
|
|
17
|
+
BLUETOOTH_PERIPHERAL: 'ios.permission.BLUETOOTH_PERIPHERAL',
|
|
18
|
+
CAMERA: 'ios.permission.CAMERA',
|
|
19
|
+
MICROPHONE: 'ios.permission.MICROPHONE'
|
|
20
|
+
});
|
|
21
|
+
const PERMISSIONS = exports.PERMISSIONS = Object.freeze({
|
|
22
|
+
ANDROID: ANDROID,
|
|
23
|
+
IOS: IOS
|
|
24
|
+
});
|
|
25
|
+
const RESULTS = exports.RESULTS = Object.freeze({
|
|
26
|
+
UNAVAILABLE: 'unavailable',
|
|
27
|
+
BLOCKED: 'blocked',
|
|
28
|
+
DENIED: 'denied',
|
|
29
|
+
GRANTED: 'granted',
|
|
30
|
+
LIMITED: 'limited',
|
|
31
|
+
PROMPTED: 'prompted'
|
|
32
|
+
});
|
|
33
|
+
const {
|
|
34
|
+
RTKRNPermissions
|
|
35
|
+
} = _reactNative.NativeModules;
|
|
36
|
+
async function request(permission) {
|
|
37
|
+
return RTKRNPermissions.available.includes(permission) ? await RTKRNPermissions.request(permission) : RESULTS.UNAVAILABLE;
|
|
38
|
+
}
|
|
39
|
+
async function check(permission) {
|
|
40
|
+
return RTKRNPermissions.available.includes(permission) ? await RTKRNPermissions.check(permission) : RESULTS.UNAVAILABLE;
|
|
41
|
+
}
|
|
42
|
+
function uniq(array) {
|
|
43
|
+
return array.filter((item, index) => item != null && array.indexOf(item) === index);
|
|
44
|
+
}
|
|
45
|
+
async function requestMultiplePermissions(permissions) {
|
|
46
|
+
if (_reactNative.Platform.OS === 'ios') {
|
|
47
|
+
const output = {};
|
|
48
|
+
const dedup = uniq(permissions);
|
|
49
|
+
for (let index = 0; index < dedup.length; index += 1) {
|
|
50
|
+
const permission = dedup[index];
|
|
51
|
+
output[permission] = await request(permission);
|
|
52
|
+
}
|
|
53
|
+
return output;
|
|
54
|
+
}
|
|
55
|
+
const output = await RTKRNPermissions.requestMultiplePermissions(permissions, true);
|
|
56
|
+
return output;
|
|
57
|
+
}
|
|
58
|
+
async function checkMultiplePermissions(permissions) {
|
|
59
|
+
if (_reactNative.Platform.OS === 'ios') {
|
|
60
|
+
const output = {};
|
|
61
|
+
const dedup = uniq(permissions);
|
|
62
|
+
for (let index = 0; index < dedup.length; index += 1) {
|
|
63
|
+
const permission = dedup[index];
|
|
64
|
+
output[permission] = await check(permission);
|
|
65
|
+
}
|
|
66
|
+
return output;
|
|
67
|
+
}
|
|
68
|
+
const output = await RTKRNPermissions.checkMultiplePermissions(permissions);
|
|
69
|
+
return output;
|
|
70
|
+
}
|
|
71
|
+
const getPlatformEquiPermission = (permission, reverse = false) => {
|
|
72
|
+
const android = {
|
|
73
|
+
camera: PERMISSIONS.ANDROID.CAMERA,
|
|
74
|
+
microphone: PERMISSIONS.ANDROID.RECORD_AUDIO,
|
|
75
|
+
bluetooth: PERMISSIONS.ANDROID.BLUETOOTH,
|
|
76
|
+
location: PERMISSIONS.ANDROID.LOCATION
|
|
77
|
+
};
|
|
78
|
+
const ios = {
|
|
79
|
+
camera: PERMISSIONS.IOS.CAMERA,
|
|
80
|
+
microphone: PERMISSIONS.IOS.MICROPHONE,
|
|
81
|
+
bluetooth: PERMISSIONS.IOS.BLUETOOTH_PERIPHERAL
|
|
82
|
+
};
|
|
83
|
+
if (!reverse) {
|
|
84
|
+
if (_reactNative.Platform.OS === 'android') {
|
|
85
|
+
return android[permission];
|
|
86
|
+
}
|
|
87
|
+
return ios[permission];
|
|
88
|
+
}
|
|
89
|
+
if (_reactNative.Platform.OS === 'android') {
|
|
90
|
+
const androidReverse = {};
|
|
91
|
+
Object.keys(android).forEach(key => {
|
|
92
|
+
androidReverse[android[key]] = key;
|
|
93
|
+
});
|
|
94
|
+
return androidReverse[permission];
|
|
95
|
+
}
|
|
96
|
+
const iosReverse = {};
|
|
97
|
+
Object.keys(ios).forEach(key => {
|
|
98
|
+
iosReverse[ios[key]] = key;
|
|
99
|
+
});
|
|
100
|
+
return iosReverse[permission];
|
|
101
|
+
};
|
|
102
|
+
let timeout;
|
|
103
|
+
const processPermissionResult = (systemPermissionRequired, audio, video) => async status => {
|
|
104
|
+
const permissionState = {
|
|
105
|
+
camera: 'NOT_REQUESTED',
|
|
106
|
+
microphone: 'NOT_REQUESTED',
|
|
107
|
+
bluetooth: 'NOT_REQUESTED',
|
|
108
|
+
location: 'NOT_REQUESTED'
|
|
109
|
+
};
|
|
110
|
+
systemPermissionRequired.forEach(permission => {
|
|
111
|
+
const normalPermission = getPlatformEquiPermission(permission, true);
|
|
112
|
+
if (status[permission] === RESULTS.GRANTED) {
|
|
113
|
+
permissionState[normalPermission] = 'ACCEPTED';
|
|
114
|
+
} else if (status[permission] !== RESULTS.PROMPTED) {
|
|
115
|
+
permissionState[normalPermission] = 'DENIED';
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
const isBluetoothGranted = _reactNative.Platform.OS === 'ios' || permissionState.bluetooth !== 'NOT_REQUESTED';
|
|
119
|
+
if ((permissionState.camera !== 'NOT_REQUESTED' || !video) && (permissionState.microphone !== 'NOT_REQUESTED' || !audio) && isBluetoothGranted && timeout) clearInterval(timeout);else {
|
|
120
|
+
await requestMultiplePermissions(systemPermissionRequired);
|
|
121
|
+
const checkResponse = await checkMultiplePermissions(systemPermissionRequired);
|
|
122
|
+
await processPermissionResult(systemPermissionRequired, audio, video)(checkResponse);
|
|
123
|
+
}
|
|
124
|
+
return permissionState;
|
|
125
|
+
};
|
|
126
|
+
const setupPermissions = async (audio, video) => {
|
|
127
|
+
return new Promise(async (resolve, reject) => {
|
|
128
|
+
let statusCheck;
|
|
129
|
+
const systemPermissionRequired = [];
|
|
130
|
+
const isIOS = _reactNative.Platform.OS === 'ios';
|
|
131
|
+
const permissionsRequired = [].concat(audio ? ['microphone'] : []).concat(isIOS ? [] : ['bluetooth']).concat(video ? ['camera'] : []);
|
|
132
|
+
permissionsRequired.forEach(permission => {
|
|
133
|
+
const systemPermissionEquivalent = getPlatformEquiPermission(permission);
|
|
134
|
+
if (systemPermissionEquivalent) {
|
|
135
|
+
systemPermissionRequired.push(systemPermissionEquivalent);
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
const checkPermLoop = async id => {
|
|
139
|
+
timeout = id;
|
|
140
|
+
statusCheck = await processPermissionResult(systemPermissionRequired, audio, video)(requestResponse);
|
|
141
|
+
if (statusCheck !== undefined) resolve(statusCheck);
|
|
142
|
+
};
|
|
143
|
+
// Requesting permission status
|
|
144
|
+
const requestResponse = await requestMultiplePermissions(systemPermissionRequired);
|
|
145
|
+
const timeout_sample = setInterval(() => checkPermLoop(timeout_sample), 1000);
|
|
146
|
+
if (timeout) statusCheck = await processPermissionResult(systemPermissionRequired, audio, video)(requestResponse);
|
|
147
|
+
if (timeout) {
|
|
148
|
+
clearInterval(timeout);
|
|
149
|
+
}
|
|
150
|
+
if (statusCheck) resolve(statusCheck);
|
|
151
|
+
setTimeout(() => {
|
|
152
|
+
reject(statusCheck);
|
|
153
|
+
}, 20000);
|
|
154
|
+
});
|
|
155
|
+
};
|
|
156
|
+
exports.setupPermissions = setupPermissions;
|
|
157
|
+
//# sourceMappingURL=PermissionHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","ANDROID","Object","freeze","CAMERA","BLUETOOTH","RECORD_AUDIO","LOCATION","IOS","APP_TRACKING_TRANSPARENCY","BLUETOOTH_PERIPHERAL","MICROPHONE","PERMISSIONS","exports","RESULTS","UNAVAILABLE","BLOCKED","DENIED","GRANTED","LIMITED","PROMPTED","RTKRNPermissions","NativeModules","request","permission","available","includes","check","uniq","array","filter","item","index","indexOf","requestMultiplePermissions","permissions","Platform","OS","output","dedup","length","checkMultiplePermissions","getPlatformEquiPermission","reverse","android","camera","microphone","bluetooth","location","ios","androidReverse","keys","forEach","key","iosReverse","timeout","processPermissionResult","systemPermissionRequired","audio","video","status","permissionState","normalPermission","isBluetoothGranted","clearInterval","checkResponse","setupPermissions","Promise","resolve","reject","statusCheck","isIOS","permissionsRequired","concat","systemPermissionEquivalent","push","checkPermLoop","id","requestResponse","undefined","timeout_sample","setInterval","setTimeout"],"sources":["PermissionHandler.ts"],"sourcesContent":["import { Platform, NativeModules } from 'react-native';\nimport { MediaPermission } from './LocalMediaInterfaces';\n\nconst ANDROID = Object.freeze({\n CAMERA: 'android.permission.CAMERA',\n BLUETOOTH: 'android.permission.BLUETOOTH_CONNECT',\n RECORD_AUDIO: 'android.permission.RECORD_AUDIO',\n LOCATION: 'android.permission.ACCESS_FINE_LOCATION',\n} as const);\n\ntype AndroidPermissionMap = typeof ANDROID;\n\nconst IOS = Object.freeze({\n APP_TRACKING_TRANSPARENCY: 'ios.permission.APP_TRACKING_TRANSPARENCY',\n BLUETOOTH_PERIPHERAL: 'ios.permission.BLUETOOTH_PERIPHERAL',\n CAMERA: 'ios.permission.CAMERA',\n MICROPHONE: 'ios.permission.MICROPHONE',\n} as const);\n\ntype IOSPermissionMap = typeof IOS;\n\nexport const PERMISSIONS = Object.freeze({\n ANDROID: ANDROID as AndroidPermissionMap,\n IOS: IOS as IOSPermissionMap,\n} as const);\n\nexport const RESULTS = Object.freeze({\n UNAVAILABLE: 'unavailable',\n BLOCKED: 'blocked',\n DENIED: 'denied',\n GRANTED: 'granted',\n LIMITED: 'limited',\n PROMPTED: 'prompted',\n} as const);\n\nconst { RTKRNPermissions } = NativeModules;\n\nasync function request(permission) {\n return RTKRNPermissions.available.includes(permission)\n ? await RTKRNPermissions.request(permission)\n : RESULTS.UNAVAILABLE;\n}\n\nasync function check(permission) {\n return RTKRNPermissions.available.includes(permission)\n ? await RTKRNPermissions.check(permission)\n : RESULTS.UNAVAILABLE;\n}\n\nexport function uniq(array) {\n return array.filter(\n (item, index) => item != null && array.indexOf(item) === index\n );\n}\n\nasync function requestMultiplePermissions(permissions) {\n if (Platform.OS === 'ios') {\n const output = {};\n const dedup = uniq(permissions);\n\n for (let index = 0; index < dedup.length; index += 1) {\n const permission = dedup[index];\n output[permission] = await request(permission);\n }\n return output;\n }\n const output = await RTKRNPermissions.requestMultiplePermissions(\n permissions,\n true\n );\n return output;\n}\n\nasync function checkMultiplePermissions(permissions) {\n if (Platform.OS === 'ios') {\n const output = {};\n const dedup = uniq(permissions);\n\n for (let index = 0; index < dedup.length; index += 1) {\n const permission = dedup[index];\n output[permission] = await check(permission);\n }\n return output;\n }\n const output = await RTKRNPermissions.checkMultiplePermissions(permissions);\n return output;\n}\n\nexport type DynamicPermissions = Array<'camera' | 'microphone'>;\n\nconst getPlatformEquiPermission = (permission, reverse = false) => {\n const android = {\n camera: PERMISSIONS.ANDROID.CAMERA,\n microphone: PERMISSIONS.ANDROID.RECORD_AUDIO,\n bluetooth: PERMISSIONS.ANDROID.BLUETOOTH,\n location: PERMISSIONS.ANDROID.LOCATION,\n };\n const ios = {\n camera: PERMISSIONS.IOS.CAMERA,\n microphone: PERMISSIONS.IOS.MICROPHONE,\n bluetooth: PERMISSIONS.IOS.BLUETOOTH_PERIPHERAL,\n };\n if (!reverse) {\n if (Platform.OS === 'android') {\n return android[permission];\n }\n return ios[permission];\n }\n if (Platform.OS === 'android') {\n const androidReverse = {};\n Object.keys(android).forEach((key) => {\n androidReverse[android[key]] = key;\n });\n return androidReverse[permission];\n }\n const iosReverse = {};\n Object.keys(ios).forEach((key) => {\n iosReverse[ios[key]] = key;\n });\n return iosReverse[permission];\n};\n\nlet timeout: any;\n\nconst processPermissionResult =\n (systemPermissionRequired, audio, video) => async (status) => {\n const permissionState: { [key: string]: MediaPermission } = {\n camera: 'NOT_REQUESTED',\n microphone: 'NOT_REQUESTED',\n bluetooth: 'NOT_REQUESTED',\n location: 'NOT_REQUESTED',\n };\n systemPermissionRequired.forEach((permission) => {\n const normalPermission = getPlatformEquiPermission(permission, true);\n if (status[permission] === RESULTS.GRANTED) {\n permissionState[normalPermission] = 'ACCEPTED';\n } else if (status[permission] !== RESULTS.PROMPTED) {\n permissionState[normalPermission] = 'DENIED';\n }\n });\n const isBluetoothGranted =\n Platform.OS === 'ios' || permissionState.bluetooth !== 'NOT_REQUESTED';\n if (\n (permissionState.camera !== 'NOT_REQUESTED' || !video) &&\n (permissionState.microphone !== 'NOT_REQUESTED' || !audio) &&\n isBluetoothGranted &&\n timeout\n )\n clearInterval(timeout);\n else {\n await requestMultiplePermissions(systemPermissionRequired);\n const checkResponse = await checkMultiplePermissions(\n systemPermissionRequired\n );\n await processPermissionResult(\n systemPermissionRequired,\n audio,\n video\n )(checkResponse);\n }\n return permissionState;\n };\n\nexport const setupPermissions = async (\n audio: boolean,\n video: boolean\n): Promise<{\n [key: string]: MediaPermission;\n}> => {\n return new Promise<{\n [key: string]: MediaPermission;\n }>(async (resolve, reject) => {\n let statusCheck: {\n [key: string]: MediaPermission;\n };\n const systemPermissionRequired = [];\n const isIOS = Platform.OS === 'ios';\n const permissionsRequired = []\n .concat(audio ? ['microphone'] : [])\n .concat(isIOS ? [] : ['bluetooth'])\n .concat(video ? ['camera'] : []);\n permissionsRequired.forEach((permission) => {\n const systemPermissionEquivalent = getPlatformEquiPermission(permission);\n if (systemPermissionEquivalent) {\n systemPermissionRequired.push(systemPermissionEquivalent);\n }\n });\n\n const checkPermLoop = async (id) => {\n timeout = id;\n statusCheck = await processPermissionResult(\n systemPermissionRequired,\n audio,\n video\n )(requestResponse);\n if (statusCheck !== undefined) resolve(statusCheck);\n };\n // Requesting permission status\n const requestResponse = await requestMultiplePermissions(\n systemPermissionRequired\n );\n const timeout_sample = setInterval(\n () => checkPermLoop(timeout_sample),\n 1000\n );\n\n if (timeout)\n statusCheck = await processPermissionResult(\n systemPermissionRequired,\n audio,\n video\n )(requestResponse);\n\n if (timeout) {\n clearInterval(timeout);\n }\n\n if (statusCheck) resolve(statusCheck);\n\n setTimeout(() => {\n reject(statusCheck);\n }, 20000);\n });\n};\n\nexport type ResultMap = typeof RESULTS;\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.RealtimeKitContext = void 0;
|
|
7
|
+
exports.RealtimeKitProvider = RealtimeKitProvider;
|
|
8
|
+
exports.useRealtimeKitMeeting = void 0;
|
|
9
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
10
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
11
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
12
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
13
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } // @ts-nocheck
|
|
14
|
+
class RealtimeKitUpdates {
|
|
15
|
+
constructor(meeting) {
|
|
16
|
+
var _this$meeting$self, _this$meeting$meta, _this$meeting$partici, _this$meeting$partici2, _this$meeting$partici3, _this$meeting$partici4, _this$meeting$chat, _this$meeting$polls, _this$meeting$plugins, _this$meeting$plugins2, _this$meeting$recordi, _this$meeting$stage, _this$meeting$livestr;
|
|
17
|
+
_defineProperty(this, "meeting", void 0);
|
|
18
|
+
_defineProperty(this, "l", void 0);
|
|
19
|
+
this.meeting = meeting;
|
|
20
|
+
this.l = new Set();
|
|
21
|
+
(_this$meeting$self = this.meeting.self) === null || _this$meeting$self === void 0 || _this$meeting$self.addListener('*', this.update.bind(this));
|
|
22
|
+
(_this$meeting$meta = this.meeting.meta) === null || _this$meeting$meta === void 0 || _this$meeting$meta.addListener('*', this.update.bind(this));
|
|
23
|
+
(_this$meeting$partici = this.meeting.participants) === null || _this$meeting$partici === void 0 || _this$meeting$partici.addListener('*', this.update.bind(this));
|
|
24
|
+
(_this$meeting$partici2 = this.meeting.participants) === null || _this$meeting$partici2 === void 0 || (_this$meeting$partici2 = _this$meeting$partici2.joined) === null || _this$meeting$partici2 === void 0 || _this$meeting$partici2.addListener('*', this.update.bind(this));
|
|
25
|
+
(_this$meeting$partici3 = this.meeting.participants) === null || _this$meeting$partici3 === void 0 || (_this$meeting$partici3 = _this$meeting$partici3.active) === null || _this$meeting$partici3 === void 0 || _this$meeting$partici3.addListener('*', this.update.bind(this));
|
|
26
|
+
(_this$meeting$partici4 = this.meeting.participants) === null || _this$meeting$partici4 === void 0 || (_this$meeting$partici4 = _this$meeting$partici4.pinned) === null || _this$meeting$partici4 === void 0 || _this$meeting$partici4.addListener('*', this.update.bind(this));
|
|
27
|
+
(_this$meeting$chat = this.meeting.chat) === null || _this$meeting$chat === void 0 || _this$meeting$chat.addListener('*', this.update.bind(this));
|
|
28
|
+
(_this$meeting$polls = this.meeting.polls) === null || _this$meeting$polls === void 0 || _this$meeting$polls.addListener('*', this.update.bind(this));
|
|
29
|
+
(_this$meeting$plugins = this.meeting.plugins) === null || _this$meeting$plugins === void 0 || (_this$meeting$plugins = _this$meeting$plugins.all) === null || _this$meeting$plugins === void 0 || _this$meeting$plugins.addListener('*', this.update.bind(this));
|
|
30
|
+
(_this$meeting$plugins2 = this.meeting.plugins) === null || _this$meeting$plugins2 === void 0 || (_this$meeting$plugins2 = _this$meeting$plugins2.active) === null || _this$meeting$plugins2 === void 0 || _this$meeting$plugins2.addListener('*', this.update.bind(this));
|
|
31
|
+
(_this$meeting$recordi = this.meeting.recording) === null || _this$meeting$recordi === void 0 || _this$meeting$recordi.addListener('*', this.update.bind(this));
|
|
32
|
+
(_this$meeting$stage = this.meeting.stage) === null || _this$meeting$stage === void 0 || _this$meeting$stage.addListener('*', this.update.bind(this));
|
|
33
|
+
(_this$meeting$livestr = this.meeting.livestream) === null || _this$meeting$livestr === void 0 || _this$meeting$livestr.addListener('*', this.update.bind(this));
|
|
34
|
+
}
|
|
35
|
+
clean() {
|
|
36
|
+
var _this$meeting$self2, _this$meeting$meta2, _this$meeting$partici5, _this$meeting$partici6, _this$meeting$partici7, _this$meeting$partici8, _this$meeting$chat2, _this$meeting$polls2, _this$meeting$plugins3, _this$meeting$plugins4, _this$meeting$recordi2, _this$meeting$stage2, _this$meeting$livestr2;
|
|
37
|
+
(_this$meeting$self2 = this.meeting.self) === null || _this$meeting$self2 === void 0 || _this$meeting$self2.removeListener('*', this.update.bind(this));
|
|
38
|
+
(_this$meeting$meta2 = this.meeting.meta) === null || _this$meeting$meta2 === void 0 || _this$meeting$meta2.removeListener('*', this.update.bind(this));
|
|
39
|
+
(_this$meeting$partici5 = this.meeting.participants) === null || _this$meeting$partici5 === void 0 || _this$meeting$partici5.removeListener('*', this.update.bind(this));
|
|
40
|
+
(_this$meeting$partici6 = this.meeting.participants) === null || _this$meeting$partici6 === void 0 || (_this$meeting$partici6 = _this$meeting$partici6.joined) === null || _this$meeting$partici6 === void 0 || _this$meeting$partici6.removeListener('*', this.update.bind(this));
|
|
41
|
+
(_this$meeting$partici7 = this.meeting.participants) === null || _this$meeting$partici7 === void 0 || (_this$meeting$partici7 = _this$meeting$partici7.active) === null || _this$meeting$partici7 === void 0 || _this$meeting$partici7.removeListener('*', this.update.bind(this));
|
|
42
|
+
(_this$meeting$partici8 = this.meeting.participants) === null || _this$meeting$partici8 === void 0 || (_this$meeting$partici8 = _this$meeting$partici8.pinned) === null || _this$meeting$partici8 === void 0 || _this$meeting$partici8.removeListener('*', this.update.bind(this));
|
|
43
|
+
(_this$meeting$chat2 = this.meeting.chat) === null || _this$meeting$chat2 === void 0 || _this$meeting$chat2.removeListener('*', this.update.bind(this));
|
|
44
|
+
(_this$meeting$polls2 = this.meeting.polls) === null || _this$meeting$polls2 === void 0 || _this$meeting$polls2.removeListener('*', this.update.bind(this));
|
|
45
|
+
(_this$meeting$plugins3 = this.meeting.plugins) === null || _this$meeting$plugins3 === void 0 || (_this$meeting$plugins3 = _this$meeting$plugins3.all) === null || _this$meeting$plugins3 === void 0 || _this$meeting$plugins3.removeListener('*', this.update.bind(this));
|
|
46
|
+
(_this$meeting$plugins4 = this.meeting.plugins) === null || _this$meeting$plugins4 === void 0 || (_this$meeting$plugins4 = _this$meeting$plugins4.active) === null || _this$meeting$plugins4 === void 0 || _this$meeting$plugins4.removeListener('*', this.update.bind(this));
|
|
47
|
+
(_this$meeting$recordi2 = this.meeting.recording) === null || _this$meeting$recordi2 === void 0 || _this$meeting$recordi2.removeListener('*', this.update.bind(this));
|
|
48
|
+
(_this$meeting$stage2 = this.meeting.stage) === null || _this$meeting$stage2 === void 0 || _this$meeting$stage2.removeListener('*', this.update.bind(this));
|
|
49
|
+
(_this$meeting$livestr2 = this.meeting.livestream) === null || _this$meeting$livestr2 === void 0 || _this$meeting$livestr2.removeListener('*', this.update.bind(this));
|
|
50
|
+
}
|
|
51
|
+
addListener(listener) {
|
|
52
|
+
this.l.add(listener);
|
|
53
|
+
}
|
|
54
|
+
removeListener(listener) {
|
|
55
|
+
this.l.delete(listener);
|
|
56
|
+
}
|
|
57
|
+
update() {
|
|
58
|
+
this.l.forEach(l => {
|
|
59
|
+
l();
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
const RealtimeKitContext = exports.RealtimeKitContext = /*#__PURE__*/(0, _react.createContext)({
|
|
64
|
+
meeting: undefined,
|
|
65
|
+
updates: undefined
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Provider component which makes the RealtimeKitClient object
|
|
70
|
+
* available to nested components
|
|
71
|
+
* @component
|
|
72
|
+
* @param value The RealtimeKitClient instance from `useRealtimeKitClient()`
|
|
73
|
+
* @param renderBeforeLoad The provider will not render children by default
|
|
74
|
+
* until it gets a client object, renderBeforeLoad can be used to override that
|
|
75
|
+
*/
|
|
76
|
+
function RealtimeKitProvider({
|
|
77
|
+
value,
|
|
78
|
+
children,
|
|
79
|
+
fallback = null
|
|
80
|
+
}) {
|
|
81
|
+
const [updates, setUpdates] = (0, _react.useState)();
|
|
82
|
+
const updatesRef = (0, _react.useRef)();
|
|
83
|
+
(0, _react.useEffect)(() => {
|
|
84
|
+
if (value) {
|
|
85
|
+
const newUpdate = new RealtimeKitUpdates(value);
|
|
86
|
+
setUpdates(newUpdate);
|
|
87
|
+
updatesRef.current = newUpdate;
|
|
88
|
+
}
|
|
89
|
+
return () => {
|
|
90
|
+
var _updatesRef$current;
|
|
91
|
+
(_updatesRef$current = updatesRef.current) === null || _updatesRef$current === void 0 || _updatesRef$current.clean();
|
|
92
|
+
};
|
|
93
|
+
}, [value]);
|
|
94
|
+
return /*#__PURE__*/_react.default.createElement(RealtimeKitContext.Provider, {
|
|
95
|
+
value: {
|
|
96
|
+
meeting: value,
|
|
97
|
+
updates
|
|
98
|
+
}
|
|
99
|
+
}, value ? children : fallback);
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Hook which returns the reference to the RealtimeKitClient object
|
|
104
|
+
* @returns meeting instance from `useRealtimeKitClient()`
|
|
105
|
+
*/
|
|
106
|
+
const useRealtimeKitMeeting = () => {
|
|
107
|
+
const {
|
|
108
|
+
meeting
|
|
109
|
+
} = (0, _react.useContext)(RealtimeKitContext);
|
|
110
|
+
if (!meeting) throw new Error('useRealtimeKitMeeting must be used within the RealtimeKitProvider');
|
|
111
|
+
return {
|
|
112
|
+
meeting
|
|
113
|
+
};
|
|
114
|
+
};
|
|
115
|
+
exports.useRealtimeKitMeeting = useRealtimeKitMeeting;
|
|
116
|
+
//# sourceMappingURL=ReactContext.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","_interopRequireWildcard","require","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_defineProperty","_toPropertyKey","value","enumerable","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","RealtimeKitUpdates","constructor","meeting","_this$meeting$self","_this$meeting$meta","_this$meeting$partici","_this$meeting$partici2","_this$meeting$partici3","_this$meeting$partici4","_this$meeting$chat","_this$meeting$polls","_this$meeting$plugins","_this$meeting$plugins2","_this$meeting$recordi","_this$meeting$stage","_this$meeting$livestr","l","Set","self","addListener","update","bind","meta","participants","joined","active","pinned","chat","polls","plugins","all","recording","stage","livestream","clean","_this$meeting$self2","_this$meeting$meta2","_this$meeting$partici5","_this$meeting$partici6","_this$meeting$partici7","_this$meeting$partici8","_this$meeting$chat2","_this$meeting$polls2","_this$meeting$plugins3","_this$meeting$plugins4","_this$meeting$recordi2","_this$meeting$stage2","_this$meeting$livestr2","removeListener","listener","add","delete","forEach","RealtimeKitContext","exports","createContext","undefined","updates","RealtimeKitProvider","children","fallback","setUpdates","useState","updatesRef","useRef","useEffect","newUpdate","current","_updatesRef$current","createElement","Provider","useRealtimeKitMeeting","useContext","Error"],"sources":["ReactContext.tsx"],"sourcesContent":["// @ts-nocheck\nimport React, {\n createContext,\n useContext,\n ReactChild,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport RealtimeKitClient from '@cloudflare/realtimekit';\n\ntype Listener = () => void;\nclass RealtimeKitUpdates {\n private meeting: RealtimeKitClient;\n\n private l: Set<Listener>;\n\n constructor(meeting: RealtimeKitClient) {\n this.meeting = meeting;\n this.l = new Set();\n this.meeting.self?.addListener('*', this.update.bind(this));\n this.meeting.meta?.addListener('*', this.update.bind(this));\n this.meeting.participants?.addListener('*', this.update.bind(this));\n this.meeting.participants?.joined?.addListener('*', this.update.bind(this));\n this.meeting.participants?.active?.addListener('*', this.update.bind(this));\n this.meeting.participants?.pinned?.addListener('*', this.update.bind(this));\n this.meeting.chat?.addListener('*', this.update.bind(this));\n this.meeting.polls?.addListener('*', this.update.bind(this));\n this.meeting.plugins?.all?.addListener('*', this.update.bind(this));\n this.meeting.plugins?.active?.addListener('*', this.update.bind(this));\n this.meeting.recording?.addListener('*', this.update.bind(this));\n this.meeting.stage?.addListener('*', this.update.bind(this));\n this.meeting.livestream?.addListener('*', this.update.bind(this));\n }\n\n clean() {\n this.meeting.self?.removeListener('*', this.update.bind(this));\n this.meeting.meta?.removeListener('*', this.update.bind(this));\n this.meeting.participants?.removeListener('*', this.update.bind(this));\n this.meeting.participants?.joined?.removeListener(\n '*',\n this.update.bind(this)\n );\n this.meeting.participants?.active?.removeListener(\n '*',\n this.update.bind(this)\n );\n this.meeting.participants?.pinned?.removeListener(\n '*',\n this.update.bind(this)\n );\n this.meeting.chat?.removeListener('*', this.update.bind(this));\n this.meeting.polls?.removeListener('*', this.update.bind(this));\n this.meeting.plugins?.all?.removeListener('*', this.update.bind(this));\n this.meeting.plugins?.active?.removeListener('*', this.update.bind(this));\n this.meeting.recording?.removeListener('*', this.update.bind(this));\n this.meeting.stage?.removeListener('*', this.update.bind(this));\n this.meeting.livestream?.removeListener('*', this.update.bind(this));\n }\n\n addListener(listener: Listener) {\n this.l.add(listener);\n }\n\n removeListener(listener: Listener) {\n this.l.delete(listener);\n }\n\n private update() {\n this.l.forEach((l) => {\n l();\n });\n }\n}\n\nexport const RealtimeKitContext = createContext<{\n meeting: RealtimeKitClient | undefined;\n updates: RealtimeKitUpdates | undefined;\n}>({\n meeting: undefined,\n updates: undefined,\n});\n\n/**\n * Provider component which makes the RealtimeKitClient object\n * available to nested components\n * @component\n * @param value The RealtimeKitClient instance from `useRealtimeKitClient()`\n * @param renderBeforeLoad The provider will not render children by default\n * until it gets a client object, renderBeforeLoad can be used to override that\n */\nexport function RealtimeKitProvider({\n value,\n children,\n fallback = null,\n}: {\n value: RealtimeKitClient | undefined;\n children: ReactChild | ReactChild[];\n fallback?: ReactChild | ReactChild[];\n}) {\n const [updates, setUpdates] = useState<RealtimeKitUpdates>();\n const updatesRef = useRef<RealtimeKitUpdates>();\n\n useEffect(() => {\n if (value) {\n const newUpdate = new RealtimeKitUpdates(value);\n setUpdates(newUpdate);\n updatesRef.current = newUpdate;\n }\n return () => {\n updatesRef.current?.clean();\n };\n }, [value]);\n\n return (\n <RealtimeKitContext.Provider\n value={{\n meeting: value,\n updates,\n }}\n >\n {value ? children : fallback}\n </RealtimeKitContext.Provider>\n );\n}\n\n/**\n * Hook which returns the reference to the RealtimeKitClient object\n * @returns meeting instance from `useRealtimeKitClient()`\n */\nexport const useRealtimeKitMeeting = () => {\n const { meeting } = useContext(RealtimeKitContext);\n if (!meeting)\n throw new Error(\n 'useRealtimeKitMeeting must be used within the RealtimeKitProvider'\n );\n\n return { meeting };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
var _exportNames = {
|
|
7
|
+
useRealtimeKitClient: true,
|
|
8
|
+
useRTKSelector: true,
|
|
9
|
+
useRealtimeKitSelector: true
|
|
10
|
+
};
|
|
11
|
+
exports.useRealtimeKitSelector = exports.useRealtimeKitClient = exports.useRTKSelector = void 0;
|
|
12
|
+
var _react = require("react");
|
|
13
|
+
var _realtimekit = _interopRequireDefault(require("@cloudflare/realtimekit"));
|
|
14
|
+
var _ReactContext = require("./ReactContext");
|
|
15
|
+
Object.keys(_ReactContext).forEach(function (key) {
|
|
16
|
+
if (key === "default" || key === "__esModule") return;
|
|
17
|
+
if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
|
|
18
|
+
if (key in exports && exports[key] === _ReactContext[key]) return;
|
|
19
|
+
Object.defineProperty(exports, key, {
|
|
20
|
+
enumerable: true,
|
|
21
|
+
get: function () {
|
|
22
|
+
return _ReactContext[key];
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
27
|
+
/**
|
|
28
|
+
* Hook which manages a RealtimeKitClient instance
|
|
29
|
+
*/
|
|
30
|
+
const useRealtimeKitClient = () => {
|
|
31
|
+
const [client, setClient] = (0, _react.useState)();
|
|
32
|
+
const initClient = async options => {
|
|
33
|
+
const cli = await _realtimekit.default.init(options);
|
|
34
|
+
setClient(cli);
|
|
35
|
+
return cli;
|
|
36
|
+
};
|
|
37
|
+
return [client, initClient];
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
/**
|
|
41
|
+
* Utility function which determines whether to trigger update or not
|
|
42
|
+
*/
|
|
43
|
+
exports.useRealtimeKitClient = useRealtimeKitClient;
|
|
44
|
+
const shouldUpdate = (slice, newSlice) => {
|
|
45
|
+
if (slice !== newSlice) {
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
if (Array.isArray(slice) && Array.isArray(newSlice)) {
|
|
49
|
+
if (slice.length !== newSlice.length) {
|
|
50
|
+
return true;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
return false;
|
|
54
|
+
};
|
|
55
|
+
/**
|
|
56
|
+
* @deprecated Use `useRealtimeKitSelector` instead.
|
|
57
|
+
* Hook which extracts data from the RealtimeKitClient object
|
|
58
|
+
*/
|
|
59
|
+
const useRTKSelector = selector => {
|
|
60
|
+
return useRealtimeKitSelector(selector);
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Hook which extracts data from the RealtimeKitClient object
|
|
65
|
+
*/
|
|
66
|
+
exports.useRTKSelector = useRTKSelector;
|
|
67
|
+
const useRealtimeKitSelector = selector => {
|
|
68
|
+
const {
|
|
69
|
+
meeting,
|
|
70
|
+
updates
|
|
71
|
+
} = (0, _react.useContext)(_ReactContext.RealtimeKitContext);
|
|
72
|
+
if (!meeting) throw new Error('useRealtimeKitSelector must be used within the RealtimeKitProvider');
|
|
73
|
+
const state = (0, _react.useRef)(selector(meeting));
|
|
74
|
+
const [, forceUpdate] = (0, _react.useReducer)(c => c + 1, 0);
|
|
75
|
+
(0, _react.useEffect)(() => {
|
|
76
|
+
const currentState = meeting && selector(meeting);
|
|
77
|
+
const listener = () => {
|
|
78
|
+
const newStateSlice = meeting && selector(meeting);
|
|
79
|
+
if (shouldUpdate(state.current, newStateSlice)) {
|
|
80
|
+
state.current = newStateSlice;
|
|
81
|
+
forceUpdate();
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
if (currentState && typeof currentState === 'object' && 'addListener' in currentState) {
|
|
85
|
+
currentState.addListener('*', forceUpdate);
|
|
86
|
+
return () => {
|
|
87
|
+
currentState.removeListener('*', forceUpdate);
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
updates === null || updates === void 0 || updates.addListener(listener);
|
|
91
|
+
return () => {
|
|
92
|
+
updates === null || updates === void 0 || updates.removeListener(listener);
|
|
93
|
+
};
|
|
94
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
95
|
+
}, [meeting, updates]);
|
|
96
|
+
return state.current;
|
|
97
|
+
};
|
|
98
|
+
exports.useRealtimeKitSelector = useRealtimeKitSelector;
|
|
99
|
+
//# sourceMappingURL=ReactHooks.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","require","_realtimekit","_interopRequireDefault","_ReactContext","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get","e","__esModule","default","useRealtimeKitClient","client","setClient","useState","initClient","options","cli","RealtimeKitClient","init","shouldUpdate","slice","newSlice","Array","isArray","length","useRTKSelector","selector","useRealtimeKitSelector","meeting","updates","useContext","RealtimeKitContext","Error","state","useRef","forceUpdate","useReducer","c","useEffect","currentState","listener","newStateSlice","current","addListener","removeListener"],"sources":["ReactHooks.tsx"],"sourcesContent":["import { useState, useEffect, useRef, useReducer, useContext } from 'react';\nimport RealtimeKitClient, {\n RealtimeKitClientOptions,\n} from '@cloudflare/realtimekit';\nimport { RealtimeKitContext } from './ReactContext';\n\n/**\n * Hook which manages a RealtimeKitClient instance\n */\nexport const useRealtimeKitClient = (): [\n RealtimeKitClient | undefined,\n (options: RealtimeKitClientOptions) => {}\n] => {\n const [client, setClient] = useState<RealtimeKitClient>();\n const initClient = async (\n options: RealtimeKitClientOptions\n ): Promise<RealtimeKitClient> => {\n const cli = await RealtimeKitClient.init(options);\n setClient(cli);\n return cli;\n };\n return [client, initClient];\n};\n\n/**\n * Utility function which determines whether to trigger update or not\n */\nconst shouldUpdate = <StateSlice,>(\n slice: StateSlice,\n newSlice: StateSlice\n): boolean => {\n if (slice !== newSlice) {\n return true;\n }\n if (Array.isArray(slice) && Array.isArray(newSlice)) {\n if (slice.length !== newSlice.length) {\n return true;\n }\n }\n\n return false;\n};\n\ntype StateSelector<T extends object, U> = (state: T) => U;\n\n/**\n * @deprecated Use `useRealtimeKitSelector` instead.\n * Hook which extracts data from the RealtimeKitClient object\n */\nexport const useRTKSelector = <StateSlice,>(\n selector: StateSelector<RealtimeKitClient, StateSlice>\n) => {\n return useRealtimeKitSelector(selector);\n};\n\n/**\n * Hook which extracts data from the RealtimeKitClient object\n */\nexport const useRealtimeKitSelector = <StateSlice,>(\n selector: StateSelector<RealtimeKitClient, StateSlice>\n) => {\n const { meeting, updates } = useContext(RealtimeKitContext);\n if (!meeting)\n throw new Error(\n 'useRealtimeKitSelector must be used within the RealtimeKitProvider'\n );\n const state = useRef(selector(meeting));\n const [, forceUpdate] = useReducer((c) => c + 1, 0) as [never, () => void];\n\n useEffect(() => {\n const currentState = meeting && selector(meeting);\n const listener = () => {\n const newStateSlice = meeting && selector(meeting);\n if (shouldUpdate(state.current, newStateSlice)) {\n state.current = newStateSlice;\n forceUpdate();\n }\n };\n if (\n currentState &&\n typeof currentState === 'object' &&\n 'addListener' in currentState\n ) {\n (currentState as any).addListener('*', forceUpdate);\n return () => {\n (currentState as any).removeListener('*', forceUpdate);\n };\n }\n updates?.addListener(listener);\n return () => {\n updates?.removeListener(listener);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [meeting, updates]);\n return state.current;\n};\n\nexport * from './ReactContext';\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "RealtimeKitProvider", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _ReactHooks.RealtimeKitProvider;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
exports.default = void 0;
|
|
13
|
+
Object.defineProperty(exports, "useRTKSelector", {
|
|
14
|
+
enumerable: true,
|
|
15
|
+
get: function () {
|
|
16
|
+
return _ReactHooks.useRTKSelector;
|
|
17
|
+
}
|
|
18
|
+
});
|
|
19
|
+
Object.defineProperty(exports, "useRealtimeKitClient", {
|
|
20
|
+
enumerable: true,
|
|
21
|
+
get: function () {
|
|
22
|
+
return _ReactHooks.useRealtimeKitClient;
|
|
23
|
+
}
|
|
24
|
+
});
|
|
25
|
+
Object.defineProperty(exports, "useRealtimeKitMeeting", {
|
|
26
|
+
enumerable: true,
|
|
27
|
+
get: function () {
|
|
28
|
+
return _ReactHooks.useRealtimeKitMeeting;
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
Object.defineProperty(exports, "useRealtimeKitSelector", {
|
|
32
|
+
enumerable: true,
|
|
33
|
+
get: function () {
|
|
34
|
+
return _ReactHooks.useRealtimeKitSelector;
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
var _reactNative = require("react-native");
|
|
38
|
+
var _realtimekit = _interopRequireDefault(require("@cloudflare/realtimekit"));
|
|
39
|
+
var _LocalMediaHandler = _interopRequireDefault(require("./LocalMediaHandler"));
|
|
40
|
+
var _AudioSampleHandler = _interopRequireDefault(require("./AudioSampleHandler"));
|
|
41
|
+
var _BackgroundHandler = _interopRequireDefault(require("./BackgroundHandler"));
|
|
42
|
+
var _reactNativeWebrtc = require("@cloudflare/react-native-webrtc");
|
|
43
|
+
require("./utils/crypto");
|
|
44
|
+
require("text-encoding-polyfill");
|
|
45
|
+
require("node-libs-react-native/globals");
|
|
46
|
+
require("react-native-url-polyfill/auto");
|
|
47
|
+
var _DeviceInfo = _interopRequireDefault(require("./DeviceInfo"));
|
|
48
|
+
var _ReactHooks = require("./ReactHooks");
|
|
49
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
50
|
+
(0, _reactNativeWebrtc.registerGlobals)();
|
|
51
|
+
const LINKING_ERROR = `The package '@cloudflare/realtimekit-react-native' doesn't seem to be linked. Make sure: \n\n` + _reactNative.Platform.select({
|
|
52
|
+
ios: "- You have run 'pod install'\n",
|
|
53
|
+
default: ''
|
|
54
|
+
}) + '- You rebuilt the app after installing the package\n' + '- You are not using Expo managed workflow\n';
|
|
55
|
+
|
|
56
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
57
|
+
const Core = _reactNative.NativeModules.Core ? _reactNative.NativeModules.Core : new Proxy({}, {
|
|
58
|
+
get() {
|
|
59
|
+
throw new Error(LINKING_ERROR);
|
|
60
|
+
}
|
|
61
|
+
});
|
|
62
|
+
Object.defineProperty(navigator, 'isReactNative', {
|
|
63
|
+
get: function () {
|
|
64
|
+
return true;
|
|
65
|
+
},
|
|
66
|
+
configurable: true
|
|
67
|
+
});
|
|
68
|
+
Object.defineProperty(navigator, 'userAgent', {
|
|
69
|
+
get: function () {
|
|
70
|
+
return 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4753.0 Safari/537.36'; // customized user agent
|
|
71
|
+
},
|
|
72
|
+
configurable: true
|
|
73
|
+
});
|
|
74
|
+
Object.defineProperty(navigator, 'RNLocalMediaHandlerImpl', {
|
|
75
|
+
get: function () {
|
|
76
|
+
return _LocalMediaHandler.default;
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
Object.defineProperty(navigator, 'RNAudioSampleHandlerImpl', {
|
|
80
|
+
get: function () {
|
|
81
|
+
return _AudioSampleHandler.default;
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
Object.defineProperty(navigator, 'RNBackgroundTimerImpl', {
|
|
85
|
+
get: function () {
|
|
86
|
+
return _BackgroundHandler.default;
|
|
87
|
+
}
|
|
88
|
+
});
|
|
89
|
+
Object.defineProperty(navigator, 'RNDeviceInfoImpl', {
|
|
90
|
+
get: function () {
|
|
91
|
+
return _DeviceInfo.default;
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
var _default = exports.default = _realtimekit.default;
|
|
95
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_realtimekit","_interopRequireDefault","_LocalMediaHandler","_AudioSampleHandler","_BackgroundHandler","_reactNativeWebrtc","_DeviceInfo","_ReactHooks","e","__esModule","default","registerGlobals","LINKING_ERROR","Platform","select","ios","Core","NativeModules","Proxy","get","Error","Object","defineProperty","navigator","configurable","LocalMediaHandler","AudioSampleHandler","BackgroundTimer","DeviceInfo","_default","exports","RealtimeKitMeeting"],"sources":["index.tsx"],"sourcesContent":["import { NativeModules, Platform } from 'react-native';\nimport RealtimeKitMeeting from '@cloudflare/realtimekit';\nimport LocalMediaHandler from './LocalMediaHandler';\nimport AudioSampleHandler from './AudioSampleHandler';\nimport BackgroundTimer from './BackgroundHandler';\nimport { registerGlobals } from '@cloudflare/react-native-webrtc';\nimport './utils/crypto';\nimport 'text-encoding-polyfill';\nimport 'node-libs-react-native/globals';\nimport 'react-native-url-polyfill/auto';\nimport DeviceInfo from './DeviceInfo';\n\nexport {\n RealtimeKitProvider,\n useRealtimeKitClient,\n useRTKSelector,\n useRealtimeKitSelector,\n useRealtimeKitMeeting,\n} from './ReactHooks';\n\nregisterGlobals();\n\nconst LINKING_ERROR =\n `The package '@cloudflare/realtimekit-react-native' doesn't seem to be linked. Make sure: \\n\\n` +\n Platform.select({ ios: \"- You have run 'pod install'\\n\", default: '' }) +\n '- You rebuilt the app after installing the package\\n' +\n '- You are not using Expo managed workflow\\n';\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst Core = NativeModules.Core\n ? NativeModules.Core\n : new Proxy(\n {},\n {\n get() {\n throw new Error(LINKING_ERROR);\n },\n }\n );\n\ndeclare global {\n // @ts-ignore\n var navigator: any;\n}\n\nObject.defineProperty(navigator as any, 'isReactNative', {\n get: function () {\n return true;\n },\n configurable: true,\n});\n\nObject.defineProperty(navigator as any, 'userAgent', {\n get: function () {\n return 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4753.0 Safari/537.36'; // customized user agent\n },\n configurable: true,\n});\n\nObject.defineProperty(navigator as any, 'RNLocalMediaHandlerImpl', {\n get: function () {\n return LocalMediaHandler;\n },\n});\n\nObject.defineProperty(navigator as any, 'RNAudioSampleHandlerImpl', {\n get: function () {\n return AudioSampleHandler;\n },\n});\n\nObject.defineProperty(navigator as any, 'RNBackgroundTimerImpl', {\n get: function () {\n return BackgroundTimer;\n },\n});\n\nObject.defineProperty(navigator as any, 'RNDeviceInfoImpl', {\n get: function () {\n return DeviceInfo;\n },\n});\n\nexport default RealtimeKitMeeting;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAC,sBAAA,CAAAF,OAAA;AACA,IAAAG,kBAAA,GAAAD,sBAAA,CAAAF,OAAA;AACA,IAAAI,mBAAA,GAAAF,sBAAA,CAAAF,OAAA;AACA,IAAAK,kBAAA,GAAAH,sBAAA,CAAAF,OAAA;AACA,IAAAM,kBAAA,GAAAN,OAAA;AACAA,OAAA;AACAA,OAAA;AACAA,OAAA;AACAA,OAAA;AACA,IAAAO,WAAA,GAAAL,sBAAA,CAAAF,OAAA;AAEA,IAAAQ,WAAA,GAAAR,OAAA;AAMsB,SAAAE,uBAAAO,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEtB,IAAAG,kCAAe,EAAC,CAAC;AAEjB,MAAMC,aAAa,GACjB,+FAA+F,GAC/FC,qBAAQ,CAACC,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEL,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,6CAA6C;;AAE/C;AACA,MAAMM,IAAI,GAAGC,0BAAa,CAACD,IAAI,GAC3BC,0BAAa,CAACD,IAAI,GAClB,IAAIE,KAAK,CACP,CAAC,CAAC,EACF;EACEC,GAAGA,CAAA,EAAG;IACJ,MAAM,IAAIC,KAAK,CAACR,aAAa,CAAC;EAChC;AACF,CACF,CAAC;AAOLS,MAAM,CAACC,cAAc,CAACC,SAAS,EAAS,eAAe,EAAE;EACvDJ,GAAG,EAAE,SAAAA,CAAA,EAAY;IACf,OAAO,IAAI;EACb,CAAC;EACDK,YAAY,EAAE;AAChB,CAAC,CAAC;AAEFH,MAAM,CAACC,cAAc,CAACC,SAAS,EAAS,WAAW,EAAE;EACnDJ,GAAG,EAAE,SAAAA,CAAA,EAAY;IACf,OAAO,yHAAyH,CAAC,CAAC;EACpI,CAAC;EACDK,YAAY,EAAE;AAChB,CAAC,CAAC;AAEFH,MAAM,CAACC,cAAc,CAACC,SAAS,EAAS,yBAAyB,EAAE;EACjEJ,GAAG,EAAE,SAAAA,CAAA,EAAY;IACf,OAAOM,0BAAiB;EAC1B;AACF,CAAC,CAAC;AAEFJ,MAAM,CAACC,cAAc,CAACC,SAAS,EAAS,0BAA0B,EAAE;EAClEJ,GAAG,EAAE,SAAAA,CAAA,EAAY;IACf,OAAOO,2BAAkB;EAC3B;AACF,CAAC,CAAC;AAEFL,MAAM,CAACC,cAAc,CAACC,SAAS,EAAS,uBAAuB,EAAE;EAC/DJ,GAAG,EAAE,SAAAA,CAAA,EAAY;IACf,OAAOQ,0BAAe;EACxB;AACF,CAAC,CAAC;AAEFN,MAAM,CAACC,cAAc,CAACC,SAAS,EAAS,kBAAkB,EAAE;EAC1DJ,GAAG,EAAE,SAAAA,CAAA,EAAY;IACf,OAAOS,mBAAU;EACnB;AACF,CAAC,CAAC;AAAC,IAAAC,QAAA,GAAAC,OAAA,CAAApB,OAAA,GAEYqB,oBAAkB","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["BASE_SDK_VERSION","module","exports"],"sources":["constants.js"],"sourcesContent":["const BASE_SDK_VERSION = '0.1.4';\nmodule.exports = { BASE_SDK_VERSION };\n"],"mappings":";;AAAA,MAAMA,gBAAgB,GAAG,OAAO;AAChCC,MAAM,CAACC,OAAO,GAAG;EAAEF;AAAiB,CAAC","ignoreList":[]}
|