fcr-ui-scene 3.4.2 → 3.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (215) hide show
  1. package/lib/common/device-store.d.ts +23 -14
  2. package/lib/common/device-store.js +361 -252
  3. package/lib/common/device-stream-store.d.ts +8 -14
  4. package/lib/common/device-stream-store.js +254 -116
  5. package/lib/common/event-store.d.ts +35 -10
  6. package/lib/common/event-store.js +64 -13
  7. package/lib/common/security-store.d.ts +47 -39
  8. package/lib/common/security-store.js +335 -379
  9. package/lib/electron/app.js +1 -0
  10. package/lib/modules/action-bar/action-bar-collapes-items.d.ts +4 -1
  11. package/lib/modules/action-bar/action-bar-collapes-items.js +38 -21
  12. package/lib/modules/action-bar/components/apps/useWidgetList.d.ts +7 -0
  13. package/lib/modules/action-bar/components/apps/useWidgetList.js +43 -0
  14. package/lib/modules/action-bar/components/leave/assign-host.d.ts +8 -1
  15. package/lib/modules/action-bar/components/leave/assign-host.js +1 -1
  16. package/lib/modules/action-bar/components/leave/leave-meeting.d.ts +16 -1
  17. package/lib/modules/action-bar/smaller.js +5 -5
  18. package/lib/modules/chat/chat-bar/index.css +6 -0
  19. package/lib/modules/chat/chat-bar/index.d.ts +3 -3
  20. package/lib/modules/chat/chat-bar/index.js +51 -39
  21. package/lib/modules/chat/chat-select/index.css +27 -7
  22. package/lib/modules/chat/chat-select/index.d.ts +1 -1
  23. package/lib/modules/chat/chat-select/index.js +18 -4
  24. package/lib/modules/chat/chat.d.ts +1 -2
  25. package/lib/modules/chat/chat.js +196 -128
  26. package/lib/modules/chat/components/chat-select/select-input/index.d.ts +7 -0
  27. package/lib/modules/chat/components/chat-select/select-input/index.js +35 -0
  28. package/lib/modules/chat/components/chat-select/select-item/index.d.ts +12 -0
  29. package/lib/modules/chat/components/chat-select/select-item/index.js +153 -0
  30. package/lib/modules/chat/components/chat-tabs/index.d.ts +2 -0
  31. package/lib/modules/chat/components/chat-tabs/index.js +61 -0
  32. package/lib/modules/chat/components/message-list/chat-empty/index.d.ts +2 -0
  33. package/lib/modules/chat/components/message-list/chat-empty/index.js +26 -0
  34. package/lib/modules/chat/components/message-list/history-unread-message-button/index.d.ts +7 -0
  35. package/lib/modules/chat/components/message-list/history-unread-message-button/index.js +55 -0
  36. package/lib/modules/chat/components/message-list/message-item/index.d.ts +15 -0
  37. package/lib/modules/chat/components/message-list/message-item/index.js +279 -0
  38. package/lib/modules/chat/components/message-list/scroll-bottom-button/index.d.ts +9 -0
  39. package/lib/modules/chat/components/message-list/scroll-bottom-button/index.js +67 -0
  40. package/lib/modules/chat/message-list.js +68 -51
  41. package/lib/modules/components/dialog-container/component/body.js +1 -2
  42. package/lib/modules/components/dialog-container/index.d.ts +2 -2
  43. package/lib/modules/components/member-window/components/member-actions/components/audio-control.d.ts +6 -0
  44. package/lib/modules/components/member-window/components/member-actions/components/audio-control.js +36 -0
  45. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.d.ts +40 -0
  46. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +170 -0
  47. package/lib/modules/components/member-window/components/member-actions/components/icon-status.d.ts +11 -0
  48. package/lib/modules/components/member-window/components/member-actions/components/icon-status.js +105 -0
  49. package/lib/modules/components/member-window/components/member-actions/components/layout/index.d.ts +9 -0
  50. package/lib/modules/components/member-window/components/member-actions/components/layout/index.js +42 -0
  51. package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +11 -0
  52. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +159 -0
  53. package/lib/modules/components/member-window/components/member-actions/components/share-status.d.ts +2 -0
  54. package/lib/modules/components/member-window/components/member-actions/components/share-status.js +32 -0
  55. package/lib/modules/components/member-window/components/member-actions/components/user-info.d.ts +16 -0
  56. package/lib/modules/components/member-window/components/member-actions/components/user-info.js +130 -0
  57. package/lib/modules/components/member-window/components/member-actions/components/user-tag.d.ts +12 -0
  58. package/lib/modules/components/member-window/components/member-actions/components/user-tag.js +57 -0
  59. package/lib/modules/components/member-window/components/member-actions/index.d.ts +3 -0
  60. package/lib/modules/components/member-window/components/member-actions/index.js +122 -0
  61. package/lib/modules/components/member-window/components/member-actions/libs/index.d.ts +2 -0
  62. package/lib/modules/components/member-window/components/member-actions/libs/index.js +24 -0
  63. package/lib/modules/components/member-window/components/member-actions/provider.d.ts +21 -0
  64. package/lib/modules/components/member-window/components/member-actions/provider.js +77 -0
  65. package/lib/modules/components/member-window/components/member-actions/store.d.ts +48 -0
  66. package/lib/modules/components/member-window/components/member-actions/store.js +306 -0
  67. package/lib/modules/components/member-window/components/member-board.d.ts +2 -0
  68. package/lib/modules/components/member-window/components/member-board.js +63 -0
  69. package/lib/modules/components/member-window/components/mic-volume.d.ts +2 -0
  70. package/lib/modules/components/member-window/components/mic-volume.js +23 -0
  71. package/lib/modules/components/member-window/components/video-player/components/local-video-player.d.ts +4 -0
  72. package/lib/modules/components/member-window/components/video-player/components/local-video-player.js +40 -0
  73. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.d.ts +8 -0
  74. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.js +62 -0
  75. package/lib/modules/components/member-window/components/video-player/index.d.ts +9 -0
  76. package/lib/modules/components/member-window/components/video-player/index.js +38 -0
  77. package/lib/modules/components/member-window/types.d.ts +78 -0
  78. package/lib/modules/components/member-window/types.js +6 -0
  79. package/lib/modules/connection-gateway/components/tabs/index.js +2 -1
  80. package/lib/modules/control-bar/components/meeting-details/index.js +7 -15
  81. package/lib/modules/control-bar/components/more-actions/index.js +5 -15
  82. package/lib/modules/dialog/components/system-preference/assets/bg1.png +0 -0
  83. package/lib/modules/dialog/components/system-preference/assets/bg2.png +0 -0
  84. package/lib/modules/dialog/components/system-preference/assets/fcr_png_host.png +0 -0
  85. package/lib/modules/dialog/components/widget/electron.d.ts +5 -0
  86. package/lib/modules/dialog/components/widget/electron.js +41 -0
  87. package/lib/modules/dialog/components/widget/index.d.ts +6 -0
  88. package/lib/modules/dialog/components/widget/index.js +41 -0
  89. package/lib/modules/dialog/type.d.ts +84 -0
  90. package/lib/modules/dialog/type.js +6 -0
  91. package/lib/modules/invite/components/pstn-invite.js +4 -13
  92. package/lib/modules/invite/pstn-invite.js +7 -9
  93. package/lib/modules/invite/store.d.ts +2 -0
  94. package/lib/modules/invite/store.js +6 -0
  95. package/lib/modules/invite/voip-invite.js +5 -6
  96. package/lib/modules/layout/member-window/index.css +116 -18
  97. package/lib/modules/layout/member-window/index.d.ts +10 -3
  98. package/lib/modules/layout/member-window/index.js +227 -115
  99. package/lib/modules/participant/attendee/index.css +0 -51
  100. package/lib/modules/participant/attendee/index.d.ts +8 -5
  101. package/lib/modules/participant/attendee/index.js +61 -15
  102. package/lib/modules/participant/components/attendee/components/interpreter-tag/index.d.ts +3 -0
  103. package/lib/modules/participant/components/attendee/components/interpreter-tag/index.js +48 -0
  104. package/lib/modules/participant/components/confirm-input/index.d.ts +6 -0
  105. package/lib/modules/participant/components/confirm-input/index.js +49 -0
  106. package/lib/modules/participant/components/drop-menu/util.d.ts +5 -0
  107. package/lib/modules/participant/components/drop-menu/util.js +28 -0
  108. package/lib/modules/participant/components/participants/components/footer/components/buttons.d.ts +6 -0
  109. package/lib/modules/participant/components/participants/components/footer/components/buttons.js +52 -0
  110. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.css +60 -0
  111. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.d.ts +2 -0
  112. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.js +166 -0
  113. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/util.d.ts +5 -0
  114. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/util.js +28 -0
  115. package/lib/modules/participant/components/participants/components/footer/components/footer/index.css +13 -0
  116. package/lib/modules/participant/components/participants/components/footer/components/footer/index.d.ts +5 -0
  117. package/lib/modules/participant/components/participants/components/footer/components/footer/index.js +242 -0
  118. package/lib/modules/participant/components/participants/components/footer/index.d.ts +5 -0
  119. package/lib/modules/participant/components/participants/components/footer/index.js +47 -0
  120. package/lib/modules/participant/components/participants/components/merge/index.d.ts +11 -0
  121. package/lib/modules/participant/components/participants/components/merge/index.js +49 -0
  122. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.css +191 -0
  123. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.d.ts +4 -0
  124. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +204 -0
  125. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.css +49 -0
  126. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.d.ts +5 -0
  127. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +219 -0
  128. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.d.ts +5 -0
  129. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.js +70 -0
  130. package/lib/modules/participant/components/participants/components/participants/index.css +104 -0
  131. package/lib/modules/participant/components/participants/components/participants/index.d.ts +3 -0
  132. package/lib/modules/participant/components/participants/components/participants/index.js +110 -0
  133. package/lib/modules/participant/components/participants/components/render-tab/index.d.ts +2 -0
  134. package/lib/modules/participant/components/participants/components/render-tab/index.js +49 -0
  135. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/interpreter-tag/index.d.ts +3 -0
  136. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/interpreter-tag/index.js +48 -0
  137. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/microphone-indicator/index.d.ts +6 -0
  138. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/microphone-indicator/index.js +28 -0
  139. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/user-avatar/index.d.ts +7 -0
  140. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/user-avatar/index.js +39 -0
  141. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.css +69 -0
  142. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.d.ts +5 -0
  143. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.js +135 -0
  144. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/audio-button/index.d.ts +7 -0
  145. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/audio-button/index.js +31 -0
  146. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.d.ts +12 -0
  147. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.js +82 -0
  148. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-to-mainroom-button/index.d.ts +4 -0
  149. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-to-mainroom-button/index.js +26 -0
  150. package/lib/modules/participant/components/participants/components/render-user/components/user-action/index.d.ts +2 -0
  151. package/lib/modules/participant/components/participants/components/render-user/components/user-action/index.js +75 -0
  152. package/lib/modules/participant/components/participants/components/render-user/index.d.ts +5 -0
  153. package/lib/modules/participant/components/participants/components/render-user/index.js +21 -0
  154. package/lib/modules/participant/components/participants/render-tab/index.d.ts +2 -0
  155. package/lib/modules/participant/components/participants/render-tab/index.js +49 -0
  156. package/lib/modules/participant/components/participants/render-user/index.d.ts +5 -0
  157. package/lib/modules/participant/components/participants/render-user/index.js +21 -0
  158. package/lib/modules/participant/components/participants/types.d.ts +96 -0
  159. package/lib/modules/participant/components/participants/types.js +37 -0
  160. package/lib/modules/participant/components/user-action/audio-button/index.d.ts +7 -0
  161. package/lib/modules/participant/components/user-action/audio-button/index.js +31 -0
  162. package/lib/modules/participant/components/user-action/move-actions-popover/index.d.ts +12 -0
  163. package/lib/modules/participant/components/user-action/move-actions-popover/index.js +82 -0
  164. package/lib/modules/participant/components/user-action/move-to-mainroom-button/index.d.ts +4 -0
  165. package/lib/modules/participant/components/user-action/move-to-mainroom-button/index.js +26 -0
  166. package/lib/modules/share-screen/selection/index.css +4 -0
  167. package/lib/modules/share-screen/selection/index.js +126 -129
  168. package/lib/modules/share-screen/share-state-bar/index.js +1 -1
  169. package/lib/modules/state-bar/meeting-details.js +29 -34
  170. package/lib/modules/video-window/components/deviceState/index.d.ts +7 -0
  171. package/lib/modules/video-window/components/deviceState/index.js +75 -0
  172. package/lib/modules/video-window/components/members/index.css +51 -0
  173. package/lib/modules/video-window/components/members/index.d.ts +2 -0
  174. package/lib/modules/video-window/components/members/index.js +130 -0
  175. package/lib/modules/video-window/components/speaking/index.css +86 -0
  176. package/lib/modules/video-window/components/speaking/index.d.ts +3 -0
  177. package/lib/modules/video-window/components/speaking/index.js +48 -0
  178. package/lib/modules/video-window/components/topControl/index.css +35 -0
  179. package/lib/modules/video-window/components/topControl/index.d.ts +3 -0
  180. package/lib/modules/video-window/components/topControl/index.js +79 -0
  181. package/lib/modules/widget/index.css +17 -0
  182. package/lib/modules/widget/index.d.ts +10 -0
  183. package/lib/modules/widget/index.js +114 -0
  184. package/lib/modules/widget/sdk.d.ts +30 -0
  185. package/lib/modules/widget/sdk.js +221 -0
  186. package/lib/modules/widget/store.d.ts +14 -0
  187. package/lib/modules/widget/store.js +28 -0
  188. package/lib/modules/widget/type.d.ts +155 -0
  189. package/lib/modules/widget/type.js +6 -0
  190. package/lib/modules/widget/view.d.ts +2 -0
  191. package/lib/modules/widget/view.js +47 -0
  192. package/lib/modules/widget/web-widget.d.ts +29 -0
  193. package/lib/modules/widget/web-widget.js +234 -0
  194. package/lib/providers/ability-provider.d.ts +24 -0
  195. package/lib/providers/ability-provider.js +36 -0
  196. package/lib/providers/widget-provider.d.ts +44 -0
  197. package/lib/providers/widget-provider.js +167 -0
  198. package/lib/schema.d.ts +114 -0
  199. package/lib/schema.js +77 -0
  200. package/lib/shared-data-source/member-data.d.ts +126 -0
  201. package/lib/shared-data-source/member-data.js +465 -0
  202. package/lib/translations/enUS.d.ts +5 -0
  203. package/lib/translations/enUS.js +9 -3
  204. package/lib/translations/zhCN.d.ts +5 -0
  205. package/lib/translations/zhCN.js +13 -7
  206. package/lib/utilities/extract.d.ts +1 -1
  207. package/lib/utilities/logger.d.ts +8 -0
  208. package/lib/utilities/logger.js +42 -0
  209. package/lib/utilities/meeting-detail.d.ts +2 -0
  210. package/lib/utilities/meeting-detail.js +56 -0
  211. package/lib/utilities/validate-params.d.ts +2 -0
  212. package/lib/utilities/validate-params.js +16 -0
  213. package/lib/widget-sdk.d.ts +2 -0
  214. package/lib/widget-sdk.js +13 -0
  215. package/package.json +5 -5
@@ -11,7 +11,6 @@ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
11
  require("core-js/modules/es.object.keys.js");
12
12
  require("core-js/modules/esnext.async-iterator.filter.js");
13
13
  require("core-js/modules/esnext.async-iterator.for-each.js");
14
- require("core-js/modules/esnext.iterator.constructor.js");
15
14
  require("core-js/modules/esnext.iterator.filter.js");
16
15
  require("core-js/modules/esnext.iterator.for-each.js");
17
16
  require("core-js/modules/web.dom-collections.for-each.js");
@@ -23,10 +22,19 @@ exports.MemberWindowActions = exports.MemberWindow = exports.MemberBoard = expor
23
22
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
24
23
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
25
24
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
25
+ require("core-js/modules/es.array.find.js");
26
+ require("core-js/modules/es.array.includes.js");
26
27
  require("core-js/modules/es.array.iterator.js");
28
+ require("core-js/modules/es.array.some.js");
27
29
  require("core-js/modules/es.object.to-string.js");
28
30
  require("core-js/modules/es.set.js");
31
+ require("core-js/modules/es.string.includes.js");
29
32
  require("core-js/modules/es.string.iterator.js");
33
+ require("core-js/modules/esnext.async-iterator.find.js");
34
+ require("core-js/modules/esnext.async-iterator.some.js");
35
+ require("core-js/modules/esnext.iterator.constructor.js");
36
+ require("core-js/modules/esnext.iterator.find.js");
37
+ require("core-js/modules/esnext.iterator.some.js");
30
38
  require("core-js/modules/esnext.set.add-all.js");
31
39
  require("core-js/modules/esnext.set.delete-all.js");
32
40
  require("core-js/modules/esnext.set.difference.v2.js");
@@ -62,12 +70,11 @@ var _type = require("agora-ui-foundation/lib/components/icon/type");
62
70
  var _popover = require("agora-ui-foundation/lib/components/popover");
63
71
  var _tooltip = require("agora-ui-foundation/lib/components/tooltip");
64
72
  var _i18n = require("agora-ui-foundation/lib/i18n");
65
- var _type2 = require("agora-edu-core/lib/type");
73
+ var _type2 = require("fcr-core/lib/type");
66
74
  var _hooks = require("../../../utilities/hooks");
67
- var _participantsMoreAction = require("../../participant/attendee/participants-more-action");
68
75
  var _type3 = require("../type");
69
76
  require("./index.css");
70
- var _context = require("../context");
77
+ var _store = require("../store");
71
78
  var _localVideoPlayer = require("agora-ui-foundation/lib/components/local-video-player");
72
79
  var _iconPhoneCall = require("agora-ui-foundation/lib/components/icon-phone-call");
73
80
  var _videoTrackRenderContext = require("../../../utilities/video-track-render-context");
@@ -75,7 +82,8 @@ var _dialogs = require("../../dialog/dialogs");
75
82
  var _constant = require("../../../utilities/constant");
76
83
  var _type4 = require("../../video-window/type");
77
84
  var _env = require("agora-foundation/lib/utilities/env");
78
- var _agoraEduCore = require("agora-edu-core");
85
+ var _fcrCore = require("fcr-core");
86
+ var _participantsMore = require("agora-ui-foundation/lib/components/participants/participants-more");
79
87
  var _jsxRuntime = require("react/jsx-runtime");
80
88
  var _excluded = ["isLocal"];
81
89
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -85,7 +93,7 @@ var MaxAvatarSize = 175;
85
93
  var AvatarSizeRatio = 0.2445;
86
94
  var AvatarTextSizeRatio = 0.32;
87
95
  var HideControlsTimeout = 3000;
88
- var meetingConnectorTypes = new Set([_agoraEduCore.FcrRoomConnectorType.SIP, _agoraEduCore.FcrRoomConnectorType.H323]);
96
+ var meetingConnectorTypes = new Set([_fcrCore.FcrRoomConnectorType.SIP, _fcrCore.FcrRoomConnectorType.H323]);
89
97
  var clamp = function clamp(val, min, max) {
90
98
  return val < min ? min : val > max ? max : val;
91
99
  };
@@ -112,10 +120,11 @@ var MemberWindow = exports.MemberWindow = (0, _mobxReact.observer)(function (_re
112
120
  hasVideoStream = windowData.hasVideoStream,
113
121
  windowId = windowData.windowId,
114
122
  audioStreamConnectorType = windowData.audioStreamConnectorType,
115
- videoStreamConnectorType = windowData.videoStreamConnectorType;
123
+ videoStreamConnectorType = windowData.videoStreamConnectorType,
124
+ hasScreenSharing = windowData.hasScreenSharing;
116
125
  var t = (0, _i18n.useI18n)();
117
- var connectorType = audioStreamConnectorType !== _agoraEduCore.FcrRoomConnectorType.NONE ? audioStreamConnectorType : videoStreamConnectorType;
118
- var isPhone = audioStreamConnectorType === _agoraEduCore.FcrRoomConnectorType.PSTN;
126
+ var connectorType = audioStreamConnectorType !== _fcrCore.FcrRoomConnectorType.NONE ? audioStreamConnectorType : videoStreamConnectorType;
127
+ var isPhone = audioStreamConnectorType === _fcrCore.FcrRoomConnectorType.PSTN;
119
128
  var isPhoneOnlyAudio = isPhone && !videoStreamId;
120
129
  var isMeeting = meetingConnectorTypes.has(connectorType);
121
130
  var suffixedName = userName + (isMySelf ? t('fmt_attendies_labels_setting_mine') : '');
@@ -181,7 +190,8 @@ var MemberWindow = exports.MemberWindow = (0, _mobxReact.observer)(function (_re
181
190
  streamId: windowId,
182
191
  videoStreamType: videoStreamType,
183
192
  renderMode: videoRenderMode,
184
- hasVideoStream: hasVideoStream
193
+ hasVideoStream: hasVideoStream,
194
+ hasScreenSharing: hasScreenSharing
185
195
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
186
196
  className: (0, _classnames["default"])("fcr-member-window-excitation", {
187
197
  'fcr-member-window-excitation-show': canShowSpeakerSpotlight && isSpeakerSpotlight
@@ -210,7 +220,7 @@ var MemberWindow = exports.MemberWindow = (0, _mobxReact.observer)(function (_re
210
220
  var MicVolume = (0, _mobxReact.observer)(function (_ref2) {
211
221
  var id = _ref2.id,
212
222
  size = _ref2.size;
213
- var _useContext = (0, _react.useContext)(_context.StoreContext),
223
+ var _useContext = (0, _react.useContext)(_store.StoreContext),
214
224
  userVolumeMap = _useContext.userVolumeMap;
215
225
  var volume = userVolumeMap.get(id || '') || 0;
216
226
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
@@ -242,7 +252,11 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
242
252
  videoWindowCurrentHeight = _ref3.videoWindowCurrentHeight,
243
253
  videoWindowPreviewType = _ref3.videoWindowPreviewType,
244
254
  _ref3$showRotation = _ref3.showRotation,
245
- showRotation = _ref3$showRotation === void 0 ? true : _ref3$showRotation;
255
+ showRotation = _ref3$showRotation === void 0 ? true : _ref3$showRotation,
256
+ interpreterUsers = _ref3.interpreterUsers,
257
+ interpreterState = _ref3.interpreterState,
258
+ handleRename = _ref3.handleRename,
259
+ renderListLength = _ref3.renderListLength;
246
260
  // iconsize gallery 24 normal 16
247
261
  var _ref4 = windowData || {},
248
262
  videoStreamId = _ref4.videoStreamId,
@@ -259,6 +273,13 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
259
273
  videoStreamConnectorType = _ref4.videoStreamConnectorType,
260
274
  _ref4$phoneMicEnabled = _ref4.phoneMicEnabled,
261
275
  phoneMicEnabled = _ref4$phoneMicEnabled === void 0 ? false : _ref4$phoneMicEnabled;
276
+ var interpreter = (0, _react.useMemo)(function () {
277
+ return !!(interpreterUsers !== null && interpreterUsers !== void 0 && interpreterUsers.find(function (ele) {
278
+ return ele.userId === userId;
279
+ }));
280
+ }, [interpreterUsers, userId]);
281
+ var insideShow = ![_type2.FcrUserRole.COHOST, _type2.FcrUserRole.HOST].includes(ownerRoleType);
282
+ var timerRef = (0, _react.useRef)();
262
283
  var t = (0, _i18n.useI18n)();
263
284
  var focus = (0, _hooks.useWindowFocus)();
264
285
  var _useState = (0, _react.useState)(false),
@@ -269,11 +290,12 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
269
290
  _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
270
291
  isShowDropMenu = _useState4[0],
271
292
  setIsShowDropMenu = _useState4[1];
272
- var connectorType = audioStreamConnectorType !== _agoraEduCore.FcrRoomConnectorType.NONE ? audioStreamConnectorType : videoStreamConnectorType;
273
- var isNormal = connectorType === _agoraEduCore.FcrRoomConnectorType.NONE;
274
- var isPhone = connectorType === _agoraEduCore.FcrRoomConnectorType.PSTN;
293
+ var connectorType = audioStreamConnectorType !== _fcrCore.FcrRoomConnectorType.NONE ? audioStreamConnectorType : videoStreamConnectorType;
294
+ var isNormal = connectorType === _fcrCore.FcrRoomConnectorType.NONE;
295
+ var isPhone = connectorType === _fcrCore.FcrRoomConnectorType.PSTN;
275
296
  var isMeeting = meetingConnectorTypes.has(connectorType);
276
- var userType = audioStreamConnectorType === _agoraEduCore.FcrRoomConnectorType.PSTN && !videoStreamId ? 'phone' : isMeeting ? 'meeting-system' : 'normal';
297
+ var userType = audioStreamConnectorType === _fcrCore.FcrRoomConnectorType.PSTN && !videoStreamId ? 'phone' : isMeeting ? 'meeting-system' : 'normal';
298
+ var isShowInterpreterTag = interpreter && interpreterState;
277
299
  var isManager = ownerRoleType === _type2.FcrUserRole.HOST || ownerRoleType === _type2.FcrUserRole.COHOST;
278
300
  var handleVideoWindowVisibleChange = function handleVideoWindowVisibleChange(width, height, setResizable) {
279
301
  var videoWindowBrower = _dialogs.dialogWindows.get(_constant.DialogKey.VIDEO_WINDOW);
@@ -295,12 +317,17 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
295
317
  onVisibleChanged === null || onVisibleChanged === void 0 || onVisibleChanged(visible);
296
318
  } else {
297
319
  setIsShowDropMenu(visible);
298
- setTimeout(function () {
320
+ timerRef.current = setTimeout(function () {
299
321
  handleVideoWindowVisibleChange(videoWindowCurrentWidth, videoWindowCurrentHeight, true);
300
322
  onVisibleChanged === null || onVisibleChanged === void 0 || onVisibleChanged(visible);
301
323
  }, 100);
302
324
  }
303
325
  };
326
+ (0, _react.useEffect)(function () {
327
+ return function () {
328
+ clearTimeout(timerRef.current);
329
+ };
330
+ }, [videoWindowPreviewType]);
304
331
  (0, _react.useEffect)(function () {
305
332
  if (!isOnlyShowVideoStream && !focus) {
306
333
  var timer = setTimeout(function () {
@@ -507,6 +534,21 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
507
534
  });
508
535
  }
509
536
  }
537
+ var interpreterTagDom = /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
538
+ children: t('fmt_ai_transcriptions_setting_label_translator')
539
+ });
540
+ var InterpreterTag = function InterpreterTag(props) {
541
+ var className = props.className,
542
+ _props$isShow = props.isShow,
543
+ isShow = _props$isShow === void 0 ? true : _props$isShow;
544
+ if (!isShow) {
545
+ return null;
546
+ }
547
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
548
+ className: (0, _classnames["default"])('fcr-user-window-actions-tag', 'fcr-user-window-actions-tag-host', className),
549
+ children: interpreterTagDom
550
+ });
551
+ };
510
552
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
511
553
  className: (0, _classnames["default"])('fcr-user-window-actions', {
512
554
  'fcr-user-window-actions-hide': isOnlyShowVideoStream
@@ -515,97 +557,138 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
515
557
  e.preventDefault();
516
558
  setIsShowDropMenu(true);
517
559
  },
518
- children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
560
+ children: [isManager && /*#__PURE__*/(0, _jsxRuntime.jsx)(InterpreterTag, {
561
+ isShow: isShowInterpreterTag,
562
+ className: (0, _classnames["default"])('fcr-user-window-actions-bottom', 'fcr-user-window-actions-middle', {
563
+ 'fcr-user-window-actions-bottom-show': showActionBottomLabel,
564
+ 'fcr-user-window-actions-tag_large': windowSize === 'large'
565
+ })
566
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
519
567
  className: (0, _classnames["default"])('fcr-user-window-actions-bottom', {
520
568
  'fcr-user-window-actions-bottom-show': showActionBottomLabel
521
569
  }),
522
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
523
- className: (0, _classnames["default"])('fcr-member-window-members-sharebtn', {
524
- 'fcr-member-window-members-sharebtn-show': hasScreenSharing
525
- }),
526
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
527
- type: _type.FcrIconType.FCR_MOBILE_SHARESCREEN,
528
- size: 18
529
- })
530
- }), windowSize === 'large' ? /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
531
- className: (0, _classnames["default"])('fcr-user-window-actions-tag', {
532
- 'fcr-user-window-actions-tag-host': isManager,
533
- 'fcr-user-window-actions-tag-cohost': ownerRoleType === _type2.FcrUserRole.COHOST
534
- }),
535
- children: [icon, ownerRoleType === _type2.FcrUserRole.HOST && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
536
- children: t('fmt_role_host')
537
- }), ownerRoleType === _type2.FcrUserRole.COHOST && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
538
- children: t('fmt_role_cohost')
539
- })]
540
- }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
541
- children: [isManager && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
542
- className: (0, _classnames["default"])('fcr-user-window-actions-tag', {
543
- 'fcr-user-window-actions-tag-host': isManager,
544
- 'fcr-user-window-actions-tag-cohost': ownerRoleType === _type2.FcrUserRole.COHOST
570
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
571
+ className: (0, _classnames["default"])('fcr-user-window-actions-bottom-layout'),
572
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
573
+ className: (0, _classnames["default"])('fcr-member-window-members-sharebtn', {
574
+ 'fcr-member-window-members-sharebtn-show': hasScreenSharing,
575
+ 'fcr-member-window-members-sharebtn-large': windowSize === 'large'
545
576
  }),
546
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
547
- children: t(ownerRoleType === _type2.FcrUserRole.HOST ? 'fmt_role_host' : 'fmt_role_cohost')
548
- })
549
- }), !hasMicrophoneAudioStream ? isMeeting ? /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
550
- className: "fcr-user-window-actions-microphone",
551
577
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
552
- type: _type.FcrIconType.FCR_SIPDEVICE,
553
- size: iconSize,
578
+ type: _type.FcrIconType.FCR_MOBILE_SHARESCREEN,
554
579
  colors: {
555
- iconPrimary: 'var(--fcr_ui_scene_white10)',
556
- iconSecondary: 'var(--fcr_ui_scene_ramp_green6)'
557
- }
580
+ iconPrimary: 'var(--fcr_ui_scene_white10)'
581
+ },
582
+ size: windowSize === 'large' ? 24 : 18
558
583
  })
559
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
560
- content: t('fmt_device_label_audio_mute'),
561
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
562
- className: "fcr-user-window-actions-microphone",
584
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
585
+ className: "fcr-user-window-actions-bottom-layout-info",
586
+ children: [windowSize === 'large' ? /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
587
+ className: (0, _classnames["default"])('fcr-user-window-actions-tag', {
588
+ 'fcr-user-window-actions-tag-host': isManager || isShowInterpreterTag,
589
+ 'fcr-user-window-actions-tag-cohost': ownerRoleType === _type2.FcrUserRole.COHOST
590
+ }),
591
+ children: [icon, ownerRoleType === _type2.FcrUserRole.HOST && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
592
+ children: t('fmt_role_host')
593
+ }), ownerRoleType === _type2.FcrUserRole.COHOST && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
594
+ children: t('fmt_role_cohost')
595
+ }), insideShow && isShowInterpreterTag && interpreterTagDom]
596
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
597
+ children: [isManager ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
598
+ className: (0, _classnames["default"])('fcr-user-window-actions-tag', {
599
+ 'fcr-user-window-actions-tag-host': isManager || isShowInterpreterTag,
600
+ 'fcr-user-window-actions-tag-cohost': ownerRoleType === _type2.FcrUserRole.COHOST
601
+ }),
602
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
603
+ children: t(ownerRoleType === _type2.FcrUserRole.HOST ? 'fmt_role_host' : 'fmt_role_cohost')
604
+ })
605
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(InterpreterTag, {
606
+ isShow: isShowInterpreterTag,
607
+ className: "fcr-user-window-actions-tag"
608
+ }), !hasMicrophoneAudioStream ? isMeeting ? /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
609
+ className: "fcr-user-window-actions-microphone",
610
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
611
+ type: _type.FcrIconType.FCR_SIPDEVICE,
612
+ size: iconSize,
613
+ colors: {
614
+ iconPrimary: 'var(--fcr_ui_scene_white10)',
615
+ iconSecondary: 'var(--fcr_ui_scene_ramp_green6)'
616
+ }
617
+ })
618
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
619
+ content: t('fmt_device_label_audio_mute'),
620
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
621
+ className: "fcr-user-window-actions-microphone",
622
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
623
+ type: _type.FcrIconType.FCR_NOMUTE,
624
+ size: iconSize,
625
+ colors: {
626
+ iconPrimary: 'var(--fcr_ui_scene_ramp_red6)',
627
+ iconSecondary: 'var(--fcr_ui_scene_ramp_red6)'
628
+ }
629
+ })
630
+ })
631
+ }) : isPhone ? /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
632
+ className: "fcr-user-window-actions-microphone",
633
+ style: {
634
+ backgroundColor: 'var(--fcr_ui_scene_ramp_lightgreen6)'
635
+ },
636
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
637
+ type: _type.FcrIconType.FCR_PHONECALL3,
638
+ size: iconSize,
639
+ colors: {
640
+ iconPrimary: 'var(--fcr_ui_scene_white10)'
641
+ }
642
+ })
643
+ }) : isMeeting ? /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
644
+ className: "fcr-user-window-actions-microphone",
645
+ style: {
646
+ backgroundColor: 'var(--fcr_ui_scene_ramp_purple7)'
647
+ },
648
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
649
+ type: _type.FcrIconType.FCR_SIPDEVICE,
650
+ size: iconSize,
651
+ colors: {
652
+ iconPrimary: 'var(--fcr_ui_scene_white10)',
653
+ iconSecondary: 'var(--fcr_ui_scene_ramp_green6)'
654
+ }
655
+ })
656
+ }) : null]
657
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
658
+ className: (0, _classnames["default"])('fcr-user-window-actions-name', {
659
+ 'ml-5': isManager || isShowInterpreterTag
660
+ }),
661
+ children: suffixedName
662
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
663
+ className: "fcr-user-window-actions-name-isme",
664
+ children: isMeTag
665
+ }), isMeTag && allowedOperations.some(function (item) {
666
+ return item === 'change_name';
667
+ }) && /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
668
+ className: "fcr-user-window-actions-name-rename",
563
669
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
564
- type: _type.FcrIconType.FCR_NOMUTE,
565
- size: iconSize,
670
+ onClick: function onClick() {
671
+ return handleRename(userId);
672
+ },
673
+ type: _type.FcrIconType.FCR_RENAME,
566
674
  colors: {
567
- iconPrimary: 'var(--fcr_ui_scene_ramp_red6)',
568
- iconSecondary: 'var(--fcr_ui_scene_ramp_red6)'
675
+ iconPrimary: 'var(--fcr_ui_scene_icontext1)'
569
676
  }
570
677
  })
571
- })
572
- }) : isPhone ? /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
573
- className: "fcr-user-window-actions-microphone",
574
- style: {
575
- backgroundColor: 'var(--fcr_ui_scene_ramp_lightgreen6)'
576
- },
577
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
578
- type: _type.FcrIconType.FCR_PHONECALL3,
579
- size: iconSize,
580
- colors: {
581
- iconPrimary: 'var(--fcr_ui_scene_white10)'
582
- }
583
- })
584
- }) : isMeeting ? /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
585
- className: "fcr-user-window-actions-microphone",
586
- style: {
587
- backgroundColor: 'var(--fcr_ui_scene_ramp_purple7)'
588
- },
589
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
590
- type: _type.FcrIconType.FCR_SIPDEVICE,
591
- size: iconSize,
592
- colors: {
593
- iconPrimary: 'var(--fcr_ui_scene_white10)',
594
- iconSecondary: 'var(--fcr_ui_scene_ramp_green6)'
595
- }
596
- })
597
- }) : null]
598
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
599
- className: "fcr-user-window-actions-name",
600
- children: suffixedName
601
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
602
- className: "fcr-user-window-actions-name-isme",
603
- children: isMeTag
604
- }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
605
- className: "fcr-user-window-actions-name-doing",
606
- children: [windowData.type === _type3.FcrUIWindowType.BOARD ? t('fmt_screenshare_whiteboard_tips_someonesharing', {
607
- reason1: ''
608
- }) : '', hasScreenSharing && windowData.type === _type3.FcrUIWindowType.VIDEO ? t('fmt_screenshare_status_sharing') : '']
678
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
679
+ className: "fcr-user-window-actions-name-doing",
680
+ children: [windowData.type === _type3.FcrUIWindowType.BOARD ? t('fmt_screenshare_whiteboard_tips_someonesharing', {
681
+ reason1: ''
682
+ }) : '', hasScreenSharing && windowData.type === _type3.FcrUIWindowType.VIDEO ? t('fmt_screenshare_status_sharing') : '']
683
+ })]
684
+ })]
685
+ }), !insideShow && !isManager && /*#__PURE__*/(0, _jsxRuntime.jsx)(InterpreterTag, {
686
+ isShow: isShowInterpreterTag,
687
+ className: "fcr-user-window-actions-bottom-interpreter-tag"
688
+ }), windowSize === 'large' && windowData.isMySelf && hasVideoStream && showRotation && renderListLength === 1 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_localVideoPlayer.VideoOrientation, {
689
+ setVideoOrientation: function setVideoOrientation() {
690
+ _setVideoOrientation();
691
+ }
609
692
  })]
610
693
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
611
694
  className: (0, _classnames["default"])('fcr-user-window-actions-top', {
@@ -619,7 +702,17 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
619
702
  trigger: "click",
620
703
  visible: isShowDropMenu,
621
704
  onVisibleChange: onVisibleChange,
622
- content: /*#__PURE__*/(0, _jsxRuntime.jsx)(_participantsMoreAction.ParticipantsMoreActions, {
705
+ overlayInnerStyle: {
706
+ border: 0,
707
+ boxShadow: '0px 0px 15px var(--fcr_web_light_dropup_m)',
708
+ borderRadius: 'var(--fcr_cornerradius_l)',
709
+ minWidth: '210px',
710
+ maxWidth: '300px',
711
+ width: 'fit-content'
712
+ },
713
+ overlayClassName: "member-window-actions__more-actions",
714
+ mouseEnterDelay: 0,
715
+ content: /*#__PURE__*/(0, _jsxRuntime.jsx)(_participantsMore.FcrParticipantsMoreActions, {
623
716
  userType: userType,
624
717
  hasPinnedStream: hasPinnedStream,
625
718
  audioDeviceType: isPhone ? 'phone-mic' : 'computer-mic',
@@ -661,10 +754,6 @@ var MemberWindowActions = exports.MemberWindowActions = (0, _mobxReact.observer)
661
754
  },
662
755
  children: t(actionAudioTag)
663
756
  })]
664
- }), windowData.isMySelf && hasVideoStream && showRotation && /*#__PURE__*/(0, _jsxRuntime.jsx)(_localVideoPlayer.VideoOrientation, {
665
- setVideoOrientation: function setVideoOrientation() {
666
- _setVideoOrientation();
667
- }
668
757
  })]
669
758
  });
670
759
  });
@@ -677,14 +766,17 @@ var MemberBoard = exports.MemberBoard = (0, _mobxReact.observer)(function (_ref5
677
766
  showActionBottomLabel = _ref5.showActionBottomLabel,
678
767
  isShowActionAudio = _ref5.isShowActionAudio,
679
768
  actionAudioTag = _ref5.actionAudioTag;
680
- var _useContext2 = (0, _react.useContext)(_context.StoreContext),
769
+ var _useContext2 = (0, _react.useContext)(_store.StoreContext),
681
770
  hasPinnedStream = _useContext2.hasPinnedStream,
682
771
  localUserRole = _useContext2.localUserRole,
683
772
  sendParticipantEvent = _useContext2.sendParticipantEvent,
684
773
  muteAudio = _useContext2.muteAudio,
685
774
  hasMutePermission = _useContext2.hasMutePermission,
686
775
  openPrivateChat = _useContext2.openPrivateChat,
687
- setVideoOrientation = _useContext2.setVideoOrientation;
776
+ setVideoOrientation = _useContext2.setVideoOrientation,
777
+ interpreterUsers = _useContext2.interpreterUsers,
778
+ interpreterState = _useContext2.interpreterState,
779
+ openRenameDialog = _useContext2.openRenameDialog;
688
780
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
689
781
  className: (0, _classnames["default"])("fcr-member-board"),
690
782
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
@@ -706,7 +798,10 @@ var MemberBoard = exports.MemberBoard = (0, _mobxReact.observer)(function (_ref5
706
798
  windowSize: "large",
707
799
  windowData: windowData,
708
800
  iconSize: 24,
709
- showRotation: (0, _env.isElectron)()
801
+ showRotation: (0, _env.isElectron)(),
802
+ interpreterUsers: interpreterUsers,
803
+ interpreterState: interpreterState,
804
+ handleRename: openRenameDialog
710
805
  }), slot]
711
806
  });
712
807
  });
@@ -740,31 +835,48 @@ var FcrUILocalVideoPlayer = exports.FcrUILocalVideoPlayer = (0, _mobxReact.obser
740
835
  });
741
836
  });
742
837
  var FcrUIRemoteVideoPlayer = exports.FcrUIRemoteVideoPlayer = (0, _mobxReact.observer)(function (_ref7) {
838
+ var _context$remoteVideoR;
743
839
  var streamId = _ref7.streamId,
744
840
  hasVideoStream = _ref7.hasVideoStream,
745
841
  videoStreamType = _ref7.videoStreamType,
746
- renderMode = _ref7.renderMode;
842
+ renderMode = _ref7.renderMode,
843
+ hasScreenSharing = _ref7.hasScreenSharing;
747
844
  var divRef = (0, _react.useRef)(null);
748
845
  var context = (0, _react.useContext)(_videoTrackRenderContext.FcrVideoTrackRenderContext);
749
- var _ref8 = context.streamControl || {},
750
- startRenderRemoteVideoStream = _ref8.startRenderRemoteVideoStream,
751
- stopRenderRemoteVideoStream = _ref8.stopRenderRemoteVideoStream;
846
+ var t = (0, _i18n.useI18n)();
847
+ var _ref8 = context.remoteVideoRenderManager || {},
848
+ startRenderRemoteVideo = _ref8.startRenderRemoteVideo,
849
+ stopRenderRemoteVideo = _ref8.stopRenderRemoteVideo;
850
+ var isFirstRemoteVideoFrameRendered = (_context$remoteVideoR = context.remoteVideoRenderManager) === null || _context$remoteVideoR === void 0 ? void 0 : _context$remoteVideoR.isStreamFirstFrameRendered(streamId);
752
851
  (0, _react.useEffect)(function () {
753
852
  var dom = divRef.current;
754
853
  if (dom) {
755
854
  if (hasVideoStream) {
756
- startRenderRemoteVideoStream === null || startRenderRemoteVideoStream === void 0 || startRenderRemoteVideoStream(streamId, videoStreamType, {
855
+ startRenderRemoteVideo === null || startRenderRemoteVideo === void 0 || startRenderRemoteVideo(streamId, videoStreamType, {
757
856
  renderMode: renderMode,
758
857
  isMirror: false
759
858
  }, dom);
760
859
  }
761
860
  }
762
861
  return function () {
763
- dom && (stopRenderRemoteVideoStream === null || stopRenderRemoteVideoStream === void 0 ? void 0 : stopRenderRemoteVideoStream(streamId, dom));
862
+ dom && (stopRenderRemoteVideo === null || stopRenderRemoteVideo === void 0 ? void 0 : stopRenderRemoteVideo(streamId, dom));
764
863
  };
765
- }, [hasVideoStream, streamId, videoStreamType, renderMode, startRenderRemoteVideoStream, stopRenderRemoteVideoStream]);
766
- return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
767
- className: "fcr-member-window-body",
768
- ref: divRef
864
+ }, [hasVideoStream, streamId, videoStreamType, renderMode]);
865
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
866
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
867
+ className: (0, _classnames["default"])('fcr-member-window-body fcr-member-window-body-video-remote', {
868
+ 'fcr-member-window-body-video-remote-render': isFirstRemoteVideoFrameRendered && hasVideoStream
869
+ }),
870
+ ref: divRef
871
+ }), !isFirstRemoteVideoFrameRendered && hasVideoStream && hasScreenSharing && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
872
+ className: "fcr-member-window-body-render-video-loading",
873
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
874
+ className: "render-video-loading-icon",
875
+ size: 24,
876
+ type: _type.FcrIconType.FCR_LOADING
877
+ }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("span", {
878
+ children: [" ", t('fmt_screenshare_status_sharing'), " "]
879
+ })]
880
+ })]
769
881
  });
770
882
  });
@@ -16,54 +16,3 @@
16
16
  max-width: 300px;
17
17
  padding: 0;
18
18
  }
19
-
20
- .operate-waiting-room-dialog-content {
21
- display: flex;
22
- flex-direction: column;
23
- align-items: center;
24
- justify-content: center;
25
- background: white;
26
- padding: 20px;
27
- border-radius: 20px;
28
- }
29
-
30
- .operate-waiting-room-dialog-title {
31
- font-weight: 600;
32
- font-size: 16px;
33
- margin-bottom: 10px;
34
- }
35
-
36
- .operate-waiting-room-dialog-tooltip {
37
- margin-bottom: 10px;
38
- }
39
-
40
- .operate-waiting-room-dialog-confirm {
41
- display: flex;
42
- }
43
-
44
- .operate-waiting-room-dialog-btns {
45
- display: flex;
46
- justify-content: space-between;
47
- width: 100%;
48
- margin-top: 10px;
49
- }
50
-
51
- .operate-waiting-room-dialog-btns .fcr-button-normal {
52
- width: 48%;
53
- }
54
-
55
- .operate-waiting-room-dialog-btns .fcr-button-white {
56
- background-color: var(--fcr_ui_scene_btn2);
57
- color: var(--fcr_ui_scene_icontext2);
58
- width: 48%;
59
- }
60
-
61
- .operate-waiting-room-dialog-btns .fcr-button-white:hover {
62
- background-color: var(--fcr_ui_scene_btn2) !important;
63
- color: var(--fcr_ui_scene_icontext2) !important;
64
- width: 48%;
65
- }
66
-
67
- .operate-waiting-room-dialog-btns .fcr-button-danger {
68
- width: 48%;
69
- }
@@ -2,18 +2,21 @@ import { ParticipantActionType, User } from 'agora-ui-foundation/lib/components/
2
2
  import { FcrUserRole } from '../../../type';
3
3
  import './index.css';
4
4
  import { FcrPrivilegeUserRole } from 'fcr-core';
5
+ import { DialogKey } from '../../../utilities/constant';
5
6
  import { FcrInterpreterUserInfo, FcrLanguage } from 'fcr-core/lib/room-control/interpreter-control/types';
6
7
  import { FcrUserKickedOutType } from 'fcr-core/lib/room-control/user-control/type';
7
- import { FcrRoomType } from 'fcr-core/lib/room-control/type';
8
- import './index.css';
9
8
  export type OperateWaitingRoomMemberDialogProps = {
10
9
  type: 'remove' | 'removeAll' | 'admitAll';
11
10
  tooltip: string;
12
11
  title: string;
13
12
  userId?: string;
14
- onChecked?: (value: boolean) => void;
15
13
  };
16
- export declare const OperateWaitingRoomMemberDialog: ({ type, tooltip, onChecked, }: OperateWaitingRoomMemberDialogProps) => import("react/jsx-runtime").JSX.Element;
14
+ export declare const WaitingRoomDialogKeyMap: {
15
+ remove: DialogKey;
16
+ removeAll: DialogKey;
17
+ admitAll: DialogKey;
18
+ };
19
+ export declare const OperateWaitingRoomMemberDialog: ({ type, tooltip, title, userId, }: OperateWaitingRoomMemberDialogProps) => import("react/jsx-runtime").JSX.Element;
17
20
  interface ParticipantAttendeeProps extends User {
18
21
  onParticipantsButtonClick: (action: ParticipantActionType, userId: string, type?: FcrUserKickedOutType | undefined) => void;
19
22
  currentPerspectiveType?: 'host' | 'attendee' | 'cohost';
@@ -25,7 +28,7 @@ interface ParticipantAttendeeProps extends User {
25
28
  hasMutePermission: (role: FcrPrivilegeUserRole | FcrUserRole) => boolean;
26
29
  hasUnmutePermission: (role: FcrPrivilegeUserRole | FcrUserRole) => boolean;
27
30
  hasRequestStartAudioPermission: (role: FcrPrivilegeUserRole | FcrUserRole) => boolean;
28
- activeTab: FcrRoomType;
31
+ activeTab: string;
29
32
  moveToMainRoomByUserIds: (userId: string[]) => void;
30
33
  interpreterUsers?: FcrInterpreterUserInfo[] | null;
31
34
  interpreterState: boolean;