@labelbee/lb-components 1.23.0-alpha.12 → 1.23.0-alpha.14

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 (36) hide show
  1. package/dist/App.js +1 -1
  2. package/dist/components/LLMToolView/index.js +1 -1
  3. package/dist/components/LLMToolView/sidebar/components/textEditor/index.js +1 -1
  4. package/dist/components/LLMToolView/sidebar/components/textEditor/index.module.scss.js +1 -1
  5. package/dist/components/LLMToolView/sidebar/index.js +1 -1
  6. package/dist/components/LLMToolView/utils/data.js +1 -1
  7. package/dist/components/pointCloud2DRectOperationView/index.js +1 -1
  8. package/dist/components/pointCloudView/PointCloud2DView.js +1 -1
  9. package/dist/components/pointCloudView/PointCloudContext.js +1 -1
  10. package/dist/components/pointCloudView/hooks/useStatus.js +1 -1
  11. package/dist/components/pointCloudView/index.js +1 -1
  12. package/dist/index.css +6 -0
  13. package/dist/store/annotation/reducer.js +1 -1
  14. package/dist/types/components/LLMToolView/utils/data.d.ts +1 -1
  15. package/dist/types/components/pointCloudView/PointCloud2DView.d.ts +1 -1
  16. package/dist/types/components/pointCloudView/PointCloudContext.d.ts +6 -1
  17. package/dist/types/utils/data.d.ts +2 -0
  18. package/dist/types/utils/index.d.ts +4 -1
  19. package/dist/utils/data.js +1 -1
  20. package/dist/utils/index.js +1 -1
  21. package/es/App.js +1 -1
  22. package/es/components/LLMToolView/index.js +1 -1
  23. package/es/components/LLMToolView/sidebar/components/textEditor/index.js +2 -2
  24. package/es/components/LLMToolView/sidebar/components/textEditor/index.module.scss.js +1 -1
  25. package/es/components/LLMToolView/sidebar/index.js +1 -1
  26. package/es/components/LLMToolView/utils/data.js +1 -1
  27. package/es/components/pointCloud2DRectOperationView/index.js +1 -1
  28. package/es/components/pointCloudView/PointCloud2DView.js +1 -1
  29. package/es/components/pointCloudView/PointCloudContext.js +1 -1
  30. package/es/components/pointCloudView/hooks/useStatus.js +1 -1
  31. package/es/components/pointCloudView/index.js +1 -1
  32. package/es/index.css +6 -0
  33. package/es/store/annotation/reducer.js +1 -1
  34. package/es/utils/data.js +1 -1
  35. package/es/utils/index.js +1 -1
  36. package/package.json +3 -3
package/dist/App.js CHANGED
@@ -1 +1 @@
1
- "use strict";var index$1=require("./views/MainView/index.js"),lbUtils=require("@labelbee/lb-utils"),React=require("react"),reactRedux=require("react-redux"),index=require("./index.js"),ctx=require("./store/ctx.js"),Actions=require("./store/Actions.js"),actionCreators=require("./store/annotation/actionCreators.js"),reducer=require("./store/annotation/reducer.js"),es=require("antd/es"),zhCN=require("antd/es/locale/zh_CN"),enUS=require("antd/es/locale/en_US");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),zhCN__default=_interopDefaultLegacy(zhCN),enUS__default=_interopDefaultLegacy(enUS),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,a)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,__spreadValues=(e,t)=>{for(var a in t||(t={}))__hasOwnProp.call(t,a)&&__defNormalProp(e,a,t[a]);if(__getOwnPropSymbols)for(var a of __getOwnPropSymbols(t))__propIsEnum.call(t,a)&&__defNormalProp(e,a,t[a]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t));const App=e=>{const[t,a]=React.useState(0),{imgList:o,step:O=1,stepList:i,onSubmit:s,onSave:l,onPageChange:c,onStepChange:u,initialIndex:d=0,toolInstance:P,setToolInstance:I,getFileData:p,pageSize:f=10,loadFileList:r,defaultLang:g="cn",skipBeforePageTurning:S,beforeRotate:v,checkMode:m=!1,intelligentFit:L=!0,highlightAttribute:_="",preDataProcess:h}=e;React.useEffect(()=>{index.store.dispatch(actionCreators.InitTaskData({onSubmit:s,stepList:i,step:O,getFileData:p,pageSize:f,loadFileList:r,onSave:l,onPageChange:c,onStepChange:u,skipBeforePageTurning:S,beforeRotate:v,checkMode:m,highlightAttribute:_,preDataProcess:h})),b(),lbUtils.i18n.changeLanguage(g);const n=()=>{a(C=>C+1)};return lbUtils.i18n.on("languageChanged",n),()=>{lbUtils.i18n.off("languageChanged",n),actionCreators.InitAnnotationState(index.store.dispatch)}},[]),React.useEffect(()=>{index.store.dispatch(actionCreators.UpdateInjectFunc({onSubmit:s,stepList:i,getFileData:p,pageSize:f,loadFileList:r,onSave:l,onPageChange:c,onStepChange:u,beforeRotate:v,highlightAttribute:_,preDataProcess:h})),lbUtils.i18n.changeLanguage(g)},[s,i,p,f,r,l,c,u,g,v,_,h]),React.useEffect(()=>{I==null||I(P)},[P]);const b=()=>{r?actionCreators.loadImgList(index.store.dispatch,index.store.getState,d,!0).then(n=>{n&&index.store.dispatch(reducer.LoadFileAndFileData(d))}):o&&o.length>0&&(index.store.dispatch({type:Actions.ANNOTATION_ACTIONS.UPDATE_IMG_LIST,payload:{imgList:o}}),index.store.dispatch(reducer.LoadFileAndFileData(d)))};return React__default.default.createElement("div",null,React__default.default.createElement(es.ConfigProvider,{locale:lbUtils.i18n.language==="en"?enUS__default.default:zhCN__default.default},React__default.default.createElement(index$1,__spreadProps(__spreadValues({},e),{intelligentFit:L,checkMode:m}))))},mapStateToProps=e=>({toolInstance:e.annotation.toolInstance});var App$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(App);module.exports=App$1;
1
+ "use strict";var index$1=require("./views/MainView/index.js"),lbUtils=require("@labelbee/lb-utils"),React=require("react"),reactRedux=require("react-redux"),index=require("./index.js"),ctx=require("./store/ctx.js"),Actions=require("./store/Actions.js"),actionCreators=require("./store/annotation/actionCreators.js"),reducer=require("./store/annotation/reducer.js"),es=require("antd/es"),zhCN=require("antd/es/locale/zh_CN"),enUS=require("antd/es/locale/en_US");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),zhCN__default=_interopDefaultLegacy(zhCN),enUS__default=_interopDefaultLegacy(enUS),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,a)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,__spreadValues=(e,t)=>{for(var a in t||(t={}))__hasOwnProp.call(t,a)&&__defNormalProp(e,a,t[a]);if(__getOwnPropSymbols)for(var a of __getOwnPropSymbols(t))__propIsEnum.call(t,a)&&__defNormalProp(e,a,t[a]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t));const App=e=>{const[t,a]=React.useState(0),{imgList:o,step:i=1,stepList:s,onSubmit:l,onSave:c,onPageChange:u,onStepChange:d,initialIndex:p=0,toolInstance:S,setToolInstance:I,getFileData:f,pageSize:g=10,loadFileList:r,defaultLang:_="cn",skipBeforePageTurning:m,beforeRotate:v,checkMode:O=!1,intelligentFit:A=!0,highlightAttribute:h="",preDataProcess:P}=e;React.useEffect(()=>{index.store.dispatch(actionCreators.InitTaskData({onSubmit:l,stepList:s,step:i,getFileData:f,pageSize:g,loadFileList:r,onSave:c,onPageChange:u,onStepChange:d,skipBeforePageTurning:m,beforeRotate:v,checkMode:O,highlightAttribute:h,preDataProcess:P})),C(),lbUtils.i18n.changeLanguage(_);const n=()=>{a(L=>L+1)};return lbUtils.i18n.on("languageChanged",n),()=>{lbUtils.i18n.off("languageChanged",n),actionCreators.InitAnnotationState(index.store.dispatch)}},[]),React.useEffect(()=>{index.store.dispatch(actionCreators.UpdateInjectFunc({onSubmit:l,stepList:s,getFileData:f,pageSize:g,loadFileList:r,onSave:c,onPageChange:u,onStepChange:d,beforeRotate:v,highlightAttribute:h,preDataProcess:P})),lbUtils.i18n.changeLanguage(_)},[l,s,f,g,r,c,u,d,_,v,h,P]),React.useEffect(()=>{I==null||I(S)},[S]),React.useEffect(()=>{index.store.dispatch({type:Actions.ANNOTATION_ACTIONS.SET_STEP,payload:{toStep:i}})},[i]);const C=()=>{r?actionCreators.loadImgList(index.store.dispatch,index.store.getState,p,!0).then(n=>{n&&index.store.dispatch(reducer.LoadFileAndFileData(p))}):o&&o.length>0&&(index.store.dispatch({type:Actions.ANNOTATION_ACTIONS.UPDATE_IMG_LIST,payload:{imgList:o}}),index.store.dispatch(reducer.LoadFileAndFileData(p)))};return React__default.default.createElement("div",null,React__default.default.createElement(es.ConfigProvider,{locale:lbUtils.i18n.language==="en"?enUS__default.default:zhCN__default.default},React__default.default.createElement(index$1,__spreadProps(__spreadValues({},e),{intelligentFit:A,checkMode:O}))))},mapStateToProps=e=>({toolInstance:e.annotation.toolInstance});var App$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(App);module.exports=App$1;
@@ -1 +1 @@
1
- "use strict";var React=require("react"),reactRedux=require("react-redux"),ctx=require("../../store/ctx.js"),antd=require("antd"),index=require("../../constant/index.js"),es=require("antd/es"),index$4=require("./questionView/index.js"),reactI18next=require("react-i18next"),index$3=require("../../views/MainView/annotationTips/index.js"),data=require("./utils/data.js"),reducer=require("../../store/annotation/reducer.js"),index$1=require("../../utils/index.js"),index$2=require("../messageMaskLayer/index.js");function _interopDefaultLegacy(n){return n&&typeof n=="object"&&"default"in n?n:{default:n}}var React__default=_interopDefaultLegacy(React);const LLMViewCls=`${index.prefix}-LLMView`,LLMToolView=n=>{const{annotation:p,checkMode:x=!0,tips:E,showTips:T,drawLayerSlot:m}=n,{imgIndex:i,imgList:o,stepList:f,step:L,toolInstance:r}=p,{hoverKey:y,modelAPIResponse:I,setModelAPIResponse:q,newAnswerList:u}=React.useContext(ctx.LLMContext),[_,j]=React.useState([]),[R,C]=React.useState(""),[t,S]=React.useState(),{t:g}=reactI18next.useTranslation(),[,A]=React.useState(0);return React.useEffect(()=>{let e;if(!x)return e=setInterval(()=>{antd.message.info(g("EfficientListening"))},1e3*60),()=>{e&&clearInterval(e)}},[]),React.useEffect(()=>{if(r)return r.on("validUpdated",()=>{A(e=>e+1)}),()=>{r.unbindAll("validUpdated")}},[r]),React.useEffect(()=>{var e,s,a,l,w,M;if(!o[i])return;const D=((e=t==null?void 0:t.dataType)==null?void 0:e.prompt)===index.ELLMDataType.Picture,P=((s=t==null?void 0:t.dataType)==null?void 0:s.response)===index.ELLMDataType.Picture,d=(a=o[i])==null?void 0:a.questionList,c=(l=o[i])==null?void 0:l.llmFile,$=D?c==null?void 0:c.question:d==null?void 0:d.question;C($);let v=(d==null?void 0:d.answerList)||[];P&&(v=(c==null?void 0:c.answerList)||[]),((w=t==null?void 0:t.dataType)==null?void 0:w.response)===index.ELLMDataType.None&&(v=[]),((M=t==null?void 0:t.dataType)==null?void 0:M.response)===index.ELLMDataType.Text&&(u==null?void 0:u.length)>0&&(v=u),j(v)},[i,u,t]),React.useEffect(()=>{var e;if(!o[i])return;const s=(e=o[i])!=null?e:{},a=data.getCurrentResultFromResultList(s==null?void 0:s.result),l=(a==null?void 0:a.length)>0?a[0]:a;q((l==null?void 0:l.modelAPIResponse)||[])},[i]),React.useEffect(()=>{var e;if(f&&L){const s=(e=reducer.getStepConfig(f,L))==null?void 0:e.config;S(index$1.jsonParser(s))}},[f,L]),React__default.default.createElement(es.Layout,{className:LLMViewCls},!(r==null?void 0:r.valid)&&React__default.default.createElement(index$2,{message:g("InvalidQuestionAndSkip")}),m==null?void 0:m({}),React__default.default.createElement("div",{className:`${LLMViewCls}-question`},T===!0&&React__default.default.createElement(index$3,{tips:E}),React__default.default.createElement(index$4.default,{hoverKey:y,question:R,answerList:_,modelAPIResponse:I,setModelAPIResponse:q,checkMode:x,annotation:p,LLMConfig:t})))},mapStateToProps=n=>({annotation:n.annotation});var LLMToolView$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(LLMToolView);module.exports=LLMToolView$1;
1
+ "use strict";var React=require("react"),reactRedux=require("react-redux"),ctx=require("../../store/ctx.js"),antd=require("antd"),index=require("../../constant/index.js"),es=require("antd/es"),index$4=require("./questionView/index.js"),reactI18next=require("react-i18next"),index$3=require("../../views/MainView/annotationTips/index.js"),data=require("./utils/data.js"),reducer=require("../../store/annotation/reducer.js"),index$1=require("../../utils/index.js"),index$2=require("../messageMaskLayer/index.js");function _interopDefaultLegacy(n){return n&&typeof n=="object"&&"default"in n?n:{default:n}}var React__default=_interopDefaultLegacy(React);const LLMViewCls=`${index.prefix}-LLMView`,LLMToolView=n=>{const{annotation:p,checkMode:x=!0,tips:E,showTips:T,drawLayerSlot:m}=n,{imgIndex:i,imgList:o,stepList:L,step:u,toolInstance:r}=p,{hoverKey:y,modelAPIResponse:I,setModelAPIResponse:q,newAnswerList:d}=React.useContext(ctx.LLMContext),[_,j]=React.useState([]),[R,C]=React.useState(""),[t,S]=React.useState(),{t:g}=reactI18next.useTranslation(),[,A]=React.useState(0);return React.useEffect(()=>{let e;if(!x)return e=setInterval(()=>{antd.message.info(g("EfficientListening"))},1e3*60),()=>{e&&clearInterval(e)}},[]),React.useEffect(()=>{if(r)return r.on("validUpdated",()=>{A(e=>e+1)}),()=>{r.unbindAll("validUpdated")}},[r]),React.useEffect(()=>{var e,s,a,l,w,M;if(!o[i])return;const D=((e=t==null?void 0:t.dataType)==null?void 0:e.prompt)===index.ELLMDataType.Picture,P=((s=t==null?void 0:t.dataType)==null?void 0:s.response)===index.ELLMDataType.Picture,c=(a=o[i])==null?void 0:a.questionList,v=(l=o[i])==null?void 0:l.llmFile,$=D?v==null?void 0:v.question:c==null?void 0:c.question;C($);let f=(c==null?void 0:c.answerList)||[];P&&(f=(v==null?void 0:v.answerList)||[]),((w=t==null?void 0:t.dataType)==null?void 0:w.response)===index.ELLMDataType.None&&(f=[]),((M=t==null?void 0:t.dataType)==null?void 0:M.response)===index.ELLMDataType.Text&&(d==null?void 0:d.length)>0&&(f=d),j(f)},[i,d,t]),React.useEffect(()=>{var e;if(!o[i])return;const s=(e=o[i])!=null?e:{},a=data.getCurrentResultFromResultList(s==null?void 0:s.result,u),l=(a==null?void 0:a.length)>0?a[0]:a;q((l==null?void 0:l.modelAPIResponse)||[])},[i]),React.useEffect(()=>{var e;if(L&&u){const s=(e=reducer.getStepConfig(L,u))==null?void 0:e.config;S(index$1.jsonParser(s))}},[L,u]),React__default.default.createElement(es.Layout,{className:LLMViewCls},!(r==null?void 0:r.valid)&&React__default.default.createElement(index$2,{message:g("InvalidQuestionAndSkip")}),m==null?void 0:m({}),React__default.default.createElement("div",{className:`${LLMViewCls}-question`},T===!0&&React__default.default.createElement(index$3,{tips:E}),React__default.default.createElement(index$4.default,{hoverKey:y,question:R,answerList:_,modelAPIResponse:I,setModelAPIResponse:q,checkMode:x,annotation:p,LLMConfig:t})))},mapStateToProps=n=>({annotation:n.annotation});var LLMToolView$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(LLMToolView);module.exports=LLMToolView$1;
@@ -1,2 +1,2 @@
1
- "use strict";var React=require("react"),antd=require("antd"),reactI18next=require("react-i18next"),icons=require("@ant-design/icons"),index$1=require("../../../../markdownView/index.js"),index=require("../../../../latexEditor/index.js"),index_module=require("./index.module.scss.js");function _interopDefaultLegacy(n){return n&&typeof n=="object"&&"default"in n?n:{default:n}}var React__default=_interopDefaultLegacy(React);const TextEditor=n=>{const{disabeledAll:c,newAnswer:f,textEditObject:g,updateValue:x,answerIndex:v}=n,{max:r,min:i,isLaText:E}=g,{TextArea:p}=antd.Input,[l]=antd.Form.useForm(),{t:s}=reactI18next.useTranslation(),h=s("LeastCharacterError",{num:i});React.useEffect(()=>{l.setFieldsValue({value:f}),c||l.validateFields()},[f]);const b=t=>{var e,d;const w=`inputTextarea_${v}`,a=document.getElementById(w),u=a.value||"",m=(e=a==null?void 0:a.selectionStart)!=null?e:u.length,y=(d=a.selectionEnd)!=null?d:u.length,F=u.substring(0,m),_=u.substring(y,u.length),o=F+t+_;if(r&&(o==null?void 0:o.length)>r){antd.message.error(s("MaximumCharacterError",{num:r}));return}a.value=o,l.setFieldsValue({value:o}),x(o),a.selectionStart=m+t.length,a.selectionEnd=m+t.length,a.focus()};return React__default.default.createElement(antd.Form,{form:l,onValuesChange:(t,e)=>{const d=e.value;x(d)},className:index_module.form},React__default.default.createElement(antd.Form.Item,{name:"title",style:{marginBottom:"8px"},label:React__default.default.createElement(React__default.default.Fragment,null,s("AnswerTextEdit"),React__default.default.createElement(antd.Popover,{placement:"bottom",content:s("ShowEditingResultDifferencesInTextModeOnly")},React__default.default.createElement(icons.InfoCircleOutlined,{style:{margin:"0px 4px",cursor:"pointer"}}))),colon:!1,required:!!i}),E&&React__default.default.createElement(index,{onSelectLatex:b,disabled:c}),React__default.default.createElement(antd.Form.Item,{name:"value",style:{marginBottom:24},rules:[{validator:(t,e="")=>i&&(e==null?void 0:e.length)<Number(i)?Promise.reject(h):Promise.resolve()}]},React__default.default.createElement(p,{maxLength:r,autoSize:{minRows:4,maxRows:10},allowClear:!0,disabled:c,showCount:!!r,style:{width:"100%"},id:`inputTextarea_${v}`})),E&&React__default.default.createElement(antd.Form.Item,{shouldUpdate:!0,noStyle:!0},()=>{const t=l.getFieldValue("value")||"",e=t.replace(/\n/g,`
1
+ "use strict";var React=require("react"),antd=require("antd"),reactI18next=require("react-i18next"),icons=require("@ant-design/icons"),index$1=require("../../../../markdownView/index.js"),index=require("../../../../latexEditor/index.js"),index_module=require("./index.module.scss.js");function _interopDefaultLegacy(n){return n&&typeof n=="object"&&"default"in n?n:{default:n}}var React__default=_interopDefaultLegacy(React);const TextEditor=n=>{const{disabeledAll:c,newAnswer:f,textEditObject:p,updateValue:v,answerIndex:x}=n,{max:r,min:i,isLaText:E,tip:g}=p,{TextArea:h}=antd.Input,[l]=antd.Form.useForm(),{t:s}=reactI18next.useTranslation(),b=s("LeastCharacterError",{num:i});React.useEffect(()=>{l.setFieldsValue({value:f}),c||l.validateFields()},[f]);const w=t=>{var e,d;const y=`inputTextarea_${x}`,a=document.getElementById(y),u=a.value||"",m=(e=a==null?void 0:a.selectionStart)!=null?e:u.length,F=(d=a.selectionEnd)!=null?d:u.length,_=u.substring(0,m),I=u.substring(F,u.length),o=_+t+I;if(r&&(o==null?void 0:o.length)>r){antd.message.error(s("MaximumCharacterError",{num:r}));return}a.value=o,l.setFieldsValue({value:o}),v(o),a.selectionStart=m+t.length,a.selectionEnd=m+t.length,a.focus()};return React__default.default.createElement(antd.Form,{form:l,onValuesChange:(t,e)=>{const d=e.value;v(d)},className:index_module.form},React__default.default.createElement(antd.Form.Item,{name:"title",style:{marginBottom:0},label:React__default.default.createElement(React__default.default.Fragment,null,s("AnswerTextEdit"),React__default.default.createElement(antd.Popover,{placement:"bottom",content:s("ShowEditingResultDifferencesInTextModeOnly")},React__default.default.createElement(icons.InfoCircleOutlined,{style:{margin:"0px 4px",cursor:"pointer"}}))),colon:!1,required:!!i}),React__default.default.createElement("div",{className:index_module.tip},g!=null?g:""),E&&React__default.default.createElement(index,{onSelectLatex:w,disabled:c}),React__default.default.createElement(antd.Form.Item,{name:"value",style:{marginBottom:24},rules:[{validator:(t,e="")=>i&&(e==null?void 0:e.length)<Number(i)?Promise.reject(b):Promise.resolve()}]},React__default.default.createElement(h,{maxLength:r,autoSize:{minRows:4,maxRows:10},allowClear:!0,disabled:c,showCount:!!r,style:{width:"100%"},id:`inputTextarea_${x}`})),E&&React__default.default.createElement(antd.Form.Item,{shouldUpdate:!0,noStyle:!0},()=>{const t=l.getFieldValue("value")||"",e=t.replace(/\n/g,`
2
2
  `);return React__default.default.createElement("div",{className:index_module.outputDisplay},React__default.default.createElement("div",{className:index_module.title},s("OutputDisplay")),React__default.default.createElement("div",{className:index_module.content},t?React__default.default.createElement(index$1,{value:e}):""))}))};module.exports=TextEditor;
@@ -1 +1 @@
1
- "use strict";var styles={form:"index-module_form__IypXc",outputDisplay:"index-module_outputDisplay__5dS48",title:"index-module_title__vhMCp",content:"index-module_content__Iml6l"};module.exports=styles;
1
+ "use strict";var styles={form:"index-module_form__IypXc",outputDisplay:"index-module_outputDisplay__5dS48",title:"index-module_title__vhMCp",content:"index-module_content__Iml6l",tip:"index-module_tip__NFru6"};module.exports=styles;
@@ -1 +1 @@
1
- "use strict";var React=require("react"),index$5=require("../../../constant/index.js"),antd=require("antd"),index$1=require("./components/answerSort/index.js"),reactRedux=require("react-redux"),_=require("lodash"),index$4=require("./components/answerList/index.js"),ctx=require("../../../store/ctx.js"),index=require("../../../utils/index.js"),reducer=require("../../../store/annotation/reducer.js"),annotation=require("../../../hooks/annotation.js"),actionCreators=require("../../../store/annotation/actionCreators.js"),lbAnnotation=require("@labelbee/lb-annotation"),reactI18next=require("react-i18next"),data=require("../utils/data.js"),empty=require("../../../assets/annotation/LLMTool/empty.svg.js"),index$3=require("./components/textInputBox/index.js"),index$2=require("../../tagList/components/overall/index.js");function _interopDefaultLegacy(r){return r&&typeof r=="object"&&"default"in r?r:{default:r}}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=(r,a,i)=>a in r?__defProp(r,a,{enumerable:!0,configurable:!0,writable:!0,value:i}):r[a]=i,__spreadValues=(r,a)=>{for(var i in a||(a={}))__hasOwnProp.call(a,i)&&__defNormalProp(r,i,a[i]);if(__getOwnPropSymbols)for(var i of __getOwnPropSymbols(a))__propIsEnum.call(a,i)&&__defNormalProp(r,i,a[i]);return r},__spreadProps=(r,a)=>__defProps(r,__getOwnPropDescs(a));const EKeyCode=lbAnnotation.cKeyCode.default,sidebarCls=`${index$5.prefix}-sidebar`,LLMToolSidebar=r=>{var a,i;const{annotation:D,dispatch:m,checkMode:N}=r,{imgIndex:x,imgList:S,stepList:y,step:E,skipBeforePageTurning:L}=D,{modelAPIResponse:j,setModelAPIResponse:$}=React.useContext(ctx.LLMContext),{t:w}=reactI18next.useTranslation(),c=(a=S[x])!=null?a:{},M=index.jsonParser(c==null?void 0:c.result),{toolInstanceRef:l}=annotation.useCustomToolInstance({basicInfo:M}),[d,B]=React.useState(),[,F]=React.useState(0),{setNewAnswerList:V}=React.useContext(ctx.LLMContext),[o,p]=React.useState({}),g=!l.current.valid||N;React.useEffect(()=>{var e;if(y&&E){const t=(e=reducer.getStepConfig(y,E))==null?void 0:e.config;B(index.jsonParser(t))}},[E,JSON.stringify(y)]),React.useEffect(()=>{!c||x===-1||(l.current.setValid=q,l.current.clearResult=k,T())},[x,d]);const k=()=>{T(c==null?void 0:c.questionList)},q=e=>{var t;_.isBoolean(e)&&(l.current.valid=e,(t=l.current)==null||t.emit("validUpdated"),F(n=>n+1))},T=e=>{var t;const n=data.getCurrentResultFromResultList(c==null?void 0:c.result);let s=c==null?void 0:c.questionList;(n==null?void 0:n.answerList)&&l.current.valid&&(s=n),e&&(s=e,n.sort=[],n.valid=(t=l.current.valid)!=null?t:!0),q(n.valid);const f=data.getRenderDataByResult(d,s);p(__spreadValues({},f)),$([])};React.useEffect(()=>{const{newSort:e,answerList:t,textAttribute:n,tagList:s}=o,f=data.formatSort(e||[]),u={answerList:t,sort:f,tagList:s,textAttribute:n,id:c==null?void 0:c.id,modelAPIResponse:j,valid:l.current.valid};l.current.exportData=()=>[[u],{valid:l.current.valid}],l.current.currentPageResult=__spreadProps(__spreadValues({},u),{toolName:lbAnnotation.EToolName.LLM}),V(t||[])},[o,j,l.current.valid]),React.useEffect(()=>(window.addEventListener("keydown",R),()=>{window.removeEventListener("keydown",R)}),[]);const R=e=>{if(e.ctrlKey&&e.keyCode===EKeyCode.Enter){if(L){L(()=>m(actionCreators.PageForward()));return}m(actionCreators.PageForward())}},K=({order:e,value:t,key:n})=>{const{answerList:s}=o,f=s==null?void 0:s.map(u=>{var b;if((u==null?void 0:u.order)===e){if(n==="textEdit"&&_.isString(t))return __spreadProps(__spreadValues({},u),{newAnswer:t});if(_.isNumber(t))return __spreadProps(__spreadValues({},u),{score:t});if(_.isObject(t)&&n){const h={[t==null?void 0:t.key]:t.value},P=(b=u[n])!=null?b:{};return __spreadProps(__spreadValues({},u),{[n]:__spreadValues(__spreadValues({},P),h)})}}return u});p(__spreadProps(__spreadValues({},o),{answerList:f||[]}))};if((()=>{var e,t;const{indicatorScore:n=[],indicatorDetermine:s=[],text:f=[],enableSort:u,isTextEdit:b,tagInputListConfigurable:h}=d||{},P=((e=n==null?void 0:n.filter(v=>v.label&&v.value&&v.score))==null?void 0:e.length)>0,Q=((t=s==null?void 0:s.filter(v=>v.label&&v.value))==null?void 0:t.length)>0,U=(f==null?void 0:f.length)>0;return!(P||Q||U||u||b||h)})())return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`,style:{display:"flex",justifyContent:"center",alignItems:"center"}},React__default.default.createElement(antd.Empty,{description:React__default.default.createElement("span",{style:{color:"#ccc"}},w("NoScoringScale")),imageStyle:{width:200,height:200},image:React__default.default.createElement("img",{src:empty})})));const{indicatorScore:I=[],indicatorDetermine:O=[],enableSort:z,isTextEdit:W,inputList:C=[],tagInputListConfigurable:A}=d||{},G=A&&((i=C.filter(e=>!e.isOverall))==null?void 0:i.length)>0,J=(O==null?void 0:O.length)>0||(I==null?void 0:I.length)>0||W||G;return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},React__default.default.createElement("div",{style:{fontSize:"18px",fontWeight:500,padding:"0px 16px",marginTop:"16px"}},w("GlobalAnnotation")),z&&React__default.default.createElement(index$1,{waitSortList:(o==null?void 0:o.waitSorts)||[],sortList:(o==null?void 0:o.newSort)||[],setSortList:e=>{p(__spreadProps(__spreadValues({},o),{newSort:e}))},disabeledAll:g}),A&&C.length&&React__default.default.createElement(index$2,{inputList:C,selectedTags:(o==null?void 0:o.tagList)||{},updateValue:e=>{const{key:t,value:n}=e,s=o==null?void 0:o.tagList;p(__spreadProps(__spreadValues({},o),{tagList:__spreadProps(__spreadValues({},s),{[t]:n})}))},disabeledAll:g}),(d==null?void 0:d.text)&&React__default.default.createElement("div",{style:{padding:"0px 16px",marginTop:"16px"}},React__default.default.createElement(index$3,{textAttribute:(o==null?void 0:o.textAttribute)||[],LLMConfig:d,setText:e=>p(__spreadProps(__spreadValues({},o),{textAttribute:e})),disabeledAll:g})),React__default.default.createElement("div",{style:{fontSize:"18px",fontWeight:500,padding:"0px 16px",marginTop:"16px"}},w("QualifiedAnnotation")),React__default.default.createElement("div",null,J&&React__default.default.createElement(index$4,{list:(o==null?void 0:o.answerList)||[],LLMConfig:d,updateValue:K,disabeledAll:g}))),React__default.default.createElement("div",{style:{margin:"24px 16px",display:"flex"}},(S==null?void 0:S.length)-1!==x&&React__default.default.createElement(antd.Button,{type:"primary",style:{marginLeft:"auto"},onClick:()=>{if(L){L(()=>m(actionCreators.PageForward()));return}m(actionCreators.PageForward())},disabled:g},w("Save"))))},mapStateToProps=r=>({annotation:r.annotation});var LLMToolSidebar$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(LLMToolSidebar);module.exports=LLMToolSidebar$1;
1
+ "use strict";var React=require("react"),index$5=require("../../../constant/index.js"),antd=require("antd"),index$1=require("./components/answerSort/index.js"),reactRedux=require("react-redux"),_=require("lodash"),index$4=require("./components/answerList/index.js"),ctx=require("../../../store/ctx.js"),index=require("../../../utils/index.js"),reducer=require("../../../store/annotation/reducer.js"),annotation=require("../../../hooks/annotation.js"),actionCreators=require("../../../store/annotation/actionCreators.js"),lbAnnotation=require("@labelbee/lb-annotation"),reactI18next=require("react-i18next"),data$1=require("../utils/data.js"),empty=require("../../../assets/annotation/LLMTool/empty.svg.js"),index$3=require("./components/textInputBox/index.js"),index$2=require("../../tagList/components/overall/index.js"),data=require("../../../utils/data.js");function _interopDefaultLegacy(n){return n&&typeof n=="object"&&"default"in n?n:{default:n}}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=(n,a,i)=>a in n?__defProp(n,a,{enumerable:!0,configurable:!0,writable:!0,value:i}):n[a]=i,__spreadValues=(n,a)=>{for(var i in a||(a={}))__hasOwnProp.call(a,i)&&__defNormalProp(n,i,a[i]);if(__getOwnPropSymbols)for(var i of __getOwnPropSymbols(a))__propIsEnum.call(a,i)&&__defNormalProp(n,i,a[i]);return n},__spreadProps=(n,a)=>__defProps(n,__getOwnPropDescs(a));const EKeyCode=lbAnnotation.cKeyCode.default,sidebarCls=`${index$5.prefix}-sidebar`,LLMToolSidebar=n=>{var a,i;const{annotation:N,dispatch:m,checkMode:$}=n,{imgIndex:x,imgList:E,stepList:L,step:w,skipBeforePageTurning:S}=N,{modelAPIResponse:P,setModelAPIResponse:M}=React.useContext(ctx.LLMContext),{t:b}=reactI18next.useTranslation(),u=(a=E[x])!=null?a:{},q=index.jsonParser(u==null?void 0:u.result),{toolInstanceRef:c}=annotation.useCustomToolInstance({basicInfo:q}),[d,B]=React.useState(),[,F]=React.useState(0),{setNewAnswerList:V}=React.useContext(ctx.LLMContext),[r,p]=React.useState({}),g=!c.current.valid||$;React.useEffect(()=>{var e;if(L&&w){const t=(e=reducer.getStepConfig(L,w))==null?void 0:e.config;B(index.jsonParser(t))}},[w,JSON.stringify(L)]),React.useEffect(()=>{!u||x===-1||(c.current.setValid=T,c.current.clearResult=k,R())},[x,d]);const k=()=>{R(u==null?void 0:u.questionList)},T=e=>{var t;_.isBoolean(e)&&(c.current.valid=e,(t=c.current)==null||t.emit("validUpdated"),F(o=>o+1))},R=e=>{const t=data.getAnnotationStepByStepList(L,w),o=data$1.getCurrentResultFromResultList(u==null?void 0:u.result,t);let s=u==null?void 0:u.questionList;(o==null?void 0:o.answerList)&&c.current.valid&&(s=o),e&&(s=e,o.sort=[]),T(q.valid);const f=data$1.getRenderDataByResult(d,s);p(__spreadValues({},f)),M([])};React.useEffect(()=>{const{newSort:e,answerList:t,textAttribute:o,tagList:s}=r,f=data$1.formatSort(e||[]),l={answerList:t,sort:f,tagList:s,textAttribute:o,id:u==null?void 0:u.id,modelAPIResponse:P};c.current.exportData=()=>[[l],{valid:c.current.valid}],c.current.currentPageResult=__spreadProps(__spreadValues({},l),{toolName:lbAnnotation.EToolName.LLM}),V(t||[])},[r,P,c.current.valid]),React.useEffect(()=>(window.addEventListener("keydown",I),()=>{window.removeEventListener("keydown",I)}),[]);const I=e=>{if(e.ctrlKey&&e.keyCode===EKeyCode.Enter){if(S){S(()=>m(actionCreators.PageForward()));return}m(actionCreators.PageForward())}},K=({order:e,value:t,key:o})=>{const{answerList:s}=r,f=s==null?void 0:s.map(l=>{var y;if((l==null?void 0:l.order)===e){if(o==="textEdit"&&_.isString(t))return __spreadProps(__spreadValues({},l),{newAnswer:t});if(_.isNumber(t))return __spreadProps(__spreadValues({},l),{score:t});if(_.isObject(t)&&o){const h={[t==null?void 0:t.key]:t.value},j=(y=l[o])!=null?y:{};return __spreadProps(__spreadValues({},l),{[o]:__spreadValues(__spreadValues({},j),h)})}}return l});p(__spreadProps(__spreadValues({},r),{answerList:f||[]}))};if((()=>{var e,t;const{indicatorScore:o=[],indicatorDetermine:s=[],text:f=[],enableSort:l,isTextEdit:y,tagInputListConfigurable:h}=d||{},j=((e=o==null?void 0:o.filter(v=>v.label&&v.value&&v.score))==null?void 0:e.length)>0,Q=((t=s==null?void 0:s.filter(v=>v.label&&v.value))==null?void 0:t.length)>0,U=(f==null?void 0:f.length)>0;return!(j||Q||U||l||y||h)})())return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`,style:{display:"flex",justifyContent:"center",alignItems:"center"}},React__default.default.createElement(antd.Empty,{description:React__default.default.createElement("span",{style:{color:"#ccc"}},b("NoScoringScale")),imageStyle:{width:200,height:200},image:React__default.default.createElement("img",{src:empty})})));const{indicatorScore:A=[],indicatorDetermine:O=[],enableSort:z,isTextEdit:W,inputList:C=[],tagInputListConfigurable:D}=d||{},G=D&&((i=C.filter(e=>!e.isOverall))==null?void 0:i.length)>0,J=(O==null?void 0:O.length)>0||(A==null?void 0:A.length)>0||W||G;return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},React__default.default.createElement("div",{style:{fontSize:"18px",fontWeight:500,padding:"0px 16px",marginTop:"16px"}},b("GlobalAnnotation")),z&&React__default.default.createElement(index$1,{waitSortList:(r==null?void 0:r.waitSorts)||[],sortList:(r==null?void 0:r.newSort)||[],setSortList:e=>{p(__spreadProps(__spreadValues({},r),{newSort:e}))},disabeledAll:g}),D&&C.length&&React__default.default.createElement(index$2,{inputList:C,selectedTags:(r==null?void 0:r.tagList)||{},updateValue:e=>{const{key:t,value:o}=e,s=r==null?void 0:r.tagList;p(__spreadProps(__spreadValues({},r),{tagList:__spreadProps(__spreadValues({},s),{[t]:o})}))},disabeledAll:g}),(d==null?void 0:d.text)&&React__default.default.createElement("div",{style:{padding:"0px 16px",marginTop:"16px"}},React__default.default.createElement(index$3,{textAttribute:(r==null?void 0:r.textAttribute)||[],LLMConfig:d,setText:e=>p(__spreadProps(__spreadValues({},r),{textAttribute:e})),disabeledAll:g})),React__default.default.createElement("div",{style:{fontSize:"18px",fontWeight:500,padding:"0px 16px",marginTop:"16px"}},b("QualifiedAnnotation")),React__default.default.createElement("div",null,J&&React__default.default.createElement(index$4,{list:(r==null?void 0:r.answerList)||[],LLMConfig:d,updateValue:K,disabeledAll:g}))),React__default.default.createElement("div",{style:{margin:"24px 16px",display:"flex"}},(E==null?void 0:E.length)-1!==x&&React__default.default.createElement(antd.Button,{type:"primary",style:{marginLeft:"auto"},onClick:()=>{if(S){S(()=>m(actionCreators.PageForward()));return}m(actionCreators.PageForward())},disabled:g},b("Save"))))},mapStateToProps=n=>({annotation:n.annotation});var LLMToolSidebar$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(LLMToolSidebar);module.exports=LLMToolSidebar$1;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _=require("lodash"),index=require("../../../utils/index.js"),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(l,t,r)=>t in l?__defProp(l,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):l[t]=r,__spreadValues=(l,t)=>{for(var r in t||(t={}))__hasOwnProp.call(t,r)&&__defNormalProp(l,r,t[r]);if(__getOwnPropSymbols)for(var r of __getOwnPropSymbols(t))__propIsEnum.call(t,r)&&__defNormalProp(l,r,t[r]);return l},__spreadProps=(l,t)=>__defProps(l,__getOwnPropDescs(t));const getCurrentResultFromResultList=l=>{var t,r,n;const i=index.jsonParser(l),o="step_1",e=(r=(t=i==null?void 0:i[o])==null?void 0:t.result[0])!=null?r:{};return __spreadProps(__spreadValues({},e),{valid:(n=e==null?void 0:e.valid)!=null?n:!0})},formatSort=l=>l.reduce((r,n)=>{var i;let o=n;return n.length>1?o=n.map(e=>e==null?void 0:e.id):o=[(i=n[0])==null?void 0:i.id],[...r,o]},[]),getTagResult=(l,t)=>{let r={};return l.forEach(n=>{var i;let o=[];t&&t[n==null?void 0:n.value]?o=t[n.value]:((i=n==null?void 0:n.subSelected)==null?void 0:i.length)>0&&n.subSelected.forEach(e=>{(e==null?void 0:e.isDefault)&&(e==null?void 0:e.value)&&o.push(e.value)}),o.length>0&&(r=__spreadProps(__spreadValues({},r),{[n.value]:o}))}),r},getWaitSortList=(l,t)=>{var r;let n=[],i=[];if((l==null?void 0:l.length)>0){const o=_.isArray(t)?t[0]:t;((r=o==null?void 0:o.sort)==null?void 0:r.length)>0&&(i=o.sort.reduce((e,a)=>{let s=[{title:a[0],id:a[0]}];return a.length>1&&(s=a.map(u=>({title:u,id:u}))),[...e,s]},[])),l.forEach(e=>{i.some(s=>s.length>1?s.some(u=>u.id===e.order):s[0].id===e.order)||n.push({title:e.order,id:e.order})})}return{newSort:i,waitSorts:n}},initAnswerList=(l,t)=>{const{isTextEdit:r,textEdit:n=[],inputList:i=[]}=t||{};return l.map(e=>{var a,s;const u=i.filter(d=>!(d==null?void 0:d.isOverall))||[],v=getTagResult(u,e==null?void 0:e.tagList);return r&&((a=n.filter(c=>c.title===e.order)[0])==null?void 0:a.isFillAnswer)?__spreadProps(__spreadValues({},e),{newAnswer:(s=e==null?void 0:e.newAnswer)!=null?s:e.answer,tagList:v}):__spreadProps(__spreadValues({},e),{tagList:v})})},getRenderDataByResult=(l,t)=>{var r;let n=[],i=[],o=[],e={};(t==null?void 0:t.answerList)&&(n=initAnswerList(t.answerList,l)||[],i=getWaitSortList(t.answerList,t).newSort,o=getWaitSortList(t.answerList,t).waitSorts);const a=((r=l==null?void 0:l.inputList)==null?void 0:r.filter(s=>s==null?void 0:s.isOverall))||[];return e=getTagResult(a,t==null?void 0:t.tagList),{newSort:i,waitSorts:o,answerList:n,tagList:e,textAttribute:t==null?void 0:t.textAttribute}};exports.formatSort=formatSort,exports.getCurrentResultFromResultList=getCurrentResultFromResultList,exports.getRenderDataByResult=getRenderDataByResult,exports.getTagResult=getTagResult,exports.getWaitSortList=getWaitSortList,exports.initAnswerList=initAnswerList;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _=require("lodash"),index=require("../../../utils/index.js"),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(l,t,r)=>t in l?__defProp(l,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):l[t]=r,__spreadValues=(l,t)=>{for(var r in t||(t={}))__hasOwnProp.call(t,r)&&__defNormalProp(l,r,t[r]);if(__getOwnPropSymbols)for(var r of __getOwnPropSymbols(t))__propIsEnum.call(t,r)&&__defNormalProp(l,r,t[r]);return l},__spreadProps=(l,t)=>__defProps(l,__getOwnPropDescs(t));const getCurrentResultFromResultList=(l,t=1)=>{var r,n;const s=index.jsonParser(l),o=`step_${t}`;return(n=(r=s==null?void 0:s[o])==null?void 0:r.result[0])!=null?n:{}},formatSort=l=>l.reduce((r,n)=>{var s;let o=n;return n.length>1?o=n.map(e=>e==null?void 0:e.id):o=[(s=n[0])==null?void 0:s.id],[...r,o]},[]),getTagResult=(l,t)=>{let r={};return l.forEach(n=>{var s;let o=[];t&&t[n==null?void 0:n.value]?o=t[n.value]:((s=n==null?void 0:n.subSelected)==null?void 0:s.length)>0&&n.subSelected.forEach(e=>{(e==null?void 0:e.isDefault)&&(e==null?void 0:e.value)&&o.push(e.value)}),o.length>0&&(r=__spreadProps(__spreadValues({},r),{[n.value]:o}))}),r},getWaitSortList=(l,t)=>{var r;let n=[],s=[];if((l==null?void 0:l.length)>0){const o=_.isArray(t)?t[0]:t;((r=o==null?void 0:o.sort)==null?void 0:r.length)>0&&(s=o.sort.reduce((e,a)=>{let i=[{title:a[0],id:a[0]}];return a.length>1&&(i=a.map(u=>({title:u,id:u}))),[...e,i]},[])),l.forEach(e=>{s.some(i=>i.length>1?i.some(u=>u.id===e.order):i[0].id===e.order)||n.push({title:e.order,id:e.order})})}return{newSort:s,waitSorts:n}},initAnswerList=(l,t)=>{const{isTextEdit:r,textEdit:n=[],inputList:s=[]}=t||{};return l.map(e=>{var a,i;const u=s.filter(d=>!(d==null?void 0:d.isOverall))||[],v=getTagResult(u,e==null?void 0:e.tagList);return r&&((a=n.filter(c=>c.title===e.order)[0])==null?void 0:a.isFillAnswer)?__spreadProps(__spreadValues({},e),{newAnswer:(i=e==null?void 0:e.newAnswer)!=null?i:e.answer,tagList:v}):__spreadProps(__spreadValues({},e),{tagList:v})})},getRenderDataByResult=(l,t)=>{var r;let n=[],s=[],o=[],e={};(t==null?void 0:t.answerList)&&(n=initAnswerList(t.answerList,l)||[],s=getWaitSortList(t.answerList,t).newSort,o=getWaitSortList(t.answerList,t).waitSorts);const a=((r=l==null?void 0:l.inputList)==null?void 0:r.filter(i=>i==null?void 0:i.isOverall))||[];return e=getTagResult(a,t==null?void 0:t.tagList),{newSort:s,waitSorts:o,answerList:n,tagList:e,textAttribute:t==null?void 0:t.textAttribute}};exports.formatSort=formatSort,exports.getCurrentResultFromResultList=getCurrentResultFromResultList,exports.getRenderDataByResult=getRenderDataByResult,exports.getTagResult=getTagResult,exports.getWaitSortList=getWaitSortList,exports.initAnswerList=initAnswerList;
@@ -1 +1 @@
1
- "use strict";var ahooks=require("ahooks"),es=require("antd/es"),React=require("react"),reactRedux=require("react-redux"),usePointCloudViews=require("../pointCloudView/hooks/usePointCloudViews.js"),PointCloudContext=require("../pointCloudView/PointCloudContext.js"),map=require("../../store/annotation/map.js"),ctx=require("../../store/ctx.js"),lbAnnotation=require("@labelbee/lb-annotation");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,r,t)=>r in e?__defProp(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,__spreadValues=(e,r)=>{for(var t in r||(r={}))__hasOwnProp.call(r,t)&&__defNormalProp(e,t,r[t]);if(__getOwnPropSymbols)for(var t of __getOwnPropSymbols(r))__propIsEnum.call(r,t)&&__defNormalProp(e,t,r[t]);return e},__spreadProps=(e,r)=>__defProps(e,__getOwnPropDescs(r));const PointCloud2DRectOperationView=e=>{var r;const{mappingData:t,size:i,config:P,checkMode:C,afterImgOnLoad:g}=e,l=(r=t==null?void 0:t.url)!=null?r:"",{pointCloudBoxList:s,setPointCloudResult:w}=React.useContext(PointCloudContext.PointCloudContext),{update2DViewRect:R}=usePointCloudViews.usePointCloudViews(),c=React__default.default.useRef(null),o=React.useRef(null),d=ahooks.useLatest(R),p=React.useRef(null),[O,b]=React.useState(!0),f=n=>{var a;const u=(a=d.current)==null?void 0:a.call(d,n);p.current=u,w(u)},m=()=>{var n;let a=[];s.forEach(u=>{const{rects:D=[],id:v,attribute:x,trackID:h}=u,_=D.find(V=>V.imageName===(t==null?void 0:t.path)),y=v+"_"+(t==null?void 0:t.path);_&&(a=[...a,__spreadProps(__spreadValues({},_),{boxID:v,id:y,attribute:x,order:h})])}),(n=o.current)==null||n.setResult(a)};return React.useEffect(()=>{if(c.current){const n=new lbAnnotation.PointCloud2DRectOperation({container:c.current,size:i,config:__spreadProps(__spreadValues({},P),{isShowOrder:!0,attributeConfigurable:!0}),checkMode:C});return o.current=n,o.current.init(),o.current.on("updateDragResult",f),()=>{var a,u;(a=o.current)==null||a.unbind("updateDragResult",f),(u=o.current)==null||u.destroy()}}},[]),React.useEffect(()=>{o.current&&l&&lbAnnotation.ImgUtils.load(l).then(n=>{o.current.setImgNode(n),g(n),b(!1)})},[l]),React.useEffect(()=>{var n;(n=o.current)==null||n.setSize(i)},[i]),React.useEffect(()=>{s!==p.current&&m()},[s,l]),React__default.default.createElement(es.Spin,{spinning:O},React__default.default.createElement("div",{ref:c,style:__spreadValues({position:"relative"},i)}))};var PointCloud2DRectOperationView$1=reactRedux.connect(map.a2MapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloud2DRectOperationView);module.exports=PointCloud2DRectOperationView$1;
1
+ "use strict";var ahooks=require("ahooks"),es=require("antd/es"),React=require("react"),reactRedux=require("react-redux"),usePointCloudViews=require("../pointCloudView/hooks/usePointCloudViews.js"),PointCloudContext=require("../pointCloudView/PointCloudContext.js"),map=require("../../store/annotation/map.js"),ctx=require("../../store/ctx.js"),lbAnnotation=require("@labelbee/lb-annotation");function _interopDefaultLegacy(r){return r&&typeof r=="object"&&"default"in r?r:{default:r}}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=(r,n,t)=>n in r?__defProp(r,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[n]=t,__spreadValues=(r,n)=>{for(var t in n||(n={}))__hasOwnProp.call(n,t)&&__defNormalProp(r,t,n[t]);if(__getOwnPropSymbols)for(var t of __getOwnPropSymbols(n))__propIsEnum.call(n,t)&&__defNormalProp(r,t,n[t]);return r},__spreadProps=(r,n)=>__defProps(r,__getOwnPropDescs(n));const PointCloud2DRectOperationView=r=>{var n;const{mappingData:t,size:l,config:O,checkMode:h,afterImgOnLoad:x}=r,f=(n=t==null?void 0:t.url)!=null?n:"",{pointCloudBoxList:s,setPointCloudResult:L,defaultAttribute:_,rectList:p,addRectIn2DView:y,updateRectIn2DView:V,removeRectIn2DView:E}=React.useContext(PointCloudContext.PointCloudContext),{update2DViewRect:S}=usePointCloudViews.usePointCloudViews(),v=React__default.default.useRef(null),o=React.useRef(null),R=ahooks.useLatest(S),g=React.useRef(null),[j,D]=React.useState(!0),m=React.useMemo(()=>p==null?void 0:p.filter(e=>e.imageName===(t==null?void 0:t.path)),[t==null?void 0:t.path,p]),d=ahooks.useLatest(t==null?void 0:t.path),P=e=>{var u;const{boxID:i}=e;if(i){const a=(u=R.current)==null?void 0:u.call(R,e);g.current=a,L(a);return}V(e)},b=e=>{d.current&&y(__spreadProps(__spreadValues({},e),{imageName:d.current}))},w=e=>{E(e)},q=React.useCallback(()=>{let e=[];return s.forEach(u=>{const{rects:i=[],id:a,attribute:c,trackID:A}=u,I=i.find(k=>k.imageName===d.current),B=a+"_"+d.current;I&&(e=[...e,__spreadProps(__spreadValues({},I),{boxID:a,id:B,attribute:c,order:A})])}),e},[s]),C=()=>{var e,u,i;const a=q(),c=(e=o.current)==null?void 0:e.selectedRectID;(u=o.current)==null||u.setResult([...a,...m]),c&&((i=o.current)==null||i.setSelectedRectID(c))};return React.useEffect(()=>{if(v.current){const e=new lbAnnotation.PointCloud2DRectOperation({container:v.current,size:l,config:__spreadProps(__spreadValues({},O),{isShowOrder:!0,attributeConfigurable:!0}),checkMode:h});return o.current=e,o.current.init(),o.current.on("updateDragResult",P),o.current.on("afterAddingDrawingRect",b),o.current.on("deleteSelectedRects",w),()=>{var u,i,a,c;(u=o.current)==null||u.unbind("updateDragResult",P),(i=o.current)==null||i.unbind("afterAddingDrawingRect",b),(a=o.current)==null||a.unbind("deleteSelectedRects",w),(c=o.current)==null||c.destroy()}}},[]),React.useEffect(()=>{D(!0),o.current&&f&&lbAnnotation.ImgUtils.load(f).then(e=>{o.current.setImgNode(e),x(e),D(!1)})},[f]),React.useEffect(()=>{var e;(e=o.current)==null||e.setSize(l)},[l]),React.useEffect(()=>{s!==g.current&&C()},[s]),React.useEffect(()=>{var e,u;(u=(e=o.current)==null?void 0:e.setDefaultAttribute)==null||u.call(e,_)},[_]),React.useEffect(()=>{C()},[m]),React__default.default.createElement(es.Spin,{spinning:j},React__default.default.createElement("div",{ref:v,style:__spreadValues({position:"relative"},l)}))};var PointCloud2DRectOperationView$1=reactRedux.connect(map.a2MapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloud2DRectOperationView);module.exports=PointCloud2DRectOperationView$1;
@@ -1 +1 @@
1
- "use strict";var dom=require("../../utils/dom.js"),React=require("react"),PointCloudLayout=require("./PointCloudLayout.js"),PointCloudContext=require("./PointCloudContext.js"),reactRedux=require("react-redux"),lbAnnotation=require("@labelbee/lb-annotation"),ctx=require("../../store/ctx.js"),map=require("../../store/annotation/map.js"),lbUtils=require("@labelbee/lb-utils"),PointCloud2DSingleView=require("./PointCloud2DSingleView.js"),index=require("./components/TitleButton/index.js"),icons=require("@ant-design/icons"),classNames=require("classnames"),icon_esc=require("../../assets/annotation/common/icon_esc.svg.js"),icon_left_squareOutlined=require("../../assets/annotation/common/icon_left_squareOutlined.svg.js"),icon_right_squareOutlined=require("../../assets/annotation/common/icon_right_squareOutlined.svg.js"),_=require("lodash");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),classNames__default=_interopDefaultLegacy(classNames),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,l,t)=>l in e?__defProp(e,l,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[l]=t,__spreadValues=(e,l)=>{for(var t in l||(l={}))__hasOwnProp.call(l,t)&&__defNormalProp(e,t,l[t]);if(__getOwnPropSymbols)for(var t of __getOwnPropSymbols(l))__propIsEnum.call(l,t)&&__defNormalProp(e,t,l[t]);return e},__spreadProps=(e,l)=>__defProps(e,__getOwnPropDescs(l));const EKeyCode=lbAnnotation.cKeyCode.default,ContainerTitle=({showEnlarge:e,isEnlargeTopView:l,data:t,setIsEnlarge:g,setCurIndex:f,curIndex:p=0,index:w,annotations2d:b})=>l?React__default.default.createElement(index,{title:t==null?void 0:t.calName,style:{background:"rgba(0, 0, 0, 0.74)",color:"#FFFFFF"}}):e?React__default.default.createElement("div",{style:{display:"flex",alignItems:"center"}},React__default.default.createElement(icons.LeftOutlined,{style:{cursor:"pointer",marginRight:"12px"},onClick:()=>{g(!1),f(void 0)}}),React__default.default.createElement("span",null,t==null?void 0:t.calName),React__default.default.createElement("span",{style:{marginLeft:"8px"}},p+1,"/",b==null?void 0:b.length)):React__default.default.createElement(index,{title:t==null?void 0:t.calName,onClick:()=>{g(!0),f(w)},style:{background:"rgba(0, 0, 0, 0.74)",color:"#FFFFFF"}}),PointCloud2DView=({currentData:e,config:l,thumbnailWidth:t,isEnlargeTopView:g,highlightAttribute:f,loadPCDFileLoading:p,checkMode:w,measureVisible:b})=>{var L;const[c,H]=React.useState([]),{topViewInstance:M,displayPointCloudList:q,polygonList:F,imageSizes:O,selectedIDs:S}=React.useContext(PointCloudContext.PointCloudContext),[x,U]=React.useState(""),[y,P]=React.useState(!1),[s,E]=React.useState(void 0);React.useEffect(()=>{var o;if(!p&&M&&(e==null?void 0:e.mappingImgList)&&((o=e==null?void 0:e.mappingImgList)==null?void 0:o.length)>0){const i={fill:"transparent",color:"green"};let r=[];e==null||e.mappingImgList.forEach(n=>{var v,N,R;const V=q.reduce((d,u)=>{var m,a;const C=u.id===x||f===u.attribute,{transferViewData:z,viewRangePointList:h}=(m=lbAnnotation.pointCloudLidar2image(u,n.calib,{createRange:C}))!=null?m:{};if(!z||!h)return[];const T=(a=lbUtils.toolStyleConverter.getColorFromConfig({attribute:u.attribute},__spreadProps(__spreadValues({},l),{attributeConfigurable:!0}),{}))==null?void 0:a.stroke,Q=$({viewDataPointList:z,pointCloudBox:u,defaultViewStyle:i,stroke:T}),K=[...d,...Q];return(h==null?void 0:h.length)>0&&K.unshift({type:"polygon",annotation:__spreadProps(__spreadValues({id:x,pointList:h},i),{stroke:T,fill:"rgba(255, 255, 255, 0.6)"})}),K},[]),A=O[(v=n==null?void 0:n.path)!=null?v:""];A&&_.isNumber((N=n==null?void 0:n.calib)==null?void 0:N.groundHeight)&&F.forEach(d=>{const u=d.pointList.map(a=>{var C;return __spreadProps(__spreadValues({},a),{z:(C=n==null?void 0:n.calib)==null?void 0:C.groundHeight})}),m=lbAnnotation.pointListLidar2Img(u,n==null?void 0:n.calib,A);if(m){const a=lbUtils.toolStyleConverter.getColorFromConfig({attribute:d.attribute},__spreadProps(__spreadValues({},l),{attributeConfigurable:!0}),{});V.push({type:"polygon",annotation:__spreadProps(__spreadValues({id:d.id,pointList:m},i),{stroke:a==null?void 0:a.stroke,fill:S.includes(d.id)?a==null?void 0:a.fill:"rgba(255, 255, 255, 0.6)"})})}}),r.push({annotations:V,url:n==null?void 0:n.url,calName:(R=n==null?void 0:n.calib)==null?void 0:R.calName,calib:n==null?void 0:n.calib,path:n==null?void 0:n.path})}),H(r)}},[q,e==null?void 0:e.mappingImgList,x,f,p,F,O,S]),React.useEffect(()=>(window.addEventListener("keydown",k),()=>{window.removeEventListener("keydown",k)}),[s]);const k=o=>{const{keyCode:i}=o;switch(i){case EKeyCode.Esc:y&&P(!1);break;case EKeyCode.Left:I();break;case EKeyCode.Right:j();break}},I=()=>{s===void 0||!y||Number(s)>0&&E(s-1)},j=()=>{s===void 0||!y||Number(s)<(c==null?void 0:c.length)-1&&E(s+1)},$=({viewDataPointList:o,pointCloudBox:i,defaultViewStyle:r,stroke:n})=>o?o.map(v=>({type:v.type,annotation:__spreadProps(__spreadValues({id:i.id,pointList:v.pointList},r),{stroke:n})})):[],G=!e||!(e==null?void 0:e.mappingImgList)||!(((L=e==null?void 0:e.mappingImgList)==null?void 0:L.length)>0),J=React__default.default.createElement("div",{style:{display:"flex",alignItems:"center",fontSize:"14px"}},React__default.default.createElement("img",{src:icon_left_squareOutlined,style:{height:"24px",marginRight:"8px",cursor:"pointer"},onClick:()=>I()}),React__default.default.createElement("span",{style:{marginRight:"12px"}},"\u952E\u76D8\u5DE6\u952E\u4E0A\u4E00\u5F20"),React__default.default.createElement("span",{style:{margin:"0px 8px 0px 12px"}},"\u952E\u76D8\u53F3\u952E\u4E0A\u4E00\u5F20"),React__default.default.createElement("img",{src:icon_right_squareOutlined,style:{height:"24px",marginRight:"12px",cursor:"pointer"},onClick:()=>j()}),React__default.default.createElement("img",{src:icon_esc,style:{height:"24px",margin:"0px 8px 0px 12px",cursor:"pointer"},onClick:()=>{P(!1),E(void 0)}}),React__default.default.createElement("span",null,"\u952E\u9000\u51FA"));return(c==null?void 0:c.length)>0?React__default.default.createElement(React__default.default.Fragment,null,c.map((o,i)=>{const r=y&&i===s;return React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:classNames__default.default({[dom.getClassName("point-cloud-2d-container")]:!0,[dom.getClassName("point-cloud-container","zoom")]:r}),title:React__default.default.createElement(ContainerTitle,{showEnlarge:r,isEnlargeTopView:g,data:o,setIsEnlarge:P,setCurIndex:E,curIndex:s,index:i,annotations2d:c}),titleOnSurface:!r,style:{display:G?"none":"flex",width:r?"100%":t},key:i,toolbar:J},(o==null?void 0:o.annotations)&&(o==null?void 0:o.url)&&React__default.default.createElement(PointCloud2DSingleView,{currentData:e,view2dData:o,setSelectedID:U,showEnlarge:r,checkMode:w,measureVisible:b}))})):null};var PointCloud2DView$1=reactRedux.connect(map.a2MapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloud2DView);module.exports=PointCloud2DView$1;
1
+ "use strict";var dom=require("../../utils/dom.js"),React=require("react"),PointCloudLayout=require("./PointCloudLayout.js"),PointCloudContext=require("./PointCloudContext.js"),reactRedux=require("react-redux"),lbAnnotation=require("@labelbee/lb-annotation"),ctx=require("../../store/ctx.js"),map=require("../../store/annotation/map.js"),lbUtils=require("@labelbee/lb-utils"),PointCloud2DSingleView=require("./PointCloud2DSingleView.js"),index$1=require("./components/TitleButton/index.js"),icons=require("@ant-design/icons"),classNames=require("classnames"),icon_esc=require("../../assets/annotation/common/icon_esc.svg.js"),icon_left_squareOutlined=require("../../assets/annotation/common/icon_left_squareOutlined.svg.js"),icon_right_squareOutlined=require("../../assets/annotation/common/icon_right_squareOutlined.svg.js"),_=require("lodash"),index=require("../../utils/index.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),classNames__default=_interopDefaultLegacy(classNames),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,l,n)=>l in e?__defProp(e,l,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[l]=n,__spreadValues=(e,l)=>{for(var n in l||(l={}))__hasOwnProp.call(l,n)&&__defNormalProp(e,n,l[n]);if(__getOwnPropSymbols)for(var n of __getOwnPropSymbols(l))__propIsEnum.call(l,n)&&__defNormalProp(e,n,l[n]);return e},__spreadProps=(e,l)=>__defProps(e,__getOwnPropDescs(l));const EKeyCode=lbAnnotation.cKeyCode.default,ContainerTitle=({showEnlarge:e,isEnlargeTopView:l,data:n,setIsEnlarge:m,setCurIndex:f,curIndex:p=0,index:w,annotations2d:b})=>l?React__default.default.createElement(index$1,{title:n==null?void 0:n.calName,style:{background:"rgba(0, 0, 0, 0.74)",color:"#FFFFFF"}}):e?React__default.default.createElement("div",{style:{display:"flex",alignItems:"center"}},React__default.default.createElement(icons.LeftOutlined,{style:{cursor:"pointer",marginRight:"12px"},onClick:()=>{m(!1),f(void 0)}}),React__default.default.createElement("span",null,n==null?void 0:n.calName),React__default.default.createElement("span",{style:{marginLeft:"8px"}},p+1,"/",b==null?void 0:b.length)):React__default.default.createElement(index$1,{title:n==null?void 0:n.calName,onClick:()=>{m(!0),f(w)},style:{background:"rgba(0, 0, 0, 0.74)",color:"#FFFFFF"}}),PointCloud2DView=({currentData:e,config:l,thumbnailWidth:n,isEnlargeTopView:m,highlightAttribute:f,loadPCDFileLoading:p,checkMode:w,measureVisible:b})=>{var I;const[d,M]=React.useState([]),{topViewInstance:U,displayPointCloudList:F,polygonList:O,imageSizes:x,selectedIDs:S}=React.useContext(PointCloudContext.PointCloudContext),[P,B]=React.useState(""),[y,L]=React.useState(!1),[s,E]=React.useState(void 0);React.useEffect(()=>{var o;if(!p&&U&&(e==null?void 0:e.mappingImgList)&&((o=e==null?void 0:e.mappingImgList)==null?void 0:o.length)>0){const i={fill:"transparent",color:"green"};let r=[];e==null||e.mappingImgList.forEach(t=>{var v,R,V;const A=F.reduce((a,c)=>{var g,u;const h=c.id===P||f===c.attribute,{transferViewData:q,viewRangePointList:C}=(g=lbAnnotation.pointCloudLidar2image(c,t.calib,{createRange:h}))!=null?g:{};if(!q||!C)return[];const W=q.reduce((H,$)=>$.type==="line"?[...H,...$.pointList]:H,[]),X=__spreadProps(__spreadValues({},index.getBoundingRect(W)),{imageName:t.path});if(!index.isBoundingRectInImage(X,t.path,x))return a;const T=(u=lbUtils.toolStyleConverter.getColorFromConfig({attribute:c.attribute},__spreadProps(__spreadValues({},l),{attributeConfigurable:!0}),{}))==null?void 0:u.stroke,Y=G({viewDataPointList:q,pointCloudBox:c,defaultViewStyle:i,stroke:T}),K=[...a,...Y];return(C==null?void 0:C.length)>0&&K.unshift({type:"polygon",annotation:__spreadProps(__spreadValues({id:P,pointList:C},i),{stroke:T,fill:"rgba(255, 255, 255, 0.6)"})}),K},[]),z=x[(v=t==null?void 0:t.path)!=null?v:""];z&&_.isNumber((R=t==null?void 0:t.calib)==null?void 0:R.groundHeight)&&O.forEach(a=>{const c=a.pointList.map(u=>{var h;return __spreadProps(__spreadValues({},u),{z:(h=t==null?void 0:t.calib)==null?void 0:h.groundHeight})}),g=lbAnnotation.pointListLidar2Img(c,t==null?void 0:t.calib,z);if(g){const u=lbUtils.toolStyleConverter.getColorFromConfig({attribute:a.attribute},__spreadProps(__spreadValues({},l),{attributeConfigurable:!0}),{});A.push({type:"polygon",annotation:__spreadProps(__spreadValues({id:a.id,pointList:g},i),{stroke:u==null?void 0:u.stroke,fill:S.includes(a.id)?u==null?void 0:u.fill:"rgba(255, 255, 255, 0.6)"})})}}),r.push({annotations:A,url:t==null?void 0:t.url,calName:(V=t==null?void 0:t.calib)==null?void 0:V.calName,calib:t==null?void 0:t.calib,path:t==null?void 0:t.path})}),M(r)}},[F,e==null?void 0:e.mappingImgList,P,f,p,O,x,S]),React.useEffect(()=>(window.addEventListener("keydown",j),()=>{window.removeEventListener("keydown",j)}),[s]);const j=o=>{const{keyCode:i}=o;switch(i){case EKeyCode.Esc:y&&L(!1);break;case EKeyCode.Left:k();break;case EKeyCode.Right:N();break}},k=()=>{s===void 0||!y||Number(s)>0&&E(s-1)},N=()=>{s===void 0||!y||Number(s)<(d==null?void 0:d.length)-1&&E(s+1)},G=({viewDataPointList:o,pointCloudBox:i,defaultViewStyle:r,stroke:t})=>o?o.map(v=>({type:v.type,annotation:__spreadProps(__spreadValues({id:i.id,pointList:v.pointList},r),{stroke:t})})):[],J=!e||!(e==null?void 0:e.mappingImgList)||!(((I=e==null?void 0:e.mappingImgList)==null?void 0:I.length)>0),Q=React__default.default.createElement("div",{style:{display:"flex",alignItems:"center",fontSize:"14px"}},React__default.default.createElement("img",{src:icon_left_squareOutlined,style:{height:"24px",marginRight:"8px",cursor:"pointer"},onClick:()=>k()}),React__default.default.createElement("span",{style:{marginRight:"12px"}},"\u952E\u76D8\u5DE6\u952E\u4E0A\u4E00\u5F20"),React__default.default.createElement("span",{style:{margin:"0px 8px 0px 12px"}},"\u952E\u76D8\u53F3\u952E\u4E0A\u4E00\u5F20"),React__default.default.createElement("img",{src:icon_right_squareOutlined,style:{height:"24px",marginRight:"12px",cursor:"pointer"},onClick:()=>N()}),React__default.default.createElement("img",{src:icon_esc,style:{height:"24px",margin:"0px 8px 0px 12px",cursor:"pointer"},onClick:()=>{L(!1),E(void 0)}}),React__default.default.createElement("span",null,"\u952E\u9000\u51FA"));return(d==null?void 0:d.length)>0?React__default.default.createElement(React__default.default.Fragment,null,d.map((o,i)=>{const r=y&&i===s;return React__default.default.createElement(PointCloudLayout.PointCloudContainer,{className:classNames__default.default({[dom.getClassName("point-cloud-2d-container")]:!0,[dom.getClassName("point-cloud-container","zoom")]:r}),title:React__default.default.createElement(ContainerTitle,{showEnlarge:r,isEnlargeTopView:m,data:o,setIsEnlarge:L,setCurIndex:E,curIndex:s,index:i,annotations2d:d}),titleOnSurface:!r,style:{display:J?"none":"flex",width:r?"100%":n},key:i,toolbar:Q},(o==null?void 0:o.annotations)&&(o==null?void 0:o.url)&&React__default.default.createElement(PointCloud2DSingleView,{currentData:e,view2dData:o,setSelectedID:B,showEnlarge:r,checkMode:w,measureVisible:b}))})):null};var PointCloud2DView$1=reactRedux.connect(map.a2MapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloud2DView);module.exports=PointCloud2DView$1;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var lbUtils=require("@labelbee/lb-utils"),React=require("react"),lbAnnotation=require("@labelbee/lb-annotation"),ctx=require("../../store/ctx.js"),actionCreators=require("../../store/annotation/actionCreators.js"),index=require("../../store/annotatedBox/index.js");function _interopDefaultLegacy(n){return n&&typeof n=="object"&&"default"in n?n:{default:n}}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=(n,e,i)=>e in n?__defProp(n,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):n[e]=i,__spreadValues=(n,e)=>{for(var i in e||(e={}))__hasOwnProp.call(e,i)&&__defNormalProp(n,i,e[i]);if(__getOwnPropSymbols)for(var i of __getOwnPropSymbols(e))__propIsEnum.call(e,i)&&__defNormalProp(n,i,e[i]);return n},__spreadProps=(n,e)=>__defProps(n,__getOwnPropDescs(e)),__async=(n,e,i)=>new Promise((h,C)=>{var I=P=>{try{f(i.next(P))}catch(s){C(s)}},_=P=>{try{f(i.throw(P))}catch(s){C(s)}},f=P=>P.done?h(P.value):Promise.resolve(P.value).then(I,_);f((i=i.apply(n,e)).next())});const PointCloudContext=React__default.default.createContext({pointCloudBoxList:[],pointCloudSphereList:[],displayPointCloudList:[],displaySphereList:[],displayLineList:[],polygonList:[],lineList:[],selectedID:"",selectedIDs:[],highlightIDs:[],setHighlightIDs:()=>{},valid:!0,setSelectedIDs:()=>{},setPointCloudResult:()=>{},setPointCloudSphereList:()=>{},setPointCloudValid:()=>{},setTopViewInstance:()=>{},setSideViewInstance:()=>{},setBackViewInstance:()=>{},setMainViewInstance:()=>{},addSelectedID:()=>{},addHighlightID:()=>{},selectedAllBoxes:()=>{},addPointCloudBox:()=>[],addPointCloudSphere:()=>[],setPolygonList:()=>{},setLineList:()=>{},zoom:1,setZoom:()=>{},history:new lbAnnotation.ActionsHistory,hideAttributes:[],setHideAttributes:()=>{},toggleAttributesVisible:()=>{},reRender:()=>{},setAttrPanelLayout:()=>{},attrPanelLayout:"",syncAllViewPointCloudColor:()=>Promise.resolve(),defaultAttribute:"",setDefaultAttribute:()=>{},pointCloudPattern:lbAnnotation.EToolName.Rect,setPointCloudPattern:()=>{},selectSpecAttr:()=>{},globalPattern:lbUtils.EPointCloudPattern.Detection,setGlobalPattern:()=>{},setPtSegmentInstance:()=>{},segmentation:[],setSegmentation:()=>{},clearAllDetectionInstance:()=>{},highlight2DDataList:[],setHighlight2DDataList:()=>{},cuboidBoxIn2DView:!0,setCuboidBoxIn2DView:n=>{},imageSizes:{},cacheImageNodeSize:()=>{}}),PointCloudProvider=({children:n})=>{const[e,i]=React.useState([]),[h,C]=React.useState([]),[I,_]=React.useState([]),[f,P]=React.useState([]),[s,A]=React.useState([]),[m,x]=React.useState([]),[R,$]=React.useState(!0),[j,tt]=React.useState(!0),[z,et]=React.useState(1),[a,N]=React.useState(),[q,M]=React.useState(),[G,T]=React.useState(),[l,F]=React.useState(),[Z,ot]=React.useState(""),[V,nt]=React.useState(lbAnnotation.EToolName.Rect),it=React.useRef(new lbAnnotation.ActionsHistory).current,[c,B]=React.useState([]),[k,st]=React.useState(""),[O,lt]=React.useState(lbUtils.EPointCloudPattern.Detection),[S,U]=React.useState(void 0),[H,rt]=React.useState([]),[E,at]=React.useState([]),p=index(),[J,ut]=React.useState({}),dt=ctx.useDispatch(),ct=r=>{const{imgNode:u,path:d}=r;d&&u&&ut(g=>__spreadProps(__spreadValues({},g),{[d]:{width:u.width,height:u.height}}))},K=React.useMemo(()=>s.length===1?s[0]:"",[s]),D=React.useMemo(()=>{const r=e.find(t=>t.id===K),u=t=>{const o=e.concat(t);return i(o),o},d=t=>{const o=h.concat(t);return C(o),o},g=t=>{$(t!==!1)},v=t=>{t===void 0&&A([]),typeof t=="string"&&A([t]),Array.isArray(t)&&A(Array.from(new Set(t)))},vt=t=>{s.includes(t)?v(s.filter(o=>o!==t)):v([...s,t])},Pt=t=>{m.includes(t)?x([]):x([t])},gt=()=>{if(V===lbAnnotation.EToolName.Rect){const t=e.map(o=>o.id);v(t),a==null||a.pointCloud2dOperation.setSelectedIDs(t)}},ft=t=>{v(e.filter(o=>o.attribute===t).map(o=>o.id))},Q=e.filter(t=>!c.includes(t.attribute)),W=h.filter(t=>!c.includes(t.attribute)),X=f.filter(t=>t.attribute&&!c.includes(t.attribute)),ht=t=>{if(c.includes(t))B(c.filter(o=>o!==t));else{const o=c.concat(t);B(o)}},St=(t=Q,o=I,y=W,w=X,L=H)=>{var b;l==null||l.clearAllBox(),l==null||l.clearAllSphere(),a==null||a.updatePolygonList(t,o),a==null||a.updatePointList(y),a==null||a.updateLineList(w),l==null||l.generateBoxes(t),l==null||l.generateSpheres(y),(b=S==null?void 0:S.store)==null||b.updateCurrentSegment(L),Y(t)},bt=()=>{N(void 0),M(void 0),T(void 0),F(void 0)},Y=(t,o)=>__async(void 0,null,function*(){var y;if(!l)return;const w=l.pointCloudObject;if(!!w)try{const L=yield l.getHighlightIndexByMappingImgList({mappingImgList:o!=null?o:E,points:w.geometry.attributes.position.array}),b=yield l==null?void 0:l.highlightOriginPointCloud(t,L);return b&&((y=a==null?void 0:a.pointCloudInstance)==null||y.updateColor(b)),b}catch(L){console.error(L)}});return{selectedID:K,pointCloudBoxList:e,pointCloudSphereList:h,displayPointCloudList:Q,displaySphereList:W,displayLineList:X,selectedIDs:s,setPointCloudResult:i,setSelectedIDs:v,addPointCloudBox:u,addPointCloudSphere:d,setPointCloudSphereList:C,valid:R,selectedPointCloudBox:r,setPointCloudValid:g,addSelectedID:vt,addHighlightID:Pt,selectedAllBoxes:gt,topViewInstance:a,setTopViewInstance:N,sideViewInstance:q,setSideViewInstance:M,backViewInstance:G,setBackViewInstance:T,mainViewInstance:l,setMainViewInstance:F,polygonList:I,setPolygonList:_,lineList:f,setLineList:P,zoom:z,setZoom:et,history:it,toggleAttributesVisible:ht,hideAttributes:c,setHideAttributes:B,reRender:St,attrPanelLayout:k,setAttrPanelLayout:st,syncAllViewPointCloudColor:Y,defaultAttribute:Z,setDefaultAttribute:ot,pointCloudPattern:V,setPointCloudPattern:nt,selectSpecAttr:ft,globalPattern:O,setGlobalPattern:t=>{O!==t&&(dt(actionCreators.ChangeSave),lt(t),t===lbUtils.EPointCloudPattern.Detection&&U(void 0))},ptSegmentInstance:S,setPtSegmentInstance:U,segmentation:H,setSegmentation:rt,clearAllDetectionInstance:bt,highlight2DDataList:E,setHighlight2DDataList:at,cuboidBoxIn2DView:j,setCuboidBoxIn2DView:tt,imageSizes:J,cacheImageNodeSize:ct,highlightIDs:m,setHighlightIDs:x}},[R,s,e,h,I,f,a,q,G,l,z,c,k,Z,V,O,S,H,E,j,J,m]);React.useEffect(()=>{var r,u,d;(r=p==null?void 0:p.setPointCloudBoxList)==null||r.call(p,e),(u=p==null?void 0:p.setHighlightIDs)==null||u.call(p,m),(d=p==null?void 0:p.setSelectedIDs)==null||d.call(p,s)},[e,s,m]),React.useEffect(()=>{var r;(r=p==null?void 0:p.setPtCtx)==null||r.call(p,D)},[D]);const pt=()=>{const r=e.filter(v=>c.includes(v.attribute)),{setSelectedIDs:u,reRender:d}=D,g=r.map(v=>v.id);g.length>0&&u(s.filter(v=>!g.includes(v))),d()};return React.useEffect(()=>{var r,u,d,g;pt(),(u=(r=a==null?void 0:a.toolInstance)==null?void 0:r.setHiddenAttributes)==null||u.call(r,c),(g=(d=S==null?void 0:S.store)==null?void 0:d.setHiddenAttributes)==null||g.call(d,c)},[c]),React__default.default.createElement(PointCloudContext.Provider,{value:D},n)};exports.PointCloudContext=PointCloudContext,exports.PointCloudProvider=PointCloudProvider;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var lbUtils=require("@labelbee/lb-utils"),React=require("react"),lbAnnotation=require("@labelbee/lb-annotation"),ctx=require("../../store/ctx.js"),actionCreators=require("../../store/annotation/actionCreators.js"),index=require("../../store/annotatedBox/index.js"),_=require("lodash");function _interopDefaultLegacy(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}var React__default=_interopDefaultLegacy(React),___default=_interopDefaultLegacy(_),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(o,n,i)=>n in o?__defProp(o,n,{enumerable:!0,configurable:!0,writable:!0,value:i}):o[n]=i,__spreadValues=(o,n)=>{for(var i in n||(n={}))__hasOwnProp.call(n,i)&&__defNormalProp(o,i,n[i]);if(__getOwnPropSymbols)for(var i of __getOwnPropSymbols(n))__propIsEnum.call(n,i)&&__defNormalProp(o,i,n[i]);return o},__spreadProps=(o,n)=>__defProps(o,__getOwnPropDescs(n)),__async=(o,n,i)=>new Promise((b,y)=>{var L=c=>{try{I(i.next(c))}catch(S){y(S)}},x=c=>{try{I(i.throw(c))}catch(S){y(S)}},I=c=>c.done?b(c.value):Promise.resolve(c.value).then(L,x);I((i=i.apply(o,n)).next())});const pickRectObject=o=>___default.default.pick(o,["id","attribute","width","height","x","y","imageName"]),PointCloudContext=React__default.default.createContext({rectList:[],pointCloudBoxList:[],pointCloudSphereList:[],displayPointCloudList:[],displaySphereList:[],displayLineList:[],polygonList:[],lineList:[],selectedID:"",selectedIDs:[],highlightIDs:[],setHighlightIDs:()=>{},valid:!0,setSelectedIDs:()=>{},setPointCloudResult:()=>{},setPointCloudSphereList:()=>{},setPointCloudValid:()=>{},setTopViewInstance:()=>{},setSideViewInstance:()=>{},setBackViewInstance:()=>{},setMainViewInstance:()=>{},addSelectedID:()=>{},addHighlightID:()=>{},selectedAllBoxes:()=>{},addPointCloudBox:()=>[],addPointCloudSphere:()=>[],setPolygonList:()=>{},setRectList:()=>{},addRectIn2DView:()=>{},removeRectIn2DView:()=>{},updateRectIn2DView:()=>{},setLineList:()=>{},zoom:1,setZoom:()=>{},history:new lbAnnotation.ActionsHistory,hideAttributes:[],setHideAttributes:()=>{},toggleAttributesVisible:()=>{},reRender:()=>{},setAttrPanelLayout:()=>{},attrPanelLayout:"",syncAllViewPointCloudColor:()=>Promise.resolve(),defaultAttribute:"",setDefaultAttribute:()=>{},pointCloudPattern:lbAnnotation.EToolName.Rect,setPointCloudPattern:()=>{},selectSpecAttr:()=>{},globalPattern:lbUtils.EPointCloudPattern.Detection,setGlobalPattern:()=>{},setPtSegmentInstance:()=>{},segmentation:[],setSegmentation:()=>{},clearAllDetectionInstance:()=>{},highlight2DDataList:[],setHighlight2DDataList:()=>{},cuboidBoxIn2DView:!0,setCuboidBoxIn2DView:o=>{},imageSizes:{},cacheImageNodeSize:()=>{}}),PointCloudProvider=({children:o})=>{const[n,i]=React.useState([]),[b,y]=React.useState([]),[L,x]=React.useState([]),[I,c]=React.useState([]),[S,et]=React.useState([]),[v,V]=React.useState([]),[w,R]=React.useState([]),[N,nt]=React.useState(!0),[q,ot]=React.useState(!0),[z,it]=React.useState(1),[r,M]=React.useState(),[G,T]=React.useState(),[F,k]=React.useState(),[s,Z]=React.useState(),[U,st]=React.useState(""),[B,lt]=React.useState(lbAnnotation.EToolName.Rect),rt=React.useRef(new lbAnnotation.ActionsHistory).current,[d,O]=React.useState([]),[J,at]=React.useState(""),[H,ut]=React.useState(lbUtils.EPointCloudPattern.Detection),[C,K]=React.useState(void 0),[E,ct]=React.useState([]),[j,dt]=React.useState([]),p=index(),[Q,pt]=React.useState({}),vt=ctx.useDispatch(),ft=l=>{const{imgNode:a,path:u}=l;u&&a&&pt(P=>__spreadProps(__spreadValues({},P),{[u]:{width:a.width,height:a.height}}))},W=React.useMemo(()=>v.length===1?v[0]:"",[v]),A=React.useMemo(()=>{const l=n.find(t=>t.id===W),a=t=>{const e=n.concat(t);return i(e),e},u=t=>{const e=b.concat(t);return y(e),e},P=t=>{nt(t!==!1)},f=t=>{t===void 0&&V([]),typeof t=="string"&&V([t]),Array.isArray(t)&&V(Array.from(new Set(t)))},Pt=t=>{v.includes(t)?f(v.filter(e=>e!==t)):f([...v,t])},ht=t=>{const e=pickRectObject(t);c(g=>[...g,e])},St=t=>{const e=pickRectObject(t);c(g=>g.map(h=>h.id===t.id?e:h))},bt=t=>{c(e=>e.filter(g=>!t.find(h=>h.id===g.id)))},It=t=>{w.includes(t)?R([]):R([t])},Ct=()=>{if(B===lbAnnotation.EToolName.Rect){const t=n.map(e=>e.id);f(t),r==null||r.pointCloud2dOperation.setSelectedIDs(t)}},mt=t=>{f(n.filter(e=>e.attribute===t).map(e=>e.id))},X=n.filter(t=>!d.includes(t.attribute)),Y=b.filter(t=>!d.includes(t.attribute)),$=S.filter(t=>t.attribute&&!d.includes(t.attribute)),yt=t=>{if(d.includes(t))O(d.filter(e=>e!==t));else{const e=d.concat(t);O(e)}},Lt=(t=X,e=L,g=Y,h=$,D=E)=>{var m;s==null||s.clearAllBox(),s==null||s.clearAllSphere(),r==null||r.updatePolygonList(t,e),r==null||r.updatePointList(g),r==null||r.updateLineList(h),s==null||s.generateBoxes(t),s==null||s.generateSpheres(g),(m=C==null?void 0:C.store)==null||m.updateCurrentSegment(D),tt(t)},wt=()=>{M(void 0),T(void 0),k(void 0),Z(void 0)},tt=(t,e)=>__async(void 0,null,function*(){var g;if(!s)return;const h=s.pointCloudObject;if(!!h)try{const D=yield s.getHighlightIndexByMappingImgList({mappingImgList:e!=null?e:j,points:h.geometry.attributes.position.array}),m=yield s==null?void 0:s.highlightOriginPointCloud(t,D);return m&&((g=r==null?void 0:r.pointCloudInstance)==null||g.updateColor(m)),m}catch(D){console.error(D)}});return{selectedID:W,pointCloudBoxList:n,pointCloudSphereList:b,displayPointCloudList:X,displaySphereList:Y,displayLineList:$,selectedIDs:v,setPointCloudResult:i,setSelectedIDs:f,addPointCloudBox:a,addPointCloudSphere:u,setPointCloudSphereList:y,valid:N,selectedPointCloudBox:l,setPointCloudValid:P,addSelectedID:Pt,addHighlightID:It,selectedAllBoxes:Ct,topViewInstance:r,setTopViewInstance:M,sideViewInstance:G,setSideViewInstance:T,backViewInstance:F,setBackViewInstance:k,mainViewInstance:s,setMainViewInstance:Z,polygonList:L,setPolygonList:x,rectList:I,setRectList:c,addRectIn2DView:ht,removeRectIn2DView:bt,updateRectIn2DView:St,lineList:S,setLineList:et,zoom:z,setZoom:it,history:rt,toggleAttributesVisible:yt,hideAttributes:d,setHideAttributes:O,reRender:Lt,attrPanelLayout:J,setAttrPanelLayout:at,syncAllViewPointCloudColor:tt,defaultAttribute:U,setDefaultAttribute:st,pointCloudPattern:B,setPointCloudPattern:lt,selectSpecAttr:mt,globalPattern:H,setGlobalPattern:t=>{H!==t&&(vt(actionCreators.ChangeSave),ut(t),t===lbUtils.EPointCloudPattern.Detection&&K(void 0))},ptSegmentInstance:C,setPtSegmentInstance:K,segmentation:E,setSegmentation:ct,clearAllDetectionInstance:wt,highlight2DDataList:j,setHighlight2DDataList:dt,cuboidBoxIn2DView:q,setCuboidBoxIn2DView:ot,imageSizes:Q,cacheImageNodeSize:ft,highlightIDs:w,setHighlightIDs:R}},[N,v,n,b,L,S,I,r,G,F,s,z,d,J,U,B,H,C,E,j,q,Q,w]);React.useEffect(()=>{var l,a,u;(l=p==null?void 0:p.setPointCloudBoxList)==null||l.call(p,n),(a=p==null?void 0:p.setHighlightIDs)==null||a.call(p,w),(u=p==null?void 0:p.setSelectedIDs)==null||u.call(p,v)},[n,v,w]),React.useEffect(()=>{var l;(l=p==null?void 0:p.setPtCtx)==null||l.call(p,A)},[A]);const gt=()=>{const l=n.filter(f=>d.includes(f.attribute)),{setSelectedIDs:a,reRender:u}=A,P=l.map(f=>f.id);P.length>0&&a(v.filter(f=>!P.includes(f))),u()};return React.useEffect(()=>{var l,a,u,P;gt(),(a=(l=r==null?void 0:r.toolInstance)==null?void 0:l.setHiddenAttributes)==null||a.call(l,d),(P=(u=C==null?void 0:C.store)==null?void 0:u.setHiddenAttributes)==null||P.call(u,d)},[d]),React__default.default.createElement(PointCloudContext.Provider,{value:A},o)};exports.PointCloudContext=PointCloudContext,exports.PointCloudProvider=PointCloudProvider;
@@ -1 +1 @@
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"),lbUtils=require("@labelbee/lb-utils");const{EToolName,EPolygonPattern}=lbAnnotation.cTool,useStatus=()=>{const{topViewInstance:i,sideViewInstance:r,backViewInstance:u,mainViewInstance:o,setPointCloudResult:d,setPointCloudSphereList:P,setPolygonList:C,pointCloudPattern:a,setPointCloudPattern:e,syncAllViewPointCloudColor:v,globalPattern:n,setLineList:b}=React.useContext(PointCloudContext.PointCloudContext),{pushHistoryWithList:h}=useHistory.useHistory(),p=()=>{o==null||o.clearAllBox(),o==null||o.clearAllSphere(),o==null||o.render(),d([]),C([]),P([]),b([]),i==null||i.toolScheduler.clearStatusAndResult(),v([]),h({pointCloudBoxList:[],polygonList:[],pointCloudSphereList:[]})},l=()=>{r==null||r.toolInstance.clearResult(),u==null||u.toolInstance.clearResult()},y=c=>{if(c===a)return;const s=[i,r,u];switch(c){case EToolName.Rect:l(),s.forEach(t=>{t==null||t.switchToCanvas(EToolName.PointCloudPolygon),t==null||t.toolInstance.setPattern(EPolygonPattern.Rect)}),e(EToolName.Rect);break;case EToolName.Polygon:l(),s.forEach(t=>{t==null||t.switchToCanvas(EToolName.PointCloudPolygon),t==null||t.toolInstance.setPattern(EPolygonPattern.Normal)}),e(EToolName.Polygon);break;case EToolName.Point:l(),s.forEach(t=>{t==null||t.switchToCanvas(EToolName.Point)}),e(EToolName.Point);break;case EToolName.Line:l(),s.forEach(t=>{t==null||t.switchToCanvas(EToolName.Line)}),e(EToolName.Line);break}},w=React.useMemo(()=>n===lbUtils.EPointCloudPattern.Detection,[n]),L=React.useMemo(()=>n===lbUtils.EPointCloudPattern.Segmentation,[n]);return{clearAllResult:p,updatePointCloudPattern:y,pointCloudPattern:a,isPointCloudDetectionPattern:w,isPointCloudSegmentationPattern:L}};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"),lbUtils=require("@labelbee/lb-utils");const{EToolName,EPolygonPattern}=lbAnnotation.cTool,useStatus=()=>{const{topViewInstance:i,sideViewInstance:r,backViewInstance:u,mainViewInstance:e,setPointCloudResult:d,setPointCloudSphereList:P,setPolygonList:C,setRectList:v,pointCloudPattern:a,setPointCloudPattern:o,syncAllViewPointCloudColor:b,globalPattern:n,setLineList:h}=React.useContext(PointCloudContext.PointCloudContext),{pushHistoryWithList:p}=useHistory.useHistory(),y=()=>{e==null||e.clearAllBox(),e==null||e.clearAllSphere(),e==null||e.render(),d([]),C([]),P([]),h([]),v([]),i==null||i.toolScheduler.clearStatusAndResult(),b([]),p({pointCloudBoxList:[],polygonList:[],pointCloudSphereList:[]})},l=()=>{r==null||r.toolInstance.clearResult(),u==null||u.toolInstance.clearResult()},L=c=>{if(c===a)return;const s=[i,r,u];switch(c){case EToolName.Rect:l(),s.forEach(t=>{t==null||t.switchToCanvas(EToolName.PointCloudPolygon),t==null||t.toolInstance.setPattern(EPolygonPattern.Rect)}),o(EToolName.Rect);break;case EToolName.Polygon:l(),s.forEach(t=>{t==null||t.switchToCanvas(EToolName.PointCloudPolygon),t==null||t.toolInstance.setPattern(EPolygonPattern.Normal)}),o(EToolName.Polygon);break;case EToolName.Point:l(),s.forEach(t=>{t==null||t.switchToCanvas(EToolName.Point)}),o(EToolName.Point);break;case EToolName.Line:l(),s.forEach(t=>{t==null||t.switchToCanvas(EToolName.Line)}),o(EToolName.Line);break}},w=React.useMemo(()=>n===lbUtils.EPointCloudPattern.Detection,[n]),R=React.useMemo(()=>n===lbUtils.EPointCloudPattern.Segmentation,[n]);return{clearAllResult:y,updatePointCloudPattern:L,pointCloudPattern:a,isPointCloudDetectionPattern:w,isPointCloudSegmentationPattern:R}};exports.useStatus=useStatus;
@@ -1 +1 @@
1
- "use strict";var dom=require("../../utils/dom.js"),React=require("react"),PointCloud3DView=require("./PointCloud3DView.js"),PointCloudBackView=require("./PointCloudBackView.js"),PointCloudTopView=require("./PointCloudTopView.js"),PointCloudSideView=require("./PointCloudSideView.js"),PointCloud2DView=require("./PointCloud2DView.js"),PointCloudListener=require("./PointCloudListener.js"),PointCloudSegmentListener=require("./PointCloudSegmentListener.js"),PointCloudSegment=require("./PointCloudSegment.js"),PointCloudSegmentStatus=require("./PointCloudSegmentStatus.js"),PointCloudSegmentToolbar=require("./PointCloudSegmentToolbar.js"),PointCloudSegment2DView=require("./PointCloudSegment2DView.js"),reactRedux=require("react-redux"),ctx=require("../../store/ctx.js"),index$1=require("../../views/MainView/toolFooter/AnnotatedAttributes/index.js"),PointCloudContext=require("./PointCloudContext.js"),lbUtils=require("@labelbee/lb-utils"),annotation=require("../../hooks/annotation.js"),index=require("../../utils/index.js"),map=require("../../store/annotation/map.js"),classNames=require("classnames"),index$2=require("./components/sideAndBackOverView/index.js"),actionCreators=require("../../store/annotation/actionCreators.js");function _interopDefaultLegacy(l){return l&&typeof l=="object"&&"default"in l?l:{default:l}}var React__default=_interopDefaultLegacy(React),classNames__default=_interopDefaultLegacy(classNames);const PointCloudView=l=>{const{currentData:i,imgList:g,drawLayerSlot:d,checkMode:n,intelligentFit:P,imgIndex:v,config:p,measureVisible:E}=l,e=React.useContext(PointCloudContext.PointCloudContext),{globalPattern:c,setGlobalPattern:L,selectedIDs:m}=e,x=ctx.useDispatch(),[a,C]=React.useState(!1),S=(m==null?void 0:m.length)>0&&a,q=index.jsonParser(i.result),{toolInstanceRef:o,clearToolInstance:b}=annotation.useCustomToolInstance({basicInfo:q});if(React.useEffect(()=>{o.current.setPointCloudGlobalPattern=t=>{t!==c&&(L(t),e.clearAllDetectionInstance(),b())}},[c]),React.useEffect(()=>{var t;if(actionCreators.SetLoadPCDFileLoading(x,!0),i){const{boxParamsList:r,polygonList:u,lineList:s,sphereParamsList:j,segmentation:w}=lbUtils.PointCloudUtils.parsePointCloudCurrentResult((t=i==null?void 0:i.result)!=null?t:"");e.setPointCloudResult(r),e.setPolygonList(u),e.setLineList(s),e.setPointCloudSphereList(j),e.setSegmentation(w)}},[v]),React.useEffect(()=>{o.current.exportData=()=>[e.pointCloudBoxList,{valid:e.valid}],o.current.exportCustomData=()=>{var t,r,u,s;return{resultPolygon:(t=e.polygonList)!=null?t:[],resultLine:(r=e.lineList)!=null?r:[],resultPoint:(u=e.pointCloudSphereList)!=null?u:[],segmentation:(s=e.segmentation)!=null?s:[]}}},[e.pointCloudBoxList,e.valid,e.polygonList,e.lineList,e.pointCloudSphereList,e.ptSegmentInstance,e.segmentation]),g.length===0)return null;if(c===lbUtils.EPointCloudPattern.Segmentation)return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(PointCloudSegmentListener,{checkMode:n,toolInstanceRef:o}),React__default.default.createElement(PointCloudSegmentToolbar,null),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-layout")},React__default.default.createElement(PointCloudSegment,{checkMode:n}),React__default.default.createElement(PointCloudSegment2DView,null)),React__default.default.createElement(PointCloudSegmentStatus,{config:p}),d==null?void 0:d({direct:!0}));let f=React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","left-bottom")},React__default.default.createElement(PointCloudBackView,{checkMode:n}),React__default.default.createElement(PointCloudSideView,{checkMode:n}));return a&&(f=React__default.default.createElement(index$2,{selectAndEnlarge:S,checkMode:n})),React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(PointCloudListener,{checkMode:n,toolInstanceRef:o}),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-layout"),onContextMenu:t=>t.preventDefault()},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-wrapper")},React__default.default.createElement(index$1.AnnotatedAttributesPanelFixedLeft,null),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-content")},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","left")},React__default.default.createElement(PointCloud3DView,null),f),React__default.default.createElement("div",{className:classNames__default.default({[dom.getClassName("point-cloud-container","right")]:!0,[dom.getClassName("point-cloud-container","rightZoom")]:a})},React__default.default.createElement(PointCloudTopView,{drawLayerSlot:d,checkMode:n,intelligentFit:P,setIsEnlargeTopView:C,onExitZoom:()=>{C(!1)},isEnlargeTopView:a}),React__default.default.createElement("div",{className:classNames__default.default({[dom.getClassName("point-cloud-container","right-bottom")]:!a,[dom.getClassName("point-cloud-container","right-bottom-floatLeft")]:a})},React__default.default.createElement(PointCloud2DView,{isEnlargeTopView:a,thumbnailWidth:a?300:455,checkMode:n,measureVisible:E})))),React__default.default.createElement(index$1.AnnotatedAttributesPanelFixedRight,null))))};var PointCloudView$1=reactRedux.connect(map.a2MapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloudView);module.exports=PointCloudView$1;
1
+ "use strict";var dom=require("../../utils/dom.js"),React=require("react"),PointCloud3DView=require("./PointCloud3DView.js"),PointCloudBackView=require("./PointCloudBackView.js"),PointCloudTopView=require("./PointCloudTopView.js"),PointCloudSideView=require("./PointCloudSideView.js"),PointCloud2DView=require("./PointCloud2DView.js"),PointCloudListener=require("./PointCloudListener.js"),PointCloudSegmentListener=require("./PointCloudSegmentListener.js"),PointCloudSegment=require("./PointCloudSegment.js"),PointCloudSegmentStatus=require("./PointCloudSegmentStatus.js"),PointCloudSegmentToolbar=require("./PointCloudSegmentToolbar.js"),PointCloudSegment2DView=require("./PointCloudSegment2DView.js"),reactRedux=require("react-redux"),ctx=require("../../store/ctx.js"),index$1=require("../../views/MainView/toolFooter/AnnotatedAttributes/index.js"),PointCloudContext=require("./PointCloudContext.js"),lbUtils=require("@labelbee/lb-utils"),annotation=require("../../hooks/annotation.js"),index=require("../../utils/index.js"),map=require("../../store/annotation/map.js"),classNames=require("classnames"),index$2=require("./components/sideAndBackOverView/index.js"),actionCreators=require("../../store/annotation/actionCreators.js");function _interopDefaultLegacy(a){return a&&typeof a=="object"&&"default"in a?a:{default:a}}var React__default=_interopDefaultLegacy(React),classNames__default=_interopDefaultLegacy(classNames);const PointCloudView=a=>{const{currentData:i,imgList:P,drawLayerSlot:c,checkMode:n,intelligentFit:v,imgIndex:p,config:L,measureVisible:E}=a,e=React.useContext(PointCloudContext.PointCloudContext),{globalPattern:m,setGlobalPattern:x,selectedIDs:C}=e,S=ctx.useDispatch(),[l,f]=React.useState(!1),q=(C==null?void 0:C.length)>0&&l,b=index.jsonParser(i.result),{toolInstanceRef:o,clearToolInstance:j}=annotation.useCustomToolInstance({basicInfo:b});if(React.useEffect(()=>{o.current.setPointCloudGlobalPattern=t=>{t!==m&&(x(t),e.clearAllDetectionInstance(),j())}},[m]),React.useEffect(()=>{var t;if(actionCreators.SetLoadPCDFileLoading(S,!0),i){const{boxParamsList:r,polygonList:s,lineList:u,sphereParamsList:d,segmentation:w,rectList:N}=lbUtils.PointCloudUtils.parsePointCloudCurrentResult((t=i==null?void 0:i.result)!=null?t:"");e.setPointCloudResult(r),e.setPolygonList(s),e.setLineList(u),e.setPointCloudSphereList(d),e.setRectList(N),e.setSegmentation(w)}},[p]),React.useEffect(()=>{o.current.exportData=()=>[e.pointCloudBoxList,{valid:e.valid}],o.current.exportCustomData=()=>{var t,r,s,u,d;return{resultPolygon:(t=e.polygonList)!=null?t:[],resultLine:(r=e.lineList)!=null?r:[],resultPoint:(s=e.pointCloudSphereList)!=null?s:[],resultRect:(u=e.rectList)!=null?u:[],segmentation:(d=e.segmentation)!=null?d:[]}}},[e.pointCloudBoxList,e.rectList,e.valid,e.polygonList,e.lineList,e.pointCloudSphereList,e.ptSegmentInstance,e.segmentation]),P.length===0)return null;if(m===lbUtils.EPointCloudPattern.Segmentation)return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(PointCloudSegmentListener,{checkMode:n,toolInstanceRef:o}),React__default.default.createElement(PointCloudSegmentToolbar,null),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-layout")},React__default.default.createElement(PointCloudSegment,{checkMode:n}),React__default.default.createElement(PointCloudSegment2DView,null)),React__default.default.createElement(PointCloudSegmentStatus,{config:L}),c==null?void 0:c({direct:!0}));let g=React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","left-bottom")},React__default.default.createElement(PointCloudBackView,{checkMode:n}),React__default.default.createElement(PointCloudSideView,{checkMode:n}));return l&&(g=React__default.default.createElement(index$2,{selectAndEnlarge:q,checkMode:n})),React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(PointCloudListener,{checkMode:n,toolInstanceRef:o}),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-layout"),onContextMenu:t=>t.preventDefault()},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-wrapper")},React__default.default.createElement(index$1.AnnotatedAttributesPanelFixedLeft,null),React__default.default.createElement("div",{className:dom.getClassName("point-cloud-content")},React__default.default.createElement("div",{className:dom.getClassName("point-cloud-container","left")},React__default.default.createElement(PointCloud3DView,null),g),React__default.default.createElement("div",{className:classNames__default.default({[dom.getClassName("point-cloud-container","right")]:!0,[dom.getClassName("point-cloud-container","rightZoom")]:l})},React__default.default.createElement(PointCloudTopView,{drawLayerSlot:c,checkMode:n,intelligentFit:v,setIsEnlargeTopView:f,onExitZoom:()=>{f(!1)},isEnlargeTopView:l}),React__default.default.createElement("div",{className:classNames__default.default({[dom.getClassName("point-cloud-container","right-bottom")]:!l,[dom.getClassName("point-cloud-container","right-bottom-floatLeft")]:l})},React__default.default.createElement(PointCloud2DView,{isEnlargeTopView:l,thumbnailWidth:l?300:455,checkMode:n,measureVisible:E})))),React__default.default.createElement(index$1.AnnotatedAttributesPanelFixedRight,null))))};var PointCloudView$1=reactRedux.connect(map.a2MapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloudView);module.exports=PointCloudView$1;
package/dist/index.css CHANGED
@@ -132,6 +132,12 @@
132
132
  .index-module_outputDisplay__5dS48 .index-module_content__Iml6l .markdown-body {
133
133
  font-size: 14px;
134
134
  }
135
+
136
+ .index-module_tip__NFru6 {
137
+ margin-bottom: 8px;
138
+ color: rgba(0, 0, 0, 0.45);
139
+ font-size: 14px;
140
+ }
135
141
  .index-module_tagList__cvWor {
136
142
  padding: 0px 16px 16px 16px;
137
143
  }
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index$2=require("../../components/customResizeHook/index.js"),index$1=require("../../constant/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"),ToolType=require("../../data/enums/ToolType.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,s)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s,__spreadValues=(e,t)=>{for(var s in t||(t={}))__hasOwnProp.call(t,s)&&__defNormalProp(e,s,t[s]);if(__getOwnPropSymbols)for(var s of __getOwnPropSymbols(t))__propIsEnum.call(t,s)&&__defNormalProp(e,s,t[s]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t)),__async=(e,t,s)=>new Promise((g,u)=>{var S=I=>{try{N(s.next(I))}catch(m){u(m)}},A=I=>{try{N(s.throw(I))}catch(m){u(m)}},N=I=>I.done?g(I.value):Promise.resolve(I.value).then(S,A);N((s=s.apply(e,t)).next())});const getStepConfig=(e,t)=>e.find(s=>s.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,loadPCDFileLoading:!0,triggerEventAfterIndexChanged:!1,pointCloudLoading:!1,checkMode:!1,predictionResult:[],predictionResultVisible:!1,highlightAttribute:""},getTotalPage=e=>{const{imgList:t,imgPageSize:s}=e;return Math.ceil(t.length/s)},calcStepProgress=(e,t)=>e.reduce((s,g)=>{if(g){const u=g.result;if(index.jsonParser(u)[`step_${t}`])return s+1}return s},0)/e.length,updateToolInstance=(e,t)=>{const{step:s,stepList:g}=e,u=StepUtils.getCurrentStepInfo(s,g),S=ConfigUtils.ConfigUtils.jsonParser(u.config);if(ToolUtils.isVideoTool(u==null?void 0:u.tool)||ToolUtils.isAudioTool(u==null?void 0:u.tool)||ToolUtils.isPointCloudTool(u==null?void 0:u.tool)||[ToolType.EToolName.LLM,ToolType.EToolName.NLP].includes(u==null?void 0:u.tool))return;const A=document.getElementById("toolContainer");if(!A)throw"Not exist dom named id-toolContainer";const N=index$2.getFormatSize({width:window.innerWidth,height:window.innerHeight}),I=new lbAnnotation.AnnotationEngine({container:A,toolName:u.tool,size:N,imgNode:t,config:S,style:JSON.parse(styleString)});return{toolInstance:I==null?void 0:I.toolInstance,annotationEngine:I}},LoadFileAndFileData=(e,t)=>(s,g)=>__async(void 0,null,function*(){var u,S;const{stepList:A,step:N}=g().annotation,I=StepUtils.currentToolIsVideo(N,A),m=StepUtils.currentToolIsPointCloud(N,A),D=((u=StepUtils.getCurrentStepInfo(N,A))==null?void 0:u.tool)===ToolType.EToolName.LLM,y=((S=StepUtils.getCurrentStepInfo(N,A))==null?void 0:S.tool)===ToolType.EToolName.NLP,P=StepUtils.currentToolIsAudio(N,A);if(actionCreators.SetAnnotationLoading(s,!0),yield s(TryGetFileDataByAPI(e)),I){s(AfterVideoLoaded(e));return}if(m||D||P||y){s(AfterCommonLoaded(e));return}s(AfterImageLoaded(e,t))}),TryGetFileDataByAPI=e=>(t,s)=>__async(void 0,null,function*(){const{getFileData:g,imgList:u}=s().annotation;if(g){const S=yield g(u[e],e);t({type:Actions.ANNOTATION_ACTIONS.SET_FILE_DATA,payload:{fileData:S,index:e}})}}),AfterVideoLoaded=e=>t=>{t({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{nextIndex:e}})},AfterCommonLoaded=e=>t=>{actionCreators.SetAnnotationLoading(t,!1),t({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{nextIndex:e}})},AfterImageLoaded=(e,t)=>(s,g)=>{var u;const{toolInstance:S,imgList:A}=g().annotation,N=(u=A==null?void 0:A[e])==null?void 0:u.url;lbAnnotation.ImgUtils.load(N).then(I=>{actionCreators.SetAnnotationLoading(s,!1),s({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{imgNode:I,nextIndex:e,nextBasicIndex:t}})}).catch(()=>{actionCreators.SetAnnotationLoading(s,!1),S==null||S.setErrorImg(),s({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{nextIndex:e,nextBasicIndex:t}})})},composeResultByToolInstance=({toolInstance:e,imgList:t,imgIndex:s,stepList:g,step:u=1})=>{var S,A,N,I;const m=((S=t[s])==null?void 0:S.result)||"",[D,y,P]=(A=e==null?void 0:e.exportData())!=null?A:[],x=(I=(N=e==null?void 0:e.exportCustomData)==null?void 0:N.call(e))!=null?I:{},B=data.composeResultWithBasicImgInfo(m,y),w=data.composeResult(B,{step:u,stepList:g},{rect:D},x);return t.map((b,F)=>F===s?__spreadValues(__spreadProps(__spreadValues({},b),{result:w}),P):__spreadValues({},b))},annotationReducer=(e=__spreadValues({},initialState),t)=>{var s,g,u,S,A,N,I,m,D,y,P,x,B,w,b,F,G,V,M,q,k,H,z,K,W;switch(t.type){case Actions.ANNOTATION_ACTIONS.INIT_ALL_STATE:return __spreadValues(__spreadValues({},e),initialState);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:i,toolInstance:a,onSubmit:r,resultList:p}=e;if(!a||!n[o])return e;const d=((s=n[o])==null?void 0:s.result)||"",[,c,T]=(g=a==null?void 0:a.exportData())!=null?g:[],O=(S=(u=a==null?void 0:a.exportCustomData)==null?void 0:u.call(a))!=null?S:{},f=data.composeResultWithBasicImgInfo(d,c),C=data.composeResult(f,{step:l,stepList:i},{rect:p},O),L=e.imgList.map((v,E)=>{if(E===o){const U=AnnotationDataUtils.dataCorrection(C,d,l,i);return __spreadValues(__spreadProps(__spreadValues({},v),{result:U}),T)}return v});if(((A=t.payload)==null?void 0:A.submitType)===index$1.ESubmitType.SyncImgList)return __spreadProps(__spreadValues({},e),{imgList:L});r&&r([L[o]],(N=t.payload)==null?void 0:N.submitType,o,L);const R=calcStepProgress(L,l);return __spreadProps(__spreadValues({},e),{stepProgress:R,imgList:L})}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:i,basicResultList:a}=e;if(!i)return e;const[r]=(I=i==null?void 0:i.exportData())!=null?I:[];let p=r;if((a==null?void 0:a.length)>0){const d=(m=a[o])==null?void 0:m.id,c=r.map(T=>__spreadProps(__spreadValues({},T),{sourceID:d}));p=___default.default.cloneDeep(l).filter(T=>T.sourceID!==d),p.push(...c)}return __spreadProps(__spreadValues({},e),{resultList:p,imgList:n})}case Actions.ANNOTATION_ACTIONS.SET_BASIC_INDEX:{const{toolInstance:n,step:o,imgList:l,imgIndex:i,stepList:a,annotationEngine:r,resultList:p,basicResultList:d}=e;if(!n||!r)return e;const c=t.payload.basicIndex,T=(D=d[c])==null?void 0:D.id,O=index.jsonParser((y=l[i])==null?void 0:y.result),f=(p||[]).filter(U=>U.sourceID===T),C=getStepConfig(a,o),{dataSourceStep:L,tool:R}=C,v=getStepConfig(a,L);let E=[];return L&&R&&(E=(P=O[`step_${L}`])==null?void 0:P.result,(E==null?void 0:E.length)>0?(r==null||r.setBasicInfo(v.tool,E[c]),r==null||r.launchOperation()):(r==null||r.setBasicInfo(v.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:c})}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:i,stepList:a}=e;if(!l)return __spreadProps(__spreadValues({},e),{imgIndex:t.payload.nextIndex});const r=StepUtils.getCurrentStepInfo(o,a),{nextIndex:p,imgNode:d,nextBasicIndex:c,imgError:T}=t.payload,O=c!=null?c:0,f=index.jsonParser((x=n[p])==null?void 0:x.result),C=f[`step_${r.step}`],L=!C,R={rotate:(B=f.rotate)!=null?B:0,valid:(w=f.valid)!=null?w:!0};d&&T!==!0?i==null||i.setImgNode(d,R):l==null||l.setValid(R.valid);const v=getStepConfig(a,r.step),{dataSourceStep:E,tool:U}=v,$=getStepConfig(a,E),Y=E&&U,h=(F=(b=f[`step_${E}`])==null?void 0:b.result)!=null?F:[],j=AnnotationDataUtils.getInitialResultList(C==null?void 0:C.result,l,v,h,L);if(i==null||i.launchOperation(),Y&&((h==null?void 0:h.length)>0?i==null||i.setBasicInfo($.tool,h[O]):(i==null||i.setBasicInfo($.tool),i==null||i.forbidOperation(),es.message.info(lbUtils.i18n.t("NoDependency")))),r.tool!=="check"){const J=(V=(G=h[O])==null?void 0:G.id)!=null?V:"",X=Y?j.filter(Z=>lbAnnotation.CommonToolUtils.isSameSourceID(Z.sourceID,J)):j;(M=l==null?void 0:l.history)==null||M.initRecord(j,!0),l==null||l.setResult(X)}return __spreadProps(__spreadValues({},e),{imgIndex:p,basicIndex:O,basicResultList:h,resultList:j})}case Actions.ANNOTATION_ACTIONS.UPDATE_ANNOTATION_CONFIG:return __spreadProps(__spreadValues({},e),{config:(q=t.payload.config)!=null?q:"{}"});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:i}=o;return __spreadProps(__spreadValues({},e),{toolInstance:l,annotationEngine:i})}return __spreadValues({},e)}case Actions.ANNOTATION_ACTIONS.SET_TOOL:{const n=(k=t.payload)==null?void 0:k.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.SET_PREDICT_RESULT:return __spreadProps(__spreadValues({},e),{predictionResult:t.payload.result});case Actions.ANNOTATION_ACTIONS.SET_PREDICT_RESULT_VISIBLE:return __spreadProps(__spreadValues({},e),{predictionResultVisible:t.payload.visible});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.UPDATE_PRE_DATA_PROCESS:return __spreadProps(__spreadValues({},e),{preDataProcess:t.payload.preDataProcess});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,i=[...l];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||(H=n==null?void 0:n.updateRotate)==null||H.call(n),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:l,step:i}=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,i,(K=l[o].result)!=null?K:"");l[o]=__spreadProps(__spreadValues({},l[o]),{result:r});const d=index.jsonParser(r)[`step_${i}`],c=(d==null?void 0:d.result)||[];return n==null||n.setResult(c),n==null||n.history.pushHistory(c),(W=n==null?void 0:n.asyncData)==null||W.call(n,l[o]),__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 i=getStepConfig(n,l);return o==null||o.setToolName(i.tool,i.config),__spreadProps(__spreadValues({},e),{step:l,toolInstance:o==null?void 0:o.toolInstance})}case Actions.ANNOTATION_ACTIONS.SET_LOADPCDFILE_LOADING:{const{loadPCDFileLoading:n}=t.payload;return __spreadProps(__spreadValues({},e),{loadPCDFileLoading:!!n})}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.SET_CHECK_MODE:{const{checkMode:n}=t.payload;return __spreadProps(__spreadValues({},e),{checkMode:!!n})}case Actions.ANNOTATION_ACTIONS.SET_HIGHLIGHT_ATTRIBUTE:{const{attribute:n}=t.payload;return __spreadProps(__spreadValues({},e),{highlightAttribute:n})}case Actions.ANNOTATION_ACTIONS.BATCH_UPDATE_TRACK_ID:{const{id:n,newID:o,rangeIndex:l,imgList:i}=t.payload,{imgIndex:a,onSubmit:r}=e,p=[],d=i.map((c,T)=>{if(lbAnnotation.MathUtils.isInRange(T,l)){const O=__spreadProps(__spreadValues({},c),{result:lbUtils.PointCloudUtils.batchUpdateTrackID({id:n,newID:o,result:c.result})});return p.push({imgIndex:T,newInfo:O}),O}return c});return r&&r([d[a]],index$1.ESubmitType.BatchUpdateTrackID,a,d,{updateImgList:p}),__spreadProps(__spreadValues({},e),{imgList:d})}case Actions.ANNOTATION_ACTIONS.BATCH_UPDATE_RESULT_BY_TRACK_ID:{const{id:n,newData:o,rangeIndex:l}=t.payload,{imgList:i,imgIndex:a,onSubmit:r}=e,p=[],d=i.map((c,T)=>{if(lbAnnotation.MathUtils.isInRange(T,l)){const O=__spreadProps(__spreadValues({},c),{result:lbUtils.PointCloudUtils.batchUpdateResultByTrackID({id:n,newData:o,result:c.result})});return p.push({imgIndex:T,newInfo:O}),O}return c});return r&&r([d[a]],index$1.ESubmitType.BatchUpdateTrackID,a,d,{updateImgList:p}),__spreadProps(__spreadValues({},e),{imgList:d})}case Actions.ANNOTATION_ACTIONS.BATCH_UPDATE_IMG_LIST_RESULT_BY_PREDICT_RESULT:{const{onSubmit:n,imgList:o,stepList:l,step:i,predictionResult:a}=e,r={};a.forEach(T=>{const{index:O}=T;r[O]=___default.default.pick(T,["center","width","height","depth","rotation","id","attribute","valid","trackID"])});const p=`step_${i}`,d=[],c=o.map((T,O)=>{if(r[O]){const f=T.result==="{}"?index.jsonParser(data.composeResult("",{step:i,stepList:l},{rect:[]},{})):index.jsonParser(T.result);f[p].result.push(r[O]);const C=__spreadProps(__spreadValues({},T),{result:JSON.stringify(f)});return d.push({imgIndex:O,newInfo:C}),C}return T});return n==null||n(c,index$1.ESubmitType.BatchUpdateImgList,-1,c,{updateImgList:d}),__spreadProps(__spreadValues({},e),{imgList:c})}default:return e}};exports.LoadFileAndFileData=LoadFileAndFileData,exports.annotationReducer=annotationReducer,exports.composeResultByToolInstance=composeResultByToolInstance,exports.getStepConfig=getStepConfig,exports.getTotalPage=getTotalPage;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index$2=require("../../components/customResizeHook/index.js"),index$1=require("../../constant/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"),ToolType=require("../../data/enums/ToolType.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,s)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s,__spreadValues=(e,t)=>{for(var s in t||(t={}))__hasOwnProp.call(t,s)&&__defNormalProp(e,s,t[s]);if(__getOwnPropSymbols)for(var s of __getOwnPropSymbols(t))__propIsEnum.call(t,s)&&__defNormalProp(e,s,t[s]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t)),__async=(e,t,s)=>new Promise((g,u)=>{var S=I=>{try{N(s.next(I))}catch(m){u(m)}},A=I=>{try{N(s.throw(I))}catch(m){u(m)}},N=I=>I.done?g(I.value):Promise.resolve(I.value).then(S,A);N((s=s.apply(e,t)).next())});const getStepConfig=(e,t)=>e.find(s=>s.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,loadPCDFileLoading:!0,triggerEventAfterIndexChanged:!1,pointCloudLoading:!1,checkMode:!1,predictionResult:[],predictionResultVisible:!1,highlightAttribute:""},getTotalPage=e=>{const{imgList:t,imgPageSize:s}=e;return Math.ceil(t.length/s)},calcStepProgress=(e,t)=>e.reduce((s,g)=>{if(g){const u=g.result;if(index.jsonParser(u)[`step_${t}`])return s+1}return s},0)/e.length,updateToolInstance=(e,t)=>{const{step:s,stepList:g}=e,u=StepUtils.getCurrentStepInfo(s,g),S=ConfigUtils.ConfigUtils.jsonParser(u.config);if(ToolUtils.isVideoTool(u==null?void 0:u.tool)||ToolUtils.isAudioTool(u==null?void 0:u.tool)||ToolUtils.isPointCloudTool(u==null?void 0:u.tool)||[ToolType.EToolName.LLM,ToolType.EToolName.NLP].includes(u==null?void 0:u.tool))return;const A=document.getElementById("toolContainer");if(!A)throw"Not exist dom named id-toolContainer";const N=index$2.getFormatSize({width:window.innerWidth,height:window.innerHeight}),I=new lbAnnotation.AnnotationEngine({container:A,toolName:u.tool,size:N,imgNode:t,config:S,style:JSON.parse(styleString)});return{toolInstance:I==null?void 0:I.toolInstance,annotationEngine:I}},LoadFileAndFileData=(e,t)=>(s,g)=>__async(void 0,null,function*(){var u,S;const{stepList:A,step:N}=g().annotation,I=StepUtils.currentToolIsVideo(N,A),m=StepUtils.currentToolIsPointCloud(N,A),D=((u=StepUtils.getCurrentStepInfo(N,A))==null?void 0:u.tool)===ToolType.EToolName.LLM,y=((S=StepUtils.getCurrentStepInfo(N,A))==null?void 0:S.tool)===ToolType.EToolName.NLP,P=StepUtils.currentToolIsAudio(N,A);if(actionCreators.SetAnnotationLoading(s,!0),yield s(TryGetFileDataByAPI(e)),I){s(AfterVideoLoaded(e));return}if(m||D||P||y){s(AfterCommonLoaded(e));return}s(AfterImageLoaded(e,t))}),TryGetFileDataByAPI=e=>(t,s)=>__async(void 0,null,function*(){const{getFileData:g,imgList:u}=s().annotation;if(g){const S=yield g(u[e],e);t({type:Actions.ANNOTATION_ACTIONS.SET_FILE_DATA,payload:{fileData:S,index:e}})}}),AfterVideoLoaded=e=>t=>{t({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{nextIndex:e}})},AfterCommonLoaded=e=>t=>{actionCreators.SetAnnotationLoading(t,!1),t({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{nextIndex:e}})},AfterImageLoaded=(e,t)=>(s,g)=>{var u;const{toolInstance:S,imgList:A}=g().annotation,N=(u=A==null?void 0:A[e])==null?void 0:u.url;lbAnnotation.ImgUtils.load(N).then(I=>{actionCreators.SetAnnotationLoading(s,!1),s({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{imgNode:I,nextIndex:e,nextBasicIndex:t}})}).catch(()=>{actionCreators.SetAnnotationLoading(s,!1),S==null||S.setErrorImg(),s({type:Actions.ANNOTATION_ACTIONS.LOAD_FILE_DATA,payload:{nextIndex:e,nextBasicIndex:t}})})},composeResultByToolInstance=({toolInstance:e,imgList:t,imgIndex:s,stepList:g,step:u=1})=>{var S,A,N,I;const m=((S=t[s])==null?void 0:S.result)||"",[D,y,P]=(A=e==null?void 0:e.exportData())!=null?A:[],x=(I=(N=e==null?void 0:e.exportCustomData)==null?void 0:N.call(e))!=null?I:{},B=data.composeResultWithBasicImgInfo(m,y),w=data.composeResult(B,{step:u,stepList:g},{rect:D},x);return t.map((b,F)=>F===s?__spreadValues(__spreadProps(__spreadValues({},b),{result:w}),P):__spreadValues({},b))},annotationReducer=(e=__spreadValues({},initialState),t)=>{var s,g,u,S,A,N,I,m,D,y,P,x,B,w,b,F,G,V,M,q,k,H,z,K,W;switch(t.type){case Actions.ANNOTATION_ACTIONS.INIT_ALL_STATE:return __spreadValues(__spreadValues({},e),initialState);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:i,toolInstance:a,onSubmit:r,resultList:p}=e;if(!a||!n[o])return e;const d=((s=n[o])==null?void 0:s.result)||"",[,c,T]=(g=a==null?void 0:a.exportData())!=null?g:[],O=(S=(u=a==null?void 0:a.exportCustomData)==null?void 0:u.call(a))!=null?S:{},f=data.composeResultWithBasicImgInfo(d,c),C=data.composeResult(f,{step:l,stepList:i},{rect:p},O),L=e.imgList.map((v,E)=>{if(E===o){const U=AnnotationDataUtils.dataCorrection(C,d,l,i);return __spreadValues(__spreadProps(__spreadValues({},v),{result:U}),T)}return v});if(((A=t.payload)==null?void 0:A.submitType)===index$1.ESubmitType.SyncImgList)return __spreadProps(__spreadValues({},e),{imgList:L});r&&r([L[o]],(N=t.payload)==null?void 0:N.submitType,o,L);const R=calcStepProgress(L,l);return __spreadProps(__spreadValues({},e),{stepProgress:R,imgList:L})}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:i,basicResultList:a}=e;if(!i)return e;const[r]=(I=i==null?void 0:i.exportData())!=null?I:[];let p=r;if((a==null?void 0:a.length)>0){const d=(m=a[o])==null?void 0:m.id,c=r.map(T=>__spreadProps(__spreadValues({},T),{sourceID:d}));p=___default.default.cloneDeep(l).filter(T=>T.sourceID!==d),p.push(...c)}return __spreadProps(__spreadValues({},e),{resultList:p,imgList:n})}case Actions.ANNOTATION_ACTIONS.SET_BASIC_INDEX:{const{toolInstance:n,step:o,imgList:l,imgIndex:i,stepList:a,annotationEngine:r,resultList:p,basicResultList:d}=e;if(!n||!r)return e;const c=t.payload.basicIndex,T=(D=d[c])==null?void 0:D.id,O=index.jsonParser((y=l[i])==null?void 0:y.result),f=(p||[]).filter(U=>U.sourceID===T),C=getStepConfig(a,o),{dataSourceStep:L,tool:R}=C,v=getStepConfig(a,L);let E=[];return L&&R&&(E=(P=O[`step_${L}`])==null?void 0:P.result,(E==null?void 0:E.length)>0?(r==null||r.setBasicInfo(v.tool,E[c]),r==null||r.launchOperation()):(r==null||r.setBasicInfo(v.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:c})}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:i,stepList:a}=e;if(!l)return __spreadProps(__spreadValues({},e),{imgIndex:t.payload.nextIndex});const r=StepUtils.getCurrentStepInfo(o,a),{nextIndex:p,imgNode:d,nextBasicIndex:c,imgError:T}=t.payload,O=c!=null?c:0,f=index.jsonParser((x=n[p])==null?void 0:x.result),C=f[`step_${r.step}`],L=!C,R={rotate:(B=f.rotate)!=null?B:0,valid:(w=f.valid)!=null?w:!0};d&&T!==!0?i==null||i.setImgNode(d,R):l==null||l.setValid(R.valid);const v=getStepConfig(a,r.step),{dataSourceStep:E,tool:U}=v,$=getStepConfig(a,E),Y=E&&U,h=(F=(b=f[`step_${E}`])==null?void 0:b.result)!=null?F:[],j=AnnotationDataUtils.getInitialResultList(C==null?void 0:C.result,l,v,h,L);if(i==null||i.launchOperation(),Y&&((h==null?void 0:h.length)>0?i==null||i.setBasicInfo($.tool,h[O]):(i==null||i.setBasicInfo($.tool),i==null||i.forbidOperation(),es.message.info(lbUtils.i18n.t("NoDependency")))),r.tool!=="check"){const J=(V=(G=h[O])==null?void 0:G.id)!=null?V:"",X=Y?j.filter(Z=>lbAnnotation.CommonToolUtils.isSameSourceID(Z.sourceID,J)):j;(M=l==null?void 0:l.history)==null||M.initRecord(j,!0),l==null||l.setResult(X)}return __spreadProps(__spreadValues({},e),{imgIndex:p,basicIndex:O,basicResultList:h,resultList:j})}case Actions.ANNOTATION_ACTIONS.UPDATE_ANNOTATION_CONFIG:return __spreadProps(__spreadValues({},e),{config:(q=t.payload.config)!=null?q:"{}"});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:i}=o;return __spreadProps(__spreadValues({},e),{toolInstance:l,annotationEngine:i})}return __spreadValues({},e)}case Actions.ANNOTATION_ACTIONS.SET_TOOL:{const n=(k=t.payload)==null?void 0:k.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.SET_PREDICT_RESULT:return __spreadProps(__spreadValues({},e),{predictionResult:t.payload.result});case Actions.ANNOTATION_ACTIONS.SET_PREDICT_RESULT_VISIBLE:return __spreadProps(__spreadValues({},e),{predictionResultVisible:t.payload.visible});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.UPDATE_PRE_DATA_PROCESS:return __spreadProps(__spreadValues({},e),{preDataProcess:t.payload.preDataProcess});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,i=[...l];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||(H=n==null?void 0:n.updateRotate)==null||H.call(n),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:l,step:i}=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,i,(K=l[o].result)!=null?K:"");l[o]=__spreadProps(__spreadValues({},l[o]),{result:r});const d=index.jsonParser(r)[`step_${i}`],c=(d==null?void 0:d.result)||[];return n==null||n.setResult(c),n==null||n.history.pushHistory(c),(W=n==null?void 0:n.asyncData)==null||W.call(n,l[o]),__spreadProps(__spreadValues({},e),{imgList:[...l]})}case Actions.ANNOTATION_ACTIONS.SET_STEP:{const{stepList:n,annotationEngine:o}=e,{toStep:l}=t.payload;if(o){const i=getStepConfig(n,l);return o==null||o.setToolName(i.tool,i.config),__spreadProps(__spreadValues({},e),{step:l,toolInstance:o==null?void 0:o.toolInstance})}return __spreadProps(__spreadValues({},e),{step:l})}case Actions.ANNOTATION_ACTIONS.SET_LOADPCDFILE_LOADING:{const{loadPCDFileLoading:n}=t.payload;return __spreadProps(__spreadValues({},e),{loadPCDFileLoading:!!n})}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.SET_CHECK_MODE:{const{checkMode:n}=t.payload;return __spreadProps(__spreadValues({},e),{checkMode:!!n})}case Actions.ANNOTATION_ACTIONS.SET_HIGHLIGHT_ATTRIBUTE:{const{attribute:n}=t.payload;return __spreadProps(__spreadValues({},e),{highlightAttribute:n})}case Actions.ANNOTATION_ACTIONS.BATCH_UPDATE_TRACK_ID:{const{id:n,newID:o,rangeIndex:l,imgList:i}=t.payload,{imgIndex:a,onSubmit:r}=e,p=[],d=i.map((c,T)=>{if(lbAnnotation.MathUtils.isInRange(T,l)){const O=__spreadProps(__spreadValues({},c),{result:lbUtils.PointCloudUtils.batchUpdateTrackID({id:n,newID:o,result:c.result})});return p.push({imgIndex:T,newInfo:O}),O}return c});return r&&r([d[a]],index$1.ESubmitType.BatchUpdateTrackID,a,d,{updateImgList:p}),__spreadProps(__spreadValues({},e),{imgList:d})}case Actions.ANNOTATION_ACTIONS.BATCH_UPDATE_RESULT_BY_TRACK_ID:{const{id:n,newData:o,rangeIndex:l}=t.payload,{imgList:i,imgIndex:a,onSubmit:r}=e,p=[],d=i.map((c,T)=>{if(lbAnnotation.MathUtils.isInRange(T,l)){const O=__spreadProps(__spreadValues({},c),{result:lbUtils.PointCloudUtils.batchUpdateResultByTrackID({id:n,newData:o,result:c.result})});return p.push({imgIndex:T,newInfo:O}),O}return c});return r&&r([d[a]],index$1.ESubmitType.BatchUpdateTrackID,a,d,{updateImgList:p}),__spreadProps(__spreadValues({},e),{imgList:d})}case Actions.ANNOTATION_ACTIONS.BATCH_UPDATE_IMG_LIST_RESULT_BY_PREDICT_RESULT:{const{onSubmit:n,imgList:o,stepList:l,step:i,predictionResult:a}=e,r={};a.forEach(T=>{const{index:O}=T;r[O]=___default.default.pick(T,["center","width","height","depth","rotation","id","attribute","valid","trackID"])});const p=`step_${i}`,d=[],c=o.map((T,O)=>{if(r[O]){const f=T.result==="{}"?index.jsonParser(data.composeResult("",{step:i,stepList:l},{rect:[]},{})):index.jsonParser(T.result);f[p].result.push(r[O]);const C=__spreadProps(__spreadValues({},T),{result:JSON.stringify(f)});return d.push({imgIndex:O,newInfo:C}),C}return T});return n==null||n(c,index$1.ESubmitType.BatchUpdateImgList,-1,c,{updateImgList:d}),__spreadProps(__spreadValues({},e),{imgList:c})}default:return e}};exports.LoadFileAndFileData=LoadFileAndFileData,exports.annotationReducer=annotationReducer,exports.composeResultByToolInstance=composeResultByToolInstance,exports.getStepConfig=getStepConfig,exports.getTotalPage=getTotalPage;
@@ -1,5 +1,5 @@
1
1
  import { IAnswerList, IAnswerSort, ILLMBoxResult, ILLMToolConfig, IWaitAnswerSort, IInputList, ISelectedTags } from '../types';
2
- export declare const getCurrentResultFromResultList: (result: string) => any;
2
+ export declare const getCurrentResultFromResultList: (result: string, step?: number) => any;
3
3
  export declare const formatSort: (sortList: any) => any;
4
4
  export declare const getTagResult: (inputList: IInputList[], result?: ISelectedTags) => {};
5
5
  export declare const getWaitSortList: (answerList: IAnswerList[], result?: ILLMBoxResult) => {
@@ -24,5 +24,5 @@ interface IProps extends IA2MapStateProps {
24
24
  checkMode?: boolean;
25
25
  measureVisible?: boolean;
26
26
  }
27
- declare const _default: import("react-redux").ConnectedComponent<({ currentData, config, thumbnailWidth, isEnlargeTopView, highlightAttribute, loadPCDFileLoading, checkMode, measureVisible }: IProps) => React.JSX.Element | null, import("react-redux").Omit<IProps, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "stepInfo" | "currentData" | "configString">>;
27
+ declare const _default: import("react-redux").ConnectedComponent<({ currentData, config, thumbnailWidth, isEnlargeTopView, highlightAttribute, loadPCDFileLoading, checkMode, measureVisible, }: IProps) => React.JSX.Element | null, import("react-redux").Omit<IProps, "imgIndex" | "imgList" | "config" | "highlightAttribute" | "loadPCDFileLoading" | "stepInfo" | "currentData" | "configString">>;
28
28
  export default _default;
@@ -1,4 +1,4 @@
1
- import { IPointCloudBox, IPointCloudBoxList, IPolygonData, IPointCloudSphereList, IPointCloudSphere, ILine, EPointCloudPattern, IPointCloudSegmentation, ICalib, ISize } from '@labelbee/lb-utils';
1
+ import { IPointCloudBox, IPointCloudBoxList, IPolygonData, IPointCloudSphereList, IPointCloudSphere, ILine, EPointCloudPattern, IPointCloudSegmentation, ICalib, ISize, IPointCloudBoxRect, IPointCloud2DRectOperationViewRect } from '@labelbee/lb-utils';
2
2
  import React from 'react';
3
3
  import { PointCloud, PointCloudAnnotation, ActionsHistory, EToolName } from '@labelbee/lb-annotation';
4
4
  interface IPointCloudContextInstances {
@@ -26,6 +26,7 @@ interface IHighlight2DData {
26
26
  }
27
27
  export interface IPointCloudContext extends IPointCloudContextInstances, IPointCloudStatus, IPointCloudSegment {
28
28
  pointCloudBoxList: IPointCloudBoxList;
29
+ rectList: IPointCloudBoxRect[];
29
30
  pointCloudSphereList: IPointCloudSphereList;
30
31
  displayPointCloudList: IPointCloudBoxList;
31
32
  displaySphereList: IPointCloudSphereList;
@@ -47,6 +48,10 @@ export interface IPointCloudContext extends IPointCloudContextInstances, IPointC
47
48
  addPointCloudSphere: (sphereParams: IPointCloudSphere) => IPointCloudSphere[];
48
49
  polygonList: IPolygonData[];
49
50
  setPolygonList: (polygonList: IPolygonData[]) => void;
51
+ setRectList: (rectList: IPointCloudBoxRect[]) => void;
52
+ addRectIn2DView: (rect: IPointCloud2DRectOperationViewRect) => void;
53
+ removeRectIn2DView: (rects: IPointCloud2DRectOperationViewRect[]) => void;
54
+ updateRectIn2DView: (rect: IPointCloud2DRectOperationViewRect) => void;
50
55
  lineList: ILine[];
51
56
  setLineList: (lineList: ILine[]) => void;
52
57
  zoom: number;
@@ -1,3 +1,4 @@
1
+ import { IStepInfo } from '@/types/step';
1
2
  /**
2
3
  * 解析结果,将图片信息注入到结果
3
4
  * @param result
@@ -13,3 +14,4 @@ export declare const composeResult: (result: string, pos: {
13
14
  rect: any[];
14
15
  basicRectID?: string;
15
16
  }, customObject: Object) => string;
17
+ export declare const getAnnotationStepByStepList: (stepList: IStepInfo[], step: number) => number;
@@ -1,4 +1,4 @@
1
- import { ICoordinate, IPointCloudBox, ISize } from '@labelbee/lb-utils';
1
+ import { IBasicRect, ICoordinate, IPointCloudBox, ISize } from '@labelbee/lb-utils';
2
2
  import { IMappingImg } from '@/types/data';
3
3
  export declare const jsonParser: (content: any, defaultValue?: any) => any;
4
4
  export declare const getNewNode: <T>(newNode: T, oldNode: T) => T;
@@ -11,6 +11,9 @@ export declare const getBoundingRect: (points: ICoordinate[]) => {
11
11
  width: number;
12
12
  height: number;
13
13
  };
14
+ export declare const isBoundingRectInImage: (boundingRect: Omit<IBasicRect, "id">, path: string, imageSizes: {
15
+ [key: string]: ISize;
16
+ }) => boolean;
14
17
  interface IGetRectPointCloudBoxParams {
15
18
  pointCloudBox: IPointCloudBox;
16
19
  mappingData: IMappingImg;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index=require("./index.js"),StepUtils=require("./StepUtils.js"),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(r,e,t)=>e in r?__defProp(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,__spreadValues=(r,e)=>{for(var t in e||(e={}))__hasOwnProp.call(e,t)&&__defNormalProp(r,t,e[t]);if(__getOwnPropSymbols)for(var t of __getOwnPropSymbols(e))__propIsEnum.call(e,t)&&__defNormalProp(r,t,e[t]);return r},__spreadProps=(r,e)=>__defProps(r,__getOwnPropDescs(e));const composeResultWithBasicImgInfo=(r,e)=>JSON.stringify(__spreadValues(__spreadValues({},index.jsonParser(r)),e)),composeResult=(r,e,t,c)=>{const{step:a,stepList:l}=e,{rect:n,basicRectID:u}=t;try{const s=index.jsonParser(r),f=StepUtils.getCurrentStepInfo(a,l),{dataSourceStep:_}=f,i=`step_${f.step}`;if(s[i]){const o=s[i];return Object.assign(o,c),o.result?(JSON.stringify(o.result)===JSON.stringify(n)||(u?o.result=[...o.result.filter(p=>!(p.sourceID&&p.sourceID===u)),...n.filter(p=>p.sourceID&&p.sourceID===u)]:o.result=n),JSON.stringify(s)):JSON.stringify(__spreadProps(__spreadValues({},s),{[i]:__spreadProps(__spreadValues(__spreadValues({},s[i]),c),{result:n})}))}return JSON.stringify(__spreadProps(__spreadValues({},s),{[i]:__spreadProps(__spreadValues({dataSourceStep:_},c),{toolName:l[a-1].tool,result:n})}))}catch(s){return r}};exports.composeResult=composeResult,exports.composeResultWithBasicImgInfo=composeResultWithBasicImgInfo;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index$1=require("../constant/index.js"),index=require("./index.js"),StepUtils=require("./StepUtils.js"),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(t,e,r)=>e in t?__defProp(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,__spreadValues=(t,e)=>{for(var r in e||(e={}))__hasOwnProp.call(e,r)&&__defNormalProp(t,r,e[r]);if(__getOwnPropSymbols)for(var r of __getOwnPropSymbols(e))__propIsEnum.call(e,r)&&__defNormalProp(t,r,e[r]);return t},__spreadProps=(t,e)=>__defProps(t,__getOwnPropDescs(e));const composeResultWithBasicImgInfo=(t,e)=>JSON.stringify(__spreadValues(__spreadValues({},index.jsonParser(t)),e)),composeResult=(t,e,r,o)=>{const{step:i,stepList:l}=e,{rect:p,basicRectID:c}=r;try{const s=index.jsonParser(t),f=StepUtils.getCurrentStepInfo(i,l),{dataSourceStep:S}=f,a=`step_${f.step}`;if(s[a]){const n=s[a];return Object.assign(n,o),n.result?(JSON.stringify(n.result)===JSON.stringify(p)||(c?n.result=[...n.result.filter(u=>!(u.sourceID&&u.sourceID===c)),...p.filter(u=>u.sourceID&&u.sourceID===c)]:n.result=p),JSON.stringify(s)):JSON.stringify(__spreadProps(__spreadValues({},s),{[a]:__spreadProps(__spreadValues(__spreadValues({},s[a]),o),{result:p})}))}return JSON.stringify(__spreadProps(__spreadValues({},s),{[a]:__spreadProps(__spreadValues({dataSourceStep:S},o),{toolName:l[i-1].tool,result:p})}))}catch(s){return t}},getAnnotationStepByStepList=(t,e)=>{var r;const o=(r=t.find(i=>index$1.EStepType.QUALITY_INSPECTION===i.type&&i.step===e))==null?void 0:r.dataSourceStep;return o||e};exports.composeResult=composeResult,exports.composeResultWithBasicImgInfo=composeResultWithBasicImgInfo,exports.getAnnotationStepByStepList=getAnnotationStepByStepList;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _=require("lodash"),lbAnnotation=require("@labelbee/lb-annotation");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,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 jsonParser=(e,t={})=>{try{return typeof e=="string"?JSON.parse(e):___default.default.isObject(e)?e:t}catch(r){return t}},classnames=e=>{if(Array.isArray(e))return e.filter(t=>t).join(" ");if(___default.default.isObject(e)){const t=[];return Object.keys(e).forEach(r=>{e[r]&&t.push(r)}),t.join(" ")}return""},getBoundingRect=e=>{let t=Infinity,r=Infinity,n=-Infinity,o=-Infinity;for(const i of e)t=Math.min(t,i.x),r=Math.min(r,i.y),n=Math.max(n,i.x),o=Math.max(o,i.y);return{x:t,y:r,width:n-t,height:o-r}},isBoundingRectInImage=(()=>{const e=(t,r)=>{const n=Math.max(t.x,r.x),o=Math.max(t.y,r.y),i=Math.min(t.x+t.width,r.x+r.width),s=Math.min(t.y+t.height,r.y+r.height),a=i-n,u=s-o;return a>=0&&u>=0?{x:n,y:o,width:a,height:u}:null};return(t,r,n)=>{if(n[r]){const o=n[r].width,i=n[r].height;return e(t,{x:0,y:0,width:o,height:i})!==null}return!1}})(),getRectPointCloudBox=e=>{var t;const{pointCloudBox:r,mappingData:n,imageSizes:o}=e,{transferViewData:i}=(t=lbAnnotation.pointCloudLidar2image(r,n.calib))!=null?t:{};if(!i)return;const s=i.reduce((c,p)=>p.type==="line"?[...c,...p.pointList]:c,[]),a=__spreadProps(__spreadValues({},getBoundingRect(s)),{imageName:n.path});if(isBoundingRectInImage(a,n.path,o))return a};exports.classnames=classnames,exports.getBoundingRect=getBoundingRect,exports.getRectPointCloudBox=getRectPointCloudBox,exports.jsonParser=jsonParser;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var _=require("lodash"),lbAnnotation=require("@labelbee/lb-annotation");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,n)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,__spreadValues=(e,t)=>{for(var n in t||(t={}))__hasOwnProp.call(t,n)&&__defNormalProp(e,n,t[n]);if(__getOwnPropSymbols)for(var n of __getOwnPropSymbols(t))__propIsEnum.call(t,n)&&__defNormalProp(e,n,t[n]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t));const jsonParser=(e,t={})=>{try{return typeof e=="string"?JSON.parse(e):___default.default.isObject(e)?e:t}catch(n){return t}},classnames=e=>{if(Array.isArray(e))return e.filter(t=>t).join(" ");if(___default.default.isObject(e)){const t=[];return Object.keys(e).forEach(n=>{e[n]&&t.push(n)}),t.join(" ")}return""},getBoundingRect=e=>{let t=Infinity,n=Infinity,r=-Infinity,o=-Infinity;for(const i of e)t=Math.min(t,i.x),n=Math.min(n,i.y),r=Math.max(r,i.x),o=Math.max(o,i.y);return{x:t,y:n,width:r-t,height:o-n}},isBoundingRectInImage=(()=>{const e=(t,n)=>{const r=Math.max(t.x,n.x),o=Math.max(t.y,n.y),i=Math.min(t.x+t.width,n.x+n.width),s=Math.min(t.y+t.height,n.y+n.height),a=i-r,u=s-o;return a>=0&&u>=0?{x:r,y:o,width:a,height:u}:null};return(t,n,r)=>{if(r[n]){const o=r[n].width,i=r[n].height;return e(t,{x:0,y:0,width:o,height:i})!==null}return!1}})(),getRectPointCloudBox=e=>{var t;const{pointCloudBox:n,mappingData:r,imageSizes:o}=e,{transferViewData:i}=(t=lbAnnotation.pointCloudLidar2image(n,r.calib))!=null?t:{};if(!i)return;const s=i.reduce((c,p)=>p.type==="line"?[...c,...p.pointList]:c,[]),a=__spreadProps(__spreadValues({},getBoundingRect(s)),{imageName:r.path});if(isBoundingRectInImage(a,r.path,o))return a};exports.classnames=classnames,exports.getBoundingRect=getBoundingRect,exports.getRectPointCloudBox=getRectPointCloudBox,exports.isBoundingRectInImage=isBoundingRectInImage,exports.jsonParser=jsonParser;
package/es/App.js CHANGED
@@ -1 +1 @@
1
- import E from"./views/MainView/index.js";import{i18n as r}from"@labelbee/lb-utils";import I,{useState as F,useEffect as O}from"react";import{connect as N}from"react-redux";import{store as n}from"./index.js";import{LabelBeeContext as M}from"./store/ctx.js";import{ANNOTATION_ACTIONS as U}from"./store/Actions.js";import{InitTaskData as z,InitAnnotationState as R,UpdateInjectFunc as V,loadImgList as B}from"./store/annotation/actionCreators.js";import{LoadFileAndFileData as j}from"./store/annotation/reducer.js";import{ConfigProvider as k}from"antd/es";import G from"antd/es/locale/zh_CN";import $ from"antd/es/locale/en_US";var q=Object.defineProperty,H=Object.defineProperties,J=Object.getOwnPropertyDescriptors,C=Object.getOwnPropertySymbols,K=Object.prototype.hasOwnProperty,Q=Object.prototype.propertyIsEnumerable,w=(e,t,a)=>t in e?q(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,W=(e,t)=>{for(var a in t||(t={}))K.call(t,a)&&w(e,a,t[a]);if(C)for(var a of C(t))Q.call(t,a)&&w(e,a,t[a]);return e},X=(e,t)=>H(e,J(t));const Y=e=>{const[t,a]=F(0),{imgList:s,step:A=1,stepList:l,onSubmit:c,onSave:p,onPageChange:d,onStepChange:f,initialIndex:g=0,toolInstance:S,setToolInstance:L,getFileData:m,pageSize:u=10,loadFileList:o,defaultLang:_="cn",skipBeforePageTurning:y,beforeRotate:h,checkMode:b=!1,intelligentFit:T=!0,highlightAttribute:P="",preDataProcess:v}=e;O(()=>{n.dispatch(z({onSubmit:c,stepList:l,step:A,getFileData:m,pageSize:u,loadFileList:o,onSave:p,onPageChange:d,onStepChange:f,skipBeforePageTurning:y,beforeRotate:h,checkMode:b,highlightAttribute:P,preDataProcess:v})),x(),r.changeLanguage(_);const i=()=>{a(D=>D+1)};return r.on("languageChanged",i),()=>{r.off("languageChanged",i),R(n.dispatch)}},[]),O(()=>{n.dispatch(V({onSubmit:c,stepList:l,getFileData:m,pageSize:u,loadFileList:o,onSave:p,onPageChange:d,onStepChange:f,beforeRotate:h,highlightAttribute:P,preDataProcess:v})),r.changeLanguage(_)},[c,l,m,u,o,p,d,f,_,h,P,v]),O(()=>{L==null||L(S)},[S]);const x=()=>{o?B(n.dispatch,n.getState,g,!0).then(i=>{i&&n.dispatch(j(g))}):s&&s.length>0&&(n.dispatch({type:U.UPDATE_IMG_LIST,payload:{imgList:s}}),n.dispatch(j(g)))};return I.createElement("div",null,I.createElement(k,{locale:r.language==="en"?$:G},I.createElement(E,X(W({},e),{intelligentFit:T,checkMode:b}))))},Z=e=>({toolInstance:e.annotation.toolInstance});var ee=N(Z,null,null,{context:M})(Y);export{ee as default};
1
+ import F from"./views/MainView/index.js";import{i18n as n}from"@labelbee/lb-utils";import O,{useState as N,useEffect as s}from"react";import{connect as M}from"react-redux";import{store as o}from"./index.js";import{LabelBeeContext as U}from"./store/ctx.js";import{ANNOTATION_ACTIONS as y}from"./store/Actions.js";import{InitTaskData as z,InitAnnotationState as R,UpdateInjectFunc as V,loadImgList as B}from"./store/annotation/actionCreators.js";import{LoadFileAndFileData as C}from"./store/annotation/reducer.js";import{ConfigProvider as k}from"antd/es";import G from"antd/es/locale/zh_CN";import $ from"antd/es/locale/en_US";var q=Object.defineProperty,H=Object.defineProperties,J=Object.getOwnPropertyDescriptors,T=Object.getOwnPropertySymbols,K=Object.prototype.hasOwnProperty,Q=Object.prototype.propertyIsEnumerable,w=(e,t,a)=>t in e?q(e,t,{enumerable:!0,configurable:!0,writable:!0,value:a}):e[t]=a,W=(e,t)=>{for(var a in t||(t={}))K.call(t,a)&&w(e,a,t[a]);if(T)for(var a of T(t))Q.call(t,a)&&w(e,a,t[a]);return e},X=(e,t)=>H(e,J(t));const Y=e=>{const[t,a]=N(0),{imgList:l,step:p=1,stepList:c,onSubmit:d,onSave:f,onPageChange:g,onStepChange:m,initialIndex:u=0,toolInstance:L,setToolInstance:b,getFileData:_,pageSize:h=10,loadFileList:r,defaultLang:P="cn",skipBeforePageTurning:A,beforeRotate:S,checkMode:j=!1,intelligentFit:E=!0,highlightAttribute:v="",preDataProcess:I}=e;s(()=>{o.dispatch(z({onSubmit:d,stepList:c,step:p,getFileData:_,pageSize:h,loadFileList:r,onSave:f,onPageChange:g,onStepChange:m,skipBeforePageTurning:A,beforeRotate:S,checkMode:j,highlightAttribute:v,preDataProcess:I})),x(),n.changeLanguage(P);const i=()=>{a(D=>D+1)};return n.on("languageChanged",i),()=>{n.off("languageChanged",i),R(o.dispatch)}},[]),s(()=>{o.dispatch(V({onSubmit:d,stepList:c,getFileData:_,pageSize:h,loadFileList:r,onSave:f,onPageChange:g,onStepChange:m,beforeRotate:S,highlightAttribute:v,preDataProcess:I})),n.changeLanguage(P)},[d,c,_,h,r,f,g,m,P,S,v,I]),s(()=>{b==null||b(L)},[L]),s(()=>{o.dispatch({type:y.SET_STEP,payload:{toStep:p}})},[p]);const x=()=>{r?B(o.dispatch,o.getState,u,!0).then(i=>{i&&o.dispatch(C(u))}):l&&l.length>0&&(o.dispatch({type:y.UPDATE_IMG_LIST,payload:{imgList:l}}),o.dispatch(C(u)))};return O.createElement("div",null,O.createElement(k,{locale:n.language==="en"?$:G},O.createElement(F,X(W({},e),{intelligentFit:E,checkMode:j}))))},Z=e=>({toolInstance:e.annotation.toolInstance});var ee=M(Z,null,null,{context:U})(Y);export{ee as default};
@@ -1 +1 @@
1
- import a,{useContext as N,useState as f,useEffect as u}from"react";import{connect as $}from"react-redux";import{LabelBeeContext as U,LLMContext as B}from"../../store/ctx.js";import{message as K}from"antd";import{ELLMDataType as v,prefix as W}from"../../constant/index.js";import{Layout as z}from"antd/es";import G from"./questionView/index.js";import{useTranslation as H}from"react-i18next";import J from"../../views/MainView/annotationTips/index.js";import{getCurrentResultFromResultList as O}from"./utils/data.js";import{getStepConfig as X}from"../../store/annotation/reducer.js";import{jsonParser as Y}from"../../utils/index.js";import Z from"../messageMaskLayer/index.js";const C=`${W}-LLMView`,ee=L=>{const{annotation:x,checkMode:M=!0,tips:q,showTips:A,drawLayerSlot:T}=L,{imgIndex:n,imgList:l,stepList:g,step:w,toolInstance:s}=x,{hoverKey:E,modelAPIResponse:R,setModelAPIResponse:I,newAnswerList:d}=N(B),[P,V]=f([]),[S,h]=f(""),[t,k]=f(),{t:y}=H(),[,Q]=f(0);return u(()=>{let e;if(!M)return e=setInterval(()=>{K.info(y("EfficientListening"))},1e3*60),()=>{e&&clearInterval(e)}},[]),u(()=>{if(s)return s.on("validUpdated",()=>{Q(e=>e+1)}),()=>{s.unbindAll("validUpdated")}},[s]),u(()=>{var e,o,i,r,_,j;if(!l[n])return;const b=((e=t==null?void 0:t.dataType)==null?void 0:e.prompt)===v.Picture,D=((o=t==null?void 0:t.dataType)==null?void 0:o.response)===v.Picture,c=(i=l[n])==null?void 0:i.questionList,m=(r=l[n])==null?void 0:r.llmFile,F=b?m==null?void 0:m.question:c==null?void 0:c.question;h(F);let p=(c==null?void 0:c.answerList)||[];D&&(p=(m==null?void 0:m.answerList)||[]),((_=t==null?void 0:t.dataType)==null?void 0:_.response)===v.None&&(p=[]),((j=t==null?void 0:t.dataType)==null?void 0:j.response)===v.Text&&(d==null?void 0:d.length)>0&&(p=d),V(p)},[n,d,t]),u(()=>{var e;if(!l[n])return;const o=(e=l[n])!=null?e:{},i=O(o==null?void 0:o.result),r=(i==null?void 0:i.length)>0?i[0]:i;I((r==null?void 0:r.modelAPIResponse)||[])},[n]),u(()=>{var e;if(g&&w){const o=(e=X(g,w))==null?void 0:e.config;k(Y(o))}},[g,w]),a.createElement(z,{className:C},!(s==null?void 0:s.valid)&&a.createElement(Z,{message:y("InvalidQuestionAndSkip")}),T==null?void 0:T({}),a.createElement("div",{className:`${C}-question`},A===!0&&a.createElement(J,{tips:q}),a.createElement(G,{hoverKey:E,question:S,answerList:P,modelAPIResponse:R,setModelAPIResponse:I,checkMode:M,annotation:x,LLMConfig:t})))},te=L=>({annotation:L.annotation});var ne=$(te,null,null,{context:U})(ee);export{ne as default};
1
+ import a,{useContext as N,useState as v,useEffect as u}from"react";import{connect as $}from"react-redux";import{LabelBeeContext as U,LLMContext as B}from"../../store/ctx.js";import{message as K}from"antd";import{ELLMDataType as L,prefix as W}from"../../constant/index.js";import{Layout as z}from"antd/es";import G from"./questionView/index.js";import{useTranslation as H}from"react-i18next";import J from"../../views/MainView/annotationTips/index.js";import{getCurrentResultFromResultList as O}from"./utils/data.js";import{getStepConfig as X}from"../../store/annotation/reducer.js";import{jsonParser as Y}from"../../utils/index.js";import Z from"../messageMaskLayer/index.js";const C=`${W}-LLMView`,ee=g=>{const{annotation:x,checkMode:M=!0,tips:q,showTips:A,drawLayerSlot:T}=g,{imgIndex:n,imgList:l,stepList:w,step:d,toolInstance:s}=x,{hoverKey:E,modelAPIResponse:R,setModelAPIResponse:I,newAnswerList:c}=N(B),[P,V]=v([]),[S,h]=v(""),[t,k]=v(),{t:y}=H(),[,Q]=v(0);return u(()=>{let e;if(!M)return e=setInterval(()=>{K.info(y("EfficientListening"))},1e3*60),()=>{e&&clearInterval(e)}},[]),u(()=>{if(s)return s.on("validUpdated",()=>{Q(e=>e+1)}),()=>{s.unbindAll("validUpdated")}},[s]),u(()=>{var e,o,i,r,_,j;if(!l[n])return;const b=((e=t==null?void 0:t.dataType)==null?void 0:e.prompt)===L.Picture,D=((o=t==null?void 0:t.dataType)==null?void 0:o.response)===L.Picture,m=(i=l[n])==null?void 0:i.questionList,p=(r=l[n])==null?void 0:r.llmFile,F=b?p==null?void 0:p.question:m==null?void 0:m.question;h(F);let f=(m==null?void 0:m.answerList)||[];D&&(f=(p==null?void 0:p.answerList)||[]),((_=t==null?void 0:t.dataType)==null?void 0:_.response)===L.None&&(f=[]),((j=t==null?void 0:t.dataType)==null?void 0:j.response)===L.Text&&(c==null?void 0:c.length)>0&&(f=c),V(f)},[n,c,t]),u(()=>{var e;if(!l[n])return;const o=(e=l[n])!=null?e:{},i=O(o==null?void 0:o.result,d),r=(i==null?void 0:i.length)>0?i[0]:i;I((r==null?void 0:r.modelAPIResponse)||[])},[n]),u(()=>{var e;if(w&&d){const o=(e=X(w,d))==null?void 0:e.config;k(Y(o))}},[w,d]),a.createElement(z,{className:C},!(s==null?void 0:s.valid)&&a.createElement(Z,{message:y("InvalidQuestionAndSkip")}),T==null?void 0:T({}),a.createElement("div",{className:`${C}-question`},A===!0&&a.createElement(J,{tips:q}),a.createElement(G,{hoverKey:E,question:S,answerList:P,modelAPIResponse:R,setModelAPIResponse:I,checkMode:M,annotation:x,LLMConfig:t})))},te=g=>({annotation:g.annotation});var ne=$(te,null,null,{context:U})(ee);export{ne as default};
@@ -1,2 +1,2 @@
1
- import e,{useEffect as C}from"react";import{Form as m,Popover as S,Input as j,message as L}from"antd";import{useTranslation as N}from"react-i18next";import{InfoCircleOutlined as A}from"@ant-design/icons";import O from"../../../../markdownView/index.js";import R from"../../../../latexEditor/index.js";import d from"./index.module.scss.js";const k=h=>{const{disabeledAll:x,newAnswer:p,textEditObject:w,updateValue:f,answerIndex:g}=h,{max:a,min:u,isLaText:v}=w,{TextArea:b}=j,[l]=m.useForm(),{t:o}=N(),y=o("LeastCharacterError",{num:u});C(()=>{l.setFieldsValue({value:p}),x||l.validateFields()},[p]);const V=n=>{var t,c;const I=`inputTextarea_${g}`,r=document.getElementById(I),s=r.value||"",E=(t=r==null?void 0:r.selectionStart)!=null?t:s.length,T=(c=r.selectionEnd)!=null?c:s.length,_=s.substring(0,E),F=s.substring(T,s.length),i=_+n+F;if(a&&(i==null?void 0:i.length)>a){L.error(o("MaximumCharacterError",{num:a}));return}r.value=i,l.setFieldsValue({value:i}),f(i),r.selectionStart=E+n.length,r.selectionEnd=E+n.length,r.focus()};return e.createElement(m,{form:l,onValuesChange:(n,t)=>{const c=t.value;f(c)},className:d.form},e.createElement(m.Item,{name:"title",style:{marginBottom:"8px"},label:e.createElement(e.Fragment,null,o("AnswerTextEdit"),e.createElement(S,{placement:"bottom",content:o("ShowEditingResultDifferencesInTextModeOnly")},e.createElement(A,{style:{margin:"0px 4px",cursor:"pointer"}}))),colon:!1,required:!!u}),v&&e.createElement(R,{onSelectLatex:V,disabled:x}),e.createElement(m.Item,{name:"value",style:{marginBottom:24},rules:[{validator:(n,t="")=>u&&(t==null?void 0:t.length)<Number(u)?Promise.reject(y):Promise.resolve()}]},e.createElement(b,{maxLength:a,autoSize:{minRows:4,maxRows:10},allowClear:!0,disabled:x,showCount:!!a,style:{width:"100%"},id:`inputTextarea_${g}`})),v&&e.createElement(m.Item,{shouldUpdate:!0,noStyle:!0},()=>{const n=l.getFieldValue("value")||"",t=n.replace(/\n/g,`
2
- `);return e.createElement("div",{className:d.outputDisplay},e.createElement("div",{className:d.title},o("OutputDisplay")),e.createElement("div",{className:d.content},n?e.createElement(O,{value:t}):""))}))};export{k as default};
1
+ import e,{useEffect as N}from"react";import{Form as m,Popover as S,Input as j,message as L}from"antd";import{useTranslation as A}from"react-i18next";import{InfoCircleOutlined as O}from"@ant-design/icons";import R from"../../../../markdownView/index.js";import k from"../../../../latexEditor/index.js";import c from"./index.module.scss.js";const B=w=>{const{disabeledAll:E,newAnswer:x,textEditObject:b,updateValue:f,answerIndex:g}=w,{max:a,min:u,isLaText:v,tip:h}=b,{TextArea:y}=j,[l]=m.useForm(),{t:o}=A(),V=o("LeastCharacterError",{num:u});N(()=>{l.setFieldsValue({value:x}),E||l.validateFields()},[x]);const I=n=>{var t,d;const T=`inputTextarea_${g}`,r=document.getElementById(T),s=r.value||"",p=(t=r==null?void 0:r.selectionStart)!=null?t:s.length,_=(d=r.selectionEnd)!=null?d:s.length,F=s.substring(0,p),C=s.substring(_,s.length),i=F+n+C;if(a&&(i==null?void 0:i.length)>a){L.error(o("MaximumCharacterError",{num:a}));return}r.value=i,l.setFieldsValue({value:i}),f(i),r.selectionStart=p+n.length,r.selectionEnd=p+n.length,r.focus()};return e.createElement(m,{form:l,onValuesChange:(n,t)=>{const d=t.value;f(d)},className:c.form},e.createElement(m.Item,{name:"title",style:{marginBottom:0},label:e.createElement(e.Fragment,null,o("AnswerTextEdit"),e.createElement(S,{placement:"bottom",content:o("ShowEditingResultDifferencesInTextModeOnly")},e.createElement(O,{style:{margin:"0px 4px",cursor:"pointer"}}))),colon:!1,required:!!u}),e.createElement("div",{className:c.tip},h!=null?h:""),v&&e.createElement(k,{onSelectLatex:I,disabled:E}),e.createElement(m.Item,{name:"value",style:{marginBottom:24},rules:[{validator:(n,t="")=>u&&(t==null?void 0:t.length)<Number(u)?Promise.reject(V):Promise.resolve()}]},e.createElement(y,{maxLength:a,autoSize:{minRows:4,maxRows:10},allowClear:!0,disabled:E,showCount:!!a,style:{width:"100%"},id:`inputTextarea_${g}`})),v&&e.createElement(m.Item,{shouldUpdate:!0,noStyle:!0},()=>{const n=l.getFieldValue("value")||"",t=n.replace(/\n/g,`
2
+ `);return e.createElement("div",{className:c.outputDisplay},e.createElement("div",{className:c.title},o("OutputDisplay")),e.createElement("div",{className:c.content},n?e.createElement(R,{value:t}):""))}))};export{B as default};
@@ -1 +1 @@
1
- var e={form:"index-module_form__IypXc",outputDisplay:"index-module_outputDisplay__5dS48",title:"index-module_title__vhMCp",content:"index-module_content__Iml6l"};export{e as default};
1
+ var e={form:"index-module_form__IypXc",outputDisplay:"index-module_outputDisplay__5dS48",title:"index-module_title__vhMCp",content:"index-module_content__Iml6l",tip:"index-module_tip__NFru6"};export{e as default};
@@ -1 +1 @@
1
- import r,{useContext as K,useState as R,useEffect as E}from"react";import{prefix as at}from"../../../constant/index.js";import{Empty as lt,Button as ct}from"antd";import dt from"./components/answerSort/index.js";import{connect as ut}from"react-redux";import{isBoolean as mt,isString as pt,isNumber as ft,isObject as vt}from"lodash";import gt from"./components/answerList/index.js";import{LabelBeeContext as Lt,LLMContext as q}from"../../../store/ctx.js";import{jsonParser as z}from"../../../utils/index.js";import{getStepConfig as xt}from"../../../store/annotation/reducer.js";import{useCustomToolInstance as wt}from"../../../hooks/annotation.js";import{PageForward as h}from"../../../store/annotation/actionCreators.js";import{cKeyCode as bt,EToolName as St}from"@labelbee/lb-annotation";import{useTranslation as _t}from"react-i18next";import{getCurrentResultFromResultList as yt,getRenderDataByResult as Et,formatSort as ht}from"../utils/data.js";import Ct from"../../../assets/annotation/LLMTool/empty.svg.js";import jt from"./components/textInputBox/index.js";import Tt from"../../tagList/components/overall/index.js";var Pt=Object.defineProperty,It=Object.defineProperties,Ot=Object.getOwnPropertyDescriptors,F=Object.getOwnPropertySymbols,At=Object.prototype.hasOwnProperty,Rt=Object.prototype.propertyIsEnumerable,W=(s,i,a)=>i in s?Pt(s,i,{enumerable:!0,configurable:!0,writable:!0,value:a}):s[i]=a,u=(s,i)=>{for(var a in i||(i={}))At.call(i,a)&&W(s,a,i[a]);if(F)for(var a of F(i))Rt.call(i,a)&&W(s,a,i[a]);return s},p=(s,i)=>It(s,Ot(i));const Nt=bt.default,C=`${at}-sidebar`,Dt=s=>{var i,a;const{annotation:G,dispatch:w,checkMode:J}=s,{imgIndex:b,imgList:j,stepList:T,step:P,skipBeforePageTurning:S}=G,{modelAPIResponse:N,setModelAPIResponse:Q}=K(q),{t:_}=_t(),m=(i=j[b])!=null?i:{},U=z(m==null?void 0:m.result),{toolInstanceRef:c}=wt({basicInfo:U}),[f,H]=R(),[,X]=R(0),{setNewAnswerList:Y}=K(q),[o,L]=R({}),x=!c.current.valid||J;E(()=>{var t;if(T&&P){const e=(t=xt(T,P))==null?void 0:t.config;H(z(e))}},[P,JSON.stringify(T)]),E(()=>{!m||b===-1||(c.current.setValid=D,c.current.clearResult=Z,M())},[b,f]);const Z=()=>{M(m==null?void 0:m.questionList)},D=t=>{var e;mt(t)&&(c.current.valid=t,(e=c.current)==null||e.emit("validUpdated"),X(n=>n+1))},M=t=>{var e;const n=yt(m==null?void 0:m.result);let l=m==null?void 0:m.questionList;(n==null?void 0:n.answerList)&&c.current.valid&&(l=n),t&&(l=t,n.sort=[],n.valid=(e=c.current.valid)!=null?e:!0),D(n.valid);const v=Et(f,l);L(u({},v)),Q([])};E(()=>{const{newSort:t,answerList:e,textAttribute:n,tagList:l}=o,v=ht(t||[]),d={answerList:e,sort:v,tagList:l,textAttribute:n,id:m==null?void 0:m.id,modelAPIResponse:N,valid:c.current.valid};c.current.exportData=()=>[[d],{valid:c.current.valid}],c.current.currentPageResult=p(u({},d),{toolName:St.LLM}),Y(e||[])},[o,N,c.current.valid]),E(()=>(window.addEventListener("keydown",B),()=>{window.removeEventListener("keydown",B)}),[]);const B=t=>{if(t.ctrlKey&&t.keyCode===Nt.Enter){if(S){S(()=>w(h()));return}w(h())}},tt=({order:t,value:e,key:n})=>{const{answerList:l}=o,v=l==null?void 0:l.map(d=>{var y;if((d==null?void 0:d.order)===t){if(n==="textEdit"&&pt(e))return p(u({},d),{newAnswer:e});if(ft(e))return p(u({},d),{score:e});if(vt(e)&&n){const O={[e==null?void 0:e.key]:e.value},A=(y=d[n])!=null?y:{};return p(u({},d),{[n]:u(u({},A),O)})}}return d});L(p(u({},o),{answerList:v||[]}))};if((()=>{var t,e;const{indicatorScore:n=[],indicatorDetermine:l=[],text:v=[],enableSort:d,isTextEdit:y,tagInputListConfigurable:O}=f||{},A=((t=n==null?void 0:n.filter(g=>g.label&&g.value&&g.score))==null?void 0:t.length)>0,it=((e=l==null?void 0:l.filter(g=>g.label&&g.value))==null?void 0:e.length)>0,st=(v==null?void 0:v.length)>0;return!(A||it||st||d||y||O)})())return r.createElement("div",{className:`${C}`},r.createElement("div",{className:`${C}__content`,style:{display:"flex",justifyContent:"center",alignItems:"center"}},r.createElement(lt,{description:r.createElement("span",{style:{color:"#ccc"}},_("NoScoringScale")),imageStyle:{width:200,height:200},image:r.createElement("img",{src:Ct})})));const{indicatorScore:$=[],indicatorDetermine:V=[],enableSort:et,isTextEdit:nt,inputList:I=[],tagInputListConfigurable:k}=f||{},ot=k&&((a=I.filter(t=>!t.isOverall))==null?void 0:a.length)>0,rt=(V==null?void 0:V.length)>0||($==null?void 0:$.length)>0||nt||ot;return r.createElement("div",{className:`${C}`},r.createElement("div",{className:`${C}__content`},r.createElement("div",{style:{fontSize:"18px",fontWeight:500,padding:"0px 16px",marginTop:"16px"}},_("GlobalAnnotation")),et&&r.createElement(dt,{waitSortList:(o==null?void 0:o.waitSorts)||[],sortList:(o==null?void 0:o.newSort)||[],setSortList:t=>{L(p(u({},o),{newSort:t}))},disabeledAll:x}),k&&I.length&&r.createElement(Tt,{inputList:I,selectedTags:(o==null?void 0:o.tagList)||{},updateValue:t=>{const{key:e,value:n}=t,l=o==null?void 0:o.tagList;L(p(u({},o),{tagList:p(u({},l),{[e]:n})}))},disabeledAll:x}),(f==null?void 0:f.text)&&r.createElement("div",{style:{padding:"0px 16px",marginTop:"16px"}},r.createElement(jt,{textAttribute:(o==null?void 0:o.textAttribute)||[],LLMConfig:f,setText:t=>L(p(u({},o),{textAttribute:t})),disabeledAll:x})),r.createElement("div",{style:{fontSize:"18px",fontWeight:500,padding:"0px 16px",marginTop:"16px"}},_("QualifiedAnnotation")),r.createElement("div",null,rt&&r.createElement(gt,{list:(o==null?void 0:o.answerList)||[],LLMConfig:f,updateValue:tt,disabeledAll:x}))),r.createElement("div",{style:{margin:"24px 16px",display:"flex"}},(j==null?void 0:j.length)-1!==b&&r.createElement(ct,{type:"primary",style:{marginLeft:"auto"},onClick:()=>{if(S){S(()=>w(h()));return}w(h())},disabled:x},_("Save"))))},Mt=s=>({annotation:s.annotation});var Bt=ut(Mt,null,null,{context:Lt})(Dt);export{Bt as default};
1
+ import r,{useContext as q,useState as R,useEffect as C}from"react";import{prefix as at}from"../../../constant/index.js";import{Empty as lt,Button as ct}from"antd";import dt from"./components/answerSort/index.js";import{connect as ut}from"react-redux";import{isBoolean as mt,isString as pt,isNumber as ft,isObject as gt}from"lodash";import vt from"./components/answerList/index.js";import{LabelBeeContext as Lt,LLMContext as z}from"../../../store/ctx.js";import{jsonParser as F}from"../../../utils/index.js";import{getStepConfig as xt}from"../../../store/annotation/reducer.js";import{useCustomToolInstance as wt}from"../../../hooks/annotation.js";import{PageForward as j}from"../../../store/annotation/actionCreators.js";import{cKeyCode as St,EToolName as bt}from"@labelbee/lb-annotation";import{useTranslation as yt}from"react-i18next";import{getCurrentResultFromResultList as _t,getRenderDataByResult as Et,formatSort as ht}from"../utils/data.js";import Ct from"../../../assets/annotation/LLMTool/empty.svg.js";import jt from"./components/textInputBox/index.js";import Tt from"../../tagList/components/overall/index.js";import{getAnnotationStepByStepList as Pt}from"../../../utils/data.js";var At=Object.defineProperty,It=Object.defineProperties,Ot=Object.getOwnPropertyDescriptors,W=Object.getOwnPropertySymbols,Rt=Object.prototype.hasOwnProperty,Nt=Object.prototype.propertyIsEnumerable,G=(s,i,a)=>i in s?At(s,i,{enumerable:!0,configurable:!0,writable:!0,value:a}):s[i]=a,d=(s,i)=>{for(var a in i||(i={}))Rt.call(i,a)&&G(s,a,i[a]);if(W)for(var a of W(i))Nt.call(i,a)&&G(s,a,i[a]);return s},p=(s,i)=>It(s,Ot(i));const Dt=St.default,T=`${at}-sidebar`,Mt=s=>{var i,a;const{annotation:J,dispatch:w,checkMode:Q}=s,{imgIndex:S,imgList:P,stepList:b,step:y,skipBeforePageTurning:_}=J,{modelAPIResponse:N,setModelAPIResponse:U}=q(z),{t:E}=yt(),u=(i=P[S])!=null?i:{},D=F(u==null?void 0:u.result),{toolInstanceRef:m}=wt({basicInfo:D}),[f,H]=R(),[,X]=R(0),{setNewAnswerList:Y}=q(z),[n,L]=R({}),x=!m.current.valid||Q;C(()=>{var t;if(b&&y){const e=(t=xt(b,y))==null?void 0:t.config;H(F(e))}},[y,JSON.stringify(b)]),C(()=>{!u||S===-1||(m.current.setValid=M,m.current.clearResult=Z,B())},[S,f]);const Z=()=>{B(u==null?void 0:u.questionList)},M=t=>{var e;mt(t)&&(m.current.valid=t,(e=m.current)==null||e.emit("validUpdated"),X(o=>o+1))},B=t=>{const e=Pt(b,y),o=_t(u==null?void 0:u.result,e);let l=u==null?void 0:u.questionList;(o==null?void 0:o.answerList)&&m.current.valid&&(l=o),t&&(l=t,o.sort=[]),M(D.valid);const g=Et(f,l);L(d({},g)),U([])};C(()=>{const{newSort:t,answerList:e,textAttribute:o,tagList:l}=n,g=ht(t||[]),c={answerList:e,sort:g,tagList:l,textAttribute:o,id:u==null?void 0:u.id,modelAPIResponse:N};m.current.exportData=()=>[[c],{valid:m.current.valid}],m.current.currentPageResult=p(d({},c),{toolName:bt.LLM}),Y(e||[])},[n,N,m.current.valid]),C(()=>(window.addEventListener("keydown",$),()=>{window.removeEventListener("keydown",$)}),[]);const $=t=>{if(t.ctrlKey&&t.keyCode===Dt.Enter){if(_){_(()=>w(j()));return}w(j())}},tt=({order:t,value:e,key:o})=>{const{answerList:l}=n,g=l==null?void 0:l.map(c=>{var h;if((c==null?void 0:c.order)===t){if(o==="textEdit"&&pt(e))return p(d({},c),{newAnswer:e});if(ft(e))return p(d({},c),{score:e});if(gt(e)&&o){const I={[e==null?void 0:e.key]:e.value},O=(h=c[o])!=null?h:{};return p(d({},c),{[o]:d(d({},O),I)})}}return c});L(p(d({},n),{answerList:g||[]}))};if((()=>{var t,e;const{indicatorScore:o=[],indicatorDetermine:l=[],text:g=[],enableSort:c,isTextEdit:h,tagInputListConfigurable:I}=f||{},O=((t=o==null?void 0:o.filter(v=>v.label&&v.value&&v.score))==null?void 0:t.length)>0,it=((e=l==null?void 0:l.filter(v=>v.label&&v.value))==null?void 0:e.length)>0,st=(g==null?void 0:g.length)>0;return!(O||it||st||c||h||I)})())return r.createElement("div",{className:`${T}`},r.createElement("div",{className:`${T}__content`,style:{display:"flex",justifyContent:"center",alignItems:"center"}},r.createElement(lt,{description:r.createElement("span",{style:{color:"#ccc"}},E("NoScoringScale")),imageStyle:{width:200,height:200},image:r.createElement("img",{src:Ct})})));const{indicatorScore:V=[],indicatorDetermine:k=[],enableSort:et,isTextEdit:nt,inputList:A=[],tagInputListConfigurable:K}=f||{},ot=K&&((a=A.filter(t=>!t.isOverall))==null?void 0:a.length)>0,rt=(k==null?void 0:k.length)>0||(V==null?void 0:V.length)>0||nt||ot;return r.createElement("div",{className:`${T}`},r.createElement("div",{className:`${T}__content`},r.createElement("div",{style:{fontSize:"18px",fontWeight:500,padding:"0px 16px",marginTop:"16px"}},E("GlobalAnnotation")),et&&r.createElement(dt,{waitSortList:(n==null?void 0:n.waitSorts)||[],sortList:(n==null?void 0:n.newSort)||[],setSortList:t=>{L(p(d({},n),{newSort:t}))},disabeledAll:x}),K&&A.length&&r.createElement(Tt,{inputList:A,selectedTags:(n==null?void 0:n.tagList)||{},updateValue:t=>{const{key:e,value:o}=t,l=n==null?void 0:n.tagList;L(p(d({},n),{tagList:p(d({},l),{[e]:o})}))},disabeledAll:x}),(f==null?void 0:f.text)&&r.createElement("div",{style:{padding:"0px 16px",marginTop:"16px"}},r.createElement(jt,{textAttribute:(n==null?void 0:n.textAttribute)||[],LLMConfig:f,setText:t=>L(p(d({},n),{textAttribute:t})),disabeledAll:x})),r.createElement("div",{style:{fontSize:"18px",fontWeight:500,padding:"0px 16px",marginTop:"16px"}},E("QualifiedAnnotation")),r.createElement("div",null,rt&&r.createElement(vt,{list:(n==null?void 0:n.answerList)||[],LLMConfig:f,updateValue:tt,disabeledAll:x}))),r.createElement("div",{style:{margin:"24px 16px",display:"flex"}},(P==null?void 0:P.length)-1!==S&&r.createElement(ct,{type:"primary",style:{marginLeft:"auto"},onClick:()=>{if(_){_(()=>w(j()));return}w(j())},disabled:x},E("Save"))))},Bt=s=>({annotation:s.annotation});var $t=ut(Bt,null,null,{context:Lt})(Mt);export{$t as default};
@@ -1 +1 @@
1
- import{isArray as L}from"lodash";import{jsonParser as O}from"../../../utils/index.js";var P=Object.defineProperty,S=Object.defineProperties,b=Object.getOwnPropertyDescriptors,w=Object.getOwnPropertySymbols,A=Object.prototype.hasOwnProperty,E=Object.prototype.propertyIsEnumerable,g=(l,t,r)=>t in l?P(l,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):l[t]=r,d=(l,t)=>{for(var r in t||(t={}))A.call(t,r)&&g(l,r,t[r]);if(w)for(var r of w(t))E.call(t,r)&&g(l,r,t[r]);return l},v=(l,t)=>S(l,b(t));const x=l=>{var t,r,n;const i=O(l),o="step_1",e=(r=(t=i==null?void 0:i[o])==null?void 0:t.result[0])!=null?r:{};return v(d({},e),{valid:(n=e==null?void 0:e.valid)!=null?n:!0})},j=l=>l.reduce((r,n)=>{var i;let o=n;return n.length>1?o=n.map(e=>e==null?void 0:e.id):o=[(i=n[0])==null?void 0:i.id],[...r,o]},[]),p=(l,t)=>{let r={};return l.forEach(n=>{var i;let o=[];t&&t[n==null?void 0:n.value]?o=t[n.value]:((i=n==null?void 0:n.subSelected)==null?void 0:i.length)>0&&n.subSelected.forEach(e=>{(e==null?void 0:e.isDefault)&&(e==null?void 0:e.value)&&o.push(e.value)}),o.length>0&&(r=v(d({},r),{[n.value]:o}))}),r},f=(l,t)=>{var r;let n=[],i=[];if((l==null?void 0:l.length)>0){const o=L(t)?t[0]:t;((r=o==null?void 0:o.sort)==null?void 0:r.length)>0&&(i=o.sort.reduce((e,s)=>{let a=[{title:s[0],id:s[0]}];return s.length>1&&(a=s.map(u=>({title:u,id:u}))),[...e,a]},[])),l.forEach(e=>{i.some(a=>a.length>1?a.some(u=>u.id===e.order):a[0].id===e.order)||n.push({title:e.order,id:e.order})})}return{newSort:i,waitSorts:n}},m=(l,t)=>{const{isTextEdit:r,textEdit:n=[],inputList:i=[]}=t||{};return l.map(e=>{var s,a;const u=i.filter(c=>!(c==null?void 0:c.isOverall))||[],_=p(u,e==null?void 0:e.tagList);return r&&((s=n.filter(h=>h.title===e.order)[0])==null?void 0:s.isFillAnswer)?v(d({},e),{newAnswer:(a=e==null?void 0:e.newAnswer)!=null?a:e.answer,tagList:_}):v(d({},e),{tagList:_})})},R=(l,t)=>{var r;let n=[],i=[],o=[],e={};(t==null?void 0:t.answerList)&&(n=m(t.answerList,l)||[],i=f(t.answerList,t).newSort,o=f(t.answerList,t).waitSorts);const s=((r=l==null?void 0:l.inputList)==null?void 0:r.filter(a=>a==null?void 0:a.isOverall))||[];return e=p(s,t==null?void 0:t.tagList),{newSort:i,waitSorts:o,answerList:n,tagList:e,textAttribute:t==null?void 0:t.textAttribute}};export{j as formatSort,x as getCurrentResultFromResultList,R as getRenderDataByResult,p as getTagResult,f as getWaitSortList,m as initAnswerList};
1
+ import{isArray as L}from"lodash";import{jsonParser as O}from"../../../utils/index.js";var P=Object.defineProperty,S=Object.defineProperties,b=Object.getOwnPropertyDescriptors,w=Object.getOwnPropertySymbols,A=Object.prototype.hasOwnProperty,E=Object.prototype.propertyIsEnumerable,g=(l,t,r)=>t in l?P(l,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):l[t]=r,v=(l,t)=>{for(var r in t||(t={}))A.call(t,r)&&g(l,r,t[r]);if(w)for(var r of w(t))E.call(t,r)&&g(l,r,t[r]);return l},c=(l,t)=>S(l,b(t));const x=(l,t=1)=>{var r,n;const i=O(l),o=`step_${t}`;return(n=(r=i==null?void 0:i[o])==null?void 0:r.result[0])!=null?n:{}},j=l=>l.reduce((r,n)=>{var i;let o=n;return n.length>1?o=n.map(e=>e==null?void 0:e.id):o=[(i=n[0])==null?void 0:i.id],[...r,o]},[]),p=(l,t)=>{let r={};return l.forEach(n=>{var i;let o=[];t&&t[n==null?void 0:n.value]?o=t[n.value]:((i=n==null?void 0:n.subSelected)==null?void 0:i.length)>0&&n.subSelected.forEach(e=>{(e==null?void 0:e.isDefault)&&(e==null?void 0:e.value)&&o.push(e.value)}),o.length>0&&(r=c(v({},r),{[n.value]:o}))}),r},f=(l,t)=>{var r;let n=[],i=[];if((l==null?void 0:l.length)>0){const o=L(t)?t[0]:t;((r=o==null?void 0:o.sort)==null?void 0:r.length)>0&&(i=o.sort.reduce((e,s)=>{let a=[{title:s[0],id:s[0]}];return s.length>1&&(a=s.map(u=>({title:u,id:u}))),[...e,a]},[])),l.forEach(e=>{i.some(a=>a.length>1?a.some(u=>u.id===e.order):a[0].id===e.order)||n.push({title:e.order,id:e.order})})}return{newSort:i,waitSorts:n}},m=(l,t)=>{const{isTextEdit:r,textEdit:n=[],inputList:i=[]}=t||{};return l.map(e=>{var s,a;const u=i.filter(d=>!(d==null?void 0:d.isOverall))||[],_=p(u,e==null?void 0:e.tagList);return r&&((s=n.filter(h=>h.title===e.order)[0])==null?void 0:s.isFillAnswer)?c(v({},e),{newAnswer:(a=e==null?void 0:e.newAnswer)!=null?a:e.answer,tagList:_}):c(v({},e),{tagList:_})})},R=(l,t)=>{var r;let n=[],i=[],o=[],e={};(t==null?void 0:t.answerList)&&(n=m(t.answerList,l)||[],i=f(t.answerList,t).newSort,o=f(t.answerList,t).waitSorts);const s=((r=l==null?void 0:l.inputList)==null?void 0:r.filter(a=>a==null?void 0:a.isOverall))||[];return e=p(s,t==null?void 0:t.tagList),{newSort:i,waitSorts:o,answerList:n,tagList:e,textAttribute:t==null?void 0:t.textAttribute}};export{j as formatSort,x as getCurrentResultFromResultList,R as getRenderDataByResult,p as getTagResult,f as getWaitSortList,m as initAnswerList};
@@ -1 +1 @@
1
- import{useLatest as B}from"ahooks";import{Spin as M}from"antd/es";import d,{useContext as N,useRef as w,useState as U,useEffect as u}from"react";import{connect as F}from"react-redux";import{usePointCloudViews as T}from"../pointCloudView/hooks/usePointCloudViews.js";import{PointCloudContext as $}from"../pointCloudView/PointCloudContext.js";import{a2MapStateToProps as q}from"../../store/annotation/map.js";import{LabelBeeContext as A}from"../../store/ctx.js";import{PointCloud2DRectOperation as G,ImgUtils as H}from"@labelbee/lb-annotation";var J=Object.defineProperty,K=Object.defineProperties,Q=Object.getOwnPropertyDescriptors,C=Object.getOwnPropertySymbols,W=Object.prototype.hasOwnProperty,X=Object.prototype.propertyIsEnumerable,O=(o,e,t)=>e in o?J(o,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):o[e]=t,f=(o,e)=>{for(var t in e||(e={}))W.call(e,t)&&O(o,t,e[t]);if(C)for(var t of C(e))X.call(e,t)&&O(o,t,e[t]);return o},R=(o,e)=>K(o,Q(e));const Y=o=>{var e;const{mappingData:t,size:l,config:b,checkMode:D,afterImgOnLoad:h}=o,s=(e=t==null?void 0:t.url)!=null?e:"",{pointCloudBoxList:c,setPointCloudResult:x}=N($),{update2DViewRect:y}=T(),p=d.useRef(null),n=w(null),m=B(y),_=w(null),[I,V]=U(!0),v=r=>{var a;const i=(a=m.current)==null?void 0:a.call(m,r);_.current=i,x(i)},j=()=>{var r;let a=[];c.forEach(i=>{const{rects:S=[],id:P,attribute:E,trackID:L}=i,g=S.find(z=>z.imageName===(t==null?void 0:t.path)),k=P+"_"+(t==null?void 0:t.path);g&&(a=[...a,R(f({},g),{boxID:P,id:k,attribute:E,order:L})])}),(r=n.current)==null||r.setResult(a)};return u(()=>{if(p.current){const r=new G({container:p.current,size:l,config:R(f({},b),{isShowOrder:!0,attributeConfigurable:!0}),checkMode:D});return n.current=r,n.current.init(),n.current.on("updateDragResult",v),()=>{var a,i;(a=n.current)==null||a.unbind("updateDragResult",v),(i=n.current)==null||i.destroy()}}},[]),u(()=>{n.current&&s&&H.load(s).then(r=>{n.current.setImgNode(r),h(r),V(!1)})},[s]),u(()=>{var r;(r=n.current)==null||r.setSize(l)},[l]),u(()=>{c!==_.current&&j()},[c,s]),d.createElement(M,{spinning:I},d.createElement("div",{ref:p,style:f({position:"relative"},l)}))};var Z=F(q,null,null,{context:A})(Y);export{Z as default};
1
+ import{useLatest as V}from"ahooks";import{Spin as H}from"antd/es";import R,{useContext as J,useRef as y,useState as K,useMemo as Q,useCallback as W,useEffect as u}from"react";import{connect as X}from"react-redux";import{usePointCloudViews as Y}from"../pointCloudView/hooks/usePointCloudViews.js";import{PointCloudContext as Z}from"../pointCloudView/PointCloudContext.js";import{a2MapStateToProps as ee}from"../../store/annotation/map.js";import{LabelBeeContext as te}from"../../store/ctx.js";import{PointCloud2DRectOperation as re,ImgUtils as ne}from"@labelbee/lb-annotation";var oe=Object.defineProperty,ie=Object.defineProperties,ae=Object.getOwnPropertyDescriptors,S=Object.getOwnPropertySymbols,le=Object.prototype.hasOwnProperty,ce=Object.prototype.propertyIsEnumerable,j=(i,r,t)=>r in i?oe(i,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[r]=t,f=(i,r)=>{for(var t in r||(r={}))le.call(r,t)&&j(i,t,r[t]);if(S)for(var t of S(r))ce.call(r,t)&&j(i,t,r[t]);return i},g=(i,r)=>ie(i,ae(r));const ue=i=>{var r;const{mappingData:t,size:s,config:B,checkMode:E,afterImgOnLoad:A}=i,m=(r=t==null?void 0:t.url)!=null?r:"",{pointCloudBoxList:d,setPointCloudResult:N,defaultAttribute:D,rectList:v,addRectIn2DView:k,updateRectIn2DView:M,removeRectIn2DView:z}=J(Z),{update2DViewRect:U}=Y(),_=R.useRef(null),n=y(null),w=V(U),P=y(null),[F,b]=K(!0),C=Q(()=>v==null?void 0:v.filter(e=>e.imageName===(t==null?void 0:t.path)),[t==null?void 0:t.path,v]),p=V(t==null?void 0:t.path),I=e=>{var o;const{boxID:l}=e;if(l){const a=(o=w.current)==null?void 0:o.call(w,e);P.current=a,N(a);return}M(e)},O=e=>{p.current&&k(g(f({},e),{imageName:p.current}))},h=e=>{z(e)},T=W(()=>{let e=[];return d.forEach(o=>{const{rects:l=[],id:a,attribute:c,trackID:$}=o,L=l.find(G=>G.imageName===p.current),q=a+"_"+p.current;L&&(e=[...e,g(f({},L),{boxID:a,id:q,attribute:c,order:$})])}),e},[d]),x=()=>{var e,o,l;const a=T(),c=(e=n.current)==null?void 0:e.selectedRectID;(o=n.current)==null||o.setResult([...a,...C]),c&&((l=n.current)==null||l.setSelectedRectID(c))};return u(()=>{if(_.current){const e=new re({container:_.current,size:s,config:g(f({},B),{isShowOrder:!0,attributeConfigurable:!0}),checkMode:E});return n.current=e,n.current.init(),n.current.on("updateDragResult",I),n.current.on("afterAddingDrawingRect",O),n.current.on("deleteSelectedRects",h),()=>{var o,l,a,c;(o=n.current)==null||o.unbind("updateDragResult",I),(l=n.current)==null||l.unbind("afterAddingDrawingRect",O),(a=n.current)==null||a.unbind("deleteSelectedRects",h),(c=n.current)==null||c.destroy()}}},[]),u(()=>{b(!0),n.current&&m&&ne.load(m).then(e=>{n.current.setImgNode(e),A(e),b(!1)})},[m]),u(()=>{var e;(e=n.current)==null||e.setSize(s)},[s]),u(()=>{d!==P.current&&x()},[d]),u(()=>{var e,o;(o=(e=n.current)==null?void 0:e.setDefaultAttribute)==null||o.call(e,D)},[D]),u(()=>{x()},[C]),R.createElement(H,{spinning:F},R.createElement("div",{ref:_,style:f({position:"relative"},s)}))};var se=X(ee,null,null,{context:te})(ue);export{se as default};
@@ -1 +1 @@
1
- import{getClassName as J}from"../../utils/dom.js";import i,{useState as L,useContext as ie,useEffect as Q}from"react";import{PointCloudContainer as le}from"./PointCloudLayout.js";import{PointCloudContext as re}from"./PointCloudContext.js";import{connect as se}from"react-redux";import{cKeyCode as ae,pointCloudLidar2image as ue,pointListLidar2Img as ce}from"@labelbee/lb-annotation";import{LabelBeeContext as de}from"../../store/ctx.js";import{a2MapStateToProps as me}from"../../store/annotation/map.js";import{toolStyleConverter as U}from"@labelbee/lb-utils";import fe from"./PointCloud2DSingleView.js";import W from"./components/TitleButton/index.js";import{LeftOutlined as pe}from"@ant-design/icons";import ge from"classnames";import ve from"../../assets/annotation/common/icon_esc.svg.js";import be from"../../assets/annotation/common/icon_left_squareOutlined.svg.js";import ye from"../../assets/annotation/common/icon_right_squareOutlined.svg.js";import{isNumber as Ee}from"lodash";var _e=Object.defineProperty,he=Object.defineProperties,we=Object.getOwnPropertyDescriptors,X=Object.getOwnPropertySymbols,Ce=Object.prototype.hasOwnProperty,Pe=Object.prototype.propertyIsEnumerable,Y=(e,n,t)=>n in e?_e(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t,f=(e,n)=>{for(var t in n||(n={}))Ce.call(n,t)&&Y(e,t,n[t]);if(X)for(var t of X(n))Pe.call(n,t)&&Y(e,t,n[t]);return e},p=(e,n)=>he(e,we(n));const I=ae.default,Le=({showEnlarge:e,isEnlargeTopView:n,data:t,setIsEnlarge:y,setCurIndex:g,curIndex:E=0,index:x,annotations2d:_})=>n?i.createElement(W,{title:t==null?void 0:t.calName,style:{background:"rgba(0, 0, 0, 0.74)",color:"#FFFFFF"}}):e?i.createElement("div",{style:{display:"flex",alignItems:"center"}},i.createElement(pe,{style:{cursor:"pointer",marginRight:"12px"},onClick:()=>{y(!1),g(void 0)}}),i.createElement("span",null,t==null?void 0:t.calName),i.createElement("span",{style:{marginLeft:"8px"}},E+1,"/",_==null?void 0:_.length)):i.createElement(W,{title:t==null?void 0:t.calName,onClick:()=>{y(!0),g(x)},style:{background:"rgba(0, 0, 0, 0.74)",color:"#FFFFFF"}}),xe=({currentData:e,config:n,thumbnailWidth:t,isEnlargeTopView:y,highlightAttribute:g,loadPCDFileLoading:E,checkMode:x,measureVisible:_})=>{var O;const[d,Z]=L([]),{topViewInstance:B,displayPointCloudList:j,polygonList:S,imageSizes:N,selectedIDs:V}=ie(re),[F,D]=L(""),[h,k]=L(!1),[a,w]=L(void 0);Q(()=>{var l;if(!E&&B&&(e==null?void 0:e.mappingImgList)&&((l=e==null?void 0:e.mappingImgList)==null?void 0:l.length)>0){const r={fill:"transparent",color:"green"};let s=[];e==null||e.mappingImgList.forEach(o=>{var v,T,K;const $=j.reduce((m,c)=>{var b,u;const C=c.id===F||g===c.attribute,{transferViewData:H,viewRangePointList:P}=(b=ue(c,o.calib,{createRange:C}))!=null?b:{};if(!H||!P)return[];const M=(u=U.getColorFromConfig({attribute:c.attribute},p(f({},n),{attributeConfigurable:!0}),{}))==null?void 0:u.stroke,ne=ee({viewDataPointList:H,pointCloudBox:c,defaultViewStyle:r,stroke:M}),G=[...m,...ne];return(P==null?void 0:P.length)>0&&G.unshift({type:"polygon",annotation:p(f({id:F,pointList:P},r),{stroke:M,fill:"rgba(255, 255, 255, 0.6)"})}),G},[]),q=N[(v=o==null?void 0:o.path)!=null?v:""];q&&Ee((T=o==null?void 0:o.calib)==null?void 0:T.groundHeight)&&S.forEach(m=>{const c=m.pointList.map(u=>{var C;return p(f({},u),{z:(C=o==null?void 0:o.calib)==null?void 0:C.groundHeight})}),b=ce(c,o==null?void 0:o.calib,q);if(b){const u=U.getColorFromConfig({attribute:m.attribute},p(f({},n),{attributeConfigurable:!0}),{});$.push({type:"polygon",annotation:p(f({id:m.id,pointList:b},r),{stroke:u==null?void 0:u.stroke,fill:V.includes(m.id)?u==null?void 0:u.fill:"rgba(255, 255, 255, 0.6)"})})}}),s.push({annotations:$,url:o==null?void 0:o.url,calName:(K=o==null?void 0:o.calib)==null?void 0:K.calName,calib:o==null?void 0:o.calib,path:o==null?void 0:o.path})}),Z(s)}},[j,e==null?void 0:e.mappingImgList,F,g,E,S,N,V]),Q(()=>(window.addEventListener("keydown",R),()=>{window.removeEventListener("keydown",R)}),[a]);const R=l=>{const{keyCode:r}=l;switch(r){case I.Esc:h&&k(!1);break;case I.Left:A();break;case I.Right:z();break}},A=()=>{a===void 0||!h||Number(a)>0&&w(a-1)},z=()=>{a===void 0||!h||Number(a)<(d==null?void 0:d.length)-1&&w(a+1)},ee=({viewDataPointList:l,pointCloudBox:r,defaultViewStyle:s,stroke:o})=>l?l.map(v=>({type:v.type,annotation:p(f({id:r.id,pointList:v.pointList},s),{stroke:o})})):[],te=!e||!(e==null?void 0:e.mappingImgList)||!(((O=e==null?void 0:e.mappingImgList)==null?void 0:O.length)>0),oe=i.createElement("div",{style:{display:"flex",alignItems:"center",fontSize:"14px"}},i.createElement("img",{src:be,style:{height:"24px",marginRight:"8px",cursor:"pointer"},onClick:()=>A()}),i.createElement("span",{style:{marginRight:"12px"}},"\u952E\u76D8\u5DE6\u952E\u4E0A\u4E00\u5F20"),i.createElement("span",{style:{margin:"0px 8px 0px 12px"}},"\u952E\u76D8\u53F3\u952E\u4E0A\u4E00\u5F20"),i.createElement("img",{src:ye,style:{height:"24px",marginRight:"12px",cursor:"pointer"},onClick:()=>z()}),i.createElement("img",{src:ve,style:{height:"24px",margin:"0px 8px 0px 12px",cursor:"pointer"},onClick:()=>{k(!1),w(void 0)}}),i.createElement("span",null,"\u952E\u9000\u51FA"));return(d==null?void 0:d.length)>0?i.createElement(i.Fragment,null,d.map((l,r)=>{const s=h&&r===a;return i.createElement(le,{className:ge({[J("point-cloud-2d-container")]:!0,[J("point-cloud-container","zoom")]:s}),title:i.createElement(Le,{showEnlarge:s,isEnlargeTopView:y,data:l,setIsEnlarge:k,setCurIndex:w,curIndex:a,index:r,annotations2d:d}),titleOnSurface:!s,style:{display:te?"none":"flex",width:s?"100%":t},key:r,toolbar:oe},(l==null?void 0:l.annotations)&&(l==null?void 0:l.url)&&i.createElement(fe,{currentData:e,view2dData:l,setSelectedID:D,showEnlarge:s,checkMode:x,measureVisible:_}))})):null};var Fe=se(me,null,null,{context:de})(xe);export{Fe as default};
1
+ import{getClassName as Q}from"../../utils/dom.js";import i,{useState as L,useContext as ue,useEffect as U}from"react";import{PointCloudContainer as ae}from"./PointCloudLayout.js";import{PointCloudContext as ce}from"./PointCloudContext.js";import{connect as de}from"react-redux";import{cKeyCode as me,pointCloudLidar2image as fe,pointListLidar2Img as pe}from"@labelbee/lb-annotation";import{LabelBeeContext as ge}from"../../store/ctx.js";import{a2MapStateToProps as ve}from"../../store/annotation/map.js";import{toolStyleConverter as W}from"@labelbee/lb-utils";import be from"./PointCloud2DSingleView.js";import X from"./components/TitleButton/index.js";import{LeftOutlined as ye}from"@ant-design/icons";import Ee from"classnames";import he from"../../assets/annotation/common/icon_esc.svg.js";import _e from"../../assets/annotation/common/icon_left_squareOutlined.svg.js";import we from"../../assets/annotation/common/icon_right_squareOutlined.svg.js";import{isNumber as Ce}from"lodash";import{getBoundingRect as Pe,isBoundingRectInImage as Le}from"../../utils/index.js";var xe=Object.defineProperty,Ie=Object.defineProperties,Fe=Object.getOwnPropertyDescriptors,Y=Object.getOwnPropertySymbols,ke=Object.prototype.hasOwnProperty,Oe=Object.prototype.propertyIsEnumerable,Z=(e,n,o)=>n in e?xe(e,n,{enumerable:!0,configurable:!0,writable:!0,value:o}):e[n]=o,m=(e,n)=>{for(var o in n||(n={}))ke.call(n,o)&&Z(e,o,n[o]);if(Y)for(var o of Y(n))Oe.call(n,o)&&Z(e,o,n[o]);return e},f=(e,n)=>Ie(e,Fe(n));const j=me.default,je=({showEnlarge:e,isEnlargeTopView:n,data:o,setIsEnlarge:y,setCurIndex:g,curIndex:E=0,index:x,annotations2d:h})=>n?i.createElement(X,{title:o==null?void 0:o.calName,style:{background:"rgba(0, 0, 0, 0.74)",color:"#FFFFFF"}}):e?i.createElement("div",{style:{display:"flex",alignItems:"center"}},i.createElement(ye,{style:{cursor:"pointer",marginRight:"12px"},onClick:()=>{y(!1),g(void 0)}}),i.createElement("span",null,o==null?void 0:o.calName),i.createElement("span",{style:{marginLeft:"8px"}},E+1,"/",h==null?void 0:h.length)):i.createElement(X,{title:o==null?void 0:o.calName,onClick:()=>{y(!0),g(x)},style:{background:"rgba(0, 0, 0, 0.74)",color:"#FFFFFF"}}),Ne=({currentData:e,config:n,thumbnailWidth:o,isEnlargeTopView:y,highlightAttribute:g,loadPCDFileLoading:E,checkMode:x,measureVisible:h})=>{var N;const[p,D]=L([]),{topViewInstance:ee,displayPointCloudList:R,polygonList:S,imageSizes:I,selectedIDs:V}=ue(ce),[F,te]=L(""),[_,k]=L(!1),[u,w]=L(void 0);U(()=>{var l;if(!E&&ee&&(e==null?void 0:e.mappingImgList)&&((l=e==null?void 0:e.mappingImgList)==null?void 0:l.length)>0){const r={fill:"transparent",color:"green"};let s=[];e==null||e.mappingImgList.forEach(t=>{var v,K,$;const q=R.reduce((c,d)=>{var b,a;const C=d.id===F||g===d.attribute,{transferViewData:O,viewRangePointList:P}=(b=fe(d,t.calib,{createRange:C}))!=null?b:{};if(!O||!P)return[];const le=O.reduce((G,J)=>J.type==="line"?[...G,...J.pointList]:G,[]),re=f(m({},Pe(le)),{imageName:t.path});if(!Le(re,t.path,I))return c;const B=(a=W.getColorFromConfig({attribute:d.attribute},f(m({},n),{attributeConfigurable:!0}),{}))==null?void 0:a.stroke,se=oe({viewDataPointList:O,pointCloudBox:d,defaultViewStyle:r,stroke:B}),M=[...c,...se];return(P==null?void 0:P.length)>0&&M.unshift({type:"polygon",annotation:f(m({id:F,pointList:P},r),{stroke:B,fill:"rgba(255, 255, 255, 0.6)"})}),M},[]),H=I[(v=t==null?void 0:t.path)!=null?v:""];H&&Ce((K=t==null?void 0:t.calib)==null?void 0:K.groundHeight)&&S.forEach(c=>{const d=c.pointList.map(a=>{var C;return f(m({},a),{z:(C=t==null?void 0:t.calib)==null?void 0:C.groundHeight})}),b=pe(d,t==null?void 0:t.calib,H);if(b){const a=W.getColorFromConfig({attribute:c.attribute},f(m({},n),{attributeConfigurable:!0}),{});q.push({type:"polygon",annotation:f(m({id:c.id,pointList:b},r),{stroke:a==null?void 0:a.stroke,fill:V.includes(c.id)?a==null?void 0:a.fill:"rgba(255, 255, 255, 0.6)"})})}}),s.push({annotations:q,url:t==null?void 0:t.url,calName:($=t==null?void 0:t.calib)==null?void 0:$.calName,calib:t==null?void 0:t.calib,path:t==null?void 0:t.path})}),D(s)}},[R,e==null?void 0:e.mappingImgList,F,g,E,S,I,V]),U(()=>(window.addEventListener("keydown",A),()=>{window.removeEventListener("keydown",A)}),[u]);const A=l=>{const{keyCode:r}=l;switch(r){case j.Esc:_&&k(!1);break;case j.Left:z();break;case j.Right:T();break}},z=()=>{u===void 0||!_||Number(u)>0&&w(u-1)},T=()=>{u===void 0||!_||Number(u)<(p==null?void 0:p.length)-1&&w(u+1)},oe=({viewDataPointList:l,pointCloudBox:r,defaultViewStyle:s,stroke:t})=>l?l.map(v=>({type:v.type,annotation:f(m({id:r.id,pointList:v.pointList},s),{stroke:t})})):[],ne=!e||!(e==null?void 0:e.mappingImgList)||!(((N=e==null?void 0:e.mappingImgList)==null?void 0:N.length)>0),ie=i.createElement("div",{style:{display:"flex",alignItems:"center",fontSize:"14px"}},i.createElement("img",{src:_e,style:{height:"24px",marginRight:"8px",cursor:"pointer"},onClick:()=>z()}),i.createElement("span",{style:{marginRight:"12px"}},"\u952E\u76D8\u5DE6\u952E\u4E0A\u4E00\u5F20"),i.createElement("span",{style:{margin:"0px 8px 0px 12px"}},"\u952E\u76D8\u53F3\u952E\u4E0A\u4E00\u5F20"),i.createElement("img",{src:we,style:{height:"24px",marginRight:"12px",cursor:"pointer"},onClick:()=>T()}),i.createElement("img",{src:he,style:{height:"24px",margin:"0px 8px 0px 12px",cursor:"pointer"},onClick:()=>{k(!1),w(void 0)}}),i.createElement("span",null,"\u952E\u9000\u51FA"));return(p==null?void 0:p.length)>0?i.createElement(i.Fragment,null,p.map((l,r)=>{const s=_&&r===u;return i.createElement(ae,{className:Ee({[Q("point-cloud-2d-container")]:!0,[Q("point-cloud-container","zoom")]:s}),title:i.createElement(je,{showEnlarge:s,isEnlargeTopView:y,data:l,setIsEnlarge:k,setCurIndex:w,curIndex:u,index:r,annotations2d:p}),titleOnSurface:!s,style:{display:ne?"none":"flex",width:s?"100%":o},key:r,toolbar:ie},(l==null?void 0:l.annotations)&&(l==null?void 0:l.url)&&i.createElement(be,{currentData:e,view2dData:l,setSelectedID:te,showEnlarge:s,checkMode:x,measureVisible:h}))})):null};var Re=de(ve,null,null,{context:ge})(Ne);export{Re as default};
@@ -1 +1 @@
1
- import{EPointCloudPattern as z}from"@labelbee/lb-utils";import nt,{useState as n,useRef as Vt,useMemo as it,useEffect as E}from"react";import{ActionsHistory as st,EToolName as G}from"@labelbee/lb-annotation";import{useDispatch as Bt}from"../../store/ctx.js";import{ChangeSave as Ot}from"../../store/annotation/actionCreators.js";import Ht from"../../store/annotatedBox/index.js";var Rt=Object.defineProperty,jt=Object.defineProperties,zt=Object.getOwnPropertyDescriptors,lt=Object.getOwnPropertySymbols,Et=Object.prototype.hasOwnProperty,Gt=Object.prototype.propertyIsEnumerable,rt=(a,e,i)=>e in a?Rt(a,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):a[e]=i,Nt=(a,e)=>{for(var i in e||(e={}))Et.call(e,i)&&rt(a,i,e[i]);if(lt)for(var i of lt(e))Gt.call(e,i)&&rt(a,i,e[i]);return a},Ft=(a,e)=>jt(a,zt(e)),Mt=(a,e,i)=>new Promise((m,C)=>{var S=v=>{try{f(i.next(v))}catch(s){C(s)}},_=v=>{try{f(i.throw(v))}catch(s){C(s)}},f=v=>v.done?m(v.value):Promise.resolve(v.value).then(S,_);f((i=i.apply(a,e)).next())});const at=nt.createContext({pointCloudBoxList:[],pointCloudSphereList:[],displayPointCloudList:[],displaySphereList:[],displayLineList:[],polygonList:[],lineList:[],selectedID:"",selectedIDs:[],highlightIDs:[],setHighlightIDs:()=>{},valid:!0,setSelectedIDs:()=>{},setPointCloudResult:()=>{},setPointCloudSphereList:()=>{},setPointCloudValid:()=>{},setTopViewInstance:()=>{},setSideViewInstance:()=>{},setBackViewInstance:()=>{},setMainViewInstance:()=>{},addSelectedID:()=>{},addHighlightID:()=>{},selectedAllBoxes:()=>{},addPointCloudBox:()=>[],addPointCloudSphere:()=>[],setPolygonList:()=>{},setLineList:()=>{},zoom:1,setZoom:()=>{},history:new st,hideAttributes:[],setHideAttributes:()=>{},toggleAttributesVisible:()=>{},reRender:()=>{},setAttrPanelLayout:()=>{},attrPanelLayout:"",syncAllViewPointCloudColor:()=>Promise.resolve(),defaultAttribute:"",setDefaultAttribute:()=>{},pointCloudPattern:G.Rect,setPointCloudPattern:()=>{},selectSpecAttr:()=>{},globalPattern:z.Detection,setGlobalPattern:()=>{},setPtSegmentInstance:()=>{},segmentation:[],setSegmentation:()=>{},clearAllDetectionInstance:()=>{},highlight2DDataList:[],setHighlight2DDataList:()=>{},cuboidBoxIn2DView:!0,setCuboidBoxIn2DView:a=>{},imageSizes:{},cacheImageNodeSize:()=>{}}),Tt=({children:a})=>{const[e,i]=n([]),[m,C]=n([]),[S,_]=n([]),[f,v]=n([]),[s,x]=n([]),[y,V]=n([]),[N,dt]=n(!0),[F,ct]=n(!0),[M,ut]=n(1),[d,T]=n(),[Z,k]=n(),[q,J]=n(),[l,K]=n(),[Q,pt]=n(""),[B,gt]=n(G.Rect),ht=Vt(new st).current,[p,O]=n([]),[U,vt]=n(""),[H,Pt]=n(z.Detection),[b,W]=n(void 0),[R,ft]=n([]),[j,mt]=n([]),g=Ht(),[X,bt]=n({}),It=Bt(),Ct=r=>{const{imgNode:c,path:u}=r;u&&c&&bt(P=>Ft(Nt({},P),{[u]:{width:c.width,height:c.height}}))},Y=it(()=>s.length===1?s[0]:"",[s]),w=it(()=>{const r=e.find(t=>t.id===Y),c=t=>{const o=e.concat(t);return i(o),o},u=t=>{const o=m.concat(t);return C(o),o},P=t=>{dt(t!==!1)},h=t=>{t===void 0&&x([]),typeof t=="string"&&x([t]),Array.isArray(t)&&x(Array.from(new Set(t)))},yt=t=>{s.includes(t)?h(s.filter(o=>o!==t)):h([...s,t])},Lt=t=>{y.includes(t)?V([]):V([t])},Dt=()=>{if(B===G.Rect){const t=e.map(o=>o.id);h(t),d==null||d.pointCloud2dOperation.setSelectedIDs(t)}},wt=t=>{h(e.filter(o=>o.attribute===t).map(o=>o.id))},$=e.filter(t=>!p.includes(t.attribute)),tt=m.filter(t=>!p.includes(t.attribute)),et=f.filter(t=>t.attribute&&!p.includes(t.attribute)),At=t=>{if(p.includes(t))O(p.filter(o=>o!==t));else{const o=p.concat(t);O(o)}},_t=(t=$,o=S,L=tt,A=et,D=R)=>{var I;l==null||l.clearAllBox(),l==null||l.clearAllSphere(),d==null||d.updatePolygonList(t,o),d==null||d.updatePointList(L),d==null||d.updateLineList(A),l==null||l.generateBoxes(t),l==null||l.generateSpheres(L),(I=b==null?void 0:b.store)==null||I.updateCurrentSegment(D),ot(t)},xt=()=>{T(void 0),k(void 0),J(void 0),K(void 0)},ot=(t,o)=>Mt(void 0,null,function*(){var L;if(!l)return;const A=l.pointCloudObject;if(!!A)try{const D=yield l.getHighlightIndexByMappingImgList({mappingImgList:o!=null?o:j,points:A.geometry.attributes.position.array}),I=yield l==null?void 0:l.highlightOriginPointCloud(t,D);return I&&((L=d==null?void 0:d.pointCloudInstance)==null||L.updateColor(I)),I}catch(D){console.error(D)}});return{selectedID:Y,pointCloudBoxList:e,pointCloudSphereList:m,displayPointCloudList:$,displaySphereList:tt,displayLineList:et,selectedIDs:s,setPointCloudResult:i,setSelectedIDs:h,addPointCloudBox:c,addPointCloudSphere:u,setPointCloudSphereList:C,valid:N,selectedPointCloudBox:r,setPointCloudValid:P,addSelectedID:yt,addHighlightID:Lt,selectedAllBoxes:Dt,topViewInstance:d,setTopViewInstance:T,sideViewInstance:Z,setSideViewInstance:k,backViewInstance:q,setBackViewInstance:J,mainViewInstance:l,setMainViewInstance:K,polygonList:S,setPolygonList:_,lineList:f,setLineList:v,zoom:M,setZoom:ut,history:ht,toggleAttributesVisible:At,hideAttributes:p,setHideAttributes:O,reRender:_t,attrPanelLayout:U,setAttrPanelLayout:vt,syncAllViewPointCloudColor:ot,defaultAttribute:Q,setDefaultAttribute:pt,pointCloudPattern:B,setPointCloudPattern:gt,selectSpecAttr:wt,globalPattern:H,setGlobalPattern:t=>{H!==t&&(It(Ot),Pt(t),t===z.Detection&&W(void 0))},ptSegmentInstance:b,setPtSegmentInstance:W,segmentation:R,setSegmentation:ft,clearAllDetectionInstance:xt,highlight2DDataList:j,setHighlight2DDataList:mt,cuboidBoxIn2DView:F,setCuboidBoxIn2DView:ct,imageSizes:X,cacheImageNodeSize:Ct,highlightIDs:y,setHighlightIDs:V}},[N,s,e,m,S,f,d,Z,q,l,M,p,U,Q,B,H,b,R,j,F,X,y]);E(()=>{var r,c,u;(r=g==null?void 0:g.setPointCloudBoxList)==null||r.call(g,e),(c=g==null?void 0:g.setHighlightIDs)==null||c.call(g,y),(u=g==null?void 0:g.setSelectedIDs)==null||u.call(g,s)},[e,s,y]),E(()=>{var r;(r=g==null?void 0:g.setPtCtx)==null||r.call(g,w)},[w]);const St=()=>{const r=e.filter(h=>p.includes(h.attribute)),{setSelectedIDs:c,reRender:u}=w,P=r.map(h=>h.id);P.length>0&&c(s.filter(h=>!P.includes(h))),u()};return E(()=>{var r,c,u,P;St(),(c=(r=d==null?void 0:d.toolInstance)==null?void 0:r.setHiddenAttributes)==null||c.call(r,p),(P=(u=b==null?void 0:b.store)==null?void 0:u.setHiddenAttributes)==null||P.call(u,p)},[p]),nt.createElement(at.Provider,{value:w},a)};export{at as PointCloudContext,Tt as PointCloudProvider};
1
+ import{EPointCloudPattern as E}from"@labelbee/lb-utils";import it,{useState as n,useRef as zt,useMemo as st,useEffect as N}from"react";import{ActionsHistory as lt,EToolName as G}from"@labelbee/lb-annotation";import{useDispatch as Et}from"../../store/ctx.js";import{ChangeSave as Nt}from"../../store/annotation/actionCreators.js";import Gt from"../../store/annotatedBox/index.js";import Ft from"lodash";var Mt=Object.defineProperty,kt=Object.defineProperties,Tt=Object.getOwnPropertyDescriptors,rt=Object.getOwnPropertySymbols,Zt=Object.prototype.hasOwnProperty,qt=Object.prototype.propertyIsEnumerable,at=(s,o,i)=>o in s?Mt(s,o,{enumerable:!0,configurable:!0,writable:!0,value:i}):s[o]=i,Jt=(s,o)=>{for(var i in o||(o={}))Zt.call(o,i)&&at(s,i,o[i]);if(rt)for(var i of rt(o))qt.call(o,i)&&at(s,i,o[i]);return s},Kt=(s,o)=>kt(s,Tt(o)),Qt=(s,o,i)=>new Promise((b,S)=>{var D=u=>{try{C(i.next(u))}catch(I){S(I)}},_=u=>{try{C(i.throw(u))}catch(I){S(I)}},C=u=>u.done?b(u.value):Promise.resolve(u.value).then(D,_);C((i=i.apply(s,o)).next())});const ct=s=>Ft.pick(s,["id","attribute","width","height","x","y","imageName"]),dt=it.createContext({rectList:[],pointCloudBoxList:[],pointCloudSphereList:[],displayPointCloudList:[],displaySphereList:[],displayLineList:[],polygonList:[],lineList:[],selectedID:"",selectedIDs:[],highlightIDs:[],setHighlightIDs:()=>{},valid:!0,setSelectedIDs:()=>{},setPointCloudResult:()=>{},setPointCloudSphereList:()=>{},setPointCloudValid:()=>{},setTopViewInstance:()=>{},setSideViewInstance:()=>{},setBackViewInstance:()=>{},setMainViewInstance:()=>{},addSelectedID:()=>{},addHighlightID:()=>{},selectedAllBoxes:()=>{},addPointCloudBox:()=>[],addPointCloudSphere:()=>[],setPolygonList:()=>{},setRectList:()=>{},addRectIn2DView:()=>{},removeRectIn2DView:()=>{},updateRectIn2DView:()=>{},setLineList:()=>{},zoom:1,setZoom:()=>{},history:new lt,hideAttributes:[],setHideAttributes:()=>{},toggleAttributesVisible:()=>{},reRender:()=>{},setAttrPanelLayout:()=>{},attrPanelLayout:"",syncAllViewPointCloudColor:()=>Promise.resolve(),defaultAttribute:"",setDefaultAttribute:()=>{},pointCloudPattern:G.Rect,setPointCloudPattern:()=>{},selectSpecAttr:()=>{},globalPattern:E.Detection,setGlobalPattern:()=>{},setPtSegmentInstance:()=>{},segmentation:[],setSegmentation:()=>{},clearAllDetectionInstance:()=>{},highlight2DDataList:[],setHighlight2DDataList:()=>{},cuboidBoxIn2DView:!0,setCuboidBoxIn2DView:s=>{},imageSizes:{},cacheImageNodeSize:()=>{}}),Ut=({children:s})=>{const[o,i]=n([]),[b,S]=n([]),[D,_]=n([]),[C,u]=n([]),[I,ut]=n([]),[h,x]=n([]),[y,R]=n([]),[F,pt]=n(!0),[M,gt]=n(!0),[k,ht]=n(1),[a,T]=n(),[Z,q]=n(),[J,K]=n(),[l,Q]=n(),[U,vt]=n(""),[B,ft]=n(G.Rect),Pt=zt(new lt).current,[p,O]=n([]),[W,mt]=n(""),[H,It]=n(E.Detection),[w,X]=n(void 0),[j,bt]=n([]),[z,Ct]=n([]),g=Gt(),[Y,wt]=n({}),Lt=Et(),St=r=>{const{imgNode:c,path:d}=r;d&&c&&wt(P=>Kt(Jt({},P),{[d]:{width:c.width,height:c.height}}))},$=st(()=>h.length===1?h[0]:"",[h]),V=st(()=>{const r=o.find(t=>t.id===$),c=t=>{const e=o.concat(t);return i(e),e},d=t=>{const e=b.concat(t);return S(e),e},P=t=>{pt(t!==!1)},v=t=>{t===void 0&&x([]),typeof t=="string"&&x([t]),Array.isArray(t)&&x(Array.from(new Set(t)))},yt=t=>{h.includes(t)?v(h.filter(e=>e!==t)):v([...h,t])},At=t=>{const e=ct(t);u(f=>[...f,e])},Vt=t=>{const e=ct(t);u(f=>f.map(m=>m.id===t.id?e:m))},_t=t=>{u(e=>e.filter(f=>!t.find(m=>m.id===f.id)))},xt=t=>{y.includes(t)?R([]):R([t])},Rt=()=>{if(B===G.Rect){const t=o.map(e=>e.id);v(t),a==null||a.pointCloud2dOperation.setSelectedIDs(t)}},Bt=t=>{v(o.filter(e=>e.attribute===t).map(e=>e.id))},tt=o.filter(t=>!p.includes(t.attribute)),et=b.filter(t=>!p.includes(t.attribute)),ot=I.filter(t=>t.attribute&&!p.includes(t.attribute)),Ot=t=>{if(p.includes(t))O(p.filter(e=>e!==t));else{const e=p.concat(t);O(e)}},Ht=(t=tt,e=D,f=et,m=ot,A=j)=>{var L;l==null||l.clearAllBox(),l==null||l.clearAllSphere(),a==null||a.updatePolygonList(t,e),a==null||a.updatePointList(f),a==null||a.updateLineList(m),l==null||l.generateBoxes(t),l==null||l.generateSpheres(f),(L=w==null?void 0:w.store)==null||L.updateCurrentSegment(A),nt(t)},jt=()=>{T(void 0),q(void 0),K(void 0),Q(void 0)},nt=(t,e)=>Qt(void 0,null,function*(){var f;if(!l)return;const m=l.pointCloudObject;if(!!m)try{const A=yield l.getHighlightIndexByMappingImgList({mappingImgList:e!=null?e:z,points:m.geometry.attributes.position.array}),L=yield l==null?void 0:l.highlightOriginPointCloud(t,A);return L&&((f=a==null?void 0:a.pointCloudInstance)==null||f.updateColor(L)),L}catch(A){console.error(A)}});return{selectedID:$,pointCloudBoxList:o,pointCloudSphereList:b,displayPointCloudList:tt,displaySphereList:et,displayLineList:ot,selectedIDs:h,setPointCloudResult:i,setSelectedIDs:v,addPointCloudBox:c,addPointCloudSphere:d,setPointCloudSphereList:S,valid:F,selectedPointCloudBox:r,setPointCloudValid:P,addSelectedID:yt,addHighlightID:xt,selectedAllBoxes:Rt,topViewInstance:a,setTopViewInstance:T,sideViewInstance:Z,setSideViewInstance:q,backViewInstance:J,setBackViewInstance:K,mainViewInstance:l,setMainViewInstance:Q,polygonList:D,setPolygonList:_,rectList:C,setRectList:u,addRectIn2DView:At,removeRectIn2DView:_t,updateRectIn2DView:Vt,lineList:I,setLineList:ut,zoom:k,setZoom:ht,history:Pt,toggleAttributesVisible:Ot,hideAttributes:p,setHideAttributes:O,reRender:Ht,attrPanelLayout:W,setAttrPanelLayout:mt,syncAllViewPointCloudColor:nt,defaultAttribute:U,setDefaultAttribute:vt,pointCloudPattern:B,setPointCloudPattern:ft,selectSpecAttr:Bt,globalPattern:H,setGlobalPattern:t=>{H!==t&&(Lt(Nt),It(t),t===E.Detection&&X(void 0))},ptSegmentInstance:w,setPtSegmentInstance:X,segmentation:j,setSegmentation:bt,clearAllDetectionInstance:jt,highlight2DDataList:z,setHighlight2DDataList:Ct,cuboidBoxIn2DView:M,setCuboidBoxIn2DView:gt,imageSizes:Y,cacheImageNodeSize:St,highlightIDs:y,setHighlightIDs:R}},[F,h,o,b,D,I,C,a,Z,J,l,k,p,W,U,B,H,w,j,z,M,Y,y]);N(()=>{var r,c,d;(r=g==null?void 0:g.setPointCloudBoxList)==null||r.call(g,o),(c=g==null?void 0:g.setHighlightIDs)==null||c.call(g,y),(d=g==null?void 0:g.setSelectedIDs)==null||d.call(g,h)},[o,h,y]),N(()=>{var r;(r=g==null?void 0:g.setPtCtx)==null||r.call(g,V)},[V]);const Dt=()=>{const r=o.filter(v=>p.includes(v.attribute)),{setSelectedIDs:c,reRender:d}=V,P=r.map(v=>v.id);P.length>0&&c(h.filter(v=>!P.includes(v))),d()};return N(()=>{var r,c,d,P;Dt(),(c=(r=a==null?void 0:a.toolInstance)==null?void 0:r.setHiddenAttributes)==null||c.call(r,p),(P=(d=w==null?void 0:w.store)==null?void 0:d.setHiddenAttributes)==null||P.call(d,p)},[p]),it.createElement(dt.Provider,{value:V},s)};export{dt as PointCloudContext,Ut as PointCloudProvider};
@@ -1 +1 @@
1
- import{useContext as S,useMemo as P}from"react";import{PointCloudContext as I}from"../PointCloudContext.js";import{cTool as E}from"@labelbee/lb-annotation";import{useHistory as x}from"./useHistory.js";import{EPointCloudPattern as C}from"@labelbee/lb-utils";const{EToolName:t,EPolygonPattern:p}=E,A=()=>{const{topViewInstance:r,sideViewInstance:a,backViewInstance:u,mainViewInstance:e,setPointCloudResult:v,setPointCloudSphereList:h,setPolygonList:m,pointCloudPattern:c,setPointCloudPattern:n,syncAllViewPointCloudColor:b,globalPattern:l,setLineList:w}=S(I),{pushHistoryWithList:y}=x(),L=()=>{e==null||e.clearAllBox(),e==null||e.clearAllSphere(),e==null||e.render(),v([]),m([]),h([]),w([]),r==null||r.toolScheduler.clearStatusAndResult(),b([]),y({pointCloudBoxList:[],polygonList:[],pointCloudSphereList:[]})},i=()=>{a==null||a.toolInstance.clearResult(),u==null||u.toolInstance.clearResult()},f=d=>{if(d===c)return;const s=[r,a,u];switch(d){case t.Rect:i(),s.forEach(o=>{o==null||o.switchToCanvas(t.PointCloudPolygon),o==null||o.toolInstance.setPattern(p.Rect)}),n(t.Rect);break;case t.Polygon:i(),s.forEach(o=>{o==null||o.switchToCanvas(t.PointCloudPolygon),o==null||o.toolInstance.setPattern(p.Normal)}),n(t.Polygon);break;case t.Point:i(),s.forEach(o=>{o==null||o.switchToCanvas(t.Point)}),n(t.Point);break;case t.Line:i(),s.forEach(o=>{o==null||o.switchToCanvas(t.Line)}),n(t.Line);break}},g=P(()=>l===C.Detection,[l]),R=P(()=>l===C.Segmentation,[l]);return{clearAllResult:L,updatePointCloudPattern:f,pointCloudPattern:c,isPointCloudDetectionPattern:g,isPointCloudSegmentationPattern:R}};export{A as useStatus};
1
+ import{useContext as I,useMemo as P}from"react";import{PointCloudContext as E}from"../PointCloudContext.js";import{cTool as x}from"@labelbee/lb-annotation";import{useHistory as A}from"./useHistory.js";import{EPointCloudPattern as C}from"@labelbee/lb-utils";const{EToolName:o,EPolygonPattern:p}=x,T=()=>{const{topViewInstance:r,sideViewInstance:a,backViewInstance:u,mainViewInstance:e,setPointCloudResult:v,setPointCloudSphereList:h,setPolygonList:m,setRectList:b,pointCloudPattern:c,setPointCloudPattern:n,syncAllViewPointCloudColor:L,globalPattern:l,setLineList:w}=I(E),{pushHistoryWithList:y}=A(),f=()=>{e==null||e.clearAllBox(),e==null||e.clearAllSphere(),e==null||e.render(),v([]),m([]),h([]),w([]),b([]),r==null||r.toolScheduler.clearStatusAndResult(),L([]),y({pointCloudBoxList:[],polygonList:[],pointCloudSphereList:[]})},i=()=>{a==null||a.toolInstance.clearResult(),u==null||u.toolInstance.clearResult()},g=d=>{if(d===c)return;const s=[r,a,u];switch(d){case o.Rect:i(),s.forEach(t=>{t==null||t.switchToCanvas(o.PointCloudPolygon),t==null||t.toolInstance.setPattern(p.Rect)}),n(o.Rect);break;case o.Polygon:i(),s.forEach(t=>{t==null||t.switchToCanvas(o.PointCloudPolygon),t==null||t.toolInstance.setPattern(p.Normal)}),n(o.Polygon);break;case o.Point:i(),s.forEach(t=>{t==null||t.switchToCanvas(o.Point)}),n(o.Point);break;case o.Line:i(),s.forEach(t=>{t==null||t.switchToCanvas(o.Line)}),n(o.Line);break}},R=P(()=>l===C.Detection,[l]),S=P(()=>l===C.Segmentation,[l]);return{clearAllResult:f,updatePointCloudPattern:g,pointCloudPattern:c,isPointCloudDetectionPattern:R,isPointCloudSegmentationPattern:S}};export{T as useStatus};
@@ -1 +1 @@
1
- import{getClassName as n}from"../../utils/dom.js";import t,{useContext as I,useState as T,useEffect as p}from"react";import y from"./PointCloud3DView.js";import k from"./PointCloudBackView.js";import B from"./PointCloudTopView.js";import F from"./PointCloudSideView.js";import _ from"./PointCloud2DView.js";import R from"./PointCloudListener.js";import M from"./PointCloudSegmentListener.js";import G from"./PointCloudSegment.js";import O from"./PointCloudSegmentStatus.js";import Z from"./PointCloudSegmentToolbar.js";import U from"./PointCloudSegment2DView.js";import{connect as W}from"react-redux";import{LabelBeeContext as $,useDispatch as q}from"../../store/ctx.js";import{AnnotatedAttributesPanelFixedLeft as z,AnnotatedAttributesPanelFixedRight as H}from"../../views/MainView/toolFooter/AnnotatedAttributes/index.js";import{PointCloudContext as J}from"./PointCloudContext.js";import{PointCloudUtils as K,EPointCloudPattern as Q}from"@labelbee/lb-utils";import{useCustomToolInstance as X}from"../../hooks/annotation.js";import{jsonParser as Y}from"../../utils/index.js";import{a2MapStateToProps as tt}from"../../store/annotation/map.js";import g from"classnames";import et from"./components/sideAndBackOverView/index.js";import{SetLoadPCDFileLoading as ot}from"../../store/annotation/actionCreators.js";const nt=E=>{const{currentData:a,imgList:L,drawLayerSlot:c,checkMode:i,intelligentFit:S,imgIndex:w,config:x,measureVisible:b}=E,e=I(J),{globalPattern:d,setGlobalPattern:j,selectedIDs:C}=e,v=q(),[l,P]=T(!1),V=(C==null?void 0:C.length)>0&&l,h=Y(a.result),{toolInstanceRef:r,clearToolInstance:D}=X({basicInfo:h});if(p(()=>{r.current.setPointCloudGlobalPattern=o=>{o!==d&&(j(o),e.clearAllDetectionInstance(),D())}},[d]),p(()=>{var o;if(ot(v,!0),a){const{boxParamsList:s,polygonList:m,lineList:u,sphereParamsList:A,segmentation:N}=K.parsePointCloudCurrentResult((o=a==null?void 0:a.result)!=null?o:"");e.setPointCloudResult(s),e.setPolygonList(m),e.setLineList(u),e.setPointCloudSphereList(A),e.setSegmentation(N)}},[w]),p(()=>{r.current.exportData=()=>[e.pointCloudBoxList,{valid:e.valid}],r.current.exportCustomData=()=>{var o,s,m,u;return{resultPolygon:(o=e.polygonList)!=null?o:[],resultLine:(s=e.lineList)!=null?s:[],resultPoint:(m=e.pointCloudSphereList)!=null?m:[],segmentation:(u=e.segmentation)!=null?u:[]}}},[e.pointCloudBoxList,e.valid,e.polygonList,e.lineList,e.pointCloudSphereList,e.ptSegmentInstance,e.segmentation]),L.length===0)return null;if(d===Q.Segmentation)return t.createElement(t.Fragment,null,t.createElement(M,{checkMode:i,toolInstanceRef:r}),t.createElement(Z,null),t.createElement("div",{className:n("point-cloud-layout")},t.createElement(G,{checkMode:i}),t.createElement(U,null)),t.createElement(O,{config:x}),c==null?void 0:c({direct:!0}));let f=t.createElement("div",{className:n("point-cloud-container","left-bottom")},t.createElement(k,{checkMode:i}),t.createElement(F,{checkMode:i}));return l&&(f=t.createElement(et,{selectAndEnlarge:V,checkMode:i})),t.createElement(t.Fragment,null,t.createElement(R,{checkMode:i,toolInstanceRef:r}),t.createElement("div",{className:n("point-cloud-layout"),onContextMenu:o=>o.preventDefault()},t.createElement("div",{className:n("point-cloud-wrapper")},t.createElement(z,null),t.createElement("div",{className:n("point-cloud-content")},t.createElement("div",{className:n("point-cloud-container","left")},t.createElement(y,null),f),t.createElement("div",{className:g({[n("point-cloud-container","right")]:!0,[n("point-cloud-container","rightZoom")]:l})},t.createElement(B,{drawLayerSlot:c,checkMode:i,intelligentFit:S,setIsEnlargeTopView:P,onExitZoom:()=>{P(!1)},isEnlargeTopView:l}),t.createElement("div",{className:g({[n("point-cloud-container","right-bottom")]:!l,[n("point-cloud-container","right-bottom-floatLeft")]:l})},t.createElement(_,{isEnlargeTopView:l,thumbnailWidth:l?300:455,checkMode:i,measureVisible:b})))),t.createElement(H,null))))};var it=W(tt,null,null,{context:$})(nt);export{it as default};
1
+ import{getClassName as n}from"../../utils/dom.js";import t,{useContext as T,useState as y,useEffect as C}from"react";import _ from"./PointCloud3DView.js";import k from"./PointCloudBackView.js";import B from"./PointCloudTopView.js";import F from"./PointCloudSideView.js";import R from"./PointCloud2DView.js";import M from"./PointCloudListener.js";import G from"./PointCloudSegmentListener.js";import O from"./PointCloudSegment.js";import Z from"./PointCloudSegmentStatus.js";import U from"./PointCloudSegmentToolbar.js";import W from"./PointCloudSegment2DView.js";import{connect as $}from"react-redux";import{LabelBeeContext as q,useDispatch as z}from"../../store/ctx.js";import{AnnotatedAttributesPanelFixedLeft as H,AnnotatedAttributesPanelFixedRight as J}from"../../views/MainView/toolFooter/AnnotatedAttributes/index.js";import{PointCloudContext as K}from"./PointCloudContext.js";import{PointCloudUtils as Q,EPointCloudPattern as X}from"@labelbee/lb-utils";import{useCustomToolInstance as Y}from"../../hooks/annotation.js";import{jsonParser as tt}from"../../utils/index.js";import{a2MapStateToProps as et}from"../../store/annotation/map.js";import L from"classnames";import ot from"./components/sideAndBackOverView/index.js";import{SetLoadPCDFileLoading as nt}from"../../store/annotation/actionCreators.js";const it=E=>{const{currentData:a,imgList:S,drawLayerSlot:d,checkMode:i,intelligentFit:w,imgIndex:x,config:b,measureVisible:j}=E,e=T(K),{globalPattern:p,setGlobalPattern:v,selectedIDs:P}=e,V=z(),[l,f]=y(!1),h=(P==null?void 0:P.length)>0&&l,D=tt(a.result),{toolInstanceRef:r,clearToolInstance:A}=Y({basicInfo:D});if(C(()=>{r.current.setPointCloudGlobalPattern=o=>{o!==p&&(v(o),e.clearAllDetectionInstance(),A())}},[p]),C(()=>{var o;if(nt(V,!0),a){const{boxParamsList:s,polygonList:m,lineList:u,sphereParamsList:c,segmentation:N,rectList:I}=Q.parsePointCloudCurrentResult((o=a==null?void 0:a.result)!=null?o:"");e.setPointCloudResult(s),e.setPolygonList(m),e.setLineList(u),e.setPointCloudSphereList(c),e.setRectList(I),e.setSegmentation(N)}},[x]),C(()=>{r.current.exportData=()=>[e.pointCloudBoxList,{valid:e.valid}],r.current.exportCustomData=()=>{var o,s,m,u,c;return{resultPolygon:(o=e.polygonList)!=null?o:[],resultLine:(s=e.lineList)!=null?s:[],resultPoint:(m=e.pointCloudSphereList)!=null?m:[],resultRect:(u=e.rectList)!=null?u:[],segmentation:(c=e.segmentation)!=null?c:[]}}},[e.pointCloudBoxList,e.rectList,e.valid,e.polygonList,e.lineList,e.pointCloudSphereList,e.ptSegmentInstance,e.segmentation]),S.length===0)return null;if(p===X.Segmentation)return t.createElement(t.Fragment,null,t.createElement(G,{checkMode:i,toolInstanceRef:r}),t.createElement(U,null),t.createElement("div",{className:n("point-cloud-layout")},t.createElement(O,{checkMode:i}),t.createElement(W,null)),t.createElement(Z,{config:b}),d==null?void 0:d({direct:!0}));let g=t.createElement("div",{className:n("point-cloud-container","left-bottom")},t.createElement(k,{checkMode:i}),t.createElement(F,{checkMode:i}));return l&&(g=t.createElement(ot,{selectAndEnlarge:h,checkMode:i})),t.createElement(t.Fragment,null,t.createElement(M,{checkMode:i,toolInstanceRef:r}),t.createElement("div",{className:n("point-cloud-layout"),onContextMenu:o=>o.preventDefault()},t.createElement("div",{className:n("point-cloud-wrapper")},t.createElement(H,null),t.createElement("div",{className:n("point-cloud-content")},t.createElement("div",{className:n("point-cloud-container","left")},t.createElement(_,null),g),t.createElement("div",{className:L({[n("point-cloud-container","right")]:!0,[n("point-cloud-container","rightZoom")]:l})},t.createElement(B,{drawLayerSlot:d,checkMode:i,intelligentFit:w,setIsEnlargeTopView:f,onExitZoom:()=>{f(!1)},isEnlargeTopView:l}),t.createElement("div",{className:L({[n("point-cloud-container","right-bottom")]:!l,[n("point-cloud-container","right-bottom-floatLeft")]:l})},t.createElement(R,{isEnlargeTopView:l,thumbnailWidth:l?300:455,checkMode:i,measureVisible:j})))),t.createElement(J,null))))};var lt=$(et,null,null,{context:q})(it);export{lt as default};
package/es/index.css CHANGED
@@ -132,6 +132,12 @@
132
132
  .index-module_outputDisplay__5dS48 .index-module_content__Iml6l .markdown-body {
133
133
  font-size: 14px;
134
134
  }
135
+
136
+ .index-module_tip__NFru6 {
137
+ margin-bottom: 8px;
138
+ color: rgba(0, 0, 0, 0.45);
139
+ font-size: 14px;
140
+ }
135
141
  .index-module_tagList__cvWor {
136
142
  padding: 0px 16px 16px 16px;
137
143
  }
@@ -1 +1 @@
1
- import{getFormatSize as At}from"../../components/customResizeHook/index.js";import{ESubmitType as K}from"../../constant/index.js";import Dt from"../../constant/styleString.js";import{ANNOTATION_ACTIONS as l}from"../Actions.js";import{jsonParser as w}from"../../utils/index.js";import Y from"../../utils/AnnotationDataUtils.js";import{ConfigUtils as vt}from"../../utils/ConfigUtils.js";import{composeResultWithBasicImgInfo as ut,composeResult as J}from"../../utils/data.js";import O from"../../utils/StepUtils.js";import X from"../../utils/ToolUtils.js";import{MathUtils as at,CommonToolUtils as yt,AnnotationEngine as Pt,ImgUtils as Rt}from"@labelbee/lb-annotation";import{PointCloudUtils as ct,i18n as G}from"@labelbee/lb-utils";import{Modal as dt}from"antd";import{message as pt}from"antd/es";import _t from"lodash";import{SetAnnotationLoading as $}from"./actionCreators.js";import{EToolName as W}from"../../data/enums/ToolType.js";var Ct=Object.defineProperty,Ot=Object.defineProperties,ht=Object.getOwnPropertyDescriptors,gt=Object.getOwnPropertySymbols,bt=Object.prototype.hasOwnProperty,Nt=Object.prototype.propertyIsEnumerable,It=(t,e,r)=>e in t?Ct(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,n=(t,e)=>{for(var r in e||(e={}))bt.call(e,r)&&It(t,r,e[r]);if(gt)for(var r of gt(e))Nt.call(e,r)&&It(t,r,e[r]);return t},i=(t,e)=>Ot(t,ht(e)),mt=(t,e,r)=>new Promise((S,d)=>{var A=m=>{try{T(r.next(m))}catch(y){d(y)}},f=m=>{try{T(r.throw(m))}catch(y){d(y)}},T=m=>m.done?S(m.value):Promise.resolve(m.value).then(A,f);T((r=r.apply(t,e)).next())});const x=(t,e)=>t.find(r=>r.step===e),ft={annotationEngine:null,toolInstance:null,imgList:[],config:"{}",imgIndex:-1,basicIndex:0,imgPageSize:1,step:1,stepList:[],imgNode:new Image,basicResultList:[],resultList:[],stepProgress:0,loading:!1,loadPCDFileLoading:!0,triggerEventAfterIndexChanged:!1,pointCloudLoading:!1,checkMode:!1,predictionResult:[],predictionResultVisible:!1,highlightAttribute:""},Ut=t=>{const{imgList:e,imgPageSize:r}=t;return Math.ceil(e.length/r)},Tt=(t,e)=>t.reduce((r,S)=>{if(S){const d=S.result;if(w(d)[`step_${e}`])return r+1}return r},0)/t.length,Bt=(t,e)=>{const{step:r,stepList:S}=t,d=O.getCurrentStepInfo(r,S),A=vt.jsonParser(d.config);if(X.isVideoTool(d==null?void 0:d.tool)||X.isAudioTool(d==null?void 0:d.tool)||X.isPointCloudTool(d==null?void 0:d.tool)||[W.LLM,W.NLP].includes(d==null?void 0:d.tool))return;const f=document.getElementById("toolContainer");if(!f)throw"Not exist dom named id-toolContainer";const T=At({width:window.innerWidth,height:window.innerHeight}),m=new Pt({container:f,toolName:d.tool,size:T,imgNode:e,config:A,style:JSON.parse(Dt)});return{toolInstance:m==null?void 0:m.toolInstance,annotationEngine:m}},wt=(t,e)=>(r,S)=>mt(void 0,null,function*(){var d,A;const{stepList:f,step:T}=S().annotation,m=O.currentToolIsVideo(T,f),y=O.currentToolIsPointCloud(T,f),h=((d=O.getCurrentStepInfo(T,f))==null?void 0:d.tool)===W.LLM,b=((A=O.getCurrentStepInfo(T,f))==null?void 0:A.tool)===W.NLP,N=O.currentToolIsAudio(T,f);if($(r,!0),yield r(xt(t)),m){r(Ft(t));return}if(y||h||N||b){r(jt(t));return}r(Gt(t,e))}),xt=t=>(e,r)=>mt(void 0,null,function*(){const{getFileData:S,imgList:d}=r().annotation;if(S){const A=yield S(d[t],t);e({type:l.SET_FILE_DATA,payload:{fileData:A,index:t}})}}),Ft=t=>e=>{e({type:l.LOAD_FILE_DATA,payload:{nextIndex:t}})},jt=t=>e=>{$(e,!1),e({type:l.LOAD_FILE_DATA,payload:{nextIndex:t}})},Gt=(t,e)=>(r,S)=>{var d;const{toolInstance:A,imgList:f}=S().annotation,T=(d=f==null?void 0:f[t])==null?void 0:d.url;Rt.load(T).then(m=>{$(r,!1),r({type:l.LOAD_FILE_DATA,payload:{imgNode:m,nextIndex:t,nextBasicIndex:e}})}).catch(()=>{$(r,!1),A==null||A.setErrorImg(),r({type:l.LOAD_FILE_DATA,payload:{nextIndex:t,nextBasicIndex:e}})})},Vt=({toolInstance:t,imgList:e,imgIndex:r,stepList:S,step:d=1})=>{var A,f,T,m;const y=((A=e[r])==null?void 0:A.result)||"",[h,b,N]=(f=t==null?void 0:t.exportData())!=null?f:[],V=(m=(T=t==null?void 0:t.exportCustomData)==null?void 0:T.call(t))!=null?m:{},M=ut(y,b),k=J(M,{step:d,stepList:S},{rect:h},V);return e.map((F,H)=>H===r?n(i(n({},F),{result:k}),N):n({},F))},Mt=(t=n({},ft),e)=>{var r,S,d,A,f,T,m,y,h,b,N,V,M,k,F,H,q,Z,Q,tt,et,ot,nt,st,lt;switch(e.type){case l.INIT_ALL_STATE:return n(n({},t),ft);case l.UPDATE_TOOL_INSTANCE:return i(n({},t),{toolInstance:e.payload.toolInstance});case l.UPDATE_IMG_LIST:return i(n({},t),{imgList:e.payload.imgList});case l.CALC_STEP_PROGRESS:{const{imgList:o,step:s}=t,u=Tt(o,s);return i(n({},t),{stepProgress:u})}case l.SUBMIT_FILE_DATA:{const{imgList:o,imgIndex:s,step:u,stepList:a,toolInstance:p,onSubmit:c,resultList:L}=t;if(!p||!o[s])return t;const g=((r=o[s])==null?void 0:r.result)||"",[,_,I]=(S=p==null?void 0:p.exportData())!=null?S:[],E=(A=(d=p==null?void 0:p.exportCustomData)==null?void 0:d.call(p))!=null?A:{},D=ut(g,_),P=J(D,{step:u,stepList:a},{rect:L},E),v=t.imgList.map((C,R)=>{if(R===s){const j=Y.dataCorrection(P,g,u,a);return n(i(n({},C),{result:j}),I)}return C});if(((f=e.payload)==null?void 0:f.submitType)===K.SyncImgList)return i(n({},t),{imgList:v});c&&c([v[s]],(T=e.payload)==null?void 0:T.submitType,s,v);const U=Tt(v,u);return i(n({},t),{stepProgress:U,imgList:v})}case l.SAVE_RESULT:{const{imgList:o,imgIndex:s,onSave:u}=t;return u==null||u(o[s],s,o),n({},t)}case l.SUBMIT_RESULT:{const{imgList:o,basicIndex:s,resultList:u,toolInstance:a,basicResultList:p}=t;if(!a)return t;const[c]=(m=a==null?void 0:a.exportData())!=null?m:[];let L=c;if((p==null?void 0:p.length)>0){const g=(y=p[s])==null?void 0:y.id,_=c.map(I=>i(n({},I),{sourceID:g}));L=_t.cloneDeep(u).filter(I=>I.sourceID!==g),L.push(..._)}return i(n({},t),{resultList:L,imgList:o})}case l.SET_BASIC_INDEX:{const{toolInstance:o,step:s,imgList:u,imgIndex:a,stepList:p,annotationEngine:c,resultList:L,basicResultList:g}=t;if(!o||!c)return t;const _=e.payload.basicIndex,I=(h=g[_])==null?void 0:h.id,E=w((b=u[a])==null?void 0:b.result),D=(L||[]).filter(j=>j.sourceID===I),P=x(p,s),{dataSourceStep:v,tool:U}=P,C=x(p,v);let R=[];return v&&U&&(R=(N=E[`step_${v}`])==null?void 0:N.result,(R==null?void 0:R.length)>0?(c==null||c.setBasicInfo(C.tool,R[_]),c==null||c.launchOperation()):(c==null||c.setBasicInfo(C.tool),c==null||c.forbidOperation(),pt.info(G.t("NoDependency")))),o==null||o.setResult(D),o==null||o.history.initRecord(D,!0),i(n({},t),{basicIndex:_})}case l.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED:{const{triggerEventAfterIndexChanged:o}=e.payload;return i(n({},t),{triggerEventAfterIndexChanged:!!o})}case l.LOAD_FILE_DATA:{const{imgList:o,step:s,toolInstance:u,annotationEngine:a,stepList:p}=t;if(!u)return i(n({},t),{imgIndex:e.payload.nextIndex});const c=O.getCurrentStepInfo(s,p),{nextIndex:L,imgNode:g,nextBasicIndex:_,imgError:I}=e.payload,E=_!=null?_:0,D=w((V=o[L])==null?void 0:V.result),P=D[`step_${c.step}`],v=!P,U={rotate:(M=D.rotate)!=null?M:0,valid:(k=D.valid)!=null?k:!0};g&&I!==!0?a==null||a.setImgNode(g,U):u==null||u.setValid(U.valid);const C=x(p,c.step),{dataSourceStep:R,tool:j}=C,it=x(p,R),rt=R&&j,B=(H=(F=D[`step_${R}`])==null?void 0:F.result)!=null?H:[],z=Y.getInitialResultList(P==null?void 0:P.result,u,C,B,v);if(a==null||a.launchOperation(),rt&&((B==null?void 0:B.length)>0?a==null||a.setBasicInfo(it.tool,B[E]):(a==null||a.setBasicInfo(it.tool),a==null||a.forbidOperation(),pt.info(G.t("NoDependency")))),c.tool!=="check"){const Lt=(Z=(q=B[E])==null?void 0:q.id)!=null?Z:"",Et=rt?z.filter(St=>yt.isSameSourceID(St.sourceID,Lt)):z;(Q=u==null?void 0:u.history)==null||Q.initRecord(z,!0),u==null||u.setResult(Et)}return i(n({},t),{imgIndex:L,basicIndex:E,basicResultList:B,resultList:z})}case l.UPDATE_ANNOTATION_CONFIG:return i(n({},t),{config:(tt=e.payload.config)!=null?tt:"{}"});case l.SET_TASK_STEP_LIST:{const{stepList:o}=e.payload;return i(n({},t),{stepList:o})}case l.SET_TASK_CONFIG:{const{stepList:o,step:s}=e.payload;return i(n({},t),{stepList:o,step:s})}case l.INIT_TOOL:{const{imgNode:o}=t,s=Bt(t,o);if(s){const{toolInstance:u,annotationEngine:a}=s;return i(n({},t),{toolInstance:u,annotationEngine:a})}return n({},t)}case l.SET_TOOL:{const o=(et=e.payload)==null?void 0:et.instance;return o?i(n({},t),{toolInstance:o}):n({},t)}case l.UPDATE_ON_SUBMIT:return i(n({},t),{onSubmit:e.payload.onSubmit});case l.UPDATE_ON_SAVE:return i(n({},t),{onSave:e.payload.onSave});case l.UPDATE_ON_PAGE_CHANGE:return i(n({},t),{onPageChange:e.payload.onPageChange});case l.SET_PREDICT_RESULT:return i(n({},t),{predictionResult:e.payload.result});case l.SET_PREDICT_RESULT_VISIBLE:return i(n({},t),{predictionResultVisible:e.payload.visible});case l.UPDATE_ON_STEP_CHANGE:return i(n({},t),{onStepChange:e.payload.onStepChange});case l.UPDATE_GET_FILE_DATA:return i(n({},t),{getFileData:e.payload.getFileData});case l.UPDATE_PAGE_SIZE:return i(n({},t),{pageSize:e.payload.pageSize});case l.UPDATE_LOAD_FILE_LIST:return i(n({},t),{loadFileList:e.payload.loadFileList});case l.UPDATE_BEFORE_ROTATE:return i(n({},t),{beforeRotate:e.payload.beforeRotate});case l.UPDATE_PRE_DATA_PROCESS:return i(n({},t),{preDataProcess:e.payload.preDataProcess});case l.SKIP_BEFORE_PAGE_TURNING:return i(n({},t),{skipBeforePageTurning:e.payload.skipBeforePageTurning});case l.SET_FILE_DATA:{const{fileData:o,index:s}=e.payload,{imgList:u}=t,a=[...u];return a[s]=n(n({},a[s]),o),i(n({},t),{imgList:a})}case l.UPDATE_ROTATE:{const{toolInstance:o,beforeRotate:s}=t;return s&&s()===!1||(ot=o==null?void 0:o.updateRotate)==null||ot.call(o),t}case l.UPDATE_ANNOTATION_VALID:{const{toolInstance:o}=t,s=(nt=o==null?void 0:o.valid)!=null?nt:!0;return dt.destroyAll(),dt.confirm({content:G.t(s?"updateValidFromValidToInValid":"updateValidFromInValidToValid"),onOk:()=>{o==null||o.setValid(!s)},okText:G.t("Confirm"),cancelText:G.t("Cancel")}),t}case l.COPY_BACKWARD_RESULT:{const{toolInstance:o,imgIndex:s,imgList:u,step:a}=t;if(!o)return t;if(s===0||s>=u.length)return console.error("\u65E0\u6CD5\u590D\u5236\u8FB9\u754C\u5916\u7684\u5185\u5BB9"),t;const p=u[s-1].result;if(!p)return t;const c=Y.copyResultChange(p,a,(st=u[s].result)!=null?st:"");u[s]=i(n({},u[s]),{result:c});const g=w(c)[`step_${a}`],_=(g==null?void 0:g.result)||[];return o==null||o.setResult(_),o==null||o.history.pushHistory(_),(lt=o==null?void 0:o.asyncData)==null||lt.call(o,u[s]),i(n({},t),{imgList:[...u]})}case l.SET_STEP:{const{stepList:o,annotationEngine:s}=t,{toStep:u}=e.payload;if(!s)return t;const a=x(o,u);return s==null||s.setToolName(a.tool,a.config),i(n({},t),{step:u,toolInstance:s==null?void 0:s.toolInstance})}case l.SET_LOADPCDFILE_LOADING:{const{loadPCDFileLoading:o}=e.payload;return i(n({},t),{loadPCDFileLoading:!!o})}case l.SET_LOADING:{const{loading:o}=e.payload;return i(n({},t),{loading:!!o})}case l.SET_POINT_CLOUD_LOADING:{const{pointCloudLoading:o}=e.payload;return i(n({},t),{pointCloudLoading:!!o})}case l.SET_CHECK_MODE:{const{checkMode:o}=e.payload;return i(n({},t),{checkMode:!!o})}case l.SET_HIGHLIGHT_ATTRIBUTE:{const{attribute:o}=e.payload;return i(n({},t),{highlightAttribute:o})}case l.BATCH_UPDATE_TRACK_ID:{const{id:o,newID:s,rangeIndex:u,imgList:a}=e.payload,{imgIndex:p,onSubmit:c}=t,L=[],g=a.map((_,I)=>{if(at.isInRange(I,u)){const E=i(n({},_),{result:ct.batchUpdateTrackID({id:o,newID:s,result:_.result})});return L.push({imgIndex:I,newInfo:E}),E}return _});return c&&c([g[p]],K.BatchUpdateTrackID,p,g,{updateImgList:L}),i(n({},t),{imgList:g})}case l.BATCH_UPDATE_RESULT_BY_TRACK_ID:{const{id:o,newData:s,rangeIndex:u}=e.payload,{imgList:a,imgIndex:p,onSubmit:c}=t,L=[],g=a.map((_,I)=>{if(at.isInRange(I,u)){const E=i(n({},_),{result:ct.batchUpdateResultByTrackID({id:o,newData:s,result:_.result})});return L.push({imgIndex:I,newInfo:E}),E}return _});return c&&c([g[p]],K.BatchUpdateTrackID,p,g,{updateImgList:L}),i(n({},t),{imgList:g})}case l.BATCH_UPDATE_IMG_LIST_RESULT_BY_PREDICT_RESULT:{const{onSubmit:o,imgList:s,stepList:u,step:a,predictionResult:p}=t,c={};p.forEach(I=>{const{index:E}=I;c[E]=_t.pick(I,["center","width","height","depth","rotation","id","attribute","valid","trackID"])});const L=`step_${a}`,g=[],_=s.map((I,E)=>{if(c[E]){const D=I.result==="{}"?w(J("",{step:a,stepList:u},{rect:[]},{})):w(I.result);D[L].result.push(c[E]);const P=i(n({},I),{result:JSON.stringify(D)});return g.push({imgIndex:E,newInfo:P}),P}return I});return o==null||o(_,K.BatchUpdateImgList,-1,_,{updateImgList:g}),i(n({},t),{imgList:_})}default:return t}};export{wt as LoadFileAndFileData,Mt as annotationReducer,Vt as composeResultByToolInstance,x as getStepConfig,Ut as getTotalPage};
1
+ import{getFormatSize as At}from"../../components/customResizeHook/index.js";import{ESubmitType as K}from"../../constant/index.js";import Dt from"../../constant/styleString.js";import{ANNOTATION_ACTIONS as i}from"../Actions.js";import{jsonParser as w}from"../../utils/index.js";import Y from"../../utils/AnnotationDataUtils.js";import{ConfigUtils as vt}from"../../utils/ConfigUtils.js";import{composeResultWithBasicImgInfo as ut,composeResult as J}from"../../utils/data.js";import O from"../../utils/StepUtils.js";import X from"../../utils/ToolUtils.js";import{MathUtils as at,CommonToolUtils as yt,AnnotationEngine as Pt,ImgUtils as Rt}from"@labelbee/lb-annotation";import{PointCloudUtils as ct,i18n as G}from"@labelbee/lb-utils";import{Modal as dt}from"antd";import{message as pt}from"antd/es";import _t from"lodash";import{SetAnnotationLoading as $}from"./actionCreators.js";import{EToolName as W}from"../../data/enums/ToolType.js";var Ct=Object.defineProperty,Ot=Object.defineProperties,ht=Object.getOwnPropertyDescriptors,gt=Object.getOwnPropertySymbols,bt=Object.prototype.hasOwnProperty,Nt=Object.prototype.propertyIsEnumerable,It=(t,e,r)=>e in t?Ct(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,n=(t,e)=>{for(var r in e||(e={}))bt.call(e,r)&&It(t,r,e[r]);if(gt)for(var r of gt(e))Nt.call(e,r)&&It(t,r,e[r]);return t},l=(t,e)=>Ot(t,ht(e)),mt=(t,e,r)=>new Promise((S,d)=>{var A=m=>{try{T(r.next(m))}catch(y){d(y)}},f=m=>{try{T(r.throw(m))}catch(y){d(y)}},T=m=>m.done?S(m.value):Promise.resolve(m.value).then(A,f);T((r=r.apply(t,e)).next())});const x=(t,e)=>t.find(r=>r.step===e),ft={annotationEngine:null,toolInstance:null,imgList:[],config:"{}",imgIndex:-1,basicIndex:0,imgPageSize:1,step:1,stepList:[],imgNode:new Image,basicResultList:[],resultList:[],stepProgress:0,loading:!1,loadPCDFileLoading:!0,triggerEventAfterIndexChanged:!1,pointCloudLoading:!1,checkMode:!1,predictionResult:[],predictionResultVisible:!1,highlightAttribute:""},Ut=t=>{const{imgList:e,imgPageSize:r}=t;return Math.ceil(e.length/r)},Tt=(t,e)=>t.reduce((r,S)=>{if(S){const d=S.result;if(w(d)[`step_${e}`])return r+1}return r},0)/t.length,Bt=(t,e)=>{const{step:r,stepList:S}=t,d=O.getCurrentStepInfo(r,S),A=vt.jsonParser(d.config);if(X.isVideoTool(d==null?void 0:d.tool)||X.isAudioTool(d==null?void 0:d.tool)||X.isPointCloudTool(d==null?void 0:d.tool)||[W.LLM,W.NLP].includes(d==null?void 0:d.tool))return;const f=document.getElementById("toolContainer");if(!f)throw"Not exist dom named id-toolContainer";const T=At({width:window.innerWidth,height:window.innerHeight}),m=new Pt({container:f,toolName:d.tool,size:T,imgNode:e,config:A,style:JSON.parse(Dt)});return{toolInstance:m==null?void 0:m.toolInstance,annotationEngine:m}},wt=(t,e)=>(r,S)=>mt(void 0,null,function*(){var d,A;const{stepList:f,step:T}=S().annotation,m=O.currentToolIsVideo(T,f),y=O.currentToolIsPointCloud(T,f),h=((d=O.getCurrentStepInfo(T,f))==null?void 0:d.tool)===W.LLM,b=((A=O.getCurrentStepInfo(T,f))==null?void 0:A.tool)===W.NLP,N=O.currentToolIsAudio(T,f);if($(r,!0),yield r(xt(t)),m){r(Ft(t));return}if(y||h||N||b){r(jt(t));return}r(Gt(t,e))}),xt=t=>(e,r)=>mt(void 0,null,function*(){const{getFileData:S,imgList:d}=r().annotation;if(S){const A=yield S(d[t],t);e({type:i.SET_FILE_DATA,payload:{fileData:A,index:t}})}}),Ft=t=>e=>{e({type:i.LOAD_FILE_DATA,payload:{nextIndex:t}})},jt=t=>e=>{$(e,!1),e({type:i.LOAD_FILE_DATA,payload:{nextIndex:t}})},Gt=(t,e)=>(r,S)=>{var d;const{toolInstance:A,imgList:f}=S().annotation,T=(d=f==null?void 0:f[t])==null?void 0:d.url;Rt.load(T).then(m=>{$(r,!1),r({type:i.LOAD_FILE_DATA,payload:{imgNode:m,nextIndex:t,nextBasicIndex:e}})}).catch(()=>{$(r,!1),A==null||A.setErrorImg(),r({type:i.LOAD_FILE_DATA,payload:{nextIndex:t,nextBasicIndex:e}})})},Vt=({toolInstance:t,imgList:e,imgIndex:r,stepList:S,step:d=1})=>{var A,f,T,m;const y=((A=e[r])==null?void 0:A.result)||"",[h,b,N]=(f=t==null?void 0:t.exportData())!=null?f:[],V=(m=(T=t==null?void 0:t.exportCustomData)==null?void 0:T.call(t))!=null?m:{},M=ut(y,b),k=J(M,{step:d,stepList:S},{rect:h},V);return e.map((F,H)=>H===r?n(l(n({},F),{result:k}),N):n({},F))},Mt=(t=n({},ft),e)=>{var r,S,d,A,f,T,m,y,h,b,N,V,M,k,F,H,q,Z,Q,tt,et,ot,nt,st,lt;switch(e.type){case i.INIT_ALL_STATE:return n(n({},t),ft);case i.UPDATE_TOOL_INSTANCE:return l(n({},t),{toolInstance:e.payload.toolInstance});case i.UPDATE_IMG_LIST:return l(n({},t),{imgList:e.payload.imgList});case i.CALC_STEP_PROGRESS:{const{imgList:o,step:s}=t,u=Tt(o,s);return l(n({},t),{stepProgress:u})}case i.SUBMIT_FILE_DATA:{const{imgList:o,imgIndex:s,step:u,stepList:a,toolInstance:p,onSubmit:c,resultList:L}=t;if(!p||!o[s])return t;const g=((r=o[s])==null?void 0:r.result)||"",[,_,I]=(S=p==null?void 0:p.exportData())!=null?S:[],E=(A=(d=p==null?void 0:p.exportCustomData)==null?void 0:d.call(p))!=null?A:{},D=ut(g,_),P=J(D,{step:u,stepList:a},{rect:L},E),v=t.imgList.map((C,R)=>{if(R===s){const j=Y.dataCorrection(P,g,u,a);return n(l(n({},C),{result:j}),I)}return C});if(((f=e.payload)==null?void 0:f.submitType)===K.SyncImgList)return l(n({},t),{imgList:v});c&&c([v[s]],(T=e.payload)==null?void 0:T.submitType,s,v);const U=Tt(v,u);return l(n({},t),{stepProgress:U,imgList:v})}case i.SAVE_RESULT:{const{imgList:o,imgIndex:s,onSave:u}=t;return u==null||u(o[s],s,o),n({},t)}case i.SUBMIT_RESULT:{const{imgList:o,basicIndex:s,resultList:u,toolInstance:a,basicResultList:p}=t;if(!a)return t;const[c]=(m=a==null?void 0:a.exportData())!=null?m:[];let L=c;if((p==null?void 0:p.length)>0){const g=(y=p[s])==null?void 0:y.id,_=c.map(I=>l(n({},I),{sourceID:g}));L=_t.cloneDeep(u).filter(I=>I.sourceID!==g),L.push(..._)}return l(n({},t),{resultList:L,imgList:o})}case i.SET_BASIC_INDEX:{const{toolInstance:o,step:s,imgList:u,imgIndex:a,stepList:p,annotationEngine:c,resultList:L,basicResultList:g}=t;if(!o||!c)return t;const _=e.payload.basicIndex,I=(h=g[_])==null?void 0:h.id,E=w((b=u[a])==null?void 0:b.result),D=(L||[]).filter(j=>j.sourceID===I),P=x(p,s),{dataSourceStep:v,tool:U}=P,C=x(p,v);let R=[];return v&&U&&(R=(N=E[`step_${v}`])==null?void 0:N.result,(R==null?void 0:R.length)>0?(c==null||c.setBasicInfo(C.tool,R[_]),c==null||c.launchOperation()):(c==null||c.setBasicInfo(C.tool),c==null||c.forbidOperation(),pt.info(G.t("NoDependency")))),o==null||o.setResult(D),o==null||o.history.initRecord(D,!0),l(n({},t),{basicIndex:_})}case i.SET_TRIGGER_EVENT_AFTER_INDEX_CHANGED:{const{triggerEventAfterIndexChanged:o}=e.payload;return l(n({},t),{triggerEventAfterIndexChanged:!!o})}case i.LOAD_FILE_DATA:{const{imgList:o,step:s,toolInstance:u,annotationEngine:a,stepList:p}=t;if(!u)return l(n({},t),{imgIndex:e.payload.nextIndex});const c=O.getCurrentStepInfo(s,p),{nextIndex:L,imgNode:g,nextBasicIndex:_,imgError:I}=e.payload,E=_!=null?_:0,D=w((V=o[L])==null?void 0:V.result),P=D[`step_${c.step}`],v=!P,U={rotate:(M=D.rotate)!=null?M:0,valid:(k=D.valid)!=null?k:!0};g&&I!==!0?a==null||a.setImgNode(g,U):u==null||u.setValid(U.valid);const C=x(p,c.step),{dataSourceStep:R,tool:j}=C,it=x(p,R),rt=R&&j,B=(H=(F=D[`step_${R}`])==null?void 0:F.result)!=null?H:[],z=Y.getInitialResultList(P==null?void 0:P.result,u,C,B,v);if(a==null||a.launchOperation(),rt&&((B==null?void 0:B.length)>0?a==null||a.setBasicInfo(it.tool,B[E]):(a==null||a.setBasicInfo(it.tool),a==null||a.forbidOperation(),pt.info(G.t("NoDependency")))),c.tool!=="check"){const Lt=(Z=(q=B[E])==null?void 0:q.id)!=null?Z:"",Et=rt?z.filter(St=>yt.isSameSourceID(St.sourceID,Lt)):z;(Q=u==null?void 0:u.history)==null||Q.initRecord(z,!0),u==null||u.setResult(Et)}return l(n({},t),{imgIndex:L,basicIndex:E,basicResultList:B,resultList:z})}case i.UPDATE_ANNOTATION_CONFIG:return l(n({},t),{config:(tt=e.payload.config)!=null?tt:"{}"});case i.SET_TASK_STEP_LIST:{const{stepList:o}=e.payload;return l(n({},t),{stepList:o})}case i.SET_TASK_CONFIG:{const{stepList:o,step:s}=e.payload;return l(n({},t),{stepList:o,step:s})}case i.INIT_TOOL:{const{imgNode:o}=t,s=Bt(t,o);if(s){const{toolInstance:u,annotationEngine:a}=s;return l(n({},t),{toolInstance:u,annotationEngine:a})}return n({},t)}case i.SET_TOOL:{const o=(et=e.payload)==null?void 0:et.instance;return o?l(n({},t),{toolInstance:o}):n({},t)}case i.UPDATE_ON_SUBMIT:return l(n({},t),{onSubmit:e.payload.onSubmit});case i.UPDATE_ON_SAVE:return l(n({},t),{onSave:e.payload.onSave});case i.UPDATE_ON_PAGE_CHANGE:return l(n({},t),{onPageChange:e.payload.onPageChange});case i.SET_PREDICT_RESULT:return l(n({},t),{predictionResult:e.payload.result});case i.SET_PREDICT_RESULT_VISIBLE:return l(n({},t),{predictionResultVisible:e.payload.visible});case i.UPDATE_ON_STEP_CHANGE:return l(n({},t),{onStepChange:e.payload.onStepChange});case i.UPDATE_GET_FILE_DATA:return l(n({},t),{getFileData:e.payload.getFileData});case i.UPDATE_PAGE_SIZE:return l(n({},t),{pageSize:e.payload.pageSize});case i.UPDATE_LOAD_FILE_LIST:return l(n({},t),{loadFileList:e.payload.loadFileList});case i.UPDATE_BEFORE_ROTATE:return l(n({},t),{beforeRotate:e.payload.beforeRotate});case i.UPDATE_PRE_DATA_PROCESS:return l(n({},t),{preDataProcess:e.payload.preDataProcess});case i.SKIP_BEFORE_PAGE_TURNING:return l(n({},t),{skipBeforePageTurning:e.payload.skipBeforePageTurning});case i.SET_FILE_DATA:{const{fileData:o,index:s}=e.payload,{imgList:u}=t,a=[...u];return a[s]=n(n({},a[s]),o),l(n({},t),{imgList:a})}case i.UPDATE_ROTATE:{const{toolInstance:o,beforeRotate:s}=t;return s&&s()===!1||(ot=o==null?void 0:o.updateRotate)==null||ot.call(o),t}case i.UPDATE_ANNOTATION_VALID:{const{toolInstance:o}=t,s=(nt=o==null?void 0:o.valid)!=null?nt:!0;return dt.destroyAll(),dt.confirm({content:G.t(s?"updateValidFromValidToInValid":"updateValidFromInValidToValid"),onOk:()=>{o==null||o.setValid(!s)},okText:G.t("Confirm"),cancelText:G.t("Cancel")}),t}case i.COPY_BACKWARD_RESULT:{const{toolInstance:o,imgIndex:s,imgList:u,step:a}=t;if(!o)return t;if(s===0||s>=u.length)return console.error("\u65E0\u6CD5\u590D\u5236\u8FB9\u754C\u5916\u7684\u5185\u5BB9"),t;const p=u[s-1].result;if(!p)return t;const c=Y.copyResultChange(p,a,(st=u[s].result)!=null?st:"");u[s]=l(n({},u[s]),{result:c});const g=w(c)[`step_${a}`],_=(g==null?void 0:g.result)||[];return o==null||o.setResult(_),o==null||o.history.pushHistory(_),(lt=o==null?void 0:o.asyncData)==null||lt.call(o,u[s]),l(n({},t),{imgList:[...u]})}case i.SET_STEP:{const{stepList:o,annotationEngine:s}=t,{toStep:u}=e.payload;if(s){const a=x(o,u);return s==null||s.setToolName(a.tool,a.config),l(n({},t),{step:u,toolInstance:s==null?void 0:s.toolInstance})}return l(n({},t),{step:u})}case i.SET_LOADPCDFILE_LOADING:{const{loadPCDFileLoading:o}=e.payload;return l(n({},t),{loadPCDFileLoading:!!o})}case i.SET_LOADING:{const{loading:o}=e.payload;return l(n({},t),{loading:!!o})}case i.SET_POINT_CLOUD_LOADING:{const{pointCloudLoading:o}=e.payload;return l(n({},t),{pointCloudLoading:!!o})}case i.SET_CHECK_MODE:{const{checkMode:o}=e.payload;return l(n({},t),{checkMode:!!o})}case i.SET_HIGHLIGHT_ATTRIBUTE:{const{attribute:o}=e.payload;return l(n({},t),{highlightAttribute:o})}case i.BATCH_UPDATE_TRACK_ID:{const{id:o,newID:s,rangeIndex:u,imgList:a}=e.payload,{imgIndex:p,onSubmit:c}=t,L=[],g=a.map((_,I)=>{if(at.isInRange(I,u)){const E=l(n({},_),{result:ct.batchUpdateTrackID({id:o,newID:s,result:_.result})});return L.push({imgIndex:I,newInfo:E}),E}return _});return c&&c([g[p]],K.BatchUpdateTrackID,p,g,{updateImgList:L}),l(n({},t),{imgList:g})}case i.BATCH_UPDATE_RESULT_BY_TRACK_ID:{const{id:o,newData:s,rangeIndex:u}=e.payload,{imgList:a,imgIndex:p,onSubmit:c}=t,L=[],g=a.map((_,I)=>{if(at.isInRange(I,u)){const E=l(n({},_),{result:ct.batchUpdateResultByTrackID({id:o,newData:s,result:_.result})});return L.push({imgIndex:I,newInfo:E}),E}return _});return c&&c([g[p]],K.BatchUpdateTrackID,p,g,{updateImgList:L}),l(n({},t),{imgList:g})}case i.BATCH_UPDATE_IMG_LIST_RESULT_BY_PREDICT_RESULT:{const{onSubmit:o,imgList:s,stepList:u,step:a,predictionResult:p}=t,c={};p.forEach(I=>{const{index:E}=I;c[E]=_t.pick(I,["center","width","height","depth","rotation","id","attribute","valid","trackID"])});const L=`step_${a}`,g=[],_=s.map((I,E)=>{if(c[E]){const D=I.result==="{}"?w(J("",{step:a,stepList:u},{rect:[]},{})):w(I.result);D[L].result.push(c[E]);const P=l(n({},I),{result:JSON.stringify(D)});return g.push({imgIndex:E,newInfo:P}),P}return I});return o==null||o(_,K.BatchUpdateImgList,-1,_,{updateImgList:g}),l(n({},t),{imgList:_})}default:return t}};export{wt as LoadFileAndFileData,Mt as annotationReducer,Vt as composeResultByToolInstance,x as getStepConfig,Ut as getTotalPage};
package/es/utils/data.js CHANGED
@@ -1 +1 @@
1
- import{jsonParser as g}from"./index.js";import P from"./StepUtils.js";var I=Object.defineProperty,d=Object.defineProperties,N=Object.getOwnPropertyDescriptors,y=Object.getOwnPropertySymbols,w=Object.prototype.hasOwnProperty,v=Object.prototype.propertyIsEnumerable,S=(e,r,t)=>r in e?I(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,o=(e,r)=>{for(var t in r||(r={}))w.call(r,t)&&S(e,t,r[t]);if(y)for(var t of y(r))v.call(r,t)&&S(e,t,r[t]);return e},a=(e,r)=>d(e,N(r));const D=(e,r)=>JSON.stringify(o(o({},g(e)),r)),J=(e,r,t,f)=>{const{step:l,stepList:_}=r,{rect:i,basicRectID:u}=t;try{const s=g(e),O=P.getCurrentStepInfo(l,_),{dataSourceStep:m}=O,p=`step_${O.step}`;if(s[p]){const n=s[p];return Object.assign(n,f),n.result?(JSON.stringify(n.result)===JSON.stringify(i)||(u?n.result=[...n.result.filter(c=>!(c.sourceID&&c.sourceID===u)),...i.filter(c=>c.sourceID&&c.sourceID===u)]:n.result=i),JSON.stringify(s)):JSON.stringify(a(o({},s),{[p]:a(o(o({},s[p]),f),{result:i})}))}return JSON.stringify(a(o({},s),{[p]:a(o({dataSourceStep:m},f),{toolName:_[l-1].tool,result:i})}))}catch(s){return e}};export{J as composeResult,D as composeResultWithBasicImgInfo};
1
+ import{EStepType as d}from"../constant/index.js";import{jsonParser as y}from"./index.js";import I from"./StepUtils.js";var P=Object.defineProperty,N=Object.defineProperties,v=Object.getOwnPropertyDescriptors,O=Object.getOwnPropertySymbols,w=Object.prototype.hasOwnProperty,j=Object.prototype.propertyIsEnumerable,g=(r,t,e)=>t in r?P(r,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[t]=e,o=(r,t)=>{for(var e in t||(t={}))w.call(t,e)&&g(r,e,t[e]);if(O)for(var e of O(t))j.call(t,e)&&g(r,e,t[e]);return r},f=(r,t)=>N(r,v(t));const D=(r,t)=>JSON.stringify(o(o({},y(r)),t)),J=(r,t,e,n)=>{const{step:p,stepList:S}=t,{rect:a,basicRectID:l}=e;try{const s=y(r),_=I.getCurrentStepInfo(p,S),{dataSourceStep:m}=_,c=`step_${_.step}`;if(s[c]){const i=s[c];return Object.assign(i,n),i.result?(JSON.stringify(i.result)===JSON.stringify(a)||(l?i.result=[...i.result.filter(u=>!(u.sourceID&&u.sourceID===l)),...a.filter(u=>u.sourceID&&u.sourceID===l)]:i.result=a),JSON.stringify(s)):JSON.stringify(f(o({},s),{[c]:f(o(o({},s[c]),n),{result:a})}))}return JSON.stringify(f(o({},s),{[c]:f(o({dataSourceStep:m},n),{toolName:S[p-1].tool,result:a})}))}catch(s){return r}},R=(r,t)=>{var e;const n=(e=r.find(p=>d.QUALITY_INSPECTION===p.type&&p.step===t))==null?void 0:e.dataSourceStep;return n||t};export{J as composeResult,D as composeResultWithBasicImgInfo,R as getAnnotationStepByStepList};
package/es/utils/index.js CHANGED
@@ -1 +1 @@
1
- import f from"lodash";import{pointCloudLidar2image as l}from"@labelbee/lb-annotation";var y=Object.defineProperty,d=Object.defineProperties,_=Object.getOwnPropertyDescriptors,u=Object.getOwnPropertySymbols,x=Object.prototype.hasOwnProperty,O=Object.prototype.propertyIsEnumerable,m=(r,t,n)=>t in r?y(r,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):r[t]=n,P=(r,t)=>{for(var n in t||(t={}))x.call(t,n)&&m(r,n,t[n]);if(u)for(var n of u(t))O.call(t,n)&&m(r,n,t[n]);return r},w=(r,t)=>d(r,_(t));const b=(r,t={})=>{try{return typeof r=="string"?JSON.parse(r):f.isObject(r)?r:t}catch(n){return t}},I=r=>{if(Array.isArray(r))return r.filter(t=>t).join(" ");if(f.isObject(r)){const t=[];return Object.keys(r).forEach(n=>{r[n]&&t.push(n)}),t.join(" ")}return""},g=r=>{let t=Infinity,n=Infinity,e=-Infinity,o=-Infinity;for(const i of r)t=Math.min(t,i.x),n=Math.min(n,i.y),e=Math.max(e,i.x),o=Math.max(o,i.y);return{x:t,y:n,width:e-t,height:o-n}},v=(()=>{const r=(t,n)=>{const e=Math.max(t.x,n.x),o=Math.max(t.y,n.y),i=Math.min(t.x+t.width,n.x+n.width),a=Math.min(t.y+t.height,n.y+n.height),s=i-e,c=a-o;return s>=0&&c>=0?{x:e,y:o,width:s,height:c}:null};return(t,n,e)=>{if(e[n]){const o=e[n].width,i=e[n].height;return r(t,{x:0,y:0,width:o,height:i})!==null}return!1}})(),j=r=>{var t;const{pointCloudBox:n,mappingData:e,imageSizes:o}=r,{transferViewData:i}=(t=l(n,e.calib))!=null?t:{};if(!i)return;const a=i.reduce((p,h)=>h.type==="line"?[...p,...h.pointList]:p,[]),s=w(P({},g(a)),{imageName:e.path});if(v(s,e.path,o))return s};export{I as classnames,g as getBoundingRect,j as getRectPointCloudBox,b as jsonParser};
1
+ import f from"lodash";import{pointCloudLidar2image as y}from"@labelbee/lb-annotation";var d=Object.defineProperty,_=Object.defineProperties,x=Object.getOwnPropertyDescriptors,u=Object.getOwnPropertySymbols,O=Object.prototype.hasOwnProperty,P=Object.prototype.propertyIsEnumerable,m=(r,t,n)=>t in r?d(r,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):r[t]=n,w=(r,t)=>{for(var n in t||(t={}))O.call(t,n)&&m(r,n,t[n]);if(u)for(var n of u(t))P.call(t,n)&&m(r,n,t[n]);return r},b=(r,t)=>_(r,x(t));const I=(r,t={})=>{try{return typeof r=="string"?JSON.parse(r):f.isObject(r)?r:t}catch(n){return t}},v=r=>{if(Array.isArray(r))return r.filter(t=>t).join(" ");if(f.isObject(r)){const t=[];return Object.keys(r).forEach(n=>{r[n]&&t.push(n)}),t.join(" ")}return""},g=r=>{let t=Infinity,n=Infinity,e=-Infinity,o=-Infinity;for(const i of r)t=Math.min(t,i.x),n=Math.min(n,i.y),e=Math.max(e,i.x),o=Math.max(o,i.y);return{x:t,y:n,width:e-t,height:o-n}},l=(()=>{const r=(t,n)=>{const e=Math.max(t.x,n.x),o=Math.max(t.y,n.y),i=Math.min(t.x+t.width,n.x+n.width),a=Math.min(t.y+t.height,n.y+n.height),s=i-e,c=a-o;return s>=0&&c>=0?{x:e,y:o,width:s,height:c}:null};return(t,n,e)=>{if(e[n]){const o=e[n].width,i=e[n].height;return r(t,{x:0,y:0,width:o,height:i})!==null}return!1}})(),j=r=>{var t;const{pointCloudBox:n,mappingData:e,imageSizes:o}=r,{transferViewData:i}=(t=y(n,e.calib))!=null?t:{};if(!i)return;const a=i.reduce((p,h)=>h.type==="line"?[...p,...h.pointList]:p,[]),s=b(w({},g(a)),{imageName:e.path});if(l(s,e.path,o))return s};export{v as classnames,g as getBoundingRect,j as getRectPointCloudBox,l as isBoundingRectInImage,I as jsonParser};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@labelbee/lb-components",
3
- "version": "1.23.0-alpha.12",
3
+ "version": "1.23.0-alpha.14",
4
4
  "description": "Provide a complete library of annotation components",
5
5
  "main": "./dist/index.js",
6
6
  "es": "./es/index.js",
@@ -43,8 +43,8 @@
43
43
  },
44
44
  "dependencies": {
45
45
  "@ant-design/icons": "^4.6.2",
46
- "@labelbee/lb-annotation": "1.27.0-alpha.6",
47
- "@labelbee/lb-utils": "1.19.0-alpha.2",
46
+ "@labelbee/lb-annotation": "1.27.0-alpha.7",
47
+ "@labelbee/lb-utils": "1.19.0-alpha.3",
48
48
  "@labelbee/wavesurfer": "1.0.0",
49
49
  "@types/react-dom": "^18.2.7",
50
50
  "@types/react-transition-group": "^4.4.9",