fcr-ui-scene 3.7.1 → 3.7.3

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.
Files changed (248) hide show
  1. package/lib/creator.js +23 -44
  2. package/lib/electron/app.js +7 -0
  3. package/lib/electron/injections.d.ts +1 -1
  4. package/lib/electron/injections.js +5 -3
  5. package/lib/electron/main.js +3 -1
  6. package/lib/fragments/annotation/index.d.ts +1 -0
  7. package/lib/fragments/annotation/index.js +13 -7
  8. package/lib/fragments/annotation/store.d.ts +8 -4
  9. package/lib/fragments/annotation/store.js +353 -268
  10. package/lib/fragments/annotation/toolbar/components/color-tool/index.js +4 -0
  11. package/lib/fragments/annotation/toolbar/components/graphic-tool/index.js +4 -0
  12. package/lib/fragments/annotation/toolbar/components/item/item.d.ts +2 -0
  13. package/lib/fragments/annotation/toolbar/components/item/item.js +2 -4
  14. package/lib/fragments/annotation/toolbar/components/item/style.css +4 -2
  15. package/lib/fragments/annotation/toolbar/components/pen-tool/index.js +4 -0
  16. package/lib/fragments/annotation/utils.d.ts +1 -0
  17. package/lib/fragments/annotation/utils.js +27 -0
  18. package/lib/fragments/annotation/view.js +1 -6
  19. package/lib/fragments/base.js +5 -3
  20. package/lib/fragments/whiteboard/cursor.css +77 -0
  21. package/lib/fragments/whiteboard/index.d.ts +11 -0
  22. package/lib/fragments/whiteboard/index.js +91 -0
  23. package/lib/fragments/whiteboard/store.d.ts +31 -0
  24. package/lib/fragments/whiteboard/store.js +475 -0
  25. package/lib/fragments/whiteboard/style.css +4 -0
  26. package/lib/fragments/whiteboard/view.d.ts +4 -0
  27. package/lib/fragments/whiteboard/view.js +31 -0
  28. package/lib/index.d.ts +1 -0
  29. package/lib/index.js +1 -0
  30. package/lib/modules/action-bar/components/apps/index.js +15 -5
  31. package/lib/modules/action-bar/components/leave/index.js +4 -11
  32. package/lib/modules/action-bar/view.d.ts +1 -0
  33. package/lib/modules/action-bar/view.js +3 -2
  34. package/lib/modules/annotation/annotation-toolbar-store.d.ts +4 -11
  35. package/lib/modules/annotation/annotation-toolbar-store.js +46 -88
  36. package/lib/modules/annotation/board-cursor.css +2 -1
  37. package/lib/modules/annotation/index.d.ts +2 -0
  38. package/lib/modules/annotation/index.js +2 -2
  39. package/lib/modules/annotation/store.d.ts +11 -49
  40. package/lib/modules/annotation/store.js +135 -418
  41. package/lib/modules/annotation/view.js +3 -6
  42. package/lib/modules/components/control-bar/components/loading/index.css +76 -0
  43. package/lib/modules/components/control-bar/components/loading/index.d.ts +8 -0
  44. package/lib/modules/components/control-bar/components/loading/index.js +64 -0
  45. package/lib/modules/components/control-bar/components/loading/loading.png +0 -0
  46. package/lib/modules/components/control-bar/components/progress/index.d.ts +5 -0
  47. package/lib/modules/components/control-bar/components/progress/index.js +43 -0
  48. package/lib/modules/components/control-bar/components/progress/style.css +51 -0
  49. package/lib/modules/components/control-bar/components/switch-theme/index.css +99 -0
  50. package/lib/modules/components/control-bar/components/switch-theme/index.d.ts +9 -0
  51. package/lib/modules/components/control-bar/components/switch-theme/index.js +94 -0
  52. package/lib/modules/components/control-bar/components/switch-theme/item.d.ts +9 -0
  53. package/lib/modules/components/control-bar/components/switch-theme/item.js +54 -0
  54. package/lib/modules/components/control-bar/components/switch-theme/libs.d.ts +4 -0
  55. package/lib/modules/components/control-bar/components/switch-theme/libs.js +31 -0
  56. package/lib/modules/components/control-bar/index.css +87 -0
  57. package/lib/modules/components/control-bar/index.d.ts +20 -0
  58. package/lib/modules/components/control-bar/index.js +276 -0
  59. package/lib/modules/components/leave-meeting/components/index.css +0 -9
  60. package/lib/modules/components/leave-meeting/index.d.ts +2 -1
  61. package/lib/modules/components/leave-meeting/index.js +15 -7
  62. package/lib/modules/components/leave-meeting/portal.d.ts +6 -0
  63. package/lib/modules/components/leave-meeting/portal.js +29 -0
  64. package/lib/modules/components/leave-meeting/style.css +9 -0
  65. package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +5 -2
  66. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +19 -9
  67. package/lib/modules/components/member-window/components/member-actions/components/share-status.js +4 -4
  68. package/lib/modules/components/member-window/components/member-actions/index.js +13 -6
  69. package/lib/modules/components/member-window/components/member-actions/provider.d.ts +1 -0
  70. package/lib/modules/components/member-window/components/member-actions/provider.js +4 -3
  71. package/lib/modules/components/member-window/components/member-actions/store.d.ts +2 -1
  72. package/lib/modules/components/member-window/components/member-actions/store.js +5 -1
  73. package/lib/modules/components/member-window/index.css +4 -0
  74. package/lib/modules/components/member-window/types.d.ts +6 -2
  75. package/lib/modules/components/toolbar/components/capture-tool/index.d.ts +9 -0
  76. package/lib/modules/components/toolbar/components/capture-tool/index.js +68 -0
  77. package/lib/modules/components/toolbar/components/clean-tool/index.d.ts +11 -0
  78. package/lib/modules/components/toolbar/components/clean-tool/index.js +71 -0
  79. package/lib/modules/components/toolbar/components/color-tool/color-panel/index.d.ts +11 -0
  80. package/lib/modules/components/toolbar/components/color-tool/color-panel/index.js +77 -0
  81. package/lib/modules/components/toolbar/components/color-tool/index.d.ts +14 -0
  82. package/lib/modules/components/toolbar/components/color-tool/index.js +66 -0
  83. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/index.d.ts +11 -0
  84. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/index.js +64 -0
  85. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +12 -0
  86. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.js +65 -0
  87. package/lib/modules/components/toolbar/components/graphic-tool/index.d.ts +15 -0
  88. package/lib/modules/components/toolbar/components/graphic-tool/index.js +82 -0
  89. package/lib/modules/components/toolbar/components/group-tool/index.d.ts +5 -0
  90. package/lib/modules/components/toolbar/components/group-tool/index.js +43 -0
  91. package/lib/modules/components/toolbar/components/icons/fold-icon.d.ts +2 -0
  92. package/lib/modules/components/toolbar/components/icons/fold-icon.js +41 -0
  93. package/lib/modules/components/toolbar/components/icons/move-icon.d.ts +1 -0
  94. package/lib/modules/components/toolbar/components/icons/move-icon.js +66 -0
  95. package/lib/modules/components/toolbar/components/item/index.d.ts +25 -0
  96. package/lib/modules/components/toolbar/components/item/index.js +165 -0
  97. package/lib/modules/components/toolbar/components/item/style.css +94 -0
  98. package/lib/modules/components/toolbar/components/multiple-color-tool/index.d.ts +12 -0
  99. package/lib/modules/components/toolbar/components/multiple-color-tool/index.js +75 -0
  100. package/lib/modules/components/toolbar/components/panel/index.d.ts +9 -0
  101. package/lib/modules/components/toolbar/components/panel/index.js +28 -0
  102. package/lib/modules/components/toolbar/components/panel/style.css +86 -0
  103. package/lib/modules/components/toolbar/components/pen-tool/index.d.ts +13 -0
  104. package/lib/modules/components/toolbar/components/pen-tool/index.js +62 -0
  105. package/lib/modules/components/toolbar/components/pen-tool/pen-panel/index.d.ts +8 -0
  106. package/lib/modules/components/toolbar/components/pen-tool/pen-panel/index.js +39 -0
  107. package/lib/modules/components/toolbar/components/save-draft/index.d.ts +7 -0
  108. package/lib/modules/components/toolbar/components/save-draft/index.js +59 -0
  109. package/lib/modules/components/toolbar/components/vertical-frame/index.d.ts +8 -0
  110. package/lib/modules/components/toolbar/components/vertical-frame/index.js +179 -0
  111. package/lib/modules/components/toolbar/hooks/use-resize-visible.d.ts +4 -0
  112. package/lib/modules/components/toolbar/hooks/use-resize-visible.js +59 -0
  113. package/lib/modules/components/toolbar/index.d.ts +29 -0
  114. package/lib/modules/components/toolbar/index.js +258 -0
  115. package/lib/modules/components/toolbar/style.css +85 -0
  116. package/lib/modules/components/toolbar/types.d.ts +13 -0
  117. package/lib/modules/components/toolbar/types.js +6 -0
  118. package/lib/modules/control-bar/components/more-actions/index.js +0 -6
  119. package/lib/modules/control-bar/components/share-state-nav/index.js +3 -2
  120. package/lib/modules/control-bar/index.js +2 -1
  121. package/lib/modules/control-bar/store.d.ts +7 -6
  122. package/lib/modules/control-bar/store.js +28 -21
  123. package/lib/modules/control-bar/view.js +7 -55
  124. package/lib/modules/dialog/dialogs/control-bar/index.d.ts +1 -0
  125. package/lib/modules/dialog/dialogs/control-bar/index.js +17 -3
  126. package/lib/modules/dialog/dialogs/participant/components/title.js +1 -1
  127. package/lib/modules/dialog/dialogs/sub-window/index.d.ts +2 -0
  128. package/lib/modules/dialog/dialogs/sub-window/index.js +98 -0
  129. package/lib/modules/dialog/dialogs/video-window/index.d.ts +1 -0
  130. package/lib/modules/dialog/dialogs/video-window/index.js +3 -2
  131. package/lib/modules/dialog/dialogs/whiteboard/index.js +0 -1
  132. package/lib/modules/dialog/hooks/use-popover-watcher.js +1 -2
  133. package/lib/modules/dialog/hooks/useElectron.d.ts +13 -0
  134. package/lib/modules/dialog/hooks/useElectron.js +62 -12
  135. package/lib/modules/dialog/index.d.ts +6 -3
  136. package/lib/modules/dialog/index.js +5 -3
  137. package/lib/modules/dialog/store.d.ts +21 -8
  138. package/lib/modules/dialog/store.js +79 -11
  139. package/lib/modules/dialog/type.d.ts +8 -0
  140. package/lib/modules/event-confirm/index.css +5 -2
  141. package/lib/modules/event-confirm/store.js +6 -7
  142. package/lib/modules/event-confirm/view.js +1 -1
  143. package/lib/modules/event-sound/index.d.ts +1 -0
  144. package/lib/modules/event-sound/index.js +11 -24
  145. package/lib/modules/invite/components/pstn-invite.js +0 -1
  146. package/lib/modules/layout/components/CommonVideoRenderer.js +21 -21
  147. package/lib/modules/layout/components/who-is-speaking.js +3 -6
  148. package/lib/modules/layout/index.d.ts +3 -1
  149. package/lib/modules/layout/index.js +2 -1
  150. package/lib/modules/layout/store.d.ts +9 -59
  151. package/lib/modules/layout/store.js +162 -37
  152. package/lib/modules/layout/type.d.ts +55 -0
  153. package/lib/modules/participant/components/can-moveable/index.js +0 -1
  154. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +4 -2
  155. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +14 -2
  156. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.d.ts +1 -1
  157. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.js +3 -2
  158. package/lib/modules/participant/components/participants/components/participants/index.js +3 -2
  159. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.d.ts +1 -0
  160. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.js +3 -1
  161. package/lib/modules/participant/components/participants/components/render-user/components/user-action/index.js +4 -2
  162. package/lib/modules/participant/components/participants/components/render-user/index.d.ts +4 -2
  163. package/lib/modules/participant/components/participants/components/render-user/index.js +5 -3
  164. package/lib/modules/participant/components/participants/index.js +5 -2
  165. package/lib/modules/participant/components/participants/types.d.ts +3 -0
  166. package/lib/modules/participant/index.d.ts +2 -0
  167. package/lib/modules/participant/index.js +2 -1
  168. package/lib/modules/participant/store.d.ts +5 -1
  169. package/lib/modules/participant/store.js +8 -1
  170. package/lib/modules/secondary-window/index.d.ts +49 -0
  171. package/lib/modules/secondary-window/index.js +108 -0
  172. package/lib/modules/secondary-window/store.d.ts +76 -0
  173. package/lib/modules/secondary-window/store.js +407 -0
  174. package/lib/modules/secondary-window/type.d.ts +106 -0
  175. package/lib/modules/secondary-window/type.js +35 -0
  176. package/lib/modules/secondary-window/view.d.ts +6 -0
  177. package/lib/modules/secondary-window/view.js +257 -0
  178. package/lib/modules/setting/general-settings/general-settings.js +9 -0
  179. package/lib/modules/setting/state/index.js +0 -10
  180. package/lib/modules/setting/store.d.ts +1 -0
  181. package/lib/modules/setting/store.js +6 -3
  182. package/lib/modules/share-screen/components/control-bar/index.d.ts +14 -1
  183. package/lib/modules/share-screen/components/control-bar/index.js +17 -12
  184. package/lib/modules/share-screen/components/selection/index.js +10 -15
  185. package/lib/modules/share-screen/index.d.ts +4 -1
  186. package/lib/modules/share-screen/index.js +6 -3
  187. package/lib/modules/share-screen/store.d.ts +9 -9
  188. package/lib/modules/share-screen/store.js +39 -64
  189. package/lib/modules/state-bar/index.d.ts +2 -0
  190. package/lib/modules/state-bar/index.js +2 -1
  191. package/lib/modules/state-bar/live-streaming-state.js +0 -1
  192. package/lib/modules/state-bar/store.d.ts +5 -2
  193. package/lib/modules/state-bar/store.js +14 -7
  194. package/lib/modules/state-bar/view.js +3 -3
  195. package/lib/modules/video-window/components/members/index.js +7 -12
  196. package/lib/modules/video-window/store.d.ts +1 -0
  197. package/lib/modules/video-window/store.js +5 -0
  198. package/lib/modules/whiteboard/components/toolbar/store.d.ts +2 -2
  199. package/lib/modules/whiteboard/index.d.ts +10 -13
  200. package/lib/modules/whiteboard/index.js +12 -11
  201. package/lib/providers/ability-provider.js +2 -0
  202. package/lib/providers/device-provider.d.ts +6 -3
  203. package/lib/providers/device-provider.js +336 -333
  204. package/lib/providers/multi-display-provider.d.ts +85 -0
  205. package/lib/providers/multi-display-provider.js +581 -0
  206. package/lib/providers/privilege-provider.js +1 -7
  207. package/lib/providers/room-provider.js +7 -1
  208. package/lib/providers/screen-share-provider.d.ts +3 -1
  209. package/lib/providers/screen-share-provider.js +39 -40
  210. package/lib/providers/sharing-provider.d.ts +7 -1
  211. package/lib/providers/sharing-provider.js +32 -3
  212. package/lib/providers/whiteboard-provider.d.ts +24 -0
  213. package/lib/providers/whiteboard-provider.js +127 -0
  214. package/lib/runtime.d.ts +1 -0
  215. package/lib/scenes/main-scene.d.ts +6 -0
  216. package/lib/scenes/main-scene.js +38 -2
  217. package/lib/scenes/waiting-scene.d.ts +0 -2
  218. package/lib/scenes/waiting-scene.js +0 -6
  219. package/lib/shared-data-source/member-data.d.ts +2 -2
  220. package/lib/shared-data-source/screen-share-data.d.ts +6 -0
  221. package/lib/shared-data-source/screen-share-data.js +5 -0
  222. package/lib/shared-data-source/setting.js +2 -1
  223. package/lib/shared-data-source/video-window.d.ts +2 -0
  224. package/lib/shared-data-source/video-window.js +19 -6
  225. package/lib/shared-data-source/whiteboard-data.d.ts +68 -0
  226. package/lib/shared-data-source/whiteboard-data.js +347 -0
  227. package/lib/translations/enUS.d.ts +1 -0
  228. package/lib/translations/enUS.js +2 -1
  229. package/lib/translations/zhCN.d.ts +1 -0
  230. package/lib/translations/zhCN.js +2 -1
  231. package/lib/ui-scene.d.ts +0 -1
  232. package/lib/ui-scene.js +0 -3
  233. package/lib/utilities/constant.d.ts +4 -2
  234. package/lib/utilities/constant.js +3 -1
  235. package/lib/utilities/debug.d.ts +4 -0
  236. package/lib/utilities/debug.js +40 -0
  237. package/lib/utilities/dialog-utils.js +26 -4
  238. package/lib/utilities/meeting-detail.js +4 -1
  239. package/lib/utilities/renderer-event.d.ts +4 -6
  240. package/lib/utilities/renderer-event.js +23 -43
  241. package/lib/utilities/renderer.d.ts +1 -1
  242. package/lib/utilities/renderer.js +44 -10
  243. package/lib/utilities/shared-storage.d.ts +18 -0
  244. package/lib/utilities/shared-storage.js +63 -0
  245. package/lib/utilities/tools.js +2 -1
  246. package/package.json +5 -6
  247. package/lib/electron/tools.d.ts +0 -5
  248. package/lib/electron/tools.js +0 -62
@@ -9,12 +9,14 @@ var _mobxReact = require("mobx-react");
9
9
  var _attendee = require("./components/attendee");
10
10
  var _userAction = require("./components/user-action");
11
11
  var _jsxRuntime = require("react/jsx-runtime");
12
- var RenderUser = (0, _mobxReact.observer)(function (_ref) {
13
- var user = _ref.user;
12
+ var RenderUser = (0, _mobxReact.observer)(function (props) {
13
+ var user = props.user,
14
+ isLocalCameraInSecondaryWindow = props.isLocalCameraInSecondaryWindow;
14
15
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_attendee.ParticipantAttendee, {
15
16
  user: user,
16
17
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_userAction.UserActions, {
17
- user: user
18
+ user: user,
19
+ isLocalCameraInSecondaryWindow: isLocalCameraInSecondaryWindow
18
20
  })
19
21
  });
20
22
  });
@@ -34,7 +34,8 @@ var ParticipantsContainer = (0, _mobxReact.observer)(function () {
34
34
  isLocalUserHost = _useContext.isLocalUserHost,
35
35
  openMuteAllDialog = _useContext.openMuteAllDialog,
36
36
  handlerRoomControlAction = _useContext.handlerRoomControlAction,
37
- hasInvite = _useContext.hasInvite;
37
+ hasInvite = _useContext.hasInvite,
38
+ isLocalCameraInSecondaryWindow = _useContext.isLocalCameraInSecondaryWindow;
38
39
  var dialogStore = (0, _react.useContext)(_store.StoreContext);
39
40
  var handlerRoomControlClick = function handlerRoomControlClick(action, userId) {
40
41
  if (action === _constant.FcrUIRoomControlType.MUTE_ALL_AUDIO) {
@@ -59,9 +60,11 @@ var ParticipantsContainer = (0, _mobxReact.observer)(function () {
59
60
  hasInvite: hasInvite,
60
61
  hasPinnedStream: hasPinnedStream,
61
62
  toggleParticipantAction: handlerUserAction,
63
+ isLocalCameraInSecondaryWindow: isLocalCameraInSecondaryWindow,
62
64
  userRenderer: function userRenderer(user) {
63
65
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_renderUser["default"], {
64
- user: user
66
+ user: user,
67
+ isLocalCameraInSecondaryWindow: isLocalCameraInSecondaryWindow
65
68
  });
66
69
  },
67
70
  footer: /*#__PURE__*/(0, _jsxRuntime.jsx)(_footer["default"], {
@@ -10,6 +10,7 @@ export interface ParticipantProps {
10
10
  searchText?: string;
11
11
  onInvite?: () => void;
12
12
  hasPinnedStream: boolean;
13
+ isLocalCameraInSecondaryWindow: boolean;
13
14
  hasInvite: boolean;
14
15
  }
15
16
  export interface User {
@@ -66,6 +67,7 @@ export interface ParticipantsMoreActionsProps {
66
67
  onParticipantsButtonClick: (action: ParticipantActionType, userId: string) => void;
67
68
  hasPinnedStream: boolean;
68
69
  hideActions: string[];
70
+ isLocalCameraInSecondaryWindow: boolean;
69
71
  }
70
72
  export interface IFcrParticipantItemProps {
71
73
  user: User;
@@ -94,4 +96,5 @@ export interface ParticipantsFooterParticipantProps {
94
96
  }
95
97
  export interface UserActionsPropsType {
96
98
  user: User;
99
+ isLocalCameraInSecondaryWindow: boolean;
97
100
  }
@@ -23,6 +23,7 @@ import { FcrUIAbilityProviderImpl } from '../../providers/ability-provider';
23
23
  import { FcrUIMessageProvider } from '../../providers/message-provider';
24
24
  import { FcrUISecuritySharedDataSource } from '../../shared-data-source/security-data';
25
25
  import { FcrUIScreenShareSharedDataSource } from '../../shared-data-source/screen-share-data';
26
+ import { FcrUIMultiDisplayProvider } from '../../providers/multi-display-provider';
26
27
  export declare class ParticipantUIModule extends UIModule {
27
28
  private _store;
28
29
  deviceStreamProvider?: FcrUIDeviceStreamProvider;
@@ -48,6 +49,7 @@ export declare class ParticipantUIModule extends UIModule {
48
49
  abilityProvider?: FcrUIAbilityProviderImpl;
49
50
  sharedSecuritySharedDataSource?: FcrUISecuritySharedDataSource;
50
51
  sharedScreenShareSharedDataSource?: FcrUIScreenShareSharedDataSource;
52
+ multiDisplayProvider?: FcrUIMultiDisplayProvider;
51
53
  onNodeWillActive(): void;
52
54
  onNodeWillInactive(): void;
53
55
  getComponent(): import("react/jsx-runtime").JSX.Element;
@@ -85,7 +85,8 @@ var ParticipantUIModule = exports.ParticipantUIModule = /*#__PURE__*/function (_
85
85
  abilityProvider: this.abilityProvider,
86
86
  messageProvider: this.messageProvider,
87
87
  sharedSecuritySharedDataSource: this.sharedSecuritySharedDataSource,
88
- sharedScreenShareSharedDataSource: this.sharedScreenShareSharedDataSource
88
+ sharedScreenShareSharedDataSource: this.sharedScreenShareSharedDataSource,
89
+ multiDisplayProvider: this.multiDisplayProvider
89
90
  });
90
91
  }
91
92
  }, {
@@ -30,6 +30,7 @@ import { FcrUIAbilityProviderImpl } from '../../providers/ability-provider';
30
30
  import { FcrUISecuritySharedDataSource } from '../../shared-data-source/security-data';
31
31
  import { FcrUIScreenShareSharedDataSource } from '../../shared-data-source/screen-share-data';
32
32
  import { User } from './components/participants/types';
33
+ import { FcrUIMultiDisplayProvider } from '../../providers/multi-display-provider';
33
34
  export default class ParticipantStore {
34
35
  protected logger: import("agora-foundation/lib/logger").Logger;
35
36
  private _roomStore;
@@ -59,6 +60,7 @@ export default class ParticipantStore {
59
60
  private _sharedMemberDataSource;
60
61
  private _sharedChatDataSource;
61
62
  private _sharedScreenShareSharedDataSource;
63
+ private _multiDisplayProvider;
62
64
  private _peerSessionObserver;
63
65
  private _dialogProvider;
64
66
  private _abilityProvider;
@@ -115,10 +117,11 @@ export default class ParticipantStore {
115
117
  get isInterpreterEnabled(): boolean;
116
118
  get waitingRoomUserCount(): number;
117
119
  get isNewWaitingRoomUserEnter(): boolean;
120
+ get isLocalCameraInSecondaryWindow(): boolean;
118
121
  get isHostKeyEnabled(): boolean;
119
122
  get hasInvite(): boolean;
120
123
  get checkedStateMap(): import("../../shared-data-source/security-data").FcrSecurityCheckedStateType;
121
- constructor({ roomControl, securityStore, uiEventStore, deviceStore, deviceStreamStore, roomStore, sessionProvider, sharedSpeakerSpotlightDataSource, sharedPinDataSource, sharedLayoutDataSource, sharedInterpreterDataSource, sharedSettingDataSource, sharedWaitingRoomDataSource, chatProvider, sharedVideoWindowDataSource, sharedMemberDataSource, sharedChatDataSource, dialogProvider, abilityProvider, messageProvider, sharedSecuritySharedDataSource, sharedScreenShareSharedDataSource, }: {
124
+ constructor({ roomControl, securityStore, uiEventStore, deviceStore, deviceStreamStore, roomStore, sessionProvider, sharedSpeakerSpotlightDataSource, sharedPinDataSource, sharedLayoutDataSource, sharedInterpreterDataSource, sharedSettingDataSource, sharedWaitingRoomDataSource, chatProvider, sharedVideoWindowDataSource, sharedMemberDataSource, sharedChatDataSource, dialogProvider, abilityProvider, messageProvider, sharedSecuritySharedDataSource, sharedScreenShareSharedDataSource, multiDisplayProvider, }: {
122
125
  roomControl: FcrMainRoomControl;
123
126
  securityStore: FcrUIPrivilegeProvider;
124
127
  uiEventStore: FcrUIEventProvider;
@@ -141,6 +144,7 @@ export default class ParticipantStore {
141
144
  messageProvider: FcrUIMessageProvider;
142
145
  sharedSecuritySharedDataSource: FcrUISecuritySharedDataSource;
143
146
  sharedScreenShareSharedDataSource: FcrUIScreenShareSharedDataSource;
147
+ multiDisplayProvider: FcrUIMultiDisplayProvider;
144
148
  });
145
149
  release(): void;
146
150
  allowedOperations: (userId: string, userRole: FcrUserRole) => string[];
@@ -174,7 +174,8 @@ var ParticipantStore = exports["default"] = /*#__PURE__*/function () {
174
174
  abilityProvider = _ref2.abilityProvider,
175
175
  messageProvider = _ref2.messageProvider,
176
176
  sharedSecuritySharedDataSource = _ref2.sharedSecuritySharedDataSource,
177
- sharedScreenShareSharedDataSource = _ref2.sharedScreenShareSharedDataSource;
177
+ sharedScreenShareSharedDataSource = _ref2.sharedScreenShareSharedDataSource,
178
+ multiDisplayProvider = _ref2.multiDisplayProvider;
178
179
  (0, _classCallCheck2["default"])(this, ParticipantStore);
179
180
  (0, _defineProperty2["default"])(this, _ref, (_initProto(this), (0, _logger.createLogger)({
180
181
  prefix: 'ParticipantStore'
@@ -368,6 +369,7 @@ var ParticipantStore = exports["default"] = /*#__PURE__*/function () {
368
369
  this._sharedChatDataSource = sharedChatDataSource;
369
370
  this._sharedSecuritySharedDataSource = sharedSecuritySharedDataSource;
370
371
  this._sharedScreenShareSharedDataSource = sharedScreenShareSharedDataSource;
372
+ this._multiDisplayProvider = multiDisplayProvider;
371
373
  this.allowUnmute = this._securityStore.allowUnmuteSelfAudio();
372
374
  this.joinWithMuteAudio = this._securityStore.allowJoinWithMuteAudio();
373
375
  this._uiEventStore.addObserver(this._eventObserver);
@@ -657,6 +659,11 @@ var ParticipantStore = exports["default"] = /*#__PURE__*/function () {
657
659
  get: function get() {
658
660
  return this._sharedWaitingRoomDataSource.unReadState;
659
661
  }
662
+ }, {
663
+ key: "isLocalCameraInSecondaryWindow",
664
+ get: function get() {
665
+ return this._multiDisplayProvider.isLocalCameraInSecondaryWindow;
666
+ }
660
667
  }, {
661
668
  key: "isHostKeyEnabled",
662
669
  get: function get() {
@@ -0,0 +1,49 @@
1
+ import { UIModule } from '../../base';
2
+ import { FcrUIEventProvider } from '../../providers/event-provider';
3
+ import { FcrUIMultiDisplayProvider } from '../../providers/multi-display-provider';
4
+ import { FcrUIMainWindowRenderer, FcrUIMainWindowRendererObserver } from './type';
5
+ import { FcrUIVideoWindowDataSource } from '../../shared-data-source/video-window';
6
+ import { FcrUIWhiteboardProvider } from '../../providers/whiteboard-provider';
7
+ import { FcrUserInfo } from 'fcr-core/lib/type';
8
+ import { FcrUIScreenShareSharedDataSource } from '../../shared-data-source/screen-share-data';
9
+ import { FcrUIMemberSharedDataSource } from '../../shared-data-source/member-data';
10
+ import { FcrUISharedWhiteboardDataSource } from '../../shared-data-source/whiteboard-data';
11
+ import { ShareScreenUIModule } from '../share-screen';
12
+ import { FcrUIAnnotationProvider } from '../../providers/annotation-provider';
13
+ import { FcrUISharedAnnotationSource } from '../../shared-data-source/annotation-data';
14
+ import { FcrUIPrivilegeProvider } from '../../providers/privilege-provider';
15
+ import { FcrUIRoomProvider } from '../../providers/room-provider';
16
+ import { FcrUIAbilityProviderImpl } from '../../providers/ability-provider';
17
+ import { FcrUIDialogProvider } from '../../providers/dialog-provider';
18
+ export declare class FcrUISecondaryWindowModule extends UIModule {
19
+ private _store?;
20
+ private _leaveMeetingStore?;
21
+ multiDisplayProvider?: FcrUIMultiDisplayProvider;
22
+ sharedVideoWindowDataSource?: FcrUIVideoWindowDataSource;
23
+ eventProvider?: FcrUIEventProvider;
24
+ whiteboardProvider?: FcrUIWhiteboardProvider;
25
+ privilegeProvider?: FcrUIPrivilegeProvider;
26
+ roomProvider?: FcrUIRoomProvider;
27
+ abilityProvider?: FcrUIAbilityProviderImpl;
28
+ dialogProvider?: FcrUIDialogProvider;
29
+ sharedScreenShareSharedDataSource?: FcrUIScreenShareSharedDataSource;
30
+ sharedMemberDataSource?: FcrUIMemberSharedDataSource;
31
+ sharedWhiteboardDataSource?: FcrUISharedWhiteboardDataSource;
32
+ annotationProvider?: FcrUIAnnotationProvider;
33
+ sharedAnnotationDataSource?: FcrUISharedAnnotationSource;
34
+ onNodeWillActive(): void;
35
+ onNodeWillInactive(): void;
36
+ component(shareScreenModule: ShareScreenUIModule): import("react/jsx-runtime").JSX.Element;
37
+ }
38
+ export declare class FcrUIMainWindowRendererImpl implements FcrUIMainWindowRenderer {
39
+ private _observers;
40
+ private _ownerUser;
41
+ private _backgroundColor;
42
+ private _hasWriteBoardPermission;
43
+ get ownerUser(): FcrUserInfo | undefined;
44
+ get backgroundColor(): string;
45
+ get hasWriteBoardPermission(): boolean;
46
+ notifyObservers(event: keyof FcrUIMainWindowRendererObserver, args: any): void;
47
+ addObserver(observer: FcrUIMainWindowRendererObserver): void;
48
+ removeObserver(observer: FcrUIMainWindowRendererObserver): void;
49
+ }
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ require("core-js/modules/es.reflect.construct.js");
5
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
6
+ Object.defineProperty(exports, "__esModule", {
7
+ value: true
8
+ });
9
+ exports.FcrUISecondaryWindowModule = exports.FcrUIMainWindowRendererImpl = void 0;
10
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
12
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
13
+ var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
14
+ var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
15
+ var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
16
+ var _base = require("../../base");
17
+ var _store = require("./store");
18
+ var _view = require("./view");
19
+ var _imports = require("fcr-core/lib/imports");
20
+ var _store2 = require("../components/leave-meeting/store");
21
+ var _jsxRuntime = require("react/jsx-runtime");
22
+ function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
23
+ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
24
+ var FcrUISecondaryWindowModule = exports.FcrUISecondaryWindowModule = /*#__PURE__*/function (_UIModule) {
25
+ function FcrUISecondaryWindowModule() {
26
+ (0, _classCallCheck2["default"])(this, FcrUISecondaryWindowModule);
27
+ return _callSuper(this, FcrUISecondaryWindowModule, arguments);
28
+ }
29
+ (0, _inherits2["default"])(FcrUISecondaryWindowModule, _UIModule);
30
+ return (0, _createClass2["default"])(FcrUISecondaryWindowModule, [{
31
+ key: "onNodeWillActive",
32
+ value: function onNodeWillActive() {
33
+ this._store = new _store.SecondaryWindowStore(this.multiDisplayProvider, this.sharedVideoWindowDataSource, this.eventProvider, this.sharedScreenShareSharedDataSource, this.sharedMemberDataSource, this.sharedWhiteboardDataSource, this.sharedAnnotationDataSource, this.annotationProvider);
34
+ this._leaveMeetingStore = new _store2.LeaveMeetingStore(this.privilegeProvider, this.roomProvider, this.roomProvider.currentRoomControl, this.sharedMemberDataSource, this.abilityProvider, this.dialogProvider);
35
+ }
36
+ }, {
37
+ key: "onNodeWillInactive",
38
+ value: function onNodeWillInactive() {
39
+ var _this$_store;
40
+ (_this$_store = this._store) === null || _this$_store === void 0 || _this$_store.release();
41
+ }
42
+ }, {
43
+ key: "component",
44
+ value: function component(shareScreenModule) {
45
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_store.SecondaryWindowStoreContext.Provider, {
46
+ value: this._store,
47
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_store2.LeaveMeetingStoreContext.Provider, {
48
+ value: this._leaveMeetingStore,
49
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_view.SubWindowView, {
50
+ renderScreenShareControl: function renderScreenShareControl(secondaryWindowProprs) {
51
+ return shareScreenModule.getControlComponent(secondaryWindowProprs);
52
+ }
53
+ })
54
+ })
55
+ });
56
+ }
57
+ }]);
58
+ }(_base.UIModule);
59
+ var FcrUIMainWindowRendererImpl = exports.FcrUIMainWindowRendererImpl = /*#__PURE__*/function () {
60
+ function FcrUIMainWindowRendererImpl() {
61
+ (0, _classCallCheck2["default"])(this, FcrUIMainWindowRendererImpl);
62
+ (0, _defineProperty2["default"])(this, "_observers", new _imports.AgoraObservable());
63
+ (0, _defineProperty2["default"])(this, "_backgroundColor", '#ffffff');
64
+ (0, _defineProperty2["default"])(this, "_hasWriteBoardPermission", false);
65
+ }
66
+ return (0, _createClass2["default"])(FcrUIMainWindowRendererImpl, [{
67
+ key: "ownerUser",
68
+ get: function get() {
69
+ return this._ownerUser;
70
+ }
71
+ }, {
72
+ key: "backgroundColor",
73
+ get: function get() {
74
+ return this._backgroundColor;
75
+ }
76
+ }, {
77
+ key: "hasWriteBoardPermission",
78
+ get: function get() {
79
+ return this._hasWriteBoardPermission;
80
+ }
81
+ }, {
82
+ key: "notifyObservers",
83
+ value: function notifyObservers(event, args) {
84
+ switch (event) {
85
+ case 'onSharingUserUpdated':
86
+ this._ownerUser = args;
87
+ break;
88
+ case 'onBackgroundColorUpdated':
89
+ this._backgroundColor = args;
90
+ break;
91
+ case 'onPermissionUpdated':
92
+ this._hasWriteBoardPermission = args;
93
+ break;
94
+ }
95
+ this._observers.notifyObservers(event, args);
96
+ }
97
+ }, {
98
+ key: "addObserver",
99
+ value: function addObserver(observer) {
100
+ this._observers.addObserver(observer);
101
+ }
102
+ }, {
103
+ key: "removeObserver",
104
+ value: function removeObserver(observer) {
105
+ this._observers.removeObserver(observer);
106
+ }
107
+ }]);
108
+ }();
@@ -0,0 +1,76 @@
1
+ import { FcrUIMultiDisplayProvider } from '../../providers/multi-display-provider';
2
+ import { VideoWindowDataReturn, WhiteboardToolAction } from './type';
3
+ import { FcrUIEventProvider } from '../../providers/event-provider';
4
+ import { FcrUIVideoWindowDataSource } from '../../shared-data-source/video-window';
5
+ import { FcrUIScreenShareSharedDataSource } from '../../shared-data-source/screen-share-data';
6
+ import { FcrUIMemberSharedDataSource } from '../../shared-data-source/member-data';
7
+ import { FcrUISharedWhiteboardDataSource } from '../../shared-data-source/whiteboard-data';
8
+ import { FcrBoardShape, FcrBoardToolType } from 'fcr-core/lib/room-control/whiteboard-control/enums';
9
+ import { WhiteboardThemeType } from '../whiteboard/type';
10
+ import { FcrUISharedAnnotationSource } from '../../shared-data-source/annotation-data';
11
+ import { FcrUIAnnotationProvider } from '../../providers/annotation-provider';
12
+ export declare class SecondaryWindowStore {
13
+ private _multiDisplayProvider;
14
+ private _videoWindowDataSource;
15
+ private _eventProvider;
16
+ private _sharedScreenShareDataSource;
17
+ private _memberSharedDataSource;
18
+ private _sharedWhiteboardDataSource;
19
+ private _sharedAnnotationDataSource;
20
+ private _annotationProvider;
21
+ protected logger: import("agora-foundation/lib/logger").Logger;
22
+ private _observable;
23
+ private _dialogId;
24
+ private _disposers;
25
+ private get _subWindowDialog();
26
+ private _prevFullScalc;
27
+ private _screenShareSpeakerViewSize;
28
+ private _maxScalcValue;
29
+ private _minScalcValue;
30
+ private _diffScalcValue;
31
+ private accessor _screenShareScalcValue;
32
+ accessor isSharingWhiteboard: boolean;
33
+ get secondaryWindowContentType(): "hidden" | "speaker" | "gallery" | "local-camera" | "remote-camera" | "sharing-screen" | "sharing-screen-with-annotation" | "sharing-whiteboard";
34
+ get videoWindowData(): VideoWindowDataReturn<typeof this.secondaryWindowContentType>;
35
+ get isCurrentOriginal(): boolean;
36
+ get isZoomMaxmum(): boolean;
37
+ get isZoomMinimum(): boolean;
38
+ get isAspectRatioPreserved(): boolean;
39
+ get scalValue(): number;
40
+ get currentUser(): import("fcr-core/lib/type").FcrUserInfo;
41
+ get ownerUser(): import("fcr-core/lib/type").FcrUserInfo | undefined;
42
+ get isHost(): boolean;
43
+ get canWriteBoard(): boolean;
44
+ get toolbarState(): import("../components/toolbar/types").FcrToolbarState;
45
+ get currentTheme(): WhiteboardThemeType;
46
+ get connectionState(): import("fcr-core").FcrConnectionState;
47
+ get showLoading(): boolean;
48
+ get joinSuccess(): boolean;
49
+ get isScreenShare(): boolean;
50
+ get isBoardShare(): boolean;
51
+ get annotationHasStart(): boolean;
52
+ get isShowToolbar(): boolean;
53
+ constructor(_multiDisplayProvider: FcrUIMultiDisplayProvider, _videoWindowDataSource: FcrUIVideoWindowDataSource, _eventProvider: FcrUIEventProvider, _sharedScreenShareDataSource: FcrUIScreenShareSharedDataSource, _memberSharedDataSource: FcrUIMemberSharedDataSource, _sharedWhiteboardDataSource: FcrUISharedWhiteboardDataSource, _sharedAnnotationDataSource: FcrUISharedAnnotationSource, _annotationProvider: FcrUIAnnotationProvider);
54
+ getContent(): void;
55
+ handleIframeLoad(iframe: HTMLIFrameElement): void;
56
+ zoomOut(): void;
57
+ zoomIn(): void;
58
+ fullContainer(): void;
59
+ setScaleValue(scale: number): void;
60
+ setOriginScalc(): void;
61
+ setSpeakerViewSize(width: number, height: number): void;
62
+ setWhiteboardTool(tool: {
63
+ action: WhiteboardToolAction;
64
+ tool: FcrBoardToolType | FcrBoardShape | string | number;
65
+ }): void;
66
+ saveWhiteboardDraft(): void;
67
+ setProgress(progress: number): void;
68
+ setTheme(theme: WhiteboardThemeType): void;
69
+ setControlEnable(enable: boolean): void;
70
+ setShowLoading(show: boolean): void;
71
+ setCommonColors(colors: string[]): void;
72
+ log(message: string): void;
73
+ release(): void;
74
+ private _handleContentDistributionUpdated;
75
+ }
76
+ export declare const SecondaryWindowStoreContext: import("react").Context<SecondaryWindowStore>;