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,7 @@
1
+ import { ConfirmContentProps } from 'agora-ui-foundation/lib/components/confirm-content';
2
+ export declare const ConfirmWindow: ({ confirm, onMouseEnter, onMouseLeave, activeConfirm, }: {
3
+ confirm: ConfirmContentProps;
4
+ onMouseEnter: (title: string | undefined) => void;
5
+ onMouseLeave: () => void;
6
+ activeConfirm: string | undefined;
7
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,188 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.array.filter.js");
5
+ require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.push.js");
7
+ require("core-js/modules/es.object.define-properties.js");
8
+ require("core-js/modules/es.object.define-property.js");
9
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
11
+ require("core-js/modules/es.object.keys.js");
12
+ require("core-js/modules/es.object.to-string.js");
13
+ require("core-js/modules/esnext.async-iterator.filter.js");
14
+ require("core-js/modules/esnext.async-iterator.for-each.js");
15
+ require("core-js/modules/esnext.iterator.constructor.js");
16
+ require("core-js/modules/esnext.iterator.filter.js");
17
+ require("core-js/modules/esnext.iterator.for-each.js");
18
+ require("core-js/modules/web.dom-collections.for-each.js");
19
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
20
+ Object.defineProperty(exports, "__esModule", {
21
+ value: true
22
+ });
23
+ exports.ConfirmWindow = void 0;
24
+ require("core-js/modules/es.array.concat.js");
25
+ require("core-js/modules/es.date.to-json.js");
26
+ require("core-js/modules/es.json.stringify.js");
27
+ require("core-js/modules/web.timers.js");
28
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
29
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
30
+ var _mobxReact = require("mobx-react");
31
+ var _react = require("react");
32
+ var _store = require("../../store");
33
+ var _useElectron = require("../../../dialog/hooks/useElectron");
34
+ var _env = require("agora-foundation/lib/utilities/env");
35
+ var _confirmContent = require("agora-ui-foundation/lib/components/confirm-content");
36
+ var _platform = require("../../../../utilities/platform");
37
+ var _tools = require("../../../../utilities/tools");
38
+ var _renderer = require("../../../../utilities/renderer");
39
+ var _react2 = require("@use-gesture/react");
40
+ var _jsxRuntime = require("react/jsx-runtime");
41
+ 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; }
42
+ 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; }
43
+ var ConfirmWindow = exports.ConfirmWindow = (0, _mobxReact.observer)(function (_ref) {
44
+ var _rndRef$current;
45
+ var confirm = _ref.confirm,
46
+ onMouseEnter = _ref.onMouseEnter,
47
+ onMouseLeave = _ref.onMouseLeave,
48
+ activeConfirm = _ref.activeConfirm;
49
+ var _useContext = (0, _react.useContext)(_store.StoreContext),
50
+ screenBounds = _useContext.screenBounds,
51
+ calculateMethods = _useContext.calculateMethods,
52
+ log = _useContext.log;
53
+ var _ref2 = (0, _env.isElectron)() ? (0, _react.useContext)(_useElectron.DialogInstanceContext) : {},
54
+ browserWindow = _ref2.browserWindow;
55
+ var rndRef = (0, _react.useRef)(null);
56
+ var windowFocusTimerRef = (0, _react.useRef)();
57
+ var defaultSize = {
58
+ width: confirm.width || 320,
59
+ height: confirm.height ? confirm.height : ((_rndRef$current = rndRef.current) === null || _rndRef$current === void 0 ? void 0 : _rndRef$current.getBoundingClientRect().height) || (confirm.icon ? 160 : 150)
60
+ };
61
+ var baseBounds = (0, _react.useMemo)(function () {
62
+ var _ref3 = screenBounds || {
63
+ width: window.innerWidth,
64
+ height: window.innerHeight
65
+ },
66
+ width = _ref3.width,
67
+ height = _ref3.height;
68
+ return {
69
+ x: width / 2 - defaultSize.width / 2,
70
+ y: height / 2 - defaultSize.height / 2,
71
+ width: width,
72
+ height: height
73
+ };
74
+ }, [screenBounds]);
75
+ var _useState = (0, _react.useState)({
76
+ x: baseBounds.x,
77
+ y: baseBounds.y
78
+ }),
79
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
80
+ bounds = _useState2[0],
81
+ setBounds = _useState2[1];
82
+ var bind = (0, _react2.useDrag)(function (_ref4) {
83
+ var _ref4$delta = (0, _slicedToArray2["default"])(_ref4.delta, 2),
84
+ dx = _ref4$delta[0],
85
+ dy = _ref4$delta[1];
86
+ var x = bounds.x + dx;
87
+ var y = bounds.y + dy;
88
+ var maxX = baseBounds.width - defaultSize.width;
89
+ var maxY = baseBounds.height - defaultSize.height;
90
+ var coord = {
91
+ x: Math.max(0, Math.min(maxX, x)),
92
+ y: Math.max(0, Math.min(maxY, y))
93
+ };
94
+ setBounds(coord);
95
+ });
96
+ var ignoreMouseTimer = (0, _react.useRef)();
97
+ function recalculate(bounds) {
98
+ if (windowFocusTimerRef.current) {
99
+ clearTimeout(windowFocusTimerRef.current);
100
+ windowFocusTimerRef.current = undefined;
101
+ }
102
+ log("call handle checkMouseOver condition: ".concat((0, _env.isElectron)(), " && ").concat((0, _platform.isWindows)(), " && ").concat(browserWindow, " && ").concat(rndRef.current, " && ").concat(JSON.stringify(screenBounds)));
103
+ if ((0, _env.isElectron)() && (0, _platform.isWindows)() && browserWindow && rndRef.current && screenBounds) {
104
+ log("handleCheckMouseOver called , the bounds is ".concat(JSON.stringify(bounds || screenBounds)));
105
+ (0, _tools.handleCheckMouseOver)({
106
+ elem: rndRef.current,
107
+ browserWindow: browserWindow,
108
+ screenBounds: bounds || screenBounds,
109
+ callback: function callback(timerId) {
110
+ windowFocusTimerRef.current = timerId;
111
+ }
112
+ });
113
+ }
114
+ }
115
+ var handleRecalculate = function handleRecalculate() {
116
+ return recalculate();
117
+ };
118
+ (0, _react.useEffect)(function () {
119
+ recalculate();
120
+ !calculateMethods.has(confirm) && calculateMethods.set(confirm, recalculate);
121
+ (0, _env.isElectron)() && (0, _platform.isWindows)() && window.runtime.screen.addListener('display-removed', handleRecalculate);
122
+ return function () {
123
+ clearTimeout(windowFocusTimerRef.current);
124
+ calculateMethods["delete"](confirm);
125
+ ignoreMouseTimer.current && clearInterval(ignoreMouseTimer.current);
126
+ (0, _env.isElectron)() && (0, _platform.isWindows)() && window.runtime.screen.removeListener('display-removed', handleRecalculate);
127
+ };
128
+ }, [rndRef.current /** hack 处理 windows 下,弹出窗口层级不对的问题 */]);
129
+ (0, _react.useEffect)(function () {
130
+ log("when screen bounds changed ".concat(JSON.stringify(screenBounds)));
131
+ (0, _platform.isWindows)() && setBounds({
132
+ x: baseBounds.x,
133
+ y: baseBounds.y
134
+ });
135
+ }, [screenBounds]);
136
+ var handleMouseEnter = function handleMouseEnter() {
137
+ ignoreMouseTimer.current && activeConfirm === confirm.title && clearInterval(ignoreMouseTimer.current);
138
+ if ((0, _env.isElectron)()) {
139
+ onMouseEnter(confirm.title);
140
+ browserWindow === null || browserWindow === void 0 || browserWindow.setIgnoreMouseEvents(false);
141
+ browserWindow === null || browserWindow === void 0 || browserWindow.focus();
142
+ }
143
+ };
144
+ var handleMouseLeave = function handleMouseLeave() {
145
+ if ((0, _env.isElectron)()) {
146
+ onMouseLeave();
147
+ log("[event-confirm]: handleMouseLeave, ignore mouse events: true");
148
+ browserWindow === null || browserWindow === void 0 || browserWindow.setIgnoreMouseEvents(true, {
149
+ forward: true
150
+ });
151
+ // 修复老版本的 mac 下,ignore 会失效的问题
152
+ if (activeConfirm === undefined && (0, _renderer.isMac)()) {
153
+ ignoreMouseTimer.current = setInterval(function () {
154
+ browserWindow === null || browserWindow === void 0 || browserWindow.setIgnoreMouseEvents(true, {
155
+ forward: true
156
+ });
157
+ }, 1000);
158
+ }
159
+ }
160
+ };
161
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", _objectSpread(_objectSpread({}, bind()), {}, {
162
+ onMouseLeave: handleMouseLeave,
163
+ onMouseEnter: handleMouseEnter,
164
+ onMouseMove: handleMouseEnter,
165
+ style: {
166
+ width: defaultSize.width,
167
+ height: confirm.height || 'auto',
168
+ left: "".concat(bounds.x, "px"),
169
+ top: "".concat(bounds.y, "px"),
170
+ position: 'absolute',
171
+ touchAction: 'none'
172
+ },
173
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
174
+ ref: rndRef,
175
+ onClick: function onClick(e) {
176
+ return e.stopPropagation();
177
+ },
178
+ onKeyUp: function onKeyUp(e) {
179
+ return e.stopPropagation();
180
+ },
181
+ onKeyDown: function onKeyDown(e) {
182
+ return e.stopPropagation();
183
+ },
184
+ className: "fcr-confirm-dialog-wrapper_web",
185
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirmContent.ConfirmContent, _objectSpread({}, confirm))
186
+ })
187
+ }));
188
+ });
@@ -6,20 +6,20 @@ import { FcrUICurrentRoomControlProvider, FcrUIRoomProvider } from '../../provid
6
6
  import { FcrUIMemberSharedDataSource } from '../../shared-data-source/member-data';
7
7
  import { FcrUIAbilityProviderImpl } from '../../providers/ability-provider';
8
8
  import { FcrUIScreenShareProvider } from '../../providers/screen-share-provider';
9
- import { FcrUIScreenShareDataSource } from '../../shared-data-source/screen-share-data-source';
9
+ import { FcrUIScreenShareSharedDataSource } from '../../shared-data-source/screen-share-data';
10
10
  export declare class EventConfirmUIModule extends UIModule {
11
11
  private _store?;
12
12
  private _leaveMeetingStore?;
13
13
  eventProvider?: FcrUIEventProvider;
14
14
  dialogProvider?: FcrUIDialogProvider;
15
15
  privilegeProvider?: FcrUIPrivilegeProvider;
16
- currentRoomControlProvider?: FcrUICurrentRoomControlProvider;
17
16
  screenShareProvider?: FcrUIScreenShareProvider;
17
+ currentRoomControlProvider?: FcrUICurrentRoomControlProvider;
18
18
  roomProvider?: FcrUIRoomProvider;
19
19
  sharedMemberDataSource?: FcrUIMemberSharedDataSource;
20
20
  abilityProvider?: FcrUIAbilityProviderImpl;
21
- screenShareDataSource?: FcrUIScreenShareDataSource;
21
+ sharedScreenShareSharedDataSource?: FcrUIScreenShareSharedDataSource;
22
22
  onNodeWillActive(): void;
23
23
  onNodeWillInactive(): void;
24
- getComponent(): import("react/jsx-runtime").JSX.Element;
24
+ getComponent(scene: string): import("react/jsx-runtime").JSX.Element;
25
25
  }
@@ -39,13 +39,13 @@ var EventConfirmUIModule = exports.EventConfirmUIModule = /*#__PURE__*/function
39
39
  return (0, _createClass2["default"])(EventConfirmUIModule, [{
40
40
  key: "onNodeWillActive",
41
41
  value: function onNodeWillActive() {
42
- if (this.eventProvider && this.dialogProvider) {
42
+ if (this.eventProvider && this.dialogProvider && this.sharedScreenShareSharedDataSource) {
43
43
  var _this$currentRoomCont;
44
44
  this._store = new _store2["default"]({
45
45
  uiEventStore: this.eventProvider,
46
46
  dialogProvider: this.dialogProvider,
47
- screenShareProvider: this.screenShareProvider,
48
- screenShareDataSource: this.screenShareDataSource
47
+ sharedScreenShareSharedDataSource: this.sharedScreenShareSharedDataSource,
48
+ screenShareProvider: this.screenShareProvider
49
49
  });
50
50
  this._leaveMeetingStore = new _store.LeaveMeetingStore(this.privilegeProvider, this.roomProvider, (_this$currentRoomCont = this.currentRoomControlProvider) === null || _this$currentRoomCont === void 0 ? void 0 : _this$currentRoomCont.currentRoomControl, this.sharedMemberDataSource, this.abilityProvider, this.dialogProvider);
51
51
  }
@@ -58,7 +58,9 @@ var EventConfirmUIModule = exports.EventConfirmUIModule = /*#__PURE__*/function
58
58
  }
59
59
  }, {
60
60
  key: "getComponent",
61
- value: function getComponent() {
61
+ value: function getComponent(scene) {
62
+ var _this$_store2;
63
+ (_this$_store2 = this._store) === null || _this$_store2 === void 0 || _this$_store2.log("[EventConfirmUIModule]: [getComponent], scene: ".concat(scene));
62
64
  if (!this._store) {
63
65
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {});
64
66
  }
@@ -2,16 +2,15 @@ import { ConfirmContentProps } from 'agora-ui-foundation/lib/components/confirm-
2
2
  import { FcrUIEventProvider } from '../../providers/event-provider';
3
3
  import { FcrUIDialogParams } from '../../type';
4
4
  import { FcrUIDialogProvider } from '../../providers/dialog-provider';
5
+ import { FcrUIScreenShareSharedDataSource } from '../../shared-data-source/screen-share-data';
5
6
  import { FcrUIScreenShareProvider } from '../../providers/screen-share-provider';
6
7
  import { CurrentShareBounds } from '../control-bar/types';
7
- import { FcrUIScreenShareDataSource } from '../../shared-data-source/screen-share-data-source';
8
8
  export default class ConfirmStore {
9
9
  protected logger: import("agora-foundation/lib/logger").Logger;
10
10
  private _disposers;
11
11
  private _uiEventProvider;
12
12
  private _dialogProvider;
13
- private _screenShareProvider;
14
- private _screenShareDataSource;
13
+ private _sharedScreenShareSharedDataSource;
15
14
  private _handleConfirmEventObserver;
16
15
  accessor isReplaceShare: boolean;
17
16
  accessor calculateMethods: Map<ConfirmContentProps, (bounds?: CurrentShareBounds | null) => void>;
@@ -23,11 +22,11 @@ export default class ConfirmStore {
23
22
  accessor screenBounds: CurrentShareBounds | Electron.Rectangle | null;
24
23
  get confirmList(): ConfirmContentProps[];
25
24
  get isSeizeScreen(): boolean;
26
- constructor({ uiEventStore, dialogProvider, screenShareProvider, screenShareDataSource, }: {
25
+ constructor({ uiEventStore, dialogProvider, screenShareProvider, sharedScreenShareSharedDataSource, }: {
27
26
  uiEventStore: FcrUIEventProvider;
28
27
  dialogProvider: FcrUIDialogProvider;
29
28
  screenShareProvider: FcrUIScreenShareProvider;
30
- screenShareDataSource: FcrUIScreenShareDataSource;
29
+ sharedScreenShareSharedDataSource: FcrUIScreenShareSharedDataSource;
31
30
  });
32
31
  addConfirm(payload: FcrUIDialogParams<ConfirmContentProps>): void;
33
32
  resetIsReplace(): void;
@@ -101,7 +101,7 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
101
101
  var uiEventStore = _ref2.uiEventStore,
102
102
  dialogProvider = _ref2.dialogProvider,
103
103
  screenShareProvider = _ref2.screenShareProvider,
104
- screenShareDataSource = _ref2.screenShareDataSource;
104
+ sharedScreenShareSharedDataSource = _ref2.sharedScreenShareSharedDataSource;
105
105
  (0, _classCallCheck2["default"])(this, ConfirmStore);
106
106
  (0, _defineProperty2["default"])(this, _ref, (_initProto(this), (0, _logger.createLogger)({
107
107
  prefix: 'ConfirmStore'
@@ -117,8 +117,7 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
117
117
  _classPrivateFieldInitSpec(this, _E, _init_screenBounds(this, (0, _env.isElectron)() ? window.runtime.browserWindow.getBounds() : null));
118
118
  this._uiEventProvider = uiEventStore;
119
119
  this._dialogProvider = dialogProvider;
120
- this._screenShareProvider = screenShareProvider;
121
- this._screenShareDataSource = screenShareDataSource;
120
+ this._sharedScreenShareSharedDataSource = sharedScreenShareSharedDataSource;
122
121
  this._uiEventProvider.addObserver(this._handleConfirmEventObserver);
123
122
  this._dialogProvider.addObserver(this._handleConfirmEventObserver);
124
123
  this._disposers.push((0, _mobx.reaction)(function () {
@@ -129,20 +128,22 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
129
128
  value === null || value === void 0 || (_value$timer = value.timer) === null || _value$timer === void 0 || _value$timer.call(value);
130
129
  });
131
130
  }), (0, _mobx.reaction)(function () {
132
- var _this$_screenShareDat;
133
- return (_this$_screenShareDat = _this._screenShareDataSource) === null || _this$_screenShareDat === void 0 ? void 0 : _this$_screenShareDat.currentShareBounds;
131
+ var _this$_sharedScreenSh;
132
+ return (_this$_sharedScreenSh = _this._sharedScreenShareSharedDataSource) === null || _this$_sharedScreenSh === void 0 ? void 0 : _this$_sharedScreenSh.currentSelectionBounds;
134
133
  }, function (bounds) {
135
134
  if (bounds) {
136
- var _ref3 = (0, _tools.followCorrectDisplay)({
137
- dialogKey: _constant.FcrUIDialogKey.CONFIRM,
138
- alwaysFollowScreen: true
139
- }),
140
- nearDisplayBounds = _ref3.nearDisplayBounds;
141
- _this.calculateMethods.forEach(function (method) {
142
- return method(nearDisplayBounds);
135
+ var res = (0, _tools.followCorrectDisplay)({
136
+ dialogKey: _constant.FcrUIDialogKey.CONFIRM,
137
+ alwaysFollowScreen: true
143
138
  });
144
- _this.logger.info("new sharing bounds is ".concat(JSON.stringify(nearDisplayBounds)));
145
- _this.screenBounds = nearDisplayBounds;
139
+ if (res) {
140
+ var nearDisplayBounds = res.nearDisplayBounds;
141
+ _this.calculateMethods.forEach(function (method) {
142
+ return method(nearDisplayBounds);
143
+ });
144
+ _this.logger.info("new sharing bounds is ".concat(JSON.stringify(nearDisplayBounds)));
145
+ _this.screenBounds = nearDisplayBounds;
146
+ }
146
147
  } else {
147
148
  _this.logger.error("there is have no bounds ".concat(JSON.stringify(bounds)));
148
149
  }
@@ -150,12 +151,12 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
150
151
  return _this.isSeizeScreen;
151
152
  }, function (isSeize) {
152
153
  if (isSeize && (0, _env.isElectron)()) {
153
- var _ref4 = (0, _tools.followCorrectDisplay)({
154
+ var _ref3 = (0, _tools.followCorrectDisplay)({
154
155
  dialogKey: _constant.FcrUIDialogKey.CONFIRM,
155
156
  alwaysFollowScreen: true,
156
157
  extraRefControlbarCondition: isSeize
157
158
  }),
158
- nearDisplayBounds = _ref4.nearDisplayBounds;
159
+ nearDisplayBounds = _ref3.nearDisplayBounds;
159
160
  _this.screenBounds = nearDisplayBounds;
160
161
  _this.logger.info("new sharing bounds is ".concat(JSON.stringify(nearDisplayBounds), ", when seize screen emit"));
161
162
  }
@@ -199,7 +200,8 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
199
200
  }
200
201
  }, {
201
202
  key: "screenBounds",
202
- get: function get() {
203
+ get: // @observable accessor mousePosition: { x: number; y: number } = { x: 0, y: 0 };
204
+ function get() {
203
205
  return _classPrivateFieldGet(_E, this);
204
206
  },
205
207
  set: function set(v) {
@@ -216,8 +218,7 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
216
218
  }, {
217
219
  key: "isSeizeScreen",
218
220
  get: function get() {
219
- var _this$_screenSharePro;
220
- return (_this$_screenSharePro = this._screenShareProvider) === null || _this$_screenSharePro === void 0 ? void 0 : _this$_screenSharePro.isSeizeStream;
221
+ return this._sharedScreenShareSharedDataSource.isSeizeStream;
221
222
  }
222
223
  }, {
223
224
  key: "addConfirm",
@@ -282,6 +283,12 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
282
283
  value: function resetIsReplace() {
283
284
  this.isReplaceShare = false;
284
285
  }
286
+
287
+ // @action.bound
288
+ // setMousePosition(e: MouseEvent) {
289
+ // console.log('setMousePosition', e.pageX, e.pageY);
290
+ // this.mousePosition = { x: e.pageX, y: e.pageY };
291
+ // }
285
292
  }, {
286
293
  key: "release",
287
294
  value: function release() {
@@ -304,13 +311,15 @@ var ConfirmStore = exports["default"] = /*#__PURE__*/function () {
304
311
  if ((payload === null || payload === void 0 ? void 0 : payload.dialogKey) === _constant.FcrUIDialogKey.CONFIRM) {
305
312
  switch (action) {
306
313
  case _constant.FcrUIAction.OPEN_DIALOG:
307
- var _ref6 = (0, _tools.followCorrectDisplay)({
308
- dialogKey: _constant.FcrUIDialogKey.CONFIRM,
309
- alwaysFollowScreen: true
310
- }),
311
- nearDisplayBounds = _ref6.nearDisplayBounds;
312
- this.screenBounds = nearDisplayBounds;
313
- this.logger.info("open confirm dialog with bounds ".concat(JSON.stringify(nearDisplayBounds)));
314
+ if ((0, _env.isElectron)()) {
315
+ var _ref5 = (0, _tools.followCorrectDisplay)({
316
+ dialogKey: _constant.FcrUIDialogKey.CONFIRM,
317
+ alwaysFollowScreen: true
318
+ }),
319
+ nearDisplayBounds = _ref5.nearDisplayBounds;
320
+ this.screenBounds = nearDisplayBounds;
321
+ this.logger.info("open confirm dialog with bounds ".concat(JSON.stringify(nearDisplayBounds)));
322
+ }
314
323
  this.addConfirm(payload);
315
324
  break;
316
325
  case _constant.FcrUIAction.CLOSE_DIALOG:
@@ -1,55 +1,35 @@
1
1
  "use strict";
2
2
 
3
- require("core-js/modules/es.symbol.js");
4
- require("core-js/modules/es.array.filter.js");
5
- require("core-js/modules/es.array.for-each.js");
6
- require("core-js/modules/es.array.push.js");
7
- require("core-js/modules/es.object.define-properties.js");
8
3
  require("core-js/modules/es.object.define-property.js");
9
- require("core-js/modules/es.object.get-own-property-descriptor.js");
10
- require("core-js/modules/es.object.get-own-property-descriptors.js");
11
- require("core-js/modules/es.object.keys.js");
12
- require("core-js/modules/es.object.to-string.js");
13
- require("core-js/modules/esnext.async-iterator.filter.js");
14
- require("core-js/modules/esnext.async-iterator.for-each.js");
15
- require("core-js/modules/esnext.iterator.constructor.js");
16
- require("core-js/modules/esnext.iterator.filter.js");
17
- require("core-js/modules/esnext.iterator.for-each.js");
18
- require("core-js/modules/web.dom-collections.for-each.js");
19
4
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
20
5
  Object.defineProperty(exports, "__esModule", {
21
6
  value: true
22
7
  });
23
8
  exports.View = void 0;
24
- require("core-js/modules/es.array.concat.js");
25
9
  require("core-js/modules/es.array.map.js");
26
- require("core-js/modules/es.date.to-json.js");
27
- require("core-js/modules/es.json.stringify.js");
28
10
  require("core-js/modules/esnext.async-iterator.map.js");
29
11
  require("core-js/modules/esnext.iterator.map.js");
30
- require("core-js/modules/web.timers.js");
31
- var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
32
- var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
33
12
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
13
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
34
14
  var _mobxReact = require("mobx-react");
35
15
  var _react = require("react");
36
16
  var _store = require("./store");
37
- require("./index.css");
38
- var _confirmContent = require("agora-ui-foundation/lib/components/confirm-content");
39
17
  var _useElectron = require("../dialog/hooks/useElectron");
40
- var _react2 = require("@use-gesture/react");
41
18
  var _env = require("agora-foundation/lib/utilities/env");
42
- var _tools = require("../../utilities/tools");
43
- var _platform = require("../../utilities/platform");
19
+ var _window = require("./components/window");
20
+ require("./index.css");
44
21
  var _jsxRuntime = require("react/jsx-runtime");
45
- 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; }
46
- 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; }
47
22
  var View = exports.View = (0, _mobxReact.observer)(function () {
48
23
  var _useContext = (0, _react.useContext)(_store.StoreContext),
49
24
  confirmList = _useContext.confirmList;
50
25
  var _ref = (0, _env.isElectron)() ? (0, _react.useContext)(_useElectron.DialogInstanceContext) : {},
51
26
  browserWindow = _ref.browserWindow;
27
+ var _useState = (0, _react.useState)(undefined),
28
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
29
+ activeConfirm = _useState2[0],
30
+ setActiveConfirm = _useState2[1];
52
31
  (0, _react.useEffect)(function () {
32
+ // window.addEventListener('mousemove', setMousePosition);
53
33
  if ((0, _toConsumableArray2["default"])(confirmList).length === 0) {
54
34
  browserWindow === null || browserWindow === void 0 || browserWindow.setIgnoreMouseEvents(true);
55
35
  browserWindow === null || browserWindow === void 0 || browserWindow.blur();
@@ -57,155 +37,27 @@ var View = exports.View = (0, _mobxReact.observer)(function () {
57
37
  browserWindow === null || browserWindow === void 0 || browserWindow.focus();
58
38
  browserWindow === null || browserWindow === void 0 || browserWindow.setAlwaysOnTop(true, 'screen-saver');
59
39
  }
40
+ // return () => {
41
+ // window.removeEventListener('mousemove', setMousePosition);
42
+ // };
60
43
  }, [confirmList]);
44
+ var handleMouseEnter = function handleMouseEnter(title) {
45
+ setActiveConfirm(title);
46
+ };
47
+ var handleMouseLeave = function handleMouseLeave() {
48
+ setActiveConfirm(undefined);
49
+ };
61
50
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
62
51
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
63
52
  className: "confirm-wrapper",
64
- children: (0, _toConsumableArray2["default"])(confirmList).map(function (confirm, idx) {
65
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(ConfirmWindow, {
66
- confirm: confirm
53
+ children: (0, _toConsumableArray2["default"])(confirmList).map(function (confirm) {
54
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_window.ConfirmWindow, {
55
+ confirm: confirm,
56
+ onMouseEnter: handleMouseEnter,
57
+ onMouseLeave: handleMouseLeave,
58
+ activeConfirm: activeConfirm
67
59
  }, confirm.title);
68
60
  })
69
61
  })
70
62
  });
71
- });
72
- var ConfirmWindow = (0, _mobxReact.observer)(function (_ref2) {
73
- var _rndRef$current;
74
- var confirm = _ref2.confirm;
75
- var _useContext2 = (0, _react.useContext)(_store.StoreContext),
76
- screenBounds = _useContext2.screenBounds,
77
- calculateMethods = _useContext2.calculateMethods,
78
- log = _useContext2.log;
79
- var _ref3 = (0, _env.isElectron)() ? (0, _react.useContext)(_useElectron.DialogInstanceContext) : {},
80
- browserWindow = _ref3.browserWindow;
81
- var rndRef = (0, _react.useRef)(null);
82
- var windowFocusTimerRef = (0, _react.useRef)();
83
- var defaultSize = {
84
- width: confirm.width || 320,
85
- height: confirm.height ? confirm.height : ((_rndRef$current = rndRef.current) === null || _rndRef$current === void 0 ? void 0 : _rndRef$current.getBoundingClientRect().height) || (confirm.icon ? 160 : 150)
86
- };
87
- var baseBounds = (0, _react.useMemo)(function () {
88
- var _ref4 = screenBounds || {
89
- width: window.innerWidth,
90
- height: window.innerHeight
91
- },
92
- width = _ref4.width,
93
- height = _ref4.height;
94
- return {
95
- x: width / 2 - defaultSize.width / 2,
96
- y: height / 2 - defaultSize.height / 2,
97
- width: width,
98
- height: height
99
- };
100
- }, [screenBounds]);
101
- var _useState = (0, _react.useState)({
102
- x: baseBounds.x,
103
- y: baseBounds.y
104
- }),
105
- _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
106
- bounds = _useState2[0],
107
- setBounds = _useState2[1];
108
- var bind = (0, _react2.useDrag)(function (_ref5) {
109
- var _ref5$delta = (0, _slicedToArray2["default"])(_ref5.delta, 2),
110
- dx = _ref5$delta[0],
111
- dy = _ref5$delta[1];
112
- var x = bounds.x + dx;
113
- var y = bounds.y + dy;
114
- var maxX = baseBounds.width - defaultSize.width;
115
- var maxY = baseBounds.height - defaultSize.height;
116
- var coord = {
117
- x: Math.max(0, Math.min(maxX, x)),
118
- y: Math.max(0, Math.min(maxY, y))
119
- };
120
- setBounds(coord);
121
- });
122
- var ignoreMouseTimer = (0, _react.useRef)();
123
- function recalculate(bounds) {
124
- if (windowFocusTimerRef.current) {
125
- clearTimeout(windowFocusTimerRef.current);
126
- windowFocusTimerRef.current = undefined;
127
- }
128
- log("call handle checkMouseOver condition: ".concat((0, _env.isElectron)(), " && ").concat((0, _platform.isWindows)(), " && ").concat(browserWindow, " && ").concat(rndRef.current, " && ").concat(JSON.stringify(screenBounds)));
129
- if ((0, _env.isElectron)() && (0, _platform.isWindows)() && browserWindow && rndRef.current && screenBounds) {
130
- log("handleCheckMouseOver called , the bounds is ".concat(JSON.stringify(bounds || screenBounds)));
131
- (0, _tools.handleCheckMouseOver)({
132
- elem: rndRef.current,
133
- browserWindow: browserWindow,
134
- screenBounds: bounds || screenBounds,
135
- callback: function callback(timerId) {
136
- windowFocusTimerRef.current = timerId;
137
- }
138
- });
139
- }
140
- }
141
- var handleRecalculate = function handleRecalculate() {
142
- return recalculate();
143
- };
144
- (0, _react.useEffect)(function () {
145
- browserWindow === null || browserWindow === void 0 || browserWindow.setIgnoreMouseEvents(true, {
146
- forward: true
147
- });
148
- recalculate();
149
- !calculateMethods.has(confirm) && calculateMethods.set(confirm, recalculate);
150
- (0, _env.isElectron)() && (0, _platform.isWindows)() && window.runtime.screen.addListener('display-removed', handleRecalculate);
151
- return function () {
152
- clearTimeout(windowFocusTimerRef.current);
153
- calculateMethods["delete"](confirm);
154
- ignoreMouseTimer.current && clearInterval(ignoreMouseTimer.current);
155
- (0, _env.isElectron)() && (0, _platform.isWindows)() && window.runtime.screen.removeListener('display-removed', handleRecalculate);
156
- };
157
- }, [rndRef.current /** hack 处理 windows 下,弹出窗口层级不对的问题 */]);
158
- (0, _react.useEffect)(function () {
159
- log("when screen bounds changed ".concat(JSON.stringify(screenBounds)));
160
- (0, _platform.isWindows)() && setBounds({
161
- x: baseBounds.x,
162
- y: baseBounds.y
163
- });
164
- }, [screenBounds]);
165
- var handleMouseEnter = function handleMouseEnter() {
166
- ignoreMouseTimer.current && clearInterval(ignoreMouseTimer.current);
167
- if ((0, _env.isElectron)()) {
168
- browserWindow === null || browserWindow === void 0 || browserWindow.setIgnoreMouseEvents(false);
169
- browserWindow === null || browserWindow === void 0 || browserWindow.focus();
170
- }
171
- };
172
- var handleMouseLeave = function handleMouseLeave() {
173
- if ((0, _env.isElectron)()) {
174
- browserWindow === null || browserWindow === void 0 || browserWindow.setIgnoreMouseEvents(true, {
175
- forward: true
176
- });
177
- // 修复老版本的 mac 下,ignore 会失效的问题
178
- ignoreMouseTimer.current = setInterval(function () {
179
- browserWindow === null || browserWindow === void 0 || browserWindow.setIgnoreMouseEvents(true, {
180
- forward: true
181
- });
182
- }, 1000);
183
- }
184
- };
185
- return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", _objectSpread(_objectSpread({}, bind()), {}, {
186
- onMouseLeave: handleMouseLeave,
187
- onMouseEnter: handleMouseEnter,
188
- style: {
189
- width: defaultSize.width,
190
- height: confirm.height || 'auto',
191
- left: "".concat(bounds.x, "px"),
192
- top: "".concat(bounds.y, "px"),
193
- position: 'absolute',
194
- touchAction: 'none'
195
- },
196
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
197
- ref: rndRef,
198
- onClick: function onClick(e) {
199
- return e.stopPropagation();
200
- },
201
- onKeyUp: function onKeyUp(e) {
202
- return e.stopPropagation();
203
- },
204
- onKeyDown: function onKeyDown(e) {
205
- return e.stopPropagation();
206
- },
207
- className: "fcr-confirm-dialog-wrapper_web",
208
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_confirmContent.ConfirmContent, _objectSpread({}, confirm))
209
- })
210
- }));
211
63
  });
@@ -132,7 +132,7 @@ var SoundEffectUIModule = exports.SoundEffectUIModule = /*#__PURE__*/function (_
132
132
  this._chatRoomControl = this.currentRoomControlProvider.currentRoomControl.getChatRoomControl();
133
133
  this._streamControl = this.currentRoomControlProvider.currentRoomControl.getStreamControl();
134
134
  this._roomControl = this.currentRoomControlProvider.currentRoomControl;
135
- this._whiteboardControl = this.currentRoomControlProvider.currentRoomControl.getBoardControl();
135
+ this._whiteboardControl = this.currentRoomControlProvider.currentRoomControl.getSharingControl().getBoardControl();
136
136
  this._userControl = this.currentRoomControlProvider.currentRoomControl.getUserControl();
137
137
  this._deviceStore = this.deviceProvider;
138
138
  this._connectionControl = this.connectionProvider;