fcr-ui-scene 3.6.1 → 3.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (292) hide show
  1. package/dist/132.js +2 -0
  2. package/dist/132.js.LICENSE.txt +311 -0
  3. package/dist/317.js +2 -0
  4. package/dist/317.js.LICENSE.txt +20 -0
  5. package/dist/651.js +2 -0
  6. package/dist/651.js.LICENSE.txt +1 -0
  7. package/dist/689343b64b60bfb7ffff.png +0 -0
  8. package/dist/73.js +1 -0
  9. package/dist/885f9369ea05a8ac0e56.png +0 -0
  10. package/dist/90f383876a6e93e7c7ca.png +0 -0
  11. package/dist/9b37584780995fc5df8c.gif +0 -0
  12. package/dist/annotation.e5cbd3a70b6d42361872.css +1274 -0
  13. package/dist/annotation.html +1 -0
  14. package/dist/annotation.js +2 -0
  15. package/dist/annotation.js.LICENSE.txt +252 -0
  16. package/dist/assets/browser/images/default1.jpg +0 -0
  17. package/dist/assets/browser/images/default2.jpg +0 -0
  18. package/dist/assets/browser/images/default3.jpg +0 -0
  19. package/dist/assets/browser/images/default4.jpg +0 -0
  20. package/dist/assets/browser/images/default5.jpg +0 -0
  21. package/dist/assets/browser/images/default6.jpg +0 -0
  22. package/dist/assets/browser/images/default7.jpg +0 -0
  23. package/dist/assets/browser/sound_effects/pretest.mp3 +0 -0
  24. package/dist/assets/browser/sound_effects/recording_started.mp3 +0 -0
  25. package/dist/assets/browser/sound_effects/remote_user_joined.mp3 +0 -0
  26. package/dist/assets/browser/sound_effects/speaker_test.mp3 +0 -0
  27. package/dist/assets/browser/videos/default8.mp4 +0 -0
  28. package/dist/assets/browser/videos/default9.mp4 +0 -0
  29. package/dist/assets/cursors/fcr_whiteboard_input.ico +0 -0
  30. package/dist/assets/cursors/fcr_whiteboard_pen.ico +0 -0
  31. package/dist/assets/cursors/fcr_whiteboard_shape_-straightline.ico +0 -0
  32. package/dist/assets/cursors/fcr_whiteboard_shape_arrow.ico +0 -0
  33. package/dist/assets/cursors/fcr_whiteboard_shape_circle.ico +0 -0
  34. package/dist/assets/cursors/fcr_whiteboard_shape_rectangle.ico +0 -0
  35. package/dist/assets/cursors/fcr_whiteboard_shape_triangle.ico +0 -0
  36. package/dist/assets/electron/images/default1.jpg +0 -0
  37. package/dist/assets/electron/images/default2.jpg +0 -0
  38. package/dist/assets/electron/sound_effects/pretest.mp3 +0 -0
  39. package/dist/assets/electron/videos/default8.mp4 +0 -0
  40. package/dist/assets/fcr_chat_reddot.svg +5 -0
  41. package/dist/assets/fcr_defaultpage.png +0 -0
  42. package/dist/assets/fcr_grid_big.svg +3 -0
  43. package/dist/assets/fcr_leave2.svg +58 -0
  44. package/dist/assets/fcr_listontop_big.svg +3 -0
  45. package/dist/assets/full-screen-error-boundary-img.png +0 -0
  46. package/dist/assets/leave-meeting.png +0 -0
  47. package/dist/assets/loading.gif +0 -0
  48. package/dist/assets/login_confirm.png +0 -0
  49. package/dist/assets/pretest.mp3 +0 -0
  50. package/dist/assets/state-bar-logo.png +0 -0
  51. package/dist/assets/step-gradient.svg +10 -0
  52. package/dist/b74b002687a3a3346bec.png +0 -0
  53. package/dist/b94869094481702f949b.png +0 -0
  54. package/dist/ebeace75fd46b90d890e.png +0 -0
  55. package/dist/electron/app.js +194 -0
  56. package/dist/electron/bootstrap-dev.js +46 -0
  57. package/dist/electron/bootstrap-sdk.js +211 -0
  58. package/dist/electron/default-options.js +25 -0
  59. package/dist/electron/env.js +13 -0
  60. package/dist/electron/index.js +20 -0
  61. package/dist/electron/injections.js +903 -0
  62. package/dist/electron/ipc/ipc.js +141 -0
  63. package/dist/electron/ipc/type.js +19 -0
  64. package/dist/electron/logger.js +65 -0
  65. package/dist/electron/main.js +94 -0
  66. package/dist/electron/plugins/devtool-shortcut.js +33 -0
  67. package/dist/electron/plugins/meeting-state.js +39 -0
  68. package/dist/electron/plugins/screenshot.js +54 -0
  69. package/dist/electron/preload.js +108 -0
  70. package/dist/electron/tools.js +66 -0
  71. package/dist/electron/window.js +123 -0
  72. package/dist/extensions/agora-extension-virtual-background/agora-wasm.wasm +0 -0
  73. package/dist/extensions/ai-denoiser/denoiser-wasm-simd.wasm +0 -0
  74. package/dist/extensions/ai-denoiser/denoiser-wasm.js +1 -0
  75. package/dist/extensions/ai-denoiser/denoiser-wasm.wasm +0 -0
  76. package/dist/fad688b9135b15d6c405.png +0 -0
  77. package/dist/index.html +224 -0
  78. package/dist/main.393a2a91ab7fc05ffce6.css +15403 -0
  79. package/dist/main.js +2 -0
  80. package/dist/main.js.LICENSE.txt +272 -0
  81. package/dist/worker-entry.worker.js.LICENSE.txt +13 -0
  82. package/lib/creator.d.ts +5 -0
  83. package/lib/creator.js +106 -17
  84. package/lib/electron/bootstrap-sdk.js +4 -0
  85. package/lib/electron/injections.d.ts +4 -0
  86. package/lib/electron/injections.js +37 -8
  87. package/lib/electron/ipc/ipc.d.ts +1 -0
  88. package/lib/electron/ipc/ipc.js +4 -0
  89. package/lib/electron/main.js +6 -2
  90. package/lib/electron/plugins/screenshot.js +4 -2
  91. package/lib/electron/preload.js +7 -2
  92. package/lib/electron/window.js +4 -3
  93. package/lib/fragments/annotation/index.d.ts +10 -0
  94. package/lib/fragments/annotation/index.js +106 -0
  95. package/lib/fragments/annotation/libs.d.ts +55 -0
  96. package/lib/fragments/annotation/libs.js +93 -0
  97. package/lib/fragments/annotation/store.d.ts +25 -0
  98. package/lib/fragments/annotation/store.js +485 -0
  99. package/lib/fragments/annotation/view.d.ts +2 -0
  100. package/lib/fragments/annotation/view.js +23 -0
  101. package/lib/fragments/base.d.ts +10 -0
  102. package/lib/fragments/base.js +44 -0
  103. package/lib/modules/action-bar/components/screen-share/submenu.js +7 -6
  104. package/lib/modules/action-bar/index.css +7 -0
  105. package/lib/modules/action-bar/index.d.ts +2 -0
  106. package/lib/modules/action-bar/index.js +1 -0
  107. package/lib/modules/action-bar/store.d.ts +6 -2
  108. package/lib/modules/action-bar/store.js +15 -9
  109. package/lib/modules/annotation/components/control-bar/index.css +48 -0
  110. package/lib/modules/annotation/components/control-bar/index.d.ts +3 -0
  111. package/lib/modules/annotation/components/control-bar/index.js +101 -0
  112. package/lib/modules/annotation/components/toolbar/components/color-tool/color-panel/index.d.ts +3 -0
  113. package/lib/modules/annotation/components/toolbar/components/color-tool/color-panel/index.js +46 -0
  114. package/lib/modules/annotation/components/toolbar/components/color-tool/index.d.ts +1 -0
  115. package/lib/modules/annotation/components/toolbar/components/color-tool/index.js +52 -0
  116. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/index.d.ts +3 -0
  117. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/index.js +59 -0
  118. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +11 -0
  119. package/lib/modules/annotation/components/toolbar/components/graphic-tool/graphic-panel/libs.js +59 -0
  120. package/lib/modules/annotation/components/toolbar/components/graphic-tool/index.d.ts +1 -0
  121. package/lib/modules/annotation/components/toolbar/components/graphic-tool/index.js +68 -0
  122. package/lib/modules/annotation/components/toolbar/components/item/item.d.ts +17 -0
  123. package/lib/modules/annotation/components/toolbar/components/item/item.js +115 -0
  124. package/lib/modules/annotation/components/toolbar/components/item/style.css +43 -0
  125. package/lib/modules/annotation/components/toolbar/components/panel/index.d.ts +5 -0
  126. package/lib/modules/annotation/components/toolbar/components/panel/index.js +22 -0
  127. package/lib/modules/annotation/components/toolbar/components/panel/style.css +24 -0
  128. package/lib/modules/annotation/components/toolbar/components/pen-tool/index.d.ts +1 -0
  129. package/lib/modules/annotation/components/toolbar/components/pen-tool/index.js +58 -0
  130. package/lib/modules/annotation/components/toolbar/components/pen-tool/pen-panel/index.d.ts +3 -0
  131. package/lib/modules/annotation/components/toolbar/components/pen-tool/pen-panel/index.js +34 -0
  132. package/lib/modules/annotation/components/toolbar/components/tips/index.d.ts +2 -0
  133. package/lib/modules/annotation/components/toolbar/components/tips/index.js +25 -0
  134. package/lib/modules/annotation/components/toolbar/components/tips/style.css +19 -0
  135. package/lib/modules/annotation/components/toolbar/index.d.ts +0 -0
  136. package/lib/modules/annotation/components/toolbar/index.js +1 -0
  137. package/lib/modules/annotation/components/toolbar/store.d.ts +40 -0
  138. package/lib/modules/annotation/components/toolbar/store.js +279 -0
  139. package/lib/modules/annotation/components/toolbar/style.css +55 -0
  140. package/lib/modules/annotation/components/toolbar/view.d.ts +2 -0
  141. package/lib/modules/annotation/components/toolbar/view.js +120 -0
  142. package/lib/modules/annotation/index.d.ts +36 -0
  143. package/lib/modules/annotation/index.js +168 -0
  144. package/lib/modules/annotation/store.d.ts +85 -0
  145. package/lib/modules/annotation/store.js +648 -0
  146. package/lib/modules/annotation/style.css +26 -0
  147. package/lib/modules/annotation/view.d.ts +2 -0
  148. package/lib/modules/annotation/view.js +32 -0
  149. package/lib/modules/chat/view.js +112 -100
  150. package/lib/modules/components/annotation-menu/index.d.ts +7 -0
  151. package/lib/modules/components/annotation-menu/index.js +119 -0
  152. package/lib/modules/components/leave-meeting/components/assign-host.js +26 -23
  153. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.d.ts +2 -0
  154. package/lib/modules/components/member-window/components/member-actions/components/icon-buttons/index.js +6 -2
  155. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.d.ts +2 -1
  156. package/lib/modules/components/member-window/components/video-player/components/remote-video-player.js +6 -1
  157. package/lib/modules/components/member-window/components/video-player/index.d.ts +1 -0
  158. package/lib/modules/components/member-window/index.d.ts +1 -1
  159. package/lib/modules/components/member-window/index.js +8 -5
  160. package/lib/modules/components/member-window/types.d.ts +2 -0
  161. package/lib/modules/components/security-menu/index.js +7 -6
  162. package/lib/modules/control-bar/components/annotation-button/index.d.ts +1 -0
  163. package/lib/modules/control-bar/components/annotation-button/index.js +59 -0
  164. package/lib/modules/control-bar/index.d.ts +6 -2
  165. package/lib/modules/control-bar/index.js +5 -2
  166. package/lib/modules/control-bar/store.d.ts +23 -7
  167. package/lib/modules/control-bar/store.js +112 -77
  168. package/lib/modules/control-bar/view.js +7 -3
  169. package/lib/modules/dialog/components/annotation-tool/index.d.ts +4 -0
  170. package/lib/modules/dialog/components/annotation-tool/index.js +53 -0
  171. package/lib/modules/dialog/components/chat/index.js +1 -1
  172. package/lib/modules/dialog/components/host-area-container/index.d.ts +12 -0
  173. package/lib/modules/dialog/components/host-area-container/index.js +214 -0
  174. package/lib/modules/dialog/components/participant/index.js +1 -1
  175. package/lib/modules/dialog/components/system-preference/index.js +1 -1
  176. package/lib/modules/dialog/components/video-window/index.js +1 -0
  177. package/lib/modules/dialog/hooks/use-popover-watcher.d.ts +14 -0
  178. package/lib/modules/dialog/hooks/use-popover-watcher.js +112 -0
  179. package/lib/modules/dialog/hooks/useElectron.d.ts +1 -0
  180. package/lib/modules/dialog/hooks/useElectron.js +11 -2
  181. package/lib/modules/dialog/index.d.ts +2 -0
  182. package/lib/modules/dialog/index.js +2 -1
  183. package/lib/modules/dialog/store.d.ts +9 -2
  184. package/lib/modules/dialog/store.js +46 -6
  185. package/lib/modules/event-confirm/components/window/index.d.ts +7 -0
  186. package/lib/modules/event-confirm/components/window/index.js +188 -0
  187. package/lib/modules/event-confirm/index.d.ts +4 -4
  188. package/lib/modules/event-confirm/index.js +6 -4
  189. package/lib/modules/event-confirm/store.d.ts +4 -5
  190. package/lib/modules/event-confirm/store.js +35 -26
  191. package/lib/modules/event-confirm/view.js +23 -171
  192. package/lib/modules/event-sound/index.js +1 -1
  193. package/lib/modules/layout/components/CommonVideoRenderer.js +30 -16
  194. package/lib/modules/layout/index.d.ts +4 -0
  195. package/lib/modules/layout/index.js +2 -0
  196. package/lib/modules/layout/store.d.ts +14 -2
  197. package/lib/modules/layout/store.js +77 -45
  198. package/lib/modules/participant/index.d.ts +2 -0
  199. package/lib/modules/participant/index.js +2 -1
  200. package/lib/modules/participant/store.d.ts +5 -2
  201. package/lib/modules/participant/store.js +45 -28
  202. package/lib/modules/setting/audio-settings/audio-settings.js +3 -14
  203. package/lib/modules/share-screen/components/selection/index.js +18 -42
  204. package/lib/modules/share-screen/index.d.ts +6 -2
  205. package/lib/modules/share-screen/index.js +4 -2
  206. package/lib/modules/share-screen/store.d.ts +38 -46
  207. package/lib/modules/share-screen/store.js +263 -693
  208. package/lib/modules/share-screen/view.js +2 -2
  209. package/lib/modules/state-bar/assets/fcr_grid_big.svg +1 -1
  210. package/lib/modules/state-bar/assets/fcr_listontop_big.svg +1 -1
  211. package/lib/modules/state-bar/index.d.ts +2 -0
  212. package/lib/modules/state-bar/index.js +1 -0
  213. package/lib/modules/state-bar/store.d.ts +5 -1
  214. package/lib/modules/state-bar/store.js +9 -1
  215. package/lib/modules/state-bar/view.js +3 -2
  216. package/lib/modules/video-window/components/members/index.js +2 -1
  217. package/lib/modules/waiting-room-layout/store.js +1 -1
  218. package/lib/modules/whiteboard/components/control-bar/store.d.ts +5 -1
  219. package/lib/modules/whiteboard/components/control-bar/store.js +8 -1
  220. package/lib/modules/whiteboard/components/toolbar/components/color-picker/components/picker.js +16 -5
  221. package/lib/modules/whiteboard/components/toolbar/components/eraser-picker.js +67 -12
  222. package/lib/modules/whiteboard/components/toolbar/components/expansion/index.js +22 -2
  223. package/lib/modules/whiteboard/components/toolbar/components/history.js +46 -14
  224. package/lib/modules/whiteboard/components/toolbar/components/item/index.js +3 -2
  225. package/lib/modules/whiteboard/components/toolbar/components/move-handle.js +1 -1
  226. package/lib/modules/whiteboard/components/toolbar/components/pen-picker.js +58 -16
  227. package/lib/modules/whiteboard/components/toolbar/components/screen-capture-picker.js +15 -4
  228. package/lib/modules/whiteboard/components/toolbar/components/shape-picker.js +45 -2
  229. package/lib/modules/whiteboard/components/toolbar/hooks/index.d.ts +14 -0
  230. package/lib/modules/whiteboard/components/toolbar/hooks/index.js +235 -7
  231. package/lib/modules/whiteboard/components/toolbar/index.d.ts +1 -1
  232. package/lib/modules/whiteboard/components/toolbar/index.js +1 -1
  233. package/lib/modules/whiteboard/components/toolbar/store.d.ts +9 -2
  234. package/lib/modules/whiteboard/components/toolbar/store.js +30 -6
  235. package/lib/modules/whiteboard/components/toolbar/{ style.css → style.css} +1 -0
  236. package/lib/modules/whiteboard/index.d.ts +2 -0
  237. package/lib/modules/whiteboard/index.js +20 -20
  238. package/lib/plugins/browser-runtime-plugin.js +10 -1
  239. package/lib/providers/annotation-provider.d.ts +77 -0
  240. package/lib/providers/annotation-provider.js +411 -0
  241. package/lib/providers/interpreter-provider.d.ts +1 -0
  242. package/lib/providers/interpreter-provider.js +182 -154
  243. package/lib/providers/privilege-provider.d.ts +35 -6
  244. package/lib/providers/privilege-provider.js +105 -49
  245. package/lib/providers/renderer-provider.js +3 -7
  246. package/lib/providers/room-provider.d.ts +13 -1
  247. package/lib/providers/room-provider.js +21 -7
  248. package/lib/providers/screen-share-provider.d.ts +131 -34
  249. package/lib/providers/screen-share-provider.js +561 -173
  250. package/lib/providers/sharing-provider.d.ts +33 -0
  251. package/lib/{shared-data-source/screen-share-data-source.js → providers/sharing-provider.js} +87 -39
  252. package/lib/runtime.d.ts +6 -1
  253. package/lib/scenes/main-scene.d.ts +7 -2
  254. package/lib/scenes/main-scene.js +54 -25
  255. package/lib/scenes/waiting-scene.d.ts +6 -0
  256. package/lib/scenes/waiting-scene.js +15 -5
  257. package/lib/shared-data-source/member-data.d.ts +21 -5
  258. package/lib/shared-data-source/member-data.js +69 -17
  259. package/lib/shared-data-source/screen-share-data.d.ts +270 -0
  260. package/lib/shared-data-source/screen-share-data.js +389 -0
  261. package/lib/shared-data-source/security-data.d.ts +4 -1
  262. package/lib/shared-data-source/security-data.js +5 -2
  263. package/lib/shared-data-source/setting.js +6 -4
  264. package/lib/type.d.ts +53 -0
  265. package/lib/ui-manager.d.ts +3 -2
  266. package/lib/ui-manager.js +6 -4
  267. package/lib/ui-scene.js +59 -44
  268. package/lib/utilities/constant.d.ts +8 -1
  269. package/lib/utilities/constant.js +7 -0
  270. package/lib/utilities/logger.d.ts +4 -0
  271. package/lib/utilities/logger.js +8 -1
  272. package/lib/utilities/renderer-event.d.ts +3 -0
  273. package/lib/utilities/renderer-event.js +14 -1
  274. package/lib/utilities/screen.js +2 -1
  275. package/lib/utilities/tools.d.ts +18 -1
  276. package/lib/utilities/tools.js +48 -2
  277. package/package.json +6 -6
  278. package/public/assets/cursors/fcr_whiteboard_input.ico +0 -0
  279. package/public/assets/cursors/fcr_whiteboard_pen.ico +0 -0
  280. package/public/assets/cursors/fcr_whiteboard_shape_-straightline.ico +0 -0
  281. package/public/assets/cursors/fcr_whiteboard_shape_arrow.ico +0 -0
  282. package/public/assets/cursors/fcr_whiteboard_shape_circle.ico +0 -0
  283. package/public/assets/cursors/fcr_whiteboard_shape_rectangle.ico +0 -0
  284. package/public/assets/cursors/fcr_whiteboard_shape_triangle.ico +0 -0
  285. package/public/assets/fcr_chat_reddot.svg +3 -3
  286. package/public/assets/fcr_grid_big.svg +1 -1
  287. package/public/assets/fcr_leave2.svg +14 -14
  288. package/public/assets/fcr_listontop_big.svg +1 -1
  289. package/public/assets/step-gradient.svg +1 -1
  290. package/public/fragment.html +10 -0
  291. package/public/index.html +3 -1
  292. package/lib/shared-data-source/screen-share-data-source.d.ts +0 -37
@@ -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
+ };
@@ -5,7 +5,7 @@ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefau
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
7
7
  });
8
- exports.useVisibleTools = void 0;
8
+ exports.useVisibleTools = exports.useAnnotationVisibleTools = void 0;
9
9
  require("core-js/modules/es.array.concat.js");
10
10
  require("core-js/modules/es.array.filter.js");
11
11
  require("core-js/modules/es.array.map.js");
@@ -43,22 +43,24 @@ var useVisibleTools = exports.useVisibleTools = function useVisibleTools(diracti
43
43
  maxCountVisibleTools = _useContext$observabl.maxCountVisibleTools,
44
44
  toolbarDockPosition = _useContext$observabl.toolbarDockPosition,
45
45
  setTool = _useContext.setTool,
46
- saveDraft = _useContext.saveDraft;
46
+ saveDraft = _useContext.saveDraft,
47
+ annotationHasStart = _useContext.annotationHasStart;
47
48
  var transI18n = (0, _i18n.useI18n)();
48
49
  var handleToolChange = function handleToolChange(tool) {
49
50
  return function () {
50
51
  setTool(tool);
51
52
  };
52
53
  };
53
- var baseMainTools = [{
54
+ var whiteboardMainTools = [{
54
55
  renderItem: function renderItem() {
55
56
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.ToolbarItem, {
56
57
  tooltipPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
57
58
  tooltip: transI18n('fmt_screenshare_whiteboard_button_laserpen'),
58
- icon: _type.FcrIconType.FCR_WHITEBOARD_LASERPEN2,
59
+ icon: _type.FcrIconType.FCR_WHITEBOARD_LASERPEN1,
59
60
  onClick: handleToolChange(_enums.FcrBoardToolType.LASER_POINTER),
60
61
  isActive: currentTool === _enums.FcrBoardToolType.LASER_POINTER,
61
- diraction: diraction
62
+ diraction: diraction,
63
+ iconColor: "#FF0005"
62
64
  });
63
65
  }
64
66
  },
@@ -81,7 +83,8 @@ var useVisibleTools = exports.useVisibleTools = function useVisibleTools(diracti
81
83
  icon: _type.FcrIconType.FCR_WHITECHOOSE,
82
84
  onClick: handleToolChange(_enums.FcrBoardToolType.SELECTOR),
83
85
  isActive: currentTool === _enums.FcrBoardToolType.SELECTOR,
84
- diraction: diraction
86
+ diraction: diraction,
87
+ iconColor: "#FF0005"
85
88
  });
86
89
  }
87
90
  }, {
@@ -139,6 +142,67 @@ var useVisibleTools = exports.useVisibleTools = function useVisibleTools(diracti
139
142
  });
140
143
  }
141
144
  }] : []));
145
+ var annontationMainTools = [{
146
+ renderItem: function renderItem() {
147
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.ToolbarItem, {
148
+ tooltipPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
149
+ tooltip: transI18n('fmt_screenshare_whiteboard_button_laserpen'),
150
+ icon: _type.FcrIconType.FCR_WHITEBOARD_LASERPEN1,
151
+ onClick: handleToolChange(_enums.FcrBoardToolType.LASER_POINTER),
152
+ isActive: currentTool === _enums.FcrBoardToolType.LASER_POINTER,
153
+ diraction: diraction,
154
+ iconColor: "#FF0005"
155
+ });
156
+ }
157
+ }, {
158
+ renderItem: function renderItem() {
159
+ var _ref5 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
160
+ offset = _ref5.offset;
161
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_penPicker.PenPickerItem, {
162
+ offset: offset
163
+ });
164
+ }
165
+ }, {
166
+ renderItem: function renderItem() {
167
+ var _ref6 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
168
+ offset = _ref6.offset;
169
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_shapePicker.ShapePickerItem, {
170
+ offset: offset
171
+ });
172
+ }
173
+ },
174
+ // {
175
+ // renderItem: () => (
176
+ // <ToolbarItem
177
+ // tooltipPlacement={toolbarDockPosition.placement === 'left' ? 'right' : 'left'}
178
+ // tooltip={transI18n('fmt_screenshare_whiteboard_button_text')}
179
+ // icon={FcrIconType.FCR_WHITEBOARD_TEXT}
180
+ // onClick={handleToolChange(FcrBoardToolType.TEXT)}
181
+ // isActive={currentTool === FcrBoardToolType.TEXT}
182
+ // diraction={diraction}
183
+ // />
184
+ // ),
185
+ // },
186
+ {
187
+ renderItem: function renderItem() {
188
+ var _ref7 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
189
+ offset = _ref7.offset;
190
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_eraserPicker.EraserPickerItem, {
191
+ offset: offset
192
+ });
193
+ }
194
+ }
195
+ // ...(isElectron()
196
+ // ? [
197
+ // {
198
+ // renderItem: ({ offset }: { offset?: number } = {}) => (
199
+ // <ScreenCapturePickerItem offset={offset} />
200
+ // ),
201
+ // },
202
+ // ]
203
+ // : []),
204
+ ];
205
+ var baseMainTools = annotationHasStart ? annontationMainTools : whiteboardMainTools;
142
206
  var divider = {
143
207
  renderItem: function renderItem() {
144
208
  return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
@@ -175,6 +239,19 @@ var useVisibleTools = exports.useVisibleTools = function useVisibleTools(diracti
175
239
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_moveHandle.MoveHandleItem, {});
176
240
  }
177
241
  }];
242
+ var fixedAnnotationTools = [divider, colorTool, divider, {
243
+ renderItem: function renderItem() {
244
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_history.UndoItem, {});
245
+ }
246
+ }, {
247
+ renderItem: function renderItem() {
248
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_history.RedoItem, {});
249
+ }
250
+ }, {
251
+ renderItem: function renderItem() {
252
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_moveHandle.MoveHandleItem, {});
253
+ }
254
+ }];
178
255
  var additionTool = {
179
256
  renderItem: function renderItem() {
180
257
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_extraToolPicker.AdditionToolPickerItem, {});
@@ -191,9 +268,10 @@ var useVisibleTools = exports.useVisibleTools = function useVisibleTools(diracti
191
268
  // }
192
269
 
193
270
  var maxCountAvailableToDisplay = maxCountVisibleTools;
271
+ var resultFixedTools = annotationHasStart ? fixedAnnotationTools : fixedTools;
194
272
  var mainTools = isShinked && diraction !== 'horizontal' ? (0, _range["default"])(0, (0, _max["default"])([0, (0, _min["default"])([maxCountAvailableToDisplay, baseMainTools.length])])).map(function (index) {
195
273
  return baseMainTools[index];
196
- }).concat([additionTool]).concat(fixedTools) : baseMainTools.concat(fixedTools);
274
+ }).concat([additionTool]).concat(resultFixedTools) : baseMainTools.concat(resultFixedTools);
197
275
  var additionToolsCount = baseMainTools.length - maxCountAvailableToDisplay;
198
276
  var additionTools = (0, _toConsumableArray2["default"])(baseMainTools).reverse().filter(function (tool, index) {
199
277
  if (index < additionToolsCount) {
@@ -206,6 +284,156 @@ var useVisibleTools = exports.useVisibleTools = function useVisibleTools(diracti
206
284
  // additionTools.unshift(colorTool);
207
285
  // }
208
286
 
287
+ additionTools = additionTools.reverse();
288
+ return {
289
+ mainTools: mainTools,
290
+ additionTools: additionTools,
291
+ showColorCount: showColorCount,
292
+ isShinked: isShinked
293
+ };
294
+ };
295
+ var useAnnotationVisibleTools = exports.useAnnotationVisibleTools = function useAnnotationVisibleTools(diraction) {
296
+ var _useContext2 = (0, _react.useContext)(_store.ToolbarContext),
297
+ _useContext2$observab = _useContext2.observables,
298
+ currentTool = _useContext2$observab.currentTool,
299
+ maxCountVisibleTools = _useContext2$observab.maxCountVisibleTools,
300
+ toolbarDockPosition = _useContext2$observab.toolbarDockPosition,
301
+ setTool = _useContext2.setTool,
302
+ saveDraft = _useContext2.saveDraft;
303
+ var transI18n = (0, _i18n.useI18n)();
304
+ var handleToolChange = function handleToolChange(tool) {
305
+ return function () {
306
+ setTool(tool);
307
+ };
308
+ };
309
+ var annontationMainTools = [{
310
+ renderItem: function renderItem() {
311
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.ToolbarItem, {
312
+ tooltipPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
313
+ tooltip: transI18n('fmt_screenshare_whiteboard_button_laserpen'),
314
+ icon: _type.FcrIconType.FCR_WHITEBOARD_LASERPEN1,
315
+ onClick: handleToolChange(_enums.FcrBoardToolType.LASER_POINTER),
316
+ isActive: currentTool === _enums.FcrBoardToolType.LASER_POINTER,
317
+ diraction: diraction,
318
+ iconColor: "#FF0005"
319
+ });
320
+ }
321
+ }, {
322
+ renderItem: function renderItem() {
323
+ var _ref8 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
324
+ offset = _ref8.offset;
325
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_penPicker.PenPickerItem, {
326
+ offset: offset
327
+ });
328
+ }
329
+ }, {
330
+ renderItem: function renderItem() {
331
+ var _ref9 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
332
+ offset = _ref9.offset;
333
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_shapePicker.ShapePickerItem, {
334
+ offset: offset
335
+ });
336
+ }
337
+ },
338
+ // {
339
+ // renderItem: () => (
340
+ // <ToolbarItem
341
+ // tooltipPlacement={toolbarDockPosition.placement === 'left' ? 'right' : 'left'}
342
+ // tooltip={transI18n('fmt_screenshare_whiteboard_button_text')}
343
+ // icon={FcrIconType.FCR_WHITEBOARD_TEXT}
344
+ // onClick={handleToolChange(FcrBoardToolType.TEXT)}
345
+ // isActive={currentTool === FcrBoardToolType.TEXT}
346
+ // diraction={diraction}
347
+ // />
348
+ // ),
349
+ // },
350
+ {
351
+ renderItem: function renderItem() {
352
+ var _ref10 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
353
+ offset = _ref10.offset;
354
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_eraserPicker.EraserPickerItem, {
355
+ offset: offset
356
+ });
357
+ }
358
+ }
359
+ // ...(isElectron()
360
+ // ? [
361
+ // {
362
+ // renderItem: ({ offset }: { offset?: number } = {}) => (
363
+ // <ScreenCapturePickerItem offset={offset} />
364
+ // ),
365
+ // },
366
+ // ]
367
+ // : []),
368
+ ];
369
+ var baseMainTools = annontationMainTools;
370
+ var divider = {
371
+ renderItem: function renderItem() {
372
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
373
+ className: "fcr-divider-vertical"
374
+ });
375
+ }
376
+ };
377
+ var colorTool = {
378
+ renderItem: function renderItem() {
379
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_index.ColorPickerItem, {});
380
+ }
381
+ };
382
+ var fixedTools = [divider, colorTool, divider, {
383
+ renderItem: function renderItem() {
384
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.ToolbarItem, {
385
+ tooltipPlacement: toolbarDockPosition.placement === 'left' ? 'right' : 'left',
386
+ tooltip: transI18n('fmt_screenshare_whiteboard_button_savescript'),
387
+ icon: _type.FcrIconType.FCR_DOWNLOAD,
388
+ onClick: saveDraft,
389
+ isActive: false,
390
+ diraction: diraction
391
+ });
392
+ }
393
+ }, divider, {
394
+ renderItem: function renderItem() {
395
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_history.UndoItem, {});
396
+ }
397
+ }, {
398
+ renderItem: function renderItem() {
399
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_history.RedoItem, {});
400
+ }
401
+ }, {
402
+ renderItem: function renderItem() {
403
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_moveHandle.MoveHandleItem, {});
404
+ }
405
+ }];
406
+ var additionTool = {
407
+ renderItem: function renderItem() {
408
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)(_extraToolPicker.AdditionToolPickerItem, {});
409
+ }
410
+ };
411
+
412
+ // whether toolbar needs to shrink in vertical direction
413
+ var isShinked = maxCountVisibleTools < baseMainTools.length + 1;
414
+ var showColorCount = isShinked ? 0 : maxCountVisibleTools - baseMainTools.length; /* addition tool */
415
+
416
+ // if (showColorCount) {
417
+ // baseMainTools.push(divider);
418
+ // baseMainTools.push(colorTool);
419
+ // }
420
+
421
+ var maxCountAvailableToDisplay = maxCountVisibleTools;
422
+ var mainTools = isShinked && diraction !== 'horizontal' ? (0, _range["default"])(0, (0, _max["default"])([0, (0, _min["default"])([maxCountAvailableToDisplay, baseMainTools.length])])).map(function (index) {
423
+ return baseMainTools[index];
424
+ }).concat([additionTool]).concat(fixedTools) : baseMainTools.concat(fixedTools);
425
+ var additionToolsCount = baseMainTools.length - maxCountAvailableToDisplay;
426
+ var additionTools = [].concat(baseMainTools).reverse().filter(function (tool, index) {
427
+ if (index < additionToolsCount) {
428
+ return true;
429
+ }
430
+ return false;
431
+ });
432
+
433
+ // if (isShinked) {
434
+ // additionTools.unshift(colorTool);
435
+ // }
436
+
209
437
  additionTools = additionTools.reverse();
210
438
  return {
211
439
  mainTools: mainTools,
@@ -1,2 +1,2 @@
1
- import './ style.css';
1
+ import './style.css';
2
2
  export declare const Toolbar: () => import("react/jsx-runtime").JSX.Element;
@@ -22,7 +22,7 @@ var _moveHandle = require("./components/move-handle");
22
22
  var _icon = require("agora-ui-foundation/lib/components/icon");
23
23
  var _type = require("agora-ui-foundation/lib/components/icon/type");
24
24
  var _foldIcon = _interopRequireDefault(require("./components/icons/fold-icon"));
25
- require("./ style.css");
25
+ require("./style.css");
26
26
  var _i18n = require("agora-ui-foundation/lib/i18n");
27
27
  var _store = require("./store");
28
28
  var _jsxRuntime = require("react/jsx-runtime");
@@ -1,11 +1,15 @@
1
1
  import { FcrBoardShape, WhiteboardThemeType } from '../../type';
2
2
  import { FcrBoardToolType } from 'fcr-core/lib/room-control/whiteboard-control/enums';
3
- import { FcrBoardMainWindow, FcrWhiteboardControl } from 'fcr-core/lib/room-control/whiteboard-control/types';
3
+ import { FcrBoardMainWindow } from 'fcr-core/lib/room-control/whiteboard-control/types';
4
4
  import { FcrBaseRoomControl } from 'fcr-core/lib/room-control/type';
5
+ import { FcrWhiteboardControl } from 'fcr-core/lib/room-control/whiteboard-control-v2/whiteboard-control/type';
6
+ import { FcrUIAnnotationProvider } from '../../../../providers/annotation-provider';
5
7
  export declare class ToolbarStore {
6
8
  private _whiteboardControl;
7
9
  private _roomControl;
10
+ private _annotationProvider;
8
11
  private _boardMainWindow;
12
+ private _lastStrokeWidth;
9
13
  private _boardObserver;
10
14
  accessor observables: {
11
15
  currentTool: FcrBoardToolType | undefined;
@@ -37,7 +41,10 @@ export declare class ToolbarStore {
37
41
  };
38
42
  get roomInfo(): import("fcr-core/lib/type").FcrRoomInfo | undefined;
39
43
  get boardMainWindow(): FcrBoardMainWindow;
40
- constructor(_whiteboardControl: FcrWhiteboardControl, _roomControl: FcrBaseRoomControl);
44
+ constructor(_whiteboardControl: FcrWhiteboardControl, _roomControl: FcrBaseRoomControl, _annotationProvider: FcrUIAnnotationProvider);
45
+ disableToolbar(): void;
46
+ resumeToolbar(): void;
47
+ get annotationHasStart(): boolean;
41
48
  redo(): void;
42
49
  undo(): void;
43
50
  clean(): void;