fcr-ui-scene 3.6.2 → 3.6.4-rc.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 (374) hide show
  1. package/lib/base.js +0 -3
  2. package/lib/creator.d.ts +1 -0
  3. package/lib/creator.js +63 -52
  4. package/lib/electron/app.js +33 -14
  5. package/lib/electron/bootstrap-dev.js +5 -3
  6. package/lib/electron/bootstrap-sdk.js +4 -10
  7. package/lib/electron/exit-codes.d.ts +14 -0
  8. package/lib/electron/exit-codes.js +22 -0
  9. package/lib/electron/injections.d.ts +3 -2
  10. package/lib/electron/injections.js +122 -124
  11. package/lib/electron/ipc/ipc.js +0 -1
  12. package/lib/electron/main.js +57 -12
  13. package/lib/electron/tools.js +0 -4
  14. package/lib/electron/window.js +1 -7
  15. package/lib/fragments/annotation/index.d.ts +1 -0
  16. package/lib/fragments/annotation/index.js +54 -40
  17. package/lib/fragments/annotation/store.d.ts +7 -2
  18. package/lib/fragments/annotation/store.js +181 -102
  19. package/lib/fragments/annotation/view.d.ts +1 -0
  20. package/lib/fragments/annotation/view.js +10 -2
  21. package/lib/modules/action-bar/components/apps/app-item/index.js +0 -2
  22. package/lib/modules/action-bar/components/apps/app-list.js +2 -5
  23. package/lib/modules/action-bar/components/apps/useAppItemOptions.js +0 -3
  24. package/lib/modules/action-bar/components/apps/useWidgetList.js +2 -1
  25. package/lib/modules/action-bar/components/collapse/index.js +0 -4
  26. package/lib/modules/action-bar/components/item/index.js +0 -2
  27. package/lib/modules/action-bar/components/leave/index.js +0 -2
  28. package/lib/modules/action-bar/components/more/poppover-content.js +0 -4
  29. package/lib/modules/action-bar/components/notification-bar/components/interpreter/index.js +2 -1
  30. package/lib/modules/action-bar/components/notification-bar/index.js +0 -2
  31. package/lib/modules/action-bar/components/screen-share/index.js +0 -1
  32. package/lib/modules/action-bar/components/screen-share/submenu.js +0 -3
  33. package/lib/modules/action-bar/components/trigger-output-language/index.js +11 -14
  34. package/lib/modules/action-bar/components/trigger-subscribe-language/index.js +8 -11
  35. package/lib/modules/action-bar/index.css +4 -0
  36. package/lib/modules/action-bar/index.js +1 -2
  37. package/lib/modules/action-bar/store.d.ts +1 -7
  38. package/lib/modules/action-bar/store.js +67 -118
  39. package/lib/modules/annotation/board-cursor.css +76 -0
  40. package/lib/modules/annotation/components/control-bar/index.js +43 -2
  41. package/lib/modules/annotation/components/toolbar/components/color-tool/color-panel/index.js +2 -1
  42. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/index.js +5 -2
  43. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +1 -0
  44. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.js +11 -5
  45. package/lib/modules/annotation/components/toolbar/components/graphic-tool/index.js +0 -2
  46. package/lib/modules/annotation/components/toolbar/components/item/item.d.ts +1 -0
  47. package/lib/modules/annotation/components/toolbar/components/item/item.js +3 -2
  48. package/lib/modules/annotation/components/toolbar/components/pen-tool/pen-panel/index.js +1 -0
  49. package/lib/modules/annotation/components/toolbar/store.js +0 -1
  50. package/lib/modules/annotation/index.d.ts +4 -0
  51. package/lib/modules/annotation/index.js +3 -1
  52. package/lib/modules/annotation/store.d.ts +15 -5
  53. package/lib/modules/annotation/store.js +222 -205
  54. package/lib/modules/annotation/style.css +3 -3
  55. package/lib/modules/annotation/view.d.ts +1 -0
  56. package/lib/modules/annotation/view.js +26 -9
  57. package/lib/modules/audio-stream/index.js +0 -4
  58. package/lib/modules/chat/chat-room-store.js +6 -10
  59. package/lib/modules/chat/components/chat-bar/index.js +0 -2
  60. package/lib/modules/chat/components/chat-select/index.js +0 -1
  61. package/lib/modules/chat/components/chat-select/select-item/index.js +2 -5
  62. package/lib/modules/chat/components/message-list/index.js +1 -3
  63. package/lib/modules/chat/components/message-list/message-item/index.js +11 -13
  64. package/lib/modules/chat/index.js +13 -14
  65. package/lib/modules/chat/store.js +0 -1
  66. package/lib/modules/chat/view.js +11 -15
  67. package/lib/modules/components/annotation-menu/index.js +0 -3
  68. package/lib/modules/components/device-control/components/audio-menu/index.js +2 -1
  69. package/lib/modules/components/device-control/components/video-menu/index.js +2 -1
  70. package/lib/modules/components/device-control/store.js +0 -1
  71. package/lib/modules/components/leave-meeting/components/assign-host.js +4 -5
  72. package/lib/modules/components/leave-meeting/store.js +11 -12
  73. package/lib/modules/components/member-window/components/member-actions/components/audio-control.d.ts +0 -1
  74. package/lib/modules/components/member-window/components/member-actions/components/audio-control.js +10 -4
  75. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.d.ts +2 -2
  76. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +4 -4
  77. package/lib/modules/components/member-window/components/member-actions/components/icon-status.d.ts +0 -2
  78. package/lib/modules/components/member-window/components/member-actions/components/icon-status.js +3 -4
  79. package/lib/modules/components/member-window/components/member-actions/components/layout/index.js +1 -2
  80. package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +0 -3
  81. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +7 -34
  82. package/lib/modules/components/member-window/components/member-actions/components/share-status.js +11 -3
  83. package/lib/modules/components/member-window/components/member-actions/components/user-info.d.ts +0 -1
  84. package/lib/modules/components/member-window/components/member-actions/components/user-info.js +8 -13
  85. package/lib/modules/components/member-window/components/member-actions/components/user-tag.d.ts +0 -1
  86. package/lib/modules/components/member-window/components/member-actions/components/user-tag.js +0 -2
  87. package/lib/modules/components/member-window/components/member-actions/index.js +1 -33
  88. package/lib/modules/components/member-window/components/member-actions/provider.js +1 -2
  89. package/lib/modules/components/member-window/components/member-actions/store.d.ts +38 -1
  90. package/lib/modules/components/member-window/components/member-actions/store.js +120 -13
  91. package/lib/modules/components/member-window/components/video-player/components/local-video-player.d.ts +3 -0
  92. package/lib/modules/components/member-window/components/video-player/components/local-video-player.js +16 -3
  93. package/lib/modules/components/member-window/components/video-player/index.d.ts +2 -0
  94. package/lib/modules/components/member-window/components/video-player/index.js +3 -3
  95. package/lib/modules/components/member-window/index.css +37 -0
  96. package/lib/modules/components/member-window/index.js +1 -0
  97. package/lib/modules/components/security-menu/index.js +1 -4
  98. package/lib/modules/components/tab-frame/index.js +0 -4
  99. package/lib/modules/connection-gateway/components/phone/components/callinfo/index.js +2 -1
  100. package/lib/modules/connection-gateway/components/phone/index.js +5 -4
  101. package/lib/modules/connection-gateway/index.js +1 -2
  102. package/lib/modules/connection-gateway/store.js +23 -26
  103. package/lib/modules/control-bar/components/more-actions/index.js +0 -3
  104. package/lib/modules/control-bar/index.d.ts +0 -4
  105. package/lib/modules/control-bar/index.js +1 -34
  106. package/lib/modules/control-bar/store.d.ts +5 -6
  107. package/lib/modules/control-bar/store.js +70 -104
  108. package/lib/modules/control-bar/view.js +53 -13
  109. package/lib/modules/device-pretest/settings/beauty.js +1 -2
  110. package/lib/modules/device-pretest/settings/virtual-background-setting.js +2 -1
  111. package/lib/modules/device-pretest/store.js +2 -4
  112. package/lib/modules/dialog/components/control-bar/index.d.ts +0 -2
  113. package/lib/modules/dialog/components/control-bar/index.js +4 -6
  114. package/lib/modules/dialog/components/dialog-container/component/body.js +0 -2
  115. package/lib/modules/dialog/components/dialog-container/index.js +1 -2
  116. package/lib/modules/dialog/components/host-area-container/index.js +0 -3
  117. package/lib/modules/dialog/components/pre-setting-container/component/body.js +0 -2
  118. package/lib/modules/dialog/components/pre-setting-container/index.js +1 -2
  119. package/lib/modules/dialog/components/system-preference/index.js +2 -5
  120. package/lib/modules/dialog/components/video-window/index.js +0 -2
  121. package/lib/modules/dialog/hooks/use-popover-watcher.js +0 -1
  122. package/lib/modules/dialog/hooks/useElectron.js +3 -4
  123. package/lib/modules/dialog/index.d.ts +0 -3
  124. package/lib/modules/dialog/index.js +2 -28
  125. package/lib/modules/dialog/store.d.ts +6 -8
  126. package/lib/modules/dialog/store.js +22 -60
  127. package/lib/modules/dialog/view.js +2 -1
  128. package/lib/modules/event-confirm/components/window/index.js +0 -2
  129. package/lib/modules/event-confirm/index.js +1 -2
  130. package/lib/modules/event-confirm/store.js +4 -7
  131. package/lib/modules/event-confirm/view.js +2 -1
  132. package/lib/modules/event-sound/index.js +1 -2
  133. package/lib/modules/event-sound/sound-effect-player.js +2 -2
  134. package/lib/modules/event-toast/index.js +1 -2
  135. package/lib/modules/event-toast/store.js +0 -2
  136. package/lib/modules/event-toast/view.js +2 -1
  137. package/lib/modules/interpreter/index.js +1 -2
  138. package/lib/modules/interpreter/interpreter-list/index.js +3 -4
  139. package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/index.js +2 -5
  140. package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-language/useLanguageConfig/index.js +0 -2
  141. package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +0 -4
  142. package/lib/modules/interpreter/store.js +5 -10
  143. package/lib/modules/interpreter/utils.js +15 -14
  144. package/lib/modules/invite/components/pstn-invite.js +22 -23
  145. package/lib/modules/invite/components/voip-invite.js +7 -7
  146. package/lib/modules/invite/enums.js +1 -0
  147. package/lib/modules/invite/index.js +1 -2
  148. package/lib/modules/invite/store.js +46 -45
  149. package/lib/modules/layout/components/CommonVideoRenderer.js +7 -3
  150. package/lib/modules/layout/components/Gallery.js +5 -3
  151. package/lib/modules/layout/components/index.js +0 -1
  152. package/lib/modules/layout/index.js +1 -2
  153. package/lib/modules/layout/store.d.ts +3 -0
  154. package/lib/modules/layout/store.js +38 -14
  155. package/lib/modules/layout/type.d.ts +7 -0
  156. package/lib/modules/layout/type.js +9 -0
  157. package/lib/modules/live-streaming/index.dev.js +6 -6
  158. package/lib/modules/live-streaming/index.js +1 -2
  159. package/lib/modules/live-streaming/store.js +19 -19
  160. package/lib/modules/notification/index.js +1 -2
  161. package/lib/modules/notification/interpreter-status/index.js +2 -1
  162. package/lib/modules/notification/view.js +1 -2
  163. package/lib/modules/offscreen-pulling/index.js +0 -1
  164. package/lib/modules/participant/components/participants/components/footer/components/drop-menu/index.js +1 -4
  165. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +0 -2
  166. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +0 -2
  167. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.js +1 -4
  168. package/lib/modules/participant/components/participants/components/participants/index.js +0 -2
  169. package/lib/modules/participant/components/participants/components/render-user/components/attendee/components/interpreter-tag/index.js +0 -1
  170. package/lib/modules/participant/components/participants/components/render-user/components/attendee/index.js +0 -2
  171. package/lib/modules/participant/index.js +1 -4
  172. package/lib/modules/participant/member-list-data-source.js +0 -3
  173. package/lib/modules/participant/store.js +140 -114
  174. package/lib/modules/pc-audio-connect/index.js +1 -2
  175. package/lib/modules/pc-audio-connect/store.js +9 -10
  176. package/lib/modules/phone-audio-connect/components/callinfo/index.js +2 -1
  177. package/lib/modules/phone-audio-connect/index.js +1 -2
  178. package/lib/modules/phone-audio-connect/store.js +0 -3
  179. package/lib/modules/phone-audio-connect/view.js +5 -4
  180. package/lib/modules/setting/audio-settings/audio-settings.js +1 -4
  181. package/lib/modules/setting/general-settings/general-settings.js +1 -2
  182. package/lib/modules/setting/index.d.ts +2 -0
  183. package/lib/modules/setting/index.js +4 -5
  184. package/lib/modules/setting/minutes-settings/minutes-settings.js +1 -2
  185. package/lib/modules/setting/state/index.js +0 -4
  186. package/lib/modules/setting/storage-settings/storage-settings.js +4 -4
  187. package/lib/modules/setting/store.d.ts +8 -10
  188. package/lib/modules/setting/store.js +33 -35
  189. package/lib/modules/setting/translate-settings/translate-settings.js +1 -1
  190. package/lib/modules/setting/video-settings/video-settings.js +1 -2
  191. package/lib/modules/setting/view.js +1 -2
  192. package/lib/modules/share-screen/components/selection/index.js +16 -9
  193. package/lib/modules/share-screen/index.d.ts +2 -0
  194. package/lib/modules/share-screen/index.js +3 -3
  195. package/lib/modules/share-screen/store.d.ts +12 -2
  196. package/lib/modules/share-screen/store.js +149 -136
  197. package/lib/modules/state-bar/index.css +8 -6
  198. package/lib/modules/state-bar/index.d.ts +2 -0
  199. package/lib/modules/state-bar/index.js +3 -3
  200. package/lib/modules/state-bar/layout-config.d.ts +1 -0
  201. package/lib/modules/state-bar/layout-config.js +17 -6
  202. package/lib/modules/state-bar/live-streaming-state.js +0 -3
  203. package/lib/modules/state-bar/store.d.ts +5 -1
  204. package/lib/modules/state-bar/store.js +8 -2
  205. package/lib/modules/state-bar/view.js +9 -5
  206. package/lib/modules/video-window/components/members/index.js +2 -1
  207. package/lib/modules/video-window/components/topControl/index.js +0 -3
  208. package/lib/modules/video-window/index.js +1 -2
  209. package/lib/modules/video-window/store.js +0 -4
  210. package/lib/modules/waiting-room-layout/index.js +1 -2
  211. package/lib/modules/whiteboard/components/control-bar/store.js +2 -1
  212. package/lib/modules/whiteboard/components/switch-theme/index.js +0 -2
  213. package/lib/modules/whiteboard/components/switch-theme/item.js +2 -1
  214. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/panel.js +2 -1
  215. package/lib/modules/whiteboard/components/toolbar/components/color-picker/index.js +2 -1
  216. package/lib/modules/whiteboard/components/toolbar/components/expansion/index.js +1 -4
  217. package/lib/modules/whiteboard/components/toolbar/components/extra-tool-picker.js +2 -3
  218. package/lib/modules/whiteboard/components/toolbar/components/move-handle.js +0 -2
  219. package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +1 -2
  220. package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +1 -3
  221. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +2 -4
  222. package/lib/modules/whiteboard/components/toolbar/index.js +1 -1
  223. package/lib/modules/whiteboard/components/toolbar/store.d.ts +7 -3
  224. package/lib/modules/whiteboard/components/toolbar/store.js +64 -37
  225. package/lib/modules/whiteboard/index.js +5 -8
  226. package/lib/modules/whiteboard/style.css +12 -4
  227. package/lib/modules/whiteboard/view.js +10 -2
  228. package/lib/modules/widget/index.js +1 -2
  229. package/lib/modules/widget/web-widget.js +1 -1
  230. package/lib/plugins/browser-runtime-plugin.js +1 -1
  231. package/lib/plugins/module-dev-plugin.js +13 -13
  232. package/lib/providers/ability-provider.d.ts +12 -1
  233. package/lib/providers/ability-provider.js +8 -1
  234. package/lib/providers/annotation-provider.d.ts +63 -12
  235. package/lib/providers/annotation-provider.js +52 -46
  236. package/lib/providers/device-privilege-provider.js +81 -83
  237. package/lib/providers/device-provider.d.ts +3 -3
  238. package/lib/providers/device-provider.js +201 -204
  239. package/lib/providers/device-stream-provider.js +24 -27
  240. package/lib/providers/event-provider.d.ts +3 -3
  241. package/lib/providers/event-provider.js +0 -2
  242. package/lib/providers/interpreter-provider.js +195 -197
  243. package/lib/providers/message-provider.js +0 -2
  244. package/lib/providers/phone-audio-provider.js +17 -19
  245. package/lib/providers/privilege-provider.js +53 -58
  246. package/lib/providers/renderer-provider.d.ts +3 -1
  247. package/lib/providers/renderer-provider.js +18 -4
  248. package/lib/providers/room-provider.js +31 -33
  249. package/lib/providers/screen-share-provider.d.ts +1 -0
  250. package/lib/providers/screen-share-provider.js +97 -103
  251. package/lib/providers/sharing-provider.d.ts +5 -1
  252. package/lib/providers/sharing-provider.js +17 -1
  253. package/lib/providers/user-setting-storage-provider.d.ts +20 -0
  254. package/lib/providers/user-setting-storage-provider.js +72 -0
  255. package/lib/providers/widget-provider.js +0 -1
  256. package/lib/scenes/main-scene.js +13 -16
  257. package/lib/scenes/waiting-scene.js +4 -4
  258. package/lib/shared-data-source/chat-data.js +0 -2
  259. package/lib/shared-data-source/config.d.ts +1 -5
  260. package/lib/shared-data-source/config.js +11 -81
  261. package/lib/shared-data-source/interpreter.js +0 -2
  262. package/lib/shared-data-source/layout-data.js +1 -4
  263. package/lib/shared-data-source/member-data.js +0 -4
  264. package/lib/shared-data-source/pin-data.js +0 -1
  265. package/lib/shared-data-source/screen-share-data.d.ts +6 -2
  266. package/lib/shared-data-source/screen-share-data.js +2 -2
  267. package/lib/shared-data-source/security-data.js +0 -1
  268. package/lib/shared-data-source/setting.d.ts +13 -13
  269. package/lib/shared-data-source/setting.js +10 -8
  270. package/lib/shared-data-source/video-window.d.ts +2 -1
  271. package/lib/shared-data-source/video-window.js +82 -66
  272. package/lib/shared-data-source/waiting-room.js +0 -2
  273. package/lib/translations/enUS.d.ts +8 -0
  274. package/lib/translations/enUS.js +9 -1
  275. package/lib/translations/zhCN.d.ts +8 -0
  276. package/lib/translations/zhCN.js +11 -3
  277. package/lib/type.d.ts +2 -1
  278. package/lib/type.js +14 -0
  279. package/lib/ui-scene.js +18 -14
  280. package/lib/utilities/constant.d.ts +2 -1
  281. package/lib/utilities/constant.js +8 -0
  282. package/lib/utilities/copyText.js +12 -12
  283. package/lib/utilities/hooks.js +1 -2
  284. package/lib/utilities/logger.js +0 -1
  285. package/lib/utilities/parameters.js +2 -2
  286. package/lib/utilities/privilege.js +0 -3
  287. package/lib/utilities/renderer-event.js +0 -2
  288. package/lib/utilities/setting-config-storage.d.ts +7 -6
  289. package/lib/utilities/setting-config-storage.js +55 -41
  290. package/lib/utilities/tools.d.ts +1 -0
  291. package/lib/utilities/tools.js +9 -12
  292. package/lib/waiting-room-control-manager.js +26 -28
  293. package/package.json +8 -6
  294. package/dist/132.js +0 -2
  295. package/dist/132.js.LICENSE.txt +0 -311
  296. package/dist/317.js +0 -2
  297. package/dist/317.js.LICENSE.txt +0 -20
  298. package/dist/651.js +0 -2
  299. package/dist/651.js.LICENSE.txt +0 -1
  300. package/dist/689343b64b60bfb7ffff.png +0 -0
  301. package/dist/73.js +0 -1
  302. package/dist/885f9369ea05a8ac0e56.png +0 -0
  303. package/dist/90f383876a6e93e7c7ca.png +0 -0
  304. package/dist/9b37584780995fc5df8c.gif +0 -0
  305. package/dist/annotation.e5cbd3a70b6d42361872.css +0 -1274
  306. package/dist/annotation.html +0 -1
  307. package/dist/annotation.js +0 -2
  308. package/dist/annotation.js.LICENSE.txt +0 -252
  309. package/dist/assets/browser/images/default1.jpg +0 -0
  310. package/dist/assets/browser/images/default2.jpg +0 -0
  311. package/dist/assets/browser/images/default3.jpg +0 -0
  312. package/dist/assets/browser/images/default4.jpg +0 -0
  313. package/dist/assets/browser/images/default5.jpg +0 -0
  314. package/dist/assets/browser/images/default6.jpg +0 -0
  315. package/dist/assets/browser/images/default7.jpg +0 -0
  316. package/dist/assets/browser/sound_effects/pretest.mp3 +0 -0
  317. package/dist/assets/browser/sound_effects/recording_started.mp3 +0 -0
  318. package/dist/assets/browser/sound_effects/remote_user_joined.mp3 +0 -0
  319. package/dist/assets/browser/sound_effects/speaker_test.mp3 +0 -0
  320. package/dist/assets/browser/videos/default8.mp4 +0 -0
  321. package/dist/assets/browser/videos/default9.mp4 +0 -0
  322. package/dist/assets/cursors/fcr_whiteboard_input.ico +0 -0
  323. package/dist/assets/cursors/fcr_whiteboard_pen.ico +0 -0
  324. package/dist/assets/cursors/fcr_whiteboard_shape_-straightline.ico +0 -0
  325. package/dist/assets/cursors/fcr_whiteboard_shape_arrow.ico +0 -0
  326. package/dist/assets/cursors/fcr_whiteboard_shape_circle.ico +0 -0
  327. package/dist/assets/cursors/fcr_whiteboard_shape_rectangle.ico +0 -0
  328. package/dist/assets/cursors/fcr_whiteboard_shape_triangle.ico +0 -0
  329. package/dist/assets/electron/images/default1.jpg +0 -0
  330. package/dist/assets/electron/images/default2.jpg +0 -0
  331. package/dist/assets/electron/sound_effects/pretest.mp3 +0 -0
  332. package/dist/assets/electron/videos/default8.mp4 +0 -0
  333. package/dist/assets/fcr_chat_reddot.svg +0 -5
  334. package/dist/assets/fcr_defaultpage.png +0 -0
  335. package/dist/assets/fcr_grid_big.svg +0 -3
  336. package/dist/assets/fcr_leave2.svg +0 -58
  337. package/dist/assets/fcr_listontop_big.svg +0 -3
  338. package/dist/assets/full-screen-error-boundary-img.png +0 -0
  339. package/dist/assets/leave-meeting.png +0 -0
  340. package/dist/assets/loading.gif +0 -0
  341. package/dist/assets/login_confirm.png +0 -0
  342. package/dist/assets/pretest.mp3 +0 -0
  343. package/dist/assets/state-bar-logo.png +0 -0
  344. package/dist/assets/step-gradient.svg +0 -10
  345. package/dist/b74b002687a3a3346bec.png +0 -0
  346. package/dist/b94869094481702f949b.png +0 -0
  347. package/dist/ebeace75fd46b90d890e.png +0 -0
  348. package/dist/electron/app.js +0 -194
  349. package/dist/electron/bootstrap-dev.js +0 -46
  350. package/dist/electron/bootstrap-sdk.js +0 -211
  351. package/dist/electron/default-options.js +0 -25
  352. package/dist/electron/env.js +0 -13
  353. package/dist/electron/index.js +0 -20
  354. package/dist/electron/injections.js +0 -903
  355. package/dist/electron/ipc/ipc.js +0 -141
  356. package/dist/electron/ipc/type.js +0 -19
  357. package/dist/electron/logger.js +0 -65
  358. package/dist/electron/main.js +0 -94
  359. package/dist/electron/plugins/devtool-shortcut.js +0 -33
  360. package/dist/electron/plugins/meeting-state.js +0 -39
  361. package/dist/electron/plugins/screenshot.js +0 -54
  362. package/dist/electron/preload.js +0 -108
  363. package/dist/electron/tools.js +0 -66
  364. package/dist/electron/window.js +0 -123
  365. package/dist/extensions/agora-extension-virtual-background/agora-wasm.wasm +0 -0
  366. package/dist/extensions/ai-denoiser/denoiser-wasm-simd.wasm +0 -0
  367. package/dist/extensions/ai-denoiser/denoiser-wasm.js +0 -1
  368. package/dist/extensions/ai-denoiser/denoiser-wasm.wasm +0 -0
  369. package/dist/fad688b9135b15d6c405.png +0 -0
  370. package/dist/index.html +0 -224
  371. package/dist/main.393a2a91ab7fc05ffce6.css +0 -15403
  372. package/dist/main.js +0 -2
  373. package/dist/main.js.LICENSE.txt +0 -272
  374. package/dist/worker-entry.worker.js.LICENSE.txt +0 -13
package/lib/base.js CHANGED
@@ -51,9 +51,6 @@ require("core-js/modules/es.reflect.has.js");
51
51
  require("core-js/modules/es.reflect.set.js");
52
52
  require("core-js/modules/es.set.js");
53
53
  require("core-js/modules/es.string.iterator.js");
54
- require("core-js/modules/esnext.async-iterator.filter.js");
55
- require("core-js/modules/esnext.async-iterator.for-each.js");
56
- require("core-js/modules/esnext.async-iterator.map.js");
57
54
  require("core-js/modules/esnext.iterator.constructor.js");
58
55
  require("core-js/modules/esnext.iterator.filter.js");
59
56
  require("core-js/modules/esnext.iterator.for-each.js");
package/lib/creator.d.ts CHANGED
@@ -9,6 +9,7 @@ export declare class FcrUISceneCreator {
9
9
  accessor observableSettingStore: FcrObservableSettingStore;
10
10
  protected logger: import("agora-foundation/lib/logger").Logger;
11
11
  private _settingConfigStorage;
12
+ private _userSettingStorageProvider;
12
13
  private _registeredWidgetConfigs;
13
14
  private _released;
14
15
  private _scene;
package/lib/creator.js CHANGED
@@ -15,7 +15,6 @@ require("core-js/modules/es.object.define-properties.js");
15
15
  require("core-js/modules/es.object.define-property.js");
16
16
  require("core-js/modules/es.object.get-own-property-descriptor.js");
17
17
  require("core-js/modules/es.object.get-own-property-descriptors.js");
18
- require("core-js/modules/esnext.async-iterator.for-each.js");
19
18
  require("core-js/modules/esnext.function.metadata.js");
20
19
  require("core-js/modules/esnext.iterator.for-each.js");
21
20
  require("core-js/modules/esnext.symbol.metadata.js");
@@ -38,14 +37,10 @@ require("core-js/modules/es.array.map.js");
38
37
  require("core-js/modules/es.date.to-json.js");
39
38
  require("core-js/modules/es.json.stringify.js");
40
39
  require("core-js/modules/es.map.js");
41
- require("core-js/modules/es.object.assign.js");
42
40
  require("core-js/modules/es.object.keys.js");
43
41
  require("core-js/modules/es.object.to-string.js");
44
42
  require("core-js/modules/es.string.iterator.js");
45
43
  require("core-js/modules/es.weak-map.js");
46
- require("core-js/modules/esnext.async-iterator.filter.js");
47
- require("core-js/modules/esnext.async-iterator.find.js");
48
- require("core-js/modules/esnext.async-iterator.map.js");
49
44
  require("core-js/modules/esnext.iterator.constructor.js");
50
45
  require("core-js/modules/esnext.iterator.filter.js");
51
46
  require("core-js/modules/esnext.iterator.find.js");
@@ -97,6 +92,7 @@ var _imports = require("fcr-core/lib/imports");
97
92
  var _localStorageProvider = require("./providers/local-storage-provider");
98
93
  var _logger = require("./utilities/logger");
99
94
  var _uiResources = require("./utilities/ui-resources");
95
+ var _userSettingStorageProvider = require("./providers/user-setting-storage-provider");
100
96
  var _jsxRuntime = require("react/jsx-runtime");
101
97
  var _excluded = ["rtc.microphone.keep.recording"];
102
98
  var _FcrUISceneCreator;
@@ -135,9 +131,10 @@ var FcrUISceneCreator = exports.FcrUISceneCreator = /*#__PURE__*/function () {
135
131
  this._config = _config;
136
132
  this.logger.info("creator config: ".concat(JSON.stringify(_config)));
137
133
  this._localStorageProvider = new _localStorageProvider.FcrUILocalStorageProviderImpl();
134
+ this._userSettingStorageProvider = new _userSettingStorageProvider.FcrUIUserSettingStorageProviderImpl();
138
135
  this._localStorageProvider.write('annotation_rtm_app_id', this._config.appId);
139
136
  this._settingConfigStorage = new _settingConfigStorage.FcrSettingConfigStorage({
140
- localStorageProvider: this._localStorageProvider
137
+ userSettingStorageProvider: this._userSettingStorageProvider
141
138
  });
142
139
  this._setKeepRecordingValueFromParameters(this._config.parameters || {});
143
140
  var filteredParameters = this._filterKeepRecordingValueFromParameters(this._config.parameters || {});
@@ -190,18 +187,19 @@ var FcrUISceneCreator = exports.FcrUISceneCreator = /*#__PURE__*/function () {
190
187
  }
191
188
  (0, _i18n.changeLanguage)(config.language);
192
189
  var scene = new _uiScene.FcrUIDefaultScene(config, this._config, dom, this._settingConfigStorage, this._registeredWidgetConfigs, this._engine);
193
- var onLaunchSuccess = function onLaunchSuccess() {
194
- var parameters = _objectSpread(_objectSpread({}, _this._parameters), {}, {
195
- rtc: [JSON.stringify({
196
- 'rtc.microphone.keep.recording': _this._microphoneKeepRecording
197
- })]
198
- });
199
- _this.logger.info("[MicrophoneKeepRecording][onLaunchSuccess] parameters ==> ".concat(JSON.stringify(parameters)));
200
- _this._engine.setParameters(parameters);
201
- return onSuccess;
202
- };
203
190
  scene.addObserver({
204
- onLaunchSuccess: onLaunchSuccess(),
191
+ onLaunchSuccess: function onLaunchSuccess() {
192
+ if (_this._microphoneKeepRecording) {
193
+ var parameters = {
194
+ rtc: [JSON.stringify({
195
+ 'rtc.microphone.keep.recording': true
196
+ })]
197
+ };
198
+ _this.logger.info("[MicrophoneKeepRecording][onLaunchSuccess] parameters ==> ".concat(JSON.stringify(parameters)));
199
+ _this._engine.setParameters(parameters);
200
+ }
201
+ onSuccess.apply(void 0, arguments);
202
+ },
205
203
  onLaunchFailure: onFailure,
206
204
  onLaunchCancel: onCancel,
207
205
  onSettingStore: function onSettingStore(store) {
@@ -209,13 +207,15 @@ var FcrUISceneCreator = exports.FcrUISceneCreator = /*#__PURE__*/function () {
209
207
  _this.closeSetting();
210
208
  },
211
209
  onExited: function onExited() {
212
- var parameters = _objectSpread(_objectSpread({}, _this._parameters), {}, {
213
- rtc: [JSON.stringify({
214
- 'rtc.microphone.keep.recording': false
215
- })]
216
- });
217
- _this.logger.info("[MicrophoneKeepRecording][onExited] parameters ==> ".concat(JSON.stringify(parameters)));
218
- _this._engine.setParameters(parameters);
210
+ if (_this._microphoneKeepRecording) {
211
+ var parameters = {
212
+ rtc: [JSON.stringify({
213
+ 'rtc.microphone.keep.recording': false
214
+ })]
215
+ };
216
+ _this.logger.info("[MicrophoneKeepRecording][onExited] parameters ==> ".concat(JSON.stringify(parameters)));
217
+ _this._engine.setParameters(parameters);
218
+ }
219
219
  _this.closeSetting();
220
220
  _this._initSettingStore();
221
221
  _this._resetScene();
@@ -280,19 +280,18 @@ var FcrUISceneCreator = exports.FcrUISceneCreator = /*#__PURE__*/function () {
280
280
  value: function () {
281
281
  var _initSettingStore2 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
282
282
  var openDefaultCamera, openDefaultMicrophone, eventProvider, deviceProvider, dialogProvider, messageProvider, sharedConfigDataSource, sharedSettingDataSource, monitorProvider;
283
- return _regenerator["default"].wrap(function _callee$(_context) {
283
+ return _regenerator["default"].wrap(function (_context) {
284
284
  while (1) switch (_context.prev = _context.next) {
285
285
  case 0:
286
286
  this._eventProvider = new _eventProvider.FcrUIEventProviderImpl();
287
287
  this._messageProvider = new _messageProvider.FcrUIMessageProviderImpl();
288
288
  this._dialogProvider = new _dialogProvider.FcrUIDialogProviderImpl();
289
- this._deviceProvider = new _deviceProvider.FcrUIDeviceProviderImpl(this._eventProvider, this._engine.getDesktopMediaControl(), this._settingConfigStorage.media, this._localStorageProvider);
289
+ this._deviceProvider = new _deviceProvider.FcrUIDeviceProviderImpl(this._eventProvider, this._engine.getDesktopMediaControl(), this._settingConfigStorage.media, this._userSettingStorageProvider);
290
290
  this._sharedConfigDataSource = new _config2.FcrUISharedConfigDataSourceImpl({
291
291
  creatorConfig: this._config,
292
- settingConfig: this._settingConfigStorage,
293
- localStorageProvider: this._localStorageProvider
292
+ settingConfig: this._settingConfigStorage
294
293
  });
295
- this._sharedSettingDataSource = new _setting.FcrUISharedSettingDataSourceImpl(this._config, this._localStorageProvider);
294
+ this._sharedSettingDataSource = new _setting.FcrUISharedSettingDataSourceImpl(this._config, this._userSettingStorageProvider);
296
295
  openDefaultCamera = (0, _parameters.isOpenDefaultCamera)(this._config.parameters);
297
296
  openDefaultMicrophone = (0, _parameters.isOpenDefaultMicrophone)(this._config.parameters);
298
297
  if (openDefaultCamera) {
@@ -310,9 +309,9 @@ var FcrUISceneCreator = exports.FcrUISceneCreator = /*#__PURE__*/function () {
310
309
  sharedSettingDataSource = this._sharedSettingDataSource;
311
310
  monitorProvider = new _monitorProvider.FcrUIMonitorProviderImpl(this._engine.getMonitorControl());
312
311
  deviceProvider.loadUiResources((0, _uiResources.getNormalDownloadResources)(this._config.resource));
313
- _context.next = 20;
312
+ _context.next = 1;
314
313
  return deviceProvider.init();
315
- case 20:
314
+ case 1:
316
315
  this.observableSettingStore.value = new _store["default"]({
317
316
  uiEventStore: eventProvider,
318
317
  monitorControl: monitorProvider,
@@ -323,10 +322,10 @@ var FcrUISceneCreator = exports.FcrUISceneCreator = /*#__PURE__*/function () {
323
322
  sharedSettingDataSource: sharedSettingDataSource,
324
323
  dialogProvider: dialogProvider,
325
324
  settingConfig: sharedConfigDataSource.settingConfig,
326
- localStorageProvider: this._localStorageProvider,
327
- userId: this._config.userId
325
+ userId: this._config.userId,
326
+ userSettingStorageProvider: this._userSettingStorageProvider
328
327
  });
329
- case 21:
328
+ case 2:
330
329
  case "end":
331
330
  return _context.stop();
332
331
  }
@@ -389,28 +388,40 @@ var FcrUISceneCreator = exports.FcrUISceneCreator = /*#__PURE__*/function () {
389
388
  }, {
390
389
  key: "_filterKeepRecordingValueFromParameters",
391
390
  value: function _filterKeepRecordingValueFromParameters(parameters) {
392
- var filteredParameters = Object.assign({}, parameters);
393
- filteredParameters.rtc = filteredParameters.rtc.map(function (item) {
394
- var _JSON$parse = JSON.parse(item),
395
- _ = _JSON$parse['rtc.microphone.keep.recording'],
396
- rest = (0, _objectWithoutProperties2["default"])(_JSON$parse, _excluded);
397
- return Object.keys(rest).length > 0 ? JSON.stringify(rest) : null;
398
- }).filter(function (item) {
399
- return item !== null;
400
- });
401
- return filteredParameters;
391
+ if (!(parameters !== null && parameters !== void 0 && parameters.rtc)) return parameters;
392
+ try {
393
+ var rtc = (parameters === null || parameters === void 0 ? void 0 : parameters.rtc).map(function (item) {
394
+ var _JSON$parse = JSON.parse(item),
395
+ _ = _JSON$parse['rtc.microphone.keep.recording'],
396
+ rest = (0, _objectWithoutProperties2["default"])(_JSON$parse, _excluded);
397
+ return Object.keys(rest).length > 0 ? JSON.stringify(rest) : null;
398
+ }).filter(function (item) {
399
+ return item !== null;
400
+ });
401
+ return _objectSpread(_objectSpread({}, parameters), {}, {
402
+ rtc: rtc
403
+ });
404
+ } catch (e) {
405
+ this.logger.error("[MicrophoneKeepRecording][filterKeepRecordingValueFromParameters] error: ".concat(e));
406
+ return parameters;
407
+ }
402
408
  }
403
409
  }, {
404
410
  key: "_setKeepRecordingValueFromParameters",
405
411
  value: function _setKeepRecordingValueFromParameters(parameters) {
406
- var rtcs = parameters.rtc;
407
- var keepRecording = rtcs.find(function (item) {
408
- return typeof JSON.parse(item)['rtc.microphone.keep.recording'] === 'boolean';
409
- });
410
- if (keepRecording) {
411
- var keepRecordingValue = JSON.parse(keepRecording)['rtc.microphone.keep.recording'];
412
- this._microphoneKeepRecording = !!keepRecordingValue;
413
- this.logger.info("[MicrophoneKeepRecording][setParameters] keepRecording value is ==> ".concat(JSON.stringify(parameters)));
412
+ if (!(parameters !== null && parameters !== void 0 && parameters.rtc)) return;
413
+ try {
414
+ var rtcs = parameters === null || parameters === void 0 ? void 0 : parameters.rtc;
415
+ var keepRecording = rtcs.find(function (item) {
416
+ return typeof JSON.parse(item)['rtc.microphone.keep.recording'] === 'boolean';
417
+ });
418
+ if (keepRecording) {
419
+ var keepRecordingValue = JSON.parse(keepRecording)['rtc.microphone.keep.recording'];
420
+ this._microphoneKeepRecording = !!keepRecordingValue;
421
+ this.logger.info("[MicrophoneKeepRecording][setParameters] keepRecording value is ==> ".concat(JSON.stringify(parameters)));
422
+ }
423
+ } catch (e) {
424
+ this.logger.error("[MicrophoneKeepRecording][setParameters] error: ".concat(e));
414
425
  }
415
426
  }
416
427
  }]);
@@ -9,16 +9,13 @@ Object.defineProperty(exports, "__esModule", {
9
9
  exports.hookApp = void 0;
10
10
  var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
11
11
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
12
+ require("core-js/modules/es.array.concat.js");
12
13
  require("core-js/modules/es.array.find.js");
13
14
  require("core-js/modules/es.array.for-each.js");
14
15
  require("core-js/modules/es.array.join.js");
15
- require("core-js/modules/es.date.to-json.js");
16
- require("core-js/modules/es.json.stringify.js");
17
16
  require("core-js/modules/es.object.keys.js");
18
17
  require("core-js/modules/es.object.to-string.js");
19
18
  require("core-js/modules/es.string.starts-with.js");
20
- require("core-js/modules/esnext.async-iterator.find.js");
21
- require("core-js/modules/esnext.async-iterator.for-each.js");
22
19
  require("core-js/modules/esnext.iterator.constructor.js");
23
20
  require("core-js/modules/esnext.iterator.find.js");
24
21
  require("core-js/modules/esnext.iterator.for-each.js");
@@ -30,14 +27,17 @@ var _electron = require("electron");
30
27
  var _path = _interopRequireDefault(require("path"));
31
28
  var _logger = require("./logger");
32
29
  var _child_process = require("child_process");
30
+ var _exitCodes = require("./exit-codes");
33
31
  var logger = (0, _logger.getLogger)();
34
32
  var hookApp = exports.hookApp = function hookApp(app) {
33
+ logger.info("hook app, main process id: ".concat(process.pid));
35
34
  var isWindowDestroyed = function isWindowDestroyed(window) {
36
35
  return window.isDestroyed();
37
36
  };
38
37
  app.commandLine.appendSwitch('ignore-certificate-errors');
39
38
  app.addListener('browser-window-created', function (_, window) {
40
39
  var windowId = window.id;
40
+ logger.info("[electron][window]: browser window is created, id: ".concat(windowId));
41
41
  window.addListener('close', function () {
42
42
  _electron.BrowserWindow.getAllWindows().forEach(function (window) {
43
43
  if (!isWindowDestroyed(window)) {
@@ -48,10 +48,29 @@ var hookApp = exports.hookApp = function hookApp(app) {
48
48
  }
49
49
  });
50
50
  });
51
- window.webContents.addListener('render-process-gone', function (event, arg) {
52
- logger.info("render-process-gone: ".concat(JSON.stringify(arg)));
51
+ window.webContents.addListener('render-process-gone', function (event, details) {
52
+ // 安全地获取 window 信息,避免在崩溃状态下访问可能失效的属性
53
+ var windowTitle = 'Unknown';
54
+ var windowId = 'Unknown';
55
+ try {
56
+ // 检查 window 是否仍然有效
57
+ if (!window.isDestroyed()) {
58
+ windowTitle = window.getTitle() || 'Unknown';
59
+ windowId = String(window.id);
60
+ }
61
+ } catch (error) {
62
+ logger.warn("[electron][window]: failed to get window info during crash: ".concat(error));
63
+ }
64
+
65
+ // 输出详细的崩溃信息
66
+ logger.error("[electron][window]: app exit due to render-process-gone event, window crash details - title: ".concat(windowTitle, ", id: ").concat(windowId, ", exitCode: ").concat(details.exitCode, ", reason: ").concat(details.reason));
67
+ logger.error('[electron][window]: exiting process due to render-process-gone event');
68
+ app.exit(_exitCodes.AppExitCode.RENDERER_PROCESS_GONE);
53
69
  });
54
70
  window.webContents.addListener('did-finish-load', function () {
71
+ var title = window.getTitle();
72
+ var processId = window.webContents.getOSProcessId();
73
+ logger.info("[electron][window]: browser window did finish load, id: ".concat(windowId, ", title: ").concat(title, ", process id: ").concat(processId));
55
74
  setTimeout(function () {
56
75
  _electron.BrowserWindow.getAllWindows().forEach(function (window) {
57
76
  if (!isWindowDestroyed(window)) {
@@ -130,11 +149,11 @@ var hookApp = exports.hookApp = function hookApp(app) {
130
149
  _electron.ipcMain.handle('checkMediaPermission', /*#__PURE__*/function () {
131
150
  var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(_, mediaType) {
132
151
  var accessStatus, res;
133
- return _regenerator["default"].wrap(function _callee$(_context) {
152
+ return _regenerator["default"].wrap(function (_context) {
134
153
  while (1) switch (_context.prev = _context.next) {
135
154
  case 0:
136
155
  if (!(mediaType === 'sharing')) {
137
- _context.next = 3;
156
+ _context.next = 1;
138
157
  break;
139
158
  }
140
159
  // below API call will trigger the system to add the permission for screen recording on macOS
@@ -142,20 +161,20 @@ var hookApp = exports.hookApp = function hookApp(app) {
142
161
  types: ['screen']
143
162
  });
144
163
  return _context.abrupt("return", true);
145
- case 3:
164
+ case 1:
146
165
  accessStatus = _electron.systemPreferences.getMediaAccessStatus(mediaType);
147
166
  if (!(accessStatus !== 'granted')) {
148
- _context.next = 11;
167
+ _context.next = 3;
149
168
  break;
150
169
  }
151
- _context.next = 7;
170
+ _context.next = 2;
152
171
  return _electron.systemPreferences.askForMediaAccess(mediaType);
153
- case 7:
172
+ case 2:
154
173
  res = _context.sent;
155
174
  return _context.abrupt("return", res);
156
- case 11:
175
+ case 3:
157
176
  return _context.abrupt("return", true);
158
- case 12:
177
+ case 4:
159
178
  case "end":
160
179
  return _context.stop();
161
180
  }
@@ -10,8 +10,6 @@ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
10
  require("core-js/modules/es.object.get-own-property-descriptors.js");
11
11
  require("core-js/modules/es.object.keys.js");
12
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
13
  require("core-js/modules/esnext.iterator.constructor.js");
16
14
  require("core-js/modules/esnext.iterator.filter.js");
17
15
  require("core-js/modules/esnext.iterator.for-each.js");
@@ -25,9 +23,13 @@ var _defaultOptions = require("./default-options");
25
23
  var _env = require("./env");
26
24
  var _main2 = require("./main");
27
25
  var _devtoolShortcut = require("./plugins/devtool-shortcut");
26
+ var _exitCodes = require("./exit-codes");
28
27
  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; }
29
28
  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; }
30
29
  (0, _main.initialize)();
30
+ _electron.crashReporter.start({
31
+ uploadToServer: false
32
+ });
31
33
  (0, _app.hookApp)(_electron.app);
32
34
  _electron.app.addListener('ready', function () {
33
35
  var mainWindow = new _electron.BrowserWindow(_objectSpread(_objectSpread({}, _defaultOptions.defaultWindowOptions), {}, {
@@ -35,7 +37,7 @@ _electron.app.addListener('ready', function () {
35
37
  }));
36
38
  (0, _main2.hookWindow)(mainWindow);
37
39
  mainWindow.addListener('closed', function () {
38
- _electron.app.exit(0);
40
+ _electron.app.exit(_exitCodes.AppExitCode.NORMAL_EXIT);
39
41
  });
40
42
  mainWindow.webContents.openDevTools({
41
43
  mode: 'detach'
@@ -8,8 +8,6 @@ require("core-js/modules/es.object.define-properties.js");
8
8
  require("core-js/modules/es.object.define-property.js");
9
9
  require("core-js/modules/es.object.get-own-property-descriptor.js");
10
10
  require("core-js/modules/es.object.get-own-property-descriptors.js");
11
- require("core-js/modules/esnext.async-iterator.filter.js");
12
- require("core-js/modules/esnext.async-iterator.for-each.js");
13
11
  require("core-js/modules/esnext.iterator.filter.js");
14
12
  require("core-js/modules/esnext.iterator.for-each.js");
15
13
  require("core-js/modules/web.dom-collections.for-each.js");
@@ -23,7 +21,6 @@ require("core-js/modules/es.object.keys.js");
23
21
  require("core-js/modules/es.object.to-string.js");
24
22
  require("core-js/modules/es.parse-int.js");
25
23
  require("core-js/modules/es.string.starts-with.js");
26
- require("core-js/modules/esnext.async-iterator.find.js");
27
24
  require("core-js/modules/esnext.iterator.constructor.js");
28
25
  require("core-js/modules/esnext.iterator.find.js");
29
26
  require("core-js/modules/esnext.json.parse.js");
@@ -41,6 +38,7 @@ var _devtoolShortcut = require("./plugins/devtool-shortcut");
41
38
  var _ipc = require("./ipc/ipc");
42
39
  var _type = require("./ipc/type");
43
40
  var _meetingState = require("./plugins/meeting-state");
41
+ var _exitCodes = require("./exit-codes");
44
42
  var _process$argv$find;
45
43
  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
44
  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; }
@@ -65,7 +63,7 @@ ipcClient.addObserver({
65
63
  },
66
64
  onDisconnected: function onDisconnected() {
67
65
  (0, _logger.getLogger)().info('IPC client disconnected from server');
68
- _electron.app.exit(0);
66
+ _electron.app.exit(_exitCodes.AppExitCode.NORMAL_EXIT);
69
67
  },
70
68
  onMessageReceived: function onMessageReceived(message) {
71
69
  switch (message.cmd) {
@@ -180,21 +178,17 @@ _electron.app.addListener('ready', function () {
180
178
  });
181
179
  });
182
180
  mainWindow.addListener('closed', function () {
183
- _electron.app.exit(0);
181
+ _electron.app.exit(_exitCodes.AppExitCode.NORMAL_EXIT);
184
182
  });
185
183
  mainWindow.addListener('close', function (e) {
186
184
  var closeListenerCount = mainWindow.listenerCount('close');
187
- (0, _logger.getLogger)().info("mainWindow close listener count: ".concat(closeListenerCount, ", isInMeeting: ").concat(_meetingState.isInMeeting));
185
+ (0, _logger.getLogger)().info("main window close listener count: ".concat(closeListenerCount, ", isInMeeting: ").concat(_meetingState.isInMeeting));
188
186
  if (_meetingState.isInMeeting === 0) {
189
187
  e.preventDefault();
190
188
  mainWindow.hide();
191
189
  mainWindow.webContents.send('close-window-before-launch-success');
192
190
  }
193
191
  });
194
- mainWindow.webContents.addListener('render-process-gone', function (e, details) {
195
- (0, _logger.getLogger)().info("app exit due to render-process-gone event: ".concat(JSON.stringify(details)));
196
- _electron.app.exit(0);
197
- });
198
192
  if (_env.isDev) {
199
193
  mainWindow.webContents.openDevTools({
200
194
  mode: 'detach'
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Application exit codes
3
+ *
4
+ * These codes are used when calling app.exit() to indicate the reason for application termination.
5
+ * Using specific exit codes helps with debugging and process monitoring.
6
+ */
7
+ export declare enum AppExitCode {
8
+ NORMAL_EXIT = 0,
9
+ /**
10
+ * Renderer process has unexpectedly terminated
11
+ * This typically indicates a crash or critical error in the sub window renderer process
12
+ */
13
+ RENDERER_PROCESS_GONE = 100
14
+ }
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.AppExitCode = void 0;
8
+ /**
9
+ * Application exit codes
10
+ *
11
+ * These codes are used when calling app.exit() to indicate the reason for application termination.
12
+ * Using specific exit codes helps with debugging and process monitoring.
13
+ */
14
+ var AppExitCode = exports.AppExitCode = /*#__PURE__*/function (AppExitCode) {
15
+ AppExitCode[AppExitCode["NORMAL_EXIT"] = 0] = "NORMAL_EXIT";
16
+ /**
17
+ * Renderer process has unexpectedly terminated
18
+ * This typically indicates a crash or critical error in the sub window renderer process
19
+ */
20
+ AppExitCode[AppExitCode["RENDERER_PROCESS_GONE"] = 100] = "RENDERER_PROCESS_GONE";
21
+ return AppExitCode;
22
+ }({});
@@ -1,6 +1,7 @@
1
1
  import { IpcRendererEvent } from 'electron';
2
2
  import { BrowserWindowConstructorOptions } from 'electron/renderer';
3
3
  import os from 'os';
4
+ import type { WindowManager } from '../type';
4
5
  export declare enum FcrNumericExitReason {
5
6
  LEAVE_ROOM = 1,// 自己离开而退出
6
7
  CLOSE_ROOM = 2,// 房间关闭而退出
@@ -27,8 +28,8 @@ export declare const captureScreen: (options?: {
27
28
  hideWindow?: boolean;
28
29
  alwaysHide?: boolean;
29
30
  }) => void;
30
- export declare const getActiveWindow: () => undefined;
31
- export declare const getWindows: () => never[];
31
+ export declare const getActiveWindow: () => WindowManager;
32
+ export declare const getWindows: () => WindowManager[];
32
33
  export declare const openRendererWindow: (frameName: string, renderFn: (dom: Element, browserWindow: Electron.BrowserWindow, newRendererWindow: Window) => void, windowOptions: BrowserWindowConstructorOptions) => Promise<void>;
33
34
  export declare const checkMediaPermission: (mediaType: "microphone" | "camera" | "sharing") => Promise<any>;
34
35
  export declare const openSystemPreferences: (mediaType: "microphone" | "camera") => void;