fcr-ui-scene 3.7.2 → 3.7.3

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 (246) hide show
  1. package/lib/creator.js +23 -44
  2. package/lib/electron/app.js +7 -0
  3. package/lib/electron/injections.d.ts +1 -1
  4. package/lib/electron/injections.js +5 -3
  5. package/lib/electron/main.js +3 -1
  6. package/lib/fragments/annotation/index.d.ts +1 -0
  7. package/lib/fragments/annotation/index.js +13 -7
  8. package/lib/fragments/annotation/store.d.ts +8 -4
  9. package/lib/fragments/annotation/store.js +351 -267
  10. package/lib/fragments/annotation/toolbar/components/color-tool/index.js +4 -0
  11. package/lib/fragments/annotation/toolbar/components/graphic-tool/index.js +4 -0
  12. package/lib/fragments/annotation/toolbar/components/item/item.d.ts +2 -0
  13. package/lib/fragments/annotation/toolbar/components/item/item.js +2 -4
  14. package/lib/fragments/annotation/toolbar/components/item/style.css +4 -2
  15. package/lib/fragments/annotation/toolbar/components/pen-tool/index.js +4 -0
  16. package/lib/fragments/annotation/utils.d.ts +1 -0
  17. package/lib/fragments/annotation/utils.js +27 -0
  18. package/lib/fragments/annotation/view.js +1 -6
  19. package/lib/fragments/base.js +5 -3
  20. package/lib/fragments/whiteboard/cursor.css +77 -0
  21. package/lib/fragments/whiteboard/index.d.ts +11 -0
  22. package/lib/fragments/whiteboard/index.js +91 -0
  23. package/lib/fragments/whiteboard/store.d.ts +31 -0
  24. package/lib/fragments/whiteboard/store.js +475 -0
  25. package/lib/fragments/whiteboard/style.css +4 -0
  26. package/lib/fragments/whiteboard/view.d.ts +4 -0
  27. package/lib/fragments/whiteboard/view.js +31 -0
  28. package/lib/index.d.ts +1 -0
  29. package/lib/index.js +1 -0
  30. package/lib/modules/action-bar/components/apps/index.js +15 -5
  31. package/lib/modules/action-bar/components/leave/index.js +4 -11
  32. package/lib/modules/action-bar/view.d.ts +1 -0
  33. package/lib/modules/action-bar/view.js +3 -2
  34. package/lib/modules/annotation/annotation-toolbar-store.d.ts +4 -11
  35. package/lib/modules/annotation/annotation-toolbar-store.js +46 -88
  36. package/lib/modules/annotation/index.d.ts +2 -0
  37. package/lib/modules/annotation/index.js +2 -2
  38. package/lib/modules/annotation/store.d.ts +11 -49
  39. package/lib/modules/annotation/store.js +135 -418
  40. package/lib/modules/annotation/view.js +3 -6
  41. package/lib/modules/components/control-bar/components/loading/index.css +76 -0
  42. package/lib/modules/components/control-bar/components/loading/index.d.ts +8 -0
  43. package/lib/modules/components/control-bar/components/loading/index.js +64 -0
  44. package/lib/modules/components/control-bar/components/loading/loading.png +0 -0
  45. package/lib/modules/components/control-bar/components/progress/index.d.ts +5 -0
  46. package/lib/modules/components/control-bar/components/progress/index.js +43 -0
  47. package/lib/modules/components/control-bar/components/progress/style.css +51 -0
  48. package/lib/modules/components/control-bar/components/switch-theme/index.css +99 -0
  49. package/lib/modules/components/control-bar/components/switch-theme/index.d.ts +9 -0
  50. package/lib/modules/components/control-bar/components/switch-theme/index.js +94 -0
  51. package/lib/modules/components/control-bar/components/switch-theme/item.d.ts +9 -0
  52. package/lib/modules/components/control-bar/components/switch-theme/item.js +54 -0
  53. package/lib/modules/components/control-bar/components/switch-theme/libs.d.ts +4 -0
  54. package/lib/modules/components/control-bar/components/switch-theme/libs.js +31 -0
  55. package/lib/modules/components/control-bar/index.css +87 -0
  56. package/lib/modules/components/control-bar/index.d.ts +20 -0
  57. package/lib/modules/components/control-bar/index.js +276 -0
  58. package/lib/modules/components/leave-meeting/components/index.css +0 -9
  59. package/lib/modules/components/leave-meeting/index.d.ts +2 -1
  60. package/lib/modules/components/leave-meeting/index.js +15 -7
  61. package/lib/modules/components/leave-meeting/portal.d.ts +6 -0
  62. package/lib/modules/components/leave-meeting/portal.js +29 -0
  63. package/lib/modules/components/leave-meeting/style.css +9 -0
  64. package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +5 -2
  65. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +19 -9
  66. package/lib/modules/components/member-window/components/member-actions/components/share-status.js +4 -4
  67. package/lib/modules/components/member-window/components/member-actions/index.js +13 -6
  68. package/lib/modules/components/member-window/components/member-actions/provider.d.ts +1 -0
  69. package/lib/modules/components/member-window/components/member-actions/provider.js +4 -3
  70. package/lib/modules/components/member-window/components/member-actions/store.d.ts +2 -1
  71. package/lib/modules/components/member-window/components/member-actions/store.js +5 -1
  72. package/lib/modules/components/member-window/index.css +4 -0
  73. package/lib/modules/components/member-window/types.d.ts +6 -2
  74. package/lib/modules/components/toolbar/components/capture-tool/index.d.ts +9 -0
  75. package/lib/modules/components/toolbar/components/capture-tool/index.js +68 -0
  76. package/lib/modules/components/toolbar/components/clean-tool/index.d.ts +11 -0
  77. package/lib/modules/components/toolbar/components/clean-tool/index.js +71 -0
  78. package/lib/modules/components/toolbar/components/color-tool/color-panel/index.d.ts +11 -0
  79. package/lib/modules/components/toolbar/components/color-tool/color-panel/index.js +77 -0
  80. package/lib/modules/components/toolbar/components/color-tool/index.d.ts +14 -0
  81. package/lib/modules/components/toolbar/components/color-tool/index.js +66 -0
  82. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/index.d.ts +11 -0
  83. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/index.js +64 -0
  84. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +12 -0
  85. package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.js +65 -0
  86. package/lib/modules/components/toolbar/components/graphic-tool/index.d.ts +15 -0
  87. package/lib/modules/components/toolbar/components/graphic-tool/index.js +82 -0
  88. package/lib/modules/components/toolbar/components/group-tool/index.d.ts +5 -0
  89. package/lib/modules/components/toolbar/components/group-tool/index.js +43 -0
  90. package/lib/modules/components/toolbar/components/icons/fold-icon.d.ts +2 -0
  91. package/lib/modules/components/toolbar/components/icons/fold-icon.js +41 -0
  92. package/lib/modules/components/toolbar/components/icons/move-icon.d.ts +1 -0
  93. package/lib/modules/components/toolbar/components/icons/move-icon.js +66 -0
  94. package/lib/modules/components/toolbar/components/item/index.d.ts +25 -0
  95. package/lib/modules/components/toolbar/components/item/index.js +165 -0
  96. package/lib/modules/components/toolbar/components/item/style.css +94 -0
  97. package/lib/modules/components/toolbar/components/multiple-color-tool/index.d.ts +12 -0
  98. package/lib/modules/components/toolbar/components/multiple-color-tool/index.js +75 -0
  99. package/lib/modules/components/toolbar/components/panel/index.d.ts +9 -0
  100. package/lib/modules/components/toolbar/components/panel/index.js +28 -0
  101. package/lib/modules/components/toolbar/components/panel/style.css +86 -0
  102. package/lib/modules/components/toolbar/components/pen-tool/index.d.ts +13 -0
  103. package/lib/modules/components/toolbar/components/pen-tool/index.js +62 -0
  104. package/lib/modules/components/toolbar/components/pen-tool/pen-panel/index.d.ts +8 -0
  105. package/lib/modules/components/toolbar/components/pen-tool/pen-panel/index.js +39 -0
  106. package/lib/modules/components/toolbar/components/save-draft/index.d.ts +7 -0
  107. package/lib/modules/components/toolbar/components/save-draft/index.js +59 -0
  108. package/lib/modules/components/toolbar/components/vertical-frame/index.d.ts +8 -0
  109. package/lib/modules/components/toolbar/components/vertical-frame/index.js +179 -0
  110. package/lib/modules/components/toolbar/hooks/use-resize-visible.d.ts +4 -0
  111. package/lib/modules/components/toolbar/hooks/use-resize-visible.js +59 -0
  112. package/lib/modules/components/toolbar/index.d.ts +29 -0
  113. package/lib/modules/components/toolbar/index.js +258 -0
  114. package/lib/modules/components/toolbar/style.css +85 -0
  115. package/lib/modules/components/toolbar/types.d.ts +13 -0
  116. package/lib/modules/components/toolbar/types.js +6 -0
  117. package/lib/modules/control-bar/components/more-actions/index.js +0 -6
  118. package/lib/modules/control-bar/components/share-state-nav/index.js +3 -2
  119. package/lib/modules/control-bar/index.js +2 -1
  120. package/lib/modules/control-bar/store.d.ts +7 -6
  121. package/lib/modules/control-bar/store.js +28 -21
  122. package/lib/modules/control-bar/view.js +7 -55
  123. package/lib/modules/dialog/dialogs/control-bar/index.d.ts +1 -0
  124. package/lib/modules/dialog/dialogs/control-bar/index.js +17 -3
  125. package/lib/modules/dialog/dialogs/participant/components/title.js +1 -1
  126. package/lib/modules/dialog/dialogs/sub-window/index.d.ts +2 -0
  127. package/lib/modules/dialog/dialogs/sub-window/index.js +98 -0
  128. package/lib/modules/dialog/dialogs/video-window/index.d.ts +1 -0
  129. package/lib/modules/dialog/dialogs/video-window/index.js +3 -2
  130. package/lib/modules/dialog/dialogs/whiteboard/index.js +0 -1
  131. package/lib/modules/dialog/hooks/use-popover-watcher.js +1 -2
  132. package/lib/modules/dialog/hooks/useElectron.d.ts +13 -0
  133. package/lib/modules/dialog/hooks/useElectron.js +62 -12
  134. package/lib/modules/dialog/index.d.ts +6 -3
  135. package/lib/modules/dialog/index.js +5 -3
  136. package/lib/modules/dialog/store.d.ts +21 -8
  137. package/lib/modules/dialog/store.js +79 -11
  138. package/lib/modules/dialog/type.d.ts +8 -0
  139. package/lib/modules/event-confirm/index.css +5 -2
  140. package/lib/modules/event-confirm/store.js +6 -7
  141. package/lib/modules/event-confirm/view.js +1 -1
  142. package/lib/modules/event-sound/index.d.ts +1 -0
  143. package/lib/modules/event-sound/index.js +11 -24
  144. package/lib/modules/invite/components/pstn-invite.js +0 -1
  145. package/lib/modules/layout/components/CommonVideoRenderer.js +21 -21
  146. package/lib/modules/layout/components/who-is-speaking.js +3 -6
  147. package/lib/modules/layout/index.d.ts +3 -1
  148. package/lib/modules/layout/index.js +2 -1
  149. package/lib/modules/layout/store.d.ts +7 -59
  150. package/lib/modules/layout/store.js +126 -24
  151. package/lib/modules/layout/type.d.ts +55 -0
  152. package/lib/modules/participant/components/can-moveable/index.js +0 -1
  153. package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +4 -2
  154. package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +14 -2
  155. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.d.ts +1 -1
  156. package/lib/modules/participant/components/participants/components/participants/components/user-row/index.js +3 -2
  157. package/lib/modules/participant/components/participants/components/participants/index.js +3 -2
  158. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.d.ts +1 -0
  159. package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.js +3 -1
  160. package/lib/modules/participant/components/participants/components/render-user/components/user-action/index.js +4 -2
  161. package/lib/modules/participant/components/participants/components/render-user/index.d.ts +4 -2
  162. package/lib/modules/participant/components/participants/components/render-user/index.js +5 -3
  163. package/lib/modules/participant/components/participants/index.js +5 -2
  164. package/lib/modules/participant/components/participants/types.d.ts +3 -0
  165. package/lib/modules/participant/index.d.ts +2 -0
  166. package/lib/modules/participant/index.js +2 -1
  167. package/lib/modules/participant/store.d.ts +5 -1
  168. package/lib/modules/participant/store.js +8 -1
  169. package/lib/modules/secondary-window/index.d.ts +49 -0
  170. package/lib/modules/secondary-window/index.js +108 -0
  171. package/lib/modules/secondary-window/store.d.ts +76 -0
  172. package/lib/modules/secondary-window/store.js +407 -0
  173. package/lib/modules/secondary-window/type.d.ts +106 -0
  174. package/lib/modules/secondary-window/type.js +35 -0
  175. package/lib/modules/secondary-window/view.d.ts +6 -0
  176. package/lib/modules/secondary-window/view.js +257 -0
  177. package/lib/modules/setting/general-settings/general-settings.js +9 -0
  178. package/lib/modules/setting/state/index.js +0 -10
  179. package/lib/modules/setting/store.d.ts +1 -0
  180. package/lib/modules/setting/store.js +6 -3
  181. package/lib/modules/share-screen/components/control-bar/index.d.ts +14 -1
  182. package/lib/modules/share-screen/components/control-bar/index.js +17 -12
  183. package/lib/modules/share-screen/components/selection/index.js +10 -15
  184. package/lib/modules/share-screen/index.d.ts +4 -1
  185. package/lib/modules/share-screen/index.js +6 -3
  186. package/lib/modules/share-screen/store.d.ts +9 -9
  187. package/lib/modules/share-screen/store.js +39 -64
  188. package/lib/modules/state-bar/index.d.ts +2 -0
  189. package/lib/modules/state-bar/index.js +2 -1
  190. package/lib/modules/state-bar/live-streaming-state.js +0 -1
  191. package/lib/modules/state-bar/store.d.ts +5 -2
  192. package/lib/modules/state-bar/store.js +14 -7
  193. package/lib/modules/state-bar/view.js +3 -3
  194. package/lib/modules/video-window/components/members/index.js +7 -12
  195. package/lib/modules/video-window/store.d.ts +1 -0
  196. package/lib/modules/video-window/store.js +5 -0
  197. package/lib/modules/whiteboard/components/toolbar/store.d.ts +2 -2
  198. package/lib/modules/whiteboard/index.d.ts +10 -13
  199. package/lib/modules/whiteboard/index.js +12 -11
  200. package/lib/providers/ability-provider.js +2 -0
  201. package/lib/providers/device-provider.d.ts +6 -3
  202. package/lib/providers/device-provider.js +331 -333
  203. package/lib/providers/multi-display-provider.d.ts +85 -0
  204. package/lib/providers/multi-display-provider.js +581 -0
  205. package/lib/providers/privilege-provider.js +1 -7
  206. package/lib/providers/room-provider.js +7 -1
  207. package/lib/providers/screen-share-provider.d.ts +3 -1
  208. package/lib/providers/screen-share-provider.js +39 -40
  209. package/lib/providers/sharing-provider.d.ts +7 -1
  210. package/lib/providers/sharing-provider.js +32 -3
  211. package/lib/providers/whiteboard-provider.d.ts +24 -0
  212. package/lib/providers/whiteboard-provider.js +127 -0
  213. package/lib/runtime.d.ts +1 -0
  214. package/lib/scenes/main-scene.d.ts +6 -0
  215. package/lib/scenes/main-scene.js +38 -2
  216. package/lib/scenes/waiting-scene.d.ts +0 -2
  217. package/lib/scenes/waiting-scene.js +0 -6
  218. package/lib/shared-data-source/member-data.d.ts +2 -2
  219. package/lib/shared-data-source/screen-share-data.d.ts +6 -0
  220. package/lib/shared-data-source/screen-share-data.js +5 -0
  221. package/lib/shared-data-source/setting.js +2 -1
  222. package/lib/shared-data-source/video-window.js +1 -2
  223. package/lib/shared-data-source/whiteboard-data.d.ts +68 -0
  224. package/lib/shared-data-source/whiteboard-data.js +347 -0
  225. package/lib/translations/enUS.d.ts +1 -0
  226. package/lib/translations/enUS.js +2 -1
  227. package/lib/translations/zhCN.d.ts +1 -0
  228. package/lib/translations/zhCN.js +2 -1
  229. package/lib/ui-scene.d.ts +0 -1
  230. package/lib/ui-scene.js +0 -3
  231. package/lib/utilities/constant.d.ts +4 -2
  232. package/lib/utilities/constant.js +3 -1
  233. package/lib/utilities/debug.d.ts +4 -0
  234. package/lib/utilities/debug.js +40 -0
  235. package/lib/utilities/dialog-utils.js +26 -4
  236. package/lib/utilities/meeting-detail.js +4 -1
  237. package/lib/utilities/renderer-event.d.ts +4 -6
  238. package/lib/utilities/renderer-event.js +23 -43
  239. package/lib/utilities/renderer.d.ts +1 -1
  240. package/lib/utilities/renderer.js +44 -10
  241. package/lib/utilities/shared-storage.d.ts +18 -0
  242. package/lib/utilities/shared-storage.js +63 -0
  243. package/lib/utilities/tools.js +2 -1
  244. package/package.json +5 -6
  245. package/lib/electron/tools.d.ts +0 -5
  246. package/lib/electron/tools.js +0 -62
@@ -0,0 +1,258 @@
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.colors = exports.WhiteboardToolbar = void 0;
9
+ require("core-js/modules/es.array.concat.js");
10
+ require("core-js/modules/es.array.filter.js");
11
+ require("core-js/modules/es.object.to-string.js");
12
+ require("core-js/modules/esnext.iterator.constructor.js");
13
+ require("core-js/modules/esnext.iterator.filter.js");
14
+ var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
15
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
16
+ var _enums = require("fcr-core/lib/room-control/whiteboard-control/enums");
17
+ var _item = require("./components/item");
18
+ var _type = require("agora-ui-foundation/lib/components/icon/type");
19
+ var _penTool = require("./components/pen-tool");
20
+ var _graphicTool = require("./components/graphic-tool");
21
+ var _colorTool = require("./components/color-tool");
22
+ var _i18n = require("agora-ui-foundation/lib/i18n");
23
+ var _react = require("react");
24
+ var _multipleColorTool = require("./components/multiple-color-tool");
25
+ var _saveDraft = require("./components/save-draft");
26
+ var _env = require("agora-foundation/lib/utilities/env");
27
+ var _verticalFrame = require("./components/vertical-frame");
28
+ var _cleanTool = require("./components/clean-tool");
29
+ var _captureTool = require("./components/capture-tool");
30
+ require("./style.css");
31
+ var _groupTool = require("./components/group-tool");
32
+ var _jsxRuntime = require("react/jsx-runtime");
33
+ var colors = exports.colors = ['#E2E2E2', '#968D86', '#5A7D75', '#A1C473', '#51BD69', '#50E3C2', '#0E0E0E', '#FFC908', '#CC3100', '#FC3141', '#4262FF', '#7740EC'];
34
+ var WhiteboardToolbar = exports.WhiteboardToolbar = function WhiteboardToolbar(props) {
35
+ var show = props.show,
36
+ currentColor = props.currentColor,
37
+ currentTool = props.currentTool,
38
+ currentShape = props.currentShape,
39
+ currentStrokeWidth = props.currentStrokeWidth,
40
+ redoSteps = props.redoSteps,
41
+ undoSteps = props.undoSteps,
42
+ commonColors = props.commonColors,
43
+ _props$themeColors = props.themeColors,
44
+ themeColors = _props$themeColors === void 0 ? colors : _props$themeColors,
45
+ container = props.container,
46
+ direction = props.direction,
47
+ _props$size = props.size,
48
+ size = _props$size === void 0 ? 28 : _props$size,
49
+ progress = props.progress,
50
+ offsetTop = props.offsetTop,
51
+ undo = props.undo,
52
+ redo = props.redo,
53
+ clean = props.clean,
54
+ setTool = props.setTool,
55
+ setShape = props.setShape,
56
+ setStrokeWidth = props.setStrokeWidth,
57
+ setStrokeColor = props.setStrokeColor,
58
+ setCommonColors = props.setCommonColors,
59
+ onSave = props.onSave,
60
+ setProgress = props.setProgress;
61
+ var t = (0, _i18n.useI18n)();
62
+ var _useState = (0, _react.useState)(false),
63
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
64
+ popoverVisible = _useState2[0],
65
+ setPopoverVisible = _useState2[1];
66
+ var _useState3 = (0, _react.useState)('right'),
67
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
68
+ placement = _useState4[0],
69
+ setPlacement = _useState4[1];
70
+ var _useState5 = (0, _react.useState)(-1),
71
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
72
+ coverCount = _useState6[0],
73
+ setCoverCount = _useState6[1];
74
+ var effects = [coverCount, currentTool, currentColor, currentShape, currentStrokeWidth, commonColors, undoSteps, redoSteps, placement];
75
+ var needHiddenTools = (0, _react.useMemo)(function () {
76
+ return [/*#__PURE__*/(0, _jsxRuntime.jsx)(_graphicTool.AnnotationGraphicTool, {
77
+ size: size,
78
+ placement: placement,
79
+ currentColor: currentColor,
80
+ currentTool: currentTool,
81
+ currentShape: currentShape,
82
+ setShape: setShape,
83
+ setStrokeWidth: setStrokeWidth,
84
+ currentStrokeWidth: currentStrokeWidth,
85
+ setTool: setTool,
86
+ hideTitle: true,
87
+ direction: direction
88
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.AnnotationToolItem, {
89
+ size: size,
90
+ onVisibleChange: function onVisibleChange() {
91
+ return setPopoverVisible(false);
92
+ },
93
+ active: currentTool === _enums.FcrBoardToolType.TEXT,
94
+ onClick: function onClick() {
95
+ return setTool(_enums.FcrBoardToolType.TEXT);
96
+ },
97
+ iconType: _type.FcrIconType.FCR_WHITEBOARD_TEXT,
98
+ title: t('fmt_screenshare_whiteboard_button_text'),
99
+ hideTitle: true,
100
+ placement: placement
101
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.AnnotationToolItem, {
102
+ size: size,
103
+ onVisibleChange: function onVisibleChange() {
104
+ return setPopoverVisible(false);
105
+ },
106
+ active: currentTool === _enums.FcrBoardToolType.HAND,
107
+ onClick: function onClick() {
108
+ return setTool(_enums.FcrBoardToolType.HAND);
109
+ },
110
+ iconType: _type.FcrIconType.FCR_WHITEBOARD_MOVESUBJECTS2,
111
+ title: t('fmt_screenshare_whiteboard_button_dragdrop'),
112
+ hideTitle: true,
113
+ placement: placement
114
+ }), commonColors ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_cleanTool.AnnotationCleanTool, {
115
+ size: size,
116
+ hideTitle: true,
117
+ currentTool: currentTool,
118
+ placement: placement,
119
+ setTool: setTool,
120
+ clean: clean,
121
+ direction: direction
122
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.AnnotationToolItem, {
123
+ size: size,
124
+ onVisibleChange: function onVisibleChange() {
125
+ return setPopoverVisible(false);
126
+ },
127
+ active: currentTool === _enums.FcrBoardToolType.ERASER,
128
+ onClick: function onClick() {
129
+ return setTool(_enums.FcrBoardToolType.ERASER);
130
+ },
131
+ iconType: _type.FcrIconType.FCR_WHITEBOARD_ERASER2,
132
+ title: t('fmt_screenshare_whiteboard_button_eraser'),
133
+ hideTitle: true,
134
+ placement: placement
135
+ }), (0, _env.isElectron)() && commonColors && /*#__PURE__*/(0, _jsxRuntime.jsx)(_captureTool.AnnotationCaptureTool, {
136
+ popoverVisible: popoverVisible,
137
+ setPopoverVisible: setPopoverVisible,
138
+ size: size,
139
+ direction: direction,
140
+ hideTitle: true,
141
+ placement: placement
142
+ }), !commonColors && /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.AnnotationToolItem, {
143
+ size: size,
144
+ onVisibleChange: function onVisibleChange() {
145
+ return setPopoverVisible(false);
146
+ },
147
+ onClick: clean,
148
+ iconType: _type.FcrIconType.FCR_DELETE5,
149
+ title: t('fmt_screenshare_whiteboard_button_empty'),
150
+ hideTitle: true,
151
+ placement: placement
152
+ })].filter(function (item) {
153
+ return !!item;
154
+ });
155
+ }, effects);
156
+ var tools = (0, _react.useCallback)(function () {
157
+ var hiddens = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
158
+ var shows = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];
159
+ return [/*#__PURE__*/(0, _jsxRuntime.jsx)(_item.AnnotationToolItem, {
160
+ size: size,
161
+ active: currentTool === _enums.FcrBoardToolType.LASER_POINTER,
162
+ onClick: function onClick() {
163
+ return setTool(_enums.FcrBoardToolType.LASER_POINTER);
164
+ },
165
+ iconType: _type.FcrIconType.FCR_WHITEBOARD_LASERPEN1,
166
+ color: '#FF0005',
167
+ title: t('fmt_screenshare_whiteboard_button_laserpen'),
168
+ hideTitle: true,
169
+ placement: placement
170
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.AnnotationToolItem, {
171
+ size: size,
172
+ active: currentTool === _enums.FcrBoardToolType.SELECTOR,
173
+ onClick: function onClick() {
174
+ return setTool(_enums.FcrBoardToolType.SELECTOR);
175
+ },
176
+ iconType: _type.FcrIconType.FCR_WHITECHOOSE,
177
+ title: t('fmt_screenshare_whiteboard_button_boxselection'),
178
+ hideTitle: true,
179
+ placement: placement
180
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_penTool.AnnotationPenTool, {
181
+ size: size,
182
+ placement: placement,
183
+ currentColor: currentColor,
184
+ currentTool: currentTool,
185
+ setTool: setTool,
186
+ currentStrokeWidth: currentStrokeWidth,
187
+ setStrokeWidth: setStrokeWidth,
188
+ hideTitle: true,
189
+ direction: direction
190
+ })].concat((0, _toConsumableArray2["default"])(hiddens), [coverCount >= 2 && /*#__PURE__*/(0, _jsxRuntime.jsx)(_groupTool.AnnotationGroupTool, {
191
+ size: size,
192
+ placement: placement,
193
+ children: shows
194
+ }), commonColors ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_multipleColorTool.MultipleColorTool, {
195
+ coverCount: coverCount,
196
+ commonColors: commonColors || [],
197
+ currentColor: currentColor,
198
+ colors: themeColors,
199
+ setStrokeColor: setStrokeColor,
200
+ placement: placement,
201
+ themeColors: themeColors,
202
+ size: 36,
203
+ onContextMenuClick: function onContextMenuClick(colors) {
204
+ return setCommonColors === null || setCommonColors === void 0 ? void 0 : setCommonColors(colors);
205
+ }
206
+ }) : /*#__PURE__*/(0, _jsxRuntime.jsx)(_colorTool.AnnotationColorTool, {
207
+ direction: 'horizontal',
208
+ placement: placement,
209
+ size: 36,
210
+ currentColor: currentColor,
211
+ colors: themeColors,
212
+ setStrokeColor: setStrokeColor,
213
+ hideTitle: true
214
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.AnnotationToolItem, {
215
+ size: size,
216
+ onClick: undo,
217
+ iconType: _type.FcrIconType.FCR_MOBILE_WHITEBOARD_UNDO,
218
+ title: t('fmt_screenshare_whiteboard_button_withdrwa'),
219
+ disabled: !redoSteps,
220
+ hideTitle: true,
221
+ placement: placement
222
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.AnnotationToolItem, {
223
+ size: size,
224
+ onClick: redo,
225
+ iconType: _type.FcrIconType.FCR_MOBILE_WHITEBOARD_REDO,
226
+ title: t('fmt_screenshare_whiteboard_button_forward'),
227
+ disabled: !undoSteps,
228
+ hideTitle: true,
229
+ placement: placement
230
+ }), onSave && /*#__PURE__*/(0, _jsxRuntime.jsx)(_saveDraft.AnnotationToolSaveDraft, {
231
+ progress: progress || 0,
232
+ setProgress: setProgress || function () {},
233
+ onClick: onSave,
234
+ placement: placement
235
+ })]).filter(function (item) {
236
+ return !!item;
237
+ });
238
+ }, effects);
239
+ var length = commonColors ? needHiddenTools.length + 1 : needHiddenTools.length - 1;
240
+ var hiddens = (0, _react.useMemo)(function () {
241
+ return needHiddenTools.filter(function (_, index) {
242
+ return length - index > coverCount;
243
+ });
244
+ }, effects);
245
+ var shows = (0, _react.useMemo)(function () {
246
+ return needHiddenTools.filter(function (_, index) {
247
+ return length - index <= coverCount;
248
+ });
249
+ }, effects);
250
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_verticalFrame.VerticalBar, {
251
+ offsetTop: offsetTop,
252
+ container: container,
253
+ show: show,
254
+ onPlacementChanged: setPlacement,
255
+ onResize: setCoverCount,
256
+ children: tools(hiddens, shows)
257
+ });
258
+ };
@@ -0,0 +1,85 @@
1
+ .fcr-fragment-whiteboard-toolbar {
2
+ width: 48px;
3
+ position: absolute;
4
+ left: 20px;
5
+ top: 20px;
6
+ z-index: 1000;
7
+ background-color: #fff;
8
+ border-radius: 8px;
9
+ box-shadow: var(--fcr_web_light_dropup);
10
+ padding: 6px 0;
11
+ display: flex;
12
+ align-items: center;
13
+ flex-direction: column;
14
+ gap: 6px;
15
+ }
16
+
17
+ .fcr-fragment-board-toolbar-fold {
18
+ position: absolute;
19
+ top: 50%;
20
+ cursor: pointer;
21
+ transition: all 0.2s;
22
+ filter: drop-shadow(2px 0px 1px rgba(0, 0, 0, 0.05));
23
+ opacity: 0;
24
+ }
25
+
26
+ .fcr-fragment-whiteboard-toolbar:hover .fcr-fragment-board-toolbar-fold {
27
+ opacity: 1;
28
+ }
29
+
30
+ .fcr-fragment-board-toolbar-fold--right {
31
+ left: calc(100% - 1px);
32
+ transform: translateY(-50%);
33
+ }
34
+
35
+ .fcr-fragment-board-toolbar-fold--left {
36
+ right: calc(100% - 1px);
37
+ transform: translateY(-50%) rotate(180deg);
38
+ }
39
+
40
+ .fcr-fragment-board-toolbar-fold path:nth-child(1) {
41
+ --fill-color: var(--fcr_ui_scene_white10);
42
+ fill: var(--fill-color);
43
+ }
44
+
45
+ .fcr-fragment-board-toolbar-fold path:nth-child(2) {
46
+ --fill-color: var(--fcr_ui_scene_black8);
47
+ fill: var(--fill-color);
48
+ transition: all 0.2s;
49
+ }
50
+
51
+ .fcr-fragment-board-toolbar-fold:hover path:nth-child(2) {
52
+ fill: var(--fcr_ui_scene_ramp_brand6);
53
+ }
54
+
55
+ .fcr-fragment-board-toobar-folded-button {
56
+ width: 60px;
57
+ height: 60px;
58
+ display: flex;
59
+ align-items: center;
60
+ justify-content: center;
61
+ flex-direction: column;
62
+ background: var(--fcr_ui_scene_white10);
63
+ border-radius: 4px;
64
+ font-size: 12px;
65
+ position: absolute;
66
+ box-shadow: var(--fcr_web_light_dropup);
67
+ cursor: pointer;
68
+ z-index: 100;
69
+ }
70
+
71
+ .fcr-fragment-board-toobar-folded-button svg {
72
+ width: 28px;
73
+ }
74
+
75
+ .fcr-fragment-board-toobar-folded-button path {
76
+ fill: var(--fcr_ui_scene_black8) !important;
77
+ }
78
+
79
+ .fcr-fragment-board-toobar-folded-button:hover {
80
+ color: var(--fcr_ui_scene_ramp_brand6);
81
+ }
82
+
83
+ .fcr-fragment-board-toobar-folded-button:hover path {
84
+ fill: var(--fcr_ui_scene_ramp_brand6) !important;
85
+ }
@@ -0,0 +1,13 @@
1
+ import { FcrBoardShape, FcrBoardToolType } from 'fcr-core/lib/room-control/whiteboard-control/enums';
2
+ export type FcrToolbarState = {
3
+ controlEnable: boolean;
4
+ currentTool: FcrBoardToolType;
5
+ currentStrokeWidth: number;
6
+ currentColor: string;
7
+ currentShape: FcrBoardShape;
8
+ redoSteps: boolean;
9
+ undoSteps: boolean;
10
+ commonColors: string[];
11
+ themeColors: string[];
12
+ progress: number;
13
+ };
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ require("core-js/modules/es.object.define-property.js");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
@@ -41,12 +41,6 @@ var MorePopoverContent = exports.MorePopoverContent = (0, _mobxReact.observer)(f
41
41
  handleLeaveRoom = _useContext.handleLeaveRoom,
42
42
  showToast = _useContext.showToast,
43
43
  newMessageCount = _useContext.newMessageCount,
44
- _useContext$roomInfo = _useContext.roomInfo,
45
- inviteLink = _useContext$roomInfo.inviteLink,
46
- password = _useContext$roomInfo.password,
47
- roomId = _useContext$roomInfo.roomId,
48
- roomName = _useContext$roomInfo.roomName,
49
- userName = _useContext.localUser.userName,
50
44
  isRoomDetailSupported = _useContext.isRoomDetailSupported,
51
45
  roomDetailCopyText = _useContext.roomDetailCopyText;
52
46
  var transI18n = (0, _i18n.useI18n)();
@@ -46,7 +46,8 @@ var ShareStateNav = exports.ShareStateNav = (0, _mobxReact.observer)(function (p
46
46
  isMuteAudio = _useContext.isMuteAudio,
47
47
  cloudRecordingState = _useContext.cloudRecordingState,
48
48
  meetingTime = _useContext.meetingTime,
49
- isCurrentScreenShareInSmoothType = _useContext.isCurrentScreenShareInSmoothType;
49
+ isCurrentScreenShareInSmoothType = _useContext.isCurrentScreenShareInSmoothType,
50
+ isEngineConnected = _useContext.isEngineConnected;
50
51
  var transI18n = (0, _i18n.useI18n)();
51
52
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
52
53
  className: "share-state-nav fcr-flex fcr-items-center \n fcr-justify-center share-action-nav__can-draggable \n ".concat(currentPosition === _enums.TransferPosition.TOP ? 'share-state-nav-top' : 'share-state-nav-bottom'),
@@ -55,7 +56,7 @@ var ShareStateNav = exports.ShareStateNav = (0, _mobxReact.observer)(function (p
55
56
  currentPosition: currentPosition
56
57
  }), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
57
58
  className: "share-state-nav__state-text",
58
- children: transI18n('fmt_settings_tips_sharing')
59
+ children: isEngineConnected ? transI18n('fmt_settings_tips_sharing') : transI18n('fmt_screenshare_toolbar_label_reconnecting')
59
60
  }), isCurrentScreenShareInSmoothType ? /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
60
61
  className: "share-state-nav__meeting-scenario-type",
61
62
  children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
@@ -28,6 +28,7 @@ var _view = require("./view");
28
28
  var _store2 = require("../components/device-control/store");
29
29
  var _constant = require("../../utilities/constant");
30
30
  var _store3 = require("../components/leave-meeting/store");
31
+ var _fcrCore = require("fcr-core");
31
32
  var _jsxRuntime = require("react/jsx-runtime");
32
33
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != _typeof(e) && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t in e) "default" !== _t && {}.hasOwnProperty.call(e, _t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t)) && (i.get || i.set) ? o(f, _t, i) : f[_t] = e[_t]); return f; })(e, t); }
33
34
  function _callSuper(t, o, e) { return o = (0, _getPrototypeOf2["default"])(o), (0, _possibleConstructorReturn2["default"])(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], (0, _getPrototypeOf2["default"])(t).constructor) : o.apply(t, e)); }
@@ -98,7 +99,7 @@ var ControlBarUIModule = exports.ControlBarUIModule = /*#__PURE__*/function (_UI
98
99
  this._store.handlerStopShare();
99
100
  break;
100
101
  case _constant.FcrUIRendererEventAction.FRAGMENT_ANNOTATION_ENGINE_STATE:
101
- this.logger.info("[control-bar] fragment-annotation-engine-state, ".concat(event.payload));
102
+ this.logger.info("[control-bar] fragment-annotation-engine-state, ".concat(_fcrCore.FcrConnectionState[event.payload]));
102
103
  this._store.setFragmentEngineState(event.payload);
103
104
  break;
104
105
  }
@@ -1,4 +1,4 @@
1
- import { AgoraRtcScreenCaptureType, AgoraRtcWindowInfo } from 'agora-rte-sdk/lib/core/rtc/type';
1
+ import { AgoraRtcWindowInfo } from 'agora-rte-sdk/lib/core/rtc/type';
2
2
  import { AudioProcessingChannel } from 'agora-ui-foundation/lib/components/room-screen-share-state-bar/share-audio';
3
3
  import { FcrMainRoomControl } from 'fcr-core/lib/room-control/type';
4
4
  import { FcrConnectionState, FcrLiveStreamingState, FcrRecordingState, FcrRoomInfo } from 'fcr-core/lib/type';
@@ -66,10 +66,9 @@ export default class ControlBarStore {
66
66
  accessor boardOwnerUser: string;
67
67
  accessor currentShareDisplayId: number;
68
68
  accessor fragmentEngineState: FcrConnectionState;
69
- isAnnotationSupported(): boolean;
70
69
  get shareWithAudio(): boolean;
71
70
  get currentShareId(): string;
72
- get currentShareType(): AgoraRtcScreenCaptureType;
71
+ get currentShareType(): import("agora-rte-sdk/lib/core/rtc/type").AgoraRtcScreenCaptureType;
73
72
  get currentShareBounds(): CurrentShareBounds;
74
73
  get privilegeProvider(): FcrUIPrivilegeProvider;
75
74
  get localUser(): import("fcr-core/lib/type").FcrUserInfo;
@@ -82,14 +81,13 @@ export default class ControlBarStore {
82
81
  y: number;
83
82
  };
84
83
  get hasSecurityPermission(): boolean;
85
- get hasStartCloudRecordingPermission(): boolean;
86
- get hasStopLiveStreamingPermission(): boolean;
87
84
  get hasGetLiveStreamingUrlPermission(): boolean;
85
+ get hasStartCloudRecordingPermission(): boolean;
88
86
  get hasStartLiveStreamingPermission(): boolean;
89
87
  get hasAssignHostBeforeLeavingPermission(): boolean;
88
+ get isEngineConnected(): boolean;
90
89
  get hasEndRoomPermission(): boolean;
91
90
  get hasAnnotationAllowWritePermission(): boolean;
92
- get hasAnnotationWritePermission(): boolean;
93
91
  get allowAnnotationWriteState(): boolean;
94
92
  get totalHourText(): string;
95
93
  get totalMinuteText(): string;
@@ -114,6 +112,9 @@ export default class ControlBarStore {
114
112
  x: number;
115
113
  y: number;
116
114
  };
115
+ get annotationButtonVisible(): boolean;
116
+ get liveStreamingButtonVisible(): boolean;
117
+ get recordingButtonVisible(): boolean;
117
118
  constructor({ uiEventStore, securityStore, roomControl, deviceProvider, sharedLayoutDataSource, roomProvider, sharedChatDataSource, sharedMemberDataSource, localStorageProvider, abilityProvider, sharedMeetingTimeDataSource, messageProvider, sharedSecuritySharedDataSource, annotationProvider, sharingProvider, screenShareProvider, sharedScreenShareSharedDataSource, dialogProvider, sharedConfirmDataSource, }: {
118
119
  uiEventStore: FcrUIEventProvider;
119
120
  securityStore: FcrUIPrivilegeProvider;
@@ -67,6 +67,7 @@ var _leaveMeeting = require("../components/leave-meeting");
67
67
  var _type3 = require("../../type");
68
68
  var _i18n = require("agora-ui-foundation/lib/i18n");
69
69
  var _logger = require("../../utilities/logger");
70
+ var _sharedStorage = require("../../utilities/shared-storage");
70
71
  var _jsxRuntime = require("react/jsx-runtime");
71
72
  var _ControlBarStore;
72
73
  var _initProto, _leaveConfirmRefDecs, _init_leaveConfirmRef, _init_recordShareBounds, _init_cloudRecordingState, _init_isHost, _init_roomDuration, _init_startTime, _init_playUrl, _init_liveStreamingState, _init_allApplicationWindows, _init_roomInfo, _init_isShowMeetingDetailPortal, _init_hiddenShareActionNav, _init_boardOwnerUser, _init_currentShareDisplayId, _init_fragmentEngineState, _setCheckedStateMapDecs, _setShareWithAudioStateDecs, _showLockedRoomToastDecs, _createNewShareDecs, _handlerStopShareDecs, _setShareAudioProcessingChannelDecs, _setFragmentEngineStateDecs, _handleMoreClickDecs, _pauseCloudRecordingDecs, _resumeCloudRecordingDecs, _stopCloudRecordingDecs, _showToastDecs, _setShowMeetingDetailPortalDecs, _setEnableWaitingRoomDecs, _handleLeaveRoomDecs, _resetMessageCountDecs, _ref;
@@ -174,7 +175,7 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
174
175
  _classPrivateFieldInitSpec(this, _L, _init_hiddenShareActionNav(this, false));
175
176
  _classPrivateFieldInitSpec(this, _M, _init_boardOwnerUser(this, ''));
176
177
  _classPrivateFieldInitSpec(this, _N, _init_currentShareDisplayId(this, 0));
177
- _classPrivateFieldInitSpec(this, _O, _init_fragmentEngineState(this, _type2.FcrConnectionState.DISCONNECTED));
178
+ _classPrivateFieldInitSpec(this, _O, _init_fragmentEngineState(this));
178
179
  this._uiEventStore = uiEventStore;
179
180
  this._roomControl = roomControl;
180
181
  this._securityStore = securityStore;
@@ -218,6 +219,7 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
218
219
  };
219
220
  roomControl.addObserver(this._roomObserver);
220
221
  roomControl.getSharingControl().getBoardControl().addObserver(this._boardObserver);
222
+ this.fragmentEngineState = (0, _sharedStorage.getAnnotationEngineState)();
221
223
  }
222
224
  return (0, _createClass2["default"])(ControlBarStore, [{
223
225
  key: "leaveConfirmRef",
@@ -339,11 +341,6 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
339
341
  set: function set(v) {
340
342
  _classPrivateFieldSet(_O, this, v);
341
343
  }
342
- }, {
343
- key: "isAnnotationSupported",
344
- value: function isAnnotationSupported() {
345
- return this._abilityProvider.isAnnotationSupported();
346
- }
347
344
  }, {
348
345
  key: "shareWithAudio",
349
346
  get: function get() {
@@ -390,19 +387,14 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
390
387
  return this._securityStore.hasSecurityPermission;
391
388
  }
392
389
  }, {
393
- key: "hasStartCloudRecordingPermission",
394
- get: function get() {
395
- return this._securityStore.hasStartCloudRecordingPermission();
396
- }
397
- }, {
398
- key: "hasStopLiveStreamingPermission",
390
+ key: "hasGetLiveStreamingUrlPermission",
399
391
  get: function get() {
400
- return this._securityStore.hasStopLiveStreamingPermission();
392
+ return this._securityStore.hasGetLiveStreamingLinkPermission();
401
393
  }
402
394
  }, {
403
- key: "hasGetLiveStreamingUrlPermission",
395
+ key: "hasStartCloudRecordingPermission",
404
396
  get: function get() {
405
- return this._securityStore.hasGetLiveStreamingLinkPermission();
397
+ return this._securityStore.hasStartCloudRecordingPermission();
406
398
  }
407
399
  }, {
408
400
  key: "hasStartLiveStreamingPermission",
@@ -414,6 +406,11 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
414
406
  get: function get() {
415
407
  return this._securityStore.hasAssignHostBeforeLeavingPermission(_fcrCore.FcrPrivilegeUserRole.HOST);
416
408
  }
409
+ }, {
410
+ key: "isEngineConnected",
411
+ get: function get() {
412
+ return this._sharedScreenShareSharedDataSource.isEngineConnected;
413
+ }
417
414
  }, {
418
415
  key: "hasEndRoomPermission",
419
416
  get: function get() {
@@ -424,11 +421,6 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
424
421
  get: function get() {
425
422
  return this._securityStore.hasAnnotationAllowWritePermission();
426
423
  }
427
- }, {
428
- key: "hasAnnotationWritePermission",
429
- get: function get() {
430
- return this._securityStore.hasAnnotationWritePermission();
431
- }
432
424
  }, {
433
425
  key: "allowAnnotationWriteState",
434
426
  get: function get() {
@@ -535,6 +527,21 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
535
527
  get: function get() {
536
528
  return this._sharedConfirmDataSource.position;
537
529
  }
530
+ }, {
531
+ key: "annotationButtonVisible",
532
+ get: function get() {
533
+ return this._securityStore.hasAnnotationWritePermission() && this._abilityProvider.isAnnotationSupported() && this.fragmentEngineState === _type2.FcrConnectionState.CONNECTED;
534
+ }
535
+ }, {
536
+ key: "liveStreamingButtonVisible",
537
+ get: function get() {
538
+ return this._securityStore.hasStopLiveStreamingPermission() && this.liveStreamingState === _type2.FcrLiveStreamingState.STARTED;
539
+ }
540
+ }, {
541
+ key: "recordingButtonVisible",
542
+ get: function get() {
543
+ return this._securityStore.hasStartCloudRecordingPermission() && this.cloudRecordingState !== _type2.FcrRecordingState.Stopped;
544
+ }
538
545
  }, {
539
546
  key: "setCheckedStateMap",
540
547
  value: function setCheckedStateMap(val) {
@@ -767,7 +774,7 @@ var ControlBarStore = exports["default"] = /*#__PURE__*/function () {
767
774
  }]);
768
775
  }();
769
776
  _ControlBarStore = ControlBarStore;
770
- var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_ControlBarStore, [[_leaveConfirmRefDecs, 17, "leaveConfirmRef"], [_mobx.observable, 1, "recordShareBounds"], [_mobx.observable, 1, "cloudRecordingState"], [_mobx.observable, 1, "isHost"], [_mobx.observable, 1, "roomDuration"], [_mobx.observable, 1, "startTime"], [_mobx.observable, 1, "playUrl"], [_mobx.observable, 1, "liveStreamingState"], [_mobx.observable, 1, "allApplicationWindows"], [_mobx.observable, 1, "roomInfo"], [_mobx.observable, 1, "isShowMeetingDetailPortal"], [_mobx.observable, 1, "hiddenShareActionNav"], [_mobx.observable, 1, "boardOwnerUser"], [_mobx.observable, 1, "currentShareDisplayId"], [_mobx.observable, 1, "fragmentEngineState"], [_decorator.bound, 2, "isAnnotationSupported"], [_mobx.computed, 3, "hasSecurityPermission"], [_mobx.computed, 3, "hasStartCloudRecordingPermission"], [_mobx.computed, 3, "hasStopLiveStreamingPermission"], [_mobx.computed, 3, "hasGetLiveStreamingUrlPermission"], [_mobx.computed, 3, "hasStartLiveStreamingPermission"], [_mobx.computed, 3, "hasAssignHostBeforeLeavingPermission"], [_mobx.computed, 3, "hasEndRoomPermission"], [_mobx.computed, 3, "hasAnnotationAllowWritePermission"], [_mobx.computed, 3, "allowAnnotationWriteState"], [_mobx.computed, 3, "totalHourText"], [_mobx.computed, 3, "totalMinuteText"], [_mobx.computed, 3, "meetingTimeStatus"], [_mobx.computed, 3, "meetingTime"], [_mobx.computed, 3, "meetingTimeKey"], [_mobx.computed, 3, "roomId"], [_mobx.computed, 3, "meetingId"], [_mobx.computed, 3, "checkedStateMap"], [_setCheckedStateMapDecs, 18, "setCheckedStateMap"], [_setShareWithAudioStateDecs, 18, "setShareWithAudioState"], [_showLockedRoomToastDecs, 18, "showLockedRoomToast"], [_createNewShareDecs, 18, "createNewShare"], [_handlerStopShareDecs, 18, "handlerStopShare"], [_setShareAudioProcessingChannelDecs, 18, "setShareAudioProcessingChannel"], [_setFragmentEngineStateDecs, 18, "setFragmentEngineState"], [_handleMoreClickDecs, 18, "handleMoreClick"], [_decorator.bound, 2, "openLiveStreamingDialog"], [_pauseCloudRecordingDecs, 2, "pauseCloudRecording"], [_resumeCloudRecordingDecs, 2, "resumeCloudRecording"], [_stopCloudRecordingDecs, 2, "stopCloudRecording"], [_decorator.bound, 2, "startCloudRecording"], [_showToastDecs, 18, "showToast"], [_setShowMeetingDetailPortalDecs, 18, "setShowMeetingDetailPortal"], [_setEnableWaitingRoomDecs, 18, "setEnableWaitingRoom"], [_handleLeaveRoomDecs, 18, "handleLeaveRoom"], [_decorator.bound, 2, "getLocalMeetingTime"], [_decorator.bound, 2, "toggleAnnotation"], [_decorator.bound, 2, "setAllAnnotationWrite"], [_decorator.bound, 2, "log"], [_resetMessageCountDecs, 18, "_resetMessageCount"]], []).e, 16);
777
+ var _applyDecs$e = (0, _slicedToArray2["default"])(_applyDecs(_ControlBarStore, [[_leaveConfirmRefDecs, 17, "leaveConfirmRef"], [_mobx.observable, 1, "recordShareBounds"], [_mobx.observable, 1, "cloudRecordingState"], [_mobx.observable, 1, "isHost"], [_mobx.observable, 1, "roomDuration"], [_mobx.observable, 1, "startTime"], [_mobx.observable, 1, "playUrl"], [_mobx.observable, 1, "liveStreamingState"], [_mobx.observable, 1, "allApplicationWindows"], [_mobx.observable, 1, "roomInfo"], [_mobx.observable, 1, "isShowMeetingDetailPortal"], [_mobx.observable, 1, "hiddenShareActionNav"], [_mobx.observable, 1, "boardOwnerUser"], [_mobx.observable, 1, "currentShareDisplayId"], [_mobx.observable, 1, "fragmentEngineState"], [_mobx.computed, 3, "hasSecurityPermission"], [_mobx.computed, 3, "hasGetLiveStreamingUrlPermission"], [_mobx.computed, 3, "hasStartCloudRecordingPermission"], [_mobx.computed, 3, "hasStartLiveStreamingPermission"], [_mobx.computed, 3, "hasAssignHostBeforeLeavingPermission"], [_mobx.computed, 3, "isEngineConnected"], [_mobx.computed, 3, "hasEndRoomPermission"], [_mobx.computed, 3, "hasAnnotationAllowWritePermission"], [_mobx.computed, 3, "allowAnnotationWriteState"], [_mobx.computed, 3, "totalHourText"], [_mobx.computed, 3, "totalMinuteText"], [_mobx.computed, 3, "meetingTimeStatus"], [_mobx.computed, 3, "meetingTime"], [_mobx.computed, 3, "meetingTimeKey"], [_mobx.computed, 3, "roomId"], [_mobx.computed, 3, "meetingId"], [_mobx.computed, 3, "checkedStateMap"], [_mobx.computed, 3, "annotationButtonVisible"], [_mobx.computed, 3, "liveStreamingButtonVisible"], [_mobx.computed, 3, "recordingButtonVisible"], [_setCheckedStateMapDecs, 18, "setCheckedStateMap"], [_setShareWithAudioStateDecs, 18, "setShareWithAudioState"], [_showLockedRoomToastDecs, 18, "showLockedRoomToast"], [_createNewShareDecs, 18, "createNewShare"], [_handlerStopShareDecs, 18, "handlerStopShare"], [_setShareAudioProcessingChannelDecs, 18, "setShareAudioProcessingChannel"], [_setFragmentEngineStateDecs, 18, "setFragmentEngineState"], [_handleMoreClickDecs, 18, "handleMoreClick"], [_decorator.bound, 2, "openLiveStreamingDialog"], [_pauseCloudRecordingDecs, 2, "pauseCloudRecording"], [_resumeCloudRecordingDecs, 2, "resumeCloudRecording"], [_stopCloudRecordingDecs, 2, "stopCloudRecording"], [_decorator.bound, 2, "startCloudRecording"], [_showToastDecs, 18, "showToast"], [_setShowMeetingDetailPortalDecs, 18, "setShowMeetingDetailPortal"], [_setEnableWaitingRoomDecs, 18, "setEnableWaitingRoom"], [_handleLeaveRoomDecs, 18, "handleLeaveRoom"], [_decorator.bound, 2, "getLocalMeetingTime"], [_decorator.bound, 2, "toggleAnnotation"], [_decorator.bound, 2, "setAllAnnotationWrite"], [_decorator.bound, 2, "log"], [_resetMessageCountDecs, 18, "_resetMessageCount"]], []).e, 16);
771
778
  _init_leaveConfirmRef = _applyDecs$e[0];
772
779
  _init_recordShareBounds = _applyDecs$e[1];
773
780
  _init_cloudRecordingState = _applyDecs$e[2];