@labelbee/lb-components 1.6.0 → 1.7.0-alpha.0

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.
Files changed (65) hide show
  1. package/dist/components/pointCloudView/PointCloudContext.js +1 -1
  2. package/dist/components/pointCloudView/PointCloudListener.js +1 -1
  3. package/dist/components/pointCloudView/PointCloudTopView.js +1 -1
  4. package/dist/components/pointCloudView/hooks/useHistory.js +1 -0
  5. package/dist/components/pointCloudView/hooks/usePointCloudViews.js +1 -1
  6. package/dist/components/pointCloudView/hooks/usePolygon.js +1 -1
  7. package/dist/components/pointCloudView/hooks/useSingleBox.js +1 -1
  8. package/dist/components/pointCloudView/hooks/useStatus.js +1 -1
  9. package/dist/constant/index.js +1 -1
  10. package/dist/hooks/annotation.js +1 -1
  11. package/dist/store/Actions.js +1 -1
  12. package/dist/store/annotation/actionCreators.js +1 -1
  13. package/dist/store/annotation/map.js +1 -1
  14. package/dist/store/annotation/reducer.js +1 -1
  15. package/dist/types/components/pointCloudView/PointCloudContext.d.ts +2 -1
  16. package/dist/types/components/pointCloudView/PointCloudTopView.d.ts +3 -3
  17. package/dist/types/components/pointCloudView/hooks/useHistory.d.ts +18 -0
  18. package/dist/types/components/pointCloudView/hooks/usePointCloudViews.d.ts +6 -3
  19. package/dist/types/components/pointCloudView/hooks/usePolygon.d.ts +1 -0
  20. package/dist/types/constant/index.d.ts +3 -1
  21. package/dist/types/hooks/annotation.d.ts +4 -2
  22. package/dist/types/store/Actions.d.ts +1 -0
  23. package/dist/types/store/annotation/actionCreators.d.ts +3 -2
  24. package/dist/types/store/annotation/map.d.ts +7 -0
  25. package/dist/types/store/annotation/types.d.ts +9 -1
  26. package/dist/types/views/MainView/sidebar/PointCloudToolSidebar/components/batchUpdateModal/index.d.ts +13 -0
  27. package/dist/types/views/MainView/sidebar/PointCloudToolSidebar/index.d.ts +4 -1
  28. package/dist/views/MainView/sidebar/PointCloudToolSidebar/components/batchUpdateModal/index.js +1 -0
  29. package/dist/views/MainView/sidebar/PointCloudToolSidebar/index.js +1 -1
  30. package/dist/views/MainView/toolHeader/headerOption/index.js +1 -1
  31. package/es/components/pointCloudView/PointCloudContext.js +1 -1
  32. package/es/components/pointCloudView/PointCloudContext.js.map +1 -1
  33. package/es/components/pointCloudView/PointCloudListener.js +1 -1
  34. package/es/components/pointCloudView/PointCloudListener.js.map +1 -1
  35. package/es/components/pointCloudView/PointCloudTopView.js +1 -1
  36. package/es/components/pointCloudView/PointCloudTopView.js.map +1 -1
  37. package/es/components/pointCloudView/hooks/useHistory.js +1 -0
  38. package/es/components/pointCloudView/hooks/useHistory.js.map +1 -0
  39. package/es/components/pointCloudView/hooks/usePointCloudViews.js +1 -1
  40. package/es/components/pointCloudView/hooks/usePointCloudViews.js.map +1 -1
  41. package/es/components/pointCloudView/hooks/usePolygon.js +1 -1
  42. package/es/components/pointCloudView/hooks/usePolygon.js.map +1 -1
  43. package/es/components/pointCloudView/hooks/useSingleBox.js +1 -1
  44. package/es/components/pointCloudView/hooks/useSingleBox.js.map +1 -1
  45. package/es/components/pointCloudView/hooks/useStatus.js +1 -1
  46. package/es/components/pointCloudView/hooks/useStatus.js.map +1 -1
  47. package/es/constant/index.js +1 -1
  48. package/es/constant/index.js.map +1 -1
  49. package/es/hooks/annotation.js +1 -1
  50. package/es/hooks/annotation.js.map +1 -1
  51. package/es/store/Actions.js +1 -1
  52. package/es/store/Actions.js.map +1 -1
  53. package/es/store/annotation/actionCreators.js +1 -1
  54. package/es/store/annotation/actionCreators.js.map +1 -1
  55. package/es/store/annotation/map.js +1 -1
  56. package/es/store/annotation/map.js.map +1 -1
  57. package/es/store/annotation/reducer.js +1 -1
  58. package/es/store/annotation/reducer.js.map +1 -1
  59. package/es/views/MainView/sidebar/PointCloudToolSidebar/components/batchUpdateModal/index.js +1 -0
  60. package/es/views/MainView/sidebar/PointCloudToolSidebar/components/batchUpdateModal/index.js.map +1 -0
  61. package/es/views/MainView/sidebar/PointCloudToolSidebar/index.js +1 -1
  62. package/es/views/MainView/sidebar/PointCloudToolSidebar/index.js.map +1 -1
  63. package/es/views/MainView/toolHeader/headerOption/index.js +1 -1
  64. package/es/views/MainView/toolHeader/headerOption/index.js.map +1 -1
  65. package/package.json +4 -4
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react");function _interopDefaultLegacy(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var React__default=_interopDefaultLegacy(React);const PointCloudContext=React__default.default.createContext({pointCloudBoxList:[],polygonList:[],selectedID:"",selectedIDs:[],valid:!0,setSelectedIDs:()=>{},setPointCloudResult:()=>{},setPointCloudValid:()=>{},setTopViewInstance:()=>{},setSideViewInstance:()=>{},setBackViewInstance:()=>{},setMainViewInstance:()=>{},addSelectedID:()=>{},selectedAllBoxes:()=>{},addPointCloudBox:()=>{},setPolygonList:()=>{},zoom:1,setZoom:()=>{}}),PointCloudProvider=({children:o})=>{const[s,a]=React.useState([]),[c,P]=React.useState([]),[t,i]=React.useState([]),[d,p]=React.useState(!0),[l,I]=React.useState(1),[u,x]=React.useState(),[r,V]=React.useState(),[f,w]=React.useState(),[S,y]=React.useState(),C=React.useMemo(()=>t.length===1?t[0]:"",[t]),m=React.useMemo(()=>{const v=s.find(e=>e.id===C),B=e=>{a(s.concat(e))},g=e=>{p(e!==!1)},n=e=>{e===void 0&&i([]),typeof e=="string"&&i([e]),Array.isArray(e)&&i(Array.from(new Set(e)))};return{selectedID:C,pointCloudBoxList:s,selectedIDs:t,setPointCloudResult:a,setSelectedIDs:n,addPointCloudBox:B,valid:d,selectedPointCloudBox:v,setPointCloudValid:g,addSelectedID:e=>{t.includes(e)?n(t.filter(L=>L!==e)):n([...t,e])},selectedAllBoxes:()=>{n(s.map(e=>e.id))},topViewInstance:u,setTopViewInstance:x,sideViewInstance:r,setSideViewInstance:V,backViewInstance:f,setBackViewInstance:w,mainViewInstance:S,setMainViewInstance:y,polygonList:c,setPolygonList:P,zoom:l,setZoom:I}},[d,t,s,c,u,r,f,S,l]);return React__default.default.createElement(PointCloudContext.Provider,{value:m},o)};exports.PointCloudContext=PointCloudContext,exports.PointCloudProvider=PointCloudProvider;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var lbAnnotation=require("@labelbee/lb-annotation"),React=require("react");function _interopDefaultLegacy(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var React__default=_interopDefaultLegacy(React);const PointCloudContext=React__default.default.createContext({pointCloudBoxList:[],polygonList:[],selectedID:"",selectedIDs:[],valid:!0,setSelectedIDs:()=>{},setPointCloudResult:()=>{},setPointCloudValid:()=>{},setTopViewInstance:()=>{},setSideViewInstance:()=>{},setBackViewInstance:()=>{},setMainViewInstance:()=>{},addSelectedID:()=>{},selectedAllBoxes:()=>{},addPointCloudBox:()=>{},setPolygonList:()=>{},zoom:1,setZoom:()=>{},history:new lbAnnotation.ActionsHistory}),PointCloudProvider=({children:o})=>{const[s,a]=React.useState([]),[c,P]=React.useState([]),[t,i]=React.useState([]),[l,p]=React.useState(!0),[d,I]=React.useState(1),[r,w]=React.useState(),[u,x]=React.useState(),[f,y]=React.useState(),[S,V]=React.useState(),v=React.useRef(new lbAnnotation.ActionsHistory).current,C=React.useMemo(()=>t.length===1?t[0]:"",[t]),m=React.useMemo(()=>{const B=s.find(e=>e.id===C),A=e=>{a(s.concat(e))},b=e=>{p(e!==!1)},n=e=>{e===void 0&&i([]),typeof e=="string"&&i([e]),Array.isArray(e)&&i(Array.from(new Set(e)))};return{selectedID:C,pointCloudBoxList:s,selectedIDs:t,setPointCloudResult:a,setSelectedIDs:n,addPointCloudBox:A,valid:l,selectedPointCloudBox:B,setPointCloudValid:b,addSelectedID:e=>{t.includes(e)?n(t.filter(g=>g!==e)):n([...t,e])},selectedAllBoxes:()=>{n(s.map(e=>e.id))},topViewInstance:r,setTopViewInstance:w,sideViewInstance:u,setSideViewInstance:x,backViewInstance:f,setBackViewInstance:y,mainViewInstance:S,setMainViewInstance:V,polygonList:c,setPolygonList:P,zoom:d,setZoom:I,history:v}},[l,t,s,c,r,u,f,S,d]);return React__default.default.createElement(PointCloudContext.Provider,{value:m},o)};exports.PointCloudContext=PointCloudContext,exports.PointCloudProvider=PointCloudProvider;
@@ -1 +1 @@
1
- "use strict";var PointCloudContext=require("./PointCloudContext.js"),useRotate=require("./hooks/useRotate.js"),useBoxes=require("./hooks/useBoxes.js"),useSingleBox=require("./hooks/useSingleBox.js"),React=require("react"),lbAnnotation=require("@labelbee/lb-annotation"),antd=require("antd"),reactRedux=require("react-redux"),map=require("../../store/annotation/map.js"),annotation=require("../../hooks/annotation.js"),useStatus=require("./hooks/useStatus.js"),index=require("../../utils/index.js"),usePointCloudViews=require("./hooks/usePointCloudViews.js"),ctx=require("../../store/ctx.js"),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(o,e,r)=>e in o?__defProp(o,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[e]=r,__spreadValues=(o,e)=>{for(var r in e||(e={}))__hasOwnProp.call(e,r)&&__defNormalProp(o,r,e[r]);if(__getOwnPropSymbols)for(var r of __getOwnPropSymbols(e))__propIsEnum.call(e,r)&&__defNormalProp(o,r,e[r]);return o},__spreadProps=(o,e)=>__defProps(o,__getOwnPropDescs(e));const{EPolygonPattern}=lbAnnotation.cTool,PointCloudListener=({currentData:o})=>{const e=React.useContext(PointCloudContext.PointCloudContext),{changeSelectedBoxValid:r,selectNextBox:x,selectPrevBox:b,updateSelectedBox:c}=useSingleBox.useSingleBox(),{clearAllResult:d}=useStatus.useStatus(),f=index.jsonParser(o.result),{copySelectedBoxes:w,pasteSelectedBoxes:C,copiedBoxes:y}=useBoxes.useBoxes(),{toolInstanceRef:a}=annotation.useCustomToolInstance({basicInfo:f}),{updateRotate:l}=useRotate.useRotate({currentData:o}),{updatePointCloudData:p}=usePointCloudViews.usePointCloudViews(),k=(t,s)=>{const{topViewInstance:i,mainViewInstance:n}=e;if(!i)return;const{pointCloud2dOperation:u}=i;switch(t){case"q":{l(2);break}case"e":l(-2);break;case"g":l(180);break;case"u":{const P=u.pattern===EPolygonPattern.Normal?EPolygonPattern.Rect:EPolygonPattern.Normal;u.setPattern(P);const _={[EPolygonPattern.Normal]:"Normal Pattern",[EPolygonPattern.Rect]:"Rect Pattern"};antd.message.success(`Change Pattern to ${_[P]} successfully`),u.clearActiveStatus(),u.clearDrawingStatus()}break;case"+":n==null||n.updatePointSize(!0);break;case"-":n==null||n.updatePointSize(!1);break;case"v":e.setPointCloudValid(!e.valid);break;case"tab":if(s.shiftKey){b();break}x();break;case"f":r();break;default:return}},B=t=>{switch(t){case"c":w();break;case"v":C();break;case"a":e.selectedAllBoxes();break}},v=t=>{const s=t.key.toLocaleLowerCase();if(t.ctrlKey){B(s);return}k(s,t)};return React.useEffect(()=>{const{topViewInstance:t}=e;if(!!t)return window.addEventListener("keydown",v),()=>{window.removeEventListener("keydown",v)}},[e,y]),React.useEffect(()=>{p==null||p()},[o,e.mainViewInstance]),React.useEffect(()=>{a.current.exportData=()=>[e.pointCloudBoxList,{valid:e.valid}],a.current.exportCustomData=()=>{var t;return{renderPolygon:(t=e.polygonList)!=null?t:[]}},a.current.setDefaultAttribute=t=>{const s=e.selectedPointCloudBox;s&&(s.attribute=t,c(s))},a.current.setSubAttribute=(t,s)=>{var i;const n=e.selectedPointCloudBox;if(n){const u=(i=n==null?void 0:n.subAttribute)!=null?i:{};n.subAttribute=__spreadProps(__spreadValues({},u),{[t]:s}),c(n)}},a.current.clearResult=()=>{d==null||d()}},[e.pointCloudBoxList,e.selectedID,e.valid,e.polygonList]),React.useEffect(()=>{a.current.setValid=t=>{a.current.valid=t,setTimeout(()=>{e.setPointCloudValid(t)})}},[]),null};var PointCloudListener$1=reactRedux.connect(map.aMapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloudListener);module.exports=PointCloudListener$1;
1
+ "use strict";var PointCloudContext=require("./PointCloudContext.js"),useRotate=require("./hooks/useRotate.js"),useBoxes=require("./hooks/useBoxes.js"),useSingleBox=require("./hooks/useSingleBox.js"),React=require("react"),lbAnnotation=require("@labelbee/lb-annotation"),antd=require("antd"),reactRedux=require("react-redux"),map=require("../../store/annotation/map.js"),annotation=require("../../hooks/annotation.js"),useStatus=require("./hooks/useStatus.js"),index=require("../../utils/index.js"),usePointCloudViews=require("./hooks/usePointCloudViews.js"),ctx=require("../../store/ctx.js"),useHistory=require("./hooks/useHistory.js"),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(o,e,r)=>e in o?__defProp(o,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):o[e]=r,__spreadValues=(o,e)=>{for(var r in e||(e={}))__hasOwnProp.call(e,r)&&__defNormalProp(o,r,e[r]);if(__getOwnPropSymbols)for(var r of __getOwnPropSymbols(e))__propIsEnum.call(e,r)&&__defNormalProp(o,r,e[r]);return o},__spreadProps=(o,e)=>__defProps(o,__getOwnPropDescs(e));const{EPolygonPattern}=lbAnnotation.cTool,PointCloudListener=({currentData:o})=>{const e=React.useContext(PointCloudContext.PointCloudContext),{changeSelectedBoxValid:r,selectNextBox:b,selectPrevBox:y,updateSelectedBox:c}=useSingleBox.useSingleBox(),{clearAllResult:d}=useStatus.useStatus(),w=index.jsonParser(o.result),{copySelectedBoxes:C,pasteSelectedBoxes:k,copiedBoxes:B}=useBoxes.useBoxes(),{toolInstanceRef:n}=annotation.useCustomToolInstance({basicInfo:w}),{updateRotate:l}=useRotate.useRotate({currentData:o}),{updatePointCloudData:p}=usePointCloudViews.usePointCloudViews(),{redo:v,undo:P,pushHistoryWithList:_}=useHistory.useHistory(),m=(t,s)=>{const{topViewInstance:i,mainViewInstance:a}=e;if(!i)return;const{pointCloud2dOperation:u}=i;switch(t){case"q":{l(2);break}case"e":l(-2);break;case"g":l(180);break;case"u":{const f=u.pattern===EPolygonPattern.Normal?EPolygonPattern.Rect:EPolygonPattern.Normal;u.setPattern(f);const h={[EPolygonPattern.Normal]:"Normal Pattern",[EPolygonPattern.Rect]:"Rect Pattern"};antd.message.success(`Change Pattern to ${h[f]} successfully`),u.clearActiveStatus(),u.clearDrawingStatus()}break;case"+":a==null||a.updatePointSize(!0);break;case"-":a==null||a.updatePointSize(!1);break;case"v":e.setPointCloudValid(!e.valid);break;case"tab":if(s.shiftKey){y();break}b();break;case"f":r();break;default:return}},g=(t,s)=>{switch(t){case"c":C();break;case"v":k();break;case"a":e.selectedAllBoxes();break;case"z":{s.shiftKey?v():P();break}}},x=t=>{const s=t.key.toLocaleLowerCase();if(t.ctrlKey){g(s,t);return}m(s,t)};return React.useEffect(()=>{const{topViewInstance:t}=e;if(!!t)return window.addEventListener("keydown",x),()=>{window.removeEventListener("keydown",x)}},[e,B]),React.useEffect(()=>{p==null||p()},[o,e.mainViewInstance]),React.useEffect(()=>{n.current.exportData=()=>[e.pointCloudBoxList,{valid:e.valid}],n.current.exportCustomData=()=>{var t;return{renderPolygon:(t=e.polygonList)!=null?t:[]}},n.current.setDefaultAttribute=t=>{const s=e.selectedPointCloudBox;s&&(s.attribute=t,c(s))},n.current.setSubAttribute=(t,s)=>{var i;const a=e.selectedPointCloudBox;if(a){const u=(i=a==null?void 0:a.subAttribute)!=null?i:{};a.subAttribute=__spreadProps(__spreadValues({},u),{[t]:s}),c(a)}},n.current.clearResult=()=>{d==null||d()}},[e.pointCloudBoxList,e.selectedID,e.valid,e.polygonList]),React.useEffect(()=>{n.current.setValid=t=>{n.current.valid=t,setTimeout(()=>{e.setPointCloudValid(t)})},n.current.history={pushHistory:t=>{_({pointCloudBoxList:t})},initRecord:()=>{}},n.current.redo=()=>{v()},n.current.undo=()=>{P()}},[]),null};var PointCloudListener$1=reactRedux.connect(map.aMapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloudListener);module.exports=PointCloudListener$1;
@@ -1 +1 @@
1
- "use strict";var dom=require("../../utils/dom.js"),index=require("../../views/MainView/toolFooter/index.js"),index$1=require("../../views/MainView/toolFooter/ZoomController/index.js"),icons=require("@ant-design/icons"),lbAnnotation=require("@labelbee/lb-annotation"),React=require("react"),PointCloudContext=require("./PointCloudContext.js"),useRotate=require("./hooks/useRotate.js"),useSingleBox=require("./hooks/useSingleBox.js"),PointCloudLayout=require("./PointCloudLayout.js"),PointCloudInfos=require("./PointCloudInfos.js"),usePolygon=require("./hooks/usePolygon.js"),useZoom=require("./hooks/useZoom.js"),antd=require("antd"),map=require("../../store/annotation/map.js"),reactRedux=require("react-redux"),usePointCloudViews=require("./hooks/usePointCloudViews.js"),useSize=require("../../hooks/useSize.js"),reactI18next=require("react-i18next"),ctx=require("../../store/ctx.js");function _interopDefaultLegacy(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var React__default=_interopDefaultLegacy(React);const{EPolygonPattern}=lbAnnotation.cTool,TransferCanvas2WorldOffset=(o,i,e=1)=>{const{width:l,height:d}=i,r={x:o.x+l*e/2,y:o.y+d*e/2},u={x:i.width/2,y:i.height/2};return{offsetX:(u.x-r.x)/e,offsetY:-(u.y-r.y)/e}},TopViewToolbar=({currentData:o})=>{const{zoom:i,zoomIn:e,zoomOut:l,initialPosition:d}=useZoom.useZoom(),{selectNextBox:r,selectPrevBox:u}=useSingleBox.useSingleBox(),{updateRotate:c}=useRotate.useRotate({currentData:o}),m=2,p=()=>{c(-m)},C=()=>{c(m)},v=()=>{c(180)};return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement("span",{onClick:C,className:dom.getClassName("point-cloud","rotate-reserve")}),React__default.default.createElement("span",{onClick:p,className:dom.getClassName("point-cloud","rotate")}),React__default.default.createElement("span",{onClick:v,className:dom.getClassName("point-cloud","rotate-180")}),React__default.default.createElement(index.FooterDivider,null),React__default.default.createElement(icons.UpSquareOutlined,{onClick:()=>{u()},className:dom.getClassName("point-cloud","prev")}),React__default.default.createElement(icons.DownSquareOutlined,{onClick:()=>{r()},className:dom.getClassName("point-cloud","next")}),React__default.default.createElement(index.FooterDivider,null),React__default.default.createElement(index$1.ZoomController,{initialPosition:d,zoomIn:e,zoomOut:l,zoom:i}))},ZAxisSlider=({setZAxisLimit:o,zAxisLimit:i})=>React__default.default.createElement("div",{style:{position:"absolute",top:128,right:8,height:"50%",zIndex:20}},React__default.default.createElement(antd.Slider,{vertical:!0,step:.5,max:10,min:.5,defaultValue:i,onAfterChange:e=>{o(e)}})),PointCloudTopView=({currentData:o})=>{const i=React.useRef(null),e=React__default.default.useContext(PointCloudContext.PointCloudContext),l=useSize(i),{setZoom:d}=useZoom.useZoom(),{addPolygon:r,deletePolygon:u}=usePolygon.usePolygon(),{deletePointCloudBox:c,changeBoxValidByID:m}=useSingleBox.useSingleBox(),[p,C]=React.useState(10),{t:v}=reactI18next.useTranslation(),f=usePointCloudViews.usePointCloudViews();return React.useLayoutEffect(()=>{if(!e.topViewInstance&&i.current&&(o==null?void 0:o.url)&&(o==null?void 0:o.result)){const t={width:i.current.clientWidth,height:i.current.clientHeight},a=new lbAnnotation.PointCloudAnnotation({container:i.current,size:t,pcdPath:o.url});e.setTopViewInstance(a)}},[o]),React.useEffect(()=>{if(!l||!e.topViewInstance||!e.sideViewInstance)return;const{pointCloud2dOperation:t}=e.topViewInstance;t.singleOn("polygonCreated",n=>{if(t.pattern===EPolygonPattern.Normal||!(o==null?void 0:o.url)){r(n);return}f.topViewAddBox(n,l)}),t.singleOn("deletedObject",({id:n})=>{c(n),u(n)}),t.singleOn("deleteSelectedIDs",()=>{e.setSelectedIDs([])}),t.singleOn("addSelectedIDs",n=>{e.addSelectedID(n)}),t.singleOn("setSelectedIDs",n=>{e.setSelectedIDs(n)}),t.singleOn("updatePolygonByDrag",({newPolygon:n})=>{var s;(s=f.topViewUpdateBox)==null||s.call(f,n,l)});const a=n=>{m(n)};return t.on("validUpdate",a),()=>{t.unbind("validUpdate",a)}},[e,l,o,f]),React.useEffect(()=>{if(!(l==null?void 0:l.width)||!e.topViewInstance)return;e.topViewInstance.initSize(l),e.topViewInstance.updatePolygonList(e.pointCloudBoxList);const{topViewInstance:{pointCloudInstance:t,pointCloud2dOperation:a}}=e;a.singleOn("renderZoom",(n,s)=>{const{offsetX:x,offsetY:g}=TransferCanvas2WorldOffset(s,l,n);if(t.camera.zoom=n,s){const{x:w,y:P,z:h}=t.initCameraPosition;t.camera.position.set(w+g,P-x,h)}t.camera.updateProjectionMatrix(),t.render(),d(n)}),a.singleOn("dragMove",({currentPos:n,zoom:s})=>{const{offsetX:x,offsetY:g}=TransferCanvas2WorldOffset(n,l,s);t.camera.zoom=s;const{x:w,y:P,z:h}=t.initCameraPosition;t.camera.position.set(w+g,P-x,h),t.render()})},[l,e.topViewInstance]),React.useEffect(()=>{var t,a;(a=(t=e.topViewInstance)==null?void 0:t.pointCloudInstance)==null||a.applyZAxisPoints(p)},[p]),React.useEffect(()=>{f.topViewSelectedChanged()},[e.selectedIDs]),React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:dom.getClassName("point-cloud-container","top-view"),title:v("TopView"),toolbar:React__default.default.createElement(TopViewToolbar,{currentData:o})},React__default.default.createElement("div",{style:{position:"relative",flex:1}},React__default.default.createElement("div",{style:{width:"100%",height:"100%"},ref:i}),React__default.default.createElement(PointCloudInfos.BoxInfos,null),React__default.default.createElement(ZAxisSlider,{zAxisLimit:p,setZAxisLimit:C}),React__default.default.createElement(PointCloudInfos.PointCloudValidity,null)))};var PointCloudTopView$1=reactRedux.connect(map.aMapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloudTopView);module.exports=PointCloudTopView$1;
1
+ "use strict";var dom=require("../../utils/dom.js"),index=require("../../views/MainView/toolFooter/index.js"),index$1=require("../../views/MainView/toolFooter/ZoomController/index.js"),icons=require("@ant-design/icons"),lbAnnotation=require("@labelbee/lb-annotation"),React=require("react"),PointCloudContext=require("./PointCloudContext.js"),useRotate=require("./hooks/useRotate.js"),useSingleBox=require("./hooks/useSingleBox.js"),PointCloudLayout=require("./PointCloudLayout.js"),PointCloudInfos=require("./PointCloudInfos.js"),usePolygon=require("./hooks/usePolygon.js"),useZoom=require("./hooks/useZoom.js"),antd=require("antd"),map=require("../../store/annotation/map.js"),reactRedux=require("react-redux"),usePointCloudViews=require("./hooks/usePointCloudViews.js"),useSize=require("../../hooks/useSize.js"),reactI18next=require("react-i18next"),ctx=require("../../store/ctx.js");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const{EPolygonPattern}=lbAnnotation.cTool,TransferCanvas2WorldOffset=(t,s,i=1)=>{const{width:o,height:l}=s,u={x:t.x+o*i/2,y:t.y+l*i/2},d={x:s.width/2,y:s.height/2};return{offsetX:(d.x-u.x)/i,offsetY:-(d.y-u.y)/i}},TopViewToolbar=({currentData:t})=>{const{zoom:s,zoomIn:i,zoomOut:o,initialPosition:l}=useZoom.useZoom(),{selectNextBox:u,selectPrevBox:d}=useSingleBox.useSingleBox(),{updateRotate:c}=useRotate.useRotate({currentData:t}),m=2,C=()=>{c(-m)},p=()=>{c(m)},v=()=>{c(180)};return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement("span",{onClick:p,className:dom.getClassName("point-cloud","rotate-reserve")}),React__default.default.createElement("span",{onClick:C,className:dom.getClassName("point-cloud","rotate")}),React__default.default.createElement("span",{onClick:v,className:dom.getClassName("point-cloud","rotate-180")}),React__default.default.createElement(index.FooterDivider,null),React__default.default.createElement(icons.UpSquareOutlined,{onClick:()=>{d()},className:dom.getClassName("point-cloud","prev")}),React__default.default.createElement(icons.DownSquareOutlined,{onClick:()=>{u()},className:dom.getClassName("point-cloud","next")}),React__default.default.createElement(index.FooterDivider,null),React__default.default.createElement(index$1.ZoomController,{initialPosition:l,zoomIn:i,zoomOut:o,zoom:s}))},ZAxisSlider=({setZAxisLimit:t,zAxisLimit:s})=>React__default.default.createElement("div",{style:{position:"absolute",top:128,right:8,height:"50%",zIndex:20}},React__default.default.createElement(antd.Slider,{vertical:!0,step:.5,max:10,min:.5,defaultValue:s,onAfterChange:i=>{t(i)}})),PointCloudTopView=({currentData:t,imgList:s})=>{const i=React.useRef(null),o=React__default.default.useContext(PointCloudContext.PointCloudContext),l=useSize(i),{setZoom:u}=useZoom.useZoom(),{addPolygon:d,deletePolygon:c}=usePolygon.usePolygon(),{deletePointCloudBox:m,changeBoxValidByID:C}=useSingleBox.useSingleBox(),[p,v]=React.useState(10),{t:y}=reactI18next.useTranslation(),f=usePointCloudViews.usePointCloudViews();return React.useLayoutEffect(()=>{if(!o.topViewInstance&&i.current&&(t==null?void 0:t.url)&&(t==null?void 0:t.result)){const e={width:i.current.clientWidth,height:i.current.clientHeight},a=new lbAnnotation.PointCloudAnnotation({container:i.current,size:e,pcdPath:t.url});o.setTopViewInstance(a)}},[t]),React.useEffect(()=>{if(!l||!o.topViewInstance||!o.sideViewInstance)return;const{pointCloud2dOperation:e}=o.topViewInstance;e.singleOn("polygonCreated",n=>{if(e.pattern===EPolygonPattern.Normal||!(t==null?void 0:t.url)){d(n),o.setSelectedIDs(n.id);return}f.topViewAddBox({newPolygon:n,size:l,imgList:s})}),e.singleOn("deletedObject",({id:n})=>{m(n),c(n)}),e.singleOn("deleteSelectedIDs",()=>{o.setSelectedIDs([])}),e.singleOn("addSelectedIDs",n=>{o.addSelectedID(n)}),e.singleOn("setSelectedIDs",n=>{o.setSelectedIDs(n)}),e.singleOn("updatePolygonByDrag",({newPolygon:n})=>{var r;(r=f.topViewUpdateBox)==null||r.call(f,n,l)});const a=n=>{C(n)};return e.on("validUpdate",a),()=>{e.unbind("validUpdate",a)}},[o,l,t,f]),React.useEffect(()=>{if(!(l==null?void 0:l.width)||!o.topViewInstance)return;o.topViewInstance.initSize(l),o.topViewInstance.updatePolygonList(o.pointCloudBoxList);const{topViewInstance:{pointCloudInstance:e,pointCloud2dOperation:a}}=o;a.singleOn("renderZoom",(n,r)=>{const{offsetX:x,offsetY:g}=TransferCanvas2WorldOffset(r,l,n);if(e.camera.zoom=n,r){const{x:w,y:P,z:h}=e.initCameraPosition;e.camera.position.set(w+g,P-x,h)}e.camera.updateProjectionMatrix(),e.render(),u(n)}),a.singleOn("dragMove",({currentPos:n,zoom:r})=>{const{offsetX:x,offsetY:g}=TransferCanvas2WorldOffset(n,l,r);e.camera.zoom=r;const{x:w,y:P,z:h}=e.initCameraPosition;e.camera.position.set(w+g,P-x,h),e.render()})},[l,o.topViewInstance]),React.useEffect(()=>{var e,a;(a=(e=o.topViewInstance)==null?void 0:e.pointCloudInstance)==null||a.applyZAxisPoints(p)},[p]),React.useEffect(()=>{f.topViewSelectedChanged()},[o.selectedIDs]),React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:dom.getClassName("point-cloud-container","top-view"),title:y("TopView"),toolbar:React__default.default.createElement(TopViewToolbar,{currentData:t})},React__default.default.createElement("div",{style:{position:"relative",flex:1}},React__default.default.createElement("div",{style:{width:"100%",height:"100%"},ref:i}),React__default.default.createElement(PointCloudInfos.BoxInfos,null),React__default.default.createElement(ZAxisSlider,{zAxisLimit:p,setZAxisLimit:v}),React__default.default.createElement(PointCloudInfos.PointCloudValidity,null)))};var PointCloudTopView$1=reactRedux.connect(map.a2MapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloudTopView);module.exports=PointCloudTopView$1;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),PointCloudContext=require("../PointCloudContext.js"),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,n,s)=>n in e?__defProp(e,n,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[n]=s,__spreadValues=(e,n)=>{for(var s in n||(n={}))__hasOwnProp.call(n,s)&&__defNormalProp(e,s,n[s]);if(__getOwnPropSymbols)for(var s of __getOwnPropSymbols(n))__propIsEnum.call(n,s)&&__defNormalProp(e,s,n[s]);return e};const useHistory=()=>{const{history:e,setPointCloudResult:n,setSelectedIDs:s,pointCloudBoxList:r,mainViewInstance:u,topViewInstance:p,polygonList:d,setPolygonList:f}=React.useContext(PointCloudContext.PointCloudContext),a=({newBoxParams:t,newPolygon:o})=>{const i={pointCloudBoxList:r,polygonList:d};t&&(i.pointCloudBoxList=r.concat(t)),o&&(i.polygonList=d.concat(o)),e.pushHistory(i)},L=t=>{const o={pointCloudBoxList:r,polygonList:d};t.pointCloudBoxList&&(o.pointCloudBoxList=t.pointCloudBoxList),t.polygonList&&(o.polygonList=t.polygonList),e.pushHistory(o)},C=t=>{d.find(i=>i.id===t.id)&&e.pushHistory({pointCloudBoxList:r,polygonList:d.map(i=>i.id===t.id?t:__spreadValues({},i))})},P=({pointCloudBoxList:t,polygonList:o})=>{e.initRecord([{pointCloudBoxList:t,polygonList:o}],!0)},y=t=>{if(!t)return;const{pointCloudBoxList:o,polygonList:i}=t;if(o){r.length!==o.length&&s();const g=r.filter(l=>o.findIndex(c=>c.id===l.id)>=0),x=o.filter(l=>r.findIndex(c=>c.id!==l.id)>=0);g.forEach(l=>{u==null||u.removeObjectByName(l.id)}),x.forEach(l=>{u==null||u.generateBox(l)}),n(o)}i&&f(i),console.log("asd",o,i),p==null||p.updatePolygonList(o!=null?o:[],i!=null?i:[])};return{addHistory:a,pushHistoryWithList:L,initHistory:P,pushHistoryUnderUpdatePolygon:C,redo:()=>{y(e.redo())},undo:()=>{y(e.undo())}}};exports.useHistory=useHistory;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var lbAnnotation=require("@labelbee/lb-annotation"),lbUtils=require("@labelbee/lb-utils"),React=require("react"),PointCloudContext=require("../PointCloudContext.js"),useSingleBox=require("./useSingleBox.js"),_=require("lodash"),ctx=require("../../../store/ctx.js"),StepUtils=require("../../../utils/StepUtils.js"),index=require("../../../utils/index.js"),actionCreators=require("../../../store/annotation/actionCreators.js"),antd=require("antd"),reactI18next=require("react-i18next");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var ___default=_interopDefaultLegacy(_),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,o,n)=>o in e?__defProp(e,o,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[o]=n,__spreadValues=(e,o)=>{for(var n in o||(o={}))__hasOwnProp.call(o,n)&&__defNormalProp(e,n,o[n]);if(__getOwnPropSymbols)for(var n of __getOwnPropSymbols(o))__propIsEnum.call(o,n)&&__defNormalProp(e,n,o[n]);return e},__spreadProps=(e,o)=>__defProps(e,__getOwnPropDescs(o)),__async=(e,o,n)=>new Promise((l,t)=>{var i=s=>{try{u(n.next(s))}catch(g){t(g)}},v=s=>{try{u(n.throw(s))}catch(g){t(g)}},u=s=>s.done?l(s.value):Promise.resolve(s.value).then(i,v);u((n=n.apply(e,o)).next())});const DEFAULT_SCOPE=5,DEFAULT_RADIUS=90,PointCloudView={"3D":"3D",Top:"Top",Side:"Side",Back:"Back"},transferCanvas2World=(e,o)=>{const{width:n,height:l}=o,{x:t,y:i}=e;return{x:-i+l/2,y:-(t-n/2)}},topViewPolygon2PointCloud=(e,o,n,l,t)=>{const[i,v,u,s]=e.pointList.map(f=>transferCanvas2World(f,o)),g=lbAnnotation.MathUtils.getLineCenterPoint([i,u]),x=lbAnnotation.MathUtils.getLineLength(i,v),p=lbAnnotation.MathUtils.getLineLength(v,u),C=lbAnnotation.MathUtils.getRadiusFromQuadrangle(e.pointList);let m=0,y=1,w={};if(n){const f=n.getSensesPointZAxisInPolygon([i,v,u,s]);m=(f.maxZ+f.minZ)/2,y=f.maxZ-f.minZ,w={count:f.zCount}}l&&(m=l.center.z,y=l.depth);const h={center:{x:g.x,y:g.y,z:m},width:p,height:x,depth:y,rotation:C,id:e.id},O=__spreadValues(l?__spreadValues(__spreadValues({},l),h):__spreadProps(__spreadValues({},h),{attribute:"",valid:!0}),w);return t&&Object.assign(O,t),O},sideViewPolygon2PointCloud=(e,o,n,l)=>{const[t,i,v]=e.pointList,[u,s,g]=o.pointList,x=lbAnnotation.MathUtils.getLineCenterPoint([t,v]),p=lbAnnotation.MathUtils.getLineCenterPoint([u,g]),C={x:x.x-p.x,y:x.y-p.y},m=Math.cos(n.rotation),y=Math.sin(n.rotation),w={x:C.x,y:C.x*y+C.y*m,z:x.y-p.y},h=lbAnnotation.MathUtils.getLineLength(t,i),O=lbAnnotation.MathUtils.getLineLength(u,s),f=h-O,b=lbAnnotation.MathUtils.getLineLength(i,v),I=lbAnnotation.MathUtils.getLineLength(s,g),S=b-I,{newBoxParams:U}=l.getNewBoxBySideUpdate(w,S,f,n);return U},synchronizeSideView=(e,o,n,l)=>{if(!n)return;const{pointCloud2dOperation:t,pointCloudInstance:i}=n;i.loadPCDFileByBox(l,e,{width:DEFAULT_SCOPE,depth:DEFAULT_SCOPE});const{cameraPositionVector:v}=i.updateOrthoCamera(e,lbUtils.EPerspectiveView.Left);i.setInitCameraPosition(v);const{polygon2d:u,zoom:s}=i.getBoxSidePolygon2DCoordinate(e);i.camera.zoom=s,i.camera.updateProjectionMatrix(),i.render(),t.initPosition(),t.zoomChangeOnCenter(s),t.setResultAndSelectedID([{id:o.id,valid:e.valid,pointList:u,textAttribute:"",isRect:!0}],o.id)},synchronizeBackView=(e,o,n,l)=>{if(!n)return;const{pointCloud2dOperation:t,pointCloudInstance:i}=n;i.loadPCDFileByBox(l,e,{height:DEFAULT_SCOPE,depth:DEFAULT_SCOPE});const{cameraPositionVector:v}=i.updateOrthoCamera(e,lbUtils.EPerspectiveView.Back);i.setInitCameraPosition(v);const{polygon2d:u,zoom:s}=i.getBoxBackPolygon2DCoordinate(e);i.camera.zoom=s,i.camera.updateProjectionMatrix(),i.render(),t.initPosition(),t.zoomChangeOnCenter(s),t.setResultAndSelectedID([{id:o.id,valid:e.valid,pointList:u,textAttribute:"",isRect:!0}],o.id)},synchronizeTopView=(e,o,n,l)=>{var t;if(!n||!l)return;l.generateBox(e,o.id),l.updateCameraByBox(e,lbUtils.EPerspectiveView.Top),l.render();const{pointCloud2dOperation:i,pointCloudInstance:v}=n,{polygon2d:u}=v.getBoxTopPolygon2DCoordinate(e),s=[...i.polygonList],g=s.find(x=>x.id===o.id);g?g.pointList=u:s.push({id:o.id,pointList:u,textAttribute:"",isRect:!0,valid:(t=e.valid)!=null?t:!0}),i.setResultAndSelectedID(s,o.id)},usePointCloudViews=()=>{const e=React.useContext(PointCloudContext.PointCloudContext),{topViewInstance:o,sideViewInstance:n,backViewInstance:l,mainViewInstance:t,addPointCloudBox:i,setSelectedIDs:v,selectedIDs:u,pointCloudBoxList:s,setPointCloudResult:g}=e,{updateSelectedBox:x}=useSingleBox.useSingleBox(),{currentData:p,config:C}=ctx.useSelector(r=>{const{stepList:a,step:c,imgList:d,imgIndex:P}=r.annotation;return{currentData:d[P],config:index.jsonParser(StepUtils.getCurrentStepInfo(c,a).config)}}),m=ctx.useDispatch(),{selectedBox:y}=useSingleBox.useSingleBox(),{t:w}=reactI18next.useTranslation(),h=y==null?void 0:y.info;if(!o||!n)return{topViewAddBox:()=>{},topViewSelectedChanged:()=>{},sideViewUpdateBox:()=>{}};const{pointCloudInstance:O}=o,f=r=>{t==null||t.generateBox(r),t==null||t.controls.update(),t==null||t.render()},b=(r,a)=>{var c,d,P;const L=topViewPolygon2PointCloud(r,a,O,void 0,{attribute:(P=(d=(c=C==null?void 0:C.attributeList)==null?void 0:c[0])==null?void 0:d.value)!=null?P:""}),V=o==null?void 0:o.pointCloud2dOperation,B=L;if((C==null?void 0:C.lowerLimitPointsNumInBox)&&typeof L.count=="number"&&L.count<C.lowerLimitPointsNumInBox){antd.message.info(w("LowerLimitPointsNumInBox",{num:C.lowerLimitPointsNumInBox})),V.deletePolygon(L.id);return}V.setSelectedIDs([r.id]),v(B.id),D(PointCloudView.Top,r,B),i(B)},I=()=>{const r=y==null?void 0:y.info,a=o==null?void 0:o.pointCloud2dOperation;if(a.setSelectedIDs(u),!r||!a)return;const c=a.selectedPolygon;D(PointCloudView.Top,c,r)},S=(r,a,c)=>{if(h){let d=sideViewPolygon2PointCloud(r,a,h,n.pointCloudInstance);if(t){const{count:P}=t.getSensesPointZAxisInPolygon(t.getCuboidFromPointCloudBox(d).polygonPointList,[d.center.z-d.depth/2,d.center.z+d.depth/2]);d=__spreadProps(__spreadValues({},d),{count:P})}x(d),D(c,r,d)}},U=(r,a)=>{S(r,a,PointCloudView.Side)},j=(r,a)=>{S(r,a,PointCloudView.Back)},z=(r,a)=>{if(h){const c=topViewPolygon2PointCloud(r,a,o.pointCloudInstance,h);Object.assign(h,___default.default.pickBy(c,(d,P)=>["width","height","x","y"])),x(c),D(PointCloudView.Top,r,h)}},D=(r,a,c)=>{const d=p==null?void 0:p.url,P={[PointCloudView.Side]:()=>{synchronizeSideView(c,a,n,d)},[PointCloudView.Back]:()=>{l&&synchronizeBackView(c,a,l,d)},[PointCloudView.Top]:()=>{synchronizeTopView(c,a,o,t)}};Object.keys(P).forEach(L=>{L!==r&&P[L]()}),f(c),t==null||t.highlightOriginPointCloud(c)};return{topViewAddBox:b,topViewSelectedChanged:I,topViewUpdateBox:z,sideViewUpdateBox:U,backViewUpdateBox:j,pointCloudBoxListUpdated:r=>{o.updatePolygonList(r),t==null||t.generateBoxes(r)},clearAllResult:()=>{s.forEach(r=>{t==null||t.removeObjectByName(r.id)}),t==null||t.render(),g([]),o.pointCloud2dOperation.clearActiveStatus(),o.pointCloud2dOperation.clearResult()},initPointCloud3d:()=>{!t||(t.initPerspectiveCamera(),t.initRenderer(),t.render())},updatePointCloudData:()=>__async(void 0,null,function*(){var r,a,c,d,P,L;if(!(p==null?void 0:p.url)||!t)return;if(actionCreators.SetPointCloudLoading(m,!0),yield t.loadPCDFile(p.url,(r=C==null?void 0:C.radius)!=null?r:DEFAULT_RADIUS),s.forEach(B=>{t==null||t.removeObjectByName(B.id)}),p.result){const B=lbUtils.PointCloudUtils.getBoxParamsFromResultList(p.result),A=lbUtils.PointCloudUtils.getPolygonListFromResultList(p.result);B.forEach(R=>{t==null||t.generateBox(R)}),e.setPointCloudResult(B),e.setPolygonList(A)}else e.setPointCloudResult([]),e.setPolygonList([]);t.updateTopCamera();const V=(c=(a=index.jsonParser(p.result))==null?void 0:a.valid)!=null?c:!0;e.setPointCloudValid(V),(d=e.sideViewInstance)==null||d.clearAllData(),(P=e.backViewInstance)==null||P.clearAllData(),o.updateData(p.url,p.result,{radius:(L=C==null?void 0:C.radius)!=null?L:DEFAULT_RADIUS}),actionCreators.SetPointCloudLoading(m,!1)})}};exports.synchronizeBackView=synchronizeBackView,exports.synchronizeSideView=synchronizeSideView,exports.synchronizeTopView=synchronizeTopView,exports.topViewPolygon2PointCloud=topViewPolygon2PointCloud,exports.transferCanvas2World=transferCanvas2World,exports.usePointCloudViews=usePointCloudViews;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var lbAnnotation=require("@labelbee/lb-annotation"),lbUtils=require("@labelbee/lb-utils"),React=require("react"),PointCloudContext=require("../PointCloudContext.js"),useSingleBox=require("./useSingleBox.js"),_=require("lodash"),ctx=require("../../../store/ctx.js"),StepUtils=require("../../../utils/StepUtils.js"),index=require("../../../utils/index.js"),actionCreators=require("../../../store/annotation/actionCreators.js"),antd=require("antd"),reactI18next=require("react-i18next"),useHistory=require("./useHistory.js"),usePolygon=require("./usePolygon.js");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var ___default=_interopDefaultLegacy(_),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(t,o,i)=>o in t?__defProp(t,o,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[o]=i,__spreadValues=(t,o)=>{for(var i in o||(o={}))__hasOwnProp.call(o,i)&&__defNormalProp(t,i,o[i]);if(__getOwnPropSymbols)for(var i of __getOwnPropSymbols(o))__propIsEnum.call(o,i)&&__defNormalProp(t,i,o[i]);return t},__spreadProps=(t,o)=>__defProps(t,__getOwnPropDescs(o)),__async=(t,o,i)=>new Promise((l,e)=>{var n=r=>{try{u(i.next(r))}catch(v){e(v)}},g=r=>{try{u(i.throw(r))}catch(v){e(v)}},u=r=>r.done?l(r.value):Promise.resolve(r.value).then(n,g);u((i=i.apply(t,o)).next())});const DEFAULT_SCOPE=5,DEFAULT_RADIUS=90,PointCloudView={"3D":"3D",Top:"Top",Side:"Side",Back:"Back"},transferCanvas2World=(t,o)=>{const{width:i,height:l}=o,{x:e,y:n}=t;return{x:-n+l/2,y:-(e-i/2)}},topViewPolygon2PointCloud=(t,o,i,l,e)=>{const[n,g,u,r]=t.pointList.map(h=>transferCanvas2World(h,o)),v=lbAnnotation.MathUtils.getLineCenterPoint([n,u]),f=lbAnnotation.MathUtils.getLineLength(n,g),S=lbAnnotation.MathUtils.getLineLength(g,u),O=lbAnnotation.MathUtils.getRadiusFromQuadrangle(t.pointList);let y=0,p=1,P={};if(i){const h=i.getSensesPointZAxisInPolygon([n,g,u,r]);y=(h.maxZ+h.minZ)/2,p=h.maxZ-h.minZ,P={count:h.zCount}}l&&(y=l.center.z,p=l.depth);const D={center:{x:v.x,y:v.y,z:y},width:S,height:f,depth:p,rotation:O,id:t.id},x=__spreadValues(l?__spreadValues(__spreadValues({},l),D):__spreadProps(__spreadValues({},D),{attribute:"",valid:!0}),P);return e&&Object.assign(x,e),x},sideViewPolygon2PointCloud=(t,o,i,l)=>{const[e,n,g]=t.pointList,[u,r,v]=o.pointList,f=lbAnnotation.MathUtils.getLineCenterPoint([e,g]),S=lbAnnotation.MathUtils.getLineCenterPoint([u,v]),y={x:{x:f.x-S.x,y:f.y-S.y}.x,y:0,z:f.y-S.y},p=lbAnnotation.MathUtils.getLineLength(e,n),P=lbAnnotation.MathUtils.getLineLength(u,r),D=p-P,x=lbAnnotation.MathUtils.getLineLength(n,g),h=lbAnnotation.MathUtils.getLineLength(r,v),L=x-h,{newBoxParams:b}=l.getNewBoxBySideUpdate(y,L,D,i);return b},synchronizeSideView=(t,o,i,l)=>{if(!i)return;const{pointCloud2dOperation:e,pointCloudInstance:n}=i;n.loadPCDFileByBox(l,t,{width:DEFAULT_SCOPE,depth:DEFAULT_SCOPE});const{cameraPositionVector:g}=n.updateOrthoCamera(t,lbUtils.EPerspectiveView.Left);n.setInitCameraPosition(g);const{polygon2d:u,zoom:r}=n.getBoxSidePolygon2DCoordinate(t);n.camera.zoom=r,n.camera.updateProjectionMatrix(),n.render(),e.initPosition(),e.zoomChangeOnCenter(r),e.setResultAndSelectedID([{id:o.id,valid:t.valid,pointList:u,textAttribute:"",isRect:!0}],o.id)},synchronizeBackView=(t,o,i,l)=>{if(!i)return;const{pointCloud2dOperation:e,pointCloudInstance:n}=i;n.loadPCDFileByBox(l,t,{height:DEFAULT_SCOPE,depth:DEFAULT_SCOPE});const{cameraPositionVector:g}=n.updateOrthoCamera(t,lbUtils.EPerspectiveView.Back);n.setInitCameraPosition(g);const{polygon2d:u,zoom:r}=n.getBoxBackPolygon2DCoordinate(t);n.camera.zoom=r,n.camera.updateProjectionMatrix(),n.render(),e.initPosition(),e.zoomChangeOnCenter(r),e.setResultAndSelectedID([{id:o.id,valid:t.valid,pointList:u,textAttribute:"",isRect:!0}],o.id)},synchronizeTopView=(t,o,i,l)=>{var e;if(!i||!l)return;l.generateBox(t,o.id),l.updateCameraByBox(t,lbUtils.EPerspectiveView.Top),l.render();const{pointCloud2dOperation:n,pointCloudInstance:g}=i,{polygon2d:u}=g.getBoxTopPolygon2DCoordinate(t),r=[...n.polygonList],v=r.find(f=>f.id===o.id);v?v.pointList=u:r.push({id:o.id,pointList:u,textAttribute:"",isRect:!0,valid:(e=t.valid)!=null?e:!0}),n.setResultAndSelectedID(r,o.id)},usePointCloudViews=()=>{const t=React.useContext(PointCloudContext.PointCloudContext),{topViewInstance:o,sideViewInstance:i,backViewInstance:l,mainViewInstance:e,addPointCloudBox:n,setSelectedIDs:g,selectedIDs:u,pointCloudBoxList:r}=t,{addHistory:v,initHistory:f,pushHistoryUnderUpdatePolygon:S}=useHistory.useHistory(),{selectedPolygon:O}=usePolygon.usePolygon(),{updateSelectedBox:y}=useSingleBox.useSingleBox(),{currentData:p,config:P}=ctx.useSelector(s=>{const{stepList:a,step:c,imgList:d,imgIndex:C}=s.annotation;return{currentData:d[C],config:index.jsonParser(StepUtils.getCurrentStepInfo(c,a).config)}}),D=ctx.useDispatch(),{selectedBox:x}=useSingleBox.useSingleBox(),{t:h}=reactI18next.useTranslation(),L=x==null?void 0:x.info;if(!o||!i)return{topViewAddBox:()=>{},topViewSelectedChanged:()=>{},sideViewUpdateBox:()=>{}};const{pointCloudInstance:b}=o,z=s=>{e==null||e.generateBox(s),e==null||e.controls.update(),e==null||e.render()},A=({newPolygon:s,size:a,imgList:c})=>{var d,C,m;const I=c,B=topViewPolygon2PointCloud(s,a,b,void 0,{attribute:(m=(C=(d=P==null?void 0:P.attributeList)==null?void 0:d[0])==null?void 0:C.value)!=null?m:"",trackID:lbUtils.PointCloudUtils.getNextTrackID({imgList:I,extraBoxList:r})}),V=o==null?void 0:o.pointCloud2dOperation,w=B;if((P==null?void 0:P.lowerLimitPointsNumInBox)&&typeof B.count=="number"&&B.count<P.lowerLimitPointsNumInBox){antd.message.info(h("LowerLimitPointsNumInBox",{num:P.lowerLimitPointsNumInBox})),V.deletePolygon(B.id);return}V.setSelectedIDs([s.id]),g(w.id),U(PointCloudView.Top,s,w),n(w),v({newBoxParams:w})},T=()=>{const s=x==null?void 0:x.info,a=o==null?void 0:o.pointCloud2dOperation;if(a.setSelectedIDs(u),!s||!a)return;const c=a.selectedPolygon;U(PointCloudView.Top,c,s)},j=(s,a,c)=>{if(L){let d=sideViewPolygon2PointCloud(s,a,L,i.pointCloudInstance);if(e){const{count:C}=e.getSensesPointZAxisInPolygon(e.getCuboidFromPointCloudBox(d).polygonPointList,[d.center.z-d.depth/2,d.center.z+d.depth/2]);d=__spreadProps(__spreadValues({},d),{count:C})}y(d),U(c,s,d)}},k=(s,a)=>{j(s,a,PointCloudView.Side)},q=(s,a)=>{j(s,a,PointCloudView.Back)},R=(s,a)=>{if(O){S(s);return}if(L){const c=topViewPolygon2PointCloud(s,a,o.pointCloudInstance,L);Object.assign(L,___default.default.pickBy(c,(d,C)=>["width","height","x","y"])),y(c),U(PointCloudView.Top,s,L)}},U=(s,a,c)=>{const d=p==null?void 0:p.url,C={[PointCloudView.Side]:()=>{synchronizeSideView(c,a,i,d)},[PointCloudView.Back]:()=>{l&&synchronizeBackView(c,a,l,d)},[PointCloudView.Top]:()=>{synchronizeTopView(c,a,o,e)}};Object.keys(C).forEach(m=>{m!==s&&C[m]()}),z(c),e==null||e.highlightOriginPointCloud(c)};return{topViewAddBox:A,topViewSelectedChanged:T,topViewUpdateBox:R,sideViewUpdateBox:k,backViewUpdateBox:q,pointCloudBoxListUpdated:s=>{o.updatePolygonList(s),e==null||e.generateBoxes(s)},initPointCloud3d:()=>{!e||(e.initPerspectiveCamera(),e.initRenderer(),e.render())},updatePointCloudData:()=>__async(void 0,null,function*(){var s,a,c,d,C,m;if(!(p==null?void 0:p.url)||!e)return;actionCreators.SetPointCloudLoading(D,!0),yield e.loadPCDFile(p.url,(s=P==null?void 0:P.radius)!=null?s:DEFAULT_RADIUS),r.forEach(w=>{e==null||e.removeObjectByName(w.id)});let I=[],B=[];p.result?(I=lbUtils.PointCloudUtils.getBoxParamsFromResultList(p.result),B=lbUtils.PointCloudUtils.getPolygonListFromResultList(p.result),I.forEach(w=>{e==null||e.generateBox(w)}),t.setPointCloudResult(I),t.setPolygonList(B)):(t.setPointCloudResult([]),t.setPolygonList([])),f({pointCloudBoxList:I,polygonList:B}),e.updateTopCamera();const V=(c=(a=index.jsonParser(p.result))==null?void 0:a.valid)!=null?c:!0;t.setPointCloudValid(V),(d=t.sideViewInstance)==null||d.clearAllData(),(C=t.backViewInstance)==null||C.clearAllData(),o.updateData(p.url,p.result,{radius:(m=P==null?void 0:P.radius)!=null?m:DEFAULT_RADIUS}),actionCreators.SetPointCloudLoading(D,!1)})}};exports.synchronizeBackView=synchronizeBackView,exports.synchronizeSideView=synchronizeSideView,exports.synchronizeTopView=synchronizeTopView,exports.topViewPolygon2PointCloud=topViewPolygon2PointCloud,exports.transferCanvas2World=transferCanvas2World,exports.usePointCloudViews=usePointCloudViews;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),PointCloudContext=require("../PointCloudContext.js");const usePolygon=()=>{const{polygonList:e,setPolygonList:t}=React.useContext(PointCloudContext.PointCloudContext);return{addPolygon:o=>{t(e.concat(o))},deletePolygon:o=>{const n=e.filter(s=>s.id!==o);t([...n])}}};exports.usePolygon=usePolygon;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),PointCloudContext=require("../PointCloudContext.js"),useHistory=require("./useHistory.js"),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(t,e,o)=>e in t?__defProp(t,e,{enumerable:!0,configurable:!0,writable:!0,value:o}):t[e]=o,__spreadValues=(t,e)=>{for(var o in e||(e={}))__hasOwnProp.call(e,o)&&__defNormalProp(t,o,e[o]);if(__getOwnPropSymbols)for(var o of __getOwnPropSymbols(e))__propIsEnum.call(e,o)&&__defNormalProp(t,o,e[o]);return t};const usePolygon=()=>{const{polygonList:t,setPolygonList:e,selectedID:o}=React.useContext(PointCloudContext.PointCloudContext),{addHistory:l,pushHistoryWithList:i}=useHistory.useHistory(),a=t.find(r=>r.id===o);return{addPolygon:r=>{e(t.concat(r)),l({newPolygon:r})},deletePolygon:r=>{const s=t.filter(n=>n.id!==r).map(n=>__spreadValues({},n));e(s),i({polygonList:s})},selectedPolygon:a}};exports.usePolygon=usePolygon;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),_=require("lodash"),PointCloudContext=require("../PointCloudContext.js"),lbAnnotation=require("@labelbee/lb-annotation");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var ___default=_interopDefaultLegacy(_);const{ESortDirection}=lbAnnotation.cAnnotation,useSingleBox=()=>{const{pointCloudBoxList:e,setPointCloudResult:a,topViewInstance:i,backViewInstance:c,sideViewInstance:u,selectedIDs:C,selectedID:r,mainViewInstance:d,setSelectedIDs:v}=React.useContext(PointCloudContext.PointCloudContext),l=React.useMemo(()=>{const t=e.findIndex(o=>o.id===r);if(t>-1)return{info:e[t],index:t}},[r,e]),f=React.useCallback(t=>{(l==null?void 0:l.info)&&(e.splice(l.index,1,___default.default.merge(l.info,t)),a(___default.default.cloneDeep(e)))},[r,e]),b=React.useCallback((t,o)=>{const n=e.findIndex(x=>x.id===o);n>-1&&(e.splice(n,1,___default.default.merge(e[n],t)),a(___default.default.cloneDeep(e)))},[e]),s=React.useCallback(t=>{i==null||i.pointCloud2dOperation.setPolygonValidAndRender(t,!0),u==null||u.pointCloud2dOperation.setPolygonValidAndRender(t,!0),c==null||c.pointCloud2dOperation.setPolygonValidAndRender(t,!0)},[i,u,c]),B=React.useCallback(()=>{if(l==null?void 0:l.info){const{id:t,valid:o=!0}=l.info;f({valid:!o}),s(t)}},[s,l]),I=React.useCallback(t=>{const o=e.find(n=>n.id===t);if(o){const{id:n,valid:x=!0}=o;b({valid:!x},n),s(n)}},[s,e]),p=React.useCallback((t=ESortDirection.ascend)=>{if(!i||C.length>1)return;const{pointCloud2dOperation:o}=i,n=o.switchToNextPolygon(t);n&&v(n)},[i]);return{selectedBox:l,updateSelectedBox:f,changeSelectedBoxValid:B,changeBoxValidByID:I,selectNextBox:p,selectPrevBox:()=>{p(ESortDirection.descend)},deletePointCloudBox:t=>{a(e.filter(o=>o.id!==t)),d==null||d.removeObjectByName(t),d==null||d.render()}}};exports.useSingleBox=useSingleBox;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),_=require("lodash"),PointCloudContext=require("../PointCloudContext.js"),lbAnnotation=require("@labelbee/lb-annotation"),useHistory=require("./useHistory.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var ___default=_interopDefaultLegacy(_);const{ESortDirection}=lbAnnotation.cAnnotation,useSingleBox=()=>{const{pointCloudBoxList:e,setPointCloudResult:u,topViewInstance:l,backViewInstance:a,sideViewInstance:c,selectedIDs:C,selectedID:r,mainViewInstance:d,setSelectedIDs:v}=React.useContext(PointCloudContext.PointCloudContext),{pushHistoryWithList:B}=useHistory.useHistory(),i=React.useMemo(()=>{const t=e.findIndex(o=>o.id===r);if(t>-1)return{info:e[t],index:t}},[r,e]),f=React.useCallback(t=>{if(i==null?void 0:i.info){e.splice(i.index,1,___default.default.merge(i.info,t));const o=___default.default.cloneDeep(e);u(o),B({pointCloudBoxList:o})}},[r,e]),b=React.useCallback((t,o)=>{const n=e.findIndex(x=>x.id===o);n>-1&&(e.splice(n,1,___default.default.merge(e[n],t)),u(___default.default.cloneDeep(e)))},[e]),s=React.useCallback(t=>{l==null||l.pointCloud2dOperation.setPolygonValidAndRender(t,!0),c==null||c.pointCloud2dOperation.setPolygonValidAndRender(t,!0),a==null||a.pointCloud2dOperation.setPolygonValidAndRender(t,!0)},[l,c,a]),y=React.useCallback(()=>{if(i==null?void 0:i.info){const{id:t,valid:o=!0}=i.info;f({valid:!o}),s(t)}},[s,i]),I=React.useCallback(t=>{const o=e.find(n=>n.id===t);if(o){const{id:n,valid:x=!0}=o;b({valid:!x},n),s(n)}},[s,e]),p=React.useCallback((t=ESortDirection.ascend)=>{if(!l||C.length>1)return;const{pointCloud2dOperation:o}=l,n=o.switchToNextPolygon(t);n&&v(n)},[l]);return{selectedBox:i,updateSelectedBox:f,changeSelectedBoxValid:y,changeBoxValidByID:I,selectNextBox:p,selectPrevBox:()=>{p(ESortDirection.descend)},deletePointCloudBox:t=>{u(e.filter(o=>o.id!==t)),d==null||d.removeObjectByName(t),d==null||d.render()}}};exports.useSingleBox=useSingleBox;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),PointCloudContext=require("../PointCloudContext.js"),lbAnnotation=require("@labelbee/lb-annotation");const{EToolName,EPolygonPattern}=lbAnnotation.cTool,useStatus=()=>{const{topViewInstance:t,mainViewInstance:e,pointCloudBoxList:a,setPointCloudResult:r}=React.useContext(PointCloudContext.PointCloudContext),[u,l]=React.useState(EToolName.Rect);return{clearAllResult:()=>{a.forEach(n=>{e==null||e.removeObjectByName(n.id)}),e==null||e.render(),r([]),t==null||t.pointCloud2dOperation.clearActiveStatus(),t==null||t.pointCloud2dOperation.clearResult()},updatePointCloudPattern:n=>{const o=t==null?void 0:t.pointCloud2dOperation;if(!!o)switch(o.clearActiveStatus(),n){case EToolName.Rect:o.setPattern(EPolygonPattern.Rect),l(EToolName.Rect);break;case EToolName.Polygon:o.setPattern(EPolygonPattern.Normal),l(EToolName.Polygon);break}},pointCloudPattern:u}};exports.useStatus=useStatus;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),PointCloudContext=require("../PointCloudContext.js"),lbAnnotation=require("@labelbee/lb-annotation"),useHistory=require("./useHistory.js");const{EToolName,EPolygonPattern}=lbAnnotation.cTool,useStatus=()=>{const{topViewInstance:t,mainViewInstance:e,pointCloudBoxList:r,setPointCloudResult:s,setPolygonList:i}=React.useContext(PointCloudContext.PointCloudContext),[u,l]=React.useState(EToolName.Rect),{pushHistoryWithList:a}=useHistory.useHistory();return{clearAllResult:()=>{r.forEach(n=>{e==null||e.removeObjectByName(n.id)}),e==null||e.render(),s([]),i([]),t==null||t.pointCloud2dOperation.clearActiveStatus(),t==null||t.pointCloud2dOperation.clearResult(),a({pointCloudBoxList:[],polygonList:[]})},updatePointCloudPattern:n=>{const o=t==null?void 0:t.pointCloud2dOperation;if(!!o)switch(o.clearActiveStatus(),n){case EToolName.Rect:o.setPattern(EPolygonPattern.Rect),l(EToolName.Rect);break;case EToolName.Polygon:o.setPattern(EPolygonPattern.Normal),l(EToolName.Polygon);break}},pointCloudPattern:u}};exports.useStatus=useStatus;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.EStepType=void 0,function(o){o[o.Check=0]="Check",o[o.ANNOTATION=1]="ANNOTATION",o[o.QUALITY_INSPECTION=2]="QUALITY_INSPECTION",o[o.PRE_ANNOTATION=3]="PRE_ANNOTATION",o[o.MANUAL_CORRECTION=4]="MANUAL_CORRECTION"}(exports.EStepType||(exports.EStepType={})),exports.ESubmitType=void 0,function(o){o[o.Backward=1]="Backward",o[o.Forward=2]="Forward",o[o.Jump=3]="Jump",o[o.Quit=4]="Quit",o[o.Export=5]="Export",o[o.StepChanged=6]="StepChanged",o[o.Save=7]="Save"}(exports.ESubmitType||(exports.ESubmitType={}));const prefix="bee",componentCls=`${prefix}-component`;exports.componentCls=componentCls,exports.prefix=prefix;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.EStepType=void 0,function(o){o[o.Check=0]="Check",o[o.ANNOTATION=1]="ANNOTATION",o[o.QUALITY_INSPECTION=2]="QUALITY_INSPECTION",o[o.PRE_ANNOTATION=3]="PRE_ANNOTATION",o[o.MANUAL_CORRECTION=4]="MANUAL_CORRECTION"}(exports.EStepType||(exports.EStepType={})),exports.ESubmitType=void 0,function(o){o[o.Backward=1]="Backward",o[o.Forward=2]="Forward",o[o.Jump=3]="Jump",o[o.Quit=4]="Quit",o[o.Export=5]="Export",o[o.StepChanged=6]="StepChanged",o[o.Save=7]="Save",o[o.BatchUpdateTrackID=8]="BatchUpdateTrackID",o[o.SyncImgList=10001]="SyncImgList"}(exports.ESubmitType||(exports.ESubmitType={}));const prefix="bee",componentCls=`${prefix}-component`;exports.componentCls=componentCls,exports.prefix=prefix;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),ctx=require("../store/ctx.js"),Actions=require("../store/Actions.js");const useCustomToolInstance=({basicInfo:e}={})=>{var r;const s=ctx.useDispatch(),o=React.useRef({valid:(r=e==null?void 0:e.valid)!=null?r:!0,exportData:()=>[[],{}],exportCustomData:()=>({}),clearResult:()=>{},singleOn:()=>{},on:()=>{},unbind:()=>{},setResult:()=>{},history:{initRecord:()=>{},pushHistory:()=>{}},setDefaultAttribute:t=>{},setSubAttribute:(t,a)=>{},setValid:()=>{},updateRotate:()=>{}}),u=t=>{s({type:Actions.ANNOTATION_ACTIONS.SET_TOOL,payload:{instance:t}})},n=()=>{s({type:Actions.ANNOTATION_ACTIONS.SET_TOOL,payload:{instance:void 0}})};return React.useEffect(()=>(u(o.current),()=>{n()}),[]),{toolInstanceRef:o}};exports.useCustomToolInstance=useCustomToolInstance;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),ctx=require("../store/ctx.js"),Actions=require("../store/Actions.js");const useCustomToolInstance=({basicInfo:e}={})=>{var r;const s=ctx.useDispatch(),o=React.useRef({valid:(r=e==null?void 0:e.valid)!=null?r:!0,exportData:()=>[[],{}],exportCustomData:()=>({}),clearResult:()=>{},singleOn:()=>{},on:()=>{},unbind:()=>{},setResult:()=>{},history:{initRecord:()=>{},pushHistory:()=>{}},setDefaultAttribute:t=>{},setSubAttribute:(t,a)=>{},setValid:()=>{},updateRotate:()=>{},redo:()=>{},undo:()=>{}}),u=t=>{s({type:Actions.ANNOTATION_ACTIONS.SET_TOOL,payload:{instance:t}})},n=()=>{s({type:Actions.ANNOTATION_ACTIONS.SET_TOOL,payload:{instance:void 0}})};return React.useEffect(()=>(u(o.current),()=>{n()}),[]),{toolInstanceRef:o}};exports.useCustomToolInstance=useCustomToolInstance;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const ANNOTATION_ACTIONS={UPDATE_TOOL_INSTANCE:"@@UPDATE_TOOL_INSTANCE",UPDATE_IMG_LIST:"@@UPDATE_IMG_LIST",UPDATE_ANNOTATION_CONFIG:"@@UPDATE_ANNOTATION_CONFIG",LOAD_FILE_DATA:"@@LOAD_FILE_DATA",SUBMIT_FILE_DATA:"@@SUBMIT_FILE_DATA",SET_TASK_CONFIG:"@@SET_TASK_CONFIG",INIT_TOOL:"@@INIT_TOOL",SET_TOOL:"@@SET_TOOL",UPDATE_ON_SUBMIT:"@@UPDATE_ON_SUBMIT",UPDATE_ON_SAVE:"@@UPDATE_ON_SAVE",UPDATE_ON_PAGE_CHANGE:"@@UPDATE_ON_PAGE_CHANGE",UPDATE_ON_STEP_CHANGE:"@@UPDATE_ON_STEP_CHANGE",UPDATE_ROTATE:"@@UPDATE_ROTATE",UPDATE_GET_FILE_DATA:"@@UPDATE_GET_FILE_DATA",UPDATE_PAGE_SIZE:"@@UPDATE_PAGE_SIZE",UPDATE_LOAD_FILE_LIST:"@@UPDATE_LOAD_FILE_LIST",GET_FILE_DATA:"@@GET_FILE_DATA",SET_FILE_DATA:"@@SET_FILE_DATA",COPY_BACKWARD_RESULT:"@@COPY_BACKWARD_RESULT",SET_STEP:"@@SET_STEP",SUBMIT_RESULT:"@@SUBMIT_RESULT",SAVE_RESULT:"@@SAVE_RESULT",SET_BASIC_INDEX:"@@SET_BASIC_INDEX",CALC_STEP_PROGRESS:"@@CALC_STEP_PROGRESS",SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED:"@@SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED",SKIP_BEFORE_PAGE_TURNING:"@@SKIP_BEFORE_PAGE_TURNING",UPDATE_BEFORE_ROTATE:"@@UPDATE_BEFORE_ROTATE",SET_LOADING:"@@SET_LOADING",SET_POINT_CLOUD_LOADING:"@@SET_POINT_CLOUD_LOADING",SET_TASK_STEP_LIST:"@@SET_TASK_STEP_LIST",UPDATE_ANNOTATION_VALID:"@@UPDATE_ANNOTATION_VALID"},IMAGE_ATTRIBUTE_ACTIONS={UPDATE_IMG_ATTRIBUTE:"@@UPDATE_IMG_ATTRIBUTE",INIT_IMG_ATTRIBUTE:"@@INIT_IMG_ATTRIBUTE"},TOOL_STYLE_ACTIONS={INIT_TOOL_STYLE_CONFIG:"@@INIT_TOOL_STYLE_CONFIG",UPDATE_TOOL_STYLE_CONFIG:"@@UPDATE_TOOL_STYLE_CONFIG"};exports.ANNOTATION_ACTIONS=ANNOTATION_ACTIONS,exports.IMAGE_ATTRIBUTE_ACTIONS=IMAGE_ATTRIBUTE_ACTIONS,exports.TOOL_STYLE_ACTIONS=TOOL_STYLE_ACTIONS;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const ANNOTATION_ACTIONS={UPDATE_TOOL_INSTANCE:"@@UPDATE_TOOL_INSTANCE",UPDATE_IMG_LIST:"@@UPDATE_IMG_LIST",UPDATE_ANNOTATION_CONFIG:"@@UPDATE_ANNOTATION_CONFIG",LOAD_FILE_DATA:"@@LOAD_FILE_DATA",SUBMIT_FILE_DATA:"@@SUBMIT_FILE_DATA",SET_TASK_CONFIG:"@@SET_TASK_CONFIG",INIT_TOOL:"@@INIT_TOOL",SET_TOOL:"@@SET_TOOL",UPDATE_ON_SUBMIT:"@@UPDATE_ON_SUBMIT",UPDATE_ON_SAVE:"@@UPDATE_ON_SAVE",UPDATE_ON_PAGE_CHANGE:"@@UPDATE_ON_PAGE_CHANGE",UPDATE_ON_STEP_CHANGE:"@@UPDATE_ON_STEP_CHANGE",UPDATE_ROTATE:"@@UPDATE_ROTATE",UPDATE_GET_FILE_DATA:"@@UPDATE_GET_FILE_DATA",UPDATE_PAGE_SIZE:"@@UPDATE_PAGE_SIZE",UPDATE_LOAD_FILE_LIST:"@@UPDATE_LOAD_FILE_LIST",GET_FILE_DATA:"@@GET_FILE_DATA",SET_FILE_DATA:"@@SET_FILE_DATA",COPY_BACKWARD_RESULT:"@@COPY_BACKWARD_RESULT",SET_STEP:"@@SET_STEP",SUBMIT_RESULT:"@@SUBMIT_RESULT",SAVE_RESULT:"@@SAVE_RESULT",SET_BASIC_INDEX:"@@SET_BASIC_INDEX",CALC_STEP_PROGRESS:"@@CALC_STEP_PROGRESS",SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED:"@@SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED",SKIP_BEFORE_PAGE_TURNING:"@@SKIP_BEFORE_PAGE_TURNING",UPDATE_BEFORE_ROTATE:"@@UPDATE_BEFORE_ROTATE",SET_LOADING:"@@SET_LOADING",SET_POINT_CLOUD_LOADING:"@@SET_POINT_CLOUD_LOADING",SET_TASK_STEP_LIST:"@@SET_TASK_STEP_LIST",UPDATE_ANNOTATION_VALID:"@@UPDATE_ANNOTATION_VALID",BATCH_UPDATE_TRACK_ID:"@@BATCH_UPDATE_TRACK_ID"},IMAGE_ATTRIBUTE_ACTIONS={UPDATE_IMG_ATTRIBUTE:"@@UPDATE_IMG_ATTRIBUTE",INIT_IMG_ATTRIBUTE:"@@INIT_IMG_ATTRIBUTE"},TOOL_STYLE_ACTIONS={INIT_TOOL_STYLE_CONFIG:"@@INIT_TOOL_STYLE_CONFIG",UPDATE_TOOL_STYLE_CONFIG:"@@UPDATE_TOOL_STYLE_CONFIG"};exports.ANNOTATION_ACTIONS=ANNOTATION_ACTIONS,exports.IMAGE_ATTRIBUTE_ACTIONS=IMAGE_ATTRIBUTE_ACTIONS,exports.TOOL_STYLE_ACTIONS=TOOL_STYLE_ACTIONS;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var Actions=require("../Actions.js"),reducer=require("./reducer.js"),index=require("../../constant/index.js"),AnnotationSize=require("../../data/enums/AnnotationSize.js"),PageOperator=require("../../utils/PageOperator.js"),index$1=require("../../utils/index.js"),__async=(e,t,n)=>new Promise((r,T)=>{var s=i=>{try{p(n.next(i))}catch(a){T(a)}},o=i=>{try{p(n.throw(i))}catch(a){T(a)}},p=i=>i.done?r(i.value):Promise.resolve(i.value).then(s,o);p((n=n.apply(e,t)).next())});const dispatchTasks=(e,t)=>t.map(n=>e(n)),getSubmitByPageOperation=e=>e===AnnotationSize.EPageTurningOperation.Forward?index.ESubmitType.Forward:e===AnnotationSize.EPageTurningOperation.Backward?index.ESubmitType.Backward:e===AnnotationSize.EPageTurningOperation.Jump?index.ESubmitType.Jump:index.ESubmitType.Forward,getBasicIndex=(e,t)=>{var n,r;const{imgList:T,imgIndex:s}=e,{dataSourceStep:o}=reducer.getStepConfig(e.stepList,e.step);return((r=(n=index$1.jsonParser(T[s-1].result)[`step_${o}`])==null?void 0:n.result)==null?void 0:r.length)-1||t};function UpdateToolInstance(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_TOOL_INSTANCE,payload:{toolInstance:e}}}function SetTaskStepList({stepList:e}){return{type:Actions.ANNOTATION_ACTIONS.SET_TASK_STEP_LIST,payload:{stepList:e}}}function SetTaskConfig({stepList:e,step:t}){return{type:Actions.ANNOTATION_ACTIONS.SET_TASK_CONFIG,payload:{stepList:e,step:t}}}function UpdateOnSubmit(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_ON_SUBMIT,payload:{onSubmit:e}}}function UpdateOnSave(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_ON_SAVE,payload:{onSave:e}}}function UpdateOnPageChange(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_ON_PAGE_CHANGE,payload:{onPageChange:e}}}function UpdateOnStepChange(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_ON_STEP_CHANGE,payload:{onStepChange:e}}}function UpdateGetFileData(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_GET_FILE_DATA,payload:{getFileData:e}}}function UpdatePageSize(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_PAGE_SIZE,payload:{pageSize:e}}}function UpdateGetFileList(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_LOAD_FILE_LIST,payload:{loadFileList:e}}}function UpdateRotate(){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_ROTATE}}function UpdateSkipBeforePageTurning(e){return{type:Actions.ANNOTATION_ACTIONS.SKIP_BEFORE_PAGE_TURNING,payload:{skipBeforePageTurning:e}}}function UpdateBeforeRotate(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_BEFORE_ROTATE,payload:{beforeRotate:e}}}function CopyBackWordResult(){return{type:Actions.ANNOTATION_ACTIONS.COPY_BACKWARD_RESULT}}function InitTaskData({onSubmit:e,onSave:t,onPageChange:n,onStepChange:r,getFileData:T,pageSize:s,loadFileList:o,step:p,stepList:i,skipBeforePageTurning:a,beforeRotate:N}){const u=[];return e&&u.push(UpdateOnSubmit(e)),t&&u.push(UpdateOnSave(t)),n&&u.push(UpdateOnPageChange(n)),r&&u.push(UpdateOnStepChange(r)),T&&u.push(UpdateGetFileData(T)),o&&u.push(UpdateGetFileList(o)),s&&u.push(UpdatePageSize(s)),a&&u.push(UpdateSkipBeforePageTurning(a)),N&&u.push(UpdateBeforeRotate(N)),u.push(SetTaskConfig({stepList:i,step:p})),u.push({type:Actions.ANNOTATION_ACTIONS.CALC_STEP_PROGRESS}),u.push({type:Actions.ANNOTATION_ACTIONS.INIT_TOOL}),A=>dispatchTasks(A,u)}function UpdateInjectFunc({onSubmit:e,onSave:t,onPageChange:n,onStepChange:r,getFileData:T,pageSize:s,loadFileList:o,stepList:p,beforeRotate:i}){const a=[];return e&&a.push(UpdateOnSubmit(e)),t&&a.push(UpdateOnSave(t)),n&&a.push(UpdateOnPageChange(n)),r&&a.push(UpdateOnStepChange(r)),T&&a.push(UpdateGetFileData(T)),o&&a.push(UpdateGetFileList(o)),s&&a.push(UpdatePageSize(s)),i&&a.push(UpdateBeforeRotate(i)),a.push(SetTaskStepList({stepList:p})),N=>dispatchTasks(N,a)}const getNextStep=(e,t)=>{var n;const r=t==null?void 0:t.findIndex(T=>(T==null?void 0:T.step)===e);return(n=t[r+1])==null?void 0:n.step},ToNextStep=e=>(t,n)=>{const{annotation:r}=n(),{step:T,stepList:s}=r,o=getNextStep(T,s);return[t(UpdateProcessingStep(o,e))]},UpdateProcessingStep=(e,t)=>(n,r)=>{var T,s;const{annotation:o}=r();(T=o==null?void 0:o.onStepChange)==null||T.call(o,e);const p=(s=o==null?void 0:o.imgIndex)!=null?s:0;return[n({type:Actions.ANNOTATION_ACTIONS.SUBMIT_RESULT}),n({type:Actions.ANNOTATION_ACTIONS.SUBMIT_FILE_DATA,payload:{submitType:index.ESubmitType.StepChanged}}),n({type:Actions.ANNOTATION_ACTIONS.SET_STEP,payload:{toStep:e}}),n({type:Actions.ANNOTATION_ACTIONS.CALC_STEP_PROGRESS}),n(reducer.LoadFileAndFileData(t!=null?t:p,0))]},ToSubmitFileData=e=>t=>[t({type:Actions.ANNOTATION_ACTIONS.SUBMIT_RESULT}),t({type:Actions.ANNOTATION_ACTIONS.SUBMIT_FILE_DATA,payload:{submitType:e}})],SubmitAndChangeFileIndex=(e,t,n,r)=>[e(ToSubmitFileData(n)),e(reducer.LoadFileAndFileData(t,r))],ChangeBasicIndex=(e,t)=>[e({type:Actions.ANNOTATION_ACTIONS.SUBMIT_RESULT}),e({type:Actions.ANNOTATION_ACTIONS.SET_BASIC_INDEX,payload:{basicIndex:t}})],ChangeTriggerEventAfterIndexChanged=(e,t)=>{e({type:Actions.ANNOTATION_ACTIONS.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED,payload:{triggerEventAfterIndexChanged:t}})},PageBackward=(e=!1)=>(t,n)=>DispatcherTurning(t,n,AnnotationSize.EPageTurningOperation.Backward,e),PageForward=(e=!1)=>(t,n)=>DispatcherTurning(t,n,AnnotationSize.EPageTurningOperation.Forward,e),PageJump=(e,t=!1)=>(n,r)=>{if(e!==r().imgIndex)return DispatcherTurning(n,r,AnnotationSize.EPageTurningOperation.Jump,t,e)},loadImgList=(e,t,n,r)=>__async(void 0,null,function*(){var T;const{loadFileList:s,imgList:o,pageSize:p}=t().annotation,i=Math.floor(n/p);SetAnnotationLoading(e,!0);try{const a=yield s(i,p);if(SetAnnotationLoading(e,!1),!((T=a==null?void 0:a.fileList)==null?void 0:T.length)||!(a==null?void 0:a.total))throw new Error("fileList and total are required");const N=r?new Array(a.total):[...o];return N.splice(i*p,p,...a.fileList),e({type:Actions.ANNOTATION_ACTIONS.UPDATE_IMG_LIST,payload:{imgList:N}}),!0}catch(a){SetAnnotationLoading(e,!1),console.error(a)}}),DispatcherTurning=(e,t,n,r=!1,T)=>__async(void 0,null,function*(){var s;const o=t().annotation,{fileIndexChanged:p,fileIndex:i,basicIndexChanged:a,basicIndex:N}=PageOperator.getNextPageInfo(n,o,T),u=getSubmitByPageOperation(n);if(ChangeTriggerEventAfterIndexChanged(e,r),p){if(o.loading||!o.imgList[i]&&!(yield loadImgList(e,t,i)))return;(s=o.onPageChange)==null||s.call(o,i);const A=u===index.ESubmitType.Backward?getBasicIndex(t().annotation,N):N;return SubmitAndChangeFileIndex(e,i,u,A)}return a?ChangeBasicIndex(e,N):e(ToSubmitFileData(u))}),ChangeSave=e=>{e(ToSubmitFileData(index.ESubmitType.Save)),e({type:Actions.ANNOTATION_ACTIONS.SAVE_RESULT})},SetAnnotationLoading=(e,t)=>{e({type:Actions.ANNOTATION_ACTIONS.SET_LOADING,payload:{loading:t}})},SetPointCloudLoading=(e,t)=>{e({type:Actions.ANNOTATION_ACTIONS.SET_LOADING,payload:{loading:t}})};exports.ChangeSave=ChangeSave,exports.CopyBackWordResult=CopyBackWordResult,exports.DispatcherTurning=DispatcherTurning,exports.InitTaskData=InitTaskData,exports.PageBackward=PageBackward,exports.PageForward=PageForward,exports.PageJump=PageJump,exports.SetAnnotationLoading=SetAnnotationLoading,exports.SetPointCloudLoading=SetPointCloudLoading,exports.SetTaskConfig=SetTaskConfig,exports.SetTaskStepList=SetTaskStepList,exports.ToNextStep=ToNextStep,exports.ToSubmitFileData=ToSubmitFileData,exports.UpdateBeforeRotate=UpdateBeforeRotate,exports.UpdateGetFileData=UpdateGetFileData,exports.UpdateGetFileList=UpdateGetFileList,exports.UpdateInjectFunc=UpdateInjectFunc,exports.UpdateOnPageChange=UpdateOnPageChange,exports.UpdateOnSave=UpdateOnSave,exports.UpdateOnStepChange=UpdateOnStepChange,exports.UpdateOnSubmit=UpdateOnSubmit,exports.UpdatePageSize=UpdatePageSize,exports.UpdateProcessingStep=UpdateProcessingStep,exports.UpdateRotate=UpdateRotate,exports.UpdateSkipBeforePageTurning=UpdateSkipBeforePageTurning,exports.UpdateToolInstance=UpdateToolInstance,exports.loadImgList=loadImgList;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var Actions=require("../Actions.js"),reducer=require("./reducer.js"),index=require("../../constant/index.js"),AnnotationSize=require("../../data/enums/AnnotationSize.js"),PageOperator=require("../../utils/PageOperator.js"),index$1=require("../../utils/index.js"),__async=(e,t,n)=>new Promise((r,T)=>{var s=i=>{try{p(n.next(i))}catch(a){T(a)}},o=i=>{try{p(n.throw(i))}catch(a){T(a)}},p=i=>i.done?r(i.value):Promise.resolve(i.value).then(s,o);p((n=n.apply(e,t)).next())});const dispatchTasks=(e,t)=>t.map(n=>e(n)),getSubmitByPageOperation=e=>e===AnnotationSize.EPageTurningOperation.Forward?index.ESubmitType.Forward:e===AnnotationSize.EPageTurningOperation.Backward?index.ESubmitType.Backward:e===AnnotationSize.EPageTurningOperation.Jump?index.ESubmitType.Jump:index.ESubmitType.Forward,getBasicIndex=(e,t)=>{var n,r;const{imgList:T,imgIndex:s}=e,{dataSourceStep:o}=reducer.getStepConfig(e.stepList,e.step);return((r=(n=index$1.jsonParser(T[s-1].result)[`step_${o}`])==null?void 0:n.result)==null?void 0:r.length)-1||t};function UpdateToolInstance(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_TOOL_INSTANCE,payload:{toolInstance:e}}}function SetTaskStepList({stepList:e}){return{type:Actions.ANNOTATION_ACTIONS.SET_TASK_STEP_LIST,payload:{stepList:e}}}function SetTaskConfig({stepList:e,step:t}){return{type:Actions.ANNOTATION_ACTIONS.SET_TASK_CONFIG,payload:{stepList:e,step:t}}}function UpdateOnSubmit(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_ON_SUBMIT,payload:{onSubmit:e}}}function UpdateOnSave(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_ON_SAVE,payload:{onSave:e}}}function UpdateOnPageChange(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_ON_PAGE_CHANGE,payload:{onPageChange:e}}}function UpdateOnStepChange(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_ON_STEP_CHANGE,payload:{onStepChange:e}}}function UpdateGetFileData(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_GET_FILE_DATA,payload:{getFileData:e}}}function UpdatePageSize(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_PAGE_SIZE,payload:{pageSize:e}}}function UpdateGetFileList(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_LOAD_FILE_LIST,payload:{loadFileList:e}}}function UpdateRotate(){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_ROTATE}}function UpdateSkipBeforePageTurning(e){return{type:Actions.ANNOTATION_ACTIONS.SKIP_BEFORE_PAGE_TURNING,payload:{skipBeforePageTurning:e}}}function UpdateBeforeRotate(e){return{type:Actions.ANNOTATION_ACTIONS.UPDATE_BEFORE_ROTATE,payload:{beforeRotate:e}}}function CopyBackWordResult(){return{type:Actions.ANNOTATION_ACTIONS.COPY_BACKWARD_RESULT}}function BatchUpdateTrackID(e,t,n){return{type:Actions.ANNOTATION_ACTIONS.BATCH_UPDATE_TRACK_ID,payload:{id:e,newID:t,rangeIndex:n}}}function InitTaskData({onSubmit:e,onSave:t,onPageChange:n,onStepChange:r,getFileData:T,pageSize:s,loadFileList:o,step:p,stepList:i,skipBeforePageTurning:a,beforeRotate:A}){const u=[];return e&&u.push(UpdateOnSubmit(e)),t&&u.push(UpdateOnSave(t)),n&&u.push(UpdateOnPageChange(n)),r&&u.push(UpdateOnStepChange(r)),T&&u.push(UpdateGetFileData(T)),o&&u.push(UpdateGetFileList(o)),s&&u.push(UpdatePageSize(s)),a&&u.push(UpdateSkipBeforePageTurning(a)),A&&u.push(UpdateBeforeRotate(A)),u.push(SetTaskConfig({stepList:i,step:p})),u.push({type:Actions.ANNOTATION_ACTIONS.CALC_STEP_PROGRESS}),u.push({type:Actions.ANNOTATION_ACTIONS.INIT_TOOL}),N=>dispatchTasks(N,u)}function UpdateInjectFunc({onSubmit:e,onSave:t,onPageChange:n,onStepChange:r,getFileData:T,pageSize:s,loadFileList:o,stepList:p,beforeRotate:i}){const a=[];return e&&a.push(UpdateOnSubmit(e)),t&&a.push(UpdateOnSave(t)),n&&a.push(UpdateOnPageChange(n)),r&&a.push(UpdateOnStepChange(r)),T&&a.push(UpdateGetFileData(T)),o&&a.push(UpdateGetFileList(o)),s&&a.push(UpdatePageSize(s)),i&&a.push(UpdateBeforeRotate(i)),a.push(SetTaskStepList({stepList:p})),A=>dispatchTasks(A,a)}const getNextStep=(e,t)=>{var n;const r=t==null?void 0:t.findIndex(T=>(T==null?void 0:T.step)===e);return(n=t[r+1])==null?void 0:n.step},ToNextStep=e=>(t,n)=>{const{annotation:r}=n(),{step:T,stepList:s}=r,o=getNextStep(T,s);return[t(UpdateProcessingStep(o,e))]},UpdateProcessingStep=(e,t)=>(n,r)=>{var T,s;const{annotation:o}=r();(T=o==null?void 0:o.onStepChange)==null||T.call(o,e);const p=(s=o==null?void 0:o.imgIndex)!=null?s:0;return[n({type:Actions.ANNOTATION_ACTIONS.SUBMIT_RESULT}),n({type:Actions.ANNOTATION_ACTIONS.SUBMIT_FILE_DATA,payload:{submitType:index.ESubmitType.StepChanged}}),n({type:Actions.ANNOTATION_ACTIONS.SET_STEP,payload:{toStep:e}}),n({type:Actions.ANNOTATION_ACTIONS.CALC_STEP_PROGRESS}),n(reducer.LoadFileAndFileData(t!=null?t:p,0))]},ToSubmitFileData=e=>t=>[t({type:Actions.ANNOTATION_ACTIONS.SUBMIT_RESULT}),t({type:Actions.ANNOTATION_ACTIONS.SUBMIT_FILE_DATA,payload:{submitType:e}})],SubmitAndChangeFileIndex=(e,t,n,r)=>[e(ToSubmitFileData(n)),e(reducer.LoadFileAndFileData(t,r))],ChangeBasicIndex=(e,t)=>[e({type:Actions.ANNOTATION_ACTIONS.SUBMIT_RESULT}),e({type:Actions.ANNOTATION_ACTIONS.SET_BASIC_INDEX,payload:{basicIndex:t}})],ChangeTriggerEventAfterIndexChanged=(e,t)=>{e({type:Actions.ANNOTATION_ACTIONS.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED,payload:{triggerEventAfterIndexChanged:t}})},PageBackward=(e=!1)=>(t,n)=>DispatcherTurning(t,n,AnnotationSize.EPageTurningOperation.Backward,e),PageForward=(e=!1)=>(t,n)=>DispatcherTurning(t,n,AnnotationSize.EPageTurningOperation.Forward,e),PageJump=(e,t=!1)=>(n,r)=>{if(e!==r().imgIndex)return DispatcherTurning(n,r,AnnotationSize.EPageTurningOperation.Jump,t,e)},loadImgList=(e,t,n,r)=>__async(void 0,null,function*(){var T;const{loadFileList:s,imgList:o,pageSize:p}=t().annotation,i=Math.floor(n/p);SetAnnotationLoading(e,!0);try{const a=yield s(i,p);if(SetAnnotationLoading(e,!1),!((T=a==null?void 0:a.fileList)==null?void 0:T.length)||!(a==null?void 0:a.total))throw new Error("fileList and total are required");const A=r?new Array(a.total):[...o];return A.splice(i*p,p,...a.fileList),e({type:Actions.ANNOTATION_ACTIONS.UPDATE_IMG_LIST,payload:{imgList:A}}),!0}catch(a){SetAnnotationLoading(e,!1),console.error(a)}}),DispatcherTurning=(e,t,n,r=!1,T)=>__async(void 0,null,function*(){var s;const o=t().annotation,{fileIndexChanged:p,fileIndex:i,basicIndexChanged:a,basicIndex:A}=PageOperator.getNextPageInfo(n,o,T),u=getSubmitByPageOperation(n);if(ChangeTriggerEventAfterIndexChanged(e,r),p){if(o.loading||!o.imgList[i]&&!(yield loadImgList(e,t,i)))return;(s=o.onPageChange)==null||s.call(o,i);const N=u===index.ESubmitType.Backward?getBasicIndex(t().annotation,A):A;return SubmitAndChangeFileIndex(e,i,u,N)}return a?ChangeBasicIndex(e,A):e(ToSubmitFileData(u))}),ChangeSave=e=>{e(ToSubmitFileData(index.ESubmitType.Save)),e({type:Actions.ANNOTATION_ACTIONS.SAVE_RESULT})},SetAnnotationLoading=(e,t)=>{e({type:Actions.ANNOTATION_ACTIONS.SET_LOADING,payload:{loading:t}})},SetPointCloudLoading=(e,t)=>{e({type:Actions.ANNOTATION_ACTIONS.SET_LOADING,payload:{loading:t}})};exports.BatchUpdateTrackID=BatchUpdateTrackID,exports.ChangeSave=ChangeSave,exports.CopyBackWordResult=CopyBackWordResult,exports.DispatcherTurning=DispatcherTurning,exports.InitTaskData=InitTaskData,exports.PageBackward=PageBackward,exports.PageForward=PageForward,exports.PageJump=PageJump,exports.SetAnnotationLoading=SetAnnotationLoading,exports.SetPointCloudLoading=SetPointCloudLoading,exports.SetTaskConfig=SetTaskConfig,exports.SetTaskStepList=SetTaskStepList,exports.ToNextStep=ToNextStep,exports.ToSubmitFileData=ToSubmitFileData,exports.UpdateBeforeRotate=UpdateBeforeRotate,exports.UpdateGetFileData=UpdateGetFileData,exports.UpdateGetFileList=UpdateGetFileList,exports.UpdateInjectFunc=UpdateInjectFunc,exports.UpdateOnPageChange=UpdateOnPageChange,exports.UpdateOnSave=UpdateOnSave,exports.UpdateOnStepChange=UpdateOnStepChange,exports.UpdateOnSubmit=UpdateOnSubmit,exports.UpdatePageSize=UpdatePageSize,exports.UpdateProcessingStep=UpdateProcessingStep,exports.UpdateRotate=UpdateRotate,exports.UpdateSkipBeforePageTurning=UpdateSkipBeforePageTurning,exports.UpdateToolInstance=UpdateToolInstance,exports.loadImgList=loadImgList;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const aMapStateToProps=e=>{var t;const{annotation:{imgList:a,imgIndex:r}}=e;return{currentData:(t=a[r])!=null?t:{}}};exports.aMapStateToProps=aMapStateToProps;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});const aMapStateToProps=r=>{var t;const{annotation:{imgList:a,imgIndex:e}}=r;return{currentData:(t=a[e])!=null?t:{}}},a2MapStateToProps=r=>{var t;const{annotation:{imgList:a,imgIndex:e}}=r;return{currentData:(t=a[e])!=null?t:{},imgList:a}};exports.a2MapStateToProps=a2MapStateToProps,exports.aMapStateToProps=aMapStateToProps;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index$1=require("../../components/customResizeHook/index.js"),styleString=require("../../constant/styleString.js"),Actions=require("../Actions.js"),index=require("../../utils/index.js"),AnnotationDataUtils=require("../../utils/AnnotationDataUtils.js"),ConfigUtils=require("../../utils/ConfigUtils.js"),data=require("../../utils/data.js"),StepUtils=require("../../utils/StepUtils.js"),ToolUtils=require("../../utils/ToolUtils.js"),lbAnnotation=require("@labelbee/lb-annotation"),lbUtils=require("@labelbee/lb-utils"),antd=require("antd"),es=require("antd/es"),_=require("lodash"),actionCreators=require("./actionCreators.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var ___default=_interopDefaultLegacy(_),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,l)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:l}):e[t]=l,__spreadValues=(e,t)=>{for(var l in t||(t={}))__hasOwnProp.call(t,l)&&__defNormalProp(e,l,t[l]);if(__getOwnPropSymbols)for(var l of __getOwnPropSymbols(t))__propIsEnum.call(t,l)&&__defNormalProp(e,l,t[l]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t)),__async=(e,t,l)=>new Promise((c,r)=>{var T=d=>{try{O(l.next(d))}catch(E){r(E)}},I=d=>{try{O(l.throw(d))}catch(E){r(E)}},O=d=>d.done?c(d.value):Promise.resolve(d.value).then(T,I);O((l=l.apply(e,t)).next())});const getStepConfig=(e,t)=>e.find(l=>l.step===t),initialState={annotationEngine:null,toolInstance:null,imgList:[],config:"{}",imgIndex:-1,basicIndex:0,imgPageSize:1,step:1,stepList:[],imgNode:new Image,basicResultList:[],resultList:[],stepProgress:0,loading:!1,triggerEventAfterIndexChanged:!1,pointCloudLoading:!1},getTotalPage=e=>{const{imgList:t,imgPageSize:l}=e;return Math.ceil(t.length/l)},calcStepProgress=(e,t)=>e.reduce((l,c)=>{if(c){const r=c.result;if(index.jsonParser(r)[`step_${t}`])return l+1}return l},0)/e.length,updateToolInstance=(e,t)=>{const{step:l,stepList:c}=e,r=StepUtils.getCurrentStepInfo(l,c),T=ConfigUtils.ConfigUtils.jsonParser(r.config);if(ToolUtils.isVideoTool(r==null?void 0:r.tool)||ToolUtils.isPointCloudTool(r==null?void 0:r.tool))return;const I=document.getElementById("toolContainer");if(!I)throw"Not exist dom named id-toolContainer";const O=index$1.getFormatSize({width:window.innerWidth,height:window.innerHeight}),d=new lbAnnotation.AnnotationEngine({container:I,toolName:r.tool,size:O,imgNode:t,config:T,style:JSON.parse(styleString)});return{toolInstance:d==null?void 0:d.toolInstance,annotationEngine:d}},LoadFileAndFileData=(e,t)=>(l,c)=>__async(void 0,null,function*(){const{stepList:r,step:T}=c().annotation,I=StepUtils.currentToolIsVideo(T,r),O=StepUtils.currentToolIsPointCloud(T,r);if(actionCreators.SetAnnotationLoading(l,!0),yield l(TryGetFileDataByAPI(e)),I||O){l(AfterVideoLoaded(e));return}l(AfterImageLoaded(e,t))}),TryGetFileDataByAPI=e=>(t,l)=>__async(void 0,null,function*(){const{getFileData:c,imgList:r}=l().annotation;if(c){const T=yield c(r[e],e);t({type:Actions.ANNOTATION_ACTIONS.SET_FILE_DATA,payload:{fileData:T,index:e}})}}),AfterVideoLoaded=e=>t=>{actionCreators.SetAnnotationLoading(t,!1),t({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{nextIndex:e}})},AfterImageLoaded=(e,t)=>(l,c)=>{var r;const{toolInstance:T,imgList:I}=c().annotation,O=(r=I==null?void 0:I[e])==null?void 0:r.url;lbAnnotation.ImgUtils.load(O).then(d=>{actionCreators.SetAnnotationLoading(l,!1),l({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{imgNode:d,nextIndex:e,nextBasicIndex:t}})}).catch(()=>{actionCreators.SetAnnotationLoading(l,!1),T==null||T.setErrorImg(),l({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{nextIndex:e,nextBasicIndex:t}})})},annotationReducer=(e=initialState,t)=>{var l,c,r,T,I,O,d,E,b,h,U,x,F,j,B,w,G,V,q,z,M;switch(t.type){case Actions.ANNOTATION_ACTIONS.UPDATE_TOOL_INSTANCE:return __spreadProps(__spreadValues({},e),{toolInstance:t.payload.toolInstance});case Actions.ANNOTATION_ACTIONS.UPDATE_IMG_LIST:return __spreadProps(__spreadValues({},e),{imgList:t.payload.imgList});case Actions.ANNOTATION_ACTIONS.CALC_STEP_PROGRESS:{const{imgList:n,step:o}=e,s=calcStepProgress(n,o);return __spreadProps(__spreadValues({},e),{stepProgress:s})}case Actions.ANNOTATION_ACTIONS.SUBMIT_FILE_DATA:{const{imgList:n,imgIndex:o,step:s,stepList:i,toolInstance:u,onSubmit:a,resultList:p}=e;if(!u||!n[o])return e;const A=((l=n[o])==null?void 0:l.result)||"",[,N,g]=(c=u==null?void 0:u.exportData())!=null?c:[],v=(T=(r=u==null?void 0:u.exportCustomData)==null?void 0:r.call(u))!=null?T:{},f=data.composeResultWithBasicImgInfo(A,N),C=data.composeResult(f,{step:s,stepList:i},{rect:p},v);n[o].result=AnnotationDataUtils.dataCorrection(C,A,s,i),g&&(n[o]=__spreadValues(__spreadValues({},n[o]),g)),a&&a([n[o]],(I=t.payload)==null?void 0:I.submitType,o);const L=calcStepProgress(n,s);return __spreadProps(__spreadValues({},e),{stepProgress:L,imgList:n})}case Actions.ANNOTATION_ACTIONS.SAVE_RESULT:{const{imgList:n,imgIndex:o,onSave:s}=e;return s==null||s(n[o],o,n),__spreadValues({},e)}case Actions.ANNOTATION_ACTIONS.SUBMIT_RESULT:{const{imgList:n,basicIndex:o,resultList:s,toolInstance:i,basicResultList:u}=e;if(!i)return e;const[a]=(O=i==null?void 0:i.exportData())!=null?O:[];let p=a;if((u==null?void 0:u.length)>0){const A=(d=u[o])==null?void 0:d.id,N=a.map(g=>__spreadProps(__spreadValues({},g),{sourceID:A}));p=___default.default.cloneDeep(s).filter(g=>g.sourceID!==A),p.push(...N)}return __spreadProps(__spreadValues({},e),{resultList:p,imgList:n})}case Actions.ANNOTATION_ACTIONS.SET_BASIC_INDEX:{const{toolInstance:n,step:o,imgList:s,imgIndex:i,stepList:u,annotationEngine:a,resultList:p,basicResultList:A}=e;if(!n||!a)return e;const N=t.payload.basicIndex,g=(E=A[N])==null?void 0:E.id,v=index.jsonParser((b=s[i])==null?void 0:b.result),f=(p||[]).filter(R=>R.sourceID===g),C=getStepConfig(u,o),{dataSourceStep:L,tool:y}=C,D=getStepConfig(u,L);let S=[];return L&&y&&(S=(h=v[`step_${L}`])==null?void 0:h.result,(S==null?void 0:S.length)>0?(a==null||a.setBasicInfo(D.tool,S[N]),a==null||a.launchOperation()):(a==null||a.setBasicInfo(D.tool),a==null||a.forbidOperation(),es.message.info(lbUtils.i18n.t("NoDependency")))),n==null||n.setResult(f),n==null||n.history.initRecord(f,!0),__spreadProps(__spreadValues({},e),{basicIndex:N})}case Actions.ANNOTATION_ACTIONS.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED:{const{triggerEventAfterIndexChanged:n}=t.payload;return __spreadProps(__spreadValues({},e),{triggerEventAfterIndexChanged:!!n})}case Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA:{const{imgList:n,step:o,toolInstance:s,annotationEngine:i,stepList:u}=e;if(!s)return __spreadProps(__spreadValues({},e),{imgIndex:t.payload.nextIndex});const a=StepUtils.getCurrentStepInfo(o,u),{nextIndex:p,imgNode:A,nextBasicIndex:N,imgError:g}=t.payload,v=N!=null?N:0,f=index.jsonParser((U=n[p])==null?void 0:U.result),C=f[`step_${a.step}`],L=!C,y={rotate:(x=f.rotate)!=null?x:0,valid:(F=f.valid)!=null?F:!0};A&&g!==!0?i==null||i.setImgNode(A,y):s==null||s.setValid(y.valid);const D=getStepConfig(u,a.step),{dataSourceStep:S,tool:R}=D,k=getStepConfig(u,S),H=S&&R,m=(B=(j=f[`step_${S}`])==null?void 0:j.result)!=null?B:[],P=AnnotationDataUtils.getInitialResultList(C==null?void 0:C.result,s,D,m,L);if(i==null||i.launchOperation(),H&&((m==null?void 0:m.length)>0?i==null||i.setBasicInfo(k.tool,m[v]):(i==null||i.setBasicInfo(k.tool),i==null||i.forbidOperation(),es.message.info(lbUtils.i18n.t("NoDependency")))),a.tool!=="check"){const $=(G=(w=m[v])==null?void 0:w.id)!=null?G:"",K=H?P.filter(W=>lbAnnotation.CommonToolUtils.isSameSourceID(W.sourceID,$)):P;s==null||s.history.initRecord(P,!0),s==null||s.setResult(K)}return __spreadProps(__spreadValues({},e),{imgIndex:p,basicIndex:v,basicResultList:m,resultList:P})}case Actions.ANNOTATION_ACTIONS.UPDATE_ANNOTATION_CONFIG:return __spreadProps(__spreadValues({},e),{config:(V=t.payload.config)!=null?V:"{}"});case Actions.ANNOTATION_ACTIONS.SET_TASK_STEP_LIST:{const{stepList:n}=t.payload;return __spreadProps(__spreadValues({},e),{stepList:n})}case Actions.ANNOTATION_ACTIONS.SET_TASK_CONFIG:{const{stepList:n,step:o}=t.payload;return __spreadProps(__spreadValues({},e),{stepList:n,step:o})}case Actions.ANNOTATION_ACTIONS.INIT_TOOL:{const{imgNode:n}=e,o=updateToolInstance(e,n);if(o){const{toolInstance:s,annotationEngine:i}=o;return __spreadProps(__spreadValues({},e),{toolInstance:s,annotationEngine:i})}return __spreadValues({},e)}case Actions.ANNOTATION_ACTIONS.SET_TOOL:{const n=(q=t.payload)==null?void 0:q.instance;return n?__spreadProps(__spreadValues({},e),{toolInstance:n}):__spreadValues({},e)}case Actions.ANNOTATION_ACTIONS.UPDATE_ON_SUBMIT:return __spreadProps(__spreadValues({},e),{onSubmit:t.payload.onSubmit});case Actions.ANNOTATION_ACTIONS.UPDATE_ON_SAVE:return __spreadProps(__spreadValues({},e),{onSave:t.payload.onSave});case Actions.ANNOTATION_ACTIONS.UPDATE_ON_PAGE_CHANGE:return __spreadProps(__spreadValues({},e),{onPageChange:t.payload.onPageChange});case Actions.ANNOTATION_ACTIONS.UPDATE_ON_STEP_CHANGE:return __spreadProps(__spreadValues({},e),{onStepChange:t.payload.onStepChange});case Actions.ANNOTATION_ACTIONS.UPDATE_GET_FILE_DATA:return __spreadProps(__spreadValues({},e),{getFileData:t.payload.getFileData});case Actions.ANNOTATION_ACTIONS.UPDATE_PAGE_SIZE:return __spreadProps(__spreadValues({},e),{pageSize:t.payload.pageSize});case Actions.ANNOTATION_ACTIONS.UPDATE_LOAD_FILE_LIST:return __spreadProps(__spreadValues({},e),{loadFileList:t.payload.loadFileList});case Actions.ANNOTATION_ACTIONS.UPDATE_BEFORE_ROTATE:return __spreadProps(__spreadValues({},e),{beforeRotate:t.payload.beforeRotate});case Actions.ANNOTATION_ACTIONS.SKIP_BEFORE_PAGE_TURNING:return __spreadProps(__spreadValues({},e),{skipBeforePageTurning:t.payload.skipBeforePageTurning});case Actions.ANNOTATION_ACTIONS.SET_FILE_DATA:{const{fileData:n,index:o}=t.payload,{imgList:s}=e,i=[...s];return i[o]=__spreadValues(__spreadValues({},i[o]),n),__spreadProps(__spreadValues({},e),{imgList:i})}case Actions.ANNOTATION_ACTIONS.UPDATE_ROTATE:{const{toolInstance:n,beforeRotate:o}=e;return o&&o()===!1||n==null||n.updateRotate(),e}case Actions.ANNOTATION_ACTIONS.UPDATE_ANNOTATION_VALID:{const{toolInstance:n}=e,o=(z=n==null?void 0:n.valid)!=null?z:!0;return antd.Modal.destroyAll(),antd.Modal.confirm({content:lbUtils.i18n.t(o?"updateValidFromValidToInValid":"updateValidFromInValidToValid"),onOk:()=>{n==null||n.setValid(!o)},okText:lbUtils.i18n.t("Confirm"),cancelText:lbUtils.i18n.t("Cancel")}),e}case Actions.ANNOTATION_ACTIONS.COPY_BACKWARD_RESULT:{const{toolInstance:n,imgIndex:o,imgList:s,step:i}=e;if(!n)return e;if(o===0||o>=s.length)return console.error("\u65E0\u6CD5\u590D\u5236\u8FB9\u754C\u5916\u7684\u5185\u5BB9"),e;const u=s[o-1].result;if(!u)return e;const a=AnnotationDataUtils.copyResultChange(u,i,(M=s[o].result)!=null?M:"");s[o]=__spreadProps(__spreadValues({},s[o]),{result:a});const A=index.jsonParser(a)[`step_${i}`],N=(A==null?void 0:A.result)||[];return n==null||n.setResult(N),n==null||n.history.pushHistory(N),__spreadProps(__spreadValues({},e),{imgList:[...s]})}case Actions.ANNOTATION_ACTIONS.SET_STEP:{const{stepList:n,annotationEngine:o}=e,{toStep:s}=t.payload;if(!o)return e;const i=getStepConfig(n,s);return o==null||o.setToolName(i.tool,i.config),__spreadProps(__spreadValues({},e),{step:s,toolInstance:o==null?void 0:o.toolInstance})}case Actions.ANNOTATION_ACTIONS.SET_LOADING:{const{loading:n}=t.payload;return __spreadProps(__spreadValues({},e),{loading:!!n})}case Actions.ANNOTATION_ACTIONS.SET_POINT_CLOUD_LOADING:{const{pointCloudLoading:n}=t.payload;return __spreadProps(__spreadValues({},e),{pointCloudLoading:!!n})}default:return e}};exports.LoadFileAndFileData=LoadFileAndFileData,exports.annotationReducer=annotationReducer,exports.getStepConfig=getStepConfig,exports.getTotalPage=getTotalPage;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index$2=require("../../components/customResizeHook/index.js"),index=require("../../constant/index.js"),styleString=require("../../constant/styleString.js"),Actions=require("../Actions.js"),index$1=require("../../utils/index.js"),AnnotationDataUtils=require("../../utils/AnnotationDataUtils.js"),ConfigUtils=require("../../utils/ConfigUtils.js"),data=require("../../utils/data.js"),StepUtils=require("../../utils/StepUtils.js"),ToolUtils=require("../../utils/ToolUtils.js"),lbAnnotation=require("@labelbee/lb-annotation"),lbUtils=require("@labelbee/lb-utils"),antd=require("antd"),es=require("antd/es"),_=require("lodash"),actionCreators=require("./actionCreators.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var ___default=_interopDefaultLegacy(_),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,i)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,__spreadValues=(e,t)=>{for(var i in t||(t={}))__hasOwnProp.call(t,i)&&__defNormalProp(e,i,t[i]);if(__getOwnPropSymbols)for(var i of __getOwnPropSymbols(t))__propIsEnum.call(t,i)&&__defNormalProp(e,i,t[i]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t)),__async=(e,t,i)=>new Promise((d,u)=>{var A=T=>{try{p(i.next(T))}catch(m){u(m)}},O=T=>{try{p(i.throw(T))}catch(m){u(m)}},p=T=>T.done?d(T.value):Promise.resolve(T.value).then(A,O);p((i=i.apply(e,t)).next())});const getStepConfig=(e,t)=>e.find(i=>i.step===t),initialState={annotationEngine:null,toolInstance:null,imgList:[],config:"{}",imgIndex:-1,basicIndex:0,imgPageSize:1,step:1,stepList:[],imgNode:new Image,basicResultList:[],resultList:[],stepProgress:0,loading:!1,triggerEventAfterIndexChanged:!1,pointCloudLoading:!1},getTotalPage=e=>{const{imgList:t,imgPageSize:i}=e;return Math.ceil(t.length/i)},calcStepProgress=(e,t)=>e.reduce((i,d)=>{if(d){const u=d.result;if(index$1.jsonParser(u)[`step_${t}`])return i+1}return i},0)/e.length,updateToolInstance=(e,t)=>{const{step:i,stepList:d}=e,u=StepUtils.getCurrentStepInfo(i,d),A=ConfigUtils.ConfigUtils.jsonParser(u.config);if(ToolUtils.isVideoTool(u==null?void 0:u.tool)||ToolUtils.isPointCloudTool(u==null?void 0:u.tool))return;const O=document.getElementById("toolContainer");if(!O)throw"Not exist dom named id-toolContainer";const p=index$2.getFormatSize({width:window.innerWidth,height:window.innerHeight}),T=new lbAnnotation.AnnotationEngine({container:O,toolName:u.tool,size:p,imgNode:t,config:A,style:JSON.parse(styleString)});return{toolInstance:T==null?void 0:T.toolInstance,annotationEngine:T}},LoadFileAndFileData=(e,t)=>(i,d)=>__async(void 0,null,function*(){const{stepList:u,step:A}=d().annotation,O=StepUtils.currentToolIsVideo(A,u),p=StepUtils.currentToolIsPointCloud(A,u);if(actionCreators.SetAnnotationLoading(i,!0),yield i(TryGetFileDataByAPI(e)),O||p){i(AfterVideoLoaded(e));return}i(AfterImageLoaded(e,t))}),TryGetFileDataByAPI=e=>(t,i)=>__async(void 0,null,function*(){const{getFileData:d,imgList:u}=i().annotation;if(d){const A=yield d(u[e],e);t({type:Actions.ANNOTATION_ACTIONS.SET_FILE_DATA,payload:{fileData:A,index:e}})}}),AfterVideoLoaded=e=>t=>{actionCreators.SetAnnotationLoading(t,!1),t({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{nextIndex:e}})},AfterImageLoaded=(e,t)=>(i,d)=>{var u;const{toolInstance:A,imgList:O}=d().annotation,p=(u=O==null?void 0:O[e])==null?void 0:u.url;lbAnnotation.ImgUtils.load(p).then(T=>{actionCreators.SetAnnotationLoading(i,!1),i({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{imgNode:T,nextIndex:e,nextBasicIndex:t}})}).catch(()=>{actionCreators.SetAnnotationLoading(i,!1),A==null||A.setErrorImg(),i({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{nextIndex:e,nextBasicIndex:t}})})},annotationReducer=(e=initialState,t)=>{var i,d,u,A,O,p,T,m,b,h,U,x,F,j,B,w,q,G,V,M,k,z;switch(t.type){case Actions.ANNOTATION_ACTIONS.UPDATE_TOOL_INSTANCE:return __spreadProps(__spreadValues({},e),{toolInstance:t.payload.toolInstance});case Actions.ANNOTATION_ACTIONS.UPDATE_IMG_LIST:return __spreadProps(__spreadValues({},e),{imgList:t.payload.imgList});case Actions.ANNOTATION_ACTIONS.CALC_STEP_PROGRESS:{const{imgList:n,step:o}=e,l=calcStepProgress(n,o);return __spreadProps(__spreadValues({},e),{stepProgress:l})}case Actions.ANNOTATION_ACTIONS.SUBMIT_FILE_DATA:{const{imgList:n,imgIndex:o,step:l,stepList:s,toolInstance:a,onSubmit:r,resultList:I}=e;if(!a||!n[o])return e;const c=((i=n[o])==null?void 0:i.result)||"",[,N,g]=(d=a==null?void 0:a.exportData())!=null?d:[],v=(A=(u=a==null?void 0:a.exportCustomData)==null?void 0:u.call(a))!=null?A:{},f=data.composeResultWithBasicImgInfo(c,N),C=data.composeResult(f,{step:l,stepList:s},{rect:I},v);if(n[o].result=AnnotationDataUtils.dataCorrection(C,c,l,s),g&&(n[o]=__spreadValues(__spreadValues({},n[o]),g)),((O=t.payload)==null?void 0:O.submitType)===index.ESubmitType.SyncImgList)return __spreadProps(__spreadValues({},e),{imgList:n});r&&r([n[o]],(p=t.payload)==null?void 0:p.submitType,o,n);const L=calcStepProgress(n,l);return __spreadProps(__spreadValues({},e),{stepProgress:L,imgList:n})}case Actions.ANNOTATION_ACTIONS.SAVE_RESULT:{const{imgList:n,imgIndex:o,onSave:l}=e;return l==null||l(n[o],o,n),__spreadValues({},e)}case Actions.ANNOTATION_ACTIONS.SUBMIT_RESULT:{const{imgList:n,basicIndex:o,resultList:l,toolInstance:s,basicResultList:a}=e;if(!s)return e;const[r]=(T=s==null?void 0:s.exportData())!=null?T:[];let I=r;if((a==null?void 0:a.length)>0){const c=(m=a[o])==null?void 0:m.id,N=r.map(g=>__spreadProps(__spreadValues({},g),{sourceID:c}));I=___default.default.cloneDeep(l).filter(g=>g.sourceID!==c),I.push(...N)}return __spreadProps(__spreadValues({},e),{resultList:I,imgList:n})}case Actions.ANNOTATION_ACTIONS.SET_BASIC_INDEX:{const{toolInstance:n,step:o,imgList:l,imgIndex:s,stepList:a,annotationEngine:r,resultList:I,basicResultList:c}=e;if(!n||!r)return e;const N=t.payload.basicIndex,g=(b=c[N])==null?void 0:b.id,v=index$1.jsonParser((h=l[s])==null?void 0:h.result),f=(I||[]).filter(R=>R.sourceID===g),C=getStepConfig(a,o),{dataSourceStep:L,tool:y}=C,D=getStepConfig(a,L);let S=[];return L&&y&&(S=(U=v[`step_${L}`])==null?void 0:U.result,(S==null?void 0:S.length)>0?(r==null||r.setBasicInfo(D.tool,S[N]),r==null||r.launchOperation()):(r==null||r.setBasicInfo(D.tool),r==null||r.forbidOperation(),es.message.info(lbUtils.i18n.t("NoDependency")))),n==null||n.setResult(f),n==null||n.history.initRecord(f,!0),__spreadProps(__spreadValues({},e),{basicIndex:N})}case Actions.ANNOTATION_ACTIONS.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED:{const{triggerEventAfterIndexChanged:n}=t.payload;return __spreadProps(__spreadValues({},e),{triggerEventAfterIndexChanged:!!n})}case Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA:{const{imgList:n,step:o,toolInstance:l,annotationEngine:s,stepList:a}=e;if(!l)return __spreadProps(__spreadValues({},e),{imgIndex:t.payload.nextIndex});const r=StepUtils.getCurrentStepInfo(o,a),{nextIndex:I,imgNode:c,nextBasicIndex:N,imgError:g}=t.payload,v=N!=null?N:0,f=index$1.jsonParser((x=n[I])==null?void 0:x.result),C=f[`step_${r.step}`],L=!C,y={rotate:(F=f.rotate)!=null?F:0,valid:(j=f.valid)!=null?j:!0};c&&g!==!0?s==null||s.setImgNode(c,y):l==null||l.setValid(y.valid);const D=getStepConfig(a,r.step),{dataSourceStep:S,tool:R}=D,H=getStepConfig(a,S),$=S&&R,E=(w=(B=f[`step_${S}`])==null?void 0:B.result)!=null?w:[],P=AnnotationDataUtils.getInitialResultList(C==null?void 0:C.result,l,D,E,L);if(s==null||s.launchOperation(),$&&((E==null?void 0:E.length)>0?s==null||s.setBasicInfo(H.tool,E[v]):(s==null||s.setBasicInfo(H.tool),s==null||s.forbidOperation(),es.message.info(lbUtils.i18n.t("NoDependency")))),r.tool!=="check"){const K=(G=(q=E[v])==null?void 0:q.id)!=null?G:"",W=$?P.filter(X=>lbAnnotation.CommonToolUtils.isSameSourceID(X.sourceID,K)):P;l==null||l.history.initRecord(P,!0),l==null||l.setResult(W)}return __spreadProps(__spreadValues({},e),{imgIndex:I,basicIndex:v,basicResultList:E,resultList:P})}case Actions.ANNOTATION_ACTIONS.UPDATE_ANNOTATION_CONFIG:return __spreadProps(__spreadValues({},e),{config:(V=t.payload.config)!=null?V:"{}"});case Actions.ANNOTATION_ACTIONS.SET_TASK_STEP_LIST:{const{stepList:n}=t.payload;return __spreadProps(__spreadValues({},e),{stepList:n})}case Actions.ANNOTATION_ACTIONS.SET_TASK_CONFIG:{const{stepList:n,step:o}=t.payload;return __spreadProps(__spreadValues({},e),{stepList:n,step:o})}case Actions.ANNOTATION_ACTIONS.INIT_TOOL:{const{imgNode:n}=e,o=updateToolInstance(e,n);if(o){const{toolInstance:l,annotationEngine:s}=o;return __spreadProps(__spreadValues({},e),{toolInstance:l,annotationEngine:s})}return __spreadValues({},e)}case Actions.ANNOTATION_ACTIONS.SET_TOOL:{const n=(M=t.payload)==null?void 0:M.instance;return n?__spreadProps(__spreadValues({},e),{toolInstance:n}):__spreadValues({},e)}case Actions.ANNOTATION_ACTIONS.UPDATE_ON_SUBMIT:return __spreadProps(__spreadValues({},e),{onSubmit:t.payload.onSubmit});case Actions.ANNOTATION_ACTIONS.UPDATE_ON_SAVE:return __spreadProps(__spreadValues({},e),{onSave:t.payload.onSave});case Actions.ANNOTATION_ACTIONS.UPDATE_ON_PAGE_CHANGE:return __spreadProps(__spreadValues({},e),{onPageChange:t.payload.onPageChange});case Actions.ANNOTATION_ACTIONS.UPDATE_ON_STEP_CHANGE:return __spreadProps(__spreadValues({},e),{onStepChange:t.payload.onStepChange});case Actions.ANNOTATION_ACTIONS.UPDATE_GET_FILE_DATA:return __spreadProps(__spreadValues({},e),{getFileData:t.payload.getFileData});case Actions.ANNOTATION_ACTIONS.UPDATE_PAGE_SIZE:return __spreadProps(__spreadValues({},e),{pageSize:t.payload.pageSize});case Actions.ANNOTATION_ACTIONS.UPDATE_LOAD_FILE_LIST:return __spreadProps(__spreadValues({},e),{loadFileList:t.payload.loadFileList});case Actions.ANNOTATION_ACTIONS.UPDATE_BEFORE_ROTATE:return __spreadProps(__spreadValues({},e),{beforeRotate:t.payload.beforeRotate});case Actions.ANNOTATION_ACTIONS.SKIP_BEFORE_PAGE_TURNING:return __spreadProps(__spreadValues({},e),{skipBeforePageTurning:t.payload.skipBeforePageTurning});case Actions.ANNOTATION_ACTIONS.SET_FILE_DATA:{const{fileData:n,index:o}=t.payload,{imgList:l}=e,s=[...l];return s[o]=__spreadValues(__spreadValues({},s[o]),n),__spreadProps(__spreadValues({},e),{imgList:s})}case Actions.ANNOTATION_ACTIONS.UPDATE_ROTATE:{const{toolInstance:n,beforeRotate:o}=e;return o&&o()===!1||n==null||n.updateRotate(),e}case Actions.ANNOTATION_ACTIONS.UPDATE_ANNOTATION_VALID:{const{toolInstance:n}=e,o=(k=n==null?void 0:n.valid)!=null?k:!0;return antd.Modal.destroyAll(),antd.Modal.confirm({content:lbUtils.i18n.t(o?"updateValidFromValidToInValid":"updateValidFromInValidToValid"),onOk:()=>{n==null||n.setValid(!o)},okText:lbUtils.i18n.t("Confirm"),cancelText:lbUtils.i18n.t("Cancel")}),e}case Actions.ANNOTATION_ACTIONS.COPY_BACKWARD_RESULT:{const{toolInstance:n,imgIndex:o,imgList:l,step:s}=e;if(!n)return e;if(o===0||o>=l.length)return console.error("\u65E0\u6CD5\u590D\u5236\u8FB9\u754C\u5916\u7684\u5185\u5BB9"),e;const a=l[o-1].result;if(!a)return e;const r=AnnotationDataUtils.copyResultChange(a,s,(z=l[o].result)!=null?z:"");l[o]=__spreadProps(__spreadValues({},l[o]),{result:r});const c=index$1.jsonParser(r)[`step_${s}`],N=(c==null?void 0:c.result)||[];return n==null||n.setResult(N),n==null||n.history.pushHistory(N),__spreadProps(__spreadValues({},e),{imgList:[...l]})}case Actions.ANNOTATION_ACTIONS.SET_STEP:{const{stepList:n,annotationEngine:o}=e,{toStep:l}=t.payload;if(!o)return e;const s=getStepConfig(n,l);return o==null||o.setToolName(s.tool,s.config),__spreadProps(__spreadValues({},e),{step:l,toolInstance:o==null?void 0:o.toolInstance})}case Actions.ANNOTATION_ACTIONS.SET_LOADING:{const{loading:n}=t.payload;return __spreadProps(__spreadValues({},e),{loading:!!n})}case Actions.ANNOTATION_ACTIONS.SET_POINT_CLOUD_LOADING:{const{pointCloudLoading:n}=t.payload;return __spreadProps(__spreadValues({},e),{pointCloudLoading:!!n})}case Actions.ANNOTATION_ACTIONS.BATCH_UPDATE_TRACK_ID:{const{id:n,newID:o,rangeIndex:l}=t.payload,{imgList:s,imgIndex:a,onSubmit:r}=e,I=s.map((c,N)=>lbAnnotation.MathUtils.isInRange(N,l)?__spreadProps(__spreadValues({},c),{result:lbUtils.PointCloudUtils.batchUpdateTrackID({id:n,newID:o,result:c.result})}):c);return r&&r([I[a]],index.ESubmitType.BatchUpdateTrackID,a,I),__spreadProps(__spreadValues({},e),{imgList:I})}default:return e}};exports.LoadFileAndFileData=LoadFileAndFileData,exports.annotationReducer=annotationReducer,exports.getStepConfig=getStepConfig,exports.getTotalPage=getTotalPage;
@@ -1,5 +1,5 @@
1
1
  import { IPointCloudBox, IPointCloudBoxList, IPolygonData } from '@labelbee/lb-utils';
2
- import { PointCloud, PointCloudAnnotation } from '@labelbee/lb-annotation';
2
+ import { PointCloud, PointCloudAnnotation, ActionsHistory } from '@labelbee/lb-annotation';
3
3
  import React from 'react';
4
4
  interface IPointCloudContextInstances {
5
5
  topViewInstance?: PointCloudAnnotation;
@@ -27,6 +27,7 @@ export interface IPointCloudContext extends IPointCloudContextInstances {
27
27
  setPolygonList: (polygonList: IPolygonData[]) => void;
28
28
  zoom: number;
29
29
  setZoom: (zoom: number) => void;
30
+ history: ActionsHistory;
30
31
  }
31
32
  export declare const PointCloudContext: React.Context<IPointCloudContext>;
32
33
  export declare const PointCloudProvider: React.FC<{}>;
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { IAnnotationStateProps } from '@/store/annotation/map';
3
- declare const _default: import("react-redux").ConnectedComponent<React.FC<IAnnotationStateProps>, import("react-redux").Omit<IAnnotationStateProps & {
2
+ import { IA2MapStateProps } from '@/store/annotation/map';
3
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IA2MapStateProps>, import("react-redux").Omit<IA2MapStateProps & {
4
4
  children?: React.ReactNode;
5
- }, "currentData">>;
5
+ }, "imgList" | "currentData">>;
6
6
  export default _default;
@@ -0,0 +1,18 @@
1
+ import { IPointCloudBox, IPointCloudBoxList, IPolygonData } from '@labelbee/lb-utils';
2
+ export declare const useHistory: () => {
3
+ addHistory: ({ newBoxParams, newPolygon, }: {
4
+ newBoxParams?: IPointCloudBox | undefined;
5
+ newPolygon?: IPolygonData | undefined;
6
+ }) => void;
7
+ pushHistoryWithList: (params: Partial<{
8
+ pointCloudBoxList: IPointCloudBoxList;
9
+ polygonList: IPolygonData[];
10
+ }>) => void;
11
+ initHistory: ({ pointCloudBoxList, polygonList, }: {
12
+ pointCloudBoxList: IPointCloudBoxList;
13
+ polygonList: IPolygonData[];
14
+ }) => void;
15
+ pushHistoryUnderUpdatePolygon: (polygon: IPolygonData) => void;
16
+ redo: () => void;
17
+ undo: () => void;
18
+ };
@@ -6,6 +6,7 @@
6
6
  import { PointCloudAnnotation, PointCloud } from '@labelbee/lb-annotation';
7
7
  import { IPointCloudBox } from '@labelbee/lb-utils';
8
8
  import { ISize } from '@/types/main';
9
+ import { IFileItem } from '@/types/data';
9
10
  /**
10
11
  * Get the coordinate from canvas2d-coordinate to world coordinate
11
12
  */
@@ -47,17 +48,19 @@ export declare const usePointCloudViews: () => {
47
48
  topViewUpdateBox?: undefined;
48
49
  backViewUpdateBox?: undefined;
49
50
  pointCloudBoxListUpdated?: undefined;
50
- clearAllResult?: undefined;
51
51
  initPointCloud3d?: undefined;
52
52
  updatePointCloudData?: undefined;
53
53
  } | {
54
- topViewAddBox: (newPolygon: any, size: ISize) => void;
54
+ topViewAddBox: ({ newPolygon, size, imgList, }: {
55
+ newPolygon: any;
56
+ size: ISize;
57
+ imgList: IFileItem[];
58
+ }) => void;
55
59
  topViewSelectedChanged: () => void;
56
60
  topViewUpdateBox: (polygon: any, size: ISize) => void;
57
61
  sideViewUpdateBox: (newPolygon: any, originPolygon: any) => void;
58
62
  backViewUpdateBox: (newPolygon: any, originPolygon: any) => void;
59
63
  pointCloudBoxListUpdated: (newBoxes: IPointCloudBox[]) => void;
60
- clearAllResult: () => void;
61
64
  initPointCloud3d: () => void;
62
65
  updatePointCloudData: () => Promise<void>;
63
66
  };
@@ -6,4 +6,5 @@ import { IPolygonData } from '@labelbee/lb-utils';
6
6
  export declare const usePolygon: () => {
7
7
  addPolygon: (polygon: IPolygonData) => void;
8
8
  deletePolygon: (id: string) => void;
9
+ selectedPolygon: IPolygonData | undefined;
9
10
  };
@@ -12,7 +12,9 @@ export declare enum ESubmitType {
12
12
  Quit = 4,
13
13
  Export = 5,
14
14
  StepChanged = 6,
15
- Save = 7
15
+ Save = 7,
16
+ BatchUpdateTrackID = 8,
17
+ SyncImgList = 10001
16
18
  }
17
19
  export declare const prefix = "bee";
18
20
  export declare const componentCls: string;
@@ -10,12 +10,14 @@ export interface ICustomToolInstance {
10
10
  setResult: () => void;
11
11
  setValid: (valid: boolean) => void;
12
12
  history: {
13
- initRecord: () => void;
14
- pushHistory: () => void;
13
+ initRecord: (action: any) => void;
14
+ pushHistory: (action: any) => void;
15
15
  };
16
16
  setDefaultAttribute: (attribute: string) => void;
17
17
  setSubAttribute: (key: string, value: string) => void;
18
18
  updateRotate: () => void;
19
+ undo: () => void;
20
+ redo: () => void;
19
21
  }
20
22
  export interface ICustomToolInstanceProps {
21
23
  basicInfo?: {
@@ -30,6 +30,7 @@ export declare const ANNOTATION_ACTIONS: {
30
30
  SET_POINT_CLOUD_LOADING: string;
31
31
  SET_TASK_STEP_LIST: string;
32
32
  UPDATE_ANNOTATION_VALID: string;
33
+ BATCH_UPDATE_TRACK_ID: string;
33
34
  };
34
35
  export declare const IMAGE_ATTRIBUTE_ACTIONS: {
35
36
  UPDATE_IMG_ATTRIBUTE: string;
@@ -25,16 +25,17 @@ export declare function UpdateValid(): AnnotationActionTypes;
25
25
  export declare function UpdateSkipBeforePageTurning(skipBeforePageTurning: (pageTurning: Function) => {}): AnnotationActionTypes;
26
26
  export declare function UpdateBeforeRotate(beforeRotate: () => {}): AnnotationActionTypes;
27
27
  export declare function CopyBackWordResult(): AnnotationActionTypes;
28
+ export declare function BatchUpdateTrackID(id: number, newID: number, rangeIndex: [number, number]): AnnotationActionTypes;
28
29
  /**
29
30
  * 初始化任务数据
30
31
  * @param param0
31
32
  */
32
- export declare function InitTaskData({ onSubmit, onSave, onPageChange, onStepChange, getFileData, pageSize, loadFileList, step, stepList, skipBeforePageTurning, beforeRotate }: any): any;
33
+ export declare function InitTaskData({ onSubmit, onSave, onPageChange, onStepChange, getFileData, pageSize, loadFileList, step, stepList, skipBeforePageTurning, beforeRotate, }: any): any;
33
34
  /**
34
35
  * 初始化任务数据
35
36
  * @param param0
36
37
  */
37
- export declare function UpdateInjectFunc({ onSubmit, onSave, onPageChange, onStepChange, getFileData, pageSize, loadFileList, stepList, beforeRotate }: any): any;
38
+ export declare function UpdateInjectFunc({ onSubmit, onSave, onPageChange, onStepChange, getFileData, pageSize, loadFileList, stepList, beforeRotate, }: any): any;
38
39
  /** 切换到下一步 */
39
40
  export declare const ToNextStep: (pageNumber?: number | undefined) => (dispatch: any, getState: any) => any[];
40
41
  /**
@@ -11,3 +11,10 @@ export declare const aMapStateToProps: (state: AppState) => {
11
11
  export interface IAnnotationStateProps {
12
12
  currentData: IFileItem;
13
13
  }
14
+ export interface IA2MapStateProps extends IAnnotationStateProps {
15
+ imgList: IFileItem[];
16
+ }
17
+ export declare const a2MapStateToProps: (state: AppState) => {
18
+ currentData: any;
19
+ imgList: any;
20
+ };
@@ -127,5 +127,13 @@ interface UpdateGetFileList {
127
127
  interface CopyBackWordResult extends CommonActions {
128
128
  type: typeof ANNOTATION_ACTIONS.COPY_BACKWARD_RESULT;
129
129
  }
130
- export declare type AnnotationActionTypes = UpdateToolInstance | UpdateImgList | UpdateAnnotationConfig | SubmitFileData | LoadFileData | SetTaskConfig | InitTool | UpdateOnSubmit | UpdateOnPageChange | UpdateOnStepChange | UpdateGetFileData | UpdatePageSize | UpdateGetFileList | CopyBackWordResult | UpdateOnSave;
130
+ interface BatchUpdateTrackID {
131
+ type: typeof ANNOTATION_ACTIONS.BATCH_UPDATE_TRACK_ID;
132
+ payload: {
133
+ id: number;
134
+ newID: number;
135
+ range: [number, number];
136
+ };
137
+ }
138
+ export declare type AnnotationActionTypes = UpdateToolInstance | UpdateImgList | UpdateAnnotationConfig | SubmitFileData | LoadFileData | SetTaskConfig | InitTool | UpdateOnSubmit | UpdateOnPageChange | UpdateOnStepChange | UpdateGetFileData | UpdatePageSize | UpdateGetFileList | CopyBackWordResult | UpdateOnSave | BatchUpdateTrackID;
131
139
  export {};
@@ -0,0 +1,13 @@
1
+ /**
2
+ * 检查当前数字是否为有效数字
3
+ * @param value
4
+ * @param nonZero 是否包括 0
5
+ * @returns
6
+ */
7
+ export declare const isInvalidNumber: (value: any, nonZero?: boolean) => boolean;
8
+ export declare const decimalCheck: (rule: any, value: any, decimalNum?: number) => Promise<void>;
9
+ interface IProps {
10
+ id: number;
11
+ }
12
+ declare const BatchUpdateModal: ({ id }: IProps) => JSX.Element;
13
+ export default BatchUpdateModal;
@@ -1,11 +1,14 @@
1
1
  import React from 'react';
2
2
  import { IStepInfo } from '@/types/step';
3
3
  import { ICustomToolInstance } from '@/hooks/annotation';
4
+ import { IFileItem } from '@/types/data';
4
5
  interface IProps {
5
6
  stepInfo: IStepInfo;
6
7
  toolInstance: ICustomToolInstance;
8
+ imgList: IFileItem[];
9
+ imgIndex: number;
7
10
  }
8
11
  declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
9
12
  children?: React.ReactNode;
10
- }, "toolInstance" | "stepInfo">>;
13
+ }, "imgIndex" | "imgList" | "toolInstance" | "stepInfo">>;
11
14
  export default _default;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index=require("../../../../../../constant/index.js"),actionCreators=require("../../../../../../store/annotation/actionCreators.js"),ctx=require("../../../../../../store/ctx.js"),antd=require("antd"),React=require("react");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,r)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,__spreadValues=(e,t)=>{for(var r in t||(t={}))__hasOwnProp.call(t,r)&&__defNormalProp(e,r,t[r]);if(__getOwnPropSymbols)for(var r of __getOwnPropSymbols(t))__propIsEnum.call(t,r)&&__defNormalProp(e,r,t[r]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t));const layout={labelCol:{span:8},wrapperCol:{span:16}},isInvalidNumber=(e,t=!1)=>{const r=Number(e);return!!(typeof e=="undefined"||r<0||isNaN(r)||t===!0&&r===0)},decimalCheck=(e,t,r=0)=>{const u=Number(t);if(isInvalidNumber(t))return Promise.reject(new Error("\u8BF7\u8F93\u5165\u4E00\u4E2A\u5927\u4E8E\u7B49\u4E8E0\u7684\u6570\u5B57"));const a=u.toString().split(".")[1];if((a==null?void 0:a.length)>r){let n=`\u8BF7\u8F93\u5165\u4E00\u4E2A\u5C0F\u6570\u4F4D\u6570\u4E0D\u8D85\u8FC7${r}\u4F4D\u6570\u7684\u6570\u5B57`;return r<1&&(n="\u8BF7\u8F93\u5165\u4E00\u4E2A\u6B63\u6574\u6570"),Promise.reject(n)}return Promise.resolve()},defaultNumberRules=[{required:!0,message:"\u8BF7\u586B\u5199\u4E00\u4E2A\u6570\u5B57"},{validator:(e,t)=>decimalCheck(e,t,0)}],BatchUpdateModal=({id:e})=>{const t=ctx.useDispatch(),[r,u]=React.useState(!1),[a]=antd.Form.useForm(),n=l=>{t(actionCreators.ToSubmitFileData(index.ESubmitType.SyncImgList)),t(actionCreators.BatchUpdateTrackID(e,l.newID,[l.prevPage-1,l.nextPage-1])),u(!1)};return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement("span",{onClick:()=>u(!0)},"\u6279\u91CF\u4FEE\u6539"),React__default.default.createElement(antd.Modal,{title:"\u6279\u91CF\u4FEE\u6539ID",visible:r,onCancel:()=>u(!1),onOk:()=>a.submit()},React__default.default.createElement(antd.Form,__spreadProps(__spreadValues({},layout),{form:a,onFinish:n}),React__default.default.createElement(antd.Form.Item,{name:"id",label:"\u5F53\u524D\u6807\u6CE8\u6846ID"},e),React__default.default.createElement(antd.Form.Item,{name:"newID",label:"\u7EDF\u4E00\u6807\u6CE8\u6846ID\u4E3A",rules:defaultNumberRules},React__default.default.createElement(antd.InputNumber,null)),React__default.default.createElement(antd.Form.Item,{label:"\u7EDF\u4E00ID\u8303\u56F4",required:!0},React__default.default.createElement(antd.Form.Item,{style:{display:"inline-block",width:"calc(50% - 24px)"},rules:defaultNumberRules,name:"prevPage"},React__default.default.createElement(antd.InputNumber,null)),React__default.default.createElement("span",{style:{display:"inline-block",width:"24px",lineHeight:"32px",textAlign:"center"}},"-"),React__default.default.createElement(antd.Form.Item,{style:{display:"inline-block",width:"calc(50% - 24px)"},rules:defaultNumberRules,name:"nextPage"},React__default.default.createElement(antd.InputNumber,null)),React__default.default.createElement("span",{style:{display:"inline-block",width:"24px",lineHeight:"32px",textAlign:"center"}},"\u9875")))))};exports.decimalCheck=decimalCheck,exports.default=BatchUpdateModal,exports.isInvalidNumber=isInvalidNumber;
@@ -1 +1 @@
1
- "use strict";var React=require("react"),ToolIcons=require("../ToolIcons.js"),lbAnnotation=require("@labelbee/lb-annotation"),PointCloudContext=require("../../../../components/pointCloudView/PointCloudContext.js"),antd=require("antd"),StepUtils=require("../../../../utils/StepUtils.js"),reactRedux=require("react-redux"),index=require("../../../../utils/index.js"),useStatus=require("../../../../components/pointCloudView/hooks/useStatus.js"),useSingleBox=require("../../../../components/pointCloudView/hooks/useSingleBox.js"),reactI18next=require("react-i18next"),ctx=require("../../../../store/ctx.js");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const AttributeUpdater=({attributeList:t,subAttributeList:r,toolInstance:l})=>{var n;const u=React.useContext(PointCloudContext.PointCloudContext),{t:o}=reactI18next.useTranslation(),d={fontWeight:400,fontSize:14,marginBottom:14},a=e=>{l.setDefaultAttribute(e)},c=(e,i)=>{l.setSubAttribute(e,i)};return React__default.default.createElement("div",{style:{padding:24,borderBottom:"1px solid #eee"}},React__default.default.createElement("div",{style:{marginBottom:20,fontSize:14,fontWeight:500}},o("Tag")),React__default.default.createElement(antd.Row,{style:{marginBottom:12}},React__default.default.createElement(antd.Col,{span:9,style:d},o("Attribute")),React__default.default.createElement(antd.Col,{span:15},React__default.default.createElement(antd.Radio.Group,{style:{width:"100%"},value:(n=u.selectedPointCloudBox)==null?void 0:n.attribute,onChange:e=>a(e.target.value)},t.map(e=>React__default.default.createElement(antd.Radio,{key:e.value,value:e.value,style:{marginBottom:16}},e.key))))),React__default.default.createElement("div",{style:d}," ",o("SubAttribute")),r.map(e=>{var i,v;return(e==null?void 0:e.subSelected)&&React__default.default.createElement(antd.Row,{key:e.value,style:{marginBottom:18}},React__default.default.createElement(antd.Col,{span:9,style:{color:"#999999",display:"flex",justifyContent:"flex-start",alignItems:"center"}},e.key),React__default.default.createElement(antd.Col,{span:15},React__default.default.createElement(antd.Select,{style:{width:"100%"},bordered:!1,value:(v=(i=u.selectedPointCloudBox)==null?void 0:i.subAttribute)==null?void 0:v[e.value],placeholder:o("PleaseSelect"),onChange:s=>c(e.value,s),allowClear:!0},e.subSelected.map(s=>React__default.default.createElement(antd.Select.Option,{key:s.value,value:s.value},s.key)))))}))},PointCloudToolSidebar=({stepInfo:t,toolInstance:r})=>{var l,n;const{selectedBox:u}=useSingleBox.useSingleBox(),{updatePointCloudPattern:o,pointCloudPattern:d}=useStatus.useStatus(),a=index.jsonParser(t.config),c=(l=a==null?void 0:a.attributeList)!=null?l:[],e=(a==null?void 0:a.secondaryAttributeConfigurable)===!0?(n=a==null?void 0:a.inputList)!=null?n:[]:[];return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(ToolIcons.ToolIcons,{toolName:lbAnnotation.cTool.EPointCloudName.PointCloud,selectedToolName:d,onChange:i=>o==null?void 0:o(i)}),u&&React__default.default.createElement(AttributeUpdater,{toolInstance:r,attributeList:c,subAttributeList:e}))},mapStateToProps=t=>{var r,l,n;const u=StepUtils.getCurrentStepInfo((r=t.annotation)==null?void 0:r.step,(l=t.annotation)==null?void 0:l.stepList),o=(n=t.annotation)==null?void 0:n.toolInstance;return{stepInfo:u,toolInstance:o}};var PointCloudToolSidebar$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloudToolSidebar);module.exports=PointCloudToolSidebar$1;
1
+ "use strict";var React=require("react"),icons=require("@ant-design/icons"),ToolIcons=require("../ToolIcons.js"),lbAnnotation=require("@labelbee/lb-annotation"),PointCloudContext=require("../../../../components/pointCloudView/PointCloudContext.js"),antd=require("antd"),StepUtils=require("../../../../utils/StepUtils.js"),reactRedux=require("react-redux"),index=require("../../../../utils/index.js"),useStatus=require("../../../../components/pointCloudView/hooks/useStatus.js"),useSingleBox=require("../../../../components/pointCloudView/hooks/useSingleBox.js"),reactI18next=require("react-i18next"),ctx=require("../../../../store/ctx.js"),index$1=require("./components/batchUpdateModal/index.js"),lbUtils=require("@labelbee/lb-utils");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const AnnotatedBox=({imgList:t,imgIndex:i})=>{const s=React.useContext(PointCloudContext.PointCloudContext),[o,d]=React.useState([]);React.useEffect(()=>{const c=t;let n=new Map;d(lbUtils.PointCloudUtils.getAllPointCloudResult({imgList:c,extraBoxList:a,ignoreIndexList:[i]}).filter(l=>!l.trackID||n.get(l.trackID)?!1:(n.set(l.trackID,!0),!0)).sort((l,e)=>{var u,r;const f=(u=l==null?void 0:l.trackID)!=null?u:0,m=(r=e==null?void 0:e.trackID)!=null?r:0;return f-m}).map(l=>{var e;return(e=l==null?void 0:l.trackID)!=null?e:0}))},[s.pointCloudBoxList,t]);const{pointCloudBoxList:a}=s;return React__default.default.createElement("div",{style:{padding:24,borderBottom:"1px solid #eee"}},React__default.default.createElement("div",{style:{marginBottom:16}},"\u6240\u6709\u5DF2\u6807\u6CE8\u7684\u6846ID"),React__default.default.createElement("div",null,o.map(c=>React__default.default.createElement(antd.Tag,{color:"#F3F4FF",key:c,style:{color:"#666",marginBottom:8}},c))))},BoxTrackIDInput=()=>{const[t,i]=React.useState(!1),{pointCloudBoxList:s}=React.useContext(PointCloudContext.PointCloudContext),{selectedBox:o,updateSelectedBox:d}=useSingleBox.useSingleBox(),[a,c]=React.useState(""),n=o==null?void 0:o.info.trackID,l=u=>{const r=s.find(f=>f.trackID===n);return r&&r.id!==(o==null?void 0:o.info.id)},e=(u=!1)=>{const r=parseInt(a,10);if(u&&i(!1),isNaN(r)){antd.message.error("\u8BF7\u8F93\u5165\u6B63\u6574\u6570");return}if(a.indexOf(".")>-1){antd.message.error("\u8F93\u5165trackID\u4E0D\u5141\u8BB8\u5305\u542B\u5C0F\u6570\u70B9");return}if(l()){antd.message.error("\u5B58\u5728\u91CD\u590D\u7684trackID");return}if(!(r>0)){antd.message.error("\u8F93\u5165trackID\u5FC5\u987B\u4E3A\u6B63\u6574\u6570!");return}d({trackID:r})};return React.useEffect(()=>{i(!1)},[n]),React__default.default.createElement("div",{style:{padding:24}},React__default.default.createElement("div",{style:{marginBottom:16,display:"flex",justifyContent:"space-between",alignItems:"center"}},React__default.default.createElement("span",null,"\u5F53\u524D\u6807\u6CE8\u6846ID"),n&&React__default.default.createElement(index$1.default,{id:n})),React__default.default.createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"}},t&&n?React__default.default.createElement(antd.Input,{defaultValue:n,onChange:u=>{c(u.target.value)},disabled:!n,size:"small",onBlur:()=>{e()},onPressEnter:()=>{e(!0)}}):React__default.default.createElement("span",null,n),React__default.default.createElement(icons.EditFilled,{style:{color:"#999",marginLeft:16,cursor:typeof n!="undefined"?"pointer":"not-allowed"},onClick:()=>{n&&i(!t)}})))},AttributeUpdater=({attributeList:t,subAttributeList:i,toolInstance:s})=>{var o;const d=React.useContext(PointCloudContext.PointCloudContext),{t:a}=reactI18next.useTranslation(),c={fontWeight:400,fontSize:14,marginBottom:14},n=e=>{s.setDefaultAttribute(e)},l=(e,u)=>{s.setSubAttribute(e,u)};return React__default.default.createElement("div",{style:{padding:24,borderBottom:"1px solid #eee"}},React__default.default.createElement("div",{style:{marginBottom:20,fontSize:14,fontWeight:500}},a("Tag")),React__default.default.createElement(antd.Row,{style:{marginBottom:12}},React__default.default.createElement(antd.Col,{span:9,style:c},a("Attribute")),React__default.default.createElement(antd.Col,{span:15},React__default.default.createElement(antd.Radio.Group,{style:{width:"100%"},value:(o=d.selectedPointCloudBox)==null?void 0:o.attribute,onChange:e=>n(e.target.value)},t.map(e=>React__default.default.createElement(antd.Radio,{key:e.value,value:e.value,style:{marginBottom:16}},e.key))))),React__default.default.createElement("div",{style:c}," ",a("SubAttribute")),i.map(e=>{var u,r;return(e==null?void 0:e.subSelected)&&React__default.default.createElement(antd.Row,{key:e.value,style:{marginBottom:18}},React__default.default.createElement(antd.Col,{span:9,style:{color:"#999999",display:"flex",justifyContent:"flex-start",alignItems:"center"}},e.key),React__default.default.createElement(antd.Col,{span:15},React__default.default.createElement(antd.Select,{style:{width:"100%"},bordered:!1,value:(r=(u=d.selectedPointCloudBox)==null?void 0:u.subAttribute)==null?void 0:r[e.value],placeholder:a("PleaseSelect"),onChange:f=>l(e.value,f),allowClear:!0},e.subSelected.map(f=>React__default.default.createElement(antd.Select.Option,{key:f.value,value:f.value},f.key)))))}))},PointCloudToolSidebar=({stepInfo:t,toolInstance:i,imgList:s,imgIndex:o})=>{var d,a;const{selectedBox:c}=useSingleBox.useSingleBox(),{updatePointCloudPattern:n,pointCloudPattern:l}=useStatus.useStatus(),e=index.jsonParser(t.config),u=(d=e==null?void 0:e.attributeList)!=null?d:[],r=(e==null?void 0:e.secondaryAttributeConfigurable)===!0?(a=e==null?void 0:e.inputList)!=null?a:[]:[];return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(ToolIcons.ToolIcons,{toolName:lbAnnotation.cTool.EPointCloudName.PointCloud,selectedToolName:l,onChange:f=>n==null?void 0:n(f)}),React__default.default.createElement(AnnotatedBox,{imgList:s,imgIndex:o}),React__default.default.createElement(BoxTrackIDInput,null),c&&React__default.default.createElement(AttributeUpdater,{toolInstance:i,attributeList:u,subAttributeList:r}))},mapStateToProps=t=>{var i,s,o;const d=StepUtils.getCurrentStepInfo((i=t.annotation)==null?void 0:i.step,(s=t.annotation)==null?void 0:s.stepList),a=(o=t.annotation)==null?void 0:o.toolInstance;return{stepInfo:d,toolInstance:a,imgList:t.annotation.imgList,imgIndex:t.annotation.imgIndex}};var PointCloudToolSidebar$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloudToolSidebar);module.exports=PointCloudToolSidebar$1;