@searpent/react-image-annotate 2.0.2 → 2.0.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/Annotator/index.js +10 -2
- package/GroupSelectorSidebarBox/index.js +63 -0
- package/MainLayout/index.js +17 -3
- package/package.json +1 -1
package/Annotator/index.js
CHANGED
|
@@ -60,7 +60,11 @@ export var Annotator = function Annotator(_ref) {
|
|
|
60
60
|
hideFullScreen = _ref.hideFullScreen,
|
|
61
61
|
hideSave = _ref.hideSave,
|
|
62
62
|
allowComments = _ref.allowComments,
|
|
63
|
-
onImagesChange = _ref.onImagesChange
|
|
63
|
+
onImagesChange = _ref.onImagesChange,
|
|
64
|
+
groups = _ref.groups,
|
|
65
|
+
onGroupSelect = _ref.onGroupSelect,
|
|
66
|
+
selectedGroupId = _ref.selectedGroupId,
|
|
67
|
+
hideHistory = _ref.hideHistory;
|
|
64
68
|
|
|
65
69
|
if (typeof selectedImage === "string") {
|
|
66
70
|
selectedImage = (images || []).findIndex(function (img) {
|
|
@@ -155,7 +159,11 @@ export var Annotator = function Annotator(_ref) {
|
|
|
155
159
|
hideClone: hideClone,
|
|
156
160
|
hideSettings: hideSettings,
|
|
157
161
|
hideFullScreen: hideFullScreen,
|
|
158
|
-
hideSave: hideSave
|
|
162
|
+
hideSave: hideSave,
|
|
163
|
+
groups: groups,
|
|
164
|
+
onGroupSelect: onGroupSelect,
|
|
165
|
+
selectedGroupId: selectedGroupId,
|
|
166
|
+
hideHistory: hideHistory
|
|
159
167
|
}));
|
|
160
168
|
};
|
|
161
169
|
export default Annotator;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import React, { memo } from "react";
|
|
2
|
+
import { makeStyles } from "@mui/styles";
|
|
3
|
+
import { createTheme, ThemeProvider } from "@mui/material/styles";
|
|
4
|
+
import SidebarBoxContainer from "../SidebarBoxContainer";
|
|
5
|
+
import CollectionsIcon from "@mui/icons-material/Collections";
|
|
6
|
+
import { grey } from "@mui/material/colors";
|
|
7
|
+
import List from "@mui/material/List";
|
|
8
|
+
import ListItem from "@mui/material/ListItem";
|
|
9
|
+
import ListItemText from "@mui/material/ListItemText";
|
|
10
|
+
import isEqual from "lodash/isEqual";
|
|
11
|
+
var theme = createTheme();
|
|
12
|
+
var useStyles = makeStyles(function (theme) {
|
|
13
|
+
return {
|
|
14
|
+
img: {
|
|
15
|
+
width: 40,
|
|
16
|
+
height: 40,
|
|
17
|
+
borderRadius: 8
|
|
18
|
+
}
|
|
19
|
+
};
|
|
20
|
+
});
|
|
21
|
+
export var GroupSelectorSidebarBox = function GroupSelectorSidebarBox(_ref) {
|
|
22
|
+
var title = _ref.title,
|
|
23
|
+
subtitle = _ref.subtitle,
|
|
24
|
+
groups = _ref.groups,
|
|
25
|
+
onSelect = _ref.onSelect,
|
|
26
|
+
selectedGroupId = _ref.selectedGroupId;
|
|
27
|
+
var classes = useStyles();
|
|
28
|
+
return React.createElement(ThemeProvider, {
|
|
29
|
+
theme: theme
|
|
30
|
+
}, React.createElement(SidebarBoxContainer, {
|
|
31
|
+
title: title || '',
|
|
32
|
+
subTitle: subtitle || '',
|
|
33
|
+
icon: React.createElement(CollectionsIcon, {
|
|
34
|
+
style: {
|
|
35
|
+
color: grey[700]
|
|
36
|
+
}
|
|
37
|
+
})
|
|
38
|
+
}, React.createElement(List, null, groups.map(function (_ref2, i) {
|
|
39
|
+
var id = _ref2.id,
|
|
40
|
+
groupTitle = _ref2.title,
|
|
41
|
+
groupSubtitle = _ref2.subtitle,
|
|
42
|
+
color = _ref2.color;
|
|
43
|
+
return React.createElement(ListItem, {
|
|
44
|
+
button: true,
|
|
45
|
+
onClick: function onClick() {
|
|
46
|
+
return onSelect(id);
|
|
47
|
+
},
|
|
48
|
+
dense: true,
|
|
49
|
+
key: id,
|
|
50
|
+
style: {
|
|
51
|
+
backgroundColor: id === selectedGroupId ? '#bbdefb' : null
|
|
52
|
+
}
|
|
53
|
+
}, React.createElement(ListItemText, {
|
|
54
|
+
primary: React.createElement("strong", {
|
|
55
|
+
style: {
|
|
56
|
+
color: color
|
|
57
|
+
}
|
|
58
|
+
}, groupTitle),
|
|
59
|
+
secondary: groupSubtitle
|
|
60
|
+
}));
|
|
61
|
+
}))));
|
|
62
|
+
};
|
|
63
|
+
export default GroupSelectorSidebarBox;
|
package/MainLayout/index.js
CHANGED
|
@@ -10,6 +10,7 @@ import DebugBox from "../DebugSidebarBox";
|
|
|
10
10
|
import HistorySidebarBox from "../HistorySidebarBox";
|
|
11
11
|
import ImageCanvas from "../ImageCanvas";
|
|
12
12
|
import ImageSelector from "../ImageSelectorSidebarBox";
|
|
13
|
+
import GroupSelector from "../GroupSelectorSidebarBox";
|
|
13
14
|
import KeyframeTimeline from "../KeyframeTimeline";
|
|
14
15
|
import KeyframesSelector from "../KeyframesSelectorSidebarBox";
|
|
15
16
|
import RegionSelector from "../RegionSelectorSidebarBox";
|
|
@@ -77,7 +78,15 @@ export var MainLayout = function MainLayout(_ref3) {
|
|
|
77
78
|
_ref3$hideFullScreen = _ref3.hideFullScreen,
|
|
78
79
|
hideFullScreen = _ref3$hideFullScreen === void 0 ? false : _ref3$hideFullScreen,
|
|
79
80
|
_ref3$hideSave = _ref3.hideSave,
|
|
80
|
-
hideSave = _ref3$hideSave === void 0 ? false : _ref3$hideSave
|
|
81
|
+
hideSave = _ref3$hideSave === void 0 ? false : _ref3$hideSave,
|
|
82
|
+
_ref3$groups = _ref3.groups,
|
|
83
|
+
groups = _ref3$groups === void 0 ? [] : _ref3$groups,
|
|
84
|
+
_ref3$onGroupSelect = _ref3.onGroupSelect,
|
|
85
|
+
onGroupSelect = _ref3$onGroupSelect === void 0 ? function () {} : _ref3$onGroupSelect,
|
|
86
|
+
_ref3$selectedGroupId = _ref3.selectedGroupId,
|
|
87
|
+
selectedGroupId = _ref3$selectedGroupId === void 0 ? null : _ref3$selectedGroupId,
|
|
88
|
+
_ref3$hideHistory = _ref3.hideHistory,
|
|
89
|
+
hideHistory = _ref3$hideHistory === void 0 ? false : _ref3$hideHistory;
|
|
81
90
|
var classes = useStyles();
|
|
82
91
|
var settings = useSettings();
|
|
83
92
|
var fullScreenHandle = useFullScreenHandle();
|
|
@@ -323,7 +332,12 @@ export var MainLayout = function MainLayout(_ref3) {
|
|
|
323
332
|
// images={state.images}
|
|
324
333
|
// />
|
|
325
334
|
// ),
|
|
326
|
-
React.createElement(
|
|
335
|
+
groups && React.createElement(GroupSelector, {
|
|
336
|
+
title: "Articles",
|
|
337
|
+
groups: groups,
|
|
338
|
+
selectedGroupId: selectedGroupId,
|
|
339
|
+
onSelect: onGroupSelect
|
|
340
|
+
}), React.createElement(RegionSelector, {
|
|
327
341
|
regions: activeImage ? activeImage.regions : emptyArr,
|
|
328
342
|
onSelectRegion: action("SELECT_REGION", "region"),
|
|
329
343
|
onDeleteRegion: action("DELETE_REGION", "region"),
|
|
@@ -335,7 +349,7 @@ export var MainLayout = function MainLayout(_ref3) {
|
|
|
335
349
|
currentTime: state.currentVideoTime,
|
|
336
350
|
duration: state.videoDuration,
|
|
337
351
|
keyframes: state.keyframes
|
|
338
|
-
}), React.createElement(HistorySidebarBox, {
|
|
352
|
+
}), !hideHistory && React.createElement(HistorySidebarBox, {
|
|
339
353
|
history: state.history,
|
|
340
354
|
onRestoreHistory: action("RESTORE_HISTORY")
|
|
341
355
|
})].filter(Boolean)
|