@labelbee/lb-components 1.24.0-alpha.51 → 1.24.0-alpha.53

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. package/dist/_virtual/2DViewWorker.js +1 -1
  2. package/dist/components/videoAnnotate/videoClipTool/components/ToolTipForClip.js +1 -1
  3. package/dist/components/videoAnnotate/videoClipTool/components/videoTimeSlicesOverVideo/index.js +2 -1
  4. package/dist/components/videoAnnotate/videoClipTool/components/videoTimeSlicesOverVideo/index.module.scss.js +1 -1
  5. package/dist/components/videoAnnotate/videoClipTool/components/videoTrack/index.js +1 -1
  6. package/dist/components/videoAnnotate/videoClipTool/index.js +2 -1
  7. package/dist/index.css +20 -6
  8. package/dist/types/components/videoAnnotate/videoClipTool/index.d.ts +13 -0
  9. package/dist/types/views/MainView/sidebar/VideoClipToolAttributeList/index.d.ts +11 -0
  10. package/dist/views/MainView/sidebar/SwitchAttributeList/index.js +1 -1
  11. package/dist/views/MainView/sidebar/VideoClipToolAttributeList/index.js +1 -0
  12. package/dist/views/MainView/sidebar/index.js +1 -1
  13. package/es/_virtual/2DViewWorker.js +1 -1
  14. package/es/components/videoAnnotate/videoClipTool/components/ToolTipForClip.js +1 -1
  15. package/es/components/videoAnnotate/videoClipTool/components/videoTimeSlicesOverVideo/index.js +2 -1
  16. package/es/components/videoAnnotate/videoClipTool/components/videoTimeSlicesOverVideo/index.module.scss.js +1 -1
  17. package/es/components/videoAnnotate/videoClipTool/components/videoTrack/index.js +1 -1
  18. package/es/components/videoAnnotate/videoClipTool/index.js +2 -1
  19. package/es/index.css +20 -6
  20. package/es/views/MainView/sidebar/SwitchAttributeList/index.js +1 -1
  21. package/es/views/MainView/sidebar/VideoClipToolAttributeList/index.js +1 -0
  22. package/es/views/MainView/sidebar/index.js +1 -1
  23. package/package.json +3 -3
@@ -1 +1 @@
1
- "use strict";var audio=require("../../../../utils/audio.js"),lbAnnotation=require("@labelbee/lb-annotation"),antd=require("antd"),React=require("react"),constant=require("../constant.js"),utils=require("../../../videoPlayer/utils.js"),reactI18next=require("react-i18next");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const ToolTipForClip=t=>{var a,l;const{slot:n,item:e,attributeList:o}=t,{t:r}=reactI18next.useTranslation();if(!n)return null;const{type:s,attribute:d,textAttribute:c}=e;if(e.start===void 0||e.end===void 0)return null;const i=utils.decimalReserved(e.start,2),u=(l=utils.decimalReserved((a=e.end)!=null?a:0,2))!=null?l:0,v=React__default.default.createElement("div",null,React__default.default.createElement("div",null,s===constant.ETimeSliceType.Period?`${audio.timeFormat(i,"ss:SS")}~${audio.timeFormat(u,"ss:SS")}\uFF0C${audio.precisionMinus(u,i)}s`:audio.timeFormat(i,"ss:SS")),React__default.default.createElement("div",null,`${r("Attribute")}\uFF1A${lbAnnotation.AttributeUtils.getAttributeShowText(d,o)||r("NoAttribute")}`),React__default.default.createElement("div",null,`${r("textTool")}\uFF1A${c}`));return React__default.default.createElement(antd.Tooltip,{title:v},n)};module.exports=ToolTipForClip;
1
+ "use strict";var audio=require("../../../../utils/audio.js"),lbAnnotation=require("@labelbee/lb-annotation"),antd=require("antd"),React=require("react"),constant=require("../constant.js"),utils=require("../../../videoPlayer/utils.js"),reactI18next=require("react-i18next");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const ToolTipForClip=t=>{var a,l;const{slot:u,item:e,attributeList:o}=t,{t:r}=reactI18next.useTranslation();if(!u)return null;const{type:s,attribute:d,textAttribute:c,text:v}=e;if(e.start===void 0||e.end===void 0)return null;const i=utils.decimalReserved(e.start,2),n=(l=utils.decimalReserved((a=e.end)!=null?a:0,2))!=null?l:0,m=React__default.default.createElement("div",null,React__default.default.createElement("div",null,s===constant.ETimeSliceType.Period?`${audio.timeFormat(i,"ss:SS")}~${audio.timeFormat(n,"ss:SS")}\uFF0C${audio.precisionMinus(n,i)}s`:audio.timeFormat(i,"ss:SS")),React__default.default.createElement("div",null,`${r("Attribute")}\uFF1A${lbAnnotation.AttributeUtils.getAttributeShowText(d,o)||r("NoAttribute")}`),React__default.default.createElement("div",null,`${r("SubAttribute")}\uFF1A${v}`),React__default.default.createElement("div",null,`${r("textTool")}\uFF1A${c}`));return React__default.default.createElement(antd.Tooltip,{title:m},u)};module.exports=ToolTipForClip;
@@ -1 +1,2 @@
1
- "use strict";var index=require("../../../../../utils/index.js"),lbAnnotation=require("@labelbee/lb-annotation"),React=require("react"),reactTransitionGroup=require("react-transition-group"),constant=require("../../constant.js"),index_module=require("./index.module.scss.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,i)=>t in e?__defProp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,__spreadValues=(e,t)=>{for(var i in t||(t={}))__hasOwnProp.call(t,i)&&__defNormalProp(e,i,t[i]);if(__getOwnPropSymbols)for(var i of __getOwnPropSymbols(t))__propIsEnum.call(t,i)&&__defNormalProp(e,i,t[i]);return e},__spreadProps=(e,t)=>__defProps(e,__getOwnPropDescs(t));const VideoTimeSlicesOverVideo=e=>{const{attributeList:t,result:i,currentTime:l,extraStyle:u}=e,m=r=>{const{type:a,start:s,end:c}=r;let n=!1;return a===constant.ETimeSliceType.Time?n=lbAnnotation.MathUtils.isInRange(l,[s-.1,s+.1]):n=c===null||lbAnnotation.MathUtils.isInRange(l,[s,c]),n},d=[],o=[];i.forEach(r=>{(m(r)?o:d).push(r)});const p=o.sort((r,a)=>r.start-a.start).map(r=>__spreadProps(__spreadValues({},r),{withinTime:!0})).map(r=>React__default.default.createElement(reactTransitionGroup.CSSTransition,{classNames:"fade",key:r.id,timeout:500},React__default.default.createElement("div",{className:index.classnames({[index_module.timeSliceWrapper]:!0,[index_module.active]:r.withinTime})},React__default.default.createElement("div",{className:index_module.timeSliceItemAttribute,style:{textAlign:"right"}},React__default.default.createElement("span",{style:{backgroundColor:lbAnnotation.AttributeUtils.getAttributeColor(r.attribute,t)}},`${constant.TIME_SLICE_TYPE[r.type]}: ${lbAnnotation.AttributeUtils.getAttributeShowText(r.attribute,t)||"\u65E0\u5C5E\u6027"}`)),r.textAttribute&&React__default.default.createElement("div",{className:index_module.timeSliceItemText},`\u6587\u672C: ${r.textAttribute}`))));return React__default.default.createElement("div",{className:index_module.videoTimeSlices,style:u},React__default.default.createElement(reactTransitionGroup.TransitionGroup,{className:"fade-group"},p))};module.exports=VideoTimeSlicesOverVideo;
1
+ "use strict";var index=require("../../../../../utils/index.js"),lbAnnotation=require("@labelbee/lb-annotation"),React=require("react"),reactTransitionGroup=require("react-transition-group"),constant=require("../../constant.js"),index_module=require("./index.module.scss.js");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}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=(t,r,i)=>r in t?__defProp(t,r,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[r]=i,__spreadValues=(t,r)=>{for(var i in r||(r={}))__hasOwnProp.call(r,i)&&__defNormalProp(t,i,r[i]);if(__getOwnPropSymbols)for(var i of __getOwnPropSymbols(r))__propIsEnum.call(r,i)&&__defNormalProp(t,i,r[i]);return t},__spreadProps=(t,r)=>__defProps(t,__getOwnPropDescs(r));const VideoTimeSlicesOverVideo=t=>{const{attributeList:r,result:i,currentTime:u,extraStyle:m,inputList:o=[]}=t,d=e=>{const{type:a,start:s,end:n}=e;let l=!1;return a===constant.ETimeSliceType.Time?l=lbAnnotation.MathUtils.isInRange(u,[s-.1,s+.1]):l=n===null||lbAnnotation.MathUtils.isInRange(u,[s,n]),l},p=[],c=[];i.forEach(e=>{(d(e)?c:p).push(e)});const f=c.sort((e,a)=>e.start-a.start).map(e=>__spreadProps(__spreadValues({},e),{withinTime:!0})).map(e=>React__default.default.createElement(reactTransitionGroup.CSSTransition,{classNames:"fade",key:e.id,timeout:500},React__default.default.createElement("div",{className:index.classnames({[index_module.timeSliceWrapper]:!0,[index_module.active]:e.withinTime})},React__default.default.createElement("div",{className:index_module.timeSliceItemAttribute,style:{backgroundColor:lbAnnotation.AttributeUtils.getAttributeColor(e.attribute,r)}},`${constant.TIME_SLICE_TYPE[e.type]}: ${lbAnnotation.AttributeUtils.getAttributeShowText(e.attribute,r)||"\u65E0\u5C5E\u6027"}`),(e==null?void 0:e.subAttribute)&&o.length>0&&(()=>{const a=lbAnnotation.TagUtils.getTagNameList(e.subAttribute,o);return a.length>0?React__default.default.createElement("div",{className:index_module.timeSliceItemSubAttribute,style:{backgroundColor:lbAnnotation.AttributeUtils.getAttributeColor(e.attribute,r)}},a.map((s,n)=>React__default.default.createElement("div",{key:n},`${s.keyName}\uFF1A${s.value.join(`
2
+ `)}`))):null})(),e.textAttribute&&React__default.default.createElement("div",{className:index_module.timeSliceItemText},`\u6587\u672C: ${e.textAttribute}`))));return React__default.default.createElement("div",{className:index_module.videoTimeSlices,style:m},React__default.default.createElement(reactTransitionGroup.TransitionGroup,{className:"fade-group"},f))};module.exports=VideoTimeSlicesOverVideo;
@@ -1 +1 @@
1
- "use strict";var styles={videoTimeSlices:"index-module_videoTimeSlices__v-2k1",timeSliceWrapper:"index-module_timeSliceWrapper__kebC3",timeSliceItemText:"index-module_timeSliceItemText__FJFwH",timeSliceItemAttribute:"index-module_timeSliceItemAttribute__--3E1"};module.exports=styles;
1
+ "use strict";var styles={videoTimeSlices:"index-module_videoTimeSlices__v-2k1",timeSliceWrapper:"index-module_timeSliceWrapper__kebC3",timeSliceItemText:"index-module_timeSliceItemText__FJFwH",timeSliceItemAttribute:"index-module_timeSliceItemAttribute__--3E1",timeSliceItemSubAttribute:"index-module_timeSliceItemSubAttribute__MtsgS"};module.exports=styles;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var audio=require("../../../../../utils/audio.js"),lbAnnotation=require("@labelbee/lb-annotation"),icons=require("@ant-design/icons"),React=require("react"),index$1=require("../resizableSnippet/index.js"),constant=require("../../constant.js"),ToolTipForClip=require("../ToolTipForClip.js"),index_module=require("./index.module.scss.js"),utils=require("../../../../videoPlayer/utils.js"),VideoClipToolContext=require("../../VideoClipToolContext.js"),index=require("../../../../videoPlayer/index.js"),reactI18next=require("react-i18next");function _interopDefaultLegacy(r){return r&&typeof r=="object"&&"default"in r?r:{default:r}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(r,a,e)=>a in r?__defProp(r,a,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[a]=e,__spreadValues=(r,a)=>{for(var e in a||(a={}))__hasOwnProp.call(a,e)&&__defNormalProp(r,e,a[e]);if(__getOwnPropSymbols)for(var e of __getOwnPropSymbols(a))__propIsEnum.call(a,e)&&__defNormalProp(r,e,a[e]);return r},__spreadProps=(r,a)=>__defProps(r,__getOwnPropDescs(a));const getDisplayContent=(r,a)=>{const{t:e}=reactI18next.useTranslation(),{attribute:u,textAttribute:n}=r;return[lbAnnotation.AttributeUtils.getAttributeShowText(u,a)||e("NoAttribute"),n?`${e("textTool")}: ${n}`:""].filter(m=>m).join("\uFF0C")},sortTrack=(r,a)=>{const e=(r||[]).filter(n=>n).map(()=>[]);r.forEach(n=>{if(n.id!==a){const l=e.findIndex(m=>{const i=n.start,s=n.end;return m.every(p=>{const v=[p.start,p.end],d=[i,s];return!lbAnnotation.MathUtils.isInRange(i,v)&&!lbAnnotation.MathUtils.isInRange(s,v)&&!lbAnnotation.MathUtils.isInRange(p.start,d)&&!lbAnnotation.MathUtils.isInRange(p.end,d)})});l>-1&&e[l].push(n)}});const u=fillArrayLen(e.filter(n=>n.length>0));return u==null?void 0:u.map(n=>({data:n,id:utils.hashCode(n==null?void 0:n.map(l=>l.id).join("_"))}))},fillArrayLen=(r,a=2)=>{let e=r;return e.length-a<0&&(e=e.concat(Array.from({length:a-e.length}))),e},VideoTrack=r=>{var a;const{currentTime:e,readonly:u,onTrackResizeStart:n}=r,{result:l,selectedAttribute:m,attributeList:i,selectedID:s,clipStatus:p,contextToCancel:v}=React.useContext(VideoClipToolContext.VideoClipToolContext),{duration:d}=React.useContext(index.VideoPlayerCtx),y=React.useRef(null),k=e/d,T=(t,o=4)=>`${utils.decimalReserved(t*100,o)}%`,x=t=>{if(t){const o=lbAnnotation.AttributeUtils.getAttributeColor(t.attribute,i),f=Math.max((t.end||e)-t.start,0)/d,c={backgroundColor:o,left:T(t.start/d,2),width:T(t.end?Math.max(f,.001):f,2),position:"absolute",borderRadius:5};return t.type===constant.ETimeSliceType.Time&&(delete c.width,delete c.backgroundColor,c.top="50%",c.transform="translate(-50%)",c.color=o),c}return{}},b=lbAnnotation.AttributeUtils.getAttributeColor(m,i),g=((a=y.current)==null?void 0:a.clientWidth)||0,C=utils.decimalReserved(Math.max(g*k,0),0),E=utils.decimalReserved(Math.min(C,Math.floor(g-68)),0),_=t=>{if(t)return t.type===constant.ETimeSliceType.Time?React__default.default.createElement(ToolTipForClip,{slot:React__default.default.createElement(icons.EnvironmentFilled,{style:x(t)}),item:__spreadProps(__spreadValues({},t),{end:t.end===null?e:t.end}),attributeList:i}):React__default.default.createElement(index$1,{track:t,currentTime:e,style:x(t),onResize:(o,f)=>r.onTrackResize(t.id,o,f),onTrackResizeStart:n,onClipping:p===constant.EClipStatus.Clipping,isSelected:t.id===s,readonly:u,attributeList:i})},P=React.useMemo(()=>{const t=sortTrack(l,s);return t==null?void 0:t.map((o,f)=>{var c;return React__default.default.createElement("div",{className:index_module.track,key:(o==null?void 0:o.id)||f},(c=o.data)==null?void 0:c.map(h=>_(h)))})},[l,s,d,JSON.stringify(i)]),j=React.useMemo(()=>{const t=l.find(o=>(o==null?void 0:o.id)===s);return s&&t?React__default.default.createElement("div",{className:index_module.track,key:t==null?void 0:t.id},_(t)):null},[l,s,d,e,JSON.stringify(i)]);return React__default.default.createElement("div",{className:index_module.videoTrackContainer,ref:y,onContextMenu:v},React__default.default.createElement("div",{className:index_module.timeTrack}),React__default.default.createElement("div",{className:index_module.videoTrack},j,P),React__default.default.createElement("div",{className:index_module.timeline,style:{transform:`translate3d(${C}px, 0px, 0px)`,backgroundColor:b}}),React__default.default.createElement("div",{className:index_module.displayTime,style:{backgroundColor:b,transform:`translateX(${E}px, 0px, 0px)`}},audio.timeFormat(e)))};var VideoTrack$1=VideoTrack;exports.default=VideoTrack$1,exports.getDisplayContent=getDisplayContent;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var audio=require("../../../../../utils/audio.js"),lbAnnotation=require("@labelbee/lb-annotation"),icons=require("@ant-design/icons"),React=require("react"),index$1=require("../resizableSnippet/index.js"),constant=require("../../constant.js"),ToolTipForClip=require("../ToolTipForClip.js"),index_module=require("./index.module.scss.js"),utils=require("../../../../videoPlayer/utils.js"),VideoClipToolContext=require("../../VideoClipToolContext.js"),index=require("../../../../videoPlayer/index.js"),reactI18next=require("react-i18next");function _interopDefaultLegacy(r){return r&&typeof r=="object"&&"default"in r?r:{default:r}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(r,a,e)=>a in r?__defProp(r,a,{enumerable:!0,configurable:!0,writable:!0,value:e}):r[a]=e,__spreadValues=(r,a)=>{for(var e in a||(a={}))__hasOwnProp.call(a,e)&&__defNormalProp(r,e,a[e]);if(__getOwnPropSymbols)for(var e of __getOwnPropSymbols(a))__propIsEnum.call(a,e)&&__defNormalProp(r,e,a[e]);return r},__spreadProps=(r,a)=>__defProps(r,__getOwnPropDescs(a));const getDisplayContent=(r,a)=>{const{t:e}=reactI18next.useTranslation(),{attribute:u,textAttribute:n}=r,l=lbAnnotation.AttributeUtils.getAttributeShowText(u,a)||e("NoAttribute"),p=(r==null?void 0:r.text)||"";return[l,p?`${e("SubAttribute")}: ${p}`:"",n?`${e("textTool")}: ${n}`:""].filter(i=>i).join("\uFF0C")},sortTrack=(r,a)=>{const e=(r||[]).filter(n=>n).map(()=>[]);r.forEach(n=>{if(n.id!==a){const l=e.findIndex(p=>{const i=n.start,s=n.end;return p.every(f=>{const v=[f.start,f.end],c=[i,s];return!lbAnnotation.MathUtils.isInRange(i,v)&&!lbAnnotation.MathUtils.isInRange(s,v)&&!lbAnnotation.MathUtils.isInRange(f.start,c)&&!lbAnnotation.MathUtils.isInRange(f.end,c)})});l>-1&&e[l].push(n)}});const u=fillArrayLen(e.filter(n=>n.length>0));return u==null?void 0:u.map(n=>({data:n,id:utils.hashCode(n==null?void 0:n.map(l=>l.id).join("_"))}))},fillArrayLen=(r,a=2)=>{let e=r;return e.length-a<0&&(e=e.concat(Array.from({length:a-e.length}))),e},VideoTrack=r=>{var a;const{currentTime:e,readonly:u,onTrackResizeStart:n}=r,{result:l,selectedAttribute:p,attributeList:i,selectedID:s,clipStatus:f,contextToCancel:v}=React.useContext(VideoClipToolContext.VideoClipToolContext),{duration:c}=React.useContext(index.VideoPlayerCtx),b=React.useRef(null),k=e/c,T=(t,o=4)=>`${utils.decimalReserved(t*100,o)}%`,x=t=>{if(t){const o=lbAnnotation.AttributeUtils.getAttributeColor(t.attribute,i),m=Math.max((t.end||e)-t.start,0)/c,d={backgroundColor:o,left:T(t.start/c,2),width:T(t.end?Math.max(m,.001):m,2),position:"absolute",borderRadius:5};return t.type===constant.ETimeSliceType.Time&&(delete d.width,delete d.backgroundColor,d.top="50%",d.transform="translate(-50%)",d.color=o),d}return{}},g=lbAnnotation.AttributeUtils.getAttributeColor(p,i),C=((a=b.current)==null?void 0:a.clientWidth)||0,_=utils.decimalReserved(Math.max(C*k,0),0),E=utils.decimalReserved(Math.min(_,Math.floor(C-68)),0),h=t=>{if(t)return t.type===constant.ETimeSliceType.Time?React__default.default.createElement(ToolTipForClip,{slot:React__default.default.createElement(icons.EnvironmentFilled,{style:x(t)}),item:__spreadProps(__spreadValues({},t),{end:t.end===null?e:t.end}),attributeList:i}):React__default.default.createElement(index$1,{track:t,currentTime:e,style:x(t),onResize:(o,m)=>r.onTrackResize(t.id,o,m),onTrackResizeStart:n,onClipping:f===constant.EClipStatus.Clipping,isSelected:t.id===s,readonly:u,attributeList:i})},P=React.useMemo(()=>{if(!c)return;const t=sortTrack(l,s);return t==null?void 0:t.map((o,m)=>{var d;return React__default.default.createElement("div",{className:index_module.track,key:(o==null?void 0:o.id)||m},(d=o.data)==null?void 0:d.map((y,O)=>React__default.default.createElement(React__default.default.Fragment,{key:(y==null?void 0:y.id)||`${o==null?void 0:o.id}_${O}`},h(y))))})},[l,s,c,JSON.stringify(i)]),A=React.useMemo(()=>{const t=l.find(o=>(o==null?void 0:o.id)===s);return s&&t?React__default.default.createElement("div",{className:index_module.track,key:t==null?void 0:t.id},h(t)):null},[l,s,c,e,JSON.stringify(i)]);return React__default.default.createElement("div",{className:index_module.videoTrackContainer,ref:b,onContextMenu:v},React__default.default.createElement("div",{className:index_module.timeTrack}),React__default.default.createElement("div",{className:index_module.videoTrack},A,P),React__default.default.createElement("div",{className:index_module.timeline,style:{transform:`translate3d(${_}px, 0px, 0px)`,backgroundColor:g}}),React__default.default.createElement("div",{className:index_module.displayTime,style:{backgroundColor:g,transform:`translateX(${E}px, 0px, 0px)`}},audio.timeFormat(e)))};var VideoTrack$1=VideoTrack;exports.default=VideoTrack$1,exports.getDisplayContent=getDisplayContent;
@@ -1 +1,2 @@
1
- "use strict";var lbAnnotation=require("@labelbee/lb-annotation"),index$2=require("../../../utils/index.js"),audio=require("../../../utils/audio.js"),antd=require("antd"),_=require("lodash"),React=require("react"),index_module=require("./index.module.scss.js"),VideoClipToolContext=require("./VideoClipToolContext.js"),constant=require("./constant.js"),index=require("../../videoPlayer/index.js"),index$1=require("./components/videoTimeSlicesOverVideo/index.js"),icon_videoCutting=require("../../../assets/annotation/video/icon_videoCutting.svg.js"),utils=require("../../videoPlayer/utils.js");function _interopDefaultLegacy(S){return S&&typeof S=="object"&&"default"in S?S:{default:S}}var ___default=_interopDefaultLegacy(_),React__default=_interopDefaultLegacy(React);class VideoClipTool extends React__default.default.Component{constructor(r){super(r);this.fns=new Map,this.throttledUpdateTime=___default.default.throttle(t=>{this.videoPlayer.currentTime=t},100,{trailing:!0}),this.stepInfo=()=>this.props.stepInfo,this.emitEvent=t=>{const e=this.fns.get(t);e&&e.forEach(i=>{i&&i()})},this.setValid=t=>{this.setState({valid:t}),t===!1&&(this.clearResult(),this.updateSidebar())},this.updateSidebar=()=>{this.emitEvent("changeClipSidebar"),this.emitEvent("updateTextAttribute"),this.emitEvent("changeAttributeSidebar")},this.exportData=()=>{var t,e;const i=(e=(t=this.videoRef)==null?void 0:t.duration)!=null?e:0;return[this.state.result.filter(s=>s.end!==null),{valid:this.state.valid,duration:i}]},this.updateSelectedSliceTimeStartByPer=t=>{var e,i;if(this.state.clipStatus===constant.EClipStatus.Clipping){antd.message.info("\u622A\u53D6\u4E2D\u4E0D\u652F\u6301\u8C03\u6574\u5F00\u59CB\u65F6\u95F4");return}if(this.selectedSliceIndex>-1){const s=(i=(e=this.videoPlayer)==null?void 0:e.duration)!=null?i:0,{end:a,start:n,type:l}=this.state.result[this.selectedSliceIndex],u=lbAnnotation.MathUtils.withinRange(audio.precisionAdd(n,t),[0,audio.precisionMinus(l===constant.ETimeSliceType.Time?s:a,constant.PER_SLICE_CHANGE)]);this.updateSelectedSliceTimeProperty(u,"start")}},this.updateSelectedSliceTimeEndByPer=t=>{var e,i;if(this.state.clipStatus===constant.EClipStatus.Clipping){antd.message.info("\u622A\u53D6\u4E2D\u4E0D\u652F\u6301\u8C03\u6574\u7ED3\u675F\u65F6\u95F4");return}if(this.selectedSliceIndex>-1){const s=this.state.result[this.selectedSliceIndex],a=(i=(e=this.videoPlayer)==null?void 0:e.duration)!=null?i:0;if(s.type===constant.ETimeSliceType.Time){antd.message.info("\u65F6\u95F4\u70B9\u4EC5\u652F\u6301\u8C03\u6574\u5F00\u59CB\u65F6\u95F4");return}const{end:n,start:l}=s,u=lbAnnotation.MathUtils.withinRange(audio.precisionAdd(n,t),[audio.precisionAdd(l,constant.PER_SLICE_CHANGE),a]);this.updateSelectedSliceTimeProperty(u,"end")}},this.updateSelectedSliceTimeProperty=(t,e)=>{if(this.selectedSliceIndex>-1){const{result:i}=this.state;i[this.selectedSliceIndex][e]=t,this.setState({result:___default.default.cloneDeep(i)}),this.updateSidebar()}},this.keyDownEvents=t=>{if(!lbAnnotation.CommonToolUtils.hotkeyFilter(t))return;const e=t.target;switch(e&&(e==null?void 0:e.tag)==="INPUT"&&(e==null?void 0:e.type)==="radio"&&t.preventDefault(),t.key.toLocaleLowerCase()){case"x":this.toggleClipStatus();break;case"e":this.addTime();break;case"escape":this.cancelClipped();break;case"-":this.updateSelectedSliceTimeStartByPer(-constant.PER_SLICE_CHANGE);break;case"=":this.updateSelectedSliceTimeStartByPer(constant.PER_SLICE_CHANGE);break;case"[":this.updateSelectedSliceTimeEndByPer(-constant.PER_SLICE_CHANGE);break;case"]":this.updateSelectedSliceTimeEndByPer(constant.PER_SLICE_CHANGE);break}},this.setVideoError=(t,e,i)=>{if(t){const{clipStatus:s}=this.state;s===constant.EClipStatus.Clipping&&this.toggleClipStatus(i)}this.setState({videoError:t,loading:!1})},this.clearResult=()=>{this.setState({result:[],selectedID:"",textValue:""}),this.updateSidebar()},this.cancelClipped=()=>{const{result:t,selectedID:e,clipStatus:i}=this.state;if(i!==constant.EClipStatus.Clipping)return;const s=t.findIndex(a=>a.id===e);s>-1&&(t.splice(s,1),this.setState({result:t,selectedID:"",clipStatus:constant.EClipStatus.Stop}),this.updateSidebar())},this.toggleClipStatus=t=>{var e,i;if(typeof((e=this.props)==null?void 0:e.annotationBefore)=="function"){(i=this.props)==null||i.annotationBefore(()=>this.setClipResult(t));return}this.setClipResult(t)},this.setClipResult=t=>{var e,i,s;if(this.disabled)return;const{clipStatus:a,selectedAttribute:n}=this.state,l=a!==constant.EClipStatus.Clipping;let u=l?constant.EClipStatus.Clipping:constant.EClipStatus.Stop,{result:d,selectedID:o,textValue:p}=this.state;const c=___default.default.cloneDeep(d),h=t||((e=this.videoPlayer)==null?void 0:e.currentTime),v=(i=this.videoPlayer)==null?void 0:i.duration;if(v===void 0||h===void 0)return;const C=utils.decimalReserved(h,2);if(l){const f=lbAnnotation.uuid();o=f,c.push({start:C,end:null,attribute:n,textAttribute:this.defaultTextAttribute,duration:v,id:f,type:constant.ETimeSliceType.Period}),p=this.defaultTextAttribute}else{const f=c.findIndex(g=>g.id===o),m=c[f];m&&(h-m.start<constant.SLICE_MIN_TIME?(c.splice(f,1),antd.message.info(`\u622A\u53D6\u7247\u6BB5\u4E0D\u80FD\u77ED\u4E8E${constant.SLICE_MIN_TIME}s`),u=constant.EClipStatus.Stop,o="",p=""):(c[f].end=utils.decimalReserved(h,2),(s=this.videoPlayer)==null||s.pause(),antd.message.success(`\u5DF2\u622A\u53D6\u7247\u6BB5${d.length}`)))}this.setState({clipStatus:u,result:c,selectedID:o,textValue:p}),this.updateSidebar()},this.addTime=()=>{var t,e,i,s;if(this.disabled)return;const{result:a,selectedAttribute:n,selectedID:l}=this.state,u=lbAnnotation.uuid(),d=___default.default.cloneDeep(a),o=((t=this.videoPlayer)==null?void 0:t.currentTime)||0;d.push({start:o,end:o,attribute:n,textAttribute:this.defaultTextAttribute,id:u,type:constant.ETimeSliceType.Time,duration:(i=(e=this.videoPlayer)==null?void 0:e.duration)!=null?i:0});const p={result:d,selectedID:u,textValue:this.defaultTextAttribute},c=d.find(h=>h.id===l);this.isClipping&&c?(delete p.selectedID,delete p.textValue,antd.message.success(`\u5DF2\u622A\u53D6\u65F6\u95F4\u70B9${d.length-1}`)):(s=this.videoPlayer)==null||s.pause(),this.setState(p),this.updateSidebar()},this.updateCurrentTime=t=>{this.setState({currentTime:t})},this.contextToCancel=t=>{this.state.clipStatus===constant.EClipStatus.Stop&&(t.preventDefault(),this.setState({selectedID:""}),this.updateSidebar())},this.onTrackResize=(t,e,i)=>{var s,a;const{result:n}=this.state,l=n.find(u=>u.id===t);if(l){const u=l.duration,d=e==="left",o=d?"start":"end",p=d?-u*i:u*i,c=d?[0,Math.max(((s=l.end)!=null?s:0)-constant.SLICE_MIN_TIME,0)]:[l.start+constant.SLICE_MIN_TIME,u],h=lbAnnotation.MathUtils.withinRange(p+((a=l==null?void 0:l[o])!=null?a:0),c);l[o]=h,this.throttledUpdateTime(h)}this.setState({result:[...n]}),this.updateSidebar()},this.renderMediaContent=()=>{var t;const{pageForward:e,pageJump:i,pageBackward:s}=this.props,{result:a,videoError:n,valid:l,currentTime:u}=this.state;return React__default.default.createElement("div",{className:index_module.clipContainer},React__default.default.createElement(index.VideoPlayer,{imgIndex:this.props.imgIndex,imgList:this.props.imgList,pageBackward:s,pageForward:e,pageJump:i,valid:l,setVideoRef:d=>{this.videoPlayer=d},showVideoTrack:!n,onTrackResize:this.onTrackResize,drawLayerSlot:this.props.drawLayerSlot,footer:this.props.footer,dataLoaded:this.props.onVideoLoaded,toggleClipStatus:this.toggleClipStatus,addTime:this.addTime,updateCurrentTime:this.updateCurrentTime}),React__default.default.createElement(index$1,{key:(t=this.videoPlayer)==null?void 0:t.currentTime,result:a,currentTime:u,attributeList:this.props.config.attributeList,extraStyle:{top:this.props.drawLayerSlot?40:0}}),this.isClipping&&React__default.default.createElement("i",{className:index_module.clipping,style:{backgroundImage:icon_videoCutting}}))},this.onSelectedTimeSlice=t=>{var e;this.isClipping||(this.setState({selectedID:t.id,selectedAttribute:t.attribute,textValue:t.textAttribute,currentTime:t.start}),this.updateSidebar(),(e=this.videoPlayer)==null||e.pause(),this.videoPlayer.currentTime=t.start)},this.removeTimeSlice=t=>{const{result:e}=this.state,i=this.state.selectedID===t.id?"":this.state.selectedID,s=e.findIndex(a=>a.id===t.id);s>-1&&(e.splice(s,1),this.setState({result:[...e],selectedID:i}),this.updateSidebar())},this.setResult=(t=!0,e=this.props)=>{try{const{imgIndex:i,imgList:s}=e;if(!s[i])return;const n=index$2.jsonParser(s[i].result)[`step_${this.stepInfo().step}`],l=(n==null?void 0:n.result)||[],u=audio.isImageValue(s[i].result||"[]");this.setState({result:l,loading:t,selectedID:"",textValue:"",selectedAttribute:"",clipStatus:constant.EClipStatus.Stop,valid:u},()=>{this.updateSidebar(),u||antd.message.info("\u65E0\u6548\u89C6\u9891\uFF0C\u8BF7\u8DF3\u8FC7")})}catch(i){console.error("\u6570\u636E\u89E3\u6790\u5931\u8D25"),this.setState({result:[],loading:!1,selectedID:"",textValue:"",selectedAttribute:"",valid:!0},()=>{this.updateSidebar()})}},this.setDefaultAttribute=t=>{const{result:e,selectedID:i}=this.state,s=e.find(a=>a.id===i);s&&i&&(s.attribute=t),this.setState({selectedAttribute:t,result:[...e]}),this.updateSidebar()},this.textChange=t=>{const{result:e,selectedID:i}=this.state;if(this.setState({textValue:t}),i){const s=e.find(a=>a.id===i);s&&(s.textAttribute=t,this.setState({result:[...e]}),this.updateSidebar())}},this.state={result:[],selectedAttribute:"",textValue:"",clipStatus:constant.EClipStatus.Stop,selectedID:"",loading:!1,videoError:!1,remainingTime:0,currentTime:0,configLoading:!1,valid:!0}}get videoUrl(){var r;const{imgIndex:t,imgList:e}=this.props;return((r=e[t])==null?void 0:r.url)||""}get isClipping(){return this.state.clipStatus===constant.EClipStatus.Clipping}get resultJSON(){const{imgIndex:r,imgList:t}=this.props;return t.length===0||!t[r]?"[]":t[r].result}get disabled(){return!this.state.valid||this.state.videoError}get loading(){return this.state.loading||this.state.configLoading}get defaultTextAttribute(){return lbAnnotation.AttributeUtils.getTextAttribute(this.state.result,this.props.config.textCheckType)}get defaultAttribute(){return this.state.selectedAttribute}get selectedID(){return this.state.selectedID}get selectedSliceIndex(){return this.state.result.findIndex(r=>r.id===this.state.selectedID)}get exportContext(){return{selectedID:this.state.selectedID,result:this.state.result,clipStatus:this.state.clipStatus,videoPlayer:this.videoPlayer,attributeList:this.props.config.attributeList,onSelectedTimeSlice:this.onSelectedTimeSlice,removeTimeSlice:this.removeTimeSlice,updateSelectedSliceTimeProperty:this.updateSelectedSliceTimeProperty}}get valid(){return this.state.valid}get config(){var r;return index$2.jsonParser((r=this.props.stepInfo)==null?void 0:r.config)}get selectedText(){var r,t;return(t=(r=this.state.result)==null?void 0:r[this.selectedSliceIndex])==null?void 0:t.textAttribute}componentDidMount(){this.setState({loading:!1}),this.setResult(!1),this.props.onMounted(this),window.addEventListener("keydown",this.keyDownEvents)}componentWillUnmount(){this.props.onUnmounted(),window.removeEventListener("keydown",this.keyDownEvents)}shouldComponentUpdate(r,t){const e=r.imgIndex-this.props.imgIndex,i=r.step-this.props.step;return(e!==0||i!==0)&&(this.setResult(!0,r),i!==0&&this.setState({loading:!1})),!0}singleOn(r,t){this.fns.set(r,[t])}on(r,t){this.singleOn(r,t)}unbindAll(r){this.fns.delete(r)}render(){const{selectedID:r,result:t,clipStatus:e,selectedAttribute:i}=this.state;return React__default.default.createElement(VideoClipToolContext.VideoClipToolContextProvider,{value:{videoPlayer:this.videoPlayer,result:t,selectedID:r,attributeList:this.props.config.attributeList,clipStatus:e,selectedAttribute:i,contextToCancel:this.contextToCancel}},this.renderMediaContent())}}module.exports=VideoClipTool;
1
+ "use strict";var lbAnnotation=require("@labelbee/lb-annotation"),index$2=require("../../../utils/index.js"),audio=require("../../../utils/audio.js"),antd=require("antd"),_=require("lodash"),React=require("react"),index_module=require("./index.module.scss.js"),VideoClipToolContext=require("./VideoClipToolContext.js"),constant=require("./constant.js"),index=require("../../videoPlayer/index.js"),index$1=require("./components/videoTimeSlicesOverVideo/index.js"),icon_videoCutting=require("../../../assets/annotation/video/icon_videoCutting.svg.js"),utils=require("../../videoPlayer/utils.js");function _interopDefaultLegacy(S){return S&&typeof S=="object"&&"default"in S?S:{default:S}}var ___default=_interopDefaultLegacy(_),React__default=_interopDefaultLegacy(React);class VideoClipTool extends React__default.default.Component{constructor(l){super(l);this.fns=new Map,this.throttledUpdateTime=___default.default.throttle(t=>{this.videoPlayer.currentTime=t},100,{trailing:!0}),this.stepInfo=()=>this.props.stepInfo,this.emitEvent=t=>{const e=this.fns.get(t);e&&e.forEach(i=>{i&&i()})},this.setValid=t=>{this.setState({valid:t}),t===!1&&(this.clearResult(),this.updateSidebar())},this.updateSidebar=()=>{this.emitEvent("changeClipSidebar"),this.emitEvent("updateTextAttribute"),this.emitEvent("changeAttributeSidebar")},this.exportData=()=>{var t,e;const i=(e=(t=this.videoRef)==null?void 0:t.duration)!=null?e:0;return[this.state.result.filter(s=>s.end!==null),{valid:this.state.valid,duration:i}]},this.updateSelectedSliceTimeStartByPer=t=>{var e,i;if(this.state.clipStatus===constant.EClipStatus.Clipping){antd.message.info("\u622A\u53D6\u4E2D\u4E0D\u652F\u6301\u8C03\u6574\u5F00\u59CB\u65F6\u95F4");return}if(this.selectedSliceIndex>-1){const s=(i=(e=this.videoPlayer)==null?void 0:e.duration)!=null?i:0,{end:r,start:n,type:a}=this.state.result[this.selectedSliceIndex],u=lbAnnotation.MathUtils.withinRange(audio.precisionAdd(n,t),[0,audio.precisionMinus(a===constant.ETimeSliceType.Time?s:r,constant.PER_SLICE_CHANGE)]);this.updateSelectedSliceTimeProperty(u,"start")}},this.updateSelectedSliceTimeEndByPer=t=>{var e,i;if(this.state.clipStatus===constant.EClipStatus.Clipping){antd.message.info("\u622A\u53D6\u4E2D\u4E0D\u652F\u6301\u8C03\u6574\u7ED3\u675F\u65F6\u95F4");return}if(this.selectedSliceIndex>-1){const s=this.state.result[this.selectedSliceIndex],r=(i=(e=this.videoPlayer)==null?void 0:e.duration)!=null?i:0;if(s.type===constant.ETimeSliceType.Time){antd.message.info("\u65F6\u95F4\u70B9\u4EC5\u652F\u6301\u8C03\u6574\u5F00\u59CB\u65F6\u95F4");return}const{end:n,start:a}=s,u=lbAnnotation.MathUtils.withinRange(audio.precisionAdd(n,t),[audio.precisionAdd(a,constant.PER_SLICE_CHANGE),r]);this.updateSelectedSliceTimeProperty(u,"end")}},this.updateSelectedSliceTimeProperty=(t,e)=>{if(this.selectedSliceIndex>-1){const{result:i}=this.state;i[this.selectedSliceIndex][e]=t,this.setState({result:___default.default.cloneDeep(i)}),this.updateSidebar()}},this.keyDownEvents=t=>{if(!lbAnnotation.CommonToolUtils.hotkeyFilter(t))return;const e=t.target;switch(e&&(e==null?void 0:e.tag)==="INPUT"&&(e==null?void 0:e.type)==="radio"&&t.preventDefault(),t.key.toLocaleLowerCase()){case"x":this.toggleClipStatus();break;case"e":this.addTime();break;case"escape":this.cancelClipped();break;case"-":this.updateSelectedSliceTimeStartByPer(-constant.PER_SLICE_CHANGE);break;case"=":this.updateSelectedSliceTimeStartByPer(constant.PER_SLICE_CHANGE);break;case"[":this.updateSelectedSliceTimeEndByPer(-constant.PER_SLICE_CHANGE);break;case"]":this.updateSelectedSliceTimeEndByPer(constant.PER_SLICE_CHANGE);break}},this.setVideoError=(t,e,i)=>{if(t){const{clipStatus:s}=this.state;s===constant.EClipStatus.Clipping&&this.toggleClipStatus(i)}this.setState({videoError:t,loading:!1})},this.clearResult=()=>{this.setState({result:[],selectedID:"",textValue:""}),this.updateSidebar()},this.cancelClipped=()=>{const{result:t,selectedID:e,clipStatus:i}=this.state;if(i!==constant.EClipStatus.Clipping)return;const s=t.findIndex(r=>r.id===e);s>-1&&(t.splice(s,1),this.setState({result:t,selectedID:"",clipStatus:constant.EClipStatus.Stop}),this.updateSidebar())},this.toggleClipStatus=t=>{var e,i;if(typeof((e=this.props)==null?void 0:e.annotationBefore)=="function"){(i=this.props)==null||i.annotationBefore(()=>this.setClipResult(t));return}this.setClipResult(t)},this.setClipResult=t=>{var e,i,s,r,n;if(this.disabled)return;const{clipStatus:a,selectedAttribute:u}=this.state,d=a!==constant.EClipStatus.Clipping;let c=d?constant.EClipStatus.Clipping:constant.EClipStatus.Stop,{result:o,selectedID:p,textValue:h}=this.state;const f=___default.default.cloneDeep(o),m=t||((e=this.videoPlayer)==null?void 0:e.currentTime),b=(i=this.videoPlayer)==null?void 0:i.duration;if(b===void 0||m===void 0)return;const T=utils.decimalReserved(m,2);if(d){const g=lbAnnotation.uuid(),v={};p=g,f.push({start:T,end:null,attribute:u,textAttribute:this.defaultTextAttribute,duration:b,id:g,type:constant.ETimeSliceType.Period,subAttribute:v,text:this.getSubAttributeShowText(v,(r=(s=this.props.config)==null?void 0:s.inputList)!=null?r:[])}),h=this.defaultTextAttribute}else{const g=f.findIndex(C=>C.id===p),v=f[g];v&&(m-v.start<constant.SLICE_MIN_TIME?(f.splice(g,1),antd.message.info(`\u622A\u53D6\u7247\u6BB5\u4E0D\u80FD\u77ED\u4E8E${constant.SLICE_MIN_TIME}s`),c=constant.EClipStatus.Stop,p="",h=""):(f[g].end=utils.decimalReserved(m,2),(n=this.videoPlayer)==null||n.pause(),antd.message.success(`\u5DF2\u622A\u53D6\u7247\u6BB5${o.length}`)))}this.setState({clipStatus:c,result:f,selectedID:p,textValue:h}),this.updateSidebar()},this.addTime=()=>{var t,e,i,s;if(this.disabled)return;const{result:r,selectedAttribute:n,selectedID:a}=this.state,u=lbAnnotation.uuid(),d=___default.default.cloneDeep(r),c=((t=this.videoPlayer)==null?void 0:t.currentTime)||0;d.push({start:c,end:c,attribute:n,textAttribute:this.defaultTextAttribute,id:u,type:constant.ETimeSliceType.Time,duration:(i=(e=this.videoPlayer)==null?void 0:e.duration)!=null?i:0,subAttribute:{}});const o={result:d,selectedID:u,textValue:this.defaultTextAttribute},p=d.find(h=>h.id===a);this.isClipping&&p?(delete o.selectedID,delete o.textValue,antd.message.success(`\u5DF2\u622A\u53D6\u65F6\u95F4\u70B9${d.length-1}`)):(s=this.videoPlayer)==null||s.pause(),this.setState(o),this.updateSidebar()},this.updateCurrentTime=t=>{this.setState({currentTime:t})},this.contextToCancel=t=>{this.state.clipStatus===constant.EClipStatus.Stop&&(t.preventDefault(),this.setState({selectedID:""}),this.updateSidebar())},this.onTrackResize=(t,e,i)=>{var s,r;const{result:n}=this.state,a=n.find(u=>u.id===t);if(a){const u=a.duration,d=e==="left",c=d?"start":"end",o=d?-u*i:u*i,p=d?[0,Math.max(((s=a.end)!=null?s:0)-constant.SLICE_MIN_TIME,0)]:[a.start+constant.SLICE_MIN_TIME,u],h=lbAnnotation.MathUtils.withinRange(o+((r=a==null?void 0:a[c])!=null?r:0),p);a[c]=h,this.throttledUpdateTime(h)}this.setState({result:[...n]}),this.updateSidebar()},this.renderMediaContent=()=>{var t,e,i;const{pageForward:s,pageJump:r,pageBackward:n}=this.props,{result:a,videoError:u,valid:d,currentTime:c}=this.state;return React__default.default.createElement("div",{className:index_module.clipContainer},React__default.default.createElement(index.VideoPlayer,{imgIndex:this.props.imgIndex,imgList:this.props.imgList,pageBackward:n,pageForward:s,pageJump:r,valid:d,setVideoRef:o=>{this.videoPlayer=o},showVideoTrack:!u,onTrackResize:this.onTrackResize,drawLayerSlot:this.props.drawLayerSlot,footer:this.props.footer,dataLoaded:this.props.onVideoLoaded,toggleClipStatus:this.toggleClipStatus,addTime:this.addTime,updateCurrentTime:this.updateCurrentTime}),React__default.default.createElement(index$1,{key:(t=this.videoPlayer)==null?void 0:t.currentTime,result:a,currentTime:c,attributeList:this.props.config.attributeList,inputList:(i=(e=this.props.config)==null?void 0:e.inputList)!=null?i:[],extraStyle:{top:this.props.drawLayerSlot?40:0}}),this.isClipping&&React__default.default.createElement("i",{className:index_module.clipping,style:{backgroundImage:icon_videoCutting}}))},this.onSelectedTimeSlice=t=>{var e;this.isClipping||(this.setState({selectedID:t.id,selectedAttribute:t.attribute,textValue:t.textAttribute,currentTime:t.start}),this.updateSidebar(),(e=this.videoPlayer)==null||e.pause(),this.videoPlayer.currentTime=t.start)},this.removeTimeSlice=t=>{const{result:e}=this.state,i=this.state.selectedID===t.id?"":this.state.selectedID,s=e.findIndex(r=>r.id===t.id);s>-1&&(e.splice(s,1),this.setState({result:[...e],selectedID:i}),this.updateSidebar())},this.setResult=(t=!0,e=this.props)=>{var i,s;try{const{imgIndex:r,imgList:n}=e;if(!n[r])return;const u=index$2.jsonParser(n[r].result)[`step_${this.stepInfo().step}`],d=(u==null?void 0:u.result)||[],c=(s=(i=this.props.config)==null?void 0:i.inputList)!=null?s:[];d.forEach(p=>{p.text=this.getSubAttributeShowText(p.subAttribute,c)});const o=audio.isImageValue(n[r].result||"[]");this.setState({result:d,loading:t,selectedID:"",textValue:"",selectedAttribute:"",clipStatus:constant.EClipStatus.Stop,valid:o},()=>{this.updateSidebar(),o||antd.message.info("\u65E0\u6548\u89C6\u9891\uFF0C\u8BF7\u8DF3\u8FC7")})}catch(r){console.error("\u6570\u636E\u89E3\u6790\u5931\u8D25"),this.setState({result:[],loading:!1,selectedID:"",textValue:"",selectedAttribute:"",valid:!0},()=>{this.updateSidebar()})}},this.setDefaultAttribute=t=>{const{result:e,selectedID:i}=this.state,s=e.find(r=>r.id===i);s&&i&&(s.attribute=t),this.setState({selectedAttribute:t,result:[...e]}),this.updateSidebar()},this.setSubAttribute=(t,e)=>{var i,s;const{result:r,selectedID:n}=this.state;if(n){const a=r.find(u=>u.id===n);a&&(a.subAttribute||(a.subAttribute={}),a.subAttribute[t]=e,a.text=this.getSubAttributeShowText(a.subAttribute,(s=(i=this.props.config)==null?void 0:i.inputList)!=null?s:[]),this.setState({result:[...r]}),this.updateSidebar())}},this.textChange=t=>{const{result:e,selectedID:i}=this.state;if(this.setState({textValue:t}),i){const s=e.find(r=>r.id===i);s&&(s.textAttribute=t,this.setState({result:[...e]}),this.updateSidebar())}},this.getSubAttributeShowText=(t,e)=>{if(!t||(e==null?void 0:e.length)===0)return"";let i="";return lbAnnotation.TagUtils.getTagNameList(t,e).forEach(r=>{i+=`
2
+ ${r.keyName}: ${r.value.join("\u3001")}`}),i},this.state={result:[],selectedAttribute:"",textValue:"",clipStatus:constant.EClipStatus.Stop,selectedID:"",loading:!1,videoError:!1,remainingTime:0,currentTime:0,configLoading:!1,valid:!0}}get videoUrl(){var l;const{imgIndex:t,imgList:e}=this.props;return((l=e[t])==null?void 0:l.url)||""}get isClipping(){return this.state.clipStatus===constant.EClipStatus.Clipping}get resultJSON(){const{imgIndex:l,imgList:t}=this.props;return t.length===0||!t[l]?"[]":t[l].result}get disabled(){return!this.state.valid||this.state.videoError}get loading(){return this.state.loading||this.state.configLoading}get defaultTextAttribute(){return lbAnnotation.AttributeUtils.getTextAttribute(this.state.result,this.props.config.textCheckType)}get defaultAttribute(){return this.state.selectedAttribute}get selectedID(){return this.state.selectedID}get selectedSliceIndex(){return this.state.result.findIndex(l=>l.id===this.state.selectedID)}get exportContext(){return{selectedID:this.state.selectedID,result:this.state.result,clipStatus:this.state.clipStatus,videoPlayer:this.videoPlayer,attributeList:this.props.config.attributeList,onSelectedTimeSlice:this.onSelectedTimeSlice,removeTimeSlice:this.removeTimeSlice,updateSelectedSliceTimeProperty:this.updateSelectedSliceTimeProperty}}get valid(){return this.state.valid}get config(){var l;return index$2.jsonParser((l=this.props.stepInfo)==null?void 0:l.config)}get selectedText(){var l,t;return(t=(l=this.state.result)==null?void 0:l[this.selectedSliceIndex])==null?void 0:t.textAttribute}componentDidMount(){this.setState({loading:!1}),this.setResult(!1),this.props.onMounted(this),window.addEventListener("keydown",this.keyDownEvents)}componentWillUnmount(){this.props.onUnmounted(),window.removeEventListener("keydown",this.keyDownEvents)}shouldComponentUpdate(l,t){const e=l.imgIndex-this.props.imgIndex,i=l.step-this.props.step;return(e!==0||i!==0)&&(this.setResult(!0,l),i!==0&&this.setState({loading:!1})),!0}singleOn(l,t){this.fns.set(l,[t])}on(l,t){this.singleOn(l,t)}unbindAll(l){this.fns.delete(l)}render(){const{selectedID:l,result:t,clipStatus:e,selectedAttribute:i}=this.state;return React__default.default.createElement(VideoClipToolContext.VideoClipToolContextProvider,{value:{videoPlayer:this.videoPlayer,result:t,selectedID:l,attributeList:this.props.config.attributeList,clipStatus:e,selectedAttribute:i,contextToCancel:this.contextToCancel}},this.renderMediaContent())}}module.exports=VideoClipTool;
package/dist/index.css CHANGED
@@ -521,14 +521,28 @@
521
521
  word-break: break-all;
522
522
  }
523
523
  .index-module_timeSliceWrapper__kebC3 .index-module_timeSliceItemText__FJFwH {
524
- background-color: #CCC;
524
+ width: 100%;
525
525
  padding: 8px 24px;
526
+ background-color: #ccc;
526
527
  }
527
- .index-module_timeSliceWrapper__kebC3 .index-module_timeSliceItemAttribute__--3E1 span {
528
- display: inline-block;
529
- height: 40px;
530
- line-height: 40px;
531
- padding: 0 24px;
528
+ .index-module_timeSliceWrapper__kebC3 .index-module_timeSliceItemAttribute__--3E1 {
529
+ width: 100%;
530
+ padding: 8px 24px;
531
+ text-align: left;
532
+ }
533
+ .index-module_timeSliceWrapper__kebC3 .index-module_timeSliceItemSubAttribute__MtsgS {
534
+ font-size: 14px;
535
+ color: #fff;
536
+ padding: 8px 24px;
537
+ word-break: break-all;
538
+ line-height: 1.5;
539
+ width: 100%;
540
+ }
541
+ .index-module_timeSliceWrapper__kebC3 .index-module_timeSliceItemSubAttribute__MtsgS div {
542
+ margin-bottom: 4px;
543
+ }
544
+ .index-module_timeSliceWrapper__kebC3 .index-module_timeSliceItemSubAttribute__MtsgS div:last-child {
545
+ margin-bottom: 0;
532
546
  }
533
547
  .index-module_speedControllerWrap__aFz7r {
534
548
  display: flex;
@@ -127,11 +127,24 @@ declare class VideoClipTool extends React.Component<IVideoClipProps, IState> {
127
127
  * @param attribute
128
128
  */
129
129
  setDefaultAttribute: (attribute: string) => void;
130
+ /**
131
+ * Set the sub attributes of the currently selected segment
132
+ * @param key subAttribute key
133
+ * @param value subAttribute value
134
+ */
135
+ setSubAttribute: (key: string, value: string) => void;
130
136
  /**
131
137
  * 设置当前选中片段的文本
132
138
  * @param textValue
133
139
  */
134
140
  textChange: (textValue: string) => void;
141
+ /**
142
+ * Splicing sub attributes into the format required for display
143
+ * @param subAttribute Sub attribute object
144
+ * @param subAttributeList Secondary attribute configuration list
145
+ * @returns The formatted text string
146
+ */
147
+ getSubAttributeShowText: (subAttribute: Record<string, string> | undefined, subAttributeList: any[]) => string;
135
148
  render(): React.JSX.Element;
136
149
  }
137
150
  export default VideoClipTool;
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import { GraphToolInstance } from 'src/store/annotation/types';
3
+ import { IStepInfo } from '@/types/step';
4
+ interface IProps {
5
+ toolInstance?: GraphToolInstance;
6
+ stepInfo?: IStepInfo;
7
+ }
8
+ declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
9
+ children?: React.ReactNode;
10
+ }, "toolInstance" | "stepInfo">>;
11
+ export default _default;
@@ -1 +1 @@
1
- "use strict";var React=require("react"),reactRedux=require("react-redux"),index$1=require("../../../../components/attributeList/index.js"),StepUtils=require("../../../../utils/StepUtils.js"),index=require("../../../../utils/index.js"),reactI18next=require("react-i18next"),ToolType=require("../../../../data/enums/ToolType.js"),ctx=require("../../../../store/ctx.js");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const SwitchAttributeList=t=>{var i;const[s,l]=React.useState(0),o=React.useRef(null),{toolInstance:e}=t,{t:f}=reactI18next.useTranslation(),b=r=>{e==null||e.setAttributeLockList(r)};if(React.useEffect(()=>(e&&e.singleOn("changeAttributeSidebar",r=>{var a;l(n=>n+1),!!o.current&&((a=o.current.children[r])==null||a.scrollIntoView({block:"center"}))}),()=>{e==null||e.unbindAll("changeAttributeSidebar")}),[e,o]),!t.stepInfo)return null;const u=index.jsonParser(t.stepInfo.config),c=t.stepInfo.tool===ToolType.EToolName.ScribbleTool;if(u.attributeConfigurable!==!0&&!c)return null;if((u.attributeConfigurable===!0||c)&&(u==null?void 0:u.attributeList)){const r=u.attributeList.map(n=>({label:n.key,value:n.value,color:n==null?void 0:n.color}));c||r.unshift({label:f("NoAttribute"),value:""});const a=n=>{e&&(e.setDefaultAttribute(n),l(d=>d+1))};return React__default.default.createElement(index$1.default,{list:r,attributeChanged:a,selectedAttribute:(i=e==null?void 0:e.defaultAttribute)!=null?i:"",ref:o,attributeLockChange:b})}return null},mapStateToProps=t=>{var i,s;const l=StepUtils.getCurrentStepInfo((i=t.annotation)==null?void 0:i.step,(s=t.annotation)==null?void 0:s.stepList);return{toolInstance:t.annotation.toolInstance,stepInfo:l}};var SwitchAttributeList$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(SwitchAttributeList);module.exports=SwitchAttributeList$1;
1
+ "use strict";var React=require("react"),reactRedux=require("react-redux"),index$1=require("../../../../components/attributeList/index.js"),StepUtils=require("../../../../utils/StepUtils.js"),index=require("../../../../utils/index.js"),reactI18next=require("react-i18next"),ToolType=require("../../../../data/enums/ToolType.js"),ctx=require("../../../../store/ctx.js");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const SwitchAttributeList=t=>{var i;const[s,o]=React.useState(0),l=React.useRef(null),{toolInstance:e}=t,{t:b}=reactI18next.useTranslation(),d=n=>{e==null||e.setAttributeLockList(n)};if(React.useEffect(()=>(e&&e.singleOn("changeAttributeSidebar",n=>{var a;o(f=>f+1),!!l.current&&((a=l.current.children[n])==null||a.scrollIntoView({block:"center"}))}),()=>{e==null||e.unbindAll("changeAttributeSidebar")}),[e,l]),!t.stepInfo)return null;const u=index.jsonParser(t.stepInfo.config),c=t.stepInfo.tool===ToolType.EToolName.ScribbleTool;if(u.attributeConfigurable!==!0&&!c)return null;if((u.attributeConfigurable===!0||c)&&(u==null?void 0:u.attributeList)){const n=u.attributeList.map(r=>({label:r.key,value:r.value,color:r==null?void 0:r.color}));c||n.unshift({label:b("NoAttribute"),value:""});const a=r=>{e&&(e.setDefaultAttribute(r),o(v=>v+1))},f=(i=e==null?void 0:e.defaultAttribute)!=null?i:"";return React__default.default.createElement(index$1.default,{list:n,attributeChanged:a,selectedAttribute:f,ref:l,attributeLockChange:d})}return null},mapStateToProps=t=>{var i,s;const o=StepUtils.getCurrentStepInfo((i=t.annotation)==null?void 0:i.step,(s=t.annotation)==null?void 0:s.stepList);return{toolInstance:t.annotation.toolInstance,stepInfo:o}};var SwitchAttributeList$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(SwitchAttributeList);module.exports=SwitchAttributeList$1;
@@ -0,0 +1 @@
1
+ "use strict";var React=require("react"),reactRedux=require("react-redux"),index$1=require("../../../../components/attributeList/index.js"),StepUtils=require("../../../../utils/StepUtils.js"),index=require("../../../../utils/index.js"),reactI18next=require("react-i18next"),ctx=require("../../../../store/ctx.js"),index$2=require("../../../../components/subAttributeList/index.js"),antd=require("antd");function _interopDefaultLegacy(n){return n&&typeof n=="object"&&"default"in n?n:{default:n}}var React__default=_interopDefaultLegacy(React);const VideoClipToolAttributeList=n=>{var i,l;const[v,d]=React.useState(0),o=React.useRef(null),{toolInstance:t}=n,{t:p}=reactI18next.useTranslation(),r=n.stepInfo?index.jsonParser(n.stepInfo.config):{},A=(i=t==null?void 0:t.defaultAttribute)!=null?i:"",a=t==null?void 0:t.exportContext,s=a==null?void 0:a.selectedID,b=a==null?void 0:a.result,x=(l=r==null?void 0:r.inputList)!=null?l:[],c=React.useMemo(()=>{if(s&&b)return b.find(e=>e.id===s)},[s,b]),L=e=>{t==null||t.setAttributeLockList(e)};if(React.useEffect(()=>(t&&t.singleOn("changeAttributeSidebar",e=>{var u;d(f=>f+1),!!o.current&&((u=o.current.children[e])==null||u.scrollIntoView({block:"center"}))}),()=>{t==null||t.unbindAll("changeAttributeSidebar")}),[t,o]),!n.stepInfo||r.attributeConfigurable!==!0||!(r==null?void 0:r.attributeList))return null;const g=r.attributeList.map(e=>({label:e.key,value:e.value,color:e==null?void 0:e.color}));g.unshift({label:p("NoAttribute"),value:""});const m=e=>{t&&(t.setDefaultAttribute(e),d(u=>u+1))},S=(e,u)=>{t&&t.setSubAttribute&&(t.setSubAttribute(e,u),d(f=>f+1))},h=e=>{if(c==null?void 0:c.subAttribute)return c.subAttribute[e.value]},I=A&&s&&c&&x.length>0&&(r==null?void 0:r.secondaryAttributeConfigurable)===!0;return React__default.default.createElement("div",{style:{height:0,flex:1,overflowY:"auto",overflowX:"hidden"}},React__default.default.createElement(index$1.default,{list:g,attributeChanged:m,selectedAttribute:A,ref:o,attributeLockChange:L}),I&&React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(antd.Divider,{style:{margin:0}}),React__default.default.createElement(index$2,{subAttributeList:x,setSubAttribute:S,getValue:h,lang:"cn"})))},mapStateToProps=n=>{var i,l;const v=StepUtils.getCurrentStepInfo((i=n.annotation)==null?void 0:i.step,(l=n.annotation)==null?void 0:l.stepList);return{toolInstance:n.annotation.toolInstance,stepInfo:v}};var VideoClipToolAttributeList$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(VideoClipToolAttributeList);module.exports=VideoClipToolAttributeList$1;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index=require("../../../constant/index.js"),ToolType=require("../../../data/enums/ToolType.js"),StepUtils=require("../../../utils/StepUtils.js"),es=require("antd/es"),React=require("react"),reactI18next=require("react-i18next"),index$9=require("./AnnotationText/index.js"),index$2=require("./ClearIcon/index.js"),index$7=require("./GeneralOperation/index.js"),index$3=require("./ImgAttributeInfo/index.js"),index$8=require("./SwitchAttributeList/index.js"),index$1=require("./TagSidebar/index.js"),index$4=require("./TextToolSidebar/index.js"),index$6=require("./PointCloudToolSidebar/index.js"),index$f=require("./ToolStyle/index.js"),lbAnnotation=require("@labelbee/lb-annotation"),index$a=require("./ScribbleSidebar/index.js"),ToolIcons=require("./ToolIcons.js"),ctx=require("../../../store/ctx.js"),antd=require("antd"),index$5=require("../../../utils/index.js"),icon_menu_fold=require("../../../assets/annotation/common/icon_menu_fold.svg.js"),index$c=require("../../../components/LLMToolView/sidebar/index.js"),index$d=require("../../../components/LLMMultiWheelView/sidebar/index.js"),index$e=require("./NLPSidebar/index.js"),index$b=require("../../../components/videoAnnotate/videoClipTool/components/annotatedList/index.js");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const{EVideoToolName,EPointCloudName}=lbAnnotation.cTool,{Panel}=es.Collapse,sidebarCls=`${index.prefix}-sidebar`,Sidebar=({sider:t,enableColorPicker:N,setSiderWidth:u,propsSiderWidth:h,checkMode:o,setBatchSetValid:$})=>{const s=ctx.useSelector(a=>StepUtils.getCurrentStepInfo(a.annotation.step,a.annotation.stepList)),[i,S]=React.useState(!0),e=s==null?void 0:s.tool,{t:c}=reactI18next.useTranslation();if(!e)return null;const g=a=>{const r=React__default.default.createElement(index$f,null);return React__default.default.createElement(Panel,{header:c("Style"),className:"panel",key:a},r)},f=React__default.default.createElement(ToolIcons.ToolIcons,{toolName:e,onChange:()=>{}}),l=React__default.default.createElement(index$8,null),m=React__default.default.createElement(index$9,null),x=React__default.default.createElement(es.Collapse,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${sidebarCls}__content`,expandIcon:index$1.expandIconFuc},g("1")),p=React__default.default.createElement(es.Collapse,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${sidebarCls}__content`,expandIcon:index$1.expandIconFuc},React__default.default.createElement(Panel,{header:React__default.default.createElement("div",null,c("Adjust"),React__default.default.createElement(index$2,null)),className:"panel",key:"imgAttribute"},React__default.default.createElement(index$3,null))),n=React__default.default.createElement(index$7.default,null),_=React__default.default.createElement(index$1.default,null),q=a=>React__default.default.createElement(index$4.default,{disabled:a}),E=React__default.default.createElement(index$a,{onChange:(a,r)=>{}}),v=React__default.default.createElement(index$b,null),b=React__default.default.createElement(index$c.default,{checkMode:o}),y=React__default.default.createElement(index$d,{checkMode:o}),T=React__default.default.createElement(index$e.default,{checkMode:o}),d=React__default.default.createElement("div",{className:`${sidebarCls}__horizontal`}),C=React__default.default.createElement(index$6.default,{enableColorPicker:N}),j=React__default.default.createElement(index$7.PointCloudOperation,{setBatchSetValid:$});if(t)return typeof t=="function"?React__default.default.createElement("div",{className:`${sidebarCls}`},t({toolIcon:f,attributeList:l,annotationText:m,toolStyle:x,imageAttributeInfo:p,operation:n,tagToolSideBar:_,textToolSideBar:q,horizontal:d,pointCloudToolSidebar:C,pointCloudOperation:j,scribbleSidebar:E,LLMSidebar:b,LLMMultiWheelSidebar:y,videoClipSidebar:v,NLPSidebar:T})):t;if([ToolType.EToolName.Rect,ToolType.EToolName.Point,ToolType.EToolName.Line,ToolType.EToolName.Rect,ToolType.EToolName.Polygon,ToolType.EToolName.Cuboid].includes(e))return React__default.default.createElement("div",{className:`${sidebarCls}`},f,d,l,m,d,React__default.default.createElement("div",{className:`${sidebarCls}__content`},x,p),n);if(e===ToolType.EToolName.Tag)return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index$1.default,null));if(e===EVideoToolName.VideoClipTool)return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},v,l),n);if(e===EVideoToolName.VideoTagTool)return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},React__default.default.createElement(index$1.default,null)),n);if(e===EVideoToolName.VideoTextTool)return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index$4.default,null));if(e===ToolType.EToolName.Text)return React__default.default.createElement("div",{className:`${sidebarCls}`},"s",React__default.default.createElement(index$4.default,null));if(e===EPointCloudName.PointCloud){const a=()=>{S(!i),u&&u(i?48:void 0)},r=React__default.default.createElement("div",{style:{width:"48px",height:"100%",display:"flex",justifyContent:"center",background:"#ffffff"}},React__default.default.createElement("span",{onClick:()=>a()},React__default.default.createElement("img",{style:{width:"16px",height:"16px",marginTop:"18px",cursor:"pointer",transform:"rotate(180deg)"},src:icon_menu_fold})));return i?React__default.default.createElement(antd.Tabs,{type:"card",activeKey:"1",className:index$5.classnames({[`${sidebarCls}`]:!0,[`${sidebarCls}__pointCloud`]:!0}),tabBarExtraContent:{left:React__default.default.createElement("span",{onClick:()=>a(),style:{padding:"0px 4px"}},React__default.default.createElement("img",{style:{width:"16px",height:"16px",marginLeft:"4px",cursor:"pointer"},src:icon_menu_fold}))}},React__default.default.createElement(antd.Tabs.TabPane,{tab:"\u5DE5\u5177\u9762\u677F",key:"1",style:{height:"100%",display:"flex",flexDirection:"column"}},React__default.default.createElement("div",{className:`${sidebarCls}__content`},React__default.default.createElement(index$6.default,null)),React__default.default.createElement(index$7.PointCloudOperation,null))):r}return e===ToolType.EToolName.ScribbleTool?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},E,l),n):e===ToolType.EToolName.LLM?b:e===ToolType.EToolName.NLP?T:null};exports.default=Sidebar,exports.sidebarCls=sidebarCls;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var index=require("../../../constant/index.js"),ToolType=require("../../../data/enums/ToolType.js"),StepUtils=require("../../../utils/StepUtils.js"),es=require("antd/es"),React=require("react"),reactI18next=require("react-i18next"),index$a=require("./AnnotationText/index.js"),index$2=require("./ClearIcon/index.js"),index$7=require("./GeneralOperation/index.js"),index$3=require("./ImgAttributeInfo/index.js"),index$8=require("./SwitchAttributeList/index.js"),index$1=require("./TagSidebar/index.js"),index$4=require("./TextToolSidebar/index.js"),index$6=require("./PointCloudToolSidebar/index.js"),index$g=require("./ToolStyle/index.js"),lbAnnotation=require("@labelbee/lb-annotation"),index$b=require("./ScribbleSidebar/index.js"),ToolIcons=require("./ToolIcons.js"),ctx=require("../../../store/ctx.js"),antd=require("antd"),index$5=require("../../../utils/index.js"),icon_menu_fold=require("../../../assets/annotation/common/icon_menu_fold.svg.js"),index$d=require("../../../components/LLMToolView/sidebar/index.js"),index$e=require("../../../components/LLMMultiWheelView/sidebar/index.js"),index$f=require("./NLPSidebar/index.js"),index$c=require("../../../components/videoAnnotate/videoClipTool/components/annotatedList/index.js"),index$9=require("./VideoClipToolAttributeList/index.js");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const{EVideoToolName,EPointCloudName}=lbAnnotation.cTool,{Panel}=es.Collapse,sidebarCls=`${index.prefix}-sidebar`,getAttributeListComponent=e=>{var l;return e&&(l={[EVideoToolName.VideoClipTool]:React__default.default.createElement(index$9,null)}[e])!=null?l:React__default.default.createElement(index$8,null)},Sidebar=({sider:e,enableColorPicker:l,setSiderWidth:i,propsSiderWidth:h,checkMode:d,setBatchSetValid:$})=>{const c=ctx.useSelector(a=>StepUtils.getCurrentStepInfo(a.annotation.step,a.annotation.stepList)),[u,S]=React.useState(!0),t=c==null?void 0:c.tool,{t:f}=reactI18next.useTranslation();if(!t)return null;const g=a=>{const o=React__default.default.createElement(index$g,null);return React__default.default.createElement(Panel,{header:f("Style"),className:"panel",key:a},o)},m=React__default.default.createElement(ToolIcons.ToolIcons,{toolName:t,onChange:()=>{}}),r=getAttributeListComponent(t),p=React__default.default.createElement(index$a,null),x=React__default.default.createElement(es.Collapse,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${sidebarCls}__content`,expandIcon:index$1.expandIconFuc},g("1")),E=React__default.default.createElement(es.Collapse,{defaultActiveKey:["1","imgAttribute"],bordered:!1,expandIconPosition:"right",className:`${sidebarCls}__content`,expandIcon:index$1.expandIconFuc},React__default.default.createElement(Panel,{header:React__default.default.createElement("div",null,f("Adjust"),React__default.default.createElement(index$2,null)),className:"panel",key:"imgAttribute"},React__default.default.createElement(index$3,null))),n=React__default.default.createElement(index$7.default,null),C=React__default.default.createElement(index$1.default,null),_=a=>React__default.default.createElement(index$4.default,{disabled:a}),v=React__default.default.createElement(index$b,{onChange:(a,o)=>{}}),b=React__default.default.createElement(index$c,null),T=React__default.default.createElement(index$d.default,{checkMode:d}),q=React__default.default.createElement(index$e,{checkMode:d}),N=React__default.default.createElement(index$f.default,{checkMode:d}),s=React__default.default.createElement("div",{className:`${sidebarCls}__horizontal`}),j=React__default.default.createElement(index$6.default,{enableColorPicker:l}),y=React__default.default.createElement(index$7.PointCloudOperation,{setBatchSetValid:$});if(e)return typeof e=="function"?React__default.default.createElement("div",{className:`${sidebarCls}`},e({toolIcon:m,attributeList:r,annotationText:p,toolStyle:x,imageAttributeInfo:E,operation:n,tagToolSideBar:C,textToolSideBar:_,horizontal:s,pointCloudToolSidebar:j,pointCloudOperation:y,scribbleSidebar:v,LLMSidebar:T,LLMMultiWheelSidebar:q,videoClipSidebar:b,NLPSidebar:N})):e;if([ToolType.EToolName.Rect,ToolType.EToolName.Point,ToolType.EToolName.Line,ToolType.EToolName.Rect,ToolType.EToolName.Polygon,ToolType.EToolName.Cuboid].includes(t))return React__default.default.createElement("div",{className:`${sidebarCls}`},m,s,r,p,s,React__default.default.createElement("div",{className:`${sidebarCls}__content`},x,E),n);if(t===ToolType.EToolName.Tag)return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index$1.default,null));if(t===EVideoToolName.VideoClipTool)return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},b,r),n);if(t===EVideoToolName.VideoTagTool)return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},React__default.default.createElement(index$1.default,null)),n);if(t===EVideoToolName.VideoTextTool)return React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement(index$4.default,null));if(t===ToolType.EToolName.Text)return React__default.default.createElement("div",{className:`${sidebarCls}`},"s",React__default.default.createElement(index$4.default,null));if(t===EPointCloudName.PointCloud){const a=()=>{S(!u),i&&i(u?48:void 0)},o=React__default.default.createElement("div",{style:{width:"48px",height:"100%",display:"flex",justifyContent:"center",background:"#ffffff"}},React__default.default.createElement("span",{onClick:()=>a()},React__default.default.createElement("img",{style:{width:"16px",height:"16px",marginTop:"18px",cursor:"pointer",transform:"rotate(180deg)"},src:icon_menu_fold})));return u?React__default.default.createElement(antd.Tabs,{type:"card",activeKey:"1",className:index$5.classnames({[`${sidebarCls}`]:!0,[`${sidebarCls}__pointCloud`]:!0}),tabBarExtraContent:{left:React__default.default.createElement("span",{onClick:()=>a(),style:{padding:"0px 4px"}},React__default.default.createElement("img",{style:{width:"16px",height:"16px",marginLeft:"4px",cursor:"pointer"},src:icon_menu_fold}))}},React__default.default.createElement(antd.Tabs.TabPane,{tab:"\u5DE5\u5177\u9762\u677F",key:"1",style:{height:"100%",display:"flex",flexDirection:"column"}},React__default.default.createElement("div",{className:`${sidebarCls}__content`},React__default.default.createElement(index$6.default,null)),React__default.default.createElement(index$7.PointCloudOperation,null))):o}return t===ToolType.EToolName.ScribbleTool?React__default.default.createElement("div",{className:`${sidebarCls}`},React__default.default.createElement("div",{className:`${sidebarCls}__content`},v,r),n):t===ToolType.EToolName.LLM?T:t===ToolType.EToolName.NLP?N:null};exports.default=Sidebar,exports.sidebarCls=sidebarCls;