fcr-ui-scene 3.7.5 → 3.7.7

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 (401) hide show
  1. package/installer/icons/icon.png +0 -0
  2. package/installer/mac/entitlements.mac.plist +1 -5
  3. package/lib/creator/index.js +15 -7
  4. package/lib/creator/provider-initializer.browser.js +13 -4
  5. package/lib/creator/provider-initializer.electron.js +22 -10
  6. package/lib/creator.d.ts +36 -0
  7. package/lib/creator.js +465 -0
  8. package/lib/electron/bootstrap-sdk.js +90 -6
  9. package/lib/electron/injections.d.ts +1 -0
  10. package/lib/electron/injections.js +5 -1
  11. package/lib/electron/ipc/type.d.ts +1 -0
  12. package/lib/electron/ipc/type.js +1 -0
  13. package/lib/electron/preload.js +1 -0
  14. package/lib/electron/sdk-helper.d.ts +3 -0
  15. package/lib/electron/sdk-helper.js +53 -19
  16. package/lib/electron/struct.d.ts +7 -1
  17. package/lib/electron/struct.js +8 -1
  18. package/lib/electron/until.d.ts +7 -1
  19. package/lib/electron/until.js +11 -2
  20. package/lib/fragments/annotation/store.js +2 -0
  21. package/lib/modules/action-bar/components/item/index.js +1 -0
  22. package/lib/modules/action-bar/components/more/poppover-content.js +1 -1
  23. package/lib/modules/action-bar/components/screen-share/index.browser.js +4 -2
  24. package/lib/modules/action-bar/components/screen-share/index.electron.js +4 -2
  25. package/lib/modules/action-bar/components/screen-share/submenu.d.ts +5 -1
  26. package/lib/modules/action-bar/components/screen-share/submenu.js +12 -9
  27. package/lib/modules/action-bar/index.d.ts +55 -14
  28. package/lib/modules/action-bar/index.dev.js +94 -0
  29. package/lib/modules/action-bar/index.js +78 -32
  30. package/lib/modules/action-bar/store.d.ts +259 -0
  31. package/lib/modules/action-bar/store.js +1529 -0
  32. package/lib/modules/action-bar/types.d.ts +90 -0
  33. package/lib/modules/action-bar/types.js +6 -0
  34. package/lib/modules/action-bar/view.d.ts +1 -1
  35. package/lib/modules/action-bar/view.js +2 -2
  36. package/lib/modules/annotation/annotation-index.d.ts +2 -0
  37. package/lib/modules/annotation/annotation-index.js +80 -0
  38. package/lib/modules/annotation/annotation-toolbar-store.d.ts +75 -0
  39. package/lib/modules/annotation/annotation-toolbar-store.js +459 -0
  40. package/lib/modules/annotation/board-cursor.css +77 -0
  41. package/lib/modules/annotation/components/color-picker/components/color.d.ts +5 -0
  42. package/lib/modules/annotation/components/color-picker/components/color.js +38 -0
  43. package/lib/modules/annotation/components/color-picker/components/panel.d.ts +1 -0
  44. package/lib/modules/annotation/components/color-picker/components/panel.js +109 -0
  45. package/lib/modules/annotation/components/color-picker/components/picker.d.ts +1 -0
  46. package/lib/modules/annotation/components/color-picker/components/picker.js +75 -0
  47. package/lib/modules/annotation/components/color-picker/index.d.ts +2 -0
  48. package/lib/modules/annotation/components/color-picker/index.js +47 -0
  49. package/lib/modules/annotation/components/eraser-picker.d.ts +4 -0
  50. package/lib/modules/annotation/components/eraser-picker.js +144 -0
  51. package/lib/modules/annotation/components/expansion/index.d.ts +1 -0
  52. package/lib/modules/annotation/components/expansion/index.js +100 -0
  53. package/lib/modules/annotation/components/extra-tool-picker.d.ts +1 -0
  54. package/lib/modules/annotation/components/extra-tool-picker.js +62 -0
  55. package/lib/modules/annotation/components/history.d.ts +2 -0
  56. package/lib/modules/annotation/components/history.js +78 -0
  57. package/lib/modules/annotation/components/icons/fold-icon.d.ts +2 -0
  58. package/lib/modules/annotation/components/icons/fold-icon.js +41 -0
  59. package/lib/modules/annotation/components/icons/move-icon.d.ts +1 -0
  60. package/lib/modules/annotation/components/icons/move-icon.js +66 -0
  61. package/lib/modules/annotation/components/item/index.d.ts +1 -0
  62. package/lib/modules/annotation/components/item/index.js +43 -0
  63. package/lib/modules/annotation/components/move-handle.d.ts +5 -0
  64. package/lib/modules/annotation/components/move-handle.js +134 -0
  65. package/lib/modules/annotation/components/pen-picker.d.ts +4 -0
  66. package/lib/modules/annotation/components/pen-picker.js +155 -0
  67. package/lib/modules/annotation/components/screen-capture-picker.d.ts +4 -0
  68. package/lib/modules/annotation/components/screen-capture-picker.js +85 -0
  69. package/lib/modules/annotation/components/shape-picker.d.ts +4 -0
  70. package/lib/modules/annotation/components/shape-picker.js +210 -0
  71. package/lib/modules/annotation/hooks/index.d.ts +14 -0
  72. package/lib/modules/annotation/hooks/index.js +292 -0
  73. package/lib/modules/annotation/index.d.ts +45 -0
  74. package/lib/modules/annotation/index.js +168 -0
  75. package/lib/modules/annotation/store.d.ts +98 -0
  76. package/lib/modules/annotation/store.js +620 -0
  77. package/lib/modules/annotation/style.css +36 -0
  78. package/lib/modules/annotation/view.d.ts +3 -0
  79. package/lib/modules/annotation/view.js +44 -0
  80. package/lib/modules/audio-stream/index.js +4 -2
  81. package/lib/modules/chat/index.css +8 -0
  82. package/lib/modules/chat/view.js +7 -1
  83. package/lib/modules/components/control-bar/components/switch-theme/index.css +2 -0
  84. package/lib/modules/components/control-bar/components/switch-theme/index.js +5 -7
  85. package/lib/modules/components/control-bar/index.css +0 -2
  86. package/lib/modules/components/control-bar/index.d.ts +1 -0
  87. package/lib/modules/components/control-bar/index.js +51 -15
  88. package/lib/modules/components/device-control/store.d.ts +42 -0
  89. package/lib/modules/components/device-control/store.js +241 -0
  90. package/lib/modules/components/leave-meeting/main-scene/store.d.ts +3 -0
  91. package/lib/modules/components/leave-meeting/main-scene/store.js +12 -0
  92. package/lib/modules/components/leave-meeting/store.base.d.ts +4 -3
  93. package/lib/modules/components/leave-meeting/store.base.js +0 -10
  94. package/lib/modules/components/leave-meeting/store.d.ts +39 -0
  95. package/lib/modules/components/leave-meeting/store.js +270 -0
  96. package/lib/modules/components/leave-meeting/waiting-scene/store.d.ts +5 -1
  97. package/lib/modules/components/leave-meeting/waiting-scene/store.js +17 -3
  98. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +1 -2
  99. package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.js +4 -3
  100. package/lib/modules/components/member-window/components/video-player/components/zoomable-container.js +18 -32
  101. package/lib/modules/components/toolbar/components/capture-tool/index.d.ts +0 -1
  102. package/lib/modules/components/toolbar/components/capture-tool/index.js +1 -2
  103. package/lib/modules/components/toolbar/components/vertical-frame/index.js +2 -2
  104. package/lib/modules/components/toolbar/hooks/use-resize-visible.js +45 -32
  105. package/lib/modules/components/toolbar/index.js +6 -24
  106. package/lib/modules/control-bar/components/annotation-button/index.d.ts +1 -0
  107. package/lib/modules/control-bar/components/annotation-button/index.js +72 -0
  108. package/lib/modules/control-bar/components/boundary-detector.d.ts +7 -5
  109. package/lib/modules/control-bar/components/boundary-detector.js +22 -2
  110. package/lib/modules/control-bar/components/cloud-recording-buttons.d.ts +3 -0
  111. package/lib/modules/control-bar/components/cloud-recording-buttons.js +68 -3
  112. package/lib/modules/control-bar/hooks.js +2 -1
  113. package/lib/modules/control-bar/store.d.ts +1 -0
  114. package/lib/modules/control-bar/store.js +21 -7
  115. package/lib/modules/control-bar/types.d.ts +5 -16
  116. package/lib/modules/control-bar/view.js +96 -28
  117. package/lib/modules/dialog/components/confirm/index.js +6 -24
  118. package/lib/modules/dialog/components/dialog-container/component/body.d.ts +1 -0
  119. package/lib/modules/dialog/components/dialog-container/component/body.js +3 -2
  120. package/lib/modules/dialog/components/dialog-container/index.css +8 -1
  121. package/lib/modules/dialog/components/dialog-container/index.d.ts +1 -0
  122. package/lib/modules/dialog/components/dialog-container/index.js +4 -1
  123. package/lib/modules/dialog/components/normal-window/index.d.ts +1 -0
  124. package/lib/modules/dialog/components/normal-window/index.js +3 -1
  125. package/lib/modules/dialog/dialogs/chat/index.js +2 -1
  126. package/lib/modules/dialog/dialogs/control-bar-leave-meeting/index.js +0 -1
  127. package/lib/modules/dialog/dialogs/device-setting/index.d.ts +1 -0
  128. package/lib/modules/dialog/dialogs/device-setting/index.js +4 -2
  129. package/lib/modules/dialog/dialogs/end-meeting/index.d.ts +1 -0
  130. package/lib/modules/dialog/dialogs/end-meeting/index.js +2 -1
  131. package/lib/modules/dialog/dialogs/invite/index.d.ts +1 -0
  132. package/lib/modules/dialog/dialogs/invite/index.js +2 -1
  133. package/lib/modules/dialog/dialogs/mute-all/index.d.ts +1 -0
  134. package/lib/modules/dialog/dialogs/mute-all/index.js +2 -1
  135. package/lib/modules/dialog/dialogs/participant/index.js +9 -2
  136. package/lib/modules/dialog/dialogs/pre-setting/index.d.ts +3 -3
  137. package/lib/modules/dialog/dialogs/pre-setting/index.js +25 -20
  138. package/lib/modules/dialog/dialogs/share-screen-selection/index.js +1 -1
  139. package/lib/modules/dialog/dialogs/sub-window/index.js +1 -7
  140. package/lib/modules/dialog/dialogs/toast/index.d.ts +1 -1
  141. package/lib/modules/dialog/dialogs/toast/index.js +1 -1
  142. package/lib/modules/dialog/dialogs/video-window/index.d.ts +4 -1
  143. package/lib/modules/dialog/dialogs/video-window/index.js +5 -2
  144. package/lib/modules/dialog/dialogs/widget/electron.d.ts +6 -0
  145. package/lib/modules/dialog/dialogs/widget/electron.js +38 -0
  146. package/lib/modules/dialog/dialogs/widget/index.d.ts +2 -0
  147. package/lib/modules/dialog/dialogs/widget/index.js +11 -3
  148. package/lib/modules/dialog/hooks/use-popover-watcher.js +1 -3
  149. package/lib/modules/dialog/hooks/useElectron.d.ts +28 -0
  150. package/lib/modules/dialog/hooks/useElectron.js +277 -0
  151. package/lib/modules/dialog/index.css +6 -2
  152. package/lib/modules/dialog/level-config.d.ts +1 -0
  153. package/lib/modules/dialog/level-config.js +2 -1
  154. package/lib/modules/dialog/store.base.d.ts +2 -0
  155. package/lib/modules/dialog/store.browser.d.ts +2 -0
  156. package/lib/modules/dialog/store.browser.js +6 -1
  157. package/lib/modules/dialog/store.d.ts +135 -0
  158. package/lib/modules/dialog/store.electron.d.ts +9 -1
  159. package/lib/modules/dialog/store.electron.js +64 -4
  160. package/lib/modules/dialog/store.js +616 -0
  161. package/lib/modules/dialog/type.d.ts +3 -0
  162. package/lib/modules/event-confirm/components/window/index.d.ts +7 -0
  163. package/lib/modules/event-confirm/components/window/index.js +221 -0
  164. package/lib/modules/event-confirm/index.css +24 -0
  165. package/lib/modules/event-confirm/index.d.ts +27 -0
  166. package/lib/modules/event-confirm/index.js +76 -0
  167. package/lib/modules/event-confirm/store.d.ts +50 -0
  168. package/lib/modules/event-confirm/store.js +394 -0
  169. package/lib/modules/event-confirm/view.d.ts +2 -0
  170. package/lib/modules/event-confirm/view.js +55 -0
  171. package/lib/modules/event-toast/index.css +0 -1
  172. package/lib/modules/event-toast/index.js +1 -0
  173. package/lib/modules/event-toast/store.base.d.ts +2 -0
  174. package/lib/modules/event-toast/store.base.js +40 -21
  175. package/lib/modules/event-toast/store.d.ts +9 -5
  176. package/lib/modules/event-toast/store.electron.d.ts +2 -0
  177. package/lib/modules/event-toast/store.electron.js +19 -9
  178. package/lib/modules/event-toast/store.js +57 -39
  179. package/lib/modules/layout/components/CommonVideoRenderer.js +1 -0
  180. package/lib/modules/layout/store.d.ts +176 -0
  181. package/lib/modules/layout/store.electron.js +1 -1
  182. package/lib/modules/layout/store.js +1452 -0
  183. package/lib/modules/participant/components/confirm-input/index.js +1 -1
  184. package/lib/modules/participant/store.base.d.ts +30 -3
  185. package/lib/modules/participant/store.base.js +249 -96
  186. package/lib/modules/participant/store.browser.js +4 -3
  187. package/lib/modules/participant/store.d.ts +222 -0
  188. package/lib/modules/participant/store.electron.js +5 -3
  189. package/lib/modules/participant/store.js +1929 -0
  190. package/lib/modules/pc-audio-connect/index.d.ts +22 -0
  191. package/lib/modules/pc-audio-connect/index.js +67 -0
  192. package/lib/modules/pc-audio-connect/main-scene/store.js +1 -0
  193. package/lib/modules/pc-audio-connect/store.d.ts +46 -0
  194. package/lib/modules/pc-audio-connect/store.js +304 -0
  195. package/lib/modules/secondary-window/store.d.ts +1 -1
  196. package/lib/modules/secondary-window/store.js +14 -22
  197. package/lib/modules/secondary-window/view.js +10 -10
  198. package/lib/modules/setting/audio-settings/audio-settings.js +0 -17
  199. package/lib/modules/setting/dialog-wrapper.d.ts +2 -0
  200. package/lib/modules/setting/dialog-wrapper.js +110 -0
  201. package/lib/modules/setting/index.js +1 -1
  202. package/lib/modules/setting/state/index.js +1 -1
  203. package/lib/modules/setting/store.base.d.ts +5 -2
  204. package/lib/modules/setting/store.base.js +72 -26
  205. package/lib/modules/setting/store.d.ts +261 -0
  206. package/lib/modules/setting/store.js +1321 -0
  207. package/lib/modules/share-screen/components/selection/index.css +4 -0
  208. package/lib/modules/share-screen/store.base.js +17 -4
  209. package/lib/modules/share-screen/store.d.ts +148 -0
  210. package/lib/modules/share-screen/store.electron.js +5 -2
  211. package/lib/modules/share-screen/store.js +960 -0
  212. package/lib/modules/share-screen/types.d.ts +26 -0
  213. package/lib/modules/share-screen/types.js +6 -0
  214. package/lib/modules/state-bar/layout-config.js +6 -0
  215. package/lib/modules/state-bar/main-scene/store.base.d.ts +2 -0
  216. package/lib/modules/state-bar/main-scene/store.base.js +6 -0
  217. package/lib/modules/state-bar/store.d.ts +124 -0
  218. package/lib/modules/state-bar/store.js +664 -0
  219. package/lib/modules/video-window/index.css +6 -0
  220. package/lib/modules/video-window/popover-watcher.d.ts +5 -10
  221. package/lib/modules/video-window/popover-watcher.js +34 -31
  222. package/lib/modules/video-window/store.d.ts +32 -5
  223. package/lib/modules/video-window/store.js +156 -63
  224. package/lib/modules/video-window/view.js +50 -1
  225. package/lib/modules/whiteboard/components/progress/electron.d.ts +1 -0
  226. package/lib/modules/whiteboard/components/progress/electron.js +33 -0
  227. package/lib/modules/whiteboard/index.d.ts +1 -1
  228. package/lib/modules/whiteboard/index.js +1 -1
  229. package/lib/modules/whiteboard/store.d.ts +3 -0
  230. package/lib/modules/whiteboard/store.js +31 -2
  231. package/lib/modules/whiteboard/view.js +10 -1
  232. package/lib/modules/widget/sdk.js +1 -1
  233. package/lib/modules/widget/store.base.d.ts +1 -0
  234. package/lib/modules/widget/store.browser.d.ts +1 -0
  235. package/lib/modules/widget/store.browser.js +60 -4
  236. package/lib/modules/widget/store.d.ts +5 -8
  237. package/lib/modules/widget/store.electron.d.ts +1 -0
  238. package/lib/modules/widget/store.electron.js +59 -2
  239. package/lib/modules/widget/store.js +4 -47
  240. package/lib/modules/widget/type.d.ts +3 -2
  241. package/lib/modules/widget/view.js +9 -4
  242. package/lib/modules/widget/web-widget.d.ts +2 -1
  243. package/lib/modules/widget/web-widget.js +7 -5
  244. package/lib/object-manager.d.ts +2 -2
  245. package/lib/object-manager.js +1 -1
  246. package/lib/providers/annotation-provider.d.ts +124 -0
  247. package/lib/providers/annotation-provider.js +369 -0
  248. package/lib/providers/board-share/bar-control/base.d.ts +1 -1
  249. package/lib/providers/board-share/bar-control/base.js +37 -28
  250. package/lib/providers/board-share/bar-control/electron.d.ts +1 -1
  251. package/lib/providers/board-share/bar-control/electron.js +19 -16
  252. package/lib/providers/board-share/provider.base.d.ts +8 -1
  253. package/lib/providers/board-share/provider.base.js +12 -2
  254. package/lib/providers/board-share/provider.browser.d.ts +3 -0
  255. package/lib/providers/board-share/provider.browser.js +21 -3
  256. package/lib/providers/device-provider.d.ts +16 -2
  257. package/lib/providers/device-provider.js +53 -60
  258. package/lib/providers/dialog/provider.base.d.ts +1 -0
  259. package/lib/providers/dialog/provider.browser.d.ts +1 -0
  260. package/lib/providers/dialog/provider.browser.js +7 -2
  261. package/lib/providers/dialog/provider.electron.d.ts +4 -1
  262. package/lib/providers/dialog/provider.electron.js +94 -2
  263. package/lib/providers/dialog/type.d.ts +7 -0
  264. package/lib/providers/dialog-provider.d.ts +137 -0
  265. package/lib/providers/dialog-provider.js +194 -0
  266. package/lib/providers/message-provider.d.ts +69 -0
  267. package/lib/providers/message-provider.js +140 -0
  268. package/lib/providers/mouse-detect/provider.d.ts +9 -1
  269. package/lib/providers/mouse-detect/provider.js +119 -5
  270. package/lib/providers/mouse-detect/struct.d.ts +2 -1
  271. package/lib/providers/mouse-detect/struct.js +1 -0
  272. package/lib/providers/mouse-detect/type.d.ts +2 -0
  273. package/lib/providers/multi-display-provider.d.ts +3 -5
  274. package/lib/providers/multi-display-provider.js +0 -9
  275. package/lib/providers/renderer-provider.d.ts +5 -0
  276. package/lib/providers/renderer-provider.js +5 -0
  277. package/lib/providers/room-provider/room-provider.d.ts +4 -14
  278. package/lib/providers/room-provider/room-provider.js +28 -39
  279. package/lib/providers/room-provider.d.ts +194 -0
  280. package/lib/providers/room-provider.js +916 -0
  281. package/lib/providers/screen-share/provider.base.js +3 -11
  282. package/lib/providers/screen-share/provider.browser.js +23 -14
  283. package/lib/providers/screen-share/provider.electron.d.ts +1 -0
  284. package/lib/providers/screen-share/provider.electron.js +44 -17
  285. package/lib/providers/screen-share/strategy/browser.js +16 -13
  286. package/lib/providers/screen-share/strategy/electron.d.ts +2 -2
  287. package/lib/providers/screen-share/strategy/electron.js +15 -10
  288. package/lib/providers/screen-share/strategy/type.d.ts +6 -0
  289. package/lib/providers/screen-share/stream-state-sync.d.ts +3 -2
  290. package/lib/providers/screen-share/stream-state-sync.js +26 -16
  291. package/lib/providers/screen-share/struct.d.ts +9 -7
  292. package/lib/providers/screen-share/struct.js +11 -8
  293. package/lib/providers/screen-share/type.d.ts +7 -1
  294. package/lib/providers/screen-share-provider.d.ts +245 -0
  295. package/lib/providers/screen-share-provider.js +850 -0
  296. package/lib/providers/sharing-provider.d.ts +42 -0
  297. package/lib/providers/sharing-provider.js +228 -0
  298. package/lib/providers/user-setting-storage-provider.d.ts +21 -0
  299. package/lib/providers/user-setting-storage-provider.js +65 -0
  300. package/lib/providers/whiteboard-provider.d.ts +2 -4
  301. package/lib/providers/whiteboard-provider.js +4 -7
  302. package/lib/providers/widget-provider.d.ts +5 -3
  303. package/lib/providers/widget-provider.js +12 -18
  304. package/lib/providers/window/main-window.d.ts +0 -5
  305. package/lib/providers/window/main-window.js +3 -44
  306. package/lib/providers/window/renderer-window.d.ts +1 -0
  307. package/lib/providers/window/renderer-window.js +13 -2
  308. package/lib/runtime.d.ts +1 -0
  309. package/lib/runtime.js +2 -1
  310. package/lib/scenes/main-scene.js +5 -0
  311. package/lib/shared-context/board-context.d.ts +2 -0
  312. package/lib/shared-context/board-context.js +2 -0
  313. package/lib/shared-data/member-data.d.ts +0 -8
  314. package/lib/shared-data/member-data.js +26 -78
  315. package/lib/shared-data/widget-data.d.ts +13 -0
  316. package/lib/shared-data/widget-data.js +50 -0
  317. package/lib/shared-data-source/annotation-data.d.ts +17 -0
  318. package/lib/{modules/action-bar/store.base.js → shared-data-source/annotation-data.js} +34 -41
  319. package/lib/shared-data-source/app-list-data.d.ts +34 -0
  320. package/lib/shared-data-source/app-list-data.js +133 -0
  321. package/lib/shared-data-source/chat-data.d.ts +25 -0
  322. package/lib/shared-data-source/chat-data.js +139 -0
  323. package/lib/shared-data-source/config.d.ts +35 -0
  324. package/lib/shared-data-source/config.js +40 -0
  325. package/lib/shared-data-source/confirm-data.d.ts +44 -0
  326. package/lib/shared-data-source/confirm-data.js +201 -0
  327. package/lib/shared-data-source/device-privilege-data.d.ts +8 -0
  328. package/lib/shared-data-source/device-privilege-data.js +25 -0
  329. package/lib/shared-data-source/interpreter.d.ts +77 -0
  330. package/lib/shared-data-source/interpreter.js +247 -0
  331. package/lib/shared-data-source/layout-data.d.ts +31 -0
  332. package/lib/shared-data-source/layout-data.js +189 -0
  333. package/lib/shared-data-source/meeting-time.d.ts +90 -0
  334. package/lib/shared-data-source/meeting-time.js +416 -0
  335. package/lib/shared-data-source/member-data.d.ts +139 -0
  336. package/lib/shared-data-source/member-data.js +517 -0
  337. package/lib/shared-data-source/pin-data.d.ts +13 -0
  338. package/lib/{modules/action-bar/waiting-scene/store.js → shared-data-source/pin-data.js} +55 -35
  339. package/lib/shared-data-source/screen-share-data.d.ts +357 -0
  340. package/lib/shared-data-source/screen-share-data.js +513 -0
  341. package/lib/shared-data-source/security-data.d.ts +39 -0
  342. package/lib/shared-data-source/security-data.js +156 -0
  343. package/lib/shared-data-source/setting.d.ts +67 -0
  344. package/lib/shared-data-source/setting.js +220 -0
  345. package/lib/shared-data-source/speaker-spotlight.d.ts +5 -0
  346. package/lib/shared-data-source/speaker-spotlight.js +15 -0
  347. package/lib/shared-data-source/video-window.d.ts +165 -0
  348. package/lib/shared-data-source/video-window.js +1266 -0
  349. package/lib/shared-data-source/waiting-room.d.ts +46 -0
  350. package/lib/shared-data-source/waiting-room.js +222 -0
  351. package/lib/{shared-data → shared-data-source}/whiteboard-data.d.ts +2 -2
  352. package/lib/{shared-data → shared-data-source}/whiteboard-data.js +23 -17
  353. package/lib/translations/enUS.d.ts +0 -2
  354. package/lib/translations/enUS.js +4 -6
  355. package/lib/translations/zhCN.d.ts +0 -2
  356. package/lib/translations/zhCN.js +4 -6
  357. package/lib/type.d.ts +5 -0
  358. package/lib/ui-scene.d.ts +2 -4
  359. package/lib/ui-scene.js +31 -42
  360. package/lib/utilities/board-context.d.ts +4 -0
  361. package/lib/utilities/board-context.js +12 -0
  362. package/lib/utilities/constant.d.ts +3 -1
  363. package/lib/utilities/constant.js +5 -2
  364. package/lib/utilities/copyText.d.ts +2 -0
  365. package/lib/utilities/copyText.js +48 -0
  366. package/lib/utilities/default-config.d.ts +18 -0
  367. package/lib/utilities/default-config.js +19 -1
  368. package/lib/utilities/focus-helper.js +10 -3
  369. package/lib/utilities/logger.js +3 -1
  370. package/lib/utilities/renderer-event.d.ts +10 -0
  371. package/lib/utilities/renderer-event.js +95 -0
  372. package/lib/utilities/renderer.d.ts +1 -0
  373. package/lib/utilities/renderer.js +7 -1
  374. package/lib/utilities/screen-capture-permission.d.ts +2 -0
  375. package/lib/utilities/screen-capture-permission.js +24 -0
  376. package/lib/utilities/screen.d.ts +3 -0
  377. package/lib/utilities/screen.js +53 -0
  378. package/lib/utilities/video-track-render-context.d.ts +6 -0
  379. package/lib/utilities/video-track-render-context.js +9 -0
  380. package/lib/waiting-room-control-manager.d.ts +28 -0
  381. package/lib/waiting-room-control-manager.js +230 -0
  382. package/package.json +5 -5
  383. package/public/index.html +35 -4
  384. package/lib/modules/action-bar/store.base.d.ts +0 -15
  385. package/lib/modules/action-bar/waiting-scene/store.d.ts +0 -6
  386. package/lib/providers/board-share/bar-control.d.ts +0 -51
  387. package/lib/providers/board-share/bar-control.js +0 -390
  388. package/lib/providers/board-share/provider.d.ts +0 -66
  389. package/lib/providers/board-share/provider.js +0 -456
  390. package/lib/providers/screen-share/provider.d.ts +0 -69
  391. package/lib/providers/screen-share/provider.js +0 -615
  392. package/lib/providers/window/browser-window-proxy.js +0 -1
  393. package/lib/providers/window/ipc-protocol.d.ts +0 -0
  394. package/lib/providers/window/ipc-protocol.js +0 -1
  395. package/lib/providers/window/main-process-handler.d.ts +0 -0
  396. package/lib/providers/window/main-process-handler.js +0 -1
  397. package/lib/providers/window/main-process-integration.d.ts +0 -0
  398. package/lib/providers/window/main-process-integration.js +0 -1
  399. package/lib/utilities/ipc-protocol.d.ts +0 -91
  400. package/lib/utilities/ipc-protocol.js +0 -61
  401. /package/lib/{providers/window/browser-window-proxy.d.ts → modules/action-bar/index.dev.d.ts} +0 -0
@@ -0,0 +1,916 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.symbol.description.js");
5
+ require("core-js/modules/es.symbol.to-primitive.js");
6
+ require("core-js/modules/es.array.filter.js");
7
+ require("core-js/modules/es.array.is-array.js");
8
+ require("core-js/modules/es.array.push.js");
9
+ require("core-js/modules/es.date.to-primitive.js");
10
+ require("core-js/modules/es.function.name.js");
11
+ require("core-js/modules/es.number.constructor.js");
12
+ require("core-js/modules/es.object.create.js");
13
+ require("core-js/modules/es.object.define-properties.js");
14
+ require("core-js/modules/es.object.define-property.js");
15
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
16
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
17
+ require("core-js/modules/es.object.keys.js");
18
+ require("core-js/modules/esnext.function.metadata.js");
19
+ require("core-js/modules/esnext.iterator.filter.js");
20
+ require("core-js/modules/esnext.symbol.metadata.js");
21
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
22
+ var _typeof = require("@babel/runtime/helpers/typeof");
23
+ Object.defineProperty(exports, "__esModule", {
24
+ value: true
25
+ });
26
+ exports.FcrUIWaitingRoomControlProviderImpl = exports.FcrUIRoomProviderImpl = exports.FcrUIMainRoomControlProviderImpl = exports.FcrUICurrentRoomControlProviderImpl = exports.FcrUIConnectionProviderImpl = void 0;
27
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
28
+ require("core-js/modules/es.error.cause.js");
29
+ require("core-js/modules/es.error.to-string.js");
30
+ require("core-js/modules/es.array.concat.js");
31
+ require("core-js/modules/es.array.find.js");
32
+ require("core-js/modules/es.array.for-each.js");
33
+ require("core-js/modules/es.array.includes.js");
34
+ require("core-js/modules/es.array.iterator.js");
35
+ require("core-js/modules/es.array.some.js");
36
+ require("core-js/modules/es.function.bind.js");
37
+ require("core-js/modules/es.map.js");
38
+ require("core-js/modules/es.object.to-string.js");
39
+ require("core-js/modules/es.object.values.js");
40
+ require("core-js/modules/es.string.iterator.js");
41
+ require("core-js/modules/es.weak-map.js");
42
+ require("core-js/modules/esnext.iterator.constructor.js");
43
+ require("core-js/modules/esnext.iterator.find.js");
44
+ require("core-js/modules/esnext.iterator.for-each.js");
45
+ require("core-js/modules/esnext.iterator.some.js");
46
+ require("core-js/modules/esnext.map.delete-all.js");
47
+ require("core-js/modules/esnext.map.emplace.js");
48
+ require("core-js/modules/esnext.map.every.js");
49
+ require("core-js/modules/esnext.map.filter.js");
50
+ require("core-js/modules/esnext.map.find.js");
51
+ require("core-js/modules/esnext.map.find-key.js");
52
+ require("core-js/modules/esnext.map.includes.js");
53
+ require("core-js/modules/esnext.map.key-of.js");
54
+ require("core-js/modules/esnext.map.map-keys.js");
55
+ require("core-js/modules/esnext.map.map-values.js");
56
+ require("core-js/modules/esnext.map.merge.js");
57
+ require("core-js/modules/esnext.map.reduce.js");
58
+ require("core-js/modules/esnext.map.some.js");
59
+ require("core-js/modules/esnext.map.update.js");
60
+ require("core-js/modules/esnext.weak-map.delete-all.js");
61
+ require("core-js/modules/esnext.weak-map.emplace.js");
62
+ require("core-js/modules/web.dom-collections.for-each.js");
63
+ require("core-js/modules/web.dom-collections.iterator.js");
64
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
65
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
66
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
67
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
68
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
69
+ var _fcrCore = require("fcr-core");
70
+ var _logger = require("agora-foundation/lib/logger");
71
+ var _type = require("fcr-core/lib/room-control/type");
72
+ var _type2 = require("fcr-core/lib/room-control/privilege-control/type");
73
+ var _type3 = require("fcr-core/lib/type");
74
+ var _observable = require("agora-foundation/lib/utilities/observable");
75
+ var _type4 = require("../type");
76
+ var _constant = require("../utilities/constant");
77
+ var _base = require("../base");
78
+ var _privilegeProvider = require("./privilege-provider");
79
+ var _i18n = require("agora-ui-foundation/lib/i18n");
80
+ var _mobx = require("mobx");
81
+ var _type5 = require("agora-ui-foundation/lib/components/icon/type");
82
+ var _type6 = require("../modules/whiteboard/type");
83
+ var _waitingRoomControlManager = _interopRequireDefault(require("../waiting-room-control-manager"));
84
+ var _meetingDetail = require("../utilities/meeting-detail");
85
+ var _decorator = require("agora-foundation/lib/decorator");
86
+ var _FcrUIRoomProviderImpl, _FcrUIMainRoomControlProviderImpl;
87
+ var _initProto, _init_liveStreamingState, _init_liveStreamingConfig, _init_cloudRecordingState, _initBaseRoomStateDecs, _ref, _initProto2, _init_privilegeOperator, _init_boardOwnerUser, _handleSecurityUpdatedDecs, _ref3;
88
+ 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; }
89
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
90
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
91
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
92
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
93
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
94
+ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
95
+ function _applyDecs(e, t, r, n, o, a) { function i(e, t, r) { return function (n, o) { return r && r(n), e[t].call(n, o); }; } function c(e, t) { for (var r = 0; r < e.length; r++) e[r].call(t); return t; } function s(e, t, r, n) { if ("function" != typeof e && (n || void 0 !== e)) throw new TypeError(t + " must " + (r || "be") + " a function" + (n ? "" : " or undefined")); return e; } function applyDec(e, t, r, n, o, a, c, u, l, f, p, d, h) { function m(e) { if (!h(e)) throw new TypeError("Attempted to access private element on non-instance"); } var y, v = t[0], g = t[3], b = !u; if (!b) { r || Array.isArray(v) || (v = [v]); var w = {}, S = [], A = 3 === o ? "get" : 4 === o || d ? "set" : "value"; f ? (p || d ? w = { get: _setFunctionName(function () { return g(this); }, n, "get"), set: function set(e) { t[4](this, e); } } : w[A] = g, p || _setFunctionName(w[A], n, 2 === o ? "" : A)) : p || (w = Object.getOwnPropertyDescriptor(e, n)); } for (var P = e, j = v.length - 1; j >= 0; j -= r ? 2 : 1) { var D = v[j], E = r ? v[j - 1] : void 0, I = {}, O = { kind: ["field", "accessor", "method", "getter", "setter", "class"][o], name: n, metadata: a, addInitializer: function (e, t) { if (e.v) throw Error("attempted to call addInitializer after decoration was finished"); s(t, "An initializer", "be", !0), c.push(t); }.bind(null, I) }; try { if (b) (y = s(D.call(E, P, O), "class decorators", "return")) && (P = y);else { var k, F; O["static"] = l, O["private"] = f, f ? 2 === o ? k = function k(e) { return m(e), w.value; } : (o < 4 && (k = i(w, "get", m)), 3 !== o && (F = i(w, "set", m))) : (k = function k(e) { return e[n]; }, (o < 2 || 4 === o) && (F = function F(e, t) { e[n] = t; })); var N = O.access = { has: f ? h.bind() : function (e) { return n in e; } }; if (k && (N.get = k), F && (N.set = F), P = D.call(E, d ? { get: w.get, set: w.set } : w[A], O), d) { if ("object" == _typeof(P) && P) (y = s(P.get, "accessor.get")) && (w.get = y), (y = s(P.set, "accessor.set")) && (w.set = y), (y = s(P.init, "accessor.init")) && S.push(y);else if (void 0 !== P) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0"); } else s(P, (p ? "field" : "method") + " decorators", "return") && (p ? S.push(P) : w[A] = P); } } finally { I.v = !0; } } return (p || d) && u.push(function (e, t) { for (var r = S.length - 1; r >= 0; r--) t = S[r].call(e, t); return t; }), p || b || (f ? d ? u.push(i(w, "get"), i(w, "set")) : u.push(2 === o ? w[A] : i.call.bind(w[A])) : Object.defineProperty(e, n, w)), P; } function u(e, t) { return Object.defineProperty(e, Symbol.metadata || Symbol["for"]("Symbol.metadata"), { configurable: !0, enumerable: !0, value: t }); } if (arguments.length >= 6) var l = a[Symbol.metadata || Symbol["for"]("Symbol.metadata")]; var f = Object.create(null == l ? null : l), p = function (e, t, r, n) { var o, a, i = [], s = function s(t) { return _checkInRHS(t) === e; }, u = new Map(); function l(e) { e && i.push(c.bind(null, e)); } for (var f = 0; f < t.length; f++) { var p = t[f]; if (Array.isArray(p)) { var d = p[1], h = p[2], m = p.length > 3, y = 16 & d, v = !!(8 & d), g = 0 == (d &= 7), b = h + "/" + v; if (!g && !m) { var w = u.get(b); if (!0 === w || 3 === w && 4 !== d || 4 === w && 3 !== d) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h); u.set(b, !(d > 2) || d); } applyDec(v ? e : e.prototype, p, y, m ? "#" + h : _toPropertyKey(h), d, n, v ? a = a || [] : o = o || [], i, v, m, g, 1 === d, v && m ? s : r); } } return l(o), l(a), i; }(e, t, o, f); return r.length || u(e, f), { e: p, get c() { var t = []; return r.length && [u(applyDec(e, [r], n, e.name, 5, f, t), f), c.bind(null, t, e)]; } }; }
96
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
97
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
98
+ function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.description) ? "[" + t + "]" : ""); try { Object.defineProperty(e, "name", { configurable: !0, value: n ? n + " " + t : t }); } catch (e) {} return e; }
99
+ function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? _typeof(e) : "null")); return e; }
100
+ var _A = /*#__PURE__*/new WeakMap();
101
+ var _B = /*#__PURE__*/new WeakMap();
102
+ var _C = /*#__PURE__*/new WeakMap();
103
+ _ref = (_initBaseRoomStateDecs = [_mobx.action, _mobx.action.bound], "logger");
104
+ var FcrUIRoomProviderImpl = exports.FcrUIRoomProviderImpl = /*#__PURE__*/function () {
105
+ function FcrUIRoomProviderImpl(_eventProvider, _sceneConfig, _engine, _messageProvider) {
106
+ var _this = this;
107
+ (0, _classCallCheck2["default"])(this, FcrUIRoomProviderImpl);
108
+ (0, _defineProperty2["default"])(this, _ref, (_initProto(this), (0, _logger.getLogger)()));
109
+ (0, _defineProperty2["default"])(this, "_observable", new _observable.AgoraObservable());
110
+ // 标识是不是自己登陆房间
111
+ (0, _defineProperty2["default"])(this, "_isSelfJoinRoom", false);
112
+ (0, _defineProperty2["default"])(this, "_waitingRoomManagerObserver", {
113
+ onWaitingRoomControlCreated: function onWaitingRoomControlCreated(roomControl) {
114
+ _this._observable.notifyObservers('onJoinWaitingRoom', roomControl, true);
115
+ },
116
+ onWaitingRoomControlLeft: function onWaitingRoomControlLeft() {
117
+ _this._observable.notifyObservers('onWaitingRoomManageCanceled');
118
+ _this._messageProvider.closeNotification(_type4.FcrUINotificationContentType.WAITING_ROOM);
119
+ }
120
+ });
121
+ (0, _defineProperty2["default"])(this, "_isSelfEndMeeting", false);
122
+ (0, _defineProperty2["default"])(this, "_roomRouterObserver", {
123
+ onRoomRouteSwitched: function onRoomRouteSwitched() {
124
+ var _this$currentRoomCont, _this$currentRoomCont2;
125
+ _this._lastRoomControlType = (_this$currentRoomCont = _this.currentRoomControl.getRoomInfo()) === null || _this$currentRoomCont === void 0 ? void 0 : _this$currentRoomCont.roomType;
126
+ //缓存当前用户会中角色
127
+ var userRole = _this.currentRoomControl.getUserControl().getLocalUser().userRole;
128
+ var userName = _this.currentRoomControl.getUserControl().getLocalUser().userName;
129
+ // 通知房间切换开始
130
+ _this._observable.notifyObservers('onRoomRouteSwitched');
131
+ if (((_this$currentRoomCont2 = _this.currentRoomControl.getRoomInfo()) === null || _this$currentRoomCont2 === void 0 ? void 0 : _this$currentRoomCont2.roomType) === _type.FcrRoomType.Mainroom) {
132
+ _this._observable.notifyObservers('onLeaveMainRoom');
133
+ } else {
134
+ _this._observable.notifyObservers('onLeaveWaitingRoom');
135
+ }
136
+ _this._isSelfJoinRoom = false;
137
+ _this._roomRouter.joinRoom(_objectSpread(_objectSpread({}, _this._getJoinRoomOption()), {}, {
138
+ userRole: userRole,
139
+ userName: userName
140
+ }));
141
+ },
142
+ onRoomJoined: function onRoomJoined(roomControl) {
143
+ var _roomControl$getRoomI;
144
+ // nextStep: FcrRoomControlType
145
+ _this._currentRoomControl = roomControl;
146
+ _this._roomInfo = roomControl.getRoomInfo();
147
+ _this._roomSchedule = roomControl.getRoomSchedule();
148
+ _this._localUserInfo = roomControl.getUserControl().getLocalUser();
149
+ _this._currentRoomControl.addObserver(_this._baseRoomControlObserver);
150
+ _this._currentRoomControl.getUserControl().addObserver(_this._userControlObserver);
151
+ _this._initBaseRoomState(_this._currentRoomControl);
152
+ var roomType = (_roomControl$getRoomI = roomControl.getRoomInfo()) === null || _roomControl$getRoomI === void 0 ? void 0 : _roomControl$getRoomI.roomType;
153
+ if (roomType === _type.FcrRoomType.Mainroom) {
154
+ _this._waitingRoomManager = new _waitingRoomControlManager["default"](_this._sceneConfig, _this._engine, roomControl);
155
+ _this._waitingRoomManager.addObserver(_this._waitingRoomManagerObserver);
156
+ } else if (roomType === _type.FcrRoomType.Waitingroom) {
157
+ if (_this._isSelfJoinRoom || _this._lastRoomControlType === _type.FcrRoomType.JoinBeforeHostWaitingRoom) {
158
+ roomControl.sendRoomMessage({
159
+ messageKey: _type3.RoomMessageKey.USER_WAITING_ROOM_JOINED
160
+ }, false);
161
+ }
162
+ }
163
+ _this._observable.notifyObservers('onRoutingChanged', roomControl);
164
+ },
165
+ onErrorOccurred: function onErrorOccurred(error) {
166
+ // 如果是自己点击加入房间 会触发onLunchFailure 不应该直接onExited
167
+ if (!_this._isSelfJoinRoom) {
168
+ _this._observable.notifyObservers('onExitRoom');
169
+ }
170
+ }
171
+ });
172
+ _classPrivateFieldInitSpec(this, _A, _init_liveStreamingState(this, _type3.FcrLiveStreamingState.STOPPED));
173
+ _classPrivateFieldInitSpec(this, _B, _init_liveStreamingConfig(this, undefined));
174
+ _classPrivateFieldInitSpec(this, _C, _init_cloudRecordingState(this, _type3.FcrRecordingState.Stopped));
175
+ this._eventProvider = _eventProvider;
176
+ this._sceneConfig = _sceneConfig;
177
+ this._engine = _engine;
178
+ this._messageProvider = _messageProvider;
179
+ //@ts-ignore
180
+ window.roomStore = this;
181
+ this._baseRoomControlObserver = {
182
+ onRoomStateUpdated: function onRoomStateUpdated(roomId, state) {
183
+ if (state === _type3.FcrRoomState.Closed) {
184
+ _this._observable.notifyObservers('onRoomClosed');
185
+ }
186
+ },
187
+ onCloudRecordingStateUpdated: (0, _mobx.action)(function (roomId, state) {
188
+ _this.cloudRecordingState = state;
189
+ }),
190
+ onLiveStreamingStateUpdated: (0, _mobx.action)(function (roomId, state) {
191
+ _this.liveStreamingState = state;
192
+ _this.liveStreamingConfig = _this.currentRoomControl.getLiveStreamingConfig();
193
+ })
194
+ };
195
+ this._userControlObserver = {
196
+ onLocalUserKickedOut: function onLocalUserKickedOut() {
197
+ _this._observable.notifyObservers('onLocalUserKickedOut');
198
+ }
199
+ };
200
+ this._roomRouter = this._engine.createRoomRouter(this._sceneConfig.roomId);
201
+ this._roomRouter.addObserver(this._roomRouterObserver);
202
+ }
203
+ return (0, _createClass2["default"])(FcrUIRoomProviderImpl, [{
204
+ key: "liveStreamingState",
205
+ get: function get() {
206
+ return _classPrivateFieldGet(_A, this);
207
+ },
208
+ set: function set(v) {
209
+ _classPrivateFieldSet(_A, this, v);
210
+ }
211
+ }, {
212
+ key: "liveStreamingConfig",
213
+ get: function get() {
214
+ return _classPrivateFieldGet(_B, this);
215
+ },
216
+ set: function set(v) {
217
+ _classPrivateFieldSet(_B, this, v);
218
+ }
219
+ }, {
220
+ key: "cloudRecordingState",
221
+ get: function get() {
222
+ return _classPrivateFieldGet(_C, this);
223
+ },
224
+ set: function set(v) {
225
+ _classPrivateFieldSet(_C, this, v);
226
+ }
227
+ }, {
228
+ key: "getRoomDetailCopyText",
229
+ value: function getRoomDetailCopyText() {
230
+ if (this._currentRoomControl) {
231
+ var _ref2;
232
+ var roomInfo = this._roomInfo;
233
+ var scheduleInfo = this._roomSchedule;
234
+ var duration = (scheduleInfo === null || scheduleInfo === void 0 ? void 0 : scheduleInfo.duration) || 0;
235
+ var meetingSetTime = (0, _meetingDetail.generateMeetingDuration)((scheduleInfo === null || scheduleInfo === void 0 ? void 0 : scheduleInfo.startTime) || 0, duration);
236
+ var meetingId = (_ref2 = this._currentRoomControl.getRoomPropertiesByKeyPath('meetingId')) !== null && _ref2 !== void 0 ? _ref2 : roomInfo === null || roomInfo === void 0 ? void 0 : roomInfo.roomId;
237
+ var copyText = '';
238
+ if (roomInfo) {
239
+ var _this$_localUserInfo;
240
+ copyText = (0, _meetingDetail.generateMeetingDetail)(((_this$_localUserInfo = this._localUserInfo) === null || _this$_localUserInfo === void 0 ? void 0 : _this$_localUserInfo.userName) || '', roomInfo.roomName, meetingSetTime, (roomInfo === null || roomInfo === void 0 ? void 0 : roomInfo.inviteLink) || '', meetingId || '', roomInfo.password || '');
241
+ }
242
+ return copyText;
243
+ } else {
244
+ return '';
245
+ }
246
+ }
247
+
248
+ // get waitingRoomControl() {
249
+ // return this._currentRoomControl as FcrWaitingRoomControl;
250
+ // }
251
+
252
+ // get mainRoomControl() {
253
+ // return this._currentRoomControl as FcrMainRoomControl;
254
+ // }
255
+ }, {
256
+ key: "currentRoomControl",
257
+ get: function get() {
258
+ if (!this._currentRoomControl) {
259
+ throw new Error('currentRoomControl is not initialized');
260
+ }
261
+ return this._currentRoomControl;
262
+ }
263
+ }, {
264
+ key: "waitingRoomManager",
265
+ get: function get() {
266
+ if (!this._waitingRoomManager) {
267
+ throw new Error('waitingRoomManager is not initialized');
268
+ }
269
+ return this._waitingRoomManager;
270
+ }
271
+ }, {
272
+ key: "setIsSelfEndMeeting",
273
+ value: function setIsSelfEndMeeting(isSelfEndMeeting) {
274
+ this._isSelfEndMeeting = isSelfEndMeeting;
275
+ }
276
+ }, {
277
+ key: "isSelfEndMeeting",
278
+ get: function get() {
279
+ return this._isSelfEndMeeting;
280
+ }
281
+ }, {
282
+ key: "release",
283
+ value: function release() {
284
+ var _this$_currentRoomCon;
285
+ (_this$_currentRoomCon = this._currentRoomControl) === null || _this$_currentRoomCon === void 0 || _this$_currentRoomCon.leave();
286
+ this._currentRoomControl = undefined;
287
+ this.setIsSelfEndMeeting(false);
288
+ this._releaseWaitingRoomManager();
289
+ }
290
+ }, {
291
+ key: "_releaseWaitingRoomManager",
292
+ value: function _releaseWaitingRoomManager() {
293
+ var _this$_waitingRoomMan, _this$_waitingRoomMan2;
294
+ (_this$_waitingRoomMan = this._waitingRoomManager) === null || _this$_waitingRoomMan === void 0 || _this$_waitingRoomMan.removeObserver(this._waitingRoomManagerObserver);
295
+ (_this$_waitingRoomMan2 = this._waitingRoomManager) === null || _this$_waitingRoomMan2 === void 0 || _this$_waitingRoomMan2.release();
296
+ this._waitingRoomManager = undefined;
297
+ }
298
+ }, {
299
+ key: "handleJoinRoom",
300
+ value: function () {
301
+ var _handleJoinRoom = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
302
+ var _t;
303
+ return _regenerator["default"].wrap(function (_context) {
304
+ while (1) switch (_context.prev = _context.next) {
305
+ case 0:
306
+ _context.prev = 0;
307
+ this._isSelfJoinRoom = true;
308
+ _context.next = 1;
309
+ return this._roomRouter.joinRoom(this._getJoinRoomOption());
310
+ case 1:
311
+ _context.next = 3;
312
+ break;
313
+ case 2:
314
+ _context.prev = 2;
315
+ _t = _context["catch"](0);
316
+ this._observable.notifyObservers('onJoinMainRoomFailed', _t);
317
+ this.logger.error('handleJoinRoom error', _t);
318
+ throw _t;
319
+ case 3:
320
+ case "end":
321
+ return _context.stop();
322
+ }
323
+ }, _callee, this, [[0, 2]]);
324
+ }));
325
+ function handleJoinRoom() {
326
+ return _handleJoinRoom.apply(this, arguments);
327
+ }
328
+ return handleJoinRoom;
329
+ }()
330
+ }, {
331
+ key: "startLiveStreaming",
332
+ value: function () {
333
+ var _startLiveStreaming = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee2(params) {
334
+ return _regenerator["default"].wrap(function (_context2) {
335
+ while (1) switch (_context2.prev = _context2.next) {
336
+ case 0:
337
+ _context2.next = 1;
338
+ return this.currentRoomControl.startLiveStreaming(params);
339
+ case 1:
340
+ case "end":
341
+ return _context2.stop();
342
+ }
343
+ }, _callee2, this);
344
+ }));
345
+ function startLiveStreaming(_x) {
346
+ return _startLiveStreaming.apply(this, arguments);
347
+ }
348
+ return startLiveStreaming;
349
+ }()
350
+ }, {
351
+ key: "stopLiveStreaming",
352
+ value: function () {
353
+ var _stopLiveStreaming = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee3() {
354
+ return _regenerator["default"].wrap(function (_context3) {
355
+ while (1) switch (_context3.prev = _context3.next) {
356
+ case 0:
357
+ _context3.next = 1;
358
+ return this.currentRoomControl.stopLiveStreaming();
359
+ case 1:
360
+ case "end":
361
+ return _context3.stop();
362
+ }
363
+ }, _callee3, this);
364
+ }));
365
+ function stopLiveStreaming() {
366
+ return _stopLiveStreaming.apply(this, arguments);
367
+ }
368
+ return stopLiveStreaming;
369
+ }()
370
+ }, {
371
+ key: "exitRoom",
372
+ value: function exitRoom() {
373
+ this._observable.notifyObservers('onExitRoom');
374
+ }
375
+ }, {
376
+ key: "startCloudRecording",
377
+ value: function () {
378
+ var _startCloudRecording = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee4() {
379
+ var _this$_currentRoomCon2;
380
+ return _regenerator["default"].wrap(function (_context4) {
381
+ while (1) switch (_context4.prev = _context4.next) {
382
+ case 0:
383
+ _context4.next = 1;
384
+ return (_this$_currentRoomCon2 = this._currentRoomControl) === null || _this$_currentRoomCon2 === void 0 ? void 0 : _this$_currentRoomCon2.startCloudRecording({
385
+ audioProfile: _type3.FcrCloudRecordingAudioProfile.DEFAULT,
386
+ videoEncoderConfig: {
387
+ dimensions: {
388
+ width: 1280,
389
+ height: 720
390
+ },
391
+ bitrate: 1200,
392
+ frameRate: 15,
393
+ isMirror: false
394
+ },
395
+ retryTimeout: 60
396
+ });
397
+ case 1:
398
+ case "end":
399
+ return _context4.stop();
400
+ }
401
+ }, _callee4, this);
402
+ }));
403
+ function startCloudRecording() {
404
+ return _startCloudRecording.apply(this, arguments);
405
+ }
406
+ return startCloudRecording;
407
+ }()
408
+ }, {
409
+ key: "pauseCloudRecording",
410
+ value: function () {
411
+ var _pauseCloudRecording = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee5() {
412
+ var _this$_currentRoomCon3;
413
+ return _regenerator["default"].wrap(function (_context5) {
414
+ while (1) switch (_context5.prev = _context5.next) {
415
+ case 0:
416
+ _context5.next = 1;
417
+ return (_this$_currentRoomCon3 = this._currentRoomControl) === null || _this$_currentRoomCon3 === void 0 ? void 0 : _this$_currentRoomCon3.pauseCloudRecording();
418
+ case 1:
419
+ case "end":
420
+ return _context5.stop();
421
+ }
422
+ }, _callee5, this);
423
+ }));
424
+ function pauseCloudRecording() {
425
+ return _pauseCloudRecording.apply(this, arguments);
426
+ }
427
+ return pauseCloudRecording;
428
+ }()
429
+ }, {
430
+ key: "resumeCloudRecording",
431
+ value: function () {
432
+ var _resumeCloudRecording = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee6() {
433
+ var _this$_currentRoomCon4;
434
+ return _regenerator["default"].wrap(function (_context6) {
435
+ while (1) switch (_context6.prev = _context6.next) {
436
+ case 0:
437
+ _context6.next = 1;
438
+ return (_this$_currentRoomCon4 = this._currentRoomControl) === null || _this$_currentRoomCon4 === void 0 ? void 0 : _this$_currentRoomCon4.resumeCloudRecording();
439
+ case 1:
440
+ case "end":
441
+ return _context6.stop();
442
+ }
443
+ }, _callee6, this);
444
+ }));
445
+ function resumeCloudRecording() {
446
+ return _resumeCloudRecording.apply(this, arguments);
447
+ }
448
+ return resumeCloudRecording;
449
+ }()
450
+ }, {
451
+ key: "stopCloudRecording",
452
+ value: function () {
453
+ var _stopCloudRecording = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee7() {
454
+ var _this$_currentRoomCon5;
455
+ return _regenerator["default"].wrap(function (_context7) {
456
+ while (1) switch (_context7.prev = _context7.next) {
457
+ case 0:
458
+ _context7.next = 1;
459
+ return (_this$_currentRoomCon5 = this._currentRoomControl) === null || _this$_currentRoomCon5 === void 0 ? void 0 : _this$_currentRoomCon5.stopCloudRecording();
460
+ case 1:
461
+ case "end":
462
+ return _context7.stop();
463
+ }
464
+ }, _callee7, this);
465
+ }));
466
+ function stopCloudRecording() {
467
+ return _stopCloudRecording.apply(this, arguments);
468
+ }
469
+ return stopCloudRecording;
470
+ }()
471
+ }, {
472
+ key: "addObserver",
473
+ value: function addObserver(observer) {
474
+ this._observable.addObserver(observer);
475
+ }
476
+ }, {
477
+ key: "removeObserver",
478
+ value: function removeObserver(observer) {
479
+ this._observable.removeObserver(observer);
480
+ }
481
+ }, {
482
+ key: "_getJoinRoomOption",
483
+ value: function _getJoinRoomOption() {
484
+ var config = this._sceneConfig;
485
+ var streams = [{
486
+ streamName: 'default',
487
+ streamType: _type3.FcrStreamType.BOTH,
488
+ videoSourceType: _type3.FcrVideoSourceType.CAMERA,
489
+ audioSourceType: _type3.FcrAudioSourceType.MICROPHONE,
490
+ videoSourceState: _type3.FcrMediaSourceState.CLOSE,
491
+ audioSourceState: _type3.FcrMediaSourceState.CLOSE
492
+ }];
493
+ if (config.userRole === _type3.FcrUserRole.ROBOT) {
494
+ streams = [];
495
+ }
496
+ return {
497
+ userName: config.userName,
498
+ userRole: config.userRole,
499
+ userProperties: config.userProperties,
500
+ streamLatency: _fcrCore.FcrStreamLatencyLevel.ULTRA_LOW,
501
+ createStreamConfigs: streams,
502
+ roomToken: config.roomToken,
503
+ password: config.password,
504
+ avatar: config.avatar
505
+ };
506
+ }
507
+ }, {
508
+ key: "_initBaseRoomState",
509
+ value: function _initBaseRoomState(roomControl) {
510
+ this.liveStreamingState = roomControl.getLiveStreamingState();
511
+ this.liveStreamingConfig = roomControl.getLiveStreamingConfig();
512
+ this.cloudRecordingState = roomControl.getCloudRecordingState();
513
+ }
514
+ }]);
515
+ }();
516
+ _FcrUIRoomProviderImpl = FcrUIRoomProviderImpl;
517
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIRoomProviderImpl, [[_mobx.observable, 1, "liveStreamingState"], [_mobx.observable, 1, "liveStreamingConfig"], [_mobx.observable, 1, "cloudRecordingState"], [_decorator.bound, 2, "getRoomDetailCopyText"], [_initBaseRoomStateDecs, 18, "_initBaseRoomState"]], []).e, 4);
518
+ _init_liveStreamingState = _applyDecs$e[0];
519
+ _init_liveStreamingConfig = _applyDecs$e[1];
520
+ _init_cloudRecordingState = _applyDecs$e[2];
521
+ _initProto = _applyDecs$e[3];
522
+ var FcrUIConnectionProviderImpl = exports.FcrUIConnectionProviderImpl = /*#__PURE__*/function () {
523
+ function FcrUIConnectionProviderImpl(_engine) {
524
+ (0, _classCallCheck2["default"])(this, FcrUIConnectionProviderImpl);
525
+ this._engine = _engine;
526
+ }
527
+ return (0, _createClass2["default"])(FcrUIConnectionProviderImpl, [{
528
+ key: "addObserver",
529
+ value: function addObserver(observer) {
530
+ this._engine.addObserver(observer);
531
+ }
532
+ }, {
533
+ key: "removeObserver",
534
+ value: function removeObserver(observer) {
535
+ this._engine.removeObserver(observer);
536
+ }
537
+ }]);
538
+ }();
539
+ var _A2 = /*#__PURE__*/new WeakMap();
540
+ var _B2 = /*#__PURE__*/new WeakMap();
541
+ _ref3 = (_handleSecurityUpdatedDecs = [_mobx.action, _mobx.action.bound], "_privilegeProvider");
542
+ var FcrUIMainRoomControlProviderImpl = exports.FcrUIMainRoomControlProviderImpl = /*#__PURE__*/function () {
543
+ function FcrUIMainRoomControlProviderImpl(_mainRoomControl, eventProvider, messageProvider, dialogProvider, _sharedInterpreterDataSource) {
544
+ var _this2 = this;
545
+ (0, _classCallCheck2["default"])(this, FcrUIMainRoomControlProviderImpl);
546
+ (0, _defineProperty2["default"])(this, _ref3, void _initProto2(this));
547
+ (0, _defineProperty2["default"])(this, "_userMap", new Map());
548
+ _classPrivateFieldInitSpec(this, _A2, _init_privilegeOperator(this));
549
+ _classPrivateFieldInitSpec(this, _B2, _init_boardOwnerUser(this));
550
+ this._mainRoomControl = _mainRoomControl;
551
+ this._sharedInterpreterDataSource = _sharedInterpreterDataSource;
552
+ this._messageProvider = messageProvider;
553
+ this._dialogProvider = dialogProvider;
554
+ this._eventProvider = eventProvider;
555
+ this._privilegeControl = _mainRoomControl.getPrivilegeControl();
556
+ this._userControl = _mainRoomControl.getUserControl();
557
+ this._privilegeProvider = new _privilegeProvider.FcrUIPrivilegeProviderImpl(_mainRoomControl.getPrivilegeControl(), _mainRoomControl.getUserControl(), _mainRoomControl.getStreamControl(), eventProvider);
558
+
559
+ // @ts-ignore
560
+ window._mainRoomPrivilegeProvider = this._privilegeProvider;
561
+ this._privilegeObserver = {
562
+ onSecurityInfoUpdated: this._handleSecurityUpdated.bind(this)
563
+ };
564
+ this._userObserver = {
565
+ onRemoteUsersJoined: function onRemoteUsersJoined(roomId, events) {
566
+ events.forEach(function (event) {
567
+ _this2._userMap.set(event.userInfo.userId, event.userInfo);
568
+ });
569
+ },
570
+ onRemoteUsersLeft: function onRemoteUsersLeft(roomId, events) {
571
+ events.forEach(function (event) {
572
+ _this2._userMap["delete"](event.userInfo.userId);
573
+ });
574
+ },
575
+ onUserInfoUpdated: function onUserInfoUpdated(roomId, event) {
576
+ if (event.reason === _type3.FcrUserUpdatedReason.ROLE) {
577
+ _this2._userMap.set(event.modifiedUser.userId, event.modifiedUser);
578
+ _this2._handleUserRoleChangeToast(event.modifiedUser);
579
+ }
580
+ }
581
+ };
582
+ var localUser = this._userControl.getLocalUser();
583
+ this._userMap.set(localUser.userId, localUser);
584
+ this._eventObserver = {
585
+ onEvent: function onEvent(action, payload) {
586
+ if (action === _constant.FcrUIAction.WHITEBOARD_CHANGED) {
587
+ if (payload.action === _type6.WhiteboardBaseEvents.SET_OWNER_USER_ID) {
588
+ var _mainRoomControl$getU;
589
+ _this2.boardOwnerUser = Object.values((_mainRoomControl$getU = _mainRoomControl.getUserControl()) === null || _mainRoomControl$getU === void 0 ? void 0 : _mainRoomControl$getU.getUsers()).find(function (u) {
590
+ return u.userId === payload.payload;
591
+ });
592
+ }
593
+ }
594
+ }
595
+ };
596
+ eventProvider.addObserver(this._eventObserver);
597
+ this._privilegeControl.addObserver(this._privilegeObserver);
598
+ this._userControl.addObserver(this._userObserver);
599
+ }
600
+ return (0, _createClass2["default"])(FcrUIMainRoomControlProviderImpl, [{
601
+ key: "privilegeOperator",
602
+ get: function get() {
603
+ return _classPrivateFieldGet(_A2, this);
604
+ },
605
+ set: function set(v) {
606
+ _classPrivateFieldSet(_A2, this, v);
607
+ }
608
+ }, {
609
+ key: "boardOwnerUser",
610
+ get: function get() {
611
+ return _classPrivateFieldGet(_B2, this);
612
+ },
613
+ set: function set(v) {
614
+ _classPrivateFieldSet(_B2, this, v);
615
+ }
616
+ }, {
617
+ key: "mainRoomControl",
618
+ get: function get() {
619
+ return this._mainRoomControl;
620
+ }
621
+ }, {
622
+ key: "privilegeProvider",
623
+ get: function get() {
624
+ return this._privilegeProvider;
625
+ }
626
+ }, {
627
+ key: "_localUser",
628
+ get: function get() {
629
+ return this._mainRoomControl.getUserControl().getLocalUser();
630
+ }
631
+ }, {
632
+ key: "release",
633
+ value: function release() {
634
+ this._eventProvider.removeObserver(this._eventObserver);
635
+ this._privilegeControl.removeObserver(this._privilegeObserver);
636
+ this._userControl.removeObserver(this._userObserver);
637
+ this._privilegeProvider.release();
638
+ }
639
+ }, {
640
+ key: "_handleSecurityUpdated",
641
+ value: function _handleSecurityUpdated(roomId, event) {
642
+ var _event$operatorUser,
643
+ _event$operatorUser2,
644
+ _this$privilegeOperat,
645
+ _securityInfo$info,
646
+ _securityInfo$info2,
647
+ _securityInfo$info3,
648
+ _securityInfo$info4,
649
+ _securityInfo$info5,
650
+ _securityInfo$info6,
651
+ _this3 = this,
652
+ _event$securityInfo$i,
653
+ _event$securityInfo$i2;
654
+ this.privilegeOperator = event.operatorUser;
655
+ var securityInfo = event.securityInfo;
656
+ var enable = securityInfo.enable;
657
+ var isPersonalOperation = this._localUser.userId === ((_event$operatorUser = event.operatorUser) === null || _event$operatorUser === void 0 ? void 0 : _event$operatorUser.userId);
658
+ var toastType = isPersonalOperation ? 'normal' : enable ? 'info' : 'error';
659
+ var operator = isPersonalOperation ? (0, _i18n.transI18n)('fmt_settings_labels_you') : (((_event$operatorUser2 = event.operatorUser) === null || _event$operatorUser2 === void 0 ? void 0 : _event$operatorUser2.userRole) === _type3.FcrUserRole.HOST ? (0, _i18n.transI18n)('fmt_role_host') : (0, _i18n.transI18n)('fmt_role_cohost')) + " ".concat((_this$privilegeOperat = this.privilegeOperator) === null || _this$privilegeOperat === void 0 ? void 0 : _this$privilegeOperat.userName, " ");
660
+ if (((_securityInfo$info = securityInfo.info) === null || _securityInfo$info === void 0 ? void 0 : _securityInfo$info.action) === _type2.FcrSecurityAction.JoinWithMuteAudio) {
661
+ if (enable) {
662
+ this._messageProvider.showToast({
663
+ type: toastType,
664
+ message: (0, _i18n.transI18n)('fmt_settings_tips_muteallwhilejoin', {
665
+ reason1: operator
666
+ })
667
+ });
668
+ }
669
+ } else if (((_securityInfo$info2 = securityInfo.info) === null || _securityInfo$info2 === void 0 ? void 0 : _securityInfo$info2.action) === _type2.FcrSecurityAction.StartAudio) {
670
+ var toastMessage = enable ? (0, _i18n.transI18n)('fmt_settings_tips_allowedselfunmuting') : (0, _i18n.transI18n)('fmt_settings_tips_disabledselfunmuting');
671
+ if (!this._sharedInterpreterDataSource.localInterpreterUserInfo) {
672
+ this._messageProvider.showToast({
673
+ type: enable ? 'normal' : 'error',
674
+ message: toastMessage
675
+ });
676
+ }
677
+ } else if (((_securityInfo$info3 = securityInfo.info) === null || _securityInfo$info3 === void 0 ? void 0 : _securityInfo$info3.action) === _type2.FcrSecurityAction.StartVideo) {
678
+ var _toastMessage = enable ? (0, _i18n.transI18n)('fmt_settings_tips_videoenabled') : (0, _i18n.transI18n)('fmt_settings_tips_disabledvideo');
679
+ this._messageProvider.showToast({
680
+ type: enable ? 'normal' : 'error',
681
+ message: _toastMessage
682
+ });
683
+ } else if (((_securityInfo$info4 = securityInfo.info) === null || _securityInfo$info4 === void 0 ? void 0 : _securityInfo$info4.action) === _type2.FcrSecurityAction.ShareScreen) {
684
+ var _toastMessage2 = enable ? (0, _i18n.transI18n)('fmt_settings_tips_allowedScreensharing', {
685
+ reason1: operator
686
+ }) : (0, _i18n.transI18n)('fmt_settings_tips_disabledScreensharing', {
687
+ reason1: operator
688
+ });
689
+ this._messageProvider.showToast({
690
+ type: toastType,
691
+ message: _toastMessage2
692
+ });
693
+ } else if (((_securityInfo$info5 = securityInfo.info) === null || _securityInfo$info5 === void 0 ? void 0 : _securityInfo$info5.action) === _type2.FcrSecurityAction.SendChat) {
694
+ var _toastMessage3 = enable ? (0, _i18n.transI18n)('fmt_settings_tips_allowedchat', {
695
+ reason1: operator
696
+ }) : (0, _i18n.transI18n)('fmt_settings_tips_banedchat', {
697
+ reason1: operator
698
+ });
699
+ this._messageProvider.showToast({
700
+ type: enable ? 'normal' : 'error',
701
+ message: _toastMessage3
702
+ });
703
+ } else if (((_securityInfo$info6 = securityInfo.info) === null || _securityInfo$info6 === void 0 ? void 0 : _securityInfo$info6.action) === _type2.FcrSecurityAction.Sharing && !enable) {
704
+ var _this$boardOwnerUser, _this$boardOwnerUser2;
705
+ if (!this.boardOwnerUser) return;
706
+ var isHost = [_type3.FcrUserRole.HOST, _type3.FcrUserRole.COHOST].includes((_this$boardOwnerUser = this.boardOwnerUser) === null || _this$boardOwnerUser === void 0 ? void 0 : _this$boardOwnerUser.userRole);
707
+ if (((_this$boardOwnerUser2 = this.boardOwnerUser) === null || _this$boardOwnerUser2 === void 0 ? void 0 : _this$boardOwnerUser2.userId) !== this._localUser.userId) {
708
+ this._messageProvider.showToast({
709
+ type: toastType,
710
+ message: (0, _i18n.transI18n)('fmt_screenshare_whiteboard_tips_alreadyopend')
711
+ });
712
+ if (!isHost) {
713
+ this._eventProvider.sendEvent(_constant.FcrUIAction.CLOSE_WHITEBOARD);
714
+ }
715
+ } else {
716
+ var dialogKey = this._dialogProvider.openConfirmDialog({
717
+ title: (0, _i18n.transI18n)('fmt_screenshare_whiteboard_tips_stoppedboard'),
718
+ content: (0, _i18n.transI18n)('fmt_settings_tips_sharingprohibited', {
719
+ reason1: operator
720
+ }),
721
+ icon: _type5.FcrIconType.FCR_SCREENSHARING,
722
+ okText: (0, _i18n.transI18n)('fmt_screenshare_whiteboard_button_gotit'),
723
+ showCancel: false,
724
+ onOk: function onOk() {
725
+ _this3._dialogProvider.closeDialog(dialogKey);
726
+ },
727
+ onCancel: function onCancel() {
728
+ _this3._dialogProvider.closeDialog(dialogKey);
729
+ },
730
+ height: 160
731
+ });
732
+ }
733
+ } else if (((_event$securityInfo$i = event.securityInfo.info) === null || _event$securityInfo$i === void 0 ? void 0 : _event$securityInfo$i.action) === _type2.FcrSecurityAction.WaitingRoom) {
734
+ var _event$operatorUser3, _event$operatorUser4;
735
+ var isSelf = this._localUser.userId === ((_event$operatorUser3 = event.operatorUser) === null || _event$operatorUser3 === void 0 ? void 0 : _event$operatorUser3.userId);
736
+ var userName = (_event$operatorUser4 = event.operatorUser) === null || _event$operatorUser4 === void 0 ? void 0 : _event$operatorUser4.userName;
737
+ if (!isSelf) {
738
+ if (enable) {
739
+ this._messageProvider.showToast({
740
+ type: toastType,
741
+ message: "".concat(userName).concat((0, _i18n.transI18n)('fmt_waitingroom_setting_tips_enable'))
742
+ });
743
+ } else {
744
+ this._messageProvider.showToast({
745
+ type: toastType,
746
+ message: "".concat(userName).concat((0, _i18n.transI18n)('fmt_waitingroom_mobile_setting_label_disable'))
747
+ });
748
+ }
749
+ }
750
+ } else if (((_event$securityInfo$i2 = event.securityInfo.info) === null || _event$securityInfo$i2 === void 0 ? void 0 : _event$securityInfo$i2.action) == _type2.FcrSecurityAction.WaterMark) {
751
+ var _enable = event.securityInfo.enable;
752
+ if (this._prevWaterMarkEnable !== _enable) {
753
+ var _event$operatorUser5;
754
+ var toastText = '';
755
+ var roleValue = (_event$operatorUser5 = event.operatorUser) === null || _event$operatorUser5 === void 0 ? void 0 : _event$operatorUser5.userRole;
756
+ var canTriggerToast = roleValue === _type3.FcrUserRole.HOST || roleValue === _type3.FcrUserRole.COHOST;
757
+ if (canTriggerToast) {
758
+ if (_enable) {
759
+ if (roleValue === _type3.FcrUserRole.HOST) {
760
+ toastText = (0, _i18n.transI18n)('fmt_security_setting_popup_toast_facilitator_watermark');
761
+ } else if (roleValue === _type3.FcrUserRole.COHOST) {
762
+ toastText = (0, _i18n.transI18n)('fmt_security_setting_popup_toast_co_facilitator_watermark');
763
+ }
764
+ } else {
765
+ toastText = (0, _i18n.transI18n)('fmt_security_setting_popup_toast_turn_off_watermark');
766
+ }
767
+ this._prevWaterMarkEnable = _enable;
768
+ if (toastText) {
769
+ this._messageProvider.showToast({
770
+ type: toastType,
771
+ message: toastText
772
+ });
773
+ }
774
+ }
775
+ }
776
+ }
777
+ // else if(event.securityInfo.info?.action == FcrSecurityAction.){
778
+
779
+ // }
780
+ }
781
+ }, {
782
+ key: "_handleUserRoleChangeToast",
783
+ value: function _handleUserRoleChangeToast(targetUser) {
784
+ var _this$_mainRoomContro;
785
+ var localUser = (_this$_mainRoomContro = this._mainRoomControl) === null || _this$_mainRoomContro === void 0 ? void 0 : _this$_mainRoomContro.getUserControl().getLocalUser();
786
+ var oldUser = this._userMap.get(targetUser.userId);
787
+ var isSelf = targetUser.userId === localUser.userId;
788
+ var hasHost = this._userMap.values().some(function (user) {
789
+ return user.userRole === _type3.FcrUserRole.HOST;
790
+ });
791
+ // 被设置为主持人
792
+ // 本人:
793
+ // xxx(我)成为新主持人
794
+ // 其他人:
795
+ // xxx成为新主持人
796
+ // 被收回主持人
797
+ // 本人:
798
+ // xxx成为新主持人
799
+ // 其他人:
800
+ // xxx成为新主持人
801
+ // 被设置为联席
802
+ // 本人:
803
+ // 你被设置为联席主持人
804
+ // 其他人:
805
+ // xxx现在成为联席主持人
806
+ //
807
+ // 被收回联席
808
+ // 本人:
809
+ // 你的联席主持人身份已被收回
810
+ // 其他人:
811
+ // xxx不再是联席主持人
812
+ // 当会议没有主持人的时候,我通过 hostkey 成为主持人,不需要提醒,如果会议有主持人,代表是移交主持人,走原有逻辑
813
+ if (!hasHost && !isSelf || hasHost && targetUser.userRole === _type3.FcrUserRole.HOST) {
814
+ this._messageProvider.showToast({
815
+ type: isSelf ? 'info' : 'normal',
816
+ message: (0, _i18n.transI18n)(isSelf ? 'fmt_attendies_tips_mine_new_host' : 'fmt_attendies_tips_new_host', {
817
+ reason1: targetUser.userName
818
+ })
819
+ });
820
+ } else if (targetUser.userRole === _type3.FcrUserRole.COHOST) {
821
+ this._messageProvider.showToast({
822
+ type: isSelf ? 'info' : 'normal',
823
+ message: (0, _i18n.transI18n)(isSelf ? 'fmt_attendies_tips_mine_new_co_host' : 'fmt_attendies_tips_new_co_host', {
824
+ reason1: targetUser.userName
825
+ })
826
+ });
827
+ } else if (targetUser.userRole === _type3.FcrUserRole.PARTICIPANT) {
828
+ if ((oldUser === null || oldUser === void 0 ? void 0 : oldUser.userRole) === _type3.FcrUserRole.COHOST) {
829
+ if (isSelf) {
830
+ this._messageProvider.showToast({
831
+ type: 'error',
832
+ message: (0, _i18n.transI18n)('fmt_pairicipant_tips_cohostbeenrevoke'),
833
+ duration: 3000
834
+ });
835
+ } else {
836
+ this._messageProvider.showToast({
837
+ type: 'normal',
838
+ message: (0, _i18n.transI18n)('fmt_pairicipant_tips_nolongercohost', {
839
+ reason1: targetUser.userName
840
+ }),
841
+ duration: 3000
842
+ });
843
+ }
844
+ }
845
+ }
846
+ }
847
+ }]);
848
+ }();
849
+ _FcrUIMainRoomControlProviderImpl = FcrUIMainRoomControlProviderImpl;
850
+ var _applyDecs$e2 = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIMainRoomControlProviderImpl, [[_mobx.observable, 1, "privilegeOperator"], [_mobx.observable, 1, "boardOwnerUser"], [_handleSecurityUpdatedDecs, 18, "_handleSecurityUpdated"]], []).e, 3);
851
+ _init_privilegeOperator = _applyDecs$e2[0];
852
+ _init_boardOwnerUser = _applyDecs$e2[1];
853
+ _initProto2 = _applyDecs$e2[2];
854
+ var FcrUIWaitingRoomControlProviderImpl = exports.FcrUIWaitingRoomControlProviderImpl = /*#__PURE__*/function () {
855
+ function FcrUIWaitingRoomControlProviderImpl(roomProvider, eventProvider) {
856
+ var _this4 = this;
857
+ (0, _classCallCheck2["default"])(this, FcrUIWaitingRoomControlProviderImpl);
858
+ roomProvider.addObserver({
859
+ onJoinWaitingRoom: function onJoinWaitingRoom(roomControl) {
860
+ _this4._setWaitingRoomControl(roomControl);
861
+ },
862
+ onLeaveWaitingRoom: function onLeaveWaitingRoom() {
863
+ var _this4$_privilegeProv;
864
+ (_this4$_privilegeProv = _this4._privilegeProvider) === null || _this4$_privilegeProv === void 0 || _this4$_privilegeProv.release();
865
+ _this4._privilegeProvider = undefined;
866
+ _this4._waitingRoomControl = undefined;
867
+ }
868
+ });
869
+ if (roomProvider.currentRoomControl) {
870
+ this._setWaitingRoomControl(roomProvider.currentRoomControl);
871
+ }
872
+ this._eventProvider = eventProvider;
873
+ }
874
+ return (0, _createClass2["default"])(FcrUIWaitingRoomControlProviderImpl, [{
875
+ key: "waitingRoomControl",
876
+ get: function get() {
877
+ return this._waitingRoomControl;
878
+ }
879
+ }, {
880
+ key: "privilegeProvider",
881
+ get: function get() {
882
+ return this._privilegeProvider;
883
+ }
884
+ }, {
885
+ key: "_setWaitingRoomControl",
886
+ value: function _setWaitingRoomControl(roomControl) {
887
+ this._waitingRoomControl = roomControl;
888
+ this._privilegeProvider = new _privilegeProvider.FcrUIPrivilegeProviderImpl(roomControl.getPrivilegeControl(), roomControl.getUserControl(), roomControl.getStreamControl(), this._eventProvider);
889
+
890
+ // @ts-ignore
891
+ window._waitingRoomPrivilegeProvider = this._privilegeProvider;
892
+ }
893
+ }]);
894
+ }();
895
+ var FcrUICurrentRoomControlProviderImpl = exports.FcrUICurrentRoomControlProviderImpl = /*#__PURE__*/function () {
896
+ function FcrUICurrentRoomControlProviderImpl(_currentRoomControl) {
897
+ (0, _classCallCheck2["default"])(this, FcrUICurrentRoomControlProviderImpl);
898
+ this._currentRoomControl = _currentRoomControl;
899
+ }
900
+ return (0, _createClass2["default"])(FcrUICurrentRoomControlProviderImpl, [{
901
+ key: "currentRoomControl",
902
+ get: function get() {
903
+ return this._currentRoomControl;
904
+ }
905
+ }, {
906
+ key: "currentRoomType",
907
+ get: function get() {
908
+ return this._currentRoomControl.getRoomInfo().roomType;
909
+ }
910
+ }]);
911
+ }();
912
+ (0, _base.registerDependency)('roomProvider');
913
+ (0, _base.registerDependency)('connectionProvider');
914
+ (0, _base.registerDependency)('mainRoomControlProvider');
915
+ (0, _base.registerDependency)('waitingRoomControlProvider');
916
+ (0, _base.registerDependency)('currentRoomControlProvider');