@searpent/react-image-annotate 2.0.18 → 2.0.20

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.
@@ -786,10 +786,10 @@ var examplePhotos = [{
786
786
  }, {
787
787
  "id": "431fc636-d6d1-4e20-a35b-cc7a201c1833",
788
788
  "fullsize": {
789
- "key": "https://www.gannett-cdn.com/presto/2022/01/12/NJDN/8088720b-446d-4693-be62-4dfdf1c3046f-DailyNewsSaturday.jpg?width=660&height=1253&fit=crop&format=pjpg&auto=webp"
789
+ "key": "https://images.pexels.com/photos/167699/pexels-photo-167699.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2"
790
790
  },
791
791
  "thumbnail": {
792
- "key": "https://www.gannett-cdn.com/presto/2022/01/12/NJDN/8088720b-446d-4693-be62-4dfdf1c3046f-DailyNewsSaturday.jpg?width=660&height=1253&fit=crop&format=pjpg&auto=webp"
792
+ "key": "https://images.pexels.com/photos/167699/pexels-photo-167699.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2"
793
793
  },
794
794
  "modelResults": {
795
795
  "v1": [{
@@ -61,63 +61,72 @@ var FullScreenContainer = styled("div")(function (_ref2) {
61
61
  }
62
62
  };
63
63
  });
64
- var EditorWrapper = styled("div")(function (_ref3) {
64
+ var WorkspaceWrapper = styled("div")(function (_ref3) {
65
65
  var theme = _ref3.theme;
66
66
  return {
67
- width: "45%",
67
+ height: "100vh",
68
+ width: "auto",
69
+ backgroundColor: "red",
70
+ flex: 1
71
+ };
72
+ });
73
+ var EditorWrapper = styled("div")(function (_ref4) {
74
+ var theme = _ref4.theme;
75
+ return {
68
76
  padding: "1rem",
69
77
  paddingLeft: "2rem",
70
78
  height: "100vh",
79
+ width: "30vw",
71
80
  overflowY: "scroll"
72
81
  };
73
82
  });
74
- export var MainLayout = function MainLayout(_ref4) {
83
+ export var MainLayout = function MainLayout(_ref5) {
75
84
  var _state$images$state$s, _state$images$state$s2;
76
85
 
77
- var state = _ref4.state,
78
- dispatch = _ref4.dispatch,
79
- _ref4$alwaysShowNextB = _ref4.alwaysShowNextButton,
80
- alwaysShowNextButton = _ref4$alwaysShowNextB === void 0 ? false : _ref4$alwaysShowNextB,
81
- _ref4$alwaysShowPrevB = _ref4.alwaysShowPrevButton,
82
- alwaysShowPrevButton = _ref4$alwaysShowPrevB === void 0 ? false : _ref4$alwaysShowPrevB,
83
- RegionEditLabel = _ref4.RegionEditLabel,
84
- onRegionClassAdded = _ref4.onRegionClassAdded,
85
- hideHeader = _ref4.hideHeader,
86
- hideHeaderText = _ref4.hideHeaderText,
87
- _ref4$hideNext = _ref4.hideNext,
88
- hideNext = _ref4$hideNext === void 0 ? false : _ref4$hideNext,
89
- _ref4$hidePrev = _ref4.hidePrev,
90
- hidePrev = _ref4$hidePrev === void 0 ? false : _ref4$hidePrev,
91
- _ref4$hideClone = _ref4.hideClone,
92
- hideClone = _ref4$hideClone === void 0 ? false : _ref4$hideClone,
93
- _ref4$hideSettings = _ref4.hideSettings,
94
- hideSettings = _ref4$hideSettings === void 0 ? false : _ref4$hideSettings,
95
- _ref4$hideFullScreen = _ref4.hideFullScreen,
96
- hideFullScreen = _ref4$hideFullScreen === void 0 ? false : _ref4$hideFullScreen,
97
- _ref4$hideSave = _ref4.hideSave,
98
- hideSave = _ref4$hideSave === void 0 ? false : _ref4$hideSave,
99
- _ref4$groups = _ref4.groups,
100
- groups = _ref4$groups === void 0 ? [] : _ref4$groups,
101
- _ref4$onGroupSelect = _ref4.onGroupSelect,
102
- onGroupSelect = _ref4$onGroupSelect === void 0 ? function () {} : _ref4$onGroupSelect,
103
- _ref4$hideHistory = _ref4.hideHistory,
104
- hideHistory = _ref4$hideHistory === void 0 ? false : _ref4$hideHistory,
105
- _ref4$hideNotEditingL = _ref4.hideNotEditingLabel,
106
- hideNotEditingLabel = _ref4$hideNotEditingL === void 0 ? false : _ref4$hideNotEditingL,
107
- _ref4$showEditor = _ref4.showEditor,
108
- showEditor = _ref4$showEditor === void 0 ? false : _ref4$showEditor,
109
- _ref4$showPageSelecto = _ref4.showPageSelector,
110
- showPageSelector = _ref4$showPageSelecto === void 0 ? false : _ref4$showPageSelecto,
111
- _ref4$onRecalc = _ref4.onRecalc,
112
- onRecalc = _ref4$onRecalc === void 0 ? function () {} : _ref4$onRecalc,
113
- _ref4$onSave = _ref4.onSave,
114
- onSave = _ref4$onSave === void 0 ? function () {} : _ref4$onSave,
115
- _ref4$recalcActive = _ref4.recalcActive,
116
- recalcActive = _ref4$recalcActive === void 0 ? false : _ref4$recalcActive,
117
- _ref4$saveActive = _ref4.saveActive,
118
- saveActive = _ref4$saveActive === void 0 ? false : _ref4$saveActive,
119
- onMetadataChange = _ref4.onMetadataChange,
120
- onAddGroup = _ref4.onAddGroup;
86
+ var state = _ref5.state,
87
+ dispatch = _ref5.dispatch,
88
+ _ref5$alwaysShowNextB = _ref5.alwaysShowNextButton,
89
+ alwaysShowNextButton = _ref5$alwaysShowNextB === void 0 ? false : _ref5$alwaysShowNextB,
90
+ _ref5$alwaysShowPrevB = _ref5.alwaysShowPrevButton,
91
+ alwaysShowPrevButton = _ref5$alwaysShowPrevB === void 0 ? false : _ref5$alwaysShowPrevB,
92
+ RegionEditLabel = _ref5.RegionEditLabel,
93
+ onRegionClassAdded = _ref5.onRegionClassAdded,
94
+ hideHeader = _ref5.hideHeader,
95
+ hideHeaderText = _ref5.hideHeaderText,
96
+ _ref5$hideNext = _ref5.hideNext,
97
+ hideNext = _ref5$hideNext === void 0 ? false : _ref5$hideNext,
98
+ _ref5$hidePrev = _ref5.hidePrev,
99
+ hidePrev = _ref5$hidePrev === void 0 ? false : _ref5$hidePrev,
100
+ _ref5$hideClone = _ref5.hideClone,
101
+ hideClone = _ref5$hideClone === void 0 ? false : _ref5$hideClone,
102
+ _ref5$hideSettings = _ref5.hideSettings,
103
+ hideSettings = _ref5$hideSettings === void 0 ? false : _ref5$hideSettings,
104
+ _ref5$hideFullScreen = _ref5.hideFullScreen,
105
+ hideFullScreen = _ref5$hideFullScreen === void 0 ? false : _ref5$hideFullScreen,
106
+ _ref5$hideSave = _ref5.hideSave,
107
+ hideSave = _ref5$hideSave === void 0 ? false : _ref5$hideSave,
108
+ _ref5$groups = _ref5.groups,
109
+ groups = _ref5$groups === void 0 ? [] : _ref5$groups,
110
+ _ref5$onGroupSelect = _ref5.onGroupSelect,
111
+ onGroupSelect = _ref5$onGroupSelect === void 0 ? function () {} : _ref5$onGroupSelect,
112
+ _ref5$hideHistory = _ref5.hideHistory,
113
+ hideHistory = _ref5$hideHistory === void 0 ? false : _ref5$hideHistory,
114
+ _ref5$hideNotEditingL = _ref5.hideNotEditingLabel,
115
+ hideNotEditingLabel = _ref5$hideNotEditingL === void 0 ? false : _ref5$hideNotEditingL,
116
+ _ref5$showEditor = _ref5.showEditor,
117
+ showEditor = _ref5$showEditor === void 0 ? false : _ref5$showEditor,
118
+ _ref5$showPageSelecto = _ref5.showPageSelector,
119
+ showPageSelector = _ref5$showPageSelecto === void 0 ? false : _ref5$showPageSelecto,
120
+ _ref5$onRecalc = _ref5.onRecalc,
121
+ onRecalc = _ref5$onRecalc === void 0 ? function () {} : _ref5$onRecalc,
122
+ _ref5$onSave = _ref5.onSave,
123
+ onSave = _ref5$onSave === void 0 ? function () {} : _ref5$onSave,
124
+ _ref5$recalcActive = _ref5.recalcActive,
125
+ recalcActive = _ref5$recalcActive === void 0 ? false : _ref5$recalcActive,
126
+ _ref5$saveActive = _ref5.saveActive,
127
+ saveActive = _ref5$saveActive === void 0 ? false : _ref5$saveActive,
128
+ onMetadataChange = _ref5.onMetadataChange,
129
+ onAddGroup = _ref5.onAddGroup;
121
130
  var classes = useStyles();
122
131
  var settings = useSettings();
123
132
  var fullScreenHandle = useFullScreenHandle();
@@ -257,9 +266,9 @@ export var MainLayout = function MainLayout(_ref4) {
257
266
  return (i === null || i === void 0 ? void 0 : (_i$data = i.data) === null || _i$data === void 0 ? void 0 : _i$data.groupId) === selectedGroupId;
258
267
  });
259
268
 
260
- var handleEditorChange = function handleEditorChange(_ref5) {
261
- var imageIndex = _ref5.imageIndex,
262
- data = _ref5.data;
269
+ var handleEditorChange = function handleEditorChange(_ref6) {
270
+ var imageIndex = _ref6.imageIndex,
271
+ data = _ref6.data;
263
272
  var newRegions = data.blocks.map(function (i) {
264
273
  return {
265
274
  id: i.id,
@@ -326,7 +335,10 @@ export var MainLayout = function MainLayout(_ref4) {
326
335
  saveActive: saveActive,
327
336
  recalcActive: recalcActive,
328
337
  onMetadataChange: onMetadataChange
329
- }), React.createElement(Workspace, {
338
+ }), React.createElement(WorkspaceWrapper, null, React.createElement(Workspace, {
339
+ style: {
340
+ width: "auto"
341
+ },
330
342
  allowFullscreen: true,
331
343
  iconDictionary: iconDictionary,
332
344
  hideHeader: hideHeader,
@@ -465,7 +477,7 @@ export var MainLayout = function MainLayout(_ref4) {
465
477
  onAddGroup: onAddGroup,
466
478
  key: "groups-editor"
467
479
  })].filter(Boolean)
468
- }, canvas), showEditor && React.createElement(EditorWrapper, {
480
+ }, canvas)), showEditor && React.createElement(EditorWrapper, {
469
481
  id: "editor-wrapper"
470
482
  }, React.createElement(Editor, {
471
483
  id: "editor",
@@ -7,7 +7,9 @@ function PageThumbnail(_ref) {
7
7
  var src = _ref.src,
8
8
  isActive = _ref.isActive,
9
9
  onClick = _ref.onClick,
10
- pageNumber = _ref.pageNumber;
10
+ pageNumber = _ref.pageNumber,
11
+ metadata = _ref.metadata,
12
+ showMetadata = _ref.showMetadata;
11
13
  return React.createElement("div", {
12
14
  role: "button",
13
15
  tabIndex: 0,
@@ -15,14 +17,49 @@ function PageThumbnail(_ref) {
15
17
  'page-thumbnail-is-active': isActive
16
18
  }),
17
19
  onClick: onClick
20
+ }, React.createElement("div", {
21
+ className: "page-thumbnail-image-wrapper"
18
22
  }, React.createElement("img", {
19
23
  src: src,
20
- alt: ""
21
- }), pageNumber !== undefined && React.createElement("div", {
24
+ alt: "",
25
+ className: "page-thumbnail-image"
26
+ }), React.createElement("div", {
22
27
  className: "page-number-wrapper"
23
- }, React.createElement("span", {
28
+ }, pageNumber !== undefined && !showMetadata && React.createElement("span", {
24
29
  className: "page-number"
25
- }, pageNumber)));
30
+ }, pageNumber))), React.createElement("div", {
31
+ className: "page-thumbnail-metadata-wrapper"
32
+ }, React.createElement("label", {
33
+ htmlFor: true
34
+ }, "Page"), React.createElement("input", {
35
+ type: "text",
36
+ value: "2"
37
+ }), React.createElement("label", {
38
+ htmlFor: true
39
+ }, "Topic"), React.createElement("input", {
40
+ type: "text",
41
+ value: "012345678901234567890123456789"
42
+ }), React.createElement("label", {
43
+ htmlFor: true
44
+ }, "Mutation"), React.createElement("input", {
45
+ type: "text",
46
+ value: "2"
47
+ }), React.createElement("label", {
48
+ htmlFor: true
49
+ }, "Page"), React.createElement("input", {
50
+ type: "text",
51
+ value: "2"
52
+ }), React.createElement("label", {
53
+ htmlFor: true
54
+ }, "Topic"), React.createElement("input", {
55
+ type: "text",
56
+ value: "012345678901234567890123456789"
57
+ }), React.createElement("label", {
58
+ htmlFor: true
59
+ }, "Mutation"), React.createElement("input", {
60
+ type: "text",
61
+ value: "2"
62
+ })));
26
63
  }
27
64
 
28
65
  function PageSelector(_ref2) {
@@ -44,11 +81,43 @@ function PageSelector(_ref2) {
44
81
  'page-selector--opened': showMetadata
45
82
  })
46
83
  }, React.createElement("div", {
84
+ className: "top-buttons"
85
+ }, React.createElement("button", {
86
+ onClick: onRecalc,
87
+ disabled: !recalcActive,
88
+ className: "info"
89
+ }, "Recalc"), React.createElement("button", {
90
+ onClick: onSave,
91
+ disabled: !saveActive,
92
+ className: "success"
93
+ }, "Save"), React.createElement("div", {
94
+ className: "show-metadata-wrapper"
95
+ }, React.createElement("label", {
96
+ className: "switch mr-2"
97
+ }, React.createElement("input", {
98
+ id: "show-metadata",
99
+ type: "checkbox",
100
+ value: showMetadata,
101
+ onChange: function onChange() {
102
+ return setShowMetadata(function (prev) {
103
+ return !prev;
104
+ });
105
+ }
106
+ }), React.createElement("span", {
107
+ className: "slider round"
108
+ })), React.createElement("label", null, "Metadata"))), React.createElement("div", {
47
109
  className: "pages"
48
110
  }, pages.map(function (page, idx) {
49
- return React.createElement("div", {
50
- className: "page-thumbnail__wrapper"
51
- }, "This is thumbnail ", page.id);
111
+ return React.createElement(PageThumbnail, {
112
+ key: "".concat(page.id),
113
+ src: page.src,
114
+ isActive: page.isActive,
115
+ onClick: function onClick() {
116
+ return onPageClick(idx);
117
+ },
118
+ metadata: page.metadata,
119
+ showMetadata: showMetadata
120
+ });
52
121
  })));
53
122
  }
54
123
 
@@ -1,35 +1,39 @@
1
1
  .page-selector {
2
2
  height: 100vh;
3
3
  overflow-y: scroll;
4
- /* max-width: 10%; */
5
- transition: max-width .5s;
4
+ transition: width .5s;
6
5
  }
7
6
 
8
- .page-selector--opened {
9
- /* max-width: 20%; */
10
- }
7
+ .page-selector--opened {}
11
8
 
12
9
  .pages {
13
10
  list-style: none;
14
- }
15
-
16
- .page-thumbnail__wrapper {
17
11
  display: flex;
18
- flex-direction: row;
19
- align-items: flex-start;
20
- background-color: #2dce89;
21
- /* width: 240px; */
22
- width: 480px;
12
+ flex-direction: column;
13
+ align-items: center;
14
+ width: 100%;
15
+ box-sizing: border-box;
16
+ padding: 16px;
23
17
  }
24
18
 
25
19
  .page-thumbnail {
26
- /* width: 300px; */
20
+ height: 140px;
21
+ width: 100px;
27
22
  margin-bottom: 1rem;
28
- border-radius: .25rem !important;
23
+ border-radius: 8px !important;
29
24
  overflow: hidden;
30
25
  filter: grayscale(1);
31
26
  transition: transform .2s;
32
- opacity: .5;
27
+ transition: width .2s;
28
+ opacity: .75;
29
+ overflow: hidden;
30
+ background: linear-gradient(rgba(255, 255, 255, 0), #8898aa);
31
+ display: flex;
32
+ flex-direction: row;
33
+ }
34
+
35
+ .page-selector--opened .page-thumbnail {
36
+ width: 320px;
33
37
  }
34
38
 
35
39
  .page-thumbnail:hover {
@@ -45,8 +49,41 @@
45
49
  opacity: 1;
46
50
  }
47
51
 
48
- .page-thumbnail img {
52
+ .page-thumbnail-image-wrapper {
53
+ width: 100px;
54
+ height: 100%;
55
+ }
56
+
57
+ .page-thumbnail-image {
58
+ width: 100px;
59
+ height: 100%;
60
+ object-fit: fill;
61
+ object-position: top;
62
+ }
63
+
64
+ .page-thumbnail-metadata-wrapper {
65
+ padding: 12px;
66
+ font-size: 12px;
49
67
  width: 100%;
68
+ overflow-y: scroll;
69
+ display: grid;
70
+ grid-template-columns: 1fr 2fr;
71
+ scrollbar-width: none;
72
+ }
73
+
74
+ .page-thumbnail-metadata-wrapper::-webkit-scrollbar {
75
+ display: none;
76
+ }
77
+
78
+ .page-selector--opened .page-thumbnail-metadata-wrapper {
79
+ grid-template-columns: 1fr 1fr;
80
+ row-gap: .5rem;
81
+ align-items: start;
82
+ justify-self: center;
83
+ }
84
+
85
+ .page-thumbnail-metadata-wrapper input {
86
+ max-width: 120px;
50
87
  }
51
88
 
52
89
  .page-thumbnail__metadata {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@searpent/react-image-annotate",
3
- "version": "2.0.18",
3
+ "version": "2.0.20",
4
4
  "dependencies": {
5
5
  "@editorjs/editorjs": "^2.25.0",
6
6
  "@editorjs/paragraph": "^2.8.0",