@100mslive/react-native-room-kit 1.0.3 → 1.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -0
- package/lib/commonjs/Icons/CrossCircle/assets/cross-circle.png +0 -0
- package/lib/commonjs/Icons/CrossCircle/assets/cross-circle@2x.png +0 -0
- package/lib/commonjs/Icons/CrossCircle/assets/cross-circle@3x.png +0 -0
- package/lib/commonjs/Icons/CrossCircle/index.js +33 -0
- package/lib/commonjs/Icons/CrossCircle/index.js.map +1 -0
- package/lib/commonjs/Icons/Hand/assets/hand-off.png +0 -0
- package/lib/commonjs/Icons/Hand/assets/hand-off@2x.png +0 -0
- package/lib/commonjs/Icons/Hand/assets/hand-off@3x.png +0 -0
- package/lib/commonjs/Icons/Radio/assets/radio-xlarge.png +0 -0
- package/lib/commonjs/Icons/Radio/assets/radio-xlarge@2x.png +0 -0
- package/lib/commonjs/Icons/Radio/assets/radio-xlarge@3x.png +0 -0
- package/lib/commonjs/Icons/Recording/assets/recording-off.png +0 -0
- package/lib/commonjs/Icons/Recording/assets/recording-off@2x.png +0 -0
- package/lib/commonjs/Icons/Recording/assets/recording-off@3x.png +0 -0
- package/lib/commonjs/Icons/WelcomeHand/assets/welcome-hand.png +0 -0
- package/lib/commonjs/Icons/WelcomeHand/assets/welcome-hand@2x.png +0 -0
- package/lib/commonjs/Icons/WelcomeHand/assets/welcome-hand@3x.png +0 -0
- package/lib/commonjs/Icons/index.js +11 -0
- package/lib/commonjs/Icons/index.js.map +1 -1
- package/lib/commonjs/components/HLSFooter.js +2 -1
- package/lib/commonjs/components/HLSFooter.js.map +1 -1
- package/lib/commonjs/components/HLSView.js +54 -4
- package/lib/commonjs/components/HLSView.js.map +1 -1
- package/lib/commonjs/components/HMSManageAudioOutput.js +116 -34
- package/lib/commonjs/components/HMSManageAudioOutput.js.map +1 -1
- package/lib/commonjs/components/RoomSettingsModalDebugModeContent.js +2 -3
- package/lib/commonjs/components/RoomSettingsModalDebugModeContent.js.map +1 -1
- package/lib/commonjs/hooks-sdk.js +17 -1
- package/lib/commonjs/hooks-sdk.js.map +1 -1
- package/lib/commonjs/hooks-util.js +7 -2
- package/lib/commonjs/hooks-util.js.map +1 -1
- package/lib/commonjs/utils/constants.js +4 -1
- package/lib/commonjs/utils/constants.js.map +1 -1
- package/lib/commonjs/utils/functions.js +2 -71
- package/lib/commonjs/utils/functions.js.map +1 -1
- package/lib/module/Icons/CrossCircle/assets/cross-circle.png +0 -0
- package/lib/module/Icons/CrossCircle/assets/cross-circle@2x.png +0 -0
- package/lib/module/Icons/CrossCircle/assets/cross-circle@3x.png +0 -0
- package/lib/module/Icons/CrossCircle/index.js +25 -0
- package/lib/module/Icons/CrossCircle/index.js.map +1 -0
- package/lib/module/Icons/Hand/assets/hand-off.png +0 -0
- package/lib/module/Icons/Hand/assets/hand-off@2x.png +0 -0
- package/lib/module/Icons/Hand/assets/hand-off@3x.png +0 -0
- package/lib/module/Icons/Radio/assets/radio-xlarge.png +0 -0
- package/lib/module/Icons/Radio/assets/radio-xlarge@2x.png +0 -0
- package/lib/module/Icons/Radio/assets/radio-xlarge@3x.png +0 -0
- package/lib/module/Icons/Recording/assets/recording-off.png +0 -0
- package/lib/module/Icons/Recording/assets/recording-off@2x.png +0 -0
- package/lib/module/Icons/Recording/assets/recording-off@3x.png +0 -0
- package/lib/module/Icons/WelcomeHand/assets/welcome-hand.png +0 -0
- package/lib/module/Icons/WelcomeHand/assets/welcome-hand@2x.png +0 -0
- package/lib/module/Icons/WelcomeHand/assets/welcome-hand@3x.png +0 -0
- package/lib/module/Icons/index.js +1 -0
- package/lib/module/Icons/index.js.map +1 -1
- package/lib/module/components/HLSFooter.js +2 -1
- package/lib/module/components/HLSFooter.js.map +1 -1
- package/lib/module/components/HLSView.js +55 -5
- package/lib/module/components/HLSView.js.map +1 -1
- package/lib/module/components/HMSManageAudioOutput.js +116 -34
- package/lib/module/components/HMSManageAudioOutput.js.map +1 -1
- package/lib/module/components/RoomSettingsModalDebugModeContent.js +4 -5
- package/lib/module/components/RoomSettingsModalDebugModeContent.js.map +1 -1
- package/lib/module/hooks-sdk.js +18 -2
- package/lib/module/hooks-sdk.js.map +1 -1
- package/lib/module/hooks-util.js +7 -2
- package/lib/module/hooks-util.js.map +1 -1
- package/lib/module/utils/constants.js +4 -1
- package/lib/module/utils/constants.js.map +1 -1
- package/lib/module/utils/functions.js +0 -67
- package/lib/module/utils/functions.js.map +1 -1
- package/lib/typescript/Icons/CrossCircle/index.d.ts +7 -0
- package/lib/typescript/Icons/CrossCircle/index.d.ts.map +1 -0
- package/lib/typescript/Icons/index.d.ts +1 -0
- package/lib/typescript/Icons/index.d.ts.map +1 -1
- package/lib/typescript/components/HLSFooter.d.ts.map +1 -1
- package/lib/typescript/components/HLSView.d.ts +2 -1
- package/lib/typescript/components/HLSView.d.ts.map +1 -1
- package/lib/typescript/components/HMSManageAudioOutput.d.ts.map +1 -1
- package/lib/typescript/components/RoomSettingsModalDebugModeContent.d.ts.map +1 -1
- package/lib/typescript/hooks-sdk.d.ts +1 -0
- package/lib/typescript/hooks-sdk.d.ts.map +1 -1
- package/lib/typescript/hooks-util.d.ts.map +1 -1
- package/lib/typescript/utils/constants.d.ts +3 -0
- package/lib/typescript/utils/constants.d.ts.map +1 -1
- package/lib/typescript/utils/functions.d.ts +0 -3
- package/lib/typescript/utils/functions.d.ts.map +1 -1
- package/package.json +2 -3
- package/src/Icons/CrossCircle/assets/cross-circle.png +0 -0
- package/src/Icons/CrossCircle/assets/cross-circle@2x.png +0 -0
- package/src/Icons/CrossCircle/assets/cross-circle@3x.png +0 -0
- package/src/Icons/CrossCircle/index.tsx +33 -0
- package/src/Icons/Hand/assets/hand-off.png +0 -0
- package/src/Icons/Hand/assets/hand-off@2x.png +0 -0
- package/src/Icons/Hand/assets/hand-off@3x.png +0 -0
- package/src/Icons/Radio/assets/radio-xlarge.png +0 -0
- package/src/Icons/Radio/assets/radio-xlarge@2x.png +0 -0
- package/src/Icons/Radio/assets/radio-xlarge@3x.png +0 -0
- package/src/Icons/Recording/assets/recording-off.png +0 -0
- package/src/Icons/Recording/assets/recording-off@2x.png +0 -0
- package/src/Icons/Recording/assets/recording-off@3x.png +0 -0
- package/src/Icons/WelcomeHand/assets/welcome-hand.png +0 -0
- package/src/Icons/WelcomeHand/assets/welcome-hand@2x.png +0 -0
- package/src/Icons/WelcomeHand/assets/welcome-hand@3x.png +0 -0
- package/src/Icons/index.ts +1 -0
- package/src/components/HLSFooter.tsx +3 -0
- package/src/components/HLSView.tsx +85 -4
- package/src/components/HMSManageAudioOutput.tsx +164 -48
- package/src/components/RoomSettingsModalDebugModeContent.tsx +4 -3
- package/src/hooks-sdk.ts +24 -0
- package/src/hooks-util.ts +95 -71
- package/src/utils/constants.ts +4 -0
- package/src/utils/functions.ts +8 -113
- package/lib/commonjs/utils/getRoomLinkDetails.js +0 -23
- package/lib/commonjs/utils/getRoomLinkDetails.js.map +0 -1
- package/lib/module/utils/getRoomLinkDetails.js +0 -16
- package/lib/module/utils/getRoomLinkDetails.js.map +0 -1
- package/lib/typescript/utils/getRoomLinkDetails.d.ts +0 -5
- package/lib/typescript/utils/getRoomLinkDetails.d.ts.map +0 -1
- package/src/utils/getRoomLinkDetails.ts +0 -23
package/src/utils/functions.ts
CHANGED
|
@@ -15,13 +15,6 @@ import {
|
|
|
15
15
|
} from '@100mslive/react-native-hms';
|
|
16
16
|
|
|
17
17
|
import type { PeerTrackNode } from './types';
|
|
18
|
-
import {
|
|
19
|
-
PERMISSIONS,
|
|
20
|
-
request,
|
|
21
|
-
requestMultiple,
|
|
22
|
-
RESULTS,
|
|
23
|
-
} from 'react-native-permissions';
|
|
24
|
-
import { getRoomLinkDetails } from './getRoomLinkDetails';
|
|
25
18
|
|
|
26
19
|
export const getMeetingUrl = () =>
|
|
27
20
|
'https://yogi.app.100ms.live/streaming/meeting/nih-bkn-vek';
|
|
@@ -102,57 +95,6 @@ export const requestExternalStoragePermission = async (): Promise<boolean> => {
|
|
|
102
95
|
return false;
|
|
103
96
|
};
|
|
104
97
|
|
|
105
|
-
export const callService = async (
|
|
106
|
-
roomID: string,
|
|
107
|
-
success: Function,
|
|
108
|
-
failure: Function
|
|
109
|
-
) => {
|
|
110
|
-
let roomCode;
|
|
111
|
-
let subdomain;
|
|
112
|
-
try {
|
|
113
|
-
if (validateUrl(roomID)) {
|
|
114
|
-
const { roomCode: code, roomDomain: domain } = getRoomLinkDetails(roomID);
|
|
115
|
-
roomCode = code;
|
|
116
|
-
subdomain = domain;
|
|
117
|
-
|
|
118
|
-
if (!code || !domain) {
|
|
119
|
-
failure('code, domain not found');
|
|
120
|
-
return;
|
|
121
|
-
}
|
|
122
|
-
} else {
|
|
123
|
-
failure('Invalid room join link');
|
|
124
|
-
return;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
const permissions = await checkPermissions([
|
|
128
|
-
PERMISSIONS.ANDROID.CAMERA,
|
|
129
|
-
PERMISSIONS.ANDROID.RECORD_AUDIO,
|
|
130
|
-
PERMISSIONS.ANDROID.BLUETOOTH_CONNECT,
|
|
131
|
-
]);
|
|
132
|
-
|
|
133
|
-
if (permissions) {
|
|
134
|
-
const userId = getRandomUserId(6);
|
|
135
|
-
const isQARoom = subdomain && subdomain.search('.qa-') >= 0;
|
|
136
|
-
success(
|
|
137
|
-
roomCode,
|
|
138
|
-
userId,
|
|
139
|
-
isQARoom
|
|
140
|
-
? `https://auth-nonprod.100ms.live${Platform.OS === 'ios' ? '/' : ''}`
|
|
141
|
-
: undefined, // Auth Endpoint
|
|
142
|
-
isQARoom ? 'https://qa-init.100ms.live/init' : undefined // HMSConfig Endpoint
|
|
143
|
-
);
|
|
144
|
-
return;
|
|
145
|
-
} else {
|
|
146
|
-
failure('permission not granted');
|
|
147
|
-
return;
|
|
148
|
-
}
|
|
149
|
-
} catch (error) {
|
|
150
|
-
console.log(error);
|
|
151
|
-
failure('error in call service');
|
|
152
|
-
return;
|
|
153
|
-
}
|
|
154
|
-
};
|
|
155
|
-
|
|
156
98
|
/**
|
|
157
99
|
* @param min minimum range value
|
|
158
100
|
* @param max maximum range value
|
|
@@ -307,53 +249,6 @@ export const validateUrl = (url?: string): boolean => {
|
|
|
307
249
|
return false;
|
|
308
250
|
};
|
|
309
251
|
|
|
310
|
-
export const checkPermissions = async (
|
|
311
|
-
permissions: Array<
|
|
312
|
-
(typeof PERMISSIONS.ANDROID)[keyof typeof PERMISSIONS.ANDROID]
|
|
313
|
-
>
|
|
314
|
-
): Promise<boolean> => {
|
|
315
|
-
if (Platform.OS === 'ios') {
|
|
316
|
-
return true;
|
|
317
|
-
}
|
|
318
|
-
|
|
319
|
-
try {
|
|
320
|
-
const requiredPermissions = permissions.filter(
|
|
321
|
-
(permission) =>
|
|
322
|
-
permission.toString() !== PERMISSIONS.ANDROID.BLUETOOTH_CONNECT
|
|
323
|
-
);
|
|
324
|
-
|
|
325
|
-
const results = await requestMultiple(requiredPermissions);
|
|
326
|
-
|
|
327
|
-
let allPermissionsGranted = true;
|
|
328
|
-
requiredPermissions.forEach((permission) => {
|
|
329
|
-
if (!(results[permission] === RESULTS.GRANTED)) {
|
|
330
|
-
allPermissionsGranted = false;
|
|
331
|
-
}
|
|
332
|
-
console.log(permission, ':', results[permission]);
|
|
333
|
-
});
|
|
334
|
-
|
|
335
|
-
// Bluetooth Connect Permission handling
|
|
336
|
-
if (
|
|
337
|
-
permissions.findIndex(
|
|
338
|
-
(permission) =>
|
|
339
|
-
permission.toString() === PERMISSIONS.ANDROID.BLUETOOTH_CONNECT
|
|
340
|
-
) >= 0
|
|
341
|
-
) {
|
|
342
|
-
const bleConnectResult = await request(
|
|
343
|
-
PERMISSIONS.ANDROID.BLUETOOTH_CONNECT
|
|
344
|
-
);
|
|
345
|
-
console.log(
|
|
346
|
-
`${PERMISSIONS.ANDROID.BLUETOOTH_CONNECT} : ${bleConnectResult}`
|
|
347
|
-
);
|
|
348
|
-
}
|
|
349
|
-
|
|
350
|
-
return allPermissionsGranted;
|
|
351
|
-
} catch (error) {
|
|
352
|
-
console.log(error);
|
|
353
|
-
return false;
|
|
354
|
-
}
|
|
355
|
-
};
|
|
356
|
-
|
|
357
252
|
export const pairData = (
|
|
358
253
|
unGroupedPeerTrackNodes: PeerTrackNode[],
|
|
359
254
|
batch: number,
|
|
@@ -448,19 +343,19 @@ export const getDisplayTrackDimensions = (
|
|
|
448
343
|
peersInPage === 1
|
|
449
344
|
? viewHeight / 1
|
|
450
345
|
: peersInPage === 2
|
|
451
|
-
|
|
452
|
-
|
|
453
|
-
|
|
454
|
-
|
|
346
|
+
? viewHeight / 2
|
|
347
|
+
: peersInPage === 3
|
|
348
|
+
? viewHeight / 3
|
|
349
|
+
: viewHeight / 2;
|
|
455
350
|
|
|
456
351
|
width =
|
|
457
352
|
peersInPage === 1
|
|
458
353
|
? '100%'
|
|
459
354
|
: peersInPage === 2
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
355
|
+
? '100%'
|
|
356
|
+
: peersInPage === 3
|
|
357
|
+
? '100%'
|
|
358
|
+
: '50%';
|
|
464
359
|
} else {
|
|
465
360
|
height = viewHeight - (StatusBar.currentHeight || 0);
|
|
466
361
|
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
6
|
-
exports.getRoomLinkDetails = void 0;
|
|
7
|
-
const getRoomLinkDetails = roomLink => {
|
|
8
|
-
const codeObject = RegExp(/(?!\/)[a-zA-Z\-0-9]*$/g).exec(roomLink);
|
|
9
|
-
const domainObject = RegExp(/(https:\/\/)?(?:[a-zA-Z0-9.-])+(?!\\)/).exec(roomLink);
|
|
10
|
-
let roomCode = '';
|
|
11
|
-
let roomDomain = '';
|
|
12
|
-
if (codeObject && domainObject) {
|
|
13
|
-
roomCode = codeObject[0];
|
|
14
|
-
roomDomain = domainObject[0];
|
|
15
|
-
roomDomain = roomDomain.replace('https://', '');
|
|
16
|
-
}
|
|
17
|
-
return {
|
|
18
|
-
roomCode,
|
|
19
|
-
roomDomain
|
|
20
|
-
};
|
|
21
|
-
};
|
|
22
|
-
exports.getRoomLinkDetails = getRoomLinkDetails;
|
|
23
|
-
//# sourceMappingURL=getRoomLinkDetails.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["getRoomLinkDetails","roomLink","codeObject","RegExp","exec","domainObject","roomCode","roomDomain","replace","exports"],"sourceRoot":"../../../src","sources":["utils/getRoomLinkDetails.ts"],"mappings":";;;;;;AAAO,MAAMA,kBAAkB,GAC7BC,QAAgB,IAC6B;EAC7C,MAAMC,UAAU,GAAGC,MAAM,CAAC,wBAAwB,CAAC,CAACC,IAAI,CAACH,QAAQ,CAAC;EAElE,MAAMI,YAAY,GAAGF,MAAM,CAAC,uCAAuC,CAAC,CAACC,IAAI,CACvEH,QACF,CAAC;EAED,IAAIK,QAAQ,GAAG,EAAE;EACjB,IAAIC,UAAU,GAAG,EAAE;EAEnB,IAAIL,UAAU,IAAIG,YAAY,EAAE;IAC9BC,QAAQ,GAAGJ,UAAU,CAAC,CAAC,CAAC;IACxBK,UAAU,GAAGF,YAAY,CAAC,CAAC,CAAC;IAC5BE,UAAU,GAAGA,UAAU,CAACC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;EACjD;EAEA,OAAO;IACLF,QAAQ;IACRC;EACF,CAAC;AACH,CAAC;AAACE,OAAA,CAAAT,kBAAA,GAAAA,kBAAA"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export const getRoomLinkDetails = roomLink => {
|
|
2
|
-
const codeObject = RegExp(/(?!\/)[a-zA-Z\-0-9]*$/g).exec(roomLink);
|
|
3
|
-
const domainObject = RegExp(/(https:\/\/)?(?:[a-zA-Z0-9.-])+(?!\\)/).exec(roomLink);
|
|
4
|
-
let roomCode = '';
|
|
5
|
-
let roomDomain = '';
|
|
6
|
-
if (codeObject && domainObject) {
|
|
7
|
-
roomCode = codeObject[0];
|
|
8
|
-
roomDomain = domainObject[0];
|
|
9
|
-
roomDomain = roomDomain.replace('https://', '');
|
|
10
|
-
}
|
|
11
|
-
return {
|
|
12
|
-
roomCode,
|
|
13
|
-
roomDomain
|
|
14
|
-
};
|
|
15
|
-
};
|
|
16
|
-
//# sourceMappingURL=getRoomLinkDetails.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["getRoomLinkDetails","roomLink","codeObject","RegExp","exec","domainObject","roomCode","roomDomain","replace"],"sourceRoot":"../../../src","sources":["utils/getRoomLinkDetails.ts"],"mappings":"AAAA,OAAO,MAAMA,kBAAkB,GAC7BC,QAAgB,IAC6B;EAC7C,MAAMC,UAAU,GAAGC,MAAM,CAAC,wBAAwB,CAAC,CAACC,IAAI,CAACH,QAAQ,CAAC;EAElE,MAAMI,YAAY,GAAGF,MAAM,CAAC,uCAAuC,CAAC,CAACC,IAAI,CACvEH,QACF,CAAC;EAED,IAAIK,QAAQ,GAAG,EAAE;EACjB,IAAIC,UAAU,GAAG,EAAE;EAEnB,IAAIL,UAAU,IAAIG,YAAY,EAAE;IAC9BC,QAAQ,GAAGJ,UAAU,CAAC,CAAC,CAAC;IACxBK,UAAU,GAAGF,YAAY,CAAC,CAAC,CAAC;IAC5BE,UAAU,GAAGA,UAAU,CAACC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;EACjD;EAEA,OAAO;IACLF,QAAQ;IACRC;EACF,CAAC;AACH,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getRoomLinkDetails.d.ts","sourceRoot":"","sources":["../../../src/utils/getRoomLinkDetails.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,kBAAkB,aACnB,MAAM;cACH,MAAM;gBAAc,MAAM;CAoBxC,CAAC"}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
export const getRoomLinkDetails = (
|
|
2
|
-
roomLink: string
|
|
3
|
-
): { roomCode: string; roomDomain: string } => {
|
|
4
|
-
const codeObject = RegExp(/(?!\/)[a-zA-Z\-0-9]*$/g).exec(roomLink);
|
|
5
|
-
|
|
6
|
-
const domainObject = RegExp(/(https:\/\/)?(?:[a-zA-Z0-9.-])+(?!\\)/).exec(
|
|
7
|
-
roomLink
|
|
8
|
-
);
|
|
9
|
-
|
|
10
|
-
let roomCode = '';
|
|
11
|
-
let roomDomain = '';
|
|
12
|
-
|
|
13
|
-
if (codeObject && domainObject) {
|
|
14
|
-
roomCode = codeObject[0];
|
|
15
|
-
roomDomain = domainObject[0];
|
|
16
|
-
roomDomain = roomDomain.replace('https://', '');
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
return {
|
|
20
|
-
roomCode,
|
|
21
|
-
roomDomain,
|
|
22
|
-
};
|
|
23
|
-
};
|