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
@@ -75,6 +75,7 @@ var FcrUIWindowImpl = exports.FcrUIWindowImpl = /*#__PURE__*/function () {
75
75
  (0, _defineProperty2["default"])(this, "_preventClose", false);
76
76
  (0, _defineProperty2["default"])(this, "_visible", false);
77
77
  (0, _defineProperty2["default"])(this, "_showInactive", false);
78
+ (0, _defineProperty2["default"])(this, "_isClosed", false);
78
79
  // inner state
79
80
  (0, _defineProperty2["default"])(this, "_isBrowserWindowReady", false);
80
81
  (0, _defineProperty2["default"])(this, "_browserWindowListeners", {
@@ -254,7 +255,10 @@ var FcrUIWindowImpl = exports.FcrUIWindowImpl = /*#__PURE__*/function () {
254
255
  }, {
255
256
  key: "close",
256
257
  value: function close() {
257
- this.browserWindow.close();
258
+ this._isClosed = true;
259
+ if (this._isBrowserWindowReady) {
260
+ this.browserWindow.close();
261
+ }
258
262
  }
259
263
  }, {
260
264
  key: "isFullScreen",
@@ -442,6 +446,10 @@ var FcrUIWindowImpl = exports.FcrUIWindowImpl = /*#__PURE__*/function () {
442
446
  key: "_synBrowserWindowStateToInnerState",
443
447
  value: function _synBrowserWindowStateToInnerState() {
444
448
  this.browserWindow.webContents.setBackgroundThrottling(false);
449
+ if (this._isClosed) {
450
+ this.browserWindow.close();
451
+ return;
452
+ }
445
453
  if (this._visible) {
446
454
  this.browserWindowProxy.setPreventClose(this._preventClose);
447
455
  if (this._showInactive) {
@@ -618,8 +618,6 @@ var FcrMainUIScene = exports.FcrMainUIScene = /*#__PURE__*/function (_FcrBaseUIS
618
618
  dialogProvider.closeDialog(_constant.FcrUIDialogKey.REVOKE_HOST);
619
619
  dialogProvider.closeDialog(_constant.FcrUIDialogKey.MUTE_ALL);
620
620
  dialogProvider.closeDialog(_constant.FcrUIDialogKey.CONTROL_BAR_LEAVE_MEETING);
621
- dialogProvider.closeDialog(_constant.FcrUIDialogKey.TOAST);
622
- dialogProvider.closeDialog(_constant.FcrUIDialogKey.CONFIRM);
623
621
  dialogProvider.closeDialog(_constant.FcrUIDialogKey.END_MEETING);
624
622
  dialogProvider.closeAllConfirms();
625
623
  }
@@ -0,0 +1,17 @@
1
+ import { FcrBoardMainWindow } from 'fcr-core/lib/room-control/whiteboard-control/types';
2
+ import { FcrAnnotationState } from '../providers/annotation-provider';
3
+ export interface FcrUISharedAnnotationSource {
4
+ get annotationState(): FcrAnnotationState;
5
+ get annotationHasStart(): boolean;
6
+ get boardMainWindow(): FcrBoardMainWindow | null;
7
+ setAnnotationState(state: FcrAnnotationState): void;
8
+ setBoardMainWindow(mainWindow: FcrBoardMainWindow | null): void;
9
+ }
10
+ export declare class FcrUISharedAnnotationSourceImpl implements FcrUISharedAnnotationSource {
11
+ accessor annotationState: FcrAnnotationState;
12
+ private _boardMainWindow;
13
+ get annotationHasStart(): boolean;
14
+ get boardMainWindow(): FcrBoardMainWindow | null;
15
+ setAnnotationState(state: FcrAnnotationState): void;
16
+ setBoardMainWindow(mainWindow: FcrBoardMainWindow | null): void;
17
+ }
@@ -0,0 +1,110 @@
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.push.js");
10
+ require("core-js/modules/es.date.to-primitive.js");
11
+ require("core-js/modules/es.function.bind.js");
12
+ require("core-js/modules/es.function.name.js");
13
+ require("core-js/modules/es.map.js");
14
+ require("core-js/modules/es.number.constructor.js");
15
+ require("core-js/modules/es.object.create.js");
16
+ require("core-js/modules/es.object.define-property.js");
17
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
18
+ require("core-js/modules/esnext.function.metadata.js");
19
+ require("core-js/modules/esnext.map.delete-all.js");
20
+ require("core-js/modules/esnext.map.emplace.js");
21
+ require("core-js/modules/esnext.map.every.js");
22
+ require("core-js/modules/esnext.map.filter.js");
23
+ require("core-js/modules/esnext.map.find.js");
24
+ require("core-js/modules/esnext.map.find-key.js");
25
+ require("core-js/modules/esnext.map.includes.js");
26
+ require("core-js/modules/esnext.map.key-of.js");
27
+ require("core-js/modules/esnext.map.map-keys.js");
28
+ require("core-js/modules/esnext.map.map-values.js");
29
+ require("core-js/modules/esnext.map.merge.js");
30
+ require("core-js/modules/esnext.map.reduce.js");
31
+ require("core-js/modules/esnext.map.some.js");
32
+ require("core-js/modules/esnext.map.update.js");
33
+ require("core-js/modules/esnext.symbol.metadata.js");
34
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
35
+ var _typeof = require("@babel/runtime/helpers/typeof");
36
+ Object.defineProperty(exports, "__esModule", {
37
+ value: true
38
+ });
39
+ exports.FcrUISharedAnnotationSourceImpl = void 0;
40
+ require("core-js/modules/es.array.iterator.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.weak-map.delete-all.js");
45
+ require("core-js/modules/esnext.weak-map.emplace.js");
46
+ require("core-js/modules/web.dom-collections.iterator.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 _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
51
+ var _base = require("../base");
52
+ var _annotationProvider = require("../providers/annotation-provider");
53
+ var _mobx = require("mobx");
54
+ var _FcrUISharedAnnotationSourceImpl;
55
+ var _initProto, _init_annotationState, _setAnnotationStateDecs, _setBoardMainWindowDecs, _ref;
56
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
57
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
58
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
59
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
60
+ 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"); }
61
+ 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)]; } }; }
62
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
63
+ 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); }
64
+ 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; }
65
+ 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; }
66
+ var _A = /*#__PURE__*/new WeakMap();
67
+ _ref = (_setAnnotationStateDecs = [_mobx.action, _mobx.action.bound], _setBoardMainWindowDecs = [_mobx.action, _mobx.action.bound], "annotationState");
68
+ var FcrUISharedAnnotationSourceImpl = exports.FcrUISharedAnnotationSourceImpl = /*#__PURE__*/function () {
69
+ function FcrUISharedAnnotationSourceImpl() {
70
+ (0, _classCallCheck2["default"])(this, FcrUISharedAnnotationSourceImpl);
71
+ _classPrivateFieldInitSpec(this, _A, (_initProto(this), _init_annotationState(this, _annotationProvider.FcrAnnotationState.END)));
72
+ (0, _defineProperty2["default"])(this, "_boardMainWindow", null);
73
+ }
74
+ return (0, _createClass2["default"])(FcrUISharedAnnotationSourceImpl, [{
75
+ key: _ref,
76
+ get: function get() {
77
+ return _classPrivateFieldGet(_A, this);
78
+ }
79
+ }, {
80
+ key: "annotationState",
81
+ set: function set(v) {
82
+ _classPrivateFieldSet(_A, this, v);
83
+ }
84
+ }, {
85
+ key: "annotationHasStart",
86
+ get: function get() {
87
+ return this.annotationState === _annotationProvider.FcrAnnotationState.START;
88
+ }
89
+ }, {
90
+ key: "boardMainWindow",
91
+ get: function get() {
92
+ return this._boardMainWindow;
93
+ }
94
+ }, {
95
+ key: "setAnnotationState",
96
+ value: function setAnnotationState(state) {
97
+ this.annotationState = state;
98
+ }
99
+ }, {
100
+ key: "setBoardMainWindow",
101
+ value: function setBoardMainWindow(mainWindow) {
102
+ this._boardMainWindow = mainWindow;
103
+ }
104
+ }]);
105
+ }();
106
+ _FcrUISharedAnnotationSourceImpl = FcrUISharedAnnotationSourceImpl;
107
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUISharedAnnotationSourceImpl, [[_mobx.observable, 1, "annotationState"], [_setAnnotationStateDecs, 18, "setAnnotationState"], [_setBoardMainWindowDecs, 18, "setBoardMainWindow"]], []).e, 2);
108
+ _init_annotationState = _applyDecs$e[0];
109
+ _initProto = _applyDecs$e[1];
110
+ (0, _base.registerDependency)('sharedAnnotationDataSource');
@@ -0,0 +1,34 @@
1
+ import { FcrLiveStreamingState, FcrUserRole } from 'fcr-core/lib/type';
2
+ import { FcrUIWebWidgetConfig } from '../type';
3
+ import { FcrUIAbilityProviderImpl } from '../providers/ability-provider';
4
+ import { FcrUIPrivilegeProvider } from '../providers/privilege-provider';
5
+ import { FcrUISharedInterpreterDataSource } from './interpreter';
6
+ import { FcrUIRoomProvider } from '../providers/room-provider';
7
+ import { FcrUIWidgetProvider } from '../providers/widget-provider';
8
+ import { FcrUIMemberSharedDataSource } from './member-data';
9
+ import { ID } from '../modules/widget/type';
10
+ export interface FcrUISharedApplistSource {
11
+ get hasStartLiveStreamingPermission(): boolean;
12
+ get hasEnableInterpreterPermission(): boolean;
13
+ get isInterpreterEnabled(): boolean;
14
+ get liveStreamingState(): FcrLiveStreamingState;
15
+ get widgetConfigs(): FcrUIWebWidgetConfig[];
16
+ get registeredWidgetConfigs(): Map<ID, FcrUIWebWidgetConfig>;
17
+ }
18
+ export declare class FcrUISharedApplistSourceImpl implements FcrUISharedApplistSource {
19
+ private _abilityProvider;
20
+ private _privilegeProvider;
21
+ private _roomProvider;
22
+ private _widgetProvider;
23
+ private _sharedMemberDataSource;
24
+ private _sharedInterpreterDataSource?;
25
+ constructor(_abilityProvider: FcrUIAbilityProviderImpl, _privilegeProvider: FcrUIPrivilegeProvider, _roomProvider: FcrUIRoomProvider, _widgetProvider: FcrUIWidgetProvider, _sharedMemberDataSource: FcrUIMemberSharedDataSource, _sharedInterpreterDataSource?: FcrUISharedInterpreterDataSource | undefined);
26
+ get hasStartLiveStreamingPermission(): boolean;
27
+ get hasEnableInterpreterPermission(): boolean;
28
+ get isInterpreterEnabled(): boolean;
29
+ get liveStreamingState(): FcrLiveStreamingState;
30
+ get localUserRole(): FcrUserRole;
31
+ get widgetConfigs(): FcrUIWebWidgetConfig[];
32
+ get registeredWidgetConfigs(): Map<string, FcrUIWebWidgetConfig>;
33
+ private _checkIsWidgetSupportedRole;
34
+ }
@@ -0,0 +1,133 @@
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.date.to-primitive.js");
11
+ require("core-js/modules/es.function.bind.js");
12
+ require("core-js/modules/es.function.name.js");
13
+ require("core-js/modules/es.map.js");
14
+ require("core-js/modules/es.number.constructor.js");
15
+ require("core-js/modules/es.object.create.js");
16
+ require("core-js/modules/es.object.define-property.js");
17
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
18
+ require("core-js/modules/es.string.iterator.js");
19
+ require("core-js/modules/esnext.function.metadata.js");
20
+ require("core-js/modules/esnext.map.delete-all.js");
21
+ require("core-js/modules/esnext.map.emplace.js");
22
+ require("core-js/modules/esnext.map.every.js");
23
+ require("core-js/modules/esnext.map.filter.js");
24
+ require("core-js/modules/esnext.map.find.js");
25
+ require("core-js/modules/esnext.map.find-key.js");
26
+ require("core-js/modules/esnext.map.includes.js");
27
+ require("core-js/modules/esnext.map.key-of.js");
28
+ require("core-js/modules/esnext.map.map-keys.js");
29
+ require("core-js/modules/esnext.map.map-values.js");
30
+ require("core-js/modules/esnext.map.merge.js");
31
+ require("core-js/modules/esnext.map.reduce.js");
32
+ require("core-js/modules/esnext.map.some.js");
33
+ require("core-js/modules/esnext.map.update.js");
34
+ require("core-js/modules/esnext.symbol.metadata.js");
35
+ require("core-js/modules/web.dom-collections.iterator.js");
36
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
37
+ var _typeof = require("@babel/runtime/helpers/typeof");
38
+ Object.defineProperty(exports, "__esModule", {
39
+ value: true
40
+ });
41
+ exports.FcrUISharedApplistSourceImpl = void 0;
42
+ require("core-js/modules/es.array.for-each.js");
43
+ require("core-js/modules/es.array.includes.js");
44
+ require("core-js/modules/es.array.push.js");
45
+ require("core-js/modules/es.object.to-string.js");
46
+ require("core-js/modules/es.string.includes.js");
47
+ require("core-js/modules/esnext.iterator.constructor.js");
48
+ require("core-js/modules/esnext.iterator.for-each.js");
49
+ require("core-js/modules/web.dom-collections.for-each.js");
50
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
51
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
52
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
53
+ var _mobx = require("mobx");
54
+ var _base = require("../base");
55
+ var _FcrUISharedApplistSourceImpl;
56
+ var _initProto;
57
+ 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)]; } }; }
58
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
59
+ 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); }
60
+ 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; }
61
+ 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; }
62
+ var FcrUISharedApplistSourceImpl = exports.FcrUISharedApplistSourceImpl = /*#__PURE__*/function () {
63
+ function FcrUISharedApplistSourceImpl(_abilityProvider, _privilegeProvider, _roomProvider, _widgetProvider, _sharedMemberDataSource, _sharedInterpreterDataSource) {
64
+ (0, _classCallCheck2["default"])(this, FcrUISharedApplistSourceImpl);
65
+ this._abilityProvider = _abilityProvider;
66
+ this._privilegeProvider = _privilegeProvider;
67
+ this._roomProvider = _roomProvider;
68
+ this._widgetProvider = _widgetProvider;
69
+ this._sharedMemberDataSource = _sharedMemberDataSource;
70
+ this._sharedInterpreterDataSource = _sharedInterpreterDataSource;
71
+ _initProto(this);
72
+ }
73
+ return (0, _createClass2["default"])(FcrUISharedApplistSourceImpl, [{
74
+ key: "hasStartLiveStreamingPermission",
75
+ get: function get() {
76
+ return this._abilityProvider.isLiveSupported() && this._privilegeProvider.hasStartLiveStreamingPermission();
77
+ }
78
+ }, {
79
+ key: "hasEnableInterpreterPermission",
80
+ get: function get() {
81
+ return this._abilityProvider.isInterpreterSupported() && this._privilegeProvider.hasEnableInterpreterPermission();
82
+ }
83
+ }, {
84
+ key: "isInterpreterEnabled",
85
+ get: function get() {
86
+ if (this._sharedInterpreterDataSource) {
87
+ return this._sharedInterpreterDataSource.isInterpreterEnabled;
88
+ } else {
89
+ return false;
90
+ }
91
+ }
92
+ }, {
93
+ key: "liveStreamingState",
94
+ get: function get() {
95
+ return this._roomProvider.liveStreamingState;
96
+ }
97
+ }, {
98
+ key: "localUserRole",
99
+ get: function get() {
100
+ return this._sharedMemberDataSource.localUserRole;
101
+ }
102
+ }, {
103
+ key: "widgetConfigs",
104
+ get: function get() {
105
+ var _this = this;
106
+ var widgetConfigs = [];
107
+ this._widgetProvider.registeredWidgetConfigs.forEach(function (widgetConfig) {
108
+ if (_this._checkIsWidgetSupportedRole(widgetConfig, _this.localUserRole)) {
109
+ widgetConfigs.push(widgetConfig);
110
+ }
111
+ });
112
+ return widgetConfigs;
113
+ }
114
+ }, {
115
+ key: "registeredWidgetConfigs",
116
+ get: function get() {
117
+ return this._widgetProvider.registeredWidgetConfigs;
118
+ }
119
+ }, {
120
+ key: "_checkIsWidgetSupportedRole",
121
+ value: function _checkIsWidgetSupportedRole(widgetConfig, _role) {
122
+ var _widgetConfig$support;
123
+ if (!widgetConfig.supportedRoles || widgetConfig.supportedRoles.length === 0 || (_widgetConfig$support = widgetConfig.supportedRoles) !== null && _widgetConfig$support !== void 0 && _widgetConfig$support.includes(this.localUserRole)) {
124
+ return true;
125
+ }
126
+ return false;
127
+ }
128
+ }]);
129
+ }();
130
+ _FcrUISharedApplistSourceImpl = FcrUISharedApplistSourceImpl;
131
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUISharedApplistSourceImpl, [[_mobx.computed, 3, "hasStartLiveStreamingPermission"], [_mobx.computed, 3, "hasEnableInterpreterPermission"], [_mobx.computed, 3, "widgetConfigs"]], []).e, 1);
132
+ _initProto = _applyDecs$e[0];
133
+ (0, _base.registerDependency)('sharedApplistDataSource');
@@ -0,0 +1,25 @@
1
+ import { FcrChatRoomReceiveMessage, FcrUIChatProvider } from '../providers/chat-provider';
2
+ import { ChatRoomStoreMap } from '../modules/action-bar/types';
3
+ import { FcrUIRoomType } from '../type';
4
+ export interface FcrUISharedChatDataSource {
5
+ get newMessageCount(): ChatRoomStoreMap;
6
+ set newMessageCount(value: ChatRoomStoreMap);
7
+ get latestMessage(): FcrChatRoomReceiveMessage | undefined;
8
+ /**
9
+ * 获取聊天当前tab
10
+ * @returns 聊天当前tab
11
+ */
12
+ get activeTab(): FcrUIRoomType;
13
+ /**
14
+ * 设置聊天当前tab
15
+ */
16
+ set activeTab(roomType: FcrUIRoomType);
17
+ }
18
+ export declare class FcrUISharedChatDataSourceImpl implements FcrUISharedChatDataSource {
19
+ private _chatProvider;
20
+ accessor newMessageCount: ChatRoomStoreMap;
21
+ accessor latestMessage: FcrChatRoomReceiveMessage | undefined;
22
+ accessor activeTab: FcrUIRoomType;
23
+ constructor(_chatProvider: FcrUIChatProvider);
24
+ private _handleNewMessageEvent;
25
+ }
@@ -0,0 +1,139 @@
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.filter.js");
9
+ require("core-js/modules/es.array.for-each.js");
10
+ require("core-js/modules/es.array.is-array.js");
11
+ require("core-js/modules/es.array.push.js");
12
+ require("core-js/modules/es.date.to-primitive.js");
13
+ require("core-js/modules/es.function.bind.js");
14
+ require("core-js/modules/es.function.name.js");
15
+ require("core-js/modules/es.map.js");
16
+ require("core-js/modules/es.object.create.js");
17
+ require("core-js/modules/es.object.define-properties.js");
18
+ require("core-js/modules/es.object.define-property.js");
19
+ require("core-js/modules/es.object.get-own-property-descriptor.js");
20
+ require("core-js/modules/es.object.get-own-property-descriptors.js");
21
+ require("core-js/modules/es.object.keys.js");
22
+ require("core-js/modules/esnext.function.metadata.js");
23
+ require("core-js/modules/esnext.iterator.constructor.js");
24
+ require("core-js/modules/esnext.iterator.filter.js");
25
+ require("core-js/modules/esnext.iterator.for-each.js");
26
+ require("core-js/modules/esnext.map.delete-all.js");
27
+ require("core-js/modules/esnext.map.emplace.js");
28
+ require("core-js/modules/esnext.map.every.js");
29
+ require("core-js/modules/esnext.map.filter.js");
30
+ require("core-js/modules/esnext.map.find.js");
31
+ require("core-js/modules/esnext.map.find-key.js");
32
+ require("core-js/modules/esnext.map.includes.js");
33
+ require("core-js/modules/esnext.map.key-of.js");
34
+ require("core-js/modules/esnext.map.map-keys.js");
35
+ require("core-js/modules/esnext.map.map-values.js");
36
+ require("core-js/modules/esnext.map.merge.js");
37
+ require("core-js/modules/esnext.map.reduce.js");
38
+ require("core-js/modules/esnext.map.some.js");
39
+ require("core-js/modules/esnext.map.update.js");
40
+ require("core-js/modules/esnext.symbol.metadata.js");
41
+ require("core-js/modules/web.dom-collections.for-each.js");
42
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
43
+ var _typeof = require("@babel/runtime/helpers/typeof");
44
+ Object.defineProperty(exports, "__esModule", {
45
+ value: true
46
+ });
47
+ exports.FcrUISharedChatDataSourceImpl = void 0;
48
+ require("core-js/modules/es.array.iterator.js");
49
+ require("core-js/modules/es.number.constructor.js");
50
+ require("core-js/modules/es.object.to-string.js");
51
+ require("core-js/modules/es.string.iterator.js");
52
+ require("core-js/modules/es.weak-map.js");
53
+ require("core-js/modules/esnext.weak-map.delete-all.js");
54
+ require("core-js/modules/esnext.weak-map.emplace.js");
55
+ require("core-js/modules/web.dom-collections.iterator.js");
56
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
57
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
58
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
59
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
60
+ var _mobx = require("mobx");
61
+ var _base = require("../base");
62
+ var _type = require("../type");
63
+ var _FcrUISharedChatDataSourceImpl;
64
+ var _initProto, _init_newMessageCount, _init_latestMessage, _init_activeTab, _handleNewMessageEventDecs, _init__handleNewMessageEvent, _ref;
65
+ 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; }
66
+ 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; }
67
+ function _classPrivateFieldInitSpec(e, t, a) { _checkPrivateRedeclaration(e, t), t.set(e, a); }
68
+ function _checkPrivateRedeclaration(e, t) { if (t.has(e)) throw new TypeError("Cannot initialize the same private elements twice on an object"); }
69
+ function _classPrivateFieldSet(s, a, r) { return s.set(_assertClassBrand(s, a), r), r; }
70
+ function _classPrivateFieldGet(s, a) { return s.get(_assertClassBrand(s, a)); }
71
+ 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"); }
72
+ 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)]; } }; }
73
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
74
+ 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); }
75
+ 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; }
76
+ 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; }
77
+ var _A = /*#__PURE__*/new WeakMap();
78
+ var _B = /*#__PURE__*/new WeakMap();
79
+ var _C = /*#__PURE__*/new WeakMap();
80
+ _ref = (_handleNewMessageEventDecs = [_mobx.action, _mobx.action.bound], "newMessageCount");
81
+ var FcrUISharedChatDataSourceImpl = exports.FcrUISharedChatDataSourceImpl = /*#__PURE__*/function () {
82
+ function FcrUISharedChatDataSourceImpl(_chatProvider) {
83
+ var _this = this;
84
+ (0, _classCallCheck2["default"])(this, FcrUISharedChatDataSourceImpl);
85
+ _classPrivateFieldInitSpec(this, _A, (_initProto(this), _init_newMessageCount(this, (0, _defineProperty2["default"])({}, _type.FcrUIRoomType.MAIN_ROOM, 0))));
86
+ _classPrivateFieldInitSpec(this, _B, _init_latestMessage(this));
87
+ _classPrivateFieldInitSpec(this, _C, _init_activeTab(this, _type.FcrUIRoomType.MAIN_ROOM));
88
+ (0, _defineProperty2["default"])(this, "_handleNewMessageEvent", _init__handleNewMessageEvent(this, function (info) {
89
+ var _msgObj$currentRoomTy;
90
+ var msgObj = _objectSpread({}, _this.newMessageCount);
91
+ var currentRoomType = info.currentRoomType,
92
+ notifyMsgs = info.notifyMsgs;
93
+ var messageCount = notifyMsgs.length;
94
+ var latestMessage = notifyMsgs[messageCount - 1];
95
+ msgObj[currentRoomType] = ((_msgObj$currentRoomTy = msgObj[currentRoomType]) !== null && _msgObj$currentRoomTy !== void 0 ? _msgObj$currentRoomTy : 0) + Number(messageCount);
96
+ _this.newMessageCount = _objectSpread({}, msgObj);
97
+ _this.latestMessage = latestMessage;
98
+ }));
99
+ this._chatProvider = _chatProvider;
100
+ this._chatProvider.addObserver({
101
+ onUnReadMessageUpdated: this._handleNewMessageEvent
102
+ });
103
+ }
104
+ return (0, _createClass2["default"])(FcrUISharedChatDataSourceImpl, [{
105
+ key: _ref,
106
+ get: function get() {
107
+ return _classPrivateFieldGet(_A, this);
108
+ }
109
+ }, {
110
+ key: "newMessageCount",
111
+ set: function set(v) {
112
+ _classPrivateFieldSet(_A, this, v);
113
+ }
114
+ }, {
115
+ key: "latestMessage",
116
+ get: function get() {
117
+ return _classPrivateFieldGet(_B, this);
118
+ },
119
+ set: function set(v) {
120
+ _classPrivateFieldSet(_B, this, v);
121
+ }
122
+ }, {
123
+ key: "activeTab",
124
+ get: function get() {
125
+ return _classPrivateFieldGet(_C, this);
126
+ },
127
+ set: function set(v) {
128
+ _classPrivateFieldSet(_C, this, v);
129
+ }
130
+ }]);
131
+ }();
132
+ _FcrUISharedChatDataSourceImpl = FcrUISharedChatDataSourceImpl;
133
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_FcrUISharedChatDataSourceImpl, [[_mobx.observable, 1, "newMessageCount"], [_mobx.observable, 1, "latestMessage"], [_mobx.observable, 1, "activeTab"], [_handleNewMessageEventDecs, 16, "_handleNewMessageEvent"]], []).e, 5);
134
+ _init_newMessageCount = _applyDecs$e[0];
135
+ _init_latestMessage = _applyDecs$e[1];
136
+ _init_activeTab = _applyDecs$e[2];
137
+ _init__handleNewMessageEvent = _applyDecs$e[3];
138
+ _initProto = _applyDecs$e[4];
139
+ (0, _base.registerDependency)('sharedChatDataSource');
@@ -0,0 +1,35 @@
1
+ import { FcrUISceneConfig, FcrUISceneCreatorConfig } from '../type';
2
+ export interface FcrUISharedConfigDataSource {
3
+ get creatorConfig(): FcrUISceneCreatorConfig;
4
+ get sceneConfig(): FcrUISceneConfig;
5
+ }
6
+ export declare class FcrUISharedConfigDataSourceImpl implements FcrUISharedConfigDataSource {
7
+ private _creatorConfig;
8
+ private _sceneConfig;
9
+ get creatorConfig(): {
10
+ appId: string;
11
+ userId: string;
12
+ token: string;
13
+ resource?: {
14
+ virtualBackgroundImages?: string[] | undefined;
15
+ virtualBackgroundVideos?: string[] | undefined;
16
+ soundEffectAudios?: string[] | undefined;
17
+ } | undefined;
18
+ parameters?: Record<string, unknown> | undefined;
19
+ };
20
+ get sceneConfig(): {
21
+ roomToken: string;
22
+ roomId: string;
23
+ userName: string;
24
+ userRole: import("fcr-core/lib/room-control/user-control/type").FcrUserRole;
25
+ language: string;
26
+ userProperties?: Record<string, unknown> | undefined;
27
+ password?: string | undefined;
28
+ avatar?: string | undefined;
29
+ };
30
+ constructor({ creatorConfig, sceneConfig, }: {
31
+ creatorConfig: FcrUISceneCreatorConfig;
32
+ sceneConfig?: FcrUISceneConfig;
33
+ });
34
+ setParameters(parameters: Record<string, unknown>): void;
35
+ }
@@ -0,0 +1,40 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.FcrUISharedConfigDataSourceImpl = void 0;
9
+ var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
10
+ var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
11
+ var _base = require("../base");
12
+ var _merge = _interopRequireDefault(require("lodash/merge"));
13
+ var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
14
+ var FcrUISharedConfigDataSourceImpl = exports.FcrUISharedConfigDataSourceImpl = /*#__PURE__*/function () {
15
+ function FcrUISharedConfigDataSourceImpl(_ref) {
16
+ var creatorConfig = _ref.creatorConfig,
17
+ _ref$sceneConfig = _ref.sceneConfig,
18
+ sceneConfig = _ref$sceneConfig === void 0 ? {} : _ref$sceneConfig;
19
+ (0, _classCallCheck2["default"])(this, FcrUISharedConfigDataSourceImpl);
20
+ this._creatorConfig = (0, _cloneDeep["default"])(creatorConfig);
21
+ this._sceneConfig = sceneConfig;
22
+ }
23
+ return (0, _createClass2["default"])(FcrUISharedConfigDataSourceImpl, [{
24
+ key: "creatorConfig",
25
+ get: function get() {
26
+ return this._creatorConfig;
27
+ }
28
+ }, {
29
+ key: "sceneConfig",
30
+ get: function get() {
31
+ return this._sceneConfig;
32
+ }
33
+ }, {
34
+ key: "setParameters",
35
+ value: function setParameters(parameters) {
36
+ this._creatorConfig.parameters = (0, _merge["default"])(this._creatorConfig.parameters, parameters);
37
+ }
38
+ }]);
39
+ }();
40
+ (0, _base.registerDependency)('sharedConfigDataSource');