fcr-ui-scene 3.7.2 → 3.7.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/creator.js +23 -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/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 +475 -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/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/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 +46 -88
- 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 +135 -418
- package/lib/modules/annotation/view.js +3 -6
- 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/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 +15 -7
- 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/index.css +4 -0
- package/lib/modules/components/member-window/types.d.ts +6 -2
- 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 +7 -6
- package/lib/modules/control-bar/store.js +28 -21
- package/lib/modules/control-bar/view.js +7 -55
- package/lib/modules/dialog/dialogs/control-bar/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/control-bar/index.js +17 -3
- 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 +98 -0
- package/lib/modules/dialog/dialogs/video-window/index.d.ts +1 -0
- package/lib/modules/dialog/dialogs/video-window/index.js +3 -2
- 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 +62 -12
- package/lib/modules/dialog/index.d.ts +6 -3
- package/lib/modules/dialog/index.js +5 -3
- package/lib/modules/dialog/store.d.ts +21 -8
- package/lib/modules/dialog/store.js +79 -11
- package/lib/modules/dialog/type.d.ts +8 -0
- package/lib/modules/event-confirm/index.css +5 -2
- package/lib/modules/event-confirm/store.js +6 -7
- package/lib/modules/event-confirm/view.js +1 -1
- package/lib/modules/event-sound/index.d.ts +1 -0
- package/lib/modules/event-sound/index.js +11 -24
- package/lib/modules/invite/components/pstn-invite.js +0 -1
- package/lib/modules/layout/components/CommonVideoRenderer.js +21 -21
- 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 +126 -24
- 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/store.d.ts +5 -1
- package/lib/modules/participant/store.js +8 -1
- package/lib/modules/secondary-window/index.d.ts +49 -0
- package/lib/modules/secondary-window/index.js +108 -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 +106 -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/general-settings/general-settings.js +9 -0
- package/lib/modules/setting/state/index.js +0 -10
- package/lib/modules/setting/store.d.ts +1 -0
- package/lib/modules/setting/store.js +6 -3
- 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 +10 -15
- 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 +9 -9
- package/lib/modules/share-screen/store.js +39 -64
- 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 +7 -12
- package/lib/modules/video-window/store.d.ts +1 -0
- package/lib/modules/video-window/store.js +5 -0
- package/lib/modules/whiteboard/components/toolbar/store.d.ts +2 -2
- package/lib/modules/whiteboard/index.d.ts +10 -13
- package/lib/modules/whiteboard/index.js +12 -11
- package/lib/providers/ability-provider.js +2 -0
- package/lib/providers/device-provider.d.ts +6 -3
- package/lib/providers/device-provider.js +331 -333
- package/lib/providers/multi-display-provider.d.ts +85 -0
- package/lib/providers/multi-display-provider.js +581 -0
- package/lib/providers/privilege-provider.js +1 -7
- package/lib/providers/room-provider.js +7 -1
- package/lib/providers/screen-share-provider.d.ts +3 -1
- package/lib/providers/screen-share-provider.js +39 -40
- package/lib/providers/sharing-provider.d.ts +7 -1
- package/lib/providers/sharing-provider.js +32 -3
- package/lib/providers/whiteboard-provider.d.ts +24 -0
- package/lib/providers/whiteboard-provider.js +127 -0
- package/lib/runtime.d.ts +1 -0
- package/lib/scenes/main-scene.d.ts +6 -0
- package/lib/scenes/main-scene.js +38 -2
- package/lib/scenes/waiting-scene.d.ts +0 -2
- package/lib/scenes/waiting-scene.js +0 -6
- package/lib/shared-data-source/member-data.d.ts +2 -2
- package/lib/shared-data-source/screen-share-data.d.ts +6 -0
- package/lib/shared-data-source/screen-share-data.js +5 -0
- package/lib/shared-data-source/setting.js +2 -1
- package/lib/shared-data-source/video-window.js +1 -2
- package/lib/shared-data-source/whiteboard-data.d.ts +68 -0
- package/lib/shared-data-source/whiteboard-data.js +347 -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 +0 -1
- package/lib/ui-scene.js +0 -3
- package/lib/utilities/constant.d.ts +4 -2
- package/lib/utilities/constant.js +3 -1
- package/lib/utilities/debug.d.ts +4 -0
- package/lib/utilities/debug.js +40 -0
- package/lib/utilities/dialog-utils.js +26 -4
- package/lib/utilities/meeting-detail.js +4 -1
- 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/package.json +5 -6
- package/lib/electron/tools.d.ts +0 -5
- package/lib/electron/tools.js +0 -62
|
@@ -0,0 +1,62 @@
|
|
|
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.AnnotationPenTool = void 0;
|
|
9
|
+
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
10
|
+
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
+
var _type = require("agora-ui-foundation/lib/components/icon/type");
|
|
12
|
+
var _item = require("../item");
|
|
13
|
+
var _penPanel = require("./pen-panel");
|
|
14
|
+
var _react = require("react");
|
|
15
|
+
var _enums = require("fcr-core/lib/room-control/whiteboard-control/enums");
|
|
16
|
+
var _i18n = require("agora-ui-foundation/lib/i18n");
|
|
17
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
18
|
+
var AnnotationPenTool = exports.AnnotationPenTool = function AnnotationPenTool(props) {
|
|
19
|
+
var size = props.size,
|
|
20
|
+
hideTitle = props.hideTitle,
|
|
21
|
+
currentColor = props.currentColor,
|
|
22
|
+
currentTool = props.currentTool,
|
|
23
|
+
setTool = props.setTool,
|
|
24
|
+
currentStrokeWidth = props.currentStrokeWidth,
|
|
25
|
+
setStrokeWidth = props.setStrokeWidth,
|
|
26
|
+
placement = props.placement,
|
|
27
|
+
direction = props.direction;
|
|
28
|
+
var _useState = (0, _react.useState)(false),
|
|
29
|
+
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
30
|
+
visible = _useState2[0],
|
|
31
|
+
setVisible = _useState2[1];
|
|
32
|
+
var handleClick = function handleClick() {
|
|
33
|
+
setVisible(!visible);
|
|
34
|
+
setTool(_enums.FcrBoardToolType.CURVE);
|
|
35
|
+
};
|
|
36
|
+
var handleVisibleChange = function handleVisibleChange(visible) {
|
|
37
|
+
setVisible(visible);
|
|
38
|
+
};
|
|
39
|
+
var t = (0, _i18n.useI18n)();
|
|
40
|
+
var penMap = (0, _defineProperty2["default"])({}, _enums.FcrBoardToolType.CURVE, _type.FcrIconType.FCR_WHITEBOARD_PED5);
|
|
41
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.AnnotationToolItem, {
|
|
42
|
+
placement: placement,
|
|
43
|
+
size: size,
|
|
44
|
+
hideTitle: hideTitle,
|
|
45
|
+
active: currentTool in penMap,
|
|
46
|
+
iconType: currentTool in penMap ? penMap[currentTool] : _type.FcrIconType.FCR_WHITEBOARD_PED5,
|
|
47
|
+
title: t('fmt_screenshare_whiteboard_button_paintbrush'),
|
|
48
|
+
lineColor: currentColor,
|
|
49
|
+
visible: visible,
|
|
50
|
+
onVisibleChange: handleVisibleChange,
|
|
51
|
+
onClick: handleClick,
|
|
52
|
+
showArrow: true,
|
|
53
|
+
content: /*#__PURE__*/(0, _jsxRuntime.jsx)(_penPanel.AnnotationPenPanel, {
|
|
54
|
+
size: size,
|
|
55
|
+
hideTitle: hideTitle,
|
|
56
|
+
currentStrokeWidth: currentStrokeWidth,
|
|
57
|
+
setStrokeWidth: setStrokeWidth,
|
|
58
|
+
onClick: handleClick,
|
|
59
|
+
direction: direction
|
|
60
|
+
})
|
|
61
|
+
});
|
|
62
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export declare const AnnotationPenPanel: (props: {
|
|
2
|
+
size?: number;
|
|
3
|
+
hideTitle?: boolean;
|
|
4
|
+
currentStrokeWidth: number;
|
|
5
|
+
setStrokeWidth: (width: number) => void;
|
|
6
|
+
onClick: () => void;
|
|
7
|
+
direction?: "horizontal" | "vertical";
|
|
8
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
require("core-js/modules/es.object.define-property.js");
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports.AnnotationPenPanel = void 0;
|
|
8
|
+
require("core-js/modules/es.array.map.js");
|
|
9
|
+
require("core-js/modules/es.object.to-string.js");
|
|
10
|
+
var _type = require("agora-ui-foundation/lib/components/icon/type");
|
|
11
|
+
var _item = require("../../item");
|
|
12
|
+
var _panel = require("../../panel");
|
|
13
|
+
var _mobxReact = require("mobx-react");
|
|
14
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
15
|
+
var AnnotationPenPanel = exports.AnnotationPenPanel = (0, _mobxReact.observer)(function (props) {
|
|
16
|
+
var size = props.size,
|
|
17
|
+
hideTitle = props.hideTitle,
|
|
18
|
+
currentStrokeWidth = props.currentStrokeWidth,
|
|
19
|
+
setStrokeWidth = props.setStrokeWidth,
|
|
20
|
+
_onClick = props.onClick,
|
|
21
|
+
direction = props.direction;
|
|
22
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_panel.AnnotationToolPanel, {
|
|
23
|
+
direction: direction,
|
|
24
|
+
size: "small",
|
|
25
|
+
header: [3, 5, 7, 10].map(function (width, index) {
|
|
26
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.AnnotationToolItem, {
|
|
27
|
+
hideTitle: hideTitle,
|
|
28
|
+
size: size,
|
|
29
|
+
active: currentStrokeWidth === width,
|
|
30
|
+
iconType: _type.FcrIconType.FCR_PENSIZE_STRAIGHT,
|
|
31
|
+
level: index + 1,
|
|
32
|
+
onClick: function onClick() {
|
|
33
|
+
_onClick();
|
|
34
|
+
setStrokeWidth(width);
|
|
35
|
+
}
|
|
36
|
+
}, width);
|
|
37
|
+
})
|
|
38
|
+
});
|
|
39
|
+
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { ToolTipProps } from 'agora-ui-foundation/lib/components/tooltip';
|
|
2
|
+
export declare const AnnotationToolSaveDraft: (props: {
|
|
3
|
+
progress: number;
|
|
4
|
+
setProgress: (progress: number) => void;
|
|
5
|
+
onClick: () => void;
|
|
6
|
+
placement: ToolTipProps["placement"];
|
|
7
|
+
}) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -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.AnnotationToolSaveDraft = void 0;
|
|
9
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
10
|
+
require("core-js/modules/web.timers.js");
|
|
11
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
12
|
+
var _item = require("../item");
|
|
13
|
+
var _type = require("agora-ui-foundation/lib/components/icon/type");
|
|
14
|
+
var _i18n = require("agora-ui-foundation/lib/i18n");
|
|
15
|
+
var _jsxRuntime = require("react/jsx-runtime");
|
|
16
|
+
var AnnotationToolSaveDraft = exports.AnnotationToolSaveDraft = function AnnotationToolSaveDraft(props) {
|
|
17
|
+
var t = (0, _i18n.useI18n)();
|
|
18
|
+
var progress = props.progress,
|
|
19
|
+
placement = props.placement,
|
|
20
|
+
setProgress = props.setProgress,
|
|
21
|
+
onClick = props.onClick;
|
|
22
|
+
var getSnapshotImage = /*#__PURE__*/function () {
|
|
23
|
+
var _ref = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
24
|
+
var progressInterval;
|
|
25
|
+
return _regenerator["default"].wrap(function (_context) {
|
|
26
|
+
while (1) switch (_context.prev = _context.next) {
|
|
27
|
+
case 0:
|
|
28
|
+
onClick();
|
|
29
|
+
progressInterval = setInterval(function () {
|
|
30
|
+
if (progress < 100) {
|
|
31
|
+
setProgress(progress + 1);
|
|
32
|
+
} else {
|
|
33
|
+
clearInterval(progressInterval);
|
|
34
|
+
}
|
|
35
|
+
}, 4);
|
|
36
|
+
setTimeout(function () {
|
|
37
|
+
setProgress(100);
|
|
38
|
+
clearInterval(progressInterval);
|
|
39
|
+
}, 400);
|
|
40
|
+
case 1:
|
|
41
|
+
case "end":
|
|
42
|
+
return _context.stop();
|
|
43
|
+
}
|
|
44
|
+
}, _callee);
|
|
45
|
+
}));
|
|
46
|
+
return function getSnapshotImage() {
|
|
47
|
+
return _ref.apply(this, arguments);
|
|
48
|
+
};
|
|
49
|
+
}();
|
|
50
|
+
return /*#__PURE__*/(0, _jsxRuntime.jsx)(_item.AnnotationToolItem, {
|
|
51
|
+
size: 28,
|
|
52
|
+
onClick: getSnapshotImage,
|
|
53
|
+
iconType: _type.FcrIconType.FCR_DOWNLOAD,
|
|
54
|
+
title: t('fmt_screenshare_whiteboard_button_savescript'),
|
|
55
|
+
hideTitle: true,
|
|
56
|
+
disabled: !!progress && progress > 0 && progress < 100,
|
|
57
|
+
placement: placement
|
|
58
|
+
});
|
|
59
|
+
};
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { PropsWithChildren } from 'react';
|
|
2
|
+
export declare function VerticalBar(props: PropsWithChildren<{
|
|
3
|
+
container?: HTMLDivElement;
|
|
4
|
+
show: boolean;
|
|
5
|
+
offsetTop?: number;
|
|
6
|
+
onPlacementChanged: (placement: 'left' | 'right') => void;
|
|
7
|
+
onResize: (coverCount: number) => void;
|
|
8
|
+
}>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -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;
|