fcr-ui-scene 3.7.2 → 3.7.4
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.
- package/lib/creator.d.ts +2 -0
- package/lib/creator.js +37 -44
- package/lib/electron/app.js +7 -0
- package/lib/electron/injections.d.ts +1 -1
- package/lib/electron/injections.js +5 -3
- package/lib/electron/main.js +3 -1
- package/lib/fragments/annotation/index.d.ts +1 -0
- package/lib/fragments/annotation/index.js +13 -7
- package/lib/fragments/annotation/libs.d.ts +7 -6
- package/lib/fragments/annotation/libs.js +9 -8
- package/lib/fragments/annotation/store.d.ts +8 -4
- package/lib/fragments/annotation/store.js +351 -267
- package/lib/fragments/annotation/toolbar/components/color-tool/index.js +4 -0
- package/lib/fragments/annotation/toolbar/components/graphic-tool/index.js +4 -0
- package/lib/fragments/annotation/toolbar/components/item/item.d.ts +2 -0
- package/lib/fragments/annotation/toolbar/components/item/item.js +2 -4
- package/lib/fragments/annotation/toolbar/components/item/style.css +4 -2
- package/lib/fragments/annotation/toolbar/components/pen-tool/index.js +4 -0
- package/lib/fragments/annotation/utils.d.ts +1 -0
- package/lib/fragments/annotation/utils.js +27 -0
- package/lib/fragments/annotation/view.js +1 -6
- package/lib/fragments/base.js +5 -3
- package/lib/fragments/whiteboard/cursor.css +77 -0
- package/lib/fragments/whiteboard/index.d.ts +11 -0
- package/lib/fragments/whiteboard/index.js +91 -0
- package/lib/fragments/whiteboard/store.d.ts +31 -0
- package/lib/fragments/whiteboard/store.js +480 -0
- package/lib/fragments/whiteboard/style.css +4 -0
- package/lib/fragments/whiteboard/view.d.ts +4 -0
- package/lib/fragments/whiteboard/view.js +31 -0
- package/lib/global.css +6 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +1 -0
- package/lib/modules/action-bar/components/apps/index.js +15 -5
- package/lib/modules/action-bar/components/leave/index.js +4 -11
- package/lib/modules/action-bar/components/screen-share/submenu.js +2 -2
- package/lib/modules/action-bar/index.d.ts +2 -0
- package/lib/modules/action-bar/index.js +2 -1
- package/lib/modules/action-bar/store.d.ts +6 -2
- package/lib/modules/action-bar/store.js +56 -93
- package/lib/modules/action-bar/view.d.ts +1 -0
- package/lib/modules/action-bar/view.js +3 -2
- package/lib/modules/annotation/annotation-toolbar-store.d.ts +4 -11
- package/lib/modules/annotation/annotation-toolbar-store.js +48 -90
- package/lib/modules/annotation/index.d.ts +2 -0
- package/lib/modules/annotation/index.js +2 -2
- package/lib/modules/annotation/store.d.ts +11 -49
- package/lib/modules/annotation/store.js +144 -429
- package/lib/modules/annotation/view.js +3 -6
- package/lib/modules/audio-stream/index.js +1 -2
- package/lib/modules/chat/components/chat-select/index.js +3 -0
- package/lib/modules/components/control-bar/components/loading/index.css +76 -0
- package/lib/modules/components/control-bar/components/loading/index.d.ts +8 -0
- package/lib/modules/components/control-bar/components/loading/index.js +64 -0
- package/lib/modules/components/control-bar/components/loading/loading.png +0 -0
- package/lib/modules/components/control-bar/components/progress/index.d.ts +5 -0
- package/lib/modules/components/control-bar/components/progress/index.js +43 -0
- package/lib/modules/components/control-bar/components/progress/style.css +51 -0
- package/lib/modules/components/control-bar/components/switch-theme/index.css +99 -0
- package/lib/modules/components/control-bar/components/switch-theme/index.d.ts +9 -0
- package/lib/modules/components/control-bar/components/switch-theme/index.js +94 -0
- package/lib/modules/components/control-bar/components/switch-theme/item.d.ts +9 -0
- package/lib/modules/components/control-bar/components/switch-theme/item.js +54 -0
- package/lib/modules/components/control-bar/components/switch-theme/libs.d.ts +4 -0
- package/lib/modules/components/control-bar/components/switch-theme/libs.js +31 -0
- package/lib/modules/components/control-bar/index.css +87 -0
- package/lib/modules/components/control-bar/index.d.ts +20 -0
- package/lib/modules/components/control-bar/index.js +276 -0
- package/lib/modules/components/device-control/store.js +2 -2
- package/lib/modules/components/leave-meeting/components/index.css +0 -9
- package/lib/modules/components/leave-meeting/index.d.ts +2 -1
- package/lib/modules/components/leave-meeting/index.js +19 -8
- package/lib/modules/components/leave-meeting/portal.d.ts +6 -0
- package/lib/modules/components/leave-meeting/portal.js +29 -0
- package/lib/modules/components/leave-meeting/style.css +9 -0
- package/lib/modules/components/member-window/components/member-actions/components/more-actions.d.ts +5 -2
- package/lib/modules/components/member-window/components/member-actions/components/more-actions.js +19 -9
- package/lib/modules/components/member-window/components/member-actions/components/share-status.js +4 -4
- package/lib/modules/components/member-window/components/member-actions/index.js +13 -6
- package/lib/modules/components/member-window/components/member-actions/provider.d.ts +1 -0
- package/lib/modules/components/member-window/components/member-actions/provider.js +4 -3
- package/lib/modules/components/member-window/components/member-actions/store.d.ts +2 -1
- package/lib/modules/components/member-window/components/member-actions/store.js +5 -1
- package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.d.ts +6 -4
- package/lib/modules/components/member-window/components/video-player/components/local-video-player-with-zoom.js +77 -41
- package/lib/modules/components/member-window/components/video-player/components/remote-video-player-with-zoom.d.ts +3 -3
- package/lib/modules/components/member-window/components/video-player/index.d.ts +3 -3
- package/lib/modules/components/member-window/index.css +4 -0
- package/lib/modules/components/member-window/types.d.ts +9 -5
- package/lib/modules/components/toolbar/components/capture-tool/index.d.ts +9 -0
- package/lib/modules/components/toolbar/components/capture-tool/index.js +68 -0
- package/lib/modules/components/toolbar/components/clean-tool/index.d.ts +11 -0
- package/lib/modules/components/toolbar/components/clean-tool/index.js +71 -0
- package/lib/modules/components/toolbar/components/color-tool/color-panel/index.d.ts +11 -0
- package/lib/modules/components/toolbar/components/color-tool/color-panel/index.js +77 -0
- package/lib/modules/components/toolbar/components/color-tool/index.d.ts +14 -0
- package/lib/modules/components/toolbar/components/color-tool/index.js +66 -0
- package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/index.d.ts +11 -0
- package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/index.js +64 -0
- package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.d.ts +12 -0
- package/lib/modules/components/toolbar/components/graphic-tool/graphic-panel/libs.js +65 -0
- package/lib/modules/components/toolbar/components/graphic-tool/index.d.ts +15 -0
- package/lib/modules/components/toolbar/components/graphic-tool/index.js +82 -0
- package/lib/modules/components/toolbar/components/group-tool/index.d.ts +5 -0
- package/lib/modules/components/toolbar/components/group-tool/index.js +43 -0
- package/lib/modules/components/toolbar/components/icons/fold-icon.d.ts +2 -0
- package/lib/modules/components/toolbar/components/icons/fold-icon.js +41 -0
- package/lib/modules/components/toolbar/components/icons/move-icon.d.ts +1 -0
- package/lib/modules/components/toolbar/components/icons/move-icon.js +66 -0
- package/lib/modules/components/toolbar/components/item/index.d.ts +25 -0
- package/lib/modules/components/toolbar/components/item/index.js +165 -0
- package/lib/modules/components/toolbar/components/item/style.css +94 -0
- package/lib/modules/components/toolbar/components/multiple-color-tool/index.d.ts +12 -0
- package/lib/modules/components/toolbar/components/multiple-color-tool/index.js +75 -0
- package/lib/modules/components/toolbar/components/panel/index.d.ts +9 -0
- package/lib/modules/components/toolbar/components/panel/index.js +28 -0
- package/lib/modules/components/toolbar/components/panel/style.css +86 -0
- package/lib/modules/components/toolbar/components/pen-tool/index.d.ts +13 -0
- package/lib/modules/components/toolbar/components/pen-tool/index.js +62 -0
- package/lib/modules/components/toolbar/components/pen-tool/pen-panel/index.d.ts +8 -0
- package/lib/modules/components/toolbar/components/pen-tool/pen-panel/index.js +39 -0
- package/lib/modules/components/toolbar/components/save-draft/index.d.ts +7 -0
- package/lib/modules/components/toolbar/components/save-draft/index.js +59 -0
- package/lib/modules/components/toolbar/components/vertical-frame/index.d.ts +8 -0
- package/lib/modules/components/toolbar/components/vertical-frame/index.js +179 -0
- package/lib/modules/components/toolbar/hooks/use-resize-visible.d.ts +4 -0
- package/lib/modules/components/toolbar/hooks/use-resize-visible.js +59 -0
- package/lib/modules/components/toolbar/index.d.ts +29 -0
- package/lib/modules/components/toolbar/index.js +258 -0
- package/lib/modules/components/toolbar/style.css +85 -0
- package/lib/modules/components/toolbar/types.d.ts +13 -0
- package/lib/modules/components/toolbar/types.js +6 -0
- package/lib/modules/control-bar/components/more-actions/index.js +0 -6
- package/lib/modules/control-bar/components/share-state-nav/index.js +3 -2
- package/lib/modules/control-bar/index.js +2 -1
- package/lib/modules/control-bar/store.d.ts +15 -12
- package/lib/modules/control-bar/store.js +68 -29
- package/lib/modules/control-bar/view.js +33 -67
- package/lib/modules/device-pretest/store.js +4 -2
- package/lib/modules/dialog/components/dialog-container/component/body.js +3 -24
- package/lib/modules/dialog/components/dialog-container/index.d.ts +4 -0
- package/lib/modules/dialog/components/dialog-container/index.js +67 -44
- package/lib/modules/dialog/components/normal-window/index.js +4 -0
- package/lib/modules/dialog/dialogs/control-bar/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/control-bar/index.js +26 -35
- package/lib/modules/dialog/dialogs/participant/components/title.js +1 -1
- package/lib/modules/dialog/dialogs/sub-window/index.d.ts +2 -0
- package/lib/modules/dialog/dialogs/sub-window/index.js +102 -0
- package/lib/modules/dialog/dialogs/video-window/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/video-window/index.js +31 -25
- package/lib/modules/dialog/dialogs/whiteboard/index.js +0 -1
- package/lib/modules/dialog/hooks/use-popover-watcher.js +1 -2
- package/lib/modules/dialog/hooks/useElectron.d.ts +13 -0
- package/lib/modules/dialog/hooks/useElectron.js +66 -13
- package/lib/modules/dialog/index.d.ts +6 -3
- package/lib/modules/dialog/index.js +5 -3
- package/lib/modules/dialog/level-config.js +1 -1
- package/lib/modules/dialog/store.d.ts +23 -9
- package/lib/modules/dialog/store.js +84 -12
- package/lib/modules/dialog/type.d.ts +8 -0
- package/lib/modules/event-confirm/components/window/index.d.ts +5 -2
- package/lib/modules/event-confirm/components/window/index.js +38 -14
- package/lib/modules/event-confirm/index.css +3 -2
- package/lib/modules/event-confirm/store.d.ts +10 -5
- package/lib/modules/event-confirm/store.js +68 -20
- package/lib/modules/event-confirm/view.js +10 -8
- package/lib/modules/event-sound/index.d.ts +1 -0
- package/lib/modules/event-sound/index.js +11 -24
- package/lib/modules/interpreter/interpreter-list/interpreter-item/components/pick-user/index.js +1 -2
- package/lib/modules/interpreter/store.js +11 -13
- package/lib/modules/invite/components/pstn-invite.js +0 -1
- package/lib/modules/layout/components/CommonVideoRenderer.js +26 -26
- package/lib/modules/layout/components/who-is-speaking.js +3 -6
- package/lib/modules/layout/index.d.ts +3 -1
- package/lib/modules/layout/index.js +2 -1
- package/lib/modules/layout/store.d.ts +7 -59
- package/lib/modules/layout/store.js +133 -45
- package/lib/modules/layout/type.d.ts +55 -0
- package/lib/modules/participant/components/can-moveable/index.js +0 -1
- package/lib/modules/participant/components/participants/components/participants/components/attendee/index.js +4 -2
- package/lib/modules/participant/components/participants/components/participants/components/participants-more/index.js +14 -2
- package/lib/modules/participant/components/participants/components/participants/components/user-row/index.d.ts +1 -1
- package/lib/modules/participant/components/participants/components/participants/components/user-row/index.js +3 -2
- package/lib/modules/participant/components/participants/components/participants/index.js +3 -2
- package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.d.ts +1 -0
- package/lib/modules/participant/components/participants/components/render-user/components/user-action/components/move-actions-popover/index.js +3 -1
- package/lib/modules/participant/components/participants/components/render-user/components/user-action/index.js +4 -2
- package/lib/modules/participant/components/participants/components/render-user/index.d.ts +4 -2
- package/lib/modules/participant/components/participants/components/render-user/index.js +5 -3
- package/lib/modules/participant/components/participants/index.js +5 -2
- package/lib/modules/participant/components/participants/types.d.ts +3 -0
- package/lib/modules/participant/index.d.ts +2 -0
- package/lib/modules/participant/index.js +2 -1
- package/lib/modules/participant/member-list-data-source.js +3 -5
- package/lib/modules/participant/store.d.ts +5 -1
- package/lib/modules/participant/store.js +51 -44
- package/lib/modules/secondary-window/index.d.ts +50 -0
- package/lib/modules/secondary-window/index.js +113 -0
- package/lib/modules/secondary-window/store.d.ts +76 -0
- package/lib/modules/secondary-window/store.js +407 -0
- package/lib/modules/secondary-window/type.d.ts +110 -0
- package/lib/modules/secondary-window/type.js +35 -0
- package/lib/modules/secondary-window/view.d.ts +6 -0
- package/lib/modules/secondary-window/view.js +257 -0
- package/lib/modules/setting/audio-settings/audio-settings.js +4 -2
- package/lib/modules/setting/config.d.ts +4 -0
- package/lib/modules/setting/config.js +6 -3
- package/lib/modules/setting/general-settings/general-settings.js +9 -0
- package/lib/modules/setting/state/index.js +0 -10
- package/lib/modules/setting/store.d.ts +9 -3
- package/lib/modules/setting/store.js +110 -77
- package/lib/modules/setting/view.js +3 -2
- package/lib/modules/share-screen/components/control-bar/index.d.ts +14 -1
- package/lib/modules/share-screen/components/control-bar/index.js +17 -12
- package/lib/modules/share-screen/components/selection/index.js +16 -23
- package/lib/modules/share-screen/index.d.ts +4 -1
- package/lib/modules/share-screen/index.js +6 -3
- package/lib/modules/share-screen/store.d.ts +18 -19
- package/lib/modules/share-screen/store.js +101 -151
- package/lib/modules/share-screen/types.d.ts +7 -8
- package/lib/modules/state-bar/index.d.ts +2 -0
- package/lib/modules/state-bar/index.js +2 -1
- package/lib/modules/state-bar/live-streaming-state.js +0 -1
- package/lib/modules/state-bar/store.d.ts +5 -2
- package/lib/modules/state-bar/store.js +14 -7
- package/lib/modules/state-bar/view.js +3 -3
- package/lib/modules/video-window/components/members/index.js +10 -15
- package/lib/modules/video-window/store.d.ts +1 -0
- package/lib/modules/video-window/store.js +8 -3
- package/lib/modules/whiteboard/components/control-bar/store.d.ts +3 -0
- package/lib/modules/whiteboard/components/control-bar/store.js +20 -11
- package/lib/modules/whiteboard/components/toolbar/store.d.ts +2 -2
- package/lib/modules/whiteboard/components/toolbar/store.js +2 -2
- package/lib/modules/whiteboard/index.d.ts +20 -17
- package/lib/modules/whiteboard/index.js +167 -132
- package/lib/plugins/module-dev-plugin.js +4 -0
- package/lib/providers/ability-provider.js +2 -0
- package/lib/providers/annotation-provider.js +3 -3
- package/lib/providers/device-privilege-provider.js +13 -12
- package/lib/providers/device-provider.d.ts +40 -31
- package/lib/providers/device-provider.js +657 -713
- package/lib/providers/device-stream-provider.js +4 -4
- package/lib/providers/interpreter-provider.js +7 -9
- package/lib/providers/multi-display-provider.d.ts +90 -0
- package/lib/providers/multi-display-provider.js +593 -0
- package/lib/providers/privilege-provider.d.ts +3 -11
- package/lib/providers/privilege-provider.js +3 -12
- package/lib/providers/renderer-provider.d.ts +3 -3
- package/lib/providers/renderer-provider.js +20 -32
- package/lib/providers/room-provider.js +21 -16
- package/lib/providers/screen-share-provider.d.ts +15 -11
- package/lib/providers/screen-share-provider.js +118 -99
- package/lib/providers/sharing-provider.d.ts +7 -1
- package/lib/providers/sharing-provider.js +39 -3
- package/lib/providers/whiteboard-provider.d.ts +24 -0
- package/lib/providers/whiteboard-provider.js +128 -0
- package/lib/runtime.d.ts +1 -0
- package/lib/scenes/main-scene.d.ts +6 -0
- package/lib/scenes/main-scene.js +44 -2
- package/lib/scenes/waiting-scene.d.ts +0 -2
- package/lib/scenes/waiting-scene.js +0 -6
- package/lib/schema.d.ts +3 -3
- package/lib/schema.js +1 -1
- package/lib/shared-data-source/confirm-data.d.ts +19 -0
- package/lib/shared-data-source/confirm-data.js +119 -15
- package/lib/shared-data-source/member-data.d.ts +2 -2
- package/lib/shared-data-source/screen-share-data.d.ts +35 -28
- package/lib/shared-data-source/screen-share-data.js +19 -8
- package/lib/shared-data-source/setting.js +4 -3
- package/lib/shared-data-source/video-window.js +1 -2
- package/lib/shared-data-source/whiteboard-data.d.ts +70 -0
- package/lib/shared-data-source/whiteboard-data.js +348 -0
- package/lib/translations/enUS.d.ts +1 -0
- package/lib/translations/enUS.js +2 -1
- package/lib/translations/zhCN.d.ts +1 -0
- package/lib/translations/zhCN.js +2 -1
- package/lib/ui-scene.d.ts +1 -0
- package/lib/ui-scene.js +77 -24
- package/lib/utilities/constant.d.ts +9 -2
- package/lib/utilities/constant.js +10 -3
- package/lib/utilities/debug.d.ts +4 -0
- package/lib/utilities/debug.js +40 -0
- package/lib/utilities/default-config.d.ts +4 -0
- package/lib/utilities/default-config.js +8 -4
- package/lib/utilities/dialog-utils.d.ts +3 -2
- package/lib/utilities/dialog-utils.js +56 -15
- package/lib/utilities/meeting-detail.js +4 -1
- package/lib/utilities/package-info.d.ts +3 -0
- package/lib/utilities/package-info.js +15 -0
- package/lib/utilities/renderer-event.d.ts +4 -6
- package/lib/utilities/renderer-event.js +23 -43
- package/lib/utilities/renderer.d.ts +1 -1
- package/lib/utilities/renderer.js +44 -10
- package/lib/utilities/shared-storage.d.ts +18 -0
- package/lib/utilities/shared-storage.js +63 -0
- package/lib/utilities/tools.js +2 -1
- package/lib/waiting-room-control-manager.js +6 -6
- package/package.json +6 -7
- package/public/index.html +5 -0
- package/lib/electron/tools.d.ts +0 -5
- package/lib/electron/tools.js +0 -62
|
@@ -0,0 +1,179 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.symbol.js");
|
|
4
|
+
require("core-js/modules/es.array.filter.js");
|
|
5
|
+
require("core-js/modules/es.array.for-each.js");
|
|
6
|
+
require("core-js/modules/es.array.push.js");
|
|
7
|
+
require("core-js/modules/es.object.define-properties.js");
|
|
8
|
+
require("core-js/modules/es.object.define-property.js");
|
|
9
|
+
require("core-js/modules/es.object.get-own-property-descriptor.js");
|
|
10
|
+
require("core-js/modules/es.object.get-own-property-descriptors.js");
|
|
11
|
+
require("core-js/modules/es.object.keys.js");
|
|
12
|
+
require("core-js/modules/es.object.to-string.js");
|
|
13
|
+
require("core-js/modules/esnext.iterator.constructor.js");
|
|
14
|
+
require("core-js/modules/esnext.iterator.filter.js");
|
|
15
|
+
require("core-js/modules/esnext.iterator.for-each.js");
|
|
16
|
+
require("core-js/modules/web.dom-collections.for-each.js");
|
|
17
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
18
|
+
Object.defineProperty(exports, "__esModule", {
|
|
19
|
+
value: true
|
|
20
|
+
});
|
|
21
|
+
exports.VerticalBar = VerticalBar;
|
|
22
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
23
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
24
|
+
var _web = require("@react-spring/web");
|
|
25
|
+
var _react = require("@use-gesture/react");
|
|
26
|
+
var _react2 = require("react");
|
|
27
|
+
var _moveIcon = _interopRequireDefault(require("../icons/move-icon"));
|
|
28
|
+
var _foldIcon = _interopRequireDefault(require("../icons/fold-icon"));
|
|
29
|
+
var _i18n = require("agora-ui-foundation/lib/i18n");
|
|
30
|
+
var _type = require("agora-ui-foundation/lib/components/icon/type");
|
|
31
|
+
var _icon = require("agora-ui-foundation/lib/components/icon");
|
|
32
|
+
var _useResizeVisible2 = require("../../hooks/use-resize-visible");
|
|
33
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
34
|
+
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; }
|
|
35
|
+
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; }
|
|
36
|
+
function VerticalBar(props) {
|
|
37
|
+
var transI18n = (0, _i18n.useI18n)();
|
|
38
|
+
var container = props.container,
|
|
39
|
+
show = props.show,
|
|
40
|
+
children = props.children,
|
|
41
|
+
_props$offsetTop = props.offsetTop,
|
|
42
|
+
offsetTop = _props$offsetTop === void 0 ? 0 : _props$offsetTop,
|
|
43
|
+
onPlacementChanged = props.onPlacementChanged,
|
|
44
|
+
onResize = props.onResize;
|
|
45
|
+
var x = 20;
|
|
46
|
+
var y = (0, _react2.useMemo)(function () {
|
|
47
|
+
return 20 + offsetTop;
|
|
48
|
+
}, [offsetTop]);
|
|
49
|
+
var toolbarDom = (0, _react2.useRef)();
|
|
50
|
+
var _useState = (0, _react2.useState)('right'),
|
|
51
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
52
|
+
placement = _useState2[0],
|
|
53
|
+
setPlacement = _useState2[1];
|
|
54
|
+
var _useState3 = (0, _react2.useState)({
|
|
55
|
+
x: x,
|
|
56
|
+
y: y
|
|
57
|
+
}),
|
|
58
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
59
|
+
position = _useState4[0],
|
|
60
|
+
setPosition = _useState4[1];
|
|
61
|
+
var _useSpring = (0, _web.useSpring)({
|
|
62
|
+
x: x,
|
|
63
|
+
y: y
|
|
64
|
+
}, []),
|
|
65
|
+
_useSpring2 = (0, _slicedToArray2["default"])(_useSpring, 2),
|
|
66
|
+
_useSpring2$ = _useSpring2[0],
|
|
67
|
+
rx = _useSpring2$.x,
|
|
68
|
+
ry = _useSpring2$.y,
|
|
69
|
+
api = _useSpring2[1];
|
|
70
|
+
var _useState5 = (0, _react2.useState)(false),
|
|
71
|
+
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
72
|
+
folded = _useState6[0],
|
|
73
|
+
setFold = _useState6[1];
|
|
74
|
+
var _useState7 = (0, _react2.useState)(0),
|
|
75
|
+
_useState8 = (0, _slicedToArray2["default"])(_useState7, 2),
|
|
76
|
+
topTemp = _useState8[0],
|
|
77
|
+
setTopTemp = _useState8[1];
|
|
78
|
+
var _useResizeVisible = (0, _useResizeVisible2.useResizeVisible)(),
|
|
79
|
+
coverCount = _useResizeVisible.coverCount,
|
|
80
|
+
setToolbarDom = _useResizeVisible.setToolbarDom;
|
|
81
|
+
(0, _react2.useEffect)(function () {
|
|
82
|
+
onResize(coverCount);
|
|
83
|
+
}, [coverCount]);
|
|
84
|
+
var bind = (0, _react.useDrag)(function (p) {
|
|
85
|
+
var _movement = (0, _slicedToArray2["default"])(p.movement, 2),
|
|
86
|
+
mx = _movement[0],
|
|
87
|
+
my = _movement[1];
|
|
88
|
+
api.start(placement === 'left' ? {
|
|
89
|
+
x: position.x + mx,
|
|
90
|
+
y: position.y + my
|
|
91
|
+
} : {
|
|
92
|
+
x: x + mx,
|
|
93
|
+
y: y + my
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
var handleMouseUp = function handleMouseUp() {
|
|
97
|
+
if (toolbarDom.current) {
|
|
98
|
+
var containerClientRect = (container || document.body).getBoundingClientRect();
|
|
99
|
+
var toolbarClientRect = toolbarDom.current.getBoundingClientRect();
|
|
100
|
+
var toolbarCenterPos = toolbarClientRect.left - toolbarClientRect.width / 2;
|
|
101
|
+
var _position = {
|
|
102
|
+
x: x,
|
|
103
|
+
y: y
|
|
104
|
+
};
|
|
105
|
+
if (toolbarCenterPos > containerClientRect.width / 2) {
|
|
106
|
+
// right
|
|
107
|
+
setPlacement('left');
|
|
108
|
+
onPlacementChanged('left');
|
|
109
|
+
_position = {
|
|
110
|
+
x: containerClientRect.width - toolbarClientRect.width - x,
|
|
111
|
+
y: y
|
|
112
|
+
};
|
|
113
|
+
} else {
|
|
114
|
+
// left
|
|
115
|
+
_position = {
|
|
116
|
+
x: x,
|
|
117
|
+
y: y
|
|
118
|
+
};
|
|
119
|
+
setPlacement('right');
|
|
120
|
+
onPlacementChanged('right');
|
|
121
|
+
}
|
|
122
|
+
setPosition(_position);
|
|
123
|
+
api.start(_position);
|
|
124
|
+
}
|
|
125
|
+
};
|
|
126
|
+
var handleRefMount = function handleRefMount(dom) {
|
|
127
|
+
if (dom) {
|
|
128
|
+
var top = dom.getBoundingClientRect().top;
|
|
129
|
+
if (topTemp !== top) {
|
|
130
|
+
setToolbarDom(dom);
|
|
131
|
+
setTopTemp(top);
|
|
132
|
+
toolbarDom.current = dom;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
};
|
|
136
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsxs)(_jsxRuntime.Fragment, {
|
|
137
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
|
|
138
|
+
onClick: function onClick() {
|
|
139
|
+
return setFold(false);
|
|
140
|
+
},
|
|
141
|
+
className: "fcr-fragment-board-toobar-folded-button",
|
|
142
|
+
style: {
|
|
143
|
+
left: position.x,
|
|
144
|
+
top: position.y,
|
|
145
|
+
visibility: folded && show ? 'visible' : 'hidden'
|
|
146
|
+
},
|
|
147
|
+
children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(_icon.FcrIcon, {
|
|
148
|
+
type: _type.FcrIconType.FCR_WHITEBOARD_EXPAND2,
|
|
149
|
+
colors: {
|
|
150
|
+
iconPrimary: '#000',
|
|
151
|
+
iconSecondary: '#000'
|
|
152
|
+
}
|
|
153
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("span", {
|
|
154
|
+
children: transI18n('fmt_screenshare_whiteboard_button_spread')
|
|
155
|
+
})]
|
|
156
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsxs)(_web.animated.div, {
|
|
157
|
+
ref: handleRefMount,
|
|
158
|
+
className: "fcr-fragment-whiteboard-toolbar",
|
|
159
|
+
style: {
|
|
160
|
+
left: rx,
|
|
161
|
+
top: ry || position.y,
|
|
162
|
+
visibility: show && !folded ? 'visible' : 'hidden'
|
|
163
|
+
},
|
|
164
|
+
children: [children, !folded && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
|
|
165
|
+
className: "fcr-fragment-board-toolbar-fold fcr-fragment-board-toolbar-fold--".concat(placement),
|
|
166
|
+
onClick: function onClick() {
|
|
167
|
+
setFold(true);
|
|
168
|
+
},
|
|
169
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_foldIcon["default"], {})
|
|
170
|
+
}), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", _objectSpread(_objectSpread({}, bind()), {}, {
|
|
171
|
+
style: {
|
|
172
|
+
cursor: 'move'
|
|
173
|
+
},
|
|
174
|
+
onMouseUp: handleMouseUp,
|
|
175
|
+
children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_moveIcon["default"], {})
|
|
176
|
+
}))]
|
|
177
|
+
})]
|
|
178
|
+
});
|
|
179
|
+
}
|
|
@@ -0,0 +1,59 @@
|
|
|
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.useResizeVisible = void 0;
|
|
9
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
10
|
+
var _react = require("react");
|
|
11
|
+
var _item = require("../components/item");
|
|
12
|
+
var _view = require("../../../action-bar/view");
|
|
13
|
+
var useResizeVisible = exports.useResizeVisible = function useResizeVisible() {
|
|
14
|
+
var toolbar = (0, _react.useRef)();
|
|
15
|
+
var _useState = (0, _react.useState)(0),
|
|
16
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
17
|
+
threshold = _useState2[0],
|
|
18
|
+
setThreshold = _useState2[1];
|
|
19
|
+
var _useState3 = (0, _react.useState)(-1),
|
|
20
|
+
_useState4 = (0, _slicedToArray2["default"])(_useState3, 2),
|
|
21
|
+
coverCount = _useState4[0],
|
|
22
|
+
setCoverCount = _useState4[1];
|
|
23
|
+
var _useState5 = (0, _react.useState)(0),
|
|
24
|
+
_useState6 = (0, _slicedToArray2["default"])(_useState5, 2),
|
|
25
|
+
itemHeight = _useState6[0],
|
|
26
|
+
setItemHeight = _useState6[1];
|
|
27
|
+
var actionbar = document.querySelector(".".concat(_view.actionBarClassName));
|
|
28
|
+
var actionBarHeight = (actionbar === null || actionbar === void 0 ? void 0 : actionbar.getBoundingClientRect().height) || 0;
|
|
29
|
+
var bottomHeight = 20;
|
|
30
|
+
var handleResize = (0, _react.useCallback)(function () {
|
|
31
|
+
var offsetHeight = document.body.offsetHeight;
|
|
32
|
+
var coverSize = threshold - offsetHeight;
|
|
33
|
+
var coverCount = Math.floor(coverSize / itemHeight);
|
|
34
|
+
setCoverCount(coverCount);
|
|
35
|
+
}, [threshold]);
|
|
36
|
+
(0, _react.useEffect)(function () {
|
|
37
|
+
window.addEventListener('resize', handleResize);
|
|
38
|
+
return function () {
|
|
39
|
+
window.removeEventListener('resize', handleResize);
|
|
40
|
+
};
|
|
41
|
+
}, [threshold]);
|
|
42
|
+
var setToolbarDom = (0, _react.useCallback)(function (dom) {
|
|
43
|
+
if (dom) {
|
|
44
|
+
var _items$;
|
|
45
|
+
toolbar.current = dom;
|
|
46
|
+
var _dom$getBoundingClien = dom.getBoundingClientRect(),
|
|
47
|
+
top = _dom$getBoundingClien.top,
|
|
48
|
+
height = _dom$getBoundingClien.height;
|
|
49
|
+
var items = dom.querySelectorAll(".".concat(_item.toolBarItemClassName));
|
|
50
|
+
setItemHeight((_items$ = items[0]) === null || _items$ === void 0 ? void 0 : _items$.getBoundingClientRect().height);
|
|
51
|
+
var _threshold = height + top + actionBarHeight + bottomHeight;
|
|
52
|
+
setThreshold(_threshold);
|
|
53
|
+
}
|
|
54
|
+
}, []);
|
|
55
|
+
return {
|
|
56
|
+
coverCount: coverCount,
|
|
57
|
+
setToolbarDom: setToolbarDom
|
|
58
|
+
};
|
|
59
|
+
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { FcrBoardShape, FcrBoardToolType } from 'fcr-core/lib/room-control/whiteboard-control/enums';
|
|
2
|
+
import './style.css';
|
|
3
|
+
export declare const colors: string[];
|
|
4
|
+
export declare const WhiteboardToolbar: (props: {
|
|
5
|
+
direction?: "horizontal" | "vertical";
|
|
6
|
+
container?: HTMLDivElement;
|
|
7
|
+
show: boolean;
|
|
8
|
+
currentStrokeWidth: number;
|
|
9
|
+
currentColor: string;
|
|
10
|
+
currentTool: FcrBoardToolType;
|
|
11
|
+
currentShape: FcrBoardShape;
|
|
12
|
+
redoSteps: boolean;
|
|
13
|
+
undoSteps: boolean;
|
|
14
|
+
commonColors?: string[];
|
|
15
|
+
themeColors?: string[];
|
|
16
|
+
setStrokeWidth: (width: number) => void;
|
|
17
|
+
setTool: (tool: FcrBoardToolType) => void;
|
|
18
|
+
setShape: (shape: FcrBoardShape) => void;
|
|
19
|
+
setStrokeColor: (color: string) => void;
|
|
20
|
+
undo: () => void;
|
|
21
|
+
redo: () => void;
|
|
22
|
+
clean: () => void;
|
|
23
|
+
size?: number;
|
|
24
|
+
setCommonColors?: (colors: string[]) => void;
|
|
25
|
+
onSave?: () => void;
|
|
26
|
+
progress?: number;
|
|
27
|
+
setProgress?: (progress: number) => void;
|
|
28
|
+
offsetTop?: number;
|
|
29
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -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
|
+
};
|
|
@@ -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, {
|