fcr-ui-scene 3.6.1 → 3.6.2

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 (292) hide show
  1. package/dist/132.js +2 -0
  2. package/dist/132.js.LICENSE.txt +311 -0
  3. package/dist/317.js +2 -0
  4. package/dist/317.js.LICENSE.txt +20 -0
  5. package/dist/651.js +2 -0
  6. package/dist/651.js.LICENSE.txt +1 -0
  7. package/dist/689343b64b60bfb7ffff.png +0 -0
  8. package/dist/73.js +1 -0
  9. package/dist/885f9369ea05a8ac0e56.png +0 -0
  10. package/dist/90f383876a6e93e7c7ca.png +0 -0
  11. package/dist/9b37584780995fc5df8c.gif +0 -0
  12. package/dist/annotation.e5cbd3a70b6d42361872.css +1274 -0
  13. package/dist/annotation.html +1 -0
  14. package/dist/annotation.js +2 -0
  15. package/dist/annotation.js.LICENSE.txt +252 -0
  16. package/dist/assets/browser/images/default1.jpg +0 -0
  17. package/dist/assets/browser/images/default2.jpg +0 -0
  18. package/dist/assets/browser/images/default3.jpg +0 -0
  19. package/dist/assets/browser/images/default4.jpg +0 -0
  20. package/dist/assets/browser/images/default5.jpg +0 -0
  21. package/dist/assets/browser/images/default6.jpg +0 -0
  22. package/dist/assets/browser/images/default7.jpg +0 -0
  23. package/dist/assets/browser/sound_effects/pretest.mp3 +0 -0
  24. package/dist/assets/browser/sound_effects/recording_started.mp3 +0 -0
  25. package/dist/assets/browser/sound_effects/remote_user_joined.mp3 +0 -0
  26. package/dist/assets/browser/sound_effects/speaker_test.mp3 +0 -0
  27. package/dist/assets/browser/videos/default8.mp4 +0 -0
  28. package/dist/assets/browser/videos/default9.mp4 +0 -0
  29. package/dist/assets/cursors/fcr_whiteboard_input.ico +0 -0
  30. package/dist/assets/cursors/fcr_whiteboard_pen.ico +0 -0
  31. package/dist/assets/cursors/fcr_whiteboard_shape_-straightline.ico +0 -0
  32. package/dist/assets/cursors/fcr_whiteboard_shape_arrow.ico +0 -0
  33. package/dist/assets/cursors/fcr_whiteboard_shape_circle.ico +0 -0
  34. package/dist/assets/cursors/fcr_whiteboard_shape_rectangle.ico +0 -0
  35. package/dist/assets/cursors/fcr_whiteboard_shape_triangle.ico +0 -0
  36. package/dist/assets/electron/images/default1.jpg +0 -0
  37. package/dist/assets/electron/images/default2.jpg +0 -0
  38. package/dist/assets/electron/sound_effects/pretest.mp3 +0 -0
  39. package/dist/assets/electron/videos/default8.mp4 +0 -0
  40. package/dist/assets/fcr_chat_reddot.svg +5 -0
  41. package/dist/assets/fcr_defaultpage.png +0 -0
  42. package/dist/assets/fcr_grid_big.svg +3 -0
  43. package/dist/assets/fcr_leave2.svg +58 -0
  44. package/dist/assets/fcr_listontop_big.svg +3 -0
  45. package/dist/assets/full-screen-error-boundary-img.png +0 -0
  46. package/dist/assets/leave-meeting.png +0 -0
  47. package/dist/assets/loading.gif +0 -0
  48. package/dist/assets/login_confirm.png +0 -0
  49. package/dist/assets/pretest.mp3 +0 -0
  50. package/dist/assets/state-bar-logo.png +0 -0
  51. package/dist/assets/step-gradient.svg +10 -0
  52. package/dist/b74b002687a3a3346bec.png +0 -0
  53. package/dist/b94869094481702f949b.png +0 -0
  54. package/dist/ebeace75fd46b90d890e.png +0 -0
  55. package/dist/electron/app.js +194 -0
  56. package/dist/electron/bootstrap-dev.js +46 -0
  57. package/dist/electron/bootstrap-sdk.js +211 -0
  58. package/dist/electron/default-options.js +25 -0
  59. package/dist/electron/env.js +13 -0
  60. package/dist/electron/index.js +20 -0
  61. package/dist/electron/injections.js +903 -0
  62. package/dist/electron/ipc/ipc.js +141 -0
  63. package/dist/electron/ipc/type.js +19 -0
  64. package/dist/electron/logger.js +65 -0
  65. package/dist/electron/main.js +94 -0
  66. package/dist/electron/plugins/devtool-shortcut.js +33 -0
  67. package/dist/electron/plugins/meeting-state.js +39 -0
  68. package/dist/electron/plugins/screenshot.js +54 -0
  69. package/dist/electron/preload.js +108 -0
  70. package/dist/electron/tools.js +66 -0
  71. package/dist/electron/window.js +123 -0
  72. package/dist/extensions/agora-extension-virtual-background/agora-wasm.wasm +0 -0
  73. package/dist/extensions/ai-denoiser/denoiser-wasm-simd.wasm +0 -0
  74. package/dist/extensions/ai-denoiser/denoiser-wasm.js +1 -0
  75. package/dist/extensions/ai-denoiser/denoiser-wasm.wasm +0 -0
  76. package/dist/fad688b9135b15d6c405.png +0 -0
  77. package/dist/index.html +224 -0
  78. package/dist/main.393a2a91ab7fc05ffce6.css +15403 -0
  79. package/dist/main.js +2 -0
  80. package/dist/main.js.LICENSE.txt +272 -0
  81. package/dist/worker-entry.worker.js.LICENSE.txt +13 -0
  82. package/lib/creator.d.ts +5 -0
  83. package/lib/creator.js +106 -17
  84. package/lib/electron/bootstrap-sdk.js +4 -0
  85. package/lib/electron/injections.d.ts +4 -0
  86. package/lib/electron/injections.js +37 -8
  87. package/lib/electron/ipc/ipc.d.ts +1 -0
  88. package/lib/electron/ipc/ipc.js +4 -0
  89. package/lib/electron/main.js +6 -2
  90. package/lib/electron/plugins/screenshot.js +4 -2
  91. package/lib/electron/preload.js +7 -2
  92. package/lib/electron/window.js +4 -3
  93. package/lib/fragments/annotation/index.d.ts +10 -0
  94. package/lib/fragments/annotation/index.js +106 -0
  95. package/lib/fragments/annotation/libs.d.ts +55 -0
  96. package/lib/fragments/annotation/libs.js +93 -0
  97. package/lib/fragments/annotation/store.d.ts +25 -0
  98. package/lib/fragments/annotation/store.js +485 -0
  99. package/lib/fragments/annotation/view.d.ts +2 -0
  100. package/lib/fragments/annotation/view.js +23 -0
  101. package/lib/fragments/base.d.ts +10 -0
  102. package/lib/fragments/base.js +44 -0
  103. package/lib/modules/action-bar/components/screen-share/submenu.js +7 -6
  104. package/lib/modules/action-bar/index.css +7 -0
  105. package/lib/modules/action-bar/index.d.ts +2 -0
  106. package/lib/modules/action-bar/index.js +1 -0
  107. package/lib/modules/action-bar/store.d.ts +6 -2
  108. package/lib/modules/action-bar/store.js +15 -9
  109. package/lib/modules/annotation/components/control-bar/index.css +48 -0
  110. package/lib/modules/annotation/components/control-bar/index.d.ts +3 -0
  111. package/lib/modules/annotation/components/control-bar/index.js +101 -0
  112. package/lib/modules/annotation/components/toolbar/components/color-tool/color-panel/index.d.ts +3 -0
  113. package/lib/modules/annotation/components/toolbar/components/color-tool/color-panel/index.js +46 -0
  114. package/lib/modules/annotation/components/toolbar/components/color-tool/index.d.ts +1 -0
  115. package/lib/modules/annotation/components/toolbar/components/color-tool/index.js +52 -0
  116. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/index.d.ts +3 -0
  117. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/index.js +59 -0
  118. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +11 -0
  119. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.js +59 -0
  120. package/lib/modules/annotation/components/toolbar/components/graphic-tool/index.d.ts +1 -0
  121. package/lib/modules/annotation/components/toolbar/components/graphic-tool/index.js +68 -0
  122. package/lib/modules/annotation/components/toolbar/components/item/item.d.ts +17 -0
  123. package/lib/modules/annotation/components/toolbar/components/item/item.js +115 -0
  124. package/lib/modules/annotation/components/toolbar/components/item/style.css +43 -0
  125. package/lib/modules/annotation/components/toolbar/components/panel/index.d.ts +5 -0
  126. package/lib/modules/annotation/components/toolbar/components/panel/index.js +22 -0
  127. package/lib/modules/annotation/components/toolbar/components/panel/style.css +24 -0
  128. package/lib/modules/annotation/components/toolbar/components/pen-tool/index.d.ts +1 -0
  129. package/lib/modules/annotation/components/toolbar/components/pen-tool/index.js +58 -0
  130. package/lib/modules/annotation/components/toolbar/components/pen-tool/pen-panel/index.d.ts +3 -0
  131. package/lib/modules/annotation/components/toolbar/components/pen-tool/pen-panel/index.js +34 -0
  132. package/lib/modules/annotation/components/toolbar/components/tips/index.d.ts +2 -0
  133. package/lib/modules/annotation/components/toolbar/components/tips/index.js +25 -0
  134. package/lib/modules/annotation/components/toolbar/components/tips/style.css +19 -0
  135. package/lib/modules/annotation/components/toolbar/index.d.ts +0 -0
  136. package/lib/modules/annotation/components/toolbar/index.js +1 -0
  137. package/lib/modules/annotation/components/toolbar/store.d.ts +40 -0
  138. package/lib/modules/annotation/components/toolbar/store.js +279 -0
  139. package/lib/modules/annotation/components/toolbar/style.css +55 -0
  140. package/lib/modules/annotation/components/toolbar/view.d.ts +2 -0
  141. package/lib/modules/annotation/components/toolbar/view.js +120 -0
  142. package/lib/modules/annotation/index.d.ts +36 -0
  143. package/lib/modules/annotation/index.js +168 -0
  144. package/lib/modules/annotation/store.d.ts +85 -0
  145. package/lib/modules/annotation/store.js +648 -0
  146. package/lib/modules/annotation/style.css +26 -0
  147. package/lib/modules/annotation/view.d.ts +2 -0
  148. package/lib/modules/annotation/view.js +32 -0
  149. package/lib/modules/chat/view.js +112 -100
  150. package/lib/modules/components/annotation-menu/index.d.ts +7 -0
  151. package/lib/modules/components/annotation-menu/index.js +119 -0
  152. package/lib/modules/components/leave-meeting/components/assign-host.js +26 -23
  153. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.d.ts +2 -0
  154. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +6 -2
  155. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.d.ts +2 -1
  156. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.js +6 -1
  157. package/lib/modules/components/member-window/components/video-player/index.d.ts +1 -0
  158. package/lib/modules/components/member-window/index.d.ts +1 -1
  159. package/lib/modules/components/member-window/index.js +8 -5
  160. package/lib/modules/components/member-window/types.d.ts +2 -0
  161. package/lib/modules/components/security-menu/index.js +7 -6
  162. package/lib/modules/control-bar/components/annotation-button/index.d.ts +1 -0
  163. package/lib/modules/control-bar/components/annotation-button/index.js +59 -0
  164. package/lib/modules/control-bar/index.d.ts +6 -2
  165. package/lib/modules/control-bar/index.js +5 -2
  166. package/lib/modules/control-bar/store.d.ts +23 -7
  167. package/lib/modules/control-bar/store.js +112 -77
  168. package/lib/modules/control-bar/view.js +7 -3
  169. package/lib/modules/dialog/components/annotation-tool/index.d.ts +4 -0
  170. package/lib/modules/dialog/components/annotation-tool/index.js +53 -0
  171. package/lib/modules/dialog/components/chat/index.js +1 -1
  172. package/lib/modules/dialog/components/host-area-container/index.d.ts +12 -0
  173. package/lib/modules/dialog/components/host-area-container/index.js +214 -0
  174. package/lib/modules/dialog/components/participant/index.js +1 -1
  175. package/lib/modules/dialog/components/system-preference/index.js +1 -1
  176. package/lib/modules/dialog/components/video-window/index.js +1 -0
  177. package/lib/modules/dialog/hooks/use-popover-watcher.d.ts +14 -0
  178. package/lib/modules/dialog/hooks/use-popover-watcher.js +112 -0
  179. package/lib/modules/dialog/hooks/useElectron.d.ts +1 -0
  180. package/lib/modules/dialog/hooks/useElectron.js +11 -2
  181. package/lib/modules/dialog/index.d.ts +2 -0
  182. package/lib/modules/dialog/index.js +2 -1
  183. package/lib/modules/dialog/store.d.ts +9 -2
  184. package/lib/modules/dialog/store.js +46 -6
  185. package/lib/modules/event-confirm/components/window/index.d.ts +7 -0
  186. package/lib/modules/event-confirm/components/window/index.js +188 -0
  187. package/lib/modules/event-confirm/index.d.ts +4 -4
  188. package/lib/modules/event-confirm/index.js +6 -4
  189. package/lib/modules/event-confirm/store.d.ts +4 -5
  190. package/lib/modules/event-confirm/store.js +35 -26
  191. package/lib/modules/event-confirm/view.js +23 -171
  192. package/lib/modules/event-sound/index.js +1 -1
  193. package/lib/modules/layout/components/CommonVideoRenderer.js +30 -16
  194. package/lib/modules/layout/index.d.ts +4 -0
  195. package/lib/modules/layout/index.js +2 -0
  196. package/lib/modules/layout/store.d.ts +14 -2
  197. package/lib/modules/layout/store.js +77 -45
  198. package/lib/modules/participant/index.d.ts +2 -0
  199. package/lib/modules/participant/index.js +2 -1
  200. package/lib/modules/participant/store.d.ts +5 -2
  201. package/lib/modules/participant/store.js +45 -28
  202. package/lib/modules/setting/audio-settings/audio-settings.js +3 -14
  203. package/lib/modules/share-screen/components/selection/index.js +18 -42
  204. package/lib/modules/share-screen/index.d.ts +6 -2
  205. package/lib/modules/share-screen/index.js +4 -2
  206. package/lib/modules/share-screen/store.d.ts +38 -46
  207. package/lib/modules/share-screen/store.js +263 -693
  208. package/lib/modules/share-screen/view.js +2 -2
  209. package/lib/modules/state-bar/assets/fcr_grid_big.svg +1 -1
  210. package/lib/modules/state-bar/assets/fcr_listontop_big.svg +1 -1
  211. package/lib/modules/state-bar/index.d.ts +2 -0
  212. package/lib/modules/state-bar/index.js +1 -0
  213. package/lib/modules/state-bar/store.d.ts +5 -1
  214. package/lib/modules/state-bar/store.js +9 -1
  215. package/lib/modules/state-bar/view.js +3 -2
  216. package/lib/modules/video-window/components/members/index.js +2 -1
  217. package/lib/modules/waiting-room-layout/store.js +1 -1
  218. package/lib/modules/whiteboard/components/control-bar/store.d.ts +5 -1
  219. package/lib/modules/whiteboard/components/control-bar/store.js +8 -1
  220. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/picker.js +16 -5
  221. package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +67 -12
  222. package/lib/modules/whiteboard/components/toolbar/components/expansion/index.js +22 -2
  223. package/lib/modules/whiteboard/components/toolbar/components/history.js +46 -14
  224. package/lib/modules/whiteboard/components/toolbar/components/item/index.js +3 -2
  225. package/lib/modules/whiteboard/components/toolbar/components/move-handle.js +1 -1
  226. package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +58 -16
  227. package/lib/modules/whiteboard/components/toolbar/components/screen-capture-picker.js +15 -4
  228. package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +45 -2
  229. package/lib/modules/whiteboard/components/toolbar/hooks/index.d.ts +14 -0
  230. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +235 -7
  231. package/lib/modules/whiteboard/components/toolbar/index.d.ts +1 -1
  232. package/lib/modules/whiteboard/components/toolbar/index.js +1 -1
  233. package/lib/modules/whiteboard/components/toolbar/store.d.ts +9 -2
  234. package/lib/modules/whiteboard/components/toolbar/store.js +30 -6
  235. package/lib/modules/whiteboard/components/toolbar/{ style.css → style.css} +1 -0
  236. package/lib/modules/whiteboard/index.d.ts +2 -0
  237. package/lib/modules/whiteboard/index.js +20 -20
  238. package/lib/plugins/browser-runtime-plugin.js +10 -1
  239. package/lib/providers/annotation-provider.d.ts +77 -0
  240. package/lib/providers/annotation-provider.js +411 -0
  241. package/lib/providers/interpreter-provider.d.ts +1 -0
  242. package/lib/providers/interpreter-provider.js +182 -154
  243. package/lib/providers/privilege-provider.d.ts +35 -6
  244. package/lib/providers/privilege-provider.js +105 -49
  245. package/lib/providers/renderer-provider.js +3 -7
  246. package/lib/providers/room-provider.d.ts +13 -1
  247. package/lib/providers/room-provider.js +21 -7
  248. package/lib/providers/screen-share-provider.d.ts +131 -34
  249. package/lib/providers/screen-share-provider.js +561 -173
  250. package/lib/providers/sharing-provider.d.ts +33 -0
  251. package/lib/{shared-data-source/screen-share-data-source.js → providers/sharing-provider.js} +87 -39
  252. package/lib/runtime.d.ts +6 -1
  253. package/lib/scenes/main-scene.d.ts +7 -2
  254. package/lib/scenes/main-scene.js +54 -25
  255. package/lib/scenes/waiting-scene.d.ts +6 -0
  256. package/lib/scenes/waiting-scene.js +15 -5
  257. package/lib/shared-data-source/member-data.d.ts +21 -5
  258. package/lib/shared-data-source/member-data.js +69 -17
  259. package/lib/shared-data-source/screen-share-data.d.ts +270 -0
  260. package/lib/shared-data-source/screen-share-data.js +389 -0
  261. package/lib/shared-data-source/security-data.d.ts +4 -1
  262. package/lib/shared-data-source/security-data.js +5 -2
  263. package/lib/shared-data-source/setting.js +6 -4
  264. package/lib/type.d.ts +53 -0
  265. package/lib/ui-manager.d.ts +3 -2
  266. package/lib/ui-manager.js +6 -4
  267. package/lib/ui-scene.js +59 -44
  268. package/lib/utilities/constant.d.ts +8 -1
  269. package/lib/utilities/constant.js +7 -0
  270. package/lib/utilities/logger.d.ts +4 -0
  271. package/lib/utilities/logger.js +8 -1
  272. package/lib/utilities/renderer-event.d.ts +3 -0
  273. package/lib/utilities/renderer-event.js +14 -1
  274. package/lib/utilities/screen.js +2 -1
  275. package/lib/utilities/tools.d.ts +18 -1
  276. package/lib/utilities/tools.js +48 -2
  277. package/package.json +6 -6
  278. package/public/assets/cursors/fcr_whiteboard_input.ico +0 -0
  279. package/public/assets/cursors/fcr_whiteboard_pen.ico +0 -0
  280. package/public/assets/cursors/fcr_whiteboard_shape_-straightline.ico +0 -0
  281. package/public/assets/cursors/fcr_whiteboard_shape_arrow.ico +0 -0
  282. package/public/assets/cursors/fcr_whiteboard_shape_circle.ico +0 -0
  283. package/public/assets/cursors/fcr_whiteboard_shape_rectangle.ico +0 -0
  284. package/public/assets/cursors/fcr_whiteboard_shape_triangle.ico +0 -0
  285. package/public/assets/fcr_chat_reddot.svg +3 -3
  286. package/public/assets/fcr_grid_big.svg +1 -1
  287. package/public/assets/fcr_leave2.svg +14 -14
  288. package/public/assets/fcr_listontop_big.svg +1 -1
  289. package/public/assets/step-gradient.svg +1 -1
  290. package/public/fragment.html +10 -0
  291. package/public/index.html +3 -1
  292. package/lib/shared-data-source/screen-share-data-source.d.ts +0 -37
@@ -0,0 +1,389 @@
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.error.cause.js");
7
+ require("core-js/modules/es.error.to-string.js");
8
+ require("core-js/modules/es.array.is-array.js");
9
+ require("core-js/modules/es.array.push.js");
10
+ require("core-js/modules/es.date.to-primitive.js");
11
+ require("core-js/modules/es.function.name.js");
12
+ require("core-js/modules/es.map.js");
13
+ require("core-js/modules/es.number.constructor.js");
14
+ require("core-js/modules/es.object.create.js");
15
+ require("core-js/modules/es.object.define-property.js");
16
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
17
+ require("core-js/modules/esnext.function.metadata.js");
18
+ require("core-js/modules/esnext.map.delete-all.js");
19
+ require("core-js/modules/esnext.map.emplace.js");
20
+ require("core-js/modules/esnext.map.every.js");
21
+ require("core-js/modules/esnext.map.filter.js");
22
+ require("core-js/modules/esnext.map.find.js");
23
+ require("core-js/modules/esnext.map.find-key.js");
24
+ require("core-js/modules/esnext.map.includes.js");
25
+ require("core-js/modules/esnext.map.key-of.js");
26
+ require("core-js/modules/esnext.map.map-keys.js");
27
+ require("core-js/modules/esnext.map.map-values.js");
28
+ require("core-js/modules/esnext.map.merge.js");
29
+ require("core-js/modules/esnext.map.reduce.js");
30
+ require("core-js/modules/esnext.map.some.js");
31
+ require("core-js/modules/esnext.map.update.js");
32
+ require("core-js/modules/esnext.symbol.metadata.js");
33
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
34
+ var _typeof = require("@babel/runtime/helpers/typeof");
35
+ Object.defineProperty(exports, "__esModule", {
36
+ value: true
37
+ });
38
+ exports.FcrUIScreenShareSharedDataSourceImpl = void 0;
39
+ require("core-js/modules/es.array.for-each.js");
40
+ require("core-js/modules/es.array.iterator.js");
41
+ require("core-js/modules/es.function.bind.js");
42
+ require("core-js/modules/es.object.to-string.js");
43
+ require("core-js/modules/es.string.iterator.js");
44
+ require("core-js/modules/es.weak-map.js");
45
+ require("core-js/modules/esnext.async-iterator.for-each.js");
46
+ require("core-js/modules/esnext.iterator.constructor.js");
47
+ require("core-js/modules/esnext.iterator.for-each.js");
48
+ require("core-js/modules/esnext.weak-map.delete-all.js");
49
+ require("core-js/modules/esnext.weak-map.emplace.js");
50
+ require("core-js/modules/web.dom-collections.for-each.js");
51
+ require("core-js/modules/web.dom-collections.iterator.js");
52
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
53
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
54
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
55
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
56
+ var _mobx = require("mobx");
57
+ var _fcrCore = require("fcr-core");
58
+ var _base = require("../base");
59
+ var _logger = require("../utilities/logger");
60
+ var _shareAudio = require("agora-ui-foundation/lib/components/room-screen-share-state-bar/share-audio");
61
+ var _type = require("agora-rte-sdk/lib/core/rtc/type");
62
+ var _env = require("agora-foundation/lib/utilities/env");
63
+ var _FcrUIScreenShareSharedDataSourceImpl;
64
+ var _initProto, _init_isSharingScreen, _init_screenSharingOwner, _init_screenSharingState, _init_applicationCaptureSources, _init_screenCaptureSources, _init_currentShareAudioProcessingChannel, _init_currentSelectionId, _init_currentSelectionType, _init_shareWithAudio, _init_boardOwnerUser, _init_currentSelectionBounds, _init_connectionState, _init_isReplaceScreen, _init_isSeizeStream, _setIsSeizeStreamDecs, _setIsReplaceScreenDecs, _setIsSharingScreenDecs, _setScreenSharingOwnerDecs, _setShareWithAudioTrackDecs, _setLoopbackAudioSourceIdDecs, _setScreenTrackDecs, _setCurrentShareTypeDecs, _setCurrentShareIdDecs, _setCurrentShareStreamIdDecs, _setCurrentShareAudioProcessingChannelDecs, _setScreenCaptureSourcesDecs, _setApplicationCaptureSourcesDecs, _setScreenSharingStateDecs, _setCurrentShareIdInfosDecs, _setCurrentSelectionDecs, _setCurrentSelectionIdDecs, _setCurrentSelectionTypeDecs, _setCurrentSelectionBoundsDecs, _setShareWithAudioDecs, _handleOnConnectionStateUpdatedDecs, _ref;
65
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
66
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
67
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
68
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
69
+ 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"); }
70
+ 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)]; } }; }
71
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
72
+ 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); }
73
+ 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; }
74
+ 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; }
75
+ var _A = /*#__PURE__*/new WeakMap();
76
+ var _B = /*#__PURE__*/new WeakMap();
77
+ var _C = /*#__PURE__*/new WeakMap();
78
+ var _D = /*#__PURE__*/new WeakMap();
79
+ var _E = /*#__PURE__*/new WeakMap();
80
+ var _F = /*#__PURE__*/new WeakMap();
81
+ var _G = /*#__PURE__*/new WeakMap();
82
+ var _H = /*#__PURE__*/new WeakMap();
83
+ var _I = /*#__PURE__*/new WeakMap();
84
+ var _J = /*#__PURE__*/new WeakMap();
85
+ var _K = /*#__PURE__*/new WeakMap();
86
+ var _L = /*#__PURE__*/new WeakMap();
87
+ var _M = /*#__PURE__*/new WeakMap();
88
+ var _N = /*#__PURE__*/new WeakMap();
89
+ _ref = (_setIsSeizeStreamDecs = [_mobx.action, _mobx.action.bound], _setIsReplaceScreenDecs = [_mobx.action, _mobx.action.bound], _setIsSharingScreenDecs = [_mobx.action, _mobx.action.bound], _setScreenSharingOwnerDecs = [_mobx.action, _mobx.action.bound], _setShareWithAudioTrackDecs = [_mobx.action, _mobx.action.bound], _setLoopbackAudioSourceIdDecs = [_mobx.action, _mobx.action.bound], _setScreenTrackDecs = [_mobx.action, _mobx.action.bound], _setCurrentShareTypeDecs = [_mobx.action, _mobx.action.bound], _setCurrentShareIdDecs = [_mobx.action, _mobx.action.bound], _setCurrentShareStreamIdDecs = [_mobx.action, _mobx.action.bound], _setCurrentShareAudioProcessingChannelDecs = [_mobx.action, _mobx.action.bound], _setScreenCaptureSourcesDecs = [_mobx.action, _mobx.action.bound], _setApplicationCaptureSourcesDecs = [_mobx.action, _mobx.action.bound], _setScreenSharingStateDecs = [_mobx.action, _mobx.action.bound], _setCurrentShareIdInfosDecs = [_mobx.action, _mobx.action.bound], _setCurrentSelectionDecs = [_mobx.action, _mobx.action.bound], _setCurrentSelectionIdDecs = [_mobx.action, _mobx.action.bound], _setCurrentSelectionTypeDecs = [_mobx.action, _mobx.action.bound], _setCurrentSelectionBoundsDecs = [_mobx.action, _mobx.action.bound], _setShareWithAudioDecs = [_mobx.action, _mobx.action.bound], _handleOnConnectionStateUpdatedDecs = [_mobx.action, _mobx.action.bound], "logger");
90
+ var FcrUIScreenShareSharedDataSourceImpl = exports.FcrUIScreenShareSharedDataSourceImpl = /*#__PURE__*/function () {
91
+ function FcrUIScreenShareSharedDataSourceImpl(_connectionProvider, _deviceProvider) {
92
+ (0, _classCallCheck2["default"])(this, FcrUIScreenShareSharedDataSourceImpl);
93
+ (0, _defineProperty2["default"])(this, _ref, (_initProto(this), (0, _logger.createLogger)({
94
+ prefix: 'FcrUIScreenShareSharedDataSourceImpl'
95
+ })));
96
+ (0, _defineProperty2["default"])(this, "_disposers", []);
97
+ (0, _defineProperty2["default"])(this, "_connectionObserver", {
98
+ onConnectionStateUpdated: this._handleOnConnectionStateUpdated.bind(this)
99
+ });
100
+ _classPrivateFieldInitSpec(this, _A, _init_isSharingScreen(this, false));
101
+ _classPrivateFieldInitSpec(this, _B, _init_screenSharingOwner(this));
102
+ _classPrivateFieldInitSpec(this, _C, _init_screenSharingState(this, _fcrCore.FcrMediaSourceState.CLOSE));
103
+ _classPrivateFieldInitSpec(this, _D, _init_applicationCaptureSources(this, []));
104
+ _classPrivateFieldInitSpec(this, _E, _init_screenCaptureSources(this, []));
105
+ _classPrivateFieldInitSpec(this, _F, _init_currentShareAudioProcessingChannel(this, _shareAudio.AudioProcessingChannel.MONO));
106
+ _classPrivateFieldInitSpec(this, _G, _init_currentSelectionId(this, (0, _env.isElectron)() ? '' : 'default'));
107
+ _classPrivateFieldInitSpec(this, _H, _init_currentSelectionType(this, _type.AgoraRtcScreenCaptureType.WINDOW));
108
+ _classPrivateFieldInitSpec(this, _I, _init_shareWithAudio(this, !(0, _env.isElectron)()));
109
+ // electron 默认 false,web 默认 true
110
+ _classPrivateFieldInitSpec(this, _J, _init_boardOwnerUser(this, undefined));
111
+ _classPrivateFieldInitSpec(this, _K, _init_currentSelectionBounds(this, {
112
+ x: 0,
113
+ y: 0,
114
+ width: 0,
115
+ height: 0
116
+ }));
117
+ _classPrivateFieldInitSpec(this, _L, _init_connectionState(this, _fcrCore.FcrConnectionState.CONNECTED));
118
+ _classPrivateFieldInitSpec(this, _M, _init_isReplaceScreen(this, false));
119
+ _classPrivateFieldInitSpec(this, _N, _init_isSeizeStream(this, false));
120
+ (0, _defineProperty2["default"])(this, "screenTrack", null);
121
+ (0, _defineProperty2["default"])(this, "shareWithAudioTrack", null);
122
+ (0, _defineProperty2["default"])(this, "currentShareId", '');
123
+ (0, _defineProperty2["default"])(this, "currentShareType", _type.AgoraRtcScreenCaptureType.SCREEN);
124
+ (0, _defineProperty2["default"])(this, "currentShareStreamId", '');
125
+ (0, _defineProperty2["default"])(this, "loopbackAudioSourceId", (0, _env.getPlatform)() === _env.FcrApplicationPlatform.MACOS && (0, _env.isElectron)() ? 'AgoraALD' : (0, _env.isElectron)() ? '' : 'default');
126
+ this._connectionProvider = _connectionProvider;
127
+ this._deviceProvider = _deviceProvider;
128
+ this._connectionProvider.addObserver(this._connectionObserver);
129
+ }
130
+ return (0, _createClass2["default"])(FcrUIScreenShareSharedDataSourceImpl, [{
131
+ key: "isSharingScreen",
132
+ get: function get() {
133
+ return _classPrivateFieldGet(_A, this);
134
+ },
135
+ set: function set(v) {
136
+ _classPrivateFieldSet(_A, this, v);
137
+ }
138
+ }, {
139
+ key: "screenSharingOwner",
140
+ get: function get() {
141
+ return _classPrivateFieldGet(_B, this);
142
+ },
143
+ set: function set(v) {
144
+ _classPrivateFieldSet(_B, this, v);
145
+ }
146
+ }, {
147
+ key: "screenSharingState",
148
+ get: function get() {
149
+ return _classPrivateFieldGet(_C, this);
150
+ },
151
+ set: function set(v) {
152
+ _classPrivateFieldSet(_C, this, v);
153
+ }
154
+ }, {
155
+ key: "applicationCaptureSources",
156
+ get: function get() {
157
+ return _classPrivateFieldGet(_D, this);
158
+ },
159
+ set: function set(v) {
160
+ _classPrivateFieldSet(_D, this, v);
161
+ }
162
+ }, {
163
+ key: "screenCaptureSources",
164
+ get: function get() {
165
+ return _classPrivateFieldGet(_E, this);
166
+ },
167
+ set: function set(v) {
168
+ _classPrivateFieldSet(_E, this, v);
169
+ }
170
+ }, {
171
+ key: "currentShareAudioProcessingChannel",
172
+ get: function get() {
173
+ return _classPrivateFieldGet(_F, this);
174
+ },
175
+ set: function set(v) {
176
+ _classPrivateFieldSet(_F, this, v);
177
+ }
178
+ }, {
179
+ key: "currentSelectionId",
180
+ get: function get() {
181
+ return _classPrivateFieldGet(_G, this);
182
+ },
183
+ set: function set(v) {
184
+ _classPrivateFieldSet(_G, this, v);
185
+ }
186
+ }, {
187
+ key: "currentSelectionType",
188
+ get: function get() {
189
+ return _classPrivateFieldGet(_H, this);
190
+ },
191
+ set: function set(v) {
192
+ _classPrivateFieldSet(_H, this, v);
193
+ }
194
+ }, {
195
+ key: "shareWithAudio",
196
+ get: function get() {
197
+ return _classPrivateFieldGet(_I, this);
198
+ },
199
+ set: function set(v) {
200
+ _classPrivateFieldSet(_I, this, v);
201
+ }
202
+ }, {
203
+ key: "boardOwnerUser",
204
+ get: function get() {
205
+ return _classPrivateFieldGet(_J, this);
206
+ },
207
+ set: function set(v) {
208
+ _classPrivateFieldSet(_J, this, v);
209
+ }
210
+ }, {
211
+ key: "currentSelectionBounds",
212
+ get: function get() {
213
+ return _classPrivateFieldGet(_K, this);
214
+ },
215
+ set: function set(v) {
216
+ _classPrivateFieldSet(_K, this, v);
217
+ }
218
+ }, {
219
+ key: "connectionState",
220
+ get: function get() {
221
+ return _classPrivateFieldGet(_L, this);
222
+ },
223
+ set: function set(v) {
224
+ _classPrivateFieldSet(_L, this, v);
225
+ }
226
+ }, {
227
+ key: "isReplaceScreen",
228
+ get: function get() {
229
+ return _classPrivateFieldGet(_M, this);
230
+ },
231
+ set: function set(v) {
232
+ _classPrivateFieldSet(_M, this, v);
233
+ }
234
+ }, {
235
+ key: "isSeizeStream",
236
+ get: function get() {
237
+ return _classPrivateFieldGet(_N, this);
238
+ },
239
+ set: function set(v) {
240
+ _classPrivateFieldSet(_N, this, v);
241
+ }
242
+ }, {
243
+ key: "appWindowList",
244
+ get: function get() {
245
+ return this._deviceProvider.getWindowList();
246
+ }
247
+ }, {
248
+ key: "displayList",
249
+ get: function get() {
250
+ return this._deviceProvider.getDisplayList();
251
+ }
252
+ }, {
253
+ key: "setIsSeizeStream",
254
+ value: function setIsSeizeStream(seized) {
255
+ this.isSeizeStream = seized;
256
+ }
257
+ }, {
258
+ key: "setIsReplaceScreen",
259
+ value: function setIsReplaceScreen(isReplace) {
260
+ this.isReplaceScreen = isReplace;
261
+ }
262
+ }, {
263
+ key: "setIsSharingScreen",
264
+ value: function setIsSharingScreen(isSharing) {
265
+ this.isSharingScreen = isSharing;
266
+ }
267
+ }, {
268
+ key: "setScreenSharingOwner",
269
+ value: function setScreenSharingOwner(owner) {
270
+ this.screenSharingOwner = owner;
271
+ }
272
+ }, {
273
+ key: "setShareWithAudioTrack",
274
+ value: function setShareWithAudioTrack(shareWithAudioTrack) {
275
+ this.shareWithAudioTrack = shareWithAudioTrack;
276
+ }
277
+ }, {
278
+ key: "setLoopbackAudioSourceId",
279
+ value: function setLoopbackAudioSourceId(sourceId) {
280
+ this.loopbackAudioSourceId = sourceId;
281
+ }
282
+ }, {
283
+ key: "setScreenTrack",
284
+ value: function setScreenTrack(screenTrack) {
285
+ this.screenTrack = screenTrack;
286
+ }
287
+ }, {
288
+ key: "setCurrentShareType",
289
+ value: function setCurrentShareType(type) {
290
+ this.currentShareType = type;
291
+ }
292
+ }, {
293
+ key: "setCurrentShareId",
294
+ value: function setCurrentShareId(id) {
295
+ this.currentShareId = id;
296
+ }
297
+ }, {
298
+ key: "setCurrentShareStreamId",
299
+ value: function setCurrentShareStreamId(streamId) {
300
+ this.currentShareStreamId = streamId;
301
+ }
302
+ }, {
303
+ key: "setCurrentShareAudioProcessingChannel",
304
+ value: function setCurrentShareAudioProcessingChannel(channel) {
305
+ this.currentShareAudioProcessingChannel = channel;
306
+ }
307
+ }, {
308
+ key: "setScreenCaptureSources",
309
+ value: function setScreenCaptureSources(sources) {
310
+ this.screenCaptureSources = sources;
311
+ }
312
+ }, {
313
+ key: "setApplicationCaptureSources",
314
+ value: function setApplicationCaptureSources(windowInfos) {
315
+ this.applicationCaptureSources = windowInfos;
316
+ }
317
+ }, {
318
+ key: "setScreenSharingState",
319
+ value: function setScreenSharingState(state) {
320
+ this.screenSharingState = state;
321
+ }
322
+ }, {
323
+ key: "setCurrentShareIdInfos",
324
+ value: function setCurrentShareIdInfos(currentShareId, type, bounds) {
325
+ this.currentShareId = currentShareId;
326
+ this.currentSelectionType = type;
327
+ this.currentSelectionBounds = bounds;
328
+ }
329
+ }, {
330
+ key: "setCurrentSelection",
331
+ value: function setCurrentSelection(id, type, bounds) {
332
+ this.currentSelectionId = id;
333
+ this.currentSelectionType = type;
334
+ this.currentSelectionBounds = bounds;
335
+ }
336
+ }, {
337
+ key: "setCurrentSelectionId",
338
+ value: function setCurrentSelectionId(id) {
339
+ this.currentSelectionId = id;
340
+ }
341
+ }, {
342
+ key: "setCurrentSelectionType",
343
+ value: function setCurrentSelectionType(type) {
344
+ this.currentSelectionType = type;
345
+ }
346
+ }, {
347
+ key: "setCurrentSelectionBounds",
348
+ value: function setCurrentSelectionBounds(bounds) {
349
+ this.currentSelectionBounds = bounds;
350
+ }
351
+ }, {
352
+ key: "setShareWithAudio",
353
+ value: function setShareWithAudio(withAudio) {
354
+ this.shareWithAudio = withAudio;
355
+ }
356
+ }, {
357
+ key: "release",
358
+ value: function release() {
359
+ this._disposers.forEach(function (disposer) {
360
+ return disposer();
361
+ });
362
+ this._disposers = [];
363
+ this._connectionProvider.removeObserver(this._connectionObserver);
364
+ }
365
+ }, {
366
+ key: "_handleOnConnectionStateUpdated",
367
+ value: function _handleOnConnectionStateUpdated(state) {
368
+ this.connectionState = state;
369
+ }
370
+ }]);
371
+ }();
372
+ _FcrUIScreenShareSharedDataSourceImpl = FcrUIScreenShareSharedDataSourceImpl;
373
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIScreenShareSharedDataSourceImpl, [[_mobx.observable, 1, "isSharingScreen"], [_mobx.observable, 1, "screenSharingOwner"], [_mobx.observable, 1, "screenSharingState"], [_mobx.observable, 1, "applicationCaptureSources"], [_mobx.observable, 1, "screenCaptureSources"], [_mobx.observable, 1, "currentShareAudioProcessingChannel"], [_mobx.observable, 1, "currentSelectionId"], [_mobx.observable, 1, "currentSelectionType"], [_mobx.observable, 1, "shareWithAudio"], [_mobx.observable, 1, "boardOwnerUser"], [_mobx.observable, 1, "currentSelectionBounds"], [_mobx.observable, 1, "connectionState"], [_mobx.observable, 1, "isReplaceScreen"], [_mobx.observable, 1, "isSeizeStream"], [_setIsSeizeStreamDecs, 18, "setIsSeizeStream"], [_setIsReplaceScreenDecs, 18, "setIsReplaceScreen"], [_setIsSharingScreenDecs, 18, "setIsSharingScreen"], [_setScreenSharingOwnerDecs, 18, "setScreenSharingOwner"], [_setShareWithAudioTrackDecs, 18, "setShareWithAudioTrack"], [_setLoopbackAudioSourceIdDecs, 18, "setLoopbackAudioSourceId"], [_setScreenTrackDecs, 18, "setScreenTrack"], [_setCurrentShareTypeDecs, 18, "setCurrentShareType"], [_setCurrentShareIdDecs, 18, "setCurrentShareId"], [_setCurrentShareStreamIdDecs, 18, "setCurrentShareStreamId"], [_setCurrentShareAudioProcessingChannelDecs, 18, "setCurrentShareAudioProcessingChannel"], [_setScreenCaptureSourcesDecs, 18, "setScreenCaptureSources"], [_setApplicationCaptureSourcesDecs, 18, "setApplicationCaptureSources"], [_setScreenSharingStateDecs, 18, "setScreenSharingState"], [_setCurrentShareIdInfosDecs, 18, "setCurrentShareIdInfos"], [_setCurrentSelectionDecs, 18, "setCurrentSelection"], [_setCurrentSelectionIdDecs, 18, "setCurrentSelectionId"], [_setCurrentSelectionTypeDecs, 18, "setCurrentSelectionType"], [_setCurrentSelectionBoundsDecs, 18, "setCurrentSelectionBounds"], [_setShareWithAudioDecs, 18, "setShareWithAudio"], [_handleOnConnectionStateUpdatedDecs, 18, "_handleOnConnectionStateUpdated"]], []).e, 15);
374
+ _init_isSharingScreen = _applyDecs$e[0];
375
+ _init_screenSharingOwner = _applyDecs$e[1];
376
+ _init_screenSharingState = _applyDecs$e[2];
377
+ _init_applicationCaptureSources = _applyDecs$e[3];
378
+ _init_screenCaptureSources = _applyDecs$e[4];
379
+ _init_currentShareAudioProcessingChannel = _applyDecs$e[5];
380
+ _init_currentSelectionId = _applyDecs$e[6];
381
+ _init_currentSelectionType = _applyDecs$e[7];
382
+ _init_shareWithAudio = _applyDecs$e[8];
383
+ _init_boardOwnerUser = _applyDecs$e[9];
384
+ _init_currentSelectionBounds = _applyDecs$e[10];
385
+ _init_connectionState = _applyDecs$e[11];
386
+ _init_isReplaceScreen = _applyDecs$e[12];
387
+ _init_isSeizeStream = _applyDecs$e[13];
388
+ _initProto = _applyDecs$e[14];
389
+ (0, _base.registerDependency)('sharedScreenShareSharedDataSource');
@@ -7,11 +7,14 @@ export interface FcrSecurityCheckedStateType {
7
7
  joinWithCloseVideo: boolean;
8
8
  enableWatermark: boolean;
9
9
  shareScreen: boolean;
10
- shareWhiteboard: boolean;
10
+ enableAnnotation: boolean;
11
11
  chat: boolean;
12
12
  unmuteYourself: boolean;
13
13
  startVideo: boolean;
14
14
  rename: boolean;
15
+ allowBoardWriteState: boolean;
16
+ allowAnnotationWriteState: boolean;
17
+ hasAnnotationWritePermission: boolean;
15
18
  }
16
19
  export interface FcrUISecuritySharedDataSource {
17
20
  get checkedStateMap(): FcrSecurityCheckedStateType;
@@ -109,11 +109,14 @@ var FcrUISecuritySharedDataSourceImpl = exports.FcrUISecuritySharedDataSourceImp
109
109
  joinWithCloseVideo: this._privilegeProvider.allowJoinWithMutedVideo(),
110
110
  enableWatermark: this._privilegeProvider.isWaterMarkEnabled(),
111
111
  shareScreen: this._privilegeProvider.allowScreenShareAndBoard(),
112
- shareWhiteboard: this._privilegeProvider.allowBoardWrite(),
112
+ enableAnnotation: this._privilegeProvider.hasAnnotationAllowWritePermission(),
113
113
  chat: this._privilegeProvider.allowChat(),
114
114
  unmuteYourself: this._privilegeProvider.allowUnmuteSelfAudio(),
115
115
  startVideo: this._privilegeProvider.allowUnmuteSelfVideo(),
116
- rename: this._privilegeProvider.allowChangeSelfName()
116
+ rename: this._privilegeProvider.allowChangeSelfName(),
117
+ allowBoardWriteState: this._privilegeProvider.allowBoardWriteState(),
118
+ allowAnnotationWriteState: this._privilegeProvider.allowAnnotationWriteState(),
119
+ hasAnnotationWritePermission: this._privilegeProvider.hasAnnotationWritePermission()
117
120
  };
118
121
  }
119
122
  }, {
@@ -98,16 +98,16 @@ var FcrUISharedSettingDataSourceImpl = exports.FcrUISharedSettingDataSourceImpl
98
98
  displayedMaxAttendees: 16,
99
99
  autoAdjustmentSpeakerVolume: true,
100
100
  autoAdjustmentMicrophoneVolume: (0, _imports.isElectron)(),
101
- noiseReduce: _fcrCore.FcrAiDenoiseLevel.MEDIUM,
101
+ noiseReduce: _fcrCore.FcrAiDenoiseLevel.LOW,
102
102
  recordingPath: '',
103
103
  videoHD: false,
104
104
  videoLowLight: false,
105
105
  hardwareForReception: false,
106
106
  videoNoise: false,
107
107
  audioHiFi: false,
108
- audioEchoCancellation: false,
108
+ audioEchoCancellation: true,
109
109
  audioStereo: false,
110
- audioVoiceChanger: false,
110
+ audioVoiceChanger: true,
111
111
  spotlightEnabled: true,
112
112
  isPlaySound: true,
113
113
  language: (0, _tools.getBrowserLanguage)(),
@@ -161,7 +161,9 @@ var FcrUISharedSettingDataSourceImpl = exports.FcrUISharedSettingDataSourceImpl
161
161
  var _this = this;
162
162
  var localSetting = this._localStorageProvider.read(_store.SETTING_KEY);
163
163
  if (localSetting) {
164
- var settingKeys = ['spotlightEnabled', 'shouldHideNonVideoParticipants', 'shouldHideMyVideo', 'isPlaySound', 'language', 'autoAdjustmentMicrophoneVolume', 'noiseReduce', 'audioVoiceChanger', 'audioHiFi', 'audioEchoCancellation', 'audioStereo', 'videoHD', 'videoLowLight', 'videoNoise', 'hardwareForReception'];
164
+ var settingKeys = ['spotlightEnabled', 'shouldHideNonVideoParticipants', 'shouldHideMyVideo', 'isPlaySound', 'language', 'autoAdjustmentMicrophoneVolume', 'noiseReduce',
165
+ // 'audioVoiceChanger',
166
+ 'audioHiFi', 'audioEchoCancellation', 'audioStereo', 'videoHD', 'videoLowLight', 'videoNoise', 'hardwareForReception'];
165
167
  settingKeys.forEach(function (key) {
166
168
  var targetKey = key;
167
169
  var localValue = localSetting[targetKey];
package/lib/type.d.ts CHANGED
@@ -417,6 +417,59 @@ export interface FcrUIVideoWindowData {
417
417
  phoneMicEnabled?: boolean;
418
418
  hasBoardSharing: boolean;
419
419
  }
420
+ export interface WindowManagerIRectangle {
421
+ x?: number;
422
+ y?: number;
423
+ width?: number;
424
+ height?: number;
425
+ }
426
+ export interface WindowManagerIMonitorInfo {
427
+ id: number;
428
+ bounds?: WindowManagerIRectangle;
429
+ isPrimary?: boolean;
430
+ workArea?: WindowManagerIRectangle;
431
+ }
432
+ export declare class WindowManagerMonitor {
433
+ id: number;
434
+ constructor(id: number);
435
+ getBounds(): WindowManagerIRectangle;
436
+ getWorkArea(): WindowManagerIRectangle;
437
+ isPrimary(): boolean;
438
+ getScaleFactor(): number;
439
+ isValid(): boolean;
440
+ }
441
+ export declare class WindowManagerEmptyMonitor {
442
+ getBounds(): WindowManagerIRectangle;
443
+ getWorkArea(): WindowManagerIRectangle;
444
+ isPrimary(): boolean;
445
+ getScaleFactor(): number;
446
+ isValid(): boolean;
447
+ }
448
+ export declare class WindowManager {
449
+ id: number;
450
+ processId: number;
451
+ path: string;
452
+ constructor(id: number);
453
+ getBounds(): WindowManagerIRectangle;
454
+ setBounds(bounds: WindowManagerIRectangle): void;
455
+ getTitle(): string;
456
+ getMonitor(): WindowManagerMonitor | WindowManagerEmptyMonitor;
457
+ show(): void;
458
+ hide(): void;
459
+ minimize(): void;
460
+ restore(): void;
461
+ maximize(): void;
462
+ bringToTop(): void;
463
+ redraw(): void;
464
+ isWindow(): boolean;
465
+ isVisible(): boolean;
466
+ toggleTransparency(toggle: boolean): void;
467
+ setOpacity(opacity: number): void;
468
+ getOpacity(): any;
469
+ getIcon(size?: 16 | 32 | 64 | 256): Buffer;
470
+ setOwner(window: Window | null | number): void;
471
+ getOwner(): Window;
472
+ }
420
473
  export declare enum FcrUIAiDenoiseLevel {
421
474
  LOW = 1,
422
475
  MEDIUM = 2,
@@ -14,6 +14,7 @@ import { FcrUIDialogProvider } from './providers/dialog-provider';
14
14
  import { FcrUIVideoWindowDataSource } from './shared-data-source/video-window';
15
15
  import { FcrUISharedDevicePrivilegeDataSource } from './shared-data-source/device-privilege-data';
16
16
  import { FcrUIWidgetProvider } from './providers/widget-provider';
17
+ import { FcrUIScreenShareSharedDataSource } from './shared-data-source/screen-share-data';
17
18
  export declare class FcrUIManager {
18
19
  private _sceneConfig;
19
20
  private _engine;
@@ -23,8 +24,8 @@ export declare class FcrUIManager {
23
24
  constructor(_sceneConfig: FcrUISceneConfig, _engine: FcrCoreEngine, _dom: HTMLElement, _parameters?: Record<string, unknown> | undefined);
24
25
  renderDevicePretestUi(deviceProvider: FcrUIDeviceProvider, onJoin: () => void, onExit: () => void): void;
25
26
  renderPullingUi(roomControl: FcrMainRoomControl): () => void;
26
- renderMainSceneUI(eventProvider: FcrUIEventProvider, deviceProvider: FcrUIDeviceProvider, roomProvider: FcrUIRoomProviderImpl, sharedConfigDataSource: FcrUISharedConfigDataSource, sharedSettingDataSource: FcrUISharedSettingDataSource, sharedLayoutDataSource: FcrUISharedLayoutDataSource, sharedSpeakerSpotlightDataSource: FcrUISharedSpeakerSpotlightDataSource, sharedPinDataSource: FcrUISharedPinDataSource, dialogProvider: FcrUIDialogProvider, messageProvider: FcrUIMessageProvider, sharedVideoWindowDataSource: FcrUIVideoWindowDataSource, sharedDevicePrivilegeDataSource: FcrUISharedDevicePrivilegeDataSource, widgetProvider: FcrUIWidgetProvider): () => void;
27
- renderWaitingSceneUI(eventProvider: FcrUIEventProvider, deviceProvider: FcrUIDeviceProvider, roomProvider: FcrUIRoomProviderImpl, sharedConfigDataSource: FcrUISharedConfigDataSource, dialogProvider: FcrUIDialogProvider, messageProvider: FcrUIMessageProvider, sharedLayoutDataSource: FcrUISharedLayoutDataSource, sharedSettingDataSource: FcrUISharedSettingDataSource, sharedDevicePrivilegeDataSource: FcrUISharedDevicePrivilegeDataSource, widgetProvider: FcrUIWidgetProvider): () => void;
27
+ renderMainSceneUI(eventProvider: FcrUIEventProvider, deviceProvider: FcrUIDeviceProvider, roomProvider: FcrUIRoomProviderImpl, sharedConfigDataSource: FcrUISharedConfigDataSource, sharedSettingDataSource: FcrUISharedSettingDataSource, sharedLayoutDataSource: FcrUISharedLayoutDataSource, sharedSpeakerSpotlightDataSource: FcrUISharedSpeakerSpotlightDataSource, sharedPinDataSource: FcrUISharedPinDataSource, dialogProvider: FcrUIDialogProvider, messageProvider: FcrUIMessageProvider, sharedVideoWindowDataSource: FcrUIVideoWindowDataSource, sharedDevicePrivilegeDataSource: FcrUISharedDevicePrivilegeDataSource, widgetProvider: FcrUIWidgetProvider, sharedScreenShareSharedDataSource: FcrUIScreenShareSharedDataSource): () => void;
28
+ renderWaitingSceneUI(eventProvider: FcrUIEventProvider, deviceProvider: FcrUIDeviceProvider, roomProvider: FcrUIRoomProviderImpl, sharedConfigDataSource: FcrUISharedConfigDataSource, dialogProvider: FcrUIDialogProvider, messageProvider: FcrUIMessageProvider, sharedLayoutDataSource: FcrUISharedLayoutDataSource, sharedSettingDataSource: FcrUISharedSettingDataSource, sharedDevicePrivilegeDataSource: FcrUISharedDevicePrivilegeDataSource, widgetProvider: FcrUIWidgetProvider, sharedScreenShareSharedDataSource: FcrUIScreenShareSharedDataSource): () => void;
28
29
  renderLoading(isLoading: boolean): void;
29
30
  release(): void;
30
31
  }
package/lib/ui-manager.js CHANGED
@@ -160,7 +160,7 @@ var FcrUIManager = exports.FcrUIManager = /*#__PURE__*/function () {
160
160
  }
161
161
  }, {
162
162
  key: "renderMainSceneUI",
163
- value: function renderMainSceneUI(eventProvider, deviceProvider, roomProvider, sharedConfigDataSource, sharedSettingDataSource, sharedLayoutDataSource, sharedSpeakerSpotlightDataSource, sharedPinDataSource, dialogProvider, messageProvider, sharedVideoWindowDataSource, sharedDevicePrivilegeDataSource, widgetProvider) {
163
+ value: function renderMainSceneUI(eventProvider, deviceProvider, roomProvider, sharedConfigDataSource, sharedSettingDataSource, sharedLayoutDataSource, sharedSpeakerSpotlightDataSource, sharedPinDataSource, dialogProvider, messageProvider, sharedVideoWindowDataSource, sharedDevicePrivilegeDataSource, widgetProvider, sharedScreenShareSharedDataSource) {
164
164
  var scene = new _mainScene.FcrMainUIScene({
165
165
  engine: this._engine,
166
166
  eventProvider: eventProvider,
@@ -175,7 +175,8 @@ var FcrUIManager = exports.FcrUIManager = /*#__PURE__*/function () {
175
175
  messageProvider: messageProvider,
176
176
  sharedVideoWindowDataSource: sharedVideoWindowDataSource,
177
177
  sharedDevicePrivilegeDataSource: sharedDevicePrivilegeDataSource,
178
- widgetProvider: widgetProvider
178
+ widgetProvider: widgetProvider,
179
+ sharedScreenShareSharedDataSource: sharedScreenShareSharedDataSource
179
180
  });
180
181
  scene.nodeWillActive();
181
182
  scene.mount(this._containerDom);
@@ -187,7 +188,7 @@ var FcrUIManager = exports.FcrUIManager = /*#__PURE__*/function () {
187
188
  }
188
189
  }, {
189
190
  key: "renderWaitingSceneUI",
190
- value: function renderWaitingSceneUI(eventProvider, deviceProvider, roomProvider, sharedConfigDataSource, dialogProvider, messageProvider, sharedLayoutDataSource, sharedSettingDataSource, sharedDevicePrivilegeDataSource, widgetProvider) {
191
+ value: function renderWaitingSceneUI(eventProvider, deviceProvider, roomProvider, sharedConfigDataSource, dialogProvider, messageProvider, sharedLayoutDataSource, sharedSettingDataSource, sharedDevicePrivilegeDataSource, widgetProvider, sharedScreenShareSharedDataSource) {
191
192
  var scene = new _waitingScene.FcrWaitingUIScene({
192
193
  engine: this._engine,
193
194
  eventProvider: eventProvider,
@@ -199,7 +200,8 @@ var FcrUIManager = exports.FcrUIManager = /*#__PURE__*/function () {
199
200
  sharedLayoutDataSource: sharedLayoutDataSource,
200
201
  sharedSettingDataSource: sharedSettingDataSource,
201
202
  sharedDevicePrivilegeDataSource: sharedDevicePrivilegeDataSource,
202
- widgetProvider: widgetProvider
203
+ widgetProvider: widgetProvider,
204
+ sharedScreenShareSharedDataSource: sharedScreenShareSharedDataSource
203
205
  });
204
206
  scene.nodeWillActive();
205
207
  scene.mount(this._containerDom);