@labelbee/lb-components 1.10.0-alpha.7 → 1.10.0-alpha.8
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/attributeList/index.js +1 -1
- package/dist/components/colorPalette/index.js +1 -0
- package/dist/components/colorTag/index.js +1 -1
- package/dist/types/components/attributeList/index.d.ts +2 -0
- package/dist/types/components/colorPalette/index.d.ts +12 -0
- package/dist/types/components/colorTag/index.d.ts +1 -1
- package/dist/types/utils/colorUtils.d.ts +20 -0
- package/dist/types/views/MainView/sidebar/PointCloudToolSidebar/index.d.ts +2 -1
- package/dist/utils/colorUtils.js +1 -0
- package/dist/views/MainView/sidebar/PointCloudToolSidebar/index.js +1 -1
- package/es/components/attributeList/index.js +1 -1
- package/es/components/colorPalette/index.js +1 -0
- package/es/components/colorTag/index.js +1 -1
- package/es/utils/colorUtils.js +1 -0
- package/es/views/MainView/sidebar/PointCloudToolSidebar/index.js +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var Style=require("../../data/Style.js"),index=require("../colorTag/index.js"),es=require("antd/es"),React=require("react");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const ATTRIBUTE_COLORS=[Style.NULL_COLOR].concat(Style.COLORS_ARRAY),AttributeList=React__default.default.forwardRef((e,
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var Style=require("../../data/Style.js"),index$1=require("../colorTag/index.js"),es=require("antd/es"),React=require("react"),antd=require("antd"),index=require("../colorPalette/index.js"),icons=require("@ant-design/icons"),reactI18next=require("react-i18next");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React);const ATTRIBUTE_COLORS=[Style.NULL_COLOR].concat(Style.COLORS_ARRAY),AttributeList=React__default.default.forwardRef((e,f)=>{const c=React__default.default.useRef(),{t:s}=reactI18next.useTranslation(),v=e.list||[],[C,u]=React.useState(!1),[b,m]=React.useState(void 0);let n=[...ATTRIBUTE_COLORS];e.forbidDefault===!0&&(n=n.slice(1));let o="sensebee-radio-group";e.noHeightLimit&&(o="sensebee-radio-group-no-limit-height");const R=(t,l)=>{e.updateColorConfig&&e.updateColorConfig(t,l)};return React__default.default.createElement("div",{className:o,style:e.style},React__default.default.createElement(es.Radio.Group,{name:"radiogroup",defaultValue:e==null?void 0:e.selectedAttribute,value:e==null?void 0:e.selectedAttribute,onChange:t=>e.attributeChanged(t.target.value),ref:f},v.map((t,l)=>{var d;let a=(d=e==null?void 0:e.num)!=null?d:l;e.forbidDefault===!0&&typeof a=="number"&&a++,typeof a=="number"&&a<=9&&a>=0||(a="-");let i=l>8&&!e.forbidDefault?Style.COLORS_ARRAY[(l-1)%Style.COLORS_ARRAY.length]:n[l%n.length];return(t==null?void 0:t.color)&&(i=t.color),React__default.default.createElement(es.Radio,{value:t.value,ref:c,key:t.label+l},React__default.default.createElement("span",{className:"sensebee-radio-label",title:t.label},!(e==null?void 0:e.forbidColor)&&React__default.default.createElement(antd.Popover,{content:React__default.default.createElement(index,{defaultColor:i,setColor:r=>R(t.value,r)}),title:React__default.default.createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"}},React__default.default.createElement("span",null,s("Palette")),React__default.default.createElement(icons.CloseOutlined,{onClick:()=>u(!1)})),visible:C&&b===l,onVisibleChange:r=>{!r||u(r)}},React__default.default.createElement(index$1.ColorTag,{color:i,style:{cursor:"pointer",marginRight:"8px"},onClick:()=>{(e==null?void 0:e.enableColorPicker)&&(m(l),u(!0))}})),t.label),React__default.default.createElement("span",{className:"sensebee-radio-num"},a))})))});exports.ATTRIBUTE_COLORS=ATTRIBUTE_COLORS,exports.default=AttributeList;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";var React=require("react"),reactColorful=require("react-colorful"),colorUtils=require("../../utils/colorUtils.js");function _interopDefaultLegacy(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var React__default=_interopDefaultLegacy(React);const Palette=t=>{const{setColor:r,defaultColor:e}=t;return React__default.default.createElement(reactColorful.RgbaColorPicker,{color:colorUtils.toRGBAObj(e),onChange:o=>{const l=colorUtils.toRGBAStr(o);r(l)}})};module.exports=Palette;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,r,t)=>r in e?__defProp(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,__spreadValues=(e,r)=>{for(var t in r||(r={}))__hasOwnProp.call(r,t)&&__defNormalProp(e,t,r[t]);if(__getOwnPropSymbols)for(var t of __getOwnPropSymbols(r))__propIsEnum.call(r,t)&&__defNormalProp(e,t,r[t]);return e};const ColorTag=({color:e,style:r})=>React__default.default.createElement("div",{style:__spreadValues({display:"inline-block",height:14,width:14,backgroundColor:e,verticalAlign:"middle"},r)});exports.ColorTag=ColorTag;
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var React=require("react");function _interopDefaultLegacy(e){return e&&typeof e=="object"&&"default"in e?e:{default:e}}var React__default=_interopDefaultLegacy(React),__defProp=Object.defineProperty,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(e,r,t)=>r in e?__defProp(e,r,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[r]=t,__spreadValues=(e,r)=>{for(var t in r||(r={}))__hasOwnProp.call(r,t)&&__defNormalProp(e,t,r[t]);if(__getOwnPropSymbols)for(var t of __getOwnPropSymbols(r))__propIsEnum.call(r,t)&&__defNormalProp(e,t,r[t]);return e};const ColorTag=({color:e,style:r,onClick:t})=>React__default.default.createElement("div",{style:__spreadValues({display:"inline-block",height:14,width:14,backgroundColor:e,verticalAlign:"middle"},r),onClick:t});exports.ColorTag=ColorTag;
|
|
@@ -13,6 +13,8 @@ interface IProps {
|
|
|
13
13
|
noHeightLimit?: boolean;
|
|
14
14
|
num?: number | string;
|
|
15
15
|
style?: React.CSSProperties;
|
|
16
|
+
enableColorPicker?: boolean;
|
|
17
|
+
updateColorConfig?: (value: string, color: string) => void;
|
|
16
18
|
}
|
|
17
19
|
declare const AttributeList: React.ForwardRefExoticComponent<IProps & React.RefAttributes<unknown>>;
|
|
18
20
|
export default AttributeList;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @file Color Palette
|
|
3
|
+
* @author lixinghua <lixinghua_vendor@sensetime.com>
|
|
4
|
+
* @date 2023.04.24
|
|
5
|
+
*/
|
|
6
|
+
import React from 'react';
|
|
7
|
+
interface IProps {
|
|
8
|
+
defaultColor?: string;
|
|
9
|
+
setColor: (color: string) => void;
|
|
10
|
+
}
|
|
11
|
+
declare const Palette: (props: IProps) => React.JSX.Element;
|
|
12
|
+
export default Palette;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
|
-
export declare const ColorTag: ({ color, style }: any) => React.JSX.Element;
|
|
2
|
+
export declare const ColorTag: ({ color, style, onClick }: any) => React.JSX.Element;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* transform rgba(a,g,b), to {r,g,b,a}
|
|
3
|
+
* @param color
|
|
4
|
+
*/
|
|
5
|
+
export declare const toRGBAObj: (rgbStr: string | undefined) => {
|
|
6
|
+
r: number;
|
|
7
|
+
g: number;
|
|
8
|
+
b: number;
|
|
9
|
+
a: number;
|
|
10
|
+
} | undefined;
|
|
11
|
+
/**
|
|
12
|
+
* transform {a,g,b,a} to rgba{r,g,b,a}
|
|
13
|
+
* @param color
|
|
14
|
+
*/
|
|
15
|
+
export declare const toRGBAStr: (color: {
|
|
16
|
+
r: number;
|
|
17
|
+
g: number;
|
|
18
|
+
b: number;
|
|
19
|
+
a: number;
|
|
20
|
+
}) => string;
|
|
@@ -7,8 +7,9 @@ interface IProps {
|
|
|
7
7
|
toolInstance: ICustomToolInstance;
|
|
8
8
|
imgList: IFileItem[];
|
|
9
9
|
imgIndex: number;
|
|
10
|
+
stepList: IStepInfo[];
|
|
10
11
|
}
|
|
11
12
|
declare const _default: import("react-redux").ConnectedComponent<React.FC<IProps>, import("react-redux").Omit<IProps & {
|
|
12
13
|
children?: React.ReactNode;
|
|
13
|
-
}, "imgIndex" | "imgList" | "toolInstance" | "stepInfo">>;
|
|
14
|
+
}, "stepList" | "imgIndex" | "imgList" | "toolInstance" | "stepInfo">>;
|
|
14
15
|
export default _default;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const toRGBAObj=t=>{if(!t)return;const e=t.replace(/[rgba()]/g,"").split(",");if(e){const[r,b,s,u]=e;return{r:Number(r),g:Number(b),b:Number(s),a:Number(u)}}},toRGBAStr=t=>`rgba(${t.r},${t.g},${t.b},${t.a})`;exports.toRGBAObj=toRGBAObj,exports.toRGBAStr=toRGBAStr;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var React=require("react"),icons=require("@ant-design/icons"),ToolIcons=require("../ToolIcons.js"),lbAnnotation=require("@labelbee/lb-annotation"),PointCloudContext=require("../../../../components/pointCloudView/PointCloudContext.js"),antd=require("antd"),StepUtils=require("../../../../utils/StepUtils.js"),reactRedux=require("react-redux"),index=require("../../../../utils/index.js"),useStatus=require("../../../../components/pointCloudView/hooks/useStatus.js"),useSingleBox=require("../../../../components/pointCloudView/hooks/useSingleBox.js"),reactI18next=require("react-i18next"),ctx=require("../../../../store/ctx.js"),index$1=require("./components/batchUpdateModal/index.js"),lbUtils=require("@labelbee/lb-utils"),index$2=require("../../../../components/attributeList/index.js"),useAttribute=require("../../../../components/pointCloudView/hooks/useAttribute.js");function _interopDefaultLegacy(
|
|
1
|
+
"use strict";var React=require("react"),icons=require("@ant-design/icons"),ToolIcons=require("../ToolIcons.js"),lbAnnotation=require("@labelbee/lb-annotation"),PointCloudContext=require("../../../../components/pointCloudView/PointCloudContext.js"),antd=require("antd"),StepUtils=require("../../../../utils/StepUtils.js"),reactRedux=require("react-redux"),index=require("../../../../utils/index.js"),useStatus=require("../../../../components/pointCloudView/hooks/useStatus.js"),useSingleBox=require("../../../../components/pointCloudView/hooks/useSingleBox.js"),reactI18next=require("react-i18next"),ctx=require("../../../../store/ctx.js"),index$1=require("./components/batchUpdateModal/index.js"),lbUtils=require("@labelbee/lb-utils"),index$2=require("../../../../components/attributeList/index.js"),useAttribute=require("../../../../components/pointCloudView/hooks/useAttribute.js"),actionCreators=require("../../../../store/annotation/actionCreators.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 AnnotatedBox=({imgList:e,imgIndex:t})=>{const r=React.useContext(PointCloudContext.PointCloudContext),[i,f]=React.useState([]),{t:s}=reactI18next.useTranslation();React.useEffect(()=>{const n=e;let a=new Map;f(lbUtils.PointCloudUtils.getAllPointCloudResult({imgList:n,extraBoxList:v,ignoreIndexList:[t]}).filter(l=>!l.trackID||a.get(l.trackID)?!1:(a.set(l.trackID,!0),!0)).sort((l,d)=>{var c,p;const g=(c=l==null?void 0:l.trackID)!=null?c:0,_=(p=d==null?void 0:d.trackID)!=null?p:0;return g-_}).map(l=>{var d;return(d=l==null?void 0:l.trackID)!=null?d:0}))},[r.pointCloudBoxList,e]);const{pointCloudBoxList:v}=r;return React__default.default.createElement("div",{style:{padding:24,borderBottom:"1px solid #eee"}},React__default.default.createElement("div",{style:{marginBottom:16}},s("AllTrackIDs")),React__default.default.createElement("div",null,i.map(n=>React__default.default.createElement(antd.Tag,{color:"#F3F4FF",key:n,style:{color:"#666",marginBottom:8}},n))))},BoxTrackIDInput=()=>{const[e,t]=React.useState(!1),{pointCloudBoxList:r}=React.useContext(PointCloudContext.PointCloudContext),{selectedBox:i,updateSelectedBox:f}=useSingleBox.useSingleBox(),[s,v]=React.useState(""),{t:n}=reactI18next.useTranslation(),a=i==null?void 0:i.info.trackID,l=c=>!!r.find(g=>g.trackID===c&&g.id!==(i==null?void 0:i.info.id)),d=(c=!1)=>{const p=parseInt(s,10);if(c&&t(!1),isNaN(p)){antd.message.error(n("PositiveIntegerCheck"));return}if(s.indexOf(".")>-1){antd.message.error(n("NotAllowDecimalPointsInTrackID"));return}if(l(p)){antd.message.error(n("DuplicateTrackIDsExist"));return}if(!(p>0)){antd.message.error(n("PositiveIntegerCheck"));return}f({trackID:p})};return React.useEffect(()=>{t(!1)},[a]),React__default.default.createElement("div",{style:{padding:24}},React__default.default.createElement("div",{style:{marginBottom:16,display:"flex",justifyContent:"space-between",alignItems:"center"}},React__default.default.createElement("span",null,n("CurrentBoxTrackIDs")),a&&React__default.default.createElement(index$1,{id:a})),React__default.default.createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"}},e&&a?React__default.default.createElement(antd.Input,{defaultValue:a,onChange:c=>{v(c.target.value)},disabled:!a,size:"small",onBlur:()=>{d()},onPressEnter:()=>{d(!0)}}):React__default.default.createElement("span",null,a),React__default.default.createElement(icons.EditFilled,{style:{color:"#999",marginLeft:16,cursor:typeof a!="undefined"?"pointer":"not-allowed"},onClick:()=>{a&&t(!e)}})))},AttributeUpdater=({attributeList:e,subAttributeList:t,toolInstance:r,config:i,stepList:f,stepInfo:s})=>{const{selectedBox:v}=useSingleBox.useSingleBox(),n=React.useContext(PointCloudContext.PointCloudContext),{t:a}=reactI18next.useTranslation(),{defaultAttribute:l}=useAttribute.useAttribute(),d=ctx.useDispatch(),c={fontWeight:500,fontSize:14,margin:"12px 0 8px 20px"},p={margin:"12px 20px 8px",fontSize:14,fontWeight:500,wordWrap:"break-word"},g=(o,x)=>{var C,b,I,y,u;const E=(C=i==null?void 0:i.attributeList)==null?void 0:C.map(m=>m.value===o?__spreadProps(__spreadValues({},m),{color:x}):m),k=__spreadProps(__spreadValues({},i),{attributeList:E}),D=JSON.stringify(k),w=f==null?void 0:f.map(m=>(m==null?void 0:m.step)===(s==null?void 0:s.step)?__spreadProps(__spreadValues({},m),{config:D}):m);(b=n==null?void 0:n.topViewInstance)==null||b.updateAttributeList(E),(I=n==null?void 0:n.sideViewInstance)==null||I.updateAttributeList(E),(y=n==null?void 0:n.backViewInstance)==null||y.updateAttributeList(E),(u=n==null?void 0:n.mainViewInstance)==null||u.setConfig(k),d(actionCreators.SetTaskStepList({stepList:w}))},_=o=>{r.setDefaultAttribute(o)},S=(o,x)=>{r.setSubAttribute(o,x)},P=e.map(o=>({label:o.key,value:o.value,color:o==null?void 0:o.color}));return React__default.default.createElement("div",null,React__default.default.createElement("div",{style:c},a("Attribute")),React__default.default.createElement(index$2.default,{list:P,forbidDefault:!0,selectedAttribute:l!=null?l:"",attributeChanged:o=>_(o),updateColorConfig:g,enableColorPicker:!0}),React__default.default.createElement(antd.Divider,{style:{margin:0}}),v&&React__default.default.createElement(React__default.default.Fragment,null,t.map(o=>{var x,C,b,I,y;return(o==null?void 0:o.subSelected)&&React__default.default.createElement("div",{style:{marginTop:12},key:o.value},React__default.default.createElement("div",{style:p},a("SubAttribute"),"-",o.key),((x=o.subSelected)==null?void 0:x.length)<5?React__default.default.createElement(index$2.default,{list:o.subSelected.map(u=>({label:u.key,value:u.value})),selectedAttribute:(b=(C=n.selectedPointCloudBox)==null?void 0:C.subAttribute)==null?void 0:b[o.value],num:"-",forbidColor:!0,forbidDefault:!0,attributeChanged:u=>S(o.value,u),style:{marginBottom:12}}):React__default.default.createElement(antd.Select,{style:{margin:"0px 21px 17px 16px",width:"87%"},value:(y=(I=n.selectedPointCloudBox)==null?void 0:I.subAttribute)==null?void 0:y[o.value],placeholder:a("PleaseSelect"),onChange:u=>S(o.value,u),allowClear:!0},o.subSelected.map(u=>React__default.default.createElement(antd.Select.Option,{key:u.value,value:u.value},u.key))),React__default.default.createElement(antd.Divider,{style:{margin:0}}))})))},PointCloudToolSidebar=({stepInfo:e,toolInstance:t,imgList:r,imgIndex:i,stepList:f})=>{var s,v;const{updatePointCloudPattern:n,pointCloudPattern:a}=useStatus.useStatus(),l=index.jsonParser(e.config),d=(s=l==null?void 0:l.attributeList)!=null?s:[],c=(l==null?void 0:l.secondaryAttributeConfigurable)===!0?(v=l==null?void 0:l.inputList)!=null?v:[]:[];return React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(ToolIcons.ToolIcons,{toolName:lbAnnotation.cTool.EPointCloudName.PointCloud,selectedToolName:a,onChange:p=>n==null?void 0:n(p)}),(l==null?void 0:l.trackConfigurable)===!0&&React__default.default.createElement(React__default.default.Fragment,null,React__default.default.createElement(AnnotatedBox,{imgList:r,imgIndex:i}),React__default.default.createElement(BoxTrackIDInput,null),React__default.default.createElement(antd.Divider,{style:{margin:0}})),React__default.default.createElement(AttributeUpdater,{toolInstance:t,attributeList:d,subAttributeList:c,config:l,stepList:f,stepInfo:e}))},mapStateToProps=e=>{var t,r,i,f;const s=StepUtils.getCurrentStepInfo((t=e.annotation)==null?void 0:t.step,(r=e.annotation)==null?void 0:r.stepList),v=(i=e.annotation)==null?void 0:i.toolInstance,n=(f=e.annotation)==null?void 0:f.stepList;return{stepInfo:s,toolInstance:v,imgList:e.annotation.imgList,imgIndex:e.annotation.imgIndex,stepList:n}};var PointCloudToolSidebar$1=reactRedux.connect(mapStateToProps,null,null,{context:ctx.LabelBeeContext})(PointCloudToolSidebar);module.exports=PointCloudToolSidebar$1;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{COLORS_ARRAY as
|
|
1
|
+
import{COLORS_ARRAY as c,NULL_COLOR as T}from"../../data/Style.js";import{ColorTag as L}from"../colorTag/index.js";import{Radio as m}from"antd/es";import t,{useState as d}from"react";import{Popover as A}from"antd";import P from"../colorPalette/index.js";import{CloseOutlined as _}from"@ant-design/icons";import{useTranslation as I}from"react-i18next";const b=[T].concat(c),N=t.forwardRef((e,C)=>{const g=t.useRef(),{t:v}=I(),E=e.list||[],[R,r]=d(!1),[h,y]=d(void 0);let n=[...b];e.forbidDefault===!0&&(n=n.slice(1));let s="sensebee-radio-group";e.noHeightLimit&&(s="sensebee-radio-group-no-limit-height");const O=(l,a)=>{e.updateColorConfig&&e.updateColorConfig(l,a)};return t.createElement("div",{className:s,style:e.style},t.createElement(m.Group,{name:"radiogroup",defaultValue:e==null?void 0:e.selectedAttribute,value:e==null?void 0:e.selectedAttribute,onChange:l=>e.attributeChanged(l.target.value),ref:C},E.map((l,a)=>{var f;let o=(f=e==null?void 0:e.num)!=null?f:a;e.forbidDefault===!0&&typeof o=="number"&&o++,typeof o=="number"&&o<=9&&o>=0||(o="-");let u=a>8&&!e.forbidDefault?c[(a-1)%c.length]:n[a%n.length];return(l==null?void 0:l.color)&&(u=l.color),t.createElement(m,{value:l.value,ref:g,key:l.label+a},t.createElement("span",{className:"sensebee-radio-label",title:l.label},!(e==null?void 0:e.forbidColor)&&t.createElement(A,{content:t.createElement(P,{defaultColor:u,setColor:i=>O(l.value,i)}),title:t.createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"}},t.createElement("span",null,v("Palette")),t.createElement(_,{onClick:()=>r(!1)})),visible:R&&h===a,onVisibleChange:i=>{!i||r(i)}},t.createElement(L,{color:u,style:{cursor:"pointer",marginRight:"8px"},onClick:()=>{(e==null?void 0:e.enableColorPicker)&&(y(a),r(!0))}})),l.label),t.createElement("span",{className:"sensebee-radio-num"},o))})))});export{b as ATTRIBUTE_COLORS,N as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import c from"react";import{RgbaColorPicker as a}from"react-colorful";import{toRGBAObj as s,toRGBAStr as m}from"../../utils/colorUtils.js";const n=o=>{const{setColor:t,defaultColor:r}=o;return c.createElement(a,{color:s(r),onChange:e=>{const l=m(e);t(l)}})};export{n as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import l from"react";var i=Object.defineProperty,o=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,p=Object.prototype.propertyIsEnumerable,a=(t,r,e)=>r in t?i(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,c=(t,r)=>{for(var e in r||(r={}))n.call(r,e)&&a(t,e,r[e]);if(o)for(var e of o(r))p.call(r,e)&&a(t,e,r[e]);return t};const _=({color:t,style:r})=>l.createElement("div",{style:c({display:"inline-block",height:14,width:14,backgroundColor:t,verticalAlign:"middle"},r)});export{_ as ColorTag};
|
|
1
|
+
import l from"react";var i=Object.defineProperty,o=Object.getOwnPropertySymbols,n=Object.prototype.hasOwnProperty,p=Object.prototype.propertyIsEnumerable,a=(t,r,e)=>r in t?i(t,r,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[r]=e,c=(t,r)=>{for(var e in r||(r={}))n.call(r,e)&&a(t,e,r[e]);if(o)for(var e of o(r))p.call(r,e)&&a(t,e,r[e]);return t};const _=({color:t,style:r,onClick:e})=>l.createElement("div",{style:c({display:"inline-block",height:14,width:14,backgroundColor:t,verticalAlign:"middle"},r),onClick:e});export{_ as ColorTag};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const u=r=>{if(!r)return;const t=r.replace(/[rgba()]/g,"").split(",");if(t){const[e,b,a,n]=t;return{r:Number(e),g:Number(b),b:Number(a),a:Number(n)}}},g=r=>`rgba(${r.r},${r.g},${r.b},${r.a})`;export{u as toRGBAObj,g as toRGBAStr};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import
|
|
1
|
+
import t,{useContext as S,useState as D,useEffect as A}from"react";import{EditFilled as J}from"@ant-design/icons";import{ToolIcons as $}from"../ToolIcons.js";import{cTool as q}from"@labelbee/lb-annotation";import{PointCloudContext as w}from"../../../../components/pointCloudView/PointCloudContext.js";import{Divider as L,Tag as G,Input as H,Select as V,message as k}from"antd";import K from"../../../../utils/StepUtils.js";import{connect as Q}from"react-redux";import{jsonParser as X}from"../../../../utils/index.js";import{useStatus as Y}from"../../../../components/pointCloudView/hooks/useStatus.js";import{useSingleBox as F}from"../../../../components/pointCloudView/hooks/useSingleBox.js";import{useTranslation as B}from"react-i18next";import{LabelBeeContext as Z,useDispatch as tt}from"../../../../store/ctx.js";import et from"./components/batchUpdateModal/index.js";import{PointCloudUtils as ot}from"@labelbee/lb-utils";import N from"../../../../components/attributeList/index.js";import{useAttribute as nt}from"../../../../components/pointCloudView/hooks/useAttribute.js";import{SetTaskStepList as lt}from"../../../../store/annotation/actionCreators.js";var rt=Object.defineProperty,it=Object.defineProperties,at=Object.getOwnPropertyDescriptors,U=Object.getOwnPropertySymbols,st=Object.prototype.hasOwnProperty,ut=Object.prototype.propertyIsEnumerable,M=(e,o,i)=>o in e?rt(e,o,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[o]=i,h=(e,o)=>{for(var i in o||(o={}))st.call(o,i)&&M(e,i,o[i]);if(U)for(var i of U(o))ut.call(o,i)&&M(e,i,o[i]);return e},T=(e,o)=>it(e,at(o));const ct=({imgList:e,imgIndex:o})=>{const i=S(w),[s,f]=D([]),{t:c}=B();A(()=>{const n=e;let a=new Map;f(ot.getAllPointCloudResult({imgList:n,extraBoxList:v,ignoreIndexList:[o]}).filter(l=>!l.trackID||a.get(l.trackID)?!1:(a.set(l.trackID,!0),!0)).sort((l,d)=>{var p,m;const b=(p=l==null?void 0:l.trackID)!=null?p:0,P=(m=d==null?void 0:d.trackID)!=null?m:0;return b-P}).map(l=>{var d;return(d=l==null?void 0:l.trackID)!=null?d:0}))},[i.pointCloudBoxList,e]);const{pointCloudBoxList:v}=i;return t.createElement("div",{style:{padding:24,borderBottom:"1px solid #eee"}},t.createElement("div",{style:{marginBottom:16}},c("AllTrackIDs")),t.createElement("div",null,s.map(n=>t.createElement(G,{color:"#F3F4FF",key:n,style:{color:"#666",marginBottom:8}},n))))},dt=()=>{const[e,o]=D(!1),{pointCloudBoxList:i}=S(w),{selectedBox:s,updateSelectedBox:f}=F(),[c,v]=D(""),{t:n}=B(),a=s==null?void 0:s.info.trackID,l=p=>!!i.find(b=>b.trackID===p&&b.id!==(s==null?void 0:s.info.id)),d=(p=!1)=>{const m=parseInt(c,10);if(p&&o(!1),isNaN(m)){k.error(n("PositiveIntegerCheck"));return}if(c.indexOf(".")>-1){k.error(n("NotAllowDecimalPointsInTrackID"));return}if(l(m)){k.error(n("DuplicateTrackIDsExist"));return}if(!(m>0)){k.error(n("PositiveIntegerCheck"));return}f({trackID:m})};return A(()=>{o(!1)},[a]),t.createElement("div",{style:{padding:24}},t.createElement("div",{style:{marginBottom:16,display:"flex",justifyContent:"space-between",alignItems:"center"}},t.createElement("span",null,n("CurrentBoxTrackIDs")),a&&t.createElement(et,{id:a})),t.createElement("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center"}},e&&a?t.createElement(H,{defaultValue:a,onChange:p=>{v(p.target.value)},disabled:!a,size:"small",onBlur:()=>{d()},onPressEnter:()=>{d(!0)}}):t.createElement("span",null,a),t.createElement(J,{style:{color:"#999",marginLeft:16,cursor:typeof a!="undefined"?"pointer":"not-allowed"},onClick:()=>{a&&o(!e)}})))},pt=({attributeList:e,subAttributeList:o,toolInstance:i,config:s,stepList:f,stepInfo:c})=>{const{selectedBox:v}=F(),n=S(w),{t:a}=B(),{defaultAttribute:l}=nt(),d=tt(),p={fontWeight:500,fontSize:14,margin:"12px 0 8px 20px"},m={margin:"12px 20px 8px",fontSize:14,fontWeight:500,wordWrap:"break-word"},b=(r,x)=>{var C,I,y,E,u;const _=(C=s==null?void 0:s.attributeList)==null?void 0:C.map(g=>g.value===r?T(h({},g),{color:x}):g),O=T(h({},s),{attributeList:_}),W=JSON.stringify(O),R=f==null?void 0:f.map(g=>(g==null?void 0:g.step)===(c==null?void 0:c.step)?T(h({},g),{config:W}):g);(I=n==null?void 0:n.topViewInstance)==null||I.updateAttributeList(_),(y=n==null?void 0:n.sideViewInstance)==null||y.updateAttributeList(_),(E=n==null?void 0:n.backViewInstance)==null||E.updateAttributeList(_),(u=n==null?void 0:n.mainViewInstance)==null||u.setConfig(O),d(lt({stepList:R}))},P=r=>{i.setDefaultAttribute(r)},j=(r,x)=>{i.setSubAttribute(r,x)},z=e.map(r=>({label:r.key,value:r.value,color:r==null?void 0:r.color}));return t.createElement("div",null,t.createElement("div",{style:p},a("Attribute")),t.createElement(N,{list:z,forbidDefault:!0,selectedAttribute:l!=null?l:"",attributeChanged:r=>P(r),updateColorConfig:b,enableColorPicker:!0}),t.createElement(L,{style:{margin:0}}),v&&t.createElement(t.Fragment,null,o.map(r=>{var x,C,I,y,E;return(r==null?void 0:r.subSelected)&&t.createElement("div",{style:{marginTop:12},key:r.value},t.createElement("div",{style:m},a("SubAttribute"),"-",r.key),((x=r.subSelected)==null?void 0:x.length)<5?t.createElement(N,{list:r.subSelected.map(u=>({label:u.key,value:u.value})),selectedAttribute:(I=(C=n.selectedPointCloudBox)==null?void 0:C.subAttribute)==null?void 0:I[r.value],num:"-",forbidColor:!0,forbidDefault:!0,attributeChanged:u=>j(r.value,u),style:{marginBottom:12}}):t.createElement(V,{style:{margin:"0px 21px 17px 16px",width:"87%"},value:(E=(y=n.selectedPointCloudBox)==null?void 0:y.subAttribute)==null?void 0:E[r.value],placeholder:a("PleaseSelect"),onChange:u=>j(r.value,u),allowClear:!0},r.subSelected.map(u=>t.createElement(V.Option,{key:u.value,value:u.value},u.key))),t.createElement(L,{style:{margin:0}}))})))},mt=({stepInfo:e,toolInstance:o,imgList:i,imgIndex:s,stepList:f})=>{var c,v;const{updatePointCloudPattern:n,pointCloudPattern:a}=Y(),l=X(e.config),d=(c=l==null?void 0:l.attributeList)!=null?c:[],p=(l==null?void 0:l.secondaryAttributeConfigurable)===!0?(v=l==null?void 0:l.inputList)!=null?v:[]:[];return t.createElement(t.Fragment,null,t.createElement($,{toolName:q.EPointCloudName.PointCloud,selectedToolName:a,onChange:m=>n==null?void 0:n(m)}),(l==null?void 0:l.trackConfigurable)===!0&&t.createElement(t.Fragment,null,t.createElement(ct,{imgList:i,imgIndex:s}),t.createElement(dt,null),t.createElement(L,{style:{margin:0}})),t.createElement(pt,{toolInstance:o,attributeList:d,subAttributeList:p,config:l,stepList:f,stepInfo:e}))},ft=e=>{var o,i,s,f;const c=K.getCurrentStepInfo((o=e.annotation)==null?void 0:o.step,(i=e.annotation)==null?void 0:i.stepList),v=(s=e.annotation)==null?void 0:s.toolInstance,n=(f=e.annotation)==null?void 0:f.stepList;return{stepInfo:c,toolInstance:v,imgList:e.annotation.imgList,imgIndex:e.annotation.imgIndex,stepList:n}};var vt=Q(ft,null,null,{context:Z})(mt);export{vt as default};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@labelbee/lb-components",
|
|
3
|
-
"version": "1.10.0-alpha.
|
|
3
|
+
"version": "1.10.0-alpha.8",
|
|
4
4
|
"description": "Provide a complete library of annotation components",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"es": "./es/index.js",
|
|
@@ -43,8 +43,8 @@
|
|
|
43
43
|
},
|
|
44
44
|
"dependencies": {
|
|
45
45
|
"@ant-design/icons": "^4.6.2",
|
|
46
|
-
"@labelbee/lb-annotation": "1.14.0-alpha.
|
|
47
|
-
"@labelbee/lb-utils": "1.7.0-alpha.
|
|
46
|
+
"@labelbee/lb-annotation": "1.14.0-alpha.8",
|
|
47
|
+
"@labelbee/lb-utils": "1.7.0-alpha.6",
|
|
48
48
|
"ahooks": "^3.4.0",
|
|
49
49
|
"classnames": "^2.3.0",
|
|
50
50
|
"lodash": "^4.17.21",
|