@whereby.com/react-native-sdk 0.3.1 → 0.5.0

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.
@@ -9,12 +9,19 @@ var _reactNativeWebview = require("react-native-webview");
9
9
  var _jsxRuntime = require("react/jsx-runtime");
10
10
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
11
11
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
12
+ function getInjectableJSMessage(command, args) {
13
+ const parsedArgs = args.length === 1 && args[0] === undefined ? "" : `, args: ${JSON.stringify(args)}`;
14
+ return `(function() { window.postMessage({ command: ${JSON.stringify(command)}${parsedArgs} }) })()`;
15
+ }
12
16
  const WHEREBY_EVENT_TYPES = ["ready", "knock", "participantupdate", "join", "leave", "participant_join", "participant_leave", "meeting_end", "microphone_toggle", "camera_toggle", "chat_toggle", "people_toggle", "pip_toggle", "grant_device_permission", "deny_device_permission", "screenshare_toggle", "streaming_status_change", "connection_status_change", "precall_check_skipped", "precall_check_completed"];
13
17
  const WherebyEmbed = exports.WherebyEmbed = /*#__PURE__*/React.forwardRef(({
14
18
  room,
15
19
  ...props
16
20
  }, ref) => {
21
+ const webviewRef = React.useRef(null);
17
22
  const roomUrl = new URL(room);
23
+ const ON = "on";
24
+ const OFF = "off";
18
25
  Object.entries({
19
26
  ...(props.displayName && {
20
27
  displayName: props.displayName
@@ -45,52 +52,52 @@ const WherebyEmbed = exports.WherebyEmbed = /*#__PURE__*/React.forwardRef(({
45
52
  }),
46
53
  // the original ?embed name was confusing, so we give minimal
47
54
  ...(props.minimal != null && {
48
- embed: props.minimal
55
+ embed: props.minimal ? ON : OFF
49
56
  }),
50
57
  ...(props.aec != null && {
51
- aec: props.aec
58
+ aec: props.aec ? ON : OFF
52
59
  }),
53
60
  ...(props.agc != null && {
54
- agc: props.agc
61
+ agc: props.agc ? ON : OFF
55
62
  }),
56
63
  ...(props.audio != null && {
57
- audio: props.audio
64
+ audio: props.audio ? ON : OFF
58
65
  }),
59
66
  ...(props.audioDenoiser != null && {
60
- audioDenoiser: props.audioDenoiser
67
+ audioDenoiser: props.audioDenoiser ? ON : OFF
61
68
  }),
62
69
  ...(props.autoHideSelfView != null && {
63
- autoHideSelfView: props.autoHideSelfView
70
+ autoHideSelfView: props.autoHideSelfView ? ON : OFF
64
71
  }),
65
72
  ...(props.autoSpotlight != null && {
66
- autoSpotlight: props.autoSpotlight
73
+ autoSpotlight: props.autoSpotlight ? ON : OFF
67
74
  }),
68
75
  ...(props.background != null && {
69
- background: props.background
76
+ background: props.background ? ON : OFF
70
77
  }),
71
78
  ...(props.bottomToolbar != null && {
72
- bottomToolbar: props.bottomToolbar
79
+ bottomToolbar: props.bottomToolbar ? ON : OFF
73
80
  }),
74
81
  ...(props.breakout != null && {
75
- breakout: props.breakout
82
+ breakout: props.breakout ? ON : OFF
76
83
  }),
77
84
  ...(props.callQualityMonitoring != null && {
78
- callQualityMonitoring: props.callQualityMonitoring
85
+ callQualityMonitoring: props.callQualityMonitoring ? ON : OFF
79
86
  }),
80
87
  ...(props.cameraAccess != null && {
81
- cameraAccess: props.cameraAccess
88
+ cameraAccess: props.cameraAccess ? ON : OFF
82
89
  }),
83
90
  ...(props.cameraEffect != null && {
84
91
  cameraEffect: props.cameraEffect
85
92
  }),
86
93
  ...(props.chat != null && {
87
- chat: props.chat
94
+ chat: props.chat ? ON : OFF
88
95
  }),
89
96
  ...(props.displayName != null && {
90
97
  displayName: props.displayName
91
98
  }),
92
99
  ...(props.emptyRoomInvitation != null && {
93
- emptyRoomInvitation: props.emptyRoomInvitation
100
+ emptyRoomInvitation: props.emptyRoomInvitation ? ON : OFF
94
101
  }),
95
102
  ...(props.emojiSkinTone != null && {
96
103
  emojiSkinTone: props.emojiSkinTone
@@ -99,91 +106,91 @@ const WherebyEmbed = exports.WherebyEmbed = /*#__PURE__*/React.forwardRef(({
99
106
  externalId: props.externalId
100
107
  }),
101
108
  ...(props.floatSelf != null && {
102
- floatSelf: props.floatSelf
109
+ floatSelf: props.floatSelf ? ON : OFF
103
110
  }),
104
111
  ...(props.groups != null && {
105
112
  groups: props.groups
106
113
  }),
107
114
  ...(props.help != null && {
108
- help: props.help
115
+ help: props.help ? ON : OFF
109
116
  }),
110
117
  ...(props.lang != null && {
111
118
  lang: props.lang
112
119
  }),
113
120
  ...(props.leaveButton != null && {
114
- leaveButton: props.leaveButton
121
+ leaveButton: props.leaveButton ? ON : OFF
115
122
  }),
116
123
  ...(props.locking != null && {
117
- locking: props.locking
124
+ locking: props.locking ? ON : OFF
118
125
  }),
119
126
  ...(props.localization != null && {
120
- localization: props.localization
127
+ localization: props.localization ? ON : OFF
121
128
  }),
122
129
  ...(props.logo != null && {
123
- logo: props.logo
130
+ logo: props.logo ? ON : OFF
124
131
  }),
125
132
  ...(props.lowData != null && {
126
- lowData: props.lowData
133
+ lowData: props.lowData ? ON : OFF
127
134
  }),
128
135
  ...(props.moreButton != null && {
129
- moreButton: props.moreButton
136
+ moreButton: props.moreButton ? ON : OFF
130
137
  }),
131
138
  ...(props.participantCount != null && {
132
- participantCount: props.participantCount
139
+ participantCount: props.participantCount ? ON : OFF
133
140
  }),
134
141
  ...(props.people != null && {
135
- people: props.people
142
+ people: props.people ? ON : OFF
136
143
  }),
137
144
  ...(props.pipButton != null && {
138
- pipButton: props.pipButton
145
+ pipButton: props.pipButton ? ON : OFF
139
146
  }),
140
147
  ...(props.precallCeremony != null && {
141
- precallCeremony: props.precallCeremony
148
+ precallCeremony: props.precallCeremony ? ON : OFF
142
149
  }),
143
150
  ...(props.precallReview != null && {
144
- precallReview: props.precallReview
151
+ precallReview: props.precallReview ? ON : OFF
145
152
  }),
146
153
  ...(props.precallPermissionsHelpLink != null && {
147
154
  precallPermissionsHelpLink: props.precallPermissionsHelpLink
148
155
  }),
149
156
  ...(props.precallCeremonyCanSkip != null && {
150
- precallCeremonyCanSkip: props.precallCeremonyCanSkip
157
+ precallCeremonyCanSkip: props.precallCeremonyCanSkip ? ON : OFF
151
158
  }),
152
159
  ...(props.reactions != null && {
153
- reactions: props.reactions
160
+ reactions: props.reactions ? ON : OFF
154
161
  }),
155
162
  ...(props.recording != null && {
156
- recording: props.recording
163
+ recording: props.recording ? ON : OFF
157
164
  }),
158
165
  ...(props.roomIntegrations != null && {
159
- roomIntegrations: props.roomIntegrations
166
+ roomIntegrations: props.roomIntegrations ? ON : OFF
160
167
  }),
161
168
  ...(props.settingsButton != null && {
162
- settingsButton: props.settingsButton
169
+ settingsButton: props.settingsButton ? ON : OFF
163
170
  }),
164
171
  ...(props.screenshare != null && {
165
- screenshare: props.screenshare
172
+ screenshare: props.screenshare ? ON : OFF
166
173
  }),
167
174
  ...(props.skipMediaPermissionPrompt != null && {
168
- skipMediaPermissionPrompt: props.skipMediaPermissionPrompt
175
+ skipMediaPermissionPrompt: props.skipMediaPermissionPrompt ? ON : OFF
169
176
  }),
170
177
  ...(props.subgridLabels != null && {
171
- subgridLabels: props.subgridLabels
178
+ subgridLabels: props.subgridLabels ? ON : OFF
172
179
  }),
173
180
  ...(props.timer != null && {
174
- timer: props.timer
181
+ timer: props.timer ? ON : OFF
175
182
  }),
176
183
  ...(props.title != null && {
177
184
  title: props.title
178
185
  }),
179
186
  ...(props.toolbarDarkText != null && {
180
- toolbarDarkText: props.toolbarDarkText
187
+ toolbarDarkText: props.toolbarDarkText ? ON : OFF
181
188
  }),
182
189
  ...(props.topToolbar != null && {
183
- topToolbar: props.topToolbar
190
+ topToolbar: props.topToolbar ? ON : OFF
184
191
  }),
185
192
  ...(props.video != null && {
186
- video: props.video
193
+ video: props.video ? ON : OFF
187
194
  }),
188
195
  ...(props.virtualBackgroundUrl != null && {
189
196
  virtualBackgroundUrl: props.virtualBackgroundUrl
@@ -193,6 +200,59 @@ const WherebyEmbed = exports.WherebyEmbed = /*#__PURE__*/React.forwardRef(({
193
200
  roomUrl.searchParams.set(k, v);
194
201
  }
195
202
  });
203
+ React.useImperativeHandle(ref, () => {
204
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
205
+ return Object.assign(webviewRef.current, {
206
+ endMeeting: () => {
207
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("end_meeting", []));
208
+ },
209
+ knock: () => {
210
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("knock", []));
211
+ },
212
+ leaveRoom: () => {
213
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("leave_room", []));
214
+ },
215
+ openSettings: (settingsPane = "media") => {
216
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("open_settings", [settingsPane]));
217
+ },
218
+ startRecording: () => {
219
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("start_recording", []));
220
+ },
221
+ stopRecording: () => {
222
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("stop_recording", []));
223
+ },
224
+ startStreaming: () => {
225
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("start_streaming", []));
226
+ },
227
+ stopStreaming: () => {
228
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("stop_streaming", []));
229
+ },
230
+ startLiveTranscription: () => {
231
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("start_live_transcription", []));
232
+ },
233
+ stopLiveTranscription: () => {
234
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("stop_live_transcription", []));
235
+ },
236
+ toggleBreakout: enabled => {
237
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("toggle_breakout", [enabled]));
238
+ },
239
+ toggleCamera: enabled => {
240
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("toggle_camera", [enabled]));
241
+ },
242
+ toggleMicrophone: enabled => {
243
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("toggle_microphone", [enabled]));
244
+ },
245
+ togglePeople: enabled => {
246
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("toggle_people", [enabled]));
247
+ },
248
+ toggleScreenshare: enabled => {
249
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("toggle_screenshare", [enabled]));
250
+ },
251
+ toggleChat: enabled => {
252
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("toggle_chat", [enabled]));
253
+ }
254
+ });
255
+ });
196
256
  const handleMessage = React.useCallback(event => {
197
257
  const data = JSON.parse(event.nativeEvent.data);
198
258
  if (data.type && WHEREBY_EVENT_TYPES.includes(data.type)) {
@@ -265,7 +325,7 @@ const WherebyEmbed = exports.WherebyEmbed = /*#__PURE__*/React.forwardRef(({
265
325
  props.onMessage?.(event);
266
326
  }, [props]);
267
327
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactNativeWebview.WebView, {
268
- ref: ref,
328
+ ref: webviewRef,
269
329
  source: {
270
330
  uri: roomUrl.href
271
331
  },
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_reactNativeWebview","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","WHEREBY_EVENT_TYPES","WherebyEmbed","exports","forwardRef","room","props","ref","roomUrl","URL","entries","displayName","lang","metadata","emojiSkinTone","externalId","groups","virtualBackgroundUrl","avatarUrl","cameraEffect","minimal","embed","aec","agc","audio","audioDenoiser","autoHideSelfView","autoSpotlight","background","bottomToolbar","breakout","callQualityMonitoring","cameraAccess","chat","emptyRoomInvitation","floatSelf","help","leaveButton","locking","localization","logo","lowData","moreButton","participantCount","people","pipButton","precallCeremony","precallReview","precallPermissionsHelpLink","precallCeremonyCanSkip","reactions","recording","roomIntegrations","settingsButton","screenshare","skipMediaPermissionPrompt","subgridLabels","timer","title","toolbarDarkText","topToolbar","video","forEach","k","v","searchParams","handleMessage","useCallback","event","data","JSON","parse","nativeEvent","type","includes","onWherebyMessage","onReady","onKnock","onParticipantUpdate","payload","onJoin","onLeave","onParticipantJoin","onParticipantLeave","onMeetingEnd","onMicrophoneToggle","onCameraToggle","onChatToggle","onPeopleToggle","onPipToggle","onGrantDevicePermission","onDenyDevicePermission","onScreenshareToggle","onStreamingStatusChange","onConnectionStatusChange","onPrecallCheckSkipped","onPrecallCheckCompleted","onMessage","jsx","WebView","source","uri","href","startInLoadingState","originWhitelist","mediaPlaybackRequiresUserAction","allowsInlineMediaPlayback","javaScriptEnabled","domStorageEnabled"],"sourceRoot":"../../../src","sources":["embed/index.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNativeWebview","_jsxRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","getInjectableJSMessage","command","args","parsedArgs","length","undefined","JSON","stringify","WHEREBY_EVENT_TYPES","WherebyEmbed","exports","forwardRef","room","props","ref","webviewRef","useRef","roomUrl","URL","ON","OFF","entries","displayName","lang","metadata","emojiSkinTone","externalId","groups","virtualBackgroundUrl","avatarUrl","cameraEffect","minimal","embed","aec","agc","audio","audioDenoiser","autoHideSelfView","autoSpotlight","background","bottomToolbar","breakout","callQualityMonitoring","cameraAccess","chat","emptyRoomInvitation","floatSelf","help","leaveButton","locking","localization","logo","lowData","moreButton","participantCount","people","pipButton","precallCeremony","precallReview","precallPermissionsHelpLink","precallCeremonyCanSkip","reactions","recording","roomIntegrations","settingsButton","screenshare","skipMediaPermissionPrompt","subgridLabels","timer","title","toolbarDarkText","topToolbar","video","forEach","k","v","searchParams","useImperativeHandle","assign","current","endMeeting","injectJavaScript","knock","leaveRoom","openSettings","settingsPane","startRecording","stopRecording","startStreaming","stopStreaming","startLiveTranscription","stopLiveTranscription","toggleBreakout","enabled","toggleCamera","toggleMicrophone","togglePeople","toggleScreenshare","toggleChat","handleMessage","useCallback","event","data","parse","nativeEvent","type","includes","onWherebyMessage","onReady","onKnock","onParticipantUpdate","payload","onJoin","onLeave","onParticipantJoin","onParticipantLeave","onMeetingEnd","onMicrophoneToggle","onCameraToggle","onChatToggle","onPeopleToggle","onPipToggle","onGrantDevicePermission","onDenyDevicePermission","onScreenshareToggle","onStreamingStatusChange","onConnectionStatusChange","onPrecallCheckSkipped","onPrecallCheckCompleted","onMessage","jsx","WebView","source","uri","href","startInLoadingState","originWhitelist","mediaPlaybackRequiresUserAction","allowsInlineMediaPlayback","javaScriptEnabled","domStorageEnabled"],"sourceRoot":"../../../src","sources":["embed/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -3,12 +3,19 @@
3
3
  import * as React from "react";
4
4
  import { WebView } from "react-native-webview";
5
5
  import { jsx as _jsx } from "react/jsx-runtime";
6
+ function getInjectableJSMessage(command, args) {
7
+ const parsedArgs = args.length === 1 && args[0] === undefined ? "" : `, args: ${JSON.stringify(args)}`;
8
+ return `(function() { window.postMessage({ command: ${JSON.stringify(command)}${parsedArgs} }) })()`;
9
+ }
6
10
  const WHEREBY_EVENT_TYPES = ["ready", "knock", "participantupdate", "join", "leave", "participant_join", "participant_leave", "meeting_end", "microphone_toggle", "camera_toggle", "chat_toggle", "people_toggle", "pip_toggle", "grant_device_permission", "deny_device_permission", "screenshare_toggle", "streaming_status_change", "connection_status_change", "precall_check_skipped", "precall_check_completed"];
7
11
  const WherebyEmbed = /*#__PURE__*/React.forwardRef(({
8
12
  room,
9
13
  ...props
10
14
  }, ref) => {
15
+ const webviewRef = React.useRef(null);
11
16
  const roomUrl = new URL(room);
17
+ const ON = "on";
18
+ const OFF = "off";
12
19
  Object.entries({
13
20
  ...(props.displayName && {
14
21
  displayName: props.displayName
@@ -39,52 +46,52 @@ const WherebyEmbed = /*#__PURE__*/React.forwardRef(({
39
46
  }),
40
47
  // the original ?embed name was confusing, so we give minimal
41
48
  ...(props.minimal != null && {
42
- embed: props.minimal
49
+ embed: props.minimal ? ON : OFF
43
50
  }),
44
51
  ...(props.aec != null && {
45
- aec: props.aec
52
+ aec: props.aec ? ON : OFF
46
53
  }),
47
54
  ...(props.agc != null && {
48
- agc: props.agc
55
+ agc: props.agc ? ON : OFF
49
56
  }),
50
57
  ...(props.audio != null && {
51
- audio: props.audio
58
+ audio: props.audio ? ON : OFF
52
59
  }),
53
60
  ...(props.audioDenoiser != null && {
54
- audioDenoiser: props.audioDenoiser
61
+ audioDenoiser: props.audioDenoiser ? ON : OFF
55
62
  }),
56
63
  ...(props.autoHideSelfView != null && {
57
- autoHideSelfView: props.autoHideSelfView
64
+ autoHideSelfView: props.autoHideSelfView ? ON : OFF
58
65
  }),
59
66
  ...(props.autoSpotlight != null && {
60
- autoSpotlight: props.autoSpotlight
67
+ autoSpotlight: props.autoSpotlight ? ON : OFF
61
68
  }),
62
69
  ...(props.background != null && {
63
- background: props.background
70
+ background: props.background ? ON : OFF
64
71
  }),
65
72
  ...(props.bottomToolbar != null && {
66
- bottomToolbar: props.bottomToolbar
73
+ bottomToolbar: props.bottomToolbar ? ON : OFF
67
74
  }),
68
75
  ...(props.breakout != null && {
69
- breakout: props.breakout
76
+ breakout: props.breakout ? ON : OFF
70
77
  }),
71
78
  ...(props.callQualityMonitoring != null && {
72
- callQualityMonitoring: props.callQualityMonitoring
79
+ callQualityMonitoring: props.callQualityMonitoring ? ON : OFF
73
80
  }),
74
81
  ...(props.cameraAccess != null && {
75
- cameraAccess: props.cameraAccess
82
+ cameraAccess: props.cameraAccess ? ON : OFF
76
83
  }),
77
84
  ...(props.cameraEffect != null && {
78
85
  cameraEffect: props.cameraEffect
79
86
  }),
80
87
  ...(props.chat != null && {
81
- chat: props.chat
88
+ chat: props.chat ? ON : OFF
82
89
  }),
83
90
  ...(props.displayName != null && {
84
91
  displayName: props.displayName
85
92
  }),
86
93
  ...(props.emptyRoomInvitation != null && {
87
- emptyRoomInvitation: props.emptyRoomInvitation
94
+ emptyRoomInvitation: props.emptyRoomInvitation ? ON : OFF
88
95
  }),
89
96
  ...(props.emojiSkinTone != null && {
90
97
  emojiSkinTone: props.emojiSkinTone
@@ -93,91 +100,91 @@ const WherebyEmbed = /*#__PURE__*/React.forwardRef(({
93
100
  externalId: props.externalId
94
101
  }),
95
102
  ...(props.floatSelf != null && {
96
- floatSelf: props.floatSelf
103
+ floatSelf: props.floatSelf ? ON : OFF
97
104
  }),
98
105
  ...(props.groups != null && {
99
106
  groups: props.groups
100
107
  }),
101
108
  ...(props.help != null && {
102
- help: props.help
109
+ help: props.help ? ON : OFF
103
110
  }),
104
111
  ...(props.lang != null && {
105
112
  lang: props.lang
106
113
  }),
107
114
  ...(props.leaveButton != null && {
108
- leaveButton: props.leaveButton
115
+ leaveButton: props.leaveButton ? ON : OFF
109
116
  }),
110
117
  ...(props.locking != null && {
111
- locking: props.locking
118
+ locking: props.locking ? ON : OFF
112
119
  }),
113
120
  ...(props.localization != null && {
114
- localization: props.localization
121
+ localization: props.localization ? ON : OFF
115
122
  }),
116
123
  ...(props.logo != null && {
117
- logo: props.logo
124
+ logo: props.logo ? ON : OFF
118
125
  }),
119
126
  ...(props.lowData != null && {
120
- lowData: props.lowData
127
+ lowData: props.lowData ? ON : OFF
121
128
  }),
122
129
  ...(props.moreButton != null && {
123
- moreButton: props.moreButton
130
+ moreButton: props.moreButton ? ON : OFF
124
131
  }),
125
132
  ...(props.participantCount != null && {
126
- participantCount: props.participantCount
133
+ participantCount: props.participantCount ? ON : OFF
127
134
  }),
128
135
  ...(props.people != null && {
129
- people: props.people
136
+ people: props.people ? ON : OFF
130
137
  }),
131
138
  ...(props.pipButton != null && {
132
- pipButton: props.pipButton
139
+ pipButton: props.pipButton ? ON : OFF
133
140
  }),
134
141
  ...(props.precallCeremony != null && {
135
- precallCeremony: props.precallCeremony
142
+ precallCeremony: props.precallCeremony ? ON : OFF
136
143
  }),
137
144
  ...(props.precallReview != null && {
138
- precallReview: props.precallReview
145
+ precallReview: props.precallReview ? ON : OFF
139
146
  }),
140
147
  ...(props.precallPermissionsHelpLink != null && {
141
148
  precallPermissionsHelpLink: props.precallPermissionsHelpLink
142
149
  }),
143
150
  ...(props.precallCeremonyCanSkip != null && {
144
- precallCeremonyCanSkip: props.precallCeremonyCanSkip
151
+ precallCeremonyCanSkip: props.precallCeremonyCanSkip ? ON : OFF
145
152
  }),
146
153
  ...(props.reactions != null && {
147
- reactions: props.reactions
154
+ reactions: props.reactions ? ON : OFF
148
155
  }),
149
156
  ...(props.recording != null && {
150
- recording: props.recording
157
+ recording: props.recording ? ON : OFF
151
158
  }),
152
159
  ...(props.roomIntegrations != null && {
153
- roomIntegrations: props.roomIntegrations
160
+ roomIntegrations: props.roomIntegrations ? ON : OFF
154
161
  }),
155
162
  ...(props.settingsButton != null && {
156
- settingsButton: props.settingsButton
163
+ settingsButton: props.settingsButton ? ON : OFF
157
164
  }),
158
165
  ...(props.screenshare != null && {
159
- screenshare: props.screenshare
166
+ screenshare: props.screenshare ? ON : OFF
160
167
  }),
161
168
  ...(props.skipMediaPermissionPrompt != null && {
162
- skipMediaPermissionPrompt: props.skipMediaPermissionPrompt
169
+ skipMediaPermissionPrompt: props.skipMediaPermissionPrompt ? ON : OFF
163
170
  }),
164
171
  ...(props.subgridLabels != null && {
165
- subgridLabels: props.subgridLabels
172
+ subgridLabels: props.subgridLabels ? ON : OFF
166
173
  }),
167
174
  ...(props.timer != null && {
168
- timer: props.timer
175
+ timer: props.timer ? ON : OFF
169
176
  }),
170
177
  ...(props.title != null && {
171
178
  title: props.title
172
179
  }),
173
180
  ...(props.toolbarDarkText != null && {
174
- toolbarDarkText: props.toolbarDarkText
181
+ toolbarDarkText: props.toolbarDarkText ? ON : OFF
175
182
  }),
176
183
  ...(props.topToolbar != null && {
177
- topToolbar: props.topToolbar
184
+ topToolbar: props.topToolbar ? ON : OFF
178
185
  }),
179
186
  ...(props.video != null && {
180
- video: props.video
187
+ video: props.video ? ON : OFF
181
188
  }),
182
189
  ...(props.virtualBackgroundUrl != null && {
183
190
  virtualBackgroundUrl: props.virtualBackgroundUrl
@@ -187,6 +194,59 @@ const WherebyEmbed = /*#__PURE__*/React.forwardRef(({
187
194
  roomUrl.searchParams.set(k, v);
188
195
  }
189
196
  });
197
+ React.useImperativeHandle(ref, () => {
198
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
199
+ return Object.assign(webviewRef.current, {
200
+ endMeeting: () => {
201
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("end_meeting", []));
202
+ },
203
+ knock: () => {
204
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("knock", []));
205
+ },
206
+ leaveRoom: () => {
207
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("leave_room", []));
208
+ },
209
+ openSettings: (settingsPane = "media") => {
210
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("open_settings", [settingsPane]));
211
+ },
212
+ startRecording: () => {
213
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("start_recording", []));
214
+ },
215
+ stopRecording: () => {
216
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("stop_recording", []));
217
+ },
218
+ startStreaming: () => {
219
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("start_streaming", []));
220
+ },
221
+ stopStreaming: () => {
222
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("stop_streaming", []));
223
+ },
224
+ startLiveTranscription: () => {
225
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("start_live_transcription", []));
226
+ },
227
+ stopLiveTranscription: () => {
228
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("stop_live_transcription", []));
229
+ },
230
+ toggleBreakout: enabled => {
231
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("toggle_breakout", [enabled]));
232
+ },
233
+ toggleCamera: enabled => {
234
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("toggle_camera", [enabled]));
235
+ },
236
+ toggleMicrophone: enabled => {
237
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("toggle_microphone", [enabled]));
238
+ },
239
+ togglePeople: enabled => {
240
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("toggle_people", [enabled]));
241
+ },
242
+ toggleScreenshare: enabled => {
243
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("toggle_screenshare", [enabled]));
244
+ },
245
+ toggleChat: enabled => {
246
+ webviewRef.current?.injectJavaScript(getInjectableJSMessage("toggle_chat", [enabled]));
247
+ }
248
+ });
249
+ });
190
250
  const handleMessage = React.useCallback(event => {
191
251
  const data = JSON.parse(event.nativeEvent.data);
192
252
  if (data.type && WHEREBY_EVENT_TYPES.includes(data.type)) {
@@ -259,7 +319,7 @@ const WherebyEmbed = /*#__PURE__*/React.forwardRef(({
259
319
  props.onMessage?.(event);
260
320
  }, [props]);
261
321
  return /*#__PURE__*/_jsx(WebView, {
262
- ref: ref,
322
+ ref: webviewRef,
263
323
  source: {
264
324
  uri: roomUrl.href
265
325
  },