fcr-ui-scene 3.6.4 → 3.7.1

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 (468) hide show
  1. package/lib/creator.d.ts +4 -3
  2. package/lib/creator.js +146 -111
  3. package/lib/electron/app.js +1 -1
  4. package/lib/electron/bootstrap-sdk.js +49 -4
  5. package/lib/electron/injections.d.ts +5 -1
  6. package/lib/electron/injections.js +14 -2
  7. package/lib/electron/ipc/type.d.ts +8 -4
  8. package/lib/electron/ipc/type.js +10 -4
  9. package/lib/electron/logger.js +1 -1
  10. package/lib/electron/main.js +5 -2
  11. package/lib/electron/preload.js +34 -5
  12. package/lib/fragments/annotation/index.d.ts +2 -2
  13. package/lib/fragments/annotation/index.js +38 -28
  14. package/lib/fragments/annotation/libs.d.ts +2 -2
  15. package/lib/fragments/annotation/store.d.ts +21 -4
  16. package/lib/fragments/annotation/store.js +281 -84
  17. package/lib/fragments/annotation/style.css +9 -0
  18. package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/item/item.js +1 -1
  19. package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/pen-tool/pen-panel/index.js +1 -1
  20. package/lib/{modules/annotation/components → fragments/annotation}/toolbar/store.d.ts +26 -2
  21. package/lib/{modules/annotation/components → fragments/annotation}/toolbar/store.js +57 -8
  22. package/lib/{modules/annotation/components → fragments/annotation}/toolbar/view.js +36 -3
  23. package/lib/fragments/annotation/view.d.ts +1 -0
  24. package/lib/fragments/annotation/view.js +52 -10
  25. package/lib/modules/action-bar/components/apps/index.js +54 -38
  26. package/lib/modules/action-bar/components/chat/index.js +13 -34
  27. package/lib/modules/action-bar/components/collapse/index.js +1 -1
  28. package/lib/modules/action-bar/components/leave/index.js +9 -9
  29. package/lib/modules/action-bar/components/more/index.js +26 -27
  30. package/lib/modules/action-bar/components/participants/index.js +23 -39
  31. package/lib/modules/action-bar/components/record/index.js +7 -13
  32. package/lib/modules/action-bar/components/screen-share/index.js +4 -24
  33. package/lib/modules/action-bar/components/security/index.js +29 -34
  34. package/lib/modules/action-bar/components/settings/index.js +13 -19
  35. package/lib/modules/action-bar/index.d.ts +4 -0
  36. package/lib/modules/action-bar/index.js +3 -1
  37. package/lib/modules/action-bar/store.d.ts +16 -6
  38. package/lib/modules/action-bar/store.js +63 -25
  39. package/lib/modules/action-bar/types.d.ts +3 -3
  40. package/lib/modules/action-bar/view.js +2 -3
  41. package/lib/modules/annotation/annotation-index.d.ts +2 -0
  42. package/lib/modules/annotation/annotation-index.js +80 -0
  43. package/lib/modules/annotation/annotation-toolbar-store.d.ts +82 -0
  44. package/lib/modules/annotation/annotation-toolbar-store.js +501 -0
  45. package/lib/modules/annotation/components/color-picker/components/color.d.ts +5 -0
  46. package/lib/modules/annotation/components/color-picker/components/color.js +38 -0
  47. package/lib/modules/annotation/components/color-picker/components/panel.d.ts +1 -0
  48. package/lib/modules/annotation/components/color-picker/components/panel.js +109 -0
  49. package/lib/modules/annotation/components/color-picker/components/picker.d.ts +1 -0
  50. package/lib/modules/annotation/components/color-picker/components/picker.js +75 -0
  51. package/lib/modules/annotation/components/color-picker/index.d.ts +2 -0
  52. package/lib/modules/annotation/components/color-picker/index.js +47 -0
  53. package/lib/modules/annotation/components/eraser-picker.d.ts +4 -0
  54. package/lib/modules/annotation/components/eraser-picker.js +144 -0
  55. package/lib/modules/annotation/components/expansion/index.d.ts +1 -0
  56. package/lib/modules/annotation/components/expansion/index.js +100 -0
  57. package/lib/modules/annotation/components/extra-tool-picker.d.ts +1 -0
  58. package/lib/modules/annotation/components/extra-tool-picker.js +62 -0
  59. package/lib/modules/annotation/components/history.d.ts +2 -0
  60. package/lib/modules/annotation/components/history.js +78 -0
  61. package/lib/modules/annotation/components/icons/fold-icon.d.ts +2 -0
  62. package/lib/modules/annotation/components/icons/fold-icon.js +41 -0
  63. package/lib/modules/annotation/components/icons/move-icon.d.ts +1 -0
  64. package/lib/modules/annotation/components/icons/move-icon.js +66 -0
  65. package/lib/modules/annotation/components/item/index.d.ts +1 -0
  66. package/lib/modules/annotation/components/item/index.js +43 -0
  67. package/lib/modules/annotation/components/move-handle.d.ts +5 -0
  68. package/lib/modules/annotation/components/move-handle.js +134 -0
  69. package/lib/modules/annotation/components/pen-picker.d.ts +4 -0
  70. package/lib/modules/annotation/components/pen-picker.js +155 -0
  71. package/lib/modules/annotation/components/screen-capture-picker.d.ts +4 -0
  72. package/lib/modules/annotation/components/screen-capture-picker.js +85 -0
  73. package/lib/modules/annotation/components/shape-picker.d.ts +4 -0
  74. package/lib/modules/annotation/components/shape-picker.js +210 -0
  75. package/lib/modules/annotation/hooks/index.d.ts +14 -0
  76. package/lib/modules/annotation/hooks/index.js +292 -0
  77. package/lib/modules/annotation/index.d.ts +4 -1
  78. package/lib/modules/annotation/index.js +20 -22
  79. package/lib/modules/annotation/store.d.ts +59 -18
  80. package/lib/modules/annotation/store.js +503 -263
  81. package/lib/modules/annotation/style.css +10 -0
  82. package/lib/modules/annotation/view.js +9 -11
  83. package/lib/modules/chat/chat-room-store.js +5 -2
  84. package/lib/modules/chat/components/chat-select/index.js +1 -1
  85. package/lib/modules/chat/components/chat-select/select-item/index.js +10 -3
  86. package/lib/modules/chat/components/message-list/message-item/index.js +4 -2
  87. package/lib/modules/chat/index.d.ts +2 -0
  88. package/lib/modules/chat/index.js +13 -3
  89. package/lib/modules/chat/store.d.ts +3 -0
  90. package/lib/modules/chat/store.js +12 -6
  91. package/lib/modules/chat/types.d.ts +1 -0
  92. package/lib/modules/chat/types.js +2 -1
  93. package/lib/modules/chat/util.js +2 -1
  94. package/lib/modules/chat/view.js +6 -3
  95. package/lib/modules/{action-bar/components → components}/apps/app-item/index.d.ts +1 -1
  96. package/lib/modules/components/apps/app-list.d.ts +3 -0
  97. package/lib/modules/{action-bar/components → components}/apps/app-list.js +2 -4
  98. package/lib/modules/components/apps/types.d.ts +14 -0
  99. package/lib/modules/components/apps/types.js +6 -0
  100. package/lib/modules/components/device-control/components/carmera/index.js +71 -68
  101. package/lib/modules/components/device-control/components/microphone/index.js +99 -97
  102. package/lib/modules/components/device-control/store.d.ts +1 -1
  103. package/lib/modules/components/member-window/components/member-actions/components/audio-control.js +7 -7
  104. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.d.ts +0 -2
  105. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +4 -7
  106. package/lib/modules/components/member-window/components/member-actions/components/icon-status.d.ts +0 -1
  107. package/lib/modules/components/member-window/components/member-actions/components/icon-status.js +19 -36
  108. package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +1 -0
  109. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +9 -2
  110. package/lib/modules/components/member-window/components/member-actions/components/user-info.js +0 -3
  111. package/lib/modules/components/member-window/components/member-actions/components/user-tag.js +15 -11
  112. package/lib/modules/components/member-window/components/member-actions/index.js +10 -2
  113. package/lib/modules/components/member-window/components/member-actions/libs/index.js +2 -2
  114. package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.d.ts +12 -0
  115. package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.js +75 -0
  116. package/lib/modules/components/member-window/components/video-player/components/local-video-player.d.ts +1 -7
  117. package/lib/modules/components/member-window/components/video-player/components/local-video-player.js +7 -47
  118. package/lib/modules/components/member-window/components/video-player/components/remote-video-player-with-zoom.d.ts +12 -0
  119. package/lib/modules/components/member-window/components/video-player/components/remote-video-player-with-zoom.js +68 -0
  120. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.d.ts +1 -9
  121. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.js +7 -49
  122. package/lib/modules/components/member-window/components/video-player/components/zoomable-container.d.ts +15 -0
  123. package/lib/modules/components/member-window/components/video-player/components/zoomable-container.js +255 -0
  124. package/lib/modules/components/member-window/components/video-player/index.d.ts +2 -0
  125. package/lib/modules/components/member-window/components/video-player/index.js +8 -2
  126. package/lib/modules/components/member-window/index.css +16 -6
  127. package/lib/modules/components/member-window/index.d.ts +1 -1
  128. package/lib/modules/components/member-window/index.js +12 -4
  129. package/lib/modules/components/member-window/types.d.ts +2 -0
  130. package/lib/modules/components/security-menu/index.js +6 -5
  131. package/lib/modules/control-bar/components/annotation-button/index.js +21 -8
  132. package/lib/modules/control-bar/components/more-actions/index.css +13 -0
  133. package/lib/modules/control-bar/components/more-actions/index.js +1 -1
  134. package/lib/modules/control-bar/components/share-audio/index.css +90 -0
  135. package/lib/modules/control-bar/components/share-audio/index.d.ts +15 -0
  136. package/lib/modules/control-bar/components/share-audio/index.js +173 -0
  137. package/lib/modules/control-bar/components/share-state-nav/index.css +5 -0
  138. package/lib/modules/control-bar/components/share-state-nav/index.js +14 -2
  139. package/lib/modules/control-bar/index.d.ts +2 -0
  140. package/lib/modules/control-bar/index.js +9 -1
  141. package/lib/modules/control-bar/store.d.ts +16 -7
  142. package/lib/modules/control-bar/store.js +36 -12
  143. package/lib/modules/control-bar/view.d.ts +4 -0
  144. package/lib/modules/control-bar/view.js +180 -90
  145. package/lib/modules/device-pretest/store.d.ts +1 -1
  146. package/lib/modules/dialog/components/dialog-container/component/body.d.ts +1 -1
  147. package/lib/modules/dialog/components/dialog-container/index.css +1 -0
  148. package/lib/modules/dialog/components/dialog-container/index.d.ts +2 -1
  149. package/lib/modules/dialog/components/dialog-container/index.js +27 -10
  150. package/lib/modules/dialog/components/host-area-container/index.js +4 -4
  151. package/lib/modules/dialog/components/normal-window/index.d.ts +19 -0
  152. package/lib/modules/dialog/components/normal-window/index.js +69 -0
  153. package/lib/modules/dialog/{components → dialogs}/annotation-tool/index.js +17 -15
  154. package/lib/modules/dialog/dialogs/chat/components/actions.d.ts +1 -0
  155. package/lib/modules/dialog/dialogs/chat/components/actions.js +33 -0
  156. package/lib/modules/dialog/{components → dialogs}/chat/index.d.ts +1 -1
  157. package/lib/modules/dialog/dialogs/chat/index.js +59 -0
  158. package/lib/modules/dialog/dialogs/confirm-leave-meeting/index.d.ts +6 -0
  159. package/lib/modules/dialog/{components → dialogs}/confirm-leave-meeting/index.js +13 -37
  160. package/lib/modules/dialog/{components → dialogs}/connection-gateway/index.js +19 -12
  161. package/lib/modules/dialog/{components → dialogs}/control-bar/index.js +2 -2
  162. package/lib/modules/dialog/{components → dialogs}/device-setting/index.js +20 -13
  163. package/lib/modules/dialog/dialogs/end-meeting/index.d.ts +12 -0
  164. package/lib/modules/dialog/dialogs/end-meeting/index.js +45 -0
  165. package/lib/modules/dialog/{components/interpreter/electron.js → dialogs/interpreter/index.js} +17 -11
  166. package/lib/modules/dialog/dialogs/invite/index.d.ts +3 -0
  167. package/lib/modules/dialog/{components → dialogs}/invite/index.js +9 -25
  168. package/lib/modules/dialog/dialogs/live-streaming/index.d.ts +2 -0
  169. package/lib/modules/dialog/{components → dialogs}/live-streaming/index.js +11 -34
  170. package/lib/modules/dialog/dialogs/participant/components/actions.d.ts +1 -0
  171. package/lib/modules/dialog/dialogs/participant/components/actions.js +32 -0
  172. package/lib/modules/dialog/dialogs/participant/components/title.d.ts +1 -0
  173. package/lib/modules/dialog/dialogs/participant/components/title.js +19 -0
  174. package/lib/modules/dialog/dialogs/participant/index.d.ts +2 -0
  175. package/lib/modules/dialog/dialogs/participant/index.js +53 -0
  176. package/lib/modules/dialog/dialogs/pre-setting/index.js +62 -0
  177. package/lib/modules/dialog/dialogs/rename/index.js +35 -0
  178. package/lib/modules/dialog/{components → dialogs}/share-screen-selection/index.js +1 -1
  179. package/lib/modules/dialog/{components → dialogs}/video-window/index.js +11 -8
  180. package/lib/modules/dialog/{components → dialogs}/whiteboard/index.js +2 -3
  181. package/lib/modules/dialog/{components → dialogs}/widget/electron.js +1 -1
  182. package/lib/modules/dialog/{components → dialogs}/widget/index.js +1 -1
  183. package/lib/modules/dialog/hooks/use-web-drag.d.ts +8 -0
  184. package/lib/modules/dialog/hooks/use-web-drag.js +73 -0
  185. package/lib/modules/dialog/hooks/useElectron.d.ts +2 -7
  186. package/lib/modules/dialog/hooks/useElectron.js +46 -156
  187. package/lib/modules/dialog/index.d.ts +4 -0
  188. package/lib/modules/dialog/index.js +4 -2
  189. package/lib/modules/dialog/level-config.d.ts +11 -0
  190. package/lib/modules/dialog/level-config.js +21 -0
  191. package/lib/modules/dialog/store.d.ts +15 -6
  192. package/lib/modules/dialog/store.js +40 -54
  193. package/lib/modules/dialog/type.d.ts +15 -12
  194. package/lib/modules/event-confirm/components/window/index.d.ts +1 -4
  195. package/lib/modules/event-confirm/components/window/index.js +34 -23
  196. package/lib/modules/event-confirm/index.d.ts +2 -0
  197. package/lib/modules/event-confirm/index.js +3 -2
  198. package/lib/modules/event-confirm/store.d.ts +9 -1
  199. package/lib/modules/event-confirm/store.js +24 -16
  200. package/lib/modules/event-confirm/view.js +11 -22
  201. package/lib/modules/event-sound/index.d.ts +2 -0
  202. package/lib/modules/event-sound/index.js +8 -1
  203. package/lib/modules/event-toast/index.css +10 -0
  204. package/lib/modules/event-toast/store.d.ts +1 -1
  205. package/lib/modules/event-toast/store.js +17 -15
  206. package/lib/modules/event-toast/view.js +2 -1
  207. package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +4 -2
  208. package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/option-Item.js +2 -1
  209. package/lib/modules/interpreter/store.d.ts +1 -0
  210. package/lib/modules/interpreter/store.js +12 -5
  211. package/lib/modules/interpreter/view.js +7 -1
  212. package/lib/modules/layout/components/Aside.js +4 -0
  213. package/lib/modules/layout/components/Carousel.js +3 -1
  214. package/lib/modules/layout/components/CommonVideoRenderer.d.ts +3 -1
  215. package/lib/modules/layout/components/CommonVideoRenderer.js +13 -9
  216. package/lib/modules/layout/components/Gallery.js +11 -3
  217. package/lib/modules/layout/index.css +1 -0
  218. package/lib/modules/layout/index.d.ts +2 -0
  219. package/lib/modules/layout/index.js +4 -3
  220. package/lib/modules/layout/store.d.ts +9 -5
  221. package/lib/modules/layout/store.js +38 -46
  222. package/lib/modules/participant/components/confirm-input/index.css +4 -0
  223. package/lib/modules/participant/components/confirm-input/index.d.ts +1 -0
  224. package/lib/modules/participant/components/confirm-input/index.js +2 -1
  225. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +2 -1
  226. package/lib/modules/participant/components/participants/components/participants/index.js +11 -3
  227. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.js +7 -3
  228. package/lib/modules/participant/components/participants/types.d.ts +1 -0
  229. package/lib/modules/participant/store.d.ts +2 -1
  230. package/lib/modules/participant/store.js +23 -9
  231. package/lib/modules/phone-audio-connect/store.d.ts +4 -4
  232. package/lib/modules/setting/audio-settings/audio-settings.js +6 -17
  233. package/lib/modules/setting/config.d.ts +16 -0
  234. package/lib/modules/setting/config.js +17 -1
  235. package/lib/modules/setting/index.d.ts +2 -4
  236. package/lib/modules/setting/index.js +7 -16
  237. package/lib/modules/setting/minutes-settings/minutes-settings.js +0 -4
  238. package/lib/modules/setting/state/index.js +5 -5
  239. package/lib/modules/setting/store.d.ts +37 -33
  240. package/lib/modules/setting/store.js +275 -261
  241. package/lib/modules/setting/translate-settings/language-select.js +0 -2
  242. package/lib/modules/setting/video-settings/video-settings-basic.js +6 -6
  243. package/lib/modules/setting/video-settings/video-settings.js +2 -2
  244. package/lib/modules/setting/view.js +1 -1
  245. package/lib/modules/share-screen/components/control-bar/index.css +75 -0
  246. package/lib/modules/share-screen/components/control-bar/index.d.ts +3 -0
  247. package/lib/modules/share-screen/components/control-bar/index.js +88 -0
  248. package/lib/modules/share-screen/components/control-bar/items/annotation-edit-btn/index.d.ts +8 -0
  249. package/lib/modules/share-screen/components/control-bar/items/annotation-edit-btn/index.js +46 -0
  250. package/lib/modules/share-screen/components/control-bar/items/full-container-btn/index.d.ts +6 -0
  251. package/lib/modules/share-screen/components/control-bar/items/full-container-btn/index.js +32 -0
  252. package/lib/modules/share-screen/components/control-bar/items/original-size-btn/index.d.ts +6 -0
  253. package/lib/modules/share-screen/components/control-bar/items/original-size-btn/index.js +32 -0
  254. package/lib/modules/share-screen/components/control-bar/items/zoom-in-btn/index.d.ts +6 -0
  255. package/lib/modules/share-screen/components/control-bar/items/zoom-in-btn/index.js +32 -0
  256. package/lib/modules/share-screen/components/control-bar/items/zoom-out-btn/index.d.ts +6 -0
  257. package/lib/modules/share-screen/components/control-bar/items/zoom-out-btn/index.js +32 -0
  258. package/lib/modules/share-screen/components/selection/index.js +28 -14
  259. package/lib/modules/share-screen/components/share-scenario/index.d.ts +5 -0
  260. package/lib/modules/share-screen/components/share-scenario/index.js +47 -0
  261. package/lib/modules/share-screen/index.d.ts +4 -2
  262. package/lib/modules/share-screen/index.js +11 -2
  263. package/lib/modules/share-screen/store.d.ts +32 -11
  264. package/lib/modules/share-screen/store.js +273 -192
  265. package/lib/modules/share-screen/view.js +2 -2
  266. package/lib/modules/state-bar/index.js +2 -3
  267. package/lib/modules/state-bar/layout-config.d.ts +2 -4
  268. package/lib/modules/state-bar/layout-config.js +10 -5
  269. package/lib/modules/state-bar/live-streaming-state.js +0 -1
  270. package/lib/modules/state-bar/store.d.ts +7 -7
  271. package/lib/modules/state-bar/store.js +17 -15
  272. package/lib/modules/state-bar/view.js +19 -23
  273. package/lib/modules/video-window/components/members/index.js +3 -2
  274. package/lib/modules/video-window/index.js +0 -3
  275. package/lib/modules/waiting-room-layout/index.css +3 -3
  276. package/lib/modules/waiting-room-layout/index.js +2 -2
  277. package/lib/modules/waiting-room-layout/view.js +1 -0
  278. package/lib/modules/whiteboard/components/control-bar/index.js +2 -2
  279. package/lib/modules/whiteboard/components/control-bar/store.d.ts +4 -1
  280. package/lib/modules/whiteboard/components/control-bar/store.js +4 -2
  281. package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +4 -4
  282. package/lib/modules/whiteboard/components/toolbar/hooks/index.d.ts +0 -14
  283. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +4 -155
  284. package/lib/modules/whiteboard/components/toolbar/store.d.ts +4 -2
  285. package/lib/modules/whiteboard/components/toolbar/store.js +37 -25
  286. package/lib/modules/whiteboard/components/toolbar/style.css +1 -0
  287. package/lib/modules/whiteboard/index.d.ts +3 -1
  288. package/lib/modules/whiteboard/index.js +26 -23
  289. package/lib/modules/widget/view.js +4 -0
  290. package/lib/providers/ability-provider.d.ts +2 -0
  291. package/lib/providers/annotation-provider.d.ts +43 -47
  292. package/lib/providers/annotation-provider.js +94 -142
  293. package/lib/providers/app-list-provider.d.ts +98 -0
  294. package/lib/providers/app-list-provider.js +251 -0
  295. package/lib/providers/device-provider.d.ts +31 -23
  296. package/lib/providers/device-provider.js +495 -444
  297. package/lib/providers/device-stream-provider.js +2 -2
  298. package/lib/providers/event-provider.d.ts +0 -4
  299. package/lib/providers/event-provider.js +0 -10
  300. package/lib/providers/interpreter-provider.js +10 -7
  301. package/lib/providers/privilege-provider.d.ts +1 -1
  302. package/lib/providers/privilege-provider.js +3 -2
  303. package/lib/providers/renderer-provider.d.ts +1 -0
  304. package/lib/providers/renderer-provider.js +7 -2
  305. package/lib/providers/room-provider.d.ts +5 -1
  306. package/lib/providers/room-provider.js +44 -16
  307. package/lib/providers/screen-share-provider.d.ts +73 -17
  308. package/lib/providers/screen-share-provider.js +222 -100
  309. package/lib/providers/sharing-provider.d.ts +0 -1
  310. package/lib/providers/sharing-provider.js +3 -9
  311. package/lib/providers/user-setting-storage-provider.d.ts +1 -0
  312. package/lib/providers/user-setting-storage-provider.js +5 -12
  313. package/lib/providers/widget-provider.d.ts +19 -0
  314. package/lib/providers/widget-provider.js +28 -2
  315. package/lib/runtime.d.ts +10 -1
  316. package/lib/scenes/main-scene.d.ts +12 -2
  317. package/lib/scenes/main-scene.js +54 -28
  318. package/lib/scenes/waiting-scene.d.ts +11 -0
  319. package/lib/scenes/waiting-scene.js +34 -8
  320. package/lib/schema.d.ts +6 -0
  321. package/lib/schema.js +5 -1
  322. package/lib/shared-data-source/annotation-data.d.ts +17 -0
  323. package/lib/shared-data-source/annotation-data.js +110 -0
  324. package/lib/shared-data-source/app-list-data.d.ts +34 -0
  325. package/lib/shared-data-source/app-list-data.js +133 -0
  326. package/lib/shared-data-source/config.d.ts +26 -7
  327. package/lib/shared-data-source/config.js +29 -11
  328. package/lib/shared-data-source/confirm-data.d.ts +25 -0
  329. package/lib/shared-data-source/confirm-data.js +97 -0
  330. package/lib/shared-data-source/interpreter.d.ts +1 -0
  331. package/lib/shared-data-source/layout-data.d.ts +2 -0
  332. package/lib/shared-data-source/layout-data.js +14 -3
  333. package/lib/shared-data-source/meeting-time.d.ts +23 -1
  334. package/lib/shared-data-source/meeting-time.js +160 -43
  335. package/lib/shared-data-source/member-data.d.ts +10 -9
  336. package/lib/shared-data-source/member-data.js +55 -48
  337. package/lib/shared-data-source/screen-share-data.d.ts +100 -17
  338. package/lib/shared-data-source/screen-share-data.js +142 -22
  339. package/lib/shared-data-source/setting.d.ts +36 -4
  340. package/lib/shared-data-source/setting.js +92 -57
  341. package/lib/shared-data-source/video-window.d.ts +3 -0
  342. package/lib/shared-data-source/video-window.js +52 -30
  343. package/lib/shared-data-source/waiting-room.js +4 -2
  344. package/lib/translations/enUS.d.ts +62 -7
  345. package/lib/translations/enUS.js +71 -14
  346. package/lib/translations/zhCN.d.ts +62 -7
  347. package/lib/translations/zhCN.js +73 -16
  348. package/lib/type.d.ts +23 -5
  349. package/lib/type.js +6 -2
  350. package/lib/ui-manager.d.ts +5 -16
  351. package/lib/ui-manager.js +15 -57
  352. package/lib/ui-scene.d.ts +31 -6
  353. package/lib/ui-scene.js +180 -169
  354. package/lib/utilities/constant.d.ts +67 -63
  355. package/lib/utilities/constant.js +65 -61
  356. package/lib/utilities/dialog-utils.d.ts +66 -0
  357. package/lib/utilities/dialog-utils.js +188 -0
  358. package/lib/utilities/logger.js +3 -3
  359. package/lib/utilities/meeting-detail.js +1 -1
  360. package/lib/utilities/parameters.d.ts +1 -0
  361. package/lib/utilities/parameters.js +5 -1
  362. package/lib/utilities/renderer-event.d.ts +1 -1
  363. package/lib/utilities/screen-capture-permission.d.ts +1 -0
  364. package/lib/utilities/screen-capture-permission.js +9 -1
  365. package/lib/utilities/tools.d.ts +0 -66
  366. package/lib/utilities/tools.js +9 -186
  367. package/package.json +5 -6
  368. package/public/index.html +11 -1
  369. package/lib/modules/action-bar/components/apps/app-list.d.ts +0 -3
  370. package/lib/modules/action-bar/components/apps/useAppItemOptions.d.ts +0 -17
  371. package/lib/modules/action-bar/components/apps/useAppItemOptions.js +0 -30
  372. package/lib/modules/action-bar/components/apps/useBeautyBackground.d.ts +0 -10
  373. package/lib/modules/action-bar/components/apps/useBeautyBackground.js +0 -36
  374. package/lib/modules/action-bar/components/apps/useInterpreter.d.ts +0 -14
  375. package/lib/modules/action-bar/components/apps/useInterpreter.js +0 -37
  376. package/lib/modules/action-bar/components/apps/useLiveStreaming.d.ts +0 -16
  377. package/lib/modules/action-bar/components/apps/useLiveStreaming.js +0 -41
  378. package/lib/modules/action-bar/components/apps/useWidgetList.d.ts +0 -10
  379. package/lib/modules/action-bar/components/apps/useWidgetList.js +0 -39
  380. package/lib/modules/annotation/components/control-bar/index.css +0 -48
  381. package/lib/modules/annotation/components/control-bar/index.d.ts +0 -3
  382. package/lib/modules/annotation/components/control-bar/index.js +0 -142
  383. package/lib/modules/annotation/components/toolbar/index.d.ts +0 -0
  384. package/lib/modules/annotation/components/toolbar/index.js +0 -1
  385. package/lib/modules/dialog/components/chat/electron.d.ts +0 -2
  386. package/lib/modules/dialog/components/chat/electron.js +0 -35
  387. package/lib/modules/dialog/components/chat/index.js +0 -67
  388. package/lib/modules/dialog/components/confirm-leave-meeting/index.d.ts +0 -6
  389. package/lib/modules/dialog/components/connection-gateway/electron.d.ts +0 -5
  390. package/lib/modules/dialog/components/connection-gateway/electron.js +0 -33
  391. package/lib/modules/dialog/components/device-setting/electron.d.ts +0 -2
  392. package/lib/modules/dialog/components/device-setting/electron.js +0 -37
  393. package/lib/modules/dialog/components/interpreter/electron.d.ts +0 -2
  394. package/lib/modules/dialog/components/interpreter/index.js +0 -33
  395. package/lib/modules/dialog/components/invite/index.d.ts +0 -3
  396. package/lib/modules/dialog/components/live-streaming/index.d.ts +0 -4
  397. package/lib/modules/dialog/components/participant/electron.d.ts +0 -2
  398. package/lib/modules/dialog/components/participant/electron.js +0 -35
  399. package/lib/modules/dialog/components/participant/index.d.ts +0 -2
  400. package/lib/modules/dialog/components/participant/index.js +0 -65
  401. package/lib/modules/dialog/components/pre-setting/electron.d.ts +0 -2
  402. package/lib/modules/dialog/components/pre-setting/electron.js +0 -51
  403. package/lib/modules/dialog/components/pre-setting/index.js +0 -38
  404. package/lib/modules/dialog/components/pre-setting-container/component/body.d.ts +0 -8
  405. package/lib/modules/dialog/components/pre-setting-container/component/body.js +0 -78
  406. package/lib/modules/dialog/components/pre-setting-container/index.css +0 -82
  407. package/lib/modules/dialog/components/pre-setting-container/index.d.ts +0 -18
  408. package/lib/modules/dialog/components/pre-setting-container/index.js +0 -116
  409. package/lib/modules/dialog/components/rename/index.js +0 -72
  410. package/lib/modules/dialog/dialogs.d.ts +0 -3
  411. package/lib/modules/dialog/dialogs.js +0 -28
  412. package/lib/utilities/setting-config-storage.d.ts +0 -18
  413. package/lib/utilities/setting-config-storage.js +0 -133
  414. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/color-tool/color-panel/index.d.ts +0 -0
  415. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/color-tool/color-panel/index.js +0 -0
  416. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/color-tool/index.d.ts +0 -0
  417. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/color-tool/index.js +0 -0
  418. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/graphic-tool/graphic-panel/index.d.ts +0 -0
  419. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/graphic-tool/graphic-panel/index.js +0 -0
  420. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +0 -0
  421. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/graphic-tool/graphic-panel/libs.js +0 -0
  422. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/graphic-tool/index.d.ts +0 -0
  423. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/graphic-tool/index.js +0 -0
  424. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/item/item.d.ts +0 -0
  425. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/item/style.css +0 -0
  426. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/panel/index.d.ts +0 -0
  427. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/panel/index.js +0 -0
  428. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/panel/style.css +0 -0
  429. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/pen-tool/index.d.ts +0 -0
  430. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/pen-tool/index.js +0 -0
  431. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/pen-tool/pen-panel/index.d.ts +0 -0
  432. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/tips/index.d.ts +0 -0
  433. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/tips/index.js +0 -0
  434. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/components/tips/style.css +0 -0
  435. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/style.css +0 -0
  436. /package/lib/{modules/annotation/components → fragments/annotation}/toolbar/view.d.ts +0 -0
  437. /package/lib/modules/{action-bar/components → components}/apps/app-item/index.css +0 -0
  438. /package/lib/modules/{action-bar/components → components}/apps/app-item/index.js +0 -0
  439. /package/lib/modules/{action-bar/components → components}/apps/index.css +0 -0
  440. /package/lib/modules/dialog/{components → dialogs}/annotation-tool/index.d.ts +0 -0
  441. /package/lib/modules/dialog/{components → dialogs}/confirm/index.d.ts +0 -0
  442. /package/lib/modules/dialog/{components → dialogs}/confirm/index.js +0 -0
  443. /package/lib/modules/dialog/{components → dialogs}/connection-gateway/index.d.ts +0 -0
  444. /package/lib/modules/dialog/{components → dialogs}/connection-gateway/tabs.d.ts +0 -0
  445. /package/lib/modules/dialog/{components → dialogs}/connection-gateway/tabs.js +0 -0
  446. /package/lib/modules/dialog/{components → dialogs}/control-bar/index.d.ts +0 -0
  447. /package/lib/modules/dialog/{components → dialogs}/device-setting/index.css +0 -0
  448. /package/lib/modules/dialog/{components → dialogs}/device-setting/index.d.ts +0 -0
  449. /package/lib/modules/dialog/{components → dialogs}/interpreter/index.css +0 -0
  450. /package/lib/modules/dialog/{components → dialogs}/interpreter/index.d.ts +0 -0
  451. /package/lib/modules/dialog/{components → dialogs}/pre-setting/index.css +0 -0
  452. /package/lib/modules/dialog/{components → dialogs}/pre-setting/index.d.ts +0 -0
  453. /package/lib/modules/dialog/{components → dialogs}/rename/index.d.ts +0 -0
  454. /package/lib/modules/dialog/{components → dialogs}/share-screen-selection/index.d.ts +0 -0
  455. /package/lib/modules/dialog/{components → dialogs}/system-preference/assets/bg1.png +0 -0
  456. /package/lib/modules/dialog/{components → dialogs}/system-preference/assets/bg2.png +0 -0
  457. /package/lib/modules/dialog/{components → dialogs}/system-preference/assets/fcr_png_host.png +0 -0
  458. /package/lib/modules/dialog/{components → dialogs}/system-preference/electron.d.ts +0 -0
  459. /package/lib/modules/dialog/{components → dialogs}/system-preference/electron.js +0 -0
  460. /package/lib/modules/dialog/{components → dialogs}/system-preference/index.css +0 -0
  461. /package/lib/modules/dialog/{components → dialogs}/system-preference/index.d.ts +0 -0
  462. /package/lib/modules/dialog/{components → dialogs}/system-preference/index.js +0 -0
  463. /package/lib/modules/dialog/{components → dialogs}/toast/index.d.ts +0 -0
  464. /package/lib/modules/dialog/{components → dialogs}/toast/index.js +0 -0
  465. /package/lib/modules/dialog/{components → dialogs}/video-window/index.d.ts +0 -0
  466. /package/lib/modules/dialog/{components → dialogs}/whiteboard/index.d.ts +0 -0
  467. /package/lib/modules/dialog/{components → dialogs}/widget/electron.d.ts +0 -0
  468. /package/lib/modules/dialog/{components → dialogs}/widget/index.d.ts +0 -0
@@ -1,7 +1 @@
1
- import { AgoraRtcRenderMode } from 'fcr-core/lib/imports';
2
- import { FcrVideoSourceType } from 'fcr-core';
3
- export declare const FcrUILocalVideoPlayer: (props: {
4
- renderMode: AgoraRtcRenderMode;
5
- hasScreenSharing: boolean;
6
- videoSourceType: FcrVideoSourceType;
7
- }) => import("react/jsx-runtime").JSX.Element;
1
+ export { FcrUILocalVideoPlayerWithZoom as FcrUILocalVideoPlayer } from './local-video-player-with-zoom';
@@ -4,50 +4,10 @@ require("core-js/modules/es.object.define-property.js");
4
4
  Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
- exports.FcrUILocalVideoPlayer = void 0;
8
- var _mobxReact = require("mobx-react");
9
- var _react = require("react");
10
- var _videoTrackRenderContext = require("../../../../../../utilities/video-track-render-context");
11
- var _fcrCore = require("fcr-core");
12
- var _jsxRuntime = require("react/jsx-runtime");
13
- var FcrUILocalVideoPlayer = exports.FcrUILocalVideoPlayer = (0, _mobxReact.observer)(function (props) {
14
- var renderMode = props.renderMode,
15
- hasScreenSharing = props.hasScreenSharing,
16
- videoSourceType = props.videoSourceType;
17
- var divRef = (0, _react.useRef)(null);
18
- var context = (0, _react.useContext)(_videoTrackRenderContext.FcrVideoTrackRenderContext);
19
- var _ref = context.localVideoRenderProvider || {},
20
- cameraEnabled = _ref.cameraEnabled,
21
- cameraId = _ref.cameraId,
22
- startCameraPreview = _ref.startCameraPreview,
23
- stopCameraPreview = _ref.stopCameraPreview,
24
- startScreenPreview = _ref.startScreenPreview,
25
- stopScreenPreview = _ref.stopScreenPreview,
26
- currentMirror = _ref.currentMirror;
27
- (0, _react.useEffect)(function () {
28
- var dom = divRef.current;
29
- if (dom) {
30
- if (hasScreenSharing && videoSourceType === _fcrCore.FcrVideoSourceType.SCREEN) {
31
- startScreenPreview(dom, {
32
- renderMode: renderMode,
33
- isMirror: currentMirror
34
- });
35
- } else if (cameraEnabled) {
36
- startCameraPreview === null || startCameraPreview === void 0 || startCameraPreview(dom, {
37
- renderMode: renderMode,
38
- isMirror: currentMirror
39
- });
40
- }
41
- }
42
- return function () {
43
- if (dom) {
44
- stopScreenPreview === null || stopScreenPreview === void 0 || stopScreenPreview(dom);
45
- stopCameraPreview === null || stopCameraPreview === void 0 || stopCameraPreview(dom);
46
- }
47
- };
48
- }, [cameraEnabled, cameraId, startCameraPreview, stopCameraPreview, currentMirror]);
49
- return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
50
- className: "fcr-member-window-body",
51
- ref: divRef
52
- });
53
- });
7
+ Object.defineProperty(exports, "FcrUILocalVideoPlayer", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _localVideoPlayerWithZoom.FcrUILocalVideoPlayerWithZoom;
11
+ }
12
+ });
13
+ var _localVideoPlayerWithZoom = require("./local-video-player-with-zoom");
@@ -0,0 +1,12 @@
1
+ import { AgoraRtcRenderMode, AgoraRtcVideoStreamType } from 'fcr-core/lib/imports';
2
+ export declare const FcrUIRemoteVideoPlayerWithZoom: ({ streamId, hasVideoStream, videoStreamType, renderMode, scalcValue, enableZoom, minScale, maxScale, onScaleChange, }: {
3
+ streamId: string;
4
+ hasVideoStream: boolean;
5
+ videoStreamType: AgoraRtcVideoStreamType;
6
+ renderMode: AgoraRtcRenderMode;
7
+ scalcValue: number;
8
+ enableZoom: boolean;
9
+ minScale?: number;
10
+ maxScale?: number;
11
+ onScaleChange?: (scale: number) => void;
12
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,68 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.FcrUIRemoteVideoPlayerWithZoom = void 0;
9
+ var _mobxReact = require("mobx-react");
10
+ var _react = require("react");
11
+ var _classnames = _interopRequireDefault(require("classnames"));
12
+ var _videoTrackRenderContext = require("../../../../../../utilities/video-track-render-context");
13
+ var _zoomableContainer = require("./zoomable-container");
14
+ var _jsxRuntime = require("react/jsx-runtime");
15
+ var FcrUIRemoteVideoPlayerWithZoom = exports.FcrUIRemoteVideoPlayerWithZoom = (0, _mobxReact.observer)(function (_ref) {
16
+ var _context$remoteVideoR;
17
+ var streamId = _ref.streamId,
18
+ hasVideoStream = _ref.hasVideoStream,
19
+ videoStreamType = _ref.videoStreamType,
20
+ renderMode = _ref.renderMode,
21
+ scalcValue = _ref.scalcValue,
22
+ _ref$enableZoom = _ref.enableZoom,
23
+ enableZoom = _ref$enableZoom === void 0 ? true : _ref$enableZoom,
24
+ _ref$minScale = _ref.minScale,
25
+ minScale = _ref$minScale === void 0 ? 1 : _ref$minScale,
26
+ _ref$maxScale = _ref.maxScale,
27
+ maxScale = _ref$maxScale === void 0 ? 4 : _ref$maxScale,
28
+ onScaleChange = _ref.onScaleChange;
29
+ var divRef = (0, _react.useRef)(null);
30
+ var context = (0, _react.useContext)(_videoTrackRenderContext.FcrVideoTrackRenderContext);
31
+ var _ref2 = context.remoteVideoRenderProvider || {},
32
+ startRenderRemoteVideo = _ref2.startRenderRemoteVideo,
33
+ stopRenderRemoteVideo = _ref2.stopRenderRemoteVideo;
34
+ var isFirstRemoteVideoFrameRendered = (_context$remoteVideoR = context.remoteVideoRenderProvider) === null || _context$remoteVideoR === void 0 ? void 0 : _context$remoteVideoR.isStreamFirstFrameRendered(streamId);
35
+ (0, _react.useEffect)(function () {
36
+ var dom = divRef.current;
37
+ if (dom) {
38
+ if (hasVideoStream) {
39
+ startRenderRemoteVideo === null || startRenderRemoteVideo === void 0 || startRenderRemoteVideo(streamId, videoStreamType, {
40
+ renderMode: renderMode,
41
+ isMirror: false
42
+ }, dom);
43
+ }
44
+ }
45
+ return function () {
46
+ dom && (stopRenderRemoteVideo === null || stopRenderRemoteVideo === void 0 ? void 0 : stopRenderRemoteVideo(streamId, dom));
47
+ };
48
+ }, [hasVideoStream, streamId, videoStreamType, renderMode, enableZoom]);
49
+ var videoContent = /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
50
+ className: (0, _classnames["default"])('fcr-member-window-body fcr-member-window-body-video-remote', {
51
+ 'fcr-member-window-body-video-remote-render': isFirstRemoteVideoFrameRendered && hasVideoStream
52
+ })
53
+ // style={{ transform: `scale(${scalcValue})` }}
54
+ ,
55
+ ref: divRef
56
+ });
57
+ if (!enableZoom) {
58
+ return videoContent;
59
+ }
60
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_zoomableContainer.ZoomableContainer, {
61
+ className: "fcr-remote-video-zoomable-container",
62
+ minScale: minScale,
63
+ maxScale: maxScale,
64
+ initialScale: scalcValue,
65
+ onScaleChange: onScaleChange,
66
+ children: videoContent
67
+ });
68
+ });
@@ -1,9 +1 @@
1
- import { AgoraRtcRenderMode, AgoraRtcVideoStreamType } from 'fcr-core/lib/imports';
2
- export declare const FcrUIRemoteVideoPlayer: ({ streamId, hasVideoStream, videoStreamType, renderMode, hasScreenSharing, scalcValue, }: {
3
- streamId: string;
4
- hasVideoStream: boolean;
5
- videoStreamType: AgoraRtcVideoStreamType;
6
- renderMode: AgoraRtcRenderMode;
7
- hasScreenSharing: boolean;
8
- scalcValue: number;
9
- }) => import("react/jsx-runtime").JSX.Element;
1
+ export { FcrUIRemoteVideoPlayerWithZoom as FcrUIRemoteVideoPlayer } from './remote-video-player-with-zoom';
@@ -1,55 +1,13 @@
1
1
  "use strict";
2
2
 
3
3
  require("core-js/modules/es.object.define-property.js");
4
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
4
  Object.defineProperty(exports, "__esModule", {
6
5
  value: true
7
6
  });
8
- exports.FcrUIRemoteVideoPlayer = void 0;
9
- var _mobxReact = require("mobx-react");
10
- var _react = require("react");
11
- var _i18n = require("agora-ui-foundation/lib/i18n");
12
- var _classnames = _interopRequireDefault(require("classnames"));
13
- var _videoTrackRenderContext = require("../../../../../../utilities/video-track-render-context");
14
- var _jsxRuntime = require("react/jsx-runtime");
15
- var FcrUIRemoteVideoPlayer = exports.FcrUIRemoteVideoPlayer = (0, _mobxReact.observer)(function (_ref) {
16
- var _context$remoteVideoR;
17
- var streamId = _ref.streamId,
18
- hasVideoStream = _ref.hasVideoStream,
19
- videoStreamType = _ref.videoStreamType,
20
- renderMode = _ref.renderMode,
21
- hasScreenSharing = _ref.hasScreenSharing,
22
- scalcValue = _ref.scalcValue;
23
- var divRef = (0, _react.useRef)(null);
24
- var context = (0, _react.useContext)(_videoTrackRenderContext.FcrVideoTrackRenderContext);
25
- var t = (0, _i18n.useI18n)();
26
- var _ref2 = context.remoteVideoRenderProvider || {},
27
- startRenderRemoteVideo = _ref2.startRenderRemoteVideo,
28
- stopRenderRemoteVideo = _ref2.stopRenderRemoteVideo;
29
- var isFirstRemoteVideoFrameRendered = (_context$remoteVideoR = context.remoteVideoRenderProvider) === null || _context$remoteVideoR === void 0 ? void 0 : _context$remoteVideoR.isStreamFirstFrameRendered(streamId);
30
- (0, _react.useEffect)(function () {
31
- var dom = divRef.current;
32
- if (dom) {
33
- if (hasVideoStream) {
34
- startRenderRemoteVideo === null || startRenderRemoteVideo === void 0 || startRenderRemoteVideo(streamId, videoStreamType, {
35
- renderMode: renderMode,
36
- isMirror: false
37
- }, dom);
38
- }
39
- }
40
- return function () {
41
- dom && (stopRenderRemoteVideo === null || stopRenderRemoteVideo === void 0 ? void 0 : stopRenderRemoteVideo(streamId, dom));
42
- };
43
- }, [hasVideoStream, streamId, videoStreamType, renderMode]);
44
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_jsxRuntime.Fragment, {
45
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
46
- className: (0, _classnames["default"])('fcr-member-window-body fcr-member-window-body-video-remote', {
47
- 'fcr-member-window-body-video-remote-render': isFirstRemoteVideoFrameRendered && hasVideoStream
48
- }),
49
- style: {
50
- transform: "scale(".concat(scalcValue, ")")
51
- },
52
- ref: divRef
53
- })
54
- });
55
- });
7
+ Object.defineProperty(exports, "FcrUIRemoteVideoPlayer", {
8
+ enumerable: true,
9
+ get: function get() {
10
+ return _remoteVideoPlayerWithZoom.FcrUIRemoteVideoPlayerWithZoom;
11
+ }
12
+ });
13
+ var _remoteVideoPlayerWithZoom = require("./remote-video-player-with-zoom");
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ interface ZoomableContainerProps {
3
+ children: React.ReactNode;
4
+ className?: string;
5
+ minScale?: number;
6
+ maxScale?: number;
7
+ initialScale?: number;
8
+ onScaleChange?: (scale: number) => void;
9
+ onPositionChange?: (position: {
10
+ x: number;
11
+ y: number;
12
+ }) => void;
13
+ }
14
+ export declare const ZoomableContainer: React.FC<ZoomableContainerProps>;
15
+ export {};
@@ -0,0 +1,255 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.array.iterator.js");
4
+ require("core-js/modules/es.object.define-property.js");
5
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
6
+ require("core-js/modules/es.object.to-string.js");
7
+ require("core-js/modules/es.string.iterator.js");
8
+ require("core-js/modules/es.weak-map.js");
9
+ require("core-js/modules/esnext.weak-map.delete-all.js");
10
+ require("core-js/modules/esnext.weak-map.emplace.js");
11
+ require("core-js/modules/web.dom-collections.iterator.js");
12
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
13
+ var _typeof = require("@babel/runtime/helpers/typeof");
14
+ Object.defineProperty(exports, "__esModule", {
15
+ value: true
16
+ });
17
+ exports.ZoomableContainer = void 0;
18
+ require("core-js/modules/es.array.concat.js");
19
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
20
+ var _react = _interopRequireWildcard(require("react"));
21
+ var _classnames = _interopRequireDefault(require("classnames"));
22
+ var _jsxRuntime = require("react/jsx-runtime");
23
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
24
+ var ZoomableContainer = exports.ZoomableContainer = function ZoomableContainer(_ref) {
25
+ var children = _ref.children,
26
+ className = _ref.className,
27
+ _ref$minScale = _ref.minScale,
28
+ minScale = _ref$minScale === void 0 ? 1 : _ref$minScale,
29
+ _ref$maxScale = _ref.maxScale,
30
+ maxScale = _ref$maxScale === void 0 ? 3 : _ref$maxScale,
31
+ _ref$initialScale = _ref.initialScale,
32
+ initialScale = _ref$initialScale === void 0 ? 1 : _ref$initialScale,
33
+ onScaleChange = _ref.onScaleChange,
34
+ onPositionChange = _ref.onPositionChange;
35
+ var containerRef = (0, _react.useRef)(null);
36
+ var contentRef = (0, _react.useRef)(null);
37
+ var _useState = (0, _react.useState)(initialScale),
38
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
39
+ scale = _useState2[0],
40
+ setScale = _useState2[1];
41
+ var _useState3 = (0, _react.useState)({
42
+ x: 0,
43
+ y: 0
44
+ }),
45
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
46
+ position = _useState4[0],
47
+ setPosition = _useState4[1];
48
+ var _useState5 = (0, _react.useState)(false),
49
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
50
+ isDragging = _useState6[0],
51
+ setIsDragging = _useState6[1];
52
+ var _useState7 = (0, _react.useState)({
53
+ x: 0,
54
+ y: 0
55
+ }),
56
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
57
+ dragStart = _useState8[0],
58
+ setDragStart = _useState8[1];
59
+ var _useState9 = (0, _react.useState)({
60
+ width: 0,
61
+ height: 0
62
+ }),
63
+ _useState0 = (0, _slicedToArray2["default"])(_useState9, 2),
64
+ containerSize = _useState0[0],
65
+ setContainerSize = _useState0[1];
66
+ var _useState1 = (0, _react.useState)({
67
+ width: 0,
68
+ height: 0
69
+ }),
70
+ _useState10 = (0, _slicedToArray2["default"])(_useState1, 2),
71
+ contentSize = _useState10[0],
72
+ setContentSize = _useState10[1];
73
+
74
+ // 处理鼠标按下
75
+ var handleMouseDown = (0, _react.useCallback)(function (e) {
76
+ if (e.button === 0) {
77
+ // 左键
78
+ setIsDragging(true);
79
+ setDragStart({
80
+ x: e.clientX - position.x,
81
+ y: e.clientY - position.y
82
+ });
83
+ }
84
+ }, [position]);
85
+
86
+ // 计算边界限制
87
+ var getBoundedPosition = (0, _react.useCallback)(function (newPosition) {
88
+ if (!containerSize.width || !contentSize.width) return newPosition;
89
+ var scaledContentWidth = contentSize.width * scale;
90
+ var scaledContentHeight = contentSize.height * scale;
91
+
92
+ // 计算边界
93
+ var maxX = Math.max(0, (scaledContentWidth - containerSize.width) / 2);
94
+ var minX = -maxX;
95
+ var maxY = Math.max(0, (scaledContentHeight - containerSize.height) / 2);
96
+ var minY = -maxY;
97
+ return {
98
+ x: Math.max(minX, Math.min(maxX, newPosition.x)),
99
+ y: Math.max(minY, Math.min(maxY, newPosition.y))
100
+ };
101
+ }, [containerSize, contentSize, scale]);
102
+
103
+ // 处理鼠标移动
104
+ var handleMouseMove = (0, _react.useCallback)(function (e) {
105
+ if (isDragging) {
106
+ var newPosition = {
107
+ x: e.clientX - dragStart.x,
108
+ y: e.clientY - dragStart.y
109
+ };
110
+ var boundedPosition = getBoundedPosition(newPosition);
111
+ setPosition(boundedPosition);
112
+ onPositionChange === null || onPositionChange === void 0 || onPositionChange(boundedPosition);
113
+ }
114
+ }, [isDragging, dragStart, onPositionChange, getBoundedPosition]);
115
+
116
+ // 处理鼠标松开
117
+ var handleMouseUp = (0, _react.useCallback)(function () {
118
+ setIsDragging(false);
119
+ }, []);
120
+
121
+ // 处理鼠标离开
122
+ var handleMouseLeave = (0, _react.useCallback)(function () {
123
+ setIsDragging(false);
124
+ }, []);
125
+
126
+ // 重置缩放和位置
127
+ var resetView = (0, _react.useCallback)(function () {
128
+ setScale(initialScale);
129
+ setPosition({
130
+ x: 0,
131
+ y: 0
132
+ });
133
+ onScaleChange === null || onScaleChange === void 0 || onScaleChange(initialScale);
134
+ onPositionChange === null || onPositionChange === void 0 || onPositionChange({
135
+ x: 0,
136
+ y: 0
137
+ });
138
+ }, [initialScale, onScaleChange, onPositionChange]);
139
+ (0, _react.useEffect)(function () {
140
+ if (initialScale !== scale) {
141
+ setScale(initialScale);
142
+ }
143
+ }, [initialScale]);
144
+
145
+ // 监听容器和内容尺寸变化
146
+ (0, _react.useEffect)(function () {
147
+ var updateSizes = function updateSizes() {
148
+ if (containerRef.current) {
149
+ var rect = containerRef.current.getBoundingClientRect();
150
+ setContainerSize({
151
+ width: rect.width,
152
+ height: rect.height
153
+ });
154
+ }
155
+ if (contentRef.current) {
156
+ var _rect = contentRef.current.getBoundingClientRect();
157
+ setContentSize({
158
+ width: _rect.width,
159
+ height: _rect.height
160
+ });
161
+ }
162
+ };
163
+ updateSizes();
164
+ window.addEventListener('resize', updateSizes);
165
+ return function () {
166
+ return window.removeEventListener('resize', updateSizes);
167
+ };
168
+ }, []);
169
+
170
+ // 处理滚轮事件(非被动监听器)
171
+ (0, _react.useEffect)(function () {
172
+ var container = containerRef.current;
173
+ if (!container) return;
174
+ var handleWheelEvent = function handleWheelEvent(e) {
175
+ e.preventDefault();
176
+ e.stopPropagation();
177
+ var delta = e.deltaY > 0 ? 0.9 : 1.1;
178
+ var newScale = Math.max(minScale, Math.min(maxScale, scale * delta));
179
+ setScale(newScale);
180
+ onScaleChange === null || onScaleChange === void 0 || onScaleChange(newScale);
181
+ };
182
+
183
+ // 使用非被动监听器
184
+ container.addEventListener('wheel', handleWheelEvent, {
185
+ passive: false
186
+ });
187
+ return function () {
188
+ container.removeEventListener('wheel', handleWheelEvent);
189
+ };
190
+ }, [scale, minScale, maxScale, onScaleChange]);
191
+
192
+ // 当缩放变化时,重新计算位置边界
193
+ (0, _react.useEffect)(function () {
194
+ var boundedPosition = getBoundedPosition(position);
195
+ if (boundedPosition.x !== position.x || boundedPosition.y !== position.y) {
196
+ setPosition(boundedPosition);
197
+ onPositionChange === null || onPositionChange === void 0 || onPositionChange(boundedPosition);
198
+ }
199
+ }, [scale, getBoundedPosition, position, onPositionChange]);
200
+
201
+ // 全局鼠标事件监听
202
+ (0, _react.useEffect)(function () {
203
+ var handleGlobalMouseUp = function handleGlobalMouseUp() {
204
+ setIsDragging(false);
205
+ };
206
+ var handleGlobalMouseMove = function handleGlobalMouseMove(e) {
207
+ if (isDragging) {
208
+ var newPosition = {
209
+ x: e.clientX - dragStart.x,
210
+ y: e.clientY - dragStart.y
211
+ };
212
+ var boundedPosition = getBoundedPosition(newPosition);
213
+ setPosition(boundedPosition);
214
+ onPositionChange === null || onPositionChange === void 0 || onPositionChange(boundedPosition);
215
+ }
216
+ };
217
+ if (isDragging) {
218
+ document.addEventListener('mousemove', handleGlobalMouseMove);
219
+ document.addEventListener('mouseup', handleGlobalMouseUp);
220
+ }
221
+ return function () {
222
+ document.removeEventListener('mousemove', handleGlobalMouseMove);
223
+ document.removeEventListener('mouseup', handleGlobalMouseUp);
224
+ };
225
+ }, [isDragging, dragStart, onPositionChange]);
226
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
227
+ ref: containerRef,
228
+ className: (0, _classnames["default"])('fcr-zoomable-container', className),
229
+ onMouseDown: handleMouseDown,
230
+ onMouseMove: handleMouseMove,
231
+ onMouseUp: handleMouseUp,
232
+ onMouseLeave: handleMouseLeave,
233
+ style: {
234
+ position: 'absolute',
235
+ width: '100%',
236
+ height: '100%',
237
+ zIndex: 10,
238
+ overflow: 'hidden',
239
+ // position: 'relative',
240
+ cursor: isDragging ? 'grabbing' : 'grab',
241
+ userSelect: 'none'
242
+ },
243
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
244
+ ref: contentRef,
245
+ style: {
246
+ width: '100%',
247
+ height: '100%',
248
+ transform: "translate(".concat(position.x, "px, ").concat(position.y, "px) scale(").concat(scale, ")"),
249
+ transformOrigin: 'center',
250
+ transition: isDragging ? 'none' : 'transform 0.1s ease-out'
251
+ },
252
+ children: children
253
+ })
254
+ });
255
+ };
@@ -9,4 +9,6 @@ export declare const FcrUIVideoPlayer: (props: {
9
9
  renderMode: AgoraRtcRenderMode;
10
10
  hasScreenSharing: boolean;
11
11
  scalcValue: number;
12
+ onScaleChange: (scale: number) => void;
13
+ enableZoom: boolean;
12
14
  }) => import("react/jsx-runtime").JSX.Element;
@@ -33,6 +33,12 @@ var FcrUIVideoPlayer = exports.FcrUIVideoPlayer = function FcrUIVideoPlayer(prop
33
33
  return isLocal ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_localVideoPlayer.FcrUILocalVideoPlayer, {
34
34
  renderMode: others.renderMode,
35
35
  hasScreenSharing: others.hasScreenSharing,
36
- videoSourceType: others.videoSourceType
37
- }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_remoteVideoPlayer.FcrUIRemoteVideoPlayer, _objectSpread({}, others));
36
+ videoSourceType: others.videoSourceType,
37
+ scalcValue: others.scalcValue,
38
+ onScaleChange: props.onScaleChange,
39
+ enableZoom: props.enableZoom
40
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_remoteVideoPlayer.FcrUIRemoteVideoPlayer, _objectSpread(_objectSpread({}, others), {}, {
41
+ enableZoom: props.enableZoom,
42
+ onScaleChange: props.onScaleChange
43
+ }));
38
44
  };
@@ -12,6 +12,7 @@
12
12
  user-select: none;
13
13
  position: relative;
14
14
  overflow: hidden;
15
+ z-index: 0;
15
16
  }
16
17
 
17
18
  .fcr-member-window button,
@@ -180,23 +181,31 @@
180
181
  margin-right: 2px;
181
182
  }
182
183
 
184
+ .fcr-member-window-members-sharebtn-show {
185
+ margin-left: 0px;
186
+ display: flex;
187
+ }
188
+
189
+ .fcr-member-window-members-sharebtn-large {
190
+ height: 24px;
191
+ margin-right: 6px;
192
+ }
193
+
183
194
  .fcr-member-window-members-shareSound {
184
195
  display: none;
185
196
  align-items: center;
186
197
  justify-content: center;
187
198
  border-radius: var(--fcr_cornerradius_xxs);
188
- /* padding: 0 1px; */
189
- height: 18px;
190
- margin-right: 2px;
199
+ padding: 3px;
191
200
  }
192
201
 
193
- .fcr-member-window-members-sharebtn-show {
194
- margin-left: 0px;
202
+ .fcr-member-window-members-shareSound-show {
195
203
  display: flex;
196
204
  }
197
205
 
198
- .fcr-member-window-members-sharebtn-large {
206
+ .fcr-member-window-members-shareSound-large {
199
207
  height: 24px;
208
+ padding: 0;
200
209
  margin-right: 6px;
201
210
  }
202
211
 
@@ -386,6 +395,7 @@
386
395
  }
387
396
 
388
397
  .member-window-actions__more-actions {
398
+ max-width: 300px;
389
399
  padding: 0;
390
400
  }
391
401
 
@@ -8,4 +8,4 @@ export declare const AvatarTextSizeRatio = 0.32;
8
8
  export declare const HideControlsTimeout = 3000;
9
9
  export declare const meetingConnectorTypes: Set<FcrRoomConnectorType>;
10
10
  export declare const clamp: (val: number, min: number, max: number) => number;
11
- export declare const MemberWindow: ({ showAvatar, windowData, onDoubleClick, slot, width, height, canShowSpeakerSpotlight, onRemovePin, memberWindowPreviewType, videoRenderMode, videoStreamType, isVideoSuspended, annotation, scalcValue, }: MemberWindowProps) => import("react/jsx-runtime").JSX.Element;
11
+ export declare const MemberWindow: ({ showAvatar, windowData, onDoubleClick, slot, width, height, canShowSpeakerSpotlight, onRemovePin, memberWindowPreviewType, videoRenderMode, videoStreamType, isVideoSuspended, annotation, scalcValue, onScaleChange, enableZoom, }: MemberWindowProps) => import("react/jsx-runtime").JSX.Element;
@@ -68,7 +68,10 @@ var MemberWindow = exports.MemberWindow = (0, _mobxReact.observer)(function (_re
68
68
  videoStreamType = _ref.videoStreamType,
69
69
  isVideoSuspended = _ref.isVideoSuspended,
70
70
  annotation = _ref.annotation,
71
- scalcValue = _ref.scalcValue;
71
+ scalcValue = _ref.scalcValue,
72
+ onScaleChange = _ref.onScaleChange,
73
+ _ref$enableZoom = _ref.enableZoom,
74
+ enableZoom = _ref$enableZoom === void 0 ? false : _ref$enableZoom;
72
75
  var userName = windowData.userName,
73
76
  videoStreamId = windowData.videoStreamId,
74
77
  userId = windowData.userId,
@@ -81,7 +84,8 @@ var MemberWindow = exports.MemberWindow = (0, _mobxReact.observer)(function (_re
81
84
  audioStreamConnectorType = windowData.audioStreamConnectorType,
82
85
  videoStreamConnectorType = windowData.videoStreamConnectorType,
83
86
  hasScreenSharing = windowData.hasScreenSharing,
84
- videoSourceType = windowData.videoSourceType;
87
+ videoSourceType = windowData.videoSourceType,
88
+ avatar = windowData.avatar;
85
89
  var t = (0, _i18n.useI18n)();
86
90
  var connectorType = audioStreamConnectorType !== _fcrCore.FcrRoomConnectorType.NONE ? audioStreamConnectorType : videoStreamConnectorType;
87
91
  var isPhone = audioStreamConnectorType === _fcrCore.FcrRoomConnectorType.PSTN;
@@ -104,6 +108,7 @@ var MemberWindow = exports.MemberWindow = (0, _mobxReact.observer)(function (_re
104
108
  backgroundColor: hasMicrophoneAudioStream ? 'var(--fcr_ui_scene_ramp_lightgreen6)' : 'var(--fcr_ui_scene_btn3)'
105
109
  }) : isMeeting ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_avatar.FcrAvatar, {
106
110
  nickName: userName,
111
+ avatarImage: avatar,
107
112
  size: avatarSize,
108
113
  textSize: avatarTextSize,
109
114
  icon: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
@@ -117,7 +122,8 @@ var MemberWindow = exports.MemberWindow = (0, _mobxReact.observer)(function (_re
117
122
  }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_avatar.FcrAvatar, {
118
123
  nickName: userName,
119
124
  size: avatarSize,
120
- textSize: avatarTextSize
125
+ textSize: avatarTextSize,
126
+ avatarImage: avatar
121
127
  }) : suffixedName;
122
128
  };
123
129
  var handleRemovePin = function handleRemovePin() {
@@ -153,7 +159,9 @@ var MemberWindow = exports.MemberWindow = (0, _mobxReact.observer)(function (_re
153
159
  renderMode: videoRenderMode,
154
160
  hasVideoStream: hasVideoStream,
155
161
  hasScreenSharing: hasScreenSharing,
156
- scalcValue: scalcValue
162
+ scalcValue: scalcValue,
163
+ onScaleChange: onScaleChange,
164
+ enableZoom: enableZoom
157
165
  }), hasScreenSharing && videoSourceType === _fcrCore.FcrVideoSourceType.SCREEN ? annotation : null, /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
158
166
  className: (0, _classnames["default"])("fcr-member-window-excitation", {
159
167
  'fcr-member-window-excitation-show': canShowSpeakerSpotlight && isSpeakerSpotlight
@@ -19,6 +19,8 @@ export interface MemberWindowCustomProps {
19
19
  export interface MemberWindowProps extends MemberWindowCustomProps {
20
20
  windowData: FcrUIVideoWindowData;
21
21
  scalcValue: number;
22
+ onScaleChange: (scale: number) => void;
23
+ enableZoom?: boolean;
22
24
  }
23
25
  export interface MicVolumeProps {
24
26
  id: string | undefined;