fcr-ui-scene 3.7.6 → 3.7.7

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 (259) hide show
  1. package/installer/icons/icon.png +0 -0
  2. package/installer/mac/entitlements.mac.plist +1 -5
  3. package/lib/creator/index.js +12 -6
  4. package/lib/creator/provider-initializer.browser.js +0 -3
  5. package/lib/creator/provider-initializer.electron.js +0 -4
  6. package/lib/creator.d.ts +36 -0
  7. package/lib/creator.js +465 -0
  8. package/lib/electron/bootstrap-sdk.js +70 -20
  9. package/lib/electron/struct.d.ts +7 -1
  10. package/lib/electron/struct.js +8 -1
  11. package/lib/electron/until.d.ts +3 -1
  12. package/lib/electron/until.js +7 -2
  13. package/lib/modules/action-bar/components/item/index.js +1 -0
  14. package/lib/modules/action-bar/components/screen-share/submenu.js +1 -1
  15. package/lib/modules/action-bar/index.d.ts +58 -0
  16. package/lib/modules/action-bar/index.dev.d.ts +0 -0
  17. package/lib/modules/action-bar/index.dev.js +94 -0
  18. package/lib/modules/action-bar/index.js +109 -0
  19. package/lib/modules/action-bar/store.d.ts +259 -0
  20. package/lib/modules/action-bar/store.js +1529 -0
  21. package/lib/modules/action-bar/types.d.ts +90 -0
  22. package/lib/modules/action-bar/types.js +6 -0
  23. package/lib/modules/action-bar/view.d.ts +5 -0
  24. package/lib/modules/action-bar/view.js +112 -0
  25. package/lib/modules/annotation/annotation-index.d.ts +2 -0
  26. package/lib/modules/annotation/annotation-index.js +80 -0
  27. package/lib/modules/annotation/annotation-toolbar-store.d.ts +75 -0
  28. package/lib/modules/annotation/annotation-toolbar-store.js +459 -0
  29. package/lib/modules/annotation/board-cursor.css +77 -0
  30. package/lib/modules/annotation/components/color-picker/components/color.d.ts +5 -0
  31. package/lib/modules/annotation/components/color-picker/components/color.js +38 -0
  32. package/lib/modules/annotation/components/color-picker/components/panel.d.ts +1 -0
  33. package/lib/modules/annotation/components/color-picker/components/panel.js +109 -0
  34. package/lib/modules/annotation/components/color-picker/components/picker.d.ts +1 -0
  35. package/lib/modules/annotation/components/color-picker/components/picker.js +75 -0
  36. package/lib/modules/annotation/components/color-picker/index.d.ts +2 -0
  37. package/lib/modules/annotation/components/color-picker/index.js +47 -0
  38. package/lib/modules/annotation/components/eraser-picker.d.ts +4 -0
  39. package/lib/modules/annotation/components/eraser-picker.js +144 -0
  40. package/lib/modules/annotation/components/expansion/index.d.ts +1 -0
  41. package/lib/modules/annotation/components/expansion/index.js +100 -0
  42. package/lib/modules/annotation/components/extra-tool-picker.d.ts +1 -0
  43. package/lib/modules/annotation/components/extra-tool-picker.js +62 -0
  44. package/lib/modules/annotation/components/history.d.ts +2 -0
  45. package/lib/modules/annotation/components/history.js +78 -0
  46. package/lib/modules/annotation/components/icons/fold-icon.d.ts +2 -0
  47. package/lib/modules/annotation/components/icons/fold-icon.js +41 -0
  48. package/lib/modules/annotation/components/icons/move-icon.d.ts +1 -0
  49. package/lib/modules/annotation/components/icons/move-icon.js +66 -0
  50. package/lib/modules/annotation/components/item/index.d.ts +1 -0
  51. package/lib/modules/annotation/components/item/index.js +43 -0
  52. package/lib/modules/annotation/components/move-handle.d.ts +5 -0
  53. package/lib/modules/annotation/components/move-handle.js +134 -0
  54. package/lib/modules/annotation/components/pen-picker.d.ts +4 -0
  55. package/lib/modules/annotation/components/pen-picker.js +155 -0
  56. package/lib/modules/annotation/components/screen-capture-picker.d.ts +4 -0
  57. package/lib/modules/annotation/components/screen-capture-picker.js +85 -0
  58. package/lib/modules/annotation/components/shape-picker.d.ts +4 -0
  59. package/lib/modules/annotation/components/shape-picker.js +210 -0
  60. package/lib/modules/annotation/hooks/index.d.ts +14 -0
  61. package/lib/modules/annotation/hooks/index.js +292 -0
  62. package/lib/modules/annotation/index.d.ts +45 -0
  63. package/lib/modules/annotation/index.js +168 -0
  64. package/lib/modules/annotation/store.d.ts +98 -0
  65. package/lib/modules/annotation/store.js +620 -0
  66. package/lib/modules/annotation/style.css +36 -0
  67. package/lib/modules/annotation/view.d.ts +3 -0
  68. package/lib/modules/annotation/view.js +44 -0
  69. package/lib/modules/chat/index.css +5 -1
  70. package/lib/modules/chat/view.js +6 -1
  71. package/lib/modules/components/control-bar/components/switch-theme/index.css +2 -0
  72. package/lib/modules/components/control-bar/components/switch-theme/index.js +5 -7
  73. package/lib/modules/components/control-bar/index.js +26 -7
  74. package/lib/modules/components/device-control/store.d.ts +42 -0
  75. package/lib/modules/components/device-control/store.js +241 -0
  76. package/lib/modules/components/leave-meeting/store.d.ts +39 -0
  77. package/lib/modules/components/leave-meeting/store.js +270 -0
  78. package/lib/modules/components/toolbar/components/capture-tool/index.d.ts +0 -1
  79. package/lib/modules/components/toolbar/components/capture-tool/index.js +1 -2
  80. package/lib/modules/components/toolbar/components/vertical-frame/index.js +2 -2
  81. package/lib/modules/components/toolbar/hooks/use-resize-visible.js +43 -42
  82. package/lib/modules/components/toolbar/index.js +6 -24
  83. package/lib/modules/control-bar/components/annotation-button/index.d.ts +1 -0
  84. package/lib/modules/control-bar/components/annotation-button/index.js +72 -0
  85. package/lib/modules/control-bar/components/cloud-recording-buttons.d.ts +3 -0
  86. package/lib/modules/control-bar/components/cloud-recording-buttons.js +65 -3
  87. package/lib/modules/control-bar/store.js +11 -6
  88. package/lib/modules/control-bar/types.d.ts +20 -0
  89. package/lib/modules/control-bar/types.js +6 -0
  90. package/lib/modules/dialog/components/dialog-container/component/body.d.ts +1 -0
  91. package/lib/modules/dialog/components/dialog-container/component/body.js +3 -2
  92. package/lib/modules/dialog/components/dialog-container/index.css +1 -1
  93. package/lib/modules/dialog/components/dialog-container/index.d.ts +1 -0
  94. package/lib/modules/dialog/components/dialog-container/index.js +4 -1
  95. package/lib/modules/dialog/components/normal-window/index.d.ts +1 -0
  96. package/lib/modules/dialog/components/normal-window/index.js +3 -1
  97. package/lib/modules/dialog/dialogs/chat/index.js +2 -1
  98. package/lib/modules/dialog/dialogs/control-bar-leave-meeting/index.js +0 -1
  99. package/lib/modules/dialog/dialogs/end-meeting/index.d.ts +1 -0
  100. package/lib/modules/dialog/dialogs/end-meeting/index.js +2 -1
  101. package/lib/modules/dialog/dialogs/participant/index.js +2 -1
  102. package/lib/modules/dialog/dialogs/pre-setting/index.css +26 -0
  103. package/lib/modules/dialog/dialogs/pre-setting/index.d.ts +6 -0
  104. package/lib/modules/dialog/dialogs/pre-setting/index.js +62 -0
  105. package/lib/modules/dialog/dialogs/widget/electron.d.ts +6 -0
  106. package/lib/modules/dialog/dialogs/widget/electron.js +38 -0
  107. package/lib/modules/dialog/hooks/use-popover-watcher.d.ts +14 -0
  108. package/lib/modules/dialog/hooks/use-popover-watcher.js +110 -0
  109. package/lib/modules/dialog/hooks/useElectron.d.ts +28 -0
  110. package/lib/modules/dialog/hooks/useElectron.js +277 -0
  111. package/lib/modules/dialog/store.d.ts +135 -0
  112. package/lib/modules/dialog/store.js +616 -0
  113. package/lib/modules/event-confirm/components/window/index.d.ts +7 -0
  114. package/lib/modules/event-confirm/components/window/index.js +221 -0
  115. package/lib/modules/event-confirm/index.css +24 -0
  116. package/lib/modules/event-confirm/index.d.ts +27 -0
  117. package/lib/modules/event-confirm/index.js +76 -0
  118. package/lib/modules/event-confirm/store.d.ts +50 -0
  119. package/lib/modules/event-confirm/store.js +394 -0
  120. package/lib/modules/event-confirm/view.d.ts +2 -0
  121. package/lib/modules/event-confirm/view.js +55 -0
  122. package/lib/modules/event-toast/store.d.ts +27 -0
  123. package/lib/modules/event-toast/store.js +205 -0
  124. package/lib/modules/layout/store.d.ts +176 -0
  125. package/lib/modules/layout/store.electron.js +1 -1
  126. package/lib/modules/layout/store.js +1452 -0
  127. package/lib/modules/participant/store.d.ts +222 -0
  128. package/lib/modules/participant/store.js +1929 -0
  129. package/lib/modules/pc-audio-connect/index.d.ts +22 -0
  130. package/lib/modules/pc-audio-connect/index.js +67 -0
  131. package/lib/modules/pc-audio-connect/store.d.ts +46 -0
  132. package/lib/modules/pc-audio-connect/store.js +304 -0
  133. package/lib/modules/secondary-window/store.d.ts +0 -1
  134. package/lib/modules/secondary-window/store.js +9 -22
  135. package/lib/modules/secondary-window/view.js +6 -5
  136. package/lib/modules/setting/common/advance-link.d.ts +3 -0
  137. package/lib/modules/setting/common/advance-link.js +27 -0
  138. package/lib/modules/setting/common/index.css +26 -0
  139. package/lib/modules/setting/common/useNamespace.d.ts +15 -0
  140. package/lib/modules/setting/common/useNamespace.js +66 -0
  141. package/lib/modules/setting/dialog-wrapper.d.ts +2 -0
  142. package/lib/modules/setting/dialog-wrapper.js +110 -0
  143. package/lib/modules/setting/index.css +0 -1
  144. package/lib/modules/setting/store.base.js +6 -0
  145. package/lib/modules/setting/store.d.ts +261 -0
  146. package/lib/modules/setting/store.js +1321 -0
  147. package/lib/modules/setting/view.js +0 -3
  148. package/lib/modules/share-screen/store.d.ts +148 -0
  149. package/lib/modules/share-screen/store.electron.js +1 -1
  150. package/lib/modules/share-screen/store.js +960 -0
  151. package/lib/modules/share-screen/types.d.ts +26 -0
  152. package/lib/modules/share-screen/types.js +6 -0
  153. package/lib/modules/state-bar/layout-config.js +6 -0
  154. package/lib/modules/state-bar/main-scene/store.base.d.ts +2 -0
  155. package/lib/modules/state-bar/main-scene/store.base.js +6 -0
  156. package/lib/modules/state-bar/store.d.ts +124 -0
  157. package/lib/modules/state-bar/store.js +664 -0
  158. package/lib/modules/video-window/index.css +6 -0
  159. package/lib/modules/video-window/popover-watcher.d.ts +4 -1
  160. package/lib/modules/video-window/popover-watcher.js +15 -2
  161. package/lib/modules/video-window/store.d.ts +18 -1
  162. package/lib/modules/video-window/store.js +55 -7
  163. package/lib/modules/whiteboard/components/progress/electron.d.ts +1 -0
  164. package/lib/modules/whiteboard/components/progress/electron.js +33 -0
  165. package/lib/modules/whiteboard/store.js +20 -2
  166. package/lib/modules/widget/store.d.ts +14 -0
  167. package/lib/modules/widget/store.js +28 -0
  168. package/lib/object-manager.d.ts +0 -1
  169. package/lib/object-manager.js +0 -1
  170. package/lib/providers/annotation-provider.d.ts +124 -0
  171. package/lib/providers/annotation-provider.js +369 -0
  172. package/lib/providers/board-share/bar-control/base.d.ts +1 -1
  173. package/lib/providers/board-share/bar-control/base.js +37 -28
  174. package/lib/providers/board-share/bar-control/electron.d.ts +1 -1
  175. package/lib/providers/board-share/bar-control/electron.js +19 -16
  176. package/lib/providers/board-share/provider.browser.d.ts +3 -0
  177. package/lib/providers/board-share/provider.browser.js +21 -3
  178. package/lib/providers/device-provider.js +5 -1
  179. package/lib/providers/dialog/provider.electron.js +6 -0
  180. package/lib/providers/dialog-provider.d.ts +137 -0
  181. package/lib/providers/dialog-provider.js +194 -0
  182. package/lib/providers/message-provider.d.ts +69 -0
  183. package/lib/providers/message-provider.js +140 -0
  184. package/lib/providers/mouse-detect/provider.d.ts +5 -0
  185. package/lib/providers/mouse-detect/provider.js +74 -49
  186. package/lib/providers/multi-display-provider.d.ts +3 -5
  187. package/lib/providers/multi-display-provider.js +0 -9
  188. package/lib/providers/room-provider/room-provider.d.ts +3 -14
  189. package/lib/providers/room-provider/room-provider.js +5 -26
  190. package/lib/providers/room-provider.d.ts +194 -0
  191. package/lib/providers/room-provider.js +916 -0
  192. package/lib/providers/screen-share/stream-state-sync.js +19 -12
  193. package/lib/providers/screen-share-provider.d.ts +245 -0
  194. package/lib/providers/screen-share-provider.js +850 -0
  195. package/lib/providers/sharing-provider.d.ts +42 -0
  196. package/lib/providers/sharing-provider.js +228 -0
  197. package/lib/providers/user-setting-storage-provider.d.ts +21 -0
  198. package/lib/providers/user-setting-storage-provider.js +65 -0
  199. package/lib/providers/whiteboard-provider.d.ts +24 -0
  200. package/lib/providers/whiteboard-provider.js +128 -0
  201. package/lib/providers/window/main-window.d.ts +0 -5
  202. package/lib/providers/window/main-window.js +0 -44
  203. package/lib/providers/window/renderer-window.d.ts +1 -0
  204. package/lib/providers/window/renderer-window.js +9 -1
  205. package/lib/scenes/main-scene.js +0 -2
  206. package/lib/shared-data-source/annotation-data.d.ts +17 -0
  207. package/lib/shared-data-source/annotation-data.js +110 -0
  208. package/lib/shared-data-source/app-list-data.d.ts +34 -0
  209. package/lib/shared-data-source/app-list-data.js +133 -0
  210. package/lib/shared-data-source/chat-data.d.ts +25 -0
  211. package/lib/shared-data-source/chat-data.js +139 -0
  212. package/lib/shared-data-source/config.d.ts +35 -0
  213. package/lib/shared-data-source/config.js +40 -0
  214. package/lib/shared-data-source/confirm-data.d.ts +44 -0
  215. package/lib/shared-data-source/confirm-data.js +201 -0
  216. package/lib/shared-data-source/device-privilege-data.d.ts +8 -0
  217. package/lib/shared-data-source/device-privilege-data.js +25 -0
  218. package/lib/shared-data-source/interpreter.d.ts +77 -0
  219. package/lib/shared-data-source/interpreter.js +247 -0
  220. package/lib/shared-data-source/layout-data.d.ts +31 -0
  221. package/lib/shared-data-source/layout-data.js +189 -0
  222. package/lib/shared-data-source/meeting-time.d.ts +90 -0
  223. package/lib/shared-data-source/meeting-time.js +416 -0
  224. package/lib/shared-data-source/member-data.d.ts +139 -0
  225. package/lib/shared-data-source/member-data.js +517 -0
  226. package/lib/shared-data-source/pin-data.d.ts +13 -0
  227. package/lib/shared-data-source/pin-data.js +111 -0
  228. package/lib/shared-data-source/screen-share-data.d.ts +357 -0
  229. package/lib/shared-data-source/screen-share-data.js +513 -0
  230. package/lib/shared-data-source/security-data.d.ts +39 -0
  231. package/lib/shared-data-source/security-data.js +156 -0
  232. package/lib/shared-data-source/setting.d.ts +67 -0
  233. package/lib/shared-data-source/setting.js +220 -0
  234. package/lib/shared-data-source/speaker-spotlight.d.ts +5 -0
  235. package/lib/shared-data-source/speaker-spotlight.js +15 -0
  236. package/lib/shared-data-source/video-window.d.ts +165 -0
  237. package/lib/shared-data-source/video-window.js +1266 -0
  238. package/lib/shared-data-source/waiting-room.d.ts +46 -0
  239. package/lib/shared-data-source/waiting-room.js +222 -0
  240. package/lib/shared-data-source/whiteboard-data.d.ts +70 -0
  241. package/lib/{providers/board-share/bar-control.js → shared-data-source/whiteboard-data.js} +62 -104
  242. package/lib/ui-scene.js +4 -2
  243. package/lib/utilities/board-context.d.ts +4 -0
  244. package/lib/utilities/board-context.js +12 -0
  245. package/lib/utilities/copyText.d.ts +2 -0
  246. package/lib/utilities/copyText.js +48 -0
  247. package/lib/utilities/renderer-event.d.ts +10 -0
  248. package/lib/utilities/renderer-event.js +95 -0
  249. package/lib/utilities/screen-capture-permission.d.ts +2 -0
  250. package/lib/utilities/screen-capture-permission.js +24 -0
  251. package/lib/utilities/screen.d.ts +3 -0
  252. package/lib/utilities/screen.js +53 -0
  253. package/lib/utilities/video-track-render-context.d.ts +6 -0
  254. package/lib/utilities/video-track-render-context.js +9 -0
  255. package/lib/waiting-room-control-manager.d.ts +28 -0
  256. package/lib/waiting-room-control-manager.js +230 -0
  257. package/package.json +5 -5
  258. package/public/index.html +22 -1
  259. package/lib/providers/board-share/bar-control.d.ts +0 -51
@@ -0,0 +1,517 @@
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.bind.js");
11
+ require("core-js/modules/es.function.name.js");
12
+ require("core-js/modules/es.number.constructor.js");
13
+ require("core-js/modules/es.object.create.js");
14
+ require("core-js/modules/es.object.define-properties.js");
15
+ require("core-js/modules/es.object.define-property.js");
16
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
17
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
18
+ require("core-js/modules/es.object.keys.js");
19
+ require("core-js/modules/esnext.function.metadata.js");
20
+ require("core-js/modules/esnext.symbol.metadata.js");
21
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
22
+ var _typeof = require("@babel/runtime/helpers/typeof");
23
+ Object.defineProperty(exports, "__esModule", {
24
+ value: true
25
+ });
26
+ exports.FcrUIMemberSharedDataSourceImpl = void 0;
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.includes.js");
31
+ require("core-js/modules/es.array.iterator.js");
32
+ require("core-js/modules/es.array.map.js");
33
+ require("core-js/modules/es.array.push.js");
34
+ require("core-js/modules/es.map.js");
35
+ require("core-js/modules/es.object.entries.js");
36
+ require("core-js/modules/es.object.to-string.js");
37
+ require("core-js/modules/es.set.js");
38
+ require("core-js/modules/es.string.iterator.js");
39
+ require("core-js/modules/es.weak-map.js");
40
+ require("core-js/modules/esnext.iterator.constructor.js");
41
+ require("core-js/modules/esnext.iterator.filter.js");
42
+ require("core-js/modules/esnext.iterator.find.js");
43
+ require("core-js/modules/esnext.iterator.for-each.js");
44
+ require("core-js/modules/esnext.iterator.map.js");
45
+ require("core-js/modules/esnext.map.delete-all.js");
46
+ require("core-js/modules/esnext.map.emplace.js");
47
+ require("core-js/modules/esnext.map.every.js");
48
+ require("core-js/modules/esnext.map.filter.js");
49
+ require("core-js/modules/esnext.map.find.js");
50
+ require("core-js/modules/esnext.map.find-key.js");
51
+ require("core-js/modules/esnext.map.includes.js");
52
+ require("core-js/modules/esnext.map.key-of.js");
53
+ require("core-js/modules/esnext.map.map-keys.js");
54
+ require("core-js/modules/esnext.map.map-values.js");
55
+ require("core-js/modules/esnext.map.merge.js");
56
+ require("core-js/modules/esnext.map.reduce.js");
57
+ require("core-js/modules/esnext.map.some.js");
58
+ require("core-js/modules/esnext.map.update.js");
59
+ require("core-js/modules/esnext.set.add-all.js");
60
+ require("core-js/modules/esnext.set.delete-all.js");
61
+ require("core-js/modules/esnext.set.difference.v2.js");
62
+ require("core-js/modules/esnext.set.difference.js");
63
+ require("core-js/modules/esnext.set.every.js");
64
+ require("core-js/modules/esnext.set.filter.js");
65
+ require("core-js/modules/esnext.set.find.js");
66
+ require("core-js/modules/esnext.set.intersection.v2.js");
67
+ require("core-js/modules/esnext.set.intersection.js");
68
+ require("core-js/modules/esnext.set.is-disjoint-from.v2.js");
69
+ require("core-js/modules/esnext.set.is-disjoint-from.js");
70
+ require("core-js/modules/esnext.set.is-subset-of.v2.js");
71
+ require("core-js/modules/esnext.set.is-subset-of.js");
72
+ require("core-js/modules/esnext.set.is-superset-of.v2.js");
73
+ require("core-js/modules/esnext.set.is-superset-of.js");
74
+ require("core-js/modules/esnext.set.join.js");
75
+ require("core-js/modules/esnext.set.map.js");
76
+ require("core-js/modules/esnext.set.reduce.js");
77
+ require("core-js/modules/esnext.set.some.js");
78
+ require("core-js/modules/esnext.set.symmetric-difference.v2.js");
79
+ require("core-js/modules/esnext.set.symmetric-difference.js");
80
+ require("core-js/modules/esnext.set.union.v2.js");
81
+ require("core-js/modules/esnext.set.union.js");
82
+ require("core-js/modules/esnext.weak-map.delete-all.js");
83
+ require("core-js/modules/esnext.weak-map.emplace.js");
84
+ require("core-js/modules/web.dom-collections.for-each.js");
85
+ require("core-js/modules/web.dom-collections.iterator.js");
86
+ require("core-js/modules/web.timers.js");
87
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
88
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
89
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
90
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
91
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
92
+ var _mobx = require("mobx");
93
+ var _memberListDataSource = require("../modules/participant/member-list-data-source");
94
+ var _fcrCore = require("fcr-core");
95
+ var _base = require("../base");
96
+ var _type = require("fcr-core/lib/type");
97
+ var _decorator = require("agora-foundation/lib/decorator");
98
+ var _logger = require("../utilities/logger");
99
+ var _constant = require("../utilities/constant");
100
+ var _FcrUIMemberSharedDataSourceImpl;
101
+ var _initProto, _init__serverPushTotalUserCount, _init__audioVolumeMap, _init__isLocalUserInPstn, _init__interpreterInputLanguageList, _init__localUser, _init_serverPushTotalUserCount, _init_totalUserCount, _init_shareScreenVideoSize, _updateMemberListWithBoardStateDecs, _setIsLocalUserInPstnDecs, _handleAllUserCountUpdatedDecs, _setTotalUserCountDecs, _handleUserInfoUpdatedDecs, _syncParticipantsDecs, _onAudioVolumeUpdatedDecs, _handleRemoteUserJoinedDecs, _handleRemoteUserLeftDecs, _handleStreamsAddedDecs, _handleStreamsUpdatedDecs, _handleStreamsRemovedDecs, _ref;
102
+ 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; }
103
+ 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; }
104
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
105
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
106
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
107
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
108
+ 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"); }
109
+ 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)]; } }; }
110
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
111
+ 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); }
112
+ 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; }
113
+ 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; }
114
+ var _A = /*#__PURE__*/new WeakMap();
115
+ var _B = /*#__PURE__*/new WeakMap();
116
+ var _C = /*#__PURE__*/new WeakMap();
117
+ var _D = /*#__PURE__*/new WeakMap();
118
+ var _E = /*#__PURE__*/new WeakMap();
119
+ var _F = /*#__PURE__*/new WeakMap();
120
+ var _G = /*#__PURE__*/new WeakMap();
121
+ var _H = /*#__PURE__*/new WeakMap();
122
+ _ref = (_updateMemberListWithBoardStateDecs = [_mobx.action, _mobx.action.bound], _setIsLocalUserInPstnDecs = [_mobx.action, _mobx.action.bound], _handleAllUserCountUpdatedDecs = [_mobx.action, _mobx.action.bound], _setTotalUserCountDecs = [_mobx.action, _mobx.action.bound], _handleUserInfoUpdatedDecs = [_mobx.action, _mobx.action.bound], _syncParticipantsDecs = (0, _decorator.debounced)(800), _onAudioVolumeUpdatedDecs = [_mobx.action, _mobx.action.bound], _handleRemoteUserJoinedDecs = [_mobx.action, _mobx.action.bound], _handleRemoteUserLeftDecs = [_mobx.action, _mobx.action.bound], _handleStreamsAddedDecs = [_mobx.action, _mobx.action.bound], _handleStreamsUpdatedDecs = [_mobx.action, _mobx.action.bound], _handleStreamsRemovedDecs = [_mobx.action, _mobx.action.bound], "logger");
123
+ var FcrUIMemberSharedDataSourceImpl = exports.FcrUIMemberSharedDataSourceImpl = /*#__PURE__*/function () {
124
+ function FcrUIMemberSharedDataSourceImpl(_mainRoomUserControl, _streamControl, _sharedScreenShareSharedDataSource, _eventProvider, _whiteBoardControl) {
125
+ var _this = this;
126
+ (0, _classCallCheck2["default"])(this, FcrUIMemberSharedDataSourceImpl);
127
+ (0, _defineProperty2["default"])(this, _ref, (_initProto(this), (0, _logger.createLogger)({
128
+ prefix: 'FcrUIMemberSharedDataSourceImpl'
129
+ })));
130
+ (0, _defineProperty2["default"])(this, "_dataSource", new _memberListDataSource.FcrUIMemberListDataSourceImpl());
131
+ (0, _defineProperty2["default"])(this, "_disposers", []);
132
+ _classPrivateFieldInitSpec(this, _A, _init__serverPushTotalUserCount(this, 1));
133
+ _classPrivateFieldInitSpec(this, _B, _init__audioVolumeMap(this, new Map()));
134
+ _classPrivateFieldInitSpec(this, _C, _init__isLocalUserInPstn(this, false));
135
+ _classPrivateFieldInitSpec(this, _D, _init__interpreterInputLanguageList(this, []));
136
+ _classPrivateFieldInitSpec(this, _E, _init__localUser(this));
137
+ (0, _defineProperty2["default"])(this, "_userObserver", {
138
+ onRemoteUsersJoined: this._handleRemoteUserJoined,
139
+ onRemoteUsersLeft: this._handleRemoteUserLeft,
140
+ onUserInfoUpdated: this._handleUserInfoUpdated,
141
+ onAllUserCountUpdated: this._handleAllUserCountUpdated
142
+ });
143
+ (0, _defineProperty2["default"])(this, "_streamsObserver", {
144
+ onStreamsAdded: this._handleStreamsAdded,
145
+ onStreamsUpdated: this._handleStreamsUpdated,
146
+ onStreamVolumeIndicationUpdated: this._onAudioVolumeUpdated,
147
+ onStreamsRemoved: this._handleStreamsRemoved
148
+ });
149
+ (0, _defineProperty2["default"])(this, "_eventProviderObserver", {
150
+ onEvent: this._handleOnEvent
151
+ });
152
+ (0, _defineProperty2["default"])(this, "_isOnline", true);
153
+ _classPrivateFieldInitSpec(this, _F, _init_serverPushTotalUserCount(this, 1));
154
+ _classPrivateFieldInitSpec(this, _G, _init_totalUserCount(this, 1));
155
+ _classPrivateFieldInitSpec(this, _H, _init_shareScreenVideoSize(this, null));
156
+ this._mainRoomUserControl = _mainRoomUserControl;
157
+ this._streamControl = _streamControl;
158
+ this._sharedScreenShareSharedDataSource = _sharedScreenShareSharedDataSource;
159
+ this._eventProvider = _eventProvider;
160
+ this._whiteBoardControl = _whiteBoardControl;
161
+ this._mainRoomUserControl.addObserver(this._userObserver);
162
+ this._streamControl.addObserver(this._streamsObserver);
163
+ this._eventProvider.addObserver(this._eventProviderObserver);
164
+ this._setTotalUserCount();
165
+ this._initUserList();
166
+ this.updateMemberListWithBoardState();
167
+ this._localUser = this._mainRoomUserControl.getLocalUser();
168
+ this._disposers.push((0, _mobx.reaction)(function () {
169
+ return _this.memberList.length;
170
+ }, function () {
171
+ _this._setTotalUserCount();
172
+ _this._syncParticipants();
173
+ }));
174
+ this._addEventListeners();
175
+ }
176
+ return (0, _createClass2["default"])(FcrUIMemberSharedDataSourceImpl, [{
177
+ key: "_serverPushTotalUserCount",
178
+ get: function get() {
179
+ return _classPrivateFieldGet(_A, this);
180
+ },
181
+ set: function set(v) {
182
+ _classPrivateFieldSet(_A, this, v);
183
+ }
184
+ }, {
185
+ key: "_audioVolumeMap",
186
+ get: function get() {
187
+ return _classPrivateFieldGet(_B, this);
188
+ },
189
+ set: function set(v) {
190
+ _classPrivateFieldSet(_B, this, v);
191
+ }
192
+ }, {
193
+ key: "_isLocalUserInPstn",
194
+ get: function get() {
195
+ return _classPrivateFieldGet(_C, this);
196
+ },
197
+ set: function set(v) {
198
+ _classPrivateFieldSet(_C, this, v);
199
+ }
200
+ }, {
201
+ key: "_interpreterInputLanguageList",
202
+ get: function get() {
203
+ return _classPrivateFieldGet(_D, this);
204
+ },
205
+ set: function set(v) {
206
+ _classPrivateFieldSet(_D, this, v);
207
+ }
208
+ }, {
209
+ key: "_localUser",
210
+ get: function get() {
211
+ return _classPrivateFieldGet(_E, this);
212
+ },
213
+ set: function set(v) {
214
+ _classPrivateFieldSet(_E, this, v);
215
+ }
216
+ }, {
217
+ key: "serverPushTotalUserCount",
218
+ get: function get() {
219
+ return _classPrivateFieldGet(_F, this);
220
+ },
221
+ set: function set(v) {
222
+ _classPrivateFieldSet(_F, this, v);
223
+ }
224
+ }, {
225
+ key: "totalUserCount",
226
+ get: function get() {
227
+ return _classPrivateFieldGet(_G, this);
228
+ },
229
+ set: function set(v) {
230
+ _classPrivateFieldSet(_G, this, v);
231
+ }
232
+ }, {
233
+ key: "shareScreenVideoSize",
234
+ get: function get() {
235
+ return _classPrivateFieldGet(_H, this);
236
+ },
237
+ set: function set(v) {
238
+ _classPrivateFieldSet(_H, this, v);
239
+ }
240
+ }, {
241
+ key: "localUserId",
242
+ get: function get() {
243
+ return this._localUser.userId;
244
+ }
245
+ }, {
246
+ key: "hasOwnPstnStream",
247
+ get: function get() {
248
+ return this._isLocalUserInPstn;
249
+ }
250
+ }, {
251
+ key: "interpreterInputLanguageList",
252
+ get: function get() {
253
+ return this._interpreterInputLanguageList;
254
+ }
255
+ }, {
256
+ key: "audioVolumeMap",
257
+ get: function get() {
258
+ return this._audioVolumeMap;
259
+ }
260
+ }, {
261
+ key: "localUser",
262
+ get: function get() {
263
+ return this._localUser;
264
+ }
265
+ }, {
266
+ key: "localUserRole",
267
+ get: function get() {
268
+ return this._localUser.userRole;
269
+ }
270
+ }, {
271
+ key: "localUserRoleString",
272
+ get: function get() {
273
+ var _FcrUserRoleToStringM;
274
+ return (_FcrUserRoleToStringM = _type.FcrUserRoleToStringMap[this.localUser.userRole]) !== null && _FcrUserRoleToStringM !== void 0 ? _FcrUserRoleToStringM : _type.FcrUserRoleToStringMap[_fcrCore.FcrUserRole.PARTICIPANT];
275
+ }
276
+ }, {
277
+ key: "isLocalUserHost",
278
+ get: function get() {
279
+ return [_fcrCore.FcrUserRole.HOST, _fcrCore.FcrUserRole.COHOST].includes(this.localUserRole);
280
+ }
281
+ }, {
282
+ key: "remoteMembers",
283
+ get: function get() {
284
+ var _this2 = this;
285
+ return this.memberList.filter(function (user) {
286
+ return user.userInfo.userId !== _this2.localUserId;
287
+ });
288
+ }
289
+ }, {
290
+ key: "remoteMembersUserInfosList",
291
+ get: function get() {
292
+ return this.remoteMembers.map(function (memberData) {
293
+ return memberData.userInfo;
294
+ });
295
+ }
296
+ }, {
297
+ key: "memberList",
298
+ get: function get() {
299
+ return this._dataSource.list;
300
+ }
301
+ }, {
302
+ key: "memberUserInfoList",
303
+ get: function get() {
304
+ return this.memberList.map(function (memberData) {
305
+ return memberData.userInfo;
306
+ });
307
+ }
308
+ }, {
309
+ key: "_addEventListeners",
310
+ value: function _addEventListeners() {
311
+ window.addEventListener('online', this._handleOnline);
312
+ window.addEventListener('offline', this._handleOffline);
313
+ }
314
+ }, {
315
+ key: "_removeEventListeners",
316
+ value: function _removeEventListeners() {
317
+ window.removeEventListener('online', this._handleOnline);
318
+ window.removeEventListener('offline', this._handleOffline);
319
+ }
320
+ }, {
321
+ key: "_handleOnEvent",
322
+ value: function _handleOnEvent(action, payload) {
323
+ if (action === _constant.FcrUIAction.ENGINE_RECONNECTED) {
324
+ this.logger.info('sync participants, after engine reconnected');
325
+ this._syncParticipants();
326
+ }
327
+ }
328
+ }, {
329
+ key: "_handleOnline",
330
+ value: function _handleOnline() {
331
+ this._isOnline = true;
332
+ }
333
+ }, {
334
+ key: "_handleOffline",
335
+ value: function _handleOffline() {
336
+ this._isOnline = false;
337
+ }
338
+ }, {
339
+ key: "updateMemberListWithBoardState",
340
+ value: function updateMemberListWithBoardState() {
341
+ var _this3 = this;
342
+ (0, _mobx.runInAction)(function () {
343
+ if (_this3._whiteBoardControl) {
344
+ var isActive = _this3._whiteBoardControl.getActivity();
345
+ var ownerUserId = _this3._whiteBoardControl.getOwnerId();
346
+ _this3._dataSource.list.forEach(function (user) {
347
+ var isBoardActive = isActive && user.userId === ownerUserId;
348
+ user.setUserInfo(_objectSpread(_objectSpread({}, user.userInfo), {}, {
349
+ isBoardActive: isBoardActive
350
+ }));
351
+ });
352
+ _this3._dataSource.list = (0, _toConsumableArray2["default"])(_this3._dataSource.list);
353
+ }
354
+ });
355
+ }
356
+ }, {
357
+ key: "release",
358
+ value: function release() {
359
+ this._disposers.forEach(function (disposer) {
360
+ return disposer();
361
+ });
362
+ this._disposers = [];
363
+ this._removeEventListeners();
364
+ this._eventProvider.removeObserver(this._eventProviderObserver);
365
+ this._mainRoomUserControl.removeObserver(this._userObserver);
366
+ this._streamControl.removeObserver(this._streamsObserver);
367
+ }
368
+ }, {
369
+ key: "_setIsLocalUserInPstn",
370
+ value: function _setIsLocalUserInPstn() {
371
+ var streams = this._streamControl.getStreamsByUserId(this.localUserId);
372
+ var pstnStream = streams.find(function (_ref2) {
373
+ var connectorType = _ref2.connectorType;
374
+ return connectorType === _fcrCore.FcrRoomConnectorType.PSTN;
375
+ });
376
+ this._isLocalUserInPstn = !!pstnStream;
377
+ }
378
+ }, {
379
+ key: "_handleAllUserCountUpdated",
380
+ value: function _handleAllUserCountUpdated(_roomId, count) {
381
+ this._serverPushTotalUserCount = count;
382
+ }
383
+ }, {
384
+ key: "_setTotalUserCount",
385
+ value: function _setTotalUserCount() {
386
+ this.totalUserCount = this._mainRoomUserControl.getAllUserCount();
387
+ }
388
+ }, {
389
+ key: "_initUserList",
390
+ value: function _initUserList() {
391
+ var users = this._mainRoomUserControl.getUsers();
392
+ for (var _i = 0, _Object$entries = Object.entries(users); _i < _Object$entries.length; _i++) {
393
+ var _Object$entries$_i = (0, _slicedToArray2["default"])(_Object$entries[_i], 2),
394
+ userId = _Object$entries$_i[0],
395
+ user = _Object$entries$_i[1];
396
+ this._dataSource.add(user, this._streamControl.getStreamsByUserId(userId), this._mainRoomUserControl.getLocalUser().userId === userId);
397
+ }
398
+ }
399
+ }, {
400
+ key: "_handleUserInfoUpdated",
401
+ value: function _handleUserInfoUpdated(roomId, event) {
402
+ var _this$_sharedScreenSh;
403
+ var targetUser = event.modifiedUser;
404
+ if (event.modifiedUser.userId === this.localUserId) {
405
+ this._localUser = this._mainRoomUserControl.getLocalUser();
406
+ }
407
+ this._dataSource.updateUserInfo(targetUser, true);
408
+ // 共享屏幕
409
+ var isModifiySharingScreenUser = this._sharedScreenShareSharedDataSource.isSharingScreen && ((_this$_sharedScreenSh = this._sharedScreenShareSharedDataSource.screenSharingOwner) === null || _this$_sharedScreenSh === void 0 ? void 0 : _this$_sharedScreenSh.userId) === targetUser.userId;
410
+ if (isModifiySharingScreenUser) {
411
+ this._sharedScreenShareSharedDataSource.setScreenSharingOwner(targetUser);
412
+ }
413
+ this.updateMemberListWithBoardState();
414
+ }
415
+ }, {
416
+ key: "_syncParticipants",
417
+ value: function _syncParticipants() {
418
+ var _this4 = this;
419
+ var syncTimber = setTimeout(function () {
420
+ _this4.logger.warn('[FcrUIMemberSharedDataSourceImpl] _syncParticipants: start sync');
421
+ var mainRoomUsersCount = _this4._mainRoomUserControl.getAllUserCount();
422
+ var pureListLen = _this4.memberList.length;
423
+ if (mainRoomUsersCount !== pureListLen) {
424
+ _this4.logger.warn('[FcrUIMemberSharedDataSourceImpl] _syncParticipants: need sync');
425
+ // 有差异,优先进行以userControl内列表的遍历补充
426
+ var controlUserList = _this4._mainRoomUserControl.getUserList();
427
+ var storeUserListIds = new Set(_this4.memberList.map(function (participant) {
428
+ return participant.userId;
429
+ }));
430
+ controlUserList.forEach(function (userInfo) {
431
+ if (userInfo.userId && !storeUserListIds.has(userInfo.userId)) {
432
+ _this4._dataSource.add(userInfo, _this4._streamControl.getStreamsByUserId(userInfo.userId), userInfo.userId === _this4.localUserId);
433
+ }
434
+ });
435
+ clearTimeout(syncTimber);
436
+ }
437
+ }, 1000);
438
+ }
439
+ }, {
440
+ key: "_onAudioVolumeUpdated",
441
+ value: function _onAudioVolumeUpdated(roomId, streamId, volume) {
442
+ var stream = this._streamControl.getStreamByStreamId(streamId);
443
+ if (!stream) {
444
+ return;
445
+ }
446
+ this._audioVolumeMap.set(stream.owner.userId, Math.floor(volume / 255 * 100));
447
+ }
448
+ }, {
449
+ key: "_handleRemoteUserJoined",
450
+ value: function _handleRemoteUserJoined(roomId, events) {
451
+ var _this5 = this;
452
+ events.forEach(function (event) {
453
+ var userInfo = event.userInfo;
454
+ _this5._dataSource.add(userInfo, _this5._streamControl.getStreamsByUserId(userInfo.userId), userInfo.userId === _this5.localUserId);
455
+ });
456
+ this.updateMemberListWithBoardState();
457
+ }
458
+ }, {
459
+ key: "_handleRemoteUserLeft",
460
+ value: function _handleRemoteUserLeft(roomId, events) {
461
+ var _this6 = this;
462
+ events.forEach(function (event) {
463
+ var userInfo = event.userInfo;
464
+ _this6._dataSource["delete"](userInfo);
465
+ });
466
+ this.updateMemberListWithBoardState();
467
+ }
468
+ }, {
469
+ key: "_handleStreamsAdded",
470
+ value: function _handleStreamsAdded(roomId, events) {
471
+ var _this7 = this;
472
+ (0, _mobx.runInAction)(function () {
473
+ events.forEach(function (e) {
474
+ var modifiedStream = e.modifiedStream;
475
+ _this7._dataSource.updateWithStreamAdd(modifiedStream);
476
+ });
477
+ _this7._setIsLocalUserInPstn();
478
+ });
479
+ }
480
+ }, {
481
+ key: "_handleStreamsUpdated",
482
+ value: function _handleStreamsUpdated(roomId, events) {
483
+ var _this8 = this;
484
+ (0, _mobx.runInAction)(function () {
485
+ events.forEach(function (e) {
486
+ var modifiedStream = e.modifiedStream;
487
+ _this8._dataSource.updateStreamInfo(modifiedStream);
488
+ });
489
+ _this8._setIsLocalUserInPstn();
490
+ });
491
+ }
492
+ }, {
493
+ key: "_handleStreamsRemoved",
494
+ value: function _handleStreamsRemoved(roomId, events) {
495
+ var _this9 = this;
496
+ (0, _mobx.runInAction)(function () {
497
+ events.forEach(function (e) {
498
+ var modifiedStream = e.modifiedStream;
499
+ _this9._dataSource.updateWithStreamRemove(modifiedStream);
500
+ });
501
+ _this9._setIsLocalUserInPstn();
502
+ });
503
+ }
504
+ }]);
505
+ }();
506
+ _FcrUIMemberSharedDataSourceImpl = FcrUIMemberSharedDataSourceImpl;
507
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUIMemberSharedDataSourceImpl, [[_mobx.observable, 1, "_serverPushTotalUserCount"], [_mobx.observable, 1, "_audioVolumeMap"], [_mobx.observable, 1, "_isLocalUserInPstn"], [_mobx.observable, 1, "_interpreterInputLanguageList"], [_mobx.observable, 1, "_localUser"], [_mobx.observable, 1, "serverPushTotalUserCount"], [_mobx.observable, 1, "totalUserCount"], [_mobx.observable, 1, "shareScreenVideoSize"], [_mobx.computed, 3, "hasOwnPstnStream"], [_mobx.computed, 3, "interpreterInputLanguageList"], [_mobx.computed, 3, "audioVolumeMap"], [_mobx.computed, 3, "isLocalUserHost"], [_mobx.computed, 3, "remoteMembers"], [_mobx.computed, 3, "remoteMembersUserInfosList"], [_mobx.computed, 3, "memberUserInfoList"], [_decorator.bound, 2, "_handleOnEvent"], [_decorator.bound, 2, "_handleOnline"], [_decorator.bound, 2, "_handleOffline"], [_updateMemberListWithBoardStateDecs, 18, "updateMemberListWithBoardState"], [_setIsLocalUserInPstnDecs, 18, "_setIsLocalUserInPstn"], [_handleAllUserCountUpdatedDecs, 18, "_handleAllUserCountUpdated"], [_setTotalUserCountDecs, 18, "_setTotalUserCount"], [_handleUserInfoUpdatedDecs, 18, "_handleUserInfoUpdated"], [_syncParticipantsDecs, 2, "_syncParticipants"], [_onAudioVolumeUpdatedDecs, 18, "_onAudioVolumeUpdated"], [_handleRemoteUserJoinedDecs, 18, "_handleRemoteUserJoined"], [_handleRemoteUserLeftDecs, 18, "_handleRemoteUserLeft"], [_handleStreamsAddedDecs, 18, "_handleStreamsAdded"], [_handleStreamsUpdatedDecs, 18, "_handleStreamsUpdated"], [_handleStreamsRemovedDecs, 18, "_handleStreamsRemoved"]], []).e, 9);
508
+ _init__serverPushTotalUserCount = _applyDecs$e[0];
509
+ _init__audioVolumeMap = _applyDecs$e[1];
510
+ _init__isLocalUserInPstn = _applyDecs$e[2];
511
+ _init__interpreterInputLanguageList = _applyDecs$e[3];
512
+ _init__localUser = _applyDecs$e[4];
513
+ _init_serverPushTotalUserCount = _applyDecs$e[5];
514
+ _init_totalUserCount = _applyDecs$e[6];
515
+ _init_shareScreenVideoSize = _applyDecs$e[7];
516
+ _initProto = _applyDecs$e[8];
517
+ (0, _base.registerDependency)('sharedMemberDataSource');
@@ -0,0 +1,13 @@
1
+ import { FcrUIEventProvider } from '../providers/event-provider';
2
+ import { FcrUIVideoWindowDataSource } from './video-window';
3
+ export interface FcrUISharedPinDataSource {
4
+ addPin(streamId: string): void;
5
+ removePin(streamId: string, toastText?: string): void;
6
+ }
7
+ export declare class FcrUISharedPinDataSourceImpl implements FcrUISharedPinDataSource {
8
+ private readonly _eventProvider;
9
+ private readonly _videoWindowDataSource;
10
+ constructor(_eventProvider: FcrUIEventProvider, _videoWindowDataSource: FcrUIVideoWindowDataSource);
11
+ addPin(streamId: string): boolean;
12
+ removePin(streamId: string, toastText?: string): void;
13
+ }
@@ -0,0 +1,111 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.symbol.js");
4
+ require("core-js/modules/es.symbol.description.js");
5
+ require("core-js/modules/es.symbol.to-primitive.js");
6
+ require("core-js/modules/es.error.cause.js");
7
+ require("core-js/modules/es.error.to-string.js");
8
+ require("core-js/modules/es.array.is-array.js");
9
+ require("core-js/modules/es.array.iterator.js");
10
+ require("core-js/modules/es.array.push.js");
11
+ require("core-js/modules/es.date.to-primitive.js");
12
+ require("core-js/modules/es.function.bind.js");
13
+ require("core-js/modules/es.function.name.js");
14
+ require("core-js/modules/es.map.js");
15
+ require("core-js/modules/es.number.constructor.js");
16
+ require("core-js/modules/es.object.create.js");
17
+ require("core-js/modules/es.object.define-property.js");
18
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
19
+ require("core-js/modules/es.string.iterator.js");
20
+ require("core-js/modules/esnext.function.metadata.js");
21
+ require("core-js/modules/esnext.map.delete-all.js");
22
+ require("core-js/modules/esnext.map.emplace.js");
23
+ require("core-js/modules/esnext.map.every.js");
24
+ require("core-js/modules/esnext.map.filter.js");
25
+ require("core-js/modules/esnext.map.find.js");
26
+ require("core-js/modules/esnext.map.find-key.js");
27
+ require("core-js/modules/esnext.map.includes.js");
28
+ require("core-js/modules/esnext.map.key-of.js");
29
+ require("core-js/modules/esnext.map.map-keys.js");
30
+ require("core-js/modules/esnext.map.map-values.js");
31
+ require("core-js/modules/esnext.map.merge.js");
32
+ require("core-js/modules/esnext.map.reduce.js");
33
+ require("core-js/modules/esnext.map.some.js");
34
+ require("core-js/modules/esnext.map.update.js");
35
+ require("core-js/modules/esnext.symbol.metadata.js");
36
+ require("core-js/modules/web.dom-collections.iterator.js");
37
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
38
+ var _typeof = require("@babel/runtime/helpers/typeof");
39
+ Object.defineProperty(exports, "__esModule", {
40
+ value: true
41
+ });
42
+ exports.FcrUISharedPinDataSourceImpl = void 0;
43
+ require("core-js/modules/es.array.find.js");
44
+ require("core-js/modules/es.object.to-string.js");
45
+ require("core-js/modules/esnext.iterator.constructor.js");
46
+ require("core-js/modules/esnext.iterator.find.js");
47
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
48
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
49
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
50
+ var _mobx = require("mobx");
51
+ var _base = require("../base");
52
+ var _i18n = require("agora-ui-foundation/lib/i18n");
53
+ var _type = require("../modules/layout/type");
54
+ var _FcrUISharedPinDataSourceImpl;
55
+ var _initProto, _addPinDecs, _removePinDecs, _ref;
56
+ 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)]; } }; }
57
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
58
+ 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); }
59
+ 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; }
60
+ 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; }
61
+ _ref = (_addPinDecs = [_mobx.action, _mobx.action.bound], _removePinDecs = [_mobx.action, _mobx.action.bound], "addPin");
62
+ var FcrUISharedPinDataSourceImpl = exports.FcrUISharedPinDataSourceImpl = /*#__PURE__*/function () {
63
+ function FcrUISharedPinDataSourceImpl(_eventProvider, _videoWindowDataSource) {
64
+ (0, _classCallCheck2["default"])(this, FcrUISharedPinDataSourceImpl);
65
+ this._eventProvider = _eventProvider;
66
+ this._videoWindowDataSource = _videoWindowDataSource;
67
+ _initProto(this);
68
+ }
69
+ return (0, _createClass2["default"])(FcrUISharedPinDataSourceImpl, [{
70
+ key: _ref,
71
+ value: function value(streamId) {
72
+ if (this._videoWindowDataSource.shouldHideNonVideoParticipants) {
73
+ var stream = this._videoWindowDataSource.mainList.find(function (u) {
74
+ return u.windowId === streamId;
75
+ });
76
+ if (!(stream !== null && stream !== void 0 && stream.hasVideoStream)) {
77
+ this._eventProvider.showToast({
78
+ type: 'error',
79
+ message: (0, _i18n.transI18n)('fmt_internalsetting_other_hide_no_video_pin_cancelled')
80
+ });
81
+ return false;
82
+ }
83
+ }
84
+ var success = this._videoWindowDataSource.addPin(streamId);
85
+ if (success) {
86
+ this._eventProvider.showToast({
87
+ type: 'normal',
88
+ message: (0, _i18n.transI18n)('fmt_settings_tips_screenlocked')
89
+ });
90
+ if (this._videoWindowDataSource.layoutType === _type.FcrUIVideoWindowLayoutType.Gallery) {
91
+ this._videoWindowDataSource.setLayout(_type.FcrUIVideoWindowLayoutType.Speaker);
92
+ }
93
+ }
94
+ return success;
95
+ }
96
+ }, {
97
+ key: "removePin",
98
+ value: function removePin(streamId) {
99
+ var toastText = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : (0, _i18n.transI18n)('fmt_settings_tips_screenunlock');
100
+ this._videoWindowDataSource.removePin(streamId);
101
+ this._eventProvider.showToast({
102
+ type: 'normal',
103
+ message: toastText
104
+ });
105
+ }
106
+ }]);
107
+ }();
108
+ _FcrUISharedPinDataSourceImpl = FcrUISharedPinDataSourceImpl;
109
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUISharedPinDataSourceImpl, [[_addPinDecs, 18, "addPin"], [_removePinDecs, 18, "removePin"]], []).e, 1);
110
+ _initProto = _applyDecs$e[0];
111
+ (0, _base.registerDependency)('sharedPinDataSource');