fcr-ui-scene 3.6.1 → 3.6.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 (257) hide show
  1. package/lib/creator.d.ts +6 -0
  2. package/lib/creator.js +125 -24
  3. package/lib/electron/app.js +5 -4
  4. package/lib/electron/bootstrap-dev.js +3 -0
  5. package/lib/electron/bootstrap-sdk.js +4 -0
  6. package/lib/electron/injections.d.ts +5 -0
  7. package/lib/electron/injections.js +36 -8
  8. package/lib/electron/ipc/ipc.d.ts +1 -0
  9. package/lib/electron/ipc/ipc.js +4 -0
  10. package/lib/electron/main.js +16 -8
  11. package/lib/electron/plugins/screenshot.js +4 -2
  12. package/lib/electron/preload.js +7 -2
  13. package/lib/electron/window.js +4 -6
  14. package/lib/fragments/annotation/index.d.ts +11 -0
  15. package/lib/fragments/annotation/index.js +121 -0
  16. package/lib/fragments/annotation/libs.d.ts +55 -0
  17. package/lib/fragments/annotation/libs.js +93 -0
  18. package/lib/fragments/annotation/store.d.ts +30 -0
  19. package/lib/fragments/annotation/store.js +565 -0
  20. package/lib/fragments/annotation/view.d.ts +3 -0
  21. package/lib/fragments/annotation/view.js +31 -0
  22. package/lib/fragments/base.d.ts +10 -0
  23. package/lib/fragments/base.js +44 -0
  24. package/lib/modules/action-bar/components/screen-share/submenu.js +7 -6
  25. package/lib/modules/action-bar/index.css +11 -0
  26. package/lib/modules/action-bar/index.d.ts +2 -0
  27. package/lib/modules/action-bar/index.js +1 -0
  28. package/lib/modules/action-bar/store.d.ts +7 -9
  29. package/lib/modules/action-bar/store.js +49 -90
  30. package/lib/modules/annotation/board-cursor.css +76 -0
  31. package/lib/modules/annotation/components/control-bar/index.css +48 -0
  32. package/lib/modules/annotation/components/control-bar/index.d.ts +3 -0
  33. package/lib/modules/annotation/components/control-bar/index.js +141 -0
  34. package/lib/modules/annotation/components/toolbar/components/color-tool/color-panel/index.d.ts +3 -0
  35. package/lib/modules/annotation/components/toolbar/components/color-tool/color-panel/index.js +46 -0
  36. package/lib/modules/annotation/components/toolbar/components/color-tool/index.d.ts +1 -0
  37. package/lib/modules/annotation/components/toolbar/components/color-tool/index.js +52 -0
  38. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/index.d.ts +3 -0
  39. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/index.js +61 -0
  40. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +12 -0
  41. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.js +65 -0
  42. package/lib/modules/annotation/components/toolbar/components/graphic-tool/index.d.ts +1 -0
  43. package/lib/modules/annotation/components/toolbar/components/graphic-tool/index.js +68 -0
  44. package/lib/modules/annotation/components/toolbar/components/item/item.d.ts +18 -0
  45. package/lib/modules/annotation/components/toolbar/components/item/item.js +116 -0
  46. package/lib/modules/annotation/components/toolbar/components/item/style.css +43 -0
  47. package/lib/modules/annotation/components/toolbar/components/panel/index.d.ts +5 -0
  48. package/lib/modules/annotation/components/toolbar/components/panel/index.js +22 -0
  49. package/lib/modules/annotation/components/toolbar/components/panel/style.css +24 -0
  50. package/lib/modules/annotation/components/toolbar/components/pen-tool/index.d.ts +1 -0
  51. package/lib/modules/annotation/components/toolbar/components/pen-tool/index.js +58 -0
  52. package/lib/modules/annotation/components/toolbar/components/pen-tool/pen-panel/index.d.ts +3 -0
  53. package/lib/modules/annotation/components/toolbar/components/pen-tool/pen-panel/index.js +34 -0
  54. package/lib/modules/annotation/components/toolbar/components/tips/index.d.ts +2 -0
  55. package/lib/modules/annotation/components/toolbar/components/tips/index.js +25 -0
  56. package/lib/modules/annotation/components/toolbar/components/tips/style.css +19 -0
  57. package/lib/modules/annotation/components/toolbar/index.d.ts +0 -0
  58. package/lib/modules/annotation/components/toolbar/index.js +1 -0
  59. package/lib/modules/annotation/components/toolbar/store.d.ts +40 -0
  60. package/lib/modules/annotation/components/toolbar/store.js +279 -0
  61. package/lib/modules/annotation/components/toolbar/style.css +55 -0
  62. package/lib/modules/annotation/components/toolbar/view.d.ts +2 -0
  63. package/lib/modules/annotation/components/toolbar/view.js +120 -0
  64. package/lib/modules/annotation/index.d.ts +38 -0
  65. package/lib/modules/annotation/index.js +169 -0
  66. package/lib/modules/annotation/store.d.ts +93 -0
  67. package/lib/modules/annotation/store.js +673 -0
  68. package/lib/modules/annotation/style.css +26 -0
  69. package/lib/modules/annotation/view.d.ts +3 -0
  70. package/lib/modules/annotation/view.js +49 -0
  71. package/lib/modules/chat/view.js +112 -100
  72. package/lib/modules/components/annotation-menu/index.d.ts +7 -0
  73. package/lib/modules/components/annotation-menu/index.js +119 -0
  74. package/lib/modules/components/leave-meeting/components/assign-host.js +26 -23
  75. package/lib/modules/components/member-window/components/member-actions/components/audio-control.d.ts +0 -1
  76. package/lib/modules/components/member-window/components/member-actions/components/audio-control.js +10 -4
  77. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.d.ts +4 -2
  78. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +10 -6
  79. package/lib/modules/components/member-window/components/member-actions/components/icon-status.d.ts +0 -2
  80. package/lib/modules/components/member-window/components/member-actions/components/icon-status.js +3 -4
  81. package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +0 -3
  82. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +6 -32
  83. package/lib/modules/components/member-window/components/member-actions/components/share-status.js +11 -3
  84. package/lib/modules/components/member-window/components/member-actions/components/user-info.d.ts +0 -1
  85. package/lib/modules/components/member-window/components/member-actions/components/user-info.js +7 -10
  86. package/lib/modules/components/member-window/components/member-actions/components/user-tag.d.ts +0 -1
  87. package/lib/modules/components/member-window/components/member-actions/components/user-tag.js +0 -2
  88. package/lib/modules/components/member-window/components/member-actions/index.js +1 -32
  89. package/lib/modules/components/member-window/components/member-actions/store.d.ts +38 -1
  90. package/lib/modules/components/member-window/components/member-actions/store.js +130 -23
  91. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.d.ts +2 -1
  92. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.js +6 -1
  93. package/lib/modules/components/member-window/components/video-player/index.d.ts +1 -0
  94. package/lib/modules/components/member-window/index.css +37 -0
  95. package/lib/modules/components/member-window/index.d.ts +1 -1
  96. package/lib/modules/components/member-window/index.js +8 -5
  97. package/lib/modules/components/member-window/types.d.ts +2 -0
  98. package/lib/modules/components/security-menu/index.js +7 -6
  99. package/lib/modules/control-bar/components/annotation-button/index.d.ts +1 -0
  100. package/lib/modules/control-bar/components/annotation-button/index.js +59 -0
  101. package/lib/modules/control-bar/index.d.ts +6 -6
  102. package/lib/modules/control-bar/index.js +5 -34
  103. package/lib/modules/control-bar/store.d.ts +27 -13
  104. package/lib/modules/control-bar/store.js +121 -126
  105. package/lib/modules/control-bar/view.js +50 -4
  106. package/lib/modules/dialog/components/annotation-tool/index.d.ts +4 -0
  107. package/lib/modules/dialog/components/annotation-tool/index.js +53 -0
  108. package/lib/modules/dialog/components/chat/index.js +1 -1
  109. package/lib/modules/dialog/components/control-bar/index.d.ts +0 -2
  110. package/lib/modules/dialog/components/control-bar/index.js +1 -3
  111. package/lib/modules/dialog/components/host-area-container/index.d.ts +12 -0
  112. package/lib/modules/dialog/components/host-area-container/index.js +214 -0
  113. package/lib/modules/dialog/components/participant/index.js +1 -1
  114. package/lib/modules/dialog/components/system-preference/index.js +1 -1
  115. package/lib/modules/dialog/components/video-window/index.js +1 -0
  116. package/lib/modules/dialog/hooks/use-popover-watcher.d.ts +14 -0
  117. package/lib/modules/dialog/hooks/use-popover-watcher.js +112 -0
  118. package/lib/modules/dialog/hooks/useElectron.d.ts +1 -0
  119. package/lib/modules/dialog/hooks/useElectron.js +13 -3
  120. package/lib/modules/dialog/index.d.ts +2 -3
  121. package/lib/modules/dialog/index.js +3 -26
  122. package/lib/modules/dialog/store.d.ts +14 -9
  123. package/lib/modules/dialog/store.js +56 -50
  124. package/lib/modules/event-confirm/components/window/index.d.ts +7 -0
  125. package/lib/modules/event-confirm/components/window/index.js +188 -0
  126. package/lib/modules/event-confirm/index.d.ts +4 -4
  127. package/lib/modules/event-confirm/index.js +6 -4
  128. package/lib/modules/event-confirm/store.d.ts +4 -5
  129. package/lib/modules/event-confirm/store.js +35 -26
  130. package/lib/modules/event-confirm/view.js +23 -171
  131. package/lib/modules/event-sound/index.js +1 -1
  132. package/lib/modules/layout/components/CommonVideoRenderer.js +33 -16
  133. package/lib/modules/layout/index.d.ts +4 -0
  134. package/lib/modules/layout/index.js +2 -0
  135. package/lib/modules/layout/store.d.ts +14 -2
  136. package/lib/modules/layout/store.js +77 -45
  137. package/lib/modules/layout/type.d.ts +7 -0
  138. package/lib/modules/participant/index.d.ts +2 -0
  139. package/lib/modules/participant/index.js +2 -1
  140. package/lib/modules/participant/store.d.ts +5 -2
  141. package/lib/modules/participant/store.js +73 -25
  142. package/lib/modules/setting/audio-settings/audio-settings.js +3 -14
  143. package/lib/modules/setting/index.d.ts +2 -0
  144. package/lib/modules/setting/index.js +3 -3
  145. package/lib/modules/setting/store.d.ts +8 -10
  146. package/lib/modules/setting/store.js +22 -20
  147. package/lib/modules/share-screen/components/selection/index.js +18 -42
  148. package/lib/modules/share-screen/index.d.ts +6 -2
  149. package/lib/modules/share-screen/index.js +4 -2
  150. package/lib/modules/share-screen/store.d.ts +41 -46
  151. package/lib/modules/share-screen/store.js +297 -718
  152. package/lib/modules/share-screen/view.js +2 -2
  153. package/lib/modules/state-bar/assets/fcr_grid_big.svg +1 -1
  154. package/lib/modules/state-bar/assets/fcr_listontop_big.svg +1 -1
  155. package/lib/modules/state-bar/index.css +8 -6
  156. package/lib/modules/state-bar/index.d.ts +4 -0
  157. package/lib/modules/state-bar/index.js +3 -1
  158. package/lib/modules/state-bar/layout-config.d.ts +1 -0
  159. package/lib/modules/state-bar/layout-config.js +15 -5
  160. package/lib/modules/state-bar/store.d.ts +9 -1
  161. package/lib/modules/state-bar/store.js +17 -2
  162. package/lib/modules/state-bar/view.js +9 -4
  163. package/lib/modules/video-window/components/members/index.js +2 -1
  164. package/lib/modules/waiting-room-layout/store.js +1 -1
  165. package/lib/modules/whiteboard/components/control-bar/store.d.ts +5 -1
  166. package/lib/modules/whiteboard/components/control-bar/store.js +10 -1
  167. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/picker.js +16 -5
  168. package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +67 -12
  169. package/lib/modules/whiteboard/components/toolbar/components/expansion/index.js +22 -2
  170. package/lib/modules/whiteboard/components/toolbar/components/history.js +46 -14
  171. package/lib/modules/whiteboard/components/toolbar/components/item/index.js +3 -2
  172. package/lib/modules/whiteboard/components/toolbar/components/move-handle.js +1 -1
  173. package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +58 -16
  174. package/lib/modules/whiteboard/components/toolbar/components/screen-capture-picker.js +15 -4
  175. package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +45 -2
  176. package/lib/modules/whiteboard/components/toolbar/hooks/index.d.ts +14 -0
  177. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +235 -7
  178. package/lib/modules/whiteboard/components/toolbar/index.d.ts +1 -1
  179. package/lib/modules/whiteboard/components/toolbar/index.js +1 -1
  180. package/lib/modules/whiteboard/components/toolbar/store.d.ts +13 -2
  181. package/lib/modules/whiteboard/components/toolbar/store.js +74 -24
  182. package/lib/modules/whiteboard/components/toolbar/{ style.css → style.css} +1 -0
  183. package/lib/modules/whiteboard/index.d.ts +2 -0
  184. package/lib/modules/whiteboard/index.js +22 -21
  185. package/lib/modules/whiteboard/style.css +0 -4
  186. package/lib/modules/whiteboard/view.js +8 -2
  187. package/lib/plugins/browser-runtime-plugin.js +10 -1
  188. package/lib/providers/annotation-provider.d.ts +128 -0
  189. package/lib/providers/annotation-provider.js +421 -0
  190. package/lib/providers/device-provider.d.ts +3 -3
  191. package/lib/providers/device-provider.js +8 -6
  192. package/lib/providers/event-provider.d.ts +3 -3
  193. package/lib/providers/interpreter-provider.d.ts +1 -0
  194. package/lib/providers/interpreter-provider.js +182 -154
  195. package/lib/providers/privilege-provider.d.ts +35 -6
  196. package/lib/providers/privilege-provider.js +105 -49
  197. package/lib/providers/renderer-provider.js +3 -7
  198. package/lib/providers/room-provider.d.ts +13 -1
  199. package/lib/providers/room-provider.js +21 -7
  200. package/lib/providers/screen-share-provider.d.ts +131 -34
  201. package/lib/providers/screen-share-provider.js +554 -173
  202. package/lib/providers/sharing-provider.d.ts +37 -0
  203. package/lib/{shared-data-source/screen-share-data-source.js → providers/sharing-provider.js} +102 -39
  204. package/lib/providers/user-setting-storage-provider.d.ts +20 -0
  205. package/lib/providers/user-setting-storage-provider.js +74 -0
  206. package/lib/runtime.d.ts +6 -1
  207. package/lib/scenes/main-scene.d.ts +7 -2
  208. package/lib/scenes/main-scene.js +55 -27
  209. package/lib/scenes/waiting-scene.d.ts +6 -0
  210. package/lib/scenes/waiting-scene.js +15 -5
  211. package/lib/shared-data-source/config.d.ts +1 -5
  212. package/lib/shared-data-source/config.js +11 -81
  213. package/lib/shared-data-source/member-data.d.ts +21 -5
  214. package/lib/shared-data-source/member-data.js +69 -17
  215. package/lib/shared-data-source/screen-share-data.d.ts +274 -0
  216. package/lib/shared-data-source/screen-share-data.js +390 -0
  217. package/lib/shared-data-source/security-data.d.ts +4 -1
  218. package/lib/shared-data-source/security-data.js +5 -2
  219. package/lib/shared-data-source/setting.d.ts +13 -13
  220. package/lib/shared-data-source/setting.js +16 -10
  221. package/lib/shared-data-source/video-window.d.ts +2 -1
  222. package/lib/shared-data-source/video-window.js +56 -36
  223. package/lib/translations/enUS.d.ts +8 -0
  224. package/lib/translations/enUS.js +9 -1
  225. package/lib/translations/zhCN.d.ts +8 -0
  226. package/lib/translations/zhCN.js +11 -3
  227. package/lib/type.d.ts +55 -1
  228. package/lib/ui-manager.d.ts +3 -2
  229. package/lib/ui-manager.js +6 -4
  230. package/lib/ui-scene.js +70 -50
  231. package/lib/utilities/constant.d.ts +10 -2
  232. package/lib/utilities/constant.js +8 -0
  233. package/lib/utilities/logger.d.ts +4 -0
  234. package/lib/utilities/logger.js +8 -1
  235. package/lib/utilities/renderer-event.d.ts +3 -0
  236. package/lib/utilities/renderer-event.js +14 -1
  237. package/lib/utilities/screen.js +2 -1
  238. package/lib/utilities/setting-config-storage.d.ts +5 -6
  239. package/lib/utilities/setting-config-storage.js +33 -39
  240. package/lib/utilities/tools.d.ts +19 -1
  241. package/lib/utilities/tools.js +51 -4
  242. package/package.json +9 -7
  243. package/public/assets/cursors/fcr_whiteboard_input.ico +0 -0
  244. package/public/assets/cursors/fcr_whiteboard_pen.ico +0 -0
  245. package/public/assets/cursors/fcr_whiteboard_shape_-straightline.ico +0 -0
  246. package/public/assets/cursors/fcr_whiteboard_shape_arrow.ico +0 -0
  247. package/public/assets/cursors/fcr_whiteboard_shape_circle.ico +0 -0
  248. package/public/assets/cursors/fcr_whiteboard_shape_rectangle.ico +0 -0
  249. package/public/assets/cursors/fcr_whiteboard_shape_triangle.ico +0 -0
  250. package/public/assets/fcr_chat_reddot.svg +3 -3
  251. package/public/assets/fcr_grid_big.svg +1 -1
  252. package/public/assets/fcr_leave2.svg +14 -14
  253. package/public/assets/fcr_listontop_big.svg +1 -1
  254. package/public/assets/step-gradient.svg +1 -1
  255. package/public/fragment.html +10 -0
  256. package/public/index.html +3 -1
  257. package/lib/shared-data-source/screen-share-data-source.d.ts +0 -37
@@ -17,13 +17,13 @@ var View = exports.View = (0, _mobxReact.observer)(function () {
17
17
  var _useContext = (0, _react.useContext)(_store.StoreContext),
18
18
  screenSharingState = _useContext.screenSharingState,
19
19
  handleStopShare = _useContext.handleStopShare,
20
- startPreview = _useContext.startPreview;
20
+ startRenderSharePreview = _useContext.startRenderSharePreview;
21
21
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
22
22
  className: "share-screen",
23
23
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
24
24
  children: screenSharingState === _fcrCore.FcrMediaSourceState.OPEN && !(0, _env.isElectron)() && /*#__PURE__*/(0, _jsxRuntime.jsx)(_shareStateBar.ShareStateBar, {
25
25
  ref: function ref(dom) {
26
- return startPreview(dom);
26
+ return startRenderSharePreview(dom);
27
27
  },
28
28
  onStopShare: handleStopShare
29
29
  })
@@ -1,3 +1,3 @@
1
1
  <svg width="68" height="38" viewBox="0 0 68 38" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path id="fcr_grid_big" fill-rule="evenodd" clipRule="evenodd" d="M2.72 0C1.21779 0 0 1.21523 0 2.71429V9.21213C0 9.84809 0.516635 10.3636 1.15394 10.3636H14.2797C14.917 10.3636 15.4336 9.84809 15.4336 9.21213V1.15152C15.4336 0.515551 14.917 0 14.2797 0H2.72ZM18.7373 0C18.1 0 17.5833 0.51555 17.5833 1.15152V9.21213C17.5833 9.84809 18.1 10.3636 18.7373 10.3636H31.863C32.5003 10.3636 33.0169 9.84809 33.0169 9.21213V1.15152C33.0169 0.515551 32.5003 0 31.863 0H18.7373ZM52.5664 1.15152C52.5664 0.51555 53.083 0 53.7203 0H65.28C66.7822 0 68 1.21523 68 2.71429V9.21213C68 9.84809 67.4834 10.3636 66.8461 10.3636H53.7203C53.083 10.3636 52.5664 9.84809 52.5664 9.21213V1.15152ZM36.2291 0C35.5918 0 35.0752 0.51555 35.0752 1.15152V9.21213C35.0752 9.84809 35.5918 10.3636 36.2291 10.3636H49.3549C49.9922 10.3636 50.5088 9.84809 50.5088 9.21213V1.15152C50.5088 0.515551 49.9922 0 49.3549 0H36.2291ZM17.5833 27.6364C17.5833 27.0004 18.1 26.4848 18.7373 26.4848H31.863C32.5003 26.4848 33.0169 27.0004 33.0169 27.6364V36.8485C33.0169 37.4845 32.5003 38 31.863 38H18.7373C18.1 38 17.5833 37.4845 17.5833 36.8485V27.6364ZM1.15394 26.4848C0.516636 26.4848 0 27.0004 0 27.6364V35.2857C0 36.7848 1.21778 38 2.72 38H14.2797C14.917 38 15.4336 37.4845 15.4336 36.8485V27.6364C15.4336 27.0004 14.917 26.4848 14.2797 26.4848H1.15394ZM52.5664 27.6364C52.5664 27.0004 53.083 26.4848 53.7203 26.4848H66.8461C67.4834 26.4848 68 27.0004 68 27.6364V35.2857C68 36.7848 66.7822 38 65.28 38H53.7203C53.083 38 52.5664 37.4845 52.5664 36.8485V27.6364ZM36.2291 26.4848C35.5918 26.4848 35.0752 27.0004 35.0752 27.6364V36.8485C35.0752 37.4845 35.5918 38 36.2291 38H49.3549C49.9922 38 50.5088 37.4845 50.5088 36.8485V27.6364C50.5088 27.0004 49.9922 26.4848 49.3549 26.4848H36.2291ZM17.5833 13.8184C17.5833 13.1824 18.1 12.6669 18.7373 12.6669H31.863C32.5003 12.6669 33.0169 13.1824 33.0169 13.8184V23.0305C33.0169 23.6665 32.5003 24.1821 31.863 24.1821H18.7373C18.1 24.1821 17.5833 23.6665 17.5833 23.0305V13.8184ZM1.15394 12.6669C0.516636 12.6669 0 13.1824 0 13.8184V23.0305C0 23.6665 0.516635 24.1821 1.15394 24.1821H14.2797C14.917 24.1821 15.4336 23.6665 15.4336 23.0305V13.8184C15.4336 13.1824 14.917 12.6669 14.2797 12.6669H1.15394ZM52.5664 13.8184C52.5664 13.1824 53.083 12.6669 53.7203 12.6669H66.8461C67.4834 12.6669 68 13.1824 68 13.8184V23.0305C68 23.6665 67.4834 24.1821 66.8461 24.1821H53.7203C53.083 24.1821 52.5664 23.6665 52.5664 23.0305V13.8184ZM36.2291 12.6669C35.5918 12.6669 35.0752 13.1824 35.0752 13.8184V23.0305C35.0752 23.6665 35.5918 24.1821 36.2291 24.1821H49.3549C49.9922 24.1821 50.5088 23.6665 50.5088 23.0305V13.8184C50.5088 13.1824 49.9922 12.6669 49.3549 12.6669H36.2291Z" fill="#E5EAF3" fillOpacity="0.9"/>
2
+ <path id="fcr_grid_big" fillRule="evenodd" clipRule="evenodd" d="M2.72 0C1.21779 0 0 1.21523 0 2.71429V9.21213C0 9.84809 0.516635 10.3636 1.15394 10.3636H14.2797C14.917 10.3636 15.4336 9.84809 15.4336 9.21213V1.15152C15.4336 0.515551 14.917 0 14.2797 0H2.72ZM18.7373 0C18.1 0 17.5833 0.51555 17.5833 1.15152V9.21213C17.5833 9.84809 18.1 10.3636 18.7373 10.3636H31.863C32.5003 10.3636 33.0169 9.84809 33.0169 9.21213V1.15152C33.0169 0.515551 32.5003 0 31.863 0H18.7373ZM52.5664 1.15152C52.5664 0.51555 53.083 0 53.7203 0H65.28C66.7822 0 68 1.21523 68 2.71429V9.21213C68 9.84809 67.4834 10.3636 66.8461 10.3636H53.7203C53.083 10.3636 52.5664 9.84809 52.5664 9.21213V1.15152ZM36.2291 0C35.5918 0 35.0752 0.51555 35.0752 1.15152V9.21213C35.0752 9.84809 35.5918 10.3636 36.2291 10.3636H49.3549C49.9922 10.3636 50.5088 9.84809 50.5088 9.21213V1.15152C50.5088 0.515551 49.9922 0 49.3549 0H36.2291ZM17.5833 27.6364C17.5833 27.0004 18.1 26.4848 18.7373 26.4848H31.863C32.5003 26.4848 33.0169 27.0004 33.0169 27.6364V36.8485C33.0169 37.4845 32.5003 38 31.863 38H18.7373C18.1 38 17.5833 37.4845 17.5833 36.8485V27.6364ZM1.15394 26.4848C0.516636 26.4848 0 27.0004 0 27.6364V35.2857C0 36.7848 1.21778 38 2.72 38H14.2797C14.917 38 15.4336 37.4845 15.4336 36.8485V27.6364C15.4336 27.0004 14.917 26.4848 14.2797 26.4848H1.15394ZM52.5664 27.6364C52.5664 27.0004 53.083 26.4848 53.7203 26.4848H66.8461C67.4834 26.4848 68 27.0004 68 27.6364V35.2857C68 36.7848 66.7822 38 65.28 38H53.7203C53.083 38 52.5664 37.4845 52.5664 36.8485V27.6364ZM36.2291 26.4848C35.5918 26.4848 35.0752 27.0004 35.0752 27.6364V36.8485C35.0752 37.4845 35.5918 38 36.2291 38H49.3549C49.9922 38 50.5088 37.4845 50.5088 36.8485V27.6364C50.5088 27.0004 49.9922 26.4848 49.3549 26.4848H36.2291ZM17.5833 13.8184C17.5833 13.1824 18.1 12.6669 18.7373 12.6669H31.863C32.5003 12.6669 33.0169 13.1824 33.0169 13.8184V23.0305C33.0169 23.6665 32.5003 24.1821 31.863 24.1821H18.7373C18.1 24.1821 17.5833 23.6665 17.5833 23.0305V13.8184ZM1.15394 12.6669C0.516636 12.6669 0 13.1824 0 13.8184V23.0305C0 23.6665 0.516635 24.1821 1.15394 24.1821H14.2797C14.917 24.1821 15.4336 23.6665 15.4336 23.0305V13.8184C15.4336 13.1824 14.917 12.6669 14.2797 12.6669H1.15394ZM52.5664 13.8184C52.5664 13.1824 53.083 12.6669 53.7203 12.6669H66.8461C67.4834 12.6669 68 13.1824 68 13.8184V23.0305C68 23.6665 67.4834 24.1821 66.8461 24.1821H53.7203C53.083 24.1821 52.5664 23.6665 52.5664 23.0305V13.8184ZM36.2291 12.6669C35.5918 12.6669 35.0752 13.1824 35.0752 13.8184V23.0305C35.0752 23.6665 35.5918 24.1821 36.2291 24.1821H49.3549C49.9922 24.1821 50.5088 23.6665 50.5088 23.0305V13.8184C50.5088 13.1824 49.9922 12.6669 49.3549 12.6669H36.2291Z" fill="#E5EAF3" fillOpacity="0.9"/>
3
3
  </svg>
@@ -1,3 +1,3 @@
1
1
  <svg width="68" height="38" viewBox="0 0 68 38" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path id="fcr_listontop_big" fill-rule="evenodd" clipRule="evenodd" d="M4.08 0C1.82668 0 0 1.82284 0 4.07143V6.84848C0 7.48445 0.516634 8 1.15394 8H11.3724C12.0097 8 12.5263 7.48445 12.5263 6.84848V1.15152C12.5263 0.515551 12.0097 0 11.3724 0H4.08ZM2.72 10C1.21779 10 0 11.2152 0 12.7143V33.9286C0 36.1772 1.82668 38 4.08 38H63.92C66.1733 38 68 36.1772 68 33.9286V12.7143C68 11.2152 66.7822 10 65.28 10H2.72ZM28.0352 1.15152C28.0352 0.515553 28.5518 0 29.1891 0H39.4076C40.0449 0 40.5615 0.515551 40.5615 1.15152V6.84848C40.5615 7.48445 40.0449 8 39.4076 8H29.1891C28.5518 8 28.0352 7.48445 28.0352 6.84848V1.15152ZM57.224 0C56.5867 0 56.07 0.515553 56.07 1.15152V6.84848C56.07 7.48445 56.5867 8 57.224 8H66.8459C67.4832 8 67.9998 7.48445 67.9998 6.84848V4.07143C67.9998 1.82284 66.1732 0 63.9198 0H57.224ZM14.3159 1.15152C14.3159 0.515553 14.8325 0 15.4699 0H25.0918C25.7291 0 26.2457 0.515551 26.2457 1.15152V6.84848C26.2457 7.48445 25.7291 8 25.0918 8H15.4699C14.8325 8 14.3159 7.48445 14.3159 6.84848V1.15152ZM43.5047 0C42.8674 0 42.3508 0.515553 42.3508 1.15152V6.84848C42.3508 7.48445 42.8674 8 43.5047 8H53.1266C53.7639 8 54.2806 7.48445 54.2806 6.84848V1.15152C54.2806 0.515551 53.7639 0 53.1266 0H43.5047Z" fill="#E5EAF3" fillOpacity="0.9"/>
2
+ <path id="fcr_listontop_big" fillRule="evenodd" clipRule="evenodd" d="M4.08 0C1.82668 0 0 1.82284 0 4.07143V6.84848C0 7.48445 0.516634 8 1.15394 8H11.3724C12.0097 8 12.5263 7.48445 12.5263 6.84848V1.15152C12.5263 0.515551 12.0097 0 11.3724 0H4.08ZM2.72 10C1.21779 10 0 11.2152 0 12.7143V33.9286C0 36.1772 1.82668 38 4.08 38H63.92C66.1733 38 68 36.1772 68 33.9286V12.7143C68 11.2152 66.7822 10 65.28 10H2.72ZM28.0352 1.15152C28.0352 0.515553 28.5518 0 29.1891 0H39.4076C40.0449 0 40.5615 0.515551 40.5615 1.15152V6.84848C40.5615 7.48445 40.0449 8 39.4076 8H29.1891C28.5518 8 28.0352 7.48445 28.0352 6.84848V1.15152ZM57.224 0C56.5867 0 56.07 0.515553 56.07 1.15152V6.84848C56.07 7.48445 56.5867 8 57.224 8H66.8459C67.4832 8 67.9998 7.48445 67.9998 6.84848V4.07143C67.9998 1.82284 66.1732 0 63.9198 0H57.224ZM14.3159 1.15152C14.3159 0.515553 14.8325 0 15.4699 0H25.0918C25.7291 0 26.2457 0.515551 26.2457 1.15152V6.84848C26.2457 7.48445 25.7291 8 25.0918 8H15.4699C14.8325 8 14.3159 7.48445 14.3159 6.84848V1.15152ZM43.5047 0C42.8674 0 42.3508 0.515553 42.3508 1.15152V6.84848C42.3508 7.48445 42.8674 8 43.5047 8H53.1266C53.7639 8 54.2806 7.48445 54.2806 6.84848V1.15152C54.2806 0.515551 53.7639 0 53.1266 0H43.5047Z" fill="#E5EAF3" fillOpacity="0.9"/>
3
3
  </svg>
@@ -255,12 +255,6 @@
255
255
  }
256
256
  }
257
257
 
258
- .fcr-state-bar__time {
259
- }
260
-
261
- .fcr-state-bar__layout {
262
- }
263
-
264
258
  .fcr-state-bar__full-screen {
265
259
  border-radius: var(--fcr_cornerradius_xxs);
266
260
  border: 1px solid var(--fcr_ui_scene_line1);
@@ -631,3 +625,11 @@
631
625
  display: none;
632
626
  }
633
627
  }
628
+
629
+ .layout-set-options-item-disable .fcr-layout-config-panel__option-text {
630
+ color: var(--fcr_ui_scene_icontext3);
631
+ }
632
+
633
+ .layout-set-options-item-disable .fcr-layout-config-panel__option-layout-img-wrapper {
634
+ opacity: 0.5;
635
+ }
@@ -10,7 +10,9 @@ import { FcrUIMemberSharedDataSource } from '../../shared-data-source/member-dat
10
10
  import { FcrUILocalStorageProvider } from '../../providers/local-storage-provider';
11
11
  import { FcrUIAbilityProviderImpl } from 'fcr-ui-scene/src/providers/ability-provider';
12
12
  import { FcrUIMeetingTimeSharedDataSource } from '../../shared-data-source/meeting-time';
13
+ import { FcrUIAnnotationProvider } from '../../providers/annotation-provider';
13
14
  import { FcrUIDialogProvider } from '../../providers/dialog-provider';
15
+ import { FcrUIScreenShareSharedDataSource } from '../../shared-data-source/screen-share-data';
14
16
  export declare class StateBarUIModule extends UIModule {
15
17
  private _store?;
16
18
  currentRoomControlProvider?: FcrUICurrentRoomControlProvider;
@@ -26,7 +28,9 @@ export declare class StateBarUIModule extends UIModule {
26
28
  messageProvider?: FcrUIMessageProvider;
27
29
  localStorageProvider?: FcrUILocalStorageProvider;
28
30
  abilityProvider?: FcrUIAbilityProviderImpl;
31
+ annotationProvider: FcrUIAnnotationProvider;
29
32
  dialogProvider?: FcrUIDialogProvider;
33
+ sharedScreenShareSharedDataSource?: FcrUIScreenShareSharedDataSource;
30
34
  onNodeWillActive(): void;
31
35
  getComponent(): import("react/jsx-runtime").JSX.Element;
32
36
  onNodeWillInactive(): void;
@@ -58,7 +58,9 @@ var StateBarUIModule = exports.StateBarUIModule = /*#__PURE__*/function (_UIModu
58
58
  localStorageProvider: this.localStorageProvider,
59
59
  abilityProvider: this.abilityProvider,
60
60
  sharedMeetingTimeDataSource: this.sharedMeetingTimeDataSource,
61
- dialogProvider: this.dialogProvider
61
+ annotationProvider: this.annotationProvider,
62
+ dialogProvider: this.dialogProvider,
63
+ sharedScreenShareSharedDataSource: this.sharedScreenShareSharedDataSource
62
64
  });
63
65
  }
64
66
  }, {
@@ -1,5 +1,6 @@
1
1
  import './index.css';
2
2
  interface LayoutConfigProps {
3
+ disable: boolean;
3
4
  }
4
5
  export declare const LayoutConfig: (props: LayoutConfigProps) => import("react/jsx-runtime").JSX.Element;
5
6
  export {};
@@ -14,7 +14,6 @@ var _i18n = require("agora-ui-foundation/lib/i18n");
14
14
  var _mobxReact = require("mobx-react");
15
15
  var _useNamespace = require("../../utilities/useNamespace");
16
16
  require("./index.css");
17
- var _view = require("./view");
18
17
  var _icon = require("agora-ui-foundation/lib/components/icon");
19
18
  var _type = require("agora-ui-foundation/lib/components/icon/type");
20
19
  var _react = require("react");
@@ -24,6 +23,7 @@ var _fcr_listontop_big = _interopRequireDefault(require("../../../public/assets/
24
23
  var _fcr_grid_big = _interopRequireDefault(require("../../../public/assets/fcr_grid_big.svg"));
25
24
  var _store = require("./store");
26
25
  var _store2 = require("../setting/store");
26
+ var _tooltip = require("agora-ui-foundation/lib/components/tooltip");
27
27
  var _jsxRuntime = require("react/jsx-runtime");
28
28
  var LayoutPanel = (0, _mobxReact.observer)(function (props) {
29
29
  var ns = (0, _useNamespace.useNamespace)('layout-config-panel');
@@ -53,9 +53,13 @@ var LayoutPanel = (0, _mobxReact.observer)(function (props) {
53
53
  className: ns.b(),
54
54
  children: [options.map(function (item) {
55
55
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
56
- className: (0, _classnames["default"])(ns.e('option'), ns.is('active', props.layoutView === item.type)),
56
+ className: (0, _classnames["default"])(ns.e('option'), ns.is('active', !props.disable && props.layoutView === item.type), {
57
+ 'layout-set-options-item-disable': props.disable
58
+ }),
57
59
  onClick: function onClick() {
58
- return props.setLayoutView(item.type);
60
+ if (!props.disable) {
61
+ props.setLayoutView(item.type);
62
+ }
59
63
  },
60
64
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
61
65
  className: ns.e('option-layout'),
@@ -93,6 +97,7 @@ var LayoutConfig = exports.LayoutConfig = (0, _mobxReact.observer)(function (pro
93
97
  layoutView = _useContext2.layoutView,
94
98
  toggleLayoutBarLock = _useContext2.toggleLayoutBarLock,
95
99
  galleryWidth = _useContext2.galleryWidth;
100
+ var disable = props.disable;
96
101
  var _useState = (0, _react.useState)(false),
97
102
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
98
103
  isOpen = _useState2[0],
@@ -111,7 +116,11 @@ var LayoutConfig = exports.LayoutConfig = (0, _mobxReact.observer)(function (pro
111
116
  _setIsOpen(false);
112
117
  toggleLayout(view);
113
118
  };
114
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_view.MyFcrToolTip, {
119
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
120
+ disable: disable,
121
+ trigger: "hover",
122
+ placement: 'bottom',
123
+ mouseEnterDelay: 0,
115
124
  content: t('fmt_uimanager_labels_Switchview'),
116
125
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.FcrPopover, {
117
126
  showArrow: false,
@@ -123,7 +132,8 @@ var LayoutConfig = exports.LayoutConfig = (0, _mobxReact.observer)(function (pro
123
132
  setIsOpen: function setIsOpen(visible) {
124
133
  _setIsOpen(visible);
125
134
  toggleLayoutBarLock(visible);
126
- }
135
+ },
136
+ disable: disable
127
137
  }),
128
138
  visible: isOpen,
129
139
  onVisibleChange: function onVisibleChange(visible) {
@@ -13,7 +13,9 @@ import { FcrUIMemberSharedDataSource } from '../../shared-data-source/member-dat
13
13
  import { FcrUILocalStorageProvider } from '../../providers/local-storage-provider';
14
14
  import { FcrUIAbilityProviderImpl } from 'fcr-ui-scene/src/providers/ability-provider';
15
15
  import { FcrUIMeetingTimeSharedDataSource } from '../../shared-data-source/meeting-time';
16
+ import { FcrUIAnnotationProvider } from '../../providers/annotation-provider';
16
17
  import { FcrUIDialogProvider } from '../../providers/dialog-provider';
18
+ import { FcrUIScreenShareSharedDataSource } from '../../shared-data-source/screen-share-data';
17
19
  export type NetworkStatus = 'excellent' | 'average' | 'poor' | 'unknown';
18
20
  export declare const GALLERY_MIN_SIZE = 825;
19
21
  export default class StateBarStore {
@@ -27,11 +29,13 @@ export default class StateBarStore {
27
29
  private _sharedLayoutDataSource;
28
30
  private _sharedVideoWindowDataSource;
29
31
  private _sharedMeetingTimeDataSource;
32
+ private _sharedScreenShareSharedDataSource;
30
33
  private _messageProvider;
31
34
  private _sharedMemberDataSource;
32
35
  private _localStorageProvider;
33
36
  private _roomObserver;
34
37
  private _abilityProvider;
38
+ private _annotationProvider;
35
39
  private _dialogProvider;
36
40
  accessor networkStatus: NetworkStatus;
37
41
  accessor roomInfo: FcrRoomInfo | undefined;
@@ -47,6 +51,7 @@ export default class StateBarStore {
47
51
  accessor attendeeCount: number;
48
52
  accessor asideOpenedItem: Set<string>;
49
53
  accessor cloudRecordingState: FcrRecordingState;
54
+ get annotationHasStart(): boolean;
50
55
  get localUser(): FcrUserInfo;
51
56
  get isUserHost(): boolean;
52
57
  get shouldShowMeetingTime(): boolean;
@@ -59,12 +64,13 @@ export default class StateBarStore {
59
64
  get meetingTimeStatus(): import("../../shared-data-source/meeting-time").MeetingStatus;
60
65
  get meetingTime(): string;
61
66
  get password(): string | undefined;
67
+ get isSharingScreen(): boolean;
62
68
  get layoutSize(): number;
63
69
  get layoutView(): import("../../type").FcrUIVideoWindowLayoutType;
64
70
  get asideLayout(): import("../../type").FcrUIUpdateAsideParams;
65
71
  get isRoomDetailSupported(): boolean;
66
72
  get roomDetailCopyText(): string;
67
- constructor({ roomControl, uiEventStore, securityStore, config, parameters, sharedLayoutDataSource, roomProvider, sharedVideoWindowDataSource, messageProvider, sharedMemberDataSource, localStorageProvider, abilityProvider, sharedMeetingTimeDataSource, dialogProvider, }: {
73
+ constructor({ roomControl, uiEventStore, securityStore, config, parameters, sharedLayoutDataSource, roomProvider, sharedVideoWindowDataSource, messageProvider, sharedMemberDataSource, localStorageProvider, abilityProvider, sharedMeetingTimeDataSource, annotationProvider, dialogProvider, sharedScreenShareSharedDataSource, }: {
68
74
  roomControl: FcrMainRoomControl | FcrWaitingRoomControl;
69
75
  uiEventStore: FcrUIEventProvider;
70
76
  securityStore: FcrUIPrivilegeProvider;
@@ -78,7 +84,9 @@ export default class StateBarStore {
78
84
  localStorageProvider: FcrUILocalStorageProvider;
79
85
  abilityProvider: FcrUIAbilityProviderImpl;
80
86
  sharedMeetingTimeDataSource: FcrUIMeetingTimeSharedDataSource;
87
+ annotationProvider: FcrUIAnnotationProvider;
81
88
  dialogProvider: FcrUIDialogProvider;
89
+ sharedScreenShareSharedDataSource: FcrUIScreenShareSharedDataSource;
82
90
  });
83
91
  get roomId(): string | undefined;
84
92
  get meetingId(): string | undefined;
@@ -130,7 +130,9 @@ var StateBarStore = exports["default"] = /*#__PURE__*/function () {
130
130
  localStorageProvider = _ref2.localStorageProvider,
131
131
  abilityProvider = _ref2.abilityProvider,
132
132
  sharedMeetingTimeDataSource = _ref2.sharedMeetingTimeDataSource,
133
- dialogProvider = _ref2.dialogProvider;
133
+ annotationProvider = _ref2.annotationProvider,
134
+ dialogProvider = _ref2.dialogProvider,
135
+ sharedScreenShareSharedDataSource = _ref2.sharedScreenShareSharedDataSource;
134
136
  (0, _classCallCheck2["default"])(this, StateBarStore);
135
137
  (0, _defineProperty2["default"])(this, _ref, (_initProto(this), (0, _logger.createLogger)({
136
138
  prefix: 'StateBarStore'
@@ -174,9 +176,11 @@ var StateBarStore = exports["default"] = /*#__PURE__*/function () {
174
176
  this._sharedMeetingTimeDataSource = sharedMeetingTimeDataSource;
175
177
  this._messageProvider = messageProvider;
176
178
  this._sharedMemberDataSource = sharedMemberDataSource;
179
+ this._sharedScreenShareSharedDataSource = sharedScreenShareSharedDataSource;
177
180
  this._localStorageProvider = localStorageProvider;
178
181
  this._roomControl.addObserver(this._roomObserver);
179
182
  this._abilityProvider = abilityProvider;
183
+ this._annotationProvider = annotationProvider;
180
184
  this._uiEventStore.addObserver({
181
185
  onEvent: this._uiEvents.bind(this)
182
186
  });
@@ -293,6 +297,12 @@ var StateBarStore = exports["default"] = /*#__PURE__*/function () {
293
297
  set: function set(v) {
294
298
  _classPrivateFieldSet(_J, this, v);
295
299
  }
300
+ }, {
301
+ key: "annotationHasStart",
302
+ get: function get() {
303
+ //return !!this._annotationProvider?.annotationHasStart;
304
+ return false;
305
+ }
296
306
  }, {
297
307
  key: "localUser",
298
308
  get: function get() {
@@ -355,6 +365,11 @@ var StateBarStore = exports["default"] = /*#__PURE__*/function () {
355
365
  var _this$_roomControl$ge2;
356
366
  return (_this$_roomControl$ge2 = this._roomControl.getRoomInfo()) === null || _this$_roomControl$ge2 === void 0 ? void 0 : _this$_roomControl$ge2.password;
357
367
  }
368
+ }, {
369
+ key: "isSharingScreen",
370
+ get: function get() {
371
+ return this._sharedScreenShareSharedDataSource.isSharingScreen;
372
+ }
358
373
  }, {
359
374
  key: "layoutSize",
360
375
  get: function get() {
@@ -626,7 +641,7 @@ var StateBarStore = exports["default"] = /*#__PURE__*/function () {
626
641
  }]);
627
642
  }();
628
643
  _StateBarStore = StateBarStore;
629
- var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_StateBarStore, [[_mobx.observable, 1, "networkStatus"], [_mobx.observable, 1, "roomInfo"], [_mobx.observable, 1, "isLiveStreaming"], [_mobx.observable, 1, "liveStreamingPlayUrl"], [_mobx.observable, 1, "galleryWidth"], [_mobx.observable, 1, "browserWidth"], [_mobx.observable, 1, "networkStats"], [_mobx.observable, 1, "attendeeCount"], [_mobx.observable, 1, "asideOpenedItem"], [_mobx.observable, 1, "cloudRecordingState"], [_mobx.computed, 3, "shouldShowMeetingTime"], [_mobx.computed, 3, "isMainRoom"], [_mobx.computed, 3, "hasStartCloudRecordingPermission"], [_mobx.computed, 3, "hasStopLiveStreamingPermission"], [_mobx.computed, 3, "hasGetLiveStreamingLinkPermission"], [_mobx.computed, 3, "totalHourText"], [_mobx.computed, 3, "totalMinuteText"], [_mobx.computed, 3, "meetingTimeStatus"], [_mobx.computed, 3, "meetingTime"], [_mobx.computed, 3, "password"], [_mobx.computed, 3, "roomId"], [_mobx.computed, 3, "meetingId"], [_mobx.computed, 3, "scheduleInfo"], [_decorator.bound, 2, "isLockRoomEnabled"], [_setNetworkStatusDecs, 18, "setNetworkStatus"], [_setRoomInfoDecs, 18, "setRoomInfo"], [_decorator.bound, 2, "openDeviceSettingDialog"], [_stopLiveStreamingDialogDecs, 18, "stopLiveStreamingDialog"], [_decorator.bound, 2, "startCloudRecording"], [_decorator.bound, 2, "pauseCloudRecording"], [_decorator.bound, 2, "resumeCloudRecording"], [_decorator.bound, 2, "stopCloudRecording"], [_decorator.bound, 2, "getShareLink"], [_decorator.bound, 2, "showToast"], [_decorator.bound, 2, "showNotification"], [_decorator.bound, 2, "closeNotification"], [_uiEventsDecs, 18, "_uiEvents"], [_setBrowserWidthDecs, 18, "_setBrowserWidth"], [_onNetworkStatsUpdatedDecs, 18, "_onNetworkStatsUpdated"], [_onLiveStreamingStateUpdatedDecs, 18, "_onLiveStreamingStateUpdated"], [_decorator.bound, 2, "getLocalMeetingTime"]], []).e, 11);
644
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_StateBarStore, [[_mobx.observable, 1, "networkStatus"], [_mobx.observable, 1, "roomInfo"], [_mobx.observable, 1, "isLiveStreaming"], [_mobx.observable, 1, "liveStreamingPlayUrl"], [_mobx.observable, 1, "galleryWidth"], [_mobx.observable, 1, "browserWidth"], [_mobx.observable, 1, "networkStats"], [_mobx.observable, 1, "attendeeCount"], [_mobx.observable, 1, "asideOpenedItem"], [_mobx.observable, 1, "cloudRecordingState"], [_mobx.computed, 3, "localUser"], [_mobx.computed, 3, "shouldShowMeetingTime"], [_mobx.computed, 3, "isMainRoom"], [_mobx.computed, 3, "hasStartCloudRecordingPermission"], [_mobx.computed, 3, "hasStopLiveStreamingPermission"], [_mobx.computed, 3, "hasGetLiveStreamingLinkPermission"], [_mobx.computed, 3, "totalHourText"], [_mobx.computed, 3, "totalMinuteText"], [_mobx.computed, 3, "meetingTimeStatus"], [_mobx.computed, 3, "meetingTime"], [_mobx.computed, 3, "password"], [_mobx.computed, 3, "roomId"], [_mobx.computed, 3, "meetingId"], [_mobx.computed, 3, "scheduleInfo"], [_decorator.bound, 2, "isLockRoomEnabled"], [_setNetworkStatusDecs, 18, "setNetworkStatus"], [_setRoomInfoDecs, 18, "setRoomInfo"], [_decorator.bound, 2, "openDeviceSettingDialog"], [_stopLiveStreamingDialogDecs, 18, "stopLiveStreamingDialog"], [_decorator.bound, 2, "startCloudRecording"], [_decorator.bound, 2, "pauseCloudRecording"], [_decorator.bound, 2, "resumeCloudRecording"], [_decorator.bound, 2, "stopCloudRecording"], [_decorator.bound, 2, "getShareLink"], [_decorator.bound, 2, "showToast"], [_decorator.bound, 2, "showNotification"], [_decorator.bound, 2, "closeNotification"], [_uiEventsDecs, 18, "_uiEvents"], [_setBrowserWidthDecs, 18, "_setBrowserWidth"], [_onNetworkStatsUpdatedDecs, 18, "_onNetworkStatsUpdated"], [_onLiveStreamingStateUpdatedDecs, 18, "_onLiveStreamingStateUpdated"], [_decorator.bound, 2, "getLocalMeetingTime"]], []).e, 11);
630
645
  _init_networkStatus = _applyDecs$e[0];
631
646
  _init_roomInfo = _applyDecs$e[1];
632
647
  _init_isLiveStreaming = _applyDecs$e[2];
@@ -66,7 +66,8 @@ var View = exports.View = (0, _mobxReact.observer)(function () {
66
66
  showToast = _useContext.showToast,
67
67
  showNotification = _useContext.showNotification,
68
68
  closeNotification = _useContext.closeNotification,
69
- isRoomDetailSupported = _useContext.isRoomDetailSupported;
69
+ isRoomDetailSupported = _useContext.isRoomDetailSupported,
70
+ isSharingScreen = _useContext.isSharingScreen;
70
71
  var _useState = (0, _react.useState)(false),
71
72
  _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
72
73
  isFullScreen = _useState2[0],
@@ -210,10 +211,14 @@ var View = exports.View = (0, _mobxReact.observer)(function () {
210
211
  className: ns.e('time'),
211
212
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_meetingTime.MeetingTime, {})
212
213
  }), attendeeCount > 1 && /*#__PURE__*/(0, _jsxRuntime.jsx)(MyFcrToolTip, {
213
- content: t('fmt_statusbar_label_switchlayout'),
214
+ content: isSharingScreen ? t('fmt_statusbar_hover_unable_switch_grid_view') : t('fmt_statusbar_label_switchlayout'),
214
215
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
215
- className: ns.e('layout'),
216
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_layoutConfig.LayoutConfig, {})
216
+ className: (0, _classnames["default"])(ns.e('layout'), {
217
+ 'fcr-state-bar_layout_disable': isSharingScreen
218
+ }),
219
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_layoutConfig.LayoutConfig, {
220
+ disable: isSharingScreen
221
+ })
217
222
  })
218
223
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)(MyFcrToolTip, {
219
224
  placement: "bottom",
@@ -103,7 +103,8 @@ var Members = exports.Members = (0, _mobxReact.observer)(function () {
103
103
  videoStreamType: _type3.AgoraRtcVideoStreamType.LOW_STREAM,
104
104
  windowData: windowData,
105
105
  showAvatar: true,
106
- isVideoSuspended: false
106
+ isVideoSuspended: false,
107
+ scalcValue: 1
107
108
  })
108
109
  }, windowData.windowId);
109
110
  }), /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
@@ -78,7 +78,7 @@ var LayoutStore = exports["default"] = /*#__PURE__*/function () {
78
78
  (0, _classCallCheck2["default"])(this, LayoutStore);
79
79
  (0, _defineProperty2["default"])(this, _ref, void _initProto(this));
80
80
  (0, _defineProperty2["default"])(this, "_roomProviderObserver", {
81
- onLeaveJBH: function onLeaveJBH() {
81
+ onLeaveWaitingRoom: function onLeaveWaitingRoom() {
82
82
  _this.isJbhToMainRoom = true;
83
83
  }
84
84
  });
@@ -2,6 +2,7 @@ import { FcrUIEventProvider } from '../../../../providers/event-provider';
2
2
  import { FcrUserInfo } from 'fcr-core/lib/type';
3
3
  import { FcrStreamControl, FcrUserControl } from 'fcr-core';
4
4
  import { FcrUIPrivilegeProvider } from '../../../../providers/privilege-provider';
5
+ import { FcrUIAnnotationProvider } from '../../../../providers/annotation-provider';
5
6
  export declare class WhiteboardControlBarStore {
6
7
  accessor ownerUser: FcrUserInfo | undefined;
7
8
  accessor currentUser: FcrUserInfo | undefined;
@@ -16,12 +17,15 @@ export declare class WhiteboardControlBarStore {
16
17
  private _uiEventStore;
17
18
  private _userControl;
18
19
  private _securityStore;
19
- constructor({ uiEventStore, userControl, securityStore, }: {
20
+ private _annotationProvider;
21
+ constructor({ uiEventStore, userControl, securityStore, annotationProvider, }: {
20
22
  uiEventStore: FcrUIEventProvider;
21
23
  streamControl: FcrStreamControl;
22
24
  userControl: FcrUserControl;
23
25
  securityStore: FcrUIPrivilegeProvider;
26
+ annotationProvider: FcrUIAnnotationProvider;
24
27
  });
28
+ get annotationHasStart(): boolean;
25
29
  get canWriteBoard(): boolean;
26
30
  onZoomin(): void;
27
31
  onZoomout(): void;
@@ -84,7 +84,8 @@ var WhiteboardControlBarStore = exports.WhiteboardControlBarStore = /*#__PURE__*
84
84
  _this = this;
85
85
  var uiEventStore = _ref2.uiEventStore,
86
86
  userControl = _ref2.userControl,
87
- securityStore = _ref2.securityStore;
87
+ securityStore = _ref2.securityStore,
88
+ annotationProvider = _ref2.annotationProvider;
88
89
  (0, _classCallCheck2["default"])(this, WhiteboardControlBarStore);
89
90
  _classPrivateFieldInitSpec(this, _A, (_initProto(this), _init_ownerUser(this, undefined)));
90
91
  _classPrivateFieldInitSpec(this, _B, _init_currentUser(this, undefined));
@@ -100,6 +101,7 @@ var WhiteboardControlBarStore = exports.WhiteboardControlBarStore = /*#__PURE__*
100
101
  this._userControl = userControl;
101
102
  this.currentUser = userControl.getLocalUser();
102
103
  this._securityStore = securityStore;
104
+ this._annotationProvider = annotationProvider;
103
105
  this.isHost = [_type2.FcrUserRole.HOST, _type2.FcrUserRole.COHOST].includes((_userControl$getLocal = userControl.getLocalUser()) === null || _userControl$getLocal === void 0 ? void 0 : _userControl$getLocal.userRole);
104
106
  uiEventStore.addObserver({
105
107
  onEvent: function onEvent(action, payload) {
@@ -208,6 +210,11 @@ var WhiteboardControlBarStore = exports.WhiteboardControlBarStore = /*#__PURE__*
208
210
  set: function set(v) {
209
211
  _classPrivateFieldSet(_J, this, v);
210
212
  }
213
+ }, {
214
+ key: "annotationHasStart",
215
+ get: function get() {
216
+ return this._annotationProvider.annotationHasStart;
217
+ }
211
218
  }, {
212
219
  key: "canWriteBoard",
213
220
  get: function get() {
@@ -255,6 +262,7 @@ var WhiteboardControlBarStore = exports.WhiteboardControlBarStore = /*#__PURE__*
255
262
  }, {
256
263
  key: "onClose",
257
264
  value: function onClose() {
265
+ this._uiEventStore.sendEvent(_constant.FcrUIAction.RESET_WHITEBOARD_TOOLBAR_VARS);
258
266
  this._uiEventStore.sendEvent(_constant.FcrUIAction.CLOSE_WHITEBOARD);
259
267
  }
260
268
  }, {
@@ -269,6 +277,7 @@ var WhiteboardControlBarStore = exports.WhiteboardControlBarStore = /*#__PURE__*
269
277
  action: _type.WhiteboardControlbarEvents.ENABLE_CONTROL,
270
278
  payload: controlEnabled
271
279
  });
280
+ this._uiEventStore.sendEvent(_constant.FcrUIAction.RESET_WHITEBOARD_TOOLBAR_VARS);
272
281
  }
273
282
  }]);
274
283
  }();
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.Picker = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
10
  require("core-js/modules/es.array.includes.js");
10
11
  require("core-js/modules/es.string.includes.js");
11
12
  var _mobxReact = require("mobx-react");
@@ -16,6 +17,7 @@ var _popover = require("agora-ui-foundation/lib/components/popover");
16
17
  var _panel = require("./panel");
17
18
  var _icon = require("agora-ui-foundation/lib/components/icon");
18
19
  var _type = require("agora-ui-foundation/lib/components/icon/type");
20
+ var _enums = require("fcr-core/lib/room-control/whiteboard-control/enums");
19
21
  var _jsxRuntime = require("react/jsx-runtime");
20
22
  var Picker = exports.Picker = (0, _mobxReact.observer)(function () {
21
23
  var _useContext = (0, _react.useContext)(_store.ToolbarContext),
@@ -23,26 +25,35 @@ var Picker = exports.Picker = (0, _mobxReact.observer)(function () {
23
25
  currentColor = _useContext$observabl.currentColor,
24
26
  currentShape = _useContext$observabl.currentShape,
25
27
  toolbarDockPosition = _useContext$observabl.toolbarDockPosition,
26
- commonColors = _useContext$observabl.commonColors;
28
+ commonColors = _useContext$observabl.commonColors,
29
+ currentTool = _useContext$observabl.currentTool;
27
30
  var isOtherColorActive = !!currentColor && !commonColors.includes(currentColor);
28
- var isDisabled = !currentShape;
31
+ var _useState = (0, _react.useState)(false),
32
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
33
+ visible = _useState2[0],
34
+ setVisible = _useState2[1];
35
+ var canShowColorPicker = !!currentShape || currentTool === _enums.FcrBoardToolType.TEXT;
29
36
  var cls = (0, _classnames["default"])('fcr-board-toolbar__color-item fcr-board-toolbar__color-item--picker', {
30
37
  // 'fcr-board-toolbar__color-item--active': isOtherColorActive,
31
- 'fcr-board-toolbar__color-item--disabled': isDisabled
38
+ 'fcr-board-toolbar__color-item--disabled': !canShowColorPicker
32
39
  });
33
40
  // const [currentPickVisible, setCurrentPickVisible] = useState(false);
34
41
 
35
- return isDisabled ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
42
+ (0, _react.useEffect)(function () {
43
+ setVisible(false);
44
+ }, [currentColor]);
45
+ return !canShowColorPicker ? /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
36
46
  className: cls
37
47
  }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.FcrPopover, {
38
48
  showArrow: false,
39
49
  content: /*#__PURE__*/(0, _jsxRuntime.jsx)(_panel.ColorPickerPanel, {}),
50
+ visible: visible,
40
51
  trigger: "click",
41
52
  placement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
42
53
  overlayClassName: "fcr-board-toolbar__picker__overlay",
43
54
  overlayOffset: 18,
44
55
  onVisibleChange: function onVisibleChange(visible) {
45
- // setCurrentPickVisible(visible);
56
+ setVisible(visible);
46
57
  },
47
58
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
48
59
  className: cls,
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
8
  exports.EraserPickerItem = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
9
10
  var _mobxReact = require("mobx-react");
10
11
  var _react = require("react");
11
12
  var _classnames = _interopRequireDefault(require("classnames"));
@@ -24,19 +25,47 @@ var EraserPickerItem = exports.EraserPickerItem = (0, _mobxReact.observer)(funct
24
25
  currentTool = _useContext$observabl.currentTool,
25
26
  toolbarDockPosition = _useContext$observabl.toolbarDockPosition;
26
27
  var transI18n = (0, _i18n.useI18n)();
28
+ var _useState = (0, _react.useState)(false),
29
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
30
+ isHover = _useState2[0],
31
+ setIsHover = _useState2[1];
27
32
  var isActive = currentTool === _enums.FcrBoardToolType.ERASER;
28
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_expansion.ExpansionToolbarItem, {
29
- isActive: isActive,
30
- tooltip: transI18n('fmt_screenshare_whiteboard_button_eraser'),
31
- tooltipPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
32
- popoverPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
33
- icon: _type.FcrIconType.FCR_WHITEBOARD_ERASER,
34
- popoverOverlayClassName: "fcr-board-toolbar__picker__overlay",
35
- popoverContent: /*#__PURE__*/(0, _jsxRuntime.jsx)(EraserPickerPanel, {}),
36
- popoverOffset: offset
33
+ var handleMouseEnter = function handleMouseEnter() {
34
+ setIsHover(true);
35
+ };
36
+ var handleMouseLeave = function handleMouseLeave() {
37
+ setIsHover(false);
38
+ };
39
+ var popoverRef = (0, _react.useRef)(null);
40
+ var hidePopover = function hidePopover() {
41
+ var _popoverRef$current;
42
+ (_popoverRef$current = popoverRef.current) === null || _popoverRef$current === void 0 || _popoverRef$current.closePopover();
43
+ };
44
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
45
+ onMouseEnter: handleMouseEnter,
46
+ onMouseLeave: handleMouseLeave,
47
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_expansion.ExpansionToolbarItem, {
48
+ ref: popoverRef,
49
+ isActive: isActive,
50
+ tooltip: transI18n('fmt_screenshare_whiteboard_button_eraser'),
51
+ tooltipPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
52
+ popoverPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
53
+ icon: _type.FcrIconType.FCR_WHITEBOARD_ERASER,
54
+ popoverOverlayClassName: "fcr-board-toolbar__picker__overlay",
55
+ popoverContent: /*#__PURE__*/(0, _jsxRuntime.jsx)(EraserPickerPanel, {
56
+ hidePopover: hidePopover
57
+ }),
58
+ popoverOffset: offset,
59
+ iconProps: {
60
+ colors: {
61
+ iconPrimary: isActive || isHover ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)'
62
+ }
63
+ }
64
+ })
37
65
  });
38
66
  });
39
- var EraserPickerPanel = (0, _mobxReact.observer)(function () {
67
+ var EraserPickerPanel = (0, _mobxReact.observer)(function (_ref2) {
68
+ var hidePopover = _ref2.hidePopover;
40
69
  var _useContext2 = (0, _react.useContext)(_store.ToolbarContext),
41
70
  _useContext2$observab = _useContext2.observables,
42
71
  currentTool = _useContext2$observab.currentTool,
@@ -48,11 +77,33 @@ var EraserPickerPanel = (0, _mobxReact.observer)(function () {
48
77
  'fcr-board-toolbar-panel--active': currentTool === _enums.FcrBoardToolType.ERASER
49
78
  });
50
79
  var handleEraserClick = function handleEraserClick() {
80
+ hidePopover();
51
81
  setTool(_enums.FcrBoardToolType.ERASER);
52
82
  };
53
83
  var handleCleanClick = function handleCleanClick() {
84
+ hidePopover();
54
85
  clean();
55
86
  };
87
+ var _useState3 = (0, _react.useState)(false),
88
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
89
+ isEraserHover = _useState4[0],
90
+ setIsEraserHover = _useState4[1];
91
+ var _useState5 = (0, _react.useState)(false),
92
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
93
+ isCleanHover = _useState6[0],
94
+ setIsCleanHover = _useState6[1];
95
+ var handleMouseEnter = function handleMouseEnter() {
96
+ setIsEraserHover(true);
97
+ };
98
+ var handleMouseLeave = function handleMouseLeave() {
99
+ setIsEraserHover(false);
100
+ };
101
+ var handleCleanMouseEnter = function handleCleanMouseEnter() {
102
+ setIsCleanHover(true);
103
+ };
104
+ var handleCleanMouseLeave = function handleCleanMouseLeave() {
105
+ setIsCleanHover(false);
106
+ };
56
107
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
57
108
  className: "fcr-board-toolbar-panel fcr-board-toolbar-panel--eraser",
58
109
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_tooltip.FcrToolTip, {
@@ -62,11 +113,13 @@ var EraserPickerPanel = (0, _mobxReact.observer)(function () {
62
113
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
63
114
  className: eraserCls,
64
115
  onClick: handleEraserClick,
116
+ onMouseEnter: handleMouseEnter,
117
+ onMouseLeave: handleMouseLeave,
65
118
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
66
119
  type: _type.FcrIconType.FCR_WHITEBOARD_ERASER,
67
120
  size: 28,
68
121
  colors: {
69
- iconPrimary: currentTool === _enums.FcrBoardToolType.ERASER ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)'
122
+ iconPrimary: currentTool === _enums.FcrBoardToolType.ERASER || isEraserHover ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)'
70
123
  }
71
124
  })
72
125
  })
@@ -76,11 +129,13 @@ var EraserPickerPanel = (0, _mobxReact.observer)(function () {
76
129
  placement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
77
130
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
78
131
  onClick: handleCleanClick,
132
+ onMouseEnter: handleCleanMouseEnter,
133
+ onMouseLeave: handleCleanMouseLeave,
79
134
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
80
135
  type: _type.FcrIconType.FCR_WHITEBOARD_ELIMINATE,
81
136
  size: 28,
82
137
  colors: {
83
- iconPrimary: 'var(--fcr_ui_scene_black8)'
138
+ iconPrimary: isCleanHover ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)'
84
139
  }
85
140
  })
86
141
  })