fcr-ui-scene 3.6.1 → 3.6.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 (257) hide show
  1. package/lib/creator.d.ts +6 -0
  2. package/lib/creator.js +125 -24
  3. package/lib/electron/app.js +5 -4
  4. package/lib/electron/bootstrap-dev.js +3 -0
  5. package/lib/electron/bootstrap-sdk.js +4 -0
  6. package/lib/electron/injections.d.ts +5 -0
  7. package/lib/electron/injections.js +36 -8
  8. package/lib/electron/ipc/ipc.d.ts +1 -0
  9. package/lib/electron/ipc/ipc.js +4 -0
  10. package/lib/electron/main.js +16 -8
  11. package/lib/electron/plugins/screenshot.js +4 -2
  12. package/lib/electron/preload.js +7 -2
  13. package/lib/electron/window.js +4 -6
  14. package/lib/fragments/annotation/index.d.ts +11 -0
  15. package/lib/fragments/annotation/index.js +121 -0
  16. package/lib/fragments/annotation/libs.d.ts +55 -0
  17. package/lib/fragments/annotation/libs.js +93 -0
  18. package/lib/fragments/annotation/store.d.ts +30 -0
  19. package/lib/fragments/annotation/store.js +565 -0
  20. package/lib/fragments/annotation/view.d.ts +3 -0
  21. package/lib/fragments/annotation/view.js +31 -0
  22. package/lib/fragments/base.d.ts +10 -0
  23. package/lib/fragments/base.js +44 -0
  24. package/lib/modules/action-bar/components/screen-share/submenu.js +7 -6
  25. package/lib/modules/action-bar/index.css +11 -0
  26. package/lib/modules/action-bar/index.d.ts +2 -0
  27. package/lib/modules/action-bar/index.js +1 -0
  28. package/lib/modules/action-bar/store.d.ts +7 -9
  29. package/lib/modules/action-bar/store.js +49 -90
  30. package/lib/modules/annotation/board-cursor.css +76 -0
  31. package/lib/modules/annotation/components/control-bar/index.css +48 -0
  32. package/lib/modules/annotation/components/control-bar/index.d.ts +3 -0
  33. package/lib/modules/annotation/components/control-bar/index.js +141 -0
  34. package/lib/modules/annotation/components/toolbar/components/color-tool/color-panel/index.d.ts +3 -0
  35. package/lib/modules/annotation/components/toolbar/components/color-tool/color-panel/index.js +46 -0
  36. package/lib/modules/annotation/components/toolbar/components/color-tool/index.d.ts +1 -0
  37. package/lib/modules/annotation/components/toolbar/components/color-tool/index.js +52 -0
  38. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/index.d.ts +3 -0
  39. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/index.js +61 -0
  40. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +12 -0
  41. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.js +65 -0
  42. package/lib/modules/annotation/components/toolbar/components/graphic-tool/index.d.ts +1 -0
  43. package/lib/modules/annotation/components/toolbar/components/graphic-tool/index.js +68 -0
  44. package/lib/modules/annotation/components/toolbar/components/item/item.d.ts +18 -0
  45. package/lib/modules/annotation/components/toolbar/components/item/item.js +116 -0
  46. package/lib/modules/annotation/components/toolbar/components/item/style.css +43 -0
  47. package/lib/modules/annotation/components/toolbar/components/panel/index.d.ts +5 -0
  48. package/lib/modules/annotation/components/toolbar/components/panel/index.js +22 -0
  49. package/lib/modules/annotation/components/toolbar/components/panel/style.css +24 -0
  50. package/lib/modules/annotation/components/toolbar/components/pen-tool/index.d.ts +1 -0
  51. package/lib/modules/annotation/components/toolbar/components/pen-tool/index.js +58 -0
  52. package/lib/modules/annotation/components/toolbar/components/pen-tool/pen-panel/index.d.ts +3 -0
  53. package/lib/modules/annotation/components/toolbar/components/pen-tool/pen-panel/index.js +34 -0
  54. package/lib/modules/annotation/components/toolbar/components/tips/index.d.ts +2 -0
  55. package/lib/modules/annotation/components/toolbar/components/tips/index.js +25 -0
  56. package/lib/modules/annotation/components/toolbar/components/tips/style.css +19 -0
  57. package/lib/modules/annotation/components/toolbar/index.d.ts +0 -0
  58. package/lib/modules/annotation/components/toolbar/index.js +1 -0
  59. package/lib/modules/annotation/components/toolbar/store.d.ts +40 -0
  60. package/lib/modules/annotation/components/toolbar/store.js +279 -0
  61. package/lib/modules/annotation/components/toolbar/style.css +55 -0
  62. package/lib/modules/annotation/components/toolbar/view.d.ts +2 -0
  63. package/lib/modules/annotation/components/toolbar/view.js +120 -0
  64. package/lib/modules/annotation/index.d.ts +38 -0
  65. package/lib/modules/annotation/index.js +169 -0
  66. package/lib/modules/annotation/store.d.ts +93 -0
  67. package/lib/modules/annotation/store.js +673 -0
  68. package/lib/modules/annotation/style.css +26 -0
  69. package/lib/modules/annotation/view.d.ts +3 -0
  70. package/lib/modules/annotation/view.js +49 -0
  71. package/lib/modules/chat/view.js +112 -100
  72. package/lib/modules/components/annotation-menu/index.d.ts +7 -0
  73. package/lib/modules/components/annotation-menu/index.js +119 -0
  74. package/lib/modules/components/leave-meeting/components/assign-host.js +26 -23
  75. package/lib/modules/components/member-window/components/member-actions/components/audio-control.d.ts +0 -1
  76. package/lib/modules/components/member-window/components/member-actions/components/audio-control.js +10 -4
  77. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.d.ts +4 -2
  78. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +10 -6
  79. package/lib/modules/components/member-window/components/member-actions/components/icon-status.d.ts +0 -2
  80. package/lib/modules/components/member-window/components/member-actions/components/icon-status.js +3 -4
  81. package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +0 -3
  82. package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +6 -32
  83. package/lib/modules/components/member-window/components/member-actions/components/share-status.js +11 -3
  84. package/lib/modules/components/member-window/components/member-actions/components/user-info.d.ts +0 -1
  85. package/lib/modules/components/member-window/components/member-actions/components/user-info.js +7 -10
  86. package/lib/modules/components/member-window/components/member-actions/components/user-tag.d.ts +0 -1
  87. package/lib/modules/components/member-window/components/member-actions/components/user-tag.js +0 -2
  88. package/lib/modules/components/member-window/components/member-actions/index.js +1 -32
  89. package/lib/modules/components/member-window/components/member-actions/store.d.ts +38 -1
  90. package/lib/modules/components/member-window/components/member-actions/store.js +130 -23
  91. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.d.ts +2 -1
  92. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.js +6 -1
  93. package/lib/modules/components/member-window/components/video-player/index.d.ts +1 -0
  94. package/lib/modules/components/member-window/index.css +37 -0
  95. package/lib/modules/components/member-window/index.d.ts +1 -1
  96. package/lib/modules/components/member-window/index.js +8 -5
  97. package/lib/modules/components/member-window/types.d.ts +2 -0
  98. package/lib/modules/components/security-menu/index.js +7 -6
  99. package/lib/modules/control-bar/components/annotation-button/index.d.ts +1 -0
  100. package/lib/modules/control-bar/components/annotation-button/index.js +59 -0
  101. package/lib/modules/control-bar/index.d.ts +6 -6
  102. package/lib/modules/control-bar/index.js +5 -34
  103. package/lib/modules/control-bar/store.d.ts +27 -13
  104. package/lib/modules/control-bar/store.js +121 -126
  105. package/lib/modules/control-bar/view.js +50 -4
  106. package/lib/modules/dialog/components/annotation-tool/index.d.ts +4 -0
  107. package/lib/modules/dialog/components/annotation-tool/index.js +53 -0
  108. package/lib/modules/dialog/components/chat/index.js +1 -1
  109. package/lib/modules/dialog/components/control-bar/index.d.ts +0 -2
  110. package/lib/modules/dialog/components/control-bar/index.js +1 -3
  111. package/lib/modules/dialog/components/host-area-container/index.d.ts +12 -0
  112. package/lib/modules/dialog/components/host-area-container/index.js +214 -0
  113. package/lib/modules/dialog/components/participant/index.js +1 -1
  114. package/lib/modules/dialog/components/system-preference/index.js +1 -1
  115. package/lib/modules/dialog/components/video-window/index.js +1 -0
  116. package/lib/modules/dialog/hooks/use-popover-watcher.d.ts +14 -0
  117. package/lib/modules/dialog/hooks/use-popover-watcher.js +112 -0
  118. package/lib/modules/dialog/hooks/useElectron.d.ts +1 -0
  119. package/lib/modules/dialog/hooks/useElectron.js +13 -3
  120. package/lib/modules/dialog/index.d.ts +2 -3
  121. package/lib/modules/dialog/index.js +3 -26
  122. package/lib/modules/dialog/store.d.ts +14 -9
  123. package/lib/modules/dialog/store.js +56 -50
  124. package/lib/modules/event-confirm/components/window/index.d.ts +7 -0
  125. package/lib/modules/event-confirm/components/window/index.js +188 -0
  126. package/lib/modules/event-confirm/index.d.ts +4 -4
  127. package/lib/modules/event-confirm/index.js +6 -4
  128. package/lib/modules/event-confirm/store.d.ts +4 -5
  129. package/lib/modules/event-confirm/store.js +35 -26
  130. package/lib/modules/event-confirm/view.js +23 -171
  131. package/lib/modules/event-sound/index.js +1 -1
  132. package/lib/modules/layout/components/CommonVideoRenderer.js +33 -16
  133. package/lib/modules/layout/index.d.ts +4 -0
  134. package/lib/modules/layout/index.js +2 -0
  135. package/lib/modules/layout/store.d.ts +14 -2
  136. package/lib/modules/layout/store.js +77 -45
  137. package/lib/modules/layout/type.d.ts +7 -0
  138. package/lib/modules/participant/index.d.ts +2 -0
  139. package/lib/modules/participant/index.js +2 -1
  140. package/lib/modules/participant/store.d.ts +5 -2
  141. package/lib/modules/participant/store.js +73 -25
  142. package/lib/modules/setting/audio-settings/audio-settings.js +3 -14
  143. package/lib/modules/setting/index.d.ts +2 -0
  144. package/lib/modules/setting/index.js +3 -3
  145. package/lib/modules/setting/store.d.ts +8 -10
  146. package/lib/modules/setting/store.js +22 -20
  147. package/lib/modules/share-screen/components/selection/index.js +18 -42
  148. package/lib/modules/share-screen/index.d.ts +6 -2
  149. package/lib/modules/share-screen/index.js +4 -2
  150. package/lib/modules/share-screen/store.d.ts +41 -46
  151. package/lib/modules/share-screen/store.js +297 -718
  152. package/lib/modules/share-screen/view.js +2 -2
  153. package/lib/modules/state-bar/assets/fcr_grid_big.svg +1 -1
  154. package/lib/modules/state-bar/assets/fcr_listontop_big.svg +1 -1
  155. package/lib/modules/state-bar/index.css +8 -6
  156. package/lib/modules/state-bar/index.d.ts +4 -0
  157. package/lib/modules/state-bar/index.js +3 -1
  158. package/lib/modules/state-bar/layout-config.d.ts +1 -0
  159. package/lib/modules/state-bar/layout-config.js +15 -5
  160. package/lib/modules/state-bar/store.d.ts +9 -1
  161. package/lib/modules/state-bar/store.js +17 -2
  162. package/lib/modules/state-bar/view.js +9 -4
  163. package/lib/modules/video-window/components/members/index.js +2 -1
  164. package/lib/modules/waiting-room-layout/store.js +1 -1
  165. package/lib/modules/whiteboard/components/control-bar/store.d.ts +5 -1
  166. package/lib/modules/whiteboard/components/control-bar/store.js +10 -1
  167. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/picker.js +16 -5
  168. package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +67 -12
  169. package/lib/modules/whiteboard/components/toolbar/components/expansion/index.js +22 -2
  170. package/lib/modules/whiteboard/components/toolbar/components/history.js +46 -14
  171. package/lib/modules/whiteboard/components/toolbar/components/item/index.js +3 -2
  172. package/lib/modules/whiteboard/components/toolbar/components/move-handle.js +1 -1
  173. package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +58 -16
  174. package/lib/modules/whiteboard/components/toolbar/components/screen-capture-picker.js +15 -4
  175. package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +45 -2
  176. package/lib/modules/whiteboard/components/toolbar/hooks/index.d.ts +14 -0
  177. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +235 -7
  178. package/lib/modules/whiteboard/components/toolbar/index.d.ts +1 -1
  179. package/lib/modules/whiteboard/components/toolbar/index.js +1 -1
  180. package/lib/modules/whiteboard/components/toolbar/store.d.ts +13 -2
  181. package/lib/modules/whiteboard/components/toolbar/store.js +74 -24
  182. package/lib/modules/whiteboard/components/toolbar/{ style.css → style.css} +1 -0
  183. package/lib/modules/whiteboard/index.d.ts +2 -0
  184. package/lib/modules/whiteboard/index.js +22 -21
  185. package/lib/modules/whiteboard/style.css +0 -4
  186. package/lib/modules/whiteboard/view.js +8 -2
  187. package/lib/plugins/browser-runtime-plugin.js +10 -1
  188. package/lib/providers/annotation-provider.d.ts +128 -0
  189. package/lib/providers/annotation-provider.js +421 -0
  190. package/lib/providers/device-provider.d.ts +3 -3
  191. package/lib/providers/device-provider.js +8 -6
  192. package/lib/providers/event-provider.d.ts +3 -3
  193. package/lib/providers/interpreter-provider.d.ts +1 -0
  194. package/lib/providers/interpreter-provider.js +182 -154
  195. package/lib/providers/privilege-provider.d.ts +35 -6
  196. package/lib/providers/privilege-provider.js +105 -49
  197. package/lib/providers/renderer-provider.js +3 -7
  198. package/lib/providers/room-provider.d.ts +13 -1
  199. package/lib/providers/room-provider.js +21 -7
  200. package/lib/providers/screen-share-provider.d.ts +131 -34
  201. package/lib/providers/screen-share-provider.js +554 -173
  202. package/lib/providers/sharing-provider.d.ts +37 -0
  203. package/lib/{shared-data-source/screen-share-data-source.js → providers/sharing-provider.js} +102 -39
  204. package/lib/providers/user-setting-storage-provider.d.ts +20 -0
  205. package/lib/providers/user-setting-storage-provider.js +74 -0
  206. package/lib/runtime.d.ts +6 -1
  207. package/lib/scenes/main-scene.d.ts +7 -2
  208. package/lib/scenes/main-scene.js +55 -27
  209. package/lib/scenes/waiting-scene.d.ts +6 -0
  210. package/lib/scenes/waiting-scene.js +15 -5
  211. package/lib/shared-data-source/config.d.ts +1 -5
  212. package/lib/shared-data-source/config.js +11 -81
  213. package/lib/shared-data-source/member-data.d.ts +21 -5
  214. package/lib/shared-data-source/member-data.js +69 -17
  215. package/lib/shared-data-source/screen-share-data.d.ts +274 -0
  216. package/lib/shared-data-source/screen-share-data.js +390 -0
  217. package/lib/shared-data-source/security-data.d.ts +4 -1
  218. package/lib/shared-data-source/security-data.js +5 -2
  219. package/lib/shared-data-source/setting.d.ts +13 -13
  220. package/lib/shared-data-source/setting.js +16 -10
  221. package/lib/shared-data-source/video-window.d.ts +2 -1
  222. package/lib/shared-data-source/video-window.js +56 -36
  223. package/lib/translations/enUS.d.ts +8 -0
  224. package/lib/translations/enUS.js +9 -1
  225. package/lib/translations/zhCN.d.ts +8 -0
  226. package/lib/translations/zhCN.js +11 -3
  227. package/lib/type.d.ts +55 -1
  228. package/lib/ui-manager.d.ts +3 -2
  229. package/lib/ui-manager.js +6 -4
  230. package/lib/ui-scene.js +70 -50
  231. package/lib/utilities/constant.d.ts +10 -2
  232. package/lib/utilities/constant.js +8 -0
  233. package/lib/utilities/logger.d.ts +4 -0
  234. package/lib/utilities/logger.js +8 -1
  235. package/lib/utilities/renderer-event.d.ts +3 -0
  236. package/lib/utilities/renderer-event.js +14 -1
  237. package/lib/utilities/screen.js +2 -1
  238. package/lib/utilities/setting-config-storage.d.ts +5 -6
  239. package/lib/utilities/setting-config-storage.js +33 -39
  240. package/lib/utilities/tools.d.ts +19 -1
  241. package/lib/utilities/tools.js +51 -4
  242. package/package.json +9 -7
  243. package/public/assets/cursors/fcr_whiteboard_input.ico +0 -0
  244. package/public/assets/cursors/fcr_whiteboard_pen.ico +0 -0
  245. package/public/assets/cursors/fcr_whiteboard_shape_-straightline.ico +0 -0
  246. package/public/assets/cursors/fcr_whiteboard_shape_arrow.ico +0 -0
  247. package/public/assets/cursors/fcr_whiteboard_shape_circle.ico +0 -0
  248. package/public/assets/cursors/fcr_whiteboard_shape_rectangle.ico +0 -0
  249. package/public/assets/cursors/fcr_whiteboard_shape_triangle.ico +0 -0
  250. package/public/assets/fcr_chat_reddot.svg +3 -3
  251. package/public/assets/fcr_grid_big.svg +1 -1
  252. package/public/assets/fcr_leave2.svg +14 -14
  253. package/public/assets/fcr_listontop_big.svg +1 -1
  254. package/public/assets/step-gradient.svg +1 -1
  255. package/public/fragment.html +10 -0
  256. package/public/index.html +3 -1
  257. package/lib/shared-data-source/screen-share-data-source.d.ts +0 -37
@@ -3,6 +3,7 @@
3
3
  require("core-js/modules/es.symbol.js");
4
4
  require("core-js/modules/es.array.filter.js");
5
5
  require("core-js/modules/es.array.for-each.js");
6
+ require("core-js/modules/es.array.iterator.js");
6
7
  require("core-js/modules/es.array.push.js");
7
8
  require("core-js/modules/es.object.define-properties.js");
8
9
  require("core-js/modules/es.object.define-property.js");
@@ -10,13 +11,19 @@ require("core-js/modules/es.object.get-own-property-descriptor.js");
10
11
  require("core-js/modules/es.object.get-own-property-descriptors.js");
11
12
  require("core-js/modules/es.object.keys.js");
12
13
  require("core-js/modules/es.object.to-string.js");
14
+ require("core-js/modules/es.string.iterator.js");
15
+ require("core-js/modules/es.weak-map.js");
13
16
  require("core-js/modules/esnext.async-iterator.filter.js");
14
17
  require("core-js/modules/esnext.async-iterator.for-each.js");
15
18
  require("core-js/modules/esnext.iterator.constructor.js");
16
19
  require("core-js/modules/esnext.iterator.filter.js");
17
20
  require("core-js/modules/esnext.iterator.for-each.js");
21
+ require("core-js/modules/esnext.weak-map.delete-all.js");
22
+ require("core-js/modules/esnext.weak-map.emplace.js");
18
23
  require("core-js/modules/web.dom-collections.for-each.js");
24
+ require("core-js/modules/web.dom-collections.iterator.js");
19
25
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
26
+ var _typeof = require("@babel/runtime/helpers/typeof");
20
27
  Object.defineProperty(exports, "__esModule", {
21
28
  value: true
22
29
  });
@@ -26,11 +33,14 @@ var _icon = require("agora-ui-foundation/lib/components/icon");
26
33
  var _type = require("agora-ui-foundation/lib/components/icon/type");
27
34
  var _popover = require("agora-ui-foundation/lib/components/popover");
28
35
  var _classnames = _interopRequireDefault(require("classnames"));
36
+ var _react = _interopRequireWildcard(require("react"));
29
37
  var _jsxRuntime = require("react/jsx-runtime");
38
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
39
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
30
40
  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; }
31
41
  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; }
32
42
  /** @internal */
33
- var ExpansionToolbarItem = exports.ExpansionToolbarItem = function ExpansionToolbarItem(_ref) {
43
+ var ExpansionToolbarItem = exports.ExpansionToolbarItem = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
34
44
  var tooltip = _ref.tooltip,
35
45
  tooltipPlacement = _ref.tooltipPlacement,
36
46
  popoverContent = _ref.popoverContent,
@@ -48,7 +58,17 @@ var ExpansionToolbarItem = exports.ExpansionToolbarItem = function ExpansionTool
48
58
  var cls = (0, _classnames["default"])('fcr-board-toolbar-item-surrounding', {
49
59
  'fcr-board-toolbar-item-surrounding--active': isActive
50
60
  });
61
+ var popoverRef = (0, _react.useRef)(null);
62
+ (0, _react.useImperativeHandle)(ref, function () {
63
+ return {
64
+ closePopover: function closePopover() {
65
+ var _popoverRef$current;
66
+ (_popoverRef$current = popoverRef.current) === null || _popoverRef$current === void 0 || _popoverRef$current.closePopover();
67
+ }
68
+ };
69
+ });
51
70
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_popover.PopoverWithTooltip, {
71
+ ref: popoverRef,
52
72
  toolTipProps: {
53
73
  placement: tooltipPlacement,
54
74
  content: tooltip
@@ -80,4 +100,4 @@ var ExpansionToolbarItem = exports.ExpansionToolbarItem = function ExpansionTool
80
100
  }, extensionMarkProps))]
81
101
  })
82
102
  });
83
- };
103
+ });
@@ -1,10 +1,12 @@
1
1
  "use strict";
2
2
 
3
3
  require("core-js/modules/es.object.define-property.js");
4
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.UndoItem = exports.RedoItem = void 0;
9
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
8
10
  var _mobxReact = require("mobx-react");
9
11
  var _react = require("react");
10
12
  var _type = require("agora-ui-foundation/lib/components/icon/type");
@@ -19,13 +21,28 @@ var UndoItem = exports.UndoItem = (0, _mobxReact.observer)(function () {
19
21
  toolbarDockPosition = _useContext$observabl.toolbarDockPosition,
20
22
  undo = _useContext.undo;
21
23
  var transI18n = (0, _i18n.useI18n)();
22
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.ToolbarItem, {
23
- tooltipPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
24
- tooltip: transI18n('fmt_screenshare_whiteboard_button_withdrwa'),
25
- icon: _type.FcrIconType.FCR_MOBILE_WHITEBOARD_UNDO,
26
- onClick: undo,
27
- isActive: false,
28
- isDisabled: !undoSteps
24
+ var _useState = (0, _react.useState)(false),
25
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
26
+ isHover = _useState2[0],
27
+ setIsHover = _useState2[1];
28
+ var handleMouseEnter = function handleMouseEnter() {
29
+ setIsHover(true);
30
+ };
31
+ var handleMouseLeave = function handleMouseLeave() {
32
+ setIsHover(false);
33
+ };
34
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
35
+ onMouseEnter: handleMouseEnter,
36
+ onMouseLeave: handleMouseLeave,
37
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.ToolbarItem, {
38
+ tooltipPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
39
+ tooltip: transI18n('fmt_screenshare_whiteboard_button_withdrwa'),
40
+ icon: _type.FcrIconType.FCR_MOBILE_WHITEBOARD_UNDO,
41
+ onClick: undo,
42
+ isActive: false,
43
+ isDisabled: !undoSteps,
44
+ iconColor: isHover ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)'
45
+ })
29
46
  });
30
47
  });
31
48
  var RedoItem = exports.RedoItem = (0, _mobxReact.observer)(function () {
@@ -35,12 +52,27 @@ var RedoItem = exports.RedoItem = (0, _mobxReact.observer)(function () {
35
52
  toolbarDockPosition = _useContext2$observab.toolbarDockPosition,
36
53
  redo = _useContext2.redo;
37
54
  var transI18n = (0, _i18n.useI18n)();
38
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.ToolbarItem, {
39
- tooltipPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
40
- tooltip: transI18n('fmt_screenshare_whiteboard_button_forward'),
41
- icon: _type.FcrIconType.FCR_MOBILE_WHITEBOARD_REDO,
42
- onClick: redo,
43
- isActive: false,
44
- isDisabled: !redoSteps
55
+ var _useState3 = (0, _react.useState)(false),
56
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
57
+ isHover = _useState4[0],
58
+ setIsHover = _useState4[1];
59
+ var handleMouseEnter = function handleMouseEnter() {
60
+ setIsHover(true);
61
+ };
62
+ var handleMouseLeave = function handleMouseLeave() {
63
+ setIsHover(false);
64
+ };
65
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
66
+ onMouseEnter: handleMouseEnter,
67
+ onMouseLeave: handleMouseLeave,
68
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.ToolbarItem, {
69
+ tooltipPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
70
+ tooltip: transI18n('fmt_screenshare_whiteboard_button_forward'),
71
+ icon: _type.FcrIconType.FCR_MOBILE_WHITEBOARD_REDO,
72
+ onClick: redo,
73
+ isActive: false,
74
+ isDisabled: !redoSteps,
75
+ iconColor: isHover ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)'
76
+ })
45
77
  });
46
78
  });
@@ -19,7 +19,8 @@ var ToolbarItem = exports.ToolbarItem = function ToolbarItem(_ref) {
19
19
  className = _ref.className,
20
20
  isActive = _ref.isActive,
21
21
  isDisabled = _ref.isDisabled,
22
- diraction = _ref.diraction;
22
+ diraction = _ref.diraction,
23
+ iconColor = _ref.iconColor;
23
24
  var cls = (0, _classnames["default"])('fcr-board-toolbar-item-surrounding', className, {
24
25
  'fcr-board-toolbar-item-surrounding--active': isActive,
25
26
  'fcr-board-toolbar-item-surrounding--disabled': isDisabled
@@ -34,7 +35,7 @@ var ToolbarItem = exports.ToolbarItem = function ToolbarItem(_ref) {
34
35
  type: icon,
35
36
  size: diraction === 'horizontal' ? 32 : 28,
36
37
  colors: {
37
- iconPrimary: isActive ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)'
38
+ iconPrimary: iconColor ? iconColor : isActive ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)'
38
39
  }
39
40
  })
40
41
  })
@@ -86,7 +86,7 @@ var DraggableWrapper = exports.DraggableWrapper = (0, _mobxReact.observer)(funct
86
86
  var mouseReleaseHandler = function mouseReleaseHandler() {
87
87
  releaseToolbar();
88
88
  };
89
- var dom = window.document.querySelector('.netless-whiteboard-wrapper .fcr-widget-dialog-content');
89
+ var dom = window.document.querySelector('.netless-whiteboard-wrapper');
90
90
  if (dom) {
91
91
  dom.addEventListener('mouseup', mouseReleaseHandler);
92
92
  }
@@ -9,6 +9,7 @@ exports.PenPickerItem = void 0;
9
9
  require("core-js/modules/es.array.map.js");
10
10
  require("core-js/modules/esnext.async-iterator.map.js");
11
11
  require("core-js/modules/esnext.iterator.map.js");
12
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
12
13
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
13
14
  var _react = require("react");
14
15
  var _mobxReact = require("mobx-react");
@@ -29,32 +30,53 @@ var PenPickerItem = exports.PenPickerItem = (0, _mobxReact.observer)(function (_
29
30
  lastPen = _useContext$observabl.lastPen,
30
31
  toolbarDockPosition = _useContext$observabl.toolbarDockPosition,
31
32
  currentColor = _useContext$observabl.currentColor,
33
+ currentStrokeWidth = _useContext$observabl.currentStrokeWidth,
32
34
  setPen = _useContext.setPen;
35
+ var _useState = (0, _react.useState)(false),
36
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
37
+ isHover = _useState2[0],
38
+ setIsHover = _useState2[1];
33
39
  var transI18n = (0, _i18n.useI18n)();
34
40
  var handlePenToolChange = function handlePenToolChange(shapeTool) {
35
41
  return function () {
36
42
  setPen(shapeTool);
37
43
  };
38
44
  };
45
+ var handleMouseEnter = function handleMouseEnter() {
46
+ setIsHover(true);
47
+ };
48
+ var handleMouseLeave = function handleMouseLeave() {
49
+ setIsHover(false);
50
+ };
39
51
  var isActive = currentShape === _type.FcrBoardShape.Curve;
40
52
  var icon = lastPen ? penIconMap[lastPen] : _type2.FcrIconType.FCR_WHITEBOARD_PED3;
41
53
  var clickShape = lastPen ? lastPen : _type.FcrBoardShape.Curve;
42
- return /*#__PURE__*/(0, _jsxRuntime.jsx)(_expansion.ExpansionToolbarItem, {
43
- isActive: isActive,
44
- tooltip: transI18n('fmt_screenshare_whiteboard_button_paintbrush'),
45
- icon: icon,
46
- onClick: handlePenToolChange(clickShape),
47
- tooltipPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
48
- popoverPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
49
- popoverOverlayClassName: "fcr-board-toolbar__picker__overlay",
50
- popoverContent: /*#__PURE__*/(0, _jsxRuntime.jsx)(PenPickerPanel, {}),
51
- popoverOffset: offset,
52
- iconProps: {
53
- colors: {
54
- iconPrimary: isActive ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)',
55
- iconSecondary: currentColor
54
+ var popoverRef = (0, _react.useRef)(null);
55
+ (0, _react.useEffect)(function () {
56
+ var _popoverRef$current;
57
+ (_popoverRef$current = popoverRef.current) === null || _popoverRef$current === void 0 || _popoverRef$current.closePopover();
58
+ }, [currentStrokeWidth]);
59
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
60
+ onMouseEnter: handleMouseEnter,
61
+ onMouseLeave: handleMouseLeave,
62
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_expansion.ExpansionToolbarItem, {
63
+ ref: popoverRef,
64
+ isActive: isActive,
65
+ tooltip: transI18n('fmt_screenshare_whiteboard_button_paintbrush'),
66
+ icon: icon,
67
+ onClick: handlePenToolChange(clickShape),
68
+ tooltipPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
69
+ popoverPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
70
+ popoverOverlayClassName: "fcr-board-toolbar__picker__overlay",
71
+ popoverContent: /*#__PURE__*/(0, _jsxRuntime.jsx)(PenPickerPanel, {}),
72
+ popoverOffset: offset,
73
+ iconProps: {
74
+ colors: {
75
+ iconPrimary: isActive || isHover ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)',
76
+ iconSecondary: currentColor
77
+ }
56
78
  }
57
- }
79
+ })
58
80
  });
59
81
  });
60
82
  var PenPickerPanel = (0, _mobxReact.observer)(function () {
@@ -70,6 +92,21 @@ var PenPickerPanel = (0, _mobxReact.observer)(function () {
70
92
  icon: _type2.FcrIconType.FCR_WHITEBOARD_PED3
71
93
  }];
72
94
  var isCurve = observables.currentShape === _type.FcrBoardShape.Curve;
95
+ var _useState3 = (0, _react.useState)(false),
96
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
97
+ isHover = _useState4[0],
98
+ setIsHover = _useState4[1];
99
+ var _useState5 = (0, _react.useState)(0),
100
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
101
+ hoverValue = _useState6[0],
102
+ setHoverValue = _useState6[1];
103
+ var handleMouseEnter = function handleMouseEnter(value) {
104
+ setIsHover(true);
105
+ setHoverValue(value);
106
+ };
107
+ var handleMouseLeave = function handleMouseLeave() {
108
+ setIsHover(false);
109
+ };
73
110
  var weights = [{
74
111
  value: 2,
75
112
  icon: isCurve ? _type2.FcrIconType.FCR_PENSIZE : _type2.FcrIconType.FCR_PENSIZE_STRAIGHT
@@ -96,14 +133,19 @@ var PenPickerPanel = (0, _mobxReact.observer)(function () {
96
133
  var handleClick = function handleClick() {
97
134
  setStrokeWidth(value);
98
135
  };
136
+ var isHoverActive = hoverValue === value && isHover;
99
137
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
100
138
  className: cls,
101
139
  onClick: handleClick,
140
+ onMouseEnter: function onMouseEnter() {
141
+ return handleMouseEnter(value);
142
+ },
143
+ onMouseLeave: handleMouseLeave,
102
144
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
103
145
  type: icon,
104
146
  size: 28,
105
147
  colors: {
106
- iconPrimary: observables.currentStrokeWidth === value ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)',
148
+ iconPrimary: observables.currentStrokeWidth === value || isHoverActive ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)',
107
149
  iconSecondary: 'red',
108
150
  level: level
109
151
  }
@@ -20,18 +20,27 @@ var ScreenCapturePickerItem = exports.ScreenCapturePickerItem = (0, _mobxReact.o
20
20
  var _useContext = (0, _react.useContext)(_store.ToolbarContext),
21
21
  toolbarDockPosition = _useContext.observables.toolbarDockPosition;
22
22
  var transI18n = (0, _i18n.useI18n)();
23
+ var popoverRef = (0, _react.useRef)(null);
24
+ var hidePopover = function hidePopover() {
25
+ var _popoverRef$current;
26
+ (_popoverRef$current = popoverRef.current) === null || _popoverRef$current === void 0 || _popoverRef$current.closePopover();
27
+ };
23
28
  return (0, _env.isElectron)() ? /*#__PURE__*/(0, _jsxRuntime.jsx)(_expansion.ExpansionToolbarItem, {
29
+ ref: popoverRef,
24
30
  isActive: false,
25
31
  tooltip: transI18n('fmt_screenshare_whiteboard_button_cutting'),
26
32
  tooltipPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
27
33
  popoverPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
28
34
  icon: _type.FcrIconType.FCR_WIHITEBOARD_SLICE,
29
35
  popoverOverlayClassName: "fcr-board-toolbar__picker__overlay",
30
- popoverContent: /*#__PURE__*/(0, _jsxRuntime.jsx)(ScreenCapturePickerPanel, {}),
36
+ popoverContent: /*#__PURE__*/(0, _jsxRuntime.jsx)(ScreenCapturePickerPanel, {
37
+ hidePopover: hidePopover
38
+ }),
31
39
  popoverOffset: offset
32
40
  }) : null;
33
41
  });
34
- var ScreenCapturePickerPanel = (0, _mobxReact.observer)(function () {
42
+ var ScreenCapturePickerPanel = (0, _mobxReact.observer)(function (_ref2) {
43
+ var hidePopover = _ref2.hidePopover;
35
44
  var _useContext2 = (0, _react.useContext)(_store.ToolbarContext),
36
45
  captureScreen = _useContext2.captureScreen,
37
46
  toolbarDockPosition = _useContext2.observables.toolbarDockPosition;
@@ -43,7 +52,8 @@ var ScreenCapturePickerPanel = (0, _mobxReact.observer)(function () {
43
52
  placement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
44
53
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
45
54
  onClick: function onClick() {
46
- return captureScreen(false);
55
+ hidePopover();
56
+ captureScreen(false);
47
57
  },
48
58
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
49
59
  type: _type.FcrIconType.FCR_WIHITEBOARD_SLICE,
@@ -59,7 +69,8 @@ var ScreenCapturePickerPanel = (0, _mobxReact.observer)(function () {
59
69
  placement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
60
70
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
61
71
  onClick: function onClick() {
62
- return captureScreen(true);
72
+ hidePopover();
73
+ captureScreen(true);
63
74
  },
64
75
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
65
76
  type: _type.FcrIconType.FCR_WIHITEBOARD_SLICEWITHOUTCLASSROOM,
@@ -11,6 +11,7 @@ require("core-js/modules/es.array.map.js");
11
11
  require("core-js/modules/es.string.includes.js");
12
12
  require("core-js/modules/esnext.async-iterator.map.js");
13
13
  require("core-js/modules/esnext.iterator.map.js");
14
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
14
15
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
15
16
  var _react = require("react");
16
17
  var _mobxReact = require("mobx-react");
@@ -65,6 +66,36 @@ var ShapePickerPanel = (0, _mobxReact.observer)(function () {
65
66
  setShape = _useContext2.setShape,
66
67
  setStrokeWidth = _useContext2.setStrokeWidth;
67
68
  var t = (0, _i18n.useI18n)();
69
+ var _useState = (0, _react.useState)(false),
70
+ _useState2 = (0, _slicedToArray2["default"])(_useState, 2),
71
+ isHover = _useState2[0],
72
+ setIsHover = _useState2[1];
73
+ var _useState3 = (0, _react.useState)(0),
74
+ _useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
75
+ hoverValue = _useState4[0],
76
+ setHoverValue = _useState4[1];
77
+ var _useState5 = (0, _react.useState)(false),
78
+ _useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
79
+ isShapeHover = _useState6[0],
80
+ setIsShapeHover = _useState6[1];
81
+ var _useState7 = (0, _react.useState)(0),
82
+ _useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
83
+ hoverShapeValue = _useState8[0],
84
+ setHoverShapeValue = _useState8[1];
85
+ var handleMouseEnter = function handleMouseEnter(value) {
86
+ setIsHover(true);
87
+ setHoverValue(value);
88
+ };
89
+ var handleMouseLeave = function handleMouseLeave() {
90
+ setIsHover(false);
91
+ };
92
+ var handleShapeMouseEnter = function handleShapeMouseEnter(value) {
93
+ setIsShapeHover(true);
94
+ setHoverShapeValue(value);
95
+ };
96
+ var handleShapeMouseLeave = function handleShapeMouseLeave() {
97
+ setIsShapeHover(false);
98
+ };
68
99
  var shapes = [{
69
100
  type: _type.FcrBoardShape.Rectangle,
70
101
  icon: _type2.FcrIconType.FCR_WHITEBOARD_SHAP_SQUARE,
@@ -118,6 +149,8 @@ var ShapePickerPanel = (0, _mobxReact.observer)(function () {
118
149
  var type = _ref2.type,
119
150
  icon = _ref2.icon,
120
151
  tip = _ref2.tip;
152
+ var isHoverActive = hoverValue === type && isHover;
153
+ var isActive = observables.currentShape === type;
121
154
  var cls = (0, _classnames["default"])({
122
155
  'fcr-board-toolbar-panel--active': observables.currentShape === type
123
156
  });
@@ -131,11 +164,15 @@ var ShapePickerPanel = (0, _mobxReact.observer)(function () {
131
164
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
132
165
  className: cls,
133
166
  onClick: handleClick,
167
+ onMouseEnter: function onMouseEnter() {
168
+ return handleMouseEnter(type);
169
+ },
170
+ onMouseLeave: handleMouseLeave,
134
171
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
135
172
  type: icon,
136
173
  size: 28,
137
174
  colors: {
138
- iconPrimary: 'var(--fcr_ui_scene_black8)',
175
+ iconPrimary: isActive || isHoverActive ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)',
139
176
  level: 2
140
177
  }
141
178
  })
@@ -146,6 +183,8 @@ var ShapePickerPanel = (0, _mobxReact.observer)(function () {
146
183
  }), weights.map(function (_ref3, level) {
147
184
  var value = _ref3.value,
148
185
  icon = _ref3.icon;
186
+ var isHoverActive = hoverShapeValue === value && isShapeHover;
187
+ var isActive = observables.currentStrokeWidth === value;
149
188
  var cls = (0, _classnames["default"])({
150
189
  'fcr-board-toolbar-panel--active': observables.currentStrokeWidth === value
151
190
  });
@@ -155,11 +194,15 @@ var ShapePickerPanel = (0, _mobxReact.observer)(function () {
155
194
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
156
195
  className: cls,
157
196
  onClick: handleClick,
197
+ onMouseEnter: function onMouseEnter() {
198
+ return handleShapeMouseEnter(value);
199
+ },
200
+ onMouseLeave: handleShapeMouseLeave,
158
201
  children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
159
202
  type: icon,
160
203
  size: 28,
161
204
  colors: {
162
- iconPrimary: 'var(--fcr_ui_scene_black8)',
205
+ iconPrimary: isActive || isHoverActive ? 'var(--fcr_ui_scene_ramp_brand6)' : 'var(--fcr_ui_scene_black8)',
163
206
  level: level
164
207
  }
165
208
  })
@@ -12,3 +12,17 @@ export declare const useVisibleTools: (diraction?: "horizontal") => {
12
12
  showColorCount: number;
13
13
  isShinked: boolean;
14
14
  };
15
+ export declare const useAnnotationVisibleTools: (diraction?: "horizontal") => {
16
+ mainTools: {
17
+ renderItem: ({ offset }?: {
18
+ offset?: number;
19
+ }) => import("react/jsx-runtime").JSX.Element;
20
+ }[];
21
+ additionTools: {
22
+ renderItem: ({ offset }?: {
23
+ offset?: number;
24
+ }) => import("react/jsx-runtime").JSX.Element;
25
+ }[];
26
+ showColorCount: number;
27
+ isShinked: boolean;
28
+ };