fcr-ui-scene 3.4.0 → 3.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (709) hide show
  1. package/lib/ scenes/base.d.ts +10 -0
  2. package/lib/ scenes/base.js +75 -0
  3. package/lib/ scenes/main-scene.d.ts +43 -0
  4. package/lib/ scenes/main-scene.js +368 -0
  5. package/lib/ scenes/waiting-scene.d.ts +31 -0
  6. package/lib/ scenes/waiting-scene.js +119 -0
  7. package/lib/base.d.ts +40 -5
  8. package/lib/base.js +237 -22
  9. package/lib/common/device-store.d.ts +12 -22
  10. package/lib/common/device-store.js +154 -247
  11. package/lib/common/device-stream-store.d.ts +4 -22
  12. package/lib/common/device-stream-store.js +113 -297
  13. package/lib/common/event-store.d.ts +10 -35
  14. package/lib/common/event-store.js +13 -64
  15. package/lib/common/room-store.js +4 -4
  16. package/lib/common/security-store.d.ts +26 -44
  17. package/lib/common/security-store.js +372 -329
  18. package/lib/common/type.d.ts +8 -0
  19. package/lib/common/type.js +6 -0
  20. package/lib/creator.d.ts +1 -1
  21. package/lib/creator.js +4 -9
  22. package/lib/electron/app.js +25 -7
  23. package/lib/electron/bootstrap-dev.js +0 -7
  24. package/lib/electron/bootstrap-sdk.js +11 -2
  25. package/lib/electron/injections.d.ts +3 -1
  26. package/lib/electron/injections.js +17 -2
  27. package/lib/electron/logger.d.ts +0 -4
  28. package/lib/electron/logger.js +2 -5
  29. package/lib/electron/main.js +1 -1
  30. package/lib/electron/plugins/devtool-shortcut.js +10 -1
  31. package/lib/electron/plugins/meeting-state.js +1 -1
  32. package/lib/electron/preload.js +3 -1
  33. package/lib/error-fallback.css +62 -0
  34. package/lib/error-fallback.d.ts +2 -0
  35. package/lib/error-fallback.js +19 -0
  36. package/lib/fragments/control-bar/cloud-recording-buttons.js +1 -1
  37. package/lib/fragments/control-bar/control-bar-store.d.ts +1 -44
  38. package/lib/fragments/control-bar/control-bar-store.js +80 -457
  39. package/lib/fragments/control-bar/device/index.js +3 -5
  40. package/lib/fragments/control-bar/index.css +10 -15
  41. package/lib/fragments/control-bar/index.js +0 -24
  42. package/lib/fragments/control-bar/more-actions/index.css +0 -53
  43. package/lib/fragments/control-bar/more-actions/index.js +38 -73
  44. package/lib/fragments/control-bar/security-content/index.css +0 -75
  45. package/lib/fragments/control-bar/security-content/index.js +19 -105
  46. package/lib/fragments/control-bar/share-state-nav/index.js +1 -1
  47. package/lib/fragments/control-bar/view.js +8 -23
  48. package/lib/fragments/live-streaming/store.d.ts +1 -1
  49. package/lib/fragments/live-streaming/store.js +1 -1
  50. package/lib/fragments/live-streaming/view.js +2 -4
  51. package/lib/fragments/share-screen-selection/selection-store.d.ts +1 -1
  52. package/lib/fragments/share-screen-selection/selection-store.js +1 -1
  53. package/lib/fragments/share-screen-selection/view.js +20 -20
  54. package/lib/fragments/toolbar/components/eraser-picker.js +1 -1
  55. package/lib/fragments/toolbar/components/pen-picker.js +1 -1
  56. package/lib/fragments/toolbar/components/shape-picker.js +1 -1
  57. package/lib/fragments/toolbar/components/wrapper.js +1 -1
  58. package/lib/fragments/toolbar/hooks.js +1 -1
  59. package/lib/fragments/toolbar/store.d.ts +1 -1
  60. package/lib/global.css +5 -0
  61. package/lib/index.d.ts +1 -0
  62. package/lib/index.js +7 -4
  63. package/lib/login-confirm-dialog.d.ts +1 -0
  64. package/lib/login-confirm-dialog.js +7 -2
  65. package/lib/modules/Interpreter/action/delete-btn/index.d.ts +2 -2
  66. package/lib/modules/Interpreter/action/edit-btn/index.d.ts +0 -1
  67. package/lib/modules/Interpreter/action/edit-btn/index.js +2 -4
  68. package/lib/modules/Interpreter/action/switch-btn/index.css +3 -0
  69. package/lib/modules/Interpreter/action/switch-btn/index.d.ts +2 -4
  70. package/lib/modules/Interpreter/action/switch-btn/index.js +8 -8
  71. package/lib/modules/Interpreter/dialog-content/index.d.ts +2 -2
  72. package/lib/modules/Interpreter/dialog-content/index.js +4 -4
  73. package/lib/modules/Interpreter/footer/index.css +4 -3
  74. package/lib/modules/Interpreter/index.d.ts +11 -19
  75. package/lib/modules/Interpreter/index.js +23 -24
  76. package/lib/modules/Interpreter/interpreter-list/index.css +5 -1
  77. package/lib/modules/Interpreter/interpreter-list/index.d.ts +1 -0
  78. package/lib/modules/Interpreter/interpreter-list/index.js +3 -1
  79. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.css +0 -6
  80. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.d.ts +2 -2
  81. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-language/index.js +3 -3
  82. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.css +1 -3
  83. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.d.ts +2 -7
  84. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +66 -92
  85. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/option-Item.d.ts +6 -0
  86. package/lib/modules/Interpreter/interpreter-list/interpreter-item/components/pick-user/option-Item.js +58 -0
  87. package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.d.ts +2 -2
  88. package/lib/modules/Interpreter/interpreter-list/interpreter-item/index.js +2 -2
  89. package/lib/modules/Interpreter/store.d.ts +24 -78
  90. package/lib/modules/Interpreter/store.js +212 -1255
  91. package/lib/modules/Interpreter/type.d.ts +24 -0
  92. package/lib/modules/Interpreter/type.js +12 -0
  93. package/lib/modules/Interpreter/utils.d.ts +8 -0
  94. package/lib/modules/Interpreter/utils.js +81 -0
  95. package/lib/modules/Interpreter/view.d.ts +0 -1
  96. package/lib/modules/Interpreter/view.js +20 -6
  97. package/lib/modules/action-bar/action-bar-collapes-items.d.ts +1 -4
  98. package/lib/modules/action-bar/action-bar-collapes-items.js +14 -31
  99. package/lib/modules/action-bar/apps/useInterpreter.js +4 -2
  100. package/lib/modules/action-bar/chat/index.js +8 -8
  101. package/lib/modules/action-bar/components/apps/app-item/index.css +34 -0
  102. package/lib/modules/action-bar/components/apps/app-item/index.d.ts +3 -0
  103. package/lib/modules/action-bar/components/apps/app-item/index.js +61 -0
  104. package/lib/modules/action-bar/components/apps/appitems.d.ts +3 -0
  105. package/lib/modules/action-bar/components/apps/appitems.js +45 -0
  106. package/lib/modules/action-bar/components/apps/index.css +8 -0
  107. package/lib/modules/action-bar/components/apps/index.d.ts +4 -0
  108. package/lib/modules/action-bar/components/apps/index.js +56 -0
  109. package/lib/modules/action-bar/components/apps/useAppItemOptions.d.ts +9 -0
  110. package/lib/modules/action-bar/components/apps/useAppItemOptions.js +29 -0
  111. package/lib/modules/action-bar/components/apps/useBeautyBackground.d.ts +10 -0
  112. package/lib/modules/action-bar/components/apps/useBeautyBackground.js +36 -0
  113. package/lib/modules/action-bar/components/apps/useInterpreter.d.ts +14 -0
  114. package/lib/modules/action-bar/components/apps/useInterpreter.js +37 -0
  115. package/lib/modules/action-bar/components/apps/useLiveStreaming.d.ts +16 -0
  116. package/lib/modules/action-bar/components/apps/useLiveStreaming.js +41 -0
  117. package/lib/modules/action-bar/components/board/index.d.ts +4 -0
  118. package/lib/modules/action-bar/components/board/index.js +34 -0
  119. package/lib/modules/action-bar/components/breakout-room/index.d.ts +4 -0
  120. package/lib/modules/action-bar/components/breakout-room/index.js +32 -0
  121. package/lib/modules/action-bar/components/chat/index.css +80 -0
  122. package/lib/modules/action-bar/components/chat/index.d.ts +5 -0
  123. package/lib/modules/action-bar/components/chat/index.js +154 -0
  124. package/lib/modules/action-bar/components/collapse/index.d.ts +8 -0
  125. package/lib/modules/action-bar/components/collapse/index.js +222 -0
  126. package/lib/modules/action-bar/components/device/index.css +162 -0
  127. package/lib/modules/action-bar/components/device/index.d.ts +8 -0
  128. package/lib/modules/action-bar/components/device/index.js +611 -0
  129. package/lib/modules/action-bar/components/interpreter/index.d.ts +2 -0
  130. package/lib/modules/action-bar/components/interpreter/index.js +41 -0
  131. package/lib/modules/action-bar/components/item/index.d.ts +9 -0
  132. package/lib/modules/action-bar/components/item/index.js +164 -0
  133. package/lib/modules/action-bar/components/item.d.ts +27 -0
  134. package/lib/modules/action-bar/components/item.js +164 -0
  135. package/lib/modules/action-bar/components/leave/assign-host.d.ts +3 -0
  136. package/lib/modules/action-bar/components/leave/assign-host.js +64 -0
  137. package/lib/modules/action-bar/components/leave/index.css +126 -0
  138. package/lib/modules/action-bar/components/leave/index.d.ts +3 -0
  139. package/lib/modules/action-bar/components/leave/index.js +144 -0
  140. package/lib/modules/action-bar/components/leave/leave-meeting.d.ts +3 -0
  141. package/lib/modules/action-bar/components/leave/leave-meeting.js +153 -0
  142. package/lib/modules/action-bar/components/live-streaming/index.d.ts +4 -0
  143. package/lib/modules/action-bar/components/live-streaming/index.js +39 -0
  144. package/lib/modules/action-bar/components/more/index.css +114 -0
  145. package/lib/modules/action-bar/components/more/index.d.ts +5 -0
  146. package/lib/modules/action-bar/components/more/index.js +87 -0
  147. package/lib/modules/action-bar/components/more/poppover-content.d.ts +5 -0
  148. package/lib/modules/action-bar/components/more/poppover-content.js +423 -0
  149. package/lib/modules/action-bar/components/notification-bar/assets/dome.png +0 -0
  150. package/lib/modules/action-bar/components/notification-bar/assets/fcr_translateswitch.png +0 -0
  151. package/lib/modules/action-bar/components/notification-bar/components/interpreter/index.css +58 -0
  152. package/lib/modules/action-bar/components/notification-bar/components/interpreter/index.d.ts +8 -0
  153. package/lib/modules/action-bar/components/notification-bar/components/interpreter/index.js +100 -0
  154. package/lib/modules/action-bar/components/notification-bar/components/virtual-image/index.css +56 -0
  155. package/lib/modules/action-bar/components/notification-bar/components/virtual-image/index.d.ts +5 -0
  156. package/lib/modules/action-bar/components/notification-bar/components/virtual-image/index.js +33 -0
  157. package/lib/modules/action-bar/components/notification-bar/index.css +74 -0
  158. package/lib/modules/action-bar/components/notification-bar/index.d.ts +2 -0
  159. package/lib/modules/action-bar/components/notification-bar/index.js +99 -0
  160. package/lib/modules/action-bar/components/participants/index.css +21 -0
  161. package/lib/modules/action-bar/components/participants/index.d.ts +5 -0
  162. package/lib/modules/action-bar/components/participants/index.js +83 -0
  163. package/lib/modules/action-bar/components/placement/index.d.ts +4 -0
  164. package/lib/modules/action-bar/components/placement/index.js +18 -0
  165. package/lib/modules/action-bar/components/record/index.css +39 -0
  166. package/lib/modules/action-bar/components/record/index.d.ts +5 -0
  167. package/lib/modules/action-bar/components/record/index.js +166 -0
  168. package/lib/modules/action-bar/components/record/stop-record-dialog.d.ts +3 -0
  169. package/lib/modules/action-bar/components/record/stop-record-dialog.js +48 -0
  170. package/lib/modules/action-bar/components/respond/index.d.ts +4 -0
  171. package/lib/modules/action-bar/components/respond/index.js +32 -0
  172. package/lib/modules/action-bar/components/screen-share/index.d.ts +4 -0
  173. package/lib/modules/action-bar/components/screen-share/index.js +106 -0
  174. package/lib/modules/action-bar/components/screen-share/submenu.d.ts +1 -0
  175. package/lib/modules/action-bar/components/screen-share/submenu.js +177 -0
  176. package/lib/modules/action-bar/components/security/index.d.ts +4 -0
  177. package/lib/modules/action-bar/components/security/index.js +60 -0
  178. package/lib/modules/action-bar/components/settings/index.d.ts +4 -0
  179. package/lib/modules/action-bar/components/settings/index.js +42 -0
  180. package/lib/modules/action-bar/components/smaller/index.d.ts +1 -0
  181. package/lib/modules/action-bar/components/smaller/index.js +52 -0
  182. package/lib/modules/action-bar/components/trigger-input-language-room/fcr_translateswitch.png +0 -0
  183. package/lib/modules/action-bar/components/trigger-input-language-room/index.css +86 -0
  184. package/lib/modules/action-bar/components/trigger-input-language-room/index.d.ts +3 -0
  185. package/lib/modules/action-bar/components/trigger-input-language-room/index.js +215 -0
  186. package/lib/modules/action-bar/components/trigger-output-language/fcr_translateswitch.png +0 -0
  187. package/lib/modules/action-bar/components/trigger-output-language/index.css +86 -0
  188. package/lib/modules/action-bar/components/trigger-output-language/index.d.ts +2 -0
  189. package/lib/modules/action-bar/components/trigger-output-language/index.js +230 -0
  190. package/lib/modules/action-bar/components/trigger-output-language-room/constant.d.ts +10 -0
  191. package/lib/modules/action-bar/components/trigger-output-language-room/constant.js +8 -0
  192. package/lib/modules/action-bar/components/trigger-output-language-room/guide-tooltip/index.css +22 -0
  193. package/lib/modules/action-bar/components/trigger-output-language-room/guide-tooltip/index.d.ts +3 -0
  194. package/lib/modules/action-bar/components/trigger-output-language-room/guide-tooltip/index.js +75 -0
  195. package/lib/modules/action-bar/components/trigger-output-language-room/index.d.ts +8 -0
  196. package/lib/modules/action-bar/components/trigger-output-language-room/index.js +98 -0
  197. package/lib/modules/action-bar/components/trigger-output-language-room/trigger-language-room.d.ts +5 -0
  198. package/lib/modules/action-bar/components/trigger-output-language-room/trigger-language-room.js +66 -0
  199. package/lib/modules/action-bar/components/trigger-output-language-room/trigger-main-room.d.ts +5 -0
  200. package/lib/modules/action-bar/components/trigger-output-language-room/trigger-main-room.js +37 -0
  201. package/lib/modules/action-bar/components/trigger-output-language-room/useChangeOutputRoomTool.d.ts +12 -0
  202. package/lib/modules/action-bar/components/trigger-output-language-room/useChangeOutputRoomTool.js +138 -0
  203. package/lib/modules/action-bar/components/trigger-subscribe-language/guide-tooltip/index.css +22 -0
  204. package/lib/modules/action-bar/components/trigger-subscribe-language/guide-tooltip/index.d.ts +3 -0
  205. package/lib/modules/action-bar/components/trigger-subscribe-language/guide-tooltip/index.js +70 -0
  206. package/lib/modules/action-bar/components/trigger-subscribe-language/index.d.ts +5 -0
  207. package/lib/modules/action-bar/components/trigger-subscribe-language/index.js +209 -0
  208. package/lib/modules/action-bar/device/index.css +2 -7
  209. package/lib/modules/action-bar/device/index.js +24 -22
  210. package/lib/modules/action-bar/enums.d.ts +23 -0
  211. package/lib/modules/action-bar/enums.js +35 -0
  212. package/lib/modules/action-bar/index.css +23 -1
  213. package/lib/modules/action-bar/index.d.ts +36 -26
  214. package/lib/modules/action-bar/index.dev.d.ts +0 -1
  215. package/lib/modules/action-bar/index.dev.js +94 -100
  216. package/lib/modules/action-bar/index.js +46 -18
  217. package/lib/modules/action-bar/leave/assign-host.d.ts +0 -3
  218. package/lib/modules/action-bar/leave/assign-host.js +4 -2
  219. package/lib/modules/action-bar/leave/index.css +0 -10
  220. package/lib/modules/action-bar/leave/index.js +34 -84
  221. package/lib/modules/action-bar/leave/leave-meeting.d.ts +1 -13
  222. package/lib/modules/action-bar/leave/leave-meeting.js +19 -37
  223. package/lib/modules/action-bar/live-streaming/index.js +3 -3
  224. package/lib/modules/action-bar/more/index.js +6 -9
  225. package/lib/modules/action-bar/more/poppover-content.js +16 -37
  226. package/lib/modules/action-bar/notification-bar/components/interpreter/index.css +58 -0
  227. package/lib/modules/action-bar/notification-bar/components/interpreter/index.d.ts +8 -0
  228. package/lib/modules/action-bar/notification-bar/components/interpreter/index.js +100 -0
  229. package/lib/modules/action-bar/notification-bar/components/virtual-image/index.css +56 -0
  230. package/lib/modules/action-bar/notification-bar/components/virtual-image/index.d.ts +5 -0
  231. package/lib/modules/action-bar/notification-bar/components/virtual-image/index.js +33 -0
  232. package/lib/modules/action-bar/notification-bar/dome.png +0 -0
  233. package/lib/modules/action-bar/notification-bar/fcr_translateswitch.png +0 -0
  234. package/lib/modules/action-bar/notification-bar/index.css +74 -0
  235. package/lib/modules/action-bar/notification-bar/index.d.ts +2 -0
  236. package/lib/modules/action-bar/notification-bar/index.js +99 -0
  237. package/lib/modules/action-bar/participants/index.css +0 -12
  238. package/lib/modules/action-bar/participants/index.js +16 -23
  239. package/lib/modules/action-bar/record/index.js +4 -4
  240. package/lib/modules/action-bar/screen-share/index.js +5 -9
  241. package/lib/modules/action-bar/screen-share/submenu.js +26 -20
  242. package/lib/modules/action-bar/security/drop-menu.js +22 -137
  243. package/lib/modules/action-bar/security/index.js +6 -11
  244. package/lib/modules/action-bar/settings/index.js +4 -4
  245. package/lib/modules/action-bar/smaller.js +4 -4
  246. package/lib/modules/action-bar/store.d.ts +84 -99
  247. package/lib/modules/action-bar/store.js +545 -699
  248. package/lib/modules/action-bar/trigger-input-language-room/fcr_translateswitch.png +0 -0
  249. package/lib/modules/action-bar/trigger-input-language-room/index.css +86 -0
  250. package/lib/modules/action-bar/trigger-input-language-room/index.d.ts +15 -0
  251. package/lib/modules/action-bar/trigger-input-language-room/index.js +220 -0
  252. package/lib/modules/action-bar/trigger-output-language-room/constant.d.ts +10 -0
  253. package/lib/modules/action-bar/trigger-output-language-room/constant.js +8 -0
  254. package/lib/modules/action-bar/trigger-output-language-room/guide-tooltip/index.css +22 -0
  255. package/lib/modules/action-bar/trigger-output-language-room/guide-tooltip/index.d.ts +14 -0
  256. package/lib/modules/action-bar/trigger-output-language-room/guide-tooltip/index.js +75 -0
  257. package/lib/modules/action-bar/trigger-output-language-room/index.d.ts +4 -0
  258. package/lib/modules/action-bar/trigger-output-language-room/index.js +98 -0
  259. package/lib/modules/action-bar/trigger-output-language-room/trigger-language-room.d.ts +5 -0
  260. package/lib/modules/action-bar/trigger-output-language-room/trigger-language-room.js +66 -0
  261. package/lib/modules/action-bar/trigger-output-language-room/trigger-main-room.d.ts +5 -0
  262. package/lib/modules/action-bar/trigger-output-language-room/trigger-main-room.js +36 -0
  263. package/lib/modules/action-bar/trigger-output-language-room/useChangeOutputRoomTool.d.ts +12 -0
  264. package/lib/modules/action-bar/trigger-output-language-room/useChangeOutputRoomTool.js +138 -0
  265. package/lib/modules/action-bar/types.d.ts +94 -0
  266. package/lib/modules/action-bar/types.js +6 -0
  267. package/lib/modules/action-bar/view.d.ts +1 -2
  268. package/lib/modules/action-bar/view.js +14 -14
  269. package/lib/modules/audio-stream/index.d.ts +22 -23
  270. package/lib/modules/audio-stream/index.js +79 -85
  271. package/lib/modules/chat/chat-bar/index.css +0 -1
  272. package/lib/modules/chat/chat-bar/index.d.ts +3 -3
  273. package/lib/modules/chat/chat-bar/index.js +37 -47
  274. package/lib/modules/chat/chat-room-store.d.ts +135 -0
  275. package/lib/modules/chat/chat-room-store.js +954 -0
  276. package/lib/modules/chat/chat-select/index.css +4 -21
  277. package/lib/modules/chat/chat-select/index.d.ts +1 -1
  278. package/lib/modules/chat/chat-select/index.js +4 -18
  279. package/lib/modules/chat/chat.d.ts +2 -1
  280. package/lib/modules/chat/chat.js +127 -194
  281. package/lib/modules/chat/components/chat-action/index.d.ts +1 -0
  282. package/lib/modules/chat/components/chat-action/index.js +28 -0
  283. package/lib/modules/chat/components/chat-bar/index.css +85 -0
  284. package/lib/modules/chat/components/chat-bar/index.d.ts +3 -0
  285. package/lib/modules/chat/components/chat-bar/index.js +145 -0
  286. package/lib/modules/chat/components/chat-select/index.css +185 -0
  287. package/lib/modules/chat/components/chat-select/index.d.ts +3 -0
  288. package/lib/modules/chat/components/chat-select/index.js +237 -0
  289. package/lib/modules/chat/components/message-list/index.d.ts +4 -0
  290. package/lib/modules/chat/components/message-list/index.js +650 -0
  291. package/lib/modules/chat/index.css +10 -0
  292. package/lib/modules/chat/index.d.ts +13 -15
  293. package/lib/modules/chat/index.dev.d.ts +0 -1
  294. package/lib/modules/chat/index.dev.js +72 -62
  295. package/lib/modules/chat/index.js +48 -38
  296. package/lib/modules/chat/message-list.js +51 -67
  297. package/lib/modules/chat/mock.d.ts +1 -1
  298. package/lib/modules/chat/store.d.ts +17 -162
  299. package/lib/modules/chat/store.js +95 -963
  300. package/lib/modules/chat/types.d.ts +70 -0
  301. package/lib/modules/chat/types.js +17 -0
  302. package/lib/modules/chat/view.d.ts +10 -0
  303. package/lib/modules/chat/view.js +372 -0
  304. package/lib/modules/components/device-control/components/audio-menu/index.js +6 -6
  305. package/lib/modules/components/device-control/components/microphone/index.js +7 -7
  306. package/lib/modules/components/device-control/index.css +3 -0
  307. package/lib/modules/components/device-control/store.d.ts +11 -12
  308. package/lib/modules/components/device-control/store.js +46 -49
  309. package/lib/modules/components/dialog-container/component/body.d.ts +7 -0
  310. package/lib/modules/components/dialog-container/component/body.js +47 -0
  311. package/lib/modules/components/dialog-container/index.css +78 -0
  312. package/lib/modules/components/dialog-container/index.d.ts +11 -0
  313. package/lib/modules/components/dialog-container/index.js +110 -0
  314. package/lib/modules/components/leave-meeting/components/assign-host.d.ts +3 -0
  315. package/lib/modules/components/leave-meeting/components/assign-host.js +70 -0
  316. package/lib/modules/components/leave-meeting/components/index.css +125 -0
  317. package/lib/modules/components/leave-meeting/index.d.ts +4 -0
  318. package/lib/modules/components/leave-meeting/index.js +147 -0
  319. package/lib/modules/components/leave-meeting/store.d.ts +31 -0
  320. package/lib/modules/components/leave-meeting/store.js +292 -0
  321. package/lib/modules/components/member-window/index.css +419 -0
  322. package/lib/modules/components/member-window/index.d.ts +76 -0
  323. package/lib/modules/components/member-window/index.js +894 -0
  324. package/lib/modules/components/security-menu/index.css +9 -0
  325. package/lib/modules/components/security-menu/index.d.ts +2 -0
  326. package/lib/modules/components/security-menu/index.js +108 -58
  327. package/lib/modules/components/tab-frame/index.css +40 -0
  328. package/lib/modules/components/tab-frame/index.d.ts +12 -0
  329. package/lib/modules/components/tab-frame/index.js +78 -0
  330. package/lib/modules/connection-gateway/components/computer/index.css +1 -0
  331. package/lib/modules/connection-gateway/components/computer/index.js +4 -4
  332. package/lib/modules/connection-gateway/components/phone/components/callinfo/index.d.ts +1 -1
  333. package/lib/modules/connection-gateway/components/phone/index.css +1 -1
  334. package/lib/modules/connection-gateway/components/phone/index.js +2 -2
  335. package/lib/modules/connection-gateway/components/tabs/index.js +1 -2
  336. package/lib/modules/connection-gateway/enums.d.ts +4 -0
  337. package/lib/modules/connection-gateway/enums.js +12 -0
  338. package/lib/modules/connection-gateway/index.d.ts +13 -11
  339. package/lib/modules/connection-gateway/index.js +25 -15
  340. package/lib/modules/connection-gateway/store.d.ts +19 -23
  341. package/lib/modules/connection-gateway/store.js +61 -53
  342. package/lib/modules/connection-gateway/types.d.ts +4 -0
  343. package/lib/modules/connection-gateway/types.js +6 -0
  344. package/lib/modules/connection-gateway/view.js +21 -4
  345. package/lib/modules/control-bar/components/cloud-recording-buttons.js +1 -1
  346. package/lib/modules/control-bar/components/meeting-details/index.js +30 -25
  347. package/lib/modules/control-bar/components/more-actions/index.css +18 -0
  348. package/lib/modules/control-bar/components/more-actions/index.d.ts +1 -5
  349. package/lib/modules/control-bar/components/more-actions/index.js +58 -9
  350. package/lib/modules/control-bar/components/share-state-nav/index.d.ts +1 -7
  351. package/lib/modules/control-bar/components/share-state-nav/index.js +2 -1
  352. package/lib/modules/control-bar/components/stop-live-streaming/stop-button.d.ts +1 -1
  353. package/lib/modules/control-bar/components/stop-live-streaming/stop-button.js +2 -2
  354. package/lib/modules/control-bar/components/transfer-position-icon/index.d.ts +1 -10
  355. package/lib/modules/control-bar/components/transfer-position-icon/index.js +7 -12
  356. package/lib/modules/control-bar/enums.d.ts +21 -0
  357. package/lib/modules/control-bar/enums.js +31 -0
  358. package/lib/modules/control-bar/index.d.ts +30 -21
  359. package/lib/modules/control-bar/index.js +46 -36
  360. package/lib/modules/control-bar/store.d.ts +36 -37
  361. package/lib/modules/control-bar/store.js +188 -280
  362. package/lib/modules/control-bar/types.d.ts +20 -0
  363. package/lib/modules/control-bar/types.js +6 -0
  364. package/lib/modules/control-bar/view.js +83 -42
  365. package/lib/modules/device-pretest/index.js +4 -4
  366. package/lib/modules/device-pretest/settings/video-settings-basic.js +1 -1
  367. package/lib/modules/device-pretest/settings/virtual-background-setting.js +1 -1
  368. package/lib/modules/device-pretest/store.d.ts +8 -9
  369. package/lib/modules/device-pretest/store.js +52 -36
  370. package/lib/modules/dialog/components/Interpreter/electron.js +22 -38
  371. package/lib/modules/dialog/components/Interpreter/index.js +14 -43
  372. package/lib/modules/dialog/components/chat/electron.d.ts +1 -1
  373. package/lib/modules/dialog/components/chat/electron.js +21 -19
  374. package/lib/modules/dialog/components/chat/index.d.ts +1 -4
  375. package/lib/modules/dialog/components/chat/index.js +35 -41
  376. package/lib/modules/dialog/components/confirm/electron.d.ts +1 -1
  377. package/lib/modules/dialog/components/confirm/electron.js +68 -38
  378. package/lib/modules/dialog/components/confirm/index.js +7 -8
  379. package/lib/modules/dialog/components/connection-gateway/electron.d.ts +1 -1
  380. package/lib/modules/dialog/components/connection-gateway/electron.js +13 -34
  381. package/lib/modules/dialog/components/connection-gateway/index.css +2 -0
  382. package/lib/modules/dialog/components/connection-gateway/index.d.ts +3 -2
  383. package/lib/modules/dialog/components/connection-gateway/index.js +26 -58
  384. package/lib/modules/dialog/components/connection-gateway/tabs.d.ts +6 -0
  385. package/lib/modules/dialog/components/connection-gateway/tabs.js +44 -0
  386. package/lib/modules/dialog/components/control-bar/index.d.ts +5 -1
  387. package/lib/modules/dialog/components/control-bar/index.js +123 -11
  388. package/lib/modules/dialog/components/device-setting/electron.js +7 -25
  389. package/lib/modules/dialog/components/device-setting/index.js +13 -41
  390. package/lib/modules/dialog/components/dialog-container/component/body.d.ts +7 -0
  391. package/lib/modules/dialog/components/dialog-container/component/body.js +77 -0
  392. package/lib/modules/dialog/components/dialog-container/index.css +81 -0
  393. package/lib/modules/dialog/components/dialog-container/index.d.ts +16 -0
  394. package/lib/modules/dialog/components/dialog-container/index.js +112 -0
  395. package/lib/modules/dialog/components/invite/index.js +44 -38
  396. package/lib/modules/dialog/components/live-streaming/index.js +23 -54
  397. package/lib/modules/dialog/components/participant/electron.js +12 -19
  398. package/lib/modules/dialog/components/participant/index.js +37 -27
  399. package/lib/modules/dialog/components/remove-admit-waiting-room/electron.js +3 -6
  400. package/lib/modules/dialog/components/remove-admit-waiting-room/index.d.ts +1 -1
  401. package/lib/modules/dialog/components/remove-admit-waiting-room/index.js +4 -14
  402. package/lib/modules/dialog/components/share-screen-selection/index.js +26 -7
  403. package/lib/modules/dialog/components/system-preference/electron.js +6 -9
  404. package/lib/modules/dialog/components/system-preference/index.js +4 -15
  405. package/lib/modules/dialog/components/toast/index.js +9 -13
  406. package/lib/modules/dialog/components/video-window/index.d.ts +2 -0
  407. package/lib/modules/dialog/components/video-window/index.js +148 -0
  408. package/lib/modules/dialog/components/whiteboard/index.js +2 -2
  409. package/lib/modules/dialog/dialogs.d.ts +2 -5
  410. package/lib/modules/dialog/dialogs.js +2 -156
  411. package/lib/modules/dialog/hooks/useElectron.d.ts +4 -20
  412. package/lib/modules/dialog/hooks/useElectron.js +127 -29
  413. package/lib/modules/dialog/index.css +0 -2
  414. package/lib/modules/dialog/index.d.ts +28 -17
  415. package/lib/modules/dialog/index.js +62 -6
  416. package/lib/modules/dialog/store.d.ts +43 -41
  417. package/lib/modules/dialog/store.js +158 -201
  418. package/lib/modules/dialog/types/index.d.ts +70 -0
  419. package/lib/modules/event-confirm/index.css +1 -1
  420. package/lib/modules/event-confirm/index.d.ts +13 -6
  421. package/lib/modules/event-confirm/index.js +28 -11
  422. package/lib/modules/event-confirm/store.d.ts +9 -3
  423. package/lib/modules/event-confirm/store.js +16 -7
  424. package/lib/modules/event-confirm/view.js +9 -2
  425. package/lib/modules/event-toast/index.d.ts +7 -6
  426. package/lib/modules/event-toast/index.js +19 -8
  427. package/lib/modules/event-toast/store.d.ts +8 -3
  428. package/lib/modules/event-toast/store.js +15 -6
  429. package/lib/modules/invite/components/error-tips.d.ts +4 -0
  430. package/lib/modules/invite/components/error-tips.js +18 -0
  431. package/lib/modules/invite/components/pstn-invite.d.ts +2 -0
  432. package/lib/modules/invite/components/pstn-invite.js +297 -0
  433. package/lib/modules/invite/components/voip-invite.d.ts +1 -0
  434. package/lib/modules/invite/components/voip-invite.js +276 -0
  435. package/lib/modules/invite/enums.d.ts +22 -0
  436. package/lib/modules/invite/enums.js +33 -0
  437. package/lib/modules/invite/index.d.ts +7 -8
  438. package/lib/modules/invite/index.js +17 -15
  439. package/lib/modules/invite/pstn-invite.js +9 -7
  440. package/lib/modules/invite/store.d.ts +11 -26
  441. package/lib/modules/invite/store.js +55 -25
  442. package/lib/modules/invite/types.d.ts +14 -0
  443. package/lib/modules/invite/types.js +6 -0
  444. package/lib/modules/invite/view.js +19 -27
  445. package/lib/modules/invite/voip-invite.js +3 -2
  446. package/lib/modules/layout/components/Aside.js +45 -18
  447. package/lib/modules/layout/components/Carousel.js +2 -2
  448. package/lib/modules/layout/components/Gallery.js +1 -1
  449. package/lib/modules/layout/components/Layout.js +7 -4
  450. package/lib/modules/layout/components/index.css +6 -1
  451. package/lib/modules/layout/components/index.d.ts +1 -1
  452. package/lib/modules/layout/components/index.js +4 -4
  453. package/lib/modules/layout/components/who-is-speaking.d.ts +2 -0
  454. package/lib/modules/layout/components/who-is-speaking.js +60 -0
  455. package/lib/modules/layout/index.d.ts +26 -4
  456. package/lib/modules/layout/index.dev.d.ts +0 -1
  457. package/lib/modules/layout/index.dev.js +312 -386
  458. package/lib/modules/layout/index.js +33 -17
  459. package/lib/modules/layout/member-window/index.css +10 -95
  460. package/lib/modules/layout/member-window/index.d.ts +3 -10
  461. package/lib/modules/layout/member-window/index.js +115 -214
  462. package/lib/modules/layout/store.d.ts +61 -71
  463. package/lib/modules/layout/store.js +311 -579
  464. package/lib/modules/layout/video-window-datasource.js +11 -3
  465. package/lib/modules/layout/view.d.ts +2 -0
  466. package/lib/modules/layout/view.js +127 -2
  467. package/lib/modules/live-streaming/index.d.ts +15 -7
  468. package/lib/modules/live-streaming/index.dev.js +13 -13
  469. package/lib/modules/live-streaming/index.js +20 -15
  470. package/lib/modules/live-streaming/store.d.ts +21 -14
  471. package/lib/modules/live-streaming/store.js +84 -144
  472. package/lib/modules/live-streaming/view.js +2 -2
  473. package/lib/modules/notification/index.css +1 -0
  474. package/lib/modules/notification/index.d.ts +9 -11
  475. package/lib/modules/notification/index.js +21 -14
  476. package/lib/modules/notification/interpreter-status/index.js +1 -2
  477. package/lib/modules/notification/store.d.ts +5 -11
  478. package/lib/modules/notification/store.js +12 -62
  479. package/lib/modules/notification/view.d.ts +5 -3
  480. package/lib/modules/notification/view.js +8 -5
  481. package/lib/modules/offscreen-pulling/index.js +1 -1
  482. package/lib/modules/participant/attendee/index.css +52 -0
  483. package/lib/modules/participant/attendee/index.d.ts +5 -8
  484. package/lib/modules/participant/attendee/index.js +17 -62
  485. package/lib/modules/participant/components/attendee/components/microphone-indicator/index.d.ts +6 -0
  486. package/lib/modules/participant/components/attendee/components/microphone-indicator/index.js +28 -0
  487. package/lib/modules/participant/components/attendee/components/user-avatar/index.d.ts +7 -0
  488. package/lib/modules/participant/components/attendee/components/user-avatar/index.js +39 -0
  489. package/lib/modules/participant/components/attendee/index.css +69 -0
  490. package/lib/modules/participant/components/attendee/index.d.ts +4 -0
  491. package/lib/modules/participant/components/attendee/index.js +337 -0
  492. package/lib/modules/participant/components/can-moveable/index.d.ts +1 -0
  493. package/lib/modules/participant/components/can-moveable/index.js +68 -0
  494. package/lib/modules/participant/components/drop-menu/index.css +1 -0
  495. package/lib/modules/participant/components/drop-menu/index.js +17 -17
  496. package/lib/modules/participant/components/footer/buttons.d.ts +2 -3
  497. package/lib/modules/participant/components/footer/buttons.js +2 -3
  498. package/lib/modules/participant/components/footer/index.js +2 -2
  499. package/lib/modules/participant/components/mute-all/index.d.ts +3 -4
  500. package/lib/modules/participant/components/mute-all/index.js +31 -44
  501. package/lib/modules/participant/components/operate-waitingroom-member/index.d.ts +2 -0
  502. package/lib/modules/participant/components/operate-waitingroom-member/index.js +48 -0
  503. package/lib/modules/participant/components/participants/index.js +27 -50
  504. package/lib/modules/participant/components/user-action/index.d.ts +17 -0
  505. package/lib/modules/participant/components/user-action/index.js +169 -0
  506. package/lib/modules/participant/index.css +5 -0
  507. package/lib/modules/participant/index.d.ts +34 -22
  508. package/lib/modules/participant/index.dev.d.ts +0 -1
  509. package/lib/modules/participant/index.dev.js +87 -105
  510. package/lib/modules/participant/index.js +39 -13
  511. package/lib/modules/participant/member-list-data-source.d.ts +4 -1
  512. package/lib/modules/participant/member-list-data-source.js +58 -31
  513. package/lib/modules/participant/room-control-drop-menu/index.css +0 -37
  514. package/lib/modules/participant/store.d.ts +59 -39
  515. package/lib/modules/participant/store.js +330 -307
  516. package/lib/modules/participant/type.d.ts +45 -1
  517. package/lib/modules/participant/type.js +15 -1
  518. package/lib/modules/pc-audio-connect/index.css +12 -0
  519. package/lib/modules/pc-audio-connect/index.d.ts +22 -0
  520. package/lib/modules/pc-audio-connect/index.js +68 -0
  521. package/lib/modules/pc-audio-connect/store.d.ts +46 -0
  522. package/lib/modules/pc-audio-connect/store.js +301 -0
  523. package/lib/modules/pc-audio-connect/types.d.ts +0 -0
  524. package/lib/modules/pc-audio-connect/types.js +1 -0
  525. package/lib/modules/pc-audio-connect/view.d.ts +3 -0
  526. package/lib/modules/pc-audio-connect/view.js +66 -0
  527. package/lib/modules/phone-audio-connect/components/callinfo/index.css +36 -0
  528. package/lib/modules/phone-audio-connect/components/callinfo/index.d.ts +10 -0
  529. package/lib/modules/phone-audio-connect/components/callinfo/index.js +77 -0
  530. package/lib/modules/phone-audio-connect/components/calling/index.css +72 -0
  531. package/lib/modules/phone-audio-connect/components/calling/index.d.ts +7 -0
  532. package/lib/modules/phone-audio-connect/components/calling/index.js +58 -0
  533. package/lib/modules/phone-audio-connect/components/remeber/index.css +10 -0
  534. package/lib/modules/phone-audio-connect/components/remeber/index.d.ts +5 -0
  535. package/lib/modules/phone-audio-connect/components/remeber/index.js +24 -0
  536. package/lib/modules/phone-audio-connect/components/useing/index.css +46 -0
  537. package/lib/modules/phone-audio-connect/components/useing/index.d.ts +3 -0
  538. package/lib/modules/phone-audio-connect/components/useing/index.js +36 -0
  539. package/lib/modules/phone-audio-connect/enums.d.ts +4 -0
  540. package/lib/modules/phone-audio-connect/enums.js +12 -0
  541. package/lib/modules/phone-audio-connect/index.css +56 -0
  542. package/lib/modules/phone-audio-connect/index.d.ts +16 -0
  543. package/lib/modules/phone-audio-connect/index.js +63 -0
  544. package/lib/modules/phone-audio-connect/store.d.ts +46 -0
  545. package/lib/modules/phone-audio-connect/store.js +320 -0
  546. package/lib/modules/phone-audio-connect/types.d.ts +4 -0
  547. package/lib/modules/phone-audio-connect/types.js +6 -0
  548. package/lib/modules/phone-audio-connect/view.d.ts +3 -0
  549. package/lib/modules/phone-audio-connect/view.js +184 -0
  550. package/lib/modules/setting/audio-settings/audio-settings.js +18 -15
  551. package/lib/modules/setting/audio-settings/index.css +26 -1
  552. package/lib/modules/setting/general-settings/index.css +1 -1
  553. package/lib/modules/setting/index.css +2 -1
  554. package/lib/modules/setting/index.d.ts +25 -18
  555. package/lib/modules/setting/index.dev.d.ts +0 -1
  556. package/lib/modules/setting/index.dev.js +120 -72
  557. package/lib/modules/setting/index.js +35 -9
  558. package/lib/modules/setting/minutes-settings/minutes-settings.js +1 -1
  559. package/lib/modules/setting/state/index.js +3 -3
  560. package/lib/modules/setting/store.d.ts +45 -24
  561. package/lib/modules/setting/store.js +143 -124
  562. package/lib/modules/setting/translate-settings/index.css +3 -1
  563. package/lib/modules/setting/translate-settings/translate-settings.js +3 -3
  564. package/lib/modules/setting/video-settings/index.css +5 -2
  565. package/lib/modules/setting/video-settings/video-settings-basic.js +19 -22
  566. package/lib/modules/setting/view.js +6 -35
  567. package/lib/modules/share-screen/components/selection/index.css +70 -0
  568. package/lib/modules/share-screen/components/selection/index.d.ts +2 -0
  569. package/lib/modules/share-screen/components/selection/index.js +267 -0
  570. package/lib/modules/share-screen/components/share-state-bar/index.css +76 -0
  571. package/lib/modules/share-screen/components/share-state-bar/index.d.ts +4 -0
  572. package/lib/modules/share-screen/components/share-state-bar/index.js +98 -0
  573. package/lib/modules/share-screen/index.d.ts +15 -18
  574. package/lib/modules/share-screen/index.dev.d.ts +0 -1
  575. package/lib/modules/share-screen/index.dev.js +90 -90
  576. package/lib/modules/share-screen/index.js +22 -22
  577. package/lib/modules/share-screen/selection/index.css +0 -2
  578. package/lib/modules/share-screen/selection/index.js +40 -51
  579. package/lib/modules/share-screen/share-state-bar/index.js +1 -1
  580. package/lib/modules/share-screen/store.d.ts +36 -32
  581. package/lib/modules/share-screen/store.js +264 -253
  582. package/lib/modules/share-screen/types.d.ts +27 -0
  583. package/lib/modules/share-screen/types.js +6 -0
  584. package/lib/modules/share-screen/view.js +1 -1
  585. package/lib/modules/sound-effect/index.d.ts +9 -15
  586. package/lib/modules/sound-effect/index.js +72 -41
  587. package/lib/modules/sound-effect/sound-effect-player.js +1 -1
  588. package/lib/modules/state-bar/index.css +13 -2
  589. package/lib/modules/state-bar/index.d.ts +16 -17
  590. package/lib/modules/state-bar/index.dev.d.ts +0 -1
  591. package/lib/modules/state-bar/index.dev.js +78 -83
  592. package/lib/modules/state-bar/index.js +23 -34
  593. package/lib/modules/state-bar/layout-config.js +1 -1
  594. package/lib/modules/state-bar/meeting-details.js +24 -12
  595. package/lib/modules/state-bar/meeting-network-state.css +1 -1
  596. package/lib/modules/state-bar/meeting-network-state.js +1 -1
  597. package/lib/modules/state-bar/recording.js +7 -4
  598. package/lib/modules/state-bar/store.d.ts +20 -10
  599. package/lib/modules/state-bar/store.js +84 -87
  600. package/lib/modules/state-bar/view.js +3 -3
  601. package/lib/modules/video-window/deviceState/index.d.ts +2 -2
  602. package/lib/modules/video-window/deviceState/index.js +4 -6
  603. package/lib/modules/video-window/index.css +1 -4
  604. package/lib/modules/video-window/index.d.ts +33 -6
  605. package/lib/modules/video-window/index.js +63 -15
  606. package/lib/modules/video-window/members/index.css +1 -0
  607. package/lib/modules/video-window/members/index.js +25 -11
  608. package/lib/modules/video-window/store.d.ts +58 -26
  609. package/lib/modules/video-window/store.js +166 -161
  610. package/lib/modules/waiting-room-layout/index.css +1 -3
  611. package/lib/modules/waiting-room-layout/index.d.ts +14 -5
  612. package/lib/modules/waiting-room-layout/index.js +34 -14
  613. package/lib/modules/waiting-room-layout/store.d.ts +6 -3
  614. package/lib/modules/waiting-room-layout/store.js +17 -15
  615. package/lib/modules/whiteboard/components/control-bar/store.d.ts +4 -4
  616. package/lib/modules/whiteboard/components/control-bar/store.js +8 -8
  617. package/lib/modules/whiteboard/index.d.ts +20 -25
  618. package/lib/modules/whiteboard/index.js +250 -224
  619. package/lib/modules/whiteboard/view.d.ts +2 -0
  620. package/lib/modules/whiteboard/view.js +49 -0
  621. package/lib/plugins/browser-runtime-plugin.js +5 -1
  622. package/lib/providers/chat-provider.d.ts +71 -0
  623. package/lib/providers/chat-provider.js +91 -0
  624. package/lib/providers/device-privilege-provider.d.ts +76 -0
  625. package/lib/providers/device-privilege-provider.js +415 -0
  626. package/lib/providers/device-provider.d.ts +404 -0
  627. package/lib/providers/device-provider.js +1829 -0
  628. package/lib/providers/device-stream-provider.d.ts +35 -0
  629. package/lib/providers/device-stream-provider.js +353 -0
  630. package/lib/providers/dialog-provider.d.ts +135 -0
  631. package/lib/providers/dialog-provider.js +204 -0
  632. package/lib/providers/event-provider.d.ts +88 -0
  633. package/lib/providers/event-provider.js +250 -0
  634. package/lib/providers/interpreter-provider.d.ts +236 -0
  635. package/lib/providers/interpreter-provider.js +1143 -0
  636. package/lib/providers/local-storage-provider.d.ts +17 -0
  637. package/lib/providers/local-storage-provider.js +31 -0
  638. package/lib/providers/message-provider.d.ts +69 -0
  639. package/lib/providers/message-provider.js +98 -0
  640. package/lib/providers/monitor-provider.d.ts +20 -0
  641. package/lib/providers/monitor-provider.js +29 -0
  642. package/lib/providers/phone-audio-provider.d.ts +131 -0
  643. package/lib/providers/phone-audio-provider.js +515 -0
  644. package/lib/providers/privilege-provider.d.ts +529 -0
  645. package/lib/providers/privilege-provider.js +782 -0
  646. package/lib/providers/renderer-provider.d.ts +85 -0
  647. package/lib/providers/renderer-provider.js +242 -0
  648. package/lib/providers/room-provider.d.ts +186 -0
  649. package/lib/providers/room-provider.js +1019 -0
  650. package/lib/providers/screen-share-provider.d.ts +65 -0
  651. package/lib/providers/screen-share-provider.js +238 -0
  652. package/lib/providers/session-provider.d.ts +56 -0
  653. package/lib/providers/session-provider.js +49 -0
  654. package/lib/runtime.d.ts +3 -1
  655. package/lib/scenes/base.d.ts +10 -0
  656. package/lib/scenes/base.js +75 -0
  657. package/lib/scenes/main-scene.d.ts +86 -0
  658. package/lib/scenes/main-scene.js +551 -0
  659. package/lib/scenes/waiting-scene.d.ts +61 -0
  660. package/lib/scenes/waiting-scene.js +236 -0
  661. package/lib/shared-data-source/chat-data.d.ts +14 -0
  662. package/lib/shared-data-source/chat-data.js +130 -0
  663. package/lib/shared-data-source/config.d.ts +16 -0
  664. package/lib/shared-data-source/config.js +21 -0
  665. package/lib/shared-data-source/device-privilege-data.d.ts +8 -0
  666. package/lib/shared-data-source/device-privilege-data.js +25 -0
  667. package/lib/shared-data-source/interpreter.d.ts +63 -0
  668. package/lib/shared-data-source/interpreter.js +248 -0
  669. package/lib/shared-data-source/layout-data.d.ts +29 -0
  670. package/lib/shared-data-source/layout-data.js +181 -0
  671. package/lib/shared-data-source/pin-data.d.ts +9 -0
  672. package/lib/shared-data-source/pin-data.js +24 -0
  673. package/lib/shared-data-source/setting.d.ts +32 -0
  674. package/lib/shared-data-source/setting.js +153 -0
  675. package/lib/shared-data-source/speaker-spotlight.d.ts +5 -0
  676. package/lib/shared-data-source/speaker-spotlight.js +15 -0
  677. package/lib/shared-data-source/video-window.d.ts +161 -0
  678. package/lib/shared-data-source/video-window.js +1202 -0
  679. package/lib/shared-data-source/waiting-room.d.ts +19 -0
  680. package/lib/shared-data-source/waiting-room.js +158 -0
  681. package/lib/translations/enUS.d.ts +43 -17
  682. package/lib/translations/enUS.js +59 -33
  683. package/lib/translations/zhCN.d.ts +43 -17
  684. package/lib/translations/zhCN.js +57 -31
  685. package/lib/type.d.ts +271 -1
  686. package/lib/type.js +67 -2
  687. package/lib/ui-manager.d.ts +20 -13
  688. package/lib/ui-manager.js +59 -874
  689. package/lib/ui-node.d.ts +25 -0
  690. package/lib/ui-node.js +156 -0
  691. package/lib/ui-scene.d.ts +6 -1
  692. package/lib/ui-scene.js +372 -42
  693. package/lib/utilities/constant.d.ts +63 -86
  694. package/lib/utilities/constant.js +151 -175
  695. package/lib/utilities/copyText.js +8 -7
  696. package/lib/utilities/extract.d.ts +1 -1
  697. package/lib/utilities/privilege.d.ts +4 -0
  698. package/lib/utilities/privilege.js +31 -0
  699. package/lib/utilities/setting-config-storage.d.ts +12 -0
  700. package/lib/utilities/setting-config-storage.js +102 -0
  701. package/lib/utilities/tools.d.ts +37 -3
  702. package/lib/utilities/tools.js +144 -10
  703. package/lib/utilities/video-track-render-context.d.ts +3 -4
  704. package/lib/utilities/video-track-render-context.js +1 -1
  705. package/package.json +12 -11
  706. package/public/assets/fcr_leave2.svg +58 -0
  707. package/public/assets/full-screen-error-boundary-img.png +0 -0
  708. package/public/assets/leave-meeting.png +0 -0
  709. package/public/index.html +160 -13
@@ -0,0 +1,954 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.symbol.description.js");
5
+ require("core-js/modules/es.symbol.to-primitive.js");
6
+ require("core-js/modules/es.error.cause.js");
7
+ require("core-js/modules/es.error.to-string.js");
8
+ require("core-js/modules/es.array.is-array.js");
9
+ require("core-js/modules/es.date.to-primitive.js");
10
+ require("core-js/modules/es.function.name.js");
11
+ require("core-js/modules/es.number.constructor.js");
12
+ require("core-js/modules/es.object.create.js");
13
+ require("core-js/modules/es.object.define-properties.js");
14
+ require("core-js/modules/es.object.define-property.js");
15
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
16
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
17
+ require("core-js/modules/es.object.keys.js");
18
+ require("core-js/modules/esnext.function.metadata.js");
19
+ require("core-js/modules/esnext.symbol.metadata.js");
20
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
21
+ var _typeof = require("@babel/runtime/helpers/typeof");
22
+ Object.defineProperty(exports, "__esModule", {
23
+ value: true
24
+ });
25
+ exports.ChatRoomStore = void 0;
26
+ var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
27
+ require("core-js/modules/es.array.filter.js");
28
+ require("core-js/modules/es.array.find.js");
29
+ require("core-js/modules/es.array.for-each.js");
30
+ require("core-js/modules/es.array.from.js");
31
+ require("core-js/modules/es.array.iterator.js");
32
+ require("core-js/modules/es.array.push.js");
33
+ require("core-js/modules/es.array.some.js");
34
+ require("core-js/modules/es.array.sort.js");
35
+ require("core-js/modules/es.array.splice.js");
36
+ require("core-js/modules/es.date.now.js");
37
+ require("core-js/modules/es.date.to-string.js");
38
+ require("core-js/modules/es.function.bind.js");
39
+ require("core-js/modules/es.map.js");
40
+ require("core-js/modules/es.object.entries.js");
41
+ require("core-js/modules/es.object.to-string.js");
42
+ require("core-js/modules/es.string.iterator.js");
43
+ require("core-js/modules/es.weak-map.js");
44
+ require("core-js/modules/esnext.async-iterator.filter.js");
45
+ require("core-js/modules/esnext.async-iterator.find.js");
46
+ require("core-js/modules/esnext.async-iterator.for-each.js");
47
+ require("core-js/modules/esnext.async-iterator.some.js");
48
+ require("core-js/modules/esnext.iterator.constructor.js");
49
+ require("core-js/modules/esnext.iterator.filter.js");
50
+ require("core-js/modules/esnext.iterator.find.js");
51
+ require("core-js/modules/esnext.iterator.for-each.js");
52
+ require("core-js/modules/esnext.iterator.some.js");
53
+ require("core-js/modules/esnext.map.delete-all.js");
54
+ require("core-js/modules/esnext.map.emplace.js");
55
+ require("core-js/modules/esnext.map.every.js");
56
+ require("core-js/modules/esnext.map.filter.js");
57
+ require("core-js/modules/esnext.map.find.js");
58
+ require("core-js/modules/esnext.map.find-key.js");
59
+ require("core-js/modules/esnext.map.includes.js");
60
+ require("core-js/modules/esnext.map.key-of.js");
61
+ require("core-js/modules/esnext.map.map-keys.js");
62
+ require("core-js/modules/esnext.map.map-values.js");
63
+ require("core-js/modules/esnext.map.merge.js");
64
+ require("core-js/modules/esnext.map.reduce.js");
65
+ require("core-js/modules/esnext.map.some.js");
66
+ require("core-js/modules/esnext.map.update.js");
67
+ require("core-js/modules/esnext.weak-map.delete-all.js");
68
+ require("core-js/modules/esnext.weak-map.emplace.js");
69
+ require("core-js/modules/web.dom-collections.for-each.js");
70
+ require("core-js/modules/web.dom-collections.iterator.js");
71
+ require("core-js/modules/web.timers.js");
72
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
73
+ var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
74
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
75
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
76
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
77
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
78
+ var _logger = require("agora-foundation/lib/logger");
79
+ var _reactVirtualized = require("react-virtualized");
80
+ var _fcrCore = require("fcr-core");
81
+ var _type = require("fcr-core/lib/room-control/chatroom-control/type");
82
+ var _imports = require("fcr-core/lib/imports");
83
+ var _types = require("./types");
84
+ var _mobx = require("mobx");
85
+ var _type2 = require("fcr-core/lib/room-control/type");
86
+ var _type3 = require("fcr-core/lib/type");
87
+ var _i18n = require("agora-ui-foundation/lib/i18n");
88
+ var _constant = require("../../utilities/constant");
89
+ var _helper = require("agora-ui-foundation/lib/components/avatar/helper");
90
+ var _ChatRoomStore;
91
+ var _initProto, _init__userInfo, _init_needRecomputeRowIdMap, _init_messageList, _init_readMsgIndex, _init_readIdx, _init_viewIdx, _init_historyUnreadCount, _init_hasHistoryMsg, _init_newMsgsUnReadCnt, _init_privateTargetUser, _init_chatLevel, _init_currentUserMap, _init_textMsg, _init_privateTargetList, _init_chatRoomState, _init_hasNewMsg, _init_userCount, _init_unReadMsgCount, _setLastScrollTopDecs, _setMessageListDecs, _sendMessageDecs, _setUnReadMsgCountDecs, _setHasNewMsgDecs, _handleTextMessageReceivedDecs, _getUserCountDecs, _onRemoteUserUpdateDecs, _refreshUserListDecs, _handleNewMsgDecs, _updateReadMsgIndexDecs, _initReadInfoDecs, _updateHistoryUnreadCntDecs, _updateHasHistoryMsgDecs, _updateScrollInfoDecs, _updateViewIdxDecs, _updateReadIdxDecs, _updateFirstMsgIdDecs, _updateHistoryUnReadCountDecs, _updateListDecs, _updateMostRecentHeightDecs, _updateMostRecentWidthDecs, _patchHandleMsgDecs, _forceNotifyMsgsDecs, _resetComponentCacheDecs, _resetTargetUserDecs, _initChatLevelDecs, _setTargetUserDecs, _updateChatLevelDecs, _updateChatTextMsgDecs, _filterChatMemberDecs, _hasSendMessagePermissionDecs, _permitPrivateChatDecs, _handleToastDecs, _handleConnectionUpdatedDecs, _initChatRoomConnectionStateDecs, _ref;
92
+ 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; }
93
+ 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; }
94
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
95
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
96
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
97
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
98
+ function _assertClassBrand(e, t, n) { if ("function" == typeof e ? e === t : e.has(t)) return arguments.length < 3 ? t : n; throw new TypeError("Private element is not present on this object"); }
99
+ function _applyDecs(e, t, r, n, o, a) { function i(e, t, r) { return function (n, o) { return r && r(n), e[t].call(n, o); }; } function c(e, t) { for (var r = 0; r < e.length; r++) e[r].call(t); return t; } function s(e, t, r, n) { if ("function" != typeof e && (n || void 0 !== e)) throw new TypeError(t + " must " + (r || "be") + " a function" + (n ? "" : " or undefined")); return e; } function applyDec(e, t, r, n, o, a, c, u, l, f, p, d, h) { function m(e) { if (!h(e)) throw new TypeError("Attempted to access private element on non-instance"); } var y, v = t[0], g = t[3], b = !u; if (!b) { r || Array.isArray(v) || (v = [v]); var w = {}, S = [], A = 3 === o ? "get" : 4 === o || d ? "set" : "value"; f ? (p || d ? w = { get: _setFunctionName(function () { return g(this); }, n, "get"), set: function set(e) { t[4](this, e); } } : w[A] = g, p || _setFunctionName(w[A], n, 2 === o ? "" : A)) : p || (w = Object.getOwnPropertyDescriptor(e, n)); } for (var P = e, j = v.length - 1; j >= 0; j -= r ? 2 : 1) { var D = v[j], E = r ? v[j - 1] : void 0, I = {}, O = { kind: ["field", "accessor", "method", "getter", "setter", "class"][o], name: n, metadata: a, addInitializer: function (e, t) { if (e.v) throw Error("attempted to call addInitializer after decoration was finished"); s(t, "An initializer", "be", !0), c.push(t); }.bind(null, I) }; try { if (b) (y = s(D.call(E, P, O), "class decorators", "return")) && (P = y);else { var k, F; O["static"] = l, O["private"] = f, f ? 2 === o ? k = function k(e) { return m(e), w.value; } : (o < 4 && (k = i(w, "get", m)), 3 !== o && (F = i(w, "set", m))) : (k = function k(e) { return e[n]; }, (o < 2 || 4 === o) && (F = function F(e, t) { e[n] = t; })); var N = O.access = { has: f ? h.bind() : function (e) { return n in e; } }; if (k && (N.get = k), F && (N.set = F), P = D.call(E, d ? { get: w.get, set: w.set } : w[A], O), d) { if ("object" == _typeof(P) && P) (y = s(P.get, "accessor.get")) && (w.get = y), (y = s(P.set, "accessor.set")) && (w.set = y), (y = s(P.init, "accessor.init")) && S.push(y);else if (void 0 !== P) throw new TypeError("accessor decorators must return an object with get, set, or init properties or void 0"); } else s(P, (p ? "field" : "method") + " decorators", "return") && (p ? S.push(P) : w[A] = P); } } finally { I.v = !0; } } return (p || d) && u.push(function (e, t) { for (var r = S.length - 1; r >= 0; r--) t = S[r].call(e, t); return t; }), p || b || (f ? d ? u.push(i(w, "get"), i(w, "set")) : u.push(2 === o ? w[A] : i.call.bind(w[A])) : Object.defineProperty(e, n, w)), P; } function u(e, t) { return Object.defineProperty(e, Symbol.metadata || Symbol["for"]("Symbol.metadata"), { configurable: !0, enumerable: !0, value: t }); } if (arguments.length >= 6) var l = a[Symbol.metadata || Symbol["for"]("Symbol.metadata")]; var f = Object.create(null == l ? null : l), p = function (e, t, r, n) { var o, a, i = [], s = function s(t) { return _checkInRHS(t) === e; }, u = new Map(); function l(e) { e && i.push(c.bind(null, e)); } for (var f = 0; f < t.length; f++) { var p = t[f]; if (Array.isArray(p)) { var d = p[1], h = p[2], m = p.length > 3, y = 16 & d, v = !!(8 & d), g = 0 == (d &= 7), b = h + "/" + v; if (!g && !m) { var w = u.get(b); if (!0 === w || 3 === w && 4 !== d || 4 === w && 3 !== d) throw Error("Attempted to decorate a public method/accessor that has the same name as a previously decorated public method/accessor. This is not currently supported by the decorators plugin. Property name was: " + h); u.set(b, !(d > 2) || d); } applyDec(v ? e : e.prototype, p, y, m ? "#" + h : _toPropertyKey(h), d, n, v ? a = a || [] : o = o || [], i, v, m, g, 1 === d, v && m ? s : r); } } return l(o), l(a), i; }(e, t, o, f); return r.length || u(e, f), { e: p, get c() { var t = []; return r.length && [u(applyDec(e, [r], n, e.name, 5, f, t), f), c.bind(null, t, e)]; } }; }
100
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
101
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
102
+ function _setFunctionName(e, t, n) { "symbol" == _typeof(t) && (t = (t = t.description) ? "[" + t + "]" : ""); try { Object.defineProperty(e, "name", { configurable: !0, value: n ? n + " " + t : t }); } catch (e) {} return e; }
103
+ function _checkInRHS(e) { if (Object(e) !== e) throw TypeError("right-hand side of 'in' should be an object, got " + (null !== e ? _typeof(e) : "null")); return e; }
104
+ var _A = /*#__PURE__*/new WeakMap();
105
+ var _B = /*#__PURE__*/new WeakMap();
106
+ var _C = /*#__PURE__*/new WeakMap();
107
+ var _D = /*#__PURE__*/new WeakMap();
108
+ var _E = /*#__PURE__*/new WeakMap();
109
+ var _F = /*#__PURE__*/new WeakMap();
110
+ var _G = /*#__PURE__*/new WeakMap();
111
+ var _H = /*#__PURE__*/new WeakMap();
112
+ var _I = /*#__PURE__*/new WeakMap();
113
+ var _J = /*#__PURE__*/new WeakMap();
114
+ var _K = /*#__PURE__*/new WeakMap();
115
+ var _L = /*#__PURE__*/new WeakMap();
116
+ var _M = /*#__PURE__*/new WeakMap();
117
+ var _N = /*#__PURE__*/new WeakMap();
118
+ var _O = /*#__PURE__*/new WeakMap();
119
+ var _P = /*#__PURE__*/new WeakMap();
120
+ var _Q = /*#__PURE__*/new WeakMap();
121
+ var _R = /*#__PURE__*/new WeakMap();
122
+ _ref = (_setLastScrollTopDecs = [_mobx.action, _mobx.action.bound], _setMessageListDecs = [_mobx.action, _mobx.action.bound], _sendMessageDecs = [_mobx.action, _mobx.action.bound], _setUnReadMsgCountDecs = [_mobx.action, _mobx.action.bound], _setHasNewMsgDecs = [_mobx.action, _mobx.action.bound], _handleTextMessageReceivedDecs = [_mobx.action, _mobx.action.bound], _getUserCountDecs = [_mobx.action, _mobx.action.bound], _onRemoteUserUpdateDecs = [_mobx.action, _mobx.action.bound], _refreshUserListDecs = [_mobx.action, _mobx.action.bound], _handleNewMsgDecs = [_mobx.action, _mobx.action.bound], _updateReadMsgIndexDecs = [_mobx.action, _mobx.action.bound], _initReadInfoDecs = [_mobx.action, _mobx.action.bound], _updateHistoryUnreadCntDecs = [_mobx.action, _mobx.action.bound], _updateHasHistoryMsgDecs = [_mobx.action, _mobx.action.bound], _updateScrollInfoDecs = [_mobx.action, _mobx.action.bound], _updateViewIdxDecs = [_mobx.action, _mobx.action.bound], _updateReadIdxDecs = [_mobx.action, _mobx.action.bound], _updateFirstMsgIdDecs = [_mobx.action, _mobx.action.bound], _updateHistoryUnReadCountDecs = [_mobx.action, _mobx.action.bound], _updateListDecs = [_mobx.action, _mobx.action.bound], _updateMostRecentHeightDecs = [_mobx.action, _mobx.action.bound], _updateMostRecentWidthDecs = [_mobx.action, _mobx.action.bound], _patchHandleMsgDecs = [_mobx.action, _mobx.action.bound], _forceNotifyMsgsDecs = [_mobx.action, _mobx.action.bound], _resetComponentCacheDecs = [_mobx.action, _mobx.action.bound], _resetTargetUserDecs = [_mobx.action, _mobx.action.bound], _initChatLevelDecs = [_mobx.action, _mobx.action.bound], _setTargetUserDecs = [_mobx.action, _mobx.action.bound], _updateChatLevelDecs = [_mobx.action, _mobx.action.bound], _updateChatTextMsgDecs = [_mobx.action, _mobx.action.bound], _filterChatMemberDecs = [_mobx.action, _mobx.action.bound], _hasSendMessagePermissionDecs = [_mobx.action, _mobx.action.bound], _permitPrivateChatDecs = [_mobx.action, _mobx.action.bound], _handleToastDecs = [_mobx.action, _mobx.action.bound], _handleConnectionUpdatedDecs = [_mobx.action, _mobx.action.bound], _initChatRoomConnectionStateDecs = [_mobx.action, _mobx.action.bound], "needCbBottomCount");
123
+ var ChatRoomStore = exports.ChatRoomStore = /*#__PURE__*/function () {
124
+ function ChatRoomStore(_ref2) {
125
+ var _this = this;
126
+ var chatRoomControl = _ref2.chatRoomControl,
127
+ userControl = _ref2.userControl,
128
+ uiEventStore = _ref2.uiEventStore,
129
+ securityStore = _ref2.securityStore,
130
+ type = _ref2.type,
131
+ chatStoreObservable = _ref2.chatStoreObservable,
132
+ chatProvider = _ref2.chatProvider;
133
+ (0, _classCallCheck2["default"])(this, ChatRoomStore);
134
+ (0, _defineProperty2["default"])(this, _ref, (_initProto(this), 40));
135
+ (0, _defineProperty2["default"])(this, "mostRecentHeight", 0);
136
+ (0, _defineProperty2["default"])(this, "mostRecentWidth", 0);
137
+ (0, _defineProperty2["default"])(this, "cache", new _reactVirtualized.CellMeasurerCache({}));
138
+ (0, _defineProperty2["default"])(this, "scrollHeight", 0);
139
+ (0, _defineProperty2["default"])(this, "scrollTop", 0);
140
+ (0, _defineProperty2["default"])(this, "clientHeight", 0);
141
+ (0, _defineProperty2["default"])(this, "firstMsgId", '');
142
+ (0, _defineProperty2["default"])(this, "lastReadInfo", {
143
+ index: -1,
144
+ msgId: ''
145
+ });
146
+ (0, _defineProperty2["default"])(this, "lastScrollTop", undefined);
147
+ (0, _defineProperty2["default"])(this, "logger", (0, _logger.getLogger)());
148
+ (0, _defineProperty2["default"])(this, "_maxMsgCount", 500);
149
+ (0, _defineProperty2["default"])(this, "_originalMessages", []);
150
+ (0, _defineProperty2["default"])(this, "_disposers", []);
151
+ (0, _defineProperty2["default"])(this, "_noUser", {
152
+ userId: _types.USER_NONE,
153
+ userName: (0, _i18n.transI18n)('fmt_chat_tips_selecthost'),
154
+ userRole: _type3.FcrUserRole.ROBOT,
155
+ connectorType: _fcrCore.FcrRoomConnectorType.NONE
156
+ });
157
+ _classPrivateFieldInitSpec(this, _A, _init__userInfo(this));
158
+ _classPrivateFieldInitSpec(this, _B, _init_needRecomputeRowIdMap(this, new Map()));
159
+ _classPrivateFieldInitSpec(this, _C, _init_messageList(this, []));
160
+ _classPrivateFieldInitSpec(this, _D, _init_readMsgIndex(this, {
161
+ index: -1,
162
+ msgId: ''
163
+ }));
164
+ // 读过的最后一条消息
165
+ _classPrivateFieldInitSpec(this, _E, _init_readIdx(this, 0));
166
+ _classPrivateFieldInitSpec(this, _F, _init_viewIdx(this, 0));
167
+ // 历史未读消息条数
168
+ _classPrivateFieldInitSpec(this, _G, _init_historyUnreadCount(this, 0));
169
+ _classPrivateFieldInitSpec(this, _H, _init_hasHistoryMsg(this, false));
170
+ _classPrivateFieldInitSpec(this, _I, _init_newMsgsUnReadCnt(this, 0));
171
+ _classPrivateFieldInitSpec(this, _J, _init_privateTargetUser(this, _types.ALL_TO_USER));
172
+ _classPrivateFieldInitSpec(this, _K, _init_chatLevel(this, 'everyone'));
173
+ _classPrivateFieldInitSpec(this, _L, _init_currentUserMap(this, new Map()));
174
+ _classPrivateFieldInitSpec(this, _M, _init_textMsg(this, ''));
175
+ _classPrivateFieldInitSpec(this, _N, _init_privateTargetList(this, []));
176
+ _classPrivateFieldInitSpec(this, _O, _init_chatRoomState(this, _type.FcrChatRoomConnectionState.Disconnected));
177
+ _classPrivateFieldInitSpec(this, _P, _init_hasNewMsg(this, false));
178
+ _classPrivateFieldInitSpec(this, _Q, _init_userCount(this, 0));
179
+ _classPrivateFieldInitSpec(this, _R, _init_unReadMsgCount(this, 0));
180
+ (0, _defineProperty2["default"])(this, "_userObserver", {
181
+ onRemoteUsersJoined: this._onRemoteUserUpdate.bind(this),
182
+ onRemoteUsersLeft: this._onRemoteUserUpdate.bind(this),
183
+ onUserPropertiesUpdated: this._onUserPropertiesUpdated.bind(this),
184
+ onUserPropertiesDeleted: function onUserPropertiesDeleted(roomId, event) {},
185
+ onUserInfoUpdated: this._onUserInfoUpdated.bind(this)
186
+ });
187
+ this._type = type;
188
+ this._uiEventStore = uiEventStore;
189
+ this._securityStore = securityStore;
190
+ this._chatStoreObservable = chatStoreObservable;
191
+ // TODO: 需要查询房间历史消息, 一期预留
192
+ this.messageList = [];
193
+ this._chatRoomControl = chatRoomControl;
194
+ this._initChatRoomConnectionState(chatRoomControl.getConnectionState());
195
+ this._userControl = userControl;
196
+ this.userCount = this.getUserCount();
197
+ this._userInfo = userControl.getLocalUser();
198
+ this._userControl.addObserver(this._userObserver);
199
+ this._refreshUserList();
200
+ this._intervalId = setInterval(this.patchHandleMsg, 500);
201
+ this._addReactions();
202
+ this._chatProvider = chatProvider;
203
+ this._chatProviderObserver = {
204
+ onPrivateChatTargetUserUpdated: function onPrivateChatTargetUserUpdated(user, roomType) {
205
+ if (roomType === _this._type) {
206
+ _this.setTargetUser(user);
207
+ }
208
+ },
209
+ onNewChatMessageReceived: this._messageReceived.bind(this),
210
+ onChatRoomConnectionStateUpdated: this._handleConnectionUpdated.bind(this)
211
+ };
212
+ this._chatProvider.addObserver(this._chatProviderObserver);
213
+ this.privateTargetList = (0, _toConsumableArray2["default"])(this.remoteUsers);
214
+ this.initChatLevel();
215
+ this.resetTargetUser();
216
+ }
217
+ return (0, _createClass2["default"])(ChatRoomStore, [{
218
+ key: "_userInfo",
219
+ get: function get() {
220
+ return _classPrivateFieldGet(_A, this);
221
+ },
222
+ set: function set(v) {
223
+ _classPrivateFieldSet(_A, this, v);
224
+ }
225
+ }, {
226
+ key: "needRecomputeRowIdMap",
227
+ get: function get() {
228
+ return _classPrivateFieldGet(_B, this);
229
+ },
230
+ set: function set(v) {
231
+ _classPrivateFieldSet(_B, this, v);
232
+ }
233
+ }, {
234
+ key: "messageList",
235
+ get: function get() {
236
+ return _classPrivateFieldGet(_C, this);
237
+ },
238
+ set: function set(v) {
239
+ _classPrivateFieldSet(_C, this, v);
240
+ }
241
+ }, {
242
+ key: "readMsgIndex",
243
+ get: function get() {
244
+ return _classPrivateFieldGet(_D, this);
245
+ },
246
+ set: function set(v) {
247
+ _classPrivateFieldSet(_D, this, v);
248
+ }
249
+ }, {
250
+ key: "readIdx",
251
+ get: function get() {
252
+ return _classPrivateFieldGet(_E, this);
253
+ },
254
+ set: function set(v) {
255
+ _classPrivateFieldSet(_E, this, v);
256
+ }
257
+ }, {
258
+ key: "viewIdx",
259
+ get: function get() {
260
+ return _classPrivateFieldGet(_F, this);
261
+ },
262
+ set: function set(v) {
263
+ _classPrivateFieldSet(_F, this, v);
264
+ }
265
+ }, {
266
+ key: "historyUnreadCount",
267
+ get: function get() {
268
+ return _classPrivateFieldGet(_G, this);
269
+ },
270
+ set: function set(v) {
271
+ _classPrivateFieldSet(_G, this, v);
272
+ }
273
+ }, {
274
+ key: "hasHistoryMsg",
275
+ get: function get() {
276
+ return _classPrivateFieldGet(_H, this);
277
+ },
278
+ set: function set(v) {
279
+ _classPrivateFieldSet(_H, this, v);
280
+ }
281
+ }, {
282
+ key: "newMsgsUnReadCnt",
283
+ get: function get() {
284
+ return _classPrivateFieldGet(_I, this);
285
+ },
286
+ set: function set(v) {
287
+ _classPrivateFieldSet(_I, this, v);
288
+ }
289
+ }, {
290
+ key: "privateTargetUser",
291
+ get: function get() {
292
+ return _classPrivateFieldGet(_J, this);
293
+ },
294
+ set: function set(v) {
295
+ _classPrivateFieldSet(_J, this, v);
296
+ }
297
+ }, {
298
+ key: "chatLevel",
299
+ get: function get() {
300
+ return _classPrivateFieldGet(_K, this);
301
+ },
302
+ set: function set(v) {
303
+ _classPrivateFieldSet(_K, this, v);
304
+ }
305
+ }, {
306
+ key: "currentUserMap",
307
+ get: function get() {
308
+ return _classPrivateFieldGet(_L, this);
309
+ },
310
+ set: function set(v) {
311
+ _classPrivateFieldSet(_L, this, v);
312
+ }
313
+ }, {
314
+ key: "textMsg",
315
+ get: function get() {
316
+ return _classPrivateFieldGet(_M, this);
317
+ },
318
+ set: function set(v) {
319
+ _classPrivateFieldSet(_M, this, v);
320
+ }
321
+ }, {
322
+ key: "privateTargetList",
323
+ get: function get() {
324
+ return _classPrivateFieldGet(_N, this);
325
+ },
326
+ set: function set(v) {
327
+ _classPrivateFieldSet(_N, this, v);
328
+ }
329
+ }, {
330
+ key: "chatRoomState",
331
+ get: function get() {
332
+ return _classPrivateFieldGet(_O, this);
333
+ },
334
+ set: function set(v) {
335
+ _classPrivateFieldSet(_O, this, v);
336
+ }
337
+ }, {
338
+ key: "hasNewMsg",
339
+ get: function get() {
340
+ return _classPrivateFieldGet(_P, this);
341
+ },
342
+ set: function set(v) {
343
+ _classPrivateFieldSet(_P, this, v);
344
+ }
345
+ }, {
346
+ key: "userCount",
347
+ get: function get() {
348
+ return _classPrivateFieldGet(_Q, this);
349
+ },
350
+ set: function set(v) {
351
+ _classPrivateFieldSet(_Q, this, v);
352
+ }
353
+ }, {
354
+ key: "unReadMsgCount",
355
+ get: function get() {
356
+ return _classPrivateFieldGet(_R, this);
357
+ },
358
+ set: function set(v) {
359
+ _classPrivateFieldSet(_R, this, v);
360
+ }
361
+ }, {
362
+ key: "release",
363
+ value: function release() {
364
+ var _this$_userControl;
365
+ (_this$_userControl = this._userControl) === null || _this$_userControl === void 0 || _this$_userControl.removeObserver(this._userObserver);
366
+ this._chatProvider.removeObserver(this._chatProviderObserver);
367
+ clearInterval(this._intervalId);
368
+ }
369
+ }, {
370
+ key: "setLastScrollTop",
371
+ value: function setLastScrollTop(value) {
372
+ this.lastScrollTop = value;
373
+ }
374
+ }, {
375
+ key: "setMessageList",
376
+ value: function setMessageList(messages) {
377
+ this.messageList = (0, _toConsumableArray2["default"])(messages).sort(function (a, b) {
378
+ return typeof a.time === 'number' && typeof b.time === 'number' ? a.time - b.time : 0;
379
+ });
380
+ }
381
+ }, {
382
+ key: "sendMessage",
383
+ value: function () {
384
+ var _sendMessage = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee(msg, type) {
385
+ var _this$_chatRoomContro;
386
+ var target, isPrivate, message, resp;
387
+ return _regenerator["default"].wrap(function _callee$(_context) {
388
+ while (1) switch (_context.prev = _context.next) {
389
+ case 0:
390
+ if (!(type === _type.FcrChatRoomMessageType.Image)) {
391
+ _context.next = 2;
392
+ break;
393
+ }
394
+ return _context.abrupt("return");
395
+ case 2:
396
+ target = this.privateTargetUser;
397
+ isPrivate = target.userId !== _types.USER_ALL;
398
+ message = _objectSpread(_objectSpread({}, type === _type.FcrChatRoomMessageType.Text ? {
399
+ content: msg
400
+ } : {
401
+ file: msg
402
+ }), {}, {
403
+ type: type,
404
+ properties: {}
405
+ }, isPrivate ? {
406
+ to: [target.userId]
407
+ } : {});
408
+ _context.next = 7;
409
+ return (_this$_chatRoomContro = this._chatRoomControl) === null || _this$_chatRoomContro === void 0 ? void 0 : _this$_chatRoomContro.sendMessage(message);
410
+ case 7:
411
+ resp = _context.sent;
412
+ this._handleTextMessageReceived(resp, isPrivate ? target.userName : undefined);
413
+ this.updateReadMsgIndex({
414
+ index: this.messageList.length - 1,
415
+ msgId: resp.id
416
+ });
417
+ case 10:
418
+ case "end":
419
+ return _context.stop();
420
+ }
421
+ }, _callee, this);
422
+ }));
423
+ function sendMessage(_x, _x2) {
424
+ return _sendMessage.apply(this, arguments);
425
+ }
426
+ return sendMessage;
427
+ }()
428
+ }, {
429
+ key: "_messageReceived",
430
+ value: function _messageReceived(_roomId, msg, roomType) {
431
+ if (roomType === this._type) {
432
+ this._originalMessages.push(msg);
433
+ this._uiEventStore.sendEvent(_constant.FcrUIAction.RECEIVE_NEW_CHAT_MESSAGES_FOR_RED, this._type);
434
+ }
435
+ }
436
+ }, {
437
+ key: "setUnReadMsgCount",
438
+ value: function setUnReadMsgCount(count) {
439
+ this.unReadMsgCount = count;
440
+ }
441
+ }, {
442
+ key: "setHasNewMsg",
443
+ value: function setHasNewMsg(value) {
444
+ this.hasNewMsg = value;
445
+ }
446
+ }, {
447
+ key: "_handleTextMessageReceived",
448
+ value: function _handleTextMessageReceived(message, target) {
449
+ var id = message.id,
450
+ _message$from = message.from,
451
+ userId = _message$from.userId,
452
+ userName = _message$from.userName,
453
+ userRole = _message$from.userRole,
454
+ type = message.type,
455
+ timestamp = message.timestamp,
456
+ isPrivate = message.isPrivate;
457
+ if (type !== _type.FcrChatRoomMessageType.Text) {
458
+ return;
459
+ }
460
+ var color = (0, _helper.getNameColor)(userName);
461
+ var msgPublisherRole = 'participant';
462
+ switch (userRole) {
463
+ case _type3.FcrUserRole.HOST:
464
+ msgPublisherRole = 'host';
465
+ break;
466
+ case _type3.FcrUserRole.COHOST:
467
+ msgPublisherRole = 'union-host';
468
+ break;
469
+ case _type3.FcrUserRole.PARTICIPANT:
470
+ msgPublisherRole = 'participant';
471
+ break;
472
+ }
473
+ this.handleNewMsg(_objectSpread({
474
+ id: id,
475
+ role: msgPublisherRole,
476
+ time: timestamp,
477
+ color: color,
478
+ nickName: userName,
479
+ uid: userId,
480
+ isPrivate: isPrivate,
481
+ target: target || (isPrivate ? 'Me' : 'All')
482
+ }, type === _type.FcrChatRoomMessageType.Text ? {
483
+ msg: message.content
484
+ } : {
485
+ img: message.file
486
+ }));
487
+ }
488
+ }, {
489
+ key: "getUserCount",
490
+ value: function getUserCount() {
491
+ return this._userControl.getUserList().filter(function (user) {
492
+ return user.userRole === _type3.FcrUserRole.PARTICIPANT;
493
+ }).length;
494
+ }
495
+ }, {
496
+ key: "_onRemoteUserUpdate",
497
+ value: function _onRemoteUserUpdate(roomId, events) {
498
+ if (this._type === _type2.FcrRoomType.Waitingroom) {
499
+ this.userCount = this.getUserCount();
500
+ if (this.userCount === 0) {
501
+ this._uiEventStore.sendEvent(_constant.FcrUIAction.CHAT_ROOM_CLOSED, this._type);
502
+ }
503
+ }
504
+ this._refreshUserList();
505
+ }
506
+ }, {
507
+ key: "_onUserPropertiesUpdated",
508
+ value: function _onUserPropertiesUpdated(roomId, event) {
509
+ this._refreshUserList();
510
+ }
511
+ }, {
512
+ key: "_onUserInfoUpdated",
513
+ value: function _onUserInfoUpdated(roomId, event) {
514
+ var targetUser = event.modifiedUser;
515
+ this.currentUserMap.set(targetUser.userId, targetUser);
516
+ this._refreshUserList();
517
+ }
518
+ }, {
519
+ key: "_refreshUserList",
520
+ value: function _refreshUserList() {
521
+ this._userInfo = this._userControl.getLocalUser();
522
+ var users = this._userControl.getUsers();
523
+ this.currentUserMap = new Map();
524
+ for (var _i = 0, _Object$entries = Object.entries(users); _i < _Object$entries.length; _i++) {
525
+ var _Object$entries$_i = (0, _slicedToArray2["default"])(_Object$entries[_i], 2),
526
+ userId = _Object$entries$_i[0],
527
+ user = _Object$entries$_i[1];
528
+ this.currentUserMap.set(userId, user);
529
+ }
530
+ }
531
+ }, {
532
+ key: "handleNewMsg",
533
+ value: function handleNewMsg(msg) {
534
+ if (this.messageList.length >= this._maxMsgCount) {
535
+ if (this.needRecomputeRowIdMap.has(this.messageList[0].id)) {
536
+ this.needRecomputeRowIdMap["delete"](this.messageList[0].id);
537
+ }
538
+ this.messageList.shift();
539
+ }
540
+ this.messageList.push(msg);
541
+ this.setMessageList(this.messageList);
542
+ }
543
+ }, {
544
+ key: "updateReadMsgIndex",
545
+ value: function updateReadMsgIndex(info) {
546
+ if (!info) {
547
+ var _this$messageList;
548
+ this.readMsgIndex = {
549
+ index: this.messageList.length - 1,
550
+ msgId: (_this$messageList = this.messageList[this.messageList.length - 1]) === null || _this$messageList === void 0 ? void 0 : _this$messageList.id
551
+ };
552
+ this.resetComponentCache();
553
+ return;
554
+ }
555
+ var index = info.index,
556
+ msgId = info.msgId;
557
+ this.readMsgIndex = {
558
+ index: index,
559
+ msgId: msgId
560
+ };
561
+ }
562
+ }, {
563
+ key: "allowChat",
564
+ get: function get() {
565
+ return this._securityStore.allowChat();
566
+ }
567
+ }, {
568
+ key: "allowedAllChat",
569
+ get: function get() {
570
+ return this._securityStore.allowedAllChat();
571
+ }
572
+ }, {
573
+ key: "allowedPublicChatAndDisallowedPrivateChat",
574
+ get: function get() {
575
+ return this._securityStore.allowedPublicChatAndDisallowedPrivateChat();
576
+ }
577
+ }, {
578
+ key: "disallowedPublicChatAndDisallowedPrivateChatToParticipant",
579
+ get: function get() {
580
+ return this._securityStore.disallowedPublicChatAndDisallowedPrivateChatToParticipant();
581
+ }
582
+ }, {
583
+ key: "disallowedAllChat",
584
+ get: function get() {
585
+ return this._securityStore.disallowedAllChat();
586
+ }
587
+ }, {
588
+ key: "hasChatPermission",
589
+ get: function get() {
590
+ return this._securityStore.hasChatSendPublicPermission();
591
+ }
592
+ }, {
593
+ key: "hasChatSendPrivatePermission",
594
+ get: function get() {
595
+ return this._securityStore.hasPermissionToSendPrivateMessage(_type3.FcrUserRole.HOST) || this._securityStore.hasPermissionToSendPrivateMessage(_type3.FcrUserRole.COHOST);
596
+ }
597
+ }, {
598
+ key: "hasSendAllPermission",
599
+ get: function get() {
600
+ return this._securityStore.hasSendAllChatPermission();
601
+ }
602
+ }, {
603
+ key: "isHost",
604
+ get: function get() {
605
+ return this._userInfo.userRole === _type3.FcrUserRole.HOST;
606
+ }
607
+ }, {
608
+ key: "isCohost",
609
+ get: function get() {
610
+ return this._userInfo.userRole === _type3.FcrUserRole.COHOST;
611
+ }
612
+ }, {
613
+ key: "localIsManager",
614
+ get: function get() {
615
+ return this._userInfo.userRole === _type3.FcrUserRole.HOST || this._userInfo.userRole === _type3.FcrUserRole.COHOST;
616
+ }
617
+
618
+ // 本地添加系统消息
619
+ }, {
620
+ key: "_addReactions",
621
+ value: function _addReactions() {
622
+ var _this2 = this;
623
+ this._disposers.push((0, _mobx.reaction)(function () {
624
+ return _this2.chatLevel;
625
+ }, function (state) {
626
+ if (!_this2.localIsManager && _this2.privateTargetUser.userId === _types.USER_ALL && (state === 'no_one' || state === 'private_to_manager')) {
627
+ _this2.setTargetUser(_this2._noUser);
628
+ }
629
+ if (!_this2.localIsManager && _this2.privateTargetUser.userId === _types.USER_NONE && (state === 'everyone' || state === 'public')) {
630
+ _this2.setTargetUser(_types.ALL_TO_USER);
631
+ }
632
+ }), (0, _mobx.reaction)(function () {
633
+ return _this2.disallowedAllChat;
634
+ }, function (state) {
635
+ if (state) {
636
+ _this2.handleChatPermissionUpdate('no_one');
637
+ _this2.updateChatLevel('no_one');
638
+ }
639
+ }), (0, _mobx.reaction)(function () {
640
+ return _this2.disallowedPublicChatAndDisallowedPrivateChatToParticipant;
641
+ }, function (state) {
642
+ if (state) {
643
+ _this2.handleChatPermissionUpdate('private_to_manager');
644
+ _this2.updateChatLevel('private_to_manager');
645
+ }
646
+ }), (0, _mobx.reaction)(function () {
647
+ return _this2.allowedPublicChatAndDisallowedPrivateChat;
648
+ }, function (state) {
649
+ if (state) {
650
+ _this2.handleChatPermissionUpdate('public');
651
+ _this2.updateChatLevel('public');
652
+ }
653
+ }), (0, _mobx.reaction)(function () {
654
+ return _this2.allowedAllChat;
655
+ }, function (state) {
656
+ if (state) {
657
+ _this2.handleChatPermissionUpdate('everyone');
658
+ _this2.updateChatLevel('everyone');
659
+ }
660
+ }), (0, _mobx.reaction)(function () {
661
+ return _this2.hasChatPermission;
662
+ }, function (state) {
663
+ if (state) {
664
+ _this2.setTargetUser(_types.ALL_TO_USER);
665
+ }
666
+ }));
667
+ }
668
+ }, {
669
+ key: "initReadInfo",
670
+ value: function initReadInfo() {
671
+ this.resetComponentCache();
672
+ this.lastReadInfo = _objectSpread({}, this.readMsgIndex);
673
+ if (this.lastReadInfo.index < this.messageList.length - 1) {
674
+ this.hasHistoryMsg = true;
675
+ }
676
+ }
677
+ }, {
678
+ key: "updateHistoryUnreadCnt",
679
+ value: function updateHistoryUnreadCnt(historyUnreadCount) {
680
+ this.historyUnreadCount = historyUnreadCount;
681
+ }
682
+ }, {
683
+ key: "updateHasHistoryMsg",
684
+ value: function updateHasHistoryMsg(hasHistoryMsg) {
685
+ this.hasHistoryMsg = hasHistoryMsg;
686
+ }
687
+ }, {
688
+ key: "updateScrollInfo",
689
+ value: function updateScrollInfo(listScrollHeight, listScrollTop, listClientHeight) {
690
+ this.scrollHeight = listScrollHeight;
691
+ this.scrollTop = listScrollTop;
692
+ this.clientHeight = listClientHeight;
693
+ }
694
+ }, {
695
+ key: "updateViewIdx",
696
+ value: function updateViewIdx(viewIdx) {
697
+ this.viewIdx = viewIdx;
698
+ }
699
+ }, {
700
+ key: "updateReadIdx",
701
+ value: function updateReadIdx(readIdx) {
702
+ this.readIdx = readIdx;
703
+ }
704
+ }, {
705
+ key: "updateFirstMsgId",
706
+ value: function updateFirstMsgId(firstMsgId) {
707
+ this.firstMsgId = firstMsgId;
708
+ }
709
+ }, {
710
+ key: "updateHistoryUnReadCount",
711
+ value: function updateHistoryUnReadCount(historyUnReadCount) {
712
+ this.historyUnreadCount = historyUnReadCount;
713
+ }
714
+ }, {
715
+ key: "updateList",
716
+ value: function updateList(list) {
717
+ this.list = list;
718
+ }
719
+ }, {
720
+ key: "updateMostRecentHeight",
721
+ value: function updateMostRecentHeight(mostRecentHeight) {
722
+ this.mostRecentHeight = mostRecentHeight;
723
+ }
724
+ }, {
725
+ key: "updateMostRecentWidth",
726
+ value: function updateMostRecentWidth(mostRecentWidth) {
727
+ this.mostRecentWidth = mostRecentWidth;
728
+ }
729
+ }, {
730
+ key: "patchHandleMsg",
731
+ value: function patchHandleMsg() {
732
+ var _this3 = this;
733
+ var isBottom = this.clientHeight === 0 || this.clientHeight >= this.scrollHeight || Math.abs(this.scrollHeight - this.clientHeight - this.scrollTop) < 1;
734
+ if (!isBottom) {
735
+ this.newMsgsUnReadCnt = this._originalMessages.length;
736
+ return;
737
+ }
738
+ var notifyMsgs = this._originalMessages.splice(0, this.newMsgsUnReadCnt || 10);
739
+ // 通知列表中前10条消息
740
+ notifyMsgs.forEach(function (msg) {
741
+ _this3._handleTextMessageReceived(msg);
742
+ });
743
+ notifyMsgs.length > 0 && this._chatStoreObservable.notifyObservers('onReceiveMessage', notifyMsgs, this._type);
744
+
745
+ // TODO: 消息批量更新, 优化
746
+ }
747
+ }, {
748
+ key: "forceNotifyMsgs",
749
+ value: function forceNotifyMsgs() {
750
+ this.patchHandleMsg();
751
+ }
752
+ }, {
753
+ key: "resetComponentCache",
754
+ value: function resetComponentCache() {
755
+ this.newMsgsUnReadCnt = 0;
756
+ this.clientHeight = 0;
757
+ this.scrollTop = 0;
758
+ this.scrollHeight = 0;
759
+ this.mostRecentHeight = 0;
760
+ this.cache.clearAll();
761
+ this.list = undefined;
762
+ this.readIdx = 0;
763
+ this.viewIdx = 0;
764
+ this.firstMsgId = '';
765
+ this.historyUnreadCount = 0;
766
+ this.hasHistoryMsg = false;
767
+ this.lastReadInfo = {
768
+ index: -1,
769
+ msgId: ''
770
+ };
771
+ }
772
+ }, {
773
+ key: "resetTargetUser",
774
+ value: function resetTargetUser() {
775
+ if (this.chatLevel === 'public' || this.chatLevel === 'everyone') {
776
+ this.privateTargetUser = _types.ALL_TO_USER;
777
+ } else if (this.chatLevel === 'private_to_manager' && !this.localIsManager) {
778
+ this.privateTargetUser = this._noUser;
779
+ }
780
+ }
781
+ }, {
782
+ key: "initChatLevel",
783
+ value: function initChatLevel() {
784
+ if (this.allowedAllChat) {
785
+ this.updateChatLevel('everyone');
786
+ } else if (this.allowedPublicChatAndDisallowedPrivateChat) {
787
+ this.updateChatLevel('public');
788
+ } else if (this.disallowedPublicChatAndDisallowedPrivateChatToParticipant) {
789
+ this.updateChatLevel('private_to_manager');
790
+ } else if (this.disallowedAllChat) {
791
+ this.updateChatLevel('no_one');
792
+ }
793
+ }
794
+ }, {
795
+ key: "setTargetUser",
796
+ value: function setTargetUser(user) {
797
+ this.privateTargetUser = user;
798
+ }
799
+ }, {
800
+ key: "targetUserIsOnline",
801
+ get: function get() {
802
+ var _this4 = this;
803
+ if (this.privateTargetUser.userId === _types.USER_ALL || this.privateTargetUser.userId === _types.USER_NONE) {
804
+ return true;
805
+ }
806
+ return this.remoteUsers.some(function (remoteUser) {
807
+ return remoteUser.userId === _this4.privateTargetUser.userId;
808
+ });
809
+ }
810
+ }, {
811
+ key: "remoteUsers",
812
+ get: function get() {
813
+ var _this5 = this;
814
+ var list = Array.from(this.currentUserMap.values());
815
+ return list.filter(function (user) {
816
+ return user.userId !== _this5._userInfo.userId;
817
+ });
818
+ }
819
+ }, {
820
+ key: "handleChatPermissionUpdate",
821
+ value: function handleChatPermissionUpdate(chatLevel) {
822
+ var _this$privilegeOperat;
823
+ var _ref3 = (_this$privilegeOperat = this.privilegeOperator) !== null && _this$privilegeOperat !== void 0 ? _this$privilegeOperat : {},
824
+ userId = _ref3.userId,
825
+ userName = _ref3.userName,
826
+ userRole = _ref3.userRole;
827
+ var msg = {
828
+ id: String(new Date().getTime()),
829
+ role: userRole === _type3.FcrUserRole.PARTICIPANT ? 'participant' : userRole === _type3.FcrUserRole.COHOST ? 'union-host' : 'host',
830
+ time: Date.now(),
831
+ msg: '',
832
+ color: '',
833
+ nickName: userName !== null && userName !== void 0 ? userName : '',
834
+ uid: userId !== null && userId !== void 0 ? userId : '',
835
+ systemMsg: true,
836
+ chatLevel: chatLevel,
837
+ isPrivate: false
838
+ };
839
+
840
+ // 处理聊天权限变更时的系统消息
841
+ this.handleNewMsg(msg);
842
+ }
843
+ }, {
844
+ key: "updateChatLevel",
845
+ value: function updateChatLevel(chatLevel) {
846
+ this.chatLevel = chatLevel;
847
+ }
848
+ }, {
849
+ key: "privilegeOperator",
850
+ get: function get() {
851
+ return this._securityStore.privilegeOperator;
852
+ }
853
+ }, {
854
+ key: "updateChatTextMsg",
855
+ value: function updateChatTextMsg(txt) {
856
+ this.textMsg = txt;
857
+ }
858
+ }, {
859
+ key: "filterChatMember",
860
+ value: function filterChatMember(list) {
861
+ var _this6 = this;
862
+ var res = list.filter(function (user) {
863
+ return _this6._securityStore.hasPermissionToSendPrivateMessage(user.userRole) || user.userId === _types.USER_ALL;
864
+ });
865
+ if (res.length && _type2.FcrRoomType.Waitingroom === this._type && !this.localIsManager) {
866
+ this.setTargetUser(res[0]);
867
+ }
868
+ return res;
869
+ }
870
+ }, {
871
+ key: "hasSendMessagePermission",
872
+ value: function hasSendMessagePermission() {
873
+ return this._securityStore.hasPermissionToSendPrivateMessage(_type3.FcrUserRole.HOST) || this._securityStore.hasPermissionToSendPrivateMessage(_type3.FcrUserRole.COHOST) || this._securityStore.hasChatSendPublicPermissionByTargetRole(_type3.FcrUserRole.PARTICIPANT) || this._securityStore.hasChatSendPublicPermissionByTargetRole(_type3.FcrUserRole.HOST) || this._securityStore.hasChatSendPublicPermissionByTargetRole(_type3.FcrUserRole.COHOST);
874
+ }
875
+ }, {
876
+ key: "permitPrivateChat",
877
+ value: function permitPrivateChat(userId) {
878
+ var targetUser = this.remoteUsers.find(function (user) {
879
+ return user.userId === userId;
880
+ });
881
+ if (!targetUser) {
882
+ return;
883
+ }
884
+ if (!this._securityStore.permitPrivateChat(userId)) {
885
+ return;
886
+ }
887
+ this.setTargetUser(targetUser);
888
+ }
889
+ }, {
890
+ key: "handleToast",
891
+ value: function handleToast(params) {
892
+ this._uiEventStore.showChatToast(_objectSpread(_objectSpread({
893
+ id: params.id
894
+ }, params.toastProps), {}, {
895
+ message: params.toastProps.content
896
+ }));
897
+ }
898
+ }, {
899
+ key: "isHostOrCoHost",
900
+ get: function get() {
901
+ return this._userInfo.userRole === _type3.FcrUserRole.HOST || this._userInfo.userRole === _type3.FcrUserRole.COHOST;
902
+ }
903
+ }, {
904
+ key: "setAllowChat",
905
+ value: function setAllowChat(allowChat) {
906
+ this._securityStore.setAllowChat(allowChat);
907
+ }
908
+ }, {
909
+ key: "setAllowChatWithPayload",
910
+ value: function setAllowChatWithPayload(type) {
911
+ switch (type) {
912
+ case 'public':
913
+ this._securityStore.setAllowedPublicChatAndDisallowedPrivateChat();
914
+ break;
915
+ case 'private_to_manager':
916
+ this._securityStore.setDisallowedPublicChatAndDisallowedPrivateChatToParticipant();
917
+ break;
918
+ }
919
+ }
920
+ }, {
921
+ key: "_handleConnectionUpdated",
922
+ value: function _handleConnectionUpdated(_, state) {
923
+ this.chatRoomState = state;
924
+ }
925
+ }, {
926
+ key: "_initChatRoomConnectionState",
927
+ value: function _initChatRoomConnectionState(state) {
928
+ this.chatRoomState = state;
929
+ }
930
+ }]);
931
+ }();
932
+ _ChatRoomStore = ChatRoomStore;
933
+ var _applyDecs$e = _applyDecs(_ChatRoomStore, [[_mobx.observable, 1, "_userInfo"], [_mobx.observable, 1, "needRecomputeRowIdMap"], [_mobx.observable, 1, "messageList"], [_mobx.observable, 1, "readMsgIndex"], [_mobx.observable, 1, "readIdx"], [_mobx.observable, 1, "viewIdx"], [_mobx.observable, 1, "historyUnreadCount"], [_mobx.observable, 1, "hasHistoryMsg"], [_mobx.observable, 1, "newMsgsUnReadCnt"], [_mobx.observable, 1, "privateTargetUser"], [_mobx.observable, 1, "chatLevel"], [_mobx.observable, 1, "currentUserMap"], [_mobx.observable, 1, "textMsg"], [_mobx.observable, 1, "privateTargetList"], [_mobx.observable, 1, "chatRoomState"], [_mobx.observable, 1, "hasNewMsg"], [_mobx.observable, 1, "userCount"], [_mobx.observable, 1, "unReadMsgCount"], [_setLastScrollTopDecs, 18, "setLastScrollTop"], [_setMessageListDecs, 18, "setMessageList"], [_sendMessageDecs, 18, "sendMessage"], [_setUnReadMsgCountDecs, 18, "setUnReadMsgCount"], [_setHasNewMsgDecs, 18, "setHasNewMsg"], [_handleTextMessageReceivedDecs, 18, "_handleTextMessageReceived"], [_getUserCountDecs, 18, "getUserCount"], [_onRemoteUserUpdateDecs, 18, "_onRemoteUserUpdate"], [_refreshUserListDecs, 18, "_refreshUserList"], [_handleNewMsgDecs, 18, "handleNewMsg"], [_updateReadMsgIndexDecs, 18, "updateReadMsgIndex"], [_mobx.computed, 3, "hasSendAllPermission"], [_mobx.computed, 3, "isHost"], [_mobx.computed, 3, "isCohost"], [_mobx.computed, 3, "localIsManager"], [_initReadInfoDecs, 18, "initReadInfo"], [_updateHistoryUnreadCntDecs, 18, "updateHistoryUnreadCnt"], [_updateHasHistoryMsgDecs, 18, "updateHasHistoryMsg"], [_updateScrollInfoDecs, 18, "updateScrollInfo"], [_updateViewIdxDecs, 18, "updateViewIdx"], [_updateReadIdxDecs, 18, "updateReadIdx"], [_updateFirstMsgIdDecs, 18, "updateFirstMsgId"], [_updateHistoryUnReadCountDecs, 18, "updateHistoryUnReadCount"], [_updateListDecs, 18, "updateList"], [_updateMostRecentHeightDecs, 18, "updateMostRecentHeight"], [_updateMostRecentWidthDecs, 18, "updateMostRecentWidth"], [_patchHandleMsgDecs, 18, "patchHandleMsg"], [_forceNotifyMsgsDecs, 18, "forceNotifyMsgs"], [_resetComponentCacheDecs, 18, "resetComponentCache"], [_resetTargetUserDecs, 18, "resetTargetUser"], [_initChatLevelDecs, 18, "initChatLevel"], [_setTargetUserDecs, 18, "setTargetUser"], [_mobx.computed, 3, "targetUserIsOnline"], [_mobx.computed, 3, "remoteUsers"], [_imports.bound, 2, "handleChatPermissionUpdate"], [_updateChatLevelDecs, 18, "updateChatLevel"], [_updateChatTextMsgDecs, 18, "updateChatTextMsg"], [_filterChatMemberDecs, 18, "filterChatMember"], [_hasSendMessagePermissionDecs, 18, "hasSendMessagePermission"], [_permitPrivateChatDecs, 18, "permitPrivateChat"], [_handleToastDecs, 18, "handleToast"], [_mobx.computed, 3, "isHostOrCoHost"], [_imports.bound, 2, "setAllowChat"], [_imports.bound, 2, "setAllowChatWithPayload"], [_handleConnectionUpdatedDecs, 18, "_handleConnectionUpdated"], [_initChatRoomConnectionStateDecs, 18, "_initChatRoomConnectionState"]], []).e;
934
+ var _applyDecs$e2 = (0, _slicedToArray2["default"])(_applyDecs$e, 19);
935
+ _init__userInfo = _applyDecs$e2[0];
936
+ _init_needRecomputeRowIdMap = _applyDecs$e2[1];
937
+ _init_messageList = _applyDecs$e2[2];
938
+ _init_readMsgIndex = _applyDecs$e2[3];
939
+ _init_readIdx = _applyDecs$e2[4];
940
+ _init_viewIdx = _applyDecs$e2[5];
941
+ _init_historyUnreadCount = _applyDecs$e2[6];
942
+ _init_hasHistoryMsg = _applyDecs$e2[7];
943
+ _init_newMsgsUnReadCnt = _applyDecs$e2[8];
944
+ _init_privateTargetUser = _applyDecs$e2[9];
945
+ _init_chatLevel = _applyDecs$e2[10];
946
+ _init_currentUserMap = _applyDecs$e2[11];
947
+ _init_textMsg = _applyDecs$e2[12];
948
+ _init_privateTargetList = _applyDecs$e2[13];
949
+ _init_chatRoomState = _applyDecs$e2[14];
950
+ _init_hasNewMsg = _applyDecs$e2[15];
951
+ _init_userCount = _applyDecs$e2[16];
952
+ _init_unReadMsgCount = _applyDecs$e2[17];
953
+ _initProto = _applyDecs$e2[18];
954
+ _applyDecs$e;