@labelbee/lb-components 1.9.0-alpha.5 → 1.9.0-alpha.6
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/dist/components/pointCloudView/index.js +1 -1
- package/dist/store/annotation/reducer.js +1 -1
- package/dist/types/components/AnnotationView/index.d.ts +1 -1
- package/dist/types/components/pointCloudView/PointCloudContext.d.ts +1 -1
- package/dist/types/components/videoPlayer/types.d.ts +1 -1
- package/dist/types/store/annotation/types.d.ts +3 -3
- package/dist/types/store/imgAttribute/types.d.ts +1 -1
- package/dist/types/store/index.d.ts +1 -1
- package/dist/types/store/toolStyle/types.d.ts +1 -1
- package/dist/types/utils/dom.d.ts +2 -2
- package/dist/types/views/MainView/toolFooter/FooterPopover.d.ts +1 -1
- package/dist/types/views/MainView/toolFooter/index.d.ts +1 -1
- package/es/components/pointCloudView/index.js +1 -1
- package/es/store/annotation/reducer.js +1 -1
- package/package.json +2 -2
- package/es/App.js.map +0 -1
- package/es/assets/annotation/common/icon_adapt.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_adapt_black.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_back.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_backA.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_clear.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_clearSmall.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_clearSmall_a.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_clear_a.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_invalid.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_invalid_a.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_next.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_nextA.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_r.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_rA.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_save.svg.js.map +0 -1
- package/es/assets/annotation/common/icon_saveA.svg.js.map +0 -1
- package/es/assets/annotation/image/brightness.svg.js.map +0 -1
- package/es/assets/annotation/image/contrast.svg.js.map +0 -1
- package/es/assets/annotation/image/icon_yuantu.svg.js.map +0 -1
- package/es/assets/annotation/image/saturation.svg.js.map +0 -1
- package/es/assets/annotation/lineTool/icon_line.svg.js.map +0 -1
- package/es/assets/annotation/lineTool/icon_line_a.svg.js.map +0 -1
- package/es/assets/annotation/pointCloudTool/changePointCloudValid.svg.js.map +0 -1
- package/es/assets/annotation/pointCloudTool/copy.svg.js.map +0 -1
- package/es/assets/annotation/pointCloudTool/nextBox.svg.js.map +0 -1
- package/es/assets/annotation/pointCloudTool/nodata.svg.js.map +0 -1
- package/es/assets/annotation/pointCloudTool/patse.svg.js.map +0 -1
- package/es/assets/annotation/pointCloudTool/prevBox.svg.js.map +0 -1
- package/es/assets/annotation/pointCloudTool/rotate180_black.svg.js.map +0 -1
- package/es/assets/annotation/pointCloudTool/selectAll.svg.js.map +0 -1
- package/es/assets/annotation/pointCloudTool/selectMultiple.svg.js.map +0 -1
- package/es/assets/annotation/pointCloudTool/unitAttribute.svg.js.map +0 -1
- package/es/assets/annotation/pointCloudTool/unitAttributeForbid.svg.js.map +0 -1
- package/es/assets/annotation/pointCloudTool/unitAttributeHover.svg.js.map +0 -1
- package/es/assets/annotation/pointTool/icon_point.svg.js.map +0 -1
- package/es/assets/annotation/pointTool/icon_point_a.svg.js.map +0 -1
- package/es/assets/annotation/polygonTool/icon_polygon.svg.js.map +0 -1
- package/es/assets/annotation/polygonTool/icon_polygon_a.svg.js.map +0 -1
- package/es/assets/annotation/rectTool/icon_rect.svg.js.map +0 -1
- package/es/assets/annotation/rectTool/icon_rectPattern.svg.js +0 -1
- package/es/assets/annotation/rectTool/icon_rectPattern.svg.js.map +0 -1
- package/es/assets/annotation/rectTool/icon_rect_a.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_alttab_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_back_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_cencel_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_del_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_forward_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_frameActive_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_frameChange_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_frameNull_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_frame_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_fullView_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_kj1.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_kj_h.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_last_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_lineActive_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_lineChange_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_lineCont_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_lineDel_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_lineInsert_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_lineNull_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_lineSpecial_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_line_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_loupe_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_mouse_left_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_mouse_middle_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_mouse_right_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_move_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_next_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_noDisplay.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_playPause.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_pointActive_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_pointNull_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_point_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_polygonActive_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_polygonChange_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_polygonDel_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_polygonInsert_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_polygonMerge_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_polygonNull_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_reform_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_reload_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_save_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_segment.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_speed_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_straightLine_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_tab_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_tag_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/icon_unGrip_kj.svg.js.map +0 -1
- package/es/assets/annotation/toolHotKeyIcon/setValid.svg.js.map +0 -1
- package/es/assets/annotation/video/icon_keyboard_h.svg.js.map +0 -1
- package/es/assets/attributeIcon/eraser.svg.js.map +0 -1
- package/es/assets/attributeIcon/eraser_a.svg.js.map +0 -1
- package/es/assets/attributeIcon/pen.svg.js.map +0 -1
- package/es/assets/attributeIcon/pen_a.svg.js.map +0 -1
- package/es/assets/attributeIcon/zoomUp.svg.js.map +0 -1
- package/es/assets/toolStyle/icon_border.svg.js.map +0 -1
- package/es/assets/toolStyle/icon_borderColor.svg.js.map +0 -1
- package/es/assets/toolStyle/icon_opacityFill.svg.js.map +0 -1
- package/es/assets/toolStyle/icon_opacityStroke.svg.js.map +0 -1
- package/es/components/AnnotationView/index.js.map +0 -1
- package/es/components/AnnotationView/pointCloudAnnotationView.js.map +0 -1
- package/es/components/ImageError/index.js +0 -1
- package/es/components/ImageError/index.js.map +0 -1
- package/es/components/annotationStepPopover/index.js.map +0 -1
- package/es/components/attributeList/index.js.map +0 -1
- package/es/components/checkboxList/index.js.map +0 -1
- package/es/components/colorTag/index.js.map +0 -1
- package/es/components/customAntd/IconWithText/index.js.map +0 -1
- package/es/components/customResizeHook/index.js.map +0 -1
- package/es/components/fileException/FileError.js.map +0 -1
- package/es/components/fileException/FileInvalid.js.map +0 -1
- package/es/components/fileException/index.js.map +0 -1
- package/es/components/pointCloudView/PointCloud2DView.js.map +0 -1
- package/es/components/pointCloudView/PointCloud3DView.js.map +0 -1
- package/es/components/pointCloudView/PointCloudBackView.js.map +0 -1
- package/es/components/pointCloudView/PointCloudContext.js.map +0 -1
- package/es/components/pointCloudView/PointCloudInfos.js.map +0 -1
- package/es/components/pointCloudView/PointCloudLayout.js.map +0 -1
- package/es/components/pointCloudView/PointCloudListener.js.map +0 -1
- package/es/components/pointCloudView/PointCloudSideView.js.map +0 -1
- package/es/components/pointCloudView/PointCloudTopView.js.map +0 -1
- package/es/components/pointCloudView/components/EmptyPage/index.js.map +0 -1
- package/es/components/pointCloudView/components/UnifyParamsModal/index.js.map +0 -1
- package/es/components/pointCloudView/hooks/useAttribute.js.map +0 -1
- package/es/components/pointCloudView/hooks/useBoxes.js.map +0 -1
- package/es/components/pointCloudView/hooks/useConfig.js.map +0 -1
- package/es/components/pointCloudView/hooks/useHistory.js.map +0 -1
- package/es/components/pointCloudView/hooks/usePointCloudBoxes.js +0 -119
- package/es/components/pointCloudView/hooks/usePointCloudBoxes.js.map +0 -1
- package/es/components/pointCloudView/hooks/usePointCloudViews.js.map +0 -1
- package/es/components/pointCloudView/hooks/usePolygon.js.map +0 -1
- package/es/components/pointCloudView/hooks/useRotate.js.map +0 -1
- package/es/components/pointCloudView/hooks/useSingleBox.js.map +0 -1
- package/es/components/pointCloudView/hooks/useStatus.js.map +0 -1
- package/es/components/pointCloudView/hooks/useZoom.js.map +0 -1
- package/es/components/pointCloudView/index.js.map +0 -1
- package/es/components/pointCloudView/useSingleBox.js +0 -44
- package/es/components/pointCloudView/useSingleBox.js.map +0 -1
- package/es/components/videoAnnotate/index.js.map +0 -1
- package/es/components/videoPlayer/TagToolInstanceAdaptor.js.map +0 -1
- package/es/components/videoPlayer/TagToolInstanceAdaptorI18nProvider.js.map +0 -1
- package/es/components/videoPlayer/VideoTagLayer.js.map +0 -1
- package/es/components/videoPlayer/components/controller/index.js.map +0 -1
- package/es/components/videoPlayer/index.js.map +0 -1
- package/es/components/videoPlayer/utils.js.map +0 -1
- package/es/configureStore.js.map +0 -1
- package/es/constant/index.js.map +0 -1
- package/es/constant/styleString.js.map +0 -1
- package/es/data/Style.js.map +0 -1
- package/es/data/enums/AnnotationSize.js.map +0 -1
- package/es/data/enums/ToolType.js.map +0 -1
- package/es/hooks/annotation.js.map +0 -1
- package/es/hooks/useRafState.js.map +0 -1
- package/es/hooks/useRefCache.js.map +0 -1
- package/es/hooks/useSafeSate.js.map +0 -1
- package/es/hooks/useSize.js.map +0 -1
- package/es/hooks/useUnmountedRef.js.map +0 -1
- package/es/index.js.map +0 -1
- package/es/store/Actions.js.map +0 -1
- package/es/store/annotation/actionCreators.js.map +0 -1
- package/es/store/annotation/map.js.map +0 -1
- package/es/store/annotation/reducer.js.map +0 -1
- package/es/store/annotation/selectors.js.map +0 -1
- package/es/store/ctx.js.map +0 -1
- package/es/store/imgAttribute/actionCreators.js.map +0 -1
- package/es/store/imgAttribute/reducer.js.map +0 -1
- package/es/store/index.js.map +0 -1
- package/es/store/toolStyle/actionCreators.js.map +0 -1
- package/es/store/toolStyle/reducer.js.map +0 -1
- package/es/utils/AnnotationDataUtils.js.map +0 -1
- package/es/utils/ConfigUtils.js.map +0 -1
- package/es/utils/PageOperator.js.map +0 -1
- package/es/utils/StepUtils.js.map +0 -1
- package/es/utils/TextUtils.js.map +0 -1
- package/es/utils/ToolStyleUtils.js.map +0 -1
- package/es/utils/ToolUtils.js.map +0 -1
- package/es/utils/data.js.map +0 -1
- package/es/utils/dom.js.map +0 -1
- package/es/utils/index.js.map +0 -1
- package/es/views/MainView/annotationOperation/index.js.map +0 -1
- package/es/views/MainView/annotationTips/index.js.map +0 -1
- package/es/views/MainView/index.js.map +0 -1
- package/es/views/MainView/sidebar/AnnotationText/index.js.map +0 -1
- package/es/views/MainView/sidebar/ClearIcon/index.js.map +0 -1
- package/es/views/MainView/sidebar/GeneralOperation/ActionsConfirm.js.map +0 -1
- package/es/views/MainView/sidebar/GeneralOperation/OperationList.js +0 -77
- package/es/views/MainView/sidebar/GeneralOperation/OperationList.js.map +0 -1
- package/es/views/MainView/sidebar/GeneralOperation/index.js.map +0 -1
- package/es/views/MainView/sidebar/GeneralOperation/useOperationList.js.map +0 -1
- package/es/views/MainView/sidebar/ImgAttributeInfo/index.js.map +0 -1
- package/es/views/MainView/sidebar/PointCloudToolSidebar/components/batchUpdateModal/index.js.map +0 -1
- package/es/views/MainView/sidebar/PointCloudToolSidebar/index.js.map +0 -1
- package/es/views/MainView/sidebar/ScribbleSidebar/index.js.map +0 -1
- package/es/views/MainView/sidebar/SwitchAttributeList/index.js.map +0 -1
- package/es/views/MainView/sidebar/TagSidebar/index.js.map +0 -1
- package/es/views/MainView/sidebar/TextAreaFormat/index.js.map +0 -1
- package/es/views/MainView/sidebar/TextToolSidebar/index.js.map +0 -1
- package/es/views/MainView/sidebar/ToolIcons.js.map +0 -1
- package/es/views/MainView/sidebar/ToolStyle/index.js.map +0 -1
- package/es/views/MainView/sidebar/index.js.map +0 -1
- package/es/views/MainView/toolFooter/AnnotatedAttributes/index.js.map +0 -1
- package/es/views/MainView/toolFooter/FooterPopover.js.map +0 -1
- package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/common/index.js.map +0 -1
- package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/index.js.map +0 -1
- package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/line/index.js.map +0 -1
- package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/point/index.js.map +0 -1
- package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/pointCloud/index.js.map +0 -1
- package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/polygon/index.js.map +0 -1
- package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/rectToolShortCutTable/index.js.map +0 -1
- package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/scribble/index.js.map +0 -1
- package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/tag/index.js.map +0 -1
- package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/text/index.js.map +0 -1
- package/es/views/MainView/toolFooter/FooterTips/ToolHotKey/videoTag/index.js.map +0 -1
- package/es/views/MainView/toolFooter/FooterTips/index.js.map +0 -1
- package/es/views/MainView/toolFooter/HiddenTips/index.js.map +0 -1
- package/es/views/MainView/toolFooter/PageNumber/index.js.map +0 -1
- package/es/views/MainView/toolFooter/Pagination.js.map +0 -1
- package/es/views/MainView/toolFooter/ZoomController/ZoomLevel/index.js.map +0 -1
- package/es/views/MainView/toolFooter/ZoomController/index.js.map +0 -1
- package/es/views/MainView/toolFooter/index.js.map +0 -1
- package/es/views/MainView/toolHeader/ExportData/index.js.map +0 -1
- package/es/views/MainView/toolHeader/StepSwitch/index.js.map +0 -1
- package/es/views/MainView/toolHeader/headerOption/index.js.map +0 -1
- package/es/views/MainView/toolHeader/index.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AnnotationSize.js","sources":["../../../src/data/enums/AnnotationSize.ts"],"sourcesContent":["export const headerHeight = 61;\nexport const tipsHeight = 40;\nexport const footerHeight = 40;\nexport const sidebarWidth = 240;\n// 编辑步骤的侧边栏宽度\nexport const editStepWidth = 320;\n\n/** 标注步骤的类型 */\nexport enum EStepType {\n ANNOTATION = 1, // 正常标注\n QUALITY_INSPECTION, // 标注质检\n PRE_ANNOTATION, // 预标注\n MANUAL_CORRECTION, // 人工修正\n}\n\n/** 标注工具中最大获取的图片数 */\nexport const ANNOTATION_MAX_SIZE = 100;\n\n/** 翻页操作 */\nexport enum EPageTurningOperation {\n Backward,\n Forward,\n Jump,\n}\n\n/** 拖拽状态 */\nexport enum EDragStatus {\n Start,\n Stop,\n Wait,\n}\n\n/** 拖拽的内容 */\nexport enum EDragTarget {\n Point,\n Line,\n Plane,\n}\n"],"names":[],"mappings":"AAAO,MAAM,YAAe,GAAA,GAAA;AAErB,MAAM,YAAe,GAAA,GAAA;AACrB,MAAM,YAAe,GAAA,IAAA;AAErB,MAAM,aAAgB,GAAA,IAAA;AAGjB,IAAA,UAAA;AAAL,CAAA,SAAK,UAAL,EAAA;AACL,EAAA,UAAA,CAAA,UAAA,CAAA,YAAA,CAAA,GAAa,CAAb,CAAA,GAAA,YAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,oBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,oBAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,gBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,gBAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,mBAAA,CAAA,GAAA,CAAA,CAAA,GAAA,mBAAA,CAAA;AAAA,CAJU,EAAA,SAAA,KAAA,SAAA,GAAA,EAAA,CAAA,CAAA,CAAA;AAWA,IAAA,sBAAA;AAAL,CAAA,SAAK,sBAAL,EAAA;AACL,EAAA,sBAAA,CAAA,sBAAA,CAAA,UAAA,CAAA,GAAA,CAAA,CAAA,GAAA,UAAA,CAAA;AACA,EAAA,sBAAA,CAAA,sBAAA,CAAA,SAAA,CAAA,GAAA,CAAA,CAAA,GAAA,SAAA,CAAA;AACA,EAAA,sBAAA,CAAA,sBAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAA,CAAA;AAAA,CAHU,EAAA,qBAAA,KAAA,qBAAA,GAAA,EAAA,CAAA,CAAA,CAAA;AAOA,IAAA,YAAA;AAAL,CAAA,SAAK,YAAL,EAAA;AACL,EAAA,YAAA,CAAA,YAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAA,CAAA;AAAA,CAHU,EAAA,WAAA,KAAA,WAAA,GAAA,EAAA,CAAA,CAAA,CAAA;AAOA,IAAA,YAAA;AAAL,CAAA,SAAK,YAAL,EAAA;AACL,EAAA,YAAA,CAAA,YAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,MAAA,CAAA,GAAA,CAAA,CAAA,GAAA,MAAA,CAAA;AACA,EAAA,YAAA,CAAA,YAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAA,CAAA;AAAA,CAHU,EAAA,WAAA,KAAA,WAAA,GAAA,EAAA,CAAA,CAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ToolType.js","sources":["../../../src/data/enums/ToolType.ts"],"sourcesContent":["// TODO, Temporarily Copy\nexport enum EScribblePattern {\n Scribble = 1, // 涂抹操作\n Erase = 2, // 橡皮刷\n}\n\nexport enum EToolName {\n /** 拉框工具 */\n Rect = 'rectTool',\n /** 标签工具 */\n Tag = 'tagTool',\n /** 标点工具 */\n Point = 'pointTool',\n /** 列表标点工具 */\n PointMarker = 'pointMarkerTool',\n /** 前景分割工具 */\n Segmentation = 'segmentationTool',\n /** 筛选工具 */\n Filter = 'filterTool',\n /** 文本工具 */\n Text = 'textTool',\n /** 多边形工具 */\n Polygon = 'polygonTool',\n /** 线条 */\n Line = 'lineTool',\n /** 列表线条工具 */\n LineMarker = 'lineMarkerTool',\n /** 空工具,表示当前没有选择的工具,没有实际的业务逻辑 */\n Empty = 'emptyTool',\n /** 文件夹标签工具 */\n FolderTag = 'folderTagTool',\n /** 拉框跟踪工具 */\n RectTrack = 'rectTrackTool',\n /** 涂抹工具 */\n ScribbleTool = 'scribbleTool',\n /** 人脸106工具 */\n Face = 'faceTool',\n /** 客户端属性工具 */\n ClientAttribute = 'clientAttributeTool',\n /** OCR关联关系工具 */\n OCRRelation = 'OCRRelationTool',\n /** 算法分割辅助工具 */\n SegmentByRect = 'segmentByRectTool',\n}\n\n\n// 文本标注类型\nexport enum ETextType {\n AnyString, // 任意字符\n Order, // 序号\n EnglishOnly, // 仅英文\n NumberOnly, // 仅数字\n CustomFormat, // 自定义文本格式\n}\n\n/** 文本标注字数上限 */\nexport const TEXT_ATTRIBUTE_MAX_LENGTH = 1000;\n"],"names":[],"mappings":"AACY,IAAA,iBAAA;AAAL,CAAA,SAAK,iBAAL,EAAA;AACL,EAAA,iBAAA,CAAA,iBAAA,CAAA,UAAA,CAAA,GAAW,CAAX,CAAA,GAAA,UAAA,CAAA;AACA,EAAA,iBAAA,CAAA,iBAAA,CAAA,OAAA,CAAA,GAAQ,CAAR,CAAA,GAAA,OAAA,CAAA;AAAA,CAFU,EAAA,gBAAA,KAAA,gBAAA,GAAA,EAAA,CAAA,CAAA,CAAA;AAKA,IAAA,UAAA;AAAL,CAAA,SAAK,UAAL,EAAA;AAEL,EAAO,UAAA,CAAA,MAAA,CAAA,GAAA,UAAA,CAAA;AAEP,EAAM,UAAA,CAAA,KAAA,CAAA,GAAA,SAAA,CAAA;AAEN,EAAQ,UAAA,CAAA,OAAA,CAAA,GAAA,WAAA,CAAA;AAER,EAAc,UAAA,CAAA,aAAA,CAAA,GAAA,iBAAA,CAAA;AAEd,EAAe,UAAA,CAAA,cAAA,CAAA,GAAA,kBAAA,CAAA;AAEf,EAAS,UAAA,CAAA,QAAA,CAAA,GAAA,YAAA,CAAA;AAET,EAAO,UAAA,CAAA,MAAA,CAAA,GAAA,UAAA,CAAA;AAEP,EAAU,UAAA,CAAA,SAAA,CAAA,GAAA,aAAA,CAAA;AAEV,EAAO,UAAA,CAAA,MAAA,CAAA,GAAA,UAAA,CAAA;AAEP,EAAa,UAAA,CAAA,YAAA,CAAA,GAAA,gBAAA,CAAA;AAEb,EAAQ,UAAA,CAAA,OAAA,CAAA,GAAA,WAAA,CAAA;AAER,EAAY,UAAA,CAAA,WAAA,CAAA,GAAA,eAAA,CAAA;AAEZ,EAAY,UAAA,CAAA,WAAA,CAAA,GAAA,eAAA,CAAA;AAEZ,EAAe,UAAA,CAAA,cAAA,CAAA,GAAA,cAAA,CAAA;AAEf,EAAO,UAAA,CAAA,MAAA,CAAA,GAAA,UAAA,CAAA;AAEP,EAAkB,UAAA,CAAA,iBAAA,CAAA,GAAA,qBAAA,CAAA;AAElB,EAAc,UAAA,CAAA,aAAA,CAAA,GAAA,iBAAA,CAAA;AAEd,EAAgB,UAAA,CAAA,eAAA,CAAA,GAAA,mBAAA,CAAA;AAAA,CApCN,EAAA,SAAA,KAAA,SAAA,GAAA,EAAA,CAAA,CAAA,CAAA;AAyCA,IAAA,UAAA;AAAL,CAAA,SAAK,UAAL,EAAA;AACL,EAAA,UAAA,CAAA,UAAA,CAAA,WAAA,CAAA,GAAA,CAAA,CAAA,GAAA,WAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,OAAA,CAAA,GAAA,CAAA,CAAA,GAAA,OAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,aAAA,CAAA,GAAA,CAAA,CAAA,GAAA,aAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,YAAA,CAAA,GAAA,CAAA,CAAA,GAAA,YAAA,CAAA;AACA,EAAA,UAAA,CAAA,UAAA,CAAA,cAAA,CAAA,GAAA,CAAA,CAAA,GAAA,cAAA,CAAA;AAAA,CALU,EAAA,SAAA,KAAA,SAAA,GAAA,EAAA,CAAA,CAAA,CAAA;AASL,MAAM,yBAA4B,GAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"annotation.js","sources":["../../src/hooks/annotation.ts"],"sourcesContent":["/**\n * @file Annotation related hook\n * @createDate 2022-08-04\n * @author Ron <ron.f.luo@gmail.com>\n */\nimport { useEffect, useRef } from 'react';\nimport { useDispatch } from '@/store/ctx';\nimport { ANNOTATION_ACTIONS } from '@/store/Actions';\n\nexport interface ICustomToolInstance {\n valid: boolean;\n exportData: () => [any[], {}];\n exportCustomData: () => {};\n singleOn: () => void;\n clearResult: () => void;\n on: () => void;\n unbind: () => void;\n setResult: () => void;\n setValid: (valid: boolean) => void;\n history: {\n initRecord: (action: any) => void;\n pushHistory: (action: any) => void;\n };\n setDefaultAttribute: (attribute: string) => void;\n setForbidOperation: (forbidOperation: boolean) => void;\n setShowDefaultCursor: (forbidOperation: boolean) => void;\n\n // PointCloud Exclusive function\n setSubAttribute: (key: string, value: string) => void;\n\n updateRotate: () => void;\n\n undo: () => void,\n redo: () => void,\n\n [str: string]: any;\n}\n\nexport interface ICustomToolInstanceProps {\n basicInfo?: { [v: string]: any };\n}\n\n/**\n * @returns\n * Custom an empty toolInstance to adapt old use.\n */\nconst useCustomToolInstance = ({ basicInfo }: ICustomToolInstanceProps = {}) => {\n const dispatch = useDispatch();\n const toolInstanceRef = useRef<ICustomToolInstance>({\n valid: basicInfo?.valid ?? true,\n exportData: () => {\n return [[], {}];\n },\n exportCustomData: () => {\n return {};\n },\n clearResult: () => {},\n singleOn: () => {},\n on: () => {},\n unbind: () => {},\n setResult: () => {\n // Rerender Data\n },\n history: {\n initRecord: () => {},\n pushHistory: () => {},\n },\n setDefaultAttribute: (attribute: string) => {},\n setForbidOperation: () => {},\n setShowDefaultCursor: () => {},\n\n // PointCloud Exclusive function\n setSubAttribute: (key: string, value: string) => {},\n setValid: () => {},\n updateRotate: () => {},\n redo: () => {},\n undo: () => {},\n });\n\n const onMounted = (instance: any) => {\n dispatch({\n type: ANNOTATION_ACTIONS.SET_TOOL,\n payload: {\n instance,\n },\n });\n };\n\n const onUnmounted = () => {\n dispatch({\n type: ANNOTATION_ACTIONS.SET_TOOL,\n payload: {\n instance: undefined,\n },\n });\n };\n\n useEffect(() => {\n // Initial toolInstance\n onMounted(toolInstanceRef.current);\n return () => {\n onUnmounted();\n };\n }, []);\n\n return {\n toolInstanceRef,\n };\n};\n\nexport { useCustomToolInstance };\n"],"names":[],"mappings":";;;;AA8CA,MAAM,qBAAwB,GAAA,CAAC,CAAE,SAAA,CAAA,GAAwC,EAAO,KAAA;AA9ChF,EAAA,IAAA,EAAA,CAAA;AA+CE,EAAA,MAAM,QAAW,GAAA,WAAA,EAAA,CAAA;AACjB,EAAA,MAAM,kBAAkB,MAA4B,CAAA;AAAA,IAClD,KAAA,EAAO,CAAW,EAAA,GAAA,SAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,SAAA,CAAA,KAAA,KAAX,IAAoB,GAAA,EAAA,GAAA,IAAA;AAAA,IAC3B,YAAY,MAAM;AAChB,MAAA,OAAO,CAAC,EAAI,EAAA,EAAA,CAAA,CAAA;AAAA,KAAA;AAAA,IAEd,kBAAkB,MAAM;AACtB,MAAO,OAAA,EAAA,CAAA;AAAA,KAAA;AAAA,IAET,aAAa,MAAM;AAAA,KAAA;AAAA,IACnB,UAAU,MAAM;AAAA,KAAA;AAAA,IAChB,IAAI,MAAM;AAAA,KAAA;AAAA,IACV,QAAQ,MAAM;AAAA,KAAA;AAAA,IACd,WAAW,MAAM;AAAA,KAAA;AAAA,IAGjB,OAAS,EAAA;AAAA,MACP,YAAY,MAAM;AAAA,OAAA;AAAA,MAClB,aAAa,MAAM;AAAA,OAAA;AAAA,KAAA;AAAA,IAErB,mBAAA,EAAqB,CAAC,SAAsB,KAAA;AAAA,KAAA;AAAA,IAC5C,oBAAoB,MAAM;AAAA,KAAA;AAAA,IAC1B,sBAAsB,MAAM;AAAA,KAAA;AAAA,IAG5B,eAAA,EAAiB,CAAC,GAAA,EAAa,KAAkB,KAAA;AAAA,KAAA;AAAA,IACjD,UAAU,MAAM;AAAA,KAAA;AAAA,IAChB,cAAc,MAAM;AAAA,KAAA;AAAA,IACpB,MAAM,MAAM;AAAA,KAAA;AAAA,IACZ,MAAM,MAAM;AAAA,KAAA;AAAA,GAAA,CAAA,CAAA;AAGd,EAAM,MAAA,SAAA,GAAY,CAAC,QAAkB,KAAA;AACnC,IAAS,QAAA,CAAA;AAAA,MACP,MAAM,kBAAmB,CAAA,QAAA;AAAA,MACzB,OAAS,EAAA;AAAA,QACP,QAAA;AAAA,OAAA;AAAA,KAAA,CAAA,CAAA;AAAA,GAAA,CAAA;AAKN,EAAA,MAAM,cAAc,MAAM;AACxB,IAAS,QAAA,CAAA;AAAA,MACP,MAAM,kBAAmB,CAAA,QAAA;AAAA,MACzB,OAAS,EAAA;AAAA,QACP,QAAU,EAAA,KAAA,CAAA;AAAA,OAAA;AAAA,KAAA,CAAA,CAAA;AAAA,GAAA,CAAA;AAKhB,EAAA,SAAA,CAAU,MAAM;AAEd,IAAA,SAAA,CAAU,eAAgB,CAAA,OAAA,CAAA,CAAA;AAC1B,IAAA,OAAO,MAAM;AACX,MAAA,WAAA,EAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GAED,EAAA,EAAA,CAAA,CAAA;AAEH,EAAO,OAAA;AAAA,IACL,eAAA;AAAA,GAAA,CAAA;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useRafState.js","sources":["../../src/hooks/useRafState.ts"],"sourcesContent":["import type { Dispatch, SetStateAction } from 'react';\nimport { useCallback, useRef, useState, useEffect } from 'react';\n\nconst useRafState = <S>(initialState: S | (() => S)): [S, Dispatch<SetStateAction<S>>] => {\n const frame = useRef(0);\n const [state, setState] = useState(initialState);\n\n const setRafState = useCallback((value: S | ((prevState: S) => S)) => {\n cancelAnimationFrame(frame.current);\n\n frame.current = requestAnimationFrame(() => {\n setState(value);\n });\n }, []);\n\n useEffect(() => {\n return () => cancelAnimationFrame(frame.current);\n }, [])\n\n return [state, setRafState];\n};\n\nexport default useRafState;"],"names":[],"mappings":";;AAGM,MAAA,WAAA,GAAc,CAAI,YAAkE,KAAA;AACxF,EAAA,MAAM,QAAQ,MAAO,CAAA,CAAA,CAAA,CAAA;AACrB,EAAM,MAAA,CAAC,KAAO,EAAA,QAAA,CAAA,GAAY,QAAS,CAAA,YAAA,CAAA,CAAA;AAEnC,EAAM,MAAA,WAAA,GAAc,WAAY,CAAA,CAAC,KAAqC,KAAA;AACpE,IAAA,oBAAA,CAAqB,KAAM,CAAA,OAAA,CAAA,CAAA;AAE3B,IAAM,KAAA,CAAA,OAAA,GAAU,sBAAsB,MAAM;AAC1C,MAAS,QAAA,CAAA,KAAA,CAAA,CAAA;AAAA,KAAA,CAAA,CAAA;AAAA,GAEV,EAAA,EAAA,CAAA,CAAA;AAEH,EAAA,SAAA,CAAU,MAAM;AACd,IAAO,OAAA,MAAM,qBAAqB,KAAM,CAAA,OAAA,CAAA,CAAA;AAAA,GACvC,EAAA,EAAA,CAAA,CAAA;AAEH,EAAA,OAAO,CAAC,KAAO,EAAA,WAAA,CAAA,CAAA;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useRefCache.js","sources":["../../src/hooks/useRefCache.ts"],"sourcesContent":["/**\n * @file Cache the operation\n * @createDate 2022-09-27\n * @author Ron <ron.f.luo@gmail.com>\n */\n\nimport { useRef, useEffect } from 'react';\n\nconst useRefCache = <T>(data: T) => {\n const ref = useRef<T>(data);\n useEffect(() => {\n ref.current = data\n }, [data]);\n return ref;\n};\n\nexport default useRefCache;\n"],"names":[],"mappings":";;AAQM,MAAA,WAAA,GAAc,CAAI,IAAY,KAAA;AAClC,EAAA,MAAM,MAAM,MAAU,CAAA,IAAA,CAAA,CAAA;AACtB,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,GAAA,CAAI,OAAU,GAAA,IAAA,CAAA;AAAA,GAAA,EACb,CAAC,IAAA,CAAA,CAAA,CAAA;AACJ,EAAO,OAAA,GAAA,CAAA;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useSafeSate.js","sources":["../../src/hooks/useSafeSate.ts"],"sourcesContent":["import React, { Dispatch, SetStateAction } from 'react';\nimport useUnmountedRef from './useUnmountedRef';\n\nfunction useSafeState<S>(initialState: S | (() => S)): [S, Dispatch<SetStateAction<S>>];\n\nfunction useSafeState<S = undefined>(): [S | undefined, Dispatch<SetStateAction<S | undefined>>];\n\nfunction useSafeState(initialState?: any) {\n const unmountedRef = useUnmountedRef();\n const [state, setState] = React.useState(initialState);\n const setCurrentState = React.useCallback((currentState) => {\n /** 如果组件已经卸载则不再更新 state */\n if (unmountedRef.current) return;\n setState(currentState);\n }, []);\n\n return [state, setCurrentState] as const;\n}\n\nexport default useSafeState;\n"],"names":[],"mappings":";;;AAOA,SAAA,YAAA,CAAsB,YAAoB,EAAA;AACxC,EAAA,MAAM,YAAe,GAAA,eAAA,EAAA,CAAA;AACrB,EAAA,MAAM,CAAC,KAAA,EAAO,QAAY,CAAA,GAAA,KAAA,CAAM,QAAS,CAAA,YAAA,CAAA,CAAA;AACzC,EAAA,MAAM,eAAkB,GAAA,KAAA,CAAM,WAAY,CAAA,CAAC,YAAiB,KAAA;AAE1D,IAAA,IAAI,YAAa,CAAA,OAAA;AAAS,MAAA,OAAA;AAC1B,IAAS,QAAA,CAAA,YAAA,CAAA,CAAA;AAAA,GACR,EAAA,EAAA,CAAA,CAAA;AAEH,EAAA,OAAO,CAAC,KAAO,EAAA,eAAA,CAAA,CAAA;AAAA;;;;"}
|
package/es/hooks/useSize.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useSize.js","sources":["../../src/hooks/useSize.ts"],"sourcesContent":["import { useLayoutEffect } from 'react';\nimport ResizeObserver from 'resize-observer-polyfill';\nimport type { BasicTarget } from '../utils/dom';\nimport { getTargetElement } from '../utils/dom';\nimport useRafState from './useRafState';\n\ninterface Size {\n width: number;\n height: number;\n}\n\nfunction useSize(target: BasicTarget): Size {\n const [state, setState] = useRafState<Size>(() => {\n const el = getTargetElement(target);\n return {\n width: ((el || {}) as HTMLElement).clientWidth ?? 0,\n height: ((el || {}) as HTMLElement).clientHeight ?? 0,\n };\n });\n\n useLayoutEffect(() => {\n const el = getTargetElement(target);\n if (!el) {\n return () => {};\n }\n\n const resizeObserver = new ResizeObserver((entries: ResizeObserverEntry[]) => {\n entries.forEach((entry: ResizeObserverEntry) => {\n setState({\n width: entry.target.clientWidth ?? 0,\n height: entry.target.clientHeight ?? 0,\n });\n });\n });\n\n resizeObserver.observe(el as HTMLElement);\n return () => {\n resizeObserver.disconnect();\n };\n }, [target]);\n\n return state;\n}\n\nexport default useSize;\n"],"names":[],"mappings":";;;;;AAWA,SAAA,OAAA,CAAiB,MAA2B,EAAA;AAC1C,EAAA,MAAM,CAAC,KAAA,EAAO,QAAY,CAAA,GAAA,WAAA,CAAkB,MAAM;AAZpD,IAAA,IAAA,EAAA,EAAA,EAAA,CAAA;AAaI,IAAA,MAAM,KAAK,gBAAiB,CAAA,MAAA,CAAA,CAAA;AAC5B,IAAO,OAAA;AAAA,MACL,KAAS,EAAA,CAAA,EAAA,GAAA,CAAA,EAAA,IAAM,EAAoB,EAAA,WAAA,KAA1B,IAAyC,GAAA,EAAA,GAAA,CAAA;AAAA,MAClD,MAAU,EAAA,CAAA,EAAA,GAAA,CAAA,EAAA,IAAM,EAAoB,EAAA,YAAA,KAA1B,IAA0C,GAAA,EAAA,GAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GAAA,CAAA,CAAA;AAIxD,EAAA,eAAA,CAAgB,MAAM;AACpB,IAAA,MAAM,KAAK,gBAAiB,CAAA,MAAA,CAAA,CAAA;AAC5B,IAAA,IAAI,CAAC,EAAI,EAAA;AACP,MAAA,OAAO,MAAM;AAAA,OAAA,CAAA;AAAA,KAAA;AAGf,IAAA,MAAM,cAAiB,GAAA,IAAI,cAAe,CAAA,CAAC,OAAmC,KAAA;AAC5E,MAAQ,OAAA,CAAA,OAAA,CAAQ,CAAC,KAA+B,KAAA;AA3BtD,QAAA,IAAA,EAAA,EAAA,EAAA,CAAA;AA4BQ,QAAS,QAAA,CAAA;AAAA,UACP,KAAO,EAAA,CAAA,EAAA,GAAA,KAAA,CAAM,MAAO,CAAA,WAAA,KAAb,IAA4B,GAAA,EAAA,GAAA,CAAA;AAAA,UACnC,MAAQ,EAAA,CAAA,EAAA,GAAA,KAAA,CAAM,MAAO,CAAA,YAAA,KAAb,IAA6B,GAAA,EAAA,GAAA,CAAA;AAAA,SAAA,CAAA,CAAA;AAAA,OAAA,CAAA,CAAA;AAAA,KAAA,CAAA,CAAA;AAK3C,IAAA,cAAA,CAAe,OAAQ,CAAA,EAAA,CAAA,CAAA;AACvB,IAAA,OAAO,MAAM;AACX,MAAe,cAAA,CAAA,UAAA,EAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GAAA,EAEhB,CAAC,MAAA,CAAA,CAAA,CAAA;AAEJ,EAAO,OAAA,KAAA,CAAA;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useUnmountedRef.js","sources":["../../src/hooks/useUnmountedRef.ts"],"sourcesContent":["import { useRef, useEffect } from 'react';\n\nconst useUnmountedRef = () => {\n const unmountedRef = useRef(false);\n useEffect(() => {\n unmountedRef.current = false;\n\n return () => {\n unmountedRef.current = true;\n };\n }, []);\n return unmountedRef;\n};\n\nexport default useUnmountedRef;\n"],"names":[],"mappings":";;AAEA,MAAM,kBAAkB,MAAM;AAC5B,EAAA,MAAM,eAAe,MAAO,CAAA,KAAA,CAAA,CAAA;AAC5B,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,YAAA,CAAa,OAAU,GAAA,KAAA,CAAA;AAEvB,IAAA,OAAO,MAAM;AACX,MAAA,YAAA,CAAa,OAAU,GAAA,IAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GAExB,EAAA,EAAA,CAAA,CAAA;AACH,EAAO,OAAA,YAAA,CAAA;AAAA;;;;"}
|
package/es/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/index.tsx"],"sourcesContent":["import { AppProps } from '@/App';\nimport AnnotationView from '@/components/AnnotationView';\nimport PointCloudAnnotationView from '@/components/AnnotationView/pointCloudAnnotationView';\nimport { i18n } from '@labelbee/lb-utils';\nimport React, { useImperativeHandle, useState } from 'react';\nimport { I18nextProvider } from 'react-i18next';\nimport { Provider } from 'react-redux';\nimport { AnyAction } from 'redux';\nimport App from './App';\nimport configureStore from './configureStore';\nimport { PageBackward, PageForward, PageJump } from './store/annotation/actionCreators';\nimport { ToolInstance } from './store/annotation/types';\nimport { VideoTagTool } from '@/components/videoPlayer/TagToolInstanceAdaptorI18nProvider';\nimport './index.scss';\nimport { PointCloudProvider } from './components/pointCloudView/PointCloudContext';\nimport { AppState } from './store';\nimport { LabelBeeContext } from '@/store/ctx';\n\nexport const store = configureStore();\n\nconst OutputApp = (props: AppProps, ref: any) => {\n const [toolInstance, setToolInstance] = useState<ToolInstance>();\n // 暴露给 ref 的一些方法\n useImperativeHandle(\n ref,\n () => {\n return {\n toolInstance,\n annotationEngine: (store.getState() as AppState).annotation.annotationEngine,\n pageBackwardActions: () => store.dispatch(PageBackward() as unknown as AnyAction),\n pageForwardActions: () => store.dispatch(PageForward() as unknown as AnyAction),\n pageJump: (page: string) => {\n const imgIndex = ~~page - 1;\n store.dispatch(PageJump(imgIndex) as unknown as AnyAction);\n },\n hello: () => alert(`hello labelBee!!!`),\n };\n },\n [toolInstance],\n );\n\n return (\n <Provider store={store} context={LabelBeeContext}>\n <I18nextProvider i18n={i18n}>\n <PointCloudProvider>\n <App {...props} setToolInstance={setToolInstance} />\n </PointCloudProvider>\n </I18nextProvider>\n </Provider>\n );\n};\n\nexport default React.forwardRef(OutputApp);\n\nexport { AnnotationView, PointCloudAnnotationView, i18n, VideoTagTool };\n\nexport * from './constant';"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkBO,MAAM,KAAQ,GAAA,cAAA,GAAA;AAErB,MAAM,SAAA,GAAY,CAAC,KAAA,EAAiB,GAAa,KAAA;AAC/C,EAAM,MAAA,CAAC,cAAc,eAAmB,CAAA,GAAA,QAAA,EAAA,CAAA;AAExC,EAAA,mBAAA,CACE,KACA,MAAM;AACJ,IAAO,OAAA;AAAA,MACL,YAAA;AAAA,MACA,gBAAA,EAAmB,KAAM,CAAA,QAAA,EAAA,CAAwB,UAAW,CAAA,gBAAA;AAAA,MAC5D,mBAAA,EAAqB,MAAM,KAAA,CAAM,QAAS,CAAA,YAAA,EAAA,CAAA;AAAA,MAC1C,kBAAA,EAAoB,MAAM,KAAA,CAAM,QAAS,CAAA,WAAA,EAAA,CAAA;AAAA,MACzC,QAAA,EAAU,CAAC,IAAiB,KAAA;AAC1B,QAAM,MAAA,QAAA,GAAW,CAAC,CAAC,IAAO,GAAA,CAAA,CAAA;AAC1B,QAAA,KAAA,CAAM,SAAS,QAAS,CAAA,QAAA,CAAA,CAAA,CAAA;AAAA,OAAA;AAAA,MAE1B,KAAA,EAAO,MAAM,KAAM,CAAA,CAAA,iBAAA,CAAA,CAAA;AAAA,KAAA,CAAA;AAAA,GAAA,EAGvB,CAAC,YAAA,CAAA,CAAA,CAAA;AAGH,EAAA,2CACG,QAAD,EAAA;AAAA,IAAU,KAAA;AAAA,IAAc,OAAS,EAAA,eAAA;AAAA,GAAA,sCAC9B,eAAD,EAAA;AAAA,IAAiB,IAAA;AAAA,GAAA,sCACd,kBAAD,EAAA,IAAA,kBACG,KAAA,CAAA,aAAA,CAAA,GAAA,EAAD,iCAAS,KAAT,CAAA,EAAA;AAAA,IAAgB,eAAA;AAAA,GAAA,CAAA,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA;AAO1B,YAAe,MAAM,UAAW,CAAA,SAAA,CAAA;;;;"}
|
package/es/store/Actions.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Actions.js","sources":["../../src/store/Actions.ts"],"sourcesContent":["export const ANNOTATION_ACTIONS = {\n INIT_ALL_STATE: '@@INIT_ALL_STATE',\n UPDATE_TOOL_INSTANCE: '@@UPDATE_TOOL_INSTANCE',\n UPDATE_IMG_LIST: '@@UPDATE_IMG_LIST',\n UPDATE_ANNOTATION_CONFIG: '@@UPDATE_ANNOTATION_CONFIG',\n LOAD_FILE_DATA: '@@LOAD_FILE_DATA',\n SUBMIT_FILE_DATA: '@@SUBMIT_FILE_DATA',\n SET_TASK_CONFIG: '@@SET_TASK_CONFIG',\n INIT_TOOL: '@@INIT_TOOL',\n SET_TOOL: '@@SET_TOOL',\n UPDATE_ON_SUBMIT: '@@UPDATE_ON_SUBMIT',\n UPDATE_ON_SAVE: '@@UPDATE_ON_SAVE',\n UPDATE_ON_PAGE_CHANGE: '@@UPDATE_ON_PAGE_CHANGE',\n UPDATE_ON_STEP_CHANGE: '@@UPDATE_ON_STEP_CHANGE',\n UPDATE_ROTATE: '@@UPDATE_ROTATE',\n UPDATE_GET_FILE_DATA: '@@UPDATE_GET_FILE_DATA',\n UPDATE_PAGE_SIZE: '@@UPDATE_PAGE_SIZE',\n UPDATE_LOAD_FILE_LIST: '@@UPDATE_LOAD_FILE_LIST',\n GET_FILE_DATA: '@@GET_FILE_DATA',\n SET_FILE_DATA: '@@SET_FILE_DATA',\n COPY_BACKWARD_RESULT: '@@COPY_BACKWARD_RESULT',\n SET_STEP: '@@SET_STEP',\n SUBMIT_RESULT: '@@SUBMIT_RESULT',\n SAVE_RESULT: '@@SAVE_RESULT',\n SET_BASIC_INDEX: '@@SET_BASIC_INDEX',\n CALC_STEP_PROGRESS: '@@CALC_STEP_PROGRESS',\n SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED: '@@SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED',\n SKIP_BEFORE_PAGE_TURNING: '@@SKIP_BEFORE_PAGE_TURNING',\n UPDATE_BEFORE_ROTATE: '@@UPDATE_BEFORE_ROTATE',\n SET_LOADING: '@@SET_LOADING',\n SET_POINT_CLOUD_LOADING: '@@SET_POINT_CLOUD_LOADING',\n SET_CHECK_MODE: '@@SET_CHECK_MODE',\n\n SET_TASK_STEP_LIST: '@@SET_TASK_STEP_LIST',\n\n UPDATE_ANNOTATION_VALID: '@@UPDATE_ANNOTATION_VALID',\n\n BATCH_UPDATE_TRACK_ID: '@@BATCH_UPDATE_TRACK_ID',\n\n BATCH_UPDATE_RESULT_BY_TRACK_ID: '@@BATCH_UPDATE_RESULT_BY_TRACK_ID',\n};\n\nexport const IMAGE_ATTRIBUTE_ACTIONS = {\n UPDATE_IMG_ATTRIBUTE: '@@UPDATE_IMG_ATTRIBUTE',\n INIT_IMG_ATTRIBUTE: '@@INIT_IMG_ATTRIBUTE',\n};\n\nexport const TOOL_STYLE_ACTIONS = {\n INIT_TOOL_STYLE_CONFIG: '@@INIT_TOOL_STYLE_CONFIG',\n UPDATE_TOOL_STYLE_CONFIG: '@@UPDATE_TOOL_STYLE_CONFIG',\n};\n"],"names":[],"mappings":"AAAO,MAAM,kBAAqB,GAAA;AAAA,EAChC,cAAgB,EAAA,kBAAA;AAAA,EAChB,oBAAsB,EAAA,wBAAA;AAAA,EACtB,eAAiB,EAAA,mBAAA;AAAA,EACjB,wBAA0B,EAAA,4BAAA;AAAA,EAC1B,cAAgB,EAAA,kBAAA;AAAA,EAChB,gBAAkB,EAAA,oBAAA;AAAA,EAClB,eAAiB,EAAA,mBAAA;AAAA,EACjB,SAAW,EAAA,aAAA;AAAA,EACX,QAAU,EAAA,YAAA;AAAA,EACV,gBAAkB,EAAA,oBAAA;AAAA,EAClB,cAAgB,EAAA,kBAAA;AAAA,EAChB,qBAAuB,EAAA,yBAAA;AAAA,EACvB,qBAAuB,EAAA,yBAAA;AAAA,EACvB,aAAe,EAAA,iBAAA;AAAA,EACf,oBAAsB,EAAA,wBAAA;AAAA,EACtB,gBAAkB,EAAA,oBAAA;AAAA,EAClB,qBAAuB,EAAA,yBAAA;AAAA,EACvB,aAAe,EAAA,iBAAA;AAAA,EACf,aAAe,EAAA,iBAAA;AAAA,EACf,oBAAsB,EAAA,wBAAA;AAAA,EACtB,QAAU,EAAA,YAAA;AAAA,EACV,aAAe,EAAA,iBAAA;AAAA,EACf,WAAa,EAAA,eAAA;AAAA,EACb,eAAiB,EAAA,mBAAA;AAAA,EACjB,kBAAoB,EAAA,sBAAA;AAAA,EACpB,qCAAuC,EAAA,yCAAA;AAAA,EACvC,wBAA0B,EAAA,4BAAA;AAAA,EAC1B,oBAAsB,EAAA,wBAAA;AAAA,EACtB,WAAa,EAAA,eAAA;AAAA,EACb,uBAAyB,EAAA,2BAAA;AAAA,EACzB,cAAgB,EAAA,kBAAA;AAAA,EAEhB,kBAAoB,EAAA,sBAAA;AAAA,EAEpB,uBAAyB,EAAA,2BAAA;AAAA,EAEzB,qBAAuB,EAAA,yBAAA;AAAA,EAEvB,+BAAiC,EAAA,mCAAA;AAAA,EAAA;AAG5B,MAAM,uBAA0B,GAAA;AAAA,EACrC,oBAAsB,EAAA,wBAAA;AAAA,EACtB,kBAAoB,EAAA,sBAAA;AAAA,EAAA;AAGf,MAAM,kBAAqB,GAAA;AAAA,EAChC,sBAAwB,EAAA,0BAAA;AAAA,EACxB,wBAA0B,EAAA,4BAAA;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"actionCreators.js","sources":["../../../src/store/annotation/actionCreators.ts"],"sourcesContent":["import { ANNOTATION_ACTIONS } from '@/store/Actions';\nimport { IStepInfo } from '@/types/step';\nimport {\n GetFileData,\n LoadFileList,\n IFileItem,\n OnPageChange,\n OnSave,\n OnStepChange,\n OnSubmit,\n} from '@/types/data';\nimport { AnnotationActionTypes, ToolInstance } from './types';\nimport { LoadFileAndFileData, getStepConfig } from './reducer';\nimport { ESubmitType } from '@/constant';\nimport { EPageTurningOperation } from '@/data/enums/AnnotationSize';\nimport PageOperator from '@/utils/PageOperator';\nimport { jsonParser } from '@/utils';\nimport { IPointCloudBox } from '@labelbee/lb-utils';\n\nconst dispatchTasks = (dispatch: any, tasks: any[]) => tasks.map((task) => dispatch(task));\n\n/**\n * @param {pageTurningOperation} pageTurningOperation 翻页操作\n * @returns {ESubmitType} 提数据交类型\n */\nconst getSubmitByPageOperation = (pageTurningOperation: EPageTurningOperation) => {\n if (pageTurningOperation === EPageTurningOperation.Forward) {\n return ESubmitType.Forward;\n }\n\n if (pageTurningOperation === EPageTurningOperation.Backward) {\n return ESubmitType.Backward;\n }\n\n if (pageTurningOperation === EPageTurningOperation.Jump) {\n return ESubmitType.Jump;\n }\n\n return ESubmitType.Forward;\n};\n\nconst getBasicIndex = (annotationStore: any, basicIndex: number) => {\n const { imgList, imgIndex } = annotationStore;\n const { dataSourceStep } = getStepConfig(annotationStore.stepList, annotationStore.step);\n let backwardResult = jsonParser(imgList[imgIndex - 1].result);\n const index = backwardResult[`step_${dataSourceStep}`]?.result?.length - 1;\n return index || basicIndex;\n};\n\nexport function UpdateToolInstance(toolInstance: ToolInstance): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_TOOL_INSTANCE,\n payload: {\n toolInstance,\n },\n };\n}\n\nexport function UpdateImgList(imgList: IFileItem[]): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_IMG_LIST,\n payload: {\n imgList,\n },\n };\n}\n\nexport function UpdateAnnotationConfig(config: string): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ANNOTATION_CONFIG,\n payload: {\n config,\n },\n };\n}\n\nexport function SetTaskStepList({ stepList }: { stepList: IStepInfo[] }): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.SET_TASK_STEP_LIST,\n payload: {\n stepList,\n },\n };\n}\n\nexport function SetTaskConfig({\n stepList,\n step,\n}: {\n stepList: IStepInfo[];\n step: number;\n}): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.SET_TASK_CONFIG,\n payload: {\n stepList,\n step,\n },\n };\n}\n\nexport function UpdateOnSubmit(onSubmit: OnSubmit): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ON_SUBMIT,\n payload: {\n onSubmit,\n },\n };\n}\n\nexport function UpdateOnSave(onSave: OnSave): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ON_SAVE,\n payload: {\n onSave,\n },\n };\n}\n\nexport function UpdateOnPageChange(onPageChange: OnPageChange): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ON_PAGE_CHANGE,\n payload: {\n onPageChange,\n },\n };\n}\n\nexport function UpdateOnStepChange(onStepChange: OnStepChange): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ON_STEP_CHANGE,\n payload: {\n onStepChange,\n },\n };\n}\n\nexport function UpdateGetFileData(getFileData: GetFileData): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_GET_FILE_DATA,\n payload: {\n getFileData,\n },\n };\n}\n\nexport function UpdatePageSize(pageSize: number): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_PAGE_SIZE,\n payload: {\n pageSize,\n },\n };\n}\n\nexport function UpdateGetFileList(loadFileList: LoadFileList): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_LOAD_FILE_LIST,\n payload: {\n loadFileList,\n },\n };\n}\n\nexport function UpdateRotate(): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ROTATE,\n };\n}\n\nexport function UpdateValid(): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_ANNOTATION_VALID,\n };\n}\n\nexport function UpdateSkipBeforePageTurning(\n skipBeforePageTurning: (pageTurning: Function) => {},\n): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.SKIP_BEFORE_PAGE_TURNING,\n payload: {\n skipBeforePageTurning,\n },\n };\n}\n\nexport function UpdateBeforeRotate(beforeRotate: () => {}): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.UPDATE_BEFORE_ROTATE,\n payload: {\n beforeRotate,\n },\n };\n}\n\nexport function CopyBackWordResult(): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.COPY_BACKWARD_RESULT,\n };\n}\n\nexport function BatchUpdateTrackID({\n id,\n newID,\n rangeIndex,\n imgList,\n}: {\n id: number;\n newID: number;\n rangeIndex: [number, number];\n imgList: IFileItem[];\n}): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.BATCH_UPDATE_TRACK_ID,\n payload: {\n id,\n newID,\n rangeIndex,\n imgList,\n },\n };\n}\n\nexport function BatchUpdateResultByTrackID(\n id: number, // originData\n newData: Partial<IPointCloudBox>,\n rangeIndex: [number, number],\n): AnnotationActionTypes {\n return {\n type: ANNOTATION_ACTIONS.BATCH_UPDATE_RESULT_BY_TRACK_ID,\n payload: {\n id,\n newData,\n rangeIndex,\n },\n };\n}\n\nexport const UpdateCheckMode = (checkMode: boolean): AnnotationActionTypes => {\n return {\n type: ANNOTATION_ACTIONS.SET_CHECK_MODE,\n payload: {\n checkMode,\n },\n };\n};\n\n/**\n * 初始化任务数据\n * @param param0\n */\nexport function InitTaskData({\n onSubmit,\n onSave,\n onPageChange,\n onStepChange,\n getFileData,\n pageSize,\n loadFileList,\n step,\n stepList,\n skipBeforePageTurning,\n beforeRotate,\n checkMode,\n}: any): any {\n const tasks: any[] = [];\n\n if (onSubmit) {\n tasks.push(UpdateOnSubmit(onSubmit));\n }\n if (onSave) {\n tasks.push(UpdateOnSave(onSave));\n }\n if (onPageChange) {\n tasks.push(UpdateOnPageChange(onPageChange));\n }\n\n if (onStepChange) {\n tasks.push(UpdateOnStepChange(onStepChange));\n }\n\n if (getFileData) {\n tasks.push(UpdateGetFileData(getFileData));\n }\n\n if (loadFileList) {\n tasks.push(UpdateGetFileList(loadFileList));\n }\n\n if (pageSize) {\n tasks.push(UpdatePageSize(pageSize));\n }\n\n if (skipBeforePageTurning) {\n tasks.push(UpdateSkipBeforePageTurning(skipBeforePageTurning));\n }\n\n if (beforeRotate) {\n tasks.push(UpdateBeforeRotate(beforeRotate));\n }\n\n if (typeof checkMode === 'boolean') {\n tasks.push(UpdateCheckMode(checkMode));\n }\n\n tasks.push(SetTaskConfig({ stepList, step }));\n\n tasks.push({\n type: ANNOTATION_ACTIONS.CALC_STEP_PROGRESS,\n });\n\n tasks.push({\n type: ANNOTATION_ACTIONS.INIT_TOOL,\n });\n\n return (dispatch: any) => dispatchTasks(dispatch, tasks);\n}\n\n/**\n * 初始化任务数据\n * @param param0\n */\nexport function UpdateInjectFunc({\n onSubmit,\n onSave,\n onPageChange,\n onStepChange,\n getFileData,\n pageSize,\n loadFileList,\n stepList,\n beforeRotate,\n}: any): any {\n const tasks: any[] = [];\n\n if (onSubmit) {\n tasks.push(UpdateOnSubmit(onSubmit));\n }\n if (onSave) {\n tasks.push(UpdateOnSave(onSave));\n }\n if (onPageChange) {\n tasks.push(UpdateOnPageChange(onPageChange));\n }\n\n if (onStepChange) {\n tasks.push(UpdateOnStepChange(onStepChange));\n }\n\n if (getFileData) {\n tasks.push(UpdateGetFileData(getFileData));\n }\n\n if (loadFileList) {\n tasks.push(UpdateGetFileList(loadFileList));\n }\n\n if (pageSize) {\n tasks.push(UpdatePageSize(pageSize));\n }\n\n if (beforeRotate) {\n tasks.push(UpdateBeforeRotate(beforeRotate));\n }\n\n tasks.push(SetTaskStepList({ stepList }));\n\n return (dispatch: any) => dispatchTasks(dispatch, tasks);\n}\n\n/** 获取下一步的step */\nconst getNextStep = (step: number, stepList: any) => {\n const currentStepIndex = stepList?.findIndex((element: any) => element?.step === step);\n return stepList[currentStepIndex + 1]?.step;\n};\n\n/** 切换到下一步 */\nexport const ToNextStep = (pageNumber?: number) => (dispatch: any, getState: any) => {\n const { annotation } = getState();\n const { step, stepList } = annotation;\n const nextStep = getNextStep(step, stepList);\n return [dispatch(UpdateProcessingStep(nextStep, pageNumber))];\n};\n\n/**\n * 更新当前操作的步骤\n * @param {number} toStep\n */\nexport const UpdateProcessingStep =\n (toStep: number, index?: number) => (dispatch: any, getState: any) => {\n const { annotation } = getState();\n annotation?.onStepChange?.(toStep);\n const imgIndex = annotation?.imgIndex ?? 0;\n return [\n dispatch({ type: ANNOTATION_ACTIONS.SUBMIT_RESULT }),\n dispatch({\n type: ANNOTATION_ACTIONS.SUBMIT_FILE_DATA,\n payload: { submitType: ESubmitType.StepChanged },\n }),\n // ToSubmitFileData(ESubmitType.StepChanged),\n dispatch({ type: ANNOTATION_ACTIONS.SET_STEP, payload: { toStep } }),\n dispatch({ type: ANNOTATION_ACTIONS.CALC_STEP_PROGRESS }),\n // 切换步骤保持图片位置\n dispatch(LoadFileAndFileData(index ?? imgIndex, 0)),\n ];\n };\n\n/**\n * 提交当前的文件数据\n * @param submitType\n */\nexport const ToSubmitFileData = (submitType: ESubmitType) => (dispatch: any) =>\n [\n dispatch({ type: ANNOTATION_ACTIONS.SUBMIT_RESULT }),\n dispatch({ type: ANNOTATION_ACTIONS.SUBMIT_FILE_DATA, payload: { submitType } }),\n ];\n\n/**\n * 提交数据并且切换标注文件\n * @param dispatch\n * @param nextIndex\n * @param submitType\n * @param nextBasicIndex\n */\nconst SubmitAndChangeFileIndex = (\n dispatch: any,\n nextIndex: number,\n submitType: ESubmitType,\n nextBasicIndex?: number,\n) => [\n dispatch(ToSubmitFileData(submitType)),\n dispatch(LoadFileAndFileData(nextIndex, nextBasicIndex)),\n];\n\nconst ChangeBasicIndex = (dispatch: any, nextBasicIndex: number) => [\n dispatch({ type: ANNOTATION_ACTIONS.SUBMIT_RESULT }),\n dispatch({ type: ANNOTATION_ACTIONS.SET_BASIC_INDEX, payload: { basicIndex: nextBasicIndex } }),\n];\n\nconst ChangeTriggerEventAfterIndexChanged = (\n dispatch: any,\n triggerEventAfterIndexChanged: boolean,\n) => {\n dispatch({\n type: ANNOTATION_ACTIONS.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED,\n payload: {\n triggerEventAfterIndexChanged,\n },\n });\n};\n\n/** 向前翻页 */\nexport const PageBackward =\n (triggerEventAfterIndexChanged = false) =>\n (dispatch: any, getState: any) => {\n return DispatcherTurning(\n dispatch,\n getState,\n EPageTurningOperation.Backward,\n triggerEventAfterIndexChanged,\n );\n };\n\n/** 向后翻页 */\nexport const PageForward =\n (triggerEventAfterIndexChanged = false) =>\n (dispatch: any, getState: any) => {\n return DispatcherTurning(\n dispatch,\n getState,\n EPageTurningOperation.Forward,\n triggerEventAfterIndexChanged,\n );\n };\n\n/**\n * 跳到指定文件索引\n * @param toIndex\n */\nexport const PageJump =\n (toIndex: number, triggerEventAfterIndexChanged = false) =>\n (dispatch: any, getState: any) => {\n if (toIndex === getState().imgIndex) {\n return;\n }\n\n return DispatcherTurning(\n dispatch,\n getState,\n EPageTurningOperation.Jump,\n triggerEventAfterIndexChanged,\n toIndex,\n );\n };\n\n/**\n * 加载文件列表\n * @param dispatch\n * @param getState\n * @param nextIndex 需要加载的图片index\n * @param isInitial // 是否为初始化加载\n */\nexport const loadImgList = async (\n dispatch: any,\n getState: any,\n nextIndex: number,\n isInitial?: boolean,\n) => {\n const { loadFileList, imgList, pageSize } = getState().annotation;\n const page = Math.floor(nextIndex / pageSize);\n SetAnnotationLoading(dispatch, true);\n try {\n const res: any = await loadFileList(page, pageSize);\n SetAnnotationLoading(dispatch, false);\n if (!res?.fileList?.length || !res?.total) {\n throw new Error('fileList and total are required');\n }\n const newImgList = isInitial ? new Array(res.total) : [...imgList];\n newImgList.splice(page * pageSize, pageSize, ...res.fileList);\n dispatch({\n type: ANNOTATION_ACTIONS.UPDATE_IMG_LIST,\n payload: {\n imgList: newImgList,\n },\n });\n return true;\n } catch (err) {\n SetAnnotationLoading(dispatch, false);\n console.error(err);\n }\n};\n\n/**\n * 判断翻页还是切换依赖数据\n * @param dispatch\n * @param getState\n * @param pageTurningOperation\n * @param toIndex\n */\nexport const DispatcherTurning = async (\n dispatch: any,\n getState: any,\n pageTurningOperation: EPageTurningOperation,\n triggerEventAfterIndexChanged = false,\n toIndex?: number,\n) => {\n const annotationStore = getState().annotation;\n const { fileIndexChanged, fileIndex, basicIndexChanged, basicIndex } =\n PageOperator.getNextPageInfo(pageTurningOperation, annotationStore, toIndex);\n\n const submitType: ESubmitType = getSubmitByPageOperation(pageTurningOperation);\n\n ChangeTriggerEventAfterIndexChanged(dispatch, triggerEventAfterIndexChanged);\n\n // 翻页\n if (fileIndexChanged) {\n if (annotationStore.loading) {\n return;\n }\n // 加载图片列表\n if (!annotationStore.imgList[fileIndex]) {\n const isSuccess = await loadImgList(dispatch, getState, fileIndex);\n if (!isSuccess) {\n // 加载失败不往下执行\n return;\n }\n }\n\n annotationStore.onPageChange?.(fileIndex);\n const index =\n submitType === ESubmitType.Backward\n ? getBasicIndex(getState().annotation, basicIndex)\n : basicIndex;\n return SubmitAndChangeFileIndex(dispatch, fileIndex, submitType, index);\n }\n\n if (basicIndexChanged) {\n return ChangeBasicIndex(dispatch, basicIndex);\n }\n\n return dispatch(ToSubmitFileData(submitType));\n};\n\n/**\n * 保存当前页数据\n * */\nexport const ChangeSave = (dispatch: Function) => {\n dispatch(ToSubmitFileData(ESubmitType.Save));\n dispatch({ type: ANNOTATION_ACTIONS.SAVE_RESULT });\n};\n\nexport const SetAnnotationLoading = (dispatch: Function, loading: boolean) => {\n dispatch({\n type: ANNOTATION_ACTIONS.SET_LOADING,\n payload: {\n loading,\n },\n });\n};\n\nexport const SetPointCloudLoading = (dispatch: Function, loading: boolean) => {\n dispatch({\n type: ANNOTATION_ACTIONS.SET_LOADING,\n payload: {\n loading,\n },\n });\n};\n\nexport const InitAnnotationState = (dispatch: Function) => {\n dispatch({\n type: ANNOTATION_ACTIONS.INIT_ALL_STATE,\n payload: {},\n });\n};\n"],"names":["this"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"map.js","sources":["../../../src/store/annotation/map.ts"],"sourcesContent":["/**\n * @file MapStateToProps set\n * @createdate 2022-07-19\n * @author Ron <ron.f.luo@gmail.com>\n */\nimport { AppState } from '../index';\nimport { IFileItem } from '@/types/data';\nimport StepUtils from '@/utils/StepUtils';\nimport { IStepInfo } from '@/types/step';\nimport { jsonParser } from '@/utils';\n\nexport const aMapStateToProps = (state: AppState) => {\n const {\n annotation: { imgList, imgIndex },\n } = state;\n const currentData = imgList[imgIndex] ?? {};\n\n return {\n currentData,\n };\n};\n\nexport interface IAnnotationStateProps {\n currentData: IFileItem;\n}\n\nexport interface IA2MapStateProps extends IAnnotationStateProps {\n imgList: IFileItem[];\n stepInfo: IStepInfo;\n config: any;\n imgIndex: number;\n configString: string; // Easy for users to listener.\n}\n\nexport const a2MapStateToProps = (state: AppState) => {\n const {\n annotation: { imgList, imgIndex },\n } = state;\n const currentData = imgList[imgIndex] ?? {};\n const stepInfo = StepUtils.getCurrentStepInfo(state.annotation?.step, state.annotation?.stepList);\n\n return {\n currentData,\n imgIndex,\n imgList,\n stepInfo,\n config: jsonParser(stepInfo?.config),\n configString: stepInfo?.config,\n };\n};\n"],"names":[],"mappings":";;;AAkCa,MAAA,iBAAA,GAAoB,CAAC,KAAoB,KAAA;AAlCtD,EAAA,IAAA,EAAA,EAAA,EAAA,EAAA,EAAA,CAAA;AAmCE,EAAM,MAAA;AAAA,IACJ,UAAA,EAAY,CAAE,OAAS,EAAA,QAAA,CAAA;AAAA,GACrB,GAAA,KAAA,CAAA;AACJ,EAAM,MAAA,WAAA,GAAc,CAAQ,EAAA,GAAA,OAAA,CAAA,QAAA,CAAA,KAAR,IAAqB,GAAA,EAAA,GAAA,EAAA,CAAA;AACzC,EAAM,MAAA,QAAA,GAAW,UAAU,kBAAmB,CAAA,CAAA,EAAA,GAAA,KAAA,CAAM,eAAN,IAAkB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,IAAA,EAAM,CAAM,EAAA,GAAA,KAAA,CAAA,UAAA,KAAN,IAAkB,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,QAAA,CAAA,CAAA;AAExF,EAAO,OAAA;AAAA,IACL,WAAA;AAAA,IACA,QAAA;AAAA,IACA,OAAA;AAAA,IACA,QAAA;AAAA,IACA,MAAA,EAAQ,WAAW,QAAU,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,MAAA,CAAA;AAAA,IAC7B,cAAc,QAAU,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,QAAA,CAAA,MAAA;AAAA,GAAA,CAAA;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reducer.js","sources":["../../../src/store/annotation/reducer.ts"],"sourcesContent":["import { getFormatSize } from '@/components/customResizeHook';\nimport { ESubmitType } from '@/constant';\nimport styleString from '@/constant/styleString';\nimport { ANNOTATION_ACTIONS } from '@/store/Actions';\nimport { IFileItem } from '@/types/data';\nimport { IStepInfo } from '@/types/step';\nimport { jsonParser } from '@/utils';\nimport AnnotationDataUtils from '@/utils/AnnotationDataUtils';\nimport { ConfigUtils } from '@/utils/ConfigUtils';\nimport { composeResult, composeResultWithBasicImgInfo } from '@/utils/data';\nimport StepUtils from '@/utils/StepUtils';\nimport ToolUtils from '@/utils/ToolUtils';\nimport { AnnotationEngine, CommonToolUtils, ImgUtils, MathUtils } from '@labelbee/lb-annotation';\nimport { i18n, PointCloudUtils } from '@labelbee/lb-utils';\nimport { Modal } from 'antd';\nimport { message } from 'antd/es';\nimport _ from 'lodash';\nimport { SetAnnotationLoading } from './actionCreators';\nimport { AnnotationActionTypes, AnnotationState } from './types';\n\nexport const getStepConfig = (stepList: any[], step: number) =>\n stepList.find((i) => i.step === step);\n\nconst initialState: AnnotationState = {\n annotationEngine: null,\n toolInstance: null,\n imgList: [],\n config: '{}',\n imgIndex: -1,\n basicIndex: 0,\n imgPageSize: 1,\n step: 1,\n stepList: [],\n imgNode: new Image(),\n basicResultList: [],\n resultList: [],\n stepProgress: 0,\n loading: false,\n triggerEventAfterIndexChanged: false,\n\n pointCloudLoading: false,\n checkMode: false,\n};\n\n/**\n * 获取当前文件列表的总页数\n * @param state\n */\nexport const getTotalPage = (state: AnnotationState) => {\n const { imgList, imgPageSize } = state;\n return Math.ceil(imgList.length / imgPageSize);\n};\n\nconst calcStepProgress = (fileList: any[], step: number) =>\n fileList.reduce((pre, i) => {\n if (i) {\n const resultStr = i.result;\n const resultObject = jsonParser(resultStr);\n if (resultObject[`step_${step}`]) {\n return pre + 1;\n }\n }\n return pre;\n }, 0) / fileList.length;\n\nconst updateToolInstance = (annotation: AnnotationState, imgNode: HTMLImageElement) => {\n const { step, stepList } = annotation;\n const stepConfig = StepUtils.getCurrentStepInfo(step, stepList);\n const config = ConfigUtils.jsonParser(stepConfig.config);\n\n // 视频工具不支持实例化\n if (ToolUtils.isVideoTool(stepConfig?.tool)) {\n return;\n }\n\n // TODO: 点云实例化对接\n if (ToolUtils.isPointCloudTool(stepConfig?.tool)) {\n return;\n }\n\n const container = document.getElementById('toolContainer');\n\n if (!container) {\n throw `Not exist dom named id-toolContainer`;\n }\n\n const canvasSize = getFormatSize({ width: window.innerWidth, height: window.innerHeight });\n const annotationEngine = new AnnotationEngine({\n container,\n toolName: stepConfig.tool,\n size: canvasSize,\n imgNode,\n config,\n style: JSON.parse(styleString),\n });\n\n return { toolInstance: annotationEngine?.toolInstance, annotationEngine };\n};\n\n/**\n * 初始化imgNode并加载数据\n * @param nextIndex\n * @param nextBasicIndex\n */\nexport const LoadFileAndFileData =\n (nextIndex: number, nextBasicIndex?: number): any =>\n async (dispatch: any, getState: any) => {\n const { stepList, step } = getState().annotation;\n const currentIsVideo = StepUtils.currentToolIsVideo(step, stepList);\n const currentIsPointCloud = StepUtils.currentToolIsPointCloud(step, stepList);\n\n SetAnnotationLoading(dispatch, true);\n\n await dispatch(TryGetFileDataByAPI(nextIndex));\n\n if (currentIsVideo || currentIsPointCloud) {\n dispatch(AfterVideoLoaded(nextIndex));\n return;\n }\n\n dispatch(AfterImageLoaded(nextIndex, nextBasicIndex));\n };\n\n/**\n * 支持并优先外部传入的获取文件接口\n * @param nextIndex\n */\nconst TryGetFileDataByAPI = (nextIndex: number) => async (dispatch: any, getState: any) => {\n const { getFileData, imgList } = getState().annotation;\n if (getFileData) {\n const fileData = await getFileData(imgList[nextIndex], nextIndex);\n dispatch({\n type: ANNOTATION_ACTIONS.SET_FILE_DATA,\n payload: {\n fileData,\n index: nextIndex,\n },\n });\n }\n};\n\nconst AfterVideoLoaded = (nextIndex: number) => (dispatch: any) => {\n SetAnnotationLoading(dispatch, false);\n\n dispatch({\n type: ANNOTATION_ACTIONS.LOAD_FILE_DATA,\n payload: {\n nextIndex,\n },\n });\n};\n\nconst AfterImageLoaded =\n (nextIndex: number, nextBasicIndex?: number) => (dispatch: any, getState: any) => {\n const { toolInstance, imgList } = getState().annotation;\n const url = imgList?.[nextIndex]?.url;\n ImgUtils.load(url)\n .then((imgNode: HTMLImageElement) => {\n SetAnnotationLoading(dispatch, false);\n\n dispatch({\n type: ANNOTATION_ACTIONS.LOAD_FILE_DATA,\n payload: {\n imgNode,\n nextIndex,\n nextBasicIndex,\n },\n });\n })\n .catch(() => {\n SetAnnotationLoading(dispatch, false);\n toolInstance?.setErrorImg();\n dispatch({\n type: ANNOTATION_ACTIONS.LOAD_FILE_DATA,\n payload: {\n nextIndex,\n nextBasicIndex,\n },\n });\n });\n };\n\nexport const composeResultByToolInstance = ({\n toolInstance,\n imgList,\n imgIndex,\n stepList,\n step = 1,\n}: {\n toolInstance: any;\n imgList: IFileItem[];\n imgIndex: number;\n stepList: IStepInfo[];\n step?: number;\n}) => {\n const oldResultString = imgList[imgIndex]?.result || '';\n const [resultList, basicImgInfo, extraData] = toolInstance?.exportData() ?? [];\n const customObject = toolInstance?.exportCustomData?.() ?? {};\n\n const resultWithBasicInfo = composeResultWithBasicImgInfo(oldResultString, basicImgInfo);\n const newResultString = composeResult(\n resultWithBasicInfo,\n { step, stepList },\n { rect: resultList },\n customObject,\n );\n\n return imgList.map((v, i) => {\n if (i === imgIndex) {\n return {\n ...v,\n result: newResultString,\n ...extraData,\n };\n }\n return {\n ...v,\n };\n });\n};\n\nexport const annotationReducer = (\n state = { ...initialState },\n action: AnnotationActionTypes,\n): AnnotationState => {\n switch (action.type) {\n case ANNOTATION_ACTIONS.INIT_ALL_STATE: {\n return {\n ...state,\n ...initialState,\n };\n }\n\n case ANNOTATION_ACTIONS.UPDATE_TOOL_INSTANCE: {\n return {\n ...state,\n toolInstance: action.payload.toolInstance,\n };\n }\n\n case ANNOTATION_ACTIONS.UPDATE_IMG_LIST: {\n return {\n ...state,\n imgList: action.payload.imgList,\n };\n }\n\n case ANNOTATION_ACTIONS.CALC_STEP_PROGRESS: {\n const { imgList, step } = state;\n\n const stepProgress = calcStepProgress(imgList, step);\n\n return {\n ...state,\n stepProgress,\n };\n }\n\n case ANNOTATION_ACTIONS.SUBMIT_FILE_DATA: {\n const { imgList, imgIndex, step, stepList, toolInstance, onSubmit, resultList } = state;\n if (!toolInstance || !imgList[imgIndex]) {\n return state;\n }\n\n const oldResultString = imgList[imgIndex]?.result || '';\n const [, basicImgInfo, extraData] = toolInstance?.exportData() ?? [];\n const customObject = toolInstance?.exportCustomData?.() ?? {};\n\n const resultWithBasicInfo = composeResultWithBasicImgInfo(oldResultString, basicImgInfo);\n const newResultString = composeResult(\n resultWithBasicInfo,\n { step, stepList },\n { rect: resultList },\n customObject,\n );\n\n const newImgList = state.imgList.map((v, i) => {\n if (i === imgIndex) {\n // Update Result\n const newResult = AnnotationDataUtils.dataCorrection(\n newResultString,\n oldResultString,\n step,\n stepList,\n );\n\n return {\n ...v,\n result: newResult,\n ...extraData,\n };\n }\n return v;\n });\n\n // Just for sync imgList\n if (action.payload?.submitType === ESubmitType.SyncImgList) {\n return {\n ...state,\n imgList: newImgList,\n };\n }\n\n if (onSubmit) {\n onSubmit([newImgList[imgIndex]], action.payload?.submitType, imgIndex, newImgList);\n }\n\n const stepProgress = calcStepProgress(newImgList, step);\n return {\n ...state,\n stepProgress,\n imgList: newImgList,\n };\n }\n\n case ANNOTATION_ACTIONS.SAVE_RESULT: {\n const { imgList, imgIndex, onSave } = state;\n onSave?.(imgList[imgIndex], imgIndex, imgList);\n return {\n ...state,\n };\n }\n\n /**\n * For data storage in dependent states\n *\n * Features:\n * 1. Get Data from ToolInstance (If it use toolInstance)\n * 2. Filter Data By BasicResultList\n */\n case ANNOTATION_ACTIONS.SUBMIT_RESULT: {\n const { imgList, basicIndex, resultList, toolInstance, basicResultList } = state;\n if (!toolInstance) {\n return state;\n }\n\n const [exportResult] = toolInstance?.exportData() ?? [];\n\n let previousResultList = exportResult;\n\n if (basicResultList?.length > 0) {\n const sourceID = basicResultList[basicIndex]?.id;\n const newResultData = exportResult.map((i: any) => ({ ...i, sourceID }));\n previousResultList = _.cloneDeep(resultList).filter((i: any) => i.sourceID !== sourceID);\n previousResultList.push(...newResultData);\n }\n\n return {\n ...state,\n resultList: previousResultList,\n imgList,\n };\n }\n\n case ANNOTATION_ACTIONS.SET_BASIC_INDEX: {\n const {\n toolInstance,\n step,\n imgList,\n imgIndex,\n stepList,\n annotationEngine,\n resultList,\n basicResultList,\n } = state;\n\n if (!toolInstance || !annotationEngine) {\n return state;\n }\n\n const nextBasicIndex = action.payload.basicIndex;\n const sourceID = basicResultList[nextBasicIndex]?.id;\n\n const fileResult = jsonParser(imgList[imgIndex]?.result);\n const result = (resultList || []).filter((i) => i.sourceID === sourceID);\n\n const stepConfig = getStepConfig(stepList, step);\n\n const { dataSourceStep, tool } = stepConfig;\n const dependStepConfig = getStepConfig(stepList, dataSourceStep);\n let stepBasicResultList = [];\n\n if (dataSourceStep && tool) {\n stepBasicResultList = fileResult[`step_${dataSourceStep}`]?.result;\n\n if (stepBasicResultList?.length > 0) {\n annotationEngine?.setBasicInfo(\n dependStepConfig.tool,\n stepBasicResultList[nextBasicIndex],\n );\n annotationEngine?.launchOperation();\n } else {\n annotationEngine?.setBasicInfo(dependStepConfig.tool);\n annotationEngine?.forbidOperation();\n message.info(i18n.t('NoDependency'));\n }\n }\n\n toolInstance?.setResult(result);\n toolInstance?.history.initRecord(result, true);\n\n return {\n ...state,\n basicIndex: nextBasicIndex,\n };\n }\n\n case ANNOTATION_ACTIONS.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED: {\n const { triggerEventAfterIndexChanged } = action.payload;\n return {\n ...state,\n triggerEventAfterIndexChanged: !!triggerEventAfterIndexChanged,\n };\n }\n\n case ANNOTATION_ACTIONS.LOAD_FILE_DATA: {\n const { imgList, step, toolInstance, annotationEngine, stepList } = state;\n\n /**\n * TODO\n * Before: !toolInstance || !annotationEngine\n *\n * The roles of toolInstance and annotationEngine need to be clearly distinguished\n */\n if (!toolInstance) {\n return { ...state, imgIndex: action.payload.nextIndex };\n }\n\n const currentStepInfo = StepUtils.getCurrentStepInfo(step, stepList);\n\n const { nextIndex, imgNode, nextBasicIndex, imgError } = action.payload;\n const basicIndex = nextBasicIndex ?? 0;\n\n const fileResult = jsonParser(imgList[nextIndex]?.result);\n\n const stepResult = fileResult[`step_${currentStepInfo.step}`];\n\n const isInitData = !stepResult; // 是否为初始化数据\n\n const basicImgInfo = {\n rotate: fileResult.rotate ?? 0,\n valid: fileResult.valid ?? true,\n };\n\n if (imgNode && imgError !== true) {\n annotationEngine?.setImgNode(imgNode, basicImgInfo);\n } else {\n // Non-graphical tools to initialize base data\n\n toolInstance?.setValid(basicImgInfo.valid);\n }\n\n const stepConfig = getStepConfig(stepList, currentStepInfo.step);\n\n const { dataSourceStep, tool } = stepConfig;\n const dependStepConfig = getStepConfig(stepList, dataSourceStep);\n const hasDataSourceStep = dataSourceStep && tool;\n const stepBasicResultList = fileResult[`step_${dataSourceStep}`]?.result ?? [];\n\n const result = AnnotationDataUtils.getInitialResultList(\n stepResult?.result,\n toolInstance,\n stepConfig,\n stepBasicResultList,\n isInitData,\n );\n\n annotationEngine?.launchOperation();\n\n if (hasDataSourceStep) {\n if (stepBasicResultList?.length > 0) {\n annotationEngine?.setBasicInfo(dependStepConfig.tool, stepBasicResultList[basicIndex]);\n } else {\n // TODO: 禁用绘制交互,有无依赖之间的操作切换\n annotationEngine?.setBasicInfo(dependStepConfig.tool);\n annotationEngine?.forbidOperation();\n message.info(i18n.t('NoDependency'));\n }\n }\n\n // TODO,非查看模式才允许添加数据\n if (currentStepInfo.tool !== 'check') {\n const sourceID = stepBasicResultList[basicIndex]?.id ?? '';\n const resultForBasicIndex = hasDataSourceStep\n ? result.filter((i: { sourceID: string | number }) =>\n CommonToolUtils.isSameSourceID(i.sourceID, sourceID),\n )\n : result;\n toolInstance?.history.initRecord(result, true);\n toolInstance?.setResult(resultForBasicIndex);\n }\n\n return {\n ...state,\n imgIndex: nextIndex,\n basicIndex,\n basicResultList: stepBasicResultList,\n resultList: result,\n };\n }\n\n case ANNOTATION_ACTIONS.UPDATE_ANNOTATION_CONFIG: {\n return {\n ...state,\n config: action.payload.config ?? '{}',\n };\n }\n\n case ANNOTATION_ACTIONS.SET_TASK_STEP_LIST: {\n const { stepList } = action.payload;\n return {\n ...state,\n stepList,\n };\n }\n\n case ANNOTATION_ACTIONS.SET_TASK_CONFIG: {\n const { stepList, step } = action.payload;\n return {\n ...state,\n stepList,\n step,\n };\n }\n\n case ANNOTATION_ACTIONS.INIT_TOOL: {\n const { imgNode } = state;\n const instance = updateToolInstance(state, imgNode);\n\n if (instance) {\n const { toolInstance, annotationEngine } = instance;\n return {\n ...state,\n toolInstance,\n annotationEngine,\n };\n }\n\n return {\n ...state,\n };\n }\n\n // react hook tool Proprietary operations\n case ANNOTATION_ACTIONS.SET_TOOL: {\n const instance = action.payload?.instance;\n if (instance) {\n return {\n ...state,\n toolInstance: instance,\n // TODO It needs to optimize\n // annotationEngine: {\n // toolInstance: instance,\n // } as any,\n };\n }\n\n return {\n ...state,\n };\n }\n\n case ANNOTATION_ACTIONS.UPDATE_ON_SUBMIT: {\n return {\n ...state,\n onSubmit: action.payload.onSubmit,\n };\n }\n\n case ANNOTATION_ACTIONS.UPDATE_ON_SAVE: {\n return {\n ...state,\n onSave: action.payload.onSave,\n };\n }\n\n case ANNOTATION_ACTIONS.UPDATE_ON_PAGE_CHANGE: {\n return {\n ...state,\n onPageChange: action.payload.onPageChange,\n };\n }\n\n case ANNOTATION_ACTIONS.UPDATE_ON_STEP_CHANGE: {\n return {\n ...state,\n onStepChange: action.payload.onStepChange,\n };\n }\n\n case ANNOTATION_ACTIONS.UPDATE_GET_FILE_DATA: {\n return {\n ...state,\n getFileData: action.payload.getFileData,\n };\n }\n\n case ANNOTATION_ACTIONS.UPDATE_PAGE_SIZE: {\n return {\n ...state,\n pageSize: action.payload.pageSize,\n };\n }\n\n case ANNOTATION_ACTIONS.UPDATE_LOAD_FILE_LIST: {\n return {\n ...state,\n loadFileList: action.payload.loadFileList,\n };\n }\n\n case ANNOTATION_ACTIONS.UPDATE_BEFORE_ROTATE: {\n return {\n ...state,\n beforeRotate: action.payload.beforeRotate,\n };\n }\n\n case ANNOTATION_ACTIONS.SKIP_BEFORE_PAGE_TURNING: {\n return {\n ...state,\n skipBeforePageTurning: action.payload.skipBeforePageTurning,\n };\n }\n\n case ANNOTATION_ACTIONS.SET_FILE_DATA: {\n const { fileData, index } = action.payload;\n const { imgList } = state;\n const newImgList = [...imgList];\n newImgList[index] = { ...newImgList[index], ...fileData };\n\n return {\n ...state,\n imgList: newImgList,\n };\n }\n\n case ANNOTATION_ACTIONS.UPDATE_ROTATE: {\n const { toolInstance, beforeRotate } = state;\n\n // DataCheck before rotate.\n if (beforeRotate) {\n if (beforeRotate() === false) {\n return state;\n }\n }\n\n toolInstance?.updateRotate();\n return state;\n }\n\n case ANNOTATION_ACTIONS.UPDATE_ANNOTATION_VALID: {\n const { toolInstance } = state;\n const valid = toolInstance?.valid ?? true;\n\n Modal.destroyAll();\n Modal.confirm({\n content: i18n.t(valid ? 'updateValidFromValidToInValid' : 'updateValidFromInValidToValid'),\n onOk: () => {\n toolInstance?.setValid(!valid);\n },\n okText: i18n.t('Confirm'),\n cancelText: i18n.t('Cancel'),\n });\n\n return state;\n }\n\n case ANNOTATION_ACTIONS.COPY_BACKWARD_RESULT: {\n const { toolInstance, imgIndex, imgList, step } = state;\n if (!toolInstance) {\n return state;\n }\n\n if (imgIndex === 0 || imgIndex >= imgList.length) {\n console.error('无法复制边界外的内容');\n return state;\n }\n const backwardResult = imgList[imgIndex - 1].result;\n if (!backwardResult) {\n return state;\n }\n\n const newResult = AnnotationDataUtils.copyResultChange(\n backwardResult,\n step,\n imgList[imgIndex].result ?? '',\n );\n imgList[imgIndex] = {\n ...imgList[imgIndex],\n result: newResult,\n };\n\n // 更新当前的结果\n const fileResult = jsonParser(newResult);\n const stepResult = fileResult[`step_${step}`];\n const result = stepResult?.result || [];\n\n toolInstance?.setResult(result);\n toolInstance?.history.pushHistory(result);\n\n /**\n * Async PointCloud Data.\n */\n // @ts-ignore \n toolInstance?.asyncData(imgList[imgIndex]);\n return {\n ...state,\n imgList: [...imgList],\n };\n }\n\n case ANNOTATION_ACTIONS.SET_STEP: {\n const { stepList, annotationEngine } = state;\n const { toStep } = action.payload;\n\n if (!annotationEngine) {\n return state;\n }\n\n const stepConfig = getStepConfig(stepList, toStep);\n annotationEngine?.setToolName(stepConfig.tool, stepConfig.config);\n\n return {\n ...state,\n step: toStep,\n toolInstance: annotationEngine?.toolInstance,\n };\n }\n\n case ANNOTATION_ACTIONS.SET_LOADING: {\n const { loading } = action.payload;\n\n return {\n ...state,\n loading: !!loading,\n };\n }\n\n case ANNOTATION_ACTIONS.SET_POINT_CLOUD_LOADING: {\n const { pointCloudLoading } = action.payload;\n\n return {\n ...state,\n pointCloudLoading: !!pointCloudLoading,\n };\n }\n\n case ANNOTATION_ACTIONS.SET_CHECK_MODE: {\n const { checkMode } = action.payload;\n return {\n ...state,\n checkMode: !!checkMode,\n };\n }\n\n case ANNOTATION_ACTIONS.BATCH_UPDATE_TRACK_ID: {\n const { id, newID, rangeIndex, imgList } = action.payload;\n const { imgIndex, onSubmit } = state;\n\n // Record the updated list.\n const updateImgList: Array<{ newInfo: IFileItem; imgIndex: number }> = [];\n const newImgList = imgList.map((v: IFileItem, i: number) => {\n if (MathUtils.isInRange(i, rangeIndex)) {\n const newInfo = {\n ...v,\n result: PointCloudUtils.batchUpdateTrackID({ id, newID, result: v.result }),\n };\n\n updateImgList.push({\n imgIndex: i,\n newInfo,\n });\n\n return newInfo;\n }\n return v;\n });\n\n // Notify external data changes.\n if (onSubmit) {\n onSubmit([newImgList[imgIndex]], ESubmitType.BatchUpdateTrackID, imgIndex, newImgList, {\n updateImgList,\n });\n }\n\n return {\n ...state,\n imgList: newImgList,\n };\n }\n\n case ANNOTATION_ACTIONS.BATCH_UPDATE_RESULT_BY_TRACK_ID: {\n const { id, newData, rangeIndex } = action.payload;\n const { imgList, imgIndex, onSubmit } = state;\n // Record the updated list.\n const updateImgList: Array<{ newInfo: IFileItem; imgIndex: number }> = [];\n const newImgList = imgList.map((v, i) => {\n if (MathUtils.isInRange(i, rangeIndex)) {\n const newInfo = {\n ...v,\n result: PointCloudUtils.batchUpdateResultByTrackID({ id, newData, result: v.result }),\n };\n\n updateImgList.push({\n imgIndex: i,\n newInfo,\n });\n\n return newInfo;\n }\n return v;\n });\n\n // Notify external data changes.\n if (onSubmit) {\n onSubmit([newImgList[imgIndex]], ESubmitType.BatchUpdateTrackID, imgIndex, newImgList, {\n updateImgList,\n });\n }\n\n return {\n ...state,\n imgList: newImgList,\n };\n }\n\n // eslint-disable-next-line no-fallthrough\n default:\n return state;\n }\n};\n"],"names":["this"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"selectors.js","sources":["../../../src/store/annotation/selectors.ts"],"sourcesContent":["import { jsonParser } from '@/utils';\nimport { getStepConfig } from './reducer';\nimport { AnnotationState } from './types';\n\n/**\n * select current step config\n */\nexport const stepConfigSelector = ({ annotation }: { annotation: AnnotationState }) => {\n const { stepList, step } = annotation;\n return jsonParser(getStepConfig(stepList, step)?.config);\n};\n"],"names":[],"mappings":";;;AAOa,MAAA,kBAAA,GAAqB,CAAC,CAAE,UAAkD,CAAA,KAAA;AAPvF,EAAA,IAAA,EAAA,CAAA;AAQE,EAAM,MAAA,CAAE,UAAU,IAAS,CAAA,GAAA,UAAA,CAAA;AAC3B,EAAA,OAAO,UAAW,CAAA,CAAA,EAAA,GAAA,aAAA,CAAc,QAAU,EAAA,IAAA,CAAA,KAAxB,IAA+B,GAAA,KAAA,CAAA,GAAA,EAAA,CAAA,MAAA,CAAA,CAAA;AAAA;;;;"}
|
package/es/store/ctx.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ctx.js","sources":["../../src/store/ctx.ts"],"sourcesContent":["import React from 'react';\nimport { createDispatchHook, createSelectorHook } from 'react-redux';\nimport { AnyAction, Dispatch } from 'redux';\n\nexport const LabelBeeContext = React.createContext(undefined) as any;\nexport const useDispatch = createDispatchHook(LabelBeeContext) as () => Dispatch<AnyAction | any>; // TODO, Any need to be updated.\nexport const useSelector = createSelectorHook(LabelBeeContext);\n"],"names":[],"mappings":";;;AAIa,MAAA,eAAA,GAAkB,MAAM,aAAc,CAAA,KAAA,CAAA,EAAA;AAC5C,MAAM,cAAc,kBAAmB,CAAA,eAAA,EAAA;AACvC,MAAM,cAAc,kBAAmB,CAAA,eAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"actionCreators.js","sources":["../../../src/store/imgAttribute/actionCreators.ts"],"sourcesContent":["import { IMAGE_ATTRIBUTE_ACTIONS } from '@/store/Actions';\nimport { ImgAttributeActionTypes, ImgAttributeState } from './types';\n\nexport function UpdateImgAttribute(imgAttribute: ImgAttributeState): ImgAttributeActionTypes {\n return {\n type: IMAGE_ATTRIBUTE_ACTIONS.UPDATE_IMG_ATTRIBUTE,\n payload: imgAttribute,\n };\n}\n\nexport function InitImgAttribute(): ImgAttributeActionTypes {\n return {\n type: IMAGE_ATTRIBUTE_ACTIONS.INIT_IMG_ATTRIBUTE,\n payload: {}\n };\n}\n\nexport default {\n UpdateImgAttribute,\n InitImgAttribute,\n};\n"],"names":[],"mappings":";;AAGO,SAAA,kBAAA,CAA4B,YAA0D,EAAA;AAC3F,EAAO,OAAA;AAAA,IACL,MAAM,uBAAwB,CAAA,oBAAA;AAAA,IAC9B,OAAS,EAAA,YAAA;AAAA,GAAA,CAAA;AAAA,CAAA;AAI+C,SAAA,gBAAA,GAAA;AAC1D,EAAO,OAAA;AAAA,IACL,MAAM,uBAAwB,CAAA,kBAAA;AAAA,IAC9B,OAAS,EAAA,EAAA;AAAA,GAAA,CAAA;AAAA,CAAA;AAIb,mBAAe;AAAA,EACb,kBAAA;AAAA,EACA,gBAAA;AAAA,CAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reducer.js","sources":["../../../src/store/imgAttribute/reducer.ts"],"sourcesContent":["import { IMAGE_ATTRIBUTE_ACTIONS } from '@/store/Actions';\nimport { ImgAttributeState, ImgAttributeActionTypes } from './types';\n\nconst initialState: ImgAttributeState = {\n contrast: 1,\n saturation: 1,\n brightness: 1,\n zoomRatio: 1,\n isOriginalSize: false,\n};\n\nexport function imgAttributeReducer(\n state = { ...initialState },\n action: ImgAttributeActionTypes,\n): ImgAttributeState {\n switch (action.type) {\n case IMAGE_ATTRIBUTE_ACTIONS.UPDATE_IMG_ATTRIBUTE: {\n return {\n ...state,\n ...action.payload,\n };\n }\n\n case IMAGE_ATTRIBUTE_ACTIONS.INIT_IMG_ATTRIBUTE: {\n return {\n ...initialState,\n };\n }\n\n default:\n return state;\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAGA,MAAM,YAAkC,GAAA;AAAA,EACtC,QAAU,EAAA,CAAA;AAAA,EACV,UAAY,EAAA,CAAA;AAAA,EACZ,UAAY,EAAA,CAAA;AAAA,EACZ,SAAW,EAAA,CAAA;AAAA,EACX,cAAgB,EAAA,KAAA;AAAA,CAAA,CAAA;AAIhB,SAAA,mBAAA,CAAA,KAAA,GAAQ,cAAK,CAAA,EAAA,EAAA,YAAA,CAAA,EACb,MACmB,EAAA;AACnB,EAAA,QAAQ,MAAO,CAAA,IAAA;AAAA,IAAA,KACR,wBAAwB,oBAAsB,EAAA;AACjD,MAAO,OAAA,cAAA,CAAA,cAAA,CAAA,EAAA,EACF,QACA,MAAO,CAAA,OAAA,CAAA,CAAA;AAAA,KAAA;AAAA,IAAA,KAIT,wBAAwB,kBAAoB,EAAA;AAC/C,MAAA,OAAO,cACF,CAAA,EAAA,EAAA,YAAA,CAAA,CAAA;AAAA,KAAA;AAAA,IAAA;AAKL,MAAO,OAAA,KAAA,CAAA;AAAA,GAAA;AAAA;;;;"}
|
package/es/store/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/store/index.ts"],"sourcesContent":["import { combineReducers, CombinedState } from 'redux';\nimport { annotationReducer } from './annotation/reducer';\nimport { imgAttributeReducer } from './imgAttribute/reducer';\nimport { toolStyleReducer } from './toolStyle/reducer';\n\nexport const rootReducer: CombinedState<any> = combineReducers({\n annotation: annotationReducer,\n imgAttribute: imgAttributeReducer,\n toolStyle: toolStyleReducer,\n});\n\nexport type AppState = ReturnType<typeof rootReducer>;\n"],"names":[],"mappings":";;;;;AAKO,MAAM,cAAkC,eAAgB,CAAA;AAAA,EAC7D,UAAY,EAAA,iBAAA;AAAA,EACZ,YAAc,EAAA,mBAAA;AAAA,EACd,SAAW,EAAA,gBAAA;AAAA,CAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"actionCreators.js","sources":["../../../src/store/toolStyle/actionCreators.ts"],"sourcesContent":["import { TOOL_STYLE_ACTIONS } from '@/store/Actions';\nimport { ToolStyleActionTypes, ToolStyleState } from './types';\n\nexport function InitToolStyleConfig(): ToolStyleActionTypes {\n return {\n type: TOOL_STYLE_ACTIONS.INIT_TOOL_STYLE_CONFIG,\n payload: undefined\n };\n}\n\nexport function UpdateToolStyleConfig(toolStyle: Partial<ToolStyleState>): ToolStyleActionTypes {\n return {\n type: TOOL_STYLE_ACTIONS.UPDATE_TOOL_STYLE_CONFIG,\n payload: toolStyle,\n };\n}\n\nexport default {\n InitToolStyleConfig,\n UpdateToolStyleConfig,\n};\n"],"names":[],"mappings":";;AAG4D,SAAA,mBAAA,GAAA;AAC1D,EAAO,OAAA;AAAA,IACL,MAAM,kBAAmB,CAAA,sBAAA;AAAA,IACzB,OAAS,EAAA,KAAA,CAAA;AAAA,GAAA,CAAA;AAAA,CAAA;AAIN,SAAA,qBAAA,CAA+B,SAA0D,EAAA;AAC9F,EAAO,OAAA;AAAA,IACL,MAAM,kBAAmB,CAAA,wBAAA;AAAA,IACzB,OAAS,EAAA,SAAA;AAAA,GAAA,CAAA;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reducer.js","sources":["../../../src/store/toolStyle/reducer.ts"],"sourcesContent":["import { COLORS_ARRAY, NULL_COLOR } from '@/data/Style';\nimport { ToolStyleUtils } from '@/utils/ToolStyleUtils';\nimport { TOOL_STYLE_ACTIONS } from '@/store/Actions';\nimport { ToolStyleActionTypes, ToolStyleState } from './types';\n\nconst initialState: ToolStyleState = {\n color: 1,\n width: 2,\n borderOpacity: 9,\n fillOpacity: 9,\n toolColor: ToolStyleUtils.getToolColors(),\n attributeColor: ToolStyleUtils.getAttributeColors(),\n lineColor: ToolStyleUtils.getDefaultToolLineColors(),\n attributeLineColor: [NULL_COLOR].concat(COLORS_ARRAY),\n};\n\nexport function toolStyleReducer(\n state = { ...initialState },\n action: ToolStyleActionTypes,\n): ToolStyleState {\n switch (action.type) {\n case TOOL_STYLE_ACTIONS.INIT_TOOL_STYLE_CONFIG: {\n return {\n ...initialState,\n };\n }\n\n case TOOL_STYLE_ACTIONS.UPDATE_TOOL_STYLE_CONFIG: {\n const computeColor = {};\n const payload = action.payload;\n if (payload?.borderOpacity || payload?.fillOpacity) {\n Object.assign(\n computeColor,\n ToolStyleUtils.initByOpacity(\n payload.borderOpacity || state.borderOpacity,\n payload.fillOpacity || state.fillOpacity,\n ),\n );\n }\n\n return {\n ...state,\n ...action.payload,\n ...computeColor,\n };\n }\n\n default:\n return state;\n }\n}\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAKA,MAAM,YAA+B,GAAA;AAAA,EACnC,KAAO,EAAA,CAAA;AAAA,EACP,KAAO,EAAA,CAAA;AAAA,EACP,aAAe,EAAA,CAAA;AAAA,EACf,WAAa,EAAA,CAAA;AAAA,EACb,WAAW,cAAe,CAAA,aAAA,EAAA;AAAA,EAC1B,gBAAgB,cAAe,CAAA,kBAAA,EAAA;AAAA,EAC/B,WAAW,cAAe,CAAA,wBAAA,EAAA;AAAA,EAC1B,kBAAA,EAAoB,CAAC,UAAA,CAAA,CAAY,MAAO,CAAA,YAAA,CAAA;AAAA,CAAA,CAAA;AAIxC,SAAA,gBAAA,CAAA,KAAA,GAAQ,cAAK,CAAA,EAAA,EAAA,YAAA,CAAA,EACb,MACgB,EAAA;AAChB,EAAA,QAAQ,MAAO,CAAA,IAAA;AAAA,IAAA,KACR,mBAAmB,sBAAwB,EAAA;AAC9C,MAAA,OAAO,cACF,CAAA,EAAA,EAAA,YAAA,CAAA,CAAA;AAAA,KAAA;AAAA,IAAA,KAIF,mBAAmB,wBAA0B,EAAA;AAChD,MAAA,MAAM,YAAe,GAAA,EAAA,CAAA;AACrB,MAAA,MAAM,UAAU,MAAO,CAAA,OAAA,CAAA;AACvB,MAAI,IAAA,CAAA,OAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,OAAA,CAAS,aAAiB,MAAA,OAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,OAAA,CAAS,WAAa,CAAA,EAAA;AAClD,QAAO,MAAA,CAAA,MAAA,CACL,YACA,EAAA,cAAA,CAAe,aACb,CAAA,OAAA,CAAQ,iBAAiB,KAAM,CAAA,aAAA,EAC/B,OAAQ,CAAA,WAAA,IAAe,KAAM,CAAA,WAAA,CAAA,CAAA,CAAA;AAAA,OAAA;AAKnC,MAAO,OAAA,cAAA,CAAA,cAAA,CAAA,cAAA,CAAA,EAAA,EACF,KACA,CAAA,EAAA,MAAA,CAAO,OACP,CAAA,EAAA,YAAA,CAAA,CAAA;AAAA,KAAA;AAAA,IAAA;AAKL,MAAO,OAAA,KAAA,CAAA;AAAA,GAAA;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AnnotationDataUtils.js","sources":["../../src/utils/AnnotationDataUtils.ts"],"sourcesContent":["import { uuid } from '@labelbee/lb-annotation';\nimport { jsonParser } from '.';\nimport { EToolName } from '@/data/enums/ToolType';\nimport _ from 'lodash';\nimport StepUtils from './StepUtils';\nimport { IStepInfo } from '@/types/step';\n\nexport default class AnnotationDataUtils {\n /**\n * 复制上一张图片结果\n * @param copyResult 复制的结果\n * @param step 复制的步骤\n * @param currentResult 当前的步骤\n * @returns\n */\n public static copyResultChange(copyResult: string, step: number, currentResult: string) {\n // 其实其限定的范围一般都在单图的情况\n try {\n const copyData = jsonParser(copyResult);\n const currentData = jsonParser(currentResult);\n const stepName = `step_${step}`;\n if (copyData[stepName]) {\n // 这层可能还要处理 dataSource 依赖问题\n const info = copyData[stepName];\n if (info.result) {\n info.result = info.result.map((info: any) => ({\n ...info,\n // @ts-ignore\n id: uuid(8, 62),\n }));\n currentData[stepName] = info;\n return JSON.stringify(currentData);\n }\n }\n return copyResult;\n } catch {\n return copyResult;\n }\n }\n\n /**\n * 判断结果sourceID与依赖数据的id是否能对应\n * @param result\n * @param basicResultList\n */\n public static isResultSourceMatchedDependence(result: any, basicResultList: any[]) {\n const sourceIDForCurStep = result?.map((i: { sourceID: string }) => i.sourceID).sort();\n const sourceIDForDependStep = basicResultList?.map((i) => i.id).sort();\n\n return _.isEqual(sourceIDForCurStep, sourceIDForDependStep);\n }\n\n /**\n * 获取依赖增量更新的内容\n * @param result\n * @param basicResultList\n * @returns\n */\n public static deltaUpdateBasicResultList(result: any, basicResultList: any[]) {\n const sourceIDForCurStep = result?.map((i: { sourceID: string }) => i.sourceID).sort();\n\n return basicResultList.filter((v) => !sourceIDForCurStep.includes(v.id));\n }\n\n /**\n *\n * @param stepResult\n * @param toolInstance\n * @param stepConfig\n * @param basicResultList 获取初始化数据 该部分默认输入需要为空数组\n * @param isInitData\n * @returns\n */\n public static getInitialResultList(\n stepResult: any[] | undefined,\n toolInstance: any,\n stepConfig: any,\n basicResultList: any[],\n isInitData: boolean,\n ) {\n const resultList = stepResult ?? [];\n\n switch (stepConfig.tool) {\n case EToolName.Tag:\n case EToolName.Text: {\n /**\n * 在依赖的情况下,检查的是否需要增量更新前面新增的结果\n */\n if (stepConfig.dataSourceStep > 0) {\n const deltaResultList = this.deltaUpdateBasicResultList(resultList, basicResultList);\n if (deltaResultList.length > 0) {\n return resultList.concat(\n toolInstance.getInitResultList(stepConfig.dataSourceStep, deltaResultList),\n );\n }\n }\n\n if (isInitData !== true) {\n return resultList;\n }\n\n return toolInstance.getInitResultList(stepConfig.dataSourceStep, basicResultList);\n }\n\n default: {\n return resultList;\n }\n }\n }\n\n /**\n * 修正数据,找到被删除的数据,并将依赖该数据的结果全部删除\n * @param newResStr 新提交的数据\n * @param oldResStr 当前的数据\n * @param step 当前操作的步骤\n * @param stepList 步骤列表\n */\n public static dataCorrection(\n newResStr: string,\n oldResStr: string,\n step: number,\n stepList: IStepInfo[],\n ) {\n try {\n const curStep = StepUtils.getStepInfo(step, stepList);\n const stepKey = `step_${curStep.step}`;\n const newRes = jsonParser(newResStr);\n const oldRes = jsonParser(oldResStr);\n const newResForCurStep = newRes[stepKey]?.result;\n const oldResForCurStep = oldRes[stepKey]?.result;\n\n /** 没有旧数据时不处理 */\n if (!oldResForCurStep) {\n return newResStr;\n }\n\n if (_.isEqual(newResForCurStep.sort(this.idCmp), oldResForCurStep.sort(this.idCmp))) {\n return newResStr;\n }\n\n const deletedIds = this.findDeletedIds(newResForCurStep, oldResForCurStep);\n\n if (deletedIds.length === 0) {\n return newResStr;\n }\n\n const dataSourceStep = step;\n const stepKeys = this.getStepKeys(newRes).sort();\n this.deleteRes(newRes, dataSourceStep, deletedIds, stepKeys);\n\n return JSON.stringify(newRes);\n } catch (error) {\n console.error(error);\n return newResStr;\n }\n }\n\n /**\n * id sort 规则\n * @param a\n * @param b\n * @returns\n */\n public static idCmp(a: any, b: any) {\n const idA = a.id;\n const idB = b.id;\n if (idA < idB) {\n return -1;\n }\n if (idA > idB) {\n return 1;\n }\n\n return 0;\n }\n\n /**\n * 找到结果被删除的id\n * @param newResForCurStep\n * @param oldResForCurStep\n * @returns {Array<string>}\n */\n public static findDeletedIds(newResForCurStep: any[], oldResForCurStep: any[]) {\n return this.findDeletedItems(oldResForCurStep, newResForCurStep).map((i) => i.id);\n }\n\n /**\n * 找到被删除的结果\n * @param oldResForCurStep\n * @param newResForCurStep\n * @returns {Array<any>}\n */\n public static findDeletedItems(oldResForCurStep: any[], newResForCurStep: any[]) {\n const deletedItems: any[] = [];\n oldResForCurStep.forEach((i: any) => {\n const isNewResExisted = newResForCurStep.some((r: any) => r.id === i.id);\n if (!isNewResExisted) {\n deletedItems.push(i);\n }\n });\n return deletedItems;\n }\n\n /**\n * 根据结果找到所有的步骤\n * @param res\n * @returns {Array<number>} 结果步骤列表\n */\n public static getStepKeys(res: any) {\n return Object.keys(res)\n .map((i) => parseInt(i.replace('step_', ''), 10))\n .filter((i) => !isNaN(i));\n }\n\n /**\n * 删除依赖数据的结果\n * @param resData 当前文件的结果\n * @param dataSourceStep 依赖步骤\n * @param deletedIds 需要删除的sourceID\n * @param stepKeys 结果的步骤\n */\n public static deleteRes(\n resData: any,\n dataSourceStep: number,\n deletedIds: string[],\n stepKeys: number[],\n ) {\n stepKeys.forEach((s) => {\n if (s > dataSourceStep) {\n const stepRes = resData[`step_${s}`];\n // 文件夹标签, 分割工具 没有依赖, 不进行判断\n if ([EToolName.FolderTag, EToolName.Segmentation].includes(stepRes.tool)) {\n return;\n }\n if (stepRes.dataSourceStep === dataSourceStep) {\n const newDeletedIds: string[] = [];\n stepRes.result = stepRes.result.filter((i: any) => {\n const exist = deletedIds.includes(i.sourceID);\n if (exist) {\n newDeletedIds.push(i.id);\n return false;\n }\n\n return true;\n });\n this.deleteRes(resData, s, newDeletedIds, stepKeys);\n } else {\n // 非直接依赖关系下,也同样过滤删除了对应框的数据(注意: 该场景不包含 filterData 过滤属性下,更改框的属性来删除对应的框体)\n stepRes.result = stepRes.result.filter((i: any) => {\n const exist = deletedIds.includes(i.sourceID);\n if (exist) {\n return false;\n }\n\n return true;\n });\n }\n }\n });\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ConfigUtils.js","sources":["../../src/utils/ConfigUtils.ts"],"sourcesContent":["import { isObject } from 'lodash';\n\nexport class ConfigUtils {\n public static jsonParser(content: any, defaultValue: any = {}) {\n try {\n if (typeof content === 'string') {\n return JSON.parse(content);\n }\n return isObject(content) ? content : defaultValue;\n } catch (e) {\n return defaultValue;\n }\n }\n\n /**\n * 获取对应的步骤配置\n * @param stepList \n * @param step \n */\n public static getStepConfig = (stepList: any[], step: number) =>\n stepList.find((i) => i.step === step);\n}\n"],"names":[],"mappings":";;AAEyB,MAAA,WAAA,CAAA;AAAA,EACT,OAAA,UAAA,CAAW,OAAc,EAAA,YAAA,GAAoB,EAAI,EAAA;AAC7D,IAAI,IAAA;AACF,MAAI,IAAA,OAAO,YAAY,QAAU,EAAA;AAC/B,QAAA,OAAO,KAAK,KAAM,CAAA,OAAA,CAAA,CAAA;AAAA,OAAA;AAEpB,MAAO,OAAA,QAAA,CAAS,WAAW,OAAU,GAAA,YAAA,CAAA;AAAA,KAAA,CAAA,OAC9B,CAAP,EAAA;AACA,MAAO,OAAA,YAAA,CAAA;AAAA,KAAA;AAAA,GAAA;AAAA,CAAA;AASG,WAjBT,CAiBS,aAAgB,GAAA,CAAC,QAAiB,EAAA,IAAA,KAC9C,SAAS,IAAK,CAAA,CAAC,CAAM,KAAA,CAAA,CAAE,IAAS,KAAA,IAAA,CAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"PageOperator.js","sources":["../../src/utils/PageOperator.ts"],"sourcesContent":["import { EPageTurningOperation } from '../data/enums/AnnotationSize';\nimport _ from 'lodash';\nimport { jsonParser } from '.';\n\ninterface IPageInfo {\n fileIndex: number;\n basicIndex: number;\n basicList: any[];\n fileList: any[];\n step: number;\n stepList: any[];\n}\n\nclass PageOperator {\n public static getPageInfo(annotationStore: any) {\n const {\n imgIndex: fileIndex,\n imgList: fileList,\n basicResultList: basicList,\n basicIndex,\n step,\n stepList,\n } = annotationStore;\n\n return {\n fileIndex,\n basicIndex,\n basicList,\n fileList,\n step,\n stepList,\n };\n }\n\n /**\n *\n * @param pageTurningOperation\n * @param nextIndex\n */\n public static getNextPageInfo(\n pageTurningOperation: EPageTurningOperation,\n annotationStore: any,\n nextIndex?: number,\n ) {\n const pageInfo: IPageInfo = PageOperator.getPageInfo(annotationStore);\n const { fileIndex: currentFileIndex } = PageOperator.getPageInfo(annotationStore);\n\n const nextFileIndex = PageOperator.getNextFileIndex(pageTurningOperation, pageInfo, nextIndex);\n const nextBasicIndex = PageOperator.getNextBasicIndex(\n pageTurningOperation,\n pageInfo.basicIndex,\n );\n const fileIndexChanged = nextFileIndex !== currentFileIndex;\n\n const hasNextBasicIndex = PageOperator.hasNextBasicIndex(pageTurningOperation, pageInfo);\n\n const pageChangedInfo = {\n fileIndex: nextFileIndex,\n basicIndex: nextBasicIndex,\n fileIndexChanged,\n basicIndexChanged: hasNextBasicIndex,\n };\n\n if (hasNextBasicIndex) {\n pageChangedInfo.fileIndexChanged = false;\n pageChangedInfo.fileIndex = currentFileIndex;\n return pageChangedInfo;\n }\n\n pageChangedInfo.basicIndex =\n pageTurningOperation === EPageTurningOperation.Backward\n ? PageOperator.getBasicResultIndexForNextFile(pageInfo, pageChangedInfo.fileIndex)\n : 0;\n\n return pageChangedInfo;\n }\n\n /**\n * 获取下一个依赖索引\n * @param pageTurningOperation\n */\n public static getNextBasicIndex = (\n pageTurningOperation: EPageTurningOperation,\n basicIndex: number,\n ) => {\n return basicIndex + (pageTurningOperation === EPageTurningOperation.Forward ? 1 : -1);\n };\n\n /**\n * 存在下一个依赖数据\n * @param pageTurningOperation\n */\n public static hasNextBasicIndex = (\n pageTurningOperation: EPageTurningOperation,\n pageInfo: IPageInfo,\n ) => {\n const { basicList } = pageInfo;\n if (basicList?.length > 0) {\n const nextBasicIndex = PageOperator.getNextBasicIndex(\n pageTurningOperation,\n pageInfo.basicIndex,\n );\n\n return nextBasicIndex >= 0 && basicList.length > nextBasicIndex;\n }\n\n return false;\n };\n\n public static getBasicResultIndexForNextFile = (pageInfo: IPageInfo, fileIndex: number) => {\n const { stepList, step, fileList } = pageInfo;\n const stepConfig = stepList.find((i) => i.step === step);\n const dataSourceStep = stepConfig?.dataSourceStep;\n\n if (dataSourceStep) {\n const fileResult = jsonParser(fileList[fileIndex].result);\n const stepResult = fileResult[`step_${dataSourceStep}`]?.result;\n\n if (!stepResult || !stepResult?.length) {\n return 0;\n }\n\n return stepResult?.length - 1;\n }\n\n return 0;\n };\n\n /**\n * 计算下一个文件的索引\n * @param pageTurningOperation\n * @param fileIndex\n */\n public static getNextFileIndex = (\n pageTurningOperation: EPageTurningOperation,\n pageInfo: IPageInfo,\n fileIndex?: number,\n ) => {\n const { fileIndex: currentFileIndex, fileList } = pageInfo;\n\n let newIndex = fileIndex !== undefined ? fileIndex : currentFileIndex;\n switch (pageTurningOperation) {\n case EPageTurningOperation.Forward:\n newIndex += 1;\n break;\n case EPageTurningOperation.Backward:\n newIndex -= 1;\n break;\n case EPageTurningOperation.Jump:\n break;\n }\n\n if (_.inRange(newIndex, 0, fileList.length)) {\n return newIndex;\n }\n\n return currentFileIndex;\n };\n}\n\nexport default PageOperator;\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"StepUtils.js","sources":["../../src/utils/StepUtils.ts"],"sourcesContent":["import { EStepType } from '@/constant';\nimport { IStepInfo } from '@/types/step';\nimport ToolUtils from './ToolUtils';\n\nexport default class StepUtils {\n /**\n * 获取当前步骤的步骤配置信息,用于当前标注配置的获取\n * @export\n * @param {number} currentStep\n * @param {IStepInfo[]} stepList\n * @returns {*}\n */\n public static getCurrentStepInfo(currentStep: number, stepList: IStepInfo[]) {\n const currentStepInfo = this.getStepInfo(currentStep, stepList);\n\n const useDataSourceStep = [EStepType.QUALITY_INSPECTION, EStepType.MANUAL_CORRECTION].includes(\n currentStepInfo?.type,\n );\n\n /** 人工修正、质检获取 dataSourceStep 作为步骤配置 */\n if (useDataSourceStep) {\n return this.getStepInfo(currentStepInfo.dataSourceStep, stepList);\n }\n\n return currentStepInfo;\n }\n\n /**\n * 找到指定步骤的数据\n * @param step 获取的步骤\n * @param stepList 步骤列表\n * @returns 步骤配置\n */\n public static getStepInfo(step: number, stepList: IStepInfo[]) {\n return stepList?.filter((info) => info.step === step)[0];\n }\n\n /**\n * 根据toolName判断当前步骤是否为视频工具\n * @param step 步骤\n * @param stepList 步骤列表\n * @returns {Number} 是否为视频工具\n */\n public static currentToolIsVideo(step: number, stepList: IStepInfo[]) {\n const currentStepInfo = StepUtils.getCurrentStepInfo(step, stepList);\n return ToolUtils.isVideoTool(currentStepInfo?.tool);\n }\n\n\n /**\n * Check for PointCloud\n * @param step \n * @param stepList \n * @returns \n */\n public static currentToolIsPointCloud(step: number, stepList: IStepInfo[]) {\n const currentStepInfo = StepUtils.getCurrentStepInfo(step, stepList);\n return ToolUtils.isPointCloudTool(currentStepInfo?.tool);\n }\n}\n"],"names":[],"mappings":";;;AAI+B,MAAA,SAAA,CAAA;AAAA,EAQf,OAAA,kBAAA,CAAmB,aAAqB,QAAuB,EAAA;AAC3E,IAAM,MAAA,eAAA,GAAkB,IAAK,CAAA,WAAA,CAAY,WAAa,EAAA,QAAA,CAAA,CAAA;AAEtD,IAAA,MAAM,oBAAoB,CAAC,SAAA,CAAU,oBAAoB,SAAU,CAAA,iBAAA,CAAA,CAAmB,SACpF,eAAiB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAA,IAAA,CAAA,CAAA;AAInB,IAAA,IAAI,iBAAmB,EAAA;AACrB,MAAO,OAAA,IAAA,CAAK,WAAY,CAAA,eAAA,CAAgB,cAAgB,EAAA,QAAA,CAAA,CAAA;AAAA,KAAA;AAG1D,IAAO,OAAA,eAAA,CAAA;AAAA,GAAA;AAAA,EASK,OAAA,WAAA,CAAY,MAAc,QAAuB,EAAA;AAC7D,IAAA,OAAO,qCAAU,MAAO,CAAA,CAAC,IAAS,KAAA,IAAA,CAAK,SAAS,IAAM,CAAA,CAAA,CAAA,CAAA,CAAA;AAAA,GAAA;AAAA,EAS1C,OAAA,kBAAA,CAAmB,MAAc,QAAuB,EAAA;AACpE,IAAM,MAAA,eAAA,GAAkB,SAAU,CAAA,kBAAA,CAAmB,IAAM,EAAA,QAAA,CAAA,CAAA;AAC3D,IAAO,OAAA,SAAA,CAAU,YAAY,eAAiB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAA,IAAA,CAAA,CAAA;AAAA,GAAA;AAAA,EAUlC,OAAA,uBAAA,CAAwB,MAAc,QAAuB,EAAA;AACzE,IAAM,MAAA,eAAA,GAAkB,SAAU,CAAA,kBAAA,CAAmB,IAAM,EAAA,QAAA,CAAA,CAAA;AAC3D,IAAO,OAAA,SAAA,CAAU,iBAAiB,eAAiB,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,eAAA,CAAA,IAAA,CAAA,CAAA;AAAA,GAAA;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"TextUtils.js","sources":["../../src/utils/TextUtils.ts"],"sourcesContent":["/*\n * @Author: Laoluo luozefeng@sensetime.com\n * @Date: 2022-01-12 13:15:33\n * @LastEditors: Laoluo luozefeng@sensetime.com\n * @LastEditTime: 2022-05-30 15:51:43\n */\nimport { ETextType } from '@/data/enums/ToolType';\nimport { i18n } from '@labelbee/lb-utils';\n\nexport const REGEXP_NUMBER = '^[0-9]+$';\nexport const REGEXP_ENGLISH = '^[A-Za-z]+$';\n\nexport class TextUtils {\n public static checkString(textCheckType: ETextType, customFormat: string) {\n let regExpString = '';\n switch (textCheckType) {\n case ETextType.Order:\n case ETextType.NumberOnly:\n regExpString = REGEXP_NUMBER;\n break;\n case ETextType.EnglishOnly:\n regExpString = REGEXP_ENGLISH;\n break;\n case ETextType.CustomFormat:\n regExpString = customFormat;\n break;\n }\n return regExpString;\n }\n\n public static getErrorNotice(textCheckType: ETextType) {\n switch (textCheckType) {\n case ETextType.Order:\n case ETextType.NumberOnly:\n return i18n.t(\"TextCheckNumberOnly\");\n case ETextType.EnglishOnly:\n return i18n.t(\"TextCheckEnglishOnly\");\n case ETextType.CustomFormat:\n return i18n.t(\"TextCheckCustomFormat\");\n default:\n return '';\n }\n }\n}\n"],"names":[],"mappings":";;;AASO,MAAM,aAAgB,GAAA,WAAA;AACtB,MAAM,cAAiB,GAAA,cAAA;AAEP,MAAA,SAAA,CAAA;AAAA,EACP,OAAA,WAAA,CAAY,eAA0B,YAAsB,EAAA;AACxE,IAAA,IAAI,YAAe,GAAA,EAAA,CAAA;AACnB,IAAQ,QAAA,aAAA;AAAA,MAAA,KACD,SAAU,CAAA,KAAA,CAAA;AAAA,MAAA,KACV,SAAU,CAAA,UAAA;AACb,QAAe,YAAA,GAAA,aAAA,CAAA;AACf,QAAA,MAAA;AAAA,MAAA,KACG,SAAU,CAAA,WAAA;AACb,QAAe,YAAA,GAAA,cAAA,CAAA;AACf,QAAA,MAAA;AAAA,MAAA,KACG,SAAU,CAAA,YAAA;AACb,QAAe,YAAA,GAAA,YAAA,CAAA;AACf,QAAA,MAAA;AAAA,KAAA;AAEJ,IAAO,OAAA,YAAA,CAAA;AAAA,GAAA;AAAA,EAAA,OAGK,eAAe,aAA0B,EAAA;AACrD,IAAQ,QAAA,aAAA;AAAA,MAAA,KACD,SAAU,CAAA,KAAA,CAAA;AAAA,MAAA,KACV,SAAU,CAAA,UAAA;AACb,QAAA,OAAO,KAAK,CAAE,CAAA,qBAAA,CAAA,CAAA;AAAA,MAAA,KACX,SAAU,CAAA,WAAA;AACb,QAAA,OAAO,KAAK,CAAE,CAAA,sBAAA,CAAA,CAAA;AAAA,MAAA,KACX,SAAU,CAAA,YAAA;AACb,QAAA,OAAO,KAAK,CAAE,CAAA,uBAAA,CAAA,CAAA;AAAA,MAAA;AAEd,QAAO,OAAA,EAAA,CAAA;AAAA,KAAA;AAAA,GAAA;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ToolStyleUtils.js","sources":["../../src/utils/ToolStyleUtils.ts"],"sourcesContent":["import {\n CHANGE_COLOR,\n DEFAULT_COLOR,\n COLORS_ARRAY,\n NULL_COLOR,\n BORDER_OPACITY_LEVEL,\n FILL_OPACITY_LEVEL,\n} from '@/data/Style';\nimport _ from 'lodash';\n\nconst FILL_OPACITY = 0.8;\n\nexport class ToolStyleUtils {\n public static changeOpacity: { [a: number]: number } = {\n 1: 0.2,\n 3: 0.4,\n 5: 0.6,\n 7: 0.8,\n 9: 1.0,\n };\n\n public static colorSplit(color: string, opacity: number) {\n return color\n .split(' ')\n .join('')\n .replace(/,[0-9]+([.]{1}[0-9]+){0,1}\\)/, `,${opacity.toFixed(2)})`);\n }\n\n public static computeOpacity(opacity: number, color: string) {\n const s =\n color\n .split(' ')\n .join('')\n .match(/,[0-9]+([.]{1}[0-9]+){0,1}\\)/)?.[0] || '';\n let firstOpacity = s.match(/[0-9]+([.]{1}[0-9]+){0,1}/)?.[0];\n return opacity * Number(firstOpacity);\n }\n\n public static getToolColors(borderOpacityParam = 9, fillOpacityParam = 9) {\n const colorSplit = ToolStyleUtils.colorSplit;\n const computeOpacity = ToolStyleUtils.computeOpacity;\n\n const toolColor = _.cloneDeep(CHANGE_COLOR);\n const borderOpacity = BORDER_OPACITY_LEVEL[borderOpacityParam];\n const fillOpacity = FILL_OPACITY_LEVEL[fillOpacityParam];\n\n Object.keys(CHANGE_COLOR).forEach((color: any) => {\n const showColor = _.cloneDeep(DEFAULT_COLOR);\n showColor.valid.stroke = colorSplit(\n CHANGE_COLOR[color].valid,\n computeOpacity(borderOpacity, CHANGE_COLOR[color].valid),\n );\n showColor.valid.fill = colorSplit(\n CHANGE_COLOR[color].valid,\n computeOpacity(fillOpacity, CHANGE_COLOR[color].valid) * FILL_OPACITY,\n );\n showColor.validSelected.stroke = colorSplit(\n CHANGE_COLOR[color].select.stroke,\n computeOpacity(borderOpacity, CHANGE_COLOR[color].select.stroke),\n );\n showColor.validSelected.fill = colorSplit(\n CHANGE_COLOR[color].select.fill,\n computeOpacity(fillOpacity, CHANGE_COLOR[color].select.fill) * FILL_OPACITY,\n );\n showColor.validHover.stroke = colorSplit(\n CHANGE_COLOR[color].hover,\n computeOpacity(borderOpacity, CHANGE_COLOR[color].hover),\n );\n showColor.validHover.fill = colorSplit(\n CHANGE_COLOR[color].hover,\n computeOpacity(fillOpacity, CHANGE_COLOR[color].hover) * FILL_OPACITY,\n );\n\n // 无效的比例是一样的\n showColor.invalid.stroke = colorSplit(\n showColor.invalid.stroke,\n computeOpacity(borderOpacity, showColor.invalid.stroke),\n );\n showColor.invalid.fill = colorSplit(\n showColor.invalid.stroke,\n computeOpacity(fillOpacity, showColor.invalid.stroke) * FILL_OPACITY,\n );\n showColor.invalidSelected.stroke = colorSplit(\n showColor.invalidSelected.stroke,\n computeOpacity(borderOpacity, showColor.invalidSelected.stroke),\n );\n showColor.invalidSelected.fill = colorSplit(\n showColor.invalidSelected.fill,\n computeOpacity(fillOpacity, showColor.invalidSelected.fill) * FILL_OPACITY,\n );\n showColor.invalidHover.stroke = colorSplit(\n showColor.invalidHover.stroke,\n computeOpacity(borderOpacity, showColor.invalidHover.fill),\n );\n showColor.invalidHover.fill = colorSplit(\n showColor.invalidHover.fill,\n computeOpacity(fillOpacity, showColor.invalidHover.fill) * FILL_OPACITY,\n );\n toolColor[color] = showColor;\n });\n return toolColor;\n }\n\n public static getAttributeColors(borderOpacityParam = 9, fillOpacityParam = 9) {\n const colorSplit = ToolStyleUtils.colorSplit;\n const computeOpacity = ToolStyleUtils.computeOpacity;\n const borderOpacity = BORDER_OPACITY_LEVEL[borderOpacityParam];\n const fillOpacity = FILL_OPACITY_LEVEL[fillOpacityParam];\n\n let AttributeColorList: string[] = _.cloneDeep(COLORS_ARRAY);\n AttributeColorList.unshift(NULL_COLOR);\n AttributeColorList = AttributeColorList.map((item) => {\n const showColor = JSON.parse(JSON.stringify(DEFAULT_COLOR));\n showColor.valid.stroke = colorSplit(item, computeOpacity(borderOpacity, item));\n showColor.valid.fill = colorSplit(\n item,\n computeOpacity(fillOpacity, item) * FILL_OPACITY * 0.5,\n );\n showColor.validSelected.stroke = colorSplit(item, computeOpacity(borderOpacity, item));\n showColor.validSelected.fill = colorSplit(\n item,\n computeOpacity(fillOpacity, item) * FILL_OPACITY,\n );\n showColor.validHover.stroke = colorSplit(item, computeOpacity(borderOpacity, item));\n showColor.validHover.fill = colorSplit(\n item,\n computeOpacity(fillOpacity, item) * FILL_OPACITY,\n );\n showColor.invalid.stroke = colorSplit(\n showColor.invalid.stroke,\n computeOpacity(borderOpacity, item),\n );\n showColor.invalid.fill = colorSplit(\n showColor.invalid.fill,\n computeOpacity(fillOpacity, item) * FILL_OPACITY * 0.5,\n );\n showColor.invalidSelected.stroke = colorSplit(\n showColor.invalidSelected.stroke,\n computeOpacity(borderOpacity, item),\n );\n showColor.invalidSelected.fill = colorSplit(\n showColor.invalidSelected.fill,\n computeOpacity(fillOpacity, item) * FILL_OPACITY,\n );\n showColor.invalidHover.stroke = colorSplit(\n showColor.invalidHover.stroke,\n computeOpacity(borderOpacity, item),\n );\n showColor.invalidHover.fill = colorSplit(\n showColor.invalidHover.fill,\n computeOpacity(fillOpacity, item) * FILL_OPACITY,\n );\n return showColor;\n });\n return AttributeColorList;\n }\n\n public static getDefaultToolLineColors() {\n const toolColor: any = {};\n Object.keys(CHANGE_COLOR).forEach((color: any) => {\n toolColor[color] = CHANGE_COLOR[color].line;\n });\n return toolColor;\n }\n\n public static initByOpacity(borderOpacity: number, fillOpacity: number) {\n return {\n toolColor: this.getToolColors(borderOpacity, fillOpacity),\n attributeColor: this.getAttributeColors(borderOpacity, fillOpacity),\n };\n }\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ToolUtils.js","sources":["../../src/utils/ToolUtils.ts"],"sourcesContent":["/**\n * @author Glenfiddish <edwinlee0927@hotmail.com>\n * @file Tool utils\n * @date 2022-06-20\n */\n\nimport { cTool } from '@labelbee/lb-annotation';\nconst { EVideoToolName, EPointCloudName } = cTool;\n\nclass ToolUtils {\n public static isVideoTool(tool?: string) {\n return tool ? (Object.values(EVideoToolName) as string[]).includes(tool) : false;\n }\n\n public static isPointCloudTool(tool?: string) {\n return tool ? (Object.values(EPointCloudName) as string[]).includes(tool) : false;\n }\n}\n\nexport default ToolUtils;\n"],"names":[],"mappings":";;AAOA,MAAM,CAAE,gBAAgB,eAAoB,CAAA,GAAA,KAAA,CAAA;AAE5C,MAAgB,SAAA,CAAA;AAAA,EAAA,OACA,YAAY,IAAe,EAAA;AACvC,IAAA,OAAO,IAAQ,GAAA,MAAA,CAAO,MAAO,CAAA,cAAA,CAAA,CAA6B,SAAS,IAAQ,CAAA,GAAA,KAAA,CAAA;AAAA,GAAA;AAAA,EAAA,OAG/D,iBAAiB,IAAe,EAAA;AAC5C,IAAA,OAAO,IAAQ,GAAA,MAAA,CAAO,MAAO,CAAA,eAAA,CAAA,CAA8B,SAAS,IAAQ,CAAA,GAAA,KAAA,CAAA;AAAA,GAAA;AAAA;;;;"}
|
package/es/utils/data.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"data.js","sources":["../../src/utils/data.ts"],"sourcesContent":["import { jsonParser } from '.';\nimport StepUtils from './StepUtils';\n\n/**\n * 解析结果,将图片信息注入到结果\n * @param result\n * @param basicImgInfo\n */\nexport const composeResultWithBasicImgInfo = (\n result: string,\n basicImgInfo: { [a: string]: any },\n) => {\n const newResult = JSON.stringify({ ...jsonParser(result), ...basicImgInfo });\n return newResult;\n};\n\n// 处理result\nexport const composeResult = (\n result: string,\n pos: {\n step: number;\n stepList: any[];\n },\n newData: {\n rect: any[];\n basicRectID?: string;\n },\n customObject: Object,\n) => {\n const { step, stepList } = pos;\n const { rect, basicRectID } = newData;\n\n try {\n const data = jsonParser(result);\n const currentStepInfo = StepUtils.getCurrentStepInfo(step, stepList);\n const { dataSourceStep } = currentStepInfo;\n\n const stepName = `step_${currentStepInfo.step}`;\n\n if (data[stepName]) {\n const info = data[stepName];\n Object.assign(info, customObject);\n\n if (info.result) {\n if (JSON.stringify(info.result) === JSON.stringify(rect)) {\n return JSON.stringify(data);\n }\n if (basicRectID) {\n info.result = [\n ...info.result.filter(\n (v: { sourceID: string }) => !(v.sourceID && v.sourceID === basicRectID),\n ),\n ...rect.filter((v) => v.sourceID && v.sourceID === basicRectID),\n ];\n } else {\n info.result = rect;\n }\n return JSON.stringify(data);\n }\n return JSON.stringify({\n ...data,\n [stepName]: {\n ...data[stepName],\n ...customObject,\n result: rect,\n },\n });\n }\n // 初始化结果\n return JSON.stringify({\n ...data,\n [stepName]: {\n dataSourceStep,\n ...customObject,\n toolName: stepList[step - 1].tool,\n result: rect,\n },\n });\n } catch (e) {\n return result;\n }\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAQa,MAAA,6BAAA,GAAgC,CAC3C,MAAA,EACA,YACG,KAAA;AACH,EAAA,MAAM,SAAY,GAAA,IAAA,CAAK,SAAU,CAAA,cAAA,CAAA,cAAA,CAAA,EAAA,EAAK,WAAW,MAAY,CAAA,CAAA,EAAA,YAAA,CAAA,CAAA,CAAA;AAC7D,EAAO,OAAA,SAAA,CAAA;AAAA,EAAA;AAIF,MAAM,aAAgB,GAAA,CAC3B,MACA,EAAA,GAAA,EAIA,SAIA,YACG,KAAA;AACH,EAAM,MAAA,CAAE,MAAM,QAAa,CAAA,GAAA,GAAA,CAAA;AAC3B,EAAM,MAAA,CAAE,MAAM,WAAgB,CAAA,GAAA,OAAA,CAAA;AAE9B,EAAI,IAAA;AACF,IAAA,MAAM,OAAO,UAAW,CAAA,MAAA,CAAA,CAAA;AACxB,IAAM,MAAA,eAAA,GAAkB,SAAU,CAAA,kBAAA,CAAmB,IAAM,EAAA,QAAA,CAAA,CAAA;AAC3D,IAAA,MAAM,CAAE,cAAmB,CAAA,GAAA,eAAA,CAAA;AAE3B,IAAM,MAAA,QAAA,GAAW,QAAQ,eAAgB,CAAA,IAAA,CAAA,CAAA,CAAA;AAEzC,IAAA,IAAI,KAAK,QAAW,CAAA,EAAA;AAClB,MAAA,MAAM,OAAO,IAAK,CAAA,QAAA,CAAA,CAAA;AAClB,MAAA,MAAA,CAAO,OAAO,IAAM,EAAA,YAAA,CAAA,CAAA;AAEpB,MAAA,IAAI,KAAK,MAAQ,EAAA;AACf,QAAA,IAAI,KAAK,SAAU,CAAA,IAAA,CAAK,MAAY,CAAA,KAAA,IAAA,CAAK,UAAU,IAAO,CAAA,EAAA;AACxD,UAAA,OAAO,KAAK,SAAU,CAAA,IAAA,CAAA,CAAA;AAAA,SAAA;AAExB,QAAA,IAAI,WAAa,EAAA;AACf,UAAA,IAAA,CAAK,MAAS,GAAA;AAAA,YACZ,GAAG,IAAK,CAAA,MAAA,CAAO,MACb,CAAA,CAAC,MAA4B,EAAE,CAAA,CAAE,QAAY,IAAA,CAAA,CAAE,QAAa,KAAA,WAAA,CAAA,CAAA;AAAA,YAE9D,GAAG,KAAK,MAAO,CAAA,CAAC,MAAM,CAAE,CAAA,QAAA,IAAY,EAAE,QAAa,KAAA,WAAA,CAAA;AAAA,WAAA,CAAA;AAAA,SAEhD,MAAA;AACL,UAAA,IAAA,CAAK,MAAS,GAAA,IAAA,CAAA;AAAA,SAAA;AAEhB,QAAA,OAAO,KAAK,SAAU,CAAA,IAAA,CAAA,CAAA;AAAA,OAAA;AAExB,MAAO,OAAA,IAAA,CAAK,SAAU,CAAA,aAAA,CAAA,cAAA,CAAA,EAAA,EACjB,IADiB,CAAA,EAAA;AAAA,QAAA,CAEnB,QAAW,GAAA,aAAA,CAAA,cAAA,CAAA,cAAA,CAAA,EAAA,EACP,IAAK,CAAA,QAAA,CAAA,CAAA,EACL,YAFO,CAAA,EAAA;AAAA,UAGV,MAAQ,EAAA,IAAA;AAAA,SAAA,CAAA;AAAA,OAAA,CAAA,CAAA,CAAA;AAAA,KAAA;AAKd,IAAO,OAAA,IAAA,CAAK,SAAU,CAAA,aAAA,CAAA,cAAA,CAAA,EAAA,EACjB,IADiB,CAAA,EAAA;AAAA,MAAA,CAEnB,QAAW,GAAA,aAAA,CAAA,cAAA,CAAA;AAAA,QACV,cAAA;AAAA,OAAA,EACG,YAFO,CAAA,EAAA;AAAA,QAGV,QAAA,EAAU,QAAS,CAAA,IAAA,GAAO,CAAG,CAAA,CAAA,IAAA;AAAA,QAC7B,MAAQ,EAAA,IAAA;AAAA,OAAA,CAAA;AAAA,KAAA,CAAA,CAAA,CAAA;AAAA,GAAA,CAAA,OAGL,CAAP,EAAA;AACA,IAAO,OAAA,MAAA,CAAA;AAAA,GAAA;AAAA;;;;"}
|
package/es/utils/dom.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dom.js","sources":["../../src/utils/dom.ts"],"sourcesContent":["import { MutableRefObject } from 'react';\nimport { prefix } from '@/constant';\n\nexport type BasicTarget<T = HTMLElement> =\n | (() => T | null)\n | T\n | null\n | MutableRefObject<T | null | undefined>;\n\ntype TargetElement = HTMLElement | Element | Document | Window;\n\nexport function getTargetElement(\n target?: BasicTarget<TargetElement>,\n defaultElement?: TargetElement,\n): TargetElement | undefined | null {\n if (!target) {\n return defaultElement;\n }\n\n let targetElement: TargetElement | undefined | null;\n\n if (typeof target === 'function') {\n // TODO. Maybe the new version of typescript is not allowed.\n // @ts-ignore\n targetElement = target();\n } else if ('current' in target) {\n targetElement = target.current;\n } else {\n targetElement = target;\n }\n\n return targetElement;\n}\n\n/**\n * Get class like BEM\n * @param elm\n * @param modify\n */\nexport const getClassName = (block: string, elm?: string, modify?: string) =>\n `${prefix}-${block}${elm ? '__' + elm : ''}${modify ? '__' + modify : ''}`;\n"],"names":[],"mappings":";;AAWO,SAAA,gBAAA,CACL,QACA,cACkC,EAAA;AAClC,EAAA,IAAI,CAAC,MAAQ,EAAA;AACX,IAAO,OAAA,cAAA,CAAA;AAAA,GAAA;AAGT,EAAI,IAAA,aAAA,CAAA;AAEJ,EAAI,IAAA,OAAO,WAAW,UAAY,EAAA;AAGhC,IAAgB,aAAA,GAAA,MAAA,EAAA,CAAA;AAAA,GAAA,MAAA,IACP,aAAa,MAAQ,EAAA;AAC9B,IAAA,aAAA,GAAgB,MAAO,CAAA,OAAA,CAAA;AAAA,GAClB,MAAA;AACL,IAAgB,aAAA,GAAA,MAAA,CAAA;AAAA,GAAA;AAGlB,EAAO,OAAA,aAAA,CAAA;AAAA,CAAA;AAQF,MAAM,YAAe,GAAA,CAAC,KAAe,EAAA,GAAA,EAAc,WACxD,CAAG,EAAA,MAAA,CAAA,CAAA,EAAU,KAAQ,CAAA,EAAA,GAAA,GAAM,IAAO,GAAA,GAAA,GAAM,EAAK,CAAA,EAAA,MAAA,GAAS,OAAO,MAAS,GAAA,EAAA,CAAA;;;;"}
|
package/es/utils/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../src/utils/index.ts"],"sourcesContent":["import _ from 'lodash';\n\nexport const jsonParser = (content: any, defaultValue: any = {}) => {\n try {\n if (typeof content === 'string') {\n return JSON.parse(content);\n }\n return _.isObject(content) ? content : defaultValue;\n } catch (e) {\n return defaultValue;\n }\n};\n\nexport const getNewNode = <T>(newNode: T, oldNode: T): T => {\n return newNode || _.isNull(newNode) ? newNode : oldNode;\n};\n\nexport const classnames = (className: { [key: string]: boolean } | (string | undefined)[]) => {\n if (Array.isArray(className)) {\n return className.filter((i) => i).join(' ');\n }\n\n if (_.isObject(className)) {\n const classArray: string[] = [];\n Object.keys(className).forEach((key) => {\n if (className[key]) {\n classArray.push(key);\n }\n });\n\n return classArray.join(' ');\n }\n\n return '';\n};\n"],"names":[],"mappings":";;AAEO,MAAM,UAAa,GAAA,CAAC,OAAc,EAAA,YAAA,GAAoB,EAAO,KAAA;AAClE,EAAI,IAAA;AACF,IAAI,IAAA,OAAO,YAAY,QAAU,EAAA;AAC/B,MAAA,OAAO,KAAK,KAAM,CAAA,OAAA,CAAA,CAAA;AAAA,KAAA;AAEpB,IAAO,OAAA,CAAA,CAAE,QAAS,CAAA,OAAA,CAAA,GAAW,OAAU,GAAA,YAAA,CAAA;AAAA,GAAA,CAAA,OAChC,CAAP,EAAA;AACA,IAAO,OAAA,YAAA,CAAA;AAAA,GAAA;AAAA,EAAA;AAQE,MAAA,UAAA,GAAa,CAAC,SAAmE,KAAA;AAC5F,EAAI,IAAA,KAAA,CAAM,QAAQ,SAAY,CAAA,EAAA;AAC5B,IAAA,OAAO,SAAU,CAAA,MAAA,CAAO,CAAC,CAAA,KAAM,GAAG,IAAK,CAAA,GAAA,CAAA,CAAA;AAAA,GAAA;AAGzC,EAAI,IAAA,CAAA,CAAE,SAAS,SAAY,CAAA,EAAA;AACzB,IAAA,MAAM,UAAuB,GAAA,EAAA,CAAA;AAC7B,IAAA,MAAA,CAAO,IAAK,CAAA,SAAA,CAAA,CAAW,OAAQ,CAAA,CAAC,GAAQ,KAAA;AACtC,MAAA,IAAI,UAAU,GAAM,CAAA,EAAA;AAClB,QAAA,UAAA,CAAW,IAAK,CAAA,GAAA,CAAA,CAAA;AAAA,OAAA;AAAA,KAAA,CAAA,CAAA;AAIpB,IAAA,OAAO,WAAW,IAAK,CAAA,GAAA,CAAA,CAAA;AAAA,GAAA;AAGzB,EAAO,OAAA,EAAA,CAAA;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/views/MainView/annotationOperation/index.tsx"],"sourcesContent":["import { store } from '@/index';\nimport { LabelBeeContext } from '@/store/ctx';\nimport { message } from 'antd/es';\nimport _ from 'lodash';\nimport React, { useEffect, useRef, useState } from 'react';\nimport { connect } from 'react-redux';\nimport { AppState } from 'src/store';\nimport { ImgAttributeState } from 'src/store/imgAttribute/types';\n\nimport { AppProps } from '@/App';\nimport FileError from '@/components/fileException/FileError';\nimport useSize from '@/hooks/useSize';\nimport { InitToolStyleConfig } from '@/store/toolStyle/actionCreators';\nimport { AnnotationEngine, ImgUtils } from '@labelbee/lb-annotation';\nimport { i18n } from '@labelbee/lb-utils';\nimport { IStepInfo } from '@/types/step';\nimport StepUtils from '@/utils/StepUtils';\n\ninterface IProps extends AppState, AppProps {\n imgAttribute: ImgAttributeState;\n imgIndex: number;\n annotationEngine: AnnotationEngine;\n loading: boolean;\n stepList: IStepInfo[];\n step: number;\n}\n\nconst AnnotationOperation: React.FC<IProps> = (props: IProps) => {\n const [, forceRender] = useState<number>(0);\n\n const {\n imgAttribute,\n toolStyle,\n toolInstance,\n annotationEngine,\n imgList,\n imgIndex,\n dataInjectionAtCreation,\n renderEnhance,\n customRenderStyle,\n stepList,\n step,\n drawLayerSlot,\n } = props;\n const [annotationPos, setAnnotationPos] = useState({ zoom: 1, currentPos: { x: 0, y: 0 } });\n const annotationRef = useRef<HTMLDivElement>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n const size = useSize(annotationRef);\n\n useEffect(() => {\n store.dispatch(InitToolStyleConfig());\n }, []);\n\n useEffect(() => {\n if (!annotationEngine) {\n return;\n }\n\n // 更改 toolInstance 内部国际化语言\n switch (i18n.language) {\n case 'cn':\n case 'en':\n annotationEngine.setLang(i18n.language);\n break;\n default: {\n //\n break;\n }\n }\n annotationEngine?.setDataInjectionAtCreation(dataInjectionAtCreation);\n annotationEngine?.setRenderEnhance(renderEnhance);\n if (customRenderStyle) {\n annotationEngine?.setCustomRenderStyle(customRenderStyle);\n }\n }, [annotationEngine, dataInjectionAtCreation, renderEnhance, customRenderStyle]);\n\n useEffect(() => {\n const renderZoom = (zoom: number, currentPos: { x: number; y: number }) => {\n setAnnotationPos({ zoom, currentPos });\n };\n\n const dragMove = (props: { currentPos: { x: number; y: number }; zoom: number }) => {\n setAnnotationPos(props);\n };\n\n if (toolInstance) {\n toolInstance.singleOn('messageError', (error: string) => {\n message.error(error);\n });\n\n toolInstance.singleOn('messageInfo', (info: string) => {\n message.info(info);\n });\n\n toolInstance.singleOn('changeAnnotationShow', () => {\n forceRender((s) => s + 1);\n });\n\n toolInstance.on('renderZoom', renderZoom);\n toolInstance.on('dragMove', dragMove);\n }\n\n return () => {\n if (toolInstance) {\n toolInstance.unbind('renderZoom', renderZoom);\n toolInstance.unbind('dragMove', dragMove);\n }\n };\n }, [toolInstance]);\n\n useEffect(() => {\n if (annotationEngine?.setImgAttribute) {\n annotationEngine.setImgAttribute(imgAttribute);\n } else {\n // Old version.\n toolInstance?.setImgAttribute?.(imgAttribute);\n }\n }, [imgAttribute, annotationEngine]);\n\n /** 样式同步 */\n useEffect(() => {\n if (toolInstance) {\n toolInstance.setStyle(toolStyle);\n }\n if (annotationEngine) {\n annotationEngine.setStyle(toolStyle);\n }\n }, [toolStyle]);\n\n /** 窗口大小监听 */\n useEffect(() => {\n if (toolInstance?.setSize) {\n toolInstance.setSize(size);\n }\n\n if (annotationEngine) {\n annotationEngine.setSize(size);\n }\n }, [size]);\n\n useEffect(() => {\n // Update StepList When it update by outside\n const currentStepInfo = StepUtils.getCurrentStepInfo(step, stepList);\n toolInstance?.setConfig(currentStepInfo.config);\n }, [stepList]);\n\n /**\n * 重新加载图片,避免网络问题导致的图片无法加载\n * @returns\n */\n const reloadImg = () => {\n const imgInfo = imgList?.[imgIndex];\n if (!imgInfo?.url) {\n return;\n }\n\n ImgUtils.load(imgInfo.url).then((imgNode) => {\n annotationEngine.setImgNode(imgNode as HTMLImageElement);\n });\n };\n\n return (\n <div ref={annotationRef} className='annotationOperation'>\n <div className='canvas' ref={containerRef} style={size} id='toolContainer'>\n {drawLayerSlot?.(annotationPos)}\n </div>\n {toolInstance?.isImgError === true && (\n <FileError\n {...size}\n reloadImage={reloadImg}\n backgroundColor='#e2e2e2'\n ignoreOffsetY={true}\n />\n )}\n </div>\n );\n};\n\nconst mapStateToProps = (state: AppState) => {\n const annotationState = _.pickBy(state.annotation, (v, k) =>\n [\n 'imgList',\n 'imgIndex',\n 'stepList',\n 'step',\n 'toolInstance',\n 'annotationEngine',\n 'loading',\n ].includes(k),\n );\n return {\n imgAttribute: state.imgAttribute,\n toolStyle: state.toolStyle,\n ...annotationState,\n };\n};\n\nexport default connect(mapStateToProps, null, null, { context: LabelBeeContext })(\n AnnotationOperation,\n);\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/views/MainView/annotationTips/index.tsx"],"sourcesContent":["/*\n * Annotation Tips Showing\n * @Author: Laoluo luozefeng@sensetime.com\n * @Date: 2022-05-11 17:15:30\n * @LastEditors: Laoluo luozefeng@sensetime.com\n * @LastEditTime: 2022-05-12 19:34:32\n */\nimport React from 'react';\nimport { Tooltip } from 'antd';\nimport { prefix } from '@/constant';\n\ninterface IProps {\n tips?: string;\n path?: string;\n}\n\nconst AnnotationTips = ({ path, tips }: IProps) => {\n if (!path && !tips) {\n return null;\n }\n\n return (\n <div className={`${prefix}-tips`}>\n <Tooltip placement='bottomRight' title={tips}>\n <span className={`${prefix}-tips__leftContent`} title={tips}>\n {tips}\n </span>\n </Tooltip>\n <Tooltip placement='bottomRight' title={path}>\n <span className={`${prefix}-tips__path`}>{path}</span>\n </Tooltip>\n </div>\n );\n};\n\nexport default AnnotationTips;\n"],"names":[],"mappings":";;;;AAgBA,MAAM,cAAiB,GAAA,CAAC,CAAE,IAAA,EAAM,IAAmB,CAAA,KAAA;AACjD,EAAI,IAAA,CAAC,IAAQ,IAAA,CAAC,IAAM,EAAA;AAClB,IAAO,OAAA,IAAA,CAAA;AAAA,GAAA;AAGT,EAAA,2CACG,KAAD,EAAA;AAAA,IAAK,WAAW,CAAG,EAAA,MAAA,CAAA,KAAA,CAAA;AAAA,GAAA,sCAChB,OAAD,EAAA;AAAA,IAAS,SAAU,EAAA,aAAA;AAAA,IAAc,KAAO,EAAA,IAAA;AAAA,GAAA,sCACrC,MAAD,EAAA;AAAA,IAAM,WAAW,CAAG,EAAA,MAAA,CAAA,kBAAA,CAAA;AAAA,IAA4B,KAAO,EAAA,IAAA;AAAA,GACpD,EAAA,IAAA,CAAA,CAAA,sCAGJ,OAAD,EAAA;AAAA,IAAS,SAAU,EAAA,aAAA;AAAA,IAAc,KAAO,EAAA,IAAA;AAAA,GAAA,sCACrC,MAAD,EAAA;AAAA,IAAM,WAAW,CAAG,EAAA,MAAA,CAAA,WAAA,CAAA;AAAA,GAAsB,EAAA,IAAA,CAAA,CAAA,CAAA,CAAA;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/views/MainView/index.tsx"],"sourcesContent":["import { AppProps } from '@/App';\nimport { ViewportProvider } from '@/components/customResizeHook';\nimport { prefix } from '@/constant';\nimport { Spin } from 'antd';\nimport { Layout } from 'antd/es';\nimport _ from 'lodash';\nimport React from 'react';\nimport AnnotationOperation from './annotationOperation';\nimport AnnotationTips from './annotationTips';\nimport Sidebar from './sidebar';\nimport ToolFooter from './toolFooter';\nimport ToolHeader from './toolHeader';\nimport { getStepConfig } from '@/store/annotation/reducer';\n\nimport VideoAnnotate from '@/components/videoAnnotate';\nimport { AppState } from '@/store';\nimport { connect } from 'react-redux';\nimport ToolUtils from '@/utils/ToolUtils';\nimport PointCloudView from '@/components/pointCloudView';\nimport { getClassName } from '@/utils/dom';\nimport { classnames } from '@/utils';\nimport { LabelBeeContext } from '@/store/ctx';\n\ninterface IProps {\n path: string;\n loading: boolean;\n}\n\nconst { Sider, Content } = Layout;\n\nconst layoutCls = `${prefix}-layout`;\n\nconst ImageAnnotate: React.FC<AppProps & IProps> = (props) => {\n return (\n <>\n {props.showTips === true && <AnnotationTips path={props.path} tips={props.tips} />}\n <AnnotationOperation {...props} />\n <ToolFooter style={props.style?.footer} mode={props.mode} footer={props?.footer} />\n </>\n );\n};\n\nconst PointCloudAnnotate: React.FC<AppProps & IProps> = (props) => {\n return (\n <>\n <PointCloudView drawLayerSlot={props.drawLayerSlot} checkMode={props.checkMode}/>\n <ToolFooter style={props.style?.footer} mode={props.mode} footer={props?.footer} />\n </>\n );\n};\n\nconst AnnotatedArea: React.FC<AppProps & IProps> = (props) => {\n const { stepList, step } = props;\n const currentToolName = getStepConfig(stepList, step)?.tool;\n const isVideoTool = ToolUtils.isVideoTool(currentToolName);\n const isPointCloudTool = ToolUtils.isPointCloudTool(currentToolName);\n\n if (isVideoTool) {\n return <VideoAnnotate {...props} />;\n }\n\n if (isPointCloudTool) {\n return <PointCloudAnnotate {...props} />;\n }\n\n return <ImageAnnotate {...props} />;\n};\n\nconst MainView: React.FC<AppProps & IProps> = (props) => {\n const siderWidth = props.style?.sider?.width;\n\n return (\n <ViewportProvider>\n <Spin spinning={props.loading}>\n <Layout className={classnames([layoutCls, props.className])} style={props.style?.layout}>\n <header className={`${layoutCls}__header`} style={props.style?.header}>\n <ToolHeader\n header={props?.header}\n headerName={props.headerName}\n goBack={props.goBack}\n exportData={props.exportData}\n />\n </header>\n\n <Layout className={getClassName('layout', 'container')}>\n {props?.leftSider}\n <Content className={`${layoutCls}__content`}>\n <AnnotatedArea {...props} />\n </Content>\n <Sider\n className={`${layoutCls}__side`}\n width={siderWidth ?? 240}\n style={props.style?.sider}\n >\n <Sidebar sider={props?.sider} />\n </Sider>\n </Layout>\n </Layout>\n </Spin>\n </ViewportProvider>\n );\n};\n\nconst mapStateToProps = ({ annotation }: AppState) => {\n const { imgList, loading } = annotation;\n const imgInfo = imgList[annotation.imgIndex] ?? {};\n return {\n path: imgInfo?.path ?? imgInfo?.url ?? '', // 将当前路径的数据注入\n loading,\n };\n};\n\nexport default connect(mapStateToProps, null, null, { context: LabelBeeContext })(MainView);\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/views/MainView/sidebar/AnnotationText/index.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { message } from 'antd/es';\nimport TextAreaFormat from '@/views/MainView/sidebar/TextAreaFormat';\nimport { TextUtils } from '@/utils/TextUtils';\nimport { AppState } from '@/store';\nimport { GraphToolInstance } from '@/store/annotation/types';\nimport { connect } from 'react-redux';\nimport { LabelBeeContext } from '@/store/ctx';\n\ninterface IProps {\n toolInstance: GraphToolInstance;\n}\n\nconst AnnotationText: React.FC<IProps> = ({ toolInstance }) => {\n const [, forceRender] = useState<number>(0);\n useEffect(() => {\n if (toolInstance) {\n toolInstance.singleOn('selectedChange', () => {\n forceRender((s) => s + 1);\n });\n toolInstance.singleOn('updateTextAttribute', () => {\n // 文本属性的更新\n\n forceRender((s) => s + 1);\n });\n\n toolInstance.singleOn('messageError', (error: string) => {\n message.error(error);\n });\n }\n }, [toolInstance]);\n\n if (!toolInstance) {\n return null;\n }\n\n const { config } = toolInstance;\n\n return (\n <div>\n {toolInstance?.config?.textConfigurable && toolInstance.selectedID && (\n <TextAreaFormat\n onChange={toolInstance.textChange}\n textValue={toolInstance.selectedText}\n checkString={TextUtils.checkString(config?.textCheckType, config?.customFormat)}\n textCheckType={config.textCheckType}\n />\n )}\n </div>\n );\n};\n\nfunction mapStateToProps(state: AppState) {\n return { toolInstance: state.annotation.toolInstance };\n}\n\nexport default connect(mapStateToProps, null, null, { context: LabelBeeContext })(AnnotationText);\n"],"names":[],"mappings":";;;;;;;AAaA,MAAM,cAAA,GAAmC,CAAC,CAAE,YAAmB,CAAA,KAAA;AAb/D,EAAA,IAAA,EAAA,CAAA;AAcE,EAAM,MAAA,GAAG,WAAA,CAAA,GAAe,QAAiB,CAAA,CAAA,CAAA,CAAA;AACzC,EAAA,SAAA,CAAU,MAAM;AACd,IAAA,IAAI,YAAc,EAAA;AAChB,MAAa,YAAA,CAAA,QAAA,CAAS,kBAAkB,MAAM;AAC5C,QAAY,WAAA,CAAA,CAAC,MAAM,CAAI,GAAA,CAAA,CAAA,CAAA;AAAA,OAAA,CAAA,CAAA;AAEzB,MAAa,YAAA,CAAA,QAAA,CAAS,uBAAuB,MAAM;AAGjD,QAAY,WAAA,CAAA,CAAC,MAAM,CAAI,GAAA,CAAA,CAAA,CAAA;AAAA,OAAA,CAAA,CAAA;AAGzB,MAAa,YAAA,CAAA,QAAA,CAAS,cAAgB,EAAA,CAAC,KAAkB,KAAA;AACvD,QAAA,OAAA,CAAQ,KAAM,CAAA,KAAA,CAAA,CAAA;AAAA,OAAA,CAAA,CAAA;AAAA,KAAA;AAAA,GAAA,EAGjB,CAAC,YAAA,CAAA,CAAA,CAAA;AAEJ,EAAA,IAAI,CAAC,YAAc,EAAA;AACjB,IAAO,OAAA,IAAA,CAAA;AAAA,GAAA;AAGT,EAAA,MAAM,CAAE,MAAW,CAAA,GAAA,YAAA,CAAA;AAEnB,EACE,uBAAA,KAAA,CAAA,aAAA,CAAC,KAAD,EAAA,IAAA,EACG,CAAc,CAAA,EAAA,GAAA,YAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,YAAA,CAAA,MAAA,KAAd,mBAAsB,gBAAoB,KAAA,YAAA,CAAa,UACtD,oBAAA,KAAA,CAAA,aAAA,CAAC,cAAD,EAAA;AAAA,IACE,UAAU,YAAa,CAAA,UAAA;AAAA,IACvB,WAAW,YAAa,CAAA,YAAA;AAAA,IACxB,WAAa,EAAA,SAAA,CAAU,WAAY,CAAA,MAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAQ,eAAe,MAAQ,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,MAAA,CAAA,YAAA,CAAA;AAAA,IAClE,eAAe,MAAO,CAAA,aAAA;AAAA,GAAA,CAAA,CAAA,CAAA;AAAA,CAAA,CAAA;AAOhC,SAAA,eAAA,CAAyB,KAAiB,EAAA;AACxC,EAAO,OAAA,CAAE,YAAc,EAAA,KAAA,CAAM,UAAW,CAAA,YAAA,CAAA,CAAA;AAAA,CAAA;AAG1C,uBAAe,QAAQ,eAAiB,EAAA,IAAA,EAAM,IAAM,EAAA,CAAE,SAAS,eAAmB,CAAA,CAAA,CAAA,cAAA,CAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../src/views/MainView/sidebar/ClearIcon/index.tsx"],"sourcesContent":["import { Tooltip } from 'antd/es';\nimport React, { useState } from 'react';\n\n// 图片调整的刷子\nimport clearSmall from '@/assets/annotation/common/icon_clearSmall.svg';\n// import clearSmallA from '@//assets/annotation/common/icon_clearSmall_a.svg';\nimport { InitImgAttribute } from '@/store/imgAttribute/actionCreators';\nimport { store } from '@/index';\nimport clearSmallA from '@//assets/annotation/common/icon_clearSmall_a.svg';\nimport { useTranslation } from 'react-i18next';\n\nconst clearIcon = () => {\n const [hoverDelete, setHoverDelete] = useState(false);\n\n const clearAttribute = () => {\n store.dispatch(InitImgAttribute());\n };\n const { t } = useTranslation();\n\n return (\n <Tooltip placement='bottom' title={t('RestoreImageAttributes')}>\n <img\n onMouseEnter={() => setHoverDelete(true)}\n onMouseLeave={() => setHoverDelete(false)}\n style={{ marginLeft: 6 }}\n src={hoverDelete ? clearSmallA : clearSmall}\n onClick={(e) => {\n e.stopPropagation();\n clearAttribute();\n }}\n />\n </Tooltip>\n );\n};\n\nexport default clearIcon;\n"],"names":["clearSmallA","clearSmall"],"mappings":";;;;;;;;AAWA,MAAM,YAAY,MAAM;AACtB,EAAM,MAAA,CAAC,WAAa,EAAA,cAAA,CAAA,GAAkB,QAAS,CAAA,KAAA,CAAA,CAAA;AAE/C,EAAA,MAAM,iBAAiB,MAAM;AAC3B,IAAA,KAAA,CAAM,QAAS,CAAA,gBAAA,EAAA,CAAA,CAAA;AAAA,GAAA,CAAA;AAEjB,EAAA,MAAM,CAAE,CAAM,CAAA,GAAA,cAAA,EAAA,CAAA;AAEd,EAAA,2CACG,OAAD,EAAA;AAAA,IAAS,SAAU,EAAA,QAAA;AAAA,IAAS,OAAO,CAAE,CAAA,wBAAA,CAAA;AAAA,GAAA,sCAClC,KAAD,EAAA;AAAA,IACE,YAAA,EAAc,MAAM,cAAe,CAAA,IAAA,CAAA;AAAA,IACnC,YAAA,EAAc,MAAM,cAAe,CAAA,KAAA,CAAA;AAAA,IACnC,KAAA,EAAO,CAAE,UAAY,EAAA,CAAA,CAAA;AAAA,IACrB,GAAA,EAAK,cAAcA,GAAc,GAAAC,KAAA;AAAA,IACjC,OAAA,EAAS,CAAC,CAAM,KAAA;AACd,MAAE,CAAA,CAAA,eAAA,EAAA,CAAA;AACF,MAAA,cAAA,EAAA,CAAA;AAAA,KAAA;AAAA,GAAA,CAAA,CAAA,CAAA;AAAA;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ActionsConfirm.js","sources":["../../../../../src/views/MainView/sidebar/GeneralOperation/ActionsConfirm.tsx"],"sourcesContent":["import React, { useRef, useState } from 'react';\nimport { Col, Popconfirm } from 'antd';\nimport { useTranslation } from 'react-i18next';\nimport { prefix } from '@/constant';\n\nexport interface IOperationConfig {\n name: string;\n key: string;\n imgSvg: string | React.ReactElement;\n hoverSvg: string | React.ReactElement;\n onClick?: () => void;\n forbidConfirm?: boolean; // 是否禁止二次确认\n forbidOperation?: boolean; // 禁止操作,会有置灰操作(该部分由用户自己更改 ImgSvg 进行展示)\n}\n\n// 禁止的样式\nconst forbidStyle = {\n color: '#CCCCCC',\n};\n\nconst PopconfirmTitle = ({ info }: { info: IOperationConfig }) => {\n const { t } = useTranslation();\n if (info.key.startsWith('sure')) {\n return <div key={info.key}>{`${t('ConfirmTo')}${info.name.slice(0)}?`}</div>;\n }\n\n return <span>{info.name}</span>;\n};\n\nconst ActionIcon = ({ icon }: { icon: React.ReactElement | string }) => {\n if (typeof icon === 'string') {\n return <img width={23} height={25} src={icon} />;\n }\n return icon;\n};\n\nconst ShowIcon = ({ isHover, info }: { isHover: string | null; info: IOperationConfig }) => {\n const disabled = !!info.forbidOperation;\n\n const _isHover = info.key === isHover && !disabled;\n\n let textStyle = {\n color: _isHover ? '#666fff' : '',\n };\n\n if (disabled) {\n textStyle = forbidStyle;\n }\n\n return (\n <div\n style={{ cursor: disabled ? 'not-allowed' : 'default' }}\n onClick={() => info?.forbidConfirm && !disabled && info?.onClick?.()}\n >\n <div className='icon'>\n <ActionIcon icon={_isHover ? info.hoverSvg : info.imgSvg} />\n </div>\n <div className='toolName' style={textStyle}>\n {info.name}\n </div>\n </div>\n );\n};\n\nconst ActionsConfirm: React.FC<{ allOperation: IOperationConfig[] }> = ({ allOperation }) => {\n const ref = useRef<HTMLDivElement>(null);\n const [isHover, setHover] = useState<string | null>(null);\n const { t } = useTranslation();\n const annotationLength = Math.floor(24 / allOperation.length);\n\n return (\n <div className='generalOperation' ref={ref}>\n {allOperation.map((info, index) => (\n <Col span={annotationLength} key={index}>\n <div\n key={info.key}\n className='item'\n onMouseEnter={() => {\n setHover(info.key);\n }}\n onMouseLeave={() => {\n setHover(null);\n }}\n >\n {info.forbidConfirm ? (\n <ShowIcon info={info} isHover={isHover} />\n ) : (\n <Popconfirm\n title={<PopconfirmTitle info={info} />}\n placement='topRight'\n okText={t('Confirm')}\n cancelText={t('Cancel')}\n getPopupContainer={() => ref.current ?? document.body}\n onConfirm={info.onClick}\n overlayClassName={`${prefix}-pop-confirm`}\n >\n <div>\n <ShowIcon info={info} isHover={isHover} />\n </div>\n </Popconfirm>\n )}\n </div>\n </Col>\n ))}\n </div>\n );\n};\n\nexport default ActionsConfirm;\n"],"names":[],"mappings":"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"}
|