@searpent/react-image-annotate 2.3.4 → 2.3.5
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/examplePhotos.js +28 -28
- package/Annotator/examplePhotos_repr.js +28 -28
- package/Annotator/index.js +38 -31
- package/Annotator/index.story_bugdemo_15_1.js +895 -773
- package/Annotator/index.story_repr.js +1048 -933
- package/Annotator/reducers/convert-expanding-line-to-polygon.js +15 -16
- package/ClassSelectionMenu/index.js +55 -35
- package/Crosshairs/index.js +30 -23
- package/DebugSidebarBox/index.js +40 -9
- package/DemoSite/Editor.js +124 -79
- package/DemoSite/ErrorBoundaryDialog.js +19 -6
- package/DemoSite/index.js +26 -17
- package/Editor/index.js +70 -36
- package/Editor/index_bugdemo_15_1.js +68 -35
- package/Editor/readOnly.js +178 -127
- package/Errorer/index.js +8 -3
- package/FullImageSegmentationAnnotator/index.js +6 -3
- package/GroupSelectorSidebarBox/index.js +48 -32
- package/GroupsEditorSidebarBox/index.js +75 -40
- package/HelpSidebarBox/index.js +24 -13
- package/HighlightBox/index.js +37 -30
- package/HistorySidebarBox/index.js +51 -29
- package/ImageCanvas/index.js +165 -130
- package/ImageMask/index.js +9 -6
- package/ImageSelectorSidebarBox/index.js +44 -26
- package/KeyframeTimeline/index.js +65 -45
- package/KeyframesSelectorSidebarBox/index.js +76 -54
- package/LandingPage/index.js +76 -38
- package/Locker/index.js +8 -3
- package/MainLayout/RightSidebarItemsWrapper.js +7 -4
- package/MainLayout/icon-dictionary.js +99 -66
- package/MainLayout/index.js +256 -196
- package/MainLayout/index_bugdemo_15_1.js +253 -195
- package/MetadataEditorSidebarBox/index.js +152 -102
- package/MetadataEditorSidebarBox/index_14_01_25.js +152 -102
- package/MetadataEditorSidebarBox/index_repr.js +183 -128
- package/PageSelector/UpdatedBySemaphore.js +54 -0
- package/PageSelector/index.js +172 -96
- package/PageSelector/page-selector.css +126 -2
- package/PointDistances/index.js +45 -33
- package/PreventScrollToParents/index.js +16 -9
- package/RegionLabel/index.js +217 -165
- package/RegionSelectAndTransformBoxes/index.js +131 -105
- package/RegionSelectorSidebarBox/index.js +243 -165
- package/RegionShapes/index.js +213 -153
- package/RegionTags/index.js +83 -69
- package/SettingsDialog/index.js +50 -37
- package/SettingsProvider/index.js +8 -5
- package/Shortcuts/ShortcutField.js +21 -14
- package/Shortcuts/index.js +18 -12
- package/ShortcutsManager/index.js +7 -4
- package/Sidebar/index.js +46 -29
- package/SidebarBoxContainer/index.js +14 -7
- package/SmallToolButton/index.js +23 -16
- package/TagsSidebarBox/index.js +41 -28
- package/TaskDescriptionSidebarBox/index.js +24 -13
- package/Theme/index.js +8 -3
- package/VideoOrImageCanvasBackground/index.js +30 -17
- package/package.json +1 -1
- package/utils/spellcheck-nspell.js +2 -2
|
@@ -53,9 +53,12 @@ var HotkeyDiv = withHotKeys(function (_ref) {
|
|
|
53
53
|
divRef = _ref.divRef,
|
|
54
54
|
props = _objectWithoutProperties(_ref, ["hotKeys", "children", "divRef"]);
|
|
55
55
|
|
|
56
|
-
return
|
|
57
|
-
|
|
58
|
-
|
|
56
|
+
return (
|
|
57
|
+
/*#__PURE__*/
|
|
58
|
+
React.createElement("div", Object.assign({}, _objectSpread({}, hotKeys, props), {
|
|
59
|
+
ref: divRef
|
|
60
|
+
}), children)
|
|
61
|
+
);
|
|
59
62
|
});
|
|
60
63
|
var FullScreenContainer = styled("div")(function (_ref2) {
|
|
61
64
|
var theme = _ref2.theme;
|
|
@@ -201,7 +204,9 @@ export var MainLayout = function MainLayout(_ref5) {
|
|
|
201
204
|
var allowedGroups = useMemo(function () {
|
|
202
205
|
return regionsGroups(state.images[state.selectedImage].regions);
|
|
203
206
|
}, [state.images, state.selectedImage]);
|
|
204
|
-
var canvas =
|
|
207
|
+
var canvas =
|
|
208
|
+
/*#__PURE__*/
|
|
209
|
+
React.createElement(ImageCanvas, Object.assign({}, settings, {
|
|
205
210
|
showCrosshairs: settings.showCrosshairs && !["select", "pan", "zoom"].includes(state.selectedTool),
|
|
206
211
|
key: state.selectedImage,
|
|
207
212
|
showMask: state.showMask,
|
|
@@ -388,199 +393,252 @@ export var MainLayout = function MainLayout(_ref5) {
|
|
|
388
393
|
var selectedFrame = ((_state$images$state$s3 = state.images[state.selectedImage]) === null || _state$images$state$s3 === void 0 ? void 0 : (_state$images$state$s4 = _state$images$state$s3.regions.find(function (i) {
|
|
389
394
|
return i.highlighted === true;
|
|
390
395
|
})) === null || _state$images$state$s4 === void 0 ? void 0 : _state$images$state$s4.id) || '';
|
|
391
|
-
return
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
|
|
398
|
-
|
|
396
|
+
return (
|
|
397
|
+
/*#__PURE__*/
|
|
398
|
+
React.createElement(ThemeProvider, {
|
|
399
|
+
theme: theme
|
|
400
|
+
},
|
|
401
|
+
/*#__PURE__*/
|
|
402
|
+
React.createElement(FullScreenContainer, null,
|
|
403
|
+
/*#__PURE__*/
|
|
404
|
+
React.createElement(FullScreen, {
|
|
405
|
+
handle: fullScreenHandle,
|
|
406
|
+
onChange: function onChange(open) {
|
|
407
|
+
if (!open) {
|
|
408
|
+
fullScreenHandle.exit();
|
|
409
|
+
action("HEADER_BUTTON_CLICKED", "buttonName")("Window");
|
|
410
|
+
}
|
|
399
411
|
}
|
|
400
|
-
}
|
|
401
|
-
}, React.createElement(HotkeyDiv, {
|
|
402
|
-
tabIndex: -1,
|
|
403
|
-
divRef: innerContainerRef,
|
|
404
|
-
onMouseDown: refocusOnMouseEvent,
|
|
405
|
-
onMouseOver: refocusOnMouseEvent,
|
|
406
|
-
allowChanges: true,
|
|
407
|
-
handlers: hotkeyHandlers,
|
|
408
|
-
className: classnames(classes.container, state.fullScreen && "Fullscreen")
|
|
409
|
-
}, React.createElement("div", {
|
|
410
|
-
style: {
|
|
411
|
-
display: 'flex',
|
|
412
|
-
flexDirection: 'row'
|
|
413
|
-
}
|
|
414
|
-
}, showPageSelector && React.createElement(PageSelector, {
|
|
415
|
-
pages: pages,
|
|
416
|
-
onPageClick: handlePageClick,
|
|
417
|
-
onMetadataChange: onMetadataChange,
|
|
418
|
-
metadataConfigs: state.metadataConfigs || [],
|
|
419
|
-
onRecalcClick: onRecalcClick
|
|
420
|
-
}), React.createElement(WorkspaceWrapper, null, React.createElement(Workspace, {
|
|
421
|
-
style: {
|
|
422
|
-
width: "auto"
|
|
423
412
|
},
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
}
|
|
434
|
-
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
440
|
-
},
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
name: "Clone"
|
|
446
|
-
}, !hideSettings && {
|
|
447
|
-
name: "Settings"
|
|
448
|
-
}, !hideFullScreen && (state.fullScreen ? {
|
|
449
|
-
name: "Window"
|
|
450
|
-
} : {
|
|
451
|
-
name: "Fullscreen"
|
|
452
|
-
}), !hideSave && {
|
|
453
|
-
name: "Save"
|
|
454
|
-
}].filter(Boolean),
|
|
455
|
-
onClickHeaderItem: onClickHeaderItem,
|
|
456
|
-
onClickIconSidebarItem: onClickIconSidebarItem,
|
|
457
|
-
selectedTools: [state.selectedTool, state.showTags && "show-tags", state.showMask && "show-mask"].filter(Boolean),
|
|
458
|
-
iconSidebarItems: !state.enabledTools ? [] : [{
|
|
459
|
-
name: "select",
|
|
460
|
-
helperText: "Select" + getHotkeyHelpText("select_tool"),
|
|
461
|
-
alwaysShowing: false
|
|
462
|
-
}, {
|
|
463
|
-
name: "pan",
|
|
464
|
-
helperText: "Drag/Pan (right or middle click)" + getHotkeyHelpText("pan_tool"),
|
|
465
|
-
alwaysShowing: false
|
|
466
|
-
}, {
|
|
467
|
-
name: "zoom",
|
|
468
|
-
helperText: "Zoom In/Out (scroll)" + getHotkeyHelpText("zoom_tool"),
|
|
469
|
-
alwaysShowing: false
|
|
470
|
-
}, {
|
|
471
|
-
name: "show-tags",
|
|
472
|
-
helperText: "Show / Hide Tags",
|
|
473
|
-
alwaysShowing: false
|
|
474
|
-
}, {
|
|
475
|
-
name: "create-point",
|
|
476
|
-
helperText: "Add Point" + getHotkeyHelpText("create_point")
|
|
477
|
-
}, {
|
|
478
|
-
name: "create-box",
|
|
479
|
-
helperText: "Add Bounding Box" + getHotkeyHelpText("create_bounding_box")
|
|
480
|
-
}, {
|
|
481
|
-
name: "create-polygon",
|
|
482
|
-
helperText: "Add Polygon" + getHotkeyHelpText("create_polygon")
|
|
483
|
-
}, {
|
|
484
|
-
name: "create-line",
|
|
485
|
-
helperText: "Add Line"
|
|
486
|
-
}, {
|
|
487
|
-
name: "create-expanding-line",
|
|
488
|
-
helperText: "Add Expanding Line"
|
|
489
|
-
}, {
|
|
490
|
-
name: "create-keypoints",
|
|
491
|
-
helperText: "Add Keypoints (Pose)"
|
|
492
|
-
}, state.fullImageSegmentationMode && {
|
|
493
|
-
name: "show-mask",
|
|
494
|
-
alwaysShowing: false,
|
|
495
|
-
helperText: "Show / Hide Mask"
|
|
496
|
-
}, {
|
|
497
|
-
name: "modify-allowed-area",
|
|
498
|
-
helperText: "Modify Allowed Area"
|
|
499
|
-
}].filter(Boolean).filter(function (a) {
|
|
500
|
-
return a.alwaysShowing || state.enabledTools.includes(a.name);
|
|
501
|
-
}),
|
|
502
|
-
rightSidebarItems: [React.createElement(RightSidebarItemsWrapper, null, [isSelectedImageLocked && React.createElement(Locker, null), debugModeOn && React.createElement(DebugBox, {
|
|
503
|
-
state: debugModeOn,
|
|
504
|
-
lastAction: state.lastAction,
|
|
505
|
-
key: "debug-box"
|
|
506
|
-
}), state.taskDescription && React.createElement(TaskDescription, {
|
|
507
|
-
description: state.taskDescription,
|
|
508
|
-
key: "task-description"
|
|
509
|
-
}), state.help && React.createElement(Help, {
|
|
510
|
-
help: state.help,
|
|
511
|
-
key: "help"
|
|
512
|
-
}), state.regionClsList && React.createElement(ClassSelectionMenu, {
|
|
513
|
-
selectedCls: state.selectedCls,
|
|
514
|
-
regionClsList: state.regionClsList,
|
|
515
|
-
onSelectCls: action("SELECT_CLASSIFICATION", "cls"),
|
|
516
|
-
key: "class-selection-menu"
|
|
517
|
-
}), state.labelImages && React.createElement(TagsSidebarBox, {
|
|
518
|
-
currentImage: activeImage,
|
|
519
|
-
imageClsList: state.imageClsList,
|
|
520
|
-
imageTagList: state.imageTagList,
|
|
521
|
-
onChangeImage: action("CHANGE_IMAGE", "delta"),
|
|
522
|
-
expandedByDefault: true,
|
|
523
|
-
key: "tags-sidebar-box"
|
|
524
|
-
}),, // (state.images?.length || 0) > 1 && (
|
|
525
|
-
// <ImageSelector
|
|
526
|
-
// onSelect={action("SELECT_REGION", "region")}
|
|
527
|
-
// images={state.images}
|
|
528
|
-
// />
|
|
529
|
-
// ),
|
|
530
|
-
// groups && (
|
|
531
|
-
// <GroupSelector
|
|
532
|
-
// title="Articles"
|
|
533
|
-
// groups={groups}
|
|
534
|
-
// selectedGroupId={selectedGroupId}
|
|
535
|
-
// onSelect={onGroupSelect}
|
|
536
|
-
// />
|
|
537
|
-
// )
|
|
538
|
-
React.createElement(RegionSelector, {
|
|
539
|
-
regions: activeImage ? activeImage.regions : emptyArr,
|
|
540
|
-
onSelectRegion: action("SELECT_REGION", "region"),
|
|
541
|
-
onDeleteRegion: action("DELETE_REGION", "region"),
|
|
542
|
-
onChangeRegion: action("CHANGE_REGION", "region"),
|
|
543
|
-
key: "region-selector"
|
|
544
|
-
}), state.keyframes && React.createElement(KeyframesSelector, {
|
|
545
|
-
onChangeVideoTime: action("CHANGE_VIDEO_TIME", "newTime"),
|
|
546
|
-
onDeleteKeyframe: action("DELETE_KEYFRAME", "time"),
|
|
547
|
-
onChangeCurrentTime: action("CHANGE_VIDEO_TIME", "newTime"),
|
|
548
|
-
currentTime: state.currentVideoTime,
|
|
549
|
-
duration: state.videoDuration,
|
|
550
|
-
keyframes: state.keyframes,
|
|
551
|
-
key: "key-frame-selector"
|
|
552
|
-
}), !hideHistory && React.createElement(HistorySidebarBox, {
|
|
553
|
-
history: state.history,
|
|
554
|
-
onRestoreHistory: action("RESTORE_HISTORY"),
|
|
555
|
-
key: "history-sidebar"
|
|
556
|
-
}), React.createElement(MetadataEditor, {
|
|
557
|
-
state: state,
|
|
413
|
+
/*#__PURE__*/
|
|
414
|
+
React.createElement(HotkeyDiv, {
|
|
415
|
+
tabIndex: -1,
|
|
416
|
+
divRef: innerContainerRef,
|
|
417
|
+
onMouseDown: refocusOnMouseEvent,
|
|
418
|
+
onMouseOver: refocusOnMouseEvent,
|
|
419
|
+
allowChanges: true,
|
|
420
|
+
handlers: hotkeyHandlers,
|
|
421
|
+
className: classnames(classes.container, state.fullScreen && "Fullscreen")
|
|
422
|
+
},
|
|
423
|
+
/*#__PURE__*/
|
|
424
|
+
React.createElement("div", {
|
|
425
|
+
style: {
|
|
426
|
+
display: 'flex',
|
|
427
|
+
flexDirection: 'row'
|
|
428
|
+
}
|
|
429
|
+
}, showPageSelector &&
|
|
430
|
+
/*#__PURE__*/
|
|
431
|
+
React.createElement(PageSelector, {
|
|
432
|
+
pages: pages,
|
|
433
|
+
onPageClick: handlePageClick,
|
|
558
434
|
onMetadataChange: onMetadataChange,
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
567
|
-
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
|
|
583
|
-
|
|
584
|
-
|
|
435
|
+
metadataConfigs: state.metadataConfigs || [],
|
|
436
|
+
onRecalcClick: onRecalcClick
|
|
437
|
+
}),
|
|
438
|
+
/*#__PURE__*/
|
|
439
|
+
React.createElement(WorkspaceWrapper, null,
|
|
440
|
+
/*#__PURE__*/
|
|
441
|
+
React.createElement(Workspace, {
|
|
442
|
+
style: {
|
|
443
|
+
width: "auto"
|
|
444
|
+
},
|
|
445
|
+
allowFullscreen: true,
|
|
446
|
+
iconDictionary: iconDictionary,
|
|
447
|
+
hideHeader: hideHeader,
|
|
448
|
+
hideHeaderText: hideHeaderText,
|
|
449
|
+
headerLeftSide: [state.annotationType === "video" ?
|
|
450
|
+
/*#__PURE__*/
|
|
451
|
+
React.createElement(KeyframeTimeline, {
|
|
452
|
+
currentTime: state.currentVideoTime,
|
|
453
|
+
duration: state.videoDuration,
|
|
454
|
+
onChangeCurrentTime: action("CHANGE_VIDEO_TIME", "newTime"),
|
|
455
|
+
keyframes: state.keyframes
|
|
456
|
+
}) : activeImage ?
|
|
457
|
+
/*#__PURE__*/
|
|
458
|
+
React.createElement("div", {
|
|
459
|
+
className: classes.headerTitle
|
|
460
|
+
}, activeImage.name) : null].filter(Boolean),
|
|
461
|
+
headerItems: [!hidePrev && {
|
|
462
|
+
name: "Prev"
|
|
463
|
+
}, !hideNext && {
|
|
464
|
+
name: "Next"
|
|
465
|
+
}, state.annotationType !== "video" ? null : !state.videoPlaying ? {
|
|
466
|
+
name: "Play"
|
|
467
|
+
} : {
|
|
468
|
+
name: "Pause"
|
|
469
|
+
}, !hideClone && !nextImageHasRegions && activeImage.regions && {
|
|
470
|
+
name: "Clone"
|
|
471
|
+
}, !hideSettings && {
|
|
472
|
+
name: "Settings"
|
|
473
|
+
}, !hideFullScreen && (state.fullScreen ? {
|
|
474
|
+
name: "Window"
|
|
475
|
+
} : {
|
|
476
|
+
name: "Fullscreen"
|
|
477
|
+
}), !hideSave && {
|
|
478
|
+
name: "Save"
|
|
479
|
+
}].filter(Boolean),
|
|
480
|
+
onClickHeaderItem: onClickHeaderItem,
|
|
481
|
+
onClickIconSidebarItem: onClickIconSidebarItem,
|
|
482
|
+
selectedTools: [state.selectedTool, state.showTags && "show-tags", state.showMask && "show-mask"].filter(Boolean),
|
|
483
|
+
iconSidebarItems: !state.enabledTools ? [] : [{
|
|
484
|
+
name: "select",
|
|
485
|
+
helperText: "Select" + getHotkeyHelpText("select_tool"),
|
|
486
|
+
alwaysShowing: false
|
|
487
|
+
}, {
|
|
488
|
+
name: "pan",
|
|
489
|
+
helperText: "Drag/Pan (right or middle click)" + getHotkeyHelpText("pan_tool"),
|
|
490
|
+
alwaysShowing: false
|
|
491
|
+
}, {
|
|
492
|
+
name: "zoom",
|
|
493
|
+
helperText: "Zoom In/Out (scroll)" + getHotkeyHelpText("zoom_tool"),
|
|
494
|
+
alwaysShowing: false
|
|
495
|
+
}, {
|
|
496
|
+
name: "show-tags",
|
|
497
|
+
helperText: "Show / Hide Tags",
|
|
498
|
+
alwaysShowing: false
|
|
499
|
+
}, {
|
|
500
|
+
name: "create-point",
|
|
501
|
+
helperText: "Add Point" + getHotkeyHelpText("create_point")
|
|
502
|
+
}, {
|
|
503
|
+
name: "create-box",
|
|
504
|
+
helperText: "Add Bounding Box" + getHotkeyHelpText("create_bounding_box")
|
|
505
|
+
}, {
|
|
506
|
+
name: "create-polygon",
|
|
507
|
+
helperText: "Add Polygon" + getHotkeyHelpText("create_polygon")
|
|
508
|
+
}, {
|
|
509
|
+
name: "create-line",
|
|
510
|
+
helperText: "Add Line"
|
|
511
|
+
}, {
|
|
512
|
+
name: "create-expanding-line",
|
|
513
|
+
helperText: "Add Expanding Line"
|
|
514
|
+
}, {
|
|
515
|
+
name: "create-keypoints",
|
|
516
|
+
helperText: "Add Keypoints (Pose)"
|
|
517
|
+
}, state.fullImageSegmentationMode && {
|
|
518
|
+
name: "show-mask",
|
|
519
|
+
alwaysShowing: false,
|
|
520
|
+
helperText: "Show / Hide Mask"
|
|
521
|
+
}, {
|
|
522
|
+
name: "modify-allowed-area",
|
|
523
|
+
helperText: "Modify Allowed Area"
|
|
524
|
+
}].filter(Boolean).filter(function (a) {
|
|
525
|
+
return a.alwaysShowing || state.enabledTools.includes(a.name);
|
|
526
|
+
}),
|
|
527
|
+
rightSidebarItems: [
|
|
528
|
+
/*#__PURE__*/
|
|
529
|
+
React.createElement(RightSidebarItemsWrapper, null, [isSelectedImageLocked &&
|
|
530
|
+
/*#__PURE__*/
|
|
531
|
+
React.createElement(Locker, null), debugModeOn &&
|
|
532
|
+
/*#__PURE__*/
|
|
533
|
+
React.createElement(DebugBox, {
|
|
534
|
+
state: debugModeOn,
|
|
535
|
+
lastAction: state.lastAction,
|
|
536
|
+
key: "debug-box"
|
|
537
|
+
}), state.taskDescription &&
|
|
538
|
+
/*#__PURE__*/
|
|
539
|
+
React.createElement(TaskDescription, {
|
|
540
|
+
description: state.taskDescription,
|
|
541
|
+
key: "task-description"
|
|
542
|
+
}), state.help &&
|
|
543
|
+
/*#__PURE__*/
|
|
544
|
+
React.createElement(Help, {
|
|
545
|
+
help: state.help,
|
|
546
|
+
key: "help"
|
|
547
|
+
}), state.regionClsList &&
|
|
548
|
+
/*#__PURE__*/
|
|
549
|
+
React.createElement(ClassSelectionMenu, {
|
|
550
|
+
selectedCls: state.selectedCls,
|
|
551
|
+
regionClsList: state.regionClsList,
|
|
552
|
+
onSelectCls: action("SELECT_CLASSIFICATION", "cls"),
|
|
553
|
+
key: "class-selection-menu"
|
|
554
|
+
}), state.labelImages &&
|
|
555
|
+
/*#__PURE__*/
|
|
556
|
+
React.createElement(TagsSidebarBox, {
|
|
557
|
+
currentImage: activeImage,
|
|
558
|
+
imageClsList: state.imageClsList,
|
|
559
|
+
imageTagList: state.imageTagList,
|
|
560
|
+
onChangeImage: action("CHANGE_IMAGE", "delta"),
|
|
561
|
+
expandedByDefault: true,
|
|
562
|
+
key: "tags-sidebar-box"
|
|
563
|
+
}),,
|
|
564
|
+
/*#__PURE__*/
|
|
565
|
+
// (state.images?.length || 0) > 1 && (
|
|
566
|
+
// <ImageSelector
|
|
567
|
+
// onSelect={action("SELECT_REGION", "region")}
|
|
568
|
+
// images={state.images}
|
|
569
|
+
// />
|
|
570
|
+
// ),
|
|
571
|
+
// groups && (
|
|
572
|
+
// <GroupSelector
|
|
573
|
+
// title="Articles"
|
|
574
|
+
// groups={groups}
|
|
575
|
+
// selectedGroupId={selectedGroupId}
|
|
576
|
+
// onSelect={onGroupSelect}
|
|
577
|
+
// />
|
|
578
|
+
// )
|
|
579
|
+
React.createElement(RegionSelector, {
|
|
580
|
+
regions: activeImage ? activeImage.regions : emptyArr,
|
|
581
|
+
onSelectRegion: action("SELECT_REGION", "region"),
|
|
582
|
+
onDeleteRegion: action("DELETE_REGION", "region"),
|
|
583
|
+
onChangeRegion: action("CHANGE_REGION", "region"),
|
|
584
|
+
key: "region-selector"
|
|
585
|
+
}), state.keyframes &&
|
|
586
|
+
/*#__PURE__*/
|
|
587
|
+
React.createElement(KeyframesSelector, {
|
|
588
|
+
onChangeVideoTime: action("CHANGE_VIDEO_TIME", "newTime"),
|
|
589
|
+
onDeleteKeyframe: action("DELETE_KEYFRAME", "time"),
|
|
590
|
+
onChangeCurrentTime: action("CHANGE_VIDEO_TIME", "newTime"),
|
|
591
|
+
currentTime: state.currentVideoTime,
|
|
592
|
+
duration: state.videoDuration,
|
|
593
|
+
keyframes: state.keyframes,
|
|
594
|
+
key: "key-frame-selector"
|
|
595
|
+
}), !hideHistory &&
|
|
596
|
+
/*#__PURE__*/
|
|
597
|
+
React.createElement(HistorySidebarBox, {
|
|
598
|
+
history: state.history,
|
|
599
|
+
onRestoreHistory: action("RESTORE_HISTORY"),
|
|
600
|
+
key: "history-sidebar"
|
|
601
|
+
}),
|
|
602
|
+
/*#__PURE__*/
|
|
603
|
+
React.createElement(MetadataEditor, {
|
|
604
|
+
state: state,
|
|
605
|
+
onMetadataChange: onMetadataChange,
|
|
606
|
+
key: "metadata-editor"
|
|
607
|
+
}),
|
|
608
|
+
/*#__PURE__*/
|
|
609
|
+
React.createElement(GroupsEditor, {
|
|
610
|
+
groups: allowedGroups,
|
|
611
|
+
onAddGroup: onAddGroup,
|
|
612
|
+
key: "groups-editor"
|
|
613
|
+
})].filter(Boolean))]
|
|
614
|
+
}, isSelectedImageLocked &&
|
|
615
|
+
/*#__PURE__*/
|
|
616
|
+
React.createElement(Locker, null), canvas)), showEditor && !isSelectedImageLocked &&
|
|
617
|
+
/*#__PURE__*/
|
|
618
|
+
React.createElement(EditorWrapper, {
|
|
619
|
+
id: "editor-wrapper"
|
|
620
|
+
},
|
|
621
|
+
/*#__PURE__*/
|
|
622
|
+
React.createElement(Editor, {
|
|
623
|
+
id: "editor",
|
|
624
|
+
blocks: blocks,
|
|
625
|
+
imageIndex: state.selectedImage,
|
|
626
|
+
key: "".concat(state.selectedImage, "#").concat(originalSelectedGroupId),
|
|
627
|
+
selectedFrame: selectedFrame,
|
|
628
|
+
onChange: handleEditorChange,
|
|
629
|
+
selectedGroupId: selectedGroupIdForBug,
|
|
630
|
+
originalSelectedGroupId: originalSelectedGroupId
|
|
631
|
+
}))),
|
|
632
|
+
/*#__PURE__*/
|
|
633
|
+
React.createElement(SettingsDialog, {
|
|
634
|
+
open: state.settingsOpen,
|
|
635
|
+
onClose: function onClose() {
|
|
636
|
+
return dispatch({
|
|
637
|
+
type: "HEADER_BUTTON_CLICKED",
|
|
638
|
+
buttonName: "Settings"
|
|
639
|
+
});
|
|
640
|
+
}
|
|
641
|
+
})))))
|
|
642
|
+
);
|
|
585
643
|
};
|
|
586
644
|
export default MainLayout;
|