@labelbee/lb-components 1.23.0-alpha.97 → 1.23.0-alpha.99
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/LLMToolView/index.js +1 -1
- package/dist/components/LLMToolView/sidebar/index.js +1 -1
- package/dist/components/audioPlayer/index.js +1 -1
- package/dist/index.js +1 -1
- package/es/components/LLMToolView/index.js +1 -1
- package/es/components/LLMToolView/sidebar/index.js +1 -1
- package/es/components/audioPlayer/index.js +1 -1
- package/es/index.js +1 -1
- package/package.json +2 -2
|
@@ -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:
|
|
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=>{var p;const{annotation:x,checkMode:m=!0,tips:T,showTips:y,drawLayerSlot:q}=n,{imgIndex:i,imgList:r,stepList:L,step:u,toolInstance:o}=x,{hoverKey:I,modelAPIResponse:_,setModelAPIResponse:g,newAnswerList:d}=React.useContext(ctx.LLMContext),[j,R]=React.useState([]),[C,S]=React.useState(""),[t,A]=React.useState(),{t:w}=reactI18next.useTranslation(),[,D]=React.useState(0);return React.useEffect(()=>{let e;if(!m)return e=setInterval(()=>{antd.message.info(w("EfficientListening"))},1e3*60),()=>{e&&clearInterval(e)}},[]),React.useEffect(()=>{if(o)return o.on("validUpdated",()=>{D(e=>e+1)}),()=>{o.unbindAll("validUpdated")}},[o]),React.useEffect(()=>{var e,s,a,l,M,E;if(!r[i])return;const P=((e=t==null?void 0:t.dataType)==null?void 0:e.prompt)===index.ELLMDataType.Picture,$=((s=t==null?void 0:t.dataType)==null?void 0:s.response)===index.ELLMDataType.Picture,c=(a=r[i])==null?void 0:a.questionList,v=(l=r[i])==null?void 0:l.llmFile,V=P?v==null?void 0:v.question:c==null?void 0:c.question;S(V);let f=(c==null?void 0:c.answerList)||[];$&&(f=(v==null?void 0:v.answerList)||[]),((M=t==null?void 0:t.dataType)==null?void 0:M.response)===index.ELLMDataType.None&&(f=[]),((E=t==null?void 0:t.dataType)==null?void 0:E.response)===index.ELLMDataType.Text&&(d==null?void 0:d.length)>0&&(f=d),R(f)},[i,d,t,(p=r[i])==null?void 0:p.id]),React.useEffect(()=>{var e;if(!r[i])return;const s=(e=r[i])!=null?e:{},a=data.getCurrentResultFromResultList(s==null?void 0:s.result,u),l=(a==null?void 0:a.length)>0?a[0]:a;g((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;A(index$1.jsonParser(s))}},[L,u]),React__default.default.createElement(es.Layout,{className:LLMViewCls},!(o==null?void 0:o.valid)&&React__default.default.createElement(index$2,{message:w("InvalidQuestionAndSkip")}),q==null?void 0:q({}),React__default.default.createElement("div",{className:`${LLMViewCls}-question`},y===!0&&React__default.default.createElement(index$3,{tips:T}),React__default.default.createElement(index$4.default,{hoverKey:I,question:C,answerList:j,modelAPIResponse:_,setModelAPIResponse:g,checkMode:m,annotation:x,LLMConfig:t})))},mapStateToProps=n=>({annotation:n.annotation});var LLMToolView$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(LLMToolView);module.exports=LLMToolView$1;
|
|
@@ -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"),StepUtils=require("../../../utils/StepUtils.js");function _interopDefaultLegacy(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}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=(o,a,i)=>a in o?__defProp(o,a,{enumerable:!0,configurable:!0,writable:!0,value:i}):o[a]=i,__spreadValues=(o,a)=>{for(var i in a||(a={}))__hasOwnProp.call(a,i)&&__defNormalProp(o,i,a[i]);if(__getOwnPropSymbols)for(var i of __getOwnPropSymbols(a))__propIsEnum.call(a,i)&&__defNormalProp(o,i,a[i]);return o},__spreadProps=(o,a)=>__defProps(o,__getOwnPropDescs(a));const EKeyCode=lbAnnotation.cKeyCode.default,sidebarCls=`${index$5.prefix}-sidebar`,LLMToolSidebar=o=>{var a,i;const{annotation:$,dispatch:m,checkMode:M}=o,{imgIndex:x,imgList:y,stepList:L,step:w,skipBeforePageTurning:S}=$,{modelAPIResponse:q,setModelAPIResponse:B}=React.useContext(ctx.LLMContext),{t:b}=reactI18next.useTranslation(),
|
|
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"),StepUtils=require("../../../utils/StepUtils.js");function _interopDefaultLegacy(o){return o&&typeof o=="object"&&"default"in o?o:{default:o}}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=(o,a,i)=>a in o?__defProp(o,a,{enumerable:!0,configurable:!0,writable:!0,value:i}):o[a]=i,__spreadValues=(o,a)=>{for(var i in a||(a={}))__hasOwnProp.call(a,i)&&__defNormalProp(o,i,a[i]);if(__getOwnPropSymbols)for(var i of __getOwnPropSymbols(a))__propIsEnum.call(a,i)&&__defNormalProp(o,i,a[i]);return o},__spreadProps=(o,a)=>__defProps(o,__getOwnPropDescs(a));const EKeyCode=lbAnnotation.cKeyCode.default,sidebarCls=`${index$5.prefix}-sidebar`,LLMToolSidebar=o=>{var a,i;const{annotation:$,dispatch:m,checkMode:M}=o,{imgIndex:x,imgList:y,stepList:L,step:w,skipBeforePageTurning:S}=$,{modelAPIResponse:q,setModelAPIResponse:B}=React.useContext(ctx.LLMContext),{t:b}=reactI18next.useTranslation(),s=(a=y[x])!=null?a:{},I=index.jsonParser(s==null?void 0:s.result),{toolInstanceRef:c}=annotation.useCustomToolInstance({basicInfo:I}),[d,F]=React.useState(),[C,V]=React.useState(!0),{setNewAnswerList:k}=React.useContext(ctx.LLMContext),[n,p]=React.useState({}),g=!c.current.valid||M;React.useEffect(()=>{var e;if(L&&w){const t=(e=reducer.getStepConfig(L,w))==null?void 0:e.config;F(index.jsonParser(t))}},[w,JSON.stringify(L)]),React.useEffect(()=>{!s||x===-1||(c.current.setValid=T,c.current.clearResult=K,T(),R())},[x,d,s==null?void 0:s.id]);const K=()=>{R(s==null?void 0:s.questionList)},T=e=>{var t;const r=e!=null?e:I.valid;_.isBoolean(r)&&(V(r),c.current.valid=r,(t=c.current)==null||t.emit("validUpdated"))},R=e=>{const t=StepUtils.getCurrentStepInfo(w,L),r=data.getCurrentResultFromResultList(s==null?void 0:s.result,t.step);let l=s==null?void 0:s.questionList;(r==null?void 0:r.answerList)&&c.current.valid&&(l=r),e&&(l=e,r.sort=[]);const f=data.getRenderDataByResult(d,l);p(__spreadValues({},f)),B([])};React.useEffect(()=>{U(),k((n==null?void 0:n.answerList)||[])},[n,q,C]),React.useEffect(()=>(window.addEventListener("keydown",O),()=>{window.removeEventListener("keydown",O)}),[]);const U=()=>{const{newSort:e,answerList:t,textAttribute:r,tagList:l}=n,f=data.formatSort(e||[]),u={answerList:t,sort:f,tagList:l,textAttribute:r,id:s==null?void 0:s.id,modelAPIResponse:q};c.current.exportData=()=>[[u],{valid:C}],c.current.currentPageResult=__spreadProps(__spreadValues({},u),{toolName:lbAnnotation.EToolName.LLM,valid:C})},O=e=>{if(e.ctrlKey&&e.keyCode===EKeyCode.Enter){if(S){S(()=>m(actionCreators.PageForward()));return}m(actionCreators.PageForward())}},z=({order:e,value:t,key:r})=>{const{answerList:l}=n,f=l==null?void 0:l.map(u=>{var E;if((u==null?void 0:u.order)===e){if(r==="textEdit"&&_.isString(t))return __spreadProps(__spreadValues({},u),{newAnswer:t});if(_.isNumber(t))return __spreadProps(__spreadValues({},u),{score:t});if(_.isObject(t)&&r){const j={[t==null?void 0:t.key]:t.value},P=(E=u[r])!=null?E:{};return __spreadProps(__spreadValues({},u),{[r]:__spreadValues(__spreadValues({},P),j)})}}return u});p(__spreadProps(__spreadValues({},n),{answerList:f||[]}))};if((()=>{var e,t;const{indicatorScore:r=[],indicatorDetermine:l=[],text:f=[],enableSort:u,isTextEdit:E,tagInputListConfigurable:j}=d||{},P=((e=r==null?void 0:r.filter(v=>v.label&&v.value&&v.score))==null?void 0:e.length)>0,H=((t=l==null?void 0:l.filter(v=>v.label&&v.value))==null?void 0:t.length)>0,X=(f==null?void 0:f.length)>0;return!(P||H||X||u||E||j)})())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:D=[],enableSort:W,isTextEdit:G,inputList:h=[],tagInputListConfigurable:N}=d||{},J=N&&((i=h.filter(e=>!e.isOverall))==null?void 0:i.length)>0,Q=(D==null?void 0:D.length)>0||(A==null?void 0:A.length)>0||G||J;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")),W&&React__default.default.createElement(index$1,{waitSortList:(n==null?void 0:n.waitSorts)||[],sortList:(n==null?void 0:n.newSort)||[],setSortList:e=>{p(__spreadProps(__spreadValues({},n),{newSort:e}))},disabeledAll:g}),N&&h.length&&React__default.default.createElement(index$2,{inputList:h,selectedTags:(n==null?void 0:n.tagList)||{},updateValue:e=>{const{key:t,value:r}=e,l=n==null?void 0:n.tagList;p(__spreadProps(__spreadValues({},n),{tagList:__spreadProps(__spreadValues({},l),{[t]:r})}))},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:(n==null?void 0:n.textAttribute)||[],LLMConfig:d,setText:e=>p(__spreadProps(__spreadValues({},n),{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,Q&&React__default.default.createElement(index$4,{list:(n==null?void 0:n.answerList)||[],LLMConfig:d,updateValue:z,disabeledAll:g}))),React__default.default.createElement("div",{style:{margin:"24px 16px",display:"flex"}},(y==null?void 0:y.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=o=>({annotation:o.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 React=require("react"),getWebPcm2Wac=require("../audioAnnotate/utils/getWebPcm2Wac.js"),_=require("lodash"),icons=require("@ant-design/icons"),lbAnnotation=require("@labelbee/lb-annotation"),lbUtils=require("@labelbee/lb-utils"),antd=require("antd"),index$b=require("../invalidPage/index.js"),index$6=require("../imageError/index.js"),index$a=require("../../utils/index.js"),index$d=require("../videoPlayer/components/SpeedController/index.js"),WaveSurfer=require("@labelbee/wavesurfer"),Region=require("@labelbee/wavesurfer/dist/plugin/wavesurfer.regions.js"),Cursor=require("@labelbee/wavesurfer/dist/plugin/wavesurfer.cursor.js"),index=require("./zoomSlider/index.js"),index$e=require("./labelDisplayToggle/index.js"),index$f=require("./clipRegion/index.js"),index$1=require("../audioAnnotate/audioContext/index.js"),ahooks=require("ahooks"),index$2=require("./useAudioScroll/index.js"),index_module=require("./index.module.scss.js"),audio=require("../../utils/audio.js"),index$c=require("./progressDot/index.js"),index$7=require("./clipTip/index.js"),index$5=require("./useSwitchHotkey/index.js"),index$3=require("./useAudioCombine/index.js"),index$4=require("./useAudioSegment/index.js"),index$8=require("./combineTip/index.js"),index$9=require("./segmentTip/index.js"),index$g=require("../../views/MainView/toolFooter/index.js"),utils=require("../videoPlayer/utils.js"),reactI18next=require("react-i18next"),useSize=require("../../hooks/useSize.js");function _interopDefaultLegacy(l){return l&&typeof l=="object"&&"default"in l?l:{default:l}}var React__default=_interopDefaultLegacy(React),___default=_interopDefaultLegacy(_),WaveSurfer__default=_interopDefaultLegacy(WaveSurfer),Region__default=_interopDefaultLegacy(Region),Cursor__default=_interopDefaultLegacy(Cursor),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(l,u,d)=>u in l?__defProp(l,u,{enumerable:!0,configurable:!0,writable:!0,value:d}):l[u]=d,__spreadValues=(l,u)=>{for(var d in u||(u={}))__hasOwnProp.call(u,d)&&__defNormalProp(l,d,u[d]);if(__getOwnPropSymbols)for(var d of __getOwnPropSymbols(u))__propIsEnum.call(u,d)&&__defNormalProp(l,d,u[d]);return l},__spreadProps=(l,u)=>__defProps(l,__getOwnPropDescs(u));const{EToolName}=lbAnnotation.cTool,EKeyCode=lbAnnotation.cKeyCode.default,PER_PROGRESS=.1,AudioPlayerContext=React__default.default.createContext({count:0,isEdit:!1,toolName:EToolName.Empty,imgIndex:0}),AudioPlayer=({fileData:l={},onLoaded:u,context:d,invalid:Ne,height:Fe,hideError:ze,onError:re,updateRegion:T,removeRegion:k,regions:x=[],activeToolPanel:Ue,clipConfigurable:Ze,clipTextConfigurable:ne,clipAttributeList:He,clipAttributeConfigurable:oe,secondaryAttributeConfigurable:Ve,subAttributeList:Xe,isCheck:b,hoverRegionId:W,footer:Ke,drawLayerSlot:ie,clipTextList:Ge,lang:ae})=>{var le,se;const{url:$,path:ue}=l,[N,F]=React.useState(!1),[ce,de]=React.useState(!1),[P,Ye]=React.useState(0),[Je,fe]=React.useState(!1),[S,ve]=React.useState(0),o=React.useRef(null),C=React.useRef(null),me=React.useRef(P),z=e=>{me.current=e,Ye(e)},[pe,Qe]=React.useState(0),[O,et]=React.useState(index.audioZoomInfo.defaultValue),y=React.useRef(null),[ge,tt]=React.useState({}),{audioClipState:U,setAudioClipState:j}=index$1.useAudioClipStore(),[Z,H]=React.useState(!1),c=ahooks.useLatest(U),be=ahooks.useLatest(ge);ahooks.useLatest(N);const A=ahooks.useLatest(x),_e=ahooks.useUpdate(),[ye,rt]=React.useState([]),[Ee,nt]=React.useState({}),[ot,Se]=React.useState(""),[he,it]=React.useState({start:0,end:0}),at=useSize(y),lt=React.useMemo(()=>x.filter(e=>{const{start:t,end:r}=he;return e.start>=t&&e.start<=r||e.end>=t&&e.end<=r||e.id===ot}),[x,he]),st=_.debounce(()=>{lbAnnotation.EventBus.emit("audioZoom")},500),Re=e=>{e<index.audioZoomInfo.min||e>index.audioZoomInfo.max||(et(e),audio.dispatchResizeEvent(),st())};index$2({container:y.current,target:document.querySelector(`[data-id=${(se=(le=c.current)==null?void 0:le.selectedRegion)==null?void 0:se.id}]`),clipping:Z,zoom:O,zoomHandler:Re});const B=()=>{let e=A.current;const{attributeLockList:t}=c.current;t.length&&(e=e.filter(r=>t.includes(r.attribute))),X(),e.forEach(r=>{var n;(n=o.current)==null||n.addRegion(__spreadProps(__spreadValues({},r),{drag:!b,resize:!b,color:"rgba(0, 0, 0, 0)"}))}),_e()},v=e=>{var t,r,n,i,s,m,p;const{id:a,loop:f=!0,playImmediately:g=!1,isLoopStatus:M}=e,q=!1;if(a){const w=(n=(r=(t=o.current)==null?void 0:t.regions)==null?void 0:r.list)!=null?n:{};Object.entries(w).forEach(([,R])=>{const{id:I}=R;a===I?R.select():R.cancelSelect()}),j({selectedRegion:{id:a,loop:q},selectedAttribute:(m=(s=(i=A.current)==null?void 0:i.find(R=>R.id===a))==null?void 0:s.attribute)!=null?m:""}),g&&((p=L(a))==null||p.play())}else j({selectedRegion:{}})},{combineInstance:ut}=index$3({waveRef:o,sortByStartRegions:ye,regionMap:Ee,updateRegion:T,removeRegion:k,generateRegions:B,setSelectedRegion:v}),{segmentInstance:ct,onRegionMouseMove:dt,segmentTimeTip:ft}=index$4({waveRef:o,regionMap:Ee,updateRegion:T,removeRegion:k,generateRegions:B,setSelectedRegion:v}),xe={clipTextConfigurable:ne,clipAttributeList:He,clipAttributeConfigurable:oe,clipConfigurable:Ze,secondaryAttributeConfigurable:Ve,subAttributeList:Xe,clipTextList:Ge};React.useEffect(()=>{var e;ae&&((e=lbUtils.i18n)==null||e.changeLanguage(ae))},[]),React.useEffect(()=>{j({selectedAttribute:""})},[oe]),React.useEffect(()=>{V()},[U.selectedAttribute]),React.useEffect(()=>{B()},[U.attributeLockList]),ahooks.useDeepCompareEffect(()=>{j(xe),setTimeout(()=>{Pe()})},[xe]),ahooks.useDeepCompareEffect(()=>{rt(_.sortBy(x,["start"])),nt(x.reduce((e,t)=>{const{id:r}=t;return __spreadProps(__spreadValues({},e),{[r]:t})},{})),b&&B()},[x]),React.useEffect(()=>{v(W?{id:W,loop:!1,playImmediately:!0}:{})},[W]);const Pe=()=>{var e,t;c.current.clipConfigurable?(!b&&o.current&&((e=o.current)==null||e.enableDragSelection({slop:5})),B()):((t=o.current)==null||t.disableDragSelection(),X()),V()},V=()=>{var e,t,r,n,i;let s="";c.current.clipConfigurable?s=audio.getAttributeColor(c.current.selectedAttribute,(e=c.current.clipAttributeList)!=null?e:[]):s="transparent",((r=(t=o==null?void 0:o.current)==null?void 0:t.cursor)==null?void 0:r.cursor)&&((i=(n=o==null?void 0:o.current)==null?void 0:n.cursor)==null||i.setStyle({border:`2px dashed ${s}`}))},L=e=>{var t,r,n;return((n=(r=(t=o.current)==null?void 0:t.regions)==null?void 0:r.list)!=null?n:{})[e]},Ce=()=>{var e,t;if($){const r=((t=(e=ue==null?void 0:ue.split("."))==null?void 0:e.pop())==null?void 0:t.toLowerCase())==="pcm";fe(!1),r?getWebPcm2Wac.getWebPcm2WavBase64($).then(n=>{we(n)}):we($)}},we=e=>{var t;e&&(de(!0),z(0),ve(0),(t=o==null?void 0:o.current)==null||t.load(e))},X=()=>{var e;(e=o.current)==null||e.clearRegions()},K=e=>{const t=L(e);t&&(H(!1),t==null||t.remove(),k==null||k(e),v({}))},{run:Te}=ahooks.useThrottleFn(v,{wait:100});index$5({sortByStartRegions:ye,setSelectedRegion:v});const vt=e=>{const{start:t,end:r}=be.current;return(t||r)&&e.update(be.current),e},mt=({action:e,id:t,eventDownTime:r})=>{var n,i;if(!c.current.clipConfigurable)return;t&&v({id:t});const s=L((t!=null?t:(n=c.current.selectedRegion)==null?void 0:n.id)||""),m=[];(e==="create"?A.current:(i=A.current)==null?void 0:i.filter(f=>f.id!==s.id)).forEach(f=>{const{start:g,end:M,attribute:q}=f;q===c.current.selectedAttribute&&[g,M].forEach(w=>{m.includes(w)||m.push(w)})});const a=audio.getCanMoveRange(m.sort((f,g)=>f-g),r);o.current.range=a},pt=e=>{V(),setTimeout(()=>{H(!1)});const t=vt(e),{id:r,start:n,end:i}=t;v({id:r,playImmediately:!0});const s={id:r,start:utils.decimalReserved(n,3),end:utils.decimalReserved(i,3)};T==null||T(s),_e()},gt=()=>{const e=WaveSurfer__default.default.create({container:"#waveform",waveColor:"#999",progressColor:"#999",height:Fe||245,normalize:!0,cursorWidth:2,cursorColor:"white",responsive:0,hideScrollbar:!0,plugins:[Region__default.default.create({regions:x,dragSelection:{slop:5},canMove:!1}),Cursor__default.default.create({opacity:1,customStyle:{border:"2px dashed transparent"}})]}),t=()=>{var r;z(((r=o==null?void 0:o.current)==null?void 0:r.getCurrentTime())||0)};e.on("ready",()=>{var r;const n=((r=o==null?void 0:o.current)==null?void 0:r.getDuration())||0;ve(n),t(),u==null||u({duration:Math.round(n)}),de(!1),D(),lbAnnotation.EventBus.on("setCurrentTimeByPosition",Y),lbAnnotation.EventBus.on("clearRegions",X),lbAnnotation.EventBus.on("removeRegionById",K),lbAnnotation.EventBus.on("setSelectedRegion",Te),e.on("regions-eventDown",mt),Pe()}),e.on("audioprocess",()=>{t()}),e.on("play",()=>{F(!0)}),e.on("pause",()=>{F(!1)}),e.on("finish",()=>{F(!1)}),e.on("seek",()=>{t()}),e.on("error",()=>{fe(!0),u==null||u({hasError:!0}),re==null||re()}),e.on("region-created",r=>{var n;const{id:i,start:s,end:m}=r;if(A.current.find(a=>a.id===i))return;Se(i);const p={id:i,start:utils.decimalReserved(s,3),end:utils.decimalReserved(m,3),attribute:c.current.selectedAttribute,text:""};if(c.current.secondaryAttributeConfigurable){const a=lbAnnotation.TagUtils.getDefaultResultByConfig((n=c.current.subAttributeList)!=null?n:[]);p.subAttribute=a!=null?a:{}}ne&&c.current.clipTextList.forEach((f,g)=>{g===0?Object.assign(p,{text:f==null?void 0:f.default}):Object.assign(p,{[f.key]:f==null?void 0:f.default})}),T==null||T(p)}),e.on("region-updated",(r,n)=>{var i,s,m,p,a,f,g,M,q,w;const R=n==null?void 0:n.action;j({combined:!1,segment:!1}),R==="resize"&&((s=(i=o==null?void 0:o.current)==null?void 0:i.cursor)==null||s.setStyle({borderStyle:"solid"})),R==="drag"&&((p=(m=o==null?void 0:o.current)==null?void 0:m.cursor)==null||p.setStyle({borderColor:"transparent"}));const I={},J=[],Q={},At=(a=A.current)==null?void 0:a.filter(E=>E.id!==r.id),qt=(M=(g=(f=o.current)==null?void 0:f.regions)==null?void 0:g.list)!=null?M:{};At.forEach(E=>{var $e,Oe;const{element:ee}=($e=qt[E.id])!=null?$e:{},{start:Lt,end:Dt}=E;if(ee){const{x:We,width:Mt}=((Oe=ee.getBoundingClientRect)==null?void 0:Oe.call(ee))||{},It=We+Mt;[We,It].forEach((te,kt)=>{J.includes(te)||(J.push(te),Q[te]=kt===0?Lt:Dt)})}});const{x:ke,width:jt}=((w=(q=r.element).getBoundingClientRect)==null?void 0:w.call(q))||{},Bt=ke+jt;J.forEach(E=>{Math.abs(audio.precisionMinus(E,ke))<5&&(I.start=Q[E]),Math.abs(audio.precisionMinus(E,Bt))<5&&(I.end=Q[E])}),tt(I),Te({id:r.id}),H(!0)}),e.on("region-update-end",r=>{pt(r),Se("")}),e.on("region-contextmenu",(r,n)=>{if(!b){if(n.preventDefault(),n.stopPropagation(),audio.isDoubleClick(n)){K(r.id);return}v({id:r.id,playImmediately:!0})}}),e.on("region-click",(r,n,i)=>{if(!b){if(n.preventDefault(),n.stopPropagation(),c.current.combined){ut(r);return}if(c.current.segment){ct(r,i);return}v({id:r.id,playImmediately:!0})}}),e.on("region-mousemove",dt),o.current=e},bt=N?React__default.default.createElement(icons.PauseOutlined,null):React__default.default.createElement(icons.CaretRightOutlined,null),Ae=e=>e?`${parseFloat((e/S*100).toFixed(4))}%`:"0%",qe=Ae(P),_t=Ae(pe),h=()=>{if(!ce)return o==null?void 0:o.current},yt=()=>{var e;(e=h())==null||e.skipForward(PER_PROGRESS)},Et=()=>{var e;(e=h())==null||e.skipBackward(PER_PROGRESS)},D=()=>{var e;(e=h())==null||e.playPause(),v({})},je=e=>{var t;switch(e.keyCode){case EKeyCode.Right:yt();break;case EKeyCode.Left:Et();break;case EKeyCode.Space:e.preventDefault(),D();break;case EKeyCode.Delete:if(!b){const{id:r}=((t=c.current)==null?void 0:t.selectedRegion)||{};r&&K(r)}break}},St=e=>{Y(e)},Be=___default.default.throttle(St,50);let G=!1;const Le=()=>{G&&(D(),G=!1),document.removeEventListener("mousemove",Be),document.removeEventListener("mouseup",Le)},ht=e=>{Y(e),N&&(G=!0,D()),document.addEventListener("mousemove",Be),document.addEventListener("mouseup",Le)},Rt=()=>{Ce()};React.useEffect(()=>(gt(),()=>{var e;(e=o==null?void 0:o.current)==null||e.destroy(),o.current=null,lbAnnotation.EventBus.unbindAll("setCurrentTimeByPosition"),lbAnnotation.EventBus.unbindAll("clearRegions"),lbAnnotation.EventBus.unbindAll("removeRegionById"),lbAnnotation.EventBus.unbindAll("setSelectedRegion")}),[]);const xt=e=>{var t,r,n;(t=h())==null||t.playPause(),(r=h())==null||r.setPlaybackRate(e),(n=h())==null||n.playPause()};React.useEffect(()=>(document.addEventListener("keydown",je),()=>{document.removeEventListener("keydown",je)})),React.useEffect(()=>{v({}),Ce()},[$]),React.useEffect(()=>{De()},[at,S]);const Pt=()=>{if(y.current&&S){const e=y.current.scrollLeft,t=y.current.clientWidth,r=e/y.current.scrollWidth*S,n=(e+t)/y.current.scrollWidth*S;it({start:r,end:n})}},{run:De}=ahooks.useThrottleFn(Pt,{wait:300}),Me=e=>{var t,r,n,i;if((o==null?void 0:o.current)&&(C==null?void 0:C.current)){const s=(r=(t=o==null?void 0:o.current)==null?void 0:t.getDuration())!=null?r:0,m=(n=C==null?void 0:C.current)==null?void 0:n.getBoundingClientRect();let a=(e.clientX-m.left)/(((i=C==null?void 0:C.current)==null?void 0:i.clientWidth)||0)*s;return a>s&&(a=s),a}return 0},Y=e=>{var t;const r=Me(e);(t=o==null?void 0:o.current)==null||t.skip(r-me.current),z(r)},Ct=e=>{Qe(Me(e))},wt=S?Math.max(S-P,0):0,Tt=(d==null?void 0:d.toolName)!==EToolName.Empty&&(d==null?void 0:d.isEdit)!==!0&&(Ue==="remark"||b),Ie=React__default.default.createElement("div",{className:index_module.audioPlayer},Je&&!ze&&React__default.default.createElement(index$6,{fileTypeName:"\u97F3\u9891",ignoreOffsetY:!0,reloadImage:Rt,backgroundColor:"#ffffffbb"}),React__default.default.createElement(index$7,{getRegionInstanceById:L,clipping:Z}),React__default.default.createElement(index$8,{container:y.current}),React__default.default.createElement(index$9,{segmentTimeTip:ft}),React__default.default.createElement("div",{className:index_module.waveformContainer,ref:y,onScroll:()=>De()},React__default.default.createElement("div",{id:"waveform",style:{width:`${O*100}%`},className:index$a.classnames({[index_module.waveform]:!0,"bee-audio-combined":c.current.combined,"bee-audio-clip":c.current.clipConfigurable})},Ne&&React__default.default.createElement(index$b,{isAudio:!0}),React__default.default.createElement("div",{ref:C,className:index_module.progress,onMouseDown:ht,onMouseMove:Ct},React__default.default.createElement("div",{className:index$a.classnames({[index_module.radioTooltip]:!0}),style:{left:qe}},audio.formatTime(P)),React__default.default.createElement("div",{className:index$a.classnames({[index_module.radioTooltip]:!0,[index_module.mouseTooltip]:!0}),style:{left:_t}},audio.formatTime(pe)),React__default.default.createElement(index$c,{playPercentage:qe})),Tt&&(ie==null?void 0:ie({currentTime:P,remainingTime:wt,audioPlayer:h()})))),React__default.default.createElement("div",{className:index_module.controlBar},React__default.default.createElement(antd.Button,{type:"link",icon:bt,onClick:()=>{D()},className:index$a.classnames({[index_module.playButton]:!0,[index_module.playButtonDisabled]:ce})}),React__default.default.createElement("span",{className:index_module.time},`${audio.timeFormat(P,"ss.SSS")} / -${audio.timeFormat(S-P,"ss.SSS")}`),React__default.default.createElement(index$d.default,{playerType:index$d.EPlayerType.Audio,onChange:e=>{xt(e)}}),React__default.default.createElement(index.default,{onChange:e=>{var t;(t=h())==null||t.pause(),Re(e)},zoom:O}),React__default.default.createElement(index$e,{EventBus:lbAnnotation.EventBus})));return d?React__default.default.createElement(AudioPlayerContext.Provider,{value:d},Ie,lt.map(e=>{const{id:t}=e,r=document.querySelector(`[data-id=${t}]`);return r?React__default.default.createElement(index$f,{el:r,key:t,region:e,edgeAdsorption:ge,clipping:Z,zoom:O,instance:L(t),isCheck:b}):null}),React__default.default.createElement(index$g.default,{footer:Ke})):Ie},WrapAudioPlayer=l=>React__default.default.createElement(reactI18next.I18nextProvider,{i18n:lbUtils.i18n},React__default.default.createElement(AudioPlayer,__spreadValues({},l)));exports.AudioPlayer=AudioPlayer,exports.AudioPlayerContext=AudioPlayerContext,exports.WrapAudioPlayer=WrapAudioPlayer;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react"),getWebPcm2Wac=require("../audioAnnotate/utils/getWebPcm2Wac.js"),_=require("lodash"),icons=require("@ant-design/icons"),lbAnnotation=require("@labelbee/lb-annotation"),lbUtils=require("@labelbee/lb-utils"),antd=require("antd"),index$b=require("../invalidPage/index.js"),index$6=require("../imageError/index.js"),index$a=require("../../utils/index.js"),index$d=require("../videoPlayer/components/SpeedController/index.js"),WaveSurfer=require("@labelbee/wavesurfer"),Region=require("@labelbee/wavesurfer/dist/plugin/wavesurfer.regions.js"),Cursor=require("@labelbee/wavesurfer/dist/plugin/wavesurfer.cursor.js"),index=require("./zoomSlider/index.js"),index$e=require("./labelDisplayToggle/index.js"),index$f=require("./clipRegion/index.js"),index$1=require("../audioAnnotate/audioContext/index.js"),ahooks=require("ahooks"),index$2=require("./useAudioScroll/index.js"),index_module=require("./index.module.scss.js"),audio=require("../../utils/audio.js"),index$c=require("./progressDot/index.js"),index$7=require("./clipTip/index.js"),index$5=require("./useSwitchHotkey/index.js"),index$3=require("./useAudioCombine/index.js"),index$4=require("./useAudioSegment/index.js"),index$8=require("./combineTip/index.js"),index$9=require("./segmentTip/index.js"),index$g=require("../../views/MainView/toolFooter/index.js"),utils=require("../videoPlayer/utils.js"),reactI18next=require("react-i18next"),useSize=require("../../hooks/useSize.js");function _interopDefaultLegacy(l){return l&&typeof l=="object"&&"default"in l?l:{default:l}}var React__default=_interopDefaultLegacy(React),___default=_interopDefaultLegacy(_),WaveSurfer__default=_interopDefaultLegacy(WaveSurfer),Region__default=_interopDefaultLegacy(Region),Cursor__default=_interopDefaultLegacy(Cursor),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(l,u,d)=>u in l?__defProp(l,u,{enumerable:!0,configurable:!0,writable:!0,value:d}):l[u]=d,__spreadValues=(l,u)=>{for(var d in u||(u={}))__hasOwnProp.call(u,d)&&__defNormalProp(l,d,u[d]);if(__getOwnPropSymbols)for(var d of __getOwnPropSymbols(u))__propIsEnum.call(u,d)&&__defNormalProp(l,d,u[d]);return l},__spreadProps=(l,u)=>__defProps(l,__getOwnPropDescs(u));const{EToolName}=lbAnnotation.cTool,EKeyCode=lbAnnotation.cKeyCode.default,PER_PROGRESS=.1,AudioPlayerContext=React__default.default.createContext({count:0,isEdit:!1,toolName:EToolName.Empty,imgIndex:0}),AudioPlayer=({fileData:l={},onLoaded:u,context:d,invalid:Ne,height:Fe,hideError:ze,onError:re,updateRegion:T,removeRegion:$,regions:x=[],activeToolPanel:Ue,clipConfigurable:Ze,clipTextConfigurable:ne,clipAttributeList:He,clipAttributeConfigurable:oe,secondaryAttributeConfigurable:Ve,subAttributeList:Xe,isCheck:b,hoverRegionId:W,footer:Ke,drawLayerSlot:ie,clipTextList:Ge,lang:ae})=>{var le,se;const{url:O,path:ue}=l,[N,F]=React.useState(!1),[ce,de]=React.useState(!1),[P,Ye]=React.useState(0),[Je,fe]=React.useState(!1),[S,ve]=React.useState(0),o=React.useRef(null),C=React.useRef(null),me=React.useRef(P),z=e=>{me.current=e,Ye(e)},[pe,Qe]=React.useState(0),[j,et]=React.useState(index.audioZoomInfo.defaultValue),y=React.useRef(null),[ge,tt]=React.useState({}),{audioClipState:U,setAudioClipState:B}=index$1.useAudioClipStore(),[Z,H]=React.useState(!1),c=ahooks.useLatest(U),be=ahooks.useLatest(ge);ahooks.useLatest(N);const A=ahooks.useLatest(x),_e=ahooks.useUpdate(),[ye,rt]=React.useState([]),[Ee,nt]=React.useState({}),[ot,Se]=React.useState(""),[he,it]=React.useState({start:0,end:0}),at=useSize(y),lt=React.useMemo(()=>x.filter(e=>{const{start:t,end:r}=he;return e.start>=t&&e.start<=r||e.end>=t&&e.end<=r||e.id===ot}),[x,he]),st=_.debounce(()=>{lbAnnotation.EventBus.emit("audioZoom")},500),Re=e=>{e<index.audioZoomInfo.min||e>index.audioZoomInfo.max||(et(e),audio.dispatchResizeEvent(),st())};index$2({container:y.current,target:document.querySelector(`[data-id=${(se=(le=c.current)==null?void 0:le.selectedRegion)==null?void 0:se.id}]`),clipping:Z,zoom:j,zoomHandler:Re});const L=()=>{let e=A.current;const{attributeLockList:t}=c.current;t.length&&(e=e.filter(r=>t.includes(r.attribute))),X(),e.forEach(r=>{var n;(n=o.current)==null||n.addRegion(__spreadProps(__spreadValues({},r),{drag:!b,resize:!b,color:"rgba(0, 0, 0, 0)"}))}),_e()},v=e=>{var t,r,n,i,s,m,p;const{id:a,loop:f=!0,playImmediately:g=!1,isLoopStatus:I}=e,q=!1;if(a){const w=(n=(r=(t=o.current)==null?void 0:t.regions)==null?void 0:r.list)!=null?n:{};Object.entries(w).forEach(([,R])=>{const{id:k}=R;a===k?R.select():R.cancelSelect()}),B({selectedRegion:{id:a,loop:q},selectedAttribute:(m=(s=(i=A.current)==null?void 0:i.find(R=>R.id===a))==null?void 0:s.attribute)!=null?m:""}),g&&((p=D(a))==null||p.play())}else B({selectedRegion:{}})},{combineInstance:ut}=index$3({waveRef:o,sortByStartRegions:ye,regionMap:Ee,updateRegion:T,removeRegion:$,generateRegions:L,setSelectedRegion:v}),{segmentInstance:ct,onRegionMouseMove:dt,segmentTimeTip:ft}=index$4({waveRef:o,regionMap:Ee,updateRegion:T,removeRegion:$,generateRegions:L,setSelectedRegion:v}),xe={clipTextConfigurable:ne,clipAttributeList:He,clipAttributeConfigurable:oe,clipConfigurable:Ze,secondaryAttributeConfigurable:Ve,subAttributeList:Xe,clipTextList:Ge};React.useEffect(()=>{var e;ae&&((e=lbUtils.i18n)==null||e.changeLanguage(ae))},[]),React.useEffect(()=>{B({selectedAttribute:""})},[oe]),React.useEffect(()=>{V()},[U.selectedAttribute]),React.useEffect(()=>{L()},[U.attributeLockList]),ahooks.useDeepCompareEffect(()=>{B(xe),setTimeout(()=>{Pe()})},[xe]),ahooks.useDeepCompareEffect(()=>{rt(_.sortBy(x,["start"])),nt(x.reduce((e,t)=>{const{id:r}=t;return __spreadProps(__spreadValues({},e),{[r]:t})},{})),b&&L()},[x]),React.useEffect(()=>{v(W?{id:W,loop:!1,playImmediately:!0}:{})},[W]);const Pe=()=>{var e,t;c.current.clipConfigurable?(!b&&o.current&&((e=o.current)==null||e.enableDragSelection({slop:5})),L()):((t=o.current)==null||t.disableDragSelection(),X()),V()},V=()=>{var e,t,r,n,i;let s="";c.current.clipConfigurable?s=audio.getAttributeColor(c.current.selectedAttribute,(e=c.current.clipAttributeList)!=null?e:[]):s="transparent",((r=(t=o==null?void 0:o.current)==null?void 0:t.cursor)==null?void 0:r.cursor)&&((i=(n=o==null?void 0:o.current)==null?void 0:n.cursor)==null||i.setStyle({border:`2px dashed ${s}`}))},D=e=>{var t,r,n;return((n=(r=(t=o.current)==null?void 0:t.regions)==null?void 0:r.list)!=null?n:{})[e]},Ce=()=>{var e,t;if(O){const r=((t=(e=ue==null?void 0:ue.split("."))==null?void 0:e.pop())==null?void 0:t.toLowerCase())==="pcm";fe(!1),r?getWebPcm2Wac.getWebPcm2WavBase64(O).then(n=>{we(n)}):we(O)}},we=e=>{var t;e&&(de(!0),z(0),ve(0),(t=o==null?void 0:o.current)==null||t.load(e))},X=()=>{var e;(e=o.current)==null||e.clearRegions()},K=e=>{const t=D(e);t&&(H(!1),t==null||t.remove(),$==null||$(e),v({}))},{run:Te}=ahooks.useThrottleFn(v,{wait:100});index$5({sortByStartRegions:ye,setSelectedRegion:v});const vt=e=>{const{start:t,end:r}=be.current;return(t||r)&&e.update(be.current),e},mt=({action:e,id:t,eventDownTime:r})=>{var n,i;if(!c.current.clipConfigurable)return;t&&v({id:t});const s=D((t!=null?t:(n=c.current.selectedRegion)==null?void 0:n.id)||""),m=[];(e==="create"?A.current:(i=A.current)==null?void 0:i.filter(f=>f.id!==s.id)).forEach(f=>{const{start:g,end:I,attribute:q}=f;q===c.current.selectedAttribute&&[g,I].forEach(w=>{m.includes(w)||m.push(w)})});const a=audio.getCanMoveRange(m.sort((f,g)=>f-g),r);o.current.range=a},pt=e=>{V(),setTimeout(()=>{H(!1)});const t=vt(e),{id:r,start:n,end:i}=t;v({id:r,playImmediately:!0});const s={id:r,start:utils.decimalReserved(n,3),end:utils.decimalReserved(i,3)};T==null||T(s),_e()},gt=()=>{const e=WaveSurfer__default.default.create({container:"#waveform",waveColor:"#999",progressColor:"#999",height:Fe||245,normalize:!0,cursorWidth:2,cursorColor:"white",responsive:0,hideScrollbar:!0,plugins:[Region__default.default.create({regions:x,dragSelection:{slop:5},canMove:!1}),Cursor__default.default.create({opacity:1,customStyle:{border:"2px dashed transparent"}})]}),t=()=>{var r;z(((r=o==null?void 0:o.current)==null?void 0:r.getCurrentTime())||0)};e.on("ready",()=>{var r;const n=((r=o==null?void 0:o.current)==null?void 0:r.getDuration())||0;ve(n),t(),u==null||u({duration:Math.round(n)}),de(!1),M(),lbAnnotation.EventBus.on("setCurrentTimeByPosition",Y),lbAnnotation.EventBus.on("clearRegions",X),lbAnnotation.EventBus.on("removeRegionById",K),lbAnnotation.EventBus.on("setSelectedRegion",Te),e.on("regions-eventDown",mt),Pe()}),e.on("audioprocess",()=>{t()}),e.on("play",()=>{F(!0)}),e.on("pause",()=>{F(!1)}),e.on("finish",()=>{F(!1)}),e.on("seek",()=>{t()}),e.on("error",()=>{fe(!0),u==null||u({hasError:!0}),re==null||re()}),e.on("region-created",r=>{var n;const{id:i,start:s,end:m}=r;if(A.current.find(a=>a.id===i))return;Se(i);const p={id:i,start:utils.decimalReserved(s,3),end:utils.decimalReserved(m,3),attribute:c.current.selectedAttribute,text:""};if(c.current.secondaryAttributeConfigurable){const a=lbAnnotation.TagUtils.getDefaultResultByConfig((n=c.current.subAttributeList)!=null?n:[]);p.subAttribute=a!=null?a:{}}ne&&c.current.clipTextList.forEach((f,g)=>{g===0?Object.assign(p,{text:f==null?void 0:f.default}):Object.assign(p,{[f.key]:f==null?void 0:f.default})}),T==null||T(p)}),e.on("region-updated",(r,n)=>{var i,s,m,p,a,f,g,I,q,w;const R=n==null?void 0:n.action;B({combined:!1,segment:!1}),R==="resize"&&((s=(i=o==null?void 0:o.current)==null?void 0:i.cursor)==null||s.setStyle({borderStyle:"solid"})),R==="drag"&&((p=(m=o==null?void 0:o.current)==null?void 0:m.cursor)==null||p.setStyle({borderColor:"transparent"}));const k={},J=[],Q={},At=(a=A.current)==null?void 0:a.filter(E=>E.id!==r.id),qt=(I=(g=(f=o.current)==null?void 0:f.regions)==null?void 0:g.list)!=null?I:{};At.forEach(E=>{var $e,Oe;const{element:ee}=($e=qt[E.id])!=null?$e:{},{start:Lt,end:Dt}=E;if(ee){const{x:We,width:Mt}=((Oe=ee.getBoundingClientRect)==null?void 0:Oe.call(ee))||{},It=We+Mt;[We,It].forEach((te,kt)=>{J.includes(te)||(J.push(te),Q[te]=kt===0?Lt:Dt)})}});const{x:ke,width:jt}=((w=(q=r.element).getBoundingClientRect)==null?void 0:w.call(q))||{},Bt=ke+jt;J.forEach(E=>{Math.abs(audio.precisionMinus(E,ke))<5&&(k.start=Q[E]),Math.abs(audio.precisionMinus(E,Bt))<5&&(k.end=Q[E])}),tt(k),Te({id:r.id}),H(!0)}),e.on("region-update-end",r=>{pt(r),Se("")}),e.on("region-contextmenu",(r,n)=>{if(!b){if(n.preventDefault(),n.stopPropagation(),audio.isDoubleClick(n)){K(r.id);return}v({id:r.id,playImmediately:!0})}}),e.on("region-click",(r,n,i)=>{if(!b){if(n.preventDefault(),n.stopPropagation(),c.current.combined){ut(r);return}if(c.current.segment){ct(r,i);return}v({id:r.id,playImmediately:!0})}}),e.on("region-mousemove",dt),o.current=e},bt=N?React__default.default.createElement(icons.PauseOutlined,null):React__default.default.createElement(icons.CaretRightOutlined,null),Ae=e=>e?`${parseFloat((e/S*100).toFixed(4))}%`:"0%",qe=Ae(P),_t=Ae(pe),h=()=>{if(!ce)return o==null?void 0:o.current},yt=()=>{var e;(e=h())==null||e.skipForward(PER_PROGRESS)},Et=()=>{var e;(e=h())==null||e.skipBackward(PER_PROGRESS)},M=()=>{var e;(e=h())==null||e.playPause(),v({})},je=e=>{var t;switch(e.keyCode){case EKeyCode.Right:yt();break;case EKeyCode.Left:Et();break;case EKeyCode.Space:e.preventDefault(),M();break;case EKeyCode.Delete:if(!b){const{id:r}=((t=c.current)==null?void 0:t.selectedRegion)||{};r&&K(r)}break}},St=e=>{Y(e)},Be=___default.default.throttle(St,50);let G=!1;const Le=()=>{G&&(M(),G=!1),document.removeEventListener("mousemove",Be),document.removeEventListener("mouseup",Le)},ht=e=>{Y(e),N&&(G=!0,M()),document.addEventListener("mousemove",Be),document.addEventListener("mouseup",Le)},Rt=()=>{Ce()};React.useEffect(()=>(gt(),()=>{var e;(e=o==null?void 0:o.current)==null||e.destroy(),o.current=null,lbAnnotation.EventBus.unbindAll("setCurrentTimeByPosition"),lbAnnotation.EventBus.unbindAll("clearRegions"),lbAnnotation.EventBus.unbindAll("removeRegionById"),lbAnnotation.EventBus.unbindAll("setSelectedRegion")}),[]);const xt=e=>{var t,r,n;(t=h())==null||t.playPause(),(r=h())==null||r.setPlaybackRate(e),(n=h())==null||n.playPause()};React.useEffect(()=>(document.addEventListener("keydown",je),()=>{document.removeEventListener("keydown",je)})),React.useEffect(()=>{v({}),Ce()},[O]),React.useEffect(()=>{De()},[at,S,j]);const Pt=()=>{if(y.current&&S){const e=y.current.scrollLeft,t=y.current.clientWidth,r=e/y.current.scrollWidth*S,n=(e+t)/y.current.scrollWidth*S;it({start:r,end:n})}},{run:De}=ahooks.useThrottleFn(Pt,{wait:300}),Me=e=>{var t,r,n,i;if((o==null?void 0:o.current)&&(C==null?void 0:C.current)){const s=(r=(t=o==null?void 0:o.current)==null?void 0:t.getDuration())!=null?r:0,m=(n=C==null?void 0:C.current)==null?void 0:n.getBoundingClientRect();let a=(e.clientX-m.left)/(((i=C==null?void 0:C.current)==null?void 0:i.clientWidth)||0)*s;return a>s&&(a=s),a}return 0},Y=e=>{var t;const r=Me(e);(t=o==null?void 0:o.current)==null||t.skip(r-me.current),z(r)},Ct=e=>{Qe(Me(e))},wt=S?Math.max(S-P,0):0,Tt=(d==null?void 0:d.toolName)!==EToolName.Empty&&(d==null?void 0:d.isEdit)!==!0&&(Ue==="remark"||b),Ie=React__default.default.createElement("div",{className:index_module.audioPlayer},Je&&!ze&&React__default.default.createElement(index$6,{fileTypeName:"\u97F3\u9891",ignoreOffsetY:!0,reloadImage:Rt,backgroundColor:"#ffffffbb"}),React__default.default.createElement(index$7,{getRegionInstanceById:D,clipping:Z}),React__default.default.createElement(index$8,{container:y.current}),React__default.default.createElement(index$9,{segmentTimeTip:ft}),React__default.default.createElement("div",{className:index_module.waveformContainer,ref:y,onScroll:()=>De()},React__default.default.createElement("div",{id:"waveform",style:{width:`${j*100}%`},className:index$a.classnames({[index_module.waveform]:!0,"bee-audio-combined":c.current.combined,"bee-audio-clip":c.current.clipConfigurable})},Ne&&React__default.default.createElement(index$b,{isAudio:!0}),React__default.default.createElement("div",{ref:C,className:index_module.progress,onMouseDown:ht,onMouseMove:Ct},React__default.default.createElement("div",{className:index$a.classnames({[index_module.radioTooltip]:!0}),style:{left:qe}},audio.formatTime(P)),React__default.default.createElement("div",{className:index$a.classnames({[index_module.radioTooltip]:!0,[index_module.mouseTooltip]:!0}),style:{left:_t}},audio.formatTime(pe)),React__default.default.createElement(index$c,{playPercentage:qe})),Tt&&(ie==null?void 0:ie({currentTime:P,remainingTime:wt,audioPlayer:h()})))),React__default.default.createElement("div",{className:index_module.controlBar},React__default.default.createElement(antd.Button,{type:"link",icon:bt,onClick:()=>{M()},className:index$a.classnames({[index_module.playButton]:!0,[index_module.playButtonDisabled]:ce})}),React__default.default.createElement("span",{className:index_module.time},`${audio.timeFormat(P,"ss.SSS")} / -${audio.timeFormat(S-P,"ss.SSS")}`),React__default.default.createElement(index$d.default,{playerType:index$d.EPlayerType.Audio,onChange:e=>{xt(e)}}),React__default.default.createElement(index.default,{onChange:e=>{var t;(t=h())==null||t.pause(),Re(e)},zoom:j}),React__default.default.createElement(index$e,{EventBus:lbAnnotation.EventBus})));return d?React__default.default.createElement(AudioPlayerContext.Provider,{value:d},Ie,lt.map(e=>{const{id:t}=e,r=document.querySelector(`[data-id=${t}]`);return r?React__default.default.createElement(index$f,{el:r,key:t,region:e,edgeAdsorption:ge,clipping:Z,zoom:j,instance:D(t),isCheck:b}):null}),React__default.default.createElement(index$g.default,{footer:Ke})):Ie},WrapAudioPlayer=l=>React__default.default.createElement(reactI18next.I18nextProvider,{i18n:lbUtils.i18n},React__default.default.createElement(AudioPlayer,__spreadValues({},l)));exports.AudioPlayer=AudioPlayer,exports.AudioPlayerContext=AudioPlayerContext,exports.WrapAudioPlayer=WrapAudioPlayer;
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index$1=require("./components/AnnotationView/index.js"),pointCloudAnnotationView=require("./components/AnnotationView/pointCloudAnnotationView.js"),index$2=require("./components/LLMToolView/questionView/index.js"),index$3=require("./components/NLPToolView/textContent/index.js"),lbUtils=require("@labelbee/lb-utils"),React=require("react"),reactI18next=require("react-i18next"),reactRedux=require("react-redux"),App=require("./App.js"),configureStore=require("./configureStore.js"),actionCreators=require("./store/annotation/actionCreators.js"),TagToolInstanceAdaptorI18nProvider=require("./components/videoAnnotate/videoTagTool/TagToolInstanceAdaptorI18nProvider.js"),PointCloudContext=require("./components/pointCloudView/PointCloudContext.js"),ctx=require("./store/ctx.js"),index$5=require("./components/predictTracking/predictTrackingIcon/index.js"),index$4=require("./components/LLMToolView/index.js"),index$6=require("./views/MainView/toolFooter/SwitchCuboidBoxIn2DView/index.js"),BatchSwitchConnectIn2DView=require("./views/MainView/toolFooter/BatchSwitchConnectIn2DView/BatchSwitchConnectIn2DView.js"),index$7=require("./components/measureCanvas/index.js"),index$8=require("./views/MainView/sidebar/PointCloudToolSidebar/components/annotatedBox/index.js"),index$9=require("./views/MainView/sidebar/PointCloudToolSidebar/components/rectRotateSensitivitySlider/index.js"),index$a=require("./views/MainView/sidebar/PointCloudToolSidebar/components/findTrackIDIndex/index.js"),index$b=require("./components/audioPlayer/index.js"),index$c=require("./utils/index.js"),index$d=require("./components/subAttributeList/index.js"),useToolStyle=require("./hooks/useToolStyle.js"),index$e=require("./constant/index.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,r)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,__spreadValues=(e,t)=>{for(var r in t||(t={}))__hasOwnProp.call(t,r)&&__defNormalProp(e,r,t[r]);if(__getOwnPropSymbols)for(var r of __getOwnPropSymbols(t))__propIsEnum.call(t,r)&&__defNormalProp(e,r,t[r]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t));const store=configureStore();lbUtils.i18n.use(reactI18next.initReactI18next),lbUtils.i18n.options.react={useSuspense:!1};const OutputApp=(e,t)=>{const[r,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index$1=require("./components/AnnotationView/index.js"),pointCloudAnnotationView=require("./components/AnnotationView/pointCloudAnnotationView.js"),index$2=require("./components/LLMToolView/questionView/index.js"),index$3=require("./components/NLPToolView/textContent/index.js"),lbUtils=require("@labelbee/lb-utils"),React=require("react"),reactI18next=require("react-i18next"),reactRedux=require("react-redux"),App=require("./App.js"),configureStore=require("./configureStore.js"),actionCreators=require("./store/annotation/actionCreators.js"),TagToolInstanceAdaptorI18nProvider=require("./components/videoAnnotate/videoTagTool/TagToolInstanceAdaptorI18nProvider.js"),PointCloudContext=require("./components/pointCloudView/PointCloudContext.js"),ctx=require("./store/ctx.js"),index$5=require("./components/predictTracking/predictTrackingIcon/index.js"),index$4=require("./components/LLMToolView/index.js"),index$6=require("./views/MainView/toolFooter/SwitchCuboidBoxIn2DView/index.js"),BatchSwitchConnectIn2DView=require("./views/MainView/toolFooter/BatchSwitchConnectIn2DView/BatchSwitchConnectIn2DView.js"),index$7=require("./components/measureCanvas/index.js"),index$8=require("./views/MainView/sidebar/PointCloudToolSidebar/components/annotatedBox/index.js"),index$9=require("./views/MainView/sidebar/PointCloudToolSidebar/components/rectRotateSensitivitySlider/index.js"),index$a=require("./views/MainView/sidebar/PointCloudToolSidebar/components/findTrackIDIndex/index.js"),index$b=require("./components/audioPlayer/index.js"),index$c=require("./utils/index.js"),index$d=require("./components/subAttributeList/index.js"),useToolStyle=require("./hooks/useToolStyle.js"),reducer=require("./store/annotation/reducer.js"),index$e=require("./constant/index.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,t,r)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,__spreadValues=(e,t)=>{for(var r in t||(t={}))__hasOwnProp.call(t,r)&&__defNormalProp(e,r,t[r]);if(__getOwnPropSymbols)for(var r of __getOwnPropSymbols(t))__propIsEnum.call(t,r)&&__defNormalProp(e,r,t[r]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t));const store=configureStore();lbUtils.i18n.use(reactI18next.initReactI18next),lbUtils.i18n.options.react={useSuspense:!1};const OutputApp=(e,t)=>{const[r,a]=React.useState();return React.useImperativeHandle(t,()=>({toolInstance:r,annotationEngine:store.getState().annotation.annotationEngine,pageBackwardActions:()=>store.dispatch(actionCreators.PageBackward()),pageForwardActions:()=>store.dispatch(actionCreators.PageForward()),pageJump:(o,n)=>{const i=~~o-1;store.dispatch(actionCreators.PageJump(i)),n&&store.dispatch(reducer.LoadFileAndFileData(i))},hello:()=>alert("hello labelBee!!!")}),[r]),React__default.default.createElement(reactRedux.Provider,{store,context:ctx.LabelBeeContext},React__default.default.createElement(reactI18next.I18nextProvider,{i18n:lbUtils.i18n},React__default.default.createElement(useToolStyle.ToolStyleProvider,{value:e.toolStyle},React__default.default.createElement(PointCloudContext.PointCloudProvider,null,React__default.default.createElement(App,__spreadProps(__spreadValues({},e),{setToolInstance:o=>{var n;a(o),(n=e.onLoad)==null||n.call(e,{toolInstance:o})}}))))))};var index=React__default.default.forwardRef(OutputApp);exports.AnnotationView=index$1,exports.PointCloudAnnotationView=pointCloudAnnotationView,exports.QuestionView=index$2.default,exports.TextContent=index$3,Object.defineProperty(exports,"i18n",{enumerable:!0,get:function(){return lbUtils.i18n}}),exports.VideoTagTool=TagToolInstanceAdaptorI18nProvider.VideoTagTool,exports.PredictTracking=index$5,exports.LLMToolView=index$4,exports.SwitchCuboidBoxIn2DView=index$6.default,Object.defineProperty(exports,"SwitchCuboidBoxIn2DViewStateMode",{enumerable:!0,get:function(){return index$6.SwitchCuboidBoxIn2DViewStateMode}}),exports.BatchSwitchConnectIn2DView=BatchSwitchConnectIn2DView.default,exports.MeasureCanvas=index$7,exports.AnnotatedBox=index$8,exports.RectRotateSensitivitySlider=index$9,exports.FindTrackIDIndex=index$a.FindTrackIDIndexInCheckMode,exports.AudioPlayer=index$b.WrapAudioPlayer,exports.generatePointCloudBoxRects=index$c.generatePointCloudBoxRects,exports.SubAttributeList=index$d,Object.defineProperty(exports,"EDataFormatType",{enumerable:!0,get:function(){return index$e.EDataFormatType}}),Object.defineProperty(exports,"ELLMDataType",{enumerable:!0,get:function(){return index$e.ELLMDataType}}),Object.defineProperty(exports,"EStepType",{enumerable:!0,get:function(){return index$e.EStepType}}),Object.defineProperty(exports,"ESubmitType",{enumerable:!0,get:function(){return index$e.ESubmitType}}),exports.componentCls=index$e.componentCls,exports.prefix=index$e.prefix,exports.default=index,exports.store=store;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import a,{useContext as
|
|
1
|
+
import a,{useContext as $,useState as v,useEffect as u}from"react";import{connect as U}from"react-redux";import{LabelBeeContext as B,LLMContext as K}from"../../store/ctx.js";import{message as W}from"antd";import{ELLMDataType as L,prefix as z}from"../../constant/index.js";import{Layout as G}from"antd/es";import H from"./questionView/index.js";import{useTranslation as J}from"react-i18next";import O from"../../views/MainView/annotationTips/index.js";import{getCurrentResultFromResultList as X}from"./utils/data.js";import{getStepConfig as Y}from"../../store/annotation/reducer.js";import{jsonParser as Z}from"../../utils/index.js";import ee from"../messageMaskLayer/index.js";const q=`${z}-LLMView`,te=g=>{var x;const{annotation:M,checkMode:T=!0,tips:A,showTips:E,drawLayerSlot:I}=g,{imgIndex:n,imgList:s,stepList:w,step:d,toolInstance:l}=M,{hoverKey:R,modelAPIResponse:P,setModelAPIResponse:_,newAnswerList:c}=$(K),[V,S]=v([]),[h,k]=v(""),[t,Q]=v(),{t:y}=J(),[,b]=v(0);return u(()=>{let e;if(!T)return e=setInterval(()=>{W.info(y("EfficientListening"))},1e3*60),()=>{e&&clearInterval(e)}},[]),u(()=>{if(l)return l.on("validUpdated",()=>{b(e=>e+1)}),()=>{l.unbindAll("validUpdated")}},[l]),u(()=>{var e,o,i,r,j,C;if(!s[n])return;const D=((e=t==null?void 0:t.dataType)==null?void 0:e.prompt)===L.Picture,F=((o=t==null?void 0:t.dataType)==null?void 0:o.response)===L.Picture,m=(i=s[n])==null?void 0:i.questionList,p=(r=s[n])==null?void 0:r.llmFile,N=D?p==null?void 0:p.question:m==null?void 0:m.question;k(N);let f=(m==null?void 0:m.answerList)||[];F&&(f=(p==null?void 0:p.answerList)||[]),((j=t==null?void 0:t.dataType)==null?void 0:j.response)===L.None&&(f=[]),((C=t==null?void 0:t.dataType)==null?void 0:C.response)===L.Text&&(c==null?void 0:c.length)>0&&(f=c),S(f)},[n,c,t,(x=s[n])==null?void 0:x.id]),u(()=>{var e;if(!s[n])return;const o=(e=s[n])!=null?e:{},i=X(o==null?void 0:o.result,d),r=(i==null?void 0:i.length)>0?i[0]:i;_((r==null?void 0:r.modelAPIResponse)||[])},[n]),u(()=>{var e;if(w&&d){const o=(e=Y(w,d))==null?void 0:e.config;Q(Z(o))}},[w,d]),a.createElement(G,{className:q},!(l==null?void 0:l.valid)&&a.createElement(ee,{message:y("InvalidQuestionAndSkip")}),I==null?void 0:I({}),a.createElement("div",{className:`${q}-question`},E===!0&&a.createElement(O,{tips:A}),a.createElement(H,{hoverKey:R,question:h,answerList:V,modelAPIResponse:P,setModelAPIResponse:_,checkMode:T,annotation:M,LLMConfig:t})))},ne=g=>({annotation:g.annotation});var oe=U(ne,null,null,{context:B})(te);export{oe as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import r,{useContext as q,useState as D,useEffect as C}from"react";import{prefix as ct}from"../../../constant/index.js";import{Empty as dt,Button as ut}from"antd";import pt from"./components/answerSort/index.js";import{connect as mt}from"react-redux";import{isBoolean as ft,isString as gt,isNumber as vt,isObject as Lt}from"lodash";import xt from"./components/answerList/index.js";import{LabelBeeContext as wt,LLMContext as z}from"../../../store/ctx.js";import{jsonParser as F}from"../../../utils/index.js";import{getStepConfig as St}from"../../../store/annotation/reducer.js";import{useCustomToolInstance as bt}from"../../../hooks/annotation.js";import{PageForward as j}from"../../../store/annotation/actionCreators.js";import{cKeyCode as Et,EToolName as _t}from"@labelbee/lb-annotation";import{useTranslation as yt}from"react-i18next";import{getCurrentResultFromResultList as ht,getRenderDataByResult as Ct,formatSort as jt}from"../utils/data.js";import Tt from"../../../assets/annotation/LLMTool/empty.svg.js";import Pt from"./components/textInputBox/index.js";import It from"../../tagList/components/overall/index.js";import Ot from"../../../utils/StepUtils.js";var At=Object.defineProperty,Rt=Object.defineProperties,Dt=Object.getOwnPropertyDescriptors,W=Object.getOwnPropertySymbols,Nt=Object.prototype.hasOwnProperty,Mt=Object.prototype.propertyIsEnumerable,G=(s,i,a)=>i in s?At(s,i,{enumerable:!0,configurable:!0,writable:!0,value:a}):s[i]=a,
|
|
1
|
+
import r,{useContext as q,useState as D,useEffect as C}from"react";import{prefix as ct}from"../../../constant/index.js";import{Empty as dt,Button as ut}from"antd";import pt from"./components/answerSort/index.js";import{connect as mt}from"react-redux";import{isBoolean as ft,isString as gt,isNumber as vt,isObject as Lt}from"lodash";import xt from"./components/answerList/index.js";import{LabelBeeContext as wt,LLMContext as z}from"../../../store/ctx.js";import{jsonParser as F}from"../../../utils/index.js";import{getStepConfig as St}from"../../../store/annotation/reducer.js";import{useCustomToolInstance as bt}from"../../../hooks/annotation.js";import{PageForward as j}from"../../../store/annotation/actionCreators.js";import{cKeyCode as Et,EToolName as _t}from"@labelbee/lb-annotation";import{useTranslation as yt}from"react-i18next";import{getCurrentResultFromResultList as ht,getRenderDataByResult as Ct,formatSort as jt}from"../utils/data.js";import Tt from"../../../assets/annotation/LLMTool/empty.svg.js";import Pt from"./components/textInputBox/index.js";import It from"../../tagList/components/overall/index.js";import Ot from"../../../utils/StepUtils.js";var At=Object.defineProperty,Rt=Object.defineProperties,Dt=Object.getOwnPropertyDescriptors,W=Object.getOwnPropertySymbols,Nt=Object.prototype.hasOwnProperty,Mt=Object.prototype.propertyIsEnumerable,G=(s,i,a)=>i in s?At(s,i,{enumerable:!0,configurable:!0,writable:!0,value:a}):s[i]=a,u=(s,i)=>{for(var a in i||(i={}))Nt.call(i,a)&&G(s,a,i[a]);if(W)for(var a of W(i))Mt.call(i,a)&&G(s,a,i[a]);return s},p=(s,i)=>Rt(s,Dt(i));const Bt=Et.default,T=`${ct}-sidebar`,$t=s=>{var i,a;const{annotation:J,dispatch:w,checkMode:Q}=s,{imgIndex:S,imgList:P,stepList:b,step:E,skipBeforePageTurning:_}=J,{modelAPIResponse:N,setModelAPIResponse:H}=q(z),{t:y}=yt(),l=(i=P[S])!=null?i:{},M=F(l==null?void 0:l.result),{toolInstanceRef:m}=bt({basicInfo:M}),[f,X]=D(),[I,Y]=D(!0),{setNewAnswerList:Z}=q(z),[n,L]=D({}),x=!m.current.valid||Q;C(()=>{var t;if(b&&E){const e=(t=St(b,E))==null?void 0:t.config;X(F(e))}},[E,JSON.stringify(b)]),C(()=>{!l||S===-1||(m.current.setValid=B,m.current.clearResult=tt,B(),$())},[S,f,l==null?void 0:l.id]);const tt=()=>{$(l==null?void 0:l.questionList)},B=t=>{var e;const o=t!=null?t:M.valid;ft(o)&&(Y(o),m.current.valid=o,(e=m.current)==null||e.emit("validUpdated"))},$=t=>{const e=Ot.getCurrentStepInfo(E,b),o=ht(l==null?void 0:l.result,e.step);let c=l==null?void 0:l.questionList;(o==null?void 0:o.answerList)&&m.current.valid&&(c=o),t&&(c=t,o.sort=[]);const g=Ct(f,c);L(u({},g)),H([])};C(()=>{et(),Z((n==null?void 0:n.answerList)||[])},[n,N,I]),C(()=>(window.addEventListener("keydown",V),()=>{window.removeEventListener("keydown",V)}),[]);const et=()=>{const{newSort:t,answerList:e,textAttribute:o,tagList:c}=n,g=jt(t||[]),d={answerList:e,sort:g,tagList:c,textAttribute:o,id:l==null?void 0:l.id,modelAPIResponse:N};m.current.exportData=()=>[[d],{valid:I}],m.current.currentPageResult=p(u({},d),{toolName:_t.LLM,valid:I})},V=t=>{if(t.ctrlKey&&t.keyCode===Bt.Enter){if(_){_(()=>w(j()));return}w(j())}},nt=({order:t,value:e,key:o})=>{const{answerList:c}=n,g=c==null?void 0:c.map(d=>{var h;if((d==null?void 0:d.order)===t){if(o==="textEdit"&>(e))return p(u({},d),{newAnswer:e});if(vt(e))return p(u({},d),{score:e});if(Lt(e)&&o){const A={[e==null?void 0:e.key]:e.value},R=(h=d[o])!=null?h:{};return p(u({},d),{[o]:u(u({},R),A)})}}return d});L(p(u({},n),{answerList:g||[]}))};if((()=>{var t,e;const{indicatorScore:o=[],indicatorDetermine:c=[],text:g=[],enableSort:d,isTextEdit:h,tagInputListConfigurable:A}=f||{},R=((t=o==null?void 0:o.filter(v=>v.label&&v.value&&v.score))==null?void 0:t.length)>0,at=((e=c==null?void 0:c.filter(v=>v.label&&v.value))==null?void 0:e.length)>0,lt=(g==null?void 0:g.length)>0;return!(R||at||lt||d||h||A)})())return r.createElement("div",{className:`${T}`},r.createElement("div",{className:`${T}__content`,style:{display:"flex",justifyContent:"center",alignItems:"center"}},r.createElement(dt,{description:r.createElement("span",{style:{color:"#ccc"}},y("NoScoringScale")),imageStyle:{width:200,height:200},image:r.createElement("img",{src:Tt})})));const{indicatorScore:k=[],indicatorDetermine:K=[],enableSort:ot,isTextEdit:rt,inputList:O=[],tagInputListConfigurable:U}=f||{},it=U&&((a=O.filter(t=>!t.isOverall))==null?void 0:a.length)>0,st=(K==null?void 0:K.length)>0||(k==null?void 0:k.length)>0||rt||it;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"}},y("GlobalAnnotation")),ot&&r.createElement(pt,{waitSortList:(n==null?void 0:n.waitSorts)||[],sortList:(n==null?void 0:n.newSort)||[],setSortList:t=>{L(p(u({},n),{newSort:t}))},disabeledAll:x}),U&&O.length&&r.createElement(It,{inputList:O,selectedTags:(n==null?void 0:n.tagList)||{},updateValue:t=>{const{key:e,value:o}=t,c=n==null?void 0:n.tagList;L(p(u({},n),{tagList:p(u({},c),{[e]:o})}))},disabeledAll:x}),(f==null?void 0:f.text)&&r.createElement("div",{style:{padding:"0px 16px",marginTop:"16px"}},r.createElement(Pt,{textAttribute:(n==null?void 0:n.textAttribute)||[],LLMConfig:f,setText:t=>L(p(u({},n),{textAttribute:t})),disabeledAll:x})),r.createElement("div",{style:{fontSize:"18px",fontWeight:500,padding:"0px 16px",marginTop:"16px"}},y("QualifiedAnnotation")),r.createElement("div",null,st&&r.createElement(xt,{list:(n==null?void 0:n.answerList)||[],LLMConfig:f,updateValue:nt,disabeledAll:x}))),r.createElement("div",{style:{margin:"24px 16px",display:"flex"}},(P==null?void 0:P.length)-1!==S&&r.createElement(ut,{type:"primary",style:{marginLeft:"auto"},onClick:()=>{if(_){_(()=>w(j()));return}w(j())},disabled:x},y("Save"))))},Vt=s=>({annotation:s.annotation});var kt=mt(Vt,null,null,{context:wt})($t);export{kt as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import i,{useState as g,useRef as U,useMemo as ar,useEffect as P}from"react";import{getWebPcm2WavBase64 as ur}from"../audioAnnotate/utils/getWebPcm2Wac.js";import cr,{debounce as dr,sortBy as mr}from"lodash";import{PauseOutlined as fr,CaretRightOutlined as pr}from"@ant-design/icons";import{cKeyCode as vr,cTool as gr,EventBus as E,TagUtils as br}from"@labelbee/lb-annotation";import{i18n as Je}from"@labelbee/lb-utils";import{Button as yr}from"antd";import _r from"../invalidPage/index.js";import Er from"../imageError/index.js";import{classnames as V}from"../../utils/index.js";import Sr,{EPlayerType as hr}from"../videoPlayer/components/SpeedController/index.js";import Rr from"@labelbee/wavesurfer";import Pr from"@labelbee/wavesurfer/dist/plugin/wavesurfer.regions.js";import Cr from"@labelbee/wavesurfer/dist/plugin/wavesurfer.cursor.js";import Tr,{audioZoomInfo as de}from"./zoomSlider/index.js";import wr from"./labelDisplayToggle/index.js";import Ar from"./clipRegion/index.js";import{useAudioClipStore as jr}from"../audioAnnotate/audioContext/index.js";import{useLatest as X,useUpdate as xr,useDeepCompareEffect as Qe,useThrottleFn as et}from"ahooks";import Dr from"./useAudioScroll/index.js";import y from"./index.module.scss.js";import{getAttributeColor as Lr,formatTime as tt,timeFormat as rt,dispatchResizeEvent as Ir,precisionMinus as nt,isDoubleClick as Mr,getCanMoveRange as kr}from"../../utils/audio.js";import Br from"./progressDot/index.js";import Or from"./clipTip/index.js";import Wr from"./useSwitchHotkey/index.js";import Nr from"./useAudioCombine/index.js";import zr from"./useAudioSegment/index.js";import Fr from"./combineTip/index.js";import $r from"./segmentTip/index.js";import Hr from"../../views/MainView/toolFooter/index.js";import{decimalReserved as Z}from"../videoPlayer/utils.js";import{I18nextProvider as Ur}from"react-i18next";import Vr from"../../hooks/useSize.js";var Xr=Object.defineProperty,Zr=Object.defineProperties,qr=Object.getOwnPropertyDescriptors,ot=Object.getOwnPropertySymbols,Kr=Object.prototype.hasOwnProperty,Gr=Object.prototype.propertyIsEnumerable,it=(f,u,d)=>u in f?Xr(f,u,{enumerable:!0,configurable:!0,writable:!0,value:d}):f[u]=d,me=(f,u)=>{for(var d in u||(u={}))Kr.call(u,d)&&it(f,d,u[d]);if(ot)for(var d of ot(u))Gr.call(u,d)&&it(f,d,u[d]);return f},lt=(f,u)=>Zr(f,qr(u));const{EToolName:st}=gr,q=vr.default,at=.1,ut=i.createContext({count:0,isEdit:!1,toolName:st.Empty,imgIndex:0}),ct=({fileData:f={},onLoaded:u,context:d,invalid:dt,height:mt,hideError:ft,onError:fe,updateRegion:L,removeRegion:F,regions:A=[],activeToolPanel:pt,clipConfigurable:vt,clipTextConfigurable:pe,clipAttributeList:gt,clipAttributeConfigurable:ve,secondaryAttributeConfigurable:bt,subAttributeList:yt,isCheck:S,hoverRegionId:K,footer:_t,drawLayerSlot:ge,clipTextList:Et,lang:be})=>{var ye,_e;const{url:$,path:Ee}=f,[G,Y]=g(!1),[Se,he]=g(!1),[j,St]=g(0),[ht,Re]=g(!1),[C,Pe]=g(0),o=U(null),x=U(null),Ce=U(j),J=e=>{Ce.current=e,St(e)},[Te,Rt]=g(0),[H,Pt]=g(de.defaultValue),h=U(null),[we,Ct]=g({}),{audioClipState:Q,setAudioClipState:k}=jr(),[ee,te]=g(!1),c=X(Q),Ae=X(we);X(G);const I=X(A),je=xr(),[xe,Tt]=g([]),[De,wt]=g({}),[At,Le]=g(""),[Ie,jt]=g({start:0,end:0}),xt=Vr(h),Dt=ar(()=>A.filter(e=>{const{start:t,end:r}=Ie;return e.start>=t&&e.start<=r||e.end>=t&&e.end<=r||e.id===At}),[A,Ie]),Lt=dr(()=>{E.emit("audioZoom")},500),Me=e=>{e<de.min||e>de.max||(Pt(e),Ir(),Lt())};Dr({container:h.current,target:document.querySelector(`[data-id=${(_e=(ye=c.current)==null?void 0:ye.selectedRegion)==null?void 0:_e.id}]`),clipping:ee,zoom:H,zoomHandler:Me});const B=()=>{let e=I.current;const{attributeLockList:t}=c.current;t.length&&(e=e.filter(r=>t.includes(r.attribute))),ne(),e.forEach(r=>{var n;(n=o.current)==null||n.addRegion(lt(me({},r),{drag:!S,resize:!S,color:"rgba(0, 0, 0, 0)"}))}),je()},p=e=>{var t,r,n,l,a,v,b;const{id:s,loop:m=!0,playImmediately:_=!1,isLoopStatus:N}=e,M=!1;if(s){const D=(n=(r=(t=o.current)==null?void 0:t.regions)==null?void 0:r.list)!=null?n:{};Object.entries(D).forEach(([,w])=>{const{id:z}=w;s===z?w.select():w.cancelSelect()}),k({selectedRegion:{id:s,loop:M},selectedAttribute:(v=(a=(l=I.current)==null?void 0:l.find(w=>w.id===s))==null?void 0:a.attribute)!=null?v:""}),_&&((b=O(s))==null||b.play())}else k({selectedRegion:{}})},{combineInstance:It}=Nr({waveRef:o,sortByStartRegions:xe,regionMap:De,updateRegion:L,removeRegion:F,generateRegions:B,setSelectedRegion:p}),{segmentInstance:Mt,onRegionMouseMove:kt,segmentTimeTip:Bt}=zr({waveRef:o,regionMap:De,updateRegion:L,removeRegion:F,generateRegions:B,setSelectedRegion:p}),ke={clipTextConfigurable:pe,clipAttributeList:gt,clipAttributeConfigurable:ve,clipConfigurable:vt,secondaryAttributeConfigurable:bt,subAttributeList:yt,clipTextList:Et};P(()=>{var e;be&&((e=Je)==null||e.changeLanguage(be))},[]),P(()=>{k({selectedAttribute:""})},[ve]),P(()=>{re()},[Q.selectedAttribute]),P(()=>{B()},[Q.attributeLockList]),Qe(()=>{k(ke),setTimeout(()=>{Be()})},[ke]),Qe(()=>{Tt(mr(A,["start"])),wt(A.reduce((e,t)=>{const{id:r}=t;return lt(me({},e),{[r]:t})},{})),S&&B()},[A]),P(()=>{p(K?{id:K,loop:!1,playImmediately:!0}:{})},[K]);const Be=()=>{var e,t;c.current.clipConfigurable?(!S&&o.current&&((e=o.current)==null||e.enableDragSelection({slop:5})),B()):((t=o.current)==null||t.disableDragSelection(),ne()),re()},re=()=>{var e,t,r,n,l;let a="";c.current.clipConfigurable?a=Lr(c.current.selectedAttribute,(e=c.current.clipAttributeList)!=null?e:[]):a="transparent",((r=(t=o==null?void 0:o.current)==null?void 0:t.cursor)==null?void 0:r.cursor)&&((l=(n=o==null?void 0:o.current)==null?void 0:n.cursor)==null||l.setStyle({border:`2px dashed ${a}`}))},O=e=>{var t,r,n;return((n=(r=(t=o.current)==null?void 0:t.regions)==null?void 0:r.list)!=null?n:{})[e]},Oe=()=>{var e,t;if($){const r=((t=(e=Ee==null?void 0:Ee.split("."))==null?void 0:e.pop())==null?void 0:t.toLowerCase())==="pcm";Re(!1),r?ur($).then(n=>{We(n)}):We($)}},We=e=>{var t;e&&(he(!0),J(0),Pe(0),(t=o==null?void 0:o.current)==null||t.load(e))},ne=()=>{var e;(e=o.current)==null||e.clearRegions()},oe=e=>{const t=O(e);t&&(te(!1),t==null||t.remove(),F==null||F(e),p({}))},{run:Ne}=et(p,{wait:100});Wr({sortByStartRegions:xe,setSelectedRegion:p});const Ot=e=>{const{start:t,end:r}=Ae.current;return(t||r)&&e.update(Ae.current),e},Wt=({action:e,id:t,eventDownTime:r})=>{var n,l;if(!c.current.clipConfigurable)return;t&&p({id:t});const a=O((t!=null?t:(n=c.current.selectedRegion)==null?void 0:n.id)||""),v=[];(e==="create"?I.current:(l=I.current)==null?void 0:l.filter(m=>m.id!==a.id)).forEach(m=>{const{start:_,end:N,attribute:M}=m;M===c.current.selectedAttribute&&[_,N].forEach(D=>{v.includes(D)||v.push(D)})});const s=kr(v.sort((m,_)=>m-_),r);o.current.range=s},Nt=e=>{re(),setTimeout(()=>{te(!1)});const t=Ot(e),{id:r,start:n,end:l}=t;p({id:r,playImmediately:!0});const a={id:r,start:Z(n,3),end:Z(l,3)};L==null||L(a),je()},zt=()=>{const e=Rr.create({container:"#waveform",waveColor:"#999",progressColor:"#999",height:mt||245,normalize:!0,cursorWidth:2,cursorColor:"white",responsive:0,hideScrollbar:!0,plugins:[Pr.create({regions:A,dragSelection:{slop:5},canMove:!1}),Cr.create({opacity:1,customStyle:{border:"2px dashed transparent"}})]}),t=()=>{var r;J(((r=o==null?void 0:o.current)==null?void 0:r.getCurrentTime())||0)};e.on("ready",()=>{var r;const n=((r=o==null?void 0:o.current)==null?void 0:r.getDuration())||0;Pe(n),t(),u==null||u({duration:Math.round(n)}),he(!1),W(),E.on("setCurrentTimeByPosition",le),E.on("clearRegions",ne),E.on("removeRegionById",oe),E.on("setSelectedRegion",Ne),e.on("regions-eventDown",Wt),Be()}),e.on("audioprocess",()=>{t()}),e.on("play",()=>{Y(!0)}),e.on("pause",()=>{Y(!1)}),e.on("finish",()=>{Y(!1)}),e.on("seek",()=>{t()}),e.on("error",()=>{Re(!0),u==null||u({hasError:!0}),fe==null||fe()}),e.on("region-created",r=>{var n;const{id:l,start:a,end:v}=r;if(I.current.find(s=>s.id===l))return;Le(l);const b={id:l,start:Z(a,3),end:Z(v,3),attribute:c.current.selectedAttribute,text:""};if(c.current.secondaryAttributeConfigurable){const s=br.getDefaultResultByConfig((n=c.current.subAttributeList)!=null?n:[]);b.subAttribute=s!=null?s:{}}pe&&c.current.clipTextList.forEach((m,_)=>{_===0?Object.assign(b,{text:m==null?void 0:m.default}):Object.assign(b,{[m.key]:m==null?void 0:m.default})}),L==null||L(b)}),e.on("region-updated",(r,n)=>{var l,a,v,b,s,m,_,N,M,D;const w=n==null?void 0:n.action;k({combined:!1,segment:!1}),w==="resize"&&((a=(l=o==null?void 0:o.current)==null?void 0:l.cursor)==null||a.setStyle({borderStyle:"solid"})),w==="drag"&&((b=(v=o==null?void 0:o.current)==null?void 0:v.cursor)==null||b.setStyle({borderColor:"transparent"}));const z={},se=[],ae={},Qt=(s=I.current)==null?void 0:s.filter(R=>R.id!==r.id),er=(N=(_=(m=o.current)==null?void 0:m.regions)==null?void 0:_.list)!=null?N:{};Qt.forEach(R=>{var Ke,Ge;const{element:ue}=(Ke=er[R.id])!=null?Ke:{},{start:nr,end:or}=R;if(ue){const{x:Ye,width:ir}=((Ge=ue.getBoundingClientRect)==null?void 0:Ge.call(ue))||{},lr=Ye+ir;[Ye,lr].forEach((ce,sr)=>{se.includes(ce)||(se.push(ce),ae[ce]=sr===0?nr:or)})}});const{x:qe,width:tr}=((D=(M=r.element).getBoundingClientRect)==null?void 0:D.call(M))||{},rr=qe+tr;se.forEach(R=>{Math.abs(nt(R,qe))<5&&(z.start=ae[R]),Math.abs(nt(R,rr))<5&&(z.end=ae[R])}),Ct(z),Ne({id:r.id}),te(!0)}),e.on("region-update-end",r=>{Nt(r),Le("")}),e.on("region-contextmenu",(r,n)=>{if(!S){if(n.preventDefault(),n.stopPropagation(),Mr(n)){oe(r.id);return}p({id:r.id,playImmediately:!0})}}),e.on("region-click",(r,n,l)=>{if(!S){if(n.preventDefault(),n.stopPropagation(),c.current.combined){It(r);return}if(c.current.segment){Mt(r,l);return}p({id:r.id,playImmediately:!0})}}),e.on("region-mousemove",kt),o.current=e},Ft=G?i.createElement(fr,null):i.createElement(pr,null),ze=e=>e?`${parseFloat((e/C*100).toFixed(4))}%`:"0%",Fe=ze(j),$t=ze(Te),T=()=>{if(!Se)return o==null?void 0:o.current},Ht=()=>{var e;(e=T())==null||e.skipForward(at)},Ut=()=>{var e;(e=T())==null||e.skipBackward(at)},W=()=>{var e;(e=T())==null||e.playPause(),p({})},$e=e=>{var t;switch(e.keyCode){case q.Right:Ht();break;case q.Left:Ut();break;case q.Space:e.preventDefault(),W();break;case q.Delete:if(!S){const{id:r}=((t=c.current)==null?void 0:t.selectedRegion)||{};r&&oe(r)}break}},Vt=e=>{le(e)},He=cr.throttle(Vt,50);let ie=!1;const Ue=()=>{ie&&(W(),ie=!1),document.removeEventListener("mousemove",He),document.removeEventListener("mouseup",Ue)},Xt=e=>{le(e),G&&(ie=!0,W()),document.addEventListener("mousemove",He),document.addEventListener("mouseup",Ue)},Zt=()=>{Oe()};P(()=>(zt(),()=>{var e;(e=o==null?void 0:o.current)==null||e.destroy(),o.current=null,E.unbindAll("setCurrentTimeByPosition"),E.unbindAll("clearRegions"),E.unbindAll("removeRegionById"),E.unbindAll("setSelectedRegion")}),[]);const qt=e=>{var t,r,n;(t=T())==null||t.playPause(),(r=T())==null||r.setPlaybackRate(e),(n=T())==null||n.playPause()};P(()=>(document.addEventListener("keydown",$e),()=>{document.removeEventListener("keydown",$e)})),P(()=>{p({}),Oe()},[$]),P(()=>{Ve()},[xt,C]);const Kt=()=>{if(h.current&&C){const e=h.current.scrollLeft,t=h.current.clientWidth,r=e/h.current.scrollWidth*C,n=(e+t)/h.current.scrollWidth*C;jt({start:r,end:n})}},{run:Ve}=et(Kt,{wait:300}),Xe=e=>{var t,r,n,l;if((o==null?void 0:o.current)&&(x==null?void 0:x.current)){const a=(r=(t=o==null?void 0:o.current)==null?void 0:t.getDuration())!=null?r:0,v=(n=x==null?void 0:x.current)==null?void 0:n.getBoundingClientRect();let s=(e.clientX-v.left)/(((l=x==null?void 0:x.current)==null?void 0:l.clientWidth)||0)*a;return s>a&&(s=a),s}return 0},le=e=>{var t;const r=Xe(e);(t=o==null?void 0:o.current)==null||t.skip(r-Ce.current),J(r)},Gt=e=>{Rt(Xe(e))},Yt=C?Math.max(C-j,0):0,Jt=(d==null?void 0:d.toolName)!==st.Empty&&(d==null?void 0:d.isEdit)!==!0&&(pt==="remark"||S),Ze=i.createElement("div",{className:y.audioPlayer},ht&&!ft&&i.createElement(Er,{fileTypeName:"\u97F3\u9891",ignoreOffsetY:!0,reloadImage:Zt,backgroundColor:"#ffffffbb"}),i.createElement(Or,{getRegionInstanceById:O,clipping:ee}),i.createElement(Fr,{container:h.current}),i.createElement($r,{segmentTimeTip:Bt}),i.createElement("div",{className:y.waveformContainer,ref:h,onScroll:()=>Ve()},i.createElement("div",{id:"waveform",style:{width:`${H*100}%`},className:V({[y.waveform]:!0,"bee-audio-combined":c.current.combined,"bee-audio-clip":c.current.clipConfigurable})},dt&&i.createElement(_r,{isAudio:!0}),i.createElement("div",{ref:x,className:y.progress,onMouseDown:Xt,onMouseMove:Gt},i.createElement("div",{className:V({[y.radioTooltip]:!0}),style:{left:Fe}},tt(j)),i.createElement("div",{className:V({[y.radioTooltip]:!0,[y.mouseTooltip]:!0}),style:{left:$t}},tt(Te)),i.createElement(Br,{playPercentage:Fe})),Jt&&(ge==null?void 0:ge({currentTime:j,remainingTime:Yt,audioPlayer:T()})))),i.createElement("div",{className:y.controlBar},i.createElement(yr,{type:"link",icon:Ft,onClick:()=>{W()},className:V({[y.playButton]:!0,[y.playButtonDisabled]:Se})}),i.createElement("span",{className:y.time},`${rt(j,"ss.SSS")} / -${rt(C-j,"ss.SSS")}`),i.createElement(Sr,{playerType:hr.Audio,onChange:e=>{qt(e)}}),i.createElement(Tr,{onChange:e=>{var t;(t=T())==null||t.pause(),Me(e)},zoom:H}),i.createElement(wr,{EventBus:E})));return d?i.createElement(ut.Provider,{value:d},Ze,Dt.map(e=>{const{id:t}=e,r=document.querySelector(`[data-id=${t}]`);return r?i.createElement(Ar,{el:r,key:t,region:e,edgeAdsorption:we,clipping:ee,zoom:H,instance:O(t),isCheck:S}):null}),i.createElement(Hr,{footer:_t})):Ze},Yr=f=>i.createElement(Ur,{i18n:Je},i.createElement(ct,me({},f)));export{ct as AudioPlayer,ut as AudioPlayerContext,Yr as WrapAudioPlayer};
|
|
1
|
+
import i,{useState as g,useRef as U,useMemo as ar,useEffect as P}from"react";import{getWebPcm2WavBase64 as ur}from"../audioAnnotate/utils/getWebPcm2Wac.js";import cr,{debounce as dr,sortBy as mr}from"lodash";import{PauseOutlined as fr,CaretRightOutlined as pr}from"@ant-design/icons";import{cKeyCode as vr,cTool as gr,EventBus as E,TagUtils as br}from"@labelbee/lb-annotation";import{i18n as Je}from"@labelbee/lb-utils";import{Button as yr}from"antd";import _r from"../invalidPage/index.js";import Er from"../imageError/index.js";import{classnames as V}from"../../utils/index.js";import Sr,{EPlayerType as hr}from"../videoPlayer/components/SpeedController/index.js";import Rr from"@labelbee/wavesurfer";import Pr from"@labelbee/wavesurfer/dist/plugin/wavesurfer.regions.js";import Cr from"@labelbee/wavesurfer/dist/plugin/wavesurfer.cursor.js";import Tr,{audioZoomInfo as de}from"./zoomSlider/index.js";import wr from"./labelDisplayToggle/index.js";import Ar from"./clipRegion/index.js";import{useAudioClipStore as jr}from"../audioAnnotate/audioContext/index.js";import{useLatest as X,useUpdate as xr,useDeepCompareEffect as Qe,useThrottleFn as et}from"ahooks";import Dr from"./useAudioScroll/index.js";import y from"./index.module.scss.js";import{getAttributeColor as Lr,formatTime as tt,timeFormat as rt,dispatchResizeEvent as Ir,precisionMinus as nt,isDoubleClick as Mr,getCanMoveRange as kr}from"../../utils/audio.js";import Br from"./progressDot/index.js";import Or from"./clipTip/index.js";import Wr from"./useSwitchHotkey/index.js";import Nr from"./useAudioCombine/index.js";import zr from"./useAudioSegment/index.js";import Fr from"./combineTip/index.js";import $r from"./segmentTip/index.js";import Hr from"../../views/MainView/toolFooter/index.js";import{decimalReserved as Z}from"../videoPlayer/utils.js";import{I18nextProvider as Ur}from"react-i18next";import Vr from"../../hooks/useSize.js";var Xr=Object.defineProperty,Zr=Object.defineProperties,qr=Object.getOwnPropertyDescriptors,ot=Object.getOwnPropertySymbols,Kr=Object.prototype.hasOwnProperty,Gr=Object.prototype.propertyIsEnumerable,it=(f,u,d)=>u in f?Xr(f,u,{enumerable:!0,configurable:!0,writable:!0,value:d}):f[u]=d,me=(f,u)=>{for(var d in u||(u={}))Kr.call(u,d)&&it(f,d,u[d]);if(ot)for(var d of ot(u))Gr.call(u,d)&&it(f,d,u[d]);return f},lt=(f,u)=>Zr(f,qr(u));const{EToolName:st}=gr,q=vr.default,at=.1,ut=i.createContext({count:0,isEdit:!1,toolName:st.Empty,imgIndex:0}),ct=({fileData:f={},onLoaded:u,context:d,invalid:dt,height:mt,hideError:ft,onError:fe,updateRegion:L,removeRegion:$,regions:A=[],activeToolPanel:pt,clipConfigurable:vt,clipTextConfigurable:pe,clipAttributeList:gt,clipAttributeConfigurable:ve,secondaryAttributeConfigurable:bt,subAttributeList:yt,isCheck:S,hoverRegionId:K,footer:_t,drawLayerSlot:ge,clipTextList:Et,lang:be})=>{var ye,_e;const{url:H,path:Ee}=f,[G,Y]=g(!1),[Se,he]=g(!1),[j,St]=g(0),[ht,Re]=g(!1),[C,Pe]=g(0),o=U(null),x=U(null),Ce=U(j),J=e=>{Ce.current=e,St(e)},[Te,Rt]=g(0),[k,Pt]=g(de.defaultValue),h=U(null),[we,Ct]=g({}),{audioClipState:Q,setAudioClipState:B}=jr(),[ee,te]=g(!1),c=X(Q),Ae=X(we);X(G);const I=X(A),je=xr(),[xe,Tt]=g([]),[De,wt]=g({}),[At,Le]=g(""),[Ie,jt]=g({start:0,end:0}),xt=Vr(h),Dt=ar(()=>A.filter(e=>{const{start:t,end:r}=Ie;return e.start>=t&&e.start<=r||e.end>=t&&e.end<=r||e.id===At}),[A,Ie]),Lt=dr(()=>{E.emit("audioZoom")},500),Me=e=>{e<de.min||e>de.max||(Pt(e),Ir(),Lt())};Dr({container:h.current,target:document.querySelector(`[data-id=${(_e=(ye=c.current)==null?void 0:ye.selectedRegion)==null?void 0:_e.id}]`),clipping:ee,zoom:k,zoomHandler:Me});const O=()=>{let e=I.current;const{attributeLockList:t}=c.current;t.length&&(e=e.filter(r=>t.includes(r.attribute))),ne(),e.forEach(r=>{var n;(n=o.current)==null||n.addRegion(lt(me({},r),{drag:!S,resize:!S,color:"rgba(0, 0, 0, 0)"}))}),je()},p=e=>{var t,r,n,l,a,v,b;const{id:s,loop:m=!0,playImmediately:_=!1,isLoopStatus:z}=e,M=!1;if(s){const D=(n=(r=(t=o.current)==null?void 0:t.regions)==null?void 0:r.list)!=null?n:{};Object.entries(D).forEach(([,w])=>{const{id:F}=w;s===F?w.select():w.cancelSelect()}),B({selectedRegion:{id:s,loop:M},selectedAttribute:(v=(a=(l=I.current)==null?void 0:l.find(w=>w.id===s))==null?void 0:a.attribute)!=null?v:""}),_&&((b=W(s))==null||b.play())}else B({selectedRegion:{}})},{combineInstance:It}=Nr({waveRef:o,sortByStartRegions:xe,regionMap:De,updateRegion:L,removeRegion:$,generateRegions:O,setSelectedRegion:p}),{segmentInstance:Mt,onRegionMouseMove:kt,segmentTimeTip:Bt}=zr({waveRef:o,regionMap:De,updateRegion:L,removeRegion:$,generateRegions:O,setSelectedRegion:p}),ke={clipTextConfigurable:pe,clipAttributeList:gt,clipAttributeConfigurable:ve,clipConfigurable:vt,secondaryAttributeConfigurable:bt,subAttributeList:yt,clipTextList:Et};P(()=>{var e;be&&((e=Je)==null||e.changeLanguage(be))},[]),P(()=>{B({selectedAttribute:""})},[ve]),P(()=>{re()},[Q.selectedAttribute]),P(()=>{O()},[Q.attributeLockList]),Qe(()=>{B(ke),setTimeout(()=>{Be()})},[ke]),Qe(()=>{Tt(mr(A,["start"])),wt(A.reduce((e,t)=>{const{id:r}=t;return lt(me({},e),{[r]:t})},{})),S&&O()},[A]),P(()=>{p(K?{id:K,loop:!1,playImmediately:!0}:{})},[K]);const Be=()=>{var e,t;c.current.clipConfigurable?(!S&&o.current&&((e=o.current)==null||e.enableDragSelection({slop:5})),O()):((t=o.current)==null||t.disableDragSelection(),ne()),re()},re=()=>{var e,t,r,n,l;let a="";c.current.clipConfigurable?a=Lr(c.current.selectedAttribute,(e=c.current.clipAttributeList)!=null?e:[]):a="transparent",((r=(t=o==null?void 0:o.current)==null?void 0:t.cursor)==null?void 0:r.cursor)&&((l=(n=o==null?void 0:o.current)==null?void 0:n.cursor)==null||l.setStyle({border:`2px dashed ${a}`}))},W=e=>{var t,r,n;return((n=(r=(t=o.current)==null?void 0:t.regions)==null?void 0:r.list)!=null?n:{})[e]},Oe=()=>{var e,t;if(H){const r=((t=(e=Ee==null?void 0:Ee.split("."))==null?void 0:e.pop())==null?void 0:t.toLowerCase())==="pcm";Re(!1),r?ur(H).then(n=>{We(n)}):We(H)}},We=e=>{var t;e&&(he(!0),J(0),Pe(0),(t=o==null?void 0:o.current)==null||t.load(e))},ne=()=>{var e;(e=o.current)==null||e.clearRegions()},oe=e=>{const t=W(e);t&&(te(!1),t==null||t.remove(),$==null||$(e),p({}))},{run:Ne}=et(p,{wait:100});Wr({sortByStartRegions:xe,setSelectedRegion:p});const Ot=e=>{const{start:t,end:r}=Ae.current;return(t||r)&&e.update(Ae.current),e},Wt=({action:e,id:t,eventDownTime:r})=>{var n,l;if(!c.current.clipConfigurable)return;t&&p({id:t});const a=W((t!=null?t:(n=c.current.selectedRegion)==null?void 0:n.id)||""),v=[];(e==="create"?I.current:(l=I.current)==null?void 0:l.filter(m=>m.id!==a.id)).forEach(m=>{const{start:_,end:z,attribute:M}=m;M===c.current.selectedAttribute&&[_,z].forEach(D=>{v.includes(D)||v.push(D)})});const s=kr(v.sort((m,_)=>m-_),r);o.current.range=s},Nt=e=>{re(),setTimeout(()=>{te(!1)});const t=Ot(e),{id:r,start:n,end:l}=t;p({id:r,playImmediately:!0});const a={id:r,start:Z(n,3),end:Z(l,3)};L==null||L(a),je()},zt=()=>{const e=Rr.create({container:"#waveform",waveColor:"#999",progressColor:"#999",height:mt||245,normalize:!0,cursorWidth:2,cursorColor:"white",responsive:0,hideScrollbar:!0,plugins:[Pr.create({regions:A,dragSelection:{slop:5},canMove:!1}),Cr.create({opacity:1,customStyle:{border:"2px dashed transparent"}})]}),t=()=>{var r;J(((r=o==null?void 0:o.current)==null?void 0:r.getCurrentTime())||0)};e.on("ready",()=>{var r;const n=((r=o==null?void 0:o.current)==null?void 0:r.getDuration())||0;Pe(n),t(),u==null||u({duration:Math.round(n)}),he(!1),N(),E.on("setCurrentTimeByPosition",le),E.on("clearRegions",ne),E.on("removeRegionById",oe),E.on("setSelectedRegion",Ne),e.on("regions-eventDown",Wt),Be()}),e.on("audioprocess",()=>{t()}),e.on("play",()=>{Y(!0)}),e.on("pause",()=>{Y(!1)}),e.on("finish",()=>{Y(!1)}),e.on("seek",()=>{t()}),e.on("error",()=>{Re(!0),u==null||u({hasError:!0}),fe==null||fe()}),e.on("region-created",r=>{var n;const{id:l,start:a,end:v}=r;if(I.current.find(s=>s.id===l))return;Le(l);const b={id:l,start:Z(a,3),end:Z(v,3),attribute:c.current.selectedAttribute,text:""};if(c.current.secondaryAttributeConfigurable){const s=br.getDefaultResultByConfig((n=c.current.subAttributeList)!=null?n:[]);b.subAttribute=s!=null?s:{}}pe&&c.current.clipTextList.forEach((m,_)=>{_===0?Object.assign(b,{text:m==null?void 0:m.default}):Object.assign(b,{[m.key]:m==null?void 0:m.default})}),L==null||L(b)}),e.on("region-updated",(r,n)=>{var l,a,v,b,s,m,_,z,M,D;const w=n==null?void 0:n.action;B({combined:!1,segment:!1}),w==="resize"&&((a=(l=o==null?void 0:o.current)==null?void 0:l.cursor)==null||a.setStyle({borderStyle:"solid"})),w==="drag"&&((b=(v=o==null?void 0:o.current)==null?void 0:v.cursor)==null||b.setStyle({borderColor:"transparent"}));const F={},se=[],ae={},Qt=(s=I.current)==null?void 0:s.filter(R=>R.id!==r.id),er=(z=(_=(m=o.current)==null?void 0:m.regions)==null?void 0:_.list)!=null?z:{};Qt.forEach(R=>{var Ke,Ge;const{element:ue}=(Ke=er[R.id])!=null?Ke:{},{start:nr,end:or}=R;if(ue){const{x:Ye,width:ir}=((Ge=ue.getBoundingClientRect)==null?void 0:Ge.call(ue))||{},lr=Ye+ir;[Ye,lr].forEach((ce,sr)=>{se.includes(ce)||(se.push(ce),ae[ce]=sr===0?nr:or)})}});const{x:qe,width:tr}=((D=(M=r.element).getBoundingClientRect)==null?void 0:D.call(M))||{},rr=qe+tr;se.forEach(R=>{Math.abs(nt(R,qe))<5&&(F.start=ae[R]),Math.abs(nt(R,rr))<5&&(F.end=ae[R])}),Ct(F),Ne({id:r.id}),te(!0)}),e.on("region-update-end",r=>{Nt(r),Le("")}),e.on("region-contextmenu",(r,n)=>{if(!S){if(n.preventDefault(),n.stopPropagation(),Mr(n)){oe(r.id);return}p({id:r.id,playImmediately:!0})}}),e.on("region-click",(r,n,l)=>{if(!S){if(n.preventDefault(),n.stopPropagation(),c.current.combined){It(r);return}if(c.current.segment){Mt(r,l);return}p({id:r.id,playImmediately:!0})}}),e.on("region-mousemove",kt),o.current=e},Ft=G?i.createElement(fr,null):i.createElement(pr,null),ze=e=>e?`${parseFloat((e/C*100).toFixed(4))}%`:"0%",Fe=ze(j),$t=ze(Te),T=()=>{if(!Se)return o==null?void 0:o.current},Ht=()=>{var e;(e=T())==null||e.skipForward(at)},Ut=()=>{var e;(e=T())==null||e.skipBackward(at)},N=()=>{var e;(e=T())==null||e.playPause(),p({})},$e=e=>{var t;switch(e.keyCode){case q.Right:Ht();break;case q.Left:Ut();break;case q.Space:e.preventDefault(),N();break;case q.Delete:if(!S){const{id:r}=((t=c.current)==null?void 0:t.selectedRegion)||{};r&&oe(r)}break}},Vt=e=>{le(e)},He=cr.throttle(Vt,50);let ie=!1;const Ue=()=>{ie&&(N(),ie=!1),document.removeEventListener("mousemove",He),document.removeEventListener("mouseup",Ue)},Xt=e=>{le(e),G&&(ie=!0,N()),document.addEventListener("mousemove",He),document.addEventListener("mouseup",Ue)},Zt=()=>{Oe()};P(()=>(zt(),()=>{var e;(e=o==null?void 0:o.current)==null||e.destroy(),o.current=null,E.unbindAll("setCurrentTimeByPosition"),E.unbindAll("clearRegions"),E.unbindAll("removeRegionById"),E.unbindAll("setSelectedRegion")}),[]);const qt=e=>{var t,r,n;(t=T())==null||t.playPause(),(r=T())==null||r.setPlaybackRate(e),(n=T())==null||n.playPause()};P(()=>(document.addEventListener("keydown",$e),()=>{document.removeEventListener("keydown",$e)})),P(()=>{p({}),Oe()},[H]),P(()=>{Ve()},[xt,C,k]);const Kt=()=>{if(h.current&&C){const e=h.current.scrollLeft,t=h.current.clientWidth,r=e/h.current.scrollWidth*C,n=(e+t)/h.current.scrollWidth*C;jt({start:r,end:n})}},{run:Ve}=et(Kt,{wait:300}),Xe=e=>{var t,r,n,l;if((o==null?void 0:o.current)&&(x==null?void 0:x.current)){const a=(r=(t=o==null?void 0:o.current)==null?void 0:t.getDuration())!=null?r:0,v=(n=x==null?void 0:x.current)==null?void 0:n.getBoundingClientRect();let s=(e.clientX-v.left)/(((l=x==null?void 0:x.current)==null?void 0:l.clientWidth)||0)*a;return s>a&&(s=a),s}return 0},le=e=>{var t;const r=Xe(e);(t=o==null?void 0:o.current)==null||t.skip(r-Ce.current),J(r)},Gt=e=>{Rt(Xe(e))},Yt=C?Math.max(C-j,0):0,Jt=(d==null?void 0:d.toolName)!==st.Empty&&(d==null?void 0:d.isEdit)!==!0&&(pt==="remark"||S),Ze=i.createElement("div",{className:y.audioPlayer},ht&&!ft&&i.createElement(Er,{fileTypeName:"\u97F3\u9891",ignoreOffsetY:!0,reloadImage:Zt,backgroundColor:"#ffffffbb"}),i.createElement(Or,{getRegionInstanceById:W,clipping:ee}),i.createElement(Fr,{container:h.current}),i.createElement($r,{segmentTimeTip:Bt}),i.createElement("div",{className:y.waveformContainer,ref:h,onScroll:()=>Ve()},i.createElement("div",{id:"waveform",style:{width:`${k*100}%`},className:V({[y.waveform]:!0,"bee-audio-combined":c.current.combined,"bee-audio-clip":c.current.clipConfigurable})},dt&&i.createElement(_r,{isAudio:!0}),i.createElement("div",{ref:x,className:y.progress,onMouseDown:Xt,onMouseMove:Gt},i.createElement("div",{className:V({[y.radioTooltip]:!0}),style:{left:Fe}},tt(j)),i.createElement("div",{className:V({[y.radioTooltip]:!0,[y.mouseTooltip]:!0}),style:{left:$t}},tt(Te)),i.createElement(Br,{playPercentage:Fe})),Jt&&(ge==null?void 0:ge({currentTime:j,remainingTime:Yt,audioPlayer:T()})))),i.createElement("div",{className:y.controlBar},i.createElement(yr,{type:"link",icon:Ft,onClick:()=>{N()},className:V({[y.playButton]:!0,[y.playButtonDisabled]:Se})}),i.createElement("span",{className:y.time},`${rt(j,"ss.SSS")} / -${rt(C-j,"ss.SSS")}`),i.createElement(Sr,{playerType:hr.Audio,onChange:e=>{qt(e)}}),i.createElement(Tr,{onChange:e=>{var t;(t=T())==null||t.pause(),Me(e)},zoom:k}),i.createElement(wr,{EventBus:E})));return d?i.createElement(ut.Provider,{value:d},Ze,Dt.map(e=>{const{id:t}=e,r=document.querySelector(`[data-id=${t}]`);return r?i.createElement(Ar,{el:r,key:t,region:e,edgeAdsorption:we,clipping:ee,zoom:k,instance:W(t),isCheck:S}):null}),i.createElement(Hr,{footer:_t})):Ze},Yr=f=>i.createElement(Ur,{i18n:Je},i.createElement(ct,me({},f)));export{ct as AudioPlayer,ut as AudioPlayerContext,Yr as WrapAudioPlayer};
|
package/es/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{default as AnnotationView}from"./components/AnnotationView/index.js";export{default as PointCloudAnnotationView}from"./components/AnnotationView/pointCloudAnnotationView.js";export{default as QuestionView}from"./components/LLMToolView/questionView/index.js";export{default as TextContent}from"./components/NLPToolView/textContent/index.js";import{i18n as s}from"@labelbee/lb-utils";export{i18n}from"@labelbee/lb-utils";import
|
|
1
|
+
export{default as AnnotationView}from"./components/AnnotationView/index.js";export{default as PointCloudAnnotationView}from"./components/AnnotationView/pointCloudAnnotationView.js";export{default as QuestionView}from"./components/LLMToolView/questionView/index.js";export{default as TextContent}from"./components/NLPToolView/textContent/index.js";import{i18n as s}from"@labelbee/lb-utils";export{i18n}from"@labelbee/lb-utils";import r,{useState as m,useImperativeHandle as u}from"react";import{initReactI18next as f,I18nextProvider as x}from"react-i18next";import{Provider as w}from"react-redux";import P from"./App.js";import v from"./configureStore.js";import{PageBackward as j,PageForward as T,PageJump as S}from"./store/annotation/actionCreators.js";export{VideoTagTool}from"./components/videoAnnotate/videoTagTool/TagToolInstanceAdaptorI18nProvider.js";import{PointCloudProvider as b}from"./components/pointCloudView/PointCloudContext.js";import{LabelBeeContext as I}from"./store/ctx.js";export{default as PredictTracking}from"./components/predictTracking/predictTrackingIcon/index.js";export{default as LLMToolView}from"./components/LLMToolView/index.js";export{default as SwitchCuboidBoxIn2DView,SwitchCuboidBoxIn2DViewStateMode}from"./views/MainView/toolFooter/SwitchCuboidBoxIn2DView/index.js";export{default as BatchSwitchConnectIn2DView}from"./views/MainView/toolFooter/BatchSwitchConnectIn2DView/BatchSwitchConnectIn2DView.js";export{default as MeasureCanvas}from"./components/measureCanvas/index.js";export{default as AnnotatedBox}from"./views/MainView/sidebar/PointCloudToolSidebar/components/annotatedBox/index.js";export{default as RectRotateSensitivitySlider}from"./views/MainView/sidebar/PointCloudToolSidebar/components/rectRotateSensitivitySlider/index.js";export{FindTrackIDIndexInCheckMode as FindTrackIDIndex}from"./views/MainView/sidebar/PointCloudToolSidebar/components/findTrackIDIndex/index.js";export{WrapAudioPlayer as AudioPlayer}from"./components/audioPlayer/index.js";export{generatePointCloudBoxRects}from"./utils/index.js";export{default as SubAttributeList}from"./components/subAttributeList/index.js";import{ToolStyleProvider as V}from"./hooks/useToolStyle.js";import{LoadFileAndFileData as g}from"./store/annotation/reducer.js";export{EDataFormatType,ELLMDataType,EStepType,ESubmitType,componentCls,prefix}from"./constant/index.js";var C=Object.defineProperty,_=Object.defineProperties,h=Object.getOwnPropertyDescriptors,l=Object.getOwnPropertySymbols,y=Object.prototype.hasOwnProperty,A=Object.prototype.propertyIsEnumerable,p=(o,e,t)=>e in o?C(o,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):o[e]=t,D=(o,e)=>{for(var t in e||(e={}))y.call(e,t)&&p(o,t,e[t]);if(l)for(var t of l(e))A.call(e,t)&&p(o,t,e[t]);return o},L=(o,e)=>_(o,h(e));const n=v();s.use(f),s.options.react={useSuspense:!1};const B=(o,e)=>{const[t,c]=m();return u(e,()=>({toolInstance:t,annotationEngine:n.getState().annotation.annotationEngine,pageBackwardActions:()=>n.dispatch(j()),pageForwardActions:()=>n.dispatch(T()),pageJump:(a,i)=>{const d=~~a-1;n.dispatch(S(d)),i&&n.dispatch(g(d))},hello:()=>alert("hello labelBee!!!")}),[t]),r.createElement(w,{store:n,context:I},r.createElement(x,{i18n:s},r.createElement(V,{value:o.toolStyle},r.createElement(b,null,r.createElement(P,L(D({},o),{setToolInstance:a=>{var i;c(a),(i=o.onLoad)==null||i.call(o,{toolInstance:a})}}))))))};var E=r.forwardRef(B);export{E as default,n as store};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@labelbee/lb-components",
|
|
3
|
-
"version": "1.23.0-alpha.
|
|
3
|
+
"version": "1.23.0-alpha.99",
|
|
4
4
|
"description": "Provide a complete library of annotation components",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"es": "./es/index.js",
|
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
},
|
|
44
44
|
"dependencies": {
|
|
45
45
|
"@ant-design/icons": "^4.6.2",
|
|
46
|
-
"@labelbee/lb-annotation": "1.27.0-alpha.
|
|
46
|
+
"@labelbee/lb-annotation": "1.27.0-alpha.49",
|
|
47
47
|
"@labelbee/lb-utils": "1.19.0-alpha.20",
|
|
48
48
|
"@labelbee/wavesurfer": "1.0.0",
|
|
49
49
|
"@types/react-dom": "^18.2.7",
|