@tellescope/video-chat 0.0.14 → 0.0.18
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/cjs/controls.d.ts +18 -0
- package/lib/cjs/controls.d.ts.map +1 -0
- package/lib/cjs/controls.js +57 -0
- package/lib/cjs/controls.js.map +1 -0
- package/lib/cjs/index.d.ts +1 -0
- package/lib/cjs/index.d.ts.map +1 -1
- package/lib/cjs/index.js +1 -0
- package/lib/cjs/index.js.map +1 -1
- package/lib/cjs/index.native.d.ts +1 -0
- package/lib/cjs/index.native.d.ts.map +1 -1
- package/lib/cjs/index.native.js +1 -0
- package/lib/cjs/index.native.js.map +1 -1
- package/lib/cjs/native/RNVideoRenderView.d.ts +2 -2
- package/lib/cjs/native/RNVideoRenderView.d.ts.map +1 -1
- package/lib/cjs/native/RNVideoRenderView.js.map +1 -1
- package/lib/cjs/video.d.ts +13 -3
- package/lib/cjs/video.d.ts.map +1 -1
- package/lib/cjs/video.js +38 -7
- package/lib/cjs/video.js.map +1 -1
- package/lib/cjs/video.native.d.ts +7 -1
- package/lib/cjs/video.native.d.ts.map +1 -1
- package/lib/cjs/video.native.js +89 -36
- package/lib/cjs/video.native.js.map +1 -1
- package/lib/esm/controls.d.ts +18 -0
- package/lib/esm/controls.d.ts.map +1 -0
- package/lib/esm/controls.js +46 -0
- package/lib/esm/controls.js.map +1 -0
- package/lib/esm/index.d.ts +1 -0
- package/lib/esm/index.d.ts.map +1 -1
- package/lib/esm/index.js +1 -0
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/index.native.d.ts +1 -0
- package/lib/esm/index.native.d.ts.map +1 -1
- package/lib/esm/index.native.js +1 -0
- package/lib/esm/index.native.js.map +1 -1
- package/lib/esm/native/RNVideoRenderView.d.ts +2 -2
- package/lib/esm/native/RNVideoRenderView.d.ts.map +1 -1
- package/lib/esm/native/RNVideoRenderView.js.map +1 -1
- package/lib/esm/shared.d.ts +1 -0
- package/lib/esm/shared.d.ts.map +1 -0
- package/lib/esm/shared.js +2 -0
- package/lib/esm/shared.js.map +1 -0
- package/lib/esm/video.d.ts +13 -3
- package/lib/esm/video.d.ts.map +1 -1
- package/lib/esm/video.js +36 -8
- package/lib/esm/video.js.map +1 -1
- package/lib/esm/video.native.d.ts +7 -1
- package/lib/esm/video.native.d.ts.map +1 -1
- package/lib/esm/video.native.js +88 -37
- package/lib/esm/video.native.js.map +1 -1
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +10 -10
- package/src/controls.tsx +86 -0
- package/src/index.native.ts +2 -1
- package/src/index.ts +2 -1
- package/src/native/RNVideoRenderView.tsx +1 -1
- package/src/video.native.tsx +122 -53
- package/src/video.tsx +45 -16
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { Styled } from "@tellescope/react-components/lib/esm/mui";
|
|
2
|
+
interface ButtonProps {
|
|
3
|
+
size?: number;
|
|
4
|
+
}
|
|
5
|
+
export declare const VideoToggle: ({ size }: ButtonProps) => JSX.Element;
|
|
6
|
+
export declare const MicrophoneToggle: ({ size }: ButtonProps) => JSX.Element;
|
|
7
|
+
export declare const EndMeeting: ({ size }: ButtonProps) => JSX.Element;
|
|
8
|
+
interface LeaveMeetingProps {
|
|
9
|
+
onLeave?: () => void;
|
|
10
|
+
}
|
|
11
|
+
export declare const LeaveMeeting: ({ onLeave, size }: LeaveMeetingProps & ButtonProps) => JSX.Element;
|
|
12
|
+
interface ControlbarProps {
|
|
13
|
+
spacing?: number;
|
|
14
|
+
size?: number;
|
|
15
|
+
}
|
|
16
|
+
export declare const ControlBar: ({ onLeave, style, spacing, size }: ControlbarProps & LeaveMeetingProps & Styled) => JSX.Element;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=controls.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"controls.d.ts","sourceRoot":"","sources":["../../src/controls.tsx"],"names":[],"mappings":"AAGA,OAAO,EASL,MAAM,EACP,MAAM,0CAA0C,CAAA;AASjD,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AACD,eAAO,MAAM,WAAW,aAAmC,WAAW,gBAQrE,CAAA;AAED,eAAO,MAAM,gBAAgB,aAAkC,WAAW,gBAQzE,CAAA;AAGD,eAAO,MAAM,UAAU,aAAkC,WAAW,gBAMnE,CAAA;AAED,UAAU,iBAAiB;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AACD,eAAO,MAAM,YAAY,sBAA4C,iBAAiB,GAAG,WAAW,gBAEnG,CAAA;AAED,UAAU,eAAe;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CAEf;AACD,eAAO,MAAM,UAAU,sCAA2C,eAAe,GAAG,iBAAiB,GAAG,MAAM,gBAmB7G,CAAA"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.ControlBar = exports.LeaveMeeting = exports.EndMeeting = exports.MicrophoneToggle = exports.VideoToggle = void 0;
|
|
18
|
+
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
19
|
+
// components that work with web or native
|
|
20
|
+
var react_1 = __importDefault(require("react"));
|
|
21
|
+
var mui_1 = require("@tellescope/react-components/lib/esm/mui");
|
|
22
|
+
var controls_1 = require("@tellescope/react-components/lib/esm/controls");
|
|
23
|
+
var layout_1 = require("@tellescope/react-components/lib/esm/layout");
|
|
24
|
+
var video_1 = require("./video");
|
|
25
|
+
var DEFAULT_BUTTON_SIZE = 30;
|
|
26
|
+
var VideoToggle = function (_a) {
|
|
27
|
+
var _b = _a.size, size = _b === void 0 ? DEFAULT_BUTTON_SIZE : _b;
|
|
28
|
+
var _c = react_1.default.useContext(video_1.CurrentCallContext), toggleVideo = _c.toggleVideo, videoIsEnabled = _c.videoIsEnabled;
|
|
29
|
+
return ((0, jsx_runtime_1.jsx)(controls_1.LabeledIconButton, { size: size, Icon: videoIsEnabled ? mui_1.VideoIcon : mui_1.VideoOffIcon, onClick: toggleVideo, label: videoIsEnabled ? "Turn Camera Off" : "Turn Camera On" }, void 0));
|
|
30
|
+
};
|
|
31
|
+
exports.VideoToggle = VideoToggle;
|
|
32
|
+
var MicrophoneToggle = function (_a) {
|
|
33
|
+
var _b = _a.size, size = _b === void 0 ? DEFAULT_BUTTON_SIZE : _b;
|
|
34
|
+
var _c = react_1.default.useContext(video_1.CurrentCallContext), microphoneIsEnabled = _c.microphoneIsEnabled, toggleMicrophone = _c.toggleMicrophone;
|
|
35
|
+
return ((0, jsx_runtime_1.jsx)(controls_1.LabeledIconButton, { size: size, Icon: microphoneIsEnabled ? mui_1.MicrophoneIcon : mui_1.MicrophoneOffIcon, onClick: toggleMicrophone, label: microphoneIsEnabled ? "Turn Microphone Off" : "Turn Microphone On" }, void 0));
|
|
36
|
+
};
|
|
37
|
+
exports.MicrophoneToggle = MicrophoneToggle;
|
|
38
|
+
// ends meeting if host, otherwise leaves meeting
|
|
39
|
+
var EndMeeting = function (_a) {
|
|
40
|
+
var _b = _a.size, size = _b === void 0 ? DEFAULT_BUTTON_SIZE : _b;
|
|
41
|
+
var endMeeting = (0, video_1.useStartVideoCall)().endMeeting;
|
|
42
|
+
return ((0, jsx_runtime_1.jsx)(controls_1.LabeledIconButton, { size: size, Icon: mui_1.CallEndIcon, onClick: endMeeting, label: "End Meeting" }, void 0));
|
|
43
|
+
};
|
|
44
|
+
exports.EndMeeting = EndMeeting;
|
|
45
|
+
var LeaveMeeting = function (_a) {
|
|
46
|
+
var onLeave = _a.onLeave, _b = _a.size, size = _b === void 0 ? DEFAULT_BUTTON_SIZE : _b;
|
|
47
|
+
return ((0, jsx_runtime_1.jsx)(controls_1.LabeledIconButton, { size: size, Icon: mui_1.CallEndIcon, onClick: onLeave, label: "Leave Meeting" }, void 0));
|
|
48
|
+
};
|
|
49
|
+
exports.LeaveMeeting = LeaveMeeting;
|
|
50
|
+
var ControlBar = function (_a) {
|
|
51
|
+
var onLeave = _a.onLeave, style = _a.style, _b = _a.spacing, spacing = _b === void 0 ? 15 : _b, size = _a.size;
|
|
52
|
+
var isHost = react_1.default.useContext(video_1.CurrentCallContext).isHost;
|
|
53
|
+
var itemStyle = { marginLeft: spacing, marginRight: spacing };
|
|
54
|
+
return ((0, jsx_runtime_1.jsx)(layout_1.Flex, __assign({ flex: 1, alignItems: "center", justifyContent: "center", style: style }, { children: (0, jsx_runtime_1.jsxs)(mui_1.Paper, __assign({ elevation: 5, style: { display: 'flex', flexDirection: 'row', padding: spacing } }, { children: [(0, jsx_runtime_1.jsx)(layout_1.Flex, __assign({ style: itemStyle }, { children: (0, jsx_runtime_1.jsx)(exports.VideoToggle, { size: size }, void 0) }), void 0), (0, jsx_runtime_1.jsx)(layout_1.Flex, __assign({ style: itemStyle }, { children: (0, jsx_runtime_1.jsx)(exports.MicrophoneToggle, { size: size }, void 0) }), void 0), (0, jsx_runtime_1.jsx)(layout_1.Flex, __assign({ style: itemStyle }, { children: isHost ? (0, jsx_runtime_1.jsx)(exports.EndMeeting, { size: size }, void 0) : (0, jsx_runtime_1.jsx)(exports.LeaveMeeting, { size: size, onLeave: onLeave }, void 0) }), void 0)] }), void 0) }), void 0));
|
|
55
|
+
};
|
|
56
|
+
exports.ControlBar = ControlBar;
|
|
57
|
+
//# sourceMappingURL=controls.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"controls.js","sourceRoot":"","sources":["../../src/controls.tsx"],"names":[],"mappings":"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"}
|
package/lib/cjs/index.d.ts
CHANGED
package/lib/cjs/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAA"}
|
package/lib/cjs/index.js
CHANGED
|
@@ -11,4 +11,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
13
|
__exportStar(require("./video"), exports);
|
|
14
|
+
__exportStar(require("./controls"), exports);
|
|
14
15
|
//# sourceMappingURL=index.js.map
|
package/lib/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAwB"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAwB;AACxB,6CAA0B"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../src/index.native.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.native.d.ts","sourceRoot":"","sources":["../../src/index.native.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAA;AACvB,cAAc,YAAY,CAAA"}
|
package/lib/cjs/index.native.js
CHANGED
|
@@ -11,4 +11,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
13
|
__exportStar(require("./video"), exports);
|
|
14
|
+
__exportStar(require("./controls"), exports);
|
|
14
15
|
//# sourceMappingURL=index.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.native.js","sourceRoot":"","sources":["../../src/index.native.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAuB"}
|
|
1
|
+
{"version":3,"file":"index.native.js","sourceRoot":"","sources":["../../src/index.native.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,0CAAuB;AACvB,6CAA0B"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import { ViewStyle } from 'react-native';
|
|
3
3
|
export declare class RNVideoView extends React.Component<{
|
|
4
|
-
tileId:
|
|
5
|
-
style
|
|
4
|
+
tileId: number;
|
|
5
|
+
style?: ViewStyle;
|
|
6
6
|
}> {
|
|
7
7
|
componentDidMount(): void;
|
|
8
8
|
componentWillUnmount(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RNVideoRenderView.d.ts","sourceRoot":"","sources":["../../../src/native/RNVideoRenderView.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAA0C,SAAS,EAAE,MAAM,cAAc,CAAC;AAGjF,qBAAa,WAAY,SAAQ,KAAK,CAAC,SAAS,CAAC;IAAE,MAAM,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"RNVideoRenderView.d.ts","sourceRoot":"","sources":["../../../src/native/RNVideoRenderView.tsx"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAA0C,SAAS,EAAE,MAAM,cAAc,CAAC;AAGjF,qBAAa,WAAY,SAAQ,KAAK,CAAC,SAAS,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC;IACrF,iBAAiB;IAUjB,oBAAoB;IAIpB,MAAM;CAGP"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RNVideoRenderView.js","sourceRoot":"","sources":["../../../src/native/RNVideoRenderView.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,gDAA0B;AAC1B,6CAAiF;AACjF,mCAA0C;AAE1C;IAAiC,+
|
|
1
|
+
{"version":3,"file":"RNVideoRenderView.js","sourceRoot":"","sources":["../../../src/native/RNVideoRenderView.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA,gDAA0B;AAC1B,6CAAiF;AACjF,mCAA0C;AAE1C;IAAiC,+BAAsD;IAAvF;;IAkBA,CAAC;IAjBC,uCAAiB,GAAjB;QAAA,iBAQC;QAPC,mCAAmC;QACnC,8FAA8F;QAC9F,wGAAwG;QACxG,oEAAoE;QACpE,UAAU,CAAC;YACT,uBAAc,CAAC,aAAa,CAAC,IAAA,6BAAc,EAAC,KAAI,CAAC,EAAE,KAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACxE,CAAC,CAAC,CAAC;IACL,CAAC;IAED,0CAAoB,GAApB;QACE,uBAAc,CAAC,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACpD,CAAC;IAED,4BAAM,GAAN;QACE,OAAO,uBAAC,uBAAuB,eAAK,IAAI,CAAC,KAAK,UAAI,CAAC;IACrD,CAAC;IACH,kBAAC;AAAD,CAAC,AAlBD,CAAiC,eAAK,CAAC,SAAS,GAkB/C;AAlBY,kCAAW;AAoBxB,IAAM,uBAAuB,GAAG,IAAA,qCAAsB,EAAC,aAAa,CAAC,CAAC"}
|
package/lib/cjs/video.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React from "react";
|
|
1
|
+
import React, { CSSProperties } from "react";
|
|
2
2
|
import { UserIdentity } from "@tellescope/types-utilities";
|
|
3
3
|
import { AttendeeInfo, MeetingInfo } from '@tellescope/types-models';
|
|
4
4
|
import { darkTheme, VideoTileGrid } from 'amazon-chime-sdk-component-library-react';
|
|
@@ -11,9 +11,14 @@ export declare const CurrentCallContext: React.Context<{
|
|
|
11
11
|
setMeeting: (m: MeetingInfo | undefined) => void;
|
|
12
12
|
videoIsEnabled: boolean;
|
|
13
13
|
toggleVideo: () => Promise<void>;
|
|
14
|
+
microphoneIsEnabled: boolean;
|
|
15
|
+
toggleMicrophone: () => Promise<void>;
|
|
14
16
|
attendees: AttendeeDisplayInfo[];
|
|
15
|
-
shareScreenId:
|
|
16
|
-
|
|
17
|
+
shareScreenId: number | null;
|
|
18
|
+
localTileId: number | null;
|
|
19
|
+
isHost: boolean;
|
|
20
|
+
setIsHost: (b: boolean) => void;
|
|
21
|
+
videoTiles: (number)[];
|
|
17
22
|
}>;
|
|
18
23
|
export interface VideoProps {
|
|
19
24
|
children?: React.ReactNode;
|
|
@@ -42,5 +47,10 @@ export declare const useJoinVideoCall: () => {
|
|
|
42
47
|
}) => Promise<void>;
|
|
43
48
|
};
|
|
44
49
|
export declare type JoinVideoCallReturnType = ReturnType<typeof useJoinVideoCall>;
|
|
50
|
+
export interface VideoViewProps {
|
|
51
|
+
style?: CSSProperties;
|
|
52
|
+
}
|
|
53
|
+
export declare const SelfView: ({ style }: VideoViewProps) => JSX.Element;
|
|
54
|
+
export declare const useRemoteViews: (props?: VideoViewProps) => JSX.Element[];
|
|
45
55
|
export { VideoTileGrid };
|
|
46
56
|
//# sourceMappingURL=video.d.ts.map
|
package/lib/cjs/video.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"video.d.ts","sourceRoot":"","sources":["../../src/video.tsx"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"video.d.ts","sourceRoot":"","sources":["../../src/video.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAyB,aAAa,EAAY,MAAM,OAAO,CAAA;AAM7E,OAAO,EACL,YAAY,EACb,MAAM,6BAA6B,CAAA;AACpC,OAAO,EACL,YAAY,EACZ,WAAW,EACZ,MAAM,0BAA0B,CAAA;AAIjC,OAAO,EAEL,SAAS,EAGT,aAAa,EAed,MAAM,0CAA0C,CAAC;AAGlD,oBAAY,mBAAmB,GAAI;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,CAAA;AAEjF,eAAO,MAAM,kBAAkB;aACpB,WAAW,GAAG,SAAS;oBAAkB,WAAW,GAAG,SAAS,KAAK,IAAI;oBAClE,OAAO;iBAAe,MAAM,QAAQ,IAAI,CAAC;yBACpC,OAAO;sBAAoB,MAAM,QAAQ,IAAI,CAAC;eACxD,mBAAmB,EAAE;mBAAiB,MAAM,GAAG,IAAI;iBACjD,MAAM,GAAG,IAAI;YAClB,OAAO;mBAAiB,OAAO,KAAK,IAAI;gBACpC,CAAC,MAAM,CAAC,EAAE;EACtB,CAAA;AACF,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC3B,KAAK,CAAC,EAAE,OAAO,SAAS,CAAC;CAC1B;AAkCD,eAAO,MAAM,SAAS,wBAAmC,UAAU,gBAQlE,CAAA;AAED,eAAO,MAAM,iBAAiB;;;;;uBAtDgB,QAAQ,IAAI,CAAC;;8BAqFN,YAAY,EAAE;;CAkBlE,CAAA;AACD,oBAAY,wBAAwB,GAAG,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAA;AAE3E,eAAO,MAAM,gBAAgB;;;uBA1GiB,QAAQ,IAAI,CAAC;+BA8GjB;QAAE,OAAO,EAAE,WAAW,CAAA;KAAE,gBAAgB;QAAE,QAAQ,EAAE,YAAY,CAAA;KAAE;CAO3G,CAAA;AACD,oBAAY,uBAAuB,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAA;AAEzE,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,aAAa,CAAC;CACvB;AACD,eAAO,MAAM,QAAQ,cAAe,cAAc,gBAA2C,CAAA;AAE7F,eAAO,MAAM,cAAc,2CAO1B,CAAA;AAGD,OAAO,EAAE,aAAa,EAAE,CAAA"}
|
package/lib/cjs/video.js
CHANGED
|
@@ -66,7 +66,7 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
66
66
|
}
|
|
67
67
|
};
|
|
68
68
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
69
|
-
exports.VideoTileGrid = exports.useJoinVideoCall = exports.useStartVideoCall = exports.WithVideo = exports.CurrentCallContext = void 0;
|
|
69
|
+
exports.VideoTileGrid = exports.useRemoteViews = exports.SelfView = exports.useJoinVideoCall = exports.useStartVideoCall = exports.WithVideo = exports.CurrentCallContext = void 0;
|
|
70
70
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
71
71
|
var react_1 = __importStar(require("react"));
|
|
72
72
|
var authentication_1 = require("@tellescope/react-components/lib/esm/authentication");
|
|
@@ -77,19 +77,35 @@ Object.defineProperty(exports, "VideoTileGrid", { enumerable: true, get: functio
|
|
|
77
77
|
amazon_chime_sdk_component_library_react_1.VideoTileGrid; } });
|
|
78
78
|
exports.CurrentCallContext = react_1.default.createContext({});
|
|
79
79
|
var WithContext = function (_a) {
|
|
80
|
-
var _b;
|
|
81
80
|
var children = _a.children;
|
|
82
|
-
var
|
|
83
|
-
var
|
|
81
|
+
var _b = (0, react_1.useState)(undefined), meeting = _b[0], setMeeting = _b[1];
|
|
82
|
+
var _c = (0, react_1.useState)(false), isHost = _c[0], setIsHost = _c[1];
|
|
83
|
+
var _d = (0, amazon_chime_sdk_component_library_react_1.useLocalVideo)(), toggleVideo = _d.toggleVideo, videoIsEnabled = _d.isVideoEnabled, localTileId = _d.tileId;
|
|
84
84
|
var roster = (0, amazon_chime_sdk_component_library_react_1.useRosterState)().roster;
|
|
85
85
|
var tileId = (0, amazon_chime_sdk_component_library_react_1.useContentShareState)().tileId;
|
|
86
86
|
var tiles = (0, amazon_chime_sdk_component_library_react_1.useRemoteVideoTileState)().tiles;
|
|
87
|
+
var _e = (0, amazon_chime_sdk_component_library_react_1.useToggleLocalMute)(), muted = _e.muted, toggleMute = _e.toggleMute;
|
|
87
88
|
var attendees = [];
|
|
88
89
|
for (var attendeeId in roster) {
|
|
89
90
|
var externalUserId = roster[attendeeId].externalUserId;
|
|
90
91
|
attendees.push({ attendeeId: attendeeId, externalUserId: externalUserId });
|
|
91
92
|
}
|
|
92
|
-
return ((0, jsx_runtime_1.jsx)(exports.CurrentCallContext.Provider, __assign({ value: {
|
|
93
|
+
return ((0, jsx_runtime_1.jsx)(exports.CurrentCallContext.Provider, __assign({ value: {
|
|
94
|
+
isHost: isHost,
|
|
95
|
+
setIsHost: setIsHost,
|
|
96
|
+
attendees: attendees,
|
|
97
|
+
localTileId: localTileId,
|
|
98
|
+
videoTiles: tiles,
|
|
99
|
+
shareScreenId: tileId,
|
|
100
|
+
meeting: meeting,
|
|
101
|
+
setMeeting: setMeeting,
|
|
102
|
+
videoIsEnabled: videoIsEnabled,
|
|
103
|
+
toggleVideo: toggleVideo,
|
|
104
|
+
microphoneIsEnabled: !muted,
|
|
105
|
+
toggleMicrophone: function () { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
|
|
106
|
+
return [2 /*return*/, toggleMute()];
|
|
107
|
+
}); }); },
|
|
108
|
+
} }, { children: children }), void 0));
|
|
93
109
|
};
|
|
94
110
|
var WithVideo = function (_a) {
|
|
95
111
|
var children = _a.children, _b = _a.theme, theme = _b === void 0 ? amazon_chime_sdk_component_library_react_1.darkTheme : _b;
|
|
@@ -99,8 +115,8 @@ exports.WithVideo = WithVideo;
|
|
|
99
115
|
var useStartVideoCall = function () {
|
|
100
116
|
var _a = (0, react_1.useState)(false), starting = _a[0], setStarting = _a[1];
|
|
101
117
|
var _b = (0, react_1.useState)(false), ending = _b[0], setEnding = _b[1];
|
|
102
|
-
var _c = react_1.default.useContext(exports.CurrentCallContext), meeting = _c.meeting, setMeeting = _c.setMeeting, toggleVideo = _c.toggleVideo, videoIsEnabled = _c.videoIsEnabled;
|
|
103
|
-
var session = (0, authentication_1.useSession)();
|
|
118
|
+
var _c = react_1.default.useContext(exports.CurrentCallContext), meeting = _c.meeting, setMeeting = _c.setMeeting, toggleVideo = _c.toggleVideo, videoIsEnabled = _c.videoIsEnabled, setIsHost = _c.setIsHost;
|
|
119
|
+
var session = (0, authentication_1.useSession)(); // meetings can only be started by users, not endusers (for now)
|
|
104
120
|
var meetingManager = (0, amazon_chime_sdk_component_library_react_1.useMeetingManager)();
|
|
105
121
|
var createAndStartMeeting = function (initialAttendees) { return __awaiter(void 0, void 0, void 0, function () {
|
|
106
122
|
var _a, meeting_1, host, err_1;
|
|
@@ -124,6 +140,7 @@ var useStartVideoCall = function () {
|
|
|
124
140
|
session.api.meetings.add_attendees_to_meeting({ id: meeting_1.Meeting.ExternalMeetingId, attendees: initialAttendees });
|
|
125
141
|
}
|
|
126
142
|
setMeeting(meeting_1.Meeting);
|
|
143
|
+
setIsHost(true);
|
|
127
144
|
return [3 /*break*/, 7];
|
|
128
145
|
case 5:
|
|
129
146
|
err_1 = _b.sent();
|
|
@@ -198,4 +215,18 @@ var useJoinVideoCall = function () {
|
|
|
198
215
|
return { meeting: meeting, videoIsEnabled: videoIsEnabled, toggleVideo: toggleVideo, joinMeeting: joinMeeting };
|
|
199
216
|
};
|
|
200
217
|
exports.useJoinVideoCall = useJoinVideoCall;
|
|
218
|
+
var SelfView = function (_a) {
|
|
219
|
+
var style = _a.style;
|
|
220
|
+
return (0, jsx_runtime_1.jsx)("div", __assign({ style: style }, { children: (0, jsx_runtime_1.jsx)(amazon_chime_sdk_component_library_react_1.LocalVideo, {}, void 0) }), void 0);
|
|
221
|
+
};
|
|
222
|
+
exports.SelfView = SelfView;
|
|
223
|
+
var useRemoteViews = function (props) {
|
|
224
|
+
if (props === void 0) { props = {}; }
|
|
225
|
+
var _a = react_1.default.useContext(exports.CurrentCallContext), localTileId = _a.localTileId, videoTiles = _a.videoTiles;
|
|
226
|
+
var nonLocal = videoTiles.filter(function (v) { return v !== localTileId; });
|
|
227
|
+
return nonLocal.map(function (tileId) {
|
|
228
|
+
return (0, jsx_runtime_1.jsx)(amazon_chime_sdk_component_library_react_1.RemoteVideo, { style: props.style, tileId: tileId }, tileId);
|
|
229
|
+
});
|
|
230
|
+
};
|
|
231
|
+
exports.useRemoteViews = useRemoteViews;
|
|
201
232
|
//# sourceMappingURL=video.js.map
|
package/lib/cjs/video.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"video.js","sourceRoot":"","sources":["../../src/video.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA6E;AAE7E,sFAE4D;
|
|
1
|
+
{"version":3,"file":"video.js","sourceRoot":"","sources":["../../src/video.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
|
-
import
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { CurrentCallContext, JoinVideoCallReturnType, StartVideoCallReturnType, VideoProps, VideoViewProps } from "./video.js";
|
|
3
|
+
export { CurrentCallContext };
|
|
2
4
|
export declare const WithVideo: ({ children }: VideoProps) => JSX.Element;
|
|
5
|
+
export declare const useRemoteViews: (props?: {
|
|
6
|
+
style: React.CSSProperties;
|
|
7
|
+
}) => JSX.Element[];
|
|
8
|
+
export declare const SelfView: ({ style }: VideoViewProps) => JSX.Element | null;
|
|
3
9
|
export declare const useStartVideoCall: () => StartVideoCallReturnType;
|
|
4
10
|
export declare const useJoinVideoCall: () => JoinVideoCallReturnType;
|
|
5
11
|
export declare const VideoTileGrid: () => JSX.Element;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"video.native.d.ts","sourceRoot":"","sources":["../../src/video.native.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"video.native.d.ts","sourceRoot":"","sources":["../../src/video.native.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAuD,MAAM,OAAO,CAAA;AAsB3E,OAAO,EACL,kBAAkB,EAClB,uBAAuB,EACvB,wBAAwB,EACxB,UAAU,EAEV,cAAc,EACf,MAAM,YAAY,CAAA;AASnB,OAAO,EAAE,kBAAkB,EAAE,CAAA;AAQ7B,eAAO,MAAM,SAAS,iBAAmB,UAAU,gBAkHlD,CAAA;AAGD,eAAO,MAAM,cAAc;WAAyB,MAAM,aAAa;mBAOtE,CAAA;AAED,eAAO,MAAM,QAAQ,cAAgB,cAAc,uBAOlD,CAAA;AAED,eAAO,MAAM,iBAAiB,QAAO,wBAsDpC,CAAA;AAED,eAAO,MAAM,gBAAgB,QAAO,uBAQnC,CAAA;AACD,eAAO,MAAM,aAAa,mBAgDzB,CAAA"}
|
package/lib/cjs/video.native.js
CHANGED
|
@@ -75,7 +75,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
75
75
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
76
76
|
};
|
|
77
77
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
78
|
-
exports.VideoTileGrid = exports.useJoinVideoCall = exports.useStartVideoCall = exports.WithVideo = void 0;
|
|
78
|
+
exports.VideoTileGrid = exports.useJoinVideoCall = exports.useStartVideoCall = exports.SelfView = exports.useRemoteViews = exports.WithVideo = exports.CurrentCallContext = void 0;
|
|
79
79
|
var jsx_runtime_1 = require("react/jsx-runtime");
|
|
80
80
|
// logic pulled + refactored from
|
|
81
81
|
// https://github.com/aws-samples/amazon-chime-react-native-demo/blob/master/src/containers/Meeting.js
|
|
@@ -87,37 +87,59 @@ var jsx_runtime_1 = require("react/jsx-runtime");
|
|
|
87
87
|
var react_1 = __importStar(require("react"));
|
|
88
88
|
var react_native_1 = require("react-native");
|
|
89
89
|
var authentication_1 = require("@tellescope/react-components/lib/esm/authentication");
|
|
90
|
-
var
|
|
90
|
+
var layout_1 = require("@tellescope/react-components/lib/esm/layout");
|
|
91
|
+
var mui_native_1 = require("@tellescope/react-components/lib/esm/mui.native");
|
|
91
92
|
var video_js_1 = require("./video.js");
|
|
93
|
+
Object.defineProperty(exports, "CurrentCallContext", { enumerable: true, get: function () { return video_js_1.CurrentCallContext; } });
|
|
92
94
|
var bridge_1 = require("./native/bridge");
|
|
93
95
|
var RNVideoRenderView_1 = require("./native/RNVideoRenderView");
|
|
94
96
|
var WithVideo = function (_a) {
|
|
95
97
|
var children = _a.children;
|
|
96
98
|
var _b = (0, react_1.useState)(undefined), meeting = _b[0], setMeeting = _b[1];
|
|
97
|
-
var _c = (0, react_1.useState)(false),
|
|
98
|
-
var _d = (0, react_1.useState)(false),
|
|
99
|
-
var _e = (0, react_1.useState)(false),
|
|
100
|
-
var _f = (0, react_1.useState)(
|
|
101
|
-
var _g = (0, react_1.useState)(
|
|
102
|
-
var _h = (0, react_1.useState)([]),
|
|
103
|
-
var
|
|
99
|
+
var _c = (0, react_1.useState)(false), isHost = _c[0], setIsHost = _c[1];
|
|
100
|
+
var _d = (0, react_1.useState)(false), inMeeting = _d[0], setInMeeting = _d[1];
|
|
101
|
+
var _e = (0, react_1.useState)(false), isLoading = _e[0], setIsLoading = _e[1];
|
|
102
|
+
var _f = (0, react_1.useState)(false), muted = _f[0], setMuted = _f[1];
|
|
103
|
+
var _g = (0, react_1.useState)(false), videoIsEnabled = _g[0], setVideoIsEnabled = _g[1];
|
|
104
|
+
var _h = (0, react_1.useState)([]), videoTiles = _h[0], setVideoTiles = _h[1];
|
|
105
|
+
var _j = (0, react_1.useState)(null), localTileId = _j[0], setLocalTileId = _j[1];
|
|
106
|
+
var _k = (0, react_1.useState)(null), screenShareTile = _k[0], setScreenShareTile = _k[1];
|
|
107
|
+
var _l = (0, react_1.useState)([]), attendees = _l[0], setAttendees = _l[1];
|
|
108
|
+
var toggleVideo = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
109
|
+
return __generator(this, function (_a) {
|
|
110
|
+
bridge_1.NativeFunction.setCameraOn(!videoIsEnabled);
|
|
111
|
+
if (videoIsEnabled) {
|
|
112
|
+
setLocalTileId(null);
|
|
113
|
+
}
|
|
114
|
+
setVideoIsEnabled(function (v) { return !v; });
|
|
115
|
+
return [2 /*return*/];
|
|
116
|
+
});
|
|
117
|
+
}); };
|
|
118
|
+
var toggleMic = function () { return __awaiter(void 0, void 0, void 0, function () {
|
|
119
|
+
return __generator(this, function (_a) {
|
|
120
|
+
bridge_1.NativeFunction.setMute(!muted);
|
|
121
|
+
setMuted(function (m) { return !m; });
|
|
122
|
+
return [2 /*return*/];
|
|
123
|
+
});
|
|
124
|
+
}); };
|
|
104
125
|
var emitter = (0, bridge_1.getSDKEventEmitter)();
|
|
105
126
|
(0, react_1.useEffect)(function () {
|
|
106
127
|
var startSubscription = emitter.addListener(bridge_1.MobileSDKEvent.OnMeetingStart, function () {
|
|
107
128
|
setInMeeting(true);
|
|
108
129
|
setIsLoading(false);
|
|
109
130
|
});
|
|
110
|
-
|
|
111
|
-
|
|
131
|
+
// called when user clicks Leave Meeting or meeting is ended by host
|
|
132
|
+
var endSubscription = emitter.addListener(bridge_1.MobileSDKEvent.OnMeetingEnd, function (a) {
|
|
133
|
+
setInMeeting(false);
|
|
112
134
|
setIsLoading(false);
|
|
113
135
|
});
|
|
114
|
-
var joinSubscription = emitter.addListener(bridge_1.MobileSDKEvent.OnAttendeesJoin, function (
|
|
115
|
-
var attendeeId =
|
|
136
|
+
var joinSubscription = emitter.addListener(bridge_1.MobileSDKEvent.OnAttendeesJoin, function (added) {
|
|
137
|
+
var attendeeId = added.attendeeId, externalUserId = added.externalUserId;
|
|
116
138
|
setAttendees(function (as) { return !as.find(function (a) { return a.attendeeId === attendeeId; })
|
|
117
139
|
? __spreadArray([{ attendeeId: attendeeId, externalUserId: externalUserId, muted: false }], as, true) : as; });
|
|
118
140
|
});
|
|
119
|
-
var leaveSubscription = emitter.addListener(bridge_1.MobileSDKEvent.OnAttendeesLeave, function (
|
|
120
|
-
var attendeeId =
|
|
141
|
+
var leaveSubscription = emitter.addListener(bridge_1.MobileSDKEvent.OnAttendeesLeave, function (leaving) {
|
|
142
|
+
var attendeeId = leaving.attendeeId;
|
|
121
143
|
setAttendees(function (as) { return as.filter(function (a) { return a.attendeeId !== attendeeId; }); });
|
|
122
144
|
});
|
|
123
145
|
var errorSubscription = emitter.addListener(bridge_1.MobileSDKEvent.OnError, function (message) {
|
|
@@ -134,12 +156,15 @@ var WithVideo = function (_a) {
|
|
|
134
156
|
setScreenShareTile(tileState.tileId);
|
|
135
157
|
return;
|
|
136
158
|
}
|
|
137
|
-
|
|
159
|
+
if (tileState.isLocal) {
|
|
160
|
+
setLocalTileId(tileState.tileId);
|
|
161
|
+
}
|
|
162
|
+
setVideoTiles(function (v) { return __spreadArray(__spreadArray([], v, true), [tileState.tileId], false); });
|
|
138
163
|
setVideoIsEnabled(function (v) { return tileState.isLocal ? true : v; });
|
|
139
164
|
});
|
|
140
165
|
var removeVideoSubscription = emitter.addListener(bridge_1.MobileSDKEvent.OnRemoveVideoTile, function (tileState) {
|
|
141
166
|
if (tileState.isScreenShare) {
|
|
142
|
-
setScreenShareTile(
|
|
167
|
+
setScreenShareTile(null);
|
|
143
168
|
return;
|
|
144
169
|
}
|
|
145
170
|
setVideoTiles(function (vs) { return vs.filter(function (v) { return v !== tileState.tileId; }); });
|
|
@@ -157,12 +182,41 @@ var WithVideo = function (_a) {
|
|
|
157
182
|
removeVideoSubscription.remove();
|
|
158
183
|
};
|
|
159
184
|
}, [emitter]);
|
|
160
|
-
return ((0, jsx_runtime_1.jsx)(video_js_1.CurrentCallContext.Provider, __assign({ value: {
|
|
185
|
+
return ((0, jsx_runtime_1.jsx)(video_js_1.CurrentCallContext.Provider, __assign({ value: {
|
|
186
|
+
isHost: isHost,
|
|
187
|
+
setIsHost: setIsHost,
|
|
188
|
+
attendees: attendees,
|
|
189
|
+
localTileId: localTileId,
|
|
190
|
+
videoTiles: videoTiles,
|
|
191
|
+
meeting: meeting,
|
|
192
|
+
shareScreenId: screenShareTile,
|
|
193
|
+
setMeeting: setMeeting,
|
|
194
|
+
videoIsEnabled: videoIsEnabled,
|
|
195
|
+
toggleVideo: toggleVideo,
|
|
196
|
+
microphoneIsEnabled: !muted,
|
|
197
|
+
toggleMicrophone: toggleMic,
|
|
198
|
+
} }, { children: children }), void 0));
|
|
161
199
|
};
|
|
162
200
|
exports.WithVideo = WithVideo;
|
|
201
|
+
var useRemoteViews = function (props) {
|
|
202
|
+
if (props === void 0) { props = {}; }
|
|
203
|
+
var _a = react_1.default.useContext(video_js_1.CurrentCallContext), localTileId = _a.localTileId, videoTiles = _a.videoTiles;
|
|
204
|
+
var nonLocal = videoTiles.filter(function (v) { return v !== localTileId; });
|
|
205
|
+
return nonLocal.map(function (tileId) { var _a; return (0, jsx_runtime_1.jsx)(RNVideoRenderView_1.RNVideoView, { style: (_a = (0, mui_native_1.convert_CSS_to_RNStyles)(props.style)) !== null && _a !== void 0 ? _a : styles.video, tileId: tileId }, tileId); });
|
|
206
|
+
};
|
|
207
|
+
exports.useRemoteViews = useRemoteViews;
|
|
208
|
+
var SelfView = function (_a) {
|
|
209
|
+
var _b;
|
|
210
|
+
var style = _a.style;
|
|
211
|
+
var localTileId = react_1.default.useContext(video_js_1.CurrentCallContext).localTileId;
|
|
212
|
+
if (localTileId === null)
|
|
213
|
+
return null; // localTileId may be zero, don't return null on simple falsey check
|
|
214
|
+
return ((0, jsx_runtime_1.jsx)(RNVideoRenderView_1.RNVideoView, { style: (_b = (0, mui_native_1.convert_CSS_to_RNStyles)(style)) !== null && _b !== void 0 ? _b : styles.video, tileId: localTileId }, void 0));
|
|
215
|
+
};
|
|
216
|
+
exports.SelfView = SelfView;
|
|
163
217
|
var useStartVideoCall = function () {
|
|
164
218
|
var session = (0, authentication_1.useSession)();
|
|
165
|
-
var _a = react_1.default.useContext(video_js_1.CurrentCallContext), meeting = _a.meeting, setMeeting = _a.setMeeting, videoIsEnabled = _a.videoIsEnabled, toggleVideo = _a.toggleVideo;
|
|
219
|
+
var _a = react_1.default.useContext(video_js_1.CurrentCallContext), meeting = _a.meeting, setMeeting = _a.setMeeting, setIsHost = _a.setIsHost, videoIsEnabled = _a.videoIsEnabled, toggleVideo = _a.toggleVideo;
|
|
166
220
|
var _b = (0, react_1.useState)(false), starting = _b[0], setStarting = _b[1];
|
|
167
221
|
var _c = (0, react_1.useState)(false), ending = _c[0], setEnding = _c[1];
|
|
168
222
|
var createAndStartMeeting = function (initialAttendees) { return __awaiter(void 0, void 0, void 0, function () {
|
|
@@ -179,6 +233,7 @@ var useStartVideoCall = function () {
|
|
|
179
233
|
}
|
|
180
234
|
bridge_1.NativeFunction.startMeeting(meeting_1.Meeting, host.Attendee);
|
|
181
235
|
setMeeting(meeting_1.Meeting);
|
|
236
|
+
setIsHost(true);
|
|
182
237
|
return [3 /*break*/, 4];
|
|
183
238
|
case 2:
|
|
184
239
|
err_1 = _b.sent();
|
|
@@ -228,7 +283,16 @@ var useStartVideoCall = function () {
|
|
|
228
283
|
}
|
|
229
284
|
});
|
|
230
285
|
}); };
|
|
231
|
-
return {
|
|
286
|
+
return {
|
|
287
|
+
meeting: meeting,
|
|
288
|
+
videoIsEnabled: videoIsEnabled,
|
|
289
|
+
starting: starting,
|
|
290
|
+
ending: ending,
|
|
291
|
+
toggleVideo: toggleVideo,
|
|
292
|
+
createAndStartMeeting: createAndStartMeeting,
|
|
293
|
+
addAttendees: addAttendees,
|
|
294
|
+
endMeeting: endMeeting,
|
|
295
|
+
};
|
|
232
296
|
};
|
|
233
297
|
exports.useStartVideoCall = useStartVideoCall;
|
|
234
298
|
var useJoinVideoCall = function () {
|
|
@@ -245,24 +309,13 @@ exports.useJoinVideoCall = useJoinVideoCall;
|
|
|
245
309
|
var VideoTileGrid = function () {
|
|
246
310
|
var _a = (0, react_1.useContext)(video_js_1.CurrentCallContext),
|
|
247
311
|
// attendees,
|
|
248
|
-
|
|
249
|
-
return ((0, jsx_runtime_1.jsxs)(
|
|
312
|
+
videoTiles = _a.videoTiles, toggleVideo = _a.toggleVideo;
|
|
313
|
+
return ((0, jsx_runtime_1.jsxs)(layout_1.Flex, __assign({ column: true, justifyContent: "space-between", alignItems: "center" }, { children: [(0, jsx_runtime_1.jsx)(layout_1.Flex, __assign({ style: styles.videoContainer }, { children: videoTiles.length > 0 ? videoTiles.map(function (tileId) {
|
|
250
314
|
return (0, jsx_runtime_1.jsx)(RNVideoRenderView_1.RNVideoView, { style: styles.video, tileId: tileId }, tileId);
|
|
251
|
-
}) : (0, jsx_runtime_1.jsx)(
|
|
252
|
-
(0, jsx_runtime_1.jsxs)(react_1.default.Fragment, { children: [(0, jsx_runtime_1.jsx)(react_native_1.Text, __assign({ style: styles.title }, { children: "Screen Share" }), void 0), (0, jsx_runtime_1.jsx)(react_native_1.View, __assign({ style: styles.videoContainer }, { children: (0, jsx_runtime_1.jsx)(RNVideoRenderView_1.RNVideoView, { style: styles.screenShare, tileId: shareScreenId }, shareScreenId) }), void 0)] }, void 0), (0, jsx_runtime_1.jsx)(react_native_1.Text, __assign({ style: styles.title }, { children: "Attendee" }), void 0)] }), void 0));
|
|
315
|
+
}) : (0, jsx_runtime_1.jsx)(mui_native_1.Typography, __assign({ style: styles.subtitle }, { children: "No one is sharing video at this moment" }), void 0) }), void 0), (0, jsx_runtime_1.jsxs)(layout_1.Flex, __assign({ justifyContent: "space-between", style: { height: '5%' } }, { children: [(0, jsx_runtime_1.jsx)(mui_native_1.Button, __assign({ onPress: toggleVideo }, { children: "Toggle Video" }), void 0), (0, jsx_runtime_1.jsx)(mui_native_1.Button, __assign({ onPress: function () { return bridge_1.NativeFunction.stopMeeting(); } }, { children: " Leave Meeting " }), void 0)] }), void 0)] }), void 0));
|
|
253
316
|
};
|
|
254
317
|
exports.VideoTileGrid = VideoTileGrid;
|
|
255
318
|
var styles = react_native_1.StyleSheet.create({
|
|
256
|
-
container: {
|
|
257
|
-
justifyContent: 'center',
|
|
258
|
-
alignItems: 'center',
|
|
259
|
-
height: '95%',
|
|
260
|
-
backgroundColor: 'white'
|
|
261
|
-
},
|
|
262
|
-
buttonContainer: {
|
|
263
|
-
flexDirection: 'row',
|
|
264
|
-
justifyContent: 'space-between',
|
|
265
|
-
},
|
|
266
319
|
title: {
|
|
267
320
|
fontSize: 30,
|
|
268
321
|
fontWeight: '700'
|
|
@@ -276,6 +329,7 @@ var styles = react_native_1.StyleSheet.create({
|
|
|
276
329
|
flexDirection: 'row',
|
|
277
330
|
justifyContent: 'space-around',
|
|
278
331
|
width: '100%',
|
|
332
|
+
height: '95%',
|
|
279
333
|
// This is an existing React Native issue:
|
|
280
334
|
// When you create a native android component
|
|
281
335
|
// that use GLSurfaceView (We use this internally), the entire screen will
|
|
@@ -283,8 +337,7 @@ var styles = react_native_1.StyleSheet.create({
|
|
|
283
337
|
overflow: 'hidden'
|
|
284
338
|
},
|
|
285
339
|
video: {
|
|
286
|
-
width: '
|
|
287
|
-
margin: '1%',
|
|
340
|
+
width: '100%',
|
|
288
341
|
aspectRatio: 16 / 9,
|
|
289
342
|
},
|
|
290
343
|
screenShare: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"video.native.js","sourceRoot":"","sources":["../../src/video.native.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,kCAAkC;AAClC,sGAAsG;AACtG,oDAAoD;AACpD;;;GAGG;AAEH,6CAA2E;AAC3E,
|
|
1
|
+
{"version":3,"file":"video.native.js","sourceRoot":"","sources":["../../src/video.native.tsx"],"names":[],"mappings":"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"}
|